From 620006f565517a7da50a7a58a006cf841a2a2b92 Mon Sep 17 00:00:00 2001 From: Jannik ZANDER Date: Fri, 24 Jul 2020 06:56:11 +0200 Subject: [PATCH] Site updated --- 404.html | 4 ++-- about/index.html | 4 ++-- about/policy.html | 4 ++-- assets/js/{10.eab5c641.js => 10.788d1c1d.js} | 2 +- assets/js/{11.1ca8e78a.js => 11.8019c513.js} | 2 +- assets/js/{12.4daa4100.js => 12.9c77e6c7.js} | 2 +- assets/js/{15.b672f514.js => 15.f53cdb17.js} | 2 +- assets/js/{app.6b2a85b0.js => app.f4960d85.js} | 6 +++--- index.html | 4 ++-- posts/2019/01/02/garden/index.html | 4 ++-- posts/2019/08/08/floating-dock/index.html | 4 ++-- posts/index.html | 4 ++-- sitemap.xml | 2 +- tags/house/index.html | 4 ++-- tags/index.html | 10 +++++----- tags/kayak/index.html | 4 ++-- 16 files changed, 31 insertions(+), 31 deletions(-) rename assets/js/{10.eab5c641.js => 10.788d1c1d.js} (65%) rename assets/js/{11.1ca8e78a.js => 11.8019c513.js} (96%) rename assets/js/{12.4daa4100.js => 12.9c77e6c7.js} (70%) rename assets/js/{15.b672f514.js => 15.f53cdb17.js} (95%) rename assets/js/{app.6b2a85b0.js => app.f4960d85.js} (97%) diff --git a/404.html b/404.html index a5e8430..2996c4c 100644 --- a/404.html +++ b/404.html @@ -7,7 +7,7 @@ - + @@ -16,6 +16,6 @@

404

There's nothing here.
Take me home.
- + diff --git a/about/index.html b/about/index.html index a6c63c6..509f2d8 100644 --- a/about/index.html +++ b/about/index.html @@ -7,7 +7,7 @@ - + @@ -19,6 +19,6 @@ Tange Søvej 47
DENMARK

jannik@zndr.dk

- + diff --git a/about/policy.html b/about/policy.html index aebfe69..ed3e398 100644 --- a/about/policy.html +++ b/about/policy.html @@ -7,7 +7,7 @@ - + @@ -16,6 +16,6 @@

# Privacy policy

This privacy policy ("Policy") describes how Website Operator ("Website Operator", "we", "us" or "our") collects, protects and uses the personally identifiable information ("Personal Information") you ("User", "you" or "your") may provide on the zndr.dk website and any of its products or services (collectively, "Website" or "Services"). It also describes the choices available to you regarding our use of your Personal Information and how you can access and update this information. This Policy does not apply to the practices of companies that we do not own or control, or to individuals that we do not employ or manage.

# Automatic collection of information

When you visit the Website our servers automatically record information that your browser sends. This data may include information such as your device's IP address, browser type and version, operating system type and version, language preferences or the webpage you were visiting before you came to our Website, pages of our Website that you visit, the time spent on those pages, information you search for on our Website, access times and dates, and other statistics.

# Collection of personal information

You can visit the Website without telling us who you are or revealing any information by which someone could identify you as a specific, identifiable individual. If, however, you wish to use some of the Website's features, you will be asked to provide certain Personal Information (for example, your name and e-mail address). We receive and store any information you knowingly provide to us when you create an account, publish content, or fill any online forms on the Website. When required, this information may include your email address, name, phone number, address, or other Personal Information. You can choose not to provide us with your Personal Information, but then you may not be able to take advantage of some of the Website's features. Users who are uncertain about what information is mandatory are welcome to contact us.

# Managing personal information

You are able to access, add to, update and delete certain Personal Information about you. The information you can view, update, and delete may change as the Website or Services change. When you update information, however, we may maintain a copy of the unrevised information in our records. Some information may remain in our private records after your deletion of such information from your account. We will retain and use your Personal Information for the period necessary to comply with our legal obligations, resolve disputes, and enforce our agreements unless a longer retention period is required or permitted by law. We may use any aggregated data derived from or incorporating your Personal Information after you update or delete it, but not in a manner that would identify you personally. Once the retention period expires, Personal Information shall be deleted. Therefore, the right to access, the right to erasure, the right to rectification and the right to data portability cannot be enforced after the expiration of the retention period.

# Use and processing of collected information

Any of the information we collect from you may be used to personalize your experience; improve our Website; improve customer service and respond to queries and emails of our customers; send notification emails such as password reminders, updates, etc; run and operate our Website and Services. Information collected automatically is used only to identify potential cases of abuse and establish statistical information regarding Website usage. This statistical information is not otherwise aggregated in such a way that would identify any particular user of the system.

We may process Personal Information related to you if one of the following applies: (i) You have given your consent for one or more specific purposes. Note that under some legislations we may be allowed to process information until you object to such processing (by opting out), without having to rely on consent or any other of the following legal bases below. This, however, does not apply, whenever the processing of Personal Information is subject to European data protection law; (ii) Provision of information is necessary for the performance of an agreement with you and/or for any pre-contractual obligations thereof; (iii) Processing is necessary for compliance with a legal obligation to which you are subject; (iv) Processing is related to a task that is carried out in the public interest or in the exercise of official authority vested in us; (v) Processing is necessary for the purposes of the legitimate interests pursued by us or by a third party. In any case, we will be happy to clarify the specific legal basis that applies to the processing, and in particular whether the provision of Personal Information is a statutory or contractual requirement, or a requirement necessary to enter into a contract.

# Information transfer and storage

Depending on your location, data transfers may involve transferring and storing your information in a country other than your own. You are entitled to learn about the legal basis of information transfers to a country outside the European Union or to any international organization governed by public international law or set up by two or more countries, such as the UN, and about the security measures taken by us to safeguard your information. If any such transfer takes place, you can find out more by checking the relevant sections of this document or inquire with us using the information provided in the contact section.

# The rights of users

You may exercise certain rights regarding your information processed by us. In particular, you have the right to do the following: (i) you have the right to withdraw consent where you have previously given your consent to the processing of your information; (ii) you have the right to object to the processing of your information if the processing is carried out on a legal basis other than consent; (iii) you have the right to learn if information is being processed by us, obtain disclosure regarding certain aspects of the processing and obtain a copy of the information undergoing processing; (iv) you have the right to verify the accuracy of your information and ask for it to be updated or corrected; (v) you have the right, under certain circumstances, to restrict the processing of your information, in which case, we will not process your information for any purpose other than storing it; (vi) you have the right, under certain circumstances, to obtain the erasure of your Personal Information from us; (vii) you have the right to receive your information in a structured, commonly used and machine readable format and, if technically feasible, to have it transmitted to another controller without any hindrance. This provision is applicable provided that your information is processed by automated means and that the processing is based on your consent, on a contract which you are part of or on pre-contractual obligations thereof.

# The right to object to processing

Where Personal Information is processed for the public interest, in the exercise of an official authority vested in us or for the purposes of the legitimate interests pursued by us, you may object to such processing by providing a ground related to your particular situation to justify the objection. You must know that, however, should your Personal Information be processed for direct marketing purposes, you can object to that processing at any time without providing any justification. To learn, whether we are processing Personal Information for direct marketing purposes, you may refer to the relevant sections of this document.

# How to exercise these rights

Any requests to exercise User rights can be directed to the Owner through the contact details provided in this document. These requests can be exercised free of charge and will be addressed by the Owner as early as possible.

# Privacy of children

We recognize the need to provide further privacy protections with respect to Personal Information we may collect from children and take many special precautions to protect the privacy of children. We do not require a child to disclose more information than is reasonably necessary to use the Website and Services. Parents can review their child's information, delete it, and refuse to allow any further collection or use of such information. Parents have an easy method for giving consent. We encourage children to consult with their parents before submitting any information to any Website, including zndr.dk. We believe parents should be involved in the online activities of their children and suggest that parents do their best to provide their children with a safe and friendly online environment.

# Do Not Track signals

Some browsers incorporate a Do Not Track feature that signals to websites you visit that you do not want to have your online activity tracked. Tracking is not the same as using or collecting information in connection with a website. For these purposes, tracking refers to collecting personally identifiable information from consumers who use or visit a website or online service as they move across different websites over time. How browsers communicate the Do Not Track signal is not yet uniform. As a result, this Website is not yet set up to interpret or respond to Do Not Track signals communicated by your browser. Even so, as described in more detail throughout this Policy, we limit our use and collection of your personal information.

Our Website contains links to other websites that are not owned or controlled by us. Please be aware that we are not responsible for the privacy practices of such other websites or third-parties. We encourage you to be aware when you leave our Website and to read the privacy statements of each and every website that may collect Personal Information.

# Information security

We secure information you provide on computer servers in a controlled, secure environment, protected from unauthorized access, use, or disclosure. We maintain reasonable administrative, technical, and physical safeguards in an effort to protect against unauthorized access, use, modification, and disclosure of Personal Information in its control and custody. However, no data transmission over the Internet or wireless network can be guaranteed. Therefore, while we strive to protect your Personal Information, you acknowledge that (i) there are security and privacy limitations of the Internet which are beyond our control; (ii) the security, integrity, and privacy of any and all information and data exchanged between you and our Website cannot be guaranteed; and (iii) any such information and data may be viewed or tampered with in transit by a third-party, despite best efforts.

# Data breach

In the event we become aware that the security of the Website has been compromised or users Personal Information has been disclosed to unrelated third parties as a result of external activity, including, but not limited to, security attacks or fraud, we reserve the right to take reasonably appropriate measures, including, but not limited to, investigation and reporting, as well as notification to and cooperation with law enforcement authorities. In the event of a data breach, we will make reasonable efforts to notify affected individuals if we believe that there is a reasonable risk of harm to the user as a result of the breach or if notice is otherwise required by law. When we do, we will send you an email.

# Changes and amendments

We may update this Privacy Policy from time to time in our discretion and will notify you of any material changes to the way in which we treat Personal Information. When changes are made, we will revise the updated date at the bottom of this page. We may also provide notice to you in other ways in our discretion, such as through contact information you have provided. Any updated version of this Privacy Policy will be effective immediately upon the posting of the revised Privacy Policy unless otherwise specified. Your continued use of the Website or Services after the effective date of the revised Privacy Policy (or such other act specified at that time) will constitute your consent to those changes. However, we will not, without your consent, use your Personal Data in a manner materially different than what was stated at the time your Personal Data was collected.

# Acceptance of this policy

You acknowledge that you have read this Policy and agree to all its terms and conditions. By using the Website or its Services you agree to be bound by this Policy. If you do not agree to abide by the terms of this Policy, you are not authorized to use or access the Website and its Services.

# Contacting us

If you would like to contact us to understand more about this Policy or wish to contact us concerning any matter relating to individual rights and your Personal Information, you may send an email to webmaster@zndr.dk.

This document was last updated on December 23, 2019

