New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@formspark/formtrack

Package Overview
Dependencies
Maintainers
1
Versions
33
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@formspark/formtrack - npm Package Compare versions

Comparing version 0.1.10 to 0.1.11

4

dist/index.js
/*! For license information please see index.js.LICENSE.txt */
!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define("Formtrack",[],e):"object"==typeof exports?exports.Formtrack=e():t.Formtrack=e()}("undefined"!=typeof self?self:this,(function(){return(()=>{var t={607:(t,e,r)=>{"use strict";r(449);var n=function(t){var e=t.formElement,r=t.id,n=t.name,o=t.value,i=document.getElementById(r);if(!i){var a=document.createElement("input");a.setAttribute("type","hidden"),a.setAttribute("id",r),a.setAttribute("name",n),e.appendChild(a),i=a}i.setAttribute("value",o)};document&&document.addEventListener("submit",(function(t){try{var e=t.target;if(e){var r=e;if(void 0!==r.dataset.formtrack)for(var o=new URLSearchParams(window.location.search),i=["referrer","utm_campaign","utm_content","utm_medium","utm_source","utm_term"],a=0;a<i.length;a++){var c=i[a],u="formtrack_"+c,s=c,f=o.get(c);f&&n({formElement:r,id:u,name:s,value:f})}}}catch(t){console.error(t)}return!0}))},449:function(t,e,r){!function(t){"use strict";var e,r=function(){try{if(t.URLSearchParams&&"bar"===new t.URLSearchParams("foo=bar").get("foo"))return t.URLSearchParams}catch(t){}return null}(),n=r&&"a=1"===new r({a:1}).toString(),o=r&&"+"===new r("s=%2B").get("s"),i=!r||((e=new r).append("s"," &"),"s=+%26"===e.toString()),a=f.prototype,c=!(!t.Symbol||!t.Symbol.iterator);if(!(r&&n&&o&&i)){a.append=function(t,e){d(this.__URLSearchParams__,t,e)},a.delete=function(t){delete this.__URLSearchParams__[t]},a.get=function(t){var e=this.__URLSearchParams__;return this.has(t)?e[t][0]:null},a.getAll=function(t){var e=this.__URLSearchParams__;return this.has(t)?e[t].slice(0):[]},a.has=function(t){return y(this.__URLSearchParams__,t)},a.set=function(t,e){this.__URLSearchParams__[t]=[""+e]},a.toString=function(){var t,e,r,n,o=this.__URLSearchParams__,i=[];for(e in o)for(r=h(e),t=0,n=o[e];t<n.length;t++)i.push(r+"="+h(n[t]));return i.join("&")};var u=!!o&&r&&!n&&t.Proxy;Object.defineProperty(t,"URLSearchParams",{value:u?new Proxy(r,{construct:function(t,e){return new t(new f(e[0]).toString())}}):f});var s=t.URLSearchParams.prototype;s.polyfill=!0,s.forEach=s.forEach||function(t,e){var r=m(this.toString());Object.getOwnPropertyNames(r).forEach((function(n){r[n].forEach((function(r){t.call(e,r,n,this)}),this)}),this)},s.sort=s.sort||function(){var t,e,r,n=m(this.toString()),o=[];for(t in n)o.push(t);for(o.sort(),e=0;e<o.length;e++)this.delete(o[e]);for(e=0;e<o.length;e++){var i=o[e],a=n[i];for(r=0;r<a.length;r++)this.append(i,a[r])}},s.keys=s.keys||function(){var t=[];return this.forEach((function(e,r){t.push(r)})),p(t)},s.values=s.values||function(){var t=[];return this.forEach((function(e){t.push(e)})),p(t)},s.entries=s.entries||function(){var t=[];return this.forEach((function(e,r){t.push([r,e])})),p(t)},c&&(s[t.Symbol.iterator]=s[t.Symbol.iterator]||s.entries)}function f(t){((t=t||"")instanceof URLSearchParams||t instanceof f)&&(t=t.toString()),this.__URLSearchParams__=m(t)}function h(t){var e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(t).replace(/[!'\(\)~]|%20|%00/g,(function(t){return e[t]}))}function l(t){return t.replace(/[ +]/g,"%20").replace(/(%[a-f0-9]{2})+/gi,(function(t){return decodeURIComponent(t)}))}function p(e){var r={next:function(){var t=e.shift();return{done:void 0===t,value:t}}};return c&&(r[t.Symbol.iterator]=function(){return r}),r}function m(t){var e={};if("object"==typeof t)if(v(t))for(var r=0;r<t.length;r++){var n=t[r];if(!v(n)||2!==n.length)throw new TypeError("Failed to construct 'URLSearchParams': Sequence initializer must only contain pair elements");d(e,n[0],n[1])}else for(var o in t)t.hasOwnProperty(o)&&d(e,o,t[o]);else{0===t.indexOf("?")&&(t=t.slice(1));for(var i=t.split("&"),a=0;a<i.length;a++){var c=i[a],u=c.indexOf("=");-1<u?d(e,l(c.slice(0,u)),l(c.slice(u+1))):c&&d(e,l(c),"")}}return e}function d(t,e,r){var n="string"==typeof r?r:null!=r&&"function"==typeof r.toString?r.toString():JSON.stringify(r);y(t,e)?t[e].push(n):t[e]=[n]}function v(t){return!!t&&"[object Array]"===Object.prototype.toString.call(t)}function y(t,e){return Object.prototype.hasOwnProperty.call(t,e)}}(void 0!==r.g?r.g:"undefined"!=typeof window?window:this)}},e={};function r(n){if(e[n])return e[n].exports;var o=e[n]={exports:{}};return t[n].call(o.exports,o,o.exports,r),o.exports}return r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),r(607)})().default}));
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9Gb3JtdHJhY2svd2VicGFjay91bml2ZXJzYWxNb2R1bGVEZWZpbml0aW9uIiwid2VicGFjazovL0Zvcm10cmFjay8uL3NyYy9pbmRleC50cyIsIndlYnBhY2s6Ly9Gb3JtdHJhY2svLi9ub2RlX21vZHVsZXMvdXJsLXNlYXJjaC1wYXJhbXMtcG9seWZpbGwvaW5kZXguanMiLCJ3ZWJwYWNrOi8vRm9ybXRyYWNrL3dlYnBhY2svYm9vdHN0cmFwIiwid2VicGFjazovL0Zvcm10cmFjay93ZWJwYWNrL3N0YXJ0dXAiLCJ3ZWJwYWNrOi8vRm9ybXRyYWNrL3dlYnBhY2svcnVudGltZS9nbG9iYWwiXSwibmFtZXMiOlsicm9vdCIsImZhY3RvcnkiLCJleHBvcnRzIiwibW9kdWxlIiwiZGVmaW5lIiwiYW1kIiwic2VsZiIsInRoaXMiLCJhcHBlbmRPclVwZGF0ZUZvcm10cmFja0lucHV0IiwiZm9ybUVsZW1lbnQiLCJpZCIsIm5hbWUiLCJ2YWx1ZSIsImlucHV0IiwiZG9jdW1lbnQiLCJnZXRFbGVtZW50QnlJZCIsIm5ld0lucHV0IiwiY3JlYXRlRWxlbWVudCIsInNldEF0dHJpYnV0ZSIsImFwcGVuZENoaWxkIiwiYWRkRXZlbnRMaXN0ZW5lciIsImV2ZW50IiwiZm9ybUV2ZW50VGFyZ2V0IiwidGFyZ2V0IiwiZGF0YXNldCIsImZvcm10cmFjayIsInNlYXJjaFBhcmFtZXRlcnMiLCJVUkxTZWFyY2hQYXJhbXMiLCJ3aW5kb3ciLCJsb2NhdGlvbiIsInNlYXJjaCIsInN1cHBvcnRlZFBhcmFtZXRlck5hbWVzIiwiaSIsImxlbmd0aCIsInBhcmFtZXRlck5hbWUiLCJnZXQiLCJlIiwiY29uc29sZSIsImVycm9yIiwiYW1wZXJzYW5kVGVzdCIsIm5hdGl2ZVVSTFNlYXJjaFBhcmFtcyIsImlzU3VwcG9ydE9iamVjdENvbnN0cnVjdG9yIiwiYSIsInRvU3RyaW5nIiwiZGVjb2Rlc1BsdXNlc0NvcnJlY3RseSIsImVuY29kZXNBbXBlcnNhbmRzQ29ycmVjdGx5IiwiYXBwZW5kIiwicHJvdG90eXBlIiwiVVJMU2VhcmNoUGFyYW1zUG9seWZpbGwiLCJpdGVyYWJsZSIsIlN5bWJvbCIsIml0ZXJhdG9yIiwiYXBwZW5kVG8iLCJkaWN0IiwiaGFzIiwiZ2V0QWxsIiwic2xpY2UiLCJoYXNPd25Qcm9wZXJ0eSIsInNldCIsImtleSIsInF1ZXJ5IiwiZW5jb2RlIiwicHVzaCIsImpvaW4iLCJ1c2VQcm94eSIsIlByb3h5IiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJjb25zdHJ1Y3QiLCJhcmdzIiwiVVNQUHJvdG8iLCJwb2x5ZmlsbCIsImZvckVhY2giLCJjYWxsYmFjayIsInRoaXNBcmciLCJwYXJzZVRvRGljdCIsImdldE93blByb3BlcnR5TmFtZXMiLCJjYWxsIiwic29ydCIsImsiLCJqIiwia2V5cyIsInZhbHVlcyIsIml0ZW1zIiwiaXRlbSIsIm1ha2VJdGVyYXRvciIsImVudHJpZXMiLCJzdHIiLCJyZXBsYWNlIiwiZW5jb2RlVVJJQ29tcG9uZW50IiwibWF0Y2giLCJkZWNvZGUiLCJkZWNvZGVVUklDb21wb25lbnQiLCJhcnIiLCJuZXh0Iiwic2hpZnQiLCJkb25lIiwidW5kZWZpbmVkIiwiaXNBcnJheSIsIlR5cGVFcnJvciIsImluZGV4T2YiLCJwYWlycyIsInNwbGl0IiwiaW5kZXgiLCJ2YWwiLCJKU09OIiwic3RyaW5naWZ5Iiwib2JqIiwicHJvcCIsImciLCJfX3dlYnBhY2tfbW9kdWxlX2NhY2hlX18iLCJfX3dlYnBhY2tfcmVxdWlyZV9fIiwibW9kdWxlSWQiLCJfX3dlYnBhY2tfbW9kdWxlc19fIiwiZ2xvYmFsVGhpcyIsIkZ1bmN0aW9uIl0sIm1hcHBpbmdzIjoiO0NBQUEsU0FBMkNBLEVBQU1DLEdBQzFCLGlCQUFaQyxTQUEwQyxpQkFBWEMsT0FDeENBLE9BQU9ELFFBQVVELElBQ1EsbUJBQVhHLFFBQXlCQSxPQUFPQyxJQUM5Q0QsT0FBTyxZQUFhLEdBQUlILEdBQ0UsaUJBQVpDLFFBQ2RBLFFBQW1CLFVBQUlELElBRXZCRCxF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QUFtRSxtQkFBbkJBLEVBQU0rQixTQUEwQi9CLEVBQU0rQixXQUFhOEQsS0FBS0MsVUFBVTlGLEdBSWxINkMsRUFBZUosRUFBTTFDLEdBQ3JCMEMsRUFBSzFDLEdBQU1tRCxLQUFLMEMsR0FFaEJuRCxFQUFLMUMsR0FBUSxDQUFDNkYsR0FJdEIsU0FBU04sRUFBUU0sR0FDYixRQUFTQSxHQUFPLG1CQUFxQnRDLE9BQU9uQixVQUFVSixTQUFTa0MsS0FBSzJCLEdBR3hFLFNBQVMvQyxFQUFla0QsRUFBS0MsR0FDekIsT0FBTzFDLE9BQU9uQixVQUFVVSxlQUFlb0IsS0FBSzhCLEVBQUtDLElBalZ6RCxNQW9WcUIsSUFBWCxFQUFBQyxFQUF5QixFQUFBQSxFQUE0QixvQkFBWGpGLE9BQXlCQSxPQUFTckIsUUMzVmxGdUcsRUFBMkIsR0FHL0IsU0FBU0MsRUFBb0JDLEdBRTVCLEdBQUdGLEVBQXlCRSxHQUMzQixPQUFPRixFQUF5QkUsR0FBVTlHLFFBRzNDLElBQUlDLEVBQVMyRyxFQUF5QkUsR0FBWSxDQUdqRDlHLFFBQVMsSUFPVixPQUhBK0csRUFBb0JELEdBQVVuQyxLQUFLMUUsRUFBT0QsUUFBU0MsRUFBUUEsRUFBT0QsUUFBUzZHLEdBR3BFNUcsRUFBT0QsUUNqQmYsT0NIQTZHLEVBQW9CRixFQUFJLFdBQ3ZCLEdBQTBCLGlCQUFmSyxXQUF5QixPQUFPQSxXQUMzQyxJQUNDLE9BQU8zRyxNQUFRLElBQUk0RyxTQUFTLGNBQWIsR0FDZCxNQUFPL0UsR0FDUixHQUFzQixpQkFBWFIsT0FBcUIsT0FBT0EsUUFMakIsR0RHakJtRixFQUFvQixNIiwiZmlsZSI6ImluZGV4LmpzIiwic291cmNlc0NvbnRlbnQiOlsiKGZ1bmN0aW9uIHdlYnBhY2tVbml2ZXJzYWxNb2R1bGVEZWZpbml0aW9uKHJvb3QsIGZhY3RvcnkpIHtcblx0aWYodHlwZW9mIGV4cG9ydHMgPT09ICdvYmplY3QnICYmIHR5cGVvZiBtb2R1bGUgPT09ICdvYmplY3QnKVxuXHRcdG1vZHVsZS5leHBvcnRzID0gZmFjdG9yeSgpO1xuXHRlbHNlIGlmKHR5cGVvZiBkZWZpbmUgPT09ICdmdW5jdGlvbicgJiYgZGVmaW5lLmFtZClcblx0XHRkZWZpbmUoXCJGb3JtdHJhY2tcIiwgW10sIGZhY3RvcnkpO1xuXHRlbHNlIGlmKHR5cGVvZiBleHBvcnRzID09PSAnb2JqZWN0Jylcblx0XHRleHBvcnRzW1wiRm9ybXRyYWNrXCJdID0gZmFjdG9yeSgpO1xuXHRlbHNlXG5cdFx0cm9vdFtcIkZvcm10cmFja1wiXSA9IGZhY3RvcnkoKTtcbn0pKHR5cGVvZiBzZWxmICE9PSAndW5kZWZpbmVkJyA/IHNlbGYgOiB0aGlzLCBmdW5jdGlvbigpIHtcbnJldHVybiAiLCJpbXBvcnQgXCJ1cmwtc2VhcmNoLXBhcmFtcy1wb2x5ZmlsbFwiO1xuXG5jb25zdCBhcHBlbmRPclVwZGF0ZUZvcm10cmFja0lucHV0ID0gKHtcbiAgZm9ybUVsZW1lbnQsXG4gIGlkLFxuICBuYW1lLFxuICB2YWx1ZSxcbn06IHtcbiAgZm9ybUVsZW1lbnQ6IEhUTUxFbGVtZW50O1xuICBpZDogc3RyaW5nO1xuICBuYW1lOiBzdHJpbmc7XG4gIHZhbHVlOiBzdHJpbmc7XG59KSA9PiB7XG4gIGxldCBpbnB1dCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGlkKTtcbiAgaWYgKCFpbnB1dCkge1xuICAgIGNvbnN0IG5ld0lucHV0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcImlucHV0XCIpO1xuICAgIG5ld0lucHV0LnNldEF0dHJpYnV0ZShcInR5cGVcIiwgXCJoaWRkZW5cIik7XG4gICAgbmV3SW5wdXQuc2V0QXR0cmlidXRlKFwiaWRcIiwgaWQpO1xuICAgIG5ld0lucHV0LnNldEF0dHJpYnV0ZShcIm5hbWVcIiwgbmFtZSk7XG4gICAgZm9ybUVsZW1lbnQuYXBwZW5kQ2hpbGQobmV3SW5wdXQpO1xuICAgIGlucHV0ID0gbmV3SW5wdXQ7XG4gIH1cbiAgaW5wdXQuc2V0QXR0cmlidXRlKFwidmFsdWVcIiwgdmFsdWUpO1xufTtcblxuY29uc3QgYWRkU3VibWl0TGlzdGVuZXIgPSAoKSA9PiB7XG4gIGlmIChkb2N1bWVudCkge1xuICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoXCJzdWJtaXRcIiwgKGV2ZW50KSA9PiB7XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCBmb3JtRXZlbnRUYXJnZXQgPSBldmVudC50YXJnZXQ7XG4gICAgICAgIGlmIChmb3JtRXZlbnRUYXJnZXQpIHtcbiAgICAgICAgICBjb25zdCBmb3JtRWxlbWVudCA9IGZvcm1FdmVudFRhcmdldCBhcyBIVE1MRWxlbWVudDtcbiAgICAgICAgICBjb25zdCBzaG91bGRUcmFjayA9XG4gICAgICAgICAgICB0eXBlb2YgZm9ybUVsZW1lbnQuZGF0YXNldC5mb3JtdHJhY2sgIT09IFwidW5kZWZpbmVkXCI7XG4gICAgICAgICAgaWYgKHNob3VsZFRyYWNrKSB7XG4gICAgICAgICAgICBjb25zdCBzZWFyY2hQYXJhbWV0ZXJzID0gbmV3IFVSTFNlYXJjaFBhcmFtcyhcbiAgICAgICAgICAgICAgd2luZG93LmxvY2F0aW9uLnNlYXJjaFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIGNvbnN0IHN1cHBvcnRlZFBhcmFtZXRlck5hbWVzID0gW1xuICAgICAgICAgICAgICBcInJlZmVycmVyXCIsXG4gICAgICAgICAgICAgIFwidXRtX2NhbXBhaWduXCIsXG4gICAgICAgICAgICAgIFwidXRtX2NvbnRlbnRcIixcbiAgICAgICAgICAgICAgXCJ1dG1fbWVkaXVtXCIsXG4gICAgICAgICAgICAgIFwidXRtX3NvdXJjZVwiLFxuICAgICAgICAgICAgICBcInV0bV90ZXJtXCIsXG4gICAgICAgICAgICBdO1xuICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzdXBwb3J0ZWRQYXJhbWV0ZXJOYW1lcy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgICBjb25zdCBwYXJhbWV0ZXJOYW1lID0gc3VwcG9ydGVkUGFyYW1ldGVyTmFtZXNbaV07XG4gICAgICAgICAgICAgIGNvbnN0IGlkID0gYGZvcm10cmFja18ke3BhcmFtZXRlck5hbWV9YDtcbiAgICAgICAgICAgICAgY29uc3QgbmFtZSA9IHBhcmFtZXRlck5hbWU7XG4gICAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gc2VhcmNoUGFyYW1ldGVycy5nZXQocGFyYW1ldGVyTmFtZSk7XG4gICAgICAgICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgICAgICAgIGFwcGVuZE9yVXBkYXRlRm9ybXRyYWNrSW5wdXQoe1xuICAgICAgICAgICAgICAgICAgZm9ybUVsZW1lbnQsXG4gICAgICAgICAgICAgICAgICBpZCxcbiAgICAgICAgICAgICAgICAgIG5hbWUsXG4gICAgICAgICAgICAgICAgICB2YWx1ZSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICBjb25zb2xlLmVycm9yKGUpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfSk7XG4gIH1cbn07XG5cbmFkZFN1Ym1pdExpc3RlbmVyKCk7XG4iLCIvKipcbiAqXG4gKlxuICogQGF1dGhvciBKZXJyeSBCZW5keSA8amVycnlAaWNld2luZ2NjLmNvbT5cbiAqIEBsaWNlbmNlIE1JVFxuICpcbiAqL1xuXG4oZnVuY3Rpb24oc2VsZikge1xuICAgICd1c2Ugc3RyaWN0JztcblxuICAgIHZhciBuYXRpdmVVUkxTZWFyY2hQYXJhbXMgPSAoZnVuY3Rpb24oKSB7XG4gICAgICAgICAgICAvLyAjNDEgRml4IGlzc3VlIGluIFJOXG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGlmIChzZWxmLlVSTFNlYXJjaFBhcmFtcyAmJiAobmV3IHNlbGYuVVJMU2VhcmNoUGFyYW1zKCdmb289YmFyJykpLmdldCgnZm9vJykgPT09ICdiYXInKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBzZWxmLlVSTFNlYXJjaFBhcmFtcztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGNhdGNoIChlKSB7fVxuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH0pKCksXG4gICAgICAgIGlzU3VwcG9ydE9iamVjdENvbnN0cnVjdG9yID0gbmF0aXZlVVJMU2VhcmNoUGFyYW1zICYmIChuZXcgbmF0aXZlVVJMU2VhcmNoUGFyYW1zKHthOiAxfSkpLnRvU3RyaW5nKCkgPT09ICdhPTEnLFxuICAgICAgICAvLyBUaGVyZSBpcyBhIGJ1ZyBpbiBzYWZhcmkgMTAuMSAoYW5kIGVhcmxpZXIpIHRoYXQgaW5jb3JyZWN0bHkgZGVjb2RlcyBgJTJCYCBhcyBhbiBlbXB0eSBzcGFjZSBhbmQgbm90IGEgcGx1cy5cbiAgICAgICAgZGVjb2Rlc1BsdXNlc0NvcnJlY3RseSA9IG5hdGl2ZVVSTFNlYXJjaFBhcmFtcyAmJiAobmV3IG5hdGl2ZVVSTFNlYXJjaFBhcmFtcygncz0lMkInKS5nZXQoJ3MnKSA9PT0gJysnKSxcbiAgICAgICAgX19VUkxTZWFyY2hQYXJhbXNfXyA9IFwiX19VUkxTZWFyY2hQYXJhbXNfX1wiLFxuICAgICAgICAvLyBGaXggYnVnIGluIEVkZ2Ugd2hpY2ggY2Fubm90IGVuY29kZSAnICYnIGNvcnJlY3RseVxuICAgICAgICBlbmNvZGVzQW1wZXJzYW5kc0NvcnJlY3RseSA9IG5hdGl2ZVVSTFNlYXJjaFBhcmFtcyA/IChmdW5jdGlvbigpIHtcbiAgICAgICAgICAgIHZhciBhbXBlcnNhbmRUZXN0ID0gbmV3IG5hdGl2ZVVSTFNlYXJjaFBhcmFtcygpO1xuICAgICAgICAgICAgYW1wZXJzYW5kVGVzdC5hcHBlbmQoJ3MnLCAnICYnKTtcbiAgICAgICAgICAgIHJldHVybiBhbXBlcnNhbmRUZXN0LnRvU3RyaW5nKCkgPT09ICdzPSslMjYnO1xuICAgICAgICB9KSgpIDogdHJ1ZSxcbiAgICAgICAgcHJvdG90eXBlID0gVVJMU2VhcmNoUGFyYW1zUG9seWZpbGwucHJvdG90eXBlLFxuICAgICAgICBpdGVyYWJsZSA9ICEhKHNlbGYuU3ltYm9sICYmIHNlbGYuU3ltYm9sLml0ZXJhdG9yKTtcblxuICAgIGlmIChuYXRpdmVVUkxTZWFyY2hQYXJhbXMgJiYgaXNTdXBwb3J0T2JqZWN0Q29uc3RydWN0b3IgJiYgZGVjb2Rlc1BsdXNlc0NvcnJlY3RseSAmJiBlbmNvZGVzQW1wZXJzYW5kc0NvcnJlY3RseSkge1xuICAgICAgICByZXR1cm47XG4gICAgfVxuXG5cbiAgICAvKipcbiAgICAgKiBNYWtlIGEgVVJMU2VhcmNoUGFyYW1zIGluc3RhbmNlXG4gICAgICpcbiAgICAgKiBAcGFyYW0ge29iamVjdHxzdHJpbmd8VVJMU2VhcmNoUGFyYW1zfSBzZWFyY2hcbiAgICAgKiBAY29uc3RydWN0b3JcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBVUkxTZWFyY2hQYXJhbXNQb2x5ZmlsbChzZWFyY2gpIHtcbiAgICAgICAgc2VhcmNoID0gc2VhcmNoIHx8IFwiXCI7XG5cbiAgICAgICAgLy8gc3VwcG9ydCBjb25zdHJ1Y3Qgb2JqZWN0IHdpdGggYW5vdGhlciBVUkxTZWFyY2hQYXJhbXMgaW5zdGFuY2VcbiAgICAgICAgaWYgKHNlYXJjaCBpbnN0YW5jZW9mIFVSTFNlYXJjaFBhcmFtcyB8fCBzZWFyY2ggaW5zdGFuY2VvZiBVUkxTZWFyY2hQYXJhbXNQb2x5ZmlsbCkge1xuICAgICAgICAgICAgc2VhcmNoID0gc2VhcmNoLnRvU3RyaW5nKCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcyBbX19VUkxTZWFyY2hQYXJhbXNfX10gPSBwYXJzZVRvRGljdChzZWFyY2gpO1xuICAgIH1cblxuXG4gICAgLyoqXG4gICAgICogQXBwZW5kcyBhIHNwZWNpZmllZCBrZXkvdmFsdWUgcGFpciBhcyBhIG5ldyBzZWFyY2ggcGFyYW1ldGVyLlxuICAgICAqXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IG5hbWVcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gdmFsdWVcbiAgICAgKi9cbiAgICBwcm90b3R5cGUuYXBwZW5kID0gZnVuY3Rpb24obmFtZSwgdmFsdWUpIHtcbiAgICAgICAgYXBwZW5kVG8odGhpcyBbX19VUkxTZWFyY2hQYXJhbXNfX10sIG5hbWUsIHZhbHVlKTtcbiAgICB9O1xuXG4gICAgLyoqXG4gICAgICogRGVsZXRlcyB0aGUgZ2l2ZW4gc2VhcmNoIHBhcmFtZXRlciwgYW5kIGl0cyBhc3NvY2lhdGVkIHZhbHVlLFxuICAgICAqIGZyb20gdGhlIGxpc3Qgb2YgYWxsIHNlYXJjaCBwYXJhbWV0ZXJzLlxuICAgICAqXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IG5hbWVcbiAgICAgKi9cbiAgICBwcm90b3R5cGVbJ2RlbGV0ZSddID0gZnVuY3Rpb24obmFtZSkge1xuICAgICAgICBkZWxldGUgdGhpcyBbX19VUkxTZWFyY2hQYXJhbXNfX10gW25hbWVdO1xuICAgIH07XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRoZSBmaXJzdCB2YWx1ZSBhc3NvY2lhdGVkIHRvIHRoZSBnaXZlbiBzZWFyY2ggcGFyYW1ldGVyLlxuICAgICAqXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IG5hbWVcbiAgICAgKiBAcmV0dXJucyB7c3RyaW5nfG51bGx9XG4gICAgICovXG4gICAgcHJvdG90eXBlLmdldCA9IGZ1bmN0aW9uKG5hbWUpIHtcbiAgICAgICAgdmFyIGRpY3QgPSB0aGlzIFtfX1VSTFNlYXJjaFBhcmFtc19fXTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaGFzKG5hbWUpID8gZGljdFtuYW1lXVswXSA6IG51bGw7XG4gICAgfTtcblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgYWxsIHRoZSB2YWx1ZXMgYXNzb2NpYXRpb24gd2l0aCBhIGdpdmVuIHNlYXJjaCBwYXJhbWV0ZXIuXG4gICAgICpcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gbmFtZVxuICAgICAqIEByZXR1cm5zIHtBcnJheX1cbiAgICAgKi9cbiAgICBwcm90b3R5cGUuZ2V0QWxsID0gZnVuY3Rpb24obmFtZSkge1xuICAgICAgICB2YXIgZGljdCA9IHRoaXMgW19fVVJMU2VhcmNoUGFyYW1zX19dO1xuICAgICAgICByZXR1cm4gdGhpcy5oYXMobmFtZSkgPyBkaWN0IFtuYW1lXS5zbGljZSgwKSA6IFtdO1xuICAgIH07XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIGEgQm9vbGVhbiBpbmRpY2F0aW5nIGlmIHN1Y2ggYSBzZWFyY2ggcGFyYW1ldGVyIGV4aXN0cy5cbiAgICAgKlxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBuYW1lXG4gICAgICogQHJldHVybnMge2Jvb2xlYW59XG4gICAgICovXG4gICAgcHJvdG90eXBlLmhhcyA9IGZ1bmN0aW9uKG5hbWUpIHtcbiAgICAgICAgcmV0dXJuIGhhc093blByb3BlcnR5KHRoaXMgW19fVVJMU2VhcmNoUGFyYW1zX19dLCBuYW1lKTtcbiAgICB9O1xuXG4gICAgLyoqXG4gICAgICogU2V0cyB0aGUgdmFsdWUgYXNzb2NpYXRlZCB0byBhIGdpdmVuIHNlYXJjaCBwYXJhbWV0ZXIgdG9cbiAgICAgKiB0aGUgZ2l2ZW4gdmFsdWUuIElmIHRoZXJlIHdlcmUgc2V2ZXJhbCB2YWx1ZXMsIGRlbGV0ZSB0aGVcbiAgICAgKiBvdGhlcnMuXG4gICAgICpcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gbmFtZVxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSB2YWx1ZVxuICAgICAqL1xuICAgIHByb3RvdHlwZS5zZXQgPSBmdW5jdGlvbiBzZXQobmFtZSwgdmFsdWUpIHtcbiAgICAgICAgdGhpcyBbX19VUkxTZWFyY2hQYXJhbXNfX11bbmFtZV0gPSBbJycgKyB2YWx1ZV07XG4gICAgfTtcblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgYSBzdHJpbmcgY29udGFpbmcgYSBxdWVyeSBzdHJpbmcgc3VpdGFibGUgZm9yIHVzZSBpbiBhIFVSTC5cbiAgICAgKlxuICAgICAqIEByZXR1cm5zIHtzdHJpbmd9XG4gICAgICovXG4gICAgcHJvdG90eXBlLnRvU3RyaW5nID0gZnVuY3Rpb24oKSB7XG4gICAgICAgIHZhciBkaWN0ID0gdGhpc1tfX1VSTFNlYXJjaFBhcmFtc19fXSwgcXVlcnkgPSBbXSwgaSwga2V5LCBuYW1lLCB2YWx1ZTtcbiAgICAgICAgZm9yIChrZXkgaW4gZGljdCkge1xuICAgICAgICAgICAgbmFtZSA9IGVuY29kZShrZXkpO1xuICAgICAgICAgICAgZm9yIChpID0gMCwgdmFsdWUgPSBkaWN0W2tleV07IGkgPCB2YWx1ZS5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgICAgIHF1ZXJ5LnB1c2gobmFtZSArICc9JyArIGVuY29kZSh2YWx1ZVtpXSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBxdWVyeS5qb2luKCcmJyk7XG4gICAgfTtcblxuICAgIC8vIFRoZXJlIGlzIGEgYnVnIGluIFNhZmFyaSAxMC4xIGFuZCBgUHJveHlgaW5nIGl0IGlzIG5vdCBlbm91Z2guXG4gICAgdmFyIGZvclN1cmVVc2VQb2x5ZmlsbCA9ICFkZWNvZGVzUGx1c2VzQ29ycmVjdGx5O1xuICAgIHZhciB1c2VQcm94eSA9ICghZm9yU3VyZVVzZVBvbHlmaWxsICYmIG5hdGl2ZVVSTFNlYXJjaFBhcmFtcyAmJiAhaXNTdXBwb3J0T2JqZWN0Q29uc3RydWN0b3IgJiYgc2VsZi5Qcm94eSk7XG4gICAgLypcbiAgICAgKiBBcHBseSBwb2xpZmlsbCB0byBnbG9iYWwgb2JqZWN0IGFuZCBhcHBlbmQgb3RoZXIgcHJvdG90eXBlIGludG8gaXRcbiAgICAgKi9cbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoc2VsZiwgJ1VSTFNlYXJjaFBhcmFtcycsIHtcbiAgICAgICAgdmFsdWU6ICh1c2VQcm94eSA/XG4gICAgICAgICAgICAvLyBTYWZhcmkgMTAuMCBkb2Vzbid0IHN1cHBvcnQgUHJveHksIHNvIGl0IHdvbid0IGV4dGVuZCBVUkxTZWFyY2hQYXJhbXMgb24gc2FmYXJpIDEwLjBcbiAgICAgICAgICAgIG5ldyBQcm94eShuYXRpdmVVUkxTZWFyY2hQYXJhbXMsIHtcbiAgICAgICAgICAgICAgICBjb25zdHJ1Y3Q6IGZ1bmN0aW9uKHRhcmdldCwgYXJncykge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gbmV3IHRhcmdldCgobmV3IFVSTFNlYXJjaFBhcmFtc1BvbHlmaWxsKGFyZ3NbMF0pLnRvU3RyaW5nKCkpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KSA6XG4gICAgICAgICAgICBVUkxTZWFyY2hQYXJhbXNQb2x5ZmlsbClcbiAgICB9KTtcblxuICAgIHZhciBVU1BQcm90byA9IHNlbGYuVVJMU2VhcmNoUGFyYW1zLnByb3RvdHlwZTtcblxuICAgIFVTUFByb3RvLnBvbHlmaWxsID0gdHJ1ZTtcblxuICAgIC8qKlxuICAgICAqXG4gICAgICogQHBhcmFtIHtmdW5jdGlvbn0gY2FsbGJhY2tcbiAgICAgKiBAcGFyYW0ge29iamVjdH0gdGhpc0FyZ1xuICAgICAqL1xuICAgIFVTUFByb3RvLmZvckVhY2ggPSBVU1BQcm90by5mb3JFYWNoIHx8IGZ1bmN0aW9uKGNhbGxiYWNrLCB0aGlzQXJnKSB7XG4gICAgICAgIHZhciBkaWN0ID0gcGFyc2VUb0RpY3QodGhpcy50b1N0cmluZygpKTtcbiAgICAgICAgT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMoZGljdCkuZm9yRWFjaChmdW5jdGlvbihuYW1lKSB7XG4gICAgICAgICAgICBkaWN0W25hbWVdLmZvckVhY2goZnVuY3Rpb24odmFsdWUpIHtcbiAgICAgICAgICAgICAgICBjYWxsYmFjay5jYWxsKHRoaXNBcmcsIHZhbHVlLCBuYW1lLCB0aGlzKTtcbiAgICAgICAgICAgIH0sIHRoaXMpO1xuICAgICAgICB9LCB0aGlzKTtcbiAgICB9O1xuXG4gICAgLyoqXG4gICAgICogU29ydCBhbGwgbmFtZS12YWx1ZSBwYWlyc1xuICAgICAqL1xuICAgIFVTUFByb3RvLnNvcnQgPSBVU1BQcm90by5zb3J0IHx8IGZ1bmN0aW9uKCkge1xuICAgICAgICB2YXIgZGljdCA9IHBhcnNlVG9EaWN0KHRoaXMudG9TdHJpbmcoKSksIGtleXMgPSBbXSwgaywgaSwgajtcbiAgICAgICAgZm9yIChrIGluIGRpY3QpIHtcbiAgICAgICAgICAgIGtleXMucHVzaChrKTtcbiAgICAgICAgfVxuICAgICAgICBrZXlzLnNvcnQoKTtcblxuICAgICAgICBmb3IgKGkgPSAwOyBpIDwga2V5cy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgdGhpc1snZGVsZXRlJ10oa2V5c1tpXSk7XG4gICAgICAgIH1cbiAgICAgICAgZm9yIChpID0gMDsgaSA8IGtleXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIHZhciBrZXkgPSBrZXlzW2ldLCB2YWx1ZXMgPSBkaWN0W2tleV07XG4gICAgICAgICAgICBmb3IgKGogPSAwOyBqIDwgdmFsdWVzLmxlbmd0aDsgaisrKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5hcHBlbmQoa2V5LCB2YWx1ZXNbal0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfTtcblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgYW4gaXRlcmF0b3IgYWxsb3dpbmcgdG8gZ28gdGhyb3VnaCBhbGwga2V5cyBvZlxuICAgICAqIHRoZSBrZXkvdmFsdWUgcGFpcnMgY29udGFpbmVkIGluIHRoaXMgb2JqZWN0LlxuICAgICAqXG4gICAgICogQHJldHVybnMge2Z1bmN0aW9ufVxuICAgICAqL1xuICAgIFVTUFByb3RvLmtleXMgPSBVU1BQcm90by5rZXlzIHx8IGZ1bmN0aW9uKCkge1xuICAgICAgICB2YXIgaXRlbXMgPSBbXTtcbiAgICAgICAgdGhpcy5mb3JFYWNoKGZ1bmN0aW9uKGl0ZW0sIG5hbWUpIHtcbiAgICAgICAgICAgIGl0ZW1zLnB1c2gobmFtZSk7XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gbWFrZUl0ZXJhdG9yKGl0ZW1zKTtcbiAgICB9O1xuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBhbiBpdGVyYXRvciBhbGxvd2luZyB0byBnbyB0aHJvdWdoIGFsbCB2YWx1ZXMgb2ZcbiAgICAgKiB0aGUga2V5L3ZhbHVlIHBhaXJzIGNvbnRhaW5lZCBpbiB0aGlzIG9iamVjdC5cbiAgICAgKlxuICAgICAqIEByZXR1cm5zIHtmdW5jdGlvbn1cbiAgICAgKi9cbiAgICBVU1BQcm90by52YWx1ZXMgPSBVU1BQcm90by52YWx1ZXMgfHwgZnVuY3Rpb24oKSB7XG4gICAgICAgIHZhciBpdGVtcyA9IFtdO1xuICAgICAgICB0aGlzLmZvckVhY2goZnVuY3Rpb24oaXRlbSkge1xuICAgICAgICAgICAgaXRlbXMucHVzaChpdGVtKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBtYWtlSXRlcmF0b3IoaXRlbXMpO1xuICAgIH07XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIGFuIGl0ZXJhdG9yIGFsbG93aW5nIHRvIGdvIHRocm91Z2ggYWxsIGtleS92YWx1ZVxuICAgICAqIHBhaXJzIGNvbnRhaW5lZCBpbiB0aGlzIG9iamVjdC5cbiAgICAgKlxuICAgICAqIEByZXR1cm5zIHtmdW5jdGlvbn1cbiAgICAgKi9cbiAgICBVU1BQcm90by5lbnRyaWVzID0gVVNQUHJvdG8uZW50cmllcyB8fCBmdW5jdGlvbigpIHtcbiAgICAgICAgdmFyIGl0ZW1zID0gW107XG4gICAgICAgIHRoaXMuZm9yRWFjaChmdW5jdGlvbihpdGVtLCBuYW1lKSB7XG4gICAgICAgICAgICBpdGVtcy5wdXNoKFtuYW1lLCBpdGVtXSk7XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gbWFrZUl0ZXJhdG9yKGl0ZW1zKTtcbiAgICB9O1xuXG5cbiAgICBpZiAoaXRlcmFibGUpIHtcbiAgICAgICAgVVNQUHJvdG9bc2VsZi5TeW1ib2wuaXRlcmF0b3JdID0gVVNQUHJvdG9bc2VsZi5TeW1ib2wuaXRlcmF0b3JdIHx8IFVTUFByb3RvLmVudHJpZXM7XG4gICAgfVxuXG5cbiAgICBmdW5jdGlvbiBlbmNvZGUoc3RyKSB7XG4gICAgICAgIHZhciByZXBsYWNlID0ge1xuICAgICAgICAgICAgJyEnOiAnJTIxJyxcbiAgICAgICAgICAgIFwiJ1wiOiAnJTI3JyxcbiAgICAgICAgICAgICcoJzogJyUyOCcsXG4gICAgICAgICAgICAnKSc6ICclMjknLFxuICAgICAgICAgICAgJ34nOiAnJTdFJyxcbiAgICAgICAgICAgICclMjAnOiAnKycsXG4gICAgICAgICAgICAnJTAwJzogJ1xceDAwJ1xuICAgICAgICB9O1xuICAgICAgICByZXR1cm4gZW5jb2RlVVJJQ29tcG9uZW50KHN0cikucmVwbGFjZSgvWyEnXFwoXFwpfl18JTIwfCUwMC9nLCBmdW5jdGlvbihtYXRjaCkge1xuICAgICAgICAgICAgcmV0dXJuIHJlcGxhY2VbbWF0Y2hdO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBkZWNvZGUoc3RyKSB7XG4gICAgICAgIHJldHVybiBzdHJcbiAgICAgICAgICAgIC5yZXBsYWNlKC9bICtdL2csICclMjAnKVxuICAgICAgICAgICAgLnJlcGxhY2UoLyglW2EtZjAtOV17Mn0pKy9pZywgZnVuY3Rpb24obWF0Y2gpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KG1hdGNoKTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIG1ha2VJdGVyYXRvcihhcnIpIHtcbiAgICAgICAgdmFyIGl0ZXJhdG9yID0ge1xuICAgICAgICAgICAgbmV4dDogZnVuY3Rpb24oKSB7XG4gICAgICAgICAgICAgICAgdmFyIHZhbHVlID0gYXJyLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHtkb25lOiB2YWx1ZSA9PT0gdW5kZWZpbmVkLCB2YWx1ZTogdmFsdWV9O1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuXG4gICAgICAgIGlmIChpdGVyYWJsZSkge1xuICAgICAgICAgICAgaXRlcmF0b3Jbc2VsZi5TeW1ib2wuaXRlcmF0b3JdID0gZnVuY3Rpb24oKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGl0ZXJhdG9yO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBpdGVyYXRvcjtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBwYXJzZVRvRGljdChzZWFyY2gpIHtcbiAgICAgICAgdmFyIGRpY3QgPSB7fTtcblxuICAgICAgICBpZiAodHlwZW9mIHNlYXJjaCA9PT0gXCJvYmplY3RcIikge1xuICAgICAgICAgICAgLy8gaWYgYHNlYXJjaGAgaXMgYW4gYXJyYXksIHRyZWF0IGl0IGFzIGEgc2VxdWVuY2VcbiAgICAgICAgICAgIGlmIChpc0FycmF5KHNlYXJjaCkpIHtcbiAgICAgICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHNlYXJjaC5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgICAgICAgICB2YXIgaXRlbSA9IHNlYXJjaFtpXTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGlzQXJyYXkoaXRlbSkgJiYgaXRlbS5sZW5ndGggPT09IDIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFwcGVuZFRvKGRpY3QsIGl0ZW1bMF0sIGl0ZW1bMV0pO1xuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihcIkZhaWxlZCB0byBjb25zdHJ1Y3QgJ1VSTFNlYXJjaFBhcmFtcyc6IFNlcXVlbmNlIGluaXRpYWxpemVyIG11c3Qgb25seSBjb250YWluIHBhaXIgZWxlbWVudHNcIik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgZm9yICh2YXIga2V5IGluIHNlYXJjaCkge1xuICAgICAgICAgICAgICAgICAgICBpZiAoc2VhcmNoLmhhc093blByb3BlcnR5KGtleSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFwcGVuZFRvKGRpY3QsIGtleSwgc2VhcmNoW2tleV0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAvLyByZW1vdmUgZmlyc3QgJz8nXG4gICAgICAgICAgICBpZiAoc2VhcmNoLmluZGV4T2YoXCI/XCIpID09PSAwKSB7XG4gICAgICAgICAgICAgICAgc2VhcmNoID0gc2VhcmNoLnNsaWNlKDEpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB2YXIgcGFpcnMgPSBzZWFyY2guc3BsaXQoXCImXCIpO1xuICAgICAgICAgICAgZm9yICh2YXIgaiA9IDA7IGogPCBwYWlycy5sZW5ndGg7IGorKykge1xuICAgICAgICAgICAgICAgIHZhciB2YWx1ZSA9IHBhaXJzIFtqXSxcbiAgICAgICAgICAgICAgICAgICAgaW5kZXggPSB2YWx1ZS5pbmRleE9mKCc9Jyk7XG5cbiAgICAgICAgICAgICAgICBpZiAoLTEgPCBpbmRleCkge1xuICAgICAgICAgICAgICAgICAgICBhcHBlbmRUbyhkaWN0LCBkZWNvZGUodmFsdWUuc2xpY2UoMCwgaW5kZXgpKSwgZGVjb2RlKHZhbHVlLnNsaWNlKGluZGV4ICsgMSkpKTtcblxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgYXBwZW5kVG8oZGljdCwgZGVjb2RlKHZhbHVlKSwgJycpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGRpY3Q7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gYXBwZW5kVG8oZGljdCwgbmFtZSwgdmFsdWUpIHtcbiAgICAgICAgdmFyIHZhbCA9IHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgPyB2YWx1ZSA6IChcbiAgICAgICAgICAgIHZhbHVlICE9PSBudWxsICYmIHZhbHVlICE9PSB1bmRlZmluZWQgJiYgdHlwZW9mIHZhbHVlLnRvU3RyaW5nID09PSAnZnVuY3Rpb24nID8gdmFsdWUudG9TdHJpbmcoKSA6IEpTT04uc3RyaW5naWZ5KHZhbHVlKVxuICAgICAgICApO1xuXG4gICAgICAgIC8vICM0NyBQcmV2ZW50IHVzaW5nIGBoYXNPd25Qcm9wZXJ0eWAgYXMgYSBwcm9wZXJ0eSBuYW1lXG4gICAgICAgIGlmIChoYXNPd25Qcm9wZXJ0eShkaWN0LCBuYW1lKSkge1xuICAgICAgICAgICAgZGljdFtuYW1lXS5wdXNoKHZhbCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBkaWN0W25hbWVdID0gW3ZhbF07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBmdW5jdGlvbiBpc0FycmF5KHZhbCkge1xuICAgICAgICByZXR1cm4gISF2YWwgJiYgJ1tvYmplY3QgQXJyYXldJyA9PT0gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHZhbCk7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gaGFzT3duUHJvcGVydHkob2JqLCBwcm9wKSB7XG4gICAgICAgIHJldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwob2JqLCBwcm9wKTtcbiAgICB9XG5cbn0pKHR5cGVvZiBnbG9iYWwgIT09ICd1bmRlZmluZWQnID8gZ2xvYmFsIDogKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnID8gd2luZG93IDogdGhpcykpO1xuIiwiLy8gVGhlIG1vZHVsZSBjYWNoZVxudmFyIF9fd2VicGFja19tb2R1bGVfY2FjaGVfXyA9IHt9O1xuXG4vLyBUaGUgcmVxdWlyZSBmdW5jdGlvblxuZnVuY3Rpb24gX193ZWJwYWNrX3JlcXVpcmVfXyhtb2R1bGVJZCkge1xuXHQvLyBDaGVjayBpZiBtb2R1bGUgaXMgaW4gY2FjaGVcblx0aWYoX193ZWJwYWNrX21vZHVsZV9jYWNoZV9fW21vZHVsZUlkXSkge1xuXHRcdHJldHVybiBfX3dlYnBhY2tfbW9kdWxlX2NhY2hlX19bbW9kdWxlSWRdLmV4cG9ydHM7XG5cdH1cblx0Ly8gQ3JlYXRlIGEgbmV3IG1vZHVsZSAoYW5kIHB1dCBpdCBpbnRvIHRoZSBjYWNoZSlcblx0dmFyIG1vZHVsZSA9IF9fd2VicGFja19tb2R1bGVfY2FjaGVfX1ttb2R1bGVJZF0gPSB7XG5cdFx0Ly8gbm8gbW9kdWxlLmlkIG5lZWRlZFxuXHRcdC8vIG5vIG1vZHVsZS5sb2FkZWQgbmVlZGVkXG5cdFx0ZXhwb3J0czoge31cblx0fTtcblxuXHQvLyBFeGVjdXRlIHRoZSBtb2R1bGUgZnVuY3Rpb25cblx0X193ZWJwYWNrX21vZHVsZXNfX1ttb2R1bGVJZF0uY2FsbChtb2R1bGUuZXhwb3J0cywgbW9kdWxlLCBtb2R1bGUuZXhwb3J0cywgX193ZWJwYWNrX3JlcXVpcmVfXyk7XG5cblx0Ly8gUmV0dXJuIHRoZSBleHBvcnRzIG9mIHRoZSBtb2R1bGVcblx0cmV0dXJuIG1vZHVsZS5leHBvcnRzO1xufVxuXG4iLCIvLyBtb2R1bGUgZXhwb3J0cyBtdXN0IGJlIHJldHVybmVkIGZyb20gcnVudGltZSBzbyBlbnRyeSBpbmxpbmluZyBpcyBkaXNhYmxlZFxuLy8gc3RhcnR1cFxuLy8gTG9hZCBlbnRyeSBtb2R1bGUgYW5kIHJldHVybiBleHBvcnRzXG5yZXR1cm4gX193ZWJwYWNrX3JlcXVpcmVfXyg2MDcpO1xuIiwiX193ZWJwYWNrX3JlcXVpcmVfXy5nID0gKGZ1bmN0aW9uKCkge1xuXHRpZiAodHlwZW9mIGdsb2JhbFRoaXMgPT09ICdvYmplY3QnKSByZXR1cm4gZ2xvYmFsVGhpcztcblx0dHJ5IHtcblx0XHRyZXR1cm4gdGhpcyB8fCBuZXcgRnVuY3Rpb24oJ3JldHVybiB0aGlzJykoKTtcblx0fSBjYXRjaCAoZSkge1xuXHRcdGlmICh0eXBlb2Ygd2luZG93ID09PSAnb2JqZWN0JykgcmV0dXJuIHdpbmRvdztcblx0fVxufSkoKTsiXSwic291cmNlUm9vdCI6IiJ9
!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define("Formtrack",[],e):"object"==typeof exports?exports.Formtrack=e():t.Formtrack=e()}("undefined"!=typeof self?self:this,(function(){return(()=>{var t={607:(t,e,r)=>{"use strict";r(449);var n=function(t){var e=t.formElement,r=t.id,n=t.name,o=t.value,i=document.getElementById(r);if(!i){var a=document.createElement("input");a.setAttribute("type","hidden"),a.setAttribute("id",r),a.setAttribute("name",n),e.appendChild(a),i=a}i.setAttribute("value",o)};"undefined"!=typeof document&&document.addEventListener("submit",(function(t){try{var e=t.target;if(e){var r=e;if(void 0!==r.dataset.formtrack)for(var o=new URLSearchParams(window.location.search),i=["referrer","utm_campaign","utm_content","utm_medium","utm_source","utm_term"],a=0;a<i.length;a++){var c=i[a],u="formtrack_"+c,s=c,f=o.get(c);f&&n({formElement:r,id:u,name:s,value:f})}}}catch(t){console.error(t)}return!0}))},449:function(t,e,r){!function(t){"use strict";var e,r=function(){try{if(t.URLSearchParams&&"bar"===new t.URLSearchParams("foo=bar").get("foo"))return t.URLSearchParams}catch(t){}return null}(),n=r&&"a=1"===new r({a:1}).toString(),o=r&&"+"===new r("s=%2B").get("s"),i=!r||((e=new r).append("s"," &"),"s=+%26"===e.toString()),a=f.prototype,c=!(!t.Symbol||!t.Symbol.iterator);if(!(r&&n&&o&&i)){a.append=function(t,e){d(this.__URLSearchParams__,t,e)},a.delete=function(t){delete this.__URLSearchParams__[t]},a.get=function(t){var e=this.__URLSearchParams__;return this.has(t)?e[t][0]:null},a.getAll=function(t){var e=this.__URLSearchParams__;return this.has(t)?e[t].slice(0):[]},a.has=function(t){return y(this.__URLSearchParams__,t)},a.set=function(t,e){this.__URLSearchParams__[t]=[""+e]},a.toString=function(){var t,e,r,n,o=this.__URLSearchParams__,i=[];for(e in o)for(r=h(e),t=0,n=o[e];t<n.length;t++)i.push(r+"="+h(n[t]));return i.join("&")};var u=!!o&&r&&!n&&t.Proxy;Object.defineProperty(t,"URLSearchParams",{value:u?new Proxy(r,{construct:function(t,e){return new t(new f(e[0]).toString())}}):f});var s=t.URLSearchParams.prototype;s.polyfill=!0,s.forEach=s.forEach||function(t,e){var r=m(this.toString());Object.getOwnPropertyNames(r).forEach((function(n){r[n].forEach((function(r){t.call(e,r,n,this)}),this)}),this)},s.sort=s.sort||function(){var t,e,r,n=m(this.toString()),o=[];for(t in n)o.push(t);for(o.sort(),e=0;e<o.length;e++)this.delete(o[e]);for(e=0;e<o.length;e++){var i=o[e],a=n[i];for(r=0;r<a.length;r++)this.append(i,a[r])}},s.keys=s.keys||function(){var t=[];return this.forEach((function(e,r){t.push(r)})),p(t)},s.values=s.values||function(){var t=[];return this.forEach((function(e){t.push(e)})),p(t)},s.entries=s.entries||function(){var t=[];return this.forEach((function(e,r){t.push([r,e])})),p(t)},c&&(s[t.Symbol.iterator]=s[t.Symbol.iterator]||s.entries)}function f(t){((t=t||"")instanceof URLSearchParams||t instanceof f)&&(t=t.toString()),this.__URLSearchParams__=m(t)}function h(t){var e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(t).replace(/[!'\(\)~]|%20|%00/g,(function(t){return e[t]}))}function l(t){return t.replace(/[ +]/g,"%20").replace(/(%[a-f0-9]{2})+/gi,(function(t){return decodeURIComponent(t)}))}function p(e){var r={next:function(){var t=e.shift();return{done:void 0===t,value:t}}};return c&&(r[t.Symbol.iterator]=function(){return r}),r}function m(t){var e={};if("object"==typeof t)if(v(t))for(var r=0;r<t.length;r++){var n=t[r];if(!v(n)||2!==n.length)throw new TypeError("Failed to construct 'URLSearchParams': Sequence initializer must only contain pair elements");d(e,n[0],n[1])}else for(var o in t)t.hasOwnProperty(o)&&d(e,o,t[o]);else{0===t.indexOf("?")&&(t=t.slice(1));for(var i=t.split("&"),a=0;a<i.length;a++){var c=i[a],u=c.indexOf("=");-1<u?d(e,l(c.slice(0,u)),l(c.slice(u+1))):c&&d(e,l(c),"")}}return e}function d(t,e,r){var n="string"==typeof r?r:null!=r&&"function"==typeof r.toString?r.toString():JSON.stringify(r);y(t,e)?t[e].push(n):t[e]=[n]}function v(t){return!!t&&"[object Array]"===Object.prototype.toString.call(t)}function y(t,e){return Object.prototype.hasOwnProperty.call(t,e)}}(void 0!==r.g?r.g:"undefined"!=typeof window?window:this)}},e={};function r(n){if(e[n])return e[n].exports;var o=e[n]={exports:{}};return t[n].call(o.exports,o,o.exports,r),o.exports}return r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),r(607)})().default}));
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9Gb3JtdHJhY2svd2VicGFjay91bml2ZXJzYWxNb2R1bGVEZWZpbml0aW9uIiwid2VicGFjazovL0Zvcm10cmFjay8uL3NyYy9pbmRleC50cyIsIndlYnBhY2s6Ly9Gb3JtdHJhY2svLi9ub2RlX21vZHVsZXMvdXJsLXNlYXJjaC1wYXJhbXMtcG9seWZpbGwvaW5kZXguanMiLCJ3ZWJwYWNrOi8vRm9ybXRyYWNrL3dlYnBhY2svYm9vdHN0cmFwIiwid2VicGFjazovL0Zvcm10cmFjay93ZWJwYWNrL3N0YXJ0dXAiLCJ3ZWJwYWNrOi8vRm9ybXRyYWNrL3dlYnBhY2svcnVudGltZS9nbG9iYWwiXSwibmFtZXMiOlsicm9vdCIsImZhY3RvcnkiLCJleHBvcnRzIiwibW9kdWxlIiwiZGVmaW5lIiwiYW1kIiwic2VsZiIsInRoaXMiLCJhcHBlbmRPclVwZGF0ZUZvcm10cmFja0lucHV0IiwiZm9ybUVsZW1lbnQiLCJpZCIsIm5hbWUiLCJ2YWx1ZSIsImlucHV0IiwiZG9jdW1lbnQiLCJnZXRFbGVtZW50QnlJZCIsIm5ld0lucHV0IiwiY3JlYXRlRWxlbWVudCIsInNldEF0dHJpYnV0ZSIsImFwcGVuZENoaWxkIiwiYWRkRXZlbnRMaXN0ZW5lciIsImV2ZW50IiwiZm9ybUV2ZW50VGFyZ2V0IiwidGFyZ2V0IiwiZGF0YXNldCIsImZvcm10cmFjayIsInNlYXJjaFBhcmFtZXRlcnMiLCJVUkxTZWFyY2hQYXJhbXMiLCJ3aW5kb3ciLCJsb2NhdGlvbiIsInNlYXJjaCIsInN1cHBvcnRlZFBhcmFtZXRlck5hbWVzIiwiaSIsImxlbmd0aCIsInBhcmFtZXRlck5hbWUiLCJnZXQiLCJlIiwiY29uc29sZSIsImVycm9yIiwiYW1wZXJzYW5kVGVzdCIsIm5hdGl2ZVVSTFNlYXJjaFBhcmFtcyIsImlzU3VwcG9ydE9iamVjdENvbnN0cnVjdG9yIiwiYSIsInRvU3RyaW5nIiwiZGVjb2Rlc1BsdXNlc0NvcnJlY3RseSIsImVuY29kZXNBbXBlcnNhbmRzQ29ycmVjdGx5IiwiYXBwZW5kIiwicHJvdG90eXBlIiwiVVJMU2VhcmNoUGFyYW1zUG9seWZpbGwiLCJpdGVyYWJsZSIsIlN5bWJvbCIsIml0ZXJhdG9yIiwiYXBwZW5kVG8iLCJkaWN0IiwiaGFzIiwiZ2V0QWxsIiwic2xpY2UiLCJoYXNPd25Qcm9wZXJ0eSIsInNldCIsImtleSIsInF1ZXJ5IiwiZW5jb2RlIiwicHVzaCIsImpvaW4iLCJ1c2VQcm94eSIsIlByb3h5IiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJjb25zdHJ1Y3QiLCJhcmdzIiwiVVNQUHJvdG8iLCJwb2x5ZmlsbCIsImZvckVhY2giLCJjYWxsYmFjayIsInRoaXNBcmciLCJwYXJzZVRvRGljdCIsImdldE93blByb3BlcnR5TmFtZXMiLCJjYWxsIiwic29ydCIsImsiLCJqIiwia2V5cyIsInZhbHVlcyIsIml0ZW1zIiwiaXRlbSIsIm1ha2VJdGVyYXRvciIsImVudHJpZXMiLCJzdHIiLCJyZXBsYWNlIiwiZW5jb2RlVVJJQ29tcG9uZW50IiwibWF0Y2giLCJkZWNvZGUiLCJkZWNvZGVVUklDb21wb25lbnQiLCJhcnIiLCJuZXh0Iiwic2hpZnQiLCJkb25lIiwidW5kZWZpbmVkIiwiaXNBcnJheSIsIlR5cGVFcnJvciIsImluZGV4T2YiLCJwYWlycyIsInNwbGl0IiwiaW5kZXgiLCJ2YWwiLCJKU09OIiwic3RyaW5naWZ5Iiwib2JqIiwicHJvcCIsImciLCJfX3dlYnBhY2tfbW9kdWxlX2NhY2hlX18iLCJfX3dlYnBhY2tfcmVxdWlyZV9fIiwibW9kdWxlSWQiLCJfX3dlYnBhY2tfbW9kdWxlc19fIiwiZ2xvYmFsVGhpcyIsIkZ1bmN0aW9uIl0sIm1hcHBpbmdzIjoiO0NBQUEsU0FBMkNBLEVBQU1DLEdBQzFCLGlCQUFaQyxTQUEwQyxpQkFBWEMsT0FDeENBLE9BQU9ELFFBQVVELElBQ1EsbUJBQVhHLFFBQXlCQSxPQUFPQyxJQUM5Q0QsT0FBTyxZQUFhLEdBQUlILEdBQ0UsaUJBQVpDLFFBQ2RBLFFBQW1CLFVBQUlELElBRXZCRCxF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bENBLFNBQW1FLG1CQUFuQkEsRUFBTStCLFNBQTBCL0IsRUFBTStCLFdBQWE4RCxLQUFLQyxVQUFVOUYsR0FJbEg2QyxFQUFlSixFQUFNMUMsR0FDckIwQyxFQUFLMUMsR0FBTW1ELEtBQUswQyxHQUVoQm5ELEVBQUsxQyxHQUFRLENBQUM2RixHQUl0QixTQUFTTixFQUFRTSxHQUNiLFFBQVNBLEdBQU8sbUJBQXFCdEMsT0FBT25CLFVBQVVKLFNBQVNrQyxLQUFLMkIsR0FHeEUsU0FBUy9DLEVBQWVrRCxFQUFLQyxHQUN6QixPQUFPMUMsT0FBT25CLFVBQVVVLGVBQWVvQixLQUFLOEIsRUFBS0MsSUFqVnpELE1Bb1ZxQixJQUFYLEVBQUFDLEVBQXlCLEVBQUFBLEVBQTRCLG9CQUFYakYsT0FBeUJBLE9BQVNyQixRQzNWbEZ1RyxFQUEyQixHQUcvQixTQUFTQyxFQUFvQkMsR0FFNUIsR0FBR0YsRUFBeUJFLEdBQzNCLE9BQU9GLEVBQXlCRSxHQUFVOUcsUUFHM0MsSUFBSUMsRUFBUzJHLEVBQXlCRSxHQUFZLENBR2pEOUcsUUFBUyxJQU9WLE9BSEErRyxFQUFvQkQsR0FBVW5DLEtBQUsxRSxFQUFPRCxRQUFTQyxFQUFRQSxFQUFPRCxRQUFTNkcsR0FHcEU1RyxFQUFPRCxRQ2pCZixPQ0hBNkcsRUFBb0JGLEVBQUksV0FDdkIsR0FBMEIsaUJBQWZLLFdBQXlCLE9BQU9BLFdBQzNDLElBQ0MsT0FBTzNHLE1BQVEsSUFBSTRHLFNBQVMsY0FBYixHQUNkLE1BQU8vRSxHQUNSLEdBQXNCLGlCQUFYUixPQUFxQixPQUFPQSxRQUxqQixHREdqQm1GLEVBQW9CLE0iLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzQ29udGVudCI6WyIoZnVuY3Rpb24gd2VicGFja1VuaXZlcnNhbE1vZHVsZURlZmluaXRpb24ocm9vdCwgZmFjdG9yeSkge1xuXHRpZih0eXBlb2YgZXhwb3J0cyA9PT0gJ29iamVjdCcgJiYgdHlwZW9mIG1vZHVsZSA9PT0gJ29iamVjdCcpXG5cdFx0bW9kdWxlLmV4cG9ydHMgPSBmYWN0b3J5KCk7XG5cdGVsc2UgaWYodHlwZW9mIGRlZmluZSA9PT0gJ2Z1bmN0aW9uJyAmJiBkZWZpbmUuYW1kKVxuXHRcdGRlZmluZShcIkZvcm10cmFja1wiLCBbXSwgZmFjdG9yeSk7XG5cdGVsc2UgaWYodHlwZW9mIGV4cG9ydHMgPT09ICdvYmplY3QnKVxuXHRcdGV4cG9ydHNbXCJGb3JtdHJhY2tcIl0gPSBmYWN0b3J5KCk7XG5cdGVsc2Vcblx0XHRyb290W1wiRm9ybXRyYWNrXCJdID0gZmFjdG9yeSgpO1xufSkodHlwZW9mIHNlbGYgIT09ICd1bmRlZmluZWQnID8gc2VsZiA6IHRoaXMsIGZ1bmN0aW9uKCkge1xucmV0dXJuICIsImltcG9ydCBcInVybC1zZWFyY2gtcGFyYW1zLXBvbHlmaWxsXCI7XG5cbmNvbnN0IGFwcGVuZE9yVXBkYXRlRm9ybXRyYWNrSW5wdXQgPSAoe1xuICBmb3JtRWxlbWVudCxcbiAgaWQsXG4gIG5hbWUsXG4gIHZhbHVlLFxufToge1xuICBmb3JtRWxlbWVudDogSFRNTEVsZW1lbnQ7XG4gIGlkOiBzdHJpbmc7XG4gIG5hbWU6IHN0cmluZztcbiAgdmFsdWU6IHN0cmluZztcbn0pID0+IHtcbiAgbGV0IGlucHV0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaWQpO1xuICBpZiAoIWlucHV0KSB7XG4gICAgY29uc3QgbmV3SW5wdXQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiaW5wdXRcIik7XG4gICAgbmV3SW5wdXQuc2V0QXR0cmlidXRlKFwidHlwZVwiLCBcImhpZGRlblwiKTtcbiAgICBuZXdJbnB1dC5zZXRBdHRyaWJ1dGUoXCJpZFwiLCBpZCk7XG4gICAgbmV3SW5wdXQuc2V0QXR0cmlidXRlKFwibmFtZVwiLCBuYW1lKTtcbiAgICBmb3JtRWxlbWVudC5hcHBlbmRDaGlsZChuZXdJbnB1dCk7XG4gICAgaW5wdXQgPSBuZXdJbnB1dDtcbiAgfVxuICBpbnB1dC5zZXRBdHRyaWJ1dGUoXCJ2YWx1ZVwiLCB2YWx1ZSk7XG59O1xuXG5jb25zdCBhZGRTdWJtaXRMaXN0ZW5lciA9ICgpID0+IHtcbiAgaWYgKHR5cGVvZiBkb2N1bWVudCAhPT0gXCJ1bmRlZmluZWRcIikge1xuICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoXCJzdWJtaXRcIiwgKGV2ZW50KSA9PiB7XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCBmb3JtRXZlbnRUYXJnZXQgPSBldmVudC50YXJnZXQ7XG4gICAgICAgIGlmIChmb3JtRXZlbnRUYXJnZXQpIHtcbiAgICAgICAgICBjb25zdCBmb3JtRWxlbWVudCA9IGZvcm1FdmVudFRhcmdldCBhcyBIVE1MRWxlbWVudDtcbiAgICAgICAgICBjb25zdCBzaG91bGRUcmFjayA9XG4gICAgICAgICAgICB0eXBlb2YgZm9ybUVsZW1lbnQuZGF0YXNldC5mb3JtdHJhY2sgIT09IFwidW5kZWZpbmVkXCI7XG4gICAgICAgICAgaWYgKHNob3VsZFRyYWNrKSB7XG4gICAgICAgICAgICBjb25zdCBzZWFyY2hQYXJhbWV0ZXJzID0gbmV3IFVSTFNlYXJjaFBhcmFtcyhcbiAgICAgICAgICAgICAgd2luZG93LmxvY2F0aW9uLnNlYXJjaFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIGNvbnN0IHN1cHBvcnRlZFBhcmFtZXRlck5hbWVzID0gW1xuICAgICAgICAgICAgICBcInJlZmVycmVyXCIsXG4gICAgICAgICAgICAgIFwidXRtX2NhbXBhaWduXCIsXG4gICAgICAgICAgICAgIFwidXRtX2NvbnRlbnRcIixcbiAgICAgICAgICAgICAgXCJ1dG1fbWVkaXVtXCIsXG4gICAgICAgICAgICAgIFwidXRtX3NvdXJjZVwiLFxuICAgICAgICAgICAgICBcInV0bV90ZXJtXCIsXG4gICAgICAgICAgICBdO1xuICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzdXBwb3J0ZWRQYXJhbWV0ZXJOYW1lcy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgICBjb25zdCBwYXJhbWV0ZXJOYW1lID0gc3VwcG9ydGVkUGFyYW1ldGVyTmFtZXNbaV07XG4gICAgICAgICAgICAgIGNvbnN0IGlkID0gYGZvcm10cmFja18ke3BhcmFtZXRlck5hbWV9YDtcbiAgICAgICAgICAgICAgY29uc3QgbmFtZSA9IHBhcmFtZXRlck5hbWU7XG4gICAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gc2VhcmNoUGFyYW1ldGVycy5nZXQocGFyYW1ldGVyTmFtZSk7XG4gICAgICAgICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgICAgICAgIGFwcGVuZE9yVXBkYXRlRm9ybXRyYWNrSW5wdXQoe1xuICAgICAgICAgICAgICAgICAgZm9ybUVsZW1lbnQsXG4gICAgICAgICAgICAgICAgICBpZCxcbiAgICAgICAgICAgICAgICAgIG5hbWUsXG4gICAgICAgICAgICAgICAgICB2YWx1ZSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICBjb25zb2xlLmVycm9yKGUpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfSk7XG4gIH1cbn07XG5cbmFkZFN1Ym1pdExpc3RlbmVyKCk7XG4iLCIvKipcbiAqXG4gKlxuICogQGF1dGhvciBKZXJyeSBCZW5keSA8amVycnlAaWNld2luZ2NjLmNvbT5cbiAqIEBsaWNlbmNlIE1JVFxuICpcbiAqL1xuXG4oZnVuY3Rpb24oc2VsZikge1xuICAgICd1c2Ugc3RyaWN0JztcblxuICAgIHZhciBuYXRpdmVVUkxTZWFyY2hQYXJhbXMgPSAoZnVuY3Rpb24oKSB7XG4gICAgICAgICAgICAvLyAjNDEgRml4IGlzc3VlIGluIFJOXG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGlmIChzZWxmLlVSTFNlYXJjaFBhcmFtcyAmJiAobmV3IHNlbGYuVVJMU2VhcmNoUGFyYW1zKCdmb289YmFyJykpLmdldCgnZm9vJykgPT09ICdiYXInKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBzZWxmLlVSTFNlYXJjaFBhcmFtcztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGNhdGNoIChlKSB7fVxuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH0pKCksXG4gICAgICAgIGlzU3VwcG9ydE9iamVjdENvbnN0cnVjdG9yID0gbmF0aXZlVVJMU2VhcmNoUGFyYW1zICYmIChuZXcgbmF0aXZlVVJMU2VhcmNoUGFyYW1zKHthOiAxfSkpLnRvU3RyaW5nKCkgPT09ICdhPTEnLFxuICAgICAgICAvLyBUaGVyZSBpcyBhIGJ1ZyBpbiBzYWZhcmkgMTAuMSAoYW5kIGVhcmxpZXIpIHRoYXQgaW5jb3JyZWN0bHkgZGVjb2RlcyBgJTJCYCBhcyBhbiBlbXB0eSBzcGFjZSBhbmQgbm90IGEgcGx1cy5cbiAgICAgICAgZGVjb2Rlc1BsdXNlc0NvcnJlY3RseSA9IG5hdGl2ZVVSTFNlYXJjaFBhcmFtcyAmJiAobmV3IG5hdGl2ZVVSTFNlYXJjaFBhcmFtcygncz0lMkInKS5nZXQoJ3MnKSA9PT0gJysnKSxcbiAgICAgICAgX19VUkxTZWFyY2hQYXJhbXNfXyA9IFwiX19VUkxTZWFyY2hQYXJhbXNfX1wiLFxuICAgICAgICAvLyBGaXggYnVnIGluIEVkZ2Ugd2hpY2ggY2Fubm90IGVuY29kZSAnICYnIGNvcnJlY3RseVxuICAgICAgICBlbmNvZGVzQW1wZXJzYW5kc0NvcnJlY3RseSA9IG5hdGl2ZVVSTFNlYXJjaFBhcmFtcyA/IChmdW5jdGlvbigpIHtcbiAgICAgICAgICAgIHZhciBhbXBlcnNhbmRUZXN0ID0gbmV3IG5hdGl2ZVVSTFNlYXJjaFBhcmFtcygpO1xuICAgICAgICAgICAgYW1wZXJzYW5kVGVzdC5hcHBlbmQoJ3MnLCAnICYnKTtcbiAgICAgICAgICAgIHJldHVybiBhbXBlcnNhbmRUZXN0LnRvU3RyaW5nKCkgPT09ICdzPSslMjYnO1xuICAgICAgICB9KSgpIDogdHJ1ZSxcbiAgICAgICAgcHJvdG90eXBlID0gVVJMU2VhcmNoUGFyYW1zUG9seWZpbGwucHJvdG90eXBlLFxuICAgICAgICBpdGVyYWJsZSA9ICEhKHNlbGYuU3ltYm9sICYmIHNlbGYuU3ltYm9sLml0ZXJhdG9yKTtcblxuICAgIGlmIChuYXRpdmVVUkxTZWFyY2hQYXJhbXMgJiYgaXNTdXBwb3J0T2JqZWN0Q29uc3RydWN0b3IgJiYgZGVjb2Rlc1BsdXNlc0NvcnJlY3RseSAmJiBlbmNvZGVzQW1wZXJzYW5kc0NvcnJlY3RseSkge1xuICAgICAgICByZXR1cm47XG4gICAgfVxuXG5cbiAgICAvKipcbiAgICAgKiBNYWtlIGEgVVJMU2VhcmNoUGFyYW1zIGluc3RhbmNlXG4gICAgICpcbiAgICAgKiBAcGFyYW0ge29iamVjdHxzdHJpbmd8VVJMU2VhcmNoUGFyYW1zfSBzZWFyY2hcbiAgICAgKiBAY29uc3RydWN0b3JcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBVUkxTZWFyY2hQYXJhbXNQb2x5ZmlsbChzZWFyY2gpIHtcbiAgICAgICAgc2VhcmNoID0gc2VhcmNoIHx8IFwiXCI7XG5cbiAgICAgICAgLy8gc3VwcG9ydCBjb25zdHJ1Y3Qgb2JqZWN0IHdpdGggYW5vdGhlciBVUkxTZWFyY2hQYXJhbXMgaW5zdGFuY2VcbiAgICAgICAgaWYgKHNlYXJjaCBpbnN0YW5jZW9mIFVSTFNlYXJjaFBhcmFtcyB8fCBzZWFyY2ggaW5zdGFuY2VvZiBVUkxTZWFyY2hQYXJhbXNQb2x5ZmlsbCkge1xuICAgICAgICAgICAgc2VhcmNoID0gc2VhcmNoLnRvU3RyaW5nKCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcyBbX19VUkxTZWFyY2hQYXJhbXNfX10gPSBwYXJzZVRvRGljdChzZWFyY2gpO1xuICAgIH1cblxuXG4gICAgLyoqXG4gICAgICogQXBwZW5kcyBhIHNwZWNpZmllZCBrZXkvdmFsdWUgcGFpciBhcyBhIG5ldyBzZWFyY2ggcGFyYW1ldGVyLlxuICAgICAqXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IG5hbWVcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gdmFsdWVcbiAgICAgKi9cbiAgICBwcm90b3R5cGUuYXBwZW5kID0gZnVuY3Rpb24obmFtZSwgdmFsdWUpIHtcbiAgICAgICAgYXBwZW5kVG8odGhpcyBbX19VUkxTZWFyY2hQYXJhbXNfX10sIG5hbWUsIHZhbHVlKTtcbiAgICB9O1xuXG4gICAgLyoqXG4gICAgICogRGVsZXRlcyB0aGUgZ2l2ZW4gc2VhcmNoIHBhcmFtZXRlciwgYW5kIGl0cyBhc3NvY2lhdGVkIHZhbHVlLFxuICAgICAqIGZyb20gdGhlIGxpc3Qgb2YgYWxsIHNlYXJjaCBwYXJhbWV0ZXJzLlxuICAgICAqXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IG5hbWVcbiAgICAgKi9cbiAgICBwcm90b3R5cGVbJ2RlbGV0ZSddID0gZnVuY3Rpb24obmFtZSkge1xuICAgICAgICBkZWxldGUgdGhpcyBbX19VUkxTZWFyY2hQYXJhbXNfX10gW25hbWVdO1xuICAgIH07XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRoZSBmaXJzdCB2YWx1ZSBhc3NvY2lhdGVkIHRvIHRoZSBnaXZlbiBzZWFyY2ggcGFyYW1ldGVyLlxuICAgICAqXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IG5hbWVcbiAgICAgKiBAcmV0dXJucyB7c3RyaW5nfG51bGx9XG4gICAgICovXG4gICAgcHJvdG90eXBlLmdldCA9IGZ1bmN0aW9uKG5hbWUpIHtcbiAgICAgICAgdmFyIGRpY3QgPSB0aGlzIFtfX1VSTFNlYXJjaFBhcmFtc19fXTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaGFzKG5hbWUpID8gZGljdFtuYW1lXVswXSA6IG51bGw7XG4gICAgfTtcblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgYWxsIHRoZSB2YWx1ZXMgYXNzb2NpYXRpb24gd2l0aCBhIGdpdmVuIHNlYXJjaCBwYXJhbWV0ZXIuXG4gICAgICpcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gbmFtZVxuICAgICAqIEByZXR1cm5zIHtBcnJheX1cbiAgICAgKi9cbiAgICBwcm90b3R5cGUuZ2V0QWxsID0gZnVuY3Rpb24obmFtZSkge1xuICAgICAgICB2YXIgZGljdCA9IHRoaXMgW19fVVJMU2VhcmNoUGFyYW1zX19dO1xuICAgICAgICByZXR1cm4gdGhpcy5oYXMobmFtZSkgPyBkaWN0IFtuYW1lXS5zbGljZSgwKSA6IFtdO1xuICAgIH07XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIGEgQm9vbGVhbiBpbmRpY2F0aW5nIGlmIHN1Y2ggYSBzZWFyY2ggcGFyYW1ldGVyIGV4aXN0cy5cbiAgICAgKlxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBuYW1lXG4gICAgICogQHJldHVybnMge2Jvb2xlYW59XG4gICAgICovXG4gICAgcHJvdG90eXBlLmhhcyA9IGZ1bmN0aW9uKG5hbWUpIHtcbiAgICAgICAgcmV0dXJuIGhhc093blByb3BlcnR5KHRoaXMgW19fVVJMU2VhcmNoUGFyYW1zX19dLCBuYW1lKTtcbiAgICB9O1xuXG4gICAgLyoqXG4gICAgICogU2V0cyB0aGUgdmFsdWUgYXNzb2NpYXRlZCB0byBhIGdpdmVuIHNlYXJjaCBwYXJhbWV0ZXIgdG9cbiAgICAgKiB0aGUgZ2l2ZW4gdmFsdWUuIElmIHRoZXJlIHdlcmUgc2V2ZXJhbCB2YWx1ZXMsIGRlbGV0ZSB0aGVcbiAgICAgKiBvdGhlcnMuXG4gICAgICpcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gbmFtZVxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSB2YWx1ZVxuICAgICAqL1xuICAgIHByb3RvdHlwZS5zZXQgPSBmdW5jdGlvbiBzZXQobmFtZSwgdmFsdWUpIHtcbiAgICAgICAgdGhpcyBbX19VUkxTZWFyY2hQYXJhbXNfX11bbmFtZV0gPSBbJycgKyB2YWx1ZV07XG4gICAgfTtcblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgYSBzdHJpbmcgY29udGFpbmcgYSBxdWVyeSBzdHJpbmcgc3VpdGFibGUgZm9yIHVzZSBpbiBhIFVSTC5cbiAgICAgKlxuICAgICAqIEByZXR1cm5zIHtzdHJpbmd9XG4gICAgICovXG4gICAgcHJvdG90eXBlLnRvU3RyaW5nID0gZnVuY3Rpb24oKSB7XG4gICAgICAgIHZhciBkaWN0ID0gdGhpc1tfX1VSTFNlYXJjaFBhcmFtc19fXSwgcXVlcnkgPSBbXSwgaSwga2V5LCBuYW1lLCB2YWx1ZTtcbiAgICAgICAgZm9yIChrZXkgaW4gZGljdCkge1xuICAgICAgICAgICAgbmFtZSA9IGVuY29kZShrZXkpO1xuICAgICAgICAgICAgZm9yIChpID0gMCwgdmFsdWUgPSBkaWN0W2tleV07IGkgPCB2YWx1ZS5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgICAgIHF1ZXJ5LnB1c2gobmFtZSArICc9JyArIGVuY29kZSh2YWx1ZVtpXSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBxdWVyeS5qb2luKCcmJyk7XG4gICAgfTtcblxuICAgIC8vIFRoZXJlIGlzIGEgYnVnIGluIFNhZmFyaSAxMC4xIGFuZCBgUHJveHlgaW5nIGl0IGlzIG5vdCBlbm91Z2guXG4gICAgdmFyIGZvclN1cmVVc2VQb2x5ZmlsbCA9ICFkZWNvZGVzUGx1c2VzQ29ycmVjdGx5O1xuICAgIHZhciB1c2VQcm94eSA9ICghZm9yU3VyZVVzZVBvbHlmaWxsICYmIG5hdGl2ZVVSTFNlYXJjaFBhcmFtcyAmJiAhaXNTdXBwb3J0T2JqZWN0Q29uc3RydWN0b3IgJiYgc2VsZi5Qcm94eSk7XG4gICAgLypcbiAgICAgKiBBcHBseSBwb2xpZmlsbCB0byBnbG9iYWwgb2JqZWN0IGFuZCBhcHBlbmQgb3RoZXIgcHJvdG90eXBlIGludG8gaXRcbiAgICAgKi9cbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoc2VsZiwgJ1VSTFNlYXJjaFBhcmFtcycsIHtcbiAgICAgICAgdmFsdWU6ICh1c2VQcm94eSA/XG4gICAgICAgICAgICAvLyBTYWZhcmkgMTAuMCBkb2Vzbid0IHN1cHBvcnQgUHJveHksIHNvIGl0IHdvbid0IGV4dGVuZCBVUkxTZWFyY2hQYXJhbXMgb24gc2FmYXJpIDEwLjBcbiAgICAgICAgICAgIG5ldyBQcm94eShuYXRpdmVVUkxTZWFyY2hQYXJhbXMsIHtcbiAgICAgICAgICAgICAgICBjb25zdHJ1Y3Q6IGZ1bmN0aW9uKHRhcmdldCwgYXJncykge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gbmV3IHRhcmdldCgobmV3IFVSTFNlYXJjaFBhcmFtc1BvbHlmaWxsKGFyZ3NbMF0pLnRvU3RyaW5nKCkpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KSA6XG4gICAgICAgICAgICBVUkxTZWFyY2hQYXJhbXNQb2x5ZmlsbClcbiAgICB9KTtcblxuICAgIHZhciBVU1BQcm90byA9IHNlbGYuVVJMU2VhcmNoUGFyYW1zLnByb3RvdHlwZTtcblxuICAgIFVTUFByb3RvLnBvbHlmaWxsID0gdHJ1ZTtcblxuICAgIC8qKlxuICAgICAqXG4gICAgICogQHBhcmFtIHtmdW5jdGlvbn0gY2FsbGJhY2tcbiAgICAgKiBAcGFyYW0ge29iamVjdH0gdGhpc0FyZ1xuICAgICAqL1xuICAgIFVTUFByb3RvLmZvckVhY2ggPSBVU1BQcm90by5mb3JFYWNoIHx8IGZ1bmN0aW9uKGNhbGxiYWNrLCB0aGlzQXJnKSB7XG4gICAgICAgIHZhciBkaWN0ID0gcGFyc2VUb0RpY3QodGhpcy50b1N0cmluZygpKTtcbiAgICAgICAgT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMoZGljdCkuZm9yRWFjaChmdW5jdGlvbihuYW1lKSB7XG4gICAgICAgICAgICBkaWN0W25hbWVdLmZvckVhY2goZnVuY3Rpb24odmFsdWUpIHtcbiAgICAgICAgICAgICAgICBjYWxsYmFjay5jYWxsKHRoaXNBcmcsIHZhbHVlLCBuYW1lLCB0aGlzKTtcbiAgICAgICAgICAgIH0sIHRoaXMpO1xuICAgICAgICB9LCB0aGlzKTtcbiAgICB9O1xuXG4gICAgLyoqXG4gICAgICogU29ydCBhbGwgbmFtZS12YWx1ZSBwYWlyc1xuICAgICAqL1xuICAgIFVTUFByb3RvLnNvcnQgPSBVU1BQcm90by5zb3J0IHx8IGZ1bmN0aW9uKCkge1xuICAgICAgICB2YXIgZGljdCA9IHBhcnNlVG9EaWN0KHRoaXMudG9TdHJpbmcoKSksIGtleXMgPSBbXSwgaywgaSwgajtcbiAgICAgICAgZm9yIChrIGluIGRpY3QpIHtcbiAgICAgICAgICAgIGtleXMucHVzaChrKTtcbiAgICAgICAgfVxuICAgICAgICBrZXlzLnNvcnQoKTtcblxuICAgICAgICBmb3IgKGkgPSAwOyBpIDwga2V5cy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgdGhpc1snZGVsZXRlJ10oa2V5c1tpXSk7XG4gICAgICAgIH1cbiAgICAgICAgZm9yIChpID0gMDsgaSA8IGtleXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIHZhciBrZXkgPSBrZXlzW2ldLCB2YWx1ZXMgPSBkaWN0W2tleV07XG4gICAgICAgICAgICBmb3IgKGogPSAwOyBqIDwgdmFsdWVzLmxlbmd0aDsgaisrKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5hcHBlbmQoa2V5LCB2YWx1ZXNbal0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfTtcblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgYW4gaXRlcmF0b3IgYWxsb3dpbmcgdG8gZ28gdGhyb3VnaCBhbGwga2V5cyBvZlxuICAgICAqIHRoZSBrZXkvdmFsdWUgcGFpcnMgY29udGFpbmVkIGluIHRoaXMgb2JqZWN0LlxuICAgICAqXG4gICAgICogQHJldHVybnMge2Z1bmN0aW9ufVxuICAgICAqL1xuICAgIFVTUFByb3RvLmtleXMgPSBVU1BQcm90by5rZXlzIHx8IGZ1bmN0aW9uKCkge1xuICAgICAgICB2YXIgaXRlbXMgPSBbXTtcbiAgICAgICAgdGhpcy5mb3JFYWNoKGZ1bmN0aW9uKGl0ZW0sIG5hbWUpIHtcbiAgICAgICAgICAgIGl0ZW1zLnB1c2gobmFtZSk7XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gbWFrZUl0ZXJhdG9yKGl0ZW1zKTtcbiAgICB9O1xuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBhbiBpdGVyYXRvciBhbGxvd2luZyB0byBnbyB0aHJvdWdoIGFsbCB2YWx1ZXMgb2ZcbiAgICAgKiB0aGUga2V5L3ZhbHVlIHBhaXJzIGNvbnRhaW5lZCBpbiB0aGlzIG9iamVjdC5cbiAgICAgKlxuICAgICAqIEByZXR1cm5zIHtmdW5jdGlvbn1cbiAgICAgKi9cbiAgICBVU1BQcm90by52YWx1ZXMgPSBVU1BQcm90by52YWx1ZXMgfHwgZnVuY3Rpb24oKSB7XG4gICAgICAgIHZhciBpdGVtcyA9IFtdO1xuICAgICAgICB0aGlzLmZvckVhY2goZnVuY3Rpb24oaXRlbSkge1xuICAgICAgICAgICAgaXRlbXMucHVzaChpdGVtKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBtYWtlSXRlcmF0b3IoaXRlbXMpO1xuICAgIH07XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIGFuIGl0ZXJhdG9yIGFsbG93aW5nIHRvIGdvIHRocm91Z2ggYWxsIGtleS92YWx1ZVxuICAgICAqIHBhaXJzIGNvbnRhaW5lZCBpbiB0aGlzIG9iamVjdC5cbiAgICAgKlxuICAgICAqIEByZXR1cm5zIHtmdW5jdGlvbn1cbiAgICAgKi9cbiAgICBVU1BQcm90by5lbnRyaWVzID0gVVNQUHJvdG8uZW50cmllcyB8fCBmdW5jdGlvbigpIHtcbiAgICAgICAgdmFyIGl0ZW1zID0gW107XG4gICAgICAgIHRoaXMuZm9yRWFjaChmdW5jdGlvbihpdGVtLCBuYW1lKSB7XG4gICAgICAgICAgICBpdGVtcy5wdXNoKFtuYW1lLCBpdGVtXSk7XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gbWFrZUl0ZXJhdG9yKGl0ZW1zKTtcbiAgICB9O1xuXG5cbiAgICBpZiAoaXRlcmFibGUpIHtcbiAgICAgICAgVVNQUHJvdG9bc2VsZi5TeW1ib2wuaXRlcmF0b3JdID0gVVNQUHJvdG9bc2VsZi5TeW1ib2wuaXRlcmF0b3JdIHx8IFVTUFByb3RvLmVudHJpZXM7XG4gICAgfVxuXG5cbiAgICBmdW5jdGlvbiBlbmNvZGUoc3RyKSB7XG4gICAgICAgIHZhciByZXBsYWNlID0ge1xuICAgICAgICAgICAgJyEnOiAnJTIxJyxcbiAgICAgICAgICAgIFwiJ1wiOiAnJTI3JyxcbiAgICAgICAgICAgICcoJzogJyUyOCcsXG4gICAgICAgICAgICAnKSc6ICclMjknLFxuICAgICAgICAgICAgJ34nOiAnJTdFJyxcbiAgICAgICAgICAgICclMjAnOiAnKycsXG4gICAgICAgICAgICAnJTAwJzogJ1xceDAwJ1xuICAgICAgICB9O1xuICAgICAgICByZXR1cm4gZW5jb2RlVVJJQ29tcG9uZW50KHN0cikucmVwbGFjZSgvWyEnXFwoXFwpfl18JTIwfCUwMC9nLCBmdW5jdGlvbihtYXRjaCkge1xuICAgICAgICAgICAgcmV0dXJuIHJlcGxhY2VbbWF0Y2hdO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBkZWNvZGUoc3RyKSB7XG4gICAgICAgIHJldHVybiBzdHJcbiAgICAgICAgICAgIC5yZXBsYWNlKC9bICtdL2csICclMjAnKVxuICAgICAgICAgICAgLnJlcGxhY2UoLyglW2EtZjAtOV17Mn0pKy9pZywgZnVuY3Rpb24obWF0Y2gpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KG1hdGNoKTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIG1ha2VJdGVyYXRvcihhcnIpIHtcbiAgICAgICAgdmFyIGl0ZXJhdG9yID0ge1xuICAgICAgICAgICAgbmV4dDogZnVuY3Rpb24oKSB7XG4gICAgICAgICAgICAgICAgdmFyIHZhbHVlID0gYXJyLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHtkb25lOiB2YWx1ZSA9PT0gdW5kZWZpbmVkLCB2YWx1ZTogdmFsdWV9O1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuXG4gICAgICAgIGlmIChpdGVyYWJsZSkge1xuICAgICAgICAgICAgaXRlcmF0b3Jbc2VsZi5TeW1ib2wuaXRlcmF0b3JdID0gZnVuY3Rpb24oKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGl0ZXJhdG9yO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBpdGVyYXRvcjtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBwYXJzZVRvRGljdChzZWFyY2gpIHtcbiAgICAgICAgdmFyIGRpY3QgPSB7fTtcblxuICAgICAgICBpZiAodHlwZW9mIHNlYXJjaCA9PT0gXCJvYmplY3RcIikge1xuICAgICAgICAgICAgLy8gaWYgYHNlYXJjaGAgaXMgYW4gYXJyYXksIHRyZWF0IGl0IGFzIGEgc2VxdWVuY2VcbiAgICAgICAgICAgIGlmIChpc0FycmF5KHNlYXJjaCkpIHtcbiAgICAgICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHNlYXJjaC5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgICAgICAgICB2YXIgaXRlbSA9IHNlYXJjaFtpXTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGlzQXJyYXkoaXRlbSkgJiYgaXRlbS5sZW5ndGggPT09IDIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFwcGVuZFRvKGRpY3QsIGl0ZW1bMF0sIGl0ZW1bMV0pO1xuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihcIkZhaWxlZCB0byBjb25zdHJ1Y3QgJ1VSTFNlYXJjaFBhcmFtcyc6IFNlcXVlbmNlIGluaXRpYWxpemVyIG11c3Qgb25seSBjb250YWluIHBhaXIgZWxlbWVudHNcIik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgZm9yICh2YXIga2V5IGluIHNlYXJjaCkge1xuICAgICAgICAgICAgICAgICAgICBpZiAoc2VhcmNoLmhhc093blByb3BlcnR5KGtleSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFwcGVuZFRvKGRpY3QsIGtleSwgc2VhcmNoW2tleV0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAvLyByZW1vdmUgZmlyc3QgJz8nXG4gICAgICAgICAgICBpZiAoc2VhcmNoLmluZGV4T2YoXCI/XCIpID09PSAwKSB7XG4gICAgICAgICAgICAgICAgc2VhcmNoID0gc2VhcmNoLnNsaWNlKDEpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB2YXIgcGFpcnMgPSBzZWFyY2guc3BsaXQoXCImXCIpO1xuICAgICAgICAgICAgZm9yICh2YXIgaiA9IDA7IGogPCBwYWlycy5sZW5ndGg7IGorKykge1xuICAgICAgICAgICAgICAgIHZhciB2YWx1ZSA9IHBhaXJzIFtqXSxcbiAgICAgICAgICAgICAgICAgICAgaW5kZXggPSB2YWx1ZS5pbmRleE9mKCc9Jyk7XG5cbiAgICAgICAgICAgICAgICBpZiAoLTEgPCBpbmRleCkge1xuICAgICAgICAgICAgICAgICAgICBhcHBlbmRUbyhkaWN0LCBkZWNvZGUodmFsdWUuc2xpY2UoMCwgaW5kZXgpKSwgZGVjb2RlKHZhbHVlLnNsaWNlKGluZGV4ICsgMSkpKTtcblxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgYXBwZW5kVG8oZGljdCwgZGVjb2RlKHZhbHVlKSwgJycpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGRpY3Q7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gYXBwZW5kVG8oZGljdCwgbmFtZSwgdmFsdWUpIHtcbiAgICAgICAgdmFyIHZhbCA9IHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgPyB2YWx1ZSA6IChcbiAgICAgICAgICAgIHZhbHVlICE9PSBudWxsICYmIHZhbHVlICE9PSB1bmRlZmluZWQgJiYgdHlwZW9mIHZhbHVlLnRvU3RyaW5nID09PSAnZnVuY3Rpb24nID8gdmFsdWUudG9TdHJpbmcoKSA6IEpTT04uc3RyaW5naWZ5KHZhbHVlKVxuICAgICAgICApO1xuXG4gICAgICAgIC8vICM0NyBQcmV2ZW50IHVzaW5nIGBoYXNPd25Qcm9wZXJ0eWAgYXMgYSBwcm9wZXJ0eSBuYW1lXG4gICAgICAgIGlmIChoYXNPd25Qcm9wZXJ0eShkaWN0LCBuYW1lKSkge1xuICAgICAgICAgICAgZGljdFtuYW1lXS5wdXNoKHZhbCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBkaWN0W25hbWVdID0gW3ZhbF07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBmdW5jdGlvbiBpc0FycmF5KHZhbCkge1xuICAgICAgICByZXR1cm4gISF2YWwgJiYgJ1tvYmplY3QgQXJyYXldJyA9PT0gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHZhbCk7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gaGFzT3duUHJvcGVydHkob2JqLCBwcm9wKSB7XG4gICAgICAgIHJldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwob2JqLCBwcm9wKTtcbiAgICB9XG5cbn0pKHR5cGVvZiBnbG9iYWwgIT09ICd1bmRlZmluZWQnID8gZ2xvYmFsIDogKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnID8gd2luZG93IDogdGhpcykpO1xuIiwiLy8gVGhlIG1vZHVsZSBjYWNoZVxudmFyIF9fd2VicGFja19tb2R1bGVfY2FjaGVfXyA9IHt9O1xuXG4vLyBUaGUgcmVxdWlyZSBmdW5jdGlvblxuZnVuY3Rpb24gX193ZWJwYWNrX3JlcXVpcmVfXyhtb2R1bGVJZCkge1xuXHQvLyBDaGVjayBpZiBtb2R1bGUgaXMgaW4gY2FjaGVcblx0aWYoX193ZWJwYWNrX21vZHVsZV9jYWNoZV9fW21vZHVsZUlkXSkge1xuXHRcdHJldHVybiBfX3dlYnBhY2tfbW9kdWxlX2NhY2hlX19bbW9kdWxlSWRdLmV4cG9ydHM7XG5cdH1cblx0Ly8gQ3JlYXRlIGEgbmV3IG1vZHVsZSAoYW5kIHB1dCBpdCBpbnRvIHRoZSBjYWNoZSlcblx0dmFyIG1vZHVsZSA9IF9fd2VicGFja19tb2R1bGVfY2FjaGVfX1ttb2R1bGVJZF0gPSB7XG5cdFx0Ly8gbm8gbW9kdWxlLmlkIG5lZWRlZFxuXHRcdC8vIG5vIG1vZHVsZS5sb2FkZWQgbmVlZGVkXG5cdFx0ZXhwb3J0czoge31cblx0fTtcblxuXHQvLyBFeGVjdXRlIHRoZSBtb2R1bGUgZnVuY3Rpb25cblx0X193ZWJwYWNrX21vZHVsZXNfX1ttb2R1bGVJZF0uY2FsbChtb2R1bGUuZXhwb3J0cywgbW9kdWxlLCBtb2R1bGUuZXhwb3J0cywgX193ZWJwYWNrX3JlcXVpcmVfXyk7XG5cblx0Ly8gUmV0dXJuIHRoZSBleHBvcnRzIG9mIHRoZSBtb2R1bGVcblx0cmV0dXJuIG1vZHVsZS5leHBvcnRzO1xufVxuXG4iLCIvLyBtb2R1bGUgZXhwb3J0cyBtdXN0IGJlIHJldHVybmVkIGZyb20gcnVudGltZSBzbyBlbnRyeSBpbmxpbmluZyBpcyBkaXNhYmxlZFxuLy8gc3RhcnR1cFxuLy8gTG9hZCBlbnRyeSBtb2R1bGUgYW5kIHJldHVybiBleHBvcnRzXG5yZXR1cm4gX193ZWJwYWNrX3JlcXVpcmVfXyg2MDcpO1xuIiwiX193ZWJwYWNrX3JlcXVpcmVfXy5nID0gKGZ1bmN0aW9uKCkge1xuXHRpZiAodHlwZW9mIGdsb2JhbFRoaXMgPT09ICdvYmplY3QnKSByZXR1cm4gZ2xvYmFsVGhpcztcblx0dHJ5IHtcblx0XHRyZXR1cm4gdGhpcyB8fCBuZXcgRnVuY3Rpb24oJ3JldHVybiB0aGlzJykoKTtcblx0fSBjYXRjaCAoZSkge1xuXHRcdGlmICh0eXBlb2Ygd2luZG93ID09PSAnb2JqZWN0JykgcmV0dXJuIHdpbmRvdztcblx0fVxufSkoKTsiXSwic291cmNlUm9vdCI6IiJ9

@@ -5,3 +5,3 @@ {

"private": false,
"version": "0.1.10",
"version": "0.1.11",
"author": "Bjorn Krols (https://formspark.io)",

@@ -8,0 +8,0 @@ "license": "MIT",

@@ -27,3 +27,3 @@ import "url-search-params-polyfill";

const addSubmitListener = () => {
if (document) {
if (typeof document !== "undefined") {
document.addEventListener("submit", (event) => {

@@ -30,0 +30,0 @@ try {

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc