@input-output-hk/front-end-site-components
Version:
Opinionated React components for IOHK's front-end web team
251 lines (199 loc) • 26.4 kB
JavaScript
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = void 0;
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
var _react = _interopRequireDefault(require("react"));
var _propTypes = _interopRequireDefault(require("prop-types"));
var _styledComponents = _interopRequireDefault(require("styled-components"));
var _fa = require("react-icons/fa");
var _di = require("react-icons/di");
var _Link = _interopRequireDefault(require("@input-output-hk/front-end-core-components/components/Link"));
var _cardanoOrg = _interopRequireDefault(require("../resources/footer/cardano-org"));
function _templateObject10() {
var data = (0, _taggedTemplateLiteral2["default"])(["\nmargin:2rem 0 0;\n li {\n display:inline-block;\n margin:0 2rem 0 0;\n }\n"]);
_templateObject10 = function _templateObject10() {
return data;
};
return data;
}
function _templateObject9() {
var data = (0, _taggedTemplateLiteral2["default"])(["\n flex-direction: column;\n justify-content: center;\n padding-right: 1rem;\n .github {\n display:inline-block;\n margin:-.8rem 0 0 -.5rem;\n line-height:1;\n }\n"]);
_templateObject9 = function _templateObject9() {
return data;
};
return data;
}
function _templateObject8() {
var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n margin:1.4rem 0;\n"]);
_templateObject8 = function _templateObject8() {
return data;
};
return data;
}
function _templateObject7() {
var data = (0, _taggedTemplateLiteral2["default"])(["\n display:inline-block;\n width:33%;\n"]);
_templateObject7 = function _templateObject7() {
return data;
};
return data;
}
function _templateObject6() {
var data = (0, _taggedTemplateLiteral2["default"])(["\n display:inline-block;\n width:60%;\n @media (max-width:1080px) {\n width:50%;\n }\n @media (max-width:860px) {\n width:41%;\n }\n @media (max-width:800px) {\n width:100%;\n }\n"]);
_templateObject6 = function _templateObject6() {
return data;
};
return data;
}
function _templateObject5() {
var data = (0, _taggedTemplateLiteral2["default"])(["\n display:inline-block;\n width:30%;\n @media (max-width:1080px) {\n width:40%;\n }\n @media (max-width:860px) {\n width:50%;\n }\n @media (max-width:800px) {\n width:100%;\n }\n ul {\n margin:1rem 0;\n li {\n h4 {\n margin:.5rem 0;\n }\n }\n }\n"]);
_templateObject5 = function _templateObject5() {
return data;
};
return data;
}
function _templateObject4() {
var data = (0, _taggedTemplateLiteral2["default"])(["\n display:inline-block;\n width:8.33%;\n @media (max-width:800px) {\n text-align:center;\n width:100%;\n }\n"]);
_templateObject4 = function _templateObject4() {
return data;
};
return data;
}
function _templateObject3() {
var data = (0, _taggedTemplateLiteral2["default"])(["\n padding:1rem 0 2rem 0;\n div {\n vertical-align:top;\n p {\n margin:0;\n }\n ul {\n list-style-type:none;\n padding:0;\n margin:.8rem 0;\n line-height:2;\n }\n }\n"]);
_templateObject3 = function _templateObject3() {
return data;
};
return data;
}
function _templateObject2() {
var data = (0, _taggedTemplateLiteral2["default"])(["\n margin: 3rem 0;\n font-size:1.6rem;\n a {\n color:#667FF4;\n }\n"]);
_templateObject2 = function _templateObject2() {
return data;
};
return data;
}
function _templateObject() {
var data = (0, _taggedTemplateLiteral2["default"])(["\n display:inline-block;\n background:#667FF4;\n color:#f1f2f2;\n width:3rem;\n height:3rem;\n border-radius:5rem;\n text-align:center;\n line-height:2.2;\n margin:0 .2rem 0 0;\n"]);
_templateObject = function _templateObject() {
return data;
};
return data;
}
var Circle = _styledComponents["default"].span(_templateObject());
var Container = _styledComponents["default"].div(_templateObject2());
var Columns = _styledComponents["default"].div(_templateObject3());
var LogoColumn = _styledComponents["default"].div(_templateObject4());
var MainColumn = _styledComponents["default"].div(_templateObject5());
var LinksColumn = _styledComponents["default"].div(_templateObject6());
var Links = _styledComponents["default"].div(_templateObject7());
var SocialLinks = _styledComponents["default"].div(_templateObject8());
var SocialLink = _styledComponents["default"].div(_templateObject9());
var BottomLinks = _styledComponents["default"].ul(_templateObject10());
var CardanoOrg = function CardanoOrg(_ref) {
var lang = _ref.lang,
theme = _ref.theme;
var content = _cardanoOrg["default"][lang];
if (!content) throw new Error("No content for Cardano footer in language \"".concat(lang, "\""));
var logoURL = 'https://ucarecdn.com/17a33054-2c9b-4e8a-b072-48a87a7f917c/cardanowhite.png';
if (theme === 'dark') logoURL = 'https://ucarecdn.com/1958a2aa-cf35-4aa3-a4b6-ed34b726c3de/cardano.png';
return _react["default"].createElement(Container, null, _react["default"].createElement(Columns, null, _react["default"].createElement(LogoColumn, null, _react["default"].createElement("img", {
src: logoURL,
alt: "Cardano",
width: "70"
})), _react["default"].createElement(MainColumn, null, _react["default"].createElement("p", null, _react["default"].createElement("strong", null, content.browseLinks.title)), _react["default"].createElement("ul", null, content.browseLinks.links.map(function (_ref2) {
var href = _ref2.href,
label = _ref2.label;
return _react["default"].createElement("li", {
key: "".concat(href, "_").concat(label)
}, _react["default"].createElement("h4", null, _react["default"].createElement(_Link["default"], {
href: href,
rel: "noopener"
}, label)));
}))), _react["default"].createElement(LinksColumn, null, _react["default"].createElement(Links, null, _react["default"].createElement("p", null, _react["default"].createElement("strong", null, content.mediaLinks.title)), _react["default"].createElement("ul", null, content.mediaLinks.links.map(function (_ref3) {
var href = _ref3.href,
label = _ref3.label;
return _react["default"].createElement("li", {
key: "".concat(href, "_").concat(label)
}, _react["default"].createElement(_Link["default"], {
href: href,
rel: "noopener"
}, label));
}))), _react["default"].createElement(Links, null, _react["default"].createElement("p", null, _react["default"].createElement("strong", null, content.supportLinks.title)), _react["default"].createElement("ul", null, content.supportLinks.links.map(function (_ref4) {
var href = _ref4.href,
label = _ref4.label;
return _react["default"].createElement("li", {
key: "".concat(href, "_").concat(label)
}, _react["default"].createElement(_Link["default"], {
href: href,
rel: "noopener"
}, label));
}))), _react["default"].createElement(Links, null, _react["default"].createElement("p", null, _react["default"].createElement("strong", null, content.communityLinks.title)), _react["default"].createElement("ul", null, content.communityLinks.links.map(function (_ref5) {
var href = _ref5.href,
label = _ref5.label;
return _react["default"].createElement("li", {
key: "".concat(href, "_").concat(label)
}, _react["default"].createElement(_Link["default"], {
href: href,
rel: "noopener"
}, label));
}))))), _react["default"].createElement(Columns, null, _react["default"].createElement(LogoColumn, null, "\xA0"), _react["default"].createElement(MainColumn, null, _react["default"].createElement("p", null, _react["default"].createElement("strong", null, content.partnersLinks.title)), _react["default"].createElement("ul", null, content.partnersLinks.links.map(function (_ref6) {
var href = _ref6.href,
label = _ref6.label;
return _react["default"].createElement("li", {
key: "".concat(href, "_").concat(label)
}, _react["default"].createElement("h4", null, _react["default"].createElement(_Link["default"], {
href: href,
rel: "noopener"
}, label)));
}))), _react["default"].createElement(LinksColumn, null, _react["default"].createElement(Links, null, _react["default"].createElement("p", null, _react["default"].createElement("strong", null, content.socialLinks.title)), _react["default"].createElement(SocialLinks, null, _react["default"].createElement(SocialLink, null, _react["default"].createElement(_Link["default"], {
title: "Input Output HK Twitter",
rel: "noopener",
href: "https://twitter.com/inputoutputHK"
}, _react["default"].createElement(Circle, null, _react["default"].createElement(_fa.FaTwitter, {
size: 16
})))), _react["default"].createElement(SocialLink, null, _react["default"].createElement(_Link["default"], {
title: "Input Output HK Facebook",
rel: "noopener",
href: "https://www.facebook.com/iohk.io/"
}, _react["default"].createElement(Circle, null, _react["default"].createElement(_fa.FaFacebookF, {
size: 16
})))), _react["default"].createElement(SocialLink, null, _react["default"].createElement(_Link["default"], {
title: "Input Output HK YouTube",
rel: "noopener",
href: "https://www.youtube.com/c/IohkIo"
}, _react["default"].createElement(Circle, null, _react["default"].createElement(_fa.FaYoutube, {
size: 16
})))), _react["default"].createElement(SocialLink, null, _react["default"].createElement(_Link["default"], {
title: "Input Output HK Blog",
rel: "noopener",
href: "https://iohk.io/blog/"
}, _react["default"].createElement(Circle, null, _react["default"].createElement(_fa.FaRss, {
size: 16
})))), _react["default"].createElement(SocialLink, null, _react["default"].createElement(_Link["default"], {
title: "Input Output HK Github",
rel: "noopener",
className: "github",
href: "https://github.com/input-output-hk/"
}, _react["default"].createElement(_di.DiGithubBadge, {
size: 45
}))))))), _react["default"].createElement(Columns, null, _react["default"].createElement(LogoColumn, null, "\xA0"), _react["default"].createElement(MainColumn, null, _react["default"].createElement(BottomLinks, null, content.bottomLinks.links.map(function (_ref7) {
var href = _ref7.href,
label = _ref7.label;
return _react["default"].createElement("li", {
key: "".concat(href, "_").concat(label)
}, _react["default"].createElement(_Link["default"], {
href: href,
rel: "noopener"
}, label));
})))));
};
CardanoOrg.propTypes = {
lang: _propTypes["default"].string.isRequired,
theme: _propTypes["default"].oneOf(['dark', 'light']).isRequired
};
var _default = CardanoOrg;
exports["default"] = _default;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9mb290ZXJzL0NhcmRhbm9PcmcuanMiXSwibmFtZXMiOlsiQ2lyY2xlIiwic3R5bGVkIiwic3BhbiIsIkNvbnRhaW5lciIsImRpdiIsIkNvbHVtbnMiLCJMb2dvQ29sdW1uIiwiTWFpbkNvbHVtbiIsIkxpbmtzQ29sdW1uIiwiTGlua3MiLCJTb2NpYWxMaW5rcyIsIlNvY2lhbExpbmsiLCJCb3R0b21MaW5rcyIsInVsIiwiQ2FyZGFub09yZyIsImxhbmciLCJ0aGVtZSIsImNvbnRlbnQiLCJjYXJkYW5vIiwiRXJyb3IiLCJsb2dvVVJMIiwiYnJvd3NlTGlua3MiLCJ0aXRsZSIsImxpbmtzIiwibWFwIiwiaHJlZiIsImxhYmVsIiwibWVkaWFMaW5rcyIsInN1cHBvcnRMaW5rcyIsImNvbW11bml0eUxpbmtzIiwicGFydG5lcnNMaW5rcyIsInNvY2lhbExpbmtzIiwiYm90dG9tTGlua3MiLCJwcm9wVHlwZXMiLCJQcm9wVHlwZXMiLCJzdHJpbmciLCJpc1JlcXVpcmVkIiwib25lT2YiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVBLElBQU1BLE1BQU0sR0FBR0MsNkJBQU9DLElBQVYsbUJBQVo7O0FBWUEsSUFBTUMsU0FBUyxHQUFHRiw2QkFBT0csR0FBVixvQkFBZjs7QUFRQSxJQUFNQyxPQUFPLEdBQUdKLDZCQUFPRyxHQUFWLG9CQUFiOztBQWdCQSxJQUFNRSxVQUFVLEdBQUdMLDZCQUFPRyxHQUFWLG9CQUFoQjs7QUFTQSxJQUFNRyxVQUFVLEdBQUdOLDZCQUFPRyxHQUFWLG9CQUFoQjs7QUFzQkEsSUFBTUksV0FBVyxHQUFHUCw2QkFBT0csR0FBVixvQkFBakI7O0FBY0EsSUFB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QUFELGVBREYsRUFJRSxnQ0FBQyxVQUFELFFBQ0UsZ0NBQUMsV0FBRCxRQUNHTCxPQUFPLENBQUNlLFdBQVIsQ0FBb0JULEtBQXBCLENBQTBCQyxHQUExQixDQUE4QjtBQUFBLFFBQUdDLElBQUgsU0FBR0EsSUFBSDtBQUFBLFFBQVNDLEtBQVQsU0FBU0EsS0FBVDtBQUFBLFdBQzdCO0FBQUksTUFBQSxHQUFHLFlBQUtELElBQUwsY0FBYUMsS0FBYjtBQUFQLE9BQTZCLGdDQUFDLGdCQUFEO0FBQU0sTUFBQSxJQUFJLEVBQUVELElBQVo7QUFBa0IsTUFBQSxHQUFHLEVBQUM7QUFBdEIsT0FBa0NDLEtBQWxDLENBQTdCLENBRDZCO0FBQUEsR0FBOUIsQ0FESCxDQURGLENBSkYsQ0FyRkYsQ0FERjtBQW9HRCxDQXpHRDs7QUEyR0FaLFVBQVUsQ0FBQ21CLFNBQVgsR0FBdUI7QUFDckJsQixFQUFBQSxJQUFJLEVBQUVtQixzQkFBVUMsTUFBVixDQUFpQkMsVUFERjtBQUVyQnBCLEVBQUFBLEtBQUssRUFBRWtCLHNCQUFVRyxLQUFWLENBQWdCLENBQUUsTUFBRixFQUFVLE9BQVYsQ0FBaEIsRUFBcUNEO0FBRnZCLENBQXZCO2VBS2V0QixVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0J1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJ1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cydcbmltcG9ydCB7IEZhVHdpdHRlciwgRmFGYWNlYm9va0YsIEZhWW91dHViZSwgRmFSc3MgfSBmcm9tICdyZWFjdC1pY29ucy9mYSdcbmltcG9ydCB7IERpR2l0aHViQmFkZ2UgfSBmcm9tICdyZWFjdC1pY29ucy9kaSdcbmltcG9ydCBMaW5rIGZyb20gJ0BpbnB1dC1vdXRwdXQtaGsvZnJvbnQtZW5kLWNvcmUtY29tcG9uZW50cy9jb21wb25lbnRzL0xpbmsnXG5pbXBvcnQgY2FyZGFubyBmcm9tICcuLi9yZXNvdXJjZXMvZm9vdGVyL2NhcmRhbm8tb3JnJ1xuXG5jb25zdCBDaXJjbGUgPSBzdHlsZWQuc3BhbmBcbiAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6IzY2N0ZGNDtcbiAgY29sb3I6I2YxZjJmMjtcbiAgd2lkdGg6M3JlbTtcbiAgaGVpZ2h0OjNyZW07XG4gIGJvcmRlci1yYWRpdXM6NXJlbTtcbiAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OjIuMjtcbiAgbWFyZ2luOjAgLjJyZW0gMCAwO1xuYFxuXG5jb25zdCBDb250YWluZXIgPSBzdHlsZWQuZGl2YFxuICBtYXJnaW46IDNyZW0gMDtcbiAgZm9udC1zaXplOjEuNnJlbTtcbiAgYSB7XG4gICAgY29sb3I6IzY2N0ZGNDtcbiAgfVxuYFxuXG5jb25zdCBDb2x1bW5zID0gc3R5bGVkLmRpdmBcbiAgcGFkZGluZzoxcmVtIDAgMnJlbSAwO1xuICBkaXYge1xuICAgIHZlcnRpY2FsLWFsaWduOnRvcDtcbiAgICBwIHtcbiAgICAgIG1hcmdpbjowO1xuICAgIH1cbiAgICB1bCB7XG4gICAgICBsaXN0LXN0eWxlLXR5cGU6bm9uZTtcbiAgICAgIHBhZGRpbmc6MDtcbiAgICAgIG1hcmdpbjouOHJlbSAwO1xuICAgICAgbGluZS1oZWlnaHQ6MjtcbiAgICB9XG4gIH1cbmBcblxuY29uc3QgTG9nb0NvbHVtbiA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICB3aWR0aDo4LjMzJTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ODAwcHgpIHtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICB3aWR0aDoxMDAlO1xuICB9XG5gXG5cbmNvbnN0IE1haW5Db2x1bW4gPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgd2lkdGg6MzAlO1xuICBAbWVkaWEgKG1heC13aWR0aDoxMDgwcHgpIHtcbiAgICB3aWR0aDo0MCU7XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6ODYwcHgpIHtcbiAgICB3aWR0aDo1MCU7XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6ODAwcHgpIHtcbiAgICB3aWR0aDoxMDAlO1xuICB9XG4gIHVsIHtcbiAgICBtYXJnaW46MXJlbSAwO1xuICAgIGxpIHtcbiAgICAgIGg0IHtcbiAgICAgICAgbWFyZ2luOi41cmVtIDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5gXG5cbmNvbnN0IExpbmtzQ29sdW1uID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gIHdpZHRoOjYwJTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6MTA4MHB4KSB7XG4gICAgd2lkdGg6NTAlO1xuICB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOjg2MHB4KSB7XG4gICAgd2lkdGg6NDElO1xuICB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOjgwMHB4KSB7XG4gICAgd2lkdGg6MTAwJTtcbiAgfVxuYFxuXG5jb25zdCBMaW5rcyA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICB3aWR0aDozMyU7XG5gXG5cbmNvbnN0IFNvY2lhbExpbmtzID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luOjEuNHJlbSAwO1xuYFxuXG5jb25zdCBTb2NpYWxMaW5rID0gc3R5bGVkLmRpdmBcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gIC5naXRodWIge1xuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjotLjhyZW0gMCAwIC0uNXJlbTtcbiAgICBsaW5lLWhlaWdodDoxO1xuICB9XG5gXG5cbmNvbnN0IEJvdHRvbUxpbmtzID0gc3R5bGVkLnVsYFxubWFyZ2luOjJyZW0gMCAwO1xuICBsaSB7XG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOjAgMnJlbSAwIDA7XG4gIH1cbmBcblxuY29uc3QgQ2FyZGFub09yZyA9ICh7IGxhbmcsIHRoZW1lIH0pID0+IHtcbiAgY29uc3QgY29udGVudCA9IGNhcmRhbm9bbGFuZ11cbiAgaWYgKCFjb250ZW50KSB0aHJvdyBuZXcgRXJyb3IoYE5vIGNvbnRlbnQgZm9yIENhcmRhbm8gZm9vdGVyIGluIGxhbmd1YWdlIFwiJHtsYW5nfVwiYClcbiAgbGV0IGxvZ29VUkwgPSAnaHR0cHM6Ly91Y2FyZWNkbi5jb20vMTdhMzMwNTQtMmM5Yi00ZThhLWIwNzItNDhhODdhN2Y5MTdjL2NhcmRhbm93aGl0ZS5wbmcnXG4gIGlmICh0aGVtZSA9PT0gJ2RhcmsnKSBsb2dvVVJMID0gJ2h0dHBzOi8vdWNhcmVjZG4uY29tLzE5NThhMmFhLWNmMzUtNGFhMy1hNGI2LWVkMzRiNzI2YzNkZS9jYXJkYW5vLnBuZydcbiAgcmV0dXJuIChcbiAgICA8Q29udGFpbmVyPlxuICAgICAgPENvbHVtbnM+XG4gICAgICAgIDxMb2dvQ29sdW1uPlxuICAgICAgICAgIDxpbWcgc3JjPXtsb2dvVVJMfSBhbHQ9J0NhcmRhbm8nIHdpZHRoPSc3MCcgLz5cbiAgICAgICAgPC9Mb2dvQ29sdW1uPlxuICAgICAgICA8TWFpbkNvbHVtbj5cbiAgICAgICAgICA8cD48c3Ryb25nPntjb250ZW50LmJyb3dzZUxpbmtzLnRpdGxlfTwvc3Ryb25nPjwvcD5cbiAgICAgICAgICA8dWw+XG4gICAgICAgICAgICB7Y29udGVudC5icm93c2VMaW5rcy5saW5rcy5tYXAoKHsgaHJlZiwgbGFiZWwgfSkgPT4gKFxuICAgICAgICAgICAgICA8bGkga2V5PXtgJHtocmVmfV8ke2xhYmVsfWB9PjxoND48TGluayBocmVmPXtocmVmfSByZWw9J25vb3BlbmVyJz57bGFiZWx9PC9MaW5rPjwvaDQ+PC9saT5cbiAgICAgICAgICAgICkpfVxuICAgICAgICAgIDwvdWw+XG4gICAgICAgIDwvTWFpbkNvbHVtbj5cbiAgICAgICAgPExpbmtzQ29sdW1uPlxuICAgICAgICAgIDxMaW5rcz5cbiAgICAgICAgICAgIDxwPjxzdHJvbmc+e2NvbnRlbnQubWVkaWFMaW5rcy50aXRsZX08L3N0cm9uZz48L3A+XG4gICAgICAgICAgICA8dWw+XG4gICAgICAgICAgICAgIHtjb250ZW50Lm1lZGlhTGlua3MubGlua3MubWFwKCh7IGhyZWYsIGxhYmVsIH0pID0+IChcbiAgICAgICAgICAgICAgICA8bGkga2V5PXtgJHtocmVmfV8ke2xhYmVsfWB9PjxMaW5rIGhyZWY9e2hyZWZ9IHJlbD0nbm9vcGVuZXInPntsYWJlbH08L0xpbms+PC9saT5cbiAgICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICA8L3VsPlxuICAgICAgICAgIDwvTGlua3M+XG4gICAgICAgICAgPExpbmtzPlxuICAgICAgICAgICAgPHA+PHN0cm9uZz57Y29udGVudC5zdXBwb3J0TGlua3MudGl0bGV9PC9zdHJvbmc+PC9wPlxuICAgICAgICAgICAgPHVsPlxuICAgICAgICAgICAgICB7Y29udGVudC5zdXBwb3J0TGlua3MubGlua3MubWFwKCh7IGhyZWYsIGxhYmVsIH0pID0+IChcbiAgICAgICAgICAgICAgICA8bGkga2V5PXtgJHtocmVmfV8ke2xhYmVsfWB9PjxMaW5rIGhyZWY9e2hyZWZ9IHJlbD0nbm9vcGVuZXInPntsYWJlbH08L0xpbms+PC9saT5cbiAgICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICA8L3VsPlxuICAgICAgICAgIDwvTGlua3M+XG4gICAgICAgICAgPExpbmtzPlxuICAgICAgICAgICAgPHA+PHN0cm9uZz57Y29udGVudC5jb21tdW5pdHlMaW5rcy50aXRsZX08L3N0cm9uZz48L3A+XG4gICAgICAgICAgICA8dWw+XG4gICAgICAgICAgICAgIHtjb250ZW50LmNvbW11bml0eUxpbmtzLmxpbmtzLm1hcCgoeyBocmVmLCBsYWJlbCB9KSA9PiAoXG4gICAgICAgICAgICAgICAgPGxpIGtleT17YCR7aHJlZn1fJHtsYWJlbH1gfT48TGluayBocmVmPXtocmVmfSByZWw9J25vb3BlbmVyJz57bGFiZWx9PC9MaW5rPjwvbGk+XG4gICAgICAgICAgICAgICkpfVxuICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICA8L0xpbmtzPlxuICAgICAgICA8L0xpbmtzQ29sdW1uPlxuICAgICAgPC9Db2x1bW5zPlxuICAgICAgPENvbHVtbnM+XG4gICAgICAgIDxMb2dvQ29sdW1uPlxuICAgICAgICAgICZuYnNwO1xuICAgICAgICA8L0xvZ29Db2x1bW4+XG4gICAgICAgIDxNYWluQ29sdW1uPlxuICAgICAgICAgIDxwPjxzdHJvbmc+e2NvbnRlbnQucGFydG5lcnNMaW5rcy50aXRsZX08L3N0cm9uZz48L3A+XG4gICAgICAgICAgPHVsPlxuICAgICAgICAgICAge2NvbnRlbnQucGFydG5lcnNMaW5rcy5saW5rcy5tYXAoKHsgaHJlZiwgbGFiZWwgfSkgPT4gKFxuICAgICAgICAgICAgICA8bGkga2V5PXtgJHtocmVmfV8ke2xhYmVsfWB9PjxoND48TGluayBocmVmPXtocmVmfSByZWw9J25vb3BlbmVyJz57bGFiZWx9PC9MaW5rPjwvaDQ+PC9saT5cbiAgICAgICAgICAgICkpfVxuICAgICAgICAgIDwvdWw+XG4gICAgICAgIDwvTWFpbkNvbHVtbj5cbiAgICAgICAgPExpbmtzQ29sdW1uPlxuICAgICAgICAgIDxMaW5rcz5cbiAgICAgICAgICAgIDxwPjxzdHJvbmc+e2NvbnRlbnQuc29jaWFsTGlua3MudGl0bGV9PC9zdHJvbmc+PC9wPlxuICAgICAgICAgICAgPFNvY2lhbExpbmtzPlxuICAgICAgICAgICAgICA8U29jaWFsTGluaz5cbiAgICAgICAgICAgICAgICA8TGluayB0aXRsZT0nSW5wdXQgT3V0cHV0IEhLIFR3aXR0ZXInIHJlbD0nbm9vcGVuZXInIGhyZWY9J2h0dHBzOi8vdHdpdHRlci5jb20vaW5wdXRvdXRwdXRISyc+XG4gICAgICAgICAgICAgICAgICA8Q2lyY2xlPjxGYVR3aXR0ZXIgc2l6ZT17MTZ9IC8+PC9DaXJjbGU+XG4gICAgICAgICAgICAgICAgPC9MaW5rPlxuICAgICAgICAgICAgICA8L1NvY2lhbExpbms+XG4gICAgICAgICAgICAgIDxTb2NpYWxMaW5rPlxuICAgICAgICAgICAgICAgIDxMaW5rIHRpdGxlPSdJbnB1dCBPdXRwdXQgSEsgRmFjZWJvb2snIHJlbD0nbm9vcGVuZXInIGhyZWY9J2h0dHBzOi8vd3d3LmZhY2Vib29rLmNvbS9pb2hrLmlvLyc+XG4gICAgICAgICAgICAgICAgICA8Q2lyY2xlPjxGYUZhY2Vib29rRiBzaXplPXsxNn0gLz48L0NpcmNsZT5cbiAgICAgICAgICAgICAgICA8L0xpbms+XG4gICAgICAgICAgICAgIDwvU29jaWFsTGluaz5cbiAgICAgICAgICAgICAgPFNvY2lhbExpbms+XG4gICAgICAgICAgICAgICAgPExpbmsgdGl0bGU9J0lucHV0IE91dHB1dCBISyBZb3VUdWJlJyByZWw9J25vb3BlbmVyJyBocmVmPSdodHRwczovL3d3dy55b3V0dWJlLmNvbS9jL0lvaGtJbyc+XG4gICAgICAgICAgICAgICAgICA8Q2lyY2xlPjxGYVlvdXR1YmUgc2l6ZT17MTZ9IC8+PC9DaXJjbGU+XG4gICAgICAgICAgICAgICAgPC9MaW5rPlxuICAgICAgICAgICAgICA8L1NvY2lhbExpbms+XG4gICAgICAgICAgICAgIDxTb2NpYWxMaW5rPlxuICAgICAgICAgICAgICAgIDxMaW5rIHRpdGxlPSdJbnB1dCBPdXRwdXQgSEsgQmxvZycgcmVsPSdub29wZW5lcicgaHJlZj0naHR0cHM6Ly9pb2hrLmlvL2Jsb2cvJz5cbiAgICAgICAgICAgICAgICAgIDxDaXJjbGU+PEZhUnNzIHNpemU9ezE2fSAvPjwvQ2lyY2xlPlxuICAgICAgICAgICAgICAgIDwvTGluaz5cbiAgICAgICAgICAgICAgPC9Tb2NpYWxMaW5rPlxuICAgICAgICAgICAgICA8U29jaWFsTGluaz5cbiAgICAgICAgICAgICAgICA8TGluayB0aXRsZT0nSW5wdXQgT3V0cHV0IEhLIEdpdGh1YicgcmVsPSdub29wZW5lcicgY2xhc3NOYW1lPSdnaXRodWInIGhyZWY9J2h0dHBzOi8vZ2l0aHViLmNvbS9pbnB1dC1vdXRwdXQtaGsvJz5cbiAgICAgICAgICAgICAgICAgIDxEaUdpdGh1YkJhZGdlIHNpemU9ezQ1fSAvPlxuICAgICAgICAgICAgICAgIDwvTGluaz5cbiAgICAgICAgICAgICAgPC9Tb2NpYWxMaW5rPlxuICAgICAgICAgICAgPC9Tb2NpYWxMaW5rcz5cbiAgICAgICAgICA8L0xpbmtzPlxuICAgICAgICA8L0xpbmtzQ29sdW1uPlxuICAgICAgPC9Db2x1bW5zPlxuICAgICAgPENvbHVtbnM+XG4gICAgICAgIDxMb2dvQ29sdW1uPlxuICAgICAgICAgICZuYnNwO1xuICAgICAgICA8L0xvZ29Db2x1bW4+XG4gICAgICAgIDxNYWluQ29sdW1uPlxuICAgICAgICAgIDxCb3R0b21MaW5rcz5cbiAgICAgICAgICAgIHtjb250ZW50LmJvdHRvbUxpbmtzLmxpbmtzLm1hcCgoeyBocmVmLCBsYWJlbCB9KSA9PiAoXG4gICAgICAgICAgICAgIDxsaSBrZXk9e2Ake2hyZWZ9XyR7bGFiZWx9YH0+PExpbmsgaHJlZj17aHJlZn0gcmVsPSdub29wZW5lcic+e2xhYmVsfTwvTGluaz48L2xpPlxuICAgICAgICAgICAgKSl9XG4gICAgICAgICAgPC9Cb3R0b21MaW5rcz5cbiAgICAgICAgPC9NYWluQ29sdW1uPlxuICAgICAgPC9Db2x1bW5zPlxuICAgIDwvQ29udGFpbmVyPlxuICApXG59XG5cbkNhcmRhbm9PcmcucHJvcFR5cGVzID0ge1xuICBsYW5nOiBQcm9wVHlwZXMuc3RyaW5nLmlzUmVxdWlyZWQsXG4gIHRoZW1lOiBQcm9wVHlwZXMub25lT2YoWyAnZGFyaycsICdsaWdodCcgXSkuaXNSZXF1aXJlZFxufVxuXG5leHBvcnQgZGVmYXVsdCBDYXJkYW5vT3JnXG4iXX0=