- + diff --git a/assets/js/10.eab5c641.js b/assets/js/10.788d1c1d.js similarity index 65% rename from assets/js/10.eab5c641.js rename to assets/js/10.788d1c1d.js index 70e0f43..f9a94d4 100644 --- a/assets/js/10.eab5c641.js +++ b/assets/js/10.788d1c1d.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[10],{247:function(t,e,r){t.exports=r.p+"assets/img/IMG_20180806_155155.e917c7b4.jpg"},248:function(t,e,r){t.exports=r.p+"assets/img/thumb_IMG_3833_1024.59bf7a32.jpg"},277:function(t,e,r){"use strict";r.r(e);var s=r(3),n=Object(s.a)({},(function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[s("h1",{attrs:{id:"frontmatter-title"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#frontmatter-title"}},[t._v("#")]),t._v(" "+t._s(t.$frontmatter.title))]),t._v(" "),s("p",[t._v("I have been spending weeks cutting down the small forrest in front of our house. So now we have something that resembles a garden.")]),t._v(" "),s("p",[s("img",{attrs:{src:r(247),alt:"Garden after"}})]),t._v(" "),s("p",[t._v("Before it looked like this")]),t._v(" "),s("p",[s("img",{attrs:{src:r(248),alt:"Garden before"}})])])}),[],!1,null,null,null);e.default=n.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[10],{248:function(t,e,r){t.exports=r.p+"assets/img/IMG_20180806_155155.e917c7b4.jpg"},249:function(t,e,r){t.exports=r.p+"assets/img/thumb_IMG_3833_1024.59bf7a32.jpg"},275:function(t,e,r){"use strict";r.r(e);var s=r(3),n=Object(s.a)({},(function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[s("h1",{attrs:{id:"frontmatter-title"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#frontmatter-title"}},[t._v("#")]),t._v(" "+t._s(t.$frontmatter.title))]),t._v(" "),s("p",[t._v("I have been spending weeks cutting down the small forrest in front of our house. So now we have something that resembles a garden.")]),t._v(" "),s("p",[s("img",{attrs:{src:r(248),alt:"Garden after"}})]),t._v(" "),s("p",[t._v("Before it looked like this")]),t._v(" "),s("p",[s("img",{attrs:{src:r(249),alt:"Garden before"}})])])}),[],!1,null,null,null);e.default=n.exports}}]); \ No newline at end of file diff --git a/assets/js/11.1ca8e78a.js b/assets/js/11.8019c513.js similarity index 96% rename from assets/js/11.1ca8e78a.js rename to assets/js/11.8019c513.js index 2906434..5a04a8a 100644 --- a/assets/js/11.1ca8e78a.js +++ b/assets/js/11.8019c513.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[11],{246:function(e,t,a){e.exports=a.p+"assets/img/windy.91ee6f05.jpg"},271:function(e,t,a){"use strict";a.r(t);var r=a(3),n=Object(r.a)({},(function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[r("h1",{attrs:{id:"frontmatter-title"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#frontmatter-title"}},[e._v("#")]),e._v(" "+e._s(e.$frontmatter.title))]),e._v(" "),r("p",[e._v(e._s(e.$description))]),e._v(" "),r("h4",{attrs:{id:"links"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#links"}},[e._v("#")]),e._v(" Links")]),e._v(" "),r("ul",[r("li",[r("a",{attrs:{href:"https://cloud.zndr.dk",target:"_blank",rel:"noopener noreferrer"}},[e._v("Cloud"),r("OutboundLink")],1)]),e._v(" "),r("li",[r("a",{attrs:{href:"https://mail.zndr.dk",target:"_blank",rel:"noopener noreferrer"}},[e._v("Mail"),r("OutboundLink")],1)]),e._v(" "),r("li",[r("a",{attrs:{href:"https://play.zndr.dk",target:"_blank",rel:"noopener noreferrer"}},[e._v("Play"),r("OutboundLink")],1)]),e._v(" "),r("li",[r("a",{attrs:{href:"https://git.zndr.dk",target:"_blank",rel:"noopener noreferrer"}},[e._v("Git"),r("OutboundLink")],1)]),e._v(" "),r("li",[r("a",{attrs:{href:"https://pma.zndr.dk",target:"_blank",rel:"noopener noreferrer"}},[e._v("Databases"),r("OutboundLink")],1)]),e._v(" "),r("li",[r("a",{attrs:{href:"https://pfa.zndr.dk",target:"_blank",rel:"noopener noreferrer"}},[e._v("Users"),r("OutboundLink")],1)])]),e._v(" "),r("h4",{attrs:{id:"advantages"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#advantages"}},[e._v("#")]),e._v(" Advantages")]),e._v(" "),r("ul",[r("li",[e._v("Smart home: connect everything to your server.")]),e._v(" "),r("li",[e._v("Most personal data is private so what is more natural than storing it at home?")]),e._v(" "),r("li",[e._v("Infinite storage: just add another hard drive.")]),e._v(" "),r("li",[e._v("Go through good learning experiences.")])]),e._v(" "),r("h4",{attrs:{id:"disadvantages"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#disadvantages"}},[e._v("#")]),e._v(" Disadvantages")]),e._v(" "),r("ul",[r("li",[e._v("Needs some maintenance- and installation time.")]),e._v(" "),r("li",[e._v("Whenever my server is down I cannot receive emails (or anything else).")])]),e._v(" "),r("h3",{attrs:{id:"linux-server"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#linux-server"}},[e._v("#")]),e._v(" Linux server")]),e._v(" "),r("p",[e._v("I am using a Linux distribution with a rolling release. Continues updates keeps the installation up-to-date and I avoid having to upgrade to next 'stable' release every 2 years. Upgrading to next 'stable' release means days of work with reinstallations and broken configurations. And 2 years later I have forgotten how I configured it last time. With a rolling release I install once and update regularly. I hardly had any issues with these frequent updates. It keeps the server fresh and secure. Short downtimes are not a serious matter for my home server.")]),e._v(" "),r("h3",{attrs:{id:"tower-cabinet"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#tower-cabinet"}},[e._v("#")]),e._v(" Tower cabinet")]),e._v(" "),r("p",[e._v("I own Soldam Alcadia ZR300 Black Knight Casing bought in Japan. It can fit an extended-ATX motherboard and plenty of hard drives. I do not need any tools to open it. The crews can be removed by hand.")]),e._v(" "),r("p",[r("img",{attrs:{src:a(246),alt:"High-tower"}})]),e._v(" "),r("p",[e._v("Of course a cabinet alone does not make a server. But I will not go into details with the content of the cabinet. It is pretty standard components of older type. The server gets upgraded with recycled components from other desktop computers in my house.")]),e._v(" "),r("h3",{attrs:{id:"fixed-ip-address-domain-name-and-dns"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#fixed-ip-address-domain-name-and-dns"}},[e._v("#")]),e._v(" Fixed IP address, domain name and DNS")]),e._v(" "),r("p",[e._v("In order to setup a personal mail server a fixed IP address and domain name is needed. I got a fiber connection to my house from the local ISP "),r("a",{attrs:{href:"https://eniig.dk",target:"_blank",rel:"noopener noreferrer"}},[e._v("Eniig fiber"),r("OutboundLink")],1),e._v(". It was installed soon after I moved into my house. A fitting domain name was found at "),r("a",{attrs:{href:"https://www.dk-hostmaster.dk",target:"_blank",rel:"noopener noreferrer"}},[e._v("dk-hostmaster"),r("OutboundLink")],1),e._v(" and ordered.")]),e._v(" "),r("p",[e._v("I decided to store my DNS settings at "),r("a",{attrs:{href:"https://cloudflare.com",target:"_blank",rel:"noopener noreferrer"}},[e._v("Cloudflare"),r("OutboundLink")],1),e._v(". In order to get a secure connection to my server I had to setup many DNS records")]),e._v(" "),r("ul",[r("li",[e._v("A record for zndr.dk (@zndr.dk)")]),e._v(" "),r("li",[e._v("CNAME wildcard record for subdomains (*.zndr.dk)")]),e._v(" "),r("li",[e._v("A record for mail.zndr.dk")]),e._v(" "),r("li",[e._v("MX record mail.zndr.dk")]),e._v(" "),r("li",[e._v("CAA record for LetsEncrypt")]),e._v(" "),r("li",[e._v("TXT records for DMARC1, DKIM1 and SPF1")]),e._v(" "),r("li",[e._v("DS record for DNSSEC")])]),e._v(" "),r("p",[e._v("I had to call the ISP and ask them to setup a reverse DNS record for my mail server (mail.zndr.dk) which they did. At dk-hostmaster I could login myself to store Key and activate DNSSEC.")]),e._v(" "),r("h3",{attrs:{id:"back-up-of-data"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#back-up-of-data"}},[e._v("#")]),e._v(" Back up of data")]),e._v(" "),r("p",[e._v("TBD")]),e._v(" "),r("h3",{attrs:{id:"hard-drive-docking-station"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#hard-drive-docking-station"}},[e._v("#")]),e._v(" Hard drive docking station")]),e._v(" "),r("p",[e._v("It is handy to have a hard drive docking station. I also acts as an external drive. Always have some spare drives around.")]),e._v(" "),r("h3",{attrs:{id:"make-your-own-ethernet-cables"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#make-your-own-ethernet-cables"}},[e._v("#")]),e._v(" Make your own ethernet cables")]),e._v(" "),r("p",[e._v("TBD")])])}),[],!1,null,null,null);t.default=n.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[11],{247:function(e,t,a){e.exports=a.p+"assets/img/windy.91ee6f05.jpg"},277:function(e,t,a){"use strict";a.r(t);var r=a(3),n=Object(r.a)({},(function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[r("h1",{attrs:{id:"frontmatter-title"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#frontmatter-title"}},[e._v("#")]),e._v(" "+e._s(e.$frontmatter.title))]),e._v(" "),r("p",[e._v(e._s(e.$description))]),e._v(" "),r("h4",{attrs:{id:"links"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#links"}},[e._v("#")]),e._v(" Links")]),e._v(" "),r("ul",[r("li",[r("a",{attrs:{href:"https://cloud.zndr.dk",target:"_blank",rel:"noopener noreferrer"}},[e._v("Cloud"),r("OutboundLink")],1)]),e._v(" "),r("li",[r("a",{attrs:{href:"https://mail.zndr.dk",target:"_blank",rel:"noopener noreferrer"}},[e._v("Mail"),r("OutboundLink")],1)]),e._v(" "),r("li",[r("a",{attrs:{href:"https://play.zndr.dk",target:"_blank",rel:"noopener noreferrer"}},[e._v("Play"),r("OutboundLink")],1)]),e._v(" "),r("li",[r("a",{attrs:{href:"https://git.zndr.dk",target:"_blank",rel:"noopener noreferrer"}},[e._v("Git"),r("OutboundLink")],1)]),e._v(" "),r("li",[r("a",{attrs:{href:"https://pma.zndr.dk",target:"_blank",rel:"noopener noreferrer"}},[e._v("Databases"),r("OutboundLink")],1)]),e._v(" "),r("li",[r("a",{attrs:{href:"https://pfa.zndr.dk",target:"_blank",rel:"noopener noreferrer"}},[e._v("Users"),r("OutboundLink")],1)])]),e._v(" "),r("h4",{attrs:{id:"advantages"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#advantages"}},[e._v("#")]),e._v(" Advantages")]),e._v(" "),r("ul",[r("li",[e._v("Smart home: connect everything to your server.")]),e._v(" "),r("li",[e._v("Most personal data is private so what is more natural than storing it at home?")]),e._v(" "),r("li",[e._v("Infinite storage: just add another hard drive.")]),e._v(" "),r("li",[e._v("Go through good learning experiences.")])]),e._v(" "),r("h4",{attrs:{id:"disadvantages"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#disadvantages"}},[e._v("#")]),e._v(" Disadvantages")]),e._v(" "),r("ul",[r("li",[e._v("Needs some maintenance- and installation time.")]),e._v(" "),r("li",[e._v("Whenever my server is down I cannot receive emails (or anything else).")])]),e._v(" "),r("h3",{attrs:{id:"linux-server"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#linux-server"}},[e._v("#")]),e._v(" Linux server")]),e._v(" "),r("p",[e._v("I am using a Linux distribution with a rolling release. Continues updates keeps the installation up-to-date and I avoid having to upgrade to next 'stable' release every 2 years. Upgrading to next 'stable' release means days of work with reinstallations and broken configurations. And 2 years later I have forgotten how I configured it last time. With a rolling release I install once and update regularly. I hardly had any issues with these frequent updates. It keeps the server fresh and secure. Short downtimes are not a serious matter for my home server.")]),e._v(" "),r("h3",{attrs:{id:"tower-cabinet"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#tower-cabinet"}},[e._v("#")]),e._v(" Tower cabinet")]),e._v(" "),r("p",[e._v("I own Soldam Alcadia ZR300 Black Knight Casing bought in Japan. It can fit an extended-ATX motherboard and plenty of hard drives. I do not need any tools to open it. The crews can be removed by hand.")]),e._v(" "),r("p",[r("img",{attrs:{src:a(247),alt:"High-tower"}})]),e._v(" "),r("p",[e._v("Of course a cabinet alone does not make a server. But I will not go into details with the content of the cabinet. It is pretty standard components of older type. The server gets upgraded with recycled components from other desktop computers in my house.")]),e._v(" "),r("h3",{attrs:{id:"fixed-ip-address-domain-name-and-dns"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#fixed-ip-address-domain-name-and-dns"}},[e._v("#")]),e._v(" Fixed IP address, domain name and DNS")]),e._v(" "),r("p",[e._v("In order to setup a personal mail server a fixed IP address and domain name is needed. I got a fiber connection to my house from the local ISP "),r("a",{attrs:{href:"https://eniig.dk",target:"_blank",rel:"noopener noreferrer"}},[e._v("Eniig fiber"),r("OutboundLink")],1),e._v(". It was installed soon after I moved into my house. A fitting domain name was found at "),r("a",{attrs:{href:"https://www.dk-hostmaster.dk",target:"_blank",rel:"noopener noreferrer"}},[e._v("dk-hostmaster"),r("OutboundLink")],1),e._v(" and ordered.")]),e._v(" "),r("p",[e._v("I decided to store my DNS settings at "),r("a",{attrs:{href:"https://cloudflare.com",target:"_blank",rel:"noopener noreferrer"}},[e._v("Cloudflare"),r("OutboundLink")],1),e._v(". In order to get a secure connection to my server I had to setup many DNS records")]),e._v(" "),r("ul",[r("li",[e._v("A record for zndr.dk (@zndr.dk)")]),e._v(" "),r("li",[e._v("CNAME wildcard record for subdomains (*.zndr.dk)")]),e._v(" "),r("li",[e._v("A record for mail.zndr.dk")]),e._v(" "),r("li",[e._v("MX record mail.zndr.dk")]),e._v(" "),r("li",[e._v("CAA record for LetsEncrypt")]),e._v(" "),r("li",[e._v("TXT records for DMARC1, DKIM1 and SPF1")]),e._v(" "),r("li",[e._v("DS record for DNSSEC")])]),e._v(" "),r("p",[e._v("I had to call the ISP and ask them to setup a reverse DNS record for my mail server (mail.zndr.dk) which they did. At dk-hostmaster I could login myself to store Key and activate DNSSEC.")]),e._v(" "),r("h3",{attrs:{id:"back-up-of-data"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#back-up-of-data"}},[e._v("#")]),e._v(" Back up of data")]),e._v(" "),r("p",[e._v("TBD")]),e._v(" "),r("h3",{attrs:{id:"hard-drive-docking-station"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#hard-drive-docking-station"}},[e._v("#")]),e._v(" Hard drive docking station")]),e._v(" "),r("p",[e._v("It is handy to have a hard drive docking station. I also acts as an external drive. Always have some spare drives around.")]),e._v(" "),r("h3",{attrs:{id:"make-your-own-ethernet-cables"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#make-your-own-ethernet-cables"}},[e._v("#")]),e._v(" Make your own ethernet cables")]),e._v(" "),r("p",[e._v("TBD")])])}),[],!1,null,null,null);t.default=n.exports}}]); \ No newline at end of file diff --git a/assets/js/12.4daa4100.js b/assets/js/12.9c77e6c7.js similarity index 70% rename from assets/js/12.4daa4100.js rename to assets/js/12.9c77e6c7.js index e700510..f2e2e08 100644 --- a/assets/js/12.4daa4100.js +++ b/assets/js/12.9c77e6c7.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[12],{249:function(t,e,a){t.exports=a.p+"assets/img/floating_dock.fe6acefa.jpg"},273:function(t,e,a){"use strict";a.r(e);var r=a(3),n=Object(r.a)({},(function(){var t=this,e=t.$createElement,r=t._self._c||e;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"frontmatter-title"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#frontmatter-title"}},[t._v("#")]),t._v(" "+t._s(t.$frontmatter.title))]),t._v(" "),r("p",[t._v("Here is a nice floating dock I built for children to play, and for me and my kayak.")]),t._v(" "),r("p",[r("img",{attrs:{src:a(249),alt:"Floating Dock"}})])])}),[],!1,null,null,null);e.default=n.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[12],{246:function(t,e,a){t.exports=a.p+"assets/img/floating_dock.fe6acefa.jpg"},271:function(t,e,a){"use strict";a.r(e);var r=a(3),n=Object(r.a)({},(function(){var t=this,e=t.$createElement,r=t._self._c||e;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"frontmatter-title"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#frontmatter-title"}},[t._v("#")]),t._v(" "+t._s(t.$frontmatter.title))]),t._v(" "),r("p",[t._v("Here is a nice floating dock I built for children to play, and for me and my kayak.")]),t._v(" "),r("p",[r("img",{attrs:{src:a(246),alt:"Floating Dock"}})])])}),[],!1,null,null,null);e.default=n.exports}}]); \ No newline at end of file diff --git a/assets/js/15.b672f514.js b/assets/js/15.f53cdb17.js similarity index 95% rename from assets/js/15.b672f514.js rename to assets/js/15.f53cdb17.js index 80eec81..b6f3c69 100644 --- a/assets/js/15.b672f514.js +++ b/assets/js/15.f53cdb17.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[15],{275:function(t,e,r){"use strict";r.r(e);var a=r(3),n=Object(a.a)({},(function(){var t=this,e=t.$createElement,r=t._self._c||e;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"frontmatter-title"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#frontmatter-title"}},[t._v("#")]),t._v(" "+t._s(t.$frontmatter.title))]),t._v(" "),r("p",[t._v("Hello!")]),t._v(" "),r("p",[t._v("I am Jannik. After living seven years in Sweden and eight years in Japan, I now live in the small village Tange, in my home country of Denmark. I currently work as Software Architect in the High-End Pumps team for Grundfos; before that, I worked for Ericsson, with Physical Layer Software for 3G and 4G mobile platforms on which a cellular mobile phone can be build.")]),t._v(" "),r("h1",{attrs:{id:"contact"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#contact"}},[t._v("#")]),t._v(" Contact")]),t._v(" "),r("p",[r("strong",[t._v("Jannik Zander")]),r("br"),t._v("\nTange Søvej 47"),r("br"),t._v("\n8850 Bjerringbro"),r("br"),t._v("\nDENMARK")]),t._v(" "),r("p",[r("a",{attrs:{href:"mailto:jannik@zndr.dk"}},[t._v("jannik@zndr.dk")])]),t._v(" "),r("iframe",{staticStyle:{border:"0"},attrs:{src:"https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d2211.3125143496004!2d9.574938315970856!3d56.34169195388611!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x464bf0ccc745efd1%3A0x218cc261b741bfd2!2sTange+S%C3%B8vej+47%2C+8850+Bjerringbro!5e0!3m2!1sen!2sdk!4v1523647336754",width:"400",height:"300",frameborder:"0",allowfullscreen:""}})])}),[],!1,null,null,null);e.default=n.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[15],{273:function(t,e,r){"use strict";r.r(e);var a=r(3),n=Object(a.a)({},(function(){var t=this,e=t.$createElement,r=t._self._c||e;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"frontmatter-title"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#frontmatter-title"}},[t._v("#")]),t._v(" "+t._s(t.$frontmatter.title))]),t._v(" "),r("p",[t._v("Hello!")]),t._v(" "),r("p",[t._v("I am Jannik. After living seven years in Sweden and eight years in Japan, I now live in the small village Tange, in my home country of Denmark. I currently work as Software Architect in the High-End Pumps team for Grundfos; before that, I worked for Ericsson, with Physical Layer Software for 3G and 4G mobile platforms on which a cellular mobile phone can be build.")]),t._v(" "),r("h1",{attrs:{id:"contact"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#contact"}},[t._v("#")]),t._v(" Contact")]),t._v(" "),r("p",[r("strong",[t._v("Jannik Zander")]),r("br"),t._v("\nTange Søvej 47"),r("br"),t._v("\n8850 Bjerringbro"),r("br"),t._v("\nDENMARK")]),t._v(" "),r("p",[r("a",{attrs:{href:"mailto:jannik@zndr.dk"}},[t._v("jannik@zndr.dk")])]),t._v(" "),r("iframe",{staticStyle:{border:"0"},attrs:{src:"https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d2211.3125143496004!2d9.574938315970856!3d56.34169195388611!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x464bf0ccc745efd1%3A0x218cc261b741bfd2!2sTange+S%C3%B8vej+47%2C+8850+Bjerringbro!5e0!3m2!1sen!2sdk!4v1523647336754",width:"400",height:"300",frameborder:"0",allowfullscreen:""}})])}),[],!1,null,null,null);e.default=n.exports}}]); \ No newline at end of file diff --git a/assets/js/app.6b2a85b0.js b/assets/js/app.f4960d85.js similarity index 97% rename from assets/js/app.6b2a85b0.js rename to assets/js/app.f4960d85.js index 5d42d44..06e4407 100644 --- a/assets/js/app.6b2a85b0.js +++ b/assets/js/app.f4960d85.js @@ -1,13 +1,13 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[0],[]]);!function(t){function e(e){for(var r,a,s=e[0],c=e[1],u=e[2],f=0,p=[];f=0&&Math.floor(e)===e&&isFinite(t)}function d(t){return i(t)&&"function"==typeof t.then&&"function"==typeof t.catch}function h(t){return null==t?"":Array.isArray(t)||l(t)&&t.toString===u?JSON.stringify(t,null,2):String(t)}function v(t){var e=parseFloat(t);return isNaN(e)?t:e}function m(t,e){for(var n=Object.create(null),r=t.split(","),o=0;o-1)return t.splice(n,1)}}var b=Object.prototype.hasOwnProperty;function _(t,e){return b.call(t,e)}function w(t){var e=Object.create(null);return function(n){return e[n]||(e[n]=t(n))}}var x=/-(\w)/g,k=w((function(t){return t.replace(x,(function(t,e){return e?e.toUpperCase():""}))})),C=w((function(t){return t.charAt(0).toUpperCase()+t.slice(1)})),$=/\B([A-Z])/g,O=w((function(t){return t.replace($,"-$1").toLowerCase()}));var A=Function.prototype.bind?function(t,e){return t.bind(e)}:function(t,e){function n(n){var r=arguments.length;return r?r>1?t.apply(e,arguments):t.call(e,n):t.call(e)}return n._length=t.length,n};function E(t,e){e=e||0;for(var n=t.length-e,r=new Array(n);n--;)r[n]=t[n+e];return r}function S(t,e){for(var n in e)t[n]=e[n];return t}function j(t){for(var e={},n=0;n0,Y=J&&J.indexOf("edge/")>0,Q=(J&&J.indexOf("android"),J&&/iphone|ipad|ipod|ios/.test(J)||"ios"===G),tt=(J&&/chrome\/\d+/.test(J),J&&/phantomjs/.test(J),J&&J.match(/firefox\/(\d+)/)),et={}.watch,nt=!1;if(K)try{var rt={};Object.defineProperty(rt,"passive",{get:function(){nt=!0}}),window.addEventListener("test-passive",null,rt)}catch(t){}var ot=function(){return void 0===q&&(q=!K&&!W&&"undefined"!=typeof global&&(global.process&&"server"===global.process.env.VUE_ENV)),q},it=K&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function at(t){return"function"==typeof t&&/native code/.test(t.toString())}var st,ct="undefined"!=typeof Symbol&&at(Symbol)&&"undefined"!=typeof Reflect&&at(Reflect.ownKeys);st="undefined"!=typeof Set&&at(Set)?Set:function(){function t(){this.set=Object.create(null)}return t.prototype.has=function(t){return!0===this.set[t]},t.prototype.add=function(t){this.set[t]=!0},t.prototype.clear=function(){this.set=Object.create(null)},t}();var ut=P,lt=0,ft=function(){this.id=lt++,this.subs=[]};ft.prototype.addSub=function(t){this.subs.push(t)},ft.prototype.removeSub=function(t){y(this.subs,t)},ft.prototype.depend=function(){ft.target&&ft.target.addDep(this)},ft.prototype.notify=function(){var t=this.subs.slice();for(var e=0,n=t.length;e-1)if(i&&!_(o,"default"))a=!1;else if(""===a||a===O(t)){var c=Ut(String,o.type);(c<0||s0&&(le((c=t(c,(n||"")+"_"+r))[0])&&le(l)&&(f[u]=yt(l.text+c[0].text),c.shift()),f.push.apply(f,c)):s(c)?le(l)?f[u]=yt(l.text+c):""!==c&&f.push(yt(c)):le(c)&&le(l)?f[u]=yt(l.text+c.text):(a(e._isVList)&&i(c.tag)&&o(c.key)&&i(n)&&(c.key="__vlist"+n+"_"+r+"__"),f.push(c)));return f}(t):void 0}function le(t){return i(t)&&i(t.text)&&!1===t.isComment}function fe(t,e){if(t){for(var n=Object.create(null),r=ct?Reflect.ownKeys(t):Object.keys(t),o=0;o0,a=t?!!t.$stable:!i,s=t&&t.$key;if(t){if(t._normalized)return t._normalized;if(a&&n&&n!==r&&s===n.$key&&!i&&!n.$hasNormal)return n;for(var c in o={},t)t[c]&&"$"!==c[0]&&(o[c]=ve(e,c,t[c]))}else o={};for(var u in e)u in o||(o[u]=me(e,u));return t&&Object.isExtensible(t)&&(t._normalized=o),B(o,"$stable",a),B(o,"$key",s),B(o,"$hasNormal",i),o}function ve(t,e,n){var r=function(){var t=arguments.length?n.apply(null,arguments):n({});return(t=t&&"object"==typeof t&&!Array.isArray(t)?[t]:ue(t))&&(0===t.length||1===t.length&&t[0].isComment)?void 0:t};return n.proxy&&Object.defineProperty(t,e,{get:r,enumerable:!0,configurable:!0}),r}function me(t,e){return function(){return t[e]}}function ge(t,e){var n,r,o,a,s;if(Array.isArray(t)||"string"==typeof t)for(n=new Array(t.length),r=0,o=t.length;rdocument.createEvent("Event").timeStamp&&(ln=function(){return fn.now()})}function pn(){var t,e;for(un=ln(),sn=!0,nn.sort((function(t,e){return t.id-e.id})),cn=0;cncn&&nn[n].id>t.id;)n--;nn.splice(n+1,0,t)}else nn.push(t);an||(an=!0,ee(pn))}}(this)},hn.prototype.run=function(){if(this.active){var t=this.get();if(t!==this.value||c(t)||this.deep){var e=this.value;if(this.value=t,this.user)try{this.cb.call(this.vm,t,e)}catch(t){Bt(t,this.vm,'callback for watcher "'+this.expression+'"')}else this.cb.call(this.vm,t,e)}}},hn.prototype.evaluate=function(){this.value=this.get(),this.dirty=!1},hn.prototype.depend=function(){for(var t=this.deps.length;t--;)this.deps[t].depend()},hn.prototype.teardown=function(){if(this.active){this.vm._isBeingDestroyed||y(this.vm._watchers,this);for(var t=this.deps.length;t--;)this.deps[t].removeSub(this);this.active=!1}};var vn={enumerable:!0,configurable:!0,get:P,set:P};function mn(t,e,n){vn.get=function(){return this[e][n]},vn.set=function(t){this[e][n]=t},Object.defineProperty(t,n,vn)}function gn(t){t._watchers=[];var e=t.$options;e.props&&function(t,e){var n=t.$options.propsData||{},r=t._props={},o=t.$options._propKeys=[];t.$parent&&Ct(!1);var i=function(i){o.push(i);var a=Nt(i,e,n,t);At(r,i,a),i in t||mn(t,"_props",i)};for(var a in e)i(a);Ct(!0)}(t,e.props),e.methods&&function(t,e){t.$options.props;for(var n in e)t[n]="function"!=typeof e[n]?P:A(e[n],t)}(t,e.methods),e.data?function(t){var e=t.$options.data;l(e=t._data="function"==typeof e?function(t,e){dt();try{return t.call(e,e)}catch(t){return Bt(t,e,"data()"),{}}finally{ht()}}(e,t):e||{})||(e={});var n=Object.keys(e),r=t.$options.props,o=(t.$options.methods,n.length);for(;o--;){var i=n[o];0,r&&_(r,i)||(a=void 0,36!==(a=(i+"").charCodeAt(0))&&95!==a&&mn(t,"_data",i))}var a;Ot(e,!0)}(t):Ot(t._data={},!0),e.computed&&function(t,e){var n=t._computedWatchers=Object.create(null),r=ot();for(var o in e){var i=e[o],a="function"==typeof i?i:i.get;0,r||(n[o]=new hn(t,a||P,P,yn)),o in t||bn(t,o,i)}}(t,e.computed),e.watch&&e.watch!==et&&function(t,e){for(var n in e){var r=e[n];if(Array.isArray(r))for(var o=0;o-1:"string"==typeof t?t.split(",").indexOf(e)>-1:!!f(t)&&t.test(e)}function Sn(t,e){var n=t.cache,r=t.keys,o=t._vnode;for(var i in n){var a=n[i];if(a){var s=An(a.componentOptions);s&&!e(s)&&jn(n,i,r,o)}}}function jn(t,e,n,r){var o=t[e];!o||r&&o.tag===r.tag||o.componentInstance.$destroy(),t[e]=null,y(n,e)}!function(t){t.prototype._init=function(t){var e=this;e._uid=kn++,e._isVue=!0,t&&t._isComponent?function(t,e){var n=t.$options=Object.create(t.constructor.options),r=e._parentVnode;n.parent=e.parent,n._parentVnode=r;var o=r.componentOptions;n.propsData=o.propsData,n._parentListeners=o.listeners,n._renderChildren=o.children,n._componentTag=o.tag,e.render&&(n.render=e.render,n.staticRenderFns=e.staticRenderFns)}(e,t):e.$options=Rt(Cn(e.constructor),t||{},e),e._renderProxy=e,e._self=e,function(t){var e=t.$options,n=e.parent;if(n&&!e.abstract){for(;n.$options.abstract&&n.$parent;)n=n.$parent;n.$children.push(t)}t.$parent=n,t.$root=n?n.$root:t,t.$children=[],t.$refs={},t._watcher=null,t._inactive=null,t._directInactive=!1,t._isMounted=!1,t._isDestroyed=!1,t._isBeingDestroyed=!1}(e),function(t){t._events=Object.create(null),t._hasHookEvent=!1;var e=t.$options._parentListeners;e&&Xe(t,e)}(e),function(t){t._vnode=null,t._staticTrees=null;var e=t.$options,n=t.$vnode=e._parentVnode,o=n&&n.context;t.$slots=pe(e._renderChildren,o),t.$scopedSlots=r,t._c=function(e,n,r,o){return Ue(t,e,n,r,o,!1)},t.$createElement=function(e,n,r,o){return Ue(t,e,n,r,o,!0)};var i=n&&n.data;At(t,"$attrs",i&&i.attrs||r,null,!0),At(t,"$listeners",e._parentListeners||r,null,!0)}(e),en(e,"beforeCreate"),function(t){var e=fe(t.$options.inject,t);e&&(Ct(!1),Object.keys(e).forEach((function(n){At(t,n,e[n])})),Ct(!0))}(e),gn(e),function(t){var e=t.$options.provide;e&&(t._provided="function"==typeof e?e.call(t):e)}(e),en(e,"created"),e.$options.el&&e.$mount(e.$options.el)}}($n),function(t){var e={get:function(){return this._data}},n={get:function(){return this._props}};Object.defineProperty(t.prototype,"$data",e),Object.defineProperty(t.prototype,"$props",n),t.prototype.$set=Et,t.prototype.$delete=St,t.prototype.$watch=function(t,e,n){if(l(e))return xn(this,t,e,n);(n=n||{}).user=!0;var r=new hn(this,t,e,n);if(n.immediate)try{e.call(this,r.value)}catch(t){Bt(t,this,'callback for immediate watcher "'+r.expression+'"')}return function(){r.teardown()}}}($n),function(t){var e=/^hook:/;t.prototype.$on=function(t,n){var r=this;if(Array.isArray(t))for(var o=0,i=t.length;o1?E(n):n;for(var r=E(arguments,1),o='event handler for "'+t+'"',i=0,a=n.length;iparseInt(this.max)&&jn(a,s[0],s,this._vnode)),e.data.keepAlive=!0}return e||t&&t[0]}}};!function(t){var e={get:function(){return F}};Object.defineProperty(t,"config",e),t.util={warn:ut,extend:S,mergeOptions:Rt,defineReactive:At},t.set=Et,t.delete=St,t.nextTick=ee,t.observable=function(t){return Ot(t),t},t.options=Object.create(null),N.forEach((function(e){t.options[e+"s"]=Object.create(null)})),t.options._base=t,S(t.options.components,In),function(t){t.use=function(t){var e=this._installedPlugins||(this._installedPlugins=[]);if(e.indexOf(t)>-1)return this;var n=E(arguments,1);return n.unshift(this),"function"==typeof t.install?t.install.apply(t,n):"function"==typeof t&&t.apply(null,n),e.push(t),this}}(t),function(t){t.mixin=function(t){return this.options=Rt(this.options,t),this}}(t),On(t),function(t){N.forEach((function(e){t[e]=function(t,n){return n?("component"===e&&l(n)&&(n.name=n.name||t,n=this.options._base.extend(n)),"directive"===e&&"function"==typeof n&&(n={bind:n,update:n}),this.options[e+"s"][t]=n,n):this.options[e+"s"][t]}}))}(t)}($n),Object.defineProperty($n.prototype,"$isServer",{get:ot}),Object.defineProperty($n.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty($n,"FunctionalRenderContext",{value:Ie}),$n.version="2.6.10";var Tn=m("style,class"),Ln=m("input,textarea,option,select,progress"),Mn=m("contenteditable,draggable,spellcheck"),Rn=m("events,caret,typing,plaintext-only"),zn=function(t,e){return Bn(e)||"false"===e?"false":"contenteditable"===t&&Rn(e)?e:"true"},Nn=m("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,translate,truespeed,typemustmatch,visible"),Dn="http://www.w3.org/1999/xlink",Fn=function(t){return":"===t.charAt(5)&&"xlink"===t.slice(0,5)},Un=function(t){return Fn(t)?t.slice(6,t.length):""},Bn=function(t){return null==t||!1===t};function Hn(t){for(var e=t.data,n=t,r=t;i(r.componentInstance);)(r=r.componentInstance._vnode)&&r.data&&(e=qn(r.data,e));for(;i(n=n.parent);)n&&n.data&&(e=qn(e,n.data));return function(t,e){if(i(t)||i(e))return Vn(t,Kn(e));return""}(e.staticClass,e.class)}function qn(t,e){return{staticClass:Vn(t.staticClass,e.staticClass),class:i(t.class)?[t.class,e.class]:e.class}}function Vn(t,e){return t?e?t+" "+e:t:e||""}function Kn(t){return Array.isArray(t)?function(t){for(var e,n="",r=0,o=t.length;r-1?vr(t,e,n):Nn(e)?Bn(n)?t.removeAttribute(e):(n="allowfullscreen"===e&&"EMBED"===t.tagName?"true":e,t.setAttribute(e,n)):Mn(e)?t.setAttribute(e,zn(e,n)):Fn(e)?Bn(n)?t.removeAttributeNS(Dn,Un(e)):t.setAttributeNS(Dn,e,n):vr(t,e,n)}function vr(t,e,n){if(Bn(n))t.removeAttribute(e);else{if(X&&!Z&&"TEXTAREA"===t.tagName&&"placeholder"===e&&""!==n&&!t.__ieph){var r=function(e){e.stopImmediatePropagation(),t.removeEventListener("input",r)};t.addEventListener("input",r),t.__ieph=!0}t.setAttribute(e,n)}}var mr={create:dr,update:dr};function gr(t,e){var n=e.elm,r=e.data,a=t.data;if(!(o(r.staticClass)&&o(r.class)&&(o(a)||o(a.staticClass)&&o(a.class)))){var s=Hn(e),c=n._transitionClasses;i(c)&&(s=Vn(s,Kn(c))),s!==n._prevClass&&(n.setAttribute("class",s),n._prevClass=s)}}var yr,br={create:gr,update:gr},_r="__r",wr="__c";function xr(t,e,n){var r=yr;return function o(){var i=e.apply(null,arguments);null!==i&&$r(t,o,n,r)}}var kr=Wt&&!(tt&&Number(tt[1])<=53);function Cr(t,e,n,r){if(kr){var o=un,i=e;e=i._wrapper=function(t){if(t.target===t.currentTarget||t.timeStamp>=o||t.timeStamp<=0||t.target.ownerDocument!==document)return i.apply(this,arguments)}}yr.addEventListener(t,e,nt?{capture:n,passive:r}:n)}function $r(t,e,n,r){(r||yr).removeEventListener(t,e._wrapper||e,n)}function Or(t,e){if(!o(t.data.on)||!o(e.data.on)){var n=e.data.on||{},r=t.data.on||{};yr=e.elm,function(t){if(i(t[_r])){var e=X?"change":"input";t[e]=[].concat(t[_r],t[e]||[]),delete t[_r]}i(t[wr])&&(t.change=[].concat(t[wr],t.change||[]),delete t[wr])}(n),ae(n,r,Cr,$r,xr,e.context),yr=void 0}}var Ar,Er={create:Or,update:Or};function Sr(t,e){if(!o(t.data.domProps)||!o(e.data.domProps)){var n,r,a=e.elm,s=t.data.domProps||{},c=e.data.domProps||{};for(n in i(c.__ob__)&&(c=e.data.domProps=S({},c)),s)n in c||(a[n]="");for(n in c){if(r=c[n],"textContent"===n||"innerHTML"===n){if(e.children&&(e.children.length=0),r===s[n])continue;1===a.childNodes.length&&a.removeChild(a.childNodes[0])}if("value"===n&&"PROGRESS"!==a.tagName){a._value=r;var u=o(r)?"":String(r);jr(a,u)&&(a.value=u)}else if("innerHTML"===n&&Jn(a.tagName)&&o(a.innerHTML)){(Ar=Ar||document.createElement("div")).innerHTML=""+r+"";for(var l=Ar.firstChild;a.firstChild;)a.removeChild(a.firstChild);for(;l.firstChild;)a.appendChild(l.firstChild)}else if(r!==s[n])try{a[n]=r}catch(t){}}}}function jr(t,e){return!t.composing&&("OPTION"===t.tagName||function(t,e){var n=!0;try{n=document.activeElement!==t}catch(t){}return n&&t.value!==e}(t,e)||function(t,e){var n=t.value,r=t._vModifiers;if(i(r)){if(r.number)return v(n)!==v(e);if(r.trim)return n.trim()!==e.trim()}return n!==e}(t,e))}var Pr={create:Sr,update:Sr},Ir=w((function(t){var e={},n=/:(.+)/;return t.split(/;(?![^(]*\))/g).forEach((function(t){if(t){var r=t.split(n);r.length>1&&(e[r[0].trim()]=r[1].trim())}})),e}));function Tr(t){var e=Lr(t.style);return t.staticStyle?S(t.staticStyle,e):e}function Lr(t){return Array.isArray(t)?j(t):"string"==typeof t?Ir(t):t}var Mr,Rr=/^--/,zr=/\s*!important$/,Nr=function(t,e,n){if(Rr.test(e))t.style.setProperty(e,n);else if(zr.test(n))t.style.setProperty(O(e),n.replace(zr,""),"important");else{var r=Fr(e);if(Array.isArray(n))for(var o=0,i=n.length;o-1?e.split(Hr).forEach((function(e){return t.classList.add(e)})):t.classList.add(e);else{var n=" "+(t.getAttribute("class")||"")+" ";n.indexOf(" "+e+" ")<0&&t.setAttribute("class",(n+e).trim())}}function Vr(t,e){if(e&&(e=e.trim()))if(t.classList)e.indexOf(" ")>-1?e.split(Hr).forEach((function(e){return t.classList.remove(e)})):t.classList.remove(e),t.classList.length||t.removeAttribute("class");else{for(var n=" "+(t.getAttribute("class")||"")+" ",r=" "+e+" ";n.indexOf(r)>=0;)n=n.replace(r," ");(n=n.trim())?t.setAttribute("class",n):t.removeAttribute("class")}}function Kr(t){if(t){if("object"==typeof t){var e={};return!1!==t.css&&S(e,Wr(t.name||"v")),S(e,t),e}return"string"==typeof t?Wr(t):void 0}}var Wr=w((function(t){return{enterClass:t+"-enter",enterToClass:t+"-enter-to",enterActiveClass:t+"-enter-active",leaveClass:t+"-leave",leaveToClass:t+"-leave-to",leaveActiveClass:t+"-leave-active"}})),Gr=K&&!Z,Jr="transition",Xr="animation",Zr="transition",Yr="transitionend",Qr="animation",to="animationend";Gr&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(Zr="WebkitTransition",Yr="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(Qr="WebkitAnimation",to="webkitAnimationEnd"));var eo=K?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(t){return t()};function no(t){eo((function(){eo(t)}))}function ro(t,e){var n=t._transitionClasses||(t._transitionClasses=[]);n.indexOf(e)<0&&(n.push(e),qr(t,e))}function oo(t,e){t._transitionClasses&&y(t._transitionClasses,e),Vr(t,e)}function io(t,e,n){var r=so(t,e),o=r.type,i=r.timeout,a=r.propCount;if(!o)return n();var s=o===Jr?Yr:to,c=0,u=function(){t.removeEventListener(s,l),n()},l=function(e){e.target===t&&++c>=a&&u()};setTimeout((function(){c0&&(n=Jr,l=a,f=i.length):e===Xr?u>0&&(n=Xr,l=u,f=c.length):f=(n=(l=Math.max(a,u))>0?a>u?Jr:Xr:null)?n===Jr?i.length:c.length:0,{type:n,timeout:l,propCount:f,hasTransform:n===Jr&&ao.test(r[Zr+"Property"])}}function co(t,e){for(;t.length1}function vo(t,e){!0!==e.data.show&&lo(e)}var mo=function(t){var e,n,r={},c=t.modules,u=t.nodeOps;for(e=0;eh?b(t,o(n[g+1])?null:n[g+1].elm,n,d,g,r):d>g&&w(0,e,p,h)}(p,m,g,n,l):i(g)?(i(t.text)&&u.setTextContent(p,""),b(p,null,g,0,g.length-1,n)):i(m)?w(0,m,0,m.length-1):i(t.text)&&u.setTextContent(p,""):t.text!==e.text&&u.setTextContent(p,e.text),i(h)&&i(d=h.hook)&&i(d=d.postpatch)&&d(t,e)}}}function $(t,e,n){if(a(n)&&i(t.parent))t.parent.data.pendingInsert=e;else for(var r=0;r-1,a.selected!==i&&(a.selected=i);else if(L(wo(a),r))return void(t.selectedIndex!==s&&(t.selectedIndex=s));o||(t.selectedIndex=-1)}}function _o(t,e){return e.every((function(e){return!L(e,t)}))}function wo(t){return"_value"in t?t._value:t.value}function xo(t){t.target.composing=!0}function ko(t){t.target.composing&&(t.target.composing=!1,Co(t.target,"input"))}function Co(t,e){var n=document.createEvent("HTMLEvents");n.initEvent(e,!0,!0),t.dispatchEvent(n)}function $o(t){return!t.componentInstance||t.data&&t.data.transition?t:$o(t.componentInstance._vnode)}var Oo={model:go,show:{bind:function(t,e,n){var r=e.value,o=(n=$o(n)).data&&n.data.transition,i=t.__vOriginalDisplay="none"===t.style.display?"":t.style.display;r&&o?(n.data.show=!0,lo(n,(function(){t.style.display=i}))):t.style.display=r?i:"none"},update:function(t,e,n){var r=e.value;!r!=!e.oldValue&&((n=$o(n)).data&&n.data.transition?(n.data.show=!0,r?lo(n,(function(){t.style.display=t.__vOriginalDisplay})):fo(n,(function(){t.style.display="none"}))):t.style.display=r?t.__vOriginalDisplay:"none")},unbind:function(t,e,n,r,o){o||(t.style.display=t.__vOriginalDisplay)}}},Ao={name:String,appear:Boolean,css:Boolean,mode:String,type:String,enterClass:String,leaveClass:String,enterToClass:String,leaveToClass:String,enterActiveClass:String,leaveActiveClass:String,appearClass:String,appearActiveClass:String,appearToClass:String,duration:[Number,String,Object]};function Eo(t){var e=t&&t.componentOptions;return e&&e.Ctor.options.abstract?Eo(Ke(e.children)):t}function So(t){var e={},n=t.$options;for(var r in n.propsData)e[r]=t[r];var o=n._parentListeners;for(var i in o)e[k(i)]=o[i];return e}function jo(t,e){if(/\d-keep-alive$/.test(e.tag))return t("keep-alive",{props:e.componentOptions.propsData})}var Po=function(t){return t.tag||Ve(t)},Io=function(t){return"show"===t.name},To={name:"transition",props:Ao,abstract:!0,render:function(t){var e=this,n=this.$slots.default;if(n&&(n=n.filter(Po)).length){0;var r=this.mode;0;var o=n[0];if(function(t){for(;t=t.parent;)if(t.data.transition)return!0}(this.$vnode))return o;var i=Eo(o);if(!i)return o;if(this._leaving)return jo(t,o);var a="__transition-"+this._uid+"-";i.key=null==i.key?i.isComment?a+"comment":a+i.tag:s(i.key)?0===String(i.key).indexOf(a)?i.key:a+i.key:i.key;var c=(i.data||(i.data={})).transition=So(this),u=this._vnode,l=Eo(u);if(i.data.directives&&i.data.directives.some(Io)&&(i.data.show=!0),l&&l.data&&!function(t,e){return e.key===t.key&&e.tag===t.tag}(i,l)&&!Ve(l)&&(!l.componentInstance||!l.componentInstance._vnode.isComment)){var f=l.data.transition=S({},c);if("out-in"===r)return this._leaving=!0,se(f,"afterLeave",(function(){e._leaving=!1,e.$forceUpdate()})),jo(t,o);if("in-out"===r){if(Ve(i))return u;var p,d=function(){p()};se(c,"afterEnter",d),se(c,"enterCancelled",d),se(f,"delayLeave",(function(t){p=t}))}}return o}}},Lo=S({tag:String,moveClass:String},Ao);function Mo(t){t.elm._moveCb&&t.elm._moveCb(),t.elm._enterCb&&t.elm._enterCb()}function Ro(t){t.data.newPos=t.elm.getBoundingClientRect()}function zo(t){var e=t.data.pos,n=t.data.newPos,r=e.left-n.left,o=e.top-n.top;if(r||o){t.data.moved=!0;var i=t.elm.style;i.transform=i.WebkitTransform="translate("+r+"px,"+o+"px)",i.transitionDuration="0s"}}delete Lo.mode;var No={Transition:To,TransitionGroup:{props:Lo,beforeMount:function(){var t=this,e=this._update;this._update=function(n,r){var o=Ye(t);t.__patch__(t._vnode,t.kept,!1,!0),t._vnode=t.kept,o(),e.call(t,n,r)}},render:function(t){for(var e=this.tag||this.$vnode.data.tag||"span",n=Object.create(null),r=this.prevChildren=this.children,o=this.$slots.default||[],i=this.children=[],a=So(this),s=0;s-1?Zn[t]=e.constructor===window.HTMLUnknownElement||e.constructor===window.HTMLElement:Zn[t]=/HTMLUnknownElement/.test(e.toString())},S($n.options.directives,Oo),S($n.options.components,No),$n.prototype.__patch__=K?mo:P,$n.prototype.$mount=function(t,e){return function(t,e,n){var r;return t.$el=e,t.$options.render||(t.$options.render=gt),en(t,"beforeMount"),r=function(){t._update(t._render(),n)},new hn(t,r,P,{before:function(){t._isMounted&&!t._isDestroyed&&en(t,"beforeUpdate")}},!0),n=!1,null==t.$vnode&&(t._isMounted=!0,en(t,"mounted")),t}(this,t=t&&K?function(t){if("string"==typeof t){var e=document.querySelector(t);return e||document.createElement("div")}return t}(t):void 0,e)},K&&setTimeout((function(){F.devtools&&it&&it.emit("init",$n)}),0),e.a=$n},function(t,e,n){"use strict";var r=n(1),o={FrontmatterKey:()=>n.e(14).then(n.bind(null,274)),GlobalLayout:()=>Promise.resolve().then(n.bind(null,5)),Layout:()=>Promise.all([n.e(0),n.e(9)]).then(n.bind(null,276)),Post:()=>Promise.all([n.e(0),n.e(1),n.e(5)]).then(n.bind(null,265)),NotFound:()=>n.e(13).then(n.bind(null,268))},i={"v-5d95c0e8":()=>n.e(11).then(n.bind(null,271)),"v-e125a70a":()=>n.e(10).then(n.bind(null,277)),"v-120b5010":()=>n.e(15).then(n.bind(null,275)),"v-e45776e2":()=>n.e(12).then(n.bind(null,273)),"v-c1b5585a":()=>n.e(16).then(n.bind(null,272))};function a(t){const e=Object.create(null);return function(n){return e[n]||(e[n]=t(n))}}n.d(e,"e",(function(){return y})),n.d(e,"d",(function(){return b})),n.d(e,"c",(function(){return _})),n.d(e,"f",(function(){return w})),n.d(e,"a",(function(){return x})),n.d(e,"g",(function(){return k})),n.d(e,"b",(function(){return C})),n.d(e,"h",(function(){return $}));const s=/-(\w)/g,c=a(t=>t.replace(s,(t,e)=>e?e.toUpperCase():"")),u=/\B([A-Z])/g,l=a(t=>t.replace(u,"-$1").toLowerCase()),f=a(t=>t.charAt(0).toUpperCase()+t.slice(1));function p(t,e){if(!e)return;if(t(e))return t(e);return e.includes("-")?t(f(c(e))):t(f(e))||t(l(e))}const d=Object.assign({},o,i),h=t=>d[t],v=t=>i[t],m=t=>o[t],g=t=>r.a.component(t);function y(t){return p(v,t)}function b(t){return p(m,t)}function _(t){return p(h,t)}function w(t){return p(g,t)}function x(...t){return Promise.all(t.filter(t=>t).map(async t=>{if(!w(t)&&_(t)){const e=await _(t)();r.a.component(t,e.default)}}))}function k(t,e,n){switch(e){case"components":t[e]||(t[e]={}),Object.assign(t[e],n);break;case"mixins":t[e]||(t[e]=[]),t[e].push(...n);break;default:throw new Error("Unknown option name.")}}function C(t,e){for(let n=0;n-1},o=[],i=0;i=10);i++){var a=e[i];if(this.getPageLocalePath(a)===n&&this.isSearchable(a))if(r(a))o.push(a);else if(a.headers)for(var s=0;s=10);s++){var c=a.headers[s];r(c)&&o.push(Object.assign({},a,{path:a.path+"#"+c.slug,header:c}))}}return o}},alignRight:function(){return(this.$site.themeConfig.nav||[]).length+(this.$site.repo?1:0)<=2}},methods:{getPageLocalePath:function(t){for(var e in this.$site.locales||{})if("/"!==e&&0===t.path.indexOf(e))return e;return"/"},isSearchable:function(t){var e=null;return null===e||(e=Array.isArray(e)?e:new Array(e)).filter((function(e){return t.path.match(e)})).length>0},onUp:function(){this.showSuggestions&&(this.focusIndex>0?this.focusIndex--:this.focusIndex=this.suggestions.length-1)},onDown:function(){this.showSuggestions&&(this.focusIndex "+t._s(e.header.title))]):t._e()])])})),0):t._e()])}),[],!1,null,null,null).exports}}),l=(n(69),Object(a.a)(u,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("section",{attrs:{id:"header-wrapper"}},[n("header",{attrs:{id:"header"}},[n("div",{staticClass:"header-wrapper"},[n("div",{staticClass:"title"},[n("NavLink",{staticClass:"home-link",attrs:{link:"/"}},[t._v(t._s(t.$site.title)+"\n ")])],1),t._v(" "),n("div",{staticClass:"header-right-wrap"},[t.$themeConfig.nav?n("ul",{staticClass:"nav"},t._l(t.$themeConfig.nav,(function(e){return n("li",{staticClass:"nav-item"},[n("NavLink",{attrs:{link:e.link}},[t._v(t._s(e.text))])],1)})),0):t._e(),t._v(" "),n("SearchBox")],1)])])])}),[],!1,null,null,null).exports),f=n(4),p={props:{isOpen:{type:Boolean,required:!0}},components:{MenuIcon:f.i,XIcon:f.n}},d=(n(70),Object(a.a)(p,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{attrs:{id:"mobile-header"}},[n("div",{staticClass:"mobile-header-bar"},[n("div",{staticClass:"mobile-header-title"},[n("NavLink",{staticClass:"mobile-home-link",attrs:{link:"/"}},[t._v(t._s(t.$site.title)+"\n ")]),t._v(" "),n(t.isOpen?"XIcon":"MenuIcon",{tag:"component",on:{click:function(e){return t.$emit("toggle-sidebar")}}})],1),t._v(" "),n("div",{staticClass:"mobile-menu-wrapper",class:{open:t.isOpen}},[n("hr",{staticClass:"menu-divider"}),t._v(" "),t.$themeConfig.nav?n("ul",{staticClass:"mobile-nav"},t._l(t.$themeConfig.nav,(function(e){return n("li",{staticClass:"mobile-nav-item"},[n("NavLink",{attrs:{link:e.link}},[t._v(t._s(e.text))])],1)})),0):t._e()])])])}),[],!1,null,null,null).exports),h=(n(52),n(72),{components:{FacebookIcon:f.b,GithubIcon:f.c,GitlabIcon:f.d,GlobeIcon:f.e,InstagramIcon:f.f,LinkedinIcon:f.g,MailIcon:f.h,MessageSquareIcon:f.j,PhoneIcon:f.l,TwitterIcon:f.m},methods:{getIconComponentName:function(t){switch(t){case"facebook":return"FacebookIcon";case"github":return"GithubIcon";case"gitlab":return"GitlabIcon";case"instagram":return"InstagramIcon";case"linkedin":return"LinkedinIcon";case"mail":return"MailIcon";case"messenger":return"MessageSquareIcon";case"phone":return"PhoneIcon";case"twitter":return"TwitterIcon";case"web":return"GlobeIcon";default:return""}}},computed:{contact:function(){var t=this;return(this.$themeConfig.footer&&this.$themeConfig.footer.contact||[]).map((function(e){var n=e.type,r=e.link;return{iconComponent:t.getIconComponentName(n),link:r}})).filter((function(t){return t.iconComponent}))},copyright:function(){return this.$themeConfig.footer&&this.$themeConfig.footer.copyright||[]}}}),v=(n(73),{components:{DefaultGlobalLayout:s,Header:l,MobileHeader:d,Footer:Object(a.a)(h,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("footer",{staticClass:"footer"},[n("div",{staticClass:"footer-left-wrap"},[t.contact?n("ul",{staticClass:"contact"},t._l(t.contact,(function(e){return n("li",{staticClass:"contact-item"},[n("NavLink",{attrs:{link:e.link}},[n(e.iconComponent,{tag:"component"}),t._v("\n "+t._s(e.text)+"\n ")],1)],1)})),0):t._e()]),t._v(" "),n("div",{staticClass:"footer-right-wrap"},[t.copyright?n("ul",{staticClass:"copyright"},t._l(t.copyright,(function(e){return n("li",{staticClass:"copyright-item"},[n("NavLink",{attrs:{link:e.link}},[t._v(t._s(e.text))])],1)})),0):t._e()])])}),[],!1,null,"5317f8db",null).exports},data:function(){return{isMobileHeaderOpen:!1}},mounted:function(){var t=this;this.$router.afterEach((function(){t.isMobileHeaderOpen=!1}))}}),m=(n(74),Object(a.a)(v,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{attrs:{id:"vuperess-theme-blog__global-layout"}},[n("Header"),t._v(" "),n("MobileHeader",{attrs:{isOpen:t.isMobileHeaderOpen},on:{"toggle-sidebar":function(e){t.isMobileHeaderOpen=!t.isMobileHeaderOpen}}}),t._v(" "),n("div",{staticClass:"content-wrapper",on:{click:function(e){t.isMobileHeaderOpen=!1}}},[n("DefaultGlobalLayout")],1),t._v(" "),n("Footer")],1)}),[],!1,null,null,null));e.default=m.exports},function(t,e,n){var r=n(9),o=n(25),i=n(20),a=n(27),s=n(31),c=function(t,e,n){var u,l,f,p,d=t&c.F,h=t&c.G,v=t&c.S,m=t&c.P,g=t&c.B,y=h?r:v?r[e]||(r[e]={}):(r[e]||{}).prototype,b=h?o:o[e]||(o[e]={}),_=b.prototype||(b.prototype={});for(u in h&&(n=e),n)f=((l=!d&&y&&void 0!==y[u])?y:n)[u],p=g&&l?s(f,r):m&&"function"==typeof f?s(Function.call,f):f,y&&a(y,u,f,t&c.U),b[u]!=f&&i(b,u,p),m&&_[u]!=f&&(_[u]=f)};r.core=o,c.F=1,c.G=2,c.S=4,c.P=8,c.B=16,c.W=32,c.U=64,c.R=128,t.exports=c},function(t,e){t.exports=function(t){try{return!!t()}catch(t){return!0}}},function(t,e){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},function(t,e){var n=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=n)},function(t,e){t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},function(t,e,n){},function(t,e,n){},function(t,e,n){},function(t,e,n){},function(t,e,n){},function(t,e,n){},function(t,e,n){var r,o; + */var r=Object.freeze({});function o(t){return null==t}function i(t){return null!=t}function a(t){return!0===t}function s(t){return"string"==typeof t||"number"==typeof t||"symbol"==typeof t||"boolean"==typeof t}function c(t){return null!==t&&"object"==typeof t}var u=Object.prototype.toString;function l(t){return"[object Object]"===u.call(t)}function f(t){return"[object RegExp]"===u.call(t)}function p(t){var e=parseFloat(String(t));return e>=0&&Math.floor(e)===e&&isFinite(t)}function d(t){return i(t)&&"function"==typeof t.then&&"function"==typeof t.catch}function h(t){return null==t?"":Array.isArray(t)||l(t)&&t.toString===u?JSON.stringify(t,null,2):String(t)}function v(t){var e=parseFloat(t);return isNaN(e)?t:e}function m(t,e){for(var n=Object.create(null),r=t.split(","),o=0;o-1)return t.splice(n,1)}}var b=Object.prototype.hasOwnProperty;function _(t,e){return b.call(t,e)}function w(t){var e=Object.create(null);return function(n){return e[n]||(e[n]=t(n))}}var x=/-(\w)/g,k=w((function(t){return t.replace(x,(function(t,e){return e?e.toUpperCase():""}))})),C=w((function(t){return t.charAt(0).toUpperCase()+t.slice(1)})),$=/\B([A-Z])/g,O=w((function(t){return t.replace($,"-$1").toLowerCase()}));var A=Function.prototype.bind?function(t,e){return t.bind(e)}:function(t,e){function n(n){var r=arguments.length;return r?r>1?t.apply(e,arguments):t.call(e,n):t.call(e)}return n._length=t.length,n};function E(t,e){e=e||0;for(var n=t.length-e,r=new Array(n);n--;)r[n]=t[n+e];return r}function S(t,e){for(var n in e)t[n]=e[n];return t}function j(t){for(var e={},n=0;n0,Y=J&&J.indexOf("edge/")>0,Q=(J&&J.indexOf("android"),J&&/iphone|ipad|ipod|ios/.test(J)||"ios"===G),tt=(J&&/chrome\/\d+/.test(J),J&&/phantomjs/.test(J),J&&J.match(/firefox\/(\d+)/)),et={}.watch,nt=!1;if(K)try{var rt={};Object.defineProperty(rt,"passive",{get:function(){nt=!0}}),window.addEventListener("test-passive",null,rt)}catch(t){}var ot=function(){return void 0===q&&(q=!K&&!W&&"undefined"!=typeof global&&(global.process&&"server"===global.process.env.VUE_ENV)),q},it=K&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function at(t){return"function"==typeof t&&/native code/.test(t.toString())}var st,ct="undefined"!=typeof Symbol&&at(Symbol)&&"undefined"!=typeof Reflect&&at(Reflect.ownKeys);st="undefined"!=typeof Set&&at(Set)?Set:function(){function t(){this.set=Object.create(null)}return t.prototype.has=function(t){return!0===this.set[t]},t.prototype.add=function(t){this.set[t]=!0},t.prototype.clear=function(){this.set=Object.create(null)},t}();var ut=P,lt=0,ft=function(){this.id=lt++,this.subs=[]};ft.prototype.addSub=function(t){this.subs.push(t)},ft.prototype.removeSub=function(t){y(this.subs,t)},ft.prototype.depend=function(){ft.target&&ft.target.addDep(this)},ft.prototype.notify=function(){var t=this.subs.slice();for(var e=0,n=t.length;e-1)if(i&&!_(o,"default"))a=!1;else if(""===a||a===O(t)){var c=Ut(String,o.type);(c<0||s0&&(le((c=t(c,(n||"")+"_"+r))[0])&&le(l)&&(f[u]=yt(l.text+c[0].text),c.shift()),f.push.apply(f,c)):s(c)?le(l)?f[u]=yt(l.text+c):""!==c&&f.push(yt(c)):le(c)&&le(l)?f[u]=yt(l.text+c.text):(a(e._isVList)&&i(c.tag)&&o(c.key)&&i(n)&&(c.key="__vlist"+n+"_"+r+"__"),f.push(c)));return f}(t):void 0}function le(t){return i(t)&&i(t.text)&&!1===t.isComment}function fe(t,e){if(t){for(var n=Object.create(null),r=ct?Reflect.ownKeys(t):Object.keys(t),o=0;o0,a=t?!!t.$stable:!i,s=t&&t.$key;if(t){if(t._normalized)return t._normalized;if(a&&n&&n!==r&&s===n.$key&&!i&&!n.$hasNormal)return n;for(var c in o={},t)t[c]&&"$"!==c[0]&&(o[c]=ve(e,c,t[c]))}else o={};for(var u in e)u in o||(o[u]=me(e,u));return t&&Object.isExtensible(t)&&(t._normalized=o),B(o,"$stable",a),B(o,"$key",s),B(o,"$hasNormal",i),o}function ve(t,e,n){var r=function(){var t=arguments.length?n.apply(null,arguments):n({});return(t=t&&"object"==typeof t&&!Array.isArray(t)?[t]:ue(t))&&(0===t.length||1===t.length&&t[0].isComment)?void 0:t};return n.proxy&&Object.defineProperty(t,e,{get:r,enumerable:!0,configurable:!0}),r}function me(t,e){return function(){return t[e]}}function ge(t,e){var n,r,o,a,s;if(Array.isArray(t)||"string"==typeof t)for(n=new Array(t.length),r=0,o=t.length;rdocument.createEvent("Event").timeStamp&&(ln=function(){return fn.now()})}function pn(){var t,e;for(un=ln(),sn=!0,nn.sort((function(t,e){return t.id-e.id})),cn=0;cncn&&nn[n].id>t.id;)n--;nn.splice(n+1,0,t)}else nn.push(t);an||(an=!0,ee(pn))}}(this)},hn.prototype.run=function(){if(this.active){var t=this.get();if(t!==this.value||c(t)||this.deep){var e=this.value;if(this.value=t,this.user)try{this.cb.call(this.vm,t,e)}catch(t){Bt(t,this.vm,'callback for watcher "'+this.expression+'"')}else this.cb.call(this.vm,t,e)}}},hn.prototype.evaluate=function(){this.value=this.get(),this.dirty=!1},hn.prototype.depend=function(){for(var t=this.deps.length;t--;)this.deps[t].depend()},hn.prototype.teardown=function(){if(this.active){this.vm._isBeingDestroyed||y(this.vm._watchers,this);for(var t=this.deps.length;t--;)this.deps[t].removeSub(this);this.active=!1}};var vn={enumerable:!0,configurable:!0,get:P,set:P};function mn(t,e,n){vn.get=function(){return this[e][n]},vn.set=function(t){this[e][n]=t},Object.defineProperty(t,n,vn)}function gn(t){t._watchers=[];var e=t.$options;e.props&&function(t,e){var n=t.$options.propsData||{},r=t._props={},o=t.$options._propKeys=[];t.$parent&&Ct(!1);var i=function(i){o.push(i);var a=Nt(i,e,n,t);At(r,i,a),i in t||mn(t,"_props",i)};for(var a in e)i(a);Ct(!0)}(t,e.props),e.methods&&function(t,e){t.$options.props;for(var n in e)t[n]="function"!=typeof e[n]?P:A(e[n],t)}(t,e.methods),e.data?function(t){var e=t.$options.data;l(e=t._data="function"==typeof e?function(t,e){dt();try{return t.call(e,e)}catch(t){return Bt(t,e,"data()"),{}}finally{ht()}}(e,t):e||{})||(e={});var n=Object.keys(e),r=t.$options.props,o=(t.$options.methods,n.length);for(;o--;){var i=n[o];0,r&&_(r,i)||(a=void 0,36!==(a=(i+"").charCodeAt(0))&&95!==a&&mn(t,"_data",i))}var a;Ot(e,!0)}(t):Ot(t._data={},!0),e.computed&&function(t,e){var n=t._computedWatchers=Object.create(null),r=ot();for(var o in e){var i=e[o],a="function"==typeof i?i:i.get;0,r||(n[o]=new hn(t,a||P,P,yn)),o in t||bn(t,o,i)}}(t,e.computed),e.watch&&e.watch!==et&&function(t,e){for(var n in e){var r=e[n];if(Array.isArray(r))for(var o=0;o-1:"string"==typeof t?t.split(",").indexOf(e)>-1:!!f(t)&&t.test(e)}function Sn(t,e){var n=t.cache,r=t.keys,o=t._vnode;for(var i in n){var a=n[i];if(a){var s=An(a.componentOptions);s&&!e(s)&&jn(n,i,r,o)}}}function jn(t,e,n,r){var o=t[e];!o||r&&o.tag===r.tag||o.componentInstance.$destroy(),t[e]=null,y(n,e)}!function(t){t.prototype._init=function(t){var e=this;e._uid=kn++,e._isVue=!0,t&&t._isComponent?function(t,e){var n=t.$options=Object.create(t.constructor.options),r=e._parentVnode;n.parent=e.parent,n._parentVnode=r;var o=r.componentOptions;n.propsData=o.propsData,n._parentListeners=o.listeners,n._renderChildren=o.children,n._componentTag=o.tag,e.render&&(n.render=e.render,n.staticRenderFns=e.staticRenderFns)}(e,t):e.$options=Rt(Cn(e.constructor),t||{},e),e._renderProxy=e,e._self=e,function(t){var e=t.$options,n=e.parent;if(n&&!e.abstract){for(;n.$options.abstract&&n.$parent;)n=n.$parent;n.$children.push(t)}t.$parent=n,t.$root=n?n.$root:t,t.$children=[],t.$refs={},t._watcher=null,t._inactive=null,t._directInactive=!1,t._isMounted=!1,t._isDestroyed=!1,t._isBeingDestroyed=!1}(e),function(t){t._events=Object.create(null),t._hasHookEvent=!1;var e=t.$options._parentListeners;e&&Xe(t,e)}(e),function(t){t._vnode=null,t._staticTrees=null;var e=t.$options,n=t.$vnode=e._parentVnode,o=n&&n.context;t.$slots=pe(e._renderChildren,o),t.$scopedSlots=r,t._c=function(e,n,r,o){return Ue(t,e,n,r,o,!1)},t.$createElement=function(e,n,r,o){return Ue(t,e,n,r,o,!0)};var i=n&&n.data;At(t,"$attrs",i&&i.attrs||r,null,!0),At(t,"$listeners",e._parentListeners||r,null,!0)}(e),en(e,"beforeCreate"),function(t){var e=fe(t.$options.inject,t);e&&(Ct(!1),Object.keys(e).forEach((function(n){At(t,n,e[n])})),Ct(!0))}(e),gn(e),function(t){var e=t.$options.provide;e&&(t._provided="function"==typeof e?e.call(t):e)}(e),en(e,"created"),e.$options.el&&e.$mount(e.$options.el)}}($n),function(t){var e={get:function(){return this._data}},n={get:function(){return this._props}};Object.defineProperty(t.prototype,"$data",e),Object.defineProperty(t.prototype,"$props",n),t.prototype.$set=Et,t.prototype.$delete=St,t.prototype.$watch=function(t,e,n){if(l(e))return xn(this,t,e,n);(n=n||{}).user=!0;var r=new hn(this,t,e,n);if(n.immediate)try{e.call(this,r.value)}catch(t){Bt(t,this,'callback for immediate watcher "'+r.expression+'"')}return function(){r.teardown()}}}($n),function(t){var e=/^hook:/;t.prototype.$on=function(t,n){var r=this;if(Array.isArray(t))for(var o=0,i=t.length;o1?E(n):n;for(var r=E(arguments,1),o='event handler for "'+t+'"',i=0,a=n.length;iparseInt(this.max)&&jn(a,s[0],s,this._vnode)),e.data.keepAlive=!0}return e||t&&t[0]}}};!function(t){var e={get:function(){return F}};Object.defineProperty(t,"config",e),t.util={warn:ut,extend:S,mergeOptions:Rt,defineReactive:At},t.set=Et,t.delete=St,t.nextTick=ee,t.observable=function(t){return Ot(t),t},t.options=Object.create(null),N.forEach((function(e){t.options[e+"s"]=Object.create(null)})),t.options._base=t,S(t.options.components,In),function(t){t.use=function(t){var e=this._installedPlugins||(this._installedPlugins=[]);if(e.indexOf(t)>-1)return this;var n=E(arguments,1);return n.unshift(this),"function"==typeof t.install?t.install.apply(t,n):"function"==typeof t&&t.apply(null,n),e.push(t),this}}(t),function(t){t.mixin=function(t){return this.options=Rt(this.options,t),this}}(t),On(t),function(t){N.forEach((function(e){t[e]=function(t,n){return n?("component"===e&&l(n)&&(n.name=n.name||t,n=this.options._base.extend(n)),"directive"===e&&"function"==typeof n&&(n={bind:n,update:n}),this.options[e+"s"][t]=n,n):this.options[e+"s"][t]}}))}(t)}($n),Object.defineProperty($n.prototype,"$isServer",{get:ot}),Object.defineProperty($n.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty($n,"FunctionalRenderContext",{value:Ie}),$n.version="2.6.10";var Tn=m("style,class"),Ln=m("input,textarea,option,select,progress"),Mn=m("contenteditable,draggable,spellcheck"),Rn=m("events,caret,typing,plaintext-only"),zn=function(t,e){return Bn(e)||"false"===e?"false":"contenteditable"===t&&Rn(e)?e:"true"},Nn=m("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,translate,truespeed,typemustmatch,visible"),Dn="http://www.w3.org/1999/xlink",Fn=function(t){return":"===t.charAt(5)&&"xlink"===t.slice(0,5)},Un=function(t){return Fn(t)?t.slice(6,t.length):""},Bn=function(t){return null==t||!1===t};function Hn(t){for(var e=t.data,n=t,r=t;i(r.componentInstance);)(r=r.componentInstance._vnode)&&r.data&&(e=qn(r.data,e));for(;i(n=n.parent);)n&&n.data&&(e=qn(e,n.data));return function(t,e){if(i(t)||i(e))return Vn(t,Kn(e));return""}(e.staticClass,e.class)}function qn(t,e){return{staticClass:Vn(t.staticClass,e.staticClass),class:i(t.class)?[t.class,e.class]:e.class}}function Vn(t,e){return t?e?t+" "+e:t:e||""}function Kn(t){return Array.isArray(t)?function(t){for(var e,n="",r=0,o=t.length;r-1?vr(t,e,n):Nn(e)?Bn(n)?t.removeAttribute(e):(n="allowfullscreen"===e&&"EMBED"===t.tagName?"true":e,t.setAttribute(e,n)):Mn(e)?t.setAttribute(e,zn(e,n)):Fn(e)?Bn(n)?t.removeAttributeNS(Dn,Un(e)):t.setAttributeNS(Dn,e,n):vr(t,e,n)}function vr(t,e,n){if(Bn(n))t.removeAttribute(e);else{if(X&&!Z&&"TEXTAREA"===t.tagName&&"placeholder"===e&&""!==n&&!t.__ieph){var r=function(e){e.stopImmediatePropagation(),t.removeEventListener("input",r)};t.addEventListener("input",r),t.__ieph=!0}t.setAttribute(e,n)}}var mr={create:dr,update:dr};function gr(t,e){var n=e.elm,r=e.data,a=t.data;if(!(o(r.staticClass)&&o(r.class)&&(o(a)||o(a.staticClass)&&o(a.class)))){var s=Hn(e),c=n._transitionClasses;i(c)&&(s=Vn(s,Kn(c))),s!==n._prevClass&&(n.setAttribute("class",s),n._prevClass=s)}}var yr,br={create:gr,update:gr},_r="__r",wr="__c";function xr(t,e,n){var r=yr;return function o(){var i=e.apply(null,arguments);null!==i&&$r(t,o,n,r)}}var kr=Wt&&!(tt&&Number(tt[1])<=53);function Cr(t,e,n,r){if(kr){var o=un,i=e;e=i._wrapper=function(t){if(t.target===t.currentTarget||t.timeStamp>=o||t.timeStamp<=0||t.target.ownerDocument!==document)return i.apply(this,arguments)}}yr.addEventListener(t,e,nt?{capture:n,passive:r}:n)}function $r(t,e,n,r){(r||yr).removeEventListener(t,e._wrapper||e,n)}function Or(t,e){if(!o(t.data.on)||!o(e.data.on)){var n=e.data.on||{},r=t.data.on||{};yr=e.elm,function(t){if(i(t[_r])){var e=X?"change":"input";t[e]=[].concat(t[_r],t[e]||[]),delete t[_r]}i(t[wr])&&(t.change=[].concat(t[wr],t.change||[]),delete t[wr])}(n),ae(n,r,Cr,$r,xr,e.context),yr=void 0}}var Ar,Er={create:Or,update:Or};function Sr(t,e){if(!o(t.data.domProps)||!o(e.data.domProps)){var n,r,a=e.elm,s=t.data.domProps||{},c=e.data.domProps||{};for(n in i(c.__ob__)&&(c=e.data.domProps=S({},c)),s)n in c||(a[n]="");for(n in c){if(r=c[n],"textContent"===n||"innerHTML"===n){if(e.children&&(e.children.length=0),r===s[n])continue;1===a.childNodes.length&&a.removeChild(a.childNodes[0])}if("value"===n&&"PROGRESS"!==a.tagName){a._value=r;var u=o(r)?"":String(r);jr(a,u)&&(a.value=u)}else if("innerHTML"===n&&Jn(a.tagName)&&o(a.innerHTML)){(Ar=Ar||document.createElement("div")).innerHTML=""+r+"";for(var l=Ar.firstChild;a.firstChild;)a.removeChild(a.firstChild);for(;l.firstChild;)a.appendChild(l.firstChild)}else if(r!==s[n])try{a[n]=r}catch(t){}}}}function jr(t,e){return!t.composing&&("OPTION"===t.tagName||function(t,e){var n=!0;try{n=document.activeElement!==t}catch(t){}return n&&t.value!==e}(t,e)||function(t,e){var n=t.value,r=t._vModifiers;if(i(r)){if(r.number)return v(n)!==v(e);if(r.trim)return n.trim()!==e.trim()}return n!==e}(t,e))}var Pr={create:Sr,update:Sr},Ir=w((function(t){var e={},n=/:(.+)/;return t.split(/;(?![^(]*\))/g).forEach((function(t){if(t){var r=t.split(n);r.length>1&&(e[r[0].trim()]=r[1].trim())}})),e}));function Tr(t){var e=Lr(t.style);return t.staticStyle?S(t.staticStyle,e):e}function Lr(t){return Array.isArray(t)?j(t):"string"==typeof t?Ir(t):t}var Mr,Rr=/^--/,zr=/\s*!important$/,Nr=function(t,e,n){if(Rr.test(e))t.style.setProperty(e,n);else if(zr.test(n))t.style.setProperty(O(e),n.replace(zr,""),"important");else{var r=Fr(e);if(Array.isArray(n))for(var o=0,i=n.length;o-1?e.split(Hr).forEach((function(e){return t.classList.add(e)})):t.classList.add(e);else{var n=" "+(t.getAttribute("class")||"")+" ";n.indexOf(" "+e+" ")<0&&t.setAttribute("class",(n+e).trim())}}function Vr(t,e){if(e&&(e=e.trim()))if(t.classList)e.indexOf(" ")>-1?e.split(Hr).forEach((function(e){return t.classList.remove(e)})):t.classList.remove(e),t.classList.length||t.removeAttribute("class");else{for(var n=" "+(t.getAttribute("class")||"")+" ",r=" "+e+" ";n.indexOf(r)>=0;)n=n.replace(r," ");(n=n.trim())?t.setAttribute("class",n):t.removeAttribute("class")}}function Kr(t){if(t){if("object"==typeof t){var e={};return!1!==t.css&&S(e,Wr(t.name||"v")),S(e,t),e}return"string"==typeof t?Wr(t):void 0}}var Wr=w((function(t){return{enterClass:t+"-enter",enterToClass:t+"-enter-to",enterActiveClass:t+"-enter-active",leaveClass:t+"-leave",leaveToClass:t+"-leave-to",leaveActiveClass:t+"-leave-active"}})),Gr=K&&!Z,Jr="transition",Xr="animation",Zr="transition",Yr="transitionend",Qr="animation",to="animationend";Gr&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(Zr="WebkitTransition",Yr="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(Qr="WebkitAnimation",to="webkitAnimationEnd"));var eo=K?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(t){return t()};function no(t){eo((function(){eo(t)}))}function ro(t,e){var n=t._transitionClasses||(t._transitionClasses=[]);n.indexOf(e)<0&&(n.push(e),qr(t,e))}function oo(t,e){t._transitionClasses&&y(t._transitionClasses,e),Vr(t,e)}function io(t,e,n){var r=so(t,e),o=r.type,i=r.timeout,a=r.propCount;if(!o)return n();var s=o===Jr?Yr:to,c=0,u=function(){t.removeEventListener(s,l),n()},l=function(e){e.target===t&&++c>=a&&u()};setTimeout((function(){c0&&(n=Jr,l=a,f=i.length):e===Xr?u>0&&(n=Xr,l=u,f=c.length):f=(n=(l=Math.max(a,u))>0?a>u?Jr:Xr:null)?n===Jr?i.length:c.length:0,{type:n,timeout:l,propCount:f,hasTransform:n===Jr&&ao.test(r[Zr+"Property"])}}function co(t,e){for(;t.length1}function vo(t,e){!0!==e.data.show&&lo(e)}var mo=function(t){var e,n,r={},c=t.modules,u=t.nodeOps;for(e=0;eh?b(t,o(n[g+1])?null:n[g+1].elm,n,d,g,r):d>g&&w(0,e,p,h)}(p,m,g,n,l):i(g)?(i(t.text)&&u.setTextContent(p,""),b(p,null,g,0,g.length-1,n)):i(m)?w(0,m,0,m.length-1):i(t.text)&&u.setTextContent(p,""):t.text!==e.text&&u.setTextContent(p,e.text),i(h)&&i(d=h.hook)&&i(d=d.postpatch)&&d(t,e)}}}function $(t,e,n){if(a(n)&&i(t.parent))t.parent.data.pendingInsert=e;else for(var r=0;r-1,a.selected!==i&&(a.selected=i);else if(L(wo(a),r))return void(t.selectedIndex!==s&&(t.selectedIndex=s));o||(t.selectedIndex=-1)}}function _o(t,e){return e.every((function(e){return!L(e,t)}))}function wo(t){return"_value"in t?t._value:t.value}function xo(t){t.target.composing=!0}function ko(t){t.target.composing&&(t.target.composing=!1,Co(t.target,"input"))}function Co(t,e){var n=document.createEvent("HTMLEvents");n.initEvent(e,!0,!0),t.dispatchEvent(n)}function $o(t){return!t.componentInstance||t.data&&t.data.transition?t:$o(t.componentInstance._vnode)}var Oo={model:go,show:{bind:function(t,e,n){var r=e.value,o=(n=$o(n)).data&&n.data.transition,i=t.__vOriginalDisplay="none"===t.style.display?"":t.style.display;r&&o?(n.data.show=!0,lo(n,(function(){t.style.display=i}))):t.style.display=r?i:"none"},update:function(t,e,n){var r=e.value;!r!=!e.oldValue&&((n=$o(n)).data&&n.data.transition?(n.data.show=!0,r?lo(n,(function(){t.style.display=t.__vOriginalDisplay})):fo(n,(function(){t.style.display="none"}))):t.style.display=r?t.__vOriginalDisplay:"none")},unbind:function(t,e,n,r,o){o||(t.style.display=t.__vOriginalDisplay)}}},Ao={name:String,appear:Boolean,css:Boolean,mode:String,type:String,enterClass:String,leaveClass:String,enterToClass:String,leaveToClass:String,enterActiveClass:String,leaveActiveClass:String,appearClass:String,appearActiveClass:String,appearToClass:String,duration:[Number,String,Object]};function Eo(t){var e=t&&t.componentOptions;return e&&e.Ctor.options.abstract?Eo(Ke(e.children)):t}function So(t){var e={},n=t.$options;for(var r in n.propsData)e[r]=t[r];var o=n._parentListeners;for(var i in o)e[k(i)]=o[i];return e}function jo(t,e){if(/\d-keep-alive$/.test(e.tag))return t("keep-alive",{props:e.componentOptions.propsData})}var Po=function(t){return t.tag||Ve(t)},Io=function(t){return"show"===t.name},To={name:"transition",props:Ao,abstract:!0,render:function(t){var e=this,n=this.$slots.default;if(n&&(n=n.filter(Po)).length){0;var r=this.mode;0;var o=n[0];if(function(t){for(;t=t.parent;)if(t.data.transition)return!0}(this.$vnode))return o;var i=Eo(o);if(!i)return o;if(this._leaving)return jo(t,o);var a="__transition-"+this._uid+"-";i.key=null==i.key?i.isComment?a+"comment":a+i.tag:s(i.key)?0===String(i.key).indexOf(a)?i.key:a+i.key:i.key;var c=(i.data||(i.data={})).transition=So(this),u=this._vnode,l=Eo(u);if(i.data.directives&&i.data.directives.some(Io)&&(i.data.show=!0),l&&l.data&&!function(t,e){return e.key===t.key&&e.tag===t.tag}(i,l)&&!Ve(l)&&(!l.componentInstance||!l.componentInstance._vnode.isComment)){var f=l.data.transition=S({},c);if("out-in"===r)return this._leaving=!0,se(f,"afterLeave",(function(){e._leaving=!1,e.$forceUpdate()})),jo(t,o);if("in-out"===r){if(Ve(i))return u;var p,d=function(){p()};se(c,"afterEnter",d),se(c,"enterCancelled",d),se(f,"delayLeave",(function(t){p=t}))}}return o}}},Lo=S({tag:String,moveClass:String},Ao);function Mo(t){t.elm._moveCb&&t.elm._moveCb(),t.elm._enterCb&&t.elm._enterCb()}function Ro(t){t.data.newPos=t.elm.getBoundingClientRect()}function zo(t){var e=t.data.pos,n=t.data.newPos,r=e.left-n.left,o=e.top-n.top;if(r||o){t.data.moved=!0;var i=t.elm.style;i.transform=i.WebkitTransform="translate("+r+"px,"+o+"px)",i.transitionDuration="0s"}}delete Lo.mode;var No={Transition:To,TransitionGroup:{props:Lo,beforeMount:function(){var t=this,e=this._update;this._update=function(n,r){var o=Ye(t);t.__patch__(t._vnode,t.kept,!1,!0),t._vnode=t.kept,o(),e.call(t,n,r)}},render:function(t){for(var e=this.tag||this.$vnode.data.tag||"span",n=Object.create(null),r=this.prevChildren=this.children,o=this.$slots.default||[],i=this.children=[],a=So(this),s=0;s-1?Zn[t]=e.constructor===window.HTMLUnknownElement||e.constructor===window.HTMLElement:Zn[t]=/HTMLUnknownElement/.test(e.toString())},S($n.options.directives,Oo),S($n.options.components,No),$n.prototype.__patch__=K?mo:P,$n.prototype.$mount=function(t,e){return function(t,e,n){var r;return t.$el=e,t.$options.render||(t.$options.render=gt),en(t,"beforeMount"),r=function(){t._update(t._render(),n)},new hn(t,r,P,{before:function(){t._isMounted&&!t._isDestroyed&&en(t,"beforeUpdate")}},!0),n=!1,null==t.$vnode&&(t._isMounted=!0,en(t,"mounted")),t}(this,t=t&&K?function(t){if("string"==typeof t){var e=document.querySelector(t);return e||document.createElement("div")}return t}(t):void 0,e)},K&&setTimeout((function(){F.devtools&&it&&it.emit("init",$n)}),0),e.a=$n},function(t,e,n){"use strict";var r=n(1),o={FrontmatterKey:()=>n.e(14).then(n.bind(null,274)),GlobalLayout:()=>Promise.resolve().then(n.bind(null,5)),Layout:()=>Promise.all([n.e(0),n.e(9)]).then(n.bind(null,276)),Post:()=>Promise.all([n.e(0),n.e(1),n.e(5)]).then(n.bind(null,265)),NotFound:()=>n.e(13).then(n.bind(null,268))},i={"v-e45776e2":()=>n.e(12).then(n.bind(null,271)),"v-5d95c0e8":()=>n.e(11).then(n.bind(null,277)),"v-e125a70a":()=>n.e(10).then(n.bind(null,275)),"v-120b5010":()=>n.e(15).then(n.bind(null,273)),"v-c1b5585a":()=>n.e(16).then(n.bind(null,272))};function a(t){const e=Object.create(null);return function(n){return e[n]||(e[n]=t(n))}}n.d(e,"e",(function(){return y})),n.d(e,"d",(function(){return b})),n.d(e,"c",(function(){return _})),n.d(e,"f",(function(){return w})),n.d(e,"a",(function(){return x})),n.d(e,"g",(function(){return k})),n.d(e,"b",(function(){return C})),n.d(e,"h",(function(){return $}));const s=/-(\w)/g,c=a(t=>t.replace(s,(t,e)=>e?e.toUpperCase():"")),u=/\B([A-Z])/g,l=a(t=>t.replace(u,"-$1").toLowerCase()),f=a(t=>t.charAt(0).toUpperCase()+t.slice(1));function p(t,e){if(!e)return;if(t(e))return t(e);return e.includes("-")?t(f(c(e))):t(f(e))||t(l(e))}const d=Object.assign({},o,i),h=t=>d[t],v=t=>i[t],m=t=>o[t],g=t=>r.a.component(t);function y(t){return p(v,t)}function b(t){return p(m,t)}function _(t){return p(h,t)}function w(t){return p(g,t)}function x(...t){return Promise.all(t.filter(t=>t).map(async t=>{if(!w(t)&&_(t)){const e=await _(t)();r.a.component(t,e.default)}}))}function k(t,e,n){switch(e){case"components":t[e]||(t[e]={}),Object.assign(t[e],n);break;case"mixins":t[e]||(t[e]=[]),t[e].push(...n);break;default:throw new Error("Unknown option name.")}}function C(t,e){for(let n=0;n-1},o=[],i=0;i=10);i++){var a=e[i];if(this.getPageLocalePath(a)===n&&this.isSearchable(a))if(r(a))o.push(a);else if(a.headers)for(var s=0;s=10);s++){var c=a.headers[s];r(c)&&o.push(Object.assign({},a,{path:a.path+"#"+c.slug,header:c}))}}return o}},alignRight:function(){return(this.$site.themeConfig.nav||[]).length+(this.$site.repo?1:0)<=2}},methods:{getPageLocalePath:function(t){for(var e in this.$site.locales||{})if("/"!==e&&0===t.path.indexOf(e))return e;return"/"},isSearchable:function(t){var e=null;return null===e||(e=Array.isArray(e)?e:new Array(e)).filter((function(e){return t.path.match(e)})).length>0},onUp:function(){this.showSuggestions&&(this.focusIndex>0?this.focusIndex--:this.focusIndex=this.suggestions.length-1)},onDown:function(){this.showSuggestions&&(this.focusIndex "+t._s(e.header.title))]):t._e()])])})),0):t._e()])}),[],!1,null,null,null).exports}}),l=(n(69),Object(a.a)(u,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("section",{attrs:{id:"header-wrapper"}},[n("header",{attrs:{id:"header"}},[n("div",{staticClass:"header-wrapper"},[n("div",{staticClass:"title"},[n("NavLink",{staticClass:"home-link",attrs:{link:"/"}},[t._v(t._s(t.$site.title)+"\n ")])],1),t._v(" "),n("div",{staticClass:"header-right-wrap"},[t.$themeConfig.nav?n("ul",{staticClass:"nav"},t._l(t.$themeConfig.nav,(function(e){return n("li",{staticClass:"nav-item"},[n("NavLink",{attrs:{link:e.link}},[t._v(t._s(e.text))])],1)})),0):t._e(),t._v(" "),n("SearchBox")],1)])])])}),[],!1,null,null,null).exports),f=n(4),p={props:{isOpen:{type:Boolean,required:!0}},components:{MenuIcon:f.i,XIcon:f.n}},d=(n(70),Object(a.a)(p,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{attrs:{id:"mobile-header"}},[n("div",{staticClass:"mobile-header-bar"},[n("div",{staticClass:"mobile-header-title"},[n("NavLink",{staticClass:"mobile-home-link",attrs:{link:"/"}},[t._v(t._s(t.$site.title)+"\n ")]),t._v(" "),n(t.isOpen?"XIcon":"MenuIcon",{tag:"component",on:{click:function(e){return t.$emit("toggle-sidebar")}}})],1),t._v(" "),n("div",{staticClass:"mobile-menu-wrapper",class:{open:t.isOpen}},[n("hr",{staticClass:"menu-divider"}),t._v(" "),t.$themeConfig.nav?n("ul",{staticClass:"mobile-nav"},t._l(t.$themeConfig.nav,(function(e){return n("li",{staticClass:"mobile-nav-item"},[n("NavLink",{attrs:{link:e.link}},[t._v(t._s(e.text))])],1)})),0):t._e()])])])}),[],!1,null,null,null).exports),h=(n(52),n(72),{components:{FacebookIcon:f.b,GithubIcon:f.c,GitlabIcon:f.d,GlobeIcon:f.e,InstagramIcon:f.f,LinkedinIcon:f.g,MailIcon:f.h,MessageSquareIcon:f.j,PhoneIcon:f.l,TwitterIcon:f.m},methods:{getIconComponentName:function(t){switch(t){case"facebook":return"FacebookIcon";case"github":return"GithubIcon";case"gitlab":return"GitlabIcon";case"instagram":return"InstagramIcon";case"linkedin":return"LinkedinIcon";case"mail":return"MailIcon";case"messenger":return"MessageSquareIcon";case"phone":return"PhoneIcon";case"twitter":return"TwitterIcon";case"web":return"GlobeIcon";default:return""}}},computed:{contact:function(){var t=this;return(this.$themeConfig.footer&&this.$themeConfig.footer.contact||[]).map((function(e){var n=e.type,r=e.link;return{iconComponent:t.getIconComponentName(n),link:r}})).filter((function(t){return t.iconComponent}))},copyright:function(){return this.$themeConfig.footer&&this.$themeConfig.footer.copyright||[]}}}),v=(n(73),{components:{DefaultGlobalLayout:s,Header:l,MobileHeader:d,Footer:Object(a.a)(h,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("footer",{staticClass:"footer"},[n("div",{staticClass:"footer-left-wrap"},[t.contact?n("ul",{staticClass:"contact"},t._l(t.contact,(function(e){return n("li",{staticClass:"contact-item"},[n("NavLink",{attrs:{link:e.link}},[n(e.iconComponent,{tag:"component"}),t._v("\n "+t._s(e.text)+"\n ")],1)],1)})),0):t._e()]),t._v(" "),n("div",{staticClass:"footer-right-wrap"},[t.copyright?n("ul",{staticClass:"copyright"},t._l(t.copyright,(function(e){return n("li",{staticClass:"copyright-item"},[n("NavLink",{attrs:{link:e.link}},[t._v(t._s(e.text))])],1)})),0):t._e()])])}),[],!1,null,"5317f8db",null).exports},data:function(){return{isMobileHeaderOpen:!1}},mounted:function(){var t=this;this.$router.afterEach((function(){t.isMobileHeaderOpen=!1}))}}),m=(n(74),Object(a.a)(v,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{attrs:{id:"vuperess-theme-blog__global-layout"}},[n("Header"),t._v(" "),n("MobileHeader",{attrs:{isOpen:t.isMobileHeaderOpen},on:{"toggle-sidebar":function(e){t.isMobileHeaderOpen=!t.isMobileHeaderOpen}}}),t._v(" "),n("div",{staticClass:"content-wrapper",on:{click:function(e){t.isMobileHeaderOpen=!1}}},[n("DefaultGlobalLayout")],1),t._v(" "),n("Footer")],1)}),[],!1,null,null,null));e.default=m.exports},function(t,e,n){var r=n(9),o=n(25),i=n(20),a=n(27),s=n(31),c=function(t,e,n){var u,l,f,p,d=t&c.F,h=t&c.G,v=t&c.S,m=t&c.P,g=t&c.B,y=h?r:v?r[e]||(r[e]={}):(r[e]||{}).prototype,b=h?o:o[e]||(o[e]={}),_=b.prototype||(b.prototype={});for(u in h&&(n=e),n)f=((l=!d&&y&&void 0!==y[u])?y:n)[u],p=g&&l?s(f,r):m&&"function"==typeof f?s(Function.call,f):f,y&&a(y,u,f,t&c.U),b[u]!=f&&i(b,u,p),m&&_[u]!=f&&(_[u]=f)};r.core=o,c.F=1,c.G=2,c.S=4,c.P=8,c.B=16,c.W=32,c.U=64,c.R=128,t.exports=c},function(t,e){t.exports=function(t){try{return!!t()}catch(t){return!0}}},function(t,e){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},function(t,e){var n=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=n)},function(t,e){t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},function(t,e,n){},function(t,e,n){},function(t,e,n){},function(t,e,n){},function(t,e,n){},function(t,e,n){},function(t,e,n){var r,o; /* NProgress, (c) 2013, 2014 Rico Sta. Cruz - http://ricostacruz.com/nprogress * @license MIT */void 0===(o="function"==typeof(r=function(){var t,e,n={version:"0.2.0"},r=n.settings={minimum:.08,easing:"ease",positionUsing:"",speed:200,trickle:!0,trickleRate:.02,trickleSpeed:800,showSpinner:!0,barSelector:'[role="bar"]',spinnerSelector:'[role="spinner"]',parent:"body",template:'
'};function o(t,e,n){return tn?n:t}function i(t){return 100*(-1+t)}n.configure=function(t){var e,n;for(e in t)void 0!==(n=t[e])&&t.hasOwnProperty(e)&&(r[e]=n);return this},n.status=null,n.set=function(t){var e=n.isStarted();t=o(t,r.minimum,1),n.status=1===t?null:t;var c=n.render(!e),u=c.querySelector(r.barSelector),l=r.speed,f=r.easing;return c.offsetWidth,a((function(e){""===r.positionUsing&&(r.positionUsing=n.getPositioningCSS()),s(u,function(t,e,n){var o;return(o="translate3d"===r.positionUsing?{transform:"translate3d("+i(t)+"%,0,0)"}:"translate"===r.positionUsing?{transform:"translate("+i(t)+"%,0)"}:{"margin-left":i(t)+"%"}).transition="all "+e+"ms "+n,o}(t,l,f)),1===t?(s(c,{transition:"none",opacity:1}),c.offsetWidth,setTimeout((function(){s(c,{transition:"all "+l+"ms linear",opacity:0}),setTimeout((function(){n.remove(),e()}),l)}),l)):setTimeout(e,l)})),this},n.isStarted=function(){return"number"==typeof n.status},n.start=function(){n.status||n.set(0);var t=function(){setTimeout((function(){n.status&&(n.trickle(),t())}),r.trickleSpeed)};return r.trickle&&t(),this},n.done=function(t){return t||n.status?n.inc(.3+.5*Math.random()).set(1):this},n.inc=function(t){var e=n.status;return e?("number"!=typeof t&&(t=(1-e)*o(Math.random()*e,.1,.95)),e=o(e+t,0,.994),n.set(e)):n.start()},n.trickle=function(){return n.inc(Math.random()*r.trickleRate)},t=0,e=0,n.promise=function(r){return r&&"resolved"!==r.state()?(0===e&&n.start(),t++,e++,r.always((function(){0==--e?(t=0,n.done()):n.set((t-e)/t)})),this):this},n.render=function(t){if(n.isRendered())return document.getElementById("nprogress");u(document.documentElement,"nprogress-busy");var e=document.createElement("div");e.id="nprogress",e.innerHTML=r.template;var o,a=e.querySelector(r.barSelector),c=t?"-100":i(n.status||0),l=document.querySelector(r.parent);return s(a,{transition:"all 0 linear",transform:"translate3d("+c+"%,0,0)"}),r.showSpinner||(o=e.querySelector(r.spinnerSelector))&&p(o),l!=document.body&&u(l,"nprogress-custom-parent"),l.appendChild(e),e},n.remove=function(){l(document.documentElement,"nprogress-busy"),l(document.querySelector(r.parent),"nprogress-custom-parent");var t=document.getElementById("nprogress");t&&p(t)},n.isRendered=function(){return!!document.getElementById("nprogress")},n.getPositioningCSS=function(){var t=document.body.style,e="WebkitTransform"in t?"Webkit":"MozTransform"in t?"Moz":"msTransform"in t?"ms":"OTransform"in t?"O":"";return e+"Perspective"in t?"translate3d":e+"Transform"in t?"translate":"margin"};var a=function(){var t=[];function e(){var n=t.shift();n&&n(e)}return function(n){t.push(n),1==t.length&&e()}}(),s=function(){var t=["Webkit","O","Moz","ms"],e={};function n(n){return n=n.replace(/^-ms-/,"ms-").replace(/-([\da-z])/gi,(function(t,e){return e.toUpperCase()})),e[n]||(e[n]=function(e){var n=document.body.style;if(e in n)return e;for(var r,o=t.length,i=e.charAt(0).toUpperCase()+e.slice(1);o--;)if((r=t[o]+i)in n)return r;return e}(n))}function r(t,e,r){e=n(e),t.style[e]=r}return function(t,e){var n,o,i=arguments;if(2==i.length)for(n in e)void 0!==(o=e[n])&&e.hasOwnProperty(n)&&r(t,n,o);else r(t,i[1],i[2])}}();function c(t,e){return("string"==typeof t?t:f(t)).indexOf(" "+e+" ")>=0}function u(t,e){var n=f(t),r=n+e;c(n,e)||(t.className=r.substring(1))}function l(t,e){var n,r=f(t);c(t,e)&&(n=r.replace(" "+e+" "," "),t.className=n.substring(1,n.length-1))}function f(t){return(" "+(t.className||"")+" ").replace(/\s+/gi," ")}function p(t){t&&t.parentNode&&t.parentNode.removeChild(t)}return n})?r.call(e,n,e,t):r)||(t.exports=o)},function(t,e,n){var r=n(10);t.exports=function(t){if(!r(t))throw TypeError(t+" is not an object!");return t}},function(t,e,n){var r=n(28)("wks"),o=n(29),i=n(9).Symbol,a="function"==typeof i;(t.exports=function(t){return r[t]||(r[t]=a&&i[t]||(a?i:o)("Symbol."+t))}).store=r},function(t,e,n){var r=n(38),o=n(43);t.exports=n(21)?function(t,e,n){return r.f(t,e,o(1,n))}:function(t,e,n){return t[e]=n,t}},function(t,e,n){t.exports=!n(7)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},function(t,e,n){var r=n(23),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},function(t,e){var n=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:n)(t)}},function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},function(t,e){var n=t.exports={version:"2.6.11"};"number"==typeof __e&&(__e=n)},function(t,e,n){"use strict";var r=n(7);t.exports=function(t,e){return!!t&&r((function(){e?t.call(null,(function(){}),1):t.call(null)}))}},function(t,e,n){var r=n(9),o=n(20),i=n(37),a=n(29)("src"),s=n(60),c=(""+s).split("toString");n(25).inspectSource=function(t){return s.call(t)},(t.exports=function(t,e,n,s){var u="function"==typeof n;u&&(i(n,"name")||o(n,"name",e)),t[e]!==n&&(u&&(i(n,a)||o(n,a,t[e]?""+t[e]:c.join(String(e)))),t===r?t[e]=n:s?t[e]?t[e]=n:o(t,e,n):(delete t[e],o(t,e,n)))})(Function.prototype,"toString",(function(){return"function"==typeof this&&this[a]||s.call(this)}))},function(t,e,n){var r=n(25),o=n(9),i=o["__core-js_shared__"]||(o["__core-js_shared__"]={});(t.exports=function(t,e){return i[t]||(i[t]=void 0!==e?e:{})})("versions",[]).push({version:r.version,mode:n(47)?"pure":"global",copyright:"© 2019 Denis Pushkarev (zloirock.ru)"})},function(t,e){var n=0,r=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++n+r).toString(36))}},function(t,e,n){var r=n(31),o=n(34),i=n(40),a=n(22),s=n(62);t.exports=function(t,e){var n=1==t,c=2==t,u=3==t,l=4==t,f=6==t,p=5==t||f,d=e||s;return function(e,s,h){for(var v,m,g=i(e),y=o(g),b=r(s,h,3),_=a(y.length),w=0,x=n?d(e,_):c?d(e,0):void 0;_>w;w++)if((p||w in y)&&(m=b(v=y[w],w,g),t))if(n)x[w]=m;else if(m)switch(t){case 3:return!0;case 5:return v;case 6:return w;case 2:x.push(v)}else if(l)return!1;return f?-1:u||l?l:x}}},function(t,e,n){var r=n(61);t.exports=function(t,e,n){if(r(t),void 0===e)return t;switch(n){case 1:return function(n){return t.call(e,n)};case 2:return function(n,r){return t.call(e,n,r)};case 3:return function(n,r,o){return t.call(e,n,r,o)}}return function(){return t.apply(e,arguments)}}},function(t,e,n){"use strict";var r,o,i=n(59),a=RegExp.prototype.exec,s=String.prototype.replace,c=a,u=(r=/a/,o=/b*/g,a.call(r,"a"),a.call(o,"a"),0!==r.lastIndex||0!==o.lastIndex),l=void 0!==/()??/.exec("")[1];(u||l)&&(c=function(t){var e,n,r,o,c=this;return l&&(n=new RegExp("^"+c.source+"$(?!\\s)",i.call(c))),u&&(e=c.lastIndex),r=a.call(c,t),u&&r&&(c.lastIndex=c.global?r.index+r[0].length:e),l&&r&&r.length>1&&s.call(r[0],n,(function(){for(o=1;o=31||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)},e.storage="undefined"!=typeof chrome&&void 0!==chrome.storage?chrome.storage.local:function(){try{return window.localStorage}catch(t){}}(),e.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"],e.formatters.j=function(t){try{return JSON.stringify(t)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}},e.enable(r())},function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},function(t,e,n){var r=n(18),o=n(49),i=n(42),a=Object.defineProperty;e.f=n(21)?Object.defineProperty:function(t,e,n){if(r(t),e=i(e,!0),r(n),o)try{return a(t,e,n)}catch(t){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(t[e]=n.value),t}},function(t,e,n){var r=n(34),o=n(8);t.exports=function(t){return r(o(t))}},function(t,e,n){var r=n(8);t.exports=function(t){return Object(r(t))}},function(t,e,n){var r=n(10),o=n(9).document,i=r(o)&&r(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},function(t,e,n){var r=n(10);t.exports=function(t,e){if(!r(t))return t;var n,o;if(e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;if("function"==typeof(n=t.valueOf)&&!r(o=n.call(t)))return o;if(!e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},function(t,e,n){var r=n(39),o=n(22),i=n(66);t.exports=function(t){return function(e,n,a){var s,c=r(e),u=o(c.length),l=i(a,u);if(t&&n!=n){for(;u>l;)if((s=c[l++])!=s)return!0}else for(;u>l;l++)if((t||l in c)&&c[l]===n)return t||l||0;return!t&&-1}}},function(t,e,n){"use strict";var r=n(56)(!0);t.exports=function(t,e,n){return e+(n?r(t,e).length:1)}},function(t,e,n){"use strict";var r=n(57),o=RegExp.prototype.exec;t.exports=function(t,e){var n=t.exec;if("function"==typeof n){var i=n.call(t,e);if("object"!=typeof i)throw new TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==r(t))throw new TypeError("RegExp#exec called on incompatible receiver");return o.call(t,e)}},function(t,e){t.exports=!1},function(t,e,n){"use strict";n(58);var r=n(27),o=n(20),i=n(7),a=n(8),s=n(19),c=n(32),u=s("species"),l=!i((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$")})),f=function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2===n.length&&"a"===n[0]&&"b"===n[1]}();t.exports=function(t,e,n){var p=s(t),d=!i((function(){var e={};return e[p]=function(){return 7},7!=""[t](e)})),h=d?!i((function(){var e=!1,n=/a/;return n.exec=function(){return e=!0,null},"split"===t&&(n.constructor={},n.constructor[u]=function(){return n}),n[p](""),!e})):void 0;if(!d||!h||"replace"===t&&!l||"split"===t&&!f){var v=/./[p],m=n(a,p,""[t],(function(t,e,n,r,o){return e.exec===c?d&&!o?{done:!0,value:v.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}})),g=m[0],y=m[1];r(String.prototype,t,g),o(RegExp.prototype,p,2==e?function(t,e){return y.call(t,this,e)}:function(t){return y.call(t,this)})}}},function(t,e,n){t.exports=!n(21)&&!n(7)((function(){return 7!=Object.defineProperty(n(41)("div"),"a",{get:function(){return 7}}).a}))},function(t,e,n){"use strict";n(51)("trim",(function(t){return function(){return t(this,3)}}))},function(t,e,n){var r=n(6),o=n(8),i=n(7),a=n(67),s="["+a+"]",c=RegExp("^"+s+s+"*"),u=RegExp(s+s+"*$"),l=function(t,e,n){var o={},s=i((function(){return!!a[t]()||"​…"!="​…"[t]()})),c=o[t]=s?e(f):a[t];n&&(o[n]=c),r(r.P+r.F*s,"String",o)},f=l.trim=function(t,e){return t=String(o(t)),1&e&&(t=t.replace(c,"")),2&e&&(t=t.replace(u,"")),t};t.exports=l},function(t,e,n){"use strict";n(71)("link",(function(t){return function(e){return t(this,"a","href",e)}}))},function(t,e,n){t.exports=n(80)},function(t,e,n){},function(t,e,n){"use strict";var r=n(18),o=n(22),i=n(45),a=n(46);n(48)("match",1,(function(t,e,n,s){return[function(n){var r=t(this),o=null==n?void 0:n[e];return void 0!==o?o.call(n,r):new RegExp(n)[e](String(r))},function(t){var e=s(n,t,this);if(e.done)return e.value;var c=r(t),u=String(this);if(!c.global)return a(c,u);var l=c.unicode;c.lastIndex=0;for(var f,p=[],d=0;null!==(f=a(c,u));){var h=String(f[0]);p[d]=h,""===h&&(c.lastIndex=i(u,o(c.lastIndex),l)),d++}return 0===d?null:p}]}))},function(t,e,n){var r=n(23),o=n(8);t.exports=function(t){return function(e,n){var i,a,s=String(o(e)),c=r(n),u=s.length;return c<0||c>=u?t?"":void 0:(i=s.charCodeAt(c))<55296||i>56319||c+1===u||(a=s.charCodeAt(c+1))<56320||a>57343?t?s.charAt(c):i:t?s.slice(c,c+2):a-56320+(i-55296<<10)+65536}}},function(t,e,n){var r=n(24),o=n(19)("toStringTag"),i="Arguments"==r(function(){return arguments}());t.exports=function(t){var e,n,a;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(t){}}(e=Object(t),o))?n:i?r(e):"Object"==(a=r(e))&&"function"==typeof e.callee?"Arguments":a}},function(t,e,n){"use strict";var r=n(32);n(6)({target:"RegExp",proto:!0,forced:r!==/./.exec},{exec:r})},function(t,e,n){"use strict";var r=n(18);t.exports=function(){var t=r(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e}},function(t,e,n){t.exports=n(28)("native-function-to-string",Function.toString)},function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},function(t,e,n){var r=n(63);t.exports=function(t,e){return new(r(t))(e)}},function(t,e,n){var r=n(10),o=n(35),i=n(19)("species");t.exports=function(t){var e;return o(t)&&("function"!=typeof(e=t.constructor)||e!==Array&&!o(e.prototype)||(e=void 0),r(e)&&null===(e=e[i])&&(e=void 0)),void 0===e?Array:e}},function(t,e,n){var r=n(6);r(r.S,"Array",{isArray:n(35)})},function(t,e,n){"use strict";var r=n(6),o=n(44)(!1),i=[].indexOf,a=!!i&&1/[1].indexOf(1,-0)<0;r(r.P+r.F*(a||!n(26)(i)),"Array",{indexOf:function(t){return a?i.apply(this,arguments)||0:o(this,t,arguments[1])}})},function(t,e,n){var r=n(23),o=Math.max,i=Math.min;t.exports=function(t,e){return(t=r(t))<0?o(t+e,0):i(t,e)}},function(t,e){t.exports="\t\n\v\f\r   ᠎              \u2028\u2029\ufeff"},function(t,e,n){"use strict";var r=n(11);n.n(r).a},function(t,e,n){"use strict";var r=n(12);n.n(r).a},function(t,e,n){"use strict";var r=n(13);n.n(r).a},function(t,e,n){var r=n(6),o=n(7),i=n(8),a=/"/g,s=function(t,e,n,r){var o=String(i(t)),s="<"+e;return""!==n&&(s+=" "+n+'="'+String(r).replace(a,""")+'"'),s+">"+o+""};t.exports=function(t,e){var n={};n[t]=e(s),r(r.P+r.F*o((function(){var e=""[t]('"');return e!==e.toLowerCase()||e.split('"').length>3})),"String",n)}},function(t,e,n){"use strict";var r=n(6),o=n(30)(1);r(r.P+r.F*!n(26)([].map,!0),"Array",{map:function(t){return o(this,t,arguments[1])}})},function(t,e,n){"use strict";var r=n(14);n.n(r).a},function(t,e,n){"use strict";var r=n(15);n.n(r).a},function(t,e,n){Promise.all([n.e(0),n.e(17)]).then(n.t.bind(null,81,7))},function(t,e,n){},function(t,e,n){var r;function o(t){function n(){if(n.enabled){var t=n,o=+new Date,i=o-(r||o);t.diff=i,t.prev=r,t.curr=o,r=o;for(var a=new Array(arguments.length),s=0;s0)return function(t){if((t=String(t)).length>100)return;var e=/^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(t);if(!e)return;var s=parseFloat(e[1]);switch((e[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return s*a;case"days":case"day":case"d":return s*i;case"hours":case"hour":case"hrs":case"hr":case"h":return s*o;case"minutes":case"minute":case"mins":case"min":case"m":return s*r;case"seconds":case"second":case"secs":case"sec":case"s":return s*n;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return s;default:return}}(t);if("number"===u&&!1===isNaN(t))return e.long?s(c=t,i,"day")||s(c,o,"hour")||s(c,r,"minute")||s(c,n,"second")||c+" ms":function(t){if(t>=i)return Math.round(t/i)+"d";if(t>=o)return Math.round(t/o)+"h";if(t>=r)return Math.round(t/r)+"m";if(t>=n)return Math.round(t/n)+"s";return t+"ms"}(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))}},function(t,e,n){"use strict";var r=n(16);n.n(r).a},function(t,e,n){"use strict";n.r(e);var r=n(1); /*! * vue-router v3.1.3 * (c) 2019 Evan You * @license MIT - */function o(t){return Object.prototype.toString.call(t).indexOf("Error")>-1}function i(t,e){return e instanceof t||e&&(e.name===t.name||e._name===t._name)}function a(t,e){for(var n in e)t[n]=e[n];return t}var s={name:"RouterView",functional:!0,props:{name:{type:String,default:"default"}},render:function(t,e){var n=e.props,r=e.children,o=e.parent,i=e.data;i.routerView=!0;for(var s=o.$createElement,c=n.name,u=o.$route,l=o._routerViewCache||(o._routerViewCache={}),f=0,p=!1;o&&o._routerRoot!==o;){var d=o.$vnode&&o.$vnode.data;d&&(d.routerView&&f++,d.keepAlive&&o._inactive&&(p=!0)),o=o.$parent}if(i.routerViewDepth=f,p)return s(l[c],i,r);var h=u.matched[f];if(!h)return l[c]=null,s();var v=l[c]=h.components[c];i.registerRouteInstance=function(t,e){var n=h.instances[c];(e&&n!==t||!e&&n===t)&&(h.instances[c]=e)},(i.hook||(i.hook={})).prepatch=function(t,e){h.instances[c]=e.componentInstance},i.hook.init=function(t){t.data.keepAlive&&t.componentInstance&&t.componentInstance!==h.instances[c]&&(h.instances[c]=t.componentInstance)};var m=i.props=function(t,e){switch(typeof e){case"undefined":return;case"object":return e;case"function":return e(t);case"boolean":return e?t.params:void 0;default:0}}(u,h.props&&h.props[c]);if(m){m=i.props=a({},m);var g=i.attrs=i.attrs||{};for(var y in m)v.props&&y in v.props||(g[y]=m[y],delete m[y])}return s(v,i,r)}};var c=/[!'()*]/g,u=function(t){return"%"+t.charCodeAt(0).toString(16)},l=/%2C/g,f=function(t){return encodeURIComponent(t).replace(c,u).replace(l,",")},p=decodeURIComponent;function d(t){var e={};return(t=t.trim().replace(/^(\?|#|&)/,""))?(t.split("&").forEach((function(t){var n=t.replace(/\+/g," ").split("="),r=p(n.shift()),o=n.length>0?p(n.join("=")):null;void 0===e[r]?e[r]=o:Array.isArray(e[r])?e[r].push(o):e[r]=[e[r],o]})),e):e}function h(t){var e=t?Object.keys(t).map((function(e){var n=t[e];if(void 0===n)return"";if(null===n)return f(e);if(Array.isArray(n)){var r=[];return n.forEach((function(t){void 0!==t&&(null===t?r.push(f(e)):r.push(f(e)+"="+f(t)))})),r.join("&")}return f(e)+"="+f(n)})).filter((function(t){return t.length>0})).join("&"):null;return e?"?"+e:""}var v=/\/?$/;function m(t,e,n,r){var o=r&&r.options.stringifyQuery,i=e.query||{};try{i=g(i)}catch(t){}var a={name:e.name||t&&t.name,meta:t&&t.meta||{},path:e.path||"/",hash:e.hash||"",query:i,params:e.params||{},fullPath:_(e,o),matched:t?b(t):[]};return n&&(a.redirectedFrom=_(n,o)),Object.freeze(a)}function g(t){if(Array.isArray(t))return t.map(g);if(t&&"object"==typeof t){var e={};for(var n in t)e[n]=g(t[n]);return e}return t}var y=m(null,{path:"/"});function b(t){for(var e=[];t;)e.unshift(t),t=t.parent;return e}function _(t,e){var n=t.path,r=t.query;void 0===r&&(r={});var o=t.hash;return void 0===o&&(o=""),(n||"/")+(e||h)(r)+o}function w(t,e){return e===y?t===e:!!e&&(t.path&&e.path?t.path.replace(v,"")===e.path.replace(v,"")&&t.hash===e.hash&&x(t.query,e.query):!(!t.name||!e.name)&&(t.name===e.name&&t.hash===e.hash&&x(t.query,e.query)&&x(t.params,e.params)))}function x(t,e){if(void 0===t&&(t={}),void 0===e&&(e={}),!t||!e)return t===e;var n=Object.keys(t),r=Object.keys(e);return n.length===r.length&&n.every((function(n){var r=t[n],o=e[n];return"object"==typeof r&&"object"==typeof o?x(r,o):String(r)===String(o)}))}function k(t,e,n){var r=t.charAt(0);if("/"===r)return t;if("?"===r||"#"===r)return e+t;var o=e.split("/");n&&o[o.length-1]||o.pop();for(var i=t.replace(/^\//,"").split("/"),a=0;a=0&&(e=t.slice(r),t=t.slice(0,r));var o=t.indexOf("?");return o>=0&&(n=t.slice(o+1),t=t.slice(0,o)),{path:t,query:n,hash:e}}(o.path||""),u=e&&e.path||"/",l=c.path?k(c.path,u,n||o.append):u,f=function(t,e,n){void 0===e&&(e={});var r,o=n||d;try{r=o(t||"")}catch(t){r={}}for(var i in e)r[i]=e[i];return r}(c.query,o.query,r&&r.options.parseQuery),p=o.hash||c.hash;return p&&"#"!==p.charAt(0)&&(p="#"+p),{_normalized:!0,path:l,query:f,hash:p}}var q,V=function(){},K={name:"RouterLink",props:{to:{type:[String,Object],required:!0},tag:{type:String,default:"a"},exact:Boolean,append:Boolean,replace:Boolean,activeClass:String,exactActiveClass:String,event:{type:[String,Array],default:"click"}},render:function(t){var e=this,n=this.$router,r=this.$route,o=n.resolve(this.to,r,this.append),i=o.location,s=o.route,c=o.href,u={},l=n.options.linkActiveClass,f=n.options.linkExactActiveClass,p=null==l?"router-link-active":l,d=null==f?"router-link-exact-active":f,h=null==this.activeClass?p:this.activeClass,g=null==this.exactActiveClass?d:this.exactActiveClass,y=s.redirectedFrom?m(null,H(s.redirectedFrom),null,n):s;u[g]=w(r,y),u[h]=this.exact?u[g]:function(t,e){return 0===t.path.replace(v,"/").indexOf(e.path.replace(v,"/"))&&(!e.hash||t.hash===e.hash)&&function(t,e){for(var n in e)if(!(n in t))return!1;return!0}(t.query,e.query)}(r,y);var b=function(t){W(t)&&(e.replace?n.replace(i,V):n.push(i,V))},_={click:W};Array.isArray(this.event)?this.event.forEach((function(t){_[t]=b})):_[this.event]=b;var x={class:u},k=!this.$scopedSlots.$hasNormal&&this.$scopedSlots.default&&this.$scopedSlots.default({href:c,route:s,navigate:b,isActive:u[h],isExactActive:u[g]});if(k){if(1===k.length)return k[0];if(k.length>1||!k.length)return 0===k.length?t():t("span",{},k)}if("a"===this.tag)x.on=_,x.attrs={href:c};else{var C=function t(e){var n;if(e)for(var r=0;r-1&&(s.params[p]=n.params[p]);return s.path=B(l.path,s.params),c(l,s,a)}if(s.path){s.params={};for(var d=0;d=t.length?n():t[o]?e(t[o],(function(){r(o+1)})):r(o+1)};r(0)}function yt(t){return function(e,n,r){var i=!1,a=0,s=null;bt(t,(function(t,e,n,c){if("function"==typeof t&&void 0===t.cid){i=!0,a++;var u,l=xt((function(e){var o;((o=e).__esModule||wt&&"Module"===o[Symbol.toStringTag])&&(e=e.default),t.resolved="function"==typeof e?e:q.extend(e),n.components[c]=e,--a<=0&&r()})),f=xt((function(t){var e="Failed to resolve async component "+c+": "+t;s||(s=o(t)?t:new Error(e),r(s))}));try{u=t(l,f)}catch(t){f(t)}if(u)if("function"==typeof u.then)u.then(l,f);else{var p=u.component;p&&"function"==typeof p.then&&p.then(l,f)}}})),i||r()}}function bt(t,e){return _t(t.map((function(t){return Object.keys(t.components).map((function(n){return e(t.components[n],t.instances[n],t,n)}))})))}function _t(t){return Array.prototype.concat.apply([],t)}var wt="function"==typeof Symbol&&"symbol"==typeof Symbol.toStringTag;function xt(t){var e=!1;return function(){for(var n=[],r=arguments.length;r--;)n[r]=arguments[r];if(!e)return e=!0,t.apply(this,n)}}var kt=function(t){function e(e){t.call(this),this.name=this._name="NavigationDuplicated",this.message='Navigating to current location ("'+e.fullPath+'") is not allowed',Object.defineProperty(this,"stack",{value:(new t).stack,writable:!0,configurable:!0})}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(Error);kt._name="NavigationDuplicated";var Ct=function(t,e){this.router=t,this.base=function(t){if(!t)if(G){var e=document.querySelector("base");t=(t=e&&e.getAttribute("href")||"/").replace(/^https?:\/\/[^\/]+/,"")}else t="/";"/"!==t.charAt(0)&&(t="/"+t);return t.replace(/\/$/,"")}(e),this.current=y,this.pending=null,this.ready=!1,this.readyCbs=[],this.readyErrorCbs=[],this.errorCbs=[]};function $t(t,e,n,r){var o=bt(t,(function(t,r,o,i){var a=function(t,e){"function"!=typeof t&&(t=q.extend(t));return t.options[e]}(t,e);if(a)return Array.isArray(a)?a.map((function(t){return n(t,r,o,i)})):n(a,r,o,i)}));return _t(r?o.reverse():o)}function Ot(t,e){if(e)return function(){return t.apply(e,arguments)}}Ct.prototype.listen=function(t){this.cb=t},Ct.prototype.onReady=function(t,e){this.ready?t():(this.readyCbs.push(t),e&&this.readyErrorCbs.push(e))},Ct.prototype.onError=function(t){this.errorCbs.push(t)},Ct.prototype.transitionTo=function(t,e,n){var r=this,o=this.router.match(t,this.current);this.confirmTransition(o,(function(){r.updateRoute(o),e&&e(o),r.ensureURL(),r.ready||(r.ready=!0,r.readyCbs.forEach((function(t){t(o)})))}),(function(t){n&&n(t),t&&!r.ready&&(r.ready=!0,r.readyErrorCbs.forEach((function(e){e(t)})))}))},Ct.prototype.confirmTransition=function(t,e,n){var r=this,a=this.current,s=function(t){!i(kt,t)&&o(t)&&(r.errorCbs.length?r.errorCbs.forEach((function(e){e(t)})):console.error(t)),n&&n(t)};if(w(t,a)&&t.matched.length===a.matched.length)return this.ensureURL(),s(new kt(t));var c=function(t,e){var n,r=Math.max(t.length,e.length);for(n=0;n-1?decodeURI(t.slice(0,r))+t.slice(r):decodeURI(t)}else n>-1&&(t=decodeURI(t.slice(0,n))+t.slice(n));return t}function It(t){var e=window.location.href,n=e.indexOf("#");return(n>=0?e.slice(0,n):e)+"#"+t}function Tt(t){ht?vt(It(t)):window.location.hash=t}function Lt(t){ht?mt(It(t)):window.location.replace(It(t))}var Mt=function(t){function e(e,n){t.call(this,e,n),this.stack=[],this.index=-1}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.push=function(t,e,n){var r=this;this.transitionTo(t,(function(t){r.stack=r.stack.slice(0,r.index+1).concat(t),r.index++,e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var r=this;this.transitionTo(t,(function(t){r.stack=r.stack.slice(0,r.index).concat(t),e&&e(t)}),n)},e.prototype.go=function(t){var e=this,n=this.index+t;if(!(n<0||n>=this.stack.length)){var r=this.stack[n];this.confirmTransition(r,(function(){e.index=n,e.updateRoute(r)}),(function(t){i(kt,t)&&(e.index=n)}))}},e.prototype.getCurrentLocation=function(){var t=this.stack[this.stack.length-1];return t?t.fullPath:"/"},e.prototype.ensureURL=function(){},e}(Ct),Rt=function(t){void 0===t&&(t={}),this.app=null,this.apps=[],this.options=t,this.beforeHooks=[],this.resolveHooks=[],this.afterHooks=[],this.matcher=Z(t.routes||[],this);var e=t.mode||"hash";switch(this.fallback="history"===e&&!ht&&!1!==t.fallback,this.fallback&&(e="hash"),G||(e="abstract"),this.mode=e,e){case"history":this.history=new At(this,t.base);break;case"hash":this.history=new St(this,t.base,this.fallback);break;case"abstract":this.history=new Mt(this,t.base);break;default:0}},zt={currentRoute:{configurable:!0}};function Nt(t,e){return t.push(e),function(){var n=t.indexOf(e);n>-1&&t.splice(n,1)}}Rt.prototype.match=function(t,e,n){return this.matcher.match(t,e,n)},zt.currentRoute.get=function(){return this.history&&this.history.current},Rt.prototype.init=function(t){var e=this;if(this.apps.push(t),t.$once("hook:destroyed",(function(){var n=e.apps.indexOf(t);n>-1&&e.apps.splice(n,1),e.app===t&&(e.app=e.apps[0]||null)})),!this.app){this.app=t;var n=this.history;if(n instanceof At)n.transitionTo(n.getCurrentLocation());else if(n instanceof St){var r=function(){n.setupListeners()};n.transitionTo(n.getCurrentLocation(),r,r)}n.listen((function(t){e.apps.forEach((function(e){e._route=t}))}))}},Rt.prototype.beforeEach=function(t){return Nt(this.beforeHooks,t)},Rt.prototype.beforeResolve=function(t){return Nt(this.resolveHooks,t)},Rt.prototype.afterEach=function(t){return Nt(this.afterHooks,t)},Rt.prototype.onReady=function(t,e){this.history.onReady(t,e)},Rt.prototype.onError=function(t){this.history.onError(t)},Rt.prototype.push=function(t,e,n){var r=this;if(!e&&!n&&"undefined"!=typeof Promise)return new Promise((function(e,n){r.history.push(t,e,n)}));this.history.push(t,e,n)},Rt.prototype.replace=function(t,e,n){var r=this;if(!e&&!n&&"undefined"!=typeof Promise)return new Promise((function(e,n){r.history.replace(t,e,n)}));this.history.replace(t,e,n)},Rt.prototype.go=function(t){this.history.go(t)},Rt.prototype.back=function(){this.go(-1)},Rt.prototype.forward=function(){this.go(1)},Rt.prototype.getMatchedComponents=function(t){var e=t?t.matched?t:this.resolve(t).route:this.currentRoute;return e?[].concat.apply([],e.matched.map((function(t){return Object.keys(t.components).map((function(e){return t.components[e]}))}))):[]},Rt.prototype.resolve=function(t,e,n){var r=H(t,e=e||this.history.current,n,this),o=this.match(r,e),i=o.redirectedFrom||o.fullPath;return{location:r,route:o,href:function(t,e,n){var r="hash"===n?"#"+e:e;return t?C(t+"/"+r):r}(this.history.base,i,this.mode),normalizedTo:r,resolved:o}},Rt.prototype.addRoutes=function(t){this.matcher.addRoutes(t),this.history.current!==y&&this.history.transitionTo(this.history.getCurrentLocation())},Object.defineProperties(Rt.prototype,zt),Rt.install=function t(e){if(!t.installed||q!==e){t.installed=!0,q=e;var n=function(t){return void 0!==t},r=function(t,e){var r=t.$options._parentVnode;n(r)&&n(r=r.data)&&n(r=r.registerRouteInstance)&&r(t,e)};e.mixin({beforeCreate:function(){n(this.$options.router)?(this._routerRoot=this,this._router=this.$options.router,this._router.init(this),e.util.defineReactive(this,"_route",this._router.history.current)):this._routerRoot=this.$parent&&this.$parent._routerRoot||this,r(this,this)},destroyed:function(){r(this)}}),Object.defineProperty(e.prototype,"$router",{get:function(){return this._routerRoot._router}}),Object.defineProperty(e.prototype,"$route",{get:function(){return this._routerRoot._route}}),e.component("RouterView",s),e.component("RouterLink",K);var o=e.config.optionMergeStrategies;o.beforeRouteEnter=o.beforeRouteLeave=o.beforeRouteUpdate=o.created}},Rt.version="3.1.3",G&&window.Vue&&window.Vue.use(Rt);var Dt=Rt;var Ft=n(2),Ut={created(){this.$ssrContext&&(this.$ssrContext.title=this.$title,this.$ssrContext.lang=this.$lang,this.$ssrContext.description=this.$page.description||this.$description)},mounted(){this.currentMetaTags=new Set,this.updateMeta()},methods:{updateMeta(){document.title=this.$title,document.documentElement.lang=this.$lang;const t=this.$page.frontmatter.meta||[],e=t.slice(0);0===t.filter(t=>"description"===t.name).length&&e.push({name:"description",content:this.$description});const n=document.querySelectorAll('meta[name="description"]');n.length&&n.forEach(t=>this.currentMetaTags.add(t)),this.currentMetaTags=new Set(Bt(e,this.currentMetaTags))}},watch:{$page(){this.updateMeta()}},beforeDestroy(){Bt(null,this.currentMetaTags)}};function Bt(t,e){if(e&&[...e].forEach(t=>{document.head.removeChild(t)}),t)return t.map(t=>{const e=document.createElement("meta");return Object.keys(t).forEach(n=>{e.setAttribute(n,t[n])}),document.head.appendChild(e),e})}var Ht=n(17),qt=n.n(Ht),Vt={mounted(){qt.a.configure({showSpinner:!1}),this.$router.beforeEach((t,e,n)=>{t.path===e.path||r.a.component(t.name)||qt.a.start(),n()}),this.$router.afterEach(()=>{qt.a.done(),this.isSidebarOpen=!1})}},Kt=(n(54),Object.assign||function(t){for(var e,n=1;nx.scrollOffset&&h(150)}},_=function(t){-1({zoom:null}),mounted(){this.updateZoom()},updated(){this.updateZoom()},methods:{updateZoom(){setTimeout(()=>{this.zoom&&this.zoom.detach(),this.zoom=ee(".content img")},1e3)}}}],re=n(5);Object(Ft.g)(re.default,"mixins",ne);const oe=[{name:"v-5d95c0e8",path:"/",component:re.default,beforeEnter:(t,e,n)=>{Object(Ft.a)("Layout","v-5d95c0e8").then(n)}},{path:"/index.html",redirect:"/"},{name:"v-e125a70a",path:"/posts/2019/01/02/garden/",component:re.default,beforeEnter:(t,e,n)=>{Object(Ft.a)("Post","v-e125a70a").then(n)}},{path:"/posts/2019/01/02/garden/index.html",redirect:"/posts/2019/01/02/garden/"},{path:"/_posts/2019-01-02-garden.html",redirect:"/posts/2019/01/02/garden/"},{name:"v-120b5010",path:"/about/",component:re.default,beforeEnter:(t,e,n)=>{Object(Ft.a)("Layout","v-120b5010").then(n)}},{path:"/about/index.html",redirect:"/about/"},{name:"v-e45776e2",path:"/posts/2019/08/08/floating-dock/",component:re.default,beforeEnter:(t,e,n)=>{Object(Ft.a)("Post","v-e45776e2").then(n)}},{path:"/posts/2019/08/08/floating-dock/index.html",redirect:"/posts/2019/08/08/floating-dock/"},{path:"/_posts/2019-08-08-floating_dock.html",redirect:"/posts/2019/08/08/floating-dock/"},{name:"v-c1b5585a",path:"/about/policy.html",component:re.default,beforeEnter:(t,e,n)=>{Object(Ft.a)("Layout","v-c1b5585a").then(n)}},{name:"v-1f814451",path:"/posts/",component:re.default,beforeEnter:(t,e,n)=>{Object(Ft.a)("Layout","v-1f814451").then(n)},meta:{pid:"post",id:"post"}},{path:"/posts/index.html",redirect:"/posts/"},{name:"v-43468301",path:"/tags/",component:re.default,beforeEnter:(t,e,n)=>{Object(Ft.a)("FrontmatterKey","v-43468301").then(n)},meta:{pid:"tag",id:"tag"}},{path:"/tags/index.html",redirect:"/tags/"},{name:"v-186cc960",path:"/tags/house/",component:re.default,beforeEnter:(t,e,n)=>{Object(Ft.a)("FrontmatterPagination","v-186cc960").then(n)},meta:{pid:"tag",id:"house"}},{path:"/tags/house/index.html",redirect:"/tags/house/"},{name:"v-0fb72a7a",path:"/tags/kayak/",component:re.default,beforeEnter:(t,e,n)=>{Object(Ft.a)("FrontmatterPagination","v-0fb72a7a").then(n)},meta:{pid:"tag",id:"kayak"}},{path:"/tags/kayak/index.html",redirect:"/tags/kayak/"},{path:"*",component:re.default}],ie={title:"zndr.dk",description:'Personal server for Jannik Zander. The concept is to use my own server instead of "others" server. Whenever possible I will install and maintain the service myself.',base:"/",pages:[{title:"Home",frontmatter:{title:"Home"},regularPath:"/",relativePath:"README.md",key:"v-5d95c0e8",path:"/",headers:[{level:3,title:"Linux server",slug:"linux-server"},{level:3,title:"Tower cabinet",slug:"tower-cabinet"},{level:3,title:"Fixed IP address, domain name and DNS",slug:"fixed-ip-address-domain-name-and-dns"},{level:3,title:"Back up of data",slug:"back-up-of-data"},{level:3,title:"Hard drive docking station",slug:"hard-drive-docking-station"},{level:3,title:"Make your own ethernet cables",slug:"make-your-own-ethernet-cables"}],summary:"\n\n{{ $description }}\n\nLinks\n\nCloud\nMail\nPlay\nGit\nDatabases\n[User ..."},{title:"Small forrest in front of house",frontmatter:{tag:"house",title:"Small forrest in front of house",author:"JZ",location:"Tange",date:"2019-01-02",layout:"Post",permalink:"/posts/:year/:month/:day/:slug"},regularPath:"/_posts/2019-01-02-garden.html",relativePath:"_posts/2019-01-02-garden.md",key:"v-e125a70a",path:"/posts/2019/01/02/garden/",summary:"\n\nI have been spending weeks cutting down the small forrest in front of our house. So now we have something that resembles a garden.\n\nGarden after\n\nBefore it looked ...",id:"post",pid:"post"},{title:"About",frontmatter:{title:"About"},regularPath:"/about/",relativePath:"about/README.md",key:"v-120b5010",path:"/about/",summary:"\n\nHello!\n\nI am Jannik. After living seven years in Sweden and eight years in Japan, I now live in the small village Tange, in my home country of Denmark. I currently work as Software Architect in the ..."},{title:"Floating dock",frontmatter:{tags:["kayak","house"],title:"Floating dock",author:"JZ",location:"Tange",date:"2019-08-08",layout:"Post",permalink:"/posts/:year/:month/:day/:slug"},regularPath:"/_posts/2019-08-08-floating_dock.html",relativePath:"_posts/2019-08-08-floating_dock.md",key:"v-e45776e2",path:"/posts/2019/08/08/floating-dock/",summary:"\n\nHere is a nice floating dock I built for children to play, and for me and my kayak.\n\nFloating Dock ...",id:"post",pid:"post"},{title:"Privacy policy",frontmatter:{title:"Privacy policy"},regularPath:"/about/policy.html",relativePath:"about/policy.md",key:"v-c1b5585a",path:"/about/policy.html",headers:[{level:2,title:"Automatic collection of information",slug:"automatic-collection-of-information"},{level:2,title:"Collection of personal information",slug:"collection-of-personal-information"},{level:2,title:"Managing personal information",slug:"managing-personal-information"},{level:2,title:"Use and processing of collected information",slug:"use-and-processing-of-collected-information"},{level:2,title:"Information transfer and storage",slug:"information-transfer-and-storage"},{level:2,title:"The rights of users",slug:"the-rights-of-users"},{level:2,title:"The right to object to processing",slug:"the-right-to-object-to-processing"},{level:2,title:"How to exercise these rights",slug:"how-to-exercise-these-rights"},{level:2,title:"Privacy of children",slug:"privacy-of-children"},{level:2,title:"Do Not Track signals",slug:"do-not-track-signals"},{level:2,title:"Links to other websites",slug:"links-to-other-websites"},{level:2,title:"Information security",slug:"information-security"},{level:2,title:"Data breach",slug:"data-breach"},{level:2,title:"Changes and amendments",slug:"changes-and-amendments"},{level:2,title:"Acceptance of this policy",slug:"acceptance-of-this-policy"},{level:2,title:"Contacting us",slug:"contacting-us"}],summary:'\n\nThis privacy policy ("Policy") describes how Website Operator ("Website Operator", "we", "us" or "our") collects, protects and uses the personally identifiable information ("Personal Information") y ...'},{frontmatter:{layout:"Layout",title:"Post"},regularPath:"/posts/",key:"v-1f814451",path:"/posts/"},{frontmatter:{layout:"FrontmatterKey",title:"Tag"},regularPath:"/tags/",key:"v-43468301",path:"/tags/"},{frontmatter:{layout:"FrontmatterPagination",title:"house tag"},regularPath:"/tags/house/",key:"v-186cc960",path:"/tags/house/"},{frontmatter:{layout:"FrontmatterPagination",title:"kayak tag"},regularPath:"/tags/kayak/",key:"v-0fb72a7a",path:"/tags/kayak/"}],themeConfig:{nav:[{text:"Blog",link:"/posts/"},{text:"Tags",link:"/tags/"},{text:"About",link:"/about/"}],footer:{contact:[{type:"mail",link:"mailto:webmaster@zndr.dk"}],copyright:[{text:"Privacy policy",link:"/about/policy.html"}]},logo:"logo.png",lastUpdate:"Last Updated",summary:!0,summaryLength:200,pwa:!1}};n(75);r.a.component("BaseListLayout",()=>Promise.all([n.e(0),n.e(1),n.e(6)]).then(n.bind(null,267))),r.a.component("BlogTag",()=>Promise.all([n.e(0),n.e(7)]).then(n.bind(null,266))),r.a.component("BlogTags",()=>Promise.all([n.e(0),n.e(8)]).then(n.bind(null,270))),r.a.component("NavLink",()=>Promise.all([n.e(0),n.e(4)]).then(n.bind(null,269)));n(76);var ae={tag:{house:{key:"house",scope:"tag",path:"/tags/house/",pageKeys:["v-e125a70a","v-e45776e2"]},kayak:{key:"kayak",scope:"tag",path:"/tags/kayak/",pageKeys:["v-e45776e2"]}}};class se{constructor(t,e){this._metaMap=Object.assign({},t),Object.keys(this._metaMap).forEach(t=>{const{pageKeys:n}=this._metaMap[t];this._metaMap[t].pages=n.map(t=>Object(Ft.b)(e,t))})}get length(){return Object.keys(this._metaMap).length}get map(){return this._metaMap}get pages(){return this.list}get list(){return this.toArray()}toArray(){const t=[];return Object.keys(this._metaMap).forEach(e=>{const{pages:n,path:r}=this._metaMap[e];t.push({name:e,pages:n,path:r})}),t}getItemByName(t){return this._metaMap[t]}}var ce={post:(t,e)=>{return new Date(t.frontmatter.date).getTime()-new Date(e.frontmatter.date).getTime()>0?-1:1},tag:(t,e)=>{return new Date(t.frontmatter.date).getTime()-new Date(e.frontmatter.date).getTime()>0?-1:1}},ue={post:function(t,e,n){return t.pid===n&&t.id===e},tag:function(t,e,n){const r=e;return["tag","tags"].some(e=>{const n=t.frontmatter[e];return Array.isArray(n)?n.some(t=>t===r):n===r})}},le=[{pid:"post",id:"post",filter:ue.post,sorter:ce.post,pages:[{path:"/posts/",interval:[0,2]}]},{pid:"tag",id:"house",filter:ue.tag,sorter:ce.tag,pages:[{path:"/tags/house/",interval:[0,2]}]},{pid:"tag",id:"kayak",filter:ue.tag,sorter:ce.tag,pages:[{path:"/tags/kayak/",interval:[0,1]}]}],fe=n(36);const pe=n.n(fe)()("plugin-blog:pagination");class de{constructor(t,e,n){pe(t);const{pages:r}=t,{path:o}=n;for(let t=0,e=r.length;tt.filter(e,t.id,t.pid)).sort(t.sorter)}setIndexPage(t){this._indexPage=t}get length(){return this._paginationPages.length}get pages(){const[t,e]=this._currentPage.interval;return this._matchedPages.slice(t,e+1)}get hasPrev(){return 0!==this.paginationIndex}get prevLink(){return this.hasPrev?this.paginationIndex-1==0&&this._indexPage?this._indexPage:this._paginationPages[this.paginationIndex-1].path:null}get hasNext(){return this.paginationIndex!==this.length-1}get nextLink(){return this.hasNext?this._paginationPages[this.paginationIndex+1].path:null}getSpecificPageLink(t){return this._paginationPages[t].path}}const he=new class{constructor(t){this.paginations=t}get pages(){return r.a.$vuepress.$get("siteData").pages}getPagination(t,e,n){pe("id",e),pe("this.paginations",this.paginations);const r=this.paginations.filter(n=>n.id===e&&n.pid===t)[0];return new de(r,this.pages,n)}}(le);var ve=[{},({Vue:t})=>{t.mixin({computed:{$dataBlock(){return this.$options.__data__block__}}})},{},{},({Vue:t})=>{const e=Object.keys(ae).map(t=>{const e=ae[t],n=`$${t}`;return{[n](){const{pages:t}=this.$site;return new se(e,t)},[`$current${t.charAt(0).toUpperCase()+t.slice(1)}`](){const t=this.$route.meta.id;return this[n].getItemByName(t)}}}).reduce((t,e)=>(Object.assign(t,e),t),{});e.$frontmatterKey=function(){const t=this[`$${this.$route.meta.id}`];return t||null},t.mixin({computed:e})},({Vue:t})=>{t.mixin({computed:{$pagination(){return this.$route.meta.pid&&this.$route.meta.id?this.$getPagination(this.$route.meta.pid,this.$route.meta.id):null}},methods:{$getPagination(t,e){return e=e||t,he.getPagination(t,e,this.$route)}}})}],me=[];class ge{constructor(){this.store=new r.a({data:{state:{}}})}$get(t){return this.store.state[t]}$set(t,e){r.a.set(this.store.state,t,e)}$emit(...t){this.store.$emit(...t)}$on(...t){this.store.$on(...t)}}class ye extends ge{}Object.assign(ye.prototype,{getPageAsyncComponent:Ft.e,getLayoutAsyncComponent:Ft.d,getAsyncComponent:Ft.c,getVueComponent:Ft.f});var be={install(t){const e=new ye;t.$vuepress=e,t.prototype.$vuepress=e}};function _e(t,e){return t.options.routes.filter(t=>t.path.toLowerCase()===e.toLowerCase()).length>0}var we={props:{pageKey:String,slotKey:{type:String,default:"default"}},render(t){const e=this.pageKey||this.$parent.$page.key;return Object(Ft.h)("pageKey",e),r.a.component(e)||r.a.component(e,Object(Ft.e)(e)),r.a.component(e)?t(e):t("")}},xe={functional:!0,props:{slotKey:String,required:!0},render:(t,{props:e,slots:n})=>t("div",{class:[`content__${e.slotKey}`]},n()[e.slotKey])},ke=(n(79),n(3)),Ce=Object(ke.a)({},(function(t,e){var n=e._c;return n("svg",{staticClass:"icon outbound",attrs:{xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",x:"0px",y:"0px",viewBox:"0 0 100 100",width:"15",height:"15"}},[n("path",{attrs:{fill:"currentColor",d:"M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"}}),e._v(" "),n("polygon",{attrs:{fill:"currentColor",points:"45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"}})])}),[],!0,null,null,null).exports,$e={functional:!0,render(t,{parent:e,children:n}){if(e._isMounted)return n;e.$once("hook:mounted",()=>{e.$forceUpdate()})}};r.a.config.productionTip=!1,r.a.use(Dt),r.a.use(be),r.a.mixin(function(t,e,n=r.a){!function(t){t.locales&&Object.keys(t.locales).forEach(e=>{t.locales[e].path=e});Object.freeze(t)}(e),n.$vuepress.$set("siteData",e);const o=new(t(n.$vuepress.$get("siteData"))),i=Object.getOwnPropertyDescriptors(Object.getPrototypeOf(o)),a={};return Object.keys(i).reduce((t,e)=>(e.startsWith("$")&&(t[e]=i[e].get),t),a),{computed:a}}(t=>(class{setPage(t){this.__page=t}get $site(){return t}get $themeConfig(){return this.$site.themeConfig}get $frontmatter(){return this.$page.frontmatter}get $localeConfig(){const{locales:t={}}=this.$site;let e,n;for(const r in t)"/"===r?n=t[r]:0===this.$page.path.indexOf(r)&&(e=t[r]);return e||n||{}}get $siteTitle(){return this.$localeConfig.title||this.$site.title||""}get $title(){const t=this.$page,{metaTitle:e}=this.$page.frontmatter;if("string"==typeof e)return e;const n=this.$siteTitle,r=t.frontmatter.home?null:t.frontmatter.title||t.title;return n?r?r+" | "+n:n:r||"VuePress"}get $description(){const t=function(t){if(t){const e=t.filter(t=>"description"===t.name)[0];if(e)return e.content}}(this.$page.frontmatter.meta);return t||(this.$page.frontmatter.description||this.$localeConfig.description||this.$site.description||"")}get $lang(){return this.$page.frontmatter.lang||this.$localeConfig.lang||"en-US"}get $localePath(){return this.$localeConfig.path||"/"}get $themeLocaleConfig(){return(this.$site.themeConfig.locales||{})[this.$localePath]||{}}get $page(){return this.__page?this.__page:function(t,e){for(let n=0;nn||(t.hash?!r.a.$vuepress.$get("disableScrollBehavior")&&{selector:t.hash}:{x:0,y:0})});!function(t){t.beforeEach((e,n,r)=>{if(_e(t,e.path))r();else if(/(\/|\.html)$/.test(e.path))if(/\/$/.test(e.path)){const n=e.path.replace(/\/$/,"")+".html";_e(t,n)?r(n):r()}else r();else{const n=e.path+"/",o=e.path+".html";_e(t,o)?r(o):_e(t,n)?r(n):r()}})}(n);const o={};try{ve.forEach(e=>{"function"==typeof e&&e({Vue:r.a,options:o,router:n,siteData:ie,isServer:t})})}catch(t){console.error(t)}return{app:new r.a(Object.assign(o,{router:n,render:t=>t("div",{attrs:{id:"app"}},[t("router-view",{ref:"layout"}),t("div",{class:"global-ui"},me.map(e=>t(e)))])})),router:n}}(!1);window.__VUEPRESS__={version:"1.2.0",hash:"9b83250"},Ae.onReady(()=>{Oe.$mount("#app")})}]); \ No newline at end of file + */function o(t){return Object.prototype.toString.call(t).indexOf("Error")>-1}function i(t,e){return e instanceof t||e&&(e.name===t.name||e._name===t._name)}function a(t,e){for(var n in e)t[n]=e[n];return t}var s={name:"RouterView",functional:!0,props:{name:{type:String,default:"default"}},render:function(t,e){var n=e.props,r=e.children,o=e.parent,i=e.data;i.routerView=!0;for(var s=o.$createElement,c=n.name,u=o.$route,l=o._routerViewCache||(o._routerViewCache={}),f=0,p=!1;o&&o._routerRoot!==o;){var d=o.$vnode&&o.$vnode.data;d&&(d.routerView&&f++,d.keepAlive&&o._inactive&&(p=!0)),o=o.$parent}if(i.routerViewDepth=f,p)return s(l[c],i,r);var h=u.matched[f];if(!h)return l[c]=null,s();var v=l[c]=h.components[c];i.registerRouteInstance=function(t,e){var n=h.instances[c];(e&&n!==t||!e&&n===t)&&(h.instances[c]=e)},(i.hook||(i.hook={})).prepatch=function(t,e){h.instances[c]=e.componentInstance},i.hook.init=function(t){t.data.keepAlive&&t.componentInstance&&t.componentInstance!==h.instances[c]&&(h.instances[c]=t.componentInstance)};var m=i.props=function(t,e){switch(typeof e){case"undefined":return;case"object":return e;case"function":return e(t);case"boolean":return e?t.params:void 0;default:0}}(u,h.props&&h.props[c]);if(m){m=i.props=a({},m);var g=i.attrs=i.attrs||{};for(var y in m)v.props&&y in v.props||(g[y]=m[y],delete m[y])}return s(v,i,r)}};var c=/[!'()*]/g,u=function(t){return"%"+t.charCodeAt(0).toString(16)},l=/%2C/g,f=function(t){return encodeURIComponent(t).replace(c,u).replace(l,",")},p=decodeURIComponent;function d(t){var e={};return(t=t.trim().replace(/^(\?|#|&)/,""))?(t.split("&").forEach((function(t){var n=t.replace(/\+/g," ").split("="),r=p(n.shift()),o=n.length>0?p(n.join("=")):null;void 0===e[r]?e[r]=o:Array.isArray(e[r])?e[r].push(o):e[r]=[e[r],o]})),e):e}function h(t){var e=t?Object.keys(t).map((function(e){var n=t[e];if(void 0===n)return"";if(null===n)return f(e);if(Array.isArray(n)){var r=[];return n.forEach((function(t){void 0!==t&&(null===t?r.push(f(e)):r.push(f(e)+"="+f(t)))})),r.join("&")}return f(e)+"="+f(n)})).filter((function(t){return t.length>0})).join("&"):null;return e?"?"+e:""}var v=/\/?$/;function m(t,e,n,r){var o=r&&r.options.stringifyQuery,i=e.query||{};try{i=g(i)}catch(t){}var a={name:e.name||t&&t.name,meta:t&&t.meta||{},path:e.path||"/",hash:e.hash||"",query:i,params:e.params||{},fullPath:_(e,o),matched:t?b(t):[]};return n&&(a.redirectedFrom=_(n,o)),Object.freeze(a)}function g(t){if(Array.isArray(t))return t.map(g);if(t&&"object"==typeof t){var e={};for(var n in t)e[n]=g(t[n]);return e}return t}var y=m(null,{path:"/"});function b(t){for(var e=[];t;)e.unshift(t),t=t.parent;return e}function _(t,e){var n=t.path,r=t.query;void 0===r&&(r={});var o=t.hash;return void 0===o&&(o=""),(n||"/")+(e||h)(r)+o}function w(t,e){return e===y?t===e:!!e&&(t.path&&e.path?t.path.replace(v,"")===e.path.replace(v,"")&&t.hash===e.hash&&x(t.query,e.query):!(!t.name||!e.name)&&(t.name===e.name&&t.hash===e.hash&&x(t.query,e.query)&&x(t.params,e.params)))}function x(t,e){if(void 0===t&&(t={}),void 0===e&&(e={}),!t||!e)return t===e;var n=Object.keys(t),r=Object.keys(e);return n.length===r.length&&n.every((function(n){var r=t[n],o=e[n];return"object"==typeof r&&"object"==typeof o?x(r,o):String(r)===String(o)}))}function k(t,e,n){var r=t.charAt(0);if("/"===r)return t;if("?"===r||"#"===r)return e+t;var o=e.split("/");n&&o[o.length-1]||o.pop();for(var i=t.replace(/^\//,"").split("/"),a=0;a=0&&(e=t.slice(r),t=t.slice(0,r));var o=t.indexOf("?");return o>=0&&(n=t.slice(o+1),t=t.slice(0,o)),{path:t,query:n,hash:e}}(o.path||""),u=e&&e.path||"/",l=c.path?k(c.path,u,n||o.append):u,f=function(t,e,n){void 0===e&&(e={});var r,o=n||d;try{r=o(t||"")}catch(t){r={}}for(var i in e)r[i]=e[i];return r}(c.query,o.query,r&&r.options.parseQuery),p=o.hash||c.hash;return p&&"#"!==p.charAt(0)&&(p="#"+p),{_normalized:!0,path:l,query:f,hash:p}}var q,V=function(){},K={name:"RouterLink",props:{to:{type:[String,Object],required:!0},tag:{type:String,default:"a"},exact:Boolean,append:Boolean,replace:Boolean,activeClass:String,exactActiveClass:String,event:{type:[String,Array],default:"click"}},render:function(t){var e=this,n=this.$router,r=this.$route,o=n.resolve(this.to,r,this.append),i=o.location,s=o.route,c=o.href,u={},l=n.options.linkActiveClass,f=n.options.linkExactActiveClass,p=null==l?"router-link-active":l,d=null==f?"router-link-exact-active":f,h=null==this.activeClass?p:this.activeClass,g=null==this.exactActiveClass?d:this.exactActiveClass,y=s.redirectedFrom?m(null,H(s.redirectedFrom),null,n):s;u[g]=w(r,y),u[h]=this.exact?u[g]:function(t,e){return 0===t.path.replace(v,"/").indexOf(e.path.replace(v,"/"))&&(!e.hash||t.hash===e.hash)&&function(t,e){for(var n in e)if(!(n in t))return!1;return!0}(t.query,e.query)}(r,y);var b=function(t){W(t)&&(e.replace?n.replace(i,V):n.push(i,V))},_={click:W};Array.isArray(this.event)?this.event.forEach((function(t){_[t]=b})):_[this.event]=b;var x={class:u},k=!this.$scopedSlots.$hasNormal&&this.$scopedSlots.default&&this.$scopedSlots.default({href:c,route:s,navigate:b,isActive:u[h],isExactActive:u[g]});if(k){if(1===k.length)return k[0];if(k.length>1||!k.length)return 0===k.length?t():t("span",{},k)}if("a"===this.tag)x.on=_,x.attrs={href:c};else{var C=function t(e){var n;if(e)for(var r=0;r-1&&(s.params[p]=n.params[p]);return s.path=B(l.path,s.params),c(l,s,a)}if(s.path){s.params={};for(var d=0;d=t.length?n():t[o]?e(t[o],(function(){r(o+1)})):r(o+1)};r(0)}function yt(t){return function(e,n,r){var i=!1,a=0,s=null;bt(t,(function(t,e,n,c){if("function"==typeof t&&void 0===t.cid){i=!0,a++;var u,l=xt((function(e){var o;((o=e).__esModule||wt&&"Module"===o[Symbol.toStringTag])&&(e=e.default),t.resolved="function"==typeof e?e:q.extend(e),n.components[c]=e,--a<=0&&r()})),f=xt((function(t){var e="Failed to resolve async component "+c+": "+t;s||(s=o(t)?t:new Error(e),r(s))}));try{u=t(l,f)}catch(t){f(t)}if(u)if("function"==typeof u.then)u.then(l,f);else{var p=u.component;p&&"function"==typeof p.then&&p.then(l,f)}}})),i||r()}}function bt(t,e){return _t(t.map((function(t){return Object.keys(t.components).map((function(n){return e(t.components[n],t.instances[n],t,n)}))})))}function _t(t){return Array.prototype.concat.apply([],t)}var wt="function"==typeof Symbol&&"symbol"==typeof Symbol.toStringTag;function xt(t){var e=!1;return function(){for(var n=[],r=arguments.length;r--;)n[r]=arguments[r];if(!e)return e=!0,t.apply(this,n)}}var kt=function(t){function e(e){t.call(this),this.name=this._name="NavigationDuplicated",this.message='Navigating to current location ("'+e.fullPath+'") is not allowed',Object.defineProperty(this,"stack",{value:(new t).stack,writable:!0,configurable:!0})}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(Error);kt._name="NavigationDuplicated";var Ct=function(t,e){this.router=t,this.base=function(t){if(!t)if(G){var e=document.querySelector("base");t=(t=e&&e.getAttribute("href")||"/").replace(/^https?:\/\/[^\/]+/,"")}else t="/";"/"!==t.charAt(0)&&(t="/"+t);return t.replace(/\/$/,"")}(e),this.current=y,this.pending=null,this.ready=!1,this.readyCbs=[],this.readyErrorCbs=[],this.errorCbs=[]};function $t(t,e,n,r){var o=bt(t,(function(t,r,o,i){var a=function(t,e){"function"!=typeof t&&(t=q.extend(t));return t.options[e]}(t,e);if(a)return Array.isArray(a)?a.map((function(t){return n(t,r,o,i)})):n(a,r,o,i)}));return _t(r?o.reverse():o)}function Ot(t,e){if(e)return function(){return t.apply(e,arguments)}}Ct.prototype.listen=function(t){this.cb=t},Ct.prototype.onReady=function(t,e){this.ready?t():(this.readyCbs.push(t),e&&this.readyErrorCbs.push(e))},Ct.prototype.onError=function(t){this.errorCbs.push(t)},Ct.prototype.transitionTo=function(t,e,n){var r=this,o=this.router.match(t,this.current);this.confirmTransition(o,(function(){r.updateRoute(o),e&&e(o),r.ensureURL(),r.ready||(r.ready=!0,r.readyCbs.forEach((function(t){t(o)})))}),(function(t){n&&n(t),t&&!r.ready&&(r.ready=!0,r.readyErrorCbs.forEach((function(e){e(t)})))}))},Ct.prototype.confirmTransition=function(t,e,n){var r=this,a=this.current,s=function(t){!i(kt,t)&&o(t)&&(r.errorCbs.length?r.errorCbs.forEach((function(e){e(t)})):console.error(t)),n&&n(t)};if(w(t,a)&&t.matched.length===a.matched.length)return this.ensureURL(),s(new kt(t));var c=function(t,e){var n,r=Math.max(t.length,e.length);for(n=0;n-1?decodeURI(t.slice(0,r))+t.slice(r):decodeURI(t)}else n>-1&&(t=decodeURI(t.slice(0,n))+t.slice(n));return t}function It(t){var e=window.location.href,n=e.indexOf("#");return(n>=0?e.slice(0,n):e)+"#"+t}function Tt(t){ht?vt(It(t)):window.location.hash=t}function Lt(t){ht?mt(It(t)):window.location.replace(It(t))}var Mt=function(t){function e(e,n){t.call(this,e,n),this.stack=[],this.index=-1}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.push=function(t,e,n){var r=this;this.transitionTo(t,(function(t){r.stack=r.stack.slice(0,r.index+1).concat(t),r.index++,e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var r=this;this.transitionTo(t,(function(t){r.stack=r.stack.slice(0,r.index).concat(t),e&&e(t)}),n)},e.prototype.go=function(t){var e=this,n=this.index+t;if(!(n<0||n>=this.stack.length)){var r=this.stack[n];this.confirmTransition(r,(function(){e.index=n,e.updateRoute(r)}),(function(t){i(kt,t)&&(e.index=n)}))}},e.prototype.getCurrentLocation=function(){var t=this.stack[this.stack.length-1];return t?t.fullPath:"/"},e.prototype.ensureURL=function(){},e}(Ct),Rt=function(t){void 0===t&&(t={}),this.app=null,this.apps=[],this.options=t,this.beforeHooks=[],this.resolveHooks=[],this.afterHooks=[],this.matcher=Z(t.routes||[],this);var e=t.mode||"hash";switch(this.fallback="history"===e&&!ht&&!1!==t.fallback,this.fallback&&(e="hash"),G||(e="abstract"),this.mode=e,e){case"history":this.history=new At(this,t.base);break;case"hash":this.history=new St(this,t.base,this.fallback);break;case"abstract":this.history=new Mt(this,t.base);break;default:0}},zt={currentRoute:{configurable:!0}};function Nt(t,e){return t.push(e),function(){var n=t.indexOf(e);n>-1&&t.splice(n,1)}}Rt.prototype.match=function(t,e,n){return this.matcher.match(t,e,n)},zt.currentRoute.get=function(){return this.history&&this.history.current},Rt.prototype.init=function(t){var e=this;if(this.apps.push(t),t.$once("hook:destroyed",(function(){var n=e.apps.indexOf(t);n>-1&&e.apps.splice(n,1),e.app===t&&(e.app=e.apps[0]||null)})),!this.app){this.app=t;var n=this.history;if(n instanceof At)n.transitionTo(n.getCurrentLocation());else if(n instanceof St){var r=function(){n.setupListeners()};n.transitionTo(n.getCurrentLocation(),r,r)}n.listen((function(t){e.apps.forEach((function(e){e._route=t}))}))}},Rt.prototype.beforeEach=function(t){return Nt(this.beforeHooks,t)},Rt.prototype.beforeResolve=function(t){return Nt(this.resolveHooks,t)},Rt.prototype.afterEach=function(t){return Nt(this.afterHooks,t)},Rt.prototype.onReady=function(t,e){this.history.onReady(t,e)},Rt.prototype.onError=function(t){this.history.onError(t)},Rt.prototype.push=function(t,e,n){var r=this;if(!e&&!n&&"undefined"!=typeof Promise)return new Promise((function(e,n){r.history.push(t,e,n)}));this.history.push(t,e,n)},Rt.prototype.replace=function(t,e,n){var r=this;if(!e&&!n&&"undefined"!=typeof Promise)return new Promise((function(e,n){r.history.replace(t,e,n)}));this.history.replace(t,e,n)},Rt.prototype.go=function(t){this.history.go(t)},Rt.prototype.back=function(){this.go(-1)},Rt.prototype.forward=function(){this.go(1)},Rt.prototype.getMatchedComponents=function(t){var e=t?t.matched?t:this.resolve(t).route:this.currentRoute;return e?[].concat.apply([],e.matched.map((function(t){return Object.keys(t.components).map((function(e){return t.components[e]}))}))):[]},Rt.prototype.resolve=function(t,e,n){var r=H(t,e=e||this.history.current,n,this),o=this.match(r,e),i=o.redirectedFrom||o.fullPath;return{location:r,route:o,href:function(t,e,n){var r="hash"===n?"#"+e:e;return t?C(t+"/"+r):r}(this.history.base,i,this.mode),normalizedTo:r,resolved:o}},Rt.prototype.addRoutes=function(t){this.matcher.addRoutes(t),this.history.current!==y&&this.history.transitionTo(this.history.getCurrentLocation())},Object.defineProperties(Rt.prototype,zt),Rt.install=function t(e){if(!t.installed||q!==e){t.installed=!0,q=e;var n=function(t){return void 0!==t},r=function(t,e){var r=t.$options._parentVnode;n(r)&&n(r=r.data)&&n(r=r.registerRouteInstance)&&r(t,e)};e.mixin({beforeCreate:function(){n(this.$options.router)?(this._routerRoot=this,this._router=this.$options.router,this._router.init(this),e.util.defineReactive(this,"_route",this._router.history.current)):this._routerRoot=this.$parent&&this.$parent._routerRoot||this,r(this,this)},destroyed:function(){r(this)}}),Object.defineProperty(e.prototype,"$router",{get:function(){return this._routerRoot._router}}),Object.defineProperty(e.prototype,"$route",{get:function(){return this._routerRoot._route}}),e.component("RouterView",s),e.component("RouterLink",K);var o=e.config.optionMergeStrategies;o.beforeRouteEnter=o.beforeRouteLeave=o.beforeRouteUpdate=o.created}},Rt.version="3.1.3",G&&window.Vue&&window.Vue.use(Rt);var Dt=Rt;var Ft=n(2),Ut={created(){this.$ssrContext&&(this.$ssrContext.title=this.$title,this.$ssrContext.lang=this.$lang,this.$ssrContext.description=this.$page.description||this.$description)},mounted(){this.currentMetaTags=new Set,this.updateMeta()},methods:{updateMeta(){document.title=this.$title,document.documentElement.lang=this.$lang;const t=this.$page.frontmatter.meta||[],e=t.slice(0);0===t.filter(t=>"description"===t.name).length&&e.push({name:"description",content:this.$description});const n=document.querySelectorAll('meta[name="description"]');n.length&&n.forEach(t=>this.currentMetaTags.add(t)),this.currentMetaTags=new Set(Bt(e,this.currentMetaTags))}},watch:{$page(){this.updateMeta()}},beforeDestroy(){Bt(null,this.currentMetaTags)}};function Bt(t,e){if(e&&[...e].forEach(t=>{document.head.removeChild(t)}),t)return t.map(t=>{const e=document.createElement("meta");return Object.keys(t).forEach(n=>{e.setAttribute(n,t[n])}),document.head.appendChild(e),e})}var Ht=n(17),qt=n.n(Ht),Vt={mounted(){qt.a.configure({showSpinner:!1}),this.$router.beforeEach((t,e,n)=>{t.path===e.path||r.a.component(t.name)||qt.a.start(),n()}),this.$router.afterEach(()=>{qt.a.done(),this.isSidebarOpen=!1})}},Kt=(n(54),Object.assign||function(t){for(var e,n=1;nx.scrollOffset&&h(150)}},_=function(t){-1({zoom:null}),mounted(){this.updateZoom()},updated(){this.updateZoom()},methods:{updateZoom(){setTimeout(()=>{this.zoom&&this.zoom.detach(),this.zoom=ee(".content img")},1e3)}}}],re=n(5);Object(Ft.g)(re.default,"mixins",ne);const oe=[{name:"v-e45776e2",path:"/posts/2019/08/08/floating-dock/",component:re.default,beforeEnter:(t,e,n)=>{Object(Ft.a)("Post","v-e45776e2").then(n)}},{path:"/posts/2019/08/08/floating-dock/index.html",redirect:"/posts/2019/08/08/floating-dock/"},{path:"/_posts/2019-08-08-floating_dock.html",redirect:"/posts/2019/08/08/floating-dock/"},{name:"v-5d95c0e8",path:"/",component:re.default,beforeEnter:(t,e,n)=>{Object(Ft.a)("Layout","v-5d95c0e8").then(n)}},{path:"/index.html",redirect:"/"},{name:"v-e125a70a",path:"/posts/2019/01/02/garden/",component:re.default,beforeEnter:(t,e,n)=>{Object(Ft.a)("Post","v-e125a70a").then(n)}},{path:"/posts/2019/01/02/garden/index.html",redirect:"/posts/2019/01/02/garden/"},{path:"/_posts/2019-01-02-garden.html",redirect:"/posts/2019/01/02/garden/"},{name:"v-120b5010",path:"/about/",component:re.default,beforeEnter:(t,e,n)=>{Object(Ft.a)("Layout","v-120b5010").then(n)}},{path:"/about/index.html",redirect:"/about/"},{name:"v-c1b5585a",path:"/about/policy.html",component:re.default,beforeEnter:(t,e,n)=>{Object(Ft.a)("Layout","v-c1b5585a").then(n)}},{name:"v-1f814451",path:"/posts/",component:re.default,beforeEnter:(t,e,n)=>{Object(Ft.a)("Layout","v-1f814451").then(n)},meta:{pid:"post",id:"post"}},{path:"/posts/index.html",redirect:"/posts/"},{name:"v-43468301",path:"/tags/",component:re.default,beforeEnter:(t,e,n)=>{Object(Ft.a)("FrontmatterKey","v-43468301").then(n)},meta:{pid:"tag",id:"tag"}},{path:"/tags/index.html",redirect:"/tags/"},{name:"v-0fb72a7a",path:"/tags/kayak/",component:re.default,beforeEnter:(t,e,n)=>{Object(Ft.a)("FrontmatterPagination","v-0fb72a7a").then(n)},meta:{pid:"tag",id:"kayak"}},{path:"/tags/kayak/index.html",redirect:"/tags/kayak/"},{name:"v-186cc960",path:"/tags/house/",component:re.default,beforeEnter:(t,e,n)=>{Object(Ft.a)("FrontmatterPagination","v-186cc960").then(n)},meta:{pid:"tag",id:"house"}},{path:"/tags/house/index.html",redirect:"/tags/house/"},{path:"*",component:re.default}],ie={title:"zndr.dk",description:'Personal server for Jannik Zander. The concept is to use my own server instead of "others" server. Whenever possible I will install and maintain the service myself.',base:"/",pages:[{title:"Floating dock",frontmatter:{tags:["kayak","house"],title:"Floating dock",author:"JZ",location:"Tange",date:"2019-08-08",layout:"Post",permalink:"/posts/:year/:month/:day/:slug"},regularPath:"/_posts/2019-08-08-floating_dock.html",relativePath:"_posts/2019-08-08-floating_dock.md",key:"v-e45776e2",path:"/posts/2019/08/08/floating-dock/",summary:"\n\nHere is a nice floating dock I built for children to play, and for me and my kayak.\n\nFloating Dock ...",id:"post",pid:"post"},{title:"Home",frontmatter:{title:"Home"},regularPath:"/",relativePath:"README.md",key:"v-5d95c0e8",path:"/",headers:[{level:3,title:"Linux server",slug:"linux-server"},{level:3,title:"Tower cabinet",slug:"tower-cabinet"},{level:3,title:"Fixed IP address, domain name and DNS",slug:"fixed-ip-address-domain-name-and-dns"},{level:3,title:"Back up of data",slug:"back-up-of-data"},{level:3,title:"Hard drive docking station",slug:"hard-drive-docking-station"},{level:3,title:"Make your own ethernet cables",slug:"make-your-own-ethernet-cables"}],summary:"\n\n{{ $description }}\n\nLinks\n\nCloud\nMail\nPlay\nGit\nDatabases\n[User ..."},{title:"Small forrest in front of house",frontmatter:{tag:"house",title:"Small forrest in front of house",author:"JZ",location:"Tange",date:"2019-01-02",layout:"Post",permalink:"/posts/:year/:month/:day/:slug"},regularPath:"/_posts/2019-01-02-garden.html",relativePath:"_posts/2019-01-02-garden.md",key:"v-e125a70a",path:"/posts/2019/01/02/garden/",summary:"\n\nI have been spending weeks cutting down the small forrest in front of our house. So now we have something that resembles a garden.\n\nGarden after\n\nBefore it looked ...",id:"post",pid:"post"},{title:"About",frontmatter:{title:"About"},regularPath:"/about/",relativePath:"about/README.md",key:"v-120b5010",path:"/about/",summary:"\n\nHello!\n\nI am Jannik. After living seven years in Sweden and eight years in Japan, I now live in the small village Tange, in my home country of Denmark. I currently work as Software Architect in the ..."},{title:"Privacy policy",frontmatter:{title:"Privacy policy"},regularPath:"/about/policy.html",relativePath:"about/policy.md",key:"v-c1b5585a",path:"/about/policy.html",headers:[{level:2,title:"Automatic collection of information",slug:"automatic-collection-of-information"},{level:2,title:"Collection of personal information",slug:"collection-of-personal-information"},{level:2,title:"Managing personal information",slug:"managing-personal-information"},{level:2,title:"Use and processing of collected information",slug:"use-and-processing-of-collected-information"},{level:2,title:"Information transfer and storage",slug:"information-transfer-and-storage"},{level:2,title:"The rights of users",slug:"the-rights-of-users"},{level:2,title:"The right to object to processing",slug:"the-right-to-object-to-processing"},{level:2,title:"How to exercise these rights",slug:"how-to-exercise-these-rights"},{level:2,title:"Privacy of children",slug:"privacy-of-children"},{level:2,title:"Do Not Track signals",slug:"do-not-track-signals"},{level:2,title:"Links to other websites",slug:"links-to-other-websites"},{level:2,title:"Information security",slug:"information-security"},{level:2,title:"Data breach",slug:"data-breach"},{level:2,title:"Changes and amendments",slug:"changes-and-amendments"},{level:2,title:"Acceptance of this policy",slug:"acceptance-of-this-policy"},{level:2,title:"Contacting us",slug:"contacting-us"}],summary:'\n\nThis privacy policy ("Policy") describes how Website Operator ("Website Operator", "we", "us" or "our") collects, protects and uses the personally identifiable information ("Personal Information") y ...'},{frontmatter:{layout:"Layout",title:"Post"},regularPath:"/posts/",key:"v-1f814451",path:"/posts/"},{frontmatter:{layout:"FrontmatterKey",title:"Tag"},regularPath:"/tags/",key:"v-43468301",path:"/tags/"},{frontmatter:{layout:"FrontmatterPagination",title:"kayak tag"},regularPath:"/tags/kayak/",key:"v-0fb72a7a",path:"/tags/kayak/"},{frontmatter:{layout:"FrontmatterPagination",title:"house tag"},regularPath:"/tags/house/",key:"v-186cc960",path:"/tags/house/"}],themeConfig:{nav:[{text:"Blog",link:"/posts/"},{text:"Tags",link:"/tags/"},{text:"About",link:"/about/"}],footer:{contact:[{type:"mail",link:"mailto:webmaster@zndr.dk"}],copyright:[{text:"Privacy policy",link:"/about/policy.html"}]},logo:"logo.png",lastUpdate:"Last Updated",summary:!0,summaryLength:200,pwa:!1}};n(75);r.a.component("BaseListLayout",()=>Promise.all([n.e(0),n.e(1),n.e(6)]).then(n.bind(null,267))),r.a.component("BlogTag",()=>Promise.all([n.e(0),n.e(7)]).then(n.bind(null,266))),r.a.component("BlogTags",()=>Promise.all([n.e(0),n.e(8)]).then(n.bind(null,270))),r.a.component("NavLink",()=>Promise.all([n.e(0),n.e(4)]).then(n.bind(null,269)));n(76);var ae={tag:{kayak:{key:"kayak",scope:"tag",path:"/tags/kayak/",pageKeys:["v-e45776e2"]},house:{key:"house",scope:"tag",path:"/tags/house/",pageKeys:["v-e45776e2","v-e125a70a"]}}};class se{constructor(t,e){this._metaMap=Object.assign({},t),Object.keys(this._metaMap).forEach(t=>{const{pageKeys:n}=this._metaMap[t];this._metaMap[t].pages=n.map(t=>Object(Ft.b)(e,t))})}get length(){return Object.keys(this._metaMap).length}get map(){return this._metaMap}get pages(){return this.list}get list(){return this.toArray()}toArray(){const t=[];return Object.keys(this._metaMap).forEach(e=>{const{pages:n,path:r}=this._metaMap[e];t.push({name:e,pages:n,path:r})}),t}getItemByName(t){return this._metaMap[t]}}var ce={post:(t,e)=>{return new Date(t.frontmatter.date).getTime()-new Date(e.frontmatter.date).getTime()>0?-1:1},tag:(t,e)=>{return new Date(t.frontmatter.date).getTime()-new Date(e.frontmatter.date).getTime()>0?-1:1}},ue={post:function(t,e,n){return t.pid===n&&t.id===e},tag:function(t,e,n){const r=e;return["tag","tags"].some(e=>{const n=t.frontmatter[e];return Array.isArray(n)?n.some(t=>t===r):n===r})}},le=[{pid:"post",id:"post",filter:ue.post,sorter:ce.post,pages:[{path:"/posts/",interval:[0,2]}]},{pid:"tag",id:"kayak",filter:ue.tag,sorter:ce.tag,pages:[{path:"/tags/kayak/",interval:[0,1]}]},{pid:"tag",id:"house",filter:ue.tag,sorter:ce.tag,pages:[{path:"/tags/house/",interval:[0,2]}]}],fe=n(36);const pe=n.n(fe)()("plugin-blog:pagination");class de{constructor(t,e,n){pe(t);const{pages:r}=t,{path:o}=n;for(let t=0,e=r.length;tt.filter(e,t.id,t.pid)).sort(t.sorter)}setIndexPage(t){this._indexPage=t}get length(){return this._paginationPages.length}get pages(){const[t,e]=this._currentPage.interval;return this._matchedPages.slice(t,e+1)}get hasPrev(){return 0!==this.paginationIndex}get prevLink(){return this.hasPrev?this.paginationIndex-1==0&&this._indexPage?this._indexPage:this._paginationPages[this.paginationIndex-1].path:null}get hasNext(){return this.paginationIndex!==this.length-1}get nextLink(){return this.hasNext?this._paginationPages[this.paginationIndex+1].path:null}getSpecificPageLink(t){return this._paginationPages[t].path}}const he=new class{constructor(t){this.paginations=t}get pages(){return r.a.$vuepress.$get("siteData").pages}getPagination(t,e,n){pe("id",e),pe("this.paginations",this.paginations);const r=this.paginations.filter(n=>n.id===e&&n.pid===t)[0];return new de(r,this.pages,n)}}(le);var ve=[{},({Vue:t})=>{t.mixin({computed:{$dataBlock(){return this.$options.__data__block__}}})},{},{},({Vue:t})=>{const e=Object.keys(ae).map(t=>{const e=ae[t],n=`$${t}`;return{[n](){const{pages:t}=this.$site;return new se(e,t)},[`$current${t.charAt(0).toUpperCase()+t.slice(1)}`](){const t=this.$route.meta.id;return this[n].getItemByName(t)}}}).reduce((t,e)=>(Object.assign(t,e),t),{});e.$frontmatterKey=function(){const t=this[`$${this.$route.meta.id}`];return t||null},t.mixin({computed:e})},({Vue:t})=>{t.mixin({computed:{$pagination(){return this.$route.meta.pid&&this.$route.meta.id?this.$getPagination(this.$route.meta.pid,this.$route.meta.id):null}},methods:{$getPagination(t,e){return e=e||t,he.getPagination(t,e,this.$route)}}})}],me=[];class ge{constructor(){this.store=new r.a({data:{state:{}}})}$get(t){return this.store.state[t]}$set(t,e){r.a.set(this.store.state,t,e)}$emit(...t){this.store.$emit(...t)}$on(...t){this.store.$on(...t)}}class ye extends ge{}Object.assign(ye.prototype,{getPageAsyncComponent:Ft.e,getLayoutAsyncComponent:Ft.d,getAsyncComponent:Ft.c,getVueComponent:Ft.f});var be={install(t){const e=new ye;t.$vuepress=e,t.prototype.$vuepress=e}};function _e(t,e){return t.options.routes.filter(t=>t.path.toLowerCase()===e.toLowerCase()).length>0}var we={props:{pageKey:String,slotKey:{type:String,default:"default"}},render(t){const e=this.pageKey||this.$parent.$page.key;return Object(Ft.h)("pageKey",e),r.a.component(e)||r.a.component(e,Object(Ft.e)(e)),r.a.component(e)?t(e):t("")}},xe={functional:!0,props:{slotKey:String,required:!0},render:(t,{props:e,slots:n})=>t("div",{class:[`content__${e.slotKey}`]},n()[e.slotKey])},ke=(n(79),n(3)),Ce=Object(ke.a)({},(function(t,e){var n=e._c;return n("svg",{staticClass:"icon outbound",attrs:{xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",x:"0px",y:"0px",viewBox:"0 0 100 100",width:"15",height:"15"}},[n("path",{attrs:{fill:"currentColor",d:"M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"}}),e._v(" "),n("polygon",{attrs:{fill:"currentColor",points:"45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"}})])}),[],!0,null,null,null).exports,$e={functional:!0,render(t,{parent:e,children:n}){if(e._isMounted)return n;e.$once("hook:mounted",()=>{e.$forceUpdate()})}};r.a.config.productionTip=!1,r.a.use(Dt),r.a.use(be),r.a.mixin(function(t,e,n=r.a){!function(t){t.locales&&Object.keys(t.locales).forEach(e=>{t.locales[e].path=e});Object.freeze(t)}(e),n.$vuepress.$set("siteData",e);const o=new(t(n.$vuepress.$get("siteData"))),i=Object.getOwnPropertyDescriptors(Object.getPrototypeOf(o)),a={};return Object.keys(i).reduce((t,e)=>(e.startsWith("$")&&(t[e]=i[e].get),t),a),{computed:a}}(t=>(class{setPage(t){this.__page=t}get $site(){return t}get $themeConfig(){return this.$site.themeConfig}get $frontmatter(){return this.$page.frontmatter}get $localeConfig(){const{locales:t={}}=this.$site;let e,n;for(const r in t)"/"===r?n=t[r]:0===this.$page.path.indexOf(r)&&(e=t[r]);return e||n||{}}get $siteTitle(){return this.$localeConfig.title||this.$site.title||""}get $title(){const t=this.$page,{metaTitle:e}=this.$page.frontmatter;if("string"==typeof e)return e;const n=this.$siteTitle,r=t.frontmatter.home?null:t.frontmatter.title||t.title;return n?r?r+" | "+n:n:r||"VuePress"}get $description(){const t=function(t){if(t){const e=t.filter(t=>"description"===t.name)[0];if(e)return e.content}}(this.$page.frontmatter.meta);return t||(this.$page.frontmatter.description||this.$localeConfig.description||this.$site.description||"")}get $lang(){return this.$page.frontmatter.lang||this.$localeConfig.lang||"en-US"}get $localePath(){return this.$localeConfig.path||"/"}get $themeLocaleConfig(){return(this.$site.themeConfig.locales||{})[this.$localePath]||{}}get $page(){return this.__page?this.__page:function(t,e){for(let n=0;nn||(t.hash?!r.a.$vuepress.$get("disableScrollBehavior")&&{selector:t.hash}:{x:0,y:0})});!function(t){t.beforeEach((e,n,r)=>{if(_e(t,e.path))r();else if(/(\/|\.html)$/.test(e.path))if(/\/$/.test(e.path)){const n=e.path.replace(/\/$/,"")+".html";_e(t,n)?r(n):r()}else r();else{const n=e.path+"/",o=e.path+".html";_e(t,o)?r(o):_e(t,n)?r(n):r()}})}(n);const o={};try{ve.forEach(e=>{"function"==typeof e&&e({Vue:r.a,options:o,router:n,siteData:ie,isServer:t})})}catch(t){console.error(t)}return{app:new r.a(Object.assign(o,{router:n,render:t=>t("div",{attrs:{id:"app"}},[t("router-view",{ref:"layout"}),t("div",{class:"global-ui"},me.map(e=>t(e)))])})),router:n}}(!1);window.__VUEPRESS__={version:"1.2.0",hash:"8740803"},Ae.onReady(()=>{Oe.$mount("#app")})}]); \ No newline at end of file diff --git a/index.html b/index.html index 80c67fa..4910d32 100644 --- a/index.html +++ b/index.html @@ -7,7 +7,7 @@ - + @@ -16,6 +16,6 @@

# Home

Personal server for Jannik Zander. The concept is to use my own server instead of "others" server. Whenever possible I will install and maintain the service myself.

# Advantages

  • Smart home: connect everything to your server.
  • Most personal data is private so what is more natural than storing it at home?
  • Infinite storage: just add another hard drive.
  • Go through good learning experiences.

# Disadvantages

  • Needs some maintenance- and installation time.
  • Whenever my server is down I cannot receive emails (or anything else).

# Linux server

I am using a Linux distribution with a rolling release. Continues updates keeps the installation up-to-date and I avoid having to upgrade to next 'stable' release every 2 years. Upgrading to next 'stable' release means days of work with reinstallations and broken configurations. And 2 years later I have forgotten how I configured it last time. With a rolling release I install once and update regularly. I hardly had any issues with these frequent updates. It keeps the server fresh and secure. Short downtimes are not a serious matter for my home server.

# Tower cabinet

I own Soldam Alcadia ZR300 Black Knight Casing bought in Japan. It can fit an extended-ATX motherboard and plenty of hard drives. I do not need any tools to open it. The crews can be removed by hand.

High-tower

Of course a cabinet alone does not make a server. But I will not go into details with the content of the cabinet. It is pretty standard components of older type. The server gets upgraded with recycled components from other desktop computers in my house.

# Fixed IP address, domain name and DNS

In order to setup a personal mail server a fixed IP address and domain name is needed. I got a fiber connection to my house from the local ISP Eniig fiber. It was installed soon after I moved into my house. A fitting domain name was found at dk-hostmaster and ordered.

I decided to store my DNS settings at Cloudflare. In order to get a secure connection to my server I had to setup many DNS records

  • A record for zndr.dk (@zndr.dk)
  • CNAME wildcard record for subdomains (*.zndr.dk)
  • A record for mail.zndr.dk
  • MX record mail.zndr.dk
  • CAA record for LetsEncrypt
  • TXT records for DMARC1, DKIM1 and SPF1
  • DS record for DNSSEC

I had to call the ISP and ask them to setup a reverse DNS record for my mail server (mail.zndr.dk) which they did. At dk-hostmaster I could login myself to store Key and activate DNSSEC.

# Back up of data

TBD

# Hard drive docking station

It is handy to have a hard drive docking station. I also acts as an external drive. Always have some spare drives around.

# Make your own ethernet cables

TBD

- + diff --git a/posts/2019/01/02/garden/index.html b/posts/2019/01/02/garden/index.html index 0d203d5..0cb7879 100644 --- a/posts/2019/01/02/garden/index.html +++ b/posts/2019/01/02/garden/index.html @@ -7,7 +7,7 @@ - + @@ -16,6 +16,6 @@

# Small forrest in front of house

I have been spending weeks cutting down the small forrest in front of our house. So now we have something that resembles a garden.

Garden after

Before it looked like this

Garden before


- + diff --git a/posts/2019/08/08/floating-dock/index.html b/posts/2019/08/08/floating-dock/index.html index 4b0ef40..84e5711 100644 --- a/posts/2019/08/08/floating-dock/index.html +++ b/posts/2019/08/08/floating-dock/index.html @@ -7,7 +7,7 @@ - + @@ -16,6 +16,6 @@

# Floating dock

Here is a nice floating dock I built for children to play, and for me and my kayak.

Floating Dock


- + diff --git a/posts/index.html b/posts/index.html index 6644b24..1e058d0 100644 --- a/posts/index.html +++ b/posts/index.html @@ -7,7 +7,7 @@ - + @@ -30,6 +30,6 @@ Before it looked ...
- + diff --git a/sitemap.xml b/sitemap.xml index 652f6b5..bf678ed 100644 --- a/sitemap.xml +++ b/sitemap.xml @@ -1 +1 @@ -https://zndr.dk/dailyhttps://zndr.dk/posts/2019/01/02/garden/dailyhttps://zndr.dk/about/dailyhttps://zndr.dk/posts/2019/08/08/floating-dock/dailyhttps://zndr.dk/about/policy.htmldailyhttps://zndr.dk/posts/dailyhttps://zndr.dk/tags/dailyhttps://zndr.dk/tags/house/dailyhttps://zndr.dk/tags/kayak/dailyhttps://zndr.dk/404.htmldaily \ No newline at end of file +https://zndr.dk/posts/2019/08/08/floating-dock/dailyhttps://zndr.dk/dailyhttps://zndr.dk/posts/2019/01/02/garden/dailyhttps://zndr.dk/about/dailyhttps://zndr.dk/about/policy.htmldailyhttps://zndr.dk/posts/dailyhttps://zndr.dk/tags/dailyhttps://zndr.dk/tags/kayak/dailyhttps://zndr.dk/tags/house/dailyhttps://zndr.dk/404.htmldaily \ No newline at end of file diff --git a/tags/house/index.html b/tags/house/index.html index b0a0179..3f70598 100644 --- a/tags/house/index.html +++ b/tags/house/index.html @@ -7,7 +7,7 @@ - + @@ -30,6 +30,6 @@ Before it looked ...
- + diff --git a/tags/index.html b/tags/index.html index 01670b4..34f37c7 100644 --- a/tags/index.html +++ b/tags/index.html @@ -7,19 +7,19 @@ - + - + diff --git a/tags/kayak/index.html b/tags/kayak/index.html index 649633d..eaa2153 100644 --- a/tags/kayak/index.html +++ b/tags/kayak/index.html @@ -7,7 +7,7 @@ - + @@ -22,6 +22,6 @@ Floating Dock ...
- + -- 2.43.0