Skip to content

Instantly share code, notes, and snippets.

@JPrevost
Last active January 17, 2019 18:52
Show Gist options
  • Save JPrevost/73114e95ad4d038ea1444950cd135bb0 to your computer and use it in GitHub Desktop.
Save JPrevost/73114e95ad4d038ea1444950cd135bb0 to your computer and use it in GitHub Desktop.
timdex_docs_widdershins_slate
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta content="IE=edge,chrome=1" http-equiv="X-UA-Compatible">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<title>MIT Libraries Discovery API</title>
<style>
</style>
<style media="screen">/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
/**
* 1. Set default font family to sans-serif.
* 2. Prevent iOS text size adjust after orientation change, without disabling
* user zoom.
*/
html {
font-family: sans-serif;
/* 1 */
-ms-text-size-adjust: 100%;
/* 2 */
-webkit-text-size-adjust: 100%;
/* 2 */ }
/**
* Remove default margin.
*/
body {
margin: 0; }
/* HTML5 display definitions
========================================================================== */
/**
* Correct `block` display not defined for any HTML5 element in IE 8/9.
* Correct `block` display not defined for `details` or `summary` in IE 10/11
* and Firefox.
* Correct `block` display not defined for `main` in IE 11.
*/
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
display: block; }
/**
* 1. Correct `inline-block` display not defined in IE 8/9.
* 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
*/
audio,
canvas,
progress,
video {
display: inline-block;
/* 1 */
vertical-align: baseline;
/* 2 */ }
/**
* Prevent modern browsers from displaying `audio` without controls.
* Remove excess height in iOS 5 devices.
*/
audio:not([controls]) {
display: none;
height: 0; }
/**
* Address `[hidden]` styling not present in IE 8/9/10.
* Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
*/
[hidden],
template {
display: none; }
/* Links
========================================================================== */
/**
* Remove the gray background color from active links in IE 10.
*/
a {
background-color: transparent; }
/**
* Improve readability when focused and also mouse hovered in all browsers.
*/
a:active,
a:hover {
outline: 0; }
/* Text-level semantics
========================================================================== */
/**
* Address styling not present in IE 8/9/10/11, Safari, and Chrome.
*/
abbr[title] {
border-bottom: 1px dotted; }
/**
* Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
*/
b,
strong {
font-weight: bold; }
/**
* Address styling not present in Safari and Chrome.
*/
dfn {
font-style: italic; }
/**
* Address variable `h1` font-size and margin within `section` and `article`
* contexts in Firefox 4+, Safari, and Chrome.
*/
h1 {
font-size: 2em;
margin: 0.67em 0; }
/**
* Address styling not present in IE 8/9.
*/
mark {
background: #ff0;
color: #000; }
/**
* Address inconsistent and variable font size in all browsers.
*/
small {
font-size: 80%; }
/**
* Prevent `sub` and `sup` affecting `line-height` in all browsers.
*/
sub,
sup {
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline; }
sup {
top: -0.5em; }
sub {
bottom: -0.25em; }
/* Embedded content
========================================================================== */
/**
* Remove border when inside `a` element in IE 8/9/10.
*/
img {
border: 0; }
/**
* Correct overflow not hidden in IE 9/10/11.
*/
svg:not(:root) {
overflow: hidden; }
/* Grouping content
========================================================================== */
/**
* Address margin not present in IE 8/9 and Safari.
*/
figure {
margin: 1em 40px; }
/**
* Address differences between Firefox and other browsers.
*/
hr {
-moz-box-sizing: content-box;
box-sizing: content-box;
height: 0; }
/**
* Contain overflow in all browsers.
*/
pre {
overflow: auto; }
/**
* Address odd `em`-unit font size rendering in all browsers.
*/
code,
kbd,
pre,
samp {
font-family: monospace, monospace;
font-size: 1em; }
/* Forms
========================================================================== */
/**
* Known limitation: by default, Chrome and Safari on OS X allow very limited
* styling of `select`, unless a `border` property is set.
*/
/**
* 1. Correct color not being inherited.
* Known issue: affects color of disabled elements.
* 2. Correct font properties not being inherited.
* 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
*/
button,
input,
optgroup,
select,
textarea {
color: inherit;
/* 1 */
font: inherit;
/* 2 */
margin: 0;
/* 3 */ }
/**
* Address `overflow` set to `hidden` in IE 8/9/10/11.
*/
button {
overflow: visible; }
/**
* Address inconsistent `text-transform` inheritance for `button` and `select`.
* All other form control elements do not inherit `text-transform` values.
* Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
* Correct `select` style inheritance in Firefox.
*/
button,
select {
text-transform: none; }
/**
* 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
* and `video` controls.
* 2. Correct inability to style clickable `input` types in iOS.
* 3. Improve usability and consistency of cursor style between image-type
* `input` and others.
*/
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
-webkit-appearance: button;
/* 2 */
cursor: pointer;
/* 3 */ }
/**
* Re-set default cursor for disabled elements.
*/
button[disabled],
html input[disabled] {
cursor: default; }
/**
* Remove inner padding and border in Firefox 4+.
*/
button::-moz-focus-inner,
input::-moz-focus-inner {
border: 0;
padding: 0; }
/**
* Address Firefox 4+ setting `line-height` on `input` using `!important` in
* the UA stylesheet.
*/
input {
line-height: normal; }
/**
* It's recommended that you don't attempt to style these elements.
* Firefox's implementation doesn't respect box-sizing, padding, or width.
*
* 1. Address box sizing set to `content-box` in IE 8/9/10.
* 2. Remove excess padding in IE 8/9/10.
*/
input[type="checkbox"],
input[type="radio"] {
box-sizing: border-box;
/* 1 */
padding: 0;
/* 2 */ }
/**
* Fix the cursor style for Chrome's increment/decrement buttons. For certain
* `font-size` values of the `input`, it causes the cursor style of the
* decrement button to change from `default` to `text`.
*/
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
height: auto; }
/**
* 1. Address `appearance` set to `searchfield` in Safari and Chrome.
* 2. Address `box-sizing` set to `border-box` in Safari and Chrome
* (include `-moz` to future-proof).
*/
input[type="search"] {
-webkit-appearance: textfield;
/* 1 */
-moz-box-sizing: content-box;
-webkit-box-sizing: content-box;
/* 2 */
box-sizing: content-box; }
/**
* Remove inner padding and search cancel button in Safari and Chrome on OS X.
* Safari (but not Chrome) clips the cancel button when the search input has
* padding (and `textfield` appearance).
*/
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
-webkit-appearance: none; }
/**
* Define consistent border, margin, and padding.
*/
fieldset {
border: 1px solid #c0c0c0;
margin: 0 2px;
padding: 0.35em 0.625em 0.75em; }
/**
* 1. Correct `color` not being inherited in IE 8/9/10/11.
* 2. Remove padding so people aren't caught out if they zero out fieldsets.
*/
legend {
border: 0;
/* 1 */
padding: 0;
/* 2 */ }
/**
* Remove default vertical scrollbar in IE 8/9/10/11.
*/
textarea {
overflow: auto; }
/**
* Don't inherit the `font-weight` (applied by a rule above).
* NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
*/
optgroup {
font-weight: bold; }
/* Tables
========================================================================== */
/**
* Remove most spacing between table cells.
*/
table {
border-collapse: collapse;
border-spacing: 0; }
td,
th {
padding: 0; }
/*
Copyright 2008-2013 Concur Technologies, Inc.
Licensed under the Apache License, Version 2.0 (the "License"); you may
not use this file except in compliance with the License. You may obtain
a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
License for the specific language governing permissions and limitations
under the License.
*/
.content h1, .content h2, .content h3, .content h4, .content h5, .content h6, html, body {
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
font-size: 14px; }
.content h1, .content h2, .content h3, .content h4, .content h5, .content h6 {
font-weight: bold; }
.content code, .content pre {
font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif;
font-size: 12px;
line-height: 1.5; }
.content code {
word-break: break-all;
hyphens: auto; }
@font-face {
font-family: 'slate';
src: url('https://raw.githubusercontent.com/Mermade/shins/master/source/fonts/slate.eot?-syv14m');
src: url('https://raw.githubusercontent.com/Mermade/shins/master/source/fonts/slate.eot?#iefix-syv14m') format("embedded-opentype"), url('https://raw.githubusercontent.com/Mermade/shins/master/source/fonts/slate.woff2?-syv14m') format("woff2"), url('https://raw.githubusercontent.com/Mermade/shins/master/source/fonts/slate.woff?-syv14m') format("woff"), url('https://raw.githubusercontent.com/Mermade/shins/master/source/fonts/slate.ttf?-syv14m') format("truetype"), url('https://raw.githubusercontent.com/Mermade/shins/master/source/fonts/slate.svg?-syv14m#slate') format("svg");
font-weight: normal;
font-style: normal; }
.content aside.warning:before, .content aside.notice:before, .content aside.success:before, .toc-wrapper > .search:before {
font-family: 'slate';
speak: none;
font-style: normal;
font-weight: normal;
font-variant: normal;
text-transform: none;
line-height: 1; }
.content aside.warning:before {
content: "\e600"; }
.content aside.notice:before {
content: "\e602"; }
.content aside.success:before {
content: "\e606"; }
.toc-wrapper > .search:before {
content: "\e607"; }
/*
Copyright 2008-2013 Concur Technologies, Inc.
Licensed under the Apache License, Version 2.0 (the "License"); you may
not use this file except in compliance with the License. You may obtain
a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
License for the specific language governing permissions and limitations
under the License.
*/
html, body {
color: #333;
padding: 0;
margin: 0;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
background-color: #F3F7F9;
height: 100%;
-webkit-text-size-adjust: none;
/* Never autoresize text */ }
#toc > ul > li > a > span {
float: right;
background-color: #2484FF;
border-radius: 40px;
width: 20px; }
.toc-wrapper {
transition: left 0.3s ease-in-out;
overflow-y: auto;
overflow-x: hidden;
position: fixed;
z-index: 30;
top: 0;
left: 0;
bottom: 0;
width: 230px;
background-color: #2E3336;
font-size: 13px;
font-weight: bold; }
.toc-wrapper .lang-selector {
display: none; }
.toc-wrapper .lang-selector a {
padding-top: 0.5em;
padding-bottom: 0.5em; }
.toc-wrapper .logo {
display: block;
max-width: 100%;
margin-bottom: 0px; }
.toc-wrapper > .search {
position: relative; }
.toc-wrapper > .search input {
background: #2E3336;
border-width: 0 0 1px 0;
border-color: #666;
padding: 6px 0 6px 20px;
box-sizing: border-box;
margin: 10px 15px;
width: 200px;
outline: none;
color: #fff;
border-radius: 0;
/* ios has a default border radius */ }
.toc-wrapper > .search:before {
position: absolute;
top: 17px;
left: 15px;
color: #fff; }
.toc-wrapper .search-results {
margin-top: 0;
box-sizing: border-box;
height: 0;
overflow-y: auto;
overflow-x: hidden;
transition-property: height, margin;
transition-duration: 180ms;
transition-timing-function: ease-in-out;
background: #1E2224; }
.toc-wrapper .search-results.visible {
height: 30%;
margin-bottom: 1em; }
.toc-wrapper .search-results li {
margin: 1em 15px;
line-height: 1; }
.toc-wrapper .search-results a {
color: #fff;
text-decoration: none; }
.toc-wrapper .search-results a:hover {
text-decoration: underline; }
.toc-wrapper ul, .toc-wrapper li {
list-style: none;
margin: 0;
padding: 0;
line-height: 28px; }
.toc-wrapper li {
color: #fff;
transition-property: background;
transition-timing-function: linear;
transition-duration: 200ms; }
.toc-wrapper .toc-link.active {
background-color: #0F75D4;
color: #fff; }
.toc-wrapper .toc-link.active-parent {
background-color: #1E2224;
color: #fff; }
.toc-wrapper .toc-list-h2 {
display: none;
background-color: #1E2224;
font-weight: 500; }
.toc-wrapper .toc-h2 {
padding-left: 25px;
font-size: 12px; }
.toc-wrapper .toc-footer {
padding: 1em 0;
margin-top: 1em;
border-top: 1px dashed #666; }
.toc-wrapper .toc-footer li, .toc-wrapper .toc-footer a {
color: #fff;
text-decoration: none; }
.toc-wrapper .toc-footer a:hover {
text-decoration: underline; }
.toc-wrapper .toc-footer li {
font-size: 0.8em;
line-height: 1.7;
text-decoration: none; }
.toc-link, .toc-footer li {
padding: 0 15px 0 15px;
display: block;
overflow-x: hidden;
white-space: nowrap;
text-overflow: ellipsis;
text-decoration: none;
color: #fff;
transition-property: background;
transition-timing-function: linear;
transition-duration: 130ms; }
#nav-button {
padding: 0 1.5em 5em 0;
display: none;
position: fixed;
top: 0;
left: 0;
z-index: 100;
color: #000;
text-decoration: none;
font-weight: bold;
opacity: 0.7;
line-height: 16px;
transition: left 0.3s ease-in-out; }
#nav-button span {
display: block;
padding: 6px 6px 6px;
background-color: rgba(243, 247, 249, 0.7);
transform-origin: 0 0;
transform: rotate(-90deg) translate(-100%, 0);
border-radius: 0 0 0 5px; }
#nav-button img {
height: 16px;
vertical-align: bottom; }
#nav-button:hover {
opacity: 1; }
#nav-button.open {
left: 230px; }
.page-wrapper {
margin-left: 230px;
position: relative;
z-index: 10;
background-color: #F3F7F9;
min-height: 100%;
padding-bottom: 1px; }
.page-wrapper .dark-box {
width: 50%;
background-color: #2E3336;
position: absolute;
right: 0;
top: 0;
bottom: 0; }
.page-wrapper .lang-selector {
position: fixed;
z-index: 50;
border-bottom: 5px solid #2E3336; }
.lang-selector {
background-color: #1E2224;
width: 100%;
font-weight: bold; }
.lang-selector a {
display: block;
float: left;
color: #fff;
text-decoration: none;
padding: 0 10px;
line-height: 30px;
outline: 0; }
.lang-selector a:active, .lang-selector a:focus {
background-color: #111;
color: #fff; }
.lang-selector a.active {
background-color: #2E3336;
color: #fff; }
.lang-selector:after {
content: '';
clear: both;
display: block; }
.content {
-webkit-transform: translateZ(0);
position: relative;
z-index: 30; }
.content:after {
content: '';
display: block;
clear: both; }
.content > h1, .content > h2, .content > h3, .content > h4, .content > h5, .content > h6, .content > p, .content > table, .content > ul, .content > ol, .content > aside, .content > dl {
margin-right: 50%;
padding: 0 28px;
box-sizing: border-box;
display: block; }
.content > ul, .content > ol {
padding-left: 43px; }
.content > h1, .content > h2, .content > div {
clear: both; }
.content h1 {
font-size: 25px;
padding-top: 0.5em;
padding-bottom: 0.5em;
margin-bottom: 21px;
margin-top: 2em;
border-top: 1px solid #ccc;
border-bottom: 1px solid #ccc;
background-color: #fdfdfd; }
.content h1:first-child, .content div:first-child + h1 {
border-top-width: 0;
margin-top: 0; }
.content h2 {
font-size: 19px;
margin-top: 4em;
margin-bottom: 0;
border-top: 1px solid #ccc;
padding-top: 1.2em;
padding-bottom: 1.2em;
background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0)); }
.content h1 + h2, .content h1 + div + h2 {
margin-top: -21px;
border-top: none; }
.content h3, .content h4, .content h5, .content h6 {
font-size: 15px;
margin-top: 2.5em;
margin-bottom: 0.8em; }
.content h4, .content h5, .content h6 {
font-size: 10px; }
.content hr {
margin: 2em 0;
border-top: 2px solid #2E3336;
border-bottom: 2px solid #F3F7F9; }
.content table {
margin-bottom: 1em;
overflow: auto; }
.content table th, .content table td {
text-align: left;
vertical-align: top;
line-height: 1.6; }
.content table th code, .content table td code {
white-space: nowrap; }
.content table th {
padding: 5px 10px;
border-bottom: 1px solid #ccc;
vertical-align: bottom; }
.content table td {
padding: 10px; }
.content table tr:last-child {
border-bottom: 1px solid #ccc; }
.content table tr:nth-child(odd) > td {
background-color: white; }
.content table tr:nth-child(even) > td {
background-color: #fbfcfd; }
.content dt {
font-weight: bold; }
.content dd {
margin-left: 15px; }
.content p, .content li, .content dt, .content dd {
line-height: 1.6;
margin-top: 0; }
.content img {
max-width: 100%; }
.content code {
background-color: rgba(0, 0, 0, 0.05);
padding: 3px;
border-radius: 3px; }
.content pre > code {
background-color: transparent;
padding: 0; }
.content aside {
padding-top: 1em;
padding-bottom: 1em;
margin-top: 1.5em;
margin-bottom: 1.5em;
background: #8fbcd4;
line-height: 1.6; }
.content aside.warning {
background-color: #c97a7e; }
.content aside.success {
background-color: #6ac174; }
.content aside:before {
vertical-align: middle;
padding-right: 0.5em;
font-size: 14px; }
.content .search-highlight {
padding: 2px;
margin: -3px;
border-radius: 4px;
border: 1px solid #F7E633;
background: linear-gradient(to top left, #F7E633 0%, #F1D32F 100%); }
.content pre, .content blockquote {
background-color: #1E2224;
color: #fff;
margin: 0;
width: 50%;
float: right;
clear: right;
box-sizing: border-box; }
.content pre > p, .content blockquote > p {
margin: 0; }
.content pre a, .content blockquote a {
color: #fff;
text-decoration: none;
border-bottom: dashed 1px #ccc; }
.content pre {
padding-top: 2em;
padding-bottom: 2em;
padding: 2em 28px; }
.content blockquote > p {
background-color: #191D1F;
padding: 13px 2em;
color: #eee; }
@media (max-width: 930px) {
.toc-wrapper {
left: -230px; }
.toc-wrapper.open {
left: 0; }
.page-wrapper {
margin-left: 0; }
#nav-button {
display: block; }
.toc-link {
padding-top: 0.3em;
padding-bottom: 0.3em; } }
@media (max-width: 700px) {
.dark-box {
display: none; }
.content > h1, .content > h2, .content > h3, .content > h4, .content > h5, .content > h6, .content > p, .content > table, .content > ul, .content > ol, .content > aside, .content > dl {
margin-right: 0; }
.toc-wrapper .lang-selector {
display: block; }
.page-wrapper .lang-selector {
display: none; }
.content pre, .content blockquote {
width: auto;
float: none; }
.content > pre + h1, .content > blockquote + h1, .content > pre + h2, .content > blockquote + h2, .content > pre + h3, .content > blockquote + h3, .content > pre + h4, .content > blockquote + h4, .content > pre + h5, .content > blockquote + h5, .content > pre + h6, .content > blockquote + h6, .content > pre + p, .content > blockquote + p, .content > pre + table, .content > blockquote + table, .content > pre + ul, .content > blockquote + ul, .content > pre + ol, .content > blockquote + ol, .content > pre + aside, .content > blockquote + aside, .content > pre + dl, .content > blockquote + dl {
margin-top: 28px; } }
.highlight .c, .highlight .cm, .highlight .c1, .highlight .cs {
color: #909090; }
.highlight, .highlight .w {
background-color: #1E2224; }
</style>
<style media="print">/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
/**
* 1. Set default font family to sans-serif.
* 2. Prevent iOS text size adjust after orientation change, without disabling
* user zoom.
*/
html {
font-family: sans-serif;
/* 1 */
-ms-text-size-adjust: 100%;
/* 2 */
-webkit-text-size-adjust: 100%;
/* 2 */ }
/**
* Remove default margin.
*/
body {
margin: 0; }
/* HTML5 display definitions
========================================================================== */
/**
* Correct `block` display not defined for any HTML5 element in IE 8/9.
* Correct `block` display not defined for `details` or `summary` in IE 10/11
* and Firefox.
* Correct `block` display not defined for `main` in IE 11.
*/
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
display: block; }
/**
* 1. Correct `inline-block` display not defined in IE 8/9.
* 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
*/
audio,
canvas,
progress,
video {
display: inline-block;
/* 1 */
vertical-align: baseline;
/* 2 */ }
/**
* Prevent modern browsers from displaying `audio` without controls.
* Remove excess height in iOS 5 devices.
*/
audio:not([controls]) {
display: none;
height: 0; }
/**
* Address `[hidden]` styling not present in IE 8/9/10.
* Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
*/
[hidden],
template {
display: none; }
/* Links
========================================================================== */
/**
* Remove the gray background color from active links in IE 10.
*/
a {
background-color: transparent; }
/**
* Improve readability when focused and also mouse hovered in all browsers.
*/
a:active,
a:hover {
outline: 0; }
/* Text-level semantics
========================================================================== */
/**
* Address styling not present in IE 8/9/10/11, Safari, and Chrome.
*/
abbr[title] {
border-bottom: 1px dotted; }
/**
* Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
*/
b,
strong {
font-weight: bold; }
/**
* Address styling not present in Safari and Chrome.
*/
dfn {
font-style: italic; }
/**
* Address variable `h1` font-size and margin within `section` and `article`
* contexts in Firefox 4+, Safari, and Chrome.
*/
h1 {
font-size: 2em;
margin: 0.67em 0; }
/**
* Address styling not present in IE 8/9.
*/
mark {
background: #ff0;
color: #000; }
/**
* Address inconsistent and variable font size in all browsers.
*/
small {
font-size: 80%; }
/**
* Prevent `sub` and `sup` affecting `line-height` in all browsers.
*/
sub,
sup {
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline; }
sup {
top: -0.5em; }
sub {
bottom: -0.25em; }
/* Embedded content
========================================================================== */
/**
* Remove border when inside `a` element in IE 8/9/10.
*/
img {
border: 0; }
/**
* Correct overflow not hidden in IE 9/10/11.
*/
svg:not(:root) {
overflow: hidden; }
/* Grouping content
========================================================================== */
/**
* Address margin not present in IE 8/9 and Safari.
*/
figure {
margin: 1em 40px; }
/**
* Address differences between Firefox and other browsers.
*/
hr {
-moz-box-sizing: content-box;
box-sizing: content-box;
height: 0; }
/**
* Contain overflow in all browsers.
*/
pre {
overflow: auto; }
/**
* Address odd `em`-unit font size rendering in all browsers.
*/
code,
kbd,
pre,
samp {
font-family: monospace, monospace;
font-size: 1em; }
/* Forms
========================================================================== */
/**
* Known limitation: by default, Chrome and Safari on OS X allow very limited
* styling of `select`, unless a `border` property is set.
*/
/**
* 1. Correct color not being inherited.
* Known issue: affects color of disabled elements.
* 2. Correct font properties not being inherited.
* 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
*/
button,
input,
optgroup,
select,
textarea {
color: inherit;
/* 1 */
font: inherit;
/* 2 */
margin: 0;
/* 3 */ }
/**
* Address `overflow` set to `hidden` in IE 8/9/10/11.
*/
button {
overflow: visible; }
/**
* Address inconsistent `text-transform` inheritance for `button` and `select`.
* All other form control elements do not inherit `text-transform` values.
* Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
* Correct `select` style inheritance in Firefox.
*/
button,
select {
text-transform: none; }
/**
* 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
* and `video` controls.
* 2. Correct inability to style clickable `input` types in iOS.
* 3. Improve usability and consistency of cursor style between image-type
* `input` and others.
*/
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
-webkit-appearance: button;
/* 2 */
cursor: pointer;
/* 3 */ }
/**
* Re-set default cursor for disabled elements.
*/
button[disabled],
html input[disabled] {
cursor: default; }
/**
* Remove inner padding and border in Firefox 4+.
*/
button::-moz-focus-inner,
input::-moz-focus-inner {
border: 0;
padding: 0; }
/**
* Address Firefox 4+ setting `line-height` on `input` using `!important` in
* the UA stylesheet.
*/
input {
line-height: normal; }
/**
* It's recommended that you don't attempt to style these elements.
* Firefox's implementation doesn't respect box-sizing, padding, or width.
*
* 1. Address box sizing set to `content-box` in IE 8/9/10.
* 2. Remove excess padding in IE 8/9/10.
*/
input[type="checkbox"],
input[type="radio"] {
box-sizing: border-box;
/* 1 */
padding: 0;
/* 2 */ }
/**
* Fix the cursor style for Chrome's increment/decrement buttons. For certain
* `font-size` values of the `input`, it causes the cursor style of the
* decrement button to change from `default` to `text`.
*/
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
height: auto; }
/**
* 1. Address `appearance` set to `searchfield` in Safari and Chrome.
* 2. Address `box-sizing` set to `border-box` in Safari and Chrome
* (include `-moz` to future-proof).
*/
input[type="search"] {
-webkit-appearance: textfield;
/* 1 */
-moz-box-sizing: content-box;
-webkit-box-sizing: content-box;
/* 2 */
box-sizing: content-box; }
/**
* Remove inner padding and search cancel button in Safari and Chrome on OS X.
* Safari (but not Chrome) clips the cancel button when the search input has
* padding (and `textfield` appearance).
*/
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
-webkit-appearance: none; }
/**
* Define consistent border, margin, and padding.
*/
fieldset {
border: 1px solid #c0c0c0;
margin: 0 2px;
padding: 0.35em 0.625em 0.75em; }
/**
* 1. Correct `color` not being inherited in IE 8/9/10/11.
* 2. Remove padding so people aren't caught out if they zero out fieldsets.
*/
legend {
border: 0;
/* 1 */
padding: 0;
/* 2 */ }
/**
* Remove default vertical scrollbar in IE 8/9/10/11.
*/
textarea {
overflow: auto; }
/**
* Don't inherit the `font-weight` (applied by a rule above).
* NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
*/
optgroup {
font-weight: bold; }
/* Tables
========================================================================== */
/**
* Remove most spacing between table cells.
*/
table {
border-collapse: collapse;
border-spacing: 0; }
td,
th {
padding: 0; }
/*
Copyright 2008-2013 Concur Technologies, Inc.
Licensed under the Apache License, Version 2.0 (the "License"); you may
not use this file except in compliance with the License. You may obtain
a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
License for the specific language governing permissions and limitations
under the License.
*/
.content h1, .content h2, .content h3, .content h4, body {
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
font-size: 14px; }
.content h1, .content h2, .content h3, .content h4 {
font-weight: bold; }
.content pre, .content code {
font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif;
font-size: 12px;
line-height: 1.5; }
.content pre, .content code {
word-break: break-all;
hyphens: auto; }
@font-face {
font-family: 'slate';
src: url('https://raw.githubusercontent.com/Mermade/shins/master/source/fonts/slate.eot?-syv14m');
src: url('https://raw.githubusercontent.com/Mermade/shins/master/source/fonts/slate.eot?#iefix-syv14m') format("embedded-opentype"), url('https://raw.githubusercontent.com/Mermade/shins/master/source/fonts/slate.woff2?-syv14m') format("woff2"), url('https://raw.githubusercontent.com/Mermade/shins/master/source/fonts/slate.woff?-syv14m') format("woff"), url('https://raw.githubusercontent.com/Mermade/shins/master/source/fonts/slate.ttf?-syv14m') format("truetype"), url('https://raw.githubusercontent.com/Mermade/shins/master/source/fonts/slate.svg?-syv14m#slate') format("svg");
font-weight: normal;
font-style: normal; }
.content aside.warning:before, .content aside.notice:before, .content aside.success:before {
font-family: 'slate';
speak: none;
font-style: normal;
font-weight: normal;
font-variant: normal;
text-transform: none;
line-height: 1; }
.content aside.warning:before {
content: "\e600"; }
.content aside.notice:before {
content: "\e602"; }
.content aside.success:before {
content: "\e606"; }
/*
Copyright 2008-2013 Concur Technologies, Inc.
Licensed under the Apache License, Version 2.0 (the "License"); you may
not use this file except in compliance with the License. You may obtain
a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
License for the specific language governing permissions and limitations
under the License.
*/
.tocify, .toc-footer, .lang-selector, .search, #nav-button {
display: none; }
.tocify-wrapper > img {
margin: 0 auto;
display: block; }
.content {
font-size: 12px; }
.content pre, .content code {
border: 1px solid #999;
border-radius: 5px;
font-size: 0.8em; }
.content pre code {
border: 0; }
.content pre {
padding: 1.3em; }
.content code {
padding: 0.2em; }
.content table {
border: 1px solid #999; }
.content table tr {
border-bottom: 1px solid #999; }
.content table td, .content table th {
padding: 0.7em; }
.content p {
line-height: 1.5; }
.content a {
text-decoration: none;
color: #000; }
.content h1 {
font-size: 2.5em;
padding-top: 0.5em;
padding-bottom: 0.5em;
margin-top: 1em;
margin-bottom: 21px;
border: 2px solid #ccc;
border-width: 2px 0;
text-align: center; }
.content h2 {
font-size: 1.8em;
margin-top: 2em;
border-top: 2px solid #ccc;
padding-top: 0.8em; }
.content h1 + h2, .content h1 + div + h2 {
border-top: none;
padding-top: 0;
margin-top: 0; }
.content h3, .content h4 {
font-size: 0.8em;
margin-top: 1.5em;
margin-bottom: 0.8em;
text-transform: uppercase; }
.content h5, .content h6 {
text-transform: uppercase; }
.content aside {
padding: 1em;
border: 1px solid #ccc;
border-radius: 5px;
margin-top: 1.5em;
margin-bottom: 1.5em;
line-height: 1.6; }
.content aside:before {
vertical-align: middle;
padding-right: 0.5em;
font-size: 14px; }
</style>
<style media="screen">/*
Darkula color scheme from the JetBrains family of IDEs
*/
.hljs {
display: block;
overflow-x: auto;
padding: 0.5em;
background: #2b2b2b;
-webkit-text-size-adjust: none;
}
.hljs,
.hljs-tag,
.hljs-title,
.css .hljs-rule,
.css .hljs-value,
.aspectj .hljs-function,
.css .hljs-function .hljs-preprocessor,
.hljs-pragma {
color: #bababa;
}
.hljs-strongemphasis,
.hljs-strong,
.hljs-emphasis {
color: #a8a8a2;
}
.hljs-bullet,
.hljs-blockquote,
.hljs-horizontal_rule,
.hljs-number,
.hljs-regexp,
.alias .hljs-keyword,
.hljs-literal,
.hljs-hexcolor {
color: #6896ba;
}
.hljs-tag .hljs-value,
.hljs-code,
.css .hljs-class,
.hljs-class .hljs-title:last-child {
color: #a6e22e;
}
.hljs-link_url {
font-size: 80%;
}
.hljs-emphasis,
.hljs-strongemphasis,
.hljs-class .hljs-title:last-child,
.hljs-typename {
font-style: italic;
}
.hljs-keyword,
.ruby .hljs-class .hljs-keyword:first-child,
.ruby .hljs-function .hljs-keyword,
.hljs-function,
.hljs-change,
.hljs-winutils,
.hljs-flow,
.nginx .hljs-title,
.tex .hljs-special,
.hljs-header,
.hljs-attribute,
.hljs-symbol,
.hljs-symbol .hljs-string,
.hljs-tag .hljs-title,
.hljs-value,
.alias .hljs-keyword:first-child,
.css .hljs-tag,
.css .unit,
.css .hljs-important {
color: #cb7832;
}
.hljs-function .hljs-keyword,
.hljs-class .hljs-keyword:first-child,
.hljs-aspect .hljs-keyword:first-child,
.hljs-constant,
.hljs-typename,
.css .hljs-attribute {
color: #cb7832;
}
.hljs-variable,
.hljs-params,
.hljs-class .hljs-title,
.hljs-aspect .hljs-title {
color: #b9b9b9;
}
.hljs-string,
.css .hljs-id,
.hljs-subst,
.hljs-type,
.ruby .hljs-class .hljs-parent,
.hljs-built_in,
.django .hljs-template_tag,
.django .hljs-variable,
.smalltalk .hljs-class,
.django .hljs-filter .hljs-argument,
.smalltalk .hljs-localvars,
.smalltalk .hljs-array,
.hljs-attr_selector,
.hljs-pseudo,
.hljs-addition,
.hljs-stream,
.hljs-envvar,
.apache .hljs-tag,
.apache .hljs-cbracket,
.tex .hljs-command,
.hljs-prompt,
.hljs-link_label,
.hljs-link_url,
.hljs-name {
color: #e0c46c;
}
.hljs-comment,
.hljs-annotation,
.hljs-pi,
.hljs-doctype,
.hljs-deletion,
.hljs-shebang,
.apache .hljs-sqbracket,
.tex .hljs-formula {
color: #7f7f7f;
}
.hljs-decorator {
color: #bab429;
}
.coffeescript .javascript,
.javascript .xml,
.tex .hljs-formula,
.xml .javascript,
.xml .vbscript,
.xml .css,
.xml .hljs-cdata,
.xml .php,
.php .xml {
opacity: 0.5;
}
</style>
<script>!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(e,t){"use strict";function n(e,t){t=t||ne;var n=t.createElement("script");n.text=e,t.head.appendChild(n).parentNode.removeChild(n)}function r(e){var t=!!e&&"length"in e&&e.length,n=he.type(e);return"function"!==n&&!he.isWindow(e)&&("array"===n||0===t||"number"==typeof t&&t>0&&t-1 in e)}function i(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}function o(e,t,n){return he.isFunction(t)?he.grep(e,function(e,r){return!!t.call(e,r,e)!==n}):t.nodeType?he.grep(e,function(e){return e===t!==n}):"string"!=typeof t?he.grep(e,function(e){return se.call(t,e)>-1!==n}):Ee.test(t)?he.filter(t,e,n):(t=he.filter(t,e),he.grep(e,function(e){return se.call(t,e)>-1!==n&&1===e.nodeType}))}function a(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}function s(e){var t={};return he.each(e.match(je)||[],function(e,n){t[n]=!0}),t}function u(e){return e}function c(e){throw e}function l(e,t,n,r){var i;try{e&&he.isFunction(i=e.promise)?i.call(e).done(t).fail(n):e&&he.isFunction(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}function f(){ne.removeEventListener("DOMContentLoaded",f),e.removeEventListener("load",f),he.ready()}function p(){this.expando=he.expando+p.uid++}function d(e){return"true"===e||"false"!==e&&("null"===e?null:e===+e+""?+e:$e.test(e)?JSON.parse(e):e)}function h(e,t,n){var r;if(void 0===n&&1===e.nodeType)if(r="data-"+t.replace(Pe,"-$&").toLowerCase(),"string"==typeof(n=e.getAttribute(r))){try{n=d(n)}catch(e){}Oe.set(e,t,n)}else n=void 0;return n}function g(e,t,n,r){var i,o=1,a=20,s=r?function(){return r.cur()}:function(){return he.css(e,t,"")},u=s(),c=n&&n[3]||(he.cssNumber[t]?"":"px"),l=(he.cssNumber[t]||"px"!==c&&+u)&&Me.exec(he.css(e,t));if(l&&l[3]!==c){c=c||l[3],n=n||[],l=+u||1;do{o=o||".5",l/=o,he.style(e,t,l+c)}while(o!==(o=s()/u)&&1!==o&&--a)}return n&&(l=+l||+u||0,i=n[1]?l+(n[1]+1)*n[2]:+n[2],r&&(r.unit=c,r.start=l,r.end=i)),i}function v(e){var t,n=e.ownerDocument,r=e.nodeName,i=_e[r];return i||(t=n.body.appendChild(n.createElement(r)),i=he.css(t,"display"),t.parentNode.removeChild(t),"none"===i&&(i="block"),_e[r]=i,i)}function m(e,t){for(var n,r,i=[],o=0,a=e.length;o<a;o++)r=e[o],r.style&&(n=r.style.display,t?("none"===n&&(i[o]=Fe.get(r,"display")||null,i[o]||(r.style.display="")),""===r.style.display&&We(r)&&(i[o]=v(r))):"none"!==n&&(i[o]="none",Fe.set(r,"display",n)));for(o=0;o<a;o++)null!=i[o]&&(e[o].style.display=i[o]);return e}function y(e,t){var n;return n=void 0!==e.getElementsByTagName?e.getElementsByTagName(t||"*"):void 0!==e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&i(e,t)?he.merge([e],n):n}function x(e,t){for(var n=0,r=e.length;n<r;n++)Fe.set(e[n],"globalEval",!t||Fe.get(t[n],"globalEval"))}function b(e,t,n,r,i){for(var o,a,s,u,c,l,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d<h;d++)if((o=e[d])||0===o)if("object"===he.type(o))he.merge(p,o.nodeType?[o]:o);else if(Ve.test(o)){for(a=a||f.appendChild(t.createElement("div")),s=(Ue.exec(o)||["",""])[1].toLowerCase(),u=Ye[s]||Ye._default,a.innerHTML=u[1]+he.htmlPrefilter(o)+u[2],l=u[0];l--;)a=a.lastChild;he.merge(p,a.childNodes),a=f.firstChild,a.textContent=""}else p.push(t.createTextNode(o));for(f.textContent="",d=0;o=p[d++];)if(r&&he.inArray(o,r)>-1)i&&i.push(o);else if(c=he.contains(o.ownerDocument,o),a=y(f.appendChild(o),"script"),c&&x(a),n)for(l=0;o=a[l++];)ze.test(o.type||"")&&n.push(o);return f}function w(){return!0}function T(){return!1}function C(){try{return ne.activeElement}catch(e){}}function E(e,t,n,r,i,o){var a,s;if("object"==typeof t){"string"!=typeof n&&(r=r||n,n=void 0);for(s in t)E(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=T;else if(!i)return e;return 1===o&&(a=i,i=function(e){return he().off(e),a.apply(this,arguments)},i.guid=a.guid||(a.guid=he.guid++)),e.each(function(){he.event.add(this,t,i,r,n)})}function k(e,t){return i(e,"table")&&i(11!==t.nodeType?t:t.firstChild,"tr")?he(">tbody",e)[0]||e:e}function S(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function N(e){var t=nt.exec(e.type);return t?e.type=t[1]:e.removeAttribute("type"),e}function A(e,t){var n,r,i,o,a,s,u,c;if(1===t.nodeType){if(Fe.hasData(e)&&(o=Fe.access(e),a=Fe.set(t,o),c=o.events)){delete a.handle,a.events={};for(i in c)for(n=0,r=c[i].length;n<r;n++)he.event.add(t,i,c[i][n])}Oe.hasData(e)&&(s=Oe.access(e),u=he.extend({},s),Oe.set(t,u))}}function j(e,t){var n=t.nodeName.toLowerCase();"input"===n&&Xe.test(e.type)?t.checked=e.checked:"input"!==n&&"textarea"!==n||(t.defaultValue=e.defaultValue)}function D(e,t,r,i){t=oe.apply([],t);var o,a,s,u,c,l,f=0,p=e.length,d=p-1,h=t[0],g=he.isFunction(h);if(g||p>1&&"string"==typeof h&&!de.checkClone&&tt.test(h))return e.each(function(n){var o=e.eq(n);g&&(t[0]=h.call(this,n,o.html())),D(o,t,r,i)});if(p&&(o=b(t,e[0].ownerDocument,!1,e,i),a=o.firstChild,1===o.childNodes.length&&(o=a),a||i)){for(s=he.map(y(o,"script"),S),u=s.length;f<p;f++)c=o,f!==d&&(c=he.clone(c,!0,!0),u&&he.merge(s,y(c,"script"))),r.call(e[f],c,f);if(u)for(l=s[s.length-1].ownerDocument,he.map(s,N),f=0;f<u;f++)c=s[f],ze.test(c.type||"")&&!Fe.access(c,"globalEval")&&he.contains(l,c)&&(c.src?he._evalUrl&&he._evalUrl(c.src):n(c.textContent.replace(rt,""),l))}return e}function L(e,t,n){for(var r,i=t?he.filter(t,e):e,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||he.cleanData(y(r)),r.parentNode&&(n&&he.contains(r.ownerDocument,r)&&x(y(r,"script")),r.parentNode.removeChild(r));return e}function q(e,t,n){var r,i,o,a,s=e.style;return n=n||at(e),n&&(a=n.getPropertyValue(t)||n[t],""!==a||he.contains(e.ownerDocument,e)||(a=he.style(e,t)),!de.pixelMarginRight()&&ot.test(a)&&it.test(t)&&(r=s.width,i=s.minWidth,o=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=i,s.maxWidth=o)),void 0!==a?a+"":a}function H(e,t){return{get:function(){return e()?void delete this.get:(this.get=t).apply(this,arguments)}}}function F(e){if(e in pt)return e;for(var t=e[0].toUpperCase()+e.slice(1),n=ft.length;n--;)if((e=ft[n]+t)in pt)return e}function O(e){var t=he.cssProps[e];return t||(t=he.cssProps[e]=F(e)||e),t}function $(e,t,n){var r=Me.exec(t);return r?Math.max(0,r[2]-(n||0))+(r[3]||"px"):t}function P(e,t,n,r,i){var o,a=0;for(o=n===(r?"border":"content")?4:"width"===t?1:0;o<4;o+=2)"margin"===n&&(a+=he.css(e,n+Ie[o],!0,i)),r?("content"===n&&(a-=he.css(e,"padding"+Ie[o],!0,i)),"margin"!==n&&(a-=he.css(e,"border"+Ie[o]+"Width",!0,i))):(a+=he.css(e,"padding"+Ie[o],!0,i),"padding"!==n&&(a+=he.css(e,"border"+Ie[o]+"Width",!0,i)));return a}function R(e,t,n){var r,i=at(e),o=q(e,t,i),a="border-box"===he.css(e,"boxSizing",!1,i);return ot.test(o)?o:(r=a&&(de.boxSizingReliable()||o===e.style[t]),"auto"===o&&(o=e["offset"+t[0].toUpperCase()+t.slice(1)]),(o=parseFloat(o)||0)+P(e,t,n||(a?"border":"content"),r,i)+"px")}function M(e,t,n,r,i){return new M.prototype.init(e,t,n,r,i)}function I(){ht&&(!1===ne.hidden&&e.requestAnimationFrame?e.requestAnimationFrame(I):e.setTimeout(I,he.fx.interval),he.fx.tick())}function W(){return e.setTimeout(function(){dt=void 0}),dt=he.now()}function B(e,t){var n,r=0,i={height:e};for(t=t?1:0;r<4;r+=2-t)n=Ie[r],i["margin"+n]=i["padding"+n]=e;return t&&(i.opacity=i.width=e),i}function _(e,t,n){for(var r,i=(z.tweeners[t]||[]).concat(z.tweeners["*"]),o=0,a=i.length;o<a;o++)if(r=i[o].call(n,t,e))return r}function X(e,t,n){var r,i,o,a,s,u,c,l,f="width"in t||"height"in t,p=this,d={},h=e.style,g=e.nodeType&&We(e),v=Fe.get(e,"fxshow");n.queue||(a=he._queueHooks(e,"fx"),null==a.unqueued&&(a.unqueued=0,s=a.empty.fire,a.empty.fire=function(){a.unqueued||s()}),a.unqueued++,p.always(function(){p.always(function(){a.unqueued--,he.queue(e,"fx").length||a.empty.fire()})}));for(r in t)if(i=t[r],gt.test(i)){if(delete t[r],o=o||"toggle"===i,i===(g?"hide":"show")){if("show"!==i||!v||void 0===v[r])continue;g=!0}d[r]=v&&v[r]||he.style(e,r)}if((u=!he.isEmptyObject(t))||!he.isEmptyObject(d)){f&&1===e.nodeType&&(n.overflow=[h.overflow,h.overflowX,h.overflowY],c=v&&v.display,null==c&&(c=Fe.get(e,"display")),l=he.css(e,"display"),"none"===l&&(c?l=c:(m([e],!0),c=e.style.display||c,l=he.css(e,"display"),m([e]))),("inline"===l||"inline-block"===l&&null!=c)&&"none"===he.css(e,"float")&&(u||(p.done(function(){h.display=c}),null==c&&(l=h.display,c="none"===l?"":l)),h.display="inline-block")),n.overflow&&(h.overflow="hidden",p.always(function(){h.overflow=n.overflow[0],h.overflowX=n.overflow[1],h.overflowY=n.overflow[2]})),u=!1;for(r in d)u||(v?"hidden"in v&&(g=v.hidden):v=Fe.access(e,"fxshow",{display:c}),o&&(v.hidden=!g),g&&m([e],!0),p.done(function(){g||m([e]),Fe.remove(e,"fxshow");for(r in d)he.style(e,r,d[r])})),u=_(g?v[r]:0,r,p),r in v||(v[r]=u.start,g&&(u.end=u.start,u.start=0))}}function U(e,t){var n,r,i,o,a;for(n in e)if(r=he.camelCase(n),i=t[r],o=e[n],Array.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),(a=he.cssHooks[r])&&"expand"in a){o=a.expand(o),delete e[r];for(n in o)n in e||(e[n]=o[n],t[n]=i)}else t[r]=i}function z(e,t,n){var r,i,o=0,a=z.prefilters.length,s=he.Deferred().always(function(){delete u.elem}),u=function(){if(i)return!1;for(var t=dt||W(),n=Math.max(0,c.startTime+c.duration-t),r=n/c.duration||0,o=1-r,a=0,u=c.tweens.length;a<u;a++)c.tweens[a].run(o);return s.notifyWith(e,[c,o,n]),o<1&&u?n:(u||s.notifyWith(e,[c,1,0]),s.resolveWith(e,[c]),!1)},c=s.promise({elem:e,props:he.extend({},t),opts:he.extend(!0,{specialEasing:{},easing:he.easing._default},n),originalProperties:t,originalOptions:n,startTime:dt||W(),duration:n.duration,tweens:[],createTween:function(t,n){var r=he.Tween(e,c.opts,t,n,c.opts.specialEasing[t]||c.opts.easing);return c.tweens.push(r),r},stop:function(t){var n=0,r=t?c.tweens.length:0;if(i)return this;for(i=!0;n<r;n++)c.tweens[n].run(1);return t?(s.notifyWith(e,[c,1,0]),s.resolveWith(e,[c,t])):s.rejectWith(e,[c,t]),this}}),l=c.props;for(U(l,c.opts.specialEasing);o<a;o++)if(r=z.prefilters[o].call(c,e,l,c.opts))return he.isFunction(r.stop)&&(he._queueHooks(c.elem,c.opts.queue).stop=he.proxy(r.stop,r)),r;return he.map(l,_,c),he.isFunction(c.opts.start)&&c.opts.start.call(e,c),c.progress(c.opts.progress).done(c.opts.done,c.opts.complete).fail(c.opts.fail).always(c.opts.always),he.fx.timer(he.extend(u,{elem:e,anim:c,queue:c.opts.queue})),c}function Y(e){return(e.match(je)||[]).join(" ")}function V(e){return e.getAttribute&&e.getAttribute("class")||""}function Q(e,t,n,r){var i;if(Array.isArray(t))he.each(t,function(t,i){n||St.test(e)?r(e,i):Q(e+"["+("object"==typeof i&&null!=i?t:"")+"]",i,n,r)});else if(n||"object"!==he.type(t))r(e,t);else for(i in t)Q(e+"["+i+"]",t[i],n,r)}function G(e){return function(t,n){"string"!=typeof t&&(n=t,t="*");var r,i=0,o=t.toLowerCase().match(je)||[];if(he.isFunction(n))for(;r=o[i++];)"+"===r[0]?(r=r.slice(1)||"*",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function J(e,t,n,r){function i(s){var u;return o[s]=!0,he.each(e[s]||[],function(e,s){var c=s(t,n,r);return"string"!=typeof c||a||o[c]?a?!(u=c):void 0:(t.dataTypes.unshift(c),i(c),!1)}),u}var o={},a=e===Rt;return i(t.dataTypes[0])||!o["*"]&&i("*")}function K(e,t){var n,r,i=he.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&he.extend(!0,e,r),e}function Z(e,t,n){for(var r,i,o,a,s=e.contents,u=e.dataTypes;"*"===u[0];)u.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(i in s)if(s[i]&&s[i].test(r)){u.unshift(i);break}if(u[0]in n)o=u[0];else{for(i in n){if(!u[0]||e.converters[i+" "+u[0]]){o=i;break}a||(a=i)}o=o||a}if(o)return o!==u[0]&&u.unshift(o),n[o]}function ee(e,t,n,r){var i,o,a,s,u,c={},l=e.dataTypes.slice();if(l[1])for(a in e.converters)c[a.toLowerCase()]=e.converters[a];for(o=l.shift();o;)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!u&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u=o,o=l.shift())if("*"===o)o=u;else if("*"!==u&&u!==o){if(!(a=c[u+" "+o]||c["* "+o]))for(i in c)if(s=i.split(" "),s[1]===o&&(a=c[u+" "+s[0]]||c["* "+s[0]])){!0===a?a=c[i]:!0!==c[i]&&(o=s[0],l.unshift(s[1]));break}if(!0!==a)if(a&&e.throws)t=a(t);else try{t=a(t)}catch(e){return{state:"parsererror",error:a?e:"No conversion from "+u+" to "+o}}}return{state:"success",data:t}}var te=[],ne=e.document,re=Object.getPrototypeOf,ie=te.slice,oe=te.concat,ae=te.push,se=te.indexOf,ue={},ce=ue.toString,le=ue.hasOwnProperty,fe=le.toString,pe=fe.call(Object),de={},he=function(e,t){return new he.fn.init(e,t)},ge=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,ve=/^-ms-/,me=/-([a-z])/g,ye=function(e,t){return t.toUpperCase()};he.fn=he.prototype={jquery:"3.2.1",constructor:he,length:0,toArray:function(){return ie.call(this)},get:function(e){return null==e?ie.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=he.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return he.each(this,e)},map:function(e){return this.pushStack(he.map(this,function(t,n){return e.call(t,n,t)}))},slice:function(){return this.pushStack(ie.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(n>=0&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:ae,sort:te.sort,splice:te.splice},he.extend=he.fn.extend=function(){var e,t,n,r,i,o,a=arguments[0]||{},s=1,u=arguments.length,c=!1;for("boolean"==typeof a&&(c=a,a=arguments[s]||{},s++),"object"==typeof a||he.isFunction(a)||(a={}),s===u&&(a=this,s--);s<u;s++)if(null!=(e=arguments[s]))for(t in e)n=a[t],r=e[t],a!==r&&(c&&r&&(he.isPlainObject(r)||(i=Array.isArray(r)))?(i?(i=!1,o=n&&Array.isArray(n)?n:[]):o=n&&he.isPlainObject(n)?n:{},a[t]=he.extend(c,o,r)):void 0!==r&&(a[t]=r));return a},he.extend({expando:"jQuery"+("3.2.1"+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isFunction:function(e){return"function"===he.type(e)},isWindow:function(e){return null!=e&&e===e.window},isNumeric:function(e){var t=he.type(e);return("number"===t||"string"===t)&&!isNaN(e-parseFloat(e))},isPlainObject:function(e){var t,n;return!(!e||"[object Object]"!==ce.call(e))&&(!(t=re(e))||"function"==typeof(n=le.call(t,"constructor")&&t.constructor)&&fe.call(n)===pe)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},type:function(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?ue[ce.call(e)]||"object":typeof e},globalEval:function(e){n(e)},camelCase:function(e){return e.replace(ve,"ms-").replace(me,ye)},each:function(e,t){var n,i=0;if(r(e))for(n=e.length;i<n&&!1!==t.call(e[i],i,e[i]);i++);else for(i in e)if(!1===t.call(e[i],i,e[i]))break;return e},trim:function(e){return null==e?"":(e+"").replace(ge,"")},makeArray:function(e,t){var n=t||[];return null!=e&&(r(Object(e))?he.merge(n,"string"==typeof e?[e]:e):ae.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:se.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;r<n;r++)e[i++]=t[r];return e.length=i,e},grep:function(e,t,n){for(var r=[],i=0,o=e.length,a=!n;i<o;i++)!t(e[i],i)!==a&&r.push(e[i]);return r},map:function(e,t,n){var i,o,a=0,s=[];if(r(e))for(i=e.length;a<i;a++)null!=(o=t(e[a],a,n))&&s.push(o);else for(a in e)null!=(o=t(e[a],a,n))&&s.push(o);return oe.apply([],s)},guid:1,proxy:function(e,t){var n,r,i;if("string"==typeof t&&(n=e[t],t=e,e=n),he.isFunction(e))return r=ie.call(arguments,2),i=function(){return e.apply(t||this,r.concat(ie.call(arguments)))},i.guid=e.guid=e.guid||he.guid++,i},now:Date.now,support:de}),"function"==typeof Symbol&&(he.fn[Symbol.iterator]=te[Symbol.iterator]),he.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(e,t){ue["[object "+t+"]"]=t.toLowerCase()});var xe=function(e){function t(e,t,n,r){var i,o,a,s,u,l,p,d=t&&t.ownerDocument,h=t?t.nodeType:9;if(n=n||[],"string"!=typeof e||!e||1!==h&&9!==h&&11!==h)return n;if(!r&&((t?t.ownerDocument||t:M)!==L&&D(t),t=t||L,H)){if(11!==h&&(u=ge.exec(e)))if(i=u[1]){if(9===h){if(!(a=t.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(d&&(a=d.getElementById(i))&&P(t,a)&&a.id===i)return n.push(a),n}else{if(u[2])return G.apply(n,t.getElementsByTagName(e)),n;if((i=u[3])&&b.getElementsByClassName&&t.getElementsByClassName)return G.apply(n,t.getElementsByClassName(i)),n}if(b.qsa&&!X[e+" "]&&(!F||!F.test(e))){if(1!==h)d=t,p=e;else if("object"!==t.nodeName.toLowerCase()){for((s=t.getAttribute("id"))?s=s.replace(xe,be):t.setAttribute("id",s=R),l=E(e),o=l.length;o--;)l[o]="#"+s+" "+f(l[o]);p=l.join(","),d=ve.test(e)&&c(t.parentNode)||t}if(p)try{return G.apply(n,d.querySelectorAll(p)),n}catch(e){}finally{s===R&&t.removeAttribute("id")}}}return S(e.replace(oe,"$1"),t,n,r)}function n(){function e(n,r){return t.push(n+" ")>w.cacheLength&&delete e[t.shift()],e[n+" "]=r}var t=[];return e}function r(e){return e[R]=!0,e}function i(e){var t=L.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function o(e,t){for(var n=e.split("|"),r=n.length;r--;)w.attrHandle[n[r]]=t}function a(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function s(e){return function(t){return"form"in t?t.parentNode&&!1===t.disabled?"label"in t?"label"in t.parentNode?t.parentNode.disabled===e:t.disabled===e:t.isDisabled===e||t.isDisabled!==!e&&Te(t)===e:t.disabled===e:"label"in t&&t.disabled===e}}function u(e){return r(function(t){return t=+t,r(function(n,r){for(var i,o=e([],n.length,t),a=o.length;a--;)n[i=o[a]]&&(n[i]=!(r[i]=n[i]))})})}function c(e){return e&&void 0!==e.getElementsByTagName&&e}function l(){}function f(e){for(var t=0,n=e.length,r="";t<n;t++)r+=e[t].value;return r}function p(e,t,n){var r=t.dir,i=t.next,o=i||r,a=n&&"parentNode"===o,s=W++;return t.first?function(t,n,i){for(;t=t[r];)if(1===t.nodeType||a)return e(t,n,i);return!1}:function(t,n,u){var c,l,f,p=[I,s];if(u){for(;t=t[r];)if((1===t.nodeType||a)&&e(t,n,u))return!0}else for(;t=t[r];)if(1===t.nodeType||a)if(f=t[R]||(t[R]={}),l=f[t.uniqueID]||(f[t.uniqueID]={}),i&&i===t.nodeName.toLowerCase())t=t[r]||t;else{if((c=l[o])&&c[0]===I&&c[1]===s)return p[2]=c[2];if(l[o]=p,p[2]=e(t,n,u))return!0}return!1}}function d(e){return e.length>1?function(t,n,r){for(var i=e.length;i--;)if(!e[i](t,n,r))return!1;return!0}:e[0]}function h(e,n,r){for(var i=0,o=n.length;i<o;i++)t(e,n[i],r);return r}function g(e,t,n,r,i){for(var o,a=[],s=0,u=e.length,c=null!=t;s<u;s++)(o=e[s])&&(n&&!n(o,r,i)||(a.push(o),c&&t.push(s)));return a}function v(e,t,n,i,o,a){return i&&!i[R]&&(i=v(i)),o&&!o[R]&&(o=v(o,a)),r(function(r,a,s,u){var c,l,f,p=[],d=[],v=a.length,m=r||h(t||"*",s.nodeType?[s]:s,[]),y=!e||!r&&t?m:g(m,p,e,s,u),x=n?o||(r?e:v||i)?[]:a:y;if(n&&n(y,x,s,u),i)for(c=g(x,d),i(c,[],s,u),l=c.length;l--;)(f=c[l])&&(x[d[l]]=!(y[d[l]]=f));if(r){if(o||e){if(o){for(c=[],l=x.length;l--;)(f=x[l])&&c.push(y[l]=f);o(null,x=[],c,u)}for(l=x.length;l--;)(f=x[l])&&(c=o?K(r,f):p[l])>-1&&(r[c]=!(a[c]=f))}}else x=g(x===a?x.splice(v,x.length):x),o?o(null,a,x,u):G.apply(a,x)})}function m(e){for(var t,n,r,i=e.length,o=w.relative[e[0].type],a=o||w.relative[" "],s=o?1:0,u=p(function(e){return e===t},a,!0),c=p(function(e){return K(t,e)>-1},a,!0),l=[function(e,n,r){var i=!o&&(r||n!==N)||((t=n).nodeType?u(e,n,r):c(e,n,r));return t=null,i}];s<i;s++)if(n=w.relative[e[s].type])l=[p(d(l),n)];else{if(n=w.filter[e[s].type].apply(null,e[s].matches),n[R]){for(r=++s;r<i&&!w.relative[e[r].type];r++);return v(s>1&&d(l),s>1&&f(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace(oe,"$1"),n,s<r&&m(e.slice(s,r)),r<i&&m(e=e.slice(r)),r<i&&f(e))}l.push(n)}return d(l)}function y(e,n){var i=n.length>0,o=e.length>0,a=function(r,a,s,u,c){var l,f,p,d=0,h="0",v=r&&[],m=[],y=N,x=r||o&&w.find.TAG("*",c),b=I+=null==y?1:Math.random()||.1,T=x.length;for(c&&(N=a===L||a||c);h!==T&&null!=(l=x[h]);h++){if(o&&l){for(f=0,a||l.ownerDocument===L||(D(l),s=!H);p=e[f++];)if(p(l,a||L,s)){u.push(l);break}c&&(I=b)}i&&((l=!p&&l)&&d--,r&&v.push(l))}if(d+=h,i&&h!==d){for(f=0;p=n[f++];)p(v,m,a,s);if(r){if(d>0)for(;h--;)v[h]||m[h]||(m[h]=V.call(u));m=g(m)}G.apply(u,m),c&&!r&&m.length>0&&d+n.length>1&&t.uniqueSort(u)}return c&&(I=b,N=y),v};return i?r(a):a}var x,b,w,T,C,E,k,S,N,A,j,D,L,q,H,F,O,$,P,R="sizzle"+1*new Date,M=e.document,I=0,W=0,B=n(),_=n(),X=n(),U=function(e,t){return e===t&&(j=!0),0},z={}.hasOwnProperty,Y=[],V=Y.pop,Q=Y.push,G=Y.push,J=Y.slice,K=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},Z="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",ee="[\\x20\\t\\r\\n\\f]",te="(?:\\\\.|[\\w-]|[^\0-\\xa0])+",ne="\\["+ee+"*("+te+")(?:"+ee+"*([*^$|!~]?=)"+ee+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+te+"))|)"+ee+"*\\]",re=":("+te+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+ne+")*)|.*)\\)|)",ie=new RegExp(ee+"+","g"),oe=new RegExp("^"+ee+"+|((?:^|[^\\\\])(?:\\\\.)*)"+ee+"+$","g"),ae=new RegExp("^"+ee+"*,"+ee+"*"),se=new RegExp("^"+ee+"*([>+~]|"+ee+")"+ee+"*"),ue=new RegExp("="+ee+"*([^\\]'\"]*?)"+ee+"*\\]","g"),ce=new RegExp(re),le=new RegExp("^"+te+"$"),fe={ID:new RegExp("^#("+te+")"),CLASS:new RegExp("^\\.("+te+")"),TAG:new RegExp("^("+te+"|[*])"),ATTR:new RegExp("^"+ne),PSEUDO:new RegExp("^"+re),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+ee+"*(even|odd|(([+-]|)(\\d*)n|)"+ee+"*(?:([+-]|)"+ee+"*(\\d+)|))"+ee+"*\\)|)","i"),bool:new RegExp("^(?:"+Z+")$","i"),needsContext:new RegExp("^"+ee+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+ee+"*((?:-\\d)?\\d*)"+ee+"*\\)|)(?=[^-]|$)","i")},pe=/^(?:input|select|textarea|button)$/i,de=/^h\d$/i,he=/^[^{]+\{\s*\[native \w/,ge=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ve=/[+~]/,me=new RegExp("\\\\([\\da-f]{1,6}"+ee+"?|("+ee+")|.)","ig"),ye=function(e,t,n){var r="0x"+t-65536;return r!==r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},xe=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,be=function(e,t){return t?"\0"===e?"�":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},we=function(){D()},Te=p(function(e){return!0===e.disabled&&("form"in e||"label"in e)},{dir:"parentNode",next:"legend"});try{G.apply(Y=J.call(M.childNodes),M.childNodes),Y[M.childNodes.length].nodeType}catch(e){G={apply:Y.length?function(e,t){Q.apply(e,J.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}b=t.support={},C=t.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return!!t&&"HTML"!==t.nodeName},D=t.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:M;return r!==L&&9===r.nodeType&&r.documentElement?(L=r,q=L.documentElement,H=!C(L),M!==L&&(n=L.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",we,!1):n.attachEvent&&n.attachEvent("onunload",we)),b.attributes=i(function(e){return e.className="i",!e.getAttribute("className")}),b.getElementsByTagName=i(function(e){return e.appendChild(L.createComment("")),!e.getElementsByTagName("*").length}),b.getElementsByClassName=he.test(L.getElementsByClassName),b.getById=i(function(e){return q.appendChild(e).id=R,!L.getElementsByName||!L.getElementsByName(R).length}),b.getById?(w.filter.ID=function(e){var t=e.replace(me,ye);return function(e){return e.getAttribute("id")===t}},w.find.ID=function(e,t){if(void 0!==t.getElementById&&H){var n=t.getElementById(e);return n?[n]:[]}}):(w.filter.ID=function(e){var t=e.replace(me,ye);return function(e){var n=void 0!==e.getAttributeNode&&e.getAttributeNode("id");return n&&n.value===t}},w.find.ID=function(e,t){if(void 0!==t.getElementById&&H){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];for(i=t.getElementsByName(e),r=0;o=i[r++];)if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),w.find.TAG=b.getElementsByTagName?function(e,t){return void 0!==t.getElementsByTagName?t.getElementsByTagName(e):b.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){for(;n=o[i++];)1===n.nodeType&&r.push(n);return r}return o},w.find.CLASS=b.getElementsByClassName&&function(e,t){if(void 0!==t.getElementsByClassName&&H)return t.getElementsByClassName(e)},O=[],F=[],(b.qsa=he.test(L.querySelectorAll))&&(i(function(e){q.appendChild(e).innerHTML="<a id='"+R+"'></a><select id='"+R+"-\r\\' msallowcapture=''><option selected=''></option></select>",e.querySelectorAll("[msallowcapture^='']").length&&F.push("[*^$]="+ee+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||F.push("\\["+ee+"*(?:value|"+Z+")"),e.querySelectorAll("[id~="+R+"-]").length||F.push("~="),e.querySelectorAll(":checked").length||F.push(":checked"),e.querySelectorAll("a#"+R+"+*").length||F.push(".#.+[+~]")}),i(function(e){e.innerHTML="<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";var t=L.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&F.push("name"+ee+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&F.push(":enabled",":disabled"),q.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&F.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),F.push(",.*:")})),(b.matchesSelector=he.test($=q.matches||q.webkitMatchesSelector||q.mozMatchesSelector||q.oMatchesSelector||q.msMatchesSelector))&&i(function(e){b.disconnectedMatch=$.call(e,"*"),$.call(e,"[s!='']:x"),O.push("!=",re)}),F=F.length&&new RegExp(F.join("|")),O=O.length&&new RegExp(O.join("|")),t=he.test(q.compareDocumentPosition),P=t||he.test(q.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},U=t?function(e,t){if(e===t)return j=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1,1&n||!b.sortDetached&&t.compareDocumentPosition(e)===n?e===L||e.ownerDocument===M&&P(M,e)?-1:t===L||t.ownerDocument===M&&P(M,t)?1:A?K(A,e)-K(A,t):0:4&n?-1:1)}:function(e,t){if(e===t)return j=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,s=[e],u=[t];if(!i||!o)return e===L?-1:t===L?1:i?-1:o?1:A?K(A,e)-K(A,t):0;if(i===o)return a(e,t);for(n=e;n=n.parentNode;)s.unshift(n);for(n=t;n=n.parentNode;)u.unshift(n);for(;s[r]===u[r];)r++;return r?a(s[r],u[r]):s[r]===M?-1:u[r]===M?1:0},L):L},t.matches=function(e,n){return t(e,null,null,n)},t.matchesSelector=function(e,n){if((e.ownerDocument||e)!==L&&D(e),n=n.replace(ue,"='$1']"),b.matchesSelector&&H&&!X[n+" "]&&(!O||!O.test(n))&&(!F||!F.test(n)))try{var r=$.call(e,n);if(r||b.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(e){}return t(n,L,null,[e]).length>0},t.contains=function(e,t){return(e.ownerDocument||e)!==L&&D(e),P(e,t)},t.attr=function(e,t){(e.ownerDocument||e)!==L&&D(e);var n=w.attrHandle[t.toLowerCase()],r=n&&z.call(w.attrHandle,t.toLowerCase())?n(e,t,!H):void 0;return void 0!==r?r:b.attributes||!H?e.getAttribute(t):(r=e.getAttributeNode(t))&&r.specified?r.value:null},t.escape=function(e){return(e+"").replace(xe,be)},t.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},t.uniqueSort=function(e){var t,n=[],r=0,i=0;if(j=!b.detectDuplicates,A=!b.sortStable&&e.slice(0),e.sort(U),j){for(;t=e[i++];)t===e[i]&&(r=n.push(i));for(;r--;)e.splice(n[r],1)}return A=null,e},T=t.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=T(e)}else if(3===i||4===i)return e.nodeValue}else for(;t=e[r++];)n+=T(t);return n},w=t.selectors={cacheLength:50,createPseudo:r,match:fe,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(me,ye),e[3]=(e[3]||e[4]||e[5]||"").replace(me,ye),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||t.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&t.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return fe.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&ce.test(n)&&(t=E(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(me,ye).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=B[e+" "];return t||(t=new RegExp("(^|"+ee+")"+e+"("+ee+"|$)"))&&B(e,function(e){return t.test("string"==typeof e.className&&e.className||void 0!==e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(e,n,r){return function(i){var o=t.attr(i,e);return null==o?"!="===n:!n||(o+="","="===n?o===r:"!="===n?o!==r:"^="===n?r&&0===o.indexOf(r):"*="===n?r&&o.indexOf(r)>-1:"$="===n?r&&o.slice(-r.length)===r:"~="===n?(" "+o.replace(ie," ")+" ").indexOf(r)>-1:"|="===n&&(o===r||o.slice(0,r.length+1)===r+"-"))}},CHILD:function(e,t,n,r,i){var o="nth"!==e.slice(0,3),a="last"!==e.slice(-4),s="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,u){var c,l,f,p,d,h,g=o!==a?"nextSibling":"previousSibling",v=t.parentNode,m=s&&t.nodeName.toLowerCase(),y=!u&&!s,x=!1;if(v){if(o){for(;g;){for(p=t;p=p[g];)if(s?p.nodeName.toLowerCase()===m:1===p.nodeType)return!1;h=g="only"===e&&!h&&"nextSibling"}return!0}if(h=[a?v.firstChild:v.lastChild],a&&y){for(p=v,f=p[R]||(p[R]={}),l=f[p.uniqueID]||(f[p.uniqueID]={}),c=l[e]||[],d=c[0]===I&&c[1],x=d&&c[2],p=d&&v.childNodes[d];p=++d&&p&&p[g]||(x=d=0)||h.pop();)if(1===p.nodeType&&++x&&p===t){l[e]=[I,d,x];break}}else if(y&&(p=t,f=p[R]||(p[R]={}),l=f[p.uniqueID]||(f[p.uniqueID]={}),c=l[e]||[],d=c[0]===I&&c[1],x=d),!1===x)for(;(p=++d&&p&&p[g]||(x=d=0)||h.pop())&&((s?p.nodeName.toLowerCase()!==m:1!==p.nodeType)||!++x||(y&&(f=p[R]||(p[R]={}),l=f[p.uniqueID]||(f[p.uniqueID]={}),l[e]=[I,x]),p!==t)););return(x-=i)===r||x%r==0&&x/r>=0}}},PSEUDO:function(e,n){var i,o=w.pseudos[e]||w.setFilters[e.toLowerCase()]||t.error("unsupported pseudo: "+e);return o[R]?o(n):o.length>1?(i=[e,e,"",n],w.setFilters.hasOwnProperty(e.toLowerCase())?r(function(e,t){for(var r,i=o(e,n),a=i.length;a--;)r=K(e,i[a]),e[r]=!(t[r]=i[a])}):function(e){return o(e,0,i)}):o}},pseudos:{not:r(function(e){var t=[],n=[],i=k(e.replace(oe,"$1"));return i[R]?r(function(e,t,n,r){for(var o,a=i(e,null,r,[]),s=e.length;s--;)(o=a[s])&&(e[s]=!(t[s]=o))}):function(e,r,o){return t[0]=e,i(t,null,o,n),t[0]=null,!n.pop()}}),has:r(function(e){return function(n){return t(e,n).length>0}}),contains:r(function(e){return e=e.replace(me,ye),function(t){return(t.textContent||t.innerText||T(t)).indexOf(e)>-1}}),lang:r(function(e){return le.test(e||"")||t.error("unsupported lang: "+e),e=e.replace(me,ye).toLowerCase(),function(t){var n;do{if(n=H?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return(n=n.toLowerCase())===e||0===n.indexOf(e+"-")}while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===q},focus:function(e){return e===L.activeElement&&(!L.hasFocus||L.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:s(!1),disabled:s(!0),checked:function(e){var t=e.nodeName.toLowerCase()
;return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!w.pseudos.empty(e)},header:function(e){return de.test(e.nodeName)},input:function(e){return pe.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:u(function(){return[0]}),last:u(function(e,t){return[t-1]}),eq:u(function(e,t,n){return[n<0?n+t:n]}),even:u(function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e}),odd:u(function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e}),lt:u(function(e,t,n){for(var r=n<0?n+t:n;--r>=0;)e.push(r);return e}),gt:u(function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r);return e})}},w.pseudos.nth=w.pseudos.eq;for(x in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})w.pseudos[x]=function(e){return function(t){return"input"===t.nodeName.toLowerCase()&&t.type===e}}(x);for(x in{submit:!0,reset:!0})w.pseudos[x]=function(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}(x);return l.prototype=w.filters=w.pseudos,w.setFilters=new l,E=t.tokenize=function(e,n){var r,i,o,a,s,u,c,l=_[e+" "];if(l)return n?0:l.slice(0);for(s=e,u=[],c=w.preFilter;s;){r&&!(i=ae.exec(s))||(i&&(s=s.slice(i[0].length)||s),u.push(o=[])),r=!1,(i=se.exec(s))&&(r=i.shift(),o.push({value:r,type:i[0].replace(oe," ")}),s=s.slice(r.length));for(a in w.filter)!(i=fe[a].exec(s))||c[a]&&!(i=c[a](i))||(r=i.shift(),o.push({value:r,type:a,matches:i}),s=s.slice(r.length));if(!r)break}return n?s.length:s?t.error(e):_(e,u).slice(0)},k=t.compile=function(e,t){var n,r=[],i=[],o=X[e+" "];if(!o){for(t||(t=E(e)),n=t.length;n--;)o=m(t[n]),o[R]?r.push(o):i.push(o);o=X(e,y(i,r)),o.selector=e}return o},S=t.select=function(e,t,n,r){var i,o,a,s,u,l="function"==typeof e&&e,p=!r&&E(e=l.selector||e);if(n=n||[],1===p.length){if(o=p[0]=p[0].slice(0),o.length>2&&"ID"===(a=o[0]).type&&9===t.nodeType&&H&&w.relative[o[1].type]){if(!(t=(w.find.ID(a.matches[0].replace(me,ye),t)||[])[0]))return n;l&&(t=t.parentNode),e=e.slice(o.shift().value.length)}for(i=fe.needsContext.test(e)?0:o.length;i--&&(a=o[i],!w.relative[s=a.type]);)if((u=w.find[s])&&(r=u(a.matches[0].replace(me,ye),ve.test(o[0].type)&&c(t.parentNode)||t))){if(o.splice(i,1),!(e=r.length&&f(o)))return G.apply(n,r),n;break}}return(l||k(e,p))(r,t,!H,n,!t||ve.test(e)&&c(t.parentNode)||t),n},b.sortStable=R.split("").sort(U).join("")===R,b.detectDuplicates=!!j,D(),b.sortDetached=i(function(e){return 1&e.compareDocumentPosition(L.createElement("fieldset"))}),i(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||o("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),b.attributes&&i(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||o("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),i(function(e){return null==e.getAttribute("disabled")})||o(Z,function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),t}(e);he.find=xe,he.expr=xe.selectors,he.expr[":"]=he.expr.pseudos,he.uniqueSort=he.unique=xe.uniqueSort,he.text=xe.getText,he.isXMLDoc=xe.isXML,he.contains=xe.contains,he.escapeSelector=xe.escape;var be=function(e,t,n){for(var r=[],i=void 0!==n;(e=e[t])&&9!==e.nodeType;)if(1===e.nodeType){if(i&&he(e).is(n))break;r.push(e)}return r},we=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},Te=he.expr.match.needsContext,Ce=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i,Ee=/^.[^:#\[\.,]*$/;he.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?he.find.matchesSelector(r,e)?[r]:[]:he.find.matches(e,he.grep(t,function(e){return 1===e.nodeType}))},he.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(he(e).filter(function(){for(t=0;t<r;t++)if(he.contains(i[t],this))return!0}));for(n=this.pushStack([]),t=0;t<r;t++)he.find(e,i[t],n);return r>1?he.uniqueSort(n):n},filter:function(e){return this.pushStack(o(this,e||[],!1))},not:function(e){return this.pushStack(o(this,e||[],!0))},is:function(e){return!!o(this,"string"==typeof e&&Te.test(e)?he(e):e||[],!1).length}});var ke,Se=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(he.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||ke,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&e.length>=3?[null,e,null]:Se.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof he?t[0]:t,he.merge(this,he.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:ne,!0)),Ce.test(r[1])&&he.isPlainObject(t))for(r in t)he.isFunction(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return i=ne.getElementById(r[2]),i&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):he.isFunction(e)?void 0!==n.ready?n.ready(e):e(he):he.makeArray(e,this)}).prototype=he.fn,ke=he(ne);var Ne=/^(?:parents|prev(?:Until|All))/,Ae={children:!0,contents:!0,next:!0,prev:!0};he.fn.extend({has:function(e){var t=he(e,this),n=t.length;return this.filter(function(){for(var e=0;e<n;e++)if(he.contains(this,t[e]))return!0})},closest:function(e,t){var n,r=0,i=this.length,o=[],a="string"!=typeof e&&he(e);if(!Te.test(e))for(;r<i;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(a?a.index(n)>-1:1===n.nodeType&&he.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(o.length>1?he.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?se.call(he(e),this[0]):se.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(he.uniqueSort(he.merge(this.get(),he(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),he.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return be(e,"parentNode")},parentsUntil:function(e,t,n){return be(e,"parentNode",n)},next:function(e){return a(e,"nextSibling")},prev:function(e){return a(e,"previousSibling")},nextAll:function(e){return be(e,"nextSibling")},prevAll:function(e){return be(e,"previousSibling")},nextUntil:function(e,t,n){return be(e,"nextSibling",n)},prevUntil:function(e,t,n){return be(e,"previousSibling",n)},siblings:function(e){return we((e.parentNode||{}).firstChild,e)},children:function(e){return we(e.firstChild)},contents:function(e){return i(e,"iframe")?e.contentDocument:(i(e,"template")&&(e=e.content||e),he.merge([],e.childNodes))}},function(e,t){he.fn[e]=function(n,r){var i=he.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=he.filter(r,i)),this.length>1&&(Ae[e]||he.uniqueSort(i),Ne.test(e)&&i.reverse()),this.pushStack(i)}});var je=/[^\x20\t\r\n\f]+/g;he.Callbacks=function(e){e="string"==typeof e?s(e):he.extend({},e);var t,n,r,i,o=[],a=[],u=-1,c=function(){for(i=i||e.once,r=t=!0;a.length;u=-1)for(n=a.shift();++u<o.length;)!1===o[u].apply(n[0],n[1])&&e.stopOnFalse&&(u=o.length,n=!1);e.memory||(n=!1),t=!1,i&&(o=n?[]:"")},l={add:function(){return o&&(n&&!t&&(u=o.length-1,a.push(n)),function t(n){he.each(n,function(n,r){he.isFunction(r)?e.unique&&l.has(r)||o.push(r):r&&r.length&&"string"!==he.type(r)&&t(r)})}(arguments),n&&!t&&c()),this},remove:function(){return he.each(arguments,function(e,t){for(var n;(n=he.inArray(t,o,n))>-1;)o.splice(n,1),n<=u&&u--}),this},has:function(e){return e?he.inArray(e,o)>-1:o.length>0},empty:function(){return o&&(o=[]),this},disable:function(){return i=a=[],o=n="",this},disabled:function(){return!o},lock:function(){return i=a=[],n||t||(o=n=""),this},locked:function(){return!!i},fireWith:function(e,n){return i||(n=n||[],n=[e,n.slice?n.slice():n],a.push(n),t||c()),this},fire:function(){return l.fireWith(this,arguments),this},fired:function(){return!!r}};return l},he.extend({Deferred:function(t){var n=[["notify","progress",he.Callbacks("memory"),he.Callbacks("memory"),2],["resolve","done",he.Callbacks("once memory"),he.Callbacks("once memory"),0,"resolved"],["reject","fail",he.Callbacks("once memory"),he.Callbacks("once memory"),1,"rejected"]],r="pending",i={state:function(){return r},always:function(){return o.done(arguments).fail(arguments),this},catch:function(e){return i.then(null,e)},pipe:function(){var e=arguments;return he.Deferred(function(t){he.each(n,function(n,r){var i=he.isFunction(e[r[4]])&&e[r[4]];o[r[1]](function(){var e=i&&i.apply(this,arguments);e&&he.isFunction(e.promise)?e.promise().progress(t.notify).done(t.resolve).fail(t.reject):t[r[0]+"With"](this,i?[e]:arguments)})}),e=null}).promise()},then:function(t,r,i){function o(t,n,r,i){return function(){var s=this,l=arguments,f=function(){var e,f;if(!(t<a)){if((e=r.apply(s,l))===n.promise())throw new TypeError("Thenable self-resolution");f=e&&("object"==typeof e||"function"==typeof e)&&e.then,he.isFunction(f)?i?f.call(e,o(a,n,u,i),o(a,n,c,i)):(a++,f.call(e,o(a,n,u,i),o(a,n,c,i),o(a,n,u,n.notifyWith))):(r!==u&&(s=void 0,l=[e]),(i||n.resolveWith)(s,l))}},p=i?f:function(){try{f()}catch(e){he.Deferred.exceptionHook&&he.Deferred.exceptionHook(e,p.stackTrace),t+1>=a&&(r!==c&&(s=void 0,l=[e]),n.rejectWith(s,l))}};t?p():(he.Deferred.getStackHook&&(p.stackTrace=he.Deferred.getStackHook()),e.setTimeout(p))}}var a=0;return he.Deferred(function(e){n[0][3].add(o(0,e,he.isFunction(i)?i:u,e.notifyWith)),n[1][3].add(o(0,e,he.isFunction(t)?t:u)),n[2][3].add(o(0,e,he.isFunction(r)?r:c))}).promise()},promise:function(e){return null!=e?he.extend(e,i):i}},o={};return he.each(n,function(e,t){var a=t[2],s=t[5];i[t[1]]=a.add,s&&a.add(function(){r=s},n[3-e][2].disable,n[0][2].lock),a.add(t[3].fire),o[t[0]]=function(){return o[t[0]+"With"](this===o?void 0:this,arguments),this},o[t[0]+"With"]=a.fireWith}),i.promise(o),t&&t.call(o,o),o},when:function(e){var t=arguments.length,n=t,r=Array(n),i=ie.call(arguments),o=he.Deferred(),a=function(e){return function(n){r[e]=this,i[e]=arguments.length>1?ie.call(arguments):n,--t||o.resolveWith(r,i)}};if(t<=1&&(l(e,o.done(a(n)).resolve,o.reject,!t),"pending"===o.state()||he.isFunction(i[n]&&i[n].then)))return o.then();for(;n--;)l(i[n],a(n),o.reject);return o.promise()}});var De=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;he.Deferred.exceptionHook=function(t,n){e.console&&e.console.warn&&t&&De.test(t.name)&&e.console.warn("jQuery.Deferred exception: "+t.message,t.stack,n)},he.readyException=function(t){e.setTimeout(function(){throw t})};var Le=he.Deferred();he.fn.ready=function(e){return Le.then(e).catch(function(e){he.readyException(e)}),this},he.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--he.readyWait:he.isReady)||(he.isReady=!0,!0!==e&&--he.readyWait>0||Le.resolveWith(ne,[he]))}}),he.ready.then=Le.then,"complete"===ne.readyState||"loading"!==ne.readyState&&!ne.documentElement.doScroll?e.setTimeout(he.ready):(ne.addEventListener("DOMContentLoaded",f),e.addEventListener("load",f));var qe=function(e,t,n,r,i,o,a){var s=0,u=e.length,c=null==n;if("object"===he.type(n)){i=!0;for(s in n)qe(e,t,s,n[s],!0,o,a)}else if(void 0!==r&&(i=!0,he.isFunction(r)||(a=!0),c&&(a?(t.call(e,r),t=null):(c=t,t=function(e,t,n){return c.call(he(e),n)})),t))for(;s<u;s++)t(e[s],n,a?r:r.call(e[s],s,t(e[s],n)));return i?e:c?t.call(e):u?t(e[0],n):o},He=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};p.uid=1,p.prototype={cache:function(e){var t=e[this.expando];return t||(t={},He(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var r,i=this.cache(e);if("string"==typeof t)i[he.camelCase(t)]=n;else for(r in t)i[he.camelCase(r)]=t[r];return i},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][he.camelCase(t)]},access:function(e,t,n){return void 0===t||t&&"string"==typeof t&&void 0===n?this.get(e,t):(this.set(e,t,n),void 0!==n?n:t)},remove:function(e,t){var n,r=e[this.expando];if(void 0!==r){if(void 0!==t){Array.isArray(t)?t=t.map(he.camelCase):(t=he.camelCase(t),t=t in r?[t]:t.match(je)||[]),n=t.length;for(;n--;)delete r[t[n]]}(void 0===t||he.isEmptyObject(r))&&(e.nodeType?e[this.expando]=void 0:delete e[this.expando])}},hasData:function(e){var t=e[this.expando];return void 0!==t&&!he.isEmptyObject(t)}};var Fe=new p,Oe=new p,$e=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,Pe=/[A-Z]/g;he.extend({hasData:function(e){return Oe.hasData(e)||Fe.hasData(e)},data:function(e,t,n){return Oe.access(e,t,n)},removeData:function(e,t){Oe.remove(e,t)},_data:function(e,t,n){return Fe.access(e,t,n)},_removeData:function(e,t){Fe.remove(e,t)}}),he.fn.extend({data:function(e,t){var n,r,i,o=this[0],a=o&&o.attributes;if(void 0===e){if(this.length&&(i=Oe.get(o),1===o.nodeType&&!Fe.get(o,"hasDataAttrs"))){for(n=a.length;n--;)a[n]&&(r=a[n].name,0===r.indexOf("data-")&&(r=he.camelCase(r.slice(5)),h(o,r,i[r])));Fe.set(o,"hasDataAttrs",!0)}return i}return"object"==typeof e?this.each(function(){Oe.set(this,e)}):qe(this,function(t){var n;if(o&&void 0===t){if(void 0!==(n=Oe.get(o,e)))return n;if(void 0!==(n=h(o,e)))return n}else this.each(function(){Oe.set(this,e,t)})},null,t,arguments.length>1,null,!0)},removeData:function(e){return this.each(function(){Oe.remove(this,e)})}}),he.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=Fe.get(e,t),n&&(!r||Array.isArray(n)?r=Fe.access(e,t,he.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=he.queue(e,t),r=n.length,i=n.shift(),o=he._queueHooks(e,t),a=function(){he.dequeue(e,t)};"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,a,o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return Fe.get(e,n)||Fe.access(e,n,{empty:he.Callbacks("once memory").add(function(){Fe.remove(e,[t+"queue",n])})})}}),he.fn.extend({queue:function(e,t){var n=2;return"string"!=typeof e&&(t=e,e="fx",n--),arguments.length<n?he.queue(this[0],e):void 0===t?this:this.each(function(){var n=he.queue(this,e,t);he._queueHooks(this,e),"fx"===e&&"inprogress"!==n[0]&&he.dequeue(this,e)})},dequeue:function(e){return this.each(function(){he.dequeue(this,e)})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,t){var n,r=1,i=he.Deferred(),o=this,a=this.length,s=function(){--r||i.resolveWith(o,[o])};for("string"!=typeof e&&(t=e,e=void 0),e=e||"fx";a--;)(n=Fe.get(o[a],e+"queueHooks"))&&n.empty&&(r++,n.empty.add(s));return s(),i.promise(t)}});var Re=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,Me=new RegExp("^(?:([+-])=|)("+Re+")([a-z%]*)$","i"),Ie=["Top","Right","Bottom","Left"],We=function(e,t){return e=t||e,"none"===e.style.display||""===e.style.display&&he.contains(e.ownerDocument,e)&&"none"===he.css(e,"display")},Be=function(e,t,n,r){var i,o,a={};for(o in t)a[o]=e.style[o],e.style[o]=t[o];i=n.apply(e,r||[]);for(o in t)e.style[o]=a[o];return i},_e={};he.fn.extend({show:function(){return m(this,!0)},hide:function(){return m(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){We(this)?he(this).show():he(this).hide()})}});var Xe=/^(?:checkbox|radio)$/i,Ue=/<([a-z][^\/\0>\x20\t\r\n\f]+)/i,ze=/^$|\/(?:java|ecma)script/i,Ye={option:[1,"<select multiple='multiple'>","</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};Ye.optgroup=Ye.option,Ye.tbody=Ye.tfoot=Ye.colgroup=Ye.caption=Ye.thead,Ye.th=Ye.td;var Ve=/<|&#?\w+;/;!function(){var e=ne.createDocumentFragment(),t=e.appendChild(ne.createElement("div")),n=ne.createElement("input");n.setAttribute("type","radio"),n.setAttribute("checked","checked"),n.setAttribute("name","t"),t.appendChild(n),de.checkClone=t.cloneNode(!0).cloneNode(!0).lastChild.checked,t.innerHTML="<textarea>x</textarea>",de.noCloneChecked=!!t.cloneNode(!0).lastChild.defaultValue}();var Qe=ne.documentElement,Ge=/^key/,Je=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Ke=/^([^.]*)(?:\.(.+)|)/;he.event={global:{},add:function(e,t,n,r,i){var o,a,s,u,c,l,f,p,d,h,g,v=Fe.get(e);if(v)for(n.handler&&(o=n,n=o.handler,i=o.selector),i&&he.find.matchesSelector(Qe,i),n.guid||(n.guid=he.guid++),(u=v.events)||(u=v.events={}),(a=v.handle)||(a=v.handle=function(t){return void 0!==he&&he.event.triggered!==t.type?he.event.dispatch.apply(e,arguments):void 0}),t=(t||"").match(je)||[""],c=t.length;c--;)s=Ke.exec(t[c])||[],d=g=s[1],h=(s[2]||"").split(".").sort(),d&&(f=he.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=he.event.special[d]||{},l=he.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&he.expr.match.needsContext.test(i),namespace:h.join(".")},o),(p=u[d])||(p=u[d]=[],p.delegateCount=0,f.setup&&!1!==f.setup.call(e,r,h,a)||e.addEventListener&&e.addEventListener(d,a)),f.add&&(f.add.call(e,l),l.handler.guid||(l.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,l):p.push(l),he.event.global[d]=!0)},remove:function(e,t,n,r,i){var o,a,s,u,c,l,f,p,d,h,g,v=Fe.hasData(e)&&Fe.get(e);if(v&&(u=v.events)){for(t=(t||"").match(je)||[""],c=t.length;c--;)if(s=Ke.exec(t[c])||[],d=g=s[1],h=(s[2]||"").split(".").sort(),d){for(f=he.event.special[d]||{},d=(r?f.delegateType:f.bindType)||d,p=u[d]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;o--;)l=p[o],!i&&g!==l.origType||n&&n.guid!==l.guid||s&&!s.test(l.namespace)||r&&r!==l.selector&&("**"!==r||!l.selector)||(p.splice(o,1),l.selector&&p.delegateCount--,f.remove&&f.remove.call(e,l));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||he.removeEvent(e,d,v.handle),delete u[d])}else for(d in u)he.event.remove(e,d+t[c],n,r,!0);he.isEmptyObject(u)&&Fe.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=he.event.fix(e),u=new Array(arguments.length),c=(Fe.get(this,"events")||{})[s.type]||[],l=he.event.special[s.type]||{};for(u[0]=s,t=1;t<arguments.length;t++)u[t]=arguments[t];if(s.delegateTarget=this,!l.preDispatch||!1!==l.preDispatch.call(this,s)){for(a=he.event.handlers.call(this,s,c),t=0;(i=a[t++])&&!s.isPropagationStopped();)for(s.currentTarget=i.elem,n=0;(o=i.handlers[n++])&&!s.isImmediatePropagationStopped();)s.rnamespace&&!s.rnamespace.test(o.namespace)||(s.handleObj=o,s.data=o.data,void 0!==(r=((he.event.special[o.origType]||{}).handle||o.handler).apply(i.elem,u))&&!1===(s.result=r)&&(s.preventDefault(),s.stopPropagation()));return l.postDispatch&&l.postDispatch.call(this,s),s.result}},handlers:function(e,t){var n,r,i,o,a,s=[],u=t.delegateCount,c=e.target;if(u&&c.nodeType&&!("click"===e.type&&e.button>=1))for(;c!==this;c=c.parentNode||this)if(1===c.nodeType&&("click"!==e.type||!0!==c.disabled)){for(o=[],a={},n=0;n<u;n++)r=t[n],i=r.selector+" ",void 0===a[i]&&(a[i]=r.needsContext?he(i,this).index(c)>-1:he.find(i,this,null,[c]).length),a[i]&&o.push(r);o.length&&s.push({elem:c,handlers:o})}return c=this,u<t.length&&s.push({elem:c,handlers:t.slice(u)}),s},addProp:function(e,t){Object.defineProperty(he.Event.prototype,e,{enumerable:!0,configurable:!0,get:he.isFunction(t)?function(){if(this.originalEvent)return t(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[e]},set:function(t){Object.defineProperty(this,e,{enumerable:!0,configurable:!0,writable:!0,value:t})}})},fix:function(e){return e[he.expando]?e:new he.Event(e)},special:{load:{noBubble:!0},focus:{trigger:function(){if(this!==C()&&this.focus)return this.focus(),!1},delegateType:"focusin"},blur:{trigger:function(){if(this===C()&&this.blur)return this.blur(),!1},delegateType:"focusout"},click:{trigger:function(){if("checkbox"===this.type&&this.click&&i(this,"input"))return this.click(),!1},_default:function(e){return i(e.target,"a")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}}},he.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},he.Event=function(e,t){if(!(this instanceof he.Event))return new he.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?w:T,this.target=e.target&&3===e.target.nodeType?e.target.parentNode:e.target,this.currentTarget=e.currentTarget,this.relatedTarget=e.relatedTarget):this.type=e,t&&he.extend(this,t),this.timeStamp=e&&e.timeStamp||he.now(),this[he.expando]=!0},he.Event.prototype={constructor:he.Event,isDefaultPrevented:T,isPropagationStopped:T,isImmediatePropagationStopped:T,isSimulated:!1,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=w,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=w,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=w,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},he.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,char:!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:function(e){var t=e.button;return null==e.which&&Ge.test(e.type)?null!=e.charCode?e.charCode:e.keyCode:!e.which&&void 0!==t&&Je.test(e.type)?1&t?1:2&t?3:4&t?2:0:e.which}},he.event.addProp),he.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(e,t){he.event.special[e]={delegateType:t,bindType:t,handle:function(e){var n,r=this,i=e.relatedTarget,o=e.handleObj;return i&&(i===r||he.contains(r,i))||(e.type=o.origType,n=o.handler.apply(this,arguments),e.type=t),n}}}),he.fn.extend({on:function(e,t,n,r){return E(this,e,t,n,r)},one:function(e,t,n,r){return E(this,e,t,n,r,1)},off:function(e,t,n){var r,i;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,he(e.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this;if("object"==typeof e){for(i in e)this.off(i,t,e[i]);return this}return!1!==t&&"function"!=typeof t||(n=t,t=void 0),!1===n&&(n=T),this.each(function(){he.event.remove(this,e,n,t)})}});var Ze=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi,et=/<script|<style|<link/i,tt=/checked\s*(?:[^=]|=\s*.checked.)/i,nt=/^true\/(.*)/,rt=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;he.extend({htmlPrefilter:function(e){return e.replace(Ze,"<$1></$2>")},clone:function(e,t,n){var r,i,o,a,s=e.cloneNode(!0),u=he.contains(e.ownerDocument,e);if(!(de.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||he.isXMLDoc(e)))for(a=y(s),o=y(e),r=0,i=o.length;r<i;r++)j(o[r],a[r]);if(t)if(n)for(o=o||y(e),a=a||y(s),r=0,i=o.length;r<i;r++)A(o[r],a[r]);else A(e,s);return a=y(s,"script"),a.length>0&&x(a,!u&&y(e,"script")),s},cleanData:function(e){for(var t,n,r,i=he.event.special,o=0;void 0!==(n=e[o]);o++)if(He(n)){if(t=n[Fe.expando]){if(t.events)for(r in t.events)i[r]?he.event.remove(n,r):he.removeEvent(n,r,t.handle);n[Fe.expando]=void 0}n[Oe.expando]&&(n[Oe.expando]=void 0)}}}),he.fn.extend({detach:function(e){return L(this,e,!0)},remove:function(e){return L(this,e)},text:function(e){return qe(this,function(e){return void 0===e?he.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return D(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){k(this,e).appendChild(e)}})},prepend:function(){return D(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=k(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return D(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return D(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(he.cleanData(y(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return he.clone(this,e,t)})},html:function(e){return qe(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!et.test(e)&&!Ye[(Ue.exec(e)||["",""])[1].toLowerCase()]){e=he.htmlPrefilter(e);try{for(;n<r;n++)t=this[n]||{},1===t.nodeType&&(he.cleanData(y(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var e=[];return D(this,arguments,function(t){var n=this.parentNode;he.inArray(this,e)<0&&(he.cleanData(y(this)),n&&n.replaceChild(t,this))},e)}}),he.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,t){he.fn[e]=function(e){for(var n,r=[],i=he(e),o=i.length-1,a=0;a<=o;a++)n=a===o?this:this.clone(!0),he(i[a])[t](n),ae.apply(r,n.get());return this.pushStack(r)}});var it=/^margin/,ot=new RegExp("^("+Re+")(?!px)[a-z%]+$","i"),at=function(t){var n=t.ownerDocument.defaultView;return n&&n.opener||(n=e),n.getComputedStyle(t)};!function(){function t(){if(s){s.style.cssText="box-sizing:border-box;position:relative;display:block;margin:auto;border:1px;padding:1px;top:1%;width:50%",s.innerHTML="",Qe.appendChild(a);var t=e.getComputedStyle(s);n="1%"!==t.top,o="2px"===t.marginLeft,r="4px"===t.width,s.style.marginRight="50%",i="4px"===t.marginRight,Qe.removeChild(a),s=null}}var n,r,i,o,a=ne.createElement("div"),s=ne.createElement("div");s.style&&(s.style.backgroundClip="content-box",s.cloneNode(!0).style.backgroundClip="",de.clearCloneStyle="content-box"===s.style.backgroundClip,a.style.cssText="border:0;width:8px;height:0;top:0;left:-9999px;padding:0;margin-top:1px;position:absolute",a.appendChild(s),he.extend(de,{pixelPosition:function(){return t(),n},boxSizingReliable:function(){return t(),r},pixelMarginRight:function(){return t(),i},reliableMarginLeft:function(){return t(),o}}))}();var st=/^(none|table(?!-c[ea]).+)/,ut=/^--/,ct={position:"absolute",visibility:"hidden",display:"block"},lt={letterSpacing:"0",fontWeight:"400"},ft=["Webkit","Moz","ms"],pt=ne.createElement("div").style;he.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=q(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{float:"cssFloat"},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,s=he.camelCase(t),u=ut.test(t),c=e.style;if(u||(t=O(s)),a=he.cssHooks[t]||he.cssHooks[s],void 0===n)return a&&"get"in a&&void 0!==(i=a.get(e,!1,r))?i:c[t];o=typeof n,"string"===o&&(i=Me.exec(n))&&i[1]&&(n=g(e,t,i),o="number"),null!=n&&n===n&&("number"===o&&(n+=i&&i[3]||(he.cssNumber[s]?"":"px")),de.clearCloneStyle||""!==n||0!==t.indexOf("background")||(c[t]="inherit"),a&&"set"in a&&void 0===(n=a.set(e,n,r))||(u?c.setProperty(t,n):c[t]=n))}},css:function(e,t,n,r){var i,o,a,s=he.camelCase(t);return ut.test(t)||(t=O(s)),a=he.cssHooks[t]||he.cssHooks[s],a&&"get"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=q(e,t,r)),"normal"===i&&t in lt&&(i=lt[t]),""===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),he.each(["height","width"],function(e,t){he.cssHooks[t]={get:function(e,n,r){if(n)return!st.test(he.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?R(e,t,r):Be(e,ct,function(){return R(e,t,r)})},set:function(e,n,r){var i,o=r&&at(e),a=r&&P(e,t,r,"border-box"===he.css(e,"boxSizing",!1,o),o);return a&&(i=Me.exec(n))&&"px"!==(i[3]||"px")&&(e.style[t]=n,n=he.css(e,t)),$(e,n,a)}}}),he.cssHooks.marginLeft=H(de.reliableMarginLeft,function(e,t){if(t)return(parseFloat(q(e,"marginLeft"))||e.getBoundingClientRect().left-Be(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px"}),he.each({margin:"",padding:"",border:"Width"},function(e,t){he.cssHooks[e+t]={expand:function(n){for(var r=0,i={},o="string"==typeof n?n.split(" "):[n];r<4;r++)i[e+Ie[r]+t]=o[r]||o[r-2]||o[0];return i}},it.test(e)||(he.cssHooks[e+t].set=$)}),he.fn.extend({css:function(e,t){return qe(this,function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=at(e),i=t.length;a<i;a++)o[t[a]]=he.css(e,t[a],!1,r);return o}return void 0!==n?he.style(e,t,n):he.css(e,t)},e,t,arguments.length>1)}}),he.Tween=M,M.prototype={constructor:M,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||he.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(he.cssNumber[n]?"":"px")},cur:function(){var e=M.propHooks[this.prop];return e&&e.get?e.get(this):M.propHooks._default.get(this)},run:function(e){var t,n=M.propHooks[this.prop];return this.options.duration?this.pos=t=he.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):M.propHooks._default.set(this),this}},M.prototype.init.prototype=M.prototype,M.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=he.css(e.elem,e.prop,""),t&&"auto"!==t?t:0)},set:function(e){he.fx.step[e.prop]?he.fx.step[e.prop](e):1!==e.elem.nodeType||null==e.elem.style[he.cssProps[e.prop]]&&!he.cssHooks[e.prop]?e.elem[e.prop]=e.now:he.style(e.elem,e.prop,e.now+e.unit)}}},M.propHooks.scrollTop=M.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},he.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},he.fx=M.prototype.init,he.fx.step={};var dt,ht,gt=/^(?:toggle|show|hide)$/,vt=/queueHooks$/;he.Animation=he.extend(z,{tweeners:{"*":[function(e,t){var n=this.createTween(e,t);return g(n.elem,e,Me.exec(t),n),n}]},tweener:function(e,t){he.isFunction(e)?(t=e,e=["*"]):e=e.match(je);for(var n,r=0,i=e.length;r<i;r++)n=e[r],z.tweeners[n]=z.tweeners[n]||[],z.tweeners[n].unshift(t)},prefilters:[X],prefilter:function(e,t){t?z.prefilters.unshift(e):z.prefilters.push(e)}}),he.speed=function(e,t,n){var r=e&&"object"==typeof e?he.extend({},e):{complete:n||!n&&t||he.isFunction(e)&&e,duration:e,easing:n&&t||t&&!he.isFunction(t)&&t};return he.fx.off?r.duration=0:"number"!=typeof r.duration&&(r.duration in he.fx.speeds?r.duration=he.fx.speeds[r.duration]:r.duration=he.fx.speeds._default),null!=r.queue&&!0!==r.queue||(r.queue="fx"),r.old=r.complete,r.complete=function(){he.isFunction(r.old)&&r.old.call(this),r.queue&&he.dequeue(this,r.queue)},r},he.fn.extend({fadeTo:function(e,t,n,r){return this.filter(We).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(e,t,n,r){var i=he.isEmptyObject(e),o=he.speed(t,n,r),a=function(){var t=z(this,he.extend({},e),o);(i||Fe.get(this,"finish"))&&t.stop(!0)};return a.finish=a,i||!1===o.queue?this.each(a):this.queue(o.queue,a)},stop:function(e,t,n){var r=function(e){var t=e.stop;delete e.stop,t(n)};return"string"!=typeof e&&(n=t,t=e,e=void 0),t&&!1!==e&&this.queue(e||"fx",[]),this.each(function(){var t=!0,i=null!=e&&e+"queueHooks",o=he.timers,a=Fe.get(this);if(i)a[i]&&a[i].stop&&r(a[i]);else for(i in a)a[i]&&a[i].stop&&vt.test(i)&&r(a[i])
;for(i=o.length;i--;)o[i].elem!==this||null!=e&&o[i].queue!==e||(o[i].anim.stop(n),t=!1,o.splice(i,1));!t&&n||he.dequeue(this,e)})},finish:function(e){return!1!==e&&(e=e||"fx"),this.each(function(){var t,n=Fe.get(this),r=n[e+"queue"],i=n[e+"queueHooks"],o=he.timers,a=r?r.length:0;for(n.finish=!0,he.queue(this,e,[]),i&&i.stop&&i.stop.call(this,!0),t=o.length;t--;)o[t].elem===this&&o[t].queue===e&&(o[t].anim.stop(!0),o.splice(t,1));for(t=0;t<a;t++)r[t]&&r[t].finish&&r[t].finish.call(this);delete n.finish})}}),he.each(["toggle","show","hide"],function(e,t){var n=he.fn[t];he.fn[t]=function(e,r,i){return null==e||"boolean"==typeof e?n.apply(this,arguments):this.animate(B(t,!0),e,r,i)}}),he.each({slideDown:B("show"),slideUp:B("hide"),slideToggle:B("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,t){he.fn[e]=function(e,n,r){return this.animate(t,e,n,r)}}),he.timers=[],he.fx.tick=function(){var e,t=0,n=he.timers;for(dt=he.now();t<n.length;t++)(e=n[t])()||n[t]!==e||n.splice(t--,1);n.length||he.fx.stop(),dt=void 0},he.fx.timer=function(e){he.timers.push(e),he.fx.start()},he.fx.interval=13,he.fx.start=function(){ht||(ht=!0,I())},he.fx.stop=function(){ht=null},he.fx.speeds={slow:600,fast:200,_default:400},he.fn.delay=function(t,n){return t=he.fx?he.fx.speeds[t]||t:t,n=n||"fx",this.queue(n,function(n,r){var i=e.setTimeout(n,t);r.stop=function(){e.clearTimeout(i)}})},function(){var e=ne.createElement("input"),t=ne.createElement("select"),n=t.appendChild(ne.createElement("option"));e.type="checkbox",de.checkOn=""!==e.value,de.optSelected=n.selected,e=ne.createElement("input"),e.value="t",e.type="radio",de.radioValue="t"===e.value}();var mt,yt=he.expr.attrHandle;he.fn.extend({attr:function(e,t){return qe(this,he.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each(function(){he.removeAttr(this,e)})}}),he.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return void 0===e.getAttribute?he.prop(e,t,n):(1===o&&he.isXMLDoc(e)||(i=he.attrHooks[t.toLowerCase()]||(he.expr.match.bool.test(t)?mt:void 0)),void 0!==n?null===n?void he.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:(r=he.find.attr(e,t),null==r?void 0:r))},attrHooks:{type:{set:function(e,t){if(!de.radioValue&&"radio"===t&&i(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(je);if(i&&1===e.nodeType)for(;n=i[r++];)e.removeAttribute(n)}}),mt={set:function(e,t,n){return!1===t?he.removeAttr(e,n):e.setAttribute(n,n),n}},he.each(he.expr.match.bool.source.match(/\w+/g),function(e,t){var n=yt[t]||he.find.attr;yt[t]=function(e,t,r){var i,o,a=t.toLowerCase();return r||(o=yt[a],yt[a]=i,i=null!=n(e,t,r)?a:null,yt[a]=o),i}});var xt=/^(?:input|select|textarea|button)$/i,bt=/^(?:a|area)$/i;he.fn.extend({prop:function(e,t){return qe(this,he.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each(function(){delete this[he.propFix[e]||e]})}}),he.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&he.isXMLDoc(e)||(t=he.propFix[t]||t,i=he.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=he.find.attr(e,"tabindex");return t?parseInt(t,10):xt.test(e.nodeName)||bt.test(e.nodeName)&&e.href?0:-1}}},propFix:{for:"htmlFor",class:"className"}}),de.optSelected||(he.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),he.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){he.propFix[this.toLowerCase()]=this}),he.fn.extend({addClass:function(e){var t,n,r,i,o,a,s,u=0;if(he.isFunction(e))return this.each(function(t){he(this).addClass(e.call(this,t,V(this)))});if("string"==typeof e&&e)for(t=e.match(je)||[];n=this[u++];)if(i=V(n),r=1===n.nodeType&&" "+Y(i)+" "){for(a=0;o=t[a++];)r.indexOf(" "+o+" ")<0&&(r+=o+" ");s=Y(r),i!==s&&n.setAttribute("class",s)}return this},removeClass:function(e){var t,n,r,i,o,a,s,u=0;if(he.isFunction(e))return this.each(function(t){he(this).removeClass(e.call(this,t,V(this)))});if(!arguments.length)return this.attr("class","");if("string"==typeof e&&e)for(t=e.match(je)||[];n=this[u++];)if(i=V(n),r=1===n.nodeType&&" "+Y(i)+" "){for(a=0;o=t[a++];)for(;r.indexOf(" "+o+" ")>-1;)r=r.replace(" "+o+" "," ");s=Y(r),i!==s&&n.setAttribute("class",s)}return this},toggleClass:function(e,t){var n=typeof e;return"boolean"==typeof t&&"string"===n?t?this.addClass(e):this.removeClass(e):he.isFunction(e)?this.each(function(n){he(this).toggleClass(e.call(this,n,V(this),t),t)}):this.each(function(){var t,r,i,o;if("string"===n)for(r=0,i=he(this),o=e.match(je)||[];t=o[r++];)i.hasClass(t)?i.removeClass(t):i.addClass(t);else void 0!==e&&"boolean"!==n||(t=V(this),t&&Fe.set(this,"__className__",t),this.setAttribute&&this.setAttribute("class",t||!1===e?"":Fe.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;for(t=" "+e+" ";n=this[r++];)if(1===n.nodeType&&(" "+Y(V(n))+" ").indexOf(t)>-1)return!0;return!1}});var wt=/\r/g;he.fn.extend({val:function(e){var t,n,r,i=this[0];{if(arguments.length)return r=he.isFunction(e),this.each(function(n){var i;1===this.nodeType&&(i=r?e.call(this,n,he(this).val()):e,null==i?i="":"number"==typeof i?i+="":Array.isArray(i)&&(i=he.map(i,function(e){return null==e?"":e+""})),(t=he.valHooks[this.type]||he.valHooks[this.nodeName.toLowerCase()])&&"set"in t&&void 0!==t.set(this,i,"value")||(this.value=i))});if(i)return(t=he.valHooks[i.type]||he.valHooks[i.nodeName.toLowerCase()])&&"get"in t&&void 0!==(n=t.get(i,"value"))?n:(n=i.value,"string"==typeof n?n.replace(wt,""):null==n?"":n)}}}),he.extend({valHooks:{option:{get:function(e){var t=he.find.attr(e,"value");return null!=t?t:Y(he.text(e))}},select:{get:function(e){var t,n,r,o=e.options,a=e.selectedIndex,s="select-one"===e.type,u=s?null:[],c=s?a+1:o.length;for(r=a<0?c:s?a:0;r<c;r++)if(n=o[r],(n.selected||r===a)&&!n.disabled&&(!n.parentNode.disabled||!i(n.parentNode,"optgroup"))){if(t=he(n).val(),s)return t;u.push(t)}return u},set:function(e,t){for(var n,r,i=e.options,o=he.makeArray(t),a=i.length;a--;)r=i[a],(r.selected=he.inArray(he.valHooks.option.get(r),o)>-1)&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),he.each(["radio","checkbox"],function(){he.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=he.inArray(he(e).val(),t)>-1}},de.checkOn||(he.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})});var Tt=/^(?:focusinfocus|focusoutblur)$/;he.extend(he.event,{trigger:function(t,n,r,i){var o,a,s,u,c,l,f,p=[r||ne],d=le.call(t,"type")?t.type:t,h=le.call(t,"namespace")?t.namespace.split("."):[];if(a=s=r=r||ne,3!==r.nodeType&&8!==r.nodeType&&!Tt.test(d+he.event.triggered)&&(d.indexOf(".")>-1&&(h=d.split("."),d=h.shift(),h.sort()),c=d.indexOf(":")<0&&"on"+d,t=t[he.expando]?t:new he.Event(d,"object"==typeof t&&t),t.isTrigger=i?2:3,t.namespace=h.join("."),t.rnamespace=t.namespace?new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=void 0,t.target||(t.target=r),n=null==n?[t]:he.makeArray(n,[t]),f=he.event.special[d]||{},i||!f.trigger||!1!==f.trigger.apply(r,n))){if(!i&&!f.noBubble&&!he.isWindow(r)){for(u=f.delegateType||d,Tt.test(u+d)||(a=a.parentNode);a;a=a.parentNode)p.push(a),s=a;s===(r.ownerDocument||ne)&&p.push(s.defaultView||s.parentWindow||e)}for(o=0;(a=p[o++])&&!t.isPropagationStopped();)t.type=o>1?u:f.bindType||d,l=(Fe.get(a,"events")||{})[t.type]&&Fe.get(a,"handle"),l&&l.apply(a,n),(l=c&&a[c])&&l.apply&&He(a)&&(t.result=l.apply(a,n),!1===t.result&&t.preventDefault());return t.type=d,i||t.isDefaultPrevented()||f._default&&!1!==f._default.apply(p.pop(),n)||!He(r)||c&&he.isFunction(r[d])&&!he.isWindow(r)&&(s=r[c],s&&(r[c]=null),he.event.triggered=d,r[d](),he.event.triggered=void 0,s&&(r[c]=s)),t.result}},simulate:function(e,t,n){var r=he.extend(new he.Event,n,{type:e,isSimulated:!0});he.event.trigger(r,null,t)}}),he.fn.extend({trigger:function(e,t){return this.each(function(){he.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return he.event.trigger(e,t,n,!0)}}),he.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,t){he.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}),he.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),de.focusin="onfocusin"in e,de.focusin||he.each({focus:"focusin",blur:"focusout"},function(e,t){var n=function(e){he.event.simulate(t,e.target,he.event.fix(e))};he.event.special[t]={setup:function(){var r=this.ownerDocument||this,i=Fe.access(r,t);i||r.addEventListener(e,n,!0),Fe.access(r,t,(i||0)+1)},teardown:function(){var r=this.ownerDocument||this,i=Fe.access(r,t)-1;i?Fe.access(r,t,i):(r.removeEventListener(e,n,!0),Fe.remove(r,t))}}});var Ct=e.location,Et=he.now(),kt=/\?/;he.parseXML=function(t){var n;if(!t||"string"!=typeof t)return null;try{n=(new e.DOMParser).parseFromString(t,"text/xml")}catch(e){n=void 0}return n&&!n.getElementsByTagName("parsererror").length||he.error("Invalid XML: "+t),n};var St=/\[\]$/,Nt=/\r?\n/g,At=/^(?:submit|button|image|reset|file)$/i,jt=/^(?:input|select|textarea|keygen)/i;he.param=function(e,t){var n,r=[],i=function(e,t){var n=he.isFunction(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(Array.isArray(e)||e.jquery&&!he.isPlainObject(e))he.each(e,function(){i(this.name,this.value)});else for(n in e)Q(n,e[n],t,i);return r.join("&")},he.fn.extend({serialize:function(){return he.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=he.prop(this,"elements");return e?he.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!he(this).is(":disabled")&&jt.test(this.nodeName)&&!At.test(e)&&(this.checked||!Xe.test(e))}).map(function(e,t){var n=he(this).val();return null==n?null:Array.isArray(n)?he.map(n,function(e){return{name:t.name,value:e.replace(Nt,"\r\n")}}):{name:t.name,value:n.replace(Nt,"\r\n")}}).get()}});var Dt=/%20/g,Lt=/#.*$/,qt=/([?&])_=[^&]*/,Ht=/^(.*?):[ \t]*([^\r\n]*)$/gm,Ft=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,Ot=/^(?:GET|HEAD)$/,$t=/^\/\//,Pt={},Rt={},Mt="*/".concat("*"),It=ne.createElement("a");It.href=Ct.href,he.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:Ct.href,type:"GET",isLocal:Ft.test(Ct.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Mt,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":he.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?K(K(e,he.ajaxSettings),t):K(he.ajaxSettings,e)},ajaxPrefilter:G(Pt),ajaxTransport:G(Rt),ajax:function(t,n){function r(t,n,r,s){var c,p,d,b,w,T=n;l||(l=!0,u&&e.clearTimeout(u),i=void 0,a=s||"",C.readyState=t>0?4:0,c=t>=200&&t<300||304===t,r&&(b=Z(h,C,r)),b=ee(h,b,C,c),c?(h.ifModified&&(w=C.getResponseHeader("Last-Modified"),w&&(he.lastModified[o]=w),(w=C.getResponseHeader("etag"))&&(he.etag[o]=w)),204===t||"HEAD"===h.type?T="nocontent":304===t?T="notmodified":(T=b.state,p=b.data,d=b.error,c=!d)):(d=T,!t&&T||(T="error",t<0&&(t=0))),C.status=t,C.statusText=(n||T)+"",c?m.resolveWith(g,[p,T,C]):m.rejectWith(g,[C,T,d]),C.statusCode(x),x=void 0,f&&v.trigger(c?"ajaxSuccess":"ajaxError",[C,h,c?p:d]),y.fireWith(g,[C,T]),f&&(v.trigger("ajaxComplete",[C,h]),--he.active||he.event.trigger("ajaxStop")))}"object"==typeof t&&(n=t,t=void 0),n=n||{};var i,o,a,s,u,c,l,f,p,d,h=he.ajaxSetup({},n),g=h.context||h,v=h.context&&(g.nodeType||g.jquery)?he(g):he.event,m=he.Deferred(),y=he.Callbacks("once memory"),x=h.statusCode||{},b={},w={},T="canceled",C={readyState:0,getResponseHeader:function(e){var t;if(l){if(!s)for(s={};t=Ht.exec(a);)s[t[1].toLowerCase()]=t[2];t=s[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return l?a:null},setRequestHeader:function(e,t){return null==l&&(e=w[e.toLowerCase()]=w[e.toLowerCase()]||e,b[e]=t),this},overrideMimeType:function(e){return null==l&&(h.mimeType=e),this},statusCode:function(e){var t;if(e)if(l)C.always(e[C.status]);else for(t in e)x[t]=[x[t],e[t]];return this},abort:function(e){var t=e||T;return i&&i.abort(t),r(0,t),this}};if(m.promise(C),h.url=((t||h.url||Ct.href)+"").replace($t,Ct.protocol+"//"),h.type=n.method||n.type||h.method||h.type,h.dataTypes=(h.dataType||"*").toLowerCase().match(je)||[""],null==h.crossDomain){c=ne.createElement("a");try{c.href=h.url,c.href=c.href,h.crossDomain=It.protocol+"//"+It.host!=c.protocol+"//"+c.host}catch(e){h.crossDomain=!0}}if(h.data&&h.processData&&"string"!=typeof h.data&&(h.data=he.param(h.data,h.traditional)),J(Pt,h,n,C),l)return C;f=he.event&&h.global,f&&0==he.active++&&he.event.trigger("ajaxStart"),h.type=h.type.toUpperCase(),h.hasContent=!Ot.test(h.type),o=h.url.replace(Lt,""),h.hasContent?h.data&&h.processData&&0===(h.contentType||"").indexOf("application/x-www-form-urlencoded")&&(h.data=h.data.replace(Dt,"+")):(d=h.url.slice(o.length),h.data&&(o+=(kt.test(o)?"&":"?")+h.data,delete h.data),!1===h.cache&&(o=o.replace(qt,"$1"),d=(kt.test(o)?"&":"?")+"_="+Et+++d),h.url=o+d),h.ifModified&&(he.lastModified[o]&&C.setRequestHeader("If-Modified-Since",he.lastModified[o]),he.etag[o]&&C.setRequestHeader("If-None-Match",he.etag[o])),(h.data&&h.hasContent&&!1!==h.contentType||n.contentType)&&C.setRequestHeader("Content-Type",h.contentType),C.setRequestHeader("Accept",h.dataTypes[0]&&h.accepts[h.dataTypes[0]]?h.accepts[h.dataTypes[0]]+("*"!==h.dataTypes[0]?", "+Mt+"; q=0.01":""):h.accepts["*"]);for(p in h.headers)C.setRequestHeader(p,h.headers[p]);if(h.beforeSend&&(!1===h.beforeSend.call(g,C,h)||l))return C.abort();if(T="abort",y.add(h.complete),C.done(h.success),C.fail(h.error),i=J(Rt,h,n,C)){if(C.readyState=1,f&&v.trigger("ajaxSend",[C,h]),l)return C;h.async&&h.timeout>0&&(u=e.setTimeout(function(){C.abort("timeout")},h.timeout));try{l=!1,i.send(b,r)}catch(e){if(l)throw e;r(-1,e)}}else r(-1,"No Transport");return C},getJSON:function(e,t,n){return he.get(e,t,n,"json")},getScript:function(e,t){return he.get(e,void 0,t,"script")}}),he.each(["get","post"],function(e,t){he[t]=function(e,n,r,i){return he.isFunction(n)&&(i=i||r,r=n,n=void 0),he.ajax(he.extend({url:e,type:t,dataType:i,data:n,success:r},he.isPlainObject(e)&&e))}}),he._evalUrl=function(e){return he.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,throws:!0})},he.fn.extend({wrapAll:function(e){var t;return this[0]&&(he.isFunction(e)&&(e=e.call(this[0])),t=he(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){for(var e=this;e.firstElementChild;)e=e.firstElementChild;return e}).append(this)),this},wrapInner:function(e){return he.isFunction(e)?this.each(function(t){he(this).wrapInner(e.call(this,t))}):this.each(function(){var t=he(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=he.isFunction(e);return this.each(function(n){he(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(e){return this.parent(e).not("body").each(function(){he(this).replaceWith(this.childNodes)}),this}}),he.expr.pseudos.hidden=function(e){return!he.expr.pseudos.visible(e)},he.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},he.ajaxSettings.xhr=function(){try{return new e.XMLHttpRequest}catch(e){}};var Wt={0:200,1223:204},Bt=he.ajaxSettings.xhr();de.cors=!!Bt&&"withCredentials"in Bt,de.ajax=Bt=!!Bt,he.ajaxTransport(function(t){var n,r;if(de.cors||Bt&&!t.crossDomain)return{send:function(i,o){var a,s=t.xhr();if(s.open(t.type,t.url,t.async,t.username,t.password),t.xhrFields)for(a in t.xhrFields)s[a]=t.xhrFields[a];t.mimeType&&s.overrideMimeType&&s.overrideMimeType(t.mimeType),t.crossDomain||i["X-Requested-With"]||(i["X-Requested-With"]="XMLHttpRequest");for(a in i)s.setRequestHeader(a,i[a]);n=function(e){return function(){n&&(n=r=s.onload=s.onerror=s.onabort=s.onreadystatechange=null,"abort"===e?s.abort():"error"===e?"number"!=typeof s.status?o(0,"error"):o(s.status,s.statusText):o(Wt[s.status]||s.status,s.statusText,"text"!==(s.responseType||"text")||"string"!=typeof s.responseText?{binary:s.response}:{text:s.responseText},s.getAllResponseHeaders()))}},s.onload=n(),r=s.onerror=n("error"),void 0!==s.onabort?s.onabort=r:s.onreadystatechange=function(){4===s.readyState&&e.setTimeout(function(){n&&r()})},n=n("abort");try{s.send(t.hasContent&&t.data||null)}catch(e){if(n)throw e}},abort:function(){n&&n()}}}),he.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),he.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return he.globalEval(e),e}}}),he.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),he.ajaxTransport("script",function(e){if(e.crossDomain){var t,n;return{send:function(r,i){t=he("<script>").prop({charset:e.scriptCharset,src:e.url}).on("load error",n=function(e){t.remove(),n=null,e&&i("error"===e.type?404:200,e.type)}),ne.head.appendChild(t[0])},abort:function(){n&&n()}}}});var _t=[],Xt=/(=)\?(?=&|$)|\?\?/;he.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=_t.pop()||he.expando+"_"+Et++;return this[e]=!0,e}}),he.ajaxPrefilter("json jsonp",function(t,n,r){var i,o,a,s=!1!==t.jsonp&&(Xt.test(t.url)?"url":"string"==typeof t.data&&0===(t.contentType||"").indexOf("application/x-www-form-urlencoded")&&Xt.test(t.data)&&"data");if(s||"jsonp"===t.dataTypes[0])return i=t.jsonpCallback=he.isFunction(t.jsonpCallback)?t.jsonpCallback():t.jsonpCallback,s?t[s]=t[s].replace(Xt,"$1"+i):!1!==t.jsonp&&(t.url+=(kt.test(t.url)?"&":"?")+t.jsonp+"="+i),t.converters["script json"]=function(){return a||he.error(i+" was not called"),a[0]},t.dataTypes[0]="json",o=e[i],e[i]=function(){a=arguments},r.always(function(){void 0===o?he(e).removeProp(i):e[i]=o,t[i]&&(t.jsonpCallback=n.jsonpCallback,_t.push(i)),a&&he.isFunction(o)&&o(a[0]),a=o=void 0}),"script"}),de.createHTMLDocument=function(){var e=ne.implementation.createHTMLDocument("").body;return e.innerHTML="<form></form><form></form>",2===e.childNodes.length}(),he.parseHTML=function(e,t,n){if("string"!=typeof e)return[];"boolean"==typeof t&&(n=t,t=!1);var r,i,o;return t||(de.createHTMLDocument?(t=ne.implementation.createHTMLDocument(""),r=t.createElement("base"),r.href=ne.location.href,t.head.appendChild(r)):t=ne),i=Ce.exec(e),o=!n&&[],i?[t.createElement(i[1])]:(i=b([e],t,o),o&&o.length&&he(o).remove(),he.merge([],i.childNodes))},he.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return s>-1&&(r=Y(e.slice(s)),e=e.slice(0,s)),he.isFunction(t)?(n=t,t=void 0):t&&"object"==typeof t&&(i="POST"),a.length>0&&he.ajax({url:e,type:i||"GET",dataType:"html",data:t}).done(function(e){o=arguments,a.html(r?he("<div>").append(he.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},he.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){he.fn[t]=function(e){return this.on(t,e)}}),he.expr.pseudos.animated=function(e){return he.grep(he.timers,function(t){return e===t.elem}).length},he.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,c,l=he.css(e,"position"),f=he(e),p={};"static"===l&&(e.style.position="relative"),s=f.offset(),o=he.css(e,"top"),u=he.css(e,"left"),c=("absolute"===l||"fixed"===l)&&(o+u).indexOf("auto")>-1,c?(r=f.position(),a=r.top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),he.isFunction(t)&&(t=t.call(e,n,he.extend({},s))),null!=t.top&&(p.top=t.top-s.top+a),null!=t.left&&(p.left=t.left-s.left+i),"using"in t?t.using.call(e,p):f.css(p)}},he.fn.extend({offset:function(e){if(arguments.length)return void 0===e?this:this.each(function(t){he.offset.setOffset(this,e,t)});var t,n,r,i,o=this[0];if(o)return o.getClientRects().length?(r=o.getBoundingClientRect(),t=o.ownerDocument,n=t.documentElement,i=t.defaultView,{top:r.top+i.pageYOffset-n.clientTop,left:r.left+i.pageXOffset-n.clientLeft}):{top:0,left:0}},position:function(){if(this[0]){var e,t,n=this[0],r={top:0,left:0};return"fixed"===he.css(n,"position")?t=n.getBoundingClientRect():(e=this.offsetParent(),t=this.offset(),i(e[0],"html")||(r=e.offset()),r={top:r.top+he.css(e[0],"borderTopWidth",!0),left:r.left+he.css(e[0],"borderLeftWidth",!0)}),{top:t.top-r.top-he.css(n,"marginTop",!0),left:t.left-r.left-he.css(n,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){for(var e=this.offsetParent;e&&"static"===he.css(e,"position");)e=e.offsetParent;return e||Qe})}}),he.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,t){var n="pageYOffset"===t;he.fn[e]=function(r){return qe(this,function(e,r,i){var o;if(he.isWindow(e)?o=e:9===e.nodeType&&(o=e.defaultView),void 0===i)return o?o[t]:e[r];o?o.scrollTo(n?o.pageXOffset:i,n?i:o.pageYOffset):e[r]=i},e,r,arguments.length)}}),he.each(["top","left"],function(e,t){he.cssHooks[t]=H(de.pixelPosition,function(e,n){if(n)return n=q(e,t),ot.test(n)?he(e).position()[t]+"px":n})}),he.each({Height:"height",Width:"width"},function(e,t){he.each({padding:"inner"+e,content:t,"":"outer"+e},function(n,r){he.fn[r]=function(i,o){var a=arguments.length&&(n||"boolean"!=typeof i),s=n||(!0===i||!0===o?"margin":"border");return qe(this,function(t,n,i){var o;return he.isWindow(t)?0===r.indexOf("outer")?t["inner"+e]:t.document.documentElement["client"+e]:9===t.nodeType?(o=t.documentElement,Math.max(t.body["scroll"+e],o["scroll"+e],t.body["offset"+e],o["offset"+e],o["client"+e])):void 0===i?he.css(t,n,s):he.style(t,n,i,s)},t,a?i:void 0,a)}})}),he.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)}}),he.holdReady=function(e){e?he.readyWait++:he.ready(!0)},he.isArray=Array.isArray,he.parseJSON=JSON.parse,he.nodeName=i,"function"==typeof define&&define.amd&&define("jquery",[],function(){return he});var Ut=e.jQuery,zt=e.$;return he.noConflict=function(t){return e.$===he&&(e.$=zt),t&&e.jQuery===he&&(e.jQuery=Ut),he},t||(e.jQuery=e.$=he),he}),function(){if("ontouchstart"in window){var e,t,n,r,i,o,a={};e=function(e,t){return Math.abs(e[0]-t[0])>5||Math.abs(e[1]-t[1])>5},t=function(e){this.startXY=[e.touches[0].clientX,e.touches[0].clientY],this.threshold=!1},n=function(t){if(this.threshold)return!1;this.threshold=e(this.startXY,[t.touches[0].clientX,t.touches[0].clientY])},r=function(t){if(!this.threshold&&!e(this.startXY,[t.changedTouches[0].clientX,t.changedTouches[0].clientY])){var n=t.changedTouches[0],r=document.createEvent("MouseEvents");r.initMouseEvent("click",!0,!0,window,0,n.screenX,n.screenY,n.clientX,n.clientY,!1,!1,!1,!1,0,null),r.simulated=!0,t.target.dispatchEvent(r)}},i=function(e){var t=Date.now(),n=t-a.time,r=e.clientX,i=e.clientY,s=[Math.abs(a.x-r),Math.abs(a.y-i)],u=o(e.target,"A")||e.target,c=u.nodeName,l="A"===c,f=window.navigator.standalone&&l&&e.target.getAttribute("href");if(a.time=t,a.x=r,a.y=i,(!e.simulated&&(n<500||n<1500&&s[0]<50&&s[1]<50)||f)&&(e.preventDefault(),e.stopPropagation(),!f))return!1;f&&(window.location=u.getAttribute("href")),u&&u.classList&&(u.classList.add("energize-focus"),window.setTimeout(function(){u.classList.remove("energize-focus")},150))},o=function(e,t){for(var n=e;n!==document.body;){if(!n||n.nodeName===t)return n;n=n.parentNode}return null},document.addEventListener("touchstart",t,!1),document.addEventListener("touchmove",n,!1),document.addEventListener("touchend",r,!1),document.addEventListener("click",i,!0)}}(),function(){"use strict";function e(e){if(e&&""!==e){$(".lang-selector a").removeClass("active"),$(".lang-selector a[data-language-name='"+e+"']").addClass("active");for(var t=0;t<s.length;t++)$(".highlight.tab-"+s[t]).hide(),$(".lang-specific."+s[t]).hide();$(".highlight.tab-"+e).show(),$(".lang-specific."+e).show(),window.recacheHeights(),$(window.location.hash).get(0)&&$(window.location.hash).get(0).scrollIntoView(!0)}}function t(e){return"string"!=typeof e?{}:(e=e.trim().replace(/^(\?|#|&)/,""),e?e.split("&").reduce(function(e,t){var n=t.replace(/\+/g," ").split("="),r=n[0],i=n[1];return r=decodeURIComponent(r),i=void 0===i?null:decodeURIComponent(i),e.hasOwnProperty(r)?Array.isArray(e[r])?e[r].push(i):e[r]=[e[r],i]:e[r]=i,e},{}):{})}function n(e){return e?Object.keys(e).sort().map(function(t){var n=e[t];return Array.isArray(n)?n.sort().map(function(e){return encodeURIComponent(t)+"="+encodeURIComponent(e)}).join("&"):encodeURIComponent(t)+"="+encodeURIComponent(n)}).join("&"):""}function r(){if(location.search.length>=1){var e=t(location.search).language;if(e)return e;if(-1!=jQuery.inArray(location.search.substr(1),s))return location.search.substr(1)}return!1}function i(e){var r=t(location.search);return r.language?(r.language=e,n(r)):e}function o(e){if(history){var t=window.location.hash;t&&(t=t.replace(/^#+/,"")),history.pushState({},"","?"+i(e)+"#"+t),localStorage.setItem("language",e)}}function a(t){var n=localStorage.getItem("language");s=t;var i=r();i?(e(i),localStorage.setItem("language",i)):e(null!==n&&-1!=jQuery.inArray(n,s)?n:s[0])}var s=[];window.setupLanguages=a,window.activateLanguage=e,window.getLanguageFromQueryString=r,$(function(){$(".lang-selector a").on("click",function(){var t=$(this).data("language-name");return o(t),e(t),!1})})}(),function(){"use strict";function e(e,i,o,a){var s={},u=0,c=0,l=document.title,f=function(){s={},u=$(document).height(),c=$(window).height(),e.find(i).each(function(){var e=$(this).attr("href");"#"===e[0]&&(s[e]=$(e).offset().top)})},p=function(){var n=$(document).scrollTop()+a;n+c>=u&&(n=u+1e3);var r=null;for(var f in s)(s[f]<n&&s[f]>s[r]||null===r)&&(r=f);n!=a||t||(r=window.location.hash,t=!0);var p=e.find("[href='"+r+"']").first();if(!p.hasClass("active")){e.find(".active").removeClass("active"),e.find(".active-parent").removeClass("active-parent"),p.addClass("active"),p.parents(o).addClass("active").siblings(i).addClass("active-parent"),p.siblings(o).addClass("active"),e.find(o).filter(":not(.active)").slideUp(150),e.find(o).filter(".active").slideDown(150),window.history.replaceState&&window.history.replaceState(null,"",r);var d=p.data("title");void 0!==d&&d.length>0?document.title=d+" – "+l:document.title=l}};!function(){f(),p(),$("#nav-button").click(function(){return $(".toc-wrapper").toggleClass("open"),$("#nav-button").toggleClass("open"),!1}),$(".page-wrapper").click(r),$(".toc-link").click(r),e.find(i).click(function(){setTimeout(function(){p()},0)}),$(window).scroll(n(p,200)),$(window).resize(n(f,200))}(),window.recacheHeights=f,window.refreshToc=p}var t=!1,n=function(e,t){var n=!1;return function(){!1===n&&(setTimeout(function(){e(),n=!1},t),n=!0)}},r=function(){$(".toc-wrapper").removeClass("open"),$("#nav-button").removeClass("open")};window.loadToc=e}(),$(function(){loadToc($("#toc"),".toc-link",".toc-list-h2, .toc-list-h3, .toc-list-h4, .toc-list-h5, .toc-list-h6",10),setupLanguages($("body").data("languages")),$(".content").imagesLoaded(function(){window.recacheHeights(),window.refreshToc()})}),window.onpopstate=function(){activateLanguage(getLanguageFromQueryString())};</script>
<meta name="theme-color" content="#F3F7F9" />
</head>
<body data-languages="[&quot;ruby&quot;,&quot;python&quot;]">
<a href="#" id="nav-button">
<span>
NAV
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAAAAABWESUoAAAAAnRSTlMAAHaTzTgAAAAZSURBVHgBYxgswBIIsLFGrIJRBaMKBh4AAE3cQCEvEU3+AAAAAElFTkSuQmCC" class="undefined" alt="Navigation">
</span>
</a>
<div class="toc-wrapper">
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAhwAAAEICAYAAAAUUS1sAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOwwAADsMBx2+oZAAAABh0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC42/Ixj3wAAU3FJREFUeF7tvQ2UHNWZ320c9nVC1ps4OSSbOHnjd5Owe7zHySZLknMS52Pf47Nvsp5BEkjiG4tPY4ENNsiAsc2HwSCjLwQCCSyQJSRGIAYYMYIBCWkQGsHwMcJ4jFklZmWvD5hlDXg3sdn4pN77u31v963uW93VVdUtafj/znnUmupbVberu+v59/M8994PCCEOfwYGBq4588wzk+uvvz5ZsWJFctdddyXf+c53kvvuuy/ZsGFDcs899yT33ntvsnnzZmsbN25M7rjjjuT222+3j6tXr7Z28803J8uWLUuuvvrq5Atf+EKyYMGC5KSTTkrmzZuXuFN1zfHHH2+Pc+GFFybf/OY3k6VLlyarVq2y5167dm2yfv1620f6hD3wwAPJ8PBwMjIykmzbti159NFHk61bt9q2ixcvTr70pS/ZPrnDCyGEEKKfnHLKKcmSJUusaMA5IzqGhoas0EBweIfOcytXrrROn8fbbrvNGn/feuut1q666qrk85//fHL22Wdb5z5nzpzCDp59zzrrLHu86667zgoazovQWbdunRUc9BXRsWnTJiuI6DeCiX5jtENsIIQuueSSZP78+RIcQgghxMFg7ty5yTXXXGMFw5133mmdNI6cyAUig2047Isuuii5+OKLrRHFWLRoUfKtb33LioBbbrklWb58eXLttdfadgiF2bNnl3LuJ5xwQnLOOeckV155ZT3CgehYs2aN7R+CA3GBMEJw0O+7777b9pdHRBJt2OfrX/96cvnllyfmtb7rDi+EEEKIfnLiiSfatMU3vvENKzpw6IgH0iw4eyIDn/vc52ybL37xi1ZQLFy40IoK0jFENW666abkxhtvTK644grbrkwqxYMQOu+886xQ4PgYURiEEH0k0vHtb3/big4iG4gO/sZ8qgXhwX70i77PmTPn5+7wQgghhOgX1HAgDs4999zks5/9rBULRDB4JC3CdlIaCAyEBs4fY5sXHKeddpp9pD0pi1mzZv2hO3wpEEKcH7GAmEEE+ZQOxt9sR/Agjoh6NEc/+JuUCsLpggsuSI477jil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" class="logo" alt="Logo">
<div class="lang-selector">
<a href="#" data-language-name="ruby">Ruby</a>
<a href="#" data-language-name="python">Python</a>
</div>
<div id="toc" class="toc-list-h1">
<ul class="toc-list-h1">
<li>
<a href="#mit-libraries-discovery-api" class="toc-h1 toc-link" data-title="MIT Libraries Discovery API v0.0.4">MIT Libraries Discovery API v0.0.4</a>
</li>
<li>
<a href="#authentication" class="toc-h1 toc-link" data-title="Authentication">Authentication</a>
</li>
<li>
<a href="#mit-libraries-discovery-api-authenticate" class="toc-h1 toc-link" data-title="Authenticate">Authenticate</a>
<ul class="toc-list-h2">
<li>
<a href="#authenticate" class="toc-h2 toc-link" data-title="authenticate">authenticate</a>
</li>
</ul>
</li>
<li>
<a href="#mit-libraries-discovery-api-search" class="toc-h1 toc-link" data-title="Search">Search</a>
<ul class="toc-list-h2">
<li>
<a href="#search" class="toc-h2 toc-link" data-title="search">search</a>
</li>
</ul>
</li>
<li>
<a href="#mit-libraries-discovery-api-retrieve" class="toc-h1 toc-link" data-title="Retrieve">Retrieve</a>
<ul class="toc-list-h2">
<li>
<a href="#getbyrecordid" class="toc-h2 toc-link" data-title="getByRecordID">getByRecordID</a>
</li>
</ul>
</li>
<li>
<a href="#mit-libraries-discovery-api-status" class="toc-h1 toc-link" data-title="Status">Status</a>
<ul class="toc-list-h2">
<li>
<a href="#ping" class="toc-h2 toc-link" data-title="ping">ping</a>
</li>
</ul>
</li>
<li>
<a href="#schemas" class="toc-h1 toc-link" data-title="Schemas">Schemas</a>
<ul class="toc-list-h2">
<li>
<a href="#tocsholding" class="toc-h2 toc-link" data-title="Holding">Holding</a>
</li>
<li>
<a href="#tocsidentifiers" class="toc-h2 toc-link" data-title="Identifiers">Identifiers</a>
</li>
<li>
<a href="#tocslink" class="toc-h2 toc-link" data-title="Link">Link</a>
</li>
<li>
<a href="#tocsbriefrecord" class="toc-h2 toc-link" data-title="BriefRecord">BriefRecord</a>
</li>
<li>
<a href="#tocsrecord" class="toc-h2 toc-link" data-title="Record">Record</a>
</li>
<li>
<a href="#tocsresults" class="toc-h2 toc-link" data-title="Results">Results</a>
</li>
<li>
<a href="#tocsaggregations" class="toc-h2 toc-link" data-title="Aggregations">Aggregations</a>
</li>
</ul>
</li>
</ul>
</div>
<ul class="toc-footer">
</ul>
</div>
<div class="page-wrapper">
<div class="dark-box"></div>
<div class="content">
<h1 id="mit-libraries-discovery-api">MIT Libraries Discovery API v0.0.4</h1>
<blockquote>
<p>Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.</p>
</blockquote>
<p>Base URLs:</p>
<ul>
<li><a href="https://timdex.mit.edu/api/v1">https://timdex.mit.edu/api/v1</a></li>
</ul>
<h1 id="authentication">Authentication</h1>
<ul>
<li>
<p>HTTP Authentication, scheme: basic</p>
</li>
<li>
<p>HTTP Authentication, scheme: bearer</p>
</li>
</ul>
<h1 id="mit-libraries-discovery-api-authenticate">Authenticate</h1>
<p>Authenticate with username / password to retrieve JWT Token</p>
<p><a href="https://timdex.mit.edu">Register for an account</a></p>
<h2 id="authenticate">authenticate</h2>
<p><a id="opIdauthenticate"></a></p>
<blockquote>
<p>Code samples</p>
</blockquote>
<pre class="highlight tab tab-ruby"><code><span class="hljs-keyword">require</span> <span class="hljs-string">'rest-client'</span>
<span class="hljs-keyword">require</span> <span class="hljs-string">'json'</span>
headers = {
<span class="hljs-string">'Accept'</span> =&gt; <span class="hljs-string">'application/json'</span>
}
result = RestClient.get <span class="hljs-string">'https://timdex.mit.edu/api/v1/auth'</span>,
<span class="hljs-symbol">params:</span> {
}, <span class="hljs-symbol">headers:</span> headers
p JSON.parse(result)
</code></pre>
<pre class="highlight tab tab-python"><code><span class="hljs-keyword">import</span> requests
headers = {
<span class="hljs-string">'Accept'</span>: <span class="hljs-string">'application/json'</span>
}
r = requests.get(<span class="hljs-string">'https://timdex.mit.edu/api/v1/auth'</span>,
params={},
headers: headers)
<span class="hljs-keyword">print</span> r.json()
</code></pre>
<p><code>GET /auth</code></p>
<blockquote>
<p>Example responses</p>
</blockquote>
<blockquote>
<p>200 Response</p>
</blockquote>
<pre class="highlight tab tab-json"><code><span class="hljs-string">"eyJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoxMjM0NTY3ODkwLCJleHAiOjEwMDI3MjY3ODB9.EHQe7SfsmBQiow_x_NtPoXFXZM29oVxBo3DqDYURJ68"</span>
</code></pre>
<h3 id="authenticate-responses">Responses</h3>
<table>
<thead>
<tr>
<th>Status</th>
<th>Meaning</th>
<th>Description</th>
<th>Schema</th>
</tr>
</thead>
<tbody>
<tr>
<td>200</td>
<td><a href="https://tools.ietf.org/html/rfc7231#section-6.3.1">OK</a></td>
<td>JWT token</td>
<td>string</td>
</tr>
</tbody>
</table>
<aside class="warning">
To perform this operation, you must be authenticated by means of one of the following methods:
basicAuth
</aside>
<h1 id="mit-libraries-discovery-api-search">Search</h1>
<p>Query TIMDEX to identify records of interest.</p>
<h2 id="search">search</h2>
<p><a id="opIdsearch"></a></p>
<blockquote>
<p>Code samples</p>
</blockquote>
<pre class="highlight tab tab-ruby"><code><span class="hljs-keyword">require</span> <span class="hljs-string">'rest-client'</span>
<span class="hljs-keyword">require</span> <span class="hljs-string">'json'</span>
headers = {
<span class="hljs-string">'Accept'</span> =&gt; <span class="hljs-string">'application/json'</span>,
<span class="hljs-string">'Authorization'</span> =&gt; <span class="hljs-string">'Bearer {access-token}'</span>
}
result = RestClient.get <span class="hljs-string">'https://timdex.mit.edu/api/v1/search'</span>,
<span class="hljs-symbol">params:</span> {
<span class="hljs-string">'q'</span> =&gt; <span class="hljs-string">'string'</span>
}, <span class="hljs-symbol">headers:</span> headers
p JSON.parse(result)
</code></pre>
<pre class="highlight tab tab-python"><code><span class="hljs-keyword">import</span> requests
headers = {
<span class="hljs-string">'Accept'</span>: <span class="hljs-string">'application/json'</span>,
<span class="hljs-string">'Authorization'</span>: <span class="hljs-string">'Bearer {access-token}'</span>
}
r = requests.get(<span class="hljs-string">'https://timdex.mit.edu/api/v1/search'</span>,
params={<span class="hljs-string">'q'</span>:
<span class="hljs-string">'string'</span>},
headers: headers)
<span class="hljs-keyword">print</span> r.json()
</code></pre>
<p><code>GET /search</code></p>
<h3 id="search-parameters">Parameters</h3>
<table>
<thead>
<tr>
<th>Parameter</th>
<th>In</th>
<th>Type</th>
<th>Required</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>q</td>
<td>query</td>
<td>string</td>
<td>true</td>
<td>none</td>
</tr>
<tr>
<td>content_type</td>
<td>query</td>
<td>string</td>
<td>false</td>
<td>Must use exact terminology from index, such as from a previous search result. Only single value is allowed like <code>?q=term&amp;content_type=content_type</code></td>
</tr>
<tr>
<td>authors[]</td>
<td>query</td>
<td>array[string]</td>
<td>false</td>
<td>Must use exact terminology from index, such as from a previous search result. Multiple values can be supplied like <code>?q=term&amp;authors[]=author1&amp;authors[]=author2</code></td>
</tr>
<tr>
<td>content_format[]</td>
<td>query</td>
<td>array[string]</td>
<td>false</td>
<td>Must use exact terminology from index, such as from a previous search result. Multiple values can be supplied like <code>?q=term&amp;content_format[]=format1&amp;content_format[]=format2</code></td>
</tr>
<tr>
<td>language[]</td>
<td>query</td>
<td>array[string]</td>
<td>false</td>
<td>Must use exact terminology from index, such as from a previous search result. Multiple values can be supplied like <code>?q=term&amp;language[]=language1&amp;language[]=language2</code></td>
</tr>
<tr>
<td>literary_form</td>
<td>query</td>
<td>string</td>
<td>false</td>
<td>Must use exact terminology from index, such as from a previous search result. Only single value is allowed like <code>?q=term&amp;literary_form=literary_form1</code></td>
</tr>
<tr>
<td>source</td>
<td>query</td>
<td>string</td>
<td>false</td>
<td>Must use exact terminology from index, such as from a previous search result. Only single value is allowed like <code>?q=term&amp;source=source</code></td>
</tr>
<tr>
<td>subjects[]</td>
<td>query</td>
<td>array[string]</td>
<td>false</td>
<td>Must use exact terminology from index, such as from a previous search result. Multiple values can be supplied like <code>?q=term&amp;subjects[]=subjects1&amp;subjects[]=subjects2</code></td>
</tr>
<tr>
<td>page</td>
<td>query</td>
<td>integer</td>
<td>false</td>
<td>Page of search to retrieve. Default is 1. Maxiumum is 200.</td>
</tr>
</tbody>
</table>
<blockquote>
<p>Example responses</p>
</blockquote>
<blockquote>
<p>200 Response</p>
</blockquote>
<pre class="highlight tab tab-json"><code>{
<span class="hljs-attr">"hits"</span>: <span class="hljs-number">0</span>,
<span class="hljs-attr">"aggregations"</span>: {
<span class="hljs-attr">"languages"</span>: [
{
<span class="hljs-attr">"name"</span>: <span class="hljs-string">"string"</span>
}
],
<span class="hljs-attr">"content_type"</span>: [
{
<span class="hljs-attr">"name"</span>: <span class="hljs-string">"string"</span>
}
],
<span class="hljs-attr">"authors"</span>: [
{
<span class="hljs-attr">"name"</span>: <span class="hljs-string">"string"</span>
}
],
<span class="hljs-attr">"subjects"</span>: [
{
<span class="hljs-attr">"name"</span>: <span class="hljs-string">"string"</span>
}
],
<span class="hljs-attr">"content_format"</span>: [
{
<span class="hljs-attr">"name"</span>: <span class="hljs-string">"string"</span>
}
],
<span class="hljs-attr">"literary_form"</span>: [
{
<span class="hljs-attr">"name"</span>: <span class="hljs-string">"string"</span>
}
],
<span class="hljs-attr">"source"</span>: [
{
<span class="hljs-attr">"name"</span>: <span class="hljs-string">"string"</span>
}
]
},
<span class="hljs-attr">"results"</span>: [
{
<span class="hljs-attr">"id"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"full_record_link"</span>: <span class="hljs-string">"http://example.com"</span>,
<span class="hljs-attr">"content_type"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"content_format"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"source_link"</span>: <span class="hljs-string">"http://example.com"</span>,
<span class="hljs-attr">"realtime_holdings_link"</span>: <span class="hljs-string">"http://example.com"</span>,
<span class="hljs-attr">"publication_date"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"title"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"links"</span>: [
{
<span class="hljs-attr">"text"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"url"</span>: <span class="hljs-string">"http://example.com"</span>,
<span class="hljs-attr">"restrictions"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"kind"</span>: <span class="hljs-string">"string"</span>
}
],
<span class="hljs-attr">"authors"</span>: [
<span class="hljs-string">"string"</span>
],
<span class="hljs-attr">"subjects"</span>: [
<span class="hljs-string">"string"</span>
],
<span class="hljs-attr">"summary_holdings"</span>: [
{
<span class="hljs-attr">"location"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"collection"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"call_number"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"summary"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"notes"</span>: <span class="hljs-string">"string"</span>
}
],
<span class="hljs-attr">"source"</span>: <span class="hljs-string">"string"</span>
}
]
}
</code></pre>
<h3 id="search-responses">Responses</h3>
<table>
<thead>
<tr>
<th>Status</th>
<th>Meaning</th>
<th>Description</th>
<th>Schema</th>
</tr>
</thead>
<tbody>
<tr>
<td>200</td>
<td><a href="https://tools.ietf.org/html/rfc7231#section-6.3.1">OK</a></td>
<td>A list of search results</td>
<td><a href="#schemaresults">Results</a></td>
</tr>
<tr>
<td>401</td>
<td><a href="https://tools.ietf.org/html/rfc7235#section-3.1">Unauthorized</a></td>
<td>Access token is missing or invalid</td>
<td>None</td>
</tr>
</tbody>
</table>
<aside class="warning">
To perform this operation, you must be authenticated by means of one of the following methods:
jwtAuth
</aside>
<h1 id="mit-libraries-discovery-api-retrieve">Retrieve</h1>
<h2 id="getbyrecordid">getByRecordID</h2>
<p><a id="opIdgetByRecordID"></a></p>
<blockquote>
<p>Code samples</p>
</blockquote>
<pre class="highlight tab tab-ruby"><code><span class="hljs-keyword">require</span> <span class="hljs-string">'rest-client'</span>
<span class="hljs-keyword">require</span> <span class="hljs-string">'json'</span>
headers = {
<span class="hljs-string">'Accept'</span> =&gt; <span class="hljs-string">'application/json'</span>,
<span class="hljs-string">'Authorization'</span> =&gt; <span class="hljs-string">'Bearer {access-token}'</span>
}
result = RestClient.get <span class="hljs-string">'https://timdex.mit.edu/api/v1/record/{id}'</span>,
<span class="hljs-symbol">params:</span> {
}, <span class="hljs-symbol">headers:</span> headers
p JSON.parse(result)
</code></pre>
<pre class="highlight tab tab-python"><code><span class="hljs-keyword">import</span> requests
headers = {
<span class="hljs-string">'Accept'</span>: <span class="hljs-string">'application/json'</span>,
<span class="hljs-string">'Authorization'</span>: <span class="hljs-string">'Bearer {access-token}'</span>
}
r = requests.get(<span class="hljs-string">'https://timdex.mit.edu/api/v1/record/{id}'</span>,
params={},
headers: headers)
<span class="hljs-keyword">print</span> r.json()
</code></pre>
<p><code>GET /record/{id}</code></p>
<h3 id="getbyrecordid-parameters">Parameters</h3>
<table>
<thead>
<tr>
<th>Parameter</th>
<th>In</th>
<th>Type</th>
<th>Required</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>id</td>
<td>path</td>
<td>string</td>
<td>true</td>
<td>none</td>
</tr>
</tbody>
</table>
<blockquote>
<p>Example responses</p>
</blockquote>
<blockquote>
<p>200 Response</p>
</blockquote>
<pre class="highlight tab tab-json"><code>{
<span class="hljs-attr">"id"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"full_record_link"</span>: <span class="hljs-string">"http://example.com"</span>,
<span class="hljs-attr">"content_type"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"content_format"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"source_link"</span>: <span class="hljs-string">"http://example.com"</span>,
<span class="hljs-attr">"realtime_holdings_link"</span>: <span class="hljs-string">"http://example.com"</span>,
<span class="hljs-attr">"publication_date"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"title"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"links"</span>: [
{
<span class="hljs-attr">"text"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"url"</span>: <span class="hljs-string">"http://example.com"</span>,
<span class="hljs-attr">"restrictions"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"kind"</span>: <span class="hljs-string">"string"</span>
}
],
<span class="hljs-attr">"authors"</span>: [
<span class="hljs-string">"string"</span>
],
<span class="hljs-attr">"subjects"</span>: [
<span class="hljs-string">"string"</span>
],
<span class="hljs-attr">"summary_holdings"</span>: [
{
<span class="hljs-attr">"location"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"collection"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"call_number"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"summary"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"notes"</span>: <span class="hljs-string">"string"</span>
}
],
<span class="hljs-attr">"source"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"isbns"</span>: [
<span class="hljs-string">"string"</span>
],
<span class="hljs-attr">"issns"</span>: [
<span class="hljs-string">"string"</span>
],
<span class="hljs-attr">"doi"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"available"</span>: <span class="hljs-literal">true</span>,
<span class="hljs-attr">"alternate_title"</span>: [
<span class="hljs-string">"string"</span>
],
<span class="hljs-attr">"country_of_publication"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"summary"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"imprint"</span>: [
<span class="hljs-string">"string"</span>
],
<span class="hljs-attr">"languages"</span>: [
<span class="hljs-string">"string"</span>
],
<span class="hljs-attr">"call_numbers"</span>: [
<span class="hljs-string">"string"</span>
],
<span class="hljs-attr">"physical_description"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"abstract"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"notes"</span>: [
<span class="hljs-string">"string"</span>
],
<span class="hljs-attr">"edition"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"publication_frequency"</span>: [
<span class="hljs-string">"string"</span>
]
}
</code></pre>
<h3 id="getbyrecordid-responses">Responses</h3>
<table>
<thead>
<tr>
<th>Status</th>
<th>Meaning</th>
<th>Description</th>
<th>Schema</th>
</tr>
</thead>
<tbody>
<tr>
<td>200</td>
<td><a href="https://tools.ietf.org/html/rfc7231#section-6.3.1">OK</a></td>
<td>A single record</td>
<td><a href="#schemarecord">Record</a></td>
</tr>
<tr>
<td>401</td>
<td><a href="https://tools.ietf.org/html/rfc7235#section-3.1">Unauthorized</a></td>
<td>Access token is missing or invalid</td>
<td>None</td>
</tr>
<tr>
<td>404</td>
<td><a href="https://tools.ietf.org/html/rfc7231#section-6.5.4">Not Found</a></td>
<td>A record with that supplied ID was not found.</td>
<td>None</td>
</tr>
</tbody>
</table>
<aside class="warning">
To perform this operation, you must be authenticated by means of one of the following methods:
jwtAuth
</aside>
<h1 id="mit-libraries-discovery-api-status">Status</h1>
<h2 id="ping">ping</h2>
<p><a id="opIdping"></a></p>
<blockquote>
<p>Code samples</p>
</blockquote>
<pre class="highlight tab tab-ruby"><code><span class="hljs-keyword">require</span> <span class="hljs-string">'rest-client'</span>
<span class="hljs-keyword">require</span> <span class="hljs-string">'json'</span>
result = RestClient.get <span class="hljs-string">'https://timdex.mit.edu/api/v1/ping'</span>,
<span class="hljs-symbol">params:</span> {
}
p JSON.parse(result)
</code></pre>
<pre class="highlight tab tab-python"><code><span class="hljs-keyword">import</span> requests
r = requests.get(<span class="hljs-string">'https://timdex.mit.edu/api/v1/ping'</span>,
params={})
<span class="hljs-keyword">print</span> r.json()
</code></pre>
<p><code>GET /ping</code></p>
<h3 id="ping-responses">Responses</h3>
<table>
<thead>
<tr>
<th>Status</th>
<th>Meaning</th>
<th>Description</th>
<th>Schema</th>
</tr>
</thead>
<tbody>
<tr>
<td>200</td>
<td><a href="https://tools.ietf.org/html/rfc7231#section-6.3.1">OK</a></td>
<td>OK</td>
<td>None</td>
</tr>
</tbody>
</table>
<aside class="success">
This operation does not require authentication
</aside>
<h1 id="schemas">Schemas</h1>
<h2 id="tocsholding">Holding</h2>
<p><a id="schemaholding"></a></p>
<pre class="highlight tab tab-json"><code>{
<span class="hljs-attr">"location"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"collection"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"call_number"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"summary"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"notes"</span>: <span class="hljs-string">"string"</span>
}
</code></pre>
<p><em>Summary location holdings information. Call <code>realtime_holdings_link</code> for recent information if present.</em></p>
<h3 id="properties">Properties</h3>
<table>
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Required</th>
<th>Restrictions</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>location</td>
<td>string</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
<td>collection</td>
<td>string</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
<td>call_number</td>
<td>string</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
<td>summary</td>
<td>string</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
<td>notes</td>
<td>string</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
</tbody>
</table>
<h2 id="tocsidentifiers">Identifiers</h2>
<p><a id="schemaidentifiers"></a></p>
<pre class="highlight tab tab-json"><code>{
<span class="hljs-attr">"isbns"</span>: [
<span class="hljs-string">"string"</span>
],
<span class="hljs-attr">"issns"</span>: [
<span class="hljs-string">"string"</span>
],
<span class="hljs-attr">"doi"</span>: <span class="hljs-string">"string"</span>
}
</code></pre>
<p><em>standardized identifiers</em></p>
<h3 id="properties">Properties</h3>
<table>
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Required</th>
<th>Restrictions</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>isbns</td>
<td>[string]</td>
<td>false</td>
<td>none</td>
<td></td>
</tr>
<tr>
<td>issns</td>
<td>[string]</td>
<td>false</td>
<td>none</td>
<td></td>
</tr>
<tr>
<td>doi</td>
<td>string</td>
<td>false</td>
<td>none</td>
<td></td>
</tr>
</tbody>
</table>
<h2 id="tocslink">Link</h2>
<p><a id="schemalink"></a></p>
<pre class="highlight tab tab-json"><code>{
<span class="hljs-attr">"text"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"url"</span>: <span class="hljs-string">"http://example.com"</span>,
<span class="hljs-attr">"restrictions"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"kind"</span>: <span class="hljs-string">"string"</span>
}
</code></pre>
<p><em>a url related to this item</em></p>
<h3 id="properties">Properties</h3>
<table>
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Required</th>
<th>Restrictions</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>text</td>
<td>string</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
<td>url</td>
<td>string(uri)</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
<td>restrictions</td>
<td>string</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
<td>kind</td>
<td>string</td>
<td>false</td>
<td>none</td>
<td>what kind of link this is, such as full_text, restricted_full_text, sfx, unknown</td>
</tr>
</tbody>
</table>
<h2 id="tocsbriefrecord">BriefRecord</h2>
<p><a id="schemabriefrecord"></a></p>
<pre class="highlight tab tab-json"><code>{
<span class="hljs-attr">"id"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"full_record_link"</span>: <span class="hljs-string">"http://example.com"</span>,
<span class="hljs-attr">"content_type"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"content_format"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"source_link"</span>: <span class="hljs-string">"http://example.com"</span>,
<span class="hljs-attr">"realtime_holdings_link"</span>: <span class="hljs-string">"http://example.com"</span>,
<span class="hljs-attr">"publication_date"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"title"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"links"</span>: [
{
<span class="hljs-attr">"text"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"url"</span>: <span class="hljs-string">"http://example.com"</span>,
<span class="hljs-attr">"restrictions"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"kind"</span>: <span class="hljs-string">"string"</span>
}
],
<span class="hljs-attr">"authors"</span>: [
<span class="hljs-string">"string"</span>
],
<span class="hljs-attr">"subjects"</span>: [
<span class="hljs-string">"string"</span>
],
<span class="hljs-attr">"summary_holdings"</span>: [
{
<span class="hljs-attr">"location"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"collection"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"call_number"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"summary"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"notes"</span>: <span class="hljs-string">"string"</span>
}
],
<span class="hljs-attr">"source"</span>: <span class="hljs-string">"string"</span>
}
</code></pre>
<p><em>An abbreviated representation of a record</em></p>
<h3 id="properties">Properties</h3>
<table>
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Required</th>
<th>Restrictions</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>id</td>
<td>string</td>
<td>true</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
<td>full_record_link</td>
<td>string(uri)</td>
<td>false</td>
<td>none</td>
<td>link to the full record in this API</td>
</tr>
<tr>
<td>content_type</td>
<td>string</td>
<td>false</td>
<td>none</td>
<td>High level categorization of the type of content, such as text, still image, audio, etc.</td>
</tr>
<tr>
<td>content_format</td>
<td>string</td>
<td>false</td>
<td>none</td>
<td>High level categorization of the content format, such as online resource, CD, book, etc.</td>
</tr>
<tr>
<td>source_link</td>
<td>string(uri)</td>
<td>false</td>
<td>none</td>
<td></td>
</tr>
<tr>
<td>realtime_holdings_link</td>
<td>string(uri)</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
<td>publication_date</td>
<td>string</td>
<td>false</td>
<td>none</td>
<td></td>
</tr>
<tr>
<td>title</td>
<td>string</td>
<td>true</td>
<td>none</td>
<td></td>
</tr>
<tr>
<td>links</td>
<td>[<a href="#schemalink">Link</a>]</td>
<td>false</td>
<td>none</td>
<td>[a url related to this item]</td>
</tr>
<tr>
<td>authors</td>
<td>[string]</td>
<td>false</td>
<td>none</td>
<td></td>
</tr>
<tr>
<td>subjects</td>
<td>[string]</td>
<td>false</td>
<td>none</td>
<td></td>
</tr>
<tr>
<td>summary_holdings</td>
<td>[<a href="#schemaholding">Holding</a>]</td>
<td>false</td>
<td>none</td>
<td>[Summary location holdings information. Call <code>realtime_holdings_link</code> for recent information if present.]</td>
</tr>
<tr>
<td>source</td>
<td>string</td>
<td>false</td>
<td>none</td>
<td></td>
</tr>
</tbody>
</table>
<h2 id="tocsrecord">Record</h2>
<p><a id="schemarecord"></a></p>
<pre class="highlight tab tab-json"><code>{
<span class="hljs-attr">"id"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"full_record_link"</span>: <span class="hljs-string">"http://example.com"</span>,
<span class="hljs-attr">"content_type"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"content_format"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"source_link"</span>: <span class="hljs-string">"http://example.com"</span>,
<span class="hljs-attr">"realtime_holdings_link"</span>: <span class="hljs-string">"http://example.com"</span>,
<span class="hljs-attr">"publication_date"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"title"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"links"</span>: [
{
<span class="hljs-attr">"text"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"url"</span>: <span class="hljs-string">"http://example.com"</span>,
<span class="hljs-attr">"restrictions"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"kind"</span>: <span class="hljs-string">"string"</span>
}
],
<span class="hljs-attr">"authors"</span>: [
<span class="hljs-string">"string"</span>
],
<span class="hljs-attr">"subjects"</span>: [
<span class="hljs-string">"string"</span>
],
<span class="hljs-attr">"summary_holdings"</span>: [
{
<span class="hljs-attr">"location"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"collection"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"call_number"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"summary"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"notes"</span>: <span class="hljs-string">"string"</span>
}
],
<span class="hljs-attr">"source"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"isbns"</span>: [
<span class="hljs-string">"string"</span>
],
<span class="hljs-attr">"issns"</span>: [
<span class="hljs-string">"string"</span>
],
<span class="hljs-attr">"doi"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"available"</span>: <span class="hljs-literal">true</span>,
<span class="hljs-attr">"alternate_title"</span>: [
<span class="hljs-string">"string"</span>
],
<span class="hljs-attr">"country_of_publication"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"summary"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"imprint"</span>: [
<span class="hljs-string">"string"</span>
],
<span class="hljs-attr">"languages"</span>: [
<span class="hljs-string">"string"</span>
],
<span class="hljs-attr">"call_numbers"</span>: [
<span class="hljs-string">"string"</span>
],
<span class="hljs-attr">"physical_description"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"abstract"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"notes"</span>: [
<span class="hljs-string">"string"</span>
],
<span class="hljs-attr">"edition"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"publication_frequency"</span>: [
<span class="hljs-string">"string"</span>
]
}
</code></pre>
<p><em>A full representation of a record</em></p>
<h3 id="properties">Properties</h3>
<p><em>allOf</em></p>
<table>
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Required</th>
<th>Restrictions</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><em>anonymous</em></td>
<td><a href="#schemabriefrecord">BriefRecord</a></td>
<td>false</td>
<td>none</td>
<td>An abbreviated representation of a record</td>
</tr>
</tbody>
</table>
<p><em>and</em></p>
<table>
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Required</th>
<th>Restrictions</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><em>anonymous</em></td>
<td><a href="#schemaidentifiers">Identifiers</a></td>
<td>false</td>
<td>none</td>
<td>standardized identifiers</td>
</tr>
</tbody>
</table>
<p><em>and</em></p>
<table>
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Required</th>
<th>Restrictions</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><em>anonymous</em></td>
<td>object</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
<td>» available</td>
<td>boolean</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
<td>» alternate_title</td>
<td>[string]</td>
<td>false</td>
<td>none</td>
<td></td>
</tr>
<tr>
<td>» country_of_publication</td>
<td>string</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
<td>» summary</td>
<td>string</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
<td>» imprint</td>
<td>[string]</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
<td>» languages</td>
<td>[string]</td>
<td>false</td>
<td>none</td>
<td></td>
</tr>
<tr>
<td>» call_numbers</td>
<td>[string]</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
<td>» physical_description</td>
<td>string</td>
<td>false</td>
<td>none</td>
<td></td>
</tr>
<tr>
<td>» abstract</td>
<td>string</td>
<td>false</td>
<td>none</td>
<td></td>
</tr>
<tr>
<td>» notes</td>
<td>[string]</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
<td>» edition</td>
<td>string</td>
<td>false</td>
<td>none</td>
<td></td>
</tr>
<tr>
<td>» publication_frequency</td>
<td>[string]</td>
<td>false</td>
<td>none</td>
<td></td>
</tr>
</tbody>
</table>
<h2 id="tocsresults">Results</h2>
<p><a id="schemaresults"></a></p>
<pre class="highlight tab tab-json"><code>{
<span class="hljs-attr">"hits"</span>: <span class="hljs-number">0</span>,
<span class="hljs-attr">"aggregations"</span>: {
<span class="hljs-attr">"languages"</span>: [
{
<span class="hljs-attr">"name"</span>: <span class="hljs-string">"string"</span>
}
],
<span class="hljs-attr">"content_type"</span>: [
{
<span class="hljs-attr">"name"</span>: <span class="hljs-string">"string"</span>
}
],
<span class="hljs-attr">"authors"</span>: [
{
<span class="hljs-attr">"name"</span>: <span class="hljs-string">"string"</span>
}
],
<span class="hljs-attr">"subjects"</span>: [
{
<span class="hljs-attr">"name"</span>: <span class="hljs-string">"string"</span>
}
],
<span class="hljs-attr">"content_format"</span>: [
{
<span class="hljs-attr">"name"</span>: <span class="hljs-string">"string"</span>
}
],
<span class="hljs-attr">"literary_form"</span>: [
{
<span class="hljs-attr">"name"</span>: <span class="hljs-string">"string"</span>
}
],
<span class="hljs-attr">"source"</span>: [
{
<span class="hljs-attr">"name"</span>: <span class="hljs-string">"string"</span>
}
]
},
<span class="hljs-attr">"results"</span>: [
{
<span class="hljs-attr">"id"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"full_record_link"</span>: <span class="hljs-string">"http://example.com"</span>,
<span class="hljs-attr">"content_type"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"content_format"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"source_link"</span>: <span class="hljs-string">"http://example.com"</span>,
<span class="hljs-attr">"realtime_holdings_link"</span>: <span class="hljs-string">"http://example.com"</span>,
<span class="hljs-attr">"publication_date"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"title"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"links"</span>: [
{
<span class="hljs-attr">"text"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"url"</span>: <span class="hljs-string">"http://example.com"</span>,
<span class="hljs-attr">"restrictions"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"kind"</span>: <span class="hljs-string">"string"</span>
}
],
<span class="hljs-attr">"authors"</span>: [
<span class="hljs-string">"string"</span>
],
<span class="hljs-attr">"subjects"</span>: [
<span class="hljs-string">"string"</span>
],
<span class="hljs-attr">"summary_holdings"</span>: [
{
<span class="hljs-attr">"location"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"collection"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"call_number"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"summary"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"notes"</span>: <span class="hljs-string">"string"</span>
}
],
<span class="hljs-attr">"source"</span>: <span class="hljs-string">"string"</span>
}
]
}
</code></pre>
<h3 id="properties">Properties</h3>
<table>
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Required</th>
<th>Restrictions</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>hits</td>
<td>integer</td>
<td>false</td>
<td>none</td>
<td>total search results for query</td>
</tr>
<tr>
<td>aggregations</td>
<td><a href="#schemaaggregations">Aggregations</a></td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
<td>results</td>
<td>array</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
</tbody>
</table>
<h2 id="tocsaggregations">Aggregations</h2>
<p><a id="schemaaggregations"></a></p>
<pre class="highlight tab tab-json"><code>{
<span class="hljs-attr">"languages"</span>: [
{
<span class="hljs-attr">"name"</span>: <span class="hljs-string">"string"</span>
}
],
<span class="hljs-attr">"content_type"</span>: [
{
<span class="hljs-attr">"name"</span>: <span class="hljs-string">"string"</span>
}
],
<span class="hljs-attr">"authors"</span>: [
{
<span class="hljs-attr">"name"</span>: <span class="hljs-string">"string"</span>
}
],
<span class="hljs-attr">"subjects"</span>: [
{
<span class="hljs-attr">"name"</span>: <span class="hljs-string">"string"</span>
}
],
<span class="hljs-attr">"content_format"</span>: [
{
<span class="hljs-attr">"name"</span>: <span class="hljs-string">"string"</span>
}
],
<span class="hljs-attr">"literary_form"</span>: [
{
<span class="hljs-attr">"name"</span>: <span class="hljs-string">"string"</span>
}
],
<span class="hljs-attr">"source"</span>: [
{
<span class="hljs-attr">"name"</span>: <span class="hljs-string">"string"</span>
}
]
}
</code></pre>
<h3 id="properties">Properties</h3>
<table>
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Required</th>
<th>Restrictions</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>languages</td>
<td>[object]</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
<td>» name</td>
<td>string</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
<td>content_type</td>
<td>[object]</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
<td>» name</td>
<td>string</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
<td>authors</td>
<td>[object]</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
<td>» name</td>
<td>string</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
<td>subjects</td>
<td>[object]</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
<td>» name</td>
<td>string</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
<td>content_format</td>
<td>[object]</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
<td>» name</td>
<td>string</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
<td>literary_form</td>
<td>[object]</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
<td>» name</td>
<td>string</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
<td>source</td>
<td>[object]</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
<td>» name</td>
<td>string</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
</tbody>
</table>
</div>
<div class="dark-box">
<div class="lang-selector">
<a href="#" data-language-name="ruby">Ruby</a>
<a href="#" data-language-name="python">Python</a>
</div>
</div>
</div>
</body>
</html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment