Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

colorcat

Package Overview
Dependencies
Maintainers
1
Versions
60
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

colorcat - npm Package Compare versions

Comparing version 2.9.0 to 2.10.0

4

js/colorcat.js

@@ -106,3 +106,3 @@ // koffee 0.56.0

args = karg("\ncolorcat\n\n file . ? the file(s) to display or stdin . **\n fat . ? " + (gray(' bold')) + " . = false\n dim . = false\n ? |" + (dim(white(' ▼▼ dim'))) + " \n" + textColors + "\n" + bgrdColors + "\n ext . ? use syntax highlighting for *.ext\n pattern . ? colorize with pattern\n patternFile . ? colorize with patterns in file . - P\n skipEmpty . ? skip empty lines . = false\n lineNumbers . ? prepend output with line numbers . = false\n debug . - X . = false\n \nversion " + (require(__dirname + "/../package.json").version));
args = karg("\ncolorcat\n\n file . ? the file(s) to display or stdin . **\n fat . ? " + (gray(' bold')) + " . = false\n dim . ? " + (dim(white(' ▼▼ dim'))) + " . = false\n" + textColors + "\n" + bgrdColors + "\n ext . ? use syntax highlighting for *.ext\n pattern . ? colorize with pattern\n patternFile . ? colorize with patterns in file . - P\n skipEmpty . ? skip empty lines . = false\n lineNumbers . ? prepend output with line numbers . = false\n debug . - X . = false\n \nversion " + (require(__dirname + "/../package.json").version));

