diff --git a/documentation/content/Components/photoswipe-raw-gallery.md b/documentation/content/Components/photoswipe-raw-gallery.md new file mode 100644 index 00000000..6a66835e --- /dev/null +++ b/documentation/content/Components/photoswipe-raw-gallery.md @@ -0,0 +1,200 @@ +--- +Title: Gallery -- Use PhotoSwipe For Your Image Gallery +authors: Talha Mansoor +Tags: nuances, images, gallery +Date: 2020-02-02 +comments: false +Slug: photoswipe-gallery-using-raw-html +Category: Components +--- + +Elegant integrates with [PhotoSwipe](https://photoswipe.com/) to create gallery of images. Here is an example. + + + +To use it, you will have to add raw HTML in your markdown file. + +Here is the require HTML with two images in it. + +```html + +``` + + + +## Define a `div` + +```html + +``` + +Notice the class, `photoswipe-gallery`. You should not change it. + +## Define `figure` + +Place it inside the `div` defined above. + +```html +
+``` + +## Link to your image + +Place it inside the `figure`. + +```html + + +``` + +`data-size` is important. It should have the correct width and height of the image. + +## Add the thumbnail + +Create a thumbnail of your image and then place link to it inside the `` you create above. + +```html +Image description +``` + +This is it. Your gallery should start working. + +## Define caption + +You can also define the caption of your image using `figcaption`. You must place it inside the `figure` tag. + +```htmk +
+ You can write anything in the caption +
+``` + +You can use HTML inside the `figcaption`. + +!!! Attention "Developer Required" + + Ideally, a Pelican plugin should generate this raw HTML, but at the time of writing, such a plugin does not exist. + + If you create such a plugin, then [let us know](https://github.com/Pelican-Elegant/elegant/issues). It will be a big help to thousands of Pelican users. + + The plugin, should create a thumbnail of the image, read size of the image, and then generate the required raw HTML, which then gets inserted into + `article.content` or `page.content`. + + The user should be able to insert more than one galleries in the article, at any place. (Currently, the [Photos plugin](https://github.com/getpelican/pelican-plugins/tree/master/photos) forces themes to append gallery in the bottom of the article.) + + Finally, let the user define gallery images and their captions inside an article in a friendly and easy way. Like, as YAML or JSON inside the markdown. diff --git a/gulpfile.babel.js b/gulpfile.babel.js index e755e44d..213be612 100644 --- a/gulpfile.babel.js +++ b/gulpfile.babel.js @@ -88,6 +88,9 @@ const minifyJS = () => { "static/tipuesearch/tipuesearch_set.js", "static/tipuesearch/tipuesearch.min.js", "static/applause-button/applause-button.js", + "static/photoswipe/photoswipe.js", + "static/photoswipe/photoswipe-ui-default.js", + "static/photoswipe/photoswipe-array-from-dom.js", "!static/js/elegant.prod.js" ]) .pipe(concat("elegant.prod.js")) @@ -106,6 +109,8 @@ const compileCSS = () => { return src([ "static/applause-button/applause-button.css", "static/tipuesearch/tipuesearch.css", + "static/photoswipe/photoswipe.css", + "static/photoswipe/default-skin/default-skin.css", "static/css/*.css", "!static/css/elegant.prod.css" ]) diff --git a/static/css/default-skin.png b/static/css/default-skin.png new file mode 100644 index 00000000..441c502c Binary files /dev/null and b/static/css/default-skin.png differ diff --git a/static/css/default-skin.svg b/static/css/default-skin.svg new file mode 100644 index 00000000..9d5f0c6a --- /dev/null +++ b/static/css/default-skin.svg @@ -0,0 +1 @@ +default-skin 2 \ No newline at end of file diff --git a/static/css/elegant.prod.css b/static/css/elegant.prod.css index b0dfdb10..571dd21e 100644 --- a/static/css/elegant.prod.css +++ b/static/css/elegant.prod.css @@ -1,13 +1,16 @@ applause-button{position:relative;cursor:pointer}applause-button .style-root,applause-button .style-root:after{position:absolute;top:0;left:0;right:0;bottom:0}applause-button .style-root:after{content:" ";display:block;border-radius:50%;border:1px solid}applause-button .style-root:hover:after:not(.clap-limit-exceeded){border-color:inherit}applause-button.loading{opacity:.5}applause-button .shockwave{border-radius:50%}applause-button .shockwave,applause-button svg{position:absolute;top:0;left:0;right:0;bottom:0}applause-button svg{width:60%;height:60%;margin-left:20%;margin-top:20%;opacity:.8;stroke:none;overflow:visible!important}applause-button svg g.flat{visibility:hidden}applause-button.clapped svg g.flat,applause-button svg g.outline{visibility:visible}applause-button.clapped svg g.outline{visibility:hidden}applause-button .count-container{position:absolute;top:-40%;width:100%;color:grey;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}applause-button .count-container .count{margin-left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%);width:1000px;text-align:center}applause-button g.sparkle circle{opacity:0;stroke-width:0}applause-button g.sparkle g:first-child{-webkit-transform:rotate(0deg) translateX(10px);transform:rotate(0deg) translateX(10px)}applause-button g.sparkle g:nth-child(2){-webkit-transform:rotate(72deg) translateX(10px);transform:rotate(72deg) translateX(10px)}applause-button g.sparkle g:nth-child(3){-webkit-transform:rotate(144deg) translateX(10px);transform:rotate(144deg) translateX(10px)}applause-button g.sparkle g:nth-child(4){-webkit-transform:rotate(216deg) translateX(10px);transform:rotate(216deg) translateX(10px)}applause-button g.sparkle g:nth-child(5){-webkit-transform:rotate(288deg) translateX(10px);transform:rotate(288deg) translateX(10px)}applause-button:hover:not(.clapped) .shockwave{-webkit-animation-name:shockwave;animation-name:shockwave;-webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}applause-button.clap{-webkit-animation-name:pulse;animation-name:pulse;-webkit-animation-duration:.5s;animation-duration:.5s;-webkit-animation-iteration-count:1;animation-iteration-count:1}applause-button.clap .sparkle circle{-webkit-animation-name:explode;animation-name:explode;-webkit-animation-duration:.5s;animation-duration:.5s;-webkit-animation-iteration-count:1;animation-iteration-count:1}applause-button.clap .count{-webkit-animation-name:hideThenShow;animation-name:hideThenShow;-webkit-animation-duration:.5s;animation-duration:.5s;-webkit-animation-iteration-count:1;animation-iteration-count:1}@-webkit-keyframes explode{0%{-webkit-transform:translateX(10px);transform:translateX(10px);opacity:0}20%{opacity:1}50%{opacity:1}to{opacity:0;-webkit-transform:translateX(25px);transform:translateX(25px)}}@keyframes explode{0%{-webkit-transform:translateX(10px);transform:translateX(10px);opacity:0}20%{opacity:1}50%{opacity:1}to{opacity:0;-webkit-transform:translateX(25px);transform:translateX(25px)}}@-webkit-keyframes shockwave{0%{-webkit-transform:scale(1);transform:scale(1);box-shadow:0 0 2px;opacity:1}to{-webkit-transform:scale(1);transform:scale(1);opacity:0;box-shadow:0 0 50px,inset 0 0 10px}}@keyframes shockwave{0%{-webkit-transform:scale(1);transform:scale(1);box-shadow:0 0 2px;opacity:1}to{-webkit-transform:scale(1);transform:scale(1);opacity:0;box-shadow:0 0 50px,inset 0 0 10px}}@-webkit-keyframes pulse{0%{-webkit-transform:scale(1);transform:scale(1)}50%{-webkit-transform:scale(1.1);transform:scale(1.1)}to{-webkit-transform:scale(1);transform:scale(1)}}@keyframes pulse{0%{-webkit-transform:scale(1);transform:scale(1)}50%{-webkit-transform:scale(1.1);transform:scale(1.1)}to{-webkit-transform:scale(1);transform:scale(1)}}@-webkit-keyframes hideThenShow{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}20%{opacity:0;-webkit-transform:translateY(-10px);transform:translateY(-10px)}50%{-webkit-transform:translateY(10px);transform:translateY(10px)}80%{-webkit-transform:translateY(10px);transform:translateY(10px);opacity:0}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes hideThenShow{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}20%{opacity:0;-webkit-transform:translateY(-10px);transform:translateY(-10px)}50%{-webkit-transform:translateY(10px);transform:translateY(10px)}80%{-webkit-transform:translateY(10px);transform:translateY(10px);opacity:0}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}} -@import url("https://fonts.googleapis.com/css?family=Merriweather:300,400|Open+Sans|Source+Code+Pro");#tipue_search_input:-webkit-autofill,#tipue_search_input:-webkit-autofill:focus,#tipue_search_input:-webkit-autofill:hover{-webkit-box-shadow:0 0 0 1000px #f3f3f3 inset}.tipue_search_button{position:relative;width:49px;height:56px;margin-left:-3px;background-color:#f3f3f3;border:none;border-top-right-radius:3px;border-bottom-right-radius:3px;cursor:pointer}.tipue_search_button,.tipue_search_icon{float:left;box-sizing:border-box;outline:0}.tipue_search_icon{font:24px/1 Open Sans,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#333;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);-moz-appearance:none;-webkit-appearance:none;box-shadow:none;margin:-1px 0 0 16px}.tipue_search_group:after{content:"";display:table;clear:both}#tipue_search_content{max-width:100%;margin:0}.tipue_search_content_title{font:300 31.5px/40px Baskerville,Garamond,Georgia,"DejaVu Serif",Times New Roman,Times,Serif;color:#111}.tipue_search_content_title a{color:#111;text-decoration:none}.tipue_search_content_title a:hover{border-bottom:1px solid #333}.tipue_search_result{padding-top:27px}#tipue_search_results_count,.tipue_search_content_debug{font:13px/1.5 Source Code Pro,monospace;text-transform:uppercase;color:#999;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#tipue_search_results_count{padding-top:9px}#tipue_search_error,#tipue_search_replace,.tipue_search_content_url,.tipue_search_note,.tipue_search_related{font:300 16px/1.4 Merriweather,serif;color:#666;padding-top:7px;word-wrap:break-word;-webkit-hyphens:auto;-ms-hyphens:auto;hyphens:auto}#tipue_search_replace a,#tipue_search_replace a:hover,.tipue_search_content_url a,.tipue_search_note a,.tipue_search_related a{text-decoration:none}.tipue_search_content_url a:hover,.tipue_search_note a:hover,.tipue_search_related a:hover{color:#666}#tipue_search_replace,.tipue_search_related{margin-top:7px}#tipue_search_error{color:#333;margin-top:17px}.tipue_search_content_text{font:1.2em/1.6em "PT Serif",Georgia,Times New Roman,Times,Serif;color:#333;word-wrap:break-word;-webkit-hyphens:auto;-ms-hyphens:auto;hyphens:auto;margin-top:9px}.tipue_search_content_bold{font-weight:400;font-family:Open Sans,sans-serif;color:#333}.tipue_search_content_debug{margin:7px 0 2px}.tipue_search_image{padding:17px 0 6px}.tipue_search_img{width:100%;max-width:330px;height:auto;-webkit-transition:.5s;transition:.5s;border-radius:2px}.tipue_search_img:hover{opacity:.9}#tipue_search_zoom_text{font:12px/1.7 Source Code Pro,monospace;color:#ccc;text-transform:uppercase;letter-spacing:1px;padding-top:9px}#tipue_search_zoom_text a{color:#ccc;text-decoration:none;border-bottom:2px solid #f7f7f7}#tipue_search_zoom_text a:hover{border:0}.tipue_search_image_zoom{cursor:pointer}#tipue_search_image_modal{display:none;position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:rgba(0,0,0,.9)}.tipue_search_image_close{position:absolute;top:0;right:0;font:22px/1 Source Code Pro,monospace;color:#ccc;padding:25px 30px;cursor:pointer}.tipue_search_image_block{margin:0 auto;max-width:900px;padding:73px 30px 30px;box-sizing:border-box;color:#fff}#tipue_search_zoom_img{max-width:100%;height:auto}#tipue_search_zoom_text,.tipue_search_zoom_options{padding-top:9px}#tipue_search_foot{margin:51px 0 21px}#tipue_search_foot_boxes{font:14px Source Code Pro,sans-serif;text-transform:uppercase;color:#333;padding:0;margin:0;cursor:pointer}#tipue_search_foot_boxes li{display:inline;list-style:none;margin:0;padding:0}#tipue_search_foot_boxes li a{background-color:#f7f7f7;color:#666;text-decoration:none;-webkit-transition:.3s;transition:.3s}#tipue_search_foot_boxes li.current,#tipue_search_foot_boxes li a{padding:10px 17px 11px;border-radius:3px;margin-right:7px;text-align:center}#tipue_search_foot_boxes li.current,#tipue_search_foot_boxes li a:hover{background:#252525;color:#ccc} -div.admonition{padding:0;margin-bottom:20px;background-color:#fcf8e3;border:1px solid;border-bottom-left-radius:var(--border-radius);border-bottom-right-radius:var(--border-radius)}div.admonition p{margin:.5em 1em;padding:0}div.admonition p a{color:inherit!important}div.admonition div.highlight{margin-left:1em;margin-right:1em}div.admonition table.highlighttable{padding-left:1em;padding-right:1em}div.admonition table.highlighttable div.highlight{margin-left:0;margin-right:0}div.admonition p.admonition-title{color:#fff;margin:0;padding:.1em 0 .1em .5em;font-weight:700}div.admonition ol,div.admonition ul{margin:.1em .5em .5em 3em;padding:0}div.danger,div.error{color:#b94a48;background-color:#f2dede}div.danger p.admonition-title,div.error p.admonition-title{background-color:#b94a48}div.attention,div.caution,div.warning{color:#c09853}div.attention p.admonition-title,div.caution p.admonition-title,div.warning p.admonition-title{background-color:#c09853}div.important,div.note{color:#468847;background-color:#dff0d8}div.important p.admonition-title,div.note p.admonition-title{background-color:#468847}div.hint,div.tip{color:#3a87ad;background-color:#d9edf7}div.hint p.admonition-title,div.tip p.admonition-title{background-color:#3a87ad}div.attention p.admonition-title:before,div.caution p.admonition-title:before,div.danger p.admonition-title:before,div.error p.admonition-title:before,div.hint p.admonition-title:before,div.important p.admonition-title:before,div.note p.admonition-title:before,div.tip p.admonition-title:before,div.warning p.admonition-title:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:400;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}div.danger p.admonition-title:before,div.error p.admonition-title:before{height:20px;width:23px;background-size:20px 20px;content:"";background-repeat:no-repeat;background-image:url('data:image/svg+xml; utf8, ');vertical-align:-20%}div.attention p.admonition-title:before,div.caution p.admonition-title:before,div.warning p.admonition-title:before{height:20px;width:23px;background-size:20px 20px;content:"";background-repeat:no-repeat;background-image:url('data:image/svg+xml; utf8, ');vertical-align:-20%}div.important p.admonition-title:before,div.note p.admonition-title:before{height:20px;width:23px;background-size:20px 20px;content:"";background-repeat:no-repeat;background-image:url('data:image/svg+xml; utf8, ');vertical-align:-20%}div.hint p.admonition-title:before,div.tip p.admonition-title:before{height:20px;width:23px;background-size:20px 20px;content:"";background-repeat:no-repeat;background-image:url('data:image/svg+xml; utf8, ');vertical-align:-20%} +@font-face{font-family:"PT Serif";font-style:italic;font-weight:400;src:local("PT Serif Italic"),local(PTSerif-Italic),url(//fonts.gstatic.com/s/ptserif/v11/EJRTQgYoZZY2vCFuvAFT_rO1dg.eot#) format("eot"),url(//fonts.gstatic.com/s/ptserif/v11/EJRTQgYoZZY2vCFuvAFT_r21cg.woff2) format("woff2"),url(//fonts.gstatic.com/s/ptserif/v11/EJRTQgYoZZY2vCFuvAFT_rO1dA.woff) format("woff")}@font-face{font-family:"PT Serif";font-style:italic;font-weight:700;src:local("PT Serif Bold Italic"),local(PTSerif-BoldItalic),url(//fonts.gstatic.com/s/ptserif/v11/EJRQQgYoZZY2vCFuvAFT9gaQZyffpA.eot#) format("eot"),url(//fonts.gstatic.com/s/ptserif/v11/EJRQQgYoZZY2vCFuvAFT9gaQZynfoA.woff2) format("woff2"),url(//fonts.gstatic.com/s/ptserif/v11/EJRQQgYoZZY2vCFuvAFT9gaQZyffpg.woff) format("woff")}@font-face{font-family:"PT Serif";font-style:normal;font-weight:400;src:local("PT Serif"),local(PTSerif-Regular),url(//fonts.gstatic.com/s/ptserif/v11/EJRVQgYoZZY2vCFuvAFYzrs.eot#) format("eot"),url(//fonts.gstatic.com/s/ptserif/v11/EJRVQgYoZZY2vCFuvAFWzr8.woff2) format("woff2"),url(//fonts.gstatic.com/s/ptserif/v11/EJRVQgYoZZY2vCFuvAFYzrk.woff) format("woff")}@font-face{font-family:"PT Serif";font-style:normal;font-weight:700;src:local("PT Serif Bold"),local(PTSerif-Bold),url(//fonts.gstatic.com/s/ptserif/v11/EJRSQgYoZZY2vCFuvAnt66qcVy8.eot#) format("eot"),url(//fonts.gstatic.com/s/ptserif/v11/EJRSQgYoZZY2vCFuvAnt66qSVys.woff2) format("woff2"),url(//fonts.gstatic.com/s/ptserif/v11/EJRSQgYoZZY2vCFuvAnt66qcVy0.woff) format("woff")}@font-face{font-family:Merriweather;font-style:italic;font-weight:300;src:local("Merriweather Light Italic"),local(Merriweather-LightItalic),url(//fonts.gstatic.com/s/merriweather/v21/u-4l0qyriQwlOrhSvowK_l5-eR7lXff2jvg.eot#) format("eot"),url(//fonts.gstatic.com/s/merriweather/v21/u-4l0qyriQwlOrhSvowK_l5-eR7lXff4jvw.woff2) format("woff2"),url(//fonts.gstatic.com/s/merriweather/v21/u-4l0qyriQwlOrhSvowK_l5-eR7lXff2jvo.woff) format("woff")}@font-face{font-family:Merriweather;font-style:italic;font-weight:400;src:local("Merriweather Italic"),local(Merriweather-Italic),url(//fonts.gstatic.com/s/merriweather/v21/u-4m0qyriQwlOrhSvowK_l5-eRZAf-Y.eot#) format("eot"),url(//fonts.gstatic.com/s/merriweather/v21/u-4m0qyriQwlOrhSvowK_l5-eRZOf-I.woff2) format("woff2"),url(//fonts.gstatic.com/s/merriweather/v21/u-4m0qyriQwlOrhSvowK_l5-eRZAf-Q.woff) format("woff")}@font-face{font-family:Merriweather;font-style:italic;font-weight:700;src:local("Merriweather Bold Italic"),local(Merriweather-BoldItalic),url(//fonts.gstatic.com/s/merriweather/v21/u-4l0qyriQwlOrhSvowK_l5-eR71Wvf2jvg.eot#) format("eot"),url(//fonts.gstatic.com/s/merriweather/v21/u-4l0qyriQwlOrhSvowK_l5-eR71Wvf4jvw.woff2) format("woff2"),url(//fonts.gstatic.com/s/merriweather/v21/u-4l0qyriQwlOrhSvowK_l5-eR71Wvf2jvo.woff) format("woff")}@font-face{font-family:Merriweather;font-style:italic;font-weight:900;src:local("Merriweather Black Italic"),local(Merriweather-BlackItalic),url(//fonts.gstatic.com/s/merriweather/v21/u-4l0qyriQwlOrhSvowK_l5-eR7NWPf2jvg.eot#) format("eot"),url(//fonts.gstatic.com/s/merriweather/v21/u-4l0qyriQwlOrhSvowK_l5-eR7NWPf4jvw.woff2) format("woff2"),url(//fonts.gstatic.com/s/merriweather/v21/u-4l0qyriQwlOrhSvowK_l5-eR7NWPf2jvo.woff) format("woff")}@font-face{font-family:Merriweather;font-style:normal;font-weight:300;src:local("Merriweather Light"),local(Merriweather-Light),url(//fonts.gstatic.com/s/merriweather/v21/u-4n0qyriQwlOrhSvowK_l521wRZVsf-.eot#) format("eot"),url(//fonts.gstatic.com/s/merriweather/v21/u-4n0qyriQwlOrhSvowK_l521wRZWMf6.woff2) format("woff2"),url(//fonts.gstatic.com/s/merriweather/v21/u-4n0qyriQwlOrhSvowK_l521wRZVsf8.woff) format("woff")}@font-face{font-family:Merriweather;font-style:normal;font-weight:400;src:local("Merriweather Regular"),local(Merriweather-Regular),url(//fonts.gstatic.com/s/merriweather/v21/u-440qyriQwlOrhSvowK_l5-ciZI.eot#) format("eot"),url(//fonts.gstatic.com/s/merriweather/v21/u-440qyriQwlOrhSvowK_l5-fCZM.woff2) format("woff2"),url(//fonts.gstatic.com/s/merriweather/v21/u-440qyriQwlOrhSvowK_l5-ciZK.woff) format("woff")}@font-face{font-family:Merriweather;font-style:normal;font-weight:700;src:local("Merriweather Bold"),local(Merriweather-Bold),url(//fonts.gstatic.com/s/merriweather/v21/u-4n0qyriQwlOrhSvowK_l52xwNZVsf-.eot#) format("eot"),url(//fonts.gstatic.com/s/merriweather/v21/u-4n0qyriQwlOrhSvowK_l52xwNZWMf6.woff2) format("woff2"),url(//fonts.gstatic.com/s/merriweather/v21/u-4n0qyriQwlOrhSvowK_l52xwNZVsf8.woff) format("woff")}@font-face{font-family:Merriweather;font-style:normal;font-weight:900;src:local("Merriweather Black"),local(Merriweather-Black),url(//fonts.gstatic.com/s/merriweather/v21/u-4n0qyriQwlOrhSvowK_l52_wFZVsf-.eot#) format("eot"),url(//fonts.gstatic.com/s/merriweather/v21/u-4n0qyriQwlOrhSvowK_l52_wFZWMf6.woff2) format("woff2"),url(//fonts.gstatic.com/s/merriweather/v21/u-4n0qyriQwlOrhSvowK_l52_wFZVsf8.woff) format("woff")}@font-face{font-family:Source Code Pro;font-style:italic;font-weight:200;src:local("Source Code Pro ExtraLight Italic"),local(SourceCodePro-ExtraLightIt),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_ViYsKILxRpg3hIP6sJ7fM7PqlONMbtdcm5mk.eot#) format("eot"),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_ViYsKILxRpg3hIP6sJ7fM7PqlONMbtdco5m0.woff2) format("woff2"),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_ViYsKILxRpg3hIP6sJ7fM7PqlONMbtdcm5ms.woff) format("woff")}@font-face{font-family:Source Code Pro;font-style:italic;font-weight:300;src:local("Source Code Pro Light Italic"),local(SourceCodePro-LightIt),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_ViYsKILxRpg3hIP6sJ7fM7PqlONN_ttcm5mk.eot#) format("eot"),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_ViYsKILxRpg3hIP6sJ7fM7PqlONN_ttco5m0.woff2) format("woff2"),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_ViYsKILxRpg3hIP6sJ7fM7PqlONN_ttcm5ms.woff) format("woff")}@font-face{font-family:Source Code Pro;font-style:italic;font-weight:400;src:local("Source Code Pro Italic"),local(SourceCodePro-It),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_QiYsKILxRpg3hIP6sJ7fM7PqlONvalMY.eot#) format("eot"),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_QiYsKILxRpg3hIP6sJ7fM7PqlONvUlMI.woff2) format("woff2"),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_QiYsKILxRpg3hIP6sJ7fM7PqlONvalMQ.woff) format("woff")}@font-face{font-family:Source Code Pro;font-style:italic;font-weight:500;src:local("Source Code Pro Medium Italic"),local(SourceCodePro-MediumIt),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_ViYsKILxRpg3hIP6sJ7fM7PqlONMnt9cm5mk.eot#) format("eot"),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_ViYsKILxRpg3hIP6sJ7fM7PqlONMnt9co5m0.woff2) format("woff2"),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_ViYsKILxRpg3hIP6sJ7fM7PqlONMnt9cm5ms.woff) format("woff")}@font-face{font-family:Source Code Pro;font-style:italic;font-weight:600;src:local("Source Code Pro SemiBold Italic"),local(SourceCodePro-SemiBoldIt),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_ViYsKILxRpg3hIP6sJ7fM7PqlONMLsNcm5mk.eot#) format("eot"),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_ViYsKILxRpg3hIP6sJ7fM7PqlONMLsNco5m0.woff2) format("woff2"),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_ViYsKILxRpg3hIP6sJ7fM7PqlONMLsNcm5ms.woff) format("woff")}@font-face{font-family:Source Code Pro;font-style:italic;font-weight:700;src:local("Source Code Pro Bold Italic"),local(SourceCodePro-BoldIt),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_ViYsKILxRpg3hIP6sJ7fM7PqlONNvsdcm5mk.eot#) format("eot"),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_ViYsKILxRpg3hIP6sJ7fM7PqlONNvsdco5m0.woff2) format("woff2"),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_ViYsKILxRpg3hIP6sJ7fM7PqlONNvsdcm5ms.woff) format("woff")}@font-face{font-family:Source Code Pro;font-style:italic;font-weight:900;src:local("Source Code Pro Black Italic"),local(SourceCodePro-BlackIt),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_ViYsKILxRpg3hIP6sJ7fM7PqlONNXs9cm5mk.eot#) format("eot"),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_ViYsKILxRpg3hIP6sJ7fM7PqlONNXs9co5m0.woff2) format("woff2"),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_ViYsKILxRpg3hIP6sJ7fM7PqlONNXs9cm5ms.woff) format("woff")}@font-face{font-family:Source Code Pro;font-style:normal;font-weight:200;src:local("Source Code Pro ExtraLight"),local(SourceCodePro-ExtraLight),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_XiYsKILxRpg3hIP6sJ7fM7Pqt8srDvecu.eot#) format("eot"),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_XiYsKILxRpg3hIP6sJ7fM7Pqt8srDs-cq.woff2) format("woff2"),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_XiYsKILxRpg3hIP6sJ7fM7Pqt8srDvecs.woff) format("woff")}@font-face{font-family:Source Code Pro;font-style:normal;font-weight:300;src:local("Source Code Pro Light"),local(SourceCodePro-Light),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_XiYsKILxRpg3hIP6sJ7fM7PqtlsnDvecu.eot#) format("eot"),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_XiYsKILxRpg3hIP6sJ7fM7PqtlsnDs-cq.woff2) format("woff2"),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_XiYsKILxRpg3hIP6sJ7fM7PqtlsnDvecs.woff) format("woff")}@font-face{font-family:Source Code Pro;font-style:normal;font-weight:400;src:local("Source Code Pro Regular"),local(SourceCodePro-Regular),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_SiYsKILxRpg3hIP6sJ7fM7PqlM-vS.eot#) format("eot"),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_SiYsKILxRpg3hIP6sJ7fM7PqlPevW.woff2) format("woff2"),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_SiYsKILxRpg3hIP6sJ7fM7PqlM-vQ.woff) format("woff")}@font-face{font-family:Source Code Pro;font-style:normal;font-weight:500;src:local("Source Code Pro Medium"),local(SourceCodePro-Medium),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_XiYsKILxRpg3hIP6sJ7fM7PqtzsjDvecu.eot#) format("eot"),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_XiYsKILxRpg3hIP6sJ7fM7PqtzsjDs-cq.woff2) format("woff2"),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_XiYsKILxRpg3hIP6sJ7fM7PqtzsjDvecs.woff) format("woff")}@font-face{font-family:Source Code Pro;font-style:normal;font-weight:600;src:local("Source Code Pro SemiBold"),local(SourceCodePro-SemiBold),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_XiYsKILxRpg3hIP6sJ7fM7Pqt4s_Dvecu.eot#) format("eot"),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_XiYsKILxRpg3hIP6sJ7fM7Pqt4s_Ds-cq.woff2) format("woff2"),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_XiYsKILxRpg3hIP6sJ7fM7Pqt4s_Dvecs.woff) format("woff")}@font-face{font-family:Source Code Pro;font-style:normal;font-weight:700;src:local("Source Code Pro Bold"),local(SourceCodePro-Bold),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_XiYsKILxRpg3hIP6sJ7fM7Pqths7Dvecu.eot#) format("eot"),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_XiYsKILxRpg3hIP6sJ7fM7Pqths7Ds-cq.woff2) format("woff2"),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_XiYsKILxRpg3hIP6sJ7fM7Pqths7Dvecs.woff) format("woff")}@font-face{font-family:Source Code Pro;font-style:normal;font-weight:900;src:local("Source Code Pro Black"),local(SourceCodePro-Black),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_XiYsKILxRpg3hIP6sJ7fM7PqtvszDvecu.eot#) format("eot"),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_XiYsKILxRpg3hIP6sJ7fM7PqtvszDs-cq.woff2) format("woff2"),url(//fonts.gstatic.com/s/sourcecodepro/v11/HI_XiYsKILxRpg3hIP6sJ7fM7PqtvszDvecs.woff) format("woff")}@font-face{font-family:Open Sans;font-style:italic;font-weight:300;src:local("Open Sans Light Italic"),local(OpenSans-LightItalic),url(//fonts.gstatic.com/s/opensans/v17/memnYaGs126MiZpBA-UFUKWyV9hlIqc.eot#) format("eot"),url(//fonts.gstatic.com/s/opensans/v17/memnYaGs126MiZpBA-UFUKWyV9hrIqM.woff2) format("woff2"),url(//fonts.gstatic.com/s/opensans/v17/memnYaGs126MiZpBA-UFUKWyV9hlIqU.woff) format("woff")}@font-face{font-family:Open Sans;font-style:italic;font-weight:400;src:local("Open Sans Italic"),local(OpenSans-Italic),url(//fonts.gstatic.com/s/opensans/v17/mem6YaGs126MiZpBA-UFUK0Xdck.eot#) format("eot"),url(//fonts.gstatic.com/s/opensans/v17/mem6YaGs126MiZpBA-UFUK0Zdc0.woff2) format("woff2"),url(//fonts.gstatic.com/s/opensans/v17/mem6YaGs126MiZpBA-UFUK0Xdcs.woff) format("woff")}@font-face{font-family:Open Sans;font-style:italic;font-weight:600;src:local("Open Sans SemiBold Italic"),local(OpenSans-SemiBoldItalic),url(//fonts.gstatic.com/s/opensans/v17/memnYaGs126MiZpBA-UFUKXGUdhlIqc.eot#) format("eot"),url(//fonts.gstatic.com/s/opensans/v17/memnYaGs126MiZpBA-UFUKXGUdhrIqM.woff2) format("woff2"),url(//fonts.gstatic.com/s/opensans/v17/memnYaGs126MiZpBA-UFUKXGUdhlIqU.woff) format("woff")}@font-face{font-family:Open Sans;font-style:italic;font-weight:700;src:local("Open Sans Bold Italic"),local(OpenSans-BoldItalic),url(//fonts.gstatic.com/s/opensans/v17/memnYaGs126MiZpBA-UFUKWiUNhlIqc.eot#) format("eot"),url(//fonts.gstatic.com/s/opensans/v17/memnYaGs126MiZpBA-UFUKWiUNhrIqM.woff2) format("woff2"),url(//fonts.gstatic.com/s/opensans/v17/memnYaGs126MiZpBA-UFUKWiUNhlIqU.woff) format("woff")}@font-face{font-family:Open Sans;font-style:italic;font-weight:800;src:local("Open Sans ExtraBold Italic"),local(OpenSans-ExtraBoldItalic),url(//fonts.gstatic.com/s/opensans/v17/memnYaGs126MiZpBA-UFUKW-U9hlIqc.eot#) format("eot"),url(//fonts.gstatic.com/s/opensans/v17/memnYaGs126MiZpBA-UFUKW-U9hrIqM.woff2) format("woff2"),url(//fonts.gstatic.com/s/opensans/v17/memnYaGs126MiZpBA-UFUKW-U9hlIqU.woff) format("woff")}@font-face{font-family:Open Sans;font-style:normal;font-weight:300;src:local("Open Sans Light"),local(OpenSans-Light),url(//fonts.gstatic.com/s/opensans/v17/mem5YaGs126MiZpBA-UN_r8OXOht.eot#) format("eot"),url(//fonts.gstatic.com/s/opensans/v17/mem5YaGs126MiZpBA-UN_r8OUuhp.woff2) format("woff2"),url(//fonts.gstatic.com/s/opensans/v17/mem5YaGs126MiZpBA-UN_r8OXOhv.woff) format("woff")}@font-face{font-family:Open Sans;font-style:normal;font-weight:400;src:local("Open Sans Regular"),local(OpenSans-Regular),url(//fonts.gstatic.com/s/opensans/v17/mem8YaGs126MiZpBA-UFW50f.eot#) format("eot"),url(//fonts.gstatic.com/s/opensans/v17/mem8YaGs126MiZpBA-UFVZ0b.woff2) format("woff2"),url(//fonts.gstatic.com/s/opensans/v17/mem8YaGs126MiZpBA-UFW50d.woff) format("woff")}@font-face{font-family:Open Sans;font-style:normal;font-weight:600;src:local("Open Sans SemiBold"),local(OpenSans-SemiBold),url(//fonts.gstatic.com/s/opensans/v17/mem5YaGs126MiZpBA-UNirkOXOht.eot#) format("eot"),url(//fonts.gstatic.com/s/opensans/v17/mem5YaGs126MiZpBA-UNirkOUuhp.woff2) format("woff2"),url(//fonts.gstatic.com/s/opensans/v17/mem5YaGs126MiZpBA-UNirkOXOhv.woff) format("woff")}@font-face{font-family:Open Sans;font-style:normal;font-weight:700;src:local("Open Sans Bold"),local(OpenSans-Bold),url(//fonts.gstatic.com/s/opensans/v17/mem5YaGs126MiZpBA-UN7rgOXOht.eot#) format("eot"),url(//fonts.gstatic.com/s/opensans/v17/mem5YaGs126MiZpBA-UN7rgOUuhp.woff2) format("woff2"),url(//fonts.gstatic.com/s/opensans/v17/mem5YaGs126MiZpBA-UN7rgOXOhv.woff) format("woff")}@font-face{font-family:Open Sans;font-style:normal;font-weight:800;src:local("Open Sans ExtraBold"),local(OpenSans-ExtraBold),url(//fonts.gstatic.com/s/opensans/v17/mem5YaGs126MiZpBA-UN8rsOXOht.eot#) format("eot"),url(//fonts.gstatic.com/s/opensans/v17/mem5YaGs126MiZpBA-UN8rsOUuhp.woff2) format("woff2"),url(//fonts.gstatic.com/s/opensans/v17/mem5YaGs126MiZpBA-UN8rsOXOhv.woff) format("woff")}@import url("https://fonts.googleapis.com/css?family=Merriweather:300,400|Open+Sans|Source+Code+Pro");#tipue_search_input:-webkit-autofill,#tipue_search_input:-webkit-autofill:focus,#tipue_search_input:-webkit-autofill:hover{-webkit-box-shadow:0 0 0 1000px #f3f3f3 inset}.tipue_search_button{position:relative;width:49px;height:56px;margin-left:-3px;background-color:#f3f3f3;border:none;border-top-right-radius:3px;border-bottom-right-radius:3px;cursor:pointer}.tipue_search_button,.tipue_search_icon{float:left;box-sizing:border-box;outline:0}.tipue_search_icon{font:24px/1 Open Sans,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#333;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);-moz-appearance:none;-webkit-appearance:none;box-shadow:none;margin:-1px 0 0 16px}.tipue_search_group:after{content:"";display:table;clear:both}#tipue_search_content{max-width:100%;margin:0}.tipue_search_content_title{font:300 31.5px/40px Baskerville,Garamond,Georgia,"DejaVu Serif",Times New Roman,Times,Serif;color:#111}.tipue_search_content_title a{color:#111;text-decoration:none}.tipue_search_content_title a:hover{border-bottom:1px solid #333}.tipue_search_result{padding-top:27px}#tipue_search_results_count,.tipue_search_content_debug{font:13px/1.5 Source Code Pro,monospace;text-transform:uppercase;color:#999;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#tipue_search_results_count{padding-top:9px}#tipue_search_error,#tipue_search_replace,.tipue_search_content_url,.tipue_search_note,.tipue_search_related{font:300 16px/1.4 Merriweather,serif;color:#666;padding-top:7px;word-wrap:break-word;-webkit-hyphens:auto;-ms-hyphens:auto;hyphens:auto}#tipue_search_replace a,#tipue_search_replace a:hover,.tipue_search_content_url a,.tipue_search_note a,.tipue_search_related a{text-decoration:none}.tipue_search_content_url a:hover,.tipue_search_note a:hover,.tipue_search_related a:hover{color:#666}#tipue_search_replace,.tipue_search_related{margin-top:7px}#tipue_search_error{color:#333;margin-top:17px}.tipue_search_content_text{font:1.2em/1.6em "PT Serif",Georgia,Times New Roman,Times,Serif;color:#333;word-wrap:break-word;-webkit-hyphens:auto;-ms-hyphens:auto;hyphens:auto;margin-top:9px}.tipue_search_content_bold{font-weight:400;font-family:Open Sans,sans-serif;color:#333}.tipue_search_content_debug{margin:7px 0 2px}.tipue_search_image{padding:17px 0 6px}.tipue_search_img{width:100%;max-width:330px;height:auto;-webkit-transition:.5s;transition:.5s;border-radius:2px}.tipue_search_img:hover{opacity:.9}#tipue_search_zoom_text{font:12px/1.7 Source Code Pro,monospace;color:#ccc;text-transform:uppercase;letter-spacing:1px;padding-top:9px}#tipue_search_zoom_text a{color:#ccc;text-decoration:none;border-bottom:2px solid #f7f7f7}#tipue_search_zoom_text a:hover{border:0}.tipue_search_image_zoom{cursor:pointer}#tipue_search_image_modal{display:none;position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:rgba(0,0,0,.9)}.tipue_search_image_close{position:absolute;top:0;right:0;font:22px/1 Source Code Pro,monospace;color:#ccc;padding:25px 30px;cursor:pointer}.tipue_search_image_block{margin:0 auto;max-width:900px;padding:73px 30px 30px;box-sizing:border-box;color:#fff}#tipue_search_zoom_img{max-width:100%;height:auto}#tipue_search_zoom_text,.tipue_search_zoom_options{padding-top:9px}#tipue_search_foot{margin:51px 0 21px}#tipue_search_foot_boxes{font:14px Source Code Pro,sans-serif;text-transform:uppercase;color:#333;padding:0;margin:0;cursor:pointer}#tipue_search_foot_boxes li{display:inline;list-style:none;margin:0;padding:0}#tipue_search_foot_boxes li a{background-color:#f7f7f7;color:#666;text-decoration:none;-webkit-transition:.3s;transition:.3s}#tipue_search_foot_boxes li.current,#tipue_search_foot_boxes li a{padding:10px 17px 11px;border-radius:3px;margin-right:7px;text-align:center}#tipue_search_foot_boxes li.current,#tipue_search_foot_boxes li a:hover{background:#252525;color:#ccc} +/*! PhotoSwipe main CSS by Dmitry Semenov | photoswipe.com | MIT license */.pswp{display:none;position:absolute;width:100%;height:100%;left:0;top:0;overflow:hidden;-ms-touch-action:none;touch-action:none;z-index:1500;-webkit-text-size-adjust:100%;-webkit-backface-visibility:hidden;outline:none}.pswp *{box-sizing:border-box}.pswp img{max-width:none}.pswp--animate_opacity{opacity:.001;will-change:opacity;-webkit-transition:opacity 333ms cubic-bezier(.4,0,.22,1);transition:opacity 333ms cubic-bezier(.4,0,.22,1)}.pswp--open{display:block}.pswp--zoom-allowed .pswp__img{cursor:-webkit-zoom-in;cursor:-moz-zoom-in;cursor:zoom-in}.pswp--zoomed-in .pswp__img{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.pswp--dragging .pswp__img{cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.pswp__bg{background:#000;opacity:0;-webkit-transform:translateZ(0);transform:translateZ(0);-webkit-backface-visibility:hidden}.pswp__bg,.pswp__scroll-wrap{position:absolute;left:0;top:0;width:100%;height:100%}.pswp__scroll-wrap{overflow:hidden}.pswp__container,.pswp__zoom-wrap{-ms-touch-action:none;touch-action:none;position:absolute;left:0;right:0;top:0;bottom:0}.pswp__container,.pswp__img{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}.pswp__zoom-wrap{position:absolute;width:100%;-webkit-transform-origin:left top;transform-origin:left top;-webkit-transition:-webkit-transform 333ms cubic-bezier(.4,0,.22,1);transition:-webkit-transform 333ms cubic-bezier(.4,0,.22,1);transition:transform 333ms cubic-bezier(.4,0,.22,1);transition:transform 333ms cubic-bezier(.4,0,.22,1),-webkit-transform 333ms cubic-bezier(.4,0,.22,1)}.pswp__bg{will-change:opacity;-webkit-transition:opacity 333ms cubic-bezier(.4,0,.22,1);transition:opacity 333ms cubic-bezier(.4,0,.22,1)}.pswp--animated-in .pswp__bg,.pswp--animated-in .pswp__zoom-wrap{-webkit-transition:none;transition:none}.pswp__container,.pswp__zoom-wrap{-webkit-backface-visibility:hidden}.pswp__item{right:0;bottom:0;overflow:hidden}.pswp__img,.pswp__item{position:absolute;left:0;top:0}.pswp__img{width:auto;height:auto}.pswp__img--placeholder{-webkit-backface-visibility:hidden}.pswp__img--placeholder--blank{background:#222}.pswp--ie .pswp__img{width:100%!important;height:auto!important;left:0;top:0}.pswp__error-msg{position:absolute;left:0;top:50%;width:100%;text-align:center;font-size:14px;line-height:16px;margin-top:-8px;color:#ccc}.pswp__error-msg a{color:#ccc;text-decoration:underline} +/*! PhotoSwipe Default UI CSS by Dmitry Semenov | photoswipe.com | MIT license */.pswp__button{width:44px;height:44px;position:relative;background:none;cursor:pointer;overflow:visible;-webkit-appearance:none;display:block;border:0;padding:0;margin:0;float:right;opacity:.75;-webkit-transition:opacity .2s;transition:opacity .2s;box-shadow:none}.pswp__button:focus,.pswp__button:hover{opacity:1}.pswp__button:active{outline:none;opacity:.9}.pswp__button::-moz-focus-inner{padding:0;border:0}.pswp__ui--over-close .pswp__button--close{opacity:1}.pswp__button,.pswp__button--arrow--left:before,.pswp__button--arrow--right:before{background:url(default-skin.png) 0 0 no-repeat;background-size:264px 88px;width:44px;height:44px}@media (-webkit-min-device-pixel-ratio:1.1),(-webkit-min-device-pixel-ratio:1.09375),(min-resolution:1.1dppx),(min-resolution:105dpi){.pswp--svg .pswp__button,.pswp--svg .pswp__button--arrow--left:before,.pswp--svg .pswp__button--arrow--right:before{background-image:url(default-skin.svg)}.pswp--svg .pswp__button--arrow--left,.pswp--svg .pswp__button--arrow--right{background:none}}.pswp__button--close{background-position:0 -44px}.pswp__button--share{background-position:-44px -44px}.pswp__button--fs{display:none}.pswp--supports-fs .pswp__button--fs{display:block}.pswp--fs .pswp__button--fs{background-position:-44px 0}.pswp__button--zoom{display:none;background-position:-88px 0}.pswp--zoom-allowed .pswp__button--zoom{display:block}.pswp--zoomed-in .pswp__button--zoom{background-position:-132px 0}.pswp--touch .pswp__button--arrow--left,.pswp--touch .pswp__button--arrow--right{visibility:hidden}.pswp__button--arrow--left,.pswp__button--arrow--right{background:none;top:50%;margin-top:-50px;width:70px;height:100px;position:absolute}.pswp__button--arrow--left{left:0}.pswp__button--arrow--right{right:0}.pswp__button--arrow--left:before,.pswp__button--arrow--right:before{content:"";top:35px;background-color:rgba(0,0,0,.3);height:30px;width:32px;position:absolute}.pswp__button--arrow--left:before{left:6px;background-position:-138px -44px}.pswp__button--arrow--right:before{right:6px;background-position:-94px -44px}.pswp__counter,.pswp__share-modal{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.pswp__share-modal{display:block;background:rgba(0,0,0,.5);width:100%;height:100%;top:0;left:0;padding:10px;position:absolute;z-index:1600;opacity:0;-webkit-transition:opacity .25s ease-out;transition:opacity .25s ease-out;-webkit-backface-visibility:hidden;will-change:opacity}.pswp__share-modal--hidden{display:none}.pswp__share-tooltip{z-index:1620;position:absolute;background:#fff;top:56px;border-radius:2px;display:block;width:auto;right:44px;box-shadow:0 2px 5px rgba(0,0,0,.25);-webkit-transform:translateY(6px);transform:translateY(6px);-webkit-transition:-webkit-transform .25s;transition:-webkit-transform .25s;transition:transform .25s;transition:transform .25s,-webkit-transform .25s;-webkit-backface-visibility:hidden;will-change:transform}.pswp__share-tooltip a{display:block;padding:8px 12px;font-size:14px;line-height:18px}.pswp__share-tooltip a,.pswp__share-tooltip a:hover{color:#000;text-decoration:none}.pswp__share-tooltip a:first-child{border-radius:2px 2px 0 0}.pswp__share-tooltip a:last-child{border-radius:0 0 2px 2px}.pswp__share-modal--fade-in{opacity:1}.pswp__share-modal--fade-in .pswp__share-tooltip{-webkit-transform:translateY(0);transform:translateY(0)}.pswp--touch .pswp__share-tooltip a{padding:16px 12px}a.pswp__share--facebook:before{content:"";display:block;width:0;height:0;position:absolute;top:-12px;right:15px;border:6px solid transparent;border-bottom-color:#fff;-webkit-pointer-events:none;-moz-pointer-events:none;pointer-events:none}a.pswp__share--facebook:hover{background:#3e5c9a;color:#fff}a.pswp__share--facebook:hover:before{border-bottom-color:#3e5c9a}a.pswp__share--twitter:hover{background:#55acee;color:#fff}a.pswp__share--pinterest:hover{background:#ccc;color:#ce272d}a.pswp__share--download:hover{background:#ddd}.pswp__counter{position:absolute;left:0;top:0;height:44px;font-size:13px;line-height:44px;color:#fff;opacity:.75;padding:0 10px}.pswp__caption{position:absolute;left:0;bottom:0;width:100%;min-height:44px}.pswp__caption small{font-size:11px;color:#bbb}.pswp__caption__center{text-align:left;max-width:420px;margin:0 auto;font-size:13px;padding:10px;line-height:20px;color:#ccc}.pswp__caption--empty{display:none}.pswp__caption--fake{visibility:hidden}.pswp__preloader{width:44px;height:44px;position:absolute;top:0;left:50%;margin-left:-22px;opacity:0;-webkit-transition:opacity .25s ease-out;transition:opacity .25s ease-out;will-change:opacity;direction:ltr}.pswp__preloader__icn{width:20px;height:20px;margin:12px}.pswp__preloader--active{opacity:1}.pswp__preloader--active .pswp__preloader__icn{background:url(preloader.gif) 0 0 no-repeat}.pswp--css_animation .pswp__preloader--active{opacity:1}.pswp--css_animation .pswp__preloader--active .pswp__preloader__icn{-webkit-animation:clockwise .5s linear infinite;animation:clockwise .5s linear infinite}.pswp--css_animation .pswp__preloader--active .pswp__preloader__donut{-webkit-animation:donut-rotate 1s cubic-bezier(.4,0,.22,1) infinite;animation:donut-rotate 1s cubic-bezier(.4,0,.22,1) infinite}.pswp--css_animation .pswp__preloader__icn{background:none;opacity:.75;width:14px;height:14px;position:absolute;left:15px;top:15px;margin:0}.pswp--css_animation .pswp__preloader__cut{position:relative;width:7px;height:14px;overflow:hidden}.pswp--css_animation .pswp__preloader__donut{box-sizing:border-box;width:14px;height:14px;border-radius:50%;border-color:#fff #fff transparent transparent;border-style:solid;border-width:2px;position:absolute;top:0;left:0;background:none;margin:0}@media screen and (max-width:1024px){.pswp__preloader{position:relative;left:auto;top:auto;margin:0;float:right}}@-webkit-keyframes clockwise{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes clockwise{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@-webkit-keyframes donut-rotate{0%{-webkit-transform:rotate(0);transform:rotate(0)}50%{-webkit-transform:rotate(-140deg);transform:rotate(-140deg)}to{-webkit-transform:rotate(0);transform:rotate(0)}}@keyframes donut-rotate{0%{-webkit-transform:rotate(0);transform:rotate(0)}50%{-webkit-transform:rotate(-140deg);transform:rotate(-140deg)}to{-webkit-transform:rotate(0);transform:rotate(0)}}.pswp__ui{-webkit-font-smoothing:auto;visibility:visible;opacity:1;z-index:1550}.pswp__top-bar{position:absolute;left:0;top:0;height:44px;width:100%}.pswp--has_mouse .pswp__button--arrow--left,.pswp--has_mouse .pswp__button--arrow--right,.pswp__caption,.pswp__top-bar{-webkit-backface-visibility:hidden;will-change:opacity;-webkit-transition:opacity 333ms cubic-bezier(.4,0,.22,1);transition:opacity 333ms cubic-bezier(.4,0,.22,1)}.pswp--has_mouse .pswp__button--arrow--left,.pswp--has_mouse .pswp__button--arrow--right{visibility:visible}.pswp__caption,.pswp__top-bar{background-color:rgba(0,0,0,.5)}.pswp__ui--fit .pswp__caption,.pswp__ui--fit .pswp__top-bar{background-color:rgba(0,0,0,.3)}.pswp__ui--idle .pswp__button--arrow--left,.pswp__ui--idle .pswp__button--arrow--right,.pswp__ui--idle .pswp__top-bar{opacity:0}.pswp__ui--hidden .pswp__button--arrow--left,.pswp__ui--hidden .pswp__button--arrow--right,.pswp__ui--hidden .pswp__caption,.pswp__ui--hidden .pswp__top-bar{opacity:.001}.pswp__ui--one-slide .pswp__button--arrow--left,.pswp__ui--one-slide .pswp__button--arrow--right,.pswp__ui--one-slide .pswp__counter{display:none}.pswp__element--disabled{display:none!important}.pswp--minimal--dark .pswp__top-bar{background:none} +div.admonition{padding:0;margin-bottom:20px;background-color:#fcf8e3;border:1px solid;border-bottom-left-radius:var(--border-radius);border-bottom-right-radius:var(--border-radius)}div.admonition p{margin:.5em 1em;padding:0}div.admonition p a{color:inherit!important}div.admonition div.highlight{margin-left:1em;margin-right:1em}div.admonition table.highlighttable{padding-left:1em;padding-right:1em}div.admonition table.highlighttable div.highlight{margin-left:0;margin-right:0}div.admonition p.admonition-title{color:#fff;margin:0;padding:.1em 0 .1em .5em;font-weight:700}div.admonition ol,div.admonition ul{margin:.1em .5em .5em 3em;padding:0}div.danger,div.error{color:#b94a48;background-color:#f2dede}div.danger p.admonition-title,div.error p.admonition-title{background-color:#b94a48}div.attention,div.caution,div.warning{color:#c09853}div.attention p.admonition-title,div.caution p.admonition-title,div.warning p.admonition-title{background-color:#c09853}div.important,div.note{color:#468847;background-color:#dff0d8}div.important p.admonition-title,div.note p.admonition-title{background-color:#468847}div.hint,div.tip{color:#3a87ad;background-color:#d9edf7}div.hint p.admonition-title,div.tip p.admonition-title{background-color:#3a87ad}div.attention p.admonition-title:before,div.caution p.admonition-title:before,div.danger p.admonition-title:before,div.error p.admonition-title:before,div.hint p.admonition-title:before,div.important p.admonition-title:before,div.note p.admonition-title:before,div.tip p.admonition-title:before,div.warning p.admonition-title:before{display:inline-block;font-style:normal;font-weight:400;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}div.danger p.admonition-title:before,div.error p.admonition-title:before{height:20px;width:23px;background-size:20px 20px;content:"";background-repeat:no-repeat;background-image:url('data:image/svg+xml; utf8, ');vertical-align:-20%}div.attention p.admonition-title:before,div.caution p.admonition-title:before,div.warning p.admonition-title:before{height:20px;width:23px;background-size:20px 20px;content:"";background-repeat:no-repeat;background-image:url('data:image/svg+xml; utf8, ');vertical-align:-20%}div.important p.admonition-title:before,div.note p.admonition-title:before{height:20px;width:23px;background-size:20px 20px;content:"";background-repeat:no-repeat;background-image:url('data:image/svg+xml; utf8, ');vertical-align:-20%}div.hint p.admonition-title:before,div.tip p.admonition-title:before{height:20px;width:23px;background-size:20px 20px;content:"";background-repeat:no-repeat;background-image:url('data:image/svg+xml; utf8, ');vertical-align:-20%} div.applause_button{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}div.applause_button applause-button{height:50px;width:50px}div.applause_button applause-button div.style-root{fill:maroon!important;stroke:maroon!important;color:maroon!important} -blockquote{--quotes-margin:13px;background:#fff8dc;border-left:5px solid #daa520;border-radius:var(--border-radius);box-sizing:border-box;margin:1rem auto 2rem;padding:.1rem 1.2rem;position:relative;width:80%}blockquote p{font-family:Helvetica Neue,Helvetica,Arial,Sans-Serif;font-weight:400}blockquote:after,blockquote:before{color:#696969;font-size:4rem;line-height:0;margin:0;padding:0;position:absolute}blockquote:before{content:open-quote;margin-right:var(--quotes-margin);right:100%;top:30px}blockquote:after{bottom:0;content:close-quote;left:100%;margin-left:var(--quotes-margin);top:auto} +blockquote{--quotes-margin:13px;background:#fff8dc;border-left:5px solid #daa520;border-radius:var(--border-radius);box-sizing:border-box;margin:1rem auto 2rem;padding:.1rem 1.2rem;position:relative;width:80%}blockquote:after,blockquote:before{color:#696969;font-size:4rem;line-height:0;margin:0;padding:0;position:absolute}blockquote:before{content:open-quote;margin-right:var(--quotes-margin);right:100%;top:30px}blockquote:after{bottom:0;content:close-quote;left:100%;margin-left:var(--quotes-margin);top:auto} -:root{--border-radius:4px}body,html{height:100%}body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}div#content{-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto}footer{-ms-flex-line-pack:center;align-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;border-top:1px solid rgba(0,0,0,.2);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-ms-flex-negative:0;flex-shrink:0;-ms-flex-wrap:wrap;flex-wrap:wrap;font:.8em Calibri,Tahoma,Arial,Sans-Serif;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;margin:15px 0 0;min-height:40px;padding:0 3px}footer div{margin:3px 0}footer div:first-child{margin-right:auto}footer div#fpowered{margin-left:auto;margin-right:unset}:lang(zh){font-family:Hiragino Sans GB,Microsoft YaHei,WenQuanYi Micro Hei,Helvetica,Arial,sans-serif}a{color:#3875d7}hr{border-width:3px}.site-name{font-family:Monaco,Inconsolata,Andale Mono,Lucida Console,Bitstream Vera Sans Mono,Courier New,Courier,Monospace}.top-menu li a{font-weight:700}#comment-message,#post-share-links:not(a){color:#6f6f6f;text-shadow:1px 1px 3px rgba(50,50,50,.15)}#post-share-links a{text-shadow:0 0}.comment-count{font-family:Trebuchet MS,Trebuchet,Lucida Sans Unicode,Lucida Grande,Lucida Sans,Arial,Sans-Serif;font-size:.9em}#comment_thread{padding-left:10px;padding-right:10px}table{table-layout:fixed;width:100%}td{vertical-align:top}@media (max-width:979px){.linenos{display:none!important}}.linenos{width:30px}.linenos div pre{text-align:right;overflow:hidden}pre{overflow:auto;white-space:pre;word-break:normal;word-wrap:normal}td.code .highlight pre{border-radius:0 4px 4px 0;border-radius:0 var(--border-radius) var(--border-radius) 0}td.code{width:100%}.linenodiv pre{background-color:#eee8d5;border-radius:4px 0 0 4px;border-radius:var(--border-radius) 0 0 var(--border-radius);color:#657b83}div.highlight{margin-bottom:20px}table.highlighttable,table.highlighttable td{border:none}table.highlighttable tbody>tr:nth-child(odd)>td{background-color:transparent}.list-of-tags{font-family:Helvetica Neue,Helvetica,Arial,Sans-Serif;list-style:none;margin:0;overflow:hidden}.list-of-tags li{float:left;line-height:28px;margin:0}.list-of-tags a{background:#eee;border-radius:4px;border-radius:var(--border-radius);color:#222;margin:2px;padding:3px 6px;text-decoration:none}.list-of-tags a span{font-size:.8em;vertical-align:super}.tags-in-article li{float:none;line-height:28px}.tag-title{font-family:Trebuchet MS,Trebuchet,Lucida Sans Unicode,Lucida Grande,Lucida Sans,Arial,Sans-Serif}.articles-in-tag li{font:1.1em/1.6 Trebuchet MS,Trebuchet,Lucida Sans Unicode,Lucida Grande,Lucida Sans,Arial,Sans-Serif}.article-content,div.recent-posts p{font:1.2em/1.6 "PT Serif",Georgia,Times New Roman,Times,Serif;text-align:justify}.article-content{max-width:50em}.article-content p,div.recent-posts p{font-size:inherit;font-feature-settings:normal;font-variant:normal;line-height:1.6;text-transform:none}.article-content p{margin:20px 0}.article-content ul:not(.related-posts-list):not(.articles-timeline){font-size:inherit;list-style-type:disc}.article-content ul.related-posts-list{list-style-type:square}.article-content ol{font-size:inherit;list-style-type:decimal}.article-content li{line-height:1.7em;list-style-position:outside;margin:1px 0 1px 20px}.article-content dl{font-size:inherit;list-style-position:outside;list-style-type:decimal;margin:20px 0 20px 20px}.article-content dd{line-height:1.7em;margin:1px 0 1px 20px;padding:3px 0}.article-content dt{font-size:inherit}.page-header{border-bottom:2px solid maroon;color:maroon;margin:10px 10px 20px;padding:5px}.page-header h1{border:none;line-height:1em}ul.articles-timeline{list-style:none;margin:0;padding-bottom:30px}ul.articles-timeline .next-article{float:right;margin:0}ul.articles-timeline .previous-article{float:left;margin:0}ul.multi-parts-list a{color:#000}ul.multi-parts-list a:hover{text-decoration:none}ul.multi-parts-list li.active-part{font-style:italic}.table-of-content .toc{font-size:.7em}.last-updated a{color:#333}.last-updated a:hover{text-decoration:none}.article-content img{border:2px solid #eee;padding:5px}p#post-share-links{text-align:right}.list-of-categories span{font-size:.7em;vertical-align:super}a.list-of-categories{text-decoration:none}ul.list-articles-category{list-style:none outside none;margin:0 0 0 5px}ul.list-articles-category li time{color:#8f8f8f;display:inline-block;font:.9em PT Sans,Helvetica Neue,Arial,Sans-Serif;width:7em}a.category-link{color:#333}a.category-link:hover{text-decoration:none}a.list-of-categories{font-family:Trebuchet MS,Trebuchet,Lucida Sans Unicode,Lucida Grande,Lucida Sans,Arial,Sans-Serif;font-size:1.1em}a.list-of-categories:hover{background-color:#08c;border-radius:4px;border-radius:var(--border-radius);color:#fff}ul.list-all-articles{list-style:none;margin:0}ul.list-all-articles li{border-bottom:1px dotted #000;font-family:Trebuchet MS,Trebuchet,Lucida Sans Unicode,Lucida Grande,Lucida Sans,Arial,Sans-Serif;font-size:1.1em;padding:.3em 0;overflow:auto}ul.list-all-articles li time{color:#aaa;float:right;font-family:PT Sans,Helvetica Neue,Arial,Sans-Serif;font-size:.9em}div.blog-archives h2{float:left;position:relative;margin:0}div.blog-archives div,div.recent-posts-article{border-bottom:1px dotted #aaa;font-size:1.1em;padding:.3em .2em;position:relative;overflow:auto}div.blog-archives div{margin-left:6em}div.blog-archives div.last-entry-of-year{margin-bottom:1em}div.blog-archives time,div.recent-posts time{float:right;text-align:right}div.blog-archives time,div.recent-posts-posted,div.recent-posts time{color:#8f8f8f;font:.9em PT Sans,Helvetica Neue,Arial,Sans-Serif}div.recent-posts time{font-size:inherit}div.recent-posts-time{display:inline}@media (max-width:767px){div.blog-archives h2{float:none}div.blog-archives article{margin-left:0;padding-left:0}div.recent-posts time{float:none}div.recent-posts-time{display:block}ul.list-articles-category li time{width:100%}}#mc-embed-signup{font-family:inherit;font-size:inherit;margin:10px 0}#mc-embed-signup form{display:block;padding:0;position:relative;text-align:left}#mc-embed-signup input{-moz-appearance:none;-webkit-appearance:none;border:1px solid #999}#mc-embed-signup input:focus{border-color:#333}#mc-embed-signup input.email{display:block;font-size:.9em;margin:0 4% 10px 0;min-width:130px;padding:8px 0;text-indent:5px;width:100%}#mc-embed-signup input.button{display:block;margin:0 0 10px;min-width:130px;width:100%}#mc-embed-signup input[type=email]{height:100%}#mc-embed-signup .button{background-color:#eee;border-radius:4px;border-radius:var(--border-radius);border:1px solid #d3d3d3;clear:both;color:#000;cursor:pointer;display:inline-block;font-size:1em;font-weight:400;height:32px;line-height:32px;margin:0 5px 10px 0;padding:0;text-align:center;text-decoration:none;vertical-align:top;white-space:nowrap;width:auto}#mc-embed-signup.button:hover{background-color:#dfdfdf}#mc-embed-signup .clear{clear:none;display:inline}#allposts{color:#999;float:right;font-size:75%;font-weight:400}a#allposts:hover{color:#333}.proj-desc{color:#999;font:.9em PT Sans,Helvetica Neue,Arial,Sans-Serif}.literal{background-color:#f7f7f9;border-radius:4px;border-radius:var(--border-radius);border:1px solid #e1e1e8;color:#d14;font-family:Monaco,Menlo,Consolas,Courier New,monospace;font-size:12px;padding:2px 4px;white-space:nowrap}div.line-block div.line-block{margin-left:1.5em}.amp{font-family:Warnock Pro,Goudy Old Style,Palatino,Book Antiqua,Serif;font-style:italic}.article-content img,div.figure{text-align:center}div.figure img{width:100%}div.figure p.caption{color:grey;font-size:.6em;margin:0}div.figure p.caption a{border:none;color:grey}.article-content img.align-right,div.figure.align-right{float:right;margin-left:1.5em}.article-content img.align-left,div.figure.align-left{float:left;margin-right:1.5em}.author_blurb{font-style:italic;padding:5px 0}.author_blurb img{padding:0;width:32px;height:32px}.author_name{font-weight:700;font-feature-settings:"c2sc";font-variant:small-caps}.gist table{table-layout:auto}table{max-width:100%;background-color:transparent;border-collapse:collapse;border-spacing:0;border:1px solid #bfbfbf;border-collapse:separate;*border-collapse:collapse;border-left:0;border-radius:4px;border-radius:var(--border-radius)}table td,table th{border-left:1px solid #bfbfbf;padding-left:2px;padding-right:2px}table thead:first-child tr:first-child th{border-top:0}table thead:first-child tr:first-child>th:first-child{border-top-left-radius:4px;border-top-left-radius:var(--border-radius)}table thead:first-child tr:first-child>th:last-child{border-top-right-radius:4px;border-top-right-radius:var(--border-radius)}table tbody:last-child tr:last-child>td:first-child{border-bottom-left-radius:4px;border-bottom-left-radius:var(--border-radius)}table tbody:last-child tr:last-child>td:last-child{border-bottom-right-radius:4px;border-bottom-right-radius:var(--border-radius)}table tbody>tr:nth-child(odd)>td{background-color:#ebebeb} +:root{--borderRadius:4px;--mutedTextColor:#696969}body,html{height:100%}body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}div#content{-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto}footer{-ms-flex-line-pack:center;align-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;border-top:1px solid rgba(0,0,0,.2);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-ms-flex-negative:0;flex-shrink:0;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;margin:15px 0 0;min-height:40px;padding:0 3px}footer div{margin:3px 0}footer div:first-child{margin-right:auto}footer div#fpowered{margin-left:auto;margin-right:unset}:lang(zh){font-family:Hiragino Sans GB,Microsoft YaHei,WenQuanYi Micro Hei,Helvetica,Arial,sans-serif}a{color:#3875d7}hr{border-width:3px}.top-menu li a{font-weight:700}#comment-message,#post-share-links:not(a){color:#6f6f6f;text-shadow:1px 1px 3px rgba(50,50,50,.15)}#post-share-links a{text-shadow:0 0}.comment-count{font-family:Trebuchet MS,Trebuchet,Lucida Sans Unicode,Lucida Grande,Lucida Sans,Arial,Sans-Serif;font-size:.9em}#comment_thread{padding-left:10px;padding-right:10px}table{table-layout:fixed;width:100%}td{vertical-align:top}@media (max-width:979px){.linenos{display:none!important}}.linenos{width:30px}.linenos div pre{text-align:right;overflow:hidden}pre{overflow:auto;white-space:pre;word-break:normal;word-wrap:normal}td.code .highlight pre{border-radius:0 4px 4px 0;border-radius:0 var(--borderRadius) var(--borderRadius) 0}td.code{width:100%}.linenodiv pre{background-color:#eee8d5;border-radius:4px 0 0 4px;border-radius:var(--borderRadius) 0 0 var(--borderRadius);color:#657b83}div.highlight{margin-bottom:20px}table.highlighttable,table.highlighttable td{border:none}table.highlighttable tbody>tr:nth-child(odd)>td{background-color:transparent}.list-of-tags,ul.list-projects{list-style:none;margin:0;overflow:hidden}.list-of-tags li{float:left;line-height:28px;margin:0}.list-of-tags a{background:#eee;border-radius:4px;border-radius:var(--borderRadius);color:#222;margin:2px;padding:3px 6px;text-decoration:none}.tags-in-article li{float:none;line-height:28px}.article-content,div.recent-posts p{text-align:justify}.article-content{max-width:50em}.article-content p{margin:0 0 20px}.article-content ul:not(.related-posts-list):not(.articles-timeline){font-size:inherit;list-style-type:disc}.article-content ul.related-posts-list{list-style-type:square}.article-content ol{font-size:inherit;list-style-type:decimal}.article-content li{line-height:1.7em;list-style-position:outside;margin:1px 0 1px 20px}.article-content dl{font-size:inherit;list-style-position:outside;list-style-type:decimal;margin:20px 0 20px 20px}.article-content dd{line-height:1.7em;margin:1px 0 1px 20px;padding:3px 0}.article-content dt{font-size:inherit}h1,h2,h3,h4,h5,h6{font-weight:400;margin:10px 0}.page-header{border-bottom:2px solid maroon;color:maroon;margin:10px 0 30px}.page-header h1{border:none;line-height:1em}ul.articles-timeline{list-style:none;margin:0;padding-bottom:30px}ul.articles-timeline .next-article{float:right;margin:0}ul.articles-timeline .previous-article{float:left;margin:0}ul.multi-parts-list a{color:#000}ul.multi-parts-list a:hover{text-decoration:none}ul.multi-parts-list li.active-part{font-style:italic}.table-of-content .toc ul{margin:0;padding:0 0 0 .2rem;list-style-type:none;list-style:symbols inside none}.table-of-content .toc>ul>li>ul{padding-left:1rem}.last-updated a{color:#333}.last-updated a:hover{text-decoration:none}.article-content img{border:2px solid #eee;padding:5px}p#post-share-links{text-align:right}a.category-title-inside-accordion{text-decoration:none}ul.list-articles-under-tag-category{list-style:none outside none;margin:0 0 0 5px}a.category-link{color:#333}a.category-link:hover{text-decoration:none}a.category-title-inside-accordion:hover,a:not(.collapsed).accordion-toggle.category-title-inside-accordion{background-color:#08c;border-radius:4px;border-radius:var(--borderRadius);color:#fff}div.blog-archives h2{float:left;position:relative;margin:0}.proj-desc{color:#696969;color:var(--mutedTextColor)}div.blog-archives div,div.recent-posts-article,ul.list-projects li{border-bottom:1px dotted #696969;border-bottom:1px dotted var(--mutedTextColor);overflow:auto;padding:.3rem .2rem}ul.list-articles-under-tag-category li{padding:.1rem .2rem}div.blog-archives div{margin-left:calc(1.725rem + 5.7vw)}@media (min-width:1200px){div.blog-archives div{margin-left:6rem}}div.blog-archives div.last-entry-of-year{margin-bottom:1em}div.blog-archives time,div.recent-posts time,ul.list-articles-under-tag-category li time{float:right;text-align:left}div.blog-archives time,div.recent-posts-posted,div.recent-posts time,ul.list-articles-under-tag-category li time{color:#696969;color:var(--mutedTextColor)}@media (max-width:767px){div.blog-archives h2{float:none}div.blog-archives div{margin-left:0}div.blog-archives article{margin-left:0;padding-left:0}div.blog-archives time,div.recent-posts time,ul.list-articles-under-tag-category li time{float:none;display:block}}#mc-embed-signup{font-family:inherit;font-size:inherit;margin:10px 0}#mc-embed-signup form{display:block;padding:0;position:relative;text-align:left}#mc-embed-signup input{-moz-appearance:none;-webkit-appearance:none;border:1px solid #999}#mc-embed-signup input:focus{border-color:#333}#mc-embed-signup input.email{display:block;font-size:.9em;margin:0 4% 10px 0;min-width:130px;padding:8px 0;text-indent:5px;width:100%}#mc-embed-signup input.button{display:block;margin:0 0 10px;min-width:130px;width:100%}#mc-embed-signup input[type=email]{height:100%}#mc-embed-signup .button{background-color:#eee;border-radius:4px;border-radius:var(--borderRadius);border:1px solid #d3d3d3;clear:both;color:#000;cursor:pointer;display:inline-block;font-size:1em;font-weight:400;height:32px;line-height:32px;margin:0 5px 10px 0;padding:0;text-align:center;text-decoration:none;vertical-align:top;white-space:nowrap;width:auto}#mc-embed-signup.button:hover{background-color:#dfdfdf}#mc-embed-signup .clear{clear:none;display:inline}#allposts{color:#696969;color:var(--mutedTextColor);float:right;font-size:75%;font-weight:400}a#allposts:hover{color:#333}.literal{background-color:#f7f7f9;border-radius:4px;border-radius:var(--borderRadius);border:1px solid #e1e1e8;color:#d14;padding:2px 4px;white-space:nowrap}div.line-block div.line-block{margin-left:1.5em}.amp{font-family:Warnock Pro,Goudy Old Style,Palatino,Book Antiqua,Serif;font-style:italic}.article-content img,div.figure{text-align:center}div.figure img{width:100%}div.figure p.caption{color:grey;font-size:.6em;margin:0}div.figure p.caption a{border:none;color:grey}.article-content img.align-right,div.figure.align-right{float:right;margin-left:1.5em}.article-content img.align-left,div.figure.align-left{float:left;margin-right:1.5em}.author-blurb{padding:5px 0}.author-blurb img{padding:0;width:32px;height:32px}.gist table{table-layout:auto}table{max-width:100%;background-color:transparent;border-collapse:collapse;border-spacing:0;border:1px solid #bfbfbf;border-collapse:separate;*border-collapse:collapse;border-left:0;border-radius:4px;border-radius:var(--borderRadius)}table td,table th{border-left:1px solid #bfbfbf;padding-left:2px;padding-right:2px}table thead:first-child tr:first-child th{border-top:0}table thead:first-child tr:first-child>th:first-child{border-top-left-radius:4px;border-top-left-radius:var(--borderRadius)}table thead:first-child tr:first-child>th:last-child{border-top-right-radius:4px;border-top-right-radius:var(--borderRadius)}table tbody:last-child tr:last-child>td:first-child{border-bottom-left-radius:4px;border-bottom-left-radius:var(--borderRadius)}table tbody:last-child tr:last-child>td:last-child{border-bottom-right-radius:4px;border-bottom-right-radius:var(--borderRadius)}table tbody>tr:nth-child(odd)>td{background-color:#ebebeb}.navbar .nav>li>a{float:none;padding:11px 15px 13px}.site-name{color:#696969;color:var(--mutedTextColor)} +div.photoswipe-gallery{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-ms-flex-line-pack:center;align-content:center}div.photoswipe-gallery figure{margin:0}div.photoswipe-gallery figure figcaption{display:none}div.photoswipe-gallery figure img{border:none;padding:.1rem;margin:0} article div.article-content ul:not(.articles-timeline):not(.related-posts-list) a,article ol a:not(.ampl),article p:not(#list-of-translations):not(#post-share-links) a:not(.ampl),blockquote a:not(.ampl){color:#000;display:inline-block;position:relative}article div.article-content ul:not(.articles-timeline):not(.related-posts-list) a:after,article ol a:not(.ampl):after,article p:not(#list-of-translations):not(#post-share-links) a:not(.ampl):after,blockquote a:not(.ampl):after{position:absolute;top:100%;left:0;width:100%;height:1px;background:silver;content:"";opacity:1;-webkit-transition:opacity .3s,-webkit-transform .3s;transition:opacity .3s,-webkit-transform .3s;transition:opacity .3s,transform .3s;transition:opacity .3s,transform .3s,-webkit-transform .3s;-webkit-transform:translateY(0);transform:translateY(0)}article div.article-content ul:not(.articles-timeline):not(.related-posts-list) a:hover,article ol a:not(.ampl):hover,article p:not(#list-of-translations):not(#post-share-links) a:not(.ampl):hover,blockquote a:not(.ampl):hover{color:#4169e1;text-decoration:none;-webkit-transition:color .1s;transition:color .1s}article div.article-content ul:not(.articles-timeline):not(.related-posts-list) a:hover:after,article ol a:not(.ampl):hover:after,article p:not(#list-of-translations):not(#post-share-links) a:not(.ampl):hover:after,blockquote a:not(.ampl):hover:after{opacity:0;-webkit-transform:translateY(5px);transform:translateY(5px)}article div.article-content ul:not(.articles-timeline):not(.related-posts-list) a:focus,article ol a:not(.ampl):focus,article p:not(#list-of-translations):not(#post-share-links) a:not(.ampl):focus,blockquote a:not(.ampl):focus{text-decoration:none}div.recent-posts-posted a{color:inherit;padding-left:.3em}div.recent-posts-posted a:hover{border-bottom:1px dashed;text-decoration:none}div.recent-posts-posted a:focus{text-decoration:none}a.ampl{color:#4169e1;display:inline-block;position:relative}a.ampl:focus,a.ampl:hover{text-decoration:none}a.ampl:hover{color:#1e90ff;-webkit-transition:color .1s;transition:color .1s}a.ampl:hover:after{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}a.ampl:after{position:absolute;top:100%;left:0;width:100%;height:2px;background:#1e90ff;content:"";opacity:0;-webkit-transition:opacity .3s,-webkit-transform .3s;transition:opacity .3s,-webkit-transform .3s;transition:opacity .3s,transform .3s;transition:opacity .3s,transform .3s,-webkit-transform .3s;-webkit-transform:translateY(5px);transform:translateY(5px)} dt:hover>a.headerlink,h1:hover>a.headerlink,h2:hover>a.headerlink,h3:hover>a.headerlink,h4:hover>a.headerlink,h5:hover>a.headerlink,h6:hover>a.headerlink{opacity:1;text-decoration:none;visibility:visible}a.headerlink{content:url('data:image/svg+xml;utf8,');display:inline-block;margin-left:5px;opacity:0;-webkit-transition:visibility 0s,opacity .2s ease-in;transition:visibility 0s,opacity .2s ease-in;visibility:hidden;width:20px} .highlight,pre{background-color:#fdf6e3;color:#586e75}.highlight .c{color:#93a1a1}.highlight .err,.highlight .g{color:#586e75}.highlight .k{color:#859900}.highlight .l,.highlight .n{color:#586e75}.highlight .o{color:#859900}.highlight .x{color:#cb4b16}.highlight .p{color:#586e75}.highlight .cm{color:#93a1a1}.highlight .cp{color:#859900}.highlight .c1{color:#93a1a1}.highlight .cs{color:#859900}.highlight .gd{color:#2aa198}.highlight .ge{color:#586e75;font-style:italic}.highlight .gr{color:#dc322f}.highlight .gh{color:#cb4b16}.highlight .gi{color:#859900}.highlight .go,.highlight .gp{color:#586e75}.highlight .gs{color:#586e75;font-weight:700}.highlight .gu{color:#cb4b16}.highlight .gt{color:#586e75}.highlight .kc{color:#cb4b16}.highlight .kd{color:#268bd2}.highlight .kn,.highlight .kp{color:#859900}.highlight .kr{color:#268bd2}.highlight .kt{color:#dc322f}.highlight .ld{color:#586e75}.highlight .m,.highlight .s{color:#2aa198}.highlight .na{color:#586e75}.highlight .nb{color:#b58900}.highlight .nc{color:#268bd2}.highlight .no{color:#cb4b16}.highlight .nd{color:#268bd2}.highlight .ne,.highlight .ni{color:#cb4b16}.highlight .nf{color:#268bd2}.highlight .nl,.highlight .nn,.highlight .nx,.highlight .py{color:#586e75}.highlight .nt,.highlight .nv{color:#268bd2}.highlight .ow{color:#859900}.highlight .w{color:#586e75}.highlight .mf,.highlight .mh,.highlight .mi,.highlight .mo{color:#2aa198}.highlight .sb{color:#93a1a1}.highlight .sc{color:#2aa198}.highlight .sd{color:#586e75}.highlight .s2{color:#2aa198}.highlight .se{color:#cb4b16}.highlight .sh{color:#586e75}.highlight .si,.highlight .sx{color:#2aa198}.highlight .sr{color:#dc322f}.highlight .s1,.highlight .ss{color:#2aa198}.highlight .bp,.highlight .vc,.highlight .vg,.highlight .vi{color:#268bd2}.highlight .il{color:#2aa198} div#sidebar-social-link a svg{-webkit-filter:saturate(0) brightness(.7);filter:saturate(0) brightness(.7);height:20px;width:20px;margin-right:3px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out;z-index:0;position:relative}div#sidebar-social-link a{text-decoration:none}div#sidebar-social-link a svg:hover{-webkit-filter:none;filter:none;-webkit-transform:scale(2.5);transform:scale(2.5);z-index:1} section#article-sidebar{float:right;font-size:.9em} -:root{--heading-border-bottom-width:1px;--heading-border-bottom-style:solid;--heading-others-line-height:1.3rem;--heading-others-h4-font-size:1.1rem}h1,h2,h3,h4,h5,h6{font-family:Baskerville,Garamond,Georgia,"DejaVu Serif",Times New Roman,Times,Serif;font-weight:400;margin:10px 0;text-align:left}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{font-style:italic}h1{font-size:2.5rem}h2{font-size:2.2rem}h3{font-size:2rem}h4{font-size:1.8rem}h5{font-size:1.6rem}h6{font-size:1.4rem}h1,h2,h3{line-height:1.3em;border-bottom:1px solid #d3d3d3;border-bottom:var(--heading-border-bottom-width) var(--heading-border-bottom-style) #d3d3d3}h1 code,h2 code,h3 code{font-size:80%}h1 small,h2 small,h3 small{font-size:70%}h4,h5,h6{line-height:1.1em}h4 code,h4 small,h5 code,h5 small,h6 code,h6 small{font-size:80%}h1 a,h1 a:hover,h1 small,h2 a,h2 a:hover,h2 small,h3 a,h3 a:hover,h3 small,h4 a,h4 a:hover,h4 small,h5 a,h5 a:hover,h5 small,h6 a,h6 a:hover,h6 small{color:inherit;text-decoration:none}small.subtitle{font-style:italic}div.blog-archives h2,h1#my-projects,h1#recent-posts{border:none}h1#my-projects,h1#recent-posts{font-size:2.4rem;line-height:1.3rem;line-height:var(--heading-others-line-height)}nav h4,section#article-sidebar h4{font-size:1.1rem;font-size:var(--heading-others-h4-font-size);line-height:1.3rem;line-height:var(--heading-others-line-height)} \ No newline at end of file +@font-face{font-family:"PT Serif";font-style:italic;font-weight:400;src:local("PT Serif Italic"),local(PTSerif-Italic),url(//fonts.gstatic.com/s/ptserif/v11/EJRTQgYoZZY2vCFuvAFT_rO1dg.eot#) format("eot"),url(//fonts.gstatic.com/s/ptserif/v11/EJRTQgYoZZY2vCFuvAFT_r21cg.woff2) format("woff2"),url(//fonts.gstatic.com/s/ptserif/v11/EJRTQgYoZZY2vCFuvAFT_rO1dA.woff) format("woff")}@font-face{font-family:"PT Serif";font-style:italic;font-weight:700;src:local("PT Serif Bold Italic"),local(PTSerif-BoldItalic),url(//fonts.gstatic.com/s/ptserif/v11/EJRQQgYoZZY2vCFuvAFT9gaQZyffpA.eot#) format("eot"),url(//fonts.gstatic.com/s/ptserif/v11/EJRQQgYoZZY2vCFuvAFT9gaQZynfoA.woff2) format("woff2"),url(//fonts.gstatic.com/s/ptserif/v11/EJRQQgYoZZY2vCFuvAFT9gaQZyffpg.woff) format("woff")}@font-face{font-family:"PT Serif";font-style:normal;font-weight:400;src:local("PT Serif"),local(PTSerif-Regular),url(//fonts.gstatic.com/s/ptserif/v11/EJRVQgYoZZY2vCFuvAFYzrs.eot#) format("eot"),url(//fonts.gstatic.com/s/ptserif/v11/EJRVQgYoZZY2vCFuvAFWzr8.woff2) format("woff2"),url(//fonts.gstatic.com/s/ptserif/v11/EJRVQgYoZZY2vCFuvAFYzrk.woff) format("woff")}@font-face{font-family:"PT Serif";font-style:normal;font-weight:700;src:local("PT Serif Bold"),local(PTSerif-Bold),url(//fonts.gstatic.com/s/ptserif/v11/EJRSQgYoZZY2vCFuvAnt66qcVy8.eot#) format("eot"),url(//fonts.gstatic.com/s/ptserif/v11/EJRSQgYoZZY2vCFuvAnt66qSVys.woff2) format("woff2"),url(//fonts.gstatic.com/s/ptserif/v11/EJRSQgYoZZY2vCFuvAnt66qcVy0.woff) format("woff")}@font-face{font-family:PT Mono;font-style:normal;font-weight:400;src:local("PT Mono"),local(PTMono-Regular),url(//fonts.gstatic.com/s/ptmono/v7/9oRONYoBnWILk-9AnCEzNw.eot#) format("eot"),url(//fonts.gstatic.com/s/ptmono/v7/9oRONYoBnWILk-9AnC8zMw.woff2) format("woff2"),url(//fonts.gstatic.com/s/ptmono/v7/9oRONYoBnWILk-9AnCEzNQ.woff) format("woff")}@font-face{font-family:"PT Serif Caption";font-style:italic;font-weight:400;src:local("PT Serif Caption Italic"),local(PTSerif-CaptionItalic),url(//fonts.gstatic.com/s/ptserifcaption/v11/ieVj2ZhbGCW-JoW6S34pSDpqYKU019eLAQM5.eot#) format("eot"),url(//fonts.gstatic.com/s/ptserifcaption/v11/ieVj2ZhbGCW-JoW6S34pSDpqYKU019eLDwM9.woff2) format("woff2"),url(//fonts.gstatic.com/s/ptserifcaption/v11/ieVj2ZhbGCW-JoW6S34pSDpqYKU019eLAQM7.woff) format("woff")}@font-face{font-family:"PT Serif Caption";font-style:normal;font-weight:400;src:local("PT Serif Caption"),local(PTSerif-Caption),url(//fonts.gstatic.com/s/ptserifcaption/v11/ieVl2ZhbGCW-JoW6S34pSDpqYKU019y7CQ.eot#) format("eot"),url(//fonts.gstatic.com/s/ptserifcaption/v11/ieVl2ZhbGCW-JoW6S34pSDpqYKU019K7DQ.woff2) format("woff2"),url(//fonts.gstatic.com/s/ptserifcaption/v11/ieVl2ZhbGCW-JoW6S34pSDpqYKU019y7Cw.woff) format("woff")}@font-face{font-family:PT Sans;font-style:italic;font-weight:400;src:local("PT Sans Italic"),local(PTSans-Italic),url(//fonts.gstatic.com/s/ptsans/v11/jizYRExUiTo99u79D0e0ycmM.eot#) format("eot"),url(//fonts.gstatic.com/s/ptsans/v11/jizYRExUiTo99u79D0e0x8mI.woff2) format("woff2"),url(//fonts.gstatic.com/s/ptsans/v11/jizYRExUiTo99u79D0e0ycmO.woff) format("woff")}@font-face{font-family:PT Sans;font-style:italic;font-weight:700;src:local("PT Sans Bold Italic"),local(PTSans-BoldItalic),url(//fonts.gstatic.com/s/ptsans/v11/jizdRExUiTo99u79D0e8fOydIRUZ.eot#) format("eot"),url(//fonts.gstatic.com/s/ptsans/v11/jizdRExUiTo99u79D0e8fOydLxUd.woff2) format("woff2"),url(//fonts.gstatic.com/s/ptsans/v11/jizdRExUiTo99u79D0e8fOydIRUb.woff) format("woff")}@font-face{font-family:PT Sans;font-style:normal;font-weight:400;src:local("PT Sans"),local(PTSans-Regular),url(//fonts.gstatic.com/s/ptsans/v11/jizaRExUiTo99u79D0yEwQ.eot#) format("eot"),url(//fonts.gstatic.com/s/ptsans/v11/jizaRExUiTo99u79D0KExQ.woff2) format("woff2"),url(//fonts.gstatic.com/s/ptsans/v11/jizaRExUiTo99u79D0yEww.woff) format("woff")}@font-face{font-family:PT Sans;font-style:normal;font-weight:700;src:local("PT Sans Bold"),local(PTSans-Bold),url(//fonts.gstatic.com/s/ptsans/v11/jizfRExUiTo99u79B_mh0OCtKQ.eot#) format("eot"),url(//fonts.gstatic.com/s/ptsans/v11/jizfRExUiTo99u79B_mh0O6tLQ.woff2) format("woff2"),url(//fonts.gstatic.com/s/ptsans/v11/jizfRExUiTo99u79B_mh0OCtKw.woff) format("woff")}:root{--headingBorderBottomWidth:1px;--headingBorderBottomStyle:solid;--headingOthersLineHeight:1.3rem;--headingOthersH4FontSize:1.1rem;--sansFontFamily:"PT Sans","Helvetica Neue",Helvetica,Arial,sans-serif;--monoFontFamily:"PT Mono",Monaco,Menlo,Consolas,"Courier New",monospace;--serifFontFamily:"PT Serif",Georgia,"Times New Roman",Times,serif;--serifHeadingFontFamily:"PT Serif Caption",Baskerville,Garamond,Georgia,"DejaVu Serif","Times New Roman",Times,serif}body{margin:0;font-family:PT Sans,Helvetica Neue,Helvetica,Arial,sans-serif;font-family:var(--sansFontFamily)}.page-header,h1,h2,h3,h4,h5,h6{font-weight:400;text-align:left}.page-header small,h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{font-style:italic}header.page-header h1{font-family:"PT Serif Caption",Baskerville,Garamond,Georgia,"DejaVu Serif",Times New Roman,Times,serif;font-family:var(--serifHeadingFontFamily)}.list-of-tags,.tag-title,a.category-title-inside-accordion,h1,h2,h3,h4,h5,h6,ul.list-articles-under-tag-category li time{font-family:PT Sans,Helvetica Neue,Helvetica,Arial,sans-serif;font-family:var(--sansFontFamily)}h1{font-size:calc(1.365rem + 1.38vw)}@media (min-width:1200px){h1{font-size:2.4rem}}h2{font-size:calc(1.345rem + 1.14vw)}@media (min-width:1200px){h2{font-size:2.2rem}}h3{font-size:calc(1.325rem + .9vw)}@media (min-width:1200px){h3{font-size:2rem}}h4{font-size:calc(1.305rem + .66vw)}@media (min-width:1200px){h4{font-size:1.8rem}}h5{font-size:calc(1.285rem + .42vw)}@media (min-width:1200px){h5{font-size:1.6rem}}h6{font-size:calc(1.265rem + .18vw)}@media (min-width:1200px){h6{font-size:1.4rem}}h1,h2,h3{line-height:1.3em;border-bottom:1px solid #d3d3d3;border-bottom:var(--headingBorderBottomWidth) var(--headingBorderBottomStyle) #d3d3d3}h1 code,h2 code,h3 code{font-size:80%}h1 small,h2 small,h3 small{font-size:70%}h4,h5,h6{line-height:1.1em}h4 code,h4 small,h5 code,h5 small,h6 code,h6 small{font-size:80%}h1 a,h1 a:hover,h1 small,h2 a,h2 a:hover,h2 small,h3 a,h3 a:hover,h3 small,h4 a,h4 a:hover,h4 small,h5 a,h5 a:hover,h5 small,h6 a,h6 a:hover,h6 small{color:inherit;text-decoration:none}small.subtitle{font-style:italic}div.blog-archives h2,h1#my-projects,h1#recent-posts{border:none}h1#recent-posts,nav h4,section#article-sidebar h4{line-height:1.3rem;line-height:var(--headingOthersLineHeight)}nav h4,section#article-sidebar h4{font-size:1.1rem;font-size:var(--headingOthersH4FontSize)}.literal,.site-name,code,pre{font-family:PT Mono,Monaco,Menlo,Consolas,Courier New,monospace;font-family:var(--monoFontFamily)}.literal,code,pre{font-size:.9rem}.brand .site-name{font-size:calc(1.275rem + .3vw);vertical-align:middle}@media (min-width:1200px){.brand .site-name{font-size:1.5rem}}.article-content,div.recent-posts p{font-size:1.125rem;font-family:"PT Serif",Georgia,Times New Roman,Times,serif;font-family:var(--serifFontFamily);font-weight:400;line-height:1.6;text-transform:none}blockquote p{font-family:PT Sans,Helvetica Neue,Helvetica,Arial,sans-serif;font-family:var(--sansFontFamily);font-weight:400}a.category-title-inside-accordion{font-size:1.1rem}.author-name{font-weight:700;font-feature-settings:"c2sc";font-variant:small-caps}.author-blurb{font-style:italic}div.blog-archives div,div.recent-posts-article,ul.list-articles-under-tag-category li,ul.list-projects li{font-family:PT Sans,Helvetica Neue,Helvetica,Arial,sans-serif;font-family:var(--sansFontFamily);font-size:.963rem}.proj-desc,.table-of-content .toc,div.blog-archives time,div.recent-posts-posted,div.recent-posts time,footer,ul.list-articles-under-tag-category li time{font-family:PT Sans,Helvetica Neue,Helvetica,Arial,sans-serif;font-family:var(--sansFontFamily);font-size:.8rem}span.superscript{font-size:.67rem;vertical-align:super}.navbar .nav>li>a{font-size:1rem} \ No newline at end of file diff --git a/static/css/gallery.css b/static/css/gallery.css new file mode 100644 index 00000000..77f27c91 --- /dev/null +++ b/static/css/gallery.css @@ -0,0 +1,20 @@ +div.photoswipe-gallery { + display: flex; + flex-wrap: wrap; + flex-direction: row; + justify-content: center; + align-items: center; + align-content: center; + + & figure { + margin: 0; + & figcaption { + display: none; + } + & img { + border: none; + padding: rfs(0.1rem); + margin: 0; + } + } +} diff --git a/static/css/preloader.gif b/static/css/preloader.gif new file mode 100644 index 00000000..b8faa697 Binary files /dev/null and b/static/css/preloader.gif differ diff --git a/static/js/elegant.prod.js b/static/js/elegant.prod.js index 12da0618..ff1a8496 100644 --- a/static/js/elegant.prod.js +++ b/static/js/elegant.prod.js @@ -1,9 +1,4322 @@ -var tipuesearch_stop_words=["a","above","after","again","against","all","am","an","and","any","are","aren't","as","at","be","because","been","before","being","below","between","both","but","by","can't","cannot","could","couldn't","did","didn't","do","does","doesn't","doing","don't","down","during","each","few","for","from","further","had","hadn't","has","hasn't","have","haven't","having","he","he'd","he'll","he's","her","here","here's","hers","herself","him","himself","his","how","how's","i","i'd","i'll","i'm","i've","if","in","into","is","isn't","it","it's","its","itself","let's","me","more","most","mustn't","my","myself","no","nor","not","of","off","on","once","only","or","other","ought","our","ours","ourselves","out","over","own","same","shan't","she","she'd","she'll","she's","should","shouldn't","so","some","such","than","that","that's","the","their","theirs","them","themselves","then","there","there's","these","they","they'd","they'll","they're","they've","this","those","through","to","too","under","until","up","very","was","wasn't","we","we'd","we'll","we're","we've","were","weren't","what","what's","when","when's","where","where's","which","while","who","who's","whom","why","why's","with","won't","would","wouldn't","you","you'd","you'll","you're","you've","your","yours","yourself","yourselves"],tipuesearch_replace={words:[{word:"tip",replace_with:"tipue"},{word:"javscript",replace_with:"javascript"},{word:"jqeury",replace_with:"jquery"}]},tipuesearch_weight={weight:[{url:"http://www.tipue.com",score:60},{url:"http://www.tipue.com/search",score:60},{url:"http://www.tipue.com/tipr",score:30},{url:"http://www.tipue.com/support",score:20}]},tipuesearch_stem={words:[{word:"e-mail",stem:"email"},{word:"javascript",stem:"jquery"},{word:"javascript",stem:"js"}]},tipuesearch_related={Related:[{search:"tipue",related:"Search",include:1},{search:"tipue",related:"jQuery"},{search:"tipue",related:"Blog"},{search:"tipue",related:"Support"},{search:"tipue search",related:"Demo",include:1},{search:"tipue search",related:"Support"}]},tipuesearch_string_1="No title",tipuesearch_string_2="Showing results for",tipuesearch_string_3="Search instead for",tipuesearch_string_4="1 result",tipuesearch_string_5="results",tipuesearch_string_6="<",tipuesearch_string_7=">",tipuesearch_string_8="Nothing found.",tipuesearch_string_9="Common words are largely ignored.",tipuesearch_string_10="Related",tipuesearch_string_11="Search should be one character or more.",tipuesearch_string_12="Search should be",tipuesearch_string_13="characters or more.",tipuesearch_string_14="seconds",tipuesearch_string_15="Open Image",tipuesearch_string_16="Goto Page",startTimer=(new Date).getTime();!function(e){e.fn.tipuesearch=function(t){var n=e.extend({contextBuffer:60,contextLength:60,contextStart:90,debug:!1,descriptiveWords:25,footerPages:3,highlightTerms:!0,imageZoom:!0,minimumLength:3,newWindow:!1,show:10,showContext:!0,showRelated:!0,showTime:!0,showTitleCount:!0,showURL:!0,wholeWords:!0},t);return this.each((function(){var t=0,i="";function o(e){var t=location.search,n=(new RegExp("[?|&]"+e+"=([^&;]+?)(&|#|;|$)").exec(t)||[,""])[1].replace(/\+/g,"%20");try{n=decodeURIComponent(n)}catch(e){n=unescape(n)}return n||null}function r(o,a){window.scrollTo(0,0);var l="",s=!1,c=!1,u=!0,p=0,d=[],m=e("#tipue_search_input").val();m=m.replace(/\+/g," ").replace(/\s\s+/g," ");var h=(m=e.trim(m)).toLowerCase();(h.match('^"')&&h.match('"$')||h.match("^'")&&h.match("'$"))&&(u=!1);var f=h.split(" ");if(u){h="";for(var g=0;g=n.minimumLength){if(u){if(a){var y=h;for(g=0;g'+tipuesearch_string_4;else l+='
'+p.toString().replace(/\B(?=(\d{3})+(?!\d))/g,",")+" "+tipuesearch_string_5;if(n.showTime)l+=" ("+(((new Date).getTime()-startTimer)/1e3).toFixed(2)+" "+tipuesearch_string_14+")",n.showTime=!1;if(l+="
",n.showRelated&&u){var E="";w=0;for(g=0;g'+tipuesearch_string_10+": "),s&&(m=h),tipuesearch_related.Related[g].include)var M=m+" "+tipuesearch_related.Related[g].related;else M=tipuesearch_related.Related[g].related;E+='
'+tipuesearch_related.Related[g].related+", ",w++}w&&(E=E.slice(0,-2),l+=E+=".")}s&&(l+='
'+tipuesearch_string_2+" "+h+". "+tipuesearch_string_3+' '+y+"
"),d.sort((function(e,t){return t.score-e.score}));var I=0;n.imageZoom&&(l+='
');for(g=0;g=o&&I',l+='",n.debug&&(l+='
Score: '+d[g].score+"
"),n.showURL){var A=d[g].url.toLowerCase();0==A.indexOf("http://")&&(A=A.slice(7)),l+='"}if(d[g].img&&(n.imageZoom?l+='
'+d[g].title+'
':l+='
'+d[g].title+'
'),d[g].desc){var O=d[g].desc;if(n.showContext){f=h.split(" ");var S=d[g].desc.toLowerCase().indexOf(f[0]);if(S>n.contextStart){var D=O.substr(S-n.contextBuffer),k=D.indexOf(" ");D=O.substr(S-n.contextBuffer+k),(D=e.trim(D)).length>n.contextLength&&(O="... "+D)}}if(u){f=h.split(" ");for(w=0;w$1")}}else if(n.highlightTerms){H=new RegExp("("+h+")","gi");O=O.replace(H,'$1')}var R="",F=O.split(" ");if(F.length"}d[g].note&&(l+='
'+d[g].note+"
"),l+=""}I++}if(p>n.show){var P=Math.ceil(p/n.show),N=o/n.show;if(n.footerPages<3&&(n.footerPages=3),l+='
"}}else l+='
'+tipuesearch_string_8+"
"}else c?l+='
'+tipuesearch_string_8+" "+tipuesearch_string_9+"
":1==n.minimumLength?l+='
'+tipuesearch_string_11+"
":l+='
'+tipuesearch_string_12+" "+n.minimumLength+" "+tipuesearch_string_13+"
";e("#tipue_search_content").hide().html(l).slideDown(200),e("#tipue_search_replaced").click((function(){r(0,!1)})),e(".tipue_search_related_btn").click((function(){e("#tipue_search_input").val(e(this).attr("id")),r(0,!0)})),e(".tipue_search_image_zoom").click((function(){e("#tipue_search_image_modal").fadeIn(300),e("#tipue_search_zoom_img").attr("src",this.src);var t=e(this).attr("data-url");e("#tipue_search_zoom_url").attr("href",t);var n=this.alt+'";e("#tipue_search_zoom_text").html(n)})),e(".tipue_search_image_close").click((function(){e("#tipue_search_image_modal").fadeOut(300)})),e(".tipue_search_foot_box").click((function(){var t=e(this).attr("id").split("_");r(parseInt(t[0]),t[1])}))}n.newWindow&&(i=' target="_blank"'),o("q")&&(e("#tipue_search_input").val(o("q")),r(0,!0)),e(this).keyup((function(e){"13"==e.keyCode&&r(0,!0)}))}))}}(jQuery),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t():"function"==typeof define&&define.amd?define(t):t()}(0,(function(){"use strict";var e="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},t=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},n=function(){function e(e,t){for(var n=0;n>0),v="addEventListener",w="attached",y="Callback",b="detached",_="extends",x="attributeChanged"+y,C="connected"+y,T="disconnected"+y,L="created"+y,E="ADDITION",M="REMOVAL",I="DOMAttrModified",A="DOMContentLoaded",O="<",S="=",D=/^[A-Z][A-Z0-9]*(?:-[A-Z0-9]+)+$/,k=["ANNOTATION-XML","COLOR-PROFILE","FONT-FACE","FONT-FACE-SRC","FONT-FACE-URI","FONT-FACE-FORMAT","FONT-FACE-NAME","MISSING-GLYPH"],H=[],R=[],F="",P=i.documentElement,N=H.indexOf||function(e){for(var t=this.length;t--&&this[t]!==e;);return t},z=o.prototype,Z=z.hasOwnProperty,U=z.isPrototypeOf,B=o.defineProperty,K=[],W=o.getOwnPropertyDescriptor,V=o.getOwnPropertyNames,q=o.getPrototypeOf,j=o.setPrototypeOf,G=!!o.__proto__,Y="__dreCEv1",X=t.customElements,$=!/^force/.test(n.type)&&!!(X&&X.define&&X.get&&X.whenDefined),Q=o.create||o,J=t.Map||function(){var e,t=[],n=[];return{get:function(e){return n[N.call(t,e)]},set:function(i,o){(e=N.call(t,i))<0?n[t.push(i)-1]=o:n[e]=o}}},ee=t.Promise||function(e){var t=[],n=!1,i={catch:function(){return i},then:function(e){return t.push(e),n&&setTimeout(o,1),i}};function o(e){for(n=!0;t.length;)t.shift()(e)}return e(o),i},te=!1,ne=Q(null),ie=Q(null),oe=new J,re=function(e){return e.toLowerCase()},ae=o.create||function e(t){return t?(e.prototype=t,new e):this},le=j||(G?function(e,t){return e.__proto__=t,e}:V&&W?function(){function e(e,t){for(var n,i=V(t),o=0,r=i.length;o1)&&Ge(this)}}}),pe(a,x,{value:function(e){-1
",new se((function(e,t){if(e[0]&&"childList"==e[0].type&&!e[0].removedNodes[0].childNodes.length){var n=(h=W(ce,"innerHTML"))&&h.set;n&&B(ce,"innerHTML",{set:function(e){for(;this.lastChild;)this.removeChild(this.lastChild);n.call(this,e)}})}t.disconnect(),h=null})).observe(h,{childList:!0,subtree:!0}),h.innerHTML=""),Ee||(j||G?(d=function(e,t){U.call(t,e)||Ue(e,t)},m=Ue):m=d=function(e,t){e[g]||(e[g]=o(!0),Ue(e,t))},ue?(Ae=!1,function(){var e=W(ce,v),t=e.value,n=function(e){var t=new CustomEvent(I,{bubbles:!0});t.attrName=e,t.prevValue=ve.call(this,e),t.newValue=null,t[M]=t.attrChange=2,ye.call(this,e),ge.call(this,t)},i=function(e,t){var n=we.call(this,e),i=n&&ve.call(this,e),o=new CustomEvent(I,{bubbles:!0});be.call(this,e,t),o.attrName=e,o.prevValue=n?i:null,o.newValue=t,n?o.MODIFICATION=o.attrChange=1:o[E]=o.attrChange=0,ge.call(this,o)},o=function(e){var t,n=e.currentTarget,i=n[g],o=e.propertyName;i.hasOwnProperty(o)&&(i=i[o],(t=new CustomEvent(I,{bubbles:!0})).attrName=i.name,t.prevValue=i.value||null,t.newValue=i.value=n[o]||null,null==t.prevValue?t[E]=t.attrChange=0:t.MODIFICATION=t.attrChange=1,ge.call(n,t))};e.value=function(e,r,a){e===I&&this[x]&&this.setAttribute!==i&&(this[g]={className:{name:"class",value:this.className}},this.setAttribute=i,this.removeAttribute=n,t.call(this,"propertychange",o)),t.call(this,e,r,a)},B(ce,v,e)}()):se||(P[v](I,Te),P.setAttribute(g,1),P.removeAttribute(g),Ae&&(l=function(e){var t,n,i;if(this===e.target){for(i in t=this[g],this[g]=n=c(this),n){if(!(i in t))return s(0,this,i,t[i],n[i],E);if(n[i]!==t[i])return s(1,this,i,t[i],n[i],"MODIFICATION")}for(i in t)if(!(i in n))return s(2,this,i,t[i],n[i],M)}},s=function(e,t,n,i,o,r){var a={attrChange:e,currentTarget:t,attrName:n,prevValue:i,newValue:o};a[r]=e,Pe(a)},c=function(e){for(var t,n,i={},o=e.attributes,r=0,a=o.length;r\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n '+(5,new Array(5).fill(void 0)).map((function(e){return''})).join("")+"\n \n \n \n ",this._styleRootElement=this.querySelector(".style-root"),this._countElement=this.querySelector(".count"),this._updateRootColor(),this._totalClaps=0;var t,n,i,o,a=void 0;this._initialClapCount=new Promise((function(e){return a=e})),this._bufferedClaps=0,this._updateClaps=(t=function(){if(e._totalClaps<10){var t=Math.min(e._bufferedClaps,10-e._totalClaps);n=e.api,i=t,o=e.url,fetch(n+"/update-claps"+(o?"?url="+o:""),{method:"POST",headers:{"Content-Type":"text/plain"},body:JSON.stringify(i+",3.3.0")}).then((function(e){return e.text()})),e._totalClaps+=t,e._bufferedClaps=0}var n,i,o},2e3,n=null,function(){var e=this,i=arguments;clearTimeout(n),n=setTimeout((function(){return t.apply(e,i)}),2e3)}),this.addEventListener("mousedown",(function(t){if(0===t.button&&(e.classList.add("clapped"),!e.classList.contains("clap-limit-exceeded"))){var n,i,o=Number(e._countElement.innerHTML.replace(",",""))+1;e.dispatchEvent(new CustomEvent("clapped",{bubbles:!0,detail:{clapCount:o}})),i="clap",(n=e).classList.remove(i),setTimeout((function(){n.classList.add(i)}),100),setTimeout((function(){n.classList.remove(i)}),1e3),e._bufferedClaps++,e._updateClaps(),setTimeout((function(){e._countElement.innerHTML=r(o)}),250),e.multiclap?e._bufferedClaps+e._totalClaps>=10&&e.classList.add("clap-limit-exceeded"):e.classList.add("clap-limit-exceeded")}})),(i=this.api,o=this.url,fetch(i+"/get-claps"+(o?"?url="+o:""),{headers:{"Content-Type":"text/plain"}}).then((function(e){return e.text()}))).then((function(t){e.classList.remove("loading");var n=Number(t);a(n),n>0&&(e._countElement.innerHTML=r(n))})),this._connected=!0}}},{key:"attributeChangedCallback",value:function(e,t,n){this._updateRootColor()}},{key:"_updateRootColor",value:function(){if(this._styleRootElement){var e=this.getAttribute("color")||"green",t=this._styleRootElement.style;t.fill=e,t.stroke=e,t.color=e}}},{key:"initialClapCount",get:function(){return this._initialClapCount}},{key:"color",get:function(){return this.getAttribute("color")},set:function(e){e?this.setAttribute("color",e):this.removeAttribute("color"),this._updateRootColor()}},{key:"api",set:function(e){e?this.setAttribute("api",e):this.removeAttribute("api")},get:function(){return this.getAttribute("api")||"https://api.applause-button.com"}},{key:"url",set:function(e){e?this.setAttribute("url",e):this.removeAttribute("url"),this._updateRootColor()},get:function(){return this.getAttribute("url")}},{key:"multiclap",get:function(){return"true"===this.getAttribute("multiclap")},set:function(e){e?this.setAttribute("multiclap",e?"true":"false"):this.removeAttribute("multiclap")}}],[{key:"observedAttributes",get:function(){return["color"]}}]),l}();customElements.define("applause-button",l)})), -/*! PhotoSwipe - v4.1.3 - 2019-01-08 -* http://photoswipe.com -* Copyright (c) 2019 Dmitry Semenov; */ -function(e,t){"function"==typeof define&&define.amd?define(t):"object"==typeof exports?module.exports=t():e.PhotoSwipe=t()}(this,(function(){"use strict";return function(e,t,n,i){var o={features:null,bind:function(e,t,n,i){var o=(i?"remove":"add")+"EventListener";t=t.split(" ");for(var r=0;r0&&(r=parseInt(r[1],10))>=1&&r<8&&(n.isOldIOSPhone=!0)}var a=i.match(/Android\s([0-9\.]*)/),l=a?a[1]:0;(l=parseFloat(l))>=1&&(l<4.4&&(n.isOldAndroid=!0),n.androidVersion=l),n.isMobileOpera=/opera mini|opera mobi/i.test(i)}for(var s,c,u=["transform","perspective","animationName"],p=["","webkit","Moz","ms","O"],d=0;d<4;d++){t=p[d];for(var m=0;m<3;m++)s=u[m],c=t+(t?s.charAt(0).toUpperCase()+s.slice(1):s),!n[s]&&c in e&&(n[s]=c);t&&!n.raf&&(t=t.toLowerCase(),n.raf=window[t+"RequestAnimationFrame"],n.raf&&(n.caf=window[t+"CancelAnimationFrame"]||window[t+"CancelRequestAnimationFrame"]))}if(!n.raf){var h=0;n.raf=function(e){var t=(new Date).getTime(),n=Math.max(0,16-(t-h)),i=window.setTimeout((function(){e(t+n)}),n);return h=t+n,i},n.caf=function(e){clearTimeout(e)}}return n.svg=!!document.createElementNS&&!!document.createElementNS("http://www.w3.org/2000/svg","svg").createSVGRect,o.features=n,n}};o.detectFeatures(),o.features.oldIE&&(o.bind=function(e,t,n,i){t=t.split(" ");for(var o,r=(i?"detach":"attach")+"Event",a=function(){n.handleEvent.call(n)},l=0;lt-1?e-t:e<0?t+e:e},Ce={},Te=function(e,t){return Ce[e]||(Ce[e]=[]),Ce[e].push(t)},Le=function(e){var t=Ce[e];if(t){var n=Array.prototype.slice.call(arguments);n.shift();for(var i=0;ir.currItem.fitRatio?be||(Xt(r.currItem,!1,!0),be=!0):be&&(Xt(r.currItem),be=!1)),Ie(te,pe.x,pe.y,g))},Oe=function(e){e.container&&Ie(e.container.style,e.initialPosition.x,e.initialPosition.y,e.initialZoomLevel,e)},Se=function(e,t){t[I]=w+e+"px, 0px"+y},De=function(e,t){if(!a.loop&&t){var n=u+(fe.x*me-e)/fe.x,i=Math.round(e-ut.x);(n<0&&i>0||n>=Ut()-1&&i<0)&&(e=ut.x+i*a.mainScrollEndFriction)}ut.x=e,Se(e,p)},ke=function(e,t){var n=pt[e]-he[e];return ue[e]+ce[e]+n-n*(t/v)},He=function(e,t){e.x=t.x,e.y=t.y,t.id&&(e.id=t.id)},Re=function(e){e.x=Math.round(e.x),e.y=Math.round(e.y)},Fe=null,Pe=function(){Fe&&(o.unbind(document,"mousemove",Pe),o.addClass(e,"pswp--has_mouse"),a.mouseUsed=!0,Le("mouseUsed")),Fe=setTimeout((function(){Fe=null}),100)},Ne=function(e,t){var n=qt(r.currItem,de,e);return t&&(ee=n),n},ze=function(e){return e||(e=r.currItem),e.initialZoomLevel},Ze=function(e){return e||(e=r.currItem),e.w>0?a.maxSpreadZoom:1},Ue=function(e,t,n,i){return i===r.currItem.initialZoomLevel?(n[e]=r.currItem.initialPosition[e],!0):(n[e]=ke(e,i),n[e]>t.min[e]?(n[e]=t.min[e],!0):n[e]=i)return je(e),r(n),void(a&&a());r((n-t)*o(l/i)+t),Ve[e].raf=S(c)}};c()},$e={shout:Le,listen:Te,viewportSize:de,options:a,isMainScrollAnimating:function(){return ne},getZoomLevel:function(){return g},getCurrentIndex:function(){return u},isDragging:function(){return V},isZooming:function(){return Q},setScrollOffset:function(e,t){he.x=e,F=he.y=t,Le("updateScrollOffset",he)},applyZoomPan:function(e,t,n,i){pe.x=t,pe.y=n,g=e,Ae(i)},init:function(){if(!l&&!s){var n;r.framework=o,r.template=e,r.bg=o.getChildByClass(e,"pswp__bg"),k=e.className,l=!0,P=o.detectFeatures(),S=P.raf,D=P.caf,I=P.transform,R=P.oldIE,r.scrollWrap=o.getChildByClass(e,"pswp__scroll-wrap"),r.container=o.getChildByClass(r.scrollWrap,"pswp__container"),p=r.container.style,r.itemHolders=x=[{el:r.container.children[0],wrap:0,index:-1},{el:r.container.children[1],wrap:0,index:-1},{el:r.container.children[2],wrap:0,index:-1}],x[0].el.style.display=x[2].el.style.display="none",function(){if(I){var t=P.perspective&&!O;return w="translate"+(t?"3d(":"("),void(y=P.perspective?", 0px)":")")}I="left",o.addClass(e,"pswp--ie"),Se=function(e,t){t.left=e+"px"},Oe=function(e){var t=e.fitRatio>1?1:e.fitRatio,n=e.container.style,i=t*e.w,o=t*e.h;n.width=i+"px",n.height=o+"px",n.left=e.initialPosition.x+"px",n.top=e.initialPosition.y+"px"},Ae=function(){if(te){var e=te,t=r.currItem,n=t.fitRatio>1?1:t.fitRatio,i=n*t.w,o=n*t.h;e.width=i+"px",e.height=o+"px",e.left=pe.x+"px",e.top=pe.y+"px"}}}(),f={resize:r.updateSize,orientationchange:function(){clearTimeout(N),N=setTimeout((function(){de.x!==r.scrollWrap.clientWidth&&r.updateSize()}),500)},scroll:We,keydown:Be,click:Ke};var i=P.isOldIOSPhone||P.isOldAndroid||P.isMobileOpera;for(P.animationName&&P.transform&&!i||(a.showAnimationDuration=a.hideAnimationDuration=0),n=0;n=Ut())&&(u=0),r.currItem=Zt(u),(P.isOldIOSPhone||P.isOldAndroid)&&(ve=!1),e.setAttribute("aria-hidden","false"),a.modal&&(ve?e.style.position="fixed":(e.style.position="absolute",e.style.top=o.getScrollY()+"px")),void 0===F&&(Le("initialLayout"),F=H=o.getScrollY());var c="pswp--open ";for(a.mainClass&&(c+=a.mainClass+" "),a.showHideOpacity&&(c+="pswp--animate_opacity "),c+=O?"pswp--touch":"pswp--notouch",c+=P.animationName?" pswp--css_animation":"",c+=P.svg?" pswp--svg":"",o.addClass(e,c),r.updateSize(),d=-1,ge=null,n=0;n<3;n++)Se((n+d)*fe.x,x[n].el.style);R||o.bind(r.scrollWrap,h,r),Te("initialZoomInEnd",(function(){r.setContent(x[0],u-1),r.setContent(x[2],u+1),x[0].el.style.display=x[2].el.style.display="block",a.focus&&e.focus(),o.bind(document,"keydown",r),P.transform&&o.bind(r.scrollWrap,"click",r),a.mouseUsed||o.bind(document,"mousemove",Pe),o.bind(window,"resize scroll orientationchange",r),Le("bindEvents")})),r.setContent(x[1],u),r.updateCurrItem(),Le("afterInit"),ve||(b=setInterval((function(){qe||V||Q||g!==r.currItem.initialZoomLevel||r.updateSize()}),1e3)),o.addClass(e,"pswp--visible")}},close:function(){l&&(l=!1,s=!0,Le("close"),o.unbind(window,"resize scroll orientationchange",r),o.unbind(window,"scroll",f.scroll),o.unbind(document,"keydown",r),o.unbind(document,"mousemove",Pe),P.transform&&o.unbind(r.scrollWrap,"click",r),V&&o.unbind(window,m,r),clearTimeout(N),Le("unbindEvents"),Bt(r.currItem,null,!0,r.destroy))},destroy:function(){Le("destroy"),Ft&&clearTimeout(Ft),e.setAttribute("aria-hidden","true"),e.className=k,b&&clearInterval(b),o.unbind(r.scrollWrap,h,r),o.unbind(window,"scroll",r),ht(),Ye(),Ce=null},panTo:function(e,t,n){n||(e>ee.min.x?e=ee.min.x:eee.min.y?t=ee.min.y:t=3&&(d+=ge+(ge>0?-3:3),n=3);for(var i=0;i0?(t=x.shift(),x[2]=t,d++,Se((d+2)*fe.x,t.el.style),r.setContent(t,u-n+i+1+1)):(t=x.pop(),x.unshift(t),d--,Se(d*fe.x,t.el.style),r.setContent(t,u+n-i-1-1));if(te&&1===Math.abs(ge)){var o=Zt(C);o.initialZoomLevel!==g&&(qt(o,de),Xt(o),Oe(o))}ge=0,r.updateCurrZoomItem(),C=u,Le("afterChange")}}},updateSize:function(t){if(!ve&&a.modal){var n=o.getScrollY();if(F!==n&&(e.style.top=n+"px",F=n),!t&&ye.x===window.innerWidth&&ye.y===window.innerHeight)return;ye.x=window.innerWidth,ye.y=window.innerHeight,e.style.height=ye.y+"px"}if(de.x=r.scrollWrap.clientWidth,de.y=r.scrollWrap.clientHeight,We(),fe.x=de.x+Math.round(de.x*a.spacing),fe.y=de.y,De(fe.x*me),Le("beforeResize"),void 0!==d){for(var i,l,s,c=0;c<3;c++)i=x[c],Se((c+d)*fe.x,i.el.style),s=u+c-1,a.loop&&Ut()>2&&(s=xe(s)),(l=Zt(s))&&(_||l.needsUpdate||!l.bounds)?(r.cleanSlide(l),r.setContent(i,s),1===c&&(r.currItem=l,r.updateCurrZoomItem(!0)),l.needsUpdate=!1):-1===i.index&&s>=0&&r.setContent(i,s),l&&l.container&&(qt(l,de),Xt(l),Oe(l));_=!1}v=g=r.currItem.initialZoomLevel,(ee=r.currItem.bounds)&&(pe.x=ee.center.x,pe.y=ee.center.y,Ae(!0)),Le("resize")},zoomTo:function(e,t,n,i,r){t&&(v=g,pt.x=Math.abs(t.x)-pe.x,pt.y=Math.abs(t.y)-pe.y,He(ue,pe));var a=Ne(e,!1),l={};Ue("x",a,l,e),Ue("y",a,l,e);var s=g,c=pe.x,u=pe.y;Re(l);var p=function(t){1===t?(g=e,pe.x=l.x,pe.y=l.y):(g=(e-s)*t+s,pe.x=(l.x-c)*t+c,pe.y=(l.y-u)*t+u),r&&r(t),Ae(1===t)};n?Xe("customZoomTo",0,1,n,i||o.easing.sine.inOut,p):p(1)}},Qe={},Je={},et={},tt={},nt={},it=[],ot={},rt=[],at={},lt=0,st={x:0,y:0},ct=0,ut={x:0,y:0},pt={x:0,y:0},dt={x:0,y:0},mt=function(e,t){return at.x=Math.abs(e.x-t.x),at.y=Math.abs(e.y-t.y),Math.sqrt(at.x*at.x+at.y*at.y)},ht=function(){Y&&(D(Y),Y=null)},ft=function(){V&&(Y=S(ft),At())},gt=function(e,t){return!(!e||e===document)&&(!(e.getAttribute("class")&&e.getAttribute("class").indexOf("pswp__scroll-wrap")>-1)&&(t(e)?e:gt(e.parentNode,t)))},vt={},wt=function(e,t){return vt.prevent=!gt(e.target,a.isClickableElement),Le("preventDragEvent",e,t,vt),vt.prevent},yt=function(e,t){return t.x=e.pageX,t.y=e.pageY,t.id=e.identifier,t},bt=function(e,t,n){n.x=.5*(e.x+t.x),n.y=.5*(e.y+t.y)},_t=function(){var e=pe.y-r.currItem.initialPosition.y;return 1-Math.abs(e/(de.y/2))},xt={},Ct={},Tt=[],Lt=function(e){for(;Tt.length>0;)Tt.pop();return A?(se=0,it.forEach((function(e){0===se?Tt[0]=e:1===se&&(Tt[1]=e),se++}))):e.type.indexOf("touch")>-1?e.touches&&e.touches.length>0&&(Tt[0]=yt(e.touches[0],xt),e.touches.length>1&&(Tt[1]=yt(e.touches[1],Ct))):(xt.x=e.pageX,xt.y=e.pageY,xt.id="",Tt[0]=xt),Tt},Et=function(e,t){var n,i,o,l,s=pe[e]+t[e],c=t[e]>0,u=ut.x+t.x,p=ut.x-ot.x;if(n=s>ee.min[e]||see.min[e]&&(n=a.panEndFriction,ee.min[e]-s,i=ee.min[e]-ue[e]),(i<=0||p<0)&&Ut()>1?(l=u,p<0&&u>ot.x&&(l=ot.x)):ee.min.x!==ee.max.x&&(o=s)):(s0)&&Ut()>1?(l=u,p>0&&ur.currItem.fitRatio&&(pe[e]+=t[e]*n)},Mt=function(e){if(!("mousedown"===e.type&&e.button>0))if(zt)e.preventDefault();else if(!W||"mousedown"!==e.type){if(wt(e,!0)&&e.preventDefault(),Le("pointerDown"),A){var t=o.arraySearch(it,e.pointerId,"id");t<0&&(t=it.length),it[t]={x:e.pageX,y:e.pageY,id:e.pointerId}}var n=Lt(e),i=n.length;$=null,Ye(),V&&1!==i||(V=oe=!0,o.bind(window,m,r),B=le=re=K=X=G=q=j=!1,ie=null,Le("firstTouchStart",n),He(ue,pe),ce.x=ce.y=0,He(tt,n[0]),He(nt,tt),ot.x=fe.x*me,rt=[{x:tt.x,y:tt.y}],Z=z=Ee(),Ne(g,!0),ht(),ft()),!Q&&i>1&&!ne&&!X&&(v=g,j=!1,Q=q=!0,ce.y=ce.x=0,He(ue,pe),He(Qe,n[0]),He(Je,n[1]),bt(Qe,Je,dt),pt.x=Math.abs(dt.x)-pe.x,pt.y=Math.abs(dt.y)-pe.y,J=mt(Qe,Je))}},It=function(e){if(e.preventDefault(),A){var t=o.arraySearch(it,e.pointerId,"id");if(t>-1){var n=it[t];n.x=e.pageX,n.y=e.pageY}}if(V){var i=Lt(e);if(ie||G||Q)$=i;else if(ut.x!==fe.x*me)ie="h";else{var r=Math.abs(i[0].x-tt.x)-Math.abs(i[0].y-tt.y);Math.abs(r)>=10&&(ie=r>0?"h":"v",$=i)}}},At=function(){if($){var e=$.length;if(0!==e)if(He(Qe,$[0]),et.x=Qe.x-tt.x,et.y=Qe.y-tt.y,Q&&e>1){if(tt.x=Qe.x,tt.y=Qe.y,!et.x&&!et.y&&function(e,t){return e.x===t.x&&e.y===t.y}($[1],Je))return;He(Je,$[1]),j||(j=!0,Le("zoomGestureStarted"));var t=mt(Qe,Je),n=Ht(t);n>r.currItem.initialZoomLevel+r.currItem.initialZoomLevel/15&&(le=!0);var i=1,o=ze(),l=Ze();if(n1&&(i=1),n=o-i*(o/3);else n>l&&((i=(n-l)/(6*o))>1&&(i=1),n=l+i*o);i<0&&(i=0),t,bt(Qe,Je,st),ce.x+=st.x-dt.x,ce.y+=st.y-dt.y,He(dt,st),pe.x=ke("x",n),pe.y=ke("y",n),B=n>g,g=n,Ae()}else{if(!ie)return;if(oe&&(oe=!1,Math.abs(et.x)>=10&&(et.x-=$[0].x-nt.x),Math.abs(et.y)>=10&&(et.y-=$[0].y-nt.y)),tt.x=Qe.x,tt.y=Qe.y,0===et.x&&0===et.y)return;if("v"===ie&&a.closeOnVerticalDrag&&"fit"===a.scaleMode&&g===r.currItem.initialZoomLevel){ce.y+=et.y,pe.y+=et.y;var c=_t();return K=!0,Le("onVerticalDrag",c),Me(c),void Ae()}!function(e,t,n){if(e-Z>50){var i=rt.length>2?rt.shift():{};i.x=t,i.y=n,rt.push(i),Z=e}}(Ee(),Qe.x,Qe.y),G=!0,ee=r.currItem.bounds,Et("x",et)||(Et("y",et),Re(pe),Ae())}}},Ot=function(e){if(P.isOldAndroid){if(W&&"mouseup"===e.type)return;e.type.indexOf("touch")>-1&&(clearTimeout(W),W=setTimeout((function(){W=0}),600))}var t;if(Le("pointerUp"),wt(e,!1)&&e.preventDefault(),A){var n=o.arraySearch(it,e.pointerId,"id");if(n>-1)if(t=it.splice(n,1)[0],navigator.msPointerEnabled){t.type={4:"mouse",2:"touch",3:"pen"}[e.pointerType],t.type||(t.type=e.pointerType||"mouse")}else t.type=e.pointerType||"mouse"}var i,l=Lt(e),s=l.length;if("mouseup"===e.type&&(s=0),2===s)return $=null,!0;1===s&&He(nt,l[0]),0!==s||ie||ne||(t||("mouseup"===e.type?t={x:e.pageX,y:e.pageY,type:"mouse"}:e.changedTouches&&e.changedTouches[0]&&(t={x:e.changedTouches[0].pageX,y:e.changedTouches[0].pageY,type:"touch"})),Le("touchRelease",e,t));var c=-1;if(0===s&&(V=!1,o.unbind(window,m,r),ht(),Q?c=0:-1!==ct&&(c=Ee()-ct)),ct=1===s?Ee():-1,i=-1!==c&&c<150?"zoom":"swipe",Q&&s<2&&(Q=!1,1===s&&(i="zoomPointerUp"),Le("zoomGestureEnded")),$=null,G||j||ne||K)if(Ye(),U||(U=St()),U.calculateSwipeSpeed("x"),K){if(_t()r.currItem.fitRatio&&Dt(U):Rt())}},St=function(){var e,t,n={lastFlickOffset:{},lastFlickDist:{},lastFlickSpeed:{},slowDownRatio:{},slowDownRatioReverse:{},speedDecelerationRatio:{},speedDecelerationRatioAbs:{},distanceOffset:{},backAnimDestination:{},backAnimStarted:{},calculateSwipeSpeed:function(i){rt.length>1?(e=Ee()-Z+50,t=rt[rt.length-2][i]):(e=Ee()-z,t=nt[i]),n.lastFlickOffset[i]=tt[i]-t,n.lastFlickDist[i]=Math.abs(n.lastFlickOffset[i]),n.lastFlickDist[i]>20?n.lastFlickSpeed[i]=n.lastFlickOffset[i]/e:n.lastFlickSpeed[i]=0,Math.abs(n.lastFlickSpeed[i])<.1&&(n.lastFlickSpeed[i]=0),n.slowDownRatio[i]=.95,n.slowDownRatioReverse[i]=1-n.slowDownRatio[i],n.speedDecelerationRatio[i]=1},calculateOverBoundsAnimOffset:function(e,t){n.backAnimStarted[e]||(pe[e]>ee.min[e]?n.backAnimDestination[e]=ee.min[e]:pe[e]30&&(c||t.lastFlickOffset.x>20)?i=-1:s<-30&&(c||t.lastFlickOffset.x<-20)&&(i=1)}i&&((u+=i)<0?(u=a.loop?Ut()-1:0,l=!0):u>=Ut()&&(u=a.loop?0:Ut()-1,l=!0),l&&!a.loop||(ge+=i,me-=i,n=!0));var p,d=fe.x*me,m=Math.abs(d-ut.x);return n||d>ut.x==t.lastFlickSpeed.x>0?(p=Math.abs(t.lastFlickSpeed.x)>0?m/Math.abs(t.lastFlickSpeed.x):333,p=Math.min(p,400),p=Math.max(p,250)):p=333,lt===u&&(n=!1),ne=!0,Le("mainScrollAnimStart"),Xe("mainScroll",ut.x,d,p,o.easing.cubic.out,De,(function(){Ye(),ne=!1,lt=-1,(n||lt!==u)&&r.updateCurrItem(),Le("mainScrollAnimComplete")})),n&&r.updateCurrItem(!0),n},Ht=function(e){return 1/J*e*v},Rt=function(){var e=g,t=ze(),n=Ze();gn&&(e=n);var i,a=ae;return re&&!B&&!le&&g1||navigator.msMaxTouchPoints>1),r.likelyTouchDevice=O,f[T]=Mt,f[L]=It,f[E]=Ot,M&&(f[M]=f[E]),P.touch&&(h+=" mousedown",m+=" mousemove mouseup",f.mousedown=f[T],f.mousemove=f[L],f.mouseup=f[E]),O||(a.allowPanToNext=!1)}}});var Ft,Pt,Nt,zt,Zt,Ut,Bt=function(t,n,i,l){var s;Ft&&clearTimeout(Ft),zt=!0,Nt=!0,t.initialLayout?(s=t.initialLayout,t.initialLayout=null):s=a.getThumbBoundsFn&&a.getThumbBoundsFn(u);var p=i?a.hideAnimationDuration:a.showAnimationDuration,d=function(){je("initialZoom"),i?(r.template.removeAttribute("style"),r.bg.removeAttribute("style")):(Me(1),n&&(n.style.display="block"),o.addClass(e,"pswp--animated-in"),Le("initialZoom"+(i?"OutEnd":"InEnd"))),l&&l(),zt=!1};if(!p||!s||void 0===s.x)return Le("initialZoom"+(i?"Out":"In")),g=t.initialZoomLevel,He(pe,t.initialPosition),Ae(),e.style.opacity=i?0:1,Me(1),void(p?setTimeout((function(){d()}),p):d());var m,h;m=c,h=!r.currItem.src||r.currItem.loadError||a.showHideOpacity,t.miniImg&&(t.miniImg.style.webkitBackfaceVisibility="hidden"),i||(g=s.w/t.w,pe.x=s.x,pe.y=s.y-H,r[h?"template":"bg"].style.opacity=.001,Ae()),Ge("initialZoom"),i&&!m&&o.removeClass(e,"pswp--animated-in"),h&&(i?o[(m?"remove":"add")+"Class"](e,"pswp--animate_opacity"):setTimeout((function(){o.addClass(e,"pswp--animate_opacity")}),30)),Ft=setTimeout((function(){if(Le("initialZoom"+(i?"Out":"In")),i){var n=s.w/t.w,r={x:pe.x,y:pe.y},a=g,l=ae,c=function(t){1===t?(g=n,pe.x=s.x,pe.y=s.y-F):(g=(n-a)*t+a,pe.x=(s.x-r.x)*t+r.x,pe.y=(s.y-F-r.y)*t+r.y),Ae(),h?e.style.opacity=1-t:Me(l-t*l)};m?Xe("initialZoom",0,1,p,o.easing.cubic.out,c,d):(c(1),Ft=setTimeout(d,p+20))}else g=t.initialZoomLevel,He(pe,t.initialPosition),Ae(),Me(1),h?e.style.opacity=1:Me(1),Ft=setTimeout(d,p+20)}),i?25:90)},Kt={},Wt=[],Vt={index:0,errorMsg:'
The image could not be loaded.
',forceProgressiveLoading:!1,preload:[1,1],getNumItemsFn:function(){return Pt.length}},qt=function(e,t,n){if(e.src&&!e.loadError){var i=!n;if(i&&(e.vGap||(e.vGap={top:0,bottom:0}),Le("parseVerticalMargin",e)),Kt.x=t.x,Kt.y=t.y-e.vGap.top-e.vGap.bottom,i){var o=Kt.x/e.w,r=Kt.y/e.h;e.fitRatio=o1&&(n=1),e.initialZoomLevel=n,e.bounds||(e.bounds={center:{x:0,y:0},max:{x:0,y:0},min:{x:0,y:0}})}if(!n)return;return function(e,t,n){var i=e.bounds;i.center.x=Math.round((Kt.x-t)/2),i.center.y=Math.round((Kt.y-n)/2)+e.vGap.top,i.max.x=t>Kt.x?Math.round(Kt.x-t):i.center.x,i.max.y=n>Kt.y?Math.round(Kt.y-n)+e.vGap.top:i.center.y,i.min.x=t>Kt.x?0:i.center.x,i.min.y=n>Kt.y?e.vGap.top:i.center.y}(e,e.w*n,e.h*n),i&&n===e.initialZoomLevel&&(e.initialPosition=e.bounds.center),e.bounds}return e.w=e.h=0,e.initialZoomLevel=e.fitRatio=1,e.bounds={center:{x:0,y:0},max:{x:0,y:0},min:{x:0,y:0}},e.initialPosition=e.bounds.center,e.bounds},jt=function(e,t,n,i,o,a){t.loadError||i&&(t.imageAppended=!0,Xt(t,i,t===r.currItem&&be),n.appendChild(i),a&&setTimeout((function(){t&&t.loaded&&t.placeholder&&(t.placeholder.style.display="none",t.placeholder=null)}),500))},Gt=function(e){e.loading=!0,e.loaded=!1;var t=e.img=o.createEl("pswp__img","img"),n=function(){e.loading=!1,e.loaded=!0,e.loadComplete?e.loadComplete(e):e.img=null,t.onload=t.onerror=null,t=null};return t.onload=n,t.onerror=function(){e.loadError=!0,n()},t.src=e.src,t},Yt=function(e,t){if(e.src&&e.loadError&&e.container)return t&&(e.container.innerHTML=""),e.container.innerHTML=a.errorMsg.replace("%url%",e.src),!0},Xt=function(e,t,n){if(e.src){t||(t=e.container.lastChild);var i=n?e.w:Math.round(e.w*e.fitRatio),o=n?e.h:Math.round(e.h*e.fitRatio);e.placeholder&&!e.loaded&&(e.placeholder.style.width=i+"px",e.placeholder.style.height=o+"px"),t.style.width=i+"px",t.style.height=o+"px"}},$t=function(){if(Wt.length){for(var e,t=0;t=0,o=Math.min(n[0],Ut()),l=Math.min(n[1],Ut());for(t=1;t<=(i?l:o);t++)r.lazyLoadItem(u+t);for(t=1;t<=(i?o:l);t++)r.lazyLoadItem(u-t)})),Te("initialLayout",(function(){r.currItem.initialLayout=a.getThumbBoundsFn&&a.getThumbBoundsFn(u)})),Te("mainScrollAnimComplete",$t),Te("initialZoomInEnd",$t),Te("destroy",(function(){for(var e,t=0;t=0&&(void 0!==Pt[e]&&Pt[e])},allowProgressiveImg:function(){return a.forceProgressiveLoading||!O||a.mouseUsed||screen.width>1200},setContent:function(e,t){a.loop&&(t=xe(t));var n=r.getItemAt(e.index);n&&(n.container=null);var i,s=r.getItemAt(t);if(s){Le("gettingData",t,s),e.index=t,e.item=s;var c=s.container=o.createEl("pswp__zoom-wrap");if(!s.src&&s.html&&(s.html.tagName?c.appendChild(s.html):c.innerHTML=s.html),Yt(s),qt(s,de),!s.src||s.loadError||s.loaded)s.src&&!s.loadError&&((i=o.createEl("pswp__img","img")).style.opacity=1,i.src=s.src,Xt(s,i),jt(0,s,c,i));else{if(s.loadComplete=function(n){if(l){if(e&&e.index===t){if(Yt(n,!0))return n.loadComplete=n.img=null,qt(n,de),Oe(n),void(e.index===u&&r.updateCurrZoomItem());n.imageAppended?!zt&&n.placeholder&&(n.placeholder.style.display="none",n.placeholder=null):P.transform&&(ne||zt)?Wt.push({item:n,baseDiv:c,img:n.img,index:t,holder:e,clearPlaceholder:!0}):jt(0,n,c,n.img,0,!0)}n.loadComplete=null,n.img=null,Le("imageLoadComplete",t,n)}},o.features.transform){var p="pswp__img pswp__img--placeholder";p+=s.msrc?"":" pswp__img--placeholder--blank";var d=o.createEl(p,s.msrc?"img":"");s.msrc&&(d.src=s.msrc),Xt(s,d),c.appendChild(d),s.placeholder=d}s.loading||Gt(s),r.allowProgressiveImg()&&(!Nt&&P.transform?Wt.push({item:s,baseDiv:c,img:s.img,index:t,holder:e}):jt(0,s,c,s.img,0,!0))}Nt||t!==u?Oe(s):(te=c.style,Bt(s,i||s.img)),e.el.innerHTML="",e.el.appendChild(c)}else e.el.innerHTML=""},cleanSlide:function(e){e.img&&(e.img.onload=e.img.onerror=null),e.loaded=e.loading=e.img=e.imageAppended=!1}}});var Qt,Jt,en={},tn=function(e,t,n){var i=document.createEvent("CustomEvent"),o={origEvent:e,target:e.target,releasePoint:t,pointerType:n||"touch"};i.initCustomEvent("pswpTap",!0,!0,o),e.target.dispatchEvent(i)};_e("Tap",{publicMethods:{initTap:function(){Te("firstTouchStart",r.onTapStart),Te("touchRelease",r.onTapRelease),Te("destroy",(function(){en={},Qt=null}))},onTapStart:function(e){e.length>1&&(clearTimeout(Qt),Qt=null)},onTapRelease:function(e,t){var n,i;if(t&&(!G&&!q&&!qe)){var r=t;if(Qt&&(clearTimeout(Qt),Qt=null,n=r,i=en,Math.abs(n.x-i.x)<25&&Math.abs(n.y-i.y)<25))return void Le("doubleTap",r);if("mouse"===t.type)return void tn(e,t,"mouse");if("BUTTON"===e.target.tagName.toUpperCase()||o.hasClass(e.target,"pswp__single-tap"))return void tn(e,t);He(en,r),Qt=setTimeout((function(){tn(e,t),Qt=null}),300)}}}}),_e("DesktopZoom",{publicMethods:{initDesktopZoom:function(){R||(O?Te("mouseUsed",(function(){r.setupDesktopZoom()})):r.setupDesktopZoom(!0))},setupDesktopZoom:function(t){Jt={};var n="wheel mousewheel DOMMouseScroll";Te("bindEvents",(function(){o.bind(e,n,r.handleMouseWheel)})),Te("unbindEvents",(function(){Jt&&o.unbind(e,n,r.handleMouseWheel)})),r.mouseZoomedIn=!1;var i,a=function(){r.mouseZoomedIn&&(o.removeClass(e,"pswp--zoomed-in"),r.mouseZoomedIn=!1),g<1?o.addClass(e,"pswp--zoom-allowed"):o.removeClass(e,"pswp--zoom-allowed"),l()},l=function(){i&&(o.removeClass(e,"pswp--dragging"),i=!1)};Te("resize",a),Te("afterChange",a),Te("pointerDown",(function(){r.mouseZoomedIn&&(i=!0,o.addClass(e,"pswp--dragging"))})),Te("pointerUp",l),t||a()},handleMouseWheel:function(e){if(g<=r.currItem.fitRatio)return a.modal&&(!a.closeOnScroll||qe||V?e.preventDefault():I&&Math.abs(e.deltaY)>2&&(c=!0,r.close())),!0;if(e.stopPropagation(),Jt.x=0,"deltaX"in e)1===e.deltaMode?(Jt.x=18*e.deltaX,Jt.y=18*e.deltaY):(Jt.x=e.deltaX,Jt.y=e.deltaY);else if("wheelDelta"in e)e.wheelDeltaX&&(Jt.x=-.16*e.wheelDeltaX),e.wheelDeltaY?Jt.y=-.16*e.wheelDeltaY:Jt.y=-.16*e.wheelDelta;else{if(!("detail"in e))return;Jt.y=e.detail}Ne(g,!0);var t=pe.x-Jt.x,n=pe.y-Jt.y;(a.modal||t<=ee.min.x&&t>=ee.max.x&&n<=ee.min.y&&n>=ee.max.y)&&e.preventDefault(),r.panTo(t,n)},toggleDesktopZoom:function(t){t=t||{x:de.x/2+he.x,y:de.y/2+he.y};var n=a.getDoubleTapZoom(!0,r.currItem),i=g===n;r.mouseZoomedIn=!i,r.zoomTo(i?r.currItem.initialZoomLevel:n,t,333),o[(i?"remove":"add")+"Class"](e,"pswp--zoomed-in")}}});var nn,on,rn,an,ln,sn,cn,un,pn,dn,mn,hn,fn={history:!0,galleryUID:1},gn=function(){return mn.hash.substring(1)},vn=function(){nn&&clearTimeout(nn),rn&&clearTimeout(rn)},wn=function(){var e=gn(),t={};if(e.length<5)return t;var n,i=e.split("&");for(n=0;n-1&&"&"===(cn=cn.substring(0,t)).slice(-1)&&(cn=cn.slice(0,-1)),setTimeout((function(){l&&o.bind(window,"hashchange",r.onHashChange)}),40)}},onHashChange:function(){if(gn()===cn)return pn=!0,void r.close();an||(ln=!0,r.goTo(wn().pid),ln=!1)},updateURL:function(){vn(),ln||(un?nn=setTimeout(yn,800):yn())}}}),o.extend(r,$e)}})), -/*! PhotoSwipe Default UI - 4.1.3 - 2019-01-08 -* http://photoswipe.com -* Copyright (c) 2019 Dmitry Semenov; */ -function(e,t){"function"==typeof define&&define.amd?define(t):"object"==typeof exports?module.exports=t():e.PhotoSwipeUI_Default=t()}(this,(function(){"use strict";return function(e,t){var n,i,o,r,a,l,s,c,u,p,d,m,h,f,g,v,w,y,b=this,_=!1,x=!0,C=!0,T={barsSize:{top:44,bottom:"auto"},closeElClasses:["item","caption","zoom-wrap","ui","top-bar"],timeToIdle:4e3,timeToIdleOutside:1e3,loadingIndicatorDelay:1e3,addCaptionHTMLFn:function(e,t){return e.title?(t.children[0].innerHTML=e.title,!0):(t.children[0].innerHTML="",!1)},closeEl:!0,captionEl:!0,fullscreenEl:!0,zoomEl:!0,shareEl:!0,counterEl:!0,arrowEl:!0,preloaderEl:!0,tapToClose:!1,tapToToggleControls:!0,clickToCloseNonZoomable:!0,shareButtons:[{id:"facebook",label:"Share on Facebook",url:"https://www.facebook.com/sharer/sharer.php?u={{url}}"},{id:"twitter",label:"Tweet",url:"https://twitter.com/intent/tweet?text={{text}}&url={{url}}"},{id:"pinterest",label:"Pin it",url:"http://www.pinterest.com/pin/create/button/?url={{url}}&media={{image_url}}&description={{text}}"},{id:"download",label:"Download image",url:"{{raw_image_url}}",download:!0}],getImageURLForShare:function(){return e.currItem.src||""},getPageURLForShare:function(){return window.location.href},getTextForShare:function(){return e.currItem.title||""},indexIndicatorSep:" / ",fitControlsWidth:1200},L=function(e){if(v)return!0;e=e||window.event,g.timeToIdle&&g.mouseUsed&&!u&&H();for(var n,i,o=(e.target||e.srcElement).getAttribute("class")||"",r=0;r-1&&(n.onTap(),i=!0);if(i){e.stopPropagation&&e.stopPropagation(),v=!0;var a=t.features.isOldAndroid?600:30;setTimeout((function(){v=!1}),a)}},E=function(e,n,i){t[(i?"add":"remove")+"Class"](e,"pswp__"+n)},M=function(){var e=1===g.getNumItemsFn();e!==f&&(E(i,"ui--one-slide",e),f=e)},I=function(){E(s,"share-modal--hidden",C)},A=function(){return(C=!C)?(t.removeClass(s,"pswp__share-modal--fade-in"),setTimeout((function(){C&&I()}),300)):(I(),setTimeout((function(){C||t.addClass(s,"pswp__share-modal--fade-in")}),30)),C||S(),!1},O=function(t){var n=(t=t||window.event).target||t.srcElement;return e.shout("shareLinkClick",t,n),!!n.href&&(!!n.hasAttribute("download")||(window.open(n.href,"pswp_share","scrollbars=yes,resizable=yes,toolbar=no,location=yes,width=550,height=420,top=100,left="+(window.screen?Math.round(screen.width/2-275):100)),C||A(),!1))},S=function(){for(var e,t,n,i,o="",r=0;r