@touchtech/baselayer-ui 2.4.20 → 2.5.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bundle.js +2 -10
- package/dist/styles.css +12 -3
- package/package.json +10 -2
package/dist/bundle.js
CHANGED
|
@@ -1,10 +1,2 @@
|
|
|
1
|
-
!function(e,t){for(var n in t)e[n]=t[n]}(exports,function(e){var t={};function n(a){if(t[a])return t[a].exports;var r=t[a]={i:a,l:!1,exports:{}};return e[a].call(r.exports,r,r.exports,n),r.l=!0,r.exports}return n.m=e,n.c=t,n.d=function(e,t,a){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:a})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var a=Object.create(null);if(n.r(a),Object.defineProperty(a,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(a,r,function(t){return e[t]}.bind(null,r));return a},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=26)}([function(e,t,n){e.exports=n(24)()},function(e,t){e.exports=require("react")},function(e,t,n){e.exports={container:"M9_egEC8msu135oPGVdIf",small:"_1bNQhbZwLA8ErLmwdQitJe",large:"_2DwLFD-4gDz9HEAAiwWJPq",inverted:"_31CfmTUYpEh1hZvctQ9lK4",rounded:"_2bq31qKD7B6r6CTCOL3drW",rightOffset:"_2eUCWQMETOgiXuib7XfThZ",leftOffset:"G8o_OMDUFsEQ1ytU7oUYG",noShadow:"_2vknhUFAIGmjXs7tgkAC7I",noBorder:"_2p0GpdmPKIFCUes584YHeV",transparent:"_8vMlSRH_9HoRGJh8Swka",stretchHorizontally:"nZ9rOZwzGXVI3ayRgA3QC",stretchVertically:"_1y8ifb95spTLWGAmsbw1R2",noPadding:"_3cO49JELNKtGyaFxRlshyO",content:"o8d7YoT83umePPSFzK31Y"}},function(e,t,n){e.exports={container:"_3eVBgmkG6hjVokm5Xy4UMQ",small:"_8I9fhnzbMvCrl5KPj9f0",large:"_3_SwqmDWOGv877iHACnJpC",inverted:"_1xOa3CBRHzPCRWNsiJ65aC",rounded:"_3UGlOItzKokVg0wGH0eIlX",rightOffset:"_13tPsp6dfA1Twb1MMHRiGT",leftOffset:"NI5n6bEVRCQPy6AOAsQ1q",noShadow:"gIY9iuvC2VWxcvwwCmaJJ",transparent:"_3Xflh3Q1AZnTOD0ctquI6w",stretchHorizontally:"_2FbRDEGS_7eMUcJ0ViOBU0",stretchVertically:"_1rPm-t5ZWwrS-L9l7z66jb",noPadding:"_3J8DeaLq5iw3Ap7qKJkP9B",noBorder:"_3cEQs-K_mShFNDgDP32Wd6",content:"_1VTyfTwVloAcZwYCZyslsJ"}},function(e,t,n){e.exports={container:"_2MPuJ3ApvrAvrewjSWGAA2",small:"lOkoan7dbp-goDtJVuK7B",large:"_2aG6zXqTEKVcvBaaniCNBy",rounded:"_2JX034qUTCoTdWC2ppA487",topOffset:"_1wpC-WXgL06QKxtPzOwNRK",rightOffset:"LIzrQC7poQT9jURBqMDKh",bottomOffset:"_2i_w5ULkUK7LVw5hEO97Ew",leftOffset:"_38eKlTQTV1YlnEe1GmNtQk",inverted:"_2NkZ50rkA3eZCysY9FAp-e",noShadow:"_3Uy5HZdvkWf7bilT0wxwVe",noBorder:"_2F4Hy9lq5OCrEpPZPh5xAJ",transparent:"_2u7qTMeE9D5rtcsEcSoAY3"}},function(e,t,n){e.exports={container:"_1uifmKNPDzdu5YDnhgwPQK",small:"pfHcYaew-HrHtTNuR4v7h",large:"_26Z9FH-CNPqf55ZRP1vnab",rounded:"_2q7WvROhNm3gsRIRaQQeaU",topOffset:"wZy_vulZkMbWSX0akcZHA",rightOffset:"_2jhhpm60_yPEfxQ-wazj-5",bottomOffset:"DnnrG7ZXmTIhmWUcs99m1",leftOffset:"_1YdCg7T6XjhmxwcjLNSEb-",inverted:"HV0R-lqwmyeqsS1Z8poZS",noShadow:"_1LPpt70Jjim6SfZe35G2kb",noBorder:"RkzSrGixM28JMat6IB5Lr",transparent:"_1KdXfY3Pk6tENYH81tWrps"}},function(e,t,n){e.exports={container:"kkgHoBQhFPsKj_x1ZFdRH",modalHeader:"_1WuvHD-GdXLrtqwa04W1qy",modalContent:"_27eUySQqvq5qloNClIjIST",noPadding:"_2gtBXL9PFSpHsW0A9xd55S",modalButtonsContainer:"_5gIpyF3X5thPQAnsAC4z9",modalButtons:"swsoCii1w4xNl7ioDVkO5"}},function(e,t,n){e.exports={container:"_3zwln8xpkZwpTY5i6J7bOD",hasOverlay:"_2el8xWqqf3w4S3x0s2D9xl",overlay:"Eg3imfbXdI6U6rfRE0-qO",image:"t1897dfts_pqHzSnwmWBW",cover:"_1-R_HDjO6qNnywcNiS8byD",contain:"_3mDpCjHJ2g66e0w4R2EZkG",stretchHorizontally:"_3yEtH7cqpUlVFaGiWG129w",stretchVertically:"lyiBs6OBxvREnwIR0ls2C"}},function(e,t,n){e.exports={container:"_2EQBfr5w8h1x1bq-2fp6wT",hasOverlay:"_3GRMpmGk_PqITcUv0Nfmt3",video:"_2tZfXkEhCkwAzfaG_BVn0B",cover:"_3OYHfbzaL3QHanWZBj8RxO",contain:"_3I_c7shcSrtG_FxvvU2IeE",stretchHorizontally:"_1Z7dL9uEd0Ksx3CkrZhsB8",stretchVertically:"_1zbrDYO0fYFJVc7xvsTYi6",overlay:"_2osXd7SkwF0Lh-2yiquYQM"}},function(e,t,n){e.exports={container:"a6NHO2CVVCfiniye2XLN-",row:"_3RSgB76rEBniPc2Ycr8Zbv",column:"_1JkX15igclnbm5sRScWVDY",fixed:"MMQ1yjEafWkYFVDHMpTbI",plain:"_3m2M_Narc5xwLay8HJljkc",transparent:"_1rfa49zhZxNifz64Oqb_6P",top:"_kUalnDeEfvzqAji0AMDo",topEdge:"W8JAIwLjO8JQGbviZpPQw",topOnEdge:"_3opJ7Eb6tj394uV8a57ixz",right:"_3-vbwjp0aPcLEV1Sx0ICgP",rightEdge:"_3XNFy5ZoMCoYBIabeGN4BQ",rightOnEdge:"_12c3CzUMQE8AG3AL8Hiki2",bottom:"_3geBENH5oErqGdt-QyHnPh",bottomEdge:"_3_saM4Gs32nRbIHHxIEbF6",bottomOnEdge:"_2PLE4dmGhncgk-lEnoU4kv",left:"_1iSBnyZgPeFUWoM4i6dSpU",leftEdge:"_1fX19qIOShn2o5uusRzTgs",leftOnEdge:"KBHDockuHTEOKMGOzadXi",horizontalCenter:"_31t6tHRJ5s-5DcDLFTKh1m",verticalCenter:"_2hq7fkDXHxrxz2t7LLg4_9"}},function(e,t,n){e.exports={menu:"_2ahi8JcnxGHrnZmD0xT9RL",top:"_3gpFTd1Fdx4EAfq170TGs7",right:"_1L5ATpM9GXy-SORFr0G6S4",left:"CYEJl39TkEfnKal3vtvz9",bottom:"_3zyp-NdTBeBDKvk26psZup",open:"_1iaaziZrVI_-E8D99WdNji",entrance:"_2fiKe4-X8PqcG4_9qeB3ZO",menuHeader:"_19nk1IMNS-u_YIQLlmYRtU"}},function(e,t,n){e.exports={toast:"_3sBs_ERXV3k0SQMGUy2Wj4",entrance:"_1_xjtLeUMoEXNA-qOEZhcx",toastContent:"_10lBETCU3UNFR8py1q1q-h",toastImage:"_3Ci0wpObk6oqf7dwkHsFWo",toastButtons:"FEWDnDsP-9A9JHG20qBS5"}},function(e,t,n){e.exports={listViewItem:"_2LgjqABwjHtpbGzkQQkqiQ"}},function(e,t,n){e.exports={colorSwatch:"_13ss1xsMNizvEgP_hxEV8B",selected:"L6fAt6RZYz_z3wPbjZExH",srOnly:"_3vJ5mxpzaYsKaxf-8tB31x"}},function(e,t,n){e.exports={overlay:"_1yxCbQJqStUvytvKEeNC3n",modal:"D8SjBx3ikz636YubnHYAY",modalButton:"o8VRVxMrs1xXavADyxjLG"}},function(e,t,n){e.exports={icon:"uh8zkmQp5ybk5WJSla69D",small:"_9DICtqmQSnLPjm1XI7YVs",large:"_2rgucAH8Bnli-cmjz9i2C2",inverted:"I-eI5q8rd2bSp9B-FhUza"}},function(e,t,n){e.exports={container:"CPHNd8osKjLvQDEQUErux",header:"_1e7hHSVo59e8yQnhc9B6Id",list:"_1w1W8E6_Hzfes3WZTYZaJK"}},function(e,t,n){e.exports={overlay:"_2QgpyrDcUQyKYESC5DXXJr",transparent:"_28fVmoxp69OPr88Ew0zVeN",fixed:"_2sU3515EbFFgeP1yK2Zubz"}},function(e,t,n){e.exports={textInput:"_2wfqOzWBoAn_K7goqvjXJe",small:"_1a4QOVJB0zW3Urf_5hqNjj",large:"_3DQ52Qd_1K4_VxxVv728SX",textLabel:"_31oAAOE_dvGoAz9qJmo8EG"}},function(e,t,n){e.exports={colorPicker:"_31FwH_nWr72k3pugApJub9",horizontal:"Qa-BpuTT2kxpmV_AQgCjH",vertical:"_2x4SAnbopyZmkycWLC0EXk"}},function(e,t,n){e.exports={menuItem:"_3gGczRJwrNenXTBLQnC29M",active:"_2j1ilUNkbFGSgulXSoHAdP"}},function(e,t,n){e.exports={menuContainer:"_2-SFwsppEuobBJkAwwQrFC"}},function(e,t,n){e.exports={menuLinkItem:"_2Dy1LTfScGZtSb_5Lud-lU",active:"_2Uws7bj3yejmn1k7XiyKfQ",menuItem:"_2lI7S2t5zWhQsvg_XnQ7--"}},function(e,t,n){e.exports={toastContainer:"_3F8cJU1wmKmbrjidg-O3zp"}},function(e,t,n){"use strict";var a=n(25);function r(){}function o(){}o.resetWarningCache=r,e.exports=function(){function e(e,t,n,r,o,i){if(i!==a){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function t(){return e}e.isRequired=e;var n={array:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:o,resetWarningCache:r};return n.PropTypes=n,n}},function(e,t,n){"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},function(e,t,n){"use strict";n.r(t),n.d(t,"Button",(function(){return f})),n.d(t,"ButtonLink",(function(){return v})),n.d(t,"ColorPicker",(function(){return C})),n.d(t,"ColorSwatch",(function(){return E})),n.d(t,"ConfirmationModal",(function(){return ae})),n.d(t,"FloatingPanel",(function(){return se})),n.d(t,"Icon",(function(){return ue})),n.d(t,"IconButton",(function(){return ye})),n.d(t,"IconButtonLink",(function(){return Oe})),n.d(t,"Image",(function(){return ke})),n.d(t,"ListView",(function(){return Se})),n.d(t,"ListViewItem",(function(){return qe})),n.d(t,"ListViewLinkItem",(function(){return je})),n.d(t,"Menu",(function(){return Ie})),n.d(t,"MenuContainer",(function(){return De})),n.d(t,"MenuItem",(function(){return Ue})),n.d(t,"MenuLinkItem",(function(){return Ye})),n.d(t,"Modal",(function(){return $})),n.d(t,"Overlay",(function(){return nt})),n.d(t,"TextInput",(function(){return it})),n.d(t,"Toast",(function(){return dt})),n.d(t,"ToastContainer",(function(){return mt})),n.d(t,"Video",(function(){return gt})),n.d(t,"useToggle",(function(){return bt})),n.d(t,"useOutsideClick",(function(){return Ot}));var a=n(1),r=n.n(a),o=n(0),i=n.n(o),s=Array.isArray;function l(e){var t="";if("string"==typeof e||"number"==typeof e)return e||"";if(s(e))for(var n,a=0;a<e.length;a++)""!==(n=l(e[a]))&&(t+=(t&&" ")+n);else for(var a in e)e.hasOwnProperty(a)&&e[a]&&(t+=(t&&" ")+a);return t}var c=n(2),d=n.n(c);function u({children:e,className:t,disabled:n,inverted:a,rounded:o,noShadow:i,noPadding:s,noBorder:c,transparent:u,onClick:f,stretchHorizontally:p,stretchVertically:m,offsetSides:y,size:h,type:v}){return r.a.createElement("button",{className:l([d.a.container,d.a[h],{[d.a.inverted]:a,[d.a.rounded]:o,[d.a.noShadow]:i,[d.a.noPadding]:s,[d.a.noBorder]:c,[d.a.transparent]:u,[d.a.stretchHorizontally]:p,[d.a.stretchVertically]:m},y.map(e=>d.a[`${e}Offset`]),t]),disabled:n,onClick:f,type:v,role:"button"},"string"!=typeof e&&e.length?r.a.createElement("div",{className:d.a.content},e):e)}u.defaultProps={size:"medium",stretchHorizontally:!1,stretchVertically:!1,disabled:!1,inverted:!1,rounded:!1,noShadow:!1,noPadding:!1,noBorder:!1,transparent:!1,offsetSides:[]},u.propTypes={children:i.a.node,className:i.a.string,disabled:i.a.bool,inverted:i.a.bool,rounded:i.a.bool,noShadow:i.a.bool,noPadding:i.a.bool,noBorder:i.a.bool,transparent:i.a.bool,stretchHorizontally:i.a.bool,stretchVertically:i.a.bool,onClick:i.a.func,size:i.a.oneOf(["small","medium","large"]),type:i.a.oneOf(["submit","reset","button"]),offsetSides:i.a.arrayOf(["left","right"])};var f=u,p=n(3),m=n.n(p);function y(){return(y=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var a in n)Object.prototype.hasOwnProperty.call(n,a)&&(e[a]=n[a])}return e}).apply(this,arguments)}function h({as:e,children:t,className:n,inverted:a,rounded:o,transparent:i,noShadow:s,noPadding:c,noBorder:d,stretchHorizontally:u,stretchVertically:f,offsetSides:p,size:h,...v}){return r.a.createElement(e,y({"data-testid":"button-link",className:l([m.a.container,m.a[h],{[m.a.inverted]:a,[m.a.rounded]:o,[m.a.noShadow]:s,[m.a.noPadding]:c,[m.a.noBorder]:d,[m.a.transparent]:i,[m.a.stretchHorizontally]:u,[m.a.stretchVertically]:f},p.map(e=>m.a[`${e}Offset`]),n])},v),"string"!=typeof t&&t.length?r.a.createElement("div",{className:m.a.content},t):t)}h.defaultProps={as:"a",inverted:!1,rounded:!1,transparent:!1,noShadow:!1,noPadding:!1,noBorder:!1,stretchHorizontally:!1,stretchVertically:!1,offsetSides:[]},h.propTypes={as:i.a.elementType,children:i.a.node,className:i.a.string,inverted:i.a.bool,rounded:i.a.bool,transparent:i.a.bool,noShadow:i.a.bool,noPadding:i.a.bool,noBorder:i.a.bool,stretchHorizontally:i.a.bool,stretchVertically:i.a.bool,size:i.a.oneOf(["small","medium","large"]),offsetSides:i.a.arrayOf(["left","right"])};var v=h,g=n(13),b=n.n(g);function O({color:e,isSelected:t,onClick:n}){return r.a.createElement("button",{className:l([b.a.colorSwatch,{[b.a.selected]:t}]),"data-testid":"color-swatch",disabled:t,onClick:n,style:{backgroundColor:e.hexCode}},r.a.createElement("span",{className:b.a.srOnly},`Select ${e.label} color`))}O.defaultProps={isSelected:!1},O.propTypes={color:i.a.shape({hexCode:i.a.string.isRequired,label:i.a.string.isRequired}).isRequired,isSelected:i.a.bool,onClick:i.a.func.isRequired};var E=O,_=n(19),w=n.n(_);function k({colors:e,direction:t,onSelect:n,selectedColor:a}){return r.a.createElement("div",{className:l([w.a.colorPicker,w.a[t]])},e.map(e=>r.a.createElement(E,{key:e.key,color:e,isSelected:e===a,onClick:()=>n(e)})))}k.defaultProps={direction:"vertical"},k.propTypes={direction:i.a.oneOf(["horizontal","vertical"]),colors:i.a.arrayOf(i.a.shape({hexCode:i.a.string.isRequired,key:i.a.string.isRequired,label:i.a.string.isRequired})).isRequired,onSelect:i.a.func.isRequired,selectedColor:i.a.shape({hexCode:i.a.string.isRequired,key:i.a.string.isRequired,label:i.a.string.isRequired})};var C=k,x="undefined"!=typeof navigator&&navigator.userAgent.toLowerCase().indexOf("firefox")>0;
|
|
2
|
-
/*!
|
|
3
|
-
* hotkeys-js v3.8.1
|
|
4
|
-
* A simple micro-library for defining and dispatching keyboard shortcuts. It has no dependencies.
|
|
5
|
-
*
|
|
6
|
-
* Copyright (c) 2020 kenny wong <wowohoo@qq.com>
|
|
7
|
-
* http://jaywcjlove.github.io/hotkeys
|
|
8
|
-
*
|
|
9
|
-
* Licensed under the MIT license.
|
|
10
|
-
*/function P(e,t,n){e.addEventListener?e.addEventListener(t,n,!1):e.attachEvent&&e.attachEvent("on".concat(t),(function(){n(window.event)}))}function S(e,t){for(var n=t.slice(0,t.length-1),a=0;a<n.length;a++)n[a]=e[n[a].toLowerCase()];return n}function N(e){"string"!=typeof e&&(e="");for(var t=(e=e.replace(/\s/g,"")).split(","),n=t.lastIndexOf("");n>=0;)t[n-1]+=",",t.splice(n,1),n=t.lastIndexOf("");return t}for(var z={backspace:8,tab:9,clear:12,enter:13,return:13,esc:27,escape:27,space:32,left:37,up:38,right:39,down:40,del:46,delete:46,ins:45,insert:45,home:36,end:35,pageup:33,pagedown:34,capslock:20,"⇪":20,",":188,".":190,"/":191,"`":192,"-":x?173:189,"=":x?61:187,";":x?59:186,"'":222,"[":219,"]":221,"\\":220},T={"⇧":16,shift:16,"⌥":18,alt:18,option:18,"⌃":17,ctrl:17,control:17,"⌘":91,cmd:91,command:91},q={16:"shiftKey",18:"altKey",17:"ctrlKey",91:"metaKey",shiftKey:16,ctrlKey:17,altKey:18,metaKey:91},R={16:!1,18:!1,17:!1,91:!1},B={},j=1;j<20;j++)z["f".concat(j)]=111+j;var H=[],L="all",A=[],I=function(e){return z[e.toLowerCase()]||T[e.toLowerCase()]||e.toUpperCase().charCodeAt(0)};function V(e){L=e||"all"}function K(){return L||"all"}var Q=function(e){var t=e.key,n=e.scope,a=e.method,r=e.splitKey,o=void 0===r?"+":r;N(t).forEach((function(e){var t=e.split(o),r=t.length,i=t[r-1],s="*"===i?"*":I(i);if(B[s]){n||(n=K());var l=r>1?S(T,t):[];B[s]=B[s].map((function(e){return(!a||e.method===a)&&e.scope===n&&function(e,t){for(var n=e.length>=t.length?e:t,a=e.length>=t.length?t:e,r=!0,o=0;o<n.length;o++)-1===a.indexOf(n[o])&&(r=!1);return r}(e.mods,l)?{}:e}))}}))};function D(e,t,n){var a;if(t.scope===n||"all"===t.scope){for(var r in a=t.mods.length>0,R)Object.prototype.hasOwnProperty.call(R,r)&&(!R[r]&&t.mods.indexOf(+r)>-1||R[r]&&-1===t.mods.indexOf(+r))&&(a=!1);(0!==t.mods.length||R[16]||R[18]||R[17]||R[91])&&!a&&"*"!==t.shortcut||!1===t.method(e,t)&&(e.preventDefault?e.preventDefault():e.returnValue=!1,e.stopPropagation&&e.stopPropagation(),e.cancelBubble&&(e.cancelBubble=!0))}}function G(e){var t=B["*"],n=e.keyCode||e.which||e.charCode;if(F.filter.call(this,e)){if(93!==n&&224!==n||(n=91),-1===H.indexOf(n)&&229!==n&&H.push(n),["ctrlKey","altKey","shiftKey","metaKey"].forEach((function(t){var n=q[t];e[t]&&-1===H.indexOf(n)?H.push(n):!e[t]&&H.indexOf(n)>-1?H.splice(H.indexOf(n),1):"metaKey"===t&&e[t]&&3===H.length&&(e.ctrlKey||e.shiftKey||e.altKey||(H=H.slice(H.indexOf(n))))})),n in R){for(var a in R[n]=!0,T)T[a]===n&&(F[a]=!0);if(!t)return}for(var r in R)Object.prototype.hasOwnProperty.call(R,r)&&(R[r]=e[q[r]]);e.getModifierState&&(!e.altKey||e.ctrlKey)&&e.getModifierState("AltGraph")&&(-1===H.indexOf(17)&&H.push(17),-1===H.indexOf(18)&&H.push(18),R[17]=!0,R[18]=!0);var o=K();if(t)for(var i=0;i<t.length;i++)t[i].scope===o&&("keydown"===e.type&&t[i].keydown||"keyup"===e.type&&t[i].keyup)&&D(e,t[i],o);if(n in B)for(var s=0;s<B[n].length;s++)if(("keydown"===e.type&&B[n][s].keydown||"keyup"===e.type&&B[n][s].keyup)&&B[n][s].key){for(var l=B[n][s],c=l.splitKey,d=l.key.split(c),u=[],f=0;f<d.length;f++)u.push(I(d[f]));u.sort().join("")===H.sort().join("")&&D(e,l,o)}}}function F(e,t,n){H=[];var a=N(e),r=[],o="all",i=document,s=0,l=!1,c=!0,d="+";for(void 0===n&&"function"==typeof t&&(n=t),"[object Object]"===Object.prototype.toString.call(t)&&(t.scope&&(o=t.scope),t.element&&(i=t.element),t.keyup&&(l=t.keyup),void 0!==t.keydown&&(c=t.keydown),"string"==typeof t.splitKey&&(d=t.splitKey)),"string"==typeof t&&(o=t);s<a.length;s++)r=[],(e=a[s].split(d)).length>1&&(r=S(T,e)),(e="*"===(e=e[e.length-1])?"*":I(e))in B||(B[e]=[]),B[e].push({keyup:l,keydown:c,scope:o,mods:r,shortcut:a[s],method:n,key:a[s],splitKey:d});void 0!==i&&!function(e){return A.indexOf(e)>-1}(i)&&window&&(A.push(i),P(i,"keydown",(function(e){G(e)})),P(window,"focus",(function(){H=[]})),P(i,"keyup",(function(e){G(e),function(e){var t=e.keyCode||e.which||e.charCode,n=H.indexOf(t);if(n>=0&&H.splice(n,1),e.key&&"meta"===e.key.toLowerCase()&&H.splice(0,H.length),93!==t&&224!==t||(t=91),t in R)for(var a in R[t]=!1,T)T[a]===t&&(F[a]=!1)}(e)})))}var M={setScope:V,getScope:K,deleteScope:function(e,t){var n,a;for(var r in e||(e=K()),B)if(Object.prototype.hasOwnProperty.call(B,r))for(n=B[r],a=0;a<n.length;)n[a].scope===e?n.splice(a,1):a++;K()===e&&V(t||"all")},getPressedKeyCodes:function(){return H.slice(0)},isPressed:function(e){return"string"==typeof e&&(e=I(e)),-1!==H.indexOf(e)},filter:function(e){var t=e.target||e.srcElement,n=t.tagName,a=!0;return!t.isContentEditable&&("INPUT"!==n&&"TEXTAREA"!==n&&"SELECT"!==n||t.readOnly)||(a=!1),a},unbind:function(e){if(e){if(Array.isArray(e))e.forEach((function(e){e.key&&Q(e)}));else if("object"==typeof e)e.key&&Q(e);else if("string"==typeof e){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;a<t;a++)n[a-1]=arguments[a];var r=n[0],o=n[1];"function"==typeof r&&(o=r,r=""),Q({key:e,scope:r,method:o,splitKey:"+"})}}else Object.keys(B).forEach((function(e){return delete B[e]}))}};for(var U in M)Object.prototype.hasOwnProperty.call(M,U)&&(F[U]=M[U]);if("undefined"!=typeof window){var W=window.hotkeys;F.noConflict=function(e){return e&&window.hotkeys===F&&(window.hotkeys=W),F},window.hotkeys=F}var Z=F;var J=n(14),X=n.n(J);function Y({children:e,isOpen:t,onClose:n,button:o}){!function(e,t,n,r){n instanceof Array&&(r=n,n=void 0);const{enableOnTags:o,filter:i}=n||{},s=Object(a.useRef)(null),l=Object(a.useCallback)((e,n)=>(null===s.current||document.activeElement===s.current)&&(t(e,n),!0),r?[s,...r]:[s]);Object(a.useEffect)(()=>(n&&n.enableOnTags&&(Z.filter=({target:e,srcElement:t})=>{const n=e&&e.tagName||t&&t.tagName;return Boolean(n&&o&&o.includes(n))}),i&&(Z.filter=i),Z(e,n||{},l),()=>Z.unbind(e,l)),[l,n,o,i,e])}("Escape",n);const i=Object(a.useCallback)(()=>{n()},[n]);return t&&r.a.createElement(r.a.Fragment,null,r.a.createElement("div",{className:X.a.overlay,"data-testid":"modal-overlay",onClick:i}),r.a.createElement("div",{className:X.a.modal,"data-testid":"modal"},e),o&&r.a.createElement("div",{className:X.a.modalButton},o))}Y.defaultProps={onClose:()=>{}},Y.propTypes={children:i.a.node.isRequired,isOpen:i.a.bool.isRequired,onClose:i.a.func,button:i.a.node};var $=Y,ee=n(6),te=n.n(ee);function ne({buttonsLeft:e,buttonsRight:t,children:n,header:a,isOpen:o,onClose:i,noPadding:s}){return r.a.createElement($,{isOpen:o,onClose:i,showCloseButton:!1},r.a.createElement("div",{className:te.a.container},r.a.createElement("h1",{className:te.a.modalHeader},a),r.a.createElement("div",{className:l([te.a.modalContent,{[te.a.noPadding]:s}])},n),r.a.createElement("div",{className:te.a.modalButtonsContainer},r.a.createElement("div",{className:te.a.modalButtons},e),r.a.createElement("div",{className:te.a.modalButtons},t))))}ne.displayName="ConfirmationModal",ne.defaultProps={buttonsLeft:[],buttonsRight:[],onClose:()=>{},noPadding:!1},ne.propTypes={buttonsLeft:i.a.arrayOf(i.a.element),buttonsRight:i.a.arrayOf(i.a.element),children:i.a.node.isRequired,header:i.a.string.isRequired,isOpen:i.a.bool.isRequired,noPadding:i.a.bool,onClose:i.a.func};var ae=ne,re=n(9),oe=n.n(re);function ie({children:e,layout:t,placement:n}){const a="center"===n.horizontal?"horizontalCenter":n.horizontal,o="center"===n.vertical?"verticalCenter":n.vertical;return r.a.createElement("div",{"data-testid":"floating-panel",className:l([oe.a.container,oe.a[a],oe.a[o],oe.a[t],{[oe.a.fixed]:"container"!==n.parent}])},e)}ie.defaultProps={layout:"column",placement:{horizontal:"center",vertical:"bottom",parent:"viewport"}},ie.propTypes={children:i.a.node,layout:i.a.oneOf(["column","row"]),placement:i.a.shape({horizontal:i.a.oneOf(["right","rightEdge","rightOnEdge","left","leftEdge","leftOnEdge","leftOnEdge","center"]),vertical:i.a.oneOf(["top","topEdge","bottom","bottomEdge","bottomOnEdge","center"]),parent:i.a.oneOf(["viewport","container"])})};var se=ie,le=n(15),ce=n.n(le);function de({src:e,alt:t,size:n,inverted:a}){return r.a.createElement("img",{className:l([ce.a.icon,ce.a[n],{[ce.a.inverted]:a}]),crossOrigin:"anonymous","data-testid":"icon",alt:t,src:e})}de.defaultProps={size:"medium",inverted:!1},de.propTypes={src:i.a.string.isRequired,alt:i.a.string,children:i.a.node,size:i.a.oneOf(["small","medium","large"]),inverted:i.a.bool};var ue=de,fe=n(4),pe=n.n(fe);function me({className:e,onClick:t,size:n,type:a,src:o,alt:i,disabled:s,inverted:c,noShadow:d,noBorder:u,isActive:f,transparent:p,rounded:m,offsetSides:y}){return r.a.createElement("button",{className:l([pe.a.container,pe.a[n],{[pe.a.inverted]:c,[pe.a.rounded]:m,[pe.a.active]:f,[pe.a.noShadow]:d,[pe.a.noBorder]:u,[pe.a.transparent]:p},y.map(e=>pe.a[`${e}Offset`]),e]),disabled:s,onClick:t,type:a,role:"button"},r.a.createElement(ue,{src:o,alt:i,size:n,inverted:c}))}me.defaultProps={size:"medium",disabled:!1,inverted:!1,isActive:!1,noShadow:!1,noBorder:!1,transparent:!1,rounded:!1,offsetSides:[]},me.propTypes={className:i.a.string,src:i.a.string.isRequired,alt:i.a.string.isRequired,isActive:i.a.bool,disabled:i.a.bool,inverted:i.a.bool,noShadow:i.a.bool,noBorder:i.a.bool,transparent:i.a.bool,rounded:i.a.bool,onClick:i.a.func,size:i.a.oneOf(["small","medium","large"]),type:i.a.oneOf(["submit","reset","button"]),offsetSides:i.a.arrayOf(["top","right","bottom","left"])};var ye=me,he=n(5),ve=n.n(he);function ge(){return(ge=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var a in n)Object.prototype.hasOwnProperty.call(n,a)&&(e[a]=n[a])}return e}).apply(this,arguments)}function be({as:e,className:t,src:n,alt:a,size:o,inverted:i,noShadow:s,noBorder:c,transparent:d,rounded:u,offsetSides:f,...p}){return r.a.createElement(e,ge({"data-testid":"icon-button-link",className:l([ve.a.container,ve.a[o],{[ve.a.inverted]:i,[ve.a.rounded]:u,[ve.a.noShadow]:s,[ve.a.noBorder]:c,[ve.a.transparent]:d},f.map(e=>ve.a[`${e}Offset`]),t])},p),r.a.createElement(ue,{src:n,alt:a,size:o,inverted:i}))}be.defaultProps={as:"a",size:"medium",inverted:!1,noShadow:!1,noBorder:!1,transparent:!1,rounded:!1,offsetSides:[]},be.propTypes={as:i.a.elementType,children:i.a.node,className:i.a.string,src:i.a.string.isRequired,alt:i.a.string.isRequired,inverted:i.a.bool,noShadow:i.a.bool,noBorder:i.a.bool,transparent:i.a.bool,rounded:i.a.bool,size:i.a.oneOf(["small","medium","large"]),offsetSides:i.a.arrayOf(["top","right","bottom","left"])};var Oe=be,Ee=n(7),_e=n.n(Ee);function we({src:e,alt:t,layout:n,srcWidth:a,srcHeight:o,children:i}){return i?r.a.createElement("div",{className:l([_e.a.container,_e.a.hasOverlay])},r.a.createElement("img",{className:l([_e.a.image,_e.a[n]]),crossOrigin:"anonymous","data-testid":"image",alt:t,src:e,width:a,height:o}),i&&r.a.createElement("div",{className:_e.a.overlay},i)):r.a.createElement("img",{className:l([_e.a.image,_e.a[n]]),crossOrigin:"anonymous","data-testid":"image",alt:t,src:e,width:a,height:o})}we.defaultProps={layout:"contain"},we.propTypes={src:i.a.string.isRequired,alt:i.a.string,children:i.a.node,srcWidth:i.a.number,srcHeight:i.a.number,layout:i.a.oneOf(["cover","contain","stretchHorizontally","stretchVertically"])};var ke=we,Ce=n(16),xe=n.n(Ce);function Pe({children:e,className:t,header:n}){return r.a.createElement("div",{className:l([xe.a.container,t])},n&&r.a.createElement("h3",{className:xe.a.header},n),r.a.createElement("ul",{className:xe.a.list},e))}Pe.propTypes={children:i.a.node.isRequired,className:i.a.string,header:i.a.string};var Se=Pe,Ne=n(12),ze=n.n(Ne);function Te({children:e,active:t,disabled:n,size:a,onClick:o}){return r.a.createElement("li",{className:l([ze.a.listViewItem])},r.a.createElement(f,{onClick:o,disabled:n,inverted:t,size:a,stretchHorizontally:!0,noShadow:!0,noBorder:!0},e))}Te.defaultProps={active:!1,disabled:!1,size:"medium"},Te.propTypes={children:i.a.node.isRequired,active:i.a.bool,disabled:i.a.bool,size:i.a.string,onClick:i.a.func};var qe=Te;function Re(){return(Re=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var a in n)Object.prototype.hasOwnProperty.call(n,a)&&(e[a]=n[a])}return e}).apply(this,arguments)}function Be({children:e,active:t,size:n,as:a,...o}){return r.a.createElement("li",{className:l([ze.a.listViewItem])},r.a.createElement(v,Re({as:a,inverted:t,size:n,stretchHorizontally:!0,noShadow:!0,noBorder:!0},o),e))}Be.defaultProps={active:!1,size:"medium",as:"a"},Be.propTypes={children:i.a.node.isRequired,as:i.a.elementType,active:i.a.bool,size:i.a.string,onClick:i.a.func};var je=Be,He=n(10),Le=n.n(He);function Ae({children:e,className:t,isOpen:n,placement:a,header:o}){return r.a.createElement("div",{className:l([Le.a.menu,Le.a[a.horizontal],Le.a[a.vertical],{[Le.a.open]:n},t])},o&&n&&r.a.createElement("h3",{className:Le.a.menuHeader},o),r.a.createElement("ul",null,n&&e))}Ae.defaultProps={isOpen:!0,placement:{horizontal:"left",vertical:"bottom"}},Ae.propTypes={children:i.a.node.isRequired,className:i.a.string,isOpen:i.a.bool,header:i.a.string,placement:i.a.shape({horizontal:i.a.oneOf(["right","left"]),vertical:i.a.oneOf(["top","bottom"])})};var Ie=Ae,Ve=n(21),Ke=n.n(Ve);function Qe({children:e,className:t},n){return r.a.createElement("div",{ref:n,className:l([Ke.a.menuContainer,t])},e)}var De=Object(a.forwardRef)(Qe),Ge=n(20),Fe=n.n(Ge);function Me({children:e,className:t,isActive:n,onClick:a}){return r.a.createElement("li",{className:l([Fe.a.menuItem,{[Fe.a.active]:n},t]),onClick:a},e)}Me.defaultProps={isActive:!1},Me.propTypes={children:i.a.node.isRequired,className:i.a.string,isActive:i.a.bool,onClick:i.a.func};var Ue=Me,We=n(22),Ze=n.n(We);function Je(){return(Je=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var a in n)Object.prototype.hasOwnProperty.call(n,a)&&(e[a]=n[a])}return e}).apply(this,arguments)}function Xe({as:e,children:t,className:n,...a}){return r.a.createElement(e,Je({"data-testid":"menu-link-item",className:l([Ze.a.menuLinkItem,n])},a),t)}Xe.defaultProps={as:"a"},Xe.propTypes={as:i.a.elementType,children:i.a.node,className:i.a.string};var Ye=Xe,$e=n(17),et=n.n($e);function tt({children:e,transparent:t,isFixed:n,onClick:a}){return r.a.createElement("div",{"data-testid":"overlay",className:l([et.a.overlay,{[et.a.transparent]:t,[et.a.fixed]:n}]),onClick:a},e)}tt.defaultProps={transparent:!1,isFixed:!1,onClick:()=>{}},tt.propTypes={children:i.a.arrayOf(i.a.node),transparent:i.a.bool,isFixed:i.a.bool,onClick:i.a.func};var nt=tt,at=n(18),rt=n.n(at);function ot({label:e,onChange:t,placeholder:n,value:o,name:i,type:s,size:c,autoFocus:d,inputRef:u}){const f=Object(a.useCallback)(e=>t(e.target.value),[t]);return r.a.createElement("label",{className:rt.a.textLabel},e,r.a.createElement("input",{"data-testid":"input",ref:u,className:l([rt.a.textInput,rt.a[c]]),onChange:u?void 0:f,placeholder:n,name:i,type:s,value:o,autoFocus:d}))}ot.defaultProps={type:"text",autoFocus:!1},ot.propTypes={label:i.a.string.isRequired,onChange:i.a.func,placeholder:i.a.string,value:i.a.string,name:i.a.string.isRequired,type:i.a.oneOf(["text","password","email"]),size:i.a.oneOf(["small","medium","large"]),autoFocus:i.a.bool,inputRef:i.a.oneOfType([i.a.func,i.a.shape({current:i.a.any})])};var it=ot,st=n(11),lt=n.n(st);function ct({children:e,image:t,buttons:n,onClick:a}){return r.a.createElement("div",{className:l([lt.a.toast]),onClick:a,"data-testid":"toast"},t&&r.a.createElement("img",{"data-testid":"toast-image",className:lt.a.toastImage,src:t.src,alt:t.alt}),r.a.createElement("div",{className:lt.a.toastContent},e),r.a.createElement("div",{className:lt.a.toastButtons},n))}ct.defaultProps={onClick:()=>{}},ct.propTypes={children:i.a.node,buttons:i.a.arrayOf(i.a.node),image:i.a.shape({alt:i.a.string.isRequired,src:i.a.string.isRequired}),onClick:i.a.func};var dt=ct,ut=n(23),ft=n.n(ut);function pt({children:e}){return r.a.createElement("div",{className:l([ft.a.toastContainer]),"data-testid":"toast-container"},e)}pt.propTypes={children:i.a.node};var mt=pt,yt=n(8),ht=n.n(yt);function vt({src:e,type:t,muted:n,loop:a,autoPlay:o,layout:i,children:s}){return s?r.a.createElement("div",{className:l([ht.a.container,ht.a.hasOverlay])},r.a.createElement("video",{"data-testid":"video",crossOrigin:"anonymous",className:l([ht.a.video,ht.a[i]]),src:e,type:t,muted:n,loop:a,autoPlay:o,playsInline:!0}),s&&r.a.createElement("div",{className:ht.a.overlay},s)):r.a.createElement("video",{"data-testid":"video",crossOrigin:"anonymous",className:l([ht.a.video,ht.a[i]]),src:e,type:t,muted:n,loop:a,autoPlay:o,playsInline:!0})}vt.defaultProps={muted:!0,loop:!0,autoPlay:!0,layout:"contain"},vt.propTypes={src:i.a.string.isRequired,type:i.a.string.isRequired,layout:i.a.oneOf(["cover","contain","stretchHorizontally","stretchVertically"]),autoPlay:i.a.bool,loop:i.a.bool,muted:i.a.bool,children:i.a.node};var gt=vt;function bt(e=!1){const[t,n]=Object(a.useState)("boolean"==typeof e&&e),r=()=>n(e=>!e);return r.on=()=>n(!0),r.off=()=>n(!1),[t,Object(a.useCallback)(r,[])]}function Ot(e){const t=Object(a.useRef)();return Object(a.useEffect)(()=>{const n=n=>{t.current&&!t.current.contains(n.target)&&e(n)};return document.addEventListener("click",n),document.addEventListener("touchstart",n),()=>{document.removeEventListener("click",n),document.removeEventListener("touchstart",n)}},[e]),t}}]));
|
|
1
|
+
!function(e,t){for(var n in t)e[n]=t[n]}(exports,function(e){var t={};function n(a){if(t[a])return t[a].exports;var r=t[a]={i:a,l:!1,exports:{}};return e[a].call(r.exports,r,r.exports,n),r.l=!0,r.exports}return n.m=e,n.c=t,n.d=function(e,t,a){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:a})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var a=Object.create(null);if(n.r(a),Object.defineProperty(a,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(a,r,function(t){return e[t]}.bind(null,r));return a},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=27)}([function(e,t,n){e.exports=n(32)()},function(e,t){e.exports=require("react")},function(e,t,n){"use strict";n.r(t),n.d(t,"default",(function(){return r}));var a=Array.isArray;function r(e){var t="";if("string"==typeof e||"number"==typeof e)return e||"";if(a(e))for(var n,o=0;o<e.length;o++)""!==(n=r(e[o]))&&(t+=(t&&" ")+n);else for(var o in e)e.hasOwnProperty(o)&&e[o]&&(t+=(t&&" ")+o);return t}},function(e,t,n){e.exports={container:"_2MPuJ3ApvrAvrewjSWGAA2",small:"lOkoan7dbp-goDtJVuK7B",large:"_2aG6zXqTEKVcvBaaniCNBy",rounded:"_2JX034qUTCoTdWC2ppA487",topOffset:"_1wpC-WXgL06QKxtPzOwNRK",rightOffset:"LIzrQC7poQT9jURBqMDKh",bottomOffset:"_2i_w5ULkUK7LVw5hEO97Ew",leftOffset:"_38eKlTQTV1YlnEe1GmNtQk",inverted:"_2NkZ50rkA3eZCysY9FAp-e",noShadow:"_3Uy5HZdvkWf7bilT0wxwVe",noBorder:"_2F4Hy9lq5OCrEpPZPh5xAJ",transparent:"_2u7qTMeE9D5rtcsEcSoAY3"}},function(e,t,n){e.exports={container:"_1uifmKNPDzdu5YDnhgwPQK",small:"pfHcYaew-HrHtTNuR4v7h",large:"_26Z9FH-CNPqf55ZRP1vnab",rounded:"_2q7WvROhNm3gsRIRaQQeaU",topOffset:"wZy_vulZkMbWSX0akcZHA",rightOffset:"_2jhhpm60_yPEfxQ-wazj-5",bottomOffset:"DnnrG7ZXmTIhmWUcs99m1",leftOffset:"_1YdCg7T6XjhmxwcjLNSEb-",inverted:"HV0R-lqwmyeqsS1Z8poZS",noShadow:"_1LPpt70Jjim6SfZe35G2kb",noBorder:"RkzSrGixM28JMat6IB5Lr",transparent:"_1KdXfY3Pk6tENYH81tWrps"}},function(e,t,n){e.exports={container:"kkgHoBQhFPsKj_x1ZFdRH",modalHeader:"_1WuvHD-GdXLrtqwa04W1qy",modalContent:"_27eUySQqvq5qloNClIjIST",noPadding:"_2gtBXL9PFSpHsW0A9xd55S",modalButtonsContainer:"_5gIpyF3X5thPQAnsAC4z9",modalButtons:"swsoCii1w4xNl7ioDVkO5"}},function(e,t,n){e.exports={container:"_2EQBfr5w8h1x1bq-2fp6wT",hasOverlay:"_3GRMpmGk_PqITcUv0Nfmt3",video:"_2tZfXkEhCkwAzfaG_BVn0B",cover:"_3OYHfbzaL3QHanWZBj8RxO",contain:"_3I_c7shcSrtG_FxvvU2IeE",stretchHorizontally:"_1Z7dL9uEd0Ksx3CkrZhsB8",stretchVertically:"_1zbrDYO0fYFJVc7xvsTYi6",overlay:"_2osXd7SkwF0Lh-2yiquYQM"}},function(e,t,n){e.exports={container:"a6NHO2CVVCfiniye2XLN-",row:"_3RSgB76rEBniPc2Ycr8Zbv",column:"_1JkX15igclnbm5sRScWVDY",fixed:"MMQ1yjEafWkYFVDHMpTbI",plain:"_3m2M_Narc5xwLay8HJljkc",transparent:"_1rfa49zhZxNifz64Oqb_6P",top:"_kUalnDeEfvzqAji0AMDo",topEdge:"W8JAIwLjO8JQGbviZpPQw",topOnEdge:"_3opJ7Eb6tj394uV8a57ixz",right:"_3-vbwjp0aPcLEV1Sx0ICgP",rightEdge:"_3XNFy5ZoMCoYBIabeGN4BQ",rightOnEdge:"_12c3CzUMQE8AG3AL8Hiki2",bottom:"_3geBENH5oErqGdt-QyHnPh",bottomEdge:"_3_saM4Gs32nRbIHHxIEbF6",bottomOnEdge:"_2PLE4dmGhncgk-lEnoU4kv",left:"_1iSBnyZgPeFUWoM4i6dSpU",leftEdge:"_1fX19qIOShn2o5uusRzTgs",leftOnEdge:"KBHDockuHTEOKMGOzadXi",horizontalCenter:"_31t6tHRJ5s-5DcDLFTKh1m",verticalCenter:"_2hq7fkDXHxrxz2t7LLg4_9"}},function(e,t,n){e.exports={menu:"_2ahi8JcnxGHrnZmD0xT9RL",top:"_3gpFTd1Fdx4EAfq170TGs7",right:"_1L5ATpM9GXy-SORFr0G6S4",left:"CYEJl39TkEfnKal3vtvz9",bottom:"_3zyp-NdTBeBDKvk26psZup",open:"_1iaaziZrVI_-E8D99WdNji",entrance:"_2fiKe4-X8PqcG4_9qeB3ZO",menuHeader:"_19nk1IMNS-u_YIQLlmYRtU"}},function(e,t,n){"use strict";n.r(t),n.d(t,"Icon",(function(){return u}));var a=n(1),r=n.n(a),o=n(0),i=n.n(o),s=n(2),l=n(14),c=n.n(l);function d({src:e,alt:t,size:n,inverted:a}){return r.a.createElement("img",{className:Object(s.default)([c.a.icon,c.a[n],{[c.a.inverted]:a}]),crossOrigin:"anonymous","data-testid":"icon",alt:t,src:e})}d.defaultProps={size:"medium",inverted:!1},d.propTypes={src:i.a.string.isRequired,alt:i.a.string,children:i.a.node,size:i.a.oneOf(["small","medium","large"]),inverted:i.a.bool};var u=d},function(e,t,n){e.exports={toast:"_3sBs_ERXV3k0SQMGUy2Wj4",entrance:"_1_xjtLeUMoEXNA-qOEZhcx",toastContent:"_10lBETCU3UNFR8py1q1q-h",toastImage:"_3Ci0wpObk6oqf7dwkHsFWo",toastButtons:"FEWDnDsP-9A9JHG20qBS5"}},function(e,t,n){e.exports={listViewItem:"_2LgjqABwjHtpbGzkQQkqiQ"}},function(e,t,n){e.exports={colorSwatch:"_13ss1xsMNizvEgP_hxEV8B",selected:"L6fAt6RZYz_z3wPbjZExH",srOnly:"_3vJ5mxpzaYsKaxf-8tB31x"}},function(e,t,n){e.exports={overlay:"_1yxCbQJqStUvytvKEeNC3n",modal:"D8SjBx3ikz636YubnHYAY",modalButton:"o8VRVxMrs1xXavADyxjLG"}},function(e,t,n){e.exports={icon:"uh8zkmQp5ybk5WJSla69D",small:"_9DICtqmQSnLPjm1XI7YVs",large:"_2rgucAH8Bnli-cmjz9i2C2",inverted:"I-eI5q8rd2bSp9B-FhUza"}},function(e,t,n){e.exports={container:"CPHNd8osKjLvQDEQUErux",header:"_1e7hHSVo59e8yQnhc9B6Id",list:"_1w1W8E6_Hzfes3WZTYZaJK"}},function(e,t,n){e.exports={overlay:"_2QgpyrDcUQyKYESC5DXXJr",transparent:"_28fVmoxp69OPr88Ew0zVeN",fixed:"_2sU3515EbFFgeP1yK2Zubz"}},function(e,t,n){e.exports={textInput:"_2wfqOzWBoAn_K7goqvjXJe",small:"_1a4QOVJB0zW3Urf_5hqNjj",large:"_3DQ52Qd_1K4_VxxVv728SX",textLabel:"_31oAAOE_dvGoAz9qJmo8EG"}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var a=n(28);Object.defineProperty(t,"Button",{enumerable:!0,get:function(){return a.default}})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var a=n(30);Object.defineProperty(t,"ButtonLink",{enumerable:!0,get:function(){return a.default}})},function(e,t,n){"use strict";n.r(t),n.d(t,"Modal",(function(){return R}));var a=n(1),r=n.n(a),o=n(0),i=n.n(o),s="undefined"!=typeof navigator&&navigator.userAgent.toLowerCase().indexOf("firefox")>0;function l(e,t,n){e.addEventListener?e.addEventListener(t,n,!1):e.attachEvent&&e.attachEvent("on".concat(t),(function(){n(window.event)}))}function c(e,t){for(var n=t.slice(0,t.length-1),a=0;a<n.length;a++)n[a]=e[n[a].toLowerCase()];return n}function d(e){"string"!=typeof e&&(e="");for(var t=(e=e.replace(/\s/g,"")).split(","),n=t.lastIndexOf("");n>=0;)t[n-1]+=",",t.splice(n,1),n=t.lastIndexOf("");return t}for(var u={backspace:8,tab:9,clear:12,enter:13,return:13,esc:27,escape:27,space:32,left:37,up:38,right:39,down:40,del:46,delete:46,ins:45,insert:45,home:36,end:35,pageup:33,pagedown:34,capslock:20,"⇪":20,",":188,".":190,"/":191,"`":192,"-":s?173:189,"=":s?61:187,";":s?59:186,"'":222,"[":219,"]":221,"\\":220},f={"⇧":16,shift:16,"⌥":18,alt:18,option:18,"⌃":17,ctrl:17,control:17,"⌘":91,cmd:91,command:91},p={16:"shiftKey",18:"altKey",17:"ctrlKey",91:"metaKey",shiftKey:16,ctrlKey:17,altKey:18,metaKey:91},m={16:!1,18:!1,17:!1,91:!1},v={},y=1;y<20;y++)u["f".concat(y)]=111+y;var h=[],g="all",b=[],O=function(e){return u[e.toLowerCase()]||f[e.toLowerCase()]||e.toUpperCase().charCodeAt(0)};function _(e){g=e||"all"}function E(){return g||"all"}var w=function(e){var t=e.key,n=e.scope,a=e.method,r=e.splitKey,o=void 0===r?"+":r;d(t).forEach((function(e){var t=e.split(o),r=t.length,i=t[r-1],s="*"===i?"*":O(i);if(v[s]){n||(n=E());var l=r>1?c(f,t):[];v[s]=v[s].map((function(e){return(!a||e.method===a)&&e.scope===n&&function(e,t){for(var n=e.length>=t.length?e:t,a=e.length>=t.length?t:e,r=!0,o=0;o<n.length;o++)-1===a.indexOf(n[o])&&(r=!1);return r}(e.mods,l)?{}:e}))}}))};function k(e,t,n){var a;if(t.scope===n||"all"===t.scope){for(var r in a=t.mods.length>0,m)Object.prototype.hasOwnProperty.call(m,r)&&(!m[r]&&t.mods.indexOf(+r)>-1||m[r]&&-1===t.mods.indexOf(+r))&&(a=!1);(0!==t.mods.length||m[16]||m[18]||m[17]||m[91])&&!a&&"*"!==t.shortcut||!1===t.method(e,t)&&(e.preventDefault?e.preventDefault():e.returnValue=!1,e.stopPropagation&&e.stopPropagation(),e.cancelBubble&&(e.cancelBubble=!0))}}function C(e){var t=v["*"],n=e.keyCode||e.which||e.charCode;if(P.filter.call(this,e)){if(93!==n&&224!==n||(n=91),-1===h.indexOf(n)&&229!==n&&h.push(n),["ctrlKey","altKey","shiftKey","metaKey"].forEach((function(t){var n=p[t];e[t]&&-1===h.indexOf(n)?h.push(n):!e[t]&&h.indexOf(n)>-1?h.splice(h.indexOf(n),1):"metaKey"===t&&e[t]&&3===h.length&&(e.ctrlKey||e.shiftKey||e.altKey||(h=h.slice(h.indexOf(n))))})),n in m){for(var a in m[n]=!0,f)f[a]===n&&(P[a]=!0);if(!t)return}for(var r in m)Object.prototype.hasOwnProperty.call(m,r)&&(m[r]=e[p[r]]);e.getModifierState&&(!e.altKey||e.ctrlKey)&&e.getModifierState("AltGraph")&&(-1===h.indexOf(17)&&h.push(17),-1===h.indexOf(18)&&h.push(18),m[17]=!0,m[18]=!0);var o=E();if(t)for(var i=0;i<t.length;i++)t[i].scope===o&&("keydown"===e.type&&t[i].keydown||"keyup"===e.type&&t[i].keyup)&&k(e,t[i],o);if(n in v)for(var s=0;s<v[n].length;s++)if(("keydown"===e.type&&v[n][s].keydown||"keyup"===e.type&&v[n][s].keyup)&&v[n][s].key){for(var l=v[n][s],c=l.splitKey,d=l.key.split(c),u=[],y=0;y<d.length;y++)u.push(O(d[y]));u.sort().join("")===h.sort().join("")&&k(e,l,o)}}}function P(e,t,n){h=[];var a=d(e),r=[],o="all",i=document,s=0,u=!1,p=!0,y="+";for(void 0===n&&"function"==typeof t&&(n=t),"[object Object]"===Object.prototype.toString.call(t)&&(t.scope&&(o=t.scope),t.element&&(i=t.element),t.keyup&&(u=t.keyup),void 0!==t.keydown&&(p=t.keydown),"string"==typeof t.splitKey&&(y=t.splitKey)),"string"==typeof t&&(o=t);s<a.length;s++)r=[],(e=a[s].split(y)).length>1&&(r=c(f,e)),(e="*"===(e=e[e.length-1])?"*":O(e))in v||(v[e]=[]),v[e].push({keyup:u,keydown:p,scope:o,mods:r,shortcut:a[s],method:n,key:a[s],splitKey:y});void 0!==i&&!function(e){return b.indexOf(e)>-1}(i)&&window&&(b.push(i),l(i,"keydown",(function(e){C(e)})),l(window,"focus",(function(){h=[]})),l(i,"keyup",(function(e){C(e),function(e){var t=e.keyCode||e.which||e.charCode,n=h.indexOf(t);if(n>=0&&h.splice(n,1),e.key&&"meta"===e.key.toLowerCase()&&h.splice(0,h.length),93!==t&&224!==t||(t=91),t in m)for(var a in m[t]=!1,f)f[a]===t&&(P[a]=!1)}(e)})))}var x={setScope:_,getScope:E,deleteScope:function(e,t){var n,a;for(var r in e||(e=E()),v)if(Object.prototype.hasOwnProperty.call(v,r))for(n=v[r],a=0;a<n.length;)n[a].scope===e?n.splice(a,1):a++;E()===e&&_(t||"all")},getPressedKeyCodes:function(){return h.slice(0)},isPressed:function(e){return"string"==typeof e&&(e=O(e)),-1!==h.indexOf(e)},filter:function(e){var t=e.target||e.srcElement,n=t.tagName,a=!0;return!t.isContentEditable&&("INPUT"!==n&&"TEXTAREA"!==n&&"SELECT"!==n||t.readOnly)||(a=!1),a},unbind:function(e){if(e){if(Array.isArray(e))e.forEach((function(e){e.key&&w(e)}));else if("object"==typeof e)e.key&&w(e);else if("string"==typeof e){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;a<t;a++)n[a-1]=arguments[a];var r=n[0],o=n[1];"function"==typeof r&&(o=r,r=""),w({key:e,scope:r,method:o,splitKey:"+"})}}else Object.keys(v).forEach((function(e){return delete v[e]}))}};for(var j in x)Object.prototype.hasOwnProperty.call(x,j)&&(P[j]=x[j]);if("undefined"!=typeof window){var S=window.hotkeys;P.noConflict=function(e){return e&&window.hotkeys===P&&(window.hotkeys=S),P},window.hotkeys=P}var N=P;var z=n(13),T=n.n(z);function q({children:e,isOpen:t,onClose:n,button:o}){!function(e,t,n,r){n instanceof Array&&(r=n,n=void 0);const{enableOnTags:o,filter:i}=n||{},s=Object(a.useRef)(null),l=Object(a.useCallback)((e,n)=>(null===s.current||document.activeElement===s.current)&&(t(e,n),!0),r?[s,...r]:[s]);Object(a.useEffect)(()=>(n&&n.enableOnTags&&(N.filter=({target:e,srcElement:t})=>{const n=e&&e.tagName||t&&t.tagName;return Boolean(n&&o&&o.includes(n))}),i&&(N.filter=i),N(e,n||{},l),()=>N.unbind(e,l)),[l,n,o,i,e])}("Escape",n);const i=Object(a.useCallback)(()=>{n()},[n]);return t&&r.a.createElement(r.a.Fragment,null,r.a.createElement("div",{className:T.a.overlay,"data-testid":"modal-overlay",onClick:i}),r.a.createElement("div",{className:T.a.modal,"data-testid":"modal"},e),o&&r.a.createElement("div",{className:T.a.modalButton},o))}q.defaultProps={onClose:()=>{}},q.propTypes={children:i.a.node.isRequired,isOpen:i.a.bool.isRequired,onClose:i.a.func,button:i.a.node};var R=q},function(e,t,n){"use strict";n.r(t),n.d(t,"ColorSwatch",(function(){return u}));var a=n(1),r=n.n(a),o=n(0),i=n.n(o),s=n(2),l=n(12),c=n.n(l);function d({color:e,isSelected:t,onClick:n}){return r.a.createElement("button",{className:Object(s.default)([c.a.colorSwatch,{[c.a.selected]:t}]),"data-testid":"color-swatch",disabled:t,onClick:n,style:{backgroundColor:e.hexCode}},r.a.createElement("span",{className:c.a.srOnly},`Select ${e.label} color`))}d.defaultProps={isSelected:!1},d.propTypes={color:i.a.shape({hexCode:i.a.string.isRequired,label:i.a.string.isRequired}).isRequired,isSelected:i.a.bool,onClick:i.a.func.isRequired};var u=d},function(e,t,n){e.exports={colorPicker:"_31FwH_nWr72k3pugApJub9",horizontal:"Qa-BpuTT2kxpmV_AQgCjH",vertical:"_2x4SAnbopyZmkycWLC0EXk"}},function(e,t,n){e.exports={menuItem:"_3gGczRJwrNenXTBLQnC29M",active:"_2j1ilUNkbFGSgulXSoHAdP"}},function(e,t,n){e.exports={menuContainer:"_2-SFwsppEuobBJkAwwQrFC"}},function(e,t,n){e.exports={menuLinkItem:"_2Dy1LTfScGZtSb_5Lud-lU",active:"_2Uws7bj3yejmn1k7XiyKfQ",menuItem:"_2lI7S2t5zWhQsvg_XnQ7--"}},function(e,t,n){e.exports={toastContainer:"_3F8cJU1wmKmbrjidg-O3zp"}},function(e,t,n){"use strict";var a=this&&this.__createBinding||(Object.create?function(e,t,n,a){void 0===a&&(a=n),Object.defineProperty(e,a,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,a){void 0===a&&(a=n),e[a]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||t.hasOwnProperty(n)||a(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),r(n(18),t),r(n(19),t),r(n(41),t),r(n(21),t),r(n(42),t),r(n(43),t),r(n(9),t),r(n(44),t),r(n(45),t),r(n(34),t),r(n(38),t),r(n(37),t),r(n(20),t),r(n(46),t),r(n(47),t),r(n(39),t),r(n(48),t),r(n(40),t)},function(e,t,n){"use strict";var a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var r=a(n(1)),o=a(n(2)),i=a(n(29));t.default=function(e){var t,n=e.children,a=e.className,s=e.onClick,l=e.disabled,c=void 0!==l&&l,d=e.inverted,u=void 0!==d&&d,f=e.rounded,p=void 0!==f&&f,m=e.noShadow,v=void 0!==m&&m,y=e.noPadding,h=void 0!==y&&y,g=e.noBorder,b=void 0!==g&&g,O=e.transparent,_=void 0!==O&&O,E=e.stretchHorizontally,w=void 0!==E&&E,k=e.stretchVertically,C=void 0!==k&&k,P=e.offsetSides,x=void 0===P?[]:P,j=e.align,S=void 0===j?"center":j,N=e.size,z=void 0===N?"medium":N,T=e.type;return r.default.createElement("button",{className:o.default([i.default.container,i.default[z],i.default[S],(t={},t[i.default.inverted]=u,t[i.default.rounded]=p,t[i.default.noShadow]=v,t[i.default.noPadding]=h,t[i.default.noBorder]=b,t[i.default.transparent]=_,t[i.default.stretchHorizontally]=w,t[i.default.stretchVertically]=C,t),x.map((function(e){return i.default[e+"Offset"]})),a]),disabled:c,onClick:s,type:T,role:"button"},"string"!=typeof n&&Array.isArray(n)&&n.length?r.default.createElement("div",{className:i.default.content},n):n)}},function(e,t,n){e.exports={container:"M9_egEC8msu135oPGVdIf",left:"RSRbTg8Yc4-s8k6qU_vCg",small:"_1bNQhbZwLA8ErLmwdQitJe",large:"_2DwLFD-4gDz9HEAAiwWJPq",inverted:"_31CfmTUYpEh1hZvctQ9lK4",rounded:"_2bq31qKD7B6r6CTCOL3drW",rightOffset:"_2eUCWQMETOgiXuib7XfThZ",leftOffset:"G8o_OMDUFsEQ1ytU7oUYG",noShadow:"_2vknhUFAIGmjXs7tgkAC7I",noBorder:"_2p0GpdmPKIFCUes584YHeV",transparent:"_8vMlSRH_9HoRGJh8Swka",stretchHorizontally:"nZ9rOZwzGXVI3ayRgA3QC",stretchVertically:"_1y8ifb95spTLWGAmsbw1R2",noPadding:"_3cO49JELNKtGyaFxRlshyO",content:"o8d7YoT83umePPSFzK31Y"}},function(e,t,n){"use strict";var a=this&&this.__assign||function(){return(a=Object.assign||function(e){for(var t,n=1,a=arguments.length;n<a;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e}).apply(this,arguments)},r=this&&this.__rest||function(e,t){var n={};for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&t.indexOf(a)<0&&(n[a]=e[a]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(a=Object.getOwnPropertySymbols(e);r<a.length;r++)t.indexOf(a[r])<0&&Object.prototype.propertyIsEnumerable.call(e,a[r])&&(n[a[r]]=e[a[r]])}return n},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var i=o(n(1)),s=o(n(2)),l=o(n(31));t.default=function(e){var t,n=e.as,o=e.children,c=e.className,d=e.size,u=e.inverted,f=void 0!==u&&u,p=e.rounded,m=void 0!==p&&p,v=e.transparent,y=void 0!==v&&v,h=e.noShadow,g=void 0!==h&&h,b=e.noPadding,O=void 0!==b&&b,_=e.noBorder,E=void 0!==_&&_,w=e.stretchHorizontally,k=void 0!==w&&w,C=e.stretchVertically,P=void 0!==C&&C,x=e.offsetSides,j=void 0===x?[]:x,S=e.align,N=void 0===S?"center":S,z=r(e,["as","children","className","size","inverted","rounded","transparent","noShadow","noPadding","noBorder","stretchHorizontally","stretchVertically","offsetSides","align"]);return void 0===n&&(n="a"),i.default.createElement(n,a({"data-testid":"button-link",className:s.default([l.default.container,l.default[d],l.default[N],(t={},t[l.default.inverted]=f,t[l.default.rounded]=m,t[l.default.noShadow]=g,t[l.default.noPadding]=O,t[l.default.noBorder]=E,t[l.default.transparent]=y,t[l.default.stretchHorizontally]=k,t[l.default.stretchVertically]=P,t),j.map((function(e){return l.default[e+"Offset"]})),c])},z),"string"!=typeof o&&Array.isArray(o)&&o.length?i.default.createElement("div",{className:l.default.content},o):o)}},function(e,t,n){e.exports={container:"_3eVBgmkG6hjVokm5Xy4UMQ",left:"_3F6hMEQkJgywUkt1fwmTsy",small:"_8I9fhnzbMvCrl5KPj9f0",large:"_3_SwqmDWOGv877iHACnJpC",inverted:"_1xOa3CBRHzPCRWNsiJ65aC",rounded:"_3UGlOItzKokVg0wGH0eIlX",rightOffset:"_13tPsp6dfA1Twb1MMHRiGT",leftOffset:"NI5n6bEVRCQPy6AOAsQ1q",noShadow:"gIY9iuvC2VWxcvwwCmaJJ",transparent:"_3Xflh3Q1AZnTOD0ctquI6w",stretchHorizontally:"_2FbRDEGS_7eMUcJ0ViOBU0",stretchVertically:"_1rPm-t5ZWwrS-L9l7z66jb",noPadding:"_3J8DeaLq5iw3Ap7qKJkP9B",noBorder:"_3cEQs-K_mShFNDgDP32Wd6",content:"_1VTyfTwVloAcZwYCZyslsJ"}},function(e,t,n){"use strict";var a=n(33);function r(){}function o(){}o.resetWarningCache=r,e.exports=function(){function e(e,t,n,r,o,i){if(i!==a){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function t(){return e}e.isRequired=e;var n={array:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:o,resetWarningCache:r};return n.PropTypes=n,n}},function(e,t,n){"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var a=n(35);Object.defineProperty(t,"Image",{enumerable:!0,get:function(){return a.default}})},function(e,t,n){"use strict";var a=this&&this.__createBinding||(Object.create?function(e,t,n,a){void 0===a&&(a=n),Object.defineProperty(e,a,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,a){void 0===a&&(a=n),e[a]=t[n]}),r=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)"default"!==n&&Object.hasOwnProperty.call(e,n)&&a(t,e,n);return r(t,e),t},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var s=o(n(1)),l=i(n(2)),c=i(n(36));t.default=function(e){var t=e.src,n=e.alt,a=e.srcWidth,r=e.srcHeight,o=e.children,i=e.layout,d=void 0===i?"contain":i;return o?s.createElement("div",{className:l.default([c.default.container,c.default.hasOverlay])},s.createElement("img",{className:l.default([c.default.image,c.default[d]]),crossOrigin:"anonymous","data-testid":"image",alt:n,src:t,width:a,height:r}),o&&s.createElement("div",{className:c.default.overlay},o)):s.createElement("img",{className:l.default([c.default.image,c.default[d]]),crossOrigin:"anonymous","data-testid":"image",alt:n,src:t,width:a,height:r})}},function(e,t,n){e.exports={container:"_3zwln8xpkZwpTY5i6J7bOD",hasOverlay:"_2el8xWqqf3w4S3x0s2D9xl",overlay:"Eg3imfbXdI6U6rfRE0-qO",image:"t1897dfts_pqHzSnwmWBW",cover:"_1-R_HDjO6qNnywcNiS8byD",contain:"_3mDpCjHJ2g66e0w4R2EZkG",stretchHorizontally:"_3yEtH7cqpUlVFaGiWG129w",stretchVertically:"lyiBs6OBxvREnwIR0ls2C"}},function(e,t,n){"use strict";n.r(t),n.d(t,"Menu",(function(){return u})),n.d(t,"MenuContainer",(function(){return v})),n.d(t,"MenuItem",(function(){return b})),n.d(t,"MenuLinkItem",(function(){return k}));var a=n(1),r=n.n(a),o=n(0),i=n.n(o),s=n(2),l=n(8),c=n.n(l);function d({children:e,className:t,isOpen:n,placement:a,header:o}){return r.a.createElement("div",{className:Object(s.default)([c.a.menu,c.a[a.horizontal],c.a[a.vertical],{[c.a.open]:n},t])},o&&n&&r.a.createElement("h3",{className:c.a.menuHeader},o),r.a.createElement("ul",null,n&&e))}d.defaultProps={isOpen:!0,placement:{horizontal:"left",vertical:"bottom"}},d.propTypes={children:i.a.node.isRequired,className:i.a.string,isOpen:i.a.bool,header:i.a.string,placement:i.a.shape({horizontal:i.a.oneOf(["right","left"]),vertical:i.a.oneOf(["top","bottom"])})};var u=d,f=n(24),p=n.n(f);function m({children:e,className:t},n){return r.a.createElement("div",{ref:n,className:Object(s.default)([p.a.menuContainer,t])},e)}var v=Object(a.forwardRef)(m),y=n(23),h=n.n(y);function g({children:e,className:t,isActive:n,onClick:a}){return r.a.createElement("li",{className:Object(s.default)([h.a.menuItem,{[h.a.active]:n},t]),onClick:a},e)}g.defaultProps={isActive:!1},g.propTypes={children:i.a.node.isRequired,className:i.a.string,isActive:i.a.bool,onClick:i.a.func};var b=g,O=n(25),_=n.n(O);function E(){return(E=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var a in n)Object.prototype.hasOwnProperty.call(n,a)&&(e[a]=n[a])}return e}).apply(this,arguments)}function w({as:e,children:t,className:n,...a}){return r.a.createElement(e,E({"data-testid":"menu-link-item",className:Object(s.default)([_.a.menuLinkItem,n])},a),t)}w.defaultProps={as:"a"},w.propTypes={as:i.a.elementType,children:i.a.node,className:i.a.string};var k=w},function(e,t,n){"use strict";n.r(t),n.d(t,"ListView",(function(){return u})),n.d(t,"ListViewItem",(function(){return y})),n.d(t,"ListViewLinkItem",(function(){return O}));var a=n(1),r=n.n(a),o=n(0),i=n.n(o),s=n(2),l=n(15),c=n.n(l);function d({children:e,className:t,header:n}){return r.a.createElement("div",{className:Object(s.default)([c.a.container,t])},n&&r.a.createElement("h3",{className:c.a.header},n),r.a.createElement("ul",{className:c.a.list},e))}d.propTypes={children:i.a.node.isRequired,className:i.a.string,header:i.a.string};var u=d,f=n(18),p=n(11),m=n.n(p);function v({children:e,active:t,disabled:n,transparent:a,noPadding:o,size:i,align:l,onClick:c}){return r.a.createElement("li",{className:Object(s.default)([m.a.listViewItem])},r.a.createElement(f.Button,{onClick:c,disabled:n,inverted:t,transparent:a,noPadding:o,align:l,size:i,stretchHorizontally:!0,noShadow:!0,noBorder:!0},e))}v.defaultProps={active:!1,transparent:!1,noPadding:!1,disabled:!1,size:"medium",align:"center"},v.propTypes={children:i.a.node.isRequired,active:i.a.bool,disabled:i.a.bool,transparent:i.a.bool,noPadding:i.a.bool,size:i.a.string,align:i.a.oneOf(["left","center"]),onClick:i.a.func};var y=v,h=n(19);function g(){return(g=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var a in n)Object.prototype.hasOwnProperty.call(n,a)&&(e[a]=n[a])}return e}).apply(this,arguments)}function b({children:e,active:t,transparent:n,noPadding:a,size:o,align:i,as:l,...c}){return r.a.createElement("li",{className:Object(s.default)([m.a.listViewItem])},r.a.createElement(h.ButtonLink,g({as:l,inverted:t,transparent:n,noPadding:a,align:i,size:o,stretchHorizontally:!0,noShadow:!0,noBorder:!0},c),e))}b.defaultProps={active:!1,transparent:!1,noPadding:!1,size:"medium",align:"center",as:"a"},b.propTypes={children:i.a.node.isRequired,as:i.a.elementType,active:i.a.bool,transparent:i.a.bool,noPadding:i.a.bool,align:i.a.oneOf(["left","center"]),size:i.a.string,onClick:i.a.func};var O=b},function(e,t,n){"use strict";n.r(t),n.d(t,"Toast",(function(){return u})),n.d(t,"ToastContainer",(function(){return v}));var a=n(1),r=n.n(a),o=n(0),i=n.n(o),s=n(2),l=n(10),c=n.n(l);function d({children:e,image:t,buttons:n,onClick:a}){return r.a.createElement("div",{className:Object(s.default)([c.a.toast]),onClick:a,"data-testid":"toast"},t&&r.a.createElement("img",{"data-testid":"toast-image",className:c.a.toastImage,src:t.src,alt:t.alt}),r.a.createElement("div",{className:c.a.toastContent},e),r.a.createElement("div",{className:c.a.toastButtons},n))}d.defaultProps={onClick:()=>{}},d.propTypes={children:i.a.node,buttons:i.a.arrayOf(i.a.node),image:i.a.shape({alt:i.a.string.isRequired,src:i.a.string.isRequired}),onClick:i.a.func};var u=d,f=n(26),p=n.n(f);function m({children:e}){return r.a.createElement("div",{className:Object(s.default)([p.a.toastContainer]),"data-testid":"toast-container"},e)}m.propTypes={children:i.a.node};var v=m},function(e,t,n){"use strict";n.r(t),n.d(t,"useToggle",(function(){return r})),n.d(t,"useOutsideClick",(function(){return o}));var a=n(1);function r(e=!1){const[t,n]=Object(a.useState)("boolean"==typeof e&&e),r=()=>n(e=>!e);return r.on=()=>n(!0),r.off=()=>n(!1),[t,Object(a.useCallback)(r,[])]}function o(e){const t=Object(a.useRef)();return Object(a.useEffect)(()=>{const n=n=>{t.current&&!t.current.contains(n.target)&&e(n)};return document.addEventListener("click",n),document.addEventListener("touchstart",n),()=>{document.removeEventListener("click",n),document.removeEventListener("touchstart",n)}},[e]),t}},function(e,t,n){"use strict";n.r(t),n.d(t,"ColorPicker",(function(){return f}));var a=n(1),r=n.n(a),o=n(2),i=n(0),s=n.n(i),l=n(21),c=n(22),d=n.n(c);function u({colors:e,direction:t,onSelect:n,selectedColor:a}){return r.a.createElement("div",{className:Object(o.default)([d.a.colorPicker,d.a[t]])},e.map(e=>r.a.createElement(l.ColorSwatch,{key:e.key,color:e,isSelected:e===a,onClick:()=>n(e)})))}u.defaultProps={direction:"vertical"},u.propTypes={direction:s.a.oneOf(["horizontal","vertical"]),colors:s.a.arrayOf(s.a.shape({hexCode:s.a.string.isRequired,key:s.a.string.isRequired,label:s.a.string.isRequired})).isRequired,onSelect:s.a.func.isRequired,selectedColor:s.a.shape({hexCode:s.a.string.isRequired,key:s.a.string.isRequired,label:s.a.string.isRequired})};var f=u},function(e,t,n){"use strict";n.r(t),n.d(t,"ConfirmationModal",(function(){return f}));var a=n(1),r=n.n(a),o=n(0),i=n.n(o),s=n(2),l=n(20),c=n(5),d=n.n(c);function u({buttonsLeft:e,buttonsRight:t,children:n,header:a,isOpen:o,onClose:i,noPadding:c}){return r.a.createElement(l.Modal,{isOpen:o,onClose:i,showCloseButton:!1},r.a.createElement("div",{className:d.a.container},r.a.createElement("h1",{className:d.a.modalHeader},a),r.a.createElement("div",{className:Object(s.default)([d.a.modalContent,{[d.a.noPadding]:c}])},n),r.a.createElement("div",{className:d.a.modalButtonsContainer},r.a.createElement("div",{className:d.a.modalButtons},e),r.a.createElement("div",{className:d.a.modalButtons},t))))}u.displayName="ConfirmationModal",u.defaultProps={buttonsLeft:[],buttonsRight:[],onClose:()=>{},noPadding:!1},u.propTypes={buttonsLeft:i.a.arrayOf(i.a.element),buttonsRight:i.a.arrayOf(i.a.element),children:i.a.node.isRequired,header:i.a.string.isRequired,isOpen:i.a.bool.isRequired,noPadding:i.a.bool,onClose:i.a.func};var f=u},function(e,t,n){"use strict";n.r(t),n.d(t,"FloatingPanel",(function(){return u}));var a=n(1),r=n.n(a),o=n(0),i=n.n(o),s=n(2),l=n(7),c=n.n(l);function d({children:e,layout:t,placement:n}){const a="center"===n.horizontal?"horizontalCenter":n.horizontal,o="center"===n.vertical?"verticalCenter":n.vertical;return r.a.createElement("div",{"data-testid":"floating-panel",className:Object(s.default)([c.a.container,c.a[a],c.a[o],c.a[t],{[c.a.fixed]:"container"!==n.parent}])},e)}d.defaultProps={layout:"column",placement:{horizontal:"center",vertical:"bottom",parent:"viewport"}},d.propTypes={children:i.a.node,layout:i.a.oneOf(["column","row"]),placement:i.a.shape({horizontal:i.a.oneOf(["right","rightEdge","rightOnEdge","left","leftEdge","leftOnEdge","leftOnEdge","center"]),vertical:i.a.oneOf(["top","topEdge","bottom","bottomEdge","bottomOnEdge","center"]),parent:i.a.oneOf(["viewport","container"])})};var u=d},function(e,t,n){"use strict";n.r(t),n.d(t,"IconButton",(function(){return f}));var a=n(1),r=n.n(a),o=n(0),i=n.n(o),s=n(2),l=n(9),c=n(3),d=n.n(c);function u({className:e,onClick:t,size:n,type:a,src:o,alt:i,disabled:c,inverted:u,noShadow:f,noBorder:p,isActive:m,transparent:v,rounded:y,offsetSides:h}){return r.a.createElement("button",{className:Object(s.default)([d.a.container,d.a[n],{[d.a.inverted]:u,[d.a.rounded]:y,[d.a.active]:m,[d.a.noShadow]:f,[d.a.noBorder]:p,[d.a.transparent]:v},h.map(e=>d.a[`${e}Offset`]),e]),disabled:c,onClick:t,type:a,role:"button"},r.a.createElement(l.Icon,{src:o,alt:i,size:n,inverted:u}))}u.defaultProps={size:"medium",disabled:!1,inverted:!1,isActive:!1,noShadow:!1,noBorder:!1,transparent:!1,rounded:!1,offsetSides:[]},u.propTypes={className:i.a.string,src:i.a.string.isRequired,alt:i.a.string.isRequired,isActive:i.a.bool,disabled:i.a.bool,inverted:i.a.bool,noShadow:i.a.bool,noBorder:i.a.bool,transparent:i.a.bool,rounded:i.a.bool,onClick:i.a.func,size:i.a.oneOf(["small","medium","large"]),type:i.a.oneOf(["submit","reset","button"]),offsetSides:i.a.arrayOf(["top","right","bottom","left"])};var f=u},function(e,t,n){"use strict";n.r(t),n.d(t,"IconButtonLink",(function(){return p}));var a=n(1),r=n.n(a),o=n(0),i=n.n(o),s=n(2),l=n(9),c=n(4),d=n.n(c);function u(){return(u=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var a in n)Object.prototype.hasOwnProperty.call(n,a)&&(e[a]=n[a])}return e}).apply(this,arguments)}function f({as:e,className:t,src:n,alt:a,size:o,inverted:i,noShadow:c,noBorder:f,transparent:p,rounded:m,offsetSides:v,...y}){return r.a.createElement(e,u({"data-testid":"icon-button-link",className:Object(s.default)([d.a.container,d.a[o],{[d.a.inverted]:i,[d.a.rounded]:m,[d.a.noShadow]:c,[d.a.noBorder]:f,[d.a.transparent]:p},v.map(e=>d.a[`${e}Offset`]),t])},y),r.a.createElement(l.Icon,{src:n,alt:a,size:o,inverted:i}))}f.defaultProps={as:"a",size:"medium",inverted:!1,noShadow:!1,noBorder:!1,transparent:!1,rounded:!1,offsetSides:[]},f.propTypes={as:i.a.elementType,children:i.a.node,className:i.a.string,src:i.a.string.isRequired,alt:i.a.string.isRequired,inverted:i.a.bool,noShadow:i.a.bool,noBorder:i.a.bool,transparent:i.a.bool,rounded:i.a.bool,size:i.a.oneOf(["small","medium","large"]),offsetSides:i.a.arrayOf(["top","right","bottom","left"])};var p=f},function(e,t,n){"use strict";n.r(t),n.d(t,"Overlay",(function(){return u}));var a=n(1),r=n.n(a),o=n(0),i=n.n(o),s=n(2),l=n(16),c=n.n(l);function d({children:e,transparent:t,isFixed:n,onClick:a}){return r.a.createElement("div",{"data-testid":"overlay",className:Object(s.default)([c.a.overlay,{[c.a.transparent]:t,[c.a.fixed]:n}]),onClick:a},e)}d.defaultProps={transparent:!1,isFixed:!1,onClick:()=>{}},d.propTypes={children:i.a.arrayOf(i.a.node),transparent:i.a.bool,isFixed:i.a.bool,onClick:i.a.func};var u=d},function(e,t,n){"use strict";n.r(t),n.d(t,"TextInput",(function(){return u}));var a=n(1),r=n.n(a),o=n(0),i=n.n(o),s=n(2),l=n(17),c=n.n(l);function d({label:e,onChange:t,placeholder:n,value:o,name:i,type:l,size:d,autoFocus:u,inputRef:f}){const p=Object(a.useCallback)(e=>t(e.target.value),[t]);return r.a.createElement("label",{className:c.a.textLabel},e,r.a.createElement("input",{"data-testid":"input",ref:f,className:Object(s.default)([c.a.textInput,c.a[d]]),onChange:f?void 0:p,placeholder:n,name:i,type:l,value:o,autoFocus:u}))}d.defaultProps={type:"text",autoFocus:!1},d.propTypes={label:i.a.string.isRequired,onChange:i.a.func,placeholder:i.a.string,value:i.a.string,name:i.a.string.isRequired,type:i.a.oneOf(["text","password","email"]),size:i.a.oneOf(["small","medium","large"]),autoFocus:i.a.bool,inputRef:i.a.oneOfType([i.a.func,i.a.shape({current:i.a.any})])};var u=d},function(e,t,n){"use strict";n.r(t),n.d(t,"Video",(function(){return u}));var a=n(1),r=n.n(a),o=n(0),i=n.n(o),s=n(2),l=n(6),c=n.n(l);function d({src:e,type:t,muted:n,loop:a,autoPlay:o,layout:i,children:l}){return l?r.a.createElement("div",{className:Object(s.default)([c.a.container,c.a.hasOverlay])},r.a.createElement("video",{"data-testid":"video",crossOrigin:"anonymous",className:Object(s.default)([c.a.video,c.a[i]]),src:e,type:t,muted:n,loop:a,autoPlay:o,playsInline:!0}),l&&r.a.createElement("div",{className:c.a.overlay},l)):r.a.createElement("video",{"data-testid":"video",crossOrigin:"anonymous",className:Object(s.default)([c.a.video,c.a[i]]),src:e,type:t,muted:n,loop:a,autoPlay:o,playsInline:!0})}d.defaultProps={muted:!0,loop:!0,autoPlay:!0,layout:"contain"},d.propTypes={src:i.a.string.isRequired,type:i.a.string.isRequired,layout:i.a.oneOf(["cover","contain","stretchHorizontally","stretchVertically"]),autoPlay:i.a.bool,loop:i.a.bool,muted:i.a.bool,children:i.a.node};var u=d}]));
|
|
2
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vd2VicGFjay9ib290c3RyYXAiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Byb3AtdHlwZXMvaW5kZXguanMiLCJ3ZWJwYWNrOi8vL2V4dGVybmFsIFwicmVhY3RcIiIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY2xhc3NjYXQvc3JjL2luZGV4LmpzIiwid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL0ljb25CdXR0b24vSWNvbkJ1dHRvbi5tb2R1bGUuY3NzP2QyOGQiLCJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvSWNvbkJ1dHRvbkxpbmsvSWNvbkJ1dHRvbkxpbmsubW9kdWxlLmNzcz9jYzM3Iiwid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL0NvbmZpcm1hdGlvbk1vZGFsL0NvbmZpcm1hdGlvbk1vZGFsLm1vZHVsZS5jc3M/MjdiMyIsIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9WaWRlby9WaWRlby5tb2R1bGUuY3NzP2UyMjMiLCJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvRmxvYXRpbmdQYW5lbC9GbG9hdGluZ1BhbmVsLm1vZHVsZS5jc3M/N2FiZiIsIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9NZW51L01lbnUubW9kdWxlLmNzcz8zNzA5Iiwid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL0ljb24vSWNvbi5qcyIsIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9Ub2FzdC9Ub2FzdC5tb2R1bGUuY3NzP2NmNjEiLCJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvTGlzdFZpZXcvTGlzdFZpZXdJdGVtLm1vZHVsZS5jc3M/OWE0ZSIsIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9Db2xvclN3YXRjaC9Db2xvclN3YXRjaC5tb2R1bGUuY3NzPzIzZWIiLCJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvTW9kYWwvTW9kYWwubW9kdWxlLmNzcz8wZWRmIiwid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL0ljb24vSWNvbi5tb2R1bGUuY3NzPzliOTMiLCJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvTGlzdFZpZXcvTGlzdFZpZXcubW9kdWxlLmNzcz80NjRlIiwid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL092ZXJsYXkvT3ZlcmxheS5tb2R1bGUuY3NzPzIxYzUiLCJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvVGV4dElucHV0L1RleHRJbnB1dC5tb2R1bGUuY3NzP2NkMzYiLCJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvQnV0dG9uL2luZGV4LnRzIiwid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL0J1dHRvbkxpbmsvaW5kZXgudHMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2hvdGtleXMtanMvZGlzdC9ob3RrZXlzLmVzbS5qcyIsIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9Nb2RhbC9Nb2RhbC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvcmVhY3QtaG90a2V5cy1ob29rL2Rpc3Qtd2ViL2luZGV4LmpzIiwid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL0NvbG9yU3dhdGNoL0NvbG9yU3dhdGNoLmpzIiwid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL0NvbG9yUGlja2VyL0NvbG9yUGlja2VyLm1vZHVsZS5jc3M/ZTE4OCIsIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9NZW51L01lbnVJdGVtLm1vZHVsZS5jc3M/NTA0OSIsIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9NZW51L01lbnVDb250YWluZXIubW9kdWxlLmNzcz85NmQyIiwid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL01lbnUvTWVudUxpbmtJdGVtLm1vZHVsZS5jc3M/MDQyNyIsIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9Ub2FzdC9Ub2FzdENvbnRhaW5lci5tb2R1bGUuY3NzPzlhMzYiLCJ3ZWJwYWNrOi8vLy4vc3JjL2luZGV4LnRzIiwid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL0J1dHRvbi9CdXR0b24udHN4Iiwid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL0J1dHRvbi9CdXR0b24ubW9kdWxlLmNzcz9jZDQ2Iiwid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL0J1dHRvbkxpbmsvQnV0dG9uTGluay50c3giLCJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvQnV0dG9uTGluay9CdXR0b25MaW5rLm1vZHVsZS5jc3M/MDg0MSIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvcHJvcC10eXBlcy9mYWN0b3J5V2l0aFRocm93aW5nU2hpbXMuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Byb3AtdHlwZXMvbGliL1JlYWN0UHJvcFR5cGVzU2VjcmV0LmpzIiwid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL0ltYWdlL2luZGV4LnRzIiwid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL0ltYWdlL0ltYWdlLnRzeCIsIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9JbWFnZS9JbWFnZS5tb2R1bGUuY3NzPzk1YTciLCJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvTWVudS9NZW51LmpzIiwid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL01lbnUvTWVudUNvbnRhaW5lci5qcyIsIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9NZW51L01lbnVJdGVtLmpzIiwid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL01lbnUvTWVudUxpbmtJdGVtLmpzIiwid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL0xpc3RWaWV3L0xpc3RWaWV3LmpzIiwid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL0xpc3RWaWV3L0xpc3RWaWV3SXRlbS5qcyIsIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9MaXN0Vmlldy9MaXN0Vmlld0xpbmtJdGVtLmpzIiwid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL1RvYXN0L1RvYXN0LmpzIiwid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL1RvYXN0L1RvYXN0Q29udGFpbmVyLmpzIiwid2VicGFjazovLy8uL3NyYy9ob29rcy91c2VUb2dnbGUuanMiLCJ3ZWJwYWNrOi8vLy4vc3JjL2hvb2tzL3VzZU91dHNpZGVDbGljay5qcyIsIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9Db2xvclBpY2tlci9Db2xvclBpY2tlci5qcyIsIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9Db25maXJtYXRpb25Nb2RhbC9Db25maXJtYXRpb25Nb2RhbC5qcyIsIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9GbG9hdGluZ1BhbmVsL0Zsb2F0aW5nUGFuZWwuanMiLCJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvSWNvbkJ1dHRvbi9JY29uQnV0dG9uLmpzIiwid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL0ljb25CdXR0b25MaW5rL0ljb25CdXR0b25MaW5rLmpzIiwid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL092ZXJsYXkvT3ZlcmxheS5qcyIsIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9UZXh0SW5wdXQvVGV4dElucHV0LmpzIiwid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL1ZpZGVvL1ZpZGVvLmpzIl0sIm5hbWVzIjpbImluc3RhbGxlZE1vZHVsZXMiLCJfX3dlYnBhY2tfcmVxdWlyZV9fIiwibW9kdWxlSWQiLCJleHBvcnRzIiwibW9kdWxlIiwiaSIsImwiLCJtb2R1bGVzIiwiY2FsbCIsIm0iLCJjIiwiZCIsIm5hbWUiLCJnZXR0ZXIiLCJvIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJlbnVtZXJhYmxlIiwiZ2V0IiwiciIsIlN5bWJvbCIsInRvU3RyaW5nVGFnIiwidmFsdWUiLCJ0IiwibW9kZSIsIl9fZXNNb2R1bGUiLCJucyIsImNyZWF0ZSIsImtleSIsImJpbmQiLCJuIiwib2JqZWN0IiwicHJvcGVydHkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsInAiLCJzIiwicmVxdWlyZSIsImlzQXJyYXkiLCJBcnJheSIsImNjIiwib2JqIiwib3V0IiwidG1wIiwiayIsImxlbmd0aCIsIkljb24iLCJzcmMiLCJhbHQiLCJzaXplIiwiaW52ZXJ0ZWQiLCJjbGFzc05hbWUiLCJjbGFzc2NhdCIsInN0eWxlcyIsImljb24iLCJjcm9zc09yaWdpbiIsImRhdGEtdGVzdGlkIiwiZGVmYXVsdFByb3BzIiwicHJvcFR5cGVzIiwiUHJvcFR5cGVzIiwic3RyaW5nIiwiaXNSZXF1aXJlZCIsImNoaWxkcmVuIiwibm9kZSIsIm9uZU9mIiwiYm9vbCIsImRlZmF1bHQiLCJpc2ZmIiwibmF2aWdhdG9yIiwidXNlckFnZW50IiwidG9Mb3dlckNhc2UiLCJpbmRleE9mIiwiYWRkRXZlbnQiLCJldmVudCIsIm1ldGhvZCIsImFkZEV2ZW50TGlzdGVuZXIiLCJhdHRhY2hFdmVudCIsImNvbmNhdCIsIndpbmRvdyIsImdldE1vZHMiLCJtb2RpZmllciIsIm1vZHMiLCJzbGljZSIsImdldEtleXMiLCJrZXlzIiwicmVwbGFjZSIsInNwbGl0IiwiaW5kZXgiLCJsYXN0SW5kZXhPZiIsInNwbGljZSIsIl9rZXlNYXAiLCJiYWNrc3BhY2UiLCJ0YWIiLCJjbGVhciIsImVudGVyIiwicmV0dXJuIiwiZXNjIiwiZXNjYXBlIiwic3BhY2UiLCJsZWZ0IiwidXAiLCJyaWdodCIsImRvd24iLCJkZWwiLCJkZWxldGUiLCJpbnMiLCJpbnNlcnQiLCJob21lIiwiZW5kIiwicGFnZXVwIiwicGFnZWRvd24iLCJjYXBzbG9jayIsIiciLCJfbW9kaWZpZXIiLCJzaGlmdCIsIm9wdGlvbiIsImN0cmwiLCJjb250cm9sIiwiY21kIiwiY29tbWFuZCIsIm1vZGlmaWVyTWFwIiwiMTYiLCIxOCIsIjE3IiwiOTEiLCJzaGlmdEtleSIsImN0cmxLZXkiLCJhbHRLZXkiLCJtZXRhS2V5IiwiX21vZHMiLCJfaGFuZGxlcnMiLCJfZG93bktleXMiLCJfc2NvcGUiLCJlbGVtZW50SGFzQmluZEV2ZW50IiwiY29kZSIsIngiLCJ0b1VwcGVyQ2FzZSIsImNoYXJDb2RlQXQiLCJzZXRTY29wZSIsInNjb3BlIiwiZ2V0U2NvcGUiLCJlYWNoVW5iaW5kIiwiX3JlZiIsIl9yZWYkc3BsaXRLZXkiLCJzcGxpdEtleSIsImZvckVhY2giLCJvcmlnaW5LZXkiLCJ1bmJpbmRLZXlzIiwibGVuIiwibGFzdEtleSIsImtleUNvZGUiLCJtYXAiLCJyZWNvcmQiLCJhMSIsImEyIiwiYXJyMSIsImFycjIiLCJpc0luZGV4IiwiY29tcGFyZUFycmF5IiwiZXZlbnRIYW5kbGVyIiwiaGFuZGxlciIsIm1vZGlmaWVyc01hdGNoIiwieSIsInNob3J0Y3V0IiwicHJldmVudERlZmF1bHQiLCJyZXR1cm5WYWx1ZSIsInN0b3BQcm9wYWdhdGlvbiIsImNhbmNlbEJ1YmJsZSIsImRpc3BhdGNoIiwiYXN0ZXJpc2siLCJ3aGljaCIsImNoYXJDb2RlIiwiaG90a2V5cyIsImZpbHRlciIsInRoaXMiLCJwdXNoIiwia2V5TmFtZSIsImtleU51bSIsImUiLCJnZXRNb2RpZmllclN0YXRlIiwidHlwZSIsImtleWRvd24iLCJrZXl1cCIsIl9pIiwia2V5U2hvcnRjdXQiLCJfZG93bktleXNDdXJyZW50IiwiYSIsInNvcnQiLCJqb2luIiwiZWxlbWVudCIsImRvY3VtZW50IiwidW5kZWZpbmVkIiwidG9TdHJpbmciLCJpc0VsZW1lbnRCaW5kIiwiY2xlYXJNb2RpZmllciIsIl9hcGkiLCJkZWxldGVTY29wZSIsIm5ld1Njb3BlIiwiaGFuZGxlcnMiLCJnZXRQcmVzc2VkS2V5Q29kZXMiLCJpc1ByZXNzZWQiLCJ0YXJnZXQiLCJzcmNFbGVtZW50IiwidGFnTmFtZSIsImZsYWciLCJpc0NvbnRlbnRFZGl0YWJsZSIsInJlYWRPbmx5IiwidW5iaW5kIiwia2V5c0luZm8iLCJpbmZvIiwiX2xlbiIsImFyZ3VtZW50cyIsImFyZ3MiLCJfa2V5IiwiX2hvdGtleXMiLCJub0NvbmZsaWN0IiwiZGVlcCIsIk1vZGFsIiwiaXNPcGVuIiwib25DbG9zZSIsImJ1dHRvbiIsImNhbGxiYWNrIiwib3B0aW9ucyIsImRlcHMiLCJlbmFibGVPblRhZ3MiLCJyZWYiLCJtZW1vaXNlZENhbGxiYWNrIiwia2V5Ym9hcmRFdmVudCIsImhvdGtleXNFdmVudCIsImN1cnJlbnQiLCJhY3RpdmVFbGVtZW50IiwidGFyZ2V0VGFnTmFtZSIsIkJvb2xlYW4iLCJpbmNsdWRlcyIsInVzZUhvdGtleXMiLCJoYW5kbGVPdmVybGF5Q2xpY2siLCJ1c2VDYWxsYmFjayIsIm92ZXJsYXkiLCJvbkNsaWNrIiwibW9kYWwiLCJtb2RhbEJ1dHRvbiIsImZ1bmMiLCJDb2xvclN3YXRjaCIsImNvbG9yIiwiaXNTZWxlY3RlZCIsImNvbG9yU3dhdGNoIiwic2VsZWN0ZWQiLCJkaXNhYmxlZCIsInN0eWxlIiwiYmFja2dyb3VuZENvbG9yIiwiaGV4Q29kZSIsInNyT25seSIsImxhYmVsIiwic2hhcGUiLCJyb3VuZGVkIiwibm9TaGFkb3ciLCJub1BhZGRpbmciLCJub0JvcmRlciIsInRyYW5zcGFyZW50Iiwic3RyZXRjaEhvcml6b250YWxseSIsInN0cmV0Y2hWZXJ0aWNhbGx5Iiwib2Zmc2V0U2lkZXMiLCJhbGlnbiIsImNvbnRhaW5lciIsInNpZGUiLCJyb2xlIiwiY29udGVudCIsIkNvbXBvbmVudCIsInByb3BzIiwiUmVhY3RQcm9wVHlwZXNTZWNyZXQiLCJlbXB0eUZ1bmN0aW9uIiwiZW1wdHlGdW5jdGlvbldpdGhSZXNldCIsInJlc2V0V2FybmluZ0NhY2hlIiwic2hpbSIsInByb3BOYW1lIiwiY29tcG9uZW50TmFtZSIsImxvY2F0aW9uIiwicHJvcEZ1bGxOYW1lIiwic2VjcmV0IiwiZXJyIiwiRXJyb3IiLCJnZXRTaGltIiwiUmVhY3RQcm9wVHlwZXMiLCJhcnJheSIsIm51bWJlciIsInN5bWJvbCIsImFueSIsImFycmF5T2YiLCJlbGVtZW50VHlwZSIsImluc3RhbmNlT2YiLCJvYmplY3RPZiIsIm9uZU9mVHlwZSIsImV4YWN0IiwiY2hlY2tQcm9wVHlwZXMiLCJzcmNXaWR0aCIsInNyY0hlaWdodCIsImxheW91dCIsImhhc092ZXJsYXkiLCJpbWFnZSIsIndpZHRoIiwiaGVpZ2h0IiwiTWVudSIsInBsYWNlbWVudCIsImhlYWRlciIsIm1lbnUiLCJob3Jpem9udGFsIiwidmVydGljYWwiLCJvcGVuIiwibWVudUhlYWRlciIsIk1lbnVDb250YWluZXIiLCJtZW51Q29udGFpbmVyIiwiZm9yd2FyZFJlZiIsIk1lbnVJdGVtIiwiaXNBY3RpdmUiLCJtZW51SXRlbSIsImFjdGl2ZSIsIk1lbnVMaW5rSXRlbSIsImFzIiwibWVudUxpbmtJdGVtIiwiTGlzdFZpZXciLCJsaXN0IiwiTGlzdFZpZXdJdGVtIiwibGlzdFZpZXdJdGVtIiwiQnV0dG9uIiwiTGlzdFZpZXdMaW5rSXRlbSIsIkJ1dHRvbkxpbmsiLCJUb2FzdCIsImJ1dHRvbnMiLCJ0b2FzdCIsInRvYXN0SW1hZ2UiLCJ0b2FzdENvbnRlbnQiLCJ0b2FzdEJ1dHRvbnMiLCJUb2FzdENvbnRhaW5lciIsInRvYXN0Q29udGFpbmVyIiwidXNlVG9nZ2xlIiwiaW5pdGlhbFN0YXRlIiwic2V0Qm9vbCIsInVzZVN0YXRlIiwidG9nZ2xlIiwicHJldkJvb2wiLCJvbiIsIm9mZiIsInVzZU91dHNpZGVDbGljayIsInVzZVJlZiIsInVzZUVmZmVjdCIsImhhbmRsZUNsaWNrIiwiY29udGFpbnMiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwiQ29sb3JQaWNrZXIiLCJjb2xvcnMiLCJkaXJlY3Rpb24iLCJvblNlbGVjdCIsInNlbGVjdGVkQ29sb3IiLCJjb2xvclBpY2tlciIsIkNvbmZpcm1hdGlvbk1vZGFsIiwiYnV0dG9uc0xlZnQiLCJidXR0b25zUmlnaHQiLCJzaG93Q2xvc2VCdXR0b24iLCJtb2RhbEhlYWRlciIsIm1vZGFsQ29udGVudCIsIm1vZGFsQnV0dG9uc0NvbnRhaW5lciIsIm1vZGFsQnV0dG9ucyIsImRpc3BsYXlOYW1lIiwiRmxvYXRpbmdQYW5lbCIsImhvcml6b250YWxQbGFjZW1lbnQiLCJ2ZXJ0aWNhbFBsYWNlbWVudCIsImZpeGVkIiwicGFyZW50IiwiSWNvbkJ1dHRvbiIsIkljb25CdXR0b25MaW5rIiwiT3ZlcmxheSIsImlzRml4ZWQiLCJUZXh0SW5wdXQiLCJvbkNoYW5nZSIsInBsYWNlaG9sZGVyIiwiYXV0b0ZvY3VzIiwiaW5wdXRSZWYiLCJoYW5kbGVDaGFuZ2UiLCJ0ZXh0TGFiZWwiLCJ0ZXh0SW5wdXQiLCJWaWRlbyIsIm11dGVkIiwibG9vcCIsImF1dG9QbGF5IiwidmlkZW8iLCJwbGF5c0lubGluZSJdLCJtYXBwaW5ncyI6IjZEQUNFLElBQUlBLEVBQW1CLEdBR3ZCLFNBQVNDLEVBQW9CQyxHQUc1QixHQUFHRixFQUFpQkUsR0FDbkIsT0FBT0YsRUFBaUJFLEdBQVVDLFFBR25DLElBQUlDLEVBQVNKLEVBQWlCRSxHQUFZLENBQ3pDRyxFQUFHSCxFQUNISSxHQUFHLEVBQ0hILFFBQVMsSUFVVixPQU5BSSxFQUFRTCxHQUFVTSxLQUFLSixFQUFPRCxRQUFTQyxFQUFRQSxFQUFPRCxRQUFTRixHQUcvREcsRUFBT0UsR0FBSSxFQUdKRixFQUFPRCxRQTBEZixPQXJEQUYsRUFBb0JRLEVBQUlGLEVBR3hCTixFQUFvQlMsRUFBSVYsRUFHeEJDLEVBQW9CVSxFQUFJLFNBQVNSLEVBQVNTLEVBQU1DLEdBQzNDWixFQUFvQmEsRUFBRVgsRUFBU1MsSUFDbENHLE9BQU9DLGVBQWViLEVBQVNTLEVBQU0sQ0FBRUssWUFBWSxFQUFNQyxJQUFLTCxLQUtoRVosRUFBb0JrQixFQUFJLFNBQVNoQixHQUNYLG9CQUFYaUIsUUFBMEJBLE9BQU9DLGFBQzFDTixPQUFPQyxlQUFlYixFQUFTaUIsT0FBT0MsWUFBYSxDQUFFQyxNQUFPLFdBRTdEUCxPQUFPQyxlQUFlYixFQUFTLGFBQWMsQ0FBRW1CLE9BQU8sS0FRdkRyQixFQUFvQnNCLEVBQUksU0FBU0QsRUFBT0UsR0FFdkMsR0FEVSxFQUFQQSxJQUFVRixFQUFRckIsRUFBb0JxQixJQUMvQixFQUFQRSxF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RTdVLEVBQUYsS0FBT3FJLEVBQVAsTUFBYXlNLEVBQWIsS0FBb0JDLEVBQXBCLFNBQTBCQyxFQUExQixPQUFvQ3ZGLEVBQXBDLFNBQTRDMU8sSUFDekQsT0FBT0EsRUFDTCx5QkFBS1gsVUFBV0Msa0JBQVMsQ0FBQ0MsSUFBT2tOLFVBQVdsTixJQUFPb1AsY0FDakQsMkJBQ0VqUCxjQUFZLFFBQ1pELFlBQVksWUFDWkosVUFBV0Msa0JBQVMsQ0FBQ0MsSUFBTzJVLE1BQU8zVSxJQUFPbVAsS0FDMUN6UCxJQUFLQSxFQUNMcUksS0FBTUEsRUFDTnlNLE1BQU9BLEVBQ1BDLEtBQU1BLEVBQ05DLFNBQVVBLEVBQ1ZFLGFBQWEsSUFFZG5VLEdBQVkseUJBQUtYLFVBQVdFLElBQU93TCxTQUFVL0ssSUFHaEQsMkJBQ0VOLGNBQVksUUFDWkQsWUFBWSxZQUNaSixVQUFXQyxrQkFBUyxDQUFDQyxJQUFPMlUsTUFBTzNVLElBQU9tUCxLQUMxQ3pQLElBQUtBLEVBQ0xxSSxLQUFNQSxFQUNOeU0sTUFBT0EsRUFDUEMsS0FBTUEsRUFDTkMsU0FBVUEsRUFDVkUsYUFBYSxJQUtuQkwsRUFBTW5VLGFBQWUsQ0FDbkJvVSxPQUFPLEVBQ1BDLE1BQU0sRUFDTkMsVUFBVSxFQUNWdkYsT0FBUSxXQUdWb0YsRUFBTWxVLFVBQVksQ0FDaEJYLElBQUtZLElBQVVDLE9BQU9DLFdBQ3RCdUgsS0FBTXpILElBQVVDLE9BQU9DLFdBQ3ZCMk8sT0FBUTdPLElBQVVLLE1BQU0sQ0FDdEIsUUFDQSxVQUNBLHNCQUNBLHNCQUVGK1QsU0FBVXBVLElBQVVNLEtBQ3BCNlQsS0FBTW5VLElBQVVNLEtBQ2hCNFQsTUFBT2xVLElBQVVNLEtBQ2pCSCxTQUFVSCxJQUFVSSxNQUdQNlQiLCJmaWxlIjoiYnVuZGxlLmpzIiwic291cmNlc0NvbnRlbnQiOlsiIFx0Ly8gVGhlIG1vZHVsZSBjYWNoZVxuIFx0dmFyIGluc3RhbGxlZE1vZHVsZXMgPSB7fTtcblxuIFx0Ly8gVGhlIHJlcXVpcmUgZnVuY3Rpb25cbiBcdGZ1bmN0aW9uIF9fd2VicGFja19yZXF1aXJlX18obW9kdWxlSWQpIHtcblxuIFx0XHQvLyBDaGVjayBpZiBtb2R1bGUgaXMgaW4gY2FjaGVcbiBcdFx0aWYoaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0pIHtcbiBcdFx0XHRyZXR1cm4gaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0uZXhwb3J0cztcbiBcdFx0fVxuIFx0XHQvLyBDcmVhdGUgYSBuZXcgbW9kdWxlIChhbmQgcHV0IGl0IGludG8gdGhlIGNhY2hlKVxuIFx0XHR2YXIgbW9kdWxlID0gaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0gPSB7XG4gXHRcdFx0aTogbW9kdWxlSWQsXG4gXHRcdFx0bDogZmFsc2UsXG4gXHRcdFx0ZXhwb3J0czoge31cbiBcdFx0fTtcblxuIFx0XHQvLyBFeGVjdXRlIHRoZSBtb2R1bGUgZnVuY3Rpb25cbiBcdFx0bW9kdWxlc1ttb2R1bGVJZF0uY2FsbChtb2R1bGUuZXhwb3J0cywgbW9kdWxlLCBtb2R1bGUuZXhwb3J0cywgX193ZWJwYWNrX3JlcXVpcmVfXyk7XG5cbiBcdFx0Ly8gRmxhZyB0aGUgbW9kdWxlIGFzIGxvYWRlZFxuIFx0XHRtb2R1bGUubCA9IHRydWU7XG5cbiBcdFx0Ly8gUmV0dXJuIHRoZSBleHBvcnRzIG9mIHRoZSBtb2R1bGVcbiBcdFx0cmV0dXJuIG1vZHVsZS5leHBvcnRzO1xuIFx0fVxuXG5cbiBcdC8vIGV4cG9zZSB0aGUgbW9kdWxlcyBvYmplY3QgKF9fd2VicGFja19tb2R1bGVzX18pXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLm0gPSBtb2R1bGVzO1xuXG4gXHQvLyBleHBvc2UgdGhlIG1vZHVsZSBjYWNoZVxuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5jID0gaW5zdGFsbGVkTW9kdWxlcztcblxuIFx0Ly8gZGVmaW5lIGdldHRlciBmdW5jdGlvbiBmb3IgaGFybW9ueSBleHBvcnRzXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLmQgPSBmdW5jdGlvbihleHBvcnRzLCBuYW1lLCBnZXR0ZXIpIHtcbiBcdFx0aWYoIV9fd2VicGFja19yZXF1aXJlX18ubyhleHBvcnRzLCBuYW1lKSkge1xuIFx0XHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBuYW1lLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZ2V0dGVyIH0pO1xuIFx0XHR9XG4gXHR9O1xuXG4gXHQvLyBkZWZpbmUgX19lc01vZHVsZSBvbiBleHBvcnRzXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLnIgPSBmdW5jdGlvbihleHBvcnRzKSB7XG4gXHRcdGlmKHR5cGVvZiBTeW1ib2wgIT09ICd1bmRlZmluZWQnICYmIFN5bWJvbC50b1N0cmluZ1RhZykge1xuIFx0XHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuIFx0XHR9XG4gXHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCAnX19lc01vZHVsZScsIHsgdmFsdWU6IHRydWUgfSk7XG4gXHR9O1xuXG4gXHQvLyBjcmVhdGUgYSBmYWtlIG5hbWVzcGFjZSBvYmplY3RcbiBcdC8vIG1vZGUgJiAxOiB2YWx1ZSBpcyBhIG1vZHVsZSBpZCwgcmVxdWlyZSBpdFxuIFx0Ly8gbW9kZSAmIDI6IG1lcmdlIGFsbCBwcm9wZXJ0aWVzIG9mIHZhbHVlIGludG8gdGhlIG5zXG4gXHQvLyBtb2RlICYgNDogcmV0dXJuIHZhbHVlIHdoZW4gYWxyZWFkeSBucyBvYmplY3RcbiBcdC8vIG1vZGUgJiA4fDE6IGJlaGF2ZSBsaWtlIHJlcXVpcmVcbiBcdF9fd2VicGFja19yZXF1aXJlX18udCA9IGZ1bmN0aW9uKHZhbHVlLCBtb2RlKSB7XG4gXHRcdGlmKG1vZGUgJiAxKSB2YWx1ZSA9IF9fd2VicGFja19yZXF1aXJlX18odmFsdWUpO1xuIFx0XHRpZihtb2RlICYgOCkgcmV0dXJuIHZhbHVlO1xuIFx0XHRpZigobW9kZSAmIDQpICYmIHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcgJiYgdmFsdWUgJiYgdmFsdWUuX19lc01vZHVsZSkgcmV0dXJuIHZhbHVlO1xuIFx0XHR2YXIgbnMgPSBPYmplY3QuY3JlYXRlKG51bGwpO1xuIFx0XHRfX3dlYnBhY2tfcmVxdWlyZV9fLnIobnMpO1xuIFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkobnMsICdkZWZhdWx0JywgeyBlbnVtZXJhYmxlOiB0cnVlLCB2YWx1ZTogdmFsdWUgfSk7XG4gXHRcdGlmKG1vZGUgJiAyICYmIHR5cGVvZiB2YWx1ZSAhPSAnc3RyaW5nJykgZm9yKHZhciBrZXkgaW4gdmFsdWUpIF9fd2VicGFja19yZXF1aXJlX18uZChucywga2V5LCBmdW5jdGlvbihrZXkpIHsgcmV0dXJuIHZhbHVlW2tleV07IH0uYmluZChudWxsLCBrZXkpKTtcbiBcdFx0cmV0dXJuIG5zO1xuIFx0fTtcblxuIFx0Ly8gZ2V0RGVmYXVsdEV4cG9ydCBmdW5jdGlvbiBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIG5vbi1oYXJtb255IG1vZHVsZXNcbiBcdF9fd2VicGFja19yZXF1aXJlX18ubiA9IGZ1bmN0aW9uKG1vZHVsZSkge1xuIFx0XHR2YXIgZ2V0dGVyID0gbW9kdWxlICYmIG1vZHVsZS5fX2VzTW9kdWxlID9cbiBcdFx0XHRmdW5jdGlvbiBnZXREZWZhdWx0KCkgeyByZXR1cm4gbW9kdWxlWydkZWZhdWx0J107IH0gOlxuIFx0XHRcdGZ1bmN0aW9uIGdldE1vZHVsZUV4cG9ydHMoKSB7IHJldHVybiBtb2R1bGU7IH07XG4gXHRcdF9fd2VicGFja19yZXF1aXJlX18uZChnZXR0ZXIsICdhJywgZ2V0dGVyKTtcbiBcdFx0cmV0dXJuIGdldHRlcjtcbiBcdH07XG5cbiBcdC8vIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbFxuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5vID0gZnVuY3Rpb24ob2JqZWN0LCBwcm9wZXJ0eSkgeyByZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iamVjdCwgcHJvcGVydHkpOyB9O1xuXG4gXHQvLyBfX3dlYnBhY2tfcHVibGljX3BhdGhfX1xuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5wID0gXCJcIjtcblxuXG4gXHQvLyBMb2FkIGVudHJ5IG1vZHVsZSBhbmQgcmV0dXJuIGV4cG9ydHNcbiBcdHJldHVybiBfX3dlYnBhY2tfcmVxdWlyZV9fKF9fd2VicGFja19yZXF1aXJlX18ucyA9IDI3KTtcbiIsIi8qKlxuICogQ29weXJpZ2h0IChjKSAyMDEzLXByZXNlbnQsIEZhY2Vib29rLCBJbmMuXG4gKlxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4gKi9cblxuaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgdmFyIFJlYWN0SXMgPSByZXF1aXJlKCdyZWFjdC1pcycpO1xuXG4gIC8vIEJ5IGV4cGxpY2l0bHkgdXNpbmcgYHByb3AtdHlwZXNgIHlvdSBhcmUgb3B0aW5nIGludG8gbmV3IGRldmVsb3BtZW50IGJlaGF2aW9yLlxuICAvLyBodHRwOi8vZmIubWUvcHJvcC10eXBlcy1pbi1wcm9kXG4gIHZhciB0aHJvd09uRGlyZWN0QWNjZXNzID0gdHJ1ZTtcbiAgbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKCcuL2ZhY3RvcnlXaXRoVHlwZUNoZWNrZXJzJykoUmVhY3RJcy5pc0VsZW1lbnQsIHRocm93T25EaXJlY3RBY2Nlc3MpO1xufSBlbHNlIHtcbiAgLy8gQnkgZXhwbGljaXRseSB1c2luZyBgcHJvcC10eXBlc2AgeW91IGFyZSBvcHRpbmcgaW50byBuZXcgcHJvZHVjdGlvbiBiZWhhdmlvci5cbiAgLy8gaHR0cDovL2ZiLm1lL3Byb3AtdHlwZXMtaW4tcHJvZFxuICBtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoJy4vZmFjdG9yeVdpdGhUaHJvd2luZ1NoaW1zJykoKTtcbn1cbiIsIm1vZHVsZS5leHBvcnRzID0gcmVxdWlyZShcInJlYWN0XCIpOyIsInZhciBpc0FycmF5ID0gQXJyYXkuaXNBcnJheVxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBjYyhvYmopIHtcbiAgdmFyIG91dCA9IFwiXCJcblxuICBpZiAodHlwZW9mIG9iaiA9PT0gXCJzdHJpbmdcIiB8fCB0eXBlb2Ygb2JqID09PSBcIm51bWJlclwiKSByZXR1cm4gb2JqIHx8IFwiXCJcblxuICBpZiAoaXNBcnJheShvYmopKVxuICAgIGZvciAodmFyIGsgPSAwLCB0bXA7IGsgPCBvYmoubGVuZ3RoOyBrKyspIHtcbiAgICAgIGlmICgodG1wID0gY2Mob2JqW2tdKSkgIT09IFwiXCIpIHtcbiAgICAgICAgb3V0ICs9IChvdXQgJiYgXCIgXCIpICsgdG1wXG4gICAgICB9XG4gICAgfVxuICBlbHNlXG4gICAgZm9yICh2YXIgayBpbiBvYmopIHtcbiAgICAgIGlmIChvYmouaGFzT3duUHJvcGVydHkoaykgJiYgb2JqW2tdKSBvdXQgKz0gKG91dCAmJiBcIiBcIikgKyBrXG4gICAgfVxuXG4gIHJldHVybiBvdXRcbn1cbiIsIi8vIGV4dHJhY3RlZCBieSBtaW5pLWNzcy1leHRyYWN0LXBsdWdpblxubW9kdWxlLmV4cG9ydHMgPSB7XCJjb250YWluZXJcIjpcIl8yTVB1SjNBcHZyQXZyZXdqU1dHQUEyXCIsXCJzbWFsbFwiOlwibE9rb2FuN2RicC1nb0R0SlZ1SzdCXCIsXCJsYXJnZVwiOlwiXzJhRzZ6WHFURUtWY3ZCYWFuaUNOQnlcIixcInJvdW5kZWRcIjpcIl8ySlgwMzRxVVRDb1RkV0MycHBBNDg3XCIsXCJ0b3BPZmZzZXRcIjpcIl8xd3BDLVdYZ0wwNlFLeHRQek93TlJLXCIsXCJyaWdodE9mZnNldFwiOlwiTEl6clFDN3BvUVQ5alVSQnFNREtoXCIsXCJib3R0b21PZmZzZXRcIjpcIl8yaV93NVVMa1VLN0xWdzVoRU85N0V3XCIsXCJsZWZ0T2Zmc2V0XCI6XCJfMzhlS2xUUVRWMVlsbkVlMUdtTnRRa1wiLFwiaW52ZXJ0ZWRcIjpcIl8yTmtaNTBya0EzZVpDeXNZOUZBcC1lXCIsXCJub1NoYWRvd1wiOlwiXzNVeTVIWmR2a1dmN2JpbFQwd3h3VmVcIixcIm5vQm9yZGVyXCI6XCJfMkY0SHk5bHE1T0NyRXBQWlBoNXhBSlwiLFwidHJhbnNwYXJlbnRcIjpcIl8ydTdxVE1lRTlENXJ0Y3NFY1NvQVkzXCJ9OyIsIi8vIGV4dHJhY3RlZCBieSBtaW5pLWNzcy1leHRyYWN0LXBsdWdpblxubW9kdWxlLmV4cG9ydHMgPSB7XCJjb250YWluZXJcIjpcIl8xdWlmbUtOUER6ZHU1WURuaGd3UFFLXCIsXCJzbWFsbFwiOlwicGZIY1lhZXctSHJIdFROdVI0djdoXCIsXCJsYXJnZVwiOlwiXzI2WjlGSC1DTlBxZjU1WlJQMXZuYWJcIixcInJvdW5kZWRcIjpcIl8ycTdXdlJPaE5tM2dzUklSYVFRZWFVXCIsXCJ0b3BPZmZzZXRcIjpcIndaeV92dWxaa01iV1NYMGFrY1pIQVwiLFwicmlnaHRPZmZzZXRcIjpcIl8yamhocG02MF95UEVmeFEtd2F6ai01XCIsXCJib3R0b21PZmZzZXRcIjpcIkRubnJHN1pYbVRJaG1XVWNzOTltMVwiLFwibGVmdE9mZnNldFwiOlwiXzFZZENnN1Q2WGpobXh3Y2pMTlNFYi1cIixcImludmVydGVkXCI6XCJIVjBSLWxxd215ZXFzUzFaOHBvWlNcIixcIm5vU2hhZG93XCI6XCJfMUxQcHQ3MEpqaW02U2ZaZTM1RzJrYlwiLFwibm9Cb3JkZXJcIjpcIlJrelNyR2l4TTI4Sk1hdDZJQjVMclwiLFwidHJhbnNwYXJlbnRcIjpcIl8xS2RYZlkzUGs2dEVOWUg4MXRXcnBzXCJ9OyIsIi8vIGV4dHJhY3RlZCBieSBtaW5pLWNzcy1leHRyYWN0LXBsdWdpblxubW9kdWxlLmV4cG9ydHMgPSB7XCJjb250YWluZXJcIjpcImtrZ0hvQlFoRlBzS2pfeDFaRmRSSFwiLFwibW9kYWxIZWFkZXJcIjpcIl8xV3V2SEQtR2RYTHJ0cXdhMDRXMXF5XCIsXCJtb2RhbENvbnRlbnRcIjpcIl8yN2VVeVNRcXZxNXFsb05DbElqSVNUXCIsXCJub1BhZGRpbmdcIjpcIl8yZ3RCWEw5UEZTcEhzVzBBOXhkNTVTXCIsXCJtb2RhbEJ1dHRvbnNDb250YWluZXJcIjpcIl81Z0lweUYzWDV0aFBRQW5zQUM0ejlcIixcIm1vZGFsQnV0dG9uc1wiOlwic3dzb0NpaTF3NHhObDdpb0RWa081XCJ9OyIsIi8vIGV4dHJhY3RlZCBieSBtaW5pLWNzcy1leHRyYWN0LXBsdWdpblxubW9kdWxlLmV4cG9ydHMgPSB7XCJjb250YWluZXJcIjpcIl8yRVFCZnI1dzhoMXgxYnEtMmZwNndUXCIsXCJoYXNPdmVybGF5XCI6XCJfM0dSTXBtR2tfUHFJVGNVdjBOZm10M1wiLFwidmlkZW9cIjpcIl8ydFpmWGtFaENrd0F6ZmFHX0JWbjBCXCIsXCJjb3ZlclwiOlwiXzNPWUhmYnphTDNRSGFuV1pCajhSeE9cIixcImNvbnRhaW5cIjpcIl8zSV9jN3NoY1NydEdfRnh2dlUySWVFXCIsXCJzdHJldGNoSG9yaXpvbnRhbGx5XCI6XCJfMVo3ZEw5dUVkMEtzeDNDa3JaaHNCOFwiLFwic3RyZXRjaFZlcnRpY2FsbHlcIjpcIl8xemJyRFlPMGZZRkpWYzd4dnNUWWk2XCIsXCJvdmVybGF5XCI6XCJfMm9zWGQ3U2t3RjBMaC0yeWlxdVlRTVwifTsiLCIvLyBleHRyYWN0ZWQgYnkgbWluaS1jc3MtZXh0cmFjdC1wbHVnaW5cbm1vZHVsZS5leHBvcnRzID0ge1wiY29udGFpbmVyXCI6XCJhNk5ITzJDVlZDZmluaXllMlhMTi1cIixcInJvd1wiOlwiXzNSU2dCNzZyRUJuaVBjMlljcjhaYnZcIixcImNvbHVtblwiOlwiXzFKa1gxNWlnY2xuYm01c1JTY1dWRFlcIixcImZpeGVkXCI6XCJNTVExeWpFYWZXa1lGVkRITXBUYklcIixcInBsYWluXCI6XCJfM20yTV9OYXJjNXh3TGF5OEhKbGprY1wiLFwidHJhbnNwYXJlbnRcIjpcIl8xcmZhNDl6aFp4TmlmejY0T3FiXzZQXCIsXCJ0b3BcIjpcIl9rVWFsbkRlRWZ2enFBamkwQU1Eb1wiLFwidG9wRWRnZVwiOlwiVzhKQUl3TGpPOEpRR2J2aVpwUFF3XCIsXCJ0b3BPbkVkZ2VcIjpcIl8zb3BKN0ViNnRqMzk0dVY4YTU3aXh6XCIsXCJyaWdodFwiOlwiXzMtdmJ3anAwYVBjTEVWMVN4MElDZ1BcIixcInJpZ2h0RWRnZVwiOlwiXzNYTkZ5NVpvTUNvWUJJYWJlR040QlFcIixcInJpZ2h0T25FZGdlXCI6XCJfMTJjM0N6VU1RRThBRzNBTDhIaWtpMlwiLFwiYm90dG9tXCI6XCJfM2dlQkVOSDVvRXJxR2R0LVF5SG5QaFwiLFwiYm90dG9tRWRnZVwiOlwiXzNfc2FNNEdzMzJuUmJJSEh4SUViRjZcIixcImJvdHRvbU9uRWRnZVwiOlwiXzJQTEU0ZG1HaG5jZ2stbEVub1U0a3ZcIixcImxlZnRcIjpcIl8xaVNCbnlaZ1BlRlVXb000aTZkU3BVXCIsXCJsZWZ0RWRnZVwiOlwiXzFmWDE5cUlPU2huMm81dXVzUnpUZ3NcIixcImxlZnRPbkVkZ2VcIjpcIktCSERvY2t1SFRFT0tNR096YWRYaVwiLFwiaG9yaXpvbnRhbENlbnRlclwiOlwiXzMxdDZ0SFJKNXMtNURjRExGVEtoMW1cIixcInZlcnRpY2FsQ2VudGVyXCI6XCJfMmhxN2ZrRFhIeHJ4ejJ0N0xMZzRfOVwifTsiLCIvLyBleHRyYWN0ZWQgYnkgbWluaS1jc3MtZXh0cmFjdC1wbHVnaW5cbm1vZHVsZS5leHBvcnRzID0ge1wibWVudVwiOlwiXzJhaGk4SmNueEdIcm5abUQweFQ5UkxcIixcInRvcFwiOlwiXzNncEZUZDFGZHg0RUFmcTE3MFRHczdcIixcInJpZ2h0XCI6XCJfMUw1QVRwTTlHWHktU09SRnIwRzZTNFwiLFwibGVmdFwiOlwiQ1lFSmwzOVRrRWZuS2FsM3Z0dno5XCIsXCJib3R0b21cIjpcIl8zenlwLU5kVEJlQkRLdmsyNnBzWnVwXCIsXCJvcGVuXCI6XCJfMWlhYXppWnJWSV8tRThEOTlXZE5qaVwiLFwiZW50cmFuY2VcIjpcIl8yZmlLZTQtWDhQcWNHNF85cWVCM1pPXCIsXCJtZW51SGVhZGVyXCI6XCJfMTluazFJTU5TLXVfWUlRTGxtWVJ0VVwifTsiLCJpbXBvcnQgUmVhY3QgZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gXCJwcm9wLXR5cGVzXCI7XG5pbXBvcnQgY2xhc3NjYXQgZnJvbSBcImNsYXNzY2F0XCI7XG5pbXBvcnQgc3R5bGVzIGZyb20gXCIuL0ljb24ubW9kdWxlLmNzc1wiO1xuXG5mdW5jdGlvbiBJY29uKHsgc3JjLCBhbHQsIHNpemUsIGludmVydGVkIH0pIHtcbiAgcmV0dXJuIChcbiAgICA8aW1nXG4gICAgICBjbGFzc05hbWU9e2NsYXNzY2F0KFtcbiAgICAgICAgc3R5bGVzLmljb24sXG4gICAgICAgIHN0eWxlc1tzaXplXSxcbiAgICAgICAgeyBbc3R5bGVzLmludmVydGVkXTogaW52ZXJ0ZWQgfSxcbiAgICAgIF0pfVxuICAgICAgY3Jvc3NPcmlnaW49XCJhbm9ueW1vdXNcIlxuICAgICAgZGF0YS10ZXN0aWQ9XCJpY29uXCJcbiAgICAgIGFsdD17YWx0fVxuICAgICAgc3JjPXtzcmN9XG4gICAgLz5cbiAgKTtcbn1cblxuSWNvbi5kZWZhdWx0UHJvcHMgPSB7XG4gIHNpemU6IFwibWVkaXVtXCIsXG4gIGludmVydGVkOiBmYWxzZSxcbn07XG5cbkljb24ucHJvcFR5cGVzID0ge1xuICBzcmM6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgYWx0OiBQcm9wVHlwZXMuc3RyaW5nLFxuICBjaGlsZHJlbjogUHJvcFR5cGVzLm5vZGUsXG4gIHNpemU6IFByb3BUeXBlcy5vbmVPZihbXCJzbWFsbFwiLCBcIm1lZGl1bVwiLCBcImxhcmdlXCJdKSxcbiAgaW52ZXJ0ZWQ6IFByb3BUeXBlcy5ib29sLFxufTtcblxuZXhwb3J0IGRlZmF1bHQgSWNvbjtcbiIsIi8vIGV4dHJhY3RlZCBieSBtaW5pLWNzcy1leHRyYWN0LXBsdWdpblxubW9kdWxlLmV4cG9ydHMgPSB7XCJ0b2FzdFwiOlwiXzNzQnNfRVJYVjNrMFNRTUdVeTJXajRcIixcImVudHJhbmNlXCI6XCJfMV94anRMZVVNb0VYTkEtcU9FWmhjeFwiLFwidG9hc3RDb250ZW50XCI6XCJfMTBsQkVUQ1UzVU5GUjhweTFxMXEtaFwiLFwidG9hc3RJbWFnZVwiOlwiXzNDaTB3cE9iazZvcWY3ZHdrSHNGV29cIixcInRvYXN0QnV0dG9uc1wiOlwiRkVXRG5Ec1AtOUE5SkhHMjBxQlM1XCJ9OyIsIi8vIGV4dHJhY3RlZCBieSBtaW5pLWNzcy1leHRyYWN0LXBsdWdpblxubW9kdWxlLmV4cG9ydHMgPSB7XCJsaXN0Vmlld0l0ZW1cIjpcIl8yTGdqcUFCd2pIdHBiR3prUVFrcWlRXCJ9OyIsIi8vIGV4dHJhY3RlZCBieSBtaW5pLWNzcy1leHRyYWN0LXBsdWdpblxubW9kdWxlLmV4cG9ydHMgPSB7XCJjb2xvclN3YXRjaFwiOlwiXzEzc3MxeHNNTml6dkVnUF9oeEVWOEJcIixcInNlbGVjdGVkXCI6XCJMNmZBdDZSWll6X3ozd1BialpFeEhcIixcInNyT25seVwiOlwiXzN2SjVteHB6YVlzS2F4Zi04dEIzMXhcIn07IiwiLy8gZXh0cmFjdGVkIGJ5IG1pbmktY3NzLWV4dHJhY3QtcGx1Z2luXG5tb2R1bGUuZXhwb3J0cyA9IHtcIm92ZXJsYXlcIjpcIl8xeXhDYlFKcVN0VXZ5dHZLRWVOQzNuXCIsXCJtb2RhbFwiOlwiRDhTakJ4M2lrejYzNll1Ym5IWUFZXCIsXCJtb2RhbEJ1dHRvblwiOlwibzhWUlZ4TXJzMXhYYXZBRHl4akxHXCJ9OyIsIi8vIGV4dHJhY3RlZCBieSBtaW5pLWNzcy1leHRyYWN0LXBsdWdpblxubW9kdWxlLmV4cG9ydHMgPSB7XCJpY29uXCI6XCJ1aDh6a21RcDV5Yms1V0pTbGE2OURcIixcInNtYWxsXCI6XCJfOURJQ3RxbVFTbkxQam0xWEk3WVZzXCIsXCJsYXJnZVwiOlwiXzJyZ3VjQUg4Qm5saS1jbWp6OWkyQzJcIixcImludmVydGVkXCI6XCJJLWVJNXE4cmQyYlNwOUItRmhVemFcIn07IiwiLy8gZXh0cmFjdGVkIGJ5IG1pbmktY3NzLWV4dHJhY3QtcGx1Z2luXG5tb2R1bGUuZXhwb3J0cyA9IHtcImNvbnRhaW5lclwiOlwiQ1BITmQ4b3NLakx2UURFUVVFcnV4XCIsXCJoZWFkZXJcIjpcIl8xZTdoSFNWbzU5ZTh5UW5oYzlCNklkXCIsXCJsaXN0XCI6XCJfMXcxVzhFNl9IemZlczNXWlRZWmFKS1wifTsiLCIvLyBleHRyYWN0ZWQgYnkgbWluaS1jc3MtZXh0cmFjdC1wbHVnaW5cbm1vZHVsZS5leHBvcnRzID0ge1wib3ZlcmxheVwiOlwiXzJRZ3B5ckRjVVF5S1lFU0M1RFhYSnJcIixcInRyYW5zcGFyZW50XCI6XCJfMjhmVm1veHA2OU9Qcjg4RXcwelZlTlwiLFwiZml4ZWRcIjpcIl8yc1UzNTE1RWJGRmdlUDF5SzJadWJ6XCJ9OyIsIi8vIGV4dHJhY3RlZCBieSBtaW5pLWNzcy1leHRyYWN0LXBsdWdpblxubW9kdWxlLmV4cG9ydHMgPSB7XCJ0ZXh0SW5wdXRcIjpcIl8yd2ZxT3pXQm9Bbl9LN2dvcXZqWEplXCIsXCJzbWFsbFwiOlwiXzFhNFFPVkpCMHpXM1VyZl81aHFOampcIixcImxhcmdlXCI6XCJfM0RRNTJRZF8xSzRfVnh4VnY3MjhTWFwiLFwidGV4dExhYmVsXCI6XCJfMzFvQUFPRV9kdkdvQXo5cUptbzhFR1wifTsiLCJleHBvcnQgeyBkZWZhdWx0IGFzIEJ1dHRvbiB9IGZyb20gXCIuL0J1dHRvblwiO1xuIiwiZXhwb3J0IHsgZGVmYXVsdCBhcyBCdXR0b25MaW5rIH0gZnJvbSBcIi4vQnV0dG9uTGlua1wiO1xuIiwiLyohXG4gKiBob3RrZXlzLWpzIHYzLjguMVxuICogQSBzaW1wbGUgbWljcm8tbGlicmFyeSBmb3IgZGVmaW5pbmcgYW5kIGRpc3BhdGNoaW5nIGtleWJvYXJkIHNob3J0Y3V0cy4gSXQgaGFzIG5vIGRlcGVuZGVuY2llcy5cbiAqIFxuICogQ29weXJpZ2h0IChjKSAyMDIwIGtlbm55IHdvbmcgPHdvd29ob29AcXEuY29tPlxuICogaHR0cDovL2pheXdjamxvdmUuZ2l0aHViLmlvL2hvdGtleXNcbiAqIFxuICogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICovXG5cbnZhciBpc2ZmID0gdHlwZW9mIG5hdmlnYXRvciAhPT0gJ3VuZGVmaW5lZCcgPyBuYXZpZ2F0b3IudXNlckFnZW50LnRvTG93ZXJDYXNlKCkuaW5kZXhPZignZmlyZWZveCcpID4gMCA6IGZhbHNlOyAvLyDnu5Hlrprkuovku7ZcblxuZnVuY3Rpb24gYWRkRXZlbnQob2JqZWN0LCBldmVudCwgbWV0aG9kKSB7XG4gIGlmIChvYmplY3QuYWRkRXZlbnRMaXN0ZW5lcikge1xuICAgIG9iamVjdC5hZGRFdmVudExpc3RlbmVyKGV2ZW50LCBtZXRob2QsIGZhbHNlKTtcbiAgfSBlbHNlIGlmIChvYmplY3QuYXR0YWNoRXZlbnQpIHtcbiAgICBvYmplY3QuYXR0YWNoRXZlbnQoXCJvblwiLmNvbmNhdChldmVudCksIGZ1bmN0aW9uICgpIHtcbiAgICAgIG1ldGhvZCh3aW5kb3cuZXZlbnQpO1xuICAgIH0pO1xuICB9XG59IC8vIOS/rumlsOmUrui9rOaNouaIkOWvueW6lOeahOmUrueggVxuXG5cbmZ1bmN0aW9uIGdldE1vZHMobW9kaWZpZXIsIGtleSkge1xuICB2YXIgbW9kcyA9IGtleS5zbGljZSgwLCBrZXkubGVuZ3RoIC0gMSk7XG5cbiAgZm9yICh2YXIgaSA9IDA7IGkgPCBtb2RzLmxlbmd0aDsgaSsrKSB7XG4gICAgbW9kc1tpXSA9IG1vZGlmaWVyW21vZHNbaV0udG9Mb3dlckNhc2UoKV07XG4gIH1cblxuICByZXR1cm4gbW9kcztcbn0gLy8g5aSE55CG5Lyg55qEa2V55a2X56ym5Liy6L2s5o2i5oiQ5pWw57uEXG5cblxuZnVuY3Rpb24gZ2V0S2V5cyhrZXkpIHtcbiAgaWYgKHR5cGVvZiBrZXkgIT09ICdzdHJpbmcnKSBrZXkgPSAnJztcbiAga2V5ID0ga2V5LnJlcGxhY2UoL1xccy9nLCAnJyk7IC8vIOWMuemFjeS7u+S9leepuueZveWtl+espizljIXmi6znqbrmoLzjgIHliLbooajnrKbjgIHmjaLpobXnrKbnrYnnrYlcblxuICB2YXIga2V5cyA9IGtleS5zcGxpdCgnLCcpOyAvLyDlkIzml7borr7nva7lpJrkuKrlv6vmjbfplK7vvIzku6UnLCfliIblibJcblxuICB2YXIgaW5kZXggPSBrZXlzLmxhc3RJbmRleE9mKCcnKTsgLy8g5b+r5o236ZSu5Y+v6IO95YyF5ZCrJywn77yM6ZyA54m55q6K5aSE55CGXG5cbiAgZm9yICg7IGluZGV4ID49IDA7KSB7XG4gICAga2V5c1tpbmRleCAtIDFdICs9ICcsJztcbiAgICBrZXlzLnNwbGljZShpbmRleCwgMSk7XG4gICAgaW5kZXggPSBrZXlzLmxhc3RJbmRleE9mKCcnKTtcbiAgfVxuXG4gIHJldHVybiBrZXlzO1xufSAvLyDmr5TovoPkv67ppbDplK7nmoTmlbDnu4RcblxuXG5mdW5jdGlvbiBjb21wYXJlQXJyYXkoYTEsIGEyKSB7XG4gIHZhciBhcnIxID0gYTEubGVuZ3RoID49IGEyLmxlbmd0aCA/IGExIDogYTI7XG4gIHZhciBhcnIyID0gYTEubGVuZ3RoID49IGEyLmxlbmd0aCA/IGEyIDogYTE7XG4gIHZhciBpc0luZGV4ID0gdHJ1ZTtcblxuICBmb3IgKHZhciBpID0gMDsgaSA8IGFycjEubGVuZ3RoOyBpKyspIHtcbiAgICBpZiAoYXJyMi5pbmRleE9mKGFycjFbaV0pID09PSAtMSkgaXNJbmRleCA9IGZhbHNlO1xuICB9XG5cbiAgcmV0dXJuIGlzSW5kZXg7XG59XG5cbnZhciBfa2V5TWFwID0ge1xuICBiYWNrc3BhY2U6IDgsXG4gIHRhYjogOSxcbiAgY2xlYXI6IDEyLFxuICBlbnRlcjogMTMsXG4gIHJldHVybjogMTMsXG4gIGVzYzogMjcsXG4gIGVzY2FwZTogMjcsXG4gIHNwYWNlOiAzMixcbiAgbGVmdDogMzcsXG4gIHVwOiAzOCxcbiAgcmlnaHQ6IDM5LFxuICBkb3duOiA0MCxcbiAgZGVsOiA0NixcbiAgZGVsZXRlOiA0NixcbiAgaW5zOiA0NSxcbiAgaW5zZXJ0OiA0NSxcbiAgaG9tZTogMzYsXG4gIGVuZDogMzUsXG4gIHBhZ2V1cDogMzMsXG4gIHBhZ2Vkb3duOiAzNCxcbiAgY2Fwc2xvY2s6IDIwLFxuICAn4oeqJzogMjAsXG4gICcsJzogMTg4LFxuICAnLic6IDE5MCxcbiAgJy8nOiAxOTEsXG4gICdgJzogMTkyLFxuICAnLSc6IGlzZmYgPyAxNzMgOiAxODksXG4gICc9JzogaXNmZiA/IDYxIDogMTg3LFxuICAnOyc6IGlzZmYgPyA1OSA6IDE4NixcbiAgJ1xcJyc6IDIyMixcbiAgJ1snOiAyMTksXG4gICddJzogMjIxLFxuICAnXFxcXCc6IDIyMFxufTsgLy8gTW9kaWZpZXIgS2V5c1xuXG52YXIgX21vZGlmaWVyID0ge1xuICAvLyBzaGlmdEtleVxuICAn4oenJzogMTYsXG4gIHNoaWZ0OiAxNixcbiAgLy8gYWx0S2V5XG4gICfijKUnOiAxOCxcbiAgYWx0OiAxOCxcbiAgb3B0aW9uOiAxOCxcbiAgLy8gY3RybEtleVxuICAn4oyDJzogMTcsXG4gIGN0cmw6IDE3LFxuICBjb250cm9sOiAxNyxcbiAgLy8gbWV0YUtleVxuICAn4oyYJzogOTEsXG4gIGNtZDogOTEsXG4gIGNvbW1hbmQ6IDkxXG59O1xudmFyIG1vZGlmaWVyTWFwID0ge1xuICAxNjogJ3NoaWZ0S2V5JyxcbiAgMTg6ICdhbHRLZXknLFxuICAxNzogJ2N0cmxLZXknLFxuICA5MTogJ21ldGFLZXknLFxuICBzaGlmdEtleTogMTYsXG4gIGN0cmxLZXk6IDE3LFxuICBhbHRLZXk6IDE4LFxuICBtZXRhS2V5OiA5MVxufTtcbnZhciBfbW9kcyA9IHtcbiAgMTY6IGZhbHNlLFxuICAxODogZmFsc2UsXG4gIDE3OiBmYWxzZSxcbiAgOTE6IGZhbHNlXG59O1xudmFyIF9oYW5kbGVycyA9IHt9OyAvLyBGMX5GMTIgc3BlY2lhbCBrZXlcblxuZm9yICh2YXIgayA9IDE7IGsgPCAyMDsgaysrKSB7XG4gIF9rZXlNYXBbXCJmXCIuY29uY2F0KGspXSA9IDExMSArIGs7XG59XG5cbnZhciBfZG93bktleXMgPSBbXTsgLy8g6K6w5b2V5pGB5LiL55qE57uR5a6a6ZSuXG5cbnZhciBfc2NvcGUgPSAnYWxsJzsgLy8g6buY6K6k54Ot6ZSu6IyD5Zu0XG5cbnZhciBlbGVtZW50SGFzQmluZEV2ZW50ID0gW107IC8vIOW3sue7keWumuS6i+S7tueahOiKgueCueiusOW9lVxuLy8g6L+U5Zue6ZSu56CBXG5cbnZhciBjb2RlID0gZnVuY3Rpb24gY29kZSh4KSB7XG4gIHJldHVybiBfa2V5TWFwW3gudG9Mb3dlckNhc2UoKV0gfHwgX21vZGlmaWVyW3gudG9Mb3dlckNhc2UoKV0gfHwgeC50b1VwcGVyQ2FzZSgpLmNoYXJDb2RlQXQoMCk7XG59OyAvLyDorr7nva7ojrflj5blvZPliY3ojIPlm7TvvIjpu5jorqTkuLon5omA5pyJJ++8iVxuXG5cbmZ1bmN0aW9uIHNldFNjb3BlKHNjb3BlKSB7XG4gIF9zY29wZSA9IHNjb3BlIHx8ICdhbGwnO1xufSAvLyDojrflj5blvZPliY3ojIPlm7RcblxuXG5mdW5jdGlvbiBnZXRTY29wZSgpIHtcbiAgcmV0dXJuIF9zY29wZSB8fCAnYWxsJztcbn0gLy8g6I635Y+W5pGB5LiL57uR5a6a6ZSu55qE6ZSu5YC8XG5cblxuZnVuY3Rpb24gZ2V0UHJlc3NlZEtleUNvZGVzKCkge1xuICByZXR1cm4gX2Rvd25LZXlzLnNsaWNlKDApO1xufSAvLyDooajljZXmjqfku7bmjqfku7bliKTmlq0g6L+U5ZueIEJvb2xlYW5cbi8vIGhvdGtleSBpcyBlZmZlY3RpdmUgb25seSB3aGVuIGZpbHRlciByZXR1cm4gdHJ1ZVxuXG5cbmZ1bmN0aW9uIGZpbHRlcihldmVudCkge1xuICB2YXIgdGFyZ2V0ID0gZXZlbnQudGFyZ2V0IHx8IGV2ZW50LnNyY0VsZW1lbnQ7XG4gIHZhciB0YWdOYW1lID0gdGFyZ2V0LnRhZ05hbWU7XG4gIHZhciBmbGFnID0gdHJ1ZTsgLy8gaWdub3JlOiBpc0NvbnRlbnRFZGl0YWJsZSA9PT0gJ3RydWUnLCA8aW5wdXQ+IGFuZCA8dGV4dGFyZWE+IHdoZW4gcmVhZE9ubHkgc3RhdGUgaXMgZmFsc2UsIDxzZWxlY3Q+XG5cbiAgaWYgKHRhcmdldC5pc0NvbnRlbnRFZGl0YWJsZSB8fCAodGFnTmFtZSA9PT0gJ0lOUFVUJyB8fCB0YWdOYW1lID09PSAnVEVYVEFSRUEnIHx8IHRhZ05hbWUgPT09ICdTRUxFQ1QnKSAmJiAhdGFyZ2V0LnJlYWRPbmx5KSB7XG4gICAgZmxhZyA9IGZhbHNlO1xuICB9XG5cbiAgcmV0dXJuIGZsYWc7XG59IC8vIOWIpOaWreaRgeS4i+eahOmUruaYr+WQpuS4uuafkOS4qumUru+8jOi/lOWbnnRydWXmiJbogIVmYWxzZVxuXG5cbmZ1bmN0aW9uIGlzUHJlc3NlZChrZXlDb2RlKSB7XG4gIGlmICh0eXBlb2Yga2V5Q29kZSA9PT0gJ3N0cmluZycpIHtcbiAgICBrZXlDb2RlID0gY29kZShrZXlDb2RlKTsgLy8g6L2s5o2i5oiQ6ZSu56CBXG4gIH1cblxuICByZXR1cm4gX2Rvd25LZXlzLmluZGV4T2Yoa2V5Q29kZSkgIT09IC0xO1xufSAvLyDlvqrnjq/liKDpmaRoYW5kbGVyc+S4reeahOaJgOaciSBzY29wZSjojIPlm7QpXG5cblxuZnVuY3Rpb24gZGVsZXRlU2NvcGUoc2NvcGUsIG5ld1Njb3BlKSB7XG4gIHZhciBoYW5kbGVycztcbiAgdmFyIGk7IC8vIOayoeacieaMh+WumnNjb3Bl77yM6I635Y+Wc2NvcGVcblxuICBpZiAoIXNjb3BlKSBzY29wZSA9IGdldFNjb3BlKCk7XG5cbiAgZm9yICh2YXIga2V5IGluIF9oYW5kbGVycykge1xuICAgIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoX2hhbmRsZXJzLCBrZXkpKSB7XG4gICAgICBoYW5kbGVycyA9IF9oYW5kbGVyc1trZXldO1xuXG4gICAgICBmb3IgKGkgPSAwOyBpIDwgaGFuZGxlcnMubGVuZ3RoOykge1xuICAgICAgICBpZiAoaGFuZGxlcnNbaV0uc2NvcGUgPT09IHNjb3BlKSBoYW5kbGVycy5zcGxpY2UoaSwgMSk7ZWxzZSBpKys7XG4gICAgICB9XG4gICAgfVxuICB9IC8vIOWmguaenHNjb3Bl6KKr5Yig6Zmk77yM5bCGc2NvcGXph43nva7kuLphbGxcblxuXG4gIGlmIChnZXRTY29wZSgpID09PSBzY29wZSkgc2V0U2NvcGUobmV3U2NvcGUgfHwgJ2FsbCcpO1xufSAvLyDmuIXpmaTkv67ppbDplK5cblxuXG5mdW5jdGlvbiBjbGVhck1vZGlmaWVyKGV2ZW50KSB7XG4gIHZhciBrZXkgPSBldmVudC5rZXlDb2RlIHx8IGV2ZW50LndoaWNoIHx8IGV2ZW50LmNoYXJDb2RlO1xuXG4gIHZhciBpID0gX2Rvd25LZXlzLmluZGV4T2Yoa2V5KTsgLy8g5LuO5YiX6KGo5Lit5riF6Zmk5oyJ5Y6L6L+H55qE6ZSuXG5cblxuICBpZiAoaSA+PSAwKSB7XG4gICAgX2Rvd25LZXlzLnNwbGljZShpLCAxKTtcbiAgfSAvLyDnibnmrorlpITnkIYgY21tYW5kIOmUru+8jOWcqCBjbW1hbmQg57uE5ZCI5b+r5o236ZSuIGtleXVwIOWPquaJp+ihjOS4gOasoeeahOmXrumimFxuXG5cbiAgaWYgKGV2ZW50LmtleSAmJiBldmVudC5rZXkudG9Mb3dlckNhc2UoKSA9PT0gJ21ldGEnKSB7XG4gICAgX2Rvd25LZXlzLnNwbGljZSgwLCBfZG93bktleXMubGVuZ3RoKTtcbiAgfSAvLyDkv67ppbDplK4gc2hpZnRLZXkgYWx0S2V5IGN0cmxLZXkgKGNvbW1hbmR8fG1ldGFLZXkpIOa4hemZpFxuXG5cbiAgaWYgKGtleSA9PT0gOTMgfHwga2V5ID09PSAyMjQpIGtleSA9IDkxO1xuXG4gIGlmIChrZXkgaW4gX21vZHMpIHtcbiAgICBfbW9kc1trZXldID0gZmFsc2U7IC8vIOWwhuS/rumlsOmUrumHjee9ruS4umZhbHNlXG5cbiAgICBmb3IgKHZhciBrIGluIF9tb2RpZmllcikge1xuICAgICAgaWYgKF9tb2RpZmllcltrXSA9PT0ga2V5KSBob3RrZXlzW2tdID0gZmFsc2U7XG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIHVuYmluZChrZXlzSW5mbykge1xuICAvLyB1bmJpbmQoKSwgdW5iaW5kIGFsbCBrZXlzXG4gIGlmICgha2V5c0luZm8pIHtcbiAgICBPYmplY3Qua2V5cyhfaGFuZGxlcnMpLmZvckVhY2goZnVuY3Rpb24gKGtleSkge1xuICAgICAgcmV0dXJuIGRlbGV0ZSBfaGFuZGxlcnNba2V5XTtcbiAgICB9KTtcbiAgfSBlbHNlIGlmIChBcnJheS5pc0FycmF5KGtleXNJbmZvKSkge1xuICAgIC8vIHN1cHBvcnQgbGlrZSA6IHVuYmluZChbe2tleTogJ2N0cmwrYScsIHNjb3BlOiAnczEnfSwge2tleTogJ2N0cmwtYScsIHNjb3BlOiAnczInLCBzcGxpdEtleTogJy0nfV0pXG4gICAga2V5c0luZm8uZm9yRWFjaChmdW5jdGlvbiAoaW5mbykge1xuICAgICAgaWYgKGluZm8ua2V5KSBlYWNoVW5iaW5kKGluZm8pO1xuICAgIH0pO1xuICB9IGVsc2UgaWYgKHR5cGVvZiBrZXlzSW5mbyA9PT0gJ29iamVjdCcpIHtcbiAgICAvLyBzdXBwb3J0IGxpa2UgdW5iaW5kKHtrZXk6ICdjdHJsK2EsIGN0cmwrYicsIHNjb3BlOidhYmMnfSlcbiAgICBpZiAoa2V5c0luZm8ua2V5KSBlYWNoVW5iaW5kKGtleXNJbmZvKTtcbiAgfSBlbHNlIGlmICh0eXBlb2Yga2V5c0luZm8gPT09ICdzdHJpbmcnKSB7XG4gICAgZm9yICh2YXIgX2xlbiA9IGFyZ3VtZW50cy5sZW5ndGgsIGFyZ3MgPSBuZXcgQXJyYXkoX2xlbiA+IDEgPyBfbGVuIC0gMSA6IDApLCBfa2V5ID0gMTsgX2tleSA8IF9sZW47IF9rZXkrKykge1xuICAgICAgYXJnc1tfa2V5IC0gMV0gPSBhcmd1bWVudHNbX2tleV07XG4gICAgfVxuXG4gICAgLy8gc3VwcG9ydCBvbGQgbWV0aG9kXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbGluZVxuICAgIHZhciBzY29wZSA9IGFyZ3NbMF0sXG4gICAgICAgIG1ldGhvZCA9IGFyZ3NbMV07XG5cbiAgICBpZiAodHlwZW9mIHNjb3BlID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICBtZXRob2QgPSBzY29wZTtcbiAgICAgIHNjb3BlID0gJyc7XG4gICAgfVxuXG4gICAgZWFjaFVuYmluZCh7XG4gICAgICBrZXk6IGtleXNJbmZvLFxuICAgICAgc2NvcGU6IHNjb3BlLFxuICAgICAgbWV0aG9kOiBtZXRob2QsXG4gICAgICBzcGxpdEtleTogJysnXG4gICAgfSk7XG4gIH1cbn0gLy8g6Kej6Zmk57uR5a6a5p+Q5Liq6IyD5Zu055qE5b+r5o236ZSuXG5cblxudmFyIGVhY2hVbmJpbmQgPSBmdW5jdGlvbiBlYWNoVW5iaW5kKF9yZWYpIHtcbiAgdmFyIGtleSA9IF9yZWYua2V5LFxuICAgICAgc2NvcGUgPSBfcmVmLnNjb3BlLFxuICAgICAgbWV0aG9kID0gX3JlZi5tZXRob2QsXG4gICAgICBfcmVmJHNwbGl0S2V5ID0gX3JlZi5zcGxpdEtleSxcbiAgICAgIHNwbGl0S2V5ID0gX3JlZiRzcGxpdEtleSA9PT0gdm9pZCAwID8gJysnIDogX3JlZiRzcGxpdEtleTtcbiAgdmFyIG11bHRpcGxlS2V5cyA9IGdldEtleXMoa2V5KTtcbiAgbXVsdGlwbGVLZXlzLmZvckVhY2goZnVuY3Rpb24gKG9yaWdpbktleSkge1xuICAgIHZhciB1bmJpbmRLZXlzID0gb3JpZ2luS2V5LnNwbGl0KHNwbGl0S2V5KTtcbiAgICB2YXIgbGVuID0gdW5iaW5kS2V5cy5sZW5ndGg7XG4gICAgdmFyIGxhc3RLZXkgPSB1bmJpbmRLZXlzW2xlbiAtIDFdO1xuICAgIHZhciBrZXlDb2RlID0gbGFzdEtleSA9PT0gJyonID8gJyonIDogY29kZShsYXN0S2V5KTtcbiAgICBpZiAoIV9oYW5kbGVyc1trZXlDb2RlXSkgcmV0dXJuOyAvLyDliKTmlq3mmK/lkKbkvKDlhaXojIPlm7TvvIzmsqHmnInlsLHojrflj5bojIPlm7RcblxuICAgIGlmICghc2NvcGUpIHNjb3BlID0gZ2V0U2NvcGUoKTtcbiAgICB2YXIgbW9kcyA9IGxlbiA+IDEgPyBnZXRNb2RzKF9tb2RpZmllciwgdW5iaW5kS2V5cykgOiBbXTtcbiAgICBfaGFuZGxlcnNba2V5Q29kZV0gPSBfaGFuZGxlcnNba2V5Q29kZV0ubWFwKGZ1bmN0aW9uIChyZWNvcmQpIHtcbiAgICAgIC8vIOmAmui/h+WHveaVsOWIpOaWre+8jOaYr+WQpuino+mZpOe7keWumu+8jOWHveaVsOebuOetieebtOaOpei/lOWbnlxuICAgICAgdmFyIGlzTWF0Y2hpbmdNZXRob2QgPSBtZXRob2QgPyByZWNvcmQubWV0aG9kID09PSBtZXRob2QgOiB0cnVlO1xuXG4gICAgICBpZiAoaXNNYXRjaGluZ01ldGhvZCAmJiByZWNvcmQuc2NvcGUgPT09IHNjb3BlICYmIGNvbXBhcmVBcnJheShyZWNvcmQubW9kcywgbW9kcykpIHtcbiAgICAgICAgcmV0dXJuIHt9O1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gcmVjb3JkO1xuICAgIH0pO1xuICB9KTtcbn07IC8vIOWvueebkeWQrOWvueW6lOW/q+aNt+mUrueahOWbnuiwg+WHveaVsOi/m+ihjOWkhOeQhlxuXG5cbmZ1bmN0aW9uIGV2ZW50SGFuZGxlcihldmVudCwgaGFuZGxlciwgc2NvcGUpIHtcbiAgdmFyIG1vZGlmaWVyc01hdGNoOyAvLyDnnIvlroPmmK/lkKblnKjlvZPliY3ojIPlm7RcblxuICBpZiAoaGFuZGxlci5zY29wZSA9PT0gc2NvcGUgfHwgaGFuZGxlci5zY29wZSA9PT0gJ2FsbCcpIHtcbiAgICAvLyDmo4Dmn6XmmK/lkKbljLnphY3kv67ppbDnrKbvvIjlpoLmnpzmnInov5Tlm550cnVl77yJXG4gICAgbW9kaWZpZXJzTWF0Y2ggPSBoYW5kbGVyLm1vZHMubGVuZ3RoID4gMDtcblxuICAgIGZvciAodmFyIHkgaW4gX21vZHMpIHtcbiAgICAgIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoX21vZHMsIHkpKSB7XG4gICAgICAgIGlmICghX21vZHNbeV0gJiYgaGFuZGxlci5tb2RzLmluZGV4T2YoK3kpID4gLTEgfHwgX21vZHNbeV0gJiYgaGFuZGxlci5tb2RzLmluZGV4T2YoK3kpID09PSAtMSkge1xuICAgICAgICAgIG1vZGlmaWVyc01hdGNoID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IC8vIOiwg+eUqOWkhOeQhueoi+W6j++8jOWmguaenOaYr+S/rumlsOmUruS4jeWBmuWkhOeQhlxuXG5cbiAgICBpZiAoaGFuZGxlci5tb2RzLmxlbmd0aCA9PT0gMCAmJiAhX21vZHNbMTZdICYmICFfbW9kc1sxOF0gJiYgIV9tb2RzWzE3XSAmJiAhX21vZHNbOTFdIHx8IG1vZGlmaWVyc01hdGNoIHx8IGhhbmRsZXIuc2hvcnRjdXQgPT09ICcqJykge1xuICAgICAgaWYgKGhhbmRsZXIubWV0aG9kKGV2ZW50LCBoYW5kbGVyKSA9PT0gZmFsc2UpIHtcbiAgICAgICAgaWYgKGV2ZW50LnByZXZlbnREZWZhdWx0KSBldmVudC5wcmV2ZW50RGVmYXVsdCgpO2Vsc2UgZXZlbnQucmV0dXJuVmFsdWUgPSBmYWxzZTtcbiAgICAgICAgaWYgKGV2ZW50LnN0b3BQcm9wYWdhdGlvbikgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIGlmIChldmVudC5jYW5jZWxCdWJibGUpIGV2ZW50LmNhbmNlbEJ1YmJsZSA9IHRydWU7XG4gICAgICB9XG4gICAgfVxuICB9XG59IC8vIOWkhOeQhmtleWRvd27kuovku7ZcblxuXG5mdW5jdGlvbiBkaXNwYXRjaChldmVudCkge1xuICB2YXIgYXN0ZXJpc2sgPSBfaGFuZGxlcnNbJyonXTtcbiAgdmFyIGtleSA9IGV2ZW50LmtleUNvZGUgfHwgZXZlbnQud2hpY2ggfHwgZXZlbnQuY2hhckNvZGU7IC8vIOihqOWNleaOp+S7tui/h+a7pCDpu5jorqTooajljZXmjqfku7bkuI3op6blj5Hlv6vmjbfplK5cblxuICBpZiAoIWhvdGtleXMuZmlsdGVyLmNhbGwodGhpcywgZXZlbnQpKSByZXR1cm47IC8vIEdlY2tvKEZpcmVmb3gp55qEY29tbWFuZOmUruWAvDIyNO+8jOWcqFdlYmtpdChDaHJvbWUp5Lit5L+d5oyB5LiA6Ie0XG4gIC8vIFdlYmtpdOW3puWPsyBjb21tYW5kIOmUruWAvOS4jeS4gOagt1xuXG4gIGlmIChrZXkgPT09IDkzIHx8IGtleSA9PT0gMjI0KSBrZXkgPSA5MTtcbiAgLyoqXG4gICAqIENvbGxlY3QgYm91bmQga2V5c1xuICAgKiBJZiBhbiBJbnB1dCBNZXRob2QgRWRpdG9yIGlzIHByb2Nlc3Npbmcga2V5IGlucHV0IGFuZCB0aGUgZXZlbnQgaXMga2V5ZG93biwgcmV0dXJuIDIyOS5cbiAgICogaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMjUwNDM5MzQvaXMtaXQtb2stdG8taWdub3JlLWtleWRvd24tZXZlbnRzLXdpdGgta2V5Y29kZS0yMjlcbiAgICogaHR0cDovL2xpc3RzLnczLm9yZy9BcmNoaXZlcy9QdWJsaWMvd3d3LWRvbS8yMDEwSnVsU2VwL2F0dC0wMTgyL2tleUNvZGUtc3BlYy5odG1sXG4gICAqL1xuXG4gIGlmIChfZG93bktleXMuaW5kZXhPZihrZXkpID09PSAtMSAmJiBrZXkgIT09IDIyOSkgX2Rvd25LZXlzLnB1c2goa2V5KTtcbiAgLyoqXG4gICAqIEplc3QgdGVzdCBjYXNlcyBhcmUgcmVxdWlyZWQuXG4gICAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICovXG5cbiAgWydjdHJsS2V5JywgJ2FsdEtleScsICdzaGlmdEtleScsICdtZXRhS2V5J10uZm9yRWFjaChmdW5jdGlvbiAoa2V5TmFtZSkge1xuICAgIHZhciBrZXlOdW0gPSBtb2RpZmllck1hcFtrZXlOYW1lXTtcblxuICAgIGlmIChldmVudFtrZXlOYW1lXSAmJiBfZG93bktleXMuaW5kZXhPZihrZXlOdW0pID09PSAtMSkge1xuICAgICAgX2Rvd25LZXlzLnB1c2goa2V5TnVtKTtcbiAgICB9IGVsc2UgaWYgKCFldmVudFtrZXlOYW1lXSAmJiBfZG93bktleXMuaW5kZXhPZihrZXlOdW0pID4gLTEpIHtcbiAgICAgIF9kb3duS2V5cy5zcGxpY2UoX2Rvd25LZXlzLmluZGV4T2Yoa2V5TnVtKSwgMSk7XG4gICAgfSBlbHNlIGlmIChrZXlOYW1lID09PSAnbWV0YUtleScgJiYgZXZlbnRba2V5TmFtZV0gJiYgX2Rvd25LZXlzLmxlbmd0aCA9PT0gMykge1xuICAgICAgLyoqXG4gICAgICAgKiBGaXggaWYgQ29tbWFuZCBpcyBwcmVzc2VkOlxuICAgICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICAgICovXG4gICAgICBpZiAoIShldmVudC5jdHJsS2V5IHx8IGV2ZW50LnNoaWZ0S2V5IHx8IGV2ZW50LmFsdEtleSkpIHtcbiAgICAgICAgX2Rvd25LZXlzID0gX2Rvd25LZXlzLnNsaWNlKF9kb3duS2V5cy5pbmRleE9mKGtleU51bSkpO1xuICAgICAgfVxuICAgIH1cbiAgfSk7XG4gIC8qKlxuICAgKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAqL1xuXG4gIGlmIChrZXkgaW4gX21vZHMpIHtcbiAgICBfbW9kc1trZXldID0gdHJ1ZTsgLy8g5bCG54m55q6K5a2X56ym55qEa2V55rOo5YaM5YiwIGhvdGtleXMg5LiKXG5cbiAgICBmb3IgKHZhciBrIGluIF9tb2RpZmllcikge1xuICAgICAgaWYgKF9tb2RpZmllcltrXSA9PT0ga2V5KSBob3RrZXlzW2tdID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBpZiAoIWFzdGVyaXNrKSByZXR1cm47XG4gIH0gLy8g5bCGIG1vZGlmaWVyTWFwIOmHjOmdoueahOS/rumlsOmUrue7keWumuWIsCBldmVudCDkuK1cblxuXG4gIGZvciAodmFyIGUgaW4gX21vZHMpIHtcbiAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKF9tb2RzLCBlKSkge1xuICAgICAgX21vZHNbZV0gPSBldmVudFttb2RpZmllck1hcFtlXV07XG4gICAgfVxuICB9XG4gIC8qKlxuICAgKiBodHRwczovL2dpdGh1Yi5jb20vamF5d2NqbG92ZS9ob3RrZXlzL3B1bGwvMTI5XG4gICAqIFRoaXMgc29sdmVzIHRoZSBpc3N1ZSBpbiBGaXJlZm94IG9uIFdpbmRvd3Mgd2hlcmUgaG90a2V5cyBjb3JyZXNwb25kaW5nIHRvIHNwZWNpYWwgY2hhcmFjdGVycyB3b3VsZCBub3QgdHJpZ2dlci5cbiAgICogQW4gZXhhbXBsZSBvZiB0aGlzIGlzIGN0cmwrYWx0K20gb24gYSBTd2VkaXNoIGtleWJvYXJkIHdoaWNoIGlzIHVzZWQgdG8gdHlwZSDOvC5cbiAgICogQnJvd3NlciBzdXBwb3J0OiBodHRwczovL2Nhbml1c2UuY29tLyNmZWF0PWtleWJvYXJkZXZlbnQtZ2V0bW9kaWZpZXJzdGF0ZVxuICAgKi9cblxuXG4gIGlmIChldmVudC5nZXRNb2RpZmllclN0YXRlICYmICEoZXZlbnQuYWx0S2V5ICYmICFldmVudC5jdHJsS2V5KSAmJiBldmVudC5nZXRNb2RpZmllclN0YXRlKCdBbHRHcmFwaCcpKSB7XG4gICAgaWYgKF9kb3duS2V5cy5pbmRleE9mKDE3KSA9PT0gLTEpIHtcbiAgICAgIF9kb3duS2V5cy5wdXNoKDE3KTtcbiAgICB9XG5cbiAgICBpZiAoX2Rvd25LZXlzLmluZGV4T2YoMTgpID09PSAtMSkge1xuICAgICAgX2Rvd25LZXlzLnB1c2goMTgpO1xuICAgIH1cblxuICAgIF9tb2RzWzE3XSA9IHRydWU7XG4gICAgX21vZHNbMThdID0gdHJ1ZTtcbiAgfSAvLyDojrflj5bojIPlm7Qg6buY6K6k5Li6IGBhbGxgXG5cblxuICB2YXIgc2NvcGUgPSBnZXRTY29wZSgpOyAvLyDlr7nku7vkvZXlv6vmjbfplK7pg73pnIDopoHlgZrnmoTlpITnkIZcblxuICBpZiAoYXN0ZXJpc2spIHtcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGFzdGVyaXNrLmxlbmd0aDsgaSsrKSB7XG4gICAgICBpZiAoYXN0ZXJpc2tbaV0uc2NvcGUgPT09IHNjb3BlICYmIChldmVudC50eXBlID09PSAna2V5ZG93bicgJiYgYXN0ZXJpc2tbaV0ua2V5ZG93biB8fCBldmVudC50eXBlID09PSAna2V5dXAnICYmIGFzdGVyaXNrW2ldLmtleXVwKSkge1xuICAgICAgICBldmVudEhhbmRsZXIoZXZlbnQsIGFzdGVyaXNrW2ldLCBzY29wZSk7XG4gICAgICB9XG4gICAgfVxuICB9IC8vIGtleSDkuI3lnKggX2hhbmRsZXJzIOS4rei/lOWbnlxuXG5cbiAgaWYgKCEoa2V5IGluIF9oYW5kbGVycykpIHJldHVybjtcblxuICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgX2hhbmRsZXJzW2tleV0ubGVuZ3RoOyBfaSsrKSB7XG4gICAgaWYgKGV2ZW50LnR5cGUgPT09ICdrZXlkb3duJyAmJiBfaGFuZGxlcnNba2V5XVtfaV0ua2V5ZG93biB8fCBldmVudC50eXBlID09PSAna2V5dXAnICYmIF9oYW5kbGVyc1trZXldW19pXS5rZXl1cCkge1xuICAgICAgaWYgKF9oYW5kbGVyc1trZXldW19pXS5rZXkpIHtcbiAgICAgICAgdmFyIHJlY29yZCA9IF9oYW5kbGVyc1trZXldW19pXTtcbiAgICAgICAgdmFyIHNwbGl0S2V5ID0gcmVjb3JkLnNwbGl0S2V5O1xuICAgICAgICB2YXIga2V5U2hvcnRjdXQgPSByZWNvcmQua2V5LnNwbGl0KHNwbGl0S2V5KTtcbiAgICAgICAgdmFyIF9kb3duS2V5c0N1cnJlbnQgPSBbXTsgLy8g6K6w5b2V5b2T5YmN5oyJ6ZSu6ZSu5YC8XG5cbiAgICAgICAgZm9yICh2YXIgYSA9IDA7IGEgPCBrZXlTaG9ydGN1dC5sZW5ndGg7IGErKykge1xuICAgICAgICAgIF9kb3duS2V5c0N1cnJlbnQucHVzaChjb2RlKGtleVNob3J0Y3V0W2FdKSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoX2Rvd25LZXlzQ3VycmVudC5zb3J0KCkuam9pbignJykgPT09IF9kb3duS2V5cy5zb3J0KCkuam9pbignJykpIHtcbiAgICAgICAgICAvLyDmib7liLDlpITnkIblhoXlrrlcbiAgICAgICAgICBldmVudEhhbmRsZXIoZXZlbnQsIHJlY29yZCwgc2NvcGUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59IC8vIOWIpOaWrSBlbGVtZW50IOaYr+WQpuW3sue7j+e7keWumuS6i+S7tlxuXG5cbmZ1bmN0aW9uIGlzRWxlbWVudEJpbmQoZWxlbWVudCkge1xuICByZXR1cm4gZWxlbWVudEhhc0JpbmRFdmVudC5pbmRleE9mKGVsZW1lbnQpID4gLTE7XG59XG5cbmZ1bmN0aW9uIGhvdGtleXMoa2V5LCBvcHRpb24sIG1ldGhvZCkge1xuICBfZG93bktleXMgPSBbXTtcbiAgdmFyIGtleXMgPSBnZXRLZXlzKGtleSk7IC8vIOmcgOimgeWkhOeQhueahOW/q+aNt+mUruWIl+ihqFxuXG4gIHZhciBtb2RzID0gW107XG4gIHZhciBzY29wZSA9ICdhbGwnOyAvLyBzY29wZem7mOiupOS4umFsbO+8jOaJgOacieiMg+WbtOmDveacieaViFxuXG4gIHZhciBlbGVtZW50ID0gZG9jdW1lbnQ7IC8vIOW/q+aNt+mUruS6i+S7tue7keWumuiKgueCuVxuXG4gIHZhciBpID0gMDtcbiAgdmFyIGtleXVwID0gZmFsc2U7XG4gIHZhciBrZXlkb3duID0gdHJ1ZTtcbiAgdmFyIHNwbGl0S2V5ID0gJysnOyAvLyDlr7nkuLrorr7lrprojIPlm7TnmoTliKTmlq1cblxuICBpZiAobWV0aG9kID09PSB1bmRlZmluZWQgJiYgdHlwZW9mIG9wdGlvbiA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIG1ldGhvZCA9IG9wdGlvbjtcbiAgfVxuXG4gIGlmIChPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwob3B0aW9uKSA9PT0gJ1tvYmplY3QgT2JqZWN0XScpIHtcbiAgICBpZiAob3B0aW9uLnNjb3BlKSBzY29wZSA9IG9wdGlvbi5zY29wZTsgLy8gZXNsaW50LWRpc2FibGUtbGluZVxuXG4gICAgaWYgKG9wdGlvbi5lbGVtZW50KSBlbGVtZW50ID0gb3B0aW9uLmVsZW1lbnQ7IC8vIGVzbGludC1kaXNhYmxlLWxpbmVcblxuICAgIGlmIChvcHRpb24ua2V5dXApIGtleXVwID0gb3B0aW9uLmtleXVwOyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lXG5cbiAgICBpZiAob3B0aW9uLmtleWRvd24gIT09IHVuZGVmaW5lZCkga2V5ZG93biA9IG9wdGlvbi5rZXlkb3duOyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lXG5cbiAgICBpZiAodHlwZW9mIG9wdGlvbi5zcGxpdEtleSA9PT0gJ3N0cmluZycpIHNwbGl0S2V5ID0gb3B0aW9uLnNwbGl0S2V5OyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lXG4gIH1cblxuICBpZiAodHlwZW9mIG9wdGlvbiA9PT0gJ3N0cmluZycpIHNjb3BlID0gb3B0aW9uOyAvLyDlr7nkuo7mr4/kuKrlv6vmjbfplK7ov5vooYzlpITnkIZcblxuICBmb3IgKDsgaSA8IGtleXMubGVuZ3RoOyBpKyspIHtcbiAgICBrZXkgPSBrZXlzW2ldLnNwbGl0KHNwbGl0S2V5KTsgLy8g5oyJ6ZSu5YiX6KGoXG5cbiAgICBtb2RzID0gW107IC8vIOWmguaenOaYr+e7hOWQiOW/q+aNt+mUruWPluW+l+e7hOWQiOW/q+aNt+mUrlxuXG4gICAgaWYgKGtleS5sZW5ndGggPiAxKSBtb2RzID0gZ2V0TW9kcyhfbW9kaWZpZXIsIGtleSk7IC8vIOWwhumdnuS/rumlsOmUrui9rOWMluS4uumUrueggVxuXG4gICAga2V5ID0ga2V5W2tleS5sZW5ndGggLSAxXTtcbiAgICBrZXkgPSBrZXkgPT09ICcqJyA/ICcqJyA6IGNvZGUoa2V5KTsgLy8gKuihqOekuuWMuemFjeaJgOacieW/q+aNt+mUrlxuICAgIC8vIOWIpOaWrWtleeaYr+WQpuWcqF9oYW5kbGVyc+S4re+8jOS4jeWcqOWwsei1i+S4gOS4quepuuaVsOe7hFxuXG4gICAgaWYgKCEoa2V5IGluIF9oYW5kbGVycykpIF9oYW5kbGVyc1trZXldID0gW107XG5cbiAgICBfaGFuZGxlcnNba2V5XS5wdXNoKHtcbiAgICAgIGtleXVwOiBrZXl1cCxcbiAgICAgIGtleWRvd246IGtleWRvd24sXG4gICAgICBzY29wZTogc2NvcGUsXG4gICAgICBtb2RzOiBtb2RzLFxuICAgICAgc2hvcnRjdXQ6IGtleXNbaV0sXG4gICAgICBtZXRob2Q6IG1ldGhvZCxcbiAgICAgIGtleToga2V5c1tpXSxcbiAgICAgIHNwbGl0S2V5OiBzcGxpdEtleVxuICAgIH0pO1xuICB9IC8vIOWcqOWFqOWxgGRvY3VtZW505LiK6K6+572u5b+r5o236ZSuXG5cblxuICBpZiAodHlwZW9mIGVsZW1lbnQgIT09ICd1bmRlZmluZWQnICYmICFpc0VsZW1lbnRCaW5kKGVsZW1lbnQpICYmIHdpbmRvdykge1xuICAgIGVsZW1lbnRIYXNCaW5kRXZlbnQucHVzaChlbGVtZW50KTtcbiAgICBhZGRFdmVudChlbGVtZW50LCAna2V5ZG93bicsIGZ1bmN0aW9uIChlKSB7XG4gICAgICBkaXNwYXRjaChlKTtcbiAgICB9KTtcbiAgICBhZGRFdmVudCh3aW5kb3csICdmb2N1cycsIGZ1bmN0aW9uICgpIHtcbiAgICAgIF9kb3duS2V5cyA9IFtdO1xuICAgIH0pO1xuICAgIGFkZEV2ZW50KGVsZW1lbnQsICdrZXl1cCcsIGZ1bmN0aW9uIChlKSB7XG4gICAgICBkaXNwYXRjaChlKTtcbiAgICAgIGNsZWFyTW9kaWZpZXIoZSk7XG4gICAgfSk7XG4gIH1cbn1cblxudmFyIF9hcGkgPSB7XG4gIHNldFNjb3BlOiBzZXRTY29wZSxcbiAgZ2V0U2NvcGU6IGdldFNjb3BlLFxuICBkZWxldGVTY29wZTogZGVsZXRlU2NvcGUsXG4gIGdldFByZXNzZWRLZXlDb2RlczogZ2V0UHJlc3NlZEtleUNvZGVzLFxuICBpc1ByZXNzZWQ6IGlzUHJlc3NlZCxcbiAgZmlsdGVyOiBmaWx0ZXIsXG4gIHVuYmluZDogdW5iaW5kXG59O1xuXG5mb3IgKHZhciBhIGluIF9hcGkpIHtcbiAgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChfYXBpLCBhKSkge1xuICAgIGhvdGtleXNbYV0gPSBfYXBpW2FdO1xuICB9XG59XG5cbmlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJykge1xuICB2YXIgX2hvdGtleXMgPSB3aW5kb3cuaG90a2V5cztcblxuICBob3RrZXlzLm5vQ29uZmxpY3QgPSBmdW5jdGlvbiAoZGVlcCkge1xuICAgIGlmIChkZWVwICYmIHdpbmRvdy5ob3RrZXlzID09PSBob3RrZXlzKSB7XG4gICAgICB3aW5kb3cuaG90a2V5cyA9IF9ob3RrZXlzO1xuICAgIH1cblxuICAgIHJldHVybiBob3RrZXlzO1xuICB9O1xuXG4gIHdpbmRvdy5ob3RrZXlzID0gaG90a2V5cztcbn1cblxuZXhwb3J0IGRlZmF1bHQgaG90a2V5cztcbiIsImltcG9ydCBSZWFjdCwgeyB1c2VDYWxsYmFjayB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tIFwicHJvcC10eXBlc1wiO1xuaW1wb3J0IHsgdXNlSG90a2V5cyB9IGZyb20gXCJyZWFjdC1ob3RrZXlzLWhvb2tcIjtcblxuaW1wb3J0IHN0eWxlcyBmcm9tIFwiLi9Nb2RhbC5tb2R1bGUuY3NzXCI7XG5cbmZ1bmN0aW9uIE1vZGFsKHsgY2hpbGRyZW4sIGlzT3Blbiwgb25DbG9zZSwgYnV0dG9uIH0pIHtcbiAgdXNlSG90a2V5cyhcIkVzY2FwZVwiLCBvbkNsb3NlKTtcblxuICBjb25zdCBoYW5kbGVPdmVybGF5Q2xpY2sgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgb25DbG9zZSgpO1xuICB9LCBbb25DbG9zZV0pO1xuXG4gIHJldHVybiAoXG4gICAgaXNPcGVuICYmIChcbiAgICAgIDw+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzc05hbWU9e3N0eWxlcy5vdmVybGF5fVxuICAgICAgICAgIGRhdGEtdGVzdGlkPVwibW9kYWwtb3ZlcmxheVwiXG4gICAgICAgICAgb25DbGljaz17aGFuZGxlT3ZlcmxheUNsaWNrfVxuICAgICAgICAvPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17c3R5bGVzLm1vZGFsfSBkYXRhLXRlc3RpZD1cIm1vZGFsXCI+XG4gICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICA8L2Rpdj5cbiAgICAgICAge2J1dHRvbiAmJiA8ZGl2IGNsYXNzTmFtZT17c3R5bGVzLm1vZGFsQnV0dG9ufT57YnV0dG9ufTwvZGl2Pn1cbiAgICAgIDwvPlxuICAgIClcbiAgKTtcbn1cblxuTW9kYWwuZGVmYXVsdFByb3BzID0ge1xuICBvbkNsb3NlOiAoKSA9PiB7fSxcbn07XG5cbk1vZGFsLnByb3BUeXBlcyA9IHtcbiAgY2hpbGRyZW46IFByb3BUeXBlcy5ub2RlLmlzUmVxdWlyZWQsXG4gIGlzT3BlbjogUHJvcFR5cGVzLmJvb2wuaXNSZXF1aXJlZCxcbiAgb25DbG9zZTogUHJvcFR5cGVzLmZ1bmMsXG4gIGJ1dHRvbjogUHJvcFR5cGVzLm5vZGUsXG59O1xuXG5leHBvcnQgZGVmYXVsdCBNb2RhbDtcbiIsImltcG9ydCBob3RrZXlzIGZyb20gJ2hvdGtleXMtanMnO1xuaW1wb3J0IHsgdXNlUmVmLCB1c2VDYWxsYmFjaywgdXNlRWZmZWN0IH0gZnJvbSAncmVhY3QnO1xuXG5mdW5jdGlvbiB1c2VJc0hvdGtleVByZXNzZWQoKSB7XG4gICAgcmV0dXJuIGhvdGtleXMuaXNQcmVzc2VkO1xufVxuXG5mdW5jdGlvbiB1c2VIb3RrZXlzKGtleXMsIGNhbGxiYWNrLCBvcHRpb25zLCBkZXBzKSB7XG4gICAgaWYgKG9wdGlvbnMgaW5zdGFuY2VvZiBBcnJheSkge1xuICAgICAgICBkZXBzID0gb3B0aW9ucztcbiAgICAgICAgb3B0aW9ucyA9IHVuZGVmaW5lZDtcbiAgICB9XG4gICAgY29uc3QgeyBlbmFibGVPblRhZ3MsIGZpbHRlciB9ID0gb3B0aW9ucyB8fCB7fTtcbiAgICBjb25zdCByZWYgPSB1c2VSZWYobnVsbCk7XG4gICAgY29uc3QgbWVtb2lzZWRDYWxsYmFjayA9IHVzZUNhbGxiYWNrKChrZXlib2FyZEV2ZW50LCBob3RrZXlzRXZlbnQpID0+IHtcbiAgICAgICAgaWYgKHJlZi5jdXJyZW50ID09PSBudWxsIHx8IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQgPT09IHJlZi5jdXJyZW50KSB7XG4gICAgICAgICAgICBjYWxsYmFjayhrZXlib2FyZEV2ZW50LCBob3RrZXlzRXZlbnQpO1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH0sIGRlcHMgPyBbcmVmLCAuLi5kZXBzXSA6IFtyZWZdKTtcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBpZiAob3B0aW9ucyAmJiBvcHRpb25zLmVuYWJsZU9uVGFncykge1xuICAgICAgICAgICAgaG90a2V5cy5maWx0ZXIgPSAoeyB0YXJnZXQsIHNyY0VsZW1lbnQgfSkgPT4ge1xuICAgICAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICAgICAgICBjb25zdCB0YXJnZXRUYWdOYW1lID0gKHRhcmdldCAmJiB0YXJnZXQudGFnTmFtZSkgfHwgKHNyY0VsZW1lbnQgJiYgc3JjRWxlbWVudC50YWdOYW1lKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gQm9vbGVhbih0YXJnZXRUYWdOYW1lICYmIGVuYWJsZU9uVGFncyAmJiBlbmFibGVPblRhZ3MuaW5jbHVkZXModGFyZ2V0VGFnTmFtZSkpO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoZmlsdGVyKVxuICAgICAgICAgICAgaG90a2V5cy5maWx0ZXIgPSBmaWx0ZXI7XG4gICAgICAgIGhvdGtleXMoa2V5cywgb3B0aW9ucyB8fCB7fSwgbWVtb2lzZWRDYWxsYmFjayk7XG4gICAgICAgIHJldHVybiAoKSA9PiBob3RrZXlzLnVuYmluZChrZXlzLCBtZW1vaXNlZENhbGxiYWNrKTtcbiAgICB9LCBbbWVtb2lzZWRDYWxsYmFjaywgb3B0aW9ucywgZW5hYmxlT25UYWdzLCBmaWx0ZXIsIGtleXNdKTtcbiAgICByZXR1cm4gcmVmO1xufVxuXG5leHBvcnQgeyB1c2VIb3RrZXlzLCB1c2VJc0hvdGtleVByZXNzZWQgfTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4LmpzLm1hcFxuIiwiaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tIFwicHJvcC10eXBlc1wiO1xuaW1wb3J0IGNsYXNzY2F0IGZyb20gXCJjbGFzc2NhdFwiO1xuXG5pbXBvcnQgc3R5bGVzIGZyb20gXCIuL0NvbG9yU3dhdGNoLm1vZHVsZS5jc3NcIjtcblxuZnVuY3Rpb24gQ29sb3JTd2F0Y2goeyBjb2xvciwgaXNTZWxlY3RlZCwgb25DbGljayB9KSB7XG4gIHJldHVybiAoXG4gICAgPGJ1dHRvblxuICAgICAgY2xhc3NOYW1lPXtjbGFzc2NhdChbXG4gICAgICAgIHN0eWxlcy5jb2xvclN3YXRjaCxcbiAgICAgICAge1xuICAgICAgICAgIFtzdHlsZXMuc2VsZWN0ZWRdOiBpc1NlbGVjdGVkLFxuICAgICAgICB9LFxuICAgICAgXSl9XG4gICAgICBkYXRhLXRlc3RpZD1cImNvbG9yLXN3YXRjaFwiXG4gICAgICBkaXNhYmxlZD17aXNTZWxlY3RlZH1cbiAgICAgIG9uQ2xpY2s9e29uQ2xpY2t9XG4gICAgICBzdHlsZT17eyBiYWNrZ3JvdW5kQ29sb3I6IGNvbG9yLmhleENvZGUgfX1cbiAgICA+XG4gICAgICA8c3BhbiBjbGFzc05hbWU9e3N0eWxlcy5zck9ubHl9PntgU2VsZWN0ICR7Y29sb3IubGFiZWx9IGNvbG9yYH08L3NwYW4+XG4gICAgPC9idXR0b24+XG4gICk7XG59XG5cbkNvbG9yU3dhdGNoLmRlZmF1bHRQcm9wcyA9IHtcbiAgaXNTZWxlY3RlZDogZmFsc2UsXG59O1xuXG5Db2xvclN3YXRjaC5wcm9wVHlwZXMgPSB7XG4gIGNvbG9yOiBQcm9wVHlwZXMuc2hhcGUoe1xuICAgIGhleENvZGU6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgICBsYWJlbDogUHJvcFR5cGVzLnN0cmluZy5pc1JlcXVpcmVkLFxuICB9KS5pc1JlcXVpcmVkLFxuICBpc1NlbGVjdGVkOiBQcm9wVHlwZXMuYm9vbCxcbiAgb25DbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbn07XG5cbmV4cG9ydCBkZWZhdWx0IENvbG9yU3dhdGNoO1xuIiwiLy8gZXh0cmFjdGVkIGJ5IG1pbmktY3NzLWV4dHJhY3QtcGx1Z2luXG5tb2R1bGUuZXhwb3J0cyA9IHtcImNvbG9yUGlja2VyXCI6XCJfMzFGd0hfbldyNzJrM3B1Z0FwSnViOVwiLFwiaG9yaXpvbnRhbFwiOlwiUWEtQnB1VFQya3hwbVZfQVFnQ2pIXCIsXCJ2ZXJ0aWNhbFwiOlwiXzJ4NFNBbmJvcHlabWt5Y1dMQzBFWGtcIn07IiwiLy8gZXh0cmFjdGVkIGJ5IG1pbmktY3NzLWV4dHJhY3QtcGx1Z2luXG5tb2R1bGUuZXhwb3J0cyA9IHtcIm1lbnVJdGVtXCI6XCJfM2dHY3pSSndyTmVuWFRCTFFuQzI5TVwiLFwiYWN0aXZlXCI6XCJfMmoxaWxVTmtiRkdTZ3VsWFNvSEFkUFwifTsiLCIvLyBleHRyYWN0ZWQgYnkgbWluaS1jc3MtZXh0cmFjdC1wbHVnaW5cbm1vZHVsZS5leHBvcnRzID0ge1wibWVudUNvbnRhaW5lclwiOlwiXzItU0Z3c3BwRXVvYkJKa0F3d1FyRkNcIn07IiwiLy8gZXh0cmFjdGVkIGJ5IG1pbmktY3NzLWV4dHJhY3QtcGx1Z2luXG5tb2R1bGUuZXhwb3J0cyA9IHtcIm1lbnVMaW5rSXRlbVwiOlwiXzJEeTFMVGZTY0dadFNiXzVMdWQtbFVcIixcImFjdGl2ZVwiOlwiXzJVd3M3YmozeWVqbW4xazdYaXlLZlFcIixcIm1lbnVJdGVtXCI6XCJfMmxJN1MydDV6V2hRc3ZnX1huUTctLVwifTsiLCIvLyBleHRyYWN0ZWQgYnkgbWluaS1jc3MtZXh0cmFjdC1wbHVnaW5cbm1vZHVsZS5leHBvcnRzID0ge1widG9hc3RDb250YWluZXJcIjpcIl8zRjhjSlUxd21LbWJyamlkZy1PM3pwXCJ9OyIsImV4cG9ydCAqIGZyb20gXCIuL2NvbXBvbmVudHMvQnV0dG9uXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9jb21wb25lbnRzL0J1dHRvbkxpbmtcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvbXBvbmVudHMvQ29sb3JQaWNrZXJcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvbXBvbmVudHMvQ29sb3JTd2F0Y2hcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvbXBvbmVudHMvQ29uZmlybWF0aW9uTW9kYWxcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvbXBvbmVudHMvRmxvYXRpbmdQYW5lbFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vY29tcG9uZW50cy9JY29uXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9jb21wb25lbnRzL0ljb25CdXR0b25cIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvbXBvbmVudHMvSWNvbkJ1dHRvbkxpbmtcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvbXBvbmVudHMvSW1hZ2VcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvbXBvbmVudHMvTGlzdFZpZXdcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvbXBvbmVudHMvTWVudVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vY29tcG9uZW50cy9Nb2RhbFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vY29tcG9uZW50cy9PdmVybGF5XCI7XG5leHBvcnQgKiBmcm9tIFwiLi9jb21wb25lbnRzL1RleHRJbnB1dFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vY29tcG9uZW50cy9Ub2FzdFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vY29tcG9uZW50cy9WaWRlb1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vaG9va3NcIjtcbiIsImltcG9ydCBSZWFjdCwgeyBSZWFjdE5vZGUgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCBjbGFzc2NhdCBmcm9tIFwiY2xhc3NjYXRcIjtcbmltcG9ydCBzdHlsZXMgZnJvbSBcIi4vQnV0dG9uLm1vZHVsZS5jc3NcIjtcblxudHlwZSBCdXR0b25Qcm9wcyA9IHtcbiAgY2hpbGRyZW46IFJlYWN0Tm9kZTtcbiAgY2xhc3NOYW1lPzogc3RyaW5nO1xuICBkaXNhYmxlZD86IGJvb2xlYW47XG4gIGludmVydGVkPzogYm9vbGVhbjtcbiAgcm91bmRlZD86IGJvb2xlYW47XG4gIG5vU2hhZG93PzogYm9vbGVhbjtcbiAgbm9QYWRkaW5nPzogYm9vbGVhbjtcbiAgbm9Cb3JkZXI/OiBib29sZWFuO1xuICB0cmFuc3BhcmVudD86IGJvb2xlYW47XG4gIHN0cmV0Y2hIb3Jpem9udGFsbHk/OiBib29sZWFuO1xuICBzdHJldGNoVmVydGljYWxseT86IGJvb2xlYW47XG4gIG9uQ2xpY2s/OiAoZXZlbnQ6IFJlYWN0LlN5bnRoZXRpY0V2ZW50KSA9PiB2b2lkO1xuICBzaXplPzogXCJzbWFsbFwiIHwgXCJtZWRpdW1cIiB8IFwibGFyZ2VcIixcbiAgdHlwZT86IFwic3VibWl0XCIgfCBcInJlc2V0XCIgfCBcImJ1dHRvblwiLFxuICBhbGlnbj86IFwibGVmdFwiIHwgXCJjZW50ZXJcIixcbiAgb2Zmc2V0U2lkZXM/OiBBcnJheTxcImxlZnRcIiB8IFwicmlnaHRcIj4sXG59XG5cbmZ1bmN0aW9uIEJ1dHRvbih7XG4gIGNoaWxkcmVuLFxuICBjbGFzc05hbWUsXG4gIG9uQ2xpY2ssXG4gIGRpc2FibGVkID0gZmFsc2UsXG4gIGludmVydGVkID0gZmFsc2UsXG4gIHJvdW5kZWQgPSBmYWxzZSxcbiAgbm9TaGFkb3cgPSBmYWxzZSxcbiAgbm9QYWRkaW5nID0gZmFsc2UsXG4gIG5vQm9yZGVyID0gZmFsc2UsXG4gIHRyYW5zcGFyZW50ID0gZmFsc2UsXG4gIHN0cmV0Y2hIb3Jpem9udGFsbHkgPSBmYWxzZSxcbiAgc3RyZXRjaFZlcnRpY2FsbHkgPSBmYWxzZSxcbiAgb2Zmc2V0U2lkZXMgPSBbXSxcbiAgYWxpZ24gPSBcImNlbnRlclwiLFxuICBzaXplID0gXCJtZWRpdW1cIixcbiAgdHlwZSxcbn06IEJ1dHRvblByb3BzKSB7XG4gIHJldHVybiAoXG4gICAgPGJ1dHRvblxuICAgICAgY2xhc3NOYW1lPXtjbGFzc2NhdChbXG4gICAgICAgIHN0eWxlcy5jb250YWluZXIsXG4gICAgICAgIHN0eWxlc1tzaXplXSxcbiAgICAgICAgc3R5bGVzW2FsaWduXSxcbiAgICAgICAge1xuICAgICAgICAgIFtzdHlsZXMuaW52ZXJ0ZWRdOiBpbnZlcnRlZCxcbiAgICAgICAgICBbc3R5bGVzLnJvdW5kZWRdOiByb3VuZGVkLFxuICAgICAgICAgIFtzdHlsZXMubm9TaGFkb3ddOiBub1NoYWRvdyxcbiAgICAgICAgICBbc3R5bGVzLm5vUGFkZGluZ106IG5vUGFkZGluZyxcbiAgICAgICAgICBbc3R5bGVzLm5vQm9yZGVyXTogbm9Cb3JkZXIsXG4gICAgICAgICAgW3N0eWxlcy50cmFuc3BhcmVudF06IHRyYW5zcGFyZW50LFxuICAgICAgICAgIFtzdHlsZXMuc3RyZXRjaEhvcml6b250YWxseV06IHN0cmV0Y2hIb3Jpem9udGFsbHksXG4gICAgICAgICAgW3N0eWxlcy5zdHJldGNoVmVydGljYWxseV06IHN0cmV0Y2hWZXJ0aWNhbGx5LFxuICAgICAgICB9LFxuICAgICAgICBvZmZzZXRTaWRlcy5tYXAoKHNpZGUpID0+IHN0eWxlc1tgJHtzaWRlfU9mZnNldGBdKSxcbiAgICAgICAgY2xhc3NOYW1lLFxuICAgICAgXSl9XG4gICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICBvbkNsaWNrPXtvbkNsaWNrfVxuICAgICAgdHlwZT17dHlwZX1cbiAgICAgIHJvbGU9XCJidXR0b25cIlxuICAgID5cbiAgICAgIHt0eXBlb2YgY2hpbGRyZW4gIT09IFwic3RyaW5nXCIgJiYgQXJyYXkuaXNBcnJheShjaGlsZHJlbikgJiYgY2hpbGRyZW4ubGVuZ3RoICA/IChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e3N0eWxlcy5jb250ZW50fT57Y2hpbGRyZW59PC9kaXY+XG4gICAgICApIDogY2hpbGRyZW59XG4gICAgPC9idXR0b24+XG4gICk7XG59XG5cbmV4cG9ydCBkZWZhdWx0IEJ1dHRvbjtcbiIsIi8vIGV4dHJhY3RlZCBieSBtaW5pLWNzcy1leHRyYWN0LXBsdWdpblxubW9kdWxlLmV4cG9ydHMgPSB7XCJjb250YWluZXJcIjpcIk05X2VnRUM4bXN1MTM1b1BHVmRJZlwiLFwibGVmdFwiOlwiUlNSYlRnOFljNC1zOGs2cVVfdkNnXCIsXCJzbWFsbFwiOlwiXzFiTlFoYlp3TEE4RXJMbXdkUWl0SmVcIixcImxhcmdlXCI6XCJfMkR3TEZELTRnRHo5SEVBQWl3V0pQcVwiLFwiaW52ZXJ0ZWRcIjpcIl8zMUNmbVRVWXBFaDFoWnZjdFE5bEs0XCIsXCJyb3VuZGVkXCI6XCJfMmJxMzFxS0Q3QjZyNkNUQ09MM2RyV1wiLFwicmlnaHRPZmZzZXRcIjpcIl8yZVVDV1FNRVRPZ2lYdWliN1hmVGhaXCIsXCJsZWZ0T2Zmc2V0XCI6XCJHOG9fT01EVUZzRVExeXRVN29VWUdcIixcIm5vU2hhZG93XCI6XCJfMnZrbmhVRkFJR21qWHM3dGdrQUM3SVwiLFwibm9Cb3JkZXJcIjpcIl8ycDBHcGRtUEtJRkNVZXM1ODRZSGVWXCIsXCJ0cmFuc3BhcmVudFwiOlwiXzh2TWxTUkhfOUhvUkdKaDhTd2thXCIsXCJzdHJldGNoSG9yaXpvbnRhbGx5XCI6XCJuWjlyT1p3ekdYVkkzYXlSZ0EzUUNcIixcInN0cmV0Y2hWZXJ0aWNhbGx5XCI6XCJfMXk4aWZiOTVzcFRMV0dBbXNidzFSMlwiLFwibm9QYWRkaW5nXCI6XCJfM2NPNDlKRUxOS3RHeWFGeFJsc2h5T1wiLFwiY29udGVudFwiOlwibzhkN1lvVDgzdW1lUFBTRnpLMzFZXCJ9OyIsImltcG9ydCBSZWFjdCwgeyBSZWFjdE5vZGUsIFJlYWN0VHlwZSwgQW5jaG9ySFRNTEF0dHJpYnV0ZXMgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCBjbGFzc2NhdCBmcm9tIFwiY2xhc3NjYXRcIjtcbmltcG9ydCBzdHlsZXMgZnJvbSBcIi4vQnV0dG9uTGluay5tb2R1bGUuY3NzXCI7XG5cbnR5cGUgU2lkZSA9IFwibGVmdFwiIHwgXCJyaWdodFwiO1xuXG50eXBlIEJ1dHRvbkxpbmtQcm9wcyA9IHtcbiAgYXM/OiBSZWFjdFR5cGU7XG4gIGNoaWxkcmVuOiBSZWFjdE5vZGU7XG4gIGNsYXNzTmFtZT86IHN0cmluZztcbiAgaW52ZXJ0ZWQ/OiBib29sZWFuO1xuICByb3VuZGVkPzogYm9vbGVhbjtcbiAgdHJhbnNwYXJlbnQ/OiBib29sZWFuO1xuICBub1NoYWRvdz86IGJvb2xlYW47XG4gIG5vUGFkZGluZz86IGJvb2xlYW47XG4gIG5vQm9yZGVyPzogYm9vbGVhbjtcbiAgc3RyZXRjaEhvcml6b250YWxseT86IGJvb2xlYW47XG4gIHN0cmV0Y2hWZXJ0aWNhbGx5PzogYm9vbGVhbjtcbiAgc2l6ZT86IFwic21hbGxcIiB8IFwibWVkaXVtXCIgfCBcImxhcmdlXCI7XG4gIG9mZnNldFNpZGVzPzogQXJyYXk8U2lkZT47XG4gIGFsaWduPzogXCJsZWZ0XCIgfCBcImNlbnRlclwiO1xufSB8IGFueTtcblxuZnVuY3Rpb24gQnV0dG9uTGluayh7XG4gIGFzOiBDb21wb25lbnQsXG4gIGNoaWxkcmVuLFxuICBjbGFzc05hbWUsXG4gIHNpemUsXG4gIGludmVydGVkID0gZmFsc2UsXG4gIHJvdW5kZWQgPSBmYWxzZSxcbiAgdHJhbnNwYXJlbnQgPSBmYWxzZSxcbiAgbm9TaGFkb3cgPSBmYWxzZSxcbiAgbm9QYWRkaW5nID0gZmFsc2UsXG4gIG5vQm9yZGVyID0gZmFsc2UsXG4gIHN0cmV0Y2hIb3Jpem9udGFsbHkgPSBmYWxzZSxcbiAgc3RyZXRjaFZlcnRpY2FsbHkgPSBmYWxzZSxcbiAgb2Zmc2V0U2lkZXMgPSBbXSxcbiAgYWxpZ24gPSBcImNlbnRlclwiLFxuICAuLi5wcm9wc1xufTogQnV0dG9uTGlua1Byb3BzKSB7XG4gIGlmICh0eXBlb2YgQ29tcG9uZW50ID09PSBcInVuZGVmaW5lZFwiKSB7XG4gICAgQ29tcG9uZW50ID0gXCJhXCI7XG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxDb21wb25lbnRcbiAgICAgIGRhdGEtdGVzdGlkPVwiYnV0dG9uLWxpbmtcIlxuICAgICAgY2xhc3NOYW1lPXtjbGFzc2NhdChbXG4gICAgICAgIHN0eWxlcy5jb250YWluZXIsXG4gICAgICAgIHN0eWxlc1tzaXplXSxcbiAgICAgICAgc3R5bGVzW2FsaWduXSxcbiAgICAgICAge1xuICAgICAgICAgIFtzdHlsZXMuaW52ZXJ0ZWRdOiBpbnZlcnRlZCxcbiAgICAgICAgICBbc3R5bGVzLnJvdW5kZWRdOiByb3VuZGVkLFxuICAgICAgICAgIFtzdHlsZXMubm9TaGFkb3ddOiBub1NoYWRvdyxcbiAgICAgICAgICBbc3R5bGVzLm5vUGFkZGluZ106IG5vUGFkZGluZyxcbiAgICAgICAgICBbc3R5bGVzLm5vQm9yZGVyXTogbm9Cb3JkZXIsXG4gICAgICAgICAgW3N0eWxlcy50cmFuc3BhcmVudF06IHRyYW5zcGFyZW50LFxuICAgICAgICAgIFtzdHlsZXMuc3RyZXRjaEhvcml6b250YWxseV06IHN0cmV0Y2hIb3Jpem9udGFsbHksXG4gICAgICAgICAgW3N0eWxlcy5zdHJldGNoVmVydGljYWxseV06IHN0cmV0Y2hWZXJ0aWNhbGx5LFxuICAgICAgICB9LFxuICAgICAgICBvZmZzZXRTaWRlcy5tYXAoKHNpZGU6IFNpZGUpID0+IHN0eWxlc1tgJHtzaWRlfU9mZnNldGBdKSxcbiAgICAgICAgY2xhc3NOYW1lLFxuICAgICAgXSl9XG4gICAgICB7Li4ucHJvcHN9XG4gICAgPlxuICAgICAge3R5cGVvZiBjaGlsZHJlbiAhPT0gXCJzdHJpbmdcIiAmJiBBcnJheS5pc0FycmF5KGNoaWxkcmVuKSAmJiBjaGlsZHJlbi5sZW5ndGggID8gKFxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17c3R5bGVzLmNvbnRlbnR9PntjaGlsZHJlbn08L2Rpdj5cbiAgICAgICkgOiAoXG4gICAgICAgIGNoaWxkcmVuXG4gICAgICApfVxuICAgIDwvQ29tcG9uZW50PlxuICApO1xufVxuXG5leHBvcnQgZGVmYXVsdCBCdXR0b25MaW5rO1xuIiwiLy8gZXh0cmFjdGVkIGJ5IG1pbmktY3NzLWV4dHJhY3QtcGx1Z2luXG5tb2R1bGUuZXhwb3J0cyA9IHtcImNvbnRhaW5lclwiOlwiXzNlVkJnbWtHNmhqVm9rbTVYeTRVTVFcIixcImxlZnRcIjpcIl8zRjZoTUVRa0pneXdVa3QxZndtVHN5XCIsXCJzbWFsbFwiOlwiXzhJOWZobnpiTXZDcmw1S1BqOWYwXCIsXCJsYXJnZVwiOlwiXzNfU3dxbURXT0d2ODc3aUhBQ25KcENcIixcImludmVydGVkXCI6XCJfMXhPYTNDQlJIelBDUldOc2lKNjVhQ1wiLFwicm91bmRlZFwiOlwiXzNVR2xPSXR6S29rVmcwd0dIMGVJbFhcIixcInJpZ2h0T2Zmc2V0XCI6XCJfMTN0UHNwNmRmQTFUd2IxTU1IUmlHVFwiLFwibGVmdE9mZnNldFwiOlwiTkk1bjZiRVZSQ1FQeTZBT0FzUTFxXCIsXCJub1NoYWRvd1wiOlwiZ0lZOWl1dkMyVld4Y3Z3d0NtYUpKXCIsXCJ0cmFuc3BhcmVudFwiOlwiXzNYZmxoM1ExQVpuVE9EMGN0cXVJNndcIixcInN0cmV0Y2hIb3Jpem9udGFsbHlcIjpcIl8yRmJSREVHU183ZU1VY0owVmlPQlUwXCIsXCJzdHJldGNoVmVydGljYWxseVwiOlwiXzFyUG0tdDVaV3dyUy1MOWw3ejY2amJcIixcIm5vUGFkZGluZ1wiOlwiXzNKOERlYUxxNWl3M0FwN3FLSmtQOUJcIixcIm5vQm9yZGVyXCI6XCJfM2NFUXMtS19tU2hGTkRnRFAzMldkNlwiLFwiY29udGVudFwiOlwiXzFWVHlmVHdWbG9BY1p3WUNaeXNsc0pcIn07IiwiLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTMtcHJlc2VudCwgRmFjZWJvb2ssIEluYy5cbiAqXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZSBmb3VuZCBpbiB0aGVcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbiAqL1xuXG4ndXNlIHN0cmljdCc7XG5cbnZhciBSZWFjdFByb3BUeXBlc1NlY3JldCA9IHJlcXVpcmUoJy4vbGliL1JlYWN0UHJvcFR5cGVzU2VjcmV0Jyk7XG5cbmZ1bmN0aW9uIGVtcHR5RnVuY3Rpb24oKSB7fVxuZnVuY3Rpb24gZW1wdHlGdW5jdGlvbldpdGhSZXNldCgpIHt9XG5lbXB0eUZ1bmN0aW9uV2l0aFJlc2V0LnJlc2V0V2FybmluZ0NhY2hlID0gZW1wdHlGdW5jdGlvbjtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbigpIHtcbiAgZnVuY3Rpb24gc2hpbShwcm9wcywgcHJvcE5hbWUsIGNvbXBvbmVudE5hbWUsIGxvY2F0aW9uLCBwcm9wRnVsbE5hbWUsIHNlY3JldCkge1xuICAgIGlmIChzZWNyZXQgPT09IFJlYWN0UHJvcFR5cGVzU2VjcmV0KSB7XG4gICAgICAvLyBJdCBpcyBzdGlsbCBzYWZlIHdoZW4gY2FsbGVkIGZyb20gUmVhY3QuXG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHZhciBlcnIgPSBuZXcgRXJyb3IoXG4gICAgICAnQ2FsbGluZyBQcm9wVHlwZXMgdmFsaWRhdG9ycyBkaXJlY3RseSBpcyBub3Qgc3VwcG9ydGVkIGJ5IHRoZSBgcHJvcC10eXBlc2AgcGFja2FnZS4gJyArXG4gICAgICAnVXNlIFByb3BUeXBlcy5jaGVja1Byb3BUeXBlcygpIHRvIGNhbGwgdGhlbS4gJyArXG4gICAgICAnUmVhZCBtb3JlIGF0IGh0dHA6Ly9mYi5tZS91c2UtY2hlY2stcHJvcC10eXBlcydcbiAgICApO1xuICAgIGVyci5uYW1lID0gJ0ludmFyaWFudCBWaW9sYXRpb24nO1xuICAgIHRocm93IGVycjtcbiAgfTtcbiAgc2hpbS5pc1JlcXVpcmVkID0gc2hpbTtcbiAgZnVuY3Rpb24gZ2V0U2hpbSgpIHtcbiAgICByZXR1cm4gc2hpbTtcbiAgfTtcbiAgLy8gSW1wb3J0YW50IVxuICAvLyBLZWVwIHRoaXMgbGlzdCBpbiBzeW5jIHdpdGggcHJvZHVjdGlvbiB2ZXJzaW9uIGluIGAuL2ZhY3RvcnlXaXRoVHlwZUNoZWNrZXJzLmpzYC5cbiAgdmFyIFJlYWN0UHJvcFR5cGVzID0ge1xuICAgIGFycmF5OiBzaGltLFxuICAgIGJvb2w6IHNoaW0sXG4gICAgZnVuYzogc2hpbSxcbiAgICBudW1iZXI6IHNoaW0sXG4gICAgb2JqZWN0OiBzaGltLFxuICAgIHN0cmluZzogc2hpbSxcbiAgICBzeW1ib2w6IHNoaW0sXG5cbiAgICBhbnk6IHNoaW0sXG4gICAgYXJyYXlPZjogZ2V0U2hpbSxcbiAgICBlbGVtZW50OiBzaGltLFxuICAgIGVsZW1lbnRUeXBlOiBzaGltLFxuICAgIGluc3RhbmNlT2Y6IGdldFNoaW0sXG4gICAgbm9kZTogc2hpbSxcbiAgICBvYmplY3RPZjogZ2V0U2hpbSxcbiAgICBvbmVPZjogZ2V0U2hpbSxcbiAgICBvbmVPZlR5cGU6IGdldFNoaW0sXG4gICAgc2hhcGU6IGdldFNoaW0sXG4gICAgZXhhY3Q6IGdldFNoaW0sXG5cbiAgICBjaGVja1Byb3BUeXBlczogZW1wdHlGdW5jdGlvbldpdGhSZXNldCxcbiAgICByZXNldFdhcm5pbmdDYWNoZTogZW1wdHlGdW5jdGlvblxuICB9O1xuXG4gIFJlYWN0UHJvcFR5cGVzLlByb3BUeXBlcyA9IFJlYWN0UHJvcFR5cGVzO1xuXG4gIHJldHVybiBSZWFjdFByb3BUeXBlcztcbn07XG4iLCIvKipcbiAqIENvcHlyaWdodCAoYykgMjAxMy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxuICpcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuICovXG5cbid1c2Ugc3RyaWN0JztcblxudmFyIFJlYWN0UHJvcFR5cGVzU2VjcmV0ID0gJ1NFQ1JFVF9ET19OT1RfUEFTU19USElTX09SX1lPVV9XSUxMX0JFX0ZJUkVEJztcblxubW9kdWxlLmV4cG9ydHMgPSBSZWFjdFByb3BUeXBlc1NlY3JldDtcbiIsImV4cG9ydCB7IGRlZmF1bHQgYXMgSW1hZ2UgfSBmcm9tIFwiLi9JbWFnZVwiO1xuIiwiaW1wb3J0ICogYXMgUmVhY3QgZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgY2xhc3NjYXQgZnJvbSBcImNsYXNzY2F0XCI7XG5pbXBvcnQgc3R5bGVzIGZyb20gXCIuL0ltYWdlLm1vZHVsZS5jc3NcIjtcblxudHlwZSBJbWFnZVByb3BzID0ge1xuICBzcmM6IHN0cmluZztcbiAgYWx0Pzogc3RyaW5nO1xuICBzcmNXaWR0aD86IG51bWJlcjtcbiAgc3JjSGVpZ2h0PzogbnVtYmVyO1xuICBjaGlsZHJlbj86IFJlYWN0LlJlYWN0Tm9kZTtcbiAgbGF5b3V0PzogXCJjb3ZlclwiIHwgXCJjb250YWluXCIgfCBcInN0cmV0Y2hIb3Jpem9udGFsbHlcIiB8IFwic3RyZXRjaFZlcnRpY2FsbHlcIjtcbn07XG5cbmZ1bmN0aW9uIEltYWdlKHsgc3JjLCBhbHQsIHNyY1dpZHRoLCBzcmNIZWlnaHQsIGNoaWxkcmVuLCBsYXlvdXQgPSBcImNvbnRhaW5cIiB9OiBJbWFnZVByb3BzKSB7XG4gIHJldHVybiBjaGlsZHJlbiA/IChcbiAgICA8ZGl2IGNsYXNzTmFtZT17Y2xhc3NjYXQoW3N0eWxlcy5jb250YWluZXIsIHN0eWxlcy5oYXNPdmVybGF5XSl9PlxuICAgICAgPGltZ1xuICAgICAgICBjbGFzc05hbWU9e2NsYXNzY2F0KFtzdHlsZXMuaW1hZ2UsIHN0eWxlc1tsYXlvdXRdXSl9XG4gICAgICAgIGNyb3NzT3JpZ2luPVwiYW5vbnltb3VzXCJcbiAgICAgICAgZGF0YS10ZXN0aWQ9XCJpbWFnZVwiXG4gICAgICAgIGFsdD17YWx0fVxuICAgICAgICBzcmM9e3NyY31cbiAgICAgICAgd2lkdGg9e3NyY1dpZHRofVxuICAgICAgICBoZWlnaHQ9e3NyY0hlaWdodH1cbiAgICAgIC8+XG4gICAgICB7Y2hpbGRyZW4gJiYgPGRpdiBjbGFzc05hbWU9e3N0eWxlcy5vdmVybGF5fT57Y2hpbGRyZW59PC9kaXY+fVxuICAgIDwvZGl2PlxuICApIDogKFxuICAgIDxpbWdcbiAgICAgIGNsYXNzTmFtZT17Y2xhc3NjYXQoW3N0eWxlcy5pbWFnZSwgc3R5bGVzW2xheW91dF1dKX1cbiAgICAgIGNyb3NzT3JpZ2luPVwiYW5vbnltb3VzXCJcbiAgICAgIGRhdGEtdGVzdGlkPVwiaW1hZ2VcIlxuICAgICAgYWx0PXthbHR9XG4gICAgICBzcmM9e3NyY31cbiAgICAgIHdpZHRoPXtzcmNXaWR0aH1cbiAgICAgIGhlaWdodD17c3JjSGVpZ2h0fVxuICAgIC8+XG4gICk7XG59XG5cbmV4cG9ydCBkZWZhdWx0IEltYWdlO1xuIiwiLy8gZXh0cmFjdGVkIGJ5IG1pbmktY3NzLWV4dHJhY3QtcGx1Z2luXG5tb2R1bGUuZXhwb3J0cyA9IHtcImNvbnRhaW5lclwiOlwiXzN6d2xuOHhwa1p3cFRZNWk2SjdiT0RcIixcImhhc092ZXJsYXlcIjpcIl8yZWw4eFdxcWYzdzRTM3gwczJEOXhsXCIsXCJvdmVybGF5XCI6XCJFZzNpbWZiWGRJNlU2cmZSRTAtcU9cIixcImltYWdlXCI6XCJ0MTg5N2RmdHNfcHFIelNud21XQldcIixcImNvdmVyXCI6XCJfMS1SX0hEak82cU5ueXdjTmlTOGJ5RFwiLFwiY29udGFpblwiOlwiXzNtRHBDakhKMmc2NmUwdzRSMkVaa0dcIixcInN0cmV0Y2hIb3Jpem9udGFsbHlcIjpcIl8zeUV0SDdjcXBVbFZGYUdpV0cxMjl3XCIsXCJzdHJldGNoVmVydGljYWxseVwiOlwibHlpQnM2T0J4dlJFbndJUjBsczJDXCJ9OyIsImltcG9ydCBSZWFjdCBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSBcInByb3AtdHlwZXNcIjtcbmltcG9ydCBjbGFzc2NhdCBmcm9tIFwiY2xhc3NjYXRcIjtcbmltcG9ydCBzdHlsZXMgZnJvbSBcIi4vTWVudS5tb2R1bGUuY3NzXCI7XG5cbmZ1bmN0aW9uIE1lbnUoeyBjaGlsZHJlbiwgY2xhc3NOYW1lLCBpc09wZW4sIHBsYWNlbWVudCwgaGVhZGVyIH0pIHtcbiAgcmV0dXJuIChcbiAgICA8ZGl2XG4gICAgICBjbGFzc05hbWU9e2NsYXNzY2F0KFtcbiAgICAgICAgc3R5bGVzLm1lbnUsXG4gICAgICAgIHN0eWxlc1twbGFjZW1lbnQuaG9yaXpvbnRhbF0sXG4gICAgICAgIHN0eWxlc1twbGFjZW1lbnQudmVydGljYWxdLFxuICAgICAgICB7IFtzdHlsZXMub3Blbl06IGlzT3BlbiB9LFxuICAgICAgICBjbGFzc05hbWUsXG4gICAgICBdKX1cbiAgICA+XG4gICAgICB7aGVhZGVyICYmIGlzT3BlbiAmJiA8aDMgY2xhc3NOYW1lPXtzdHlsZXMubWVudUhlYWRlcn0+e2hlYWRlcn08L2gzPn1cbiAgICAgIDx1bD57aXNPcGVuICYmIGNoaWxkcmVufTwvdWw+XG4gICAgPC9kaXY+XG4gICk7XG59XG5cbk1lbnUuZGVmYXVsdFByb3BzID0ge1xuICBpc09wZW46IHRydWUsXG4gIHBsYWNlbWVudDogeyBob3Jpem9udGFsOiBcImxlZnRcIiwgdmVydGljYWw6IFwiYm90dG9tXCIgfSxcbn07XG5cbk1lbnUucHJvcFR5cGVzID0ge1xuICBjaGlsZHJlbjogUHJvcFR5cGVzLm5vZGUuaXNSZXF1aXJlZCxcbiAgY2xhc3NOYW1lOiBQcm9wVHlwZXMuc3RyaW5nLFxuICBpc09wZW46IFByb3BUeXBlcy5ib29sLFxuICBoZWFkZXI6IFByb3BUeXBlcy5zdHJpbmcsXG4gIHBsYWNlbWVudDogUHJvcFR5cGVzLnNoYXBlKHtcbiAgICBob3Jpem9udGFsOiBQcm9wVHlwZXMub25lT2YoW1wicmlnaHRcIiwgXCJsZWZ0XCJdKSxcbiAgICB2ZXJ0aWNhbDogUHJvcFR5cGVzLm9uZU9mKFtcInRvcFwiLCBcImJvdHRvbVwiXSksXG4gIH0pLFxufTtcblxuZXhwb3J0IGRlZmF1bHQgTWVudTtcbiIsImltcG9ydCBSZWFjdCwgeyBmb3J3YXJkUmVmIH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgY2xhc3NjYXQgZnJvbSBcImNsYXNzY2F0XCI7XG5pbXBvcnQgc3R5bGVzIGZyb20gXCIuL01lbnVDb250YWluZXIubW9kdWxlLmNzc1wiO1xuXG4vKiBmb3J3YXJkUmVmIGRvZXMgbm90IHN1cHBvcnQgcHJvcCB0eXBlcyAqL1xuLyogZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0L3Byb3AtdHlwZXMgKi9cbmZ1bmN0aW9uIE1lbnVDb250YWluZXIoeyBjaGlsZHJlbiwgY2xhc3NOYW1lIH0sIHJlZikge1xuICByZXR1cm4gKFxuICAgIDxkaXYgcmVmPXtyZWZ9IGNsYXNzTmFtZT17Y2xhc3NjYXQoW3N0eWxlcy5tZW51Q29udGFpbmVyLCBjbGFzc05hbWVdKX0+XG4gICAgICB7Y2hpbGRyZW59XG4gICAgPC9kaXY+XG4gICk7XG59XG5cbmV4cG9ydCBkZWZhdWx0IGZvcndhcmRSZWYoTWVudUNvbnRhaW5lcik7XG4iLCJpbXBvcnQgUmVhY3QgZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gXCJwcm9wLXR5cGVzXCI7XG5pbXBvcnQgY2xhc3NjYXQgZnJvbSBcImNsYXNzY2F0XCI7XG5pbXBvcnQgc3R5bGVzIGZyb20gXCIuL01lbnVJdGVtLm1vZHVsZS5jc3NcIjtcblxuZnVuY3Rpb24gTWVudUl0ZW0oeyBjaGlsZHJlbiwgY2xhc3NOYW1lLCBpc0FjdGl2ZSwgb25DbGljayB9KSB7XG4gIHJldHVybiAoXG4gICAgPGxpXG4gICAgICBjbGFzc05hbWU9e2NsYXNzY2F0KFtcbiAgICAgICAgc3R5bGVzLm1lbnVJdGVtLFxuICAgICAgICB7IFtzdHlsZXMuYWN0aXZlXTogaXNBY3RpdmUgfSxcbiAgICAgICAgY2xhc3NOYW1lLFxuICAgICAgXSl9XG4gICAgICBvbkNsaWNrPXtvbkNsaWNrfVxuICAgID5cbiAgICAgIHtjaGlsZHJlbn1cbiAgICA8L2xpPlxuICApO1xufVxuXG5NZW51SXRlbS5kZWZhdWx0UHJvcHMgPSB7XG4gIGlzQWN0aXZlOiBmYWxzZSxcbn07XG5cbk1lbnVJdGVtLnByb3BUeXBlcyA9IHtcbiAgY2hpbGRyZW46IFByb3BUeXBlcy5ub2RlLmlzUmVxdWlyZWQsXG4gIGNsYXNzTmFtZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgaXNBY3RpdmU6IFByb3BUeXBlcy5ib29sLFxuICBvbkNsaWNrOiBQcm9wVHlwZXMuZnVuYyxcbn07XG5cbmV4cG9ydCBkZWZhdWx0IE1lbnVJdGVtO1xuIiwiaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tIFwicHJvcC10eXBlc1wiO1xuaW1wb3J0IGNsYXNzY2F0IGZyb20gXCJjbGFzc2NhdFwiO1xuaW1wb3J0IHN0eWxlcyBmcm9tIFwiLi9NZW51TGlua0l0ZW0ubW9kdWxlLmNzc1wiO1xuXG5mdW5jdGlvbiBNZW51TGlua0l0ZW0oeyBhczogQ29tcG9uZW50LCBjaGlsZHJlbiwgY2xhc3NOYW1lLCAuLi5wcm9wcyB9KSB7XG4gIHJldHVybiAoXG4gICAgPENvbXBvbmVudFxuICAgICAgZGF0YS10ZXN0aWQ9XCJtZW51LWxpbmstaXRlbVwiXG4gICAgICBjbGFzc05hbWU9e2NsYXNzY2F0KFtzdHlsZXMubWVudUxpbmtJdGVtLCBjbGFzc05hbWVdKX1cbiAgICAgIHsuLi5wcm9wc31cbiAgICA+XG4gICAgICB7Y2hpbGRyZW59XG4gICAgPC9Db21wb25lbnQ+XG4gICk7XG59XG5cbk1lbnVMaW5rSXRlbS5kZWZhdWx0UHJvcHMgPSB7XG4gIGFzOiBcImFcIixcbn07XG5cbk1lbnVMaW5rSXRlbS5wcm9wVHlwZXMgPSB7XG4gIGFzOiBQcm9wVHlwZXMuZWxlbWVudFR5cGUsXG4gIGNoaWxkcmVuOiBQcm9wVHlwZXMubm9kZSxcbiAgY2xhc3NOYW1lOiBQcm9wVHlwZXMuc3RyaW5nLFxufTtcblxuZXhwb3J0IGRlZmF1bHQgTWVudUxpbmtJdGVtO1xuIiwiaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tIFwicHJvcC10eXBlc1wiO1xuaW1wb3J0IGNsYXNzY2F0IGZyb20gXCJjbGFzc2NhdFwiO1xuXG5pbXBvcnQgc3R5bGVzIGZyb20gXCIuL0xpc3RWaWV3Lm1vZHVsZS5jc3NcIjtcblxuZnVuY3Rpb24gTGlzdFZpZXcoeyBjaGlsZHJlbiwgY2xhc3NOYW1lLCBoZWFkZXIgfSkge1xuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPXtjbGFzc2NhdChbc3R5bGVzLmNvbnRhaW5lciwgY2xhc3NOYW1lXSl9PlxuICAgICAge2hlYWRlciAmJiA8aDMgY2xhc3NOYW1lPXtzdHlsZXMuaGVhZGVyfT57aGVhZGVyfTwvaDM+fVxuICAgICAgPHVsIGNsYXNzTmFtZT17c3R5bGVzLmxpc3R9PntjaGlsZHJlbn08L3VsPlxuICAgIDwvZGl2PlxuICApO1xufVxuXG5MaXN0Vmlldy5wcm9wVHlwZXMgPSB7XG4gIGNoaWxkcmVuOiBQcm9wVHlwZXMubm9kZS5pc1JlcXVpcmVkLFxuICBjbGFzc05hbWU6IFByb3BUeXBlcy5zdHJpbmcsXG4gIGhlYWRlcjogUHJvcFR5cGVzLnN0cmluZyxcbn07XG5cbmV4cG9ydCBkZWZhdWx0IExpc3RWaWV3O1xuIiwiaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tIFwicHJvcC10eXBlc1wiO1xuaW1wb3J0IGNsYXNzY2F0IGZyb20gXCJjbGFzc2NhdFwiO1xuaW1wb3J0IHsgQnV0dG9uIH0gZnJvbSBcIi4uL0J1dHRvblwiO1xuaW1wb3J0IHN0eWxlcyBmcm9tIFwiLi9MaXN0Vmlld0l0ZW0ubW9kdWxlLmNzc1wiO1xuXG5mdW5jdGlvbiBMaXN0Vmlld0l0ZW0oe1xuICBjaGlsZHJlbixcbiAgYWN0aXZlLFxuICBkaXNhYmxlZCxcbiAgdHJhbnNwYXJlbnQsXG4gIG5vUGFkZGluZyxcbiAgc2l6ZSxcbiAgYWxpZ24sXG4gIG9uQ2xpY2ssXG59KSB7XG4gIHJldHVybiAoXG4gICAgPGxpIGNsYXNzTmFtZT17Y2xhc3NjYXQoW3N0eWxlcy5saXN0Vmlld0l0ZW1dKX0+XG4gICAgICA8QnV0dG9uXG4gICAgICAgIG9uQ2xpY2s9e29uQ2xpY2t9XG4gICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgaW52ZXJ0ZWQ9e2FjdGl2ZX1cbiAgICAgICAgdHJhbnNwYXJlbnQ9e3RyYW5zcGFyZW50fVxuICAgICAgICBub1BhZGRpbmc9e25vUGFkZGluZ31cbiAgICAgICAgYWxpZ249e2FsaWdufVxuICAgICAgICBzaXplPXtzaXplfVxuICAgICAgICBzdHJldGNoSG9yaXpvbnRhbGx5XG4gICAgICAgIG5vU2hhZG93XG4gICAgICAgIG5vQm9yZGVyXG4gICAgICA+XG4gICAgICAgIHtjaGlsZHJlbn1cbiAgICAgIDwvQnV0dG9uPlxuICAgIDwvbGk+XG4gICk7XG59XG5cbkxpc3RWaWV3SXRlbS5kZWZhdWx0UHJvcHMgPSB7XG4gIGFjdGl2ZTogZmFsc2UsXG4gIHRyYW5zcGFyZW50OiBmYWxzZSxcbiAgbm9QYWRkaW5nOiBmYWxzZSxcbiAgZGlzYWJsZWQ6IGZhbHNlLFxuICBzaXplOiBcIm1lZGl1bVwiLFxuICBhbGlnbjogXCJjZW50ZXJcIixcbn07XG5cbkxpc3RWaWV3SXRlbS5wcm9wVHlwZXMgPSB7XG4gIGNoaWxkcmVuOiBQcm9wVHlwZXMubm9kZS5pc1JlcXVpcmVkLFxuICBhY3RpdmU6IFByb3BUeXBlcy5ib29sLFxuICBkaXNhYmxlZDogUHJvcFR5cGVzLmJvb2wsXG4gIHRyYW5zcGFyZW50OiBQcm9wVHlwZXMuYm9vbCxcbiAgbm9QYWRkaW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgc2l6ZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgYWxpZ246IFByb3BUeXBlcy5vbmVPZihbXCJsZWZ0XCIsIFwiY2VudGVyXCJdKSxcbiAgb25DbGljazogUHJvcFR5cGVzLmZ1bmMsXG59O1xuXG5leHBvcnQgZGVmYXVsdCBMaXN0Vmlld0l0ZW07XG4iLCJpbXBvcnQgUmVhY3QgZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gXCJwcm9wLXR5cGVzXCI7XG5pbXBvcnQgY2xhc3NjYXQgZnJvbSBcImNsYXNzY2F0XCI7XG5pbXBvcnQgeyBCdXR0b25MaW5rIH0gZnJvbSBcIi4uL0J1dHRvbkxpbmtcIjtcbmltcG9ydCBzdHlsZXMgZnJvbSBcIi4vTGlzdFZpZXdJdGVtLm1vZHVsZS5jc3NcIjtcblxuZnVuY3Rpb24gTGlzdFZpZXdMaW5rSXRlbSh7XG4gIGNoaWxkcmVuLFxuICBhY3RpdmUsXG4gIHRyYW5zcGFyZW50LFxuICBub1BhZGRpbmcsXG4gIHNpemUsXG4gIGFsaWduLFxuICBhcyxcbiAgLi4ucHJvcHNcbn0pIHtcbiAgcmV0dXJuIChcbiAgICA8bGkgY2xhc3NOYW1lPXtjbGFzc2NhdChbc3R5bGVzLmxpc3RWaWV3SXRlbV0pfT5cbiAgICAgIDxCdXR0b25MaW5rXG4gICAgICAgIGFzPXthc31cbiAgICAgICAgaW52ZXJ0ZWQ9e2FjdGl2ZX1cbiAgICAgICAgdHJhbnNwYXJlbnQ9e3RyYW5zcGFyZW50fVxuICAgICAgICBub1BhZGRpbmc9e25vUGFkZGluZ31cbiAgICAgICAgYWxpZ249e2FsaWdufVxuICAgICAgICBzaXplPXtzaXplfVxuICAgICAgICBzdHJldGNoSG9yaXpvbnRhbGx5XG4gICAgICAgIG5vU2hhZG93XG4gICAgICAgIG5vQm9yZGVyXG4gICAgICAgIHsuLi5wcm9wc31cbiAgICAgID5cbiAgICAgICAge2NoaWxkcmVufVxuICAgICAgPC9CdXR0b25MaW5rPlxuICAgIDwvbGk+XG4gICk7XG59XG5cbkxpc3RWaWV3TGlua0l0ZW0uZGVmYXVsdFByb3BzID0ge1xuICBhY3RpdmU6IGZhbHNlLFxuICB0cmFuc3BhcmVudDogZmFsc2UsXG4gIG5vUGFkZGluZzogZmFsc2UsXG4gIHNpemU6IFwibWVkaXVtXCIsXG4gIGFsaWduOiBcImNlbnRlclwiLFxuICBhczogXCJhXCIsXG59O1xuXG5MaXN0Vmlld0xpbmtJdGVtLnByb3BUeXBlcyA9IHtcbiAgY2hpbGRyZW46IFByb3BUeXBlcy5ub2RlLmlzUmVxdWlyZWQsXG4gIGFzOiBQcm9wVHlwZXMuZWxlbWVudFR5cGUsXG4gIGFjdGl2ZTogUHJvcFR5cGVzLmJvb2wsXG4gIHRyYW5zcGFyZW50OiBQcm9wVHlwZXMuYm9vbCxcbiAgbm9QYWRkaW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgYWxpZ246IFByb3BUeXBlcy5vbmVPZihbXCJsZWZ0XCIsIFwiY2VudGVyXCJdKSxcbiAgc2l6ZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgb25DbGljazogUHJvcFR5cGVzLmZ1bmMsXG59O1xuXG5leHBvcnQgZGVmYXVsdCBMaXN0Vmlld0xpbmtJdGVtO1xuIiwiaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tIFwicHJvcC10eXBlc1wiO1xuaW1wb3J0IGNsYXNzY2F0IGZyb20gXCJjbGFzc2NhdFwiO1xuaW1wb3J0IHN0eWxlcyBmcm9tIFwiLi9Ub2FzdC5tb2R1bGUuY3NzXCI7XG5cbmZ1bmN0aW9uIFRvYXN0KHsgY2hpbGRyZW4sIGltYWdlLCBidXR0b25zLCBvbkNsaWNrIH0pIHtcbiAgcmV0dXJuIChcbiAgICA8ZGl2XG4gICAgICBjbGFzc05hbWU9e2NsYXNzY2F0KFtzdHlsZXMudG9hc3RdKX1cbiAgICAgIG9uQ2xpY2s9e29uQ2xpY2t9XG4gICAgICBkYXRhLXRlc3RpZD1cInRvYXN0XCJcbiAgICA+XG4gICAgICB7aW1hZ2UgJiYgKFxuICAgICAgICA8aW1nXG4gICAgICAgICAgZGF0YS10ZXN0aWQ9XCJ0b2FzdC1pbWFnZVwiXG4gICAgICAgICAgY2xhc3NOYW1lPXtzdHlsZXMudG9hc3RJbWFnZX1cbiAgICAgICAgICBzcmM9e2ltYWdlLnNyY31cbiAgICAgICAgICBhbHQ9e2ltYWdlLmFsdH1cbiAgICAgICAgLz5cbiAgICAgICl9XG4gICAgICA8ZGl2IGNsYXNzTmFtZT17c3R5bGVzLnRvYXN0Q29udGVudH0+e2NoaWxkcmVufTwvZGl2PlxuICAgICAgPGRpdiBjbGFzc05hbWU9e3N0eWxlcy50b2FzdEJ1dHRvbnN9PntidXR0b25zfTwvZGl2PlxuICAgIDwvZGl2PlxuICApO1xufVxuXG5Ub2FzdC5kZWZhdWx0UHJvcHMgPSB7XG4gIG9uQ2xpY2s6ICgpID0+IHt9LFxufTtcblxuVG9hc3QucHJvcFR5cGVzID0ge1xuICBjaGlsZHJlbjogUHJvcFR5cGVzLm5vZGUsXG4gIGJ1dHRvbnM6IFByb3BUeXBlcy5hcnJheU9mKFByb3BUeXBlcy5ub2RlKSxcbiAgaW1hZ2U6IFByb3BUeXBlcy5zaGFwZSh7XG4gICAgYWx0OiBQcm9wVHlwZXMuc3RyaW5nLmlzUmVxdWlyZWQsXG4gICAgc3JjOiBQcm9wVHlwZXMuc3RyaW5nLmlzUmVxdWlyZWQsXG4gIH0pLFxuICBvbkNsaWNrOiBQcm9wVHlwZXMuZnVuYyxcbn07XG5cbmV4cG9ydCBkZWZhdWx0IFRvYXN0O1xuIiwiaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tIFwicHJvcC10eXBlc1wiO1xuaW1wb3J0IGNsYXNzY2F0IGZyb20gXCJjbGFzc2NhdFwiO1xuaW1wb3J0IHN0eWxlcyBmcm9tIFwiLi9Ub2FzdENvbnRhaW5lci5tb2R1bGUuY3NzXCI7XG5cbmZ1bmN0aW9uIFRvYXN0Q29udGFpbmVyKHsgY2hpbGRyZW4gfSkge1xuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIGNsYXNzTmFtZT17Y2xhc3NjYXQoW3N0eWxlcy50b2FzdENvbnRhaW5lcl0pfVxuICAgICAgZGF0YS10ZXN0aWQ9XCJ0b2FzdC1jb250YWluZXJcIlxuICAgID5cbiAgICAgIHtjaGlsZHJlbn1cbiAgICA8L2Rpdj5cbiAgKTtcbn1cblxuVG9hc3RDb250YWluZXIucHJvcFR5cGVzID0ge1xuICBjaGlsZHJlbjogUHJvcFR5cGVzLm5vZGUsXG59O1xuXG5leHBvcnQgZGVmYXVsdCBUb2FzdENvbnRhaW5lcjtcbiIsImltcG9ydCB7IHVzZUNhbGxiYWNrLCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB1c2VUb2dnbGUoaW5pdGlhbFN0YXRlID0gZmFsc2UpIHtcbiAgY29uc3QgW2Jvb2wsIHNldEJvb2xdID0gdXNlU3RhdGUoXG4gICAgdHlwZW9mIGluaXRpYWxTdGF0ZSA9PT0gXCJib29sZWFuXCIgPyBpbml0aWFsU3RhdGUgOiBmYWxzZVxuICApO1xuICBjb25zdCB0b2dnbGUgPSAoKSA9PiBzZXRCb29sKChwcmV2Qm9vbCkgPT4gIXByZXZCb29sKTtcbiAgdG9nZ2xlLm9uID0gKCkgPT4gc2V0Qm9vbCh0cnVlKTtcbiAgdG9nZ2xlLm9mZiA9ICgpID0+IHNldEJvb2woZmFsc2UpO1xuXG4gIHJldHVybiBbYm9vbCwgdXNlQ2FsbGJhY2sodG9nZ2xlLCBbXSldO1xufVxuIiwiaW1wb3J0IHsgdXNlRWZmZWN0LCB1c2VSZWYgfSBmcm9tIFwicmVhY3RcIjtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdXNlT3V0c2lkZUNsaWNrKGNhbGxiYWNrKSB7XG4gIGNvbnN0IHJlZiA9IHVzZVJlZigpO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgaGFuZGxlQ2xpY2sgPSAoZXZlbnQpID0+IHtcbiAgICAgIGlmICghcmVmLmN1cnJlbnQgfHwgcmVmLmN1cnJlbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0KSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGNhbGxiYWNrKGV2ZW50KTtcbiAgICB9O1xuXG4gICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihcImNsaWNrXCIsIGhhbmRsZUNsaWNrKTtcbiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKFwidG91Y2hzdGFydFwiLCBoYW5kbGVDbGljayk7XG5cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcihcImNsaWNrXCIsIGhhbmRsZUNsaWNrKTtcbiAgICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoXCJ0b3VjaHN0YXJ0XCIsIGhhbmRsZUNsaWNrKTtcbiAgICB9O1xuICB9LCBbY2FsbGJhY2tdKTtcblxuICByZXR1cm4gcmVmO1xufVxuIiwiaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IGNsYXNzY2F0IGZyb20gXCJjbGFzc2NhdFwiO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tIFwicHJvcC10eXBlc1wiO1xuXG5pbXBvcnQgeyBDb2xvclN3YXRjaCB9IGZyb20gXCIuLi9Db2xvclN3YXRjaFwiO1xuaW1wb3J0IHN0eWxlcyBmcm9tIFwiLi9Db2xvclBpY2tlci5tb2R1bGUuY3NzXCI7XG5cbmZ1bmN0aW9uIENvbG9yUGlja2VyKHsgY29sb3JzLCBkaXJlY3Rpb24sIG9uU2VsZWN0LCBzZWxlY3RlZENvbG9yIH0pIHtcbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT17Y2xhc3NjYXQoW3N0eWxlcy5jb2xvclBpY2tlciwgc3R5bGVzW2RpcmVjdGlvbl1dKX0+XG4gICAgICB7Y29sb3JzLm1hcCgoY29sb3IpID0+IHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICA8Q29sb3JTd2F0Y2hcbiAgICAgICAgICAgIGtleT17Y29sb3Iua2V5fVxuICAgICAgICAgICAgY29sb3I9e2NvbG9yfVxuICAgICAgICAgICAgaXNTZWxlY3RlZD17Y29sb3IgPT09IHNlbGVjdGVkQ29sb3J9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvblNlbGVjdChjb2xvcil9XG4gICAgICAgICAgLz5cbiAgICAgICAgKTtcbiAgICAgIH0pfVxuICAgIDwvZGl2PlxuICApO1xufVxuXG5Db2xvclBpY2tlci5kZWZhdWx0UHJvcHMgPSB7XG4gIGRpcmVjdGlvbjogXCJ2ZXJ0aWNhbFwiLFxufTtcblxuQ29sb3JQaWNrZXIucHJvcFR5cGVzID0ge1xuICBkaXJlY3Rpb246IFByb3BUeXBlcy5vbmVPZihbXCJob3Jpem9udGFsXCIsIFwidmVydGljYWxcIl0pLFxuICBjb2xvcnM6IFByb3BUeXBlcy5hcnJheU9mKFxuICAgIFByb3BUeXBlcy5zaGFwZSh7XG4gICAgICBoZXhDb2RlOiBQcm9wVHlwZXMuc3RyaW5nLmlzUmVxdWlyZWQsXG4gICAgICBrZXk6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgICAgIGxhYmVsOiBQcm9wVHlwZXMuc3RyaW5nLmlzUmVxdWlyZWQsXG4gICAgfSlcbiAgKS5pc1JlcXVpcmVkLFxuICBvblNlbGVjdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgc2VsZWN0ZWRDb2xvcjogUHJvcFR5cGVzLnNoYXBlKHtcbiAgICBoZXhDb2RlOiBQcm9wVHlwZXMuc3RyaW5nLmlzUmVxdWlyZWQsXG4gICAga2V5OiBQcm9wVHlwZXMuc3RyaW5nLmlzUmVxdWlyZWQsXG4gICAgbGFiZWw6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfSksXG59O1xuXG5leHBvcnQgZGVmYXVsdCBDb2xvclBpY2tlcjtcbiIsImltcG9ydCBSZWFjdCBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSBcInByb3AtdHlwZXNcIjtcbmltcG9ydCBjbGFzc2NhdCBmcm9tIFwiY2xhc3NjYXRcIjtcblxuaW1wb3J0IHsgTW9kYWwgfSBmcm9tIFwiLi4vTW9kYWxcIjtcbmltcG9ydCBzdHlsZXMgZnJvbSBcIi4vQ29uZmlybWF0aW9uTW9kYWwubW9kdWxlLmNzc1wiO1xuXG5mdW5jdGlvbiBDb25maXJtYXRpb25Nb2RhbCh7XG4gIGJ1dHRvbnNMZWZ0LFxuICBidXR0b25zUmlnaHQsXG4gIGNoaWxkcmVuLFxuICBoZWFkZXIsXG4gIGlzT3BlbixcbiAgb25DbG9zZSxcbiAgbm9QYWRkaW5nLFxufSkge1xuICByZXR1cm4gKFxuICAgIDxNb2RhbCBpc09wZW49e2lzT3Blbn0gb25DbG9zZT17b25DbG9zZX0gc2hvd0Nsb3NlQnV0dG9uPXtmYWxzZX0+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT17c3R5bGVzLmNvbnRhaW5lcn0+XG4gICAgICAgIDxoMSBjbGFzc05hbWU9e3N0eWxlcy5tb2RhbEhlYWRlcn0+e2hlYWRlcn08L2gxPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3NOYW1lPXtjbGFzc2NhdChbXG4gICAgICAgICAgICBzdHlsZXMubW9kYWxDb250ZW50LFxuICAgICAgICAgICAgeyBbc3R5bGVzLm5vUGFkZGluZ106IG5vUGFkZGluZyB9LFxuICAgICAgICAgIF0pfVxuICAgICAgICA+XG4gICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e3N0eWxlcy5tb2RhbEJ1dHRvbnNDb250YWluZXJ9PlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXtzdHlsZXMubW9kYWxCdXR0b25zfT57YnV0dG9uc0xlZnR9PC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9e3N0eWxlcy5tb2RhbEJ1dHRvbnN9PntidXR0b25zUmlnaHR9PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9Nb2RhbD5cbiAgKTtcbn1cblxuQ29uZmlybWF0aW9uTW9kYWwuZGlzcGxheU5hbWUgPSBcIkNvbmZpcm1hdGlvbk1vZGFsXCI7XG5cbkNvbmZpcm1hdGlvbk1vZGFsLmRlZmF1bHRQcm9wcyA9IHtcbiAgYnV0dG9uc0xlZnQ6IFtdLFxuICBidXR0b25zUmlnaHQ6IFtdLFxuICBvbkNsb3NlOiAoKSA9PiB7fSxcbiAgbm9QYWRkaW5nOiBmYWxzZSxcbn07XG5cbkNvbmZpcm1hdGlvbk1vZGFsLnByb3BUeXBlcyA9IHtcbiAgYnV0dG9uc0xlZnQ6IFByb3BUeXBlcy5hcnJheU9mKFByb3BUeXBlcy5lbGVtZW50KSxcbiAgYnV0dG9uc1JpZ2h0OiBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMuZWxlbWVudCksXG4gIGNoaWxkcmVuOiBQcm9wVHlwZXMubm9kZS5pc1JlcXVpcmVkLFxuICBoZWFkZXI6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgaXNPcGVuOiBQcm9wVHlwZXMuYm9vbC5pc1JlcXVpcmVkLFxuICBub1BhZGRpbmc6IFByb3BUeXBlcy5ib29sLFxuICBvbkNsb3NlOiBQcm9wVHlwZXMuZnVuYyxcbn07XG5cbmV4cG9ydCBkZWZhdWx0IENvbmZpcm1hdGlvbk1vZGFsO1xuIiwiaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tIFwicHJvcC10eXBlc1wiO1xuaW1wb3J0IGNsYXNzY2F0IGZyb20gXCJjbGFzc2NhdFwiO1xuaW1wb3J0IHN0eWxlcyBmcm9tIFwiLi9GbG9hdGluZ1BhbmVsLm1vZHVsZS5jc3NcIjtcblxuZnVuY3Rpb24gRmxvYXRpbmdQYW5lbCh7IGNoaWxkcmVuLCBsYXlvdXQsIHBsYWNlbWVudCB9KSB7XG4gIGNvbnN0IGhvcml6b250YWxQbGFjZW1lbnQgPVxuICAgIHBsYWNlbWVudC5ob3Jpem9udGFsID09PSBcImNlbnRlclwiXG4gICAgICA/IFwiaG9yaXpvbnRhbENlbnRlclwiXG4gICAgICA6IHBsYWNlbWVudC5ob3Jpem9udGFsO1xuXG4gIGNvbnN0IHZlcnRpY2FsUGxhY2VtZW50ID1cbiAgICBwbGFjZW1lbnQudmVydGljYWwgPT09IFwiY2VudGVyXCIgPyBcInZlcnRpY2FsQ2VudGVyXCIgOiBwbGFjZW1lbnQudmVydGljYWw7XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2XG4gICAgICBkYXRhLXRlc3RpZD1cImZsb2F0aW5nLXBhbmVsXCJcbiAgICAgIGNsYXNzTmFtZT17Y2xhc3NjYXQoW1xuICAgICAgICBzdHlsZXMuY29udGFpbmVyLFxuICAgICAgICBzdHlsZXNbaG9yaXpvbnRhbFBsYWNlbWVudF0sXG4gICAgICAgIHN0eWxlc1t2ZXJ0aWNhbFBsYWNlbWVudF0sXG4gICAgICAgIHN0eWxlc1tsYXlvdXRdLFxuICAgICAgICB7XG4gICAgICAgICAgW3N0eWxlcy5maXhlZF06IHBsYWNlbWVudC5wYXJlbnQgIT09IFwiY29udGFpbmVyXCIsXG4gICAgICAgIH0sXG4gICAgICBdKX1cbiAgICA+XG4gICAgICB7Y2hpbGRyZW59XG4gICAgPC9kaXY+XG4gICk7XG59XG5cbkZsb2F0aW5nUGFuZWwuZGVmYXVsdFByb3BzID0ge1xuICBsYXlvdXQ6IFwiY29sdW1uXCIsXG4gIHBsYWNlbWVudDogeyBob3Jpem9udGFsOiBcImNlbnRlclwiLCB2ZXJ0aWNhbDogXCJib3R0b21cIiwgcGFyZW50OiBcInZpZXdwb3J0XCIgfSxcbn07XG5cbkZsb2F0aW5nUGFuZWwucHJvcFR5cGVzID0ge1xuICBjaGlsZHJlbjogUHJvcFR5cGVzLm5vZGUsXG4gIGxheW91dDogUHJvcFR5cGVzLm9uZU9mKFtcImNvbHVtblwiLCBcInJvd1wiXSksXG4gIHBsYWNlbWVudDogUHJvcFR5cGVzLnNoYXBlKHtcbiAgICBob3Jpem9udGFsOiBQcm9wVHlwZXMub25lT2YoW1xuICAgICAgXCJyaWdodFwiLFxuICAgICAgXCJyaWdodEVkZ2VcIixcbiAgICAgIFwicmlnaHRPbkVkZ2VcIixcbiAgICAgIFwibGVmdFwiLFxuICAgICAgXCJsZWZ0RWRnZVwiLFxuICAgICAgXCJsZWZ0T25FZGdlXCIsXG4gICAgICBcImxlZnRPbkVkZ2VcIixcbiAgICAgIFwiY2VudGVyXCIsXG4gICAgXSksXG4gICAgdmVydGljYWw6IFByb3BUeXBlcy5vbmVPZihbXG4gICAgICBcInRvcFwiLFxuICAgICAgXCJ0b3BFZGdlXCIsXG4gICAgICBcImJvdHRvbVwiLFxuICAgICAgXCJib3R0b21FZGdlXCIsXG4gICAgICBcImJvdHRvbU9uRWRnZVwiLFxuICAgICAgXCJjZW50ZXJcIixcbiAgICBdKSxcbiAgICBwYXJlbnQ6IFByb3BUeXBlcy5vbmVPZihbXCJ2aWV3cG9ydFwiLCBcImNvbnRhaW5lclwiXSksXG4gIH0pLFxufTtcblxuZXhwb3J0IGRlZmF1bHQgRmxvYXRpbmdQYW5lbDtcbiIsImltcG9ydCBSZWFjdCBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSBcInByb3AtdHlwZXNcIjtcbmltcG9ydCBjbGFzc2NhdCBmcm9tIFwiY2xhc3NjYXRcIjtcbmltcG9ydCB7IEljb24gfSBmcm9tIFwiLi4vSWNvblwiO1xuaW1wb3J0IHN0eWxlcyBmcm9tIFwiLi9JY29uQnV0dG9uLm1vZHVsZS5jc3NcIjtcblxuZnVuY3Rpb24gSWNvbkJ1dHRvbih7XG4gIGNsYXNzTmFtZSxcbiAgb25DbGljayxcbiAgc2l6ZSxcbiAgdHlwZSxcbiAgc3JjLFxuICBhbHQsXG4gIGRpc2FibGVkLFxuICBpbnZlcnRlZCxcbiAgbm9TaGFkb3csXG4gIG5vQm9yZGVyLFxuICBpc0FjdGl2ZSxcbiAgdHJhbnNwYXJlbnQsXG4gIHJvdW5kZWQsXG4gIG9mZnNldFNpZGVzLFxufSkge1xuICByZXR1cm4gKFxuICAgIDxidXR0b25cbiAgICAgIGNsYXNzTmFtZT17Y2xhc3NjYXQoW1xuICAgICAgICBzdHlsZXMuY29udGFpbmVyLFxuICAgICAgICBzdHlsZXNbc2l6ZV0sXG4gICAgICAgIHtcbiAgICAgICAgICBbc3R5bGVzLmludmVydGVkXTogaW52ZXJ0ZWQsXG4gICAgICAgICAgW3N0eWxlcy5yb3VuZGVkXTogcm91bmRlZCxcbiAgICAgICAgICBbc3R5bGVzLmFjdGl2ZV06IGlzQWN0aXZlLFxuICAgICAgICAgIFtzdHlsZXMubm9TaGFkb3ddOiBub1NoYWRvdyxcbiAgICAgICAgICBbc3R5bGVzLm5vQm9yZGVyXTogbm9Cb3JkZXIsXG4gICAgICAgICAgW3N0eWxlcy50cmFuc3BhcmVudF06IHRyYW5zcGFyZW50LFxuICAgICAgICB9LFxuICAgICAgICBvZmZzZXRTaWRlcy5tYXAoKHNpZGUpID0+IHN0eWxlc1tgJHtzaWRlfU9mZnNldGBdKSxcbiAgICAgICAgY2xhc3NOYW1lLFxuICAgICAgXSl9XG4gICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICBvbkNsaWNrPXtvbkNsaWNrfVxuICAgICAgdHlwZT17dHlwZX1cbiAgICAgIHJvbGU9XCJidXR0b25cIlxuICAgID5cbiAgICAgIDxJY29uIHNyYz17c3JjfSBhbHQ9e2FsdH0gc2l6ZT17c2l6ZX0gaW52ZXJ0ZWQ9e2ludmVydGVkfSAvPlxuICAgIDwvYnV0dG9uPlxuICApO1xufVxuXG5JY29uQnV0dG9uLmRlZmF1bHRQcm9wcyA9IHtcbiAgc2l6ZTogXCJtZWRpdW1cIixcbiAgZGlzYWJsZWQ6IGZhbHNlLFxuICBpbnZlcnRlZDogZmFsc2UsXG4gIGlzQWN0aXZlOiBmYWxzZSxcbiAgbm9TaGFkb3c6IGZhbHNlLFxuICBub0JvcmRlcjogZmFsc2UsXG4gIHRyYW5zcGFyZW50OiBmYWxzZSxcbiAgcm91bmRlZDogZmFsc2UsXG4gIG9mZnNldFNpZGVzOiBbXSxcbn07XG5cbkljb25CdXR0b24ucHJvcFR5cGVzID0ge1xuICBjbGFzc05hbWU6IFByb3BUeXBlcy5zdHJpbmcsXG4gIHNyYzogUHJvcFR5cGVzLnN0cmluZy5pc1JlcXVpcmVkLFxuICBhbHQ6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgaXNBY3RpdmU6IFByb3BUeXBlcy5ib29sLFxuICBkaXNhYmxlZDogUHJvcFR5cGVzLmJvb2wsXG4gIGludmVydGVkOiBQcm9wVHlwZXMuYm9vbCxcbiAgbm9TaGFkb3c6IFByb3BUeXBlcy5ib29sLFxuICBub0JvcmRlcjogUHJvcFR5cGVzLmJvb2wsXG4gIHRyYW5zcGFyZW50OiBQcm9wVHlwZXMuYm9vbCxcbiAgcm91bmRlZDogUHJvcFR5cGVzLmJvb2wsXG4gIG9uQ2xpY2s6IFByb3BUeXBlcy5mdW5jLFxuICBzaXplOiBQcm9wVHlwZXMub25lT2YoW1wic21hbGxcIiwgXCJtZWRpdW1cIiwgXCJsYXJnZVwiXSksXG4gIHR5cGU6IFByb3BUeXBlcy5vbmVPZihbXCJzdWJtaXRcIiwgXCJyZXNldFwiLCBcImJ1dHRvblwiXSksXG4gIG9mZnNldFNpZGVzOiBQcm9wVHlwZXMuYXJyYXlPZihbXCJ0b3BcIiwgXCJyaWdodFwiLCBcImJvdHRvbVwiLCBcImxlZnRcIl0pLFxufTtcblxuZXhwb3J0IGRlZmF1bHQgSWNvbkJ1dHRvbjtcbiIsImltcG9ydCBSZWFjdCBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSBcInByb3AtdHlwZXNcIjtcbmltcG9ydCBjbGFzc2NhdCBmcm9tIFwiY2xhc3NjYXRcIjtcbmltcG9ydCB7IEljb24gfSBmcm9tIFwiLi4vSWNvblwiO1xuaW1wb3J0IHN0eWxlcyBmcm9tIFwiLi9JY29uQnV0dG9uTGluay5tb2R1bGUuY3NzXCI7XG5cbmZ1bmN0aW9uIEljb25CdXR0b25MaW5rKHtcbiAgYXM6IENvbXBvbmVudCxcbiAgY2xhc3NOYW1lLFxuICBzcmMsXG4gIGFsdCxcbiAgc2l6ZSxcbiAgaW52ZXJ0ZWQsXG4gIG5vU2hhZG93LFxuICBub0JvcmRlcixcbiAgdHJhbnNwYXJlbnQsXG4gIHJvdW5kZWQsXG4gIG9mZnNldFNpZGVzLFxuICAuLi5wcm9wc1xufSkge1xuICByZXR1cm4gKFxuICAgIDxDb21wb25lbnRcbiAgICAgIGRhdGEtdGVzdGlkPVwiaWNvbi1idXR0b24tbGlua1wiXG4gICAgICBjbGFzc05hbWU9e2NsYXNzY2F0KFtcbiAgICAgICAgc3R5bGVzLmNvbnRhaW5lcixcbiAgICAgICAgc3R5bGVzW3NpemVdLFxuICAgICAgICB7XG4gICAgICAgICAgW3N0eWxlcy5pbnZlcnRlZF06IGludmVydGVkLFxuICAgICAgICAgIFtzdHlsZXMucm91bmRlZF06IHJvdW5kZWQsXG4gICAgICAgICAgW3N0eWxlcy5ub1NoYWRvd106IG5vU2hhZG93LFxuICAgICAgICAgIFtzdHlsZXMubm9Cb3JkZXJdOiBub0JvcmRlcixcbiAgICAgICAgICBbc3R5bGVzLnRyYW5zcGFyZW50XTogdHJhbnNwYXJlbnQsXG4gICAgICAgIH0sXG4gICAgICAgIG9mZnNldFNpZGVzLm1hcCgoc2lkZSkgPT4gc3R5bGVzW2Ake3NpZGV9T2Zmc2V0YF0pLFxuICAgICAgICBjbGFzc05hbWUsXG4gICAgICBdKX1cbiAgICAgIHsuLi5wcm9wc31cbiAgICA+XG4gICAgICA8SWNvbiBzcmM9e3NyY30gYWx0PXthbHR9IHNpemU9e3NpemV9IGludmVydGVkPXtpbnZlcnRlZH0gLz5cbiAgICA8L0NvbXBvbmVudD5cbiAgKTtcbn1cblxuSWNvbkJ1dHRvbkxpbmsuZGVmYXVsdFByb3BzID0ge1xuICBhczogXCJhXCIsXG4gIHNpemU6IFwibWVkaXVtXCIsXG4gIGludmVydGVkOiBmYWxzZSxcbiAgbm9TaGFkb3c6IGZhbHNlLFxuICBub0JvcmRlcjogZmFsc2UsXG4gIHRyYW5zcGFyZW50OiBmYWxzZSxcbiAgcm91bmRlZDogZmFsc2UsXG4gIG9mZnNldFNpZGVzOiBbXSxcbn07XG5cbkljb25CdXR0b25MaW5rLnByb3BUeXBlcyA9IHtcbiAgYXM6IFByb3BUeXBlcy5lbGVtZW50VHlwZSxcbiAgY2hpbGRyZW46IFByb3BUeXBlcy5ub2RlLFxuICBjbGFzc05hbWU6IFByb3BUeXBlcy5zdHJpbmcsXG4gIHNyYzogUHJvcFR5cGVzLnN0cmluZy5pc1JlcXVpcmVkLFxuICBhbHQ6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgaW52ZXJ0ZWQ6IFByb3BUeXBlcy5ib29sLFxuICBub1NoYWRvdzogUHJvcFR5cGVzLmJvb2wsXG4gIG5vQm9yZGVyOiBQcm9wVHlwZXMuYm9vbCxcbiAgdHJhbnNwYXJlbnQ6IFByb3BUeXBlcy5ib29sLFxuICByb3VuZGVkOiBQcm9wVHlwZXMuYm9vbCxcbiAgc2l6ZTogUHJvcFR5cGVzLm9uZU9mKFtcInNtYWxsXCIsIFwibWVkaXVtXCIsIFwibGFyZ2VcIl0pLFxuICBvZmZzZXRTaWRlczogUHJvcFR5cGVzLmFycmF5T2YoW1widG9wXCIsIFwicmlnaHRcIiwgXCJib3R0b21cIiwgXCJsZWZ0XCJdKSxcbn07XG5cbmV4cG9ydCBkZWZhdWx0IEljb25CdXR0b25MaW5rO1xuIiwiaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tIFwicHJvcC10eXBlc1wiO1xuaW1wb3J0IGNsYXNzY2F0IGZyb20gXCJjbGFzc2NhdFwiO1xuaW1wb3J0IHN0eWxlcyBmcm9tIFwiLi9PdmVybGF5Lm1vZHVsZS5jc3NcIjtcblxuZnVuY3Rpb24gT3ZlcmxheSh7IGNoaWxkcmVuLCB0cmFuc3BhcmVudCwgaXNGaXhlZCwgb25DbGljayB9KSB7XG4gIHJldHVybiAoXG4gICAgPGRpdlxuICAgICAgZGF0YS10ZXN0aWQ9XCJvdmVybGF5XCJcbiAgICAgIGNsYXNzTmFtZT17Y2xhc3NjYXQoW1xuICAgICAgICBzdHlsZXMub3ZlcmxheSxcbiAgICAgICAge1xuICAgICAgICAgIFtzdHlsZXMudHJhbnNwYXJlbnRdOiB0cmFuc3BhcmVudCxcbiAgICAgICAgICBbc3R5bGVzLmZpeGVkXTogaXNGaXhlZCxcbiAgICAgICAgfSxcbiAgICAgIF0pfVxuICAgICAgb25DbGljaz17b25DbGlja31cbiAgICA+XG4gICAgICB7Y2hpbGRyZW59XG4gICAgPC9kaXY+XG4gICk7XG59XG5cbk92ZXJsYXkuZGVmYXVsdFByb3BzID0ge1xuICB0cmFuc3BhcmVudDogZmFsc2UsXG4gIGlzRml4ZWQ6IGZhbHNlLFxuICBvbkNsaWNrOiAoKSA9PiB7fSxcbn07XG5cbk92ZXJsYXkucHJvcFR5cGVzID0ge1xuICBjaGlsZHJlbjogUHJvcFR5cGVzLmFycmF5T2YoUHJvcFR5cGVzLm5vZGUpLFxuICB0cmFuc3BhcmVudDogUHJvcFR5cGVzLmJvb2wsXG4gIGlzRml4ZWQ6IFByb3BUeXBlcy5ib29sLFxuICBvbkNsaWNrOiBQcm9wVHlwZXMuZnVuYyxcbn07XG5cbmV4cG9ydCBkZWZhdWx0IE92ZXJsYXk7XG4iLCJpbXBvcnQgUmVhY3QsIHsgdXNlQ2FsbGJhY2sgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSBcInByb3AtdHlwZXNcIjtcbmltcG9ydCBjbGFzc2NhdCBmcm9tIFwiY2xhc3NjYXRcIjtcbmltcG9ydCBzdHlsZXMgZnJvbSBcIi4vVGV4dElucHV0Lm1vZHVsZS5jc3NcIjtcblxuZnVuY3Rpb24gVGV4dElucHV0KHtcbiAgbGFiZWwsXG4gIG9uQ2hhbmdlLFxuICBwbGFjZWhvbGRlcixcbiAgdmFsdWUsXG4gIG5hbWUsXG4gIHR5cGUsXG4gIHNpemUsXG4gIGF1dG9Gb2N1cyxcbiAgaW5wdXRSZWYsXG59KSB7XG4gIGNvbnN0IGhhbmRsZUNoYW5nZSA9IHVzZUNhbGxiYWNrKChlKSA9PiBvbkNoYW5nZShlLnRhcmdldC52YWx1ZSksIFtvbkNoYW5nZV0pO1xuXG4gIHJldHVybiAoXG4gICAgPGxhYmVsIGNsYXNzTmFtZT17c3R5bGVzLnRleHRMYWJlbH0+XG4gICAgICB7bGFiZWx9XG4gICAgICA8aW5wdXRcbiAgICAgICAgZGF0YS10ZXN0aWQ9XCJpbnB1dFwiXG4gICAgICAgIHJlZj17aW5wdXRSZWZ9XG4gICAgICAgIGNsYXNzTmFtZT17Y2xhc3NjYXQoW3N0eWxlcy50ZXh0SW5wdXQsIHN0eWxlc1tzaXplXV0pfVxuICAgICAgICBvbkNoYW5nZT17IWlucHV0UmVmID8gaGFuZGxlQ2hhbmdlIDogdW5kZWZpbmVkfVxuICAgICAgICBwbGFjZWhvbGRlcj17cGxhY2Vob2xkZXJ9XG4gICAgICAgIG5hbWU9e25hbWV9XG4gICAgICAgIHR5cGU9e3R5cGV9XG4gICAgICAgIHZhbHVlPXt2YWx1ZX1cbiAgICAgICAgYXV0b0ZvY3VzPXthdXRvRm9jdXN9XG4gICAgICAvPlxuICAgIDwvbGFiZWw+XG4gICk7XG59XG5cblRleHRJbnB1dC5kZWZhdWx0UHJvcHMgPSB7XG4gIHR5cGU6IFwidGV4dFwiLFxuICBhdXRvRm9jdXM6IGZhbHNlLFxufTtcblxuVGV4dElucHV0LnByb3BUeXBlcyA9IHtcbiAgbGFiZWw6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgb25DaGFuZ2U6IFByb3BUeXBlcy5mdW5jLFxuICBwbGFjZWhvbGRlcjogUHJvcFR5cGVzLnN0cmluZyxcbiAgdmFsdWU6IFByb3BUeXBlcy5zdHJpbmcsXG4gIG5hbWU6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgdHlwZTogUHJvcFR5cGVzLm9uZU9mKFtcInRleHRcIiwgXCJwYXNzd29yZFwiLCBcImVtYWlsXCJdKSxcbiAgc2l6ZTogUHJvcFR5cGVzLm9uZU9mKFtcInNtYWxsXCIsIFwibWVkaXVtXCIsIFwibGFyZ2VcIl0pLFxuICBhdXRvRm9jdXM6IFByb3BUeXBlcy5ib29sLFxuICBpbnB1dFJlZjogUHJvcFR5cGVzLm9uZU9mVHlwZShbXG4gICAgUHJvcFR5cGVzLmZ1bmMsXG4gICAgUHJvcFR5cGVzLnNoYXBlKHsgY3VycmVudDogUHJvcFR5cGVzLmFueSB9KSxcbiAgXSksXG59O1xuXG5leHBvcnQgZGVmYXVsdCBUZXh0SW5wdXQ7XG4iLCJpbXBvcnQgUmVhY3QgZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gXCJwcm9wLXR5cGVzXCI7XG5pbXBvcnQgY2xhc3NjYXQgZnJvbSBcImNsYXNzY2F0XCI7XG5pbXBvcnQgc3R5bGVzIGZyb20gXCIuL1ZpZGVvLm1vZHVsZS5jc3NcIjtcblxuLyoqXG4gKiBUaGVyZSBpcyBhIGtub3duIGlzc3VlIGluIFJlYWN0IGluIHJlZ2FyZHMgdG8gdGhlICdtdXRlZCcgcHJvcGVydHkgd2hpY2ggY2F1c2VzIHRoZSB3YXJuaW5nOlxuICogXCJXYXJuaW5nOiB1bnN0YWJsZV9mbHVzaERpc2NyZXRlVXBkYXRlczogQ2Fubm90IGZsdXNoIHVwZGF0ZXMgd2hlbiBSZWFjdCBpcyBhbHJlYWR5IHJlbmRlcmluZy5cIlxuICpcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9mYWNlYm9vay9yZWFjdC9pc3N1ZXMvMTAzODlcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9mYWNlYm9vay9yZWFjdC9pc3N1ZXMvNjU0NFxuICogaHR0cHM6Ly9naXRodWIuY29tL3Rlc3RpbmctbGlicmFyeS9yZWFjdC10ZXN0aW5nLWxpYnJhcnkvaXNzdWVzLzQ3MFxuICovXG5cbmZ1bmN0aW9uIFZpZGVvKHsgc3JjLCB0eXBlLCBtdXRlZCwgbG9vcCwgYXV0b1BsYXksIGxheW91dCwgY2hpbGRyZW4gfSkge1xuICByZXR1cm4gY2hpbGRyZW4gPyAoXG4gICAgPGRpdiBjbGFzc05hbWU9e2NsYXNzY2F0KFtzdHlsZXMuY29udGFpbmVyLCBzdHlsZXMuaGFzT3ZlcmxheV0pfT5cbiAgICAgIDx2aWRlb1xuICAgICAgICBkYXRhLXRlc3RpZD1cInZpZGVvXCJcbiAgICAgICAgY3Jvc3NPcmlnaW49XCJhbm9ueW1vdXNcIlxuICAgICAgICBjbGFzc05hbWU9e2NsYXNzY2F0KFtzdHlsZXMudmlkZW8sIHN0eWxlc1tsYXlvdXRdXSl9XG4gICAgICAgIHNyYz17c3JjfVxuICAgICAgICB0eXBlPXt0eXBlfVxuICAgICAgICBtdXRlZD17bXV0ZWR9XG4gICAgICAgIGxvb3A9e2xvb3B9XG4gICAgICAgIGF1dG9QbGF5PXthdXRvUGxheX1cbiAgICAgICAgcGxheXNJbmxpbmU9e3RydWV9XG4gICAgICAvPlxuICAgICAge2NoaWxkcmVuICYmIDxkaXYgY2xhc3NOYW1lPXtzdHlsZXMub3ZlcmxheX0+e2NoaWxkcmVufTwvZGl2Pn1cbiAgICA8L2Rpdj5cbiAgKSA6IChcbiAgICA8dmlkZW9cbiAgICAgIGRhdGEtdGVzdGlkPVwidmlkZW9cIlxuICAgICAgY3Jvc3NPcmlnaW49XCJhbm9ueW1vdXNcIlxuICAgICAgY2xhc3NOYW1lPXtjbGFzc2NhdChbc3R5bGVzLnZpZGVvLCBzdHlsZXNbbGF5b3V0XV0pfVxuICAgICAgc3JjPXtzcmN9XG4gICAgICB0eXBlPXt0eXBlfVxuICAgICAgbXV0ZWQ9e211dGVkfVxuICAgICAgbG9vcD17bG9vcH1cbiAgICAgIGF1dG9QbGF5PXthdXRvUGxheX1cbiAgICAgIHBsYXlzSW5saW5lPXt0cnVlfVxuICAgIC8+XG4gICk7XG59XG5cblZpZGVvLmRlZmF1bHRQcm9wcyA9IHtcbiAgbXV0ZWQ6IHRydWUsXG4gIGxvb3A6IHRydWUsXG4gIGF1dG9QbGF5OiB0cnVlLFxuICBsYXlvdXQ6IFwiY29udGFpblwiLFxufTtcblxuVmlkZW8ucHJvcFR5cGVzID0ge1xuICBzcmM6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgdHlwZTogUHJvcFR5cGVzLnN0cmluZy5pc1JlcXVpcmVkLFxuICBsYXlvdXQ6IFByb3BUeXBlcy5vbmVPZihbXG4gICAgXCJjb3ZlclwiLFxuICAgIFwiY29udGFpblwiLFxuICAgIFwic3RyZXRjaEhvcml6b250YWxseVwiLFxuICAgIFwic3RyZXRjaFZlcnRpY2FsbHlcIixcbiAgXSksXG4gIGF1dG9QbGF5OiBQcm9wVHlwZXMuYm9vbCxcbiAgbG9vcDogUHJvcFR5cGVzLmJvb2wsXG4gIG11dGVkOiBQcm9wVHlwZXMuYm9vbCxcbiAgY2hpbGRyZW46IFByb3BUeXBlcy5ub2RlLFxufTtcblxuZXhwb3J0IGRlZmF1bHQgVmlkZW87XG4iXSwic291cmNlUm9vdCI6IiJ9
|
package/dist/styles.css
CHANGED
|
@@ -37,6 +37,10 @@
|
|
|
37
37
|
pointer-events: none;
|
|
38
38
|
}
|
|
39
39
|
|
|
40
|
+
.M9_egEC8msu135oPGVdIf.RSRbTg8Yc4-s8k6qU_vCg {
|
|
41
|
+
text-align: left;
|
|
42
|
+
}
|
|
43
|
+
|
|
40
44
|
.M9_egEC8msu135oPGVdIf._1bNQhbZwLA8ErLmwdQitJe {
|
|
41
45
|
--button-size: var(--theme-button-height-small, 30px);
|
|
42
46
|
|
|
@@ -98,8 +102,6 @@
|
|
|
98
102
|
align-items: center;
|
|
99
103
|
width: min-content;
|
|
100
104
|
height: 100%;
|
|
101
|
-
align-self: center;
|
|
102
|
-
justify-self: center;
|
|
103
105
|
}
|
|
104
106
|
|
|
105
107
|
._3eVBgmkG6hjVokm5Xy4UMQ {
|
|
@@ -145,6 +147,11 @@
|
|
|
145
147
|
pointer-events: none;
|
|
146
148
|
}
|
|
147
149
|
|
|
150
|
+
._3eVBgmkG6hjVokm5Xy4UMQ._3F6hMEQkJgywUkt1fwmTsy {
|
|
151
|
+
text-align: left;
|
|
152
|
+
justify-content: flex-start;
|
|
153
|
+
}
|
|
154
|
+
|
|
148
155
|
._3eVBgmkG6hjVokm5Xy4UMQ._8I9fhnzbMvCrl5KPj9f0 {
|
|
149
156
|
--button-size: var(--theme-button-height-small, 30px);
|
|
150
157
|
|
|
@@ -754,7 +761,7 @@
|
|
|
754
761
|
list-style: none;
|
|
755
762
|
margin: 0;
|
|
756
763
|
max-height: 100%;
|
|
757
|
-
overflow-y:
|
|
764
|
+
overflow-y: auto;
|
|
758
765
|
padding: 0;
|
|
759
766
|
}
|
|
760
767
|
|
|
@@ -1123,3 +1130,5 @@ h4 {
|
|
|
1123
1130
|
right: 0;
|
|
1124
1131
|
}
|
|
1125
1132
|
|
|
1133
|
+
|
|
1134
|
+
/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9CdXR0b24vQnV0dG9uLm1vZHVsZS5jc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvQnV0dG9uTGluay9CdXR0b25MaW5rLm1vZHVsZS5jc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvQ29sb3JTd2F0Y2gvQ29sb3JTd2F0Y2gubW9kdWxlLmNzcyIsIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9Db2xvclBpY2tlci9Db2xvclBpY2tlci5tb2R1bGUuY3NzIiwid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL01vZGFsL01vZGFsLm1vZHVsZS5jc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvQ29uZmlybWF0aW9uTW9kYWwvQ29uZmlybWF0aW9uTW9kYWwubW9kdWxlLmNzcyIsIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9GbG9hdGluZ1BhbmVsL0Zsb2F0aW5nUGFuZWwubW9kdWxlLmNzcyIsIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9JY29uL0ljb24ubW9kdWxlLmNzcyIsIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9JY29uQnV0dG9uL0ljb25CdXR0b24ubW9kdWxlLmNzcyIsIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9JY29uQnV0dG9uTGluay9JY29uQnV0dG9uTGluay5tb2R1bGUuY3NzIiwid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL0ltYWdlL0ltYWdlLm1vZHVsZS5jc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvTGlzdFZpZXcvTGlzdFZpZXcubW9kdWxlLmNzcyIsIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9MaXN0Vmlldy9MaXN0Vmlld0l0ZW0ubW9kdWxlLmNzcyIsIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9NZW51L01lbnUubW9kdWxlLmNzcyIsIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9NZW51L01lbnVDb250YWluZXIubW9kdWxlLmNzcyIsIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9NZW51L01lbnVJdGVtLm1vZHVsZS5jc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvTWVudS9NZW51TGlua0l0ZW0ubW9kdWxlLmNzcyIsIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9PdmVybGF5L092ZXJsYXkubW9kdWxlLmNzcyIsIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9UZXh0SW5wdXQvVGV4dElucHV0Lm1vZHVsZS5jc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvVG9hc3QvVG9hc3QubW9kdWxlLmNzcyIsIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9Ub2FzdC9Ub2FzdENvbnRhaW5lci5tb2R1bGUuY3NzIiwid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL1ZpZGVvL1ZpZGVvLm1vZHVsZS5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUN4R0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FDN0dBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FDOUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FDZEE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUM3Q0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FDckNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FDOUhBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUN6QkE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQy9FQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FDL0VBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUNwREE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQzNCQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUNSQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQ3JGQTtBQUNBO0FBQ0E7QUFDQTs7QUNIQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUMzQkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FDM0JBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUN4QkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUNwQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUM3RUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FDZEE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJmaWxlIjoic3R5bGVzLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi5NOV9lZ0VDOG1zdTEzNW9QR1ZkSWYge1xuICAtLWJ1dHRvbi1zaXplOiB2YXIoLS10aGVtZS1idXR0b24taGVpZ2h0LW1lZGl1bSwgNDFweCk7XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtYnV0dG9uLWJhY2tncm91bmQtY29sb3IsICNmZmYpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS10aGVtZS1idXR0b24tYm9yZGVyLWNvbG9yLCAjZTJlMmUyKTtcbiAgYm94LXNoYWRvdzogdmFyKC0tdGhlbWUtYnV0dG9uLXNoYWRvdywgMCAwIDEycHggMCByZ2JhKDAsIDAsIDAsIDAuMSkpO1xuICBjb2xvcjogdmFyKC0tdGhlbWUtYnV0dG9uLWZvcmVncm91bmQtY29sb3IsICMwZTBlMGYpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LWZhbWlseTogdmFyKC0tdGhlbWUtYnV0dG9uLWZvbnQtZmFtaWx5LCBoZWx2ZXRpY2EsIGFyaWFsLCBzYW5zLXNlcmlmKTtcbiAgZm9udC1zaXplOiB2YXIoLS10aGVtZS1idXR0b24tZm9udC1zaXplLW1lZGl1bSwgdmFyKC0tdGhlbWUtZm9udC1zaXplLCAxNXB4KSk7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBoZWlnaHQ6IHZhcigtLWJ1dHRvbi1zaXplKTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwIDEuMzVlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZS1vdXQ7XG4gIHRleHQtYWxpZ246IC13ZWJraXQtY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uTTlfZWdFQzhtc3UxMzVvUEdWZElmOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLk05X2VnRUM4bXN1MTM1b1BHVmRJZjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWJ1dHRvbi1ob3Zlci1iYWNrZ3JvdW5kLWNvbG9yLCAjZGRkKTtcbn1cblxuLk05X2VnRUM4bXN1MTM1b1BHVmRJZjphY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOTUpO1xufVxuXG4uTTlfZWdFQzhtc3UxMzVvUEdWZElmOmRpc2FibGVkIHtcbiAgb3BhY2l0eTogMC4zO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLk05X2VnRUM4bXN1MTM1b1BHVmRJZi5SU1JiVGc4WWM0LXM4azZxVV92Q2cge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uTTlfZWdFQzhtc3UxMzVvUEdWZElmLl8xYk5RaGJad0xBOEVyTG13ZFFpdEplIHtcbiAgLS1idXR0b24tc2l6ZTogdmFyKC0tdGhlbWUtYnV0dG9uLWhlaWdodC1zbWFsbCwgMzBweCk7XG5cbiAgZm9udC1zaXplOiB2YXIoLS10aGVtZS1idXR0b24tZm9udC1zaXplLXNtYWxsLCAwLjc1cmVtKTtcbn1cblxuLk05X2VnRUM4bXN1MTM1b1BHVmRJZi5fMkR3TEZELTRnRHo5SEVBQWl3V0pQcSB7XG4gIC0tYnV0dG9uLXNpemU6IHZhcigtLXRoZW1lLWJ1dHRvbi1oZWlnaHQtbGFyZ2UsIDU0cHgpO1xufVxuXG4uTTlfZWdFQzhtc3UxMzVvUEdWZElmLl8zMUNmbVRVWXBFaDFoWnZjdFE5bEs0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtYnV0dG9uLWZvcmVncm91bmQtY29sb3IsICMwZTBlMGYpO1xuICBjb2xvcjogdmFyKC0tdGhlbWUtYnV0dG9uLWJhY2tncm91bmQtY29sb3IsICNmZmYpO1xufVxuXG4uTTlfZWdFQzhtc3UxMzVvUEdWZElmLl8yYnEzMXFLRDdCNnI2Q1RDT0wzZHJXIHtcbiAgYm9yZGVyLXJhZGl1czogY2FsYyh2YXIoLS1idXR0b24tc2l6ZSkgLyAyKTtcbiAgcGFkZGluZzogMCBjYWxjKHZhcigtLWJ1dHRvbi1zaXplKSAqIDAuNik7XG59XG5cbi5NOV9lZ0VDOG1zdTEzNW9QR1ZkSWYuXzJicTMxcUtEN0I2cjZDVENPTDNkclcuXzJlVUNXUU1FVE9naVh1aWI3WGZUaFoge1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLXRoZW1lLWJ1dHRvbi1yb3VuZGVkLW9mZnNldCwgLTRweCk7XG59XG5cbi5NOV9lZ0VDOG1zdTEzNW9QR1ZkSWYuXzJicTMxcUtEN0I2cjZDVENPTDNkclcuRzhvX09NRFVGc0VRMXl0VTdvVVlHIHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXRoZW1lLWJ1dHRvbi1yb3VuZGVkLW9mZnNldCwgLTRweCk7XG59XG5cbi5NOV9lZ0VDOG1zdTEzNW9QR1ZkSWYuXzJ2a25oVUZBSUdtalhzN3Rna0FDN0kge1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4uTTlfZWdFQzhtc3UxMzVvUEdWZElmLl8ycDBHcGRtUEtJRkNVZXM1ODRZSGVWIHtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4uTTlfZWdFQzhtc3UxMzVvUEdWZElmLl84dk1sU1JIXzlIb1JHSmg4U3drYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi5NOV9lZ0VDOG1zdTEzNW9QR1ZkSWYublo5ck9ad3pHWFZJM2F5UmdBM1FDIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5NOV9lZ0VDOG1zdTEzNW9QR1ZkSWYuXzF5OGlmYjk1c3BUTFdHQW1zYncxUjIge1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5NOV9lZ0VDOG1zdTEzNW9QR1ZkSWYuXzNjTzQ5SkVMTkt0R3lhRnhSbHNoeU8ge1xuICBwYWRkaW5nOiAwO1xufVxuXG4ubzhkN1lvVDgzdW1lUFBTRnpLMzFZIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgY29sdW1uLWdhcDogMWVtO1xuICBncmlkLWF1dG8tZmxvdzogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogbWluLWNvbnRlbnQ7XG4gIGhlaWdodDogMTAwJTtcbn1cbiIsIi5fM2VWQmdta0c2aGpWb2ttNVh5NFVNUSB7XG4gIC0tYnV0dG9uLXNpemU6IHZhcigtLXRoZW1lLWJ1dHRvbi1oZWlnaHQtbWVkaXVtLCA0MXB4KTtcblxuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtYnV0dG9uLWJhY2tncm91bmQtY29sb3IsICNmZmYpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS10aGVtZS1idXR0b24tYm9yZGVyLWNvbG9yLCAjZTJlMmUyKTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNoYWRvdzogdmFyKC0tdGhlbWUtYnV0dG9uLXNoYWRvdywgMCAwIDEycHggMCByZ2JhKDAsIDAsIDAsIDAuMSkpO1xuICBjb2xvcjogdmFyKC0tdGhlbWUtYnV0dG9uLWZvcmVncm91bmQtY29sb3IsICMwZTBlMGYpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS10aGVtZS1idXR0b24tZm9udC1mYW1pbHksIGhlbHZldGljYSwgYXJpYWwsIHNhbnMtc2VyaWYpO1xuICBmb250LXNpemU6IHZhcigtLXRoZW1lLWJ1dHRvbi1mb250LXNpemUtbWVkaXVtLCB2YXIoLS10aGVtZS1mb250LXNpemUsIDE1cHgpKTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGhlaWdodDogdmFyKC0tYnV0dG9uLXNpemUpO1xuICB3aWR0aDogbWluLWNvbnRlbnQ7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMCAxLjM1ZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIHRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2Utb3V0O1xuICB0ZXh0LWFsaWduOiAtd2Via2l0LWNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLl8zZVZCZ21rRzZoalZva201WHk0VU1ROmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLl8zZVZCZ21rRzZoalZva201WHk0VU1ROmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtYnV0dG9uLWhvdmVyLWJhY2tncm91bmQtY29sb3IsICNkZGQpO1xufVxuXG4uXzNlVkJnbWtHNmhqVm9rbTVYeTRVTVE6YWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjk1KTtcbn1cblxuLl8zZVZCZ21rRzZoalZva201WHk0VU1ROmRpc2FibGVkIHtcbiAgb3BhY2l0eTogMC4zO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLl8zZVZCZ21rRzZoalZva201WHk0VU1RLl8zRjZoTUVRa0pneXdVa3QxZndtVHN5IHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuXG4uXzNlVkJnbWtHNmhqVm9rbTVYeTRVTVEuXzhJOWZobnpiTXZDcmw1S1BqOWYwIHtcbiAgLS1idXR0b24tc2l6ZTogdmFyKC0tdGhlbWUtYnV0dG9uLWhlaWdodC1zbWFsbCwgMzBweCk7XG5cbiAgZm9udC1zaXplOiB2YXIoLS10aGVtZS1idXR0b24tZm9udC1zaXplLXNtYWxsLCAwLjc1cmVtKTtcbn1cblxuLl8zZVZCZ21rRzZoalZva201WHk0VU1RLl8zX1N3cW1EV09Hdjg3N2lIQUNuSnBDIHtcbiAgLS1idXR0b24tc2l6ZTogdmFyKC0tdGhlbWUtYnV0dG9uLWhlaWdodC1sYXJnZSwgNTRweCk7XG59XG5cbi5fM2VWQmdta0c2aGpWb2ttNVh5NFVNUS5fMXhPYTNDQlJIelBDUldOc2lKNjVhQyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWJ1dHRvbi1mb3JlZ3JvdW5kLWNvbG9yLCAjMGUwZTBmKTtcbiAgY29sb3I6IHZhcigtLXRoZW1lLWJ1dHRvbi1iYWNrZ3JvdW5kLWNvbG9yLCAjZmZmKTtcbn1cblxuLl8zZVZCZ21rRzZoalZva201WHk0VU1RLl8zVUdsT0l0ektva1ZnMHdHSDBlSWxYIHtcbiAgYm9yZGVyLXJhZGl1czogY2FsYyh2YXIoLS1idXR0b24tc2l6ZSkgLyAyKTtcbiAgcGFkZGluZzogMCBjYWxjKHZhcigtLWJ1dHRvbi1zaXplKSAqIDAuNik7XG59XG5cbi5fM2VWQmdta0c2aGpWb2ttNVh5NFVNUS5fM1VHbE9JdHpLb2tWZzB3R0gwZUlsWC5fMTN0UHNwNmRmQTFUd2IxTU1IUmlHVCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tdGhlbWUtYnV0dG9uLXJvdW5kZWQtb2Zmc2V0LCAtNHB4KTtcbn1cblxuLl8zZVZCZ21rRzZoalZva201WHk0VU1RLl8zVUdsT0l0ektva1ZnMHdHSDBlSWxYLk5JNW42YkVWUkNRUHk2QU9Bc1ExcSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS10aGVtZS1idXR0b24tcm91bmRlZC1vZmZzZXQsIC00cHgpO1xufVxuXG4uXzNlVkJnbWtHNmhqVm9rbTVYeTRVTVEuZ0lZOWl1dkMyVld4Y3Z3d0NtYUpKIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLl8zZVZCZ21rRzZoalZva201WHk0VU1RLl8zWGZsaDNRMUFablRPRDBjdHF1STZ3IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi5fM2VWQmdta0c2aGpWb2ttNVh5NFVNUS5fMkZiUkRFR1NfN2VNVWNKMFZpT0JVMCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uXzNlVkJnbWtHNmhqVm9rbTVYeTRVTVEuXzFyUG0tdDVaV3dyUy1MOWw3ejY2amIge1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5fM2VWQmdta0c2aGpWb2ttNVh5NFVNUS5fM0o4RGVhTHE1aXczQXA3cUtKa1A5QiB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5fM2VWQmdta0c2aGpWb2ttNVh5NFVNUS5fM2NFUXMtS19tU2hGTkRnRFAzMldkNiB7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLl8xVlR5ZlR3VmxvQWNad1lDWnlzbHNKIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgY29sdW1uLWdhcDogMWVtO1xuICBncmlkLWF1dG8tZmxvdzogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6IG1pbi1jb250ZW50O1xuICBoZWlnaHQ6IDEwMCU7XG59XG4iLCIuXzEzc3MxeHNNTml6dkVnUF9oeEVWOEIge1xuICAtLWNvbG9yLXN3YXRjaC1zaXplOiB2YXIoLS10aGVtZS1idXR0b24taGVpZ2h0LCA0MXB4KTtcbiAgLS1jb2xvci1zd2F0Y2gtc2hhZG93OiB2YXIoXG4gICAgLS10aGVtZS1idXR0b24tc2hhZG93LFxuICAgIDAgMCAxMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjEpXG4gICk7XG5cbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1jb2xvci1zd2F0Y2gtc2l6ZSk7XG4gIGJveC1zaGFkb3c6IHZhcigtLWNvbG9yLXN3YXRjaC1zaGFkb3cpO1xuICBjb250YWluOiBzdHJpY3Q7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgaGVpZ2h0OiB2YXIoLS1jb2xvci1zd2F0Y2gtc2l6ZSk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIHRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2Utb3V0O1xuICB3aWR0aDogdmFyKC0tY29sb3Itc3dhdGNoLXNpemUpO1xufVxuXG4uXzEzc3MxeHNNTml6dkVnUF9oeEVWOEI6aG92ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOTUpO1xuICBib3gtc2hhZG93OiB2YXIoLS10aGVtZS1idXR0b24taG92ZXItc2hhZG93LCAwIDAgMTVweCAwIHJnYmEoMCwgMCwgMCwgMC4xNSkpO1xufVxuXG4uXzEzc3MxeHNNTml6dkVnUF9oeEVWOEI6bm90KC5MNmZBdDZSWll6X3ozd1BialpFeEgpOmFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC45KTtcbn1cblxuLl8xM3NzMXhzTU5penZFZ1BfaHhFVjhCLkw2ZkF0NlJaWXpfejN3UGJqWkV4SCB7XG4gIC0tY29sb3Itc3dhdGNoLXNpemU6IGNhbGModmFyKC0tdGhlbWUtYnV0dG9uLWhlaWdodCwgNDFweCkgKiAxLjUpO1xuXG4gIGN1cnNvcjogYXV0bztcbn1cblxuLypcbiAqIFNlZSBodHRwczovL2dvbWFrZXRoaW5ncy5jb20vaGlkZGVuLWNvbnRlbnQtZm9yLWJldHRlci1hMTF5LyNoaWRpbmctdGhlLWxpbmtcbiovXG4uXzN2SjVteHB6YVlzS2F4Zi04dEIzMXgge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IC0xcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJvcmRlci13aWR0aDogMDtcbn1cbiIsIi5fMzFGd0hfbldyNzJrM3B1Z0FwSnViOSB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGNvbnRhaW46IGxheW91dDtcbiAgZ3JpZC1nYXA6IHZhcigtLXRoZW1lLWJ1dHRvbi1nYXAsIDEwcHgpO1xufVxuXG4uXzMxRndIX25XcjcyazNwdWdBcEp1YjkuUWEtQnB1VFQya3hwbVZfQVFnQ2pIIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ3JpZC1hdXRvLWZsb3c6IGNvbHVtbjtcbn1cblxuLl8zMUZ3SF9uV3I3MmszcHVnQXBKdWI5Ll8yeDRTQW5ib3B5Wm1reWNXTEMwRVhrIHtcbiAgZ3JpZC1hdXRvLWZsb3c6IHJvdztcbiAganVzdGlmeS1pdGVtczogY2VudGVyO1xufVxuIiwiLl8xeXhDYlFKcVN0VXZ5dHZLRWVOQzNuIHtcbiAgYm90dG9tOiAwO1xuICBjb250YWluOiBzdHJpY3Q7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiA5O1xufVxuXG5Ac3VwcG9ydHMgKC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBub25lKSBvciAoYmFja2Ryb3AtZmlsdGVyOiBub25lKSB7XG4gIC5fMXl4Q2JRSnFTdFV2eXR2S0VlTkMzbiB7XG4gICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTJweCk7XG4gICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEycHgpO1xuICB9XG59XG5cbi8qIHNsaWdodGx5IHRyYW5zcGFyZW50IGZhbGxiYWNrIGZvciBGaXJlZm94IChub3Qgc3VwcG9ydGluZyBiYWNrZHJvcC1maWx0ZXIpICovXG5Ac3VwcG9ydHMgbm90ICgoLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IG5vbmUpIG9yIChiYWNrZHJvcC1maWx0ZXI6IG5vbmUpKSB7XG4gIC5fMXl4Q2JRSnFTdFV2eXR2S0VlTkMzbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKFxuICAgICAgLS10aGVtZS1tb2RhbC1vdmVybGF5LWNvbG9yLFxuICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpXG4gICAgKTtcbiAgfVxufVxuXG4uRDhTakJ4M2lrejYzNll1Ym5IWUFZIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtbW9kYWwtYmFja2dyb3VuZC1jb2xvciwgI2ZmZik7XG4gIGJveC1zaGFkb3c6IHZhcigtLXRoZW1lLW1vZGFsLXNoYWRvdywgMCAwIDUwcHggMCByZ2JhKDAsIDAsIDAsIDAuMikpO1xuICBvdXRsaW5lOiBub25lO1xuICBvdmVyZmxvdzogYXV0bztcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgei1pbmRleDogMTA7XG59XG5cbi5vOFZSVnhNcnMxeFhhdkFEeXhqTEcge1xuICBib3R0b206IHZhcigtLXRoZW1lLW91dGVyLXBhZGRpbmcsIDIxcHgpO1xuICBsZWZ0OiB2YXIoLS10aGVtZS1vdXRlci1wYWRkaW5nLCAyMXB4KTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiAxMTtcbn1cbiIsIi5ra2dIb0JRaEZQc0tqX3gxWkZkUkgge1xuICBjb250YWluOiBjb250ZW50O1xuICBtaW4td2lkdGg6IDMzdnc7XG59XG5cbi5fMVd1dkhELUdkWExydHF3YTA0VzFxeSB7XG4gIHBhZGRpbmc6IDFlbSB2YXIoLS10aGVtZS1jb25maXJtYXRpb24tbW9kYWwtaG9yaXpvbnRhbC1wYWRkaW5nLCAxLjVyZW0pIDEuNWVtXG4gICAgdmFyKC0tdGhlbWUtY29uZmlybWF0aW9uLW1vZGFsLWhvcml6b250YWwtcGFkZGluZywgMS41cmVtKTtcbiAgZm9udC1zaXplOiB2YXIoLS10aGVtZS1jb25maXJtYXRpb24tbW9kYWwtaGVhZGVyLWZvbnQtc2l6ZSwgMnJlbSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG1hcmdpbjogMDtcbn1cblxuLl8yN2VVeVNRcXZxNXFsb05DbElqSVNUIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC1hdXRvLWZsb3c6IHJvdztcbiAgcm93LWdhcDogMWVtO1xuICBwYWRkaW5nOiAycmVtIHZhcigtLXRoZW1lLWNvbmZpcm1hdGlvbi1tb2RhbC1ob3Jpem9udGFsLXBhZGRpbmcsIDEuNXJlbSk7XG59XG5cbi5fMjdlVXlTUXF2cTVxbG9OQ2xJaklTVC5fMmd0QlhMOVBGU3BIc1cwQTl4ZDU1UyB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5fNWdJcHlGM1g1dGhQUUFuc0FDNHo5IHtcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogY2FsYyhcbiAgICAgIHZhcigtLXRoZW1lLWNvbmZpcm1hdGlvbi1tb2RhbC1ob3Jpem9udGFsLXBhZGRpbmcsIDEuNXJlbSkgKiAxLjI1XG4gICAgKVxuICAgIHZhcigtLXRoZW1lLWNvbmZpcm1hdGlvbi1tb2RhbC1ob3Jpem9udGFsLXBhZGRpbmcsIDEuNXJlbSk7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cblxuLnN3c29DaWkxdzR4Tmw3aW9EVmtPNSB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtYXV0by1mbG93OiBjb2x1bW47XG4gIGNvbHVtbi1nYXA6IHZhcigtLXRoZW1lLWJ1dHRvbi1nYXAsIDdweCk7XG59XG4iLCIuYTZOSE8yQ1ZWQ2Zpbml5ZTJYTE4tIHtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250YWluOiBsYXlvdXQ7XG4gIG1heC1oZWlnaHQ6IDEwMHZoO1xuICBtYXgtd2lkdGg6IDEwMHZ3O1xuICB6LWluZGV4OiAzO1xufVxuXG4uYTZOSE8yQ1ZWQ2Zpbml5ZTJYTE4tLl8zUlNnQjc2ckVCbmlQYzJZY3I4WmJ2IHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbn1cblxuLmE2TkhPMkNWVkNmaW5peWUyWExOLS5fMUprWDE1aWdjbG5ibTVzUlNjV1ZEWSB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi5hNk5ITzJDVlZDZmluaXllMlhMTi0uTU1RMXlqRWFmV2tZRlZESE1wVGJJIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xufVxuXG4uYTZOSE8yQ1ZWQ2Zpbml5ZTJYTE4tLl8zbTJNX05hcmM1eHdMYXk4SEpsamtjIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLmE2TkhPMkNWVkNmaW5peWUyWExOLS5fMXJmYTQ5emhaeE5pZno2NE9xYl82UCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uYTZOSE8yQ1ZWQ2Zpbml5ZTJYTE4tLl9rVWFsbkRlRWZ2enFBamkwQU1EbyB7XG4gIHRvcDogdmFyKC0tdGhlbWUtb3V0ZXItcGFkZGluZywgMjFweCk7XG59XG5cbi5hNk5ITzJDVlZDZmluaXllMlhMTi0uVzhKQUl3TGpPOEpRR2J2aVpwUFF3IHtcbiAgdG9wOiAwO1xufVxuXG4uYTZOSE8yQ1ZWQ2Zpbml5ZTJYTE4tLl8zb3BKN0ViNnRqMzk0dVY4YTU3aXh6IHtcbiAgdG9wOiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi5hNk5ITzJDVlZDZmluaXllMlhMTi0uXzMtdmJ3anAwYVBjTEVWMVN4MElDZ1Age1xuICByaWdodDogdmFyKC0tdGhlbWUtb3V0ZXItcGFkZGluZywgMjFweCk7XG59XG5cbi5hNk5ITzJDVlZDZmluaXllMlhMTi0uXzNYTkZ5NVpvTUNvWUJJYWJlR040QlEge1xuICByaWdodDogMDtcbn1cblxuLmE2TkhPMkNWVkNmaW5peWUyWExOLS5fMTJjM0N6VU1RRThBRzNBTDhIaWtpMiB7XG4gIHJpZ2h0OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNTAlKTtcbn1cblxuLmE2TkhPMkNWVkNmaW5peWUyWExOLS5fM2dlQkVOSDVvRXJxR2R0LVF5SG5QaCB7XG4gIGJvdHRvbTogdmFyKC0tdGhlbWUtb3V0ZXItcGFkZGluZywgMjFweCk7XG59XG5cbi5hNk5ITzJDVlZDZmluaXllMlhMTi0uXzNfc2FNNEdzMzJuUmJJSEh4SUViRjYge1xuICBib3R0b206IDA7XG59XG5cbi5hNk5ITzJDVlZDZmluaXllMlhMTi0uXzJQTEU0ZG1HaG5jZ2stbEVub1U0a3Yge1xuICBib3R0b206IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MCUpO1xufVxuXG4uYTZOSE8yQ1ZWQ2Zpbml5ZTJYTE4tLl8xaVNCbnlaZ1BlRlVXb000aTZkU3BVIHtcbiAgbGVmdDogdmFyKC0tdGhlbWUtb3V0ZXItcGFkZGluZywgMjFweCk7XG59XG5cbi5hNk5ITzJDVlZDZmluaXllMlhMTi0uXzFmWDE5cUlPU2huMm81dXVzUnpUZ3Mge1xuICBsZWZ0OiAwO1xufVxuXG4uYTZOSE8yQ1ZWQ2Zpbml5ZTJYTE4tLktCSERvY2t1SFRFT0tNR096YWRYaSB7XG4gIGxlZnQ6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cblxuLmE2TkhPMkNWVkNmaW5peWUyWExOLS5fMzF0NnRIUko1cy01RGNETEZUS2gxbSB7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xufVxuXG4uYTZOSE8yQ1ZWQ2Zpbml5ZTJYTE4tLl8yaHE3ZmtEWEh4cnh6MnQ3TExnNF85IHtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLmE2TkhPMkNWVkNmaW5peWUyWExOLS5fMzF0NnRIUko1cy01RGNETEZUS2gxbS5fMmhxN2ZrRFhIeHJ4ejJ0N0xMZzRfOSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuXG4uYTZOSE8yQ1ZWQ2Zpbml5ZTJYTE4tLl8zMXQ2dEhSSjVzLTVEY0RMRlRLaDFtLmE2TkhPMkNWVkNmaW5peWUyWExOLS5fM29wSjdFYjZ0ajM5NHVWOGE1N2l4eiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuXG4uYTZOSE8yQ1ZWQ2Zpbml5ZTJYTE4tLl8zMXQ2dEhSSjVzLTVEY0RMRlRLaDFtLmE2TkhPMkNWVkNmaW5peWUyWExOLS5fMlBMRTRkbUdobmNnay1sRW5vVTRrdiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDUwJSk7XG59XG5cbi5hNk5ITzJDVlZDZmluaXllMlhMTi0uXzJocTdma0RYSHhyeHoydDdMTGc0XzkuYTZOSE8yQ1ZWQ2Zpbml5ZTJYTE4tLktCSERvY2t1SFRFT0tNR096YWRYaSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuXG4uYTZOSE8yQ1ZWQ2Zpbml5ZTJYTE4tLl8yaHE3ZmtEWEh4cnh6MnQ3TExnNF85LmE2TkhPMkNWVkNmaW5peWUyWExOLS5fMTJjM0N6VU1RRThBRzNBTDhIaWtpMiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDUwJSwgLTUwJSk7XG59XG5cbi5hNk5ITzJDVlZDZmluaXllMlhMTi0uS0JIRG9ja3VIVEVPS01HT3phZFhpLmE2TkhPMkNWVkNmaW5peWUyWExOLS5fM29wSjdFYjZ0ajM5NHVWOGE1N2l4eiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuXG4uYTZOSE8yQ1ZWQ2Zpbml5ZTJYTE4tLl8xMmMzQ3pVTVFFOEFHM0FMOEhpa2kyLmE2TkhPMkNWVkNmaW5peWUyWExOLS5fM29wSjdFYjZ0ajM5NHVWOGE1N2l4eiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDUwJSwgLTUwJSk7XG59XG5cbi5hNk5ITzJDVlZDZmluaXllMlhMTi0uS0JIRG9ja3VIVEVPS01HT3phZFhpLmE2TkhPMkNWVkNmaW5peWUyWExOLS5fMlBMRTRkbUdobmNnay1sRW5vVTRrdiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDUwJSk7XG59XG5cbi5hNk5ITzJDVlZDZmluaXllMlhMTi0uXzEyYzNDelVNUUU4QUczQUw4SGlraTIuYTZOSE8yQ1ZWQ2Zpbml5ZTJYTE4tLl8yUExFNGRtR2huY2drLWxFbm9VNGt2IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCA1MCUpO1xufVxuIiwiLnVoOHprbVFwNXliazVXSlNsYTY5RCB7XG4gIC0tc2l6ZTogdmFyKC0tdGhlbWUtaWNvbi1oZWlnaHQtbWVkaXVtLCAyMnB4KTtcblxuICBkaXNwbGF5OiBibG9jaztcbiAgY29udGFpbjogc3RyaWN0O1xuICBoZWlnaHQ6IHZhcigtLXNpemUpO1xuICB3aWR0aDogdmFyKC0tc2l6ZSk7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogMC4ycyAtd2Via2l0LWZpbHRlciBlYXNlLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiAwLjJzIC1tb3otZmlsdGVyIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IDAuMnMgZmlsdGVyIGVhc2Utb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogMC4ycyAtbXMtZmlsdGVyIGVhc2Utb3V0O1xuICAtby10cmFuc2l0aW9uOiAwLjJzIC1vLWZpbHRlciBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogMC4ycyBmaWx0ZXIgZWFzZS1vdXQsIDAuMnMgLXdlYmtpdC1maWx0ZXIgZWFzZS1vdXQ7XG59XG5cbi51aDh6a21RcDV5Yms1V0pTbGE2OUQuXzlESUN0cW1RU25MUGptMVhJN1lWcyB7XG4gIC0tc2l6ZTogdmFyKC0tdGhlbWUtaWNvbi1oZWlnaHQtc21hbGwsIDE2cHgpO1xufVxuXG4udWg4emttUXA1eWJrNVdKU2xhNjlELl8ycmd1Y0FIOEJubGktY21qejlpMkMyIHtcbiAgLS1zaXplOiB2YXIoLS10aGVtZS1pY29uLWhlaWdodC1sYXJnZSwgMjZweCk7XG59XG5cbi51aDh6a21RcDV5Yms1V0pTbGE2OUQuSS1lSTVxOHJkMmJTcDlCLUZoVXphIHtcbiAgZmlsdGVyOiBpbnZlcnQoMSk7XG59XG4iLCIuXzJNUHVKM0FwdnJBdnJld2pTV0dBQTIge1xuICAtLWljb24tc2l6ZTogdmFyKC0tdGhlbWUtaWNvbi1oZWlnaHQtbWVkaXVtLCAyM3B4KTtcblxuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1idXR0b24tYmFja2dyb3VuZC1jb2xvciwgI2ZmZik7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXRoZW1lLWJ1dHRvbi1ib3JkZXItY29sb3IsICNlMmUyZTIpO1xuICBib3gtc2hhZG93OiB2YXIoLS10aGVtZS1idXR0b24tc2hhZG93LCAwIDAgMTJweCAwIHJnYmEoMCwgMCwgMCwgMC4xKSk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luOiAwO1xuICBoZWlnaHQ6IG1pbi1jb250ZW50O1xuICB3aWR0aDogbWluLWNvbnRlbnQ7XG4gIHBhZGRpbmc6IGNhbGModmFyKC0taWNvbi1zaXplKSAvIDEuNSk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIHRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2Utb3V0O1xufVxuXG4uXzJNUHVKM0FwdnJBdnJld2pTV0dBQTIubE9rb2FuN2RicC1nb0R0SlZ1SzdCIHtcbiAgLS1pY29uLXNpemU6IHZhcigtLXRoZW1lLWljb24taGVpZ2h0LXNtYWxsLCAxNnB4KTtcbn1cblxuLl8yTVB1SjNBcHZyQXZyZXdqU1dHQUEyLl8yYUc2elhxVEVLVmN2QmFhbmlDTkJ5IHtcbiAgLS1pY29uLXNpemU6IHZhcigtLXRoZW1lLWljb24taGVpZ2h0LWxhcmdlLCAzNXB4KTtcbn1cblxuLl8yTVB1SjNBcHZyQXZyZXdqU1dHQUEyLl8ySlgwMzRxVVRDb1RkV0MycHBBNDg3IHtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBwYWRkaW5nOiBjYWxjKHZhcigtLWljb24tc2l6ZSkgLyAxLjI1KTtcbn1cblxuLl8yTVB1SjNBcHZyQXZyZXdqU1dHQUEyLl8ySlgwMzRxVVRDb1RkV0MycHBBNDg3Ll8xd3BDLVdYZ0wwNlFLeHRQek93TlJLIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tdGhlbWUtYnV0dG9uLXJvdW5kZWQtb2Zmc2V0LCAtNHB4KTtcbn1cblxuLl8yTVB1SjNBcHZyQXZyZXdqU1dHQUEyLl8ySlgwMzRxVVRDb1RkV0MycHBBNDg3LkxJenJRQzdwb1FUOWpVUkJxTURLaCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tdGhlbWUtYnV0dG9uLXJvdW5kZWQtb2Zmc2V0LCAtNHB4KTtcbn1cblxuLl8yTVB1SjNBcHZyQXZyZXdqU1dHQUEyLl8ySlgwMzRxVVRDb1RkV0MycHBBNDg3Ll8yaV93NVVMa1VLN0xWdzVoRU85N0V3IHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdGhlbWUtYnV0dG9uLXJvdW5kZWQtb2Zmc2V0LCAtNHB4KTtcbn1cblxuLl8yTVB1SjNBcHZyQXZyZXdqU1dHQUEyLl8ySlgwMzRxVVRDb1RkV0MycHBBNDg3Ll8zOGVLbFRRVFYxWWxuRWUxR21OdFFrIHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXRoZW1lLWJ1dHRvbi1yb3VuZGVkLW9mZnNldCwgLTRweCk7XG59XG5cbi5fMk1QdUozQXB2ckF2cmV3alNXR0FBMjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5fMk1QdUozQXB2ckF2cmV3alNXR0FBMjpkaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDAuMztcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5fMk1QdUozQXB2ckF2cmV3alNXR0FBMjphY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOTUpO1xufVxuXG4uXzJNUHVKM0FwdnJBdnJld2pTV0dBQTI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1idXR0b24taG92ZXItYmFja2dyb3VuZC1jb2xvciwgI2RkZCk7XG59XG5cbi5fMk1QdUozQXB2ckF2cmV3alNXR0FBMi5fMk5rWjUwcmtBM2VaQ3lzWTlGQXAtZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWJ1dHRvbi1mb3JlZ3JvdW5kLWNvbG9yLCAjMGUwZTBmKTtcbiAgY29sb3I6IHZhcigtLXRoZW1lLWJ1dHRvbi1iYWNrZ3JvdW5kLWNvbG9yLCAjZmZmKTtcbn1cblxuLl8yTVB1SjNBcHZyQXZyZXdqU1dHQUEyLl8zVXk1SFpkdmtXZjdiaWxUMHd4d1ZlIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLl8yTVB1SjNBcHZyQXZyZXdqU1dHQUEyLl8yRjRIeTlscTVPQ3JFcFBaUGg1eEFKIHtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4uXzJNUHVKM0FwdnJBdnJld2pTV0dBQTIuXzJ1N3FUTWVFOUQ1cnRjc0VjU29BWTMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbiIsIi5fMXVpZm1LTlBEemR1NVlEbmhnd1BRSyB7XG4gIC0taWNvbi1zaXplOiB2YXIoLS10aGVtZS1pY29uLWhlaWdodC1tZWRpdW0sIDIzcHgpO1xuXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWJ1dHRvbi1iYWNrZ3JvdW5kLWNvbG9yLCAjZmZmKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdGhlbWUtYnV0dG9uLWJvcmRlci1jb2xvciwgI2UyZTJlMik7XG4gIGJveC1zaGFkb3c6IHZhcigtLXRoZW1lLWJ1dHRvbi1zaGFkb3csIDAgMCAxMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjEpKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW46IDA7XG4gIGhlaWdodDogbWluLWNvbnRlbnQ7XG4gIHdpZHRoOiBtaW4tY29udGVudDtcbiAgcGFkZGluZzogY2FsYyh2YXIoLS1pY29uLXNpemUpIC8gMS41KTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZS1vdXQ7XG59XG5cbi5fMXVpZm1LTlBEemR1NVlEbmhnd1BRSy5wZkhjWWFldy1Ickh0VE51UjR2N2gge1xuICAtLWljb24tc2l6ZTogdmFyKC0tdGhlbWUtaWNvbi1oZWlnaHQtc21hbGwsIDE2cHgpO1xufVxuXG4uXzF1aWZtS05QRHpkdTVZRG5oZ3dQUUsuXzI2WjlGSC1DTlBxZjU1WlJQMXZuYWIge1xuICAtLWljb24tc2l6ZTogdmFyKC0tdGhlbWUtaWNvbi1oZWlnaHQtbGFyZ2UsIDM1cHgpO1xufVxuXG4uXzF1aWZtS05QRHpkdTVZRG5oZ3dQUUsuXzJxN1d2Uk9oTm0zZ3NSSVJhUVFlYVUge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHBhZGRpbmc6IGNhbGModmFyKC0taWNvbi1zaXplKSAvIDEuMjUpO1xufVxuXG4uXzF1aWZtS05QRHpkdTVZRG5oZ3dQUUsuXzJxN1d2Uk9oTm0zZ3NSSVJhUVFlYVUud1p5X3Z1bFprTWJXU1gwYWtjWkhBIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tdGhlbWUtYnV0dG9uLXJvdW5kZWQtb2Zmc2V0LCAtNHB4KTtcbn1cblxuLl8xdWlmbUtOUER6ZHU1WURuaGd3UFFLLl8ycTdXdlJPaE5tM2dzUklSYVFRZWFVLl8yamhocG02MF95UEVmeFEtd2F6ai01IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS10aGVtZS1idXR0b24tcm91bmRlZC1vZmZzZXQsIC00cHgpO1xufVxuXG4uXzF1aWZtS05QRHpkdTVZRG5oZ3dQUUsuXzJxN1d2Uk9oTm0zZ3NSSVJhUVFlYVUuRG5uckc3WlhtVElobVdVY3M5OW0xIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdGhlbWUtYnV0dG9uLXJvdW5kZWQtb2Zmc2V0LCAtNHB4KTtcbn1cblxuLl8xdWlmbUtOUER6ZHU1WURuaGd3UFFLLl8ycTdXdlJPaE5tM2dzUklSYVFRZWFVLl8xWWRDZzdUNlhqaG14d2NqTE5TRWItIHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXRoZW1lLWJ1dHRvbi1yb3VuZGVkLW9mZnNldCwgLTRweCk7XG59XG5cbi5fMXVpZm1LTlBEemR1NVlEbmhnd1BRSzpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5fMXVpZm1LTlBEemR1NVlEbmhnd1BRSzpkaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDAuMztcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5fMXVpZm1LTlBEemR1NVlEbmhnd1BRSzphY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOTUpO1xufVxuXG4uXzF1aWZtS05QRHpkdTVZRG5oZ3dQUUs6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1idXR0b24taG92ZXItYmFja2dyb3VuZC1jb2xvciwgI2RkZCk7XG59XG5cbi5fMXVpZm1LTlBEemR1NVlEbmhnd1BRSy5IVjBSLWxxd215ZXFzUzFaOHBvWlMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1idXR0b24tZm9yZWdyb3VuZC1jb2xvciwgIzBlMGUwZik7XG4gIGNvbG9yOiB2YXIoLS10aGVtZS1idXR0b24tYmFja2dyb3VuZC1jb2xvciwgI2ZmZik7XG59XG5cbi5fMXVpZm1LTlBEemR1NVlEbmhnd1BRSy5fMUxQcHQ3MEpqaW02U2ZaZTM1RzJrYiB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi5fMXVpZm1LTlBEemR1NVlEbmhnd1BRSy5Sa3pTckdpeE0yOEpNYXQ2SUI1THIge1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi5fMXVpZm1LTlBEemR1NVlEbmhnd1BRSy5fMUtkWGZZM1BrNnRFTllIODF0V3JwcyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiBub25lO1xufVxuIiwiLl8zendsbjh4cGtad3BUWTVpNko3Yk9EIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBjb250YWluOiBzdHJpY3Q7XG59XG5cbi5fM3p3bG44eHBrWndwVFk1aTZKN2JPRC5fMmVsOHhXcXFmM3c0UzN4MHMyRDl4bCB7XG4gIGNvbnRhaW46IGNvbnRlbnQ7XG59XG5cbi5FZzNpbWZiWGRJNlU2cmZSRTAtcU8ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBjb250YWluOiBjb250ZW50O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG59XG5cbi50MTg5N2RmdHNfcHFIelNud21XQlcge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnQxODk3ZGZ0c19wcUh6U253bVdCVy5fMS1SX0hEak82cU5ueXdjTmlTOGJ5RCB7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG59XG5cbi50MTg5N2RmdHNfcHFIelNud21XQlcuXzNtRHBDakhKMmc2NmUwdzRSMkVaa0cge1xuICBvYmplY3QtZml0OiBjb250YWluO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG59XG5cbi50MTg5N2RmdHNfcHFIelNud21XQlcuXzN5RXRIN2NxcFVsVkZhR2lXRzEyOXcge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4udDE4OTdkZnRzX3BxSHpTbndtV0JXLmx5aUJzNk9CeHZSRW53SVIwbHMyQyB7XG4gIGhlaWdodDogMTAwJTtcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgd2lkdGg6IGF1dG87XG59XG4iLCIuQ1BITmQ4b3NLakx2UURFUVVFcnV4IHtcbiAgZGlzcGxheTogZmxleDtcbiAgY29udGFpbjogY29udGVudDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWF4LWhlaWdodDogMTAwJTtcbn1cblxuLl8xZTdoSFNWbzU5ZTh5UW5oYzlCNklkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtbGlzdC12aWV3LWJhY2tncm91bmQtY29sb3IsICNmZmYpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tdGhlbWUtbGlzdC12aWV3LWJvcmRlci1jb2xvciwgI2RkZCk7XG4gIGNvbG9yOiB2YXIoLS10aGVtZS1saXN0LXZpZXctZm9yZWdyb3VuZC1jb2xvciwgIzBlMGUwZik7XG4gIGNvbnRhaW46IGNvbnRlbnQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiB2YXIoLS10aGVtZS1saXN0LXZpZXctaGVhZGVyLXBhZGRpbmcsIDEuMjVyZW0gMS41cmVtIDEuNzVyZW0gMS41cmVtKTtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5fMXcxVzhFNl9IemZlczNXWlRZWmFKSyB7XG4gIGNvbnRhaW46IGNvbnRlbnQ7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgcGFkZGluZzogMDtcbn1cbiIsIi5fMkxnanFBQndqSHRwYkd6a1FRa3FpUSB7XG4gIGNvbnRhaW46IGNvbnRlbnQ7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS10aGVtZS1zZXBhcmF0b3ItY29sb3IsICNkZGQpO1xufVxuXG4uXzJMZ2pxQUJ3akh0cGJHemtRUWtxaVE6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG4iLCIuXzJhaGk4SmNueEdIcm5abUQweFQ5Ukwge1xuICBjb250YWluOiBjb250ZW50O1xuICBib3gtc2hhZG93OiB2YXIoLS10aGVtZS1tZW51LXNoYWRvdywgMCAwIDE1cHggMCByZ2JhKDAsIDAsIDAsIDAuMTUpKTtcbiAgbWF4LWhlaWdodDogdmFyKC0tdGhlbWUtbWVudS1tYXgtaGVpZ2h0LCA1MHZoKTtcbiAgbWluLXdpZHRoOiB2YXIoLS10aGVtZS1tZW51LW1pbi13aWR0aCwgNXZ3KTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxO1xufVxuXG4uXzJhaGk4SmNueEdIcm5abUQweFQ5UkwgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG59XG5cbi5fMmFoaThKY254R0hyblptRDB4VDlSTC5fM2dwRlRkMUZkeDRFQWZxMTcwVEdzNy5fMUw1QVRwTTlHWHktU09SRnIwRzZTNCB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXRoZW1lLW1lbnUtbWFyZ2luLCAxcmVtKTtcbiAgYm90dG9tOiAxMDAlO1xuICByaWdodDogMDtcbn1cblxuLl8yYWhpOEpjbnhHSHJuWm1EMHhUOVJMLl8zZ3BGVGQxRmR4NEVBZnExNzBUR3M3LkNZRUpsMzlUa0VmbkthbDN2dHZ6OSB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXRoZW1lLW1lbnUtbWFyZ2luLCAxcmVtKTtcbiAgYm90dG9tOiAxMDAlO1xuICBsZWZ0OiAwO1xufVxuXG4uXzJhaGk4SmNueEdIcm5abUQweFQ5UkwuXzN6eXAtTmRUQmVCREt2azI2cHNadXAuXzFMNUFUcE05R1h5LVNPUkZyMEc2UzQge1xuICBtYXJnaW4tdG9wOiB2YXIoLS10aGVtZS1tZW51LW1hcmdpbiwgMXJlbSk7XG4gIHRvcDogMTAwJTtcbiAgcmlnaHQ6IDA7XG59XG5cbi5fMmFoaThKY254R0hyblptRDB4VDlSTC5fM3p5cC1OZFRCZUJES3ZrMjZwc1p1cC5DWUVKbDM5VGtFZm5LYWwzdnR2ejkge1xuICBtYXJnaW4tdG9wOiB2YXIoLS10aGVtZS1tZW51LW1hcmdpbiwgMXJlbSk7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMDtcbn1cblxuLl8yYWhpOEpjbnhHSHJuWm1EMHhUOVJMLl8xaWFhemlaclZJXy1FOEQ5OVdkTmppIHtcbiAgLXdlYmtpdC1hbmltYXRpb246IF8yZmlLZTQtWDhQcWNHNF85cWVCM1pPIDAuNXMgZWFzZS1pbi1vdXQgYm90aDtcbiAgYW5pbWF0aW9uOiBfMmZpS2U0LVg4UHFjRzRfOXFlQjNaTyAwLjVzIGVhc2UtaW4tb3V0IGJvdGg7XG59XG5cbi5fMTluazFJTU5TLXVfWUlRTGxtWVJ0VSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWxpc3Qtdmlldy1iYWNrZ3JvdW5kLWNvbG9yLCAjZmZmKTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLXRoZW1lLWxpc3Qtdmlldy1ib3JkZXItY29sb3IsICNkZGQpO1xuICBjb2xvcjogdmFyKC0tdGhlbWUtbGlzdC12aWV3LWZvcmVncm91bmQtY29sb3IsICMwZTBlMGYpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogdmFyKC0tdGhlbWUtbGlzdC12aWV3LWhlYWRlci1wYWRkaW5nLCAxLjI1cmVtIDEuNXJlbSAxLjc1cmVtIDEuNXJlbSk7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgXzJmaUtlNC1YOFBxY0c0XzlxZUIzWk8ge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC45KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBfMmZpS2U0LVg4UHFjRzRfOXFlQjNaTyB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuICA1MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45KTtcbiAgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuIiwiLl8yLVNGd3NwcEV1b2JCSmtBd3dRckZDIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4iLCIuXzNnR2N6Ukp3ck5lblhUQkxRbkMyOU0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1tZW51LWJhY2tncm91bmQtY29sb3IsICNmZmYpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tdGhlbWUtbWVudS1ib3JkZXItY29sb3IsICNkZGQpO1xuICBjb2xvcjogdmFyKC0tdGhlbWUtbWVudS1mb3JlZ3JvdW5kLWNvbG9yLCAjMGUwZTBmKTtcbiAgY29udGFpbjogY29udGVudDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmb250LWZhbWlseTogdmFyKC0tdGhlbWUtbWVudS1pdGVtLWZvbnQtZmFtaWx5LCBzYW5zLXNlcmlmKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLXRoZW1lLW1lbnUtaXRlbS1mb250LXdlaWdodCwgNTAwKTtcbiAgbWluLWhlaWdodDogdmFyKC0tdGhlbWUtbWVudS1pdGVtLWhlaWdodCwgNDFweCk7XG4gIHBhZGRpbmc6IHZhcigtLXRoZW1lLW1lbnUtaXRlbS1wYWRkaW5nLCAwIDEuNXJlbSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5fM2dHY3pSSndyTmVuWFRCTFFuQzI5TS5fMmoxaWxVTmtiRkdTZ3VsWFNvSEFkUCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLW1lbnUtZm9yZWdyb3VuZC1jb2xvciwgIzBlMGUwZik7XG4gIGNvbG9yOiB2YXIoLS10aGVtZS1tZW51LWJhY2tncm91bmQtY29sb3IsICNmZmYpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5fM2dHY3pSSndyTmVuWFRCTFFuQzI5TTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLW1lbnUtaG92ZXItYmFja2dyb3VuZC1jb2xvciwgI2RkZCk7XG59XG5cbi5fM2dHY3pSSndyTmVuWFRCTFFuQzI5TTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cbiIsIi5fMkR5MUxUZlNjR1p0U2JfNUx1ZC1sVSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLW1lbnUtYmFja2dyb3VuZC1jb2xvciwgI2ZmZik7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS10aGVtZS1tZW51LWJvcmRlci1jb2xvciwgI2RkZCk7XG4gIGNvbG9yOiB2YXIoLS10aGVtZS1tZW51LWZvcmVncm91bmQtY29sb3IsICMwZTBlMGYpO1xuICBjb250YWluOiBzdHJpY3Q7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZm9udC1mYW1pbHk6IHZhcigtLXRoZW1lLW1lbnUtaXRlbS1mb250LWZhbWlseSwgc2Fucy1zZXJpZik7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS10aGVtZS1tZW51LWl0ZW0tZm9udC13ZWlnaHQsIDUwMCk7XG4gIGhlaWdodDogdmFyKC0tdGhlbWUtbWVudS1pdGVtLWhlaWdodCwgNDFweCk7XG4gIHBhZGRpbmc6IHZhcigtLXRoZW1lLW1lbnUtaXRlbS1wYWRkaW5nLCAwIDEuNXJlbSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5fMkR5MUxUZlNjR1p0U2JfNUx1ZC1sVS5fMlV3czdiajN5ZWptbjFrN1hpeUtmUSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLW1lbnUtZm9yZWdyb3VuZC1jb2xvciwgIzBlMGUwZik7XG4gIGNvbG9yOiB2YXIoLS10aGVtZS1tZW51LWJhY2tncm91bmQtY29sb3IsICNmZmYpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5fMkR5MUxUZlNjR1p0U2JfNUx1ZC1sVTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLW1lbnUtaG92ZXItYmFja2dyb3VuZC1jb2xvciwgI2RkZCk7XG59XG5cbi5fMmxJN1MydDV6V2hRc3ZnX1huUTctLTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cbiIsIi5fMlFncHlyRGNVUXlLWUVTQzVEWFhKciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRhaW46IHN0cmljdDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcihcbiAgICAtLXRoZW1lLW92ZXJsYXktYmFja2dyb3VuZC1jb2xvcixcbiAgICByZ2JhKDI0MCwgMjQwLCAyNDAsIDAuNzUpXG4gICk7XG59XG5cbi5fMlFncHlyRGNVUXlLWUVTQzVEWFhKci5fMjhmVm1veHA2OU9Qcjg4RXcwelZlTiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uXzJRZ3B5ckRjVVF5S1lFU0M1RFhYSnIuXzJzVTM1MTVFYkZGZ2VQMXlLMlp1Ynoge1xuICBwb3NpdGlvbjogZml4ZWQ7XG59XG4iLCIuXzJ3ZnFPeldCb0FuX0s3Z29xdmpYSmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1pbnB1dC1iYWNrZ3JvdW5kLWNvbG9yLCAjZWRlZGVkKTtcbiAgYm9yZGVyOiBub25lO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjb250YWluOiBzdHJpY3Q7XG4gIGZvbnQtc2l6ZTogdmFyKFxuICAgIC0tdGhlbWUtdGV4dC1pbnB1dC1mb250LXNpemUtbWVkaXVtLFxuICAgIHZhcigtLXRoZW1lLWZvbnQtc2l6ZSwgMTVweClcbiAgKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLXRoZW1lLWlucHV0LWZvbnQtd2VpZ2h0LCA0MDApO1xuICBoZWlnaHQ6IHZhcigtLXRoZW1lLXRleHQtaW5wdXQtaGVpZ2h0LW1lZGl1bSwgNDFweCk7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHBhZGRpbmc6IDAgMWVtO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLl8yd2ZxT3pXQm9Bbl9LN2dvcXZqWEplLl8xYTRRT1ZKQjB6VzNVcmZfNWhxTmpqIHtcbiAgaGVpZ2h0OiB2YXIoLS10aGVtZS10ZXh0LWlucHV0LWhlaWdodC1zbWFsbCwgMzBweCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tdGhlbWUtdGV4dC1pbnB1dC1mb250LXNpemUtc21hbGwsIDAuNzVyZW0pO1xufVxuXG4uXzJ3ZnFPeldCb0FuX0s3Z29xdmpYSmUuXzNEUTUyUWRfMUs0X1Z4eFZ2NzI4U1gge1xuICBoZWlnaHQ6IHZhcigtLXRoZW1lLXRleHQtaW5wdXQtaGVpZ2h0LWxhcmdlLCA1NHB4KTtcbiAgZm9udC1zaXplOiB2YXIoLS10aGVtZS10ZXh0LWlucHV0LWZvbnQtc2l6ZS1zbWFsbCwgMS4yNXJlbSk7XG59XG5cbi5fMndmcU96V0JvQW5fSzdnb3F2alhKZTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWlucHV0LWJhY2tncm91bmQtY29sb3ItZm9jdXMsICNlM2UzZTMpO1xufVxuXG4uXzMxb0FBT0VfZHZHb0F6OXFKbW84RUcge1xuICBmb250LXNpemU6IHZhcigtLXRoZW1lLWlucHV0LWxhYmVsLWZvbnQtc2l6ZSwgMC43NXJlbSk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS10aGVtZS1pbnB1dC1sYWJlbC1mb250LWZhbWlseSwgc2Fucy1zZXJpZik7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMmVtO1xufVxuIiwiLl8zc0JzX0VSWFYzazBTUU1HVXkyV2o0IHtcbiAgLXdlYmtpdC1hbmltYXRpb246IF8xX3hqdExlVU1vRVhOQS1xT0VaaGN4IDAuNXMgZWFzZS1pbi1vdXQgYm90aDtcbiAgYW5pbWF0aW9uOiBfMV94anRMZVVNb0VYTkEtcU9FWmhjeCAwLjVzIGVhc2UtaW4tb3V0IGJvdGg7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLXRvYXN0LWJhY2tncm91bmQtY29sb3IsICNmZmYpO1xuICBib3gtc2hhZG93OiB2YXIoLS10aGVtZS10b2FzdC1zaGFkb3csIDAgMCAxNXB4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KSk7XG4gIGNvbnRhaW46IHN0cmljdDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IHZhcigtLXRoZW1lLXRvYXN0LWhlaWdodCwgNjBweCk7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbWluLXdpZHRoOiB2YXIoLS10aGVtZS10b2FzdC1taW4td2lkdGgsIDQwdncpO1xufVxuXG4uXzEwbEJFVENVM1VORlI4cHkxcTFxLWgge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAxO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmb250LXNpemU6IHZhcigtLXRoZW1lLXRvYXN0LWZvbnQtc2l6ZSwgMC43NXJlbSk7XG4gIHBhZGRpbmc6IHZhcigtLXRoZW1lLXRvYXN0LXBhZGRpbmcsIDEwcHggNjBweCAxMHB4IDI1cHgpO1xufVxuXG4uXzEwbEJFVENVM1VORlI4cHkxcTFxLWggaDEsXG5oMixcbmgzLFxuaDQge1xuICBmb250LXNpemU6IHZhcigtLXRoZW1lLXRvYXN0LWhlYWRpbmctZm9udC1zaXplLCAxLjI1cmVtKTtcbiAgbGluZS1oZWlnaHQ6IDEuMzVlbTtcbiAgbWFyZ2luOiAwO1xufVxuXG4uXzNDaTB3cE9iazZvcWY3ZHdrSHNGV28ge1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5GRVdEbkRzUC05QTlKSEcyMHFCUzUge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4uRkVXRG5Ec1AtOUE5SkhHMjBxQlM1ID4gKiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS10aGVtZS1idXR0b24tZ2FwLCA3cHgpO1xufVxuXG4uRkVXRG5Ec1AtOUE5SkhHMjBxQlM1ID4gKjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi1sZWZ0OiBub25lO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgXzFfeGp0TGVVTW9FWE5BLXFPRVpoY3gge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC45KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBfMV94anRMZVVNb0VYTkEtcU9FWmhjeCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuICA1MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45KTtcbiAgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuIiwiLl8zRjhjSlUxd21LbWJyamlkZy1PM3pwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIGJvdHRvbTogY2FsYyh2YXIoLS10aGVtZS1idXR0b24taGVpZ2h0LCAzMHB4KSAqIDEuNSk7XG4gIHotaW5kZXg6IDIwO1xufVxuXG4uXzNGOGNKVTF3bUttYnJqaWRnLU8zenAgPiAqIHtcbiAgbWFyZ2luOiB2YXIoLS10aGVtZS10b2FzdC1tYXJnaW4sIDVweCk7XG59XG4iLCIuXzJFUUJmcjV3OGgxeDFicS0yZnA2d1Qge1xuICBjb250YWluOiBzdHJpY3Q7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLl8yRVFCZnI1dzhoMXgxYnEtMmZwNndULl8zR1JNcG1Ha19QcUlUY1V2ME5mbXQzIHtcbiAgY29udGFpbjogY29udGVudDtcbn1cblxuLl8ydFpmWGtFaENrd0F6ZmFHX0JWbjBCIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5fMnRaZlhrRWhDa3dBemZhR19CVm4wQi5fM09ZSGZiemFMM1FIYW5XWkJqOFJ4TyB7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uXzJ0WmZYa0VoQ2t3QXpmYUdfQlZuMEIuXzNJX2M3c2hjU3J0R19GeHZ2VTJJZUUge1xuICBvYmplY3QtZml0OiBjb250YWluO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uXzJ0WmZYa0VoQ2t3QXpmYUdfQlZuMEIuXzFaN2RMOXVFZDBLc3gzQ2tyWmhzQjgge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLl8ydFpmWGtFaENrd0F6ZmFHX0JWbjBCLl8xemJyRFlPMGZZRkpWYzd4dnNUWWk2IHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uXzJvc1hkN1Nrd0YwTGgtMnlpcXVZUU0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG59XG4iXSwic291cmNlUm9vdCI6IiJ9*/
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@touchtech/baselayer-ui",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.5.0-beta.0",
|
|
4
4
|
"description": "React UI component library",
|
|
5
5
|
"main": "dist/bundle.js",
|
|
6
6
|
"scripts": {
|
|
@@ -31,12 +31,16 @@
|
|
|
31
31
|
"@babel/core": "^7.11.1",
|
|
32
32
|
"@babel/preset-env": "^7.11.0",
|
|
33
33
|
"@babel/preset-react": "^7.10.4",
|
|
34
|
+
"@babel/preset-typescript": "^7.10.4",
|
|
34
35
|
"@storybook/addon-centered": "^5.3.19",
|
|
35
36
|
"@storybook/addon-storysource": "^5.3.19",
|
|
36
37
|
"@storybook/react": "^5.3.19",
|
|
37
38
|
"@testing-library/jest-dom": "^5.11.2",
|
|
38
39
|
"@testing-library/react": "^10.4.8",
|
|
39
40
|
"@testing-library/react-hooks": "^3.4.1",
|
|
41
|
+
"@types/jest": "^26.0.9",
|
|
42
|
+
"@types/react": "^16.9.46",
|
|
43
|
+
"@types/react-dom": "^16.9.8",
|
|
40
44
|
"babel-jest": "^26.2.2",
|
|
41
45
|
"babel-loader": "^8.1.0",
|
|
42
46
|
"css-loader": "^3.6.0",
|
|
@@ -46,7 +50,7 @@
|
|
|
46
50
|
"eslint-plugin-react": "^7.20.5",
|
|
47
51
|
"eslint-plugin-react-hooks": "^4.0.8",
|
|
48
52
|
"identity-obj-proxy": "^3.0.0",
|
|
49
|
-
"jest": "^26.
|
|
53
|
+
"jest": "^26.3.0",
|
|
50
54
|
"mini-css-extract-plugin": "^0.9.0",
|
|
51
55
|
"npm-run-all": "^4.1.5",
|
|
52
56
|
"prettier": "^2.0.5",
|
|
@@ -58,6 +62,10 @@
|
|
|
58
62
|
"stylelint-config-prettier": "^8.0.2",
|
|
59
63
|
"stylelint-config-standard": "^20.0.0",
|
|
60
64
|
"stylelint-prettier": "^1.1.2",
|
|
65
|
+
"ts-jest": "^26.1.4",
|
|
66
|
+
"ts-loader": "^8.0.2",
|
|
67
|
+
"typescript": "^3.9.7",
|
|
68
|
+
"typescript-plugin-css-modules": "^2.4.0",
|
|
61
69
|
"webpack": "^4.44.1",
|
|
62
70
|
"webpack-cli": "^3.3.12"
|
|
63
71
|
},
|