-
*****
-
Explore the different categories
+
*****
+
Explore the different categories
-
Website source available
here
-
-
(unless otherwise stated)
+
Website source available
here
+
+
(unless otherwise stated)
diff --git a/_includes/page/footer.html b/_includes/page/footer.html
index 7773c564b529cfd425fabeb7c0b15a262cefd478..92560d9215837d33149b2c59f8e61eed15e707ae 100644
--- a/_includes/page/footer.html
+++ b/_includes/page/footer.html
@@ -1,8 +1,8 @@
-
*****
-
+
*****
+
Written by the pseudonymous {% if page.author.fullname %} {{ page.author.fullname }} {% else %} {{ site.author.fullname }} {% endif %}
- on {{ page.date | date: "%d %B %Y" }}
+ on {{ page.date | date: "%d %B %Y" }}
-
All content on this website is licensed under the
CC-BY 4.0 license.
-
(unless otherwise stated)
+
All content on this website is licensed under the
CC-BY 4.0 license.
+
(unless otherwise stated)
diff --git a/_includes/post/title.html b/_includes/post/title.html
index 80097cd5015bd7b00d3fec3c25e48e9c061a38c9..985e761136128a6fa165a4e62a99f5f3a3bbf776 100644
--- a/_includes/post/title.html
+++ b/_includes/post/title.html
@@ -1,4 +1,4 @@
- {{ page.title }}
- {{ page.subtitle }}
+ {{ page.title }}
+ {{ page.subtitle }}
\ No newline at end of file
diff --git a/_layouts/category.html b/_layouts/category.html
index 353308db8e79334891f8c324ef300171d7f65fbc..169d837ed4e292dafa28f88b9d5c5c3da9300d6f 100644
--- a/_layouts/category.html
+++ b/_layouts/category.html
@@ -9,8 +9,8 @@ layout: default
{% if post.categories contains page.category %}
- {{ post.title }}
- {{ post.date | date: "%d %B %Y" }}
+ {{ post.title }}
+ {{ post.date | date: "%d %B %Y" }}
{% assign empty_category = false %}
diff --git a/_layouts/post.html b/_layouts/post.html
index 10fe103216891ee37cc1e835207ffe33a0e50bfd..565f16f9f38905f244eb9c887cce07d55bc48a76 100644
--- a/_layouts/post.html
+++ b/_layouts/post.html
@@ -3,9 +3,23 @@ layout: default
---
{% include post/title.html %}
-
{{ content }}
+
{% include post/about.html %}
+
diff --git a/_posts/2019-06-03-excluding-your-site-from-the-wayback-machine-keybase-only.md b/_posts/2019-06-03-excluding-your-site-from-the-wayback-machine-keybase-only.md
index 713f65862a3da5216ffb4526319267f5e67c1ceb..486790a86bd799336ec4b27498462841ce34bbb9 100644
--- a/_posts/2019-06-03-excluding-your-site-from-the-wayback-machine-keybase-only.md
+++ b/_posts/2019-06-03-excluding-your-site-from-the-wayback-machine-keybase-only.md
@@ -1,8 +1,8 @@
---
layout: post
-title: Removing your site from the Wayback Machine
+title: Removing your site from the Wayback Machine (Keybase)
subtitle: A quick and easy guide
-description: (Keybase-only) Quick guide on removing and excluding your content from Archive.org's Wayback Machine
+description: Quick guide on removing and excluding your content from Archive.org's Wayback Machine with Keybase
cover: /assets/posts/archive.png
date: 2019-06-03 12:08 -0400
---
diff --git a/_posts/2019-06-04-removing-your-site-from-the-wayback-machine-gpg-only.md b/_posts/2019-06-04-removing-your-site-from-the-wayback-machine-gpg-only.md
new file mode 100644
index 0000000000000000000000000000000000000000..5d482dab9eb2883da96397319cd15c74780fd00a
--- /dev/null
+++ b/_posts/2019-06-04-removing-your-site-from-the-wayback-machine-gpg-only.md
@@ -0,0 +1,61 @@
+---
+layout: post
+title: Removing your site from the Wayback Machine (GPG)
+subtitle: A quick-ish and easy-ish guide
+description: Quick-ish and easy-ish guide on removing and excluding your domain from Archive.org's Wayback Machine using GPG keys
+cover: /assets/posts/archive.png
+date: 2019-06-04 21:57 -0400
+---
+# Preface
+If you simply want to remove your website and nothing else, read through the setup and verifying identities sections then continue from the [For domains you own](/blog/excluding-your-site-from-the-wayback-machine-keybase-only/#for-domains-you-own) section of the previous post. If you're wanting to address accounts/profiles on websites you don't own, read on.
+
+In addition to dealing with the Wayback Machine, this article is also supposed to help you get started using GPG in every-day life for general security and privacy.
+
+# Getting set up
+## Installation & Generating Keys
+First of all, you'll want to install GPG. The package on most distributions should be just be `gnupg`.
+- Debian: `sudo apt install gnupg`
+- Arch: `sudo pacman -S gnupg`
+- Fedora: `sudo dnf install gnupg`
+
+The next step is generating your key. While it will take a bit longer to generate, a stronger key will be more secure. Also make sure you read this excerpt from the `man` page as it contains a useful warning.
+
+>**WARNINGS**
+>
+>Use a *good* password for your user account and a *good* passphrase to protect your secret key. This passphrase is the weakest part of the whole system. Programs to do dictionary attacks on your secret keyring are very easy to write and so you should protect your "~/.gnupg/" directory very well.
+
+With that said, use `gpg --full-gen-key` to get started. Keep in mind that you don't actually have to use your real name or personal email address. If you *want* a personal key, go ahead and create one but you can also use a pseudonym and fake address if you'd like.
+
+1. I would use the default (1) of "RSA and RSA".
+2. Again, you can use default but I would recommend 4096 bits because it's much more secure. This does mean, however, that it will take longer to generate the key.
+3. An expiry date is recommended but you don't necessarily have to set one.
+4. You *don't* have to use your real name. You can use a pseudonym if you wish.
+5. You *don't* have to use your personal email. You can use a pseudonymous one if you wish.
+6. You don't need a comment
+7. Confirm
+8. Come up with a ***secure*** password or, even better, a pass*phrase*.
+9. Move your mouse around a bit, type, something like that while it's generating the key.
+
+## Email
+I use [Thunderbird](https://www.thunderbird.net/) for email and there is a great addon for it called [Enigmail](https://enigmail.net/). It's quite easy to set up and use but there is a really annoying bug that you'll experience when replying in threaded mode. If you want to encrypt a reply, simply open the editor in a new window.
+
+# Verifying Identities
+In general, all you'll have to do is type something along the lines of:
+
+> I am \
and I own the following accounts:
+> - Account 1 - \
+> - Account 2 - \
+> - Etc.
+
+You'll save that in a text file, run `gpg --clearsign file.txt`, copy the output, then paste it wherever it needs to go, whether that's a blog, a GitHub gist, etc. With Twitter/Mastodon and their character limit, this won't quite work. The best solution there is probably to post a link to a gpg-signed message on your website that links back to the post.
+
+Really, all you have to do is tie all of your accounts together in as close-knit a web as you can and sign with your GPG key wherever possible. Linking everything to everything else would definitely work but it should also be enough to link everything to a single document on your website (or a gist in GitHub etc.) that links back to all of those.
+
+I'm probably not explaining very well so here's a diagram showing it.
+
+
+
+Note that the email links to everything else but nothing links back to the email. It's the main document that's at the centre of it all. Make sure both it and the email are signed. If you toot, link to the toot in the main document. If you make a gist, link to the gist in the main document.
+
+# Sending the email
+Once you have all the groundwork laid out, you'll be ready to send the email; the address is [info@archive.org](mailto:info@archive.org). Explain what you would like done and link to the document requesting your domain exclusion first as that's the easiest to verify. In the next paragraph, I would explain a little bit about what you've set up with signing messages and creating the "Web of Verification" (lol). Under that, I would link to the posts asking for the accounts to be removed. Make sure those posts also link back to the main document. Be polite, say thank you, then send the email!
diff --git a/_sass/_default.scss b/_sass/_default.scss
index 64eb299acefd89b2a5828b0567cbfba88bd02c8e..5718f7e189fd963ff87cb79456d97d07c5e0854a 100644
--- a/_sass/_default.scss
+++ b/_sass/_default.scss
@@ -89,15 +89,6 @@ a {
.content {
margin-top: -20px;
}
-.content h1:hover .headerlink {
- display: block;
-}
-.content h2:hover .headerlink {
- display: block;
-}
-.content h3:hover .headerlink {
- display: block;
-}
.content .headerlink {
display: none;
float: left;
@@ -109,6 +100,15 @@ a {
font-size: smaller;
font-family: "ForkAwesome";
}
+.content h1:hover .headerlink {
+ display: block;
+}
+.content h2:hover .headerlink {
+ display: block;
+}
+.content h3:hover .headerlink {
+ display: block;
+}
.content > h1,h2 {
border-bottom: 2px solid #fff;
padding-bottom: 7px;
@@ -144,6 +144,9 @@ img {
display: block;
max-width: 100%;
}
+.post-image {
+ display: none;
+}
.flex-wrapper {
display: flex;
justify-content: center;
@@ -280,36 +283,25 @@ div.contact-card h2 {
}
blockquote {
letter-spacing: 1px;
- margin:0px;
+ margin: 0px;
margin-top: 40px;
- margin-bottom: 20px;
+ margin-bottom: 40px;
padding: 0px;
- text-align: center;
- position: relative;
-
- footer {
- position: absolute;
- bottom: -35px;
- font-size: 15px;
- color: $iron;
- letter-spacing: 0px;
- left:0px;
- right: 0px;
-
- &:before { content: "** "; }
- &:after { content: " **"; }
- }
-
+ border-left: 4px solid #fff;
p {
- display: inline;
+ margin-left: 20px;
font-size: 20px;
- color: $cloudy;
+ color: #bcbcbc;
font-weight: 400;
- &:before { content: "“ "; }
- &:after { content: " ”"; }
+ }
+ ul {
+ color: #bcbcbc;
}
}
-
+.publish-date {
+ color: $iron;
+ font-weight: bold;
+}
strong {
color: $iron;
}
@@ -345,7 +337,7 @@ strong {
list-style-type: none;
}
-.menu__entry {
+.menu-entry {
display: inline-block;
margin-right: 35px;
@@ -354,7 +346,7 @@ strong {
}
}
-.menu__entry a {
+.menu-entry a {
font-weight: 400;
}
@@ -365,7 +357,7 @@ strong {
list-style-type: none;
}
-.social-links__entry {
+.social-links-entry {
display: inline-block;
margin-left: 10px;
}
@@ -378,12 +370,12 @@ strong {
font-family: 'Overpass';
}
-.page-title__text {
+.page-title-text {
font-weight: 600;
font-size: 60px;
}
-.page-title__subtitle {
+.page-title-subtitle {
font-weight: 400;
font-family: 'Inconsolata';
font-size: 22px;
@@ -395,11 +387,11 @@ strong {
font-family: 'Overpass';
}
-.post-title__text {
+.post-title-text {
font-size: 40px;
}
-.post-title__subtitle {
+.post-title-subtitle {
font-size: 20px;
}
@@ -423,12 +415,12 @@ strong {
font-style: none;
}
-.post-teaser__title {
+.post-teaser-title {
font-size: 25px;
color: $iron;
}
-.post-teaser__date {
+.post-teaser-date {
font-size: 17px;
float: right;
vertical-align: middle;
@@ -452,12 +444,12 @@ strong {
word-wrap: anywhere;
}
-.explore__divider {
+.explore-divider {
font-size: 18px;
letter-spacing: 8.18px;
}
-.explore__label {
+.explore-label {
font-size: 14px;
margin-top: 15px;
font-family: 'Inconsolata';
@@ -470,24 +462,24 @@ strong {
padding: 0px;
}
-.categories__item {
+.categories-item {
display: inline-block;
font-weight: 700;
font-size: 18px;
}
-.categories__item a {
+.categories-item a {
color: $iron;
font-family: 'Inconsolata';
}
-.categories__item:after {
+.categories-item:after {
content: "/";
margin-left: 6px;
color: $cloudy;
}
-.categories__item:last-child:after {
+.categories-item:last-child:after {
content: "";
margin-left: 0px;
}
@@ -501,13 +493,13 @@ strong {
line-height: 24px;
}
-.about__divider {
+.about-divider {
font-size: 20px;
margin-bottom: 10px;
letter-spacing: 9.09px;
}
-.about__text {
+.about-text {
font-size: 18px;
}
@@ -529,6 +521,14 @@ strong {
width: 28%;
}
}
+@media screen and (max-width: 1000px) and (max-height:600px) {
+ .wrapper {
+ width: 75%;
+ }
+ .card {
+ width: 35%;
+ }
+}
@media (max-width: 800px) {
/* =Base */
p {
@@ -555,20 +555,20 @@ strong {
margin-bottom: 60px;
}
- .page-title__text {
+ .page-title-text {
font-size: 40px;
}
- .page-title__subtitle {
+ .page-title-subtitle {
font-size: 18px;
}
- .post-teaser__title {
+ .post-teaser-title {
font-size: 18px;
@include centered-block();
}
- .post-teaser__date {
+ .post-teaser-date {
font-size: 16px;
margin-top: 10px;
float: none;
@@ -579,11 +579,11 @@ strong {
margin-top: 80px;
}
- .post-title__text {
+ .post-title-text {
font-size: 28px;
}
- .post-title__subtitle {
+ .post-title-subtitle {
font-size: 18px;
}
.post-teaser p {
diff --git a/assets/posts/archive-diagram.png b/assets/posts/archive-diagram.png
new file mode 100644
index 0000000000000000000000000000000000000000..e29ca5a5626a35d797c1e19e6bec8d61395caed9
Binary files /dev/null and b/assets/posts/archive-diagram.png differ
diff --git a/blog/index.html b/blog/index.html
index ca720df4f36a33a7450478a8d1733683ca51f1a4..cbcd789a71c161dccc8ee9fcde2eaa57f04a2869 100644
--- a/blog/index.html
+++ b/blog/index.html
@@ -11,8 +11,8 @@ sitemap:
{% for post in site.posts %}
- {{ post.title }}
- {{ post.date | date: "%d %B %Y" }}
+ {{ post.title }}
+ {{ post.date | date: "%d %B %Y" }}
{{ post.description }}
diff --git a/cover.png b/cover.png
index 2db9da113f2dc57ad8115fa8832fe1994b8b0d04..7adc91501932f7437ed4b1e02c504d2cb231f72c 100644
Binary files a/cover.png and b/cover.png differ
diff --git a/favicon.ico b/favicon.ico
deleted file mode 100644
index 5e2a3058012e95853e86f74d12ce17e8d3bd4e6f..0000000000000000000000000000000000000000
Binary files a/favicon.ico and /dev/null differ
diff --git a/favicons/android-chrome-192x192.png b/favicons/android-chrome-192x192.png
new file mode 100644
index 0000000000000000000000000000000000000000..9f499e8111d18d766ab5585c8c8a776e26f8a7f6
Binary files /dev/null and b/favicons/android-chrome-192x192.png differ
diff --git a/favicons/android-chrome-512x512.png b/favicons/android-chrome-512x512.png
new file mode 100644
index 0000000000000000000000000000000000000000..45955da3f965b088973e1290603a4489af35c249
Binary files /dev/null and b/favicons/android-chrome-512x512.png differ
diff --git a/favicons/android-icon-144x144.png b/favicons/android-icon-144x144.png
deleted file mode 100644
index 313a9cbe8c1d37af2a885228dc8a60cb5897de0c..0000000000000000000000000000000000000000
Binary files a/favicons/android-icon-144x144.png and /dev/null differ
diff --git a/favicons/android-icon-192x192.png b/favicons/android-icon-192x192.png
deleted file mode 100644
index 05e0a6b8fbd25c7ef288bd6655663ad521369b49..0000000000000000000000000000000000000000
Binary files a/favicons/android-icon-192x192.png and /dev/null differ
diff --git a/favicons/android-icon-36x36.png b/favicons/android-icon-36x36.png
deleted file mode 100644
index 2e49e15b71680762ff633722f613df9aecd2b869..0000000000000000000000000000000000000000
Binary files a/favicons/android-icon-36x36.png and /dev/null differ
diff --git a/favicons/android-icon-48x48.png b/favicons/android-icon-48x48.png
deleted file mode 100644
index 3babd3bbef57fad3d6722d4a4a39434f9af5ab13..0000000000000000000000000000000000000000
Binary files a/favicons/android-icon-48x48.png and /dev/null differ
diff --git a/favicons/android-icon-72x72.png b/favicons/android-icon-72x72.png
deleted file mode 100644
index 34eeac68a7f375b2e93877090bb008c7826a7ac1..0000000000000000000000000000000000000000
Binary files a/favicons/android-icon-72x72.png and /dev/null differ
diff --git a/favicons/android-icon-96x96.png b/favicons/android-icon-96x96.png
deleted file mode 100644
index 03e8d0d9e9d24141cfd832604ed47728b666aa17..0000000000000000000000000000000000000000
Binary files a/favicons/android-icon-96x96.png and /dev/null differ
diff --git a/favicons/apple-icon-114x114.png b/favicons/apple-icon-114x114.png
deleted file mode 100644
index 5e86a69914f9d1990ad4b79526400cadd0980a27..0000000000000000000000000000000000000000
Binary files a/favicons/apple-icon-114x114.png and /dev/null differ
diff --git a/favicons/apple-icon-120x120.png b/favicons/apple-icon-120x120.png
deleted file mode 100644
index 458fa18b3d78e73be88746b4dd7842c0eed87d61..0000000000000000000000000000000000000000
Binary files a/favicons/apple-icon-120x120.png and /dev/null differ
diff --git a/favicons/apple-icon-144x144.png b/favicons/apple-icon-144x144.png
deleted file mode 100644
index 313a9cbe8c1d37af2a885228dc8a60cb5897de0c..0000000000000000000000000000000000000000
Binary files a/favicons/apple-icon-144x144.png and /dev/null differ
diff --git a/favicons/apple-icon-152x152.png b/favicons/apple-icon-152x152.png
deleted file mode 100644
index 40b2f49b87a7d7bc42384616269a0f32e94eef3a..0000000000000000000000000000000000000000
Binary files a/favicons/apple-icon-152x152.png and /dev/null differ
diff --git a/favicons/apple-icon-180x180.png b/favicons/apple-icon-180x180.png
deleted file mode 100644
index 5b29e216c4a2402f15af0b5fb5b55984a2446fed..0000000000000000000000000000000000000000
Binary files a/favicons/apple-icon-180x180.png and /dev/null differ
diff --git a/favicons/apple-icon-57x57.png b/favicons/apple-icon-57x57.png
deleted file mode 100644
index 1feb99e8315fecd9ab7a202ffc2af913cff123f1..0000000000000000000000000000000000000000
Binary files a/favicons/apple-icon-57x57.png and /dev/null differ
diff --git a/favicons/apple-icon-60x60.png b/favicons/apple-icon-60x60.png
deleted file mode 100644
index ef127f1ed853fe55425ec6ff940ebf7337718405..0000000000000000000000000000000000000000
Binary files a/favicons/apple-icon-60x60.png and /dev/null differ
diff --git a/favicons/apple-icon-72x72.png b/favicons/apple-icon-72x72.png
deleted file mode 100644
index 34eeac68a7f375b2e93877090bb008c7826a7ac1..0000000000000000000000000000000000000000
Binary files a/favicons/apple-icon-72x72.png and /dev/null differ
diff --git a/favicons/apple-icon-76x76.png b/favicons/apple-icon-76x76.png
deleted file mode 100644
index 84677a29c5d3e3e71f595567c76ae94e2af4f6bd..0000000000000000000000000000000000000000
Binary files a/favicons/apple-icon-76x76.png and /dev/null differ
diff --git a/favicons/apple-icon-precomposed.png b/favicons/apple-icon-precomposed.png
deleted file mode 100644
index 17b5dff2751dd1a48e0b953f885e58514a55da06..0000000000000000000000000000000000000000
Binary files a/favicons/apple-icon-precomposed.png and /dev/null differ
diff --git a/favicons/apple-icon.png b/favicons/apple-icon.png
deleted file mode 100644
index 17b5dff2751dd1a48e0b953f885e58514a55da06..0000000000000000000000000000000000000000
Binary files a/favicons/apple-icon.png and /dev/null differ
diff --git a/favicons/apple-touch-icon.png b/favicons/apple-touch-icon.png
new file mode 100644
index 0000000000000000000000000000000000000000..225c66eebac33178ef1c756b50ef310471f03bb5
Binary files /dev/null and b/favicons/apple-touch-icon.png differ
diff --git a/favicons/browserconfig.xml b/favicons/browserconfig.xml
index c5541482230075d4b4800ebbb7ac42fad29e5133..e9b562328e46643d16821acf01eb06c5161409f8 100644
--- a/favicons/browserconfig.xml
+++ b/favicons/browserconfig.xml
@@ -1,2 +1,9 @@
-#ffffff
\ No newline at end of file
+
+
+
+
+ #494848
+
+
+
diff --git a/favicons/favicon-16x16.png b/favicons/favicon-16x16.png
index bcf30f784715a27697865586c9310b63d53accbc..7e9403f4bb02ea8ef6dcfba73d0a1e3751992a1b 100644
Binary files a/favicons/favicon-16x16.png and b/favicons/favicon-16x16.png differ
diff --git a/favicons/favicon-32x32.png b/favicons/favicon-32x32.png
index 5af6e86f0d8109342dbc692873708419e8e40d99..66a29650219ed62d0ee1b2e77161a9b8fa5c5e5e 100644
Binary files a/favicons/favicon-32x32.png and b/favicons/favicon-32x32.png differ
diff --git a/favicons/favicon-96x96.png b/favicons/favicon-96x96.png
deleted file mode 100644
index 03e8d0d9e9d24141cfd832604ed47728b666aa17..0000000000000000000000000000000000000000
Binary files a/favicons/favicon-96x96.png and /dev/null differ
diff --git a/favicons/favicon.ico b/favicons/favicon.ico
index 1a09a76573ad853f0c0f49a966644f0023e401cb..2cf65b3e295bfa27d98d6da8caa407b54b6c5c87 100644
Binary files a/favicons/favicon.ico and b/favicons/favicon.ico differ
diff --git a/favicons/manifest.json b/favicons/manifest.json
deleted file mode 100644
index 013d4a6a53334fae827a32824eaf51a889396514..0000000000000000000000000000000000000000
--- a/favicons/manifest.json
+++ /dev/null
@@ -1,41 +0,0 @@
-{
- "name": "App",
- "icons": [
- {
- "src": "\/android-icon-36x36.png",
- "sizes": "36x36",
- "type": "image\/png",
- "density": "0.75"
- },
- {
- "src": "\/android-icon-48x48.png",
- "sizes": "48x48",
- "type": "image\/png",
- "density": "1.0"
- },
- {
- "src": "\/android-icon-72x72.png",
- "sizes": "72x72",
- "type": "image\/png",
- "density": "1.5"
- },
- {
- "src": "\/android-icon-96x96.png",
- "sizes": "96x96",
- "type": "image\/png",
- "density": "2.0"
- },
- {
- "src": "\/android-icon-144x144.png",
- "sizes": "144x144",
- "type": "image\/png",
- "density": "3.0"
- },
- {
- "src": "\/android-icon-192x192.png",
- "sizes": "192x192",
- "type": "image\/png",
- "density": "4.0"
- }
- ]
-}
\ No newline at end of file
diff --git a/favicons/ms-icon-144x144.png b/favicons/ms-icon-144x144.png
deleted file mode 100644
index 313a9cbe8c1d37af2a885228dc8a60cb5897de0c..0000000000000000000000000000000000000000
Binary files a/favicons/ms-icon-144x144.png and /dev/null differ
diff --git a/favicons/ms-icon-150x150.png b/favicons/ms-icon-150x150.png
deleted file mode 100644
index f9e62be43cac21a815a90fa7644a0f6a50d08ebc..0000000000000000000000000000000000000000
Binary files a/favicons/ms-icon-150x150.png and /dev/null differ
diff --git a/favicons/ms-icon-310x310.png b/favicons/ms-icon-310x310.png
deleted file mode 100644
index 981bb1ff577851820349473d351de5ca9c0fc099..0000000000000000000000000000000000000000
Binary files a/favicons/ms-icon-310x310.png and /dev/null differ
diff --git a/favicons/ms-icon-70x70.png b/favicons/ms-icon-70x70.png
deleted file mode 100644
index 5ff7e2ced0a6c57e45d2c31b5ae7f146ec9b81b6..0000000000000000000000000000000000000000
Binary files a/favicons/ms-icon-70x70.png and /dev/null differ
diff --git a/favicons/mstile-150x150.png b/favicons/mstile-150x150.png
new file mode 100644
index 0000000000000000000000000000000000000000..de3817c7debe8922c922a9f01296fa33d17d075f
Binary files /dev/null and b/favicons/mstile-150x150.png differ
diff --git a/favicons/safari-pinned-tab.svg b/favicons/safari-pinned-tab.svg
new file mode 100644
index 0000000000000000000000000000000000000000..186b7f7999681e719e2fb97d47433115e9c56e0c
--- /dev/null
+++ b/favicons/safari-pinned-tab.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/favicons/site.webmanifest b/favicons/site.webmanifest
new file mode 100644
index 0000000000000000000000000000000000000000..e31a582aba1904017f0c977d555efbf87c7f9273
--- /dev/null
+++ b/favicons/site.webmanifest
@@ -0,0 +1,19 @@
+{
+ "name": "",
+ "short_name": "",
+ "icons": [
+ {
+ "src": "android-chrome-192x192.png?v=wAXex2OGrl",
+ "sizes": "192x192",
+ "type": "image/png"
+ },
+ {
+ "src": "android-chrome-512x512.png?v=wAXex2OGrl",
+ "sizes": "512x512",
+ "type": "image/png"
+ }
+ ],
+ "theme_color": "#ffffff",
+ "background_color": "#ffffff",
+ "display": "standalone"
+}
diff --git a/img.py b/img.py
new file mode 100644
index 0000000000000000000000000000000000000000..4101c1c95622fb1169e5057957ca6e75e9d4557a
--- /dev/null
+++ b/img.py
@@ -0,0 +1,15 @@
+#!/usr/bin/env python3
+
+from bs4 import BeautifulSoup
+import sys
+
+with open(sys.argv[1]) as f:
+ html = BeautifulSoup(f.read(), 'html.parser')
+
+
+for i in html.find_all('p'):
+ if len(i.find_all('img')) > 0:
+ i.unwrap()
+
+with open(sys.argv[1], 'w') as f:
+ f.write(str(html))
diff --git a/jquery-3.3.1.min.js b/jquery-3.3.1.min.js
deleted file mode 100644
index 4d9b3a258759c53e7bc66b6fc554c51e2434437c..0000000000000000000000000000000000000000
--- a/jquery-3.3.1.min.js
+++ /dev/null
@@ -1,2 +0,0 @@
-/*! jQuery v3.3.1 | (c) JS Foundation and other contributors | jquery.org/license */
-!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(e,t){"use strict";var n=[],r=e.document,i=Object.getPrototypeOf,o=n.slice,a=n.concat,s=n.push,u=n.indexOf,l={},c=l.toString,f=l.hasOwnProperty,p=f.toString,d=p.call(Object),h={},g=function e(t){return"function"==typeof t&&"number"!=typeof t.nodeType},y=function e(t){return null!=t&&t===t.window},v={type:!0,src:!0,noModule:!0};function m(e,t,n){var i,o=(t=t||r).createElement("script");if(o.text=e,n)for(i in v)n[i]&&(o[i]=n[i]);t.head.appendChild(o).parentNode.removeChild(o)}function x(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?l[c.call(e)]||"object":typeof e}var b="3.3.1",w=function(e,t){return new w.fn.init(e,t)},T=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;w.fn=w.prototype={jquery:"3.3.1",constructor:w,length:0,toArray:function(){return o.call(this)},get:function(e){return null==e?o.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=w.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return w.each(this,e)},map:function(e){return this.pushStack(w.map(this,function(t,n){return e.call(t,n,t)}))},slice:function(){return this.pushStack(o.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(n>=0&&n0&&t-1 in e)}var E=function(e){var t,n,r,i,o,a,s,u,l,c,f,p,d,h,g,y,v,m,x,b="sizzle"+1*new Date,w=e.document,T=0,C=0,E=ae(),k=ae(),S=ae(),D=function(e,t){return e===t&&(f=!0),0},N={}.hasOwnProperty,A=[],j=A.pop,q=A.push,L=A.push,H=A.slice,O=function(e,t){for(var n=0,r=e.length;n+~]|"+M+")"+M+"*"),z=new RegExp("="+M+"*([^\\]'\"]*?)"+M+"*\\]","g"),X=new RegExp(W),U=new RegExp("^"+R+"$"),V={ID:new RegExp("^#("+R+")"),CLASS:new RegExp("^\\.("+R+")"),TAG:new RegExp("^("+R+"|[*])"),ATTR:new RegExp("^"+I),PSEUDO:new RegExp("^"+W),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+P+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},G=/^(?:input|select|textarea|button)$/i,Y=/^h\d$/i,Q=/^[^{]+\{\s*\[native \w/,J=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,K=/[+~]/,Z=new RegExp("\\\\([\\da-f]{1,6}"+M+"?|("+M+")|.)","ig"),ee=function(e,t,n){var r="0x"+t-65536;return r!==r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},te=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ne=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},re=function(){p()},ie=me(function(e){return!0===e.disabled&&("form"in e||"label"in e)},{dir:"parentNode",next:"legend"});try{L.apply(A=H.call(w.childNodes),w.childNodes),A[w.childNodes.length].nodeType}catch(e){L={apply:A.length?function(e,t){q.apply(e,H.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function oe(e,t,r,i){var o,s,l,c,f,h,v,m=t&&t.ownerDocument,T=t?t.nodeType:9;if(r=r||[],"string"!=typeof e||!e||1!==T&&9!==T&&11!==T)return r;if(!i&&((t?t.ownerDocument||t:w)!==d&&p(t),t=t||d,g)){if(11!==T&&(f=J.exec(e)))if(o=f[1]){if(9===T){if(!(l=t.getElementById(o)))return r;if(l.id===o)return r.push(l),r}else if(m&&(l=m.getElementById(o))&&x(t,l)&&l.id===o)return r.push(l),r}else{if(f[2])return L.apply(r,t.getElementsByTagName(e)),r;if((o=f[3])&&n.getElementsByClassName&&t.getElementsByClassName)return L.apply(r,t.getElementsByClassName(o)),r}if(n.qsa&&!S[e+" "]&&(!y||!y.test(e))){if(1!==T)m=t,v=e;else if("object"!==t.nodeName.toLowerCase()){(c=t.getAttribute("id"))?c=c.replace(te,ne):t.setAttribute("id",c=b),s=(h=a(e)).length;while(s--)h[s]="#"+c+" "+ve(h[s]);v=h.join(","),m=K.test(e)&&ge(t.parentNode)||t}if(v)try{return L.apply(r,m.querySelectorAll(v)),r}catch(e){}finally{c===b&&t.removeAttribute("id")}}}return u(e.replace(B,"$1"),t,r,i)}function ae(){var e=[];function t(n,i){return e.push(n+" ")>r.cacheLength&&delete t[e.shift()],t[n+" "]=i}return t}function se(e){return e[b]=!0,e}function ue(e){var t=d.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function le(e,t){var n=e.split("|"),i=n.length;while(i--)r.attrHandle[n[i]]=t}function ce(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function fe(e){return function(t){return"input"===t.nodeName.toLowerCase()&&t.type===e}}function pe(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function de(e){return function(t){return"form"in t?t.parentNode&&!1===t.disabled?"label"in t?"label"in t.parentNode?t.parentNode.disabled===e:t.disabled===e:t.isDisabled===e||t.isDisabled!==!e&&ie(t)===e:t.disabled===e:"label"in t&&t.disabled===e}}function he(e){return se(function(t){return t=+t,se(function(n,r){var i,o=e([],n.length,t),a=o.length;while(a--)n[i=o[a]]&&(n[i]=!(r[i]=n[i]))})})}function ge(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}n=oe.support={},o=oe.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return!!t&&"HTML"!==t.nodeName},p=oe.setDocument=function(e){var t,i,a=e?e.ownerDocument||e:w;return a!==d&&9===a.nodeType&&a.documentElement?(d=a,h=d.documentElement,g=!o(d),w!==d&&(i=d.defaultView)&&i.top!==i&&(i.addEventListener?i.addEventListener("unload",re,!1):i.attachEvent&&i.attachEvent("onunload",re)),n.attributes=ue(function(e){return e.className="i",!e.getAttribute("className")}),n.getElementsByTagName=ue(function(e){return e.appendChild(d.createComment("")),!e.getElementsByTagName("*").length}),n.getElementsByClassName=Q.test(d.getElementsByClassName),n.getById=ue(function(e){return h.appendChild(e).id=b,!d.getElementsByName||!d.getElementsByName(b).length}),n.getById?(r.filter.ID=function(e){var t=e.replace(Z,ee);return function(e){return e.getAttribute("id")===t}},r.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&g){var n=t.getElementById(e);return n?[n]:[]}}):(r.filter.ID=function(e){var t=e.replace(Z,ee);return function(e){var n="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return n&&n.value===t}},r.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&g){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),r.find.TAG=n.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):n.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},r.find.CLASS=n.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&g)return t.getElementsByClassName(e)},v=[],y=[],(n.qsa=Q.test(d.querySelectorAll))&&(ue(function(e){h.appendChild(e).innerHTML=" ",e.querySelectorAll("[msallowcapture^='']").length&&y.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||y.push("\\["+M+"*(?:value|"+P+")"),e.querySelectorAll("[id~="+b+"-]").length||y.push("~="),e.querySelectorAll(":checked").length||y.push(":checked"),e.querySelectorAll("a#"+b+"+*").length||y.push(".#.+[+~]")}),ue(function(e){e.innerHTML=" ";var t=d.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&y.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&y.push(":enabled",":disabled"),h.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&y.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),y.push(",.*:")})),(n.matchesSelector=Q.test(m=h.matches||h.webkitMatchesSelector||h.mozMatchesSelector||h.oMatchesSelector||h.msMatchesSelector))&&ue(function(e){n.disconnectedMatch=m.call(e,"*"),m.call(e,"[s!='']:x"),v.push("!=",W)}),y=y.length&&new RegExp(y.join("|")),v=v.length&&new RegExp(v.join("|")),t=Q.test(h.compareDocumentPosition),x=t||Q.test(h.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},D=t?function(e,t){if(e===t)return f=!0,0;var r=!e.compareDocumentPosition-!t.compareDocumentPosition;return r||(1&(r=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!n.sortDetached&&t.compareDocumentPosition(e)===r?e===d||e.ownerDocument===w&&x(w,e)?-1:t===d||t.ownerDocument===w&&x(w,t)?1:c?O(c,e)-O(c,t):0:4&r?-1:1)}:function(e,t){if(e===t)return f=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e===d?-1:t===d?1:i?-1:o?1:c?O(c,e)-O(c,t):0;if(i===o)return ce(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?ce(a[r],s[r]):a[r]===w?-1:s[r]===w?1:0},d):d},oe.matches=function(e,t){return oe(e,null,null,t)},oe.matchesSelector=function(e,t){if((e.ownerDocument||e)!==d&&p(e),t=t.replace(z,"='$1']"),n.matchesSelector&&g&&!S[t+" "]&&(!v||!v.test(t))&&(!y||!y.test(t)))try{var r=m.call(e,t);if(r||n.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(e){}return oe(t,d,null,[e]).length>0},oe.contains=function(e,t){return(e.ownerDocument||e)!==d&&p(e),x(e,t)},oe.attr=function(e,t){(e.ownerDocument||e)!==d&&p(e);var i=r.attrHandle[t.toLowerCase()],o=i&&N.call(r.attrHandle,t.toLowerCase())?i(e,t,!g):void 0;return void 0!==o?o:n.attributes||!g?e.getAttribute(t):(o=e.getAttributeNode(t))&&o.specified?o.value:null},oe.escape=function(e){return(e+"").replace(te,ne)},oe.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},oe.uniqueSort=function(e){var t,r=[],i=0,o=0;if(f=!n.detectDuplicates,c=!n.sortStable&&e.slice(0),e.sort(D),f){while(t=e[o++])t===e[o]&&(i=r.push(o));while(i--)e.splice(r[i],1)}return c=null,e},i=oe.getText=function(e){var t,n="",r=0,o=e.nodeType;if(o){if(1===o||9===o||11===o){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=i(e)}else if(3===o||4===o)return e.nodeValue}else while(t=e[r++])n+=i(t);return n},(r=oe.selectors={cacheLength:50,createPseudo:se,match:V,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(Z,ee),e[3]=(e[3]||e[4]||e[5]||"").replace(Z,ee),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||oe.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&oe.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return V.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=a(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(Z,ee).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=E[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&E(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(e,t,n){return function(r){var i=oe.attr(r,e);return null==i?"!="===t:!t||(i+="","="===t?i===n:"!="===t?i!==n:"^="===t?n&&0===i.indexOf(n):"*="===t?n&&i.indexOf(n)>-1:"$="===t?n&&i.slice(-n.length)===n:"~="===t?(" "+i.replace($," ")+" ").indexOf(n)>-1:"|="===t&&(i===n||i.slice(0,n.length+1)===n+"-"))}},CHILD:function(e,t,n,r,i){var o="nth"!==e.slice(0,3),a="last"!==e.slice(-4),s="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,u){var l,c,f,p,d,h,g=o!==a?"nextSibling":"previousSibling",y=t.parentNode,v=s&&t.nodeName.toLowerCase(),m=!u&&!s,x=!1;if(y){if(o){while(g){p=t;while(p=p[g])if(s?p.nodeName.toLowerCase()===v:1===p.nodeType)return!1;h=g="only"===e&&!h&&"nextSibling"}return!0}if(h=[a?y.firstChild:y.lastChild],a&&m){x=(d=(l=(c=(f=(p=y)[b]||(p[b]={}))[p.uniqueID]||(f[p.uniqueID]={}))[e]||[])[0]===T&&l[1])&&l[2],p=d&&y.childNodes[d];while(p=++d&&p&&p[g]||(x=d=0)||h.pop())if(1===p.nodeType&&++x&&p===t){c[e]=[T,d,x];break}}else if(m&&(x=d=(l=(c=(f=(p=t)[b]||(p[b]={}))[p.uniqueID]||(f[p.uniqueID]={}))[e]||[])[0]===T&&l[1]),!1===x)while(p=++d&&p&&p[g]||(x=d=0)||h.pop())if((s?p.nodeName.toLowerCase()===v:1===p.nodeType)&&++x&&(m&&((c=(f=p[b]||(p[b]={}))[p.uniqueID]||(f[p.uniqueID]={}))[e]=[T,x]),p===t))break;return(x-=i)===r||x%r==0&&x/r>=0}}},PSEUDO:function(e,t){var n,i=r.pseudos[e]||r.setFilters[e.toLowerCase()]||oe.error("unsupported pseudo: "+e);return i[b]?i(t):i.length>1?(n=[e,e,"",t],r.setFilters.hasOwnProperty(e.toLowerCase())?se(function(e,n){var r,o=i(e,t),a=o.length;while(a--)e[r=O(e,o[a])]=!(n[r]=o[a])}):function(e){return i(e,0,n)}):i}},pseudos:{not:se(function(e){var t=[],n=[],r=s(e.replace(B,"$1"));return r[b]?se(function(e,t,n,i){var o,a=r(e,null,i,[]),s=e.length;while(s--)(o=a[s])&&(e[s]=!(t[s]=o))}):function(e,i,o){return t[0]=e,r(t,null,o,n),t[0]=null,!n.pop()}}),has:se(function(e){return function(t){return oe(e,t).length>0}}),contains:se(function(e){return e=e.replace(Z,ee),function(t){return(t.textContent||t.innerText||i(t)).indexOf(e)>-1}}),lang:se(function(e){return U.test(e||"")||oe.error("unsupported lang: "+e),e=e.replace(Z,ee).toLowerCase(),function(t){var n;do{if(n=g?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return(n=n.toLowerCase())===e||0===n.indexOf(e+"-")}while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===h},focus:function(e){return e===d.activeElement&&(!d.hasFocus||d.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:de(!1),disabled:de(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!r.pseudos.empty(e)},header:function(e){return Y.test(e.nodeName)},input:function(e){return G.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:he(function(){return[0]}),last:he(function(e,t){return[t-1]}),eq:he(function(e,t,n){return[n<0?n+t:n]}),even:he(function(e,t){for(var n=0;n=0;)e.push(r);return e}),gt:he(function(e,t,n){for(var r=n<0?n+t:n;++r1?function(t,n,r){var i=e.length;while(i--)if(!e[i](t,n,r))return!1;return!0}:e[0]}function be(e,t,n){for(var r=0,i=t.length;r-1&&(o[l]=!(a[l]=f))}}else v=we(v===a?v.splice(h,v.length):v),i?i(null,a,v,u):L.apply(a,v)})}function Ce(e){for(var t,n,i,o=e.length,a=r.relative[e[0].type],s=a||r.relative[" "],u=a?1:0,c=me(function(e){return e===t},s,!0),f=me(function(e){return O(t,e)>-1},s,!0),p=[function(e,n,r){var i=!a&&(r||n!==l)||((t=n).nodeType?c(e,n,r):f(e,n,r));return t=null,i}];u1&&xe(p),u>1&&ve(e.slice(0,u-1).concat({value:" "===e[u-2].type?"*":""})).replace(B,"$1"),n,u0,i=e.length>0,o=function(o,a,s,u,c){var f,h,y,v=0,m="0",x=o&&[],b=[],w=l,C=o||i&&r.find.TAG("*",c),E=T+=null==w?1:Math.random()||.1,k=C.length;for(c&&(l=a===d||a||c);m!==k&&null!=(f=C[m]);m++){if(i&&f){h=0,a||f.ownerDocument===d||(p(f),s=!g);while(y=e[h++])if(y(f,a||d,s)){u.push(f);break}c&&(T=E)}n&&((f=!y&&f)&&v--,o&&x.push(f))}if(v+=m,n&&m!==v){h=0;while(y=t[h++])y(x,b,a,s);if(o){if(v>0)while(m--)x[m]||b[m]||(b[m]=j.call(u));b=we(b)}L.apply(u,b),c&&!o&&b.length>0&&v+t.length>1&&oe.uniqueSort(u)}return c&&(T=E,l=w),x};return n?se(o):o}return s=oe.compile=function(e,t){var n,r=[],i=[],o=S[e+" "];if(!o){t||(t=a(e)),n=t.length;while(n--)(o=Ce(t[n]))[b]?r.push(o):i.push(o);(o=S(e,Ee(i,r))).selector=e}return o},u=oe.select=function(e,t,n,i){var o,u,l,c,f,p="function"==typeof e&&e,d=!i&&a(e=p.selector||e);if(n=n||[],1===d.length){if((u=d[0]=d[0].slice(0)).length>2&&"ID"===(l=u[0]).type&&9===t.nodeType&&g&&r.relative[u[1].type]){if(!(t=(r.find.ID(l.matches[0].replace(Z,ee),t)||[])[0]))return n;p&&(t=t.parentNode),e=e.slice(u.shift().value.length)}o=V.needsContext.test(e)?0:u.length;while(o--){if(l=u[o],r.relative[c=l.type])break;if((f=r.find[c])&&(i=f(l.matches[0].replace(Z,ee),K.test(u[0].type)&&ge(t.parentNode)||t))){if(u.splice(o,1),!(e=i.length&&ve(u)))return L.apply(n,i),n;break}}}return(p||s(e,d))(i,t,!g,n,!t||K.test(e)&&ge(t.parentNode)||t),n},n.sortStable=b.split("").sort(D).join("")===b,n.detectDuplicates=!!f,p(),n.sortDetached=ue(function(e){return 1&e.compareDocumentPosition(d.createElement("fieldset"))}),ue(function(e){return e.innerHTML=" ","#"===e.firstChild.getAttribute("href")})||le("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),n.attributes&&ue(function(e){return e.innerHTML=" ",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||le("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),ue(function(e){return null==e.getAttribute("disabled")})||le(P,function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),oe}(e);w.find=E,w.expr=E.selectors,w.expr[":"]=w.expr.pseudos,w.uniqueSort=w.unique=E.uniqueSort,w.text=E.getText,w.isXMLDoc=E.isXML,w.contains=E.contains,w.escapeSelector=E.escape;var k=function(e,t,n){var r=[],i=void 0!==n;while((e=e[t])&&9!==e.nodeType)if(1===e.nodeType){if(i&&w(e).is(n))break;r.push(e)}return r},S=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},D=w.expr.match.needsContext;function N(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var A=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function j(e,t,n){return g(t)?w.grep(e,function(e,r){return!!t.call(e,r,e)!==n}):t.nodeType?w.grep(e,function(e){return e===t!==n}):"string"!=typeof t?w.grep(e,function(e){return u.call(t,e)>-1!==n}):w.filter(t,e,n)}w.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?w.find.matchesSelector(r,e)?[r]:[]:w.find.matches(e,w.grep(t,function(e){return 1===e.nodeType}))},w.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(w(e).filter(function(){for(t=0;t1?w.uniqueSort(n):n},filter:function(e){return this.pushStack(j(this,e||[],!1))},not:function(e){return this.pushStack(j(this,e||[],!0))},is:function(e){return!!j(this,"string"==typeof e&&D.test(e)?w(e):e||[],!1).length}});var q,L=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(w.fn.init=function(e,t,n){var i,o;if(!e)return this;if(n=n||q,"string"==typeof e){if(!(i="<"===e[0]&&">"===e[e.length-1]&&e.length>=3?[null,e,null]:L.exec(e))||!i[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(i[1]){if(t=t instanceof w?t[0]:t,w.merge(this,w.parseHTML(i[1],t&&t.nodeType?t.ownerDocument||t:r,!0)),A.test(i[1])&&w.isPlainObject(t))for(i in t)g(this[i])?this[i](t[i]):this.attr(i,t[i]);return this}return(o=r.getElementById(i[2]))&&(this[0]=o,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):g(e)?void 0!==n.ready?n.ready(e):e(w):w.makeArray(e,this)}).prototype=w.fn,q=w(r);var H=/^(?:parents|prev(?:Until|All))/,O={children:!0,contents:!0,next:!0,prev:!0};w.fn.extend({has:function(e){var t=w(e,this),n=t.length;return this.filter(function(){for(var e=0;e-1:1===n.nodeType&&w.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(o.length>1?w.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?u.call(w(e),this[0]):u.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(w.uniqueSort(w.merge(this.get(),w(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}});function P(e,t){while((e=e[t])&&1!==e.nodeType);return e}w.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return k(e,"parentNode")},parentsUntil:function(e,t,n){return k(e,"parentNode",n)},next:function(e){return P(e,"nextSibling")},prev:function(e){return P(e,"previousSibling")},nextAll:function(e){return k(e,"nextSibling")},prevAll:function(e){return k(e,"previousSibling")},nextUntil:function(e,t,n){return k(e,"nextSibling",n)},prevUntil:function(e,t,n){return k(e,"previousSibling",n)},siblings:function(e){return S((e.parentNode||{}).firstChild,e)},children:function(e){return S(e.firstChild)},contents:function(e){return N(e,"iframe")?e.contentDocument:(N(e,"template")&&(e=e.content||e),w.merge([],e.childNodes))}},function(e,t){w.fn[e]=function(n,r){var i=w.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=w.filter(r,i)),this.length>1&&(O[e]||w.uniqueSort(i),H.test(e)&&i.reverse()),this.pushStack(i)}});var M=/[^\x20\t\r\n\f]+/g;function R(e){var t={};return w.each(e.match(M)||[],function(e,n){t[n]=!0}),t}w.Callbacks=function(e){e="string"==typeof e?R(e):w.extend({},e);var t,n,r,i,o=[],a=[],s=-1,u=function(){for(i=i||e.once,r=t=!0;a.length;s=-1){n=a.shift();while(++s-1)o.splice(n,1),n<=s&&s--}),this},has:function(e){return e?w.inArray(e,o)>-1:o.length>0},empty:function(){return o&&(o=[]),this},disable:function(){return i=a=[],o=n="",this},disabled:function(){return!o},lock:function(){return i=a=[],n||t||(o=n=""),this},locked:function(){return!!i},fireWith:function(e,n){return i||(n=[e,(n=n||[]).slice?n.slice():n],a.push(n),t||u()),this},fire:function(){return l.fireWith(this,arguments),this},fired:function(){return!!r}};return l};function I(e){return e}function W(e){throw e}function $(e,t,n,r){var i;try{e&&g(i=e.promise)?i.call(e).done(t).fail(n):e&&g(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}w.extend({Deferred:function(t){var n=[["notify","progress",w.Callbacks("memory"),w.Callbacks("memory"),2],["resolve","done",w.Callbacks("once memory"),w.Callbacks("once memory"),0,"resolved"],["reject","fail",w.Callbacks("once memory"),w.Callbacks("once memory"),1,"rejected"]],r="pending",i={state:function(){return r},always:function(){return o.done(arguments).fail(arguments),this},"catch":function(e){return i.then(null,e)},pipe:function(){var e=arguments;return w.Deferred(function(t){w.each(n,function(n,r){var i=g(e[r[4]])&&e[r[4]];o[r[1]](function(){var e=i&&i.apply(this,arguments);e&&g(e.promise)?e.promise().progress(t.notify).done(t.resolve).fail(t.reject):t[r[0]+"With"](this,i?[e]:arguments)})}),e=null}).promise()},then:function(t,r,i){var o=0;function a(t,n,r,i){return function(){var s=this,u=arguments,l=function(){var e,l;if(!(t=o&&(r!==W&&(s=void 0,u=[e]),n.rejectWith(s,u))}};t?c():(w.Deferred.getStackHook&&(c.stackTrace=w.Deferred.getStackHook()),e.setTimeout(c))}}return w.Deferred(function(e){n[0][3].add(a(0,e,g(i)?i:I,e.notifyWith)),n[1][3].add(a(0,e,g(t)?t:I)),n[2][3].add(a(0,e,g(r)?r:W))}).promise()},promise:function(e){return null!=e?w.extend(e,i):i}},o={};return w.each(n,function(e,t){var a=t[2],s=t[5];i[t[1]]=a.add,s&&a.add(function(){r=s},n[3-e][2].disable,n[3-e][3].disable,n[0][2].lock,n[0][3].lock),a.add(t[3].fire),o[t[0]]=function(){return o[t[0]+"With"](this===o?void 0:this,arguments),this},o[t[0]+"With"]=a.fireWith}),i.promise(o),t&&t.call(o,o),o},when:function(e){var t=arguments.length,n=t,r=Array(n),i=o.call(arguments),a=w.Deferred(),s=function(e){return function(n){r[e]=this,i[e]=arguments.length>1?o.call(arguments):n,--t||a.resolveWith(r,i)}};if(t<=1&&($(e,a.done(s(n)).resolve,a.reject,!t),"pending"===a.state()||g(i[n]&&i[n].then)))return a.then();while(n--)$(i[n],s(n),a.reject);return a.promise()}});var B=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;w.Deferred.exceptionHook=function(t,n){e.console&&e.console.warn&&t&&B.test(t.name)&&e.console.warn("jQuery.Deferred exception: "+t.message,t.stack,n)},w.readyException=function(t){e.setTimeout(function(){throw t})};var F=w.Deferred();w.fn.ready=function(e){return F.then(e)["catch"](function(e){w.readyException(e)}),this},w.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--w.readyWait:w.isReady)||(w.isReady=!0,!0!==e&&--w.readyWait>0||F.resolveWith(r,[w]))}}),w.ready.then=F.then;function _(){r.removeEventListener("DOMContentLoaded",_),e.removeEventListener("load",_),w.ready()}"complete"===r.readyState||"loading"!==r.readyState&&!r.documentElement.doScroll?e.setTimeout(w.ready):(r.addEventListener("DOMContentLoaded",_),e.addEventListener("load",_));var z=function(e,t,n,r,i,o,a){var s=0,u=e.length,l=null==n;if("object"===x(n)){i=!0;for(s in n)z(e,t,s,n[s],!0,o,a)}else if(void 0!==r&&(i=!0,g(r)||(a=!0),l&&(a?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(w(e),n)})),t))for(;s1,null,!0)},removeData:function(e){return this.each(function(){K.remove(this,e)})}}),w.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=J.get(e,t),n&&(!r||Array.isArray(n)?r=J.access(e,t,w.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=w.queue(e,t),r=n.length,i=n.shift(),o=w._queueHooks(e,t),a=function(){w.dequeue(e,t)};"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,a,o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return J.get(e,n)||J.access(e,n,{empty:w.Callbacks("once memory").add(function(){J.remove(e,[t+"queue",n])})})}}),w.fn.extend({queue:function(e,t){var n=2;return"string"!=typeof e&&(t=e,e="fx",n--),arguments.length\x20\t\r\n\f]+)/i,he=/^$|^module$|\/(?:java|ecma)script/i,ge={option:[1,""," "],thead:[1,""],col:[2,""],tr:[2,""],td:[3,""],_default:[0,"",""]};ge.optgroup=ge.option,ge.tbody=ge.tfoot=ge.colgroup=ge.caption=ge.thead,ge.th=ge.td;function ye(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&N(e,t)?w.merge([e],n):n}function ve(e,t){for(var n=0,r=e.length;n-1)i&&i.push(o);else if(l=w.contains(o.ownerDocument,o),a=ye(f.appendChild(o),"script"),l&&ve(a),n){c=0;while(o=a[c++])he.test(o.type||"")&&n.push(o)}return f}!function(){var e=r.createDocumentFragment().appendChild(r.createElement("div")),t=r.createElement("input");t.setAttribute("type","radio"),t.setAttribute("checked","checked"),t.setAttribute("name","t"),e.appendChild(t),h.checkClone=e.cloneNode(!0).cloneNode(!0).lastChild.checked,e.innerHTML="",h.noCloneChecked=!!e.cloneNode(!0).lastChild.defaultValue}();var be=r.documentElement,we=/^key/,Te=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Ce=/^([^.]*)(?:\.(.+)|)/;function Ee(){return!0}function ke(){return!1}function Se(){try{return r.activeElement}catch(e){}}function De(e,t,n,r,i,o){var a,s;if("object"==typeof t){"string"!=typeof n&&(r=r||n,n=void 0);for(s in t)De(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=ke;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return w().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=w.guid++)),e.each(function(){w.event.add(this,t,i,r,n)})}w.event={global:{},add:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,y=J.get(e);if(y){n.handler&&(n=(o=n).handler,i=o.selector),i&&w.find.matchesSelector(be,i),n.guid||(n.guid=w.guid++),(u=y.events)||(u=y.events={}),(a=y.handle)||(a=y.handle=function(t){return"undefined"!=typeof w&&w.event.triggered!==t.type?w.event.dispatch.apply(e,arguments):void 0}),l=(t=(t||"").match(M)||[""]).length;while(l--)d=g=(s=Ce.exec(t[l])||[])[1],h=(s[2]||"").split(".").sort(),d&&(f=w.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=w.event.special[d]||{},c=w.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&w.expr.match.needsContext.test(i),namespace:h.join(".")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(e,r,h,a)||e.addEventListener&&e.addEventListener(d,a)),f.add&&(f.add.call(e,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),w.event.global[d]=!0)}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,y=J.hasData(e)&&J.get(e);if(y&&(u=y.events)){l=(t=(t||"").match(M)||[""]).length;while(l--)if(s=Ce.exec(t[l])||[],d=g=s[1],h=(s[2]||"").split(".").sort(),d){f=w.event.special[d]||{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;while(o--)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,y.handle)||w.removeEvent(e,d,y.handle),delete u[d])}else for(d in u)w.event.remove(e,d+t[l],n,r,!0);w.isEmptyObject(u)&&J.remove(e,"handle events")}},dispatch:function(e){var t=w.event.fix(e),n,r,i,o,a,s,u=new Array(arguments.length),l=(J.get(this,"events")||{})[t.type]||[],c=w.event.special[t.type]||{};for(u[0]=t,n=1;n=1))for(;l!==this;l=l.parentNode||this)if(1===l.nodeType&&("click"!==e.type||!0!==l.disabled)){for(o=[],a={},n=0;n-1:w.find(i,this,null,[l]).length),a[i]&&o.push(r);o.length&&s.push({elem:l,handlers:o})}return l=this,u\x20\t\r\n\f]*)[^>]*)\/>/gi,Ae=/