diff --git a/docs/cpp/.buildinfo b/docs/cpp/.buildinfo index 25589a1..9e7837d 100644 --- a/docs/cpp/.buildinfo +++ b/docs/cpp/.buildinfo @@ -1,4 +1,4 @@ # Sphinx build info version 1 # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. -config: 3149ba1b781b60474ce77c1eacd7e72a +config: 8291cb81553213d80f8630393dc06e42 tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/docs/cpp/.doctrees/environment.pickle b/docs/cpp/.doctrees/environment.pickle index 35218d9..e23ce09 100644 Binary files a/docs/cpp/.doctrees/environment.pickle and b/docs/cpp/.doctrees/environment.pickle differ diff --git a/docs/cpp/.doctrees/index.doctree b/docs/cpp/.doctrees/index.doctree index f9b840a..0c947d0 100644 Binary files a/docs/cpp/.doctrees/index.doctree and b/docs/cpp/.doctrees/index.doctree differ diff --git a/docs/cpp/_static/basic.css b/docs/cpp/_static/basic.css index be19270..603f6a8 100644 --- a/docs/cpp/_static/basic.css +++ b/docs/cpp/_static/basic.css @@ -130,7 +130,7 @@ ul.search li a { font-weight: bold; } -ul.search li div.context { +ul.search li p.context { color: #888; margin: 2px 0 0 30px; text-align: left; @@ -277,25 +277,25 @@ p.rubric { font-weight: bold; } -img.align-left, .figure.align-left, object.align-left { +img.align-left, figure.align-left, .figure.align-left, object.align-left { clear: left; float: left; margin-right: 1em; } -img.align-right, .figure.align-right, object.align-right { +img.align-right, figure.align-right, .figure.align-right, object.align-right { clear: right; float: right; margin-left: 1em; } -img.align-center, .figure.align-center, object.align-center { +img.align-center, figure.align-center, .figure.align-center, object.align-center { display: block; margin-left: auto; margin-right: auto; } -img.align-default, .figure.align-default { +img.align-default, figure.align-default, .figure.align-default { display: block; margin-left: auto; margin-right: auto; @@ -319,7 +319,8 @@ img.align-default, .figure.align-default { /* -- sidebars -------------------------------------------------------------- */ -div.sidebar { +div.sidebar, +aside.sidebar { margin: 0 0 0.5em 1em; border: 1px solid #ddb; padding: 7px; @@ -377,12 +378,14 @@ div.body p.centered { /* -- content of sidebars/topics/admonitions -------------------------------- */ div.sidebar > :last-child, +aside.sidebar > :last-child, div.topic > :last-child, div.admonition > :last-child { margin-bottom: 0; } div.sidebar::after, +aside.sidebar::after, div.topic::after, div.admonition::after, blockquote::after { @@ -455,20 +458,22 @@ td > :last-child { /* -- figures --------------------------------------------------------------- */ -div.figure { +div.figure, figure { margin: 0.5em; padding: 0.5em; } -div.figure p.caption { +div.figure p.caption, figcaption { padding: 0.3em; } -div.figure p.caption span.caption-number { +div.figure p.caption span.caption-number, +figcaption span.caption-number { font-style: italic; } -div.figure p.caption span.caption-text { +div.figure p.caption span.caption-text, +figcaption span.caption-text { } /* -- field list styles ----------------------------------------------------- */ @@ -503,6 +508,63 @@ table.hlist td { vertical-align: top; } +/* -- object description styles --------------------------------------------- */ + +.sig { + font-family: 'Consolas', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', monospace; +} + +.sig-name, code.descname { + background-color: transparent; + font-weight: bold; +} + +.sig-name { + font-size: 1.1em; +} + +code.descname { + font-size: 1.2em; +} + +.sig-prename, code.descclassname { + background-color: transparent; +} + +.optional { + font-size: 1.3em; +} + +.sig-paren { + font-size: larger; +} + +.sig-param.n { + font-style: italic; +} + +/* C++ specific styling */ + +.sig-inline.c-texpr, +.sig-inline.cpp-texpr { + font-family: unset; +} + +.sig.c .k, .sig.c .kt, +.sig.cpp .k, .sig.cpp .kt { + color: #0033B3; +} + +.sig.c .m, +.sig.cpp .m { + color: #1750EB; +} + +.sig.c .s, .sig.c .sc, +.sig.cpp .s, .sig.cpp .sc { + color: #067D17; +} + /* -- other body styles ----------------------------------------------------- */ @@ -629,14 +691,6 @@ dl.glossary dt { font-size: 1.1em; } -.optional { - font-size: 1.3em; -} - -.sig-paren { - font-size: larger; -} - .versionmodified { font-style: italic; } @@ -677,8 +731,9 @@ dl.glossary dt { .classifier:before { font-style: normal; - margin: 0.5em; + margin: 0 0.5em; content: ":"; + display: inline-block; } abbr, acronym { @@ -765,8 +820,12 @@ div.code-block-caption code { table.highlighttable td.linenos, span.linenos, -div.doctest > div.highlight span.gp { /* gp: Generic.Prompt */ - user-select: none; +div.highlight span.gp { /* gp: Generic.Prompt */ + user-select: none; + -webkit-user-select: text; /* Safari fallback only */ + -webkit-user-select: none; /* Chrome/Safari */ + -moz-user-select: none; /* Firefox */ + -ms-user-select: none; /* IE10+ */ } div.code-block-caption span.caption-number { @@ -781,16 +840,6 @@ div.literal-block-wrapper { margin: 1em 0; } -code.descname { - background-color: transparent; - font-weight: bold; - font-size: 1.2em; -} - -code.descclassname { - background-color: transparent; -} - code.xref, a code { background-color: transparent; font-weight: bold; diff --git a/docs/cpp/_static/css/theme.css b/docs/cpp/_static/css/theme.css index 8cd4f10..0d9ae7e 100644 --- a/docs/cpp/_static/css/theme.css +++ b/docs/cpp/_static/css/theme.css @@ -1,4 +1,4 @@ -html{box-sizing:border-box}*,:after,:before{box-sizing:inherit}article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block}audio,canvas,video{display:inline-block;*display:inline;*zoom:1}[hidden],audio:not([controls]){display:none}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{margin:0}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}blockquote{margin:0}dfn{font-style:italic}ins{background:#ff9;text-decoration:none}ins,mark{color:#000}mark{background:#ff0;font-style:italic;font-weight:700}.rst-content code,.rst-content tt,code,kbd,pre,samp{font-family:monospace,serif;_font-family:courier new,monospace;font-size:1em}pre{white-space:pre}q{quotes:none}q:after,q:before{content:"";content:none}small{font-size:85%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}dl,ol,ul{margin:0;padding:0;list-style:none;list-style-image:none}li{list-style:none}dd{margin:0}img{border:0;-ms-interpolation-mode:bicubic;vertical-align:middle;max-width:100%}svg:not(:root){overflow:hidden}figure,form{margin:0}label{cursor:pointer}button,input,select,textarea{font-size:100%;margin:0;vertical-align:baseline;*vertical-align:middle}button,input{line-height:normal}button,input[type=button],input[type=reset],input[type=submit]{cursor:pointer;-webkit-appearance:button;*overflow:visible}button[disabled],input[disabled]{cursor:default}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}textarea{resize:vertical}table{border-collapse:collapse;border-spacing:0}td{vertical-align:top}.chromeframe{margin:.2em 0;background:#ccc;color:#000;padding:.2em 0}.ir{display:block;border:0;text-indent:-999em;overflow:hidden;background-color:transparent;background-repeat:no-repeat;text-align:left;direction:ltr;*line-height:0}.ir br{display:none}.hidden{display:none!important;visibility:hidden}.visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.visuallyhidden.focusable:active,.visuallyhidden.focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.invisible{visibility:hidden}.relative{position:relative}big,small{font-size:100%}@media print{body,html,section{background:none!important}*{box-shadow:none!important;text-shadow:none!important;filter:none!important;-ms-filter:none!important}a,a:visited{text-decoration:underline}.ir a:after,a[href^="#"]:after,a[href^="javascript:"]:after{content:""}blockquote,pre{page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}img{max-width:100%!important}@page{margin:.5cm}.rst-content .toctree-wrapper>p.caption,h2,h3,p{orphans:3;widows:3}.rst-content .toctree-wrapper>p.caption,h2,h3{page-break-after:avoid}}.btn,.fa:before,.icon:before,.rst-content .admonition,.rst-content .admonition-title:before,.rst-content .admonition-todo,.rst-content .attention,.rst-content .caution,.rst-content .code-block-caption .headerlink:before,.rst-content .danger,.rst-content .error,.rst-content .hint,.rst-content .important,.rst-content .note,.rst-content .seealso,.rst-content .tip,.rst-content .warning,.rst-content code.download span:first-child:before,.rst-content dl dt .headerlink:before,.rst-content h1 .headerlink:before,.rst-content h2 .headerlink:before,.rst-content h3 .headerlink:before,.rst-content h4 .headerlink:before,.rst-content h5 .headerlink:before,.rst-content h6 .headerlink:before,.rst-content p.caption .headerlink:before,.rst-content table>caption .headerlink:before,.rst-content tt.download span:first-child:before,.wy-alert,.wy-dropdown .caret:before,.wy-inline-validate.wy-inline-validate-danger .wy-input-context:before,.wy-inline-validate.wy-inline-validate-info .wy-input-context:before,.wy-inline-validate.wy-inline-validate-success .wy-input-context:before,.wy-inline-validate.wy-inline-validate-warning .wy-input-context:before,.wy-menu-vertical li.current>a,.wy-menu-vertical li.current>a span.toctree-expand:before,.wy-menu-vertical li.on a,.wy-menu-vertical li.on a span.toctree-expand:before,.wy-menu-vertical li span.toctree-expand:before,.wy-nav-top a,.wy-side-nav-search .wy-dropdown>a,.wy-side-nav-search>a,input[type=color],input[type=date],input[type=datetime-local],input[type=datetime],input[type=email],input[type=month],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],input[type=week],select,textarea{-webkit-font-smoothing:antialiased}.clearfix{*zoom:1}.clearfix:after,.clearfix:before{display:table;content:""}.clearfix:after{clear:both}/*! +html{box-sizing:border-box}*,:after,:before{box-sizing:inherit}article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block}audio,canvas,video{display:inline-block;*display:inline;*zoom:1}[hidden],audio:not([controls]){display:none}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{margin:0}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}blockquote{margin:0}dfn{font-style:italic}ins{background:#ff9;text-decoration:none}ins,mark{color:#000}mark{background:#ff0;font-style:italic;font-weight:700}.rst-content code,.rst-content tt,code,kbd,pre,samp{font-family:monospace,serif;_font-family:courier new,monospace;font-size:1em}pre{white-space:pre}q{quotes:none}q:after,q:before{content:"";content:none}small{font-size:85%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}dl,ol,ul{margin:0;padding:0;list-style:none;list-style-image:none}li{list-style:none}dd{margin:0}img{border:0;-ms-interpolation-mode:bicubic;vertical-align:middle;max-width:100%}svg:not(:root){overflow:hidden}figure,form{margin:0}label{cursor:pointer}button,input,select,textarea{font-size:100%;margin:0;vertical-align:baseline;*vertical-align:middle}button,input{line-height:normal}button,input[type=button],input[type=reset],input[type=submit]{cursor:pointer;-webkit-appearance:button;*overflow:visible}button[disabled],input[disabled]{cursor:default}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}textarea{resize:vertical}table{border-collapse:collapse;border-spacing:0}td{vertical-align:top}.chromeframe{margin:.2em 0;background:#ccc;color:#000;padding:.2em 0}.ir{display:block;border:0;text-indent:-999em;overflow:hidden;background-color:transparent;background-repeat:no-repeat;text-align:left;direction:ltr;*line-height:0}.ir br{display:none}.hidden{display:none!important;visibility:hidden}.visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.visuallyhidden.focusable:active,.visuallyhidden.focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.invisible{visibility:hidden}.relative{position:relative}big,small{font-size:100%}@media print{body,html,section{background:none!important}*{box-shadow:none!important;text-shadow:none!important;filter:none!important;-ms-filter:none!important}a,a:visited{text-decoration:underline}.ir a:after,a[href^="#"]:after,a[href^="javascript:"]:after{content:""}blockquote,pre{page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}img{max-width:100%!important}@page{margin:.5cm}.rst-content .toctree-wrapper>p.caption,h2,h3,p{orphans:3;widows:3}.rst-content .toctree-wrapper>p.caption,h2,h3{page-break-after:avoid}}.btn,.fa:before,.icon:before,.rst-content .admonition,.rst-content .admonition-title:before,.rst-content .admonition-todo,.rst-content .attention,.rst-content .caution,.rst-content .code-block-caption .headerlink:before,.rst-content .danger,.rst-content .eqno .headerlink:before,.rst-content .error,.rst-content .hint,.rst-content .important,.rst-content .note,.rst-content .seealso,.rst-content .tip,.rst-content .warning,.rst-content code.download span:first-child:before,.rst-content dl dt .headerlink:before,.rst-content h1 .headerlink:before,.rst-content h2 .headerlink:before,.rst-content h3 .headerlink:before,.rst-content h4 .headerlink:before,.rst-content h5 .headerlink:before,.rst-content h6 .headerlink:before,.rst-content p.caption .headerlink:before,.rst-content p .headerlink:before,.rst-content table>caption .headerlink:before,.rst-content tt.download span:first-child:before,.wy-alert,.wy-dropdown .caret:before,.wy-inline-validate.wy-inline-validate-danger .wy-input-context:before,.wy-inline-validate.wy-inline-validate-info .wy-input-context:before,.wy-inline-validate.wy-inline-validate-success .wy-input-context:before,.wy-inline-validate.wy-inline-validate-warning .wy-input-context:before,.wy-menu-vertical li.current>a,.wy-menu-vertical li.current>a button.toctree-expand:before,.wy-menu-vertical li.on a,.wy-menu-vertical li.on a button.toctree-expand:before,.wy-menu-vertical li button.toctree-expand:before,.wy-nav-top a,.wy-side-nav-search .wy-dropdown>a,.wy-side-nav-search>a,input[type=color],input[type=date],input[type=datetime-local],input[type=datetime],input[type=email],input[type=month],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],input[type=week],select,textarea{-webkit-font-smoothing:antialiased}.clearfix{*zoom:1}.clearfix:after,.clearfix:before{display:table;content:""}.clearfix:after{clear:both}/*! * Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) - */@font-face{font-family:FontAwesome;src:url(fonts/fontawesome-webfont.eot?674f50d287a8c48dc19ba404d20fe713);src:url(fonts/fontawesome-webfont.eot?674f50d287a8c48dc19ba404d20fe713?#iefix&v=4.7.0) format("embedded-opentype"),url(fonts/fontawesome-webfont.woff2?af7ae505a9eed503f8b8e6982036873e) format("woff2"),url(fonts/fontawesome-webfont.woff?fee66e712a8a08eef5805a46892932ad) format("woff"),url(fonts/fontawesome-webfont.ttf?b06871f281fee6b241d60582ae9369b9) format("truetype"),url(fonts/fontawesome-webfont.svg?912ec66d7572ff821749319396470bde#fontawesomeregular) format("svg");font-weight:400;font-style:normal}.fa,.icon,.rst-content .admonition-title,.rst-content .code-block-caption .headerlink,.rst-content code.download span:first-child,.rst-content dl dt .headerlink,.rst-content h1 .headerlink,.rst-content h2 .headerlink,.rst-content h3 .headerlink,.rst-content h4 .headerlink,.rst-content h5 .headerlink,.rst-content h6 .headerlink,.rst-content p.caption .headerlink,.rst-content table>caption .headerlink,.rst-content tt.download span:first-child,.wy-menu-vertical li.current>a span.toctree-expand,.wy-menu-vertical li.on a span.toctree-expand,.wy-menu-vertical li span.toctree-expand{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.28571em;text-align:center}.fa-ul{padding-left:0;margin-left:2.14286em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.14286em;width:2.14286em;top:.14286em;text-align:center}.fa-li.fa-lg{left:-1.85714em}.fa-border{padding:.2em .25em .15em;border:.08em solid #eee;border-radius:.1em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa-pull-left.icon,.fa.fa-pull-left,.rst-content .code-block-caption .fa-pull-left.headerlink,.rst-content .fa-pull-left.admonition-title,.rst-content code.download span.fa-pull-left:first-child,.rst-content dl dt .fa-pull-left.headerlink,.rst-content h1 .fa-pull-left.headerlink,.rst-content h2 .fa-pull-left.headerlink,.rst-content h3 .fa-pull-left.headerlink,.rst-content h4 .fa-pull-left.headerlink,.rst-content h5 .fa-pull-left.headerlink,.rst-content h6 .fa-pull-left.headerlink,.rst-content p.caption .fa-pull-left.headerlink,.rst-content table>caption .fa-pull-left.headerlink,.rst-content tt.download span.fa-pull-left:first-child,.wy-menu-vertical li.current>a span.fa-pull-left.toctree-expand,.wy-menu-vertical li.on a span.fa-pull-left.toctree-expand,.wy-menu-vertical li span.fa-pull-left.toctree-expand{margin-right:.3em}.fa-pull-right.icon,.fa.fa-pull-right,.rst-content .code-block-caption .fa-pull-right.headerlink,.rst-content .fa-pull-right.admonition-title,.rst-content code.download span.fa-pull-right:first-child,.rst-content dl dt .fa-pull-right.headerlink,.rst-content h1 .fa-pull-right.headerlink,.rst-content h2 .fa-pull-right.headerlink,.rst-content h3 .fa-pull-right.headerlink,.rst-content h4 .fa-pull-right.headerlink,.rst-content h5 .fa-pull-right.headerlink,.rst-content h6 .fa-pull-right.headerlink,.rst-content p.caption .fa-pull-right.headerlink,.rst-content table>caption .fa-pull-right.headerlink,.rst-content tt.download span.fa-pull-right:first-child,.wy-menu-vertical li.current>a span.fa-pull-right.toctree-expand,.wy-menu-vertical li.on a span.fa-pull-right.toctree-expand,.wy-menu-vertical li span.fa-pull-right.toctree-expand{margin-left:.3em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left,.pull-left.icon,.rst-content .code-block-caption .pull-left.headerlink,.rst-content .pull-left.admonition-title,.rst-content code.download span.pull-left:first-child,.rst-content dl dt .pull-left.headerlink,.rst-content h1 .pull-left.headerlink,.rst-content h2 .pull-left.headerlink,.rst-content h3 .pull-left.headerlink,.rst-content h4 .pull-left.headerlink,.rst-content h5 .pull-left.headerlink,.rst-content h6 .pull-left.headerlink,.rst-content p.caption .pull-left.headerlink,.rst-content table>caption .pull-left.headerlink,.rst-content tt.download span.pull-left:first-child,.wy-menu-vertical li.current>a span.pull-left.toctree-expand,.wy-menu-vertical li.on a span.pull-left.toctree-expand,.wy-menu-vertical li span.pull-left.toctree-expand{margin-right:.3em}.fa.pull-right,.pull-right.icon,.rst-content .code-block-caption .pull-right.headerlink,.rst-content .pull-right.admonition-title,.rst-content code.download span.pull-right:first-child,.rst-content dl dt .pull-right.headerlink,.rst-content h1 .pull-right.headerlink,.rst-content h2 .pull-right.headerlink,.rst-content h3 .pull-right.headerlink,.rst-content h4 .pull-right.headerlink,.rst-content h5 .pull-right.headerlink,.rst-content h6 .pull-right.headerlink,.rst-content p.caption .pull-right.headerlink,.rst-content table>caption .pull-right.headerlink,.rst-content tt.download span.pull-right:first-child,.wy-menu-vertical li.current>a span.pull-right.toctree-expand,.wy-menu-vertical li.on a span.pull-right.toctree-expand,.wy-menu-vertical li span.pull-right.toctree-expand{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.fa-pulse{-webkit-animation:fa-spin 1s steps(8) infinite;animation:fa-spin 1s steps(8) infinite}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scaleX(-1);-ms-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";-webkit-transform:scaleY(-1);-ms-transform:scaleY(-1);transform:scaleY(-1)}:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{filter:none}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:""}.fa-music:before{content:""}.fa-search:before,.icon-search:before{content:""}.fa-envelope-o:before{content:""}.fa-heart:before{content:""}.fa-star:before{content:""}.fa-star-o:before{content:""}.fa-user:before{content:""}.fa-film:before{content:""}.fa-th-large:before{content:""}.fa-th:before{content:""}.fa-th-list:before{content:""}.fa-check:before{content:""}.fa-close:before,.fa-remove:before,.fa-times:before{content:""}.fa-search-plus:before{content:""}.fa-search-minus:before{content:""}.fa-power-off:before{content:""}.fa-signal:before{content:""}.fa-cog:before,.fa-gear:before{content:""}.fa-trash-o:before{content:""}.fa-home:before,.icon-home:before{content:""}.fa-file-o:before{content:""}.fa-clock-o:before{content:""}.fa-road:before{content:""}.fa-download:before,.rst-content code.download span:first-child:before,.rst-content tt.download span:first-child:before{content:""}.fa-arrow-circle-o-down:before{content:""}.fa-arrow-circle-o-up:before{content:""}.fa-inbox:before{content:""}.fa-play-circle-o:before{content:""}.fa-repeat:before,.fa-rotate-right:before{content:""}.fa-refresh:before{content:""}.fa-list-alt:before{content:""}.fa-lock:before{content:""}.fa-flag:before{content:""}.fa-headphones:before{content:""}.fa-volume-off:before{content:""}.fa-volume-down:before{content:""}.fa-volume-up:before{content:""}.fa-qrcode:before{content:""}.fa-barcode:before{content:""}.fa-tag:before{content:""}.fa-tags:before{content:""}.fa-book:before,.icon-book:before{content:""}.fa-bookmark:before{content:""}.fa-print:before{content:""}.fa-camera:before{content:""}.fa-font:before{content:""}.fa-bold:before{content:""}.fa-italic:before{content:""}.fa-text-height:before{content:""}.fa-text-width:before{content:""}.fa-align-left:before{content:""}.fa-align-center:before{content:""}.fa-align-right:before{content:""}.fa-align-justify:before{content:""}.fa-list:before{content:""}.fa-dedent:before,.fa-outdent:before{content:""}.fa-indent:before{content:""}.fa-video-camera:before{content:""}.fa-image:before,.fa-photo:before,.fa-picture-o:before{content:""}.fa-pencil:before{content:""}.fa-map-marker:before{content:""}.fa-adjust:before{content:""}.fa-tint:before{content:""}.fa-edit:before,.fa-pencil-square-o:before{content:""}.fa-share-square-o:before{content:""}.fa-check-square-o:before{content:""}.fa-arrows:before{content:""}.fa-step-backward:before{content:""}.fa-fast-backward:before{content:""}.fa-backward:before{content:""}.fa-play:before{content:""}.fa-pause:before{content:""}.fa-stop:before{content:""}.fa-forward:before{content:""}.fa-fast-forward:before{content:""}.fa-step-forward:before{content:""}.fa-eject:before{content:""}.fa-chevron-left:before{content:""}.fa-chevron-right:before{content:""}.fa-plus-circle:before{content:""}.fa-minus-circle:before{content:""}.fa-times-circle:before,.wy-inline-validate.wy-inline-validate-danger .wy-input-context:before{content:""}.fa-check-circle:before,.wy-inline-validate.wy-inline-validate-success .wy-input-context:before{content:""}.fa-question-circle:before{content:""}.fa-info-circle:before{content:""}.fa-crosshairs:before{content:""}.fa-times-circle-o:before{content:""}.fa-check-circle-o:before{content:""}.fa-ban:before{content:""}.fa-arrow-left:before{content:""}.fa-arrow-right:before{content:""}.fa-arrow-up:before{content:""}.fa-arrow-down:before{content:""}.fa-mail-forward:before,.fa-share:before{content:""}.fa-expand:before{content:""}.fa-compress:before{content:""}.fa-plus:before{content:""}.fa-minus:before{content:""}.fa-asterisk:before{content:""}.fa-exclamation-circle:before,.rst-content .admonition-title:before,.wy-inline-validate.wy-inline-validate-info .wy-input-context:before,.wy-inline-validate.wy-inline-validate-warning .wy-input-context:before{content:""}.fa-gift:before{content:""}.fa-leaf:before{content:""}.fa-fire:before,.icon-fire:before{content:""}.fa-eye:before{content:""}.fa-eye-slash:before{content:""}.fa-exclamation-triangle:before,.fa-warning:before{content:""}.fa-plane:before{content:""}.fa-calendar:before{content:""}.fa-random:before{content:""}.fa-comment:before{content:""}.fa-magnet:before{content:""}.fa-chevron-up:before{content:""}.fa-chevron-down:before{content:""}.fa-retweet:before{content:""}.fa-shopping-cart:before{content:""}.fa-folder:before{content:""}.fa-folder-open:before{content:""}.fa-arrows-v:before{content:""}.fa-arrows-h:before{content:""}.fa-bar-chart-o:before,.fa-bar-chart:before{content:""}.fa-twitter-square:before{content:""}.fa-facebook-square:before{content:""}.fa-camera-retro:before{content:""}.fa-key:before{content:""}.fa-cogs:before,.fa-gears:before{content:""}.fa-comments:before{content:""}.fa-thumbs-o-up:before{content:""}.fa-thumbs-o-down:before{content:""}.fa-star-half:before{content:""}.fa-heart-o:before{content:""}.fa-sign-out:before{content:""}.fa-linkedin-square:before{content:""}.fa-thumb-tack:before{content:""}.fa-external-link:before{content:""}.fa-sign-in:before{content:""}.fa-trophy:before{content:""}.fa-github-square:before{content:""}.fa-upload:before{content:""}.fa-lemon-o:before{content:""}.fa-phone:before{content:""}.fa-square-o:before{content:""}.fa-bookmark-o:before{content:""}.fa-phone-square:before{content:""}.fa-twitter:before{content:""}.fa-facebook-f:before,.fa-facebook:before{content:""}.fa-github:before,.icon-github:before{content:""}.fa-unlock:before{content:""}.fa-credit-card:before{content:""}.fa-feed:before,.fa-rss:before{content:""}.fa-hdd-o:before{content:""}.fa-bullhorn:before{content:""}.fa-bell:before{content:""}.fa-certificate:before{content:""}.fa-hand-o-right:before{content:""}.fa-hand-o-left:before{content:""}.fa-hand-o-up:before{content:""}.fa-hand-o-down:before{content:""}.fa-arrow-circle-left:before,.icon-circle-arrow-left:before{content:""}.fa-arrow-circle-right:before,.icon-circle-arrow-right:before{content:""}.fa-arrow-circle-up:before{content:""}.fa-arrow-circle-down:before{content:""}.fa-globe:before{content:""}.fa-wrench:before{content:""}.fa-tasks:before{content:""}.fa-filter:before{content:""}.fa-briefcase:before{content:""}.fa-arrows-alt:before{content:""}.fa-group:before,.fa-users:before{content:""}.fa-chain:before,.fa-link:before,.icon-link:before{content:""}.fa-cloud:before{content:""}.fa-flask:before{content:""}.fa-cut:before,.fa-scissors:before{content:""}.fa-copy:before,.fa-files-o:before{content:""}.fa-paperclip:before{content:""}.fa-floppy-o:before,.fa-save:before{content:""}.fa-square:before{content:""}.fa-bars:before,.fa-navicon:before,.fa-reorder:before{content:""}.fa-list-ul:before{content:""}.fa-list-ol:before{content:""}.fa-strikethrough:before{content:""}.fa-underline:before{content:""}.fa-table:before{content:""}.fa-magic:before{content:""}.fa-truck:before{content:""}.fa-pinterest:before{content:""}.fa-pinterest-square:before{content:""}.fa-google-plus-square:before{content:""}.fa-google-plus:before{content:""}.fa-money:before{content:""}.fa-caret-down:before,.icon-caret-down:before,.wy-dropdown .caret:before{content:""}.fa-caret-up:before{content:""}.fa-caret-left:before{content:""}.fa-caret-right:before{content:""}.fa-columns:before{content:""}.fa-sort:before,.fa-unsorted:before{content:""}.fa-sort-desc:before,.fa-sort-down:before{content:""}.fa-sort-asc:before,.fa-sort-up:before{content:""}.fa-envelope:before{content:""}.fa-linkedin:before{content:""}.fa-rotate-left:before,.fa-undo:before{content:""}.fa-gavel:before,.fa-legal:before{content:""}.fa-dashboard:before,.fa-tachometer:before{content:""}.fa-comment-o:before{content:""}.fa-comments-o:before{content:""}.fa-bolt:before,.fa-flash:before{content:""}.fa-sitemap:before{content:""}.fa-umbrella:before{content:""}.fa-clipboard:before,.fa-paste:before{content:""}.fa-lightbulb-o:before{content:""}.fa-exchange:before{content:""}.fa-cloud-download:before{content:""}.fa-cloud-upload:before{content:""}.fa-user-md:before{content:""}.fa-stethoscope:before{content:""}.fa-suitcase:before{content:""}.fa-bell-o:before{content:""}.fa-coffee:before{content:""}.fa-cutlery:before{content:""}.fa-file-text-o:before{content:""}.fa-building-o:before{content:""}.fa-hospital-o:before{content:""}.fa-ambulance:before{content:""}.fa-medkit:before{content:""}.fa-fighter-jet:before{content:""}.fa-beer:before{content:""}.fa-h-square:before{content:""}.fa-plus-square:before{content:""}.fa-angle-double-left:before{content:""}.fa-angle-double-right:before{content:""}.fa-angle-double-up:before{content:""}.fa-angle-double-down:before{content:""}.fa-angle-left:before{content:""}.fa-angle-right:before{content:""}.fa-angle-up:before{content:""}.fa-angle-down:before{content:""}.fa-desktop:before{content:""}.fa-laptop:before{content:""}.fa-tablet:before{content:""}.fa-mobile-phone:before,.fa-mobile:before{content:""}.fa-circle-o:before{content:""}.fa-quote-left:before{content:""}.fa-quote-right:before{content:""}.fa-spinner:before{content:""}.fa-circle:before{content:""}.fa-mail-reply:before,.fa-reply:before{content:""}.fa-github-alt:before{content:""}.fa-folder-o:before{content:""}.fa-folder-open-o:before{content:""}.fa-smile-o:before{content:""}.fa-frown-o:before{content:""}.fa-meh-o:before{content:""}.fa-gamepad:before{content:""}.fa-keyboard-o:before{content:""}.fa-flag-o:before{content:""}.fa-flag-checkered:before{content:""}.fa-terminal:before{content:""}.fa-code:before{content:""}.fa-mail-reply-all:before,.fa-reply-all:before{content:""}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:""}.fa-location-arrow:before{content:""}.fa-crop:before{content:""}.fa-code-fork:before{content:""}.fa-chain-broken:before,.fa-unlink:before{content:""}.fa-question:before{content:""}.fa-info:before{content:""}.fa-exclamation:before{content:""}.fa-superscript:before{content:""}.fa-subscript:before{content:""}.fa-eraser:before{content:""}.fa-puzzle-piece:before{content:""}.fa-microphone:before{content:""}.fa-microphone-slash:before{content:""}.fa-shield:before{content:""}.fa-calendar-o:before{content:""}.fa-fire-extinguisher:before{content:""}.fa-rocket:before{content:""}.fa-maxcdn:before{content:""}.fa-chevron-circle-left:before{content:""}.fa-chevron-circle-right:before{content:""}.fa-chevron-circle-up:before{content:""}.fa-chevron-circle-down:before{content:""}.fa-html5:before{content:""}.fa-css3:before{content:""}.fa-anchor:before{content:""}.fa-unlock-alt:before{content:""}.fa-bullseye:before{content:""}.fa-ellipsis-h:before{content:""}.fa-ellipsis-v:before{content:""}.fa-rss-square:before{content:""}.fa-play-circle:before{content:""}.fa-ticket:before{content:""}.fa-minus-square:before{content:""}.fa-minus-square-o:before,.wy-menu-vertical li.current>a span.toctree-expand:before,.wy-menu-vertical li.on a span.toctree-expand:before{content:""}.fa-level-up:before{content:""}.fa-level-down:before{content:""}.fa-check-square:before{content:""}.fa-pencil-square:before{content:""}.fa-external-link-square:before{content:""}.fa-share-square:before{content:""}.fa-compass:before{content:""}.fa-caret-square-o-down:before,.fa-toggle-down:before{content:""}.fa-caret-square-o-up:before,.fa-toggle-up:before{content:""}.fa-caret-square-o-right:before,.fa-toggle-right:before{content:""}.fa-eur:before,.fa-euro:before{content:""}.fa-gbp:before{content:""}.fa-dollar:before,.fa-usd:before{content:""}.fa-inr:before,.fa-rupee:before{content:""}.fa-cny:before,.fa-jpy:before,.fa-rmb:before,.fa-yen:before{content:""}.fa-rouble:before,.fa-rub:before,.fa-ruble:before{content:""}.fa-krw:before,.fa-won:before{content:""}.fa-bitcoin:before,.fa-btc:before{content:""}.fa-file:before{content:""}.fa-file-text:before{content:""}.fa-sort-alpha-asc:before{content:""}.fa-sort-alpha-desc:before{content:""}.fa-sort-amount-asc:before{content:""}.fa-sort-amount-desc:before{content:""}.fa-sort-numeric-asc:before{content:""}.fa-sort-numeric-desc:before{content:""}.fa-thumbs-up:before{content:""}.fa-thumbs-down:before{content:""}.fa-youtube-square:before{content:""}.fa-youtube:before{content:""}.fa-xing:before{content:""}.fa-xing-square:before{content:""}.fa-youtube-play:before{content:""}.fa-dropbox:before{content:""}.fa-stack-overflow:before{content:""}.fa-instagram:before{content:""}.fa-flickr:before{content:""}.fa-adn:before{content:""}.fa-bitbucket:before,.icon-bitbucket:before{content:""}.fa-bitbucket-square:before{content:""}.fa-tumblr:before{content:""}.fa-tumblr-square:before{content:""}.fa-long-arrow-down:before{content:""}.fa-long-arrow-up:before{content:""}.fa-long-arrow-left:before{content:""}.fa-long-arrow-right:before{content:""}.fa-apple:before{content:""}.fa-windows:before{content:""}.fa-android:before{content:""}.fa-linux:before{content:""}.fa-dribbble:before{content:""}.fa-skype:before{content:""}.fa-foursquare:before{content:""}.fa-trello:before{content:""}.fa-female:before{content:""}.fa-male:before{content:""}.fa-gittip:before,.fa-gratipay:before{content:""}.fa-sun-o:before{content:""}.fa-moon-o:before{content:""}.fa-archive:before{content:""}.fa-bug:before{content:""}.fa-vk:before{content:""}.fa-weibo:before{content:""}.fa-renren:before{content:""}.fa-pagelines:before{content:""}.fa-stack-exchange:before{content:""}.fa-arrow-circle-o-right:before{content:""}.fa-arrow-circle-o-left:before{content:""}.fa-caret-square-o-left:before,.fa-toggle-left:before{content:""}.fa-dot-circle-o:before{content:""}.fa-wheelchair:before{content:""}.fa-vimeo-square:before{content:""}.fa-try:before,.fa-turkish-lira:before{content:""}.fa-plus-square-o:before,.wy-menu-vertical li span.toctree-expand:before{content:""}.fa-space-shuttle:before{content:""}.fa-slack:before{content:""}.fa-envelope-square:before{content:""}.fa-wordpress:before{content:""}.fa-openid:before{content:""}.fa-bank:before,.fa-institution:before,.fa-university:before{content:""}.fa-graduation-cap:before,.fa-mortar-board:before{content:""}.fa-yahoo:before{content:""}.fa-google:before{content:""}.fa-reddit:before{content:""}.fa-reddit-square:before{content:""}.fa-stumbleupon-circle:before{content:""}.fa-stumbleupon:before{content:""}.fa-delicious:before{content:""}.fa-digg:before{content:""}.fa-pied-piper-pp:before{content:""}.fa-pied-piper-alt:before{content:""}.fa-drupal:before{content:""}.fa-joomla:before{content:""}.fa-language:before{content:""}.fa-fax:before{content:""}.fa-building:before{content:""}.fa-child:before{content:""}.fa-paw:before{content:""}.fa-spoon:before{content:""}.fa-cube:before{content:""}.fa-cubes:before{content:""}.fa-behance:before{content:""}.fa-behance-square:before{content:""}.fa-steam:before{content:""}.fa-steam-square:before{content:""}.fa-recycle:before{content:""}.fa-automobile:before,.fa-car:before{content:""}.fa-cab:before,.fa-taxi:before{content:""}.fa-tree:before{content:""}.fa-spotify:before{content:""}.fa-deviantart:before{content:""}.fa-soundcloud:before{content:""}.fa-database:before{content:""}.fa-file-pdf-o:before{content:""}.fa-file-word-o:before{content:""}.fa-file-excel-o:before{content:""}.fa-file-powerpoint-o:before{content:""}.fa-file-image-o:before,.fa-file-photo-o:before,.fa-file-picture-o:before{content:""}.fa-file-archive-o:before,.fa-file-zip-o:before{content:""}.fa-file-audio-o:before,.fa-file-sound-o:before{content:""}.fa-file-movie-o:before,.fa-file-video-o:before{content:""}.fa-file-code-o:before{content:""}.fa-vine:before{content:""}.fa-codepen:before{content:""}.fa-jsfiddle:before{content:""}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-ring:before,.fa-life-saver:before,.fa-support:before{content:""}.fa-circle-o-notch:before{content:""}.fa-ra:before,.fa-rebel:before,.fa-resistance:before{content:""}.fa-empire:before,.fa-ge:before{content:""}.fa-git-square:before{content:""}.fa-git:before{content:""}.fa-hacker-news:before,.fa-y-combinator-square:before,.fa-yc-square:before{content:""}.fa-tencent-weibo:before{content:""}.fa-qq:before{content:""}.fa-wechat:before,.fa-weixin:before{content:""}.fa-paper-plane:before,.fa-send:before{content:""}.fa-paper-plane-o:before,.fa-send-o:before{content:""}.fa-history:before{content:""}.fa-circle-thin:before{content:""}.fa-header:before{content:""}.fa-paragraph:before{content:""}.fa-sliders:before{content:""}.fa-share-alt:before{content:""}.fa-share-alt-square:before{content:""}.fa-bomb:before{content:""}.fa-futbol-o:before,.fa-soccer-ball-o:before{content:""}.fa-tty:before{content:""}.fa-binoculars:before{content:""}.fa-plug:before{content:""}.fa-slideshare:before{content:""}.fa-twitch:before{content:""}.fa-yelp:before{content:""}.fa-newspaper-o:before{content:""}.fa-wifi:before{content:""}.fa-calculator:before{content:""}.fa-paypal:before{content:""}.fa-google-wallet:before{content:""}.fa-cc-visa:before{content:""}.fa-cc-mastercard:before{content:""}.fa-cc-discover:before{content:""}.fa-cc-amex:before{content:""}.fa-cc-paypal:before{content:""}.fa-cc-stripe:before{content:""}.fa-bell-slash:before{content:""}.fa-bell-slash-o:before{content:""}.fa-trash:before{content:""}.fa-copyright:before{content:""}.fa-at:before{content:""}.fa-eyedropper:before{content:""}.fa-paint-brush:before{content:""}.fa-birthday-cake:before{content:""}.fa-area-chart:before{content:""}.fa-pie-chart:before{content:""}.fa-line-chart:before{content:""}.fa-lastfm:before{content:""}.fa-lastfm-square:before{content:""}.fa-toggle-off:before{content:""}.fa-toggle-on:before{content:""}.fa-bicycle:before{content:""}.fa-bus:before{content:""}.fa-ioxhost:before{content:""}.fa-angellist:before{content:""}.fa-cc:before{content:""}.fa-ils:before,.fa-shekel:before,.fa-sheqel:before{content:""}.fa-meanpath:before{content:""}.fa-buysellads:before{content:""}.fa-connectdevelop:before{content:""}.fa-dashcube:before{content:""}.fa-forumbee:before{content:""}.fa-leanpub:before{content:""}.fa-sellsy:before{content:""}.fa-shirtsinbulk:before{content:""}.fa-simplybuilt:before{content:""}.fa-skyatlas:before{content:""}.fa-cart-plus:before{content:""}.fa-cart-arrow-down:before{content:""}.fa-diamond:before{content:""}.fa-ship:before{content:""}.fa-user-secret:before{content:""}.fa-motorcycle:before{content:""}.fa-street-view:before{content:""}.fa-heartbeat:before{content:""}.fa-venus:before{content:""}.fa-mars:before{content:""}.fa-mercury:before{content:""}.fa-intersex:before,.fa-transgender:before{content:""}.fa-transgender-alt:before{content:""}.fa-venus-double:before{content:""}.fa-mars-double:before{content:""}.fa-venus-mars:before{content:""}.fa-mars-stroke:before{content:""}.fa-mars-stroke-v:before{content:""}.fa-mars-stroke-h:before{content:""}.fa-neuter:before{content:""}.fa-genderless:before{content:""}.fa-facebook-official:before{content:""}.fa-pinterest-p:before{content:""}.fa-whatsapp:before{content:""}.fa-server:before{content:""}.fa-user-plus:before{content:""}.fa-user-times:before{content:""}.fa-bed:before,.fa-hotel:before{content:""}.fa-viacoin:before{content:""}.fa-train:before{content:""}.fa-subway:before{content:""}.fa-medium:before{content:""}.fa-y-combinator:before,.fa-yc:before{content:""}.fa-optin-monster:before{content:""}.fa-opencart:before{content:""}.fa-expeditedssl:before{content:""}.fa-battery-4:before,.fa-battery-full:before,.fa-battery:before{content:""}.fa-battery-3:before,.fa-battery-three-quarters:before{content:""}.fa-battery-2:before,.fa-battery-half:before{content:""}.fa-battery-1:before,.fa-battery-quarter:before{content:""}.fa-battery-0:before,.fa-battery-empty:before{content:""}.fa-mouse-pointer:before{content:""}.fa-i-cursor:before{content:""}.fa-object-group:before{content:""}.fa-object-ungroup:before{content:""}.fa-sticky-note:before{content:""}.fa-sticky-note-o:before{content:""}.fa-cc-jcb:before{content:""}.fa-cc-diners-club:before{content:""}.fa-clone:before{content:""}.fa-balance-scale:before{content:""}.fa-hourglass-o:before{content:""}.fa-hourglass-1:before,.fa-hourglass-start:before{content:""}.fa-hourglass-2:before,.fa-hourglass-half:before{content:""}.fa-hourglass-3:before,.fa-hourglass-end:before{content:""}.fa-hourglass:before{content:""}.fa-hand-grab-o:before,.fa-hand-rock-o:before{content:""}.fa-hand-paper-o:before,.fa-hand-stop-o:before{content:""}.fa-hand-scissors-o:before{content:""}.fa-hand-lizard-o:before{content:""}.fa-hand-spock-o:before{content:""}.fa-hand-pointer-o:before{content:""}.fa-hand-peace-o:before{content:""}.fa-trademark:before{content:""}.fa-registered:before{content:""}.fa-creative-commons:before{content:""}.fa-gg:before{content:""}.fa-gg-circle:before{content:""}.fa-tripadvisor:before{content:""}.fa-odnoklassniki:before{content:""}.fa-odnoklassniki-square:before{content:""}.fa-get-pocket:before{content:""}.fa-wikipedia-w:before{content:""}.fa-safari:before{content:""}.fa-chrome:before{content:""}.fa-firefox:before{content:""}.fa-opera:before{content:""}.fa-internet-explorer:before{content:""}.fa-television:before,.fa-tv:before{content:""}.fa-contao:before{content:""}.fa-500px:before{content:""}.fa-amazon:before{content:""}.fa-calendar-plus-o:before{content:""}.fa-calendar-minus-o:before{content:""}.fa-calendar-times-o:before{content:""}.fa-calendar-check-o:before{content:""}.fa-industry:before{content:""}.fa-map-pin:before{content:""}.fa-map-signs:before{content:""}.fa-map-o:before{content:""}.fa-map:before{content:""}.fa-commenting:before{content:""}.fa-commenting-o:before{content:""}.fa-houzz:before{content:""}.fa-vimeo:before{content:""}.fa-black-tie:before{content:""}.fa-fonticons:before{content:""}.fa-reddit-alien:before{content:""}.fa-edge:before{content:""}.fa-credit-card-alt:before{content:""}.fa-codiepie:before{content:""}.fa-modx:before{content:""}.fa-fort-awesome:before{content:""}.fa-usb:before{content:""}.fa-product-hunt:before{content:""}.fa-mixcloud:before{content:""}.fa-scribd:before{content:""}.fa-pause-circle:before{content:""}.fa-pause-circle-o:before{content:""}.fa-stop-circle:before{content:""}.fa-stop-circle-o:before{content:""}.fa-shopping-bag:before{content:""}.fa-shopping-basket:before{content:""}.fa-hashtag:before{content:""}.fa-bluetooth:before{content:""}.fa-bluetooth-b:before{content:""}.fa-percent:before{content:""}.fa-gitlab:before,.icon-gitlab:before{content:""}.fa-wpbeginner:before{content:""}.fa-wpforms:before{content:""}.fa-envira:before{content:""}.fa-universal-access:before{content:""}.fa-wheelchair-alt:before{content:""}.fa-question-circle-o:before{content:""}.fa-blind:before{content:""}.fa-audio-description:before{content:""}.fa-volume-control-phone:before{content:""}.fa-braille:before{content:""}.fa-assistive-listening-systems:before{content:""}.fa-american-sign-language-interpreting:before,.fa-asl-interpreting:before{content:""}.fa-deaf:before,.fa-deafness:before,.fa-hard-of-hearing:before{content:""}.fa-glide:before{content:""}.fa-glide-g:before{content:""}.fa-sign-language:before,.fa-signing:before{content:""}.fa-low-vision:before{content:""}.fa-viadeo:before{content:""}.fa-viadeo-square:before{content:""}.fa-snapchat:before{content:""}.fa-snapchat-ghost:before{content:""}.fa-snapchat-square:before{content:""}.fa-pied-piper:before{content:""}.fa-first-order:before{content:""}.fa-yoast:before{content:""}.fa-themeisle:before{content:""}.fa-google-plus-circle:before,.fa-google-plus-official:before{content:""}.fa-fa:before,.fa-font-awesome:before{content:""}.fa-handshake-o:before{content:""}.fa-envelope-open:before{content:""}.fa-envelope-open-o:before{content:""}.fa-linode:before{content:""}.fa-address-book:before{content:""}.fa-address-book-o:before{content:""}.fa-address-card:before,.fa-vcard:before{content:""}.fa-address-card-o:before,.fa-vcard-o:before{content:""}.fa-user-circle:before{content:""}.fa-user-circle-o:before{content:""}.fa-user-o:before{content:""}.fa-id-badge:before{content:""}.fa-drivers-license:before,.fa-id-card:before{content:""}.fa-drivers-license-o:before,.fa-id-card-o:before{content:""}.fa-quora:before{content:""}.fa-free-code-camp:before{content:""}.fa-telegram:before{content:""}.fa-thermometer-4:before,.fa-thermometer-full:before,.fa-thermometer:before{content:""}.fa-thermometer-3:before,.fa-thermometer-three-quarters:before{content:""}.fa-thermometer-2:before,.fa-thermometer-half:before{content:""}.fa-thermometer-1:before,.fa-thermometer-quarter:before{content:""}.fa-thermometer-0:before,.fa-thermometer-empty:before{content:""}.fa-shower:before{content:""}.fa-bath:before,.fa-bathtub:before,.fa-s15:before{content:""}.fa-podcast:before{content:""}.fa-window-maximize:before{content:""}.fa-window-minimize:before{content:""}.fa-window-restore:before{content:""}.fa-times-rectangle:before,.fa-window-close:before{content:""}.fa-times-rectangle-o:before,.fa-window-close-o:before{content:""}.fa-bandcamp:before{content:""}.fa-grav:before{content:""}.fa-etsy:before{content:""}.fa-imdb:before{content:""}.fa-ravelry:before{content:""}.fa-eercast:before{content:""}.fa-microchip:before{content:""}.fa-snowflake-o:before{content:""}.fa-superpowers:before{content:""}.fa-wpexplorer:before{content:""}.fa-meetup:before{content:""}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}.fa,.icon,.rst-content .admonition-title,.rst-content .code-block-caption .headerlink,.rst-content code.download span:first-child,.rst-content dl dt .headerlink,.rst-content h1 .headerlink,.rst-content h2 .headerlink,.rst-content h3 .headerlink,.rst-content h4 .headerlink,.rst-content h5 .headerlink,.rst-content h6 .headerlink,.rst-content p.caption .headerlink,.rst-content table>caption .headerlink,.rst-content tt.download span:first-child,.wy-dropdown .caret,.wy-inline-validate.wy-inline-validate-danger .wy-input-context,.wy-inline-validate.wy-inline-validate-info .wy-input-context,.wy-inline-validate.wy-inline-validate-success .wy-input-context,.wy-inline-validate.wy-inline-validate-warning .wy-input-context,.wy-menu-vertical li.current>a span.toctree-expand,.wy-menu-vertical li.on a span.toctree-expand,.wy-menu-vertical li span.toctree-expand{font-family:inherit}.fa:before,.icon:before,.rst-content .admonition-title:before,.rst-content .code-block-caption .headerlink:before,.rst-content code.download span:first-child:before,.rst-content dl dt .headerlink:before,.rst-content h1 .headerlink:before,.rst-content h2 .headerlink:before,.rst-content h3 .headerlink:before,.rst-content h4 .headerlink:before,.rst-content h5 .headerlink:before,.rst-content h6 .headerlink:before,.rst-content p.caption .headerlink:before,.rst-content table>caption .headerlink:before,.rst-content tt.download span:first-child:before,.wy-dropdown .caret:before,.wy-inline-validate.wy-inline-validate-danger .wy-input-context:before,.wy-inline-validate.wy-inline-validate-info .wy-input-context:before,.wy-inline-validate.wy-inline-validate-success .wy-input-context:before,.wy-inline-validate.wy-inline-validate-warning .wy-input-context:before,.wy-menu-vertical li.current>a span.toctree-expand:before,.wy-menu-vertical li.on a span.toctree-expand:before,.wy-menu-vertical li span.toctree-expand:before{font-family:FontAwesome;display:inline-block;font-style:normal;font-weight:400;line-height:1;text-decoration:inherit}.rst-content .code-block-caption a .headerlink,.rst-content a .admonition-title,.rst-content code.download a span:first-child,.rst-content dl dt a .headerlink,.rst-content h1 a .headerlink,.rst-content h2 a .headerlink,.rst-content h3 a .headerlink,.rst-content h4 a .headerlink,.rst-content h5 a .headerlink,.rst-content h6 a .headerlink,.rst-content p.caption a .headerlink,.rst-content table>caption a .headerlink,.rst-content tt.download a span:first-child,.wy-menu-vertical li.current>a span.toctree-expand,.wy-menu-vertical li.on a span.toctree-expand,.wy-menu-vertical li a span.toctree-expand,a .fa,a .icon,a .rst-content .admonition-title,a .rst-content .code-block-caption .headerlink,a .rst-content code.download span:first-child,a .rst-content dl dt .headerlink,a .rst-content h1 .headerlink,a .rst-content h2 .headerlink,a .rst-content h3 .headerlink,a .rst-content h4 .headerlink,a .rst-content h5 .headerlink,a .rst-content h6 .headerlink,a .rst-content p.caption .headerlink,a .rst-content table>caption .headerlink,a .rst-content tt.download span:first-child,a .wy-menu-vertical li span.toctree-expand{display:inline-block;text-decoration:inherit}.btn .fa,.btn .icon,.btn .rst-content .admonition-title,.btn .rst-content .code-block-caption .headerlink,.btn .rst-content code.download span:first-child,.btn .rst-content dl dt .headerlink,.btn .rst-content h1 .headerlink,.btn .rst-content h2 .headerlink,.btn .rst-content h3 .headerlink,.btn .rst-content h4 .headerlink,.btn .rst-content h5 .headerlink,.btn .rst-content h6 .headerlink,.btn .rst-content p.caption .headerlink,.btn .rst-content table>caption .headerlink,.btn .rst-content tt.download span:first-child,.btn .wy-menu-vertical li.current>a span.toctree-expand,.btn .wy-menu-vertical li.on a span.toctree-expand,.btn .wy-menu-vertical li span.toctree-expand,.nav .fa,.nav .icon,.nav .rst-content .admonition-title,.nav .rst-content .code-block-caption .headerlink,.nav .rst-content code.download span:first-child,.nav .rst-content dl dt .headerlink,.nav .rst-content h1 .headerlink,.nav .rst-content h2 .headerlink,.nav .rst-content h3 .headerlink,.nav .rst-content h4 .headerlink,.nav .rst-content h5 .headerlink,.nav .rst-content h6 .headerlink,.nav .rst-content p.caption .headerlink,.nav .rst-content table>caption .headerlink,.nav .rst-content tt.download span:first-child,.nav .wy-menu-vertical li.current>a span.toctree-expand,.nav .wy-menu-vertical li.on a span.toctree-expand,.nav .wy-menu-vertical li span.toctree-expand,.rst-content .btn .admonition-title,.rst-content .code-block-caption .btn .headerlink,.rst-content .code-block-caption .nav .headerlink,.rst-content .nav .admonition-title,.rst-content code.download .btn span:first-child,.rst-content code.download .nav span:first-child,.rst-content dl dt .btn .headerlink,.rst-content dl dt .nav .headerlink,.rst-content h1 .btn .headerlink,.rst-content h1 .nav .headerlink,.rst-content h2 .btn .headerlink,.rst-content h2 .nav .headerlink,.rst-content h3 .btn .headerlink,.rst-content h3 .nav .headerlink,.rst-content h4 .btn .headerlink,.rst-content h4 .nav .headerlink,.rst-content h5 .btn .headerlink,.rst-content h5 .nav .headerlink,.rst-content h6 .btn .headerlink,.rst-content h6 .nav .headerlink,.rst-content p.caption .btn .headerlink,.rst-content p.caption .nav .headerlink,.rst-content table>caption .btn .headerlink,.rst-content table>caption .nav .headerlink,.rst-content tt.download .btn span:first-child,.rst-content tt.download .nav span:first-child,.wy-menu-vertical li .btn span.toctree-expand,.wy-menu-vertical li.current>a .btn span.toctree-expand,.wy-menu-vertical li.current>a .nav span.toctree-expand,.wy-menu-vertical li .nav span.toctree-expand,.wy-menu-vertical li.on a .btn span.toctree-expand,.wy-menu-vertical li.on a .nav span.toctree-expand{display:inline}.btn .fa-large.icon,.btn .fa.fa-large,.btn .rst-content .code-block-caption .fa-large.headerlink,.btn .rst-content .fa-large.admonition-title,.btn .rst-content code.download span.fa-large:first-child,.btn .rst-content dl dt .fa-large.headerlink,.btn .rst-content h1 .fa-large.headerlink,.btn .rst-content h2 .fa-large.headerlink,.btn .rst-content h3 .fa-large.headerlink,.btn .rst-content h4 .fa-large.headerlink,.btn .rst-content h5 .fa-large.headerlink,.btn .rst-content h6 .fa-large.headerlink,.btn .rst-content p.caption .fa-large.headerlink,.btn .rst-content table>caption .fa-large.headerlink,.btn .rst-content tt.download span.fa-large:first-child,.btn .wy-menu-vertical li span.fa-large.toctree-expand,.nav .fa-large.icon,.nav .fa.fa-large,.nav .rst-content .code-block-caption .fa-large.headerlink,.nav .rst-content .fa-large.admonition-title,.nav .rst-content code.download span.fa-large:first-child,.nav .rst-content dl dt .fa-large.headerlink,.nav .rst-content h1 .fa-large.headerlink,.nav .rst-content h2 .fa-large.headerlink,.nav .rst-content h3 .fa-large.headerlink,.nav .rst-content h4 .fa-large.headerlink,.nav .rst-content h5 .fa-large.headerlink,.nav .rst-content h6 .fa-large.headerlink,.nav .rst-content p.caption .fa-large.headerlink,.nav .rst-content table>caption .fa-large.headerlink,.nav .rst-content tt.download span.fa-large:first-child,.nav .wy-menu-vertical li span.fa-large.toctree-expand,.rst-content .btn .fa-large.admonition-title,.rst-content .code-block-caption .btn .fa-large.headerlink,.rst-content .code-block-caption .nav .fa-large.headerlink,.rst-content .nav .fa-large.admonition-title,.rst-content code.download .btn span.fa-large:first-child,.rst-content code.download .nav span.fa-large:first-child,.rst-content dl dt .btn .fa-large.headerlink,.rst-content dl dt .nav .fa-large.headerlink,.rst-content h1 .btn .fa-large.headerlink,.rst-content h1 .nav .fa-large.headerlink,.rst-content h2 .btn .fa-large.headerlink,.rst-content h2 .nav .fa-large.headerlink,.rst-content h3 .btn .fa-large.headerlink,.rst-content h3 .nav .fa-large.headerlink,.rst-content h4 .btn .fa-large.headerlink,.rst-content h4 .nav .fa-large.headerlink,.rst-content h5 .btn .fa-large.headerlink,.rst-content h5 .nav .fa-large.headerlink,.rst-content h6 .btn .fa-large.headerlink,.rst-content h6 .nav .fa-large.headerlink,.rst-content p.caption .btn .fa-large.headerlink,.rst-content p.caption .nav .fa-large.headerlink,.rst-content table>caption .btn .fa-large.headerlink,.rst-content table>caption .nav .fa-large.headerlink,.rst-content tt.download .btn span.fa-large:first-child,.rst-content tt.download .nav span.fa-large:first-child,.wy-menu-vertical li .btn span.fa-large.toctree-expand,.wy-menu-vertical li .nav span.fa-large.toctree-expand{line-height:.9em}.btn .fa-spin.icon,.btn .fa.fa-spin,.btn .rst-content .code-block-caption .fa-spin.headerlink,.btn .rst-content .fa-spin.admonition-title,.btn .rst-content code.download span.fa-spin:first-child,.btn .rst-content dl dt .fa-spin.headerlink,.btn .rst-content h1 .fa-spin.headerlink,.btn .rst-content h2 .fa-spin.headerlink,.btn .rst-content h3 .fa-spin.headerlink,.btn .rst-content h4 .fa-spin.headerlink,.btn .rst-content h5 .fa-spin.headerlink,.btn .rst-content h6 .fa-spin.headerlink,.btn .rst-content p.caption .fa-spin.headerlink,.btn .rst-content table>caption .fa-spin.headerlink,.btn .rst-content tt.download span.fa-spin:first-child,.btn .wy-menu-vertical li span.fa-spin.toctree-expand,.nav .fa-spin.icon,.nav .fa.fa-spin,.nav .rst-content .code-block-caption .fa-spin.headerlink,.nav .rst-content .fa-spin.admonition-title,.nav .rst-content code.download span.fa-spin:first-child,.nav .rst-content dl dt .fa-spin.headerlink,.nav .rst-content h1 .fa-spin.headerlink,.nav .rst-content h2 .fa-spin.headerlink,.nav .rst-content h3 .fa-spin.headerlink,.nav .rst-content h4 .fa-spin.headerlink,.nav .rst-content h5 .fa-spin.headerlink,.nav .rst-content h6 .fa-spin.headerlink,.nav .rst-content p.caption .fa-spin.headerlink,.nav .rst-content table>caption .fa-spin.headerlink,.nav .rst-content tt.download span.fa-spin:first-child,.nav .wy-menu-vertical li span.fa-spin.toctree-expand,.rst-content .btn .fa-spin.admonition-title,.rst-content .code-block-caption .btn .fa-spin.headerlink,.rst-content .code-block-caption .nav .fa-spin.headerlink,.rst-content .nav .fa-spin.admonition-title,.rst-content code.download .btn span.fa-spin:first-child,.rst-content code.download .nav span.fa-spin:first-child,.rst-content dl dt .btn .fa-spin.headerlink,.rst-content dl dt .nav .fa-spin.headerlink,.rst-content h1 .btn .fa-spin.headerlink,.rst-content h1 .nav .fa-spin.headerlink,.rst-content h2 .btn .fa-spin.headerlink,.rst-content h2 .nav .fa-spin.headerlink,.rst-content h3 .btn .fa-spin.headerlink,.rst-content h3 .nav .fa-spin.headerlink,.rst-content h4 .btn .fa-spin.headerlink,.rst-content h4 .nav .fa-spin.headerlink,.rst-content h5 .btn .fa-spin.headerlink,.rst-content h5 .nav .fa-spin.headerlink,.rst-content h6 .btn .fa-spin.headerlink,.rst-content h6 .nav .fa-spin.headerlink,.rst-content p.caption .btn .fa-spin.headerlink,.rst-content p.caption .nav .fa-spin.headerlink,.rst-content table>caption .btn .fa-spin.headerlink,.rst-content table>caption .nav .fa-spin.headerlink,.rst-content tt.download .btn span.fa-spin:first-child,.rst-content tt.download .nav span.fa-spin:first-child,.wy-menu-vertical li .btn span.fa-spin.toctree-expand,.wy-menu-vertical li .nav span.fa-spin.toctree-expand{display:inline-block}.btn.fa:before,.btn.icon:before,.rst-content .btn.admonition-title:before,.rst-content .code-block-caption .btn.headerlink:before,.rst-content code.download span.btn:first-child:before,.rst-content dl dt .btn.headerlink:before,.rst-content h1 .btn.headerlink:before,.rst-content h2 .btn.headerlink:before,.rst-content h3 .btn.headerlink:before,.rst-content h4 .btn.headerlink:before,.rst-content h5 .btn.headerlink:before,.rst-content h6 .btn.headerlink:before,.rst-content p.caption .btn.headerlink:before,.rst-content table>caption .btn.headerlink:before,.rst-content tt.download span.btn:first-child:before,.wy-menu-vertical li span.btn.toctree-expand:before{opacity:.5;-webkit-transition:opacity .05s ease-in;-moz-transition:opacity .05s ease-in;transition:opacity .05s ease-in}.btn.fa:hover:before,.btn.icon:hover:before,.rst-content .btn.admonition-title:hover:before,.rst-content .code-block-caption .btn.headerlink:hover:before,.rst-content code.download span.btn:first-child:hover:before,.rst-content dl dt .btn.headerlink:hover:before,.rst-content h1 .btn.headerlink:hover:before,.rst-content h2 .btn.headerlink:hover:before,.rst-content h3 .btn.headerlink:hover:before,.rst-content h4 .btn.headerlink:hover:before,.rst-content h5 .btn.headerlink:hover:before,.rst-content h6 .btn.headerlink:hover:before,.rst-content p.caption .btn.headerlink:hover:before,.rst-content table>caption .btn.headerlink:hover:before,.rst-content tt.download span.btn:first-child:hover:before,.wy-menu-vertical li span.btn.toctree-expand:hover:before{opacity:1}.btn-mini .fa:before,.btn-mini .icon:before,.btn-mini .rst-content .admonition-title:before,.btn-mini .rst-content .code-block-caption .headerlink:before,.btn-mini .rst-content code.download span:first-child:before,.btn-mini .rst-content dl dt .headerlink:before,.btn-mini .rst-content h1 .headerlink:before,.btn-mini .rst-content h2 .headerlink:before,.btn-mini .rst-content h3 .headerlink:before,.btn-mini .rst-content h4 .headerlink:before,.btn-mini .rst-content h5 .headerlink:before,.btn-mini .rst-content h6 .headerlink:before,.btn-mini .rst-content p.caption .headerlink:before,.btn-mini .rst-content table>caption .headerlink:before,.btn-mini .rst-content tt.download span:first-child:before,.btn-mini .wy-menu-vertical li span.toctree-expand:before,.rst-content .btn-mini .admonition-title:before,.rst-content .code-block-caption .btn-mini .headerlink:before,.rst-content code.download .btn-mini span:first-child:before,.rst-content dl dt .btn-mini .headerlink:before,.rst-content h1 .btn-mini .headerlink:before,.rst-content h2 .btn-mini .headerlink:before,.rst-content h3 .btn-mini .headerlink:before,.rst-content h4 .btn-mini .headerlink:before,.rst-content h5 .btn-mini .headerlink:before,.rst-content h6 .btn-mini .headerlink:before,.rst-content p.caption .btn-mini .headerlink:before,.rst-content table>caption .btn-mini .headerlink:before,.rst-content tt.download .btn-mini span:first-child:before,.wy-menu-vertical li .btn-mini span.toctree-expand:before{font-size:14px;vertical-align:-15%}.rst-content .admonition,.rst-content .admonition-todo,.rst-content .attention,.rst-content .caution,.rst-content .danger,.rst-content .error,.rst-content .hint,.rst-content .important,.rst-content .note,.rst-content .seealso,.rst-content .tip,.rst-content .warning,.wy-alert{padding:12px;line-height:24px;margin-bottom:24px;background:#e7f2fa}.rst-content .admonition-title,.wy-alert-title{font-weight:700;display:block;color:#fff;background:#6ab0de;padding:6px 12px;margin:-12px -12px 12px}.rst-content .danger,.rst-content .error,.rst-content .wy-alert-danger.admonition,.rst-content .wy-alert-danger.admonition-todo,.rst-content .wy-alert-danger.attention,.rst-content .wy-alert-danger.caution,.rst-content .wy-alert-danger.hint,.rst-content .wy-alert-danger.important,.rst-content .wy-alert-danger.note,.rst-content .wy-alert-danger.seealso,.rst-content .wy-alert-danger.tip,.rst-content .wy-alert-danger.warning,.wy-alert.wy-alert-danger{background:#fdf3f2}.rst-content .danger .admonition-title,.rst-content .danger .wy-alert-title,.rst-content .error .admonition-title,.rst-content .error .wy-alert-title,.rst-content .wy-alert-danger.admonition-todo .admonition-title,.rst-content .wy-alert-danger.admonition-todo .wy-alert-title,.rst-content .wy-alert-danger.admonition .admonition-title,.rst-content .wy-alert-danger.admonition .wy-alert-title,.rst-content .wy-alert-danger.attention .admonition-title,.rst-content .wy-alert-danger.attention .wy-alert-title,.rst-content .wy-alert-danger.caution .admonition-title,.rst-content .wy-alert-danger.caution .wy-alert-title,.rst-content .wy-alert-danger.hint .admonition-title,.rst-content .wy-alert-danger.hint .wy-alert-title,.rst-content .wy-alert-danger.important .admonition-title,.rst-content .wy-alert-danger.important .wy-alert-title,.rst-content .wy-alert-danger.note .admonition-title,.rst-content .wy-alert-danger.note .wy-alert-title,.rst-content .wy-alert-danger.seealso .admonition-title,.rst-content .wy-alert-danger.seealso .wy-alert-title,.rst-content .wy-alert-danger.tip .admonition-title,.rst-content .wy-alert-danger.tip .wy-alert-title,.rst-content .wy-alert-danger.warning .admonition-title,.rst-content .wy-alert-danger.warning .wy-alert-title,.rst-content .wy-alert.wy-alert-danger .admonition-title,.wy-alert.wy-alert-danger .rst-content .admonition-title,.wy-alert.wy-alert-danger .wy-alert-title{background:#f29f97}.rst-content .admonition-todo,.rst-content .attention,.rst-content .caution,.rst-content .warning,.rst-content .wy-alert-warning.admonition,.rst-content .wy-alert-warning.danger,.rst-content .wy-alert-warning.error,.rst-content .wy-alert-warning.hint,.rst-content .wy-alert-warning.important,.rst-content .wy-alert-warning.note,.rst-content .wy-alert-warning.seealso,.rst-content .wy-alert-warning.tip,.wy-alert.wy-alert-warning{background:#ffedcc}.rst-content .admonition-todo .admonition-title,.rst-content .admonition-todo .wy-alert-title,.rst-content .attention .admonition-title,.rst-content .attention .wy-alert-title,.rst-content .caution .admonition-title,.rst-content .caution .wy-alert-title,.rst-content .warning .admonition-title,.rst-content .warning .wy-alert-title,.rst-content .wy-alert-warning.admonition .admonition-title,.rst-content .wy-alert-warning.admonition .wy-alert-title,.rst-content .wy-alert-warning.danger .admonition-title,.rst-content .wy-alert-warning.danger .wy-alert-title,.rst-content .wy-alert-warning.error .admonition-title,.rst-content .wy-alert-warning.error .wy-alert-title,.rst-content .wy-alert-warning.hint .admonition-title,.rst-content .wy-alert-warning.hint .wy-alert-title,.rst-content .wy-alert-warning.important .admonition-title,.rst-content .wy-alert-warning.important .wy-alert-title,.rst-content .wy-alert-warning.note .admonition-title,.rst-content .wy-alert-warning.note .wy-alert-title,.rst-content .wy-alert-warning.seealso .admonition-title,.rst-content .wy-alert-warning.seealso .wy-alert-title,.rst-content .wy-alert-warning.tip .admonition-title,.rst-content .wy-alert-warning.tip .wy-alert-title,.rst-content .wy-alert.wy-alert-warning .admonition-title,.wy-alert.wy-alert-warning .rst-content .admonition-title,.wy-alert.wy-alert-warning .wy-alert-title{background:#f0b37e}.rst-content .note,.rst-content .seealso,.rst-content .wy-alert-info.admonition,.rst-content .wy-alert-info.admonition-todo,.rst-content .wy-alert-info.attention,.rst-content .wy-alert-info.caution,.rst-content .wy-alert-info.danger,.rst-content .wy-alert-info.error,.rst-content .wy-alert-info.hint,.rst-content .wy-alert-info.important,.rst-content .wy-alert-info.tip,.rst-content .wy-alert-info.warning,.wy-alert.wy-alert-info{background:#e7f2fa}.rst-content .note .admonition-title,.rst-content .note .wy-alert-title,.rst-content .seealso .admonition-title,.rst-content .seealso .wy-alert-title,.rst-content .wy-alert-info.admonition-todo .admonition-title,.rst-content .wy-alert-info.admonition-todo .wy-alert-title,.rst-content .wy-alert-info.admonition .admonition-title,.rst-content .wy-alert-info.admonition .wy-alert-title,.rst-content .wy-alert-info.attention .admonition-title,.rst-content .wy-alert-info.attention .wy-alert-title,.rst-content .wy-alert-info.caution .admonition-title,.rst-content .wy-alert-info.caution .wy-alert-title,.rst-content .wy-alert-info.danger .admonition-title,.rst-content .wy-alert-info.danger .wy-alert-title,.rst-content .wy-alert-info.error .admonition-title,.rst-content .wy-alert-info.error .wy-alert-title,.rst-content .wy-alert-info.hint .admonition-title,.rst-content .wy-alert-info.hint .wy-alert-title,.rst-content .wy-alert-info.important .admonition-title,.rst-content .wy-alert-info.important .wy-alert-title,.rst-content .wy-alert-info.tip .admonition-title,.rst-content .wy-alert-info.tip .wy-alert-title,.rst-content .wy-alert-info.warning .admonition-title,.rst-content .wy-alert-info.warning .wy-alert-title,.rst-content .wy-alert.wy-alert-info .admonition-title,.wy-alert.wy-alert-info .rst-content .admonition-title,.wy-alert.wy-alert-info .wy-alert-title{background:#6ab0de}.rst-content .hint,.rst-content .important,.rst-content .tip,.rst-content .wy-alert-success.admonition,.rst-content .wy-alert-success.admonition-todo,.rst-content .wy-alert-success.attention,.rst-content .wy-alert-success.caution,.rst-content .wy-alert-success.danger,.rst-content .wy-alert-success.error,.rst-content .wy-alert-success.note,.rst-content .wy-alert-success.seealso,.rst-content .wy-alert-success.warning,.wy-alert.wy-alert-success{background:#dbfaf4}.rst-content .hint .admonition-title,.rst-content .hint .wy-alert-title,.rst-content .important .admonition-title,.rst-content .important .wy-alert-title,.rst-content .tip .admonition-title,.rst-content .tip .wy-alert-title,.rst-content .wy-alert-success.admonition-todo .admonition-title,.rst-content .wy-alert-success.admonition-todo .wy-alert-title,.rst-content .wy-alert-success.admonition .admonition-title,.rst-content .wy-alert-success.admonition .wy-alert-title,.rst-content .wy-alert-success.attention .admonition-title,.rst-content .wy-alert-success.attention .wy-alert-title,.rst-content .wy-alert-success.caution .admonition-title,.rst-content .wy-alert-success.caution .wy-alert-title,.rst-content .wy-alert-success.danger .admonition-title,.rst-content .wy-alert-success.danger .wy-alert-title,.rst-content .wy-alert-success.error .admonition-title,.rst-content .wy-alert-success.error .wy-alert-title,.rst-content .wy-alert-success.note .admonition-title,.rst-content .wy-alert-success.note .wy-alert-title,.rst-content .wy-alert-success.seealso .admonition-title,.rst-content .wy-alert-success.seealso .wy-alert-title,.rst-content .wy-alert-success.warning .admonition-title,.rst-content .wy-alert-success.warning .wy-alert-title,.rst-content .wy-alert.wy-alert-success .admonition-title,.wy-alert.wy-alert-success .rst-content .admonition-title,.wy-alert.wy-alert-success .wy-alert-title{background:#1abc9c}.rst-content .wy-alert-neutral.admonition,.rst-content .wy-alert-neutral.admonition-todo,.rst-content .wy-alert-neutral.attention,.rst-content .wy-alert-neutral.caution,.rst-content .wy-alert-neutral.danger,.rst-content .wy-alert-neutral.error,.rst-content .wy-alert-neutral.hint,.rst-content .wy-alert-neutral.important,.rst-content .wy-alert-neutral.note,.rst-content .wy-alert-neutral.seealso,.rst-content .wy-alert-neutral.tip,.rst-content .wy-alert-neutral.warning,.wy-alert.wy-alert-neutral{background:#f3f6f6}.rst-content .wy-alert-neutral.admonition-todo .admonition-title,.rst-content .wy-alert-neutral.admonition-todo .wy-alert-title,.rst-content .wy-alert-neutral.admonition .admonition-title,.rst-content .wy-alert-neutral.admonition .wy-alert-title,.rst-content .wy-alert-neutral.attention .admonition-title,.rst-content .wy-alert-neutral.attention .wy-alert-title,.rst-content .wy-alert-neutral.caution .admonition-title,.rst-content .wy-alert-neutral.caution .wy-alert-title,.rst-content .wy-alert-neutral.danger .admonition-title,.rst-content .wy-alert-neutral.danger .wy-alert-title,.rst-content .wy-alert-neutral.error .admonition-title,.rst-content .wy-alert-neutral.error .wy-alert-title,.rst-content .wy-alert-neutral.hint .admonition-title,.rst-content .wy-alert-neutral.hint .wy-alert-title,.rst-content .wy-alert-neutral.important .admonition-title,.rst-content .wy-alert-neutral.important .wy-alert-title,.rst-content .wy-alert-neutral.note .admonition-title,.rst-content .wy-alert-neutral.note .wy-alert-title,.rst-content .wy-alert-neutral.seealso .admonition-title,.rst-content .wy-alert-neutral.seealso .wy-alert-title,.rst-content .wy-alert-neutral.tip .admonition-title,.rst-content .wy-alert-neutral.tip .wy-alert-title,.rst-content .wy-alert-neutral.warning .admonition-title,.rst-content .wy-alert-neutral.warning .wy-alert-title,.rst-content .wy-alert.wy-alert-neutral .admonition-title,.wy-alert.wy-alert-neutral .rst-content .admonition-title,.wy-alert.wy-alert-neutral .wy-alert-title{color:#404040;background:#e1e4e5}.rst-content .wy-alert-neutral.admonition-todo a,.rst-content .wy-alert-neutral.admonition a,.rst-content .wy-alert-neutral.attention a,.rst-content .wy-alert-neutral.caution a,.rst-content .wy-alert-neutral.danger a,.rst-content .wy-alert-neutral.error a,.rst-content .wy-alert-neutral.hint a,.rst-content .wy-alert-neutral.important a,.rst-content .wy-alert-neutral.note a,.rst-content .wy-alert-neutral.seealso a,.rst-content .wy-alert-neutral.tip a,.rst-content .wy-alert-neutral.warning a,.wy-alert.wy-alert-neutral a{color:#2980b9}.rst-content .admonition-todo p:last-child,.rst-content .admonition p:last-child,.rst-content .attention p:last-child,.rst-content .caution p:last-child,.rst-content .danger p:last-child,.rst-content .error p:last-child,.rst-content .hint p:last-child,.rst-content .important p:last-child,.rst-content .note p:last-child,.rst-content .seealso p:last-child,.rst-content .tip p:last-child,.rst-content .warning p:last-child,.wy-alert p:last-child{margin-bottom:0}.wy-tray-container{position:fixed;bottom:0;left:0;z-index:600}.wy-tray-container li{display:block;width:300px;background:transparent;color:#fff;text-align:center;box-shadow:0 5px 5px 0 rgba(0,0,0,.1);padding:0 24px;min-width:20%;opacity:0;height:0;line-height:56px;overflow:hidden;-webkit-transition:all .3s ease-in;-moz-transition:all .3s ease-in;transition:all .3s ease-in}.wy-tray-container li.wy-tray-item-success{background:#27ae60}.wy-tray-container li.wy-tray-item-info{background:#2980b9}.wy-tray-container li.wy-tray-item-warning{background:#e67e22}.wy-tray-container li.wy-tray-item-danger{background:#e74c3c}.wy-tray-container li.on{opacity:1;height:56px}@media screen and (max-width:768px){.wy-tray-container{bottom:auto;top:0;width:100%}.wy-tray-container li{width:100%}}button{font-size:100%;margin:0;vertical-align:baseline;*vertical-align:middle;cursor:pointer;line-height:normal;-webkit-appearance:button;*overflow:visible}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}button[disabled]{cursor:default}.btn{display:inline-block;border-radius:2px;line-height:normal;white-space:nowrap;text-align:center;cursor:pointer;font-size:100%;padding:6px 12px 8px;color:#fff;border:1px solid rgba(0,0,0,.1);background-color:#27ae60;text-decoration:none;font-weight:400;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;box-shadow:inset 0 1px 2px -1px hsla(0,0%,100%,.5),inset 0 -2px 0 0 rgba(0,0,0,.1);outline-none:false;vertical-align:middle;*display:inline;zoom:1;-webkit-user-drag:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-transition:all .1s linear;-moz-transition:all .1s linear;transition:all .1s linear}.btn-hover{background:#2e8ece;color:#fff}.btn:hover{background:#2cc36b;color:#fff}.btn:focus{background:#2cc36b;outline:0}.btn:active{box-shadow:inset 0 -1px 0 0 rgba(0,0,0,.05),inset 0 2px 0 0 rgba(0,0,0,.1);padding:8px 12px 6px}.btn:visited{color:#fff}.btn-disabled,.btn-disabled:active,.btn-disabled:focus,.btn-disabled:hover,.btn:disabled{background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false);filter:alpha(opacity=40);opacity:.4;cursor:not-allowed;box-shadow:none}.btn::-moz-focus-inner{padding:0;border:0}.btn-small{font-size:80%}.btn-info{background-color:#2980b9!important}.btn-info:hover{background-color:#2e8ece!important}.btn-neutral{background-color:#f3f6f6!important;color:#404040!important}.btn-neutral:hover{background-color:#e5ebeb!important;color:#404040}.btn-neutral:visited{color:#404040!important}.btn-success{background-color:#27ae60!important}.btn-success:hover{background-color:#295!important}.btn-danger{background-color:#e74c3c!important}.btn-danger:hover{background-color:#ea6153!important}.btn-warning{background-color:#e67e22!important}.btn-warning:hover{background-color:#e98b39!important}.btn-invert{background-color:#222}.btn-invert:hover{background-color:#2f2f2f!important}.btn-link{background-color:transparent!important;color:#2980b9;box-shadow:none;border-color:transparent!important}.btn-link:active,.btn-link:hover{background-color:transparent!important;color:#409ad5!important;box-shadow:none}.btn-link:visited{color:#9b59b6}.wy-btn-group .btn,.wy-control .btn{vertical-align:middle}.wy-btn-group{margin-bottom:24px;*zoom:1}.wy-btn-group:after,.wy-btn-group:before{display:table;content:""}.wy-btn-group:after{clear:both}.wy-dropdown{position:relative;display:inline-block}.wy-dropdown-active .wy-dropdown-menu{display:block}.wy-dropdown-menu{position:absolute;left:0;display:none;float:left;top:100%;min-width:100%;background:#fcfcfc;z-index:100;border:1px solid #cfd7dd;box-shadow:0 2px 2px 0 rgba(0,0,0,.1);padding:12px}.wy-dropdown-menu>dd>a{display:block;clear:both;color:#404040;white-space:nowrap;font-size:90%;padding:0 12px;cursor:pointer}.wy-dropdown-menu>dd>a:hover{background:#2980b9;color:#fff}.wy-dropdown-menu>dd.divider{border-top:1px solid #cfd7dd;margin:6px 0}.wy-dropdown-menu>dd.search{padding-bottom:12px}.wy-dropdown-menu>dd.search input[type=search]{width:100%}.wy-dropdown-menu>dd.call-to-action{background:#e3e3e3;text-transform:uppercase;font-weight:500;font-size:80%}.wy-dropdown-menu>dd.call-to-action:hover{background:#e3e3e3}.wy-dropdown-menu>dd.call-to-action .btn{color:#fff}.wy-dropdown.wy-dropdown-up .wy-dropdown-menu{bottom:100%;top:auto;left:auto;right:0}.wy-dropdown.wy-dropdown-bubble .wy-dropdown-menu{background:#fcfcfc;margin-top:2px}.wy-dropdown.wy-dropdown-bubble .wy-dropdown-menu a{padding:6px 12px}.wy-dropdown.wy-dropdown-bubble .wy-dropdown-menu a:hover{background:#2980b9;color:#fff}.wy-dropdown.wy-dropdown-left .wy-dropdown-menu{right:0;left:auto;text-align:right}.wy-dropdown-arrow:before{content:" ";border-bottom:5px solid #f5f5f5;border-left:5px solid transparent;border-right:5px solid transparent;position:absolute;display:block;top:-4px;left:50%;margin-left:-3px}.wy-dropdown-arrow.wy-dropdown-arrow-left:before{left:11px}.wy-form-stacked select{display:block}.wy-form-aligned .wy-help-inline,.wy-form-aligned input,.wy-form-aligned label,.wy-form-aligned select,.wy-form-aligned textarea{display:inline-block;*display:inline;*zoom:1;vertical-align:middle}.wy-form-aligned .wy-control-group>label{display:inline-block;vertical-align:middle;width:10em;margin:6px 12px 0 0;float:left}.wy-form-aligned .wy-control{float:left}.wy-form-aligned .wy-control label{display:block}.wy-form-aligned .wy-control select{margin-top:6px}fieldset{margin:0}fieldset,legend{border:0;padding:0}legend{width:100%;white-space:normal;margin-bottom:24px;font-size:150%;*margin-left:-7px}label,legend{display:block}label{margin:0 0 .3125em;color:#333;font-size:90%}input,select,textarea{font-size:100%;margin:0;vertical-align:baseline;*vertical-align:middle}.wy-control-group{margin-bottom:24px;max-width:1200px;margin-left:auto;margin-right:auto;*zoom:1}.wy-control-group:after,.wy-control-group:before{display:table;content:""}.wy-control-group:after{clear:both}.wy-control-group.wy-control-group-required>label:after{content:" *";color:#e74c3c}.wy-control-group .wy-form-full,.wy-control-group .wy-form-halves,.wy-control-group .wy-form-thirds{padding-bottom:12px}.wy-control-group .wy-form-full input[type=color],.wy-control-group .wy-form-full input[type=date],.wy-control-group .wy-form-full input[type=datetime-local],.wy-control-group .wy-form-full input[type=datetime],.wy-control-group .wy-form-full input[type=email],.wy-control-group .wy-form-full input[type=month],.wy-control-group .wy-form-full input[type=number],.wy-control-group .wy-form-full input[type=password],.wy-control-group .wy-form-full input[type=search],.wy-control-group .wy-form-full input[type=tel],.wy-control-group .wy-form-full input[type=text],.wy-control-group .wy-form-full input[type=time],.wy-control-group .wy-form-full input[type=url],.wy-control-group .wy-form-full input[type=week],.wy-control-group .wy-form-full select,.wy-control-group .wy-form-halves input[type=color],.wy-control-group .wy-form-halves input[type=date],.wy-control-group .wy-form-halves input[type=datetime-local],.wy-control-group .wy-form-halves input[type=datetime],.wy-control-group .wy-form-halves input[type=email],.wy-control-group .wy-form-halves input[type=month],.wy-control-group .wy-form-halves input[type=number],.wy-control-group .wy-form-halves input[type=password],.wy-control-group .wy-form-halves input[type=search],.wy-control-group .wy-form-halves input[type=tel],.wy-control-group .wy-form-halves input[type=text],.wy-control-group .wy-form-halves input[type=time],.wy-control-group .wy-form-halves input[type=url],.wy-control-group .wy-form-halves input[type=week],.wy-control-group .wy-form-halves select,.wy-control-group .wy-form-thirds input[type=color],.wy-control-group .wy-form-thirds input[type=date],.wy-control-group .wy-form-thirds input[type=datetime-local],.wy-control-group .wy-form-thirds input[type=datetime],.wy-control-group .wy-form-thirds input[type=email],.wy-control-group .wy-form-thirds input[type=month],.wy-control-group .wy-form-thirds input[type=number],.wy-control-group .wy-form-thirds input[type=password],.wy-control-group .wy-form-thirds input[type=search],.wy-control-group .wy-form-thirds input[type=tel],.wy-control-group .wy-form-thirds input[type=text],.wy-control-group .wy-form-thirds input[type=time],.wy-control-group .wy-form-thirds input[type=url],.wy-control-group .wy-form-thirds input[type=week],.wy-control-group .wy-form-thirds select{width:100%}.wy-control-group .wy-form-full{float:left;display:block;width:100%;margin-right:0}.wy-control-group .wy-form-full:last-child{margin-right:0}.wy-control-group .wy-form-halves{float:left;display:block;margin-right:2.35765%;width:48.82117%}.wy-control-group .wy-form-halves:last-child,.wy-control-group .wy-form-halves:nth-of-type(2n){margin-right:0}.wy-control-group .wy-form-halves:nth-of-type(odd){clear:left}.wy-control-group .wy-form-thirds{float:left;display:block;margin-right:2.35765%;width:31.76157%}.wy-control-group .wy-form-thirds:last-child,.wy-control-group .wy-form-thirds:nth-of-type(3n){margin-right:0}.wy-control-group .wy-form-thirds:nth-of-type(3n+1){clear:left}.wy-control-group.wy-control-group-no-input .wy-control,.wy-control-no-input{margin:6px 0 0;font-size:90%}.wy-control-no-input{display:inline-block}.wy-control-group.fluid-input input[type=color],.wy-control-group.fluid-input input[type=date],.wy-control-group.fluid-input input[type=datetime-local],.wy-control-group.fluid-input input[type=datetime],.wy-control-group.fluid-input input[type=email],.wy-control-group.fluid-input input[type=month],.wy-control-group.fluid-input input[type=number],.wy-control-group.fluid-input input[type=password],.wy-control-group.fluid-input input[type=search],.wy-control-group.fluid-input input[type=tel],.wy-control-group.fluid-input input[type=text],.wy-control-group.fluid-input input[type=time],.wy-control-group.fluid-input input[type=url],.wy-control-group.fluid-input input[type=week]{width:100%}.wy-form-message-inline{padding-left:.3em;color:#666;font-size:90%}.wy-form-message{display:block;color:#999;font-size:70%;margin-top:.3125em;font-style:italic}.wy-form-message p{font-size:inherit;font-style:italic;margin-bottom:6px}.wy-form-message p:last-child{margin-bottom:0}input{line-height:normal}input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;*overflow:visible}input[type=color],input[type=date],input[type=datetime-local],input[type=datetime],input[type=email],input[type=month],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],input[type=week]{-webkit-appearance:none;padding:6px;display:inline-block;border:1px solid #ccc;font-size:80%;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;box-shadow:inset 0 1px 3px #ddd;border-radius:0;-webkit-transition:border .3s linear;-moz-transition:border .3s linear;transition:border .3s linear}input[type=datetime-local]{padding:.34375em .625em}input[disabled]{cursor:default}input[type=checkbox],input[type=radio]{padding:0;margin-right:.3125em;*height:13px;*width:13px}input[type=checkbox],input[type=radio],input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}input[type=color]:focus,input[type=date]:focus,input[type=datetime-local]:focus,input[type=datetime]:focus,input[type=email]:focus,input[type=month]:focus,input[type=number]:focus,input[type=password]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=time]:focus,input[type=url]:focus,input[type=week]:focus{outline:0;outline:thin dotted\9;border-color:#333}input.no-focus:focus{border-color:#ccc!important}input[type=checkbox]:focus,input[type=file]:focus,input[type=radio]:focus{outline:thin dotted #333;outline:1px auto #129fea}input[type=color][disabled],input[type=date][disabled],input[type=datetime-local][disabled],input[type=datetime][disabled],input[type=email][disabled],input[type=month][disabled],input[type=number][disabled],input[type=password][disabled],input[type=search][disabled],input[type=tel][disabled],input[type=text][disabled],input[type=time][disabled],input[type=url][disabled],input[type=week][disabled]{cursor:not-allowed;background-color:#fafafa}input:focus:invalid,select:focus:invalid,textarea:focus:invalid{color:#e74c3c;border:1px solid #e74c3c}input:focus:invalid:focus,select:focus:invalid:focus,textarea:focus:invalid:focus{border-color:#e74c3c}input[type=checkbox]:focus:invalid:focus,input[type=file]:focus:invalid:focus,input[type=radio]:focus:invalid:focus{outline-color:#e74c3c}input.wy-input-large{padding:12px;font-size:100%}textarea{overflow:auto;vertical-align:top;width:100%;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif}select,textarea{padding:.5em .625em;display:inline-block;border:1px solid #ccc;font-size:80%;box-shadow:inset 0 1px 3px #ddd;-webkit-transition:border .3s linear;-moz-transition:border .3s linear;transition:border .3s linear}select{border:1px solid #ccc;background-color:#fff}select[multiple]{height:auto}select:focus,textarea:focus{outline:0}input[readonly],select[disabled],select[readonly],textarea[disabled],textarea[readonly]{cursor:not-allowed;background-color:#fafafa}input[type=checkbox][disabled],input[type=radio][disabled]{cursor:not-allowed}.wy-checkbox,.wy-radio{margin:6px 0;color:#404040;display:block}.wy-checkbox input,.wy-radio input{vertical-align:baseline}.wy-form-message-inline{display:inline-block;*display:inline;*zoom:1;vertical-align:middle}.wy-input-prefix,.wy-input-suffix{white-space:nowrap;padding:6px}.wy-input-prefix .wy-input-context,.wy-input-suffix .wy-input-context{line-height:27px;padding:0 8px;display:inline-block;font-size:80%;background-color:#f3f6f6;border:1px solid #ccc;color:#999}.wy-input-suffix .wy-input-context{border-left:0}.wy-input-prefix .wy-input-context{border-right:0}.wy-switch{position:relative;display:block;height:24px;margin-top:12px;cursor:pointer}.wy-switch:before{left:0;top:0;width:36px;height:12px;background:#ccc}.wy-switch:after,.wy-switch:before{position:absolute;content:"";display:block;border-radius:4px;-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.wy-switch:after{width:18px;height:18px;background:#999;left:-3px;top:-3px}.wy-switch span{position:absolute;left:48px;display:block;font-size:12px;color:#ccc;line-height:1}.wy-switch.active:before{background:#1e8449}.wy-switch.active:after{left:24px;background:#27ae60}.wy-switch.disabled{cursor:not-allowed;opacity:.8}.wy-control-group.wy-control-group-error .wy-form-message,.wy-control-group.wy-control-group-error>label{color:#e74c3c}.wy-control-group.wy-control-group-error input[type=color],.wy-control-group.wy-control-group-error input[type=date],.wy-control-group.wy-control-group-error input[type=datetime-local],.wy-control-group.wy-control-group-error input[type=datetime],.wy-control-group.wy-control-group-error input[type=email],.wy-control-group.wy-control-group-error input[type=month],.wy-control-group.wy-control-group-error input[type=number],.wy-control-group.wy-control-group-error input[type=password],.wy-control-group.wy-control-group-error input[type=search],.wy-control-group.wy-control-group-error input[type=tel],.wy-control-group.wy-control-group-error input[type=text],.wy-control-group.wy-control-group-error input[type=time],.wy-control-group.wy-control-group-error input[type=url],.wy-control-group.wy-control-group-error input[type=week],.wy-control-group.wy-control-group-error textarea{border:1px solid #e74c3c}.wy-inline-validate{white-space:nowrap}.wy-inline-validate .wy-input-context{padding:.5em .625em;display:inline-block;font-size:80%}.wy-inline-validate.wy-inline-validate-success .wy-input-context{color:#27ae60}.wy-inline-validate.wy-inline-validate-danger .wy-input-context{color:#e74c3c}.wy-inline-validate.wy-inline-validate-warning .wy-input-context{color:#e67e22}.wy-inline-validate.wy-inline-validate-info .wy-input-context{color:#2980b9}.rotate-90{-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg)}.rotate-180{-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-ms-transform:rotate(180deg);-o-transform:rotate(180deg);transform:rotate(180deg)}.rotate-270{-webkit-transform:rotate(270deg);-moz-transform:rotate(270deg);-ms-transform:rotate(270deg);-o-transform:rotate(270deg);transform:rotate(270deg)}.mirror{-webkit-transform:scaleX(-1);-moz-transform:scaleX(-1);-ms-transform:scaleX(-1);-o-transform:scaleX(-1);transform:scaleX(-1)}.mirror.rotate-90{-webkit-transform:scaleX(-1) rotate(90deg);-moz-transform:scaleX(-1) rotate(90deg);-ms-transform:scaleX(-1) rotate(90deg);-o-transform:scaleX(-1) rotate(90deg);transform:scaleX(-1) rotate(90deg)}.mirror.rotate-180{-webkit-transform:scaleX(-1) rotate(180deg);-moz-transform:scaleX(-1) rotate(180deg);-ms-transform:scaleX(-1) rotate(180deg);-o-transform:scaleX(-1) rotate(180deg);transform:scaleX(-1) rotate(180deg)}.mirror.rotate-270{-webkit-transform:scaleX(-1) rotate(270deg);-moz-transform:scaleX(-1) rotate(270deg);-ms-transform:scaleX(-1) rotate(270deg);-o-transform:scaleX(-1) rotate(270deg);transform:scaleX(-1) rotate(270deg)}@media only screen and (max-width:480px){.wy-form button[type=submit]{margin:.7em 0 0}.wy-form input[type=color],.wy-form input[type=date],.wy-form input[type=datetime-local],.wy-form input[type=datetime],.wy-form input[type=email],.wy-form input[type=month],.wy-form input[type=number],.wy-form input[type=password],.wy-form input[type=search],.wy-form input[type=tel],.wy-form input[type=text],.wy-form input[type=time],.wy-form input[type=url],.wy-form input[type=week],.wy-form label{margin-bottom:.3em;display:block}.wy-form input[type=color],.wy-form input[type=date],.wy-form input[type=datetime-local],.wy-form input[type=datetime],.wy-form input[type=email],.wy-form input[type=month],.wy-form input[type=number],.wy-form input[type=password],.wy-form input[type=search],.wy-form input[type=tel],.wy-form input[type=time],.wy-form input[type=url],.wy-form input[type=week]{margin-bottom:0}.wy-form-aligned .wy-control-group label{margin-bottom:.3em;text-align:left;display:block;width:100%}.wy-form-aligned .wy-control{margin:1.5em 0 0}.wy-form-message,.wy-form-message-inline,.wy-form .wy-help-inline{display:block;font-size:80%;padding:6px 0}}@media screen and (max-width:768px){.tablet-hide{display:none}}@media screen and (max-width:480px){.mobile-hide{display:none}}.float-left{float:left}.float-right{float:right}.full-width{width:100%}.rst-content table.docutils,.rst-content table.field-list,.wy-table{border-collapse:collapse;border-spacing:0;empty-cells:show;margin-bottom:24px}.rst-content table.docutils caption,.rst-content table.field-list caption,.wy-table caption{color:#000;font:italic 85%/1 arial,sans-serif;padding:1em 0;text-align:center}.rst-content table.docutils td,.rst-content table.docutils th,.rst-content table.field-list td,.rst-content table.field-list th,.wy-table td,.wy-table th{font-size:90%;margin:0;overflow:visible;padding:8px 16px}.rst-content table.docutils td:first-child,.rst-content table.docutils th:first-child,.rst-content table.field-list td:first-child,.rst-content table.field-list th:first-child,.wy-table td:first-child,.wy-table th:first-child{border-left-width:0}.rst-content table.docutils thead,.rst-content table.field-list thead,.wy-table thead{color:#000;text-align:left;vertical-align:bottom;white-space:nowrap}.rst-content table.docutils thead th,.rst-content table.field-list thead th,.wy-table thead th{font-weight:700;border-bottom:2px solid #e1e4e5}.rst-content table.docutils td,.rst-content table.field-list td,.wy-table td{background-color:transparent;vertical-align:middle}.rst-content table.docutils td p,.rst-content table.field-list td p,.wy-table td p{line-height:18px}.rst-content table.docutils td p:last-child,.rst-content table.field-list td p:last-child,.wy-table td p:last-child{margin-bottom:0}.rst-content table.docutils .wy-table-cell-min,.rst-content table.field-list .wy-table-cell-min,.wy-table .wy-table-cell-min{width:1%;padding-right:0}.rst-content table.docutils .wy-table-cell-min input[type=checkbox],.rst-content table.field-list .wy-table-cell-min input[type=checkbox],.wy-table .wy-table-cell-min input[type=checkbox]{margin:0}.wy-table-secondary{color:grey;font-size:90%}.wy-table-tertiary{color:grey;font-size:80%}.rst-content table.docutils:not(.field-list) tr:nth-child(2n-1) td,.wy-table-backed,.wy-table-odd td,.wy-table-striped tr:nth-child(2n-1) td{background-color:#f3f6f6}.rst-content table.docutils,.wy-table-bordered-all{border:1px solid #e1e4e5}.rst-content table.docutils td,.wy-table-bordered-all td{border-bottom:1px solid #e1e4e5;border-left:1px solid #e1e4e5}.rst-content table.docutils tbody>tr:last-child td,.wy-table-bordered-all tbody>tr:last-child td{border-bottom-width:0}.wy-table-bordered{border:1px solid #e1e4e5}.wy-table-bordered-rows td{border-bottom:1px solid #e1e4e5}.wy-table-bordered-rows tbody>tr:last-child td{border-bottom-width:0}.wy-table-horizontal td,.wy-table-horizontal th{border-width:0 0 1px;border-bottom:1px solid #e1e4e5}.wy-table-horizontal tbody>tr:last-child td{border-bottom-width:0}.wy-table-responsive{margin-bottom:24px;max-width:100%;overflow:auto}.wy-table-responsive table{margin-bottom:0!important}.wy-table-responsive table td,.wy-table-responsive table th{white-space:nowrap}a{color:#2980b9;text-decoration:none;cursor:pointer}a:hover{color:#3091d1}a:visited{color:#9b59b6}html{height:100%}body,html{overflow-x:hidden}body{font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;font-weight:400;color:#404040;min-height:100%;background:#edf0f2}.wy-text-left{text-align:left}.wy-text-center{text-align:center}.wy-text-right{text-align:right}.wy-text-large{font-size:120%}.wy-text-normal{font-size:100%}.wy-text-small,small{font-size:80%}.wy-text-strike{text-decoration:line-through}.wy-text-warning{color:#e67e22!important}a.wy-text-warning:hover{color:#eb9950!important}.wy-text-info{color:#2980b9!important}a.wy-text-info:hover{color:#409ad5!important}.wy-text-success{color:#27ae60!important}a.wy-text-success:hover{color:#36d278!important}.wy-text-danger{color:#e74c3c!important}a.wy-text-danger:hover{color:#ed7669!important}.wy-text-neutral{color:#404040!important}a.wy-text-neutral:hover{color:#595959!important}.rst-content .toctree-wrapper>p.caption,h1,h2,h3,h4,h5,h6,legend{margin-top:0;font-weight:700;font-family:Roboto Slab,ff-tisa-web-pro,Georgia,Arial,sans-serif}p{line-height:24px;font-size:16px;margin:0 0 24px}h1{font-size:175%}.rst-content .toctree-wrapper>p.caption,h2{font-size:150%}h3{font-size:125%}h4{font-size:115%}h5{font-size:110%}h6{font-size:100%}hr{display:block;height:1px;border:0;border-top:1px solid #e1e4e5;margin:24px 0;padding:0}.rst-content code,.rst-content tt,code{white-space:nowrap;max-width:100%;background:#fff;border:1px solid #e1e4e5;font-size:75%;padding:0 5px;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;color:#e74c3c;overflow-x:auto}.rst-content tt.code-large,code.code-large{font-size:90%}.rst-content .section ul,.rst-content .toctree-wrapper ul,.wy-plain-list-disc,article ul{list-style:disc;line-height:24px;margin-bottom:24px}.rst-content .section ul li,.rst-content .toctree-wrapper ul li,.wy-plain-list-disc li,article ul li{list-style:disc;margin-left:24px}.rst-content .section ul li p:last-child,.rst-content .section ul li ul,.rst-content .toctree-wrapper ul li p:last-child,.rst-content .toctree-wrapper ul li ul,.wy-plain-list-disc li p:last-child,.wy-plain-list-disc li ul,article ul li p:last-child,article ul li ul{margin-bottom:0}.rst-content .section ul li li,.rst-content .toctree-wrapper ul li li,.wy-plain-list-disc li li,article ul li li{list-style:circle}.rst-content .section ul li li li,.rst-content .toctree-wrapper ul li li li,.wy-plain-list-disc li li li,article ul li li li{list-style:square}.rst-content .section ul li ol li,.rst-content .toctree-wrapper ul li ol li,.wy-plain-list-disc li ol li,article ul li ol li{list-style:decimal}.rst-content .section ol,.rst-content ol.arabic,.wy-plain-list-decimal,article ol{list-style:decimal;line-height:24px;margin-bottom:24px}.rst-content .section ol li,.rst-content ol.arabic li,.wy-plain-list-decimal li,article ol li{list-style:decimal;margin-left:24px}.rst-content .section ol li p:last-child,.rst-content .section ol li ul,.rst-content ol.arabic li p:last-child,.rst-content ol.arabic li ul,.wy-plain-list-decimal li p:last-child,.wy-plain-list-decimal li ul,article ol li p:last-child,article ol li ul{margin-bottom:0}.rst-content .section ol li ul li,.rst-content ol.arabic li ul li,.wy-plain-list-decimal li ul li,article ol li ul li{list-style:disc}.wy-breadcrumbs{*zoom:1}.wy-breadcrumbs:after,.wy-breadcrumbs:before{display:table;content:""}.wy-breadcrumbs:after{clear:both}.wy-breadcrumbs li{display:inline-block}.wy-breadcrumbs li.wy-breadcrumbs-aside{float:right}.wy-breadcrumbs li a{display:inline-block;padding:5px}.wy-breadcrumbs li a:first-child{padding-left:0}.rst-content .wy-breadcrumbs li tt,.wy-breadcrumbs li .rst-content tt,.wy-breadcrumbs li code{padding:5px;border:none;background:none}.rst-content .wy-breadcrumbs li tt.literal,.wy-breadcrumbs li .rst-content tt.literal,.wy-breadcrumbs li code.literal{color:#404040}.wy-breadcrumbs-extra{margin-bottom:0;color:#b3b3b3;font-size:80%;display:inline-block}@media screen and (max-width:480px){.wy-breadcrumbs-extra,.wy-breadcrumbs li.wy-breadcrumbs-aside{display:none}}@media print{.wy-breadcrumbs li.wy-breadcrumbs-aside{display:none}}html{font-size:16px}.wy-affix{position:fixed;top:1.618em}.wy-menu a:hover{text-decoration:none}.wy-menu-horiz{*zoom:1}.wy-menu-horiz:after,.wy-menu-horiz:before{display:table;content:""}.wy-menu-horiz:after{clear:both}.wy-menu-horiz li,.wy-menu-horiz ul{display:inline-block}.wy-menu-horiz li:hover{background:hsla(0,0%,100%,.1)}.wy-menu-horiz li.divide-left{border-left:1px solid #404040}.wy-menu-horiz li.divide-right{border-right:1px solid #404040}.wy-menu-horiz a{height:32px;display:inline-block;line-height:32px;padding:0 16px}.wy-menu-vertical{width:300px}.wy-menu-vertical header,.wy-menu-vertical p.caption{color:#55a5d9;height:32px;line-height:32px;padding:0 1.618em;margin:12px 0 0;display:block;font-weight:700;text-transform:uppercase;font-size:85%;white-space:nowrap}.wy-menu-vertical ul{margin-bottom:0}.wy-menu-vertical li.divide-top{border-top:1px solid #404040}.wy-menu-vertical li.divide-bottom{border-bottom:1px solid #404040}.wy-menu-vertical li.current{background:#e3e3e3}.wy-menu-vertical li.current a{color:grey;border-right:1px solid #c9c9c9;padding:.4045em 2.427em}.wy-menu-vertical li.current a:hover{background:#d6d6d6}.rst-content .wy-menu-vertical li tt,.wy-menu-vertical li .rst-content tt,.wy-menu-vertical li code{border:none;background:inherit;color:inherit;padding-left:0;padding-right:0}.wy-menu-vertical li span.toctree-expand{display:block;float:left;margin-left:-1.2em;font-size:.8em;line-height:1.6em;color:#4d4d4d}.wy-menu-vertical li.current>a,.wy-menu-vertical li.on a{color:#404040;font-weight:700;position:relative;background:#fcfcfc;border:none;padding:.4045em 1.618em}.wy-menu-vertical li.current>a:hover,.wy-menu-vertical li.on a:hover{background:#fcfcfc}.wy-menu-vertical li.current>a:hover span.toctree-expand,.wy-menu-vertical li.on a:hover span.toctree-expand{color:grey}.wy-menu-vertical li.current>a span.toctree-expand,.wy-menu-vertical li.on a span.toctree-expand{display:block;font-size:.8em;line-height:1.6em;color:#333}.wy-menu-vertical li.toctree-l1.current>a{border-bottom:1px solid #c9c9c9;border-top:1px solid #c9c9c9}.wy-menu-vertical .toctree-l1.current .toctree-l2>ul,.wy-menu-vertical .toctree-l2.current .toctree-l3>ul,.wy-menu-vertical .toctree-l3.current .toctree-l4>ul,.wy-menu-vertical .toctree-l4.current .toctree-l5>ul,.wy-menu-vertical .toctree-l5.current .toctree-l6>ul,.wy-menu-vertical .toctree-l6.current .toctree-l7>ul,.wy-menu-vertical .toctree-l7.current .toctree-l8>ul,.wy-menu-vertical .toctree-l8.current .toctree-l9>ul,.wy-menu-vertical .toctree-l9.current .toctree-l10>ul,.wy-menu-vertical .toctree-l10.current .toctree-l11>ul{display:none}.wy-menu-vertical .toctree-l1.current .current.toctree-l2>ul,.wy-menu-vertical .toctree-l2.current .current.toctree-l3>ul,.wy-menu-vertical .toctree-l3.current .current.toctree-l4>ul,.wy-menu-vertical .toctree-l4.current .current.toctree-l5>ul,.wy-menu-vertical .toctree-l5.current .current.toctree-l6>ul,.wy-menu-vertical .toctree-l6.current .current.toctree-l7>ul,.wy-menu-vertical .toctree-l7.current .current.toctree-l8>ul,.wy-menu-vertical .toctree-l8.current .current.toctree-l9>ul,.wy-menu-vertical .toctree-l9.current .current.toctree-l10>ul,.wy-menu-vertical .toctree-l10.current .current.toctree-l11>ul{display:block}.wy-menu-vertical li.toctree-l3,.wy-menu-vertical li.toctree-l4{font-size:.9em}.wy-menu-vertical li.toctree-l2 a,.wy-menu-vertical li.toctree-l3 a,.wy-menu-vertical li.toctree-l4 a,.wy-menu-vertical li.toctree-l5 a,.wy-menu-vertical li.toctree-l6 a,.wy-menu-vertical li.toctree-l7 a,.wy-menu-vertical li.toctree-l8 a,.wy-menu-vertical li.toctree-l9 a,.wy-menu-vertical li.toctree-l10 a{color:#404040}.wy-menu-vertical li.toctree-l2 a:hover span.toctree-expand,.wy-menu-vertical li.toctree-l3 a:hover span.toctree-expand,.wy-menu-vertical li.toctree-l4 a:hover span.toctree-expand,.wy-menu-vertical li.toctree-l5 a:hover span.toctree-expand,.wy-menu-vertical li.toctree-l6 a:hover span.toctree-expand,.wy-menu-vertical li.toctree-l7 a:hover span.toctree-expand,.wy-menu-vertical li.toctree-l8 a:hover span.toctree-expand,.wy-menu-vertical li.toctree-l9 a:hover span.toctree-expand,.wy-menu-vertical li.toctree-l10 a:hover span.toctree-expand{color:grey}.wy-menu-vertical li.toctree-l2.current li.toctree-l3>a,.wy-menu-vertical li.toctree-l3.current li.toctree-l4>a,.wy-menu-vertical li.toctree-l4.current li.toctree-l5>a,.wy-menu-vertical li.toctree-l5.current li.toctree-l6>a,.wy-menu-vertical li.toctree-l6.current li.toctree-l7>a,.wy-menu-vertical li.toctree-l7.current li.toctree-l8>a,.wy-menu-vertical li.toctree-l8.current li.toctree-l9>a,.wy-menu-vertical li.toctree-l9.current li.toctree-l10>a,.wy-menu-vertical li.toctree-l10.current li.toctree-l11>a{display:block}.wy-menu-vertical li.toctree-l2.current>a{padding:.4045em 2.427em}.wy-menu-vertical li.toctree-l2.current li.toctree-l3>a,.wy-menu-vertical li.toctree-l3.current>a{padding:.4045em 4.045em}.wy-menu-vertical li.toctree-l3.current li.toctree-l4>a,.wy-menu-vertical li.toctree-l4.current>a{padding:.4045em 5.663em}.wy-menu-vertical li.toctree-l4.current li.toctree-l5>a,.wy-menu-vertical li.toctree-l5.current>a{padding:.4045em 7.281em}.wy-menu-vertical li.toctree-l5.current li.toctree-l6>a,.wy-menu-vertical li.toctree-l6.current>a{padding:.4045em 8.899em}.wy-menu-vertical li.toctree-l6.current li.toctree-l7>a,.wy-menu-vertical li.toctree-l7.current>a{padding:.4045em 10.517em}.wy-menu-vertical li.toctree-l7.current li.toctree-l8>a,.wy-menu-vertical li.toctree-l8.current>a{padding:.4045em 12.135em}.wy-menu-vertical li.toctree-l8.current li.toctree-l9>a,.wy-menu-vertical li.toctree-l9.current>a{padding:.4045em 13.753em}.wy-menu-vertical li.toctree-l9.current li.toctree-l10>a,.wy-menu-vertical li.toctree-l10.current>a{padding:.4045em 15.371em}.wy-menu-vertical li.toctree-l10.current li.toctree-l11>a{padding:.4045em 16.989em}.wy-menu-vertical li.toctree-l2.current>a,.wy-menu-vertical li.toctree-l2.current li.toctree-l3>a{background:#c9c9c9}.wy-menu-vertical li.toctree-l2 span.toctree-expand{color:#a3a3a3}.wy-menu-vertical li.toctree-l3.current>a,.wy-menu-vertical li.toctree-l3.current li.toctree-l4>a{background:#bdbdbd}.wy-menu-vertical li.toctree-l3 span.toctree-expand{color:#969696}.wy-menu-vertical li.current ul{display:block}.wy-menu-vertical li ul{margin-bottom:0;display:none}.wy-menu-vertical li ul li a{margin-bottom:0;color:#d9d9d9;font-weight:400}.wy-menu-vertical a{line-height:18px;padding:.4045em 1.618em;display:block;position:relative;font-size:90%;color:#d9d9d9}.wy-menu-vertical a:hover{background-color:#4e4a4a;cursor:pointer}.wy-menu-vertical a:hover span.toctree-expand{color:#d9d9d9}.wy-menu-vertical a:active{background-color:#2980b9;cursor:pointer;color:#fff}.wy-menu-vertical a:active span.toctree-expand{color:#fff}.wy-side-nav-search{display:block;width:300px;padding:.809em;margin-bottom:.809em;z-index:200;background-color:#2980b9;text-align:center;color:#fcfcfc}.wy-side-nav-search input[type=text]{width:100%;border-radius:50px;padding:6px 12px;border-color:#2472a4}.wy-side-nav-search img{display:block;margin:auto auto .809em;height:45px;width:45px;background-color:#2980b9;padding:5px;border-radius:100%}.wy-side-nav-search .wy-dropdown>a,.wy-side-nav-search>a{color:#fcfcfc;font-size:100%;font-weight:700;display:inline-block;padding:4px 6px;margin-bottom:.809em}.wy-side-nav-search .wy-dropdown>a:hover,.wy-side-nav-search>a:hover{background:hsla(0,0%,100%,.1)}.wy-side-nav-search .wy-dropdown>a img.logo,.wy-side-nav-search>a img.logo{display:block;margin:0 auto;height:auto;width:auto;border-radius:0;max-width:100%;background:transparent}.wy-side-nav-search .wy-dropdown>a.icon img.logo,.wy-side-nav-search>a.icon img.logo{margin-top:.85em}.wy-side-nav-search>div.version{margin-top:-.4045em;margin-bottom:.809em;font-weight:400;color:hsla(0,0%,100%,.3)}.wy-nav .wy-menu-vertical header{color:#2980b9}.wy-nav .wy-menu-vertical a{color:#b3b3b3}.wy-nav .wy-menu-vertical a:hover{background-color:#2980b9;color:#fff}[data-menu-wrap]{-webkit-transition:all .2s ease-in;-moz-transition:all .2s ease-in;transition:all .2s ease-in;position:absolute;opacity:1;width:100%;opacity:0}[data-menu-wrap].move-center{left:0;right:auto;opacity:1}[data-menu-wrap].move-left{right:auto;left:-100%;opacity:0}[data-menu-wrap].move-right{right:-100%;left:auto;opacity:0}.wy-body-for-nav{background:#fcfcfc}.wy-grid-for-nav{position:absolute;width:100%;height:100%}.wy-nav-side{position:fixed;top:0;bottom:0;left:0;padding-bottom:2em;width:300px;overflow-x:hidden;overflow-y:hidden;min-height:100%;color:#9b9b9b;background:#343131;z-index:200}.wy-side-scroll{width:320px;position:relative;overflow-x:hidden;overflow-y:scroll;height:100%}.wy-nav-top{display:none;background:#2980b9;color:#fff;padding:.4045em .809em;position:relative;line-height:50px;text-align:center;font-size:100%;*zoom:1}.wy-nav-top:after,.wy-nav-top:before{display:table;content:""}.wy-nav-top:after{clear:both}.wy-nav-top a{color:#fff;font-weight:700}.wy-nav-top img{margin-right:12px;height:45px;width:45px;background-color:#2980b9;padding:5px;border-radius:100%}.wy-nav-top i{font-size:30px;float:left;cursor:pointer;padding-top:inherit}.wy-nav-content-wrap{margin-left:300px;background:#fcfcfc;min-height:100%}.wy-nav-content{padding:1.618em 3.236em;height:100%;max-width:800px;margin:auto}.wy-body-mask{position:fixed;width:100%;height:100%;background:rgba(0,0,0,.2);display:none;z-index:499}.wy-body-mask.on{display:block}footer{color:grey}footer p{margin-bottom:12px}.rst-content footer span.commit tt,footer span.commit .rst-content tt,footer span.commit code{padding:0;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;font-size:1em;background:none;border:none;color:grey}.rst-footer-buttons{*zoom:1}.rst-footer-buttons:after,.rst-footer-buttons:before{width:100%;display:table;content:""}.rst-footer-buttons:after{clear:both}.rst-breadcrumbs-buttons{margin-top:12px;*zoom:1}.rst-breadcrumbs-buttons:after,.rst-breadcrumbs-buttons:before{display:table;content:""}.rst-breadcrumbs-buttons:after{clear:both}#search-results .search li{margin-bottom:24px;border-bottom:1px solid #e1e4e5;padding-bottom:24px}#search-results .search li:first-child{border-top:1px solid #e1e4e5;padding-top:24px}#search-results .search li a{font-size:120%;margin-bottom:12px;display:inline-block}#search-results .context{color:grey;font-size:90%}.genindextable li>ul{margin-left:24px}@media screen and (max-width:768px){.wy-body-for-nav{background:#fcfcfc}.wy-nav-top{display:block}.wy-nav-side{left:-300px}.wy-nav-side.shift{width:85%;left:0}.wy-menu.wy-menu-vertical,.wy-side-nav-search,.wy-side-scroll{width:auto}.wy-nav-content-wrap{margin-left:0}.wy-nav-content-wrap .wy-nav-content{padding:1.618em}.wy-nav-content-wrap.shift{position:fixed;min-width:100%;left:85%;top:0;height:100%;overflow:hidden}}@media screen and (min-width:1100px){.wy-nav-content-wrap{background:rgba(0,0,0,.05)}.wy-nav-content{margin:0;background:#fcfcfc}}@media print{.rst-versions,.wy-nav-side,footer{display:none}.wy-nav-content-wrap{margin-left:0}}.rst-versions{position:fixed;bottom:0;left:0;width:300px;color:#fcfcfc;background:#1f1d1d;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;z-index:400}.rst-versions a{color:#2980b9;text-decoration:none}.rst-versions .rst-badge-small{display:none}.rst-versions .rst-current-version{padding:12px;background-color:#272525;display:block;text-align:right;font-size:90%;cursor:pointer;color:#27ae60;*zoom:1}.rst-versions .rst-current-version:after,.rst-versions .rst-current-version:before{display:table;content:""}.rst-versions .rst-current-version:after{clear:both}.rst-content .code-block-caption .rst-versions .rst-current-version .headerlink,.rst-content .rst-versions .rst-current-version .admonition-title,.rst-content code.download .rst-versions .rst-current-version span:first-child,.rst-content dl dt .rst-versions .rst-current-version .headerlink,.rst-content h1 .rst-versions .rst-current-version .headerlink,.rst-content h2 .rst-versions .rst-current-version .headerlink,.rst-content h3 .rst-versions .rst-current-version .headerlink,.rst-content h4 .rst-versions .rst-current-version .headerlink,.rst-content h5 .rst-versions .rst-current-version .headerlink,.rst-content h6 .rst-versions .rst-current-version .headerlink,.rst-content p.caption .rst-versions .rst-current-version .headerlink,.rst-content table>caption .rst-versions .rst-current-version .headerlink,.rst-content tt.download .rst-versions .rst-current-version span:first-child,.rst-versions .rst-current-version .fa,.rst-versions .rst-current-version .icon,.rst-versions .rst-current-version .rst-content .admonition-title,.rst-versions .rst-current-version .rst-content .code-block-caption .headerlink,.rst-versions .rst-current-version .rst-content code.download span:first-child,.rst-versions .rst-current-version .rst-content dl dt .headerlink,.rst-versions .rst-current-version .rst-content h1 .headerlink,.rst-versions .rst-current-version .rst-content h2 .headerlink,.rst-versions .rst-current-version .rst-content h3 .headerlink,.rst-versions .rst-current-version .rst-content h4 .headerlink,.rst-versions .rst-current-version .rst-content h5 .headerlink,.rst-versions .rst-current-version .rst-content h6 .headerlink,.rst-versions .rst-current-version .rst-content p.caption .headerlink,.rst-versions .rst-current-version .rst-content table>caption .headerlink,.rst-versions .rst-current-version .rst-content tt.download span:first-child,.rst-versions .rst-current-version .wy-menu-vertical li span.toctree-expand,.wy-menu-vertical li .rst-versions .rst-current-version span.toctree-expand{color:#fcfcfc}.rst-versions .rst-current-version .fa-book,.rst-versions .rst-current-version .icon-book{float:left}.rst-versions .rst-current-version.rst-out-of-date{background-color:#e74c3c;color:#fff}.rst-versions .rst-current-version.rst-active-old-version{background-color:#f1c40f;color:#000}.rst-versions.shift-up{height:auto;max-height:100%;overflow-y:scroll}.rst-versions.shift-up .rst-other-versions{display:block}.rst-versions .rst-other-versions{font-size:90%;padding:12px;color:grey;display:none}.rst-versions .rst-other-versions hr{display:block;height:1px;border:0;margin:20px 0;padding:0;border-top:1px solid #413d3d}.rst-versions .rst-other-versions dd{display:inline-block;margin:0}.rst-versions .rst-other-versions dd a{display:inline-block;padding:6px;color:#fcfcfc}.rst-versions.rst-badge{width:auto;bottom:20px;right:20px;left:auto;border:none;max-width:300px;max-height:90%}.rst-versions.rst-badge .fa-book,.rst-versions.rst-badge .icon-book{float:none;line-height:30px}.rst-versions.rst-badge.shift-up .rst-current-version{text-align:right}.rst-versions.rst-badge.shift-up .rst-current-version .fa-book,.rst-versions.rst-badge.shift-up .rst-current-version .icon-book{float:left}.rst-versions.rst-badge>.rst-current-version{width:auto;height:30px;line-height:30px;padding:0 6px;display:block;text-align:center}@media screen and (max-width:768px){.rst-versions{width:85%;display:none}.rst-versions.shift{display:block}}.rst-content img{max-width:100%;height:auto}.rst-content div.figure{margin-bottom:24px}.rst-content div.figure p.caption{font-style:italic}.rst-content div.figure p:last-child.caption{margin-bottom:0}.rst-content div.figure.align-center{text-align:center}.rst-content .section>a>img,.rst-content .section>img{margin-bottom:24px}.rst-content abbr[title]{text-decoration:none}.rst-content.style-external-links a.reference.external:after{font-family:FontAwesome;content:"\f08e";color:#b3b3b3;vertical-align:super;font-size:60%;margin:0 .2em}.rst-content blockquote{margin-left:24px;line-height:24px;margin-bottom:24px}.rst-content pre.literal-block{white-space:pre;margin:0;padding:12px;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;display:block;overflow:auto}.rst-content div[class^=highlight],.rst-content pre.literal-block{border:1px solid #e1e4e5;overflow-x:auto;margin:1px 0 24px}.rst-content div[class^=highlight] div[class^=highlight],.rst-content pre.literal-block div[class^=highlight]{padding:0;border:none;margin:0}.rst-content div[class^=highlight] td.code{width:100%}.rst-content .linenodiv pre{border-right:1px solid #e6e9ea;margin:0;padding:12px;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;user-select:none;pointer-events:none}.rst-content div[class^=highlight] pre{white-space:pre;margin:0;padding:12px;display:block;overflow:auto}.rst-content div[class^=highlight] pre .hll{display:block;margin:0 -12px;padding:0 12px}.rst-content .linenodiv pre,.rst-content div[class^=highlight] pre,.rst-content pre.literal-block{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;font-size:12px;line-height:1.4}.rst-content div.highlight .gp{user-select:none;pointer-events:none}.rst-content .code-block-caption{font-style:italic;font-size:85%;line-height:1;padding:1em 0;text-align:center}@media print{.rst-content .codeblock,.rst-content div[class^=highlight],.rst-content div[class^=highlight] pre{white-space:pre-wrap}}.rst-content .admonition,.rst-content .admonition-todo,.rst-content .attention,.rst-content .caution,.rst-content .danger,.rst-content .error,.rst-content .hint,.rst-content .important,.rst-content .note,.rst-content .seealso,.rst-content .tip,.rst-content .warning{clear:both}.rst-content .admonition-todo .last,.rst-content .admonition-todo>:last-child,.rst-content .admonition .last,.rst-content .admonition>:last-child,.rst-content .attention .last,.rst-content .attention>:last-child,.rst-content .caution .last,.rst-content .caution>:last-child,.rst-content .danger .last,.rst-content .danger>:last-child,.rst-content .error .last,.rst-content .error>:last-child,.rst-content .hint .last,.rst-content .hint>:last-child,.rst-content .important .last,.rst-content .important>:last-child,.rst-content .note .last,.rst-content .note>:last-child,.rst-content .seealso .last,.rst-content .seealso>:last-child,.rst-content .tip .last,.rst-content .tip>:last-child,.rst-content .warning .last,.rst-content .warning>:last-child{margin-bottom:0}.rst-content .admonition-title:before{margin-right:4px}.rst-content .admonition table{border-color:rgba(0,0,0,.1)}.rst-content .admonition table td,.rst-content .admonition table th{background:transparent!important;border-color:rgba(0,0,0,.1)!important}.rst-content .section ol.loweralpha,.rst-content .section ol.loweralpha>li{list-style:lower-alpha}.rst-content .section ol.upperalpha,.rst-content .section ol.upperalpha>li{list-style:upper-alpha}.rst-content .section ol li>*,.rst-content .section ul li>*{margin-top:12px;margin-bottom:12px}.rst-content .section ol li>:first-child,.rst-content .section ul li>:first-child{margin-top:0}.rst-content .section ol li>p,.rst-content .section ol li>p:last-child,.rst-content .section ul li>p,.rst-content .section ul li>p:last-child{margin-bottom:12px}.rst-content .section ol li>p:only-child,.rst-content .section ol li>p:only-child:last-child,.rst-content .section ul li>p:only-child,.rst-content .section ul li>p:only-child:last-child{margin-bottom:0}.rst-content .section ol li>ol,.rst-content .section ol li>ul,.rst-content .section ul li>ol,.rst-content .section ul li>ul{margin-bottom:12px}.rst-content .section ol.simple li>*,.rst-content .section ol.simple li ol,.rst-content .section ol.simple li ul,.rst-content .section ul.simple li>*,.rst-content .section ul.simple li ol,.rst-content .section ul.simple li ul{margin-top:0;margin-bottom:0}.rst-content .line-block{margin-left:0;margin-bottom:24px;line-height:24px}.rst-content .line-block .line-block{margin-left:24px;margin-bottom:0}.rst-content .topic-title{font-weight:700;margin-bottom:12px}.rst-content .toc-backref{color:#404040}.rst-content .align-right{float:right;margin:0 0 24px 24px}.rst-content .align-left{float:left;margin:0 24px 24px 0}.rst-content .align-center{margin:auto}.rst-content .align-center:not(table){display:block}.rst-content .code-block-caption .headerlink,.rst-content .toctree-wrapper>p.caption .headerlink,.rst-content dl dt .headerlink,.rst-content h1 .headerlink,.rst-content h2 .headerlink,.rst-content h3 .headerlink,.rst-content h4 .headerlink,.rst-content h5 .headerlink,.rst-content h6 .headerlink,.rst-content p.caption .headerlink,.rst-content table>caption .headerlink{visibility:hidden;font-size:14px}.rst-content .code-block-caption .headerlink:after,.rst-content .toctree-wrapper>p.caption .headerlink:after,.rst-content dl dt .headerlink:after,.rst-content h1 .headerlink:after,.rst-content h2 .headerlink:after,.rst-content h3 .headerlink:after,.rst-content h4 .headerlink:after,.rst-content h5 .headerlink:after,.rst-content h6 .headerlink:after,.rst-content p.caption .headerlink:after,.rst-content table>caption .headerlink:after{content:"\f0c1";font-family:FontAwesome}.rst-content .code-block-caption:hover .headerlink:after,.rst-content .toctree-wrapper>p.caption:hover .headerlink:after,.rst-content dl dt:hover .headerlink:after,.rst-content h1:hover .headerlink:after,.rst-content h2:hover .headerlink:after,.rst-content h3:hover .headerlink:after,.rst-content h4:hover .headerlink:after,.rst-content h5:hover .headerlink:after,.rst-content h6:hover .headerlink:after,.rst-content p.caption:hover .headerlink:after,.rst-content table>caption:hover .headerlink:after{visibility:visible}.rst-content table>caption .headerlink:after{font-size:12px}.rst-content .centered{text-align:center}.rst-content .sidebar{float:right;width:40%;display:block;margin:0 0 24px 24px;padding:24px;background:#f3f6f6;border:1px solid #e1e4e5}.rst-content .sidebar dl,.rst-content .sidebar p,.rst-content .sidebar ul{font-size:90%}.rst-content .sidebar .last,.rst-content .sidebar>:last-child{margin-bottom:0}.rst-content .sidebar .sidebar-title{display:block;font-family:Roboto Slab,ff-tisa-web-pro,Georgia,Arial,sans-serif;font-weight:700;background:#e1e4e5;padding:6px 12px;margin:-24px -24px 24px;font-size:100%}.rst-content .highlighted{background:#f1c40f;box-shadow:0 0 0 2px #f1c40f;display:inline;font-weight:700}.rst-content .citation-reference,.rst-content .footnote-reference{vertical-align:baseline;position:relative;top:-.4em;line-height:0;font-size:90%}.rst-content .hlist{width:100%}html.writer-html4 .rst-content table.docutils.citation,html.writer-html4 .rst-content table.docutils.footnote{background:none;border:none}html.writer-html4 .rst-content table.docutils.citation td,html.writer-html4 .rst-content table.docutils.citation tr,html.writer-html4 .rst-content table.docutils.footnote td,html.writer-html4 .rst-content table.docutils.footnote tr{border:none;background-color:transparent!important;white-space:normal}html.writer-html4 .rst-content table.docutils.citation td.label,html.writer-html4 .rst-content table.docutils.footnote td.label{padding-left:0;padding-right:0;vertical-align:top}html.writer-html5 .rst-content dl dt span.classifier:before{content:" : "}html.writer-html5 .rst-content dl.field-list,html.writer-html5 .rst-content dl.footnote{display:grid;grid-template-columns:max-content auto}html.writer-html5 .rst-content dl.field-list>dt,html.writer-html5 .rst-content dl.footnote>dt{padding-left:1rem}html.writer-html5 .rst-content dl.field-list>dt:after,html.writer-html5 .rst-content dl.footnote>dt:after{content:":"}html.writer-html5 .rst-content dl.field-list>dd,html.writer-html5 .rst-content dl.field-list>dt,html.writer-html5 .rst-content dl.footnote>dd,html.writer-html5 .rst-content dl.footnote>dt{margin-bottom:0}html.writer-html5 .rst-content dl.footnote{font-size:.9rem}html.writer-html5 .rst-content dl.footnote>dt{margin:0 .5rem .5rem 0;line-height:1.2rem;word-break:break-all;font-weight:400}html.writer-html5 .rst-content dl.footnote>dt>span.brackets{margin-right:.5rem}html.writer-html5 .rst-content dl.footnote>dt>span.brackets:before{content:"["}html.writer-html5 .rst-content dl.footnote>dt>span.brackets:after{content:"]"}html.writer-html5 .rst-content dl.footnote>dt>span.fn-backref{font-style:italic}html.writer-html5 .rst-content dl.footnote>dd{margin:0 0 .5rem;line-height:1.2rem}html.writer-html5 .rst-content dl.footnote>dd p,html.writer-html5 .rst-content dl.option-list kbd{font-size:.9rem}.rst-content table.docutils.footnote,html.writer-html4 .rst-content table.docutils.citation,html.writer-html5 .rst-content dl.footnote{color:grey}.rst-content table.docutils.footnote code,.rst-content table.docutils.footnote tt,html.writer-html4 .rst-content table.docutils.citation code,html.writer-html4 .rst-content table.docutils.citation tt,html.writer-html5 .rst-content dl.footnote code,html.writer-html5 .rst-content dl.footnote tt{color:#555}.rst-content .wy-table-responsive.citation,.rst-content .wy-table-responsive.footnote{margin-bottom:0}.rst-content .wy-table-responsive.citation+:not(.citation),.rst-content .wy-table-responsive.footnote+:not(.footnote){margin-top:24px}.rst-content .wy-table-responsive.citation:last-child,.rst-content .wy-table-responsive.footnote:last-child{margin-bottom:24px}.rst-content table.docutils th{border-color:#e1e4e5}html.writer-html5 .rst-content table.docutils th{border:1px solid #e1e4e5}html.writer-html5 .rst-content table.docutils td>p,html.writer-html5 .rst-content table.docutils th>p{line-height:1rem;margin-bottom:0;font-size:.9rem}.rst-content table.docutils td .last,.rst-content table.docutils td .last>:last-child{margin-bottom:0}.rst-content table.field-list,.rst-content table.field-list td{border:none}.rst-content table.field-list td p{font-size:inherit;line-height:inherit}.rst-content table.field-list td>strong{display:inline-block}.rst-content table.field-list .field-name{padding-right:10px;text-align:left;white-space:nowrap}.rst-content table.field-list .field-body{text-align:left}.rst-content code,.rst-content tt{color:#000;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;padding:2px 5px}.rst-content code big,.rst-content code em,.rst-content tt big,.rst-content tt em{font-size:100%!important;line-height:normal}.rst-content code.literal,.rst-content tt.literal{color:#e74c3c}.rst-content code.xref,.rst-content tt.xref,a .rst-content code,a .rst-content tt{font-weight:700;color:#404040}.rst-content kbd,.rst-content pre,.rst-content samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace}.rst-content a code,.rst-content a tt{color:#2980b9}.rst-content dl{margin-bottom:24px}.rst-content dl dt{font-weight:700;margin-bottom:12px}.rst-content dl ol,.rst-content dl p,.rst-content dl table,.rst-content dl ul{margin-bottom:12px}.rst-content dl dd{margin:0 0 12px 24px;line-height:24px}html.writer-html4 .rst-content dl:not(.docutils),html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple){margin-bottom:24px}html.writer-html4 .rst-content dl:not(.docutils)>dt,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple)>dt{display:table;margin:6px 0;font-size:90%;line-height:normal;background:#e7f2fa;color:#2980b9;border-top:3px solid #6ab0de;padding:6px;position:relative}html.writer-html4 .rst-content dl:not(.docutils)>dt:before,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple)>dt:before{color:#6ab0de}html.writer-html4 .rst-content dl:not(.docutils)>dt .headerlink,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple)>dt .headerlink{color:#404040;font-size:100%!important}html.writer-html4 .rst-content dl:not(.docutils) dl:not(.field-list)>dt,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) dl:not(.field-list)>dt{margin-bottom:6px;border:none;border-left:3px solid #ccc;background:#f0f0f0;color:#555}html.writer-html4 .rst-content dl:not(.docutils) dl:not(.field-list)>dt .headerlink,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) dl:not(.field-list)>dt .headerlink{color:#404040;font-size:100%!important}html.writer-html4 .rst-content dl:not(.docutils)>dt:first-child,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple)>dt:first-child{margin-top:0}html.writer-html4 .rst-content dl:not(.docutils) code,html.writer-html4 .rst-content dl:not(.docutils) tt,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) code,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) tt{font-weight:700}html.writer-html4 .rst-content dl:not(.docutils) code.descclassname,html.writer-html4 .rst-content dl:not(.docutils) code.descname,html.writer-html4 .rst-content dl:not(.docutils) tt.descclassname,html.writer-html4 .rst-content dl:not(.docutils) tt.descname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) code.descclassname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) code.descname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) tt.descclassname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) tt.descname{background-color:transparent;border:none;padding:0;font-size:100%!important}html.writer-html4 .rst-content dl:not(.docutils) code.descname,html.writer-html4 .rst-content dl:not(.docutils) tt.descname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) code.descname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) tt.descname{font-weight:700}html.writer-html4 .rst-content dl:not(.docutils) .optional,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) .optional{display:inline-block;padding:0 4px;color:#000;font-weight:700}html.writer-html4 .rst-content dl:not(.docutils) .property,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) .property{display:inline-block;padding-right:8px}.rst-content .viewcode-back,.rst-content .viewcode-link{display:inline-block;color:#27ae60;font-size:80%;padding-left:24px}.rst-content .viewcode-back{display:block;float:right}.rst-content p.rubric{margin-bottom:12px;font-weight:700}.rst-content code.download,.rst-content tt.download{background:inherit;padding:inherit;font-weight:400;font-family:inherit;font-size:inherit;color:inherit;border:inherit;white-space:inherit}.rst-content code.download span:first-child,.rst-content tt.download span:first-child{-webkit-font-smoothing:subpixel-antialiased}.rst-content code.download span:first-child:before,.rst-content tt.download span:first-child:before{margin-right:4px}.rst-content .guilabel{border:1px solid #7fbbe3;background:#e7f2fa;font-size:80%;font-weight:700;border-radius:4px;padding:2.4px 6px;margin:auto 2px}.rst-content .versionmodified{font-style:italic}@media screen and (max-width:480px){.rst-content .sidebar{width:100%}}span[id*=MathJax-Span]{color:#404040}.math{text-align:center}@font-face{font-family:Lato;src:url(fonts/lato-normal.woff2?bd03a2cc277bbbc338d464e679fe9942) format("woff2"),url(fonts/lato-normal.woff?27bd77b9162d388cb8d4c4217c7c5e2a) format("woff");font-weight:400;font-style:normal;font-display:block}@font-face{font-family:Lato;src:url(fonts/lato-bold.woff2?cccb897485813c7c256901dbca54ecf2) format("woff2"),url(fonts/lato-bold.woff?d878b6c29b10beca227e9eef4246111b) format("woff");font-weight:700;font-style:normal;font-display:block}@font-face{font-family:Lato;src:url(fonts/lato-bold-italic.woff2?0b6bb6725576b072c5d0b02ecdd1900d) format("woff2"),url(fonts/lato-bold-italic.woff?9c7e4e9eb485b4a121c760e61bc3707c) format("woff");font-weight:700;font-style:italic;font-display:block}@font-face{font-family:Lato;src:url(fonts/lato-normal-italic.woff2?4eb103b4d12be57cb1d040ed5e162e9d) format("woff2"),url(fonts/lato-normal-italic.woff?f28f2d6482446544ef1ea1ccc6dd5892) format("woff");font-weight:400;font-style:italic;font-display:block}@font-face{font-family:Roboto Slab;font-style:normal;font-weight:400;src:url(fonts/Roboto-Slab-Regular.woff2?7abf5b8d04d26a2cafea937019bca958) format("woff2"),url(fonts/Roboto-Slab-Regular.woff?c1be9284088d487c5e3ff0a10a92e58c) format("woff");font-display:block}@font-face{font-family:Roboto Slab;font-style:normal;font-weight:700;src:url(fonts/Roboto-Slab-Bold.woff2?9984f4a9bda09be08e83f2506954adbe) format("woff2"),url(fonts/Roboto-Slab-Bold.woff?bed5564a116b05148e3b3bea6fb1162a) format("woff");font-display:block} \ No newline at end of file + */@font-face{font-family:FontAwesome;src:url(fonts/fontawesome-webfont.eot?674f50d287a8c48dc19ba404d20fe713);src:url(fonts/fontawesome-webfont.eot?674f50d287a8c48dc19ba404d20fe713?#iefix&v=4.7.0) format("embedded-opentype"),url(fonts/fontawesome-webfont.woff2?af7ae505a9eed503f8b8e6982036873e) format("woff2"),url(fonts/fontawesome-webfont.woff?fee66e712a8a08eef5805a46892932ad) format("woff"),url(fonts/fontawesome-webfont.ttf?b06871f281fee6b241d60582ae9369b9) format("truetype"),url(fonts/fontawesome-webfont.svg?912ec66d7572ff821749319396470bde#fontawesomeregular) format("svg");font-weight:400;font-style:normal}.fa,.icon,.rst-content .admonition-title,.rst-content .code-block-caption .headerlink,.rst-content .eqno .headerlink,.rst-content code.download span:first-child,.rst-content dl dt .headerlink,.rst-content h1 .headerlink,.rst-content h2 .headerlink,.rst-content h3 .headerlink,.rst-content h4 .headerlink,.rst-content h5 .headerlink,.rst-content h6 .headerlink,.rst-content p.caption .headerlink,.rst-content p .headerlink,.rst-content table>caption .headerlink,.rst-content tt.download span:first-child,.wy-menu-vertical li.current>a button.toctree-expand,.wy-menu-vertical li.on a button.toctree-expand,.wy-menu-vertical li button.toctree-expand{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.28571em;text-align:center}.fa-ul{padding-left:0;margin-left:2.14286em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.14286em;width:2.14286em;top:.14286em;text-align:center}.fa-li.fa-lg{left:-1.85714em}.fa-border{padding:.2em .25em .15em;border:.08em solid #eee;border-radius:.1em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa-pull-left.icon,.fa.fa-pull-left,.rst-content .code-block-caption .fa-pull-left.headerlink,.rst-content .eqno .fa-pull-left.headerlink,.rst-content .fa-pull-left.admonition-title,.rst-content code.download span.fa-pull-left:first-child,.rst-content dl dt .fa-pull-left.headerlink,.rst-content h1 .fa-pull-left.headerlink,.rst-content h2 .fa-pull-left.headerlink,.rst-content h3 .fa-pull-left.headerlink,.rst-content h4 .fa-pull-left.headerlink,.rst-content h5 .fa-pull-left.headerlink,.rst-content h6 .fa-pull-left.headerlink,.rst-content p .fa-pull-left.headerlink,.rst-content table>caption .fa-pull-left.headerlink,.rst-content tt.download span.fa-pull-left:first-child,.wy-menu-vertical li.current>a button.fa-pull-left.toctree-expand,.wy-menu-vertical li.on a button.fa-pull-left.toctree-expand,.wy-menu-vertical li button.fa-pull-left.toctree-expand{margin-right:.3em}.fa-pull-right.icon,.fa.fa-pull-right,.rst-content .code-block-caption .fa-pull-right.headerlink,.rst-content .eqno .fa-pull-right.headerlink,.rst-content .fa-pull-right.admonition-title,.rst-content code.download span.fa-pull-right:first-child,.rst-content dl dt .fa-pull-right.headerlink,.rst-content h1 .fa-pull-right.headerlink,.rst-content h2 .fa-pull-right.headerlink,.rst-content h3 .fa-pull-right.headerlink,.rst-content h4 .fa-pull-right.headerlink,.rst-content h5 .fa-pull-right.headerlink,.rst-content h6 .fa-pull-right.headerlink,.rst-content p .fa-pull-right.headerlink,.rst-content table>caption .fa-pull-right.headerlink,.rst-content tt.download span.fa-pull-right:first-child,.wy-menu-vertical li.current>a button.fa-pull-right.toctree-expand,.wy-menu-vertical li.on a button.fa-pull-right.toctree-expand,.wy-menu-vertical li button.fa-pull-right.toctree-expand{margin-left:.3em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left,.pull-left.icon,.rst-content .code-block-caption .pull-left.headerlink,.rst-content .eqno .pull-left.headerlink,.rst-content .pull-left.admonition-title,.rst-content code.download span.pull-left:first-child,.rst-content dl dt .pull-left.headerlink,.rst-content h1 .pull-left.headerlink,.rst-content h2 .pull-left.headerlink,.rst-content h3 .pull-left.headerlink,.rst-content h4 .pull-left.headerlink,.rst-content h5 .pull-left.headerlink,.rst-content h6 .pull-left.headerlink,.rst-content p .pull-left.headerlink,.rst-content table>caption .pull-left.headerlink,.rst-content tt.download span.pull-left:first-child,.wy-menu-vertical li.current>a button.pull-left.toctree-expand,.wy-menu-vertical li.on a button.pull-left.toctree-expand,.wy-menu-vertical li button.pull-left.toctree-expand{margin-right:.3em}.fa.pull-right,.pull-right.icon,.rst-content .code-block-caption .pull-right.headerlink,.rst-content .eqno .pull-right.headerlink,.rst-content .pull-right.admonition-title,.rst-content code.download span.pull-right:first-child,.rst-content dl dt .pull-right.headerlink,.rst-content h1 .pull-right.headerlink,.rst-content h2 .pull-right.headerlink,.rst-content h3 .pull-right.headerlink,.rst-content h4 .pull-right.headerlink,.rst-content h5 .pull-right.headerlink,.rst-content h6 .pull-right.headerlink,.rst-content p .pull-right.headerlink,.rst-content table>caption .pull-right.headerlink,.rst-content tt.download span.pull-right:first-child,.wy-menu-vertical li.current>a button.pull-right.toctree-expand,.wy-menu-vertical li.on a button.pull-right.toctree-expand,.wy-menu-vertical li button.pull-right.toctree-expand{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.fa-pulse{-webkit-animation:fa-spin 1s steps(8) infinite;animation:fa-spin 1s steps(8) infinite}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scaleX(-1);-ms-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";-webkit-transform:scaleY(-1);-ms-transform:scaleY(-1);transform:scaleY(-1)}:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{filter:none}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:""}.fa-music:before{content:""}.fa-search:before,.icon-search:before{content:""}.fa-envelope-o:before{content:""}.fa-heart:before{content:""}.fa-star:before{content:""}.fa-star-o:before{content:""}.fa-user:before{content:""}.fa-film:before{content:""}.fa-th-large:before{content:""}.fa-th:before{content:""}.fa-th-list:before{content:""}.fa-check:before{content:""}.fa-close:before,.fa-remove:before,.fa-times:before{content:""}.fa-search-plus:before{content:""}.fa-search-minus:before{content:""}.fa-power-off:before{content:""}.fa-signal:before{content:""}.fa-cog:before,.fa-gear:before{content:""}.fa-trash-o:before{content:""}.fa-home:before,.icon-home:before{content:""}.fa-file-o:before{content:""}.fa-clock-o:before{content:""}.fa-road:before{content:""}.fa-download:before,.rst-content code.download span:first-child:before,.rst-content tt.download span:first-child:before{content:""}.fa-arrow-circle-o-down:before{content:""}.fa-arrow-circle-o-up:before{content:""}.fa-inbox:before{content:""}.fa-play-circle-o:before{content:""}.fa-repeat:before,.fa-rotate-right:before{content:""}.fa-refresh:before{content:""}.fa-list-alt:before{content:""}.fa-lock:before{content:""}.fa-flag:before{content:""}.fa-headphones:before{content:""}.fa-volume-off:before{content:""}.fa-volume-down:before{content:""}.fa-volume-up:before{content:""}.fa-qrcode:before{content:""}.fa-barcode:before{content:""}.fa-tag:before{content:""}.fa-tags:before{content:""}.fa-book:before,.icon-book:before{content:""}.fa-bookmark:before{content:""}.fa-print:before{content:""}.fa-camera:before{content:""}.fa-font:before{content:""}.fa-bold:before{content:""}.fa-italic:before{content:""}.fa-text-height:before{content:""}.fa-text-width:before{content:""}.fa-align-left:before{content:""}.fa-align-center:before{content:""}.fa-align-right:before{content:""}.fa-align-justify:before{content:""}.fa-list:before{content:""}.fa-dedent:before,.fa-outdent:before{content:""}.fa-indent:before{content:""}.fa-video-camera:before{content:""}.fa-image:before,.fa-photo:before,.fa-picture-o:before{content:""}.fa-pencil:before{content:""}.fa-map-marker:before{content:""}.fa-adjust:before{content:""}.fa-tint:before{content:""}.fa-edit:before,.fa-pencil-square-o:before{content:""}.fa-share-square-o:before{content:""}.fa-check-square-o:before{content:""}.fa-arrows:before{content:""}.fa-step-backward:before{content:""}.fa-fast-backward:before{content:""}.fa-backward:before{content:""}.fa-play:before{content:""}.fa-pause:before{content:""}.fa-stop:before{content:""}.fa-forward:before{content:""}.fa-fast-forward:before{content:""}.fa-step-forward:before{content:""}.fa-eject:before{content:""}.fa-chevron-left:before{content:""}.fa-chevron-right:before{content:""}.fa-plus-circle:before{content:""}.fa-minus-circle:before{content:""}.fa-times-circle:before,.wy-inline-validate.wy-inline-validate-danger .wy-input-context:before{content:""}.fa-check-circle:before,.wy-inline-validate.wy-inline-validate-success .wy-input-context:before{content:""}.fa-question-circle:before{content:""}.fa-info-circle:before{content:""}.fa-crosshairs:before{content:""}.fa-times-circle-o:before{content:""}.fa-check-circle-o:before{content:""}.fa-ban:before{content:""}.fa-arrow-left:before{content:""}.fa-arrow-right:before{content:""}.fa-arrow-up:before{content:""}.fa-arrow-down:before{content:""}.fa-mail-forward:before,.fa-share:before{content:""}.fa-expand:before{content:""}.fa-compress:before{content:""}.fa-plus:before{content:""}.fa-minus:before{content:""}.fa-asterisk:before{content:""}.fa-exclamation-circle:before,.rst-content .admonition-title:before,.wy-inline-validate.wy-inline-validate-info .wy-input-context:before,.wy-inline-validate.wy-inline-validate-warning .wy-input-context:before{content:""}.fa-gift:before{content:""}.fa-leaf:before{content:""}.fa-fire:before,.icon-fire:before{content:""}.fa-eye:before{content:""}.fa-eye-slash:before{content:""}.fa-exclamation-triangle:before,.fa-warning:before{content:""}.fa-plane:before{content:""}.fa-calendar:before{content:""}.fa-random:before{content:""}.fa-comment:before{content:""}.fa-magnet:before{content:""}.fa-chevron-up:before{content:""}.fa-chevron-down:before{content:""}.fa-retweet:before{content:""}.fa-shopping-cart:before{content:""}.fa-folder:before{content:""}.fa-folder-open:before{content:""}.fa-arrows-v:before{content:""}.fa-arrows-h:before{content:""}.fa-bar-chart-o:before,.fa-bar-chart:before{content:""}.fa-twitter-square:before{content:""}.fa-facebook-square:before{content:""}.fa-camera-retro:before{content:""}.fa-key:before{content:""}.fa-cogs:before,.fa-gears:before{content:""}.fa-comments:before{content:""}.fa-thumbs-o-up:before{content:""}.fa-thumbs-o-down:before{content:""}.fa-star-half:before{content:""}.fa-heart-o:before{content:""}.fa-sign-out:before{content:""}.fa-linkedin-square:before{content:""}.fa-thumb-tack:before{content:""}.fa-external-link:before{content:""}.fa-sign-in:before{content:""}.fa-trophy:before{content:""}.fa-github-square:before{content:""}.fa-upload:before{content:""}.fa-lemon-o:before{content:""}.fa-phone:before{content:""}.fa-square-o:before{content:""}.fa-bookmark-o:before{content:""}.fa-phone-square:before{content:""}.fa-twitter:before{content:""}.fa-facebook-f:before,.fa-facebook:before{content:""}.fa-github:before,.icon-github:before{content:""}.fa-unlock:before{content:""}.fa-credit-card:before{content:""}.fa-feed:before,.fa-rss:before{content:""}.fa-hdd-o:before{content:""}.fa-bullhorn:before{content:""}.fa-bell:before{content:""}.fa-certificate:before{content:""}.fa-hand-o-right:before{content:""}.fa-hand-o-left:before{content:""}.fa-hand-o-up:before{content:""}.fa-hand-o-down:before{content:""}.fa-arrow-circle-left:before,.icon-circle-arrow-left:before{content:""}.fa-arrow-circle-right:before,.icon-circle-arrow-right:before{content:""}.fa-arrow-circle-up:before{content:""}.fa-arrow-circle-down:before{content:""}.fa-globe:before{content:""}.fa-wrench:before{content:""}.fa-tasks:before{content:""}.fa-filter:before{content:""}.fa-briefcase:before{content:""}.fa-arrows-alt:before{content:""}.fa-group:before,.fa-users:before{content:""}.fa-chain:before,.fa-link:before,.icon-link:before{content:""}.fa-cloud:before{content:""}.fa-flask:before{content:""}.fa-cut:before,.fa-scissors:before{content:""}.fa-copy:before,.fa-files-o:before{content:""}.fa-paperclip:before{content:""}.fa-floppy-o:before,.fa-save:before{content:""}.fa-square:before{content:""}.fa-bars:before,.fa-navicon:before,.fa-reorder:before{content:""}.fa-list-ul:before{content:""}.fa-list-ol:before{content:""}.fa-strikethrough:before{content:""}.fa-underline:before{content:""}.fa-table:before{content:""}.fa-magic:before{content:""}.fa-truck:before{content:""}.fa-pinterest:before{content:""}.fa-pinterest-square:before{content:""}.fa-google-plus-square:before{content:""}.fa-google-plus:before{content:""}.fa-money:before{content:""}.fa-caret-down:before,.icon-caret-down:before,.wy-dropdown .caret:before{content:""}.fa-caret-up:before{content:""}.fa-caret-left:before{content:""}.fa-caret-right:before{content:""}.fa-columns:before{content:""}.fa-sort:before,.fa-unsorted:before{content:""}.fa-sort-desc:before,.fa-sort-down:before{content:""}.fa-sort-asc:before,.fa-sort-up:before{content:""}.fa-envelope:before{content:""}.fa-linkedin:before{content:""}.fa-rotate-left:before,.fa-undo:before{content:""}.fa-gavel:before,.fa-legal:before{content:""}.fa-dashboard:before,.fa-tachometer:before{content:""}.fa-comment-o:before{content:""}.fa-comments-o:before{content:""}.fa-bolt:before,.fa-flash:before{content:""}.fa-sitemap:before{content:""}.fa-umbrella:before{content:""}.fa-clipboard:before,.fa-paste:before{content:""}.fa-lightbulb-o:before{content:""}.fa-exchange:before{content:""}.fa-cloud-download:before{content:""}.fa-cloud-upload:before{content:""}.fa-user-md:before{content:""}.fa-stethoscope:before{content:""}.fa-suitcase:before{content:""}.fa-bell-o:before{content:""}.fa-coffee:before{content:""}.fa-cutlery:before{content:""}.fa-file-text-o:before{content:""}.fa-building-o:before{content:""}.fa-hospital-o:before{content:""}.fa-ambulance:before{content:""}.fa-medkit:before{content:""}.fa-fighter-jet:before{content:""}.fa-beer:before{content:""}.fa-h-square:before{content:""}.fa-plus-square:before{content:""}.fa-angle-double-left:before{content:""}.fa-angle-double-right:before{content:""}.fa-angle-double-up:before{content:""}.fa-angle-double-down:before{content:""}.fa-angle-left:before{content:""}.fa-angle-right:before{content:""}.fa-angle-up:before{content:""}.fa-angle-down:before{content:""}.fa-desktop:before{content:""}.fa-laptop:before{content:""}.fa-tablet:before{content:""}.fa-mobile-phone:before,.fa-mobile:before{content:""}.fa-circle-o:before{content:""}.fa-quote-left:before{content:""}.fa-quote-right:before{content:""}.fa-spinner:before{content:""}.fa-circle:before{content:""}.fa-mail-reply:before,.fa-reply:before{content:""}.fa-github-alt:before{content:""}.fa-folder-o:before{content:""}.fa-folder-open-o:before{content:""}.fa-smile-o:before{content:""}.fa-frown-o:before{content:""}.fa-meh-o:before{content:""}.fa-gamepad:before{content:""}.fa-keyboard-o:before{content:""}.fa-flag-o:before{content:""}.fa-flag-checkered:before{content:""}.fa-terminal:before{content:""}.fa-code:before{content:""}.fa-mail-reply-all:before,.fa-reply-all:before{content:""}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:""}.fa-location-arrow:before{content:""}.fa-crop:before{content:""}.fa-code-fork:before{content:""}.fa-chain-broken:before,.fa-unlink:before{content:""}.fa-question:before{content:""}.fa-info:before{content:""}.fa-exclamation:before{content:""}.fa-superscript:before{content:""}.fa-subscript:before{content:""}.fa-eraser:before{content:""}.fa-puzzle-piece:before{content:""}.fa-microphone:before{content:""}.fa-microphone-slash:before{content:""}.fa-shield:before{content:""}.fa-calendar-o:before{content:""}.fa-fire-extinguisher:before{content:""}.fa-rocket:before{content:""}.fa-maxcdn:before{content:""}.fa-chevron-circle-left:before{content:""}.fa-chevron-circle-right:before{content:""}.fa-chevron-circle-up:before{content:""}.fa-chevron-circle-down:before{content:""}.fa-html5:before{content:""}.fa-css3:before{content:""}.fa-anchor:before{content:""}.fa-unlock-alt:before{content:""}.fa-bullseye:before{content:""}.fa-ellipsis-h:before{content:""}.fa-ellipsis-v:before{content:""}.fa-rss-square:before{content:""}.fa-play-circle:before{content:""}.fa-ticket:before{content:""}.fa-minus-square:before{content:""}.fa-minus-square-o:before,.wy-menu-vertical li.current>a button.toctree-expand:before,.wy-menu-vertical li.on a button.toctree-expand:before{content:""}.fa-level-up:before{content:""}.fa-level-down:before{content:""}.fa-check-square:before{content:""}.fa-pencil-square:before{content:""}.fa-external-link-square:before{content:""}.fa-share-square:before{content:""}.fa-compass:before{content:""}.fa-caret-square-o-down:before,.fa-toggle-down:before{content:""}.fa-caret-square-o-up:before,.fa-toggle-up:before{content:""}.fa-caret-square-o-right:before,.fa-toggle-right:before{content:""}.fa-eur:before,.fa-euro:before{content:""}.fa-gbp:before{content:""}.fa-dollar:before,.fa-usd:before{content:""}.fa-inr:before,.fa-rupee:before{content:""}.fa-cny:before,.fa-jpy:before,.fa-rmb:before,.fa-yen:before{content:""}.fa-rouble:before,.fa-rub:before,.fa-ruble:before{content:""}.fa-krw:before,.fa-won:before{content:""}.fa-bitcoin:before,.fa-btc:before{content:""}.fa-file:before{content:""}.fa-file-text:before{content:""}.fa-sort-alpha-asc:before{content:""}.fa-sort-alpha-desc:before{content:""}.fa-sort-amount-asc:before{content:""}.fa-sort-amount-desc:before{content:""}.fa-sort-numeric-asc:before{content:""}.fa-sort-numeric-desc:before{content:""}.fa-thumbs-up:before{content:""}.fa-thumbs-down:before{content:""}.fa-youtube-square:before{content:""}.fa-youtube:before{content:""}.fa-xing:before{content:""}.fa-xing-square:before{content:""}.fa-youtube-play:before{content:""}.fa-dropbox:before{content:""}.fa-stack-overflow:before{content:""}.fa-instagram:before{content:""}.fa-flickr:before{content:""}.fa-adn:before{content:""}.fa-bitbucket:before,.icon-bitbucket:before{content:""}.fa-bitbucket-square:before{content:""}.fa-tumblr:before{content:""}.fa-tumblr-square:before{content:""}.fa-long-arrow-down:before{content:""}.fa-long-arrow-up:before{content:""}.fa-long-arrow-left:before{content:""}.fa-long-arrow-right:before{content:""}.fa-apple:before{content:""}.fa-windows:before{content:""}.fa-android:before{content:""}.fa-linux:before{content:""}.fa-dribbble:before{content:""}.fa-skype:before{content:""}.fa-foursquare:before{content:""}.fa-trello:before{content:""}.fa-female:before{content:""}.fa-male:before{content:""}.fa-gittip:before,.fa-gratipay:before{content:""}.fa-sun-o:before{content:""}.fa-moon-o:before{content:""}.fa-archive:before{content:""}.fa-bug:before{content:""}.fa-vk:before{content:""}.fa-weibo:before{content:""}.fa-renren:before{content:""}.fa-pagelines:before{content:""}.fa-stack-exchange:before{content:""}.fa-arrow-circle-o-right:before{content:""}.fa-arrow-circle-o-left:before{content:""}.fa-caret-square-o-left:before,.fa-toggle-left:before{content:""}.fa-dot-circle-o:before{content:""}.fa-wheelchair:before{content:""}.fa-vimeo-square:before{content:""}.fa-try:before,.fa-turkish-lira:before{content:""}.fa-plus-square-o:before,.wy-menu-vertical li button.toctree-expand:before{content:""}.fa-space-shuttle:before{content:""}.fa-slack:before{content:""}.fa-envelope-square:before{content:""}.fa-wordpress:before{content:""}.fa-openid:before{content:""}.fa-bank:before,.fa-institution:before,.fa-university:before{content:""}.fa-graduation-cap:before,.fa-mortar-board:before{content:""}.fa-yahoo:before{content:""}.fa-google:before{content:""}.fa-reddit:before{content:""}.fa-reddit-square:before{content:""}.fa-stumbleupon-circle:before{content:""}.fa-stumbleupon:before{content:""}.fa-delicious:before{content:""}.fa-digg:before{content:""}.fa-pied-piper-pp:before{content:""}.fa-pied-piper-alt:before{content:""}.fa-drupal:before{content:""}.fa-joomla:before{content:""}.fa-language:before{content:""}.fa-fax:before{content:""}.fa-building:before{content:""}.fa-child:before{content:""}.fa-paw:before{content:""}.fa-spoon:before{content:""}.fa-cube:before{content:""}.fa-cubes:before{content:""}.fa-behance:before{content:""}.fa-behance-square:before{content:""}.fa-steam:before{content:""}.fa-steam-square:before{content:""}.fa-recycle:before{content:""}.fa-automobile:before,.fa-car:before{content:""}.fa-cab:before,.fa-taxi:before{content:""}.fa-tree:before{content:""}.fa-spotify:before{content:""}.fa-deviantart:before{content:""}.fa-soundcloud:before{content:""}.fa-database:before{content:""}.fa-file-pdf-o:before{content:""}.fa-file-word-o:before{content:""}.fa-file-excel-o:before{content:""}.fa-file-powerpoint-o:before{content:""}.fa-file-image-o:before,.fa-file-photo-o:before,.fa-file-picture-o:before{content:""}.fa-file-archive-o:before,.fa-file-zip-o:before{content:""}.fa-file-audio-o:before,.fa-file-sound-o:before{content:""}.fa-file-movie-o:before,.fa-file-video-o:before{content:""}.fa-file-code-o:before{content:""}.fa-vine:before{content:""}.fa-codepen:before{content:""}.fa-jsfiddle:before{content:""}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-ring:before,.fa-life-saver:before,.fa-support:before{content:""}.fa-circle-o-notch:before{content:""}.fa-ra:before,.fa-rebel:before,.fa-resistance:before{content:""}.fa-empire:before,.fa-ge:before{content:""}.fa-git-square:before{content:""}.fa-git:before{content:""}.fa-hacker-news:before,.fa-y-combinator-square:before,.fa-yc-square:before{content:""}.fa-tencent-weibo:before{content:""}.fa-qq:before{content:""}.fa-wechat:before,.fa-weixin:before{content:""}.fa-paper-plane:before,.fa-send:before{content:""}.fa-paper-plane-o:before,.fa-send-o:before{content:""}.fa-history:before{content:""}.fa-circle-thin:before{content:""}.fa-header:before{content:""}.fa-paragraph:before{content:""}.fa-sliders:before{content:""}.fa-share-alt:before{content:""}.fa-share-alt-square:before{content:""}.fa-bomb:before{content:""}.fa-futbol-o:before,.fa-soccer-ball-o:before{content:""}.fa-tty:before{content:""}.fa-binoculars:before{content:""}.fa-plug:before{content:""}.fa-slideshare:before{content:""}.fa-twitch:before{content:""}.fa-yelp:before{content:""}.fa-newspaper-o:before{content:""}.fa-wifi:before{content:""}.fa-calculator:before{content:""}.fa-paypal:before{content:""}.fa-google-wallet:before{content:""}.fa-cc-visa:before{content:""}.fa-cc-mastercard:before{content:""}.fa-cc-discover:before{content:""}.fa-cc-amex:before{content:""}.fa-cc-paypal:before{content:""}.fa-cc-stripe:before{content:""}.fa-bell-slash:before{content:""}.fa-bell-slash-o:before{content:""}.fa-trash:before{content:""}.fa-copyright:before{content:""}.fa-at:before{content:""}.fa-eyedropper:before{content:""}.fa-paint-brush:before{content:""}.fa-birthday-cake:before{content:""}.fa-area-chart:before{content:""}.fa-pie-chart:before{content:""}.fa-line-chart:before{content:""}.fa-lastfm:before{content:""}.fa-lastfm-square:before{content:""}.fa-toggle-off:before{content:""}.fa-toggle-on:before{content:""}.fa-bicycle:before{content:""}.fa-bus:before{content:""}.fa-ioxhost:before{content:""}.fa-angellist:before{content:""}.fa-cc:before{content:""}.fa-ils:before,.fa-shekel:before,.fa-sheqel:before{content:""}.fa-meanpath:before{content:""}.fa-buysellads:before{content:""}.fa-connectdevelop:before{content:""}.fa-dashcube:before{content:""}.fa-forumbee:before{content:""}.fa-leanpub:before{content:""}.fa-sellsy:before{content:""}.fa-shirtsinbulk:before{content:""}.fa-simplybuilt:before{content:""}.fa-skyatlas:before{content:""}.fa-cart-plus:before{content:""}.fa-cart-arrow-down:before{content:""}.fa-diamond:before{content:""}.fa-ship:before{content:""}.fa-user-secret:before{content:""}.fa-motorcycle:before{content:""}.fa-street-view:before{content:""}.fa-heartbeat:before{content:""}.fa-venus:before{content:""}.fa-mars:before{content:""}.fa-mercury:before{content:""}.fa-intersex:before,.fa-transgender:before{content:""}.fa-transgender-alt:before{content:""}.fa-venus-double:before{content:""}.fa-mars-double:before{content:""}.fa-venus-mars:before{content:""}.fa-mars-stroke:before{content:""}.fa-mars-stroke-v:before{content:""}.fa-mars-stroke-h:before{content:""}.fa-neuter:before{content:""}.fa-genderless:before{content:""}.fa-facebook-official:before{content:""}.fa-pinterest-p:before{content:""}.fa-whatsapp:before{content:""}.fa-server:before{content:""}.fa-user-plus:before{content:""}.fa-user-times:before{content:""}.fa-bed:before,.fa-hotel:before{content:""}.fa-viacoin:before{content:""}.fa-train:before{content:""}.fa-subway:before{content:""}.fa-medium:before{content:""}.fa-y-combinator:before,.fa-yc:before{content:""}.fa-optin-monster:before{content:""}.fa-opencart:before{content:""}.fa-expeditedssl:before{content:""}.fa-battery-4:before,.fa-battery-full:before,.fa-battery:before{content:""}.fa-battery-3:before,.fa-battery-three-quarters:before{content:""}.fa-battery-2:before,.fa-battery-half:before{content:""}.fa-battery-1:before,.fa-battery-quarter:before{content:""}.fa-battery-0:before,.fa-battery-empty:before{content:""}.fa-mouse-pointer:before{content:""}.fa-i-cursor:before{content:""}.fa-object-group:before{content:""}.fa-object-ungroup:before{content:""}.fa-sticky-note:before{content:""}.fa-sticky-note-o:before{content:""}.fa-cc-jcb:before{content:""}.fa-cc-diners-club:before{content:""}.fa-clone:before{content:""}.fa-balance-scale:before{content:""}.fa-hourglass-o:before{content:""}.fa-hourglass-1:before,.fa-hourglass-start:before{content:""}.fa-hourglass-2:before,.fa-hourglass-half:before{content:""}.fa-hourglass-3:before,.fa-hourglass-end:before{content:""}.fa-hourglass:before{content:""}.fa-hand-grab-o:before,.fa-hand-rock-o:before{content:""}.fa-hand-paper-o:before,.fa-hand-stop-o:before{content:""}.fa-hand-scissors-o:before{content:""}.fa-hand-lizard-o:before{content:""}.fa-hand-spock-o:before{content:""}.fa-hand-pointer-o:before{content:""}.fa-hand-peace-o:before{content:""}.fa-trademark:before{content:""}.fa-registered:before{content:""}.fa-creative-commons:before{content:""}.fa-gg:before{content:""}.fa-gg-circle:before{content:""}.fa-tripadvisor:before{content:""}.fa-odnoklassniki:before{content:""}.fa-odnoklassniki-square:before{content:""}.fa-get-pocket:before{content:""}.fa-wikipedia-w:before{content:""}.fa-safari:before{content:""}.fa-chrome:before{content:""}.fa-firefox:before{content:""}.fa-opera:before{content:""}.fa-internet-explorer:before{content:""}.fa-television:before,.fa-tv:before{content:""}.fa-contao:before{content:""}.fa-500px:before{content:""}.fa-amazon:before{content:""}.fa-calendar-plus-o:before{content:""}.fa-calendar-minus-o:before{content:""}.fa-calendar-times-o:before{content:""}.fa-calendar-check-o:before{content:""}.fa-industry:before{content:""}.fa-map-pin:before{content:""}.fa-map-signs:before{content:""}.fa-map-o:before{content:""}.fa-map:before{content:""}.fa-commenting:before{content:""}.fa-commenting-o:before{content:""}.fa-houzz:before{content:""}.fa-vimeo:before{content:""}.fa-black-tie:before{content:""}.fa-fonticons:before{content:""}.fa-reddit-alien:before{content:""}.fa-edge:before{content:""}.fa-credit-card-alt:before{content:""}.fa-codiepie:before{content:""}.fa-modx:before{content:""}.fa-fort-awesome:before{content:""}.fa-usb:before{content:""}.fa-product-hunt:before{content:""}.fa-mixcloud:before{content:""}.fa-scribd:before{content:""}.fa-pause-circle:before{content:""}.fa-pause-circle-o:before{content:""}.fa-stop-circle:before{content:""}.fa-stop-circle-o:before{content:""}.fa-shopping-bag:before{content:""}.fa-shopping-basket:before{content:""}.fa-hashtag:before{content:""}.fa-bluetooth:before{content:""}.fa-bluetooth-b:before{content:""}.fa-percent:before{content:""}.fa-gitlab:before,.icon-gitlab:before{content:""}.fa-wpbeginner:before{content:""}.fa-wpforms:before{content:""}.fa-envira:before{content:""}.fa-universal-access:before{content:""}.fa-wheelchair-alt:before{content:""}.fa-question-circle-o:before{content:""}.fa-blind:before{content:""}.fa-audio-description:before{content:""}.fa-volume-control-phone:before{content:""}.fa-braille:before{content:""}.fa-assistive-listening-systems:before{content:""}.fa-american-sign-language-interpreting:before,.fa-asl-interpreting:before{content:""}.fa-deaf:before,.fa-deafness:before,.fa-hard-of-hearing:before{content:""}.fa-glide:before{content:""}.fa-glide-g:before{content:""}.fa-sign-language:before,.fa-signing:before{content:""}.fa-low-vision:before{content:""}.fa-viadeo:before{content:""}.fa-viadeo-square:before{content:""}.fa-snapchat:before{content:""}.fa-snapchat-ghost:before{content:""}.fa-snapchat-square:before{content:""}.fa-pied-piper:before{content:""}.fa-first-order:before{content:""}.fa-yoast:before{content:""}.fa-themeisle:before{content:""}.fa-google-plus-circle:before,.fa-google-plus-official:before{content:""}.fa-fa:before,.fa-font-awesome:before{content:""}.fa-handshake-o:before{content:""}.fa-envelope-open:before{content:""}.fa-envelope-open-o:before{content:""}.fa-linode:before{content:""}.fa-address-book:before{content:""}.fa-address-book-o:before{content:""}.fa-address-card:before,.fa-vcard:before{content:""}.fa-address-card-o:before,.fa-vcard-o:before{content:""}.fa-user-circle:before{content:""}.fa-user-circle-o:before{content:""}.fa-user-o:before{content:""}.fa-id-badge:before{content:""}.fa-drivers-license:before,.fa-id-card:before{content:""}.fa-drivers-license-o:before,.fa-id-card-o:before{content:""}.fa-quora:before{content:""}.fa-free-code-camp:before{content:""}.fa-telegram:before{content:""}.fa-thermometer-4:before,.fa-thermometer-full:before,.fa-thermometer:before{content:""}.fa-thermometer-3:before,.fa-thermometer-three-quarters:before{content:""}.fa-thermometer-2:before,.fa-thermometer-half:before{content:""}.fa-thermometer-1:before,.fa-thermometer-quarter:before{content:""}.fa-thermometer-0:before,.fa-thermometer-empty:before{content:""}.fa-shower:before{content:""}.fa-bath:before,.fa-bathtub:before,.fa-s15:before{content:""}.fa-podcast:before{content:""}.fa-window-maximize:before{content:""}.fa-window-minimize:before{content:""}.fa-window-restore:before{content:""}.fa-times-rectangle:before,.fa-window-close:before{content:""}.fa-times-rectangle-o:before,.fa-window-close-o:before{content:""}.fa-bandcamp:before{content:""}.fa-grav:before{content:""}.fa-etsy:before{content:""}.fa-imdb:before{content:""}.fa-ravelry:before{content:""}.fa-eercast:before{content:""}.fa-microchip:before{content:""}.fa-snowflake-o:before{content:""}.fa-superpowers:before{content:""}.fa-wpexplorer:before{content:""}.fa-meetup:before{content:""}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}.fa,.icon,.rst-content .admonition-title,.rst-content .code-block-caption .headerlink,.rst-content .eqno .headerlink,.rst-content code.download span:first-child,.rst-content dl dt .headerlink,.rst-content h1 .headerlink,.rst-content h2 .headerlink,.rst-content h3 .headerlink,.rst-content h4 .headerlink,.rst-content h5 .headerlink,.rst-content h6 .headerlink,.rst-content p.caption .headerlink,.rst-content p .headerlink,.rst-content table>caption .headerlink,.rst-content tt.download span:first-child,.wy-dropdown .caret,.wy-inline-validate.wy-inline-validate-danger .wy-input-context,.wy-inline-validate.wy-inline-validate-info .wy-input-context,.wy-inline-validate.wy-inline-validate-success .wy-input-context,.wy-inline-validate.wy-inline-validate-warning .wy-input-context,.wy-menu-vertical li.current>a button.toctree-expand,.wy-menu-vertical li.on a button.toctree-expand,.wy-menu-vertical li button.toctree-expand{font-family:inherit}.fa:before,.icon:before,.rst-content .admonition-title:before,.rst-content .code-block-caption .headerlink:before,.rst-content .eqno .headerlink:before,.rst-content code.download span:first-child:before,.rst-content dl dt .headerlink:before,.rst-content h1 .headerlink:before,.rst-content h2 .headerlink:before,.rst-content h3 .headerlink:before,.rst-content h4 .headerlink:before,.rst-content h5 .headerlink:before,.rst-content h6 .headerlink:before,.rst-content p.caption .headerlink:before,.rst-content p .headerlink:before,.rst-content table>caption .headerlink:before,.rst-content tt.download span:first-child:before,.wy-dropdown .caret:before,.wy-inline-validate.wy-inline-validate-danger .wy-input-context:before,.wy-inline-validate.wy-inline-validate-info .wy-input-context:before,.wy-inline-validate.wy-inline-validate-success .wy-input-context:before,.wy-inline-validate.wy-inline-validate-warning .wy-input-context:before,.wy-menu-vertical li.current>a button.toctree-expand:before,.wy-menu-vertical li.on a button.toctree-expand:before,.wy-menu-vertical li button.toctree-expand:before{font-family:FontAwesome;display:inline-block;font-style:normal;font-weight:400;line-height:1;text-decoration:inherit}.rst-content .code-block-caption a .headerlink,.rst-content .eqno a .headerlink,.rst-content a .admonition-title,.rst-content code.download a span:first-child,.rst-content dl dt a .headerlink,.rst-content h1 a .headerlink,.rst-content h2 a .headerlink,.rst-content h3 a .headerlink,.rst-content h4 a .headerlink,.rst-content h5 a .headerlink,.rst-content h6 a .headerlink,.rst-content p.caption a .headerlink,.rst-content p a .headerlink,.rst-content table>caption a .headerlink,.rst-content tt.download a span:first-child,.wy-menu-vertical li.current>a button.toctree-expand,.wy-menu-vertical li.on a button.toctree-expand,.wy-menu-vertical li a button.toctree-expand,a .fa,a .icon,a .rst-content .admonition-title,a .rst-content .code-block-caption .headerlink,a .rst-content .eqno .headerlink,a .rst-content code.download span:first-child,a .rst-content dl dt .headerlink,a .rst-content h1 .headerlink,a .rst-content h2 .headerlink,a .rst-content h3 .headerlink,a .rst-content h4 .headerlink,a .rst-content h5 .headerlink,a .rst-content h6 .headerlink,a .rst-content p.caption .headerlink,a .rst-content p .headerlink,a .rst-content table>caption .headerlink,a .rst-content tt.download span:first-child,a .wy-menu-vertical li button.toctree-expand{display:inline-block;text-decoration:inherit}.btn .fa,.btn .icon,.btn .rst-content .admonition-title,.btn .rst-content .code-block-caption .headerlink,.btn .rst-content .eqno .headerlink,.btn .rst-content code.download span:first-child,.btn .rst-content dl dt .headerlink,.btn .rst-content h1 .headerlink,.btn .rst-content h2 .headerlink,.btn .rst-content h3 .headerlink,.btn .rst-content h4 .headerlink,.btn .rst-content h5 .headerlink,.btn .rst-content h6 .headerlink,.btn .rst-content p .headerlink,.btn .rst-content table>caption .headerlink,.btn .rst-content tt.download span:first-child,.btn .wy-menu-vertical li.current>a button.toctree-expand,.btn .wy-menu-vertical li.on a button.toctree-expand,.btn .wy-menu-vertical li button.toctree-expand,.nav .fa,.nav .icon,.nav .rst-content .admonition-title,.nav .rst-content .code-block-caption .headerlink,.nav .rst-content .eqno .headerlink,.nav .rst-content code.download span:first-child,.nav .rst-content dl dt .headerlink,.nav .rst-content h1 .headerlink,.nav .rst-content h2 .headerlink,.nav .rst-content h3 .headerlink,.nav .rst-content h4 .headerlink,.nav .rst-content h5 .headerlink,.nav .rst-content h6 .headerlink,.nav .rst-content p .headerlink,.nav .rst-content table>caption .headerlink,.nav .rst-content tt.download span:first-child,.nav .wy-menu-vertical li.current>a button.toctree-expand,.nav .wy-menu-vertical li.on a button.toctree-expand,.nav .wy-menu-vertical li button.toctree-expand,.rst-content .btn .admonition-title,.rst-content .code-block-caption .btn .headerlink,.rst-content .code-block-caption .nav .headerlink,.rst-content .eqno .btn .headerlink,.rst-content .eqno .nav .headerlink,.rst-content .nav .admonition-title,.rst-content code.download .btn span:first-child,.rst-content code.download .nav span:first-child,.rst-content dl dt .btn .headerlink,.rst-content dl dt .nav .headerlink,.rst-content h1 .btn .headerlink,.rst-content h1 .nav .headerlink,.rst-content h2 .btn .headerlink,.rst-content h2 .nav .headerlink,.rst-content h3 .btn .headerlink,.rst-content h3 .nav .headerlink,.rst-content h4 .btn .headerlink,.rst-content h4 .nav .headerlink,.rst-content h5 .btn .headerlink,.rst-content h5 .nav .headerlink,.rst-content h6 .btn .headerlink,.rst-content h6 .nav .headerlink,.rst-content p .btn .headerlink,.rst-content p .nav .headerlink,.rst-content table>caption .btn .headerlink,.rst-content table>caption .nav .headerlink,.rst-content tt.download .btn span:first-child,.rst-content tt.download .nav span:first-child,.wy-menu-vertical li .btn button.toctree-expand,.wy-menu-vertical li.current>a .btn button.toctree-expand,.wy-menu-vertical li.current>a .nav button.toctree-expand,.wy-menu-vertical li .nav button.toctree-expand,.wy-menu-vertical li.on a .btn button.toctree-expand,.wy-menu-vertical li.on a .nav button.toctree-expand{display:inline}.btn .fa-large.icon,.btn .fa.fa-large,.btn .rst-content .code-block-caption .fa-large.headerlink,.btn .rst-content .eqno .fa-large.headerlink,.btn .rst-content .fa-large.admonition-title,.btn .rst-content code.download span.fa-large:first-child,.btn .rst-content dl dt .fa-large.headerlink,.btn .rst-content h1 .fa-large.headerlink,.btn .rst-content h2 .fa-large.headerlink,.btn .rst-content h3 .fa-large.headerlink,.btn .rst-content h4 .fa-large.headerlink,.btn .rst-content h5 .fa-large.headerlink,.btn .rst-content h6 .fa-large.headerlink,.btn .rst-content p .fa-large.headerlink,.btn .rst-content table>caption .fa-large.headerlink,.btn .rst-content tt.download span.fa-large:first-child,.btn .wy-menu-vertical li button.fa-large.toctree-expand,.nav .fa-large.icon,.nav .fa.fa-large,.nav .rst-content .code-block-caption .fa-large.headerlink,.nav .rst-content .eqno .fa-large.headerlink,.nav .rst-content .fa-large.admonition-title,.nav .rst-content code.download span.fa-large:first-child,.nav .rst-content dl dt .fa-large.headerlink,.nav .rst-content h1 .fa-large.headerlink,.nav .rst-content h2 .fa-large.headerlink,.nav .rst-content h3 .fa-large.headerlink,.nav .rst-content h4 .fa-large.headerlink,.nav .rst-content h5 .fa-large.headerlink,.nav .rst-content h6 .fa-large.headerlink,.nav .rst-content p .fa-large.headerlink,.nav .rst-content table>caption .fa-large.headerlink,.nav .rst-content tt.download span.fa-large:first-child,.nav .wy-menu-vertical li button.fa-large.toctree-expand,.rst-content .btn .fa-large.admonition-title,.rst-content .code-block-caption .btn .fa-large.headerlink,.rst-content .code-block-caption .nav .fa-large.headerlink,.rst-content .eqno .btn .fa-large.headerlink,.rst-content .eqno .nav .fa-large.headerlink,.rst-content .nav .fa-large.admonition-title,.rst-content code.download .btn span.fa-large:first-child,.rst-content code.download .nav span.fa-large:first-child,.rst-content dl dt .btn .fa-large.headerlink,.rst-content dl dt .nav .fa-large.headerlink,.rst-content h1 .btn .fa-large.headerlink,.rst-content h1 .nav .fa-large.headerlink,.rst-content h2 .btn .fa-large.headerlink,.rst-content h2 .nav .fa-large.headerlink,.rst-content h3 .btn .fa-large.headerlink,.rst-content h3 .nav .fa-large.headerlink,.rst-content h4 .btn .fa-large.headerlink,.rst-content h4 .nav .fa-large.headerlink,.rst-content h5 .btn .fa-large.headerlink,.rst-content h5 .nav .fa-large.headerlink,.rst-content h6 .btn .fa-large.headerlink,.rst-content h6 .nav .fa-large.headerlink,.rst-content p .btn .fa-large.headerlink,.rst-content p .nav .fa-large.headerlink,.rst-content table>caption .btn .fa-large.headerlink,.rst-content table>caption .nav .fa-large.headerlink,.rst-content tt.download .btn span.fa-large:first-child,.rst-content tt.download .nav span.fa-large:first-child,.wy-menu-vertical li .btn button.fa-large.toctree-expand,.wy-menu-vertical li .nav button.fa-large.toctree-expand{line-height:.9em}.btn .fa-spin.icon,.btn .fa.fa-spin,.btn .rst-content .code-block-caption .fa-spin.headerlink,.btn .rst-content .eqno .fa-spin.headerlink,.btn .rst-content .fa-spin.admonition-title,.btn .rst-content code.download span.fa-spin:first-child,.btn .rst-content dl dt .fa-spin.headerlink,.btn .rst-content h1 .fa-spin.headerlink,.btn .rst-content h2 .fa-spin.headerlink,.btn .rst-content h3 .fa-spin.headerlink,.btn .rst-content h4 .fa-spin.headerlink,.btn .rst-content h5 .fa-spin.headerlink,.btn .rst-content h6 .fa-spin.headerlink,.btn .rst-content p .fa-spin.headerlink,.btn .rst-content table>caption .fa-spin.headerlink,.btn .rst-content tt.download span.fa-spin:first-child,.btn .wy-menu-vertical li button.fa-spin.toctree-expand,.nav .fa-spin.icon,.nav .fa.fa-spin,.nav .rst-content .code-block-caption .fa-spin.headerlink,.nav .rst-content .eqno .fa-spin.headerlink,.nav .rst-content .fa-spin.admonition-title,.nav .rst-content code.download span.fa-spin:first-child,.nav .rst-content dl dt .fa-spin.headerlink,.nav .rst-content h1 .fa-spin.headerlink,.nav .rst-content h2 .fa-spin.headerlink,.nav .rst-content h3 .fa-spin.headerlink,.nav .rst-content h4 .fa-spin.headerlink,.nav .rst-content h5 .fa-spin.headerlink,.nav .rst-content h6 .fa-spin.headerlink,.nav .rst-content p .fa-spin.headerlink,.nav .rst-content table>caption .fa-spin.headerlink,.nav .rst-content tt.download span.fa-spin:first-child,.nav .wy-menu-vertical li button.fa-spin.toctree-expand,.rst-content .btn .fa-spin.admonition-title,.rst-content .code-block-caption .btn .fa-spin.headerlink,.rst-content .code-block-caption .nav .fa-spin.headerlink,.rst-content .eqno .btn .fa-spin.headerlink,.rst-content .eqno .nav .fa-spin.headerlink,.rst-content .nav .fa-spin.admonition-title,.rst-content code.download .btn span.fa-spin:first-child,.rst-content code.download .nav span.fa-spin:first-child,.rst-content dl dt .btn .fa-spin.headerlink,.rst-content dl dt .nav .fa-spin.headerlink,.rst-content h1 .btn .fa-spin.headerlink,.rst-content h1 .nav .fa-spin.headerlink,.rst-content h2 .btn .fa-spin.headerlink,.rst-content h2 .nav .fa-spin.headerlink,.rst-content h3 .btn .fa-spin.headerlink,.rst-content h3 .nav .fa-spin.headerlink,.rst-content h4 .btn .fa-spin.headerlink,.rst-content h4 .nav .fa-spin.headerlink,.rst-content h5 .btn .fa-spin.headerlink,.rst-content h5 .nav .fa-spin.headerlink,.rst-content h6 .btn .fa-spin.headerlink,.rst-content h6 .nav .fa-spin.headerlink,.rst-content p .btn .fa-spin.headerlink,.rst-content p .nav .fa-spin.headerlink,.rst-content table>caption .btn .fa-spin.headerlink,.rst-content table>caption .nav .fa-spin.headerlink,.rst-content tt.download .btn span.fa-spin:first-child,.rst-content tt.download .nav span.fa-spin:first-child,.wy-menu-vertical li .btn button.fa-spin.toctree-expand,.wy-menu-vertical li .nav button.fa-spin.toctree-expand{display:inline-block}.btn.fa:before,.btn.icon:before,.rst-content .btn.admonition-title:before,.rst-content .code-block-caption .btn.headerlink:before,.rst-content .eqno .btn.headerlink:before,.rst-content code.download span.btn:first-child:before,.rst-content dl dt .btn.headerlink:before,.rst-content h1 .btn.headerlink:before,.rst-content h2 .btn.headerlink:before,.rst-content h3 .btn.headerlink:before,.rst-content h4 .btn.headerlink:before,.rst-content h5 .btn.headerlink:before,.rst-content h6 .btn.headerlink:before,.rst-content p .btn.headerlink:before,.rst-content table>caption .btn.headerlink:before,.rst-content tt.download span.btn:first-child:before,.wy-menu-vertical li button.btn.toctree-expand:before{opacity:.5;-webkit-transition:opacity .05s ease-in;-moz-transition:opacity .05s ease-in;transition:opacity .05s ease-in}.btn.fa:hover:before,.btn.icon:hover:before,.rst-content .btn.admonition-title:hover:before,.rst-content .code-block-caption .btn.headerlink:hover:before,.rst-content .eqno .btn.headerlink:hover:before,.rst-content code.download span.btn:first-child:hover:before,.rst-content dl dt .btn.headerlink:hover:before,.rst-content h1 .btn.headerlink:hover:before,.rst-content h2 .btn.headerlink:hover:before,.rst-content h3 .btn.headerlink:hover:before,.rst-content h4 .btn.headerlink:hover:before,.rst-content h5 .btn.headerlink:hover:before,.rst-content h6 .btn.headerlink:hover:before,.rst-content p .btn.headerlink:hover:before,.rst-content table>caption .btn.headerlink:hover:before,.rst-content tt.download span.btn:first-child:hover:before,.wy-menu-vertical li button.btn.toctree-expand:hover:before{opacity:1}.btn-mini .fa:before,.btn-mini .icon:before,.btn-mini .rst-content .admonition-title:before,.btn-mini .rst-content .code-block-caption .headerlink:before,.btn-mini .rst-content .eqno .headerlink:before,.btn-mini .rst-content code.download span:first-child:before,.btn-mini .rst-content dl dt .headerlink:before,.btn-mini .rst-content h1 .headerlink:before,.btn-mini .rst-content h2 .headerlink:before,.btn-mini .rst-content h3 .headerlink:before,.btn-mini .rst-content h4 .headerlink:before,.btn-mini .rst-content h5 .headerlink:before,.btn-mini .rst-content h6 .headerlink:before,.btn-mini .rst-content p .headerlink:before,.btn-mini .rst-content table>caption .headerlink:before,.btn-mini .rst-content tt.download span:first-child:before,.btn-mini .wy-menu-vertical li button.toctree-expand:before,.rst-content .btn-mini .admonition-title:before,.rst-content .code-block-caption .btn-mini .headerlink:before,.rst-content .eqno .btn-mini .headerlink:before,.rst-content code.download .btn-mini span:first-child:before,.rst-content dl dt .btn-mini .headerlink:before,.rst-content h1 .btn-mini .headerlink:before,.rst-content h2 .btn-mini .headerlink:before,.rst-content h3 .btn-mini .headerlink:before,.rst-content h4 .btn-mini .headerlink:before,.rst-content h5 .btn-mini .headerlink:before,.rst-content h6 .btn-mini .headerlink:before,.rst-content p .btn-mini .headerlink:before,.rst-content table>caption .btn-mini .headerlink:before,.rst-content tt.download .btn-mini span:first-child:before,.wy-menu-vertical li .btn-mini button.toctree-expand:before{font-size:14px;vertical-align:-15%}.rst-content .admonition,.rst-content .admonition-todo,.rst-content .attention,.rst-content .caution,.rst-content .danger,.rst-content .error,.rst-content .hint,.rst-content .important,.rst-content .note,.rst-content .seealso,.rst-content .tip,.rst-content .warning,.wy-alert{padding:12px;line-height:24px;margin-bottom:24px;background:#e7f2fa}.rst-content .admonition-title,.wy-alert-title{font-weight:700;display:block;color:#fff;background:#6ab0de;padding:6px 12px;margin:-12px -12px 12px}.rst-content .danger,.rst-content .error,.rst-content .wy-alert-danger.admonition,.rst-content .wy-alert-danger.admonition-todo,.rst-content .wy-alert-danger.attention,.rst-content .wy-alert-danger.caution,.rst-content .wy-alert-danger.hint,.rst-content .wy-alert-danger.important,.rst-content .wy-alert-danger.note,.rst-content .wy-alert-danger.seealso,.rst-content .wy-alert-danger.tip,.rst-content .wy-alert-danger.warning,.wy-alert.wy-alert-danger{background:#fdf3f2}.rst-content .danger .admonition-title,.rst-content .danger .wy-alert-title,.rst-content .error .admonition-title,.rst-content .error .wy-alert-title,.rst-content .wy-alert-danger.admonition-todo .admonition-title,.rst-content .wy-alert-danger.admonition-todo .wy-alert-title,.rst-content .wy-alert-danger.admonition .admonition-title,.rst-content .wy-alert-danger.admonition .wy-alert-title,.rst-content .wy-alert-danger.attention .admonition-title,.rst-content .wy-alert-danger.attention .wy-alert-title,.rst-content .wy-alert-danger.caution .admonition-title,.rst-content .wy-alert-danger.caution .wy-alert-title,.rst-content .wy-alert-danger.hint .admonition-title,.rst-content .wy-alert-danger.hint .wy-alert-title,.rst-content .wy-alert-danger.important .admonition-title,.rst-content .wy-alert-danger.important .wy-alert-title,.rst-content .wy-alert-danger.note .admonition-title,.rst-content .wy-alert-danger.note .wy-alert-title,.rst-content .wy-alert-danger.seealso .admonition-title,.rst-content .wy-alert-danger.seealso .wy-alert-title,.rst-content .wy-alert-danger.tip .admonition-title,.rst-content .wy-alert-danger.tip .wy-alert-title,.rst-content .wy-alert-danger.warning .admonition-title,.rst-content .wy-alert-danger.warning .wy-alert-title,.rst-content .wy-alert.wy-alert-danger .admonition-title,.wy-alert.wy-alert-danger .rst-content .admonition-title,.wy-alert.wy-alert-danger .wy-alert-title{background:#f29f97}.rst-content .admonition-todo,.rst-content .attention,.rst-content .caution,.rst-content .warning,.rst-content .wy-alert-warning.admonition,.rst-content .wy-alert-warning.danger,.rst-content .wy-alert-warning.error,.rst-content .wy-alert-warning.hint,.rst-content .wy-alert-warning.important,.rst-content .wy-alert-warning.note,.rst-content .wy-alert-warning.seealso,.rst-content .wy-alert-warning.tip,.wy-alert.wy-alert-warning{background:#ffedcc}.rst-content .admonition-todo .admonition-title,.rst-content .admonition-todo .wy-alert-title,.rst-content .attention .admonition-title,.rst-content .attention .wy-alert-title,.rst-content .caution .admonition-title,.rst-content .caution .wy-alert-title,.rst-content .warning .admonition-title,.rst-content .warning .wy-alert-title,.rst-content .wy-alert-warning.admonition .admonition-title,.rst-content .wy-alert-warning.admonition .wy-alert-title,.rst-content .wy-alert-warning.danger .admonition-title,.rst-content .wy-alert-warning.danger .wy-alert-title,.rst-content .wy-alert-warning.error .admonition-title,.rst-content .wy-alert-warning.error .wy-alert-title,.rst-content .wy-alert-warning.hint .admonition-title,.rst-content .wy-alert-warning.hint .wy-alert-title,.rst-content .wy-alert-warning.important .admonition-title,.rst-content .wy-alert-warning.important .wy-alert-title,.rst-content .wy-alert-warning.note .admonition-title,.rst-content .wy-alert-warning.note .wy-alert-title,.rst-content .wy-alert-warning.seealso .admonition-title,.rst-content .wy-alert-warning.seealso .wy-alert-title,.rst-content .wy-alert-warning.tip .admonition-title,.rst-content .wy-alert-warning.tip .wy-alert-title,.rst-content .wy-alert.wy-alert-warning .admonition-title,.wy-alert.wy-alert-warning .rst-content .admonition-title,.wy-alert.wy-alert-warning .wy-alert-title{background:#f0b37e}.rst-content .note,.rst-content .seealso,.rst-content .wy-alert-info.admonition,.rst-content .wy-alert-info.admonition-todo,.rst-content .wy-alert-info.attention,.rst-content .wy-alert-info.caution,.rst-content .wy-alert-info.danger,.rst-content .wy-alert-info.error,.rst-content .wy-alert-info.hint,.rst-content .wy-alert-info.important,.rst-content .wy-alert-info.tip,.rst-content .wy-alert-info.warning,.wy-alert.wy-alert-info{background:#e7f2fa}.rst-content .note .admonition-title,.rst-content .note .wy-alert-title,.rst-content .seealso .admonition-title,.rst-content .seealso .wy-alert-title,.rst-content .wy-alert-info.admonition-todo .admonition-title,.rst-content .wy-alert-info.admonition-todo .wy-alert-title,.rst-content .wy-alert-info.admonition .admonition-title,.rst-content .wy-alert-info.admonition .wy-alert-title,.rst-content .wy-alert-info.attention .admonition-title,.rst-content .wy-alert-info.attention .wy-alert-title,.rst-content .wy-alert-info.caution .admonition-title,.rst-content .wy-alert-info.caution .wy-alert-title,.rst-content .wy-alert-info.danger .admonition-title,.rst-content .wy-alert-info.danger .wy-alert-title,.rst-content .wy-alert-info.error .admonition-title,.rst-content .wy-alert-info.error .wy-alert-title,.rst-content .wy-alert-info.hint .admonition-title,.rst-content .wy-alert-info.hint .wy-alert-title,.rst-content .wy-alert-info.important .admonition-title,.rst-content .wy-alert-info.important .wy-alert-title,.rst-content .wy-alert-info.tip .admonition-title,.rst-content .wy-alert-info.tip .wy-alert-title,.rst-content .wy-alert-info.warning .admonition-title,.rst-content .wy-alert-info.warning .wy-alert-title,.rst-content .wy-alert.wy-alert-info .admonition-title,.wy-alert.wy-alert-info .rst-content .admonition-title,.wy-alert.wy-alert-info .wy-alert-title{background:#6ab0de}.rst-content .hint,.rst-content .important,.rst-content .tip,.rst-content .wy-alert-success.admonition,.rst-content .wy-alert-success.admonition-todo,.rst-content .wy-alert-success.attention,.rst-content .wy-alert-success.caution,.rst-content .wy-alert-success.danger,.rst-content .wy-alert-success.error,.rst-content .wy-alert-success.note,.rst-content .wy-alert-success.seealso,.rst-content .wy-alert-success.warning,.wy-alert.wy-alert-success{background:#dbfaf4}.rst-content .hint .admonition-title,.rst-content .hint .wy-alert-title,.rst-content .important .admonition-title,.rst-content .important .wy-alert-title,.rst-content .tip .admonition-title,.rst-content .tip .wy-alert-title,.rst-content .wy-alert-success.admonition-todo .admonition-title,.rst-content .wy-alert-success.admonition-todo .wy-alert-title,.rst-content .wy-alert-success.admonition .admonition-title,.rst-content .wy-alert-success.admonition .wy-alert-title,.rst-content .wy-alert-success.attention .admonition-title,.rst-content .wy-alert-success.attention .wy-alert-title,.rst-content .wy-alert-success.caution .admonition-title,.rst-content .wy-alert-success.caution .wy-alert-title,.rst-content .wy-alert-success.danger .admonition-title,.rst-content .wy-alert-success.danger .wy-alert-title,.rst-content .wy-alert-success.error .admonition-title,.rst-content .wy-alert-success.error .wy-alert-title,.rst-content .wy-alert-success.note .admonition-title,.rst-content .wy-alert-success.note .wy-alert-title,.rst-content .wy-alert-success.seealso .admonition-title,.rst-content .wy-alert-success.seealso .wy-alert-title,.rst-content .wy-alert-success.warning .admonition-title,.rst-content .wy-alert-success.warning .wy-alert-title,.rst-content .wy-alert.wy-alert-success .admonition-title,.wy-alert.wy-alert-success .rst-content .admonition-title,.wy-alert.wy-alert-success .wy-alert-title{background:#1abc9c}.rst-content .wy-alert-neutral.admonition,.rst-content .wy-alert-neutral.admonition-todo,.rst-content .wy-alert-neutral.attention,.rst-content .wy-alert-neutral.caution,.rst-content .wy-alert-neutral.danger,.rst-content .wy-alert-neutral.error,.rst-content .wy-alert-neutral.hint,.rst-content .wy-alert-neutral.important,.rst-content .wy-alert-neutral.note,.rst-content .wy-alert-neutral.seealso,.rst-content .wy-alert-neutral.tip,.rst-content .wy-alert-neutral.warning,.wy-alert.wy-alert-neutral{background:#f3f6f6}.rst-content .wy-alert-neutral.admonition-todo .admonition-title,.rst-content .wy-alert-neutral.admonition-todo .wy-alert-title,.rst-content .wy-alert-neutral.admonition .admonition-title,.rst-content .wy-alert-neutral.admonition .wy-alert-title,.rst-content .wy-alert-neutral.attention .admonition-title,.rst-content .wy-alert-neutral.attention .wy-alert-title,.rst-content .wy-alert-neutral.caution .admonition-title,.rst-content .wy-alert-neutral.caution .wy-alert-title,.rst-content .wy-alert-neutral.danger .admonition-title,.rst-content .wy-alert-neutral.danger .wy-alert-title,.rst-content .wy-alert-neutral.error .admonition-title,.rst-content .wy-alert-neutral.error .wy-alert-title,.rst-content .wy-alert-neutral.hint .admonition-title,.rst-content .wy-alert-neutral.hint .wy-alert-title,.rst-content .wy-alert-neutral.important .admonition-title,.rst-content .wy-alert-neutral.important .wy-alert-title,.rst-content .wy-alert-neutral.note .admonition-title,.rst-content .wy-alert-neutral.note .wy-alert-title,.rst-content .wy-alert-neutral.seealso .admonition-title,.rst-content .wy-alert-neutral.seealso .wy-alert-title,.rst-content .wy-alert-neutral.tip .admonition-title,.rst-content .wy-alert-neutral.tip .wy-alert-title,.rst-content .wy-alert-neutral.warning .admonition-title,.rst-content .wy-alert-neutral.warning .wy-alert-title,.rst-content .wy-alert.wy-alert-neutral .admonition-title,.wy-alert.wy-alert-neutral .rst-content .admonition-title,.wy-alert.wy-alert-neutral .wy-alert-title{color:#404040;background:#e1e4e5}.rst-content .wy-alert-neutral.admonition-todo a,.rst-content .wy-alert-neutral.admonition a,.rst-content .wy-alert-neutral.attention a,.rst-content .wy-alert-neutral.caution a,.rst-content .wy-alert-neutral.danger a,.rst-content .wy-alert-neutral.error a,.rst-content .wy-alert-neutral.hint a,.rst-content .wy-alert-neutral.important a,.rst-content .wy-alert-neutral.note a,.rst-content .wy-alert-neutral.seealso a,.rst-content .wy-alert-neutral.tip a,.rst-content .wy-alert-neutral.warning a,.wy-alert.wy-alert-neutral a{color:#2980b9}.rst-content .admonition-todo p:last-child,.rst-content .admonition p:last-child,.rst-content .attention p:last-child,.rst-content .caution p:last-child,.rst-content .danger p:last-child,.rst-content .error p:last-child,.rst-content .hint p:last-child,.rst-content .important p:last-child,.rst-content .note p:last-child,.rst-content .seealso p:last-child,.rst-content .tip p:last-child,.rst-content .warning p:last-child,.wy-alert p:last-child{margin-bottom:0}.wy-tray-container{position:fixed;bottom:0;left:0;z-index:600}.wy-tray-container li{display:block;width:300px;background:transparent;color:#fff;text-align:center;box-shadow:0 5px 5px 0 rgba(0,0,0,.1);padding:0 24px;min-width:20%;opacity:0;height:0;line-height:56px;overflow:hidden;-webkit-transition:all .3s ease-in;-moz-transition:all .3s ease-in;transition:all .3s ease-in}.wy-tray-container li.wy-tray-item-success{background:#27ae60}.wy-tray-container li.wy-tray-item-info{background:#2980b9}.wy-tray-container li.wy-tray-item-warning{background:#e67e22}.wy-tray-container li.wy-tray-item-danger{background:#e74c3c}.wy-tray-container li.on{opacity:1;height:56px}@media screen and (max-width:768px){.wy-tray-container{bottom:auto;top:0;width:100%}.wy-tray-container li{width:100%}}button{font-size:100%;margin:0;vertical-align:baseline;*vertical-align:middle;cursor:pointer;line-height:normal;-webkit-appearance:button;*overflow:visible}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}button[disabled]{cursor:default}.btn{display:inline-block;border-radius:2px;line-height:normal;white-space:nowrap;text-align:center;cursor:pointer;font-size:100%;padding:6px 12px 8px;color:#fff;border:1px solid rgba(0,0,0,.1);background-color:#27ae60;text-decoration:none;font-weight:400;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;box-shadow:inset 0 1px 2px -1px hsla(0,0%,100%,.5),inset 0 -2px 0 0 rgba(0,0,0,.1);outline-none:false;vertical-align:middle;*display:inline;zoom:1;-webkit-user-drag:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-transition:all .1s linear;-moz-transition:all .1s linear;transition:all .1s linear}.btn-hover{background:#2e8ece;color:#fff}.btn:hover{background:#2cc36b;color:#fff}.btn:focus{background:#2cc36b;outline:0}.btn:active{box-shadow:inset 0 -1px 0 0 rgba(0,0,0,.05),inset 0 2px 0 0 rgba(0,0,0,.1);padding:8px 12px 6px}.btn:visited{color:#fff}.btn-disabled,.btn-disabled:active,.btn-disabled:focus,.btn-disabled:hover,.btn:disabled{background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false);filter:alpha(opacity=40);opacity:.4;cursor:not-allowed;box-shadow:none}.btn::-moz-focus-inner{padding:0;border:0}.btn-small{font-size:80%}.btn-info{background-color:#2980b9!important}.btn-info:hover{background-color:#2e8ece!important}.btn-neutral{background-color:#f3f6f6!important;color:#404040!important}.btn-neutral:hover{background-color:#e5ebeb!important;color:#404040}.btn-neutral:visited{color:#404040!important}.btn-success{background-color:#27ae60!important}.btn-success:hover{background-color:#295!important}.btn-danger{background-color:#e74c3c!important}.btn-danger:hover{background-color:#ea6153!important}.btn-warning{background-color:#e67e22!important}.btn-warning:hover{background-color:#e98b39!important}.btn-invert{background-color:#222}.btn-invert:hover{background-color:#2f2f2f!important}.btn-link{background-color:transparent!important;color:#2980b9;box-shadow:none;border-color:transparent!important}.btn-link:active,.btn-link:hover{background-color:transparent!important;color:#409ad5!important;box-shadow:none}.btn-link:visited{color:#9b59b6}.wy-btn-group .btn,.wy-control .btn{vertical-align:middle}.wy-btn-group{margin-bottom:24px;*zoom:1}.wy-btn-group:after,.wy-btn-group:before{display:table;content:""}.wy-btn-group:after{clear:both}.wy-dropdown{position:relative;display:inline-block}.wy-dropdown-active .wy-dropdown-menu{display:block}.wy-dropdown-menu{position:absolute;left:0;display:none;float:left;top:100%;min-width:100%;background:#fcfcfc;z-index:100;border:1px solid #cfd7dd;box-shadow:0 2px 2px 0 rgba(0,0,0,.1);padding:12px}.wy-dropdown-menu>dd>a{display:block;clear:both;color:#404040;white-space:nowrap;font-size:90%;padding:0 12px;cursor:pointer}.wy-dropdown-menu>dd>a:hover{background:#2980b9;color:#fff}.wy-dropdown-menu>dd.divider{border-top:1px solid #cfd7dd;margin:6px 0}.wy-dropdown-menu>dd.search{padding-bottom:12px}.wy-dropdown-menu>dd.search input[type=search]{width:100%}.wy-dropdown-menu>dd.call-to-action{background:#e3e3e3;text-transform:uppercase;font-weight:500;font-size:80%}.wy-dropdown-menu>dd.call-to-action:hover{background:#e3e3e3}.wy-dropdown-menu>dd.call-to-action .btn{color:#fff}.wy-dropdown.wy-dropdown-up .wy-dropdown-menu{bottom:100%;top:auto;left:auto;right:0}.wy-dropdown.wy-dropdown-bubble .wy-dropdown-menu{background:#fcfcfc;margin-top:2px}.wy-dropdown.wy-dropdown-bubble .wy-dropdown-menu a{padding:6px 12px}.wy-dropdown.wy-dropdown-bubble .wy-dropdown-menu a:hover{background:#2980b9;color:#fff}.wy-dropdown.wy-dropdown-left .wy-dropdown-menu{right:0;left:auto;text-align:right}.wy-dropdown-arrow:before{content:" ";border-bottom:5px solid #f5f5f5;border-left:5px solid transparent;border-right:5px solid transparent;position:absolute;display:block;top:-4px;left:50%;margin-left:-3px}.wy-dropdown-arrow.wy-dropdown-arrow-left:before{left:11px}.wy-form-stacked select{display:block}.wy-form-aligned .wy-help-inline,.wy-form-aligned input,.wy-form-aligned label,.wy-form-aligned select,.wy-form-aligned textarea{display:inline-block;*display:inline;*zoom:1;vertical-align:middle}.wy-form-aligned .wy-control-group>label{display:inline-block;vertical-align:middle;width:10em;margin:6px 12px 0 0;float:left}.wy-form-aligned .wy-control{float:left}.wy-form-aligned .wy-control label{display:block}.wy-form-aligned .wy-control select{margin-top:6px}fieldset{margin:0}fieldset,legend{border:0;padding:0}legend{width:100%;white-space:normal;margin-bottom:24px;font-size:150%;*margin-left:-7px}label,legend{display:block}label{margin:0 0 .3125em;color:#333;font-size:90%}input,select,textarea{font-size:100%;margin:0;vertical-align:baseline;*vertical-align:middle}.wy-control-group{margin-bottom:24px;max-width:1200px;margin-left:auto;margin-right:auto;*zoom:1}.wy-control-group:after,.wy-control-group:before{display:table;content:""}.wy-control-group:after{clear:both}.wy-control-group.wy-control-group-required>label:after{content:" *";color:#e74c3c}.wy-control-group .wy-form-full,.wy-control-group .wy-form-halves,.wy-control-group .wy-form-thirds{padding-bottom:12px}.wy-control-group .wy-form-full input[type=color],.wy-control-group .wy-form-full input[type=date],.wy-control-group .wy-form-full input[type=datetime-local],.wy-control-group .wy-form-full input[type=datetime],.wy-control-group .wy-form-full input[type=email],.wy-control-group .wy-form-full input[type=month],.wy-control-group .wy-form-full input[type=number],.wy-control-group .wy-form-full input[type=password],.wy-control-group .wy-form-full input[type=search],.wy-control-group .wy-form-full input[type=tel],.wy-control-group .wy-form-full input[type=text],.wy-control-group .wy-form-full input[type=time],.wy-control-group .wy-form-full input[type=url],.wy-control-group .wy-form-full input[type=week],.wy-control-group .wy-form-full select,.wy-control-group .wy-form-halves input[type=color],.wy-control-group .wy-form-halves input[type=date],.wy-control-group .wy-form-halves input[type=datetime-local],.wy-control-group .wy-form-halves input[type=datetime],.wy-control-group .wy-form-halves input[type=email],.wy-control-group .wy-form-halves input[type=month],.wy-control-group .wy-form-halves input[type=number],.wy-control-group .wy-form-halves input[type=password],.wy-control-group .wy-form-halves input[type=search],.wy-control-group .wy-form-halves input[type=tel],.wy-control-group .wy-form-halves input[type=text],.wy-control-group .wy-form-halves input[type=time],.wy-control-group .wy-form-halves input[type=url],.wy-control-group .wy-form-halves input[type=week],.wy-control-group .wy-form-halves select,.wy-control-group .wy-form-thirds input[type=color],.wy-control-group .wy-form-thirds input[type=date],.wy-control-group .wy-form-thirds input[type=datetime-local],.wy-control-group .wy-form-thirds input[type=datetime],.wy-control-group .wy-form-thirds input[type=email],.wy-control-group .wy-form-thirds input[type=month],.wy-control-group .wy-form-thirds input[type=number],.wy-control-group .wy-form-thirds input[type=password],.wy-control-group .wy-form-thirds input[type=search],.wy-control-group .wy-form-thirds input[type=tel],.wy-control-group .wy-form-thirds input[type=text],.wy-control-group .wy-form-thirds input[type=time],.wy-control-group .wy-form-thirds input[type=url],.wy-control-group .wy-form-thirds input[type=week],.wy-control-group .wy-form-thirds select{width:100%}.wy-control-group .wy-form-full{float:left;display:block;width:100%;margin-right:0}.wy-control-group .wy-form-full:last-child{margin-right:0}.wy-control-group .wy-form-halves{float:left;display:block;margin-right:2.35765%;width:48.82117%}.wy-control-group .wy-form-halves:last-child,.wy-control-group .wy-form-halves:nth-of-type(2n){margin-right:0}.wy-control-group .wy-form-halves:nth-of-type(odd){clear:left}.wy-control-group .wy-form-thirds{float:left;display:block;margin-right:2.35765%;width:31.76157%}.wy-control-group .wy-form-thirds:last-child,.wy-control-group .wy-form-thirds:nth-of-type(3n){margin-right:0}.wy-control-group .wy-form-thirds:nth-of-type(3n+1){clear:left}.wy-control-group.wy-control-group-no-input .wy-control,.wy-control-no-input{margin:6px 0 0;font-size:90%}.wy-control-no-input{display:inline-block}.wy-control-group.fluid-input input[type=color],.wy-control-group.fluid-input input[type=date],.wy-control-group.fluid-input input[type=datetime-local],.wy-control-group.fluid-input input[type=datetime],.wy-control-group.fluid-input input[type=email],.wy-control-group.fluid-input input[type=month],.wy-control-group.fluid-input input[type=number],.wy-control-group.fluid-input input[type=password],.wy-control-group.fluid-input input[type=search],.wy-control-group.fluid-input input[type=tel],.wy-control-group.fluid-input input[type=text],.wy-control-group.fluid-input input[type=time],.wy-control-group.fluid-input input[type=url],.wy-control-group.fluid-input input[type=week]{width:100%}.wy-form-message-inline{padding-left:.3em;color:#666;font-size:90%}.wy-form-message{display:block;color:#999;font-size:70%;margin-top:.3125em;font-style:italic}.wy-form-message p{font-size:inherit;font-style:italic;margin-bottom:6px}.wy-form-message p:last-child{margin-bottom:0}input{line-height:normal}input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;*overflow:visible}input[type=color],input[type=date],input[type=datetime-local],input[type=datetime],input[type=email],input[type=month],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],input[type=week]{-webkit-appearance:none;padding:6px;display:inline-block;border:1px solid #ccc;font-size:80%;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;box-shadow:inset 0 1px 3px #ddd;border-radius:0;-webkit-transition:border .3s linear;-moz-transition:border .3s linear;transition:border .3s linear}input[type=datetime-local]{padding:.34375em .625em}input[disabled]{cursor:default}input[type=checkbox],input[type=radio]{padding:0;margin-right:.3125em;*height:13px;*width:13px}input[type=checkbox],input[type=radio],input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}input[type=color]:focus,input[type=date]:focus,input[type=datetime-local]:focus,input[type=datetime]:focus,input[type=email]:focus,input[type=month]:focus,input[type=number]:focus,input[type=password]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=time]:focus,input[type=url]:focus,input[type=week]:focus{outline:0;outline:thin dotted\9;border-color:#333}input.no-focus:focus{border-color:#ccc!important}input[type=checkbox]:focus,input[type=file]:focus,input[type=radio]:focus{outline:thin dotted #333;outline:1px auto #129fea}input[type=color][disabled],input[type=date][disabled],input[type=datetime-local][disabled],input[type=datetime][disabled],input[type=email][disabled],input[type=month][disabled],input[type=number][disabled],input[type=password][disabled],input[type=search][disabled],input[type=tel][disabled],input[type=text][disabled],input[type=time][disabled],input[type=url][disabled],input[type=week][disabled]{cursor:not-allowed;background-color:#fafafa}input:focus:invalid,select:focus:invalid,textarea:focus:invalid{color:#e74c3c;border:1px solid #e74c3c}input:focus:invalid:focus,select:focus:invalid:focus,textarea:focus:invalid:focus{border-color:#e74c3c}input[type=checkbox]:focus:invalid:focus,input[type=file]:focus:invalid:focus,input[type=radio]:focus:invalid:focus{outline-color:#e74c3c}input.wy-input-large{padding:12px;font-size:100%}textarea{overflow:auto;vertical-align:top;width:100%;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif}select,textarea{padding:.5em .625em;display:inline-block;border:1px solid #ccc;font-size:80%;box-shadow:inset 0 1px 3px #ddd;-webkit-transition:border .3s linear;-moz-transition:border .3s linear;transition:border .3s linear}select{border:1px solid #ccc;background-color:#fff}select[multiple]{height:auto}select:focus,textarea:focus{outline:0}input[readonly],select[disabled],select[readonly],textarea[disabled],textarea[readonly]{cursor:not-allowed;background-color:#fafafa}input[type=checkbox][disabled],input[type=radio][disabled]{cursor:not-allowed}.wy-checkbox,.wy-radio{margin:6px 0;color:#404040;display:block}.wy-checkbox input,.wy-radio input{vertical-align:baseline}.wy-form-message-inline{display:inline-block;*display:inline;*zoom:1;vertical-align:middle}.wy-input-prefix,.wy-input-suffix{white-space:nowrap;padding:6px}.wy-input-prefix .wy-input-context,.wy-input-suffix .wy-input-context{line-height:27px;padding:0 8px;display:inline-block;font-size:80%;background-color:#f3f6f6;border:1px solid #ccc;color:#999}.wy-input-suffix .wy-input-context{border-left:0}.wy-input-prefix .wy-input-context{border-right:0}.wy-switch{position:relative;display:block;height:24px;margin-top:12px;cursor:pointer}.wy-switch:before{left:0;top:0;width:36px;height:12px;background:#ccc}.wy-switch:after,.wy-switch:before{position:absolute;content:"";display:block;border-radius:4px;-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.wy-switch:after{width:18px;height:18px;background:#999;left:-3px;top:-3px}.wy-switch span{position:absolute;left:48px;display:block;font-size:12px;color:#ccc;line-height:1}.wy-switch.active:before{background:#1e8449}.wy-switch.active:after{left:24px;background:#27ae60}.wy-switch.disabled{cursor:not-allowed;opacity:.8}.wy-control-group.wy-control-group-error .wy-form-message,.wy-control-group.wy-control-group-error>label{color:#e74c3c}.wy-control-group.wy-control-group-error input[type=color],.wy-control-group.wy-control-group-error input[type=date],.wy-control-group.wy-control-group-error input[type=datetime-local],.wy-control-group.wy-control-group-error input[type=datetime],.wy-control-group.wy-control-group-error input[type=email],.wy-control-group.wy-control-group-error input[type=month],.wy-control-group.wy-control-group-error input[type=number],.wy-control-group.wy-control-group-error input[type=password],.wy-control-group.wy-control-group-error input[type=search],.wy-control-group.wy-control-group-error input[type=tel],.wy-control-group.wy-control-group-error input[type=text],.wy-control-group.wy-control-group-error input[type=time],.wy-control-group.wy-control-group-error input[type=url],.wy-control-group.wy-control-group-error input[type=week],.wy-control-group.wy-control-group-error textarea{border:1px solid #e74c3c}.wy-inline-validate{white-space:nowrap}.wy-inline-validate .wy-input-context{padding:.5em .625em;display:inline-block;font-size:80%}.wy-inline-validate.wy-inline-validate-success .wy-input-context{color:#27ae60}.wy-inline-validate.wy-inline-validate-danger .wy-input-context{color:#e74c3c}.wy-inline-validate.wy-inline-validate-warning .wy-input-context{color:#e67e22}.wy-inline-validate.wy-inline-validate-info .wy-input-context{color:#2980b9}.rotate-90{-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg)}.rotate-180{-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-ms-transform:rotate(180deg);-o-transform:rotate(180deg);transform:rotate(180deg)}.rotate-270{-webkit-transform:rotate(270deg);-moz-transform:rotate(270deg);-ms-transform:rotate(270deg);-o-transform:rotate(270deg);transform:rotate(270deg)}.mirror{-webkit-transform:scaleX(-1);-moz-transform:scaleX(-1);-ms-transform:scaleX(-1);-o-transform:scaleX(-1);transform:scaleX(-1)}.mirror.rotate-90{-webkit-transform:scaleX(-1) rotate(90deg);-moz-transform:scaleX(-1) rotate(90deg);-ms-transform:scaleX(-1) rotate(90deg);-o-transform:scaleX(-1) rotate(90deg);transform:scaleX(-1) rotate(90deg)}.mirror.rotate-180{-webkit-transform:scaleX(-1) rotate(180deg);-moz-transform:scaleX(-1) rotate(180deg);-ms-transform:scaleX(-1) rotate(180deg);-o-transform:scaleX(-1) rotate(180deg);transform:scaleX(-1) rotate(180deg)}.mirror.rotate-270{-webkit-transform:scaleX(-1) rotate(270deg);-moz-transform:scaleX(-1) rotate(270deg);-ms-transform:scaleX(-1) rotate(270deg);-o-transform:scaleX(-1) rotate(270deg);transform:scaleX(-1) rotate(270deg)}@media only screen and (max-width:480px){.wy-form button[type=submit]{margin:.7em 0 0}.wy-form input[type=color],.wy-form input[type=date],.wy-form input[type=datetime-local],.wy-form input[type=datetime],.wy-form input[type=email],.wy-form input[type=month],.wy-form input[type=number],.wy-form input[type=password],.wy-form input[type=search],.wy-form input[type=tel],.wy-form input[type=text],.wy-form input[type=time],.wy-form input[type=url],.wy-form input[type=week],.wy-form label{margin-bottom:.3em;display:block}.wy-form input[type=color],.wy-form input[type=date],.wy-form input[type=datetime-local],.wy-form input[type=datetime],.wy-form input[type=email],.wy-form input[type=month],.wy-form input[type=number],.wy-form input[type=password],.wy-form input[type=search],.wy-form input[type=tel],.wy-form input[type=time],.wy-form input[type=url],.wy-form input[type=week]{margin-bottom:0}.wy-form-aligned .wy-control-group label{margin-bottom:.3em;text-align:left;display:block;width:100%}.wy-form-aligned .wy-control{margin:1.5em 0 0}.wy-form-message,.wy-form-message-inline,.wy-form .wy-help-inline{display:block;font-size:80%;padding:6px 0}}@media screen and (max-width:768px){.tablet-hide{display:none}}@media screen and (max-width:480px){.mobile-hide{display:none}}.float-left{float:left}.float-right{float:right}.full-width{width:100%}.rst-content table.docutils,.rst-content table.field-list,.wy-table{border-collapse:collapse;border-spacing:0;empty-cells:show;margin-bottom:24px}.rst-content table.docutils caption,.rst-content table.field-list caption,.wy-table caption{color:#000;font:italic 85%/1 arial,sans-serif;padding:1em 0;text-align:center}.rst-content table.docutils td,.rst-content table.docutils th,.rst-content table.field-list td,.rst-content table.field-list th,.wy-table td,.wy-table th{font-size:90%;margin:0;overflow:visible;padding:8px 16px}.rst-content table.docutils td:first-child,.rst-content table.docutils th:first-child,.rst-content table.field-list td:first-child,.rst-content table.field-list th:first-child,.wy-table td:first-child,.wy-table th:first-child{border-left-width:0}.rst-content table.docutils thead,.rst-content table.field-list thead,.wy-table thead{color:#000;text-align:left;vertical-align:bottom;white-space:nowrap}.rst-content table.docutils thead th,.rst-content table.field-list thead th,.wy-table thead th{font-weight:700;border-bottom:2px solid #e1e4e5}.rst-content table.docutils td,.rst-content table.field-list td,.wy-table td{background-color:transparent;vertical-align:middle}.rst-content table.docutils td p,.rst-content table.field-list td p,.wy-table td p{line-height:18px}.rst-content table.docutils td p:last-child,.rst-content table.field-list td p:last-child,.wy-table td p:last-child{margin-bottom:0}.rst-content table.docutils .wy-table-cell-min,.rst-content table.field-list .wy-table-cell-min,.wy-table .wy-table-cell-min{width:1%;padding-right:0}.rst-content table.docutils .wy-table-cell-min input[type=checkbox],.rst-content table.field-list .wy-table-cell-min input[type=checkbox],.wy-table .wy-table-cell-min input[type=checkbox]{margin:0}.wy-table-secondary{color:grey;font-size:90%}.wy-table-tertiary{color:grey;font-size:80%}.rst-content table.docutils:not(.field-list) tr:nth-child(2n-1) td,.wy-table-backed,.wy-table-odd td,.wy-table-striped tr:nth-child(2n-1) td{background-color:#f3f6f6}.rst-content table.docutils,.wy-table-bordered-all{border:1px solid #e1e4e5}.rst-content table.docutils td,.wy-table-bordered-all td{border-bottom:1px solid #e1e4e5;border-left:1px solid #e1e4e5}.rst-content table.docutils tbody>tr:last-child td,.wy-table-bordered-all tbody>tr:last-child td{border-bottom-width:0}.wy-table-bordered{border:1px solid #e1e4e5}.wy-table-bordered-rows td{border-bottom:1px solid #e1e4e5}.wy-table-bordered-rows tbody>tr:last-child td{border-bottom-width:0}.wy-table-horizontal td,.wy-table-horizontal th{border-width:0 0 1px;border-bottom:1px solid #e1e4e5}.wy-table-horizontal tbody>tr:last-child td{border-bottom-width:0}.wy-table-responsive{margin-bottom:24px;max-width:100%;overflow:auto}.wy-table-responsive table{margin-bottom:0!important}.wy-table-responsive table td,.wy-table-responsive table th{white-space:nowrap}a{color:#2980b9;text-decoration:none;cursor:pointer}a:hover{color:#3091d1}a:visited{color:#9b59b6}html{height:100%}body,html{overflow-x:hidden}body{font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;font-weight:400;color:#404040;min-height:100%;background:#edf0f2}.wy-text-left{text-align:left}.wy-text-center{text-align:center}.wy-text-right{text-align:right}.wy-text-large{font-size:120%}.wy-text-normal{font-size:100%}.wy-text-small,small{font-size:80%}.wy-text-strike{text-decoration:line-through}.wy-text-warning{color:#e67e22!important}a.wy-text-warning:hover{color:#eb9950!important}.wy-text-info{color:#2980b9!important}a.wy-text-info:hover{color:#409ad5!important}.wy-text-success{color:#27ae60!important}a.wy-text-success:hover{color:#36d278!important}.wy-text-danger{color:#e74c3c!important}a.wy-text-danger:hover{color:#ed7669!important}.wy-text-neutral{color:#404040!important}a.wy-text-neutral:hover{color:#595959!important}.rst-content .toctree-wrapper>p.caption,h1,h2,h3,h4,h5,h6,legend{margin-top:0;font-weight:700;font-family:Roboto Slab,ff-tisa-web-pro,Georgia,Arial,sans-serif}p{line-height:24px;font-size:16px;margin:0 0 24px}h1{font-size:175%}.rst-content .toctree-wrapper>p.caption,h2{font-size:150%}h3{font-size:125%}h4{font-size:115%}h5{font-size:110%}h6{font-size:100%}hr{display:block;height:1px;border:0;border-top:1px solid #e1e4e5;margin:24px 0;padding:0}.rst-content code,.rst-content tt,code{white-space:nowrap;max-width:100%;background:#fff;border:1px solid #e1e4e5;font-size:75%;padding:0 5px;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;color:#e74c3c;overflow-x:auto}.rst-content tt.code-large,code.code-large{font-size:90%}.rst-content .section ul,.rst-content .toctree-wrapper ul,.rst-content section ul,.wy-plain-list-disc,article ul{list-style:disc;line-height:24px;margin-bottom:24px}.rst-content .section ul li,.rst-content .toctree-wrapper ul li,.rst-content section ul li,.wy-plain-list-disc li,article ul li{list-style:disc;margin-left:24px}.rst-content .section ul li p:last-child,.rst-content .section ul li ul,.rst-content .toctree-wrapper ul li p:last-child,.rst-content .toctree-wrapper ul li ul,.rst-content section ul li p:last-child,.rst-content section ul li ul,.wy-plain-list-disc li p:last-child,.wy-plain-list-disc li ul,article ul li p:last-child,article ul li ul{margin-bottom:0}.rst-content .section ul li li,.rst-content .toctree-wrapper ul li li,.rst-content section ul li li,.wy-plain-list-disc li li,article ul li li{list-style:circle}.rst-content .section ul li li li,.rst-content .toctree-wrapper ul li li li,.rst-content section ul li li li,.wy-plain-list-disc li li li,article ul li li li{list-style:square}.rst-content .section ul li ol li,.rst-content .toctree-wrapper ul li ol li,.rst-content section ul li ol li,.wy-plain-list-disc li ol li,article ul li ol li{list-style:decimal}.rst-content .section ol,.rst-content .section ol.arabic,.rst-content .toctree-wrapper ol,.rst-content .toctree-wrapper ol.arabic,.rst-content section ol,.rst-content section ol.arabic,.wy-plain-list-decimal,article ol{list-style:decimal;line-height:24px;margin-bottom:24px}.rst-content .section ol.arabic li,.rst-content .section ol li,.rst-content .toctree-wrapper ol.arabic li,.rst-content .toctree-wrapper ol li,.rst-content section ol.arabic li,.rst-content section ol li,.wy-plain-list-decimal li,article ol li{list-style:decimal;margin-left:24px}.rst-content .section ol.arabic li ul,.rst-content .section ol li p:last-child,.rst-content .section ol li ul,.rst-content .toctree-wrapper ol.arabic li ul,.rst-content .toctree-wrapper ol li p:last-child,.rst-content .toctree-wrapper ol li ul,.rst-content section ol.arabic li ul,.rst-content section ol li p:last-child,.rst-content section ol li ul,.wy-plain-list-decimal li p:last-child,.wy-plain-list-decimal li ul,article ol li p:last-child,article ol li ul{margin-bottom:0}.rst-content .section ol.arabic li ul li,.rst-content .section ol li ul li,.rst-content .toctree-wrapper ol.arabic li ul li,.rst-content .toctree-wrapper ol li ul li,.rst-content section ol.arabic li ul li,.rst-content section ol li ul li,.wy-plain-list-decimal li ul li,article ol li ul li{list-style:disc}.wy-breadcrumbs{*zoom:1}.wy-breadcrumbs:after,.wy-breadcrumbs:before{display:table;content:""}.wy-breadcrumbs:after{clear:both}.wy-breadcrumbs li{display:inline-block}.wy-breadcrumbs li.wy-breadcrumbs-aside{float:right}.wy-breadcrumbs li a{display:inline-block;padding:5px}.wy-breadcrumbs li a:first-child{padding-left:0}.rst-content .wy-breadcrumbs li tt,.wy-breadcrumbs li .rst-content tt,.wy-breadcrumbs li code{padding:5px;border:none;background:none}.rst-content .wy-breadcrumbs li tt.literal,.wy-breadcrumbs li .rst-content tt.literal,.wy-breadcrumbs li code.literal{color:#404040}.wy-breadcrumbs-extra{margin-bottom:0;color:#b3b3b3;font-size:80%;display:inline-block}@media screen and (max-width:480px){.wy-breadcrumbs-extra,.wy-breadcrumbs li.wy-breadcrumbs-aside{display:none}}@media print{.wy-breadcrumbs li.wy-breadcrumbs-aside{display:none}}html{font-size:16px}.wy-affix{position:fixed;top:1.618em}.wy-menu a:hover{text-decoration:none}.wy-menu-horiz{*zoom:1}.wy-menu-horiz:after,.wy-menu-horiz:before{display:table;content:""}.wy-menu-horiz:after{clear:both}.wy-menu-horiz li,.wy-menu-horiz ul{display:inline-block}.wy-menu-horiz li:hover{background:hsla(0,0%,100%,.1)}.wy-menu-horiz li.divide-left{border-left:1px solid #404040}.wy-menu-horiz li.divide-right{border-right:1px solid #404040}.wy-menu-horiz a{height:32px;display:inline-block;line-height:32px;padding:0 16px}.wy-menu-vertical{width:300px}.wy-menu-vertical header,.wy-menu-vertical p.caption{color:#55a5d9;height:32px;line-height:32px;padding:0 1.618em;margin:12px 0 0;display:block;font-weight:700;text-transform:uppercase;font-size:85%;white-space:nowrap}.wy-menu-vertical ul{margin-bottom:0}.wy-menu-vertical li.divide-top{border-top:1px solid #404040}.wy-menu-vertical li.divide-bottom{border-bottom:1px solid #404040}.wy-menu-vertical li.current{background:#e3e3e3}.wy-menu-vertical li.current a{color:grey;border-right:1px solid #c9c9c9;padding:.4045em 2.427em}.wy-menu-vertical li.current a:hover{background:#d6d6d6}.rst-content .wy-menu-vertical li tt,.wy-menu-vertical li .rst-content tt,.wy-menu-vertical li code{border:none;background:inherit;color:inherit;padding-left:0;padding-right:0}.wy-menu-vertical li button.toctree-expand{display:block;float:left;margin-left:-1.2em;line-height:18px;color:#4d4d4d;border:none;background:none;padding:0}.wy-menu-vertical li.current>a,.wy-menu-vertical li.on a{color:#404040;font-weight:700;position:relative;background:#fcfcfc;border:none;padding:.4045em 1.618em}.wy-menu-vertical li.current>a:hover,.wy-menu-vertical li.on a:hover{background:#fcfcfc}.wy-menu-vertical li.current>a:hover button.toctree-expand,.wy-menu-vertical li.on a:hover button.toctree-expand{color:grey}.wy-menu-vertical li.current>a button.toctree-expand,.wy-menu-vertical li.on a button.toctree-expand{display:block;line-height:18px;color:#333}.wy-menu-vertical li.toctree-l1.current>a{border-bottom:1px solid #c9c9c9;border-top:1px solid #c9c9c9}.wy-menu-vertical .toctree-l1.current .toctree-l2>ul,.wy-menu-vertical .toctree-l2.current .toctree-l3>ul,.wy-menu-vertical .toctree-l3.current .toctree-l4>ul,.wy-menu-vertical .toctree-l4.current .toctree-l5>ul,.wy-menu-vertical .toctree-l5.current .toctree-l6>ul,.wy-menu-vertical .toctree-l6.current .toctree-l7>ul,.wy-menu-vertical .toctree-l7.current .toctree-l8>ul,.wy-menu-vertical .toctree-l8.current .toctree-l9>ul,.wy-menu-vertical .toctree-l9.current .toctree-l10>ul,.wy-menu-vertical .toctree-l10.current .toctree-l11>ul{display:none}.wy-menu-vertical .toctree-l1.current .current.toctree-l2>ul,.wy-menu-vertical .toctree-l2.current .current.toctree-l3>ul,.wy-menu-vertical .toctree-l3.current .current.toctree-l4>ul,.wy-menu-vertical .toctree-l4.current .current.toctree-l5>ul,.wy-menu-vertical .toctree-l5.current .current.toctree-l6>ul,.wy-menu-vertical .toctree-l6.current .current.toctree-l7>ul,.wy-menu-vertical .toctree-l7.current .current.toctree-l8>ul,.wy-menu-vertical .toctree-l8.current .current.toctree-l9>ul,.wy-menu-vertical .toctree-l9.current .current.toctree-l10>ul,.wy-menu-vertical .toctree-l10.current .current.toctree-l11>ul{display:block}.wy-menu-vertical li.toctree-l3,.wy-menu-vertical li.toctree-l4{font-size:.9em}.wy-menu-vertical li.toctree-l2 a,.wy-menu-vertical li.toctree-l3 a,.wy-menu-vertical li.toctree-l4 a,.wy-menu-vertical li.toctree-l5 a,.wy-menu-vertical li.toctree-l6 a,.wy-menu-vertical li.toctree-l7 a,.wy-menu-vertical li.toctree-l8 a,.wy-menu-vertical li.toctree-l9 a,.wy-menu-vertical li.toctree-l10 a{color:#404040}.wy-menu-vertical li.toctree-l2 a:hover button.toctree-expand,.wy-menu-vertical li.toctree-l3 a:hover button.toctree-expand,.wy-menu-vertical li.toctree-l4 a:hover button.toctree-expand,.wy-menu-vertical li.toctree-l5 a:hover button.toctree-expand,.wy-menu-vertical li.toctree-l6 a:hover button.toctree-expand,.wy-menu-vertical li.toctree-l7 a:hover button.toctree-expand,.wy-menu-vertical li.toctree-l8 a:hover button.toctree-expand,.wy-menu-vertical li.toctree-l9 a:hover button.toctree-expand,.wy-menu-vertical li.toctree-l10 a:hover button.toctree-expand{color:grey}.wy-menu-vertical li.toctree-l2.current li.toctree-l3>a,.wy-menu-vertical li.toctree-l3.current li.toctree-l4>a,.wy-menu-vertical li.toctree-l4.current li.toctree-l5>a,.wy-menu-vertical li.toctree-l5.current li.toctree-l6>a,.wy-menu-vertical li.toctree-l6.current li.toctree-l7>a,.wy-menu-vertical li.toctree-l7.current li.toctree-l8>a,.wy-menu-vertical li.toctree-l8.current li.toctree-l9>a,.wy-menu-vertical li.toctree-l9.current li.toctree-l10>a,.wy-menu-vertical li.toctree-l10.current li.toctree-l11>a{display:block}.wy-menu-vertical li.toctree-l2.current>a{padding:.4045em 2.427em}.wy-menu-vertical li.toctree-l2.current li.toctree-l3>a{padding:.4045em 1.618em .4045em 4.045em}.wy-menu-vertical li.toctree-l3.current>a{padding:.4045em 4.045em}.wy-menu-vertical li.toctree-l3.current li.toctree-l4>a{padding:.4045em 1.618em .4045em 5.663em}.wy-menu-vertical li.toctree-l4.current>a{padding:.4045em 5.663em}.wy-menu-vertical li.toctree-l4.current li.toctree-l5>a{padding:.4045em 1.618em .4045em 7.281em}.wy-menu-vertical li.toctree-l5.current>a{padding:.4045em 7.281em}.wy-menu-vertical li.toctree-l5.current li.toctree-l6>a{padding:.4045em 1.618em .4045em 8.899em}.wy-menu-vertical li.toctree-l6.current>a{padding:.4045em 8.899em}.wy-menu-vertical li.toctree-l6.current li.toctree-l7>a{padding:.4045em 1.618em .4045em 10.517em}.wy-menu-vertical li.toctree-l7.current>a{padding:.4045em 10.517em}.wy-menu-vertical li.toctree-l7.current li.toctree-l8>a{padding:.4045em 1.618em .4045em 12.135em}.wy-menu-vertical li.toctree-l8.current>a{padding:.4045em 12.135em}.wy-menu-vertical li.toctree-l8.current li.toctree-l9>a{padding:.4045em 1.618em .4045em 13.753em}.wy-menu-vertical li.toctree-l9.current>a{padding:.4045em 13.753em}.wy-menu-vertical li.toctree-l9.current li.toctree-l10>a{padding:.4045em 1.618em .4045em 15.371em}.wy-menu-vertical li.toctree-l10.current>a{padding:.4045em 15.371em}.wy-menu-vertical li.toctree-l10.current li.toctree-l11>a{padding:.4045em 1.618em .4045em 16.989em}.wy-menu-vertical li.toctree-l2.current>a,.wy-menu-vertical li.toctree-l2.current li.toctree-l3>a{background:#c9c9c9}.wy-menu-vertical li.toctree-l2 button.toctree-expand{color:#a3a3a3}.wy-menu-vertical li.toctree-l3.current>a,.wy-menu-vertical li.toctree-l3.current li.toctree-l4>a{background:#bdbdbd}.wy-menu-vertical li.toctree-l3 button.toctree-expand{color:#969696}.wy-menu-vertical li.current ul{display:block}.wy-menu-vertical li ul{margin-bottom:0;display:none}.wy-menu-vertical li ul li a{margin-bottom:0;color:#d9d9d9;font-weight:400}.wy-menu-vertical a{line-height:18px;padding:.4045em 1.618em;display:block;position:relative;font-size:90%;color:#d9d9d9}.wy-menu-vertical a:hover{background-color:#4e4a4a;cursor:pointer}.wy-menu-vertical a:hover button.toctree-expand{color:#d9d9d9}.wy-menu-vertical a:active{background-color:#2980b9;cursor:pointer;color:#fff}.wy-menu-vertical a:active button.toctree-expand{color:#fff}.wy-side-nav-search{display:block;width:300px;padding:.809em;margin-bottom:.809em;z-index:200;background-color:#2980b9;text-align:center;color:#fcfcfc}.wy-side-nav-search input[type=text]{width:100%;border-radius:50px;padding:6px 12px;border-color:#2472a4}.wy-side-nav-search img{display:block;margin:auto auto .809em;height:45px;width:45px;background-color:#2980b9;padding:5px;border-radius:100%}.wy-side-nav-search .wy-dropdown>a,.wy-side-nav-search>a{color:#fcfcfc;font-size:100%;font-weight:700;display:inline-block;padding:4px 6px;margin-bottom:.809em;max-width:100%}.wy-side-nav-search .wy-dropdown>a:hover,.wy-side-nav-search>a:hover{background:hsla(0,0%,100%,.1)}.wy-side-nav-search .wy-dropdown>a img.logo,.wy-side-nav-search>a img.logo{display:block;margin:0 auto;height:auto;width:auto;border-radius:0;max-width:100%;background:transparent}.wy-side-nav-search .wy-dropdown>a.icon img.logo,.wy-side-nav-search>a.icon img.logo{margin-top:.85em}.wy-side-nav-search>div.version{margin-top:-.4045em;margin-bottom:.809em;font-weight:400;color:hsla(0,0%,100%,.3)}.wy-nav .wy-menu-vertical header{color:#2980b9}.wy-nav .wy-menu-vertical a{color:#b3b3b3}.wy-nav .wy-menu-vertical a:hover{background-color:#2980b9;color:#fff}[data-menu-wrap]{-webkit-transition:all .2s ease-in;-moz-transition:all .2s ease-in;transition:all .2s ease-in;position:absolute;opacity:1;width:100%;opacity:0}[data-menu-wrap].move-center{left:0;right:auto;opacity:1}[data-menu-wrap].move-left{right:auto;left:-100%;opacity:0}[data-menu-wrap].move-right{right:-100%;left:auto;opacity:0}.wy-body-for-nav{background:#fcfcfc}.wy-grid-for-nav{position:absolute;width:100%;height:100%}.wy-nav-side{position:fixed;top:0;bottom:0;left:0;padding-bottom:2em;width:300px;overflow-x:hidden;overflow-y:hidden;min-height:100%;color:#9b9b9b;background:#343131;z-index:200}.wy-side-scroll{width:320px;position:relative;overflow-x:hidden;overflow-y:scroll;height:100%}.wy-nav-top{display:none;background:#2980b9;color:#fff;padding:.4045em .809em;position:relative;line-height:50px;text-align:center;font-size:100%;*zoom:1}.wy-nav-top:after,.wy-nav-top:before{display:table;content:""}.wy-nav-top:after{clear:both}.wy-nav-top a{color:#fff;font-weight:700}.wy-nav-top img{margin-right:12px;height:45px;width:45px;background-color:#2980b9;padding:5px;border-radius:100%}.wy-nav-top i{font-size:30px;float:left;cursor:pointer;padding-top:inherit}.wy-nav-content-wrap{margin-left:300px;background:#fcfcfc;min-height:100%}.wy-nav-content{padding:1.618em 3.236em;height:100%;max-width:800px;margin:auto}.wy-body-mask{position:fixed;width:100%;height:100%;background:rgba(0,0,0,.2);display:none;z-index:499}.wy-body-mask.on{display:block}footer{color:grey}footer p{margin-bottom:12px}.rst-content footer span.commit tt,footer span.commit .rst-content tt,footer span.commit code{padding:0;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;font-size:1em;background:none;border:none;color:grey}.rst-footer-buttons{*zoom:1}.rst-footer-buttons:after,.rst-footer-buttons:before{width:100%;display:table;content:""}.rst-footer-buttons:after{clear:both}.rst-breadcrumbs-buttons{margin-top:12px;*zoom:1}.rst-breadcrumbs-buttons:after,.rst-breadcrumbs-buttons:before{display:table;content:""}.rst-breadcrumbs-buttons:after{clear:both}#search-results .search li{margin-bottom:24px;border-bottom:1px solid #e1e4e5;padding-bottom:24px}#search-results .search li:first-child{border-top:1px solid #e1e4e5;padding-top:24px}#search-results .search li a{font-size:120%;margin-bottom:12px;display:inline-block}#search-results .context{color:grey;font-size:90%}.genindextable li>ul{margin-left:24px}@media screen and (max-width:768px){.wy-body-for-nav{background:#fcfcfc}.wy-nav-top{display:block}.wy-nav-side{left:-300px}.wy-nav-side.shift{width:85%;left:0}.wy-menu.wy-menu-vertical,.wy-side-nav-search,.wy-side-scroll{width:auto}.wy-nav-content-wrap{margin-left:0}.wy-nav-content-wrap .wy-nav-content{padding:1.618em}.wy-nav-content-wrap.shift{position:fixed;min-width:100%;left:85%;top:0;height:100%;overflow:hidden}}@media screen and (min-width:1100px){.wy-nav-content-wrap{background:rgba(0,0,0,.05)}.wy-nav-content{margin:0;background:#fcfcfc}}@media print{.rst-versions,.wy-nav-side,footer{display:none}.wy-nav-content-wrap{margin-left:0}}.rst-versions{position:fixed;bottom:0;left:0;width:300px;color:#fcfcfc;background:#1f1d1d;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;z-index:400}.rst-versions a{color:#2980b9;text-decoration:none}.rst-versions .rst-badge-small{display:none}.rst-versions .rst-current-version{padding:12px;background-color:#272525;display:block;text-align:right;font-size:90%;cursor:pointer;color:#27ae60;*zoom:1}.rst-versions .rst-current-version:after,.rst-versions .rst-current-version:before{display:table;content:""}.rst-versions .rst-current-version:after{clear:both}.rst-content .code-block-caption .rst-versions .rst-current-version .headerlink,.rst-content .eqno .rst-versions .rst-current-version .headerlink,.rst-content .rst-versions .rst-current-version .admonition-title,.rst-content code.download .rst-versions .rst-current-version span:first-child,.rst-content dl dt .rst-versions .rst-current-version .headerlink,.rst-content h1 .rst-versions .rst-current-version .headerlink,.rst-content h2 .rst-versions .rst-current-version .headerlink,.rst-content h3 .rst-versions .rst-current-version .headerlink,.rst-content h4 .rst-versions .rst-current-version .headerlink,.rst-content h5 .rst-versions .rst-current-version .headerlink,.rst-content h6 .rst-versions .rst-current-version .headerlink,.rst-content p .rst-versions .rst-current-version .headerlink,.rst-content table>caption .rst-versions .rst-current-version .headerlink,.rst-content tt.download .rst-versions .rst-current-version span:first-child,.rst-versions .rst-current-version .fa,.rst-versions .rst-current-version .icon,.rst-versions .rst-current-version .rst-content .admonition-title,.rst-versions .rst-current-version .rst-content .code-block-caption .headerlink,.rst-versions .rst-current-version .rst-content .eqno .headerlink,.rst-versions .rst-current-version .rst-content code.download span:first-child,.rst-versions .rst-current-version .rst-content dl dt .headerlink,.rst-versions .rst-current-version .rst-content h1 .headerlink,.rst-versions .rst-current-version .rst-content h2 .headerlink,.rst-versions .rst-current-version .rst-content h3 .headerlink,.rst-versions .rst-current-version .rst-content h4 .headerlink,.rst-versions .rst-current-version .rst-content h5 .headerlink,.rst-versions .rst-current-version .rst-content h6 .headerlink,.rst-versions .rst-current-version .rst-content p .headerlink,.rst-versions .rst-current-version .rst-content table>caption .headerlink,.rst-versions .rst-current-version .rst-content tt.download span:first-child,.rst-versions .rst-current-version .wy-menu-vertical li button.toctree-expand,.wy-menu-vertical li .rst-versions .rst-current-version button.toctree-expand{color:#fcfcfc}.rst-versions .rst-current-version .fa-book,.rst-versions .rst-current-version .icon-book{float:left}.rst-versions .rst-current-version.rst-out-of-date{background-color:#e74c3c;color:#fff}.rst-versions .rst-current-version.rst-active-old-version{background-color:#f1c40f;color:#000}.rst-versions.shift-up{height:auto;max-height:100%;overflow-y:scroll}.rst-versions.shift-up .rst-other-versions{display:block}.rst-versions .rst-other-versions{font-size:90%;padding:12px;color:grey;display:none}.rst-versions .rst-other-versions hr{display:block;height:1px;border:0;margin:20px 0;padding:0;border-top:1px solid #413d3d}.rst-versions .rst-other-versions dd{display:inline-block;margin:0}.rst-versions .rst-other-versions dd a{display:inline-block;padding:6px;color:#fcfcfc}.rst-versions.rst-badge{width:auto;bottom:20px;right:20px;left:auto;border:none;max-width:300px;max-height:90%}.rst-versions.rst-badge .fa-book,.rst-versions.rst-badge .icon-book{float:none;line-height:30px}.rst-versions.rst-badge.shift-up .rst-current-version{text-align:right}.rst-versions.rst-badge.shift-up .rst-current-version .fa-book,.rst-versions.rst-badge.shift-up .rst-current-version .icon-book{float:left}.rst-versions.rst-badge>.rst-current-version{width:auto;height:30px;line-height:30px;padding:0 6px;display:block;text-align:center}@media screen and (max-width:768px){.rst-versions{width:85%;display:none}.rst-versions.shift{display:block}}.rst-content .toctree-wrapper>p.caption,.rst-content h1,.rst-content h2,.rst-content h3,.rst-content h4,.rst-content h5,.rst-content h6{margin-bottom:24px}.rst-content img{max-width:100%;height:auto}.rst-content div.figure,.rst-content figure{margin-bottom:24px}.rst-content div.figure .caption-text,.rst-content figure .caption-text{font-style:italic}.rst-content div.figure p:last-child.caption,.rst-content figure p:last-child.caption{margin-bottom:0}.rst-content div.figure.align-center,.rst-content figure.align-center{text-align:center}.rst-content .section>a>img,.rst-content .section>img,.rst-content section>a>img,.rst-content section>img{margin-bottom:24px}.rst-content abbr[title]{text-decoration:none}.rst-content.style-external-links a.reference.external:after{font-family:FontAwesome;content:"\f08e";color:#b3b3b3;vertical-align:super;font-size:60%;margin:0 .2em}.rst-content blockquote{margin-left:24px;line-height:24px;margin-bottom:24px}.rst-content pre.literal-block{white-space:pre;margin:0;padding:12px;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;display:block;overflow:auto}.rst-content div[class^=highlight],.rst-content pre.literal-block{border:1px solid #e1e4e5;overflow-x:auto;margin:1px 0 24px}.rst-content div[class^=highlight] div[class^=highlight],.rst-content pre.literal-block div[class^=highlight]{padding:0;border:none;margin:0}.rst-content div[class^=highlight] td.code{width:100%}.rst-content .linenodiv pre{border-right:1px solid #e6e9ea;margin:0;padding:12px;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;user-select:none;pointer-events:none}.rst-content div[class^=highlight] pre{white-space:pre;margin:0;padding:12px;display:block;overflow:auto}.rst-content div[class^=highlight] pre .hll{display:block;margin:0 -12px;padding:0 12px}.rst-content .linenodiv pre,.rst-content div[class^=highlight] pre,.rst-content pre.literal-block{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;font-size:12px;line-height:1.4}.rst-content div.highlight .gp,.rst-content div.highlight span.linenos{user-select:none;pointer-events:none}.rst-content div.highlight span.linenos{display:inline-block;padding-left:0;padding-right:12px;margin-right:12px;border-right:1px solid #e6e9ea}.rst-content .code-block-caption{font-style:italic;font-size:85%;line-height:1;padding:1em 0;text-align:center}@media print{.rst-content .codeblock,.rst-content div[class^=highlight],.rst-content div[class^=highlight] pre{white-space:pre-wrap}}.rst-content .admonition,.rst-content .admonition-todo,.rst-content .attention,.rst-content .caution,.rst-content .danger,.rst-content .error,.rst-content .hint,.rst-content .important,.rst-content .note,.rst-content .seealso,.rst-content .tip,.rst-content .warning{clear:both}.rst-content .admonition-todo .last,.rst-content .admonition-todo>:last-child,.rst-content .admonition .last,.rst-content .admonition>:last-child,.rst-content .attention .last,.rst-content .attention>:last-child,.rst-content .caution .last,.rst-content .caution>:last-child,.rst-content .danger .last,.rst-content .danger>:last-child,.rst-content .error .last,.rst-content .error>:last-child,.rst-content .hint .last,.rst-content .hint>:last-child,.rst-content .important .last,.rst-content .important>:last-child,.rst-content .note .last,.rst-content .note>:last-child,.rst-content .seealso .last,.rst-content .seealso>:last-child,.rst-content .tip .last,.rst-content .tip>:last-child,.rst-content .warning .last,.rst-content .warning>:last-child{margin-bottom:0}.rst-content .admonition-title:before{margin-right:4px}.rst-content .admonition table{border-color:rgba(0,0,0,.1)}.rst-content .admonition table td,.rst-content .admonition table th{background:transparent!important;border-color:rgba(0,0,0,.1)!important}.rst-content .section ol.loweralpha,.rst-content .section ol.loweralpha>li,.rst-content .toctree-wrapper ol.loweralpha,.rst-content .toctree-wrapper ol.loweralpha>li,.rst-content section ol.loweralpha,.rst-content section ol.loweralpha>li{list-style:lower-alpha}.rst-content .section ol.upperalpha,.rst-content .section ol.upperalpha>li,.rst-content .toctree-wrapper ol.upperalpha,.rst-content .toctree-wrapper ol.upperalpha>li,.rst-content section ol.upperalpha,.rst-content section ol.upperalpha>li{list-style:upper-alpha}.rst-content .section ol li>*,.rst-content .section ul li>*,.rst-content .toctree-wrapper ol li>*,.rst-content .toctree-wrapper ul li>*,.rst-content section ol li>*,.rst-content section ul li>*{margin-top:12px;margin-bottom:12px}.rst-content .section ol li>:first-child,.rst-content .section ul li>:first-child,.rst-content .toctree-wrapper ol li>:first-child,.rst-content .toctree-wrapper ul li>:first-child,.rst-content section ol li>:first-child,.rst-content section ul li>:first-child{margin-top:0}.rst-content .section ol li>p,.rst-content .section ol li>p:last-child,.rst-content .section ul li>p,.rst-content .section ul li>p:last-child,.rst-content .toctree-wrapper ol li>p,.rst-content .toctree-wrapper ol li>p:last-child,.rst-content .toctree-wrapper ul li>p,.rst-content .toctree-wrapper ul li>p:last-child,.rst-content section ol li>p,.rst-content section ol li>p:last-child,.rst-content section ul li>p,.rst-content section ul li>p:last-child{margin-bottom:12px}.rst-content .section ol li>p:only-child,.rst-content .section ol li>p:only-child:last-child,.rst-content .section ul li>p:only-child,.rst-content .section ul li>p:only-child:last-child,.rst-content .toctree-wrapper ol li>p:only-child,.rst-content .toctree-wrapper ol li>p:only-child:last-child,.rst-content .toctree-wrapper ul li>p:only-child,.rst-content .toctree-wrapper ul li>p:only-child:last-child,.rst-content section ol li>p:only-child,.rst-content section ol li>p:only-child:last-child,.rst-content section ul li>p:only-child,.rst-content section ul li>p:only-child:last-child{margin-bottom:0}.rst-content .section ol li>ol,.rst-content .section ol li>ul,.rst-content .section ul li>ol,.rst-content .section ul li>ul,.rst-content .toctree-wrapper ol li>ol,.rst-content .toctree-wrapper ol li>ul,.rst-content .toctree-wrapper ul li>ol,.rst-content .toctree-wrapper ul li>ul,.rst-content section ol li>ol,.rst-content section ol li>ul,.rst-content section ul li>ol,.rst-content section ul li>ul{margin-bottom:12px}.rst-content .section ol.simple li>*,.rst-content .section ol.simple li ol,.rst-content .section ol.simple li ul,.rst-content .section ul.simple li>*,.rst-content .section ul.simple li ol,.rst-content .section ul.simple li ul,.rst-content .toctree-wrapper ol.simple li>*,.rst-content .toctree-wrapper ol.simple li ol,.rst-content .toctree-wrapper ol.simple li ul,.rst-content .toctree-wrapper ul.simple li>*,.rst-content .toctree-wrapper ul.simple li ol,.rst-content .toctree-wrapper ul.simple li ul,.rst-content section ol.simple li>*,.rst-content section ol.simple li ol,.rst-content section ol.simple li ul,.rst-content section ul.simple li>*,.rst-content section ul.simple li ol,.rst-content section ul.simple li ul{margin-top:0;margin-bottom:0}.rst-content .line-block{margin-left:0;margin-bottom:24px;line-height:24px}.rst-content .line-block .line-block{margin-left:24px;margin-bottom:0}.rst-content .topic-title{font-weight:700;margin-bottom:12px}.rst-content .toc-backref{color:#404040}.rst-content .align-right{float:right;margin:0 0 24px 24px}.rst-content .align-left{float:left;margin:0 24px 24px 0}.rst-content .align-center{margin:auto}.rst-content .align-center:not(table){display:block}.rst-content .code-block-caption .headerlink,.rst-content .eqno .headerlink,.rst-content .toctree-wrapper>p.caption .headerlink,.rst-content dl dt .headerlink,.rst-content h1 .headerlink,.rst-content h2 .headerlink,.rst-content h3 .headerlink,.rst-content h4 .headerlink,.rst-content h5 .headerlink,.rst-content h6 .headerlink,.rst-content p.caption .headerlink,.rst-content p .headerlink,.rst-content table>caption .headerlink{opacity:0;font-size:14px;font-family:FontAwesome;margin-left:.5em}.rst-content .code-block-caption .headerlink:focus,.rst-content .code-block-caption:hover .headerlink,.rst-content .eqno .headerlink:focus,.rst-content .eqno:hover .headerlink,.rst-content .toctree-wrapper>p.caption .headerlink:focus,.rst-content .toctree-wrapper>p.caption:hover .headerlink,.rst-content dl dt .headerlink:focus,.rst-content dl dt:hover .headerlink,.rst-content h1 .headerlink:focus,.rst-content h1:hover .headerlink,.rst-content h2 .headerlink:focus,.rst-content h2:hover .headerlink,.rst-content h3 .headerlink:focus,.rst-content h3:hover .headerlink,.rst-content h4 .headerlink:focus,.rst-content h4:hover .headerlink,.rst-content h5 .headerlink:focus,.rst-content h5:hover .headerlink,.rst-content h6 .headerlink:focus,.rst-content h6:hover .headerlink,.rst-content p.caption .headerlink:focus,.rst-content p.caption:hover .headerlink,.rst-content p .headerlink:focus,.rst-content p:hover .headerlink,.rst-content table>caption .headerlink:focus,.rst-content table>caption:hover .headerlink{opacity:1}.rst-content .btn:focus{outline:2px solid}.rst-content table>caption .headerlink:after{font-size:12px}.rst-content .centered{text-align:center}.rst-content .sidebar{float:right;width:40%;display:block;margin:0 0 24px 24px;padding:24px;background:#f3f6f6;border:1px solid #e1e4e5}.rst-content .sidebar dl,.rst-content .sidebar p,.rst-content .sidebar ul{font-size:90%}.rst-content .sidebar .last,.rst-content .sidebar>:last-child{margin-bottom:0}.rst-content .sidebar .sidebar-title{display:block;font-family:Roboto Slab,ff-tisa-web-pro,Georgia,Arial,sans-serif;font-weight:700;background:#e1e4e5;padding:6px 12px;margin:-24px -24px 24px;font-size:100%}.rst-content .highlighted{background:#f1c40f;box-shadow:0 0 0 2px #f1c40f;display:inline;font-weight:700}.rst-content .citation-reference,.rst-content .footnote-reference{vertical-align:baseline;position:relative;top:-.4em;line-height:0;font-size:90%}.rst-content .hlist{width:100%}.rst-content dl dt span.classifier:before{content:" : "}.rst-content dl dt span.classifier-delimiter{display:none!important}html.writer-html4 .rst-content table.docutils.citation,html.writer-html4 .rst-content table.docutils.footnote{background:none;border:none}html.writer-html4 .rst-content table.docutils.citation td,html.writer-html4 .rst-content table.docutils.citation tr,html.writer-html4 .rst-content table.docutils.footnote td,html.writer-html4 .rst-content table.docutils.footnote tr{border:none;background-color:transparent!important;white-space:normal}html.writer-html4 .rst-content table.docutils.citation td.label,html.writer-html4 .rst-content table.docutils.footnote td.label{padding-left:0;padding-right:0;vertical-align:top}html.writer-html5 .rst-content dl.field-list,html.writer-html5 .rst-content dl.footnote{display:grid;grid-template-columns:max-content auto}html.writer-html5 .rst-content dl.field-list>dt,html.writer-html5 .rst-content dl.footnote>dt{padding-left:1rem}html.writer-html5 .rst-content dl.field-list>dt:after,html.writer-html5 .rst-content dl.footnote>dt:after{content:":"}html.writer-html5 .rst-content dl.field-list>dd,html.writer-html5 .rst-content dl.field-list>dt,html.writer-html5 .rst-content dl.footnote>dd,html.writer-html5 .rst-content dl.footnote>dt{margin-bottom:0}html.writer-html5 .rst-content dl.footnote{font-size:.9rem}html.writer-html5 .rst-content dl.footnote>dt{margin:0 .5rem .5rem 0;line-height:1.2rem;word-break:break-all;font-weight:400}html.writer-html5 .rst-content dl.footnote>dt>span.brackets{margin-right:.5rem}html.writer-html5 .rst-content dl.footnote>dt>span.brackets:before{content:"["}html.writer-html5 .rst-content dl.footnote>dt>span.brackets:after{content:"]"}html.writer-html5 .rst-content dl.footnote>dt>span.fn-backref{font-style:italic}html.writer-html5 .rst-content dl.footnote>dd{margin:0 0 .5rem;line-height:1.2rem}html.writer-html5 .rst-content dl.footnote>dd p,html.writer-html5 .rst-content dl.option-list kbd{font-size:.9rem}.rst-content table.docutils.footnote,html.writer-html4 .rst-content table.docutils.citation,html.writer-html5 .rst-content dl.footnote{color:grey}.rst-content table.docutils.footnote code,.rst-content table.docutils.footnote tt,html.writer-html4 .rst-content table.docutils.citation code,html.writer-html4 .rst-content table.docutils.citation tt,html.writer-html5 .rst-content dl.footnote code,html.writer-html5 .rst-content dl.footnote tt{color:#555}.rst-content .wy-table-responsive.citation,.rst-content .wy-table-responsive.footnote{margin-bottom:0}.rst-content .wy-table-responsive.citation+:not(.citation),.rst-content .wy-table-responsive.footnote+:not(.footnote){margin-top:24px}.rst-content .wy-table-responsive.citation:last-child,.rst-content .wy-table-responsive.footnote:last-child{margin-bottom:24px}.rst-content table.docutils th{border-color:#e1e4e5}html.writer-html5 .rst-content table.docutils th{border:1px solid #e1e4e5}html.writer-html5 .rst-content table.docutils td>p,html.writer-html5 .rst-content table.docutils th>p{line-height:1rem;margin-bottom:0;font-size:.9rem}.rst-content table.docutils td .last,.rst-content table.docutils td .last>:last-child{margin-bottom:0}.rst-content table.field-list,.rst-content table.field-list td{border:none}.rst-content table.field-list td p{font-size:inherit;line-height:inherit}.rst-content table.field-list td>strong{display:inline-block}.rst-content table.field-list .field-name{padding-right:10px;text-align:left;white-space:nowrap}.rst-content table.field-list .field-body{text-align:left}.rst-content code,.rst-content tt{color:#000;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;padding:2px 5px}.rst-content code big,.rst-content code em,.rst-content tt big,.rst-content tt em{font-size:100%!important;line-height:normal}.rst-content code.literal,.rst-content tt.literal{color:#e74c3c;white-space:normal}.rst-content code.xref,.rst-content tt.xref,a .rst-content code,a .rst-content tt{font-weight:700;color:#404040}.rst-content kbd,.rst-content pre,.rst-content samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace}.rst-content a code,.rst-content a tt{color:#2980b9}.rst-content dl{margin-bottom:24px}.rst-content dl dt{font-weight:700;margin-bottom:12px}.rst-content dl ol,.rst-content dl p,.rst-content dl table,.rst-content dl ul{margin-bottom:12px}.rst-content dl dd{margin:0 0 12px 24px;line-height:24px}html.writer-html4 .rst-content dl:not(.docutils),html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple){margin-bottom:24px}html.writer-html4 .rst-content dl:not(.docutils)>dt,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple)>dt{display:table;margin:6px 0;font-size:90%;line-height:normal;background:#e7f2fa;color:#2980b9;border-top:3px solid #6ab0de;padding:6px;position:relative}html.writer-html4 .rst-content dl:not(.docutils)>dt:before,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple)>dt:before{color:#6ab0de}html.writer-html4 .rst-content dl:not(.docutils)>dt .headerlink,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple)>dt .headerlink{color:#404040;font-size:100%!important}html.writer-html4 .rst-content dl:not(.docutils) dl:not(.field-list)>dt,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) dl:not(.field-list)>dt{margin-bottom:6px;border:none;border-left:3px solid #ccc;background:#f0f0f0;color:#555}html.writer-html4 .rst-content dl:not(.docutils) dl:not(.field-list)>dt .headerlink,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) dl:not(.field-list)>dt .headerlink{color:#404040;font-size:100%!important}html.writer-html4 .rst-content dl:not(.docutils)>dt:first-child,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple)>dt:first-child{margin-top:0}html.writer-html4 .rst-content dl:not(.docutils) code.descclassname,html.writer-html4 .rst-content dl:not(.docutils) code.descname,html.writer-html4 .rst-content dl:not(.docutils) tt.descclassname,html.writer-html4 .rst-content dl:not(.docutils) tt.descname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) code.descclassname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) code.descname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) tt.descclassname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) tt.descname{background-color:transparent;border:none;padding:0;font-size:100%!important}html.writer-html4 .rst-content dl:not(.docutils) code.descname,html.writer-html4 .rst-content dl:not(.docutils) tt.descname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) code.descname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) tt.descname{font-weight:700}html.writer-html4 .rst-content dl:not(.docutils) .optional,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) .optional{display:inline-block;padding:0 4px;color:#000;font-weight:700}html.writer-html4 .rst-content dl:not(.docutils) .property,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) .property{display:inline-block;padding-right:8px;max-width:100%}html.writer-html4 .rst-content dl:not(.docutils) .k,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) .k{font-style:italic}html.writer-html4 .rst-content dl:not(.docutils) .descclassname,html.writer-html4 .rst-content dl:not(.docutils) .descname,html.writer-html4 .rst-content dl:not(.docutils) .sig-name,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) .descclassname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) .descname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) .sig-name{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;color:#000}.rst-content .viewcode-back,.rst-content .viewcode-link{display:inline-block;color:#27ae60;font-size:80%;padding-left:24px}.rst-content .viewcode-back{display:block;float:right}.rst-content p.rubric{margin-bottom:12px;font-weight:700}.rst-content code.download,.rst-content tt.download{background:inherit;padding:inherit;font-weight:400;font-family:inherit;font-size:inherit;color:inherit;border:inherit;white-space:inherit}.rst-content code.download span:first-child,.rst-content tt.download span:first-child{-webkit-font-smoothing:subpixel-antialiased}.rst-content code.download span:first-child:before,.rst-content tt.download span:first-child:before{margin-right:4px}.rst-content .guilabel{border:1px solid #7fbbe3;background:#e7f2fa;font-size:80%;font-weight:700;border-radius:4px;padding:2.4px 6px;margin:auto 2px}.rst-content .versionmodified{font-style:italic}@media screen and (max-width:480px){.rst-content .sidebar{width:100%}}span[id*=MathJax-Span]{color:#404040}.math{text-align:center}@font-face{font-family:Lato;src:url(fonts/lato-normal.woff2?bd03a2cc277bbbc338d464e679fe9942) format("woff2"),url(fonts/lato-normal.woff?27bd77b9162d388cb8d4c4217c7c5e2a) format("woff");font-weight:400;font-style:normal;font-display:block}@font-face{font-family:Lato;src:url(fonts/lato-bold.woff2?cccb897485813c7c256901dbca54ecf2) format("woff2"),url(fonts/lato-bold.woff?d878b6c29b10beca227e9eef4246111b) format("woff");font-weight:700;font-style:normal;font-display:block}@font-face{font-family:Lato;src:url(fonts/lato-bold-italic.woff2?0b6bb6725576b072c5d0b02ecdd1900d) format("woff2"),url(fonts/lato-bold-italic.woff?9c7e4e9eb485b4a121c760e61bc3707c) format("woff");font-weight:700;font-style:italic;font-display:block}@font-face{font-family:Lato;src:url(fonts/lato-normal-italic.woff2?4eb103b4d12be57cb1d040ed5e162e9d) format("woff2"),url(fonts/lato-normal-italic.woff?f28f2d6482446544ef1ea1ccc6dd5892) format("woff");font-weight:400;font-style:italic;font-display:block}@font-face{font-family:Roboto Slab;font-style:normal;font-weight:400;src:url(fonts/Roboto-Slab-Regular.woff2?7abf5b8d04d26a2cafea937019bca958) format("woff2"),url(fonts/Roboto-Slab-Regular.woff?c1be9284088d487c5e3ff0a10a92e58c) format("woff");font-display:block}@font-face{font-family:Roboto Slab;font-style:normal;font-weight:700;src:url(fonts/Roboto-Slab-Bold.woff2?9984f4a9bda09be08e83f2506954adbe) format("woff2"),url(fonts/Roboto-Slab-Bold.woff?bed5564a116b05148e3b3bea6fb1162a) format("woff");font-display:block} \ No newline at end of file diff --git a/docs/cpp/_static/doctools.js b/docs/cpp/_static/doctools.js index 61ac9d2..8cbf1b1 100644 --- a/docs/cpp/_static/doctools.js +++ b/docs/cpp/_static/doctools.js @@ -301,12 +301,14 @@ var Documentation = { window.location.href = prevHref; return false; } + break; case 39: // right var nextHref = $('link[rel="next"]').prop('href'); if (nextHref) { window.location.href = nextHref; return false; } + break; } } }); diff --git a/docs/cpp/_static/js/theme.js b/docs/cpp/_static/js/theme.js index 839d07e..1fddb6e 100644 --- a/docs/cpp/_static/js/theme.js +++ b/docs/cpp/_static/js/theme.js @@ -1 +1 @@ -!function(n){var e={};function t(i){if(e[i])return e[i].exports;var o=e[i]={i:i,l:!1,exports:{}};return n[i].call(o.exports,o,o.exports,t),o.l=!0,o.exports}t.m=n,t.c=e,t.d=function(n,e,i){t.o(n,e)||Object.defineProperty(n,e,{enumerable:!0,get:i})},t.r=function(n){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(n,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(n,"__esModule",{value:!0})},t.t=function(n,e){if(1&e&&(n=t(n)),8&e)return n;if(4&e&&"object"==typeof n&&n&&n.__esModule)return n;var i=Object.create(null);if(t.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:n}),2&e&&"string"!=typeof n)for(var o in n)t.d(i,o,function(e){return n[e]}.bind(null,o));return i},t.n=function(n){var e=n&&n.__esModule?function(){return n.default}:function(){return n};return t.d(e,"a",e),e},t.o=function(n,e){return Object.prototype.hasOwnProperty.call(n,e)},t.p="",t(t.s=0)}([function(n,e,t){t(1),n.exports=t(3)},function(n,e,t){(function(){var e="undefined"!=typeof window?window.jQuery:t(2);n.exports.ThemeNav={navBar:null,win:null,winScroll:!1,winResize:!1,linkScroll:!1,winPosition:0,winHeight:null,docHeight:null,isRunning:!1,enable:function(n){var t=this;void 0===n&&(n=!0),t.isRunning||(t.isRunning=!0,e((function(e){t.init(e),t.reset(),t.win.on("hashchange",t.reset),n&&t.win.on("scroll",(function(){t.linkScroll||t.winScroll||(t.winScroll=!0,requestAnimationFrame((function(){t.onScroll()})))})),t.win.on("resize",(function(){t.winResize||(t.winResize=!0,requestAnimationFrame((function(){t.onResize()})))})),t.onResize()})))},enableSticky:function(){this.enable(!0)},init:function(n){n(document);var e=this;this.navBar=n("div.wy-side-scroll:first"),this.win=n(window),n(document).on("click","[data-toggle='wy-nav-top']",(function(){n("[data-toggle='wy-nav-shift']").toggleClass("shift"),n("[data-toggle='rst-versions']").toggleClass("shift")})).on("click",".wy-menu-vertical .current ul li a",(function(){var t=n(this);n("[data-toggle='wy-nav-shift']").removeClass("shift"),n("[data-toggle='rst-versions']").toggleClass("shift"),e.toggleCurrent(t),e.hashChange()})).on("click","[data-toggle='rst-current-version']",(function(){n("[data-toggle='rst-versions']").toggleClass("shift-up")})),n("table.docutils:not(.field-list,.footnote,.citation)").wrap("
"),n("table.docutils.footnote").wrap("
"),n("table.docutils.citation").wrap("
"),n(".wy-menu-vertical ul").not(".simple").siblings("a").each((function(){var t=n(this);expand=n(''),expand.on("click",(function(n){return e.toggleCurrent(t),n.stopPropagation(),!1})),t.prepend(expand)}))},reset:function(){var n=encodeURI(window.location.hash)||"#";try{var e=$(".wy-menu-vertical"),t=e.find('[href="'+n+'"]');if(0===t.length){var i=$('.document [id="'+n.substring(1)+'"]').closest("div.section");0===(t=e.find('[href="#'+i.attr("id")+'"]')).length&&(t=e.find('[href="#"]'))}t.length>0&&($(".wy-menu-vertical .current").removeClass("current"),t.addClass("current"),t.closest("li.toctree-l1").addClass("current"),t.closest("li.toctree-l1").parent().addClass("current"),t.closest("li.toctree-l1").addClass("current"),t.closest("li.toctree-l2").addClass("current"),t.closest("li.toctree-l3").addClass("current"),t.closest("li.toctree-l4").addClass("current"),t.closest("li.toctree-l5").addClass("current"),t[0].scrollIntoView())}catch(n){console.log("Error expanding nav for anchor",n)}},onScroll:function(){this.winScroll=!1;var n=this.win.scrollTop(),e=n+this.winHeight,t=this.navBar.scrollTop()+(n-this.winPosition);n<0||e>this.docHeight||(this.navBar.scrollTop(t),this.winPosition=n)},onResize:function(){this.winResize=!1,this.winHeight=this.win.height(),this.docHeight=$(document).height()},hashChange:function(){this.linkScroll=!0,this.win.one("hashchange",(function(){this.linkScroll=!1}))},toggleCurrent:function(n){var e=n.closest("li");e.siblings("li.current").removeClass("current"),e.siblings().find("li.current").removeClass("current"),e.find("> ul li.current").removeClass("current"),e.toggleClass("current")}},"undefined"!=typeof window&&(window.SphinxRtdTheme={Navigation:n.exports.ThemeNav,StickyNav:n.exports.ThemeNav}),function(){for(var n=0,e=["ms","moz","webkit","o"],t=0;t"),n("table.docutils.footnote").wrap("
"),n("table.docutils.citation").wrap("
"),n(".wy-menu-vertical ul").not(".simple").siblings("a").each((function(){var t=n(this);expand=n(''),expand.on("click",(function(n){return e.toggleCurrent(t),n.stopPropagation(),!1})),t.prepend(expand)}))},reset:function(){var n=encodeURI(window.location.hash)||"#";try{var e=$(".wy-menu-vertical"),t=e.find('[href="'+n+'"]');if(0===t.length){var i=$('.document [id="'+n.substring(1)+'"]').closest("div.section");0===(t=e.find('[href="#'+i.attr("id")+'"]')).length&&(t=e.find('[href="#"]'))}if(t.length>0){$(".wy-menu-vertical .current").removeClass("current").attr("aria-expanded","false"),t.addClass("current").attr("aria-expanded","true"),t.closest("li.toctree-l1").parent().addClass("current").attr("aria-expanded","true");for(let n=1;n<=10;n++)t.closest("li.toctree-l"+n).addClass("current").attr("aria-expanded","true");t[0].scrollIntoView()}}catch(n){console.log("Error expanding nav for anchor",n)}},onScroll:function(){this.winScroll=!1;var n=this.win.scrollTop(),e=n+this.winHeight,t=this.navBar.scrollTop()+(n-this.winPosition);n<0||e>this.docHeight||(this.navBar.scrollTop(t),this.winPosition=n)},onResize:function(){this.winResize=!1,this.winHeight=this.win.height(),this.docHeight=$(document).height()},hashChange:function(){this.linkScroll=!0,this.win.one("hashchange",(function(){this.linkScroll=!1}))},toggleCurrent:function(n){var e=n.closest("li");e.siblings("li.current").removeClass("current").attr("aria-expanded","false"),e.siblings().find("li.current").removeClass("current").attr("aria-expanded","false");var t=e.find("> ul li");t.length&&(t.removeClass("current").attr("aria-expanded","false"),e.toggleClass("current").attr("aria-expanded",(function(n,e){return"true"==e?"false":"true"})))}},"undefined"!=typeof window&&(window.SphinxRtdTheme={Navigation:n.exports.ThemeNav,StickyNav:n.exports.ThemeNav}),function(){for(var n=0,e=["ms","moz","webkit","o"],t=0;t -1) { @@ -339,7 +344,6 @@ var Search = { } else if (parts[parts.length - 1].indexOf(object) > -1) { score += Scorer.objPartialMatch; } - var match = objects[prefix][name]; var objname = objnames[match[1]][2]; var title = titles[match[0]]; // If more than one term searched for, we require other words to be @@ -498,6 +502,9 @@ var Search = { */ makeSearchSummary : function(htmlText, keywords, hlwords) { var text = Search.htmlToText(htmlText); + if (text == "") { + return null; + } var textLower = text.toLowerCase(); var start = 0; $.each(keywords, function() { @@ -509,7 +516,7 @@ var Search = { var excerpt = ((start > 0) ? '...' : '') + $.trim(text.substr(start, 240)) + ((start + 240 - text.length) ? '...' : ''); - var rv = $('
').text(excerpt); + var rv = $('

').text(excerpt); $.each(hlwords, function() { rv = rv.highlightText(this, 'highlighted'); }); diff --git a/docs/cpp/_static/underscore.js b/docs/cpp/_static/underscore.js index 166240e..cf177d4 100644 --- a/docs/cpp/_static/underscore.js +++ b/docs/cpp/_static/underscore.js @@ -1,6 +1,6 @@ -!function(n,r){"object"==typeof exports&&"undefined"!=typeof module?module.exports=r():"function"==typeof define&&define.amd?define("underscore",r):(n=n||self,function(){var t=n._,e=n._=r();e.noConflict=function(){return n._=t,e}}())}(this,(function(){ -// Underscore.js 1.12.0 +!function(n,r){"object"==typeof exports&&"undefined"!=typeof module?module.exports=r():"function"==typeof define&&define.amd?define("underscore",r):(n="undefined"!=typeof globalThis?globalThis:n||self,function(){var t=n._,e=n._=r();e.noConflict=function(){return n._=t,e}}())}(this,(function(){ +// Underscore.js 1.13.1 // https://underscorejs.org -// (c) 2009-2020 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors +// (c) 2009-2021 Jeremy Ashkenas, Julian Gonggrijp, and DocumentCloud and Investigative Reporters & Editors // Underscore may be freely distributed under the MIT license. -var n="1.12.0",r="object"==typeof self&&self.self===self&&self||"object"==typeof global&&global.global===global&&global||Function("return this")()||{},t=Array.prototype,e=Object.prototype,u="undefined"!=typeof Symbol?Symbol.prototype:null,o=t.push,i=t.slice,a=e.toString,f=e.hasOwnProperty,c="undefined"!=typeof ArrayBuffer,l="undefined"!=typeof DataView,s=Array.isArray,p=Object.keys,v=Object.create,h=c&&ArrayBuffer.isView,y=isNaN,g=isFinite,d=!{toString:null}.propertyIsEnumerable("toString"),b=["valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"],m=Math.pow(2,53)-1;function j(n,r){return r=null==r?n.length-1:+r,function(){for(var t=Math.max(arguments.length-r,0),e=Array(t),u=0;u=0&&t<=m}}function $(n){return function(r){return null==r?void 0:r[n]}}var G=$("byteLength"),H=J(G),Q=/\[object ((I|Ui)nt(8|16|32)|Float(32|64)|Uint8Clamped|Big(I|Ui)nt64)Array\]/;var X=c?function(n){return h?h(n)&&!q(n):H(n)&&Q.test(a.call(n))}:K(!1),Y=$("length");function Z(n,r){r=function(n){for(var r={},t=n.length,e=0;e":">",'"':""","'":"'","`":"`"},Kn=Ln(Cn),Jn=Ln(_n(Cn)),$n=tn.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g},Gn=/(.)^/,Hn={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},Qn=/\\|'|\r|\n|\u2028|\u2029/g;function Xn(n){return"\\"+Hn[n]}var Yn=0;function Zn(n,r,t,e,u){if(!(e instanceof r))return n.apply(t,u);var o=Mn(n.prototype),i=n.apply(o,u);return _(i)?i:o}var nr=j((function(n,r){var t=nr.placeholder,e=function(){for(var u=0,o=r.length,i=Array(o),a=0;a1)er(a,r-1,t,e),u=e.length;else for(var f=0,c=a.length;f0&&(t=r.apply(this,arguments)),n<=1&&(r=null),t}}var cr=nr(fr,2);function lr(n,r,t){r=qn(r,t);for(var e,u=nn(n),o=0,i=u.length;o0?0:u-1;o>=0&&o0?a=o>=0?o:Math.max(o+f,a):f=o>=0?Math.min(o+1,f):o+f+1;else if(t&&o&&f)return e[o=t(e,u)]===u?o:-1;if(u!=u)return(o=r(i.call(e,a,f),C))>=0?o+a:-1;for(o=n>0?a:f-1;o>=0&&o0?0:i-1;for(u||(e=r[o?o[a]:a],a+=n);a>=0&&a=3;return r(n,Fn(t,u,4),e,o)}}var wr=_r(1),Ar=_r(-1);function xr(n,r,t){var e=[];return r=qn(r,t),mr(n,(function(n,t,u){r(n,t,u)&&e.push(n)})),e}function Sr(n,r,t){r=qn(r,t);for(var e=!tr(n)&&nn(n),u=(e||n).length,o=0;o=0}var Er=j((function(n,r,t){var e,u;return D(r)?u=r:(r=Nn(r),e=r.slice(0,-1),r=r[r.length-1]),jr(n,(function(n){var o=u;if(!o){if(e&&e.length&&(n=In(n,e)),null==n)return;o=n[r]}return null==o?o:o.apply(n,t)}))}));function Br(n,r){return jr(n,Rn(r))}function Nr(n,r,t){var e,u,o=-1/0,i=-1/0;if(null==r||"number"==typeof r&&"object"!=typeof n[0]&&null!=n)for(var a=0,f=(n=tr(n)?n:jn(n)).length;ao&&(o=e);else r=qn(r,t),mr(n,(function(n,t,e){((u=r(n,t,e))>i||u===-1/0&&o===-1/0)&&(o=n,i=u)}));return o}function Ir(n,r,t){if(null==r||t)return tr(n)||(n=jn(n)),n[Wn(n.length-1)];var e=tr(n)?En(n):jn(n),u=Y(e);r=Math.max(Math.min(r,u),0);for(var o=u-1,i=0;i1&&(e=Fn(e,r[1])),r=an(n)):(e=Pr,r=er(r,!1,!1),n=Object(n));for(var u=0,o=r.length;u1&&(t=r[1])):(r=jr(er(r,!1,!1),String),e=function(n,t){return!Mr(r,t)}),qr(n,e,t)}));function Wr(n,r,t){return i.call(n,0,Math.max(0,n.length-(null==r||t?1:r)))}function zr(n,r,t){return null==n||n.length<1?null==r||t?void 0:[]:null==r||t?n[0]:Wr(n,n.length-r)}function Lr(n,r,t){return i.call(n,null==r||t?1:r)}var Cr=j((function(n,r){return r=er(r,!0,!0),xr(n,(function(n){return!Mr(r,n)}))})),Kr=j((function(n,r){return Cr(n,r)}));function Jr(n,r,t,e){A(r)||(e=t,t=r,r=!1),null!=t&&(t=qn(t,e));for(var u=[],o=[],i=0,a=Y(n);ir?(e&&(clearTimeout(e),e=null),a=c,i=n.apply(u,o),e||(u=o=null)):e||!1===t.trailing||(e=setTimeout(f,l)),i};return c.cancel=function(){clearTimeout(e),a=0,e=u=o=null},c},debounce:function(n,r,t){var e,u,o=function(r,t){e=null,t&&(u=n.apply(r,t))},i=j((function(i){if(e&&clearTimeout(e),t){var a=!e;e=setTimeout(o,r),a&&(u=n.apply(this,i))}else e=or(o,r,this,i);return u}));return i.cancel=function(){clearTimeout(e),e=null},i},wrap:function(n,r){return nr(r,n)},negate:ar,compose:function(){var n=arguments,r=n.length-1;return function(){for(var t=r,e=n[r].apply(this,arguments);t--;)e=n[t].call(this,e);return e}},after:function(n,r){return function(){if(--n<1)return r.apply(this,arguments)}},before:fr,once:cr,findKey:lr,findIndex:pr,findLastIndex:vr,sortedIndex:hr,indexOf:gr,lastIndexOf:dr,find:br,detect:br,findWhere:function(n,r){return br(n,Dn(r))},each:mr,forEach:mr,map:jr,collect:jr,reduce:wr,foldl:wr,inject:wr,reduceRight:Ar,foldr:Ar,filter:xr,select:xr,reject:function(n,r,t){return xr(n,ar(qn(r)),t)},every:Sr,all:Sr,some:Or,any:Or,contains:Mr,includes:Mr,include:Mr,invoke:Er,pluck:Br,where:function(n,r){return xr(n,Dn(r))},max:Nr,min:function(n,r,t){var e,u,o=1/0,i=1/0;if(null==r||"number"==typeof r&&"object"!=typeof n[0]&&null!=n)for(var a=0,f=(n=tr(n)?n:jn(n)).length;ae||void 0===t)return 1;if(t=0&&t<=m}}function J(n){return function(r){return null==r?void 0:r[n]}}var G=J("byteLength"),H=K(G),Q=/\[object ((I|Ui)nt(8|16|32)|Float(32|64)|Uint8Clamped|Big(I|Ui)nt64)Array\]/;var X=c?function(n){return h?h(n)&&!q(n):H(n)&&Q.test(a.call(n))}:C(!1),Y=J("length");function Z(n,r){r=function(n){for(var r={},t=n.length,e=0;e":">",'"':""","'":"'","`":"`"},Cn=Ln($n),Kn=Ln(_n($n)),Jn=tn.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g},Gn=/(.)^/,Hn={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},Qn=/\\|'|\r|\n|\u2028|\u2029/g;function Xn(n){return"\\"+Hn[n]}var Yn=/^\s*(\w|\$)+\s*$/;var Zn=0;function nr(n,r,t,e,u){if(!(e instanceof r))return n.apply(t,u);var o=Mn(n.prototype),i=n.apply(o,u);return _(i)?i:o}var rr=j((function(n,r){var t=rr.placeholder,e=function(){for(var u=0,o=r.length,i=Array(o),a=0;a1)ur(a,r-1,t,e),u=e.length;else for(var f=0,c=a.length;f0&&(t=r.apply(this,arguments)),n<=1&&(r=null),t}}var lr=rr(cr,2);function sr(n,r,t){r=qn(r,t);for(var e,u=nn(n),o=0,i=u.length;o0?0:u-1;o>=0&&o0?a=o>=0?o:Math.max(o+f,a):f=o>=0?Math.min(o+1,f):o+f+1;else if(t&&o&&f)return e[o=t(e,u)]===u?o:-1;if(u!=u)return(o=r(i.call(e,a,f),$))>=0?o+a:-1;for(o=n>0?a:f-1;o>=0&&o0?0:i-1;for(u||(e=r[o?o[a]:a],a+=n);a>=0&&a=3;return r(n,Fn(t,u,4),e,o)}}var Ar=wr(1),xr=wr(-1);function Sr(n,r,t){var e=[];return r=qn(r,t),jr(n,(function(n,t,u){r(n,t,u)&&e.push(n)})),e}function Or(n,r,t){r=qn(r,t);for(var e=!er(n)&&nn(n),u=(e||n).length,o=0;o=0}var Br=j((function(n,r,t){var e,u;return D(r)?u=r:(r=Nn(r),e=r.slice(0,-1),r=r[r.length-1]),_r(n,(function(n){var o=u;if(!o){if(e&&e.length&&(n=In(n,e)),null==n)return;o=n[r]}return null==o?o:o.apply(n,t)}))}));function Nr(n,r){return _r(n,Rn(r))}function Ir(n,r,t){var e,u,o=-1/0,i=-1/0;if(null==r||"number"==typeof r&&"object"!=typeof n[0]&&null!=n)for(var a=0,f=(n=er(n)?n:jn(n)).length;ao&&(o=e);else r=qn(r,t),jr(n,(function(n,t,e){((u=r(n,t,e))>i||u===-1/0&&o===-1/0)&&(o=n,i=u)}));return o}function Tr(n,r,t){if(null==r||t)return er(n)||(n=jn(n)),n[Wn(n.length-1)];var e=er(n)?En(n):jn(n),u=Y(e);r=Math.max(Math.min(r,u),0);for(var o=u-1,i=0;i1&&(e=Fn(e,r[1])),r=an(n)):(e=qr,r=ur(r,!1,!1),n=Object(n));for(var u=0,o=r.length;u1&&(t=r[1])):(r=_r(ur(r,!1,!1),String),e=function(n,t){return!Er(r,t)}),Ur(n,e,t)}));function zr(n,r,t){return i.call(n,0,Math.max(0,n.length-(null==r||t?1:r)))}function Lr(n,r,t){return null==n||n.length<1?null==r||t?void 0:[]:null==r||t?n[0]:zr(n,n.length-r)}function $r(n,r,t){return i.call(n,null==r||t?1:r)}var Cr=j((function(n,r){return r=ur(r,!0,!0),Sr(n,(function(n){return!Er(r,n)}))})),Kr=j((function(n,r){return Cr(n,r)}));function Jr(n,r,t,e){A(r)||(e=t,t=r,r=!1),null!=t&&(t=qn(t,e));for(var u=[],o=[],i=0,a=Y(n);ir?(e&&(clearTimeout(e),e=null),a=c,i=n.apply(u,o),e||(u=o=null)):e||!1===t.trailing||(e=setTimeout(f,l)),i};return c.cancel=function(){clearTimeout(e),a=0,e=u=o=null},c},debounce:function(n,r,t){var e,u,o,i,a,f=function(){var c=zn()-u;r>c?e=setTimeout(f,r-c):(e=null,t||(i=n.apply(a,o)),e||(o=a=null))},c=j((function(c){return a=this,o=c,u=zn(),e||(e=setTimeout(f,r),t&&(i=n.apply(a,o))),i}));return c.cancel=function(){clearTimeout(e),e=o=a=null},c},wrap:function(n,r){return rr(r,n)},negate:fr,compose:function(){var n=arguments,r=n.length-1;return function(){for(var t=r,e=n[r].apply(this,arguments);t--;)e=n[t].call(this,e);return e}},after:function(n,r){return function(){if(--n<1)return r.apply(this,arguments)}},before:cr,once:lr,findKey:sr,findIndex:vr,findLastIndex:hr,sortedIndex:yr,indexOf:gr,lastIndexOf:br,find:mr,detect:mr,findWhere:function(n,r){return mr(n,Dn(r))},each:jr,forEach:jr,map:_r,collect:_r,reduce:Ar,foldl:Ar,inject:Ar,reduceRight:xr,foldr:xr,filter:Sr,select:Sr,reject:function(n,r,t){return Sr(n,fr(qn(r)),t)},every:Or,all:Or,some:Mr,any:Mr,contains:Er,includes:Er,include:Er,invoke:Br,pluck:Nr,where:function(n,r){return Sr(n,Dn(r))},max:Ir,min:function(n,r,t){var e,u,o=1/0,i=1/0;if(null==r||"number"==typeof r&&"object"!=typeof n[0]&&null!=n)for(var a=0,f=(n=er(n)?n:jn(n)).length;ae||void 0===t)return 1;if(t - - Index — libmolgrid documentation - - - - - - - - - - - - - - - + + - - + - - - - + - - - +
- -
- - -
- - - - - - - - + \ No newline at end of file diff --git a/docs/cpp/index.html b/docs/cpp/index.html index d263032..0a5a3a5 100644 --- a/docs/cpp/index.html +++ b/docs/cpp/index.html @@ -1,68 +1,32 @@ - - - - + + - libmolgrid C++ API Documentation — libmolgrid documentation - - - - - - - - - - - - - - - + + - - + - - - - + - - - +
- -
- - -
-
-

The AtomIndexTyper class

+ +
+

The AtomIndexTyper class

-
-class libmolgrid::AtomIndexTyper : public AtomTyper
+
+class libmolgrid::AtomIndexTyper : public AtomTyper

Base class for generating numerical types along with atomic radius.

Subclassed by CallbackIndexTyper, ElementIndexTyper, GninaIndexTyper, MappedAtomIndexTyper< Mapper, Typer >, NullIndexTyper, MappedAtomIndexTyper< FileAtomMapper, ElementIndexTyper >, MappedAtomIndexTyper< FileAtomMapper, GninaIndexTyper >, MappedAtomIndexTyper< SubsetAtomMapper, ElementIndexTyper >, MappedAtomIndexTyper< SubsetAtomMapper, GninaIndexTyper >

Public Functions

-
-inline AtomIndexTyper()
+
+inline AtomIndexTyper()
-
-inline virtual ~AtomIndexTyper()
+
+inline virtual ~AtomIndexTyper()
-
-virtual unsigned num_types() const = 0
+
+virtual unsigned num_types() const = 0

return number of types

-
-inline virtual float get_atom_type_vector(OpenBabel::OBAtom *a, std::vector<float> &typ) const final
+
+inline virtual float get_atom_type_vector(OpenBabel::OBAtom *a, std::vector<float> &typ) const final
-
-virtual std::pair<int, float> get_atom_type_index(OpenBabel::OBAtom *a) const = 0
+
+virtual std::pair<int, float> get_atom_type_index(OpenBabel::OBAtom *a) const = 0

return type index of a along with the apprioriate index

-
-virtual std::pair<int, float> get_int_type(int t) const = 0
+
+virtual std::pair<int, float> get_int_type(int t) const = 0

return type and radius given a precomputed type, the meaning of which is specific to the implementation

-
-virtual std::vector<std::string> get_type_names() const = 0
+
+virtual std::vector<std::string> get_type_names() const = 0

return vector of string representations of types this isn’t expected to be particularly efficient

-
-inline virtual std::vector<float> get_type_radii() const
+
+inline virtual std::vector<float> get_type_radii() const

if applicable to the typer, return the standard atomic radius of each type

-
-inline virtual bool is_vector_typer() const
+
+inline virtual bool is_vector_typer() const

Public Static Functions

-
-static void set_names(unsigned ntypes, std::vector<std::string> &type_names, const std::vector<std::string> &names)
+
+static void set_names(unsigned ntypes, std::vector<std::string> &type_names, const std::vector<std::string> &names)
-
-
-

The AtomTyper class

+ +
+

The AtomTyper class

-
-class libmolgrid::AtomTyper
+
+class libmolgrid::AtomTyper

Base class for all atom typers.

Subclassed by AtomIndexTyper, AtomVectorTyper

Public Functions

-
-inline AtomTyper()
+
+inline AtomTyper()
-
-inline virtual ~AtomTyper()
+
+inline virtual ~AtomTyper()
-
-inline virtual unsigned num_types() const
+
+inline virtual unsigned num_types() const
-
-inline virtual float get_atom_type_vector(OpenBabel::OBAtom *a, std::vector<float> &typ) const
+
+inline virtual float get_atom_type_vector(OpenBabel::OBAtom *a, std::vector<float> &typ) const
-
-inline virtual std::pair<int, float> get_atom_type_index(OpenBabel::OBAtom *a) const
+
+inline virtual std::pair<int, float> get_atom_type_index(OpenBabel::OBAtom *a) const
-
-inline virtual std::pair<int, float> get_int_type(int t) const
+
+inline virtual std::pair<int, float> get_int_type(int t) const
-
-inline virtual std::vector<std::string> get_type_names() const
+
+inline virtual std::vector<std::string> get_type_names() const
-
-inline virtual bool is_vector_typer() const
+
+inline virtual bool is_vector_typer() const
-
-
-

The AtomVectorTyper class

+ +
+

The AtomVectorTyper class

-
-class libmolgrid::AtomVectorTyper : public AtomTyper
+
+class libmolgrid::AtomVectorTyper : public AtomTyper

Base class for generating vector types.

Subclassed by CallbackVectorTyper, GninaVectorTyper

Public Functions

-
-inline AtomVectorTyper()
+
+inline AtomVectorTyper()
-
-inline virtual ~AtomVectorTyper()
+
+inline virtual ~AtomVectorTyper()
-
-virtual unsigned num_types() const = 0
+
+virtual unsigned num_types() const = 0

return number of types

-
-inline virtual std::pair<int, float> get_atom_type_index(OpenBabel::OBAtom *a) const final
+
+inline virtual std::pair<int, float> get_atom_type_index(OpenBabel::OBAtom *a) const final
-
-virtual float get_atom_type_vector(OpenBabel::OBAtom *a, std::vector<float> &typ) const = 0
+
+virtual float get_atom_type_vector(OpenBabel::OBAtom *a, std::vector<float> &typ) const = 0

set vector type of atom a, return radius

-
-inline virtual std::vector<float> get_vector_type_radii() const
+
+inline virtual std::vector<float> get_vector_type_radii() const

return radii of types

-
-virtual std::vector<std::string> get_type_names() const = 0
+
+virtual std::vector<std::string> get_type_names() const = 0
-
-inline virtual bool is_vector_typer() const
+
+inline virtual bool is_vector_typer() const
-
-inline virtual std::pair<int, float> get_int_type(int t) const
+
+inline virtual std::pair<int, float> get_int_type(int t) const
-
-
-

The BalancedExampleRefProvider class

+ +
+

The BalancedExampleRefProvider class

-
-class libmolgrid::BalancedExampleRefProvider : public ExampleRefProvider
+
+class libmolgrid::BalancedExampleRefProvider : public ExampleRefProvider

sample uniformly from actives and decoys

Public Functions

-
-inline BalancedExampleRefProvider()
+
+inline BalancedExampleRefProvider()
-
-inline BalancedExampleRefProvider(const ExampleProviderSettings &settings)
+
+inline BalancedExampleRefProvider(const ExampleProviderSettings &settings)
-
-virtual void addref(const ExampleRef &ex)
+
+virtual void addref(const ExampleRef &ex)
-
-inline virtual size_t num_labels() const
+
+inline virtual size_t num_labels() const

return number of labels in an example

-
-virtual void setup()
+
+virtual void setup()
-
-virtual void nextref(ExampleRef &ex)
+
+virtual void nextref(ExampleRef &ex)
-
-inline virtual unsigned size() const
+
+inline virtual unsigned size() const
-
-inline unsigned num_actives() const
+
+inline unsigned num_actives() const
-
-inline unsigned num_decoys() const
+
+inline unsigned num_decoys() const
-
-inline void next_active(ExampleRef &ex)
+
+inline void next_active(ExampleRef &ex)
-
-inline void next_decoy(ExampleRef &ex)
+
+inline void next_decoy(ExampleRef &ex)
-
-inline virtual size_t small_epoch_size() const
+
+inline virtual size_t small_epoch_size() const

Return number of example in small epoch.

-
-inline virtual size_t large_epoch_size() const
+
+inline virtual size_t large_epoch_size() const

Return number of example in large epoch.

-
-inline virtual void reset()
+
+inline virtual void reset()

Reset iterators to start.

-
-inline virtual bool has_group() const
+
+inline virtual bool has_group() const
-
-inline virtual void check_batch_size(unsigned bsize) const
+
+inline virtual void check_batch_size(unsigned bsize) const

has group field

-
-virtual int populate(std::istream &lines, int numlabels)
+
+virtual int populate(std::istream &lines, int numlabels)

read in all the example refs from lines, but does not setup

-
-inline virtual size_t get_small_epoch_num() const
+
+inline virtual size_t get_small_epoch_num() const

Return current small epoch number.

-
-inline virtual size_t get_large_epoch_num() const
+
+inline virtual size_t get_large_epoch_num() const

Return current large epoch number.

@@ -612,255 +524,255 @@

The BalancedExa

Private Members

-
-UniformExampleRefProvider actives
+
+UniformExampleRefProvider actives
-
-UniformExampleRefProvider decoys
+
+UniformExampleRefProvider decoys
-
-size_t current = 0
+
+size_t current = 0
-
-unsigned labelpos = 0
+
+unsigned labelpos = 0

-
-
-

The CallbackIndexTyper class

+ +
+

The CallbackIndexTyper class

-
-class libmolgrid::CallbackIndexTyper : public AtomIndexTyper
+
+class libmolgrid::CallbackIndexTyper : public AtomIndexTyper

Use user-provided callback to do typing Must provide the number of types and their names.

Public Types

-
-using AtomIndexTyperFunc = std::function<std::pair<int, float>(OpenBabel::OBAtom *a)>
+
+using AtomIndexTyperFunc = std::function<std::pair<int, float>(OpenBabel::OBAtom *a)>

Public Functions

-
-CallbackIndexTyper(AtomIndexTyperFunc f, unsigned ntypes, const std::vector<std::string> &names = std::vector<std::string>())
+
+CallbackIndexTyper(AtomIndexTyperFunc f, unsigned ntypes, const std::vector<std::string> &names = std::vector<std::string>())

iniitalize callbacktyper, if names are not provided, numerical names will be generated

-
-inline virtual unsigned num_types() const
+
+inline virtual unsigned num_types() const

return number of types

-
-inline virtual std::pair<int, float> get_atom_type_index(OpenBabel::OBAtom *a) const
+
+inline virtual std::pair<int, float> get_atom_type_index(OpenBabel::OBAtom *a) const

return type index of a

-
-inline virtual std::pair<int, float> get_int_type(int t) const
+
+inline virtual std::pair<int, float> get_int_type(int t) const

return type and radius given a precomputed type, the meaning of which is specific to the implementation

-
-inline virtual std::vector<std::string> get_type_names() const
+
+inline virtual std::vector<std::string> get_type_names() const

return vector of string representations of types this isn’t expected to be particularly efficient

-
-inline virtual std::vector<float> get_type_radii() const
+
+inline virtual std::vector<float> get_type_radii() const

if applicable to the typer, return the standard atomic radius of each type

-
-inline virtual float get_atom_type_vector(OpenBabel::OBAtom *a, std::vector<float> &typ) const final
+
+inline virtual float get_atom_type_vector(OpenBabel::OBAtom *a, std::vector<float> &typ) const final
-
-inline virtual bool is_vector_typer() const
+
+inline virtual bool is_vector_typer() const

Public Static Functions

-
-static void set_names(unsigned ntypes, std::vector<std::string> &type_names, const std::vector<std::string> &names)
+
+static void set_names(unsigned ntypes, std::vector<std::string> &type_names, const std::vector<std::string> &names)

Private Members

-
-AtomIndexTyperFunc callback = nullptr
+
+AtomIndexTyperFunc callback = nullptr
-
-std::vector<std::string> type_names
+
+std::vector<std::string> type_names
-
-const float default_radius = 1.6
+
+const float default_radius = 1.6
-
-
-

The CallbackVectorTyper class

+ +
+

The CallbackVectorTyper class

-
-class libmolgrid::CallbackVectorTyper : public AtomVectorTyper
+
+class libmolgrid::CallbackVectorTyper : public AtomVectorTyper

Use user-provided callback to do vector typing Must provide the number of types and their names.

Public Types

-
-using AtomVectorTyperFunc = std::function<float(OpenBabel::OBAtom *a, std::vector<float>&)>
+
+using AtomVectorTyperFunc = std::function<float(OpenBabel::OBAtom *a, std::vector<float>&)>

Public Functions

-
-CallbackVectorTyper(AtomVectorTyperFunc f, unsigned ntypes, const std::vector<std::string> &names = std::vector<std::string>())
+
+CallbackVectorTyper(AtomVectorTyperFunc f, unsigned ntypes, const std::vector<std::string> &names = std::vector<std::string>())

iniitalize callbacktyper, if names are not provided, numerical names will be generated

-
-inline virtual unsigned num_types() const
+
+inline virtual unsigned num_types() const

return number of types

-
-inline virtual float get_atom_type_vector(OpenBabel::OBAtom *a, std::vector<float> &typ) const
+
+inline virtual float get_atom_type_vector(OpenBabel::OBAtom *a, std::vector<float> &typ) const

set type vector and return radius for a

-
-inline virtual std::vector<std::string> get_type_names() const
+
+inline virtual std::vector<std::string> get_type_names() const
-
-inline virtual std::pair<int, float> get_atom_type_index(OpenBabel::OBAtom *a) const final
+
+inline virtual std::pair<int, float> get_atom_type_index(OpenBabel::OBAtom *a) const final
-
-inline virtual std::vector<float> get_vector_type_radii() const
+
+inline virtual std::vector<float> get_vector_type_radii() const

return radii of types

-
-inline virtual bool is_vector_typer() const
+
+inline virtual bool is_vector_typer() const
-
-inline virtual std::pair<int, float> get_int_type(int t) const
+
+inline virtual std::pair<int, float> get_int_type(int t) const

Private Members

-
-AtomVectorTyperFunc callback = nullptr
+
+AtomVectorTyperFunc callback = nullptr
-
-std::vector<std::string> type_names
+
+std::vector<std::string> type_names
-
-
-

The CartesianGrid class

+ +
+

The CartesianGrid class

-
-template<class G>
class libmolgrid::CartesianGrid
+
+template<class G>
class libmolgrid::CartesianGrid

Wrapper around grid of type G that imposes Cartesian coordinates. Includes center and resolution and supports (eventually) interpolation.

Public Functions

-
-inline CartesianGrid(const G &g, float3 c, float res)
+
+inline CartesianGrid(const G &g, float3 c, float res)

Initialize CartesianGrid.

-
-inline ~CartesianGrid()
+
+inline ~CartesianGrid()
-
-inline float3 center() const
+
+inline float3 center() const

return center of grid

-
-inline float resolution() const
+
+inline float resolution() const

return resolution of grid

-
-inline G &grid()
+
+inline G &grid()

return underlying grid

-
-inline const G &grid() const
+
+inline const G &grid() const
-
-inline float3 cart2grid(float x, float y, float z) const
+
+inline float3 cart2grid(float x, float y, float z) const

return grid coordinates (not rounded) for Cartesian coordinates

-
-inline float3 grid2cart(unsigned i, unsigned j, unsigned k) const
+
+inline float3 grid2cart(unsigned i, unsigned j, unsigned k) const

return Cartesian coordinates of provided grid position

-
-G::type interpolate(size_t channel, float x, float y, float z) const
+
+G::type interpolate(size_t channel, float x, float y, float z) const

return linear interpolation of value at specify position

@@ -868,331 +780,331 @@

The CartesianGr

Private Members

-
-G grid_
+
+G grid_
-
-size_t dimensions[3] = {0,}
+
+size_t dimensions[3] = {0,}
-
-float3 center_ = {0,}
+
+float3 center_ = {0,}
-
-float3 origin_ = {0,}
+
+float3 origin_ = {0,}
-
-float resolution_ = 0.0
+
+float resolution_ = 0.0

-
-
-

The CoordCache class

+ +
+

The CoordCache class

-
-class libmolgrid::CoordCache
+
+class libmolgrid::CoordCache

Load and cache molecular coordinates and atom types.

Precalculated molcache2 files are supported and are memory mapped for efficient memory usage when running multiple training runs.

Public Functions

-
-inline CoordCache()
+
+inline CoordCache()
-
-CoordCache(std::shared_ptr<AtomTyper> t, const ExampleProviderSettings &settings, const std::string &mc = "")
+
+CoordCache(std::shared_ptr<AtomTyper> t, const ExampleProviderSettings &settings, const std::string &mc = "")
-
-inline ~CoordCache()
+
+inline ~CoordCache()
-
-void set_coords(const char *fname, CoordinateSet &coord)
+
+void set_coords(const char *fname, CoordinateSet &coord)

Set coord to the appropriate CoordinateSet for fname.

-

-
Parameters
    -
  • [in] fname: file name, not including root directory prefix, of molecular data

  • -
  • [out] coord: CoordinateSet for passed molecule

  • +
    +
    Parameters
    +
      +
    • fname[in] file name, not including root directory prefix, of molecular data

    • +
    • coord[out] CoordinateSet for passed molecule

    -

-
-inline size_t num_types() const
+
+inline size_t num_types() const

return the number of types (channels) each example will have

-
-inline std::vector<std::string> get_type_names() const
+
+inline std::vector<std::string> get_type_names() const

Private Types

-
-using MemCache = std::unordered_map<const char*, CoordinateSet>
+
+using MemCache = std::unordered_map<const char*, CoordinateSet>

Private Members

-
-MemCache memcache
+
+MemCache memcache
-
-std::shared_ptr<AtomTyper> typer
+
+std::shared_ptr<AtomTyper> typer
-
-std::string data_root
+
+std::string data_root
-
-std::string molcache
+
+std::string molcache
-
-bool use_cache = true
+
+bool use_cache = true
-
-bool addh = true
+
+bool addh = true
-
-bool make_vector_types = false
+
+bool make_vector_types = false

protonate

-
-boost::iostreams::mapped_file_source cache_map
+
+boost::iostreams::mapped_file_source cache_map

convert index types to vector, will also convert to type based radii and add a dummy type

-
-std::unordered_map<const char*, size_t> offsets
+
+std::unordered_map<const char*, size_t> offsets
-
-
-

The CoordinateSet class

+ +
+

The CoordinateSet class

-
-struct libmolgrid::CoordinateSet
+
+struct libmolgrid::CoordinateSet

A collection of typed atomic coordinates.

Types may be specified either as an index or a dense vector. Typically, only one type formated will be initialized although a vector one-hot encoding of an index type can be created.

Public Functions

-
-inline CoordinateSet()
+
+inline CoordinateSet()

source (filename) of coordinates, if available

-
-CoordinateSet(OpenBabel::OBMol *mol, const AtomTyper &typer)
+
+CoordinateSet(OpenBabel::OBMol *mol, const AtomTyper &typer)

initialize with obmol

-
-CoordinateSet(OpenBabel::OBMol *mol)
+
+CoordinateSet(OpenBabel::OBMol *mol)
-
-CoordinateSet(const std::vector<float3> &c, const std::vector<int> &t, const std::vector<float> &r, unsigned maxt)
+
+CoordinateSet(const std::vector<float3> &c, const std::vector<int> &t, const std::vector<float> &r, unsigned maxt)

initialize with indexed types

-
-CoordinateSet(const std::vector<float3> &c, const std::vector<float> &t, const std::vector<float> &r, unsigned maxt)
+
+CoordinateSet(const std::vector<float3> &c, const std::vector<float> &t, const std::vector<float> &r, unsigned maxt)
-
-CoordinateSet(const Grid2f &coords, const Grid1f &t, const Grid1f &radii, unsigned maxt)
+
+CoordinateSet(const Grid2f &coords, const Grid1f &t, const Grid1f &radii, unsigned maxt)

initialize with indexed types using grids - data is copied into coordinate set

-
-CoordinateSet(const Grid2fCUDA &coords, const Grid1fCUDA &t, const Grid1fCUDA &radii, unsigned maxt)
+
+CoordinateSet(const Grid2fCUDA &coords, const Grid1fCUDA &t, const Grid1fCUDA &radii, unsigned maxt)
-
-CoordinateSet(const std::vector<float3> &c, const std::vector<std::vector<float>> &t, const std::vector<float> &r)
+
+CoordinateSet(const std::vector<float3> &c, const std::vector<std::vector<float>> &t, const std::vector<float> &r)

initialize with vector types

-
-CoordinateSet(const Grid2f &cr, const Grid2f &t, const Grid1f &r)
+
+CoordinateSet(const Grid2f &cr, const Grid2f &t, const Grid1f &r)

initialize with vector types using grids - data is copied into coordinate set

-
-CoordinateSet(const Grid2fCUDA &cr, const Grid2fCUDA &t, const Grid1fCUDA &r)
+
+CoordinateSet(const Grid2fCUDA &cr, const Grid2fCUDA &t, const Grid1fCUDA &r)
-
-CoordinateSet(const CoordinateSet &rec, const CoordinateSet &lig, bool unique_index_types = true)
+
+CoordinateSet(const CoordinateSet &rec, const CoordinateSet &lig, bool unique_index_types = true)

create coordinate set from the merger of two coordinate sets if unique_index_types, the index types of the second are offset

-
-template<bool isCUDA>
size_t copyTo(Grid<float, 2, isCUDA> &c, Grid<float, 1, isCUDA> &t, Grid<float, 1, isCUDA> &r) const
+
+template<bool isCUDA>
size_t copyTo(Grid<float, 2, isCUDA> &c, Grid<float, 1, isCUDA> &t, Grid<float, 1, isCUDA> &r) const

Copy coordinates into provided grids. If grids are too small, copy will be truncated. If grids are too large, extra elements will not be overwritten (fill with pad characters before copying). Returns the number of coordinates copied.

-
-template<bool isCUDA>
size_t copyTo(Grid<float, 2, isCUDA> &c, Grid<float, 2, isCUDA> &t, Grid<float, 1, isCUDA> &r) const
+
+template<bool isCUDA>
size_t copyTo(Grid<float, 2, isCUDA> &c, Grid<float, 2, isCUDA> &t, Grid<float, 1, isCUDA> &r) const

Copy coordinates into provided grids. If grids are too small, copy will be truncated. If grids are too large, extra elements will not be overwritten (fill with pad characters before copying). Returns the number of coordinates copied. Vectored types are copied a row at a time so truncation/expansion happens per-atom.

-
-inline bool has_indexed_types() const
+
+inline bool has_indexed_types() const

return true if index types are available (or no atoms)

-
-inline bool has_vector_types() const
+
+inline bool has_vector_types() const

return true if vector types are available (or no atoms)

-
-void make_vector_types(bool include_dummy_type = false, const std::vector<float> &type_radii = std::vector<float>())
+
+void make_vector_types(bool include_dummy_type = false, const std::vector<float> &type_radii = std::vector<float>())

convert index types to vector types in-place

-

-
Parameters
    -
  • include_dummy_type: - if true will create an additional type at end (has zero radii if type radii are provided is true)

  • -
  • type_radii: - if provided, convert radii array to be type indexed,

  • +
    +
    Parameters
    +
      +
    • include_dummy_type – - if true will create an additional type at end (has zero radii if type radii are provided is true)

    • +
    • type_radii – - if provided, convert radii array to be type indexed,

    -

-
-inline unsigned num_types() const
+
+inline unsigned num_types() const

return number of types

-
-inline void set_num_types(unsigned maxt)
+
+inline void set_num_types(unsigned maxt)

set number of (indexed) types

-
-void sum_types(Grid<float, 1, false> &sum, bool zerofirst = true) const
+
+void sum_types(Grid<float, 1, false> &sum, bool zerofirst = true) const

compute the sum of each type class across vector types for this set, if zerofirst is false, add to existing elements of sum

-
-void sum_types(Grid<float, 1, true> &sum, bool zerofirst = true) const
+
+void sum_types(Grid<float, 1, true> &sum, bool zerofirst = true) const
-
-inline unsigned size() const
+
+inline unsigned size() const

number of atoms

-
-float3 center() const
+
+float3 center() const

return mean of coordinates

-
-inline void togpu(bool copy = true)
+
+inline void togpu(bool copy = true)
-
-inline void tocpu(bool copy = true)
+
+inline void tocpu(bool copy = true)
-
-inline bool operator==(const CoordinateSet &rhs) const
+
+inline bool operator==(const CoordinateSet &rhs) const
-
-inline CoordinateSet clone() const
+
+inline CoordinateSet clone() const

return deep copy

-
-void size_like(const CoordinateSet &s)
+
+void size_like(const CoordinateSet &s)

size this to have the same size as s without copying data

-
-void copyInto(const CoordinateSet &src)
+
+void copyInto(const CoordinateSet &src)

copy contents of src into this, attempting to avoid reallocation if possible

-
-void mergeInto(const CoordinateSet &rec, const CoordinateSet &lig, bool unique_index_types = true)
+
+void mergeInto(const CoordinateSet &rec, const CoordinateSet &lig, bool unique_index_types = true)

merge provided sets into this, reallocating as necessary

-
-void dump(std::ostream &out) const
+
+void dump(std::ostream &out) const

for debugging

@@ -1200,239 +1112,239 @@

The CoordinateS

Public Members

-
-MGrid2f coords = {0, 3}
+
+MGrid2f coords = {0, 3}
-
-MGrid1f type_index = {0}
+
+MGrid1f type_index = {0}
-
-MGrid2f type_vector = {0, 0}
+
+MGrid2f type_vector = {0, 0}
-
-MGrid1f radii = {0}
+
+MGrid1f radii = {0}
-
-unsigned max_type = 0
+
+unsigned max_type = 0

radii - for type_index, indexed by atom, for type vector, indexed by type

-
-const char *src = nullptr
+
+const char *src = nullptr

-
-
-

The ElementIndexTyper class

+
+
+

The ElementIndexTyper class

-
-class libmolgrid::ElementIndexTyper : public AtomIndexTyper
+
+class libmolgrid::ElementIndexTyper : public AtomIndexTyper

Calculate element types.

There are quite a few elements, so should probably run this through an organic chem atom mapper that reduces to number of types. The type id is the atomic number. Any element with atomic number greater than or equal to the specified max is assigned type zero.

Public Functions

-
-inline ElementIndexTyper(unsigned maxe = 84)
+
+inline ElementIndexTyper(unsigned maxe = 84)
-
-inline virtual ~ElementIndexTyper()
+
+inline virtual ~ElementIndexTyper()
-
-virtual unsigned num_types() const
+
+virtual unsigned num_types() const

return number of types

-
-virtual std::pair<int, float> get_atom_type_index(OpenBabel::OBAtom *a) const
+
+virtual std::pair<int, float> get_atom_type_index(OpenBabel::OBAtom *a) const

return type index of a

-
-virtual std::pair<int, float> get_int_type(int t) const
+
+virtual std::pair<int, float> get_int_type(int t) const

look up covalent radius of element or provide default

-
-virtual std::vector<std::string> get_type_names() const
+
+virtual std::vector<std::string> get_type_names() const

return vector of string representations of types this isn’t expected to be particularly efficient

-
-virtual std::vector<float> get_type_radii() const
+
+virtual std::vector<float> get_type_radii() const

return atomic radius of each type, generic type is given zero radius

-
-inline virtual float get_atom_type_vector(OpenBabel::OBAtom *a, std::vector<float> &typ) const final
+
+inline virtual float get_atom_type_vector(OpenBabel::OBAtom *a, std::vector<float> &typ) const final
-
-inline virtual bool is_vector_typer() const
+
+inline virtual bool is_vector_typer() const

Public Static Functions

-
-static void set_names(unsigned ntypes, std::vector<std::string> &type_names, const std::vector<std::string> &names)
+
+static void set_names(unsigned ntypes, std::vector<std::string> &type_names, const std::vector<std::string> &names)

Private Members

-
-unsigned last_elem
+
+unsigned last_elem
-
-const float default_radius = 1.6
+
+const float default_radius = 1.6
-
-
-

The Example class

+ +
+

The Example class

-
-struct libmolgrid::Example
+
+struct libmolgrid::Example

A single example represented by its typed coordinates and label(s)

Public Functions

-
-size_t num_coordinates() const
+
+size_t num_coordinates() const

for grouped inputs, true if not first member of group

The total number of atom across all sets

-
-size_t num_types(bool unique_index_types = true) const
+
+size_t num_types(bool unique_index_types = true) const

The maximum number of types across all sets - if unique_index_types is true, each set gets different type ids.

-
-template<bool isCUDA>
void sum_types(Grid<float, 1, isCUDA> &sum, bool unique_types = true) const
+
+template<bool isCUDA>
void sum_types(Grid<float, 1, isCUDA> &sum, bool unique_types = true) const

Accumulate sum of each type class into sum.

-
-CoordinateSet merge_coordinates(unsigned start = 0, bool unique_index_types = true) const
+
+CoordinateSet merge_coordinates(unsigned start = 0, bool unique_index_types = true) const

Combine all coordinate sets into one and return it. All coordinate sets must have the same kind of typing. The result is a copy of the input coordinates.

-

-
Parameters
    -
  • [in] start: ignore coordinates sets prior to this index (default zero)

  • -
  • [in] unique_indexed_types: if true, different coordinate sets will have unique, non-overlapping types

  • +
    +
    Parameters
    +
      +
    • start[in] ignore coordinates sets prior to this index (default zero)

    • +
    • unique_indexed_types[in] if true, different coordinate sets will have unique, non-overlapping types

    -

-
-void merge_coordinates(Grid2f &coords, Grid1f &type_index, Grid1f &radii, unsigned start = 0, bool unique_index_types = true) const
+
+void merge_coordinates(Grid2f &coords, Grid1f &type_index, Grid1f &radii, unsigned start = 0, bool unique_index_types = true) const

Combine all coordinate sets into one. All coordinate sets must have index typing.

-

-
Parameters
    -
  • [out] coords: combined coordinates

  • -
  • [out] type_index: combined types

  • -
  • [out] radii: combined radii

  • -
  • [in] start: ignore coordinates sets prior to this index (default zero)

  • -
  • [in] unique_indexed_types: if true, different coordinate sets will have unique, non-overlapping types

  • +
    +
    Parameters
    +
      +
    • coords[out] combined coordinates

    • +
    • type_index[out] combined types

    • +
    • radii[out] combined radii

    • +
    • start[in] ignore coordinates sets prior to this index (default zero)

    • +
    • unique_indexed_types[in] if true, different coordinate sets will have unique, non-overlapping types

    -

-
-void merge_coordinates(std::vector<float3> &coords, std::vector<float> &type_index, std::vector<float> &radii, unsigned start = 0, bool unique_index_types = true) const
+
+void merge_coordinates(std::vector<float3> &coords, std::vector<float> &type_index, std::vector<float> &radii, unsigned start = 0, bool unique_index_types = true) const
-
-void merge_coordinates(Grid2f &coords, Grid2f &type_vector, Grid1f &radii, unsigned start = 0, bool unique_index_types = true) const
+
+void merge_coordinates(Grid2f &coords, Grid2f &type_vector, Grid1f &radii, unsigned start = 0, bool unique_index_types = true) const

Combine all coordinate sets into one. All coordinate sets must have vector typing.

-

-
Parameters
    -
  • [out] coords: combined coordinates

  • -
  • [out] type_index: combined types

  • -
  • [out] radii: combined radii

  • -
  • [in] start: ignore coordinates sets prior to this index (default zero)

  • -
  • [in] unique_indexed_types: if true, different coordinate sets will have unique, non-overlapping types

  • +
    +
    Parameters
    +
      +
    • coords[out] combined coordinates

    • +
    • type_index[out] combined types

    • +
    • radii[out] combined radii

    • +
    • start[in] ignore coordinates sets prior to this index (default zero)

    • +
    • unique_indexed_types[in] if true, different coordinate sets will have unique, non-overlapping types

    -

-
-void merge_coordinates(std::vector<float3> &coords, std::vector<std::vector<float>> &type_vector, std::vector<float> &radii, unsigned start = 0, bool unique_index_types = true) const
+
+void merge_coordinates(std::vector<float3> &coords, std::vector<std::vector<float>> &type_vector, std::vector<float> &radii, unsigned start = 0, bool unique_index_types = true) const
-
-inline bool operator==(const Example &rhs) const
+
+inline bool operator==(const Example &rhs) const
-
-inline void togpu()
+
+inline void togpu()
-
-inline void tocpu()
+
+inline void tocpu()
-
-inline void make_vector_types()
+
+inline void make_vector_types()

Convert coordinate sets to vector types.

-
-bool has_vector_types(unsigned start = 0) const
+
+bool has_vector_types(unsigned start = 0) const

Return true if all coord_sets >= start have vector types (or is empty)

-
-bool has_index_types(unsigned start = 0) const
+
+bool has_index_types(unsigned start = 0) const

Return true if all coord_sets >= start have index types (or is empty)

@@ -1440,111 +1352,111 @@

The Example

Public Members

-
-std::vector<CoordinateSet> sets
+
+std::vector<CoordinateSet> sets
-
-std::vector<float> labels
+
+std::vector<float> labels
-
-int group = -1
+
+int group = -1
-
-bool seqcont = false
+
+bool seqcont = false

Public Static Functions

-
-template<bool isCUDA>
static void extract_labels(const std::vector<Example> &examples, Grid<float, 2, isCUDA> &out)
+
+template<bool isCUDA>
static void extract_labels(const std::vector<Example> &examples, Grid<float, 2, isCUDA> &out)

Extract labels from a vector of examples, as returned by ExampleProvider.next_batch.

-

-
Parameters
    -
  • [in] examples: vector of examples

  • -
  • [out] grid: 2D grid (NxL)

  • +
    +
    Parameters
    +
      +
    • examples[in] vector of examples

    • +
    • grid[out] 2D grid (NxL)

    -

-
-template<bool isCUDA>
static void extract_label(const std::vector<Example> &examples, unsigned labelpos, Grid<float, 1, isCUDA> &out)
+
+template<bool isCUDA>
static void extract_label(const std::vector<Example> &examples, unsigned labelpos, Grid<float, 1, isCUDA> &out)

Extract a specific label from a vector of examples, as returned by ExampleProvider.next_batch.

-

-
Parameters
    -
  • [in] examples: vector of examples

  • -
  • [in] labelpos: position of label

  • -
  • [out] out: 1D grid (N)

  • +
    +
    Parameters
    +
      +
    • examples[in] vector of examples

    • +
    • labelpos[in] position of label

    • +
    • out[out] 1D grid (N)

    -

-
-
-

The ExampleExtractor class

+ +
+

The ExampleExtractor class

-
-class libmolgrid::ExampleExtractor
+
+class libmolgrid::ExampleExtractor

Converts an ExampleRef to and Example Loads (potentially cached) data and applies atom typers to create coordinate sets. Takes care of in-memory caching (optional) and also supports memory mapped gnina cache files (incurring slight overhead on recalculation of atom types in exchange for substantially less real mem usage).

Can take multiple atom typers, in which case they are applied in order, with the last being repeated.

Public Functions

-
-inline ExampleExtractor(const ExampleProviderSettings &settings, std::shared_ptr<AtomTyper> t)
+
+inline ExampleExtractor(const ExampleProviderSettings &settings, std::shared_ptr<AtomTyper> t)
-
-inline ExampleExtractor(const ExampleProviderSettings &settings, std::shared_ptr<AtomTyper> t1, std::shared_ptr<AtomTyper> t2)
+
+inline ExampleExtractor(const ExampleProviderSettings &settings, std::shared_ptr<AtomTyper> t1, std::shared_ptr<AtomTyper> t2)
-
-inline ExampleExtractor(const ExampleProviderSettings &settings, const std::vector<std::shared_ptr<AtomTyper>> &typrs, std::vector<std::string> molcaches = std::vector<std::string>())
+
+inline ExampleExtractor(const ExampleProviderSettings &settings, const std::vector<std::shared_ptr<AtomTyper>> &typrs, std::vector<std::string> molcaches = std::vector<std::string>())

setup an extract according to settings, types and molcaches if not present, will get molcaches from settings if there, repeating ligand if necessary

-
-inline virtual ~ExampleExtractor()
+
+inline virtual ~ExampleExtractor()
-
-virtual void extract(const ExampleRef &ref, Example &ex)
+
+virtual void extract(const ExampleRef &ref, Example &ex)

Extract ref into ex.

-
-virtual size_t num_types() const
+
+virtual size_t num_types() const

return the number of types (channels) each example will have Note: this is only accurate if types are explicitly setup. Must provide an ExampleRef

-
-virtual size_t num_types(const ExampleRef &ref) const
+
+virtual size_t num_types(const ExampleRef &ref) const
-
-virtual std::vector<std::string> get_type_names() const
+
+virtual std::vector<std::string> get_type_names() const

return names of types for explicitly typed examples type names are prepended by coordinate set index

@@ -1552,185 +1464,185 @@

The ExampleExtr

Private Functions

-
-size_t count_types(unsigned n) const
+
+size_t count_types(unsigned n) const

Private Members

-
-std::vector<CoordCache> coord_caches
+
+std::vector<CoordCache> coord_caches
-
-bool duplicate_poses = false
+
+bool duplicate_poses = false

-
-
-

The ExampleProvider class

+ +
+

The ExampleProvider class

-
-class libmolgrid::ExampleProvider
+
+class libmolgrid::ExampleProvider

Given a file of examples, provide Example classes one at a time This contains an ExampleRefProvider, which can be configured using a single settings object if so desired, and an example extractor. Note that cache_structs is true by default which will load the entirety of the dataset into memory.

An example files contains a single example on each line where an example consists of some number of numerical labels (num_labels, will be auto-detected if not specified) followed by file paths to molecular data, all space separated.

Public Functions

-
-ExampleProvider(const ExampleProviderSettings &settings = ExampleProviderSettings())
+
+ExampleProvider(const ExampleProviderSettings &settings = ExampleProviderSettings())

Create provider using default gnina typing.

-
-ExampleProvider(const ExampleProviderSettings &settings, std::shared_ptr<AtomTyper> t)
+
+ExampleProvider(const ExampleProviderSettings &settings, std::shared_ptr<AtomTyper> t)

Create provider/extractor according to settings with single typer.

-
-ExampleProvider(const ExampleProviderSettings &settings, std::shared_ptr<AtomTyper> t1, std::shared_ptr<AtomTyper> t2)
+
+ExampleProvider(const ExampleProviderSettings &settings, std::shared_ptr<AtomTyper> t1, std::shared_ptr<AtomTyper> t2)

Create provider/extractor according to settings with two typers.

-
-ExampleProvider(const ExampleProviderSettings &settings, const std::vector<std::shared_ptr<AtomTyper>> &typrs, const std::vector<std::string> &molcaches = std::vector<std::string>())
+
+ExampleProvider(const ExampleProviderSettings &settings, const std::vector<std::shared_ptr<AtomTyper>> &typrs, const std::vector<std::string> &molcaches = std::vector<std::string>())

Create provider/extractor according to settings.

-
-ExampleProvider(std::shared_ptr<ExampleRefProvider> p, const ExampleExtractor &e)
+
+ExampleProvider(std::shared_ptr<ExampleRefProvider> p, const ExampleExtractor &e)

use provided provider

-
-inline virtual ~ExampleProvider()
+
+inline virtual ~ExampleProvider()
-
-virtual void populate(const std::string &fname, int num_labels = -1)
+
+virtual void populate(const std::string &fname, int num_labels = -1)

load example file file fname and setup provider

-
-virtual void populate(const std::vector<std::string> &fnames, int num_labels = -1)
+
+virtual void populate(const std::vector<std::string> &fnames, int num_labels = -1)

load multiple example files

-
-inline virtual size_t num_labels() const
+
+inline virtual size_t num_labels() const

return number of labels for each example (computed from first example only)

-
-virtual void next(Example &ex)
+
+virtual void next(Example &ex)

provide next example

-
-inline virtual Example next()
+
+inline virtual Example next()
-
-inline virtual size_t get_small_epoch_num() const
+
+inline virtual size_t get_small_epoch_num() const

Return current small epoch number A small epoch occurs once every training example has been seen at MOST once. For example, when providing a balanced view of unbalanced data, a small epoch will complete once the less common class has been iterated over. Note this is the epoch of the next example to be provided, not the previous.

-
-inline virtual size_t get_large_epoch_num() const
+
+inline virtual size_t get_large_epoch_num() const

Return current large epoch number A large epoch occurs once every training example has been seen at LEAST once. For example, when providing a balanced view of unbalanced data, a large epoch will complete once the more common class has been iterated over. Note this is the epoch of the next example to be provided, not the previous.

-
-inline virtual size_t small_epoch_size() const
+
+inline virtual size_t small_epoch_size() const

Return number of example in small epoch.

-
-inline virtual size_t large_epoch_size() const
+
+inline virtual size_t large_epoch_size() const

Return number of example in large epoch.

-
-inline virtual void reset()
+
+inline virtual void reset()

Reset to beginning.

-
-virtual void skip(unsigned n)
+
+virtual void skip(unsigned n)

skip over the first n examples

-
-inline const ExampleProviderSettings &settings() const
+
+inline const ExampleProviderSettings &settings() const

return settings created with

-
-virtual void next_batch(std::vector<Example> &ex, unsigned batch_size = 0)
+
+virtual void next_batch(std::vector<Example> &ex, unsigned batch_size = 0)

provide a batch of examples

-
-inline virtual std::vector<Example> next_batch(unsigned batch_size = 0)
+
+inline virtual std::vector<Example> next_batch(unsigned batch_size = 0)

provide a batch of examples, unspecified or 0 batch_size uses default batch size

-
-inline bool at_new_epoch()
+
+inline bool at_new_epoch()

return true if we have crossed into a new epoch (or are about to) Note that once this returns true once, it won’t again until the next epoch has been consumed.

-
-inline ExampleExtractor &get_extractor()
+
+inline ExampleExtractor &get_extractor()
-
-inline ExampleRefProvider &get_provider()
+
+inline ExampleRefProvider &get_provider()
-
-inline size_t num_types() const
+
+inline size_t num_types() const

number of types

-
-inline std::vector<std::string> get_type_names() const
+
+inline std::vector<std::string> get_type_names() const

names of types (requires explicit typing)

-
-inline size_t size() const
+
+inline size_t size() const

return number of examples

@@ -1738,8 +1650,8 @@

The ExampleProv

Public Static Functions

-
-static std::shared_ptr<ExampleRefProvider> createProvider(const ExampleProviderSettings &settings)
+
+static std::shared_ptr<ExampleRefProvider> createProvider(const ExampleProviderSettings &settings)

return provider as specifyed by settings

@@ -1747,55 +1659,55 @@

The ExampleProv

Private Members

-
-std::shared_ptr<ExampleRefProvider> provider
+
+std::shared_ptr<ExampleRefProvider> provider
-
-ExampleExtractor extractor
+
+ExampleExtractor extractor
-
-ExampleProviderSettings init_settings
+
+ExampleProviderSettings init_settings
-
-size_t last_epoch = 0
+
+size_t last_epoch = 0

-
-
-

The ExampleProviderSettings class

+ +
+

The ExampleProviderSettings class

-
-struct ExampleProviderSettings
+
+struct ExampleProviderSettings

Description of how examples should be provided This provides configuration to example refs, extractors, and the provider itself as a declarative syntax.

-
-
-

The ExampleRef class

+ +
+

The ExampleRef class

-
-struct libmolgrid::ExampleRef
+
+struct libmolgrid::ExampleRef

a reference to a single example - the parsed line. This is distinct from an Example to enable out-of-core training (although the default should be to load all examples into memory).

Public Functions

-
-inline ExampleRef()
+
+inline ExampleRef()

true if not first frame of group

-
-ExampleRef(const std::string &line, int numlabels, bool hasgroup = false)
+
+ExampleRef(const std::string &line, int numlabels, bool hasgroup = false)

parse a line into an example reference - should have numlabels labels

@@ -1803,172 +1715,172 @@

The ExampleRef<

Public Members

-
-std::vector<const char*> files
+
+std::vector<const char*> files
-
-std::vector<float> labels
+
+std::vector<float> labels
-
-int group = -1
+
+int group = -1
-
-bool seqcont = false
+
+bool seqcont = false

-
-
-

The ExampleRefProvider class

+ +
+

The ExampleRefProvider class

-
-class libmolgrid::ExampleRefProvider
+
+class libmolgrid::ExampleRefProvider

abstract class for storing training example references

Subclassed by BalancedExampleRefProvider, GroupedExampleRefProvider< Provider >, ReceptorStratifiedExampleRefProvider< Provider, K >, SamplingExampleRefProvider< Provider1, Provider2 >, UniformExampleRefProvider, ValueStratifiedExampleRefProfider< Provider >

Public Functions

-
-inline ExampleRefProvider()
+
+inline ExampleRefProvider()
-
-inline ExampleRefProvider(const ExampleProviderSettings &settings)
+
+inline ExampleRefProvider(const ExampleProviderSettings &settings)
-
-virtual void addref(const ExampleRef &ex) = 0
+
+virtual void addref(const ExampleRef &ex) = 0
-
-virtual void setup() = 0
+
+virtual void setup() = 0
-
-virtual void nextref(ExampleRef &ex) = 0
+
+virtual void nextref(ExampleRef &ex) = 0
-
-virtual unsigned size() const = 0
+
+virtual unsigned size() const = 0
-
-inline virtual ~ExampleRefProvider()
+
+inline virtual ~ExampleRefProvider()
-
-inline virtual bool has_group() const
+
+inline virtual bool has_group() const
-
-inline virtual void check_batch_size(unsigned bsize) const
+
+inline virtual void check_batch_size(unsigned bsize) const

has group field

-
-virtual size_t num_labels() const = 0
+
+virtual size_t num_labels() const = 0

return number of labels in an example

if provider has predetermined batch size

-
-virtual int populate(std::istream &lines, int numlabels)
+
+virtual int populate(std::istream &lines, int numlabels)

read in all the example refs from lines, but does not setup

-
-inline virtual size_t get_small_epoch_num() const
+
+inline virtual size_t get_small_epoch_num() const

Return current small epoch number.

-
-inline virtual size_t get_large_epoch_num() const
+
+inline virtual size_t get_large_epoch_num() const

Return current large epoch number.

-
-virtual size_t small_epoch_size() const = 0
+
+virtual size_t small_epoch_size() const = 0

Return number of example in small epoch.

-
-virtual size_t large_epoch_size() const = 0
+
+virtual size_t large_epoch_size() const = 0

Return number of example in large epoch.

-
-virtual void reset() = 0
+
+virtual void reset() = 0

Reset iterators to start.

-
-
-

The FileAtomMapper class

+ +
+

The FileAtomMapper class

-
-class libmolgrid::FileAtomMapper : public AtomIndexTypeMapper
+
+class libmolgrid::FileAtomMapper : public AtomIndexTypeMapper

Map atom types based on provided file.

Each line for the provided file specifies a single type. Types are specified using type names. This class must be provided the type names properly indexed (should match get_type_names).

Public Functions

-
-FileAtomMapper(const std::string &fname, const std::vector<std::string> &type_names)
+
+FileAtomMapper(const std::string &fname, const std::vector<std::string> &type_names)

initialize from filename

-
-inline FileAtomMapper(std::istream &in, const std::vector<std::string> &type_names)
+
+inline FileAtomMapper(std::istream &in, const std::vector<std::string> &type_names)

initialize from stream

-
-inline virtual ~FileAtomMapper()
+
+inline virtual ~FileAtomMapper()
-
-inline virtual unsigned num_types() const
+
+inline virtual unsigned num_types() const

return number of mapped types, zero if unknown (no mapping)

-
-virtual int get_new_type(unsigned origt) const
+
+virtual int get_new_type(unsigned origt) const

return mapped type

-
-inline virtual std::vector<std::string> get_type_names() const
+
+inline virtual std::vector<std::string> get_type_names() const

return vector of string representations of types

@@ -1976,8 +1888,8 @@

The FileAtomMap

Private Functions

-
-void setup(std::istream &in)
+
+void setup(std::istream &in)

read in map

@@ -1985,376 +1897,376 @@

The FileAtomMap

Private Members

-
-std::vector<std::string> old_type_names
+
+std::vector<std::string> old_type_names
-
-std::vector<int> old_type_to_new_type
+
+std::vector<int> old_type_to_new_type
-
-std::vector<std::string> new_type_names
+
+std::vector<std::string> new_type_names

-
-
-

The FileMappedElementTyper class

+ +
+

The FileMappedElementTyper class

-
-class libmolgrid::FileMappedElementTyper : public MappedAtomIndexTyper<FileAtomMapper, ElementIndexTyper>
+
+class libmolgrid::FileMappedElementTyper : public MappedAtomIndexTyper<FileAtomMapper, ElementIndexTyper>

file mapping element types, derived class for convenient initialization

Public Functions

-
-inline FileMappedElementTyper(const std::string &fname, unsigned maxe = 84)
+
+inline FileMappedElementTyper(const std::string &fname, unsigned maxe = 84)
-
-inline FileMappedElementTyper(const ElementIndexTyper &etyper, const std::string &fname)
+
+inline FileMappedElementTyper(const ElementIndexTyper &etyper, const std::string &fname)
-
-inline FileMappedElementTyper(std::istream &i, unsigned maxe = 84)
+
+inline FileMappedElementTyper(std::istream &i, unsigned maxe = 84)
-
-inline FileMappedElementTyper(const ElementIndexTyper &etyper, std::istream &i)
+
+inline FileMappedElementTyper(const ElementIndexTyper &etyper, std::istream &i)
-
-inline virtual unsigned num_types() const
+
+inline virtual unsigned num_types() const

return number of types

-
-virtual unsigned num_types() const = 0
+
+virtual unsigned num_types() const = 0

return number of types

-
-inline virtual std::pair<int, float> get_atom_type_index(OpenBabel::OBAtom *a) const
+
+inline virtual std::pair<int, float> get_atom_type_index(OpenBabel::OBAtom *a) const

return type index of a

-
-inline virtual std::pair<int, float> get_int_type(int t) const
+
+inline virtual std::pair<int, float> get_int_type(int t) const

return type and radius given a precomputed type, the meaning of which is specific to the implementation

-
-inline virtual std::vector<std::string> get_type_names() const
+
+inline virtual std::vector<std::string> get_type_names() const

return vector of string representations of types this isn’t expected to be particularly efficient

-
-virtual std::vector<std::string> get_type_names() const = 0
+
+virtual std::vector<std::string> get_type_names() const = 0

return vector of string representations of types this isn’t expected to be particularly efficient

-
-inline virtual std::vector<float> get_type_radii() const
+
+inline virtual std::vector<float> get_type_radii() const

radii are the average of the underlying mapped types

-
-inline virtual std::vector<float> get_type_radii() const
+
+inline virtual std::vector<float> get_type_radii() const

if applicable to the typer, return the standard atomic radius of each type

-
-inline virtual float get_atom_type_vector(OpenBabel::OBAtom *a, std::vector<float> &typ) const final
+
+inline virtual float get_atom_type_vector(OpenBabel::OBAtom *a, std::vector<float> &typ) const final
-
-inline virtual bool is_vector_typer() const
+
+inline virtual bool is_vector_typer() const

Public Static Functions

-
-static void set_names(unsigned ntypes, std::vector<std::string> &type_names, const std::vector<std::string> &names)
+
+static void set_names(unsigned ntypes, std::vector<std::string> &type_names, const std::vector<std::string> &names)
-
-
-

The FileMappedGninaTyper class

+ +
+

The FileMappedGninaTyper class

-
-class libmolgrid::FileMappedGninaTyper : public MappedAtomIndexTyper<FileAtomMapper, GninaIndexTyper>
+
+class libmolgrid::FileMappedGninaTyper : public MappedAtomIndexTyper<FileAtomMapper, GninaIndexTyper>

file mapping element types, derived class for convenient initialization

Public Functions

-
-inline FileMappedGninaTyper(const std::string &fname, bool usec = false)
+
+inline FileMappedGninaTyper(const std::string &fname, bool usec = false)
-
-inline FileMappedGninaTyper(const GninaIndexTyper &etyper, const std::string &fname)
+
+inline FileMappedGninaTyper(const GninaIndexTyper &etyper, const std::string &fname)
-
-inline FileMappedGninaTyper(std::istream &i, bool usec = false)
+
+inline FileMappedGninaTyper(std::istream &i, bool usec = false)
-
-inline FileMappedGninaTyper(const GninaIndexTyper &etyper, std::istream &i)
+
+inline FileMappedGninaTyper(const GninaIndexTyper &etyper, std::istream &i)
-
-inline virtual unsigned num_types() const
+
+inline virtual unsigned num_types() const

return number of types

-
-virtual unsigned num_types() const = 0
+
+virtual unsigned num_types() const = 0

return number of types

-
-inline virtual std::pair<int, float> get_atom_type_index(OpenBabel::OBAtom *a) const
+
+inline virtual std::pair<int, float> get_atom_type_index(OpenBabel::OBAtom *a) const

return type index of a

-
-inline virtual std::pair<int, float> get_int_type(int t) const
+
+inline virtual std::pair<int, float> get_int_type(int t) const

return type and radius given a precomputed type, the meaning of which is specific to the implementation

-
-inline virtual std::vector<std::string> get_type_names() const
+
+inline virtual std::vector<std::string> get_type_names() const

return vector of string representations of types this isn’t expected to be particularly efficient

-
-virtual std::vector<std::string> get_type_names() const = 0
+
+virtual std::vector<std::string> get_type_names() const = 0

return vector of string representations of types this isn’t expected to be particularly efficient

-
-inline virtual std::vector<float> get_type_radii() const
+
+inline virtual std::vector<float> get_type_radii() const

radii are the average of the underlying mapped types

-
-inline virtual std::vector<float> get_type_radii() const
+
+inline virtual std::vector<float> get_type_radii() const

if applicable to the typer, return the standard atomic radius of each type

-
-inline virtual float get_atom_type_vector(OpenBabel::OBAtom *a, std::vector<float> &typ) const final
+
+inline virtual float get_atom_type_vector(OpenBabel::OBAtom *a, std::vector<float> &typ) const final
-
-inline virtual bool is_vector_typer() const
+
+inline virtual bool is_vector_typer() const

Public Static Functions

-
-static void set_names(unsigned ntypes, std::vector<std::string> &type_names, const std::vector<std::string> &names)
+
+static void set_names(unsigned ntypes, std::vector<std::string> &type_names, const std::vector<std::string> &names)
-
-
-

The GninaIndexTyper class

+ +
+

The GninaIndexTyper class

-
-class libmolgrid::GninaIndexTyper : public AtomIndexTyper
+
+class libmolgrid::GninaIndexTyper : public AtomIndexTyper

Calculate gnina types.

These are variants of AutoDock4 types.

Public Types

-
-enum type
+
+enum type

Values:

-
-enumerator Hydrogen
+
+enumerator Hydrogen
-
-enumerator PolarHydrogen
+
+enumerator PolarHydrogen
-
-enumerator AliphaticCarbonXSHydrophobe
+
+enumerator AliphaticCarbonXSHydrophobe
-
-enumerator AliphaticCarbonXSNonHydrophobe
+
+enumerator AliphaticCarbonXSNonHydrophobe
-
-enumerator AromaticCarbonXSHydrophobe
+
+enumerator AromaticCarbonXSHydrophobe
-
-enumerator AromaticCarbonXSNonHydrophobe
+
+enumerator AromaticCarbonXSNonHydrophobe
-
-enumerator Nitrogen
+
+enumerator Nitrogen
-
-enumerator NitrogenXSDonor
+
+enumerator NitrogenXSDonor
-
-enumerator NitrogenXSDonorAcceptor
+
+enumerator NitrogenXSDonorAcceptor
-
-enumerator NitrogenXSAcceptor
+
+enumerator NitrogenXSAcceptor
-
-enumerator Oxygen
+
+enumerator Oxygen
-
-enumerator OxygenXSDonor
+
+enumerator OxygenXSDonor
-
-enumerator OxygenXSDonorAcceptor
+
+enumerator OxygenXSDonorAcceptor
-
-enumerator OxygenXSAcceptor
+
+enumerator OxygenXSAcceptor
-
-enumerator Sulfur
+
+enumerator Sulfur
-
-enumerator SulfurAcceptor
+
+enumerator SulfurAcceptor
-
-enumerator Phosphorus
+
+enumerator Phosphorus
-
-enumerator Fluorine
+
+enumerator Fluorine
-
-enumerator Chlorine
+
+enumerator Chlorine
-
-enumerator Bromine
+
+enumerator Bromine
-
-enumerator Iodine
+
+enumerator Iodine
-
-enumerator Magnesium
+
+enumerator Magnesium
-
-enumerator Manganese
+
+enumerator Manganese
-
-enumerator Zinc
+
+enumerator Zinc
-
-enumerator Calcium
+
+enumerator Calcium
-
-enumerator Iron
+
+enumerator Iron
-
-enumerator GenericMetal
+
+enumerator GenericMetal
-
-enumerator Boron
+
+enumerator Boron
-
-enumerator NumTypes
+
+enumerator NumTypes
@@ -2363,179 +2275,178 @@

The GninaIndexT

Public Functions

-
-inline GninaIndexTyper(bool usec = false, const info *d = default_data)
-

Create a gnina typer.

-
Parameters
    -
  • [in] usec: use the gnina determined covalent radius.

  • -
+
+inline GninaIndexTyper(bool usec = false, const info *d = default_data)
+

Create a gnina typer.

+
+
Parameters
+

usec[in] use the gnina determined covalent radius.

-

-
-inline virtual ~GninaIndexTyper()
+
+inline virtual ~GninaIndexTyper()
-
-virtual unsigned num_types() const
+
+virtual unsigned num_types() const

return number of types

-
-virtual std::pair<int, float> get_atom_type_index(OpenBabel::OBAtom *a) const
+
+virtual std::pair<int, float> get_atom_type_index(OpenBabel::OBAtom *a) const

return type index of a

return type index and radius of a

-
-virtual std::pair<int, float> get_int_type(int t) const
+
+virtual std::pair<int, float> get_int_type(int t) const

basically look up the radius of the given gnina type

-
-virtual std::vector<std::string> get_type_names() const
+
+virtual std::vector<std::string> get_type_names() const

return vector of string representations of types

-
-virtual std::vector<float> get_type_radii() const
+
+virtual std::vector<float> get_type_radii() const

return atomic radius of each type

-
-inline const info &get_info(int t) const
+
+inline const info &get_info(int t) const

return gnina info for a given type

-
-inline virtual float get_atom_type_vector(OpenBabel::OBAtom *a, std::vector<float> &typ) const final
+
+inline virtual float get_atom_type_vector(OpenBabel::OBAtom *a, std::vector<float> &typ) const final
-
-inline virtual bool is_vector_typer() const
+
+inline virtual bool is_vector_typer() const

Public Static Functions

-
-static std::string gnina_type_name(int t)
+
+static std::string gnina_type_name(int t)

return name of default gnina type t

-
-static void set_names(unsigned ntypes, std::vector<std::string> &type_names, const std::vector<std::string> &names)
+
+static void set_names(unsigned ntypes, std::vector<std::string> &type_names, const std::vector<std::string> &names)

Private Members

-
-bool use_covalent = false
+
+bool use_covalent = false
-
-const info *data = NULL
+
+const info *data = NULL

Private Static Attributes

-
-static const info default_data[NumTypes]
+
+static const info default_data[NumTypes]
-
-struct info
+
+struct info

Information for an atom type. This includes many legacy fields.

Public Members

-
-type sm
+
+type sm
-
-const char *smina_name
+
+const char *smina_name
-
-const char *adname
+
+const char *adname
-
-unsigned anum
+
+unsigned anum
-
-float ad_radius
+
+float ad_radius
-
-float ad_depth
+
+float ad_depth
-
-float ad_solvation
+
+float ad_solvation
-
-float ad_volume
+
+float ad_volume
-
-float covalent_radius
+
+float covalent_radius
-
-float xs_radius
+
+float xs_radius
-
-bool xs_hydrophobe
+
+bool xs_hydrophobe
-
-bool xs_donor
+
+bool xs_donor
-
-bool xs_acceptor
+
+bool xs_acceptor
-
-bool ad_heteroatom
+
+bool ad_heteroatom
@@ -2543,236 +2454,236 @@

The GninaIndexT

-

-
-

The GninaIndexTyper::info class

+
+
+

The GninaIndexTyper::info class

-
-struct libmolgrid::GninaIndexTyper::info
+
+struct libmolgrid::GninaIndexTyper::info

Information for an atom type. This includes many legacy fields.

Public Members

-
-type sm
+
+type sm
-
-const char *smina_name
+
+const char *smina_name
-
-const char *adname
+
+const char *adname
-
-unsigned anum
+
+unsigned anum
-
-float ad_radius
+
+float ad_radius
-
-float ad_depth
+
+float ad_depth
-
-float ad_solvation
+
+float ad_solvation
-
-float ad_volume
+
+float ad_volume
-
-float covalent_radius
+
+float covalent_radius
-
-float xs_radius
+
+float xs_radius
-
-bool xs_hydrophobe
+
+bool xs_hydrophobe
-
-bool xs_donor
+
+bool xs_donor
-
-bool xs_acceptor
+
+bool xs_acceptor
-
-bool ad_heteroatom
+
+bool ad_heteroatom
-
-
-

The GninaVectorTyper class

+ +
+

The GninaVectorTyper class

-
-class libmolgrid::GninaVectorTyper : public AtomVectorTyper
+
+class libmolgrid::GninaVectorTyper : public AtomVectorTyper

Decompose gnina types into elements and properties. Result is boolean.

Hydrophobic, Aromatic, Donor, Acceptor

These are variants of AutoDock4 types.

Public Types

-
-enum vtype
+
+enum vtype

Values:

-
-enumerator Hydrogen
+
+enumerator Hydrogen
-
-enumerator Carbon
+
+enumerator Carbon
-
-enumerator Nitrogen
+
+enumerator Nitrogen
-
-enumerator Oxygen
+
+enumerator Oxygen
-
-enumerator Sulfur
+
+enumerator Sulfur
-
-enumerator Phosphorus
+
+enumerator Phosphorus
-
-enumerator Fluorine
+
+enumerator Fluorine
-
-enumerator Chlorine
+
+enumerator Chlorine
-
-enumerator Bromine
+
+enumerator Bromine
-
-enumerator Iodine
+
+enumerator Iodine
-
-enumerator Magnesium
+
+enumerator Magnesium
-
-enumerator Manganese
+
+enumerator Manganese
-
-enumerator Zinc
+
+enumerator Zinc
-
-enumerator Calcium
+
+enumerator Calcium
-
-enumerator Iron
+
+enumerator Iron
-
-enumerator Boron
+
+enumerator Boron
-
-enumerator GenericAtom
+
+enumerator GenericAtom
-
-enumerator AD_depth
+
+enumerator AD_depth
-
-enumerator AD_solvation
+
+enumerator AD_solvation
-
-enumerator AD_volume
+
+enumerator AD_volume
-
-enumerator XS_hydrophobe
+
+enumerator XS_hydrophobe
-
-enumerator XS_donor
+
+enumerator XS_donor
-
-enumerator XS_acceptor
+
+enumerator XS_acceptor
-
-enumerator AD_heteroatom
+
+enumerator AD_heteroatom
-
-enumerator OB_partialcharge
+
+enumerator OB_partialcharge
-
-enumerator Aromatic
+
+enumerator Aromatic
-
-enumerator NumTypes
+
+enumerator NumTypes
@@ -2781,686 +2692,686 @@

The GninaVector

Public Functions

-
-inline GninaVectorTyper(const GninaIndexTyper &ityp = GninaIndexTyper())
+
+inline GninaVectorTyper(const GninaIndexTyper &ityp = GninaIndexTyper())
-
-inline virtual ~GninaVectorTyper()
+
+inline virtual ~GninaVectorTyper()
-
-virtual unsigned num_types() const
+
+virtual unsigned num_types() const

return number of types

-
-virtual float get_atom_type_vector(OpenBabel::OBAtom *a, std::vector<float> &typ) const
+
+virtual float get_atom_type_vector(OpenBabel::OBAtom *a, std::vector<float> &typ) const

return type index of a

-
-virtual std::vector<float> get_vector_type_radii() const
+
+virtual std::vector<float> get_vector_type_radii() const

return radii of types

-
-virtual std::vector<std::string> get_type_names() const
+
+virtual std::vector<std::string> get_type_names() const
-
-inline virtual std::pair<int, float> get_atom_type_index(OpenBabel::OBAtom *a) const final
+
+inline virtual std::pair<int, float> get_atom_type_index(OpenBabel::OBAtom *a) const final
-
-inline virtual bool is_vector_typer() const
+
+inline virtual bool is_vector_typer() const
-
-inline virtual std::pair<int, float> get_int_type(int t) const
+
+inline virtual std::pair<int, float> get_int_type(int t) const

Private Members

-
-GninaIndexTyper ityper
+
+GninaIndexTyper ityper

Private Static Attributes

-
-static std::vector<std::string> vtype_names{"Hydrogen", "Carbon", "Nitrogen", "Oxygen", "Sulfur", "Phosphorus", "Fluorine", "Chlorine", "Bromine", "Iodine", "Magnesium", "Manganese", "Zinc", "Calcium", "Iron", "Boron", "GenericAtom", "AD_depth", "AD_solvation", "AD_volume", "XS_hydrophobe", "XS_donor", "XS_acceptor", "AD_heteroatom", "Aromatic", "OB_partialcharge"}
+
+static std::vector<std::string> vtype_names{"Hydrogen", "Carbon", "Nitrogen", "Oxygen", "Sulfur", "Phosphorus", "Fluorine", "Chlorine", "Bromine", "Iodine", "Magnesium", "Manganese", "Zinc", "Calcium", "Iron", "Boron", "GenericAtom", "AD_depth", "AD_solvation", "AD_volume", "XS_hydrophobe", "XS_donor", "XS_acceptor", "AD_heteroatom", "Aromatic", "OB_partialcharge"}

-
-
-

The Grid class

+ +
+

The Grid class

-
-template<typename Dtype, std::size_t NumDims, bool isCUDA = false>
class libmolgrid::Grid
+
+template<typename Dtype, std::size_t NumDims, bool isCUDA = false>
class libmolgrid::Grid

A dense array of memory stored on the CPU. The memory is owned and managed external to this class. The location and size of the memory should not change during the lifetime of the grid. If isCUDA is true, data should only be accessed in kernels.

Public Types

-
-using type = Dtype
+
+using type = Dtype
-
-using subgrid_t = Grid<Dtype, NumDims - 1, isCUDA>
+
+using subgrid_t = Grid<Dtype, NumDims - 1, isCUDA>
-
-using managed_t = ManagedGrid<Dtype, NumDims>
+
+using managed_t = ManagedGrid<Dtype, NumDims>
-
-using cpu_grid_t = Grid<Dtype, NumDims, false>
+
+using cpu_grid_t = Grid<Dtype, NumDims, false>
-
-using gpu_grid_t = Grid<Dtype, NumDims, true>
+
+using gpu_grid_t = Grid<Dtype, NumDims, true>

Public Functions

-
-CUDA_CALLABLE_MEMBER inline const size_t *dimensions() const
+
+CUDA_CALLABLE_MEMBER inline const size_t *dimensions() const

dimensions along each axis

-
-CUDA_CALLABLE_MEMBER inline size_t dimension(size_t i) const
+
+CUDA_CALLABLE_MEMBER inline size_t dimension(size_t i) const

dimensions along specified axis

-
-CUDA_CALLABLE_MEMBER inline const size_t *offsets() const
+
+CUDA_CALLABLE_MEMBER inline const size_t *offsets() const

offset for each dimension, all indexing calculations use this

-
-CUDA_CALLABLE_MEMBER inline size_t offset(size_t i) const
+
+CUDA_CALLABLE_MEMBER inline size_t offset(size_t i) const

offset for each dimension, all indexing calculations use this

-
-CUDA_CALLABLE_MEMBER inline size_t size() const
+
+CUDA_CALLABLE_MEMBER inline size_t size() const

number of elements in grid

-
-CUDA_CALLABLE_MEMBER inline Dtype *data() const
+
+CUDA_CALLABLE_MEMBER inline Dtype *data() const

pointer to underlying data

-
-CUDA_CALLABLE_MEMBER inline void set_buffer(Dtype *ptr)
+
+CUDA_CALLABLE_MEMBER inline void set_buffer(Dtype *ptr)

set the underlying memory buffer - use with caution!

-
-inline Grid()
+
+inline Grid()

Empty grid constructor.

-
-template<typename ...I>
inline Grid(Dtype *const d, I... sizes)
+
+template<typename ...I>
inline Grid(Dtype *const d, I... sizes)

Grid constructor.

Provide pointer and dimensions specified as arguments

-
-inline Grid(Dtype *const d, size_t *sizes)
+
+inline Grid(Dtype *const d, size_t *sizes)

Grid constructor.

Provide pointer and dimensions array specified as arguments. sizes must contain NumDims values.

-
-Grid(const Grid&) = default
+
+Grid(const Grid&) = default
-
-~Grid() = default
+
+~Grid() = default
-
-CUDA_CALLABLE_MEMBER inline subgrid_t operator[](size_t i) const
+
+CUDA_CALLABLE_MEMBER inline subgrid_t operator[](size_t i) const

Bracket indexing.

Accessing data this way will be safe (indices are checked) and convenient, but not maximally efficient (unless the compiler is really good). Use operator() for fastest (but unchecked) access or access data directly.

-
-template<typename ...I>
CUDA_CALLABLE_MEMBER inline Dtype &operator()(I... indices)
+
+template<typename ...I>
CUDA_CALLABLE_MEMBER inline Dtype &operator()(I... indices)

Initializer list indexing.

-
-template<typename ...I>
CUDA_CALLABLE_MEMBER inline Dtype operator()(I... indices) const
+
+template<typename ...I>
CUDA_CALLABLE_MEMBER inline Dtype operator()(I... indices) const
-
-template<typename ...I>
CUDA_CALLABLE_MEMBER inline Dtype *address(I... indices)
+
+template<typename ...I>
CUDA_CALLABLE_MEMBER inline Dtype *address(I... indices)

Return memory address of specified index.

-
-template<typename ...I>
CUDA_CALLABLE_MEMBER inline const Dtype *address(I... indices) const
+
+template<typename ...I>
CUDA_CALLABLE_MEMBER inline const Dtype *address(I... indices) const
-
-template<bool destCUDA>
inline size_t copyTo(Grid<Dtype, NumDims, destCUDA> &dest) const
+
+template<bool destCUDA>
inline size_t copyTo(Grid<Dtype, NumDims, destCUDA> &dest) const

copy contents to dest

Sizes should be the same, but will narrow as necessary. Will copy across device/host.

-
-template<bool srcCUDA>
inline size_t copyFrom(const Grid<Dtype, NumDims, srcCUDA> &src)
+
+template<bool srcCUDA>
inline size_t copyFrom(const Grid<Dtype, NumDims, srcCUDA> &src)

copy contents from src

Sizes should be the same, but will narrow as necessary. Will copy across device/host.

-
-inline void fill_zero()
+
+inline void fill_zero()

Set contents to zero.

-
-CUDA_CALLABLE_MEMBER inline explicit Grid(const Grid<Dtype, NumDims + 1, isCUDA> &G, size_t i)
+
+CUDA_CALLABLE_MEMBER inline explicit Grid(const Grid<Dtype, NumDims + 1, isCUDA> &G, size_t i)

Public Static Attributes

-
-static constexpr size_t N = NumDims
+
+static constexpr size_t N = NumDims
-
-static constexpr bool GPU = isCUDA
+
+static constexpr bool GPU = isCUDA
-
-
-

The GridMaker class

+ +
+

The GridMaker class

-
-class libmolgrid::GridMaker
+
+class libmolgrid::GridMaker

Populates a grid with atom density values that correspond to atoms in a CoordinateSet and accumulates atomic gradients from the grid gradients. It stores state about universal grid settings. In functions that map from atomic coordinates to grids and vice versa (e.g. forward and backward), it must be passed the grid_center (which may have changed due to transformations performed directly on the atom coordinates externally to this class)

Public Functions

-
-inline GridMaker(float res = 0, float d = 0, bool bin = false, bool rti = false, float rscale = 1.0, float grm = 1.0)
+
+inline GridMaker(float res = 0, float d = 0, bool bin = false, bool rti = false, float rscale = 1.0, float grm = 1.0)

GridMaker contructor.

-

-
Parameters
    -
  • [in] res: resolution of grid in Angstroms

  • -
  • [in] d: dimension of cubic grid side in Angstroms

  • -
  • [in] bin: boolean indicating if binary density should be used

  • -
  • [in] rti: booliean indicating the radii are type indexed

  • -
  • [in] rscale: scaling factor to be uniformly applied to all input radii

  • -
  • [in] grm: gaussian radius multiplier - cutoff point for switching from Gaussian density to quadratic. If negative no quadratic component is included and gradient is truncated at this ratio (-1.5 recommended)

  • +
    +
    Parameters
    +
      +
    • res[in] resolution of grid in Angstroms

    • +
    • d[in] dimension of cubic grid side in Angstroms

    • +
    • bin[in] boolean indicating if binary density should be used

    • +
    • rti[in] booliean indicating the radii are type indexed

    • +
    • rscale[in] scaling factor to be uniformly applied to all input radii

    • +
    • grm[in] gaussian radius multiplier - cutoff point for switching from Gaussian density to quadratic. If negative no quadratic component is included and gradient is truncated at this ratio (-1.5 recommended)

    -

-
-inline virtual ~GridMaker()
+
+inline virtual ~GridMaker()
-
-void initialize(float res, float d, bool bin = false, float rscale = 1.0, float grm = 1.0)
+
+void initialize(float res, float d, bool bin = false, float rscale = 1.0, float grm = 1.0)

Initialize grid settings.

-

-
Parameters
    -
  • [in] res: resolution of grid in Angstroms

  • -
  • [in] d: dimension of cubic grid side in Angstroms

  • -
  • [in] bin: boolean indicating if binary density should be used

  • -
  • [in] rscale: scaling factor to be uniformly applied to all input radii

  • -
  • [in] grm: gaussian radius multiplier - cutoff point for switching from Gaussian density to quadratic. If negative no quadratic component is included and gradient is truncated at this ratio (-1.5 recommended)

  • +
    +
    Parameters
    +
      +
    • res[in] resolution of grid in Angstroms

    • +
    • d[in] dimension of cubic grid side in Angstroms

    • +
    • bin[in] boolean indicating if binary density should be used

    • +
    • rscale[in] scaling factor to be uniformly applied to all input radii

    • +
    • grm[in] gaussian radius multiplier - cutoff point for switching from Gaussian density to quadratic. If negative no quadratic component is included and gradient is truncated at this ratio (-1.5 recommended)

    -

-
-inline float3 get_grid_dims() const
+
+inline float3 get_grid_dims() const

return spatial dimensions of grid

-
-CUDA_CALLABLE_MEMBER inline float get_resolution() const
+
+CUDA_CALLABLE_MEMBER inline float get_resolution() const

return resolution in Angstroms

-
-CUDA_CALLABLE_MEMBER inline void set_resolution(float res)
+
+CUDA_CALLABLE_MEMBER inline void set_resolution(float res)

set resolution in Angstroms

-
-CUDA_CALLABLE_MEMBER inline float get_dimension() const
+
+CUDA_CALLABLE_MEMBER inline float get_dimension() const

get dimension in Angstroms

-
-CUDA_CALLABLE_MEMBER inline void set_dimension(float d)
+
+CUDA_CALLABLE_MEMBER inline void set_dimension(float d)

set dimension in Angstroms

-
-CUDA_CALLABLE_MEMBER inline unsigned get_first_dim() const
+
+CUDA_CALLABLE_MEMBER inline unsigned get_first_dim() const
-
-CUDA_CALLABLE_MEMBER inline bool get_binary() const
+
+CUDA_CALLABLE_MEMBER inline bool get_binary() const

return if density is binary

-
-CUDA_CALLABLE_MEMBER inline void set_binary(bool b)
+
+CUDA_CALLABLE_MEMBER inline void set_binary(bool b)

set if density is binary

-
-CUDA_CALLABLE_MEMBER inline bool get_radii_type_indexed() const
+
+CUDA_CALLABLE_MEMBER inline bool get_radii_type_indexed() const

return if radius array should be indexed by type id (for vector types)

-
-CUDA_CALLABLE_MEMBER inline void set_radii_type_indexed(bool b)
+
+CUDA_CALLABLE_MEMBER inline void set_radii_type_indexed(bool b)

set if radius array should be indexed by type id, not atom

-
-CUDA_CALLABLE_MEMBER inline float get_radiusmultiple() const
+
+CUDA_CALLABLE_MEMBER inline float get_radiusmultiple() const

return multiplier of radius where density goes to zero

-
-CUDA_CALLABLE_MEMBER float3 get_grid_origin(const float3 &grid_center) const
+
+CUDA_CALLABLE_MEMBER float3 get_grid_origin(const float3 &grid_center) const

Use externally specified grid_center to determine where grid begins. Used for translating between cartesian coords and grids.

-

-
Parameters
    -
  • [in] grid_center: - center

  • -
  • [out] grid: bounds

  • +
    +
    Parameters
    +
      +
    • grid_center[in] - center

    • +
    • grid[out] bounds

    -

-
-template<typename Dtype>
inline void forward(float3 grid_center, const CoordinateSet &in, Grid<Dtype, 4, false> &out) const
+
+template<typename Dtype>
inline void forward(float3 grid_center, const CoordinateSet &in, Grid<Dtype, 4, false> &out) const
-
-template<typename Dtype>
inline void forward(float3 grid_center, const CoordinateSet &in, Grid<Dtype, 4, true> &out) const
+
+template<typename Dtype>
inline void forward(float3 grid_center, const CoordinateSet &in, Grid<Dtype, 4, true> &out) const
-
-template<typename Dtype, bool isCUDA>
void forward(const Example &in, const Transform &transform, Grid<Dtype, 4, isCUDA> &out) const
+
+template<typename Dtype, bool isCUDA>
void forward(const Example &in, const Transform &transform, Grid<Dtype, 4, isCUDA> &out) const
-
-template<typename Dtype, bool isCUDA>
void forward(const Example &in, Grid<Dtype, 4, isCUDA> &out, float random_translation = 0.0, bool random_rotation = false, const float3 &center = make_float3(INFINITY, INFINITY, INFINITY)) const
+
+template<typename Dtype, bool isCUDA>
void forward(const Example &in, Grid<Dtype, 4, isCUDA> &out, float random_translation = 0.0, bool random_rotation = false, const float3 &center = make_float3(INFINITY, INFINITY, INFINITY)) const
-
-template<typename Dtype, bool isCUDA>
inline void forward(const std::vector<Example> &in, Grid<Dtype, 5, isCUDA> &out, float random_translation = 0.0, bool random_rotation = false) const
+
+template<typename Dtype, bool isCUDA>
inline void forward(const std::vector<Example> &in, Grid<Dtype, 5, isCUDA> &out, float random_translation = 0.0, bool random_rotation = false) const
-
-template<typename Dtype>
void forward(float3 grid_center, const Grid<float, 2, false> &coords, const Grid<float, 1, false> &type_index, const Grid<float, 1, false> &radii, Grid<Dtype, 4, false> &out) const
+
+template<typename Dtype>
void forward(float3 grid_center, const Grid<float, 2, false> &coords, const Grid<float, 1, false> &type_index, const Grid<float, 1, false> &radii, Grid<Dtype, 4, false> &out) const
-
-template<typename Dtype>
void forward(float3 grid_center, const Grid<float, 2, true> &coords, const Grid<float, 1, true> &type_index, const Grid<float, 1, true> &radii, Grid<Dtype, 4, true> &out) const
+
+template<typename Dtype>
void forward(float3 grid_center, const Grid<float, 2, true> &coords, const Grid<float, 1, true> &type_index, const Grid<float, 1, true> &radii, Grid<Dtype, 4, true> &out) const
-
-template<typename Dtype>
void forward(float3 grid_center, const Grid<float, 2, false> &coords, const Grid<float, 2, false> &type_vector, const Grid<float, 1, false> &radii, Grid<Dtype, 4, false> &out) const
+
+template<typename Dtype>
void forward(float3 grid_center, const Grid<float, 2, false> &coords, const Grid<float, 2, false> &type_vector, const Grid<float, 1, false> &radii, Grid<Dtype, 4, false> &out) const
-
-template<typename Dtype>
void forward(float3 grid_center, const Grid<float, 2, true> &coords, const Grid<float, 2, true> &type_vector, const Grid<float, 1, true> &radii, Grid<Dtype, 4, true> &out) const
+
+template<typename Dtype>
void forward(float3 grid_center, const Grid<float, 2, true> &coords, const Grid<float, 2, true> &type_vector, const Grid<float, 1, true> &radii, Grid<Dtype, 4, true> &out) const
-
-template<typename Dtype, int N, bool isCUDA>
inline void forward(const Grid<float, 2, isCUDA> &centers, const Grid<float, 3, isCUDA> &coords, const Grid<float, N, isCUDA> &types, const Grid<float, 2, isCUDA> &radii, Grid<Dtype, 5, isCUDA> &out) const
+
+template<typename Dtype, int N, bool isCUDA>
inline void forward(const Grid<float, 2, isCUDA> &centers, const Grid<float, 3, isCUDA> &coords, const Grid<float, N, isCUDA> &types, const Grid<float, 2, isCUDA> &radii, Grid<Dtype, 5, isCUDA> &out) const
-
-template<typename Dtype>
inline void backward(float3 grid_center, const CoordinateSet &in, const Grid<Dtype, 4, false> &diff, Grid<Dtype, 2, false> &atomic_gradients, Grid<Dtype, 2, false> &type_gradients) const
+
+template<typename Dtype>
inline void backward(float3 grid_center, const CoordinateSet &in, const Grid<Dtype, 4, false> &diff, Grid<Dtype, 2, false> &atomic_gradients, Grid<Dtype, 2, false> &type_gradients) const
-
-template<typename Dtype>
inline void backward(float3 grid_center, const CoordinateSet &in, const Grid<Dtype, 4, false> &diff, Grid<Dtype, 2, false> &atomic_gradients) const
+
+template<typename Dtype>
inline void backward(float3 grid_center, const CoordinateSet &in, const Grid<Dtype, 4, false> &diff, Grid<Dtype, 2, false> &atomic_gradients) const
-
-template<typename Dtype>
inline void backward(float3 grid_center, const CoordinateSet &in, const Grid<Dtype, 4, true> &diff, Grid<Dtype, 2, true> &atomic_gradients, Grid<Dtype, 2, true> &type_gradients) const
+
+template<typename Dtype>
inline void backward(float3 grid_center, const CoordinateSet &in, const Grid<Dtype, 4, true> &diff, Grid<Dtype, 2, true> &atomic_gradients, Grid<Dtype, 2, true> &type_gradients) const
-
-template<typename Dtype>
inline void backward(float3 grid_center, const CoordinateSet &in, const Grid<Dtype, 4, true> &diff, Grid<Dtype, 2, true> &atomic_gradients) const
+
+template<typename Dtype>
inline void backward(float3 grid_center, const CoordinateSet &in, const Grid<Dtype, 4, true> &diff, Grid<Dtype, 2, true> &atomic_gradients) const
-
-template<typename Dtype>
void backward(float3 grid_center, const Grid<float, 2, false> &coords, const Grid<float, 1, false> &type_index, const Grid<float, 1, false> &radii, const Grid<Dtype, 4, false> &diff, Grid<Dtype, 2, false> &atom_gradients) const
+
+template<typename Dtype>
void backward(float3 grid_center, const Grid<float, 2, false> &coords, const Grid<float, 1, false> &type_index, const Grid<float, 1, false> &radii, const Grid<Dtype, 4, false> &diff, Grid<Dtype, 2, false> &atom_gradients) const
-
-template<typename Dtype>
void backward(float3 grid_center, const Grid<float, 2, true> &coords, const Grid<float, 1, true> &type_index, const Grid<float, 1, true> &radii, const Grid<Dtype, 4, true> &grid, Grid<Dtype, 2, true> &atom_gradients) const
+
+template<typename Dtype>
void backward(float3 grid_center, const Grid<float, 2, true> &coords, const Grid<float, 1, true> &type_index, const Grid<float, 1, true> &radii, const Grid<Dtype, 4, true> &grid, Grid<Dtype, 2, true> &atom_gradients) const
-
-template<typename Dtype>
void backward(float3 grid_center, const Grid<float, 2, false> &coords, const Grid<float, 2, false> &type_vectors, const Grid<float, 1, false> &radii, const Grid<Dtype, 4, false> &diff, Grid<Dtype, 2, false> &atom_gradients, Grid<Dtype, 2, false> &type_gradients) const
+
+template<typename Dtype>
void backward(float3 grid_center, const Grid<float, 2, false> &coords, const Grid<float, 2, false> &type_vectors, const Grid<float, 1, false> &radii, const Grid<Dtype, 4, false> &diff, Grid<Dtype, 2, false> &atom_gradients, Grid<Dtype, 2, false> &type_gradients) const
-
-template<typename Dtype>
void backward(float3 grid_center, const Grid<float, 2, true> &coords, const Grid<float, 2, true> &type_vectors, const Grid<float, 1, true> &radii, const Grid<Dtype, 4, true> &grid, Grid<Dtype, 2, true> &atom_gradients, Grid<Dtype, 2, true> &type_gradients) const
+
+template<typename Dtype>
void backward(float3 grid_center, const Grid<float, 2, true> &coords, const Grid<float, 2, true> &type_vectors, const Grid<float, 1, true> &radii, const Grid<Dtype, 4, true> &grid, Grid<Dtype, 2, true> &atom_gradients, Grid<Dtype, 2, true> &type_gradients) const
-
-template<typename Dtype>
void backward_gradients(float3 grid_center, const Grid<float, 2, false> &coords, const Grid<float, 2, false> &type_vectors, const Grid<float, 1, false> &radii, const Grid<Dtype, 4, false> &diff, const Grid<Dtype, 2, false> &atom_gradients, const Grid<Dtype, 2, false> &type_gradients, Grid<Dtype, 4, false> &diffdiff, Grid<Dtype, 2, false> &atom_diffdiff, Grid<Dtype, 2, false> &type_diffdiff)
+
+template<typename Dtype>
void backward_gradients(float3 grid_center, const Grid<float, 2, false> &coords, const Grid<float, 2, false> &type_vectors, const Grid<float, 1, false> &radii, const Grid<Dtype, 4, false> &diff, const Grid<Dtype, 2, false> &atom_gradients, const Grid<Dtype, 2, false> &type_gradients, Grid<Dtype, 4, false> &diffdiff, Grid<Dtype, 2, false> &atom_diffdiff, Grid<Dtype, 2, false> &type_diffdiff)
-
-template<typename Dtype>
void backward_gradients(float3 grid_center, const Grid<float, 2, true> &coords, const Grid<float, 2, true> &type_vectors, const Grid<float, 1, true> &radii, const Grid<Dtype, 4, true> &diff, const Grid<Dtype, 2, true> &atom_gradients, const Grid<Dtype, 2, true> &type_gradients, Grid<Dtype, 4, true> &diffdiff, Grid<Dtype, 2, true> &atom_diffdiff, Grid<Dtype, 2, true> &type_diffdiff)
+
+template<typename Dtype>
void backward_gradients(float3 grid_center, const Grid<float, 2, true> &coords, const Grid<float, 2, true> &type_vectors, const Grid<float, 1, true> &radii, const Grid<Dtype, 4, true> &diff, const Grid<Dtype, 2, true> &atom_gradients, const Grid<Dtype, 2, true> &type_gradients, Grid<Dtype, 4, true> &diffdiff, Grid<Dtype, 2, true> &atom_diffdiff, Grid<Dtype, 2, true> &type_diffdiff)
-
-template<typename Dtype>
inline void backward_gradients(float3 grid_center, const CoordinateSet &in, const Grid<Dtype, 4, false> &diff, const Grid<Dtype, 2, false> &atom_gradients, const Grid<Dtype, 2, false> &type_gradients, Grid<Dtype, 4, false> &diffdiff, Grid<Dtype, 2, false> &atom_diffdiff, Grid<Dtype, 2, false> &type_diffdiff)
+
+template<typename Dtype>
inline void backward_gradients(float3 grid_center, const CoordinateSet &in, const Grid<Dtype, 4, false> &diff, const Grid<Dtype, 2, false> &atom_gradients, const Grid<Dtype, 2, false> &type_gradients, Grid<Dtype, 4, false> &diffdiff, Grid<Dtype, 2, false> &atom_diffdiff, Grid<Dtype, 2, false> &type_diffdiff)
-
-template<typename Dtype>
inline void backward_gradients(float3 grid_center, const CoordinateSet &in, const Grid<Dtype, 4, true> &diff, const Grid<Dtype, 2, true> &atom_gradients, const Grid<Dtype, 2, true> &type_gradients, Grid<Dtype, 4, true> &diffdiff, Grid<Dtype, 2, true> &atom_diffdiff, Grid<Dtype, 2, true> &type_diffdiff)
+
+template<typename Dtype>
inline void backward_gradients(float3 grid_center, const CoordinateSet &in, const Grid<Dtype, 4, true> &diff, const Grid<Dtype, 2, true> &atom_gradients, const Grid<Dtype, 2, true> &type_gradients, Grid<Dtype, 4, true> &diffdiff, Grid<Dtype, 2, true> &atom_diffdiff, Grid<Dtype, 2, true> &type_diffdiff)
-
-template<typename Dtype>
inline void backward_relevance(float3 grid_center, const CoordinateSet &in, const Grid<Dtype, 4, false> &density, const Grid<Dtype, 4, false> &diff, Grid<Dtype, 1, false> &relevance) const
+
+template<typename Dtype>
inline void backward_relevance(float3 grid_center, const CoordinateSet &in, const Grid<Dtype, 4, false> &density, const Grid<Dtype, 4, false> &diff, Grid<Dtype, 1, false> &relevance) const
-
-template<typename Dtype>
inline void backward_relevance(float3 grid_center, const CoordinateSet &in, const Grid<Dtype, 4, true> &density, const Grid<Dtype, 4, true> &diff, Grid<Dtype, 1, true> &relevance) const
+
+template<typename Dtype>
inline void backward_relevance(float3 grid_center, const CoordinateSet &in, const Grid<Dtype, 4, true> &density, const Grid<Dtype, 4, true> &diff, Grid<Dtype, 1, true> &relevance) const
-
-template<typename Dtype>
void backward_relevance(float3 grid_center, const Grid<float, 2, false> &coords, const Grid<float, 1, false> &type_index, const Grid<float, 1, false> &radii, const Grid<Dtype, 4, false> &density, const Grid<Dtype, 4, false> &diff, Grid<Dtype, 1, false> &relevance) const
+
+template<typename Dtype>
void backward_relevance(float3 grid_center, const Grid<float, 2, false> &coords, const Grid<float, 1, false> &type_index, const Grid<float, 1, false> &radii, const Grid<Dtype, 4, false> &density, const Grid<Dtype, 4, false> &diff, Grid<Dtype, 1, false> &relevance) const
-
-template<typename Dtype>
void backward_relevance(float3 grid_center, const Grid<float, 2, true> &coords, const Grid<float, 1, true> &type_index, const Grid<float, 1, true> &radii, const Grid<Dtype, 4, true> &density, const Grid<Dtype, 4, true> &diff, Grid<Dtype, 1, true> &relevance) const
+
+template<typename Dtype>
void backward_relevance(float3 grid_center, const Grid<float, 2, true> &coords, const Grid<float, 1, true> &type_index, const Grid<float, 1, true> &radii, const Grid<Dtype, 4, true> &density, const Grid<Dtype, 4, true> &diff, Grid<Dtype, 1, true> &relevance) const
-
-template<typename Dtype, bool Binary> CUDA_DEVICE_MEMBER void set_atoms (unsigned natoms, float3 grid_origin, const float3 *coords, const float *tindex, const float *radii, Dtype *out)
+
+template<typename Dtype, bool Binary> CUDA_DEVICE_MEMBER void set_atoms (unsigned natoms, float3 grid_origin, const float3 *coords, const float *tindex, const float *radii, Dtype *out)
-
-template<typename Dtype, bool Binary, bool RadiiFromTypes> CUDA_DEVICE_MEMBER void set_atoms (unsigned natoms, float3 grid_origin, const float3 *coords, const float *type_vec, unsigned ntypes, const float *radii, Dtype *out)
+
+template<typename Dtype, bool Binary, bool RadiiFromTypes> CUDA_DEVICE_MEMBER void set_atoms (unsigned natoms, float3 grid_origin, const float3 *coords, const float *type_vec, unsigned ntypes, const float *radii, Dtype *out)
-
-template<typename Dtype>
float3 calc_atom_gradient_cpu(const float3 &grid_origin, const Grid1f &coord, const Grid<Dtype, 3, false> &diff, float radius) const
+
+template<typename Dtype>
float3 calc_atom_gradient_cpu(const float3 &grid_origin, const Grid1f &coord, const Grid<Dtype, 3, false> &diff, float radius) const
-
-template<typename Dtype>
float calc_type_gradient_cpu(const float3 &grid_origin, const Grid1f &coord, const Grid<Dtype, 3, false> &diff, float radius) const
+
+template<typename Dtype>
float calc_type_gradient_cpu(const float3 &grid_origin, const Grid1f &coord, const Grid<Dtype, 3, false> &diff, float radius) const
-
-template<typename Dtype>
float calc_atom_relevance_cpu(const float3 &grid_origin, const Grid1f &coord, const Grid<Dtype, 3, false> &density, const Grid<Dtype, 3, false> &diff, float radius) const
+
+template<typename Dtype>
float calc_atom_relevance_cpu(const float3 &grid_origin, const Grid1f &coord, const Grid<Dtype, 3, false> &density, const Grid<Dtype, 3, false> &diff, float radius) const
-
-CUDA_CALLABLE_MEMBER uint2 get_bounds_1d(const float grid_origin, float coord, float densityrad) const
+
+CUDA_CALLABLE_MEMBER uint2 get_bounds_1d(const float grid_origin, float coord, float densityrad) const
-
-template<bool Binary>
CUDA_CALLABLE_MEMBER float calc_point(float ax, float ay, float az, float ar, const float3 &grid_coords) const
+
+template<bool Binary>
CUDA_CALLABLE_MEMBER float calc_point(float ax, float ay, float az, float ar, const float3 &grid_coords) const
-
-CUDA_CALLABLE_MEMBER float density_grad_dist(float dist, float ar) const
+
+CUDA_CALLABLE_MEMBER float density_grad_dist(float dist, float ar) const
-
-CUDA_CALLABLE_MEMBER float type_grad_grad(float a, float x, float dist, float r)
+
+CUDA_CALLABLE_MEMBER float type_grad_grad(float a, float x, float dist, float r)
-
-CUDA_CALLABLE_MEMBER float atom_density_grad_grad(float a, float x, float dist, float r)
+
+CUDA_CALLABLE_MEMBER float atom_density_grad_grad(float a, float x, float dist, float r)
-
-CUDA_CALLABLE_MEMBER float atom_density_grad_grad_other(float a, float x, float b, float y, float dist, float r)
+
+CUDA_CALLABLE_MEMBER float atom_density_grad_grad_other(float a, float x, float b, float y, float dist, float r)
-
-CUDA_CALLABLE_MEMBER void accumulate_atom_gradient(float ax, float ay, float az, float x, float y, float z, float radius, float gridval, float3 &agrad) const
+
+CUDA_CALLABLE_MEMBER void accumulate_atom_gradient(float ax, float ay, float az, float x, float y, float z, float radius, float gridval, float3 &agrad) const

Friends

-
-template<typename Dtype> friend __global__ friend void set_atom_gradients (GridMaker G, float3 grid_center, Grid2fCUDA coords, Grid1fCUDA type_index, Grid1fCUDA radii, Grid< Dtype, 4, true > grid, Grid< Dtype, 2, true > atom_gradients)
+
+template<typename Dtype> friend __global__ friend void set_atom_gradients (GridMaker G, float3 grid_center, Grid2fCUDA coords, Grid1fCUDA type_index, Grid1fCUDA radii, Grid< Dtype, 4, true > grid, Grid< Dtype, 2, true > atom_gradients)
-
-template<typename Dtype, bool RadiiFromTypes> friend __global__ friend void set_atom_type_gradients (GridMaker G, float3 grid_origin, Grid2fCUDA coords, Grid2fCUDA type_vector, unsigned ntypes, Grid1fCUDA radii, Grid< Dtype, 4, true > grid, Grid< Dtype, 2, true > atom_gradients, Grid< Dtype, 2, true > type_gradients)
+
+template<typename Dtype, bool RadiiFromTypes> friend __global__ friend void set_atom_type_gradients (GridMaker G, float3 grid_origin, Grid2fCUDA coords, Grid2fCUDA type_vector, unsigned ntypes, Grid1fCUDA radii, Grid< Dtype, 4, true > grid, Grid< Dtype, 2, true > atom_gradients, Grid< Dtype, 2, true > type_gradients)
-
-template<typename Dtype, bool RadiiFromTypes> friend __global__ friend void set_atom_type_grad_grad (GridMaker G, float3 grid_origin, Grid2fCUDA coords, Grid2fCUDA type_vector, unsigned ntypes, Grid1fCUDA radii, Grid< Dtype, 4, true > diff, Grid< Dtype, 2, true > atom_gradients, Grid< Dtype, 2, true > type_gradients, Grid< Dtype, 4, true > diffdiff, Grid< Dtype, 2, true > atom_diffdiff, Grid< Dtype, 2, true > type_diffdiff)
+
+template<typename Dtype, bool RadiiFromTypes> friend __global__ friend void set_atom_type_grad_grad (GridMaker G, float3 grid_origin, Grid2fCUDA coords, Grid2fCUDA type_vector, unsigned ntypes, Grid1fCUDA radii, Grid< Dtype, 4, true > diff, Grid< Dtype, 2, true > atom_gradients, Grid< Dtype, 2, true > type_gradients, Grid< Dtype, 4, true > diffdiff, Grid< Dtype, 2, true > atom_diffdiff, Grid< Dtype, 2, true > type_diffdiff)
-
-template<typename Dtype> friend __global__ friend void set_atom_relevance (GridMaker G, float3 grid_origin, Grid2fCUDA coords, Grid1fCUDA type_index, Grid1fCUDA radii, Grid< Dtype, 4, true > densitygrid, Grid< Dtype, 4, true > diffgrid, Grid< Dtype, 1, true > relevance)
+
+template<typename Dtype> friend __global__ friend void set_atom_relevance (GridMaker G, float3 grid_origin, Grid2fCUDA coords, Grid1fCUDA type_index, Grid1fCUDA radii, Grid< Dtype, 4, true > densitygrid, Grid< Dtype, 4, true > diffgrid, Grid< Dtype, 1, true > relevance)
-
-
-

The GroupedExampleRefProvider class

+ +
+

The GroupedExampleRefProvider class

-
-template<class Provider>
class libmolgrid::GroupedExampleRefProvider : public ExampleRefProvider
+
+template<class Provider>
class libmolgrid::GroupedExampleRefProvider : public ExampleRefProvider

group multiple grids into a single example For example, multiple frames of an MD simulation that will be processed by an RNN. next() returns the next frame for the next example in the batch; traversal is row-major with layout TxN. Frames are maintained in the order they are added. There is a fixed batch and time series (group) size.

The group is specified in the first column. Although labels are permitted to vary across group members, only the labels of the first frame will be used for balancing/stratification. If fewer frames are specified than the maxgroupsize, they will be padded with “none” and the labels set to NaN

Public Functions

-
-inline GroupedExampleRefProvider()
+
+inline GroupedExampleRefProvider()
-
-inline GroupedExampleRefProvider(const ExampleProviderSettings &parm)
+
+inline GroupedExampleRefProvider(const ExampleProviderSettings &parm)
-
-inline virtual void addref(const ExampleRef &ex)
+
+inline virtual void addref(const ExampleRef &ex)
-
-inline virtual void setup()
+
+inline virtual void setup()
-
-inline virtual size_t num_labels() const
+
+inline virtual size_t num_labels() const

return number of labels in an example

if provider has predetermined batch size

-
-inline virtual bool has_group() const
+
+inline virtual bool has_group() const
-
-inline virtual void check_batch_size(unsigned bsize) const
+
+inline virtual void check_batch_size(unsigned bsize) const

has group field

-
-inline virtual void nextref(ExampleRef &ex)
+
+inline virtual void nextref(ExampleRef &ex)
-
-inline virtual unsigned size() const
+
+inline virtual unsigned size() const
-
-inline virtual size_t small_epoch_size() const
+
+inline virtual size_t small_epoch_size() const

Return number of example in small epoch.

-
-inline virtual size_t large_epoch_size() const
+
+inline virtual size_t large_epoch_size() const

Return number of example in large epoch.

-
-inline virtual void reset()
+
+inline virtual void reset()

Reset iterators to start.

-
-virtual int populate(std::istream &lines, int numlabels)
+
+virtual int populate(std::istream &lines, int numlabels)

read in all the example refs from lines, but does not setup

-
-inline virtual size_t get_small_epoch_num() const
+
+inline virtual size_t get_small_epoch_num() const

Return current small epoch number.

-
-inline virtual size_t get_large_epoch_num() const
+
+inline virtual size_t get_large_epoch_num() const

Return current large epoch number.

@@ -3468,49 +3379,49 @@

The GroupedExam

Private Members

-
-Provider examples
+
+Provider examples
-
-unsigned batch_size = 1
+
+unsigned batch_size = 1
-
-unsigned maxgroupsize = 0
+
+unsigned maxgroupsize = 0
-
-std::unordered_map<int, std::vector<ExampleRef>> frame_groups
+
+std::unordered_map<int, std::vector<ExampleRef>> frame_groups
-
-unsigned current_ts = 0
+
+unsigned current_ts = 0
-
-unsigned current_group_index = 0
+
+unsigned current_group_index = 0
-
-std::vector<int> current_groups
+
+std::vector<int> current_groups

-
-
-

The ManagedGrid class

+ +
+

The ManagedGrid class

-
-template<typename Dtype, std::size_t NumDims>
class libmolgrid::ManagedGrid
+
+template<typename Dtype, std::size_t NumDims>
class libmolgrid::ManagedGrid

A dense grid whose memory is managed by the class.

Memory is allocated as unified memory so it can be safely accessed from either the CPU or GPU. Note that while the memory is accessible on the GPU, ManagedGrid objects should only be used directly on the host. Device code should use a Grid view of the ManagedGrid. Accessing ManagedGrid data from the host while the GPU is writing to the grid will result in undefined behavior.

If CUDA fails to allocate unified memory (presumably due to lack of GPUs), host-only memory will be used instead.

@@ -3519,659 +3430,659 @@

The ManagedGrid

Public Types

-
-using subgrid_t = ManagedGrid<Dtype, NumDims - 1>
+
+using subgrid_t = ManagedGrid<Dtype, NumDims - 1>
-
-using base_t = ManagedGridBase<Dtype, NumDims>
+
+using base_t = ManagedGridBase<Dtype, NumDims>

Public Functions

-
-ManagedGrid() = default
+
+ManagedGrid() = default
-
-template<typename ...I, typename = typename std::enable_if<sizeof...(I) == NumDims>::type>
inline ManagedGrid(I... sizes)
+
+template<typename ...I, typename = typename std::enable_if<sizeof...(I) == NumDims>::type>
inline ManagedGrid(I... sizes)
-
-inline subgrid_t operator[](size_t i) const
+
+inline subgrid_t operator[](size_t i) const

Bracket indexing.

Accessing data this way will be safe (indices are checked) and convenient, but not maximally efficient (unless the compiler is really good). Use operator() for fastest (but unchecked) access or access data directly.

-
-inline ManagedGrid<Dtype, NumDims> clone() const
+
+inline ManagedGrid<Dtype, NumDims> clone() const

Return a copy of this grid.

-
-
-

The ManagedGridBase class

+ +
+

The ManagedGridBase class

-
-template<typename Dtype, std::size_t NumDims>
class libmolgrid::ManagedGridBase
+
+template<typename Dtype, std::size_t NumDims>
class libmolgrid::ManagedGridBase

ManagedGrid base class.

Public Types

-
-using gpu_grid_t = Grid<Dtype, NumDims, true>
+
+using gpu_grid_t = Grid<Dtype, NumDims, true>
-
-using cpu_grid_t = Grid<Dtype, NumDims, false>
+
+using cpu_grid_t = Grid<Dtype, NumDims, false>

cuda grid type

-
-using type = Dtype
+
+using type = Dtype

Public Functions

-
-inline const size_t *dimensions() const
+
+inline const size_t *dimensions() const

dimensions along each axis

-
-inline size_t dimension(size_t i) const
+
+inline size_t dimension(size_t i) const

dimensions along specified axis

-
-inline const size_t *offsets() const
+
+inline const size_t *offsets() const

offset for each dimension, all indexing calculations use this

-
-inline size_t offset(size_t i) const
+
+inline size_t offset(size_t i) const

offset for each dimension, all indexing calculations use this

-
-inline size_t size() const
+
+inline size_t size() const

number of elements in grid

-
-inline void fill_zero()
+
+inline void fill_zero()

set contents to zero

-
-template<typename ...I>
inline Dtype &operator()(I... indices)
+
+template<typename ...I>
inline Dtype &operator()(I... indices)

Initializer list indexing.

-
-template<typename ...I>
inline Dtype operator()(I... indices) const
+
+template<typename ...I>
inline Dtype operator()(I... indices) const
-
-inline size_t copyTo(cpu_grid_t &dest) const
+
+inline size_t copyTo(cpu_grid_t &dest) const

Copy data into dest. Should be same size, but will narrow if needed.

-
-inline size_t copyTo(gpu_grid_t &dest) const
+
+inline size_t copyTo(gpu_grid_t &dest) const

Copy data into dest. Should be same size, but will narrow if needed.

-
-inline size_t copyTo(ManagedGridBase<Dtype, NumDims> &dest) const
+
+inline size_t copyTo(ManagedGridBase<Dtype, NumDims> &dest) const

Copy data into dest. Should be same size, but will narrow if needed.

-
-inline size_t copyFrom(const cpu_grid_t &src)
+
+inline size_t copyFrom(const cpu_grid_t &src)

Copy data from src. Should be same size, but will narrow if needed.

-
-inline size_t copyFrom(const gpu_grid_t &src)
+
+inline size_t copyFrom(const gpu_grid_t &src)

Copy data from src. Should be same size, but will narrow if needed.

-
-inline size_t copyFrom(const ManagedGridBase<Dtype, NumDims> &src)
+
+inline size_t copyFrom(const ManagedGridBase<Dtype, NumDims> &src)

Copy data from src. Should be same size, but will narrow if needed.

-
-inline size_t copyInto(size_t start, const ManagedGridBase<Dtype, NumDims> &src)
+
+inline size_t copyInto(size_t start, const ManagedGridBase<Dtype, NumDims> &src)

Copy data from src into this starting at start. Should be same size, but will narrow if needed.

-
-template<typename ...I, typename = typename std::enable_if<sizeof...(I) == NumDims>::type>
inline ManagedGrid<Dtype, NumDims> resized(I... sizes)
+
+template<typename ...I, typename = typename std::enable_if<sizeof...(I) == NumDims>::type>
inline ManagedGrid<Dtype, NumDims> resized(I... sizes)

Return a grid in the specified shape that attempts to reuse the memory of this grid. Memory will be allocated if needed. Data will be truncated/copied as needed. DANGER! The returned grid may or may not mirror this grid depending on the shape. This function is provided so code can be optimized to avoid unnecessary allocations and should be used carefully.

-
-inline const gpu_grid_t &gpu() const
+
+inline const gpu_grid_t &gpu() const

Return GPU Grid view. Host code should not access the grid until the GPU code is complete.

-
-inline gpu_grid_t &gpu()
+
+inline gpu_grid_t &gpu()
-
-inline const cpu_grid_t &cpu() const
+
+inline const cpu_grid_t &cpu() const

Return CPU Grid view. GPU code should no longer access this memory.

-
-inline cpu_grid_t &cpu()
+
+inline cpu_grid_t &cpu()
-
-inline void togpu(bool dotransfer = true) const
+
+inline void togpu(bool dotransfer = true) const

Transfer data to GPU.

-
-inline void tocpu(bool dotransfer = true) const
+
+inline void tocpu(bool dotransfer = true) const

Transfer data to CPU. If not dotransfer, data is not copied back.

-
-inline bool ongpu() const
+
+inline bool ongpu() const

Return true if memory is currently on GPU.

-
-inline bool oncpu() const
+
+inline bool oncpu() const

Return true if memory is currently on CPU.

-
-inline operator cpu_grid_t() const
+
+inline operator cpu_grid_t() const
-
-inline operator cpu_grid_t&()
+
+inline operator cpu_grid_t&()
-
-inline operator gpu_grid_t() const
+
+inline operator gpu_grid_t() const
-
-inline operator gpu_grid_t&()
+
+inline operator gpu_grid_t&()
-
-inline const Dtype *data() const
+
+inline const Dtype *data() const

Return pointer to CPU data.

-
-inline Dtype *data()
+
+inline Dtype *data()
-
-inline bool operator==(const ManagedGridBase<Dtype, NumDims> &rhs) const
+
+inline bool operator==(const ManagedGridBase<Dtype, NumDims> &rhs) const

Public Static Attributes

-
-static constexpr size_t N = NumDims
+
+static constexpr size_t N = NumDims
-
-
-

The MappedAtomIndexTyper class

+ +
+

The MappedAtomIndexTyper class

-
-template<class Mapper, class Typer>
class libmolgrid::MappedAtomIndexTyper : public AtomIndexTyper
+
+template<class Mapper, class Typer>
class libmolgrid::MappedAtomIndexTyper : public AtomIndexTyper

Wrap an atom typer with a mapper.

Public Functions

-
-inline MappedAtomIndexTyper(const Mapper &map, const Typer &typr)
+
+inline MappedAtomIndexTyper(const Mapper &map, const Typer &typr)
-
-inline virtual ~MappedAtomIndexTyper()
+
+inline virtual ~MappedAtomIndexTyper()
-
-inline virtual unsigned num_types() const
+
+inline virtual unsigned num_types() const

return number of types

-
-inline virtual std::pair<int, float> get_atom_type_index(OpenBabel::OBAtom *a) const
+
+inline virtual std::pair<int, float> get_atom_type_index(OpenBabel::OBAtom *a) const

return type index of a

-
-inline virtual std::pair<int, float> get_int_type(int t) const
+
+inline virtual std::pair<int, float> get_int_type(int t) const

return type and radius given a precomputed type, the meaning of which is specific to the implementation

-
-inline virtual std::vector<std::string> get_type_names() const
+
+inline virtual std::vector<std::string> get_type_names() const

return vector of string representations of types this isn’t expected to be particularly efficient

-
-inline virtual std::vector<float> get_type_radii() const
+
+inline virtual std::vector<float> get_type_radii() const

radii are the average of the underlying mapped types

-
-inline virtual float get_atom_type_vector(OpenBabel::OBAtom *a, std::vector<float> &typ) const final
+
+inline virtual float get_atom_type_vector(OpenBabel::OBAtom *a, std::vector<float> &typ) const final
-
-inline virtual bool is_vector_typer() const
+
+inline virtual bool is_vector_typer() const

Public Static Functions

-
-static void set_names(unsigned ntypes, std::vector<std::string> &type_names, const std::vector<std::string> &names)
+
+static void set_names(unsigned ntypes, std::vector<std::string> &type_names, const std::vector<std::string> &names)
-
-
-

The mgrid_buffer_data class

+ +
+

The mgrid_buffer_data class

-
-template<typename Dtype>
struct libmolgrid::mgrid_buffer_data
+
+template<typename Dtype>
struct libmolgrid::mgrid_buffer_data

Public Members

-
-Dtype *gpu_ptr
+
+Dtype *gpu_ptr
-
-bool sent_to_gpu
+
+bool sent_to_gpu
-
-
-

The NullIndexTyper class

+ +
+

The NullIndexTyper class

-
-class libmolgrid::NullIndexTyper : public AtomIndexTyper
+
+class libmolgrid::NullIndexTyper : public AtomIndexTyper

Always return an invalid type.

Public Functions

-
-inline NullIndexTyper()
+
+inline NullIndexTyper()
-
-inline virtual ~NullIndexTyper()
+
+inline virtual ~NullIndexTyper()
-
-inline virtual unsigned num_types() const
+
+inline virtual unsigned num_types() const

return number of types

-
-inline virtual std::pair<int, float> get_atom_type_index(OpenBabel::OBAtom *a) const
+
+inline virtual std::pair<int, float> get_atom_type_index(OpenBabel::OBAtom *a) const

return type index of a

-
-inline virtual std::pair<int, float> get_int_type(int t) const
+
+inline virtual std::pair<int, float> get_int_type(int t) const

look up covalent radius of element or provide default

-
-inline virtual std::vector<std::string> get_type_names() const
+
+inline virtual std::vector<std::string> get_type_names() const

return vector of string representations of types this isn’t expected to be particularly efficient

-
-inline virtual std::vector<float> get_type_radii() const
+
+inline virtual std::vector<float> get_type_radii() const

return atomic radius of each type, generic type is given zero radius

-
-inline virtual float get_atom_type_vector(OpenBabel::OBAtom *a, std::vector<float> &typ) const final
+
+inline virtual float get_atom_type_vector(OpenBabel::OBAtom *a, std::vector<float> &typ) const final
-
-inline virtual bool is_vector_typer() const
+
+inline virtual bool is_vector_typer() const

Public Static Functions

-
-static void set_names(unsigned ntypes, std::vector<std::string> &type_names, const std::vector<std::string> &names)
+
+static void set_names(unsigned ntypes, std::vector<std::string> &type_names, const std::vector<std::string> &names)
-
-
-

The Quaternion class

+ +
+

The Quaternion class

-
-class libmolgrid::Quaternion
+
+class libmolgrid::Quaternion

A CUDA friendly quaternion class. Single precision only for maximum CUDA performance.

Public Types

-
-typedef float fl
+
+typedef float fl

Public Functions

-
-__host__ __device__ inline Quaternion()
+
+__host__ __device__ inline Quaternion()
-
-__host__ __device__ inline Quaternion(fl A, fl B, fl C, fl D)
+
+__host__ __device__ inline Quaternion(fl A, fl B, fl C, fl D)

Construct quaternion with real then unreal components.

-
-__host__ __device__ inline fl R_component_1() const
+
+__host__ __device__ inline fl R_component_1() const

Return the real or scalar part.

-
-__host__ __device__ inline fl R_component_2() const
+
+__host__ __device__ inline fl R_component_2() const

Return unreal[0].

-
-__host__ __device__ inline fl R_component_3() const
+
+__host__ __device__ inline fl R_component_3() const

Return unreal[1].

-
-__host__ __device__ inline fl R_component_4() const
+
+__host__ __device__ inline fl R_component_4() const

Return unreal[2].

-
-__host__ __device__ inline Quaternion &operator*=(const fl &r)
+
+__host__ __device__ inline Quaternion &operator*=(const fl &r)

In-place multiplication by scalar (element-wise)

-
-__host__ __device__ inline Quaternion &operator/=(const fl &r)
+
+__host__ __device__ inline Quaternion &operator/=(const fl &r)

In-place division by scalar (element-wise)

-
-__host__ __device__ inline Quaternion operator/(const fl &r)
+
+__host__ __device__ inline Quaternion operator/(const fl &r)

Division by scalar (element-wise)

-
-__host__ __device__ inline Quaternion operator*(const Quaternion &r) const
+
+__host__ __device__ inline Quaternion operator*(const Quaternion &r) const

Quaternion multiplication.

-
-__host__ __device__ inline Quaternion &operator*=(const Quaternion &r)
+
+__host__ __device__ inline Quaternion &operator*=(const Quaternion &r)

Quaternion in-place multiplication.

-
-__host__ __device__ inline bool operator==(const Quaternion &r) const
+
+__host__ __device__ inline bool operator==(const Quaternion &r) const

check bit level equality

-
-__host__ __device__ inline Quaternion operator/(const Quaternion &r)
+
+__host__ __device__ inline Quaternion operator/(const Quaternion &r)

Quaternion divison.

-
-__host__ __device__ inline Quaternion operator/=(const Quaternion &r)
+
+__host__ __device__ inline Quaternion operator/=(const Quaternion &r)

Quaternion in-place divison.

-
-__host__ __device__ inline Quaternion conj() const
+
+__host__ __device__ inline Quaternion conj() const

Conjugate.

-
-__host__ __device__ inline float real() const
+
+__host__ __device__ inline float real() const
-
-__host__ __device__ inline float norm() const
+
+__host__ __device__ inline float norm() const

The Cayley norm - the square of the Euclidean norm.

-
-__host__ __device__ inline float3 rotate(fl x, fl y, fl z) const
+
+__host__ __device__ inline float3 rotate(fl x, fl y, fl z) const

Rotation point (x,y,z) using this quaternion.

-
-__host__ __device__ inline float3 transform(fl x, fl y, fl z, float3 center, float3 translate) const
+
+__host__ __device__ inline float3 transform(fl x, fl y, fl z, float3 center, float3 translate) const

Rotate around the provided center and translate.

-
-__host__ __device__ inline Quaternion inverse() const
+
+__host__ __device__ inline Quaternion inverse() const

Return inverse.

-
-
-

The ReceptorStratifiedExampleRefProvider class

+ +
+

The ReceptorStratifiedExampleRefProvider class

-
-template<class Provider, int K = 1>
class libmolgrid::ReceptorStratifiedExampleRefProvider : public ExampleRefProvider
+
+template<class Provider, int K = 1>
class libmolgrid::ReceptorStratifiedExampleRefProvider : public ExampleRefProvider

Partition examples by receptor and sample k times uniformly from each receptor with k=2 and a balanced_provider you get paired examples from each receptor.

Public Functions

-
-inline ReceptorStratifiedExampleRefProvider()
+
+inline ReceptorStratifiedExampleRefProvider()
-
-inline ReceptorStratifiedExampleRefProvider(const ExampleProviderSettings &settings)
+
+inline ReceptorStratifiedExampleRefProvider(const ExampleProviderSettings &settings)
-
-inline virtual void addref(const ExampleRef &ex)
+
+inline virtual void addref(const ExampleRef &ex)
-
-inline virtual size_t num_labels() const
+
+inline virtual size_t num_labels() const

return number of labels in an example

if provider has predetermined batch size

-
-inline virtual void setup()
+
+inline virtual void setup()
-
-inline virtual void nextref(ExampleRef &ex)
+
+inline virtual void nextref(ExampleRef &ex)
-
-inline virtual unsigned size() const
+
+inline virtual unsigned size() const
-
-inline virtual size_t small_epoch_size() const
+
+inline virtual size_t small_epoch_size() const

Return number of example in small epoch.

-
-inline virtual size_t large_epoch_size() const
+
+inline virtual size_t large_epoch_size() const

Return number of example in large epoch.

-
-inline virtual void reset()
+
+inline virtual void reset()

Reset iterators to start.

-
-virtual void setup()
+
+virtual void setup()
-
-virtual void setup()
+
+virtual void setup()
-
-inline virtual bool has_group() const
+
+inline virtual bool has_group() const
-
-inline virtual void check_batch_size(unsigned bsize) const
+
+inline virtual void check_batch_size(unsigned bsize) const

has group field

-
-virtual int populate(std::istream &lines, int numlabels)
+
+virtual int populate(std::istream &lines, int numlabels)

read in all the example refs from lines, but does not setup

-
-inline virtual size_t get_small_epoch_num() const
+
+inline virtual size_t get_small_epoch_num() const

Return current small epoch number.

-
-inline virtual size_t get_large_epoch_num() const
+
+inline virtual size_t get_large_epoch_num() const

Return current large epoch number.

@@ -4179,128 +4090,128 @@

The ReceptorStr

Private Members

-
-std::vector<Provider> examples
+
+std::vector<Provider> examples
-
-std::unordered_map<const char*, unsigned> recmap
+
+std::unordered_map<const char*, unsigned> recmap
-
-ExampleProviderSettings param
+
+ExampleProviderSettings param
-
-size_t currenti = 0
+
+size_t currenti = 0
-
-size_t currentk = 0
+
+size_t currentk = 0
-
-bool randomize = false
+
+bool randomize = false

-
-
-

The SamplingExampleRefProvider class

+ +
+

The SamplingExampleRefProvider class

-
-template<class Provider1, class Provider2>
class libmolgrid::SamplingExampleRefProvider : public ExampleRefProvider
+
+template<class Provider1, class Provider2>
class libmolgrid::SamplingExampleRefProvider : public ExampleRefProvider

sample with some specified probability between two providers that should already be initialized

Public Functions

-
-inline SamplingExampleRefProvider()
+
+inline SamplingExampleRefProvider()
-
-inline SamplingExampleRefProvider(const ExampleProviderSettings &settings, Provider1 P1, Provider2 P2, double srate)
+
+inline SamplingExampleRefProvider(const ExampleProviderSettings &settings, Provider1 P1, Provider2 P2, double srate)
-
-inline virtual void addref(const ExampleRef &ex)
+
+inline virtual void addref(const ExampleRef &ex)
-
-inline virtual void setup()
+
+inline virtual void setup()
-
-inline virtual size_t num_labels() const
+
+inline virtual size_t num_labels() const

return number of labels in an example

if provider has predetermined batch size

-
-inline virtual void nextref(ExampleRef &ex)
+
+inline virtual void nextref(ExampleRef &ex)
-
-inline virtual unsigned size() const
+
+inline virtual unsigned size() const
-
-inline virtual size_t small_epoch_size() const
+
+inline virtual size_t small_epoch_size() const

this is the expected size of the epoch

-
-inline virtual size_t large_epoch_size() const
+
+inline virtual size_t large_epoch_size() const

Return number of example in large epoch.

-
-inline virtual void reset()
+
+inline virtual void reset()

Reset iterators to start.

-
-inline virtual bool has_group() const
+
+inline virtual bool has_group() const
-
-inline virtual void check_batch_size(unsigned bsize) const
+
+inline virtual void check_batch_size(unsigned bsize) const

has group field

-
-virtual int populate(std::istream &lines, int numlabels)
+
+virtual int populate(std::istream &lines, int numlabels)

read in all the example refs from lines, but does not setup

-
-inline virtual size_t get_small_epoch_num() const
+
+inline virtual size_t get_small_epoch_num() const

Return current small epoch number.

-
-inline virtual size_t get_large_epoch_num() const
+
+inline virtual size_t get_large_epoch_num() const

Return current large epoch number.

@@ -4308,88 +4219,88 @@

The SamplingExa

Private Members

-
-Provider1 p1
+
+Provider1 p1
-
-Provider2 p2
+
+Provider2 p2
-
-double sample_rate = 0.5
+
+double sample_rate = 0.5
-
-std::uniform_real_distribution<double> R = {0.0, 1}
+
+std::uniform_real_distribution<double> R = {0.0, 1}

-
-
-

The StringCache class

+ +
+

The StringCache class

-
-class libmolgrid::StringCache
+
+class libmolgrid::StringCache

Public Functions

-
-inline const char *get(const std::string &s)
+
+inline const char *get(const std::string &s)

Private Members

-
-std::unordered_set<std::string> strings
+
+std::unordered_set<std::string> strings
-
-
-

The SubsetAtomMapper class

+ +
+

The SubsetAtomMapper class

-
-class libmolgrid::SubsetAtomMapper : public AtomIndexTypeMapper
+
+class libmolgrid::SubsetAtomMapper : public AtomIndexTypeMapper

Map atom types onto a provided subset.

Public Functions

-
-SubsetAtomMapper(const std::vector<int> &map, bool include_catchall = true, const std::vector<std::string> &old_names = std::vector<std::string>())
+
+SubsetAtomMapper(const std::vector<int> &map, bool include_catchall = true, const std::vector<std::string> &old_names = std::vector<std::string>())

Indices of map are new types, values are the old types, if include_catchall is true, the last type will be the type returned for anything not in map (otherwise -1 is returned)

-
-SubsetAtomMapper(const std::vector<std::vector<int>> &map, bool include_catchall = true, const std::vector<std::string> &old_names = std::vector<std::string>())
+
+SubsetAtomMapper(const std::vector<std::vector<int>> &map, bool include_catchall = true, const std::vector<std::string> &old_names = std::vector<std::string>())

surjective mapping

-
-inline virtual unsigned num_types() const
+
+inline virtual unsigned num_types() const

return number of mapped types, zero if unknown (no mapping)

-
-virtual int get_new_type(unsigned origt) const
+
+virtual int get_new_type(unsigned origt) const

return mapped type

-
-inline virtual std::vector<std::string> get_type_names() const
+
+inline virtual std::vector<std::string> get_type_names() const

return vector of string representations of types

@@ -4397,312 +4308,312 @@

The SubsetAtomM

Private Members

-
-std::unordered_map<int, int> old2new
+
+std::unordered_map<int, int> old2new
-
-std::vector<std::string> new_type_names
+
+std::vector<std::string> new_type_names
-
-int default_type = -1
+
+int default_type = -1
-
-unsigned num_new_types = 0
+
+unsigned num_new_types = 0

-
-
-

The SubsettedElementTyper class

+ +
+

The SubsettedElementTyper class

-
-class libmolgrid::SubsettedElementTyper : public MappedAtomIndexTyper<SubsetAtomMapper, ElementIndexTyper>
+
+class libmolgrid::SubsettedElementTyper : public MappedAtomIndexTyper<SubsetAtomMapper, ElementIndexTyper>

subsetting element types, derived class for convenient initialization

Public Functions

-
-inline SubsettedElementTyper(const std::vector<int> &map, bool include_catchall = true, unsigned maxe = 84)
+
+inline SubsettedElementTyper(const std::vector<int> &map, bool include_catchall = true, unsigned maxe = 84)
-
-inline SubsettedElementTyper(const ElementIndexTyper &etyper, const std::vector<int> &map, bool include_catchall = true)
+
+inline SubsettedElementTyper(const ElementIndexTyper &etyper, const std::vector<int> &map, bool include_catchall = true)
-
-inline SubsettedElementTyper(const std::vector<std::vector<int>> &map, bool include_catchall = true, unsigned maxe = 84)
+
+inline SubsettedElementTyper(const std::vector<std::vector<int>> &map, bool include_catchall = true, unsigned maxe = 84)
-
-inline SubsettedElementTyper(const ElementIndexTyper &etyper, const std::vector<std::vector<int>> &map, bool include_catchall = true)
+
+inline SubsettedElementTyper(const ElementIndexTyper &etyper, const std::vector<std::vector<int>> &map, bool include_catchall = true)
-
-inline virtual unsigned num_types() const
+
+inline virtual unsigned num_types() const

return number of types

-
-virtual unsigned num_types() const = 0
+
+virtual unsigned num_types() const = 0

return number of types

-
-inline virtual std::pair<int, float> get_atom_type_index(OpenBabel::OBAtom *a) const
+
+inline virtual std::pair<int, float> get_atom_type_index(OpenBabel::OBAtom *a) const

return type index of a

-
-inline virtual std::pair<int, float> get_int_type(int t) const
+
+inline virtual std::pair<int, float> get_int_type(int t) const

return type and radius given a precomputed type, the meaning of which is specific to the implementation

-
-inline virtual std::vector<std::string> get_type_names() const
+
+inline virtual std::vector<std::string> get_type_names() const

return vector of string representations of types this isn’t expected to be particularly efficient

-
-virtual std::vector<std::string> get_type_names() const = 0
+
+virtual std::vector<std::string> get_type_names() const = 0

return vector of string representations of types this isn’t expected to be particularly efficient

-
-inline virtual std::vector<float> get_type_radii() const
+
+inline virtual std::vector<float> get_type_radii() const

radii are the average of the underlying mapped types

-
-inline virtual std::vector<float> get_type_radii() const
+
+inline virtual std::vector<float> get_type_radii() const

if applicable to the typer, return the standard atomic radius of each type

-
-inline virtual float get_atom_type_vector(OpenBabel::OBAtom *a, std::vector<float> &typ) const final
+
+inline virtual float get_atom_type_vector(OpenBabel::OBAtom *a, std::vector<float> &typ) const final
-
-inline virtual bool is_vector_typer() const
+
+inline virtual bool is_vector_typer() const

Public Static Functions

-
-static void set_names(unsigned ntypes, std::vector<std::string> &type_names, const std::vector<std::string> &names)
+
+static void set_names(unsigned ntypes, std::vector<std::string> &type_names, const std::vector<std::string> &names)
-
-
-

The SubsettedGninaTyper class

+ +
+

The SubsettedGninaTyper class

-
-class libmolgrid::SubsettedGninaTyper : public MappedAtomIndexTyper<SubsetAtomMapper, GninaIndexTyper>
+
+class libmolgrid::SubsettedGninaTyper : public MappedAtomIndexTyper<SubsetAtomMapper, GninaIndexTyper>

subsetting gnina types, derived class for convenient initialization

Public Functions

-
-inline SubsettedGninaTyper(const std::vector<int> &map, bool include_catchall = true, bool usec = false)
+
+inline SubsettedGninaTyper(const std::vector<int> &map, bool include_catchall = true, bool usec = false)
-
-inline SubsettedGninaTyper(const GninaIndexTyper &etyper, const std::vector<int> &map, bool include_catchall = true)
+
+inline SubsettedGninaTyper(const GninaIndexTyper &etyper, const std::vector<int> &map, bool include_catchall = true)
-
-inline SubsettedGninaTyper(const std::vector<std::vector<int>> &map, bool include_catchall = true, bool usec = false)
+
+inline SubsettedGninaTyper(const std::vector<std::vector<int>> &map, bool include_catchall = true, bool usec = false)
-
-inline SubsettedGninaTyper(const GninaIndexTyper &etyper, const std::vector<std::vector<int>> &map, bool include_catchall = true)
+
+inline SubsettedGninaTyper(const GninaIndexTyper &etyper, const std::vector<std::vector<int>> &map, bool include_catchall = true)
-
-inline virtual unsigned num_types() const
+
+inline virtual unsigned num_types() const

return number of types

-
-virtual unsigned num_types() const = 0
+
+virtual unsigned num_types() const = 0

return number of types

-
-inline virtual std::pair<int, float> get_atom_type_index(OpenBabel::OBAtom *a) const
+
+inline virtual std::pair<int, float> get_atom_type_index(OpenBabel::OBAtom *a) const

return type index of a

-
-inline virtual std::pair<int, float> get_int_type(int t) const
+
+inline virtual std::pair<int, float> get_int_type(int t) const

return type and radius given a precomputed type, the meaning of which is specific to the implementation

-
-inline virtual std::vector<std::string> get_type_names() const
+
+inline virtual std::vector<std::string> get_type_names() const

return vector of string representations of types this isn’t expected to be particularly efficient

-
-virtual std::vector<std::string> get_type_names() const = 0
+
+virtual std::vector<std::string> get_type_names() const = 0

return vector of string representations of types this isn’t expected to be particularly efficient

-
-inline virtual std::vector<float> get_type_radii() const
+
+inline virtual std::vector<float> get_type_radii() const

radii are the average of the underlying mapped types

-
-inline virtual std::vector<float> get_type_radii() const
+
+inline virtual std::vector<float> get_type_radii() const

if applicable to the typer, return the standard atomic radius of each type

-
-inline virtual float get_atom_type_vector(OpenBabel::OBAtom *a, std::vector<float> &typ) const final
+
+inline virtual float get_atom_type_vector(OpenBabel::OBAtom *a, std::vector<float> &typ) const final
-
-inline virtual bool is_vector_typer() const
+
+inline virtual bool is_vector_typer() const

Public Static Functions

-
-static void set_names(unsigned ntypes, std::vector<std::string> &type_names, const std::vector<std::string> &names)
+
+static void set_names(unsigned ntypes, std::vector<std::string> &type_names, const std::vector<std::string> &names)
-
-
-

The Transform class

+ +
+

The Transform class

-
-class libmolgrid::Transform
+
+class libmolgrid::Transform

Stateful transformation of Cartesian coordinates.

Stores a center of rotation, quaternion, and translation. Can apply transformation forward or backward, with or without translations.

Public Functions

-
-inline Transform()
+
+inline Transform()
-
-inline Transform(const Quaternion &q, float3 c = make_float3(0, 0, 0), float3 t = make_float3(0, 0, 0))
+
+inline Transform(const Quaternion &q, float3 c = make_float3(0, 0, 0), float3 t = make_float3(0, 0, 0))
-
-Transform(float3 c, float random_translate = 0.0, bool random_rotate = false)
+
+Transform(float3 c, float random_translate = 0.0, bool random_rotate = false)
-
-template<typename Dtype>
void forward(const Grid<Dtype, 2, false> &in, Grid<Dtype, 2, false> &out, bool dotranslate = true) const
+
+template<typename Dtype>
void forward(const Grid<Dtype, 2, false> &in, Grid<Dtype, 2, false> &out, bool dotranslate = true) const
-
-void forward(const Example &in, Example &out, bool dotranslate = true) const
+
+void forward(const Example &in, Example &out, bool dotranslate = true) const
-
-void forward(const CoordinateSet &in, CoordinateSet &out, bool dotranslate = true) const
+
+void forward(const CoordinateSet &in, CoordinateSet &out, bool dotranslate = true) const
-
-template<typename Dtype>
__host__ void forward(const Grid<Dtype, 2, true> &in, Grid<Dtype, 2, true> &out, bool dotranslate = true) const
+
+template<typename Dtype>
__host__ void forward(const Grid<Dtype, 2, true> &in, Grid<Dtype, 2, true> &out, bool dotranslate = true) const
-
-template<typename Dtype>
void backward(const Grid<Dtype, 2, false> &in, Grid<Dtype, 2, false> &out, bool dotranslate = true) const
+
+template<typename Dtype>
void backward(const Grid<Dtype, 2, false> &in, Grid<Dtype, 2, false> &out, bool dotranslate = true) const
-
-template<typename Dtype>
__host__ void backward(const Grid<Dtype, 2, true> &in, Grid<Dtype, 2, true> &out, bool dotranslate = true) const
+
+template<typename Dtype>
__host__ void backward(const Grid<Dtype, 2, true> &in, Grid<Dtype, 2, true> &out, bool dotranslate = true) const
-
-inline const Quaternion &get_quaternion() const
+
+inline const Quaternion &get_quaternion() const
-
-inline float3 get_rotation_center() const
+
+inline float3 get_rotation_center() const
-
-inline float3 get_translation() const
+
+inline float3 get_translation() const
-
-inline void set_quaternion(const Quaternion &q)
+
+inline void set_quaternion(const Quaternion &q)
-
-inline void set_rotation_center(float3 c)
+
+inline void set_rotation_center(float3 c)
-
-inline void set_translation(float3 t)
+
+inline void set_translation(float3 t)
-
-inline bool is_identity() const
+
+inline bool is_identity() const

transformation does not change inputs

@@ -4710,127 +4621,127 @@

The Transform

Private Functions

-
-template<typename Dtype, bool isCUDA>
inline void checkGrids(const Grid<Dtype, 2, isCUDA> &in, const Grid<Dtype, 2, isCUDA> &out) const
+
+template<typename Dtype, bool isCUDA>
inline void checkGrids(const Grid<Dtype, 2, isCUDA> &in, const Grid<Dtype, 2, isCUDA> &out) const

Private Members

-
-Quaternion Q
+
+Quaternion Q
-
-float3 center
+
+float3 center
-
-float3 translate
+
+float3 translate
-
-
-

The UniformExampleRefProvider class

+ +
+

The UniformExampleRefProvider class

-
-class libmolgrid::UniformExampleRefProvider : public ExampleRefProvider
+
+class libmolgrid::UniformExampleRefProvider : public ExampleRefProvider

single array of examples, possibly shuffled or copied

Public Functions

-
-inline UniformExampleRefProvider()
+
+inline UniformExampleRefProvider()
-
-inline UniformExampleRefProvider(const ExampleProviderSettings &settings)
+
+inline UniformExampleRefProvider(const ExampleProviderSettings &settings)
-
-virtual void addref(const ExampleRef &ex)
+
+virtual void addref(const ExampleRef &ex)
-
-inline virtual size_t num_labels() const
+
+inline virtual size_t num_labels() const

return number of labels in an example

if provider has predetermined batch size

-
-virtual void setup()
+
+virtual void setup()
-
-virtual void nextref(ExampleRef &ex)
+
+virtual void nextref(ExampleRef &ex)
-
-inline virtual unsigned size() const
+
+inline virtual unsigned size() const
-
-const ExampleRef &operator[](size_t idx) const
+
+const ExampleRef &operator[](size_t idx) const

Provide ExampleRef at position idx.

-
-inline virtual size_t get_small_epoch_num() const
+
+inline virtual size_t get_small_epoch_num() const

Return current small epoch number.

-
-inline virtual size_t get_large_epoch_num() const
+
+inline virtual size_t get_large_epoch_num() const

Return current large epoch number.

-
-inline virtual size_t small_epoch_size() const
+
+inline virtual size_t small_epoch_size() const

Return number of example in small epoch.

-
-inline virtual size_t large_epoch_size() const
+
+inline virtual size_t large_epoch_size() const

Return number of example in large epoch.

-
-inline virtual void reset()
+
+inline virtual void reset()

Reset iterators to start.

-
-inline virtual bool has_group() const
+
+inline virtual bool has_group() const
-
-inline virtual void check_batch_size(unsigned bsize) const
+
+inline virtual void check_batch_size(unsigned bsize) const

has group field

-
-virtual int populate(std::istream &lines, int numlabels)
+
+virtual int populate(std::istream &lines, int numlabels)

read in all the example refs from lines, but does not setup

@@ -4838,133 +4749,133 @@

The UniformExam

Private Members

-
-std::vector<ExampleRef> all
+
+std::vector<ExampleRef> all
-
-size_t current = 0
+
+size_t current = 0
-
-size_t current_copy = 0
+
+size_t current_copy = 0
-
-size_t nlabels = 0
+
+size_t nlabels = 0
-
-size_t epoch = 0
+
+size_t epoch = 0
-
-bool randomize = false
+
+bool randomize = false
-
-size_t ncopies = 1
+
+size_t ncopies = 1

-
-
-

The ValueStratifiedExampleRefProfider class

+ +
+

The ValueStratifiedExampleRefProfider class

-
-template<class Provider>
class libmolgrid::ValueStratifiedExampleRefProfider : public ExampleRefProvider
+
+template<class Provider>
class libmolgrid::ValueStratifiedExampleRefProfider : public ExampleRefProvider

Partition examples by affinity and sample uniformly from each affinity bin affinities are binned by absolute value according to molgriddataparameters.

Public Functions

-
-inline ValueStratifiedExampleRefProfider()
+
+inline ValueStratifiedExampleRefProfider()
-
-inline ValueStratifiedExampleRefProfider(const ExampleProviderSettings &parm)
+
+inline ValueStratifiedExampleRefProfider(const ExampleProviderSettings &parm)
-
-inline virtual void addref(const ExampleRef &ex)
+
+inline virtual void addref(const ExampleRef &ex)
-
-inline virtual size_t num_labels() const
+
+inline virtual size_t num_labels() const

return number of labels in an example

if provider has predetermined batch size

-
-inline virtual void setup()
+
+inline virtual void setup()
-
-inline virtual void nextref(ExampleRef &ex)
+
+inline virtual void nextref(ExampleRef &ex)
-
-inline virtual unsigned size() const
+
+inline virtual unsigned size() const
-
-inline virtual size_t small_epoch_size() const
+
+inline virtual size_t small_epoch_size() const

Return number of example in small epoch.

-
-inline virtual size_t large_epoch_size() const
+
+inline virtual size_t large_epoch_size() const

Return number of example in large epoch.

-
-inline virtual void reset()
+
+inline virtual void reset()

Reset iterators to start.

-
-inline virtual bool has_group() const
+
+inline virtual bool has_group() const
-
-inline virtual void check_batch_size(unsigned bsize) const
+
+inline virtual void check_batch_size(unsigned bsize) const

has group field

-
-virtual int populate(std::istream &lines, int numlabels)
+
+virtual int populate(std::istream &lines, int numlabels)

read in all the example refs from lines, but does not setup

-
-inline virtual size_t get_small_epoch_num() const
+
+inline virtual size_t get_small_epoch_num() const

Return current small epoch number.

-
-inline virtual size_t get_large_epoch_num() const
+
+inline virtual size_t get_large_epoch_num() const

Return current large epoch number.

@@ -4972,103 +4883,87 @@

The ValueStrati

Private Functions

-
-inline unsigned bin(double val) const
+
+inline unsigned bin(double val) const

Private Members

-
-std::vector<Provider> examples
+
+std::vector<Provider> examples
-
-size_t currenti = 0
+
+size_t currenti = 0
-
-double min = 0
+
+double min = 0
-
-double max = 0
+
+double max = 0
-
-double step = 0
+
+double step = 0
-
-int valpos = 0
+
+int valpos = 0
-
-bool use_abs = true
+
+bool use_abs = true

-
- -
-

Indices and tables

+ + +
+

Indices and tables

-
+ -

-

- © Copyright 2019-2021, David Koes and Jocelyn Sunseri. - -

+

© Copyright 2019-2021, David Koes and Jocelyn Sunseri.

- - - - Built with Sphinx using a - + + Built with Sphinx using a theme - - provided by Read the Docs. + provided by Read the Docs. +
- - - - - - - - - - + \ No newline at end of file diff --git a/docs/cpp/objects.inv b/docs/cpp/objects.inv index 6af25d3..7e14abe 100644 Binary files a/docs/cpp/objects.inv and b/docs/cpp/objects.inv differ diff --git a/docs/cpp/search.html b/docs/cpp/search.html index 668fdf0..7718ae9 100644 --- a/docs/cpp/search.html +++ b/docs/cpp/search.html @@ -1,71 +1,34 @@ - - - - Search — libmolgrid documentation - - - - - - - - - - - - - - - + + - - + - - - - - - + + + - - - +
- -
- - -
- - - - - - - - - - + diff --git a/docs/cpp/searchindex.js b/docs/cpp/searchindex.js index cad2cdd..fb1cc61 100644 --- a/docs/cpp/searchindex.js +++ b/docs/cpp/searchindex.js @@ -1 +1 @@ -Search.setIndex({docnames:["index"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":3,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":2,"sphinx.domains.rst":2,"sphinx.domains.std":2,sphinx:56},filenames:["index.rst"],objects:{"":{"libmolgrid::AtomIndexTypeMapper":[0,0,1,"_CPPv4N10libmolgrid19AtomIndexTypeMapperE"],"libmolgrid::AtomIndexTypeMapper::AtomIndexTypeMapper":[0,1,1,"_CPPv4N10libmolgrid19AtomIndexTypeMapper19AtomIndexTypeMapperEv"],"libmolgrid::AtomIndexTypeMapper::get_new_type":[0,1,1,"_CPPv4NK10libmolgrid19AtomIndexTypeMapper12get_new_typeEj"],"libmolgrid::AtomIndexTypeMapper::get_new_type::origt":[0,2,1,"_CPPv4NK10libmolgrid19AtomIndexTypeMapper12get_new_typeEj"],"libmolgrid::AtomIndexTypeMapper::get_type_names":[0,1,1,"_CPPv4NK10libmolgrid19AtomIndexTypeMapper14get_type_namesEv"],"libmolgrid::AtomIndexTypeMapper::num_types":[0,1,1,"_CPPv4NK10libmolgrid19AtomIndexTypeMapper9num_typesEv"],"libmolgrid::AtomIndexTypeMapper::~AtomIndexTypeMapper":[0,1,1,"_CPPv4N10libmolgrid19AtomIndexTypeMapperD0Ev"],"libmolgrid::AtomIndexTyper":[0,0,1,"_CPPv4N10libmolgrid14AtomIndexTyperE"],"libmolgrid::AtomIndexTyper::AtomIndexTyper":[0,1,1,"_CPPv4N10libmolgrid14AtomIndexTyper14AtomIndexTyperEv"],"libmolgrid::AtomIndexTyper::get_atom_type_index":[0,1,1,"_CPPv4NK10libmolgrid14AtomIndexTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE"],"libmolgrid::AtomIndexTyper::get_atom_type_index::a":[0,2,1,"_CPPv4NK10libmolgrid14AtomIndexTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE"],"libmolgrid::AtomIndexTyper::get_atom_type_vector":[0,1,1,"_CPPv4NK10libmolgrid14AtomIndexTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::AtomIndexTyper::get_atom_type_vector::a":[0,2,1,"_CPPv4NK10libmolgrid14AtomIndexTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::AtomIndexTyper::get_atom_type_vector::typ":[0,2,1,"_CPPv4NK10libmolgrid14AtomIndexTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::AtomIndexTyper::get_int_type":[0,1,1,"_CPPv4NK10libmolgrid14AtomIndexTyper12get_int_typeEi"],"libmolgrid::AtomIndexTyper::get_int_type::t":[0,2,1,"_CPPv4NK10libmolgrid14AtomIndexTyper12get_int_typeEi"],"libmolgrid::AtomIndexTyper::get_type_names":[0,1,1,"_CPPv4NK10libmolgrid14AtomIndexTyper14get_type_namesEv"],"libmolgrid::AtomIndexTyper::get_type_radii":[0,1,1,"_CPPv4NK10libmolgrid14AtomIndexTyper14get_type_radiiEv"],"libmolgrid::AtomIndexTyper::is_vector_typer":[0,1,1,"_CPPv4NK10libmolgrid14AtomIndexTyper15is_vector_typerEv"],"libmolgrid::AtomIndexTyper::num_types":[0,1,1,"_CPPv4NK10libmolgrid14AtomIndexTyper9num_typesEv"],"libmolgrid::AtomIndexTyper::set_names":[0,1,1,"_CPPv4N10libmolgrid14AtomIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::AtomIndexTyper::set_names::names":[0,2,1,"_CPPv4N10libmolgrid14AtomIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::AtomIndexTyper::set_names::ntypes":[0,2,1,"_CPPv4N10libmolgrid14AtomIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::AtomIndexTyper::set_names::type_names":[0,2,1,"_CPPv4N10libmolgrid14AtomIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::AtomIndexTyper::~AtomIndexTyper":[0,1,1,"_CPPv4N10libmolgrid14AtomIndexTyperD0Ev"],"libmolgrid::AtomTyper":[0,0,1,"_CPPv4N10libmolgrid9AtomTyperE"],"libmolgrid::AtomTyper::AtomTyper":[0,1,1,"_CPPv4N10libmolgrid9AtomTyper9AtomTyperEv"],"libmolgrid::AtomTyper::get_atom_type_index":[0,1,1,"_CPPv4NK10libmolgrid9AtomTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE"],"libmolgrid::AtomTyper::get_atom_type_index::a":[0,2,1,"_CPPv4NK10libmolgrid9AtomTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE"],"libmolgrid::AtomTyper::get_atom_type_vector":[0,1,1,"_CPPv4NK10libmolgrid9AtomTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::AtomTyper::get_atom_type_vector::a":[0,2,1,"_CPPv4NK10libmolgrid9AtomTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::AtomTyper::get_atom_type_vector::typ":[0,2,1,"_CPPv4NK10libmolgrid9AtomTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::AtomTyper::get_int_type":[0,1,1,"_CPPv4NK10libmolgrid9AtomTyper12get_int_typeEi"],"libmolgrid::AtomTyper::get_int_type::t":[0,2,1,"_CPPv4NK10libmolgrid9AtomTyper12get_int_typeEi"],"libmolgrid::AtomTyper::get_type_names":[0,1,1,"_CPPv4NK10libmolgrid9AtomTyper14get_type_namesEv"],"libmolgrid::AtomTyper::is_vector_typer":[0,1,1,"_CPPv4NK10libmolgrid9AtomTyper15is_vector_typerEv"],"libmolgrid::AtomTyper::num_types":[0,1,1,"_CPPv4NK10libmolgrid9AtomTyper9num_typesEv"],"libmolgrid::AtomTyper::~AtomTyper":[0,1,1,"_CPPv4N10libmolgrid9AtomTyperD0Ev"],"libmolgrid::AtomVectorTyper":[0,0,1,"_CPPv4N10libmolgrid15AtomVectorTyperE"],"libmolgrid::AtomVectorTyper::AtomVectorTyper":[0,1,1,"_CPPv4N10libmolgrid15AtomVectorTyper15AtomVectorTyperEv"],"libmolgrid::AtomVectorTyper::get_atom_type_index":[0,1,1,"_CPPv4NK10libmolgrid15AtomVectorTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE"],"libmolgrid::AtomVectorTyper::get_atom_type_index::a":[0,2,1,"_CPPv4NK10libmolgrid15AtomVectorTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE"],"libmolgrid::AtomVectorTyper::get_atom_type_vector":[0,1,1,"_CPPv4NK10libmolgrid15AtomVectorTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::AtomVectorTyper::get_atom_type_vector::a":[0,2,1,"_CPPv4NK10libmolgrid15AtomVectorTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::AtomVectorTyper::get_atom_type_vector::typ":[0,2,1,"_CPPv4NK10libmolgrid15AtomVectorTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::AtomVectorTyper::get_int_type":[0,1,1,"_CPPv4NK10libmolgrid15AtomVectorTyper12get_int_typeEi"],"libmolgrid::AtomVectorTyper::get_int_type::t":[0,2,1,"_CPPv4NK10libmolgrid15AtomVectorTyper12get_int_typeEi"],"libmolgrid::AtomVectorTyper::get_type_names":[0,1,1,"_CPPv4NK10libmolgrid15AtomVectorTyper14get_type_namesEv"],"libmolgrid::AtomVectorTyper::get_vector_type_radii":[0,1,1,"_CPPv4NK10libmolgrid15AtomVectorTyper21get_vector_type_radiiEv"],"libmolgrid::AtomVectorTyper::is_vector_typer":[0,1,1,"_CPPv4NK10libmolgrid15AtomVectorTyper15is_vector_typerEv"],"libmolgrid::AtomVectorTyper::num_types":[0,1,1,"_CPPv4NK10libmolgrid15AtomVectorTyper9num_typesEv"],"libmolgrid::AtomVectorTyper::~AtomVectorTyper":[0,1,1,"_CPPv4N10libmolgrid15AtomVectorTyperD0Ev"],"libmolgrid::BalancedExampleRefProvider":[0,0,1,"_CPPv4N10libmolgrid26BalancedExampleRefProviderE"],"libmolgrid::BalancedExampleRefProvider::BalancedExampleRefProvider":[0,1,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider26BalancedExampleRefProviderEv"],"libmolgrid::BalancedExampleRefProvider::BalancedExampleRefProvider::settings":[0,2,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider26BalancedExampleRefProviderERK23ExampleProviderSettings"],"libmolgrid::BalancedExampleRefProvider::actives":[0,3,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider7activesE"],"libmolgrid::BalancedExampleRefProvider::addref":[0,1,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider6addrefERK10ExampleRef"],"libmolgrid::BalancedExampleRefProvider::addref::ex":[0,2,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider6addrefERK10ExampleRef"],"libmolgrid::BalancedExampleRefProvider::check_batch_size":[0,1,1,"_CPPv4NK10libmolgrid26BalancedExampleRefProvider16check_batch_sizeEj"],"libmolgrid::BalancedExampleRefProvider::check_batch_size::bsize":[0,2,1,"_CPPv4NK10libmolgrid26BalancedExampleRefProvider16check_batch_sizeEj"],"libmolgrid::BalancedExampleRefProvider::current":[0,3,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider7currentE"],"libmolgrid::BalancedExampleRefProvider::decoys":[0,3,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider6decoysE"],"libmolgrid::BalancedExampleRefProvider::get_large_epoch_num":[0,1,1,"_CPPv4NK10libmolgrid26BalancedExampleRefProvider19get_large_epoch_numEv"],"libmolgrid::BalancedExampleRefProvider::get_small_epoch_num":[0,1,1,"_CPPv4NK10libmolgrid26BalancedExampleRefProvider19get_small_epoch_numEv"],"libmolgrid::BalancedExampleRefProvider::has_group":[0,1,1,"_CPPv4NK10libmolgrid26BalancedExampleRefProvider9has_groupEv"],"libmolgrid::BalancedExampleRefProvider::labelpos":[0,3,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider8labelposE"],"libmolgrid::BalancedExampleRefProvider::large_epoch_size":[0,1,1,"_CPPv4NK10libmolgrid26BalancedExampleRefProvider16large_epoch_sizeEv"],"libmolgrid::BalancedExampleRefProvider::next_active":[0,1,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider11next_activeER10ExampleRef"],"libmolgrid::BalancedExampleRefProvider::next_active::ex":[0,2,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider11next_activeER10ExampleRef"],"libmolgrid::BalancedExampleRefProvider::next_decoy":[0,1,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider10next_decoyER10ExampleRef"],"libmolgrid::BalancedExampleRefProvider::next_decoy::ex":[0,2,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider10next_decoyER10ExampleRef"],"libmolgrid::BalancedExampleRefProvider::nextref":[0,1,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider7nextrefER10ExampleRef"],"libmolgrid::BalancedExampleRefProvider::nextref::ex":[0,2,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider7nextrefER10ExampleRef"],"libmolgrid::BalancedExampleRefProvider::num_actives":[0,1,1,"_CPPv4NK10libmolgrid26BalancedExampleRefProvider11num_activesEv"],"libmolgrid::BalancedExampleRefProvider::num_decoys":[0,1,1,"_CPPv4NK10libmolgrid26BalancedExampleRefProvider10num_decoysEv"],"libmolgrid::BalancedExampleRefProvider::num_labels":[0,1,1,"_CPPv4NK10libmolgrid26BalancedExampleRefProvider10num_labelsEv"],"libmolgrid::BalancedExampleRefProvider::populate":[0,1,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider8populateERNSt7istreamEi"],"libmolgrid::BalancedExampleRefProvider::populate::lines":[0,2,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider8populateERNSt7istreamEi"],"libmolgrid::BalancedExampleRefProvider::populate::numlabels":[0,2,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider8populateERNSt7istreamEi"],"libmolgrid::BalancedExampleRefProvider::reset":[0,1,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider5resetEv"],"libmolgrid::BalancedExampleRefProvider::setup":[0,1,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider5setupEv"],"libmolgrid::BalancedExampleRefProvider::size":[0,1,1,"_CPPv4NK10libmolgrid26BalancedExampleRefProvider4sizeEv"],"libmolgrid::BalancedExampleRefProvider::small_epoch_size":[0,1,1,"_CPPv4NK10libmolgrid26BalancedExampleRefProvider16small_epoch_sizeEv"],"libmolgrid::CallbackIndexTyper":[0,0,1,"_CPPv4N10libmolgrid18CallbackIndexTyperE"],"libmolgrid::CallbackIndexTyper::AtomIndexTyperFunc":[0,4,1,"_CPPv4N10libmolgrid18CallbackIndexTyper18AtomIndexTyperFuncE"],"libmolgrid::CallbackIndexTyper::CallbackIndexTyper":[0,1,1,"_CPPv4N10libmolgrid18CallbackIndexTyper18CallbackIndexTyperE18AtomIndexTyperFuncjRKNSt6vectorINSt6stringEEE"],"libmolgrid::CallbackIndexTyper::CallbackIndexTyper::f":[0,2,1,"_CPPv4N10libmolgrid18CallbackIndexTyper18CallbackIndexTyperE18AtomIndexTyperFuncjRKNSt6vectorINSt6stringEEE"],"libmolgrid::CallbackIndexTyper::CallbackIndexTyper::names":[0,2,1,"_CPPv4N10libmolgrid18CallbackIndexTyper18CallbackIndexTyperE18AtomIndexTyperFuncjRKNSt6vectorINSt6stringEEE"],"libmolgrid::CallbackIndexTyper::CallbackIndexTyper::ntypes":[0,2,1,"_CPPv4N10libmolgrid18CallbackIndexTyper18CallbackIndexTyperE18AtomIndexTyperFuncjRKNSt6vectorINSt6stringEEE"],"libmolgrid::CallbackIndexTyper::callback":[0,3,1,"_CPPv4N10libmolgrid18CallbackIndexTyper8callbackE"],"libmolgrid::CallbackIndexTyper::default_radius":[0,3,1,"_CPPv4N10libmolgrid18CallbackIndexTyper14default_radiusE"],"libmolgrid::CallbackIndexTyper::get_atom_type_index":[0,1,1,"_CPPv4NK10libmolgrid18CallbackIndexTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE"],"libmolgrid::CallbackIndexTyper::get_atom_type_index::a":[0,2,1,"_CPPv4NK10libmolgrid18CallbackIndexTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE"],"libmolgrid::CallbackIndexTyper::get_atom_type_vector":[0,1,1,"_CPPv4NK10libmolgrid18CallbackIndexTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::CallbackIndexTyper::get_atom_type_vector::a":[0,2,1,"_CPPv4NK10libmolgrid18CallbackIndexTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::CallbackIndexTyper::get_atom_type_vector::typ":[0,2,1,"_CPPv4NK10libmolgrid18CallbackIndexTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::CallbackIndexTyper::get_int_type":[0,1,1,"_CPPv4NK10libmolgrid18CallbackIndexTyper12get_int_typeEi"],"libmolgrid::CallbackIndexTyper::get_int_type::t":[0,2,1,"_CPPv4NK10libmolgrid18CallbackIndexTyper12get_int_typeEi"],"libmolgrid::CallbackIndexTyper::get_type_names":[0,1,1,"_CPPv4NK10libmolgrid18CallbackIndexTyper14get_type_namesEv"],"libmolgrid::CallbackIndexTyper::get_type_radii":[0,1,1,"_CPPv4NK10libmolgrid18CallbackIndexTyper14get_type_radiiEv"],"libmolgrid::CallbackIndexTyper::is_vector_typer":[0,1,1,"_CPPv4NK10libmolgrid18CallbackIndexTyper15is_vector_typerEv"],"libmolgrid::CallbackIndexTyper::num_types":[0,1,1,"_CPPv4NK10libmolgrid18CallbackIndexTyper9num_typesEv"],"libmolgrid::CallbackIndexTyper::set_names":[0,1,1,"_CPPv4N10libmolgrid18CallbackIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::CallbackIndexTyper::set_names::names":[0,2,1,"_CPPv4N10libmolgrid18CallbackIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::CallbackIndexTyper::set_names::ntypes":[0,2,1,"_CPPv4N10libmolgrid18CallbackIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::CallbackIndexTyper::set_names::type_names":[0,2,1,"_CPPv4N10libmolgrid18CallbackIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::CallbackIndexTyper::type_names":[0,3,1,"_CPPv4N10libmolgrid18CallbackIndexTyper10type_namesE"],"libmolgrid::CallbackVectorTyper":[0,0,1,"_CPPv4N10libmolgrid19CallbackVectorTyperE"],"libmolgrid::CallbackVectorTyper::AtomVectorTyperFunc":[0,4,1,"_CPPv4N10libmolgrid19CallbackVectorTyper19AtomVectorTyperFuncE"],"libmolgrid::CallbackVectorTyper::CallbackVectorTyper":[0,1,1,"_CPPv4N10libmolgrid19CallbackVectorTyper19CallbackVectorTyperE19AtomVectorTyperFuncjRKNSt6vectorINSt6stringEEE"],"libmolgrid::CallbackVectorTyper::CallbackVectorTyper::f":[0,2,1,"_CPPv4N10libmolgrid19CallbackVectorTyper19CallbackVectorTyperE19AtomVectorTyperFuncjRKNSt6vectorINSt6stringEEE"],"libmolgrid::CallbackVectorTyper::CallbackVectorTyper::names":[0,2,1,"_CPPv4N10libmolgrid19CallbackVectorTyper19CallbackVectorTyperE19AtomVectorTyperFuncjRKNSt6vectorINSt6stringEEE"],"libmolgrid::CallbackVectorTyper::CallbackVectorTyper::ntypes":[0,2,1,"_CPPv4N10libmolgrid19CallbackVectorTyper19CallbackVectorTyperE19AtomVectorTyperFuncjRKNSt6vectorINSt6stringEEE"],"libmolgrid::CallbackVectorTyper::callback":[0,3,1,"_CPPv4N10libmolgrid19CallbackVectorTyper8callbackE"],"libmolgrid::CallbackVectorTyper::get_atom_type_index":[0,1,1,"_CPPv4NK10libmolgrid19CallbackVectorTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE"],"libmolgrid::CallbackVectorTyper::get_atom_type_index::a":[0,2,1,"_CPPv4NK10libmolgrid19CallbackVectorTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE"],"libmolgrid::CallbackVectorTyper::get_atom_type_vector":[0,1,1,"_CPPv4NK10libmolgrid19CallbackVectorTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::CallbackVectorTyper::get_atom_type_vector::a":[0,2,1,"_CPPv4NK10libmolgrid19CallbackVectorTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::CallbackVectorTyper::get_atom_type_vector::typ":[0,2,1,"_CPPv4NK10libmolgrid19CallbackVectorTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::CallbackVectorTyper::get_int_type":[0,1,1,"_CPPv4NK10libmolgrid19CallbackVectorTyper12get_int_typeEi"],"libmolgrid::CallbackVectorTyper::get_int_type::t":[0,2,1,"_CPPv4NK10libmolgrid19CallbackVectorTyper12get_int_typeEi"],"libmolgrid::CallbackVectorTyper::get_type_names":[0,1,1,"_CPPv4NK10libmolgrid19CallbackVectorTyper14get_type_namesEv"],"libmolgrid::CallbackVectorTyper::get_vector_type_radii":[0,1,1,"_CPPv4NK10libmolgrid19CallbackVectorTyper21get_vector_type_radiiEv"],"libmolgrid::CallbackVectorTyper::is_vector_typer":[0,1,1,"_CPPv4NK10libmolgrid19CallbackVectorTyper15is_vector_typerEv"],"libmolgrid::CallbackVectorTyper::num_types":[0,1,1,"_CPPv4NK10libmolgrid19CallbackVectorTyper9num_typesEv"],"libmolgrid::CallbackVectorTyper::type_names":[0,3,1,"_CPPv4N10libmolgrid19CallbackVectorTyper10type_namesE"],"libmolgrid::CartesianGrid":[0,0,1,"_CPPv4I0EN10libmolgrid13CartesianGridE"],"libmolgrid::CartesianGrid::CartesianGrid":[0,1,1,"_CPPv4N10libmolgrid13CartesianGrid13CartesianGridERK1G6float3f"],"libmolgrid::CartesianGrid::CartesianGrid::c":[0,2,1,"_CPPv4N10libmolgrid13CartesianGrid13CartesianGridERK1G6float3f"],"libmolgrid::CartesianGrid::CartesianGrid::g":[0,2,1,"_CPPv4N10libmolgrid13CartesianGrid13CartesianGridERK1G6float3f"],"libmolgrid::CartesianGrid::CartesianGrid::res":[0,2,1,"_CPPv4N10libmolgrid13CartesianGrid13CartesianGridERK1G6float3f"],"libmolgrid::CartesianGrid::G":[0,5,1,"_CPPv4I0EN10libmolgrid13CartesianGridE"],"libmolgrid::CartesianGrid::cart2grid":[0,1,1,"_CPPv4NK10libmolgrid13CartesianGrid9cart2gridEfff"],"libmolgrid::CartesianGrid::cart2grid::x":[0,2,1,"_CPPv4NK10libmolgrid13CartesianGrid9cart2gridEfff"],"libmolgrid::CartesianGrid::cart2grid::y":[0,2,1,"_CPPv4NK10libmolgrid13CartesianGrid9cart2gridEfff"],"libmolgrid::CartesianGrid::cart2grid::z":[0,2,1,"_CPPv4NK10libmolgrid13CartesianGrid9cart2gridEfff"],"libmolgrid::CartesianGrid::center":[0,1,1,"_CPPv4NK10libmolgrid13CartesianGrid6centerEv"],"libmolgrid::CartesianGrid::center_":[0,3,1,"_CPPv4N10libmolgrid13CartesianGrid7center_E"],"libmolgrid::CartesianGrid::dimensions":[0,3,1,"_CPPv4N10libmolgrid13CartesianGrid10dimensionsE"],"libmolgrid::CartesianGrid::grid":[0,1,1,"_CPPv4NK10libmolgrid13CartesianGrid4gridEv"],"libmolgrid::CartesianGrid::grid2cart":[0,1,1,"_CPPv4NK10libmolgrid13CartesianGrid9grid2cartEjjj"],"libmolgrid::CartesianGrid::grid2cart::i":[0,2,1,"_CPPv4NK10libmolgrid13CartesianGrid9grid2cartEjjj"],"libmolgrid::CartesianGrid::grid2cart::j":[0,2,1,"_CPPv4NK10libmolgrid13CartesianGrid9grid2cartEjjj"],"libmolgrid::CartesianGrid::grid2cart::k":[0,2,1,"_CPPv4NK10libmolgrid13CartesianGrid9grid2cartEjjj"],"libmolgrid::CartesianGrid::grid_":[0,3,1,"_CPPv4N10libmolgrid13CartesianGrid5grid_E"],"libmolgrid::CartesianGrid::interpolate":[0,1,1,"_CPPv4NK10libmolgrid13CartesianGrid11interpolateE6size_tfff"],"libmolgrid::CartesianGrid::interpolate::channel":[0,2,1,"_CPPv4NK10libmolgrid13CartesianGrid11interpolateE6size_tfff"],"libmolgrid::CartesianGrid::interpolate::x":[0,2,1,"_CPPv4NK10libmolgrid13CartesianGrid11interpolateE6size_tfff"],"libmolgrid::CartesianGrid::interpolate::y":[0,2,1,"_CPPv4NK10libmolgrid13CartesianGrid11interpolateE6size_tfff"],"libmolgrid::CartesianGrid::interpolate::z":[0,2,1,"_CPPv4NK10libmolgrid13CartesianGrid11interpolateE6size_tfff"],"libmolgrid::CartesianGrid::origin_":[0,3,1,"_CPPv4N10libmolgrid13CartesianGrid7origin_E"],"libmolgrid::CartesianGrid::resolution":[0,1,1,"_CPPv4NK10libmolgrid13CartesianGrid10resolutionEv"],"libmolgrid::CartesianGrid::resolution_":[0,3,1,"_CPPv4N10libmolgrid13CartesianGrid11resolution_E"],"libmolgrid::CartesianGrid::~CartesianGrid":[0,1,1,"_CPPv4N10libmolgrid13CartesianGridD0Ev"],"libmolgrid::CoordCache":[0,0,1,"_CPPv4N10libmolgrid10CoordCacheE"],"libmolgrid::CoordCache::CoordCache":[0,1,1,"_CPPv4N10libmolgrid10CoordCache10CoordCacheEv"],"libmolgrid::CoordCache::CoordCache::mc":[0,2,1,"_CPPv4N10libmolgrid10CoordCache10CoordCacheENSt10shared_ptrI9AtomTyperEERK23ExampleProviderSettingsRKNSt6stringE"],"libmolgrid::CoordCache::CoordCache::settings":[0,2,1,"_CPPv4N10libmolgrid10CoordCache10CoordCacheENSt10shared_ptrI9AtomTyperEERK23ExampleProviderSettingsRKNSt6stringE"],"libmolgrid::CoordCache::CoordCache::t":[0,2,1,"_CPPv4N10libmolgrid10CoordCache10CoordCacheENSt10shared_ptrI9AtomTyperEERK23ExampleProviderSettingsRKNSt6stringE"],"libmolgrid::CoordCache::MemCache":[0,4,1,"_CPPv4N10libmolgrid10CoordCache8MemCacheE"],"libmolgrid::CoordCache::addh":[0,3,1,"_CPPv4N10libmolgrid10CoordCache4addhE"],"libmolgrid::CoordCache::cache_map":[0,3,1,"_CPPv4N10libmolgrid10CoordCache9cache_mapE"],"libmolgrid::CoordCache::data_root":[0,3,1,"_CPPv4N10libmolgrid10CoordCache9data_rootE"],"libmolgrid::CoordCache::get_type_names":[0,1,1,"_CPPv4NK10libmolgrid10CoordCache14get_type_namesEv"],"libmolgrid::CoordCache::make_vector_types":[0,3,1,"_CPPv4N10libmolgrid10CoordCache17make_vector_typesE"],"libmolgrid::CoordCache::memcache":[0,3,1,"_CPPv4N10libmolgrid10CoordCache8memcacheE"],"libmolgrid::CoordCache::molcache":[0,3,1,"_CPPv4N10libmolgrid10CoordCache8molcacheE"],"libmolgrid::CoordCache::num_types":[0,1,1,"_CPPv4NK10libmolgrid10CoordCache9num_typesEv"],"libmolgrid::CoordCache::offsets":[0,3,1,"_CPPv4N10libmolgrid10CoordCache7offsetsE"],"libmolgrid::CoordCache::set_coords":[0,1,1,"_CPPv4N10libmolgrid10CoordCache10set_coordsEPKcR13CoordinateSet"],"libmolgrid::CoordCache::set_coords::coord":[0,2,1,"_CPPv4N10libmolgrid10CoordCache10set_coordsEPKcR13CoordinateSet"],"libmolgrid::CoordCache::set_coords::fname":[0,2,1,"_CPPv4N10libmolgrid10CoordCache10set_coordsEPKcR13CoordinateSet"],"libmolgrid::CoordCache::typer":[0,3,1,"_CPPv4N10libmolgrid10CoordCache5typerE"],"libmolgrid::CoordCache::use_cache":[0,3,1,"_CPPv4N10libmolgrid10CoordCache9use_cacheE"],"libmolgrid::CoordCache::~CoordCache":[0,1,1,"_CPPv4N10libmolgrid10CoordCacheD0Ev"],"libmolgrid::CoordinateSet":[0,0,1,"_CPPv4N10libmolgrid13CoordinateSetE"],"libmolgrid::CoordinateSet::CoordinateSet":[0,1,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetEv"],"libmolgrid::CoordinateSet::CoordinateSet::c":[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERKNSt6vectorI6float3EERKNSt6vectorIiEERKNSt6vectorIfEEj"],"libmolgrid::CoordinateSet::CoordinateSet::coords":[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERK6Grid2fRK6Grid1fRK6Grid1fj"],"libmolgrid::CoordinateSet::CoordinateSet::cr":[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERK6Grid2fRK6Grid2fRK6Grid1f"],"libmolgrid::CoordinateSet::CoordinateSet::lig":[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERK13CoordinateSetRK13CoordinateSetb"],"libmolgrid::CoordinateSet::CoordinateSet::maxt":[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERKNSt6vectorI6float3EERKNSt6vectorIiEERKNSt6vectorIfEEj"],"libmolgrid::CoordinateSet::CoordinateSet::mol":[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetEPN9OpenBabel5OBMolERK9AtomTyper"],"libmolgrid::CoordinateSet::CoordinateSet::r":[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERKNSt6vectorI6float3EERKNSt6vectorIiEERKNSt6vectorIfEEj"],"libmolgrid::CoordinateSet::CoordinateSet::radii":[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERK6Grid2fRK6Grid1fRK6Grid1fj"],"libmolgrid::CoordinateSet::CoordinateSet::rec":[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERK13CoordinateSetRK13CoordinateSetb"],"libmolgrid::CoordinateSet::CoordinateSet::t":[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERKNSt6vectorI6float3EERKNSt6vectorIiEERKNSt6vectorIfEEj"],"libmolgrid::CoordinateSet::CoordinateSet::typer":[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetEPN9OpenBabel5OBMolERK9AtomTyper"],"libmolgrid::CoordinateSet::CoordinateSet::unique_index_types":[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERK13CoordinateSetRK13CoordinateSetb"],"libmolgrid::CoordinateSet::center":[0,1,1,"_CPPv4NK10libmolgrid13CoordinateSet6centerEv"],"libmolgrid::CoordinateSet::clone":[0,1,1,"_CPPv4NK10libmolgrid13CoordinateSet5cloneEv"],"libmolgrid::CoordinateSet::coords":[0,3,1,"_CPPv4N10libmolgrid13CoordinateSet6coordsE"],"libmolgrid::CoordinateSet::copyInto":[0,1,1,"_CPPv4N10libmolgrid13CoordinateSet8copyIntoERK13CoordinateSet"],"libmolgrid::CoordinateSet::copyInto::src":[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet8copyIntoERK13CoordinateSet"],"libmolgrid::CoordinateSet::copyTo":[0,1,1,"_CPPv4I_bENK10libmolgrid13CoordinateSet6copyToE6size_tR4GridIfXL2EE6isCUDAER4GridIfXL2EE6isCUDAER4GridIfXL1EE6isCUDAE"],"libmolgrid::CoordinateSet::copyTo::c":[0,2,1,"_CPPv4I_bENK10libmolgrid13CoordinateSet6copyToE6size_tR4GridIfXL2EE6isCUDAER4GridIfXL2EE6isCUDAER4GridIfXL1EE6isCUDAE"],"libmolgrid::CoordinateSet::copyTo::isCUDA":[0,5,1,"_CPPv4I_bENK10libmolgrid13CoordinateSet6copyToE6size_tR4GridIfXL2EE6isCUDAER4GridIfXL2EE6isCUDAER4GridIfXL1EE6isCUDAE"],"libmolgrid::CoordinateSet::copyTo::r":[0,2,1,"_CPPv4I_bENK10libmolgrid13CoordinateSet6copyToE6size_tR4GridIfXL2EE6isCUDAER4GridIfXL2EE6isCUDAER4GridIfXL1EE6isCUDAE"],"libmolgrid::CoordinateSet::copyTo::t":[0,2,1,"_CPPv4I_bENK10libmolgrid13CoordinateSet6copyToE6size_tR4GridIfXL2EE6isCUDAER4GridIfXL2EE6isCUDAER4GridIfXL1EE6isCUDAE"],"libmolgrid::CoordinateSet::dump":[0,1,1,"_CPPv4NK10libmolgrid13CoordinateSet4dumpERNSt7ostreamE"],"libmolgrid::CoordinateSet::dump::out":[0,2,1,"_CPPv4NK10libmolgrid13CoordinateSet4dumpERNSt7ostreamE"],"libmolgrid::CoordinateSet::has_indexed_types":[0,1,1,"_CPPv4NK10libmolgrid13CoordinateSet17has_indexed_typesEv"],"libmolgrid::CoordinateSet::has_vector_types":[0,1,1,"_CPPv4NK10libmolgrid13CoordinateSet16has_vector_typesEv"],"libmolgrid::CoordinateSet::make_vector_types":[0,1,1,"_CPPv4N10libmolgrid13CoordinateSet17make_vector_typesEbRKNSt6vectorIfEE"],"libmolgrid::CoordinateSet::make_vector_types::include_dummy_type":[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet17make_vector_typesEbRKNSt6vectorIfEE"],"libmolgrid::CoordinateSet::make_vector_types::type_radii":[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet17make_vector_typesEbRKNSt6vectorIfEE"],"libmolgrid::CoordinateSet::max_type":[0,3,1,"_CPPv4N10libmolgrid13CoordinateSet8max_typeE"],"libmolgrid::CoordinateSet::mergeInto":[0,1,1,"_CPPv4N10libmolgrid13CoordinateSet9mergeIntoERK13CoordinateSetRK13CoordinateSetb"],"libmolgrid::CoordinateSet::mergeInto::lig":[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet9mergeIntoERK13CoordinateSetRK13CoordinateSetb"],"libmolgrid::CoordinateSet::mergeInto::rec":[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet9mergeIntoERK13CoordinateSetRK13CoordinateSetb"],"libmolgrid::CoordinateSet::mergeInto::unique_index_types":[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet9mergeIntoERK13CoordinateSetRK13CoordinateSetb"],"libmolgrid::CoordinateSet::num_types":[0,1,1,"_CPPv4NK10libmolgrid13CoordinateSet9num_typesEv"],"libmolgrid::CoordinateSet::operator==":[0,1,1,"_CPPv4NK10libmolgrid13CoordinateSeteqERK13CoordinateSet"],"libmolgrid::CoordinateSet::operator==::rhs":[0,2,1,"_CPPv4NK10libmolgrid13CoordinateSeteqERK13CoordinateSet"],"libmolgrid::CoordinateSet::radii":[0,3,1,"_CPPv4N10libmolgrid13CoordinateSet5radiiE"],"libmolgrid::CoordinateSet::set_num_types":[0,1,1,"_CPPv4N10libmolgrid13CoordinateSet13set_num_typesEj"],"libmolgrid::CoordinateSet::set_num_types::maxt":[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13set_num_typesEj"],"libmolgrid::CoordinateSet::size":[0,1,1,"_CPPv4NK10libmolgrid13CoordinateSet4sizeEv"],"libmolgrid::CoordinateSet::size_like":[0,1,1,"_CPPv4N10libmolgrid13CoordinateSet9size_likeERK13CoordinateSet"],"libmolgrid::CoordinateSet::size_like::s":[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet9size_likeERK13CoordinateSet"],"libmolgrid::CoordinateSet::src":[0,3,1,"_CPPv4N10libmolgrid13CoordinateSet3srcE"],"libmolgrid::CoordinateSet::sum_types":[0,1,1,"_CPPv4NK10libmolgrid13CoordinateSet9sum_typesER4GridIfXL1EEXL1EEEb"],"libmolgrid::CoordinateSet::sum_types::sum":[0,2,1,"_CPPv4NK10libmolgrid13CoordinateSet9sum_typesER4GridIfXL1EEXL1EEEb"],"libmolgrid::CoordinateSet::sum_types::zerofirst":[0,2,1,"_CPPv4NK10libmolgrid13CoordinateSet9sum_typesER4GridIfXL1EEXL1EEEb"],"libmolgrid::CoordinateSet::tocpu":[0,1,1,"_CPPv4N10libmolgrid13CoordinateSet5tocpuEb"],"libmolgrid::CoordinateSet::tocpu::copy":[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet5tocpuEb"],"libmolgrid::CoordinateSet::togpu":[0,1,1,"_CPPv4N10libmolgrid13CoordinateSet5togpuEb"],"libmolgrid::CoordinateSet::togpu::copy":[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet5togpuEb"],"libmolgrid::CoordinateSet::type_index":[0,3,1,"_CPPv4N10libmolgrid13CoordinateSet10type_indexE"],"libmolgrid::CoordinateSet::type_vector":[0,3,1,"_CPPv4N10libmolgrid13CoordinateSet11type_vectorE"],"libmolgrid::ElementIndexTyper":[0,0,1,"_CPPv4N10libmolgrid17ElementIndexTyperE"],"libmolgrid::ElementIndexTyper::ElementIndexTyper":[0,1,1,"_CPPv4N10libmolgrid17ElementIndexTyper17ElementIndexTyperEj"],"libmolgrid::ElementIndexTyper::ElementIndexTyper::maxe":[0,2,1,"_CPPv4N10libmolgrid17ElementIndexTyper17ElementIndexTyperEj"],"libmolgrid::ElementIndexTyper::default_radius":[0,3,1,"_CPPv4N10libmolgrid17ElementIndexTyper14default_radiusE"],"libmolgrid::ElementIndexTyper::get_atom_type_index":[0,1,1,"_CPPv4NK10libmolgrid17ElementIndexTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE"],"libmolgrid::ElementIndexTyper::get_atom_type_index::a":[0,2,1,"_CPPv4NK10libmolgrid17ElementIndexTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE"],"libmolgrid::ElementIndexTyper::get_atom_type_vector":[0,1,1,"_CPPv4NK10libmolgrid17ElementIndexTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::ElementIndexTyper::get_atom_type_vector::a":[0,2,1,"_CPPv4NK10libmolgrid17ElementIndexTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::ElementIndexTyper::get_atom_type_vector::typ":[0,2,1,"_CPPv4NK10libmolgrid17ElementIndexTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::ElementIndexTyper::get_int_type":[0,1,1,"_CPPv4NK10libmolgrid17ElementIndexTyper12get_int_typeEi"],"libmolgrid::ElementIndexTyper::get_int_type::t":[0,2,1,"_CPPv4NK10libmolgrid17ElementIndexTyper12get_int_typeEi"],"libmolgrid::ElementIndexTyper::get_type_names":[0,1,1,"_CPPv4NK10libmolgrid17ElementIndexTyper14get_type_namesEv"],"libmolgrid::ElementIndexTyper::get_type_radii":[0,1,1,"_CPPv4NK10libmolgrid17ElementIndexTyper14get_type_radiiEv"],"libmolgrid::ElementIndexTyper::is_vector_typer":[0,1,1,"_CPPv4NK10libmolgrid17ElementIndexTyper15is_vector_typerEv"],"libmolgrid::ElementIndexTyper::last_elem":[0,3,1,"_CPPv4N10libmolgrid17ElementIndexTyper9last_elemE"],"libmolgrid::ElementIndexTyper::num_types":[0,1,1,"_CPPv4NK10libmolgrid17ElementIndexTyper9num_typesEv"],"libmolgrid::ElementIndexTyper::set_names":[0,1,1,"_CPPv4N10libmolgrid17ElementIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::ElementIndexTyper::set_names::names":[0,2,1,"_CPPv4N10libmolgrid17ElementIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::ElementIndexTyper::set_names::ntypes":[0,2,1,"_CPPv4N10libmolgrid17ElementIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::ElementIndexTyper::set_names::type_names":[0,2,1,"_CPPv4N10libmolgrid17ElementIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::ElementIndexTyper::~ElementIndexTyper":[0,1,1,"_CPPv4N10libmolgrid17ElementIndexTyperD0Ev"],"libmolgrid::Example":[0,0,1,"_CPPv4N10libmolgrid7ExampleE"],"libmolgrid::Example::extract_label":[0,1,1,"_CPPv4I_bEN10libmolgrid7Example13extract_labelEvRKNSt6vectorI7ExampleEEjR4GridIfXL1EE6isCUDAE"],"libmolgrid::Example::extract_label::examples":[0,2,1,"_CPPv4I_bEN10libmolgrid7Example13extract_labelEvRKNSt6vectorI7ExampleEEjR4GridIfXL1EE6isCUDAE"],"libmolgrid::Example::extract_label::isCUDA":[0,5,1,"_CPPv4I_bEN10libmolgrid7Example13extract_labelEvRKNSt6vectorI7ExampleEEjR4GridIfXL1EE6isCUDAE"],"libmolgrid::Example::extract_label::labelpos":[0,2,1,"_CPPv4I_bEN10libmolgrid7Example13extract_labelEvRKNSt6vectorI7ExampleEEjR4GridIfXL1EE6isCUDAE"],"libmolgrid::Example::extract_label::out":[0,2,1,"_CPPv4I_bEN10libmolgrid7Example13extract_labelEvRKNSt6vectorI7ExampleEEjR4GridIfXL1EE6isCUDAE"],"libmolgrid::Example::extract_labels":[0,1,1,"_CPPv4I_bEN10libmolgrid7Example14extract_labelsEvRKNSt6vectorI7ExampleEER4GridIfXL2EE6isCUDAE"],"libmolgrid::Example::extract_labels::examples":[0,2,1,"_CPPv4I_bEN10libmolgrid7Example14extract_labelsEvRKNSt6vectorI7ExampleEER4GridIfXL2EE6isCUDAE"],"libmolgrid::Example::extract_labels::isCUDA":[0,5,1,"_CPPv4I_bEN10libmolgrid7Example14extract_labelsEvRKNSt6vectorI7ExampleEER4GridIfXL2EE6isCUDAE"],"libmolgrid::Example::extract_labels::out":[0,2,1,"_CPPv4I_bEN10libmolgrid7Example14extract_labelsEvRKNSt6vectorI7ExampleEER4GridIfXL2EE6isCUDAE"],"libmolgrid::Example::group":[0,3,1,"_CPPv4N10libmolgrid7Example5groupE"],"libmolgrid::Example::has_index_types":[0,1,1,"_CPPv4NK10libmolgrid7Example15has_index_typesEj"],"libmolgrid::Example::has_index_types::start":[0,2,1,"_CPPv4NK10libmolgrid7Example15has_index_typesEj"],"libmolgrid::Example::has_vector_types":[0,1,1,"_CPPv4NK10libmolgrid7Example16has_vector_typesEj"],"libmolgrid::Example::has_vector_types::start":[0,2,1,"_CPPv4NK10libmolgrid7Example16has_vector_typesEj"],"libmolgrid::Example::labels":[0,3,1,"_CPPv4N10libmolgrid7Example6labelsE"],"libmolgrid::Example::make_vector_types":[0,1,1,"_CPPv4N10libmolgrid7Example17make_vector_typesEv"],"libmolgrid::Example::merge_coordinates":[0,1,1,"_CPPv4NK10libmolgrid7Example17merge_coordinatesEjb"],"libmolgrid::Example::merge_coordinates::coords":[0,2,1,"_CPPv4NK10libmolgrid7Example17merge_coordinatesERNSt6vectorI6float3EERNSt6vectorIfEERNSt6vectorIfEEjb"],"libmolgrid::Example::merge_coordinates::radii":[0,2,1,"_CPPv4NK10libmolgrid7Example17merge_coordinatesERNSt6vectorI6float3EERNSt6vectorIfEERNSt6vectorIfEEjb"],"libmolgrid::Example::merge_coordinates::start":[0,2,1,"_CPPv4NK10libmolgrid7Example17merge_coordinatesEjb"],"libmolgrid::Example::merge_coordinates::type_index":[0,2,1,"_CPPv4NK10libmolgrid7Example17merge_coordinatesERNSt6vectorI6float3EERNSt6vectorIfEERNSt6vectorIfEEjb"],"libmolgrid::Example::merge_coordinates::type_vector":[0,2,1,"_CPPv4NK10libmolgrid7Example17merge_coordinatesERNSt6vectorI6float3EERNSt6vectorINSt6vectorIfEEEERNSt6vectorIfEEjb"],"libmolgrid::Example::merge_coordinates::unique_index_types":[0,2,1,"_CPPv4NK10libmolgrid7Example17merge_coordinatesEjb"],"libmolgrid::Example::num_coordinates":[0,1,1,"_CPPv4NK10libmolgrid7Example15num_coordinatesEv"],"libmolgrid::Example::num_types":[0,1,1,"_CPPv4NK10libmolgrid7Example9num_typesEb"],"libmolgrid::Example::num_types::unique_index_types":[0,2,1,"_CPPv4NK10libmolgrid7Example9num_typesEb"],"libmolgrid::Example::operator==":[0,1,1,"_CPPv4NK10libmolgrid7ExampleeqERK7Example"],"libmolgrid::Example::operator==::rhs":[0,2,1,"_CPPv4NK10libmolgrid7ExampleeqERK7Example"],"libmolgrid::Example::seqcont":[0,3,1,"_CPPv4N10libmolgrid7Example7seqcontE"],"libmolgrid::Example::sets":[0,3,1,"_CPPv4N10libmolgrid7Example4setsE"],"libmolgrid::Example::sum_types":[0,1,1,"_CPPv4I_bENK10libmolgrid7Example9sum_typesEvR4GridIfXL1EE6isCUDAEb"],"libmolgrid::Example::sum_types::isCUDA":[0,5,1,"_CPPv4I_bENK10libmolgrid7Example9sum_typesEvR4GridIfXL1EE6isCUDAEb"],"libmolgrid::Example::sum_types::sum":[0,2,1,"_CPPv4I_bENK10libmolgrid7Example9sum_typesEvR4GridIfXL1EE6isCUDAEb"],"libmolgrid::Example::sum_types::unique_types":[0,2,1,"_CPPv4I_bENK10libmolgrid7Example9sum_typesEvR4GridIfXL1EE6isCUDAEb"],"libmolgrid::Example::tocpu":[0,1,1,"_CPPv4N10libmolgrid7Example5tocpuEv"],"libmolgrid::Example::togpu":[0,1,1,"_CPPv4N10libmolgrid7Example5togpuEv"],"libmolgrid::ExampleExtractor":[0,0,1,"_CPPv4N10libmolgrid16ExampleExtractorE"],"libmolgrid::ExampleExtractor::ExampleExtractor":[0,1,1,"_CPPv4N10libmolgrid16ExampleExtractor16ExampleExtractorERK23ExampleProviderSettingsRKNSt6vectorINSt10shared_ptrI9AtomTyperEEEENSt6vectorINSt6stringEEE"],"libmolgrid::ExampleExtractor::ExampleExtractor::molcaches":[0,2,1,"_CPPv4N10libmolgrid16ExampleExtractor16ExampleExtractorERK23ExampleProviderSettingsRKNSt6vectorINSt10shared_ptrI9AtomTyperEEEENSt6vectorINSt6stringEEE"],"libmolgrid::ExampleExtractor::ExampleExtractor::settings":[0,2,1,"_CPPv4N10libmolgrid16ExampleExtractor16ExampleExtractorERK23ExampleProviderSettingsRKNSt6vectorINSt10shared_ptrI9AtomTyperEEEENSt6vectorINSt6stringEEE"],"libmolgrid::ExampleExtractor::ExampleExtractor::t":[0,2,1,"_CPPv4N10libmolgrid16ExampleExtractor16ExampleExtractorERK23ExampleProviderSettingsNSt10shared_ptrI9AtomTyperEE"],"libmolgrid::ExampleExtractor::ExampleExtractor::t1":[0,2,1,"_CPPv4N10libmolgrid16ExampleExtractor16ExampleExtractorERK23ExampleProviderSettingsNSt10shared_ptrI9AtomTyperEENSt10shared_ptrI9AtomTyperEE"],"libmolgrid::ExampleExtractor::ExampleExtractor::t2":[0,2,1,"_CPPv4N10libmolgrid16ExampleExtractor16ExampleExtractorERK23ExampleProviderSettingsNSt10shared_ptrI9AtomTyperEENSt10shared_ptrI9AtomTyperEE"],"libmolgrid::ExampleExtractor::ExampleExtractor::typrs":[0,2,1,"_CPPv4N10libmolgrid16ExampleExtractor16ExampleExtractorERK23ExampleProviderSettingsRKNSt6vectorINSt10shared_ptrI9AtomTyperEEEENSt6vectorINSt6stringEEE"],"libmolgrid::ExampleExtractor::coord_caches":[0,3,1,"_CPPv4N10libmolgrid16ExampleExtractor12coord_cachesE"],"libmolgrid::ExampleExtractor::count_types":[0,1,1,"_CPPv4NK10libmolgrid16ExampleExtractor11count_typesEj"],"libmolgrid::ExampleExtractor::count_types::n":[0,2,1,"_CPPv4NK10libmolgrid16ExampleExtractor11count_typesEj"],"libmolgrid::ExampleExtractor::duplicate_poses":[0,3,1,"_CPPv4N10libmolgrid16ExampleExtractor15duplicate_posesE"],"libmolgrid::ExampleExtractor::extract":[0,1,1,"_CPPv4N10libmolgrid16ExampleExtractor7extractERK10ExampleRefR7Example"],"libmolgrid::ExampleExtractor::extract::ex":[0,2,1,"_CPPv4N10libmolgrid16ExampleExtractor7extractERK10ExampleRefR7Example"],"libmolgrid::ExampleExtractor::extract::ref":[0,2,1,"_CPPv4N10libmolgrid16ExampleExtractor7extractERK10ExampleRefR7Example"],"libmolgrid::ExampleExtractor::get_type_names":[0,1,1,"_CPPv4NK10libmolgrid16ExampleExtractor14get_type_namesEv"],"libmolgrid::ExampleExtractor::num_types":[0,1,1,"_CPPv4NK10libmolgrid16ExampleExtractor9num_typesEv"],"libmolgrid::ExampleExtractor::num_types::ref":[0,2,1,"_CPPv4NK10libmolgrid16ExampleExtractor9num_typesERK10ExampleRef"],"libmolgrid::ExampleExtractor::~ExampleExtractor":[0,1,1,"_CPPv4N10libmolgrid16ExampleExtractorD0Ev"],"libmolgrid::ExampleProvider":[0,0,1,"_CPPv4N10libmolgrid15ExampleProviderE"],"libmolgrid::ExampleProvider::ExampleProvider":[0,1,1,"_CPPv4N10libmolgrid15ExampleProvider15ExampleProviderERK23ExampleProviderSettingsRKNSt6vectorINSt10shared_ptrI9AtomTyperEEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::ExampleProvider::ExampleProvider::e":[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider15ExampleProviderENSt10shared_ptrI18ExampleRefProviderEERK16ExampleExtractor"],"libmolgrid::ExampleProvider::ExampleProvider::molcaches":[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider15ExampleProviderERK23ExampleProviderSettingsRKNSt6vectorINSt10shared_ptrI9AtomTyperEEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::ExampleProvider::ExampleProvider::p":[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider15ExampleProviderENSt10shared_ptrI18ExampleRefProviderEERK16ExampleExtractor"],"libmolgrid::ExampleProvider::ExampleProvider::settings":[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider15ExampleProviderERK23ExampleProviderSettingsRKNSt6vectorINSt10shared_ptrI9AtomTyperEEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::ExampleProvider::ExampleProvider::t":[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider15ExampleProviderERK23ExampleProviderSettingsNSt10shared_ptrI9AtomTyperEE"],"libmolgrid::ExampleProvider::ExampleProvider::t1":[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider15ExampleProviderERK23ExampleProviderSettingsNSt10shared_ptrI9AtomTyperEENSt10shared_ptrI9AtomTyperEE"],"libmolgrid::ExampleProvider::ExampleProvider::t2":[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider15ExampleProviderERK23ExampleProviderSettingsNSt10shared_ptrI9AtomTyperEENSt10shared_ptrI9AtomTyperEE"],"libmolgrid::ExampleProvider::ExampleProvider::typrs":[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider15ExampleProviderERK23ExampleProviderSettingsRKNSt6vectorINSt10shared_ptrI9AtomTyperEEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::ExampleProvider::at_new_epoch":[0,1,1,"_CPPv4N10libmolgrid15ExampleProvider12at_new_epochEv"],"libmolgrid::ExampleProvider::createProvider":[0,1,1,"_CPPv4N10libmolgrid15ExampleProvider14createProviderERK23ExampleProviderSettings"],"libmolgrid::ExampleProvider::createProvider::settings":[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider14createProviderERK23ExampleProviderSettings"],"libmolgrid::ExampleProvider::extractor":[0,3,1,"_CPPv4N10libmolgrid15ExampleProvider9extractorE"],"libmolgrid::ExampleProvider::get_extractor":[0,1,1,"_CPPv4N10libmolgrid15ExampleProvider13get_extractorEv"],"libmolgrid::ExampleProvider::get_large_epoch_num":[0,1,1,"_CPPv4NK10libmolgrid15ExampleProvider19get_large_epoch_numEv"],"libmolgrid::ExampleProvider::get_provider":[0,1,1,"_CPPv4N10libmolgrid15ExampleProvider12get_providerEv"],"libmolgrid::ExampleProvider::get_small_epoch_num":[0,1,1,"_CPPv4NK10libmolgrid15ExampleProvider19get_small_epoch_numEv"],"libmolgrid::ExampleProvider::get_type_names":[0,1,1,"_CPPv4NK10libmolgrid15ExampleProvider14get_type_namesEv"],"libmolgrid::ExampleProvider::init_settings":[0,3,1,"_CPPv4N10libmolgrid15ExampleProvider13init_settingsE"],"libmolgrid::ExampleProvider::large_epoch_size":[0,1,1,"_CPPv4NK10libmolgrid15ExampleProvider16large_epoch_sizeEv"],"libmolgrid::ExampleProvider::last_epoch":[0,3,1,"_CPPv4N10libmolgrid15ExampleProvider10last_epochE"],"libmolgrid::ExampleProvider::next":[0,1,1,"_CPPv4N10libmolgrid15ExampleProvider4nextEv"],"libmolgrid::ExampleProvider::next::ex":[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider4nextER7Example"],"libmolgrid::ExampleProvider::next_batch":[0,1,1,"_CPPv4N10libmolgrid15ExampleProvider10next_batchEj"],"libmolgrid::ExampleProvider::next_batch::batch_size":[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider10next_batchEj"],"libmolgrid::ExampleProvider::next_batch::ex":[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider10next_batchERNSt6vectorI7ExampleEEj"],"libmolgrid::ExampleProvider::num_labels":[0,1,1,"_CPPv4NK10libmolgrid15ExampleProvider10num_labelsEv"],"libmolgrid::ExampleProvider::num_types":[0,1,1,"_CPPv4NK10libmolgrid15ExampleProvider9num_typesEv"],"libmolgrid::ExampleProvider::populate":[0,1,1,"_CPPv4N10libmolgrid15ExampleProvider8populateERKNSt6vectorINSt6stringEEEi"],"libmolgrid::ExampleProvider::populate::fname":[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider8populateERKNSt6stringEi"],"libmolgrid::ExampleProvider::populate::fnames":[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider8populateERKNSt6vectorINSt6stringEEEi"],"libmolgrid::ExampleProvider::populate::num_labels":[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider8populateERKNSt6vectorINSt6stringEEEi"],"libmolgrid::ExampleProvider::provider":[0,3,1,"_CPPv4N10libmolgrid15ExampleProvider8providerE"],"libmolgrid::ExampleProvider::reset":[0,1,1,"_CPPv4N10libmolgrid15ExampleProvider5resetEv"],"libmolgrid::ExampleProvider::settings":[0,1,1,"_CPPv4NK10libmolgrid15ExampleProvider8settingsEv"],"libmolgrid::ExampleProvider::size":[0,1,1,"_CPPv4NK10libmolgrid15ExampleProvider4sizeEv"],"libmolgrid::ExampleProvider::skip":[0,1,1,"_CPPv4N10libmolgrid15ExampleProvider4skipEj"],"libmolgrid::ExampleProvider::skip::n":[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider4skipEj"],"libmolgrid::ExampleProvider::small_epoch_size":[0,1,1,"_CPPv4NK10libmolgrid15ExampleProvider16small_epoch_sizeEv"],"libmolgrid::ExampleProvider::~ExampleProvider":[0,1,1,"_CPPv4N10libmolgrid15ExampleProviderD0Ev"],"libmolgrid::ExampleProviderSettings":[0,0,1,"_CPPv4N10libmolgrid23ExampleProviderSettingsE"],"libmolgrid::ExampleRef":[0,0,1,"_CPPv4N10libmolgrid10ExampleRefE"],"libmolgrid::ExampleRef::ExampleRef":[0,1,1,"_CPPv4N10libmolgrid10ExampleRef10ExampleRefEv"],"libmolgrid::ExampleRef::ExampleRef::hasgroup":[0,2,1,"_CPPv4N10libmolgrid10ExampleRef10ExampleRefERKNSt6stringEib"],"libmolgrid::ExampleRef::ExampleRef::line":[0,2,1,"_CPPv4N10libmolgrid10ExampleRef10ExampleRefERKNSt6stringEib"],"libmolgrid::ExampleRef::ExampleRef::numlabels":[0,2,1,"_CPPv4N10libmolgrid10ExampleRef10ExampleRefERKNSt6stringEib"],"libmolgrid::ExampleRef::files":[0,3,1,"_CPPv4N10libmolgrid10ExampleRef5filesE"],"libmolgrid::ExampleRef::group":[0,3,1,"_CPPv4N10libmolgrid10ExampleRef5groupE"],"libmolgrid::ExampleRef::labels":[0,3,1,"_CPPv4N10libmolgrid10ExampleRef6labelsE"],"libmolgrid::ExampleRef::seqcont":[0,3,1,"_CPPv4N10libmolgrid10ExampleRef7seqcontE"],"libmolgrid::ExampleRefProvider":[0,0,1,"_CPPv4N10libmolgrid18ExampleRefProviderE"],"libmolgrid::ExampleRefProvider::ExampleRefProvider":[0,1,1,"_CPPv4N10libmolgrid18ExampleRefProvider18ExampleRefProviderEv"],"libmolgrid::ExampleRefProvider::ExampleRefProvider::settings":[0,2,1,"_CPPv4N10libmolgrid18ExampleRefProvider18ExampleRefProviderERK23ExampleProviderSettings"],"libmolgrid::ExampleRefProvider::addref":[0,1,1,"_CPPv4N10libmolgrid18ExampleRefProvider6addrefERK10ExampleRef"],"libmolgrid::ExampleRefProvider::addref::ex":[0,2,1,"_CPPv4N10libmolgrid18ExampleRefProvider6addrefERK10ExampleRef"],"libmolgrid::ExampleRefProvider::check_batch_size":[0,1,1,"_CPPv4NK10libmolgrid18ExampleRefProvider16check_batch_sizeEj"],"libmolgrid::ExampleRefProvider::check_batch_size::bsize":[0,2,1,"_CPPv4NK10libmolgrid18ExampleRefProvider16check_batch_sizeEj"],"libmolgrid::ExampleRefProvider::get_large_epoch_num":[0,1,1,"_CPPv4NK10libmolgrid18ExampleRefProvider19get_large_epoch_numEv"],"libmolgrid::ExampleRefProvider::get_small_epoch_num":[0,1,1,"_CPPv4NK10libmolgrid18ExampleRefProvider19get_small_epoch_numEv"],"libmolgrid::ExampleRefProvider::has_group":[0,1,1,"_CPPv4NK10libmolgrid18ExampleRefProvider9has_groupEv"],"libmolgrid::ExampleRefProvider::large_epoch_size":[0,1,1,"_CPPv4NK10libmolgrid18ExampleRefProvider16large_epoch_sizeEv"],"libmolgrid::ExampleRefProvider::nextref":[0,1,1,"_CPPv4N10libmolgrid18ExampleRefProvider7nextrefER10ExampleRef"],"libmolgrid::ExampleRefProvider::nextref::ex":[0,2,1,"_CPPv4N10libmolgrid18ExampleRefProvider7nextrefER10ExampleRef"],"libmolgrid::ExampleRefProvider::num_labels":[0,1,1,"_CPPv4NK10libmolgrid18ExampleRefProvider10num_labelsEv"],"libmolgrid::ExampleRefProvider::populate":[0,1,1,"_CPPv4N10libmolgrid18ExampleRefProvider8populateERNSt7istreamEi"],"libmolgrid::ExampleRefProvider::populate::lines":[0,2,1,"_CPPv4N10libmolgrid18ExampleRefProvider8populateERNSt7istreamEi"],"libmolgrid::ExampleRefProvider::populate::numlabels":[0,2,1,"_CPPv4N10libmolgrid18ExampleRefProvider8populateERNSt7istreamEi"],"libmolgrid::ExampleRefProvider::reset":[0,1,1,"_CPPv4N10libmolgrid18ExampleRefProvider5resetEv"],"libmolgrid::ExampleRefProvider::setup":[0,1,1,"_CPPv4N10libmolgrid18ExampleRefProvider5setupEv"],"libmolgrid::ExampleRefProvider::size":[0,1,1,"_CPPv4NK10libmolgrid18ExampleRefProvider4sizeEv"],"libmolgrid::ExampleRefProvider::small_epoch_size":[0,1,1,"_CPPv4NK10libmolgrid18ExampleRefProvider16small_epoch_sizeEv"],"libmolgrid::ExampleRefProvider::~ExampleRefProvider":[0,1,1,"_CPPv4N10libmolgrid18ExampleRefProviderD0Ev"],"libmolgrid::FileAtomMapper":[0,0,1,"_CPPv4N10libmolgrid14FileAtomMapperE"],"libmolgrid::FileAtomMapper::FileAtomMapper":[0,1,1,"_CPPv4N10libmolgrid14FileAtomMapper14FileAtomMapperERNSt7istreamERKNSt6vectorINSt6stringEEE"],"libmolgrid::FileAtomMapper::FileAtomMapper::fname":[0,2,1,"_CPPv4N10libmolgrid14FileAtomMapper14FileAtomMapperERKNSt6stringERKNSt6vectorINSt6stringEEE"],"libmolgrid::FileAtomMapper::FileAtomMapper::in":[0,2,1,"_CPPv4N10libmolgrid14FileAtomMapper14FileAtomMapperERNSt7istreamERKNSt6vectorINSt6stringEEE"],"libmolgrid::FileAtomMapper::FileAtomMapper::type_names":[0,2,1,"_CPPv4N10libmolgrid14FileAtomMapper14FileAtomMapperERNSt7istreamERKNSt6vectorINSt6stringEEE"],"libmolgrid::FileAtomMapper::get_new_type":[0,1,1,"_CPPv4NK10libmolgrid14FileAtomMapper12get_new_typeEj"],"libmolgrid::FileAtomMapper::get_new_type::origt":[0,2,1,"_CPPv4NK10libmolgrid14FileAtomMapper12get_new_typeEj"],"libmolgrid::FileAtomMapper::get_type_names":[0,1,1,"_CPPv4NK10libmolgrid14FileAtomMapper14get_type_namesEv"],"libmolgrid::FileAtomMapper::new_type_names":[0,3,1,"_CPPv4N10libmolgrid14FileAtomMapper14new_type_namesE"],"libmolgrid::FileAtomMapper::num_types":[0,1,1,"_CPPv4NK10libmolgrid14FileAtomMapper9num_typesEv"],"libmolgrid::FileAtomMapper::old_type_names":[0,3,1,"_CPPv4N10libmolgrid14FileAtomMapper14old_type_namesE"],"libmolgrid::FileAtomMapper::old_type_to_new_type":[0,3,1,"_CPPv4N10libmolgrid14FileAtomMapper20old_type_to_new_typeE"],"libmolgrid::FileAtomMapper::setup":[0,1,1,"_CPPv4N10libmolgrid14FileAtomMapper5setupERNSt7istreamE"],"libmolgrid::FileAtomMapper::setup::in":[0,2,1,"_CPPv4N10libmolgrid14FileAtomMapper5setupERNSt7istreamE"],"libmolgrid::FileAtomMapper::~FileAtomMapper":[0,1,1,"_CPPv4N10libmolgrid14FileAtomMapperD0Ev"],"libmolgrid::FileMappedElementTyper":[0,0,1,"_CPPv4N10libmolgrid22FileMappedElementTyperE"],"libmolgrid::FileMappedElementTyper::FileMappedElementTyper":[0,1,1,"_CPPv4N10libmolgrid22FileMappedElementTyper22FileMappedElementTyperERNSt7istreamEj"],"libmolgrid::FileMappedElementTyper::FileMappedElementTyper::etyper":[0,2,1,"_CPPv4N10libmolgrid22FileMappedElementTyper22FileMappedElementTyperERK17ElementIndexTyperRNSt7istreamE"],"libmolgrid::FileMappedElementTyper::FileMappedElementTyper::fname":[0,2,1,"_CPPv4N10libmolgrid22FileMappedElementTyper22FileMappedElementTyperERKNSt6stringEj"],"libmolgrid::FileMappedElementTyper::FileMappedElementTyper::i":[0,2,1,"_CPPv4N10libmolgrid22FileMappedElementTyper22FileMappedElementTyperERNSt7istreamEj"],"libmolgrid::FileMappedElementTyper::FileMappedElementTyper::maxe":[0,2,1,"_CPPv4N10libmolgrid22FileMappedElementTyper22FileMappedElementTyperERNSt7istreamEj"],"libmolgrid::FileMappedElementTyper::get_atom_type_index":[0,1,1,"_CPPv4NK10libmolgrid22FileMappedElementTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE"],"libmolgrid::FileMappedElementTyper::get_atom_type_index::a":[0,2,1,"_CPPv4NK10libmolgrid22FileMappedElementTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE"],"libmolgrid::FileMappedElementTyper::get_atom_type_vector":[0,1,1,"_CPPv4NK10libmolgrid22FileMappedElementTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::FileMappedElementTyper::get_atom_type_vector::a":[0,2,1,"_CPPv4NK10libmolgrid22FileMappedElementTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::FileMappedElementTyper::get_atom_type_vector::typ":[0,2,1,"_CPPv4NK10libmolgrid22FileMappedElementTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::FileMappedElementTyper::get_int_type":[0,1,1,"_CPPv4NK10libmolgrid22FileMappedElementTyper12get_int_typeEi"],"libmolgrid::FileMappedElementTyper::get_int_type::t":[0,2,1,"_CPPv4NK10libmolgrid22FileMappedElementTyper12get_int_typeEi"],"libmolgrid::FileMappedElementTyper::get_type_names":[0,1,1,"_CPPv4NK10libmolgrid22FileMappedElementTyper14get_type_namesEv"],"libmolgrid::FileMappedElementTyper::get_type_radii":[0,1,1,"_CPPv4NK10libmolgrid22FileMappedElementTyper14get_type_radiiEv"],"libmolgrid::FileMappedElementTyper::is_vector_typer":[0,1,1,"_CPPv4NK10libmolgrid22FileMappedElementTyper15is_vector_typerEv"],"libmolgrid::FileMappedElementTyper::num_types":[0,1,1,"_CPPv4NK10libmolgrid22FileMappedElementTyper9num_typesEv"],"libmolgrid::FileMappedElementTyper::set_names":[0,1,1,"_CPPv4N10libmolgrid22FileMappedElementTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::FileMappedElementTyper::set_names::names":[0,2,1,"_CPPv4N10libmolgrid22FileMappedElementTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::FileMappedElementTyper::set_names::ntypes":[0,2,1,"_CPPv4N10libmolgrid22FileMappedElementTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::FileMappedElementTyper::set_names::type_names":[0,2,1,"_CPPv4N10libmolgrid22FileMappedElementTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::FileMappedGninaTyper":[0,0,1,"_CPPv4N10libmolgrid20FileMappedGninaTyperE"],"libmolgrid::FileMappedGninaTyper::FileMappedGninaTyper":[0,1,1,"_CPPv4N10libmolgrid20FileMappedGninaTyper20FileMappedGninaTyperERNSt7istreamEb"],"libmolgrid::FileMappedGninaTyper::FileMappedGninaTyper::etyper":[0,2,1,"_CPPv4N10libmolgrid20FileMappedGninaTyper20FileMappedGninaTyperERK15GninaIndexTyperRNSt7istreamE"],"libmolgrid::FileMappedGninaTyper::FileMappedGninaTyper::fname":[0,2,1,"_CPPv4N10libmolgrid20FileMappedGninaTyper20FileMappedGninaTyperERKNSt6stringEb"],"libmolgrid::FileMappedGninaTyper::FileMappedGninaTyper::i":[0,2,1,"_CPPv4N10libmolgrid20FileMappedGninaTyper20FileMappedGninaTyperERNSt7istreamEb"],"libmolgrid::FileMappedGninaTyper::FileMappedGninaTyper::usec":[0,2,1,"_CPPv4N10libmolgrid20FileMappedGninaTyper20FileMappedGninaTyperERNSt7istreamEb"],"libmolgrid::FileMappedGninaTyper::get_atom_type_index":[0,1,1,"_CPPv4NK10libmolgrid20FileMappedGninaTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE"],"libmolgrid::FileMappedGninaTyper::get_atom_type_index::a":[0,2,1,"_CPPv4NK10libmolgrid20FileMappedGninaTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE"],"libmolgrid::FileMappedGninaTyper::get_atom_type_vector":[0,1,1,"_CPPv4NK10libmolgrid20FileMappedGninaTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::FileMappedGninaTyper::get_atom_type_vector::a":[0,2,1,"_CPPv4NK10libmolgrid20FileMappedGninaTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::FileMappedGninaTyper::get_atom_type_vector::typ":[0,2,1,"_CPPv4NK10libmolgrid20FileMappedGninaTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::FileMappedGninaTyper::get_int_type":[0,1,1,"_CPPv4NK10libmolgrid20FileMappedGninaTyper12get_int_typeEi"],"libmolgrid::FileMappedGninaTyper::get_int_type::t":[0,2,1,"_CPPv4NK10libmolgrid20FileMappedGninaTyper12get_int_typeEi"],"libmolgrid::FileMappedGninaTyper::get_type_names":[0,1,1,"_CPPv4NK10libmolgrid20FileMappedGninaTyper14get_type_namesEv"],"libmolgrid::FileMappedGninaTyper::get_type_radii":[0,1,1,"_CPPv4NK10libmolgrid20FileMappedGninaTyper14get_type_radiiEv"],"libmolgrid::FileMappedGninaTyper::is_vector_typer":[0,1,1,"_CPPv4NK10libmolgrid20FileMappedGninaTyper15is_vector_typerEv"],"libmolgrid::FileMappedGninaTyper::num_types":[0,1,1,"_CPPv4NK10libmolgrid20FileMappedGninaTyper9num_typesEv"],"libmolgrid::FileMappedGninaTyper::set_names":[0,1,1,"_CPPv4N10libmolgrid20FileMappedGninaTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::FileMappedGninaTyper::set_names::names":[0,2,1,"_CPPv4N10libmolgrid20FileMappedGninaTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::FileMappedGninaTyper::set_names::ntypes":[0,2,1,"_CPPv4N10libmolgrid20FileMappedGninaTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::FileMappedGninaTyper::set_names::type_names":[0,2,1,"_CPPv4N10libmolgrid20FileMappedGninaTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::GninaIndexTyper":[0,0,1,"_CPPv4N10libmolgrid15GninaIndexTyperE"],"libmolgrid::GninaIndexTyper::GninaIndexTyper":[0,1,1,"_CPPv4N10libmolgrid15GninaIndexTyper15GninaIndexTyperEbPK4info"],"libmolgrid::GninaIndexTyper::GninaIndexTyper::d":[0,2,1,"_CPPv4N10libmolgrid15GninaIndexTyper15GninaIndexTyperEbPK4info"],"libmolgrid::GninaIndexTyper::GninaIndexTyper::usec":[0,2,1,"_CPPv4N10libmolgrid15GninaIndexTyper15GninaIndexTyperEbPK4info"],"libmolgrid::GninaIndexTyper::data":[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4dataE"],"libmolgrid::GninaIndexTyper::default_data":[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper12default_dataE"],"libmolgrid::GninaIndexTyper::get_atom_type_index":[0,1,1,"_CPPv4NK10libmolgrid15GninaIndexTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE"],"libmolgrid::GninaIndexTyper::get_atom_type_index::a":[0,2,1,"_CPPv4NK10libmolgrid15GninaIndexTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE"],"libmolgrid::GninaIndexTyper::get_atom_type_vector":[0,1,1,"_CPPv4NK10libmolgrid15GninaIndexTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::GninaIndexTyper::get_atom_type_vector::a":[0,2,1,"_CPPv4NK10libmolgrid15GninaIndexTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::GninaIndexTyper::get_atom_type_vector::typ":[0,2,1,"_CPPv4NK10libmolgrid15GninaIndexTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::GninaIndexTyper::get_info":[0,1,1,"_CPPv4NK10libmolgrid15GninaIndexTyper8get_infoEi"],"libmolgrid::GninaIndexTyper::get_info::t":[0,2,1,"_CPPv4NK10libmolgrid15GninaIndexTyper8get_infoEi"],"libmolgrid::GninaIndexTyper::get_int_type":[0,1,1,"_CPPv4NK10libmolgrid15GninaIndexTyper12get_int_typeEi"],"libmolgrid::GninaIndexTyper::get_int_type::t":[0,2,1,"_CPPv4NK10libmolgrid15GninaIndexTyper12get_int_typeEi"],"libmolgrid::GninaIndexTyper::get_type_names":[0,1,1,"_CPPv4NK10libmolgrid15GninaIndexTyper14get_type_namesEv"],"libmolgrid::GninaIndexTyper::get_type_radii":[0,1,1,"_CPPv4NK10libmolgrid15GninaIndexTyper14get_type_radiiEv"],"libmolgrid::GninaIndexTyper::gnina_type_name":[0,1,1,"_CPPv4N10libmolgrid15GninaIndexTyper15gnina_type_nameEi"],"libmolgrid::GninaIndexTyper::gnina_type_name::t":[0,2,1,"_CPPv4N10libmolgrid15GninaIndexTyper15gnina_type_nameEi"],"libmolgrid::GninaIndexTyper::info":[0,0,1,"_CPPv4N10libmolgrid15GninaIndexTyper4infoE"],"libmolgrid::GninaIndexTyper::info::ad_depth":[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info8ad_depthE"],"libmolgrid::GninaIndexTyper::info::ad_heteroatom":[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info13ad_heteroatomE"],"libmolgrid::GninaIndexTyper::info::ad_radius":[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info9ad_radiusE"],"libmolgrid::GninaIndexTyper::info::ad_solvation":[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info12ad_solvationE"],"libmolgrid::GninaIndexTyper::info::ad_volume":[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info9ad_volumeE"],"libmolgrid::GninaIndexTyper::info::adname":[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info6adnameE"],"libmolgrid::GninaIndexTyper::info::anum":[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info4anumE"],"libmolgrid::GninaIndexTyper::info::covalent_radius":[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info15covalent_radiusE"],"libmolgrid::GninaIndexTyper::info::sm":[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info2smE"],"libmolgrid::GninaIndexTyper::info::smina_name":[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info10smina_nameE"],"libmolgrid::GninaIndexTyper::info::xs_acceptor":[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info11xs_acceptorE"],"libmolgrid::GninaIndexTyper::info::xs_donor":[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info8xs_donorE"],"libmolgrid::GninaIndexTyper::info::xs_hydrophobe":[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info13xs_hydrophobeE"],"libmolgrid::GninaIndexTyper::info::xs_radius":[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info9xs_radiusE"],"libmolgrid::GninaIndexTyper::is_vector_typer":[0,1,1,"_CPPv4NK10libmolgrid15GninaIndexTyper15is_vector_typerEv"],"libmolgrid::GninaIndexTyper::num_types":[0,1,1,"_CPPv4NK10libmolgrid15GninaIndexTyper9num_typesEv"],"libmolgrid::GninaIndexTyper::set_names":[0,1,1,"_CPPv4N10libmolgrid15GninaIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::GninaIndexTyper::set_names::names":[0,2,1,"_CPPv4N10libmolgrid15GninaIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::GninaIndexTyper::set_names::ntypes":[0,2,1,"_CPPv4N10libmolgrid15GninaIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::GninaIndexTyper::set_names::type_names":[0,2,1,"_CPPv4N10libmolgrid15GninaIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::GninaIndexTyper::type":[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4typeE"],"libmolgrid::GninaIndexTyper::type::AliphaticCarbonXSHydrophobe":[0,7,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type27AliphaticCarbonXSHydrophobeE"],"libmolgrid::GninaIndexTyper::type::AliphaticCarbonXSNonHydrophobe":[0,7,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type30AliphaticCarbonXSNonHydrophobeE"],"libmolgrid::GninaIndexTyper::type::AromaticCarbonXSHydrophobe":[0,7,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type26AromaticCarbonXSHydrophobeE"],"libmolgrid::GninaIndexTyper::type::AromaticCarbonXSNonHydrophobe":[0,7,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type29AromaticCarbonXSNonHydrophobeE"],"libmolgrid::GninaIndexTyper::type::Boron":[0,7,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type5BoronE"],"libmolgrid::GninaIndexTyper::type::Bromine":[0,7,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type7BromineE"],"libmolgrid::GninaIndexTyper::type::Calcium":[0,7,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type7CalciumE"],"libmolgrid::GninaIndexTyper::type::Chlorine":[0,7,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type8ChlorineE"],"libmolgrid::GninaIndexTyper::type::Fluorine":[0,7,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type8FluorineE"],"libmolgrid::GninaIndexTyper::type::GenericMetal":[0,7,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type12GenericMetalE"],"libmolgrid::GninaIndexTyper::type::Hydrogen":[0,7,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type8HydrogenE"],"libmolgrid::GninaIndexTyper::type::Iodine":[0,7,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type6IodineE"],"libmolgrid::GninaIndexTyper::type::Iron":[0,7,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type4IronE"],"libmolgrid::GninaIndexTyper::type::Magnesium":[0,7,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type9MagnesiumE"],"libmolgrid::GninaIndexTyper::type::Manganese":[0,7,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type9ManganeseE"],"libmolgrid::GninaIndexTyper::type::Nitrogen":[0,7,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type8NitrogenE"],"libmolgrid::GninaIndexTyper::type::NitrogenXSAcceptor":[0,7,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type18NitrogenXSAcceptorE"],"libmolgrid::GninaIndexTyper::type::NitrogenXSDonor":[0,7,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type15NitrogenXSDonorE"],"libmolgrid::GninaIndexTyper::type::NitrogenXSDonorAcceptor":[0,7,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type23NitrogenXSDonorAcceptorE"],"libmolgrid::GninaIndexTyper::type::NumTypes":[0,7,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type8NumTypesE"],"libmolgrid::GninaIndexTyper::type::Oxygen":[0,7,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type6OxygenE"],"libmolgrid::GninaIndexTyper::type::OxygenXSAcceptor":[0,7,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type16OxygenXSAcceptorE"],"libmolgrid::GninaIndexTyper::type::OxygenXSDonor":[0,7,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type13OxygenXSDonorE"],"libmolgrid::GninaIndexTyper::type::OxygenXSDonorAcceptor":[0,7,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type21OxygenXSDonorAcceptorE"],"libmolgrid::GninaIndexTyper::type::Phosphorus":[0,7,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type10PhosphorusE"],"libmolgrid::GninaIndexTyper::type::PolarHydrogen":[0,7,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type13PolarHydrogenE"],"libmolgrid::GninaIndexTyper::type::Sulfur":[0,7,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type6SulfurE"],"libmolgrid::GninaIndexTyper::type::SulfurAcceptor":[0,7,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type14SulfurAcceptorE"],"libmolgrid::GninaIndexTyper::type::Zinc":[0,7,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type4ZincE"],"libmolgrid::GninaIndexTyper::use_covalent":[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper12use_covalentE"],"libmolgrid::GninaIndexTyper::~GninaIndexTyper":[0,1,1,"_CPPv4N10libmolgrid15GninaIndexTyperD0Ev"],"libmolgrid::GninaVectorTyper":[0,0,1,"_CPPv4N10libmolgrid16GninaVectorTyperE"],"libmolgrid::GninaVectorTyper::GninaVectorTyper":[0,1,1,"_CPPv4N10libmolgrid16GninaVectorTyper16GninaVectorTyperERK15GninaIndexTyper"],"libmolgrid::GninaVectorTyper::GninaVectorTyper::ityp":[0,2,1,"_CPPv4N10libmolgrid16GninaVectorTyper16GninaVectorTyperERK15GninaIndexTyper"],"libmolgrid::GninaVectorTyper::get_atom_type_index":[0,1,1,"_CPPv4NK10libmolgrid16GninaVectorTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE"],"libmolgrid::GninaVectorTyper::get_atom_type_index::a":[0,2,1,"_CPPv4NK10libmolgrid16GninaVectorTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE"],"libmolgrid::GninaVectorTyper::get_atom_type_vector":[0,1,1,"_CPPv4NK10libmolgrid16GninaVectorTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::GninaVectorTyper::get_atom_type_vector::a":[0,2,1,"_CPPv4NK10libmolgrid16GninaVectorTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::GninaVectorTyper::get_atom_type_vector::typ":[0,2,1,"_CPPv4NK10libmolgrid16GninaVectorTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::GninaVectorTyper::get_int_type":[0,1,1,"_CPPv4NK10libmolgrid16GninaVectorTyper12get_int_typeEi"],"libmolgrid::GninaVectorTyper::get_int_type::t":[0,2,1,"_CPPv4NK10libmolgrid16GninaVectorTyper12get_int_typeEi"],"libmolgrid::GninaVectorTyper::get_type_names":[0,1,1,"_CPPv4NK10libmolgrid16GninaVectorTyper14get_type_namesEv"],"libmolgrid::GninaVectorTyper::get_vector_type_radii":[0,1,1,"_CPPv4NK10libmolgrid16GninaVectorTyper21get_vector_type_radiiEv"],"libmolgrid::GninaVectorTyper::is_vector_typer":[0,1,1,"_CPPv4NK10libmolgrid16GninaVectorTyper15is_vector_typerEv"],"libmolgrid::GninaVectorTyper::ityper":[0,3,1,"_CPPv4N10libmolgrid16GninaVectorTyper6ityperE"],"libmolgrid::GninaVectorTyper::num_types":[0,1,1,"_CPPv4NK10libmolgrid16GninaVectorTyper9num_typesEv"],"libmolgrid::GninaVectorTyper::vtype":[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtypeE"],"libmolgrid::GninaVectorTyper::vtype::AD_depth":[0,7,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype8AD_depthE"],"libmolgrid::GninaVectorTyper::vtype::AD_heteroatom":[0,7,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype13AD_heteroatomE"],"libmolgrid::GninaVectorTyper::vtype::AD_solvation":[0,7,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype12AD_solvationE"],"libmolgrid::GninaVectorTyper::vtype::AD_volume":[0,7,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype9AD_volumeE"],"libmolgrid::GninaVectorTyper::vtype::Aromatic":[0,7,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype8AromaticE"],"libmolgrid::GninaVectorTyper::vtype::Boron":[0,7,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype5BoronE"],"libmolgrid::GninaVectorTyper::vtype::Bromine":[0,7,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype7BromineE"],"libmolgrid::GninaVectorTyper::vtype::Calcium":[0,7,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype7CalciumE"],"libmolgrid::GninaVectorTyper::vtype::Carbon":[0,7,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype6CarbonE"],"libmolgrid::GninaVectorTyper::vtype::Chlorine":[0,7,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype8ChlorineE"],"libmolgrid::GninaVectorTyper::vtype::Fluorine":[0,7,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype8FluorineE"],"libmolgrid::GninaVectorTyper::vtype::GenericAtom":[0,7,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype11GenericAtomE"],"libmolgrid::GninaVectorTyper::vtype::Hydrogen":[0,7,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype8HydrogenE"],"libmolgrid::GninaVectorTyper::vtype::Iodine":[0,7,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype6IodineE"],"libmolgrid::GninaVectorTyper::vtype::Iron":[0,7,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype4IronE"],"libmolgrid::GninaVectorTyper::vtype::Magnesium":[0,7,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype9MagnesiumE"],"libmolgrid::GninaVectorTyper::vtype::Manganese":[0,7,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype9ManganeseE"],"libmolgrid::GninaVectorTyper::vtype::Nitrogen":[0,7,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype8NitrogenE"],"libmolgrid::GninaVectorTyper::vtype::NumTypes":[0,7,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype8NumTypesE"],"libmolgrid::GninaVectorTyper::vtype::OB_partialcharge":[0,7,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype16OB_partialchargeE"],"libmolgrid::GninaVectorTyper::vtype::Oxygen":[0,7,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype6OxygenE"],"libmolgrid::GninaVectorTyper::vtype::Phosphorus":[0,7,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype10PhosphorusE"],"libmolgrid::GninaVectorTyper::vtype::Sulfur":[0,7,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype6SulfurE"],"libmolgrid::GninaVectorTyper::vtype::XS_acceptor":[0,7,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype11XS_acceptorE"],"libmolgrid::GninaVectorTyper::vtype::XS_donor":[0,7,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype8XS_donorE"],"libmolgrid::GninaVectorTyper::vtype::XS_hydrophobe":[0,7,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype13XS_hydrophobeE"],"libmolgrid::GninaVectorTyper::vtype::Zinc":[0,7,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype4ZincE"],"libmolgrid::GninaVectorTyper::vtype_names":[0,3,1,"_CPPv4N10libmolgrid16GninaVectorTyper11vtype_namesE"],"libmolgrid::GninaVectorTyper::~GninaVectorTyper":[0,1,1,"_CPPv4N10libmolgrid16GninaVectorTyperD0Ev"],"libmolgrid::Grid":[0,0,1,"_CPPv4I0_NSt6size_tE_bEN10libmolgrid4GridE"],"libmolgrid::Grid::Dtype":[0,5,1,"_CPPv4I0_NSt6size_tE_bEN10libmolgrid4GridE"],"libmolgrid::Grid::GPU":[0,3,1,"_CPPv4N10libmolgrid4Grid3GPUE"],"libmolgrid::Grid::Grid":[0,1,1,"_CPPv4N10libmolgrid4Grid4GridEv"],"libmolgrid::Grid::Grid::G":[0,2,1,"_CPPv4N10libmolgrid4Grid4GridERK4GridI5DtypeXpl7NumDimsL1EE6isCUDAE6size_t"],"libmolgrid::Grid::Grid::I":[0,5,1,"_CPPv4IDpEN10libmolgrid4Grid4GridEPC5DtypeDp1I"],"libmolgrid::Grid::Grid::d":[0,2,1,"_CPPv4N10libmolgrid4Grid4GridEPC5DtypeP6size_t"],"libmolgrid::Grid::Grid::i":[0,2,1,"_CPPv4N10libmolgrid4Grid4GridERK4GridI5DtypeXpl7NumDimsL1EE6isCUDAE6size_t"],"libmolgrid::Grid::Grid::sizes":[0,2,1,"_CPPv4N10libmolgrid4Grid4GridEPC5DtypeP6size_t"],"libmolgrid::Grid::N":[0,3,1,"_CPPv4N10libmolgrid4Grid1NE"],"libmolgrid::Grid::NumDims":[0,5,1,"_CPPv4I0_NSt6size_tE_bEN10libmolgrid4GridE"],"libmolgrid::Grid::address":[0,1,1,"_CPPv4IDpENK10libmolgrid4Grid7addressEPK5DtypeDp1I"],"libmolgrid::Grid::address::I":[0,5,1,"_CPPv4IDpENK10libmolgrid4Grid7addressEPK5DtypeDp1I"],"libmolgrid::Grid::address::indices":[0,2,1,"_CPPv4IDpENK10libmolgrid4Grid7addressEPK5DtypeDp1I"],"libmolgrid::Grid::copyFrom":[0,1,1,"_CPPv4I_bEN10libmolgrid4Grid8copyFromE6size_tRK4GridI5Dtype7NumDims7srcCUDAE"],"libmolgrid::Grid::copyFrom::src":[0,2,1,"_CPPv4I_bEN10libmolgrid4Grid8copyFromE6size_tRK4GridI5Dtype7NumDims7srcCUDAE"],"libmolgrid::Grid::copyFrom::srcCUDA":[0,5,1,"_CPPv4I_bEN10libmolgrid4Grid8copyFromE6size_tRK4GridI5Dtype7NumDims7srcCUDAE"],"libmolgrid::Grid::copyTo":[0,1,1,"_CPPv4I_bENK10libmolgrid4Grid6copyToE6size_tR4GridI5Dtype7NumDims8destCUDAE"],"libmolgrid::Grid::copyTo::dest":[0,2,1,"_CPPv4I_bENK10libmolgrid4Grid6copyToE6size_tR4GridI5Dtype7NumDims8destCUDAE"],"libmolgrid::Grid::copyTo::destCUDA":[0,5,1,"_CPPv4I_bENK10libmolgrid4Grid6copyToE6size_tR4GridI5Dtype7NumDims8destCUDAE"],"libmolgrid::Grid::cpu_grid_t":[0,4,1,"_CPPv4N10libmolgrid4Grid10cpu_grid_tE"],"libmolgrid::Grid::data":[0,1,1,"_CPPv4NK10libmolgrid4Grid4dataEv"],"libmolgrid::Grid::dimension":[0,1,1,"_CPPv4NK10libmolgrid4Grid9dimensionE6size_t"],"libmolgrid::Grid::dimension::i":[0,2,1,"_CPPv4NK10libmolgrid4Grid9dimensionE6size_t"],"libmolgrid::Grid::dimensions":[0,1,1,"_CPPv4NK10libmolgrid4Grid10dimensionsEv"],"libmolgrid::Grid::fill_zero":[0,1,1,"_CPPv4N10libmolgrid4Grid9fill_zeroEv"],"libmolgrid::Grid::gpu_grid_t":[0,4,1,"_CPPv4N10libmolgrid4Grid10gpu_grid_tE"],"libmolgrid::Grid::isCUDA":[0,5,1,"_CPPv4I0_NSt6size_tE_bEN10libmolgrid4GridE"],"libmolgrid::Grid::managed_t":[0,4,1,"_CPPv4N10libmolgrid4Grid9managed_tE"],"libmolgrid::Grid::offset":[0,1,1,"_CPPv4NK10libmolgrid4Grid6offsetE6size_t"],"libmolgrid::Grid::offset::i":[0,2,1,"_CPPv4NK10libmolgrid4Grid6offsetE6size_t"],"libmolgrid::Grid::offsets":[0,1,1,"_CPPv4NK10libmolgrid4Grid7offsetsEv"],"libmolgrid::Grid::operator()":[0,1,1,"_CPPv4IDpENK10libmolgrid4GridclE5DtypeDp1I"],"libmolgrid::Grid::operator()::I":[0,5,1,"_CPPv4IDpENK10libmolgrid4GridclE5DtypeDp1I"],"libmolgrid::Grid::operator()::indices":[0,2,1,"_CPPv4IDpENK10libmolgrid4GridclE5DtypeDp1I"],"libmolgrid::Grid::operator[]":[0,1,1,"_CPPv4NK10libmolgrid4GridixE6size_t"],"libmolgrid::Grid::operator[]::i":[0,2,1,"_CPPv4NK10libmolgrid4GridixE6size_t"],"libmolgrid::Grid::set_buffer":[0,1,1,"_CPPv4N10libmolgrid4Grid10set_bufferEP5Dtype"],"libmolgrid::Grid::set_buffer::ptr":[0,2,1,"_CPPv4N10libmolgrid4Grid10set_bufferEP5Dtype"],"libmolgrid::Grid::size":[0,1,1,"_CPPv4NK10libmolgrid4Grid4sizeEv"],"libmolgrid::Grid::subgrid_t":[0,4,1,"_CPPv4N10libmolgrid4Grid9subgrid_tE"],"libmolgrid::Grid::type":[0,4,1,"_CPPv4N10libmolgrid4Grid4typeE"],"libmolgrid::Grid::~Grid":[0,1,1,"_CPPv4N10libmolgrid4GridD0Ev"],"libmolgrid::GridMaker":[0,0,1,"_CPPv4N10libmolgrid9GridMakerE"],"libmolgrid::GridMaker::GridMaker":[0,1,1,"_CPPv4N10libmolgrid9GridMaker9GridMakerEffbbff"],"libmolgrid::GridMaker::GridMaker::bin":[0,2,1,"_CPPv4N10libmolgrid9GridMaker9GridMakerEffbbff"],"libmolgrid::GridMaker::GridMaker::d":[0,2,1,"_CPPv4N10libmolgrid9GridMaker9GridMakerEffbbff"],"libmolgrid::GridMaker::GridMaker::grm":[0,2,1,"_CPPv4N10libmolgrid9GridMaker9GridMakerEffbbff"],"libmolgrid::GridMaker::GridMaker::res":[0,2,1,"_CPPv4N10libmolgrid9GridMaker9GridMakerEffbbff"],"libmolgrid::GridMaker::GridMaker::rscale":[0,2,1,"_CPPv4N10libmolgrid9GridMaker9GridMakerEffbbff"],"libmolgrid::GridMaker::GridMaker::rti":[0,2,1,"_CPPv4N10libmolgrid9GridMaker9GridMakerEffbbff"],"libmolgrid::GridMaker::accumulate_atom_gradient":[0,1,1,"_CPPv4NK10libmolgrid9GridMaker24accumulate_atom_gradientEffffffffR6float3"],"libmolgrid::GridMaker::accumulate_atom_gradient::agrad":[0,2,1,"_CPPv4NK10libmolgrid9GridMaker24accumulate_atom_gradientEffffffffR6float3"],"libmolgrid::GridMaker::accumulate_atom_gradient::ax":[0,2,1,"_CPPv4NK10libmolgrid9GridMaker24accumulate_atom_gradientEffffffffR6float3"],"libmolgrid::GridMaker::accumulate_atom_gradient::ay":[0,2,1,"_CPPv4NK10libmolgrid9GridMaker24accumulate_atom_gradientEffffffffR6float3"],"libmolgrid::GridMaker::accumulate_atom_gradient::az":[0,2,1,"_CPPv4NK10libmolgrid9GridMaker24accumulate_atom_gradientEffffffffR6float3"],"libmolgrid::GridMaker::accumulate_atom_gradient::gridval":[0,2,1,"_CPPv4NK10libmolgrid9GridMaker24accumulate_atom_gradientEffffffffR6float3"],"libmolgrid::GridMaker::accumulate_atom_gradient::radius":[0,2,1,"_CPPv4NK10libmolgrid9GridMaker24accumulate_atom_gradientEffffffffR6float3"],"libmolgrid::GridMaker::accumulate_atom_gradient::x":[0,2,1,"_CPPv4NK10libmolgrid9GridMaker24accumulate_atom_gradientEffffffffR6float3"],"libmolgrid::GridMaker::accumulate_atom_gradient::y":[0,2,1,"_CPPv4NK10libmolgrid9GridMaker24accumulate_atom_gradientEffffffffR6float3"],"libmolgrid::GridMaker::accumulate_atom_gradient::z":[0,2,1,"_CPPv4NK10libmolgrid9GridMaker24accumulate_atom_gradientEffffffffR6float3"],"libmolgrid::GridMaker::atom_density_grad_grad":[0,1,1,"_CPPv4N10libmolgrid9GridMaker22atom_density_grad_gradEffff"],"libmolgrid::GridMaker::atom_density_grad_grad::a":[0,2,1,"_CPPv4N10libmolgrid9GridMaker22atom_density_grad_gradEffff"],"libmolgrid::GridMaker::atom_density_grad_grad::dist":[0,2,1,"_CPPv4N10libmolgrid9GridMaker22atom_density_grad_gradEffff"],"libmolgrid::GridMaker::atom_density_grad_grad::r":[0,2,1,"_CPPv4N10libmolgrid9GridMaker22atom_density_grad_gradEffff"],"libmolgrid::GridMaker::atom_density_grad_grad::x":[0,2,1,"_CPPv4N10libmolgrid9GridMaker22atom_density_grad_gradEffff"],"libmolgrid::GridMaker::atom_density_grad_grad_other":[0,1,1,"_CPPv4N10libmolgrid9GridMaker28atom_density_grad_grad_otherEffffff"],"libmolgrid::GridMaker::atom_density_grad_grad_other::a":[0,2,1,"_CPPv4N10libmolgrid9GridMaker28atom_density_grad_grad_otherEffffff"],"libmolgrid::GridMaker::atom_density_grad_grad_other::b":[0,2,1,"_CPPv4N10libmolgrid9GridMaker28atom_density_grad_grad_otherEffffff"],"libmolgrid::GridMaker::atom_density_grad_grad_other::dist":[0,2,1,"_CPPv4N10libmolgrid9GridMaker28atom_density_grad_grad_otherEffffff"],"libmolgrid::GridMaker::atom_density_grad_grad_other::r":[0,2,1,"_CPPv4N10libmolgrid9GridMaker28atom_density_grad_grad_otherEffffff"],"libmolgrid::GridMaker::atom_density_grad_grad_other::x":[0,2,1,"_CPPv4N10libmolgrid9GridMaker28atom_density_grad_grad_otherEffffff"],"libmolgrid::GridMaker::atom_density_grad_grad_other::y":[0,2,1,"_CPPv4N10libmolgrid9GridMaker28atom_density_grad_grad_otherEffffff"],"libmolgrid::GridMaker::backward":[0,1,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE"],"libmolgrid::GridMaker::backward::Dtype":[0,5,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE"],"libmolgrid::GridMaker::backward::atom_gradients":[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE"],"libmolgrid::GridMaker::backward::atomic_gradients":[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE"],"libmolgrid::GridMaker::backward::coords":[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE"],"libmolgrid::GridMaker::backward::diff":[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE"],"libmolgrid::GridMaker::backward::grid":[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE"],"libmolgrid::GridMaker::backward::grid_center":[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE"],"libmolgrid::GridMaker::backward::in":[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE"],"libmolgrid::GridMaker::backward::radii":[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE"],"libmolgrid::GridMaker::backward::type_gradients":[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE"],"libmolgrid::GridMaker::backward::type_index":[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEE"],"libmolgrid::GridMaker::backward::type_vectors":[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE"],"libmolgrid::GridMaker::backward_gradients":[0,1,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL2EEXL1EEERK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE"],"libmolgrid::GridMaker::backward_gradients::Dtype":[0,5,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL2EEXL1EEERK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE"],"libmolgrid::GridMaker::backward_gradients::atom_diffdiff":[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL2EEXL1EEERK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE"],"libmolgrid::GridMaker::backward_gradients::atom_gradients":[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL2EEXL1EEERK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE"],"libmolgrid::GridMaker::backward_gradients::coords":[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL2EEXL1EEERK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE"],"libmolgrid::GridMaker::backward_gradients::diff":[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL2EEXL1EEERK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE"],"libmolgrid::GridMaker::backward_gradients::diffdiff":[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL2EEXL1EEERK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE"],"libmolgrid::GridMaker::backward_gradients::grid_center":[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL2EEXL1EEERK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE"],"libmolgrid::GridMaker::backward_gradients::in":[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL2EEXL1EEERK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE"],"libmolgrid::GridMaker::backward_gradients::radii":[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL2EEXL1EEERK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE"],"libmolgrid::GridMaker::backward_gradients::type_diffdiff":[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL2EEXL1EEERK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE"],"libmolgrid::GridMaker::backward_gradients::type_gradients":[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL2EEXL1EEERK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE"],"libmolgrid::GridMaker::backward_gradients::type_vectors":[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL2EEXL1EEERK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE"],"libmolgrid::GridMaker::backward_relevance":[0,1,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL1EEXL1EEE"],"libmolgrid::GridMaker::backward_relevance::Dtype":[0,5,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL1EEXL1EEE"],"libmolgrid::GridMaker::backward_relevance::coords":[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL1EEXL1EEE"],"libmolgrid::GridMaker::backward_relevance::density":[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL1EEXL1EEE"],"libmolgrid::GridMaker::backward_relevance::diff":[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL1EEXL1EEE"],"libmolgrid::GridMaker::backward_relevance::grid_center":[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL1EEXL1EEE"],"libmolgrid::GridMaker::backward_relevance::in":[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL1EEXL1EEE"],"libmolgrid::GridMaker::backward_relevance::radii":[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL1EEXL1EEE"],"libmolgrid::GridMaker::backward_relevance::relevance":[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL1EEXL1EEE"],"libmolgrid::GridMaker::backward_relevance::type_index":[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL1EEXL1EEE"],"libmolgrid::GridMaker::calc_atom_gradient_cpu":[0,1,1,"_CPPv4I0ENK10libmolgrid9GridMaker22calc_atom_gradient_cpuE6float3RK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEEf"],"libmolgrid::GridMaker::calc_atom_gradient_cpu::Dtype":[0,5,1,"_CPPv4I0ENK10libmolgrid9GridMaker22calc_atom_gradient_cpuE6float3RK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEEf"],"libmolgrid::GridMaker::calc_atom_gradient_cpu::coord":[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker22calc_atom_gradient_cpuE6float3RK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEEf"],"libmolgrid::GridMaker::calc_atom_gradient_cpu::diff":[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker22calc_atom_gradient_cpuE6float3RK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEEf"],"libmolgrid::GridMaker::calc_atom_gradient_cpu::grid_origin":[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker22calc_atom_gradient_cpuE6float3RK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEEf"],"libmolgrid::GridMaker::calc_atom_gradient_cpu::radius":[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker22calc_atom_gradient_cpuE6float3RK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEEf"],"libmolgrid::GridMaker::calc_atom_relevance_cpu":[0,1,1,"_CPPv4I0ENK10libmolgrid9GridMaker23calc_atom_relevance_cpuEfRK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEERK4GridI5DtypeXL3EEXL0EEEf"],"libmolgrid::GridMaker::calc_atom_relevance_cpu::Dtype":[0,5,1,"_CPPv4I0ENK10libmolgrid9GridMaker23calc_atom_relevance_cpuEfRK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEERK4GridI5DtypeXL3EEXL0EEEf"],"libmolgrid::GridMaker::calc_atom_relevance_cpu::coord":[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker23calc_atom_relevance_cpuEfRK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEERK4GridI5DtypeXL3EEXL0EEEf"],"libmolgrid::GridMaker::calc_atom_relevance_cpu::density":[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker23calc_atom_relevance_cpuEfRK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEERK4GridI5DtypeXL3EEXL0EEEf"],"libmolgrid::GridMaker::calc_atom_relevance_cpu::diff":[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker23calc_atom_relevance_cpuEfRK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEERK4GridI5DtypeXL3EEXL0EEEf"],"libmolgrid::GridMaker::calc_atom_relevance_cpu::grid_origin":[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker23calc_atom_relevance_cpuEfRK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEERK4GridI5DtypeXL3EEXL0EEEf"],"libmolgrid::GridMaker::calc_atom_relevance_cpu::radius":[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker23calc_atom_relevance_cpuEfRK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEERK4GridI5DtypeXL3EEXL0EEEf"],"libmolgrid::GridMaker::calc_point":[0,1,1,"_CPPv4I_bENK10libmolgrid9GridMaker10calc_pointEfffffRK6float3"],"libmolgrid::GridMaker::calc_point::Binary":[0,5,1,"_CPPv4I_bENK10libmolgrid9GridMaker10calc_pointEfffffRK6float3"],"libmolgrid::GridMaker::calc_point::ar":[0,2,1,"_CPPv4I_bENK10libmolgrid9GridMaker10calc_pointEfffffRK6float3"],"libmolgrid::GridMaker::calc_point::ax":[0,2,1,"_CPPv4I_bENK10libmolgrid9GridMaker10calc_pointEfffffRK6float3"],"libmolgrid::GridMaker::calc_point::ay":[0,2,1,"_CPPv4I_bENK10libmolgrid9GridMaker10calc_pointEfffffRK6float3"],"libmolgrid::GridMaker::calc_point::az":[0,2,1,"_CPPv4I_bENK10libmolgrid9GridMaker10calc_pointEfffffRK6float3"],"libmolgrid::GridMaker::calc_point::grid_coords":[0,2,1,"_CPPv4I_bENK10libmolgrid9GridMaker10calc_pointEfffffRK6float3"],"libmolgrid::GridMaker::calc_type_gradient_cpu":[0,1,1,"_CPPv4I0ENK10libmolgrid9GridMaker22calc_type_gradient_cpuEfRK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEEf"],"libmolgrid::GridMaker::calc_type_gradient_cpu::Dtype":[0,5,1,"_CPPv4I0ENK10libmolgrid9GridMaker22calc_type_gradient_cpuEfRK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEEf"],"libmolgrid::GridMaker::calc_type_gradient_cpu::coord":[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker22calc_type_gradient_cpuEfRK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEEf"],"libmolgrid::GridMaker::calc_type_gradient_cpu::diff":[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker22calc_type_gradient_cpuEfRK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEEf"],"libmolgrid::GridMaker::calc_type_gradient_cpu::grid_origin":[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker22calc_type_gradient_cpuEfRK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEEf"],"libmolgrid::GridMaker::calc_type_gradient_cpu::radius":[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker22calc_type_gradient_cpuEfRK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEEf"],"libmolgrid::GridMaker::density_grad_dist":[0,1,1,"_CPPv4NK10libmolgrid9GridMaker17density_grad_distEff"],"libmolgrid::GridMaker::density_grad_dist::ar":[0,2,1,"_CPPv4NK10libmolgrid9GridMaker17density_grad_distEff"],"libmolgrid::GridMaker::density_grad_dist::dist":[0,2,1,"_CPPv4NK10libmolgrid9GridMaker17density_grad_distEff"],"libmolgrid::GridMaker::forward":[0,1,1,"_CPPv4I0_i_bENK10libmolgrid9GridMaker7forwardEvRK4GridIfXL2EE6isCUDAERK4GridIfXL3EE6isCUDAERK4GridIf1N6isCUDAERK4GridIfXL2EE6isCUDAER4GridI5DtypeXL5EE6isCUDAE"],"libmolgrid::GridMaker::forward::Dtype":[0,5,1,"_CPPv4I0_i_bENK10libmolgrid9GridMaker7forwardEvRK4GridIfXL2EE6isCUDAERK4GridIfXL3EE6isCUDAERK4GridIf1N6isCUDAERK4GridIfXL2EE6isCUDAER4GridI5DtypeXL5EE6isCUDAE"],"libmolgrid::GridMaker::forward::N":[0,5,1,"_CPPv4I0_i_bENK10libmolgrid9GridMaker7forwardEvRK4GridIfXL2EE6isCUDAERK4GridIfXL3EE6isCUDAERK4GridIf1N6isCUDAERK4GridIfXL2EE6isCUDAER4GridI5DtypeXL5EE6isCUDAE"],"libmolgrid::GridMaker::forward::center":[0,2,1,"_CPPv4I0_bENK10libmolgrid9GridMaker7forwardEvRK7ExampleR4GridI5DtypeXL4EE6isCUDAEfbRK6float3"],"libmolgrid::GridMaker::forward::centers":[0,2,1,"_CPPv4I0_i_bENK10libmolgrid9GridMaker7forwardEvRK4GridIfXL2EE6isCUDAERK4GridIfXL3EE6isCUDAERK4GridIf1N6isCUDAERK4GridIfXL2EE6isCUDAER4GridI5DtypeXL5EE6isCUDAE"],"libmolgrid::GridMaker::forward::coords":[0,2,1,"_CPPv4I0_i_bENK10libmolgrid9GridMaker7forwardEvRK4GridIfXL2EE6isCUDAERK4GridIfXL3EE6isCUDAERK4GridIf1N6isCUDAERK4GridIfXL2EE6isCUDAER4GridI5DtypeXL5EE6isCUDAE"],"libmolgrid::GridMaker::forward::grid_center":[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEER4GridI5DtypeXL4EEXL1EEE"],"libmolgrid::GridMaker::forward::in":[0,2,1,"_CPPv4I0_bENK10libmolgrid9GridMaker7forwardEvRKNSt6vectorI7ExampleEER4GridI5DtypeXL5EE6isCUDAEfb"],"libmolgrid::GridMaker::forward::isCUDA":[0,5,1,"_CPPv4I0_i_bENK10libmolgrid9GridMaker7forwardEvRK4GridIfXL2EE6isCUDAERK4GridIfXL3EE6isCUDAERK4GridIf1N6isCUDAERK4GridIfXL2EE6isCUDAER4GridI5DtypeXL5EE6isCUDAE"],"libmolgrid::GridMaker::forward::out":[0,2,1,"_CPPv4I0_i_bENK10libmolgrid9GridMaker7forwardEvRK4GridIfXL2EE6isCUDAERK4GridIfXL3EE6isCUDAERK4GridIf1N6isCUDAERK4GridIfXL2EE6isCUDAER4GridI5DtypeXL5EE6isCUDAE"],"libmolgrid::GridMaker::forward::radii":[0,2,1,"_CPPv4I0_i_bENK10libmolgrid9GridMaker7forwardEvRK4GridIfXL2EE6isCUDAERK4GridIfXL3EE6isCUDAERK4GridIf1N6isCUDAERK4GridIfXL2EE6isCUDAER4GridI5DtypeXL5EE6isCUDAE"],"libmolgrid::GridMaker::forward::random_rotation":[0,2,1,"_CPPv4I0_bENK10libmolgrid9GridMaker7forwardEvRKNSt6vectorI7ExampleEER4GridI5DtypeXL5EE6isCUDAEfb"],"libmolgrid::GridMaker::forward::random_translation":[0,2,1,"_CPPv4I0_bENK10libmolgrid9GridMaker7forwardEvRKNSt6vectorI7ExampleEER4GridI5DtypeXL5EE6isCUDAEfb"],"libmolgrid::GridMaker::forward::transform":[0,2,1,"_CPPv4I0_bENK10libmolgrid9GridMaker7forwardEvRK7ExampleRK9TransformR4GridI5DtypeXL4EE6isCUDAE"],"libmolgrid::GridMaker::forward::type_index":[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridIfXL1EEXL1EEER4GridI5DtypeXL4EEXL1EEE"],"libmolgrid::GridMaker::forward::type_vector":[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEER4GridI5DtypeXL4EEXL1EEE"],"libmolgrid::GridMaker::forward::types":[0,2,1,"_CPPv4I0_i_bENK10libmolgrid9GridMaker7forwardEvRK4GridIfXL2EE6isCUDAERK4GridIfXL3EE6isCUDAERK4GridIf1N6isCUDAERK4GridIfXL2EE6isCUDAER4GridI5DtypeXL5EE6isCUDAE"],"libmolgrid::GridMaker::get_binary":[0,1,1,"_CPPv4NK10libmolgrid9GridMaker10get_binaryEv"],"libmolgrid::GridMaker::get_bounds_1d":[0,1,1,"_CPPv4NK10libmolgrid9GridMaker13get_bounds_1dEKfff"],"libmolgrid::GridMaker::get_bounds_1d::coord":[0,2,1,"_CPPv4NK10libmolgrid9GridMaker13get_bounds_1dEKfff"],"libmolgrid::GridMaker::get_bounds_1d::densityrad":[0,2,1,"_CPPv4NK10libmolgrid9GridMaker13get_bounds_1dEKfff"],"libmolgrid::GridMaker::get_bounds_1d::grid_origin":[0,2,1,"_CPPv4NK10libmolgrid9GridMaker13get_bounds_1dEKfff"],"libmolgrid::GridMaker::get_dimension":[0,1,1,"_CPPv4NK10libmolgrid9GridMaker13get_dimensionEv"],"libmolgrid::GridMaker::get_first_dim":[0,1,1,"_CPPv4NK10libmolgrid9GridMaker13get_first_dimEv"],"libmolgrid::GridMaker::get_grid_dims":[0,1,1,"_CPPv4NK10libmolgrid9GridMaker13get_grid_dimsEv"],"libmolgrid::GridMaker::get_grid_origin":[0,1,1,"_CPPv4NK10libmolgrid9GridMaker15get_grid_originERK6float3"],"libmolgrid::GridMaker::get_grid_origin::grid_center":[0,2,1,"_CPPv4NK10libmolgrid9GridMaker15get_grid_originERK6float3"],"libmolgrid::GridMaker::get_radii_type_indexed":[0,1,1,"_CPPv4NK10libmolgrid9GridMaker22get_radii_type_indexedEv"],"libmolgrid::GridMaker::get_radiusmultiple":[0,1,1,"_CPPv4NK10libmolgrid9GridMaker18get_radiusmultipleEv"],"libmolgrid::GridMaker::get_resolution":[0,1,1,"_CPPv4NK10libmolgrid9GridMaker14get_resolutionEv"],"libmolgrid::GridMaker::initialize":[0,1,1,"_CPPv4N10libmolgrid9GridMaker10initializeEffbff"],"libmolgrid::GridMaker::initialize::bin":[0,2,1,"_CPPv4N10libmolgrid9GridMaker10initializeEffbff"],"libmolgrid::GridMaker::initialize::d":[0,2,1,"_CPPv4N10libmolgrid9GridMaker10initializeEffbff"],"libmolgrid::GridMaker::initialize::grm":[0,2,1,"_CPPv4N10libmolgrid9GridMaker10initializeEffbff"],"libmolgrid::GridMaker::initialize::res":[0,2,1,"_CPPv4N10libmolgrid9GridMaker10initializeEffbff"],"libmolgrid::GridMaker::initialize::rscale":[0,2,1,"_CPPv4N10libmolgrid9GridMaker10initializeEffbff"],"libmolgrid::GridMaker::set_binary":[0,1,1,"_CPPv4N10libmolgrid9GridMaker10set_binaryEb"],"libmolgrid::GridMaker::set_binary::b":[0,2,1,"_CPPv4N10libmolgrid9GridMaker10set_binaryEb"],"libmolgrid::GridMaker::set_dimension":[0,1,1,"_CPPv4N10libmolgrid9GridMaker13set_dimensionEf"],"libmolgrid::GridMaker::set_dimension::d":[0,2,1,"_CPPv4N10libmolgrid9GridMaker13set_dimensionEf"],"libmolgrid::GridMaker::set_radii_type_indexed":[0,1,1,"_CPPv4N10libmolgrid9GridMaker22set_radii_type_indexedEb"],"libmolgrid::GridMaker::set_radii_type_indexed::b":[0,2,1,"_CPPv4N10libmolgrid9GridMaker22set_radii_type_indexedEb"],"libmolgrid::GridMaker::set_resolution":[0,1,1,"_CPPv4N10libmolgrid9GridMaker14set_resolutionEf"],"libmolgrid::GridMaker::set_resolution::res":[0,2,1,"_CPPv4N10libmolgrid9GridMaker14set_resolutionEf"],"libmolgrid::GridMaker::type_grad_grad":[0,1,1,"_CPPv4N10libmolgrid9GridMaker14type_grad_gradEffff"],"libmolgrid::GridMaker::type_grad_grad::a":[0,2,1,"_CPPv4N10libmolgrid9GridMaker14type_grad_gradEffff"],"libmolgrid::GridMaker::type_grad_grad::dist":[0,2,1,"_CPPv4N10libmolgrid9GridMaker14type_grad_gradEffff"],"libmolgrid::GridMaker::type_grad_grad::r":[0,2,1,"_CPPv4N10libmolgrid9GridMaker14type_grad_gradEffff"],"libmolgrid::GridMaker::type_grad_grad::x":[0,2,1,"_CPPv4N10libmolgrid9GridMaker14type_grad_gradEffff"],"libmolgrid::GridMaker::~GridMaker":[0,1,1,"_CPPv4N10libmolgrid9GridMakerD0Ev"],"libmolgrid::GroupedExampleRefProvider":[0,0,1,"_CPPv4I0EN10libmolgrid25GroupedExampleRefProviderE"],"libmolgrid::GroupedExampleRefProvider::GroupedExampleRefProvider":[0,1,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider25GroupedExampleRefProviderEv"],"libmolgrid::GroupedExampleRefProvider::GroupedExampleRefProvider::parm":[0,2,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider25GroupedExampleRefProviderERK23ExampleProviderSettings"],"libmolgrid::GroupedExampleRefProvider::Provider":[0,5,1,"_CPPv4I0EN10libmolgrid25GroupedExampleRefProviderE"],"libmolgrid::GroupedExampleRefProvider::addref":[0,1,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider6addrefERK10ExampleRef"],"libmolgrid::GroupedExampleRefProvider::addref::ex":[0,2,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider6addrefERK10ExampleRef"],"libmolgrid::GroupedExampleRefProvider::batch_size":[0,3,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider10batch_sizeE"],"libmolgrid::GroupedExampleRefProvider::check_batch_size":[0,1,1,"_CPPv4NK10libmolgrid25GroupedExampleRefProvider16check_batch_sizeEj"],"libmolgrid::GroupedExampleRefProvider::check_batch_size::bsize":[0,2,1,"_CPPv4NK10libmolgrid25GroupedExampleRefProvider16check_batch_sizeEj"],"libmolgrid::GroupedExampleRefProvider::current_group_index":[0,3,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider19current_group_indexE"],"libmolgrid::GroupedExampleRefProvider::current_groups":[0,3,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider14current_groupsE"],"libmolgrid::GroupedExampleRefProvider::current_ts":[0,3,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider10current_tsE"],"libmolgrid::GroupedExampleRefProvider::examples":[0,3,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider8examplesE"],"libmolgrid::GroupedExampleRefProvider::frame_groups":[0,3,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider12frame_groupsE"],"libmolgrid::GroupedExampleRefProvider::get_large_epoch_num":[0,1,1,"_CPPv4NK10libmolgrid25GroupedExampleRefProvider19get_large_epoch_numEv"],"libmolgrid::GroupedExampleRefProvider::get_small_epoch_num":[0,1,1,"_CPPv4NK10libmolgrid25GroupedExampleRefProvider19get_small_epoch_numEv"],"libmolgrid::GroupedExampleRefProvider::has_group":[0,1,1,"_CPPv4NK10libmolgrid25GroupedExampleRefProvider9has_groupEv"],"libmolgrid::GroupedExampleRefProvider::large_epoch_size":[0,1,1,"_CPPv4NK10libmolgrid25GroupedExampleRefProvider16large_epoch_sizeEv"],"libmolgrid::GroupedExampleRefProvider::maxgroupsize":[0,3,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider12maxgroupsizeE"],"libmolgrid::GroupedExampleRefProvider::nextref":[0,1,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider7nextrefER10ExampleRef"],"libmolgrid::GroupedExampleRefProvider::nextref::ex":[0,2,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider7nextrefER10ExampleRef"],"libmolgrid::GroupedExampleRefProvider::num_labels":[0,1,1,"_CPPv4NK10libmolgrid25GroupedExampleRefProvider10num_labelsEv"],"libmolgrid::GroupedExampleRefProvider::populate":[0,1,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider8populateERNSt7istreamEi"],"libmolgrid::GroupedExampleRefProvider::populate::lines":[0,2,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider8populateERNSt7istreamEi"],"libmolgrid::GroupedExampleRefProvider::populate::numlabels":[0,2,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider8populateERNSt7istreamEi"],"libmolgrid::GroupedExampleRefProvider::reset":[0,1,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider5resetEv"],"libmolgrid::GroupedExampleRefProvider::setup":[0,1,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider5setupEv"],"libmolgrid::GroupedExampleRefProvider::size":[0,1,1,"_CPPv4NK10libmolgrid25GroupedExampleRefProvider4sizeEv"],"libmolgrid::GroupedExampleRefProvider::small_epoch_size":[0,1,1,"_CPPv4NK10libmolgrid25GroupedExampleRefProvider16small_epoch_sizeEv"],"libmolgrid::ManagedGrid":[0,0,1,"_CPPv4I0_NSt6size_tEEN10libmolgrid11ManagedGridE"],"libmolgrid::ManagedGrid::Dtype":[0,5,1,"_CPPv4I0_NSt6size_tEEN10libmolgrid11ManagedGridE"],"libmolgrid::ManagedGrid::ManagedGrid":[0,1,1,"_CPPv4N10libmolgrid11ManagedGrid11ManagedGridEv"],"libmolgrid::ManagedGrid::ManagedGrid::I":[0,5,1,"_CPPv4IDp0EN10libmolgrid11ManagedGrid11ManagedGridEDp1I"],"libmolgrid::ManagedGrid::ManagedGrid::sizes":[0,2,1,"_CPPv4IDp0EN10libmolgrid11ManagedGrid11ManagedGridEDp1I"],"libmolgrid::ManagedGrid::NumDims":[0,5,1,"_CPPv4I0_NSt6size_tEEN10libmolgrid11ManagedGridE"],"libmolgrid::ManagedGrid::base_t":[0,4,1,"_CPPv4N10libmolgrid11ManagedGrid6base_tE"],"libmolgrid::ManagedGrid::clone":[0,1,1,"_CPPv4NK10libmolgrid11ManagedGrid5cloneEv"],"libmolgrid::ManagedGrid::operator[]":[0,1,1,"_CPPv4NK10libmolgrid11ManagedGridixE6size_t"],"libmolgrid::ManagedGrid::operator[]::i":[0,2,1,"_CPPv4NK10libmolgrid11ManagedGridixE6size_t"],"libmolgrid::ManagedGrid::subgrid_t":[0,4,1,"_CPPv4N10libmolgrid11ManagedGrid9subgrid_tE"],"libmolgrid::ManagedGridBase":[0,0,1,"_CPPv4I0_NSt6size_tEEN10libmolgrid15ManagedGridBaseE"],"libmolgrid::ManagedGridBase::Dtype":[0,5,1,"_CPPv4I0_NSt6size_tEEN10libmolgrid15ManagedGridBaseE"],"libmolgrid::ManagedGridBase::N":[0,3,1,"_CPPv4N10libmolgrid15ManagedGridBase1NE"],"libmolgrid::ManagedGridBase::NumDims":[0,5,1,"_CPPv4I0_NSt6size_tEEN10libmolgrid15ManagedGridBaseE"],"libmolgrid::ManagedGridBase::copyFrom":[0,1,1,"_CPPv4N10libmolgrid15ManagedGridBase8copyFromERK15ManagedGridBaseI5Dtype7NumDimsE"],"libmolgrid::ManagedGridBase::copyFrom::src":[0,2,1,"_CPPv4N10libmolgrid15ManagedGridBase8copyFromERK15ManagedGridBaseI5Dtype7NumDimsE"],"libmolgrid::ManagedGridBase::copyInto":[0,1,1,"_CPPv4N10libmolgrid15ManagedGridBase8copyIntoE6size_tRK15ManagedGridBaseI5Dtype7NumDimsE"],"libmolgrid::ManagedGridBase::copyInto::src":[0,2,1,"_CPPv4N10libmolgrid15ManagedGridBase8copyIntoE6size_tRK15ManagedGridBaseI5Dtype7NumDimsE"],"libmolgrid::ManagedGridBase::copyInto::start":[0,2,1,"_CPPv4N10libmolgrid15ManagedGridBase8copyIntoE6size_tRK15ManagedGridBaseI5Dtype7NumDimsE"],"libmolgrid::ManagedGridBase::copyTo":[0,1,1,"_CPPv4NK10libmolgrid15ManagedGridBase6copyToER15ManagedGridBaseI5Dtype7NumDimsE"],"libmolgrid::ManagedGridBase::copyTo::dest":[0,2,1,"_CPPv4NK10libmolgrid15ManagedGridBase6copyToER15ManagedGridBaseI5Dtype7NumDimsE"],"libmolgrid::ManagedGridBase::cpu":[0,1,1,"_CPPv4NK10libmolgrid15ManagedGridBase3cpuEv"],"libmolgrid::ManagedGridBase::cpu_grid_t":[0,4,1,"_CPPv4N10libmolgrid15ManagedGridBase10cpu_grid_tE"],"libmolgrid::ManagedGridBase::data":[0,1,1,"_CPPv4NK10libmolgrid15ManagedGridBase4dataEv"],"libmolgrid::ManagedGridBase::dimension":[0,1,1,"_CPPv4NK10libmolgrid15ManagedGridBase9dimensionE6size_t"],"libmolgrid::ManagedGridBase::dimension::i":[0,2,1,"_CPPv4NK10libmolgrid15ManagedGridBase9dimensionE6size_t"],"libmolgrid::ManagedGridBase::dimensions":[0,1,1,"_CPPv4NK10libmolgrid15ManagedGridBase10dimensionsEv"],"libmolgrid::ManagedGridBase::fill_zero":[0,1,1,"_CPPv4N10libmolgrid15ManagedGridBase9fill_zeroEv"],"libmolgrid::ManagedGridBase::gpu":[0,1,1,"_CPPv4NK10libmolgrid15ManagedGridBase3gpuEv"],"libmolgrid::ManagedGridBase::gpu_grid_t":[0,4,1,"_CPPv4N10libmolgrid15ManagedGridBase10gpu_grid_tE"],"libmolgrid::ManagedGridBase::offset":[0,1,1,"_CPPv4NK10libmolgrid15ManagedGridBase6offsetE6size_t"],"libmolgrid::ManagedGridBase::offset::i":[0,2,1,"_CPPv4NK10libmolgrid15ManagedGridBase6offsetE6size_t"],"libmolgrid::ManagedGridBase::offsets":[0,1,1,"_CPPv4NK10libmolgrid15ManagedGridBase7offsetsEv"],"libmolgrid::ManagedGridBase::oncpu":[0,1,1,"_CPPv4NK10libmolgrid15ManagedGridBase5oncpuEv"],"libmolgrid::ManagedGridBase::ongpu":[0,1,1,"_CPPv4NK10libmolgrid15ManagedGridBase5ongpuEv"],"libmolgrid::ManagedGridBase::operator cpu_grid_t":[0,1,1,"_CPPv4NK10libmolgrid15ManagedGridBasecv10cpu_grid_tEv"],"libmolgrid::ManagedGridBase::operator cpu_grid_t&":[0,1,1,"_CPPv4N10libmolgrid15ManagedGridBasecvR10cpu_grid_tEv"],"libmolgrid::ManagedGridBase::operator gpu_grid_t":[0,1,1,"_CPPv4NK10libmolgrid15ManagedGridBasecv10gpu_grid_tEv"],"libmolgrid::ManagedGridBase::operator gpu_grid_t&":[0,1,1,"_CPPv4N10libmolgrid15ManagedGridBasecvR10gpu_grid_tEv"],"libmolgrid::ManagedGridBase::operator()":[0,1,1,"_CPPv4IDpENK10libmolgrid15ManagedGridBaseclE5DtypeDp1I"],"libmolgrid::ManagedGridBase::operator()::I":[0,5,1,"_CPPv4IDpENK10libmolgrid15ManagedGridBaseclE5DtypeDp1I"],"libmolgrid::ManagedGridBase::operator()::indices":[0,2,1,"_CPPv4IDpENK10libmolgrid15ManagedGridBaseclE5DtypeDp1I"],"libmolgrid::ManagedGridBase::operator==":[0,1,1,"_CPPv4NK10libmolgrid15ManagedGridBaseeqERK15ManagedGridBaseI5Dtype7NumDimsE"],"libmolgrid::ManagedGridBase::operator==::rhs":[0,2,1,"_CPPv4NK10libmolgrid15ManagedGridBaseeqERK15ManagedGridBaseI5Dtype7NumDimsE"],"libmolgrid::ManagedGridBase::resized":[0,1,1,"_CPPv4IDp0EN10libmolgrid15ManagedGridBase7resizedE11ManagedGridI5Dtype7NumDimsEDp1I"],"libmolgrid::ManagedGridBase::resized::I":[0,5,1,"_CPPv4IDp0EN10libmolgrid15ManagedGridBase7resizedE11ManagedGridI5Dtype7NumDimsEDp1I"],"libmolgrid::ManagedGridBase::resized::sizes":[0,2,1,"_CPPv4IDp0EN10libmolgrid15ManagedGridBase7resizedE11ManagedGridI5Dtype7NumDimsEDp1I"],"libmolgrid::ManagedGridBase::size":[0,1,1,"_CPPv4NK10libmolgrid15ManagedGridBase4sizeEv"],"libmolgrid::ManagedGridBase::tocpu":[0,1,1,"_CPPv4NK10libmolgrid15ManagedGridBase5tocpuEb"],"libmolgrid::ManagedGridBase::tocpu::dotransfer":[0,2,1,"_CPPv4NK10libmolgrid15ManagedGridBase5tocpuEb"],"libmolgrid::ManagedGridBase::togpu":[0,1,1,"_CPPv4NK10libmolgrid15ManagedGridBase5togpuEb"],"libmolgrid::ManagedGridBase::togpu::dotransfer":[0,2,1,"_CPPv4NK10libmolgrid15ManagedGridBase5togpuEb"],"libmolgrid::ManagedGridBase::type":[0,4,1,"_CPPv4N10libmolgrid15ManagedGridBase4typeE"],"libmolgrid::MappedAtomIndexTyper":[0,0,1,"_CPPv4I00EN10libmolgrid20MappedAtomIndexTyperE"],"libmolgrid::MappedAtomIndexTyper::MappedAtomIndexTyper":[0,1,1,"_CPPv4N10libmolgrid20MappedAtomIndexTyper20MappedAtomIndexTyperERK6MapperRK5Typer"],"libmolgrid::MappedAtomIndexTyper::MappedAtomIndexTyper::map":[0,2,1,"_CPPv4N10libmolgrid20MappedAtomIndexTyper20MappedAtomIndexTyperERK6MapperRK5Typer"],"libmolgrid::MappedAtomIndexTyper::MappedAtomIndexTyper::typr":[0,2,1,"_CPPv4N10libmolgrid20MappedAtomIndexTyper20MappedAtomIndexTyperERK6MapperRK5Typer"],"libmolgrid::MappedAtomIndexTyper::Mapper":[0,5,1,"_CPPv4I00EN10libmolgrid20MappedAtomIndexTyperE"],"libmolgrid::MappedAtomIndexTyper::Typer":[0,5,1,"_CPPv4I00EN10libmolgrid20MappedAtomIndexTyperE"],"libmolgrid::MappedAtomIndexTyper::get_atom_type_index":[0,1,1,"_CPPv4NK10libmolgrid20MappedAtomIndexTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE"],"libmolgrid::MappedAtomIndexTyper::get_atom_type_index::a":[0,2,1,"_CPPv4NK10libmolgrid20MappedAtomIndexTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE"],"libmolgrid::MappedAtomIndexTyper::get_atom_type_vector":[0,1,1,"_CPPv4NK10libmolgrid20MappedAtomIndexTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::MappedAtomIndexTyper::get_atom_type_vector::a":[0,2,1,"_CPPv4NK10libmolgrid20MappedAtomIndexTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::MappedAtomIndexTyper::get_atom_type_vector::typ":[0,2,1,"_CPPv4NK10libmolgrid20MappedAtomIndexTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::MappedAtomIndexTyper::get_int_type":[0,1,1,"_CPPv4NK10libmolgrid20MappedAtomIndexTyper12get_int_typeEi"],"libmolgrid::MappedAtomIndexTyper::get_int_type::t":[0,2,1,"_CPPv4NK10libmolgrid20MappedAtomIndexTyper12get_int_typeEi"],"libmolgrid::MappedAtomIndexTyper::get_type_names":[0,1,1,"_CPPv4NK10libmolgrid20MappedAtomIndexTyper14get_type_namesEv"],"libmolgrid::MappedAtomIndexTyper::get_type_radii":[0,1,1,"_CPPv4NK10libmolgrid20MappedAtomIndexTyper14get_type_radiiEv"],"libmolgrid::MappedAtomIndexTyper::is_vector_typer":[0,1,1,"_CPPv4NK10libmolgrid20MappedAtomIndexTyper15is_vector_typerEv"],"libmolgrid::MappedAtomIndexTyper::num_types":[0,1,1,"_CPPv4NK10libmolgrid20MappedAtomIndexTyper9num_typesEv"],"libmolgrid::MappedAtomIndexTyper::set_names":[0,1,1,"_CPPv4N10libmolgrid20MappedAtomIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::MappedAtomIndexTyper::set_names::names":[0,2,1,"_CPPv4N10libmolgrid20MappedAtomIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::MappedAtomIndexTyper::set_names::ntypes":[0,2,1,"_CPPv4N10libmolgrid20MappedAtomIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::MappedAtomIndexTyper::set_names::type_names":[0,2,1,"_CPPv4N10libmolgrid20MappedAtomIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::MappedAtomIndexTyper::~MappedAtomIndexTyper":[0,1,1,"_CPPv4N10libmolgrid20MappedAtomIndexTyperD0Ev"],"libmolgrid::NullIndexTyper":[0,0,1,"_CPPv4N10libmolgrid14NullIndexTyperE"],"libmolgrid::NullIndexTyper::NullIndexTyper":[0,1,1,"_CPPv4N10libmolgrid14NullIndexTyper14NullIndexTyperEv"],"libmolgrid::NullIndexTyper::get_atom_type_index":[0,1,1,"_CPPv4NK10libmolgrid14NullIndexTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE"],"libmolgrid::NullIndexTyper::get_atom_type_index::a":[0,2,1,"_CPPv4NK10libmolgrid14NullIndexTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE"],"libmolgrid::NullIndexTyper::get_atom_type_vector":[0,1,1,"_CPPv4NK10libmolgrid14NullIndexTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::NullIndexTyper::get_atom_type_vector::a":[0,2,1,"_CPPv4NK10libmolgrid14NullIndexTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::NullIndexTyper::get_atom_type_vector::typ":[0,2,1,"_CPPv4NK10libmolgrid14NullIndexTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::NullIndexTyper::get_int_type":[0,1,1,"_CPPv4NK10libmolgrid14NullIndexTyper12get_int_typeEi"],"libmolgrid::NullIndexTyper::get_int_type::t":[0,2,1,"_CPPv4NK10libmolgrid14NullIndexTyper12get_int_typeEi"],"libmolgrid::NullIndexTyper::get_type_names":[0,1,1,"_CPPv4NK10libmolgrid14NullIndexTyper14get_type_namesEv"],"libmolgrid::NullIndexTyper::get_type_radii":[0,1,1,"_CPPv4NK10libmolgrid14NullIndexTyper14get_type_radiiEv"],"libmolgrid::NullIndexTyper::is_vector_typer":[0,1,1,"_CPPv4NK10libmolgrid14NullIndexTyper15is_vector_typerEv"],"libmolgrid::NullIndexTyper::num_types":[0,1,1,"_CPPv4NK10libmolgrid14NullIndexTyper9num_typesEv"],"libmolgrid::NullIndexTyper::set_names":[0,1,1,"_CPPv4N10libmolgrid14NullIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::NullIndexTyper::set_names::names":[0,2,1,"_CPPv4N10libmolgrid14NullIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::NullIndexTyper::set_names::ntypes":[0,2,1,"_CPPv4N10libmolgrid14NullIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::NullIndexTyper::set_names::type_names":[0,2,1,"_CPPv4N10libmolgrid14NullIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::NullIndexTyper::~NullIndexTyper":[0,1,1,"_CPPv4N10libmolgrid14NullIndexTyperD0Ev"],"libmolgrid::Quaternion":[0,0,1,"_CPPv4N10libmolgrid10QuaternionE"],"libmolgrid::Quaternion::Quaternion":[0,1,1,"_CPPv4N10libmolgrid10Quaternion10QuaternionEv"],"libmolgrid::Quaternion::Quaternion::A":[0,2,1,"_CPPv4N10libmolgrid10Quaternion10QuaternionE2fl2fl2fl2fl"],"libmolgrid::Quaternion::Quaternion::B":[0,2,1,"_CPPv4N10libmolgrid10Quaternion10QuaternionE2fl2fl2fl2fl"],"libmolgrid::Quaternion::Quaternion::C":[0,2,1,"_CPPv4N10libmolgrid10Quaternion10QuaternionE2fl2fl2fl2fl"],"libmolgrid::Quaternion::Quaternion::D":[0,2,1,"_CPPv4N10libmolgrid10Quaternion10QuaternionE2fl2fl2fl2fl"],"libmolgrid::Quaternion::R_component_1":[0,1,1,"_CPPv4NK10libmolgrid10Quaternion13R_component_1Ev"],"libmolgrid::Quaternion::R_component_2":[0,1,1,"_CPPv4NK10libmolgrid10Quaternion13R_component_2Ev"],"libmolgrid::Quaternion::R_component_3":[0,1,1,"_CPPv4NK10libmolgrid10Quaternion13R_component_3Ev"],"libmolgrid::Quaternion::R_component_4":[0,1,1,"_CPPv4NK10libmolgrid10Quaternion13R_component_4Ev"],"libmolgrid::Quaternion::conj":[0,1,1,"_CPPv4NK10libmolgrid10Quaternion4conjEv"],"libmolgrid::Quaternion::fl":[0,4,1,"_CPPv4N10libmolgrid10Quaternion2flE"],"libmolgrid::Quaternion::inverse":[0,1,1,"_CPPv4NK10libmolgrid10Quaternion7inverseEv"],"libmolgrid::Quaternion::norm":[0,1,1,"_CPPv4NK10libmolgrid10Quaternion4normEv"],"libmolgrid::Quaternion::operator*":[0,1,1,"_CPPv4NK10libmolgrid10QuaternionmlERK10Quaternion"],"libmolgrid::Quaternion::operator*::r":[0,2,1,"_CPPv4NK10libmolgrid10QuaternionmlERK10Quaternion"],"libmolgrid::Quaternion::operator*=":[0,1,1,"_CPPv4N10libmolgrid10QuaternionmLERK2fl"],"libmolgrid::Quaternion::operator*=::r":[0,2,1,"_CPPv4N10libmolgrid10QuaternionmLERK2fl"],"libmolgrid::Quaternion::operator/":[0,1,1,"_CPPv4N10libmolgrid10QuaterniondvERK2fl"],"libmolgrid::Quaternion::operator/::r":[0,2,1,"_CPPv4N10libmolgrid10QuaterniondvERK2fl"],"libmolgrid::Quaternion::operator/=":[0,1,1,"_CPPv4N10libmolgrid10QuaterniondVERK2fl"],"libmolgrid::Quaternion::operator/=::r":[0,2,1,"_CPPv4N10libmolgrid10QuaterniondVERK2fl"],"libmolgrid::Quaternion::operator==":[0,1,1,"_CPPv4NK10libmolgrid10QuaternioneqERK10Quaternion"],"libmolgrid::Quaternion::operator==::r":[0,2,1,"_CPPv4NK10libmolgrid10QuaternioneqERK10Quaternion"],"libmolgrid::Quaternion::real":[0,1,1,"_CPPv4NK10libmolgrid10Quaternion4realEv"],"libmolgrid::Quaternion::rotate":[0,1,1,"_CPPv4NK10libmolgrid10Quaternion6rotateE2fl2fl2fl"],"libmolgrid::Quaternion::rotate::x":[0,2,1,"_CPPv4NK10libmolgrid10Quaternion6rotateE2fl2fl2fl"],"libmolgrid::Quaternion::rotate::y":[0,2,1,"_CPPv4NK10libmolgrid10Quaternion6rotateE2fl2fl2fl"],"libmolgrid::Quaternion::rotate::z":[0,2,1,"_CPPv4NK10libmolgrid10Quaternion6rotateE2fl2fl2fl"],"libmolgrid::Quaternion::transform":[0,1,1,"_CPPv4NK10libmolgrid10Quaternion9transformE2fl2fl2fl6float36float3"],"libmolgrid::Quaternion::transform::center":[0,2,1,"_CPPv4NK10libmolgrid10Quaternion9transformE2fl2fl2fl6float36float3"],"libmolgrid::Quaternion::transform::translate":[0,2,1,"_CPPv4NK10libmolgrid10Quaternion9transformE2fl2fl2fl6float36float3"],"libmolgrid::Quaternion::transform::x":[0,2,1,"_CPPv4NK10libmolgrid10Quaternion9transformE2fl2fl2fl6float36float3"],"libmolgrid::Quaternion::transform::y":[0,2,1,"_CPPv4NK10libmolgrid10Quaternion9transformE2fl2fl2fl6float36float3"],"libmolgrid::Quaternion::transform::z":[0,2,1,"_CPPv4NK10libmolgrid10Quaternion9transformE2fl2fl2fl6float36float3"],"libmolgrid::ReceptorStratifiedExampleRefProvider":[0,0,1,"_CPPv4I0_iEN10libmolgrid36ReceptorStratifiedExampleRefProviderE"],"libmolgrid::ReceptorStratifiedExampleRefProvider::K":[0,5,1,"_CPPv4I0_iEN10libmolgrid36ReceptorStratifiedExampleRefProviderE"],"libmolgrid::ReceptorStratifiedExampleRefProvider::Provider":[0,5,1,"_CPPv4I0_iEN10libmolgrid36ReceptorStratifiedExampleRefProviderE"],"libmolgrid::ReceptorStratifiedExampleRefProvider::ReceptorStratifiedExampleRefProvider":[0,1,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider36ReceptorStratifiedExampleRefProviderEv"],"libmolgrid::ReceptorStratifiedExampleRefProvider::ReceptorStratifiedExampleRefProvider::settings":[0,2,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider36ReceptorStratifiedExampleRefProviderERK23ExampleProviderSettings"],"libmolgrid::ReceptorStratifiedExampleRefProvider::addref":[0,1,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider6addrefERK10ExampleRef"],"libmolgrid::ReceptorStratifiedExampleRefProvider::addref::ex":[0,2,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider6addrefERK10ExampleRef"],"libmolgrid::ReceptorStratifiedExampleRefProvider::check_batch_size":[0,1,1,"_CPPv4NK10libmolgrid36ReceptorStratifiedExampleRefProvider16check_batch_sizeEj"],"libmolgrid::ReceptorStratifiedExampleRefProvider::check_batch_size::bsize":[0,2,1,"_CPPv4NK10libmolgrid36ReceptorStratifiedExampleRefProvider16check_batch_sizeEj"],"libmolgrid::ReceptorStratifiedExampleRefProvider::currenti":[0,3,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider8currentiE"],"libmolgrid::ReceptorStratifiedExampleRefProvider::currentk":[0,3,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider8currentkE"],"libmolgrid::ReceptorStratifiedExampleRefProvider::examples":[0,3,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider8examplesE"],"libmolgrid::ReceptorStratifiedExampleRefProvider::get_large_epoch_num":[0,1,1,"_CPPv4NK10libmolgrid36ReceptorStratifiedExampleRefProvider19get_large_epoch_numEv"],"libmolgrid::ReceptorStratifiedExampleRefProvider::get_small_epoch_num":[0,1,1,"_CPPv4NK10libmolgrid36ReceptorStratifiedExampleRefProvider19get_small_epoch_numEv"],"libmolgrid::ReceptorStratifiedExampleRefProvider::has_group":[0,1,1,"_CPPv4NK10libmolgrid36ReceptorStratifiedExampleRefProvider9has_groupEv"],"libmolgrid::ReceptorStratifiedExampleRefProvider::large_epoch_size":[0,1,1,"_CPPv4NK10libmolgrid36ReceptorStratifiedExampleRefProvider16large_epoch_sizeEv"],"libmolgrid::ReceptorStratifiedExampleRefProvider::nextref":[0,1,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider7nextrefER10ExampleRef"],"libmolgrid::ReceptorStratifiedExampleRefProvider::nextref::ex":[0,2,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider7nextrefER10ExampleRef"],"libmolgrid::ReceptorStratifiedExampleRefProvider::num_labels":[0,1,1,"_CPPv4NK10libmolgrid36ReceptorStratifiedExampleRefProvider10num_labelsEv"],"libmolgrid::ReceptorStratifiedExampleRefProvider::param":[0,3,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider5paramE"],"libmolgrid::ReceptorStratifiedExampleRefProvider::populate":[0,1,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider8populateERNSt7istreamEi"],"libmolgrid::ReceptorStratifiedExampleRefProvider::populate::lines":[0,2,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider8populateERNSt7istreamEi"],"libmolgrid::ReceptorStratifiedExampleRefProvider::populate::numlabels":[0,2,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider8populateERNSt7istreamEi"],"libmolgrid::ReceptorStratifiedExampleRefProvider::randomize":[0,3,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider9randomizeE"],"libmolgrid::ReceptorStratifiedExampleRefProvider::recmap":[0,3,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider6recmapE"],"libmolgrid::ReceptorStratifiedExampleRefProvider::reset":[0,1,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider5resetEv"],"libmolgrid::ReceptorStratifiedExampleRefProvider::setup":[0,1,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider5setupEv"],"libmolgrid::ReceptorStratifiedExampleRefProvider::size":[0,1,1,"_CPPv4NK10libmolgrid36ReceptorStratifiedExampleRefProvider4sizeEv"],"libmolgrid::ReceptorStratifiedExampleRefProvider::small_epoch_size":[0,1,1,"_CPPv4NK10libmolgrid36ReceptorStratifiedExampleRefProvider16small_epoch_sizeEv"],"libmolgrid::SamplingExampleRefProvider":[0,0,1,"_CPPv4I00EN10libmolgrid26SamplingExampleRefProviderE"],"libmolgrid::SamplingExampleRefProvider::Provider1":[0,5,1,"_CPPv4I00EN10libmolgrid26SamplingExampleRefProviderE"],"libmolgrid::SamplingExampleRefProvider::Provider2":[0,5,1,"_CPPv4I00EN10libmolgrid26SamplingExampleRefProviderE"],"libmolgrid::SamplingExampleRefProvider::R":[0,3,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider1RE"],"libmolgrid::SamplingExampleRefProvider::SamplingExampleRefProvider":[0,1,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider26SamplingExampleRefProviderEv"],"libmolgrid::SamplingExampleRefProvider::SamplingExampleRefProvider::P1":[0,2,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider26SamplingExampleRefProviderERK23ExampleProviderSettings9Provider19Provider2d"],"libmolgrid::SamplingExampleRefProvider::SamplingExampleRefProvider::P2":[0,2,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider26SamplingExampleRefProviderERK23ExampleProviderSettings9Provider19Provider2d"],"libmolgrid::SamplingExampleRefProvider::SamplingExampleRefProvider::settings":[0,2,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider26SamplingExampleRefProviderERK23ExampleProviderSettings9Provider19Provider2d"],"libmolgrid::SamplingExampleRefProvider::SamplingExampleRefProvider::srate":[0,2,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider26SamplingExampleRefProviderERK23ExampleProviderSettings9Provider19Provider2d"],"libmolgrid::SamplingExampleRefProvider::addref":[0,1,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider6addrefERK10ExampleRef"],"libmolgrid::SamplingExampleRefProvider::addref::ex":[0,2,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider6addrefERK10ExampleRef"],"libmolgrid::SamplingExampleRefProvider::check_batch_size":[0,1,1,"_CPPv4NK10libmolgrid26SamplingExampleRefProvider16check_batch_sizeEj"],"libmolgrid::SamplingExampleRefProvider::check_batch_size::bsize":[0,2,1,"_CPPv4NK10libmolgrid26SamplingExampleRefProvider16check_batch_sizeEj"],"libmolgrid::SamplingExampleRefProvider::get_large_epoch_num":[0,1,1,"_CPPv4NK10libmolgrid26SamplingExampleRefProvider19get_large_epoch_numEv"],"libmolgrid::SamplingExampleRefProvider::get_small_epoch_num":[0,1,1,"_CPPv4NK10libmolgrid26SamplingExampleRefProvider19get_small_epoch_numEv"],"libmolgrid::SamplingExampleRefProvider::has_group":[0,1,1,"_CPPv4NK10libmolgrid26SamplingExampleRefProvider9has_groupEv"],"libmolgrid::SamplingExampleRefProvider::large_epoch_size":[0,1,1,"_CPPv4NK10libmolgrid26SamplingExampleRefProvider16large_epoch_sizeEv"],"libmolgrid::SamplingExampleRefProvider::nextref":[0,1,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider7nextrefER10ExampleRef"],"libmolgrid::SamplingExampleRefProvider::nextref::ex":[0,2,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider7nextrefER10ExampleRef"],"libmolgrid::SamplingExampleRefProvider::num_labels":[0,1,1,"_CPPv4NK10libmolgrid26SamplingExampleRefProvider10num_labelsEv"],"libmolgrid::SamplingExampleRefProvider::p1":[0,3,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider2p1E"],"libmolgrid::SamplingExampleRefProvider::p2":[0,3,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider2p2E"],"libmolgrid::SamplingExampleRefProvider::populate":[0,1,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider8populateERNSt7istreamEi"],"libmolgrid::SamplingExampleRefProvider::populate::lines":[0,2,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider8populateERNSt7istreamEi"],"libmolgrid::SamplingExampleRefProvider::populate::numlabels":[0,2,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider8populateERNSt7istreamEi"],"libmolgrid::SamplingExampleRefProvider::reset":[0,1,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider5resetEv"],"libmolgrid::SamplingExampleRefProvider::sample_rate":[0,3,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider11sample_rateE"],"libmolgrid::SamplingExampleRefProvider::setup":[0,1,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider5setupEv"],"libmolgrid::SamplingExampleRefProvider::size":[0,1,1,"_CPPv4NK10libmolgrid26SamplingExampleRefProvider4sizeEv"],"libmolgrid::SamplingExampleRefProvider::small_epoch_size":[0,1,1,"_CPPv4NK10libmolgrid26SamplingExampleRefProvider16small_epoch_sizeEv"],"libmolgrid::StringCache":[0,0,1,"_CPPv4N10libmolgrid11StringCacheE"],"libmolgrid::StringCache::get":[0,1,1,"_CPPv4N10libmolgrid11StringCache3getERKNSt6stringE"],"libmolgrid::StringCache::get::s":[0,2,1,"_CPPv4N10libmolgrid11StringCache3getERKNSt6stringE"],"libmolgrid::StringCache::strings":[0,3,1,"_CPPv4N10libmolgrid11StringCache7stringsE"],"libmolgrid::SubsetAtomMapper":[0,0,1,"_CPPv4N10libmolgrid16SubsetAtomMapperE"],"libmolgrid::SubsetAtomMapper::SubsetAtomMapper":[0,1,1,"_CPPv4N10libmolgrid16SubsetAtomMapper16SubsetAtomMapperERKNSt6vectorIiEEbRKNSt6vectorINSt6stringEEE"],"libmolgrid::SubsetAtomMapper::SubsetAtomMapper::include_catchall":[0,2,1,"_CPPv4N10libmolgrid16SubsetAtomMapper16SubsetAtomMapperERKNSt6vectorIiEEbRKNSt6vectorINSt6stringEEE"],"libmolgrid::SubsetAtomMapper::SubsetAtomMapper::map":[0,2,1,"_CPPv4N10libmolgrid16SubsetAtomMapper16SubsetAtomMapperERKNSt6vectorIiEEbRKNSt6vectorINSt6stringEEE"],"libmolgrid::SubsetAtomMapper::SubsetAtomMapper::old_names":[0,2,1,"_CPPv4N10libmolgrid16SubsetAtomMapper16SubsetAtomMapperERKNSt6vectorIiEEbRKNSt6vectorINSt6stringEEE"],"libmolgrid::SubsetAtomMapper::default_type":[0,3,1,"_CPPv4N10libmolgrid16SubsetAtomMapper12default_typeE"],"libmolgrid::SubsetAtomMapper::get_new_type":[0,1,1,"_CPPv4NK10libmolgrid16SubsetAtomMapper12get_new_typeEj"],"libmolgrid::SubsetAtomMapper::get_new_type::origt":[0,2,1,"_CPPv4NK10libmolgrid16SubsetAtomMapper12get_new_typeEj"],"libmolgrid::SubsetAtomMapper::get_type_names":[0,1,1,"_CPPv4NK10libmolgrid16SubsetAtomMapper14get_type_namesEv"],"libmolgrid::SubsetAtomMapper::new_type_names":[0,3,1,"_CPPv4N10libmolgrid16SubsetAtomMapper14new_type_namesE"],"libmolgrid::SubsetAtomMapper::num_new_types":[0,3,1,"_CPPv4N10libmolgrid16SubsetAtomMapper13num_new_typesE"],"libmolgrid::SubsetAtomMapper::num_types":[0,1,1,"_CPPv4NK10libmolgrid16SubsetAtomMapper9num_typesEv"],"libmolgrid::SubsetAtomMapper::old2new":[0,3,1,"_CPPv4N10libmolgrid16SubsetAtomMapper7old2newE"],"libmolgrid::SubsettedElementTyper":[0,0,1,"_CPPv4N10libmolgrid21SubsettedElementTyperE"],"libmolgrid::SubsettedElementTyper::SubsettedElementTyper":[0,1,1,"_CPPv4N10libmolgrid21SubsettedElementTyper21SubsettedElementTyperERKNSt6vectorIiEEbj"],"libmolgrid::SubsettedElementTyper::SubsettedElementTyper::etyper":[0,2,1,"_CPPv4N10libmolgrid21SubsettedElementTyper21SubsettedElementTyperERK17ElementIndexTyperRKNSt6vectorIiEEb"],"libmolgrid::SubsettedElementTyper::SubsettedElementTyper::include_catchall":[0,2,1,"_CPPv4N10libmolgrid21SubsettedElementTyper21SubsettedElementTyperERKNSt6vectorIiEEbj"],"libmolgrid::SubsettedElementTyper::SubsettedElementTyper::map":[0,2,1,"_CPPv4N10libmolgrid21SubsettedElementTyper21SubsettedElementTyperERKNSt6vectorIiEEbj"],"libmolgrid::SubsettedElementTyper::SubsettedElementTyper::maxe":[0,2,1,"_CPPv4N10libmolgrid21SubsettedElementTyper21SubsettedElementTyperERKNSt6vectorIiEEbj"],"libmolgrid::SubsettedElementTyper::get_atom_type_index":[0,1,1,"_CPPv4NK10libmolgrid21SubsettedElementTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE"],"libmolgrid::SubsettedElementTyper::get_atom_type_index::a":[0,2,1,"_CPPv4NK10libmolgrid21SubsettedElementTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE"],"libmolgrid::SubsettedElementTyper::get_atom_type_vector":[0,1,1,"_CPPv4NK10libmolgrid21SubsettedElementTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::SubsettedElementTyper::get_atom_type_vector::a":[0,2,1,"_CPPv4NK10libmolgrid21SubsettedElementTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::SubsettedElementTyper::get_atom_type_vector::typ":[0,2,1,"_CPPv4NK10libmolgrid21SubsettedElementTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::SubsettedElementTyper::get_int_type":[0,1,1,"_CPPv4NK10libmolgrid21SubsettedElementTyper12get_int_typeEi"],"libmolgrid::SubsettedElementTyper::get_int_type::t":[0,2,1,"_CPPv4NK10libmolgrid21SubsettedElementTyper12get_int_typeEi"],"libmolgrid::SubsettedElementTyper::get_type_names":[0,1,1,"_CPPv4NK10libmolgrid21SubsettedElementTyper14get_type_namesEv"],"libmolgrid::SubsettedElementTyper::get_type_radii":[0,1,1,"_CPPv4NK10libmolgrid21SubsettedElementTyper14get_type_radiiEv"],"libmolgrid::SubsettedElementTyper::is_vector_typer":[0,1,1,"_CPPv4NK10libmolgrid21SubsettedElementTyper15is_vector_typerEv"],"libmolgrid::SubsettedElementTyper::num_types":[0,1,1,"_CPPv4NK10libmolgrid21SubsettedElementTyper9num_typesEv"],"libmolgrid::SubsettedElementTyper::set_names":[0,1,1,"_CPPv4N10libmolgrid21SubsettedElementTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::SubsettedElementTyper::set_names::names":[0,2,1,"_CPPv4N10libmolgrid21SubsettedElementTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::SubsettedElementTyper::set_names::ntypes":[0,2,1,"_CPPv4N10libmolgrid21SubsettedElementTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::SubsettedElementTyper::set_names::type_names":[0,2,1,"_CPPv4N10libmolgrid21SubsettedElementTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::SubsettedGninaTyper":[0,0,1,"_CPPv4N10libmolgrid19SubsettedGninaTyperE"],"libmolgrid::SubsettedGninaTyper::SubsettedGninaTyper":[0,1,1,"_CPPv4N10libmolgrid19SubsettedGninaTyper19SubsettedGninaTyperERKNSt6vectorIiEEbb"],"libmolgrid::SubsettedGninaTyper::SubsettedGninaTyper::etyper":[0,2,1,"_CPPv4N10libmolgrid19SubsettedGninaTyper19SubsettedGninaTyperERK15GninaIndexTyperRKNSt6vectorIiEEb"],"libmolgrid::SubsettedGninaTyper::SubsettedGninaTyper::include_catchall":[0,2,1,"_CPPv4N10libmolgrid19SubsettedGninaTyper19SubsettedGninaTyperERKNSt6vectorIiEEbb"],"libmolgrid::SubsettedGninaTyper::SubsettedGninaTyper::map":[0,2,1,"_CPPv4N10libmolgrid19SubsettedGninaTyper19SubsettedGninaTyperERKNSt6vectorIiEEbb"],"libmolgrid::SubsettedGninaTyper::SubsettedGninaTyper::usec":[0,2,1,"_CPPv4N10libmolgrid19SubsettedGninaTyper19SubsettedGninaTyperERKNSt6vectorIiEEbb"],"libmolgrid::SubsettedGninaTyper::get_atom_type_index":[0,1,1,"_CPPv4NK10libmolgrid19SubsettedGninaTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE"],"libmolgrid::SubsettedGninaTyper::get_atom_type_index::a":[0,2,1,"_CPPv4NK10libmolgrid19SubsettedGninaTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE"],"libmolgrid::SubsettedGninaTyper::get_atom_type_vector":[0,1,1,"_CPPv4NK10libmolgrid19SubsettedGninaTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::SubsettedGninaTyper::get_atom_type_vector::a":[0,2,1,"_CPPv4NK10libmolgrid19SubsettedGninaTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::SubsettedGninaTyper::get_atom_type_vector::typ":[0,2,1,"_CPPv4NK10libmolgrid19SubsettedGninaTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE"],"libmolgrid::SubsettedGninaTyper::get_int_type":[0,1,1,"_CPPv4NK10libmolgrid19SubsettedGninaTyper12get_int_typeEi"],"libmolgrid::SubsettedGninaTyper::get_int_type::t":[0,2,1,"_CPPv4NK10libmolgrid19SubsettedGninaTyper12get_int_typeEi"],"libmolgrid::SubsettedGninaTyper::get_type_names":[0,1,1,"_CPPv4NK10libmolgrid19SubsettedGninaTyper14get_type_namesEv"],"libmolgrid::SubsettedGninaTyper::get_type_radii":[0,1,1,"_CPPv4NK10libmolgrid19SubsettedGninaTyper14get_type_radiiEv"],"libmolgrid::SubsettedGninaTyper::is_vector_typer":[0,1,1,"_CPPv4NK10libmolgrid19SubsettedGninaTyper15is_vector_typerEv"],"libmolgrid::SubsettedGninaTyper::num_types":[0,1,1,"_CPPv4NK10libmolgrid19SubsettedGninaTyper9num_typesEv"],"libmolgrid::SubsettedGninaTyper::set_names":[0,1,1,"_CPPv4N10libmolgrid19SubsettedGninaTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::SubsettedGninaTyper::set_names::names":[0,2,1,"_CPPv4N10libmolgrid19SubsettedGninaTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::SubsettedGninaTyper::set_names::ntypes":[0,2,1,"_CPPv4N10libmolgrid19SubsettedGninaTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::SubsettedGninaTyper::set_names::type_names":[0,2,1,"_CPPv4N10libmolgrid19SubsettedGninaTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE"],"libmolgrid::Transform":[0,0,1,"_CPPv4N10libmolgrid9TransformE"],"libmolgrid::Transform::Q":[0,3,1,"_CPPv4N10libmolgrid9Transform1QE"],"libmolgrid::Transform::Transform":[0,1,1,"_CPPv4N10libmolgrid9Transform9TransformEv"],"libmolgrid::Transform::Transform::c":[0,2,1,"_CPPv4N10libmolgrid9Transform9TransformERK10Quaternion6float36float3"],"libmolgrid::Transform::Transform::q":[0,2,1,"_CPPv4N10libmolgrid9Transform9TransformERK10Quaternion6float36float3"],"libmolgrid::Transform::Transform::random_rotate":[0,2,1,"_CPPv4N10libmolgrid9Transform9TransformE6float3fb"],"libmolgrid::Transform::Transform::random_translate":[0,2,1,"_CPPv4N10libmolgrid9Transform9TransformE6float3fb"],"libmolgrid::Transform::Transform::t":[0,2,1,"_CPPv4N10libmolgrid9Transform9TransformERK10Quaternion6float36float3"],"libmolgrid::Transform::backward":[0,1,1,"_CPPv4I0ENK10libmolgrid9Transform8backwardEvRK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEEb"],"libmolgrid::Transform::backward::Dtype":[0,5,1,"_CPPv4I0ENK10libmolgrid9Transform8backwardEvRK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEEb"],"libmolgrid::Transform::backward::dotranslate":[0,2,1,"_CPPv4I0ENK10libmolgrid9Transform8backwardEvRK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEEb"],"libmolgrid::Transform::backward::in":[0,2,1,"_CPPv4I0ENK10libmolgrid9Transform8backwardEvRK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEEb"],"libmolgrid::Transform::backward::out":[0,2,1,"_CPPv4I0ENK10libmolgrid9Transform8backwardEvRK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEEb"],"libmolgrid::Transform::center":[0,3,1,"_CPPv4N10libmolgrid9Transform6centerE"],"libmolgrid::Transform::checkGrids":[0,1,1,"_CPPv4I0_bENK10libmolgrid9Transform10checkGridsEvRK4GridI5DtypeXL2EE6isCUDAERK4GridI5DtypeXL2EE6isCUDAE"],"libmolgrid::Transform::checkGrids::Dtype":[0,5,1,"_CPPv4I0_bENK10libmolgrid9Transform10checkGridsEvRK4GridI5DtypeXL2EE6isCUDAERK4GridI5DtypeXL2EE6isCUDAE"],"libmolgrid::Transform::checkGrids::in":[0,2,1,"_CPPv4I0_bENK10libmolgrid9Transform10checkGridsEvRK4GridI5DtypeXL2EE6isCUDAERK4GridI5DtypeXL2EE6isCUDAE"],"libmolgrid::Transform::checkGrids::isCUDA":[0,5,1,"_CPPv4I0_bENK10libmolgrid9Transform10checkGridsEvRK4GridI5DtypeXL2EE6isCUDAERK4GridI5DtypeXL2EE6isCUDAE"],"libmolgrid::Transform::checkGrids::out":[0,2,1,"_CPPv4I0_bENK10libmolgrid9Transform10checkGridsEvRK4GridI5DtypeXL2EE6isCUDAERK4GridI5DtypeXL2EE6isCUDAE"],"libmolgrid::Transform::forward":[0,1,1,"_CPPv4NK10libmolgrid9Transform7forwardERK7ExampleR7Exampleb"],"libmolgrid::Transform::forward::Dtype":[0,5,1,"_CPPv4I0ENK10libmolgrid9Transform7forwardEvRK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEEb"],"libmolgrid::Transform::forward::dotranslate":[0,2,1,"_CPPv4NK10libmolgrid9Transform7forwardERK7ExampleR7Exampleb"],"libmolgrid::Transform::forward::in":[0,2,1,"_CPPv4NK10libmolgrid9Transform7forwardERK7ExampleR7Exampleb"],"libmolgrid::Transform::forward::out":[0,2,1,"_CPPv4NK10libmolgrid9Transform7forwardERK7ExampleR7Exampleb"],"libmolgrid::Transform::get_quaternion":[0,1,1,"_CPPv4NK10libmolgrid9Transform14get_quaternionEv"],"libmolgrid::Transform::get_rotation_center":[0,1,1,"_CPPv4NK10libmolgrid9Transform19get_rotation_centerEv"],"libmolgrid::Transform::get_translation":[0,1,1,"_CPPv4NK10libmolgrid9Transform15get_translationEv"],"libmolgrid::Transform::is_identity":[0,1,1,"_CPPv4NK10libmolgrid9Transform11is_identityEv"],"libmolgrid::Transform::set_quaternion":[0,1,1,"_CPPv4N10libmolgrid9Transform14set_quaternionERK10Quaternion"],"libmolgrid::Transform::set_quaternion::q":[0,2,1,"_CPPv4N10libmolgrid9Transform14set_quaternionERK10Quaternion"],"libmolgrid::Transform::set_rotation_center":[0,1,1,"_CPPv4N10libmolgrid9Transform19set_rotation_centerE6float3"],"libmolgrid::Transform::set_rotation_center::c":[0,2,1,"_CPPv4N10libmolgrid9Transform19set_rotation_centerE6float3"],"libmolgrid::Transform::set_translation":[0,1,1,"_CPPv4N10libmolgrid9Transform15set_translationE6float3"],"libmolgrid::Transform::set_translation::t":[0,2,1,"_CPPv4N10libmolgrid9Transform15set_translationE6float3"],"libmolgrid::Transform::translate":[0,3,1,"_CPPv4N10libmolgrid9Transform9translateE"],"libmolgrid::UniformExampleRefProvider":[0,0,1,"_CPPv4N10libmolgrid25UniformExampleRefProviderE"],"libmolgrid::UniformExampleRefProvider::UniformExampleRefProvider":[0,1,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider25UniformExampleRefProviderEv"],"libmolgrid::UniformExampleRefProvider::UniformExampleRefProvider::settings":[0,2,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider25UniformExampleRefProviderERK23ExampleProviderSettings"],"libmolgrid::UniformExampleRefProvider::addref":[0,1,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider6addrefERK10ExampleRef"],"libmolgrid::UniformExampleRefProvider::addref::ex":[0,2,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider6addrefERK10ExampleRef"],"libmolgrid::UniformExampleRefProvider::all":[0,3,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider3allE"],"libmolgrid::UniformExampleRefProvider::check_batch_size":[0,1,1,"_CPPv4NK10libmolgrid25UniformExampleRefProvider16check_batch_sizeEj"],"libmolgrid::UniformExampleRefProvider::check_batch_size::bsize":[0,2,1,"_CPPv4NK10libmolgrid25UniformExampleRefProvider16check_batch_sizeEj"],"libmolgrid::UniformExampleRefProvider::current":[0,3,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider7currentE"],"libmolgrid::UniformExampleRefProvider::current_copy":[0,3,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider12current_copyE"],"libmolgrid::UniformExampleRefProvider::epoch":[0,3,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider5epochE"],"libmolgrid::UniformExampleRefProvider::get_large_epoch_num":[0,1,1,"_CPPv4NK10libmolgrid25UniformExampleRefProvider19get_large_epoch_numEv"],"libmolgrid::UniformExampleRefProvider::get_small_epoch_num":[0,1,1,"_CPPv4NK10libmolgrid25UniformExampleRefProvider19get_small_epoch_numEv"],"libmolgrid::UniformExampleRefProvider::has_group":[0,1,1,"_CPPv4NK10libmolgrid25UniformExampleRefProvider9has_groupEv"],"libmolgrid::UniformExampleRefProvider::large_epoch_size":[0,1,1,"_CPPv4NK10libmolgrid25UniformExampleRefProvider16large_epoch_sizeEv"],"libmolgrid::UniformExampleRefProvider::ncopies":[0,3,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider7ncopiesE"],"libmolgrid::UniformExampleRefProvider::nextref":[0,1,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider7nextrefER10ExampleRef"],"libmolgrid::UniformExampleRefProvider::nextref::ex":[0,2,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider7nextrefER10ExampleRef"],"libmolgrid::UniformExampleRefProvider::nlabels":[0,3,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider7nlabelsE"],"libmolgrid::UniformExampleRefProvider::num_labels":[0,1,1,"_CPPv4NK10libmolgrid25UniformExampleRefProvider10num_labelsEv"],"libmolgrid::UniformExampleRefProvider::operator[]":[0,1,1,"_CPPv4NK10libmolgrid25UniformExampleRefProviderixE6size_t"],"libmolgrid::UniformExampleRefProvider::operator[]::idx":[0,2,1,"_CPPv4NK10libmolgrid25UniformExampleRefProviderixE6size_t"],"libmolgrid::UniformExampleRefProvider::populate":[0,1,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider8populateERNSt7istreamEi"],"libmolgrid::UniformExampleRefProvider::populate::lines":[0,2,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider8populateERNSt7istreamEi"],"libmolgrid::UniformExampleRefProvider::populate::numlabels":[0,2,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider8populateERNSt7istreamEi"],"libmolgrid::UniformExampleRefProvider::randomize":[0,3,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider9randomizeE"],"libmolgrid::UniformExampleRefProvider::reset":[0,1,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider5resetEv"],"libmolgrid::UniformExampleRefProvider::setup":[0,1,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider5setupEv"],"libmolgrid::UniformExampleRefProvider::size":[0,1,1,"_CPPv4NK10libmolgrid25UniformExampleRefProvider4sizeEv"],"libmolgrid::UniformExampleRefProvider::small_epoch_size":[0,1,1,"_CPPv4NK10libmolgrid25UniformExampleRefProvider16small_epoch_sizeEv"],"libmolgrid::ValueStratifiedExampleRefProfider":[0,0,1,"_CPPv4I0EN10libmolgrid33ValueStratifiedExampleRefProfiderE"],"libmolgrid::ValueStratifiedExampleRefProfider::Provider":[0,5,1,"_CPPv4I0EN10libmolgrid33ValueStratifiedExampleRefProfiderE"],"libmolgrid::ValueStratifiedExampleRefProfider::ValueStratifiedExampleRefProfider":[0,1,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider33ValueStratifiedExampleRefProfiderEv"],"libmolgrid::ValueStratifiedExampleRefProfider::ValueStratifiedExampleRefProfider::parm":[0,2,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider33ValueStratifiedExampleRefProfiderERK23ExampleProviderSettings"],"libmolgrid::ValueStratifiedExampleRefProfider::addref":[0,1,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider6addrefERK10ExampleRef"],"libmolgrid::ValueStratifiedExampleRefProfider::addref::ex":[0,2,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider6addrefERK10ExampleRef"],"libmolgrid::ValueStratifiedExampleRefProfider::bin":[0,1,1,"_CPPv4NK10libmolgrid33ValueStratifiedExampleRefProfider3binEd"],"libmolgrid::ValueStratifiedExampleRefProfider::bin::val":[0,2,1,"_CPPv4NK10libmolgrid33ValueStratifiedExampleRefProfider3binEd"],"libmolgrid::ValueStratifiedExampleRefProfider::check_batch_size":[0,1,1,"_CPPv4NK10libmolgrid33ValueStratifiedExampleRefProfider16check_batch_sizeEj"],"libmolgrid::ValueStratifiedExampleRefProfider::check_batch_size::bsize":[0,2,1,"_CPPv4NK10libmolgrid33ValueStratifiedExampleRefProfider16check_batch_sizeEj"],"libmolgrid::ValueStratifiedExampleRefProfider::currenti":[0,3,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider8currentiE"],"libmolgrid::ValueStratifiedExampleRefProfider::examples":[0,3,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider8examplesE"],"libmolgrid::ValueStratifiedExampleRefProfider::get_large_epoch_num":[0,1,1,"_CPPv4NK10libmolgrid33ValueStratifiedExampleRefProfider19get_large_epoch_numEv"],"libmolgrid::ValueStratifiedExampleRefProfider::get_small_epoch_num":[0,1,1,"_CPPv4NK10libmolgrid33ValueStratifiedExampleRefProfider19get_small_epoch_numEv"],"libmolgrid::ValueStratifiedExampleRefProfider::has_group":[0,1,1,"_CPPv4NK10libmolgrid33ValueStratifiedExampleRefProfider9has_groupEv"],"libmolgrid::ValueStratifiedExampleRefProfider::large_epoch_size":[0,1,1,"_CPPv4NK10libmolgrid33ValueStratifiedExampleRefProfider16large_epoch_sizeEv"],"libmolgrid::ValueStratifiedExampleRefProfider::max":[0,3,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider3maxE"],"libmolgrid::ValueStratifiedExampleRefProfider::min":[0,3,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider3minE"],"libmolgrid::ValueStratifiedExampleRefProfider::nextref":[0,1,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider7nextrefER10ExampleRef"],"libmolgrid::ValueStratifiedExampleRefProfider::nextref::ex":[0,2,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider7nextrefER10ExampleRef"],"libmolgrid::ValueStratifiedExampleRefProfider::num_labels":[0,1,1,"_CPPv4NK10libmolgrid33ValueStratifiedExampleRefProfider10num_labelsEv"],"libmolgrid::ValueStratifiedExampleRefProfider::populate":[0,1,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider8populateERNSt7istreamEi"],"libmolgrid::ValueStratifiedExampleRefProfider::populate::lines":[0,2,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider8populateERNSt7istreamEi"],"libmolgrid::ValueStratifiedExampleRefProfider::populate::numlabels":[0,2,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider8populateERNSt7istreamEi"],"libmolgrid::ValueStratifiedExampleRefProfider::reset":[0,1,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider5resetEv"],"libmolgrid::ValueStratifiedExampleRefProfider::setup":[0,1,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider5setupEv"],"libmolgrid::ValueStratifiedExampleRefProfider::size":[0,1,1,"_CPPv4NK10libmolgrid33ValueStratifiedExampleRefProfider4sizeEv"],"libmolgrid::ValueStratifiedExampleRefProfider::small_epoch_size":[0,1,1,"_CPPv4NK10libmolgrid33ValueStratifiedExampleRefProfider16small_epoch_sizeEv"],"libmolgrid::ValueStratifiedExampleRefProfider::step":[0,3,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider4stepE"],"libmolgrid::ValueStratifiedExampleRefProfider::use_abs":[0,3,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider7use_absE"],"libmolgrid::ValueStratifiedExampleRefProfider::valpos":[0,3,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider6valposE"],"libmolgrid::mgrid_buffer_data":[0,0,1,"_CPPv4I0EN10libmolgrid17mgrid_buffer_dataE"],"libmolgrid::mgrid_buffer_data::Dtype":[0,5,1,"_CPPv4I0EN10libmolgrid17mgrid_buffer_dataE"],"libmolgrid::mgrid_buffer_data::gpu_ptr":[0,3,1,"_CPPv4N10libmolgrid17mgrid_buffer_data7gpu_ptrE"],"libmolgrid::mgrid_buffer_data::sent_to_gpu":[0,3,1,"_CPPv4N10libmolgrid17mgrid_buffer_data11sent_to_gpuE"]}},objnames:{"0":["cpp","class","C++ class"],"1":["cpp","function","C++ function"],"2":["cpp","functionParam","C++ function parameter"],"3":["cpp","member","C++ member"],"4":["cpp","type","C++ type"],"5":["cpp","templateParam","C++ template parameter"],"6":["cpp","enum","C++ enum"],"7":["cpp","enumerator","C++ enumerator"]},objtypes:{"0":"cpp:class","1":"cpp:function","2":"cpp:functionParam","3":"cpp:member","4":"cpp:type","5":"cpp:templateParam","6":"cpp:enum","7":"cpp:enumerator"},terms:{"abstract":0,"boolean":0,"case":0,"char":0,"const":0,"default":0,"enum":0,"final":0,"float":0,"function":0,"int":0,"new":0,"null":0,"public":0,"return":0,"static":0,"switch":0,"true":0,"void":0,"while":0,For:0,There:0,These:0,Use:0,Used:0,Will:0,__device__:0,__global__:0,__host__:0,about:0,absolut:0,acceptor:0,access:0,accord:0,accumul:0,accumulate_atom_gradi:0,accur:0,across:0,activ:0,ad_depth:0,ad_heteroatom:0,ad_radiu:0,ad_solv:0,ad_volum:0,add:0,added:0,addh:0,addit:0,addref:0,address:0,adnam:0,affin:0,again:0,agrad:0,aliphaticcarbonxshydrophob:0,aliphaticcarbonxsnonhydrophob:0,all:0,alloc:0,along:0,alreadi:0,also:0,although:0,alwai:0,angstrom:0,ani:0,anum:0,anyth:0,appli:0,applic:0,appriori:0,appropri:0,argument:0,aromat:0,aromaticcarbonxshydrophob:0,aromaticcarbonxsnonhydrophob:0,around:0,arrai:0,assign:0,at_new_epoch:0,atom:0,atom_density_grad_grad:0,atom_density_grad_grad_oth:0,atom_diffdiff:0,atom_gradi:0,atomic_gradi:0,atomindextyperfunc:0,atomvectortyperfunc:0,attempt:0,attribut:0,auto:0,autodock4:0,avail:0,averag:0,avoid:0,axi:0,back:0,backward:0,backward_gradi:0,backward_relev:0,balanc:0,balanced_provid:0,base:0,base_t:0,basic:0,batch:0,batch_siz:0,been:0,befor:0,begin:0,behavior:0,being:0,between:0,bin:0,binari:0,bit:0,bool:0,booliean:0,boost:0,boron:0,bound:0,bracket:0,bromin:0,bsize:0,buffer:0,cach:0,cache_map:0,cache_struct:0,calc_atom_gradient_cpu:0,calc_atom_relevance_cpu:0,calc_point:0,calc_type_gradient_cpu:0,calcium:0,calcul:0,callback:0,callbacktyp:0,can:0,carbon:0,care:0,carefulli:0,cart2grid:0,cartesian:0,cast:0,caution:0,caylei:0,center:0,center_:0,chang:0,channel:0,charact:0,check:0,check_batch_s:0,checkgrid:0,chem:0,chlorin:0,clearli:0,clone:0,code:0,collect:0,column:0,combin:0,common:0,compil:0,complet:0,compon:0,comput:0,configur:0,conj:0,conjug:0,consist:0,constexpr:0,construct:0,constructor:0,consum:0,contain:0,content:0,contructor:0,conveni:0,convert:0,coord:0,coord_cach:0,coord_set:0,coordin:0,copi:0,copyfrom:0,copyinto:0,copyto:0,core:0,correspond:0,count_typ:0,coval:0,covalent_radiu:0,cpu:0,cpu_grid_t:0,creat:0,createprovid:0,cross:0,cubic:0,cuda:0,cuda_callable_memb:0,cuda_device_memb:0,current:0,current_copi:0,current_group:0,current_group_index:0,current_t:0,currenti:0,currentk:0,cutoff:0,danger:0,data:0,data_root:0,dataset:0,debug:0,declar:0,decoi:0,decompos:0,deep:0,default_data:0,default_radiu:0,default_typ:0,dens:0,densiti:0,density_grad_dist:0,densitygrid:0,densityrad:0,depend:0,deriv:0,descript:0,desir:0,dest:0,destcuda:0,detect:0,determin:0,devic:0,diff:0,diffdiff:0,differ:0,diffgrid:0,dimens:0,directli:0,directori:0,dist:0,distinct:0,divis:0,divison:0,doe:0,done:0,donor:0,dotransf:0,dotransl:0,doubl:0,dtype:0,due:0,dummi:0,dump:0,duplicate_pos:0,dure:0,each:0,effici:0,either:0,element:0,empti:0,enabl:0,enable_if:0,encod:0,end:0,entireti:0,enumer:0,epoch:0,equal:0,etyp:0,euclidean:0,eventu:0,everi:0,exchang:0,exist:0,expans:0,expect:0,explicit:0,explicitli:0,extern:0,extra:0,extract:0,extract_label:0,extractor:0,factor:0,fail:0,fals:0,fastest:0,few:0,fewer:0,field:0,file:0,filenam:0,fill:0,fill_zero:0,first:0,fix:0,float3:0,fluorin:0,fname:0,follow:0,format:0,forward:0,frame:0,frame_group:0,friend:0,friendli:0,from:0,gaussian:0,gener:0,genericatom:0,genericmet:0,get:0,get_atom_type_index:0,get_atom_type_vector:0,get_binari:0,get_bounds_1d:0,get_dimens:0,get_extractor:0,get_first_dim:0,get_grid_dim:0,get_grid_origin:0,get_info:0,get_int_typ:0,get_large_epoch_num:0,get_new_typ:0,get_provid:0,get_quaternion:0,get_radii_type_index:0,get_radiusmultipl:0,get_resolut:0,get_rotation_cent:0,get_small_epoch_num:0,get_transl:0,get_type_nam:0,get_type_radii:0,get_vector_type_radii:0,given:0,gnina:0,gnina_type_nam:0,goe:0,good:0,gpu:0,gpu_grid_t:0,gpu_ptr:0,gradient:0,greater:0,grid1f:0,grid1fcuda:0,grid2cart:0,grid2f:0,grid2fcuda:0,grid_:0,grid_cent:0,grid_coord:0,grid_origin:0,gridval:0,grm:0,group:0,happen:0,has:0,has_group:0,has_index_typ:0,has_indexed_typ:0,has_vector_typ:0,hasgroup:0,have:0,home:0,host:0,hot:0,how:0,hydrogen:0,hydrophob:0,ids:0,idx:0,ignor:0,implement:0,impos:0,includ:0,include_catchal:0,include_dummy_typ:0,incur:0,index:0,infin:0,inform:0,iniit:0,init_set:0,initi:0,inlin:0,input:0,instead:0,interpol:0,invalid:0,invers:0,iodin:0,iostream:0,iron:0,is_ident:0,is_vector_typ:0,iscuda:0,isn:0,istream:0,iter:0,its:0,itself:0,ityp:0,kernel:0,kind:0,label:0,labelpo:0,lack:0,larg:0,large_epoch_s:0,last:0,last_elem:0,last_epoch:0,layout:0,least:0,legaci:0,less:0,level:0,lifetim:0,lig:0,ligand:0,line:0,linear:0,list:0,load:0,locat:0,longer:0,look:0,magnesium:0,mai:0,maintain:0,major:0,make_float3:0,make_vector_typ:0,manag:0,managed_t:0,manganes:0,mani:0,map:0,mapped_file_sourc:0,mapper:0,match:0,max:0,max_typ:0,maxgroups:0,maxim:0,maximum:0,maxt:0,mean:0,mem:0,member:0,memcach:0,memori:0,merg:0,merge_coordin:0,mergeinto:0,merger:0,method:0,mgrid1f:0,mgrid2f:0,min:0,mirror:0,mol:0,molcach:0,molcache2:0,molecul:0,molecular:0,molgriddataparamet:0,more:0,most:0,multipl:0,multipli:0,must:0,name:0,nan:0,narrow:0,natom:0,ncopi:0,necessari:0,need:0,neg:0,new_type_nam:0,next:0,next_act:0,next_batch:0,next_decoi:0,nextref:0,nitrogen:0,nitrogenxsacceptor:0,nitrogenxsdonor:0,nitrogenxsdonoracceptor:0,nlabel:0,non:0,none:0,norm:0,note:0,ntype:0,nullptr:0,num_act:0,num_coordin:0,num_decoi:0,num_label:0,num_new_typ:0,num_typ:0,number:0,numdim:0,numer:0,numlabel:0,numtyp:0,nxl:0,ob_partialcharg:0,obatom:0,object:0,obmol:0,occur:0,offset:0,old2new:0,old:0,old_nam:0,old_type_nam:0,old_type_to_new_typ:0,onc:0,oncpu:0,one:0,ongpu:0,onli:0,onto:0,openbabel:0,oper:0,optim:0,option:0,order:0,organ:0,origin_:0,origt:0,ostream:0,otherwis:0,out:0,over:0,overhead:0,overlap:0,overwritten:0,own:0,oxygen:0,oxygenxsacceptor:0,oxygenxsdonor:0,oxygenxsdonoracceptor:0,pad:0,page:0,pair:0,param:0,paramet:0,parm:0,pars:0,part:0,particularli:0,partit:0,pass:0,path:0,per:0,perform:0,permit:0,phosphoru:0,place:0,point:0,pointer:0,polarhydrogen:0,popul:0,posit:0,possibl:0,potenti:0,precalcul:0,precis:0,precomput:0,predetermin:0,prefix:0,prepend:0,present:0,presum:0,previou:0,prior:0,privat:0,probabl:0,process:0,properli:0,properti:0,proton:0,provid:0,provider1:0,provider2:0,ptr:0,quadrat:0,quit:0,r_component_1:0,r_component_2:0,r_component_3:0,r_component_4:0,radii:0,radiifromtyp:0,radiu:0,random:0,random_rot:0,random_transl:0,ratio:0,read:0,real:0,realli:0,realloc:0,rec:0,recalcul:0,receptor:0,recmap:0,recommend:0,reduc:0,ref:0,refer:0,relev:0,repeat:0,repres:0,represent:0,requir:0,res:0,reset:0,resiz:0,resolut:0,resolution_:0,result:0,reus:0,rhs:0,rnn:0,root:0,rotat:0,round:0,row:0,rscale:0,rti:0,run:0,safe:0,same:0,sampl:0,sample_r:0,scalar:0,scale:0,search:0,second:0,seen:0,sent_to_gpu:0,separ:0,seqcont:0,seri:0,set:0,set_atom:0,set_atom_gradi:0,set_atom_relev:0,set_atom_type_grad_grad:0,set_atom_type_gradi:0,set_binari:0,set_buff:0,set_coord:0,set_dimens:0,set_nam:0,set_num_typ:0,set_quaternion:0,set_radii_type_index:0,set_resolut:0,set_rotation_cent:0,set_transl:0,setup:0,shape:0,shared_ptr:0,should:0,shuffl:0,side:0,simul:0,singl:0,size:0,size_lik:0,size_t:0,sizeof:0,skip:0,slight:0,small:0,small_epoch_s:0,smina_nam:0,some:0,sourc:0,space:0,spatial:0,special:0,specif:0,specifi:0,squar:0,srate:0,src:0,srccuda:0,standard:0,start:0,state:0,std:0,step:0,store:0,stratif:0,stream:0,string:0,struct:0,subclass:0,subgrid_t:0,subset:0,substanti:0,sulfur:0,sulfuracceptor:0,sum:0,sum_typ:0,support:0,surject:0,syntax:0,take:0,templat:0,than:0,thei:0,thi:0,through:0,time:0,tindex:0,tocpu:0,togpu:0,too:0,total:0,train:0,transfer:0,translat:0,travers:0,truncat:0,tutori:0,two:0,txn:0,typ:0,type:0,type_diffdiff:0,type_grad_grad:0,type_gradi:0,type_index:0,type_nam:0,type_radii:0,type_vec:0,type_vector:0,typedef:0,typenam:0,typer:0,typic:0,typr:0,uint2:0,unbalanc:0,uncheck:0,undefin:0,underli:0,unifi:0,uniform_real_distribut:0,uniformli:0,uniqu:0,unique_index_typ:0,unique_indexed_typ:0,unique_typ:0,univers:0,unknown:0,unless:0,unnecessari:0,unordered_map:0,unordered_set:0,unreal:0,unsign:0,unspecifi:0,until:0,usag:0,use:0,use_ab:0,use_cach:0,use_coval:0,usec:0,used:0,user:0,uses:0,using:0,val:0,valpo:0,valu:0,vari:0,variant:0,vector:0,versa:0,vice:0,view:0,virtual:0,vtype:0,vtype_nam:0,wai:0,when:0,where:0,which:0,whose:0,wise:0,without:0,won:0,wrap:0,wrapper:0,write:0,xs_acceptor:0,xs_donor:0,xs_hydrophob:0,xs_radiu:0,you:0,zero:0,zerofirst:0,zinc:0},titles:["libmolgrid C++ API Documentation"],titleterms:{"class":0,The:0,api:0,atomindextyp:0,atomindextypemapp:0,atomtyp:0,atomvectortyp:0,balancedexamplerefprovid:0,callbackindextyp:0,callbackvectortyp:0,cartesiangrid:0,coordcach:0,coordinateset:0,doc:0,document:0,elementindextyp:0,exampl:0,exampleextractor:0,exampleprovid:0,exampleproviderset:0,exampleref:0,examplerefprovid:0,fileatommapp:0,filemappedelementtyp:0,filemappedgninatyp:0,gninaindextyp:0,gninavectortyp:0,grid:0,gridmak:0,groupedexamplerefprovid:0,indic:0,info:0,libmolgrid:0,managedgrid:0,managedgridbas:0,mappedatomindextyp:0,mgrid_buffer_data:0,nullindextyp:0,quaternion:0,receptorstratifiedexamplerefprovid:0,samplingexamplerefprovid:0,stringcach:0,subsetatommapp:0,subsettedelementtyp:0,subsettedgninatyp:0,tabl:0,transform:0,uniformexamplerefprovid:0,valuestratifiedexamplerefprofid:0}}) \ No newline at end of file +Search.setIndex({docnames:["index"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":4,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":3,"sphinx.domains.rst":2,"sphinx.domains.std":2,sphinx:56},filenames:["index.rst"],objects:{"":[[0,0,1,"_CPPv4N10libmolgrid19AtomIndexTypeMapperE","libmolgrid::AtomIndexTypeMapper"],[0,1,1,"_CPPv4N10libmolgrid19AtomIndexTypeMapper19AtomIndexTypeMapperEv","libmolgrid::AtomIndexTypeMapper::AtomIndexTypeMapper"],[0,1,1,"_CPPv4NK10libmolgrid19AtomIndexTypeMapper12get_new_typeEj","libmolgrid::AtomIndexTypeMapper::get_new_type"],[0,2,1,"_CPPv4NK10libmolgrid19AtomIndexTypeMapper12get_new_typeEj","libmolgrid::AtomIndexTypeMapper::get_new_type::origt"],[0,1,1,"_CPPv4NK10libmolgrid19AtomIndexTypeMapper14get_type_namesEv","libmolgrid::AtomIndexTypeMapper::get_type_names"],[0,1,1,"_CPPv4NK10libmolgrid19AtomIndexTypeMapper9num_typesEv","libmolgrid::AtomIndexTypeMapper::num_types"],[0,1,1,"_CPPv4N10libmolgrid19AtomIndexTypeMapperD0Ev","libmolgrid::AtomIndexTypeMapper::~AtomIndexTypeMapper"],[0,0,1,"_CPPv4N10libmolgrid14AtomIndexTyperE","libmolgrid::AtomIndexTyper"],[0,1,1,"_CPPv4N10libmolgrid14AtomIndexTyper14AtomIndexTyperEv","libmolgrid::AtomIndexTyper::AtomIndexTyper"],[0,1,1,"_CPPv4NK10libmolgrid14AtomIndexTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE","libmolgrid::AtomIndexTyper::get_atom_type_index"],[0,2,1,"_CPPv4NK10libmolgrid14AtomIndexTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE","libmolgrid::AtomIndexTyper::get_atom_type_index::a"],[0,1,1,"_CPPv4NK10libmolgrid14AtomIndexTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::AtomIndexTyper::get_atom_type_vector"],[0,2,1,"_CPPv4NK10libmolgrid14AtomIndexTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::AtomIndexTyper::get_atom_type_vector::a"],[0,2,1,"_CPPv4NK10libmolgrid14AtomIndexTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::AtomIndexTyper::get_atom_type_vector::typ"],[0,1,1,"_CPPv4NK10libmolgrid14AtomIndexTyper12get_int_typeEi","libmolgrid::AtomIndexTyper::get_int_type"],[0,2,1,"_CPPv4NK10libmolgrid14AtomIndexTyper12get_int_typeEi","libmolgrid::AtomIndexTyper::get_int_type::t"],[0,1,1,"_CPPv4NK10libmolgrid14AtomIndexTyper14get_type_namesEv","libmolgrid::AtomIndexTyper::get_type_names"],[0,1,1,"_CPPv4NK10libmolgrid14AtomIndexTyper14get_type_radiiEv","libmolgrid::AtomIndexTyper::get_type_radii"],[0,1,1,"_CPPv4NK10libmolgrid14AtomIndexTyper15is_vector_typerEv","libmolgrid::AtomIndexTyper::is_vector_typer"],[0,1,1,"_CPPv4NK10libmolgrid14AtomIndexTyper9num_typesEv","libmolgrid::AtomIndexTyper::num_types"],[0,1,1,"_CPPv4N10libmolgrid14AtomIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::AtomIndexTyper::set_names"],[0,2,1,"_CPPv4N10libmolgrid14AtomIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::AtomIndexTyper::set_names::names"],[0,2,1,"_CPPv4N10libmolgrid14AtomIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::AtomIndexTyper::set_names::ntypes"],[0,2,1,"_CPPv4N10libmolgrid14AtomIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::AtomIndexTyper::set_names::type_names"],[0,1,1,"_CPPv4N10libmolgrid14AtomIndexTyperD0Ev","libmolgrid::AtomIndexTyper::~AtomIndexTyper"],[0,0,1,"_CPPv4N10libmolgrid9AtomTyperE","libmolgrid::AtomTyper"],[0,1,1,"_CPPv4N10libmolgrid9AtomTyper9AtomTyperEv","libmolgrid::AtomTyper::AtomTyper"],[0,1,1,"_CPPv4NK10libmolgrid9AtomTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE","libmolgrid::AtomTyper::get_atom_type_index"],[0,2,1,"_CPPv4NK10libmolgrid9AtomTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE","libmolgrid::AtomTyper::get_atom_type_index::a"],[0,1,1,"_CPPv4NK10libmolgrid9AtomTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::AtomTyper::get_atom_type_vector"],[0,2,1,"_CPPv4NK10libmolgrid9AtomTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::AtomTyper::get_atom_type_vector::a"],[0,2,1,"_CPPv4NK10libmolgrid9AtomTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::AtomTyper::get_atom_type_vector::typ"],[0,1,1,"_CPPv4NK10libmolgrid9AtomTyper12get_int_typeEi","libmolgrid::AtomTyper::get_int_type"],[0,2,1,"_CPPv4NK10libmolgrid9AtomTyper12get_int_typeEi","libmolgrid::AtomTyper::get_int_type::t"],[0,1,1,"_CPPv4NK10libmolgrid9AtomTyper14get_type_namesEv","libmolgrid::AtomTyper::get_type_names"],[0,1,1,"_CPPv4NK10libmolgrid9AtomTyper15is_vector_typerEv","libmolgrid::AtomTyper::is_vector_typer"],[0,1,1,"_CPPv4NK10libmolgrid9AtomTyper9num_typesEv","libmolgrid::AtomTyper::num_types"],[0,1,1,"_CPPv4N10libmolgrid9AtomTyperD0Ev","libmolgrid::AtomTyper::~AtomTyper"],[0,0,1,"_CPPv4N10libmolgrid15AtomVectorTyperE","libmolgrid::AtomVectorTyper"],[0,1,1,"_CPPv4N10libmolgrid15AtomVectorTyper15AtomVectorTyperEv","libmolgrid::AtomVectorTyper::AtomVectorTyper"],[0,1,1,"_CPPv4NK10libmolgrid15AtomVectorTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE","libmolgrid::AtomVectorTyper::get_atom_type_index"],[0,2,1,"_CPPv4NK10libmolgrid15AtomVectorTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE","libmolgrid::AtomVectorTyper::get_atom_type_index::a"],[0,1,1,"_CPPv4NK10libmolgrid15AtomVectorTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::AtomVectorTyper::get_atom_type_vector"],[0,2,1,"_CPPv4NK10libmolgrid15AtomVectorTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::AtomVectorTyper::get_atom_type_vector::a"],[0,2,1,"_CPPv4NK10libmolgrid15AtomVectorTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::AtomVectorTyper::get_atom_type_vector::typ"],[0,1,1,"_CPPv4NK10libmolgrid15AtomVectorTyper12get_int_typeEi","libmolgrid::AtomVectorTyper::get_int_type"],[0,2,1,"_CPPv4NK10libmolgrid15AtomVectorTyper12get_int_typeEi","libmolgrid::AtomVectorTyper::get_int_type::t"],[0,1,1,"_CPPv4NK10libmolgrid15AtomVectorTyper14get_type_namesEv","libmolgrid::AtomVectorTyper::get_type_names"],[0,1,1,"_CPPv4NK10libmolgrid15AtomVectorTyper21get_vector_type_radiiEv","libmolgrid::AtomVectorTyper::get_vector_type_radii"],[0,1,1,"_CPPv4NK10libmolgrid15AtomVectorTyper15is_vector_typerEv","libmolgrid::AtomVectorTyper::is_vector_typer"],[0,1,1,"_CPPv4NK10libmolgrid15AtomVectorTyper9num_typesEv","libmolgrid::AtomVectorTyper::num_types"],[0,1,1,"_CPPv4N10libmolgrid15AtomVectorTyperD0Ev","libmolgrid::AtomVectorTyper::~AtomVectorTyper"],[0,0,1,"_CPPv4N10libmolgrid26BalancedExampleRefProviderE","libmolgrid::BalancedExampleRefProvider"],[0,1,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider26BalancedExampleRefProviderERK23ExampleProviderSettings","libmolgrid::BalancedExampleRefProvider::BalancedExampleRefProvider"],[0,1,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider26BalancedExampleRefProviderEv","libmolgrid::BalancedExampleRefProvider::BalancedExampleRefProvider"],[0,2,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider26BalancedExampleRefProviderERK23ExampleProviderSettings","libmolgrid::BalancedExampleRefProvider::BalancedExampleRefProvider::settings"],[0,3,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider7activesE","libmolgrid::BalancedExampleRefProvider::actives"],[0,1,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider6addrefERK10ExampleRef","libmolgrid::BalancedExampleRefProvider::addref"],[0,2,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider6addrefERK10ExampleRef","libmolgrid::BalancedExampleRefProvider::addref::ex"],[0,1,1,"_CPPv4NK10libmolgrid26BalancedExampleRefProvider16check_batch_sizeEj","libmolgrid::BalancedExampleRefProvider::check_batch_size"],[0,2,1,"_CPPv4NK10libmolgrid26BalancedExampleRefProvider16check_batch_sizeEj","libmolgrid::BalancedExampleRefProvider::check_batch_size::bsize"],[0,3,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider7currentE","libmolgrid::BalancedExampleRefProvider::current"],[0,3,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider6decoysE","libmolgrid::BalancedExampleRefProvider::decoys"],[0,1,1,"_CPPv4NK10libmolgrid26BalancedExampleRefProvider19get_large_epoch_numEv","libmolgrid::BalancedExampleRefProvider::get_large_epoch_num"],[0,1,1,"_CPPv4NK10libmolgrid26BalancedExampleRefProvider19get_small_epoch_numEv","libmolgrid::BalancedExampleRefProvider::get_small_epoch_num"],[0,1,1,"_CPPv4NK10libmolgrid26BalancedExampleRefProvider9has_groupEv","libmolgrid::BalancedExampleRefProvider::has_group"],[0,3,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider8labelposE","libmolgrid::BalancedExampleRefProvider::labelpos"],[0,1,1,"_CPPv4NK10libmolgrid26BalancedExampleRefProvider16large_epoch_sizeEv","libmolgrid::BalancedExampleRefProvider::large_epoch_size"],[0,1,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider11next_activeER10ExampleRef","libmolgrid::BalancedExampleRefProvider::next_active"],[0,2,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider11next_activeER10ExampleRef","libmolgrid::BalancedExampleRefProvider::next_active::ex"],[0,1,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider10next_decoyER10ExampleRef","libmolgrid::BalancedExampleRefProvider::next_decoy"],[0,2,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider10next_decoyER10ExampleRef","libmolgrid::BalancedExampleRefProvider::next_decoy::ex"],[0,1,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider7nextrefER10ExampleRef","libmolgrid::BalancedExampleRefProvider::nextref"],[0,2,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider7nextrefER10ExampleRef","libmolgrid::BalancedExampleRefProvider::nextref::ex"],[0,1,1,"_CPPv4NK10libmolgrid26BalancedExampleRefProvider11num_activesEv","libmolgrid::BalancedExampleRefProvider::num_actives"],[0,1,1,"_CPPv4NK10libmolgrid26BalancedExampleRefProvider10num_decoysEv","libmolgrid::BalancedExampleRefProvider::num_decoys"],[0,1,1,"_CPPv4NK10libmolgrid26BalancedExampleRefProvider10num_labelsEv","libmolgrid::BalancedExampleRefProvider::num_labels"],[0,1,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider8populateERNSt7istreamEi","libmolgrid::BalancedExampleRefProvider::populate"],[0,2,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider8populateERNSt7istreamEi","libmolgrid::BalancedExampleRefProvider::populate::lines"],[0,2,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider8populateERNSt7istreamEi","libmolgrid::BalancedExampleRefProvider::populate::numlabels"],[0,1,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider5resetEv","libmolgrid::BalancedExampleRefProvider::reset"],[0,1,1,"_CPPv4N10libmolgrid26BalancedExampleRefProvider5setupEv","libmolgrid::BalancedExampleRefProvider::setup"],[0,1,1,"_CPPv4NK10libmolgrid26BalancedExampleRefProvider4sizeEv","libmolgrid::BalancedExampleRefProvider::size"],[0,1,1,"_CPPv4NK10libmolgrid26BalancedExampleRefProvider16small_epoch_sizeEv","libmolgrid::BalancedExampleRefProvider::small_epoch_size"],[0,0,1,"_CPPv4N10libmolgrid18CallbackIndexTyperE","libmolgrid::CallbackIndexTyper"],[0,4,1,"_CPPv4N10libmolgrid18CallbackIndexTyper18AtomIndexTyperFuncE","libmolgrid::CallbackIndexTyper::AtomIndexTyperFunc"],[0,1,1,"_CPPv4N10libmolgrid18CallbackIndexTyper18CallbackIndexTyperE18AtomIndexTyperFuncjRKNSt6vectorINSt6stringEEE","libmolgrid::CallbackIndexTyper::CallbackIndexTyper"],[0,2,1,"_CPPv4N10libmolgrid18CallbackIndexTyper18CallbackIndexTyperE18AtomIndexTyperFuncjRKNSt6vectorINSt6stringEEE","libmolgrid::CallbackIndexTyper::CallbackIndexTyper::f"],[0,2,1,"_CPPv4N10libmolgrid18CallbackIndexTyper18CallbackIndexTyperE18AtomIndexTyperFuncjRKNSt6vectorINSt6stringEEE","libmolgrid::CallbackIndexTyper::CallbackIndexTyper::names"],[0,2,1,"_CPPv4N10libmolgrid18CallbackIndexTyper18CallbackIndexTyperE18AtomIndexTyperFuncjRKNSt6vectorINSt6stringEEE","libmolgrid::CallbackIndexTyper::CallbackIndexTyper::ntypes"],[0,3,1,"_CPPv4N10libmolgrid18CallbackIndexTyper8callbackE","libmolgrid::CallbackIndexTyper::callback"],[0,3,1,"_CPPv4N10libmolgrid18CallbackIndexTyper14default_radiusE","libmolgrid::CallbackIndexTyper::default_radius"],[0,1,1,"_CPPv4NK10libmolgrid18CallbackIndexTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE","libmolgrid::CallbackIndexTyper::get_atom_type_index"],[0,2,1,"_CPPv4NK10libmolgrid18CallbackIndexTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE","libmolgrid::CallbackIndexTyper::get_atom_type_index::a"],[0,1,1,"_CPPv4NK10libmolgrid18CallbackIndexTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::CallbackIndexTyper::get_atom_type_vector"],[0,2,1,"_CPPv4NK10libmolgrid18CallbackIndexTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::CallbackIndexTyper::get_atom_type_vector::a"],[0,2,1,"_CPPv4NK10libmolgrid18CallbackIndexTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::CallbackIndexTyper::get_atom_type_vector::typ"],[0,1,1,"_CPPv4NK10libmolgrid18CallbackIndexTyper12get_int_typeEi","libmolgrid::CallbackIndexTyper::get_int_type"],[0,2,1,"_CPPv4NK10libmolgrid18CallbackIndexTyper12get_int_typeEi","libmolgrid::CallbackIndexTyper::get_int_type::t"],[0,1,1,"_CPPv4NK10libmolgrid18CallbackIndexTyper14get_type_namesEv","libmolgrid::CallbackIndexTyper::get_type_names"],[0,1,1,"_CPPv4NK10libmolgrid18CallbackIndexTyper14get_type_radiiEv","libmolgrid::CallbackIndexTyper::get_type_radii"],[0,1,1,"_CPPv4NK10libmolgrid18CallbackIndexTyper15is_vector_typerEv","libmolgrid::CallbackIndexTyper::is_vector_typer"],[0,1,1,"_CPPv4NK10libmolgrid18CallbackIndexTyper9num_typesEv","libmolgrid::CallbackIndexTyper::num_types"],[0,1,1,"_CPPv4N10libmolgrid18CallbackIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::CallbackIndexTyper::set_names"],[0,2,1,"_CPPv4N10libmolgrid18CallbackIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::CallbackIndexTyper::set_names::names"],[0,2,1,"_CPPv4N10libmolgrid18CallbackIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::CallbackIndexTyper::set_names::ntypes"],[0,2,1,"_CPPv4N10libmolgrid18CallbackIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::CallbackIndexTyper::set_names::type_names"],[0,3,1,"_CPPv4N10libmolgrid18CallbackIndexTyper10type_namesE","libmolgrid::CallbackIndexTyper::type_names"],[0,0,1,"_CPPv4N10libmolgrid19CallbackVectorTyperE","libmolgrid::CallbackVectorTyper"],[0,4,1,"_CPPv4N10libmolgrid19CallbackVectorTyper19AtomVectorTyperFuncE","libmolgrid::CallbackVectorTyper::AtomVectorTyperFunc"],[0,1,1,"_CPPv4N10libmolgrid19CallbackVectorTyper19CallbackVectorTyperE19AtomVectorTyperFuncjRKNSt6vectorINSt6stringEEE","libmolgrid::CallbackVectorTyper::CallbackVectorTyper"],[0,2,1,"_CPPv4N10libmolgrid19CallbackVectorTyper19CallbackVectorTyperE19AtomVectorTyperFuncjRKNSt6vectorINSt6stringEEE","libmolgrid::CallbackVectorTyper::CallbackVectorTyper::f"],[0,2,1,"_CPPv4N10libmolgrid19CallbackVectorTyper19CallbackVectorTyperE19AtomVectorTyperFuncjRKNSt6vectorINSt6stringEEE","libmolgrid::CallbackVectorTyper::CallbackVectorTyper::names"],[0,2,1,"_CPPv4N10libmolgrid19CallbackVectorTyper19CallbackVectorTyperE19AtomVectorTyperFuncjRKNSt6vectorINSt6stringEEE","libmolgrid::CallbackVectorTyper::CallbackVectorTyper::ntypes"],[0,3,1,"_CPPv4N10libmolgrid19CallbackVectorTyper8callbackE","libmolgrid::CallbackVectorTyper::callback"],[0,1,1,"_CPPv4NK10libmolgrid19CallbackVectorTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE","libmolgrid::CallbackVectorTyper::get_atom_type_index"],[0,2,1,"_CPPv4NK10libmolgrid19CallbackVectorTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE","libmolgrid::CallbackVectorTyper::get_atom_type_index::a"],[0,1,1,"_CPPv4NK10libmolgrid19CallbackVectorTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::CallbackVectorTyper::get_atom_type_vector"],[0,2,1,"_CPPv4NK10libmolgrid19CallbackVectorTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::CallbackVectorTyper::get_atom_type_vector::a"],[0,2,1,"_CPPv4NK10libmolgrid19CallbackVectorTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::CallbackVectorTyper::get_atom_type_vector::typ"],[0,1,1,"_CPPv4NK10libmolgrid19CallbackVectorTyper12get_int_typeEi","libmolgrid::CallbackVectorTyper::get_int_type"],[0,2,1,"_CPPv4NK10libmolgrid19CallbackVectorTyper12get_int_typeEi","libmolgrid::CallbackVectorTyper::get_int_type::t"],[0,1,1,"_CPPv4NK10libmolgrid19CallbackVectorTyper14get_type_namesEv","libmolgrid::CallbackVectorTyper::get_type_names"],[0,1,1,"_CPPv4NK10libmolgrid19CallbackVectorTyper21get_vector_type_radiiEv","libmolgrid::CallbackVectorTyper::get_vector_type_radii"],[0,1,1,"_CPPv4NK10libmolgrid19CallbackVectorTyper15is_vector_typerEv","libmolgrid::CallbackVectorTyper::is_vector_typer"],[0,1,1,"_CPPv4NK10libmolgrid19CallbackVectorTyper9num_typesEv","libmolgrid::CallbackVectorTyper::num_types"],[0,3,1,"_CPPv4N10libmolgrid19CallbackVectorTyper10type_namesE","libmolgrid::CallbackVectorTyper::type_names"],[0,0,1,"_CPPv4I0EN10libmolgrid13CartesianGridE","libmolgrid::CartesianGrid"],[0,1,1,"_CPPv4N10libmolgrid13CartesianGrid13CartesianGridERK1G6float3f","libmolgrid::CartesianGrid::CartesianGrid"],[0,2,1,"_CPPv4N10libmolgrid13CartesianGrid13CartesianGridERK1G6float3f","libmolgrid::CartesianGrid::CartesianGrid::c"],[0,2,1,"_CPPv4N10libmolgrid13CartesianGrid13CartesianGridERK1G6float3f","libmolgrid::CartesianGrid::CartesianGrid::g"],[0,2,1,"_CPPv4N10libmolgrid13CartesianGrid13CartesianGridERK1G6float3f","libmolgrid::CartesianGrid::CartesianGrid::res"],[0,5,1,"_CPPv4I0EN10libmolgrid13CartesianGridE","libmolgrid::CartesianGrid::G"],[0,1,1,"_CPPv4NK10libmolgrid13CartesianGrid9cart2gridEfff","libmolgrid::CartesianGrid::cart2grid"],[0,2,1,"_CPPv4NK10libmolgrid13CartesianGrid9cart2gridEfff","libmolgrid::CartesianGrid::cart2grid::x"],[0,2,1,"_CPPv4NK10libmolgrid13CartesianGrid9cart2gridEfff","libmolgrid::CartesianGrid::cart2grid::y"],[0,2,1,"_CPPv4NK10libmolgrid13CartesianGrid9cart2gridEfff","libmolgrid::CartesianGrid::cart2grid::z"],[0,1,1,"_CPPv4NK10libmolgrid13CartesianGrid6centerEv","libmolgrid::CartesianGrid::center"],[0,3,1,"_CPPv4N10libmolgrid13CartesianGrid7center_E","libmolgrid::CartesianGrid::center_"],[0,3,1,"_CPPv4N10libmolgrid13CartesianGrid10dimensionsE","libmolgrid::CartesianGrid::dimensions"],[0,1,1,"_CPPv4N10libmolgrid13CartesianGrid4gridEv","libmolgrid::CartesianGrid::grid"],[0,1,1,"_CPPv4NK10libmolgrid13CartesianGrid4gridEv","libmolgrid::CartesianGrid::grid"],[0,1,1,"_CPPv4NK10libmolgrid13CartesianGrid9grid2cartEjjj","libmolgrid::CartesianGrid::grid2cart"],[0,2,1,"_CPPv4NK10libmolgrid13CartesianGrid9grid2cartEjjj","libmolgrid::CartesianGrid::grid2cart::i"],[0,2,1,"_CPPv4NK10libmolgrid13CartesianGrid9grid2cartEjjj","libmolgrid::CartesianGrid::grid2cart::j"],[0,2,1,"_CPPv4NK10libmolgrid13CartesianGrid9grid2cartEjjj","libmolgrid::CartesianGrid::grid2cart::k"],[0,3,1,"_CPPv4N10libmolgrid13CartesianGrid5grid_E","libmolgrid::CartesianGrid::grid_"],[0,1,1,"_CPPv4NK10libmolgrid13CartesianGrid11interpolateE6size_tfff","libmolgrid::CartesianGrid::interpolate"],[0,2,1,"_CPPv4NK10libmolgrid13CartesianGrid11interpolateE6size_tfff","libmolgrid::CartesianGrid::interpolate::channel"],[0,2,1,"_CPPv4NK10libmolgrid13CartesianGrid11interpolateE6size_tfff","libmolgrid::CartesianGrid::interpolate::x"],[0,2,1,"_CPPv4NK10libmolgrid13CartesianGrid11interpolateE6size_tfff","libmolgrid::CartesianGrid::interpolate::y"],[0,2,1,"_CPPv4NK10libmolgrid13CartesianGrid11interpolateE6size_tfff","libmolgrid::CartesianGrid::interpolate::z"],[0,3,1,"_CPPv4N10libmolgrid13CartesianGrid7origin_E","libmolgrid::CartesianGrid::origin_"],[0,1,1,"_CPPv4NK10libmolgrid13CartesianGrid10resolutionEv","libmolgrid::CartesianGrid::resolution"],[0,3,1,"_CPPv4N10libmolgrid13CartesianGrid11resolution_E","libmolgrid::CartesianGrid::resolution_"],[0,1,1,"_CPPv4N10libmolgrid13CartesianGridD0Ev","libmolgrid::CartesianGrid::~CartesianGrid"],[0,0,1,"_CPPv4N10libmolgrid10CoordCacheE","libmolgrid::CoordCache"],[0,1,1,"_CPPv4N10libmolgrid10CoordCache10CoordCacheENSt10shared_ptrI9AtomTyperEERK23ExampleProviderSettingsRKNSt6stringE","libmolgrid::CoordCache::CoordCache"],[0,1,1,"_CPPv4N10libmolgrid10CoordCache10CoordCacheEv","libmolgrid::CoordCache::CoordCache"],[0,2,1,"_CPPv4N10libmolgrid10CoordCache10CoordCacheENSt10shared_ptrI9AtomTyperEERK23ExampleProviderSettingsRKNSt6stringE","libmolgrid::CoordCache::CoordCache::mc"],[0,2,1,"_CPPv4N10libmolgrid10CoordCache10CoordCacheENSt10shared_ptrI9AtomTyperEERK23ExampleProviderSettingsRKNSt6stringE","libmolgrid::CoordCache::CoordCache::settings"],[0,2,1,"_CPPv4N10libmolgrid10CoordCache10CoordCacheENSt10shared_ptrI9AtomTyperEERK23ExampleProviderSettingsRKNSt6stringE","libmolgrid::CoordCache::CoordCache::t"],[0,4,1,"_CPPv4N10libmolgrid10CoordCache8MemCacheE","libmolgrid::CoordCache::MemCache"],[0,3,1,"_CPPv4N10libmolgrid10CoordCache4addhE","libmolgrid::CoordCache::addh"],[0,3,1,"_CPPv4N10libmolgrid10CoordCache9cache_mapE","libmolgrid::CoordCache::cache_map"],[0,3,1,"_CPPv4N10libmolgrid10CoordCache9data_rootE","libmolgrid::CoordCache::data_root"],[0,1,1,"_CPPv4NK10libmolgrid10CoordCache14get_type_namesEv","libmolgrid::CoordCache::get_type_names"],[0,3,1,"_CPPv4N10libmolgrid10CoordCache17make_vector_typesE","libmolgrid::CoordCache::make_vector_types"],[0,3,1,"_CPPv4N10libmolgrid10CoordCache8memcacheE","libmolgrid::CoordCache::memcache"],[0,3,1,"_CPPv4N10libmolgrid10CoordCache8molcacheE","libmolgrid::CoordCache::molcache"],[0,1,1,"_CPPv4NK10libmolgrid10CoordCache9num_typesEv","libmolgrid::CoordCache::num_types"],[0,3,1,"_CPPv4N10libmolgrid10CoordCache7offsetsE","libmolgrid::CoordCache::offsets"],[0,1,1,"_CPPv4N10libmolgrid10CoordCache10set_coordsEPKcR13CoordinateSet","libmolgrid::CoordCache::set_coords"],[0,2,1,"_CPPv4N10libmolgrid10CoordCache10set_coordsEPKcR13CoordinateSet","libmolgrid::CoordCache::set_coords::coord"],[0,2,1,"_CPPv4N10libmolgrid10CoordCache10set_coordsEPKcR13CoordinateSet","libmolgrid::CoordCache::set_coords::fname"],[0,3,1,"_CPPv4N10libmolgrid10CoordCache5typerE","libmolgrid::CoordCache::typer"],[0,3,1,"_CPPv4N10libmolgrid10CoordCache9use_cacheE","libmolgrid::CoordCache::use_cache"],[0,1,1,"_CPPv4N10libmolgrid10CoordCacheD0Ev","libmolgrid::CoordCache::~CoordCache"],[0,0,1,"_CPPv4N10libmolgrid13CoordinateSetE","libmolgrid::CoordinateSet"],[0,1,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetEPN9OpenBabel5OBMolE","libmolgrid::CoordinateSet::CoordinateSet"],[0,1,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetEPN9OpenBabel5OBMolERK9AtomTyper","libmolgrid::CoordinateSet::CoordinateSet"],[0,1,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERK10Grid2fCUDARK10Grid1fCUDARK10Grid1fCUDAj","libmolgrid::CoordinateSet::CoordinateSet"],[0,1,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERK10Grid2fCUDARK10Grid2fCUDARK10Grid1fCUDA","libmolgrid::CoordinateSet::CoordinateSet"],[0,1,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERK13CoordinateSetRK13CoordinateSetb","libmolgrid::CoordinateSet::CoordinateSet"],[0,1,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERK6Grid2fRK6Grid1fRK6Grid1fj","libmolgrid::CoordinateSet::CoordinateSet"],[0,1,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERK6Grid2fRK6Grid2fRK6Grid1f","libmolgrid::CoordinateSet::CoordinateSet"],[0,1,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERKNSt6vectorI6float3EERKNSt6vectorINSt6vectorIfEEEERKNSt6vectorIfEE","libmolgrid::CoordinateSet::CoordinateSet"],[0,1,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERKNSt6vectorI6float3EERKNSt6vectorIfEERKNSt6vectorIfEEj","libmolgrid::CoordinateSet::CoordinateSet"],[0,1,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERKNSt6vectorI6float3EERKNSt6vectorIiEERKNSt6vectorIfEEj","libmolgrid::CoordinateSet::CoordinateSet"],[0,1,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetEv","libmolgrid::CoordinateSet::CoordinateSet"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERKNSt6vectorI6float3EERKNSt6vectorINSt6vectorIfEEEERKNSt6vectorIfEE","libmolgrid::CoordinateSet::CoordinateSet::c"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERKNSt6vectorI6float3EERKNSt6vectorIfEERKNSt6vectorIfEEj","libmolgrid::CoordinateSet::CoordinateSet::c"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERKNSt6vectorI6float3EERKNSt6vectorIiEERKNSt6vectorIfEEj","libmolgrid::CoordinateSet::CoordinateSet::c"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERK10Grid2fCUDARK10Grid1fCUDARK10Grid1fCUDAj","libmolgrid::CoordinateSet::CoordinateSet::coords"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERK6Grid2fRK6Grid1fRK6Grid1fj","libmolgrid::CoordinateSet::CoordinateSet::coords"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERK10Grid2fCUDARK10Grid2fCUDARK10Grid1fCUDA","libmolgrid::CoordinateSet::CoordinateSet::cr"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERK6Grid2fRK6Grid2fRK6Grid1f","libmolgrid::CoordinateSet::CoordinateSet::cr"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERK13CoordinateSetRK13CoordinateSetb","libmolgrid::CoordinateSet::CoordinateSet::lig"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERK10Grid2fCUDARK10Grid1fCUDARK10Grid1fCUDAj","libmolgrid::CoordinateSet::CoordinateSet::maxt"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERK6Grid2fRK6Grid1fRK6Grid1fj","libmolgrid::CoordinateSet::CoordinateSet::maxt"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERKNSt6vectorI6float3EERKNSt6vectorIfEERKNSt6vectorIfEEj","libmolgrid::CoordinateSet::CoordinateSet::maxt"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERKNSt6vectorI6float3EERKNSt6vectorIiEERKNSt6vectorIfEEj","libmolgrid::CoordinateSet::CoordinateSet::maxt"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetEPN9OpenBabel5OBMolE","libmolgrid::CoordinateSet::CoordinateSet::mol"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetEPN9OpenBabel5OBMolERK9AtomTyper","libmolgrid::CoordinateSet::CoordinateSet::mol"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERK10Grid2fCUDARK10Grid2fCUDARK10Grid1fCUDA","libmolgrid::CoordinateSet::CoordinateSet::r"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERK6Grid2fRK6Grid2fRK6Grid1f","libmolgrid::CoordinateSet::CoordinateSet::r"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERKNSt6vectorI6float3EERKNSt6vectorINSt6vectorIfEEEERKNSt6vectorIfEE","libmolgrid::CoordinateSet::CoordinateSet::r"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERKNSt6vectorI6float3EERKNSt6vectorIfEERKNSt6vectorIfEEj","libmolgrid::CoordinateSet::CoordinateSet::r"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERKNSt6vectorI6float3EERKNSt6vectorIiEERKNSt6vectorIfEEj","libmolgrid::CoordinateSet::CoordinateSet::r"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERK10Grid2fCUDARK10Grid1fCUDARK10Grid1fCUDAj","libmolgrid::CoordinateSet::CoordinateSet::radii"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERK6Grid2fRK6Grid1fRK6Grid1fj","libmolgrid::CoordinateSet::CoordinateSet::radii"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERK13CoordinateSetRK13CoordinateSetb","libmolgrid::CoordinateSet::CoordinateSet::rec"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERK10Grid2fCUDARK10Grid1fCUDARK10Grid1fCUDAj","libmolgrid::CoordinateSet::CoordinateSet::t"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERK10Grid2fCUDARK10Grid2fCUDARK10Grid1fCUDA","libmolgrid::CoordinateSet::CoordinateSet::t"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERK6Grid2fRK6Grid1fRK6Grid1fj","libmolgrid::CoordinateSet::CoordinateSet::t"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERK6Grid2fRK6Grid2fRK6Grid1f","libmolgrid::CoordinateSet::CoordinateSet::t"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERKNSt6vectorI6float3EERKNSt6vectorINSt6vectorIfEEEERKNSt6vectorIfEE","libmolgrid::CoordinateSet::CoordinateSet::t"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERKNSt6vectorI6float3EERKNSt6vectorIfEERKNSt6vectorIfEEj","libmolgrid::CoordinateSet::CoordinateSet::t"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERKNSt6vectorI6float3EERKNSt6vectorIiEERKNSt6vectorIfEEj","libmolgrid::CoordinateSet::CoordinateSet::t"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetEPN9OpenBabel5OBMolERK9AtomTyper","libmolgrid::CoordinateSet::CoordinateSet::typer"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13CoordinateSetERK13CoordinateSetRK13CoordinateSetb","libmolgrid::CoordinateSet::CoordinateSet::unique_index_types"],[0,1,1,"_CPPv4NK10libmolgrid13CoordinateSet6centerEv","libmolgrid::CoordinateSet::center"],[0,1,1,"_CPPv4NK10libmolgrid13CoordinateSet5cloneEv","libmolgrid::CoordinateSet::clone"],[0,3,1,"_CPPv4N10libmolgrid13CoordinateSet6coordsE","libmolgrid::CoordinateSet::coords"],[0,1,1,"_CPPv4N10libmolgrid13CoordinateSet8copyIntoERK13CoordinateSet","libmolgrid::CoordinateSet::copyInto"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet8copyIntoERK13CoordinateSet","libmolgrid::CoordinateSet::copyInto::src"],[0,1,1,"_CPPv4I_bENK10libmolgrid13CoordinateSet6copyToE6size_tR4GridIfXL2EE6isCUDAER4GridIfXL1EE6isCUDAER4GridIfXL1EE6isCUDAE","libmolgrid::CoordinateSet::copyTo"],[0,1,1,"_CPPv4I_bENK10libmolgrid13CoordinateSet6copyToE6size_tR4GridIfXL2EE6isCUDAER4GridIfXL2EE6isCUDAER4GridIfXL1EE6isCUDAE","libmolgrid::CoordinateSet::copyTo"],[0,2,1,"_CPPv4I_bENK10libmolgrid13CoordinateSet6copyToE6size_tR4GridIfXL2EE6isCUDAER4GridIfXL1EE6isCUDAER4GridIfXL1EE6isCUDAE","libmolgrid::CoordinateSet::copyTo::c"],[0,2,1,"_CPPv4I_bENK10libmolgrid13CoordinateSet6copyToE6size_tR4GridIfXL2EE6isCUDAER4GridIfXL2EE6isCUDAER4GridIfXL1EE6isCUDAE","libmolgrid::CoordinateSet::copyTo::c"],[0,5,1,"_CPPv4I_bENK10libmolgrid13CoordinateSet6copyToE6size_tR4GridIfXL2EE6isCUDAER4GridIfXL1EE6isCUDAER4GridIfXL1EE6isCUDAE","libmolgrid::CoordinateSet::copyTo::isCUDA"],[0,5,1,"_CPPv4I_bENK10libmolgrid13CoordinateSet6copyToE6size_tR4GridIfXL2EE6isCUDAER4GridIfXL2EE6isCUDAER4GridIfXL1EE6isCUDAE","libmolgrid::CoordinateSet::copyTo::isCUDA"],[0,2,1,"_CPPv4I_bENK10libmolgrid13CoordinateSet6copyToE6size_tR4GridIfXL2EE6isCUDAER4GridIfXL1EE6isCUDAER4GridIfXL1EE6isCUDAE","libmolgrid::CoordinateSet::copyTo::r"],[0,2,1,"_CPPv4I_bENK10libmolgrid13CoordinateSet6copyToE6size_tR4GridIfXL2EE6isCUDAER4GridIfXL2EE6isCUDAER4GridIfXL1EE6isCUDAE","libmolgrid::CoordinateSet::copyTo::r"],[0,2,1,"_CPPv4I_bENK10libmolgrid13CoordinateSet6copyToE6size_tR4GridIfXL2EE6isCUDAER4GridIfXL1EE6isCUDAER4GridIfXL1EE6isCUDAE","libmolgrid::CoordinateSet::copyTo::t"],[0,2,1,"_CPPv4I_bENK10libmolgrid13CoordinateSet6copyToE6size_tR4GridIfXL2EE6isCUDAER4GridIfXL2EE6isCUDAER4GridIfXL1EE6isCUDAE","libmolgrid::CoordinateSet::copyTo::t"],[0,1,1,"_CPPv4NK10libmolgrid13CoordinateSet4dumpERNSt7ostreamE","libmolgrid::CoordinateSet::dump"],[0,2,1,"_CPPv4NK10libmolgrid13CoordinateSet4dumpERNSt7ostreamE","libmolgrid::CoordinateSet::dump::out"],[0,1,1,"_CPPv4NK10libmolgrid13CoordinateSet17has_indexed_typesEv","libmolgrid::CoordinateSet::has_indexed_types"],[0,1,1,"_CPPv4NK10libmolgrid13CoordinateSet16has_vector_typesEv","libmolgrid::CoordinateSet::has_vector_types"],[0,1,1,"_CPPv4N10libmolgrid13CoordinateSet17make_vector_typesEbRKNSt6vectorIfEE","libmolgrid::CoordinateSet::make_vector_types"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet17make_vector_typesEbRKNSt6vectorIfEE","libmolgrid::CoordinateSet::make_vector_types::include_dummy_type"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet17make_vector_typesEbRKNSt6vectorIfEE","libmolgrid::CoordinateSet::make_vector_types::type_radii"],[0,3,1,"_CPPv4N10libmolgrid13CoordinateSet8max_typeE","libmolgrid::CoordinateSet::max_type"],[0,1,1,"_CPPv4N10libmolgrid13CoordinateSet9mergeIntoERK13CoordinateSetRK13CoordinateSetb","libmolgrid::CoordinateSet::mergeInto"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet9mergeIntoERK13CoordinateSetRK13CoordinateSetb","libmolgrid::CoordinateSet::mergeInto::lig"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet9mergeIntoERK13CoordinateSetRK13CoordinateSetb","libmolgrid::CoordinateSet::mergeInto::rec"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet9mergeIntoERK13CoordinateSetRK13CoordinateSetb","libmolgrid::CoordinateSet::mergeInto::unique_index_types"],[0,1,1,"_CPPv4NK10libmolgrid13CoordinateSet9num_typesEv","libmolgrid::CoordinateSet::num_types"],[0,1,1,"_CPPv4NK10libmolgrid13CoordinateSeteqERK13CoordinateSet","libmolgrid::CoordinateSet::operator=="],[0,2,1,"_CPPv4NK10libmolgrid13CoordinateSeteqERK13CoordinateSet","libmolgrid::CoordinateSet::operator==::rhs"],[0,3,1,"_CPPv4N10libmolgrid13CoordinateSet5radiiE","libmolgrid::CoordinateSet::radii"],[0,1,1,"_CPPv4N10libmolgrid13CoordinateSet13set_num_typesEj","libmolgrid::CoordinateSet::set_num_types"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet13set_num_typesEj","libmolgrid::CoordinateSet::set_num_types::maxt"],[0,1,1,"_CPPv4NK10libmolgrid13CoordinateSet4sizeEv","libmolgrid::CoordinateSet::size"],[0,1,1,"_CPPv4N10libmolgrid13CoordinateSet9size_likeERK13CoordinateSet","libmolgrid::CoordinateSet::size_like"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet9size_likeERK13CoordinateSet","libmolgrid::CoordinateSet::size_like::s"],[0,3,1,"_CPPv4N10libmolgrid13CoordinateSet3srcE","libmolgrid::CoordinateSet::src"],[0,1,1,"_CPPv4NK10libmolgrid13CoordinateSet9sum_typesER4GridIfXL1EEXL0EEEb","libmolgrid::CoordinateSet::sum_types"],[0,1,1,"_CPPv4NK10libmolgrid13CoordinateSet9sum_typesER4GridIfXL1EEXL1EEEb","libmolgrid::CoordinateSet::sum_types"],[0,2,1,"_CPPv4NK10libmolgrid13CoordinateSet9sum_typesER4GridIfXL1EEXL0EEEb","libmolgrid::CoordinateSet::sum_types::sum"],[0,2,1,"_CPPv4NK10libmolgrid13CoordinateSet9sum_typesER4GridIfXL1EEXL1EEEb","libmolgrid::CoordinateSet::sum_types::sum"],[0,2,1,"_CPPv4NK10libmolgrid13CoordinateSet9sum_typesER4GridIfXL1EEXL0EEEb","libmolgrid::CoordinateSet::sum_types::zerofirst"],[0,2,1,"_CPPv4NK10libmolgrid13CoordinateSet9sum_typesER4GridIfXL1EEXL1EEEb","libmolgrid::CoordinateSet::sum_types::zerofirst"],[0,1,1,"_CPPv4N10libmolgrid13CoordinateSet5tocpuEb","libmolgrid::CoordinateSet::tocpu"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet5tocpuEb","libmolgrid::CoordinateSet::tocpu::copy"],[0,1,1,"_CPPv4N10libmolgrid13CoordinateSet5togpuEb","libmolgrid::CoordinateSet::togpu"],[0,2,1,"_CPPv4N10libmolgrid13CoordinateSet5togpuEb","libmolgrid::CoordinateSet::togpu::copy"],[0,3,1,"_CPPv4N10libmolgrid13CoordinateSet10type_indexE","libmolgrid::CoordinateSet::type_index"],[0,3,1,"_CPPv4N10libmolgrid13CoordinateSet11type_vectorE","libmolgrid::CoordinateSet::type_vector"],[0,0,1,"_CPPv4N10libmolgrid17ElementIndexTyperE","libmolgrid::ElementIndexTyper"],[0,1,1,"_CPPv4N10libmolgrid17ElementIndexTyper17ElementIndexTyperEj","libmolgrid::ElementIndexTyper::ElementIndexTyper"],[0,2,1,"_CPPv4N10libmolgrid17ElementIndexTyper17ElementIndexTyperEj","libmolgrid::ElementIndexTyper::ElementIndexTyper::maxe"],[0,3,1,"_CPPv4N10libmolgrid17ElementIndexTyper14default_radiusE","libmolgrid::ElementIndexTyper::default_radius"],[0,1,1,"_CPPv4NK10libmolgrid17ElementIndexTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE","libmolgrid::ElementIndexTyper::get_atom_type_index"],[0,2,1,"_CPPv4NK10libmolgrid17ElementIndexTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE","libmolgrid::ElementIndexTyper::get_atom_type_index::a"],[0,1,1,"_CPPv4NK10libmolgrid17ElementIndexTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::ElementIndexTyper::get_atom_type_vector"],[0,2,1,"_CPPv4NK10libmolgrid17ElementIndexTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::ElementIndexTyper::get_atom_type_vector::a"],[0,2,1,"_CPPv4NK10libmolgrid17ElementIndexTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::ElementIndexTyper::get_atom_type_vector::typ"],[0,1,1,"_CPPv4NK10libmolgrid17ElementIndexTyper12get_int_typeEi","libmolgrid::ElementIndexTyper::get_int_type"],[0,2,1,"_CPPv4NK10libmolgrid17ElementIndexTyper12get_int_typeEi","libmolgrid::ElementIndexTyper::get_int_type::t"],[0,1,1,"_CPPv4NK10libmolgrid17ElementIndexTyper14get_type_namesEv","libmolgrid::ElementIndexTyper::get_type_names"],[0,1,1,"_CPPv4NK10libmolgrid17ElementIndexTyper14get_type_radiiEv","libmolgrid::ElementIndexTyper::get_type_radii"],[0,1,1,"_CPPv4NK10libmolgrid17ElementIndexTyper15is_vector_typerEv","libmolgrid::ElementIndexTyper::is_vector_typer"],[0,3,1,"_CPPv4N10libmolgrid17ElementIndexTyper9last_elemE","libmolgrid::ElementIndexTyper::last_elem"],[0,1,1,"_CPPv4NK10libmolgrid17ElementIndexTyper9num_typesEv","libmolgrid::ElementIndexTyper::num_types"],[0,1,1,"_CPPv4N10libmolgrid17ElementIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::ElementIndexTyper::set_names"],[0,2,1,"_CPPv4N10libmolgrid17ElementIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::ElementIndexTyper::set_names::names"],[0,2,1,"_CPPv4N10libmolgrid17ElementIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::ElementIndexTyper::set_names::ntypes"],[0,2,1,"_CPPv4N10libmolgrid17ElementIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::ElementIndexTyper::set_names::type_names"],[0,1,1,"_CPPv4N10libmolgrid17ElementIndexTyperD0Ev","libmolgrid::ElementIndexTyper::~ElementIndexTyper"],[0,0,1,"_CPPv4N10libmolgrid7ExampleE","libmolgrid::Example"],[0,1,1,"_CPPv4I_bEN10libmolgrid7Example13extract_labelEvRKNSt6vectorI7ExampleEEjR4GridIfXL1EE6isCUDAE","libmolgrid::Example::extract_label"],[0,2,1,"_CPPv4I_bEN10libmolgrid7Example13extract_labelEvRKNSt6vectorI7ExampleEEjR4GridIfXL1EE6isCUDAE","libmolgrid::Example::extract_label::examples"],[0,5,1,"_CPPv4I_bEN10libmolgrid7Example13extract_labelEvRKNSt6vectorI7ExampleEEjR4GridIfXL1EE6isCUDAE","libmolgrid::Example::extract_label::isCUDA"],[0,2,1,"_CPPv4I_bEN10libmolgrid7Example13extract_labelEvRKNSt6vectorI7ExampleEEjR4GridIfXL1EE6isCUDAE","libmolgrid::Example::extract_label::labelpos"],[0,2,1,"_CPPv4I_bEN10libmolgrid7Example13extract_labelEvRKNSt6vectorI7ExampleEEjR4GridIfXL1EE6isCUDAE","libmolgrid::Example::extract_label::out"],[0,1,1,"_CPPv4I_bEN10libmolgrid7Example14extract_labelsEvRKNSt6vectorI7ExampleEER4GridIfXL2EE6isCUDAE","libmolgrid::Example::extract_labels"],[0,2,1,"_CPPv4I_bEN10libmolgrid7Example14extract_labelsEvRKNSt6vectorI7ExampleEER4GridIfXL2EE6isCUDAE","libmolgrid::Example::extract_labels::examples"],[0,5,1,"_CPPv4I_bEN10libmolgrid7Example14extract_labelsEvRKNSt6vectorI7ExampleEER4GridIfXL2EE6isCUDAE","libmolgrid::Example::extract_labels::isCUDA"],[0,2,1,"_CPPv4I_bEN10libmolgrid7Example14extract_labelsEvRKNSt6vectorI7ExampleEER4GridIfXL2EE6isCUDAE","libmolgrid::Example::extract_labels::out"],[0,3,1,"_CPPv4N10libmolgrid7Example5groupE","libmolgrid::Example::group"],[0,1,1,"_CPPv4NK10libmolgrid7Example15has_index_typesEj","libmolgrid::Example::has_index_types"],[0,2,1,"_CPPv4NK10libmolgrid7Example15has_index_typesEj","libmolgrid::Example::has_index_types::start"],[0,1,1,"_CPPv4NK10libmolgrid7Example16has_vector_typesEj","libmolgrid::Example::has_vector_types"],[0,2,1,"_CPPv4NK10libmolgrid7Example16has_vector_typesEj","libmolgrid::Example::has_vector_types::start"],[0,3,1,"_CPPv4N10libmolgrid7Example6labelsE","libmolgrid::Example::labels"],[0,1,1,"_CPPv4N10libmolgrid7Example17make_vector_typesEv","libmolgrid::Example::make_vector_types"],[0,1,1,"_CPPv4NK10libmolgrid7Example17merge_coordinatesER6Grid2fR6Grid1fR6Grid1fjb","libmolgrid::Example::merge_coordinates"],[0,1,1,"_CPPv4NK10libmolgrid7Example17merge_coordinatesER6Grid2fR6Grid2fR6Grid1fjb","libmolgrid::Example::merge_coordinates"],[0,1,1,"_CPPv4NK10libmolgrid7Example17merge_coordinatesERNSt6vectorI6float3EERNSt6vectorINSt6vectorIfEEEERNSt6vectorIfEEjb","libmolgrid::Example::merge_coordinates"],[0,1,1,"_CPPv4NK10libmolgrid7Example17merge_coordinatesERNSt6vectorI6float3EERNSt6vectorIfEERNSt6vectorIfEEjb","libmolgrid::Example::merge_coordinates"],[0,1,1,"_CPPv4NK10libmolgrid7Example17merge_coordinatesEjb","libmolgrid::Example::merge_coordinates"],[0,2,1,"_CPPv4NK10libmolgrid7Example17merge_coordinatesER6Grid2fR6Grid1fR6Grid1fjb","libmolgrid::Example::merge_coordinates::coords"],[0,2,1,"_CPPv4NK10libmolgrid7Example17merge_coordinatesER6Grid2fR6Grid2fR6Grid1fjb","libmolgrid::Example::merge_coordinates::coords"],[0,2,1,"_CPPv4NK10libmolgrid7Example17merge_coordinatesERNSt6vectorI6float3EERNSt6vectorINSt6vectorIfEEEERNSt6vectorIfEEjb","libmolgrid::Example::merge_coordinates::coords"],[0,2,1,"_CPPv4NK10libmolgrid7Example17merge_coordinatesERNSt6vectorI6float3EERNSt6vectorIfEERNSt6vectorIfEEjb","libmolgrid::Example::merge_coordinates::coords"],[0,2,1,"_CPPv4NK10libmolgrid7Example17merge_coordinatesER6Grid2fR6Grid1fR6Grid1fjb","libmolgrid::Example::merge_coordinates::radii"],[0,2,1,"_CPPv4NK10libmolgrid7Example17merge_coordinatesER6Grid2fR6Grid2fR6Grid1fjb","libmolgrid::Example::merge_coordinates::radii"],[0,2,1,"_CPPv4NK10libmolgrid7Example17merge_coordinatesERNSt6vectorI6float3EERNSt6vectorINSt6vectorIfEEEERNSt6vectorIfEEjb","libmolgrid::Example::merge_coordinates::radii"],[0,2,1,"_CPPv4NK10libmolgrid7Example17merge_coordinatesERNSt6vectorI6float3EERNSt6vectorIfEERNSt6vectorIfEEjb","libmolgrid::Example::merge_coordinates::radii"],[0,2,1,"_CPPv4NK10libmolgrid7Example17merge_coordinatesER6Grid2fR6Grid1fR6Grid1fjb","libmolgrid::Example::merge_coordinates::start"],[0,2,1,"_CPPv4NK10libmolgrid7Example17merge_coordinatesER6Grid2fR6Grid2fR6Grid1fjb","libmolgrid::Example::merge_coordinates::start"],[0,2,1,"_CPPv4NK10libmolgrid7Example17merge_coordinatesERNSt6vectorI6float3EERNSt6vectorINSt6vectorIfEEEERNSt6vectorIfEEjb","libmolgrid::Example::merge_coordinates::start"],[0,2,1,"_CPPv4NK10libmolgrid7Example17merge_coordinatesERNSt6vectorI6float3EERNSt6vectorIfEERNSt6vectorIfEEjb","libmolgrid::Example::merge_coordinates::start"],[0,2,1,"_CPPv4NK10libmolgrid7Example17merge_coordinatesEjb","libmolgrid::Example::merge_coordinates::start"],[0,2,1,"_CPPv4NK10libmolgrid7Example17merge_coordinatesER6Grid2fR6Grid1fR6Grid1fjb","libmolgrid::Example::merge_coordinates::type_index"],[0,2,1,"_CPPv4NK10libmolgrid7Example17merge_coordinatesERNSt6vectorI6float3EERNSt6vectorIfEERNSt6vectorIfEEjb","libmolgrid::Example::merge_coordinates::type_index"],[0,2,1,"_CPPv4NK10libmolgrid7Example17merge_coordinatesER6Grid2fR6Grid2fR6Grid1fjb","libmolgrid::Example::merge_coordinates::type_vector"],[0,2,1,"_CPPv4NK10libmolgrid7Example17merge_coordinatesERNSt6vectorI6float3EERNSt6vectorINSt6vectorIfEEEERNSt6vectorIfEEjb","libmolgrid::Example::merge_coordinates::type_vector"],[0,2,1,"_CPPv4NK10libmolgrid7Example17merge_coordinatesER6Grid2fR6Grid1fR6Grid1fjb","libmolgrid::Example::merge_coordinates::unique_index_types"],[0,2,1,"_CPPv4NK10libmolgrid7Example17merge_coordinatesER6Grid2fR6Grid2fR6Grid1fjb","libmolgrid::Example::merge_coordinates::unique_index_types"],[0,2,1,"_CPPv4NK10libmolgrid7Example17merge_coordinatesERNSt6vectorI6float3EERNSt6vectorINSt6vectorIfEEEERNSt6vectorIfEEjb","libmolgrid::Example::merge_coordinates::unique_index_types"],[0,2,1,"_CPPv4NK10libmolgrid7Example17merge_coordinatesERNSt6vectorI6float3EERNSt6vectorIfEERNSt6vectorIfEEjb","libmolgrid::Example::merge_coordinates::unique_index_types"],[0,2,1,"_CPPv4NK10libmolgrid7Example17merge_coordinatesEjb","libmolgrid::Example::merge_coordinates::unique_index_types"],[0,1,1,"_CPPv4NK10libmolgrid7Example15num_coordinatesEv","libmolgrid::Example::num_coordinates"],[0,1,1,"_CPPv4NK10libmolgrid7Example9num_typesEb","libmolgrid::Example::num_types"],[0,2,1,"_CPPv4NK10libmolgrid7Example9num_typesEb","libmolgrid::Example::num_types::unique_index_types"],[0,1,1,"_CPPv4NK10libmolgrid7ExampleeqERK7Example","libmolgrid::Example::operator=="],[0,2,1,"_CPPv4NK10libmolgrid7ExampleeqERK7Example","libmolgrid::Example::operator==::rhs"],[0,3,1,"_CPPv4N10libmolgrid7Example7seqcontE","libmolgrid::Example::seqcont"],[0,3,1,"_CPPv4N10libmolgrid7Example4setsE","libmolgrid::Example::sets"],[0,1,1,"_CPPv4I_bENK10libmolgrid7Example9sum_typesEvR4GridIfXL1EE6isCUDAEb","libmolgrid::Example::sum_types"],[0,5,1,"_CPPv4I_bENK10libmolgrid7Example9sum_typesEvR4GridIfXL1EE6isCUDAEb","libmolgrid::Example::sum_types::isCUDA"],[0,2,1,"_CPPv4I_bENK10libmolgrid7Example9sum_typesEvR4GridIfXL1EE6isCUDAEb","libmolgrid::Example::sum_types::sum"],[0,2,1,"_CPPv4I_bENK10libmolgrid7Example9sum_typesEvR4GridIfXL1EE6isCUDAEb","libmolgrid::Example::sum_types::unique_types"],[0,1,1,"_CPPv4N10libmolgrid7Example5tocpuEv","libmolgrid::Example::tocpu"],[0,1,1,"_CPPv4N10libmolgrid7Example5togpuEv","libmolgrid::Example::togpu"],[0,0,1,"_CPPv4N10libmolgrid16ExampleExtractorE","libmolgrid::ExampleExtractor"],[0,1,1,"_CPPv4N10libmolgrid16ExampleExtractor16ExampleExtractorERK23ExampleProviderSettingsNSt10shared_ptrI9AtomTyperEE","libmolgrid::ExampleExtractor::ExampleExtractor"],[0,1,1,"_CPPv4N10libmolgrid16ExampleExtractor16ExampleExtractorERK23ExampleProviderSettingsNSt10shared_ptrI9AtomTyperEENSt10shared_ptrI9AtomTyperEE","libmolgrid::ExampleExtractor::ExampleExtractor"],[0,1,1,"_CPPv4N10libmolgrid16ExampleExtractor16ExampleExtractorERK23ExampleProviderSettingsRKNSt6vectorINSt10shared_ptrI9AtomTyperEEEENSt6vectorINSt6stringEEE","libmolgrid::ExampleExtractor::ExampleExtractor"],[0,2,1,"_CPPv4N10libmolgrid16ExampleExtractor16ExampleExtractorERK23ExampleProviderSettingsRKNSt6vectorINSt10shared_ptrI9AtomTyperEEEENSt6vectorINSt6stringEEE","libmolgrid::ExampleExtractor::ExampleExtractor::molcaches"],[0,2,1,"_CPPv4N10libmolgrid16ExampleExtractor16ExampleExtractorERK23ExampleProviderSettingsNSt10shared_ptrI9AtomTyperEE","libmolgrid::ExampleExtractor::ExampleExtractor::settings"],[0,2,1,"_CPPv4N10libmolgrid16ExampleExtractor16ExampleExtractorERK23ExampleProviderSettingsNSt10shared_ptrI9AtomTyperEENSt10shared_ptrI9AtomTyperEE","libmolgrid::ExampleExtractor::ExampleExtractor::settings"],[0,2,1,"_CPPv4N10libmolgrid16ExampleExtractor16ExampleExtractorERK23ExampleProviderSettingsRKNSt6vectorINSt10shared_ptrI9AtomTyperEEEENSt6vectorINSt6stringEEE","libmolgrid::ExampleExtractor::ExampleExtractor::settings"],[0,2,1,"_CPPv4N10libmolgrid16ExampleExtractor16ExampleExtractorERK23ExampleProviderSettingsNSt10shared_ptrI9AtomTyperEE","libmolgrid::ExampleExtractor::ExampleExtractor::t"],[0,2,1,"_CPPv4N10libmolgrid16ExampleExtractor16ExampleExtractorERK23ExampleProviderSettingsNSt10shared_ptrI9AtomTyperEENSt10shared_ptrI9AtomTyperEE","libmolgrid::ExampleExtractor::ExampleExtractor::t1"],[0,2,1,"_CPPv4N10libmolgrid16ExampleExtractor16ExampleExtractorERK23ExampleProviderSettingsNSt10shared_ptrI9AtomTyperEENSt10shared_ptrI9AtomTyperEE","libmolgrid::ExampleExtractor::ExampleExtractor::t2"],[0,2,1,"_CPPv4N10libmolgrid16ExampleExtractor16ExampleExtractorERK23ExampleProviderSettingsRKNSt6vectorINSt10shared_ptrI9AtomTyperEEEENSt6vectorINSt6stringEEE","libmolgrid::ExampleExtractor::ExampleExtractor::typrs"],[0,3,1,"_CPPv4N10libmolgrid16ExampleExtractor12coord_cachesE","libmolgrid::ExampleExtractor::coord_caches"],[0,1,1,"_CPPv4NK10libmolgrid16ExampleExtractor11count_typesEj","libmolgrid::ExampleExtractor::count_types"],[0,2,1,"_CPPv4NK10libmolgrid16ExampleExtractor11count_typesEj","libmolgrid::ExampleExtractor::count_types::n"],[0,3,1,"_CPPv4N10libmolgrid16ExampleExtractor15duplicate_posesE","libmolgrid::ExampleExtractor::duplicate_poses"],[0,1,1,"_CPPv4N10libmolgrid16ExampleExtractor7extractERK10ExampleRefR7Example","libmolgrid::ExampleExtractor::extract"],[0,2,1,"_CPPv4N10libmolgrid16ExampleExtractor7extractERK10ExampleRefR7Example","libmolgrid::ExampleExtractor::extract::ex"],[0,2,1,"_CPPv4N10libmolgrid16ExampleExtractor7extractERK10ExampleRefR7Example","libmolgrid::ExampleExtractor::extract::ref"],[0,1,1,"_CPPv4NK10libmolgrid16ExampleExtractor14get_type_namesEv","libmolgrid::ExampleExtractor::get_type_names"],[0,1,1,"_CPPv4NK10libmolgrid16ExampleExtractor9num_typesERK10ExampleRef","libmolgrid::ExampleExtractor::num_types"],[0,1,1,"_CPPv4NK10libmolgrid16ExampleExtractor9num_typesEv","libmolgrid::ExampleExtractor::num_types"],[0,2,1,"_CPPv4NK10libmolgrid16ExampleExtractor9num_typesERK10ExampleRef","libmolgrid::ExampleExtractor::num_types::ref"],[0,1,1,"_CPPv4N10libmolgrid16ExampleExtractorD0Ev","libmolgrid::ExampleExtractor::~ExampleExtractor"],[0,0,1,"_CPPv4N10libmolgrid15ExampleProviderE","libmolgrid::ExampleProvider"],[0,1,1,"_CPPv4N10libmolgrid15ExampleProvider15ExampleProviderENSt10shared_ptrI18ExampleRefProviderEERK16ExampleExtractor","libmolgrid::ExampleProvider::ExampleProvider"],[0,1,1,"_CPPv4N10libmolgrid15ExampleProvider15ExampleProviderERK23ExampleProviderSettings","libmolgrid::ExampleProvider::ExampleProvider"],[0,1,1,"_CPPv4N10libmolgrid15ExampleProvider15ExampleProviderERK23ExampleProviderSettingsNSt10shared_ptrI9AtomTyperEE","libmolgrid::ExampleProvider::ExampleProvider"],[0,1,1,"_CPPv4N10libmolgrid15ExampleProvider15ExampleProviderERK23ExampleProviderSettingsNSt10shared_ptrI9AtomTyperEENSt10shared_ptrI9AtomTyperEE","libmolgrid::ExampleProvider::ExampleProvider"],[0,1,1,"_CPPv4N10libmolgrid15ExampleProvider15ExampleProviderERK23ExampleProviderSettingsRKNSt6vectorINSt10shared_ptrI9AtomTyperEEEERKNSt6vectorINSt6stringEEE","libmolgrid::ExampleProvider::ExampleProvider"],[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider15ExampleProviderENSt10shared_ptrI18ExampleRefProviderEERK16ExampleExtractor","libmolgrid::ExampleProvider::ExampleProvider::e"],[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider15ExampleProviderERK23ExampleProviderSettingsRKNSt6vectorINSt10shared_ptrI9AtomTyperEEEERKNSt6vectorINSt6stringEEE","libmolgrid::ExampleProvider::ExampleProvider::molcaches"],[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider15ExampleProviderENSt10shared_ptrI18ExampleRefProviderEERK16ExampleExtractor","libmolgrid::ExampleProvider::ExampleProvider::p"],[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider15ExampleProviderERK23ExampleProviderSettings","libmolgrid::ExampleProvider::ExampleProvider::settings"],[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider15ExampleProviderERK23ExampleProviderSettingsNSt10shared_ptrI9AtomTyperEE","libmolgrid::ExampleProvider::ExampleProvider::settings"],[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider15ExampleProviderERK23ExampleProviderSettingsNSt10shared_ptrI9AtomTyperEENSt10shared_ptrI9AtomTyperEE","libmolgrid::ExampleProvider::ExampleProvider::settings"],[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider15ExampleProviderERK23ExampleProviderSettingsRKNSt6vectorINSt10shared_ptrI9AtomTyperEEEERKNSt6vectorINSt6stringEEE","libmolgrid::ExampleProvider::ExampleProvider::settings"],[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider15ExampleProviderERK23ExampleProviderSettingsNSt10shared_ptrI9AtomTyperEE","libmolgrid::ExampleProvider::ExampleProvider::t"],[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider15ExampleProviderERK23ExampleProviderSettingsNSt10shared_ptrI9AtomTyperEENSt10shared_ptrI9AtomTyperEE","libmolgrid::ExampleProvider::ExampleProvider::t1"],[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider15ExampleProviderERK23ExampleProviderSettingsNSt10shared_ptrI9AtomTyperEENSt10shared_ptrI9AtomTyperEE","libmolgrid::ExampleProvider::ExampleProvider::t2"],[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider15ExampleProviderERK23ExampleProviderSettingsRKNSt6vectorINSt10shared_ptrI9AtomTyperEEEERKNSt6vectorINSt6stringEEE","libmolgrid::ExampleProvider::ExampleProvider::typrs"],[0,1,1,"_CPPv4N10libmolgrid15ExampleProvider12at_new_epochEv","libmolgrid::ExampleProvider::at_new_epoch"],[0,1,1,"_CPPv4N10libmolgrid15ExampleProvider14createProviderERK23ExampleProviderSettings","libmolgrid::ExampleProvider::createProvider"],[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider14createProviderERK23ExampleProviderSettings","libmolgrid::ExampleProvider::createProvider::settings"],[0,3,1,"_CPPv4N10libmolgrid15ExampleProvider9extractorE","libmolgrid::ExampleProvider::extractor"],[0,1,1,"_CPPv4N10libmolgrid15ExampleProvider13get_extractorEv","libmolgrid::ExampleProvider::get_extractor"],[0,1,1,"_CPPv4NK10libmolgrid15ExampleProvider19get_large_epoch_numEv","libmolgrid::ExampleProvider::get_large_epoch_num"],[0,1,1,"_CPPv4N10libmolgrid15ExampleProvider12get_providerEv","libmolgrid::ExampleProvider::get_provider"],[0,1,1,"_CPPv4NK10libmolgrid15ExampleProvider19get_small_epoch_numEv","libmolgrid::ExampleProvider::get_small_epoch_num"],[0,1,1,"_CPPv4NK10libmolgrid15ExampleProvider14get_type_namesEv","libmolgrid::ExampleProvider::get_type_names"],[0,3,1,"_CPPv4N10libmolgrid15ExampleProvider13init_settingsE","libmolgrid::ExampleProvider::init_settings"],[0,1,1,"_CPPv4NK10libmolgrid15ExampleProvider16large_epoch_sizeEv","libmolgrid::ExampleProvider::large_epoch_size"],[0,3,1,"_CPPv4N10libmolgrid15ExampleProvider10last_epochE","libmolgrid::ExampleProvider::last_epoch"],[0,1,1,"_CPPv4N10libmolgrid15ExampleProvider4nextER7Example","libmolgrid::ExampleProvider::next"],[0,1,1,"_CPPv4N10libmolgrid15ExampleProvider4nextEv","libmolgrid::ExampleProvider::next"],[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider4nextER7Example","libmolgrid::ExampleProvider::next::ex"],[0,1,1,"_CPPv4N10libmolgrid15ExampleProvider10next_batchERNSt6vectorI7ExampleEEj","libmolgrid::ExampleProvider::next_batch"],[0,1,1,"_CPPv4N10libmolgrid15ExampleProvider10next_batchEj","libmolgrid::ExampleProvider::next_batch"],[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider10next_batchERNSt6vectorI7ExampleEEj","libmolgrid::ExampleProvider::next_batch::batch_size"],[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider10next_batchEj","libmolgrid::ExampleProvider::next_batch::batch_size"],[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider10next_batchERNSt6vectorI7ExampleEEj","libmolgrid::ExampleProvider::next_batch::ex"],[0,1,1,"_CPPv4NK10libmolgrid15ExampleProvider10num_labelsEv","libmolgrid::ExampleProvider::num_labels"],[0,1,1,"_CPPv4NK10libmolgrid15ExampleProvider9num_typesEv","libmolgrid::ExampleProvider::num_types"],[0,1,1,"_CPPv4N10libmolgrid15ExampleProvider8populateERKNSt6stringEi","libmolgrid::ExampleProvider::populate"],[0,1,1,"_CPPv4N10libmolgrid15ExampleProvider8populateERKNSt6vectorINSt6stringEEEi","libmolgrid::ExampleProvider::populate"],[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider8populateERKNSt6stringEi","libmolgrid::ExampleProvider::populate::fname"],[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider8populateERKNSt6vectorINSt6stringEEEi","libmolgrid::ExampleProvider::populate::fnames"],[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider8populateERKNSt6stringEi","libmolgrid::ExampleProvider::populate::num_labels"],[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider8populateERKNSt6vectorINSt6stringEEEi","libmolgrid::ExampleProvider::populate::num_labels"],[0,3,1,"_CPPv4N10libmolgrid15ExampleProvider8providerE","libmolgrid::ExampleProvider::provider"],[0,1,1,"_CPPv4N10libmolgrid15ExampleProvider5resetEv","libmolgrid::ExampleProvider::reset"],[0,1,1,"_CPPv4NK10libmolgrid15ExampleProvider8settingsEv","libmolgrid::ExampleProvider::settings"],[0,1,1,"_CPPv4NK10libmolgrid15ExampleProvider4sizeEv","libmolgrid::ExampleProvider::size"],[0,1,1,"_CPPv4N10libmolgrid15ExampleProvider4skipEj","libmolgrid::ExampleProvider::skip"],[0,2,1,"_CPPv4N10libmolgrid15ExampleProvider4skipEj","libmolgrid::ExampleProvider::skip::n"],[0,1,1,"_CPPv4NK10libmolgrid15ExampleProvider16small_epoch_sizeEv","libmolgrid::ExampleProvider::small_epoch_size"],[0,1,1,"_CPPv4N10libmolgrid15ExampleProviderD0Ev","libmolgrid::ExampleProvider::~ExampleProvider"],[0,0,1,"_CPPv4N10libmolgrid23ExampleProviderSettingsE","libmolgrid::ExampleProviderSettings"],[0,0,1,"_CPPv4N10libmolgrid10ExampleRefE","libmolgrid::ExampleRef"],[0,1,1,"_CPPv4N10libmolgrid10ExampleRef10ExampleRefERKNSt6stringEib","libmolgrid::ExampleRef::ExampleRef"],[0,1,1,"_CPPv4N10libmolgrid10ExampleRef10ExampleRefEv","libmolgrid::ExampleRef::ExampleRef"],[0,2,1,"_CPPv4N10libmolgrid10ExampleRef10ExampleRefERKNSt6stringEib","libmolgrid::ExampleRef::ExampleRef::hasgroup"],[0,2,1,"_CPPv4N10libmolgrid10ExampleRef10ExampleRefERKNSt6stringEib","libmolgrid::ExampleRef::ExampleRef::line"],[0,2,1,"_CPPv4N10libmolgrid10ExampleRef10ExampleRefERKNSt6stringEib","libmolgrid::ExampleRef::ExampleRef::numlabels"],[0,3,1,"_CPPv4N10libmolgrid10ExampleRef5filesE","libmolgrid::ExampleRef::files"],[0,3,1,"_CPPv4N10libmolgrid10ExampleRef5groupE","libmolgrid::ExampleRef::group"],[0,3,1,"_CPPv4N10libmolgrid10ExampleRef6labelsE","libmolgrid::ExampleRef::labels"],[0,3,1,"_CPPv4N10libmolgrid10ExampleRef7seqcontE","libmolgrid::ExampleRef::seqcont"],[0,0,1,"_CPPv4N10libmolgrid18ExampleRefProviderE","libmolgrid::ExampleRefProvider"],[0,1,1,"_CPPv4N10libmolgrid18ExampleRefProvider18ExampleRefProviderERK23ExampleProviderSettings","libmolgrid::ExampleRefProvider::ExampleRefProvider"],[0,1,1,"_CPPv4N10libmolgrid18ExampleRefProvider18ExampleRefProviderEv","libmolgrid::ExampleRefProvider::ExampleRefProvider"],[0,2,1,"_CPPv4N10libmolgrid18ExampleRefProvider18ExampleRefProviderERK23ExampleProviderSettings","libmolgrid::ExampleRefProvider::ExampleRefProvider::settings"],[0,1,1,"_CPPv4N10libmolgrid18ExampleRefProvider6addrefERK10ExampleRef","libmolgrid::ExampleRefProvider::addref"],[0,2,1,"_CPPv4N10libmolgrid18ExampleRefProvider6addrefERK10ExampleRef","libmolgrid::ExampleRefProvider::addref::ex"],[0,1,1,"_CPPv4NK10libmolgrid18ExampleRefProvider16check_batch_sizeEj","libmolgrid::ExampleRefProvider::check_batch_size"],[0,2,1,"_CPPv4NK10libmolgrid18ExampleRefProvider16check_batch_sizeEj","libmolgrid::ExampleRefProvider::check_batch_size::bsize"],[0,1,1,"_CPPv4NK10libmolgrid18ExampleRefProvider19get_large_epoch_numEv","libmolgrid::ExampleRefProvider::get_large_epoch_num"],[0,1,1,"_CPPv4NK10libmolgrid18ExampleRefProvider19get_small_epoch_numEv","libmolgrid::ExampleRefProvider::get_small_epoch_num"],[0,1,1,"_CPPv4NK10libmolgrid18ExampleRefProvider9has_groupEv","libmolgrid::ExampleRefProvider::has_group"],[0,1,1,"_CPPv4NK10libmolgrid18ExampleRefProvider16large_epoch_sizeEv","libmolgrid::ExampleRefProvider::large_epoch_size"],[0,1,1,"_CPPv4N10libmolgrid18ExampleRefProvider7nextrefER10ExampleRef","libmolgrid::ExampleRefProvider::nextref"],[0,2,1,"_CPPv4N10libmolgrid18ExampleRefProvider7nextrefER10ExampleRef","libmolgrid::ExampleRefProvider::nextref::ex"],[0,1,1,"_CPPv4NK10libmolgrid18ExampleRefProvider10num_labelsEv","libmolgrid::ExampleRefProvider::num_labels"],[0,1,1,"_CPPv4N10libmolgrid18ExampleRefProvider8populateERNSt7istreamEi","libmolgrid::ExampleRefProvider::populate"],[0,2,1,"_CPPv4N10libmolgrid18ExampleRefProvider8populateERNSt7istreamEi","libmolgrid::ExampleRefProvider::populate::lines"],[0,2,1,"_CPPv4N10libmolgrid18ExampleRefProvider8populateERNSt7istreamEi","libmolgrid::ExampleRefProvider::populate::numlabels"],[0,1,1,"_CPPv4N10libmolgrid18ExampleRefProvider5resetEv","libmolgrid::ExampleRefProvider::reset"],[0,1,1,"_CPPv4N10libmolgrid18ExampleRefProvider5setupEv","libmolgrid::ExampleRefProvider::setup"],[0,1,1,"_CPPv4NK10libmolgrid18ExampleRefProvider4sizeEv","libmolgrid::ExampleRefProvider::size"],[0,1,1,"_CPPv4NK10libmolgrid18ExampleRefProvider16small_epoch_sizeEv","libmolgrid::ExampleRefProvider::small_epoch_size"],[0,1,1,"_CPPv4N10libmolgrid18ExampleRefProviderD0Ev","libmolgrid::ExampleRefProvider::~ExampleRefProvider"],[0,0,1,"_CPPv4N10libmolgrid14FileAtomMapperE","libmolgrid::FileAtomMapper"],[0,1,1,"_CPPv4N10libmolgrid14FileAtomMapper14FileAtomMapperERKNSt6stringERKNSt6vectorINSt6stringEEE","libmolgrid::FileAtomMapper::FileAtomMapper"],[0,1,1,"_CPPv4N10libmolgrid14FileAtomMapper14FileAtomMapperERNSt7istreamERKNSt6vectorINSt6stringEEE","libmolgrid::FileAtomMapper::FileAtomMapper"],[0,2,1,"_CPPv4N10libmolgrid14FileAtomMapper14FileAtomMapperERKNSt6stringERKNSt6vectorINSt6stringEEE","libmolgrid::FileAtomMapper::FileAtomMapper::fname"],[0,2,1,"_CPPv4N10libmolgrid14FileAtomMapper14FileAtomMapperERNSt7istreamERKNSt6vectorINSt6stringEEE","libmolgrid::FileAtomMapper::FileAtomMapper::in"],[0,2,1,"_CPPv4N10libmolgrid14FileAtomMapper14FileAtomMapperERKNSt6stringERKNSt6vectorINSt6stringEEE","libmolgrid::FileAtomMapper::FileAtomMapper::type_names"],[0,2,1,"_CPPv4N10libmolgrid14FileAtomMapper14FileAtomMapperERNSt7istreamERKNSt6vectorINSt6stringEEE","libmolgrid::FileAtomMapper::FileAtomMapper::type_names"],[0,1,1,"_CPPv4NK10libmolgrid14FileAtomMapper12get_new_typeEj","libmolgrid::FileAtomMapper::get_new_type"],[0,2,1,"_CPPv4NK10libmolgrid14FileAtomMapper12get_new_typeEj","libmolgrid::FileAtomMapper::get_new_type::origt"],[0,1,1,"_CPPv4NK10libmolgrid14FileAtomMapper14get_type_namesEv","libmolgrid::FileAtomMapper::get_type_names"],[0,3,1,"_CPPv4N10libmolgrid14FileAtomMapper14new_type_namesE","libmolgrid::FileAtomMapper::new_type_names"],[0,1,1,"_CPPv4NK10libmolgrid14FileAtomMapper9num_typesEv","libmolgrid::FileAtomMapper::num_types"],[0,3,1,"_CPPv4N10libmolgrid14FileAtomMapper14old_type_namesE","libmolgrid::FileAtomMapper::old_type_names"],[0,3,1,"_CPPv4N10libmolgrid14FileAtomMapper20old_type_to_new_typeE","libmolgrid::FileAtomMapper::old_type_to_new_type"],[0,1,1,"_CPPv4N10libmolgrid14FileAtomMapper5setupERNSt7istreamE","libmolgrid::FileAtomMapper::setup"],[0,2,1,"_CPPv4N10libmolgrid14FileAtomMapper5setupERNSt7istreamE","libmolgrid::FileAtomMapper::setup::in"],[0,1,1,"_CPPv4N10libmolgrid14FileAtomMapperD0Ev","libmolgrid::FileAtomMapper::~FileAtomMapper"],[0,0,1,"_CPPv4N10libmolgrid22FileMappedElementTyperE","libmolgrid::FileMappedElementTyper"],[0,1,1,"_CPPv4N10libmolgrid22FileMappedElementTyper22FileMappedElementTyperERK17ElementIndexTyperRKNSt6stringE","libmolgrid::FileMappedElementTyper::FileMappedElementTyper"],[0,1,1,"_CPPv4N10libmolgrid22FileMappedElementTyper22FileMappedElementTyperERK17ElementIndexTyperRNSt7istreamE","libmolgrid::FileMappedElementTyper::FileMappedElementTyper"],[0,1,1,"_CPPv4N10libmolgrid22FileMappedElementTyper22FileMappedElementTyperERKNSt6stringEj","libmolgrid::FileMappedElementTyper::FileMappedElementTyper"],[0,1,1,"_CPPv4N10libmolgrid22FileMappedElementTyper22FileMappedElementTyperERNSt7istreamEj","libmolgrid::FileMappedElementTyper::FileMappedElementTyper"],[0,2,1,"_CPPv4N10libmolgrid22FileMappedElementTyper22FileMappedElementTyperERK17ElementIndexTyperRKNSt6stringE","libmolgrid::FileMappedElementTyper::FileMappedElementTyper::etyper"],[0,2,1,"_CPPv4N10libmolgrid22FileMappedElementTyper22FileMappedElementTyperERK17ElementIndexTyperRNSt7istreamE","libmolgrid::FileMappedElementTyper::FileMappedElementTyper::etyper"],[0,2,1,"_CPPv4N10libmolgrid22FileMappedElementTyper22FileMappedElementTyperERK17ElementIndexTyperRKNSt6stringE","libmolgrid::FileMappedElementTyper::FileMappedElementTyper::fname"],[0,2,1,"_CPPv4N10libmolgrid22FileMappedElementTyper22FileMappedElementTyperERKNSt6stringEj","libmolgrid::FileMappedElementTyper::FileMappedElementTyper::fname"],[0,2,1,"_CPPv4N10libmolgrid22FileMappedElementTyper22FileMappedElementTyperERK17ElementIndexTyperRNSt7istreamE","libmolgrid::FileMappedElementTyper::FileMappedElementTyper::i"],[0,2,1,"_CPPv4N10libmolgrid22FileMappedElementTyper22FileMappedElementTyperERNSt7istreamEj","libmolgrid::FileMappedElementTyper::FileMappedElementTyper::i"],[0,2,1,"_CPPv4N10libmolgrid22FileMappedElementTyper22FileMappedElementTyperERKNSt6stringEj","libmolgrid::FileMappedElementTyper::FileMappedElementTyper::maxe"],[0,2,1,"_CPPv4N10libmolgrid22FileMappedElementTyper22FileMappedElementTyperERNSt7istreamEj","libmolgrid::FileMappedElementTyper::FileMappedElementTyper::maxe"],[0,1,1,"_CPPv4NK10libmolgrid22FileMappedElementTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE","libmolgrid::FileMappedElementTyper::get_atom_type_index"],[0,2,1,"_CPPv4NK10libmolgrid22FileMappedElementTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE","libmolgrid::FileMappedElementTyper::get_atom_type_index::a"],[0,1,1,"_CPPv4NK10libmolgrid22FileMappedElementTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::FileMappedElementTyper::get_atom_type_vector"],[0,2,1,"_CPPv4NK10libmolgrid22FileMappedElementTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::FileMappedElementTyper::get_atom_type_vector::a"],[0,2,1,"_CPPv4NK10libmolgrid22FileMappedElementTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::FileMappedElementTyper::get_atom_type_vector::typ"],[0,1,1,"_CPPv4NK10libmolgrid22FileMappedElementTyper12get_int_typeEi","libmolgrid::FileMappedElementTyper::get_int_type"],[0,2,1,"_CPPv4NK10libmolgrid22FileMappedElementTyper12get_int_typeEi","libmolgrid::FileMappedElementTyper::get_int_type::t"],[0,1,1,"_CPPv4NK10libmolgrid22FileMappedElementTyper14get_type_namesEv","libmolgrid::FileMappedElementTyper::get_type_names"],[0,1,1,"_CPPv4NK10libmolgrid22FileMappedElementTyper14get_type_namesEv","libmolgrid::FileMappedElementTyper::get_type_names"],[0,1,1,"_CPPv4NK10libmolgrid22FileMappedElementTyper14get_type_radiiEv","libmolgrid::FileMappedElementTyper::get_type_radii"],[0,1,1,"_CPPv4NK10libmolgrid22FileMappedElementTyper14get_type_radiiEv","libmolgrid::FileMappedElementTyper::get_type_radii"],[0,1,1,"_CPPv4NK10libmolgrid22FileMappedElementTyper15is_vector_typerEv","libmolgrid::FileMappedElementTyper::is_vector_typer"],[0,1,1,"_CPPv4NK10libmolgrid22FileMappedElementTyper9num_typesEv","libmolgrid::FileMappedElementTyper::num_types"],[0,1,1,"_CPPv4NK10libmolgrid22FileMappedElementTyper9num_typesEv","libmolgrid::FileMappedElementTyper::num_types"],[0,1,1,"_CPPv4N10libmolgrid22FileMappedElementTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::FileMappedElementTyper::set_names"],[0,2,1,"_CPPv4N10libmolgrid22FileMappedElementTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::FileMappedElementTyper::set_names::names"],[0,2,1,"_CPPv4N10libmolgrid22FileMappedElementTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::FileMappedElementTyper::set_names::ntypes"],[0,2,1,"_CPPv4N10libmolgrid22FileMappedElementTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::FileMappedElementTyper::set_names::type_names"],[0,0,1,"_CPPv4N10libmolgrid20FileMappedGninaTyperE","libmolgrid::FileMappedGninaTyper"],[0,1,1,"_CPPv4N10libmolgrid20FileMappedGninaTyper20FileMappedGninaTyperERK15GninaIndexTyperRKNSt6stringE","libmolgrid::FileMappedGninaTyper::FileMappedGninaTyper"],[0,1,1,"_CPPv4N10libmolgrid20FileMappedGninaTyper20FileMappedGninaTyperERK15GninaIndexTyperRNSt7istreamE","libmolgrid::FileMappedGninaTyper::FileMappedGninaTyper"],[0,1,1,"_CPPv4N10libmolgrid20FileMappedGninaTyper20FileMappedGninaTyperERKNSt6stringEb","libmolgrid::FileMappedGninaTyper::FileMappedGninaTyper"],[0,1,1,"_CPPv4N10libmolgrid20FileMappedGninaTyper20FileMappedGninaTyperERNSt7istreamEb","libmolgrid::FileMappedGninaTyper::FileMappedGninaTyper"],[0,2,1,"_CPPv4N10libmolgrid20FileMappedGninaTyper20FileMappedGninaTyperERK15GninaIndexTyperRKNSt6stringE","libmolgrid::FileMappedGninaTyper::FileMappedGninaTyper::etyper"],[0,2,1,"_CPPv4N10libmolgrid20FileMappedGninaTyper20FileMappedGninaTyperERK15GninaIndexTyperRNSt7istreamE","libmolgrid::FileMappedGninaTyper::FileMappedGninaTyper::etyper"],[0,2,1,"_CPPv4N10libmolgrid20FileMappedGninaTyper20FileMappedGninaTyperERK15GninaIndexTyperRKNSt6stringE","libmolgrid::FileMappedGninaTyper::FileMappedGninaTyper::fname"],[0,2,1,"_CPPv4N10libmolgrid20FileMappedGninaTyper20FileMappedGninaTyperERKNSt6stringEb","libmolgrid::FileMappedGninaTyper::FileMappedGninaTyper::fname"],[0,2,1,"_CPPv4N10libmolgrid20FileMappedGninaTyper20FileMappedGninaTyperERK15GninaIndexTyperRNSt7istreamE","libmolgrid::FileMappedGninaTyper::FileMappedGninaTyper::i"],[0,2,1,"_CPPv4N10libmolgrid20FileMappedGninaTyper20FileMappedGninaTyperERNSt7istreamEb","libmolgrid::FileMappedGninaTyper::FileMappedGninaTyper::i"],[0,2,1,"_CPPv4N10libmolgrid20FileMappedGninaTyper20FileMappedGninaTyperERKNSt6stringEb","libmolgrid::FileMappedGninaTyper::FileMappedGninaTyper::usec"],[0,2,1,"_CPPv4N10libmolgrid20FileMappedGninaTyper20FileMappedGninaTyperERNSt7istreamEb","libmolgrid::FileMappedGninaTyper::FileMappedGninaTyper::usec"],[0,1,1,"_CPPv4NK10libmolgrid20FileMappedGninaTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE","libmolgrid::FileMappedGninaTyper::get_atom_type_index"],[0,2,1,"_CPPv4NK10libmolgrid20FileMappedGninaTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE","libmolgrid::FileMappedGninaTyper::get_atom_type_index::a"],[0,1,1,"_CPPv4NK10libmolgrid20FileMappedGninaTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::FileMappedGninaTyper::get_atom_type_vector"],[0,2,1,"_CPPv4NK10libmolgrid20FileMappedGninaTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::FileMappedGninaTyper::get_atom_type_vector::a"],[0,2,1,"_CPPv4NK10libmolgrid20FileMappedGninaTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::FileMappedGninaTyper::get_atom_type_vector::typ"],[0,1,1,"_CPPv4NK10libmolgrid20FileMappedGninaTyper12get_int_typeEi","libmolgrid::FileMappedGninaTyper::get_int_type"],[0,2,1,"_CPPv4NK10libmolgrid20FileMappedGninaTyper12get_int_typeEi","libmolgrid::FileMappedGninaTyper::get_int_type::t"],[0,1,1,"_CPPv4NK10libmolgrid20FileMappedGninaTyper14get_type_namesEv","libmolgrid::FileMappedGninaTyper::get_type_names"],[0,1,1,"_CPPv4NK10libmolgrid20FileMappedGninaTyper14get_type_namesEv","libmolgrid::FileMappedGninaTyper::get_type_names"],[0,1,1,"_CPPv4NK10libmolgrid20FileMappedGninaTyper14get_type_radiiEv","libmolgrid::FileMappedGninaTyper::get_type_radii"],[0,1,1,"_CPPv4NK10libmolgrid20FileMappedGninaTyper14get_type_radiiEv","libmolgrid::FileMappedGninaTyper::get_type_radii"],[0,1,1,"_CPPv4NK10libmolgrid20FileMappedGninaTyper15is_vector_typerEv","libmolgrid::FileMappedGninaTyper::is_vector_typer"],[0,1,1,"_CPPv4NK10libmolgrid20FileMappedGninaTyper9num_typesEv","libmolgrid::FileMappedGninaTyper::num_types"],[0,1,1,"_CPPv4NK10libmolgrid20FileMappedGninaTyper9num_typesEv","libmolgrid::FileMappedGninaTyper::num_types"],[0,1,1,"_CPPv4N10libmolgrid20FileMappedGninaTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::FileMappedGninaTyper::set_names"],[0,2,1,"_CPPv4N10libmolgrid20FileMappedGninaTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::FileMappedGninaTyper::set_names::names"],[0,2,1,"_CPPv4N10libmolgrid20FileMappedGninaTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::FileMappedGninaTyper::set_names::ntypes"],[0,2,1,"_CPPv4N10libmolgrid20FileMappedGninaTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::FileMappedGninaTyper::set_names::type_names"],[0,0,1,"_CPPv4N10libmolgrid15GninaIndexTyperE","libmolgrid::GninaIndexTyper"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type27AliphaticCarbonXSHydrophobeE","libmolgrid::GninaIndexTyper::AliphaticCarbonXSHydrophobe"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type30AliphaticCarbonXSNonHydrophobeE","libmolgrid::GninaIndexTyper::AliphaticCarbonXSNonHydrophobe"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type26AromaticCarbonXSHydrophobeE","libmolgrid::GninaIndexTyper::AromaticCarbonXSHydrophobe"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type29AromaticCarbonXSNonHydrophobeE","libmolgrid::GninaIndexTyper::AromaticCarbonXSNonHydrophobe"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type5BoronE","libmolgrid::GninaIndexTyper::Boron"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type7BromineE","libmolgrid::GninaIndexTyper::Bromine"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type7CalciumE","libmolgrid::GninaIndexTyper::Calcium"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type8ChlorineE","libmolgrid::GninaIndexTyper::Chlorine"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type8FluorineE","libmolgrid::GninaIndexTyper::Fluorine"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type12GenericMetalE","libmolgrid::GninaIndexTyper::GenericMetal"],[0,1,1,"_CPPv4N10libmolgrid15GninaIndexTyper15GninaIndexTyperEbPK4info","libmolgrid::GninaIndexTyper::GninaIndexTyper"],[0,2,1,"_CPPv4N10libmolgrid15GninaIndexTyper15GninaIndexTyperEbPK4info","libmolgrid::GninaIndexTyper::GninaIndexTyper::d"],[0,2,1,"_CPPv4N10libmolgrid15GninaIndexTyper15GninaIndexTyperEbPK4info","libmolgrid::GninaIndexTyper::GninaIndexTyper::usec"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type8HydrogenE","libmolgrid::GninaIndexTyper::Hydrogen"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type6IodineE","libmolgrid::GninaIndexTyper::Iodine"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type4IronE","libmolgrid::GninaIndexTyper::Iron"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type9MagnesiumE","libmolgrid::GninaIndexTyper::Magnesium"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type9ManganeseE","libmolgrid::GninaIndexTyper::Manganese"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type8NitrogenE","libmolgrid::GninaIndexTyper::Nitrogen"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type18NitrogenXSAcceptorE","libmolgrid::GninaIndexTyper::NitrogenXSAcceptor"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type15NitrogenXSDonorE","libmolgrid::GninaIndexTyper::NitrogenXSDonor"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type23NitrogenXSDonorAcceptorE","libmolgrid::GninaIndexTyper::NitrogenXSDonorAcceptor"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type8NumTypesE","libmolgrid::GninaIndexTyper::NumTypes"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type6OxygenE","libmolgrid::GninaIndexTyper::Oxygen"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type16OxygenXSAcceptorE","libmolgrid::GninaIndexTyper::OxygenXSAcceptor"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type13OxygenXSDonorE","libmolgrid::GninaIndexTyper::OxygenXSDonor"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type21OxygenXSDonorAcceptorE","libmolgrid::GninaIndexTyper::OxygenXSDonorAcceptor"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type10PhosphorusE","libmolgrid::GninaIndexTyper::Phosphorus"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type13PolarHydrogenE","libmolgrid::GninaIndexTyper::PolarHydrogen"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type6SulfurE","libmolgrid::GninaIndexTyper::Sulfur"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type14SulfurAcceptorE","libmolgrid::GninaIndexTyper::SulfurAcceptor"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type4ZincE","libmolgrid::GninaIndexTyper::Zinc"],[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4dataE","libmolgrid::GninaIndexTyper::data"],[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper12default_dataE","libmolgrid::GninaIndexTyper::default_data"],[0,1,1,"_CPPv4NK10libmolgrid15GninaIndexTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE","libmolgrid::GninaIndexTyper::get_atom_type_index"],[0,2,1,"_CPPv4NK10libmolgrid15GninaIndexTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE","libmolgrid::GninaIndexTyper::get_atom_type_index::a"],[0,1,1,"_CPPv4NK10libmolgrid15GninaIndexTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::GninaIndexTyper::get_atom_type_vector"],[0,2,1,"_CPPv4NK10libmolgrid15GninaIndexTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::GninaIndexTyper::get_atom_type_vector::a"],[0,2,1,"_CPPv4NK10libmolgrid15GninaIndexTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::GninaIndexTyper::get_atom_type_vector::typ"],[0,1,1,"_CPPv4NK10libmolgrid15GninaIndexTyper8get_infoEi","libmolgrid::GninaIndexTyper::get_info"],[0,2,1,"_CPPv4NK10libmolgrid15GninaIndexTyper8get_infoEi","libmolgrid::GninaIndexTyper::get_info::t"],[0,1,1,"_CPPv4NK10libmolgrid15GninaIndexTyper12get_int_typeEi","libmolgrid::GninaIndexTyper::get_int_type"],[0,2,1,"_CPPv4NK10libmolgrid15GninaIndexTyper12get_int_typeEi","libmolgrid::GninaIndexTyper::get_int_type::t"],[0,1,1,"_CPPv4NK10libmolgrid15GninaIndexTyper14get_type_namesEv","libmolgrid::GninaIndexTyper::get_type_names"],[0,1,1,"_CPPv4NK10libmolgrid15GninaIndexTyper14get_type_radiiEv","libmolgrid::GninaIndexTyper::get_type_radii"],[0,1,1,"_CPPv4N10libmolgrid15GninaIndexTyper15gnina_type_nameEi","libmolgrid::GninaIndexTyper::gnina_type_name"],[0,2,1,"_CPPv4N10libmolgrid15GninaIndexTyper15gnina_type_nameEi","libmolgrid::GninaIndexTyper::gnina_type_name::t"],[0,0,1,"_CPPv4N10libmolgrid15GninaIndexTyper4infoE","libmolgrid::GninaIndexTyper::info"],[0,0,1,"_CPPv4N10libmolgrid15GninaIndexTyper4infoE","libmolgrid::GninaIndexTyper::info"],[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info8ad_depthE","libmolgrid::GninaIndexTyper::info::ad_depth"],[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info8ad_depthE","libmolgrid::GninaIndexTyper::info::ad_depth"],[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info13ad_heteroatomE","libmolgrid::GninaIndexTyper::info::ad_heteroatom"],[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info13ad_heteroatomE","libmolgrid::GninaIndexTyper::info::ad_heteroatom"],[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info9ad_radiusE","libmolgrid::GninaIndexTyper::info::ad_radius"],[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info9ad_radiusE","libmolgrid::GninaIndexTyper::info::ad_radius"],[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info12ad_solvationE","libmolgrid::GninaIndexTyper::info::ad_solvation"],[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info12ad_solvationE","libmolgrid::GninaIndexTyper::info::ad_solvation"],[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info9ad_volumeE","libmolgrid::GninaIndexTyper::info::ad_volume"],[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info9ad_volumeE","libmolgrid::GninaIndexTyper::info::ad_volume"],[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info6adnameE","libmolgrid::GninaIndexTyper::info::adname"],[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info6adnameE","libmolgrid::GninaIndexTyper::info::adname"],[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info4anumE","libmolgrid::GninaIndexTyper::info::anum"],[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info4anumE","libmolgrid::GninaIndexTyper::info::anum"],[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info15covalent_radiusE","libmolgrid::GninaIndexTyper::info::covalent_radius"],[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info15covalent_radiusE","libmolgrid::GninaIndexTyper::info::covalent_radius"],[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info2smE","libmolgrid::GninaIndexTyper::info::sm"],[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info2smE","libmolgrid::GninaIndexTyper::info::sm"],[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info10smina_nameE","libmolgrid::GninaIndexTyper::info::smina_name"],[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info10smina_nameE","libmolgrid::GninaIndexTyper::info::smina_name"],[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info11xs_acceptorE","libmolgrid::GninaIndexTyper::info::xs_acceptor"],[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info11xs_acceptorE","libmolgrid::GninaIndexTyper::info::xs_acceptor"],[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info8xs_donorE","libmolgrid::GninaIndexTyper::info::xs_donor"],[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info8xs_donorE","libmolgrid::GninaIndexTyper::info::xs_donor"],[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info13xs_hydrophobeE","libmolgrid::GninaIndexTyper::info::xs_hydrophobe"],[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info13xs_hydrophobeE","libmolgrid::GninaIndexTyper::info::xs_hydrophobe"],[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info9xs_radiusE","libmolgrid::GninaIndexTyper::info::xs_radius"],[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper4info9xs_radiusE","libmolgrid::GninaIndexTyper::info::xs_radius"],[0,1,1,"_CPPv4NK10libmolgrid15GninaIndexTyper15is_vector_typerEv","libmolgrid::GninaIndexTyper::is_vector_typer"],[0,1,1,"_CPPv4NK10libmolgrid15GninaIndexTyper9num_typesEv","libmolgrid::GninaIndexTyper::num_types"],[0,1,1,"_CPPv4N10libmolgrid15GninaIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::GninaIndexTyper::set_names"],[0,2,1,"_CPPv4N10libmolgrid15GninaIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::GninaIndexTyper::set_names::names"],[0,2,1,"_CPPv4N10libmolgrid15GninaIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::GninaIndexTyper::set_names::ntypes"],[0,2,1,"_CPPv4N10libmolgrid15GninaIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::GninaIndexTyper::set_names::type_names"],[0,7,1,"_CPPv4N10libmolgrid15GninaIndexTyper4typeE","libmolgrid::GninaIndexTyper::type"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type27AliphaticCarbonXSHydrophobeE","libmolgrid::GninaIndexTyper::type::AliphaticCarbonXSHydrophobe"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type30AliphaticCarbonXSNonHydrophobeE","libmolgrid::GninaIndexTyper::type::AliphaticCarbonXSNonHydrophobe"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type26AromaticCarbonXSHydrophobeE","libmolgrid::GninaIndexTyper::type::AromaticCarbonXSHydrophobe"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type29AromaticCarbonXSNonHydrophobeE","libmolgrid::GninaIndexTyper::type::AromaticCarbonXSNonHydrophobe"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type5BoronE","libmolgrid::GninaIndexTyper::type::Boron"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type7BromineE","libmolgrid::GninaIndexTyper::type::Bromine"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type7CalciumE","libmolgrid::GninaIndexTyper::type::Calcium"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type8ChlorineE","libmolgrid::GninaIndexTyper::type::Chlorine"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type8FluorineE","libmolgrid::GninaIndexTyper::type::Fluorine"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type12GenericMetalE","libmolgrid::GninaIndexTyper::type::GenericMetal"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type8HydrogenE","libmolgrid::GninaIndexTyper::type::Hydrogen"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type6IodineE","libmolgrid::GninaIndexTyper::type::Iodine"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type4IronE","libmolgrid::GninaIndexTyper::type::Iron"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type9MagnesiumE","libmolgrid::GninaIndexTyper::type::Magnesium"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type9ManganeseE","libmolgrid::GninaIndexTyper::type::Manganese"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type8NitrogenE","libmolgrid::GninaIndexTyper::type::Nitrogen"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type18NitrogenXSAcceptorE","libmolgrid::GninaIndexTyper::type::NitrogenXSAcceptor"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type15NitrogenXSDonorE","libmolgrid::GninaIndexTyper::type::NitrogenXSDonor"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type23NitrogenXSDonorAcceptorE","libmolgrid::GninaIndexTyper::type::NitrogenXSDonorAcceptor"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type8NumTypesE","libmolgrid::GninaIndexTyper::type::NumTypes"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type6OxygenE","libmolgrid::GninaIndexTyper::type::Oxygen"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type16OxygenXSAcceptorE","libmolgrid::GninaIndexTyper::type::OxygenXSAcceptor"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type13OxygenXSDonorE","libmolgrid::GninaIndexTyper::type::OxygenXSDonor"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type21OxygenXSDonorAcceptorE","libmolgrid::GninaIndexTyper::type::OxygenXSDonorAcceptor"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type10PhosphorusE","libmolgrid::GninaIndexTyper::type::Phosphorus"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type13PolarHydrogenE","libmolgrid::GninaIndexTyper::type::PolarHydrogen"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type6SulfurE","libmolgrid::GninaIndexTyper::type::Sulfur"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type14SulfurAcceptorE","libmolgrid::GninaIndexTyper::type::SulfurAcceptor"],[0,6,1,"_CPPv4N10libmolgrid15GninaIndexTyper4type4ZincE","libmolgrid::GninaIndexTyper::type::Zinc"],[0,3,1,"_CPPv4N10libmolgrid15GninaIndexTyper12use_covalentE","libmolgrid::GninaIndexTyper::use_covalent"],[0,1,1,"_CPPv4N10libmolgrid15GninaIndexTyperD0Ev","libmolgrid::GninaIndexTyper::~GninaIndexTyper"],[0,0,1,"_CPPv4N10libmolgrid16GninaVectorTyperE","libmolgrid::GninaVectorTyper"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype8AD_depthE","libmolgrid::GninaVectorTyper::AD_depth"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype13AD_heteroatomE","libmolgrid::GninaVectorTyper::AD_heteroatom"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype12AD_solvationE","libmolgrid::GninaVectorTyper::AD_solvation"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype9AD_volumeE","libmolgrid::GninaVectorTyper::AD_volume"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype8AromaticE","libmolgrid::GninaVectorTyper::Aromatic"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype5BoronE","libmolgrid::GninaVectorTyper::Boron"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype7BromineE","libmolgrid::GninaVectorTyper::Bromine"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype7CalciumE","libmolgrid::GninaVectorTyper::Calcium"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype6CarbonE","libmolgrid::GninaVectorTyper::Carbon"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype8ChlorineE","libmolgrid::GninaVectorTyper::Chlorine"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype8FluorineE","libmolgrid::GninaVectorTyper::Fluorine"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype11GenericAtomE","libmolgrid::GninaVectorTyper::GenericAtom"],[0,1,1,"_CPPv4N10libmolgrid16GninaVectorTyper16GninaVectorTyperERK15GninaIndexTyper","libmolgrid::GninaVectorTyper::GninaVectorTyper"],[0,2,1,"_CPPv4N10libmolgrid16GninaVectorTyper16GninaVectorTyperERK15GninaIndexTyper","libmolgrid::GninaVectorTyper::GninaVectorTyper::ityp"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype8HydrogenE","libmolgrid::GninaVectorTyper::Hydrogen"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype6IodineE","libmolgrid::GninaVectorTyper::Iodine"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype4IronE","libmolgrid::GninaVectorTyper::Iron"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype9MagnesiumE","libmolgrid::GninaVectorTyper::Magnesium"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype9ManganeseE","libmolgrid::GninaVectorTyper::Manganese"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype8NitrogenE","libmolgrid::GninaVectorTyper::Nitrogen"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype8NumTypesE","libmolgrid::GninaVectorTyper::NumTypes"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype16OB_partialchargeE","libmolgrid::GninaVectorTyper::OB_partialcharge"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype6OxygenE","libmolgrid::GninaVectorTyper::Oxygen"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype10PhosphorusE","libmolgrid::GninaVectorTyper::Phosphorus"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype6SulfurE","libmolgrid::GninaVectorTyper::Sulfur"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype11XS_acceptorE","libmolgrid::GninaVectorTyper::XS_acceptor"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype8XS_donorE","libmolgrid::GninaVectorTyper::XS_donor"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype13XS_hydrophobeE","libmolgrid::GninaVectorTyper::XS_hydrophobe"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype4ZincE","libmolgrid::GninaVectorTyper::Zinc"],[0,1,1,"_CPPv4NK10libmolgrid16GninaVectorTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE","libmolgrid::GninaVectorTyper::get_atom_type_index"],[0,2,1,"_CPPv4NK10libmolgrid16GninaVectorTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE","libmolgrid::GninaVectorTyper::get_atom_type_index::a"],[0,1,1,"_CPPv4NK10libmolgrid16GninaVectorTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::GninaVectorTyper::get_atom_type_vector"],[0,2,1,"_CPPv4NK10libmolgrid16GninaVectorTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::GninaVectorTyper::get_atom_type_vector::a"],[0,2,1,"_CPPv4NK10libmolgrid16GninaVectorTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::GninaVectorTyper::get_atom_type_vector::typ"],[0,1,1,"_CPPv4NK10libmolgrid16GninaVectorTyper12get_int_typeEi","libmolgrid::GninaVectorTyper::get_int_type"],[0,2,1,"_CPPv4NK10libmolgrid16GninaVectorTyper12get_int_typeEi","libmolgrid::GninaVectorTyper::get_int_type::t"],[0,1,1,"_CPPv4NK10libmolgrid16GninaVectorTyper14get_type_namesEv","libmolgrid::GninaVectorTyper::get_type_names"],[0,1,1,"_CPPv4NK10libmolgrid16GninaVectorTyper21get_vector_type_radiiEv","libmolgrid::GninaVectorTyper::get_vector_type_radii"],[0,1,1,"_CPPv4NK10libmolgrid16GninaVectorTyper15is_vector_typerEv","libmolgrid::GninaVectorTyper::is_vector_typer"],[0,3,1,"_CPPv4N10libmolgrid16GninaVectorTyper6ityperE","libmolgrid::GninaVectorTyper::ityper"],[0,1,1,"_CPPv4NK10libmolgrid16GninaVectorTyper9num_typesEv","libmolgrid::GninaVectorTyper::num_types"],[0,7,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtypeE","libmolgrid::GninaVectorTyper::vtype"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype8AD_depthE","libmolgrid::GninaVectorTyper::vtype::AD_depth"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype13AD_heteroatomE","libmolgrid::GninaVectorTyper::vtype::AD_heteroatom"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype12AD_solvationE","libmolgrid::GninaVectorTyper::vtype::AD_solvation"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype9AD_volumeE","libmolgrid::GninaVectorTyper::vtype::AD_volume"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype8AromaticE","libmolgrid::GninaVectorTyper::vtype::Aromatic"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype5BoronE","libmolgrid::GninaVectorTyper::vtype::Boron"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype7BromineE","libmolgrid::GninaVectorTyper::vtype::Bromine"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype7CalciumE","libmolgrid::GninaVectorTyper::vtype::Calcium"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype6CarbonE","libmolgrid::GninaVectorTyper::vtype::Carbon"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype8ChlorineE","libmolgrid::GninaVectorTyper::vtype::Chlorine"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype8FluorineE","libmolgrid::GninaVectorTyper::vtype::Fluorine"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype11GenericAtomE","libmolgrid::GninaVectorTyper::vtype::GenericAtom"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype8HydrogenE","libmolgrid::GninaVectorTyper::vtype::Hydrogen"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype6IodineE","libmolgrid::GninaVectorTyper::vtype::Iodine"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype4IronE","libmolgrid::GninaVectorTyper::vtype::Iron"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype9MagnesiumE","libmolgrid::GninaVectorTyper::vtype::Magnesium"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype9ManganeseE","libmolgrid::GninaVectorTyper::vtype::Manganese"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype8NitrogenE","libmolgrid::GninaVectorTyper::vtype::Nitrogen"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype8NumTypesE","libmolgrid::GninaVectorTyper::vtype::NumTypes"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype16OB_partialchargeE","libmolgrid::GninaVectorTyper::vtype::OB_partialcharge"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype6OxygenE","libmolgrid::GninaVectorTyper::vtype::Oxygen"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype10PhosphorusE","libmolgrid::GninaVectorTyper::vtype::Phosphorus"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype6SulfurE","libmolgrid::GninaVectorTyper::vtype::Sulfur"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype11XS_acceptorE","libmolgrid::GninaVectorTyper::vtype::XS_acceptor"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype8XS_donorE","libmolgrid::GninaVectorTyper::vtype::XS_donor"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype13XS_hydrophobeE","libmolgrid::GninaVectorTyper::vtype::XS_hydrophobe"],[0,6,1,"_CPPv4N10libmolgrid16GninaVectorTyper5vtype4ZincE","libmolgrid::GninaVectorTyper::vtype::Zinc"],[0,3,1,"_CPPv4N10libmolgrid16GninaVectorTyper11vtype_namesE","libmolgrid::GninaVectorTyper::vtype_names"],[0,1,1,"_CPPv4N10libmolgrid16GninaVectorTyperD0Ev","libmolgrid::GninaVectorTyper::~GninaVectorTyper"],[0,0,1,"_CPPv4I0_NSt6size_tE_bEN10libmolgrid4GridE","libmolgrid::Grid"],[0,5,1,"_CPPv4I0_NSt6size_tE_bEN10libmolgrid4GridE","libmolgrid::Grid::Dtype"],[0,3,1,"_CPPv4N10libmolgrid4Grid3GPUE","libmolgrid::Grid::GPU"],[0,1,1,"_CPPv4IDpEN10libmolgrid4Grid4GridEPC5DtypeDp1I","libmolgrid::Grid::Grid"],[0,1,1,"_CPPv4N10libmolgrid4Grid4GridEPC5DtypeP6size_t","libmolgrid::Grid::Grid"],[0,1,1,"_CPPv4N10libmolgrid4Grid4GridERK4Grid","libmolgrid::Grid::Grid"],[0,1,1,"_CPPv4N10libmolgrid4Grid4GridERK4GridI5DtypeXpl7NumDimsL1EE6isCUDAE6size_t","libmolgrid::Grid::Grid"],[0,1,1,"_CPPv4N10libmolgrid4Grid4GridEv","libmolgrid::Grid::Grid"],[0,2,1,"_CPPv4N10libmolgrid4Grid4GridERK4GridI5DtypeXpl7NumDimsL1EE6isCUDAE6size_t","libmolgrid::Grid::Grid::G"],[0,5,1,"_CPPv4IDpEN10libmolgrid4Grid4GridEPC5DtypeDp1I","libmolgrid::Grid::Grid::I"],[0,2,1,"_CPPv4IDpEN10libmolgrid4Grid4GridEPC5DtypeDp1I","libmolgrid::Grid::Grid::d"],[0,2,1,"_CPPv4N10libmolgrid4Grid4GridEPC5DtypeP6size_t","libmolgrid::Grid::Grid::d"],[0,2,1,"_CPPv4N10libmolgrid4Grid4GridERK4GridI5DtypeXpl7NumDimsL1EE6isCUDAE6size_t","libmolgrid::Grid::Grid::i"],[0,2,1,"_CPPv4IDpEN10libmolgrid4Grid4GridEPC5DtypeDp1I","libmolgrid::Grid::Grid::sizes"],[0,2,1,"_CPPv4N10libmolgrid4Grid4GridEPC5DtypeP6size_t","libmolgrid::Grid::Grid::sizes"],[0,3,1,"_CPPv4N10libmolgrid4Grid1NE","libmolgrid::Grid::N"],[0,5,1,"_CPPv4I0_NSt6size_tE_bEN10libmolgrid4GridE","libmolgrid::Grid::NumDims"],[0,1,1,"_CPPv4IDpEN10libmolgrid4Grid7addressEP5DtypeDp1I","libmolgrid::Grid::address"],[0,1,1,"_CPPv4IDpENK10libmolgrid4Grid7addressEPK5DtypeDp1I","libmolgrid::Grid::address"],[0,5,1,"_CPPv4IDpEN10libmolgrid4Grid7addressEP5DtypeDp1I","libmolgrid::Grid::address::I"],[0,5,1,"_CPPv4IDpENK10libmolgrid4Grid7addressEPK5DtypeDp1I","libmolgrid::Grid::address::I"],[0,2,1,"_CPPv4IDpEN10libmolgrid4Grid7addressEP5DtypeDp1I","libmolgrid::Grid::address::indices"],[0,2,1,"_CPPv4IDpENK10libmolgrid4Grid7addressEPK5DtypeDp1I","libmolgrid::Grid::address::indices"],[0,1,1,"_CPPv4I_bEN10libmolgrid4Grid8copyFromE6size_tRK4GridI5Dtype7NumDims7srcCUDAE","libmolgrid::Grid::copyFrom"],[0,2,1,"_CPPv4I_bEN10libmolgrid4Grid8copyFromE6size_tRK4GridI5Dtype7NumDims7srcCUDAE","libmolgrid::Grid::copyFrom::src"],[0,5,1,"_CPPv4I_bEN10libmolgrid4Grid8copyFromE6size_tRK4GridI5Dtype7NumDims7srcCUDAE","libmolgrid::Grid::copyFrom::srcCUDA"],[0,1,1,"_CPPv4I_bENK10libmolgrid4Grid6copyToE6size_tR4GridI5Dtype7NumDims8destCUDAE","libmolgrid::Grid::copyTo"],[0,2,1,"_CPPv4I_bENK10libmolgrid4Grid6copyToE6size_tR4GridI5Dtype7NumDims8destCUDAE","libmolgrid::Grid::copyTo::dest"],[0,5,1,"_CPPv4I_bENK10libmolgrid4Grid6copyToE6size_tR4GridI5Dtype7NumDims8destCUDAE","libmolgrid::Grid::copyTo::destCUDA"],[0,4,1,"_CPPv4N10libmolgrid4Grid10cpu_grid_tE","libmolgrid::Grid::cpu_grid_t"],[0,1,1,"_CPPv4NK10libmolgrid4Grid4dataEv","libmolgrid::Grid::data"],[0,1,1,"_CPPv4NK10libmolgrid4Grid9dimensionE6size_t","libmolgrid::Grid::dimension"],[0,2,1,"_CPPv4NK10libmolgrid4Grid9dimensionE6size_t","libmolgrid::Grid::dimension::i"],[0,1,1,"_CPPv4NK10libmolgrid4Grid10dimensionsEv","libmolgrid::Grid::dimensions"],[0,1,1,"_CPPv4N10libmolgrid4Grid9fill_zeroEv","libmolgrid::Grid::fill_zero"],[0,4,1,"_CPPv4N10libmolgrid4Grid10gpu_grid_tE","libmolgrid::Grid::gpu_grid_t"],[0,5,1,"_CPPv4I0_NSt6size_tE_bEN10libmolgrid4GridE","libmolgrid::Grid::isCUDA"],[0,4,1,"_CPPv4N10libmolgrid4Grid9managed_tE","libmolgrid::Grid::managed_t"],[0,1,1,"_CPPv4NK10libmolgrid4Grid6offsetE6size_t","libmolgrid::Grid::offset"],[0,2,1,"_CPPv4NK10libmolgrid4Grid6offsetE6size_t","libmolgrid::Grid::offset::i"],[0,1,1,"_CPPv4NK10libmolgrid4Grid7offsetsEv","libmolgrid::Grid::offsets"],[0,1,1,"_CPPv4IDpEN10libmolgrid4GridclER5DtypeDp1I","libmolgrid::Grid::operator()"],[0,1,1,"_CPPv4IDpENK10libmolgrid4GridclE5DtypeDp1I","libmolgrid::Grid::operator()"],[0,5,1,"_CPPv4IDpEN10libmolgrid4GridclER5DtypeDp1I","libmolgrid::Grid::operator()::I"],[0,5,1,"_CPPv4IDpENK10libmolgrid4GridclE5DtypeDp1I","libmolgrid::Grid::operator()::I"],[0,2,1,"_CPPv4IDpEN10libmolgrid4GridclER5DtypeDp1I","libmolgrid::Grid::operator()::indices"],[0,2,1,"_CPPv4IDpENK10libmolgrid4GridclE5DtypeDp1I","libmolgrid::Grid::operator()::indices"],[0,1,1,"_CPPv4NK10libmolgrid4GridixE6size_t","libmolgrid::Grid::operator[]"],[0,2,1,"_CPPv4NK10libmolgrid4GridixE6size_t","libmolgrid::Grid::operator[]::i"],[0,1,1,"_CPPv4N10libmolgrid4Grid10set_bufferEP5Dtype","libmolgrid::Grid::set_buffer"],[0,2,1,"_CPPv4N10libmolgrid4Grid10set_bufferEP5Dtype","libmolgrid::Grid::set_buffer::ptr"],[0,1,1,"_CPPv4NK10libmolgrid4Grid4sizeEv","libmolgrid::Grid::size"],[0,4,1,"_CPPv4N10libmolgrid4Grid9subgrid_tE","libmolgrid::Grid::subgrid_t"],[0,4,1,"_CPPv4N10libmolgrid4Grid4typeE","libmolgrid::Grid::type"],[0,1,1,"_CPPv4N10libmolgrid4GridD0Ev","libmolgrid::Grid::~Grid"],[0,0,1,"_CPPv4N10libmolgrid9GridMakerE","libmolgrid::GridMaker"],[0,1,1,"_CPPv4N10libmolgrid9GridMaker9GridMakerEffbbff","libmolgrid::GridMaker::GridMaker"],[0,2,1,"_CPPv4N10libmolgrid9GridMaker9GridMakerEffbbff","libmolgrid::GridMaker::GridMaker::bin"],[0,2,1,"_CPPv4N10libmolgrid9GridMaker9GridMakerEffbbff","libmolgrid::GridMaker::GridMaker::d"],[0,2,1,"_CPPv4N10libmolgrid9GridMaker9GridMakerEffbbff","libmolgrid::GridMaker::GridMaker::grm"],[0,2,1,"_CPPv4N10libmolgrid9GridMaker9GridMakerEffbbff","libmolgrid::GridMaker::GridMaker::res"],[0,2,1,"_CPPv4N10libmolgrid9GridMaker9GridMakerEffbbff","libmolgrid::GridMaker::GridMaker::rscale"],[0,2,1,"_CPPv4N10libmolgrid9GridMaker9GridMakerEffbbff","libmolgrid::GridMaker::GridMaker::rti"],[0,1,1,"_CPPv4NK10libmolgrid9GridMaker24accumulate_atom_gradientEffffffffR6float3","libmolgrid::GridMaker::accumulate_atom_gradient"],[0,2,1,"_CPPv4NK10libmolgrid9GridMaker24accumulate_atom_gradientEffffffffR6float3","libmolgrid::GridMaker::accumulate_atom_gradient::agrad"],[0,2,1,"_CPPv4NK10libmolgrid9GridMaker24accumulate_atom_gradientEffffffffR6float3","libmolgrid::GridMaker::accumulate_atom_gradient::ax"],[0,2,1,"_CPPv4NK10libmolgrid9GridMaker24accumulate_atom_gradientEffffffffR6float3","libmolgrid::GridMaker::accumulate_atom_gradient::ay"],[0,2,1,"_CPPv4NK10libmolgrid9GridMaker24accumulate_atom_gradientEffffffffR6float3","libmolgrid::GridMaker::accumulate_atom_gradient::az"],[0,2,1,"_CPPv4NK10libmolgrid9GridMaker24accumulate_atom_gradientEffffffffR6float3","libmolgrid::GridMaker::accumulate_atom_gradient::gridval"],[0,2,1,"_CPPv4NK10libmolgrid9GridMaker24accumulate_atom_gradientEffffffffR6float3","libmolgrid::GridMaker::accumulate_atom_gradient::radius"],[0,2,1,"_CPPv4NK10libmolgrid9GridMaker24accumulate_atom_gradientEffffffffR6float3","libmolgrid::GridMaker::accumulate_atom_gradient::x"],[0,2,1,"_CPPv4NK10libmolgrid9GridMaker24accumulate_atom_gradientEffffffffR6float3","libmolgrid::GridMaker::accumulate_atom_gradient::y"],[0,2,1,"_CPPv4NK10libmolgrid9GridMaker24accumulate_atom_gradientEffffffffR6float3","libmolgrid::GridMaker::accumulate_atom_gradient::z"],[0,1,1,"_CPPv4N10libmolgrid9GridMaker22atom_density_grad_gradEffff","libmolgrid::GridMaker::atom_density_grad_grad"],[0,2,1,"_CPPv4N10libmolgrid9GridMaker22atom_density_grad_gradEffff","libmolgrid::GridMaker::atom_density_grad_grad::a"],[0,2,1,"_CPPv4N10libmolgrid9GridMaker22atom_density_grad_gradEffff","libmolgrid::GridMaker::atom_density_grad_grad::dist"],[0,2,1,"_CPPv4N10libmolgrid9GridMaker22atom_density_grad_gradEffff","libmolgrid::GridMaker::atom_density_grad_grad::r"],[0,2,1,"_CPPv4N10libmolgrid9GridMaker22atom_density_grad_gradEffff","libmolgrid::GridMaker::atom_density_grad_grad::x"],[0,1,1,"_CPPv4N10libmolgrid9GridMaker28atom_density_grad_grad_otherEffffff","libmolgrid::GridMaker::atom_density_grad_grad_other"],[0,2,1,"_CPPv4N10libmolgrid9GridMaker28atom_density_grad_grad_otherEffffff","libmolgrid::GridMaker::atom_density_grad_grad_other::a"],[0,2,1,"_CPPv4N10libmolgrid9GridMaker28atom_density_grad_grad_otherEffffff","libmolgrid::GridMaker::atom_density_grad_grad_other::b"],[0,2,1,"_CPPv4N10libmolgrid9GridMaker28atom_density_grad_grad_otherEffffff","libmolgrid::GridMaker::atom_density_grad_grad_other::dist"],[0,2,1,"_CPPv4N10libmolgrid9GridMaker28atom_density_grad_grad_otherEffffff","libmolgrid::GridMaker::atom_density_grad_grad_other::r"],[0,2,1,"_CPPv4N10libmolgrid9GridMaker28atom_density_grad_grad_otherEffffff","libmolgrid::GridMaker::atom_density_grad_grad_other::x"],[0,2,1,"_CPPv4N10libmolgrid9GridMaker28atom_density_grad_grad_otherEffffff","libmolgrid::GridMaker::atom_density_grad_grad_other::y"],[0,1,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward"],[0,1,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward"],[0,1,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward"],[0,1,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward"],[0,1,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward"],[0,1,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward"],[0,1,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward"],[0,1,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward"],[0,5,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward::Dtype"],[0,5,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward::Dtype"],[0,5,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward::Dtype"],[0,5,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward::Dtype"],[0,5,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward::Dtype"],[0,5,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward::Dtype"],[0,5,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward::Dtype"],[0,5,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward::Dtype"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward::atom_gradients"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward::atom_gradients"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward::atom_gradients"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward::atom_gradients"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward::atomic_gradients"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward::atomic_gradients"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward::atomic_gradients"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward::atomic_gradients"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward::coords"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward::coords"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward::coords"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward::coords"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward::diff"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward::diff"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward::diff"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward::diff"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward::diff"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward::diff"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward::grid"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward::grid"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward::grid_center"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward::grid_center"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward::grid_center"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward::grid_center"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward::grid_center"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward::grid_center"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward::grid_center"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward::grid_center"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward::in"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward::in"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward::in"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward::in"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward::radii"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward::radii"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward::radii"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward::radii"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward::type_gradients"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward::type_gradients"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward::type_gradients"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward::type_gradients"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward::type_index"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward::type_index"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward::type_vectors"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker8backwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward::type_vectors"],[0,1,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL2EEXL0EEERK4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward_gradients"],[0,1,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL2EEXL1EEERK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward_gradients"],[0,1,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL2EEXL0EEERK4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward_gradients"],[0,1,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL2EEXL1EEERK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward_gradients"],[0,5,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL2EEXL0EEERK4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward_gradients::Dtype"],[0,5,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL2EEXL1EEERK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward_gradients::Dtype"],[0,5,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL2EEXL0EEERK4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward_gradients::Dtype"],[0,5,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL2EEXL1EEERK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward_gradients::Dtype"],[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL2EEXL0EEERK4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward_gradients::atom_diffdiff"],[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL2EEXL1EEERK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward_gradients::atom_diffdiff"],[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL2EEXL0EEERK4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward_gradients::atom_diffdiff"],[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL2EEXL1EEERK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward_gradients::atom_diffdiff"],[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL2EEXL0EEERK4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward_gradients::atom_gradients"],[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL2EEXL1EEERK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward_gradients::atom_gradients"],[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL2EEXL0EEERK4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward_gradients::atom_gradients"],[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL2EEXL1EEERK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward_gradients::atom_gradients"],[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL2EEXL0EEERK4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward_gradients::coords"],[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL2EEXL1EEERK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward_gradients::coords"],[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL2EEXL0EEERK4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward_gradients::diff"],[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL2EEXL1EEERK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward_gradients::diff"],[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL2EEXL0EEERK4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward_gradients::diff"],[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL2EEXL1EEERK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward_gradients::diff"],[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL2EEXL0EEERK4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward_gradients::diffdiff"],[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL2EEXL1EEERK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward_gradients::diffdiff"],[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL2EEXL0EEERK4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward_gradients::diffdiff"],[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL2EEXL1EEERK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward_gradients::diffdiff"],[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL2EEXL0EEERK4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward_gradients::grid_center"],[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL2EEXL1EEERK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward_gradients::grid_center"],[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL2EEXL0EEERK4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward_gradients::grid_center"],[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL2EEXL1EEERK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward_gradients::grid_center"],[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL2EEXL0EEERK4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward_gradients::in"],[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL2EEXL1EEERK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward_gradients::in"],[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL2EEXL0EEERK4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward_gradients::radii"],[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL2EEXL1EEERK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward_gradients::radii"],[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL2EEXL0EEERK4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward_gradients::type_diffdiff"],[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL2EEXL1EEERK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward_gradients::type_diffdiff"],[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL2EEXL0EEERK4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward_gradients::type_diffdiff"],[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL2EEXL1EEERK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward_gradients::type_diffdiff"],[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL2EEXL0EEERK4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward_gradients::type_gradients"],[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL2EEXL1EEERK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward_gradients::type_gradients"],[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL2EEXL0EEERK4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward_gradients::type_gradients"],[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL2EEXL1EEERK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward_gradients::type_gradients"],[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL2EEXL0EEERK4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEE","libmolgrid::GridMaker::backward_gradients::type_vectors"],[0,2,1,"_CPPv4I0EN10libmolgrid9GridMaker18backward_gradientsEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL2EEXL1EEERK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEE","libmolgrid::GridMaker::backward_gradients::type_vectors"],[0,1,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL1EEXL0EEE","libmolgrid::GridMaker::backward_relevance"],[0,1,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL1EEXL1EEE","libmolgrid::GridMaker::backward_relevance"],[0,1,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL1EEXL0EEE","libmolgrid::GridMaker::backward_relevance"],[0,1,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL1EEXL1EEE","libmolgrid::GridMaker::backward_relevance"],[0,5,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL1EEXL0EEE","libmolgrid::GridMaker::backward_relevance::Dtype"],[0,5,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL1EEXL1EEE","libmolgrid::GridMaker::backward_relevance::Dtype"],[0,5,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL1EEXL0EEE","libmolgrid::GridMaker::backward_relevance::Dtype"],[0,5,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL1EEXL1EEE","libmolgrid::GridMaker::backward_relevance::Dtype"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL1EEXL0EEE","libmolgrid::GridMaker::backward_relevance::coords"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL1EEXL1EEE","libmolgrid::GridMaker::backward_relevance::coords"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL1EEXL0EEE","libmolgrid::GridMaker::backward_relevance::density"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL1EEXL1EEE","libmolgrid::GridMaker::backward_relevance::density"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL1EEXL0EEE","libmolgrid::GridMaker::backward_relevance::density"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL1EEXL1EEE","libmolgrid::GridMaker::backward_relevance::density"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL1EEXL0EEE","libmolgrid::GridMaker::backward_relevance::diff"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL1EEXL1EEE","libmolgrid::GridMaker::backward_relevance::diff"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL1EEXL0EEE","libmolgrid::GridMaker::backward_relevance::diff"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL1EEXL1EEE","libmolgrid::GridMaker::backward_relevance::diff"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL1EEXL0EEE","libmolgrid::GridMaker::backward_relevance::grid_center"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL1EEXL1EEE","libmolgrid::GridMaker::backward_relevance::grid_center"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL1EEXL0EEE","libmolgrid::GridMaker::backward_relevance::grid_center"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL1EEXL1EEE","libmolgrid::GridMaker::backward_relevance::grid_center"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL1EEXL0EEE","libmolgrid::GridMaker::backward_relevance::in"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL1EEXL1EEE","libmolgrid::GridMaker::backward_relevance::in"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL1EEXL0EEE","libmolgrid::GridMaker::backward_relevance::radii"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL1EEXL1EEE","libmolgrid::GridMaker::backward_relevance::radii"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL1EEXL0EEE","libmolgrid::GridMaker::backward_relevance::relevance"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK13CoordinateSetRK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL1EEXL1EEE","libmolgrid::GridMaker::backward_relevance::relevance"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL1EEXL0EEE","libmolgrid::GridMaker::backward_relevance::relevance"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL1EEXL1EEE","libmolgrid::GridMaker::backward_relevance::relevance"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridIfXL1EEXL0EEERK4GridI5DtypeXL4EEXL0EEERK4GridI5DtypeXL4EEXL0EEER4GridI5DtypeXL1EEXL0EEE","libmolgrid::GridMaker::backward_relevance::type_index"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker18backward_relevanceEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridIfXL1EEXL1EEERK4GridI5DtypeXL4EEXL1EEERK4GridI5DtypeXL4EEXL1EEER4GridI5DtypeXL1EEXL1EEE","libmolgrid::GridMaker::backward_relevance::type_index"],[0,1,1,"_CPPv4I0ENK10libmolgrid9GridMaker22calc_atom_gradient_cpuE6float3RK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEEf","libmolgrid::GridMaker::calc_atom_gradient_cpu"],[0,5,1,"_CPPv4I0ENK10libmolgrid9GridMaker22calc_atom_gradient_cpuE6float3RK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEEf","libmolgrid::GridMaker::calc_atom_gradient_cpu::Dtype"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker22calc_atom_gradient_cpuE6float3RK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEEf","libmolgrid::GridMaker::calc_atom_gradient_cpu::coord"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker22calc_atom_gradient_cpuE6float3RK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEEf","libmolgrid::GridMaker::calc_atom_gradient_cpu::diff"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker22calc_atom_gradient_cpuE6float3RK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEEf","libmolgrid::GridMaker::calc_atom_gradient_cpu::grid_origin"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker22calc_atom_gradient_cpuE6float3RK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEEf","libmolgrid::GridMaker::calc_atom_gradient_cpu::radius"],[0,1,1,"_CPPv4I0ENK10libmolgrid9GridMaker23calc_atom_relevance_cpuEfRK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEERK4GridI5DtypeXL3EEXL0EEEf","libmolgrid::GridMaker::calc_atom_relevance_cpu"],[0,5,1,"_CPPv4I0ENK10libmolgrid9GridMaker23calc_atom_relevance_cpuEfRK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEERK4GridI5DtypeXL3EEXL0EEEf","libmolgrid::GridMaker::calc_atom_relevance_cpu::Dtype"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker23calc_atom_relevance_cpuEfRK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEERK4GridI5DtypeXL3EEXL0EEEf","libmolgrid::GridMaker::calc_atom_relevance_cpu::coord"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker23calc_atom_relevance_cpuEfRK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEERK4GridI5DtypeXL3EEXL0EEEf","libmolgrid::GridMaker::calc_atom_relevance_cpu::density"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker23calc_atom_relevance_cpuEfRK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEERK4GridI5DtypeXL3EEXL0EEEf","libmolgrid::GridMaker::calc_atom_relevance_cpu::diff"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker23calc_atom_relevance_cpuEfRK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEERK4GridI5DtypeXL3EEXL0EEEf","libmolgrid::GridMaker::calc_atom_relevance_cpu::grid_origin"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker23calc_atom_relevance_cpuEfRK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEERK4GridI5DtypeXL3EEXL0EEEf","libmolgrid::GridMaker::calc_atom_relevance_cpu::radius"],[0,1,1,"_CPPv4I_bENK10libmolgrid9GridMaker10calc_pointEfffffRK6float3","libmolgrid::GridMaker::calc_point"],[0,5,1,"_CPPv4I_bENK10libmolgrid9GridMaker10calc_pointEfffffRK6float3","libmolgrid::GridMaker::calc_point::Binary"],[0,2,1,"_CPPv4I_bENK10libmolgrid9GridMaker10calc_pointEfffffRK6float3","libmolgrid::GridMaker::calc_point::ar"],[0,2,1,"_CPPv4I_bENK10libmolgrid9GridMaker10calc_pointEfffffRK6float3","libmolgrid::GridMaker::calc_point::ax"],[0,2,1,"_CPPv4I_bENK10libmolgrid9GridMaker10calc_pointEfffffRK6float3","libmolgrid::GridMaker::calc_point::ay"],[0,2,1,"_CPPv4I_bENK10libmolgrid9GridMaker10calc_pointEfffffRK6float3","libmolgrid::GridMaker::calc_point::az"],[0,2,1,"_CPPv4I_bENK10libmolgrid9GridMaker10calc_pointEfffffRK6float3","libmolgrid::GridMaker::calc_point::grid_coords"],[0,1,1,"_CPPv4I0ENK10libmolgrid9GridMaker22calc_type_gradient_cpuEfRK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEEf","libmolgrid::GridMaker::calc_type_gradient_cpu"],[0,5,1,"_CPPv4I0ENK10libmolgrid9GridMaker22calc_type_gradient_cpuEfRK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEEf","libmolgrid::GridMaker::calc_type_gradient_cpu::Dtype"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker22calc_type_gradient_cpuEfRK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEEf","libmolgrid::GridMaker::calc_type_gradient_cpu::coord"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker22calc_type_gradient_cpuEfRK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEEf","libmolgrid::GridMaker::calc_type_gradient_cpu::diff"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker22calc_type_gradient_cpuEfRK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEEf","libmolgrid::GridMaker::calc_type_gradient_cpu::grid_origin"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker22calc_type_gradient_cpuEfRK6float3RK6Grid1fRK4GridI5DtypeXL3EEXL0EEEf","libmolgrid::GridMaker::calc_type_gradient_cpu::radius"],[0,1,1,"_CPPv4NK10libmolgrid9GridMaker17density_grad_distEff","libmolgrid::GridMaker::density_grad_dist"],[0,2,1,"_CPPv4NK10libmolgrid9GridMaker17density_grad_distEff","libmolgrid::GridMaker::density_grad_dist::ar"],[0,2,1,"_CPPv4NK10libmolgrid9GridMaker17density_grad_distEff","libmolgrid::GridMaker::density_grad_dist::dist"],[0,1,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK13CoordinateSetR4GridI5DtypeXL4EEXL0EEE","libmolgrid::GridMaker::forward"],[0,1,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK13CoordinateSetR4GridI5DtypeXL4EEXL1EEE","libmolgrid::GridMaker::forward"],[0,1,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridIfXL1EEXL0EEER4GridI5DtypeXL4EEXL0EEE","libmolgrid::GridMaker::forward"],[0,1,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEER4GridI5DtypeXL4EEXL0EEE","libmolgrid::GridMaker::forward"],[0,1,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridIfXL1EEXL1EEER4GridI5DtypeXL4EEXL1EEE","libmolgrid::GridMaker::forward"],[0,1,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEER4GridI5DtypeXL4EEXL1EEE","libmolgrid::GridMaker::forward"],[0,1,1,"_CPPv4I0_bENK10libmolgrid9GridMaker7forwardEvRK7ExampleR4GridI5DtypeXL4EE6isCUDAEfbRK6float3","libmolgrid::GridMaker::forward"],[0,1,1,"_CPPv4I0_bENK10libmolgrid9GridMaker7forwardEvRK7ExampleRK9TransformR4GridI5DtypeXL4EE6isCUDAE","libmolgrid::GridMaker::forward"],[0,1,1,"_CPPv4I0_bENK10libmolgrid9GridMaker7forwardEvRKNSt6vectorI7ExampleEER4GridI5DtypeXL5EE6isCUDAEfb","libmolgrid::GridMaker::forward"],[0,1,1,"_CPPv4I0_i_bENK10libmolgrid9GridMaker7forwardEvRK4GridIfXL2EE6isCUDAERK4GridIfXL3EE6isCUDAERK4GridIf1N6isCUDAERK4GridIfXL2EE6isCUDAER4GridI5DtypeXL5EE6isCUDAE","libmolgrid::GridMaker::forward"],[0,5,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK13CoordinateSetR4GridI5DtypeXL4EEXL0EEE","libmolgrid::GridMaker::forward::Dtype"],[0,5,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK13CoordinateSetR4GridI5DtypeXL4EEXL1EEE","libmolgrid::GridMaker::forward::Dtype"],[0,5,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridIfXL1EEXL0EEER4GridI5DtypeXL4EEXL0EEE","libmolgrid::GridMaker::forward::Dtype"],[0,5,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEER4GridI5DtypeXL4EEXL0EEE","libmolgrid::GridMaker::forward::Dtype"],[0,5,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridIfXL1EEXL1EEER4GridI5DtypeXL4EEXL1EEE","libmolgrid::GridMaker::forward::Dtype"],[0,5,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEER4GridI5DtypeXL4EEXL1EEE","libmolgrid::GridMaker::forward::Dtype"],[0,5,1,"_CPPv4I0_bENK10libmolgrid9GridMaker7forwardEvRK7ExampleR4GridI5DtypeXL4EE6isCUDAEfbRK6float3","libmolgrid::GridMaker::forward::Dtype"],[0,5,1,"_CPPv4I0_bENK10libmolgrid9GridMaker7forwardEvRK7ExampleRK9TransformR4GridI5DtypeXL4EE6isCUDAE","libmolgrid::GridMaker::forward::Dtype"],[0,5,1,"_CPPv4I0_bENK10libmolgrid9GridMaker7forwardEvRKNSt6vectorI7ExampleEER4GridI5DtypeXL5EE6isCUDAEfb","libmolgrid::GridMaker::forward::Dtype"],[0,5,1,"_CPPv4I0_i_bENK10libmolgrid9GridMaker7forwardEvRK4GridIfXL2EE6isCUDAERK4GridIfXL3EE6isCUDAERK4GridIf1N6isCUDAERK4GridIfXL2EE6isCUDAER4GridI5DtypeXL5EE6isCUDAE","libmolgrid::GridMaker::forward::Dtype"],[0,5,1,"_CPPv4I0_i_bENK10libmolgrid9GridMaker7forwardEvRK4GridIfXL2EE6isCUDAERK4GridIfXL3EE6isCUDAERK4GridIf1N6isCUDAERK4GridIfXL2EE6isCUDAER4GridI5DtypeXL5EE6isCUDAE","libmolgrid::GridMaker::forward::N"],[0,2,1,"_CPPv4I0_bENK10libmolgrid9GridMaker7forwardEvRK7ExampleR4GridI5DtypeXL4EE6isCUDAEfbRK6float3","libmolgrid::GridMaker::forward::center"],[0,2,1,"_CPPv4I0_i_bENK10libmolgrid9GridMaker7forwardEvRK4GridIfXL2EE6isCUDAERK4GridIfXL3EE6isCUDAERK4GridIf1N6isCUDAERK4GridIfXL2EE6isCUDAER4GridI5DtypeXL5EE6isCUDAE","libmolgrid::GridMaker::forward::centers"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridIfXL1EEXL0EEER4GridI5DtypeXL4EEXL0EEE","libmolgrid::GridMaker::forward::coords"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEER4GridI5DtypeXL4EEXL0EEE","libmolgrid::GridMaker::forward::coords"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridIfXL1EEXL1EEER4GridI5DtypeXL4EEXL1EEE","libmolgrid::GridMaker::forward::coords"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEER4GridI5DtypeXL4EEXL1EEE","libmolgrid::GridMaker::forward::coords"],[0,2,1,"_CPPv4I0_i_bENK10libmolgrid9GridMaker7forwardEvRK4GridIfXL2EE6isCUDAERK4GridIfXL3EE6isCUDAERK4GridIf1N6isCUDAERK4GridIfXL2EE6isCUDAER4GridI5DtypeXL5EE6isCUDAE","libmolgrid::GridMaker::forward::coords"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK13CoordinateSetR4GridI5DtypeXL4EEXL0EEE","libmolgrid::GridMaker::forward::grid_center"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK13CoordinateSetR4GridI5DtypeXL4EEXL1EEE","libmolgrid::GridMaker::forward::grid_center"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridIfXL1EEXL0EEER4GridI5DtypeXL4EEXL0EEE","libmolgrid::GridMaker::forward::grid_center"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEER4GridI5DtypeXL4EEXL0EEE","libmolgrid::GridMaker::forward::grid_center"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridIfXL1EEXL1EEER4GridI5DtypeXL4EEXL1EEE","libmolgrid::GridMaker::forward::grid_center"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEER4GridI5DtypeXL4EEXL1EEE","libmolgrid::GridMaker::forward::grid_center"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK13CoordinateSetR4GridI5DtypeXL4EEXL0EEE","libmolgrid::GridMaker::forward::in"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK13CoordinateSetR4GridI5DtypeXL4EEXL1EEE","libmolgrid::GridMaker::forward::in"],[0,2,1,"_CPPv4I0_bENK10libmolgrid9GridMaker7forwardEvRK7ExampleR4GridI5DtypeXL4EE6isCUDAEfbRK6float3","libmolgrid::GridMaker::forward::in"],[0,2,1,"_CPPv4I0_bENK10libmolgrid9GridMaker7forwardEvRK7ExampleRK9TransformR4GridI5DtypeXL4EE6isCUDAE","libmolgrid::GridMaker::forward::in"],[0,2,1,"_CPPv4I0_bENK10libmolgrid9GridMaker7forwardEvRKNSt6vectorI7ExampleEER4GridI5DtypeXL5EE6isCUDAEfb","libmolgrid::GridMaker::forward::in"],[0,5,1,"_CPPv4I0_bENK10libmolgrid9GridMaker7forwardEvRK7ExampleR4GridI5DtypeXL4EE6isCUDAEfbRK6float3","libmolgrid::GridMaker::forward::isCUDA"],[0,5,1,"_CPPv4I0_bENK10libmolgrid9GridMaker7forwardEvRK7ExampleRK9TransformR4GridI5DtypeXL4EE6isCUDAE","libmolgrid::GridMaker::forward::isCUDA"],[0,5,1,"_CPPv4I0_bENK10libmolgrid9GridMaker7forwardEvRKNSt6vectorI7ExampleEER4GridI5DtypeXL5EE6isCUDAEfb","libmolgrid::GridMaker::forward::isCUDA"],[0,5,1,"_CPPv4I0_i_bENK10libmolgrid9GridMaker7forwardEvRK4GridIfXL2EE6isCUDAERK4GridIfXL3EE6isCUDAERK4GridIf1N6isCUDAERK4GridIfXL2EE6isCUDAER4GridI5DtypeXL5EE6isCUDAE","libmolgrid::GridMaker::forward::isCUDA"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK13CoordinateSetR4GridI5DtypeXL4EEXL0EEE","libmolgrid::GridMaker::forward::out"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK13CoordinateSetR4GridI5DtypeXL4EEXL1EEE","libmolgrid::GridMaker::forward::out"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridIfXL1EEXL0EEER4GridI5DtypeXL4EEXL0EEE","libmolgrid::GridMaker::forward::out"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEER4GridI5DtypeXL4EEXL0EEE","libmolgrid::GridMaker::forward::out"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridIfXL1EEXL1EEER4GridI5DtypeXL4EEXL1EEE","libmolgrid::GridMaker::forward::out"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEER4GridI5DtypeXL4EEXL1EEE","libmolgrid::GridMaker::forward::out"],[0,2,1,"_CPPv4I0_bENK10libmolgrid9GridMaker7forwardEvRK7ExampleR4GridI5DtypeXL4EE6isCUDAEfbRK6float3","libmolgrid::GridMaker::forward::out"],[0,2,1,"_CPPv4I0_bENK10libmolgrid9GridMaker7forwardEvRK7ExampleRK9TransformR4GridI5DtypeXL4EE6isCUDAE","libmolgrid::GridMaker::forward::out"],[0,2,1,"_CPPv4I0_bENK10libmolgrid9GridMaker7forwardEvRKNSt6vectorI7ExampleEER4GridI5DtypeXL5EE6isCUDAEfb","libmolgrid::GridMaker::forward::out"],[0,2,1,"_CPPv4I0_i_bENK10libmolgrid9GridMaker7forwardEvRK4GridIfXL2EE6isCUDAERK4GridIfXL3EE6isCUDAERK4GridIf1N6isCUDAERK4GridIfXL2EE6isCUDAER4GridI5DtypeXL5EE6isCUDAE","libmolgrid::GridMaker::forward::out"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridIfXL1EEXL0EEER4GridI5DtypeXL4EEXL0EEE","libmolgrid::GridMaker::forward::radii"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEER4GridI5DtypeXL4EEXL0EEE","libmolgrid::GridMaker::forward::radii"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridIfXL1EEXL1EEER4GridI5DtypeXL4EEXL1EEE","libmolgrid::GridMaker::forward::radii"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEER4GridI5DtypeXL4EEXL1EEE","libmolgrid::GridMaker::forward::radii"],[0,2,1,"_CPPv4I0_i_bENK10libmolgrid9GridMaker7forwardEvRK4GridIfXL2EE6isCUDAERK4GridIfXL3EE6isCUDAERK4GridIf1N6isCUDAERK4GridIfXL2EE6isCUDAER4GridI5DtypeXL5EE6isCUDAE","libmolgrid::GridMaker::forward::radii"],[0,2,1,"_CPPv4I0_bENK10libmolgrid9GridMaker7forwardEvRK7ExampleR4GridI5DtypeXL4EE6isCUDAEfbRK6float3","libmolgrid::GridMaker::forward::random_rotation"],[0,2,1,"_CPPv4I0_bENK10libmolgrid9GridMaker7forwardEvRKNSt6vectorI7ExampleEER4GridI5DtypeXL5EE6isCUDAEfb","libmolgrid::GridMaker::forward::random_rotation"],[0,2,1,"_CPPv4I0_bENK10libmolgrid9GridMaker7forwardEvRK7ExampleR4GridI5DtypeXL4EE6isCUDAEfbRK6float3","libmolgrid::GridMaker::forward::random_translation"],[0,2,1,"_CPPv4I0_bENK10libmolgrid9GridMaker7forwardEvRKNSt6vectorI7ExampleEER4GridI5DtypeXL5EE6isCUDAEfb","libmolgrid::GridMaker::forward::random_translation"],[0,2,1,"_CPPv4I0_bENK10libmolgrid9GridMaker7forwardEvRK7ExampleRK9TransformR4GridI5DtypeXL4EE6isCUDAE","libmolgrid::GridMaker::forward::transform"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEERK4GridIfXL1EEXL0EEER4GridI5DtypeXL4EEXL0EEE","libmolgrid::GridMaker::forward::type_index"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEERK4GridIfXL1EEXL1EEER4GridI5DtypeXL4EEXL1EEE","libmolgrid::GridMaker::forward::type_index"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK4GridIfXL2EEXL0EEERK4GridIfXL2EEXL0EEERK4GridIfXL1EEXL0EEER4GridI5DtypeXL4EEXL0EEE","libmolgrid::GridMaker::forward::type_vector"],[0,2,1,"_CPPv4I0ENK10libmolgrid9GridMaker7forwardEv6float3RK4GridIfXL2EEXL1EEERK4GridIfXL2EEXL1EEERK4GridIfXL1EEXL1EEER4GridI5DtypeXL4EEXL1EEE","libmolgrid::GridMaker::forward::type_vector"],[0,2,1,"_CPPv4I0_i_bENK10libmolgrid9GridMaker7forwardEvRK4GridIfXL2EE6isCUDAERK4GridIfXL3EE6isCUDAERK4GridIf1N6isCUDAERK4GridIfXL2EE6isCUDAER4GridI5DtypeXL5EE6isCUDAE","libmolgrid::GridMaker::forward::types"],[0,1,1,"_CPPv4NK10libmolgrid9GridMaker10get_binaryEv","libmolgrid::GridMaker::get_binary"],[0,1,1,"_CPPv4NK10libmolgrid9GridMaker13get_bounds_1dEKfff","libmolgrid::GridMaker::get_bounds_1d"],[0,2,1,"_CPPv4NK10libmolgrid9GridMaker13get_bounds_1dEKfff","libmolgrid::GridMaker::get_bounds_1d::coord"],[0,2,1,"_CPPv4NK10libmolgrid9GridMaker13get_bounds_1dEKfff","libmolgrid::GridMaker::get_bounds_1d::densityrad"],[0,2,1,"_CPPv4NK10libmolgrid9GridMaker13get_bounds_1dEKfff","libmolgrid::GridMaker::get_bounds_1d::grid_origin"],[0,1,1,"_CPPv4NK10libmolgrid9GridMaker13get_dimensionEv","libmolgrid::GridMaker::get_dimension"],[0,1,1,"_CPPv4NK10libmolgrid9GridMaker13get_first_dimEv","libmolgrid::GridMaker::get_first_dim"],[0,1,1,"_CPPv4NK10libmolgrid9GridMaker13get_grid_dimsEv","libmolgrid::GridMaker::get_grid_dims"],[0,1,1,"_CPPv4NK10libmolgrid9GridMaker15get_grid_originERK6float3","libmolgrid::GridMaker::get_grid_origin"],[0,2,1,"_CPPv4NK10libmolgrid9GridMaker15get_grid_originERK6float3","libmolgrid::GridMaker::get_grid_origin::grid_center"],[0,1,1,"_CPPv4NK10libmolgrid9GridMaker22get_radii_type_indexedEv","libmolgrid::GridMaker::get_radii_type_indexed"],[0,1,1,"_CPPv4NK10libmolgrid9GridMaker18get_radiusmultipleEv","libmolgrid::GridMaker::get_radiusmultiple"],[0,1,1,"_CPPv4NK10libmolgrid9GridMaker14get_resolutionEv","libmolgrid::GridMaker::get_resolution"],[0,1,1,"_CPPv4N10libmolgrid9GridMaker10initializeEffbff","libmolgrid::GridMaker::initialize"],[0,2,1,"_CPPv4N10libmolgrid9GridMaker10initializeEffbff","libmolgrid::GridMaker::initialize::bin"],[0,2,1,"_CPPv4N10libmolgrid9GridMaker10initializeEffbff","libmolgrid::GridMaker::initialize::d"],[0,2,1,"_CPPv4N10libmolgrid9GridMaker10initializeEffbff","libmolgrid::GridMaker::initialize::grm"],[0,2,1,"_CPPv4N10libmolgrid9GridMaker10initializeEffbff","libmolgrid::GridMaker::initialize::res"],[0,2,1,"_CPPv4N10libmolgrid9GridMaker10initializeEffbff","libmolgrid::GridMaker::initialize::rscale"],[0,1,1,"_CPPv4N10libmolgrid9GridMaker10set_binaryEb","libmolgrid::GridMaker::set_binary"],[0,2,1,"_CPPv4N10libmolgrid9GridMaker10set_binaryEb","libmolgrid::GridMaker::set_binary::b"],[0,1,1,"_CPPv4N10libmolgrid9GridMaker13set_dimensionEf","libmolgrid::GridMaker::set_dimension"],[0,2,1,"_CPPv4N10libmolgrid9GridMaker13set_dimensionEf","libmolgrid::GridMaker::set_dimension::d"],[0,1,1,"_CPPv4N10libmolgrid9GridMaker22set_radii_type_indexedEb","libmolgrid::GridMaker::set_radii_type_indexed"],[0,2,1,"_CPPv4N10libmolgrid9GridMaker22set_radii_type_indexedEb","libmolgrid::GridMaker::set_radii_type_indexed::b"],[0,1,1,"_CPPv4N10libmolgrid9GridMaker14set_resolutionEf","libmolgrid::GridMaker::set_resolution"],[0,2,1,"_CPPv4N10libmolgrid9GridMaker14set_resolutionEf","libmolgrid::GridMaker::set_resolution::res"],[0,1,1,"_CPPv4N10libmolgrid9GridMaker14type_grad_gradEffff","libmolgrid::GridMaker::type_grad_grad"],[0,2,1,"_CPPv4N10libmolgrid9GridMaker14type_grad_gradEffff","libmolgrid::GridMaker::type_grad_grad::a"],[0,2,1,"_CPPv4N10libmolgrid9GridMaker14type_grad_gradEffff","libmolgrid::GridMaker::type_grad_grad::dist"],[0,2,1,"_CPPv4N10libmolgrid9GridMaker14type_grad_gradEffff","libmolgrid::GridMaker::type_grad_grad::r"],[0,2,1,"_CPPv4N10libmolgrid9GridMaker14type_grad_gradEffff","libmolgrid::GridMaker::type_grad_grad::x"],[0,1,1,"_CPPv4N10libmolgrid9GridMakerD0Ev","libmolgrid::GridMaker::~GridMaker"],[0,0,1,"_CPPv4I0EN10libmolgrid25GroupedExampleRefProviderE","libmolgrid::GroupedExampleRefProvider"],[0,1,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider25GroupedExampleRefProviderERK23ExampleProviderSettings","libmolgrid::GroupedExampleRefProvider::GroupedExampleRefProvider"],[0,1,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider25GroupedExampleRefProviderEv","libmolgrid::GroupedExampleRefProvider::GroupedExampleRefProvider"],[0,2,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider25GroupedExampleRefProviderERK23ExampleProviderSettings","libmolgrid::GroupedExampleRefProvider::GroupedExampleRefProvider::parm"],[0,5,1,"_CPPv4I0EN10libmolgrid25GroupedExampleRefProviderE","libmolgrid::GroupedExampleRefProvider::Provider"],[0,1,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider6addrefERK10ExampleRef","libmolgrid::GroupedExampleRefProvider::addref"],[0,2,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider6addrefERK10ExampleRef","libmolgrid::GroupedExampleRefProvider::addref::ex"],[0,3,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider10batch_sizeE","libmolgrid::GroupedExampleRefProvider::batch_size"],[0,1,1,"_CPPv4NK10libmolgrid25GroupedExampleRefProvider16check_batch_sizeEj","libmolgrid::GroupedExampleRefProvider::check_batch_size"],[0,2,1,"_CPPv4NK10libmolgrid25GroupedExampleRefProvider16check_batch_sizeEj","libmolgrid::GroupedExampleRefProvider::check_batch_size::bsize"],[0,3,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider19current_group_indexE","libmolgrid::GroupedExampleRefProvider::current_group_index"],[0,3,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider14current_groupsE","libmolgrid::GroupedExampleRefProvider::current_groups"],[0,3,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider10current_tsE","libmolgrid::GroupedExampleRefProvider::current_ts"],[0,3,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider8examplesE","libmolgrid::GroupedExampleRefProvider::examples"],[0,3,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider12frame_groupsE","libmolgrid::GroupedExampleRefProvider::frame_groups"],[0,1,1,"_CPPv4NK10libmolgrid25GroupedExampleRefProvider19get_large_epoch_numEv","libmolgrid::GroupedExampleRefProvider::get_large_epoch_num"],[0,1,1,"_CPPv4NK10libmolgrid25GroupedExampleRefProvider19get_small_epoch_numEv","libmolgrid::GroupedExampleRefProvider::get_small_epoch_num"],[0,1,1,"_CPPv4NK10libmolgrid25GroupedExampleRefProvider9has_groupEv","libmolgrid::GroupedExampleRefProvider::has_group"],[0,1,1,"_CPPv4NK10libmolgrid25GroupedExampleRefProvider16large_epoch_sizeEv","libmolgrid::GroupedExampleRefProvider::large_epoch_size"],[0,3,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider12maxgroupsizeE","libmolgrid::GroupedExampleRefProvider::maxgroupsize"],[0,1,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider7nextrefER10ExampleRef","libmolgrid::GroupedExampleRefProvider::nextref"],[0,2,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider7nextrefER10ExampleRef","libmolgrid::GroupedExampleRefProvider::nextref::ex"],[0,1,1,"_CPPv4NK10libmolgrid25GroupedExampleRefProvider10num_labelsEv","libmolgrid::GroupedExampleRefProvider::num_labels"],[0,1,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider8populateERNSt7istreamEi","libmolgrid::GroupedExampleRefProvider::populate"],[0,2,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider8populateERNSt7istreamEi","libmolgrid::GroupedExampleRefProvider::populate::lines"],[0,2,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider8populateERNSt7istreamEi","libmolgrid::GroupedExampleRefProvider::populate::numlabels"],[0,1,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider5resetEv","libmolgrid::GroupedExampleRefProvider::reset"],[0,1,1,"_CPPv4N10libmolgrid25GroupedExampleRefProvider5setupEv","libmolgrid::GroupedExampleRefProvider::setup"],[0,1,1,"_CPPv4NK10libmolgrid25GroupedExampleRefProvider4sizeEv","libmolgrid::GroupedExampleRefProvider::size"],[0,1,1,"_CPPv4NK10libmolgrid25GroupedExampleRefProvider16small_epoch_sizeEv","libmolgrid::GroupedExampleRefProvider::small_epoch_size"],[0,0,1,"_CPPv4I0_NSt6size_tEEN10libmolgrid11ManagedGridE","libmolgrid::ManagedGrid"],[0,5,1,"_CPPv4I0_NSt6size_tEEN10libmolgrid11ManagedGridE","libmolgrid::ManagedGrid::Dtype"],[0,1,1,"_CPPv4IDp0EN10libmolgrid11ManagedGrid11ManagedGridEDp1I","libmolgrid::ManagedGrid::ManagedGrid"],[0,1,1,"_CPPv4N10libmolgrid11ManagedGrid11ManagedGridEv","libmolgrid::ManagedGrid::ManagedGrid"],[0,5,1,"_CPPv4IDp0EN10libmolgrid11ManagedGrid11ManagedGridEDp1I","libmolgrid::ManagedGrid::ManagedGrid::I"],[0,2,1,"_CPPv4IDp0EN10libmolgrid11ManagedGrid11ManagedGridEDp1I","libmolgrid::ManagedGrid::ManagedGrid::sizes"],[0,5,1,"_CPPv4I0_NSt6size_tEEN10libmolgrid11ManagedGridE","libmolgrid::ManagedGrid::NumDims"],[0,4,1,"_CPPv4N10libmolgrid11ManagedGrid6base_tE","libmolgrid::ManagedGrid::base_t"],[0,1,1,"_CPPv4NK10libmolgrid11ManagedGrid5cloneEv","libmolgrid::ManagedGrid::clone"],[0,1,1,"_CPPv4NK10libmolgrid11ManagedGridixE6size_t","libmolgrid::ManagedGrid::operator[]"],[0,2,1,"_CPPv4NK10libmolgrid11ManagedGridixE6size_t","libmolgrid::ManagedGrid::operator[]::i"],[0,4,1,"_CPPv4N10libmolgrid11ManagedGrid9subgrid_tE","libmolgrid::ManagedGrid::subgrid_t"],[0,0,1,"_CPPv4I0_NSt6size_tEEN10libmolgrid15ManagedGridBaseE","libmolgrid::ManagedGridBase"],[0,5,1,"_CPPv4I0_NSt6size_tEEN10libmolgrid15ManagedGridBaseE","libmolgrid::ManagedGridBase::Dtype"],[0,3,1,"_CPPv4N10libmolgrid15ManagedGridBase1NE","libmolgrid::ManagedGridBase::N"],[0,5,1,"_CPPv4I0_NSt6size_tEEN10libmolgrid15ManagedGridBaseE","libmolgrid::ManagedGridBase::NumDims"],[0,1,1,"_CPPv4N10libmolgrid15ManagedGridBase8copyFromERK10cpu_grid_t","libmolgrid::ManagedGridBase::copyFrom"],[0,1,1,"_CPPv4N10libmolgrid15ManagedGridBase8copyFromERK10gpu_grid_t","libmolgrid::ManagedGridBase::copyFrom"],[0,1,1,"_CPPv4N10libmolgrid15ManagedGridBase8copyFromERK15ManagedGridBaseI5Dtype7NumDimsE","libmolgrid::ManagedGridBase::copyFrom"],[0,2,1,"_CPPv4N10libmolgrid15ManagedGridBase8copyFromERK10cpu_grid_t","libmolgrid::ManagedGridBase::copyFrom::src"],[0,2,1,"_CPPv4N10libmolgrid15ManagedGridBase8copyFromERK10gpu_grid_t","libmolgrid::ManagedGridBase::copyFrom::src"],[0,2,1,"_CPPv4N10libmolgrid15ManagedGridBase8copyFromERK15ManagedGridBaseI5Dtype7NumDimsE","libmolgrid::ManagedGridBase::copyFrom::src"],[0,1,1,"_CPPv4N10libmolgrid15ManagedGridBase8copyIntoE6size_tRK15ManagedGridBaseI5Dtype7NumDimsE","libmolgrid::ManagedGridBase::copyInto"],[0,2,1,"_CPPv4N10libmolgrid15ManagedGridBase8copyIntoE6size_tRK15ManagedGridBaseI5Dtype7NumDimsE","libmolgrid::ManagedGridBase::copyInto::src"],[0,2,1,"_CPPv4N10libmolgrid15ManagedGridBase8copyIntoE6size_tRK15ManagedGridBaseI5Dtype7NumDimsE","libmolgrid::ManagedGridBase::copyInto::start"],[0,1,1,"_CPPv4NK10libmolgrid15ManagedGridBase6copyToER10cpu_grid_t","libmolgrid::ManagedGridBase::copyTo"],[0,1,1,"_CPPv4NK10libmolgrid15ManagedGridBase6copyToER10gpu_grid_t","libmolgrid::ManagedGridBase::copyTo"],[0,1,1,"_CPPv4NK10libmolgrid15ManagedGridBase6copyToER15ManagedGridBaseI5Dtype7NumDimsE","libmolgrid::ManagedGridBase::copyTo"],[0,2,1,"_CPPv4NK10libmolgrid15ManagedGridBase6copyToER10cpu_grid_t","libmolgrid::ManagedGridBase::copyTo::dest"],[0,2,1,"_CPPv4NK10libmolgrid15ManagedGridBase6copyToER10gpu_grid_t","libmolgrid::ManagedGridBase::copyTo::dest"],[0,2,1,"_CPPv4NK10libmolgrid15ManagedGridBase6copyToER15ManagedGridBaseI5Dtype7NumDimsE","libmolgrid::ManagedGridBase::copyTo::dest"],[0,1,1,"_CPPv4N10libmolgrid15ManagedGridBase3cpuEv","libmolgrid::ManagedGridBase::cpu"],[0,1,1,"_CPPv4NK10libmolgrid15ManagedGridBase3cpuEv","libmolgrid::ManagedGridBase::cpu"],[0,4,1,"_CPPv4N10libmolgrid15ManagedGridBase10cpu_grid_tE","libmolgrid::ManagedGridBase::cpu_grid_t"],[0,1,1,"_CPPv4N10libmolgrid15ManagedGridBase4dataEv","libmolgrid::ManagedGridBase::data"],[0,1,1,"_CPPv4NK10libmolgrid15ManagedGridBase4dataEv","libmolgrid::ManagedGridBase::data"],[0,1,1,"_CPPv4NK10libmolgrid15ManagedGridBase9dimensionE6size_t","libmolgrid::ManagedGridBase::dimension"],[0,2,1,"_CPPv4NK10libmolgrid15ManagedGridBase9dimensionE6size_t","libmolgrid::ManagedGridBase::dimension::i"],[0,1,1,"_CPPv4NK10libmolgrid15ManagedGridBase10dimensionsEv","libmolgrid::ManagedGridBase::dimensions"],[0,1,1,"_CPPv4N10libmolgrid15ManagedGridBase9fill_zeroEv","libmolgrid::ManagedGridBase::fill_zero"],[0,1,1,"_CPPv4N10libmolgrid15ManagedGridBase3gpuEv","libmolgrid::ManagedGridBase::gpu"],[0,1,1,"_CPPv4NK10libmolgrid15ManagedGridBase3gpuEv","libmolgrid::ManagedGridBase::gpu"],[0,4,1,"_CPPv4N10libmolgrid15ManagedGridBase10gpu_grid_tE","libmolgrid::ManagedGridBase::gpu_grid_t"],[0,1,1,"_CPPv4NK10libmolgrid15ManagedGridBase6offsetE6size_t","libmolgrid::ManagedGridBase::offset"],[0,2,1,"_CPPv4NK10libmolgrid15ManagedGridBase6offsetE6size_t","libmolgrid::ManagedGridBase::offset::i"],[0,1,1,"_CPPv4NK10libmolgrid15ManagedGridBase7offsetsEv","libmolgrid::ManagedGridBase::offsets"],[0,1,1,"_CPPv4NK10libmolgrid15ManagedGridBase5oncpuEv","libmolgrid::ManagedGridBase::oncpu"],[0,1,1,"_CPPv4NK10libmolgrid15ManagedGridBase5ongpuEv","libmolgrid::ManagedGridBase::ongpu"],[0,1,1,"_CPPv4NK10libmolgrid15ManagedGridBasecv10cpu_grid_tEv","libmolgrid::ManagedGridBase::operator cpu_grid_t"],[0,1,1,"_CPPv4N10libmolgrid15ManagedGridBasecvR10cpu_grid_tEv","libmolgrid::ManagedGridBase::operator cpu_grid_t&"],[0,1,1,"_CPPv4NK10libmolgrid15ManagedGridBasecv10gpu_grid_tEv","libmolgrid::ManagedGridBase::operator gpu_grid_t"],[0,1,1,"_CPPv4N10libmolgrid15ManagedGridBasecvR10gpu_grid_tEv","libmolgrid::ManagedGridBase::operator gpu_grid_t&"],[0,1,1,"_CPPv4IDpEN10libmolgrid15ManagedGridBaseclER5DtypeDp1I","libmolgrid::ManagedGridBase::operator()"],[0,1,1,"_CPPv4IDpENK10libmolgrid15ManagedGridBaseclE5DtypeDp1I","libmolgrid::ManagedGridBase::operator()"],[0,5,1,"_CPPv4IDpEN10libmolgrid15ManagedGridBaseclER5DtypeDp1I","libmolgrid::ManagedGridBase::operator()::I"],[0,5,1,"_CPPv4IDpENK10libmolgrid15ManagedGridBaseclE5DtypeDp1I","libmolgrid::ManagedGridBase::operator()::I"],[0,2,1,"_CPPv4IDpEN10libmolgrid15ManagedGridBaseclER5DtypeDp1I","libmolgrid::ManagedGridBase::operator()::indices"],[0,2,1,"_CPPv4IDpENK10libmolgrid15ManagedGridBaseclE5DtypeDp1I","libmolgrid::ManagedGridBase::operator()::indices"],[0,1,1,"_CPPv4NK10libmolgrid15ManagedGridBaseeqERK15ManagedGridBaseI5Dtype7NumDimsE","libmolgrid::ManagedGridBase::operator=="],[0,2,1,"_CPPv4NK10libmolgrid15ManagedGridBaseeqERK15ManagedGridBaseI5Dtype7NumDimsE","libmolgrid::ManagedGridBase::operator==::rhs"],[0,1,1,"_CPPv4IDp0EN10libmolgrid15ManagedGridBase7resizedE11ManagedGridI5Dtype7NumDimsEDp1I","libmolgrid::ManagedGridBase::resized"],[0,5,1,"_CPPv4IDp0EN10libmolgrid15ManagedGridBase7resizedE11ManagedGridI5Dtype7NumDimsEDp1I","libmolgrid::ManagedGridBase::resized::I"],[0,2,1,"_CPPv4IDp0EN10libmolgrid15ManagedGridBase7resizedE11ManagedGridI5Dtype7NumDimsEDp1I","libmolgrid::ManagedGridBase::resized::sizes"],[0,1,1,"_CPPv4NK10libmolgrid15ManagedGridBase4sizeEv","libmolgrid::ManagedGridBase::size"],[0,1,1,"_CPPv4NK10libmolgrid15ManagedGridBase5tocpuEb","libmolgrid::ManagedGridBase::tocpu"],[0,2,1,"_CPPv4NK10libmolgrid15ManagedGridBase5tocpuEb","libmolgrid::ManagedGridBase::tocpu::dotransfer"],[0,1,1,"_CPPv4NK10libmolgrid15ManagedGridBase5togpuEb","libmolgrid::ManagedGridBase::togpu"],[0,2,1,"_CPPv4NK10libmolgrid15ManagedGridBase5togpuEb","libmolgrid::ManagedGridBase::togpu::dotransfer"],[0,4,1,"_CPPv4N10libmolgrid15ManagedGridBase4typeE","libmolgrid::ManagedGridBase::type"],[0,0,1,"_CPPv4I00EN10libmolgrid20MappedAtomIndexTyperE","libmolgrid::MappedAtomIndexTyper"],[0,1,1,"_CPPv4N10libmolgrid20MappedAtomIndexTyper20MappedAtomIndexTyperERK6MapperRK5Typer","libmolgrid::MappedAtomIndexTyper::MappedAtomIndexTyper"],[0,2,1,"_CPPv4N10libmolgrid20MappedAtomIndexTyper20MappedAtomIndexTyperERK6MapperRK5Typer","libmolgrid::MappedAtomIndexTyper::MappedAtomIndexTyper::map"],[0,2,1,"_CPPv4N10libmolgrid20MappedAtomIndexTyper20MappedAtomIndexTyperERK6MapperRK5Typer","libmolgrid::MappedAtomIndexTyper::MappedAtomIndexTyper::typr"],[0,5,1,"_CPPv4I00EN10libmolgrid20MappedAtomIndexTyperE","libmolgrid::MappedAtomIndexTyper::Mapper"],[0,5,1,"_CPPv4I00EN10libmolgrid20MappedAtomIndexTyperE","libmolgrid::MappedAtomIndexTyper::Typer"],[0,1,1,"_CPPv4NK10libmolgrid20MappedAtomIndexTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE","libmolgrid::MappedAtomIndexTyper::get_atom_type_index"],[0,2,1,"_CPPv4NK10libmolgrid20MappedAtomIndexTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE","libmolgrid::MappedAtomIndexTyper::get_atom_type_index::a"],[0,1,1,"_CPPv4NK10libmolgrid20MappedAtomIndexTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::MappedAtomIndexTyper::get_atom_type_vector"],[0,2,1,"_CPPv4NK10libmolgrid20MappedAtomIndexTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::MappedAtomIndexTyper::get_atom_type_vector::a"],[0,2,1,"_CPPv4NK10libmolgrid20MappedAtomIndexTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::MappedAtomIndexTyper::get_atom_type_vector::typ"],[0,1,1,"_CPPv4NK10libmolgrid20MappedAtomIndexTyper12get_int_typeEi","libmolgrid::MappedAtomIndexTyper::get_int_type"],[0,2,1,"_CPPv4NK10libmolgrid20MappedAtomIndexTyper12get_int_typeEi","libmolgrid::MappedAtomIndexTyper::get_int_type::t"],[0,1,1,"_CPPv4NK10libmolgrid20MappedAtomIndexTyper14get_type_namesEv","libmolgrid::MappedAtomIndexTyper::get_type_names"],[0,1,1,"_CPPv4NK10libmolgrid20MappedAtomIndexTyper14get_type_radiiEv","libmolgrid::MappedAtomIndexTyper::get_type_radii"],[0,1,1,"_CPPv4NK10libmolgrid20MappedAtomIndexTyper15is_vector_typerEv","libmolgrid::MappedAtomIndexTyper::is_vector_typer"],[0,1,1,"_CPPv4NK10libmolgrid20MappedAtomIndexTyper9num_typesEv","libmolgrid::MappedAtomIndexTyper::num_types"],[0,1,1,"_CPPv4N10libmolgrid20MappedAtomIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::MappedAtomIndexTyper::set_names"],[0,2,1,"_CPPv4N10libmolgrid20MappedAtomIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::MappedAtomIndexTyper::set_names::names"],[0,2,1,"_CPPv4N10libmolgrid20MappedAtomIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::MappedAtomIndexTyper::set_names::ntypes"],[0,2,1,"_CPPv4N10libmolgrid20MappedAtomIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::MappedAtomIndexTyper::set_names::type_names"],[0,1,1,"_CPPv4N10libmolgrid20MappedAtomIndexTyperD0Ev","libmolgrid::MappedAtomIndexTyper::~MappedAtomIndexTyper"],[0,0,1,"_CPPv4N10libmolgrid14NullIndexTyperE","libmolgrid::NullIndexTyper"],[0,1,1,"_CPPv4N10libmolgrid14NullIndexTyper14NullIndexTyperEv","libmolgrid::NullIndexTyper::NullIndexTyper"],[0,1,1,"_CPPv4NK10libmolgrid14NullIndexTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE","libmolgrid::NullIndexTyper::get_atom_type_index"],[0,2,1,"_CPPv4NK10libmolgrid14NullIndexTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE","libmolgrid::NullIndexTyper::get_atom_type_index::a"],[0,1,1,"_CPPv4NK10libmolgrid14NullIndexTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::NullIndexTyper::get_atom_type_vector"],[0,2,1,"_CPPv4NK10libmolgrid14NullIndexTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::NullIndexTyper::get_atom_type_vector::a"],[0,2,1,"_CPPv4NK10libmolgrid14NullIndexTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::NullIndexTyper::get_atom_type_vector::typ"],[0,1,1,"_CPPv4NK10libmolgrid14NullIndexTyper12get_int_typeEi","libmolgrid::NullIndexTyper::get_int_type"],[0,2,1,"_CPPv4NK10libmolgrid14NullIndexTyper12get_int_typeEi","libmolgrid::NullIndexTyper::get_int_type::t"],[0,1,1,"_CPPv4NK10libmolgrid14NullIndexTyper14get_type_namesEv","libmolgrid::NullIndexTyper::get_type_names"],[0,1,1,"_CPPv4NK10libmolgrid14NullIndexTyper14get_type_radiiEv","libmolgrid::NullIndexTyper::get_type_radii"],[0,1,1,"_CPPv4NK10libmolgrid14NullIndexTyper15is_vector_typerEv","libmolgrid::NullIndexTyper::is_vector_typer"],[0,1,1,"_CPPv4NK10libmolgrid14NullIndexTyper9num_typesEv","libmolgrid::NullIndexTyper::num_types"],[0,1,1,"_CPPv4N10libmolgrid14NullIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::NullIndexTyper::set_names"],[0,2,1,"_CPPv4N10libmolgrid14NullIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::NullIndexTyper::set_names::names"],[0,2,1,"_CPPv4N10libmolgrid14NullIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::NullIndexTyper::set_names::ntypes"],[0,2,1,"_CPPv4N10libmolgrid14NullIndexTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::NullIndexTyper::set_names::type_names"],[0,1,1,"_CPPv4N10libmolgrid14NullIndexTyperD0Ev","libmolgrid::NullIndexTyper::~NullIndexTyper"],[0,0,1,"_CPPv4N10libmolgrid10QuaternionE","libmolgrid::Quaternion"],[0,1,1,"_CPPv4N10libmolgrid10Quaternion10QuaternionE2fl2fl2fl2fl","libmolgrid::Quaternion::Quaternion"],[0,1,1,"_CPPv4N10libmolgrid10Quaternion10QuaternionEv","libmolgrid::Quaternion::Quaternion"],[0,2,1,"_CPPv4N10libmolgrid10Quaternion10QuaternionE2fl2fl2fl2fl","libmolgrid::Quaternion::Quaternion::A"],[0,2,1,"_CPPv4N10libmolgrid10Quaternion10QuaternionE2fl2fl2fl2fl","libmolgrid::Quaternion::Quaternion::B"],[0,2,1,"_CPPv4N10libmolgrid10Quaternion10QuaternionE2fl2fl2fl2fl","libmolgrid::Quaternion::Quaternion::C"],[0,2,1,"_CPPv4N10libmolgrid10Quaternion10QuaternionE2fl2fl2fl2fl","libmolgrid::Quaternion::Quaternion::D"],[0,1,1,"_CPPv4NK10libmolgrid10Quaternion13R_component_1Ev","libmolgrid::Quaternion::R_component_1"],[0,1,1,"_CPPv4NK10libmolgrid10Quaternion13R_component_2Ev","libmolgrid::Quaternion::R_component_2"],[0,1,1,"_CPPv4NK10libmolgrid10Quaternion13R_component_3Ev","libmolgrid::Quaternion::R_component_3"],[0,1,1,"_CPPv4NK10libmolgrid10Quaternion13R_component_4Ev","libmolgrid::Quaternion::R_component_4"],[0,1,1,"_CPPv4NK10libmolgrid10Quaternion4conjEv","libmolgrid::Quaternion::conj"],[0,4,1,"_CPPv4N10libmolgrid10Quaternion2flE","libmolgrid::Quaternion::fl"],[0,1,1,"_CPPv4NK10libmolgrid10Quaternion7inverseEv","libmolgrid::Quaternion::inverse"],[0,1,1,"_CPPv4NK10libmolgrid10Quaternion4normEv","libmolgrid::Quaternion::norm"],[0,1,1,"_CPPv4NK10libmolgrid10QuaternionmlERK10Quaternion","libmolgrid::Quaternion::operator*"],[0,2,1,"_CPPv4NK10libmolgrid10QuaternionmlERK10Quaternion","libmolgrid::Quaternion::operator*::r"],[0,1,1,"_CPPv4N10libmolgrid10QuaternionmLERK10Quaternion","libmolgrid::Quaternion::operator*="],[0,1,1,"_CPPv4N10libmolgrid10QuaternionmLERK2fl","libmolgrid::Quaternion::operator*="],[0,2,1,"_CPPv4N10libmolgrid10QuaternionmLERK10Quaternion","libmolgrid::Quaternion::operator*=::r"],[0,2,1,"_CPPv4N10libmolgrid10QuaternionmLERK2fl","libmolgrid::Quaternion::operator*=::r"],[0,1,1,"_CPPv4N10libmolgrid10QuaterniondvERK10Quaternion","libmolgrid::Quaternion::operator/"],[0,1,1,"_CPPv4N10libmolgrid10QuaterniondvERK2fl","libmolgrid::Quaternion::operator/"],[0,2,1,"_CPPv4N10libmolgrid10QuaterniondvERK10Quaternion","libmolgrid::Quaternion::operator/::r"],[0,2,1,"_CPPv4N10libmolgrid10QuaterniondvERK2fl","libmolgrid::Quaternion::operator/::r"],[0,1,1,"_CPPv4N10libmolgrid10QuaterniondVERK10Quaternion","libmolgrid::Quaternion::operator/="],[0,1,1,"_CPPv4N10libmolgrid10QuaterniondVERK2fl","libmolgrid::Quaternion::operator/="],[0,2,1,"_CPPv4N10libmolgrid10QuaterniondVERK10Quaternion","libmolgrid::Quaternion::operator/=::r"],[0,2,1,"_CPPv4N10libmolgrid10QuaterniondVERK2fl","libmolgrid::Quaternion::operator/=::r"],[0,1,1,"_CPPv4NK10libmolgrid10QuaternioneqERK10Quaternion","libmolgrid::Quaternion::operator=="],[0,2,1,"_CPPv4NK10libmolgrid10QuaternioneqERK10Quaternion","libmolgrid::Quaternion::operator==::r"],[0,1,1,"_CPPv4NK10libmolgrid10Quaternion4realEv","libmolgrid::Quaternion::real"],[0,1,1,"_CPPv4NK10libmolgrid10Quaternion6rotateE2fl2fl2fl","libmolgrid::Quaternion::rotate"],[0,2,1,"_CPPv4NK10libmolgrid10Quaternion6rotateE2fl2fl2fl","libmolgrid::Quaternion::rotate::x"],[0,2,1,"_CPPv4NK10libmolgrid10Quaternion6rotateE2fl2fl2fl","libmolgrid::Quaternion::rotate::y"],[0,2,1,"_CPPv4NK10libmolgrid10Quaternion6rotateE2fl2fl2fl","libmolgrid::Quaternion::rotate::z"],[0,1,1,"_CPPv4NK10libmolgrid10Quaternion9transformE2fl2fl2fl6float36float3","libmolgrid::Quaternion::transform"],[0,2,1,"_CPPv4NK10libmolgrid10Quaternion9transformE2fl2fl2fl6float36float3","libmolgrid::Quaternion::transform::center"],[0,2,1,"_CPPv4NK10libmolgrid10Quaternion9transformE2fl2fl2fl6float36float3","libmolgrid::Quaternion::transform::translate"],[0,2,1,"_CPPv4NK10libmolgrid10Quaternion9transformE2fl2fl2fl6float36float3","libmolgrid::Quaternion::transform::x"],[0,2,1,"_CPPv4NK10libmolgrid10Quaternion9transformE2fl2fl2fl6float36float3","libmolgrid::Quaternion::transform::y"],[0,2,1,"_CPPv4NK10libmolgrid10Quaternion9transformE2fl2fl2fl6float36float3","libmolgrid::Quaternion::transform::z"],[0,0,1,"_CPPv4I0_iEN10libmolgrid36ReceptorStratifiedExampleRefProviderE","libmolgrid::ReceptorStratifiedExampleRefProvider"],[0,5,1,"_CPPv4I0_iEN10libmolgrid36ReceptorStratifiedExampleRefProviderE","libmolgrid::ReceptorStratifiedExampleRefProvider::K"],[0,5,1,"_CPPv4I0_iEN10libmolgrid36ReceptorStratifiedExampleRefProviderE","libmolgrid::ReceptorStratifiedExampleRefProvider::Provider"],[0,1,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider36ReceptorStratifiedExampleRefProviderERK23ExampleProviderSettings","libmolgrid::ReceptorStratifiedExampleRefProvider::ReceptorStratifiedExampleRefProvider"],[0,1,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider36ReceptorStratifiedExampleRefProviderEv","libmolgrid::ReceptorStratifiedExampleRefProvider::ReceptorStratifiedExampleRefProvider"],[0,2,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider36ReceptorStratifiedExampleRefProviderERK23ExampleProviderSettings","libmolgrid::ReceptorStratifiedExampleRefProvider::ReceptorStratifiedExampleRefProvider::settings"],[0,1,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider6addrefERK10ExampleRef","libmolgrid::ReceptorStratifiedExampleRefProvider::addref"],[0,2,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider6addrefERK10ExampleRef","libmolgrid::ReceptorStratifiedExampleRefProvider::addref::ex"],[0,1,1,"_CPPv4NK10libmolgrid36ReceptorStratifiedExampleRefProvider16check_batch_sizeEj","libmolgrid::ReceptorStratifiedExampleRefProvider::check_batch_size"],[0,2,1,"_CPPv4NK10libmolgrid36ReceptorStratifiedExampleRefProvider16check_batch_sizeEj","libmolgrid::ReceptorStratifiedExampleRefProvider::check_batch_size::bsize"],[0,3,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider8currentiE","libmolgrid::ReceptorStratifiedExampleRefProvider::currenti"],[0,3,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider8currentkE","libmolgrid::ReceptorStratifiedExampleRefProvider::currentk"],[0,3,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider8examplesE","libmolgrid::ReceptorStratifiedExampleRefProvider::examples"],[0,1,1,"_CPPv4NK10libmolgrid36ReceptorStratifiedExampleRefProvider19get_large_epoch_numEv","libmolgrid::ReceptorStratifiedExampleRefProvider::get_large_epoch_num"],[0,1,1,"_CPPv4NK10libmolgrid36ReceptorStratifiedExampleRefProvider19get_small_epoch_numEv","libmolgrid::ReceptorStratifiedExampleRefProvider::get_small_epoch_num"],[0,1,1,"_CPPv4NK10libmolgrid36ReceptorStratifiedExampleRefProvider9has_groupEv","libmolgrid::ReceptorStratifiedExampleRefProvider::has_group"],[0,1,1,"_CPPv4NK10libmolgrid36ReceptorStratifiedExampleRefProvider16large_epoch_sizeEv","libmolgrid::ReceptorStratifiedExampleRefProvider::large_epoch_size"],[0,1,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider7nextrefER10ExampleRef","libmolgrid::ReceptorStratifiedExampleRefProvider::nextref"],[0,2,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider7nextrefER10ExampleRef","libmolgrid::ReceptorStratifiedExampleRefProvider::nextref::ex"],[0,1,1,"_CPPv4NK10libmolgrid36ReceptorStratifiedExampleRefProvider10num_labelsEv","libmolgrid::ReceptorStratifiedExampleRefProvider::num_labels"],[0,3,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider5paramE","libmolgrid::ReceptorStratifiedExampleRefProvider::param"],[0,1,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider8populateERNSt7istreamEi","libmolgrid::ReceptorStratifiedExampleRefProvider::populate"],[0,2,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider8populateERNSt7istreamEi","libmolgrid::ReceptorStratifiedExampleRefProvider::populate::lines"],[0,2,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider8populateERNSt7istreamEi","libmolgrid::ReceptorStratifiedExampleRefProvider::populate::numlabels"],[0,3,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider9randomizeE","libmolgrid::ReceptorStratifiedExampleRefProvider::randomize"],[0,3,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider6recmapE","libmolgrid::ReceptorStratifiedExampleRefProvider::recmap"],[0,1,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider5resetEv","libmolgrid::ReceptorStratifiedExampleRefProvider::reset"],[0,1,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider5setupEv","libmolgrid::ReceptorStratifiedExampleRefProvider::setup"],[0,1,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider5setupEv","libmolgrid::ReceptorStratifiedExampleRefProvider::setup"],[0,1,1,"_CPPv4N10libmolgrid36ReceptorStratifiedExampleRefProvider5setupEv","libmolgrid::ReceptorStratifiedExampleRefProvider::setup"],[0,1,1,"_CPPv4NK10libmolgrid36ReceptorStratifiedExampleRefProvider4sizeEv","libmolgrid::ReceptorStratifiedExampleRefProvider::size"],[0,1,1,"_CPPv4NK10libmolgrid36ReceptorStratifiedExampleRefProvider16small_epoch_sizeEv","libmolgrid::ReceptorStratifiedExampleRefProvider::small_epoch_size"],[0,0,1,"_CPPv4I00EN10libmolgrid26SamplingExampleRefProviderE","libmolgrid::SamplingExampleRefProvider"],[0,5,1,"_CPPv4I00EN10libmolgrid26SamplingExampleRefProviderE","libmolgrid::SamplingExampleRefProvider::Provider1"],[0,5,1,"_CPPv4I00EN10libmolgrid26SamplingExampleRefProviderE","libmolgrid::SamplingExampleRefProvider::Provider2"],[0,3,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider1RE","libmolgrid::SamplingExampleRefProvider::R"],[0,1,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider26SamplingExampleRefProviderERK23ExampleProviderSettings9Provider19Provider2d","libmolgrid::SamplingExampleRefProvider::SamplingExampleRefProvider"],[0,1,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider26SamplingExampleRefProviderEv","libmolgrid::SamplingExampleRefProvider::SamplingExampleRefProvider"],[0,2,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider26SamplingExampleRefProviderERK23ExampleProviderSettings9Provider19Provider2d","libmolgrid::SamplingExampleRefProvider::SamplingExampleRefProvider::P1"],[0,2,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider26SamplingExampleRefProviderERK23ExampleProviderSettings9Provider19Provider2d","libmolgrid::SamplingExampleRefProvider::SamplingExampleRefProvider::P2"],[0,2,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider26SamplingExampleRefProviderERK23ExampleProviderSettings9Provider19Provider2d","libmolgrid::SamplingExampleRefProvider::SamplingExampleRefProvider::settings"],[0,2,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider26SamplingExampleRefProviderERK23ExampleProviderSettings9Provider19Provider2d","libmolgrid::SamplingExampleRefProvider::SamplingExampleRefProvider::srate"],[0,1,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider6addrefERK10ExampleRef","libmolgrid::SamplingExampleRefProvider::addref"],[0,2,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider6addrefERK10ExampleRef","libmolgrid::SamplingExampleRefProvider::addref::ex"],[0,1,1,"_CPPv4NK10libmolgrid26SamplingExampleRefProvider16check_batch_sizeEj","libmolgrid::SamplingExampleRefProvider::check_batch_size"],[0,2,1,"_CPPv4NK10libmolgrid26SamplingExampleRefProvider16check_batch_sizeEj","libmolgrid::SamplingExampleRefProvider::check_batch_size::bsize"],[0,1,1,"_CPPv4NK10libmolgrid26SamplingExampleRefProvider19get_large_epoch_numEv","libmolgrid::SamplingExampleRefProvider::get_large_epoch_num"],[0,1,1,"_CPPv4NK10libmolgrid26SamplingExampleRefProvider19get_small_epoch_numEv","libmolgrid::SamplingExampleRefProvider::get_small_epoch_num"],[0,1,1,"_CPPv4NK10libmolgrid26SamplingExampleRefProvider9has_groupEv","libmolgrid::SamplingExampleRefProvider::has_group"],[0,1,1,"_CPPv4NK10libmolgrid26SamplingExampleRefProvider16large_epoch_sizeEv","libmolgrid::SamplingExampleRefProvider::large_epoch_size"],[0,1,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider7nextrefER10ExampleRef","libmolgrid::SamplingExampleRefProvider::nextref"],[0,2,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider7nextrefER10ExampleRef","libmolgrid::SamplingExampleRefProvider::nextref::ex"],[0,1,1,"_CPPv4NK10libmolgrid26SamplingExampleRefProvider10num_labelsEv","libmolgrid::SamplingExampleRefProvider::num_labels"],[0,3,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider2p1E","libmolgrid::SamplingExampleRefProvider::p1"],[0,3,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider2p2E","libmolgrid::SamplingExampleRefProvider::p2"],[0,1,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider8populateERNSt7istreamEi","libmolgrid::SamplingExampleRefProvider::populate"],[0,2,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider8populateERNSt7istreamEi","libmolgrid::SamplingExampleRefProvider::populate::lines"],[0,2,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider8populateERNSt7istreamEi","libmolgrid::SamplingExampleRefProvider::populate::numlabels"],[0,1,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider5resetEv","libmolgrid::SamplingExampleRefProvider::reset"],[0,3,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider11sample_rateE","libmolgrid::SamplingExampleRefProvider::sample_rate"],[0,1,1,"_CPPv4N10libmolgrid26SamplingExampleRefProvider5setupEv","libmolgrid::SamplingExampleRefProvider::setup"],[0,1,1,"_CPPv4NK10libmolgrid26SamplingExampleRefProvider4sizeEv","libmolgrid::SamplingExampleRefProvider::size"],[0,1,1,"_CPPv4NK10libmolgrid26SamplingExampleRefProvider16small_epoch_sizeEv","libmolgrid::SamplingExampleRefProvider::small_epoch_size"],[0,0,1,"_CPPv4N10libmolgrid11StringCacheE","libmolgrid::StringCache"],[0,1,1,"_CPPv4N10libmolgrid11StringCache3getERKNSt6stringE","libmolgrid::StringCache::get"],[0,2,1,"_CPPv4N10libmolgrid11StringCache3getERKNSt6stringE","libmolgrid::StringCache::get::s"],[0,3,1,"_CPPv4N10libmolgrid11StringCache7stringsE","libmolgrid::StringCache::strings"],[0,0,1,"_CPPv4N10libmolgrid16SubsetAtomMapperE","libmolgrid::SubsetAtomMapper"],[0,1,1,"_CPPv4N10libmolgrid16SubsetAtomMapper16SubsetAtomMapperERKNSt6vectorINSt6vectorIiEEEEbRKNSt6vectorINSt6stringEEE","libmolgrid::SubsetAtomMapper::SubsetAtomMapper"],[0,1,1,"_CPPv4N10libmolgrid16SubsetAtomMapper16SubsetAtomMapperERKNSt6vectorIiEEbRKNSt6vectorINSt6stringEEE","libmolgrid::SubsetAtomMapper::SubsetAtomMapper"],[0,2,1,"_CPPv4N10libmolgrid16SubsetAtomMapper16SubsetAtomMapperERKNSt6vectorINSt6vectorIiEEEEbRKNSt6vectorINSt6stringEEE","libmolgrid::SubsetAtomMapper::SubsetAtomMapper::include_catchall"],[0,2,1,"_CPPv4N10libmolgrid16SubsetAtomMapper16SubsetAtomMapperERKNSt6vectorIiEEbRKNSt6vectorINSt6stringEEE","libmolgrid::SubsetAtomMapper::SubsetAtomMapper::include_catchall"],[0,2,1,"_CPPv4N10libmolgrid16SubsetAtomMapper16SubsetAtomMapperERKNSt6vectorINSt6vectorIiEEEEbRKNSt6vectorINSt6stringEEE","libmolgrid::SubsetAtomMapper::SubsetAtomMapper::map"],[0,2,1,"_CPPv4N10libmolgrid16SubsetAtomMapper16SubsetAtomMapperERKNSt6vectorIiEEbRKNSt6vectorINSt6stringEEE","libmolgrid::SubsetAtomMapper::SubsetAtomMapper::map"],[0,2,1,"_CPPv4N10libmolgrid16SubsetAtomMapper16SubsetAtomMapperERKNSt6vectorINSt6vectorIiEEEEbRKNSt6vectorINSt6stringEEE","libmolgrid::SubsetAtomMapper::SubsetAtomMapper::old_names"],[0,2,1,"_CPPv4N10libmolgrid16SubsetAtomMapper16SubsetAtomMapperERKNSt6vectorIiEEbRKNSt6vectorINSt6stringEEE","libmolgrid::SubsetAtomMapper::SubsetAtomMapper::old_names"],[0,3,1,"_CPPv4N10libmolgrid16SubsetAtomMapper12default_typeE","libmolgrid::SubsetAtomMapper::default_type"],[0,1,1,"_CPPv4NK10libmolgrid16SubsetAtomMapper12get_new_typeEj","libmolgrid::SubsetAtomMapper::get_new_type"],[0,2,1,"_CPPv4NK10libmolgrid16SubsetAtomMapper12get_new_typeEj","libmolgrid::SubsetAtomMapper::get_new_type::origt"],[0,1,1,"_CPPv4NK10libmolgrid16SubsetAtomMapper14get_type_namesEv","libmolgrid::SubsetAtomMapper::get_type_names"],[0,3,1,"_CPPv4N10libmolgrid16SubsetAtomMapper14new_type_namesE","libmolgrid::SubsetAtomMapper::new_type_names"],[0,3,1,"_CPPv4N10libmolgrid16SubsetAtomMapper13num_new_typesE","libmolgrid::SubsetAtomMapper::num_new_types"],[0,1,1,"_CPPv4NK10libmolgrid16SubsetAtomMapper9num_typesEv","libmolgrid::SubsetAtomMapper::num_types"],[0,3,1,"_CPPv4N10libmolgrid16SubsetAtomMapper7old2newE","libmolgrid::SubsetAtomMapper::old2new"],[0,0,1,"_CPPv4N10libmolgrid21SubsettedElementTyperE","libmolgrid::SubsettedElementTyper"],[0,1,1,"_CPPv4N10libmolgrid21SubsettedElementTyper21SubsettedElementTyperERK17ElementIndexTyperRKNSt6vectorINSt6vectorIiEEEEb","libmolgrid::SubsettedElementTyper::SubsettedElementTyper"],[0,1,1,"_CPPv4N10libmolgrid21SubsettedElementTyper21SubsettedElementTyperERK17ElementIndexTyperRKNSt6vectorIiEEb","libmolgrid::SubsettedElementTyper::SubsettedElementTyper"],[0,1,1,"_CPPv4N10libmolgrid21SubsettedElementTyper21SubsettedElementTyperERKNSt6vectorINSt6vectorIiEEEEbj","libmolgrid::SubsettedElementTyper::SubsettedElementTyper"],[0,1,1,"_CPPv4N10libmolgrid21SubsettedElementTyper21SubsettedElementTyperERKNSt6vectorIiEEbj","libmolgrid::SubsettedElementTyper::SubsettedElementTyper"],[0,2,1,"_CPPv4N10libmolgrid21SubsettedElementTyper21SubsettedElementTyperERK17ElementIndexTyperRKNSt6vectorINSt6vectorIiEEEEb","libmolgrid::SubsettedElementTyper::SubsettedElementTyper::etyper"],[0,2,1,"_CPPv4N10libmolgrid21SubsettedElementTyper21SubsettedElementTyperERK17ElementIndexTyperRKNSt6vectorIiEEb","libmolgrid::SubsettedElementTyper::SubsettedElementTyper::etyper"],[0,2,1,"_CPPv4N10libmolgrid21SubsettedElementTyper21SubsettedElementTyperERK17ElementIndexTyperRKNSt6vectorINSt6vectorIiEEEEb","libmolgrid::SubsettedElementTyper::SubsettedElementTyper::include_catchall"],[0,2,1,"_CPPv4N10libmolgrid21SubsettedElementTyper21SubsettedElementTyperERK17ElementIndexTyperRKNSt6vectorIiEEb","libmolgrid::SubsettedElementTyper::SubsettedElementTyper::include_catchall"],[0,2,1,"_CPPv4N10libmolgrid21SubsettedElementTyper21SubsettedElementTyperERKNSt6vectorINSt6vectorIiEEEEbj","libmolgrid::SubsettedElementTyper::SubsettedElementTyper::include_catchall"],[0,2,1,"_CPPv4N10libmolgrid21SubsettedElementTyper21SubsettedElementTyperERKNSt6vectorIiEEbj","libmolgrid::SubsettedElementTyper::SubsettedElementTyper::include_catchall"],[0,2,1,"_CPPv4N10libmolgrid21SubsettedElementTyper21SubsettedElementTyperERK17ElementIndexTyperRKNSt6vectorINSt6vectorIiEEEEb","libmolgrid::SubsettedElementTyper::SubsettedElementTyper::map"],[0,2,1,"_CPPv4N10libmolgrid21SubsettedElementTyper21SubsettedElementTyperERK17ElementIndexTyperRKNSt6vectorIiEEb","libmolgrid::SubsettedElementTyper::SubsettedElementTyper::map"],[0,2,1,"_CPPv4N10libmolgrid21SubsettedElementTyper21SubsettedElementTyperERKNSt6vectorINSt6vectorIiEEEEbj","libmolgrid::SubsettedElementTyper::SubsettedElementTyper::map"],[0,2,1,"_CPPv4N10libmolgrid21SubsettedElementTyper21SubsettedElementTyperERKNSt6vectorIiEEbj","libmolgrid::SubsettedElementTyper::SubsettedElementTyper::map"],[0,2,1,"_CPPv4N10libmolgrid21SubsettedElementTyper21SubsettedElementTyperERKNSt6vectorINSt6vectorIiEEEEbj","libmolgrid::SubsettedElementTyper::SubsettedElementTyper::maxe"],[0,2,1,"_CPPv4N10libmolgrid21SubsettedElementTyper21SubsettedElementTyperERKNSt6vectorIiEEbj","libmolgrid::SubsettedElementTyper::SubsettedElementTyper::maxe"],[0,1,1,"_CPPv4NK10libmolgrid21SubsettedElementTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE","libmolgrid::SubsettedElementTyper::get_atom_type_index"],[0,2,1,"_CPPv4NK10libmolgrid21SubsettedElementTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE","libmolgrid::SubsettedElementTyper::get_atom_type_index::a"],[0,1,1,"_CPPv4NK10libmolgrid21SubsettedElementTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::SubsettedElementTyper::get_atom_type_vector"],[0,2,1,"_CPPv4NK10libmolgrid21SubsettedElementTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::SubsettedElementTyper::get_atom_type_vector::a"],[0,2,1,"_CPPv4NK10libmolgrid21SubsettedElementTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::SubsettedElementTyper::get_atom_type_vector::typ"],[0,1,1,"_CPPv4NK10libmolgrid21SubsettedElementTyper12get_int_typeEi","libmolgrid::SubsettedElementTyper::get_int_type"],[0,2,1,"_CPPv4NK10libmolgrid21SubsettedElementTyper12get_int_typeEi","libmolgrid::SubsettedElementTyper::get_int_type::t"],[0,1,1,"_CPPv4NK10libmolgrid21SubsettedElementTyper14get_type_namesEv","libmolgrid::SubsettedElementTyper::get_type_names"],[0,1,1,"_CPPv4NK10libmolgrid21SubsettedElementTyper14get_type_namesEv","libmolgrid::SubsettedElementTyper::get_type_names"],[0,1,1,"_CPPv4NK10libmolgrid21SubsettedElementTyper14get_type_radiiEv","libmolgrid::SubsettedElementTyper::get_type_radii"],[0,1,1,"_CPPv4NK10libmolgrid21SubsettedElementTyper14get_type_radiiEv","libmolgrid::SubsettedElementTyper::get_type_radii"],[0,1,1,"_CPPv4NK10libmolgrid21SubsettedElementTyper15is_vector_typerEv","libmolgrid::SubsettedElementTyper::is_vector_typer"],[0,1,1,"_CPPv4NK10libmolgrid21SubsettedElementTyper9num_typesEv","libmolgrid::SubsettedElementTyper::num_types"],[0,1,1,"_CPPv4NK10libmolgrid21SubsettedElementTyper9num_typesEv","libmolgrid::SubsettedElementTyper::num_types"],[0,1,1,"_CPPv4N10libmolgrid21SubsettedElementTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::SubsettedElementTyper::set_names"],[0,2,1,"_CPPv4N10libmolgrid21SubsettedElementTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::SubsettedElementTyper::set_names::names"],[0,2,1,"_CPPv4N10libmolgrid21SubsettedElementTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::SubsettedElementTyper::set_names::ntypes"],[0,2,1,"_CPPv4N10libmolgrid21SubsettedElementTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::SubsettedElementTyper::set_names::type_names"],[0,0,1,"_CPPv4N10libmolgrid19SubsettedGninaTyperE","libmolgrid::SubsettedGninaTyper"],[0,1,1,"_CPPv4N10libmolgrid19SubsettedGninaTyper19SubsettedGninaTyperERK15GninaIndexTyperRKNSt6vectorINSt6vectorIiEEEEb","libmolgrid::SubsettedGninaTyper::SubsettedGninaTyper"],[0,1,1,"_CPPv4N10libmolgrid19SubsettedGninaTyper19SubsettedGninaTyperERK15GninaIndexTyperRKNSt6vectorIiEEb","libmolgrid::SubsettedGninaTyper::SubsettedGninaTyper"],[0,1,1,"_CPPv4N10libmolgrid19SubsettedGninaTyper19SubsettedGninaTyperERKNSt6vectorINSt6vectorIiEEEEbb","libmolgrid::SubsettedGninaTyper::SubsettedGninaTyper"],[0,1,1,"_CPPv4N10libmolgrid19SubsettedGninaTyper19SubsettedGninaTyperERKNSt6vectorIiEEbb","libmolgrid::SubsettedGninaTyper::SubsettedGninaTyper"],[0,2,1,"_CPPv4N10libmolgrid19SubsettedGninaTyper19SubsettedGninaTyperERK15GninaIndexTyperRKNSt6vectorINSt6vectorIiEEEEb","libmolgrid::SubsettedGninaTyper::SubsettedGninaTyper::etyper"],[0,2,1,"_CPPv4N10libmolgrid19SubsettedGninaTyper19SubsettedGninaTyperERK15GninaIndexTyperRKNSt6vectorIiEEb","libmolgrid::SubsettedGninaTyper::SubsettedGninaTyper::etyper"],[0,2,1,"_CPPv4N10libmolgrid19SubsettedGninaTyper19SubsettedGninaTyperERK15GninaIndexTyperRKNSt6vectorINSt6vectorIiEEEEb","libmolgrid::SubsettedGninaTyper::SubsettedGninaTyper::include_catchall"],[0,2,1,"_CPPv4N10libmolgrid19SubsettedGninaTyper19SubsettedGninaTyperERK15GninaIndexTyperRKNSt6vectorIiEEb","libmolgrid::SubsettedGninaTyper::SubsettedGninaTyper::include_catchall"],[0,2,1,"_CPPv4N10libmolgrid19SubsettedGninaTyper19SubsettedGninaTyperERKNSt6vectorINSt6vectorIiEEEEbb","libmolgrid::SubsettedGninaTyper::SubsettedGninaTyper::include_catchall"],[0,2,1,"_CPPv4N10libmolgrid19SubsettedGninaTyper19SubsettedGninaTyperERKNSt6vectorIiEEbb","libmolgrid::SubsettedGninaTyper::SubsettedGninaTyper::include_catchall"],[0,2,1,"_CPPv4N10libmolgrid19SubsettedGninaTyper19SubsettedGninaTyperERK15GninaIndexTyperRKNSt6vectorINSt6vectorIiEEEEb","libmolgrid::SubsettedGninaTyper::SubsettedGninaTyper::map"],[0,2,1,"_CPPv4N10libmolgrid19SubsettedGninaTyper19SubsettedGninaTyperERK15GninaIndexTyperRKNSt6vectorIiEEb","libmolgrid::SubsettedGninaTyper::SubsettedGninaTyper::map"],[0,2,1,"_CPPv4N10libmolgrid19SubsettedGninaTyper19SubsettedGninaTyperERKNSt6vectorINSt6vectorIiEEEEbb","libmolgrid::SubsettedGninaTyper::SubsettedGninaTyper::map"],[0,2,1,"_CPPv4N10libmolgrid19SubsettedGninaTyper19SubsettedGninaTyperERKNSt6vectorIiEEbb","libmolgrid::SubsettedGninaTyper::SubsettedGninaTyper::map"],[0,2,1,"_CPPv4N10libmolgrid19SubsettedGninaTyper19SubsettedGninaTyperERKNSt6vectorINSt6vectorIiEEEEbb","libmolgrid::SubsettedGninaTyper::SubsettedGninaTyper::usec"],[0,2,1,"_CPPv4N10libmolgrid19SubsettedGninaTyper19SubsettedGninaTyperERKNSt6vectorIiEEbb","libmolgrid::SubsettedGninaTyper::SubsettedGninaTyper::usec"],[0,1,1,"_CPPv4NK10libmolgrid19SubsettedGninaTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE","libmolgrid::SubsettedGninaTyper::get_atom_type_index"],[0,2,1,"_CPPv4NK10libmolgrid19SubsettedGninaTyper19get_atom_type_indexEPN9OpenBabel6OBAtomE","libmolgrid::SubsettedGninaTyper::get_atom_type_index::a"],[0,1,1,"_CPPv4NK10libmolgrid19SubsettedGninaTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::SubsettedGninaTyper::get_atom_type_vector"],[0,2,1,"_CPPv4NK10libmolgrid19SubsettedGninaTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::SubsettedGninaTyper::get_atom_type_vector::a"],[0,2,1,"_CPPv4NK10libmolgrid19SubsettedGninaTyper20get_atom_type_vectorEPN9OpenBabel6OBAtomERNSt6vectorIfEE","libmolgrid::SubsettedGninaTyper::get_atom_type_vector::typ"],[0,1,1,"_CPPv4NK10libmolgrid19SubsettedGninaTyper12get_int_typeEi","libmolgrid::SubsettedGninaTyper::get_int_type"],[0,2,1,"_CPPv4NK10libmolgrid19SubsettedGninaTyper12get_int_typeEi","libmolgrid::SubsettedGninaTyper::get_int_type::t"],[0,1,1,"_CPPv4NK10libmolgrid19SubsettedGninaTyper14get_type_namesEv","libmolgrid::SubsettedGninaTyper::get_type_names"],[0,1,1,"_CPPv4NK10libmolgrid19SubsettedGninaTyper14get_type_namesEv","libmolgrid::SubsettedGninaTyper::get_type_names"],[0,1,1,"_CPPv4NK10libmolgrid19SubsettedGninaTyper14get_type_radiiEv","libmolgrid::SubsettedGninaTyper::get_type_radii"],[0,1,1,"_CPPv4NK10libmolgrid19SubsettedGninaTyper14get_type_radiiEv","libmolgrid::SubsettedGninaTyper::get_type_radii"],[0,1,1,"_CPPv4NK10libmolgrid19SubsettedGninaTyper15is_vector_typerEv","libmolgrid::SubsettedGninaTyper::is_vector_typer"],[0,1,1,"_CPPv4NK10libmolgrid19SubsettedGninaTyper9num_typesEv","libmolgrid::SubsettedGninaTyper::num_types"],[0,1,1,"_CPPv4NK10libmolgrid19SubsettedGninaTyper9num_typesEv","libmolgrid::SubsettedGninaTyper::num_types"],[0,1,1,"_CPPv4N10libmolgrid19SubsettedGninaTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::SubsettedGninaTyper::set_names"],[0,2,1,"_CPPv4N10libmolgrid19SubsettedGninaTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::SubsettedGninaTyper::set_names::names"],[0,2,1,"_CPPv4N10libmolgrid19SubsettedGninaTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::SubsettedGninaTyper::set_names::ntypes"],[0,2,1,"_CPPv4N10libmolgrid19SubsettedGninaTyper9set_namesEjRNSt6vectorINSt6stringEEERKNSt6vectorINSt6stringEEE","libmolgrid::SubsettedGninaTyper::set_names::type_names"],[0,0,1,"_CPPv4N10libmolgrid9TransformE","libmolgrid::Transform"],[0,3,1,"_CPPv4N10libmolgrid9Transform1QE","libmolgrid::Transform::Q"],[0,1,1,"_CPPv4N10libmolgrid9Transform9TransformE6float3fb","libmolgrid::Transform::Transform"],[0,1,1,"_CPPv4N10libmolgrid9Transform9TransformERK10Quaternion6float36float3","libmolgrid::Transform::Transform"],[0,1,1,"_CPPv4N10libmolgrid9Transform9TransformEv","libmolgrid::Transform::Transform"],[0,2,1,"_CPPv4N10libmolgrid9Transform9TransformE6float3fb","libmolgrid::Transform::Transform::c"],[0,2,1,"_CPPv4N10libmolgrid9Transform9TransformERK10Quaternion6float36float3","libmolgrid::Transform::Transform::c"],[0,2,1,"_CPPv4N10libmolgrid9Transform9TransformERK10Quaternion6float36float3","libmolgrid::Transform::Transform::q"],[0,2,1,"_CPPv4N10libmolgrid9Transform9TransformE6float3fb","libmolgrid::Transform::Transform::random_rotate"],[0,2,1,"_CPPv4N10libmolgrid9Transform9TransformE6float3fb","libmolgrid::Transform::Transform::random_translate"],[0,2,1,"_CPPv4N10libmolgrid9Transform9TransformERK10Quaternion6float36float3","libmolgrid::Transform::Transform::t"],[0,1,1,"_CPPv4I0ENK10libmolgrid9Transform8backwardEvRK4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEEb","libmolgrid::Transform::backward"],[0,1,1,"_CPPv4I0ENK10libmolgrid9Transform8backwardEvRK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEEb","libmolgrid::Transform::backward"],[0,5,1,"_CPPv4I0ENK10libmolgrid9Transform8backwardEvRK4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEEb","libmolgrid::Transform::backward::Dtype"],[0,5,1,"_CPPv4I0ENK10libmolgrid9Transform8backwardEvRK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEEb","libmolgrid::Transform::backward::Dtype"],[0,2,1,"_CPPv4I0ENK10libmolgrid9Transform8backwardEvRK4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEEb","libmolgrid::Transform::backward::dotranslate"],[0,2,1,"_CPPv4I0ENK10libmolgrid9Transform8backwardEvRK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEEb","libmolgrid::Transform::backward::dotranslate"],[0,2,1,"_CPPv4I0ENK10libmolgrid9Transform8backwardEvRK4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEEb","libmolgrid::Transform::backward::in"],[0,2,1,"_CPPv4I0ENK10libmolgrid9Transform8backwardEvRK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEEb","libmolgrid::Transform::backward::in"],[0,2,1,"_CPPv4I0ENK10libmolgrid9Transform8backwardEvRK4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEEb","libmolgrid::Transform::backward::out"],[0,2,1,"_CPPv4I0ENK10libmolgrid9Transform8backwardEvRK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEEb","libmolgrid::Transform::backward::out"],[0,3,1,"_CPPv4N10libmolgrid9Transform6centerE","libmolgrid::Transform::center"],[0,1,1,"_CPPv4I0_bENK10libmolgrid9Transform10checkGridsEvRK4GridI5DtypeXL2EE6isCUDAERK4GridI5DtypeXL2EE6isCUDAE","libmolgrid::Transform::checkGrids"],[0,5,1,"_CPPv4I0_bENK10libmolgrid9Transform10checkGridsEvRK4GridI5DtypeXL2EE6isCUDAERK4GridI5DtypeXL2EE6isCUDAE","libmolgrid::Transform::checkGrids::Dtype"],[0,2,1,"_CPPv4I0_bENK10libmolgrid9Transform10checkGridsEvRK4GridI5DtypeXL2EE6isCUDAERK4GridI5DtypeXL2EE6isCUDAE","libmolgrid::Transform::checkGrids::in"],[0,5,1,"_CPPv4I0_bENK10libmolgrid9Transform10checkGridsEvRK4GridI5DtypeXL2EE6isCUDAERK4GridI5DtypeXL2EE6isCUDAE","libmolgrid::Transform::checkGrids::isCUDA"],[0,2,1,"_CPPv4I0_bENK10libmolgrid9Transform10checkGridsEvRK4GridI5DtypeXL2EE6isCUDAERK4GridI5DtypeXL2EE6isCUDAE","libmolgrid::Transform::checkGrids::out"],[0,1,1,"_CPPv4I0ENK10libmolgrid9Transform7forwardEvRK4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEEb","libmolgrid::Transform::forward"],[0,1,1,"_CPPv4I0ENK10libmolgrid9Transform7forwardEvRK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEEb","libmolgrid::Transform::forward"],[0,1,1,"_CPPv4NK10libmolgrid9Transform7forwardERK13CoordinateSetR13CoordinateSetb","libmolgrid::Transform::forward"],[0,1,1,"_CPPv4NK10libmolgrid9Transform7forwardERK7ExampleR7Exampleb","libmolgrid::Transform::forward"],[0,5,1,"_CPPv4I0ENK10libmolgrid9Transform7forwardEvRK4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEEb","libmolgrid::Transform::forward::Dtype"],[0,5,1,"_CPPv4I0ENK10libmolgrid9Transform7forwardEvRK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEEb","libmolgrid::Transform::forward::Dtype"],[0,2,1,"_CPPv4I0ENK10libmolgrid9Transform7forwardEvRK4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEEb","libmolgrid::Transform::forward::dotranslate"],[0,2,1,"_CPPv4I0ENK10libmolgrid9Transform7forwardEvRK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEEb","libmolgrid::Transform::forward::dotranslate"],[0,2,1,"_CPPv4NK10libmolgrid9Transform7forwardERK13CoordinateSetR13CoordinateSetb","libmolgrid::Transform::forward::dotranslate"],[0,2,1,"_CPPv4NK10libmolgrid9Transform7forwardERK7ExampleR7Exampleb","libmolgrid::Transform::forward::dotranslate"],[0,2,1,"_CPPv4I0ENK10libmolgrid9Transform7forwardEvRK4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEEb","libmolgrid::Transform::forward::in"],[0,2,1,"_CPPv4I0ENK10libmolgrid9Transform7forwardEvRK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEEb","libmolgrid::Transform::forward::in"],[0,2,1,"_CPPv4NK10libmolgrid9Transform7forwardERK13CoordinateSetR13CoordinateSetb","libmolgrid::Transform::forward::in"],[0,2,1,"_CPPv4NK10libmolgrid9Transform7forwardERK7ExampleR7Exampleb","libmolgrid::Transform::forward::in"],[0,2,1,"_CPPv4I0ENK10libmolgrid9Transform7forwardEvRK4GridI5DtypeXL2EEXL0EEER4GridI5DtypeXL2EEXL0EEEb","libmolgrid::Transform::forward::out"],[0,2,1,"_CPPv4I0ENK10libmolgrid9Transform7forwardEvRK4GridI5DtypeXL2EEXL1EEER4GridI5DtypeXL2EEXL1EEEb","libmolgrid::Transform::forward::out"],[0,2,1,"_CPPv4NK10libmolgrid9Transform7forwardERK13CoordinateSetR13CoordinateSetb","libmolgrid::Transform::forward::out"],[0,2,1,"_CPPv4NK10libmolgrid9Transform7forwardERK7ExampleR7Exampleb","libmolgrid::Transform::forward::out"],[0,1,1,"_CPPv4NK10libmolgrid9Transform14get_quaternionEv","libmolgrid::Transform::get_quaternion"],[0,1,1,"_CPPv4NK10libmolgrid9Transform19get_rotation_centerEv","libmolgrid::Transform::get_rotation_center"],[0,1,1,"_CPPv4NK10libmolgrid9Transform15get_translationEv","libmolgrid::Transform::get_translation"],[0,1,1,"_CPPv4NK10libmolgrid9Transform11is_identityEv","libmolgrid::Transform::is_identity"],[0,1,1,"_CPPv4N10libmolgrid9Transform14set_quaternionERK10Quaternion","libmolgrid::Transform::set_quaternion"],[0,2,1,"_CPPv4N10libmolgrid9Transform14set_quaternionERK10Quaternion","libmolgrid::Transform::set_quaternion::q"],[0,1,1,"_CPPv4N10libmolgrid9Transform19set_rotation_centerE6float3","libmolgrid::Transform::set_rotation_center"],[0,2,1,"_CPPv4N10libmolgrid9Transform19set_rotation_centerE6float3","libmolgrid::Transform::set_rotation_center::c"],[0,1,1,"_CPPv4N10libmolgrid9Transform15set_translationE6float3","libmolgrid::Transform::set_translation"],[0,2,1,"_CPPv4N10libmolgrid9Transform15set_translationE6float3","libmolgrid::Transform::set_translation::t"],[0,3,1,"_CPPv4N10libmolgrid9Transform9translateE","libmolgrid::Transform::translate"],[0,0,1,"_CPPv4N10libmolgrid25UniformExampleRefProviderE","libmolgrid::UniformExampleRefProvider"],[0,1,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider25UniformExampleRefProviderERK23ExampleProviderSettings","libmolgrid::UniformExampleRefProvider::UniformExampleRefProvider"],[0,1,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider25UniformExampleRefProviderEv","libmolgrid::UniformExampleRefProvider::UniformExampleRefProvider"],[0,2,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider25UniformExampleRefProviderERK23ExampleProviderSettings","libmolgrid::UniformExampleRefProvider::UniformExampleRefProvider::settings"],[0,1,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider6addrefERK10ExampleRef","libmolgrid::UniformExampleRefProvider::addref"],[0,2,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider6addrefERK10ExampleRef","libmolgrid::UniformExampleRefProvider::addref::ex"],[0,3,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider3allE","libmolgrid::UniformExampleRefProvider::all"],[0,1,1,"_CPPv4NK10libmolgrid25UniformExampleRefProvider16check_batch_sizeEj","libmolgrid::UniformExampleRefProvider::check_batch_size"],[0,2,1,"_CPPv4NK10libmolgrid25UniformExampleRefProvider16check_batch_sizeEj","libmolgrid::UniformExampleRefProvider::check_batch_size::bsize"],[0,3,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider7currentE","libmolgrid::UniformExampleRefProvider::current"],[0,3,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider12current_copyE","libmolgrid::UniformExampleRefProvider::current_copy"],[0,3,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider5epochE","libmolgrid::UniformExampleRefProvider::epoch"],[0,1,1,"_CPPv4NK10libmolgrid25UniformExampleRefProvider19get_large_epoch_numEv","libmolgrid::UniformExampleRefProvider::get_large_epoch_num"],[0,1,1,"_CPPv4NK10libmolgrid25UniformExampleRefProvider19get_small_epoch_numEv","libmolgrid::UniformExampleRefProvider::get_small_epoch_num"],[0,1,1,"_CPPv4NK10libmolgrid25UniformExampleRefProvider9has_groupEv","libmolgrid::UniformExampleRefProvider::has_group"],[0,1,1,"_CPPv4NK10libmolgrid25UniformExampleRefProvider16large_epoch_sizeEv","libmolgrid::UniformExampleRefProvider::large_epoch_size"],[0,3,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider7ncopiesE","libmolgrid::UniformExampleRefProvider::ncopies"],[0,1,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider7nextrefER10ExampleRef","libmolgrid::UniformExampleRefProvider::nextref"],[0,2,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider7nextrefER10ExampleRef","libmolgrid::UniformExampleRefProvider::nextref::ex"],[0,3,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider7nlabelsE","libmolgrid::UniformExampleRefProvider::nlabels"],[0,1,1,"_CPPv4NK10libmolgrid25UniformExampleRefProvider10num_labelsEv","libmolgrid::UniformExampleRefProvider::num_labels"],[0,1,1,"_CPPv4NK10libmolgrid25UniformExampleRefProviderixE6size_t","libmolgrid::UniformExampleRefProvider::operator[]"],[0,2,1,"_CPPv4NK10libmolgrid25UniformExampleRefProviderixE6size_t","libmolgrid::UniformExampleRefProvider::operator[]::idx"],[0,1,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider8populateERNSt7istreamEi","libmolgrid::UniformExampleRefProvider::populate"],[0,2,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider8populateERNSt7istreamEi","libmolgrid::UniformExampleRefProvider::populate::lines"],[0,2,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider8populateERNSt7istreamEi","libmolgrid::UniformExampleRefProvider::populate::numlabels"],[0,3,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider9randomizeE","libmolgrid::UniformExampleRefProvider::randomize"],[0,1,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider5resetEv","libmolgrid::UniformExampleRefProvider::reset"],[0,1,1,"_CPPv4N10libmolgrid25UniformExampleRefProvider5setupEv","libmolgrid::UniformExampleRefProvider::setup"],[0,1,1,"_CPPv4NK10libmolgrid25UniformExampleRefProvider4sizeEv","libmolgrid::UniformExampleRefProvider::size"],[0,1,1,"_CPPv4NK10libmolgrid25UniformExampleRefProvider16small_epoch_sizeEv","libmolgrid::UniformExampleRefProvider::small_epoch_size"],[0,0,1,"_CPPv4I0EN10libmolgrid33ValueStratifiedExampleRefProfiderE","libmolgrid::ValueStratifiedExampleRefProfider"],[0,5,1,"_CPPv4I0EN10libmolgrid33ValueStratifiedExampleRefProfiderE","libmolgrid::ValueStratifiedExampleRefProfider::Provider"],[0,1,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider33ValueStratifiedExampleRefProfiderERK23ExampleProviderSettings","libmolgrid::ValueStratifiedExampleRefProfider::ValueStratifiedExampleRefProfider"],[0,1,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider33ValueStratifiedExampleRefProfiderEv","libmolgrid::ValueStratifiedExampleRefProfider::ValueStratifiedExampleRefProfider"],[0,2,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider33ValueStratifiedExampleRefProfiderERK23ExampleProviderSettings","libmolgrid::ValueStratifiedExampleRefProfider::ValueStratifiedExampleRefProfider::parm"],[0,1,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider6addrefERK10ExampleRef","libmolgrid::ValueStratifiedExampleRefProfider::addref"],[0,2,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider6addrefERK10ExampleRef","libmolgrid::ValueStratifiedExampleRefProfider::addref::ex"],[0,1,1,"_CPPv4NK10libmolgrid33ValueStratifiedExampleRefProfider3binEd","libmolgrid::ValueStratifiedExampleRefProfider::bin"],[0,2,1,"_CPPv4NK10libmolgrid33ValueStratifiedExampleRefProfider3binEd","libmolgrid::ValueStratifiedExampleRefProfider::bin::val"],[0,1,1,"_CPPv4NK10libmolgrid33ValueStratifiedExampleRefProfider16check_batch_sizeEj","libmolgrid::ValueStratifiedExampleRefProfider::check_batch_size"],[0,2,1,"_CPPv4NK10libmolgrid33ValueStratifiedExampleRefProfider16check_batch_sizeEj","libmolgrid::ValueStratifiedExampleRefProfider::check_batch_size::bsize"],[0,3,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider8currentiE","libmolgrid::ValueStratifiedExampleRefProfider::currenti"],[0,3,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider8examplesE","libmolgrid::ValueStratifiedExampleRefProfider::examples"],[0,1,1,"_CPPv4NK10libmolgrid33ValueStratifiedExampleRefProfider19get_large_epoch_numEv","libmolgrid::ValueStratifiedExampleRefProfider::get_large_epoch_num"],[0,1,1,"_CPPv4NK10libmolgrid33ValueStratifiedExampleRefProfider19get_small_epoch_numEv","libmolgrid::ValueStratifiedExampleRefProfider::get_small_epoch_num"],[0,1,1,"_CPPv4NK10libmolgrid33ValueStratifiedExampleRefProfider9has_groupEv","libmolgrid::ValueStratifiedExampleRefProfider::has_group"],[0,1,1,"_CPPv4NK10libmolgrid33ValueStratifiedExampleRefProfider16large_epoch_sizeEv","libmolgrid::ValueStratifiedExampleRefProfider::large_epoch_size"],[0,3,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider3maxE","libmolgrid::ValueStratifiedExampleRefProfider::max"],[0,3,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider3minE","libmolgrid::ValueStratifiedExampleRefProfider::min"],[0,1,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider7nextrefER10ExampleRef","libmolgrid::ValueStratifiedExampleRefProfider::nextref"],[0,2,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider7nextrefER10ExampleRef","libmolgrid::ValueStratifiedExampleRefProfider::nextref::ex"],[0,1,1,"_CPPv4NK10libmolgrid33ValueStratifiedExampleRefProfider10num_labelsEv","libmolgrid::ValueStratifiedExampleRefProfider::num_labels"],[0,1,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider8populateERNSt7istreamEi","libmolgrid::ValueStratifiedExampleRefProfider::populate"],[0,2,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider8populateERNSt7istreamEi","libmolgrid::ValueStratifiedExampleRefProfider::populate::lines"],[0,2,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider8populateERNSt7istreamEi","libmolgrid::ValueStratifiedExampleRefProfider::populate::numlabels"],[0,1,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider5resetEv","libmolgrid::ValueStratifiedExampleRefProfider::reset"],[0,1,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider5setupEv","libmolgrid::ValueStratifiedExampleRefProfider::setup"],[0,1,1,"_CPPv4NK10libmolgrid33ValueStratifiedExampleRefProfider4sizeEv","libmolgrid::ValueStratifiedExampleRefProfider::size"],[0,1,1,"_CPPv4NK10libmolgrid33ValueStratifiedExampleRefProfider16small_epoch_sizeEv","libmolgrid::ValueStratifiedExampleRefProfider::small_epoch_size"],[0,3,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider4stepE","libmolgrid::ValueStratifiedExampleRefProfider::step"],[0,3,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider7use_absE","libmolgrid::ValueStratifiedExampleRefProfider::use_abs"],[0,3,1,"_CPPv4N10libmolgrid33ValueStratifiedExampleRefProfider6valposE","libmolgrid::ValueStratifiedExampleRefProfider::valpos"],[0,0,1,"_CPPv4I0EN10libmolgrid17mgrid_buffer_dataE","libmolgrid::mgrid_buffer_data"],[0,5,1,"_CPPv4I0EN10libmolgrid17mgrid_buffer_dataE","libmolgrid::mgrid_buffer_data::Dtype"],[0,3,1,"_CPPv4N10libmolgrid17mgrid_buffer_data7gpu_ptrE","libmolgrid::mgrid_buffer_data::gpu_ptr"],[0,3,1,"_CPPv4N10libmolgrid17mgrid_buffer_data11sent_to_gpuE","libmolgrid::mgrid_buffer_data::sent_to_gpu"]]},objnames:{"0":["cpp","class","C++ class"],"1":["cpp","function","C++ function"],"2":["cpp","functionParam","C++ function parameter"],"3":["cpp","member","C++ member"],"4":["cpp","type","C++ type"],"5":["cpp","templateParam","C++ template parameter"],"6":["cpp","enumerator","C++ enumerator"],"7":["cpp","enum","C++ enum"]},objtypes:{"0":"cpp:class","1":"cpp:function","2":"cpp:functionParam","3":"cpp:member","4":"cpp:type","5":"cpp:templateParam","6":"cpp:enumerator","7":"cpp:enum"},terms:{"0":0,"1":0,"1d":0,"2":0,"2d":0,"3":0,"4":0,"5":0,"6":0,"84":0,"abstract":0,"boolean":0,"case":0,"char":0,"const":0,"default":0,"do":0,"enum":0,"final":0,"float":0,"function":0,"int":0,"new":0,"null":0,"public":0,"return":0,"static":0,"switch":0,"true":0,"void":0,"while":0,A:0,For:0,If:0,In:0,It:0,There:0,These:0,Will:0,__device__:0,__global__:0,__host__:0,about:0,absolut:0,acceptor:0,access:0,accord:0,accumul:0,accumulate_atom_gradi:0,accur:0,across:0,activ:0,ad:0,ad_depth:0,ad_heteroatom:0,ad_radiu:0,ad_solv:0,ad_volum:0,add:0,addh:0,addit:0,addref:0,address:0,adnam:0,affin:0,again:0,agrad:0,aliphaticcarbonxshydrophob:0,aliphaticcarbonxsnonhydrophob:0,all:0,alloc:0,along:0,alreadi:0,also:0,although:0,alwai:0,an:0,angstrom:0,ani:0,anum:0,anyth:0,appli:0,applic:0,appriori:0,appropri:0,ar:0,argument:0,aromat:0,aromaticcarbonxshydrophob:0,aromaticcarbonxsnonhydrophob:0,around:0,arrai:0,assign:0,at_new_epoch:0,atom:0,atom_density_grad_grad:0,atom_density_grad_grad_oth:0,atom_diffdiff:0,atom_gradi:0,atomic_gradi:0,atomindextyperfunc:0,atomvectortyperfunc:0,attempt:0,attribut:0,auto:0,autodock4:0,avail:0,averag:0,avoid:0,ax:0,axi:0,ay:0,az:0,b:0,back:0,backward:0,backward_gradi:0,backward_relev:0,balanc:0,balanced_provid:0,base:0,base_t:0,basic:0,batch:0,batch_siz:0,been:0,befor:0,begin:0,behavior:0,being:0,between:0,bin:0,binari:0,bit:0,bool:0,booliean:0,boost:0,boron:0,bound:0,bracket:0,bromin:0,bsize:0,buffer:0,cach:0,cache_map:0,cache_struct:0,calc_atom_gradient_cpu:0,calc_atom_relevance_cpu:0,calc_point:0,calc_type_gradient_cpu:0,calcium:0,calcul:0,callback:0,callbacktyp:0,can:0,carbon:0,care:0,carefulli:0,cart2grid:0,cartesian:0,cast:0,caution:0,caylei:0,center:0,center_:0,chang:0,channel:0,charact:0,check:0,check_batch_s:0,checkgrid:0,chem:0,chlorin:0,clearli:0,clone:0,code:0,collect:0,column:0,combin:0,common:0,compil:0,complet:0,compon:0,comput:0,configur:0,conj:0,conjug:0,consist:0,constexpr:0,construct:0,constructor:0,consum:0,contain:0,content:0,contructor:0,conveni:0,convert:0,coord:0,coord_cach:0,coord_set:0,coordin:0,copi:0,copyfrom:0,copyinto:0,copyto:0,core:0,correspond:0,count_typ:0,coval:0,covalent_radiu:0,cpu:0,cpu_grid_t:0,cr:0,creat:0,createprovid:0,cross:0,cubic:0,cuda:0,cuda_callable_memb:0,cuda_device_memb:0,current:0,current_copi:0,current_group:0,current_group_index:0,current_t:0,currenti:0,currentk:0,cutoff:0,d:0,danger:0,data:0,data_root:0,dataset:0,debug:0,declar:0,decoi:0,decompos:0,deep:0,default_data:0,default_radiu:0,default_typ:0,dens:0,densiti:0,density_grad_dist:0,densitygrid:0,densityrad:0,depend:0,deriv:0,descript:0,desir:0,dest:0,destcuda:0,detect:0,determin:0,devic:0,diff:0,diffdiff:0,differ:0,diffgrid:0,dimens:0,directli:0,directori:0,dist:0,distinct:0,divis:0,divison:0,doe:0,done:0,donor:0,dotransf:0,dotransl:0,doubl:0,dtype:0,due:0,dummi:0,dump:0,duplicate_pos:0,dure:0,e:0,each:0,effici:0,either:0,element:0,empti:0,enabl:0,enable_if:0,encod:0,end:0,entireti:0,enumer:0,epoch:0,equal:0,etyp:0,euclidean:0,eventu:0,everi:0,ex:0,exchang:0,exist:0,expans:0,expect:0,explicit:0,explicitli:0,extern:0,extra:0,extract:0,extract_label:0,extractor:0,f:0,factor:0,fail:0,fals:0,fastest:0,few:0,fewer:0,field:0,file:0,filenam:0,fill:0,fill_zero:0,first:0,fix:0,fl:0,float3:0,fluorin:0,fname:0,follow:0,format:0,forward:0,frame:0,frame_group:0,friend:0,friendli:0,from:0,g:0,gaussian:0,gener:0,genericatom:0,genericmet:0,get:0,get_atom_type_index:0,get_atom_type_vector:0,get_binari:0,get_bounds_1d:0,get_dimens:0,get_extractor:0,get_first_dim:0,get_grid_dim:0,get_grid_origin:0,get_info:0,get_int_typ:0,get_large_epoch_num:0,get_new_typ:0,get_provid:0,get_quaternion:0,get_radii_type_index:0,get_radiusmultipl:0,get_resolut:0,get_rotation_cent:0,get_small_epoch_num:0,get_transl:0,get_type_nam:0,get_type_radii:0,get_vector_type_radii:0,given:0,gnina:0,gnina_type_nam:0,goe:0,good:0,gpu:0,gpu_grid_t:0,gpu_ptr:0,gradient:0,greater:0,grid1f:0,grid1fcuda:0,grid2cart:0,grid2f:0,grid2fcuda:0,grid_:0,grid_cent:0,grid_coord:0,grid_origin:0,gridval:0,grm:0,group:0,ha:0,happen:0,has_group:0,has_index_typ:0,has_indexed_typ:0,has_vector_typ:0,hasgroup:0,have:0,home:0,host:0,hot:0,how:0,hydrogen:0,hydrophob:0,i:0,id:0,idx:0,ignor:0,implement:0,impos:0,includ:0,include_catchal:0,include_dummy_typ:0,incur:0,index:0,infin:0,inform:0,iniit:0,init_set:0,initi:0,inlin:0,input:0,instead:0,interpol:0,invalid:0,invers:0,iodin:0,iostream:0,iron:0,is_ident:0,is_vector_typ:0,iscuda:0,isn:0,istream:0,iter:0,its:0,itself:0,ityp:0,j:0,k:0,kernel:0,kind:0,label:0,labelpo:0,lack:0,larg:0,large_epoch_s:0,last:0,last_elem:0,last_epoch:0,layout:0,least:0,legaci:0,less:0,level:0,lifetim:0,lig:0,ligand:0,line:0,linear:0,list:0,load:0,locat:0,longer:0,look:0,magnesium:0,mai:0,maintain:0,major:0,make_float3:0,make_vector_typ:0,manag:0,managed_t:0,manganes:0,mani:0,map:0,mapped_file_sourc:0,mapper:0,match:0,max:0,max_typ:0,maxgroups:0,maxim:0,maximum:0,maxt:0,mc:0,md:0,mean:0,mem:0,member:0,memcach:0,memori:0,merg:0,merge_coordin:0,mergeinto:0,merger:0,method:0,mgrid1f:0,mgrid2f:0,min:0,mirror:0,mol:0,molcach:0,molcache2:0,molecul:0,molecular:0,molgriddataparamet:0,more:0,most:0,multipl:0,multipli:0,must:0,n:0,name:0,nan:0,narrow:0,natom:0,ncopi:0,necessari:0,need:0,neg:0,new_type_nam:0,next:0,next_act:0,next_batch:0,next_decoi:0,nextref:0,nitrogen:0,nitrogenxsacceptor:0,nitrogenxsdonor:0,nitrogenxsdonoracceptor:0,nlabel:0,non:0,none:0,norm:0,note:0,ntype:0,nullptr:0,num_act:0,num_coordin:0,num_decoi:0,num_label:0,num_new_typ:0,num_typ:0,number:0,numdim:0,numer:0,numlabel:0,numtyp:0,nxl:0,ob_partialcharg:0,obatom:0,object:0,obmol:0,occur:0,offset:0,old2new:0,old:0,old_nam:0,old_type_nam:0,old_type_to_new_typ:0,onc:0,oncpu:0,one:0,ongpu:0,onli:0,onto:0,openbabel:0,oper:0,optim:0,option:0,order:0,organ:0,origin_:0,origt:0,ostream:0,otherwis:0,out:0,over:0,overhead:0,overlap:0,overwritten:0,own:0,oxygen:0,oxygenxsacceptor:0,oxygenxsdonor:0,oxygenxsdonoracceptor:0,p1:0,p2:0,p:0,pad:0,page:0,pair:0,param:0,paramet:0,parm:0,pars:0,part:0,particularli:0,partit:0,pass:0,path:0,per:0,perform:0,permit:0,phosphoru:0,place:0,point:0,pointer:0,polarhydrogen:0,popul:0,posit:0,possibl:0,potenti:0,precalcul:0,precis:0,precomput:0,predetermin:0,prefix:0,prepend:0,present:0,presum:0,previou:0,prior:0,privat:0,probabl:0,process:0,properli:0,properti:0,proton:0,provid:0,provider1:0,provider2:0,ptr:0,q:0,quadrat:0,quit:0,r:0,r_component_1:0,r_component_2:0,r_component_3:0,r_component_4:0,radii:0,radiifromtyp:0,radiu:0,random:0,random_rot:0,random_transl:0,ratio:0,re:0,read:0,real:0,realli:0,realloc:0,rec:0,recalcul:0,receptor:0,recmap:0,recommend:0,reduc:0,ref:0,refer:0,relev:0,repeat:0,repres:0,represent:0,requir:0,reset:0,resiz:0,resolut:0,resolution_:0,result:0,reus:0,rh:0,rnn:0,root:0,rotat:0,round:0,row:0,rscale:0,rti:0,run:0,s:0,safe:0,same:0,sampl:0,sample_r:0,scalar:0,scale:0,search:0,second:0,seen:0,sent_to_gpu:0,separ:0,seqcont:0,seri:0,set:0,set_atom:0,set_atom_gradi:0,set_atom_relev:0,set_atom_type_grad_grad:0,set_atom_type_gradi:0,set_binari:0,set_buff:0,set_coord:0,set_dimens:0,set_nam:0,set_num_typ:0,set_quaternion:0,set_radii_type_index:0,set_resolut:0,set_rotation_cent:0,set_transl:0,setup:0,shape:0,shared_ptr:0,should:0,shuffl:0,side:0,simul:0,singl:0,size:0,size_lik:0,size_t:0,sizeof:0,skip:0,slight:0,sm:0,small:0,small_epoch_s:0,smina_nam:0,so:0,some:0,sourc:0,space:0,spatial:0,special:0,specif:0,specifi:0,squar:0,srate:0,src:0,srccuda:0,standard:0,start:0,state:0,std:0,step:0,store:0,stratif:0,stream:0,string:0,struct:0,subclass:0,subgrid_t:0,subset:0,substanti:0,sulfur:0,sulfuracceptor:0,sum:0,sum_typ:0,support:0,surject:0,syntax:0,t1:0,t2:0,t:0,take:0,templat:0,than:0,thei:0,thi:0,through:0,time:0,tindex:0,tocpu:0,togpu:0,too:0,total:0,train:0,transfer:0,translat:0,travers:0,truncat:0,tutori:0,two:0,txn:0,typ:0,type:0,type_diffdiff:0,type_grad_grad:0,type_gradi:0,type_index:0,type_nam:0,type_radii:0,type_vec:0,type_vector:0,typedef:0,typenam:0,typer:0,typic:0,typr:0,uint2:0,unbalanc:0,uncheck:0,undefin:0,underli:0,unifi:0,uniform_real_distribut:0,uniformli:0,uniqu:0,unique_index_typ:0,unique_indexed_typ:0,unique_typ:0,univers:0,unknown:0,unless:0,unnecessari:0,unordered_map:0,unordered_set:0,unreal:0,unsign:0,unspecifi:0,until:0,up:0,us:0,usag:0,use_ab:0,use_cach:0,use_coval:0,usec:0,user:0,val:0,valpo:0,valu:0,vari:0,variant:0,vector:0,versa:0,vice:0,view:0,virtual:0,vtype:0,vtype_nam:0,wai:0,we:0,when:0,where:0,which:0,whose:0,wise:0,without:0,won:0,wrap:0,wrapper:0,write:0,x:0,xs_acceptor:0,xs_donor:0,xs_hydrophob:0,xs_radiu:0,y:0,you:0,z:0,zero:0,zerofirst:0,zinc:0},titles:["libmolgrid C++ API Documentation"],titleterms:{"class":0,The:0,api:0,atomindextyp:0,atomindextypemapp:0,atomtyp:0,atomvectortyp:0,balancedexamplerefprovid:0,c:0,callbackindextyp:0,callbackvectortyp:0,cartesiangrid:0,coordcach:0,coordinateset:0,doc:0,document:0,elementindextyp:0,exampl:0,exampleextractor:0,exampleprovid:0,exampleproviderset:0,exampleref:0,examplerefprovid:0,fileatommapp:0,filemappedelementtyp:0,filemappedgninatyp:0,gninaindextyp:0,gninavectortyp:0,grid:0,gridmak:0,groupedexamplerefprovid:0,indic:0,info:0,libmolgrid:0,managedgrid:0,managedgridbas:0,mappedatomindextyp:0,mgrid_buffer_data:0,nullindextyp:0,quaternion:0,receptorstratifiedexamplerefprovid:0,samplingexamplerefprovid:0,stringcach:0,subsetatommapp:0,subsettedelementtyp:0,subsettedgninatyp:0,tabl:0,transform:0,uniformexamplerefprovid:0,valuestratifiedexamplerefprofid:0}}) \ No newline at end of file diff --git a/docs/cpp/xml/example_8h.xml b/docs/cpp/xml/example_8h.xml index 57abe57..974cadb 100644 --- a/docs/cpp/xml/example_8h.xml +++ b/docs/cpp/xml/example_8h.xml @@ -291,7 +291,7 @@ EXSET(bool, duplicate_first, false, "clone the first coordinate set to be paired with each of the remaining (receptor-ligand pairs)") \ EXSET(size_t, num_copies, 1, "number of times to repeatedly produce an example") \ EXSET(bool, make_vector_types, false, "convert index types into one-hot encoded vector types") \ - EXSET(IterationScheme, iteration_scheme, Continuous, "how to iterate over examples; note that the last batch may get padded with example from the next epoch ") \ + EXSET(IterationScheme, iteration_scheme, Continuous, "how to iterate over examples; note that the last batch may get padded with example from the next epoch. Options are: Continuous, LargeEpoch, SmallEpoch ") \ EXSET(std::string, data_root, "", "prefix for data files") \ EXSET(std::string, recmolcache, "", "precalculated molcache2 file for receptor (first molecule); if doesn't exist, will look in data _root") \ EXSET(std::string, ligmolcache, "", "precalculated molcache2 file for ligand; if doesn't exist, will look in data_root") @@ -356,7 +356,7 @@ EXSET(bool,duplicate_first,false,"clonethefirstcoordinatesettobepairedwitheachoftheremaining(receptor-ligandpairs)")\ EXSET(size_t,num_copies,1,"numberoftimestorepeatedlyproduceanexample")\ EXSET(bool,make_vector_types,false,"convertindextypesintoone-hotencodedvectortypes")\ -EXSET(IterationScheme,iteration_scheme,Continuous,"howtoiterateoverexamples;notethatthelastbatchmaygetpaddedwithexamplefromthenextepoch")\ +EXSET(IterationScheme,iteration_scheme,Continuous,"howtoiterateoverexamples;notethatthelastbatchmaygetpaddedwithexamplefromthenextepoch.Optionsare:Continuous,LargeEpoch,SmallEpoch")\ EXSET(std::string,data_root,"","prefixfordatafiles")\ EXSET(std::string,recmolcache,"","precalculatedmolcache2fileforreceptor(firstmolecule);ifdoesn'texist,willlookindata_root")\ EXSET(std::string,ligmolcache,"","precalculatedmolcache2fileforligand;ifdoesn'texist,willlookindata_root") diff --git a/docs/cpp/xml/exampleref__providers_8h.xml b/docs/cpp/xml/exampleref__providers_8h.xml index 1a5910f..3feddc8 100644 --- a/docs/cpp/xml/exampleref__providers_8h.xml +++ b/docs/cpp/xml/exampleref__providers_8h.xml @@ -590,7 +590,7 @@ tmp.back().setup(); } else{ -log(INFO)<<"Emptybucket"<<i; +log(INFO)<<"Emptybucket"<<i<<"whenstratifyingbyvalue-checkyourrangesanddatadistribution.\n"; } } swap(examples,tmp); diff --git a/docs/cpp/xml/grid__maker_8cpp.xml b/docs/cpp/xml/grid__maker_8cpp.xml index f2d74f8..fc03053 100644 --- a/docs/cpp/xml/grid__maker_8cpp.xml +++ b/docs/cpp/xml/grid__maker_8cpp.xml @@ -367,12 +367,12 @@ float3grid_origin=get_grid_origin(grid_center); size_tnatoms=coords.dimension(0); -size_tntypes=out.dimension(0); +int64_tntypes=out.dimension(0); Dtype*data=out.data(); //iterateoverallatoms for(size_taidx=0;aidx<natoms;++aidx){ -size_tatype=floor(type_index(aidx)); +int64_tatype=floor(type_index(aidx));//canbenegativetoindicateuntyped,ignoredatom if(atype>=ntypes)throwstd::out_of_range("Typeindex"+itoa(atype)+"largerthanallowed"+itoa(ntypes)); if(atype>=0&&atype<ntypes){ float3acoords; diff --git a/docs/python/.buildinfo b/docs/python/.buildinfo index 8f4681c..6832981 100644 --- a/docs/python/.buildinfo +++ b/docs/python/.buildinfo @@ -1,4 +1,4 @@ # Sphinx build info version 1 # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. -config: 2cb66442baab71ec0c24050a85539bd6 +config: 927a56d93ee520698a0e08922687b400 tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/docs/python/.doctrees/environment.pickle b/docs/python/.doctrees/environment.pickle index 28fb17f..c33a082 100644 Binary files a/docs/python/.doctrees/environment.pickle and b/docs/python/.doctrees/environment.pickle differ diff --git a/docs/python/.doctrees/index.doctree b/docs/python/.doctrees/index.doctree index ac435db..fba8eaf 100644 Binary files a/docs/python/.doctrees/index.doctree and b/docs/python/.doctrees/index.doctree differ diff --git a/docs/python/_static/basic.css b/docs/python/_static/basic.css index be19270..603f6a8 100644 --- a/docs/python/_static/basic.css +++ b/docs/python/_static/basic.css @@ -130,7 +130,7 @@ ul.search li a { font-weight: bold; } -ul.search li div.context { +ul.search li p.context { color: #888; margin: 2px 0 0 30px; text-align: left; @@ -277,25 +277,25 @@ p.rubric { font-weight: bold; } -img.align-left, .figure.align-left, object.align-left { +img.align-left, figure.align-left, .figure.align-left, object.align-left { clear: left; float: left; margin-right: 1em; } -img.align-right, .figure.align-right, object.align-right { +img.align-right, figure.align-right, .figure.align-right, object.align-right { clear: right; float: right; margin-left: 1em; } -img.align-center, .figure.align-center, object.align-center { +img.align-center, figure.align-center, .figure.align-center, object.align-center { display: block; margin-left: auto; margin-right: auto; } -img.align-default, .figure.align-default { +img.align-default, figure.align-default, .figure.align-default { display: block; margin-left: auto; margin-right: auto; @@ -319,7 +319,8 @@ img.align-default, .figure.align-default { /* -- sidebars -------------------------------------------------------------- */ -div.sidebar { +div.sidebar, +aside.sidebar { margin: 0 0 0.5em 1em; border: 1px solid #ddb; padding: 7px; @@ -377,12 +378,14 @@ div.body p.centered { /* -- content of sidebars/topics/admonitions -------------------------------- */ div.sidebar > :last-child, +aside.sidebar > :last-child, div.topic > :last-child, div.admonition > :last-child { margin-bottom: 0; } div.sidebar::after, +aside.sidebar::after, div.topic::after, div.admonition::after, blockquote::after { @@ -455,20 +458,22 @@ td > :last-child { /* -- figures --------------------------------------------------------------- */ -div.figure { +div.figure, figure { margin: 0.5em; padding: 0.5em; } -div.figure p.caption { +div.figure p.caption, figcaption { padding: 0.3em; } -div.figure p.caption span.caption-number { +div.figure p.caption span.caption-number, +figcaption span.caption-number { font-style: italic; } -div.figure p.caption span.caption-text { +div.figure p.caption span.caption-text, +figcaption span.caption-text { } /* -- field list styles ----------------------------------------------------- */ @@ -503,6 +508,63 @@ table.hlist td { vertical-align: top; } +/* -- object description styles --------------------------------------------- */ + +.sig { + font-family: 'Consolas', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', monospace; +} + +.sig-name, code.descname { + background-color: transparent; + font-weight: bold; +} + +.sig-name { + font-size: 1.1em; +} + +code.descname { + font-size: 1.2em; +} + +.sig-prename, code.descclassname { + background-color: transparent; +} + +.optional { + font-size: 1.3em; +} + +.sig-paren { + font-size: larger; +} + +.sig-param.n { + font-style: italic; +} + +/* C++ specific styling */ + +.sig-inline.c-texpr, +.sig-inline.cpp-texpr { + font-family: unset; +} + +.sig.c .k, .sig.c .kt, +.sig.cpp .k, .sig.cpp .kt { + color: #0033B3; +} + +.sig.c .m, +.sig.cpp .m { + color: #1750EB; +} + +.sig.c .s, .sig.c .sc, +.sig.cpp .s, .sig.cpp .sc { + color: #067D17; +} + /* -- other body styles ----------------------------------------------------- */ @@ -629,14 +691,6 @@ dl.glossary dt { font-size: 1.1em; } -.optional { - font-size: 1.3em; -} - -.sig-paren { - font-size: larger; -} - .versionmodified { font-style: italic; } @@ -677,8 +731,9 @@ dl.glossary dt { .classifier:before { font-style: normal; - margin: 0.5em; + margin: 0 0.5em; content: ":"; + display: inline-block; } abbr, acronym { @@ -765,8 +820,12 @@ div.code-block-caption code { table.highlighttable td.linenos, span.linenos, -div.doctest > div.highlight span.gp { /* gp: Generic.Prompt */ - user-select: none; +div.highlight span.gp { /* gp: Generic.Prompt */ + user-select: none; + -webkit-user-select: text; /* Safari fallback only */ + -webkit-user-select: none; /* Chrome/Safari */ + -moz-user-select: none; /* Firefox */ + -ms-user-select: none; /* IE10+ */ } div.code-block-caption span.caption-number { @@ -781,16 +840,6 @@ div.literal-block-wrapper { margin: 1em 0; } -code.descname { - background-color: transparent; - font-weight: bold; - font-size: 1.2em; -} - -code.descclassname { - background-color: transparent; -} - code.xref, a code { background-color: transparent; font-weight: bold; diff --git a/docs/python/_static/css/theme.css b/docs/python/_static/css/theme.css index 8cd4f10..0d9ae7e 100644 --- a/docs/python/_static/css/theme.css +++ b/docs/python/_static/css/theme.css @@ -1,4 +1,4 @@ -html{box-sizing:border-box}*,:after,:before{box-sizing:inherit}article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block}audio,canvas,video{display:inline-block;*display:inline;*zoom:1}[hidden],audio:not([controls]){display:none}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{margin:0}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}blockquote{margin:0}dfn{font-style:italic}ins{background:#ff9;text-decoration:none}ins,mark{color:#000}mark{background:#ff0;font-style:italic;font-weight:700}.rst-content code,.rst-content tt,code,kbd,pre,samp{font-family:monospace,serif;_font-family:courier new,monospace;font-size:1em}pre{white-space:pre}q{quotes:none}q:after,q:before{content:"";content:none}small{font-size:85%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}dl,ol,ul{margin:0;padding:0;list-style:none;list-style-image:none}li{list-style:none}dd{margin:0}img{border:0;-ms-interpolation-mode:bicubic;vertical-align:middle;max-width:100%}svg:not(:root){overflow:hidden}figure,form{margin:0}label{cursor:pointer}button,input,select,textarea{font-size:100%;margin:0;vertical-align:baseline;*vertical-align:middle}button,input{line-height:normal}button,input[type=button],input[type=reset],input[type=submit]{cursor:pointer;-webkit-appearance:button;*overflow:visible}button[disabled],input[disabled]{cursor:default}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}textarea{resize:vertical}table{border-collapse:collapse;border-spacing:0}td{vertical-align:top}.chromeframe{margin:.2em 0;background:#ccc;color:#000;padding:.2em 0}.ir{display:block;border:0;text-indent:-999em;overflow:hidden;background-color:transparent;background-repeat:no-repeat;text-align:left;direction:ltr;*line-height:0}.ir br{display:none}.hidden{display:none!important;visibility:hidden}.visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.visuallyhidden.focusable:active,.visuallyhidden.focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.invisible{visibility:hidden}.relative{position:relative}big,small{font-size:100%}@media print{body,html,section{background:none!important}*{box-shadow:none!important;text-shadow:none!important;filter:none!important;-ms-filter:none!important}a,a:visited{text-decoration:underline}.ir a:after,a[href^="#"]:after,a[href^="javascript:"]:after{content:""}blockquote,pre{page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}img{max-width:100%!important}@page{margin:.5cm}.rst-content .toctree-wrapper>p.caption,h2,h3,p{orphans:3;widows:3}.rst-content .toctree-wrapper>p.caption,h2,h3{page-break-after:avoid}}.btn,.fa:before,.icon:before,.rst-content .admonition,.rst-content .admonition-title:before,.rst-content .admonition-todo,.rst-content .attention,.rst-content .caution,.rst-content .code-block-caption .headerlink:before,.rst-content .danger,.rst-content .error,.rst-content .hint,.rst-content .important,.rst-content .note,.rst-content .seealso,.rst-content .tip,.rst-content .warning,.rst-content code.download span:first-child:before,.rst-content dl dt .headerlink:before,.rst-content h1 .headerlink:before,.rst-content h2 .headerlink:before,.rst-content h3 .headerlink:before,.rst-content h4 .headerlink:before,.rst-content h5 .headerlink:before,.rst-content h6 .headerlink:before,.rst-content p.caption .headerlink:before,.rst-content table>caption .headerlink:before,.rst-content tt.download span:first-child:before,.wy-alert,.wy-dropdown .caret:before,.wy-inline-validate.wy-inline-validate-danger .wy-input-context:before,.wy-inline-validate.wy-inline-validate-info .wy-input-context:before,.wy-inline-validate.wy-inline-validate-success .wy-input-context:before,.wy-inline-validate.wy-inline-validate-warning .wy-input-context:before,.wy-menu-vertical li.current>a,.wy-menu-vertical li.current>a span.toctree-expand:before,.wy-menu-vertical li.on a,.wy-menu-vertical li.on a span.toctree-expand:before,.wy-menu-vertical li span.toctree-expand:before,.wy-nav-top a,.wy-side-nav-search .wy-dropdown>a,.wy-side-nav-search>a,input[type=color],input[type=date],input[type=datetime-local],input[type=datetime],input[type=email],input[type=month],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],input[type=week],select,textarea{-webkit-font-smoothing:antialiased}.clearfix{*zoom:1}.clearfix:after,.clearfix:before{display:table;content:""}.clearfix:after{clear:both}/*! +html{box-sizing:border-box}*,:after,:before{box-sizing:inherit}article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block}audio,canvas,video{display:inline-block;*display:inline;*zoom:1}[hidden],audio:not([controls]){display:none}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{margin:0}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}blockquote{margin:0}dfn{font-style:italic}ins{background:#ff9;text-decoration:none}ins,mark{color:#000}mark{background:#ff0;font-style:italic;font-weight:700}.rst-content code,.rst-content tt,code,kbd,pre,samp{font-family:monospace,serif;_font-family:courier new,monospace;font-size:1em}pre{white-space:pre}q{quotes:none}q:after,q:before{content:"";content:none}small{font-size:85%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}dl,ol,ul{margin:0;padding:0;list-style:none;list-style-image:none}li{list-style:none}dd{margin:0}img{border:0;-ms-interpolation-mode:bicubic;vertical-align:middle;max-width:100%}svg:not(:root){overflow:hidden}figure,form{margin:0}label{cursor:pointer}button,input,select,textarea{font-size:100%;margin:0;vertical-align:baseline;*vertical-align:middle}button,input{line-height:normal}button,input[type=button],input[type=reset],input[type=submit]{cursor:pointer;-webkit-appearance:button;*overflow:visible}button[disabled],input[disabled]{cursor:default}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}textarea{resize:vertical}table{border-collapse:collapse;border-spacing:0}td{vertical-align:top}.chromeframe{margin:.2em 0;background:#ccc;color:#000;padding:.2em 0}.ir{display:block;border:0;text-indent:-999em;overflow:hidden;background-color:transparent;background-repeat:no-repeat;text-align:left;direction:ltr;*line-height:0}.ir br{display:none}.hidden{display:none!important;visibility:hidden}.visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.visuallyhidden.focusable:active,.visuallyhidden.focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.invisible{visibility:hidden}.relative{position:relative}big,small{font-size:100%}@media print{body,html,section{background:none!important}*{box-shadow:none!important;text-shadow:none!important;filter:none!important;-ms-filter:none!important}a,a:visited{text-decoration:underline}.ir a:after,a[href^="#"]:after,a[href^="javascript:"]:after{content:""}blockquote,pre{page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}img{max-width:100%!important}@page{margin:.5cm}.rst-content .toctree-wrapper>p.caption,h2,h3,p{orphans:3;widows:3}.rst-content .toctree-wrapper>p.caption,h2,h3{page-break-after:avoid}}.btn,.fa:before,.icon:before,.rst-content .admonition,.rst-content .admonition-title:before,.rst-content .admonition-todo,.rst-content .attention,.rst-content .caution,.rst-content .code-block-caption .headerlink:before,.rst-content .danger,.rst-content .eqno .headerlink:before,.rst-content .error,.rst-content .hint,.rst-content .important,.rst-content .note,.rst-content .seealso,.rst-content .tip,.rst-content .warning,.rst-content code.download span:first-child:before,.rst-content dl dt .headerlink:before,.rst-content h1 .headerlink:before,.rst-content h2 .headerlink:before,.rst-content h3 .headerlink:before,.rst-content h4 .headerlink:before,.rst-content h5 .headerlink:before,.rst-content h6 .headerlink:before,.rst-content p.caption .headerlink:before,.rst-content p .headerlink:before,.rst-content table>caption .headerlink:before,.rst-content tt.download span:first-child:before,.wy-alert,.wy-dropdown .caret:before,.wy-inline-validate.wy-inline-validate-danger .wy-input-context:before,.wy-inline-validate.wy-inline-validate-info .wy-input-context:before,.wy-inline-validate.wy-inline-validate-success .wy-input-context:before,.wy-inline-validate.wy-inline-validate-warning .wy-input-context:before,.wy-menu-vertical li.current>a,.wy-menu-vertical li.current>a button.toctree-expand:before,.wy-menu-vertical li.on a,.wy-menu-vertical li.on a button.toctree-expand:before,.wy-menu-vertical li button.toctree-expand:before,.wy-nav-top a,.wy-side-nav-search .wy-dropdown>a,.wy-side-nav-search>a,input[type=color],input[type=date],input[type=datetime-local],input[type=datetime],input[type=email],input[type=month],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],input[type=week],select,textarea{-webkit-font-smoothing:antialiased}.clearfix{*zoom:1}.clearfix:after,.clearfix:before{display:table;content:""}.clearfix:after{clear:both}/*! * Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) - */@font-face{font-family:FontAwesome;src:url(fonts/fontawesome-webfont.eot?674f50d287a8c48dc19ba404d20fe713);src:url(fonts/fontawesome-webfont.eot?674f50d287a8c48dc19ba404d20fe713?#iefix&v=4.7.0) format("embedded-opentype"),url(fonts/fontawesome-webfont.woff2?af7ae505a9eed503f8b8e6982036873e) format("woff2"),url(fonts/fontawesome-webfont.woff?fee66e712a8a08eef5805a46892932ad) format("woff"),url(fonts/fontawesome-webfont.ttf?b06871f281fee6b241d60582ae9369b9) format("truetype"),url(fonts/fontawesome-webfont.svg?912ec66d7572ff821749319396470bde#fontawesomeregular) format("svg");font-weight:400;font-style:normal}.fa,.icon,.rst-content .admonition-title,.rst-content .code-block-caption .headerlink,.rst-content code.download span:first-child,.rst-content dl dt .headerlink,.rst-content h1 .headerlink,.rst-content h2 .headerlink,.rst-content h3 .headerlink,.rst-content h4 .headerlink,.rst-content h5 .headerlink,.rst-content h6 .headerlink,.rst-content p.caption .headerlink,.rst-content table>caption .headerlink,.rst-content tt.download span:first-child,.wy-menu-vertical li.current>a span.toctree-expand,.wy-menu-vertical li.on a span.toctree-expand,.wy-menu-vertical li span.toctree-expand{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.28571em;text-align:center}.fa-ul{padding-left:0;margin-left:2.14286em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.14286em;width:2.14286em;top:.14286em;text-align:center}.fa-li.fa-lg{left:-1.85714em}.fa-border{padding:.2em .25em .15em;border:.08em solid #eee;border-radius:.1em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa-pull-left.icon,.fa.fa-pull-left,.rst-content .code-block-caption .fa-pull-left.headerlink,.rst-content .fa-pull-left.admonition-title,.rst-content code.download span.fa-pull-left:first-child,.rst-content dl dt .fa-pull-left.headerlink,.rst-content h1 .fa-pull-left.headerlink,.rst-content h2 .fa-pull-left.headerlink,.rst-content h3 .fa-pull-left.headerlink,.rst-content h4 .fa-pull-left.headerlink,.rst-content h5 .fa-pull-left.headerlink,.rst-content h6 .fa-pull-left.headerlink,.rst-content p.caption .fa-pull-left.headerlink,.rst-content table>caption .fa-pull-left.headerlink,.rst-content tt.download span.fa-pull-left:first-child,.wy-menu-vertical li.current>a span.fa-pull-left.toctree-expand,.wy-menu-vertical li.on a span.fa-pull-left.toctree-expand,.wy-menu-vertical li span.fa-pull-left.toctree-expand{margin-right:.3em}.fa-pull-right.icon,.fa.fa-pull-right,.rst-content .code-block-caption .fa-pull-right.headerlink,.rst-content .fa-pull-right.admonition-title,.rst-content code.download span.fa-pull-right:first-child,.rst-content dl dt .fa-pull-right.headerlink,.rst-content h1 .fa-pull-right.headerlink,.rst-content h2 .fa-pull-right.headerlink,.rst-content h3 .fa-pull-right.headerlink,.rst-content h4 .fa-pull-right.headerlink,.rst-content h5 .fa-pull-right.headerlink,.rst-content h6 .fa-pull-right.headerlink,.rst-content p.caption .fa-pull-right.headerlink,.rst-content table>caption .fa-pull-right.headerlink,.rst-content tt.download span.fa-pull-right:first-child,.wy-menu-vertical li.current>a span.fa-pull-right.toctree-expand,.wy-menu-vertical li.on a span.fa-pull-right.toctree-expand,.wy-menu-vertical li span.fa-pull-right.toctree-expand{margin-left:.3em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left,.pull-left.icon,.rst-content .code-block-caption .pull-left.headerlink,.rst-content .pull-left.admonition-title,.rst-content code.download span.pull-left:first-child,.rst-content dl dt .pull-left.headerlink,.rst-content h1 .pull-left.headerlink,.rst-content h2 .pull-left.headerlink,.rst-content h3 .pull-left.headerlink,.rst-content h4 .pull-left.headerlink,.rst-content h5 .pull-left.headerlink,.rst-content h6 .pull-left.headerlink,.rst-content p.caption .pull-left.headerlink,.rst-content table>caption .pull-left.headerlink,.rst-content tt.download span.pull-left:first-child,.wy-menu-vertical li.current>a span.pull-left.toctree-expand,.wy-menu-vertical li.on a span.pull-left.toctree-expand,.wy-menu-vertical li span.pull-left.toctree-expand{margin-right:.3em}.fa.pull-right,.pull-right.icon,.rst-content .code-block-caption .pull-right.headerlink,.rst-content .pull-right.admonition-title,.rst-content code.download span.pull-right:first-child,.rst-content dl dt .pull-right.headerlink,.rst-content h1 .pull-right.headerlink,.rst-content h2 .pull-right.headerlink,.rst-content h3 .pull-right.headerlink,.rst-content h4 .pull-right.headerlink,.rst-content h5 .pull-right.headerlink,.rst-content h6 .pull-right.headerlink,.rst-content p.caption .pull-right.headerlink,.rst-content table>caption .pull-right.headerlink,.rst-content tt.download span.pull-right:first-child,.wy-menu-vertical li.current>a span.pull-right.toctree-expand,.wy-menu-vertical li.on a span.pull-right.toctree-expand,.wy-menu-vertical li span.pull-right.toctree-expand{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.fa-pulse{-webkit-animation:fa-spin 1s steps(8) infinite;animation:fa-spin 1s steps(8) infinite}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scaleX(-1);-ms-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";-webkit-transform:scaleY(-1);-ms-transform:scaleY(-1);transform:scaleY(-1)}:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{filter:none}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:""}.fa-music:before{content:""}.fa-search:before,.icon-search:before{content:""}.fa-envelope-o:before{content:""}.fa-heart:before{content:""}.fa-star:before{content:""}.fa-star-o:before{content:""}.fa-user:before{content:""}.fa-film:before{content:""}.fa-th-large:before{content:""}.fa-th:before{content:""}.fa-th-list:before{content:""}.fa-check:before{content:""}.fa-close:before,.fa-remove:before,.fa-times:before{content:""}.fa-search-plus:before{content:""}.fa-search-minus:before{content:""}.fa-power-off:before{content:""}.fa-signal:before{content:""}.fa-cog:before,.fa-gear:before{content:""}.fa-trash-o:before{content:""}.fa-home:before,.icon-home:before{content:""}.fa-file-o:before{content:""}.fa-clock-o:before{content:""}.fa-road:before{content:""}.fa-download:before,.rst-content code.download span:first-child:before,.rst-content tt.download span:first-child:before{content:""}.fa-arrow-circle-o-down:before{content:""}.fa-arrow-circle-o-up:before{content:""}.fa-inbox:before{content:""}.fa-play-circle-o:before{content:""}.fa-repeat:before,.fa-rotate-right:before{content:""}.fa-refresh:before{content:""}.fa-list-alt:before{content:""}.fa-lock:before{content:""}.fa-flag:before{content:""}.fa-headphones:before{content:""}.fa-volume-off:before{content:""}.fa-volume-down:before{content:""}.fa-volume-up:before{content:""}.fa-qrcode:before{content:""}.fa-barcode:before{content:""}.fa-tag:before{content:""}.fa-tags:before{content:""}.fa-book:before,.icon-book:before{content:""}.fa-bookmark:before{content:""}.fa-print:before{content:""}.fa-camera:before{content:""}.fa-font:before{content:""}.fa-bold:before{content:""}.fa-italic:before{content:""}.fa-text-height:before{content:""}.fa-text-width:before{content:""}.fa-align-left:before{content:""}.fa-align-center:before{content:""}.fa-align-right:before{content:""}.fa-align-justify:before{content:""}.fa-list:before{content:""}.fa-dedent:before,.fa-outdent:before{content:""}.fa-indent:before{content:""}.fa-video-camera:before{content:""}.fa-image:before,.fa-photo:before,.fa-picture-o:before{content:""}.fa-pencil:before{content:""}.fa-map-marker:before{content:""}.fa-adjust:before{content:""}.fa-tint:before{content:""}.fa-edit:before,.fa-pencil-square-o:before{content:""}.fa-share-square-o:before{content:""}.fa-check-square-o:before{content:""}.fa-arrows:before{content:""}.fa-step-backward:before{content:""}.fa-fast-backward:before{content:""}.fa-backward:before{content:""}.fa-play:before{content:""}.fa-pause:before{content:""}.fa-stop:before{content:""}.fa-forward:before{content:""}.fa-fast-forward:before{content:""}.fa-step-forward:before{content:""}.fa-eject:before{content:""}.fa-chevron-left:before{content:""}.fa-chevron-right:before{content:""}.fa-plus-circle:before{content:""}.fa-minus-circle:before{content:""}.fa-times-circle:before,.wy-inline-validate.wy-inline-validate-danger .wy-input-context:before{content:""}.fa-check-circle:before,.wy-inline-validate.wy-inline-validate-success .wy-input-context:before{content:""}.fa-question-circle:before{content:""}.fa-info-circle:before{content:""}.fa-crosshairs:before{content:""}.fa-times-circle-o:before{content:""}.fa-check-circle-o:before{content:""}.fa-ban:before{content:""}.fa-arrow-left:before{content:""}.fa-arrow-right:before{content:""}.fa-arrow-up:before{content:""}.fa-arrow-down:before{content:""}.fa-mail-forward:before,.fa-share:before{content:""}.fa-expand:before{content:""}.fa-compress:before{content:""}.fa-plus:before{content:""}.fa-minus:before{content:""}.fa-asterisk:before{content:""}.fa-exclamation-circle:before,.rst-content .admonition-title:before,.wy-inline-validate.wy-inline-validate-info .wy-input-context:before,.wy-inline-validate.wy-inline-validate-warning .wy-input-context:before{content:""}.fa-gift:before{content:""}.fa-leaf:before{content:""}.fa-fire:before,.icon-fire:before{content:""}.fa-eye:before{content:""}.fa-eye-slash:before{content:""}.fa-exclamation-triangle:before,.fa-warning:before{content:""}.fa-plane:before{content:""}.fa-calendar:before{content:""}.fa-random:before{content:""}.fa-comment:before{content:""}.fa-magnet:before{content:""}.fa-chevron-up:before{content:""}.fa-chevron-down:before{content:""}.fa-retweet:before{content:""}.fa-shopping-cart:before{content:""}.fa-folder:before{content:""}.fa-folder-open:before{content:""}.fa-arrows-v:before{content:""}.fa-arrows-h:before{content:""}.fa-bar-chart-o:before,.fa-bar-chart:before{content:""}.fa-twitter-square:before{content:""}.fa-facebook-square:before{content:""}.fa-camera-retro:before{content:""}.fa-key:before{content:""}.fa-cogs:before,.fa-gears:before{content:""}.fa-comments:before{content:""}.fa-thumbs-o-up:before{content:""}.fa-thumbs-o-down:before{content:""}.fa-star-half:before{content:""}.fa-heart-o:before{content:""}.fa-sign-out:before{content:""}.fa-linkedin-square:before{content:""}.fa-thumb-tack:before{content:""}.fa-external-link:before{content:""}.fa-sign-in:before{content:""}.fa-trophy:before{content:""}.fa-github-square:before{content:""}.fa-upload:before{content:""}.fa-lemon-o:before{content:""}.fa-phone:before{content:""}.fa-square-o:before{content:""}.fa-bookmark-o:before{content:""}.fa-phone-square:before{content:""}.fa-twitter:before{content:""}.fa-facebook-f:before,.fa-facebook:before{content:""}.fa-github:before,.icon-github:before{content:""}.fa-unlock:before{content:""}.fa-credit-card:before{content:""}.fa-feed:before,.fa-rss:before{content:""}.fa-hdd-o:before{content:""}.fa-bullhorn:before{content:""}.fa-bell:before{content:""}.fa-certificate:before{content:""}.fa-hand-o-right:before{content:""}.fa-hand-o-left:before{content:""}.fa-hand-o-up:before{content:""}.fa-hand-o-down:before{content:""}.fa-arrow-circle-left:before,.icon-circle-arrow-left:before{content:""}.fa-arrow-circle-right:before,.icon-circle-arrow-right:before{content:""}.fa-arrow-circle-up:before{content:""}.fa-arrow-circle-down:before{content:""}.fa-globe:before{content:""}.fa-wrench:before{content:""}.fa-tasks:before{content:""}.fa-filter:before{content:""}.fa-briefcase:before{content:""}.fa-arrows-alt:before{content:""}.fa-group:before,.fa-users:before{content:""}.fa-chain:before,.fa-link:before,.icon-link:before{content:""}.fa-cloud:before{content:""}.fa-flask:before{content:""}.fa-cut:before,.fa-scissors:before{content:""}.fa-copy:before,.fa-files-o:before{content:""}.fa-paperclip:before{content:""}.fa-floppy-o:before,.fa-save:before{content:""}.fa-square:before{content:""}.fa-bars:before,.fa-navicon:before,.fa-reorder:before{content:""}.fa-list-ul:before{content:""}.fa-list-ol:before{content:""}.fa-strikethrough:before{content:""}.fa-underline:before{content:""}.fa-table:before{content:""}.fa-magic:before{content:""}.fa-truck:before{content:""}.fa-pinterest:before{content:""}.fa-pinterest-square:before{content:""}.fa-google-plus-square:before{content:""}.fa-google-plus:before{content:""}.fa-money:before{content:""}.fa-caret-down:before,.icon-caret-down:before,.wy-dropdown .caret:before{content:""}.fa-caret-up:before{content:""}.fa-caret-left:before{content:""}.fa-caret-right:before{content:""}.fa-columns:before{content:""}.fa-sort:before,.fa-unsorted:before{content:""}.fa-sort-desc:before,.fa-sort-down:before{content:""}.fa-sort-asc:before,.fa-sort-up:before{content:""}.fa-envelope:before{content:""}.fa-linkedin:before{content:""}.fa-rotate-left:before,.fa-undo:before{content:""}.fa-gavel:before,.fa-legal:before{content:""}.fa-dashboard:before,.fa-tachometer:before{content:""}.fa-comment-o:before{content:""}.fa-comments-o:before{content:""}.fa-bolt:before,.fa-flash:before{content:""}.fa-sitemap:before{content:""}.fa-umbrella:before{content:""}.fa-clipboard:before,.fa-paste:before{content:""}.fa-lightbulb-o:before{content:""}.fa-exchange:before{content:""}.fa-cloud-download:before{content:""}.fa-cloud-upload:before{content:""}.fa-user-md:before{content:""}.fa-stethoscope:before{content:""}.fa-suitcase:before{content:""}.fa-bell-o:before{content:""}.fa-coffee:before{content:""}.fa-cutlery:before{content:""}.fa-file-text-o:before{content:""}.fa-building-o:before{content:""}.fa-hospital-o:before{content:""}.fa-ambulance:before{content:""}.fa-medkit:before{content:""}.fa-fighter-jet:before{content:""}.fa-beer:before{content:""}.fa-h-square:before{content:""}.fa-plus-square:before{content:""}.fa-angle-double-left:before{content:""}.fa-angle-double-right:before{content:""}.fa-angle-double-up:before{content:""}.fa-angle-double-down:before{content:""}.fa-angle-left:before{content:""}.fa-angle-right:before{content:""}.fa-angle-up:before{content:""}.fa-angle-down:before{content:""}.fa-desktop:before{content:""}.fa-laptop:before{content:""}.fa-tablet:before{content:""}.fa-mobile-phone:before,.fa-mobile:before{content:""}.fa-circle-o:before{content:""}.fa-quote-left:before{content:""}.fa-quote-right:before{content:""}.fa-spinner:before{content:""}.fa-circle:before{content:""}.fa-mail-reply:before,.fa-reply:before{content:""}.fa-github-alt:before{content:""}.fa-folder-o:before{content:""}.fa-folder-open-o:before{content:""}.fa-smile-o:before{content:""}.fa-frown-o:before{content:""}.fa-meh-o:before{content:""}.fa-gamepad:before{content:""}.fa-keyboard-o:before{content:""}.fa-flag-o:before{content:""}.fa-flag-checkered:before{content:""}.fa-terminal:before{content:""}.fa-code:before{content:""}.fa-mail-reply-all:before,.fa-reply-all:before{content:""}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:""}.fa-location-arrow:before{content:""}.fa-crop:before{content:""}.fa-code-fork:before{content:""}.fa-chain-broken:before,.fa-unlink:before{content:""}.fa-question:before{content:""}.fa-info:before{content:""}.fa-exclamation:before{content:""}.fa-superscript:before{content:""}.fa-subscript:before{content:""}.fa-eraser:before{content:""}.fa-puzzle-piece:before{content:""}.fa-microphone:before{content:""}.fa-microphone-slash:before{content:""}.fa-shield:before{content:""}.fa-calendar-o:before{content:""}.fa-fire-extinguisher:before{content:""}.fa-rocket:before{content:""}.fa-maxcdn:before{content:""}.fa-chevron-circle-left:before{content:""}.fa-chevron-circle-right:before{content:""}.fa-chevron-circle-up:before{content:""}.fa-chevron-circle-down:before{content:""}.fa-html5:before{content:""}.fa-css3:before{content:""}.fa-anchor:before{content:""}.fa-unlock-alt:before{content:""}.fa-bullseye:before{content:""}.fa-ellipsis-h:before{content:""}.fa-ellipsis-v:before{content:""}.fa-rss-square:before{content:""}.fa-play-circle:before{content:""}.fa-ticket:before{content:""}.fa-minus-square:before{content:""}.fa-minus-square-o:before,.wy-menu-vertical li.current>a span.toctree-expand:before,.wy-menu-vertical li.on a span.toctree-expand:before{content:""}.fa-level-up:before{content:""}.fa-level-down:before{content:""}.fa-check-square:before{content:""}.fa-pencil-square:before{content:""}.fa-external-link-square:before{content:""}.fa-share-square:before{content:""}.fa-compass:before{content:""}.fa-caret-square-o-down:before,.fa-toggle-down:before{content:""}.fa-caret-square-o-up:before,.fa-toggle-up:before{content:""}.fa-caret-square-o-right:before,.fa-toggle-right:before{content:""}.fa-eur:before,.fa-euro:before{content:""}.fa-gbp:before{content:""}.fa-dollar:before,.fa-usd:before{content:""}.fa-inr:before,.fa-rupee:before{content:""}.fa-cny:before,.fa-jpy:before,.fa-rmb:before,.fa-yen:before{content:""}.fa-rouble:before,.fa-rub:before,.fa-ruble:before{content:""}.fa-krw:before,.fa-won:before{content:""}.fa-bitcoin:before,.fa-btc:before{content:""}.fa-file:before{content:""}.fa-file-text:before{content:""}.fa-sort-alpha-asc:before{content:""}.fa-sort-alpha-desc:before{content:""}.fa-sort-amount-asc:before{content:""}.fa-sort-amount-desc:before{content:""}.fa-sort-numeric-asc:before{content:""}.fa-sort-numeric-desc:before{content:""}.fa-thumbs-up:before{content:""}.fa-thumbs-down:before{content:""}.fa-youtube-square:before{content:""}.fa-youtube:before{content:""}.fa-xing:before{content:""}.fa-xing-square:before{content:""}.fa-youtube-play:before{content:""}.fa-dropbox:before{content:""}.fa-stack-overflow:before{content:""}.fa-instagram:before{content:""}.fa-flickr:before{content:""}.fa-adn:before{content:""}.fa-bitbucket:before,.icon-bitbucket:before{content:""}.fa-bitbucket-square:before{content:""}.fa-tumblr:before{content:""}.fa-tumblr-square:before{content:""}.fa-long-arrow-down:before{content:""}.fa-long-arrow-up:before{content:""}.fa-long-arrow-left:before{content:""}.fa-long-arrow-right:before{content:""}.fa-apple:before{content:""}.fa-windows:before{content:""}.fa-android:before{content:""}.fa-linux:before{content:""}.fa-dribbble:before{content:""}.fa-skype:before{content:""}.fa-foursquare:before{content:""}.fa-trello:before{content:""}.fa-female:before{content:""}.fa-male:before{content:""}.fa-gittip:before,.fa-gratipay:before{content:""}.fa-sun-o:before{content:""}.fa-moon-o:before{content:""}.fa-archive:before{content:""}.fa-bug:before{content:""}.fa-vk:before{content:""}.fa-weibo:before{content:""}.fa-renren:before{content:""}.fa-pagelines:before{content:""}.fa-stack-exchange:before{content:""}.fa-arrow-circle-o-right:before{content:""}.fa-arrow-circle-o-left:before{content:""}.fa-caret-square-o-left:before,.fa-toggle-left:before{content:""}.fa-dot-circle-o:before{content:""}.fa-wheelchair:before{content:""}.fa-vimeo-square:before{content:""}.fa-try:before,.fa-turkish-lira:before{content:""}.fa-plus-square-o:before,.wy-menu-vertical li span.toctree-expand:before{content:""}.fa-space-shuttle:before{content:""}.fa-slack:before{content:""}.fa-envelope-square:before{content:""}.fa-wordpress:before{content:""}.fa-openid:before{content:""}.fa-bank:before,.fa-institution:before,.fa-university:before{content:""}.fa-graduation-cap:before,.fa-mortar-board:before{content:""}.fa-yahoo:before{content:""}.fa-google:before{content:""}.fa-reddit:before{content:""}.fa-reddit-square:before{content:""}.fa-stumbleupon-circle:before{content:""}.fa-stumbleupon:before{content:""}.fa-delicious:before{content:""}.fa-digg:before{content:""}.fa-pied-piper-pp:before{content:""}.fa-pied-piper-alt:before{content:""}.fa-drupal:before{content:""}.fa-joomla:before{content:""}.fa-language:before{content:""}.fa-fax:before{content:""}.fa-building:before{content:""}.fa-child:before{content:""}.fa-paw:before{content:""}.fa-spoon:before{content:""}.fa-cube:before{content:""}.fa-cubes:before{content:""}.fa-behance:before{content:""}.fa-behance-square:before{content:""}.fa-steam:before{content:""}.fa-steam-square:before{content:""}.fa-recycle:before{content:""}.fa-automobile:before,.fa-car:before{content:""}.fa-cab:before,.fa-taxi:before{content:""}.fa-tree:before{content:""}.fa-spotify:before{content:""}.fa-deviantart:before{content:""}.fa-soundcloud:before{content:""}.fa-database:before{content:""}.fa-file-pdf-o:before{content:""}.fa-file-word-o:before{content:""}.fa-file-excel-o:before{content:""}.fa-file-powerpoint-o:before{content:""}.fa-file-image-o:before,.fa-file-photo-o:before,.fa-file-picture-o:before{content:""}.fa-file-archive-o:before,.fa-file-zip-o:before{content:""}.fa-file-audio-o:before,.fa-file-sound-o:before{content:""}.fa-file-movie-o:before,.fa-file-video-o:before{content:""}.fa-file-code-o:before{content:""}.fa-vine:before{content:""}.fa-codepen:before{content:""}.fa-jsfiddle:before{content:""}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-ring:before,.fa-life-saver:before,.fa-support:before{content:""}.fa-circle-o-notch:before{content:""}.fa-ra:before,.fa-rebel:before,.fa-resistance:before{content:""}.fa-empire:before,.fa-ge:before{content:""}.fa-git-square:before{content:""}.fa-git:before{content:""}.fa-hacker-news:before,.fa-y-combinator-square:before,.fa-yc-square:before{content:""}.fa-tencent-weibo:before{content:""}.fa-qq:before{content:""}.fa-wechat:before,.fa-weixin:before{content:""}.fa-paper-plane:before,.fa-send:before{content:""}.fa-paper-plane-o:before,.fa-send-o:before{content:""}.fa-history:before{content:""}.fa-circle-thin:before{content:""}.fa-header:before{content:""}.fa-paragraph:before{content:""}.fa-sliders:before{content:""}.fa-share-alt:before{content:""}.fa-share-alt-square:before{content:""}.fa-bomb:before{content:""}.fa-futbol-o:before,.fa-soccer-ball-o:before{content:""}.fa-tty:before{content:""}.fa-binoculars:before{content:""}.fa-plug:before{content:""}.fa-slideshare:before{content:""}.fa-twitch:before{content:""}.fa-yelp:before{content:""}.fa-newspaper-o:before{content:""}.fa-wifi:before{content:""}.fa-calculator:before{content:""}.fa-paypal:before{content:""}.fa-google-wallet:before{content:""}.fa-cc-visa:before{content:""}.fa-cc-mastercard:before{content:""}.fa-cc-discover:before{content:""}.fa-cc-amex:before{content:""}.fa-cc-paypal:before{content:""}.fa-cc-stripe:before{content:""}.fa-bell-slash:before{content:""}.fa-bell-slash-o:before{content:""}.fa-trash:before{content:""}.fa-copyright:before{content:""}.fa-at:before{content:""}.fa-eyedropper:before{content:""}.fa-paint-brush:before{content:""}.fa-birthday-cake:before{content:""}.fa-area-chart:before{content:""}.fa-pie-chart:before{content:""}.fa-line-chart:before{content:""}.fa-lastfm:before{content:""}.fa-lastfm-square:before{content:""}.fa-toggle-off:before{content:""}.fa-toggle-on:before{content:""}.fa-bicycle:before{content:""}.fa-bus:before{content:""}.fa-ioxhost:before{content:""}.fa-angellist:before{content:""}.fa-cc:before{content:""}.fa-ils:before,.fa-shekel:before,.fa-sheqel:before{content:""}.fa-meanpath:before{content:""}.fa-buysellads:before{content:""}.fa-connectdevelop:before{content:""}.fa-dashcube:before{content:""}.fa-forumbee:before{content:""}.fa-leanpub:before{content:""}.fa-sellsy:before{content:""}.fa-shirtsinbulk:before{content:""}.fa-simplybuilt:before{content:""}.fa-skyatlas:before{content:""}.fa-cart-plus:before{content:""}.fa-cart-arrow-down:before{content:""}.fa-diamond:before{content:""}.fa-ship:before{content:""}.fa-user-secret:before{content:""}.fa-motorcycle:before{content:""}.fa-street-view:before{content:""}.fa-heartbeat:before{content:""}.fa-venus:before{content:""}.fa-mars:before{content:""}.fa-mercury:before{content:""}.fa-intersex:before,.fa-transgender:before{content:""}.fa-transgender-alt:before{content:""}.fa-venus-double:before{content:""}.fa-mars-double:before{content:""}.fa-venus-mars:before{content:""}.fa-mars-stroke:before{content:""}.fa-mars-stroke-v:before{content:""}.fa-mars-stroke-h:before{content:""}.fa-neuter:before{content:""}.fa-genderless:before{content:""}.fa-facebook-official:before{content:""}.fa-pinterest-p:before{content:""}.fa-whatsapp:before{content:""}.fa-server:before{content:""}.fa-user-plus:before{content:""}.fa-user-times:before{content:""}.fa-bed:before,.fa-hotel:before{content:""}.fa-viacoin:before{content:""}.fa-train:before{content:""}.fa-subway:before{content:""}.fa-medium:before{content:""}.fa-y-combinator:before,.fa-yc:before{content:""}.fa-optin-monster:before{content:""}.fa-opencart:before{content:""}.fa-expeditedssl:before{content:""}.fa-battery-4:before,.fa-battery-full:before,.fa-battery:before{content:""}.fa-battery-3:before,.fa-battery-three-quarters:before{content:""}.fa-battery-2:before,.fa-battery-half:before{content:""}.fa-battery-1:before,.fa-battery-quarter:before{content:""}.fa-battery-0:before,.fa-battery-empty:before{content:""}.fa-mouse-pointer:before{content:""}.fa-i-cursor:before{content:""}.fa-object-group:before{content:""}.fa-object-ungroup:before{content:""}.fa-sticky-note:before{content:""}.fa-sticky-note-o:before{content:""}.fa-cc-jcb:before{content:""}.fa-cc-diners-club:before{content:""}.fa-clone:before{content:""}.fa-balance-scale:before{content:""}.fa-hourglass-o:before{content:""}.fa-hourglass-1:before,.fa-hourglass-start:before{content:""}.fa-hourglass-2:before,.fa-hourglass-half:before{content:""}.fa-hourglass-3:before,.fa-hourglass-end:before{content:""}.fa-hourglass:before{content:""}.fa-hand-grab-o:before,.fa-hand-rock-o:before{content:""}.fa-hand-paper-o:before,.fa-hand-stop-o:before{content:""}.fa-hand-scissors-o:before{content:""}.fa-hand-lizard-o:before{content:""}.fa-hand-spock-o:before{content:""}.fa-hand-pointer-o:before{content:""}.fa-hand-peace-o:before{content:""}.fa-trademark:before{content:""}.fa-registered:before{content:""}.fa-creative-commons:before{content:""}.fa-gg:before{content:""}.fa-gg-circle:before{content:""}.fa-tripadvisor:before{content:""}.fa-odnoklassniki:before{content:""}.fa-odnoklassniki-square:before{content:""}.fa-get-pocket:before{content:""}.fa-wikipedia-w:before{content:""}.fa-safari:before{content:""}.fa-chrome:before{content:""}.fa-firefox:before{content:""}.fa-opera:before{content:""}.fa-internet-explorer:before{content:""}.fa-television:before,.fa-tv:before{content:""}.fa-contao:before{content:""}.fa-500px:before{content:""}.fa-amazon:before{content:""}.fa-calendar-plus-o:before{content:""}.fa-calendar-minus-o:before{content:""}.fa-calendar-times-o:before{content:""}.fa-calendar-check-o:before{content:""}.fa-industry:before{content:""}.fa-map-pin:before{content:""}.fa-map-signs:before{content:""}.fa-map-o:before{content:""}.fa-map:before{content:""}.fa-commenting:before{content:""}.fa-commenting-o:before{content:""}.fa-houzz:before{content:""}.fa-vimeo:before{content:""}.fa-black-tie:before{content:""}.fa-fonticons:before{content:""}.fa-reddit-alien:before{content:""}.fa-edge:before{content:""}.fa-credit-card-alt:before{content:""}.fa-codiepie:before{content:""}.fa-modx:before{content:""}.fa-fort-awesome:before{content:""}.fa-usb:before{content:""}.fa-product-hunt:before{content:""}.fa-mixcloud:before{content:""}.fa-scribd:before{content:""}.fa-pause-circle:before{content:""}.fa-pause-circle-o:before{content:""}.fa-stop-circle:before{content:""}.fa-stop-circle-o:before{content:""}.fa-shopping-bag:before{content:""}.fa-shopping-basket:before{content:""}.fa-hashtag:before{content:""}.fa-bluetooth:before{content:""}.fa-bluetooth-b:before{content:""}.fa-percent:before{content:""}.fa-gitlab:before,.icon-gitlab:before{content:""}.fa-wpbeginner:before{content:""}.fa-wpforms:before{content:""}.fa-envira:before{content:""}.fa-universal-access:before{content:""}.fa-wheelchair-alt:before{content:""}.fa-question-circle-o:before{content:""}.fa-blind:before{content:""}.fa-audio-description:before{content:""}.fa-volume-control-phone:before{content:""}.fa-braille:before{content:""}.fa-assistive-listening-systems:before{content:""}.fa-american-sign-language-interpreting:before,.fa-asl-interpreting:before{content:""}.fa-deaf:before,.fa-deafness:before,.fa-hard-of-hearing:before{content:""}.fa-glide:before{content:""}.fa-glide-g:before{content:""}.fa-sign-language:before,.fa-signing:before{content:""}.fa-low-vision:before{content:""}.fa-viadeo:before{content:""}.fa-viadeo-square:before{content:""}.fa-snapchat:before{content:""}.fa-snapchat-ghost:before{content:""}.fa-snapchat-square:before{content:""}.fa-pied-piper:before{content:""}.fa-first-order:before{content:""}.fa-yoast:before{content:""}.fa-themeisle:before{content:""}.fa-google-plus-circle:before,.fa-google-plus-official:before{content:""}.fa-fa:before,.fa-font-awesome:before{content:""}.fa-handshake-o:before{content:""}.fa-envelope-open:before{content:""}.fa-envelope-open-o:before{content:""}.fa-linode:before{content:""}.fa-address-book:before{content:""}.fa-address-book-o:before{content:""}.fa-address-card:before,.fa-vcard:before{content:""}.fa-address-card-o:before,.fa-vcard-o:before{content:""}.fa-user-circle:before{content:""}.fa-user-circle-o:before{content:""}.fa-user-o:before{content:""}.fa-id-badge:before{content:""}.fa-drivers-license:before,.fa-id-card:before{content:""}.fa-drivers-license-o:before,.fa-id-card-o:before{content:""}.fa-quora:before{content:""}.fa-free-code-camp:before{content:""}.fa-telegram:before{content:""}.fa-thermometer-4:before,.fa-thermometer-full:before,.fa-thermometer:before{content:""}.fa-thermometer-3:before,.fa-thermometer-three-quarters:before{content:""}.fa-thermometer-2:before,.fa-thermometer-half:before{content:""}.fa-thermometer-1:before,.fa-thermometer-quarter:before{content:""}.fa-thermometer-0:before,.fa-thermometer-empty:before{content:""}.fa-shower:before{content:""}.fa-bath:before,.fa-bathtub:before,.fa-s15:before{content:""}.fa-podcast:before{content:""}.fa-window-maximize:before{content:""}.fa-window-minimize:before{content:""}.fa-window-restore:before{content:""}.fa-times-rectangle:before,.fa-window-close:before{content:""}.fa-times-rectangle-o:before,.fa-window-close-o:before{content:""}.fa-bandcamp:before{content:""}.fa-grav:before{content:""}.fa-etsy:before{content:""}.fa-imdb:before{content:""}.fa-ravelry:before{content:""}.fa-eercast:before{content:""}.fa-microchip:before{content:""}.fa-snowflake-o:before{content:""}.fa-superpowers:before{content:""}.fa-wpexplorer:before{content:""}.fa-meetup:before{content:""}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}.fa,.icon,.rst-content .admonition-title,.rst-content .code-block-caption .headerlink,.rst-content code.download span:first-child,.rst-content dl dt .headerlink,.rst-content h1 .headerlink,.rst-content h2 .headerlink,.rst-content h3 .headerlink,.rst-content h4 .headerlink,.rst-content h5 .headerlink,.rst-content h6 .headerlink,.rst-content p.caption .headerlink,.rst-content table>caption .headerlink,.rst-content tt.download span:first-child,.wy-dropdown .caret,.wy-inline-validate.wy-inline-validate-danger .wy-input-context,.wy-inline-validate.wy-inline-validate-info .wy-input-context,.wy-inline-validate.wy-inline-validate-success .wy-input-context,.wy-inline-validate.wy-inline-validate-warning .wy-input-context,.wy-menu-vertical li.current>a span.toctree-expand,.wy-menu-vertical li.on a span.toctree-expand,.wy-menu-vertical li span.toctree-expand{font-family:inherit}.fa:before,.icon:before,.rst-content .admonition-title:before,.rst-content .code-block-caption .headerlink:before,.rst-content code.download span:first-child:before,.rst-content dl dt .headerlink:before,.rst-content h1 .headerlink:before,.rst-content h2 .headerlink:before,.rst-content h3 .headerlink:before,.rst-content h4 .headerlink:before,.rst-content h5 .headerlink:before,.rst-content h6 .headerlink:before,.rst-content p.caption .headerlink:before,.rst-content table>caption .headerlink:before,.rst-content tt.download span:first-child:before,.wy-dropdown .caret:before,.wy-inline-validate.wy-inline-validate-danger .wy-input-context:before,.wy-inline-validate.wy-inline-validate-info .wy-input-context:before,.wy-inline-validate.wy-inline-validate-success .wy-input-context:before,.wy-inline-validate.wy-inline-validate-warning .wy-input-context:before,.wy-menu-vertical li.current>a span.toctree-expand:before,.wy-menu-vertical li.on a span.toctree-expand:before,.wy-menu-vertical li span.toctree-expand:before{font-family:FontAwesome;display:inline-block;font-style:normal;font-weight:400;line-height:1;text-decoration:inherit}.rst-content .code-block-caption a .headerlink,.rst-content a .admonition-title,.rst-content code.download a span:first-child,.rst-content dl dt a .headerlink,.rst-content h1 a .headerlink,.rst-content h2 a .headerlink,.rst-content h3 a .headerlink,.rst-content h4 a .headerlink,.rst-content h5 a .headerlink,.rst-content h6 a .headerlink,.rst-content p.caption a .headerlink,.rst-content table>caption a .headerlink,.rst-content tt.download a span:first-child,.wy-menu-vertical li.current>a span.toctree-expand,.wy-menu-vertical li.on a span.toctree-expand,.wy-menu-vertical li a span.toctree-expand,a .fa,a .icon,a .rst-content .admonition-title,a .rst-content .code-block-caption .headerlink,a .rst-content code.download span:first-child,a .rst-content dl dt .headerlink,a .rst-content h1 .headerlink,a .rst-content h2 .headerlink,a .rst-content h3 .headerlink,a .rst-content h4 .headerlink,a .rst-content h5 .headerlink,a .rst-content h6 .headerlink,a .rst-content p.caption .headerlink,a .rst-content table>caption .headerlink,a .rst-content tt.download span:first-child,a .wy-menu-vertical li span.toctree-expand{display:inline-block;text-decoration:inherit}.btn .fa,.btn .icon,.btn .rst-content .admonition-title,.btn .rst-content .code-block-caption .headerlink,.btn .rst-content code.download span:first-child,.btn .rst-content dl dt .headerlink,.btn .rst-content h1 .headerlink,.btn .rst-content h2 .headerlink,.btn .rst-content h3 .headerlink,.btn .rst-content h4 .headerlink,.btn .rst-content h5 .headerlink,.btn .rst-content h6 .headerlink,.btn .rst-content p.caption .headerlink,.btn .rst-content table>caption .headerlink,.btn .rst-content tt.download span:first-child,.btn .wy-menu-vertical li.current>a span.toctree-expand,.btn .wy-menu-vertical li.on a span.toctree-expand,.btn .wy-menu-vertical li span.toctree-expand,.nav .fa,.nav .icon,.nav .rst-content .admonition-title,.nav .rst-content .code-block-caption .headerlink,.nav .rst-content code.download span:first-child,.nav .rst-content dl dt .headerlink,.nav .rst-content h1 .headerlink,.nav .rst-content h2 .headerlink,.nav .rst-content h3 .headerlink,.nav .rst-content h4 .headerlink,.nav .rst-content h5 .headerlink,.nav .rst-content h6 .headerlink,.nav .rst-content p.caption .headerlink,.nav .rst-content table>caption .headerlink,.nav .rst-content tt.download span:first-child,.nav .wy-menu-vertical li.current>a span.toctree-expand,.nav .wy-menu-vertical li.on a span.toctree-expand,.nav .wy-menu-vertical li span.toctree-expand,.rst-content .btn .admonition-title,.rst-content .code-block-caption .btn .headerlink,.rst-content .code-block-caption .nav .headerlink,.rst-content .nav .admonition-title,.rst-content code.download .btn span:first-child,.rst-content code.download .nav span:first-child,.rst-content dl dt .btn .headerlink,.rst-content dl dt .nav .headerlink,.rst-content h1 .btn .headerlink,.rst-content h1 .nav .headerlink,.rst-content h2 .btn .headerlink,.rst-content h2 .nav .headerlink,.rst-content h3 .btn .headerlink,.rst-content h3 .nav .headerlink,.rst-content h4 .btn .headerlink,.rst-content h4 .nav .headerlink,.rst-content h5 .btn .headerlink,.rst-content h5 .nav .headerlink,.rst-content h6 .btn .headerlink,.rst-content h6 .nav .headerlink,.rst-content p.caption .btn .headerlink,.rst-content p.caption .nav .headerlink,.rst-content table>caption .btn .headerlink,.rst-content table>caption .nav .headerlink,.rst-content tt.download .btn span:first-child,.rst-content tt.download .nav span:first-child,.wy-menu-vertical li .btn span.toctree-expand,.wy-menu-vertical li.current>a .btn span.toctree-expand,.wy-menu-vertical li.current>a .nav span.toctree-expand,.wy-menu-vertical li .nav span.toctree-expand,.wy-menu-vertical li.on a .btn span.toctree-expand,.wy-menu-vertical li.on a .nav span.toctree-expand{display:inline}.btn .fa-large.icon,.btn .fa.fa-large,.btn .rst-content .code-block-caption .fa-large.headerlink,.btn .rst-content .fa-large.admonition-title,.btn .rst-content code.download span.fa-large:first-child,.btn .rst-content dl dt .fa-large.headerlink,.btn .rst-content h1 .fa-large.headerlink,.btn .rst-content h2 .fa-large.headerlink,.btn .rst-content h3 .fa-large.headerlink,.btn .rst-content h4 .fa-large.headerlink,.btn .rst-content h5 .fa-large.headerlink,.btn .rst-content h6 .fa-large.headerlink,.btn .rst-content p.caption .fa-large.headerlink,.btn .rst-content table>caption .fa-large.headerlink,.btn .rst-content tt.download span.fa-large:first-child,.btn .wy-menu-vertical li span.fa-large.toctree-expand,.nav .fa-large.icon,.nav .fa.fa-large,.nav .rst-content .code-block-caption .fa-large.headerlink,.nav .rst-content .fa-large.admonition-title,.nav .rst-content code.download span.fa-large:first-child,.nav .rst-content dl dt .fa-large.headerlink,.nav .rst-content h1 .fa-large.headerlink,.nav .rst-content h2 .fa-large.headerlink,.nav .rst-content h3 .fa-large.headerlink,.nav .rst-content h4 .fa-large.headerlink,.nav .rst-content h5 .fa-large.headerlink,.nav .rst-content h6 .fa-large.headerlink,.nav .rst-content p.caption .fa-large.headerlink,.nav .rst-content table>caption .fa-large.headerlink,.nav .rst-content tt.download span.fa-large:first-child,.nav .wy-menu-vertical li span.fa-large.toctree-expand,.rst-content .btn .fa-large.admonition-title,.rst-content .code-block-caption .btn .fa-large.headerlink,.rst-content .code-block-caption .nav .fa-large.headerlink,.rst-content .nav .fa-large.admonition-title,.rst-content code.download .btn span.fa-large:first-child,.rst-content code.download .nav span.fa-large:first-child,.rst-content dl dt .btn .fa-large.headerlink,.rst-content dl dt .nav .fa-large.headerlink,.rst-content h1 .btn .fa-large.headerlink,.rst-content h1 .nav .fa-large.headerlink,.rst-content h2 .btn .fa-large.headerlink,.rst-content h2 .nav .fa-large.headerlink,.rst-content h3 .btn .fa-large.headerlink,.rst-content h3 .nav .fa-large.headerlink,.rst-content h4 .btn .fa-large.headerlink,.rst-content h4 .nav .fa-large.headerlink,.rst-content h5 .btn .fa-large.headerlink,.rst-content h5 .nav .fa-large.headerlink,.rst-content h6 .btn .fa-large.headerlink,.rst-content h6 .nav .fa-large.headerlink,.rst-content p.caption .btn .fa-large.headerlink,.rst-content p.caption .nav .fa-large.headerlink,.rst-content table>caption .btn .fa-large.headerlink,.rst-content table>caption .nav .fa-large.headerlink,.rst-content tt.download .btn span.fa-large:first-child,.rst-content tt.download .nav span.fa-large:first-child,.wy-menu-vertical li .btn span.fa-large.toctree-expand,.wy-menu-vertical li .nav span.fa-large.toctree-expand{line-height:.9em}.btn .fa-spin.icon,.btn .fa.fa-spin,.btn .rst-content .code-block-caption .fa-spin.headerlink,.btn .rst-content .fa-spin.admonition-title,.btn .rst-content code.download span.fa-spin:first-child,.btn .rst-content dl dt .fa-spin.headerlink,.btn .rst-content h1 .fa-spin.headerlink,.btn .rst-content h2 .fa-spin.headerlink,.btn .rst-content h3 .fa-spin.headerlink,.btn .rst-content h4 .fa-spin.headerlink,.btn .rst-content h5 .fa-spin.headerlink,.btn .rst-content h6 .fa-spin.headerlink,.btn .rst-content p.caption .fa-spin.headerlink,.btn .rst-content table>caption .fa-spin.headerlink,.btn .rst-content tt.download span.fa-spin:first-child,.btn .wy-menu-vertical li span.fa-spin.toctree-expand,.nav .fa-spin.icon,.nav .fa.fa-spin,.nav .rst-content .code-block-caption .fa-spin.headerlink,.nav .rst-content .fa-spin.admonition-title,.nav .rst-content code.download span.fa-spin:first-child,.nav .rst-content dl dt .fa-spin.headerlink,.nav .rst-content h1 .fa-spin.headerlink,.nav .rst-content h2 .fa-spin.headerlink,.nav .rst-content h3 .fa-spin.headerlink,.nav .rst-content h4 .fa-spin.headerlink,.nav .rst-content h5 .fa-spin.headerlink,.nav .rst-content h6 .fa-spin.headerlink,.nav .rst-content p.caption .fa-spin.headerlink,.nav .rst-content table>caption .fa-spin.headerlink,.nav .rst-content tt.download span.fa-spin:first-child,.nav .wy-menu-vertical li span.fa-spin.toctree-expand,.rst-content .btn .fa-spin.admonition-title,.rst-content .code-block-caption .btn .fa-spin.headerlink,.rst-content .code-block-caption .nav .fa-spin.headerlink,.rst-content .nav .fa-spin.admonition-title,.rst-content code.download .btn span.fa-spin:first-child,.rst-content code.download .nav span.fa-spin:first-child,.rst-content dl dt .btn .fa-spin.headerlink,.rst-content dl dt .nav .fa-spin.headerlink,.rst-content h1 .btn .fa-spin.headerlink,.rst-content h1 .nav .fa-spin.headerlink,.rst-content h2 .btn .fa-spin.headerlink,.rst-content h2 .nav .fa-spin.headerlink,.rst-content h3 .btn .fa-spin.headerlink,.rst-content h3 .nav .fa-spin.headerlink,.rst-content h4 .btn .fa-spin.headerlink,.rst-content h4 .nav .fa-spin.headerlink,.rst-content h5 .btn .fa-spin.headerlink,.rst-content h5 .nav .fa-spin.headerlink,.rst-content h6 .btn .fa-spin.headerlink,.rst-content h6 .nav .fa-spin.headerlink,.rst-content p.caption .btn .fa-spin.headerlink,.rst-content p.caption .nav .fa-spin.headerlink,.rst-content table>caption .btn .fa-spin.headerlink,.rst-content table>caption .nav .fa-spin.headerlink,.rst-content tt.download .btn span.fa-spin:first-child,.rst-content tt.download .nav span.fa-spin:first-child,.wy-menu-vertical li .btn span.fa-spin.toctree-expand,.wy-menu-vertical li .nav span.fa-spin.toctree-expand{display:inline-block}.btn.fa:before,.btn.icon:before,.rst-content .btn.admonition-title:before,.rst-content .code-block-caption .btn.headerlink:before,.rst-content code.download span.btn:first-child:before,.rst-content dl dt .btn.headerlink:before,.rst-content h1 .btn.headerlink:before,.rst-content h2 .btn.headerlink:before,.rst-content h3 .btn.headerlink:before,.rst-content h4 .btn.headerlink:before,.rst-content h5 .btn.headerlink:before,.rst-content h6 .btn.headerlink:before,.rst-content p.caption .btn.headerlink:before,.rst-content table>caption .btn.headerlink:before,.rst-content tt.download span.btn:first-child:before,.wy-menu-vertical li span.btn.toctree-expand:before{opacity:.5;-webkit-transition:opacity .05s ease-in;-moz-transition:opacity .05s ease-in;transition:opacity .05s ease-in}.btn.fa:hover:before,.btn.icon:hover:before,.rst-content .btn.admonition-title:hover:before,.rst-content .code-block-caption .btn.headerlink:hover:before,.rst-content code.download span.btn:first-child:hover:before,.rst-content dl dt .btn.headerlink:hover:before,.rst-content h1 .btn.headerlink:hover:before,.rst-content h2 .btn.headerlink:hover:before,.rst-content h3 .btn.headerlink:hover:before,.rst-content h4 .btn.headerlink:hover:before,.rst-content h5 .btn.headerlink:hover:before,.rst-content h6 .btn.headerlink:hover:before,.rst-content p.caption .btn.headerlink:hover:before,.rst-content table>caption .btn.headerlink:hover:before,.rst-content tt.download span.btn:first-child:hover:before,.wy-menu-vertical li span.btn.toctree-expand:hover:before{opacity:1}.btn-mini .fa:before,.btn-mini .icon:before,.btn-mini .rst-content .admonition-title:before,.btn-mini .rst-content .code-block-caption .headerlink:before,.btn-mini .rst-content code.download span:first-child:before,.btn-mini .rst-content dl dt .headerlink:before,.btn-mini .rst-content h1 .headerlink:before,.btn-mini .rst-content h2 .headerlink:before,.btn-mini .rst-content h3 .headerlink:before,.btn-mini .rst-content h4 .headerlink:before,.btn-mini .rst-content h5 .headerlink:before,.btn-mini .rst-content h6 .headerlink:before,.btn-mini .rst-content p.caption .headerlink:before,.btn-mini .rst-content table>caption .headerlink:before,.btn-mini .rst-content tt.download span:first-child:before,.btn-mini .wy-menu-vertical li span.toctree-expand:before,.rst-content .btn-mini .admonition-title:before,.rst-content .code-block-caption .btn-mini .headerlink:before,.rst-content code.download .btn-mini span:first-child:before,.rst-content dl dt .btn-mini .headerlink:before,.rst-content h1 .btn-mini .headerlink:before,.rst-content h2 .btn-mini .headerlink:before,.rst-content h3 .btn-mini .headerlink:before,.rst-content h4 .btn-mini .headerlink:before,.rst-content h5 .btn-mini .headerlink:before,.rst-content h6 .btn-mini .headerlink:before,.rst-content p.caption .btn-mini .headerlink:before,.rst-content table>caption .btn-mini .headerlink:before,.rst-content tt.download .btn-mini span:first-child:before,.wy-menu-vertical li .btn-mini span.toctree-expand:before{font-size:14px;vertical-align:-15%}.rst-content .admonition,.rst-content .admonition-todo,.rst-content .attention,.rst-content .caution,.rst-content .danger,.rst-content .error,.rst-content .hint,.rst-content .important,.rst-content .note,.rst-content .seealso,.rst-content .tip,.rst-content .warning,.wy-alert{padding:12px;line-height:24px;margin-bottom:24px;background:#e7f2fa}.rst-content .admonition-title,.wy-alert-title{font-weight:700;display:block;color:#fff;background:#6ab0de;padding:6px 12px;margin:-12px -12px 12px}.rst-content .danger,.rst-content .error,.rst-content .wy-alert-danger.admonition,.rst-content .wy-alert-danger.admonition-todo,.rst-content .wy-alert-danger.attention,.rst-content .wy-alert-danger.caution,.rst-content .wy-alert-danger.hint,.rst-content .wy-alert-danger.important,.rst-content .wy-alert-danger.note,.rst-content .wy-alert-danger.seealso,.rst-content .wy-alert-danger.tip,.rst-content .wy-alert-danger.warning,.wy-alert.wy-alert-danger{background:#fdf3f2}.rst-content .danger .admonition-title,.rst-content .danger .wy-alert-title,.rst-content .error .admonition-title,.rst-content .error .wy-alert-title,.rst-content .wy-alert-danger.admonition-todo .admonition-title,.rst-content .wy-alert-danger.admonition-todo .wy-alert-title,.rst-content .wy-alert-danger.admonition .admonition-title,.rst-content .wy-alert-danger.admonition .wy-alert-title,.rst-content .wy-alert-danger.attention .admonition-title,.rst-content .wy-alert-danger.attention .wy-alert-title,.rst-content .wy-alert-danger.caution .admonition-title,.rst-content .wy-alert-danger.caution .wy-alert-title,.rst-content .wy-alert-danger.hint .admonition-title,.rst-content .wy-alert-danger.hint .wy-alert-title,.rst-content .wy-alert-danger.important .admonition-title,.rst-content .wy-alert-danger.important .wy-alert-title,.rst-content .wy-alert-danger.note .admonition-title,.rst-content .wy-alert-danger.note .wy-alert-title,.rst-content .wy-alert-danger.seealso .admonition-title,.rst-content .wy-alert-danger.seealso .wy-alert-title,.rst-content .wy-alert-danger.tip .admonition-title,.rst-content .wy-alert-danger.tip .wy-alert-title,.rst-content .wy-alert-danger.warning .admonition-title,.rst-content .wy-alert-danger.warning .wy-alert-title,.rst-content .wy-alert.wy-alert-danger .admonition-title,.wy-alert.wy-alert-danger .rst-content .admonition-title,.wy-alert.wy-alert-danger .wy-alert-title{background:#f29f97}.rst-content .admonition-todo,.rst-content .attention,.rst-content .caution,.rst-content .warning,.rst-content .wy-alert-warning.admonition,.rst-content .wy-alert-warning.danger,.rst-content .wy-alert-warning.error,.rst-content .wy-alert-warning.hint,.rst-content .wy-alert-warning.important,.rst-content .wy-alert-warning.note,.rst-content .wy-alert-warning.seealso,.rst-content .wy-alert-warning.tip,.wy-alert.wy-alert-warning{background:#ffedcc}.rst-content .admonition-todo .admonition-title,.rst-content .admonition-todo .wy-alert-title,.rst-content .attention .admonition-title,.rst-content .attention .wy-alert-title,.rst-content .caution .admonition-title,.rst-content .caution .wy-alert-title,.rst-content .warning .admonition-title,.rst-content .warning .wy-alert-title,.rst-content .wy-alert-warning.admonition .admonition-title,.rst-content .wy-alert-warning.admonition .wy-alert-title,.rst-content .wy-alert-warning.danger .admonition-title,.rst-content .wy-alert-warning.danger .wy-alert-title,.rst-content .wy-alert-warning.error .admonition-title,.rst-content .wy-alert-warning.error .wy-alert-title,.rst-content .wy-alert-warning.hint .admonition-title,.rst-content .wy-alert-warning.hint .wy-alert-title,.rst-content .wy-alert-warning.important .admonition-title,.rst-content .wy-alert-warning.important .wy-alert-title,.rst-content .wy-alert-warning.note .admonition-title,.rst-content .wy-alert-warning.note .wy-alert-title,.rst-content .wy-alert-warning.seealso .admonition-title,.rst-content .wy-alert-warning.seealso .wy-alert-title,.rst-content .wy-alert-warning.tip .admonition-title,.rst-content .wy-alert-warning.tip .wy-alert-title,.rst-content .wy-alert.wy-alert-warning .admonition-title,.wy-alert.wy-alert-warning .rst-content .admonition-title,.wy-alert.wy-alert-warning .wy-alert-title{background:#f0b37e}.rst-content .note,.rst-content .seealso,.rst-content .wy-alert-info.admonition,.rst-content .wy-alert-info.admonition-todo,.rst-content .wy-alert-info.attention,.rst-content .wy-alert-info.caution,.rst-content .wy-alert-info.danger,.rst-content .wy-alert-info.error,.rst-content .wy-alert-info.hint,.rst-content .wy-alert-info.important,.rst-content .wy-alert-info.tip,.rst-content .wy-alert-info.warning,.wy-alert.wy-alert-info{background:#e7f2fa}.rst-content .note .admonition-title,.rst-content .note .wy-alert-title,.rst-content .seealso .admonition-title,.rst-content .seealso .wy-alert-title,.rst-content .wy-alert-info.admonition-todo .admonition-title,.rst-content .wy-alert-info.admonition-todo .wy-alert-title,.rst-content .wy-alert-info.admonition .admonition-title,.rst-content .wy-alert-info.admonition .wy-alert-title,.rst-content .wy-alert-info.attention .admonition-title,.rst-content .wy-alert-info.attention .wy-alert-title,.rst-content .wy-alert-info.caution .admonition-title,.rst-content .wy-alert-info.caution .wy-alert-title,.rst-content .wy-alert-info.danger .admonition-title,.rst-content .wy-alert-info.danger .wy-alert-title,.rst-content .wy-alert-info.error .admonition-title,.rst-content .wy-alert-info.error .wy-alert-title,.rst-content .wy-alert-info.hint .admonition-title,.rst-content .wy-alert-info.hint .wy-alert-title,.rst-content .wy-alert-info.important .admonition-title,.rst-content .wy-alert-info.important .wy-alert-title,.rst-content .wy-alert-info.tip .admonition-title,.rst-content .wy-alert-info.tip .wy-alert-title,.rst-content .wy-alert-info.warning .admonition-title,.rst-content .wy-alert-info.warning .wy-alert-title,.rst-content .wy-alert.wy-alert-info .admonition-title,.wy-alert.wy-alert-info .rst-content .admonition-title,.wy-alert.wy-alert-info .wy-alert-title{background:#6ab0de}.rst-content .hint,.rst-content .important,.rst-content .tip,.rst-content .wy-alert-success.admonition,.rst-content .wy-alert-success.admonition-todo,.rst-content .wy-alert-success.attention,.rst-content .wy-alert-success.caution,.rst-content .wy-alert-success.danger,.rst-content .wy-alert-success.error,.rst-content .wy-alert-success.note,.rst-content .wy-alert-success.seealso,.rst-content .wy-alert-success.warning,.wy-alert.wy-alert-success{background:#dbfaf4}.rst-content .hint .admonition-title,.rst-content .hint .wy-alert-title,.rst-content .important .admonition-title,.rst-content .important .wy-alert-title,.rst-content .tip .admonition-title,.rst-content .tip .wy-alert-title,.rst-content .wy-alert-success.admonition-todo .admonition-title,.rst-content .wy-alert-success.admonition-todo .wy-alert-title,.rst-content .wy-alert-success.admonition .admonition-title,.rst-content .wy-alert-success.admonition .wy-alert-title,.rst-content .wy-alert-success.attention .admonition-title,.rst-content .wy-alert-success.attention .wy-alert-title,.rst-content .wy-alert-success.caution .admonition-title,.rst-content .wy-alert-success.caution .wy-alert-title,.rst-content .wy-alert-success.danger .admonition-title,.rst-content .wy-alert-success.danger .wy-alert-title,.rst-content .wy-alert-success.error .admonition-title,.rst-content .wy-alert-success.error .wy-alert-title,.rst-content .wy-alert-success.note .admonition-title,.rst-content .wy-alert-success.note .wy-alert-title,.rst-content .wy-alert-success.seealso .admonition-title,.rst-content .wy-alert-success.seealso .wy-alert-title,.rst-content .wy-alert-success.warning .admonition-title,.rst-content .wy-alert-success.warning .wy-alert-title,.rst-content .wy-alert.wy-alert-success .admonition-title,.wy-alert.wy-alert-success .rst-content .admonition-title,.wy-alert.wy-alert-success .wy-alert-title{background:#1abc9c}.rst-content .wy-alert-neutral.admonition,.rst-content .wy-alert-neutral.admonition-todo,.rst-content .wy-alert-neutral.attention,.rst-content .wy-alert-neutral.caution,.rst-content .wy-alert-neutral.danger,.rst-content .wy-alert-neutral.error,.rst-content .wy-alert-neutral.hint,.rst-content .wy-alert-neutral.important,.rst-content .wy-alert-neutral.note,.rst-content .wy-alert-neutral.seealso,.rst-content .wy-alert-neutral.tip,.rst-content .wy-alert-neutral.warning,.wy-alert.wy-alert-neutral{background:#f3f6f6}.rst-content .wy-alert-neutral.admonition-todo .admonition-title,.rst-content .wy-alert-neutral.admonition-todo .wy-alert-title,.rst-content .wy-alert-neutral.admonition .admonition-title,.rst-content .wy-alert-neutral.admonition .wy-alert-title,.rst-content .wy-alert-neutral.attention .admonition-title,.rst-content .wy-alert-neutral.attention .wy-alert-title,.rst-content .wy-alert-neutral.caution .admonition-title,.rst-content .wy-alert-neutral.caution .wy-alert-title,.rst-content .wy-alert-neutral.danger .admonition-title,.rst-content .wy-alert-neutral.danger .wy-alert-title,.rst-content .wy-alert-neutral.error .admonition-title,.rst-content .wy-alert-neutral.error .wy-alert-title,.rst-content .wy-alert-neutral.hint .admonition-title,.rst-content .wy-alert-neutral.hint .wy-alert-title,.rst-content .wy-alert-neutral.important .admonition-title,.rst-content .wy-alert-neutral.important .wy-alert-title,.rst-content .wy-alert-neutral.note .admonition-title,.rst-content .wy-alert-neutral.note .wy-alert-title,.rst-content .wy-alert-neutral.seealso .admonition-title,.rst-content .wy-alert-neutral.seealso .wy-alert-title,.rst-content .wy-alert-neutral.tip .admonition-title,.rst-content .wy-alert-neutral.tip .wy-alert-title,.rst-content .wy-alert-neutral.warning .admonition-title,.rst-content .wy-alert-neutral.warning .wy-alert-title,.rst-content .wy-alert.wy-alert-neutral .admonition-title,.wy-alert.wy-alert-neutral .rst-content .admonition-title,.wy-alert.wy-alert-neutral .wy-alert-title{color:#404040;background:#e1e4e5}.rst-content .wy-alert-neutral.admonition-todo a,.rst-content .wy-alert-neutral.admonition a,.rst-content .wy-alert-neutral.attention a,.rst-content .wy-alert-neutral.caution a,.rst-content .wy-alert-neutral.danger a,.rst-content .wy-alert-neutral.error a,.rst-content .wy-alert-neutral.hint a,.rst-content .wy-alert-neutral.important a,.rst-content .wy-alert-neutral.note a,.rst-content .wy-alert-neutral.seealso a,.rst-content .wy-alert-neutral.tip a,.rst-content .wy-alert-neutral.warning a,.wy-alert.wy-alert-neutral a{color:#2980b9}.rst-content .admonition-todo p:last-child,.rst-content .admonition p:last-child,.rst-content .attention p:last-child,.rst-content .caution p:last-child,.rst-content .danger p:last-child,.rst-content .error p:last-child,.rst-content .hint p:last-child,.rst-content .important p:last-child,.rst-content .note p:last-child,.rst-content .seealso p:last-child,.rst-content .tip p:last-child,.rst-content .warning p:last-child,.wy-alert p:last-child{margin-bottom:0}.wy-tray-container{position:fixed;bottom:0;left:0;z-index:600}.wy-tray-container li{display:block;width:300px;background:transparent;color:#fff;text-align:center;box-shadow:0 5px 5px 0 rgba(0,0,0,.1);padding:0 24px;min-width:20%;opacity:0;height:0;line-height:56px;overflow:hidden;-webkit-transition:all .3s ease-in;-moz-transition:all .3s ease-in;transition:all .3s ease-in}.wy-tray-container li.wy-tray-item-success{background:#27ae60}.wy-tray-container li.wy-tray-item-info{background:#2980b9}.wy-tray-container li.wy-tray-item-warning{background:#e67e22}.wy-tray-container li.wy-tray-item-danger{background:#e74c3c}.wy-tray-container li.on{opacity:1;height:56px}@media screen and (max-width:768px){.wy-tray-container{bottom:auto;top:0;width:100%}.wy-tray-container li{width:100%}}button{font-size:100%;margin:0;vertical-align:baseline;*vertical-align:middle;cursor:pointer;line-height:normal;-webkit-appearance:button;*overflow:visible}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}button[disabled]{cursor:default}.btn{display:inline-block;border-radius:2px;line-height:normal;white-space:nowrap;text-align:center;cursor:pointer;font-size:100%;padding:6px 12px 8px;color:#fff;border:1px solid rgba(0,0,0,.1);background-color:#27ae60;text-decoration:none;font-weight:400;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;box-shadow:inset 0 1px 2px -1px hsla(0,0%,100%,.5),inset 0 -2px 0 0 rgba(0,0,0,.1);outline-none:false;vertical-align:middle;*display:inline;zoom:1;-webkit-user-drag:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-transition:all .1s linear;-moz-transition:all .1s linear;transition:all .1s linear}.btn-hover{background:#2e8ece;color:#fff}.btn:hover{background:#2cc36b;color:#fff}.btn:focus{background:#2cc36b;outline:0}.btn:active{box-shadow:inset 0 -1px 0 0 rgba(0,0,0,.05),inset 0 2px 0 0 rgba(0,0,0,.1);padding:8px 12px 6px}.btn:visited{color:#fff}.btn-disabled,.btn-disabled:active,.btn-disabled:focus,.btn-disabled:hover,.btn:disabled{background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false);filter:alpha(opacity=40);opacity:.4;cursor:not-allowed;box-shadow:none}.btn::-moz-focus-inner{padding:0;border:0}.btn-small{font-size:80%}.btn-info{background-color:#2980b9!important}.btn-info:hover{background-color:#2e8ece!important}.btn-neutral{background-color:#f3f6f6!important;color:#404040!important}.btn-neutral:hover{background-color:#e5ebeb!important;color:#404040}.btn-neutral:visited{color:#404040!important}.btn-success{background-color:#27ae60!important}.btn-success:hover{background-color:#295!important}.btn-danger{background-color:#e74c3c!important}.btn-danger:hover{background-color:#ea6153!important}.btn-warning{background-color:#e67e22!important}.btn-warning:hover{background-color:#e98b39!important}.btn-invert{background-color:#222}.btn-invert:hover{background-color:#2f2f2f!important}.btn-link{background-color:transparent!important;color:#2980b9;box-shadow:none;border-color:transparent!important}.btn-link:active,.btn-link:hover{background-color:transparent!important;color:#409ad5!important;box-shadow:none}.btn-link:visited{color:#9b59b6}.wy-btn-group .btn,.wy-control .btn{vertical-align:middle}.wy-btn-group{margin-bottom:24px;*zoom:1}.wy-btn-group:after,.wy-btn-group:before{display:table;content:""}.wy-btn-group:after{clear:both}.wy-dropdown{position:relative;display:inline-block}.wy-dropdown-active .wy-dropdown-menu{display:block}.wy-dropdown-menu{position:absolute;left:0;display:none;float:left;top:100%;min-width:100%;background:#fcfcfc;z-index:100;border:1px solid #cfd7dd;box-shadow:0 2px 2px 0 rgba(0,0,0,.1);padding:12px}.wy-dropdown-menu>dd>a{display:block;clear:both;color:#404040;white-space:nowrap;font-size:90%;padding:0 12px;cursor:pointer}.wy-dropdown-menu>dd>a:hover{background:#2980b9;color:#fff}.wy-dropdown-menu>dd.divider{border-top:1px solid #cfd7dd;margin:6px 0}.wy-dropdown-menu>dd.search{padding-bottom:12px}.wy-dropdown-menu>dd.search input[type=search]{width:100%}.wy-dropdown-menu>dd.call-to-action{background:#e3e3e3;text-transform:uppercase;font-weight:500;font-size:80%}.wy-dropdown-menu>dd.call-to-action:hover{background:#e3e3e3}.wy-dropdown-menu>dd.call-to-action .btn{color:#fff}.wy-dropdown.wy-dropdown-up .wy-dropdown-menu{bottom:100%;top:auto;left:auto;right:0}.wy-dropdown.wy-dropdown-bubble .wy-dropdown-menu{background:#fcfcfc;margin-top:2px}.wy-dropdown.wy-dropdown-bubble .wy-dropdown-menu a{padding:6px 12px}.wy-dropdown.wy-dropdown-bubble .wy-dropdown-menu a:hover{background:#2980b9;color:#fff}.wy-dropdown.wy-dropdown-left .wy-dropdown-menu{right:0;left:auto;text-align:right}.wy-dropdown-arrow:before{content:" ";border-bottom:5px solid #f5f5f5;border-left:5px solid transparent;border-right:5px solid transparent;position:absolute;display:block;top:-4px;left:50%;margin-left:-3px}.wy-dropdown-arrow.wy-dropdown-arrow-left:before{left:11px}.wy-form-stacked select{display:block}.wy-form-aligned .wy-help-inline,.wy-form-aligned input,.wy-form-aligned label,.wy-form-aligned select,.wy-form-aligned textarea{display:inline-block;*display:inline;*zoom:1;vertical-align:middle}.wy-form-aligned .wy-control-group>label{display:inline-block;vertical-align:middle;width:10em;margin:6px 12px 0 0;float:left}.wy-form-aligned .wy-control{float:left}.wy-form-aligned .wy-control label{display:block}.wy-form-aligned .wy-control select{margin-top:6px}fieldset{margin:0}fieldset,legend{border:0;padding:0}legend{width:100%;white-space:normal;margin-bottom:24px;font-size:150%;*margin-left:-7px}label,legend{display:block}label{margin:0 0 .3125em;color:#333;font-size:90%}input,select,textarea{font-size:100%;margin:0;vertical-align:baseline;*vertical-align:middle}.wy-control-group{margin-bottom:24px;max-width:1200px;margin-left:auto;margin-right:auto;*zoom:1}.wy-control-group:after,.wy-control-group:before{display:table;content:""}.wy-control-group:after{clear:both}.wy-control-group.wy-control-group-required>label:after{content:" *";color:#e74c3c}.wy-control-group .wy-form-full,.wy-control-group .wy-form-halves,.wy-control-group .wy-form-thirds{padding-bottom:12px}.wy-control-group .wy-form-full input[type=color],.wy-control-group .wy-form-full input[type=date],.wy-control-group .wy-form-full input[type=datetime-local],.wy-control-group .wy-form-full input[type=datetime],.wy-control-group .wy-form-full input[type=email],.wy-control-group .wy-form-full input[type=month],.wy-control-group .wy-form-full input[type=number],.wy-control-group .wy-form-full input[type=password],.wy-control-group .wy-form-full input[type=search],.wy-control-group .wy-form-full input[type=tel],.wy-control-group .wy-form-full input[type=text],.wy-control-group .wy-form-full input[type=time],.wy-control-group .wy-form-full input[type=url],.wy-control-group .wy-form-full input[type=week],.wy-control-group .wy-form-full select,.wy-control-group .wy-form-halves input[type=color],.wy-control-group .wy-form-halves input[type=date],.wy-control-group .wy-form-halves input[type=datetime-local],.wy-control-group .wy-form-halves input[type=datetime],.wy-control-group .wy-form-halves input[type=email],.wy-control-group .wy-form-halves input[type=month],.wy-control-group .wy-form-halves input[type=number],.wy-control-group .wy-form-halves input[type=password],.wy-control-group .wy-form-halves input[type=search],.wy-control-group .wy-form-halves input[type=tel],.wy-control-group .wy-form-halves input[type=text],.wy-control-group .wy-form-halves input[type=time],.wy-control-group .wy-form-halves input[type=url],.wy-control-group .wy-form-halves input[type=week],.wy-control-group .wy-form-halves select,.wy-control-group .wy-form-thirds input[type=color],.wy-control-group .wy-form-thirds input[type=date],.wy-control-group .wy-form-thirds input[type=datetime-local],.wy-control-group .wy-form-thirds input[type=datetime],.wy-control-group .wy-form-thirds input[type=email],.wy-control-group .wy-form-thirds input[type=month],.wy-control-group .wy-form-thirds input[type=number],.wy-control-group .wy-form-thirds input[type=password],.wy-control-group .wy-form-thirds input[type=search],.wy-control-group .wy-form-thirds input[type=tel],.wy-control-group .wy-form-thirds input[type=text],.wy-control-group .wy-form-thirds input[type=time],.wy-control-group .wy-form-thirds input[type=url],.wy-control-group .wy-form-thirds input[type=week],.wy-control-group .wy-form-thirds select{width:100%}.wy-control-group .wy-form-full{float:left;display:block;width:100%;margin-right:0}.wy-control-group .wy-form-full:last-child{margin-right:0}.wy-control-group .wy-form-halves{float:left;display:block;margin-right:2.35765%;width:48.82117%}.wy-control-group .wy-form-halves:last-child,.wy-control-group .wy-form-halves:nth-of-type(2n){margin-right:0}.wy-control-group .wy-form-halves:nth-of-type(odd){clear:left}.wy-control-group .wy-form-thirds{float:left;display:block;margin-right:2.35765%;width:31.76157%}.wy-control-group .wy-form-thirds:last-child,.wy-control-group .wy-form-thirds:nth-of-type(3n){margin-right:0}.wy-control-group .wy-form-thirds:nth-of-type(3n+1){clear:left}.wy-control-group.wy-control-group-no-input .wy-control,.wy-control-no-input{margin:6px 0 0;font-size:90%}.wy-control-no-input{display:inline-block}.wy-control-group.fluid-input input[type=color],.wy-control-group.fluid-input input[type=date],.wy-control-group.fluid-input input[type=datetime-local],.wy-control-group.fluid-input input[type=datetime],.wy-control-group.fluid-input input[type=email],.wy-control-group.fluid-input input[type=month],.wy-control-group.fluid-input input[type=number],.wy-control-group.fluid-input input[type=password],.wy-control-group.fluid-input input[type=search],.wy-control-group.fluid-input input[type=tel],.wy-control-group.fluid-input input[type=text],.wy-control-group.fluid-input input[type=time],.wy-control-group.fluid-input input[type=url],.wy-control-group.fluid-input input[type=week]{width:100%}.wy-form-message-inline{padding-left:.3em;color:#666;font-size:90%}.wy-form-message{display:block;color:#999;font-size:70%;margin-top:.3125em;font-style:italic}.wy-form-message p{font-size:inherit;font-style:italic;margin-bottom:6px}.wy-form-message p:last-child{margin-bottom:0}input{line-height:normal}input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;*overflow:visible}input[type=color],input[type=date],input[type=datetime-local],input[type=datetime],input[type=email],input[type=month],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],input[type=week]{-webkit-appearance:none;padding:6px;display:inline-block;border:1px solid #ccc;font-size:80%;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;box-shadow:inset 0 1px 3px #ddd;border-radius:0;-webkit-transition:border .3s linear;-moz-transition:border .3s linear;transition:border .3s linear}input[type=datetime-local]{padding:.34375em .625em}input[disabled]{cursor:default}input[type=checkbox],input[type=radio]{padding:0;margin-right:.3125em;*height:13px;*width:13px}input[type=checkbox],input[type=radio],input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}input[type=color]:focus,input[type=date]:focus,input[type=datetime-local]:focus,input[type=datetime]:focus,input[type=email]:focus,input[type=month]:focus,input[type=number]:focus,input[type=password]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=time]:focus,input[type=url]:focus,input[type=week]:focus{outline:0;outline:thin dotted\9;border-color:#333}input.no-focus:focus{border-color:#ccc!important}input[type=checkbox]:focus,input[type=file]:focus,input[type=radio]:focus{outline:thin dotted #333;outline:1px auto #129fea}input[type=color][disabled],input[type=date][disabled],input[type=datetime-local][disabled],input[type=datetime][disabled],input[type=email][disabled],input[type=month][disabled],input[type=number][disabled],input[type=password][disabled],input[type=search][disabled],input[type=tel][disabled],input[type=text][disabled],input[type=time][disabled],input[type=url][disabled],input[type=week][disabled]{cursor:not-allowed;background-color:#fafafa}input:focus:invalid,select:focus:invalid,textarea:focus:invalid{color:#e74c3c;border:1px solid #e74c3c}input:focus:invalid:focus,select:focus:invalid:focus,textarea:focus:invalid:focus{border-color:#e74c3c}input[type=checkbox]:focus:invalid:focus,input[type=file]:focus:invalid:focus,input[type=radio]:focus:invalid:focus{outline-color:#e74c3c}input.wy-input-large{padding:12px;font-size:100%}textarea{overflow:auto;vertical-align:top;width:100%;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif}select,textarea{padding:.5em .625em;display:inline-block;border:1px solid #ccc;font-size:80%;box-shadow:inset 0 1px 3px #ddd;-webkit-transition:border .3s linear;-moz-transition:border .3s linear;transition:border .3s linear}select{border:1px solid #ccc;background-color:#fff}select[multiple]{height:auto}select:focus,textarea:focus{outline:0}input[readonly],select[disabled],select[readonly],textarea[disabled],textarea[readonly]{cursor:not-allowed;background-color:#fafafa}input[type=checkbox][disabled],input[type=radio][disabled]{cursor:not-allowed}.wy-checkbox,.wy-radio{margin:6px 0;color:#404040;display:block}.wy-checkbox input,.wy-radio input{vertical-align:baseline}.wy-form-message-inline{display:inline-block;*display:inline;*zoom:1;vertical-align:middle}.wy-input-prefix,.wy-input-suffix{white-space:nowrap;padding:6px}.wy-input-prefix .wy-input-context,.wy-input-suffix .wy-input-context{line-height:27px;padding:0 8px;display:inline-block;font-size:80%;background-color:#f3f6f6;border:1px solid #ccc;color:#999}.wy-input-suffix .wy-input-context{border-left:0}.wy-input-prefix .wy-input-context{border-right:0}.wy-switch{position:relative;display:block;height:24px;margin-top:12px;cursor:pointer}.wy-switch:before{left:0;top:0;width:36px;height:12px;background:#ccc}.wy-switch:after,.wy-switch:before{position:absolute;content:"";display:block;border-radius:4px;-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.wy-switch:after{width:18px;height:18px;background:#999;left:-3px;top:-3px}.wy-switch span{position:absolute;left:48px;display:block;font-size:12px;color:#ccc;line-height:1}.wy-switch.active:before{background:#1e8449}.wy-switch.active:after{left:24px;background:#27ae60}.wy-switch.disabled{cursor:not-allowed;opacity:.8}.wy-control-group.wy-control-group-error .wy-form-message,.wy-control-group.wy-control-group-error>label{color:#e74c3c}.wy-control-group.wy-control-group-error input[type=color],.wy-control-group.wy-control-group-error input[type=date],.wy-control-group.wy-control-group-error input[type=datetime-local],.wy-control-group.wy-control-group-error input[type=datetime],.wy-control-group.wy-control-group-error input[type=email],.wy-control-group.wy-control-group-error input[type=month],.wy-control-group.wy-control-group-error input[type=number],.wy-control-group.wy-control-group-error input[type=password],.wy-control-group.wy-control-group-error input[type=search],.wy-control-group.wy-control-group-error input[type=tel],.wy-control-group.wy-control-group-error input[type=text],.wy-control-group.wy-control-group-error input[type=time],.wy-control-group.wy-control-group-error input[type=url],.wy-control-group.wy-control-group-error input[type=week],.wy-control-group.wy-control-group-error textarea{border:1px solid #e74c3c}.wy-inline-validate{white-space:nowrap}.wy-inline-validate .wy-input-context{padding:.5em .625em;display:inline-block;font-size:80%}.wy-inline-validate.wy-inline-validate-success .wy-input-context{color:#27ae60}.wy-inline-validate.wy-inline-validate-danger .wy-input-context{color:#e74c3c}.wy-inline-validate.wy-inline-validate-warning .wy-input-context{color:#e67e22}.wy-inline-validate.wy-inline-validate-info .wy-input-context{color:#2980b9}.rotate-90{-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg)}.rotate-180{-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-ms-transform:rotate(180deg);-o-transform:rotate(180deg);transform:rotate(180deg)}.rotate-270{-webkit-transform:rotate(270deg);-moz-transform:rotate(270deg);-ms-transform:rotate(270deg);-o-transform:rotate(270deg);transform:rotate(270deg)}.mirror{-webkit-transform:scaleX(-1);-moz-transform:scaleX(-1);-ms-transform:scaleX(-1);-o-transform:scaleX(-1);transform:scaleX(-1)}.mirror.rotate-90{-webkit-transform:scaleX(-1) rotate(90deg);-moz-transform:scaleX(-1) rotate(90deg);-ms-transform:scaleX(-1) rotate(90deg);-o-transform:scaleX(-1) rotate(90deg);transform:scaleX(-1) rotate(90deg)}.mirror.rotate-180{-webkit-transform:scaleX(-1) rotate(180deg);-moz-transform:scaleX(-1) rotate(180deg);-ms-transform:scaleX(-1) rotate(180deg);-o-transform:scaleX(-1) rotate(180deg);transform:scaleX(-1) rotate(180deg)}.mirror.rotate-270{-webkit-transform:scaleX(-1) rotate(270deg);-moz-transform:scaleX(-1) rotate(270deg);-ms-transform:scaleX(-1) rotate(270deg);-o-transform:scaleX(-1) rotate(270deg);transform:scaleX(-1) rotate(270deg)}@media only screen and (max-width:480px){.wy-form button[type=submit]{margin:.7em 0 0}.wy-form input[type=color],.wy-form input[type=date],.wy-form input[type=datetime-local],.wy-form input[type=datetime],.wy-form input[type=email],.wy-form input[type=month],.wy-form input[type=number],.wy-form input[type=password],.wy-form input[type=search],.wy-form input[type=tel],.wy-form input[type=text],.wy-form input[type=time],.wy-form input[type=url],.wy-form input[type=week],.wy-form label{margin-bottom:.3em;display:block}.wy-form input[type=color],.wy-form input[type=date],.wy-form input[type=datetime-local],.wy-form input[type=datetime],.wy-form input[type=email],.wy-form input[type=month],.wy-form input[type=number],.wy-form input[type=password],.wy-form input[type=search],.wy-form input[type=tel],.wy-form input[type=time],.wy-form input[type=url],.wy-form input[type=week]{margin-bottom:0}.wy-form-aligned .wy-control-group label{margin-bottom:.3em;text-align:left;display:block;width:100%}.wy-form-aligned .wy-control{margin:1.5em 0 0}.wy-form-message,.wy-form-message-inline,.wy-form .wy-help-inline{display:block;font-size:80%;padding:6px 0}}@media screen and (max-width:768px){.tablet-hide{display:none}}@media screen and (max-width:480px){.mobile-hide{display:none}}.float-left{float:left}.float-right{float:right}.full-width{width:100%}.rst-content table.docutils,.rst-content table.field-list,.wy-table{border-collapse:collapse;border-spacing:0;empty-cells:show;margin-bottom:24px}.rst-content table.docutils caption,.rst-content table.field-list caption,.wy-table caption{color:#000;font:italic 85%/1 arial,sans-serif;padding:1em 0;text-align:center}.rst-content table.docutils td,.rst-content table.docutils th,.rst-content table.field-list td,.rst-content table.field-list th,.wy-table td,.wy-table th{font-size:90%;margin:0;overflow:visible;padding:8px 16px}.rst-content table.docutils td:first-child,.rst-content table.docutils th:first-child,.rst-content table.field-list td:first-child,.rst-content table.field-list th:first-child,.wy-table td:first-child,.wy-table th:first-child{border-left-width:0}.rst-content table.docutils thead,.rst-content table.field-list thead,.wy-table thead{color:#000;text-align:left;vertical-align:bottom;white-space:nowrap}.rst-content table.docutils thead th,.rst-content table.field-list thead th,.wy-table thead th{font-weight:700;border-bottom:2px solid #e1e4e5}.rst-content table.docutils td,.rst-content table.field-list td,.wy-table td{background-color:transparent;vertical-align:middle}.rst-content table.docutils td p,.rst-content table.field-list td p,.wy-table td p{line-height:18px}.rst-content table.docutils td p:last-child,.rst-content table.field-list td p:last-child,.wy-table td p:last-child{margin-bottom:0}.rst-content table.docutils .wy-table-cell-min,.rst-content table.field-list .wy-table-cell-min,.wy-table .wy-table-cell-min{width:1%;padding-right:0}.rst-content table.docutils .wy-table-cell-min input[type=checkbox],.rst-content table.field-list .wy-table-cell-min input[type=checkbox],.wy-table .wy-table-cell-min input[type=checkbox]{margin:0}.wy-table-secondary{color:grey;font-size:90%}.wy-table-tertiary{color:grey;font-size:80%}.rst-content table.docutils:not(.field-list) tr:nth-child(2n-1) td,.wy-table-backed,.wy-table-odd td,.wy-table-striped tr:nth-child(2n-1) td{background-color:#f3f6f6}.rst-content table.docutils,.wy-table-bordered-all{border:1px solid #e1e4e5}.rst-content table.docutils td,.wy-table-bordered-all td{border-bottom:1px solid #e1e4e5;border-left:1px solid #e1e4e5}.rst-content table.docutils tbody>tr:last-child td,.wy-table-bordered-all tbody>tr:last-child td{border-bottom-width:0}.wy-table-bordered{border:1px solid #e1e4e5}.wy-table-bordered-rows td{border-bottom:1px solid #e1e4e5}.wy-table-bordered-rows tbody>tr:last-child td{border-bottom-width:0}.wy-table-horizontal td,.wy-table-horizontal th{border-width:0 0 1px;border-bottom:1px solid #e1e4e5}.wy-table-horizontal tbody>tr:last-child td{border-bottom-width:0}.wy-table-responsive{margin-bottom:24px;max-width:100%;overflow:auto}.wy-table-responsive table{margin-bottom:0!important}.wy-table-responsive table td,.wy-table-responsive table th{white-space:nowrap}a{color:#2980b9;text-decoration:none;cursor:pointer}a:hover{color:#3091d1}a:visited{color:#9b59b6}html{height:100%}body,html{overflow-x:hidden}body{font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;font-weight:400;color:#404040;min-height:100%;background:#edf0f2}.wy-text-left{text-align:left}.wy-text-center{text-align:center}.wy-text-right{text-align:right}.wy-text-large{font-size:120%}.wy-text-normal{font-size:100%}.wy-text-small,small{font-size:80%}.wy-text-strike{text-decoration:line-through}.wy-text-warning{color:#e67e22!important}a.wy-text-warning:hover{color:#eb9950!important}.wy-text-info{color:#2980b9!important}a.wy-text-info:hover{color:#409ad5!important}.wy-text-success{color:#27ae60!important}a.wy-text-success:hover{color:#36d278!important}.wy-text-danger{color:#e74c3c!important}a.wy-text-danger:hover{color:#ed7669!important}.wy-text-neutral{color:#404040!important}a.wy-text-neutral:hover{color:#595959!important}.rst-content .toctree-wrapper>p.caption,h1,h2,h3,h4,h5,h6,legend{margin-top:0;font-weight:700;font-family:Roboto Slab,ff-tisa-web-pro,Georgia,Arial,sans-serif}p{line-height:24px;font-size:16px;margin:0 0 24px}h1{font-size:175%}.rst-content .toctree-wrapper>p.caption,h2{font-size:150%}h3{font-size:125%}h4{font-size:115%}h5{font-size:110%}h6{font-size:100%}hr{display:block;height:1px;border:0;border-top:1px solid #e1e4e5;margin:24px 0;padding:0}.rst-content code,.rst-content tt,code{white-space:nowrap;max-width:100%;background:#fff;border:1px solid #e1e4e5;font-size:75%;padding:0 5px;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;color:#e74c3c;overflow-x:auto}.rst-content tt.code-large,code.code-large{font-size:90%}.rst-content .section ul,.rst-content .toctree-wrapper ul,.wy-plain-list-disc,article ul{list-style:disc;line-height:24px;margin-bottom:24px}.rst-content .section ul li,.rst-content .toctree-wrapper ul li,.wy-plain-list-disc li,article ul li{list-style:disc;margin-left:24px}.rst-content .section ul li p:last-child,.rst-content .section ul li ul,.rst-content .toctree-wrapper ul li p:last-child,.rst-content .toctree-wrapper ul li ul,.wy-plain-list-disc li p:last-child,.wy-plain-list-disc li ul,article ul li p:last-child,article ul li ul{margin-bottom:0}.rst-content .section ul li li,.rst-content .toctree-wrapper ul li li,.wy-plain-list-disc li li,article ul li li{list-style:circle}.rst-content .section ul li li li,.rst-content .toctree-wrapper ul li li li,.wy-plain-list-disc li li li,article ul li li li{list-style:square}.rst-content .section ul li ol li,.rst-content .toctree-wrapper ul li ol li,.wy-plain-list-disc li ol li,article ul li ol li{list-style:decimal}.rst-content .section ol,.rst-content ol.arabic,.wy-plain-list-decimal,article ol{list-style:decimal;line-height:24px;margin-bottom:24px}.rst-content .section ol li,.rst-content ol.arabic li,.wy-plain-list-decimal li,article ol li{list-style:decimal;margin-left:24px}.rst-content .section ol li p:last-child,.rst-content .section ol li ul,.rst-content ol.arabic li p:last-child,.rst-content ol.arabic li ul,.wy-plain-list-decimal li p:last-child,.wy-plain-list-decimal li ul,article ol li p:last-child,article ol li ul{margin-bottom:0}.rst-content .section ol li ul li,.rst-content ol.arabic li ul li,.wy-plain-list-decimal li ul li,article ol li ul li{list-style:disc}.wy-breadcrumbs{*zoom:1}.wy-breadcrumbs:after,.wy-breadcrumbs:before{display:table;content:""}.wy-breadcrumbs:after{clear:both}.wy-breadcrumbs li{display:inline-block}.wy-breadcrumbs li.wy-breadcrumbs-aside{float:right}.wy-breadcrumbs li a{display:inline-block;padding:5px}.wy-breadcrumbs li a:first-child{padding-left:0}.rst-content .wy-breadcrumbs li tt,.wy-breadcrumbs li .rst-content tt,.wy-breadcrumbs li code{padding:5px;border:none;background:none}.rst-content .wy-breadcrumbs li tt.literal,.wy-breadcrumbs li .rst-content tt.literal,.wy-breadcrumbs li code.literal{color:#404040}.wy-breadcrumbs-extra{margin-bottom:0;color:#b3b3b3;font-size:80%;display:inline-block}@media screen and (max-width:480px){.wy-breadcrumbs-extra,.wy-breadcrumbs li.wy-breadcrumbs-aside{display:none}}@media print{.wy-breadcrumbs li.wy-breadcrumbs-aside{display:none}}html{font-size:16px}.wy-affix{position:fixed;top:1.618em}.wy-menu a:hover{text-decoration:none}.wy-menu-horiz{*zoom:1}.wy-menu-horiz:after,.wy-menu-horiz:before{display:table;content:""}.wy-menu-horiz:after{clear:both}.wy-menu-horiz li,.wy-menu-horiz ul{display:inline-block}.wy-menu-horiz li:hover{background:hsla(0,0%,100%,.1)}.wy-menu-horiz li.divide-left{border-left:1px solid #404040}.wy-menu-horiz li.divide-right{border-right:1px solid #404040}.wy-menu-horiz a{height:32px;display:inline-block;line-height:32px;padding:0 16px}.wy-menu-vertical{width:300px}.wy-menu-vertical header,.wy-menu-vertical p.caption{color:#55a5d9;height:32px;line-height:32px;padding:0 1.618em;margin:12px 0 0;display:block;font-weight:700;text-transform:uppercase;font-size:85%;white-space:nowrap}.wy-menu-vertical ul{margin-bottom:0}.wy-menu-vertical li.divide-top{border-top:1px solid #404040}.wy-menu-vertical li.divide-bottom{border-bottom:1px solid #404040}.wy-menu-vertical li.current{background:#e3e3e3}.wy-menu-vertical li.current a{color:grey;border-right:1px solid #c9c9c9;padding:.4045em 2.427em}.wy-menu-vertical li.current a:hover{background:#d6d6d6}.rst-content .wy-menu-vertical li tt,.wy-menu-vertical li .rst-content tt,.wy-menu-vertical li code{border:none;background:inherit;color:inherit;padding-left:0;padding-right:0}.wy-menu-vertical li span.toctree-expand{display:block;float:left;margin-left:-1.2em;font-size:.8em;line-height:1.6em;color:#4d4d4d}.wy-menu-vertical li.current>a,.wy-menu-vertical li.on a{color:#404040;font-weight:700;position:relative;background:#fcfcfc;border:none;padding:.4045em 1.618em}.wy-menu-vertical li.current>a:hover,.wy-menu-vertical li.on a:hover{background:#fcfcfc}.wy-menu-vertical li.current>a:hover span.toctree-expand,.wy-menu-vertical li.on a:hover span.toctree-expand{color:grey}.wy-menu-vertical li.current>a span.toctree-expand,.wy-menu-vertical li.on a span.toctree-expand{display:block;font-size:.8em;line-height:1.6em;color:#333}.wy-menu-vertical li.toctree-l1.current>a{border-bottom:1px solid #c9c9c9;border-top:1px solid #c9c9c9}.wy-menu-vertical .toctree-l1.current .toctree-l2>ul,.wy-menu-vertical .toctree-l2.current .toctree-l3>ul,.wy-menu-vertical .toctree-l3.current .toctree-l4>ul,.wy-menu-vertical .toctree-l4.current .toctree-l5>ul,.wy-menu-vertical .toctree-l5.current .toctree-l6>ul,.wy-menu-vertical .toctree-l6.current .toctree-l7>ul,.wy-menu-vertical .toctree-l7.current .toctree-l8>ul,.wy-menu-vertical .toctree-l8.current .toctree-l9>ul,.wy-menu-vertical .toctree-l9.current .toctree-l10>ul,.wy-menu-vertical .toctree-l10.current .toctree-l11>ul{display:none}.wy-menu-vertical .toctree-l1.current .current.toctree-l2>ul,.wy-menu-vertical .toctree-l2.current .current.toctree-l3>ul,.wy-menu-vertical .toctree-l3.current .current.toctree-l4>ul,.wy-menu-vertical .toctree-l4.current .current.toctree-l5>ul,.wy-menu-vertical .toctree-l5.current .current.toctree-l6>ul,.wy-menu-vertical .toctree-l6.current .current.toctree-l7>ul,.wy-menu-vertical .toctree-l7.current .current.toctree-l8>ul,.wy-menu-vertical .toctree-l8.current .current.toctree-l9>ul,.wy-menu-vertical .toctree-l9.current .current.toctree-l10>ul,.wy-menu-vertical .toctree-l10.current .current.toctree-l11>ul{display:block}.wy-menu-vertical li.toctree-l3,.wy-menu-vertical li.toctree-l4{font-size:.9em}.wy-menu-vertical li.toctree-l2 a,.wy-menu-vertical li.toctree-l3 a,.wy-menu-vertical li.toctree-l4 a,.wy-menu-vertical li.toctree-l5 a,.wy-menu-vertical li.toctree-l6 a,.wy-menu-vertical li.toctree-l7 a,.wy-menu-vertical li.toctree-l8 a,.wy-menu-vertical li.toctree-l9 a,.wy-menu-vertical li.toctree-l10 a{color:#404040}.wy-menu-vertical li.toctree-l2 a:hover span.toctree-expand,.wy-menu-vertical li.toctree-l3 a:hover span.toctree-expand,.wy-menu-vertical li.toctree-l4 a:hover span.toctree-expand,.wy-menu-vertical li.toctree-l5 a:hover span.toctree-expand,.wy-menu-vertical li.toctree-l6 a:hover span.toctree-expand,.wy-menu-vertical li.toctree-l7 a:hover span.toctree-expand,.wy-menu-vertical li.toctree-l8 a:hover span.toctree-expand,.wy-menu-vertical li.toctree-l9 a:hover span.toctree-expand,.wy-menu-vertical li.toctree-l10 a:hover span.toctree-expand{color:grey}.wy-menu-vertical li.toctree-l2.current li.toctree-l3>a,.wy-menu-vertical li.toctree-l3.current li.toctree-l4>a,.wy-menu-vertical li.toctree-l4.current li.toctree-l5>a,.wy-menu-vertical li.toctree-l5.current li.toctree-l6>a,.wy-menu-vertical li.toctree-l6.current li.toctree-l7>a,.wy-menu-vertical li.toctree-l7.current li.toctree-l8>a,.wy-menu-vertical li.toctree-l8.current li.toctree-l9>a,.wy-menu-vertical li.toctree-l9.current li.toctree-l10>a,.wy-menu-vertical li.toctree-l10.current li.toctree-l11>a{display:block}.wy-menu-vertical li.toctree-l2.current>a{padding:.4045em 2.427em}.wy-menu-vertical li.toctree-l2.current li.toctree-l3>a,.wy-menu-vertical li.toctree-l3.current>a{padding:.4045em 4.045em}.wy-menu-vertical li.toctree-l3.current li.toctree-l4>a,.wy-menu-vertical li.toctree-l4.current>a{padding:.4045em 5.663em}.wy-menu-vertical li.toctree-l4.current li.toctree-l5>a,.wy-menu-vertical li.toctree-l5.current>a{padding:.4045em 7.281em}.wy-menu-vertical li.toctree-l5.current li.toctree-l6>a,.wy-menu-vertical li.toctree-l6.current>a{padding:.4045em 8.899em}.wy-menu-vertical li.toctree-l6.current li.toctree-l7>a,.wy-menu-vertical li.toctree-l7.current>a{padding:.4045em 10.517em}.wy-menu-vertical li.toctree-l7.current li.toctree-l8>a,.wy-menu-vertical li.toctree-l8.current>a{padding:.4045em 12.135em}.wy-menu-vertical li.toctree-l8.current li.toctree-l9>a,.wy-menu-vertical li.toctree-l9.current>a{padding:.4045em 13.753em}.wy-menu-vertical li.toctree-l9.current li.toctree-l10>a,.wy-menu-vertical li.toctree-l10.current>a{padding:.4045em 15.371em}.wy-menu-vertical li.toctree-l10.current li.toctree-l11>a{padding:.4045em 16.989em}.wy-menu-vertical li.toctree-l2.current>a,.wy-menu-vertical li.toctree-l2.current li.toctree-l3>a{background:#c9c9c9}.wy-menu-vertical li.toctree-l2 span.toctree-expand{color:#a3a3a3}.wy-menu-vertical li.toctree-l3.current>a,.wy-menu-vertical li.toctree-l3.current li.toctree-l4>a{background:#bdbdbd}.wy-menu-vertical li.toctree-l3 span.toctree-expand{color:#969696}.wy-menu-vertical li.current ul{display:block}.wy-menu-vertical li ul{margin-bottom:0;display:none}.wy-menu-vertical li ul li a{margin-bottom:0;color:#d9d9d9;font-weight:400}.wy-menu-vertical a{line-height:18px;padding:.4045em 1.618em;display:block;position:relative;font-size:90%;color:#d9d9d9}.wy-menu-vertical a:hover{background-color:#4e4a4a;cursor:pointer}.wy-menu-vertical a:hover span.toctree-expand{color:#d9d9d9}.wy-menu-vertical a:active{background-color:#2980b9;cursor:pointer;color:#fff}.wy-menu-vertical a:active span.toctree-expand{color:#fff}.wy-side-nav-search{display:block;width:300px;padding:.809em;margin-bottom:.809em;z-index:200;background-color:#2980b9;text-align:center;color:#fcfcfc}.wy-side-nav-search input[type=text]{width:100%;border-radius:50px;padding:6px 12px;border-color:#2472a4}.wy-side-nav-search img{display:block;margin:auto auto .809em;height:45px;width:45px;background-color:#2980b9;padding:5px;border-radius:100%}.wy-side-nav-search .wy-dropdown>a,.wy-side-nav-search>a{color:#fcfcfc;font-size:100%;font-weight:700;display:inline-block;padding:4px 6px;margin-bottom:.809em}.wy-side-nav-search .wy-dropdown>a:hover,.wy-side-nav-search>a:hover{background:hsla(0,0%,100%,.1)}.wy-side-nav-search .wy-dropdown>a img.logo,.wy-side-nav-search>a img.logo{display:block;margin:0 auto;height:auto;width:auto;border-radius:0;max-width:100%;background:transparent}.wy-side-nav-search .wy-dropdown>a.icon img.logo,.wy-side-nav-search>a.icon img.logo{margin-top:.85em}.wy-side-nav-search>div.version{margin-top:-.4045em;margin-bottom:.809em;font-weight:400;color:hsla(0,0%,100%,.3)}.wy-nav .wy-menu-vertical header{color:#2980b9}.wy-nav .wy-menu-vertical a{color:#b3b3b3}.wy-nav .wy-menu-vertical a:hover{background-color:#2980b9;color:#fff}[data-menu-wrap]{-webkit-transition:all .2s ease-in;-moz-transition:all .2s ease-in;transition:all .2s ease-in;position:absolute;opacity:1;width:100%;opacity:0}[data-menu-wrap].move-center{left:0;right:auto;opacity:1}[data-menu-wrap].move-left{right:auto;left:-100%;opacity:0}[data-menu-wrap].move-right{right:-100%;left:auto;opacity:0}.wy-body-for-nav{background:#fcfcfc}.wy-grid-for-nav{position:absolute;width:100%;height:100%}.wy-nav-side{position:fixed;top:0;bottom:0;left:0;padding-bottom:2em;width:300px;overflow-x:hidden;overflow-y:hidden;min-height:100%;color:#9b9b9b;background:#343131;z-index:200}.wy-side-scroll{width:320px;position:relative;overflow-x:hidden;overflow-y:scroll;height:100%}.wy-nav-top{display:none;background:#2980b9;color:#fff;padding:.4045em .809em;position:relative;line-height:50px;text-align:center;font-size:100%;*zoom:1}.wy-nav-top:after,.wy-nav-top:before{display:table;content:""}.wy-nav-top:after{clear:both}.wy-nav-top a{color:#fff;font-weight:700}.wy-nav-top img{margin-right:12px;height:45px;width:45px;background-color:#2980b9;padding:5px;border-radius:100%}.wy-nav-top i{font-size:30px;float:left;cursor:pointer;padding-top:inherit}.wy-nav-content-wrap{margin-left:300px;background:#fcfcfc;min-height:100%}.wy-nav-content{padding:1.618em 3.236em;height:100%;max-width:800px;margin:auto}.wy-body-mask{position:fixed;width:100%;height:100%;background:rgba(0,0,0,.2);display:none;z-index:499}.wy-body-mask.on{display:block}footer{color:grey}footer p{margin-bottom:12px}.rst-content footer span.commit tt,footer span.commit .rst-content tt,footer span.commit code{padding:0;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;font-size:1em;background:none;border:none;color:grey}.rst-footer-buttons{*zoom:1}.rst-footer-buttons:after,.rst-footer-buttons:before{width:100%;display:table;content:""}.rst-footer-buttons:after{clear:both}.rst-breadcrumbs-buttons{margin-top:12px;*zoom:1}.rst-breadcrumbs-buttons:after,.rst-breadcrumbs-buttons:before{display:table;content:""}.rst-breadcrumbs-buttons:after{clear:both}#search-results .search li{margin-bottom:24px;border-bottom:1px solid #e1e4e5;padding-bottom:24px}#search-results .search li:first-child{border-top:1px solid #e1e4e5;padding-top:24px}#search-results .search li a{font-size:120%;margin-bottom:12px;display:inline-block}#search-results .context{color:grey;font-size:90%}.genindextable li>ul{margin-left:24px}@media screen and (max-width:768px){.wy-body-for-nav{background:#fcfcfc}.wy-nav-top{display:block}.wy-nav-side{left:-300px}.wy-nav-side.shift{width:85%;left:0}.wy-menu.wy-menu-vertical,.wy-side-nav-search,.wy-side-scroll{width:auto}.wy-nav-content-wrap{margin-left:0}.wy-nav-content-wrap .wy-nav-content{padding:1.618em}.wy-nav-content-wrap.shift{position:fixed;min-width:100%;left:85%;top:0;height:100%;overflow:hidden}}@media screen and (min-width:1100px){.wy-nav-content-wrap{background:rgba(0,0,0,.05)}.wy-nav-content{margin:0;background:#fcfcfc}}@media print{.rst-versions,.wy-nav-side,footer{display:none}.wy-nav-content-wrap{margin-left:0}}.rst-versions{position:fixed;bottom:0;left:0;width:300px;color:#fcfcfc;background:#1f1d1d;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;z-index:400}.rst-versions a{color:#2980b9;text-decoration:none}.rst-versions .rst-badge-small{display:none}.rst-versions .rst-current-version{padding:12px;background-color:#272525;display:block;text-align:right;font-size:90%;cursor:pointer;color:#27ae60;*zoom:1}.rst-versions .rst-current-version:after,.rst-versions .rst-current-version:before{display:table;content:""}.rst-versions .rst-current-version:after{clear:both}.rst-content .code-block-caption .rst-versions .rst-current-version .headerlink,.rst-content .rst-versions .rst-current-version .admonition-title,.rst-content code.download .rst-versions .rst-current-version span:first-child,.rst-content dl dt .rst-versions .rst-current-version .headerlink,.rst-content h1 .rst-versions .rst-current-version .headerlink,.rst-content h2 .rst-versions .rst-current-version .headerlink,.rst-content h3 .rst-versions .rst-current-version .headerlink,.rst-content h4 .rst-versions .rst-current-version .headerlink,.rst-content h5 .rst-versions .rst-current-version .headerlink,.rst-content h6 .rst-versions .rst-current-version .headerlink,.rst-content p.caption .rst-versions .rst-current-version .headerlink,.rst-content table>caption .rst-versions .rst-current-version .headerlink,.rst-content tt.download .rst-versions .rst-current-version span:first-child,.rst-versions .rst-current-version .fa,.rst-versions .rst-current-version .icon,.rst-versions .rst-current-version .rst-content .admonition-title,.rst-versions .rst-current-version .rst-content .code-block-caption .headerlink,.rst-versions .rst-current-version .rst-content code.download span:first-child,.rst-versions .rst-current-version .rst-content dl dt .headerlink,.rst-versions .rst-current-version .rst-content h1 .headerlink,.rst-versions .rst-current-version .rst-content h2 .headerlink,.rst-versions .rst-current-version .rst-content h3 .headerlink,.rst-versions .rst-current-version .rst-content h4 .headerlink,.rst-versions .rst-current-version .rst-content h5 .headerlink,.rst-versions .rst-current-version .rst-content h6 .headerlink,.rst-versions .rst-current-version .rst-content p.caption .headerlink,.rst-versions .rst-current-version .rst-content table>caption .headerlink,.rst-versions .rst-current-version .rst-content tt.download span:first-child,.rst-versions .rst-current-version .wy-menu-vertical li span.toctree-expand,.wy-menu-vertical li .rst-versions .rst-current-version span.toctree-expand{color:#fcfcfc}.rst-versions .rst-current-version .fa-book,.rst-versions .rst-current-version .icon-book{float:left}.rst-versions .rst-current-version.rst-out-of-date{background-color:#e74c3c;color:#fff}.rst-versions .rst-current-version.rst-active-old-version{background-color:#f1c40f;color:#000}.rst-versions.shift-up{height:auto;max-height:100%;overflow-y:scroll}.rst-versions.shift-up .rst-other-versions{display:block}.rst-versions .rst-other-versions{font-size:90%;padding:12px;color:grey;display:none}.rst-versions .rst-other-versions hr{display:block;height:1px;border:0;margin:20px 0;padding:0;border-top:1px solid #413d3d}.rst-versions .rst-other-versions dd{display:inline-block;margin:0}.rst-versions .rst-other-versions dd a{display:inline-block;padding:6px;color:#fcfcfc}.rst-versions.rst-badge{width:auto;bottom:20px;right:20px;left:auto;border:none;max-width:300px;max-height:90%}.rst-versions.rst-badge .fa-book,.rst-versions.rst-badge .icon-book{float:none;line-height:30px}.rst-versions.rst-badge.shift-up .rst-current-version{text-align:right}.rst-versions.rst-badge.shift-up .rst-current-version .fa-book,.rst-versions.rst-badge.shift-up .rst-current-version .icon-book{float:left}.rst-versions.rst-badge>.rst-current-version{width:auto;height:30px;line-height:30px;padding:0 6px;display:block;text-align:center}@media screen and (max-width:768px){.rst-versions{width:85%;display:none}.rst-versions.shift{display:block}}.rst-content img{max-width:100%;height:auto}.rst-content div.figure{margin-bottom:24px}.rst-content div.figure p.caption{font-style:italic}.rst-content div.figure p:last-child.caption{margin-bottom:0}.rst-content div.figure.align-center{text-align:center}.rst-content .section>a>img,.rst-content .section>img{margin-bottom:24px}.rst-content abbr[title]{text-decoration:none}.rst-content.style-external-links a.reference.external:after{font-family:FontAwesome;content:"\f08e";color:#b3b3b3;vertical-align:super;font-size:60%;margin:0 .2em}.rst-content blockquote{margin-left:24px;line-height:24px;margin-bottom:24px}.rst-content pre.literal-block{white-space:pre;margin:0;padding:12px;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;display:block;overflow:auto}.rst-content div[class^=highlight],.rst-content pre.literal-block{border:1px solid #e1e4e5;overflow-x:auto;margin:1px 0 24px}.rst-content div[class^=highlight] div[class^=highlight],.rst-content pre.literal-block div[class^=highlight]{padding:0;border:none;margin:0}.rst-content div[class^=highlight] td.code{width:100%}.rst-content .linenodiv pre{border-right:1px solid #e6e9ea;margin:0;padding:12px;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;user-select:none;pointer-events:none}.rst-content div[class^=highlight] pre{white-space:pre;margin:0;padding:12px;display:block;overflow:auto}.rst-content div[class^=highlight] pre .hll{display:block;margin:0 -12px;padding:0 12px}.rst-content .linenodiv pre,.rst-content div[class^=highlight] pre,.rst-content pre.literal-block{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;font-size:12px;line-height:1.4}.rst-content div.highlight .gp{user-select:none;pointer-events:none}.rst-content .code-block-caption{font-style:italic;font-size:85%;line-height:1;padding:1em 0;text-align:center}@media print{.rst-content .codeblock,.rst-content div[class^=highlight],.rst-content div[class^=highlight] pre{white-space:pre-wrap}}.rst-content .admonition,.rst-content .admonition-todo,.rst-content .attention,.rst-content .caution,.rst-content .danger,.rst-content .error,.rst-content .hint,.rst-content .important,.rst-content .note,.rst-content .seealso,.rst-content .tip,.rst-content .warning{clear:both}.rst-content .admonition-todo .last,.rst-content .admonition-todo>:last-child,.rst-content .admonition .last,.rst-content .admonition>:last-child,.rst-content .attention .last,.rst-content .attention>:last-child,.rst-content .caution .last,.rst-content .caution>:last-child,.rst-content .danger .last,.rst-content .danger>:last-child,.rst-content .error .last,.rst-content .error>:last-child,.rst-content .hint .last,.rst-content .hint>:last-child,.rst-content .important .last,.rst-content .important>:last-child,.rst-content .note .last,.rst-content .note>:last-child,.rst-content .seealso .last,.rst-content .seealso>:last-child,.rst-content .tip .last,.rst-content .tip>:last-child,.rst-content .warning .last,.rst-content .warning>:last-child{margin-bottom:0}.rst-content .admonition-title:before{margin-right:4px}.rst-content .admonition table{border-color:rgba(0,0,0,.1)}.rst-content .admonition table td,.rst-content .admonition table th{background:transparent!important;border-color:rgba(0,0,0,.1)!important}.rst-content .section ol.loweralpha,.rst-content .section ol.loweralpha>li{list-style:lower-alpha}.rst-content .section ol.upperalpha,.rst-content .section ol.upperalpha>li{list-style:upper-alpha}.rst-content .section ol li>*,.rst-content .section ul li>*{margin-top:12px;margin-bottom:12px}.rst-content .section ol li>:first-child,.rst-content .section ul li>:first-child{margin-top:0}.rst-content .section ol li>p,.rst-content .section ol li>p:last-child,.rst-content .section ul li>p,.rst-content .section ul li>p:last-child{margin-bottom:12px}.rst-content .section ol li>p:only-child,.rst-content .section ol li>p:only-child:last-child,.rst-content .section ul li>p:only-child,.rst-content .section ul li>p:only-child:last-child{margin-bottom:0}.rst-content .section ol li>ol,.rst-content .section ol li>ul,.rst-content .section ul li>ol,.rst-content .section ul li>ul{margin-bottom:12px}.rst-content .section ol.simple li>*,.rst-content .section ol.simple li ol,.rst-content .section ol.simple li ul,.rst-content .section ul.simple li>*,.rst-content .section ul.simple li ol,.rst-content .section ul.simple li ul{margin-top:0;margin-bottom:0}.rst-content .line-block{margin-left:0;margin-bottom:24px;line-height:24px}.rst-content .line-block .line-block{margin-left:24px;margin-bottom:0}.rst-content .topic-title{font-weight:700;margin-bottom:12px}.rst-content .toc-backref{color:#404040}.rst-content .align-right{float:right;margin:0 0 24px 24px}.rst-content .align-left{float:left;margin:0 24px 24px 0}.rst-content .align-center{margin:auto}.rst-content .align-center:not(table){display:block}.rst-content .code-block-caption .headerlink,.rst-content .toctree-wrapper>p.caption .headerlink,.rst-content dl dt .headerlink,.rst-content h1 .headerlink,.rst-content h2 .headerlink,.rst-content h3 .headerlink,.rst-content h4 .headerlink,.rst-content h5 .headerlink,.rst-content h6 .headerlink,.rst-content p.caption .headerlink,.rst-content table>caption .headerlink{visibility:hidden;font-size:14px}.rst-content .code-block-caption .headerlink:after,.rst-content .toctree-wrapper>p.caption .headerlink:after,.rst-content dl dt .headerlink:after,.rst-content h1 .headerlink:after,.rst-content h2 .headerlink:after,.rst-content h3 .headerlink:after,.rst-content h4 .headerlink:after,.rst-content h5 .headerlink:after,.rst-content h6 .headerlink:after,.rst-content p.caption .headerlink:after,.rst-content table>caption .headerlink:after{content:"\f0c1";font-family:FontAwesome}.rst-content .code-block-caption:hover .headerlink:after,.rst-content .toctree-wrapper>p.caption:hover .headerlink:after,.rst-content dl dt:hover .headerlink:after,.rst-content h1:hover .headerlink:after,.rst-content h2:hover .headerlink:after,.rst-content h3:hover .headerlink:after,.rst-content h4:hover .headerlink:after,.rst-content h5:hover .headerlink:after,.rst-content h6:hover .headerlink:after,.rst-content p.caption:hover .headerlink:after,.rst-content table>caption:hover .headerlink:after{visibility:visible}.rst-content table>caption .headerlink:after{font-size:12px}.rst-content .centered{text-align:center}.rst-content .sidebar{float:right;width:40%;display:block;margin:0 0 24px 24px;padding:24px;background:#f3f6f6;border:1px solid #e1e4e5}.rst-content .sidebar dl,.rst-content .sidebar p,.rst-content .sidebar ul{font-size:90%}.rst-content .sidebar .last,.rst-content .sidebar>:last-child{margin-bottom:0}.rst-content .sidebar .sidebar-title{display:block;font-family:Roboto Slab,ff-tisa-web-pro,Georgia,Arial,sans-serif;font-weight:700;background:#e1e4e5;padding:6px 12px;margin:-24px -24px 24px;font-size:100%}.rst-content .highlighted{background:#f1c40f;box-shadow:0 0 0 2px #f1c40f;display:inline;font-weight:700}.rst-content .citation-reference,.rst-content .footnote-reference{vertical-align:baseline;position:relative;top:-.4em;line-height:0;font-size:90%}.rst-content .hlist{width:100%}html.writer-html4 .rst-content table.docutils.citation,html.writer-html4 .rst-content table.docutils.footnote{background:none;border:none}html.writer-html4 .rst-content table.docutils.citation td,html.writer-html4 .rst-content table.docutils.citation tr,html.writer-html4 .rst-content table.docutils.footnote td,html.writer-html4 .rst-content table.docutils.footnote tr{border:none;background-color:transparent!important;white-space:normal}html.writer-html4 .rst-content table.docutils.citation td.label,html.writer-html4 .rst-content table.docutils.footnote td.label{padding-left:0;padding-right:0;vertical-align:top}html.writer-html5 .rst-content dl dt span.classifier:before{content:" : "}html.writer-html5 .rst-content dl.field-list,html.writer-html5 .rst-content dl.footnote{display:grid;grid-template-columns:max-content auto}html.writer-html5 .rst-content dl.field-list>dt,html.writer-html5 .rst-content dl.footnote>dt{padding-left:1rem}html.writer-html5 .rst-content dl.field-list>dt:after,html.writer-html5 .rst-content dl.footnote>dt:after{content:":"}html.writer-html5 .rst-content dl.field-list>dd,html.writer-html5 .rst-content dl.field-list>dt,html.writer-html5 .rst-content dl.footnote>dd,html.writer-html5 .rst-content dl.footnote>dt{margin-bottom:0}html.writer-html5 .rst-content dl.footnote{font-size:.9rem}html.writer-html5 .rst-content dl.footnote>dt{margin:0 .5rem .5rem 0;line-height:1.2rem;word-break:break-all;font-weight:400}html.writer-html5 .rst-content dl.footnote>dt>span.brackets{margin-right:.5rem}html.writer-html5 .rst-content dl.footnote>dt>span.brackets:before{content:"["}html.writer-html5 .rst-content dl.footnote>dt>span.brackets:after{content:"]"}html.writer-html5 .rst-content dl.footnote>dt>span.fn-backref{font-style:italic}html.writer-html5 .rst-content dl.footnote>dd{margin:0 0 .5rem;line-height:1.2rem}html.writer-html5 .rst-content dl.footnote>dd p,html.writer-html5 .rst-content dl.option-list kbd{font-size:.9rem}.rst-content table.docutils.footnote,html.writer-html4 .rst-content table.docutils.citation,html.writer-html5 .rst-content dl.footnote{color:grey}.rst-content table.docutils.footnote code,.rst-content table.docutils.footnote tt,html.writer-html4 .rst-content table.docutils.citation code,html.writer-html4 .rst-content table.docutils.citation tt,html.writer-html5 .rst-content dl.footnote code,html.writer-html5 .rst-content dl.footnote tt{color:#555}.rst-content .wy-table-responsive.citation,.rst-content .wy-table-responsive.footnote{margin-bottom:0}.rst-content .wy-table-responsive.citation+:not(.citation),.rst-content .wy-table-responsive.footnote+:not(.footnote){margin-top:24px}.rst-content .wy-table-responsive.citation:last-child,.rst-content .wy-table-responsive.footnote:last-child{margin-bottom:24px}.rst-content table.docutils th{border-color:#e1e4e5}html.writer-html5 .rst-content table.docutils th{border:1px solid #e1e4e5}html.writer-html5 .rst-content table.docutils td>p,html.writer-html5 .rst-content table.docutils th>p{line-height:1rem;margin-bottom:0;font-size:.9rem}.rst-content table.docutils td .last,.rst-content table.docutils td .last>:last-child{margin-bottom:0}.rst-content table.field-list,.rst-content table.field-list td{border:none}.rst-content table.field-list td p{font-size:inherit;line-height:inherit}.rst-content table.field-list td>strong{display:inline-block}.rst-content table.field-list .field-name{padding-right:10px;text-align:left;white-space:nowrap}.rst-content table.field-list .field-body{text-align:left}.rst-content code,.rst-content tt{color:#000;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;padding:2px 5px}.rst-content code big,.rst-content code em,.rst-content tt big,.rst-content tt em{font-size:100%!important;line-height:normal}.rst-content code.literal,.rst-content tt.literal{color:#e74c3c}.rst-content code.xref,.rst-content tt.xref,a .rst-content code,a .rst-content tt{font-weight:700;color:#404040}.rst-content kbd,.rst-content pre,.rst-content samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace}.rst-content a code,.rst-content a tt{color:#2980b9}.rst-content dl{margin-bottom:24px}.rst-content dl dt{font-weight:700;margin-bottom:12px}.rst-content dl ol,.rst-content dl p,.rst-content dl table,.rst-content dl ul{margin-bottom:12px}.rst-content dl dd{margin:0 0 12px 24px;line-height:24px}html.writer-html4 .rst-content dl:not(.docutils),html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple){margin-bottom:24px}html.writer-html4 .rst-content dl:not(.docutils)>dt,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple)>dt{display:table;margin:6px 0;font-size:90%;line-height:normal;background:#e7f2fa;color:#2980b9;border-top:3px solid #6ab0de;padding:6px;position:relative}html.writer-html4 .rst-content dl:not(.docutils)>dt:before,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple)>dt:before{color:#6ab0de}html.writer-html4 .rst-content dl:not(.docutils)>dt .headerlink,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple)>dt .headerlink{color:#404040;font-size:100%!important}html.writer-html4 .rst-content dl:not(.docutils) dl:not(.field-list)>dt,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) dl:not(.field-list)>dt{margin-bottom:6px;border:none;border-left:3px solid #ccc;background:#f0f0f0;color:#555}html.writer-html4 .rst-content dl:not(.docutils) dl:not(.field-list)>dt .headerlink,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) dl:not(.field-list)>dt .headerlink{color:#404040;font-size:100%!important}html.writer-html4 .rst-content dl:not(.docutils)>dt:first-child,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple)>dt:first-child{margin-top:0}html.writer-html4 .rst-content dl:not(.docutils) code,html.writer-html4 .rst-content dl:not(.docutils) tt,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) code,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) tt{font-weight:700}html.writer-html4 .rst-content dl:not(.docutils) code.descclassname,html.writer-html4 .rst-content dl:not(.docutils) code.descname,html.writer-html4 .rst-content dl:not(.docutils) tt.descclassname,html.writer-html4 .rst-content dl:not(.docutils) tt.descname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) code.descclassname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) code.descname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) tt.descclassname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) tt.descname{background-color:transparent;border:none;padding:0;font-size:100%!important}html.writer-html4 .rst-content dl:not(.docutils) code.descname,html.writer-html4 .rst-content dl:not(.docutils) tt.descname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) code.descname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) tt.descname{font-weight:700}html.writer-html4 .rst-content dl:not(.docutils) .optional,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) .optional{display:inline-block;padding:0 4px;color:#000;font-weight:700}html.writer-html4 .rst-content dl:not(.docutils) .property,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) .property{display:inline-block;padding-right:8px}.rst-content .viewcode-back,.rst-content .viewcode-link{display:inline-block;color:#27ae60;font-size:80%;padding-left:24px}.rst-content .viewcode-back{display:block;float:right}.rst-content p.rubric{margin-bottom:12px;font-weight:700}.rst-content code.download,.rst-content tt.download{background:inherit;padding:inherit;font-weight:400;font-family:inherit;font-size:inherit;color:inherit;border:inherit;white-space:inherit}.rst-content code.download span:first-child,.rst-content tt.download span:first-child{-webkit-font-smoothing:subpixel-antialiased}.rst-content code.download span:first-child:before,.rst-content tt.download span:first-child:before{margin-right:4px}.rst-content .guilabel{border:1px solid #7fbbe3;background:#e7f2fa;font-size:80%;font-weight:700;border-radius:4px;padding:2.4px 6px;margin:auto 2px}.rst-content .versionmodified{font-style:italic}@media screen and (max-width:480px){.rst-content .sidebar{width:100%}}span[id*=MathJax-Span]{color:#404040}.math{text-align:center}@font-face{font-family:Lato;src:url(fonts/lato-normal.woff2?bd03a2cc277bbbc338d464e679fe9942) format("woff2"),url(fonts/lato-normal.woff?27bd77b9162d388cb8d4c4217c7c5e2a) format("woff");font-weight:400;font-style:normal;font-display:block}@font-face{font-family:Lato;src:url(fonts/lato-bold.woff2?cccb897485813c7c256901dbca54ecf2) format("woff2"),url(fonts/lato-bold.woff?d878b6c29b10beca227e9eef4246111b) format("woff");font-weight:700;font-style:normal;font-display:block}@font-face{font-family:Lato;src:url(fonts/lato-bold-italic.woff2?0b6bb6725576b072c5d0b02ecdd1900d) format("woff2"),url(fonts/lato-bold-italic.woff?9c7e4e9eb485b4a121c760e61bc3707c) format("woff");font-weight:700;font-style:italic;font-display:block}@font-face{font-family:Lato;src:url(fonts/lato-normal-italic.woff2?4eb103b4d12be57cb1d040ed5e162e9d) format("woff2"),url(fonts/lato-normal-italic.woff?f28f2d6482446544ef1ea1ccc6dd5892) format("woff");font-weight:400;font-style:italic;font-display:block}@font-face{font-family:Roboto Slab;font-style:normal;font-weight:400;src:url(fonts/Roboto-Slab-Regular.woff2?7abf5b8d04d26a2cafea937019bca958) format("woff2"),url(fonts/Roboto-Slab-Regular.woff?c1be9284088d487c5e3ff0a10a92e58c) format("woff");font-display:block}@font-face{font-family:Roboto Slab;font-style:normal;font-weight:700;src:url(fonts/Roboto-Slab-Bold.woff2?9984f4a9bda09be08e83f2506954adbe) format("woff2"),url(fonts/Roboto-Slab-Bold.woff?bed5564a116b05148e3b3bea6fb1162a) format("woff");font-display:block} \ No newline at end of file + */@font-face{font-family:FontAwesome;src:url(fonts/fontawesome-webfont.eot?674f50d287a8c48dc19ba404d20fe713);src:url(fonts/fontawesome-webfont.eot?674f50d287a8c48dc19ba404d20fe713?#iefix&v=4.7.0) format("embedded-opentype"),url(fonts/fontawesome-webfont.woff2?af7ae505a9eed503f8b8e6982036873e) format("woff2"),url(fonts/fontawesome-webfont.woff?fee66e712a8a08eef5805a46892932ad) format("woff"),url(fonts/fontawesome-webfont.ttf?b06871f281fee6b241d60582ae9369b9) format("truetype"),url(fonts/fontawesome-webfont.svg?912ec66d7572ff821749319396470bde#fontawesomeregular) format("svg");font-weight:400;font-style:normal}.fa,.icon,.rst-content .admonition-title,.rst-content .code-block-caption .headerlink,.rst-content .eqno .headerlink,.rst-content code.download span:first-child,.rst-content dl dt .headerlink,.rst-content h1 .headerlink,.rst-content h2 .headerlink,.rst-content h3 .headerlink,.rst-content h4 .headerlink,.rst-content h5 .headerlink,.rst-content h6 .headerlink,.rst-content p.caption .headerlink,.rst-content p .headerlink,.rst-content table>caption .headerlink,.rst-content tt.download span:first-child,.wy-menu-vertical li.current>a button.toctree-expand,.wy-menu-vertical li.on a button.toctree-expand,.wy-menu-vertical li button.toctree-expand{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.28571em;text-align:center}.fa-ul{padding-left:0;margin-left:2.14286em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.14286em;width:2.14286em;top:.14286em;text-align:center}.fa-li.fa-lg{left:-1.85714em}.fa-border{padding:.2em .25em .15em;border:.08em solid #eee;border-radius:.1em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa-pull-left.icon,.fa.fa-pull-left,.rst-content .code-block-caption .fa-pull-left.headerlink,.rst-content .eqno .fa-pull-left.headerlink,.rst-content .fa-pull-left.admonition-title,.rst-content code.download span.fa-pull-left:first-child,.rst-content dl dt .fa-pull-left.headerlink,.rst-content h1 .fa-pull-left.headerlink,.rst-content h2 .fa-pull-left.headerlink,.rst-content h3 .fa-pull-left.headerlink,.rst-content h4 .fa-pull-left.headerlink,.rst-content h5 .fa-pull-left.headerlink,.rst-content h6 .fa-pull-left.headerlink,.rst-content p .fa-pull-left.headerlink,.rst-content table>caption .fa-pull-left.headerlink,.rst-content tt.download span.fa-pull-left:first-child,.wy-menu-vertical li.current>a button.fa-pull-left.toctree-expand,.wy-menu-vertical li.on a button.fa-pull-left.toctree-expand,.wy-menu-vertical li button.fa-pull-left.toctree-expand{margin-right:.3em}.fa-pull-right.icon,.fa.fa-pull-right,.rst-content .code-block-caption .fa-pull-right.headerlink,.rst-content .eqno .fa-pull-right.headerlink,.rst-content .fa-pull-right.admonition-title,.rst-content code.download span.fa-pull-right:first-child,.rst-content dl dt .fa-pull-right.headerlink,.rst-content h1 .fa-pull-right.headerlink,.rst-content h2 .fa-pull-right.headerlink,.rst-content h3 .fa-pull-right.headerlink,.rst-content h4 .fa-pull-right.headerlink,.rst-content h5 .fa-pull-right.headerlink,.rst-content h6 .fa-pull-right.headerlink,.rst-content p .fa-pull-right.headerlink,.rst-content table>caption .fa-pull-right.headerlink,.rst-content tt.download span.fa-pull-right:first-child,.wy-menu-vertical li.current>a button.fa-pull-right.toctree-expand,.wy-menu-vertical li.on a button.fa-pull-right.toctree-expand,.wy-menu-vertical li button.fa-pull-right.toctree-expand{margin-left:.3em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left,.pull-left.icon,.rst-content .code-block-caption .pull-left.headerlink,.rst-content .eqno .pull-left.headerlink,.rst-content .pull-left.admonition-title,.rst-content code.download span.pull-left:first-child,.rst-content dl dt .pull-left.headerlink,.rst-content h1 .pull-left.headerlink,.rst-content h2 .pull-left.headerlink,.rst-content h3 .pull-left.headerlink,.rst-content h4 .pull-left.headerlink,.rst-content h5 .pull-left.headerlink,.rst-content h6 .pull-left.headerlink,.rst-content p .pull-left.headerlink,.rst-content table>caption .pull-left.headerlink,.rst-content tt.download span.pull-left:first-child,.wy-menu-vertical li.current>a button.pull-left.toctree-expand,.wy-menu-vertical li.on a button.pull-left.toctree-expand,.wy-menu-vertical li button.pull-left.toctree-expand{margin-right:.3em}.fa.pull-right,.pull-right.icon,.rst-content .code-block-caption .pull-right.headerlink,.rst-content .eqno .pull-right.headerlink,.rst-content .pull-right.admonition-title,.rst-content code.download span.pull-right:first-child,.rst-content dl dt .pull-right.headerlink,.rst-content h1 .pull-right.headerlink,.rst-content h2 .pull-right.headerlink,.rst-content h3 .pull-right.headerlink,.rst-content h4 .pull-right.headerlink,.rst-content h5 .pull-right.headerlink,.rst-content h6 .pull-right.headerlink,.rst-content p .pull-right.headerlink,.rst-content table>caption .pull-right.headerlink,.rst-content tt.download span.pull-right:first-child,.wy-menu-vertical li.current>a button.pull-right.toctree-expand,.wy-menu-vertical li.on a button.pull-right.toctree-expand,.wy-menu-vertical li button.pull-right.toctree-expand{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.fa-pulse{-webkit-animation:fa-spin 1s steps(8) infinite;animation:fa-spin 1s steps(8) infinite}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scaleX(-1);-ms-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";-webkit-transform:scaleY(-1);-ms-transform:scaleY(-1);transform:scaleY(-1)}:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{filter:none}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:""}.fa-music:before{content:""}.fa-search:before,.icon-search:before{content:""}.fa-envelope-o:before{content:""}.fa-heart:before{content:""}.fa-star:before{content:""}.fa-star-o:before{content:""}.fa-user:before{content:""}.fa-film:before{content:""}.fa-th-large:before{content:""}.fa-th:before{content:""}.fa-th-list:before{content:""}.fa-check:before{content:""}.fa-close:before,.fa-remove:before,.fa-times:before{content:""}.fa-search-plus:before{content:""}.fa-search-minus:before{content:""}.fa-power-off:before{content:""}.fa-signal:before{content:""}.fa-cog:before,.fa-gear:before{content:""}.fa-trash-o:before{content:""}.fa-home:before,.icon-home:before{content:""}.fa-file-o:before{content:""}.fa-clock-o:before{content:""}.fa-road:before{content:""}.fa-download:before,.rst-content code.download span:first-child:before,.rst-content tt.download span:first-child:before{content:""}.fa-arrow-circle-o-down:before{content:""}.fa-arrow-circle-o-up:before{content:""}.fa-inbox:before{content:""}.fa-play-circle-o:before{content:""}.fa-repeat:before,.fa-rotate-right:before{content:""}.fa-refresh:before{content:""}.fa-list-alt:before{content:""}.fa-lock:before{content:""}.fa-flag:before{content:""}.fa-headphones:before{content:""}.fa-volume-off:before{content:""}.fa-volume-down:before{content:""}.fa-volume-up:before{content:""}.fa-qrcode:before{content:""}.fa-barcode:before{content:""}.fa-tag:before{content:""}.fa-tags:before{content:""}.fa-book:before,.icon-book:before{content:""}.fa-bookmark:before{content:""}.fa-print:before{content:""}.fa-camera:before{content:""}.fa-font:before{content:""}.fa-bold:before{content:""}.fa-italic:before{content:""}.fa-text-height:before{content:""}.fa-text-width:before{content:""}.fa-align-left:before{content:""}.fa-align-center:before{content:""}.fa-align-right:before{content:""}.fa-align-justify:before{content:""}.fa-list:before{content:""}.fa-dedent:before,.fa-outdent:before{content:""}.fa-indent:before{content:""}.fa-video-camera:before{content:""}.fa-image:before,.fa-photo:before,.fa-picture-o:before{content:""}.fa-pencil:before{content:""}.fa-map-marker:before{content:""}.fa-adjust:before{content:""}.fa-tint:before{content:""}.fa-edit:before,.fa-pencil-square-o:before{content:""}.fa-share-square-o:before{content:""}.fa-check-square-o:before{content:""}.fa-arrows:before{content:""}.fa-step-backward:before{content:""}.fa-fast-backward:before{content:""}.fa-backward:before{content:""}.fa-play:before{content:""}.fa-pause:before{content:""}.fa-stop:before{content:""}.fa-forward:before{content:""}.fa-fast-forward:before{content:""}.fa-step-forward:before{content:""}.fa-eject:before{content:""}.fa-chevron-left:before{content:""}.fa-chevron-right:before{content:""}.fa-plus-circle:before{content:""}.fa-minus-circle:before{content:""}.fa-times-circle:before,.wy-inline-validate.wy-inline-validate-danger .wy-input-context:before{content:""}.fa-check-circle:before,.wy-inline-validate.wy-inline-validate-success .wy-input-context:before{content:""}.fa-question-circle:before{content:""}.fa-info-circle:before{content:""}.fa-crosshairs:before{content:""}.fa-times-circle-o:before{content:""}.fa-check-circle-o:before{content:""}.fa-ban:before{content:""}.fa-arrow-left:before{content:""}.fa-arrow-right:before{content:""}.fa-arrow-up:before{content:""}.fa-arrow-down:before{content:""}.fa-mail-forward:before,.fa-share:before{content:""}.fa-expand:before{content:""}.fa-compress:before{content:""}.fa-plus:before{content:""}.fa-minus:before{content:""}.fa-asterisk:before{content:""}.fa-exclamation-circle:before,.rst-content .admonition-title:before,.wy-inline-validate.wy-inline-validate-info .wy-input-context:before,.wy-inline-validate.wy-inline-validate-warning .wy-input-context:before{content:""}.fa-gift:before{content:""}.fa-leaf:before{content:""}.fa-fire:before,.icon-fire:before{content:""}.fa-eye:before{content:""}.fa-eye-slash:before{content:""}.fa-exclamation-triangle:before,.fa-warning:before{content:""}.fa-plane:before{content:""}.fa-calendar:before{content:""}.fa-random:before{content:""}.fa-comment:before{content:""}.fa-magnet:before{content:""}.fa-chevron-up:before{content:""}.fa-chevron-down:before{content:""}.fa-retweet:before{content:""}.fa-shopping-cart:before{content:""}.fa-folder:before{content:""}.fa-folder-open:before{content:""}.fa-arrows-v:before{content:""}.fa-arrows-h:before{content:""}.fa-bar-chart-o:before,.fa-bar-chart:before{content:""}.fa-twitter-square:before{content:""}.fa-facebook-square:before{content:""}.fa-camera-retro:before{content:""}.fa-key:before{content:""}.fa-cogs:before,.fa-gears:before{content:""}.fa-comments:before{content:""}.fa-thumbs-o-up:before{content:""}.fa-thumbs-o-down:before{content:""}.fa-star-half:before{content:""}.fa-heart-o:before{content:""}.fa-sign-out:before{content:""}.fa-linkedin-square:before{content:""}.fa-thumb-tack:before{content:""}.fa-external-link:before{content:""}.fa-sign-in:before{content:""}.fa-trophy:before{content:""}.fa-github-square:before{content:""}.fa-upload:before{content:""}.fa-lemon-o:before{content:""}.fa-phone:before{content:""}.fa-square-o:before{content:""}.fa-bookmark-o:before{content:""}.fa-phone-square:before{content:""}.fa-twitter:before{content:""}.fa-facebook-f:before,.fa-facebook:before{content:""}.fa-github:before,.icon-github:before{content:""}.fa-unlock:before{content:""}.fa-credit-card:before{content:""}.fa-feed:before,.fa-rss:before{content:""}.fa-hdd-o:before{content:""}.fa-bullhorn:before{content:""}.fa-bell:before{content:""}.fa-certificate:before{content:""}.fa-hand-o-right:before{content:""}.fa-hand-o-left:before{content:""}.fa-hand-o-up:before{content:""}.fa-hand-o-down:before{content:""}.fa-arrow-circle-left:before,.icon-circle-arrow-left:before{content:""}.fa-arrow-circle-right:before,.icon-circle-arrow-right:before{content:""}.fa-arrow-circle-up:before{content:""}.fa-arrow-circle-down:before{content:""}.fa-globe:before{content:""}.fa-wrench:before{content:""}.fa-tasks:before{content:""}.fa-filter:before{content:""}.fa-briefcase:before{content:""}.fa-arrows-alt:before{content:""}.fa-group:before,.fa-users:before{content:""}.fa-chain:before,.fa-link:before,.icon-link:before{content:""}.fa-cloud:before{content:""}.fa-flask:before{content:""}.fa-cut:before,.fa-scissors:before{content:""}.fa-copy:before,.fa-files-o:before{content:""}.fa-paperclip:before{content:""}.fa-floppy-o:before,.fa-save:before{content:""}.fa-square:before{content:""}.fa-bars:before,.fa-navicon:before,.fa-reorder:before{content:""}.fa-list-ul:before{content:""}.fa-list-ol:before{content:""}.fa-strikethrough:before{content:""}.fa-underline:before{content:""}.fa-table:before{content:""}.fa-magic:before{content:""}.fa-truck:before{content:""}.fa-pinterest:before{content:""}.fa-pinterest-square:before{content:""}.fa-google-plus-square:before{content:""}.fa-google-plus:before{content:""}.fa-money:before{content:""}.fa-caret-down:before,.icon-caret-down:before,.wy-dropdown .caret:before{content:""}.fa-caret-up:before{content:""}.fa-caret-left:before{content:""}.fa-caret-right:before{content:""}.fa-columns:before{content:""}.fa-sort:before,.fa-unsorted:before{content:""}.fa-sort-desc:before,.fa-sort-down:before{content:""}.fa-sort-asc:before,.fa-sort-up:before{content:""}.fa-envelope:before{content:""}.fa-linkedin:before{content:""}.fa-rotate-left:before,.fa-undo:before{content:""}.fa-gavel:before,.fa-legal:before{content:""}.fa-dashboard:before,.fa-tachometer:before{content:""}.fa-comment-o:before{content:""}.fa-comments-o:before{content:""}.fa-bolt:before,.fa-flash:before{content:""}.fa-sitemap:before{content:""}.fa-umbrella:before{content:""}.fa-clipboard:before,.fa-paste:before{content:""}.fa-lightbulb-o:before{content:""}.fa-exchange:before{content:""}.fa-cloud-download:before{content:""}.fa-cloud-upload:before{content:""}.fa-user-md:before{content:""}.fa-stethoscope:before{content:""}.fa-suitcase:before{content:""}.fa-bell-o:before{content:""}.fa-coffee:before{content:""}.fa-cutlery:before{content:""}.fa-file-text-o:before{content:""}.fa-building-o:before{content:""}.fa-hospital-o:before{content:""}.fa-ambulance:before{content:""}.fa-medkit:before{content:""}.fa-fighter-jet:before{content:""}.fa-beer:before{content:""}.fa-h-square:before{content:""}.fa-plus-square:before{content:""}.fa-angle-double-left:before{content:""}.fa-angle-double-right:before{content:""}.fa-angle-double-up:before{content:""}.fa-angle-double-down:before{content:""}.fa-angle-left:before{content:""}.fa-angle-right:before{content:""}.fa-angle-up:before{content:""}.fa-angle-down:before{content:""}.fa-desktop:before{content:""}.fa-laptop:before{content:""}.fa-tablet:before{content:""}.fa-mobile-phone:before,.fa-mobile:before{content:""}.fa-circle-o:before{content:""}.fa-quote-left:before{content:""}.fa-quote-right:before{content:""}.fa-spinner:before{content:""}.fa-circle:before{content:""}.fa-mail-reply:before,.fa-reply:before{content:""}.fa-github-alt:before{content:""}.fa-folder-o:before{content:""}.fa-folder-open-o:before{content:""}.fa-smile-o:before{content:""}.fa-frown-o:before{content:""}.fa-meh-o:before{content:""}.fa-gamepad:before{content:""}.fa-keyboard-o:before{content:""}.fa-flag-o:before{content:""}.fa-flag-checkered:before{content:""}.fa-terminal:before{content:""}.fa-code:before{content:""}.fa-mail-reply-all:before,.fa-reply-all:before{content:""}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:""}.fa-location-arrow:before{content:""}.fa-crop:before{content:""}.fa-code-fork:before{content:""}.fa-chain-broken:before,.fa-unlink:before{content:""}.fa-question:before{content:""}.fa-info:before{content:""}.fa-exclamation:before{content:""}.fa-superscript:before{content:""}.fa-subscript:before{content:""}.fa-eraser:before{content:""}.fa-puzzle-piece:before{content:""}.fa-microphone:before{content:""}.fa-microphone-slash:before{content:""}.fa-shield:before{content:""}.fa-calendar-o:before{content:""}.fa-fire-extinguisher:before{content:""}.fa-rocket:before{content:""}.fa-maxcdn:before{content:""}.fa-chevron-circle-left:before{content:""}.fa-chevron-circle-right:before{content:""}.fa-chevron-circle-up:before{content:""}.fa-chevron-circle-down:before{content:""}.fa-html5:before{content:""}.fa-css3:before{content:""}.fa-anchor:before{content:""}.fa-unlock-alt:before{content:""}.fa-bullseye:before{content:""}.fa-ellipsis-h:before{content:""}.fa-ellipsis-v:before{content:""}.fa-rss-square:before{content:""}.fa-play-circle:before{content:""}.fa-ticket:before{content:""}.fa-minus-square:before{content:""}.fa-minus-square-o:before,.wy-menu-vertical li.current>a button.toctree-expand:before,.wy-menu-vertical li.on a button.toctree-expand:before{content:""}.fa-level-up:before{content:""}.fa-level-down:before{content:""}.fa-check-square:before{content:""}.fa-pencil-square:before{content:""}.fa-external-link-square:before{content:""}.fa-share-square:before{content:""}.fa-compass:before{content:""}.fa-caret-square-o-down:before,.fa-toggle-down:before{content:""}.fa-caret-square-o-up:before,.fa-toggle-up:before{content:""}.fa-caret-square-o-right:before,.fa-toggle-right:before{content:""}.fa-eur:before,.fa-euro:before{content:""}.fa-gbp:before{content:""}.fa-dollar:before,.fa-usd:before{content:""}.fa-inr:before,.fa-rupee:before{content:""}.fa-cny:before,.fa-jpy:before,.fa-rmb:before,.fa-yen:before{content:""}.fa-rouble:before,.fa-rub:before,.fa-ruble:before{content:""}.fa-krw:before,.fa-won:before{content:""}.fa-bitcoin:before,.fa-btc:before{content:""}.fa-file:before{content:""}.fa-file-text:before{content:""}.fa-sort-alpha-asc:before{content:""}.fa-sort-alpha-desc:before{content:""}.fa-sort-amount-asc:before{content:""}.fa-sort-amount-desc:before{content:""}.fa-sort-numeric-asc:before{content:""}.fa-sort-numeric-desc:before{content:""}.fa-thumbs-up:before{content:""}.fa-thumbs-down:before{content:""}.fa-youtube-square:before{content:""}.fa-youtube:before{content:""}.fa-xing:before{content:""}.fa-xing-square:before{content:""}.fa-youtube-play:before{content:""}.fa-dropbox:before{content:""}.fa-stack-overflow:before{content:""}.fa-instagram:before{content:""}.fa-flickr:before{content:""}.fa-adn:before{content:""}.fa-bitbucket:before,.icon-bitbucket:before{content:""}.fa-bitbucket-square:before{content:""}.fa-tumblr:before{content:""}.fa-tumblr-square:before{content:""}.fa-long-arrow-down:before{content:""}.fa-long-arrow-up:before{content:""}.fa-long-arrow-left:before{content:""}.fa-long-arrow-right:before{content:""}.fa-apple:before{content:""}.fa-windows:before{content:""}.fa-android:before{content:""}.fa-linux:before{content:""}.fa-dribbble:before{content:""}.fa-skype:before{content:""}.fa-foursquare:before{content:""}.fa-trello:before{content:""}.fa-female:before{content:""}.fa-male:before{content:""}.fa-gittip:before,.fa-gratipay:before{content:""}.fa-sun-o:before{content:""}.fa-moon-o:before{content:""}.fa-archive:before{content:""}.fa-bug:before{content:""}.fa-vk:before{content:""}.fa-weibo:before{content:""}.fa-renren:before{content:""}.fa-pagelines:before{content:""}.fa-stack-exchange:before{content:""}.fa-arrow-circle-o-right:before{content:""}.fa-arrow-circle-o-left:before{content:""}.fa-caret-square-o-left:before,.fa-toggle-left:before{content:""}.fa-dot-circle-o:before{content:""}.fa-wheelchair:before{content:""}.fa-vimeo-square:before{content:""}.fa-try:before,.fa-turkish-lira:before{content:""}.fa-plus-square-o:before,.wy-menu-vertical li button.toctree-expand:before{content:""}.fa-space-shuttle:before{content:""}.fa-slack:before{content:""}.fa-envelope-square:before{content:""}.fa-wordpress:before{content:""}.fa-openid:before{content:""}.fa-bank:before,.fa-institution:before,.fa-university:before{content:""}.fa-graduation-cap:before,.fa-mortar-board:before{content:""}.fa-yahoo:before{content:""}.fa-google:before{content:""}.fa-reddit:before{content:""}.fa-reddit-square:before{content:""}.fa-stumbleupon-circle:before{content:""}.fa-stumbleupon:before{content:""}.fa-delicious:before{content:""}.fa-digg:before{content:""}.fa-pied-piper-pp:before{content:""}.fa-pied-piper-alt:before{content:""}.fa-drupal:before{content:""}.fa-joomla:before{content:""}.fa-language:before{content:""}.fa-fax:before{content:""}.fa-building:before{content:""}.fa-child:before{content:""}.fa-paw:before{content:""}.fa-spoon:before{content:""}.fa-cube:before{content:""}.fa-cubes:before{content:""}.fa-behance:before{content:""}.fa-behance-square:before{content:""}.fa-steam:before{content:""}.fa-steam-square:before{content:""}.fa-recycle:before{content:""}.fa-automobile:before,.fa-car:before{content:""}.fa-cab:before,.fa-taxi:before{content:""}.fa-tree:before{content:""}.fa-spotify:before{content:""}.fa-deviantart:before{content:""}.fa-soundcloud:before{content:""}.fa-database:before{content:""}.fa-file-pdf-o:before{content:""}.fa-file-word-o:before{content:""}.fa-file-excel-o:before{content:""}.fa-file-powerpoint-o:before{content:""}.fa-file-image-o:before,.fa-file-photo-o:before,.fa-file-picture-o:before{content:""}.fa-file-archive-o:before,.fa-file-zip-o:before{content:""}.fa-file-audio-o:before,.fa-file-sound-o:before{content:""}.fa-file-movie-o:before,.fa-file-video-o:before{content:""}.fa-file-code-o:before{content:""}.fa-vine:before{content:""}.fa-codepen:before{content:""}.fa-jsfiddle:before{content:""}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-ring:before,.fa-life-saver:before,.fa-support:before{content:""}.fa-circle-o-notch:before{content:""}.fa-ra:before,.fa-rebel:before,.fa-resistance:before{content:""}.fa-empire:before,.fa-ge:before{content:""}.fa-git-square:before{content:""}.fa-git:before{content:""}.fa-hacker-news:before,.fa-y-combinator-square:before,.fa-yc-square:before{content:""}.fa-tencent-weibo:before{content:""}.fa-qq:before{content:""}.fa-wechat:before,.fa-weixin:before{content:""}.fa-paper-plane:before,.fa-send:before{content:""}.fa-paper-plane-o:before,.fa-send-o:before{content:""}.fa-history:before{content:""}.fa-circle-thin:before{content:""}.fa-header:before{content:""}.fa-paragraph:before{content:""}.fa-sliders:before{content:""}.fa-share-alt:before{content:""}.fa-share-alt-square:before{content:""}.fa-bomb:before{content:""}.fa-futbol-o:before,.fa-soccer-ball-o:before{content:""}.fa-tty:before{content:""}.fa-binoculars:before{content:""}.fa-plug:before{content:""}.fa-slideshare:before{content:""}.fa-twitch:before{content:""}.fa-yelp:before{content:""}.fa-newspaper-o:before{content:""}.fa-wifi:before{content:""}.fa-calculator:before{content:""}.fa-paypal:before{content:""}.fa-google-wallet:before{content:""}.fa-cc-visa:before{content:""}.fa-cc-mastercard:before{content:""}.fa-cc-discover:before{content:""}.fa-cc-amex:before{content:""}.fa-cc-paypal:before{content:""}.fa-cc-stripe:before{content:""}.fa-bell-slash:before{content:""}.fa-bell-slash-o:before{content:""}.fa-trash:before{content:""}.fa-copyright:before{content:""}.fa-at:before{content:""}.fa-eyedropper:before{content:""}.fa-paint-brush:before{content:""}.fa-birthday-cake:before{content:""}.fa-area-chart:before{content:""}.fa-pie-chart:before{content:""}.fa-line-chart:before{content:""}.fa-lastfm:before{content:""}.fa-lastfm-square:before{content:""}.fa-toggle-off:before{content:""}.fa-toggle-on:before{content:""}.fa-bicycle:before{content:""}.fa-bus:before{content:""}.fa-ioxhost:before{content:""}.fa-angellist:before{content:""}.fa-cc:before{content:""}.fa-ils:before,.fa-shekel:before,.fa-sheqel:before{content:""}.fa-meanpath:before{content:""}.fa-buysellads:before{content:""}.fa-connectdevelop:before{content:""}.fa-dashcube:before{content:""}.fa-forumbee:before{content:""}.fa-leanpub:before{content:""}.fa-sellsy:before{content:""}.fa-shirtsinbulk:before{content:""}.fa-simplybuilt:before{content:""}.fa-skyatlas:before{content:""}.fa-cart-plus:before{content:""}.fa-cart-arrow-down:before{content:""}.fa-diamond:before{content:""}.fa-ship:before{content:""}.fa-user-secret:before{content:""}.fa-motorcycle:before{content:""}.fa-street-view:before{content:""}.fa-heartbeat:before{content:""}.fa-venus:before{content:""}.fa-mars:before{content:""}.fa-mercury:before{content:""}.fa-intersex:before,.fa-transgender:before{content:""}.fa-transgender-alt:before{content:""}.fa-venus-double:before{content:""}.fa-mars-double:before{content:""}.fa-venus-mars:before{content:""}.fa-mars-stroke:before{content:""}.fa-mars-stroke-v:before{content:""}.fa-mars-stroke-h:before{content:""}.fa-neuter:before{content:""}.fa-genderless:before{content:""}.fa-facebook-official:before{content:""}.fa-pinterest-p:before{content:""}.fa-whatsapp:before{content:""}.fa-server:before{content:""}.fa-user-plus:before{content:""}.fa-user-times:before{content:""}.fa-bed:before,.fa-hotel:before{content:""}.fa-viacoin:before{content:""}.fa-train:before{content:""}.fa-subway:before{content:""}.fa-medium:before{content:""}.fa-y-combinator:before,.fa-yc:before{content:""}.fa-optin-monster:before{content:""}.fa-opencart:before{content:""}.fa-expeditedssl:before{content:""}.fa-battery-4:before,.fa-battery-full:before,.fa-battery:before{content:""}.fa-battery-3:before,.fa-battery-three-quarters:before{content:""}.fa-battery-2:before,.fa-battery-half:before{content:""}.fa-battery-1:before,.fa-battery-quarter:before{content:""}.fa-battery-0:before,.fa-battery-empty:before{content:""}.fa-mouse-pointer:before{content:""}.fa-i-cursor:before{content:""}.fa-object-group:before{content:""}.fa-object-ungroup:before{content:""}.fa-sticky-note:before{content:""}.fa-sticky-note-o:before{content:""}.fa-cc-jcb:before{content:""}.fa-cc-diners-club:before{content:""}.fa-clone:before{content:""}.fa-balance-scale:before{content:""}.fa-hourglass-o:before{content:""}.fa-hourglass-1:before,.fa-hourglass-start:before{content:""}.fa-hourglass-2:before,.fa-hourglass-half:before{content:""}.fa-hourglass-3:before,.fa-hourglass-end:before{content:""}.fa-hourglass:before{content:""}.fa-hand-grab-o:before,.fa-hand-rock-o:before{content:""}.fa-hand-paper-o:before,.fa-hand-stop-o:before{content:""}.fa-hand-scissors-o:before{content:""}.fa-hand-lizard-o:before{content:""}.fa-hand-spock-o:before{content:""}.fa-hand-pointer-o:before{content:""}.fa-hand-peace-o:before{content:""}.fa-trademark:before{content:""}.fa-registered:before{content:""}.fa-creative-commons:before{content:""}.fa-gg:before{content:""}.fa-gg-circle:before{content:""}.fa-tripadvisor:before{content:""}.fa-odnoklassniki:before{content:""}.fa-odnoklassniki-square:before{content:""}.fa-get-pocket:before{content:""}.fa-wikipedia-w:before{content:""}.fa-safari:before{content:""}.fa-chrome:before{content:""}.fa-firefox:before{content:""}.fa-opera:before{content:""}.fa-internet-explorer:before{content:""}.fa-television:before,.fa-tv:before{content:""}.fa-contao:before{content:""}.fa-500px:before{content:""}.fa-amazon:before{content:""}.fa-calendar-plus-o:before{content:""}.fa-calendar-minus-o:before{content:""}.fa-calendar-times-o:before{content:""}.fa-calendar-check-o:before{content:""}.fa-industry:before{content:""}.fa-map-pin:before{content:""}.fa-map-signs:before{content:""}.fa-map-o:before{content:""}.fa-map:before{content:""}.fa-commenting:before{content:""}.fa-commenting-o:before{content:""}.fa-houzz:before{content:""}.fa-vimeo:before{content:""}.fa-black-tie:before{content:""}.fa-fonticons:before{content:""}.fa-reddit-alien:before{content:""}.fa-edge:before{content:""}.fa-credit-card-alt:before{content:""}.fa-codiepie:before{content:""}.fa-modx:before{content:""}.fa-fort-awesome:before{content:""}.fa-usb:before{content:""}.fa-product-hunt:before{content:""}.fa-mixcloud:before{content:""}.fa-scribd:before{content:""}.fa-pause-circle:before{content:""}.fa-pause-circle-o:before{content:""}.fa-stop-circle:before{content:""}.fa-stop-circle-o:before{content:""}.fa-shopping-bag:before{content:""}.fa-shopping-basket:before{content:""}.fa-hashtag:before{content:""}.fa-bluetooth:before{content:""}.fa-bluetooth-b:before{content:""}.fa-percent:before{content:""}.fa-gitlab:before,.icon-gitlab:before{content:""}.fa-wpbeginner:before{content:""}.fa-wpforms:before{content:""}.fa-envira:before{content:""}.fa-universal-access:before{content:""}.fa-wheelchair-alt:before{content:""}.fa-question-circle-o:before{content:""}.fa-blind:before{content:""}.fa-audio-description:before{content:""}.fa-volume-control-phone:before{content:""}.fa-braille:before{content:""}.fa-assistive-listening-systems:before{content:""}.fa-american-sign-language-interpreting:before,.fa-asl-interpreting:before{content:""}.fa-deaf:before,.fa-deafness:before,.fa-hard-of-hearing:before{content:""}.fa-glide:before{content:""}.fa-glide-g:before{content:""}.fa-sign-language:before,.fa-signing:before{content:""}.fa-low-vision:before{content:""}.fa-viadeo:before{content:""}.fa-viadeo-square:before{content:""}.fa-snapchat:before{content:""}.fa-snapchat-ghost:before{content:""}.fa-snapchat-square:before{content:""}.fa-pied-piper:before{content:""}.fa-first-order:before{content:""}.fa-yoast:before{content:""}.fa-themeisle:before{content:""}.fa-google-plus-circle:before,.fa-google-plus-official:before{content:""}.fa-fa:before,.fa-font-awesome:before{content:""}.fa-handshake-o:before{content:""}.fa-envelope-open:before{content:""}.fa-envelope-open-o:before{content:""}.fa-linode:before{content:""}.fa-address-book:before{content:""}.fa-address-book-o:before{content:""}.fa-address-card:before,.fa-vcard:before{content:""}.fa-address-card-o:before,.fa-vcard-o:before{content:""}.fa-user-circle:before{content:""}.fa-user-circle-o:before{content:""}.fa-user-o:before{content:""}.fa-id-badge:before{content:""}.fa-drivers-license:before,.fa-id-card:before{content:""}.fa-drivers-license-o:before,.fa-id-card-o:before{content:""}.fa-quora:before{content:""}.fa-free-code-camp:before{content:""}.fa-telegram:before{content:""}.fa-thermometer-4:before,.fa-thermometer-full:before,.fa-thermometer:before{content:""}.fa-thermometer-3:before,.fa-thermometer-three-quarters:before{content:""}.fa-thermometer-2:before,.fa-thermometer-half:before{content:""}.fa-thermometer-1:before,.fa-thermometer-quarter:before{content:""}.fa-thermometer-0:before,.fa-thermometer-empty:before{content:""}.fa-shower:before{content:""}.fa-bath:before,.fa-bathtub:before,.fa-s15:before{content:""}.fa-podcast:before{content:""}.fa-window-maximize:before{content:""}.fa-window-minimize:before{content:""}.fa-window-restore:before{content:""}.fa-times-rectangle:before,.fa-window-close:before{content:""}.fa-times-rectangle-o:before,.fa-window-close-o:before{content:""}.fa-bandcamp:before{content:""}.fa-grav:before{content:""}.fa-etsy:before{content:""}.fa-imdb:before{content:""}.fa-ravelry:before{content:""}.fa-eercast:before{content:""}.fa-microchip:before{content:""}.fa-snowflake-o:before{content:""}.fa-superpowers:before{content:""}.fa-wpexplorer:before{content:""}.fa-meetup:before{content:""}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}.fa,.icon,.rst-content .admonition-title,.rst-content .code-block-caption .headerlink,.rst-content .eqno .headerlink,.rst-content code.download span:first-child,.rst-content dl dt .headerlink,.rst-content h1 .headerlink,.rst-content h2 .headerlink,.rst-content h3 .headerlink,.rst-content h4 .headerlink,.rst-content h5 .headerlink,.rst-content h6 .headerlink,.rst-content p.caption .headerlink,.rst-content p .headerlink,.rst-content table>caption .headerlink,.rst-content tt.download span:first-child,.wy-dropdown .caret,.wy-inline-validate.wy-inline-validate-danger .wy-input-context,.wy-inline-validate.wy-inline-validate-info .wy-input-context,.wy-inline-validate.wy-inline-validate-success .wy-input-context,.wy-inline-validate.wy-inline-validate-warning .wy-input-context,.wy-menu-vertical li.current>a button.toctree-expand,.wy-menu-vertical li.on a button.toctree-expand,.wy-menu-vertical li button.toctree-expand{font-family:inherit}.fa:before,.icon:before,.rst-content .admonition-title:before,.rst-content .code-block-caption .headerlink:before,.rst-content .eqno .headerlink:before,.rst-content code.download span:first-child:before,.rst-content dl dt .headerlink:before,.rst-content h1 .headerlink:before,.rst-content h2 .headerlink:before,.rst-content h3 .headerlink:before,.rst-content h4 .headerlink:before,.rst-content h5 .headerlink:before,.rst-content h6 .headerlink:before,.rst-content p.caption .headerlink:before,.rst-content p .headerlink:before,.rst-content table>caption .headerlink:before,.rst-content tt.download span:first-child:before,.wy-dropdown .caret:before,.wy-inline-validate.wy-inline-validate-danger .wy-input-context:before,.wy-inline-validate.wy-inline-validate-info .wy-input-context:before,.wy-inline-validate.wy-inline-validate-success .wy-input-context:before,.wy-inline-validate.wy-inline-validate-warning .wy-input-context:before,.wy-menu-vertical li.current>a button.toctree-expand:before,.wy-menu-vertical li.on a button.toctree-expand:before,.wy-menu-vertical li button.toctree-expand:before{font-family:FontAwesome;display:inline-block;font-style:normal;font-weight:400;line-height:1;text-decoration:inherit}.rst-content .code-block-caption a .headerlink,.rst-content .eqno a .headerlink,.rst-content a .admonition-title,.rst-content code.download a span:first-child,.rst-content dl dt a .headerlink,.rst-content h1 a .headerlink,.rst-content h2 a .headerlink,.rst-content h3 a .headerlink,.rst-content h4 a .headerlink,.rst-content h5 a .headerlink,.rst-content h6 a .headerlink,.rst-content p.caption a .headerlink,.rst-content p a .headerlink,.rst-content table>caption a .headerlink,.rst-content tt.download a span:first-child,.wy-menu-vertical li.current>a button.toctree-expand,.wy-menu-vertical li.on a button.toctree-expand,.wy-menu-vertical li a button.toctree-expand,a .fa,a .icon,a .rst-content .admonition-title,a .rst-content .code-block-caption .headerlink,a .rst-content .eqno .headerlink,a .rst-content code.download span:first-child,a .rst-content dl dt .headerlink,a .rst-content h1 .headerlink,a .rst-content h2 .headerlink,a .rst-content h3 .headerlink,a .rst-content h4 .headerlink,a .rst-content h5 .headerlink,a .rst-content h6 .headerlink,a .rst-content p.caption .headerlink,a .rst-content p .headerlink,a .rst-content table>caption .headerlink,a .rst-content tt.download span:first-child,a .wy-menu-vertical li button.toctree-expand{display:inline-block;text-decoration:inherit}.btn .fa,.btn .icon,.btn .rst-content .admonition-title,.btn .rst-content .code-block-caption .headerlink,.btn .rst-content .eqno .headerlink,.btn .rst-content code.download span:first-child,.btn .rst-content dl dt .headerlink,.btn .rst-content h1 .headerlink,.btn .rst-content h2 .headerlink,.btn .rst-content h3 .headerlink,.btn .rst-content h4 .headerlink,.btn .rst-content h5 .headerlink,.btn .rst-content h6 .headerlink,.btn .rst-content p .headerlink,.btn .rst-content table>caption .headerlink,.btn .rst-content tt.download span:first-child,.btn .wy-menu-vertical li.current>a button.toctree-expand,.btn .wy-menu-vertical li.on a button.toctree-expand,.btn .wy-menu-vertical li button.toctree-expand,.nav .fa,.nav .icon,.nav .rst-content .admonition-title,.nav .rst-content .code-block-caption .headerlink,.nav .rst-content .eqno .headerlink,.nav .rst-content code.download span:first-child,.nav .rst-content dl dt .headerlink,.nav .rst-content h1 .headerlink,.nav .rst-content h2 .headerlink,.nav .rst-content h3 .headerlink,.nav .rst-content h4 .headerlink,.nav .rst-content h5 .headerlink,.nav .rst-content h6 .headerlink,.nav .rst-content p .headerlink,.nav .rst-content table>caption .headerlink,.nav .rst-content tt.download span:first-child,.nav .wy-menu-vertical li.current>a button.toctree-expand,.nav .wy-menu-vertical li.on a button.toctree-expand,.nav .wy-menu-vertical li button.toctree-expand,.rst-content .btn .admonition-title,.rst-content .code-block-caption .btn .headerlink,.rst-content .code-block-caption .nav .headerlink,.rst-content .eqno .btn .headerlink,.rst-content .eqno .nav .headerlink,.rst-content .nav .admonition-title,.rst-content code.download .btn span:first-child,.rst-content code.download .nav span:first-child,.rst-content dl dt .btn .headerlink,.rst-content dl dt .nav .headerlink,.rst-content h1 .btn .headerlink,.rst-content h1 .nav .headerlink,.rst-content h2 .btn .headerlink,.rst-content h2 .nav .headerlink,.rst-content h3 .btn .headerlink,.rst-content h3 .nav .headerlink,.rst-content h4 .btn .headerlink,.rst-content h4 .nav .headerlink,.rst-content h5 .btn .headerlink,.rst-content h5 .nav .headerlink,.rst-content h6 .btn .headerlink,.rst-content h6 .nav .headerlink,.rst-content p .btn .headerlink,.rst-content p .nav .headerlink,.rst-content table>caption .btn .headerlink,.rst-content table>caption .nav .headerlink,.rst-content tt.download .btn span:first-child,.rst-content tt.download .nav span:first-child,.wy-menu-vertical li .btn button.toctree-expand,.wy-menu-vertical li.current>a .btn button.toctree-expand,.wy-menu-vertical li.current>a .nav button.toctree-expand,.wy-menu-vertical li .nav button.toctree-expand,.wy-menu-vertical li.on a .btn button.toctree-expand,.wy-menu-vertical li.on a .nav button.toctree-expand{display:inline}.btn .fa-large.icon,.btn .fa.fa-large,.btn .rst-content .code-block-caption .fa-large.headerlink,.btn .rst-content .eqno .fa-large.headerlink,.btn .rst-content .fa-large.admonition-title,.btn .rst-content code.download span.fa-large:first-child,.btn .rst-content dl dt .fa-large.headerlink,.btn .rst-content h1 .fa-large.headerlink,.btn .rst-content h2 .fa-large.headerlink,.btn .rst-content h3 .fa-large.headerlink,.btn .rst-content h4 .fa-large.headerlink,.btn .rst-content h5 .fa-large.headerlink,.btn .rst-content h6 .fa-large.headerlink,.btn .rst-content p .fa-large.headerlink,.btn .rst-content table>caption .fa-large.headerlink,.btn .rst-content tt.download span.fa-large:first-child,.btn .wy-menu-vertical li button.fa-large.toctree-expand,.nav .fa-large.icon,.nav .fa.fa-large,.nav .rst-content .code-block-caption .fa-large.headerlink,.nav .rst-content .eqno .fa-large.headerlink,.nav .rst-content .fa-large.admonition-title,.nav .rst-content code.download span.fa-large:first-child,.nav .rst-content dl dt .fa-large.headerlink,.nav .rst-content h1 .fa-large.headerlink,.nav .rst-content h2 .fa-large.headerlink,.nav .rst-content h3 .fa-large.headerlink,.nav .rst-content h4 .fa-large.headerlink,.nav .rst-content h5 .fa-large.headerlink,.nav .rst-content h6 .fa-large.headerlink,.nav .rst-content p .fa-large.headerlink,.nav .rst-content table>caption .fa-large.headerlink,.nav .rst-content tt.download span.fa-large:first-child,.nav .wy-menu-vertical li button.fa-large.toctree-expand,.rst-content .btn .fa-large.admonition-title,.rst-content .code-block-caption .btn .fa-large.headerlink,.rst-content .code-block-caption .nav .fa-large.headerlink,.rst-content .eqno .btn .fa-large.headerlink,.rst-content .eqno .nav .fa-large.headerlink,.rst-content .nav .fa-large.admonition-title,.rst-content code.download .btn span.fa-large:first-child,.rst-content code.download .nav span.fa-large:first-child,.rst-content dl dt .btn .fa-large.headerlink,.rst-content dl dt .nav .fa-large.headerlink,.rst-content h1 .btn .fa-large.headerlink,.rst-content h1 .nav .fa-large.headerlink,.rst-content h2 .btn .fa-large.headerlink,.rst-content h2 .nav .fa-large.headerlink,.rst-content h3 .btn .fa-large.headerlink,.rst-content h3 .nav .fa-large.headerlink,.rst-content h4 .btn .fa-large.headerlink,.rst-content h4 .nav .fa-large.headerlink,.rst-content h5 .btn .fa-large.headerlink,.rst-content h5 .nav .fa-large.headerlink,.rst-content h6 .btn .fa-large.headerlink,.rst-content h6 .nav .fa-large.headerlink,.rst-content p .btn .fa-large.headerlink,.rst-content p .nav .fa-large.headerlink,.rst-content table>caption .btn .fa-large.headerlink,.rst-content table>caption .nav .fa-large.headerlink,.rst-content tt.download .btn span.fa-large:first-child,.rst-content tt.download .nav span.fa-large:first-child,.wy-menu-vertical li .btn button.fa-large.toctree-expand,.wy-menu-vertical li .nav button.fa-large.toctree-expand{line-height:.9em}.btn .fa-spin.icon,.btn .fa.fa-spin,.btn .rst-content .code-block-caption .fa-spin.headerlink,.btn .rst-content .eqno .fa-spin.headerlink,.btn .rst-content .fa-spin.admonition-title,.btn .rst-content code.download span.fa-spin:first-child,.btn .rst-content dl dt .fa-spin.headerlink,.btn .rst-content h1 .fa-spin.headerlink,.btn .rst-content h2 .fa-spin.headerlink,.btn .rst-content h3 .fa-spin.headerlink,.btn .rst-content h4 .fa-spin.headerlink,.btn .rst-content h5 .fa-spin.headerlink,.btn .rst-content h6 .fa-spin.headerlink,.btn .rst-content p .fa-spin.headerlink,.btn .rst-content table>caption .fa-spin.headerlink,.btn .rst-content tt.download span.fa-spin:first-child,.btn .wy-menu-vertical li button.fa-spin.toctree-expand,.nav .fa-spin.icon,.nav .fa.fa-spin,.nav .rst-content .code-block-caption .fa-spin.headerlink,.nav .rst-content .eqno .fa-spin.headerlink,.nav .rst-content .fa-spin.admonition-title,.nav .rst-content code.download span.fa-spin:first-child,.nav .rst-content dl dt .fa-spin.headerlink,.nav .rst-content h1 .fa-spin.headerlink,.nav .rst-content h2 .fa-spin.headerlink,.nav .rst-content h3 .fa-spin.headerlink,.nav .rst-content h4 .fa-spin.headerlink,.nav .rst-content h5 .fa-spin.headerlink,.nav .rst-content h6 .fa-spin.headerlink,.nav .rst-content p .fa-spin.headerlink,.nav .rst-content table>caption .fa-spin.headerlink,.nav .rst-content tt.download span.fa-spin:first-child,.nav .wy-menu-vertical li button.fa-spin.toctree-expand,.rst-content .btn .fa-spin.admonition-title,.rst-content .code-block-caption .btn .fa-spin.headerlink,.rst-content .code-block-caption .nav .fa-spin.headerlink,.rst-content .eqno .btn .fa-spin.headerlink,.rst-content .eqno .nav .fa-spin.headerlink,.rst-content .nav .fa-spin.admonition-title,.rst-content code.download .btn span.fa-spin:first-child,.rst-content code.download .nav span.fa-spin:first-child,.rst-content dl dt .btn .fa-spin.headerlink,.rst-content dl dt .nav .fa-spin.headerlink,.rst-content h1 .btn .fa-spin.headerlink,.rst-content h1 .nav .fa-spin.headerlink,.rst-content h2 .btn .fa-spin.headerlink,.rst-content h2 .nav .fa-spin.headerlink,.rst-content h3 .btn .fa-spin.headerlink,.rst-content h3 .nav .fa-spin.headerlink,.rst-content h4 .btn .fa-spin.headerlink,.rst-content h4 .nav .fa-spin.headerlink,.rst-content h5 .btn .fa-spin.headerlink,.rst-content h5 .nav .fa-spin.headerlink,.rst-content h6 .btn .fa-spin.headerlink,.rst-content h6 .nav .fa-spin.headerlink,.rst-content p .btn .fa-spin.headerlink,.rst-content p .nav .fa-spin.headerlink,.rst-content table>caption .btn .fa-spin.headerlink,.rst-content table>caption .nav .fa-spin.headerlink,.rst-content tt.download .btn span.fa-spin:first-child,.rst-content tt.download .nav span.fa-spin:first-child,.wy-menu-vertical li .btn button.fa-spin.toctree-expand,.wy-menu-vertical li .nav button.fa-spin.toctree-expand{display:inline-block}.btn.fa:before,.btn.icon:before,.rst-content .btn.admonition-title:before,.rst-content .code-block-caption .btn.headerlink:before,.rst-content .eqno .btn.headerlink:before,.rst-content code.download span.btn:first-child:before,.rst-content dl dt .btn.headerlink:before,.rst-content h1 .btn.headerlink:before,.rst-content h2 .btn.headerlink:before,.rst-content h3 .btn.headerlink:before,.rst-content h4 .btn.headerlink:before,.rst-content h5 .btn.headerlink:before,.rst-content h6 .btn.headerlink:before,.rst-content p .btn.headerlink:before,.rst-content table>caption .btn.headerlink:before,.rst-content tt.download span.btn:first-child:before,.wy-menu-vertical li button.btn.toctree-expand:before{opacity:.5;-webkit-transition:opacity .05s ease-in;-moz-transition:opacity .05s ease-in;transition:opacity .05s ease-in}.btn.fa:hover:before,.btn.icon:hover:before,.rst-content .btn.admonition-title:hover:before,.rst-content .code-block-caption .btn.headerlink:hover:before,.rst-content .eqno .btn.headerlink:hover:before,.rst-content code.download span.btn:first-child:hover:before,.rst-content dl dt .btn.headerlink:hover:before,.rst-content h1 .btn.headerlink:hover:before,.rst-content h2 .btn.headerlink:hover:before,.rst-content h3 .btn.headerlink:hover:before,.rst-content h4 .btn.headerlink:hover:before,.rst-content h5 .btn.headerlink:hover:before,.rst-content h6 .btn.headerlink:hover:before,.rst-content p .btn.headerlink:hover:before,.rst-content table>caption .btn.headerlink:hover:before,.rst-content tt.download span.btn:first-child:hover:before,.wy-menu-vertical li button.btn.toctree-expand:hover:before{opacity:1}.btn-mini .fa:before,.btn-mini .icon:before,.btn-mini .rst-content .admonition-title:before,.btn-mini .rst-content .code-block-caption .headerlink:before,.btn-mini .rst-content .eqno .headerlink:before,.btn-mini .rst-content code.download span:first-child:before,.btn-mini .rst-content dl dt .headerlink:before,.btn-mini .rst-content h1 .headerlink:before,.btn-mini .rst-content h2 .headerlink:before,.btn-mini .rst-content h3 .headerlink:before,.btn-mini .rst-content h4 .headerlink:before,.btn-mini .rst-content h5 .headerlink:before,.btn-mini .rst-content h6 .headerlink:before,.btn-mini .rst-content p .headerlink:before,.btn-mini .rst-content table>caption .headerlink:before,.btn-mini .rst-content tt.download span:first-child:before,.btn-mini .wy-menu-vertical li button.toctree-expand:before,.rst-content .btn-mini .admonition-title:before,.rst-content .code-block-caption .btn-mini .headerlink:before,.rst-content .eqno .btn-mini .headerlink:before,.rst-content code.download .btn-mini span:first-child:before,.rst-content dl dt .btn-mini .headerlink:before,.rst-content h1 .btn-mini .headerlink:before,.rst-content h2 .btn-mini .headerlink:before,.rst-content h3 .btn-mini .headerlink:before,.rst-content h4 .btn-mini .headerlink:before,.rst-content h5 .btn-mini .headerlink:before,.rst-content h6 .btn-mini .headerlink:before,.rst-content p .btn-mini .headerlink:before,.rst-content table>caption .btn-mini .headerlink:before,.rst-content tt.download .btn-mini span:first-child:before,.wy-menu-vertical li .btn-mini button.toctree-expand:before{font-size:14px;vertical-align:-15%}.rst-content .admonition,.rst-content .admonition-todo,.rst-content .attention,.rst-content .caution,.rst-content .danger,.rst-content .error,.rst-content .hint,.rst-content .important,.rst-content .note,.rst-content .seealso,.rst-content .tip,.rst-content .warning,.wy-alert{padding:12px;line-height:24px;margin-bottom:24px;background:#e7f2fa}.rst-content .admonition-title,.wy-alert-title{font-weight:700;display:block;color:#fff;background:#6ab0de;padding:6px 12px;margin:-12px -12px 12px}.rst-content .danger,.rst-content .error,.rst-content .wy-alert-danger.admonition,.rst-content .wy-alert-danger.admonition-todo,.rst-content .wy-alert-danger.attention,.rst-content .wy-alert-danger.caution,.rst-content .wy-alert-danger.hint,.rst-content .wy-alert-danger.important,.rst-content .wy-alert-danger.note,.rst-content .wy-alert-danger.seealso,.rst-content .wy-alert-danger.tip,.rst-content .wy-alert-danger.warning,.wy-alert.wy-alert-danger{background:#fdf3f2}.rst-content .danger .admonition-title,.rst-content .danger .wy-alert-title,.rst-content .error .admonition-title,.rst-content .error .wy-alert-title,.rst-content .wy-alert-danger.admonition-todo .admonition-title,.rst-content .wy-alert-danger.admonition-todo .wy-alert-title,.rst-content .wy-alert-danger.admonition .admonition-title,.rst-content .wy-alert-danger.admonition .wy-alert-title,.rst-content .wy-alert-danger.attention .admonition-title,.rst-content .wy-alert-danger.attention .wy-alert-title,.rst-content .wy-alert-danger.caution .admonition-title,.rst-content .wy-alert-danger.caution .wy-alert-title,.rst-content .wy-alert-danger.hint .admonition-title,.rst-content .wy-alert-danger.hint .wy-alert-title,.rst-content .wy-alert-danger.important .admonition-title,.rst-content .wy-alert-danger.important .wy-alert-title,.rst-content .wy-alert-danger.note .admonition-title,.rst-content .wy-alert-danger.note .wy-alert-title,.rst-content .wy-alert-danger.seealso .admonition-title,.rst-content .wy-alert-danger.seealso .wy-alert-title,.rst-content .wy-alert-danger.tip .admonition-title,.rst-content .wy-alert-danger.tip .wy-alert-title,.rst-content .wy-alert-danger.warning .admonition-title,.rst-content .wy-alert-danger.warning .wy-alert-title,.rst-content .wy-alert.wy-alert-danger .admonition-title,.wy-alert.wy-alert-danger .rst-content .admonition-title,.wy-alert.wy-alert-danger .wy-alert-title{background:#f29f97}.rst-content .admonition-todo,.rst-content .attention,.rst-content .caution,.rst-content .warning,.rst-content .wy-alert-warning.admonition,.rst-content .wy-alert-warning.danger,.rst-content .wy-alert-warning.error,.rst-content .wy-alert-warning.hint,.rst-content .wy-alert-warning.important,.rst-content .wy-alert-warning.note,.rst-content .wy-alert-warning.seealso,.rst-content .wy-alert-warning.tip,.wy-alert.wy-alert-warning{background:#ffedcc}.rst-content .admonition-todo .admonition-title,.rst-content .admonition-todo .wy-alert-title,.rst-content .attention .admonition-title,.rst-content .attention .wy-alert-title,.rst-content .caution .admonition-title,.rst-content .caution .wy-alert-title,.rst-content .warning .admonition-title,.rst-content .warning .wy-alert-title,.rst-content .wy-alert-warning.admonition .admonition-title,.rst-content .wy-alert-warning.admonition .wy-alert-title,.rst-content .wy-alert-warning.danger .admonition-title,.rst-content .wy-alert-warning.danger .wy-alert-title,.rst-content .wy-alert-warning.error .admonition-title,.rst-content .wy-alert-warning.error .wy-alert-title,.rst-content .wy-alert-warning.hint .admonition-title,.rst-content .wy-alert-warning.hint .wy-alert-title,.rst-content .wy-alert-warning.important .admonition-title,.rst-content .wy-alert-warning.important .wy-alert-title,.rst-content .wy-alert-warning.note .admonition-title,.rst-content .wy-alert-warning.note .wy-alert-title,.rst-content .wy-alert-warning.seealso .admonition-title,.rst-content .wy-alert-warning.seealso .wy-alert-title,.rst-content .wy-alert-warning.tip .admonition-title,.rst-content .wy-alert-warning.tip .wy-alert-title,.rst-content .wy-alert.wy-alert-warning .admonition-title,.wy-alert.wy-alert-warning .rst-content .admonition-title,.wy-alert.wy-alert-warning .wy-alert-title{background:#f0b37e}.rst-content .note,.rst-content .seealso,.rst-content .wy-alert-info.admonition,.rst-content .wy-alert-info.admonition-todo,.rst-content .wy-alert-info.attention,.rst-content .wy-alert-info.caution,.rst-content .wy-alert-info.danger,.rst-content .wy-alert-info.error,.rst-content .wy-alert-info.hint,.rst-content .wy-alert-info.important,.rst-content .wy-alert-info.tip,.rst-content .wy-alert-info.warning,.wy-alert.wy-alert-info{background:#e7f2fa}.rst-content .note .admonition-title,.rst-content .note .wy-alert-title,.rst-content .seealso .admonition-title,.rst-content .seealso .wy-alert-title,.rst-content .wy-alert-info.admonition-todo .admonition-title,.rst-content .wy-alert-info.admonition-todo .wy-alert-title,.rst-content .wy-alert-info.admonition .admonition-title,.rst-content .wy-alert-info.admonition .wy-alert-title,.rst-content .wy-alert-info.attention .admonition-title,.rst-content .wy-alert-info.attention .wy-alert-title,.rst-content .wy-alert-info.caution .admonition-title,.rst-content .wy-alert-info.caution .wy-alert-title,.rst-content .wy-alert-info.danger .admonition-title,.rst-content .wy-alert-info.danger .wy-alert-title,.rst-content .wy-alert-info.error .admonition-title,.rst-content .wy-alert-info.error .wy-alert-title,.rst-content .wy-alert-info.hint .admonition-title,.rst-content .wy-alert-info.hint .wy-alert-title,.rst-content .wy-alert-info.important .admonition-title,.rst-content .wy-alert-info.important .wy-alert-title,.rst-content .wy-alert-info.tip .admonition-title,.rst-content .wy-alert-info.tip .wy-alert-title,.rst-content .wy-alert-info.warning .admonition-title,.rst-content .wy-alert-info.warning .wy-alert-title,.rst-content .wy-alert.wy-alert-info .admonition-title,.wy-alert.wy-alert-info .rst-content .admonition-title,.wy-alert.wy-alert-info .wy-alert-title{background:#6ab0de}.rst-content .hint,.rst-content .important,.rst-content .tip,.rst-content .wy-alert-success.admonition,.rst-content .wy-alert-success.admonition-todo,.rst-content .wy-alert-success.attention,.rst-content .wy-alert-success.caution,.rst-content .wy-alert-success.danger,.rst-content .wy-alert-success.error,.rst-content .wy-alert-success.note,.rst-content .wy-alert-success.seealso,.rst-content .wy-alert-success.warning,.wy-alert.wy-alert-success{background:#dbfaf4}.rst-content .hint .admonition-title,.rst-content .hint .wy-alert-title,.rst-content .important .admonition-title,.rst-content .important .wy-alert-title,.rst-content .tip .admonition-title,.rst-content .tip .wy-alert-title,.rst-content .wy-alert-success.admonition-todo .admonition-title,.rst-content .wy-alert-success.admonition-todo .wy-alert-title,.rst-content .wy-alert-success.admonition .admonition-title,.rst-content .wy-alert-success.admonition .wy-alert-title,.rst-content .wy-alert-success.attention .admonition-title,.rst-content .wy-alert-success.attention .wy-alert-title,.rst-content .wy-alert-success.caution .admonition-title,.rst-content .wy-alert-success.caution .wy-alert-title,.rst-content .wy-alert-success.danger .admonition-title,.rst-content .wy-alert-success.danger .wy-alert-title,.rst-content .wy-alert-success.error .admonition-title,.rst-content .wy-alert-success.error .wy-alert-title,.rst-content .wy-alert-success.note .admonition-title,.rst-content .wy-alert-success.note .wy-alert-title,.rst-content .wy-alert-success.seealso .admonition-title,.rst-content .wy-alert-success.seealso .wy-alert-title,.rst-content .wy-alert-success.warning .admonition-title,.rst-content .wy-alert-success.warning .wy-alert-title,.rst-content .wy-alert.wy-alert-success .admonition-title,.wy-alert.wy-alert-success .rst-content .admonition-title,.wy-alert.wy-alert-success .wy-alert-title{background:#1abc9c}.rst-content .wy-alert-neutral.admonition,.rst-content .wy-alert-neutral.admonition-todo,.rst-content .wy-alert-neutral.attention,.rst-content .wy-alert-neutral.caution,.rst-content .wy-alert-neutral.danger,.rst-content .wy-alert-neutral.error,.rst-content .wy-alert-neutral.hint,.rst-content .wy-alert-neutral.important,.rst-content .wy-alert-neutral.note,.rst-content .wy-alert-neutral.seealso,.rst-content .wy-alert-neutral.tip,.rst-content .wy-alert-neutral.warning,.wy-alert.wy-alert-neutral{background:#f3f6f6}.rst-content .wy-alert-neutral.admonition-todo .admonition-title,.rst-content .wy-alert-neutral.admonition-todo .wy-alert-title,.rst-content .wy-alert-neutral.admonition .admonition-title,.rst-content .wy-alert-neutral.admonition .wy-alert-title,.rst-content .wy-alert-neutral.attention .admonition-title,.rst-content .wy-alert-neutral.attention .wy-alert-title,.rst-content .wy-alert-neutral.caution .admonition-title,.rst-content .wy-alert-neutral.caution .wy-alert-title,.rst-content .wy-alert-neutral.danger .admonition-title,.rst-content .wy-alert-neutral.danger .wy-alert-title,.rst-content .wy-alert-neutral.error .admonition-title,.rst-content .wy-alert-neutral.error .wy-alert-title,.rst-content .wy-alert-neutral.hint .admonition-title,.rst-content .wy-alert-neutral.hint .wy-alert-title,.rst-content .wy-alert-neutral.important .admonition-title,.rst-content .wy-alert-neutral.important .wy-alert-title,.rst-content .wy-alert-neutral.note .admonition-title,.rst-content .wy-alert-neutral.note .wy-alert-title,.rst-content .wy-alert-neutral.seealso .admonition-title,.rst-content .wy-alert-neutral.seealso .wy-alert-title,.rst-content .wy-alert-neutral.tip .admonition-title,.rst-content .wy-alert-neutral.tip .wy-alert-title,.rst-content .wy-alert-neutral.warning .admonition-title,.rst-content .wy-alert-neutral.warning .wy-alert-title,.rst-content .wy-alert.wy-alert-neutral .admonition-title,.wy-alert.wy-alert-neutral .rst-content .admonition-title,.wy-alert.wy-alert-neutral .wy-alert-title{color:#404040;background:#e1e4e5}.rst-content .wy-alert-neutral.admonition-todo a,.rst-content .wy-alert-neutral.admonition a,.rst-content .wy-alert-neutral.attention a,.rst-content .wy-alert-neutral.caution a,.rst-content .wy-alert-neutral.danger a,.rst-content .wy-alert-neutral.error a,.rst-content .wy-alert-neutral.hint a,.rst-content .wy-alert-neutral.important a,.rst-content .wy-alert-neutral.note a,.rst-content .wy-alert-neutral.seealso a,.rst-content .wy-alert-neutral.tip a,.rst-content .wy-alert-neutral.warning a,.wy-alert.wy-alert-neutral a{color:#2980b9}.rst-content .admonition-todo p:last-child,.rst-content .admonition p:last-child,.rst-content .attention p:last-child,.rst-content .caution p:last-child,.rst-content .danger p:last-child,.rst-content .error p:last-child,.rst-content .hint p:last-child,.rst-content .important p:last-child,.rst-content .note p:last-child,.rst-content .seealso p:last-child,.rst-content .tip p:last-child,.rst-content .warning p:last-child,.wy-alert p:last-child{margin-bottom:0}.wy-tray-container{position:fixed;bottom:0;left:0;z-index:600}.wy-tray-container li{display:block;width:300px;background:transparent;color:#fff;text-align:center;box-shadow:0 5px 5px 0 rgba(0,0,0,.1);padding:0 24px;min-width:20%;opacity:0;height:0;line-height:56px;overflow:hidden;-webkit-transition:all .3s ease-in;-moz-transition:all .3s ease-in;transition:all .3s ease-in}.wy-tray-container li.wy-tray-item-success{background:#27ae60}.wy-tray-container li.wy-tray-item-info{background:#2980b9}.wy-tray-container li.wy-tray-item-warning{background:#e67e22}.wy-tray-container li.wy-tray-item-danger{background:#e74c3c}.wy-tray-container li.on{opacity:1;height:56px}@media screen and (max-width:768px){.wy-tray-container{bottom:auto;top:0;width:100%}.wy-tray-container li{width:100%}}button{font-size:100%;margin:0;vertical-align:baseline;*vertical-align:middle;cursor:pointer;line-height:normal;-webkit-appearance:button;*overflow:visible}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}button[disabled]{cursor:default}.btn{display:inline-block;border-radius:2px;line-height:normal;white-space:nowrap;text-align:center;cursor:pointer;font-size:100%;padding:6px 12px 8px;color:#fff;border:1px solid rgba(0,0,0,.1);background-color:#27ae60;text-decoration:none;font-weight:400;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;box-shadow:inset 0 1px 2px -1px hsla(0,0%,100%,.5),inset 0 -2px 0 0 rgba(0,0,0,.1);outline-none:false;vertical-align:middle;*display:inline;zoom:1;-webkit-user-drag:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-transition:all .1s linear;-moz-transition:all .1s linear;transition:all .1s linear}.btn-hover{background:#2e8ece;color:#fff}.btn:hover{background:#2cc36b;color:#fff}.btn:focus{background:#2cc36b;outline:0}.btn:active{box-shadow:inset 0 -1px 0 0 rgba(0,0,0,.05),inset 0 2px 0 0 rgba(0,0,0,.1);padding:8px 12px 6px}.btn:visited{color:#fff}.btn-disabled,.btn-disabled:active,.btn-disabled:focus,.btn-disabled:hover,.btn:disabled{background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false);filter:alpha(opacity=40);opacity:.4;cursor:not-allowed;box-shadow:none}.btn::-moz-focus-inner{padding:0;border:0}.btn-small{font-size:80%}.btn-info{background-color:#2980b9!important}.btn-info:hover{background-color:#2e8ece!important}.btn-neutral{background-color:#f3f6f6!important;color:#404040!important}.btn-neutral:hover{background-color:#e5ebeb!important;color:#404040}.btn-neutral:visited{color:#404040!important}.btn-success{background-color:#27ae60!important}.btn-success:hover{background-color:#295!important}.btn-danger{background-color:#e74c3c!important}.btn-danger:hover{background-color:#ea6153!important}.btn-warning{background-color:#e67e22!important}.btn-warning:hover{background-color:#e98b39!important}.btn-invert{background-color:#222}.btn-invert:hover{background-color:#2f2f2f!important}.btn-link{background-color:transparent!important;color:#2980b9;box-shadow:none;border-color:transparent!important}.btn-link:active,.btn-link:hover{background-color:transparent!important;color:#409ad5!important;box-shadow:none}.btn-link:visited{color:#9b59b6}.wy-btn-group .btn,.wy-control .btn{vertical-align:middle}.wy-btn-group{margin-bottom:24px;*zoom:1}.wy-btn-group:after,.wy-btn-group:before{display:table;content:""}.wy-btn-group:after{clear:both}.wy-dropdown{position:relative;display:inline-block}.wy-dropdown-active .wy-dropdown-menu{display:block}.wy-dropdown-menu{position:absolute;left:0;display:none;float:left;top:100%;min-width:100%;background:#fcfcfc;z-index:100;border:1px solid #cfd7dd;box-shadow:0 2px 2px 0 rgba(0,0,0,.1);padding:12px}.wy-dropdown-menu>dd>a{display:block;clear:both;color:#404040;white-space:nowrap;font-size:90%;padding:0 12px;cursor:pointer}.wy-dropdown-menu>dd>a:hover{background:#2980b9;color:#fff}.wy-dropdown-menu>dd.divider{border-top:1px solid #cfd7dd;margin:6px 0}.wy-dropdown-menu>dd.search{padding-bottom:12px}.wy-dropdown-menu>dd.search input[type=search]{width:100%}.wy-dropdown-menu>dd.call-to-action{background:#e3e3e3;text-transform:uppercase;font-weight:500;font-size:80%}.wy-dropdown-menu>dd.call-to-action:hover{background:#e3e3e3}.wy-dropdown-menu>dd.call-to-action .btn{color:#fff}.wy-dropdown.wy-dropdown-up .wy-dropdown-menu{bottom:100%;top:auto;left:auto;right:0}.wy-dropdown.wy-dropdown-bubble .wy-dropdown-menu{background:#fcfcfc;margin-top:2px}.wy-dropdown.wy-dropdown-bubble .wy-dropdown-menu a{padding:6px 12px}.wy-dropdown.wy-dropdown-bubble .wy-dropdown-menu a:hover{background:#2980b9;color:#fff}.wy-dropdown.wy-dropdown-left .wy-dropdown-menu{right:0;left:auto;text-align:right}.wy-dropdown-arrow:before{content:" ";border-bottom:5px solid #f5f5f5;border-left:5px solid transparent;border-right:5px solid transparent;position:absolute;display:block;top:-4px;left:50%;margin-left:-3px}.wy-dropdown-arrow.wy-dropdown-arrow-left:before{left:11px}.wy-form-stacked select{display:block}.wy-form-aligned .wy-help-inline,.wy-form-aligned input,.wy-form-aligned label,.wy-form-aligned select,.wy-form-aligned textarea{display:inline-block;*display:inline;*zoom:1;vertical-align:middle}.wy-form-aligned .wy-control-group>label{display:inline-block;vertical-align:middle;width:10em;margin:6px 12px 0 0;float:left}.wy-form-aligned .wy-control{float:left}.wy-form-aligned .wy-control label{display:block}.wy-form-aligned .wy-control select{margin-top:6px}fieldset{margin:0}fieldset,legend{border:0;padding:0}legend{width:100%;white-space:normal;margin-bottom:24px;font-size:150%;*margin-left:-7px}label,legend{display:block}label{margin:0 0 .3125em;color:#333;font-size:90%}input,select,textarea{font-size:100%;margin:0;vertical-align:baseline;*vertical-align:middle}.wy-control-group{margin-bottom:24px;max-width:1200px;margin-left:auto;margin-right:auto;*zoom:1}.wy-control-group:after,.wy-control-group:before{display:table;content:""}.wy-control-group:after{clear:both}.wy-control-group.wy-control-group-required>label:after{content:" *";color:#e74c3c}.wy-control-group .wy-form-full,.wy-control-group .wy-form-halves,.wy-control-group .wy-form-thirds{padding-bottom:12px}.wy-control-group .wy-form-full input[type=color],.wy-control-group .wy-form-full input[type=date],.wy-control-group .wy-form-full input[type=datetime-local],.wy-control-group .wy-form-full input[type=datetime],.wy-control-group .wy-form-full input[type=email],.wy-control-group .wy-form-full input[type=month],.wy-control-group .wy-form-full input[type=number],.wy-control-group .wy-form-full input[type=password],.wy-control-group .wy-form-full input[type=search],.wy-control-group .wy-form-full input[type=tel],.wy-control-group .wy-form-full input[type=text],.wy-control-group .wy-form-full input[type=time],.wy-control-group .wy-form-full input[type=url],.wy-control-group .wy-form-full input[type=week],.wy-control-group .wy-form-full select,.wy-control-group .wy-form-halves input[type=color],.wy-control-group .wy-form-halves input[type=date],.wy-control-group .wy-form-halves input[type=datetime-local],.wy-control-group .wy-form-halves input[type=datetime],.wy-control-group .wy-form-halves input[type=email],.wy-control-group .wy-form-halves input[type=month],.wy-control-group .wy-form-halves input[type=number],.wy-control-group .wy-form-halves input[type=password],.wy-control-group .wy-form-halves input[type=search],.wy-control-group .wy-form-halves input[type=tel],.wy-control-group .wy-form-halves input[type=text],.wy-control-group .wy-form-halves input[type=time],.wy-control-group .wy-form-halves input[type=url],.wy-control-group .wy-form-halves input[type=week],.wy-control-group .wy-form-halves select,.wy-control-group .wy-form-thirds input[type=color],.wy-control-group .wy-form-thirds input[type=date],.wy-control-group .wy-form-thirds input[type=datetime-local],.wy-control-group .wy-form-thirds input[type=datetime],.wy-control-group .wy-form-thirds input[type=email],.wy-control-group .wy-form-thirds input[type=month],.wy-control-group .wy-form-thirds input[type=number],.wy-control-group .wy-form-thirds input[type=password],.wy-control-group .wy-form-thirds input[type=search],.wy-control-group .wy-form-thirds input[type=tel],.wy-control-group .wy-form-thirds input[type=text],.wy-control-group .wy-form-thirds input[type=time],.wy-control-group .wy-form-thirds input[type=url],.wy-control-group .wy-form-thirds input[type=week],.wy-control-group .wy-form-thirds select{width:100%}.wy-control-group .wy-form-full{float:left;display:block;width:100%;margin-right:0}.wy-control-group .wy-form-full:last-child{margin-right:0}.wy-control-group .wy-form-halves{float:left;display:block;margin-right:2.35765%;width:48.82117%}.wy-control-group .wy-form-halves:last-child,.wy-control-group .wy-form-halves:nth-of-type(2n){margin-right:0}.wy-control-group .wy-form-halves:nth-of-type(odd){clear:left}.wy-control-group .wy-form-thirds{float:left;display:block;margin-right:2.35765%;width:31.76157%}.wy-control-group .wy-form-thirds:last-child,.wy-control-group .wy-form-thirds:nth-of-type(3n){margin-right:0}.wy-control-group .wy-form-thirds:nth-of-type(3n+1){clear:left}.wy-control-group.wy-control-group-no-input .wy-control,.wy-control-no-input{margin:6px 0 0;font-size:90%}.wy-control-no-input{display:inline-block}.wy-control-group.fluid-input input[type=color],.wy-control-group.fluid-input input[type=date],.wy-control-group.fluid-input input[type=datetime-local],.wy-control-group.fluid-input input[type=datetime],.wy-control-group.fluid-input input[type=email],.wy-control-group.fluid-input input[type=month],.wy-control-group.fluid-input input[type=number],.wy-control-group.fluid-input input[type=password],.wy-control-group.fluid-input input[type=search],.wy-control-group.fluid-input input[type=tel],.wy-control-group.fluid-input input[type=text],.wy-control-group.fluid-input input[type=time],.wy-control-group.fluid-input input[type=url],.wy-control-group.fluid-input input[type=week]{width:100%}.wy-form-message-inline{padding-left:.3em;color:#666;font-size:90%}.wy-form-message{display:block;color:#999;font-size:70%;margin-top:.3125em;font-style:italic}.wy-form-message p{font-size:inherit;font-style:italic;margin-bottom:6px}.wy-form-message p:last-child{margin-bottom:0}input{line-height:normal}input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;*overflow:visible}input[type=color],input[type=date],input[type=datetime-local],input[type=datetime],input[type=email],input[type=month],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],input[type=week]{-webkit-appearance:none;padding:6px;display:inline-block;border:1px solid #ccc;font-size:80%;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;box-shadow:inset 0 1px 3px #ddd;border-radius:0;-webkit-transition:border .3s linear;-moz-transition:border .3s linear;transition:border .3s linear}input[type=datetime-local]{padding:.34375em .625em}input[disabled]{cursor:default}input[type=checkbox],input[type=radio]{padding:0;margin-right:.3125em;*height:13px;*width:13px}input[type=checkbox],input[type=radio],input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}input[type=color]:focus,input[type=date]:focus,input[type=datetime-local]:focus,input[type=datetime]:focus,input[type=email]:focus,input[type=month]:focus,input[type=number]:focus,input[type=password]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=time]:focus,input[type=url]:focus,input[type=week]:focus{outline:0;outline:thin dotted\9;border-color:#333}input.no-focus:focus{border-color:#ccc!important}input[type=checkbox]:focus,input[type=file]:focus,input[type=radio]:focus{outline:thin dotted #333;outline:1px auto #129fea}input[type=color][disabled],input[type=date][disabled],input[type=datetime-local][disabled],input[type=datetime][disabled],input[type=email][disabled],input[type=month][disabled],input[type=number][disabled],input[type=password][disabled],input[type=search][disabled],input[type=tel][disabled],input[type=text][disabled],input[type=time][disabled],input[type=url][disabled],input[type=week][disabled]{cursor:not-allowed;background-color:#fafafa}input:focus:invalid,select:focus:invalid,textarea:focus:invalid{color:#e74c3c;border:1px solid #e74c3c}input:focus:invalid:focus,select:focus:invalid:focus,textarea:focus:invalid:focus{border-color:#e74c3c}input[type=checkbox]:focus:invalid:focus,input[type=file]:focus:invalid:focus,input[type=radio]:focus:invalid:focus{outline-color:#e74c3c}input.wy-input-large{padding:12px;font-size:100%}textarea{overflow:auto;vertical-align:top;width:100%;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif}select,textarea{padding:.5em .625em;display:inline-block;border:1px solid #ccc;font-size:80%;box-shadow:inset 0 1px 3px #ddd;-webkit-transition:border .3s linear;-moz-transition:border .3s linear;transition:border .3s linear}select{border:1px solid #ccc;background-color:#fff}select[multiple]{height:auto}select:focus,textarea:focus{outline:0}input[readonly],select[disabled],select[readonly],textarea[disabled],textarea[readonly]{cursor:not-allowed;background-color:#fafafa}input[type=checkbox][disabled],input[type=radio][disabled]{cursor:not-allowed}.wy-checkbox,.wy-radio{margin:6px 0;color:#404040;display:block}.wy-checkbox input,.wy-radio input{vertical-align:baseline}.wy-form-message-inline{display:inline-block;*display:inline;*zoom:1;vertical-align:middle}.wy-input-prefix,.wy-input-suffix{white-space:nowrap;padding:6px}.wy-input-prefix .wy-input-context,.wy-input-suffix .wy-input-context{line-height:27px;padding:0 8px;display:inline-block;font-size:80%;background-color:#f3f6f6;border:1px solid #ccc;color:#999}.wy-input-suffix .wy-input-context{border-left:0}.wy-input-prefix .wy-input-context{border-right:0}.wy-switch{position:relative;display:block;height:24px;margin-top:12px;cursor:pointer}.wy-switch:before{left:0;top:0;width:36px;height:12px;background:#ccc}.wy-switch:after,.wy-switch:before{position:absolute;content:"";display:block;border-radius:4px;-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.wy-switch:after{width:18px;height:18px;background:#999;left:-3px;top:-3px}.wy-switch span{position:absolute;left:48px;display:block;font-size:12px;color:#ccc;line-height:1}.wy-switch.active:before{background:#1e8449}.wy-switch.active:after{left:24px;background:#27ae60}.wy-switch.disabled{cursor:not-allowed;opacity:.8}.wy-control-group.wy-control-group-error .wy-form-message,.wy-control-group.wy-control-group-error>label{color:#e74c3c}.wy-control-group.wy-control-group-error input[type=color],.wy-control-group.wy-control-group-error input[type=date],.wy-control-group.wy-control-group-error input[type=datetime-local],.wy-control-group.wy-control-group-error input[type=datetime],.wy-control-group.wy-control-group-error input[type=email],.wy-control-group.wy-control-group-error input[type=month],.wy-control-group.wy-control-group-error input[type=number],.wy-control-group.wy-control-group-error input[type=password],.wy-control-group.wy-control-group-error input[type=search],.wy-control-group.wy-control-group-error input[type=tel],.wy-control-group.wy-control-group-error input[type=text],.wy-control-group.wy-control-group-error input[type=time],.wy-control-group.wy-control-group-error input[type=url],.wy-control-group.wy-control-group-error input[type=week],.wy-control-group.wy-control-group-error textarea{border:1px solid #e74c3c}.wy-inline-validate{white-space:nowrap}.wy-inline-validate .wy-input-context{padding:.5em .625em;display:inline-block;font-size:80%}.wy-inline-validate.wy-inline-validate-success .wy-input-context{color:#27ae60}.wy-inline-validate.wy-inline-validate-danger .wy-input-context{color:#e74c3c}.wy-inline-validate.wy-inline-validate-warning .wy-input-context{color:#e67e22}.wy-inline-validate.wy-inline-validate-info .wy-input-context{color:#2980b9}.rotate-90{-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg)}.rotate-180{-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-ms-transform:rotate(180deg);-o-transform:rotate(180deg);transform:rotate(180deg)}.rotate-270{-webkit-transform:rotate(270deg);-moz-transform:rotate(270deg);-ms-transform:rotate(270deg);-o-transform:rotate(270deg);transform:rotate(270deg)}.mirror{-webkit-transform:scaleX(-1);-moz-transform:scaleX(-1);-ms-transform:scaleX(-1);-o-transform:scaleX(-1);transform:scaleX(-1)}.mirror.rotate-90{-webkit-transform:scaleX(-1) rotate(90deg);-moz-transform:scaleX(-1) rotate(90deg);-ms-transform:scaleX(-1) rotate(90deg);-o-transform:scaleX(-1) rotate(90deg);transform:scaleX(-1) rotate(90deg)}.mirror.rotate-180{-webkit-transform:scaleX(-1) rotate(180deg);-moz-transform:scaleX(-1) rotate(180deg);-ms-transform:scaleX(-1) rotate(180deg);-o-transform:scaleX(-1) rotate(180deg);transform:scaleX(-1) rotate(180deg)}.mirror.rotate-270{-webkit-transform:scaleX(-1) rotate(270deg);-moz-transform:scaleX(-1) rotate(270deg);-ms-transform:scaleX(-1) rotate(270deg);-o-transform:scaleX(-1) rotate(270deg);transform:scaleX(-1) rotate(270deg)}@media only screen and (max-width:480px){.wy-form button[type=submit]{margin:.7em 0 0}.wy-form input[type=color],.wy-form input[type=date],.wy-form input[type=datetime-local],.wy-form input[type=datetime],.wy-form input[type=email],.wy-form input[type=month],.wy-form input[type=number],.wy-form input[type=password],.wy-form input[type=search],.wy-form input[type=tel],.wy-form input[type=text],.wy-form input[type=time],.wy-form input[type=url],.wy-form input[type=week],.wy-form label{margin-bottom:.3em;display:block}.wy-form input[type=color],.wy-form input[type=date],.wy-form input[type=datetime-local],.wy-form input[type=datetime],.wy-form input[type=email],.wy-form input[type=month],.wy-form input[type=number],.wy-form input[type=password],.wy-form input[type=search],.wy-form input[type=tel],.wy-form input[type=time],.wy-form input[type=url],.wy-form input[type=week]{margin-bottom:0}.wy-form-aligned .wy-control-group label{margin-bottom:.3em;text-align:left;display:block;width:100%}.wy-form-aligned .wy-control{margin:1.5em 0 0}.wy-form-message,.wy-form-message-inline,.wy-form .wy-help-inline{display:block;font-size:80%;padding:6px 0}}@media screen and (max-width:768px){.tablet-hide{display:none}}@media screen and (max-width:480px){.mobile-hide{display:none}}.float-left{float:left}.float-right{float:right}.full-width{width:100%}.rst-content table.docutils,.rst-content table.field-list,.wy-table{border-collapse:collapse;border-spacing:0;empty-cells:show;margin-bottom:24px}.rst-content table.docutils caption,.rst-content table.field-list caption,.wy-table caption{color:#000;font:italic 85%/1 arial,sans-serif;padding:1em 0;text-align:center}.rst-content table.docutils td,.rst-content table.docutils th,.rst-content table.field-list td,.rst-content table.field-list th,.wy-table td,.wy-table th{font-size:90%;margin:0;overflow:visible;padding:8px 16px}.rst-content table.docutils td:first-child,.rst-content table.docutils th:first-child,.rst-content table.field-list td:first-child,.rst-content table.field-list th:first-child,.wy-table td:first-child,.wy-table th:first-child{border-left-width:0}.rst-content table.docutils thead,.rst-content table.field-list thead,.wy-table thead{color:#000;text-align:left;vertical-align:bottom;white-space:nowrap}.rst-content table.docutils thead th,.rst-content table.field-list thead th,.wy-table thead th{font-weight:700;border-bottom:2px solid #e1e4e5}.rst-content table.docutils td,.rst-content table.field-list td,.wy-table td{background-color:transparent;vertical-align:middle}.rst-content table.docutils td p,.rst-content table.field-list td p,.wy-table td p{line-height:18px}.rst-content table.docutils td p:last-child,.rst-content table.field-list td p:last-child,.wy-table td p:last-child{margin-bottom:0}.rst-content table.docutils .wy-table-cell-min,.rst-content table.field-list .wy-table-cell-min,.wy-table .wy-table-cell-min{width:1%;padding-right:0}.rst-content table.docutils .wy-table-cell-min input[type=checkbox],.rst-content table.field-list .wy-table-cell-min input[type=checkbox],.wy-table .wy-table-cell-min input[type=checkbox]{margin:0}.wy-table-secondary{color:grey;font-size:90%}.wy-table-tertiary{color:grey;font-size:80%}.rst-content table.docutils:not(.field-list) tr:nth-child(2n-1) td,.wy-table-backed,.wy-table-odd td,.wy-table-striped tr:nth-child(2n-1) td{background-color:#f3f6f6}.rst-content table.docutils,.wy-table-bordered-all{border:1px solid #e1e4e5}.rst-content table.docutils td,.wy-table-bordered-all td{border-bottom:1px solid #e1e4e5;border-left:1px solid #e1e4e5}.rst-content table.docutils tbody>tr:last-child td,.wy-table-bordered-all tbody>tr:last-child td{border-bottom-width:0}.wy-table-bordered{border:1px solid #e1e4e5}.wy-table-bordered-rows td{border-bottom:1px solid #e1e4e5}.wy-table-bordered-rows tbody>tr:last-child td{border-bottom-width:0}.wy-table-horizontal td,.wy-table-horizontal th{border-width:0 0 1px;border-bottom:1px solid #e1e4e5}.wy-table-horizontal tbody>tr:last-child td{border-bottom-width:0}.wy-table-responsive{margin-bottom:24px;max-width:100%;overflow:auto}.wy-table-responsive table{margin-bottom:0!important}.wy-table-responsive table td,.wy-table-responsive table th{white-space:nowrap}a{color:#2980b9;text-decoration:none;cursor:pointer}a:hover{color:#3091d1}a:visited{color:#9b59b6}html{height:100%}body,html{overflow-x:hidden}body{font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;font-weight:400;color:#404040;min-height:100%;background:#edf0f2}.wy-text-left{text-align:left}.wy-text-center{text-align:center}.wy-text-right{text-align:right}.wy-text-large{font-size:120%}.wy-text-normal{font-size:100%}.wy-text-small,small{font-size:80%}.wy-text-strike{text-decoration:line-through}.wy-text-warning{color:#e67e22!important}a.wy-text-warning:hover{color:#eb9950!important}.wy-text-info{color:#2980b9!important}a.wy-text-info:hover{color:#409ad5!important}.wy-text-success{color:#27ae60!important}a.wy-text-success:hover{color:#36d278!important}.wy-text-danger{color:#e74c3c!important}a.wy-text-danger:hover{color:#ed7669!important}.wy-text-neutral{color:#404040!important}a.wy-text-neutral:hover{color:#595959!important}.rst-content .toctree-wrapper>p.caption,h1,h2,h3,h4,h5,h6,legend{margin-top:0;font-weight:700;font-family:Roboto Slab,ff-tisa-web-pro,Georgia,Arial,sans-serif}p{line-height:24px;font-size:16px;margin:0 0 24px}h1{font-size:175%}.rst-content .toctree-wrapper>p.caption,h2{font-size:150%}h3{font-size:125%}h4{font-size:115%}h5{font-size:110%}h6{font-size:100%}hr{display:block;height:1px;border:0;border-top:1px solid #e1e4e5;margin:24px 0;padding:0}.rst-content code,.rst-content tt,code{white-space:nowrap;max-width:100%;background:#fff;border:1px solid #e1e4e5;font-size:75%;padding:0 5px;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;color:#e74c3c;overflow-x:auto}.rst-content tt.code-large,code.code-large{font-size:90%}.rst-content .section ul,.rst-content .toctree-wrapper ul,.rst-content section ul,.wy-plain-list-disc,article ul{list-style:disc;line-height:24px;margin-bottom:24px}.rst-content .section ul li,.rst-content .toctree-wrapper ul li,.rst-content section ul li,.wy-plain-list-disc li,article ul li{list-style:disc;margin-left:24px}.rst-content .section ul li p:last-child,.rst-content .section ul li ul,.rst-content .toctree-wrapper ul li p:last-child,.rst-content .toctree-wrapper ul li ul,.rst-content section ul li p:last-child,.rst-content section ul li ul,.wy-plain-list-disc li p:last-child,.wy-plain-list-disc li ul,article ul li p:last-child,article ul li ul{margin-bottom:0}.rst-content .section ul li li,.rst-content .toctree-wrapper ul li li,.rst-content section ul li li,.wy-plain-list-disc li li,article ul li li{list-style:circle}.rst-content .section ul li li li,.rst-content .toctree-wrapper ul li li li,.rst-content section ul li li li,.wy-plain-list-disc li li li,article ul li li li{list-style:square}.rst-content .section ul li ol li,.rst-content .toctree-wrapper ul li ol li,.rst-content section ul li ol li,.wy-plain-list-disc li ol li,article ul li ol li{list-style:decimal}.rst-content .section ol,.rst-content .section ol.arabic,.rst-content .toctree-wrapper ol,.rst-content .toctree-wrapper ol.arabic,.rst-content section ol,.rst-content section ol.arabic,.wy-plain-list-decimal,article ol{list-style:decimal;line-height:24px;margin-bottom:24px}.rst-content .section ol.arabic li,.rst-content .section ol li,.rst-content .toctree-wrapper ol.arabic li,.rst-content .toctree-wrapper ol li,.rst-content section ol.arabic li,.rst-content section ol li,.wy-plain-list-decimal li,article ol li{list-style:decimal;margin-left:24px}.rst-content .section ol.arabic li ul,.rst-content .section ol li p:last-child,.rst-content .section ol li ul,.rst-content .toctree-wrapper ol.arabic li ul,.rst-content .toctree-wrapper ol li p:last-child,.rst-content .toctree-wrapper ol li ul,.rst-content section ol.arabic li ul,.rst-content section ol li p:last-child,.rst-content section ol li ul,.wy-plain-list-decimal li p:last-child,.wy-plain-list-decimal li ul,article ol li p:last-child,article ol li ul{margin-bottom:0}.rst-content .section ol.arabic li ul li,.rst-content .section ol li ul li,.rst-content .toctree-wrapper ol.arabic li ul li,.rst-content .toctree-wrapper ol li ul li,.rst-content section ol.arabic li ul li,.rst-content section ol li ul li,.wy-plain-list-decimal li ul li,article ol li ul li{list-style:disc}.wy-breadcrumbs{*zoom:1}.wy-breadcrumbs:after,.wy-breadcrumbs:before{display:table;content:""}.wy-breadcrumbs:after{clear:both}.wy-breadcrumbs li{display:inline-block}.wy-breadcrumbs li.wy-breadcrumbs-aside{float:right}.wy-breadcrumbs li a{display:inline-block;padding:5px}.wy-breadcrumbs li a:first-child{padding-left:0}.rst-content .wy-breadcrumbs li tt,.wy-breadcrumbs li .rst-content tt,.wy-breadcrumbs li code{padding:5px;border:none;background:none}.rst-content .wy-breadcrumbs li tt.literal,.wy-breadcrumbs li .rst-content tt.literal,.wy-breadcrumbs li code.literal{color:#404040}.wy-breadcrumbs-extra{margin-bottom:0;color:#b3b3b3;font-size:80%;display:inline-block}@media screen and (max-width:480px){.wy-breadcrumbs-extra,.wy-breadcrumbs li.wy-breadcrumbs-aside{display:none}}@media print{.wy-breadcrumbs li.wy-breadcrumbs-aside{display:none}}html{font-size:16px}.wy-affix{position:fixed;top:1.618em}.wy-menu a:hover{text-decoration:none}.wy-menu-horiz{*zoom:1}.wy-menu-horiz:after,.wy-menu-horiz:before{display:table;content:""}.wy-menu-horiz:after{clear:both}.wy-menu-horiz li,.wy-menu-horiz ul{display:inline-block}.wy-menu-horiz li:hover{background:hsla(0,0%,100%,.1)}.wy-menu-horiz li.divide-left{border-left:1px solid #404040}.wy-menu-horiz li.divide-right{border-right:1px solid #404040}.wy-menu-horiz a{height:32px;display:inline-block;line-height:32px;padding:0 16px}.wy-menu-vertical{width:300px}.wy-menu-vertical header,.wy-menu-vertical p.caption{color:#55a5d9;height:32px;line-height:32px;padding:0 1.618em;margin:12px 0 0;display:block;font-weight:700;text-transform:uppercase;font-size:85%;white-space:nowrap}.wy-menu-vertical ul{margin-bottom:0}.wy-menu-vertical li.divide-top{border-top:1px solid #404040}.wy-menu-vertical li.divide-bottom{border-bottom:1px solid #404040}.wy-menu-vertical li.current{background:#e3e3e3}.wy-menu-vertical li.current a{color:grey;border-right:1px solid #c9c9c9;padding:.4045em 2.427em}.wy-menu-vertical li.current a:hover{background:#d6d6d6}.rst-content .wy-menu-vertical li tt,.wy-menu-vertical li .rst-content tt,.wy-menu-vertical li code{border:none;background:inherit;color:inherit;padding-left:0;padding-right:0}.wy-menu-vertical li button.toctree-expand{display:block;float:left;margin-left:-1.2em;line-height:18px;color:#4d4d4d;border:none;background:none;padding:0}.wy-menu-vertical li.current>a,.wy-menu-vertical li.on a{color:#404040;font-weight:700;position:relative;background:#fcfcfc;border:none;padding:.4045em 1.618em}.wy-menu-vertical li.current>a:hover,.wy-menu-vertical li.on a:hover{background:#fcfcfc}.wy-menu-vertical li.current>a:hover button.toctree-expand,.wy-menu-vertical li.on a:hover button.toctree-expand{color:grey}.wy-menu-vertical li.current>a button.toctree-expand,.wy-menu-vertical li.on a button.toctree-expand{display:block;line-height:18px;color:#333}.wy-menu-vertical li.toctree-l1.current>a{border-bottom:1px solid #c9c9c9;border-top:1px solid #c9c9c9}.wy-menu-vertical .toctree-l1.current .toctree-l2>ul,.wy-menu-vertical .toctree-l2.current .toctree-l3>ul,.wy-menu-vertical .toctree-l3.current .toctree-l4>ul,.wy-menu-vertical .toctree-l4.current .toctree-l5>ul,.wy-menu-vertical .toctree-l5.current .toctree-l6>ul,.wy-menu-vertical .toctree-l6.current .toctree-l7>ul,.wy-menu-vertical .toctree-l7.current .toctree-l8>ul,.wy-menu-vertical .toctree-l8.current .toctree-l9>ul,.wy-menu-vertical .toctree-l9.current .toctree-l10>ul,.wy-menu-vertical .toctree-l10.current .toctree-l11>ul{display:none}.wy-menu-vertical .toctree-l1.current .current.toctree-l2>ul,.wy-menu-vertical .toctree-l2.current .current.toctree-l3>ul,.wy-menu-vertical .toctree-l3.current .current.toctree-l4>ul,.wy-menu-vertical .toctree-l4.current .current.toctree-l5>ul,.wy-menu-vertical .toctree-l5.current .current.toctree-l6>ul,.wy-menu-vertical .toctree-l6.current .current.toctree-l7>ul,.wy-menu-vertical .toctree-l7.current .current.toctree-l8>ul,.wy-menu-vertical .toctree-l8.current .current.toctree-l9>ul,.wy-menu-vertical .toctree-l9.current .current.toctree-l10>ul,.wy-menu-vertical .toctree-l10.current .current.toctree-l11>ul{display:block}.wy-menu-vertical li.toctree-l3,.wy-menu-vertical li.toctree-l4{font-size:.9em}.wy-menu-vertical li.toctree-l2 a,.wy-menu-vertical li.toctree-l3 a,.wy-menu-vertical li.toctree-l4 a,.wy-menu-vertical li.toctree-l5 a,.wy-menu-vertical li.toctree-l6 a,.wy-menu-vertical li.toctree-l7 a,.wy-menu-vertical li.toctree-l8 a,.wy-menu-vertical li.toctree-l9 a,.wy-menu-vertical li.toctree-l10 a{color:#404040}.wy-menu-vertical li.toctree-l2 a:hover button.toctree-expand,.wy-menu-vertical li.toctree-l3 a:hover button.toctree-expand,.wy-menu-vertical li.toctree-l4 a:hover button.toctree-expand,.wy-menu-vertical li.toctree-l5 a:hover button.toctree-expand,.wy-menu-vertical li.toctree-l6 a:hover button.toctree-expand,.wy-menu-vertical li.toctree-l7 a:hover button.toctree-expand,.wy-menu-vertical li.toctree-l8 a:hover button.toctree-expand,.wy-menu-vertical li.toctree-l9 a:hover button.toctree-expand,.wy-menu-vertical li.toctree-l10 a:hover button.toctree-expand{color:grey}.wy-menu-vertical li.toctree-l2.current li.toctree-l3>a,.wy-menu-vertical li.toctree-l3.current li.toctree-l4>a,.wy-menu-vertical li.toctree-l4.current li.toctree-l5>a,.wy-menu-vertical li.toctree-l5.current li.toctree-l6>a,.wy-menu-vertical li.toctree-l6.current li.toctree-l7>a,.wy-menu-vertical li.toctree-l7.current li.toctree-l8>a,.wy-menu-vertical li.toctree-l8.current li.toctree-l9>a,.wy-menu-vertical li.toctree-l9.current li.toctree-l10>a,.wy-menu-vertical li.toctree-l10.current li.toctree-l11>a{display:block}.wy-menu-vertical li.toctree-l2.current>a{padding:.4045em 2.427em}.wy-menu-vertical li.toctree-l2.current li.toctree-l3>a{padding:.4045em 1.618em .4045em 4.045em}.wy-menu-vertical li.toctree-l3.current>a{padding:.4045em 4.045em}.wy-menu-vertical li.toctree-l3.current li.toctree-l4>a{padding:.4045em 1.618em .4045em 5.663em}.wy-menu-vertical li.toctree-l4.current>a{padding:.4045em 5.663em}.wy-menu-vertical li.toctree-l4.current li.toctree-l5>a{padding:.4045em 1.618em .4045em 7.281em}.wy-menu-vertical li.toctree-l5.current>a{padding:.4045em 7.281em}.wy-menu-vertical li.toctree-l5.current li.toctree-l6>a{padding:.4045em 1.618em .4045em 8.899em}.wy-menu-vertical li.toctree-l6.current>a{padding:.4045em 8.899em}.wy-menu-vertical li.toctree-l6.current li.toctree-l7>a{padding:.4045em 1.618em .4045em 10.517em}.wy-menu-vertical li.toctree-l7.current>a{padding:.4045em 10.517em}.wy-menu-vertical li.toctree-l7.current li.toctree-l8>a{padding:.4045em 1.618em .4045em 12.135em}.wy-menu-vertical li.toctree-l8.current>a{padding:.4045em 12.135em}.wy-menu-vertical li.toctree-l8.current li.toctree-l9>a{padding:.4045em 1.618em .4045em 13.753em}.wy-menu-vertical li.toctree-l9.current>a{padding:.4045em 13.753em}.wy-menu-vertical li.toctree-l9.current li.toctree-l10>a{padding:.4045em 1.618em .4045em 15.371em}.wy-menu-vertical li.toctree-l10.current>a{padding:.4045em 15.371em}.wy-menu-vertical li.toctree-l10.current li.toctree-l11>a{padding:.4045em 1.618em .4045em 16.989em}.wy-menu-vertical li.toctree-l2.current>a,.wy-menu-vertical li.toctree-l2.current li.toctree-l3>a{background:#c9c9c9}.wy-menu-vertical li.toctree-l2 button.toctree-expand{color:#a3a3a3}.wy-menu-vertical li.toctree-l3.current>a,.wy-menu-vertical li.toctree-l3.current li.toctree-l4>a{background:#bdbdbd}.wy-menu-vertical li.toctree-l3 button.toctree-expand{color:#969696}.wy-menu-vertical li.current ul{display:block}.wy-menu-vertical li ul{margin-bottom:0;display:none}.wy-menu-vertical li ul li a{margin-bottom:0;color:#d9d9d9;font-weight:400}.wy-menu-vertical a{line-height:18px;padding:.4045em 1.618em;display:block;position:relative;font-size:90%;color:#d9d9d9}.wy-menu-vertical a:hover{background-color:#4e4a4a;cursor:pointer}.wy-menu-vertical a:hover button.toctree-expand{color:#d9d9d9}.wy-menu-vertical a:active{background-color:#2980b9;cursor:pointer;color:#fff}.wy-menu-vertical a:active button.toctree-expand{color:#fff}.wy-side-nav-search{display:block;width:300px;padding:.809em;margin-bottom:.809em;z-index:200;background-color:#2980b9;text-align:center;color:#fcfcfc}.wy-side-nav-search input[type=text]{width:100%;border-radius:50px;padding:6px 12px;border-color:#2472a4}.wy-side-nav-search img{display:block;margin:auto auto .809em;height:45px;width:45px;background-color:#2980b9;padding:5px;border-radius:100%}.wy-side-nav-search .wy-dropdown>a,.wy-side-nav-search>a{color:#fcfcfc;font-size:100%;font-weight:700;display:inline-block;padding:4px 6px;margin-bottom:.809em;max-width:100%}.wy-side-nav-search .wy-dropdown>a:hover,.wy-side-nav-search>a:hover{background:hsla(0,0%,100%,.1)}.wy-side-nav-search .wy-dropdown>a img.logo,.wy-side-nav-search>a img.logo{display:block;margin:0 auto;height:auto;width:auto;border-radius:0;max-width:100%;background:transparent}.wy-side-nav-search .wy-dropdown>a.icon img.logo,.wy-side-nav-search>a.icon img.logo{margin-top:.85em}.wy-side-nav-search>div.version{margin-top:-.4045em;margin-bottom:.809em;font-weight:400;color:hsla(0,0%,100%,.3)}.wy-nav .wy-menu-vertical header{color:#2980b9}.wy-nav .wy-menu-vertical a{color:#b3b3b3}.wy-nav .wy-menu-vertical a:hover{background-color:#2980b9;color:#fff}[data-menu-wrap]{-webkit-transition:all .2s ease-in;-moz-transition:all .2s ease-in;transition:all .2s ease-in;position:absolute;opacity:1;width:100%;opacity:0}[data-menu-wrap].move-center{left:0;right:auto;opacity:1}[data-menu-wrap].move-left{right:auto;left:-100%;opacity:0}[data-menu-wrap].move-right{right:-100%;left:auto;opacity:0}.wy-body-for-nav{background:#fcfcfc}.wy-grid-for-nav{position:absolute;width:100%;height:100%}.wy-nav-side{position:fixed;top:0;bottom:0;left:0;padding-bottom:2em;width:300px;overflow-x:hidden;overflow-y:hidden;min-height:100%;color:#9b9b9b;background:#343131;z-index:200}.wy-side-scroll{width:320px;position:relative;overflow-x:hidden;overflow-y:scroll;height:100%}.wy-nav-top{display:none;background:#2980b9;color:#fff;padding:.4045em .809em;position:relative;line-height:50px;text-align:center;font-size:100%;*zoom:1}.wy-nav-top:after,.wy-nav-top:before{display:table;content:""}.wy-nav-top:after{clear:both}.wy-nav-top a{color:#fff;font-weight:700}.wy-nav-top img{margin-right:12px;height:45px;width:45px;background-color:#2980b9;padding:5px;border-radius:100%}.wy-nav-top i{font-size:30px;float:left;cursor:pointer;padding-top:inherit}.wy-nav-content-wrap{margin-left:300px;background:#fcfcfc;min-height:100%}.wy-nav-content{padding:1.618em 3.236em;height:100%;max-width:800px;margin:auto}.wy-body-mask{position:fixed;width:100%;height:100%;background:rgba(0,0,0,.2);display:none;z-index:499}.wy-body-mask.on{display:block}footer{color:grey}footer p{margin-bottom:12px}.rst-content footer span.commit tt,footer span.commit .rst-content tt,footer span.commit code{padding:0;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;font-size:1em;background:none;border:none;color:grey}.rst-footer-buttons{*zoom:1}.rst-footer-buttons:after,.rst-footer-buttons:before{width:100%;display:table;content:""}.rst-footer-buttons:after{clear:both}.rst-breadcrumbs-buttons{margin-top:12px;*zoom:1}.rst-breadcrumbs-buttons:after,.rst-breadcrumbs-buttons:before{display:table;content:""}.rst-breadcrumbs-buttons:after{clear:both}#search-results .search li{margin-bottom:24px;border-bottom:1px solid #e1e4e5;padding-bottom:24px}#search-results .search li:first-child{border-top:1px solid #e1e4e5;padding-top:24px}#search-results .search li a{font-size:120%;margin-bottom:12px;display:inline-block}#search-results .context{color:grey;font-size:90%}.genindextable li>ul{margin-left:24px}@media screen and (max-width:768px){.wy-body-for-nav{background:#fcfcfc}.wy-nav-top{display:block}.wy-nav-side{left:-300px}.wy-nav-side.shift{width:85%;left:0}.wy-menu.wy-menu-vertical,.wy-side-nav-search,.wy-side-scroll{width:auto}.wy-nav-content-wrap{margin-left:0}.wy-nav-content-wrap .wy-nav-content{padding:1.618em}.wy-nav-content-wrap.shift{position:fixed;min-width:100%;left:85%;top:0;height:100%;overflow:hidden}}@media screen and (min-width:1100px){.wy-nav-content-wrap{background:rgba(0,0,0,.05)}.wy-nav-content{margin:0;background:#fcfcfc}}@media print{.rst-versions,.wy-nav-side,footer{display:none}.wy-nav-content-wrap{margin-left:0}}.rst-versions{position:fixed;bottom:0;left:0;width:300px;color:#fcfcfc;background:#1f1d1d;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;z-index:400}.rst-versions a{color:#2980b9;text-decoration:none}.rst-versions .rst-badge-small{display:none}.rst-versions .rst-current-version{padding:12px;background-color:#272525;display:block;text-align:right;font-size:90%;cursor:pointer;color:#27ae60;*zoom:1}.rst-versions .rst-current-version:after,.rst-versions .rst-current-version:before{display:table;content:""}.rst-versions .rst-current-version:after{clear:both}.rst-content .code-block-caption .rst-versions .rst-current-version .headerlink,.rst-content .eqno .rst-versions .rst-current-version .headerlink,.rst-content .rst-versions .rst-current-version .admonition-title,.rst-content code.download .rst-versions .rst-current-version span:first-child,.rst-content dl dt .rst-versions .rst-current-version .headerlink,.rst-content h1 .rst-versions .rst-current-version .headerlink,.rst-content h2 .rst-versions .rst-current-version .headerlink,.rst-content h3 .rst-versions .rst-current-version .headerlink,.rst-content h4 .rst-versions .rst-current-version .headerlink,.rst-content h5 .rst-versions .rst-current-version .headerlink,.rst-content h6 .rst-versions .rst-current-version .headerlink,.rst-content p .rst-versions .rst-current-version .headerlink,.rst-content table>caption .rst-versions .rst-current-version .headerlink,.rst-content tt.download .rst-versions .rst-current-version span:first-child,.rst-versions .rst-current-version .fa,.rst-versions .rst-current-version .icon,.rst-versions .rst-current-version .rst-content .admonition-title,.rst-versions .rst-current-version .rst-content .code-block-caption .headerlink,.rst-versions .rst-current-version .rst-content .eqno .headerlink,.rst-versions .rst-current-version .rst-content code.download span:first-child,.rst-versions .rst-current-version .rst-content dl dt .headerlink,.rst-versions .rst-current-version .rst-content h1 .headerlink,.rst-versions .rst-current-version .rst-content h2 .headerlink,.rst-versions .rst-current-version .rst-content h3 .headerlink,.rst-versions .rst-current-version .rst-content h4 .headerlink,.rst-versions .rst-current-version .rst-content h5 .headerlink,.rst-versions .rst-current-version .rst-content h6 .headerlink,.rst-versions .rst-current-version .rst-content p .headerlink,.rst-versions .rst-current-version .rst-content table>caption .headerlink,.rst-versions .rst-current-version .rst-content tt.download span:first-child,.rst-versions .rst-current-version .wy-menu-vertical li button.toctree-expand,.wy-menu-vertical li .rst-versions .rst-current-version button.toctree-expand{color:#fcfcfc}.rst-versions .rst-current-version .fa-book,.rst-versions .rst-current-version .icon-book{float:left}.rst-versions .rst-current-version.rst-out-of-date{background-color:#e74c3c;color:#fff}.rst-versions .rst-current-version.rst-active-old-version{background-color:#f1c40f;color:#000}.rst-versions.shift-up{height:auto;max-height:100%;overflow-y:scroll}.rst-versions.shift-up .rst-other-versions{display:block}.rst-versions .rst-other-versions{font-size:90%;padding:12px;color:grey;display:none}.rst-versions .rst-other-versions hr{display:block;height:1px;border:0;margin:20px 0;padding:0;border-top:1px solid #413d3d}.rst-versions .rst-other-versions dd{display:inline-block;margin:0}.rst-versions .rst-other-versions dd a{display:inline-block;padding:6px;color:#fcfcfc}.rst-versions.rst-badge{width:auto;bottom:20px;right:20px;left:auto;border:none;max-width:300px;max-height:90%}.rst-versions.rst-badge .fa-book,.rst-versions.rst-badge .icon-book{float:none;line-height:30px}.rst-versions.rst-badge.shift-up .rst-current-version{text-align:right}.rst-versions.rst-badge.shift-up .rst-current-version .fa-book,.rst-versions.rst-badge.shift-up .rst-current-version .icon-book{float:left}.rst-versions.rst-badge>.rst-current-version{width:auto;height:30px;line-height:30px;padding:0 6px;display:block;text-align:center}@media screen and (max-width:768px){.rst-versions{width:85%;display:none}.rst-versions.shift{display:block}}.rst-content .toctree-wrapper>p.caption,.rst-content h1,.rst-content h2,.rst-content h3,.rst-content h4,.rst-content h5,.rst-content h6{margin-bottom:24px}.rst-content img{max-width:100%;height:auto}.rst-content div.figure,.rst-content figure{margin-bottom:24px}.rst-content div.figure .caption-text,.rst-content figure .caption-text{font-style:italic}.rst-content div.figure p:last-child.caption,.rst-content figure p:last-child.caption{margin-bottom:0}.rst-content div.figure.align-center,.rst-content figure.align-center{text-align:center}.rst-content .section>a>img,.rst-content .section>img,.rst-content section>a>img,.rst-content section>img{margin-bottom:24px}.rst-content abbr[title]{text-decoration:none}.rst-content.style-external-links a.reference.external:after{font-family:FontAwesome;content:"\f08e";color:#b3b3b3;vertical-align:super;font-size:60%;margin:0 .2em}.rst-content blockquote{margin-left:24px;line-height:24px;margin-bottom:24px}.rst-content pre.literal-block{white-space:pre;margin:0;padding:12px;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;display:block;overflow:auto}.rst-content div[class^=highlight],.rst-content pre.literal-block{border:1px solid #e1e4e5;overflow-x:auto;margin:1px 0 24px}.rst-content div[class^=highlight] div[class^=highlight],.rst-content pre.literal-block div[class^=highlight]{padding:0;border:none;margin:0}.rst-content div[class^=highlight] td.code{width:100%}.rst-content .linenodiv pre{border-right:1px solid #e6e9ea;margin:0;padding:12px;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;user-select:none;pointer-events:none}.rst-content div[class^=highlight] pre{white-space:pre;margin:0;padding:12px;display:block;overflow:auto}.rst-content div[class^=highlight] pre .hll{display:block;margin:0 -12px;padding:0 12px}.rst-content .linenodiv pre,.rst-content div[class^=highlight] pre,.rst-content pre.literal-block{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;font-size:12px;line-height:1.4}.rst-content div.highlight .gp,.rst-content div.highlight span.linenos{user-select:none;pointer-events:none}.rst-content div.highlight span.linenos{display:inline-block;padding-left:0;padding-right:12px;margin-right:12px;border-right:1px solid #e6e9ea}.rst-content .code-block-caption{font-style:italic;font-size:85%;line-height:1;padding:1em 0;text-align:center}@media print{.rst-content .codeblock,.rst-content div[class^=highlight],.rst-content div[class^=highlight] pre{white-space:pre-wrap}}.rst-content .admonition,.rst-content .admonition-todo,.rst-content .attention,.rst-content .caution,.rst-content .danger,.rst-content .error,.rst-content .hint,.rst-content .important,.rst-content .note,.rst-content .seealso,.rst-content .tip,.rst-content .warning{clear:both}.rst-content .admonition-todo .last,.rst-content .admonition-todo>:last-child,.rst-content .admonition .last,.rst-content .admonition>:last-child,.rst-content .attention .last,.rst-content .attention>:last-child,.rst-content .caution .last,.rst-content .caution>:last-child,.rst-content .danger .last,.rst-content .danger>:last-child,.rst-content .error .last,.rst-content .error>:last-child,.rst-content .hint .last,.rst-content .hint>:last-child,.rst-content .important .last,.rst-content .important>:last-child,.rst-content .note .last,.rst-content .note>:last-child,.rst-content .seealso .last,.rst-content .seealso>:last-child,.rst-content .tip .last,.rst-content .tip>:last-child,.rst-content .warning .last,.rst-content .warning>:last-child{margin-bottom:0}.rst-content .admonition-title:before{margin-right:4px}.rst-content .admonition table{border-color:rgba(0,0,0,.1)}.rst-content .admonition table td,.rst-content .admonition table th{background:transparent!important;border-color:rgba(0,0,0,.1)!important}.rst-content .section ol.loweralpha,.rst-content .section ol.loweralpha>li,.rst-content .toctree-wrapper ol.loweralpha,.rst-content .toctree-wrapper ol.loweralpha>li,.rst-content section ol.loweralpha,.rst-content section ol.loweralpha>li{list-style:lower-alpha}.rst-content .section ol.upperalpha,.rst-content .section ol.upperalpha>li,.rst-content .toctree-wrapper ol.upperalpha,.rst-content .toctree-wrapper ol.upperalpha>li,.rst-content section ol.upperalpha,.rst-content section ol.upperalpha>li{list-style:upper-alpha}.rst-content .section ol li>*,.rst-content .section ul li>*,.rst-content .toctree-wrapper ol li>*,.rst-content .toctree-wrapper ul li>*,.rst-content section ol li>*,.rst-content section ul li>*{margin-top:12px;margin-bottom:12px}.rst-content .section ol li>:first-child,.rst-content .section ul li>:first-child,.rst-content .toctree-wrapper ol li>:first-child,.rst-content .toctree-wrapper ul li>:first-child,.rst-content section ol li>:first-child,.rst-content section ul li>:first-child{margin-top:0}.rst-content .section ol li>p,.rst-content .section ol li>p:last-child,.rst-content .section ul li>p,.rst-content .section ul li>p:last-child,.rst-content .toctree-wrapper ol li>p,.rst-content .toctree-wrapper ol li>p:last-child,.rst-content .toctree-wrapper ul li>p,.rst-content .toctree-wrapper ul li>p:last-child,.rst-content section ol li>p,.rst-content section ol li>p:last-child,.rst-content section ul li>p,.rst-content section ul li>p:last-child{margin-bottom:12px}.rst-content .section ol li>p:only-child,.rst-content .section ol li>p:only-child:last-child,.rst-content .section ul li>p:only-child,.rst-content .section ul li>p:only-child:last-child,.rst-content .toctree-wrapper ol li>p:only-child,.rst-content .toctree-wrapper ol li>p:only-child:last-child,.rst-content .toctree-wrapper ul li>p:only-child,.rst-content .toctree-wrapper ul li>p:only-child:last-child,.rst-content section ol li>p:only-child,.rst-content section ol li>p:only-child:last-child,.rst-content section ul li>p:only-child,.rst-content section ul li>p:only-child:last-child{margin-bottom:0}.rst-content .section ol li>ol,.rst-content .section ol li>ul,.rst-content .section ul li>ol,.rst-content .section ul li>ul,.rst-content .toctree-wrapper ol li>ol,.rst-content .toctree-wrapper ol li>ul,.rst-content .toctree-wrapper ul li>ol,.rst-content .toctree-wrapper ul li>ul,.rst-content section ol li>ol,.rst-content section ol li>ul,.rst-content section ul li>ol,.rst-content section ul li>ul{margin-bottom:12px}.rst-content .section ol.simple li>*,.rst-content .section ol.simple li ol,.rst-content .section ol.simple li ul,.rst-content .section ul.simple li>*,.rst-content .section ul.simple li ol,.rst-content .section ul.simple li ul,.rst-content .toctree-wrapper ol.simple li>*,.rst-content .toctree-wrapper ol.simple li ol,.rst-content .toctree-wrapper ol.simple li ul,.rst-content .toctree-wrapper ul.simple li>*,.rst-content .toctree-wrapper ul.simple li ol,.rst-content .toctree-wrapper ul.simple li ul,.rst-content section ol.simple li>*,.rst-content section ol.simple li ol,.rst-content section ol.simple li ul,.rst-content section ul.simple li>*,.rst-content section ul.simple li ol,.rst-content section ul.simple li ul{margin-top:0;margin-bottom:0}.rst-content .line-block{margin-left:0;margin-bottom:24px;line-height:24px}.rst-content .line-block .line-block{margin-left:24px;margin-bottom:0}.rst-content .topic-title{font-weight:700;margin-bottom:12px}.rst-content .toc-backref{color:#404040}.rst-content .align-right{float:right;margin:0 0 24px 24px}.rst-content .align-left{float:left;margin:0 24px 24px 0}.rst-content .align-center{margin:auto}.rst-content .align-center:not(table){display:block}.rst-content .code-block-caption .headerlink,.rst-content .eqno .headerlink,.rst-content .toctree-wrapper>p.caption .headerlink,.rst-content dl dt .headerlink,.rst-content h1 .headerlink,.rst-content h2 .headerlink,.rst-content h3 .headerlink,.rst-content h4 .headerlink,.rst-content h5 .headerlink,.rst-content h6 .headerlink,.rst-content p.caption .headerlink,.rst-content p .headerlink,.rst-content table>caption .headerlink{opacity:0;font-size:14px;font-family:FontAwesome;margin-left:.5em}.rst-content .code-block-caption .headerlink:focus,.rst-content .code-block-caption:hover .headerlink,.rst-content .eqno .headerlink:focus,.rst-content .eqno:hover .headerlink,.rst-content .toctree-wrapper>p.caption .headerlink:focus,.rst-content .toctree-wrapper>p.caption:hover .headerlink,.rst-content dl dt .headerlink:focus,.rst-content dl dt:hover .headerlink,.rst-content h1 .headerlink:focus,.rst-content h1:hover .headerlink,.rst-content h2 .headerlink:focus,.rst-content h2:hover .headerlink,.rst-content h3 .headerlink:focus,.rst-content h3:hover .headerlink,.rst-content h4 .headerlink:focus,.rst-content h4:hover .headerlink,.rst-content h5 .headerlink:focus,.rst-content h5:hover .headerlink,.rst-content h6 .headerlink:focus,.rst-content h6:hover .headerlink,.rst-content p.caption .headerlink:focus,.rst-content p.caption:hover .headerlink,.rst-content p .headerlink:focus,.rst-content p:hover .headerlink,.rst-content table>caption .headerlink:focus,.rst-content table>caption:hover .headerlink{opacity:1}.rst-content .btn:focus{outline:2px solid}.rst-content table>caption .headerlink:after{font-size:12px}.rst-content .centered{text-align:center}.rst-content .sidebar{float:right;width:40%;display:block;margin:0 0 24px 24px;padding:24px;background:#f3f6f6;border:1px solid #e1e4e5}.rst-content .sidebar dl,.rst-content .sidebar p,.rst-content .sidebar ul{font-size:90%}.rst-content .sidebar .last,.rst-content .sidebar>:last-child{margin-bottom:0}.rst-content .sidebar .sidebar-title{display:block;font-family:Roboto Slab,ff-tisa-web-pro,Georgia,Arial,sans-serif;font-weight:700;background:#e1e4e5;padding:6px 12px;margin:-24px -24px 24px;font-size:100%}.rst-content .highlighted{background:#f1c40f;box-shadow:0 0 0 2px #f1c40f;display:inline;font-weight:700}.rst-content .citation-reference,.rst-content .footnote-reference{vertical-align:baseline;position:relative;top:-.4em;line-height:0;font-size:90%}.rst-content .hlist{width:100%}.rst-content dl dt span.classifier:before{content:" : "}.rst-content dl dt span.classifier-delimiter{display:none!important}html.writer-html4 .rst-content table.docutils.citation,html.writer-html4 .rst-content table.docutils.footnote{background:none;border:none}html.writer-html4 .rst-content table.docutils.citation td,html.writer-html4 .rst-content table.docutils.citation tr,html.writer-html4 .rst-content table.docutils.footnote td,html.writer-html4 .rst-content table.docutils.footnote tr{border:none;background-color:transparent!important;white-space:normal}html.writer-html4 .rst-content table.docutils.citation td.label,html.writer-html4 .rst-content table.docutils.footnote td.label{padding-left:0;padding-right:0;vertical-align:top}html.writer-html5 .rst-content dl.field-list,html.writer-html5 .rst-content dl.footnote{display:grid;grid-template-columns:max-content auto}html.writer-html5 .rst-content dl.field-list>dt,html.writer-html5 .rst-content dl.footnote>dt{padding-left:1rem}html.writer-html5 .rst-content dl.field-list>dt:after,html.writer-html5 .rst-content dl.footnote>dt:after{content:":"}html.writer-html5 .rst-content dl.field-list>dd,html.writer-html5 .rst-content dl.field-list>dt,html.writer-html5 .rst-content dl.footnote>dd,html.writer-html5 .rst-content dl.footnote>dt{margin-bottom:0}html.writer-html5 .rst-content dl.footnote{font-size:.9rem}html.writer-html5 .rst-content dl.footnote>dt{margin:0 .5rem .5rem 0;line-height:1.2rem;word-break:break-all;font-weight:400}html.writer-html5 .rst-content dl.footnote>dt>span.brackets{margin-right:.5rem}html.writer-html5 .rst-content dl.footnote>dt>span.brackets:before{content:"["}html.writer-html5 .rst-content dl.footnote>dt>span.brackets:after{content:"]"}html.writer-html5 .rst-content dl.footnote>dt>span.fn-backref{font-style:italic}html.writer-html5 .rst-content dl.footnote>dd{margin:0 0 .5rem;line-height:1.2rem}html.writer-html5 .rst-content dl.footnote>dd p,html.writer-html5 .rst-content dl.option-list kbd{font-size:.9rem}.rst-content table.docutils.footnote,html.writer-html4 .rst-content table.docutils.citation,html.writer-html5 .rst-content dl.footnote{color:grey}.rst-content table.docutils.footnote code,.rst-content table.docutils.footnote tt,html.writer-html4 .rst-content table.docutils.citation code,html.writer-html4 .rst-content table.docutils.citation tt,html.writer-html5 .rst-content dl.footnote code,html.writer-html5 .rst-content dl.footnote tt{color:#555}.rst-content .wy-table-responsive.citation,.rst-content .wy-table-responsive.footnote{margin-bottom:0}.rst-content .wy-table-responsive.citation+:not(.citation),.rst-content .wy-table-responsive.footnote+:not(.footnote){margin-top:24px}.rst-content .wy-table-responsive.citation:last-child,.rst-content .wy-table-responsive.footnote:last-child{margin-bottom:24px}.rst-content table.docutils th{border-color:#e1e4e5}html.writer-html5 .rst-content table.docutils th{border:1px solid #e1e4e5}html.writer-html5 .rst-content table.docutils td>p,html.writer-html5 .rst-content table.docutils th>p{line-height:1rem;margin-bottom:0;font-size:.9rem}.rst-content table.docutils td .last,.rst-content table.docutils td .last>:last-child{margin-bottom:0}.rst-content table.field-list,.rst-content table.field-list td{border:none}.rst-content table.field-list td p{font-size:inherit;line-height:inherit}.rst-content table.field-list td>strong{display:inline-block}.rst-content table.field-list .field-name{padding-right:10px;text-align:left;white-space:nowrap}.rst-content table.field-list .field-body{text-align:left}.rst-content code,.rst-content tt{color:#000;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;padding:2px 5px}.rst-content code big,.rst-content code em,.rst-content tt big,.rst-content tt em{font-size:100%!important;line-height:normal}.rst-content code.literal,.rst-content tt.literal{color:#e74c3c;white-space:normal}.rst-content code.xref,.rst-content tt.xref,a .rst-content code,a .rst-content tt{font-weight:700;color:#404040}.rst-content kbd,.rst-content pre,.rst-content samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace}.rst-content a code,.rst-content a tt{color:#2980b9}.rst-content dl{margin-bottom:24px}.rst-content dl dt{font-weight:700;margin-bottom:12px}.rst-content dl ol,.rst-content dl p,.rst-content dl table,.rst-content dl ul{margin-bottom:12px}.rst-content dl dd{margin:0 0 12px 24px;line-height:24px}html.writer-html4 .rst-content dl:not(.docutils),html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple){margin-bottom:24px}html.writer-html4 .rst-content dl:not(.docutils)>dt,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple)>dt{display:table;margin:6px 0;font-size:90%;line-height:normal;background:#e7f2fa;color:#2980b9;border-top:3px solid #6ab0de;padding:6px;position:relative}html.writer-html4 .rst-content dl:not(.docutils)>dt:before,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple)>dt:before{color:#6ab0de}html.writer-html4 .rst-content dl:not(.docutils)>dt .headerlink,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple)>dt .headerlink{color:#404040;font-size:100%!important}html.writer-html4 .rst-content dl:not(.docutils) dl:not(.field-list)>dt,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) dl:not(.field-list)>dt{margin-bottom:6px;border:none;border-left:3px solid #ccc;background:#f0f0f0;color:#555}html.writer-html4 .rst-content dl:not(.docutils) dl:not(.field-list)>dt .headerlink,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) dl:not(.field-list)>dt .headerlink{color:#404040;font-size:100%!important}html.writer-html4 .rst-content dl:not(.docutils)>dt:first-child,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple)>dt:first-child{margin-top:0}html.writer-html4 .rst-content dl:not(.docutils) code.descclassname,html.writer-html4 .rst-content dl:not(.docutils) code.descname,html.writer-html4 .rst-content dl:not(.docutils) tt.descclassname,html.writer-html4 .rst-content dl:not(.docutils) tt.descname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) code.descclassname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) code.descname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) tt.descclassname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) tt.descname{background-color:transparent;border:none;padding:0;font-size:100%!important}html.writer-html4 .rst-content dl:not(.docutils) code.descname,html.writer-html4 .rst-content dl:not(.docutils) tt.descname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) code.descname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) tt.descname{font-weight:700}html.writer-html4 .rst-content dl:not(.docutils) .optional,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) .optional{display:inline-block;padding:0 4px;color:#000;font-weight:700}html.writer-html4 .rst-content dl:not(.docutils) .property,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) .property{display:inline-block;padding-right:8px;max-width:100%}html.writer-html4 .rst-content dl:not(.docutils) .k,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) .k{font-style:italic}html.writer-html4 .rst-content dl:not(.docutils) .descclassname,html.writer-html4 .rst-content dl:not(.docutils) .descname,html.writer-html4 .rst-content dl:not(.docutils) .sig-name,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) .descclassname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) .descname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) .sig-name{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;color:#000}.rst-content .viewcode-back,.rst-content .viewcode-link{display:inline-block;color:#27ae60;font-size:80%;padding-left:24px}.rst-content .viewcode-back{display:block;float:right}.rst-content p.rubric{margin-bottom:12px;font-weight:700}.rst-content code.download,.rst-content tt.download{background:inherit;padding:inherit;font-weight:400;font-family:inherit;font-size:inherit;color:inherit;border:inherit;white-space:inherit}.rst-content code.download span:first-child,.rst-content tt.download span:first-child{-webkit-font-smoothing:subpixel-antialiased}.rst-content code.download span:first-child:before,.rst-content tt.download span:first-child:before{margin-right:4px}.rst-content .guilabel{border:1px solid #7fbbe3;background:#e7f2fa;font-size:80%;font-weight:700;border-radius:4px;padding:2.4px 6px;margin:auto 2px}.rst-content .versionmodified{font-style:italic}@media screen and (max-width:480px){.rst-content .sidebar{width:100%}}span[id*=MathJax-Span]{color:#404040}.math{text-align:center}@font-face{font-family:Lato;src:url(fonts/lato-normal.woff2?bd03a2cc277bbbc338d464e679fe9942) format("woff2"),url(fonts/lato-normal.woff?27bd77b9162d388cb8d4c4217c7c5e2a) format("woff");font-weight:400;font-style:normal;font-display:block}@font-face{font-family:Lato;src:url(fonts/lato-bold.woff2?cccb897485813c7c256901dbca54ecf2) format("woff2"),url(fonts/lato-bold.woff?d878b6c29b10beca227e9eef4246111b) format("woff");font-weight:700;font-style:normal;font-display:block}@font-face{font-family:Lato;src:url(fonts/lato-bold-italic.woff2?0b6bb6725576b072c5d0b02ecdd1900d) format("woff2"),url(fonts/lato-bold-italic.woff?9c7e4e9eb485b4a121c760e61bc3707c) format("woff");font-weight:700;font-style:italic;font-display:block}@font-face{font-family:Lato;src:url(fonts/lato-normal-italic.woff2?4eb103b4d12be57cb1d040ed5e162e9d) format("woff2"),url(fonts/lato-normal-italic.woff?f28f2d6482446544ef1ea1ccc6dd5892) format("woff");font-weight:400;font-style:italic;font-display:block}@font-face{font-family:Roboto Slab;font-style:normal;font-weight:400;src:url(fonts/Roboto-Slab-Regular.woff2?7abf5b8d04d26a2cafea937019bca958) format("woff2"),url(fonts/Roboto-Slab-Regular.woff?c1be9284088d487c5e3ff0a10a92e58c) format("woff");font-display:block}@font-face{font-family:Roboto Slab;font-style:normal;font-weight:700;src:url(fonts/Roboto-Slab-Bold.woff2?9984f4a9bda09be08e83f2506954adbe) format("woff2"),url(fonts/Roboto-Slab-Bold.woff?bed5564a116b05148e3b3bea6fb1162a) format("woff");font-display:block} \ No newline at end of file diff --git a/docs/python/_static/doctools.js b/docs/python/_static/doctools.js index 61ac9d2..8cbf1b1 100644 --- a/docs/python/_static/doctools.js +++ b/docs/python/_static/doctools.js @@ -301,12 +301,14 @@ var Documentation = { window.location.href = prevHref; return false; } + break; case 39: // right var nextHref = $('link[rel="next"]').prop('href'); if (nextHref) { window.location.href = nextHref; return false; } + break; } } }); diff --git a/docs/python/_static/js/theme.js b/docs/python/_static/js/theme.js index 839d07e..1fddb6e 100644 --- a/docs/python/_static/js/theme.js +++ b/docs/python/_static/js/theme.js @@ -1 +1 @@ -!function(n){var e={};function t(i){if(e[i])return e[i].exports;var o=e[i]={i:i,l:!1,exports:{}};return n[i].call(o.exports,o,o.exports,t),o.l=!0,o.exports}t.m=n,t.c=e,t.d=function(n,e,i){t.o(n,e)||Object.defineProperty(n,e,{enumerable:!0,get:i})},t.r=function(n){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(n,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(n,"__esModule",{value:!0})},t.t=function(n,e){if(1&e&&(n=t(n)),8&e)return n;if(4&e&&"object"==typeof n&&n&&n.__esModule)return n;var i=Object.create(null);if(t.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:n}),2&e&&"string"!=typeof n)for(var o in n)t.d(i,o,function(e){return n[e]}.bind(null,o));return i},t.n=function(n){var e=n&&n.__esModule?function(){return n.default}:function(){return n};return t.d(e,"a",e),e},t.o=function(n,e){return Object.prototype.hasOwnProperty.call(n,e)},t.p="",t(t.s=0)}([function(n,e,t){t(1),n.exports=t(3)},function(n,e,t){(function(){var e="undefined"!=typeof window?window.jQuery:t(2);n.exports.ThemeNav={navBar:null,win:null,winScroll:!1,winResize:!1,linkScroll:!1,winPosition:0,winHeight:null,docHeight:null,isRunning:!1,enable:function(n){var t=this;void 0===n&&(n=!0),t.isRunning||(t.isRunning=!0,e((function(e){t.init(e),t.reset(),t.win.on("hashchange",t.reset),n&&t.win.on("scroll",(function(){t.linkScroll||t.winScroll||(t.winScroll=!0,requestAnimationFrame((function(){t.onScroll()})))})),t.win.on("resize",(function(){t.winResize||(t.winResize=!0,requestAnimationFrame((function(){t.onResize()})))})),t.onResize()})))},enableSticky:function(){this.enable(!0)},init:function(n){n(document);var e=this;this.navBar=n("div.wy-side-scroll:first"),this.win=n(window),n(document).on("click","[data-toggle='wy-nav-top']",(function(){n("[data-toggle='wy-nav-shift']").toggleClass("shift"),n("[data-toggle='rst-versions']").toggleClass("shift")})).on("click",".wy-menu-vertical .current ul li a",(function(){var t=n(this);n("[data-toggle='wy-nav-shift']").removeClass("shift"),n("[data-toggle='rst-versions']").toggleClass("shift"),e.toggleCurrent(t),e.hashChange()})).on("click","[data-toggle='rst-current-version']",(function(){n("[data-toggle='rst-versions']").toggleClass("shift-up")})),n("table.docutils:not(.field-list,.footnote,.citation)").wrap("
"),n("table.docutils.footnote").wrap("
"),n("table.docutils.citation").wrap("
"),n(".wy-menu-vertical ul").not(".simple").siblings("a").each((function(){var t=n(this);expand=n(''),expand.on("click",(function(n){return e.toggleCurrent(t),n.stopPropagation(),!1})),t.prepend(expand)}))},reset:function(){var n=encodeURI(window.location.hash)||"#";try{var e=$(".wy-menu-vertical"),t=e.find('[href="'+n+'"]');if(0===t.length){var i=$('.document [id="'+n.substring(1)+'"]').closest("div.section");0===(t=e.find('[href="#'+i.attr("id")+'"]')).length&&(t=e.find('[href="#"]'))}t.length>0&&($(".wy-menu-vertical .current").removeClass("current"),t.addClass("current"),t.closest("li.toctree-l1").addClass("current"),t.closest("li.toctree-l1").parent().addClass("current"),t.closest("li.toctree-l1").addClass("current"),t.closest("li.toctree-l2").addClass("current"),t.closest("li.toctree-l3").addClass("current"),t.closest("li.toctree-l4").addClass("current"),t.closest("li.toctree-l5").addClass("current"),t[0].scrollIntoView())}catch(n){console.log("Error expanding nav for anchor",n)}},onScroll:function(){this.winScroll=!1;var n=this.win.scrollTop(),e=n+this.winHeight,t=this.navBar.scrollTop()+(n-this.winPosition);n<0||e>this.docHeight||(this.navBar.scrollTop(t),this.winPosition=n)},onResize:function(){this.winResize=!1,this.winHeight=this.win.height(),this.docHeight=$(document).height()},hashChange:function(){this.linkScroll=!0,this.win.one("hashchange",(function(){this.linkScroll=!1}))},toggleCurrent:function(n){var e=n.closest("li");e.siblings("li.current").removeClass("current"),e.siblings().find("li.current").removeClass("current"),e.find("> ul li.current").removeClass("current"),e.toggleClass("current")}},"undefined"!=typeof window&&(window.SphinxRtdTheme={Navigation:n.exports.ThemeNav,StickyNav:n.exports.ThemeNav}),function(){for(var n=0,e=["ms","moz","webkit","o"],t=0;t"),n("table.docutils.footnote").wrap("
"),n("table.docutils.citation").wrap("
"),n(".wy-menu-vertical ul").not(".simple").siblings("a").each((function(){var t=n(this);expand=n(''),expand.on("click",(function(n){return e.toggleCurrent(t),n.stopPropagation(),!1})),t.prepend(expand)}))},reset:function(){var n=encodeURI(window.location.hash)||"#";try{var e=$(".wy-menu-vertical"),t=e.find('[href="'+n+'"]');if(0===t.length){var i=$('.document [id="'+n.substring(1)+'"]').closest("div.section");0===(t=e.find('[href="#'+i.attr("id")+'"]')).length&&(t=e.find('[href="#"]'))}if(t.length>0){$(".wy-menu-vertical .current").removeClass("current").attr("aria-expanded","false"),t.addClass("current").attr("aria-expanded","true"),t.closest("li.toctree-l1").parent().addClass("current").attr("aria-expanded","true");for(let n=1;n<=10;n++)t.closest("li.toctree-l"+n).addClass("current").attr("aria-expanded","true");t[0].scrollIntoView()}}catch(n){console.log("Error expanding nav for anchor",n)}},onScroll:function(){this.winScroll=!1;var n=this.win.scrollTop(),e=n+this.winHeight,t=this.navBar.scrollTop()+(n-this.winPosition);n<0||e>this.docHeight||(this.navBar.scrollTop(t),this.winPosition=n)},onResize:function(){this.winResize=!1,this.winHeight=this.win.height(),this.docHeight=$(document).height()},hashChange:function(){this.linkScroll=!0,this.win.one("hashchange",(function(){this.linkScroll=!1}))},toggleCurrent:function(n){var e=n.closest("li");e.siblings("li.current").removeClass("current").attr("aria-expanded","false"),e.siblings().find("li.current").removeClass("current").attr("aria-expanded","false");var t=e.find("> ul li");t.length&&(t.removeClass("current").attr("aria-expanded","false"),e.toggleClass("current").attr("aria-expanded",(function(n,e){return"true"==e?"false":"true"})))}},"undefined"!=typeof window&&(window.SphinxRtdTheme={Navigation:n.exports.ThemeNav,StickyNav:n.exports.ThemeNav}),function(){for(var n=0,e=["ms","moz","webkit","o"],t=0;t -1) { @@ -339,7 +344,6 @@ var Search = { } else if (parts[parts.length - 1].indexOf(object) > -1) { score += Scorer.objPartialMatch; } - var match = objects[prefix][name]; var objname = objnames[match[1]][2]; var title = titles[match[0]]; // If more than one term searched for, we require other words to be @@ -498,6 +502,9 @@ var Search = { */ makeSearchSummary : function(htmlText, keywords, hlwords) { var text = Search.htmlToText(htmlText); + if (text == "") { + return null; + } var textLower = text.toLowerCase(); var start = 0; $.each(keywords, function() { @@ -509,7 +516,7 @@ var Search = { var excerpt = ((start > 0) ? '...' : '') + $.trim(text.substr(start, 240)) + ((start + 240 - text.length) ? '...' : ''); - var rv = $('
').text(excerpt); + var rv = $('

').text(excerpt); $.each(hlwords, function() { rv = rv.highlightText(this, 'highlighted'); }); diff --git a/docs/python/_static/underscore.js b/docs/python/_static/underscore.js index 166240e..cf177d4 100644 --- a/docs/python/_static/underscore.js +++ b/docs/python/_static/underscore.js @@ -1,6 +1,6 @@ -!function(n,r){"object"==typeof exports&&"undefined"!=typeof module?module.exports=r():"function"==typeof define&&define.amd?define("underscore",r):(n=n||self,function(){var t=n._,e=n._=r();e.noConflict=function(){return n._=t,e}}())}(this,(function(){ -// Underscore.js 1.12.0 +!function(n,r){"object"==typeof exports&&"undefined"!=typeof module?module.exports=r():"function"==typeof define&&define.amd?define("underscore",r):(n="undefined"!=typeof globalThis?globalThis:n||self,function(){var t=n._,e=n._=r();e.noConflict=function(){return n._=t,e}}())}(this,(function(){ +// Underscore.js 1.13.1 // https://underscorejs.org -// (c) 2009-2020 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors +// (c) 2009-2021 Jeremy Ashkenas, Julian Gonggrijp, and DocumentCloud and Investigative Reporters & Editors // Underscore may be freely distributed under the MIT license. -var n="1.12.0",r="object"==typeof self&&self.self===self&&self||"object"==typeof global&&global.global===global&&global||Function("return this")()||{},t=Array.prototype,e=Object.prototype,u="undefined"!=typeof Symbol?Symbol.prototype:null,o=t.push,i=t.slice,a=e.toString,f=e.hasOwnProperty,c="undefined"!=typeof ArrayBuffer,l="undefined"!=typeof DataView,s=Array.isArray,p=Object.keys,v=Object.create,h=c&&ArrayBuffer.isView,y=isNaN,g=isFinite,d=!{toString:null}.propertyIsEnumerable("toString"),b=["valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"],m=Math.pow(2,53)-1;function j(n,r){return r=null==r?n.length-1:+r,function(){for(var t=Math.max(arguments.length-r,0),e=Array(t),u=0;u=0&&t<=m}}function $(n){return function(r){return null==r?void 0:r[n]}}var G=$("byteLength"),H=J(G),Q=/\[object ((I|Ui)nt(8|16|32)|Float(32|64)|Uint8Clamped|Big(I|Ui)nt64)Array\]/;var X=c?function(n){return h?h(n)&&!q(n):H(n)&&Q.test(a.call(n))}:K(!1),Y=$("length");function Z(n,r){r=function(n){for(var r={},t=n.length,e=0;e":">",'"':""","'":"'","`":"`"},Kn=Ln(Cn),Jn=Ln(_n(Cn)),$n=tn.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g},Gn=/(.)^/,Hn={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},Qn=/\\|'|\r|\n|\u2028|\u2029/g;function Xn(n){return"\\"+Hn[n]}var Yn=0;function Zn(n,r,t,e,u){if(!(e instanceof r))return n.apply(t,u);var o=Mn(n.prototype),i=n.apply(o,u);return _(i)?i:o}var nr=j((function(n,r){var t=nr.placeholder,e=function(){for(var u=0,o=r.length,i=Array(o),a=0;a1)er(a,r-1,t,e),u=e.length;else for(var f=0,c=a.length;f0&&(t=r.apply(this,arguments)),n<=1&&(r=null),t}}var cr=nr(fr,2);function lr(n,r,t){r=qn(r,t);for(var e,u=nn(n),o=0,i=u.length;o0?0:u-1;o>=0&&o0?a=o>=0?o:Math.max(o+f,a):f=o>=0?Math.min(o+1,f):o+f+1;else if(t&&o&&f)return e[o=t(e,u)]===u?o:-1;if(u!=u)return(o=r(i.call(e,a,f),C))>=0?o+a:-1;for(o=n>0?a:f-1;o>=0&&o0?0:i-1;for(u||(e=r[o?o[a]:a],a+=n);a>=0&&a=3;return r(n,Fn(t,u,4),e,o)}}var wr=_r(1),Ar=_r(-1);function xr(n,r,t){var e=[];return r=qn(r,t),mr(n,(function(n,t,u){r(n,t,u)&&e.push(n)})),e}function Sr(n,r,t){r=qn(r,t);for(var e=!tr(n)&&nn(n),u=(e||n).length,o=0;o=0}var Er=j((function(n,r,t){var e,u;return D(r)?u=r:(r=Nn(r),e=r.slice(0,-1),r=r[r.length-1]),jr(n,(function(n){var o=u;if(!o){if(e&&e.length&&(n=In(n,e)),null==n)return;o=n[r]}return null==o?o:o.apply(n,t)}))}));function Br(n,r){return jr(n,Rn(r))}function Nr(n,r,t){var e,u,o=-1/0,i=-1/0;if(null==r||"number"==typeof r&&"object"!=typeof n[0]&&null!=n)for(var a=0,f=(n=tr(n)?n:jn(n)).length;ao&&(o=e);else r=qn(r,t),mr(n,(function(n,t,e){((u=r(n,t,e))>i||u===-1/0&&o===-1/0)&&(o=n,i=u)}));return o}function Ir(n,r,t){if(null==r||t)return tr(n)||(n=jn(n)),n[Wn(n.length-1)];var e=tr(n)?En(n):jn(n),u=Y(e);r=Math.max(Math.min(r,u),0);for(var o=u-1,i=0;i1&&(e=Fn(e,r[1])),r=an(n)):(e=Pr,r=er(r,!1,!1),n=Object(n));for(var u=0,o=r.length;u1&&(t=r[1])):(r=jr(er(r,!1,!1),String),e=function(n,t){return!Mr(r,t)}),qr(n,e,t)}));function Wr(n,r,t){return i.call(n,0,Math.max(0,n.length-(null==r||t?1:r)))}function zr(n,r,t){return null==n||n.length<1?null==r||t?void 0:[]:null==r||t?n[0]:Wr(n,n.length-r)}function Lr(n,r,t){return i.call(n,null==r||t?1:r)}var Cr=j((function(n,r){return r=er(r,!0,!0),xr(n,(function(n){return!Mr(r,n)}))})),Kr=j((function(n,r){return Cr(n,r)}));function Jr(n,r,t,e){A(r)||(e=t,t=r,r=!1),null!=t&&(t=qn(t,e));for(var u=[],o=[],i=0,a=Y(n);ir?(e&&(clearTimeout(e),e=null),a=c,i=n.apply(u,o),e||(u=o=null)):e||!1===t.trailing||(e=setTimeout(f,l)),i};return c.cancel=function(){clearTimeout(e),a=0,e=u=o=null},c},debounce:function(n,r,t){var e,u,o=function(r,t){e=null,t&&(u=n.apply(r,t))},i=j((function(i){if(e&&clearTimeout(e),t){var a=!e;e=setTimeout(o,r),a&&(u=n.apply(this,i))}else e=or(o,r,this,i);return u}));return i.cancel=function(){clearTimeout(e),e=null},i},wrap:function(n,r){return nr(r,n)},negate:ar,compose:function(){var n=arguments,r=n.length-1;return function(){for(var t=r,e=n[r].apply(this,arguments);t--;)e=n[t].call(this,e);return e}},after:function(n,r){return function(){if(--n<1)return r.apply(this,arguments)}},before:fr,once:cr,findKey:lr,findIndex:pr,findLastIndex:vr,sortedIndex:hr,indexOf:gr,lastIndexOf:dr,find:br,detect:br,findWhere:function(n,r){return br(n,Dn(r))},each:mr,forEach:mr,map:jr,collect:jr,reduce:wr,foldl:wr,inject:wr,reduceRight:Ar,foldr:Ar,filter:xr,select:xr,reject:function(n,r,t){return xr(n,ar(qn(r)),t)},every:Sr,all:Sr,some:Or,any:Or,contains:Mr,includes:Mr,include:Mr,invoke:Er,pluck:Br,where:function(n,r){return xr(n,Dn(r))},max:Nr,min:function(n,r,t){var e,u,o=1/0,i=1/0;if(null==r||"number"==typeof r&&"object"!=typeof n[0]&&null!=n)for(var a=0,f=(n=tr(n)?n:jn(n)).length;ae||void 0===t)return 1;if(t=0&&t<=m}}function J(n){return function(r){return null==r?void 0:r[n]}}var G=J("byteLength"),H=K(G),Q=/\[object ((I|Ui)nt(8|16|32)|Float(32|64)|Uint8Clamped|Big(I|Ui)nt64)Array\]/;var X=c?function(n){return h?h(n)&&!q(n):H(n)&&Q.test(a.call(n))}:C(!1),Y=J("length");function Z(n,r){r=function(n){for(var r={},t=n.length,e=0;e":">",'"':""","'":"'","`":"`"},Cn=Ln($n),Kn=Ln(_n($n)),Jn=tn.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g},Gn=/(.)^/,Hn={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},Qn=/\\|'|\r|\n|\u2028|\u2029/g;function Xn(n){return"\\"+Hn[n]}var Yn=/^\s*(\w|\$)+\s*$/;var Zn=0;function nr(n,r,t,e,u){if(!(e instanceof r))return n.apply(t,u);var o=Mn(n.prototype),i=n.apply(o,u);return _(i)?i:o}var rr=j((function(n,r){var t=rr.placeholder,e=function(){for(var u=0,o=r.length,i=Array(o),a=0;a1)ur(a,r-1,t,e),u=e.length;else for(var f=0,c=a.length;f0&&(t=r.apply(this,arguments)),n<=1&&(r=null),t}}var lr=rr(cr,2);function sr(n,r,t){r=qn(r,t);for(var e,u=nn(n),o=0,i=u.length;o0?0:u-1;o>=0&&o0?a=o>=0?o:Math.max(o+f,a):f=o>=0?Math.min(o+1,f):o+f+1;else if(t&&o&&f)return e[o=t(e,u)]===u?o:-1;if(u!=u)return(o=r(i.call(e,a,f),$))>=0?o+a:-1;for(o=n>0?a:f-1;o>=0&&o0?0:i-1;for(u||(e=r[o?o[a]:a],a+=n);a>=0&&a=3;return r(n,Fn(t,u,4),e,o)}}var Ar=wr(1),xr=wr(-1);function Sr(n,r,t){var e=[];return r=qn(r,t),jr(n,(function(n,t,u){r(n,t,u)&&e.push(n)})),e}function Or(n,r,t){r=qn(r,t);for(var e=!er(n)&&nn(n),u=(e||n).length,o=0;o=0}var Br=j((function(n,r,t){var e,u;return D(r)?u=r:(r=Nn(r),e=r.slice(0,-1),r=r[r.length-1]),_r(n,(function(n){var o=u;if(!o){if(e&&e.length&&(n=In(n,e)),null==n)return;o=n[r]}return null==o?o:o.apply(n,t)}))}));function Nr(n,r){return _r(n,Rn(r))}function Ir(n,r,t){var e,u,o=-1/0,i=-1/0;if(null==r||"number"==typeof r&&"object"!=typeof n[0]&&null!=n)for(var a=0,f=(n=er(n)?n:jn(n)).length;ao&&(o=e);else r=qn(r,t),jr(n,(function(n,t,e){((u=r(n,t,e))>i||u===-1/0&&o===-1/0)&&(o=n,i=u)}));return o}function Tr(n,r,t){if(null==r||t)return er(n)||(n=jn(n)),n[Wn(n.length-1)];var e=er(n)?En(n):jn(n),u=Y(e);r=Math.max(Math.min(r,u),0);for(var o=u-1,i=0;i1&&(e=Fn(e,r[1])),r=an(n)):(e=qr,r=ur(r,!1,!1),n=Object(n));for(var u=0,o=r.length;u1&&(t=r[1])):(r=_r(ur(r,!1,!1),String),e=function(n,t){return!Er(r,t)}),Ur(n,e,t)}));function zr(n,r,t){return i.call(n,0,Math.max(0,n.length-(null==r||t?1:r)))}function Lr(n,r,t){return null==n||n.length<1?null==r||t?void 0:[]:null==r||t?n[0]:zr(n,n.length-r)}function $r(n,r,t){return i.call(n,null==r||t?1:r)}var Cr=j((function(n,r){return r=ur(r,!0,!0),Sr(n,(function(n){return!Er(r,n)}))})),Kr=j((function(n,r){return Cr(n,r)}));function Jr(n,r,t,e){A(r)||(e=t,t=r,r=!1),null!=t&&(t=qn(t,e));for(var u=[],o=[],i=0,a=Y(n);ir?(e&&(clearTimeout(e),e=null),a=c,i=n.apply(u,o),e||(u=o=null)):e||!1===t.trailing||(e=setTimeout(f,l)),i};return c.cancel=function(){clearTimeout(e),a=0,e=u=o=null},c},debounce:function(n,r,t){var e,u,o,i,a,f=function(){var c=zn()-u;r>c?e=setTimeout(f,r-c):(e=null,t||(i=n.apply(a,o)),e||(o=a=null))},c=j((function(c){return a=this,o=c,u=zn(),e||(e=setTimeout(f,r),t&&(i=n.apply(a,o))),i}));return c.cancel=function(){clearTimeout(e),e=o=a=null},c},wrap:function(n,r){return rr(r,n)},negate:fr,compose:function(){var n=arguments,r=n.length-1;return function(){for(var t=r,e=n[r].apply(this,arguments);t--;)e=n[t].call(this,e);return e}},after:function(n,r){return function(){if(--n<1)return r.apply(this,arguments)}},before:cr,once:lr,findKey:sr,findIndex:vr,findLastIndex:hr,sortedIndex:yr,indexOf:gr,lastIndexOf:br,find:mr,detect:mr,findWhere:function(n,r){return mr(n,Dn(r))},each:jr,forEach:jr,map:_r,collect:_r,reduce:Ar,foldl:Ar,inject:Ar,reduceRight:xr,foldr:xr,filter:Sr,select:Sr,reject:function(n,r,t){return Sr(n,fr(qn(r)),t)},every:Or,all:Or,some:Mr,any:Mr,contains:Er,includes:Er,include:Er,invoke:Br,pluck:Nr,where:function(n,r){return Sr(n,Dn(r))},max:Ir,min:function(n,r,t){var e,u,o=1/0,i=1/0;if(null==r||"number"==typeof r&&"object"!=typeof n[0]&&null!=n)for(var a=0,f=(n=er(n)?n:jn(n)).length;ae||void 0===t)return 1;if(t - - Index — molgrid documentation - - - - - - - - - - - - - - - + + - - + - - - - + - - - +
- -
- - -
- - - - - - - - + \ No newline at end of file diff --git a/docs/python/index.html b/docs/python/index.html index a15e5fa..d3a1d38 100644 --- a/docs/python/index.html +++ b/docs/python/index.html @@ -1,68 +1,32 @@ - - - - + + - libmolgrid Python documentation — molgrid documentation - - - - - - - - - - - - - - - + + - - + - - - - + - - - +
- -
- - -
-
-

molgrid module classes

-
-

The AtomTyper class

+ +
+

molgrid module classes

+
+

The AtomTyper class

-
-class molgrid.AtomTyper
+
+class molgrid.AtomTyper

Bases: Boost.Python.instance

Base class for all atom typers

Raises an exception This class cannot be instantiated from Python

-
-
-

The CartesianGrid class

+ +
+

The CartesianGrid class

-
-class molgrid.CartesianGrid((object)arg1, (MGrid3f)arg2, (float3)arg3, (float)arg4)None :
+
+class molgrid.CartesianGrid((object)arg1, (MGrid3f)arg2, (float3)arg3, (float)arg4) None :

Bases: Boost.Python.instance

Wrapper around grid of type G that imposes Cartesian coordinates. @@ -404,8 +316,8 @@

The CartesianGr

-
-center((CartesianGrid)arg1)float3 :
+
+center((CartesianGrid)arg1) float3 :
C++ signature :

float3 center(libmolgrid::CartesianGrid<libmolgrid::ManagedGrid<float, 3ul> > {lvalue})

@@ -413,8 +325,8 @@

The CartesianGr

-
-grid((CartesianGrid)arg1)MGrid3f :
+
+grid((CartesianGrid)arg1) MGrid3f :
C++ signature :

libmolgrid::ManagedGrid<float, 3ul> grid(libmolgrid::CartesianGrid<libmolgrid::ManagedGrid<float, 3ul> > {lvalue})

@@ -422,8 +334,8 @@

The CartesianGr

-
-resolution((CartesianGrid)arg1)float :
+
+resolution((CartesianGrid)arg1) float :
C++ signature :

float resolution(libmolgrid::CartesianGrid<libmolgrid::ManagedGrid<float, 3ul> > {lvalue})

@@ -432,12 +344,12 @@

The CartesianGr

-
-
-

The CoordinateSet class

+ +
+

The CoordinateSet class

-
-class molgrid.CoordinateSet((object)arg1)None :
+
+class molgrid.CoordinateSet((object)arg1) None :

Bases: Boost.Python.instance

A collection of typed atomic coordinates

@@ -495,8 +407,8 @@

The CoordinateS

-
-center((CoordinateSet)arg1)float3 :
+
+center((CoordinateSet)arg1) float3 :
C++ signature :

float3 center(libmolgrid::CoordinateSet {lvalue})

@@ -504,22 +416,23 @@

The CoordinateS

-
-clone((CoordinateSet)arg1)CoordinateSet :
+
+clone((CoordinateSet)arg1) CoordinateSet :
C++ signature :

libmolgrid::CoordinateSet clone(libmolgrid::CoordinateSet {lvalue})

-
-
-property coords
-
+
+
+property coords
+

coordinates

+
-
-copyTo((CoordinateSet)arg1, (Grid2f)arg2, (Grid1f)arg3, (Grid1f)arg4)int :
+
+copyTo((CoordinateSet)arg1, (Grid2f)arg2, (Grid1f)arg3, (Grid1f)arg4) int :

copy into coord/type/radii grids

@@ -550,8 +463,8 @@

The CoordinateS

-
-has_indexed_types((CoordinateSet)arg1)bool :
+
+has_indexed_types((CoordinateSet)arg1) bool :
C++ signature :

bool has_indexed_types(libmolgrid::CoordinateSet {lvalue})

@@ -559,8 +472,8 @@

The CoordinateS

-
-has_vector_types((CoordinateSet)arg1)bool :
+
+has_vector_types((CoordinateSet)arg1) bool :
C++ signature :

bool has_vector_types(libmolgrid::CoordinateSet {lvalue})

@@ -568,8 +481,8 @@

The CoordinateS

-
-make_vector_types((CoordinateSet)arg1[, (bool)include_dummy_type=False[, (list)type_radii=[]]])None :
+
+make_vector_types((CoordinateSet)arg1[, (bool)include_dummy_type=False[, (list)type_radii=[]]]) None :

convert index types to vector types in-place @@ -582,7 +495,7 @@

The CoordinateS

-

make_vector_types( (CoordinateSet)arg1 [, (bool)include_dummy_type=False [, (FloatVec)type_radii=<molgrid.molgrid.FloatVec object at 0x7f6484a33ac0>]]) -> None :

+

make_vector_types( (CoordinateSet)arg1 [, (bool)include_dummy_type=False [, (FloatVec)type_radii=<molgrid.molgrid.FloatVec object at 0x7f1eee500350>]]) -> None :

convert index types to vector types in-place @@ -591,48 +504,51 @@

The CoordinateS

/

-
C++ signature :

void make_vector_types(libmolgrid::CoordinateSet {lvalue} [,bool=False [,std::vector<float, std::allocator<float> >=<molgrid.molgrid.FloatVec object at 0x7f6484a33ac0>]])

+
C++ signature :

void make_vector_types(libmolgrid::CoordinateSet {lvalue} [,bool=False [,std::vector<float, std::allocator<float> >=<molgrid.molgrid.FloatVec object at 0x7f1eee500350>]])

-
-
-property max_type
-
+
+
+property max_type
+

largest type index

+
-
-num_types((CoordinateSet)arg1)int :
+
+num_types((CoordinateSet)arg1) int :
C++ signature :

unsigned int num_types(libmolgrid::CoordinateSet {lvalue})

-
-
-property radii
-
+
+
+property radii
+

atomic radii

+
-
-size((CoordinateSet)arg1)int :
+
+size((CoordinateSet)arg1) int :
C++ signature :

unsigned int size(libmolgrid::CoordinateSet {lvalue})

-
-
-property src
-
+
+
+property src
+

file source of coordinates

+
-
-sum_types((CoordinateSet)arg1, (Grid1f)arg2)None :
+
+sum_types((CoordinateSet)arg1, (Grid1f)arg2) None :

sum types across atoms

@@ -651,8 +567,8 @@

The CoordinateS

-
-tocpu((CoordinateSet)arg1, (bool)arg2)None :
+
+tocpu((CoordinateSet)arg1, (bool)arg2) None :

set memory affinity to CPU

C++ signature :

void tocpu(libmolgrid::CoordinateSet {lvalue},bool)

@@ -661,8 +577,8 @@

The CoordinateS

-
-togpu((CoordinateSet)arg1, (bool)arg2)None :
+
+togpu((CoordinateSet)arg1, (bool)arg2) None :

set memory affinity to GPU

C++ signature :

void togpu(libmolgrid::CoordinateSet {lvalue},bool)

@@ -670,25 +586,27 @@

The CoordinateS

-
-
-property type_index
-
+
+
+property type_index
+

indexed types

+
-
-
-property type_vector
-
+
+
+property type_vector
+

vector types

+
- -
-

The ElementIndexTyper class

+ +
+

The ElementIndexTyper class

-
-class molgrid.ElementIndexTyper((object)arg1)None :
-

Bases: molgrid.molgrid.AtomTyper

+
+class molgrid.ElementIndexTyper((object)arg1) None :
+

Bases: molgrid.molgrid.AtomTyper

Calculate element types

There are quite a few elements, so should probably run this through an organic chem atom mapper that reduces to number of types. @@ -708,8 +626,8 @@

The ElementInde

-
-get_atom_type_index((ElementIndexTyper)arg1, (object)arg2)object :
+
+get_atom_type_index((ElementIndexTyper)arg1, (object)arg2) object :
C++ signature :

std::pair<int, float> get_atom_type_index(libmolgrid::ElementIndexTyper {lvalue},OpenBabel::OBAtom*)

@@ -717,8 +635,8 @@

The ElementInde

-
-get_type_names((ElementIndexTyper)arg1)StringVec :
+
+get_type_names((ElementIndexTyper)arg1) StringVec :
C++ signature :

std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > get_type_names(libmolgrid::ElementIndexTyper {lvalue})

@@ -726,8 +644,8 @@

The ElementInde

-
-get_type_radii((ElementIndexTyper)arg1)FloatVec :
+
+get_type_radii((ElementIndexTyper)arg1) FloatVec :
C++ signature :

std::vector<float, std::allocator<float> > get_type_radii(libmolgrid::ElementIndexTyper {lvalue})

@@ -735,8 +653,8 @@

The ElementInde

-
-num_types((ElementIndexTyper)arg1)int :
+
+num_types((ElementIndexTyper)arg1) int :
C++ signature :

unsigned int num_types(libmolgrid::ElementIndexTyper {lvalue})

@@ -745,12 +663,12 @@

The ElementInde

- -
-

The Example class

+ +
+

The Example class

-
-class molgrid.Example((object)arg1)None :
+
+class molgrid.Example((object)arg1) None :

Bases: Boost.Python.instance

A single example represented by its typed coordinates and label(s)

@@ -760,19 +678,19 @@

The ExampleC++ signature :

void __init__(_object*)

-
-
-property coord_sets
+
+
+property coord_sets
-
-
-property group
+
+
+property group
-
-has_index_types((Example)arg1[, (int)start=0])bool :
+
+has_index_types((Example)arg1[, (int)start=0]) bool :

uses index typing

C++ signature :

bool has_index_types(libmolgrid::Example {lvalue} [,unsigned int=0])

@@ -781,8 +699,8 @@

The Example

-
-has_vector_types((Example)arg1[, (int)start=0])bool :
+
+has_vector_types((Example)arg1[, (int)start=0]) bool :

uses vector typing

C++ signature :

bool has_vector_types(libmolgrid::Example {lvalue} [,unsigned int=0])

@@ -790,14 +708,14 @@

The Example

-
-
-property labels
+
+
+property labels
-
-merge_coordinates((Example)arg1[, (int)start=0[, (bool)unique_index_types=True]])CoordinateSet :
+
+merge_coordinates((Example)arg1[, (int)start=0[, (bool)unique_index_types=True]]) CoordinateSet :

Combine all coordinate sets into one and return it. @@ -878,8 +796,8 @@

The Example

-
-num_coordinates((Example)arg1)int :
+
+num_coordinates((Example)arg1) int :
C++ signature :

unsigned long num_coordinates(libmolgrid::Example {lvalue})

@@ -887,22 +805,22 @@

The Example

-
-num_types((Example)arg1[, (bool)unique_index_type=True])int :
+
+num_types((Example)arg1[, (bool)unique_index_type=True]) int :
C++ signature :

unsigned long num_types(libmolgrid::Example {lvalue} [,bool=True])

-
-
-property seqcont
+
+
+property seqcont
-
-sum_types((Example)arg1, (Grid1fCUDA)sum[, (bool)unique_types=True])None :
+
+sum_types((Example)arg1, (Grid1fCUDA)sum[, (bool)unique_types=True]) None :

sum types across atoms in coordinate sets

@@ -921,8 +839,8 @@

The Example

-
-tocpu((Example)arg1)None :
+
+tocpu((Example)arg1) None :

set memory affinity to CPU

C++ signature :

void tocpu(libmolgrid::Example {lvalue})

@@ -931,8 +849,8 @@

The Example

-
-togpu((Example)arg1)None :
+
+togpu((Example)arg1) None :

set memory affinity to GPU

C++ signature :

void togpu(libmolgrid::Example {lvalue})

@@ -942,12 +860,12 @@

The Example

-
-
-

The ExampleProvider class

+
+
+

The ExampleProvider class

-
-class molgrid.ExampleProvider((object)arg1)None :
+
+class molgrid.ExampleProvider((object)arg1) None :

Bases: Boost.Python.instance

Given a file of examples, provide Example classes one at a time @@ -975,8 +893,8 @@

The ExampleProv

-
-get_large_epoch_num((ExampleProvider)arg1)int :
+
+get_large_epoch_num((ExampleProvider)arg1) int :

Return large epoch number, where an epoch means every example has been seen at LEAST once.

C++ signature :

unsigned long get_large_epoch_num(libmolgrid::ExampleProvider {lvalue})

@@ -985,8 +903,8 @@

The ExampleProv

-
-get_small_epoch_num((ExampleProvider)arg1)int :
+
+get_small_epoch_num((ExampleProvider)arg1) int :

Return small epoch number, where an epoch means every example has been seen at MOST once.

C++ signature :

unsigned long get_small_epoch_num(libmolgrid::ExampleProvider {lvalue})

@@ -995,8 +913,8 @@

The ExampleProv

-
-get_type_names((ExampleProvider)arg1)StringVec :
+
+get_type_names((ExampleProvider)arg1) StringVec :
C++ signature :

std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > get_type_names(libmolgrid::ExampleProvider {lvalue})

@@ -1004,8 +922,8 @@

The ExampleProv

-
-large_epoch_size((ExampleProvider)arg1)int :
+
+large_epoch_size((ExampleProvider)arg1) int :

Return size of large epoch

C++ signature :

unsigned long large_epoch_size(libmolgrid::ExampleProvider {lvalue})

@@ -1014,8 +932,8 @@

The ExampleProv

-
-next((ExampleProvider)arg1)Example :
+
+next((ExampleProvider)arg1) Example :
C++ signature :

libmolgrid::Example next(libmolgrid::ExampleProvider {lvalue})

@@ -1023,8 +941,8 @@

The ExampleProv

-
-next_batch((ExampleProvider)arg1[, (int)batch_size=0])ExampleVec :
+
+next_batch((ExampleProvider)arg1[, (int)batch_size=0]) ExampleVec :
C++ signature :

std::vector<libmolgrid::Example, std::allocator<libmolgrid::Example> > next_batch(libmolgrid::ExampleProvider {lvalue} [,unsigned int=0])

@@ -1032,8 +950,8 @@

The ExampleProv

-
-num_labels((ExampleProvider)arg1)int :
+
+num_labels((ExampleProvider)arg1) int :
C++ signature :

unsigned long num_labels(libmolgrid::ExampleProvider {lvalue})

@@ -1041,8 +959,8 @@

The ExampleProv

-
-num_types((ExampleProvider)arg1)int :
+
+num_types((ExampleProvider)arg1) int :
C++ signature :

unsigned long num_types(libmolgrid::ExampleProvider {lvalue})

@@ -1050,8 +968,8 @@

The ExampleProv

-
-populate((ExampleProvider)arg1, (str)file_name[, (int)num_labels=-1])None :
+
+populate((ExampleProvider)arg1, (str)file_name[, (int)num_labels=-1]) None :
C++ signature :

void populate(libmolgrid::ExampleProvider {lvalue},std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > [,int=-1])

@@ -1068,8 +986,8 @@

The ExampleProv

-
-reset((ExampleProvider)arg1)None :
+
+reset((ExampleProvider)arg1) None :

Reset iterator to beginning

C++ signature :

void reset(libmolgrid::ExampleProvider {lvalue})

@@ -1078,8 +996,8 @@

The ExampleProv

-
-settings((ExampleProvider)arg1)ExampleProviderSettings :
+
+settings((ExampleProvider)arg1) ExampleProviderSettings :
C++ signature :

libmolgrid::ExampleProviderSettings settings(libmolgrid::ExampleProvider {lvalue})

@@ -1087,8 +1005,8 @@

The ExampleProv

-
-size((ExampleProvider)arg1)int :
+
+size((ExampleProvider)arg1) int :
C++ signature :

unsigned long size(libmolgrid::ExampleProvider {lvalue})

@@ -1096,8 +1014,8 @@

The ExampleProv

-
-small_epoch_size((ExampleProvider)arg1)int :
+
+small_epoch_size((ExampleProvider)arg1) int :

Return size of small epoch

C++ signature :

unsigned long small_epoch_size(libmolgrid::ExampleProvider {lvalue})

@@ -1107,151 +1025,156 @@

The ExampleProv

-
-
-

The ExampleProviderSettings class

+
+
+

The ExampleProviderSettings class

-
-class molgrid.ExampleProviderSettings((object)arg1)None :
+
+class molgrid.ExampleProviderSettings((object)arg1) None :

Bases: Boost.Python.instance

C++ signature :

void __init__(_object*)

-
-
-property add_hydrogens
+
+
+property add_hydrogens

protonate read in molecule using openbabel

-
-
-property balanced
+
+
+property balanced

provide equal number of positive and negative examples as determined by label

-
-
-property cache_structs
+
+
+property cache_structs

retain coordinates in memory for faster training

-
-
-property data_root
+
+
+property data_root

prefix for data files

-
-
-property default_batch_size
+
+
+property default_batch_size

default batch size

-
-
-property duplicate_first
+
+
+property duplicate_first

clone the first coordinate set to be paired with each of the remaining (receptor-ligand pairs)

-
-
-property group_batch_size
+
+
+property group_batch_size

slice time series (groups) by batches of this size

-
-
-property iteration_scheme
-

how to iterate over examples; note that the last batch may get padded with example from the next epoch

+
+
+property iteration_scheme
+

Continuous, LargeEpoch, SmallEpoch

+
+
Type
+

how to iterate over examples; note that the last batch may get padded with example from the next epoch. Options are

+
+
-
-
-property labelpos
+
+
+property labelpos

position of binary label

-
-
-property ligmolcache
+
+
+property ligmolcache

precalculated molcache2 file for ligand; if doesn’t exist, will look in data_root

-
-
-property make_vector_types
+
+
+property make_vector_types

convert index types into one-hot encoded vector types

-
-
-property max_group_size
+
+
+property max_group_size

maximum group size, all groups are padded out to this size; example file must contain group number in first column

-
-
-property num_copies
+
+
+property num_copies

number of times to repeatedly produce an example

-
-
-property recmolcache
+
+
+property recmolcache

precalculated molcache2 file for receptor (first molecule); if doesn’t exist, will look in data _root

-
-
-property shuffle
+
+
+property shuffle

randomize order of examples

-
-
-property stratify_abs
+
+
+property stratify_abs

stratify based on absolute value, for cases where negative has special meaning (e.g., hinge loss indicator)

-
-
-property stratify_max
+
+
+property stratify_max

maximum range for value stratification

-
-
-property stratify_min
+
+
+property stratify_min

minimum range for value stratification

-
-
-property stratify_pos
+
+
+property stratify_pos

position of label for numerical stratification

-
-
-property stratify_receptor
+
+
+property stratify_receptor

sample uniformly across receptors (first molecule)

-
-
-property stratify_step
+
+
+property stratify_step

step size for value stratification, together with min and max determines number of bins

-
-
-

The ExampleVec class

+ +
+

The ExampleVec class

-
-class molgrid.ExampleVec((object)arg1)None :
+
+class molgrid.ExampleVec((object)arg1) None :

Bases: Boost.Python.instance

@@ -1267,8 +1190,8 @@

The ExampleVec<

-
-append((ExampleVec)arg1, (object)arg2)None :
+
+append((ExampleVec)arg1, (object)arg2) None :
C++ signature :

void append(std::vector<libmolgrid::Example, std::allocator<libmolgrid::Example> > {lvalue},boost::python::api::object)

@@ -1276,8 +1199,8 @@

The ExampleVec<

-
-extend((ExampleVec)arg1, (object)arg2)None :
+
+extend((ExampleVec)arg1, (object)arg2) None :
C++ signature :

void extend(std::vector<libmolgrid::Example, std::allocator<libmolgrid::Example> > {lvalue},boost::python::api::object)

@@ -1285,8 +1208,8 @@

The ExampleVec<

-
-extract_label((ExampleVec)arg1, (int)arg2, (Grid1f)arg3)None :
+
+extract_label((ExampleVec)arg1, (int)arg2, (Grid1f)arg3) None :

Extract a specific label from a vector of examples, as returned by ExampleProvider.next_batch.

@@ -1299,7 +1222,7 @@

The ExampleVec<

position of label

param out
-

2D grid (NxL)

+

1D grid (N)

/

@@ -1321,7 +1244,7 @@

The ExampleVec<

position of label

param out
-

2D grid (NxL)

+

1D grid (N)

/

@@ -1333,8 +1256,8 @@

The ExampleVec<
-
-extract_labels((ExampleVec)arg1, (Grid2f)arg2)None :
+
+extract_labels((ExampleVec)arg1, (Grid2f)arg2) None :

Extract labels from a vector of examples, as returned by ExampleProvider.next_batch.

@@ -1375,8 +1298,8 @@

The ExampleVec<

-
-sum_types((ExampleVec)arg1, (Grid2fCUDA)sum[, (bool)unique_types=True])None :
+
+sum_types((ExampleVec)arg1, (Grid2fCUDA)sum[, (bool)unique_types=True]) None :
C++ signature :

void sum_types(std::vector<libmolgrid::Example, std::allocator<libmolgrid::Example> >,libmolgrid::Grid<float, 2ul, true> [,bool=True])

@@ -1394,12 +1317,12 @@

The ExampleVec<

-
-
-

The FileAtomMapper class

+

+
+

The FileAtomMapper class

-
-class molgrid.FileAtomMapper((object)arg1, (str)arg2, (StringVec)arg3)None :
+
+class molgrid.FileAtomMapper((object)arg1, (str)arg2, (StringVec)arg3) None :

Bases: Boost.Python.instance

Atom mappers ************ @@ -1414,8 +1337,8 @@

The FileAtomMap

-
-get_new_type((FileAtomMapper)arg1, (int)arg2)int :
+
+get_new_type((FileAtomMapper)arg1, (int)arg2) int :
C++ signature :

int get_new_type(libmolgrid::FileAtomMapper {lvalue},unsigned int)

@@ -1423,8 +1346,8 @@

The FileAtomMap

-
-get_type_names((FileAtomMapper)arg1)StringVec :
+
+get_type_names((FileAtomMapper)arg1) StringVec :
C++ signature :

std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > get_type_names(libmolgrid::FileAtomMapper {lvalue})

@@ -1432,8 +1355,8 @@

The FileAtomMap

-
-num_types((FileAtomMapper)arg1)int :
+
+num_types((FileAtomMapper)arg1) int :
C++ signature :

unsigned int num_types(libmolgrid::FileAtomMapper {lvalue})

@@ -1442,20 +1365,20 @@

The FileAtomMap

-
-
-

The FileMappedElementTyper class

+ +
+

The FileMappedElementTyper class

-
-class molgrid.FileMappedElementTyper((object)arg1, (str)fname[, (int)maxe=84])None :
-

Bases: molgrid.molgrid.AtomTyper

+
+class molgrid.FileMappedElementTyper((object)arg1, (str)fname[, (int)maxe=84]) None :
+

Bases: molgrid.molgrid.AtomTyper

C++ signature :

void __init__(_object*,std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > [,unsigned int=84])

-
-get_atom_type_index((FileMappedElementTyper)arg1, (object)arg2)object :
+
+get_atom_type_index((FileMappedElementTyper)arg1, (object)arg2) object :
C++ signature :

std::pair<int, float> get_atom_type_index(libmolgrid::FileMappedElementTyper {lvalue},OpenBabel::OBAtom*)

@@ -1463,8 +1386,8 @@

The FileMappedE

-
-get_type_names((FileMappedElementTyper)arg1)StringVec :
+
+get_type_names((FileMappedElementTyper)arg1) StringVec :
C++ signature :

std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > get_type_names(libmolgrid::FileMappedElementTyper {lvalue})

@@ -1472,8 +1395,8 @@

The FileMappedE

-
-get_type_radii((FileMappedElementTyper)arg1)FloatVec :
+
+get_type_radii((FileMappedElementTyper)arg1) FloatVec :
C++ signature :

std::vector<float, std::allocator<float> > get_type_radii(libmolgrid::FileMappedElementTyper {lvalue})

@@ -1481,8 +1404,8 @@

The FileMappedE

-
-num_types((FileMappedElementTyper)arg1)int :
+
+num_types((FileMappedElementTyper)arg1) int :
C++ signature :

unsigned int num_types(libmolgrid::FileMappedElementTyper {lvalue})

@@ -1491,20 +1414,20 @@

The FileMappedE

-
-
-

The FileMappedGninaTyper class

+ +
+

The FileMappedGninaTyper class

-
-class molgrid.FileMappedGninaTyper((object)arg1, (str)fname[, (bool)use_covalent_radius=False])None :
-

Bases: molgrid.molgrid.AtomTyper

+
+class molgrid.FileMappedGninaTyper((object)arg1, (str)fname[, (bool)use_covalent_radius=False]) None :
+

Bases: molgrid.molgrid.AtomTyper

C++ signature :

void __init__(_object*,std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > [,bool=False])

-
-get_atom_type_index((FileMappedGninaTyper)arg1, (object)arg2)object :
+
+get_atom_type_index((FileMappedGninaTyper)arg1, (object)arg2) object :
C++ signature :

std::pair<int, float> get_atom_type_index(libmolgrid::FileMappedGninaTyper {lvalue},OpenBabel::OBAtom*)

@@ -1512,8 +1435,8 @@

The FileMappedG

-
-get_type_names((FileMappedGninaTyper)arg1)StringVec :
+
+get_type_names((FileMappedGninaTyper)arg1) StringVec :
C++ signature :

std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > get_type_names(libmolgrid::FileMappedGninaTyper {lvalue})

@@ -1521,8 +1444,8 @@

The FileMappedG

-
-get_type_radii((FileMappedGninaTyper)arg1)FloatVec :
+
+get_type_radii((FileMappedGninaTyper)arg1) FloatVec :
C++ signature :

std::vector<float, std::allocator<float> > get_type_radii(libmolgrid::FileMappedGninaTyper {lvalue})

@@ -1530,8 +1453,8 @@

The FileMappedG

-
-num_types((FileMappedGninaTyper)arg1)int :
+
+num_types((FileMappedGninaTyper)arg1) int :
C++ signature :

unsigned int num_types(libmolgrid::FileMappedGninaTyper {lvalue})

@@ -1540,13 +1463,13 @@

The FileMappedG

-
-
-

The GninaIndexTyper class

+ +
+

The GninaIndexTyper class

-
-class molgrid.GninaIndexTyper((object)arg1)None :
-

Bases: molgrid.molgrid.AtomTyper

+
+class molgrid.GninaIndexTyper((object)arg1) None :
+

Bases: molgrid.molgrid.AtomTyper

Atom typers ************ Calculate gnina types

These are variants of AutoDock4 types.

@@ -1564,8 +1487,8 @@

The GninaIndexT

-
-get_atom_type_index((GninaIndexTyper)arg1, (object)arg2)object :
+
+get_atom_type_index((GninaIndexTyper)arg1, (object)arg2) object :
C++ signature :

std::pair<int, float> get_atom_type_index(libmolgrid::GninaIndexTyper {lvalue},OpenBabel::OBAtom*)

@@ -1573,8 +1496,8 @@

The GninaIndexT

-
-get_type_names((GninaIndexTyper)arg1)StringVec :
+
+get_type_names((GninaIndexTyper)arg1) StringVec :
C++ signature :

std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > get_type_names(libmolgrid::GninaIndexTyper {lvalue})

@@ -1582,8 +1505,8 @@

The GninaIndexT

-
-get_type_radii((GninaIndexTyper)arg1)FloatVec :
+
+get_type_radii((GninaIndexTyper)arg1) FloatVec :
C++ signature :

std::vector<float, std::allocator<float> > get_type_radii(libmolgrid::GninaIndexTyper {lvalue})

@@ -1591,8 +1514,8 @@

The GninaIndexT

-
-num_types((GninaIndexTyper)arg1)int :
+
+num_types((GninaIndexTyper)arg1) int :
C++ signature :

unsigned int num_types(libmolgrid::GninaIndexTyper {lvalue})

@@ -1601,13 +1524,13 @@

The GninaIndexT

- -
-

The GninaVectorTyper class

+ +
+

The GninaVectorTyper class

-
-class molgrid.GninaVectorTyper((object)arg1)None :
-

Bases: molgrid.molgrid.AtomTyper

+
+class molgrid.GninaVectorTyper((object)arg1) None :
+

Bases: molgrid.molgrid.AtomTyper

Decompose gnina types into elements and properties. Result is boolean.

Hydrophobic, Aromatic, Donor, Acceptor

These are variants of AutoDock4 types.

@@ -1616,8 +1539,8 @@

The GninaVector

-
-get_atom_type_vector((GninaVectorTyper)arg1, (object)arg2)object :
+
+get_atom_type_vector((GninaVectorTyper)arg1, (object)arg2) object :
C++ signature :

std::pair<boost::python::list, float> get_atom_type_vector(libmolgrid::GninaVectorTyper,OpenBabel::OBAtom*)

@@ -1625,8 +1548,8 @@

The GninaVector

-
-get_type_names((GninaVectorTyper)arg1)StringVec :
+
+get_type_names((GninaVectorTyper)arg1) StringVec :
C++ signature :

std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > get_type_names(libmolgrid::GninaVectorTyper {lvalue})

@@ -1634,8 +1557,8 @@

The GninaVector

-
-num_types((GninaVectorTyper)arg1)int :
+
+num_types((GninaVectorTyper)arg1) int :
C++ signature :

unsigned int num_types(libmolgrid::GninaVectorTyper {lvalue})

@@ -1644,12 +1567,12 @@

The GninaVector

-
-
-

The GridMaker class

+ +
+

The GridMaker class

-
-class molgrid.GridMaker((object)arg1[, (float)resolution=0.5[, (float)dimension=23.5[, (bool)binary=False[, (bool)radius_type_indexed=False[, (float)radius_scale=1.0[, (float)gaussian_radius_multiple=1.0]]]]]])None :
+
+class molgrid.GridMaker((object)arg1[, (float)resolution=0.5[, (float)dimension=23.5[, (bool)binary=False[, (bool)radius_type_indexed=False[, (float)radius_scale=1.0[, (float)gaussian_radius_multiple=1.0]]]]]]) None :

Bases: Boost.Python.instance

GridMaker @@ -1667,8 +1590,8 @@

The GridMaker

-
-backward((GridMaker)arg1, (float3)arg2, (CoordinateSet)arg3, (Grid4f)arg4, (Grid2f)arg5, (Grid2f)arg6)None :
+
+backward((GridMaker)arg1, (float3)arg2, (CoordinateSet)arg3, (Grid4f)arg4, (Grid2f)arg5, (Grid2f)arg6) None :

Generate atom and type gradients from grid gradients. (CPU) @@ -1927,8 +1850,8 @@

The GridMaker

-
-backward_gradients((GridMaker)arg1, (float3)arg2, (Grid2f)arg3, (Grid2f)arg4, (Grid1f)arg5, (Grid4f)arg6, (Grid2f)arg7, (Grid2f)arg8, (Grid4f)arg9, (Grid2f)arg10, (Grid2f)arg11)None :
+
+backward_gradients((GridMaker)arg1, (float3)arg2, (Grid2f)arg3, (Grid2f)arg4, (Grid1f)arg5, (Grid4f)arg6, (Grid2f)arg7, (Grid2f)arg8, (Grid4f)arg9, (Grid2f)arg10, (Grid2f)arg11) None :

Generate gradients of atom/type gradients. (CPU) @@ -2097,8 +2020,8 @@

The GridMaker

-
-forward((GridMaker)arg1, (Example)example, (Grid4f)grid[, (float)random_translation=0.0[, (bool)random_rotation=False]])None :
+
+forward((GridMaker)arg1, (Example)example, (Grid4f)grid[, (float)random_translation=0.0[, (bool)random_rotation=False]]) None :

Generate CPU grid tensor from an example. @@ -2533,8 +2456,8 @@

The GridMaker

-
-get_binary((GridMaker)arg1)bool :
+
+get_binary((GridMaker)arg1) bool :
C++ signature :

bool get_binary(libmolgrid::GridMaker {lvalue})

@@ -2542,8 +2465,8 @@

The GridMaker

-
-get_dimension((GridMaker)arg1)float :
+
+get_dimension((GridMaker)arg1) float :
C++ signature :

float get_dimension(libmolgrid::GridMaker {lvalue})

@@ -2551,8 +2474,8 @@

The GridMaker

-
-get_radii_type_indexed((GridMaker)arg1)bool :
+
+get_radii_type_indexed((GridMaker)arg1) bool :
C++ signature :

bool get_radii_type_indexed(libmolgrid::GridMaker {lvalue})

@@ -2560,8 +2483,8 @@

The GridMaker

-
-get_resolution((GridMaker)arg1)float :
+
+get_resolution((GridMaker)arg1) float :
C++ signature :

float get_resolution(libmolgrid::GridMaker {lvalue})

@@ -2569,8 +2492,8 @@

The GridMaker

-
-grid_dimensions((GridMaker)arg1, (int)arg2)tuple :
+
+grid_dimensions((GridMaker)arg1, (int)arg2) tuple :
C++ signature :

boost::python::tuple grid_dimensions(libmolgrid::GridMaker {lvalue},int)

@@ -2578,20 +2501,20 @@

The GridMaker

-
-make_ndarray(center, c)
+
+make_ndarray(center, c)

Create appropriately sized numpy array of grid densities.

-
-make_tensor(center, c)
+
+make_tensor(center, c)

Create appropriately sized pytorch tensor of grid densities. set_gpu_enabled can be used to control if result is located on the cpu or gpu

-
-set_binary((GridMaker)arg1, (bool)arg2)None :
+
+set_binary((GridMaker)arg1, (bool)arg2) None :
C++ signature :

void set_binary(libmolgrid::GridMaker {lvalue},bool)

@@ -2599,8 +2522,8 @@

The GridMaker

-
-set_dimension((GridMaker)arg1, (float)arg2)None :
+
+set_dimension((GridMaker)arg1, (float)arg2) None :
C++ signature :

void set_dimension(libmolgrid::GridMaker {lvalue},float)

@@ -2608,8 +2531,8 @@

The GridMaker

-
-set_radii_type_indexed((GridMaker)arg1, (bool)arg2)None :
+
+set_radii_type_indexed((GridMaker)arg1, (bool)arg2) None :
C++ signature :

void set_radii_type_indexed(libmolgrid::GridMaker {lvalue},bool)

@@ -2617,8 +2540,8 @@

The GridMaker

-
-set_resolution((GridMaker)arg1, (float)arg2)None :
+
+set_resolution((GridMaker)arg1, (float)arg2) None :
C++ signature :

void set_resolution(libmolgrid::GridMaker {lvalue},float)

@@ -2626,8 +2549,8 @@

The GridMaker

-
-spatial_grid_dimensions((GridMaker)arg1)tuple :
+
+spatial_grid_dimensions((GridMaker)arg1) tuple :
C++ signature :

boost::python::tuple spatial_grid_dimensions(libmolgrid::GridMaker {lvalue})

@@ -2635,28 +2558,28 @@

The GridMaker

-
-tonumpy()
+
+tonumpy()

Return a numpy array copy of grid g

-
-
-

The NullIndexTyper class

+ +
+

The NullIndexTyper class

-
-class molgrid.NullIndexTyper((object)arg1)None :
-

Bases: molgrid.molgrid.AtomTyper

+
+class molgrid.NullIndexTyper((object)arg1) None :
+

Bases: molgrid.molgrid.AtomTyper

Always return an invalid type

C++ signature :

void __init__(_object*)

-
-get_atom_type_index((NullIndexTyper)arg1, (object)arg2)object :
+
+get_atom_type_index((NullIndexTyper)arg1, (object)arg2) object :
C++ signature :

std::pair<int, float> get_atom_type_index(libmolgrid::NullIndexTyper {lvalue},OpenBabel::OBAtom*)

@@ -2664,8 +2587,8 @@

The NullIndexTy

-
-get_type_names((NullIndexTyper)arg1)StringVec :
+
+get_type_names((NullIndexTyper)arg1) StringVec :
C++ signature :

std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > get_type_names(libmolgrid::NullIndexTyper {lvalue})

@@ -2673,8 +2596,8 @@

The NullIndexTy

-
-get_type_radii((NullIndexTyper)arg1)FloatVec :
+
+get_type_radii((NullIndexTyper)arg1) FloatVec :
C++ signature :

std::vector<float, std::allocator<float> > get_type_radii(libmolgrid::NullIndexTyper {lvalue})

@@ -2682,8 +2605,8 @@

The NullIndexTy

-
-num_types((NullIndexTyper)arg1)int :
+
+num_types((NullIndexTyper)arg1) int :
C++ signature :

unsigned int num_types(libmolgrid::NullIndexTyper {lvalue})

@@ -2692,20 +2615,20 @@

The NullIndexTy

-
-
-

The PythonCallbackIndexTyper class

+ +
+

The PythonCallbackIndexTyper class

-
-class molgrid.PythonCallbackIndexTyper((object)arg1, (object)func, (int)num_types[, (list)names=[]])None :
-

Bases: molgrid.molgrid.AtomTyper

+
+class molgrid.PythonCallbackIndexTyper((object)arg1, (object)func, (int)num_types[, (list)names=[]]) None :
+

Bases: molgrid.molgrid.AtomTyper

C++ signature :

void __init__(_object*,boost::python::api::object,unsigned int [,boost::python::list=[]])

-
-get_atom_type_index((PythonCallbackIndexTyper)arg1, (object)arg2)object :
+
+get_atom_type_index((PythonCallbackIndexTyper)arg1, (object)arg2) object :
C++ signature :

std::pair<int, float> get_atom_type_index(PythonCallbackIndexTyper {lvalue},boost::python::api::object)

@@ -2713,8 +2636,8 @@

The PythonCallb

-
-get_type_names((PythonCallbackIndexTyper)arg1)StringVec :
+
+get_type_names((PythonCallbackIndexTyper)arg1) StringVec :
C++ signature :

std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > get_type_names(PythonCallbackIndexTyper {lvalue})

@@ -2722,8 +2645,8 @@

The PythonCallb

-
-num_types((PythonCallbackIndexTyper)arg1)int :
+
+num_types((PythonCallbackIndexTyper)arg1) int :
C++ signature :

unsigned int num_types(PythonCallbackIndexTyper {lvalue})

@@ -2732,20 +2655,20 @@

The PythonCallb

-
-
-

The PythonCallbackVectorTyper class

+ +
+

The PythonCallbackVectorTyper class

-
-class molgrid.PythonCallbackVectorTyper((object)arg1, (object)func, (int)num_types[, (list)names=[]])None :
-

Bases: molgrid.molgrid.AtomTyper

+
+class molgrid.PythonCallbackVectorTyper((object)arg1, (object)func, (int)num_types[, (list)names=[]]) None :
+

Bases: molgrid.molgrid.AtomTyper

C++ signature :

void __init__(_object*,boost::python::api::object,unsigned int [,boost::python::list=[]])

-
-get_atom_type_vector((PythonCallbackVectorTyper)arg1, (object)arg2)tuple :
+
+get_atom_type_vector((PythonCallbackVectorTyper)arg1, (object)arg2) tuple :
C++ signature :

boost::python::tuple get_atom_type_vector(PythonCallbackVectorTyper {lvalue},boost::python::api::object)

@@ -2753,8 +2676,8 @@

The PythonCallb

-
-get_type_names((PythonCallbackVectorTyper)arg1)StringVec :
+
+get_type_names((PythonCallbackVectorTyper)arg1) StringVec :
C++ signature :

std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > get_type_names(PythonCallbackVectorTyper {lvalue})

@@ -2762,8 +2685,8 @@

The PythonCallb

-
-num_types((PythonCallbackVectorTyper)arg1)int :
+
+num_types((PythonCallbackVectorTyper)arg1) int :
C++ signature :

unsigned int num_types(PythonCallbackVectorTyper {lvalue})

@@ -2772,12 +2695,12 @@

The PythonCallb

-
-
-

The Quaternion class

+ +
+

The Quaternion class

-
-class molgrid.Quaternion((object)arg1)None :
+
+class molgrid.Quaternion((object)arg1) None :

Bases: Boost.Python.instance

A CUDA friendly quaternion class. Single precision only @@ -2798,8 +2721,8 @@

The Quaternion<

-
-R_component_1((Quaternion)arg1)float :
+
+R_component_1((Quaternion)arg1) float :
C++ signature :

float R_component_1(libmolgrid::Quaternion {lvalue})

@@ -2807,8 +2730,8 @@

The Quaternion<

-
-R_component_2((Quaternion)arg1)float :
+
+R_component_2((Quaternion)arg1) float :
C++ signature :

float R_component_2(libmolgrid::Quaternion {lvalue})

@@ -2816,8 +2739,8 @@

The Quaternion<

-
-R_component_3((Quaternion)arg1)float :
+
+R_component_3((Quaternion)arg1) float :
C++ signature :

float R_component_3(libmolgrid::Quaternion {lvalue})

@@ -2825,8 +2748,8 @@

The Quaternion<

-
-R_component_4((Quaternion)arg1)float :
+
+R_component_4((Quaternion)arg1) float :
C++ signature :

float R_component_4(libmolgrid::Quaternion {lvalue})

@@ -2834,8 +2757,8 @@

The Quaternion<

-
-conj((Quaternion)arg1)Quaternion :
+
+conj((Quaternion)arg1) Quaternion :
C++ signature :

libmolgrid::Quaternion conj(libmolgrid::Quaternion {lvalue})

@@ -2843,8 +2766,8 @@

The Quaternion<

-
-inverse((Quaternion)arg1)Quaternion :
+
+inverse((Quaternion)arg1) Quaternion :
C++ signature :

libmolgrid::Quaternion inverse(libmolgrid::Quaternion {lvalue})

@@ -2852,8 +2775,8 @@

The Quaternion<

-
-norm((Quaternion)arg1)float :
+
+norm((Quaternion)arg1) float :
C++ signature :

float norm(libmolgrid::Quaternion {lvalue})

@@ -2861,8 +2784,8 @@

The Quaternion<

-
-real((Quaternion)arg1)float :
+
+real((Quaternion)arg1) float :
C++ signature :

float real(libmolgrid::Quaternion {lvalue})

@@ -2870,8 +2793,8 @@

The Quaternion<

-
-rotate((Quaternion)arg1, (float)x, (float)y, (float)z)float3 :
+
+rotate((Quaternion)arg1, (float)x, (float)y, (float)z) float3 :
C++ signature :

float3 rotate(libmolgrid::Quaternion {lvalue},float,float,float)

@@ -2879,8 +2802,8 @@

The Quaternion<

-
-transform((Quaternion)arg1, (float)arg2, (float)arg3, (float)arg4, (float3)arg5, (float3)arg6)float3 :
+
+transform((Quaternion)arg1, (float)arg2, (float)arg3, (float)arg4, (float3)arg5, (float3)arg6) float3 :
C++ signature :

float3 transform(libmolgrid::Quaternion {lvalue},float,float,float,float3,float3)

@@ -2889,12 +2812,12 @@

The Quaternion<

- -
-

The SubsetAtomMapper class

+ +
+

The SubsetAtomMapper class

-
-class molgrid.SubsetAtomMapper((object)arg1, (object)arg2, (bool)arg3)None :
+
+class molgrid.SubsetAtomMapper((object)arg1, (object)arg2, (bool)arg3) None :

Bases: Boost.Python.instance

Map atom types onto a provided subset.

@@ -2927,16 +2850,16 @@

The SubsetAtomM

-

__init__( (object)arg1, (list)map [, (bool)catchall=True [, (StringVec)old_names=<molgrid.molgrid.StringVec object at 0x7f6484a33890>]]) -> object :

+

__init__( (object)arg1, (list)map [, (bool)catchall=True [, (StringVec)old_names=<molgrid.molgrid.StringVec object at 0x7f1eee500200>]]) -> object :

-
C++ signature :

void* __init__(boost::python::api::object,boost::python::list [,bool=True [,std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >=<molgrid.molgrid.StringVec object at 0x7f6484a33890>]])

+
C++ signature :

void* __init__(boost::python::api::object,boost::python::list [,bool=True [,std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >=<molgrid.molgrid.StringVec object at 0x7f1eee500200>]])

-
-get_new_type((SubsetAtomMapper)arg1, (int)arg2)int :
+
+get_new_type((SubsetAtomMapper)arg1, (int)arg2) int :
C++ signature :

int get_new_type(libmolgrid::SubsetAtomMapper {lvalue},unsigned int)

@@ -2944,8 +2867,8 @@

The SubsetAtomM

-
-get_type_names((SubsetAtomMapper)arg1)StringVec :
+
+get_type_names((SubsetAtomMapper)arg1) StringVec :
C++ signature :

std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > get_type_names(libmolgrid::SubsetAtomMapper {lvalue})

@@ -2953,8 +2876,8 @@

The SubsetAtomM

-
-num_types((SubsetAtomMapper)arg1)int :
+
+num_types((SubsetAtomMapper)arg1) int :
C++ signature :

unsigned int num_types(libmolgrid::SubsetAtomMapper {lvalue})

@@ -2963,20 +2886,20 @@

The SubsetAtomM

- -
-

The SubsettedElementTyper class

+ +
+

The SubsettedElementTyper class

-
-class molgrid.SubsettedElementTyper((object)arg1, (list)map[, (bool)catchall=True[, (int)maxe=84]])object :
-

Bases: molgrid.molgrid.AtomTyper

+
+class molgrid.SubsettedElementTyper((object)arg1, (list)map[, (bool)catchall=True[, (int)maxe=84]]) object :
+

Bases: molgrid.molgrid.AtomTyper

C++ signature :

void* __init__(boost::python::api::object,boost::python::list [,bool=True [,unsigned int=84]])

-
-get_atom_type_index((SubsettedElementTyper)arg1, (object)arg2)object :
+
+get_atom_type_index((SubsettedElementTyper)arg1, (object)arg2) object :
C++ signature :

std::pair<int, float> get_atom_type_index(libmolgrid::SubsettedElementTyper {lvalue},OpenBabel::OBAtom*)

@@ -2984,8 +2907,8 @@

The SubsettedEl

-
-get_type_names((SubsettedElementTyper)arg1)StringVec :
+
+get_type_names((SubsettedElementTyper)arg1) StringVec :
C++ signature :

std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > get_type_names(libmolgrid::SubsettedElementTyper {lvalue})

@@ -2993,8 +2916,8 @@

The SubsettedEl

-
-get_type_radii((SubsettedElementTyper)arg1)FloatVec :
+
+get_type_radii((SubsettedElementTyper)arg1) FloatVec :
C++ signature :

std::vector<float, std::allocator<float> > get_type_radii(libmolgrid::SubsettedElementTyper {lvalue})

@@ -3002,8 +2925,8 @@

The SubsettedEl

-
-num_types((SubsettedElementTyper)arg1)int :
+
+num_types((SubsettedElementTyper)arg1) int :
C++ signature :

unsigned int num_types(libmolgrid::SubsettedElementTyper {lvalue})

@@ -3012,12 +2935,12 @@

The SubsettedEl

-
-
-

The Transform class

+ +
+

The Transform class

-
-class molgrid.Transform((object)arg1)None :
+
+class molgrid.Transform((object)arg1) None :

Bases: Boost.Python.instance

Stateful transformation of Cartesian coordinates.

@@ -3063,8 +2986,8 @@

The Transform

-
-backward((Transform)arg1, (Grid2f)in, (Grid2f)out[, (bool)dotranslate=True])None :
+
+backward((Transform)arg1, (Grid2f)in, (Grid2f)out[, (bool)dotranslate=True]) None :

Apply inverse of 3D transformation on CPU.

@@ -3111,8 +3034,8 @@

The Transform

-
-forward((Transform)arg1, (Grid2f)in, (Grid2f)out[, (bool)dotranslate=True])None :
+
+forward((Transform)arg1, (Grid2f)in, (Grid2f)out[, (bool)dotranslate=True]) None :

Apply 3D transformation on CPU. It is safe to transform @@ -3209,8 +3132,8 @@

The Transform

-
-get_quaternion((Transform)arg1)Quaternion :
+
+get_quaternion((Transform)arg1) Quaternion :
C++ signature :

libmolgrid::Quaternion get_quaternion(libmolgrid::Transform {lvalue})

@@ -3218,8 +3141,8 @@

The Transform

-
-get_rotation_center((Transform)arg1)float3 :
+
+get_rotation_center((Transform)arg1) float3 :
C++ signature :

float3 get_rotation_center(libmolgrid::Transform {lvalue})

@@ -3227,8 +3150,8 @@

The Transform

-
-get_translation((Transform)arg1)float3 :
+
+get_translation((Transform)arg1) float3 :
C++ signature :

float3 get_translation(libmolgrid::Transform {lvalue})

@@ -3236,8 +3159,8 @@

The Transform

-
-set_quaternion((Transform)arg1, (Quaternion)arg2)None :
+
+set_quaternion((Transform)arg1, (Quaternion)arg2) None :
C++ signature :

void set_quaternion(libmolgrid::Transform {lvalue},libmolgrid::Quaternion)

@@ -3245,8 +3168,8 @@

The Transform

-
-set_rotation_center((Transform)arg1, (float3)arg2)None :
+
+set_rotation_center((Transform)arg1, (float3)arg2) None :
C++ signature :

void set_rotation_center(libmolgrid::Transform {lvalue},float3)

@@ -3254,8 +3177,8 @@

The Transform

-
-set_translation((Transform)arg1, (float3)arg2)None :
+
+set_translation((Transform)arg1, (float3)arg2) None :
C++ signature :

void set_translation(libmolgrid::Transform {lvalue},float3)

@@ -3264,13 +3187,13 @@

The Transform

-
- -
-

Module contents

+ + +
+

Module contents

-
-molgrid.get_gpu_enabled()bool :
+
+molgrid.get_gpu_enabled() bool :

Get if generated grids are on GPU by default.

C++ signature :

bool get_gpu_enabled()

@@ -3279,8 +3202,8 @@

The Transform

-
-molgrid.read_dx((str)arg1)CartesianGrid :
+
+molgrid.read_dx((str)arg1) CartesianGrid :

Read in dx formatted grid and return initialized grid

@@ -3291,8 +3214,8 @@

The Transform

-
-molgrid.read_dx_grids((str)arg1, (StringVec)arg2, (Grid4f)arg3)None :
+
+molgrid.read_dx_grids((str)arg1, (StringVec)arg2, (Grid4f)arg3) None :

Read multiple grids using type names as a suffix. Grids must be correctly sized

@@ -3313,8 +3236,8 @@

The Transform

-
-molgrid.set_gpu_enabled((bool)arg1)None :
+
+molgrid.set_gpu_enabled((bool)arg1) None :

Set if generated grids should be on GPU by default.

C++ signature :

void set_gpu_enabled(bool)

@@ -3323,8 +3246,8 @@

The Transform

-
-molgrid.set_random_seed((int)arg1)None :
+
+molgrid.set_random_seed((int)arg1) None :
C++ signature :

void set_random_seed(long)

@@ -3332,14 +3255,14 @@

The Transform

-
-molgrid.tonumpy(g)
+
+molgrid.tonumpy(g)

Return a numpy array copy of grid g

-
-molgrid.write_dx((str)file_name, (Grid3f)grid, (float3)center, (float)resolution[, (float)scale=1.0])None :
+
+molgrid.write_dx((str)file_name, (Grid3f)grid, (float3)center, (float)resolution[, (float)scale=1.0]) None :

output grid as dx formatted file Values are multiplied by scale, which may be necessary to adjust for limited precision in the text-based format

@@ -3352,8 +3275,8 @@

The Transform

-
-molgrid.write_dx_grids((str)prefix, (StringVec)type_names, (Grid4f)grid, (float3)center, (float)resolution[, (float)scale=1.0])None :
+
+molgrid.write_dx_grids((str)prefix, (StringVec)type_names, (Grid4f)grid, (float3)center, (float)resolution[, (float)scale=1.0]) None :

Output multiple grids using type names as a suffix.

@@ -3377,65 +3300,49 @@

The Transform

-
-molgrid.write_map((str)file_name, (Grid3f)grid, (float3)center, (float)resolution[, (float)scale=1.0])None :
+
+molgrid.write_map((str)file_name, (Grid3f)grid, (float3)center, (float)resolution[, (float)scale=1.0]) None :
C++ signature :

void write_map(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >,libmolgrid::Grid<float, 3ul, false>,float3,float [,float=1.0])

-
- -
-

Indices and tables

+ + +
+

Indices and tables

-
+ -

-

- © Copyright 2019-2021, David Koes and Jocelyn Sunseri. - -

+

© Copyright 2019-2021, David Koes and Jocelyn Sunseri.

- - - - Built with Sphinx using a - + + Built with Sphinx using a theme - - provided by Read the Docs. + provided by Read the Docs. +
- - - - - - - - - - + \ No newline at end of file diff --git a/docs/python/objects.inv b/docs/python/objects.inv index 45905d4..5c898ce 100644 Binary files a/docs/python/objects.inv and b/docs/python/objects.inv differ diff --git a/docs/python/py-modindex.html b/docs/python/py-modindex.html index 4fec111..2aa7e3f 100644 --- a/docs/python/py-modindex.html +++ b/docs/python/py-modindex.html @@ -1,41 +1,20 @@ - - - - Python Module Index — molgrid documentation - - - - - - - - - - - - - - - + + - - + - - - - + @@ -43,29 +22,13 @@ - - - +
- -
- - -
- - - - - - - - + \ No newline at end of file diff --git a/docs/python/search.html b/docs/python/search.html index cb40e9b..d5bedc4 100644 --- a/docs/python/search.html +++ b/docs/python/search.html @@ -1,71 +1,34 @@ - - - - Search — molgrid documentation - - - - - - - - - - - - - - - + + - - + - - - - - - + + + - - - +
- -
- - -
- - - - - - - - - - + diff --git a/docs/python/searchindex.js b/docs/python/searchindex.js index 704a28e..96c4733 100644 --- a/docs/python/searchindex.js +++ b/docs/python/searchindex.js @@ -1 +1 @@ -Search.setIndex({docnames:["index"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":3,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":2,"sphinx.domains.rst":2,"sphinx.domains.std":2,sphinx:56},filenames:["index.rst"],objects:{"":{molgrid:[0,0,0,"-"]},"molgrid.CartesianGrid":{center:[0,2,1,""],grid:[0,2,1,""],resolution:[0,2,1,""]},"molgrid.CoordinateSet":{center:[0,2,1,""],clone:[0,2,1,""],coords:[0,2,1,""],copyTo:[0,2,1,""],has_indexed_types:[0,2,1,""],has_vector_types:[0,2,1,""],make_vector_types:[0,2,1,""],max_type:[0,2,1,""],num_types:[0,2,1,""],radii:[0,2,1,""],size:[0,2,1,""],src:[0,2,1,""],sum_types:[0,2,1,""],tocpu:[0,2,1,""],togpu:[0,2,1,""],type_index:[0,2,1,""],type_vector:[0,2,1,""]},"molgrid.ElementIndexTyper":{get_atom_type_index:[0,2,1,""],get_type_names:[0,2,1,""],get_type_radii:[0,2,1,""],num_types:[0,2,1,""]},"molgrid.Example":{coord_sets:[0,2,1,""],group:[0,2,1,""],has_index_types:[0,2,1,""],has_vector_types:[0,2,1,""],labels:[0,2,1,""],merge_coordinates:[0,2,1,""],num_coordinates:[0,2,1,""],num_types:[0,2,1,""],seqcont:[0,2,1,""],sum_types:[0,2,1,""],tocpu:[0,2,1,""],togpu:[0,2,1,""]},"molgrid.ExampleProvider":{get_large_epoch_num:[0,2,1,""],get_small_epoch_num:[0,2,1,""],get_type_names:[0,2,1,""],large_epoch_size:[0,2,1,""],next:[0,2,1,""],next_batch:[0,2,1,""],num_labels:[0,2,1,""],num_types:[0,2,1,""],populate:[0,2,1,""],reset:[0,2,1,""],settings:[0,2,1,""],size:[0,2,1,""],small_epoch_size:[0,2,1,""]},"molgrid.ExampleProviderSettings":{add_hydrogens:[0,2,1,""],balanced:[0,2,1,""],cache_structs:[0,2,1,""],data_root:[0,2,1,""],default_batch_size:[0,2,1,""],duplicate_first:[0,2,1,""],group_batch_size:[0,2,1,""],iteration_scheme:[0,2,1,""],labelpos:[0,2,1,""],ligmolcache:[0,2,1,""],make_vector_types:[0,2,1,""],max_group_size:[0,2,1,""],num_copies:[0,2,1,""],recmolcache:[0,2,1,""],shuffle:[0,2,1,""],stratify_abs:[0,2,1,""],stratify_max:[0,2,1,""],stratify_min:[0,2,1,""],stratify_pos:[0,2,1,""],stratify_receptor:[0,2,1,""],stratify_step:[0,2,1,""]},"molgrid.ExampleVec":{append:[0,2,1,""],extend:[0,2,1,""],extract_label:[0,2,1,""],extract_labels:[0,2,1,""],sum_types:[0,2,1,""]},"molgrid.FileAtomMapper":{get_new_type:[0,2,1,""],get_type_names:[0,2,1,""],num_types:[0,2,1,""]},"molgrid.FileMappedElementTyper":{get_atom_type_index:[0,2,1,""],get_type_names:[0,2,1,""],get_type_radii:[0,2,1,""],num_types:[0,2,1,""]},"molgrid.FileMappedGninaTyper":{get_atom_type_index:[0,2,1,""],get_type_names:[0,2,1,""],get_type_radii:[0,2,1,""],num_types:[0,2,1,""]},"molgrid.GninaIndexTyper":{get_atom_type_index:[0,2,1,""],get_type_names:[0,2,1,""],get_type_radii:[0,2,1,""],num_types:[0,2,1,""]},"molgrid.GninaVectorTyper":{get_atom_type_vector:[0,2,1,""],get_type_names:[0,2,1,""],num_types:[0,2,1,""]},"molgrid.GridMaker":{backward:[0,2,1,""],backward_gradients:[0,2,1,""],forward:[0,2,1,""],get_binary:[0,2,1,""],get_dimension:[0,2,1,""],get_radii_type_indexed:[0,2,1,""],get_resolution:[0,2,1,""],grid_dimensions:[0,2,1,""],make_ndarray:[0,2,1,""],make_tensor:[0,2,1,""],set_binary:[0,2,1,""],set_dimension:[0,2,1,""],set_radii_type_indexed:[0,2,1,""],set_resolution:[0,2,1,""],spatial_grid_dimensions:[0,2,1,""],tonumpy:[0,2,1,""]},"molgrid.NullIndexTyper":{get_atom_type_index:[0,2,1,""],get_type_names:[0,2,1,""],get_type_radii:[0,2,1,""],num_types:[0,2,1,""]},"molgrid.PythonCallbackIndexTyper":{get_atom_type_index:[0,2,1,""],get_type_names:[0,2,1,""],num_types:[0,2,1,""]},"molgrid.PythonCallbackVectorTyper":{get_atom_type_vector:[0,2,1,""],get_type_names:[0,2,1,""],num_types:[0,2,1,""]},"molgrid.Quaternion":{R_component_1:[0,2,1,""],R_component_2:[0,2,1,""],R_component_3:[0,2,1,""],R_component_4:[0,2,1,""],conj:[0,2,1,""],inverse:[0,2,1,""],norm:[0,2,1,""],real:[0,2,1,""],rotate:[0,2,1,""],transform:[0,2,1,""]},"molgrid.SubsetAtomMapper":{get_new_type:[0,2,1,""],get_type_names:[0,2,1,""],num_types:[0,2,1,""]},"molgrid.SubsettedElementTyper":{get_atom_type_index:[0,2,1,""],get_type_names:[0,2,1,""],get_type_radii:[0,2,1,""],num_types:[0,2,1,""]},"molgrid.Transform":{backward:[0,2,1,""],forward:[0,2,1,""],get_quaternion:[0,2,1,""],get_rotation_center:[0,2,1,""],get_translation:[0,2,1,""],set_quaternion:[0,2,1,""],set_rotation_center:[0,2,1,""],set_translation:[0,2,1,""]},"molgrid.torch_bindings":{BatchedCoords2GridFunction:[0,1,1,""],Coords2Grid:[0,1,1,""],Coords2GridFunction:[0,1,1,""],Grid2CoordsGradientFunction:[0,1,1,""],MolDataset:[0,1,1,""],make_grid_tensor:[0,3,1,""],tensor_as_grid:[0,3,1,""]},"molgrid.torch_bindings.BatchedCoords2GridFunction":{backward:[0,2,1,""],forward:[0,2,1,""]},"molgrid.torch_bindings.Coords2Grid":{extra_repr:[0,2,1,""],forward:[0,2,1,""],training:[0,4,1,""]},"molgrid.torch_bindings.Coords2GridFunction":{backward:[0,2,1,""],forward:[0,2,1,""]},"molgrid.torch_bindings.Grid2CoordsGradientFunction":{backward:[0,2,1,""],forward:[0,2,1,""]},"molgrid.torch_bindings.MolDataset":{collateMolDataset:[0,2,1,""]},molgrid:{AtomTyper:[0,1,1,""],CartesianGrid:[0,1,1,""],CoordinateSet:[0,1,1,""],ElementIndexTyper:[0,1,1,""],Example:[0,1,1,""],ExampleProvider:[0,1,1,""],ExampleProviderSettings:[0,1,1,""],ExampleVec:[0,1,1,""],FileAtomMapper:[0,1,1,""],FileMappedElementTyper:[0,1,1,""],FileMappedGninaTyper:[0,1,1,""],GninaIndexTyper:[0,1,1,""],GninaVectorTyper:[0,1,1,""],GridMaker:[0,1,1,""],NullIndexTyper:[0,1,1,""],PythonCallbackIndexTyper:[0,1,1,""],PythonCallbackVectorTyper:[0,1,1,""],Quaternion:[0,1,1,""],SubsetAtomMapper:[0,1,1,""],SubsettedElementTyper:[0,1,1,""],Transform:[0,1,1,""],get_gpu_enabled:[0,3,1,""],read_dx:[0,3,1,""],read_dx_grids:[0,3,1,""],set_gpu_enabled:[0,3,1,""],set_random_seed:[0,3,1,""],tonumpy:[0,3,1,""],torch_bindings:[0,0,0,"-"],write_dx:[0,3,1,""],write_dx_grids:[0,3,1,""],write_map:[0,3,1,""]}},objnames:{"0":["py","module","Python module"],"1":["py","class","Python class"],"2":["py","method","Python method"],"3":["py","function","Python function"],"4":["py","attribute","Python attribute"]},objtypes:{"0":"py:module","1":"py:class","2":"py:method","3":"py:function","4":"py:attribute"},terms:{"":[],"0x7f1b74d0e9e0":[],"0x7f1b74d0ec80":[],"0x7f27c5a4e890":[],"0x7f27c5a4eb30":[],"0x7f36c8f7a9e0":[],"0x7f36c8f7ac80":[],"0x7f504af4e0b0":[],"0x7f504af4e200":[],"0x7f51cd21d810":[],"0x7f51cd21d930":[],"0x7f525c565870":[],"0x7f525c565990":[],"0x7f58576ce890":[],"0x7f58576ceb30":[],"0x7f6484a33890":0,"0x7f6484a33ac0":0,"0x7f6a55d859e0":[],"0x7f6a55d85c80":[],"0x7f84074349e0":[],"0x7f8407434c80":[],"0x7f8ac6cdc870":[],"0x7f8ac6cdc990":[],"0x7fc028287890":[],"0x7fc028287b30":[],"0x7fd798cf9a50":[],"0x7fd798cf9ac0":[],"0x7fe7e7c7b9e0":[],"0x7fe7e7c7bc80":[],"0x7fe9352d8450":[],"0x7fe9352d8570":[],"0x7feee3930870":[],"0x7feee3930990":[],"1ul":0,"2ul":0,"3ul":0,"4ul":0,"5ul":0,"6ul":[],"7ul":[],"8ul":[],"boolean":0,"case":0,"char":0,"const":[],"default":0,"enum":[],"float":0,"function":0,"int":0,"long":0,"return":0,"static":0,"true":0,"void":0,"while":0,There:0,These:0,__cxx11:0,__init__:0,_object:0,_root:0,about:0,absolut:0,accept:0,acceptor:0,accumul:0,across:0,add_hydrogen:0,addit:0,adjust:0,affin:0,afterward:0,all:0,alloc:0,altern:0,although:0,alwai:0,amount:0,ani:0,api:0,append:0,appli:0,appropri:0,arg10:0,arg11:0,arg1:0,arg2:0,arg3:0,arg4:0,arg5:0,arg6:0,arg7:0,arg8:0,arg9:0,arg:0,argument:0,aromat:0,around:0,arrai:0,assign:0,atom:0,atom_diffdiff:0,atomic_gradi:0,auto:0,autodock4:0,autograd:0,avail:0,backpropag:0,backward:0,backward_gradi:0,balanc:0,base:0,basic_str:0,batch:0,batch_siz:0,batchedcoords2gridfunct:0,been:0,befor:0,begin:0,bin:0,binari:0,bool:0,boost:0,both:0,bx3:0,bxn:0,bxnx3:0,bxnxt:0,bxt:0,cache_struct:0,calcul:0,call:0,can:0,cannot:0,care:0,cartesian:0,catchal:0,center:0,chang:0,char_trait:0,chem:0,clone:0,collate_fn:0,collatemoldataset:0,collect:0,column:0,combin:0,complet:0,comput:0,configur:0,conj:0,consist:0,construct:0,contain:0,continu:[],control:0,convert:0,coord:0,coord_set:0,coordin:0,coordinatesetvec:[],coords2grid:0,coords2gridfunct:0,copi:0,copyfrom:[],copyto:0,correctli:0,correspond:0,cpu:0,creat:0,ctx:0,cuda:0,custom:0,data:0,data_root:0,dataload:0,dataset:0,decompos:0,default_batch_s:0,defin:0,dens:0,densiti:0,depend:0,desir:0,detect:0,determin:0,dict:0,diff:0,diffdiff:0,differ:0,dimens:0,directli:0,doesn:0,donor:0,dotransl:0,doubl:[],doubleptr:[],due:0,duplicate_first:0,each:0,either:0,element:0,encod:0,end:0,entireti:0,epoch:0,equal:0,eventu:0,everi:0,examplerefprovid:0,exampleset:0,except:0,exist:0,extend:0,extern:0,extra:0,extra_repr:0,extract:0,extract_label:0,extractor:0,factor:0,fals:0,faster:0,few:0,file:0,file_nam:0,filenam:0,fill_zero:[],first:0,fit:0,float3:0,floatptr:[],floatvec:0,fname:0,follow:0,form:0,format:0,former:0,forward:0,friendli:0,from:0,func:0,gaussian_radius_multipl:0,gener:0,get:0,get_atom_type_index:0,get_atom_type_vector:0,get_binari:0,get_dimens:0,get_gpu_en:0,get_large_epoch_num:0,get_new_typ:0,get_quaternion:0,get_radii_type_index:0,get_resolut:0,get_rotation_cent:0,get_small_epoch_num:0,get_transl:0,get_type_nam:0,get_type_radii:0,given:0,gmaker:0,gnina:0,gpu:0,grad_coord:0,grad_typ:0,gradient:0,graph:0,greater:0,grid1d:[],grid1dcuda:[],grid1f:0,grid1fcuda:0,grid2coordsgradientfunct:0,grid2d:[],grid2dcuda:[],grid2f:0,grid2fcuda:0,grid3d:[],grid3dcuda:[],grid3f:0,grid3fcuda:0,grid4d:[],grid4dcuda:[],grid4f:0,grid4fcuda:0,grid5d:[],grid5dcuda:[],grid5f:0,grid5fcuda:0,grid6d:[],grid6dcuda:[],grid6f:[],grid6fcuda:[],grid7d:[],grid7dcuda:[],grid7f:[],grid7fcuda:[],grid8d:[],grid8dcuda:[],grid8f:[],grid8fcuda:[],grid:0,grid_cent:0,grid_dimens:0,grid_gradi:0,group:0,group_batch_s:0,has:0,has_group:[],has_index_typ:0,has_indexed_typ:0,has_vector_typ:0,have:0,hing:0,home:0,hook:0,hot:0,how:0,hydrophob:0,ignor:0,implement:0,impos:0,includ:0,include_dummy_typ:0,index:0,individu:0,inform:0,initi:0,input:0,instanc:0,instanti:0,instead:0,integ:0,interpol:0,invalid:0,invers:0,iter:0,iteration_schem:0,iterationschem:[],its:0,kei:0,keyword:0,kind:0,kwarg:0,kwd:0,label:0,labelpo:0,larg:0,large_epoch_s:0,largeepoch:[],last:0,latter:0,layer:0,least:0,length:0,lig:0,ligand:0,ligmolcach:0,limit:0,line:0,list:0,load:0,locat:0,look:0,loss:0,lvalu:0,mai:0,make_grid_ndarrai:[],make_grid_tensor:0,make_ndarrai:0,make_tensor:0,make_vector_typ:0,managedgrid:0,managedgridbas:[],map:0,mappabl:0,mapper:0,match:0,max:0,max_group_s:0,max_typ:0,maximum:0,mean:0,memori:0,merge_coordin:0,method:0,mgrid1d:[],mgrid1f:[],mgrid2d:[],mgrid2f:[],mgrid3d:[],mgrid3f:0,mgrid4d:[],mgrid4f:[],mgrid5d:[],mgrid5f:[],mgrid6d:[],mgrid6f:[],mgrid7d:[],mgrid7f:[],mgrid8d:[],mgrid8f:[],min:0,minimum:0,molcache2:0,moldataset:0,molecul:0,molecular:0,molgriddataset:0,most:0,multi:0,multipl:0,multipli:0,must:0,name:0,necessari:0,need:0,neg:0,next:0,next_batch:0,non:0,none:0,norm:0,normal:0,note:0,num_coordin:0,num_copi:0,num_label:0,num_typ:0,number:0,numer:0,numpi:0,nx3:0,nxl:0,nxt:0,obatom:0,object:0,obmol:0,old_nam:0,onc:0,oncpu:[],one:0,ongpu:[],onli:0,onto:0,openbabel:0,option:0,order:0,organ:0,origin:0,out:0,output:0,over:0,overlap:0,overridden:0,overwritten:0,own:0,pad:0,pair:0,param:0,paramet:0,pass:0,path:0,perform:0,place:0,pleas:0,pointer:[],popul:0,posit:0,precalcul:0,precis:0,prefix:0,print:0,prior:0,probabl:0,produc:0,properli:0,properti:0,proton:0,provid:0,pytorch:0,quantiti:0,quit:0,r_component_1:0,r_component_2:0,r_component_3:0,r_component_4:0,radii:0,radii_type_index:0,radiu:0,radius_scal:0,radius_type_index:0,rais:0,random:0,random_rot:0,random_transl:0,randomli:0,rang:0,read:0,read_dx:0,read_dx_grid:0,real:0,rec:0,receptor:0,recip:0,recmolcach:0,reduc:0,regist:0,remain:0,repeatedli:0,repres:0,represent:0,requir:0,reset:0,resolut:0,result:0,retain:0,rotat:0,run:0,safe:0,same:0,sampl:0,scale:0,second:0,see:0,seen:0,select:[],separ:0,seqcont:0,seri:0,set:0,set_binari:0,set_dimens:0,set_gpu_en:0,set_quaternion:0,set_radii_type_index:0,set_random_se:0,set_resolut:0,set_rotation_cent:0,set_transl:0,shape:[],should:0,shuffl:0,signatur:0,silent:0,sinc:0,singl:0,size:0,sizevec:[],slice:0,small:0,small_epoch_s:0,smallepoch:[],some:0,space:0,spatial_grid_dimens:0,special:0,specif:0,specifi:0,src:0,start:0,state:0,std:0,step:0,store:0,str:0,stratif:0,stratifi:0,stratify_ab:0,stratify_max:0,stratify_min:0,stratify_po:0,stratify_receptor:0,stratify_step:0,string:0,stringvec:0,subclass:0,subset:0,subsettedgninatyp:[],suffix:0,sum:0,sum_typ:0,support:0,t_co:0,take:0,tensor:0,tensor_as_grid:0,text:0,than:0,them:0,thi:0,through:0,time:0,tocpu:0,todoubleptr:[],tofloatptr:[],togeth:0,togpu:0,tonumpi:0,torch:0,train:0,translat:0,tupl:0,tutori:0,type:0,type_diffdiff:0,type_gradi:0,type_index:0,type_nam:0,type_radii:0,type_vector:0,typenam:0,typer:0,typesfromradii:[],typic:0,uniformli:0,uniqu:0,unique_index_typ:0,unique_indexed_typ:0,unique_typ:0,univers:0,unsign:0,use:0,use_covalent_radiu:0,used:0,uses:0,using:0,util:0,valu:0,variant:0,vector:0,versa:0,vice:0,view:0,when:0,where:0,whether:0,which:0,within:0,without:0,wrapper:0,write_dx:0,write_dx_grid:0,write_map:0,you:0,your:0,zero:0},titles:["libmolgrid Python documentation"],titleterms:{"class":0,The:0,atomtyp:0,cartesiangrid:0,content:0,coordinateset:0,doc:0,document:0,elementindextyp:0,exampl:0,exampleprovid:0,exampleproviderset:0,examplevec:0,fileatommapp:0,filemappedelementtyp:0,filemappedgninatyp:0,gninaindextyp:0,gninavectortyp:0,gridmak:0,indic:0,libmolgrid:0,modul:0,molgrid:0,nullindextyp:0,python:0,pythoncallbackindextyp:0,pythoncallbackvectortyp:0,quaternion:0,subsetatommapp:0,subsettedelementtyp:0,tabl:0,torch_bind:0,transform:0}}) \ No newline at end of file +Search.setIndex({docnames:["index"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":4,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":3,"sphinx.domains.rst":2,"sphinx.domains.std":2,sphinx:56},filenames:["index.rst"],objects:{"":[[0,0,0,"-","molgrid"]],"molgrid.CartesianGrid":[[0,2,1,"","center"],[0,2,1,"","grid"],[0,2,1,"","resolution"]],"molgrid.CoordinateSet":[[0,2,1,"","center"],[0,2,1,"","clone"],[0,3,1,"","coords"],[0,2,1,"","copyTo"],[0,2,1,"","has_indexed_types"],[0,2,1,"","has_vector_types"],[0,2,1,"","make_vector_types"],[0,3,1,"","max_type"],[0,2,1,"","num_types"],[0,3,1,"","radii"],[0,2,1,"","size"],[0,3,1,"","src"],[0,2,1,"","sum_types"],[0,2,1,"","tocpu"],[0,2,1,"","togpu"],[0,3,1,"","type_index"],[0,3,1,"","type_vector"]],"molgrid.ElementIndexTyper":[[0,2,1,"","get_atom_type_index"],[0,2,1,"","get_type_names"],[0,2,1,"","get_type_radii"],[0,2,1,"","num_types"]],"molgrid.Example":[[0,3,1,"","coord_sets"],[0,3,1,"","group"],[0,2,1,"","has_index_types"],[0,2,1,"","has_vector_types"],[0,3,1,"","labels"],[0,2,1,"","merge_coordinates"],[0,2,1,"","num_coordinates"],[0,2,1,"","num_types"],[0,3,1,"","seqcont"],[0,2,1,"","sum_types"],[0,2,1,"","tocpu"],[0,2,1,"","togpu"]],"molgrid.ExampleProvider":[[0,2,1,"","get_large_epoch_num"],[0,2,1,"","get_small_epoch_num"],[0,2,1,"","get_type_names"],[0,2,1,"","large_epoch_size"],[0,2,1,"","next"],[0,2,1,"","next_batch"],[0,2,1,"","num_labels"],[0,2,1,"","num_types"],[0,2,1,"","populate"],[0,2,1,"","reset"],[0,2,1,"","settings"],[0,2,1,"","size"],[0,2,1,"","small_epoch_size"]],"molgrid.ExampleProviderSettings":[[0,3,1,"","add_hydrogens"],[0,3,1,"","balanced"],[0,3,1,"","cache_structs"],[0,3,1,"","data_root"],[0,3,1,"","default_batch_size"],[0,3,1,"","duplicate_first"],[0,3,1,"","group_batch_size"],[0,3,1,"","iteration_scheme"],[0,3,1,"","labelpos"],[0,3,1,"","ligmolcache"],[0,3,1,"","make_vector_types"],[0,3,1,"","max_group_size"],[0,3,1,"","num_copies"],[0,3,1,"","recmolcache"],[0,3,1,"","shuffle"],[0,3,1,"","stratify_abs"],[0,3,1,"","stratify_max"],[0,3,1,"","stratify_min"],[0,3,1,"","stratify_pos"],[0,3,1,"","stratify_receptor"],[0,3,1,"","stratify_step"]],"molgrid.ExampleVec":[[0,2,1,"","append"],[0,2,1,"","extend"],[0,2,1,"","extract_label"],[0,2,1,"","extract_labels"],[0,2,1,"","sum_types"]],"molgrid.FileAtomMapper":[[0,2,1,"","get_new_type"],[0,2,1,"","get_type_names"],[0,2,1,"","num_types"]],"molgrid.FileMappedElementTyper":[[0,2,1,"","get_atom_type_index"],[0,2,1,"","get_type_names"],[0,2,1,"","get_type_radii"],[0,2,1,"","num_types"]],"molgrid.FileMappedGninaTyper":[[0,2,1,"","get_atom_type_index"],[0,2,1,"","get_type_names"],[0,2,1,"","get_type_radii"],[0,2,1,"","num_types"]],"molgrid.GninaIndexTyper":[[0,2,1,"","get_atom_type_index"],[0,2,1,"","get_type_names"],[0,2,1,"","get_type_radii"],[0,2,1,"","num_types"]],"molgrid.GninaVectorTyper":[[0,2,1,"","get_atom_type_vector"],[0,2,1,"","get_type_names"],[0,2,1,"","num_types"]],"molgrid.GridMaker":[[0,2,1,"","backward"],[0,2,1,"","backward_gradients"],[0,2,1,"","forward"],[0,2,1,"","get_binary"],[0,2,1,"","get_dimension"],[0,2,1,"","get_radii_type_indexed"],[0,2,1,"","get_resolution"],[0,2,1,"","grid_dimensions"],[0,2,1,"","make_ndarray"],[0,2,1,"","make_tensor"],[0,2,1,"","set_binary"],[0,2,1,"","set_dimension"],[0,2,1,"","set_radii_type_indexed"],[0,2,1,"","set_resolution"],[0,2,1,"","spatial_grid_dimensions"],[0,2,1,"","tonumpy"]],"molgrid.NullIndexTyper":[[0,2,1,"","get_atom_type_index"],[0,2,1,"","get_type_names"],[0,2,1,"","get_type_radii"],[0,2,1,"","num_types"]],"molgrid.PythonCallbackIndexTyper":[[0,2,1,"","get_atom_type_index"],[0,2,1,"","get_type_names"],[0,2,1,"","num_types"]],"molgrid.PythonCallbackVectorTyper":[[0,2,1,"","get_atom_type_vector"],[0,2,1,"","get_type_names"],[0,2,1,"","num_types"]],"molgrid.Quaternion":[[0,2,1,"","R_component_1"],[0,2,1,"","R_component_2"],[0,2,1,"","R_component_3"],[0,2,1,"","R_component_4"],[0,2,1,"","conj"],[0,2,1,"","inverse"],[0,2,1,"","norm"],[0,2,1,"","real"],[0,2,1,"","rotate"],[0,2,1,"","transform"]],"molgrid.SubsetAtomMapper":[[0,2,1,"","get_new_type"],[0,2,1,"","get_type_names"],[0,2,1,"","num_types"]],"molgrid.SubsettedElementTyper":[[0,2,1,"","get_atom_type_index"],[0,2,1,"","get_type_names"],[0,2,1,"","get_type_radii"],[0,2,1,"","num_types"]],"molgrid.Transform":[[0,2,1,"","backward"],[0,2,1,"","forward"],[0,2,1,"","get_quaternion"],[0,2,1,"","get_rotation_center"],[0,2,1,"","get_translation"],[0,2,1,"","set_quaternion"],[0,2,1,"","set_rotation_center"],[0,2,1,"","set_translation"]],"molgrid.torch_bindings":[[0,1,1,"","BatchedCoords2GridFunction"],[0,1,1,"","Coords2Grid"],[0,1,1,"","Coords2GridFunction"],[0,1,1,"","Grid2CoordsGradientFunction"],[0,1,1,"","MolDataset"],[0,4,1,"","make_grid_tensor"],[0,4,1,"","tensor_as_grid"]],"molgrid.torch_bindings.BatchedCoords2GridFunction":[[0,2,1,"","backward"],[0,2,1,"","forward"]],"molgrid.torch_bindings.Coords2Grid":[[0,2,1,"","extra_repr"],[0,2,1,"","forward"],[0,5,1,"","training"]],"molgrid.torch_bindings.Coords2GridFunction":[[0,2,1,"","backward"],[0,2,1,"","forward"]],"molgrid.torch_bindings.Grid2CoordsGradientFunction":[[0,2,1,"","backward"],[0,2,1,"","forward"]],"molgrid.torch_bindings.MolDataset":[[0,2,1,"","collateMolDataset"]],molgrid:[[0,1,1,"","AtomTyper"],[0,1,1,"","CartesianGrid"],[0,1,1,"","CoordinateSet"],[0,1,1,"","ElementIndexTyper"],[0,1,1,"","Example"],[0,1,1,"","ExampleProvider"],[0,1,1,"","ExampleProviderSettings"],[0,1,1,"","ExampleVec"],[0,1,1,"","FileAtomMapper"],[0,1,1,"","FileMappedElementTyper"],[0,1,1,"","FileMappedGninaTyper"],[0,1,1,"","GninaIndexTyper"],[0,1,1,"","GninaVectorTyper"],[0,1,1,"","GridMaker"],[0,1,1,"","NullIndexTyper"],[0,1,1,"","PythonCallbackIndexTyper"],[0,1,1,"","PythonCallbackVectorTyper"],[0,1,1,"","Quaternion"],[0,1,1,"","SubsetAtomMapper"],[0,1,1,"","SubsettedElementTyper"],[0,1,1,"","Transform"],[0,4,1,"","get_gpu_enabled"],[0,4,1,"","read_dx"],[0,4,1,"","read_dx_grids"],[0,4,1,"","set_gpu_enabled"],[0,4,1,"","set_random_seed"],[0,4,1,"","tonumpy"],[0,0,0,"-","torch_bindings"],[0,4,1,"","write_dx"],[0,4,1,"","write_dx_grids"],[0,4,1,"","write_map"]]},objnames:{"0":["py","module","Python module"],"1":["py","class","Python class"],"2":["py","method","Python method"],"3":["py","property","Python property"],"4":["py","function","Python function"],"5":["py","attribute","Python attribute"]},objtypes:{"0":"py:module","1":"py:class","2":"py:method","3":"py:property","4":"py:function","5":"py:attribute"},terms:{"0":0,"0x7f1eee500200":0,"0x7f1eee500350":0,"1":0,"1d":0,"1ul":0,"23":0,"2d":0,"2ul":0,"3d":0,"3ul":0,"4d":0,"4ul":0,"5":0,"5d":0,"5ul":0,"84":0,"boolean":0,"case":0,"char":0,"default":0,"do":0,"float":0,"function":0,"int":0,"long":0,"return":0,"static":0,"true":0,"void":0,"while":0,A:0,In:0,It:0,There:0,These:0,To:0,_:0,__cxx11:0,__init__:0,_object:0,_root:0,about:0,absolut:0,accept:0,acceptor:0,accumul:0,across:0,add_hydrogen:0,addit:0,adjust:0,affin:0,afterward:0,all:0,alloc:0,altern:0,although:0,alwai:0,amount:0,an:0,ani:0,api:0,append:0,appli:0,appropri:0,ar:0,arg10:0,arg11:0,arg1:0,arg2:0,arg3:0,arg4:0,arg5:0,arg6:0,arg7:0,arg8:0,arg9:0,arg:0,argument:0,aromat:0,around:0,arrai:0,assign:0,atom:0,atom_diffdiff:0,atomic_gradi:0,auto:0,autodock4:0,autograd:0,avail:0,backpropag:0,backward:0,backward_gradi:0,balanc:0,base:0,basic_str:0,batch:0,batch_siz:0,batchedcoords2gridfunct:0,been:0,befor:0,begin:0,bin:0,binari:0,bool:0,boost:0,both:0,bx3:0,bxn:0,bxnx3:0,bxnxt:0,bxt:0,c:0,cache_struct:0,calcul:0,call:0,can:0,cannot:0,care:0,cartesian:0,catchal:0,center:0,chang:0,char_trait:0,chem:0,clone:0,collate_fn:0,collatemoldataset:0,collect:0,column:0,combin:0,complet:0,comput:0,configur:0,conj:0,consist:0,construct:0,contain:0,continu:0,control:0,convert:0,coord:0,coord_set:0,coordin:0,coords2grid:0,coords2gridfunct:0,copi:0,copyto:0,correctli:0,correspond:0,cpu:0,creat:0,ctx:0,cuda:0,custom:0,data:0,data_root:0,dataload:0,dataset:0,decompos:0,default_batch_s:0,defin:0,dens:0,densiti:0,depend:0,desir:0,detect:0,determin:0,dict:0,diff:0,diffdiff:0,differ:0,dimens:0,directli:0,doesn:0,donor:0,dotransl:0,due:0,duplicate_first:0,dx:0,e:0,each:0,either:0,element:0,encod:0,end:0,entireti:0,epoch:0,equal:0,eventu:0,everi:0,examplerefprovid:0,exampleset:0,except:0,exist:0,extend:0,extern:0,extra:0,extra_repr:0,extract:0,extract_label:0,extractor:0,factor:0,fals:0,faster:0,few:0,file:0,file_nam:0,filenam:0,first:0,fit:0,float3:0,floatvec:0,fname:0,follow:0,form:0,format:0,former:0,forward:0,friendli:0,from:0,func:0,g:0,gaussian_radius_multipl:0,gener:0,get:0,get_atom_type_index:0,get_atom_type_vector:0,get_binari:0,get_dimens:0,get_gpu_en:0,get_large_epoch_num:0,get_new_typ:0,get_quaternion:0,get_radii_type_index:0,get_resolut:0,get_rotation_cent:0,get_small_epoch_num:0,get_transl:0,get_type_nam:0,get_type_radii:0,given:0,gmaker:0,gnina:0,gpu:0,grad_coord:0,grad_typ:0,gradient:0,graph:0,greater:0,grid1f:0,grid1fcuda:0,grid2coordsgradientfunct:0,grid2f:0,grid2fcuda:0,grid3f:0,grid3fcuda:0,grid4f:0,grid4fcuda:0,grid5f:0,grid5fcuda:0,grid:0,grid_cent:0,grid_dimens:0,grid_gradi:0,group:0,group_batch_s:0,ha:0,has_index_typ:0,has_indexed_typ:0,has_vector_typ:0,have:0,hing:0,home:0,hook:0,hot:0,how:0,hydrophob:0,id:0,ignor:0,implement:0,impos:0,includ:0,include_dummy_typ:0,index:0,individu:0,inform:0,initi:0,input:0,instanc:0,instanti:0,instead:0,integ:0,interpol:0,invalid:0,invers:0,iter:0,iteration_schem:0,its:0,kei:0,keyword:0,kind:0,kwarg:0,kwd:0,label:0,labelpo:0,larg:0,large_epoch_s:0,largeepoch:0,largest:0,last:0,latter:0,layer:0,least:0,length:0,lig:0,ligand:0,ligmolcach:0,limit:0,line:0,list:0,load:0,locat:0,look:0,loss:0,lvalu:0,mai:0,make_grid_tensor:0,make_ndarrai:0,make_tensor:0,make_vector_typ:0,managedgrid:0,map:0,mappabl:0,mapper:0,match:0,max:0,max_group_s:0,max_typ:0,maximum:0,mean:0,memori:0,merge_coordin:0,method:0,mgrid3f:0,min:0,minimum:0,molcache2:0,moldataset:0,molecul:0,molecular:0,molgriddataset:0,most:0,multi:0,multipl:0,multipli:0,must:0,n:0,name:0,necessari:0,need:0,neg:0,next:0,next_batch:0,nn:0,non:0,none:0,norm:0,normal:0,note:0,num_coordin:0,num_copi:0,num_label:0,num_typ:0,number:0,numer:0,numpi:0,nx3:0,nxl:0,nxt:0,obatom:0,object:0,obmol:0,old_nam:0,onc:0,one:0,onli:0,onto:0,openbabel:0,option:0,order:0,organ:0,origin:0,out:0,output:0,over:0,overlap:0,overridden:0,overwritten:0,own:0,pad:0,pair:0,param:0,paramet:0,pass:0,path:0,perform:0,place:0,pleas:0,popul:0,posit:0,precalcul:0,precis:0,prefix:0,print:0,prior:0,probabl:0,produc:0,properli:0,properti:0,proton:0,provid:0,pytorch:0,quantiti:0,quit:0,r_component_1:0,r_component_2:0,r_component_3:0,r_component_4:0,radii:0,radii_type_index:0,radiu:0,radius_scal:0,radius_type_index:0,rais:0,random:0,random_rot:0,random_transl:0,randomli:0,rang:0,re:0,read:0,read_dx:0,read_dx_grid:0,real:0,rec:0,receptor:0,recip:0,recmolcach:0,reduc:0,regist:0,remain:0,repeatedli:0,repres:0,represent:0,requir:0,reset:0,resolut:0,result:0,retain:0,rotat:0,run:0,s:0,safe:0,same:0,sampl:0,scale:0,second:0,see:0,seen:0,separ:0,seqcont:0,seri:0,set:0,set_binari:0,set_dimens:0,set_gpu_en:0,set_quaternion:0,set_radii_type_index:0,set_random_se:0,set_resolut:0,set_rotation_cent:0,set_transl:0,should:0,shuffl:0,signatur:0,silent:0,sinc:0,singl:0,size:0,slice:0,small:0,small_epoch_s:0,smallepoch:0,so:0,some:0,sourc:0,space:0,spatial_grid_dimens:0,special:0,specif:0,specifi:0,src:0,start:0,state:0,std:0,step:0,store:0,str:0,stratif:0,stratifi:0,stratify_ab:0,stratify_max:0,stratify_min:0,stratify_po:0,stratify_receptor:0,stratify_step:0,string:0,stringvec:0,subclass:0,subset:0,suffix:0,sum:0,sum_typ:0,support:0,t:0,take:0,tensor:0,tensor_as_grid:0,text:0,than:0,them:0,thi:0,through:0,time:0,tocpu:0,togeth:0,togpu:0,tonumpi:0,torch:0,train:0,translat:0,tupl:0,tutori:0,type:0,type_diffdiff:0,type_gradi:0,type_index:0,type_nam:0,type_radii:0,type_vector:0,typenam:0,typer:0,typic:0,uniformli:0,uniqu:0,unique_index_typ:0,unique_indexed_typ:0,unique_typ:0,univers:0,unsign:0,us:0,use_covalent_radiu:0,util:0,valu:0,variant:0,vector:0,versa:0,vice:0,view:0,when:0,where:0,whether:0,which:0,within:0,without:0,wrapper:0,write_dx:0,write_dx_grid:0,write_map:0,x:0,y:0,you:0,your:0,z:0,zero:0},titles:["libmolgrid Python documentation"],titleterms:{"class":0,The:0,atomtyp:0,cartesiangrid:0,content:0,coordinateset:0,doc:0,document:0,elementindextyp:0,exampl:0,exampleprovid:0,exampleproviderset:0,examplevec:0,fileatommapp:0,filemappedelementtyp:0,filemappedgninatyp:0,gninaindextyp:0,gninavectortyp:0,gridmak:0,indic:0,libmolgrid:0,modul:0,molgrid:0,nullindextyp:0,python:0,pythoncallbackindextyp:0,pythoncallbackvectortyp:0,quaternion:0,subsetatommapp:0,subsettedelementtyp:0,tabl:0,torch_bind:0,transform:0}}) \ No newline at end of file diff --git a/include/libmolgrid/exampleref_providers.h b/include/libmolgrid/exampleref_providers.h index 29ce2de..6fde786 100644 --- a/include/libmolgrid/exampleref_providers.h +++ b/include/libmolgrid/exampleref_providers.h @@ -385,7 +385,7 @@ class ValueStratifiedExampleRefProfider: public ExampleRefProvider tmp.back().setup(); } else { - log(INFO) << "Empty bucket " << i; + log(INFO) << "Empty bucket " << i << " when stratifying by value - check your ranges and data distribution.\n"; } } swap(examples,tmp);