AzuraCast/web/static/dist/app-b0b3f79e67.js

3 lines
19 KiB
JavaScript

function notify(a,o,e){var n={type:o,allow_dismiss:!0,label:"Cancel",className:"btn-xs btn-inverse align-right",placement:{from:"top",align:"right"},delay:1e4,z_index:8,animate:{enter:"animated fadeIn",exit:"animated fadeOut"},offset:{x:20,y:85}};e&&(n.placement.from="top",n.placement.align="center",n.offset.y=20),$.notify({message:a},n)}$(document).ready(function(){$("body").on("click","[data-ma-action]",function(a){a.preventDefault();var o=$(this);switch($(this).data("ma-action")){case"sidebar-open":var e=o.data("ma-target");$("body").addClass("sidebar-toggled"),$("#header, #header-alt, #main").append('<div data-ma-action="sidebar-close" class="ma-backdrop" />'),o.addClass("toggled"),$(e).addClass("toggled");break;case"sidebar-close":$("body").removeClass("sidebar-toggled"),$(".ma-backdrop").remove(),$(".sidebar, .ma-trigger").removeClass("toggled");break;case"submenu-toggle":o.next().slideToggle(200),o.parent().toggleClass("toggled")}})}),$(function(){$("a.btn-danger").on("click",function(a){a.preventDefault();var o=$(this).attr("href");return swal({title:"Are you sure?",type:"warning",showCancelButton:!0,confirmButtonColor:"#3085d6",cancelButtonColor:"#d33",confirmButtonText:"Yes",closeOnConfirm:!1,showLoaderOnConfirm:!0},function(){window.location.href=o}),!1})}),/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)&&$("html").addClass("ismobile"),$(document).ready(function(){var a,o;$("html").hasClass("ismobile")||$(".c-overflow")[0]&&(a="minimal-dark",o="y",$(".c-overflow").mCustomScrollbar({theme:a,scrollInertia:100,axis:"mousewheelaxis",mouseWheel:{enable:!0,axis:o,preventDefault:!0}})),$(".dropdown")[0]&&($("body").on("click",".dropdown.open .dropdown-menu",function(a){a.stopPropagation()}),$(".dropdown").on("shown.bs.dropdown",function(a){$(this).attr("data-animation")&&($animArray=[],$animation=$(this).data("animation"),$animArray=$animation.split(","),$animationIn="animated "+$animArray[0],$animationOut="animated "+$animArray[1],$animationDuration="",$animArray[2]?$animationDuration=$animArray[2]:$animationDuration=500,$(this).find(".dropdown-menu").removeClass($animationOut),$(this).find(".dropdown-menu").addClass($animationIn))}),$(".dropdown").on("hide.bs.dropdown",function(a){$(this).attr("data-animation")&&(a.preventDefault(),$this=$(this),$dropdownMenu=$this.find(".dropdown-menu"),$dropdownMenu.addClass($animationOut),setTimeout(function(){$this.removeClass("open")},$animationDuration))})),$(".fg-line")[0]&&($("body").on("focus",".fg-line .form-control",function(){$(this).closest(".fg-line").addClass("fg-toggled")}),$("body").on("blur",".form-control",function(){var a=$(this).closest(".form-group, .input-group"),o=a.find(".form-control").val();a.hasClass("fg-float")?0==o.length&&$(this).closest(".fg-line").removeClass("fg-toggled"):$(this).closest(".fg-line").removeClass("fg-toggled")})),$(".fg-float")[0]&&$(".fg-float .form-control").each(function(){0==!$(this).val().length&&$(this).closest(".fg-line").addClass("fg-toggled")}),$(".collapse")[0]&&($(".collapse").on("show.bs.collapse",function(a){$(this).closest(".panel").find(".panel-heading").addClass("active")}),$(".collapse").on("hide.bs.collapse",function(a){$(this).closest(".panel").find(".panel-heading").removeClass("active")}),$(".collapse.in").each(function(){$(this).closest(".panel").find(".panel-heading").addClass("active")})),$('[data-toggle="tooltip"]')[0]&&$('[data-toggle="tooltip"]').tooltip(),$('[data-toggle="popover"]')[0]&&$('[data-toggle="popover"]').popover(),$("html").hasClass("ie9")&&$("input, textarea").placeholder({customClass:"ie9-placeholder"})});
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm5vdGlmeS5qcyIsImFjdGlvbnMuanMiLCJjb25maXJtLWRhbmdlci5qcyIsImZ1bmN0aW9ucy5qcyJdLCJuYW1lcyI6WyJub3RpZnkiLCJtZXNzYWdlIiwidHlwZSIsIm1pbmltYWxfbGF5b3V0IiwiZ3Jvd2xTZXR0aW5ncyIsImFsbG93X2Rpc21pc3MiLCJsYWJlbCIsImNsYXNzTmFtZSIsInBsYWNlbWVudCIsImZyb20iLCJhbGlnbiIsImRlbGF5Iiwiel9pbmRleCIsImFuaW1hdGUiLCJlbnRlciIsImV4aXQiLCJvZmZzZXQiLCJ4IiwieSIsIiQiLCJkb2N1bWVudCIsInJlYWR5Iiwib24iLCJlIiwicHJldmVudERlZmF1bHQiLCIkdGhpcyIsInRoaXMiLCJkYXRhIiwidGFyZ2V0IiwiYWRkQ2xhc3MiLCJhcHBlbmQiLCJyZW1vdmVDbGFzcyIsInJlbW92ZSIsIm5leHQiLCJzbGlkZVRvZ2dsZSIsInBhcmVudCIsInRvZ2dsZUNsYXNzIiwibGlua1VybCIsImF0dHIiLCJzd2FsIiwidGl0bGUiLCJzaG93Q2FuY2VsQnV0dG9uIiwiY29uZmlybUJ1dHRvbkNvbG9yIiwiY2FuY2VsQnV0dG9uQ29sb3IiLCJjb25maXJtQnV0dG9uVGV4dCIsImNsb3NlT25Db25maXJtIiwic2hvd0xvYWRlck9uQ29uZmlybSIsIndpbmRvdyIsImxvY2F0aW9uIiwiaHJlZiIsInRlc3QiLCJuYXZpZ2F0b3IiLCJ1c2VyQWdlbnQiLCJ0aGVtZSIsIm1vdXNld2hlZWxheGlzIiwiaGFzQ2xhc3MiLCJtQ3VzdG9tU2Nyb2xsYmFyIiwic2Nyb2xsSW5lcnRpYSIsImF4aXMiLCJtb3VzZVdoZWVsIiwiZW5hYmxlIiwic3RvcFByb3BhZ2F0aW9uIiwiJGFuaW1BcnJheSIsIiRhbmltYXRpb24iLCJzcGxpdCIsIiRhbmltYXRpb25JbiIsIiRhbmltYXRpb25PdXQiLCIkYW5pbWF0aW9uRHVyYXRpb24iLCJmaW5kIiwiJGRyb3Bkb3duTWVudSIsInNldFRpbWVvdXQiLCJjbG9zZXN0IiwicCIsImkiLCJ2YWwiLCJsZW5ndGgiLCJlYWNoIiwidG9vbHRpcCIsInBvcG92ZXIiLCJwbGFjZWhvbGRlciIsImN1c3RvbUNsYXNzIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUFBQSxPQUFBQyxFQUFBQyxFQUFBQyxHQUVBLElBQUFDLEdBQ0FGLEtBQUFBLEVBQ0FHLGVBQUEsRUFDQUMsTUFBQSxTQUNBQyxVQUFBLGlDQUNBQyxXQUNBQyxLQUFBLE1BQ0FDLE1BQUEsU0FFQUMsTUFBQSxJQUNBQyxRQUFBLEVBQ0FDLFNBQ0FDLE1BQUEsa0JBQ0FDLEtBQUEsb0JBRUFDLFFBQ0FDLEVBQUEsR0FDQUMsRUFBQSxLQUlBZixJQUNBQyxFQUFBSSxVQUFBQyxLQUFBLE1BQ0FMLEVBQUFJLFVBQUFFLE1BQUEsU0FDQU4sRUFBQVksT0FBQUUsRUFBQSxJQUdBQyxFQUFBbkIsUUFBQUMsUUFBQUEsR0FBQUcsR0M3QkFlLEVBQUFDLFVBQUFDLE1BQUEsV0FDQUYsRUFBQSxRQUFBRyxHQUFBLFFBQUEsbUJBQUEsU0FBQUMsR0FDQUEsRUFBQUMsaUJBRUEsSUFBQUMsRUFBQU4sRUFBQU8sTUFHQSxPQUZBUCxFQUFBTyxNQUFBQyxLQUFBLGNBR0EsSUFBQSxlQUNBLElBQUFDLEVBQUFILEVBQUFFLEtBQUEsYUFHQVIsRUFBQSxRQUFBVSxTQUFBLG1CQUNBVixFQUFBLCtCQUFBVyxPQUhBLDhEQUlBTCxFQUFBSSxTQUFBLFdBQ0FWLEVBQUFTLEdBQUFDLFNBQUEsV0FDQSxNQUVBLElBQUEsZ0JBQ0FWLEVBQUEsUUFBQVksWUFBQSxtQkFDQVosRUFBQSxnQkFBQWEsU0FDQWIsRUFBQSx5QkFBQVksWUFBQSxXQUNBLE1BRUEsSUFBQSxpQkFDQU4sRUFBQVEsT0FBQUMsWUFBQSxLQUNBVCxFQUFBVSxTQUFBQyxZQUFBLGdCQzFCQWpCLEVBQUEsV0FFQUEsRUFBQSxnQkFBQUcsR0FBQSxRQUFBLFNBQUFDLEdBRUFBLEVBQUFDLGlCQUVBLElBQUFhLEVBQUFsQixFQUFBTyxNQUFBWSxLQUFBLFFBZUEsT0FiQUMsTUFDQUMsTUFBQSxnQkFDQXRDLEtBQUEsVUFDQXVDLGtCQUFBLEVBQ0FDLG1CQUFBLFVBQ0FDLGtCQUFBLE9BQ0FDLGtCQUFBLE1BQ0FDLGdCQUFBLEVBQ0FDLHFCQUFBLEdBQ0EsV0FDQUMsT0FBQUMsU0FBQUMsS0FBQVosS0FHQSxNQ2xCQSxpRUFBQWEsS0FBQUMsVUFBQUMsWUFDQWpDLEVBQUEsUUFBQVUsU0FBQSxZQUdBVixFQUFBQyxVQUFBQyxNQUFBLFdBS0EsSUFBQWdDLEVBQUFDLEVBYUFuQyxFQUFBLFFBQUFvQyxTQUFBLGFBRUFwQyxFQUFBLGVBQUEsS0FmQWtDLEVBZ0JBLGVBaEJBQyxFQWdCQSxJQWZBbkMsRUFlQSxlQWZBcUMsa0JBQ0FILE1BQUFBLEVBQ0FJLGNBQUEsSUFDQUMsS0FBQSxpQkFDQUMsWUFDQUMsUUFBQSxFQUNBRixLQUFBSixFQUNBOUIsZ0JBQUEsTUFlQUwsRUFBQSxhQUFBLEtBRUFBLEVBQUEsUUFBQUcsR0FBQSxRQUFBLGdDQUFBLFNBQUFDLEdBQ0FBLEVBQUFzQyxvQkFHQTFDLEVBQUEsYUFBQUcsR0FBQSxvQkFBQSxTQUFBQyxHQUNBSixFQUFBTyxNQUFBWSxLQUFBLG9CQUNBd0IsY0FDQUMsV0FBQTVDLEVBQUFPLE1BQUFDLEtBQUEsYUFDQW1DLFdBQUFDLFdBQUFDLE1BQUEsS0FDQUMsYUFBQSxZQUFBSCxXQUFBLEdBQ0FJLGNBQUEsWUFBQUosV0FBQSxHQUNBSyxtQkFBQSxHQUNBTCxXQUFBLEdBSUFLLG1CQUFBTCxXQUFBLEdBSEFLLG1CQUFBLElBTUFoRCxFQUFBTyxNQUFBMEMsS0FBQSxrQkFBQXJDLFlBQUFtQyxlQUNBL0MsRUFBQU8sTUFBQTBDLEtBQUEsa0JBQUF2QyxTQUFBb0MsaUJBSUE5QyxFQUFBLGFBQUFHLEdBQUEsbUJBQUEsU0FBQUMsR0FDQUosRUFBQU8sTUFBQVksS0FBQSxvQkFDQWYsRUFBQUMsaUJBQ0FDLE1BQUFOLEVBQUFPLE1BQ0EyQyxjQUFBNUMsTUFBQTJDLEtBQUEsa0JBRUFDLGNBQUF4QyxTQUFBcUMsZUFDQUksV0FBQSxXQUNBN0MsTUFBQU0sWUFBQSxTQUVBb0Msd0JBU0FoRCxFQUFBLFlBQUEsS0FDQUEsRUFBQSxRQUFBRyxHQUFBLFFBQUEseUJBQUEsV0FDQUgsRUFBQU8sTUFBQTZDLFFBQUEsWUFBQTFDLFNBQUEsZ0JBR0FWLEVBQUEsUUFBQUcsR0FBQSxPQUFBLGdCQUFBLFdBQ0EsSUFBQWtELEVBQUFyRCxFQUFBTyxNQUFBNkMsUUFBQSw2QkFDQUUsRUFBQUQsRUFBQUosS0FBQSxpQkFBQU0sTUFFQUYsRUFBQWpCLFNBQUEsWUFDQSxHQUFBa0IsRUFBQUUsUUFDQXhELEVBQUFPLE1BQUE2QyxRQUFBLFlBQUF4QyxZQUFBLGNBSUFaLEVBQUFPLE1BQUE2QyxRQUFBLFlBQUF4QyxZQUFBLGlCQU1BWixFQUFBLGFBQUEsSUFDQUEsRUFBQSwyQkFBQXlELEtBQUEsV0FHQSxJQUZBekQsRUFBQU8sTUFBQWdELE1BRUFDLFFBQ0F4RCxFQUFBTyxNQUFBNkMsUUFBQSxZQUFBMUMsU0FBQSxnQkFTQVYsRUFBQSxhQUFBLEtBR0FBLEVBQUEsYUFBQUcsR0FBQSxtQkFBQSxTQUFBQyxHQUNBSixFQUFBTyxNQUFBNkMsUUFBQSxVQUFBSCxLQUFBLGtCQUFBdkMsU0FBQSxZQUdBVixFQUFBLGFBQUFHLEdBQUEsbUJBQUEsU0FBQUMsR0FDQUosRUFBQU8sTUFBQTZDLFFBQUEsVUFBQUgsS0FBQSxrQkFBQXJDLFlBQUEsWUFJQVosRUFBQSxnQkFBQXlELEtBQUEsV0FDQXpELEVBQUFPLE1BQUE2QyxRQUFBLFVBQUFILEtBQUEsa0JBQUF2QyxTQUFBLGFBT0FWLEVBQUEsMkJBQUEsSUFDQUEsRUFBQSwyQkFBQTBELFVBTUExRCxFQUFBLDJCQUFBLElBQ0FBLEVBQUEsMkJBQUEyRCxVQU1BM0QsRUFBQSxRQUFBb0MsU0FBQSxRQUNBcEMsRUFBQSxtQkFBQTRELGFBQ0FDLFlBQUEiLCJmaWxlIjoiYXBwLmpzIiwic291cmNlc0NvbnRlbnQiOlsiZnVuY3Rpb24gbm90aWZ5KG1lc3NhZ2UsIHR5cGUsIG1pbmltYWxfbGF5b3V0KSB7XHJcblxyXG4gICAgdmFyIGdyb3dsU2V0dGluZ3MgPSB7XHJcbiAgICAgICAgdHlwZTogdHlwZSxcclxuICAgICAgICBhbGxvd19kaXNtaXNzOiB0cnVlLFxyXG4gICAgICAgIGxhYmVsOiAnQ2FuY2VsJyxcclxuICAgICAgICBjbGFzc05hbWU6ICdidG4teHMgYnRuLWludmVyc2UgYWxpZ24tcmlnaHQnLFxyXG4gICAgICAgIHBsYWNlbWVudDoge1xyXG4gICAgICAgICAgICBmcm9tOiAndG9wJyxcclxuICAgICAgICAgICAgYWxpZ246ICdyaWdodCdcclxuICAgICAgICB9LFxyXG4gICAgICAgIGRlbGF5OiAxMDAwMCxcclxuICAgICAgICB6X2luZGV4OiA4LFxyXG4gICAgICAgIGFuaW1hdGU6IHtcclxuICAgICAgICAgICAgZW50ZXI6ICdhbmltYXRlZCBmYWRlSW4nLFxyXG4gICAgICAgICAgICBleGl0OiAnYW5pbWF0ZWQgZmFkZU91dCdcclxuICAgICAgICB9LFxyXG4gICAgICAgIG9mZnNldDoge1xyXG4gICAgICAgICAgICB4OiAyMCxcclxuICAgICAgICAgICAgeTogODVcclxuICAgICAgICB9XHJcbiAgICB9O1xyXG5cclxuICAgIGlmIChtaW5pbWFsX2xheW91dCkge1xyXG4gICAgICAgIGdyb3dsU2V0dGluZ3MucGxhY2VtZW50LmZyb20gPSAndG9wJztcclxuICAgICAgICBncm93bFNldHRpbmdzLnBsYWNlbWVudC5hbGlnbiA9ICdjZW50ZXInO1xyXG4gICAgICAgIGdyb3dsU2V0dGluZ3Mub2Zmc2V0LnkgPSAyMDtcclxuICAgIH1cclxuXHJcbiAgICAkLm5vdGlmeSh7IG1lc3NhZ2U6IG1lc3NhZ2UgfSwgZ3Jvd2xTZXR0aW5ncyk7XHJcblxyXG59IiwiJChkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24gKCkge1xuICAgICQoJ2JvZHknKS5vbignY2xpY2snLCAnW2RhdGEtbWEtYWN0aW9uXScsIGZ1bmN0aW9uIChlKSB7XG4gICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcblxuICAgICAgICB2YXIgJHRoaXMgPSAkKHRoaXMpO1xuICAgICAgICB2YXIgYWN0aW9uID0gJCh0aGlzKS5kYXRhKCdtYS1hY3Rpb24nKTtcblxuICAgICAgICBzd2l0Y2ggKGFjdGlvbikge1xuICAgICAgICAgICAgY2FzZSAnc2lkZWJhci1vcGVuJzpcbiAgICAgICAgICAgICAgICB2YXIgdGFyZ2V0ID0gJHRoaXMuZGF0YSgnbWEtdGFyZ2V0Jyk7XG4gICAgICAgICAgICAgICAgdmFyIGJhY2tkcm9wID0gJzxkaXYgZGF0YS1tYS1hY3Rpb249XCJzaWRlYmFyLWNsb3NlXCIgY2xhc3M9XCJtYS1iYWNrZHJvcFwiIC8+JztcblxuICAgICAgICAgICAgICAgICQoJ2JvZHknKS5hZGRDbGFzcygnc2lkZWJhci10b2dnbGVkJyk7XG4gICAgICAgICAgICAgICAgJCgnI2hlYWRlciwgI2hlYWRlci1hbHQsICNtYWluJykuYXBwZW5kKGJhY2tkcm9wKTtcbiAgICAgICAgICAgICAgICAkdGhpcy5hZGRDbGFzcygndG9nZ2xlZCcpO1xuICAgICAgICAgICAgICAgICQodGFyZ2V0KS5hZGRDbGFzcygndG9nZ2xlZCcpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICBjYXNlICdzaWRlYmFyLWNsb3NlJzpcbiAgICAgICAgICAgICAgICAkKCdib2R5JykucmVtb3ZlQ2xhc3MoJ3NpZGViYXItdG9nZ2xlZCcpO1xuICAgICAgICAgICAgICAgICQoJy5tYS1iYWNrZHJvcCcpLnJlbW92ZSgpO1xuICAgICAgICAgICAgICAgICQoJy5zaWRlYmFyLCAubWEtdHJpZ2dlcicpLnJlbW92ZUNsYXNzKCd0b2dnbGVkJylcbiAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgY2FzZSAnc3VibWVudS10b2dnbGUnOlxuICAgICAgICAgICAgICAgICR0aGlzLm5leHQoKS5zbGlkZVRvZ2dsZSgyMDApO1xuICAgICAgICAgICAgICAgICR0aGlzLnBhcmVudCgpLnRvZ2dsZUNsYXNzKCd0b2dnbGVkJyk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICB9KTtcbn0pO1xuIiwiJChmdW5jdGlvbigpIHtcclxuXHJcbiAgICAkKCdhLmJ0bi1kYW5nZXInKS5vbignY2xpY2snLCBmdW5jdGlvbihlKSB7XHJcblxyXG4gICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcclxuXHJcbiAgICAgICAgdmFyIGxpbmtVcmwgPSAkKHRoaXMpLmF0dHIoJ2hyZWYnKTtcclxuXHJcbiAgICAgICAgc3dhbCh7XHJcbiAgICAgICAgICAgIHRpdGxlOiAnQXJlIHlvdSBzdXJlPycsXHJcbiAgICAgICAgICAgIHR5cGU6ICd3YXJuaW5nJyxcclxuICAgICAgICAgICAgc2hvd0NhbmNlbEJ1dHRvbjogdHJ1ZSxcclxuICAgICAgICAgICAgY29uZmlybUJ1dHRvbkNvbG9yOiAnIzMwODVkNicsXHJcbiAgICAgICAgICAgIGNhbmNlbEJ1dHRvbkNvbG9yOiAnI2QzMycsXHJcbiAgICAgICAgICAgIGNvbmZpcm1CdXR0b25UZXh0OiAnWWVzJyxcclxuICAgICAgICAgICAgY2xvc2VPbkNvbmZpcm06IGZhbHNlLFxyXG4gICAgICAgICAgICBzaG93TG9hZGVyT25Db25maXJtOiB0cnVlXHJcbiAgICAgICAgfSwgZnVuY3Rpb24oKSB7XHJcbiAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gbGlua1VybDtcclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG5cclxuICAgIH0pO1xyXG5cclxufSk7XHJcblxyXG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiBEZXRlY3QgTW9iaWxlIEJyb3dzZXJcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5pZiAoL0FuZHJvaWR8d2ViT1N8aVBob25lfGlQYWR8aVBvZHxCbGFja0JlcnJ5fElFTW9iaWxlfE9wZXJhIE1pbmkvaS50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpKSB7XG4gICAgJCgnaHRtbCcpLmFkZENsYXNzKCdpc21vYmlsZScpO1xufVxuXG4kKGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbiAoKSB7XG5cbiAgICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgU2Nyb2xsYmFyXG4gICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiAgICBmdW5jdGlvbiBzY3JvbGxCYXIoc2VsZWN0b3IsIHRoZW1lLCBtb3VzZXdoZWVsYXhpcykge1xuICAgICAgICAkKHNlbGVjdG9yKS5tQ3VzdG9tU2Nyb2xsYmFyKHtcbiAgICAgICAgICAgIHRoZW1lOiB0aGVtZSxcbiAgICAgICAgICAgIHNjcm9sbEluZXJ0aWE6IDEwMCxcbiAgICAgICAgICAgIGF4aXM6ICdtb3VzZXdoZWVsYXhpcycsXG4gICAgICAgICAgICBtb3VzZVdoZWVsOiB7XG4gICAgICAgICAgICAgICAgZW5hYmxlOiB0cnVlLFxuICAgICAgICAgICAgICAgIGF4aXM6IG1vdXNld2hlZWxheGlzLFxuICAgICAgICAgICAgICAgIHByZXZlbnREZWZhdWx0OiB0cnVlXG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmICghJCgnaHRtbCcpLmhhc0NsYXNzKCdpc21vYmlsZScpKSB7XG4gICAgICAgIC8vT24gQ3VzdG9tIENsYXNzXG4gICAgICAgIGlmICgkKCcuYy1vdmVyZmxvdycpWzBdKSB7XG4gICAgICAgICAgICBzY3JvbGxCYXIoJy5jLW92ZXJmbG93JywgJ21pbmltYWwtZGFyaycsICd5Jyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgRHJvcGRvd24gTWVudVxuICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gICAgaWYgKCQoJy5kcm9wZG93bicpWzBdKSB7XG4gICAgICAgIC8vUHJvcGFnYXRlXG4gICAgICAgICQoJ2JvZHknKS5vbignY2xpY2snLCAnLmRyb3Bkb3duLm9wZW4gLmRyb3Bkb3duLW1lbnUnLCBmdW5jdGlvbiAoZSkge1xuICAgICAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgJCgnLmRyb3Bkb3duJykub24oJ3Nob3duLmJzLmRyb3Bkb3duJywgZnVuY3Rpb24gKGUpIHtcbiAgICAgICAgICAgIGlmICgkKHRoaXMpLmF0dHIoJ2RhdGEtYW5pbWF0aW9uJykpIHtcbiAgICAgICAgICAgICAgICAkYW5pbUFycmF5ID0gW107XG4gICAgICAgICAgICAgICAgJGFuaW1hdGlvbiA9ICQodGhpcykuZGF0YSgnYW5pbWF0aW9uJyk7XG4gICAgICAgICAgICAgICAgJGFuaW1BcnJheSA9ICRhbmltYXRpb24uc3BsaXQoJywnKTtcbiAgICAgICAgICAgICAgICAkYW5pbWF0aW9uSW4gPSAnYW5pbWF0ZWQgJyArICRhbmltQXJyYXlbMF07XG4gICAgICAgICAgICAgICAgJGFuaW1hdGlvbk91dCA9ICdhbmltYXRlZCAnICsgJGFuaW1BcnJheVsxXTtcbiAgICAgICAgICAgICAgICAkYW5pbWF0aW9uRHVyYXRpb24gPSAnJ1xuICAgICAgICAgICAgICAgIGlmICghJGFuaW1BcnJheVsyXSkge1xuICAgICAgICAgICAgICAgICAgICAkYW5pbWF0aW9uRHVyYXRpb24gPSA1MDA7IC8vaWYgZHVyYXRpb24gaXMgbm90IGRlZmluZWQsIGRlZmF1bHQgaXMgc2V0IHRvIDUwMG1zXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAkYW5pbWF0aW9uRHVyYXRpb24gPSAkYW5pbUFycmF5WzJdO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICQodGhpcykuZmluZCgnLmRyb3Bkb3duLW1lbnUnKS5yZW1vdmVDbGFzcygkYW5pbWF0aW9uT3V0KVxuICAgICAgICAgICAgICAgICQodGhpcykuZmluZCgnLmRyb3Bkb3duLW1lbnUnKS5hZGRDbGFzcygkYW5pbWF0aW9uSW4pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICAkKCcuZHJvcGRvd24nKS5vbignaGlkZS5icy5kcm9wZG93bicsIGZ1bmN0aW9uIChlKSB7XG4gICAgICAgICAgICBpZiAoJCh0aGlzKS5hdHRyKCdkYXRhLWFuaW1hdGlvbicpKSB7XG4gICAgICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgICR0aGlzID0gJCh0aGlzKTtcbiAgICAgICAgICAgICAgICAkZHJvcGRvd25NZW51ID0gJHRoaXMuZmluZCgnLmRyb3Bkb3duLW1lbnUnKTtcblxuICAgICAgICAgICAgICAgICRkcm9wZG93bk1lbnUuYWRkQ2xhc3MoJGFuaW1hdGlvbk91dCk7XG4gICAgICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgICAgICR0aGlzLnJlbW92ZUNsYXNzKCdvcGVuJylcblxuICAgICAgICAgICAgICAgIH0sICRhbmltYXRpb25EdXJhdGlvbik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUZXh0IEZpZWxkXG4gICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiAgICAvL0FkZCBibHVlIGFuaW1hdGVkIGJvcmRlciBhbmQgcmVtb3ZlIHdpdGggY29uZGl0aW9uIHdoZW4gZm9jdXMgYW5kIGJsdXJcbiAgICBpZiAoJCgnLmZnLWxpbmUnKVswXSkge1xuICAgICAgICAkKCdib2R5Jykub24oJ2ZvY3VzJywgJy5mZy1saW5lIC5mb3JtLWNvbnRyb2wnLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAkKHRoaXMpLmNsb3Nlc3QoJy5mZy1saW5lJykuYWRkQ2xhc3MoJ2ZnLXRvZ2dsZWQnKTtcbiAgICAgICAgfSlcblxuICAgICAgICAkKCdib2R5Jykub24oJ2JsdXInLCAnLmZvcm0tY29udHJvbCcsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHZhciBwID0gJCh0aGlzKS5jbG9zZXN0KCcuZm9ybS1ncm91cCwgLmlucHV0LWdyb3VwJyk7XG4gICAgICAgICAgICB2YXIgaSA9IHAuZmluZCgnLmZvcm0tY29udHJvbCcpLnZhbCgpO1xuXG4gICAgICAgICAgICBpZiAocC5oYXNDbGFzcygnZmctZmxvYXQnKSkge1xuICAgICAgICAgICAgICAgIGlmIChpLmxlbmd0aCA9PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgICQodGhpcykuY2xvc2VzdCgnLmZnLWxpbmUnKS5yZW1vdmVDbGFzcygnZmctdG9nZ2xlZCcpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICQodGhpcykuY2xvc2VzdCgnLmZnLWxpbmUnKS5yZW1vdmVDbGFzcygnZmctdG9nZ2xlZCcpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvL0FkZCBibHVlIGJvcmRlciBmb3IgcHJlLXZhbHVlZCBmZy1mbG90IHRleHQgZmVpbGRzXG4gICAgaWYgKCQoJy5mZy1mbG9hdCcpWzBdKSB7XG4gICAgICAgICQoJy5mZy1mbG9hdCAuZm9ybS1jb250cm9sJykuZWFjaChmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICB2YXIgaSA9ICQodGhpcykudmFsKCk7XG5cbiAgICAgICAgICAgIGlmICghaS5sZW5ndGggPT0gMCkge1xuICAgICAgICAgICAgICAgICQodGhpcykuY2xvc2VzdCgnLmZnLWxpbmUnKS5hZGRDbGFzcygnZmctdG9nZ2xlZCcpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBCb290c3RyYXAgQWNjb3JkaW9uIEZpeFxuICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gICAgaWYgKCQoJy5jb2xsYXBzZScpWzBdKSB7XG5cbiAgICAgICAgLy9BZGQgYWN0aXZlIGNsYXNzIGZvciBvcGVuZWQgaXRlbXNcbiAgICAgICAgJCgnLmNvbGxhcHNlJykub24oJ3Nob3cuYnMuY29sbGFwc2UnLCBmdW5jdGlvbiAoZSkge1xuICAgICAgICAgICAgJCh0aGlzKS5jbG9zZXN0KCcucGFuZWwnKS5maW5kKCcucGFuZWwtaGVhZGluZycpLmFkZENsYXNzKCdhY3RpdmUnKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgJCgnLmNvbGxhcHNlJykub24oJ2hpZGUuYnMuY29sbGFwc2UnLCBmdW5jdGlvbiAoZSkge1xuICAgICAgICAgICAgJCh0aGlzKS5jbG9zZXN0KCcucGFuZWwnKS5maW5kKCcucGFuZWwtaGVhZGluZycpLnJlbW92ZUNsYXNzKCdhY3RpdmUnKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgLy9BZGQgYWN0aXZlIGNsYXNzIGZvciBwcmUgb3BlbmVkIGl0ZW1zXG4gICAgICAgICQoJy5jb2xsYXBzZS5pbicpLmVhY2goZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgJCh0aGlzKS5jbG9zZXN0KCcucGFuZWwnKS5maW5kKCcucGFuZWwtaGVhZGluZycpLmFkZENsYXNzKCdhY3RpdmUnKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICBUb29sdGlwc1xuICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gICAgaWYgKCQoJ1tkYXRhLXRvZ2dsZT1cInRvb2x0aXBcIl0nKVswXSkge1xuICAgICAgICAkKCdbZGF0YS10b2dnbGU9XCJ0b29sdGlwXCJdJykudG9vbHRpcCgpO1xuICAgIH1cblxuICAgIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgUG9wb3ZlclxuICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gICAgaWYgKCQoJ1tkYXRhLXRvZ2dsZT1cInBvcG92ZXJcIl0nKVswXSkge1xuICAgICAgICAkKCdbZGF0YS10b2dnbGU9XCJwb3BvdmVyXCJdJykucG9wb3ZlcigpO1xuICAgIH1cblxuICAgIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgSUUgOSBQbGFjZWhvbGRlclxuICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gICAgaWYgKCQoJ2h0bWwnKS5oYXNDbGFzcygnaWU5JykpIHtcbiAgICAgICAgJCgnaW5wdXQsIHRleHRhcmVhJykucGxhY2Vob2xkZXIoe1xuICAgICAgICAgICAgY3VzdG9tQ2xhc3M6ICdpZTktcGxhY2Vob2xkZXInXG4gICAgICAgIH0pO1xuICAgIH1cblxufSk7XG4iXX0=