@@ -387,3 +387,3 @@ if (args.debug) {

//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3JjYXQuanMiLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXMiOlsiIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUE7Ozs7Ozs7QUFBQSxJQUFBLG1XQUFBO0lBQUE7O0FBVUEsSUFBQSxHQUFPLE9BQUEsQ0FBUSxNQUFSOztBQUNQLElBQUEsR0FBTyxPQUFBLENBQVEsTUFBUjs7QUFFUCxLQUFBLEdBQVEsSUFBSSxDQUFDOztBQUNiLEtBQUssQ0FBQyxTQUFOLENBQUE7O0FBRUEsT0FBQSxHQUFVOztBQVFWLElBQUEsR0FBTyxTQUFDLENBQUQsRUFBSSxDQUFKO0lBQ0gsQ0FBQSxHQUFJLE1BQUEsQ0FBTyxDQUFQO0FBQ0osV0FBTSxDQUFDLENBQUMsTUFBRixHQUFXLENBQWpCO1FBQXdCLENBQUEsSUFBSztJQUE3QjtXQUNBO0FBSEc7O0FBS1AsSUFBQSxHQUNJO0lBQUEsS0FBQSxFQUFTLEdBQVQ7SUFDQSxJQUFBLEVBQVMsR0FEVDtJQUVBLE9BQUEsRUFBUyxHQUZUO0lBR0EsSUFBQSxFQUFTLEdBSFQ7SUFJQSxNQUFBLEVBQVMsR0FKVDtJQUtBLEtBQUEsRUFBUyxHQUxUO0lBTUEsR0FBQSxFQUFTLEdBTlQ7OztBQVFKLFVBQUEsR0FBYTs7QUFDYixLQUFBLFNBQUE7O0lBRUksTUFBQSxHQUFTO0FBQ1QsWUFBTyxDQUFQO0FBQUEsYUFDUyxHQURUO0FBQUEsYUFDWSxHQURaO0FBQ1k7QUFEWjtBQUdRLGlCQUFTLDBCQUFUO2dCQUNJLE1BQUEsR0FBUyxDQUFBLEdBQUU7Z0JBQ1gsTUFBQSxJQUFVLEtBQU0sQ0FBQSxNQUFBLENBQU4sQ0FBYyxHQUFBLEdBQU0sTUFBTixHQUFlLEdBQTdCO0FBRmQ7QUFIUjtJQU9BLFVBQUEsSUFBYyxNQUFBLEdBQU8sQ0FBUCxHQUFTLGtCQUFULEdBQTJCLElBQUssQ0FBQSxDQUFBLENBQWhDLEdBQW1DLE9BQW5DLEdBQXlDLENBQUMsS0FBTSxDQUFBLENBQUEsQ0FBTixDQUFTLElBQVQsQ0FBRCxDQUF6QyxHQUF5RCxDQUFDLEdBQUEsQ0FBSSxLQUFNLENBQUEsQ0FBQSxDQUFOLENBQVMsSUFBVCxDQUFKLENBQUQsQ0FBekQsR0FBOEUsTUFBOUUsR0FBcUY7QUFWdkc7O0FBWUEsSUFBQSxHQUNJO0lBQUEsS0FBQSxFQUFXLEdBQVg7SUFDQSxPQUFBLEVBQVcsR0FEWDtJQUVBLFFBQUEsRUFBVyxHQUZYO0lBR0EsTUFBQSxFQUFXLEdBSFg7SUFJQSxTQUFBLEVBQVcsR0FKWDtJQUtBLE1BQUEsRUFBVyxHQUxYO0lBTUEsT0FBQSxFQUFXLEdBTlg7OztBQVFKLE1BQUEsR0FBUyxTQUFDLENBQUQ7SUFDTCxDQUFBLEdBQUksSUFBSyxDQUFBLENBQUE7QUFDVCxZQUFPLENBQVA7QUFBQSxhQUNTLEdBRFQ7bUJBQ2tCO0FBRGxCLGFBRVMsR0FGVDttQkFFa0I7QUFGbEI7bUJBR1MsQ0FBQSxHQUFFO0FBSFg7QUFGSzs7QUFPVCxVQUFBLEdBQWE7O0FBQ2IsS0FBQSxTQUFBOztJQUVJLE1BQUEsR0FBUztBQUNULFlBQU8sQ0FBUDtBQUFBLGFBQ1MsR0FEVDtBQUVRLGlCQUFTLDBCQUFUO2dCQUNJLE1BQUEsR0FBUyxHQUFBLEdBQUk7Z0JBQ2IsTUFBQSxHQUFTLEdBQUcsQ0FBQyxXQUFKLENBQUEsQ0FBQSxHQUFrQixDQUFDLENBQUEsR0FBRSxDQUFIO2dCQUMzQixNQUFBLElBQVUsS0FBTSxDQUFBLE1BQUEsQ0FBTixDQUFjLEtBQU0sQ0FBQSxNQUFBLENBQU4sQ0FBYyxHQUFBLEdBQU0sTUFBTixHQUFlLEdBQTdCLENBQWQ7QUFIZDtBQURDO0FBRFQsYUFPUyxHQVBUO0FBT1M7QUFQVDtBQVVRLGlCQUFTLDBCQUFUO2dCQUNJLE1BQUEsR0FBUyxDQUFBLEdBQUU7Z0JBQ1gsTUFBQSxHQUFTLENBQUMsQ0FBQyxXQUFGLENBQUEsQ0FBQSxHQUFnQixDQUFDLENBQUEsR0FBRSxDQUFIO2dCQUN6QixNQUFBLElBQVUsS0FBTSxDQUFBLE1BQUEsQ0FBTixDQUFjLEtBQU0sQ0FBQSxNQUFBLENBQU4sQ0FBYyxHQUFBLEdBQU0sTUFBTixHQUFlLEdBQTdCLENBQWQ7QUFIZDtBQVZSO0lBZUEsVUFBQSxJQUFjLE1BQUEsR0FBTyxDQUFQLEdBQVMsa0JBQVQsR0FBMkIsSUFBSyxDQUFBLENBQUEsQ0FBaEMsR0FBbUMsT0FBbkMsR0FBeUMsQ0FBQyxLQUFBLENBQU0sS0FBTSxDQUFBLE1BQUEsQ0FBTyxDQUFQLENBQUEsQ0FBTixDQUFnQixNQUFoQixDQUFOLENBQUQsQ0FBekMsR0FBMkUsTUFBM0UsR0FBa0Y7QUFsQnBHOztBQW9CQSxJQUFBLEdBQU8sSUFBQSxDQUFLLGdHQUFBLEdBS1UsQ0FBRyxJQUFBLENBQUssV0FBTCxDQUFILENBTFYsR0FLOEIsdUdBTDlCLEdBT1UsQ0FBQyxHQUFBLENBQUksS0FBQSxDQUFNLFVBQU4sQ0FBSixDQUFELENBUFYsR0FPZ0MsS0FQaEMsR0FRVixVQVJVLEdBUUMsSUFSRCxHQVNWLFVBVFUsR0FTQywwWUFURCxHQWlCRCxDQUFDLE9BQUEsQ0FBVyxTQUFELEdBQVcsa0JBQXJCLENBQXVDLENBQUMsT0FBekMsQ0FqQko7O0FBb0JQLElBQUcsSUFBSSxDQUFDLEtBQVI7SUFDSSxjQUFBLEdBQWlCLE9BQUEsQ0FBUSxtQkFBUjtJQUEyQixPQUFBLENBQzVDLEdBRDRDLENBQ3hDLGNBQUEsQ0FBZSxJQUFmLEVBQXFCO1FBQUEsTUFBQSxFQUFPLElBQVA7S0FBckIsQ0FEd0MsRUFEaEQ7OztBQVVBLFFBQUEsR0FBVyxTQUFDLEdBQUQsRUFBTSxLQUFOO0FBQ1AsUUFBQTtBQUFBO1FBQ0ksR0FBQSxHQUFNLEtBQUssQ0FBQyxHQUFOLENBQVUsU0FBQyxDQUFEO21CQUFPLE1BQUEsQ0FBTyxDQUFQLENBQVMsQ0FBQyxLQUFWLENBQWdCLEdBQWhCO1FBQVAsQ0FBVjtRQUNOLEdBQUEsR0FBTSxHQUFHLENBQUMsSUFBSixDQUFBO1FBRU4sSUFBRyxDQUFJLENBQUMsYUFBVSxHQUFWLEVBQUEsTUFBQSxNQUFELENBQVA7QUFDSSxpQkFBQSxxQ0FBQTs7Z0JBQ0ksSUFBRyxDQUFDLENBQUMsTUFBRixDQUFTLENBQVQsRUFBVyxDQUFYLENBQUEsS0FBaUIsSUFBcEI7b0JBQ0ksR0FBQSxHQUFNLENBQUMsQ0FBQyxNQUFGLENBQVMsQ0FBVDtvQkFDTixHQUFBLEdBQU0sR0FBRyxDQUFDLE1BQUosQ0FBVyxTQUFDLENBQUQ7K0JBQU8sQ0FBQyxDQUFDLE1BQUYsQ0FBUyxDQUFULEVBQVcsQ0FBWCxDQUFBLEtBQWlCO29CQUF4QixDQUFYO0FBQ04sMEJBSEo7O0FBREosYUFESjs7QUFPQSxhQUFBLHVDQUFBOztZQUNJLElBQUcsZ0JBQUg7Z0JBQ0ksR0FBQSxHQUFNLEtBQU0sQ0FBQSxDQUFBLENBQU4sQ0FBUyxHQUFULEVBRFY7YUFBQSxNQUVLLElBQUcsd0JBQUg7Z0JBQ0QsR0FBQSxHQUFNLEtBQU0sQ0FBQSxNQUFBLENBQU8sQ0FBUCxDQUFBLENBQU4sQ0FBZ0IsR0FBaEIsRUFETDs7QUFIVCxTQVhKO0tBQUEsYUFBQTtRQWdCTTtRQUNILE9BQUEsQ0FBQyxLQUFELENBQU8sR0FBUCxFQWpCSDs7V0FrQkE7QUFuQk87O0FBMkJYLE9BQUEsR0FBVTs7QUFFVixNQUFBLEdBQVMsTUFBTSxDQUFDLE1BQVAsQ0FBYyxFQUFkLEVBQWtCLElBQWxCOztBQUNULE1BQUEsR0FBUyxNQUFNLENBQUMsTUFBUCxDQUFjLE1BQWQsRUFBc0IsSUFBdEI7O0FBQ1QsTUFBQSxHQUFTLEtBQUssQ0FBQyxRQUFRLENBQUMsTUFBZixDQUFzQixLQUFLLENBQUMsUUFBNUI7O0FBQ1QsTUFBQSxHQUFTLEtBQUssQ0FBQyxTQUFTLENBQUMsTUFBaEIsQ0FBdUIsS0FBSyxDQUFDLFNBQTdCOztBQUNULE1BQUEsR0FBUyxNQUFNLENBQUMsSUFBUCxDQUFZLElBQVosQ0FBaUIsQ0FBQyxNQUFsQixDQUF5QixNQUFNLENBQUMsSUFBUCxDQUFZLElBQVosQ0FBekI7O0FBQ1QsTUFBQSxHQUFTLE1BQU0sQ0FBQyxNQUFQLENBQWMsTUFBZDs7QUFDVCxNQUFBLEdBQVM7O0FBQ1QsS0FBQSxXQUFBOztJQUF1QixNQUFPLENBQUEsQ0FBQSxDQUFQLEdBQVk7QUFBbkM7O0FBQ0EsTUFBTSxDQUFDLENBQVAsR0FBVzs7QUFDWCxNQUFNLENBQUMsQ0FBUCxHQUFXOztBQUNYLE1BQU0sQ0FBQyxDQUFQLEdBQVc7O0FBQ1gsTUFBTSxDQUFDLENBQVAsR0FBVzs7QUFDWCxNQUFNLENBQUMsQ0FBUCxHQUFXOztBQUNYLE1BQU0sQ0FBQyxDQUFQLEdBQVc7O0FBRVgsTUFBQSxHQUFTLFNBQUMsQ0FBRDtBQUVMLFFBQUE7SUFBQSxJQUFBLEdBQU8sU0FBQyxDQUFEO0FBQ0gsWUFBQTtRQUFBLFVBQUcsQ0FBRSxDQUFBLENBQUEsQ0FBRixFQUFBLGFBQVEsTUFBUixFQUFBLEdBQUEsTUFBSDtZQUNJLFdBQUcsQ0FBRSxZQUFGLEVBQUEsYUFBVyxNQUFYLEVBQUEsSUFBQSxNQUFIO2dCQUNJLElBQUcsQ0FBQyxDQUFDLE1BQUYsS0FBWSxDQUFmO0FBQXNCLDJCQUFPLEVBQTdCO2lCQUFBLE1BQUE7QUFDc0IsMkJBQU8sQ0FBRSxZQUFGLEdBQVUsR0FBVixHQUFnQixJQUFBLENBQUssQ0FBRSxTQUFQLEVBRDdDO2lCQURKO2FBREo7O1FBS0EsSUFBRyx3Q0FBQSxJQUFjLGFBQVMsTUFBVCxFQUFBLENBQUEsS0FBakI7WUFDSSxDQUFBLEdBQUksQ0FBQyxDQUFDLEtBQUYsQ0FBUSxLQUFSO1lBQ0osSUFBRyxNQUFPLENBQUEsQ0FBRSxDQUFBLENBQUEsQ0FBRyxDQUFBLENBQUEsQ0FBTCxDQUFWO2dCQUNJLElBQUcsQ0FBRSxDQUFBLENBQUEsQ0FBRSxDQUFDLE1BQUwsS0FBZSxDQUFsQjtvQkFBeUIsQ0FBQSxHQUFJLE1BQU8sQ0FBQSxDQUFFLENBQUEsQ0FBQSxDQUFHLENBQUEsQ0FBQSxDQUFMLEVBQXBDO2lCQUFBLE1BQUE7b0JBQ3lCLENBQUEsR0FBSSxNQUFPLENBQUEsQ0FBRSxDQUFBLENBQUEsQ0FBRyxDQUFBLENBQUEsQ0FBTCxDQUFQLEdBQWtCLEdBQWxCLEdBQXdCLElBQUEsQ0FBSyxDQUFFLENBQUEsQ0FBQSxDQUFHLFNBQVYsRUFEckQ7aUJBREo7YUFBQSxNQUFBO2dCQUtJLENBQUEsR0FBSSxHQUxSOztZQU1BLElBQXFCLENBQUMsQ0FBQyxNQUFGLEdBQVcsQ0FBaEM7Z0JBQUEsQ0FBQSxJQUFLLEtBQUEsR0FBUSxDQUFFLENBQUEsQ0FBQSxFQUFmOzttQkFDQSxFQVRKO1NBQUEsTUFBQTttQkFXSSxFQVhKOztJQU5HO0FBbUJQLFNBQUEsUUFBQTs7UUFDSSxJQUFHLEdBQUEsWUFBZSxLQUFsQjtZQUNJLENBQUUsQ0FBQSxHQUFBLENBQUYsR0FBUyxHQUFHLENBQUMsR0FBSixDQUFRLFNBQUMsR0FBRDt1QkFBUyxJQUFBLENBQUssR0FBRyxDQUFDLEtBQUosQ0FBVSxHQUFWLENBQWUsQ0FBQSxDQUFBLENBQXBCO1lBQVQsQ0FBUixFQURiO1NBQUEsTUFBQTtZQUdJLENBQUUsQ0FBQSxHQUFBLENBQUYsR0FBUyxJQUFBLENBQUssR0FBTCxFQUhiOztBQURKO1dBS0E7QUExQks7O0FBa0NULFNBQUEsR0FBWSxTQUFDLENBQUQ7V0FBTztBQUFQOztBQUNaLFNBQUEsR0FBWSxTQUFDLENBQUQ7V0FBTztBQUFQOztBQUVaO0FBQUEsS0FBQSxxQ0FBQTs7SUFDSSxJQUFHLElBQUssQ0FBQSxDQUFBLENBQVI7UUFDSSxTQUFBLEdBQVksS0FBTSxDQUFBLENBQUEsRUFEdEI7O0FBREo7O0FBSUE7QUFBQSxLQUFBLHdDQUFBOztJQUNJLElBQUcsSUFBSyxDQUFBLENBQUEsQ0FBUjtRQUNJLFNBQUEsR0FBWSxLQUFNLENBQUEsTUFBQSxDQUFPLENBQVAsQ0FBQSxFQUR0Qjs7QUFESjs7QUFJQSxJQUFHLElBQUksQ0FBQyxHQUFSO0lBQ0ksT0FBQSxHQUFVLFNBQUMsQ0FBRDtlQUFPLElBQUEsQ0FBSyxTQUFBLENBQVUsQ0FBVixDQUFMO0lBQVAsRUFEZDtDQUFBLE1BQUE7SUFHSSxPQUFBLEdBQVUsVUFIZDs7O0FBS0EsSUFBRyxJQUFJLENBQUMsR0FBUjtJQUNJLE9BQUEsR0FBVSxTQUFDLENBQUQ7ZUFBTyxHQUFBLENBQUksT0FBQSxDQUFRLENBQVIsQ0FBSjtJQUFQLEVBRGQ7Q0FBQSxNQUFBO0lBR0ksT0FBQSxHQUFVLFFBSGQ7OztBQVdBLFdBQUEsR0FBYyxTQUFBO0FBRVYsUUFBQTtJQUFBLFVBQUEsR0FBYSxTQUFDLENBQUQ7QUFDVCxZQUFBO1FBQUEsRUFBQSxHQUFLLE9BQUEsQ0FBUSxJQUFSO1FBQ0wsSUFBRyxFQUFFLENBQUMsVUFBSCxDQUFjLENBQWQsQ0FBSDtZQUNJLFNBQUEsR0FBWSxPQUFBLENBQVEsY0FBUjttQkFDWixNQUFBLENBQU8sU0FBQSxDQUFVLENBQVYsQ0FBUCxFQUZKO1NBQUEsTUFBQTttQkFJRyxPQUFBLENBQUMsS0FBRCxDQUFPLDJCQUFBLEdBQTRCLENBQW5DLEVBSkg7O0lBRlM7SUFRYixJQUFHLG9CQUFIO1FBQ0ksVUFBQSxHQUFhLE9BQUEsQ0FBUSxlQUFSO1FBQ2IsUUFBQSxHQUFXLE1BQUEsQ0FBTyxVQUFBLENBQVcsSUFBSSxDQUFDLE9BQWhCLENBQVAsRUFGZjtLQUFBLE1BSUssSUFBRyx3QkFBSDtRQUNELFFBQUEsR0FBVyxVQUFBLENBQVcsSUFBSSxDQUFDLFdBQWhCLEVBRFY7O0lBR0wsSUFBTyxnQkFBUDtBQUNJLGVBQU8sU0FBQyxLQUFEO21CQUFXLFNBQUEsQ0FBVSxPQUFBLENBQVEsS0FBUixDQUFWO1FBQVgsRUFEWDs7SUFHQSxNQUFBLEdBQVMsT0FBQSxDQUFRLFVBQVI7SUFDVCxZQUFBLEdBQWUsTUFBTSxDQUFDLE1BQVAsQ0FBYyxRQUFkO0lBRWYsT0FBQSxHQUFVLFNBQUMsS0FBRDtBQUNOLFlBQUE7UUFBQSxLQUFBLEdBQVEsS0FBSyxDQUFDLEtBQU4sQ0FBWSxLQUFaO1FBQ1IsSUFBQSxHQUFPLE1BQU0sQ0FBQyxNQUFQLENBQWMsWUFBZCxFQUE0QixLQUE1QjtRQUNQLElBQUEsR0FBTyxNQUFNLENBQUMsT0FBUCxDQUFlLElBQWY7UUFFUCxJQUFHLElBQUksQ0FBQyxNQUFSO0FBQ0ksaUJBQVUsd0ZBQVY7Z0JBQ0ksQ0FBQSxHQUFJLElBQUssQ0FBQSxFQUFBO2dCQUNULEtBQUEsR0FBUSxRQUFBLENBQVMsQ0FBQyxDQUFDLEtBQVgsRUFBa0IsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFSLENBQUEsQ0FBbEI7Z0JBQ1IsS0FBQSxHQUFRLEtBQUssQ0FBQyxLQUFOLENBQVksQ0FBWixFQUFlLENBQUMsQ0FBQyxLQUFqQixDQUFBLEdBQTBCLEtBQTFCLEdBQWtDLEtBQUssQ0FBQyxLQUFOLENBQVksQ0FBQyxDQUFDLEtBQUYsR0FBUSxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQTVCO0FBSDlDLGFBREo7O2VBS0E7SUFWTTtBQVlWLFdBQU87QUFuQ0c7O0FBMkNkLFdBQUEsR0FBYyxTQUFDLE1BQUQsRUFBUyxPQUFUO0FBRVYsUUFBQTtJQUFBLE1BQUEsR0FBUztXQUNULE1BQU0sQ0FBQyxFQUFQLENBQVUsTUFBVixFQUFrQixTQUFDLEtBQUQ7QUFFZCxZQUFBO1FBQUEsS0FBQSxHQUFRLEtBQUssQ0FBQyxLQUFOLENBQVksSUFBWjtRQUNSLFVBQUEsR0FBYSxLQUFLLENBQUMsR0FBTixDQUFVLFNBQUMsQ0FBRDttQkFBTyxPQUFBLENBQVEsQ0FBUjtRQUFQLENBQVY7UUFFYixJQUFHLElBQUksQ0FBQyxTQUFSO1lBQ0ksVUFBQSxHQUFhLFVBQVUsQ0FBQyxNQUFYLENBQWtCLFNBQUMsQ0FBRDt1QkFDM0IsS0FBSyxDQUFDLEtBQU4sQ0FBWSxDQUFaLENBQWMsQ0FBQyxNQUFmLEdBQXdCO1lBREcsQ0FBbEIsRUFEakI7O1FBSUEsSUFBRyxJQUFJLENBQUMsV0FBUjtZQUNJLFVBQUEsR0FBYSxVQUFVLENBQUMsR0FBWCxDQUFlLFNBQUMsQ0FBRDtnQkFDeEIsTUFBQSxJQUFVO0FBQ1YsdUJBQU8sSUFBQSxDQUFLLEdBQUEsQ0FBSSxJQUFBLENBQUssRUFBQSxHQUFHLE1BQVIsRUFBaUIsQ0FBakIsQ0FBSixDQUFMLENBQUEsR0FBZ0M7WUFGZixDQUFmLEVBRGpCOztlQUtBLE9BQUEsQ0FBQSxHQUFBLENBQUksVUFBVSxDQUFDLElBQVgsQ0FBZ0IsSUFBaEIsQ0FBSjtJQWRjLENBQWxCO0FBSFU7O0FBbUJkLFlBQUEsR0FBZSxTQUFDLE1BQUQsRUFBUyxHQUFUO0FBRVgsUUFBQTtJQUFBLE1BQUEsR0FBUztXQUNULE1BQU0sQ0FBQyxFQUFQLENBQVUsTUFBVixFQUFrQixTQUFDLEtBQUQ7QUFFZCxZQUFBO1FBQUEsS0FBQSxHQUFRLEtBQUssQ0FBQyxLQUFOLENBQVksSUFBWjtRQUNSLFVBQUEsR0FBYTtRQUViLElBQUEsR0FBTyxJQUFJLENBQUMsT0FBTCxDQUFhLEtBQWIsRUFBb0IsR0FBcEI7QUFDUCxhQUFhLGtHQUFiO1lBQ0ksVUFBVSxDQUFDLElBQVgsQ0FBZ0IsSUFBSSxDQUFDLGNBQUwsQ0FBb0I7Z0JBQUEsTUFBQSxFQUFPLElBQUssQ0FBQSxLQUFBLENBQVo7Z0JBQW9CLE1BQUEsRUFBTyxJQUFJLENBQUMsV0FBTCxJQUFxQixLQUFBLEdBQU0sQ0FBdEQ7YUFBcEIsQ0FBaEI7QUFESjtRQUdBLElBQUcsSUFBSSxDQUFDLFNBQVI7WUFDSSxVQUFBLEdBQWEsVUFBVSxDQUFDLE1BQVgsQ0FBa0IsU0FBQyxDQUFEO3VCQUMzQixLQUFLLENBQUMsS0FBTixDQUFZLENBQVosQ0FBYyxDQUFDLE1BQWYsR0FBd0I7WUFERyxDQUFsQixFQURqQjs7ZUFJQSxPQUFBLENBQUEsR0FBQSxDQUFJLFVBQVUsQ0FBQyxJQUFYLENBQWdCLElBQWhCLENBQUo7SUFiYyxDQUFsQjtBQUhXOzs7QUFrQmY7Ozs7Ozs7O0FBUUEsSUFBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQWI7SUFFSSxLQUFBLEdBQVEsT0FBQSxDQUFRLFFBQVI7QUFFUjtBQUFBLFNBQUEsd0NBQUE7O1FBRUksSUFBQSxHQUFPLEtBQUssQ0FBQyxRQUFOLENBQWUsSUFBZjtRQUFtQixPQUFBLENBRTFCLEdBRjBCLENBRXRCLElBQUksQ0FBQyxNQUFMLENBQVk7WUFBQSxJQUFBLEVBQUssSUFBTDtZQUFXLEdBQUEsRUFBSSxLQUFLLENBQUMsR0FBTixDQUFVLElBQVYsQ0FBZjtZQUFnQyxPQUFBLEVBQVEsSUFBSSxDQUFDLFdBQTdDO1NBQVosQ0FGc0I7QUFGOUIsS0FKSjtDQUFBLE1BQUE7SUFZSSxPQUFPLENBQUMsS0FBSyxDQUFDLFdBQWQsQ0FBMEIsTUFBMUI7SUFFQSxJQUFHLElBQUksQ0FBQyxHQUFMLElBQWEsUUFBQSxJQUFJLENBQUMsR0FBTCxFQUFBLGFBQVksSUFBSSxDQUFDLElBQWpCLEVBQUEsSUFBQSxNQUFBLENBQWhCO1FBQ0ksWUFBQSxDQUFhLE9BQU8sQ0FBQyxLQUFyQixFQUE0QixJQUFJLENBQUMsR0FBakMsRUFESjtLQUFBLE1BQUE7UUFHSSxXQUFBLENBQVksT0FBTyxDQUFDLEtBQXBCLEVBQTJCLFdBQUEsQ0FBQSxDQUEzQixFQUhKO0tBZEoiLCJzb3VyY2VzQ29udGVudCI6WyIjIyNcbiAwMDAwMDAwICAgMDAwMDAwMCAgIDAwMCAgICAgICAwMDAwMDAwICAgMDAwMDAwMDAgICAgMDAwMDAwMCAgIDAwMDAwMDAgICAwMDAwMDAwMDBcbjAwMCAgICAgICAwMDAgICAwMDAgIDAwMCAgICAgIDAwMCAgIDAwMCAgMDAwICAgMDAwICAwMDAgICAgICAgMDAwICAgMDAwICAgICAwMDAgICBcbjAwMCAgICAgICAwMDAgICAwMDAgIDAwMCAgICAgIDAwMCAgIDAwMCAgMDAwMDAwMCAgICAwMDAgICAgICAgMDAwMDAwMDAwICAgICAwMDAgICBcbjAwMCAgICAgICAwMDAgICAwMDAgIDAwMCAgICAgIDAwMCAgIDAwMCAgMDAwICAgMDAwICAwMDAgICAgICAgMDAwICAgMDAwICAgICAwMDAgICBcbiAwMDAwMDAwICAgMDAwMDAwMCAgIDAwMDAwMDAgICAwMDAwMDAwICAgMDAwICAgMDAwICAgMDAwMDAwMCAgMDAwICAgMDAwICAgICAwMDAgICBcbiMjI1xuXG4jIOKWuHN0YXJ0ICdjb2xvcmNhdCdcblxua2xvciA9IHJlcXVpcmUgJ2tsb3InXG5rYXJnID0gcmVxdWlyZSAna2FyZydcblxua29sb3IgPSBrbG9yLmtvbG9yXG5rb2xvci5nbG9iYWxpemUoKVxuXG5ORVdMSU5FID0gL1xccj9cXG4vXG5cbiMgIDAwMDAwMDAgICAwMDAwMDAwMCAgICAwMDAwMDAwICAgIDAwMDAwMDBcbiMgMDAwICAgMDAwICAwMDAgICAwMDAgIDAwMCAgICAgICAgMDAwICAgICBcbiMgMDAwMDAwMDAwICAwMDAwMDAwICAgIDAwMCAgMDAwMCAgMDAwMDAwMCBcbiMgMDAwICAgMDAwICAwMDAgICAwMDAgIDAwMCAgIDAwMCAgICAgICAwMDBcbiMgMDAwICAgMDAwICAwMDAgICAwMDAgICAwMDAwMDAwICAgMDAwMDAwMCBcblxucnBhZCA9IChzLCBsKSAtPlxuICAgIHMgPSBTdHJpbmcgc1xuICAgIHdoaWxlIHMubGVuZ3RoIDwgbCB0aGVuIHMgKz0gJyAnXG4gICAgc1xuXG50ZXh0ID0gXG4gICAgd2hpdGU6ICAgJ3cnXG4gICAgY3lhbjogICAgJ2MnXG4gICAgbWFnZW50YTogJ20nXG4gICAgYmx1ZTogICAgJ2InXG4gICAgeWVsbG93OiAgJ3knXG4gICAgZ3JlZW46ICAgJ2cnXG4gICAgcmVkOiAgICAgJ3InIFxuICAgICAgICBcbnRleHRDb2xvcnMgPSAnJ1xuZm9yIGMscyBvZiB0ZXh0XG4gICAgXG4gICAgc2hvcnRzID0gJydcbiAgICBzd2l0Y2ggc1xuICAgICAgICB3aGVuICd4Jyd6JyB0aGVuXG4gICAgICAgIGVsc2VcbiAgICAgICAgICAgIGZvciBpIGluIFsxLi44XVxuICAgICAgICAgICAgICAgIHNob3J0ZiA9IHMraVxuICAgICAgICAgICAgICAgIHNob3J0cyArPSBrb2xvcltzaG9ydGZdICcgJyArIHNob3J0ZiArICcgJ1xuICAgIFxuICAgIHRleHRDb2xvcnMgKz0gXCIgICAgI3tjfSAgLiA9IGZhbHNlIC4gLSAje3RleHRbY119IC4gPyAje2tvbG9yW2NdICfilojilognfSN7ZGltIGtvbG9yW2NdICfilojilognfSN7c2hvcnRzfVxcblwiXG5cbmJncmQgPSBcbiAgICBiZ1JlZDogICAgICdSJyBcbiAgICBiZ0dyZWVuOiAgICdHJ1xuICAgIGJnWWVsbG93OiAgJ1knXG4gICAgYmdCbHVlOiAgICAnQidcbiAgICBiZ01hZ2VudGE6ICdNJ1xuICAgIGJnQ3lhbjogICAgJ0MnXG4gICAgYmdXaGl0ZTogICAnVydcbiAgICBcbmJnZnVuYyA9IChjKSAtPlxuICAgIHMgPSBiZ3JkW2NdXG4gICAgc3dpdGNoIHNcbiAgICAgICAgd2hlbiAnWicgdGhlbiAnVzInXG4gICAgICAgIHdoZW4gJ1cnIHRoZW4gJ1c0J1xuICAgICAgICBlbHNlIHMrNFxuICAgIFxuYmdyZENvbG9ycyA9ICcnXG5mb3IgYyxzIG9mIGJncmRcbiAgICBcbiAgICBzaG9ydHMgPSAnJ1xuICAgIHN3aXRjaCBzXG4gICAgICAgIHdoZW4gJ1cnXG4gICAgICAgICAgICBmb3IgaSBpbiBbMS4uOF1cbiAgICAgICAgICAgICAgICBzaG9ydGIgPSAnVycraVxuICAgICAgICAgICAgICAgIHNob3J0ZiA9ICd3Jy50b0xvd2VyQ2FzZSgpKyg5LWkpXG4gICAgICAgICAgICAgICAgc2hvcnRzICs9IGtvbG9yW3Nob3J0Zl0ga29sb3Jbc2hvcnRiXSAnICcgKyBzaG9ydGIgKyAnICdcbiAgICAgICAgICAgIFxuICAgICAgICB3aGVuICdaJyB0aGVuXG4gICAgICAgICAgICBcbiAgICAgICAgZWxzZVxuICAgICAgICAgICAgZm9yIGkgaW4gWzEuLjhdXG4gICAgICAgICAgICAgICAgc2hvcnRiID0gcytpXG4gICAgICAgICAgICAgICAgc2hvcnRmID0gcy50b0xvd2VyQ2FzZSgpKyg5LWkpXG4gICAgICAgICAgICAgICAgc2hvcnRzICs9IGtvbG9yW3Nob3J0Zl0ga29sb3Jbc2hvcnRiXSAnICcgKyBzaG9ydGIgKyAnICdcbiAgICBcbiAgICBiZ3JkQ29sb3JzICs9IFwiICAgICN7Y30gIC4gPSBmYWxzZSAuIC0gI3tiZ3JkW2NdfSAuID8gI3tyZXNldChrb2xvcltiZ2Z1bmMgY10oXCIgICAgXCIpKX0je3Nob3J0c31cXG5cIlxuICAgICAgICBcbmFyZ3MgPSBrYXJnIFwiXCJcIlxuXG5jb2xvcmNhdFxuXG4gICAgZmlsZSAgICAgICAgIC4gPyB0aGUgZmlsZShzKSB0byBkaXNwbGF5IG9yIHN0ZGluIC4gKipcbiAgICBmYXQgICAgICAgICAgLiA/ICN7ICBncmF5ICcgICAgIGJvbGQnfSAgICAgICAgLiA9IGZhbHNlXG4gICAgZGltICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC4gPSBmYWxzZVxuICAgICAgICA/ICAgICAgICAgICB8I3tkaW0gd2hpdGUgJyAg4pa84pa8IGRpbSd9IFxuI3t0ZXh0Q29sb3JzfVxuI3tiZ3JkQ29sb3JzfVxuICAgIGV4dCAgICAgICAgICAuID8gdXNlIHN5bnRheCBoaWdobGlnaHRpbmcgZm9yICouZXh0XG4gICAgcGF0dGVybiAgICAgIC4gPyBjb2xvcml6ZSB3aXRoIHBhdHRlcm5cbiAgICBwYXR0ZXJuRmlsZSAgLiA/IGNvbG9yaXplIHdpdGggcGF0dGVybnMgaW4gZmlsZSAgIC4gLSBQXG4gICAgc2tpcEVtcHR5ICAgIC4gPyBza2lwIGVtcHR5IGxpbmVzICAgICAgICAgICAgICAgICAgICAgICAuID0gZmFsc2VcbiAgICBsaW5lTnVtYmVycyAgLiA/IHByZXBlbmQgb3V0cHV0IHdpdGggbGluZSBudW1iZXJzICAgICAgIC4gPSBmYWxzZVxuICAgIGRlYnVnICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLiAtIFggLiA9IGZhbHNlXG4gICAgXG52ZXJzaW9uICAgI3tyZXF1aXJlKFwiI3tfX2Rpcm5hbWV9Ly4uL3BhY2thZ2UuanNvblwiKS52ZXJzaW9ufVxuXCJcIlwiXG5cbmlmIGFyZ3MuZGVidWdcbiAgICBub29uX3N0cmluZ2lmeSA9IHJlcXVpcmUgJ25vb24vanMvc3RyaW5naWZ5J1xuICAgIGxvZyBub29uX3N0cmluZ2lmeSBhcmdzLCBjb2xvcnM6dHJ1ZVxuICAgIFxuIyAgMDAwMDAwMCAgIDAwMDAwMDAgICAwMDAgICAgICAgMDAwMDAwMCAgIDAwMDAwMDAwICAgMDAwICAwMDAwMDAwICAwMDAwMDAwMFxuIyAwMDAgICAgICAgMDAwICAgMDAwICAwMDAgICAgICAwMDAgICAwMDAgIDAwMCAgIDAwMCAgMDAwICAgICAwMDAgICAwMDAgICAgIFxuIyAwMDAgICAgICAgMDAwICAgMDAwICAwMDAgICAgICAwMDAgICAwMDAgIDAwMDAwMDAgICAgMDAwICAgIDAwMCAgICAwMDAwMDAwIFxuIyAwMDAgICAgICAgMDAwICAgMDAwICAwMDAgICAgICAwMDAgICAwMDAgIDAwMCAgIDAwMCAgMDAwICAgMDAwICAgICAwMDAgICAgIFxuIyAgMDAwMDAwMCAgIDAwMDAwMDAgICAwMDAwMDAwICAgMDAwMDAwMCAgIDAwMCAgIDAwMCAgMDAwICAwMDAwMDAwICAwMDAwMDAwMFxuXG5jb2xvcml6ZSA9IChzdHIsIHN0YWNrKSAtPlxuICAgIHRyeVxuICAgICAgICBzcGwgPSBzdGFjay5tYXAgKHMpIC0+IFN0cmluZyhzKS5zcGxpdCAnLidcbiAgICAgICAgc3BsID0gc3BsLmZsYXQoKVxuXG4gICAgICAgIGlmIG5vdCAoJ2tlZXAnIGluIHNwbClcbiAgICAgICAgICAgIGZvciBzIGluIHNwbFxuICAgICAgICAgICAgICAgIGlmIHMuc3Vic3RyKDAsMikgPT0gJ3M6J1xuICAgICAgICAgICAgICAgICAgICBzdHIgPSBzLnN1YnN0cigyKVxuICAgICAgICAgICAgICAgICAgICBzcGwgPSBzcGwuZmlsdGVyIChzKSAtPiBzLnN1YnN0cigwLDIpICE9ICdzOidcbiAgICAgICAgICAgICAgICAgICAgYnJlYWtcblxuICAgICAgICBmb3IgbiBpbiBzcGxcbiAgICAgICAgICAgIGlmIGtvbG9yW25dP1xuICAgICAgICAgICAgICAgIHN0ciA9IGtvbG9yW25dIHN0clxuICAgICAgICAgICAgZWxzZSBpZiBrb2xvcltiZ2Z1bmMgbl0/XG4gICAgICAgICAgICAgICAgc3RyID0ga29sb3JbYmdmdW5jIG5dIHN0clxuICAgIGNhdGNoIGVyclxuICAgICAgICBlcnJvciBlcnJcbiAgICBzdHJcblxuIyAwMDAwMDAwMCAgMDAwICAgMDAwICAwMDAwMDAwMCAgICAwMDAwMDAwICAgMDAwICAgMDAwICAwMDAwMDAwICBcbiMgMDAwICAgICAgICAwMDAgMDAwICAgMDAwICAgMDAwICAwMDAgICAwMDAgIDAwMDAgIDAwMCAgMDAwICAgMDAwXG4jIDAwMDAwMDAgICAgIDAwMDAwICAgIDAwMDAwMDAwICAgMDAwMDAwMDAwICAwMDAgMCAwMDAgIDAwMCAgIDAwMFxuIyAwMDAgICAgICAgIDAwMCAwMDAgICAwMDAgICAgICAgIDAwMCAgIDAwMCAgMDAwICAwMDAwICAwMDAgICAwMDBcbiMgMDAwMDAwMDAgIDAwMCAgIDAwMCAgMDAwICAgICAgICAwMDAgICAwMDAgIDAwMCAgIDAwMCAgMDAwMDAwMCAgXG5cbnJlZ2V4ZXMgPSBbXVxuXG5jbHJsc3QgPSBPYmplY3QuYXNzaWduIHt9LCBiZ3JkXG5jbHJsc3QgPSBPYmplY3QuYXNzaWduIGNscmxzdCwgdGV4dFxuZmJnbm1zID0ga29sb3IuRkdfTkFNRVMuY29uY2F0IGtvbG9yLkJHX05BTUVTXG5mYmdjb2wgPSBrb2xvci5GR19DT0xPUlMuY29uY2F0IGtvbG9yLkJHX0NPTE9SU1xuY25hbWVzID0gT2JqZWN0LmtleXModGV4dCkuY29uY2F0IE9iamVjdC5rZXlzKGJncmQpXG5jbmFtZXMgPSBjbmFtZXMuY29uY2F0IGZiZ25tc1xuaW52ZXJ0ID0ge31cbmZvciBrLHYgb2YgY2xybHN0IHRoZW4gaW52ZXJ0W3ZdID0ga1xuaW52ZXJ0LmYgPSAnYm9sZCdcbmludmVydC5kID0gJ2RpbSdcbmludmVydC5rID0gJ2tlZXAnXG5pbnZlcnQueCA9ICdncmF5J1xuaW52ZXJ0LnogPSAndzInXG5pbnZlcnQuWiA9ICdXMSdcblxuZXhwYW5kID0gKGUpIC0+XG4gICAgXG4gICAgZXhwZCA9IChjKSAtPlxuICAgICAgICBpZiBjWzBdIGluIGZiZ2NvbFxuICAgICAgICAgICAgaWYgY1swLi4xXSBpbiBmYmdubXNcbiAgICAgICAgICAgICAgICBpZiBjLmxlbmd0aCA9PSAyIHRoZW4gcmV0dXJuIGNcbiAgICAgICAgICAgICAgICBlbHNlICAgICAgICAgICAgICAgICAgcmV0dXJuIGNbMC4uMV0gKyAnLicgKyBleHBkIGNbMi4uXVxuICAgICAgICAgICAgICAgIFxuICAgICAgICBpZiBjPy5zcGxpdD8gYW5kIGMgbm90IGluIGNuYW1lc1xuICAgICAgICAgICAgcyA9IGMuc3BsaXQgJ3NcXDonXG4gICAgICAgICAgICBpZiBpbnZlcnRbc1swXVswXV1cbiAgICAgICAgICAgICAgICBpZiBzWzBdLmxlbmd0aCA9PSAxIHRoZW4gciA9IGludmVydFtzWzBdWzBdXVxuICAgICAgICAgICAgICAgIGVsc2UgICAgICAgICAgICAgICAgICAgICByID0gaW52ZXJ0W3NbMF1bMF1dICsgJy4nICsgZXhwZCBzWzBdWzEuLl1cbiAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAjIGVycm9yICdkYWZ1az8nLCBjLCBzXG4gICAgICAgICAgICAgICAgciA9ICcnXG4gICAgICAgICAgICByICs9ICcuczonICsgc1sxXSBpZiBzLmxlbmd0aCA+IDFcbiAgICAgICAgICAgIHJcbiAgICAgICAgZWxzZVxuICAgICAgICAgICAgY1xuICAgIFxuICAgIGZvciBwYXQsY2xzIG9mIGVcbiAgICAgICAgaWYgY2xzIGluc3RhbmNlb2YgQXJyYXlcbiAgICAgICAgICAgIGVbcGF0XSA9IGNscy5tYXAgKGNscikgLT4gZXhwZCBjbHIuc3BsaXQoJy4nKVswXVxuICAgICAgICBlbHNlXG4gICAgICAgICAgICBlW3BhdF0gPSBleHBkIGNsc1xuICAgIGUgXG5cbiMgMDAwMDAwMDAgIDAwMCAgIDAwMCAgMDAwICAgMDAwICAwMDAgICAwMDAgIDAwMCAgIDAwMFxuIyAwMDAgICAgICAgMDAwICAgMDAwICAwMDAwICAwMDAgIDAwMCAgMDAwICAgIDAwMCAwMDAgXG4jIDAwMDAwMCAgICAwMDAgICAwMDAgIDAwMCAwIDAwMCAgMDAwMDAwMCAgICAgIDAwMDAwICBcbiMgMDAwICAgICAgIDAwMCAgIDAwMCAgMDAwICAwMDAwICAwMDAgIDAwMCAgICAgIDAwMCAgIFxuIyAwMDAgICAgICAgIDAwMDAwMDAgICAwMDAgICAwMDAgIDAwMCAgIDAwMCAgICAgMDAwICAgXG5cbmZ1bmt5VGV4dCA9IChzKSAtPiBzXG5mdW5reUJncmQgPSAocykgLT4gc1xuXG5mb3IgYyBpbiBPYmplY3Qua2V5cyB0ZXh0XG4gICAgaWYgYXJnc1tjXVxuICAgICAgICBmdW5reVRleHQgPSBrb2xvcltjXVxuICAgICAgICBcbmZvciBjIGluIE9iamVjdC5rZXlzIGJncmRcbiAgICBpZiBhcmdzW2NdXG4gICAgICAgIGZ1bmt5QmdyZCA9IGtvbG9yW2JnZnVuYyBjXVxuXG5pZiBhcmdzLmZhdFxuICAgIGZhdFRleHQgPSAocykgLT4gYm9sZCBmdW5reVRleHQgc1xuZWxzZVxuICAgIGZhdFRleHQgPSBmdW5reVRleHRcblxuaWYgYXJncy5kaW1cbiAgICBkaW1UZXh0ID0gKHMpIC0+IGRpbSBmYXRUZXh0IHNcbmVsc2VcbiAgICBkaW1UZXh0ID0gZmF0VGV4dFxuXG4jIDAwMDAwMDAwICAgIDAwMDAwMDAgICAwMDAwMDAwMDAgIDAwMDAwMDAwMCAgMDAwMDAwMDAgIDAwMDAwMDAwICAgMDAwICAgMDAwICAgMDAwMDAwMFxuIyAwMDAgICAwMDAgIDAwMCAgIDAwMCAgICAgMDAwICAgICAgICAwMDAgICAgIDAwMCAgICAgICAwMDAgICAwMDAgIDAwMDAgIDAwMCAgMDAwICAgICBcbiMgMDAwMDAwMDAgICAwMDAwMDAwMDAgICAgIDAwMCAgICAgICAgMDAwICAgICAwMDAwMDAwICAgMDAwMDAwMCAgICAwMDAgMCAwMDAgIDAwMDAwMDAgXG4jIDAwMCAgICAgICAgMDAwICAgMDAwICAgICAwMDAgICAgICAgIDAwMCAgICAgMDAwICAgICAgIDAwMCAgIDAwMCAgMDAwICAwMDAwICAgICAgIDAwMFxuIyAwMDAgICAgICAgIDAwMCAgIDAwMCAgICAgMDAwICAgICAgICAwMDAgICAgIDAwMDAwMDAwICAwMDAgICAwMDAgIDAwMCAgIDAwMCAgMDAwMDAwMCBcblxucGF0dGVybkZ1bmMgPSAtPlxuICAgIFxuICAgIGxvYWRTeW50YXggPSAoZikgLT5cbiAgICAgICAgZnMgPSByZXF1aXJlICdmcydcbiAgICAgICAgaWYgZnMuZXhpc3RzU3luYyBmXG4gICAgICAgICAgICBub29uX2xvYWQgPSByZXF1aXJlICdub29uL2pzL2xvYWQnXG4gICAgICAgICAgICBleHBhbmQgbm9vbl9sb2FkIGYgXG4gICAgICAgIGVsc2VcbiAgICAgICAgICAgIGVycm9yIFwiY2FuJ3QgbG9jYXRlIHN5bnRheCBmaWxlICN7Zn1cIlxuICAgIFxuICAgIGlmIGFyZ3MucGF0dGVybj9cbiAgICAgICAgbm9vbl9wYXJzZSA9IHJlcXVpcmUgJ25vb24vanMvcGFyc2UnXG4gICAgICAgIHBhdHRlcm5zID0gZXhwYW5kIG5vb25fcGFyc2UgYXJncy5wYXR0ZXJuXG4gICAgICAgICMgbG9nIHBhdHRlcm5zXG4gICAgZWxzZSBpZiBhcmdzLnBhdHRlcm5GaWxlP1xuICAgICAgICBwYXR0ZXJucyA9IGxvYWRTeW50YXggYXJncy5wYXR0ZXJuRmlsZVxuICAgIFxuICAgIGlmIG5vdCBwYXR0ZXJucz9cbiAgICAgICAgcmV0dXJuIChjaHVuaykgLT4gZnVua3lCZ3JkIGRpbVRleHQgY2h1bmtcbiAgICAgICAgXG4gICAgbWF0Y2hyID0gcmVxdWlyZSAnLi9tYXRjaHInXG4gICAgbWF0Y2hyQ29uZmlnID0gbWF0Y2hyLmNvbmZpZyBwYXR0ZXJuc1xuICAgICAgICAgIFxuICAgIHBhdHRlcm4gPSAoY2h1bmspIC0+XG4gICAgICAgIGNodW5rID0ga29sb3Iuc3RyaXAgY2h1bmtcbiAgICAgICAgcm5ncyA9IG1hdGNoci5yYW5nZXMgbWF0Y2hyQ29uZmlnLCBjaHVua1xuICAgICAgICBkaXNzID0gbWF0Y2hyLmRpc3NlY3Qgcm5nc1xuICAgICAgICBcbiAgICAgICAgaWYgZGlzcy5sZW5ndGhcbiAgICAgICAgICAgIGZvciBkaSBpbiBbZGlzcy5sZW5ndGgtMS4uMF1cbiAgICAgICAgICAgICAgICBkID0gZGlzc1tkaV1cbiAgICAgICAgICAgICAgICBjbHJ6ZCA9IGNvbG9yaXplIGQubWF0Y2gsIGQuc3RhY2sucmV2ZXJzZSgpXG4gICAgICAgICAgICAgICAgY2h1bmsgPSBjaHVuay5zbGljZSgwLCBkLnN0YXJ0KSArIGNscnpkICsgY2h1bmsuc2xpY2UoZC5zdGFydCtkLm1hdGNoLmxlbmd0aClcbiAgICAgICAgY2h1bmtcbiAgICAgICAgXG4gICAgcmV0dXJuIHBhdHRlcm5cblxuIyAgMDAwMDAwMCAgMDAwMDAwMDAwICAwMDAwMDAwMCAgIDAwMDAwMDAwICAgMDAwMDAwMCAgIDAwICAgICAwMFxuIyAwMDAgICAgICAgICAgMDAwICAgICAwMDAgICAwMDAgIDAwMCAgICAgICAwMDAgICAwMDAgIDAwMCAgIDAwMFxuIyAwMDAwMDAwICAgICAgMDAwICAgICAwMDAwMDAwICAgIDAwMDAwMDAgICAwMDAwMDAwMDAgIDAwMDAwMDAwMFxuIyAgICAgIDAwMCAgICAgMDAwICAgICAwMDAgICAwMDAgIDAwMCAgICAgICAwMDAgICAwMDAgIDAwMCAwIDAwMFxuIyAwMDAwMDAwICAgICAgMDAwICAgICAwMDAgICAwMDAgIDAwMDAwMDAwICAwMDAgICAwMDAgIDAwMCAgIDAwMFxuXG5jb2xvclN0cmVhbSA9IChzdHJlYW0sIHBhdHRlcm4pIC0+XG4gICAgXG4gICAgbGluZW5vID0gMFxuICAgIHN0cmVhbS5vbiAnZGF0YScsIChjaHVuaykgLT5cbiAgICAgICAgXG4gICAgICAgIGxpbmVzID0gY2h1bmsuc3BsaXQgJ1xcbidcbiAgICAgICAgY29sb3JMaW5lcyA9IGxpbmVzLm1hcCAobCkgLT4gcGF0dGVybiBsXG4gICAgICAgIFxuICAgICAgICBpZiBhcmdzLnNraXBFbXB0eVxuICAgICAgICAgICAgY29sb3JMaW5lcyA9IGNvbG9yTGluZXMuZmlsdGVyIChsKSAtPiBcbiAgICAgICAgICAgICAgICBrb2xvci5zdHJpcChsKS5sZW5ndGggPiAwXG4gICAgICAgICAgICAgICAgXG4gICAgICAgIGlmIGFyZ3MubGluZU51bWJlcnNcbiAgICAgICAgICAgIGNvbG9yTGluZXMgPSBjb2xvckxpbmVzLm1hcCAobCkgLT4gXG4gICAgICAgICAgICAgICAgbGluZW5vICs9IDFcbiAgICAgICAgICAgICAgICByZXR1cm4gZ3JheShkaW0gcnBhZChcIiN7bGluZW5vfVwiLDYpKSArIGxcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgbG9nIGNvbG9yTGluZXMuam9pbiAnXFxuJ1xuICAgICAgICBcbnN5bnRheFN0cmVhbSA9IChzdHJlYW0sIGV4dCkgLT5cblxuICAgIGxpbmVubyA9IDBcbiAgICBzdHJlYW0ub24gJ2RhdGEnLCAoY2h1bmspIC0+XG4gICAgICAgIFxuICAgICAgICBsaW5lcyA9IGNodW5rLnNwbGl0ICdcXG4nXG4gICAgICAgIGNvbG9yTGluZXMgPSBbXVxuICAgICAgICBcbiAgICAgICAgcm5ncyA9IGtsb3IuZGlzc2VjdCBsaW5lcywgZXh0XG4gICAgICAgIGZvciBpbmRleCBpbiBbMC4uLmxpbmVzLmxlbmd0aF1cbiAgICAgICAgICAgIGNvbG9yTGluZXMucHVzaCBrbG9yLmtvbG9yaXplQ2h1bmtzIGNodW5rczpybmdzW2luZGV4XSwgbnVtYmVyOmFyZ3MubGluZU51bWJlcnMgYW5kIGluZGV4KzFcbiAgICAgICAgXG4gICAgICAgIGlmIGFyZ3Muc2tpcEVtcHR5XG4gICAgICAgICAgICBjb2xvckxpbmVzID0gY29sb3JMaW5lcy5maWx0ZXIgKGwpIC0+IFxuICAgICAgICAgICAgICAgIGtvbG9yLnN0cmlwKGwpLmxlbmd0aCA+IDBcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgbG9nIGNvbG9yTGluZXMuam9pbiAnXFxuJ1xuICAgIFxuIyMjXG4gMDAwMDAwMCAgIDAwMDAwMDAgICAwMDAwMDAwMDAgICAgXG4wMDAgICAgICAgMDAwICAgMDAwICAgICAwMDAgICAgICAgXG4wMDAgICAgICAgMDAwMDAwMDAwICAgICAwMDAgICAgICAgXG4wMDAgICAgICAgMDAwICAgMDAwICAgICAwMDAgICAgICAgXG4gMDAwMDAwMCAgMDAwICAgMDAwICAgICAwMDAgICAgICAgXG4jIyNcbiAgICBcbmlmIGFyZ3MuZmlsZS5sZW5ndGhcbiAgXG4gICAgc2xhc2ggPSByZXF1aXJlICdrc2xhc2gnXG4gICAgXG4gICAgZm9yIGZpbGUgaW4gYXJncy5maWxlICAgIFxuXG4gICAgICAgIHRleHQgPSBzbGFzaC5yZWFkVGV4dCBmaWxlXG4gIFxuICAgICAgICBsb2cga2xvci5zeW50YXggdGV4dDp0ZXh0LCBleHQ6c2xhc2guZXh0KGZpbGUpLCBudW1iZXJzOmFyZ3MubGluZU51bWJlcnNcbiAgICAgICAgICAgICAgICBcbmVsc2VcbiAgICBcbiAgICBwcm9jZXNzLnN0ZGluLnNldEVuY29kaW5nICd1dGY4J1xuICAgIFxuICAgIGlmIGFyZ3MuZXh0IGFuZCBhcmdzLmV4dCBpbiBrbG9yLmV4dHNcbiAgICAgICAgc3ludGF4U3RyZWFtIHByb2Nlc3Muc3RkaW4sIGFyZ3MuZXh0XG4gICAgZWxzZSAgICBcbiAgICAgICAgY29sb3JTdHJlYW0gcHJvY2Vzcy5zdGRpbiwgcGF0dGVybkZ1bmMoKVxuXG4jIHByb2Nlc3Mub24gJ2V4aXQnLCAoY29kZSkgLT4g4pa4ZW5kICdjb2xvcmNhdCdcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3JjYXQuanMiLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXMiOlsiIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUE7Ozs7Ozs7QUFBQSxJQUFBLG1XQUFBO0lBQUE7O0FBVUEsSUFBQSxHQUFPLE9BQUEsQ0FBUSxNQUFSOztBQUNQLElBQUEsR0FBTyxPQUFBLENBQVEsTUFBUjs7QUFFUCxLQUFBLEdBQVEsSUFBSSxDQUFDOztBQUNiLEtBQUssQ0FBQyxTQUFOLENBQUE7O0FBRUEsT0FBQSxHQUFVOztBQVFWLElBQUEsR0FBTyxTQUFDLENBQUQsRUFBSSxDQUFKO0lBQ0gsQ0FBQSxHQUFJLE1BQUEsQ0FBTyxDQUFQO0FBQ0osV0FBTSxDQUFDLENBQUMsTUFBRixHQUFXLENBQWpCO1FBQXdCLENBQUEsSUFBSztJQUE3QjtXQUNBO0FBSEc7O0FBS1AsSUFBQSxHQUNJO0lBQUEsS0FBQSxFQUFTLEdBQVQ7SUFDQSxJQUFBLEVBQVMsR0FEVDtJQUVBLE9BQUEsRUFBUyxHQUZUO0lBR0EsSUFBQSxFQUFTLEdBSFQ7SUFJQSxNQUFBLEVBQVMsR0FKVDtJQUtBLEtBQUEsRUFBUyxHQUxUO0lBTUEsR0FBQSxFQUFTLEdBTlQ7OztBQVFKLFVBQUEsR0FBYTs7QUFDYixLQUFBLFNBQUE7O0lBRUksTUFBQSxHQUFTO0FBQ1QsWUFBTyxDQUFQO0FBQUEsYUFDUyxHQURUO0FBQUEsYUFDWSxHQURaO0FBQ1k7QUFEWjtBQUdRLGlCQUFTLDBCQUFUO2dCQUNJLE1BQUEsR0FBUyxDQUFBLEdBQUU7Z0JBQ1gsTUFBQSxJQUFVLEtBQU0sQ0FBQSxNQUFBLENBQU4sQ0FBYyxHQUFBLEdBQU0sTUFBTixHQUFlLEdBQTdCO0FBRmQ7QUFIUjtJQU9BLFVBQUEsSUFBYyxNQUFBLEdBQU8sQ0FBUCxHQUFTLGtCQUFULEdBQTJCLElBQUssQ0FBQSxDQUFBLENBQWhDLEdBQW1DLE9BQW5DLEdBQXlDLENBQUMsS0FBTSxDQUFBLENBQUEsQ0FBTixDQUFTLElBQVQsQ0FBRCxDQUF6QyxH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QUFaLENBRnNCO0FBRjlCLEtBSko7Q0FBQSxNQUFBO0lBWUksT0FBTyxDQUFDLEtBQUssQ0FBQyxXQUFkLENBQTBCLE1BQTFCO0lBRUEsSUFBRyxJQUFJLENBQUMsR0FBTCxJQUFhLFFBQUEsSUFBSSxDQUFDLEdBQUwsRUFBQSxhQUFZLElBQUksQ0FBQyxJQUFqQixFQUFBLElBQUEsTUFBQSxDQUFoQjtRQUNJLFlBQUEsQ0FBYSxPQUFPLENBQUMsS0FBckIsRUFBNEIsSUFBSSxDQUFDLEdBQWpDLEVBREo7S0FBQSxNQUFBO1FBR0ksV0FBQSxDQUFZLE9BQU8sQ0FBQyxLQUFwQixFQUEyQixXQUFBLENBQUEsQ0FBM0IsRUFISjtLQWRKIiwic291cmNlc0NvbnRlbnQiOlsiIyMjXG4gMDAwMDAwMCAgIDAwMDAwMDAgICAwMDAgICAgICAgMDAwMDAwMCAgIDAwMDAwMDAwICAgIDAwMDAwMDAgICAwMDAwMDAwICAgMDAwMDAwMDAwXG4wMDAgICAgICAgMDAwICAgMDAwICAwMDAgICAgICAwMDAgICAwMDAgIDAwMCAgIDAwMCAgMDAwICAgICAgIDAwMCAgIDAwMCAgICAgMDAwICAgXG4wMDAgICAgICAgMDAwICAgMDAwICAwMDAgICAgICAwMDAgICAwMDAgIDAwMDAwMDAgICAgMDAwICAgICAgIDAwMDAwMDAwMCAgICAgMDAwICAgXG4wMDAgICAgICAgMDAwICAgMDAwICAwMDAgICAgICAwMDAgICAwMDAgIDAwMCAgIDAwMCAgMDAwICAgICAgIDAwMCAgIDAwMCAgICAgMDAwICAgXG4gMDAwMDAwMCAgIDAwMDAwMDAgICAwMDAwMDAwICAgMDAwMDAwMCAgIDAwMCAgIDAwMCAgIDAwMDAwMDAgIDAwMCAgIDAwMCAgICAgMDAwICAgXG4jIyNcblxuIyDilrhzdGFydCAnY29sb3JjYXQnXG5cbmtsb3IgPSByZXF1aXJlICdrbG9yJ1xua2FyZyA9IHJlcXVpcmUgJ2thcmcnXG5cbmtvbG9yID0ga2xvci5rb2xvclxua29sb3IuZ2xvYmFsaXplKClcblxuTkVXTElORSA9IC9cXHI/XFxuL1xuXG4jICAwMDAwMDAwICAgMDAwMDAwMDAgICAgMDAwMDAwMCAgICAwMDAwMDAwXG4jIDAwMCAgIDAwMCAgMDAwICAgMDAwICAwMDAgICAgICAgIDAwMCAgICAgXG4jIDAwMDAwMDAwMCAgMDAwMDAwMCAgICAwMDAgIDAwMDAgIDAwMDAwMDAgXG4jIDAwMCAgIDAwMCAgMDAwICAgMDAwICAwMDAgICAwMDAgICAgICAgMDAwXG4jIDAwMCAgIDAwMCAgMDAwICAgMDAwICAgMDAwMDAwMCAgIDAwMDAwMDAgXG5cbnJwYWQgPSAocywgbCkgLT5cbiAgICBzID0gU3RyaW5nIHNcbiAgICB3aGlsZSBzLmxlbmd0aCA8IGwgdGhlbiBzICs9ICcgJ1xuICAgIHNcblxudGV4dCA9IFxuICAgIHdoaXRlOiAgICd3J1xuICAgIGN5YW46ICAgICdjJ1xuICAgIG1hZ2VudGE6ICdtJ1xuICAgIGJsdWU6ICAgICdiJ1xuICAgIHllbGxvdzogICd5J1xuICAgIGdyZWVuOiAgICdnJ1xuICAgIHJlZDogICAgICdyJyBcbiAgICAgICAgXG50ZXh0Q29sb3JzID0gJydcbmZvciBjLHMgb2YgdGV4dFxuICAgIFxuICAgIHNob3J0cyA9ICcnXG4gICAgc3dpdGNoIHNcbiAgICAgICAgd2hlbiAneCcneicgdGhlblxuICAgICAgICBlbHNlXG4gICAgICAgICAgICBmb3IgaSBpbiBbMS4uOF1cbiAgICAgICAgICAgICAgICBzaG9ydGYgPSBzK2lcbiAgICAgICAgICAgICAgICBzaG9ydHMgKz0ga29sb3Jbc2hvcnRmXSAnICcgKyBzaG9ydGYgKyAnICdcbiAgICBcbiAgICB0ZXh0Q29sb3JzICs9IFwiICAgICN7Y30gIC4gPSBmYWxzZSAuIC0gI3t0ZXh0W2NdfSAuID8gI3trb2xvcltjXSAn4paI4paIJ30je2RpbSBrb2xvcltjXSAn4paI4paIJ30je3Nob3J0c31cXG5cIlxuXG5iZ3JkID0gXG4gICAgYmdSZWQ6ICAgICAnUicgXG4gICAgYmdHcmVlbjogICAnRydcbiAgICBiZ1llbGxvdzogICdZJ1xuICAgIGJnQmx1ZTogICAgJ0InXG4gICAgYmdNYWdlbnRhOiAnTSdcbiAgICBiZ0N5YW46ICAgICdDJ1xuICAgIGJnV2hpdGU6ICAgJ1cnXG4gICAgXG5iZ2Z1bmMgPSAoYykgLT5cbiAgICBzID0gYmdyZFtjXVxuICAgIHN3aXRjaCBzXG4gICAgICAgIHdoZW4gJ1onIHRoZW4gJ1cyJ1xuICAgICAgICB3aGVuICdXJyB0aGVuICdXNCdcbiAgICAgICAgZWxzZSBzKzRcbiAgICBcbmJncmRDb2xvcnMgPSAnJ1xuZm9yIGMscyBvZiBiZ3JkXG4gICAgXG4gICAgc2hvcnRzID0gJydcbiAgICBzd2l0Y2ggc1xuICAgICAgICB3aGVuICdXJ1xuICAgICAgICAgICAgZm9yIGkgaW4gWzEuLjhdXG4gICAgICAgICAgICAgICAgc2hvcnRiID0gJ1cnK2lcbiAgICAgICAgICAgICAgICBzaG9ydGYgPSAndycudG9Mb3dlckNhc2UoKSsoOS1pKVxuICAgICAgICAgICAgICAgIHNob3J0cyArPSBrb2xvcltzaG9ydGZdIGtvbG9yW3Nob3J0Yl0gJyAnICsgc2hvcnRiICsgJyAnXG4gICAgICAgICAgICBcbiAgICAgICAgd2hlbiAnWicgdGhlblxuICAgICAgICAgICAgXG4gICAgICAgIGVsc2VcbiAgICAgICAgICAgIGZvciBpIGluIFsxLi44XVxuICAgICAgICAgICAgICAgIHNob3J0YiA9IHMraVxuICAgICAgICAgICAgICAgIHNob3J0ZiA9IHMudG9Mb3dlckNhc2UoKSsoOS1pKVxuICAgICAgICAgICAgICAgIHNob3J0cyArPSBrb2xvcltzaG9ydGZdIGtvbG9yW3Nob3J0Yl0gJyAnICsgc2hvcnRiICsgJyAnXG4gICAgXG4gICAgYmdyZENvbG9ycyArPSBcIiAgICAje2N9ICAuID0gZmFsc2UgLiAtICN7YmdyZFtjXX0gLiA/ICN7cmVzZXQoa29sb3JbYmdmdW5jIGNdKFwiICAgIFwiKSl9I3tzaG9ydHN9XFxuXCJcbiAgICAgICAgXG5hcmdzID0ga2FyZyBcIlwiXCJcblxuY29sb3JjYXRcblxuICAgIGZpbGUgICAgICAgICAuID8gdGhlIGZpbGUocykgdG8gZGlzcGxheSBvciBzdGRpbiAuICoqXG4gICAgZmF0ICAgICAgICAgIC4gPyAjeyAgZ3JheSAnICAgICBib2xkJyB9ICAgICAgICAgIC4gPSBmYWxzZVxuICAgIGRpbSAgICAgICAgICAuID8gI3sgZGltIHdoaXRlICcgIOKWvOKWvCBkaW0nIH0gICAgICAgLiA9IGZhbHNlXG4je3RleHRDb2xvcnN9XG4je2JncmRDb2xvcnN9XG4gICAgZXh0ICAgICAgICAgIC4gPyB1c2Ugc3ludGF4IGhpZ2hsaWdodGluZyBmb3IgKi5leHRcbiAgICBwYXR0ZXJuICAgICAgLiA/IGNvbG9yaXplIHdpdGggcGF0dGVyblxuICAgIHBhdHRlcm5GaWxlICAuID8gY29sb3JpemUgd2l0aCBwYXR0ZXJucyBpbiBmaWxlICAgLiAtIFBcbiAgICBza2lwRW1wdHkgICAgLiA/IHNraXAgZW1wdHkgbGluZXMgICAgICAgICAgICAgICAgICAgICAgIC4gPSBmYWxzZVxuICAgIGxpbmVOdW1iZXJzICAuID8gcHJlcGVuZCBvdXRwdXQgd2l0aCBsaW5lIG51bWJlcnMgICAgICAgLiA9IGZhbHNlXG4gICAgZGVidWcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuIC0gWCAuID0gZmFsc2VcbiAgICBcbnZlcnNpb24gICAje3JlcXVpcmUoXCIje19fZGlybmFtZX0vLi4vcGFja2FnZS5qc29uXCIpLnZlcnNpb259XG5cIlwiXCJcblxuaWYgYXJncy5kZWJ1Z1xuICAgIG5vb25fc3RyaW5naWZ5ID0gcmVxdWlyZSAnbm9vbi9qcy9zdHJpbmdpZnknXG4gICAgbG9nIG5vb25fc3RyaW5naWZ5IGFyZ3MsIGNvbG9yczp0cnVlXG4gICAgXG4jICAwMDAwMDAwICAgMDAwMDAwMCAgIDAwMCAgICAgICAwMDAwMDAwICAgMDAwMDAwMDAgICAwMDAgIDAwMDAwMDAgIDAwMDAwMDAwXG4jIDAwMCAgICAgICAwMDAgICAwMDAgIDAwMCAgICAgIDAwMCAgIDAwMCAgMDAwICAgMDAwICAwMDAgICAgIDAwMCAgIDAwMCAgICAgXG4jIDAwMCAgICAgICAwMDAgICAwMDAgIDAwMCAgICAgIDAwMCAgIDAwMCAgMDAwMDAwMCAgICAwMDAgICAgMDAwICAgIDAwMDAwMDAgXG4jIDAwMCAgICAgICAwMDAgICAwMDAgIDAwMCAgICAgIDAwMCAgIDAwMCAgMDAwICAgMDAwICAwMDAgICAwMDAgICAgIDAwMCAgICAgXG4jICAwMDAwMDAwICAgMDAwMDAwMCAgIDAwMDAwMDAgICAwMDAwMDAwICAgMDAwICAgMDAwICAwMDAgIDAwMDAwMDAgIDAwMDAwMDAwXG5cbmNvbG9yaXplID0gKHN0ciwgc3RhY2spIC0+XG4gICAgdHJ5XG4gICAgICAgIHNwbCA9IHN0YWNrLm1hcCAocykgLT4gU3RyaW5nKHMpLnNwbGl0ICcuJ1xuICAgICAgICBzcGwgPSBzcGwuZmxhdCgpXG5cbiAgICAgICAgaWYgbm90ICgna2VlcCcgaW4gc3BsKVxuICAgICAgICAgICAgZm9yIHMgaW4gc3BsXG4gICAgICAgICAgICAgICAgaWYgcy5zdWJzdHIoMCwyKSA9PSAnczonXG4gICAgICAgICAgICAgICAgICAgIHN0ciA9IHMuc3Vic3RyKDIpXG4gICAgICAgICAgICAgICAgICAgIHNwbCA9IHNwbC5maWx0ZXIgKHMpIC0+IHMuc3Vic3RyKDAsMikgIT0gJ3M6J1xuICAgICAgICAgICAgICAgICAgICBicmVha1xuXG4gICAgICAgIGZvciBuIGluIHNwbFxuICAgICAgICAgICAgaWYga29sb3Jbbl0/XG4gICAgICAgICAgICAgICAgc3RyID0ga29sb3Jbbl0gc3RyXG4gICAgICAgICAgICBlbHNlIGlmIGtvbG9yW2JnZnVuYyBuXT9cbiAgICAgICAgICAgICAgICBzdHIgPSBrb2xvcltiZ2Z1bmMgbl0gc3RyXG4gICAgY2F0Y2ggZXJyXG4gICAgICAgIGVycm9yIGVyclxuICAgIHN0clxuXG4jIDAwMDAwMDAwICAwMDAgICAwMDAgIDAwMDAwMDAwICAgIDAwMDAwMDAgICAwMDAgICAwMDAgIDAwMDAwMDAgIFxuIyAwMDAgICAgICAgIDAwMCAwMDAgICAwMDAgICAwMDAgIDAwMCAgIDAwMCAgMDAwMCAgMDAwICAwMDAgICAwMDBcbiMgMDAwMDAwMCAgICAgMDAwMDAgICAgMDAwMDAwMDAgICAwMDAwMDAwMDAgIDAwMCAwIDAwMCAgMDAwICAgMDAwXG4jIDAwMCAgICAgICAgMDAwIDAwMCAgIDAwMCAgICAgICAgMDAwICAgMDAwICAwMDAgIDAwMDAgIDAwMCAgIDAwMFxuIyAwMDAwMDAwMCAgMDAwICAgMDAwICAwMDAgICAgICAgIDAwMCAgIDAwMCAgMDAwICAgMDAwICAwMDAwMDAwICBcblxucmVnZXhlcyA9IFtdXG5cbmNscmxzdCA9IE9iamVjdC5hc3NpZ24ge30sIGJncmRcbmNscmxzdCA9IE9iamVjdC5hc3NpZ24gY2xybHN0LCB0ZXh0XG5mYmdubXMgPSBrb2xvci5GR19OQU1FUy5jb25jYXQga29sb3IuQkdfTkFNRVNcbmZiZ2NvbCA9IGtvbG9yLkZHX0NPTE9SUy5jb25jYXQga29sb3IuQkdfQ09MT1JTXG5jbmFtZXMgPSBPYmplY3Qua2V5cyh0ZXh0KS5jb25jYXQgT2JqZWN0LmtleXMoYmdyZClcbmNuYW1lcyA9IGNuYW1lcy5jb25jYXQgZmJnbm1zXG5pbnZlcnQgPSB7fVxuZm9yIGssdiBvZiBjbHJsc3QgdGhlbiBpbnZlcnRbdl0gPSBrXG5pbnZlcnQuZiA9ICdib2xkJ1xuaW52ZXJ0LmQgPSAnZGltJ1xuaW52ZXJ0LmsgPSAna2VlcCdcbmludmVydC54ID0gJ2dyYXknXG5pbnZlcnQueiA9ICd3MidcbmludmVydC5aID0gJ1cxJ1xuXG5leHBhbmQgPSAoZSkgLT5cbiAgICBcbiAgICBleHBkID0gKGMpIC0+XG4gICAgICAgIGlmIGNbMF0gaW4gZmJnY29sXG4gICAgICAgICAgICBpZiBjWzAuLjFdIGluIGZiZ25tc1xuICAgICAgICAgICAgICAgIGlmIGMubGVuZ3RoID09IDIgdGhlbiByZXR1cm4gY1xuICAgICAgICAgICAgICAgIGVsc2UgICAgICAgICAgICAgICAgICByZXR1cm4gY1swLi4xXSArICcuJyArIGV4cGQgY1syLi5dXG4gICAgICAgICAgICAgICAgXG4gICAgICAgIGlmIGM/LnNwbGl0PyBhbmQgYyBub3QgaW4gY25hbWVzXG4gICAgICAgICAgICBzID0gYy5zcGxpdCAnc1xcOidcbiAgICAgICAgICAgIGlmIGludmVydFtzWzBdWzBdXVxuICAgICAgICAgICAgICAgIGlmIHNbMF0ubGVuZ3RoID09IDEgdGhlbiByID0gaW52ZXJ0W3NbMF1bMF1dXG4gICAgICAgICAgICAgICAgZWxzZSAgICAgICAgICAgICAgICAgICAgIHIgPSBpbnZlcnRbc1swXVswXV0gKyAnLicgKyBleHBkIHNbMF1bMS4uXVxuICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgICMgZXJyb3IgJ2RhZnVrPycsIGMsIHNcbiAgICAgICAgICAgICAgICByID0gJydcbiAgICAgICAgICAgIHIgKz0gJy5zOicgKyBzWzFdIGlmIHMubGVuZ3RoID4gMVxuICAgICAgICAgICAgclxuICAgICAgICBlbHNlXG4gICAgICAgICAgICBjXG4gICAgXG4gICAgZm9yIHBhdCxjbHMgb2YgZVxuICAgICAgICBpZiBjbHMgaW5zdGFuY2VvZiBBcnJheVxuICAgICAgICAgICAgZVtwYXRdID0gY2xzLm1hcCAoY2xyKSAtPiBleHBkIGNsci5zcGxpdCgnLicpWzBdXG4gICAgICAgIGVsc2VcbiAgICAgICAgICAgIGVbcGF0XSA9IGV4cGQgY2xzXG4gICAgZSBcblxuIyAwMDAwMDAwMCAgMDAwICAgMDAwICAwMDAgICAwMDAgIDAwMCAgIDAwMCAgMDAwICAgMDAwXG4jIDAwMCAgICAgICAwMDAgICAwMDAgIDAwMDAgIDAwMCAgMDAwICAwMDAgICAgMDAwIDAwMCBcbiMgMDAwMDAwICAgIDAwMCAgIDAwMCAgMDAwIDAgMDAwICAwMDAwMDAwICAgICAgMDAwMDAgIFxuIyAwMDAgICAgICAgMDAwICAgMDAwICAwMDAgIDAwMDAgIDAwMCAgMDAwICAgICAgMDAwICAgXG4jIDAwMCAgICAgICAgMDAwMDAwMCAgIDAwMCAgIDAwMCAgMDAwICAgMDAwICAgICAwMDAgICBcblxuZnVua3lUZXh0ID0gKHMpIC0+IHNcbmZ1bmt5QmdyZCA9IChzKSAtPiBzXG5cbmZvciBjIGluIE9iamVjdC5rZXlzIHRleHRcbiAgICBpZiBhcmdzW2NdXG4gICAgICAgIGZ1bmt5VGV4dCA9IGtvbG9yW2NdXG4gICAgICAgIFxuZm9yIGMgaW4gT2JqZWN0LmtleXMgYmdyZFxuICAgIGlmIGFyZ3NbY11cbiAgICAgICAgZnVua3lCZ3JkID0ga29sb3JbYmdmdW5jIGNdXG5cbmlmIGFyZ3MuZmF0XG4gICAgZmF0VGV4dCA9IChzKSAtPiBib2xkIGZ1bmt5VGV4dCBzXG5lbHNlXG4gICAgZmF0VGV4dCA9IGZ1bmt5VGV4dFxuXG5pZiBhcmdzLmRpbVxuICAgIGRpbVRleHQgPSAocykgLT4gZGltIGZhdFRleHQgc1xuZWxzZVxuICAgIGRpbVRleHQgPSBmYXRUZXh0XG5cbiMgMDAwMDAwMDAgICAgMDAwMDAwMCAgIDAwMDAwMDAwMCAgMDAwMDAwMDAwICAwMDAwMDAwMCAgMDAwMDAwMDAgICAwMDAgICAwMDAgICAwMDAwMDAwXG4jIDAwMCAgIDAwMCAgMDAwICAgMDAwICAgICAwMDAgICAgICAgIDAwMCAgICAgMDAwICAgICAgIDAwMCAgIDAwMCAgMDAwMCAgMDAwICAwMDAgICAgIFxuIyAwMDAwMDAwMCAgIDAwMDAwMDAwMCAgICAgMDAwICAgICAgICAwMDAgICAgIDAwMDAwMDAgICAwMDAwMDAwICAgIDAwMCAwIDAwMCAgMDAwMDAwMCBcbiMgMDAwICAgICAgICAwMDAgICAwMDAgICAgIDAwMCAgICAgICAgMDAwICAgICAwMDAgICAgICAgMDAwICAgMDAwICAwMDAgIDAwMDAgICAgICAgMDAwXG4jIDAwMCAgICAgICAgMDAwICAgMDAwICAgICAwMDAgICAgICAgIDAwMCAgICAgMDAwMDAwMDAgIDAwMCAgIDAwMCAgMDAwICAgMDAwICAwMDAwMDAwIFxuXG5wYXR0ZXJuRnVuYyA9IC0+XG4gICAgXG4gICAgbG9hZFN5bnRheCA9IChmKSAtPlxuICAgICAgICBmcyA9IHJlcXVpcmUgJ2ZzJ1xuICAgICAgICBpZiBmcy5leGlzdHNTeW5jIGZcbiAgICAgICAgICAgIG5vb25fbG9hZCA9IHJlcXVpcmUgJ25vb24vanMvbG9hZCdcbiAgICAgICAgICAgIGV4cGFuZCBub29uX2xvYWQgZiBcbiAgICAgICAgZWxzZVxuICAgICAgICAgICAgZXJyb3IgXCJjYW4ndCBsb2NhdGUgc3ludGF4IGZpbGUgI3tmfVwiXG4gICAgXG4gICAgaWYgYXJncy5wYXR0ZXJuP1xuICAgICAgICBub29uX3BhcnNlID0gcmVxdWlyZSAnbm9vbi9qcy9wYXJzZSdcbiAgICAgICAgcGF0dGVybnMgPSBleHBhbmQgbm9vbl9wYXJzZSBhcmdzLnBhdHRlcm5cbiAgICAgICAgIyBsb2cgcGF0dGVybnNcbiAgICBlbHNlIGlmIGFyZ3MucGF0dGVybkZpbGU/XG4gICAgICAgIHBhdHRlcm5zID0gbG9hZFN5bnRheCBhcmdzLnBhdHRlcm5GaWxlXG4gICAgXG4gICAgaWYgbm90IHBhdHRlcm5zP1xuICAgICAgICByZXR1cm4gKGNodW5rKSAtPiBmdW5reUJncmQgZGltVGV4dCBjaHVua1xuICAgICAgICBcbiAgICBtYXRjaHIgPSByZXF1aXJlICcuL21hdGNocidcbiAgICBtYXRjaHJDb25maWcgPSBtYXRjaHIuY29uZmlnIHBhdHRlcm5zXG4gICAgICAgICAgXG4gICAgcGF0dGVybiA9IChjaHVuaykgLT5cbiAgICAgICAgY2h1bmsgPSBrb2xvci5zdHJpcCBjaHVua1xuICAgICAgICBybmdzID0gbWF0Y2hyLnJhbmdlcyBtYXRjaHJDb25maWcsIGNodW5rXG4gICAgICAgIGRpc3MgPSBtYXRjaHIuZGlzc2VjdCBybmdzXG4gICAgICAgIFxuICAgICAgICBpZiBkaXNzLmxlbmd0aFxuICAgICAgICAgICAgZm9yIGRpIGluIFtkaXNzLmxlbmd0aC0xLi4wXVxuICAgICAgICAgICAgICAgIGQgPSBkaXNzW2RpXVxuICAgICAgICAgICAgICAgIGNscnpkID0gY29sb3JpemUgZC5tYXRjaCwgZC5zdGFjay5yZXZlcnNlKClcbiAgICAgICAgICAgICAgICBjaHVuayA9IGNodW5rLnNsaWNlKDAsIGQuc3RhcnQpICsgY2xyemQgKyBjaHVuay5zbGljZShkLnN0YXJ0K2QubWF0Y2gubGVuZ3RoKVxuICAgICAgICBjaHVua1xuICAgICAgICBcbiAgICByZXR1cm4gcGF0dGVyblxuXG4jICAwMDAwMDAwICAwMDAwMDAwMDAgIDAwMDAwMDAwICAgMDAwMDAwMDAgICAwMDAwMDAwICAgMDAgICAgIDAwXG4jIDAwMCAgICAgICAgICAwMDAgICAgIDAwMCAgIDAwMCAgMDAwICAgICAgIDAwMCAgIDAwMCAgMDAwICAgMDAwXG4jIDAwMDAwMDAgICAgICAwMDAgICAgIDAwMDAwMDAgICAgMDAwMDAwMCAgIDAwMDAwMDAwMCAgMDAwMDAwMDAwXG4jICAgICAgMDAwICAgICAwMDAgICAgIDAwMCAgIDAwMCAgMDAwICAgICAgIDAwMCAgIDAwMCAgMDAwIDAgMDAwXG4jIDAwMDAwMDAgICAgICAwMDAgICAgIDAwMCAgIDAwMCAgMDAwMDAwMDAgIDAwMCAgIDAwMCAgMDAwICAgMDAwXG5cbmNvbG9yU3RyZWFtID0gKHN0cmVhbSwgcGF0dGVybikgLT5cbiAgICBcbiAgICBsaW5lbm8gPSAwXG4gICAgc3RyZWFtLm9uICdkYXRhJywgKGNodW5rKSAtPlxuICAgICAgICBcbiAgICAgICAgbGluZXMgPSBjaHVuay5zcGxpdCAnXFxuJ1xuICAgICAgICBjb2xvckxpbmVzID0gbGluZXMubWFwIChsKSAtPiBwYXR0ZXJuIGxcbiAgICAgICAgXG4gICAgICAgIGlmIGFyZ3Muc2tpcEVtcHR5XG4gICAgICAgICAgICBjb2xvckxpbmVzID0gY29sb3JMaW5lcy5maWx0ZXIgKGwpIC0+IFxuICAgICAgICAgICAgICAgIGtvbG9yLnN0cmlwKGwpLmxlbmd0aCA+IDBcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgaWYgYXJncy5saW5lTnVtYmVyc1xuICAgICAgICAgICAgY29sb3JMaW5lcyA9IGNvbG9yTGluZXMubWFwIChsKSAtPiBcbiAgICAgICAgICAgICAgICBsaW5lbm8gKz0gMVxuICAgICAgICAgICAgICAgIHJldHVybiBncmF5KGRpbSBycGFkKFwiI3tsaW5lbm99XCIsNikpICsgbFxuICAgICAgICAgICAgICAgIFxuICAgICAgICBsb2cgY29sb3JMaW5lcy5qb2luICdcXG4nXG4gICAgICAgIFxuc3ludGF4U3RyZWFtID0gKHN0cmVhbSwgZXh0KSAtPlxuXG4gICAgbGluZW5vID0gMFxuICAgIHN0cmVhbS5vbiAnZGF0YScsIChjaHVuaykgLT5cbiAgICAgICAgXG4gICAgICAgIGxpbmVzID0gY2h1bmsuc3BsaXQgJ1xcbidcbiAgICAgICAgY29sb3JMaW5lcyA9IFtdXG4gICAgICAgIFxuICAgICAgICBybmdzID0ga2xvci5kaXNzZWN0IGxpbmVzLCBleHRcbiAgICAgICAgZm9yIGluZGV4IGluIFswLi4ubGluZXMubGVuZ3RoXVxuICAgICAgICAgICAgY29sb3JMaW5lcy5wdXNoIGtsb3Iua29sb3JpemVDaHVua3MgY2h1bmtzOnJuZ3NbaW5kZXhdLCBudW1iZXI6YXJncy5saW5lTnVtYmVycyBhbmQgaW5kZXgrMVxuICAgICAgICBcbiAgICAgICAgaWYgYXJncy5za2lwRW1wdHlcbiAgICAgICAgICAgIGNvbG9yTGluZXMgPSBjb2xvckxpbmVzLmZpbHRlciAobCkgLT4gXG4gICAgICAgICAgICAgICAga29sb3Iuc3RyaXAobCkubGVuZ3RoID4gMFxuICAgICAgICAgICAgICAgIFxuICAgICAgICBsb2cgY29sb3JMaW5lcy5qb2luICdcXG4nXG4gICAgXG4jIyNcbiAwMDAwMDAwICAgMDAwMDAwMCAgIDAwMDAwMDAwMCAgICBcbjAwMCAgICAgICAwMDAgICAwMDAgICAgIDAwMCAgICAgICBcbjAwMCAgICAgICAwMDAwMDAwMDAgICAgIDAwMCAgICAgICBcbjAwMCAgICAgICAwMDAgICAwMDAgICAgIDAwMCAgICAgICBcbiAwMDAwMDAwICAwMDAgICAwMDAgICAgIDAwMCAgICAgICBcbiMjI1xuICAgIFxuaWYgYXJncy5maWxlLmxlbmd0aFxuICBcbiAgICBzbGFzaCA9IHJlcXVpcmUgJ2tzbGFzaCdcbiAgICBcbiAgICBmb3IgZmlsZSBpbiBhcmdzLmZpbGUgICAgXG5cbiAgICAgICAgdGV4dCA9IHNsYXNoLnJlYWRUZXh0IGZpbGVcbiAgXG4gICAgICAgIGxvZyBrbG9yLnN5bnRheCB0ZXh0OnRleHQsIGV4dDpzbGFzaC5leHQoZmlsZSksIG51bWJlcnM6YXJncy5saW5lTnVtYmVyc1xuICAgICAgICAgICAgICAgIFxuZWxzZVxuICAgIFxuICAgIHByb2Nlc3Muc3RkaW4uc2V0RW5jb2RpbmcgJ3V0ZjgnXG4gICAgXG4gICAgaWYgYXJncy5leHQgYW5kIGFyZ3MuZXh0IGluIGtsb3IuZXh0c1xuICAgICAgICBzeW50YXhTdHJlYW0gcHJvY2Vzcy5zdGRpbiwgYXJncy5leHRcbiAgICBlbHNlICAgIFxuICAgICAgICBjb2xvclN0cmVhbSBwcm9jZXNzLnN0ZGluLCBwYXR0ZXJuRnVuYygpXG5cbiMgcHJvY2Vzcy5vbiAnZXhpdCcsIChjb2RlKSAtPiDilrhlbmQgJ2NvbG9yY2F0J1xuIl19
//# sourceURL=../coffee/colorcat.coffee
{
"name": "colorcat",
"description": "loves colors",
"version": "2.9.0",
"version": "2.10.0",
"keywords": [

@@ -28,7 +28,7 @@ "color",

"dependencies": {
"karg": ">=1.18.0",
"klor": "^0.61.0",
"kslash": ">=1.11.0",
"noon": ">=2.10.0"
"karg": "^1.19.0",
"klor": "^1.1.1",
"kslash": "^1.12.0",
"noon": "^2.13.0"
}
}
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