From ae57649f4b58b8d4d6c56c5d84af026c27562571 Mon Sep 17 00:00:00 2001 From: lensferno Date: Wed, 28 Jun 2023 21:35:47 +0800 Subject: [PATCH] .... --- _config.yml | 4 +- layout/includes/_partials/footer.pug | 4 +- .../includes/_partials/information_card.pug | 15 +- layout/includes/layout.pug | 18 +- layout/post.pug | 17 +- source/css/_partials/index.styl | 2 +- source/css/_partials/post_list/paginator.styl | 2 + source/css/_partials/post_list/post_item.styl | 28 +-- .../_partials/post_page/markdown_content.styl | 113 +++++++++++ source/css/_partials/post_page/post_page.styl | 29 +++ source/css/common.styl | 20 +- source/css/highlight.styl | 34 ++++ source/css/var.styl | 185 ++++++++++++++++++ source/favicon.ico | Bin 15086 -> 21567 bytes source/favicon.png | Bin 0 -> 21350 bytes source/js/time.js | 0 16 files changed, 431 insertions(+), 40 deletions(-) create mode 100644 source/css/_partials/post_page/markdown_content.styl create mode 100644 source/css/_partials/post_page/post_page.styl create mode 100644 source/css/highlight.styl create mode 100644 source/css/var.styl create mode 100644 source/favicon.png create mode 100644 source/js/time.js diff --git a/_config.yml b/_config.yml index 4cd2459..e1aa4a6 100644 --- a/_config.yml +++ b/_config.yml @@ -35,7 +35,9 @@ social: Twitter: lensfrex || https://www.twitter.com Bilibili: lensfrex || https://bilibili.com -beginTime: "2022·02·23" +beginTime: + time: "2022·02·23" + format: "YYYY·MM·DD" lazyload: enable: true diff --git a/layout/includes/_partials/footer.pug b/layout/includes/_partials/footer.pug index 17d0218..f87a3ac 100644 --- a/layout/includes/_partials/footer.pug +++ b/layout/includes/_partials/footer.pug @@ -21,6 +21,6 @@ include ./button.pug a(href='/')= config.author br br - span.time= theme.beginTime + span.time= theme.beginTime.time span - - span.time= date(Date.now(), 'YYYY·MM·DD') + span.time= date(Date.now(), theme.beginTime.format) diff --git a/layout/includes/_partials/information_card.pug b/layout/includes/_partials/information_card.pug index 317f704..823d716 100644 --- a/layout/includes/_partials/information_card.pug +++ b/layout/includes/_partials/information_card.pug @@ -33,9 +33,18 @@ mixin information_card(...extendData) +data_row({name: data.name, value: data.value}) +data_row({name: "运行时间", value: "432天", value_id: "run_time"}) - script. - const runTime = document.getElementById("run_time"); - runTime.innerHtml = (Date.now() - ${startTime}) / 86400 + script + - const beginTime = theme.beginTime + - const millisecond = moment(beginTime.time, beginTime.format).valueOf() + | {const runTime = parseInt((Date.now() - !{millisecond}) / 86400000); + | document.getElementById("run_time").textContent = runTime + '天'}; + + +data_row({name: "页面构建时间", value: "0天前", value_id: "last_build_time"}) + script + - const buildTime = Date.now() + | {const buildTime = parseInt((Date.now() - !{buildTime}) / 86400000); + | document.getElementById("last_build_time").textContent = + | (buildTime == 0) ? '今天' : buildTime + '天前'}; hr span.no-error-declaration NO ERROR diff --git a/layout/includes/layout.pug b/layout/includes/layout.pug index af24e4f..97e8ed3 100644 --- a/layout/includes/layout.pug +++ b/layout/includes/layout.pug @@ -17,25 +17,25 @@ html(lang=config.language) //- stylesheets list from _config.yml each url in theme.stylesheets link(rel='stylesheet', href=url) + if is_post() || is_page() + link(rel="stylesheet", href="/css/highlight.css") body #container.container header#header.header include ./_partials/header.pug - - .bottom-declaration - .bottom-declaration-line - .bottom-declaration-dotted + .bottom-declaration + .bottom-declaration-line + .bottom-declaration-dotted main#main.main #content.content block content footer#footer.footer - include ./_partials/footer.pug - - .bottom-declaration - .bottom-declaration-line - .bottom-declaration-dotted + include ./_partials/footer.pug + .bottom-declaration + .bottom-declaration-line + .bottom-declaration-dotted //- 这段script一定要放在body结束前,否则lazyload不生效 script(src="/js/lazyload.min.js") diff --git a/layout/post.pug b/layout/post.pug index df996cd..c98f1fc 100644 --- a/layout/post.pug +++ b/layout/post.pug @@ -1,7 +1,16 @@ extends includes/layout.pug +include includes/_partials/information_card.pug block content - article#post - h1= page.title - != page.content - #paginator!= paginator() + .markdown-container + .content + include includes/_partials/left_declaration.pug + + .article-container + h1= page.title + hr + != page.content + + .side-information + +information_card({name: '全站总字数', value: totalcount(site)}) + //- script(src="/js/code.js") \ No newline at end of file diff --git a/source/css/_partials/index.styl b/source/css/_partials/index.styl index 20df799..7333eb3 100644 --- a/source/css/_partials/index.styl +++ b/source/css/_partials/index.styl @@ -14,7 +14,7 @@ padding: 4px 32px display: flex flex-direction: column - gap: 32px + gap: 16px width: 100% // overflow-y: scroll overflow-x: hidden diff --git a/source/css/_partials/post_list/paginator.styl b/source/css/_partials/post_list/paginator.styl index 6bae351..0c5cb6d 100644 --- a/source/css/_partials/post_list/paginator.styl +++ b/source/css/_partials/post_list/paginator.styl @@ -19,6 +19,8 @@ color: rgb(74, 71, 62) font-size: 18px user-select: none + box-sizing: border-box + cursor: default &::-webkit-input-placeholder color: rgb(74, 71, 62); &::-moz-placeholder diff --git a/source/css/_partials/post_list/post_item.styl b/source/css/_partials/post_list/post_item.styl index 475876c..1a5c7e2 100644 --- a/source/css/_partials/post_list/post_item.styl +++ b/source/css/_partials/post_list/post_item.styl @@ -1,3 +1,4 @@ + .post-item & > * user-select: none @@ -6,8 +7,8 @@ gap: 16px height: fit-content transition: all 0.2s linear 0s - padding: 12px 12px - margin: 4px 4px + padding: 20px 20px + margin: 6px 4px min-height: 144px; &:hover background-color: $light @@ -35,7 +36,7 @@ flex-direction: row justify-content: space-between gap: 8px - padding: 3px 6px + padding: 6px 10px color: rgb(74, 71, 62) background-color: rgb(180, 175, 154) transition: all 0.2s linear 0s @@ -58,13 +59,15 @@ background-color: rgb(74, 71, 62) transition: all 0.2s linear 0s - .post-cover - width: 256px - height 144px - min-width: 256px - min-height 144px - max-width: 256px - max-height 144px + $post-width = 307.2px + $post-heigth = 172.8px + img.post-cover + width: $post-width + height $post-heigth + min-width: $post-width + min-height $post-heigth + max-width: $post-width + max-height $post-heigth object-fit: cover transition: all 0.2s linear 0s @@ -72,11 +75,10 @@ display: flex flex-direction: row justify-content: space-between - padding: 2px 6px + padding: 6px 6px 0 32px .post-summary - max-width: 50% + max-width: 61.8% line-height: 2em - margin-top: 0.25em overflow: hidden display: -webkit-box -webkit-line-clamp: 4 diff --git a/source/css/_partials/post_page/markdown_content.styl b/source/css/_partials/post_page/markdown_content.styl new file mode 100644 index 0000000..1cb74c9 --- /dev/null +++ b/source/css/_partials/post_page/markdown_content.styl @@ -0,0 +1,113 @@ +.article-container + word-wrap: break-word + overflow-wrap: break-word + color: #4a473e + + h1, h2, h3, h4, h5, h6 + color: black + margin-left: -0.6em + + hr + border: 1.3px solid rgba(0,0,0,0.16) + width: 108% + margin-left: -4% + + figure + margin: 0 + font-size: 16px + pre + padding: 0 10px; + padding-right: 10px + padding-left: 10px + font-family: 'Consolas', 'Courier New', Courier, monospace + td.gutter + background-color: rgb(177, 171, 143) + color: rgb(251, 244, 214) + text-align: right + user-select: none + td.code + background-color: rgb(243, 240, 227) + width: 100% + + table + display: block; + overflow: scroll; + border: none; + border-collapse: collapse + td + padding: 0 + border: none + + code + font-family: 'Consolas', 'Courier New', Courier, monospace + font-size: 16px + padding: 2px + background: rgb(209, 213, 208) + color: rgb(74, 71, 62) + border-radius: 6px + + blockquote + background-color: rgba(189, 203, 215, 0.53) + color: rgb(74, 71, 62) + margin: 0 0 16px 0; + padding: 2px 24px + justify-content: center + display: flex + flex-direction: column + border-left: 4px solid rgb(74, 71, 62) + font-size: 16px + p + margin: 16px 0 + code + background: rgba(180, 175, 154, 0.45) + + a + text-decoration: none + color: rgb(61, 70, 196) + &:hover + text-decoration: underline + + img + display: block + margin: 20px auto 20px + max-width: 100% + + p + margin: 0 + line-height: 2em + + iframe + margin: 0 0 20px + + ul + margin: 0 + + ol, ul + ol, ul + padding-left: 20px + li + margin:8px 0 + line-height: 1.5em + p + margin: 0 0 8px + line-height: 1.5em + + > :last-child + margin-bottom: 0 !important + + ol, ul + p + margin: 0 0 8px + + li + &::marker + transition: all 0.2s linear 0s + font-weight: 600 + font-size: 1.05em + + &:hover + &::marker + color: #27af05 + + ul > li + list-style-type: circle \ No newline at end of file diff --git a/source/css/_partials/post_page/post_page.styl b/source/css/_partials/post_page/post_page.styl new file mode 100644 index 0000000..d7a28ae --- /dev/null +++ b/source/css/_partials/post_page/post_page.styl @@ -0,0 +1,29 @@ +// 文章和页面皆为markdown渲染而来,因此使用同一套css + +.markdown-container + display: flex + flex-direction: row + justify-content: space-between + gap: 16px + .content + width: 73%; + display: flex; + flex-direction: row; + gap: 12px + .article-container + background-color: rgb(231, 225, 199) + height: fit-content + padding: 4px 64px + display: flex + flex-direction: column + gap: 16px + width: 100% + // overflow-y: scroll + overflow-x: hidden + justify-content: space-between + font-size: 18px + .side-information + width: 24% + position: sticky + top: 16px + align-self: flex-start \ No newline at end of file diff --git a/source/css/common.styl b/source/css/common.styl index bfb384e..820991b 100644 --- a/source/css/common.styl +++ b/source/css/common.styl @@ -18,6 +18,13 @@ body > * ::selection #container padding: 1.5% 2% 1% 2% + min-height: 100% + // position: relative + +// footer +// position: absolute +// bottom: 0 +// width: 100% #main margin: 2em 0 @@ -43,12 +50,8 @@ span::selection margin: 0 -2% 0 * - &::-webkit-scrollbar-button - border-radius: 10px; - border-spacing: 10px; - background-color: rgb(74, 71, 62); - width: 10px; - height: 10px; + scrollbar-width: thin + scrollbar-color: rgb(74, 71, 62) transparent &::-webkit-scrollbar-corner background-color: rgb(197, 194, 165); &::-webkit-scrollbar-thumb @@ -58,6 +61,7 @@ span::selection width: 10px; height: 10px; + img transition: filter 0.2s linear 0s !important &[data-src]:not(.loaded) @@ -73,5 +77,7 @@ img @import '_partials/header/*' @import '_partials/footer/*' +@import '_partials/post_page/*' @import '_partials/post_list/*' -@import '_partials/*' \ No newline at end of file +@import '_partials/*' +@import 'var' \ No newline at end of file diff --git a/source/css/highlight.styl b/source/css/highlight.styl new file mode 100644 index 0000000..480314b --- /dev/null +++ b/source/css/highlight.styl @@ -0,0 +1,34 @@ +.code + .comment, .quote + color:#a0a1a7; + font-style:italic + + .doctag, .formula, .keyword + color:#a626a4 + + .deletion, .name, .section, .selector-tag, .subst + color:#e45649 + + .literal + color:#0184bb + + .addition, .attribute, .meta .string, .regexp, .string + color:#50a14f + + .attr, .number, .selector-attr, .selector-class, .selector-pseudo, .template-variable, .type, .variable + color:#986801 + + .bullet, .link, .meta, .selector-id, .symbol, .title + color:#4078f2 + + .built_in, .class .title, .title.class_ + color:#c18401 + + .emphasis + font-style:italic + + .strong + font-weight:700 + + .link + text-decoration:underline diff --git a/source/css/var.styl b/source/css/var.styl new file mode 100644 index 0000000..daa33f8 --- /dev/null +++ b/source/css/var.styl @@ -0,0 +1,185 @@ +// color +$bright-blue = #49B1F5 +$strong-cyan = #00c4b6 +$light-orange = #FF7242 +$light-red = #F47466 +$themeColorEnable = hexo-config('theme_color') && hexo-config('theme_color.enable') +$theme-color = $themeColorEnable && hexo-config('theme_color.main') ? convert(hexo-config('theme_color.main')) : $bright-blue +$theme-paginator-color = $themeColorEnable && hexo-config('theme_color.paginator') ? convert(hexo-config('theme_color.paginator')) : $strong-cyan +$theme-text-selection-color = $themeColorEnable && hexo-config('theme_color.text_selection') ? convert(hexo-config('theme_color.text_selection')) : $strong-cyan +$theme-link-color = $themeColorEnable && hexo-config('theme_color.link_color') ? convert(hexo-config('theme_color.link_color')) : $bright-blue +$theme-hr-color = $themeColorEnable && hexo-config('theme_color.hr_color') ? convert(hexo-config('theme_color.hr_color')) : $bright-blue +$code-foreground = $themeColorEnable && hexo-config('theme_color.code_foreground') ? convert(hexo-config('theme_color.code_foreground')) : $light-red +$code-background = $themeColorEnable && hexo-config('theme_color.code_background') ? convert(hexo-config('theme_color.code_background')) : rgba(27, 31, 35, .05) +$theme-toc-color = $themeColorEnable && hexo-config('theme_color.toc_color') ? convert(hexo-config('theme_color.toc_color')) : $strong-cyan +// font +$dafault-font-family = -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Helvetica Neue', Lato, Roboto, 'PingFang SC', 'Microsoft YaHei', sans-serif +$dafault-code-font = consolas, Menlo, 'PingFang SC', 'Microsoft YaHei', sans-serif +$font-family = hexo-config('font.font-family') ? unquote(hexo-config('font.font-family')) : $dafault-font-family +$code-font-family = hexo-config('font.code-font-family') ? unquote(hexo-config('font.code-font-family')) : $dafault-code-font +$site-name-font = hexo-config('blog_title_font.font-family') && unquote(hexo-config('blog_title_font.font-family')) +// hr +$hrEnable = hexo-config('hr_icon') && hexo-config('hr_icon.enable') +$hr-icon = $hrEnable && hexo-config('hr_icon.icon') ? hexo-config('hr_icon.icon') : '\f0c4' +$hr-icon-top = $hrEnable && hexo-config('hr_icon.icon-top') ? convert(hexo-config('hr_icon.icon-top')) : -10px +// page beatutify +$beautifyEnable = hexo-config('beautify.enable') +$title-prefix-icon = $beautifyEnable && hexo-config('beautify.title-prefix-icon') ? hexo-config('beautify.title-prefix-icon') : '\f0c1' +$title-prefix-icon-color = $beautifyEnable && hexo-config('beautify.title-prefix-icon-color') ? convert(hexo-config('beautify.title-prefix-icon-color')) : $light-red +// Global Variables +$font-size = hexo-config('font.global-font-size') ? convert(hexo-config('font.global-font-size')) : 14px +$code-font-size = hexo-config('font.code-font-size') ? convert(hexo-config('font.code-font-size')) : var(--global-font-size) +$font-color = #1F2D3D +$text-line-height = 2 +$web-bg = hexo-config('background') && unquote(hexo-config('background')) +$index_top_img_height = hexo-config('index_top_img_height') ? convert(hexo-config('index_top_img_height')) : 100vh +$index_site_info_top = hexo-config('index_site_info_top') ? convert(hexo-config('index_site_info_top')) : 43% +// Global color & SVG +$light-blue = $theme-color +$dark-black = #000000 +$light-grey = #EEEEEE +$grey = #858585 +$dark-grey = #cacaca +$white = #FFFFFF +$whitesmoke = #f5f5f5 +$font-black = #4C4948 +$card-bg = $white +$text-highlight-color = $font-color +$text-hover = $theme-color +$text-bg-hover = $theme-color +// code +$line-height-code-block = 1.6 +$blockquote-color = #6a737d +$blockquote-padding-color = $themeColorEnable && hexo-config('theme_color.blockquote_padding_color') ? convert(hexo-config('theme_color.blockquote_padding_color')) : #49B1F5 +$blockquote-background-color = $themeColorEnable && hexo-config('theme_color.blockquote_background_color') ? alpha(convert(hexo-config('theme_color.blockquote_background_color')), .1) : alpha($blockquote-padding-color, .1) +// page +$body-bg = #fff +$a-link-color = #99a9bf +$sticky-color = $light-orange +$theme-meta-color = $themeColorEnable && hexo-config('theme_color.meta_color') ? convert(hexo-config('theme_color.meta_color')) : #858585 +// sidebar +$sidebar-background = #f6f8fa +$sidebar-width = 300px +// aside +$toc-link-color = #666261 +$toc-mobile-width = calc(100% - 80px) +$toc-mobile-maxWidth = 380px +$toc-active-color = #fff +// Button +$button-color = #fff +$button-hover-color = $themeColorEnable && hexo-config('theme_color.button_hover') ? convert(hexo-config('theme_color.button_hover')) : $light-orange +$button-bg = $theme-color +$pseudo-hover = $button-hover-color +// scrollbar +$scrollbar-color = $themeColorEnable && hexo-config('theme_color.scrollbar_color') ? convert(hexo-config('theme_color.scrollbar_color')) : $theme-color +// table +$table-thead-bg = #99a9bf +// reward +$reward-pop-up-bg = #f5f5f5 +$reward-pop-up-color = #858585 +// search +$search-bg = #f6f8fa +$search-input-color = $font-black +$search-color = $theme-color +$search-keyword-highlight = #F47466 +$search-result-title = $font-black +// comments +$comments-switch-first-text = $bright-blue +$comments-switch-second-text = $light-orange +$comments-switch-round = #fff +$comments-switch-bg = #f6f8fa +// noticeOutdate +$noticeOutdate-bg = #ffe6e6 +$noticeOutdate-color = #ff6666 +$noticeOutdate-border = #ff8080 +// gallery +$gallery-color = #fff +// tag-hide +$tag-hide-bg = $theme-color +$tag-hide-toggle-bg = #f0f0f0 +// preloader +$preloader-bg = #37474f +$preloader-word-color = #fff +// rightside +$rightside-bottom = hexo-config('rightside-bottom') ? convert(hexo-config('rightside-bottom')) : 40px +// fireworks +$fireworks-zIndex = hexo-config('fireworks.zIndex') ? hexo-config('fireworks.zIndex') : 99999 +// Tag Plugins - Note +hexo-config('note.light_bg_offset') is a 'unit' ? ($lbg = unit(hexo-config('note.light_bg_offset'), '%')) : ($lbg = 0) +$note-types = 'default' 'primary' 'info' 'success' 'warning' 'danger' +// Default +$note-default-border = #777 +$note-default-bg = lighten(spin($note-default-border, 0), 94% + $lbg) +$note-default-text = $note-default-border +$note-default-icon = '\f0a9' +$note-modern-default-border = #e1e1e1 +$note-modern-default-bg = lighten(spin($note-modern-default-border, 10), 60% + ($lbg * 4)) +$note-modern-default-text = #666 +$note-modern-default-hover = darken(spin($note-modern-default-text, -10), 32%) +// Primary +$note-primary-border = #6f42c1 +$note-primary-bg = lighten(spin($note-primary-border, 10), 92% + $lbg) +$note-primary-text = $note-primary-border +$note-primary-icon = '\f055' +$note-modern-primary-border = #e1c2ff +$note-modern-primary-bg = lighten(spin($note-modern-primary-border, 10), 40% + ($lbg * 4)) +$note-modern-primary-text = #6f42c1 +$note-modern-primary-hover = darken(spin($note-modern-primary-text, -10), 22%) +// Info +$note-info-border = #428bca +$note-info-bg = lighten(spin($note-info-border, -10), 91% + $lbg) +$note-info-text = $note-info-border +$note-info-icon = '\f05a' +$note-modern-info-border = #b3e5ef +$note-modern-info-bg = lighten(spin($note-modern-info-border, 10), 50% + ($lbg * 4)) +$note-modern-info-text = #31708f +$note-modern-info-hover = darken(spin($note-modern-info-text, -10), 32%) +// Success +$note-success-border = #5cb85c +$note-success-bg = lighten(spin($note-success-border, 10), 90% + $lbg) +$note-success-text = $note-success-border +$note-success-icon = '\f058' +$note-modern-success-border = #d0e6be +$note-modern-success-bg = lighten(spin($note-modern-success-border, 10), 40% + ($lbg * 4)) +$note-modern-success-text = #3c763d +$note-modern-success-hover = darken(spin($note-modern-success-text, -10), 27%) +// Warning +$note-warning-border = #f0ad4e +$note-warning-bg = lighten(spin($note-warning-border, 10), 88% + $lbg) +$note-warning-text = $note-warning-border +$note-warning-icon = '\f06a' +$note-modern-warning-border = #fae4cd +$note-modern-warning-bg = lighten(spin($note-modern-warning-border, 10), 43% + ($lbg * 4)) +$note-modern-warning-text = #8a6d3b +$note-modern-warning-hover = darken(spin($note-modern-warning-text, -10), 18%) +// Danger +$note-danger-border = #d9534f +$note-danger-bg = lighten(spin($note-danger-border, -10), 92% + $lbg) +$note-danger-text = $note-danger-border +$note-danger-icon = '\f056' +$note-modern-danger-border = #ebcdd2 +$note-modern-danger-bg = lighten(spin($note-modern-danger-border, 10), 35% + ($lbg * 4)) +$note-modern-danger-text = #a94442 +$note-modern-danger-hover = darken(spin($note-modern-danger-text, -10), 22%) +// Tag Plugins - Button/note +$color-types = 'blue' 'pink' 'red' 'purple' 'orange' 'green' +$btn-color = #fff +$btn-default-color = #777 +$tagsP-blue-color = #428bca +$tagsP-pink-color = #FF69B4 +$tagsP-red-color = #FF0000 +$tagsP-orange-color = #FF8C00 +$tagsP-purple-color = #6f42c1 +$tagsP-green-color = #5cb85c +// Tag Plugins - Tab +$tab-border-color = #f0f0f0 +$tab-botton-bg = #f0f0f0 +$tab-botton-color = $font-color +$tab-button-hover-bg = darken($tab-border-color, 8) +$tab-active-border-color = $theme-color +$tab-button-active-bg = $card-bg +$tab-to-top-color = #99a9bf +// Tag Plugins - timeline +$timeline-default-color = $theme-color +// archor +$archor-button-icon = hexo-config('anchor.button.icon') ? hexo-config('anchor.button.icon') : '\f0c1' \ No newline at end of file diff --git a/source/favicon.ico b/source/favicon.ico index a60b5fda2456b262393dd748c1ac631410076efe..9365fae3d445d0e0f6ed5c0ac8e8cef10d367378 100644 GIT binary patch literal 21567 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 G>;D0-Cw*T4 literal 15086 zcmeHO%WIuQ6hGk#fr3dl-3g7>g3I6wcL|6t&CZ?Bg$w&9=q52;O3_upO*bl(QgG9S z;3gY!(?DCb2rUxSMK{_Dil!1X{(ke#N#{=P+etYI6>Y1lp?+TE%`+k|fCpWWDB6*UfX|wCFD;!1T?quOwgmn~ z&;`(KkPE~z+ZJ}5q?;;#|BDUxc=$7TUn+QmPPVZxlIK`jkw5r* z=pNnsa)j7swO?1h82`&%j^7x+5R(F1l<_!1UKu}%=MYO`lX1=Aa4ddR2lJrkUF7Nd zVcQ7qW4W{pULDgB)>9tV4>v^))OV{0Ood<5ah`&X|#&$yp%yyNbF{?^$3SdKj8rA*wOlrN@0M?dH1m<-25eeUqU zpWpXBeeD>J%CV1U9C?5F`h!XHwOz(Obusb$rHyfMU>p0$!_?bvcm5UUao)xJGp>qp z;!=ri>}xar9$3IO@tq~l)DHe;ZJ%??Io3H(^S0+dUjH%fwA=;$`u%4{`)_pqFy4CR z#5rSAZ6eUY<6k>x#+#T}7B6@u)5I;e{}soU)h3R|>^#CM8S&;`)ZJH_*; zbeJ%QuaG)4*@!9ldT9mv9;PC{u^;B_H`VSj#r0HsZ7`mou#Y$8pH)x2wE@2a#>?z0R^P0A9#cFw z%=;~PTg154@08EBHiGYFjNiTdocr&ZEr+RoQ0OC9z#G$L=DX1)K%zEmmq{uet@ z)%}NaPE3@cI8L*kf3C%oyng%pTYvxL3a+|-d;IkH`M=?Z`+XC?-+AUySA0Lsm#6-I z=iASTeLo2pn&x})g zmY-nC_C|CZ3zIP9{Vw&^Z1p?l3z%wnZPa_~kNvZjn^_y(`<;%j+S+Ij&eudVj5HnM;3X~J&tjv;~%pEsRjzJIpJ`Oy;V z{J4mDpaYRLmiYk^^BsJQ#C!|i86n5_NcbX21m7m%>m>Z|6!Ybio9j4qTsqF9aqB$j Vyl^f&>AdMY>bxGV75xrLtQ(^!B diff --git a/source/favicon.png b/source/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..adafc93f3afc6f46d840f2a50eb2987c159170ff GIT binary patch literal 21350 zcmc$GRaab1v~4%qSZE|ju*ThjySuw2xVyW%dvJ%~79a$72p-&n1b25m{hcxHeYk(% zKJ|XuwW?~#TyxFcQOb%^Xvm+C0RRA+jI_8a004wO0s$Zd=+9T@a&rIx0+10GQTJRq z>9qJpwCG0ll*TooM)hOyWy}ZRRfuAAXsvrkAuDFaKXJ=6M~q z2?E4lKA0r*$L`X^6qOrB6=hJUP=JCBVUU7{A)n%=F7M(}tNwTi9j&jTNwNgO5!}{j zw0#9ncj)b(IP7-@VbiL9mrf#+i2ncg;B*ESO}t_JF3sG_A9l_iI`SE|Ad*{io95d# zjj9(IQ?x?SjEBVgjN2r+py5O=dJ99gv&RjVEg$!gKpqJ)7$ILgWHjuFjsG=rPzB8J zLBPXnlRE}x@ykKGA}Mk|eBt>Re|*KJDA~7A`81xC@2oOu31gMs@*J_--kd(N(>EBx zIp0i|liUQTLQB6VVhTs2AUR=U^tSf#7=V}VbSLe<9;#QRYm}CT)0u4NrdEu|n;8es zm6b;7|ESNxSyZ#Hf%fTt~_HFsUnG9XvNseRfGfvf@fZ4wMbe6 zEnn-T1^3^sb%atr4|fV2blJvecb(Gtcy5=j3B=&Mx|C}BN>9hh=*+5;Nki|~CyEBO zWcYq@Y4^%vl91=+GMyx#V|%JNp&>K`CF%I``WIS{dKli|@*=22w)`LPd)(DX7Gf z)Q9E6=qi+V_R7ACnj@Q11z{k4Qw4)TjsrR5dl*IBqQhdLDgdFYe^SK3QxPQ3pkjd0 z3Hcst%VuL5urSfbhxNznr~1pZFVqpttvfbEC^#=ol>`wV^^|IYz5!G_#A=j^A=)z; zw680}G0eVKndj^20#6tH143>MMC0TT!*3$SpVeg|Y7bbjvBHgeRT=T3feJHOeavD- zm^8Uf0O=G_%v0tbiCFG7CWzv99z9c`X7KlZ$z(OZ>t5f?`d%&4 zuHDb@8_TeKP$?dZ1{OYJL{6TR<``+Qc>(Pw^-@t|WD2?<6=X>~P+>tRMG&yyR1iek zLz=||kQxvRbpi?9{0sl^$)8B0IlA(TNPkuD9l?btq6lH&WR$=UQ4CnFzmVF80cyqC zmYW8l5jT(bTyveK8+A1pX(y&W5{c*y%fI}r&MzK$uWzr%`R&j4E8LC+HMg`hrc_+; zLLnXc!qW_74%kW4pP^?|`CY_FcJ|)l6aWEwUC-iJBEm|r5rZ%BL4Pvb3a@ zGkaqN;wsf7`>Xn62*sV|+)+R&%75EFei6E@IBKh^dmA%;@5!$yWgVfQts(l)QL{5% ztv9(zNcg-T?(d}149X{sCsDxLTfyhPu zRtkM341H4|g~0VlV3I?f!+r<4`|_5L@?51XYZ>B$nL($E7?OfpX&l0!>ZW7IN9LDc zkHebg^;sU43j_6j{@moAFvPU3U=-2osxFg&m+?Ze?)Qf^5A@T{XZx*u-sQVnGb-v& z8z;gJ_CN%bkb|+i;{GFX#mRnUhVo?OC>aPNNq(Y-%=yTqr5W~)d7z34`$6RgF^)o7 zUYZmLWJM>G;tK>UuW0=8;3RYKR4MAgKq(NA1~_e|tOl!M295%T3J(yf;)#6l9rj0PFcD=%EzkPU`rWvc7iqPI zEYcT5y4mTB+W!8J1Y1T!uyyy2kE%oRwA)7WS6-gKETG~JJ%n<%o~`@!FYLy~#n$2( z>D%F~-9#PK0B>ODvLM4SdJ*4jNOf9R=|N)oUxq!eI(QO*38WG(i?ye%p&$*Rh!zqJ z$C3<((ho}B7Hc3HZbH?bfMes3&O)FXgRo(vwZ}r_rF#T?LG9gFAIFAw1)DG1j-_BG zU!^2wLv9eh!#QGPzxkK)@;uTr3%xzu?Vq(qcvDNQ3cgog+?)Jh39Xgqa`yg^^*uy| zGyAtsf`VVsXaPP^H972p7T`EX3{VLtjT(vx0!FgH)wL(eY5cgP{ow?wt|fwvz=A9S zC*B#$azzT5Gw{S{f7>-cUN*ku(mZ^spSmSZbz?+BE`@VswSH5+I%>+t^RhbEYwvz@ zE9pAlb^mE#gv=n2kY`JR5F@5Aksm^3V|epIh--vBrz{eK^F8RpFiJb=Ew1o2PGm)p zC1xZA@TUy_SK$HHP+Z|kobi5VZyy662z` z*4^cJdn5)>ENdpE42($t_y#P`jihux{e8X1rOsc0?@g)IjrxpdjgYH}j&K!n(9nj} zXuzA$r-W2q7<{_}VLlA&s3uVjz^Gor^lz`93ndcLytd466#$g7>q#4vGTu1zKztgX_!k^B6BFQQM3QXOASC z=hto?CmS!+U@GYi{k(?do*}omA~Ddt!hZKq)`G|x>cGF?ag6b_kq==z}|0wz0Pxz>Q8*`C#A1Ko}rRzDR!rI zEFZm!BlB#ToxSNN1N>F}?8x&fOOA#$0`I%rl2RtYTBRnGKYkM_;_6OepGuWRTh@uOpT?&bWgTLv4S-A4G3p+|Qq zA$}crgM(9G=tgF;1L4@lCyQroGeH#aI+#Ms+qRAGXE~LVK{9+JbIi@FNTGHR>bRDn zrAyCV$rnyj-x(+4o%rLfhR%oHmoNWj_2I=BPBdM(?Q?+_?7)mLwioBby}cfa0&omp zxjmYtoo`y_Ktib$S4RL{ZQ|!p@?&u^_rn0z;L6;bl7vxtSu+J?pcfLc#9Z@fl@vOm zHfyH^y4CGJHBqdMjT3RrG0}9iVRe5co9EWeNY7BnhfT>3Crd#J{4KJvJ&;HZpBY({C=-05UdZg&L=K{~G!ezI!dmr$5riW1{zShW8cB5GuWgp6D|RYi!f)7= zL>zgTJ-#8@+-}aU{h8@^Di{(_=NLt}lEg^M3Zk=#x(h&u3HUkyDgxMV7Mv}rTvwKR zYp}x*kj6ot@v-^1)fpt>og=SRbjN8RtjZce6k}7^XgtM%hffshI$@_+AX4z6HJ;a< zj@33A*I(n0G4CJkQ0QAx&bGbStBH>BZJufTusN$(r> zLS?>EzPF}nHL8B*<3)#qaUY%E!FxQwf0289=L z^#!t@Oz9}EpVmv3&!vFY`e-S)NI8``;uV5XZCW9?ZIPbF?mibrD;#ht(550ggnxaT zn4Bq48-Rgm43wmC)e)1N5Kd*6R<}yPy#D>0RnWP^VmDPwe`~=;>Qg3#j-647q&J<-_VV3>I!F`}3(Nk(OLdIJ&B_*BvBG_153j#N zDY`y)qXO>nAo8q@W4Y+<2ZIUEmjh{%zCViNi97(ok_Ci`6{vcwhV1+J4@udm6g7)1 z0^TzX7UpTz;WBDmo3CP7@Z6IZL{c_$)?-yeQhVa>*>DBg${90+ySHa^4h+UEg(3K5 zp|kU98MR6Udzzc!AB>4}n|322NMCf(6ib48oWM_St*0OOJ%r%;5+Hv89cRIa7?A)9 zI*}ChgJ>iP)fJqCNRw}qvGtOz9l;|FN$XkAD~@<%h9iwdn=38j>llf;%f}Lh$RWGx zI82^U?`TMgtZ#Xx9+HRykMxPKnxY0yJgP3l?yKw9>>guH9_Hz+v9KJgG@v=Bh=t!~ zY^uFpTpTRIE$BG`WL^ySQQ7>WxmCwiLY6iZLHha?mx{f%Ut9P%Fo z89YufO%*cSyPsi(5E3?E$N09Q_Ud>d%WNX$+#(^ix`Hw+$|>^$r=+UcV}GM$wm46K z8^56N8p+Tfaw8xvGNqH9rQRacP7#5bCBI~*>S8jPV`7QqUG<(fvnOVr&xsBOfyDWP z3Akza*hZ?~dPE4N9Pn0gMIk@z)D?642BwS4m8dAd-s|ly@Wvnh!Eb6HUdj_qk62w) z!eUSkh+2L&YH6ymv|k{nOaHfWE4u0Rc(d0LARQ98j}dg7OasDci3{f?0LU`{GDi$u z-IYi(>2D_Dx-$4yvJ)4Wn1vJX9_&DnEsUHgE2-yxZqKnfeL}b&WmHakyXh)~grRwp zA`9%wvZPikt96pG@S(U=SplW-7XuVUYLuWMrSJ%L6Ove2sLw@>Obk+v)C~%t>vxi( z{J9ndiGpOt;^Fc$htuo888sd zpj{1PwwSbjza+K&b@)VB5j77X9ylVi~@ zBUs59Q^C#oE@>pBVBQaO)Jn#1?cgw=?`lx@&mda|^jKeDrJ0DPhO&$`3ZppL16fYW zQPmPiNs)AkE85W%^Y2|&X~1>+AJ}YSu{gH#L|H^n%zRWq0?)x(a?Q zFL0x7DmaiGK3`S1NJc=QWQ68y;qFg{n4_Q#`OwJwdseF9K8<*=3*0R)9kn9l%8$DQ zUwzR*c=Cd!VQr1&8vZ~NC(B+qE&F(=B@o233BMViZ}~PY12^=$cc==CCY0$c4-)_K zU}1vCScGX&LW4w8Y=KUq0L6L{SpW*8WQri!86DB(^^(PtNe8K0TA3ARN@Oxtu%rkD zG8j47Tu7)GqVkuisf;12S}qw*vgA(E@RD<`e3Q_>IQ~IBvS3>H_QoofQ787Sr2pWE zK)i4&>T4-%X=+HNB_tT&4>I!kFH(PxMpD~sy5aVrXB))ANHgF}I~xR=qCrb^c50Lz z@^|bkE9BqbU5%t=0oSn6wd5CmN^BE&u`29*z%X#6r)tPX^a6EPfQtyC!cUA1MPFMQ0zz;kW zgoyfb2U^QgtYE8xn#h2)5Jwo0P$0-S@OsaKazw}lI6xQ*8*J>p`XdtKnx-B`7aJlo z<gN%fTN&BSs+{%8Cb6SusRuD!o20Vp* z)~)fMdvk2VpG3s~>ZtbQ7xhH$dP8Gk@>nr(C(%Gg7L71_Gh-^bICl69%$^qrKqI8u zde>GN<7yut-l!TM#Soz2{7$iTng!^E2kj@C!H1iZ zTHrt{x9F{%xKm)H)Hzu&tuPtzXi!-%P*VWn+KaDb{E5Lytw*;$nkO?_d%TUdh$lW4 z%h6GsOcZbO?TisK3EAr)O(X4NNzQuC{j`FDLGL4M3I%X8)mJHj9KVtLoSVCESPJ|& z@sr452nOrD6(2nV3v4?G4`EAOAg5%7p`vF|M`#`u|N-Mr%q4b~#gkCOZu^?e`UT@bi!P^faXMN(mY~;xp zD6IT+WscGL=+Es>UV*SfD6-Re>KQ0b32n9D8({@n*G-jzio}wWIsS>8M_r7mib_`> zwgH6yx~k~jBG&^7qv)q9wJt=_MF?|lJFD0AGnP*xzgsJM+o-~1a81dNH9EJNv`WM* z%<20k74YP8#lk{~E67z!FP^C3!gX$n5Ot#(a;`Fi9zL0Mbh077+ za>rtY7%cAZLfn%b5-4o^8FgNC{Yc!v2moaSw7qdEi$X?cs`nfOROywMUFC}K;3kY9 zPFpje8TR*Wkp4k08lm_!0}%W>@%%id#`qGFP&D^nJtXcl)VSrC^{uq=e27;|9uUXl zM07`R^d+!AXlmlHgP+RsXR|_FX2~XTXhH-n`~rYcl$k^{&~`k5uoE(Tu@sa;Xm#-r zSBxQ*WH+!SB1q;M@pB(Ujt-S0it^?oLVW>CV24Iv;g>{gO4jpKp3?4dfR1bzfwXEq z1WsIjlFr0l;yq+3f}qV&4AIDih6bQaAMz(CC@Yis1lK9&1MGiIM4<8~ov^+bJuxwk zisE8$d;&F*uM>#+htV_I!-RGq#kaJd1!lAbX853ScbH(xfCX&-;izw{qy;Eg@T9`f zR<#1J4zGNLa!H>Y9|Z?dCOnY(7V)PHX7u-7Wrdw_7;op-gNa*c6c`@i(^Mj?T%CUD ztCNnpkW;{w03~uGId-|{E?3_UV~m@e{<7FbmZ{n z_kYcFH9%C+gIV`yna4yHT9W`X%K(NkMnAfM`WiBnuhh?oz&SL;lzVwy+RNZWI01y<9(fE(3bJZJZCWkxGCDB+sD^;Xg^q{%L@h6r^={&@I=|UF+GI z0}EBj<2w{!)e{sDBU8d z%>eQK;J`&KoCIpVb2fRW#tRM$at*T6z zNPD>o1&CwA8o|M_g2hK-16g3uMIX9i+P+9s2!kFHz!U!OM+_sXx@Ill=F{_kt~rL%*6=!Bce}THN_4zXN=HPo2(L?{_s$kTLM;5I|vcq z#0Uk8M6g&Vtvj3>ogp^^8kX0mV?Cc`^JE!QA^IgG|ds`=E4mQ9D z((w^7gArGdzT_dxh$3Uwhh^U-J`A|>LO*dNhT#OUMeZh{x&{V=$UxvHV#4O2O1avRnlJrNtM+bIo`MT*krHoOz!qqHvAMZ&Noyta&!e7LCx$lbnQ; zaI_`I>j?|qr{{M`%_doIdMGiMVGOL-tMK)iht4jXuNJ$r>lnOk67A;H4VL62=h@h6!i&H*LG$H4ucq46iN><_N;Y|AHsY zsu&rVOu+hwP6iTk0+MY+9CIo+(q~l1Z@WHHKxzAzDLbv#dS9T8efxw#gMGi&xbHt6 zC_njJ2IuG`!V#-_Kh?*q=e$~DLxoPH%h_py7`h4C2BS4c%k(A3i7>wB0d%i_&`j07 zh*fPXZUGz+&dM_y)xXmYVo&gs{`p0$e=0YgOGz_OebIabUQu}~uXs%XK<>rFgYq+8 z6($0l_u$N}v7!z)atvj$;l-N&l5zfZ?4Nzi%X=@zll=6kgtSTKdl*dyGvsA``God< z-JtX~elEbtn&k9>C^S$Q{8-+)+vw{zor7481k@=Xp(t?YDu5fVsTASl%Pg}Som}I& zsAP6d<03U5^YE%lR$>pZN5yc8WWji7l!nBDp9H_w(Y`b}#ik`s44~C5#6N|Av6)tb z$As?c)n5Di0}4LVA6!W$Ty)UKaz3!?#Vq z;0rNy4j(Fv*9C07KS>ybZJUW<$iI1dN=)gL$Fb;z<5Sf2=&d*0k#tkS_p+W{@Cs5t zT5^z1jGU8OV+wO;?@OfsJn_gZA79+bUZ~}$S#VblT+3mwKesb;E36G(D#-3X>F3DKMK;K)_)EqRN-F z6^Y`I&fy9(fccIWseQ%6<+eyjBMO4-#sAGCkjHjufXxvbaGCL~DKKcCqFzP>N07p7 zgq_Z-G>v6cD{iWLVb3-pvHwNxqp?Kk{$+~9^gLIV$5j42Bevb#Gws0z|akz z77><&?F^#bP3bQ0CsxmZ1c>J+octQRRnX4DY0cIB5CAn?&yB{Rz$%x<;8UX6>o%Xvl)p3QM2gP1fyCtWxg~f)E#*RXnUS>dRPFh=$bd2sz4NxTNV`_i&zV-@*() zbuUXpXUBRSJ6!6s{8^H(P@d+J7bKA2?QSwV5`y@?6XkQ>>HN-hW@h9P4w=%Wt?iv@ zpfTm0&OMcgn2)MX3aQYU!iI&G_2ivpKYtfal%^Q3i%MBhirEPB*LNKhVRo%-36)65 z#pdG&XdS3j6M@!*iYE#>ccfoh5hSgrR3u;+lR??9Plrm6=^Oq-_ue>+PiTWI2^hob&s=zjAdt-fL;xFV#2l-cwMCq@ZbgfADIACCW4nl$wz? z6;`{U!k{sX4N|S>R?R&vL`;+BPj&WD?Rc6}L)6$o)Q`Sh_pHXO=d za*rgZXog^v4BM^8(hI&?S@bt8zS`~g^pKR7a!`#p)4lvRvX=9Jphh`xg_lZ7b^o}p zC)v0iU+m6f6nbSB$ICNA8LaZ3?O$@H)yV@Lv_lY9b-pswgIBJ)heXPQ~tgE@N){mVwh>?tA}cc)ud z`EQ3&^IEpARiX|X2G*J5uHKdZJ3vnZM8R|yL&tP6QuqAtW0Su3UAQ#l%%k7V`Q_o^b5NKpOh)!V=3EV_iHI|$*j=gy>j@SLLtat@u*F{F0|Du zYNe?_+?ETmW`Tj9onDcc2Qle}kEb33>Ha&v(jzo$9$~8z-?b)2zlRC_XF(Z=P^+7>PaBLqFOWUak7w~^XHEtvt7nh7JZP%x_NqE+xgVWB|U`txbTh~c*& z%mw}B-0CCQU$=1o=^4PGf-h5HB;Fu05~Blh+YeZ|?c=bJL|(qB=2PqX%U@sU$Cx`$ z4EPWc-qa^e@5i!mN~klSsu7PUZd9vHUcdRnigraJ-W$1RVjtg!i{gaQTiEAbf;cTA zDyw85eDPE37rX!a>Ei2P&7u~&xw-%0PH%{iljZ$cFS(GvdL>l) zqF=Q=kK*=4R8eHLLMU2ODWK}0yVbel_9u=zS9Z8QRueh4suUtG^D;%6o}U7X?+7I` zllHF@`zqy^G;6#vs7Ax$=|8bZ2WHT*bFQAZWqJe#l~E{`;kiC%1`FjXV8)M)+PVrZu1vL~y_=)J+rWKAq2;o~z7|M!EZ;!3M;*a}MULX?5nBorNzA;ATk>U1aq zL(6*$$E%~;+hej8iXK{}rF_IR%B(M?XR-`HYUu~OSAU5qDeJD6|h%~AQ1a;U8y#b?drlR;El}CxD@X6K4zbU|? z;?OlzeTP~6y+gG#`6<6yx))crx%WHj4NbY)0D|w8N5g|z0?&COi)nN+p}dwlk$kck z&`DNBo$sPkMRp`MbL6qj=<%Cu?OORj?i$MfzV9m}vN%zFR1KAo7uR>nUOhckPAw#U zP1|Pmwy@_u;?%oSxo$%GR#xWftJDWy+^&6L_I(0nDiIC0;Yub~HY~Gi341e?AR}G1 z@XSnhd6xn9nh;H+-J-$6@SkbdQq$t7smG`ATVu`*r_uWy+1e>uQwc0u zU=C~%%Xbw#np!ojR!Q9Pm$fDy+-tmE8Q>5bMsubo84NH(jhzt& z3054MmzP@)vQ#G<>0)Ks$CYRKe@))O0J2sdwvmrj=AV_lUleIFj>LI$3>AB-S$X@8 z?K~XPkCq(9ZI?;%Dv}75e=AdBon#{aK(NWrEz~D&Cfxu(K~pd#fQ`6DOy3Zt&e5bP$LaS2vj>cV${hzA*N4RO`Z67M_cKS4MV9hYa(i8P4uYBy+cM8ccT~dwy#F&XJ0K8 ziBqVQNXTz9XDKdhHk|;Z#yOpfM>({muO6U6h$H#pJzlWZ$uoT z(~~0~Rj$|wG&Yw&nbFu%0;`E<_)y83@e|3WW|cYvA^*JrqM-!h4(pwZx4aaoJd3y^ z+CGzanCIUxfUs)w=_bP_?FQ?{ZqMaWsJAU4=PulEt1NWfw`>|)r*KO(H`9h{%^ zn+n&3eq21Bt;3_6UK0r=f4ohsJksZ#zYDoJKTh6XilO=~=^*H}wM3n8w$c80A=iGJ zIbyvCjy6$P+Um_Rz8@ zt))>=TIcXSnffU8;pCLh>4vhxbq|8{dIawj8LC|FP2GmL7+F%q89t`vfJdaw-a&3~ z(!rNP%dbR}siH1G8GJ8yLBMh3V?Q}JkjW>RK=PR2lfTw_wDeYXJGw*K=jBQK^R{ZR zxJgQ-W5`&nK&KOWVm3eD8tllSZ+uX+@YqP7kpCBHq&wX~8pv`{zTYOXSi9lAcQZUm z!gDc``kc3Bl*`{1;rWLGuG^8(c2r&aQ3SPaZB)x)>2s&)U=}rR`%_o-;csYwEtp9t zL~Z)6WwStP^|+3kuF&cT*WXF>{r?@F`gjN#tCz-uFYV#;!Qj503Qq5wJ-(n5!k-~le`6326kl)ye7orjSOt=<$;u?gBPTrX8mLB)TeW_h;x1E3L zW_G{vRbz{dx~{SO!w2-NHDR~jwNc9Ff0IMJ6ZGhhQ4&hybMZw->XKz|TeEZXEO4Dm}-$T~ldIMO-Pp~TOTPj+*7G?X(;=J8FPj-g)^;fRv^pu3&UTdSU zn5VcKHZC>FDbSw6?O?M)#$V8bP2pLa|y#iZMJvt(cB?c|SCo4%J9B3ei0{gk>A zjy||AOUY#?)zZHCBWvj9>3(N4E}kYyTFu5EE(5Q%hl^1+17_Eo7l;0FLJf6Bd5QbA zez#A$X68>vS|84zC(4L@4o3Zygvved9{9jC_?6R9qW8wr^UcaP40sLCh&Yq3uJ@_( z^w%9mS%{`OJcj1ZYSBeppb`$@mekAjo13~bLNC2T^96M*8eiN~_{@#xdu9sxnn{`Dc$8XQ;^+=5rYD=j^O=k+&KTFsdnzdr4 zS48|N^uINKL0tQ>8;X9*CyO8{Na_t?^!1eG9V@r%OB8eVTc={yXq8r|<%?`;U_@}P zSD?#8hRQp!E*LnucrK?do*T574jPzV4?56Sa`u0BMf%MrQLOnVy_D*0;tejA61^cKp1_QQw=)U}xzg_|r7Co}f?Z182jV@wgsrl)9h)A=lL;ISy~n+a|`^0TN{bX z_~jIpQD2`9yZuf(^Q2b3%Ts$cPDS=$gay^QveH>+8m>?t0It)Tp$~-sBEf`42Ur_U z<=<)2z<3t|7DmPTdTR8Owt1PEZKgL%y|vpB_c|7eghjVkNCSn}oG;uk!7>7O{CD+qlQ)HKqBD3Q|dQ) zdc^m1WnUq9J<6j~@T~$*w@cxx-`LR5fQ%pR?Rr>9c$&7P1?pv`V)I7kA~;BQH6+zDln7OxZ|oODA}7=3e; zjl=UHTNT&WyAorm$#jl>`9-5{s~?jlx4OGmVV*YO@n;+E{7nvjTw0gh;R(uDQRDtljoz|0^=n`}w}Eo0}*? zrursZjAmirXx~ZeuP(>brxRMX@77R&CZy_i9mzny1xp#of?96F#hK^1yGio4>2t5& zXff2OdeD6f#H1r#WR2Y=sEyWg`0H$LdD%dXOtf}y(eSwTZ7QXq2w|rEWp{l62u~bU zEFH7$XjQ}SqG#oOwJn8yrgwjZ(vCv@oL{8)dc%`x7pm-vX4}_9(puHwH1csF$p zlfpMqYbesYNELP>Okx4KwyUhMaQHvDJl_kt9J3_|{q?#UW^!i2{~$1%FtO;%-}3aE zkC;Ta zP^+ist_Mo)nn4QXqm@E4Ka~v01F57@kMHD!Pp!-CK<0ElzyD2-ollaZ`cCxOX6qT1 zn-A6NzH+|vaUQWu#QL}UkMUdp%pg5!2Q=MmAb$D-Y*Arf{oXR>8D;> z{)4r7o@39Hv^v$x&QiXwr$VpAl>Jq2%(J6JGZP-16`38`1_heA%dRI=V*xkC&*z=y z8)xS~Xly$qdd7RU<`*N!nghQ7G(IgocXPeoQvhHQOwj{-m{Cr?Y=F7B}vcI$y=Q%}ObzR0&mE+5KCnnEZ3~CfftT?GVSz}KCwQaX*XQ_+pPyg-4U>vud$r|&5KO(j4cQet-dtbiL z&1rzX&sI9Xs!o&%-$xMfAQ=7XU^Q8Qm^UHA1 zd)sxyea-6oN&nRsc+pJL%^8~jrj|$Qv!~-i%CT-kvnvNaK1iq7Lh_JOoUieuT7q7{ zW-H?Q*9RntdJo258+VPj6JP3Hy|pHTh2~th45fZ9J&V(UmZpUlZX{BEfYHRi++ReIW6?Odxr> z6RP8Jx~S*+=r8*bwWcM@AYe#uNULt+rM*>jXtBoDNWYeFaU%A3sp(m>rhUh;cIwh5 zw-Z+Ab`HHesbaF@Dje9y?fk>zK4f$=d6#7DBX8Glua~)1jq>wI0L&x@{qBri#JxaG zN9LpwNNi(^vE`6jNKLo>@=A!o{qC)%@{mpb$+4li=!i8?%Xj0Eag9Cy~_Ul6a_As>>QIE97#@C^V8QdE5O-v(_~U{zbZ2zw>6PF#UZe;(o2s z>Soi#L3dIqGun*6KFYr3)gn)?%X=Fa8o3Fym1mRt9;O+~+{mx64Mnd);i>o|xb1@X z17aH|#6p*-GNm6o<0a(CT9U#*NOlYys4i12K(Zd(!OrP!_=+P z1i!t3@QE+)5QCF93ys;+M@QvK>m{Sj0I4rf0q)4&d$)Y;LlQN~Th>B(j;GkKyIh$Q z?;U%+#R(-^E#(6m<6s%1({M%tCw7Dd|!!# zt{*O|+2DR=Jhts;>9lhmlV>^--utFT_MhH(<1X98pTBUUyu^Z3v5ZsLCQ9FAGWj zm^!4=(i~tpQuo#4ct|$O{^g|j{?(*Z(B&j9tbjF~nz)NPh2Hh$D$S0I@K)eH55PY^H4$Dp0SY7L(QeF2o zu1)6FMfO|n%8e2K+h!*bvwP&81(ke`+E)Yq1H~*s2KzyK}0TBK~k*E7`T> ze1G6O#PXEF39K$pvRUkIvKpH|4gyAG~Q9+%!G7nO)rr<~o?p*Y=zrK%I$kNMzv6#%9J<+1)Onl>z-wZ-!uu zZ8pn3LmyhII-#u1#!>ifQIR$71cSirsK%$;(R{nkvtR2hs6y9E_iu_m#W#V(FvkHf>zU5lf{7NQ5%P8!uGpHC4sBSQG!&7_Bbo{BMubdJ2FUM z#aUO7KuCXjwZKn{*gOGXG-RVm^*`)~&S=p2?|RvHC?(7Od)2T(v185f{hD6p*MDJy z{Z&`2`{HRIza)Rp${gw5zNhS5WnP%OQai+G3gIfF->qQQciGPEytRG|?^ND2dY zw|67Up5O~j^x9xB)z;~54mcobUc13soUfV{Ga1Sci-ZN!6)!b^TKwy-WwusI|3+hQ z@ZiK7^cYu2wcVSucbz9JYjEu4gs6zhq-&)vw(Tz16tdOF%IJAql}*AsKw6T%rs ztURyEp`Tx7gSeoCJ`Tu-I{TrbAJ)_%FvC6-OrR$IBv6l#dEIKMsn%4~8aUoe^ zX5~Um7*Bz`k5=$zQ$$=CMEdOjEQ$ex43|z?5R4*8gAW(#eOIY60~XBzlET0NL1;*n zq#*v@Fcea_)DjdAwnT7nFbV=GUg#7c8D5+V&Q$mY1mqzFu%=%nD4uNGJ@c zr5rYh)N=hA5DNpB5;}v7#~3oL7COCMU>d5-i!3S$7!RCDobq7C+95*b!(gQj1;dKE zqA+=buSrO^$hMVFCGUF3rtJ2|L?#QP@pi<}kgI2#2m_JW)13MKvy1Z9{-C zKNXICjU-?z%y1q~;^@tgS$?9hTUpWxToS?3t{_}Y%Uv=y9Z8eV#H3ZF7`#nNa0u|o z=6Myd`zamuO`7rU5dhm@wdQfYox`^OCpU8yQT2O}B{EnH`zzxQo29V`S%@fy<(h2J zx}@xRILluV`wTLn@)F@eh`O{aDGdxn6q5BCABD2c8PDcdBn%)0!NGh=p85utrXoHz zUT79uNQxeaJz0pY2N?hXQdML-Pmm0$GTdT83qcDWY6bRTkiX*oOS1mjHLt?L1#mQB z1?+&{R+Lh?e5AY@5MAbn7XSe39gR8eJoa?sZxSrU9A zstS%@j`($pp!=JiW>8<4P@J}dQVF1I6(wGSedI$65|p-gL`m)Z|!P_e+GzGfub;O4AUejG5={szgr(HdMV!d3r zVR@EJ#iYt|z}H<_JN0VN)qI%UjcpGW!|Ma@#G@1dkO&iM5?mhtNQSYT@as_lytPjw zvD<(JptVb0xKG6Ojk-$ZbF0Ok)@Q+baDk`H;p&O-G^6~VX0H34?FZ_9LewmY(b&6E zMUBQNMYN%I)gG-)jW%k>9<5co_TCglDWSHnS$ou0)SgXgkW}${-@oGh<^Fu0``qW8 zbMN!qGfoV;`e)N|(S(tO^7E?eKOq;hz7kSDdV#P_%@Q%ITRnSQQ|Z5%B&!#h02|hC zadA1P-fc*;t*70-qIn#uic+2F=@+xVl2<3dqu34UCJTncnG) z1Wb4^RsJF>7;#5Nk`+oN!lHIM@&&JGZ$20qNqb>6pU106ct6OfSav^*g81`cNCyq5 zBmbS)6A1_fb3>Pds=fHuzX$3^0m;_OZ6v)*q#VAD)tI2F$*+>K7MXH{G~aw1rH;h= zd1^2FZ`j`ur0|$0l}xOh3_IRd+Z{`oyd`brHLs=ROsO8A3H$MMe|K%EE2vc7JUX$= zB>wx$ev*`jI(kI@rb`%dsxO*DW!QCML zei@a4{;2}BsrQ@v_D17#dmN}0GjaSn(A5`;|;BJ@r^z(UTFacGi+)FCxU=1m(r@` z%W(OG9(pGWU{4y%*mEPS1N zHkV`H*yRkRr*I#OhEgzlBWDCuI>oO*kf+ZN#9%bE`HY##mnWf~V&K~`wor;vZ2O)W9IZtbmoyolxUX2?UUE~`LTZ5S z<p)?el5tM)7#V9-_4}Vgz0DsD5#W$DBWe?vdwDPNhQoro z5<#tkz%|)Bc=rWf^OzK<5~cYSeLM8)B@@g|)_u4>(*%B#xuHQ7CBeIOKt4ox$+%{h zTsSw#6(}L`h1|FLh6yomfjMF3t69n zK3A2EL$0Xr^y#do)ZBO|O1h9={`S$u9iOfX{Uho9_uD$XX^a(9-z-_mP`M@`2MXlS zcjgAt7-O3qcQYvARD;O#NvCWeDt9j_%5T(G#A$mI4 zy(lB*+J_#)O7+9AFrKr}&H!%Imi3=YQ6bQ`M-9z!fYbbrt%}02U4zy&W z^Q93H3-AMo50kI+PulYFXsZ9Dj=OIhcY}!q?{q+6tX2Z9*&Lei%>88o9*r!MlY^+< zAq!4^SNh$OMHvw*UO(cB*icGXyPaG}4T%5-+LoA`4n(?;&Xj=K_;>ZpnYWXN#oz5I zPMma`p~>nWCI#M^LL5mMzqvQw+{S{lGCp%tKu8hb0!AKY34o_h=e-gFC9OIip^GQ6 z76oELJKq$raf*2{(T9QyDIoPE6ReZ2t|)zdD%!V*C<$h zqX$wve&5E}SVgc;HIkBXE>@QYSQAIGgMxV}3aaOGgJH{Df?y;i0OhVzb7n&*1Fp9r zy`X$r3f8D)L#FH&3>}4bD3S~)3Qhp^Q1Lc%kCTyb-6nt7V%0|t2ABa`(h%iLP2m0T z0fn#=h{w~n`G}}w%pHp0#sE4bD9JBEVmFYhB#A1I%{y91#>@n>iP_Pq3KYTHft_Z4 zwcfAX(zkPfrC%&IG2(s9Hbx-PG`rdC8CH$nPrnD1WBMvQ5zj_Q+p~e?j3sr-Xrd#( z79^@y(A?lpH77wZjp}F#zrit;f&a1jXgR8fK0vaeyv;z;v+W4=fdK>$_KvewVDtQO zTy2f^t<)WiLD@VxRK-tYcrzMu23qbxH{A73zxV9qu?MVorqQ(>`x{8z504d^tvqaO z!!^Vm%5|7#IsNNU74A~AWI4+9G5Utzz<9i}U8U}CroA|dYFt+JK`SGwjB{4p{v3*8 zu`Yy4vEM5an$9Lk!826u8I;4CaZ&#FNb@P_zsY`db|~G;^cCru&U&`%cP}n?Z^h^1 zpUp8`z~7dJc@Jp-8iV&7j7ki7f#o3XrE*Mg0?ZpT-IS~0Qj+4KMcwcf@88n_L4PN6 z;aOA}f!yPkrUoZP-K1RptBET@GKo8RASBvk@W9&Ka4;-0N&d-fntGU-M%eQw<>?v; z0{BodipSGt19m}@DV#o2b=i*!o4w{4l)k3lFPpTXf);@W^Td!z0v z_5<8}au$1&CAmO{1Z97G`*OYO&`6#LQyttoYGWWJ(7Z%HL20#7D~2|J@EwVJ63_1M zIaS+T(>GNXXUY5=GApA%FsnQppw_BlLkInnZ(KR=)LKLncQ**-IFyZn%Y354os!yO z`8QwFE4f(quA*npaEtnbbYqEP&;wOXwa2MYGHLE>IM`0_^%OV3(iFe0u}DTddteu) zEnvNW-9W7-VaUJRwXnPNaD0tHOAXwnL=TtT#vcDKfLs0jmjxyrFM3ULy`?AW3WF{Pl~NLXRQ*Vdny}@d#W``tVi!| zl*y??Xa|=6+1yrWx+3PG0=%6@uNq5TNvj-QE9#i7^pFN;189FQ{ymj-N+VS^eVMZ= zPjNr`(~Ey{+P(+halaNWkmuJeXipi@{3nBN`@|7-{Y&OvVoiHZ1(AJ~Rk}QjG7sNa z&)WJPB*Ei64}S$-OlNlGYU6(l+vU|5D%h&TcU~Sfe&WmVGpc^xa$$40-x%0b;M1!b zU^8@tF*u&Z+IiESc%SiqXdoMU&*+v>zwg6TmqP(@jD$OdZOTmODzFW0OH`4!6ti+(48a5Qf!|}PuQ^#NmRlYUz*=}0423sJ=5!-vt-oNX~ zo2Yk$lK7l+2jciE z>h+Jls-XF~NyF9u;~8nG@9?KLPlAXUT>ksc@VI|&N-iQ;K0yZ)_b=L#*yInA<^Ea~ zUD6_zACv3;%xm%{an@+Z)5-1r;PBTe_mQP^EMc(~t47`Z5D7pQkrBD2%6 z+Vr5Tf-xuD;CC|YPJKZa(ZWS|GgjTgNiaYEJ7V$LeEPC`L4Q5Bl&R{6kWr1sgQ)Po z)?Jc6+-SFjCeljC=>-rq%jG!VouV3-AGP}$<$bB66??LQgfXU0xv`z{%f9s&5tmyj zuv7nv^VQ`@qm1Y67Q*VP->VB6I9itCI9i&`7N!3+mD^3{I(*uzGA{gka1pv~_zu@1 zvd;JREQaPpF%TcSg5FmQEJj=Z{)oTpXgnGv<5druap~w^^x3`;t!i=HU(ts<2kB)w zZLMyDe~(H^d|yOJV2-1TBIq6lHvI_;$Nv_8aQ{tN>IUJFF+`)f(37Llk3$ZvxPbLq zPr3$ORx~lEV;~{vGHWi#WLukF`R(QXmcDRu1u+Q(2KQ~bdipWEnU^>$cEkKu{b>#1 zwN4~O_zTk5O6*4tT)@>_sfgTVWo^lc*|enR<7?R-3e*O0{uy}VS8moD*lSLDN=J99 zh?tvAV*Q1qpU11=mxLWQMWre_5$igO^@%f{2Q)M2g~^7BfQuwaNzbQ7v&A>o4J4_n zcj5gJ6Lp6UzWz;Lb?>%G=Vb-jdSER3HwbfsM?aIcHXOKa)fMfuJmBWYu7)_|Zh8F8 ziM@jypy;W{a_r4K^d0G|TED)D2UeGt9QrkshmT&1cVGtfwXH~V@dtz4EWRdgn{6VQdy17<=0RBGg z({FiLvDKr8&#D*B!vZK!B*M{T6eFA~lcGAq>7Bj91MIx-V|Xy+ z<{#M8PZ>PYLniAFD0ur)sAzysHvq_;_jhc&&hGl~GWF3*+A<4}%fkVzv8gjZ xw~}d>ChqPnNxHoMb(#NXHUHn0gFRx9>sL~~h}dUZ*ZG-%nzA;k`jKVm{{R;X!CwFX literal 0 HcmV?d00001 diff --git a/source/js/time.js b/source/js/time.js new file mode 100644 index 0000000..e69de29