UNPKG

aem-core-components-contributions-react-core

Version:
2 lines 25.4 kB
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.cqCoreComponents=t():e.cqCoreComponents=t()}("undefined"!=typeof self?self:this,(function(){return function(e){var t={};function r(n){if(t[n])return t[n].exports;var o=t[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,r),o.l=!0,o.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)r.d(n,o,function(t){return e[t]}.bind(null,o));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=19)}({0:function(e,t){e.exports=require("react")},1:function(e,t,r){"use strict";r.d(t,"a",(function(){return i}));var n=r(0),o=r.n(n);class s extends n.Component{render(){const e=(null!=this.props.componentTitle&&this.props.componentTitle.length>0?this.props.componentTitle+" - ":"")+(null!=this.props.emptyTextAppend?this.props.emptyTextAppend:s.DEFAULT_EMPTY_TEXT_LABEL);return this.renderPlaceHolder(e)}renderPlaceHolder(e){return o.a.createElement("div",{className:"cq-placeholder"+(null!=this.props.classAppend?" "+this.props.classAppend:"")},e)}}s.DEFAULT_EMPTY_TEXT_LABEL="Please configure the component";class i extends o.a.Component{constructor(e,t,r){super(e),this.baseCssCls=t,this.emptyPlaceHolderText=r}__hidePlaceHolder(){return this.props.hidePlaceHolder}__renderPlaceHolder(e,t){return o.a.createElement(s,{emptyTextAppend:t,componentTitle:e})}render(){const e=this.isEmpty();return o.a.createElement(o.a.Fragment,null,!e&&this.renderComponent(),e&&this.props.isInEditor&&!this.__hidePlaceHolder()&&this.__renderPlaceHolder(this.emptyPlaceHolderText))}}i.defaultProps={hidePlaceHolder:!1,isInEditor:!1}},19:function(e,t,r){e.exports=r(8)},8:function(e,t,r){"use strict";r.r(t),r.d(t,"TextV2IsEmptyFn",(function(){return i})),r.d(t,"TextV2",(function(){return l}));var n=r(0),o=r.n(n),s=r(1);function i(e){return null==e.text||0===e.text.length}class l extends s.a{constructor(e){super(e,"cmp-text","TextV2")}isEmpty(){return i(this.props)}renderRichText(){const e=this.props.text;return o.a.createElement("div",{className:this.baseCssCls,dangerouslySetInnerHTML:{__html:e}})}renderPlainText(){return o.a.createElement("div",{className:this.baseCssCls},o.a.createElement("p",{className:"cmp-text__paragraph"},this.props.text))}renderComponent(){return this.props.richText?this.renderRichText():this.renderPlainText()}}l.defaultProps={hidePlaceHolder:!1,isInEditor:!1,richText:!1}}})})); //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9jcUNvcmVDb21wb25lbnRzL3dlYnBhY2svdW5pdmVyc2FsTW9kdWxlRGVmaW5pdGlvbiIsIndlYnBhY2s6Ly9jcUNvcmVDb21wb25lbnRzL3dlYnBhY2svYm9vdHN0cmFwIiwid2VicGFjazovL2NxQ29yZUNvbXBvbmVudHMvZXh0ZXJuYWwgXCJyZWFjdFwiIiwid2VicGFjazovL2NxQ29yZUNvbXBvbmVudHMvLi9zcmMvY29tbW9uL3BsYWNlaG9sZGVyLnRzeCIsIndlYnBhY2s6Ly9jcUNvcmVDb21wb25lbnRzLy4vc3JjL0Fic3RyYWN0Q29yZUNvbXBvbmVudC50c3giLCJ3ZWJwYWNrOi8vY3FDb3JlQ29tcG9uZW50cy8uL3NyYy9hdXRob3JpbmcvdGV4dC92Mi9UZXh0VjIudHN4Il0sIm5hbWVzIjpbInJvb3QiLCJmYWN0b3J5IiwiZXhwb3J0cyIsIm1vZHVsZSIsImRlZmluZSIsImFtZCIsInNlbGYiLCJ0aGlzIiwiaW5zdGFsbGVkTW9kdWxlcyIsIl9fd2VicGFja19yZXF1aXJlX18iLCJtb2R1bGVJZCIsImkiLCJsIiwibW9kdWxlcyIsImNhbGwiLCJtIiwiYyIsImQiLCJuYW1lIiwiZ2V0dGVyIiwibyIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZW51bWVyYWJsZSIsImdldCIsInIiLCJTeW1ib2wiLCJ0b1N0cmluZ1RhZyIsInZhbHVlIiwidCIsIm1vZGUiLCJfX2VzTW9kdWxlIiwibnMiLCJjcmVhdGUiLCJrZXkiLCJiaW5kIiwibiIsIm9iamVjdCIsInByb3BlcnR5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJwIiwicyIsInJlcXVpcmUiLCJlbXB0eVRleHQiLCJwcm9wcyIsImNvbXBvbmVudFRpdGxlIiwibGVuZ3RoIiwiZW1wdHlUZXh0QXBwZW5kIiwiREVGQVVMVF9FTVBUWV9URVhUX0xBQkVMIiwicmVuZGVyUGxhY2VIb2xkZXIiLCJjcmVhdGVFbGVtZW50IiwiY2xhc3NOYW1lIiwiY2xhc3NBcHBlbmQiLCJDb21wb25lbnQiLCJiYXNlQ3NzQ2xzIiwiZW1wdHlQbGFjZUhvbGRlclRleHQiLCJzdXBlciIsImhpZGVQbGFjZUhvbGRlciIsInRpdGxlIiwiaXNFbXB0eSIsIkZyYWdtZW50IiwicmVuZGVyQ29tcG9uZW50IiwiaXNJbkVkaXRvciIsIl9faGlkZVBsYWNlSG9sZGVyIiwiX19yZW5kZXJQbGFjZUhvbGRlciIsImRlZmF1bHRQcm9wcyIsIlRleHRWMklzRW1wdHlGbiIsInRleHQiLCJUZXh0VjIiLCJkYW5nZXJvdXNseVNldElubmVySFRNTCIsIl9faHRtbCIsInJlbmRlclJpY2hUZXh0IiwicmVuZGVyUGxhaW5UZXh0IiwicmljaFRleHQiXSwibWFwcGluZ3MiOiJDQUFBLFNBQTJDQSxFQUFNQyxHQUMxQixpQkFBWkMsU0FBMEMsaUJBQVhDLE9BQ3hDQSxPQUFPRCxRQUFVRCxJQUNRLG1CQUFYRyxRQUF5QkEsT0FBT0MsSUFDOUNELE9BQU8sR0FBSUgsR0FDZSxpQkFBWkMsUUFDZEEsUUFBMEIsaUJBQUlELElBRTlCRCxFQUF1QixpQkFBSUMsSUFSN0IsQ0FTbUIsb0JBQVRLLEtBQXVCQSxLQUFPQyxNQUFNLFdBQzlDLE8sWUNURSxJQUFJQyxFQUFtQixHQUd2QixTQUFTQyxFQUFvQkMsR0FHNUIsR0FBR0YsRUFBaUJFLEdBQ25CLE9BQU9GLEVBQWlCRSxHQUFVUixRQUduQyxJQUFJQyxFQUFTSyxFQUFpQkUsR0FBWSxDQUN6Q0MsRUFBR0QsRUFDSEUsR0FBRyxFQUNIVixRQUFTLElBVVYsT0FOQVcsRUFBUUgsR0FBVUksS0FBS1gsRUFBT0QsUUFBU0MsRUFBUUEsRUFBT0QsUUFBU08sR0FHL0ROLEVBQU9TLEdBQUksRUFHSlQsRUFBT0QsUUEwRGYsT0FyREFPLEVBQW9CTSxFQUFJRixFQUd4QkosRUFBb0JPLEVBQUlSLEVBR3hCQyxFQUFvQlEsRUFBSSxTQUFTZixFQUFTZ0IsRUFBTUMsR0FDM0NWLEVBQW9CVyxFQUFFbEIsRUFBU2dCLElBQ2xDRyxPQUFPQyxlQUFlcEIsRUFBU2dCLEVB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S0FBS3NDLE9BRWhDLGlCQUNJLE1BQU11QixFQUFPN0QsS0FBS3NDLE1BQU11QixLQUN4QixPQUFRLElBQU1qQixjQUFjLE1BQU8sQ0FBRUMsVUFBVzdDLEtBQUtnRCxXQUFZZSx3QkFBeUIsQ0FBRUMsT0FBUUgsS0FFeEcsa0JBQ0ksT0FBUSxJQUFNakIsY0FBYyxNQUFPLENBQUVDLFVBQVc3QyxLQUFLZ0QsWUFDakQsSUFBTUosY0FBYyxJQUFLLENBQUVDLFVBQVcsdUJBQXlCN0MsS0FBS3NDLE1BQU11QixPQUVsRixrQkFDSSxPQUFRN0QsS0FBS3NDLE1BQWMsU0FBSXRDLEtBQUtpRSxpQkFBbUJqRSxLQUFLa0UsbUJBR3BFSixFQUFPSCxhQUFlLENBQ2xCUixpQkFBaUIsRUFDakJLLFlBQVksRUFDWlcsVUFBVSIsImZpbGUiOiJUZXh0VjIuanMiLCJzb3VyY2VzQ29udGVudCI6WyIoZnVuY3Rpb24gd2VicGFja1VuaXZlcnNhbE1vZHVsZURlZmluaXRpb24ocm9vdCwgZmFjdG9yeSkge1xuXHRpZih0eXBlb2YgZXhwb3J0cyA9PT0gJ29iamVjdCcgJiYgdHlwZW9mIG1vZHVsZSA9PT0gJ29iamVjdCcpXG5cdFx0bW9kdWxlLmV4cG9ydHMgPSBmYWN0b3J5KCk7XG5cdGVsc2UgaWYodHlwZW9mIGRlZmluZSA9PT0gJ2Z1bmN0aW9uJyAmJiBkZWZpbmUuYW1kKVxuXHRcdGRlZmluZShbXSwgZmFjdG9yeSk7XG5cdGVsc2UgaWYodHlwZW9mIGV4cG9ydHMgPT09ICdvYmplY3QnKVxuXHRcdGV4cG9ydHNbXCJjcUNvcmVDb21wb25lbnRzXCJdID0gZmFjdG9yeSgpO1xuXHRlbHNlXG5cdFx0cm9vdFtcImNxQ29yZUNvbXBvbmVudHNcIl0gPSBmYWN0b3J5KCk7XG59KSh0eXBlb2Ygc2VsZiAhPT0gJ3VuZGVmaW5lZCcgPyBzZWxmIDogdGhpcywgZnVuY3Rpb24oKSB7XG5yZXR1cm4gIiwiIFx0Ly8gVGhlIG1vZHVsZSBjYWNoZVxuIFx0dmFyIGluc3RhbGxlZE1vZHVsZXMgPSB7fTtcblxuIFx0Ly8gVGhlIHJlcXVpcmUgZnVuY3Rpb25cbiBcdGZ1bmN0aW9uIF9fd2VicGFja19yZXF1aXJlX18obW9kdWxlSWQpIHtcblxuIFx0XHQvLyBDaGVjayBpZiBtb2R1bGUgaXMgaW4gY2FjaGVcbiBcdFx0aWYoaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0pIHtcbiBcdFx0XHRyZXR1cm4gaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0uZXhwb3J0cztcbiBcdFx0fVxuIFx0XHQvLyBDcmVhdGUgYSBuZXcgbW9kdWxlIChhbmQgcHV0IGl0IGludG8gdGhlIGNhY2hlKVxuIFx0XHR2YXIgbW9kdWxlID0gaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0gPSB7XG4gXHRcdFx0aTogbW9kdWxlSWQsXG4gXHRcdFx0bDogZmFsc2UsXG4gXHRcdFx0ZXhwb3J0czoge31cbiBcdFx0fTtcblxuIFx0XHQvLyBFeGVjdXRlIHRoZSBtb2R1bGUgZnVuY3Rpb25cbiBcdFx0bW9kdWxlc1ttb2R1bGVJZF0uY2FsbChtb2R1bGUuZXhwb3J0cywgbW9kdWxlLCBtb2R1bGUuZXhwb3J0cywgX193ZWJwYWNrX3JlcXVpcmVfXyk7XG5cbiBcdFx0Ly8gRmxhZyB0aGUgbW9kdWxlIGFzIGxvYWRlZFxuIFx0XHRtb2R1bGUubCA9IHRydWU7XG5cbiBcdFx0Ly8gUmV0dXJuIHRoZSBleHBvcnRzIG9mIHRoZSBtb2R1bGVcbiBcdFx0cmV0dXJuIG1vZHVsZS5leHBvcnRzO1xuIFx0fVxuXG5cbiBcdC8vIGV4cG9zZSB0aGUgbW9kdWxlcyBvYmplY3QgKF9fd2VicGFja19tb2R1bGVzX18pXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLm0gPSBtb2R1bGVzO1xuXG4gXHQvLyBleHBvc2UgdGhlIG1vZHVsZSBjYWNoZVxuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5jID0gaW5zdGFsbGVkTW9kdWxlcztcblxuIFx0Ly8gZGVmaW5lIGdldHRlciBmdW5jdGlvbiBmb3IgaGFybW9ueSBleHBvcnRzXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLmQgPSBmdW5jdGlvbihleHBvcnRzLCBuYW1lLCBnZXR0ZXIpIHtcbiBcdFx0aWYoIV9fd2VicGFja19yZXF1aXJlX18ubyhleHBvcnRzLCBuYW1lKSkge1xuIFx0XHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBuYW1lLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZ2V0dGVyIH0pO1xuIFx0XHR9XG4gXHR9O1xuXG4gXHQvLyBkZWZpbmUgX19lc01vZHVsZSBvbiBleHBvcnRzXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLnIgPSBmdW5jdGlvbihleHBvcnRzKSB7XG4gXHRcdGlmKHR5cGVvZiBTeW1ib2wgIT09ICd1bmRlZmluZWQnICYmIFN5bWJvbC50b1N0cmluZ1RhZykge1xuIFx0XHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuIFx0XHR9XG4gXHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCAnX19lc01vZHVsZScsIHsgdmFsdWU6IHRydWUgfSk7XG4gXHR9O1xuXG4gXHQvLyBjcmVhdGUgYSBmYWtlIG5hbWVzcGFjZSBvYmplY3RcbiBcdC8vIG1vZGUgJiAxOiB2YWx1ZSBpcyBhIG1vZHVsZSBpZCwgcmVxdWlyZSBpdFxuIFx0Ly8gbW9kZSAmIDI6IG1lcmdlIGFsbCBwcm9wZXJ0aWVzIG9mIHZhbHVlIGludG8gdGhlIG5zXG4gXHQvLyBtb2RlICYgNDogcmV0dXJuIHZhbHVlIHdoZW4gYWxyZWFkeSBucyBvYmplY3RcbiBcdC8vIG1vZGUgJiA4fDE6IGJlaGF2ZSBsaWtlIHJlcXVpcmVcbiBcdF9fd2VicGFja19yZXF1aXJlX18udCA9IGZ1bmN0aW9uKHZhbHVlLCBtb2RlKSB7XG4gXHRcdGlmKG1vZGUgJiAxKSB2YWx1ZSA9IF9fd2VicGFja19yZXF1aXJlX18odmFsdWUpO1xuIFx0XHRpZihtb2RlICYgOCkgcmV0dXJuIHZhbHVlO1xuIFx0XHRpZigobW9kZSAmIDQpICYmIHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcgJiYgdmFsdWUgJiYgdmFsdWUuX19lc01vZHVsZSkgcmV0dXJuIHZhbHVlO1xuIFx0XHR2YXIgbnMgPSBPYmplY3QuY3JlYXRlKG51bGwpO1xuIFx0XHRfX3dlYnBhY2tfcmVxdWlyZV9fLnIobnMpO1xuIFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkobnMsICdkZWZhdWx0JywgeyBlbnVtZXJhYmxlOiB0cnVlLCB2YWx1ZTogdmFsdWUgfSk7XG4gXHRcdGlmKG1vZGUgJiAyICYmIHR5cGVvZiB2YWx1ZSAhPSAnc3RyaW5nJykgZm9yKHZhciBrZXkgaW4gdmFsdWUpIF9fd2VicGFja19yZXF1aXJlX18uZChucywga2V5LCBmdW5jdGlvbihrZXkpIHsgcmV0dXJuIHZhbHVlW2tleV07IH0uYmluZChudWxsLCBrZXkpKTtcbiBcdFx0cmV0dXJuIG5zO1xuIFx0fTtcblxuIFx0Ly8gZ2V0RGVmYXVsdEV4cG9ydCBmdW5jdGlvbiBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIG5vbi1oYXJtb255IG1vZHVsZXNcbiBcdF9fd2VicGFja19yZXF1aXJlX18ubiA9IGZ1bmN0aW9uKG1vZHVsZSkge1xuIFx0XHR2YXIgZ2V0dGVyID0gbW9kdWxlICYmIG1vZHVsZS5fX2VzTW9kdWxlID9cbiBcdFx0XHRmdW5jdGlvbiBnZXREZWZhdWx0KCkgeyByZXR1cm4gbW9kdWxlWydkZWZhdWx0J107IH0gOlxuIFx0XHRcdGZ1bmN0aW9uIGdldE1vZHVsZUV4cG9ydHMoKSB7IHJldHVybiBtb2R1bGU7IH07XG4gXHRcdF9fd2VicGFja19yZXF1aXJlX18uZChnZXR0ZXIsICdhJywgZ2V0dGVyKTtcbiBcdFx0cmV0dXJuIGdldHRlcjtcbiBcdH07XG5cbiBcdC8vIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbFxuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5vID0gZnVuY3Rpb24ob2JqZWN0LCBwcm9wZXJ0eSkgeyByZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iamVjdCwgcHJvcGVydHkpOyB9O1xuXG4gXHQvLyBfX3dlYnBhY2tfcHVibGljX3BhdGhfX1xuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5wID0gXCJcIjtcblxuXG4gXHQvLyBMb2FkIGVudHJ5IG1vZHVsZSBhbmQgcmV0dXJuIGV4cG9ydHNcbiBcdHJldHVybiBfX3dlYnBhY2tfcmVxdWlyZV9fKF9fd2VicGFja19yZXF1aXJlX18ucyA9IDE5KTtcbiIsIm1vZHVsZS5leHBvcnRzID0gcmVxdWlyZShcInJlYWN0XCIpOyIsIi8qXG4gKiAgQ29weXJpZ2h0IDIwMjAgQWRvYmVcbiAqXG4gKiAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqICB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiAgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiAgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqICBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqICBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiAgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbmltcG9ydCBSZWFjdCwgeyBDb21wb25lbnQgfSBmcm9tICdyZWFjdCc7XG5leHBvcnQgY2xhc3MgRWRpdG9yUGxhY2VIb2xkZXIgZXh0ZW5kcyBDb21wb25lbnQge1xuICAgIHJlbmRlcigpIHtcbiAgICAgICAgY29uc3QgcGFydDEgPSAodGhpcy5wcm9wcy5jb21wb25lbnRUaXRsZSAhPSBudWxsICYmIHRoaXMucHJvcHMuY29tcG9uZW50VGl0bGUubGVuZ3RoID4gMCkgPyB0aGlzLnByb3BzLmNvbXBvbmVudFRpdGxlICsgJyAtICcgOiAnJztcbiAgICAgICAgY29uc3QgcGFydDIgPSAodGhpcy5wcm9wcy5lbXB0eVRleHRBcHBlbmQgIT0gbnVsbCkgPyB0aGlzLnByb3BzLmVtcHR5VGV4dEFwcGVuZCA6IEVkaXRvclBsYWNlSG9sZGVyLkRFRkFVTFRfRU1QVFlfVEVYVF9MQUJFTDtcbiAgICAgICAgY29uc3QgZW1wdHlUZXh0ID0gcGFydDEgKyBwYXJ0MjtcbiAgICAgICAgcmV0dXJuICh0aGlzLnJlbmRlclBsYWNlSG9sZGVyKGVtcHR5VGV4dCkpO1xuICAgIH1cbiAgICByZW5kZXJQbGFjZUhvbGRlcihlbXB0eVRleHQpIHtcbiAgICAgICAgcmV0dXJuIFJlYWN0LmNyZWF0ZUVsZW1lbnQoXCJkaXZcIiwgeyBjbGFzc05hbWU6ICdjcS1wbGFjZWhvbGRlcicgKyAodGhpcy5wcm9wcy5jbGFzc0FwcGVuZCAhPSBudWxsID8gJyAnICsgdGhpcy5wcm9wcy5jbGFzc0FwcGVuZCA6ICcnKSB9LCBlbXB0eVRleHQpO1xuICAgIH1cbn1cbkVkaXRvclBsYWNlSG9sZGVyLkRFRkFVTFRfRU1QVFlfVEVYVF9MQUJFTCA9ICdQbGVhc2UgY29uZmlndXJlIHRoZSBjb21wb25lbnQnO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2Jhc2U2NCxleUoyWlhKemFXOXVJam96TENKbWFXeGxJam9pY0d4aFkyVm9iMnhrWlhJdWFuTWlMQ0p6YjNWeVkyVlNiMjkwSWpvaUlpd2ljMjkxY21ObGN5STZXeUp3YkdGalpXaHZiR1JsY2k1MGMzZ2lYU3dpYm1GdFpYTWlPbHRkTENKdFlYQndhVzVuY3lJNklrRkJRMEU3T3pzN096czdPenM3T3pzN08wZEJZMGM3UVVGRFNDeFBRVUZQTEV0QlFVc3NSVUZCUlN4RlFVRkRMRk5CUVZNc1JVRkJReXhOUVVGTkxFOUJRVThzUTBGQlF6dEJRVkYyUXl4TlFVRk5MRTlCUVU4c2FVSkJRV3RDTEZOQlFWRXNVMEZCWjBNN1NVRkpia1VzVFVGQlRUdFJRVU5HTEUxQlFVMHNTMEZCU3l4SFFVRlhMRU5CUVVNc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eGpRVUZqTEVsQlFVa3NTVUZCU1N4SlFVRkpMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zWTBGQll5eERRVUZETEUxQlFVMHNSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVVVzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4alFVRmpMRWRCUVVrc1MwRkJTeXhEUVVGRExFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTTdVVUZETjBrc1RVRkJUU3hMUVVGTExFZEJRVmNzUTBGQlF5eEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMR1ZCUVdVc1NVRkJTU3hKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVVXNTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhsUVVGbExFTkJRVU1zUTBGQlF5eERRVUZETEdsQ1FVRnBRaXhEUVVGRExIZENRVUYzUWl4RFFVRkRPMUZCUTNSSkxFMUJRVTBzVTBGQlV5eEhRVUZITEV0QlFVc3NSMEZCUnl4TFFVRkxMRU5CUVVNN1VVRkZhRU1zVDBGQlR5eERRVU5JTEVsQlFVa3NRMEZCUXl4cFFrRkJhVUlzUTBGQlF5eFRRVUZUTEVOQlFVTXNRMEZEY0VNc1EwRkJRVHRKUVVOTUxFTkJRVU03U1VGSFJDeHBRa0ZCYVVJc1EwRkJReXhUUVVGcFFqdFJRVU12UWl4UFFVRlBMRFpDUVVOSUxGTkJRVk1zUlVGQlJTeG5Ra0ZCWjBJc1IwRkJSeXhEUVVGRExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNWMEZCVnl4SlFVRkpMRWxCUVVrc1EwRkJRU3hEUVVGRExFTkJRVU1zUjBGQlJ5eEhRVUZITEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1YwRkJWeXhEUVVGRExFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNTVUZEYUVjc1UwRkJVeXhEUVVOU0xFTkJRVU03U1VGRFdDeERRVUZET3p0QlFXeENUU3d3UTBGQmQwSXNSMEZCVnl4blEwRkJaME1zUTBGQlF5SjkiLCIvKlxuICogIENvcHlyaWdodCAyMDIwIEFkb2JlXG4gKlxuICogIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiAgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqICBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiAgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiAgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5pbXBvcnQgUmVhY3QgZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgeyBFZGl0b3JQbGFjZUhvbGRlciB9IGZyb20gXCIuL2NvbW1vbi9wbGFjZWhvbGRlclwiO1xuLyoqXG4gKiBBYnN0cmFjdENvcmVDb21wb25lbnQgLSBwcm92aWRlcyBhYnN0cmFjdGlvbiBhbmQgaGVscGVyIG1ldGhvZHMgdG8gc2hvdyBhIHBsYWNlaG9sZGVyIGlmIHRoZSBjb21wb25lbnQgaXMgZW1wdHkgYW5kIGF1dGhvciBtb2RlIGlzIG9uLlxuICovXG5leHBvcnQgY2xhc3MgQWJzdHJhY3RDb3JlQ29tcG9uZW50IGV4dGVuZHMgUmVhY3QuQ29tcG9uZW50IHtcbiAgICAvKipcbiAgICAgKiBCYXNlIENvbnN0cnVjdG9yXG4gICAgICogQHBhcmFtIHByb3BzIGNvbXBvbmVudCBwcm9wZXJ0aWVzXG4gICAgICogQHBhcmFtIGJhc2VDc3NDbHMgdGhlIGJhc2UgQkVNIGNzcyBjbGFzcyB0byBiZSB1c2VkIGZvciB0aGUgY29tcG9uZW50XG4gICAgICogQHBhcmFtIGVtcHR5UGxhY2VIb2xkZXJUZXh0IGVtcHR5IHBsYWNlaG9sZGVyIGxhYmVsIGZvciB3aGVuIHRoZSBjb21wb25lbnQgbmVlZHMgdG8gYmUgY29uZmlndXJlZCBpbiBhdXRob3IgbW9kZVxuICAgICAqL1xuICAgIGNvbnN0cnVjdG9yKHByb3BzLCBiYXNlQ3NzQ2xzLCBlbXB0eVBsYWNlSG9sZGVyVGV4dCkge1xuICAgICAgICBzdXBlcihwcm9wcyk7XG4gICAgICAgIHRoaXMuYmFzZUNzc0NscyA9IGJhc2VDc3NDbHM7XG4gICAgICAgIHRoaXMuZW1wdHlQbGFjZUhvbGRlclRleHQgPSBlbXB0eVBsYWNlSG9sZGVyVGV4dDtcbiAgICB9XG4gICAgX19oaWRlUGxhY2VIb2xkZXIoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnByb3BzLmhpZGVQbGFjZUhvbGRlcjtcbiAgICB9XG4gICAgX19yZW5kZXJQbGFjZUhvbGRlcih0aXRsZSwgZW1wdHlUZXh0KSB7XG4gICAgICAgIHJldHVybiAoUmVhY3QuY3JlYXRlRWxlbWVudChFZGl0b3JQbGFjZUhvbGRlciwgeyBlbXB0eVRleHRBcHBlbmQ6IGVtcHR5VGV4dCwgY29tcG9uZW50VGl0bGU6IHRpdGxlIH0pKTtcbiAgICB9XG4gICAgcmVuZGVyKCkge1xuICAgICAgICBjb25zdCBpc0VtcHR5ID0gdGhpcy5pc0VtcHR5KCk7XG4gICAgICAgIHJldHVybiAoUmVhY3QuY3JlYXRlRWxlbWVudChSZWFjdC5GcmFnbWVudCwgbnVsbCxcbiAgICAgICAgICAgICFpc0VtcHR5ICYmXG4gICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJDb21wb25lbnQoKSxcbiAgICAgICAgICAgIChpc0VtcHR5ICYmIHRoaXMucHJvcHMuaXNJbkVkaXRvciAmJiAhdGhpcy5fX2hpZGVQbGFjZUhvbGRlcigpKSAmJiB0aGlzLl9fcmVuZGVyUGxhY2VIb2xkZXIodGhpcy5lbXB0eVBsYWNlSG9sZGVyVGV4dCkpKTtcbiAgICB9XG59XG5BYnN0cmFjdENvcmVDb21wb25lbnQuZGVmYXVsdFByb3BzID0ge1xuICAgIGhpZGVQbGFjZUhvbGRlcjogZmFsc2UsXG4gICAgaXNJbkVkaXRvcjogZmFsc2Vcbn07XG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LGV5SjJaWEp6YVc5dUlqb3pMQ0ptYVd4bElqb2lRV0p6ZEhKaFkzUkRiM0psUTI5dGNHOXVaVzUwTG1weklpd2ljMjkxY21ObFVtOXZkQ0k2SWlJc0luTnZkWEpqWlhNaU9sc2lRV0p6ZEhKaFkzUkRiM0psUTI5dGNHOXVaVzUwTG5SemVDSmRMQ0p1WVcxbGN5STZXMTBzSW0xaGNIQnBibWR6SWpvaVFVRkJRVHM3T3pzN096czdPenM3T3pzN1IwRmpSenRCUVVWSUxFOUJRVThzUzBGQlN5eE5RVUZOTEU5QlFVOHNRMEZCUXp0QlFVTXhRaXhQUVVGUExFVkJRVU1zYVVKQlFXbENMRVZCUVVNc1RVRkJUU3h6UWtGQmMwSXNRMEZCUXp0QlFWbDJSRHM3UjBGRlJ6dEJRVU5JTEUxQlFVMHNUMEZCWjBJc2NVSkJRVEJHTEZOQlFWRXNTMEZCU3l4RFFVRkRMRk5CUVhOQ08wbEJWV2hLT3pzN096dFBRVXRITzBsQlEwZ3NXVUZCYzBJc1MwRkJWeXhGUVVGRExGVkJRV2xDTEVWQlFVTXNiMEpCUVRKQ08xRkJRek5GTEV0QlFVc3NRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJRenRSUVVOaUxFbEJRVWtzUTBGQlF5eFZRVUZWTEVkQlFVY3NWVUZCVlN4RFFVRkRPMUZCUXpkQ0xFbEJRVWtzUTBGQlF5eHZRa0ZCYjBJc1IwRkJSeXh2UWtGQmIwSXNRMEZCUXp0SlFVTnlSQ3hEUVVGRE8wbEJXVThzYVVKQlFXbENPMUZCUTNKQ0xFOUJRVThzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4bFFVRmxMRU5CUVVNN1NVRkRkRU1zUTBGQlF6dEpRVVZQTEcxQ1FVRnRRaXhEUVVGRExFdEJRV0VzUlVGQlJTeFRRVUZwUWp0UlFVTjRSQ3hQUVVGTkxFTkJRMFlzYjBKQlFVTXNhVUpCUVdsQ0xFbEJRMlFzWlVGQlpTeEZRVUZGTEZOQlFWTXNSVUZETVVJc1kwRkJZeXhGUVVGRkxFdEJRVXNzUjBGRGRrSXNRMEZEVEN4RFFVRkJPMGxCUTB3c1EwRkJRenRKUVVWRUxFMUJRVTA3VVVGRFJpeE5RVUZOTEU5QlFVOHNSMEZCVnl4SlFVRkpMRU5CUVVNc1QwRkJUeXhGUVVGRkxFTkJRVU03VVVGRmRrTXNUMEZCVHl4RFFVTklPMWxCUTAwc1EwRkJReXhQUVVGUE8yZENRVU5PTEVsQlFVa3NRMEZCUXl4bFFVRmxMRVZCUVVVN1dVRkhkRUlzUTBGQlF5eFBRVUZQTEVsQlFVa3NTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhWUVVGVkxFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNhVUpCUVdsQ0xFVkJRVVVzUTBGQlF5eEpRVUZKTEVsQlFVa3NRMEZCUXl4dFFrRkJiVUlzUTBGQlF5eEpRVUZKTEVOQlFVTXNiMEpCUVc5Q0xFTkJRVU1zUTBGRk0wZ3NRMEZEVGl4RFFVRkJPMGxCUTB3c1EwRkJRenM3UVVGNFJHRXNhME5CUVZrc1IwRkJSenRKUVVONlFpeGxRVUZsTEVWQlFVVXNTMEZCU3p0SlFVTjBRaXhWUVVGVkxFVkJRVVVzUzBGQlN6dERRVU53UWl4RFFVRkRJbjA9IiwiLypcbiAqICBDb3B5cmlnaHQgMjAyMCBBZG9iZVxuICpcbiAqICBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqICBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqICBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiAgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqICBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IEFic3RyYWN0Q29yZUNvbXBvbmVudCB9IGZyb20gXCIuLi8uLi8uLi9BYnN0cmFjdENvcmVDb21wb25lbnRcIjtcbmV4cG9ydCBmdW5jdGlvbiBUZXh0VjJJc0VtcHR5Rm4ocHJvcHMpIHtcbiAgICByZXR1cm4gcHJvcHMudGV4dCA9PSBudWxsIHx8IHByb3BzLnRleHQubGVuZ3RoID09PSAwO1xufVxuZXhwb3J0IGNsYXNzIFRleHRWMiBleHRlbmRzIEFic3RyYWN0Q29yZUNvbXBvbmVudCB7XG4gICAgY29uc3RydWN0b3IocHJvcHMpIHtcbiAgICAgICAgc3VwZXIocHJvcHMsICdjbXAtdGV4dCcsICdUZXh0VjInKTtcbiAgICB9XG4gICAgaXNFbXB0eSgpIHtcbiAgICAgICAgcmV0dXJuIFRleHRWMklzRW1wdHlGbih0aGlzLnByb3BzKTtcbiAgICB9XG4gICAgcmVuZGVyUmljaFRleHQoKSB7XG4gICAgICAgIGNvbnN0IHRleHQgPSB0aGlzLnByb3BzLnRleHQ7XG4gICAgICAgIHJldHVybiAoUmVhY3QuY3JlYXRlRWxlbWVudChcImRpdlwiLCB7IGNsYXNzTmFtZTogdGhpcy5iYXNlQ3NzQ2xzLCBkYW5nZXJvdXNseVNldElubmVySFRNTDogeyBfX2h0bWw6IHRleHQgfSB9KSk7XG4gICAgfVxuICAgIHJlbmRlclBsYWluVGV4dCgpIHtcbiAgICAgICAgcmV0dXJuIChSZWFjdC5jcmVhdGVFbGVtZW50KFwiZGl2XCIsIHsgY2xhc3NOYW1lOiB0aGlzLmJhc2VDc3NDbHMgfSxcbiAgICAgICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoXCJwXCIsIHsgY2xhc3NOYW1lOiBcImNtcC10ZXh0X19wYXJhZ3JhcGhcIiB9LCB0aGlzLnByb3BzLnRleHQpKSk7XG4gICAgfVxuICAgIHJlbmRlckNvbXBvbmVudCgpIHtcbiAgICAgICAgcmV0dXJuICh0aGlzLnByb3BzLnJpY2hUZXh0KSA/IHRoaXMucmVuZGVyUmljaFRleHQoKSA6IHRoaXMucmVuZGVyUGxhaW5UZXh0KCk7XG4gICAgfVxufVxuVGV4dFYyLmRlZmF1bHRQcm9wcyA9IHtcbiAgICBoaWRlUGxhY2VIb2xkZXI6IGZhbHNlLFxuICAgIGlzSW5FZGl0b3I6IGZhbHNlLFxuICAgIHJpY2hUZXh0OiBmYWxzZVxufTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSm1hV3hsSWpvaVZHVjRkRll5TG1weklpd2ljMjkxY21ObFVtOXZkQ0k2SWlJc0luTnZkWEpqWlhNaU9sc2lWR1Y0ZEZZeUxuUnplQ0pkTENKdVlXMWxjeUk2VzEwc0ltMWhjSEJwYm1keklqb2lRVUZCUVRzN096czdPenM3T3pzN096czdSMEZqUnp0QlFVVklMRTlCUVU4c1MwRkJTeXhOUVVGTkxFOUJRVThzUTBGQlF6dEJRVU14UWl4UFFVRlBMRVZCUVVNc2NVSkJRWEZDTEVWQlFYbERMRTFCUVUwc1owTkJRV2RETEVOQlFVTTdRVUZQTjBjc1RVRkJUU3hWUVVGVkxHVkJRV1VzUTBGQlF5eExRVUZwUWp0SlFVTTNReXhQUVVGUExFdEJRVXNzUTBGQlF5eEpRVUZKTEVsQlFVa3NTVUZCU1N4SlFVRkpMRXRCUVVzc1EwRkJReXhKUVVGSkxFTkJRVU1zVFVGQlRTeExRVUZMTEVOQlFVTXNRMEZCUXp0QlFVTjZSQ3hEUVVGRE8wRkJSVVFzVFVGQlRTeFBRVUZQTEUxQlFXOUZMRk5CUVZFc2NVSkJRVzFETzBsQlVYaElMRmxCUVZrc1MwRkJXVHRSUVVOd1FpeExRVUZMTEVOQlFVTXNTMEZCU3l4RlFVRkZMRlZCUVZVc1JVRkJSU3hSUVVGUkxFTkJRVU1zUTBGQlF6dEpRVU4yUXl4RFFVRkRPMGxCUlVRc1QwRkJUenRSUVVOSUxFOUJRVThzWlVGQlpTeERRVUZETEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJRenRKUVVOMlF5eERRVUZETzBsQlJVUXNZMEZCWXp0UlFVTldMRTFCUVUwc1NVRkJTU3hIUVVGVkxFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNTVUZCWXl4RFFVRkRPMUZCUXpsRExFOUJRVThzUTBGRFNDdzJRa0ZCU3l4VFFVRlRMRVZCUVVVc1NVRkJTU3hEUVVGRExGVkJRVlVzUlVGQlJTeDFRa0ZCZFVJc1JVRkJSU3hGUVVGRExFMUJRVTBzUlVGQlJTeEpRVUZKTEVWQlFVTXNSMEZCVVN4RFFVTnVSaXhEUVVGQk8wbEJRMHdzUTBGQlF6dEpRVVZFTEdWQlFXVTdVVUZEV0N4UFFVRlBMRU5CUTBnc05rSkJRVXNzVTBGQlV5eEZRVUZGTEVsQlFVa3NRMEZCUXl4VlFVRlZPMWxCUXpOQ0xESkNRVUZITEZOQlFWTXNSVUZCUXl4eFFrRkJjVUlzU1VGQlJTeEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRWxCUVVrc1EwRkJTeXhEUVVOMFJDeERRVU5VTEVOQlFVRTdTVUZEVEN4RFFVRkRPMGxCUjBRc1pVRkJaVHRSUVVOWUxFOUJRVThzUTBGQlF5eEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRkZCUVZFc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eEpRVUZKTEVOQlFVTXNZMEZCWXl4RlFVRkZMRU5CUVVNc1EwRkJReXhEUVVGRExFbEJRVWtzUTBGQlF5eGxRVUZsTEVWQlFVVXNRMEZCUXp0SlFVTnNSaXhEUVVGRE96dEJRV2hEWVN4dFFrRkJXU3hIUVVGSE8wbEJRM3BDTEdWQlFXVXNSVUZCUlN4TFFVRkxPMGxCUTNSQ0xGVkJRVlVzUlVGQlJTeExRVUZMTzBsQlEycENMRkZCUVZFc1JVRkJSU3hMUVVGTE8wTkJRMnhDTEVOQlFVTWlmUT09Il0sInNvdXJjZVJvb3QiOiIifQ==