<html>
  <head>
    <meta charset="utf-8"/>
    <title>Test Report</title>
    <style type="text/css">/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this file,
 * You can obtain one at http://mozilla.org/MPL/2.0/. */

body {
        font-family: Helvetica, Arial, sans-serif;
        font-size: 12px;
        min-width: 1200px;
        color: #999;
}
h2 {
        font-size: 16px;
        color: black;
}

p {
    color: black;
}

a {
        color: #999;
}

table {
        border-collapse: collapse;
}

/******************************
 * SUMMARY INFORMATION
 ******************************/

#configuration {
        font-size: 12px;
}

#configuration td {
        padding: 5px;
        border: 1px solid #E6E6E6;
}

#configuration tr:nth-child(odd) {
        background-color: #f6f6f6;
}

/******************************
 * TEST RESULT COLORS
 ******************************/
span.passed, .passed .col-result {
        color: green;
}
span.expected.failure, .expected.failure .col-result {
        color: orange;
}
span.skipped, .skipped .col-result {
        color: orange;
}
span.unexpected.pass, .unexpected.pass .col-result {
        color: red;
}
span.failed, .failure .col-result {
        color: red;
}
span.error,.error .col-result  {
        color: red;
}


/******************************
 * RESULTS TABLE
 * 
 * 1. Table Layout
 * 2. Debug
 * 3. Sorting items
 * 
 ******************************/

/*------------------
 * 1. Table Layout
 *------------------*/

#results-table {
        border: 1px solid #e6e6e6;
        color: #999;
        font-size: 12px;
        width: 100%
}

#results-table th, #results-table td {
        padding: 5px;
        border: 1px solid #E6E6E6;
        text-align: left
}
#results-table th {
        font-weight: bold
}

/*------------------
 * 2. Debug
 *------------------*/

.log:only-child {
        height: inherit
}
.log {
        background-color: #e6e6e6;
        border: 1px solid #e6e6e6;
        color: black;
        display: block;
        font-family: "Courier New", Courier, monospace;
        height: 230px;
        overflow-y: scroll;
        padding: 5px;
        white-space: pre-wrap
}
div.screenshot {
        border: 1px solid #e6e6e6;
        float: right;
        margin-left: 5px;
        height: 240px
}
div.screenshot img {
        height: 240px
}

/*if the result is passed or xpassed don't show debug row*/
.passed + .debug, .unexpected.pass + .debug {
        display: none;
}

/*------------------
 * 3. Sorting items
 *------------------*/
.sortable {
        cursor: pointer;
}

.sort-icon {
        font-size: 0px;
        float: left;
        margin-right: 5px;
        margin-top: 5px;
        /*triangle*/
        width: 0;
        height: 0;
        border-left: 8px solid transparent;
        border-right: 8px solid transparent;
}

.inactive .sort-icon {
        /*finish triangle*/
        border-top: 8px solid #E6E6E6;
}

.asc.active .sort-icon {
        /*finish triangle*/
        border-bottom: 8px solid #999;
}

.desc.active .sort-icon {
        /*finish triangle*/
        border-top: 8px solid #999;
}
</style></head>
  <body>
    <script type="text/javascript">/*! jQuery v1.8.2 jquery.com | jquery.org/license */
(function(a,b){function G(a){var b=F[a]={};return p.each(a.split(s),function(a,c){b[c]=!0}),b}function J(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(I,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:+d+""===d?+d:H.test(d)?p.parseJSON(d):d}catch(f){}p.data(a,c,d)}else d=b}return d}function K(a){var b;for(b in a){if(b==="data"&&p.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function ba(){return!1}function bb(){return!0}function bh(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function bi(a,b){do a=a[b];while(a&&a.nodeType!==1);return a}function bj(a,b,c){b=b||0;if(p.isFunction(b))return p.grep(a,function(a,d){var e=!!b.call(a,d,a);return e===c});if(b.nodeType)return p.grep(a,function(a,d){return a===b===c});if(typeof b=="string"){var d=p.grep(a,function(a){return a.nodeType===1});if(be.test(b))return p.filter(b,d,!c);b=p.filter(b,d)}return p.grep(a,function(a,d){return p.inArray(a,b)>=0===c})}function bk(a){var b=bl.split("|"),c=a.createDocumentFragment();if(c.createElement)while(b.length)c.createElement(b.pop());return c}function bC(a,b){return a.getElementsByTagName(b)[0]||a.appendChild(a.ownerDocument.createElement(b))}function bD(a,b){if(b.nodeType!==1||!p.hasData(a))return;var c,d,e,f=p._data(a),g=p._data(b,f),h=f.events;if(h){delete g.handle,g.events={};for(c in h)for(d=0,e=h[c].length;d<e;d++)p.event.add(b,c,h[c][d])}g.data&&(g.data=p.extend({},g.data))}function bE(a,b){var c;if(b.nodeType!==1)return;b.clearAttributes&&b.clearAttributes(),b.mergeAttributes&&b.mergeAttributes(a),c=b.nodeName.toLowerCase(),c==="object"?(b.parentNode&&(b.outerHTML=a.outerHTML),p.support.html5Clone&&a.innerHTML&&!p.trim(b.innerHTML)&&(b.innerHTML=a.innerHTML)):c==="input"&&bv.test(a.type)?(b.defaultChecked=b.checked=a.checked,b.value!==a.value&&(b.value=a.value)):c==="option"?b.selected=a.defaultSelected:c==="input"||c==="textarea"?b.defaultValue=a.defaultValue:c==="script"&&b.text!==a.text&&(b.text=a.text),b.removeAttribute(p.expando)}function bF(a){return typeof a.getElementsByTagName!="undefined"?a.getElementsByTagName("*"):typeof a.querySelectorAll!="undefined"?a.querySelectorAll("*"):[]}function bG(a){bv.test(a.type)&&(a.defaultChecked=a.checked)}function bY(a,b){if(b in a)return b;var c=b.charAt(0).toUpperCase()+b.slice(1),d=b,e=bW.length;while(e--){b=bW[e]+c;if(b in a)return b}return d}function bZ(a,b){return a=b||a,p.css(a,"display")==="none"||!p.contains(a.ownerDocument,a)}function b$(a,b){var c,d,e=[],f=0,g=a.length;for(;f<g;f++){c=a[f];if(!c.style)continue;e[f]=p._data(c,"olddisplay"),b?(!e[f]&&c.style.display==="none"&&(c.style.display=""),c.style.display===""&&bZ(c)&&(e[f]=p._data(c,"olddisplay",cc(c.nodeName)))):(d=bH(c,"display"),!e[f]&&d!=="none"&&p._data(c,"olddisplay",d))}for(f=0;f<g;f++){c=a[f];if(!c.style)continue;if(!b||c.style.display==="none"||c.style.display==="")c.style.display=b?e[f]||"":"none"}return a}function b_(a,b,c){var d=bP.exec(b);return d?Math.max(0,d[1]-(c||0))+(d[2]||"px"):b}function ca(a,b,c,d){var e=c===(d?"border":"content")?4:b==="width"?1:0,f=0;for(;e<4;e+=2)c==="margin"&&(f+=p.css(a,c+bV[e],!0)),d?(c==="content"&&(f-=parseFloat(bH(a,"padding"+bV[e]))||0),c!=="margin"&&(f-=parseFloat(bH(a,"border"+bV[e]+"Width"))||0)):(f+=parseFloat(bH(a,"padding"+bV[e]))||0,c!=="padding"&&(f+=parseFloat(bH(a,"border"+bV[e]+"Width"))||0));return f}function cb(a,b,c){var d=b==="width"?a.offsetWidth:a.offsetHeight,e=!0,f=p.support.boxSizing&&p.css(a,"boxSizing")==="border-box";if(d<=0||d==null){d=bH(a,b);if(d<0||d==null)d=a.style[b];if(bQ.test(d))return d;e=f&&(p.support.boxSizingReliable||d===a.style[b]),d=parseFloat(d)||0}return d+ca(a,b,c||(f?"border":"content"),e)+"px"}function cc(a){if(bS[a])return bS[a];var b=p("<"+a+">").appendTo(e.body),c=b.css("display");b.remove();if(c==="none"||c===""){bI=e.body.appendChild(bI||p.extend(e.createElement("iframe"),{frameBorder:0,width:0,height:0}));if(!bJ||!bI.createElement)bJ=(bI.contentWindow||bI.contentDocument).document,bJ.write("<!doctype html><html><body>"),bJ.close();b=bJ.body.appendChild(bJ.createElement(a)),c=bH(b,"display"),e.body.removeChild(bI)}return bS[a]=c,c}function ci(a,b,c,d){var e;if(p.isArray(b))p.each(b,function(b,e){c||ce.test(a)?d(a,e):ci(a+"["+(typeof e=="object"?b:"")+"]",e,c,d)});else if(!c&&p.type(b)==="object")for(e in b)ci(a+"["+e+"]",b[e],c,d);else d(a,b)}function cz(a){return function(b,c){typeof b!="string"&&(c=b,b="*");var d,e,f,g=b.toLowerCase().split(s),h=0,i=g.length;if(p.isFunction(c))for(;h<i;h++)d=g[h],f=/^\+/.test(d),f&&(d=d.substr(1)||"*"),e=a[d]=a[d]||[],e[f?"unshift":"push"](c)}}function cA(a,c,d,e,f,g){f=f||c.dataTypes[0],g=g||{},g[f]=!0;var h,i=a[f],j=0,k=i?i.length:0,l=a===cv;for(;j<k&&(l||!h);j++)h=i[j](c,d,e),typeof h=="string"&&(!l||g[h]?h=b:(c.dataTypes.unshift(h),h=cA(a,c,d,e,h,g)));return(l||!h)&&!g["*"]&&(h=cA(a,c,d,e,"*",g)),h}function cB(a,c){var d,e,f=p.ajaxSettings.flatOptions||{};for(d in c)c[d]!==b&&((f[d]?a:e||(e={}))[d]=c[d]);e&&p.extend(!0,a,e)}function cC(a,c,d){var e,f,g,h,i=a.contents,j=a.dataTypes,k=a.responseFields;for(f in k)f in d&&(c[k[f]]=d[f]);while(j[0]==="*")j.shift(),e===b&&(e=a.mimeType||c.getResponseHeader("content-type"));if(e)for(f in i)if(i[f]&&i[f].test(e)){j.unshift(f);break}if(j[0]in d)g=j[0];else{for(f in d){if(!j[0]||a.converters[f+" "+j[0]]){g=f;break}h||(h=f)}g=g||h}if(g)return g!==j[0]&&j.unshift(g),d[g]}function cD(a,b){var c,d,e,f,g=a.dataTypes.slice(),h=g[0],i={},j=0;a.dataFilter&&(b=a.dataFilter(b,a.dataType));if(g[1])for(c in a.converters)i[c.toLowerCase()]=a.converters[c];for(;e=g[++j];)if(e!=="*"){if(h!=="*"&&h!==e){c=i[h+" "+e]||i["* "+e];if(!c)for(d in i){f=d.split(" ");if(f[1]===e){c=i[h+" "+f[0]]||i["* "+f[0]];if(c){c===!0?c=i[d]:i[d]!==!0&&(e=f[0],g.splice(j--,0,e));break}}}if(c!==!0)if(c&&a["throws"])b=c(b);else try{b=c(b)}catch(k){return{state:"parsererror",error:c?k:"No conversion from "+h+" to "+e}}}h=e}return{state:"success",data:b}}function cL(){try{return new a.XMLHttpRequest}catch(b){}}function cM(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function cU(){return setTimeout(function(){cN=b},0),cN=p.now()}function cV(a,b){p.each(b,function(b,c){var d=(cT[b]||[]).concat(cT["*"]),e=0,f=d.length;for(;e<f;e++)if(d[e].call(a,b,c))return})}function cW(a,b,c){var d,e=0,f=0,g=cS.length,h=p.Deferred().always(function(){delete i.elem}),i=function(){var b=cN||cU(),c=Math.max(0,j.startTime+j.duration-b),d=1-(c/j.duration||0),e=0,f=j.tweens.length;for(;e<f;e++)j.tweens[e].run(d);return h.notifyWith(a,[j,d,c]),d<1&&f?c:(h.resolveWith(a,[j]),!1)},j=h.promise({elem:a,props:p.extend({},b),opts:p.extend(!0,{specialEasing:{}},c),originalProperties:b,originalOptions:c,startTime:cN||cU(),duration:c.duration,tweens:[],createTween:function(b,c,d){var e=p.Tween(a,j.opts,b,c,j.opts.specialEasing[b]||j.opts.easing);return j.tweens.push(e),e},stop:function(b){var c=0,d=b?j.tweens.length:0;for(;c<d;c++)j.tweens[c].run(1);return b?h.resolveWith(a,[j,b]):h.rejectWith(a,[j,b]),this}}),k=j.props;cX(k,j.opts.specialEasing);for(;e<g;e++){d=cS[e].call(j,a,k,j.opts);if(d)return d}return cV(j,k),p.isFunction(j.opts.start)&&j.opts.start.call(a,j),p.fx.timer(p.extend(i,{anim:j,queue:j.opts.queue,elem:a})),j.progress(j.opts.progress).done(j.opts.done,j.opts.complete).fail(j.opts.fail).always(j.opts.always)}function cX(a,b){var c,d,e,f,g;for(c in a){d=p.camelCase(c),e=b[d],f=a[c],p.isArray(f)&&(e=f[1],f=a[c]=f[0]),c!==d&&(a[d]=f,delete a[c]),g=p.cssHooks[d];if(g&&"expand"in g){f=g.expand(f),delete a[d];for(c in f)c in a||(a[c]=f[c],b[c]=e)}else b[d]=e}}function cY(a,b,c){var d,e,f,g,h,i,j,k,l=this,m=a.style,n={},o=[],q=a.nodeType&&bZ(a);c.queue||(j=p._queueHooks(a,"fx"),j.unqueued==null&&(j.unqueued=0,k=j.empty.fire,j.empty.fire=function(){j.unqueued||k()}),j.unqueued++,l.always(function(){l.always(function(){j.unqueued--,p.queue(a,"fx").length||j.empty.fire()})})),a.nodeType===1&&("height"in b||"width"in b)&&(c.overflow=[m.overflow,m.overflowX,m.overflowY],p.css(a,"display")==="inline"&&p.css(a,"float")==="none"&&(!p.support.inlineBlockNeedsLayout||cc(a.nodeName)==="inline"?m.display="inline-block":m.zoom=1)),c.overflow&&(m.overflow="hidden",p.support.shrinkWrapBlocks||l.done(function(){m.overflow=c.overflow[0],m.overflowX=c.overflow[1],m.overflowY=c.overflow[2]}));for(d in b){f=b[d];if(cP.exec(f)){delete b[d];if(f===(q?"hide":"show"))continue;o.push(d)}}g=o.length;if(g){h=p._data(a,"fxshow")||p._data(a,"fxshow",{}),q?p(a).show():l.done(function(){p(a).hide()}),l.done(function(){var b;p.removeData(a,"fxshow",!0);for(b in n)p.style(a,b,n[b])});for(d=0;d<g;d++)e=o[d],i=l.createTween(e,q?h[e]:0),n[e]=h[e]||p.style(a,e),e in h||(h[e]=i.start,q&&(i.end=i.start,i.start=e==="width"||e==="height"?1:0))}}function cZ(a,b,c,d,e){return new cZ.prototype.init(a,b,c,d,e)}function c$(a,b){var c,d={height:a},e=0;b=b?1:0;for(;e<4;e+=2-b)c=bV[e],d["margin"+c]=d["padding"+c]=a;return b&&(d.opacity=d.width=a),d}function da(a){return p.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}var c,d,e=a.document,f=a.location,g=a.navigator,h=a.jQuery,i=a.$,j=Array.prototype.push,k=Array.prototype.slice,l=Array.prototype.indexOf,m=Object.prototype.toString,n=Object.prototype.hasOwnProperty,o=String.prototype.trim,p=function(a,b){return new p.fn.init(a,b,c)},q=/[\-+]?(?:\d*\.|)\d+(?:[eE][\-+]?\d+|)/.source,r=/\S/,s=/\s+/,t=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,u=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,v=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,w=/^[\],:{}\s]*$/,x=/(?:^|:|,)(?:\s*\[)+/g,y=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,z=/"[^"\\\r\n]*"|true|false|null|-?(?:\d\d*\.|)\d+(?:[eE][\-+]?\d+|)/g,A=/^-ms-/,B=/-([\da-z])/gi,C=function(a,b){return(b+"").toUpperCase()},D=function(){e.addEventListener?(e.removeEventListener("DOMContentLoaded",D,!1),p.ready()):e.readyState==="complete"&&(e.detachEvent("onreadystatechange",D),p.ready())},E={};p.fn=p.prototype={constructor:p,init:function(a,c,d){var f,g,h,i;if(!a)return this;if(a.nodeType)return this.context=this[0]=a,this.length=1,this;if(typeof a=="string"){a.charAt(0)==="<"&&a.charAt(a.length-1)===">"&&a.length>=3?f=[null,a,null]:f=u.exec(a);if(f&&(f[1]||!c)){if(f[1])return c=c instanceof p?c[0]:c,i=c&&c.nodeType?c.ownerDocument||c:e,a=p.parseHTML(f[1],i,!0),v.test(f[1])&&p.isPlainObject(c)&&this.attr.call(a,c,!0),p.merge(this,a);g=e.getElementById(f[2]);if(g&&g.parentNode){if(g.id!==f[2])return d.find(a);this.length=1,this[0]=g}return this.context=e,this.selector=a,this}return!c||c.jquery?(c||d).find(a):this.constructor(c).find(a)}return p.isFunction(a)?d.ready(a):(a.selector!==b&&(this.selector=a.selector,this.context=a.context),p.makeArray(a,this))},selector:"",jquery:"1.8.2",length:0,size:function(){return this.length},toArray:function(){return k.call(this)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=p.merge(this.constructor(),a);return d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")"),d},each:function(a,b){return p.each(this,a,b)},ready:function(a){return p.ready.promise().done(a),this},eq:function(a){return a=+a,a===-1?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(k.apply(this,arguments),"slice",k.call(arguments).join(","))},map:function(a){return this.pushStack(p.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:j,sort:[].sort,splice:[].splice},p.fn.init.prototype=p.fn,p.extend=p.fn.extend=function(){var a,c,d,e,f,g,h=arguments[0]||{},i=1,j=arguments.length,k=!1;typeof h=="boolean"&&(k=h,h=arguments[1]||{},i=2),typeof h!="object"&&!p.isFunction(h)&&(h={}),j===i&&(h=this,--i);for(;i<j;i++)if((a=arguments[i])!=null)for(c in a){d=h[c],e=a[c];if(h===e)continue;k&&e&&(p.isPlainObject(e)||(f=p.isArray(e)))?(f?(f=!1,g=d&&p.isArray(d)?d:[]):g=d&&p.isPlainObject(d)?d:{},h[c]=p.extend(k,g,e)):e!==b&&(h[c]=e)}return h},p.extend({noConflict:function(b){return a.$===p&&(a.$=i),b&&a.jQuery===p&&(a.jQuery=h),p},isReady:!1,readyWait:1,holdReady:function(a){a?p.readyWait++:p.ready(!0)},ready:function(a){if(a===!0?--p.readyWait:p.isReady)return;if(!e.body)return setTimeout(p.ready,1);p.isReady=!0;if(a!==!0&&--p.readyWait>0)return;d.resolveWith(e,[p]),p.fn.trigger&&p(e).trigger("ready").off("ready")},isFunction:function(a){return p.type(a)==="function"},isArray:Array.isArray||function(a){return p.type(a)==="array"},isWindow:function(a){return a!=null&&a==a.window},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):E[m.call(a)]||"object"},isPlainObject:function(a){if(!a||p.type(a)!=="object"||a.nodeType||p.isWindow(a))return!1;try{if(a.constructor&&!n.call(a,"constructor")&&!n.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||n.call(a,d)},isEmptyObject:function(a){var b;for(b in a)return!1;return!0},error:function(a){throw new Error(a)},parseHTML:function(a,b,c){var d;return!a||typeof a!="string"?null:(typeof b=="boolean"&&(c=b,b=0),b=b||e,(d=v.exec(a))?[b.createElement(d[1])]:(d=p.buildFragment([a],b,c?null:[]),p.merge([],(d.cacheable?p.clone(d.fragment):d.fragment).childNodes)))},parseJSON:function(b){if(!b||typeof b!="string")return null;b=p.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(w.test(b.replace(y,"@").replace(z,"]").replace(x,"")))return(new Function("return "+b))();p.error("Invalid JSON: "+b)},parseXML:function(c){var d,e;if(!c||typeof c!="string")return null;try{a.DOMParser?(e=new DOMParser,d=e.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(f){d=b}return(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&p.error("Invalid XML: "+c),d},noop:function(){},globalEval:function(b){b&&r.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(A,"ms-").replace(B,C)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toLowerCase()===b.toLowerCase()},each:function(a,c,d){var e,f=0,g=a.length,h=g===b||p.isFunction(a);if(d){if(h){for(e in a)if(c.apply(a[e],d)===!1)break}else for(;f<g;)if(c.apply(a[f++],d)===!1)break}else if(h){for(e in a)if(c.call(a[e],e,a[e])===!1)break}else for(;f<g;)if(c.call(a[f],f,a[f++])===!1)break;return a},trim:o&&!o.call(" ")?function(a){return a==null?"":o.call(a)}:function(a){return a==null?"":(a+"").replace(t,"")},makeArray:function(a,b){var c,d=b||[];return a!=null&&(c=p.type(a),a.length==null||c==="string"||c==="function"||c==="regexp"||p.isWindow(a)?j.call(d,a):p.merge(d,a)),d},inArray:function(a,b,c){var d;if(b){if(l)return l.call(b,a,c);d=b.length,c=c?c<0?Math.max(0,d+c):c:0;for(;c<d;c++)if(c in b&&b[c]===a)return c}return-1},merge:function(a,c){var d=c.length,e=a.length,f=0;if(typeof d=="number")for(;f<d;f++)a[e++]=c[f];else while(c[f]!==b)a[e++]=c[f++];return a.length=e,a},grep:function(a,b,c){var d,e=[],f=0,g=a.length;c=!!c;for(;f<g;f++)d=!!b(a[f],f),c!==d&&e.push(a[f]);return e},map:function(a,c,d){var e,f,g=[],h=0,i=a.length,j=a instanceof p||i!==b&&typeof i=="number"&&(i>0&&a[0]&&a[i-1]||i===0||p.isArray(a));if(j)for(;h<i;h++)e=c(a[h],h,d),e!=null&&(g[g.length]=e);else for(f in a)e=c(a[f],f,d),e!=null&&(g[g.length]=e);return g.concat.apply([],g)},guid:1,proxy:function(a,c){var d,e,f;return typeof c=="string"&&(d=a[c],c=a,a=d),p.isFunction(a)?(e=k.call(arguments,2),f=function(){return a.apply(c,e.concat(k.call(arguments)))},f.guid=a.guid=a.guid||p.guid++,f):b},access:function(a,c,d,e,f,g,h){var i,j=d==null,k=0,l=a.length;if(d&&typeof d=="object"){for(k in d)p.access(a,c,k,d[k],1,g,e);f=1}else if(e!==b){i=h===b&&p.isFunction(e),j&&(i?(i=c,c=function(a,b,c){return i.call(p(a),c)}):(c.call(a,e),c=null));if(c)for(;k<l;k++)c(a[k],d,i?e.call(a[k],k,c(a[k],d)):e,h);f=1}return f?a:j?c.call(a):l?c(a[0],d):g},now:function(){return(new Date).getTime()}}),p.ready.promise=function(b){if(!d){d=p.Deferred();if(e.readyState==="complete")setTimeout(p.ready,1);else if(e.addEventListener)e.addEventListener("DOMContentLoaded",D,!1),a.addEventListener("load",p.ready,!1);else{e.attachEvent("onreadystatechange",D),a.attachEvent("onload",p.ready);var c=!1;try{c=a.frameElement==null&&e.documentElement}catch(f){}c&&c.doScroll&&function g(){if(!p.isReady){try{c.doScroll("left")}catch(a){return setTimeout(g,50)}p.ready()}}()}}return d.promise(b)},p.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(a,b){E["[object "+b+"]"]=b.toLowerCase()}),c=p(e);var F={};p.Callbacks=function(a){a=typeof a=="string"?F[a]||G(a):p.extend({},a);var c,d,e,f,g,h,i=[],j=!a.once&&[],k=function(b){c=a.memory&&b,d=!0,h=f||0,f=0,g=i.length,e=!0;for(;i&&h<g;h++)if(i[h].apply(b[0],b[1])===!1&&a.stopOnFalse){c=!1;break}e=!1,i&&(j?j.length&&k(j.shift()):c?i=[]:l.disable())},l={add:function(){if(i){var b=i.length;(function d(b){p.each(b,function(b,c){var e=p.type(c);e==="function"&&(!a.unique||!l.has(c))?i.push(c):c&&c.length&&e!=="string"&&d(c)})})(arguments),e?g=i.length:c&&(f=b,k(c))}return this},remove:function(){return i&&p.each(arguments,function(a,b){var c;while((c=p.inArray(b,i,c))>-1)i.splice(c,1),e&&(c<=g&&g--,c<=h&&h--)}),this},has:function(a){return p.inArray(a,i)>-1},empty:function(){return i=[],this},disable:function(){return i=j=c=b,this},disabled:function(){return!i},lock:function(){return j=b,c||l.disable(),this},locked:function(){return!j},fireWith:function(a,b){return b=b||[],b=[a,b.slice?b.slice():b],i&&(!d||j)&&(e?j.push(b):k(b)),this},fire:function(){return l.fireWith(this,arguments),this},fired:function(){return!!d}};return l},p.extend({Deferred:function(a){var b=[["resolve","done",p.Callbacks("once memory"),"resolved"],["reject","fail",p.Callbacks("once memory"),"rejected"],["notify","progress",p.Callbacks("memory")]],c="pending",d={state:function(){return c},always:function(){return e.done(arguments).fail(arguments),this},then:function(){var a=arguments;return p.Deferred(function(c){p.each(b,function(b,d){var f=d[0],g=a[b];e[d[1]](p.isFunction(g)?function(){var a=g.apply(this,arguments);a&&p.isFunction(a.promise)?a.promise().done(c.resolve).fail(c.reject).progress(c.notify):c[f+"With"](this===e?c:this,[a])}:c[f])}),a=null}).promise()},promise:function(a){return a!=null?p.extend(a,d):d}},e={};return d.pipe=d.then,p.each(b,function(a,f){var g=f[2],h=f[3];d[f[1]]=g.add,h&&g.add(function(){c=h},b[a^1][2].disable,b[2][2].lock),e[f[0]]=g.fire,e[f[0]+"With"]=g.fireWith}),d.promise(e),a&&a.call(e,e),e},when:function(a){var b=0,c=k.call(arguments),d=c.length,e=d!==1||a&&p.isFunction(a.promise)?d:0,f=e===1?a:p.Deferred(),g=function(a,b,c){return function(d){b[a]=this,c[a]=arguments.length>1?k.call(arguments):d,c===h?f.notifyWith(b,c):--e||f.resolveWith(b,c)}},h,i,j;if(d>1){h=new Array(d),i=new Array(d),j=new Array(d);for(;b<d;b++)c[b]&&p.isFunction(c[b].promise)?c[b].promise().done(g(b,j,c)).fail(f.reject).progress(g(b,i,h)):--e}return e||f.resolveWith(j,c),f.promise()}}),p.support=function(){var b,c,d,f,g,h,i,j,k,l,m,n=e.createElement("div");n.setAttribute("className","t"),n.innerHTML=" <link/><table></table><a href='/a'>a</a><input type='checkbox'/>",c=n.getElementsByTagName("*"),d=n.getElementsByTagName("a")[0],d.style.cssText="top:1px;float:left;opacity:.5";if(!c||!c.length)return{};f=e.createElement("select"),g=f.appendChild(e.createElement("option")),h=n.getElementsByTagName("input")[0],b={leadingWhitespace:n.firstChild.nodeType===3,tbody:!n.getElementsByTagName("tbody").length,htmlSerialize:!!n.getElementsByTagName("link").length,style:/top/.test(d.getAttribute("style")),hrefNormalized:d.getAttribute("href")==="/a",opacity:/^0.5/.test(d.style.opacity),cssFloat:!!d.style.cssFloat,checkOn:h.value==="on",optSelected:g.selected,getSetAttribute:n.className!=="t",enctype:!!e.createElement("form").enctype,html5Clone:e.createElement("nav").cloneNode(!0).outerHTML!=="<:nav></:nav>",boxModel:e.compatMode==="CSS1Compat",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0,boxSizingReliable:!0,pixelPosition:!1},h.checked=!0,b.noCloneChecked=h.cloneNode(!0).checked,f.disabled=!0,b.optDisabled=!g.disabled;try{delete n.test}catch(o){b.deleteExpando=!1}!n.addEventListener&&n.attachEvent&&n.fireEvent&&(n.attachEvent("onclick",m=function(){b.noCloneEvent=!1}),n.cloneNode(!0).fireEvent("onclick"),n.detachEvent("onclick",m)),h=e.createElement("input"),h.value="t",h.setAttribute("type","radio"),b.radioValue=h.value==="t",h.setAttribute("checked","checked"),h.setAttribute("name","t"),n.appendChild(h),i=e.createDocumentFragment(),i.appendChild(n.lastChild),b.checkClone=i.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=h.checked,i.removeChild(h),i.appendChild(n);if(n.attachEvent)for(k in{submit:!0,change:!0,focusin:!0})j="on"+k,l=j in n,l||(n.setAttribute(j,"return;"),l=typeof n[j]=="function"),b[k+"Bubbles"]=l;return p(function(){var c,d,f,g,h="padding:0;margin:0;border:0;display:block;overflow:hidden;",i=e.getElementsByTagName("body")[0];if(!i)return;c=e.createElement("div"),c.style.cssText="visibility:hidden;border:0;width:0;height:0;position:static;top:0;margin-top:1px",i.insertBefore(c,i.firstChild),d=e.createElement("div"),c.appendChild(d),d.innerHTML="<table><tr><td></td><td>t</td></tr></table>",f=d.getElementsByTagName("td"),f[0].style.cssText="padding:0;margin:0;border:0;display:none",l=f[0].offsetHeight===0,f[0].style.display="",f[1].style.display="none",b.reliableHiddenOffsets=l&&f[0].offsetHeight===0,d.innerHTML="",d.style.cssText="box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;",b.boxSizing=d.offsetWidth===4,b.doesNotIncludeMarginInBodyOffset=i.offsetTop!==1,a.getComputedStyle&&(b.pixelPosition=(a.getComputedStyle(d,null)||{}).top!=="1%",b.boxSizingReliable=(a.getComputedStyle(d,null)||{width:"4px"}).width==="4px",g=e.createElement("div"),g.style.cssText=d.style.cssText=h,g.style.marginRight=g.style.width="0",d.style.width="1px",d.appendChild(g),b.reliableMarginRight=!parseFloat((a.getComputedStyle(g,null)||{}).marginRight)),typeof d.style.zoom!="undefined"&&(d.innerHTML="",d.style.cssText=h+"width:1px;padding:1px;display:inline;zoom:1",b.inlineBlockNeedsLayout=d.offsetWidth===3,d.style.display="block",d.style.overflow="visible",d.innerHTML="<div></div>",d.firstChild.style.width="5px",b.shrinkWrapBlocks=d.offsetWidth!==3,c.style.zoom=1),i.removeChild(c),c=d=f=g=null}),i.removeChild(n),c=d=f=g=h=i=n=null,b}();var H=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/,I=/([A-Z])/g;p.extend({cache:{},deletedIds:[],uuid:0,expando:"jQuery"+(p.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){return a=a.nodeType?p.cache[a[p.expando]]:a[p.expando],!!a&&!K(a)},data:function(a,c,d,e){if(!p.acceptData(a))return;var f,g,h=p.expando,i=typeof c=="string",j=a.nodeType,k=j?p.cache:a,l=j?a[h]:a[h]&&h;if((!l||!k[l]||!e&&!k[l].data)&&i&&d===b)return;l||(j?a[h]=l=p.deletedIds.pop()||p.guid++:l=h),k[l]||(k[l]={},j||(k[l].toJSON=p.noop));if(typeof c=="object"||typeof c=="function")e?k[l]=p.extend(k[l],c):k[l].data=p.extend(k[l].data,c);return f=k[l],e||(f.data||(f.data={}),f=f.data),d!==b&&(f[p.camelCase(c)]=d),i?(g=f[c],g==null&&(g=f[p.camelCase(c)])):g=f,g},removeData:function(a,b,c){if(!p.acceptData(a))return;var d,e,f,g=a.nodeType,h=g?p.cache:a,i=g?a[p.expando]:p.expando;if(!h[i])return;if(b){d=c?h[i]:h[i].data;if(d){p.isArray(b)||(b in d?b=[b]:(b=p.camelCase(b),b in d?b=[b]:b=b.split(" ")));for(e=0,f=b.length;e<f;e++)delete d[b[e]];if(!(c?K:p.isEmptyObject)(d))return}}if(!c){delete h[i].data;if(!K(h[i]))return}g?p.cleanData([a],!0):p.support.deleteExpando||h!=h.window?delete h[i]:h[i]=null},_data:function(a,b,c){return p.data(a,b,c,!0)},acceptData:function(a){var b=a.nodeName&&p.noData[a.nodeName.toLowerCase()];return!b||b!==!0&&a.getAttribute("classid")===b}}),p.fn.extend({data:function(a,c){var d,e,f,g,h,i=this[0],j=0,k=null;if(a===b){if(this.length){k=p.data(i);if(i.nodeType===1&&!p._data(i,"parsedAttrs")){f=i.attributes;for(h=f.length;j<h;j++)g=f[j].name,g.indexOf("data-")||(g=p.camelCase(g.substring(5)),J(i,g,k[g]));p._data(i,"parsedAttrs",!0)}}return k}return typeof a=="object"?this.each(function(){p.data(this,a)}):(d=a.split(".",2),d[1]=d[1]?"."+d[1]:"",e=d[1]+"!",p.access(this,function(c){if(c===b)return k=this.triggerHandler("getData"+e,[d[0]]),k===b&&i&&(k=p.data(i,a),k=J(i,a,k)),k===b&&d[1]?this.data(d[0]):k;d[1]=c,this.each(function(){var b=p(this);b.triggerHandler("setData"+e,d),p.data(this,a,c),b.triggerHandler("changeData"+e,d)})},null,c,arguments.length>1,null,!1))},removeData:function(a){return this.each(function(){p.removeData(this,a)})}}),p.extend({queue:function(a,b,c){var d;if(a)return b=(b||"fx")+"queue",d=p._data(a,b),c&&(!d||p.isArray(c)?d=p._data(a,b,p.makeArray(c)):d.push(c)),d||[]},dequeue:function(a,b){b=b||"fx";var c=p.queue(a,b),d=c.length,e=c.shift(),f=p._queueHooks(a,b),g=function(){p.dequeue(a,b)};e==="inprogress"&&(e=c.shift(),d--),e&&(b==="fx"&&c.unshift("inprogress"),delete f.stop,e.call(a,g,f)),!d&&f&&f.empty.fire()},_queueHooks:function(a,b){var c=b+"queueHooks";return p._data(a,c)||p._data(a,c,{empty:p.Callbacks("once memory").add(function(){p.removeData(a,b+"queue",!0),p.removeData(a,c,!0)})})}}),p.fn.extend({queue:function(a,c){var d=2;return typeof a!="string"&&(c=a,a="fx",d--),arguments.length<d?p.queue(this[0],a):c===b?this:this.each(function(){var b=p.queue(this,a,c);p._queueHooks(this,a),a==="fx"&&b[0]!=="inprogress"&&p.dequeue(this,a)})},dequeue:function(a){return this.each(function(){p.dequeue(this,a)})},delay:function(a,b){return a=p.fx?p.fx.speeds[a]||a:a,b=b||"fx",this.queue(b,function(b,c){var d=setTimeout(b,a);c.stop=function(){clearTimeout(d)}})},clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a,c){var d,e=1,f=p.Deferred(),g=this,h=this.length,i=function(){--e||f.resolveWith(g,[g])};typeof a!="string"&&(c=a,a=b),a=a||"fx";while(h--)d=p._data(g[h],a+"queueHooks"),d&&d.empty&&(e++,d.empty.add(i));return i(),f.promise(c)}});var L,M,N,O=/[\t\r\n]/g,P=/\r/g,Q=/^(?:button|input)$/i,R=/^(?:button|input|object|select|textarea)$/i,S=/^a(?:rea|)$/i,T=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,U=p.support.getSetAttribute;p.fn.extend({attr:function(a,b){return p.access(this,p.attr,a,b,arguments.length>1)},removeAttr:function(a){return this.each(function(){p.removeAttr(this,a)})},prop:function(a,b){return p.access(this,p.prop,a,b,arguments.length>1)},removeProp:function(a){return a=p.propFix[a]||a,this.each(function(){try{this[a]=b,delete this[a]}catch(c){}})},addClass:function(a){var b,c,d,e,f,g,h;if(p.isFunction(a))return this.each(function(b){p(this).addClass(a.call(this,b,this.className))});if(a&&typeof a=="string"){b=a.split(s);for(c=0,d=this.length;c<d;c++){e=this[c];if(e.nodeType===1)if(!e.className&&b.length===1)e.className=a;else{f=" "+e.className+" ";for(g=0,h=b.length;g<h;g++)f.indexOf(" "+b[g]+" ")<0&&(f+=b[g]+" ");e.className=p.trim(f)}}}return this},removeClass:function(a){var c,d,e,f,g,h,i;if(p.isFunction(a))return this.each(function(b){p(this).removeClass(a.call(this,b,this.className))});if(a&&typeof a=="string"||a===b){c=(a||"").split(s);for(h=0,i=this.length;h<i;h++){e=this[h];if(e.nodeType===1&&e.className){d=(" "+e.className+" ").replace(O," ");for(f=0,g=c.length;f<g;f++)while(d.indexOf(" "+c[f]+" ")>=0)d=d.replace(" "+c[f]+" "," ");e.className=a?p.trim(d):""}}}return this},toggleClass:function(a,b){var c=typeof a,d=typeof b=="boolean";return p.isFunction(a)?this.each(function(c){p(this).toggleClass(a.call(this,c,this.className,b),b)}):this.each(function(){if(c==="string"){var e,f=0,g=p(this),h=b,i=a.split(s);while(e=i[f++])h=d?h:!g.hasClass(e),g[h?"addClass":"removeClass"](e)}else if(c==="undefined"||c==="boolean")this.className&&p._data(this,"__className__",this.className),this.className=this.className||a===!1?"":p._data(this,"__className__")||""})},hasClass:function(a){var b=" "+a+" ",c=0,d=this.length;for(;c<d;c++)if(this[c].nodeType===1&&(" "+this[c].className+" ").replace(O," ").indexOf(b)>=0)return!0;return!1},val:function(a){var c,d,e,f=this[0];if(!arguments.length){if(f)return c=p.valHooks[f.type]||p.valHooks[f.nodeName.toLowerCase()],c&&"get"in c&&(d=c.get(f,"value"))!==b?d:(d=f.value,typeof d=="string"?d.replace(P,""):d==null?"":d);return}return e=p.isFunction(a),this.each(function(d){var f,g=p(this);if(this.nodeType!==1)return;e?f=a.call(this,d,g.val()):f=a,f==null?f="":typeof f=="number"?f+="":p.isArray(f)&&(f=p.map(f,function(a){return a==null?"":a+""})),c=p.valHooks[this.type]||p.valHooks[this.nodeName.toLowerCase()];if(!c||!("set"in c)||c.set(this,f,"value")===b)this.value=f})}}),p.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,f=a.selectedIndex,g=[],h=a.options,i=a.type==="select-one";if(f<0)return null;c=i?f:0,d=i?f+1:h.length;for(;c<d;c++){e=h[c];if(e.selected&&(p.support.optDisabled?!e.disabled:e.getAttribute("disabled")===null)&&(!e.parentNode.disabled||!p.nodeName(e.parentNode,"optgroup"))){b=p(e).val();if(i)return b;g.push(b)}}return i&&!g.length&&h.length?p(h[f]).val():g},set:function(a,b){var c=p.makeArray(b);return p(a).find("option").each(function(){this.selected=p.inArray(p(this).val(),c)>=0}),c.length||(a.selectedIndex=-1),c}}},attrFn:{},attr:function(a,c,d,e){var f,g,h,i=a.nodeType;if(!a||i===3||i===8||i===2)return;if(e&&p.isFunction(p.fn[c]))return p(a)[c](d);if(typeof a.getAttribute=="undefined")return p.prop(a,c,d);h=i!==1||!p.isXMLDoc(a),h&&(c=c.toLowerCase(),g=p.attrHooks[c]||(T.test(c)?M:L));if(d!==b){if(d===null){p.removeAttr(a,c);return}return g&&"set"in g&&h&&(f=g.set(a,d,c))!==b?f:(a.setAttribute(c,d+""),d)}return g&&"get"in g&&h&&(f=g.get(a,c))!==null?f:(f=a.getAttribute(c),f===null?b:f)},removeAttr:function(a,b){var c,d,e,f,g=0;if(b&&a.nodeType===1){d=b.split(s);for(;g<d.length;g++)e=d[g],e&&(c=p.propFix[e]||e,f=T.test(e),f||p.attr(a,e,""),a.removeAttribute(U?e:c),f&&c in a&&(a[c]=!1))}},attrHooks:{type:{set:function(a,b){if(Q.test(a.nodeName)&&a.parentNode)p.error("type property can't be changed");else if(!p.support.radioValue&&b==="radio"&&p.nodeName(a,"input")){var c=a.value;return a.setAttribute("type",b),c&&(a.value=c),b}}},value:{get:function(a,b){return L&&p.nodeName(a,"button")?L.get(a,b):b in a?a.value:null},set:function(a,b,c){if(L&&p.nodeName(a,"button"))return L.set(a,b,c);a.value=b}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(a,c,d){var e,f,g,h=a.nodeType;if(!a||h===3||h===8||h===2)return;return g=h!==1||!p.isXMLDoc(a),g&&(c=p.propFix[c]||c,f=p.propHooks[c]),d!==b?f&&"set"in f&&(e=f.set(a,d,c))!==b?e:a[c]=d:f&&"get"in f&&(e=f.get(a,c))!==null?e:a[c]},propHooks:{tabIndex:{get:function(a){var c=a.getAttributeNode("tabindex");return c&&c.specified?parseInt(c.value,10):R.test(a.nodeName)||S.test(a.nodeName)&&a.href?0:b}}}}),M={get:function(a,c){var d,e=p.prop(a,c);return e===!0||typeof e!="boolean"&&(d=a.getAttributeNode(c))&&d.nodeValue!==!1?c.toLowerCase():b},set:function(a,b,c){var d;return b===!1?p.removeAttr(a,c):(d=p.propFix[c]||c,d in a&&(a[d]=!0),a.setAttribute(c,c.toLowerCase())),c}},U||(N={name:!0,id:!0,coords:!0},L=p.valHooks.button={get:function(a,c){var d;return d=a.getAttributeNode(c),d&&(N[c]?d.value!=="":d.specified)?d.value:b},set:function(a,b,c){var d=a.getAttributeNode(c);return d||(d=e.createAttribute(c),a.setAttributeNode(d)),d.value=b+""}},p.each(["width","height"],function(a,b){p.attrHooks[b]=p.extend(p.attrHooks[b],{set:function(a,c){if(c==="")return a.setAttribute(b,"auto"),c}})}),p.attrHooks.contenteditable={get:L.get,set:function(a,b,c){b===""&&(b="false"),L.set(a,b,c)}}),p.support.hrefNormalized||p.each(["href","src","width","height"],function(a,c){p.attrHooks[c]=p.extend(p.attrHooks[c],{get:function(a){var d=a.getAttribute(c,2);return d===null?b:d}})}),p.support.style||(p.attrHooks.style={get:function(a){return a.style.cssText.toLowerCase()||b},set:function(a,b){return a.style.cssText=b+""}}),p.support.optSelected||(p.propHooks.selected=p.extend(p.propHooks.selected,{get:function(a){var b=a.parentNode;return b&&(b.selectedIndex,b.parentNode&&b.parentNode.selectedIndex),null}})),p.support.enctype||(p.propFix.enctype="encoding"),p.support.checkOn||p.each(["radio","checkbox"],function(){p.valHooks[this]={get:function(a){return a.getAttribute("value")===null?"on":a.value}}}),p.each(["radio","checkbox"],function(){p.valHooks[this]=p.extend(p.valHooks[this],{set:function(a,b){if(p.isArray(b))return a.checked=p.inArray(p(a).val(),b)>=0}})});var V=/^(?:textarea|input|select)$/i,W=/^([^\.]*|)(?:\.(.+)|)$/,X=/(?:^|\s)hover(\.\S+|)\b/,Y=/^key/,Z=/^(?:mouse|contextmenu)|click/,$=/^(?:focusinfocus|focusoutblur)$/,_=function(a){return p.event.special.hover?a:a.replace(X,"mouseenter$1 mouseleave$1")};p.event={add:function(a,c,d,e,f){var g,h,i,j,k,l,m,n,o,q,r;if(a.nodeType===3||a.nodeType===8||!c||!d||!(g=p._data(a)))return;d.handler&&(o=d,d=o.handler,f=o.selector),d.guid||(d.guid=p.guid++),i=g.events,i||(g.events=i={}),h=g.handle,h||(g.handle=h=function(a){return typeof p!="undefined"&&(!a||p.event.triggered!==a.type)?p.event.dispatch.apply(h.elem,arguments):b},h.elem=a),c=p.trim(_(c)).split(" ");for(j=0;j<c.length;j++){k=W.exec(c[j])||[],l=k[1],m=(k[2]||"").split(".").sort(),r=p.event.special[l]||{},l=(f?r.delegateType:r.bindType)||l,r=p.event.special[l]||{},n=p.extend({type:l,origType:k[1],data:e,handler:d,guid:d.guid,selector:f,needsContext:f&&p.expr.match.needsContext.test(f),namespace:m.join(".")},o),q=i[l];if(!q){q=i[l]=[],q.delegateCount=0;if(!r.setup||r.setup.call(a,e,m,h)===!1)a.addEventListener?a.addEventListener(l,h,!1):a.attachEvent&&a.attachEvent("on"+l,h)}r.add&&(r.add.call(a,n),n.handler.guid||(n.handler.guid=d.guid)),f?q.splice(q.delegateCount++,0,n):q.push(n),p.event.global[l]=!0}a=null},global:{},remove:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,n,o,q,r=p.hasData(a)&&p._data(a);if(!r||!(m=r.events))return;b=p.trim(_(b||"")).split(" ");for(f=0;f<b.length;f++){g=W.exec(b[f])||[],h=i=g[1],j=g[2];if(!h){for(h in m)p.event.remove(a,h+b[f],c,d,!0);continue}n=p.event.special[h]||{},h=(d?n.delegateType:n.bindType)||h,o=m[h]||[],k=o.length,j=j?new RegExp("(^|\\.)"+j.split(".").sort().join("\\.(?:.*\\.|)")+"(\\.|$)"):null;for(l=0;l<o.length;l++)q=o[l],(e||i===q.origType)&&(!c||c.guid===q.guid)&&(!j||j.test(q.namespace))&&(!d||d===q.selector||d==="**"&&q.selector)&&(o.splice(l--,1),q.selector&&o.delegateCount--,n.remove&&n.remove.call(a,q));o.length===0&&k!==o.length&&((!n.teardown||n.teardown.call(a,j,r.handle)===!1)&&p.removeEvent(a,h,r.handle),delete m[h])}p.isEmptyObject(m)&&(delete r.handle,p.removeData(a,"events",!0))},customEvent:{getData:!0,setData:!0,changeData:!0},trigger:function(c,d,f,g){if(!f||f.nodeType!==3&&f.nodeType!==8){var h,i,j,k,l,m,n,o,q,r,s=c.type||c,t=[];if($.test(s+p.event.triggered))return;s.indexOf("!")>=0&&(s=s.slice(0,-1),i=!0),s.indexOf(".")>=0&&(t=s.split("."),s=t.shift(),t.sort());if((!f||p.event.customEvent[s])&&!p.event.global[s])return;c=typeof c=="object"?c[p.expando]?c:new p.Event(s,c):new p.Event(s),c.type=s,c.isTrigger=!0,c.exclusive=i,c.namespace=t.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+t.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,m=s.indexOf(":")<0?"on"+s:"";if(!f){h=p.cache;for(j in h)h[j].events&&h[j].events[s]&&p.event.trigger(c,d,h[j].handle.elem,!0);return}c.result=b,c.target||(c.target=f),d=d!=null?p.makeArray(d):[],d.unshift(c),n=p.event.special[s]||{};if(n.trigger&&n.trigger.apply(f,d)===!1)return;q=[[f,n.bindType||s]];if(!g&&!n.noBubble&&!p.isWindow(f)){r=n.delegateType||s,k=$.test(r+s)?f:f.parentNode;for(l=f;k;k=k.parentNode)q.push([k,r]),l=k;l===(f.ownerDocument||e)&&q.push([l.defaultView||l.parentWindow||a,r])}for(j=0;j<q.length&&!c.isPropagationStopped();j++)k=q[j][0],c.type=q[j][1],o=(p._data(k,"events")||{})[c.type]&&p._data(k,"handle"),o&&o.apply(k,d),o=m&&k[m],o&&p.acceptData(k)&&o.apply&&o.apply(k,d)===!1&&c.preventDefault();return c.type=s,!g&&!c.isDefaultPrevented()&&(!n._default||n._default.apply(f.ownerDocument,d)===!1)&&(s!=="click"||!p.nodeName(f,"a"))&&p.acceptData(f)&&m&&f[s]&&(s!=="focus"&&s!=="blur"||c.target.offsetWidth!==0)&&!p.isWindow(f)&&(l=f[m],l&&(f[m]=null),p.event.triggered=s,f[s](),p.event.triggered=b,l&&(f[m]=l)),c.result}return},dispatch:function(c){c=p.event.fix(c||a.event);var d,e,f,g,h,i,j,l,m,n,o=(p._data(this,"events")||{})[c.type]||[],q=o.delegateCount,r=k.call(arguments),s=!c.exclusive&&!c.namespace,t=p.event.special[c.type]||{},u=[];r[0]=c,c.delegateTarget=this;if(t.preDispatch&&t.preDispatch.call(this,c)===!1)return;if(q&&(!c.button||c.type!=="click"))for(f=c.target;f!=this;f=f.parentNode||this)if(f.disabled!==!0||c.type!=="click"){h={},j=[];for(d=0;d<q;d++)l=o[d],m=l.selector,h[m]===b&&(h[m]=l.needsContext?p(m,this).index(f)>=0:p.find(m,this,null,[f]).length),h[m]&&j.push(l);j.length&&u.push({elem:f,matches:j})}o.length>q&&u.push({elem:this,matches:o.slice(q)});for(d=0;d<u.length&&!c.isPropagationStopped();d++){i=u[d],c.currentTarget=i.elem;for(e=0;e<i.matches.length&&!c.isImmediatePropagationStopped();e++){l=i.matches[e];if(s||!c.namespace&&!l.namespace||c.namespace_re&&c.namespace_re.test(l.namespace))c.data=l.data,c.handleObj=l,g=((p.event.special[l.origType]||{}).handle||l.handler).apply(i.elem,r),g!==b&&(c.result=g,g===!1&&(c.preventDefault(),c.stopPropagation()))}}return t.postDispatch&&t.postDispatch.call(this,c),c.result},props:"attrChange attrName relatedNode srcElement altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(a,b){return a.which==null&&(a.which=b.charCode!=null?b.charCode:b.keyCode),a}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(a,c){var d,f,g,h=c.button,i=c.fromElement;return a.pageX==null&&c.clientX!=null&&(d=a.target.ownerDocument||e,f=d.documentElement,g=d.body,a.pageX=c.clientX+(f&&f.scrollLeft||g&&g.scrollLeft||0)-(f&&f.clientLeft||g&&g.clientLeft||0),a.pageY=c.clientY+(f&&f.scrollTop||g&&g.scrollTop||0)-(f&&f.clientTop||g&&g.clientTop||0)),!a.relatedTarget&&i&&(a.relatedTarget=i===a.target?c.toElement:i),!a.which&&h!==b&&(a.which=h&1?1:h&2?3:h&4?2:0),a}},fix:function(a){if(a[p.expando])return a;var b,c,d=a,f=p.event.fixHooks[a.type]||{},g=f.props?this.props.concat(f.props):this.props;a=p.Event(d);for(b=g.length;b;)c=g[--b],a[c]=d[c];return a.target||(a.target=d.srcElement||e),a.target.nodeType===3&&(a.target=a.target.parentNode),a.metaKey=!!a.metaKey,f.filter?f.filter(a,d):a},special:{load:{noBubble:!0},focus:{delegateType:"focusin"},blur:{delegateType:"focusout"},beforeunload:{setup:function(a,b,c){p.isWindow(this)&&(this.onbeforeunload=c)},teardown:function(a,b){this.onbeforeunload===b&&(this.onbeforeunload=null)}}},simulate:function(a,b,c,d){var e=p.extend(new p.Event,c,{type:a,isSimulated:!0,originalEvent:{}});d?p.event.trigger(e,null,b):p.event.dispatch.call(b,e),e.isDefaultPrevented()&&c.preventDefault()}},p.event.handle=p.event.dispatch,p.removeEvent=e.removeEventListener?function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c,!1)}:function(a,b,c){var d="on"+b;a.detachEvent&&(typeof a[d]=="undefined"&&(a[d]=null),a.detachEvent(d,c))},p.Event=function(a,b){if(this instanceof p.Event)a&&a.type?(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||a.returnValue===!1||a.getPreventDefault&&a.getPreventDefault()?bb:ba):this.type=a,b&&p.extend(this,b),this.timeStamp=a&&a.timeStamp||p.now(),this[p.expando]=!0;else return new p.Event(a,b)},p.Event.prototype={preventDefault:function(){this.isDefaultPrevented=bb;var a=this.originalEvent;if(!a)return;a.preventDefault?a.preventDefault():a.returnValue=!1},stopPropagation:function(){this.isPropagationStopped=bb;var a=this.originalEvent;if(!a)return;a.stopPropagation&&a.stopPropagation(),a.cancelBubble=!0},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=bb,this.stopPropagation()},isDefaultPrevented:ba,isPropagationStopped:ba,isImmediatePropagationStopped:ba},p.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){p.event.special[a]={delegateType:b,bindType:b,handle:function(a){var c,d=this,e=a.relatedTarget,f=a.handleObj,g=f.selector;if(!e||e!==d&&!p.contains(d,e))a.type=f.origType,c=f.handler.apply(this,arguments),a.type=b;return c}}}),p.support.submitBubbles||(p.event.special.submit={setup:function(){if(p.nodeName(this,"form"))return!1;p.event.add(this,"click._submit keypress._submit",function(a){var c=a.target,d=p.nodeName(c,"input")||p.nodeName(c,"button")?c.form:b;d&&!p._data(d,"_submit_attached")&&(p.event.add(d,"submit._submit",function(a){a._submit_bubble=!0}),p._data(d,"_submit_attached",!0))})},postDispatch:function(a){a._submit_bubble&&(delete a._submit_bubble,this.parentNode&&!a.isTrigger&&p.event.simulate("submit",this.parentNode,a,!0))},teardown:function(){if(p.nodeName(this,"form"))return!1;p.event.remove(this,"._submit")}}),p.support.changeBubbles||(p.event.special.change={setup:function(){if(V.test(this.nodeName)){if(this.type==="checkbox"||this.type==="radio")p.event.add(this,"propertychange._change",function(a){a.originalEvent.propertyName==="checked"&&(this._just_changed=!0)}),p.event.add(this,"click._change",function(a){this._just_changed&&!a.isTrigger&&(this._just_changed=!1),p.event.simulate("change",this,a,!0)});return!1}p.event.add(this,"beforeactivate._change",function(a){var b=a.target;V.test(b.nodeName)&&!p._data(b,"_change_attached")&&(p.event.add(b,"change._change",function(a){this.parentNode&&!a.isSimulated&&!a.isTrigger&&p.event.simulate("change",this.parentNode,a,!0)}),p._data(b,"_change_attached",!0))})},handle:function(a){var b=a.target;if(this!==b||a.isSimulated||a.isTrigger||b.type!=="radio"&&b.type!=="checkbox")return a.handleObj.handler.apply(this,arguments)},teardown:function(){return p.event.remove(this,"._change"),!V.test(this.nodeName)}}),p.support.focusinBubbles||p.each({focus:"focusin",blur:"focusout"},function(a,b){var c=0,d=function(a){p.event.simulate(b,a.target,p.event.fix(a),!0)};p.event.special[b]={setup:function(){c++===0&&e.addEventListener(a,d,!0)},teardown:function(){--c===0&&e.removeEventListener(a,d,!0)}}}),p.fn.extend({on:function(a,c,d,e,f){var g,h;if(typeof a=="object"){typeof c!="string"&&(d=d||c,c=b);for(h in a)this.on(h,c,d,a[h],f);return this}d==null&&e==null?(e=c,d=c=b):e==null&&(typeof c=="string"?(e=d,d=b):(e=d,d=c,c=b));if(e===!1)e=ba;else if(!e)return this;return f===1&&(g=e,e=function(a){return p().off(a),g.apply(this,arguments)},e.guid=g.guid||(g.guid=p.guid++)),this.each(function(){p.event.add(this,a,e,d,c)})},one:function(a,b,c,d){return this.on(a,b,c,d,1)},off:function(a,c,d){var e,f;if(a&&a.preventDefault&&a.handleObj)return e=a.handleObj,p(a.delegateTarget).off(e.namespace?e.origType+"."+e.namespace:e.origType,e.selector,e.handler),this;if(typeof a=="object"){for(f in a)this.off(f,c,a[f]);return this}if(c===!1||typeof c=="function")d=c,c=b;return d===!1&&(d=ba),this.each(function(){p.event.remove(this,a,d,c)})},bind:function(a,b,c){return this.on(a,null,b,c)},unbind:function(a,b){return this.off(a,null,b)},live:function(a,b,c){return p(this.context).on(a,this.selector,b,c),this},die:function(a,b){return p(this.context).off(a,this.selector||"**",b),this},delegate:function(a,b,c,d){return this.on(b,a,c,d)},undelegate:function(a,b,c){return arguments.length===1?this.off(a,"**"):this.off(b,a||"**",c)},trigger:function(a,b){return this.each(function(){p.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0])return p.event.trigger(a,b,this[0],!0)},toggle:function(a){var b=arguments,c=a.guid||p.guid++,d=0,e=function(c){var e=(p._data(this,"lastToggle"+a.guid)||0)%d;return p._data(this,"lastToggle"+a.guid,e+1),c.preventDefault(),b[e].apply(this,arguments)||!1};e.guid=c;while(d<b.length)b[d++].guid=c;return this.click(e)},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}}),p.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(a,b){p.fn[b]=function(a,c){return c==null&&(c=a,a=null),arguments.length>0?this.on(b,null,a,c):this.trigger(b)},Y.test(b)&&(p.event.fixHooks[b]=p.event.keyHooks),Z.test(b)&&(p.event.fixHooks[b]=p.event.mouseHooks)}),function(a,b){function bc(a,b,c,d){c=c||[],b=b||r;var e,f,i,j,k=b.nodeType;if(!a||typeof a!="string")return c;if(k!==1&&k!==9)return[];i=g(b);if(!i&&!d)if(e=P.exec(a))if(j=e[1]){if(k===9){f=b.getElementById(j);if(!f||!f.parentNode)return c;if(f.id===j)return c.push(f),c}else if(b.ownerDocument&&(f=b.ownerDocument.getElementById(j))&&h(b,f)&&f.id===j)return c.push(f),c}else{if(e[2])return w.apply(c,x.call(b.getElementsByTagName(a),0)),c;if((j=e[3])&&_&&b.getElementsByClassName)return w.apply(c,x.call(b.getElementsByClassName(j),0)),c}return bp(a.replace(L,"$1"),b,c,d,i)}function bd(a){return function(b){var c=b.nodeName.toLowerCase();return c==="input"&&b.type===a}}function be(a){return function(b){var c=b.nodeName.toLowerCase();return(c==="input"||c==="button")&&b.type===a}}function bf(a){return z(function(b){return b=+b,z(function(c,d){var e,f=a([],c.length,b),g=f.length;while(g--)c[e=f[g]]&&(c[e]=!(d[e]=c[e]))})})}function bg(a,b,c){if(a===b)return c;var d=a.nextSibling;while(d){if(d===b)return-1;d=d.nextSibling}return 1}function bh(a,b){var c,d,f,g,h,i,j,k=C[o][a];if(k)return b?0:k.slice(0);h=a,i=[],j=e.preFilter;while(h){if(!c||(d=M.exec(h)))d&&(h=h.slice(d[0].length)),i.push(f=[]);c=!1;if(d=N.exec(h))f.push(c=new q(d.shift())),h=h.slice(c.length),c.type=d[0].replace(L," ");for(g in e.filter)(d=W[g].exec(h))&&(!j[g]||(d=j[g](d,r,!0)))&&(f.push(c=new q(d.shift())),h=h.slice(c.length),c.type=g,c.matches=d);if(!c)break}return b?h.length:h?bc.error(a):C(a,i).slice(0)}function bi(a,b,d){var e=b.dir,f=d&&b.dir==="parentNode",g=u++;return b.first?function(b,c,d){while(b=b[e])if(f||b.nodeType===1)return a(b,c,d)}:function(b,d,h){if(!h){var i,j=t+" "+g+" ",k=j+c;while(b=b[e])if(f||b.nodeType===1){if((i=b[o])===k)return b.sizset;if(typeof i=="string"&&i.indexOf(j)===0){if(b.sizset)return b}else{b[o]=k;if(a(b,d,h))return b.sizset=!0,b;b.sizset=!1}}}else while(b=b[e])if(f||b.nodeType===1)if(a(b,d,h))return b}}function bj(a){return a.length>1?function(b,c,d){var e=a.length;while(e--)if(!a[e](b,c,d))return!1;return!0}:a[0]}function bk(a,b,c,d,e){var f,g=[],h=0,i=a.length,j=b!=null;for(;h<i;h++)if(f=a[h])if(!c||c(f,d,e))g.push(f),j&&b.push(h);return g}function bl(a,b,c,d,e,f){return d&&!d[o]&&(d=bl(d)),e&&!e[o]&&(e=bl(e,f)),z(function(f,g,h,i){if(f&&e)return;var j,k,l,m=[],n=[],o=g.length,p=f||bo(b||"*",h.nodeType?[h]:h,[],f),q=a&&(f||!b)?bk(p,m,a,h,i):p,r=c?e||(f?a:o||d)?[]:g:q;c&&c(q,r,h,i);if(d){l=bk(r,n),d(l,[],h,i),j=l.length;while(j--)if(k=l[j])r[n[j]]=!(q[n[j]]=k)}if(f){j=a&&r.length;while(j--)if(k=r[j])f[m[j]]=!(g[m[j]]=k)}else r=bk(r===g?r.splice(o,r.length):r),e?e(null,g,r,i):w.apply(g,r)})}function bm(a){var b,c,d,f=a.length,g=e.relative[a[0].type],h=g||e.relative[" "],i=g?1:0,j=bi(function(a){return a===b},h,!0),k=bi(function(a){return y.call(b,a)>-1},h,!0),m=[function(a,c,d){return!g&&(d||c!==l)||((b=c).nodeType?j(a,c,d):k(a,c,d))}];for(;i<f;i++)if(c=e.relative[a[i].type])m=[bi(bj(m),c)];else{c=e.filter[a[i].type].apply(null,a[i].matches);if(c[o]){d=++i;for(;d<f;d++)if(e.relative[a[d].type])break;return bl(i>1&&bj(m),i>1&&a.slice(0,i-1).join("").replace(L,"$1"),c,i<d&&bm(a.slice(i,d)),d<f&&bm(a=a.slice(d)),d<f&&a.join(""))}m.push(c)}return bj(m)}function bn(a,b){var d=b.length>0,f=a.length>0,g=function(h,i,j,k,m){var n,o,p,q=[],s=0,u="0",x=h&&[],y=m!=null,z=l,A=h||f&&e.find.TAG("*",m&&i.parentNode||i),B=t+=z==null?1:Math.E;y&&(l=i!==r&&i,c=g.el);for(;(n=A[u])!=null;u++){if(f&&n){for(o=0;p=a[o];o++)if(p(n,i,j)){k.push(n);break}y&&(t=B,c=++g.el)}d&&((n=!p&&n)&&s--,h&&x.push(n))}s+=u;if(d&&u!==s){for(o=0;p=b[o];o++)p(x,q,i,j);if(h){if(s>0)while(u--)!x[u]&&!q[u]&&(q[u]=v.call(k));q=bk(q)}w.apply(k,q),y&&!h&&q.length>0&&s+b.length>1&&bc.uniqueSort(k)}return y&&(t=B,l=z),x};return g.el=0,d?z(g):g}function bo(a,b,c,d){var e=0,f=b.length;for(;e<f;e++)bc(a,b[e],c,d);return c}function bp(a,b,c,d,f){var g,h,j,k,l,m=bh(a),n=m.length;if(!d&&m.length===1){h=m[0]=m[0].slice(0);if(h.length>2&&(j=h[0]).type==="ID"&&b.nodeType===9&&!f&&e.relative[h[1].type]){b=e.find.ID(j.matches[0].replace(V,""),b,f)[0];if(!b)return c;a=a.slice(h.shift().length)}for(g=W.POS.test(a)?-1:h.length-1;g>=0;g--){j=h[g];if(e.relative[k=j.type])break;if(l=e.find[k])if(d=l(j.matches[0].replace(V,""),R.test(h[0].type)&&b.parentNode||b,f)){h.splice(g,1),a=d.length&&h.join("");if(!a)return w.apply(c,x.call(d,0)),c;break}}}return i(a,m)(d,b,f,c,R.test(a)),c}function bq(){}var c,d,e,f,g,h,i,j,k,l,m=!0,n="undefined",o=("sizcache"+Math.random()).replace(".",""),q=String,r=a.document,s=r.documentElement,t=0,u=0,v=[].pop,w=[].push,x=[].slice,y=[].indexOf||function(a){var b=0,c=this.length;for(;b<c;b++)if(this[b]===a)return b;return-1},z=function(a,b){return a[o]=b==null||b,a},A=function(){var a={},b=[];return z(function(c,d){return b.push(c)>e.cacheLength&&delete a[b.shift()],a[c]=d},a)},B=A(),C=A(),D=A(),E="[\\x20\\t\\r\\n\\f]",F="(?:\\\\.|[-\\w]|[^\\x00-\\xa0])+",G=F.replace("w","w#"),H="([*^$|!~]?=)",I="\\["+E+"*("+F+")"+E+"*(?:"+H+E+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+G+")|)|)"+E+"*\\]",J=":("+F+")(?:\\((?:(['\"])((?:\\\\.|[^\\\\])*?)\\2|([^()[\\]]*|(?:(?:"+I+")|[^:]|\\\\.)*|.*))\\)|)",K=":(even|odd|eq|gt|lt|nth|first|last)(?:\\("+E+"*((?:-\\d)?\\d*)"+E+"*\\)|)(?=[^-]|$)",L=new RegExp("^"+E+"+|((?:^|[^\\\\])(?:\\\\.)*)"+E+"+$","g"),M=new RegExp("^"+E+"*,"+E+"*"),N=new RegExp("^"+E+"*([\\x20\\t\\r\\n\\f>+~])"+E+"*"),O=new RegExp(J),P=/^(?:#([\w\-]+)|(\w+)|\.([\w\-]+))$/,Q=/^:not/,R=/[\x20\t\r\n\f]*[+~]/,S=/:not\($/,T=/h\d/i,U=/input|select|textarea|button/i,V=/\\(?!\\)/g,W={ID:new RegExp("^#("+F+")"),CLASS:new RegExp("^\\.("+F+")"),NAME:new RegExp("^\\[name=['\"]?("+F+")['\"]?\\]"),TAG:new RegExp("^("+F.replace("w","w*")+")"),ATTR:new RegExp("^"+I),PSEUDO:new RegExp("^"+J),POS:new RegExp(K,"i"),CHILD:new RegExp("^:(only|nth|first|last)-child(?:\\("+E+"*(even|odd|(([+-]|)(\\d*)n|)"+E+"*(?:([+-]|)"+E+"*(\\d+)|))"+E+"*\\)|)","i"),needsContext:new RegExp("^"+E+"*[>+~]|"+K,"i")},X=function(a){var b=r.createElement("div");try{return a(b)}catch(c){return!1}finally{b=null}},Y=X(function(a){return a.appendChild(r.createComment("")),!a.getElementsByTagName("*").length}),Z=X(function(a){return a.innerHTML="<a href='#'></a>",a.firstChild&&typeof a.firstChild.getAttribute!==n&&a.firstChild.getAttribute("href")==="#"}),$=X(function(a){a.innerHTML="<select></select>";var b=typeof a.lastChild.getAttribute("multiple");return b!=="boolean"&&b!=="string"}),_=X(function(a){return a.innerHTML="<div class='hidden e'></div><div class='hidden'></div>",!a.getElementsByClassName||!a.getElementsByClassName("e").length?!1:(a.lastChild.className="e",a.getElementsByClassName("e").length===2)}),ba=X(function(a){a.id=o+0,a.innerHTML="<a name='"+o+"'></a><div name='"+o+"'></div>",s.insertBefore(a,s.firstChild);var b=r.getElementsByName&&r.getElementsByName(o).length===2+r.getElementsByName(o+0).length;return d=!r.getElementById(o),s.removeChild(a),b});try{x.call(s.childNodes,0)[0].nodeType}catch(bb){x=function(a){var b,c=[];for(;b=this[a];a++)c.push(b);return c}}bc.matches=function(a,b){return bc(a,null,null,b)},bc.matchesSelector=function(a,b){return bc(b,null,null,[a]).length>0},f=bc.getText=function(a){var b,c="",d=0,e=a.nodeType;if(e){if(e===1||e===9||e===11){if(typeof a.textContent=="string")return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=f(a)}else if(e===3||e===4)return a.nodeValue}else for(;b=a[d];d++)c+=f(b);return c},g=bc.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return b?b.nodeName!=="HTML":!1},h=bc.contains=s.contains?function(a,b){var c=a.nodeType===9?a.documentElement:a,d=b&&b.parentNode;return a===d||!!(d&&d.nodeType===1&&c.contains&&c.contains(d))}:s.compareDocumentPosition?function(a,b){return b&&!!(a.compareDocumentPosition(b)&16)}:function(a,b){while(b=b.parentNode)if(b===a)return!0;return!1},bc.attr=function(a,b){var c,d=g(a);return d||(b=b.toLowerCase()),(c=e.attrHandle[b])?c(a):d||$?a.getAttribute(b):(c=a.getAttributeNode(b),c?typeof a[b]=="boolean"?a[b]?b:null:c.specified?c.value:null:null)},e=bc.selectors={cacheLength:50,createPseudo:z,match:W,attrHandle:Z?{}:{href:function(a){return a.getAttribute("href",2)},type:function(a){return a.getAttribute("type")}},find:{ID:d?function(a,b,c){if(typeof b.getElementById!==n&&!c){var d=b.getElementById(a);return d&&d.parentNode?[d]:[]}}:function(a,c,d){if(typeof c.getElementById!==n&&!d){var e=c.getElementById(a);return e?e.id===a||typeof e.getAttributeNode!==n&&e.getAttributeNode("id").value===a?[e]:b:[]}},TAG:Y?function(a,b){if(typeof b.getElementsByTagName!==n)return b.getElementsByTagName(a)}:function(a,b){var c=b.getElementsByTagName(a);if(a==="*"){var d,e=[],f=0;for(;d=c[f];f++)d.nodeType===1&&e.push(d);return e}return c},NAME:ba&&function(a,b){if(typeof b.getElementsByName!==n)return b.getElementsByName(name)},CLASS:_&&function(a,b,c){if(typeof b.getElementsByClassName!==n&&!c)return b.getElementsByClassName(a)}},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(V,""),a[3]=(a[4]||a[5]||"").replace(V,""),a[2]==="~="&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),a[1]==="nth"?(a[2]||bc.error(a[0]),a[3]=+(a[3]?a[4]+(a[5]||1):2*(a[2]==="even"||a[2]==="odd")),a[4]=+(a[6]+a[7]||a[2]==="odd")):a[2]&&bc.error(a[0]),a},PSEUDO:function(a){var b,c;if(W.CHILD.test(a[0]))return null;if(a[3])a[2]=a[3];else if(b=a[4])O.test(b)&&(c=bh(b,!0))&&(c=b.indexOf(")",b.length-c)-b.length)&&(b=b.slice(0,c),a[0]=a[0].slice(0,c)),a[2]=b;return a.slice(0,3)}},filter:{ID:d?function(a){return a=a.replace(V,""),function(b){return b.getAttribute("id")===a}}:function(a){return a=a.replace(V,""),function(b){var c=typeof b.getAttributeNode!==n&&b.getAttributeNode("id");return c&&c.value===a}},TAG:function(a){return a==="*"?function(){return!0}:(a=a.replace(V,"").toLowerCase(),function(b){return b.nodeName&&b.nodeName.toLowerCase()===a})},CLASS:function(a){var b=B[o][a];return b||(b=B(a,new RegExp("(^|"+E+")"+a+"("+E+"|$)"))),function(a){return b.test(a.className||typeof a.getAttribute!==n&&a.getAttribute("class")||"")}},ATTR:function(a,b,c){return function(d,e){var f=bc.attr(d,a);return f==null?b==="!=":b?(f+="",b==="="?f===c:b==="!="?f!==c:b==="^="?c&&f.indexOf(c)===0:b==="*="?c&&f.indexOf(c)>-1:b==="$="?c&&f.substr(f.length-c.length)===c:b==="~="?(" "+f+" ").indexOf(c)>-1:b==="|="?f===c||f.substr(0,c.length+1)===c+"-":!1):!0}},CHILD:function(a,b,c,d){return a==="nth"?function(a){var b,e,f=a.parentNode;if(c===1&&d===0)return!0;if(f){e=0;for(b=f.firstChild;b;b=b.nextSibling)if(b.nodeType===1){e++;if(a===b)break}}return e-=d,e===c||e%c===0&&e/c>=0}:function(b){var c=b;switch(a){case"only":case"first":while(c=c.previousSibling)if(c.nodeType===1)return!1;if(a==="first")return!0;c=b;case"last":while(c=c.nextSibling)if(c.nodeType===1)return!1;return!0}}},PSEUDO:function(a,b){var c,d=e.pseudos[a]||e.setFilters[a.toLowerCase()]||bc.error("unsupported pseudo: "+a);return d[o]?d(b):d.length>1?(c=[a,a,"",b],e.setFilters.hasOwnProperty(a.toLowerCase())?z(function(a,c){var e,f=d(a,b),g=f.length;while(g--)e=y.call(a,f[g]),a[e]=!(c[e]=f[g])}):function(a){return d(a,0,c)}):d}},pseudos:{not:z(function(a){var b=[],c=[],d=i(a.replace(L,"$1"));return d[o]?z(function(a,b,c,e){var f,g=d(a,null,e,[]),h=a.length;while(h--)if(f=g[h])a[h]=!(b[h]=f)}):function(a,e,f){return b[0]=a,d(b,null,f,c),!c.pop()}}),has:z(function(a){return function(b){return bc(a,b).length>0}}),contains:z(function(a){return function(b){return(b.textContent||b.innerText||f(b)).indexOf(a)>-1}}),enabled:function(a){return a.disabled===!1},disabled:function(a){return a.disabled===!0},checked:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&!!a.checked||b==="option"&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,a.selected===!0},parent:function(a){return!e.pseudos.empty(a)},empty:function(a){var b;a=a.firstChild;while(a){if(a.nodeName>"@"||(b=a.nodeType)===3||b===4)return!1;a=a.nextSibling}return!0},header:function(a){return T.test(a.nodeName)},text:function(a){var b,c;return a.nodeName.toLowerCase()==="input"&&(b=a.type)==="text"&&((c=a.getAttribute("type"))==null||c.toLowerCase()===b)},radio:bd("radio"),checkbox:bd("checkbox"),file:bd("file"),password:bd("password"),image:bd("image"),submit:be("submit"),reset:be("reset"),button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&a.type==="button"||b==="button"},input:function(a){return U.test(a.nodeName)},focus:function(a){var b=a.ownerDocument;return a===b.activeElement&&(!b.hasFocus||b.hasFocus())&&(!!a.type||!!a.href)},active:function(a){return a===a.ownerDocument.activeElement},first:bf(function(a,b,c){return[0]}),last:bf(function(a,b,c){return[b-1]}),eq:bf(function(a,b,c){return[c<0?c+b:c]}),even:bf(function(a,b,c){for(var d=0;d<b;d+=2)a.push(d);return a}),odd:bf(function(a,b,c){for(var d=1;d<b;d+=2)a.push(d);return a}),lt:bf(function(a,b,c){for(var d=c<0?c+b:c;--d>=0;)a.push(d);return a}),gt:bf(function(a,b,c){for(var d=c<0?c+b:c;++d<b;)a.push(d);return a})}},j=s.compareDocumentPosition?function(a,b){return a===b?(k=!0,0):(!a.compareDocumentPosition||!b.compareDocumentPosition?a.compareDocumentPosition:a.compareDocumentPosition(b)&4)?-1:1}:function(a,b){if(a===b)return k=!0,0;if(a.sourceIndex&&b.sourceIndex)return a.sourceIndex-b.sourceIndex;var c,d,e=[],f=[],g=a.parentNode,h=b.parentNode,i=g;if(g===h)return bg(a,b);if(!g)return-1;if(!h)return 1;while(i)e.unshift(i),i=i.parentNode;i=h;while(i)f.unshift(i),i=i.parentNode;c=e.length,d=f.length;for(var j=0;j<c&&j<d;j++)if(e[j]!==f[j])return bg(e[j],f[j]);return j===c?bg(a,f[j],-1):bg(e[j],b,1)},[0,0].sort(j),m=!k,bc.uniqueSort=function(a){var b,c=1;k=m,a.sort(j);if(k)for(;b=a[c];c++)b===a[c-1]&&a.splice(c--,1);return a},bc.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)},i=bc.compile=function(a,b){var c,d=[],e=[],f=D[o][a];if(!f){b||(b=bh(a)),c=b.length;while(c--)f=bm(b[c]),f[o]?d.push(f):e.push(f);f=D(a,bn(e,d))}return f},r.querySelectorAll&&function(){var a,b=bp,c=/'|\\/g,d=/\=[\x20\t\r\n\f]*([^'"\]]*)[\x20\t\r\n\f]*\]/g,e=[":focus"],f=[":active",":focus"],h=s.matchesSelector||s.mozMatchesSelector||s.webkitMatchesSelector||s.oMatchesSelector||s.msMatchesSelector;X(function(a){a.innerHTML="<select><option selected=''></option></select>",a.querySelectorAll("[selected]").length||e.push("\\["+E+"*(?:checked|disabled|ismap|multiple|readonly|selected|value)"),a.querySelectorAll(":checked").length||e.push(":checked")}),X(function(a){a.innerHTML="<p test=''></p>",a.querySelectorAll("[test^='']").length&&e.push("[*^$]="+E+"*(?:\"\"|'')"),a.innerHTML="<input type='hidden'/>",a.querySelectorAll(":enabled").length||e.push(":enabled",":disabled")}),e=new RegExp(e.join("|")),bp=function(a,d,f,g,h){if(!g&&!h&&(!e||!e.test(a))){var i,j,k=!0,l=o,m=d,n=d.nodeType===9&&a;if(d.nodeType===1&&d.nodeName.toLowerCase()!=="object"){i=bh(a),(k=d.getAttribute("id"))?l=k.replace(c,"\\$&"):d.setAttribute("id",l),l="[id='"+l+"'] ",j=i.length;while(j--)i[j]=l+i[j].join("");m=R.test(a)&&d.parentNode||d,n=i.join(",")}if(n)try{return w.apply(f,x.call(m.querySelectorAll(n),0)),f}catch(p){}finally{k||d.removeAttribute("id")}}return b(a,d,f,g,h)},h&&(X(function(b){a=h.call(b,"div");try{h.call(b,"[test!='']:sizzle"),f.push("!=",J)}catch(c){}}),f=new RegExp(f.join("|")),bc.matchesSelector=function(b,c){c=c.replace(d,"='$1']");if(!g(b)&&!f.test(c)&&(!e||!e.test(c)))try{var i=h.call(b,c);if(i||a||b.document&&b.document.nodeType!==11)return i}catch(j){}return bc(c,null,null,[b]).length>0})}(),e.pseudos.nth=e.pseudos.eq,e.filters=bq.prototype=e.pseudos,e.setFilters=new bq,bc.attr=p.attr,p.find=bc,p.expr=bc.selectors,p.expr[":"]=p.expr.pseudos,p.unique=bc.uniqueSort,p.text=bc.getText,p.isXMLDoc=bc.isXML,p.contains=bc.contains}(a);var bc=/Until$/,bd=/^(?:parents|prev(?:Until|All))/,be=/^.[^:#\[\.,]*$/,bf=p.expr.match.needsContext,bg={children:!0,contents:!0,next:!0,prev:!0};p.fn.extend({find:function(a){var b,c,d,e,f,g,h=this;if(typeof a!="string")return p(a).filter(function(){for(b=0,c=h.length;b<c;b++)if(p.contains(h[b],this))return!0});g=this.pushStack("","find",a);for(b=0,c=this.length;b<c;b++){d=g.length,p.find(a,this[b],g);if(b>0)for(e=d;e<g.length;e++)for(f=0;f<d;f++)if(g[f]===g[e]){g.splice(e--,1);break}}return g},has:function(a){var b,c=p(a,this),d=c.length;return this.filter(function(){for(b=0;b<d;b++)if(p.contains(this,c[b]))return!0})},not:function(a){return this.pushStack(bj(this,a,!1),"not",a)},filter:function(a){return this.pushStack(bj(this,a,!0),"filter",a)},is:function(a){return!!a&&(typeof a=="string"?bf.test(a)?p(a,this.context).index(this[0])>=0:p.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c,d=0,e=this.length,f=[],g=bf.test(a)||typeof a!="string"?p(a,b||this.context):0;for(;d<e;d++){c=this[d];while(c&&c.ownerDocument&&c!==b&&c.nodeType!==11){if(g?g.index(c)>-1:p.find.matchesSelector(c,a)){f.push(c);break}c=c.parentNode}}return f=f.length>1?p.unique(f):f,this.pushStack(f,"closest",a)},index:function(a){return a?typeof a=="string"?p.inArray(this[0],p(a)):p.inArray(a.jquery?a[0]:a,this):this[0]&&this[0].parentNode?this.prevAll().length:-1},add:function(a,b){var c=typeof a=="string"?p(a,b):p.makeArray(a&&a.nodeType?[a]:a),d=p.merge(this.get(),c);return this.pushStack(bh(c[0])||bh(d[0])?d:p.unique(d))},addBack:function(a){return this.add(a==null?this.prevObject:this.prevObject.filter(a))}}),p.fn.andSelf=p.fn.addBack,p.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return p.dir(a,"parentNode")},parentsUntil:function(a,b,c){return p.dir(a,"parentNode",c)},next:function(a){return bi(a,"nextSibling")},prev:function(a){return bi(a,"previousSibling")},nextAll:function(a){return p.dir(a,"nextSibling")},prevAll:function(a){return p.dir(a,"previousSibling")},nextUntil:function(a,b,c){return p.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return p.dir(a,"previousSibling",c)},siblings:function(a){return p.sibling((a.parentNode||{}).firstChild,a)},children:function(a){return p.sibling(a.firstChild)},contents:function(a){return p.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:p.merge([],a.childNodes)}},function(a,b){p.fn[a]=function(c,d){var e=p.map(this,b,c);return bc.test(a)||(d=c),d&&typeof d=="string"&&(e=p.filter(d,e)),e=this.length>1&&!bg[a]?p.unique(e):e,this.length>1&&bd.test(a)&&(e=e.reverse()),this.pushStack(e,a,k.call(arguments).join(","))}}),p.extend({filter:function(a,b,c){return c&&(a=":not("+a+")"),b.length===1?p.find.matchesSelector(b[0],a)?[b[0]]:[]:p.find.matches(a,b)},dir:function(a,c,d){var e=[],f=a[c];while(f&&f.nodeType!==9&&(d===b||f.nodeType!==1||!p(f).is(d)))f.nodeType===1&&e.push(f),f=f[c];return e},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var bl="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",bm=/ jQuery\d+="(?:null|\d+)"/g,bn=/^\s+/,bo=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,bp=/<([\w:]+)/,bq=/<tbody/i,br=/<|&#?\w+;/,bs=/<(?:script|style|link)/i,bt=/<(?:script|object|embed|option|style)/i,bu=new RegExp("<(?:"+bl+")[\\s/>]","i"),bv=/^(?:checkbox|radio)$/,bw=/checked\s*(?:[^=]|=\s*.checked.)/i,bx=/\/(java|ecma)script/i,by=/^\s*<!(?:\[CDATA\[|\-\-)|[\]\-]{2}>\s*$/g,bz={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]},bA=bk(e),bB=bA.appendChild(e.createElement("div"));bz.optgroup=bz.option,bz.tbody=bz.tfoot=bz.colgroup=bz.caption=bz.thead,bz.th=bz.td,p.support.htmlSerialize||(bz._default=[1,"X<div>","</div>"]),p.fn.extend({text:function(a){return p.access(this,function(a){return a===b?p.text(this):this.empty().append((this[0]&&this[0].ownerDocument||e).createTextNode(a))},null,a,arguments.length)},wrapAll:function(a){if(p.isFunction(a))return this.each(function(b){p(this).wrapAll(a.call(this,b))});if(this[0]){var b=p(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){return p.isFunction(a)?this.each(function(b){p(this).wrapInner(a.call(this,b))}):this.each(function(){var b=p(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=p.isFunction(a);return this.each(function(c){p(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){p.nodeName(this,"body")||p(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){(this.nodeType===1||this.nodeType===11)&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){(this.nodeType===1||this.nodeType===11)&&this.insertBefore(a,this.firstChild)})},before:function(){if(!bh(this[0]))return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=p.clean(arguments);return this.pushStack(p.merge(a,this),"before",this.selector)}},after:function(){if(!bh(this[0]))return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=p.clean(arguments);return this.pushStack(p.merge(this,a),"after",this.selector)}},remove:function(a,b){var c,d=0;for(;(c=this[d])!=null;d++)if(!a||p.filter(a,[c]).length)!b&&c.nodeType===1&&(p.cleanData(c.getElementsByTagName("*")),p.cleanData([c])),c.parentNode&&c.parentNode.removeChild(c);return this},empty:function(){var a,b=0;for(;(a=this[b])!=null;b++){a.nodeType===1&&p.cleanData(a.getElementsByTagName("*"));while(a.firstChild)a.removeChild(a.firstChild)}return this},clone:function(a,b){return a=a==null?!1:a,b=b==null?a:b,this.map(function(){return p.clone(this,a,b)})},html:function(a){return p.access(this,function(a){var c=this[0]||{},d=0,e=this.length;if(a===b)return c.nodeType===1?c.innerHTML.replace(bm,""):b;if(typeof a=="string"&&!bs.test(a)&&(p.support.htmlSerialize||!bu.test(a))&&(p.support.leadingWhitespace||!bn.test(a))&&!bz[(bp.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(bo,"<$1></$2>");try{for(;d<e;d++)c=this[d]||{},c.nodeType===1&&(p.cleanData(c.getElementsByTagName("*")),c.innerHTML=a);c=0}catch(f){}}c&&this.empty().append(a)},null,a,arguments.length)},replaceWith:function(a){return bh(this[0])?this.length?this.pushStack(p(p.isFunction(a)?a():a),"replaceWith",a):this:p.isFunction(a)?this.each(function(b){var c=p(this),d=c.html();c.replaceWith(a.call(this,b,d))}):(typeof a!="string"&&(a=p(a).detach()),this.each(function(){var b=this.nextSibling,c=this.parentNode;p(this).remove(),b?p(b).before(a):p(c).append(a)}))},detach:function(a){return this.remove(a,!0)},domManip:function(a,c,d){a=[].concat.apply([],a);var e,f,g,h,i=0,j=a[0],k=[],l=this.length;if(!p.support.checkClone&&l>1&&typeof j=="string"&&bw.test(j))return this.each(function(){p(this).domManip(a,c,d)});if(p.isFunction(j))return this.each(function(e){var f=p(this);a[0]=j.call(this,e,c?f.html():b),f.domManip(a,c,d)});if(this[0]){e=p.buildFragment(a,this,k),g=e.fragment,f=g.firstChild,g.childNodes.length===1&&(g=f);if(f){c=c&&p.nodeName(f,"tr");for(h=e.cacheable||l-1;i<l;i++)d.call(c&&p.nodeName(this[i],"table")?bC(this[i],"tbody"):this[i],i===h?g:p.clone(g,!0,!0))}g=f=null,k.length&&p.each(k,function(a,b){b.src?p.ajax?p.ajax({url:b.src,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0}):p.error("no ajax"):p.globalEval((b.text||b.textContent||b.innerHTML||"").replace(by,"")),b.parentNode&&b.parentNode.removeChild(b)})}return this}}),p.buildFragment=function(a,c,d){var f,g,h,i=a[0];return c=c||e,c=!c.nodeType&&c[0]||c,c=c.ownerDocument||c,a.length===1&&typeof i=="string"&&i.length<512&&c===e&&i.charAt(0)==="<"&&!bt.test(i)&&(p.support.checkClone||!bw.test(i))&&(p.support.html5Clone||!bu.test(i))&&(g=!0,f=p.fragments[i],h=f!==b),f||(f=c.createDocumentFragment(),p.clean(a,c,f,d),g&&(p.fragments[i]=h&&f)),{fragment:f,cacheable:g}},p.fragments={},p.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){p.fn[a]=function(c){var d,e=0,f=[],g=p(c),h=g.length,i=this.length===1&&this[0].parentNode;if((i==null||i&&i.nodeType===11&&i.childNodes.length===1)&&h===1)return g[b](this[0]),this;for(;e<h;e++)d=(e>0?this.clone(!0):this).get(),p(g[e])[b](d),f=f.concat(d);return this.pushStack(f,a,g.selector)}}),p.extend({clone:function(a,b,c){var d,e,f,g;p.support.html5Clone||p.isXMLDoc(a)||!bu.test("<"+a.nodeName+">")?g=a.cloneNode(!0):(bB.innerHTML=a.outerHTML,bB.removeChild(g=bB.firstChild));if((!p.support.noCloneEvent||!p.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!p.isXMLDoc(a)){bE(a,g),d=bF(a),e=bF(g);for(f=0;d[f];++f)e[f]&&bE(d[f],e[f])}if(b){bD(a,g);if(c){d=bF(a),e=bF(g);for(f=0;d[f];++f)bD(d[f],e[f])}}return d=e=null,g},clean:function(a,b,c,d){var f,g,h,i,j,k,l,m,n,o,q,r,s=b===e&&bA,t=[];if(!b||typeof b.createDocumentFragment=="undefined")b=e;for(f=0;(h=a[f])!=null;f++){typeof h=="number"&&(h+="");if(!h)continue;if(typeof h=="string")if(!br.test(h))h=b.createTextNode(h);else{s=s||bk(b),l=b.createElement("div"),s.appendChild(l),h=h.replace(bo,"<$1></$2>"),i=(bp.exec(h)||["",""])[1].toLowerCase(),j=bz[i]||bz._default,k=j[0],l.innerHTML=j[1]+h+j[2];while(k--)l=l.lastChild;if(!p.support.tbody){m=bq.test(h),n=i==="table"&&!m?l.firstChild&&l.firstChild.childNodes:j[1]==="<table>"&&!m?l.childNodes:[];for(g=n.length-1;g>=0;--g)p.nodeName(n[g],"tbody")&&!n[g].childNodes.length&&n[g].parentNode.removeChild(n[g])}!p.support.leadingWhitespace&&bn.test(h)&&l.insertBefore(b.createTextNode(bn.exec(h)[0]),l.firstChild),h=l.childNodes,l.parentNode.removeChild(l)}h.nodeType?t.push(h):p.merge(t,h)}l&&(h=l=s=null);if(!p.support.appendChecked)for(f=0;(h=t[f])!=null;f++)p.nodeName(h,"input")?bG(h):typeof h.getElementsByTagName!="undefined"&&p.grep(h.getElementsByTagName("input"),bG);if(c){q=function(a){if(!a.type||bx.test(a.type))return d?d.push(a.parentNode?a.parentNode.removeChild(a):a):c.appendChild(a)};for(f=0;(h=t[f])!=null;f++)if(!p.nodeName(h,"script")||!q(h))c.appendChild(h),typeof h.getElementsByTagName!="undefined"&&(r=p.grep(p.merge([],h.getElementsByTagName("script")),q),t.splice.apply(t,[f+1,0].concat(r)),f+=r.length)}return t},cleanData:function(a,b){var c,d,e,f,g=0,h=p.expando,i=p.cache,j=p.support.deleteExpando,k=p.event.special;for(;(e=a[g])!=null;g++)if(b||p.acceptData(e)){d=e[h],c=d&&i[d];if(c){if(c.events)for(f in c.events)k[f]?p.event.remove(e,f):p.removeEvent(e,f,c.handle);i[d]&&(delete i[d],j?delete e[h]:e.removeAttribute?e.removeAttribute(h):e[h]=null,p.deletedIds.push(d))}}}}),function(){var a,b;p.uaMatch=function(a){a=a.toLowerCase();var b=/(chrome)[ \/]([\w.]+)/.exec(a)||/(webkit)[ \/]([\w.]+)/.exec(a)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(a)||/(msie) ([\w.]+)/.exec(a)||a.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(a)||[];return{browser:b[1]||"",version:b[2]||"0"}},a=p.uaMatch(g.userAgent),b={},a.browser&&(b[a.browser]=!0,b.version=a.version),b.chrome?b.webkit=!0:b.webkit&&(b.safari=!0),p.browser=b,p.sub=function(){function a(b,c){return new a.fn.init(b,c)}p.extend(!0,a,this),a.superclass=this,a.fn=a.prototype=this(),a.fn.constructor=a,a.sub=this.sub,a.fn.init=function c(c,d){return d&&d instanceof p&&!(d instanceof a)&&(d=a(d)),p.fn.init.call(this,c,d,b)},a.fn.init.prototype=a.fn;var b=a(e);return a}}();var bH,bI,bJ,bK=/alpha\([^)]*\)/i,bL=/opacity=([^)]*)/,bM=/^(top|right|bottom|left)$/,bN=/^(none|table(?!-c[ea]).+)/,bO=/^margin/,bP=new RegExp("^("+q+")(.*)$","i"),bQ=new RegExp("^("+q+")(?!px)[a-z%]+$","i"),bR=new RegExp("^([-+])=("+q+")","i"),bS={},bT={position:"absolute",visibility:"hidden",display:"block"},bU={letterSpacing:0,fontWeight:400},bV=["Top","Right","Bottom","Left"],bW=["Webkit","O","Moz","ms"],bX=p.fn.toggle;p.fn.extend({css:function(a,c){return p.access(this,function(a,c,d){return d!==b?p.style(a,c,d):p.css(a,c)},a,c,arguments.length>1)},show:function(){return b$(this,!0)},hide:function(){return b$(this)},toggle:function(a,b){var c=typeof a=="boolean";return p.isFunction(a)&&p.isFunction(b)?bX.apply(this,arguments):this.each(function(){(c?a:bZ(this))?p(this).show():p(this).hide()})}}),p.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=bH(a,"opacity");return c===""?"1":c}}}},cssNumber:{fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":p.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,c,d,e){if(!a||a.nodeType===3||a.nodeType===8||!a.style)return;var f,g,h,i=p.camelCase(c),j=a.style;c=p.cssProps[i]||(p.cssProps[i]=bY(j,i)),h=p.cssHooks[c]||p.cssHooks[i];if(d===b)return h&&"get"in h&&(f=h.get(a,!1,e))!==b?f:j[c];g=typeof d,g==="string"&&(f=bR.exec(d))&&(d=(f[1]+1)*f[2]+parseFloat(p.css(a,c)),g="number");if(d==null||g==="number"&&isNaN(d))return;g==="number"&&!p.cssNumber[i]&&(d+="px");if(!h||!("set"in h)||(d=h.set(a,d,e))!==b)try{j[c]=d}catch(k){}},css:function(a,c,d,e){var f,g,h,i=p.camelCase(c);return c=p.cssProps[i]||(p.cssProps[i]=bY(a.style,i)),h=p.cssHooks[c]||p.cssHooks[i],h&&"get"in h&&(f=h.get(a,!0,e)),f===b&&(f=bH(a,c)),f==="normal"&&c in bU&&(f=bU[c]),d||e!==b?(g=parseFloat(f),d||p.isNumeric(g)?g||0:f):f},swap:function(a,b,c){var d,e,f={};for(e in b)f[e]=a.style[e],a.style[e]=b[e];d=c.call(a);for(e in b)a.style[e]=f[e];return d}}),a.getComputedStyle?bH=function(b,c){var d,e,f,g,h=a.getComputedStyle(b,null),i=b.style;return h&&(d=h[c],d===""&&!p.contains(b.ownerDocument,b)&&(d=p.style(b,c)),bQ.test(d)&&bO.test(c)&&(e=i.width,f=i.minWidth,g=i.maxWidth,i.minWidth=i.maxWidth=i.width=d,d=h.width,i.width=e,i.minWidth=f,i.maxWidth=g)),d}:e.documentElement.currentStyle&&(bH=function(a,b){var c,d,e=a.currentStyle&&a.currentStyle[b],f=a.style;return e==null&&f&&f[b]&&(e=f[b]),bQ.test(e)&&!bM.test(b)&&(c=f.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),f.left=b==="fontSize"?"1em":e,e=f.pixelLeft+"px",f.left=c,d&&(a.runtimeStyle.left=d)),e===""?"auto":e}),p.each(["height","width"],function(a,b){p.cssHooks[b]={get:function(a,c,d){if(c)return a.offsetWidth===0&&bN.test(bH(a,"display"))?p.swap(a,bT,function(){return cb(a,b,d)}):cb(a,b,d)},set:function(a,c,d){return b_(a,c,d?ca(a,b,d,p.support.boxSizing&&p.css(a,"boxSizing")==="border-box"):0)}}}),p.support.opacity||(p.cssHooks.opacity={get:function(a,b){return bL.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?.01*parseFloat(RegExp.$1)+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=p.isNumeric(b)?"alpha(opacity="+b*100+")":"",f=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&p.trim(f.replace(bK,""))===""&&c.removeAttribute){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bK.test(f)?f.replace(bK,e):f+" "+e}}),p(function(){p.support.reliableMarginRight||(p.cssHooks.marginRight={get:function(a,b){return p.swap(a,{display:"inline-block"},function(){if(b)return bH(a,"marginRight")})}}),!p.support.pixelPosition&&p.fn.position&&p.each(["top","left"],function(a,b){p.cssHooks[b]={get:function(a,c){if(c){var d=bH(a,b);return bQ.test(d)?p(a).position()[b]+"px":d}}}})}),p.expr&&p.expr.filters&&(p.expr.filters.hidden=function(a){return a.offsetWidth===0&&a.offsetHeight===0||!p.support.reliableHiddenOffsets&&(a.style&&a.style.display||bH(a,"display"))==="none"},p.expr.filters.visible=function(a){return!p.expr.filters.hidden(a)}),p.each({margin:"",padding:"",border:"Width"},function(a,b){p.cssHooks[a+b]={expand:function(c){var d,e=typeof c=="string"?c.split(" "):[c],f={};for(d=0;d<4;d++)f[a+bV[d]+b]=e[d]||e[d-2]||e[0];return f}},bO.test(a)||(p.cssHooks[a+b].set=b_)});var cd=/%20/g,ce=/\[\]$/,cf=/\r?\n/g,cg=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,ch=/^(?:select|textarea)/i;p.fn.extend({serialize:function(){return p.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?p.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||ch.test(this.nodeName)||cg.test(this.type))}).map(function(a,b){var c=p(this).val();return c==null?null:p.isArray(c)?p.map(c,function(a,c){return{name:b.name,value:a.replace(cf,"\r\n")}}):{name:b.name,value:c.replace(cf,"\r\n")}}).get()}}),p.param=function(a,c){var d,e=[],f=function(a,b){b=p.isFunction(b)?b():b==null?"":b,e[e.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=p.ajaxSettings&&p.ajaxSettings.traditional);if(p.isArray(a)||a.jquery&&!p.isPlainObject(a))p.each(a,function(){f(this.name,this.value)});else for(d in a)ci(d,a[d],c,f);return e.join("&").replace(cd,"+")};var cj,ck,cl=/#.*$/,cm=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,cn=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,co=/^(?:GET|HEAD)$/,cp=/^\/\//,cq=/\?/,cr=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,cs=/([?&])_=[^&]*/,ct=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,cu=p.fn.load,cv={},cw={},cx=["*/"]+["*"];try{ck=f.href}catch(cy){ck=e.createElement("a"),ck.href="",ck=ck.href}cj=ct.exec(ck.toLowerCase())||[],p.fn.load=function(a,c,d){if(typeof a!="string"&&cu)return cu.apply(this,arguments);if(!this.length)return this;var e,f,g,h=this,i=a.indexOf(" ");return i>=0&&(e=a.slice(i,a.length),a=a.slice(0,i)),p.isFunction(c)?(d=c,c=b):c&&typeof c=="object"&&(f="POST"),p.ajax({url:a,type:f,dataType:"html",data:c,complete:function(a,b){d&&h.each(d,g||[a.responseText,b,a])}}).done(function(a){g=arguments,h.html(e?p("<div>").append(a.replace(cr,"")).find(e):a)}),this},p.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){p.fn[b]=function(a){return this.on(b,a)}}),p.each(["get","post"],function(a,c){p[c]=function(a,d,e,f){return p.isFunction(d)&&(f=f||e,e=d,d=b),p.ajax({type:c,url:a,data:d,success:e,dataType:f})}}),p.extend({getScript:function(a,c){return p.get(a,b,c,"script")},getJSON:function(a,b,c){return p.get(a,b,c,"json")},ajaxSetup:function(a,b){return b?cB(a,p.ajaxSettings):(b=a,a=p.ajaxSettings),cB(a,b),a},ajaxSettings:{url:ck,isLocal:cn.test(cj[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded; charset=UTF-8",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":cx},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":p.parseJSON,"text xml":p.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:cz(cv),ajaxTransport:cz(cw),ajax:function(a,c){function y(a,c,f,i){var k,s,t,u,w,y=c;if(v===2)return;v=2,h&&clearTimeout(h),g=b,e=i||"",x.readyState=a>0?4:0,f&&(u=cC(l,x,f));if(a>=200&&a<300||a===304)l.ifModified&&(w=x.getResponseHeader("Last-Modified"),w&&(p.lastModified[d]=w),w=x.getResponseHeader("Etag"),w&&(p.etag[d]=w)),a===304?(y="notmodified",k=!0):(k=cD(l,u),y=k.state,s=k.data,t=k.error,k=!t);else{t=y;if(!y||a)y="error",a<0&&(a=0)}x.status=a,x.statusText=(c||y)+"",k?o.resolveWith(m,[s,y,x]):o.rejectWith(m,[x,y,t]),x.statusCode(r),r=b,j&&n.trigger("ajax"+(k?"Success":"Error"),[x,l,k?s:t]),q.fireWith(m,[x,y]),j&&(n.trigger("ajaxComplete",[x,l]),--p.active||p.event.trigger("ajaxStop"))}typeof a=="object"&&(c=a,a=b),c=c||{};var d,e,f,g,h,i,j,k,l=p.ajaxSetup({},c),m=l.context||l,n=m!==l&&(m.nodeType||m instanceof p)?p(m):p.event,o=p.Deferred(),q=p.Callbacks("once memory"),r=l.statusCode||{},t={},u={},v=0,w="canceled",x={readyState:0,setRequestHeader:function(a,b){if(!v){var c=a.toLowerCase();a=u[c]=u[c]||a,t[a]=b}return this},getAllResponseHeaders:function(){return v===2?e:null},getResponseHeader:function(a){var c;if(v===2){if(!f){f={};while(c=cm.exec(e))f[c[1].toLowerCase()]=c[2]}c=f[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){return v||(l.mimeType=a),this},abort:function(a){return a=a||w,g&&g.abort(a),y(0,a),this}};o.promise(x),x.success=x.done,x.error=x.fail,x.complete=q.add,x.statusCode=function(a){if(a){var b;if(v<2)for(b in a)r[b]=[r[b],a[b]];else b=a[x.status],x.always(b)}return this},l.url=((a||l.url)+"").replace(cl,"").replace(cp,cj[1]+"//"),l.dataTypes=p.trim(l.dataType||"*").toLowerCase().split(s),l.crossDomain==null&&(i=ct.exec(l.url.toLowerCase())||!1,l.crossDomain=i&&i.join(":")+(i[3]?"":i[1]==="http:"?80:443)!==cj.join(":")+(cj[3]?"":cj[1]==="http:"?80:443)),l.data&&l.processData&&typeof l.data!="string"&&(l.data=p.param(l.data,l.traditional)),cA(cv,l,c,x);if(v===2)return x;j=l.global,l.type=l.type.toUpperCase(),l.hasContent=!co.test(l.type),j&&p.active++===0&&p.event.trigger("ajaxStart");if(!l.hasContent){l.data&&(l.url+=(cq.test(l.url)?"&":"?")+l.data,delete l.data),d=l.url;if(l.cache===!1){var z=p.now(),A=l.url.replace(cs,"$1_="+z);l.url=A+(A===l.url?(cq.test(l.url)?"&":"?")+"_="+z:"")}}(l.data&&l.hasContent&&l.contentType!==!1||c.contentType)&&x.setRequestHeader("Content-Type",l.contentType),l.ifModified&&(d=d||l.url,p.lastModified[d]&&x.setRequestHeader("If-Modified-Since",p.lastModified[d]),p.etag[d]&&x.setRequestHeader("If-None-Match",p.etag[d])),x.setRequestHeader("Accept",l.dataTypes[0]&&l.accepts[l.dataTypes[0]]?l.accepts[l.dataTypes[0]]+(l.dataTypes[0]!=="*"?", "+cx+"; q=0.01":""):l.accepts["*"]);for(k in l.headers)x.setRequestHeader(k,l.headers[k]);if(!l.beforeSend||l.beforeSend.call(m,x,l)!==!1&&v!==2){w="abort";for(k in{success:1,error:1,complete:1})x[k](l[k]);g=cA(cw,l,c,x);if(!g)y(-1,"No Transport");else{x.readyState=1,j&&n.trigger("ajaxSend",[x,l]),l.async&&l.timeout>0&&(h=setTimeout(function(){x.abort("timeout")},l.timeout));try{v=1,g.send(t,y)}catch(B){if(v<2)y(-1,B);else throw B}}return x}return x.abort()},active:0,lastModified:{},etag:{}});var cE=[],cF=/\?/,cG=/(=)\?(?=&|$)|\?\?/,cH=p.now();p.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var a=cE.pop()||p.expando+"_"+cH++;return this[a]=!0,a}}),p.ajaxPrefilter("json jsonp",function(c,d,e){var f,g,h,i=c.data,j=c.url,k=c.jsonp!==!1,l=k&&cG.test(j),m=k&&!l&&typeof i=="string"&&!(c.contentType||"").indexOf("application/x-www-form-urlencoded")&&cG.test(i);if(c.dataTypes[0]==="jsonp"||l||m)return f=c.jsonpCallback=p.isFunction(c.jsonpCallback)?c.jsonpCallback():c.jsonpCallback,g=a[f],l?c.url=j.replace(cG,"$1"+f):m?c.data=i.replace(cG,"$1"+f):k&&(c.url+=(cF.test(j)?"&":"?")+c.jsonp+"="+f),c.converters["script json"]=function(){return h||p.error(f+" was not called"),h[0]},c.dataTypes[0]="json",a[f]=function(){h=arguments},e.always(function(){a[f]=g,c[f]&&(c.jsonpCallback=d.jsonpCallback,cE.push(f)),h&&p.isFunction(g)&&g(h[0]),h=g=b}),"script"}),p.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){return p.globalEval(a),a}}}),p.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),p.ajaxTransport("script",function(a){if(a.crossDomain){var c,d=e.head||e.getElementsByTagName("head")[0]||e.documentElement;return{send:function(f,g){c=e.createElement("script"),c.async="async",a.scriptCharset&&(c.charset=a.scriptCharset),c.src=a.url,c.onload=c.onreadystatechange=function(a,e){if(e||!c.readyState||/loaded|complete/.test(c.readyState))c.onload=c.onreadystatechange=null,d&&c.parentNode&&d.removeChild(c),c=b,e||g(200,"success")},d.insertBefore(c,d.firstChild)},abort:function(){c&&c.onload(0,1)}}}});var cI,cJ=a.ActiveXObject?function(){for(var a in cI)cI[a](0,1)}:!1,cK=0;p.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&cL()||cM()}:cL,function(a){p.extend(p.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(p.ajaxSettings.xhr()),p.support.ajax&&p.ajaxTransport(function(c){if(!c.crossDomain||p.support.cors){var d;return{send:function(e,f){var g,h,i=c.xhr();c.username?i.open(c.type,c.url,c.async,c.username,c.password):i.open(c.type,c.url,c.async);if(c.xhrFields)for(h in c.xhrFields)i[h]=c.xhrFields[h];c.mimeType&&i.overrideMimeType&&i.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(h in e)i.setRequestHeader(h,e[h])}catch(j){}i.send(c.hasContent&&c.data||null),d=function(a,e){var h,j,k,l,m;try{if(d&&(e||i.readyState===4)){d=b,g&&(i.onreadystatechange=p.noop,cJ&&delete cI[g]);if(e)i.readyState!==4&&i.abort();else{h=i.status,k=i.getAllResponseHeaders(),l={},m=i.responseXML,m&&m.documentElement&&(l.xml=m);try{l.text=i.responseText}catch(a){}try{j=i.statusText}catch(n){j=""}!h&&c.isLocal&&!c.crossDomain?h=l.text?200:404:h===1223&&(h=204)}}}catch(o){e||f(-1,o)}l&&f(h,j,l,k)},c.async?i.readyState===4?setTimeout(d,0):(g=++cK,cJ&&(cI||(cI={},p(a).unload(cJ)),cI[g]=d),i.onreadystatechange=d):d()},abort:function(){d&&d(0,1)}}}});var cN,cO,cP=/^(?:toggle|show|hide)$/,cQ=new RegExp("^(?:([-+])=|)("+q+")([a-z%]*)$","i"),cR=/queueHooks$/,cS=[cY],cT={"*":[function(a,b){var c,d,e=this.createTween(a,b),f=cQ.exec(b),g=e.cur(),h=+g||0,i=1,j=20;if(f){c=+f[2],d=f[3]||(p.cssNumber[a]?"":"px");if(d!=="px"&&h){h=p.css(e.elem,a,!0)||c||1;do i=i||".5",h=h/i,p.style(e.elem,a,h+d);while(i!==(i=e.cur()/g)&&i!==1&&--j)}e.unit=d,e.start=h,e.end=f[1]?h+(f[1]+1)*c:c}return e}]};p.Animation=p.extend(cW,{tweener:function(a,b){p.isFunction(a)?(b=a,a=["*"]):a=a.split(" ");var c,d=0,e=a.length;for(;d<e;d++)c=a[d],cT[c]=cT[c]||[],cT[c].unshift(b)},prefilter:function(a,b){b?cS.unshift(a):cS.push(a)}}),p.Tween=cZ,cZ.prototype={constructor:cZ,init:function(a,b,c,d,e,f){this.elem=a,this.prop=c,this.easing=e||"swing",this.options=b,this.start=this.now=this.cur(),this.end=d,this.unit=f||(p.cssNumber[c]?"":"px")},cur:function(){var a=cZ.propHooks[this.prop];return a&&a.get?a.get(this):cZ.propHooks._default.get(this)},run:function(a){var b,c=cZ.propHooks[this.prop];return this.options.duration?this.pos=b=p.easing[this.easing](a,this.options.duration*a,0,1,this.options.duration):this.pos=b=a,this.now=(this.end-this.start)*b+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),c&&c.set?c.set(this):cZ.propHooks._default.set(this),this}},cZ.prototype.init.prototype=cZ.prototype,cZ.propHooks={_default:{get:function(a){var b;return a.elem[a.prop]==null||!!a.elem.style&&a.elem.style[a.prop]!=null?(b=p.css(a.elem,a.prop,!1,""),!b||b==="auto"?0:b):a.elem[a.prop]},set:function(a){p.fx.step[a.prop]?p.fx.step[a.prop](a):a.elem.style&&(a.elem.style[p.cssProps[a.prop]]!=null||p.cssHooks[a.prop])?p.style(a.elem,a.prop,a.now+a.unit):a.elem[a.prop]=a.now}}},cZ.propHooks.scrollTop=cZ.propHooks.scrollLeft={set:function(a){a.elem.nodeType&&a.elem.parentNode&&(a.elem[a.prop]=a.now)}},p.each(["toggle","show","hide"],function(a,b){var c=p.fn[b];p.fn[b]=function(d,e,f){return d==null||typeof d=="boolean"||!a&&p.isFunction(d)&&p.isFunction(e)?c.apply(this,arguments):this.animate(c$(b,!0),d,e,f)}}),p.fn.extend({fadeTo:function(a,b,c,d){return this.filter(bZ).css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,d){var e=p.isEmptyObject(a),f=p.speed(b,c,d),g=function(){var b=cW(this,p.extend({},a),f);e&&b.stop(!0)};return e||f.queue===!1?this.each(g):this.queue(f.queue,g)},stop:function(a,c,d){var e=function(a){var b=a.stop;delete a.stop,b(d)};return typeof a!="string"&&(d=c,c=a,a=b),c&&a!==!1&&this.queue(a||"fx",[]),this.each(function(){var b=!0,c=a!=null&&a+"queueHooks",f=p.timers,g=p._data(this);if(c)g[c]&&g[c].stop&&e(g[c]);else for(c in g)g[c]&&g[c].stop&&cR.test(c)&&e(g[c]);for(c=f.length;c--;)f[c].elem===this&&(a==null||f[c].queue===a)&&(f[c].anim.stop(d),b=!1,f.splice(c,1));(b||!d)&&p.dequeue(this,a)})}}),p.each({slideDown:c$("show"),slideUp:c$("hide"),slideToggle:c$("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){p.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),p.speed=function(a,b,c){var d=a&&typeof a=="object"?p.extend({},a):{complete:c||!c&&b||p.isFunction(a)&&a,duration:a,easing:c&&b||b&&!p.isFunction(b)&&b};d.duration=p.fx.off?0:typeof d.duration=="number"?d.duration:d.duration in p.fx.speeds?p.fx.speeds[d.duration]:p.fx.speeds._default;if(d.queue==null||d.queue===!0)d.queue="fx";return d.old=d.complete,d.complete=function(){p.isFunction(d.old)&&d.old.call(this),d.queue&&p.dequeue(this,d.queue)},d},p.easing={linear:function(a){return a},swing:function(a){return.5-Math.cos(a*Math.PI)/2}},p.timers=[],p.fx=cZ.prototype.init,p.fx.tick=function(){var a,b=p.timers,c=0;for(;c<b.length;c++)a=b[c],!a()&&b[c]===a&&b.splice(c--,1);b.length||p.fx.stop()},p.fx.timer=function(a){a()&&p.timers.push(a)&&!cO&&(cO=setInterval(p.fx.tick,p.fx.interval))},p.fx.interval=13,p.fx.stop=function(){clearInterval(cO),cO=null},p.fx.speeds={slow:600,fast:200,_default:400},p.fx.step={},p.expr&&p.expr.filters&&(p.expr.filters.animated=function(a){return p.grep(p.timers,function(b){return a===b.elem}).length});var c_=/^(?:body|html)$/i;p.fn.offset=function(a){if(arguments.length)return a===b?this:this.each(function(b){p.offset.setOffset(this,a,b)});var c,d,e,f,g,h,i,j={top:0,left:0},k=this[0],l=k&&k.ownerDocument;if(!l)return;return(d=l.body)===k?p.offset.bodyOffset(k):(c=l.documentElement,p.contains(c,k)?(typeof k.getBoundingClientRect!="undefined"&&(j=k.getBoundingClientRect()),e=da(l),f=c.clientTop||d.clientTop||0,g=c.clientLeft||d.clientLeft||0,h=e.pageYOffset||c.scrollTop,i=e.pageXOffset||c.scrollLeft,{top:j.top+h-f,left:j.left+i-g}):j)},p.offset={bodyOffset:function(a){var b=a.offsetTop,c=a.offsetLeft;return p.support.doesNotIncludeMarginInBodyOffset&&(b+=parseFloat(p.css(a,"marginTop"))||0,c+=parseFloat(p.css(a,"marginLeft"))||0),{top:b,left:c}},setOffset:function(a,b,c){var d=p.css(a,"position");d==="static"&&(a.style.position="relative");var e=p(a),f=e.offset(),g=p.css(a,"top"),h=p.css(a,"left"),i=(d==="absolute"||d==="fixed")&&p.inArray("auto",[g,h])>-1,j={},k={},l,m;i?(k=e.position(),l=k.top,m=k.left):(l=parseFloat(g)||0,m=parseFloat(h)||0),p.isFunction(b)&&(b=b.call(a,c,f)),b.top!=null&&(j.top=b.top-f.top+l),b.left!=null&&(j.left=b.left-f.left+m),"using"in b?b.using.call(a,j):e.css(j)}},p.fn.extend({position:function(){if(!this[0])return;var a=this[0],b=this.offsetParent(),c=this.offset(),d=c_.test(b[0].nodeName)?{top:0,left:0}:b.offset();return c.top-=parseFloat(p.css(a,"marginTop"))||0,c.left-=parseFloat(p.css(a,"marginLeft"))||0,d.top+=parseFloat(p.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(p.css(b[0],"borderLeftWidth"))||0,{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||e.body;while(a&&!c_.test(a.nodeName)&&p.css(a,"position")==="static")a=a.offsetParent;return a||e.body})}}),p.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(a,c){var d=/Y/.test(c);p.fn[a]=function(e){return p.access(this,function(a,e,f){var g=da(a);if(f===b)return g?c in g?g[c]:g.document.documentElement[e]:a[e];g?g.scrollTo(d?p(g).scrollLeft():f,d?f:p(g).scrollTop()):a[e]=f},a,e,arguments.length,null)}}),p.each({Height:"height",Width:"width"},function(a,c){p.each({padding:"inner"+a,content:c,"":"outer"+a},function(d,e){p.fn[e]=function(e,f){var g=arguments.length&&(d||typeof e!="boolean"),h=d||(e===!0||f===!0?"margin":"border");return p.access(this,function(c,d,e){var f;return p.isWindow(c)?c.document.documentElement["client"+a]:c.nodeType===9?(f=c.documentElement,Math.max(c.body["scroll"+a],f["scroll"+a],c.body["offset"+a],f["offset"+a],f["client"+a])):e===b?p.css(c,d,e,h):p.style(c,d,e,h)},c,g?e:b,g,null)}})}),a.jQuery=a.$=p,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return p})})(window);</script>
    <script type="text/javascript">/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this file,
 * You can obtain one at http://mozilla.org/MPL/2.0/. */

$(document).ready(function() {

        reset_sort_headers();

        split_debug_onto_two_rows();

        $('.col-links a.screenshot').click(function(event) {
                window.open($(this).parents('.results-table-row').next('.debug').find('.screenshot img').attr('src'));
                event.preventDefault();
        });

        $('.screenshot a').click(function(event) {
                window.open($(this).find('img').attr('src'));
                event.preventDefault();
        });

        $('.sortable').click(toggle_sort_states);

        $('.sortable').click(function() {
                var columnName = $(this).attr('col');
                if ($(this).hasClass('numeric')) {
                        sort_rows_num($(this), 'col-' + columnName);
                } else {
                sort_rows_alpha($(this), 'col-' + columnName);
                }
        });

});

function sort_rows_alpha(clicked, sortclass) {
        one_row_for_data();
        var therows = $('.results-table-row');
        therows.sort(function(s, t) {
                var a = s.getElementsByClassName(sortclass)[0].innerHTML.toLowerCase();
                var b = t.getElementsByClassName(sortclass)[0].innerHTML.toLowerCase();
                if (clicked.hasClass('asc')) {
                        if (a < b)
                                return -1;
                        if (a > b)
                                return 1;
                        return 0;
                } else {
                        if (a < b)
                                return 1;
                        if (a > b)
                                return -1;
                        return 0;
                }
        });
        $('#results-table-body').append(therows);
        split_debug_onto_two_rows();
}

function sort_rows_num(clicked, sortclass) {
        one_row_for_data();
        var therows = $('.results-table-row');
        therows.sort(function(s, t) {
                var a = s.getElementsByClassName(sortclass)[0].innerHTML
                var b = t.getElementsByClassName(sortclass)[0].innerHTML
                if (clicked.hasClass('asc')) {
                        return a - b;
                } else {
                        return b - a;
                }
        });
        $('#results-table-body').append(therows);
        split_debug_onto_two_rows();
}

function reset_sort_headers() {
        $('.sort-icon').remove();
        $('.sortable').prepend('<div class="sort-icon">vvv</div>');
        $('.sortable').removeClass('asc desc inactive active');
        $('.sortable').addClass('asc inactive');
}

function toggle_sort_states() {
        //if active, toggle between asc and desc
        if ($(this).hasClass('active')) {
                $(this).toggleClass('asc');
                $(this).toggleClass('desc');
        }

        //if inactive, reset all other functions and add ascending active
        if ($(this).hasClass('inactive')) {
                reset_sort_headers();
                $(this).removeClass('inactive');
                $(this).addClass('active');
        }
}

function split_debug_onto_two_rows() {
        $('tr.results-table-row').each(function() {
                $('<tr class="debug">').insertAfter(this).append($('.debug', this));
        });
        $('td.debug').attr('colspan', 5);
}

function one_row_for_data() {
        $('tr.results-table-row').each(function() {
                if ($(this).next().hasClass('debug')) {
                        $(this).append($(this).next().contents().unwrap());
                }
        });
}
</script>
    <p>Report generated on 15-Jun-2015 at 11:50:50 by gaiatest-v2.1 version 0.1</p>
    <h2>Configuration</h2>
    <table id="configuration">
      <tr>
        <td>Device firmware (date)</td>
        <td>15 Jun 2015 07:55:43</td></tr>
      <tr>
        <td>Device firmware (incremental)</td>
        <td>eng.cltbld.20150614.195532</td></tr>
      <tr>
        <td>Device firmware (release)</td>
        <td>4.4.2</td></tr>
      <tr>
        <td>Device identifier</td>
        <td>flame</td></tr>
      <tr>
        <td>Gaia date</td>
        <td>08 Jun 2015 17:48:23</td></tr>
      <tr>
        <td>Gaia revision</td>
        <td><a href="https://github.com/mozilla-b2g/gaia/commit/f8b848c82d1ed589f7a1eb5cc099830c867ff1d4" target="_blank">f8b848c82d1e</a></td></tr>
      <tr>
        <td>Gecko build</td>
        <td>20150614161205</td></tr>
      <tr>
        <td>Gecko revision</td>
        <td><a href="https://hg.mozilla.org/releases/mozilla-b2g34_v2_1/7d767fc15126" target="_blank">7d767fc15126</a></td></tr>
      <tr>
        <td>Gecko version</td>
        <td>34.0</td></tr></table>
    <h2>Summary</h2>
    <p>38 tests ran in 3884 seconds.<br/><span class="passed">36 passed</span>, <span class="skipped">97 skipped</span>, <span class="failed">0 failed</span>, <span class="error">2 errors</span>.<br/><span class="expected failure">0 expected failures</span>, <span class="unexpected pass">0 unexpected passes</span>.</p>
    <h2>Results</h2>
    <table id="results-table">
      <thead id="results-table-head">
        <tr>
          <th class="sortable" col="result">Result</th>
          <th class="sortable" col="class">Class</th>
          <th class="sortable" col="name">Test Name</th>
          <th class="sortable numeric" col="duration">Duration</th>
          <th>Links</th></tr></thead>
      <tbody id="results-table-body">
        <tr class="passed results-table-row">
          <td class="col-result">Passed</td>
          <td class="col-class">test_browser_cell_data.TestBrowserCellData</td>
          <td class="col-name">test_browser_cell_data</td>
          <td class="col-duration">136.3</td>
          <td class="col-links"></td>
          <td class="debug"></td></tr>
        <tr class="passed results-table-row">
          <td class="col-result">Passed</td>
          <td class="col-class">test_browser_lan.TestBrowserLAN</td>
          <td class="col-name">test_browser_lan</td>
          <td class="col-duration">119.4</td>
          <td class="col-links"></td>
          <td class="debug"></td></tr>
        <tr class="passed results-table-row">
          <td class="col-result">Passed</td>
          <td class="col-class">test_browser_play_youtube_video.TestYouTube</td>
          <td class="col-name">test_play_youtube_video</td>
          <td class="col-duration">138.1</td>
          <td class="col-links"></td>
          <td class="debug"></td></tr>
        <tr class="passed results-table-row">
          <td class="col-result">Passed</td>
          <td class="col-class">test_calendar_new_event_appears_on_all_calendar_views.TestCalendar</td>
          <td class="col-name">test_that_new_event_appears_on_all_calendar_views</td>
          <td class="col-duration">116.3</td>
          <td class="col-links"></td>
          <td class="debug"></td></tr>
        <tr class="passed results-table-row">
          <td class="col-result">Passed</td>
          <td class="col-class">test_camera_capture_video.TestCamera</td>
          <td class="col-name">test_capture_a_video</td>
          <td class="col-duration">85.0</td>
          <td class="col-links"></td>
          <td class="debug"></td></tr>
        <tr class="passed results-table-row">
          <td class="col-result">Passed</td>
          <td class="col-class">test_camera_multiple_shots.TestCameraMultipleShots</td>
          <td class="col-name">test_capture_multiple_shots</td>
          <td class="col-duration">91.1</td>
          <td class="col-links"></td>
          <td class="debug"></td></tr>
        <tr class="passed results-table-row">
          <td class="col-result">Passed</td>
          <td class="col-class">test_cards_view_with_two_apps.TestCardsView</td>
          <td class="col-name">test_that_app_can_be_launched_from_cards_view</td>
          <td class="col-duration">80.1</td>
          <td class="col-links"></td>
          <td class="debug"></td></tr>
        <tr class="passed results-table-row">
          <td class="col-result">Passed</td>
          <td class="col-class">test_clock_create_new_alarm.TestClockCreateNewAlarm</td>
          <td class="col-name">test_clock_create_new_alarm</td>
          <td class="col-duration">118.9</td>
          <td class="col-links"></td>
          <td class="debug"></td></tr>
        <tr class="passed results-table-row">
          <td class="col-result">Passed</td>
          <td class="col-class">test_add_new_contact.TestContacts</td>
          <td class="col-name">test_add_new_contact</td>
          <td class="col-duration">86.7</td>
          <td class="col-links"></td>
          <td class="debug"></td></tr>
        <tr class="passed results-table-row">
          <td class="col-result">Passed</td>
          <td class="col-class">test_edit_contact.TestContacts</td>
          <td class="col-name">test_edit_contact</td>
          <td class="col-duration">86.2</td>
          <td class="col-links"></td>
          <td class="debug"></td></tr>
        <tr class="passed results-table-row">
          <td class="col-result">Passed</td>
          <td class="col-class">test_sms_contact.TestContacts</td>
          <td class="col-name">test_sms_contact</td>
          <td class="col-duration">82.2</td>
          <td class="col-links"></td>
          <td class="debug"></td></tr>
        <tr class="passed results-table-row">
          <td class="col-result">Passed</td>
          <td class="col-class">test_add_photo_to_contact.TestContacts</td>
          <td class="col-name">test_add_photo_from_gallery_to_contact</td>
          <td class="col-duration">88.0</td>
          <td class="col-links"></td>
          <td class="debug"></td></tr>
        <tr class="passed results-table-row">
          <td class="col-result">Passed</td>
          <td class="col-class">test_cost_control_data_alert_mobile.TestCostControlDataAlertMobile</td>
          <td class="col-name">test_cost_control_data_alert_mobile</td>
          <td class="col-duration">163.1</td>
          <td class="col-links"></td>
          <td class="debug"></td></tr>
        <tr class="passed results-table-row">
          <td class="col-result">Passed</td>
          <td class="col-class">test_dialer.TestDialer</td>
          <td class="col-name">test_dialer_make_call</td>
          <td class="col-duration">84.9</td>
          <td class="col-links"></td>
          <td class="debug"></td></tr>
        <tr class="error results-table-row">
          <td class="col-result">Error</td>
          <td class="col-class">test_call_log_all_calls.TestCallLogAllCalls</td>
          <td class="col-name">test_call_log_all_calls</td>
          <td class="col-duration">133.5</td>
          <td class="col-links"><a class="source" href="data:text/plain;charset=utf-8;base64,PCFET0NUWVBFIGh0bWw+CjxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiBsYW5nPSJlbi1VUyIgZGlyPSJsdHIiPjxoZWFkPgogICAgPG1ldGEgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCB1c2VyLXNjYWxhYmxlPW5vLCBpbml0aWFsLXNjYWxlPTEiIG5hbWU9InZpZXdwb3J0IiAvPgogICAgPG1ldGEgY2hhcnNldD0idXRmLTgiIC8+CiAgICA8bWV0YSBjb250ZW50PSIjMDBiN2I3IiBuYW1lPSJ0aGVtZS1jb2xvciIgLz4KICAgIDx0aXRsZT5EaWFsZXI8L3RpdGxlPgoKICAgIDwhLS0gTG9jYWxpemF0aW9uIC0tPgogICAgCiAgICAKICAgIAogICAgCiAgICAKICAgIAogICAgCgogICAgPCEtLSBDU1MgLS0+CiAgICA8bGluayBocmVmPSIvc2hhcmVkL3N0eWxlL2FuaW1hdGlvbnMuY3NzIiB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiAvPgogICAgPGxpbmsgaHJlZj0iL3NoYXJlZC9zdHlsZS9kaWFsZXIvZGlhbGVyLmNzcyIgdHlwZT0idGV4dC9jc3MiIHJlbD0ic3R5bGVzaGVldCIgLz4KICAgIDxsaW5rIGhyZWY9InN0eWxlL3Rvb2xiYXIuY3NzIiB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiAvPgoKICAgIDxsaW5rIGhyZWY9Ii9zaGFyZWQvc3R5bGUvZGlhbGVyL2tleXBhZC5jc3MiIHR5cGU9InRleHQvY3NzIiByZWw9InN0eWxlc2hlZXQiIC8+CiAgICA8bGluayBocmVmPSIvZGlhbGVyL3N0eWxlL3N1Z2dlc3Rpb24uY3NzIiB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiAvPgogICAgPGxpbmsgaHJlZj0iL3NoYXJlZC9zdHlsZS9jb250YWN0cy9jb250YWN0X2luX292ZXJsYXkuY3NzIiB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiAvPgogICAgPGxpbmsgaHJlZj0iL3NoYXJlZC9zdHlsZS9kaWFsZXIvb3ZlcmxheS5jc3MiIHR5cGU9InRleHQvY3NzIiByZWw9InN0eWxlc2hlZXQiIC8+CgogICAgPGxpbmsgaHJlZj0iL3NoYXJlZC9zdHlsZS90YWJzLmNzcyIgdHlwZT0idGV4dC9jc3MiIHJlbD0ic3R5bGVzaGVldCIgLz4KICAgIDxsaW5rIGhyZWY9Ii9zaGFyZWQvc3R5bGUvc2ltX3BpY2tlci5jc3MiIHR5cGU9InRleHQvY3NzIiByZWw9InN0eWxlc2hlZXQiIC8+CgogICAgPGxpbmsgaHJlZj0iYXBwOi8vdGhlbWUuZ2FpYW1vYmlsZS5vcmcvc2hhcmVkL2VsZW1lbnRzL2dhaWEtdGhlbWUvc3R5bGUuY3NzIiB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiAvPgogICAgPGxpbmsgaHJlZj0iL3NoYXJlZC9lbGVtZW50cy9nYWlhLWljb25zL3N0eWxlLmNzcyIgdHlwZT0idGV4dC9jc3MiIHJlbD0ic3R5bGVzaGVldCIgLz4KCiAgICA8IS0tIEpTIC0tPgogICAgPCEtLSA8c2NyaXB0IGRlZmVyPSIiIHNyYz0iL3NoYXJlZC9qcy9sYXp5X2xvYWRlci5qcyI+PC9zY3JpcHQ+IC0tPgogICAgPCEtLSA8c2NyaXB0IGRlZmVyPSIiIHNyYz0iL3NoYXJlZC9qcy9mb250X3NpemVfdXRpbHMuanMiPjwvc2NyaXB0PiAtLT4KICAgIDwhLS0gPHNjcmlwdCBkZWZlcj0iIiBzcmM9Ii9zaGFyZWQvanMvbGF6eV9sMTBuLmpzIj48L3NjcmlwdD4gLS0+CiAgICA8IS0tIDxzY3JpcHQgZGVmZXI9IiIgc3JjPSIvZGlhbGVyL2pzL2luZGV4LmpzIj48L3NjcmlwdD4gLS0+CgogICAgPCEtLSA8c2NyaXB0IGRlZmVyPSIiIHNyYz0iL3NoYXJlZC9qcy9kaWFsZXIvdXRpbHMuanMiPjwvc2NyaXB0PiAtLT4KICAgIDwhLS0gPHNjcmlwdCBkZWZlcj0iIiBzcmM9Ii9zaGFyZWQvanMvZGlhbGVyL3RvbmVfcGxheWVyLmpzIj48L3NjcmlwdD4gLS0+CiAgICA8IS0tIDxzY3JpcHQgZGVmZXI9IiIgc3JjPSIvc2hhcmVkL2pzL2RpYWxlci9rZXlwYWQuanMiPjwvc2NyaXB0PiAtLT4KICAgIDwhLS0gPHNjcmlwdCBkZWZlcj0iIiBzcmM9Ii9zaGFyZWQvanMvZGlhbGVyL2ZvbnRfc2l6ZV9tYW5hZ2VyLmpzIj48L3NjcmlwdD4gLS0+CgogICAgPCEtLSA8c2NyaXB0IGRlZmVyPSIiIHNyYz0iL2RpYWxlci9qcy9kaWFsZXIuanMiPjwvc2NyaXB0PiAtLT4KICAgIDwhLS0gPHNjcmlwdCBkZWZlcj0iIiBzcmM9Ii9kaWFsZXIvanMvY2FsbF9sb2dfZGIuanMiPjwvc2NyaXB0PiAtLT4KICAgIDwhLS0gPHNjcmlwdCBkZWZlcj0iIiBzcmM9Ii9zaGFyZWQvanMvbXVsdGlfc2ltX2FjdGlvbl9idXR0b24uanMiPjwvc2NyaXB0PiAtLT4KCiAgICA8IS0tIGZvciBwZXJmLW1lYXN1cmVtZW50IHJlbGF0ZWQgdXRpbGl0aWVzIC0tPgogICAgPCEtLSA8c2NyaXB0IGRlZmVyPSIiIHNyYz0iL3NoYXJlZC9qcy9wZXJmb3JtYW5jZV90ZXN0aW5nX2hlbHBlci5qcyI+PC9zY3JpcHQ+IC0tPjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBkZWZlcj0iZGVmZXIiIHNyYz0iLi9nYWlhX2J1aWxkX2RlZmVyX2luZGV4LmpzIj48L3NjcmlwdD4KCiAgICA8IS0tIExhenkgbG9hZCBhbGwgdGhlIHRoaW5nczoKICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9Ii9zaGFyZWQvc3R5bGUvYWN0aW9uX21lbnUuY3NzIj4KICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9Ii9zaGFyZWQvc3R5bGUvY29uZmlybS5jc3MiPgogICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0iL3NoYXJlZC9zdHlsZS9lZGl0X21vZGUuY3NzIj4KICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9Ii9zaGFyZWQvc3R5bGUvc3dpdGNoZXMuY3NzIj4KICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9Ii9zaGFyZWQvc3R5bGUvbGlzdHMuY3NzIj4KICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9Ii9zaGFyZWQvc3R5bGUvcHJvZ3Jlc3NfYWN0aXZpdHkuY3NzIj4KICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9Ii9zaGFyZWQvc3R5bGUvaW5wdXRfYXJlYXMuY3NzIj4KICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9Ii9kaWFsZXIvc3R5bGUvbW1pLmNzcyI+CiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiBocmVmPSIvc2hhcmVkL3N0eWxlL2NvbnRhY3RzL2NvbnRhY3RzX2J1dHRvbnMuY3NzIj4KICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9Ii9zaGFyZWQvc3R5bGUvY29udGFjdHMuY3NzIj4KICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9Ii9kaWFsZXIvc3R5bGUvYnV0dG9ucy5jc3MiPgogICAgPHNjcmlwdCBkZWZlciBzcmM9Ii9zaGFyZWQvanMvYWNjZXNzaWJpbGl0eV9oZWxwZXIuanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBkZWZlciBzcmM9Ii9zaGFyZWQvanMvYXN5bmNfc3RvcmFnZS5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IGRlZmVyIHNyYz0iL3NoYXJlZC9qcy9sMTBuLmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgZGVmZXIgc3JjPSIvc2hhcmVkL2pzL2wxMG5fZGF0ZS5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IGRlZmVyIHNyYz0iL3NoYXJlZC9qcy9tb2JpbGVfb3BlcmF0b3IuanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBkZWZlciBzcmM9Ii9zaGFyZWQvanMvbm90aWZpY2F0aW9uX2hlbHBlci5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IGRlZmVyIHNyYz0iL3NoYXJlZC9qcy9vcHRpb25fbWVudS5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IGRlZmVyIHNyYz0iL3NoYXJlZC9qcy9zaW1fcGlja2VyLmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgZGVmZXIgc3JjPSIvc2hhcmVkL2pzL3NpbXBsZV9waG9uZV9tYXRjaGVyLmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgZGVmZXIgc3JjPSIvc2hhcmVkL2pzL3NldHRpbmdzX2xpc3RlbmVyLmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgZGVmZXIgc3JjPSIvc2hhcmVkL2pzL2NvbmZpcm0uanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBkZWZlciBzcmM9Ii9zaGFyZWQvanMvZmIvZmJfcmVxdWVzdC5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IGRlZmVyIHNyYz0iL3NoYXJlZC9qcy9mYi9mYl9kYXRhX3JlYWRlci5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IGRlZmVyIHNyYz0iL3NoYXJlZC9qcy9mYi9mYl9yZWFkZXJfdXRpbHMuanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBkZWZlciBzcmM9Ii9zaGFyZWQvanMvZmIvZmJfdGVsX2luZGV4LmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgZGVmZXIgc3JjPSIvc2hhcmVkL2pzL2JpbmFyeV9zZWFyY2guanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBkZWZlciBzcmM9Ii9zaGFyZWQvanMvc3RpY2t5X2hlYWRlci5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IGRlZmVyIHNyYz0iL3NoYXJlZC9qcy9zaW1fc2V0dGluZ3NfaGVscGVyLmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgZGVmZXIgc3JjPSIvc2hhcmVkL2pzL2RpYWxlci92b2ljZW1haWwuanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBkZWZlciBzcmM9Ii9zaGFyZWQvanMvZGlhbGVyL2NvbnRhY3RzLmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgZGVmZXIgc3JjPSIvc2hhcmVkL2pzL2NvbnRhY3RzL2NvbnRhY3RzX2J1dHRvbnMuanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBkZWZlciBzcmM9Ii9zaGFyZWQvanMvY3VzdG9tX2RpYWxvZy5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IGRlZmVyIHNyYz0iL2RpYWxlci9qcy9jb250YWN0X2RhdGFfbWFuYWdlci5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IGRlZmVyIHNyYz0iL2RpYWxlci9qcy9zdWdnZXN0aW9uX2Jhci5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IGRlZmVyIHNyYz0iL2RpYWxlci9qcy90ZWxlcGhvbnlfaGVscGVyLmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgZGVmZXIgc3JjPSIvZGlhbGVyL2pzL21taS5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IGRlZmVyIHNyYz0iL2RpYWxlci9qcy9tbWlfdWkuanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBkZWZlciBzcmM9Ii9zaGFyZWQvanMvaWNjX2hlbHBlci5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IGRlZmVyIHNyYz0iL3NoYXJlZC9lbGVtZW50cy9jb25maWcuanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBkZWZlciBzcmM9Ii9zaGFyZWQvZWxlbWVudHMvZ2FpYS1oZWFkZXIvZGlzdC9zY3JpcHQuanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBkZWZlciBzcmM9Ii9zaGFyZWQvanMvdGV4dF9ub3JtYWxpemVyLmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgZGVmZXIgc3JjPSIvc2hhcmVkL2pzL2NvbnRhY3RzL3V0aWxpdGllcy90ZW1wbGF0ZXMuanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBkZWZlciBzcmM9Ii9zaGFyZWQvanMvY29udGFjdHMvc21zX2ludGVncmF0aW9uLmpzIj48L3NjcmlwdD4KICAgIDxsaW5rIHJlbD0icmVzb3VyY2UiIHR5cGU9ImFwcGxpY2F0aW9uL2pzb24iIGhyZWY9InNoYXJlZC9yZXNvdXJjZXMvbWVkaWEvdG9uZXMvIi8+CiAgICAtLT4KCiAgICAKICAgIAogICAgCiAgICAKICAgIAogICAgCiAgICAKICAgIAogIDxsaW5rIGhyZWY9Ii9sb2NhbGVzLW9iai8lN0IlN0Jsb2NhbGUlN0QlN0QuanNvbiIgdHlwZT0iYXBwbGljYXRpb24vbDEwbiIgcmVsPSJwcmVmZXRjaCIgLz48c2NyaXB0IHNyYz0iL3NoYXJlZC9qcy9sMTBuLmpzIj48L3NjcmlwdD48bGluayB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvc2hhcmVkL3N0eWxlL2FjdGlvbl9tZW51LmNzcyIgLz48c2NyaXB0IHNyYz0iL2RpYWxlci9qcy9zdWdnZXN0aW9uX2Jhci5qcyI+PC9zY3JpcHQ+PHNjcmlwdCBzcmM9Ii9zaGFyZWQvanMvc2V0dGluZ3NfbGlzdGVuZXIuanMiPjwvc2NyaXB0PjxzY3JpcHQgc3JjPSIvc2hhcmVkL2pzL2FjY2Vzc2liaWxpdHlfaGVscGVyLmpzIj48L3NjcmlwdD48c2NyaXB0IHNyYz0iL3NoYXJlZC9qcy9hc3luY19zdG9yYWdlLmpzIj48L3NjcmlwdD48c2NyaXB0IHNyYz0iL3NoYXJlZC9qcy9ub3RpZmljYXRpb25faGVscGVyLmpzIj48L3NjcmlwdD48c2NyaXB0IHNyYz0iL3NoYXJlZC9qcy9zaW1wbGVfcGhvbmVfbWF0Y2hlci5qcyI+PC9zY3JpcHQ+PHNjcmlwdCBzcmM9Ii9zaGFyZWQvanMvY29udGFjdF9waG90b19oZWxwZXIuanMiPjwvc2NyaXB0PjxzY3JpcHQgc3JjPSIvc2hhcmVkL2pzL2RpYWxlci9jb250YWN0cy5qcyI+PC9zY3JpcHQ+PHNjcmlwdCBzcmM9Ii9zaGFyZWQvanMvZGlhbGVyL3ZvaWNlbWFpbC5qcyI+PC9zY3JpcHQ+PHNjcmlwdCBzcmM9Ii9kaWFsZXIvanMvY2FsbF9sb2cuanMiPjwvc2NyaXB0PjxsaW5rIHR5cGU9InRleHQvY3NzIiByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9kaWFsZXIvc3R5bGUvY2FsbF9sb2cuY3NzIiAvPjxzY3JpcHQgc3JjPSIvc2hhcmVkL2pzL21vYmlsZV9vcGVyYXRvci5qcyI+PC9zY3JpcHQ+PHNjcmlwdCBzcmM9Ii9kaWFsZXIvanMvbW1pLmpzIj48L3NjcmlwdD48c2NyaXB0IHNyYz0iL2RpYWxlci9qcy9tbWlfdWkuanMiPjwvc2NyaXB0PjxsaW5rIHR5cGU9InRleHQvY3NzIiByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9zaGFyZWQvc3R5bGUvcHJvZ3Jlc3NfYWN0aXZpdHkuY3NzIiAvPjxsaW5rIHR5cGU9InRleHQvY3NzIiByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9kaWFsZXIvc3R5bGUvbW1pLmNzcyIgLz48c2NyaXB0IHNyYz0iL3NoYXJlZC9qcy9sMTBuX2RhdGUuanMiPjwvc2NyaXB0PjxzY3JpcHQgc3JjPSIvc2hhcmVkL2pzL2ZiL2ZiX3JlcXVlc3QuanMiPjwvc2NyaXB0PjxzY3JpcHQgc3JjPSIvc2hhcmVkL2pzL2ZiL2ZiX2RhdGFfcmVhZGVyLmpzIj48L3NjcmlwdD48c2NyaXB0IHNyYz0iL3NoYXJlZC9qcy9mYi9mYl9yZWFkZXJfdXRpbHMuanMiPjwvc2NyaXB0PjxsaW5rIHR5cGU9InRleHQvY3NzIiByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9zaGFyZWQvc3R5bGUvY29uZmlybS5jc3MiIC8+PHNjcmlwdCBzcmM9Ii9zaGFyZWQvanMvY29uZmlybS5qcyI+PC9zY3JpcHQ+PHNjcmlwdCBzcmM9Ii9zaGFyZWQvZWxlbWVudHMvY29uZmlnLmpzIj48L3NjcmlwdD48c2NyaXB0IHNyYz0iL3NoYXJlZC9lbGVtZW50cy9nYWlhLWhlYWRlci9kaXN0L3NjcmlwdC5qcyI+PC9zY3JpcHQ+PGxpbmsgdHlwZT0idGV4dC9jc3MiIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iL3NoYXJlZC9zdHlsZS9lZGl0X21vZGUuY3NzIiAvPjxzY3JpcHQgc3JjPSIvc2hhcmVkL2pzL2ZiL2ZiX3RlbF9pbmRleC5qcyI+PC9zY3JpcHQ+PHNjcmlwdCBzcmM9Ii9zaGFyZWQvanMvYmluYXJ5X3NlYXJjaC5qcyI+PC9zY3JpcHQ+PHNjcmlwdCBzcmM9Ii9kaWFsZXIvanMvdGVsZXBob255X2hlbHBlci5qcyI+PC9zY3JpcHQ+PHNjcmlwdCBzcmM9Ii9zaGFyZWQvanMvaWNjX2hlbHBlci5qcyI+PC9zY3JpcHQ+PHNjcmlwdCBzcmM9Ii9zaGFyZWQvanMvZGlhbGVyL3V0aWxzLmpzIj48L3NjcmlwdD48bGluayB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvc2hhcmVkL3N0eWxlL3N3aXRjaGVzLmNzcyIgLz48bGluayB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvc2hhcmVkL3N0eWxlL2xpc3RzLmNzcyIgLz48c2NyaXB0IHNyYz0iL3NoYXJlZC9qcy9zdGlja3lfaGVhZGVyLmpzIj48L3NjcmlwdD48c2NyaXB0IHNyYz0iL3NoYXJlZC9qcy9zaW1fc2V0dGluZ3NfaGVscGVyLmpzIj48L3NjcmlwdD48c2NyaXB0IHNyYz0iL3NoYXJlZC9qcy9kYXRlX3RpbWVfaGVscGVyLmpzIj48L3NjcmlwdD48L2hlYWQ+CiAgPGJvZHkgY2xhc3M9InNraW4tY29tbXMgdGhlbWUtY29tbXVuaWNhdGlvbnMiIHJvbGU9ImFwcGxpY2F0aW9uIj4KICAgIDxzZWN0aW9uIGNsYXNzPSJiYi10YWJsaXN0IiByb2xlPSJ0YWJsaXN0IiBpZD0idmlld3MiPgogICAgICA8bGkgaWQ9ImNhbGwtbG9nLXZpZXciIGNsYXNzPSJ2aWV3IGhpZGRlbiIgcm9sZT0icHJlc2VudGF0aW9uIj4KICAgICAgICA8YSBhcmlhLXNlbGVjdGVkPSJ0cnVlIiBkYXRhLWwxMG4taWQ9InJlY2VudHMiIGNsYXNzPSJpY29uIGljb24tcmVjZW50cyB0b29sYmFyLW9wdGlvbi1zZWxlY3RlZCIgaHJlZj0iI2NhbGwtbG9nLXZpZXciIGFyaWEtY29udHJvbHM9InJlY2VudHMtcGFuZWwiIHJvbGU9InRhYiIgaWQ9Im9wdGlvbi1yZWNlbnRzIiBhcmlhLWxhYmVsPSJSZWNlbnQgY2FsbHMiPjwvYT4KICAgICAgICA8ZGl2IGFyaWEtbGFiZWxsZWRieT0ib3B0aW9uLXJlY2VudHMiIGNsYXNzPSJiYi10YWJwYW5lbCIgcm9sZT0idGFicGFuZWwiIGlkPSJyZWNlbnRzLXBhbmVsIj4KICAgICAgICAgIDxzZWN0aW9uIHJvbGU9InJlZ2lvbiI+CiAgICAgICAgICAgIDxnYWlhLWhlYWRlciBzdHlsZT0iIiBjbGFzcz0iLWNvbnRlbnQiPgogICAgICAgICAgICAgIDxoMSBkYXRhLWwxMG4taWQ9ImNhbGxMb2ciIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDBweDsgbWFyZ2luLWxlZnQ6IDUwcHg7IGZvbnQtc2l6ZTogMjRweDsiPkNhbGwgbG9nPC9oMT4KICAgICAgICAgICAgICA8YnV0dG9uIGRhdGEtaWNvbj0iZWRpdCIgaWQ9ImNhbGwtbG9nLWljb24tZWRpdCIgYXJpYS1kaXNhYmxlZD0iZmFsc2UiPgogICAgICAgICAgICAgICAgPHNwYW4gYXJpYS1kaXNhYmxlZD0idHJ1ZSIgZGF0YS1sMTBuLWlkPSJjYWxsTG9nRWRpdCIgdGl0bGU9IkVkaXQgY2FsbCBsb2ciPjwvc3Bhbj4KICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgPHN0eWxlIHNjb3BlZD0iIj5AaW1wb3J0IHVybCgvc2hhcmVkL2VsZW1lbnRzL2dhaWEtaGVhZGVyL3N0eWxlLmNzcyk7PC9zdHlsZT48L2dhaWEtaGVhZGVyPgogICAgICAgICAgICA8bmF2IGNsYXNzPSJyZWNlbnRzLWZpbHRlci1jb250YWluZXIiIGlkPSJjYWxsLWxvZy1maWx0ZXIiPgogICAgICAgICAgICAgIDx1bCBhcmlhLWNvbnRyb2xzPSJjYWxsLWxvZy1jb250YWluZXIiIGRhdGEtdHlwZT0iZmlsdGVyIiBjbGFzcz0iYmItdGFibGlzdCIgcm9sZT0idGFibGlzdCI+CiAgICAgICAgICAgICAgICA8bGkgcm9sZT0icHJlc2VudGF0aW9uIiBpZD0iYWxsLWZpbHRlciI+PGEgZGF0YS1sMTBuLWlkPSJhbGwiIGRhdGEtYWN0aW9uPSJhbGwiIGFyaWEtc2VsZWN0ZWQ9InRydWUiIHJvbGU9InRhYiIgaWQ9ImFsbC1maWx0ZXItdGFiIiBhcmlhLWxhYmVsPSJBbGwiPkFsbDwvYT48L2xpPgogICAgICAgICAgICAgICAgPGxpIHJvbGU9InByZXNlbnRhdGlvbiIgaWQ9Im1pc3NlZC1maWx0ZXIiPjxhIGRhdGEtbDEwbi1pZD0ibWlzc2VkIiBkYXRhLWFjdGlvbj0ibWlzc2VkIiBhcmlhLXNlbGVjdGVkPSJmYWxzZSIgcm9sZT0idGFiIiBpZD0ibWlzc2VkLWZpbHRlci10YWIiIGFyaWEtbGFiZWw9Ik1pc3NlZCI+TWlzc2VkPC9hPjwvbGk+CiAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgPC9uYXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InZpZXctYm9keSI+CiAgICAgICAgICAgICAgPGFydGljbGUgZGF0YS10eXBlPSJsaXN0IiBjbGFzcz0idmlldy1ib2R5LWlubmVyIGFjdGl2ZSIgcm9sZT0idGFicGFuZWwiIGlkPSJjYWxsLWxvZy1jb250YWluZXIiIGFyaWEtbGFiZWxsZWRieT0iYWxsLWZpbHRlci10YWIiPgogICAgICAgICAgICAgICAgPGRpdiBoaWRkZW49IiIgaWQ9Im5vLXJlc3VsdC1jb250YWluZXIiPgogICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJuby1yZXN1bHQtbWVzc2FnZSI+CiAgICAgICAgICAgICAgICAgICAgPHAgZGF0YS1sMTBuLWlkPSJuby1sb2dzLW1zZy0xIiBpZD0ibm8tcmVzdWx0LW1zZzEiPk5vIGNhbGxzIHJlY29yZGVkPC9wPgogICAgICAgICAgICAgICAgICAgIDxwIGRhdGEtbDEwbi1pZD0ibm8tbG9ncy1tc2ctMiIgaWQ9Im5vLXJlc3VsdC1tc2cyIj5TdGFydCBjb21tdW5pY2F0aW5nIG5vdzwvcD4KICAgICAgICAgICAgICAgICAgICA8cCBoaWRkZW49IiIgZGF0YS1sMTBuLWlkPSJuby1sb2dzLW1zZy0zIiBpZD0ibm8tcmVzdWx0LW1zZzMiPk5vIG1pc3NlZCBjYWxsczwvcD4KICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICA8c2VjdGlvbiBkYXRhLXRpbWVzdGFtcD0iMTQzNDI5NzYwMDAwMCI+PGhlYWRlciBkYXRhLXRpbWVzdGFtcD0iMTQzNDI5NzYwMDAwMCIgaWQ9ImhlYWRlci0xNDM0Mjk3NjAwMDAwIiBkYXRhLXVwZGF0ZT0idHJ1ZSI+VG9kYXk8L2hlYWRlcj48b2wgY2xhc3M9ImxvZy1ncm91cCIgcm9sZT0ibGlzdGJveCIgYXJpYS1tdWx0aXNlbGVjdGFibGU9InRydWUiIGlkPSJncm91cC1jb250YWluZXItMTQzNDI5NzYwMDAwMCI+PGxpIGNsYXNzPSJsb2ctaXRlbSBtaXNzZWQtY2FsbCIgZGF0YS10aW1lc3RhbXA9IjE0MzQzMzc5MDg2NDQiIGRhdGEtcGhvbmUtbnVtYmVyPSIrODg2OTU2ODIwMDk3IiBkYXRhLXR5cGU9ImluY29taW5nIiByb2xlPSJvcHRpb24iIGFyaWEtc2VsZWN0ZWQ9ImZhbHNlIiBpZD0iMTQzNDI5NzYwMDAwMC0rODg2OTU2ODIwMDk3LWluY29taW5nIiBkYXRhLXN0YXR1cz0iIj48bGFiZWwgYXJpYS1oaWRkZW49InRydWUiIGNsYXNzPSJwYWNrLWNoZWNrYm94IGNhbGwtbG9nLXNlbGVjdGlvbiBkYW5nZXIiPjxpbnB1dCB0eXBlPSJjaGVja2JveCIgdmFsdWU9IjE0MzQyOTc2MDAwMDAtKzg4Njk1NjgyMDA5Ny1pbmNvbWluZyIgLz48c3Bhbj48L3NwYW4+PC9sYWJlbD48YSByb2xlPSJwcmVzZW50YXRpb24iPjxhc2lkZSBjbGFzcz0iaWNvbiBjYWxsLXR5cGUtaWNvbiBpY29uIGljb24tbWlzc2VkIGZpcnN0LXNpbSI+PC9hc2lkZT48cCBjbGFzcz0icHJpbWFyeS1pbmZvIj48c3BhbiBjbGFzcz0icHJpbWFyeS1pbmZvLW1haW4iPis4ODY5NTY4MjAwOTc8L3NwYW4+PHNwYW4gY2xhc3M9InJldHJ5LWNvdW50Ij48L3NwYW4+PC9wPjxwIGNsYXNzPSJhZGRpdGlvbmFsLWluZm8iIGFyaWEtaGlkZGVuPSJ0cnVlIj48c3BhbiBjbGFzcz0idHlwZS1jYXJyaWVyIj5Vbmtub3duPC9zcGFuPjxzcGFuIGNsYXNzPSJjYWxsLXRpbWUiPjExOjExIEFNIDwvc3Bhbj48L3A+PC9hPjwvbGk+PC9vbD48L3NlY3Rpb24+PHNlY3Rpb24gZGF0YS10aW1lc3RhbXA9IjE0MzQyOTc2MDAwMDAiPjxoZWFkZXIgZGF0YS10aW1lc3RhbXA9IjE0MzQyOTc2MDAwMDAiIGlkPSJoZWFkZXItMTQzNDI5NzYwMDAwMCIgZGF0YS11cGRhdGU9InRydWUiPlRvZGF5PC9oZWFkZXI+PG9sIGNsYXNzPSJsb2ctZ3JvdXAiIHJvbGU9Imxpc3Rib3giIGFyaWEtbXVsdGlzZWxlY3RhYmxlPSJ0cnVlIiBpZD0iZ3JvdXAtY29udGFpbmVyLTE0MzQyOTc2MDAwMDAiPjxsaSBjbGFzcz0ibG9nLWl0ZW0gbWlzc2VkLWNhbGwiIGRhdGEtdGltZXN0YW1wPSIxNDM0MzM3OTA4NjQ0IiBkYXRhLXBob25lLW51bWJlcj0iKzg4Njk1NjgyMDA5NyIgZGF0YS10eXBlPSJpbmNvbWluZyIgcm9sZT0ib3B0aW9uIiBhcmlhLXNlbGVjdGVkPSJmYWxzZSIgaWQ9IjE0MzQyOTc2MDAwMDAtKzg4Njk1NjgyMDA5Ny1pbmNvbWluZyIgZGF0YS1zdGF0dXM9IiI+PGxhYmVsIGFyaWEtaGlkZGVuPSJ0cnVlIiBjbGFzcz0icGFjay1jaGVja2JveCBjYWxsLWxvZy1zZWxlY3Rpb24gZGFuZ2VyIj48aW5wdXQgdHlwZT0iY2hlY2tib3giIHZhbHVlPSIxNDM0Mjk3NjAwMDAwLSs4ODY5NTY4MjAwOTctaW5jb21pbmciIC8+PHNwYW4+PC9zcGFuPjwvbGFiZWw+PGEgcm9sZT0icHJlc2VudGF0aW9uIj48YXNpZGUgY2xhc3M9Imljb24gY2FsbC10eXBlLWljb24gaWNvbiBpY29uLW1pc3NlZCBmaXJzdC1zaW0iPjwvYXNpZGU+PHAgY2xhc3M9InByaW1hcnktaW5mbyI+PHNwYW4gY2xhc3M9InByaW1hcnktaW5mby1tYWluIj4rODg2OTU2ODIwMDk3PC9zcGFuPjxzcGFuIGNsYXNzPSJyZXRyeS1jb3VudCI+PC9zcGFuPjwvcD48cCBjbGFzcz0iYWRkaXRpb25hbC1pbmZvIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHNwYW4gY2xhc3M9InR5cGUtY2FycmllciI+VW5rbm93bjwvc3Bhbj48c3BhbiBjbGFzcz0iY2FsbC10aW1lIj4xMToxMSBBTSA8L3NwYW4+PC9wPjwvYT48L2xpPjxsaSBjbGFzcz0ibG9nLWl0ZW0iIGRhdGEtdGltZXN0YW1wPSIxNDM0MzM3ODkxMzAxIiBkYXRhLXBob25lLW51bWJlcj0iKzg4Njk1NjgyMDA5NyIgZGF0YS10eXBlPSJkaWFsaW5nIiByb2xlPSJvcHRpb24iIGFyaWEtc2VsZWN0ZWQ9ImZhbHNlIiBpZD0iMTQzNDI5NzYwMDAwMC0rODg2OTU2ODIwMDk3LWRpYWxpbmciPjxsYWJlbCBhcmlhLWhpZGRlbj0idHJ1ZSIgY2xhc3M9InBhY2stY2hlY2tib3ggY2FsbC1sb2ctc2VsZWN0aW9uIGRhbmdlciI+PGlucHV0IHR5cGU9ImNoZWNrYm94IiB2YWx1ZT0iMTQzNDI5NzYwMDAwMC0rODg2OTU2ODIwMDk3LWRpYWxpbmciIC8+PHNwYW4+PC9zcGFuPjwvbGFiZWw+PGEgcm9sZT0icHJlc2VudGF0aW9uIj48YXNpZGUgY2xhc3M9Imljb24gY2FsbC10eXBlLWljb24gaWNvbiBpY29uLW91dGdvaW5nIGZpcnN0LXNpbSI+PC9hc2lkZT48cCBjbGFzcz0icHJpbWFyeS1pbmZvIj48c3BhbiBjbGFzcz0icHJpbWFyeS1pbmZvLW1haW4iPis4ODY5NTY4MjAwOTc8L3NwYW4+PHNwYW4gY2xhc3M9InJldHJ5LWNvdW50Ij48L3NwYW4+PC9wPjxwIGNsYXNzPSJhZGRpdGlvbmFsLWluZm8iIGFyaWEtaGlkZGVuPSJ0cnVlIj48c3BhbiBjbGFzcz0idHlwZS1jYXJyaWVyIj5Vbmtub3duPC9zcGFuPjxzcGFuIGNsYXNzPSJjYWxsLXRpbWUiPjExOjExIEFNIDwvc3Bhbj48L3A+PC9hPjwvbGk+PC9vbD48L3NlY3Rpb24+PC9hcnRpY2xlPgogICAgICAgICAgICAgIDxkaXYgaWQ9InN0aWNreSIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IC1tb3otZWxlbWVudCgjaGVhZGVyLTE0MzQyOTc2MDAwMDApOyI+PC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgPHNlY3Rpb24gaGlkZGVuPSIiIHJvbGU9InJlZ2lvbiIgaWQ9ImNhbGwtaW5mby12aWV3Ij48IS0tCgogIDxnYWlhLWhlYWRlciBpZD0iY2FsbC1pbmZvLWdhaWEtaGVhZGVyIiBhY3Rpb249ImJhY2siPgogICAgPGgxIGlkPSJjYWxsLWluZm8tdGl0bGUiPjwvaDE+CiAgPC9nYWlhLWhlYWRlcj4KCiAgPGRpdiBjbGFzcz0iY2lfX3dyYXBwZXIiPgogICAgPGRpdiBjbGFzcz0iY2lfX2NhbGxzLXdyYXBwZXIiPgogICAgICA8ZGl2IGNsYXNzPSJjaV9fZ3JvdXAtaW5mbyI+CiAgICAgICAgPHAgaWQ9ImNhbGwtaW5mby1kYXkiIGNsYXNzPSJjaV9fZ3JvdyI+PC9wPgogICAgICAgIDxwIGlkPSJjYWxsLWluZm8tZGlyZWN0aW9uIiBjbGFzcz0iY2lfX2RpcmVjdGlvbi1pY29uIj48L3A+CiAgICAgIDwvZGl2PgoKICAgICAgPGRpdiBpZD0iY2FsbC1kdXJhdGlvbnMiPgogICAgICA8L2Rpdj4KICAgIDwvZGl2PgoKICAgIDxkaXYgY2xhc3M9ImNpX19jb250YWN0LXdyYXBwZXIiPgogICAgICA8ZGl2IGlkPSJjb250YWN0LWRldGFpbCI+CiAgICAgICAgPHNlY3Rpb24gaWQ9InBob25lLWRldGFpbHMtc3R1YiI+PC9zZWN0aW9uPgogICAgICAgIDxzZWN0aW9uIGlkPSJlbWFpbC1kZXRhaWxzLXN0dWIiPjwvc2VjdGlvbj4KICAgICAgICA8dWwgaWQ9ImNhbGwtaW5mby1saXN0LWRldGFpbHMiPjwvdWw+CiAgICAgIDwvZGl2PgoKICAgICAgPGRpdiBpZD0iY29udGFjdC1hY3Rpb25zIj4KICAgICAgICA8YnV0dG9uIGlkPSJjYWxsLWluZm8tZGV0YWlscyIgY2xhc3M9ImFjdGl2aXR5IiBkYXRhLWwxMG4taWQ9ImNvbnRhY3REZXRhaWxzIiBoaWRkZW49IiI+PC9idXR0b24+CiAgICAgICAgPGJ1dHRvbiBpZD0iY2FsbC1pbmZvLWFkZCIgY2xhc3M9ImFjdGl2aXR5IiBkYXRhLWwxMG4taWQ9ImFkZFRvRXhpc3RpbmdDb250YWN0IiBoaWRkZW49IiI+PC9idXR0b24+CiAgICAgICAgPGJ1dHRvbiBpZD0iY2FsbC1pbmZvLWNyZWF0ZSIgY2xhc3M9ImFjdGl2aXR5IiBkYXRhLWwxMG4taWQ9ImNyZWF0ZU5ld0NvbnRhY3QiIGhpZGRlbj0iIj48L2J1dHRvbj4KICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICA8L2Rpdj4KICAtLT48L3NlY3Rpb24+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGZvcm0gY2xhc3M9ImhpZGUiIGlkPSJjYWxsLWxvZy11cGdyYWRpbmciIGRhdGEtdHlwZT0iY29uZmlybSIgcm9sZT0iZGlhbG9nIj4KICAgICAgICAgIDxzZWN0aW9uPgogICAgICAgICAgICA8ZGl2IHJvbGU9InN0YXR1cyI+CiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImxvYWRpbmctaGVhZGVyIiBpZD0iY2FsbC1sb2ctdXBncmFkZS1wZXJjZW50Ij4wJTwvc3Bhbj4KICAgICAgICAgICAgICA8cHJvZ3Jlc3MgbWF4PSIxMDAiIHZhbHVlPSIwIiBjbGFzcz0icGFjay1hY3Rpdml0eSIgaWQ9ImNhbGwtbG9nLXVwZ3JhZGUtcHJvZ3Jlc3MiPjwvcHJvZ3Jlc3M+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgIDwvZm9ybT4KICAgICAgPC9saT4KICAgICAgPGxpIGlkPSJjb250YWN0cy12aWV3IiBjbGFzcz0idmlldyIgcm9sZT0icHJlc2VudGF0aW9uIj4KICAgICAgICA8YSBhcmlhLXNlbGVjdGVkPSJmYWxzZSIgZGF0YS1sMTBuLWlkPSJjb250YWN0cyIgY2xhc3M9Imljb24gaWNvbi1jb250YWN0cyIgaHJlZj0iI2NvbnRhY3RzLXZpZXciIGFyaWEtY29udHJvbHM9ImlmcmFtZS1jb250YWN0cy1jb250YWluZXIiIHJvbGU9InRhYiIgaWQ9Im9wdGlvbi1jb250YWN0cyI+Q29udGFjdHM8L2E+CiAgICAgICAgPGRpdiBhcmlhLWxhYmVsbGVkYnk9Im9wdGlvbi1jb250YWN0cyIgY2xhc3M9ImJiLXRhYnBhbmVsIiByb2xlPSJ0YWJwYW5lbCIgaWQ9ImlmcmFtZS1jb250YWN0cy1jb250YWluZXIiPgogICAgICAgIDwvZGl2PgogICAgICA8L2xpPgogICAgICA8bGkgaWQ9ImtleWJvYXJkLXZpZXciIHJvbGU9InByZXNlbnRhdGlvbiI+CiAgICAgICAgPGEgYXJpYS1zZWxlY3RlZD0iZmFsc2UiIGRhdGEtbDEwbi1pZD0ia2V5cGFkIiBjbGFzcz0iaWNvbiBpY29uLWtleXBhZCIgaHJlZj0iI2tleWJvYXJkLXZpZXciIGFyaWEtY29udHJvbHM9ImtleXBhZC1wYW5lbCIgcm9sZT0idGFiIiBpZD0ib3B0aW9uLWtleXBhZCIgYXJpYS1sYWJlbD0iS2V5cGFkIj48L2E+CiAgICAgICAgPGRpdiBhcmlhLWxhYmVsbGVkYnk9Im9wdGlvbi1rZXlwYWQiIGNsYXNzPSJiYi10YWJwYW5lbCIgcm9sZT0idGFicGFuZWwiIGlkPSJrZXlwYWQtcGFuZWwiPgogICAgICAgICAgPGRpdiBpZD0icGhvbmUtbnVtYmVyLXZpZXctY29udGFpbmVyIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icGhvbmUtbnVtYmVyLXZpZXctd3JhcHBlci1pbnB1dCI+CiAgICAgICAgICAgICAgPGlucHV0IHR5cGU9InRleHQiIGRhdGEtbDEwbi1pZD0icGhvbmVOdW1iZXJJbnB1dCIgcmVhZG9ubHk9InJlYWRvbmx5IiBjbGFzcz0icGhvbmUtbnVtYmVyLWZvbnQgZm9udC1saWdodCIgaWQ9InBob25lLW51bWJlci12aWV3IiBhcmlhLWxhYmVsPSJQaG9uZSBudW1iZXIiIHN0eWxlPSJmb250LXNpemU6IDMwcHg7IiAvPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGJ1dHRvbiBkYXRhLWwxMG4taWQ9ImtleXBhZERlbGV0ZSIgZGF0YS12YWx1ZT0iZGVsZXRlIiBjbGFzcz0icmVzZXQtYnV0dG9uIiBpZD0ia2V5cGFkLWRlbGV0ZSIgYXJpYS1sYWJlbD0iRGVsZXRlIiBzdHlsZT0idmlzaWJpbGl0eTogaGlkZGVuOyI+CiAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8c2VjdGlvbiBoaWRkZW49IiIgYXJpYS1oaWRkZW49InRydWUiIGNsYXNzPSJzdWdnZXN0aW9uLWJhciIgaWQ9InN1Z2dlc3Rpb24tYmFyIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ianMtc3VnZ2VzdGlvbi1pdGVtIGNvbnRhY3QtaXRlbSIgcm9sZT0iYnV0dG9uIj4KCiAgICAgIDxkaXYgY2xhc3M9ImpzLW5hbWUgY2lfX25hbWUgZWxsaXBzaXMiPjwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJjaV9fZGV0YWlscyBlbGxpcHNpcyI+CiAgICAgICAgPHNwYW4gY2xhc3M9ImpzLXRlbC10eXBlIGNpX190ZWwtdHlwZSI+PC9zcGFuPgogICAgICAgIDxzcGFuIGNsYXNzPSJqcy10ZWwiPjwvc3Bhbj4KICAgICAgPC9kaXY+CgogIDwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJzdWdnZXN0aW9uLWNvdW50IiBpZD0ic3VnZ2VzdGlvbi1jb3VudCIgcm9sZT0iYnV0dG9uIj48L2Rpdj4KICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgIDxidXR0b24gaGlkZGVuPSIiIGNsYXNzPSJqcy1zdWdnZXN0aW9uLWl0ZW0gY29udGFjdC1pdGVtIiBpZD0iY29udGFjdC1pbi1vdmVybGF5LXRlbXBsYXRlIiByb2xlPSJidXR0b24iPgoKICAgICAgPGRpdiBjbGFzcz0ianMtbmFtZSBjaV9fbmFtZSBlbGxpcHNpcyI+PC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9ImNpX19kZXRhaWxzIGVsbGlwc2lzIj4KICAgICAgICA8c3BhbiBjbGFzcz0ianMtdGVsLXR5cGUgY2lfX3RlbC10eXBlIj48L3NwYW4+CiAgICAgICAgPHNwYW4gY2xhc3M9ImpzLXRlbCI+PC9zcGFuPgogICAgICA8L2Rpdj4KCiAgPC9idXR0b24+CgogICAgICAgICAgPGFydGljbGUgaWQ9ImtleWJvYXJkLWNvbnRhaW5lciI+CiAgICAgICAgICAgIDxzZWN0aW9uIGlkPSJrZXlwYWQiPgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImtleXBhZC1yb3ciPgogICAgICAgICAgICAgICAgPGRpdiBkYXRhLXZvaWNlbWFpbD0idHJ1ZSIgZGF0YS12YWx1ZT0iMSIgcm9sZT0ia2V5IiBjbGFzcz0ia2V5cGFkLWtleSI+CiAgICAgICAgICAgICAgICAgIDxzcGFuPjE8L3NwYW4+CiAgICAgICAgICAgICAgICAgIDxlbSBkYXRhLWwxMG4taWQ9InZvaWNlTWFpbEtleSIgY2xhc3M9ImtleXBhZC1zdWJpY29uIHZvaWNlbWFpbCIgYXJpYS1sYWJlbD0iVm9pY2VtYWlsIj48L2VtPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGRhdGEtdmFsdWU9IjIiIHJvbGU9ImtleSIgY2xhc3M9ImtleXBhZC1rZXkiPgogICAgICAgICAgICAgICAgICA8c3Bhbj4yPC9zcGFuPgogICAgICAgICAgICAgICAgICA8ZW0+QUJDPC9lbT4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBkYXRhLXZhbHVlPSIzIiByb2xlPSJrZXkiIGNsYXNzPSJrZXlwYWQta2V5Ij4KICAgICAgICAgICAgICAgICAgPHNwYW4+Mzwvc3Bhbj4KICAgICAgICAgICAgICAgICAgPGVtPkRFRjwvZW0+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJrZXlwYWQtcm93Ij4KICAgICAgICAgICAgICAgIDxkaXYgZGF0YS12YWx1ZT0iNCIgcm9sZT0ia2V5IiBjbGFzcz0ia2V5cGFkLWtleSI+CiAgICAgICAgICAgICAgICAgIDxzcGFuPjQ8L3NwYW4+CiAgICAgICAgICAgICAgICAgIDxlbT5HSEk8L2VtPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGRhdGEtdmFsdWU9IjUiIHJvbGU9ImtleSIgY2xhc3M9ImtleXBhZC1rZXkiPgogICAgICAgICAgICAgICAgICA8c3Bhbj41PC9zcGFuPgogICAgICAgICAgICAgICAgICA8ZW0+SktMPC9lbT4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBkYXRhLXZhbHVlPSI2IiByb2xlPSJrZXkiIGNsYXNzPSJrZXlwYWQta2V5Ij4KICAgICAgICAgICAgICAgICAgPHNwYW4+Njwvc3Bhbj4KICAgICAgICAgICAgICAgICAgPGVtPk1OTzwvZW0+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJrZXlwYWQtcm93Ij4KICAgICAgICAgICAgICAgIDxkaXYgZGF0YS12YWx1ZT0iNyIgcm9sZT0ia2V5IiBjbGFzcz0ia2V5cGFkLWtleSI+CiAgICAgICAgICAgICAgICAgIDxzcGFuPjc8L3NwYW4+CiAgICAgICAgICAgICAgICAgIDxlbT5QUVJTPC9lbT4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBkYXRhLXZhbHVlPSI4IiByb2xlPSJrZXkiIGNsYXNzPSJrZXlwYWQta2V5Ij4KICAgICAgICAgICAgICAgICAgPHNwYW4+ODwvc3Bhbj4KICAgICAgICAgICAgICAgICAgPGVtPlRVVjwvZW0+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgZGF0YS12YWx1ZT0iOSIgcm9sZT0ia2V5IiBjbGFzcz0ia2V5cGFkLWtleSI+CiAgICAgICAgICAgICAgICAgIDxzcGFuPjk8L3NwYW4+CiAgICAgICAgICAgICAgICAgIDxlbT5XWFlaPC9lbT4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImtleXBhZC1yb3ciPgogICAgICAgICAgICAgICAgPGRpdiBkYXRhLWwxMG4taWQ9ImFzdGVyaXNrIiBkYXRhLXZhbHVlPSIqIiByb2xlPSJrZXkiIGNsYXNzPSJrZXlwYWQta2V5IiBhcmlhLWxhYmVsPSJBc3RlcmlzayI+CiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFzdGVyaXNrIj4qPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgZGF0YS12YWx1ZT0iMCIgcm9sZT0ia2V5IiBjbGFzcz0ia2V5cGFkLWtleSI+CiAgICAgICAgICAgICAgICAgIDxzcGFuPjA8L3NwYW4+CiAgICAgICAgICAgICAgICAgIDxlbSBjbGFzcz0iZm9udC1zaXplLXBsdXMiPis8L2VtPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGRhdGEtbDEwbi1pZD0iaGFzaFNpZ24iIGRhdGEtdmFsdWU9IiMiIGRhdGEtdHlwZT0iZGlhbCIgcm9sZT0ia2V5IiBjbGFzcz0ia2V5cGFkLWtleSIgYXJpYS1sYWJlbD0iSGFzaCBzaWduIj4KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic2hhcnAiPiM8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgIDxzZWN0aW9uIGlkPSJrZXlwYWQtY2FsbGJhciI+CiAgICAgICAgICAgICAgPGJ1dHRvbiBkYXRhLWwxMG4taWQ9ImRpYWxlckFkZENvbnRhY3QiIGNsYXNzPSJyZXNldC1idXR0b24ga2V5cGFkLWNhbGxiYXItYnV0dG9uIGljb24tYWRkLWNvbnRhY3QiIGRhdGEtdmFsdWU9ImFkZC1jb250YWN0IiBpZD0ia2V5cGFkLWNhbGxiYXItYWRkLWNvbnRhY3QiIGFyaWEtbGFiZWw9IkFkZCBjb250YWN0IiBkaXNhYmxlZD0iZGlzYWJsZWQiPjwvYnV0dG9uPgogICAgICAgICAgICAgIDxidXR0b24gZGF0YS1sMTBuLWlkPSJtYWtlQ2FsbCIgZGF0YS12YWx1ZT0ibWFrZS1jYWxsIiBjbGFzcz0icmVzZXQtYnV0dG9uIiBpZD0ia2V5cGFkLWNhbGxiYXItY2FsbC1hY3Rpb24iIGFyaWEtbGFiZWw9IkNhbGwiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ianMtc2ltLWluZGljYXRpb24iPjwvZGl2PgogICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvbGk+CiAgICA8L3NlY3Rpb24+CgogICAgPGZvcm0gaGlkZGVuPSIiIGRhdGEtdHlwZT0iZWRpdCIgZGF0YS1sMTBuLWlkPSJjYWxsTG9nRWRpdERpYWxvZyIgcm9sZT0iZGlhbG9nIiBpZD0iZWRpdC1tb2RlIiBhcmlhLWxhYmVsPSJFZGl0IGNhbGwgbG9nIGRpYWxvZyI+CgogICAgIDxzZWN0aW9uIGNsYXNzPSJ0aGVtZS1zZXR0aW5ncyIgcm9sZT0icmVnaW9uIj4KICAgICAgIDxnYWlhLWhlYWRlciBhY3Rpb249ImNsb3NlIiBpZD0iZWRpdC1tb2RlLWhlYWRlciIgc3R5bGU9IiIgY2xhc3M9Ii1jb250ZW50Ij4KICAgICAgICAgPGgxIGRhdGEtbDEwbi1pZD0iZWRpdCIgaWQ9ImhlYWRlci1lZGl0LW1vZGUtdGV4dCIgc3R5bGU9Im1hcmdpbi1yaWdodDogMHB4OyBtYXJnaW4tbGVmdDogMHB4OyBmb250LXNpemU6IDI0cHg7IiBjbGFzcz0iZmx1c2gtbGVmdCI+RWRpdDwvaDE+CiAgICAgICAgIDxidXR0b24gZGlzYWJsZWQ9ImRpc2FibGVkIiBkYXRhLWwxMG4taWQ9ImRlbGV0ZSIgaWQ9ImRlbGV0ZS1idXR0b24iPkRlbGV0ZTwvYnV0dG9uPgogICAgICAgPHN0eWxlIHNjb3BlZD0iIj5AaW1wb3J0IHVybCgvc2hhcmVkL2VsZW1lbnRzL2dhaWEtaGVhZGVyL3N0eWxlLmNzcyk7PC9zdHlsZT48L2dhaWEtaGVhZGVyPgogICAgIDwvc2VjdGlvbj4KICAgICA8bWVudT4KICAgICAgIDxidXR0b24gZGF0YS1sMTBuLWlkPSJkZXNlbGVjdEFsbCIgZGlzYWJsZWQ9ImRpc2FibGVkIiBjbGFzcz0iZWRpdC1idXR0b24iIGlkPSJkZXNlbGVjdC1hbGwtdGhyZWFkcyI+RGVzZWxlY3QgYWxsPC9idXR0b24+CiAgICAgICA8YnV0dG9uIGRhdGEtbDEwbi1pZD0ic2VsZWN0QWxsIiBjbGFzcz0iZWRpdC1idXR0b24iIGlkPSJzZWxlY3QtYWxsLXRocmVhZHMiPlNlbGVjdCBhbGw8L2J1dHRvbj4KICAgICA8L21lbnU+CgogIDwvZm9ybT4KCiAgICA8Zm9ybSBoaWRkZW49IiIgZGF0YS10eXBlPSJhY3Rpb24iIHJvbGU9ImRpYWxvZyIgaWQ9InNpbS1waWNrZXIiPgoKICAgIAogICAgICA8aGVhZGVyIGlkPSJzaW0tcGlja2VyLWRpYWwtdmlhIj48L2hlYWRlcj4KICAgICAgPG1lbnUgdHlwZT0idG9vbGJhciI+CiAgICAgICAgPGJ1dHRvbiBpZD0ic2ltLXBpY2tlci1idXR0b24tdGVtcGxhdGUiPgogICAgICAgICAgPHNwYW4gY2xhc3M9ImpzLXNpbS1waWNrZXItYnV0dG9uIj48L3NwYW4+CiAgICAgICAgICA8c3BhbiBkYXRhLWwxMG4taWQ9InNpbS1waWNrZXItYnV0dG9uLWRlZmF1bHQiIGNsYXNzPSJzaW0tZGVmYXVsdCI+KGRlZmF1bHQpPC9zcGFuPgogICAgICAgIDwvYnV0dG9uPgogICAgICAgIDxidXR0b24gZGF0YS1sMTBuLWlkPSJjYW5jZWwiPkNhbmNlbDwvYnV0dG9uPgogICAgICA8L21lbnU+CiAgICAKICA8L2Zvcm0+CgogICAgPGZvcm0gZGF0YS10eXBlPSJjb25maXJtIiByb2xlPSJkaWFsb2ciIGNsYXNzPSJoaWRlIG5vLW9wYWNpdHkiIGlkPSJjb25maXJtYXRpb24tbWVzc2FnZSI+CgogICAgIDxzZWN0aW9uPgogICAgICAgPGgxPkNvbmZpcm1hdGlvbiB0aXRsZTwvaDE+CiAgICAgICA8cD5Db25maXJtYXRpb24gbWVzc2FnZTwvcD4KICAgICA8L3NlY3Rpb24+CiAgICAgPG1lbnU+CiAgICAgICA8YnV0dG9uPkFjdGlvbiAxPC9idXR0b24+CiAgICAgICA8YnV0dG9uPkFjdGlvbiAyPC9idXR0b24+CiAgICAgPC9tZW51PgoKICA8L2Zvcm0+CgogICAgPGZvcm0gYXJpYS1oaWRkZW49InRydWUiIGNsYXNzPSJvdmVybGF5IiBkYXRhLXR5cGU9ImFjdGlvbiIgcm9sZT0iZGlhbG9nIiBpZD0iY29udGFjdC1saXN0LW92ZXJsYXkiPjwhLS0KCiAgICA8aGVhZGVyPjwvaGVhZGVyPgogICAgPG1lbnUgaWQ9ImNvbnRhY3QtbGlzdCI+CiAgICAgIDxidXR0b24gaWQ9ImNvbnRhY3QtbGlzdC1vdmVybGF5LWNhbmNlbCIgZGF0YS1sMTBuLWlkPSJjYW5jZWwiPkNhbmNlbDwvYnV0dG9uPgogICAgPC9tZW51PgoKICAtLT48L2Zvcm0+CgogICAgPHNlY3Rpb24gaGlkZGVuPSIiIGlkPSJwaG9uZS1kZXRhaWxzIj48IS0tCiAgICA8bGkgZGF0YS1waG9uZT0iIiBpZD0icGhvbmUtZGV0YWlscy10ZW1wbGF0ZS0jaSMiIGRhdGEtdGVtcGxhdGU9IiIgcm9sZT0icmVnaW9uIiBhcmlhLWxhYmVsPSJQaG9uZSIgZGF0YS1sMTBuLWlkPSJwaG9uZURldGFpbCI+CiAgICAgIDxoMj4KICAgICAgICA8c3BhbiBkYXRhLWwxMG4taWQ9IiN0eXBlX2wxMG5faWQjIj4jdHlwZSM8L3NwYW4+CiAgICAgICAgPHNwYW4gY2xhc3M9ImNhcnJpZXItd3JhcHBlciIgaGlkZGVuPSIiPgogICAgICAgICAgPHNwYW4gZGF0YS1sMTBuLWlkPSJzZXBhcmF0b3IiPjwvc3Bhbj4KICAgICAgICAgIDxzcGFuIGNsYXNzPSJjYXJyaWVyIj4jY2FycmllciM8L3NwYW4+CiAgICAgICAgPC9zcGFuPgogICAgICA8L2gyPgogICAgICA8ZGl2IGNsYXNzPSJpdGVtIj4KICAgICAgICA8ZGl2IGNsYXNzPSJpdGVtLWJvZHktZXhwIj4KICAgICAgICAgIDxidXR0b24gY2xhc3M9ImFjdGl2aXR5IGNhbGwtYWN0aW9uIGljb24gaWNvbi1jYWxsIiBpZD0iY2FsbC1vci1waWNrLSNpIyI+CiAgICAgICAgICAgIDxiIGFyaWEtbGFiZWw9IkNhbGwiIGRhdGEtbDEwbi1pZD0ibWFrZUNhbGwiPiN2YWx1ZSM8L2I+CiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJqcy1zaW0taW5kaWNhdGlvbiI+PC9zcGFuPgogICAgICAgICAgPC9idXR0b24+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0iaXRlbS1tZWRpYSBwdWxsLXJpZ2h0Ij4KICAgICAgICAgIDxidXR0b24gaWQ9InNlbmQtc21zLWJ1dHRvbi0jaSMiIGNsYXNzPSJhY3Rpdml0eSBzZW5kLXNtcyBpY29uIGljb24tbWVzc2FnZSIgZGF0YS1sMTBuLWlkPSJzZW5kLXNtcy1idXR0b24iIGFyaWEtbGFiZWw9IlNNUyI+PC9idXR0b24+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgPC9saT4KICAtLT48L3NlY3Rpb24+CiAgICA8c2VjdGlvbiBoaWRkZW49IiIgaWQ9ImVtYWlsLWRldGFpbHMiPjwhLS0KICAgIDxsaSBkYXRhLW1haWw9IiIgaWQ9ImVtYWlsLWRldGFpbHMtdGVtcGxhdGUtI2kjIiBkYXRhLXRlbXBsYXRlPSIiPgogICAgICA8aDIgZGF0YS1sMTBuLWlkPSIjdHlwZV9sMTBuX2lkIyI+I3R5cGUjPC9oMj4KICAgICAgPGRpdiBjbGFzcz0iaXRlbSI+CiAgICAgICAgPGRpdiBjbGFzcz0iaXRlbS1ib2R5LWV4cCI+CiAgICAgICAgICA8YnV0dG9uIGlkPSJlbWFpbC1vci1waWNrLSNpIyIgY2xhc3M9ImFjdGl2aXR5IGljb24gaWNvbi1lbWFpbCI+CiAgICAgICAgICAgIDxiPiN2YWx1ZSM8L2I+CiAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICA8L2xpPgogIC0tPjwvc2VjdGlvbj4KCiAgICA8YXJ0aWNsZSBoaWRkZW49IiIgcm9sZT0icmVnaW9uIiBpZD0ibW1pLXNjcmVlbiI+CiAgICAgIDxzZWN0aW9uIHJvbGU9InJlZ2lvbiI+CiAgICAgICAgPGdhaWEtaGVhZGVyIGFjdGlvbj0iY2xvc2UiIGlkPSJtbWktaGVhZGVyIiBzdHlsZT0iIiBjbGFzcz0iLWNvbnRlbnQiPgogICAgICAgICAgPGgxIGlkPSJoZWFkZXItdGl0bGUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDBweDsgbWFyZ2luLWxlZnQ6IDBweDsgZm9udC1zaXplOiAyNHB4OyIgY2xhc3M9ImZsdXNoLWxlZnQiPlVTU0Q8L2gxPgogICAgICAgICAgPGJ1dHRvbiBkaXNhYmxlZD0iZGlzYWJsZWQiIGRhdGEtbDEwbi1pZD0ic2VuZCIgaWQ9InNlbmQiPlNlbmQ8L2J1dHRvbj4KICAgICAgICA8c3R5bGUgc2NvcGVkPSIiPkBpbXBvcnQgdXJsKC9zaGFyZWQvZWxlbWVudHMvZ2FpYS1oZWFkZXIvc3R5bGUuY3NzKTs8L3N0eWxlPjwvZ2FpYS1oZWFkZXI+CiAgICAgIDwvc2VjdGlvbj4KICAgICAgPHNlY3Rpb24gcm9sZT0icmVnaW9uIiBpZD0ibW1pLWNvbnRhaW5lciI+CiAgICAgICAgPGRpdiBpZD0ibWVzc2FnZSI+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvc2VjdGlvbj4KICAgICAgPGZvcm0gcm9sZT0icmVnaW9uIiBpZD0icmVzcG9uc2UiPgogICAgICAgIDxwPgogICAgICAgICAgPGlucHV0IHR5cGU9InRleHQiIGRpc2FibGVkPSJkaXNhYmxlZCIgcmVxdWlyZWQ9IiIgZGlyPSJhdXRvIiBwbGFjZWhvbGRlcj0iVHlwZSB5b3VyIHJlc3BvbnNl4oCmIiBkYXRhLWwxMG4taWQ9InR5cGUteW91ci1yZXNwb25zZSIgaWQ9InJlc3BvbnNlLXRleHQiIC8+CiAgICAgICAgICA8YnV0dG9uIGRhdGEtbDEwbi1pZD0iY2xlYXItYWxsLXRleHQiIHR5cGU9InJlc2V0IiBpZD0icmVzcG9uc2UtdGV4dC1yZXNldCI+Q2xlYXIgYWxsIHRleHQ8L2J1dHRvbj4KICAgICAgICA8L3A+CiAgICAgIDwvZm9ybT4KICAgIDwvYXJ0aWNsZT4KCiAgICA8Zm9ybSBjbGFzcz0iaGlkZSIgaWQ9ImxvYWRpbmctb3ZlcmxheSIgcm9sZT0iZGlhbG9nIiBkYXRhLXR5cGU9ImNvbmZpcm0iPgogICAgICA8c2VjdGlvbj4KICAgICAgICA8aDEgZGF0YS1sMTBuLWlkPSJzZW5kaW5nIj5TZW5kaW5n4oCmPC9oMT4KICAgICAgICA8cCByb2xlPSJzdGF0dXMiPgogICAgICAgICAgPHByb2dyZXNzIG1heD0iMTAwIiB2YWx1ZT0iMCIgY2xhc3M9InBhY2stYWN0aXZpdHkiPjwvcHJvZ3Jlc3M+CiAgICAgICAgPC9wPgogICAgICA8L3NlY3Rpb24+CiAgICAgIDxtZW51PgogICAgICAgIDxidXR0b24gZGF0YS1sMTBuLWlkPSJjYW5jZWwiIGlkPSJjYW5jZWwiIGNsYXNzPSJmdWxsIj5DYW5jZWw8L2J1dHRvbj4KICAgICAgPC9tZW51PgogICAgPC9mb3JtPgogIAoKCjwvYm9keT48L2h0bWw+" target="_blank">Source</a> <a class="screenshot" href="#" target="_blank">Screenshot</a> <a class="settings" href="data:text/plain;charset=utf-8;base64,ewogICAgImFjY2Vzc2liaWxpdHkuaW52ZXJ0IjogZmFsc2UsCiAgICAiYWNjZXNzaWJpbGl0eS5zY3JlZW5yZWFkZXIiOiBmYWxzZSwKICAgICJhaXJwbGFuZU1vZGUuZW5hYmxlZCI6IGZhbHNlLAogICAgImFpcnBsYW5lTW9kZS5zdGF0dXMiOiAiZGlzYWJsZWQiLAogICAgImFsYXJtLmVuYWJsZWQiOiBmYWxzZSwKICAgICJhbGFybS5yaW5ndG9uZSI6IHsKICAgICAgICAic2l6ZSI6IDM2NzYxLAogICAgICAgICJzbGljZSI6IG51bGwsCiAgICAgICAgInR5cGUiOiAiYXVkaW8vb2dnIgogICAgfSwKICAgICJhcG4uc2VsZWN0aW9ucyI6IG51bGwsCiAgICAiYXBwLXN1c3BlbmRpbmcuZW5hYmxlZCI6IHRydWUsCiAgICAiYXBwLXRoZW1lY29sb3IuZW5hYmxlZCI6IHRydWUsCiAgICAiYXBwLXRyYW5zaXRpb24uZW5hYmxlZCI6IHRydWUsCiAgICAiYXBwLmNhcmRzX3ZpZXcuc2NyZWVuc2hvdHMuZW5hYmxlZCI6IHRydWUsCiAgICAiYXBwLmxhdW5jaF9wYXRoLmJsYWNrbGlzdCI6IFtdLAogICAgImFwcC5yZXBvcnRDcmFzaGVzIjogImFzayIsCiAgICAiYXBwLnVwZGF0ZS5iYXR0ZXJ5LXRocmVzaG9sZC5wbHVnZ2VkIjogMjUsCiAgICAiYXBwLnVwZGF0ZS5iYXR0ZXJ5LXRocmVzaG9sZC51bnBsdWdnZWQiOiAyNSwKICAgICJhcHAudXBkYXRlLmNoYW5uZWwiOiAiZGVmYXVsdCIsCiAgICAiYXBwLnVwZGF0ZS5pbnRlcnZhbCI6IDg2NDAwLAogICAgImFwcC51cGRhdGUudXJsIjogImh0dHBzOi8vYXVzNC5tb3ppbGxhLm9yZy91cGRhdGUvMy8lUFJPRFVDVCUvJVZFUlNJT04lLyVCVUlMRF9JRCUvJVBST0RVQ1RfREVWSUNFJS8lTE9DQUxFJS8lQ0hBTk5FTCUvJU9TX1ZFUlNJT04lLyVESVNUUklCVVRJT04lLyVESVNUUklCVVRJT05fVkVSU0lPTiUvdXBkYXRlLnhtbCIsCiAgICAiYXBwc2VhcmNoLnVybCI6ICJodHRwczovL2FwcHNlYXJjaC5zZXJ2aWNlcy5tb3ppbGxhLmNvbS9wYXJ0bmVycy8xLjAve3Jlc291cmNlfS8iLAogICAgImFwei5mb3JjZS1lbmFibGUiOiB0cnVlLAogICAgImFwei5vdmVyc2Nyb2xsLmVuYWJsZWQiOiB0cnVlLAogICAgImF1ZGlvLnZvbHVtZS5hbGFybSI6IDAsCiAgICAiYXVkaW8udm9sdW1lLmJ0X3NjbyI6IDE1LAogICAgImF1ZGlvLnZvbHVtZS5jZW1heHZvbCI6IDExLAogICAgImF1ZGlvLnZvbHVtZS5jb250ZW50IjogMCwKICAgICJhdWRpby52b2x1bWUuZHRtZiI6IDE1LAogICAgImF1ZGlvLnZvbHVtZS5tYXN0ZXIiOiA1LAogICAgImF1ZGlvLnZvbHVtZS5ub3RpZmljYXRpb24iOiAwLAogICAgImF1ZGlvLnZvbHVtZS50ZWxlcGhvbnkiOiA1LAogICAgImF1ZGlvLnZvbHVtZS50dHMiOiAxNSwKICAgICJibHVldG9vdGguZGVidWdnaW5nLmVuYWJsZWQiOiBmYWxzZSwKICAgICJibHVldG9vdGguZGV2aWNlLmNvbm5lY3RlZCI6IG51bGwsCiAgICAiYmx1ZXRvb3RoLmVuYWJsZWQiOiBmYWxzZSwKICAgICJibHVldG9vdGguc3VzcGVuZGVkIjogZmFsc2UsCiAgICAiY2FtZXJhLnJlY29yZGluZy5wcmVmZXJyZWRTaXplcyI6IFtdLAogICAgImNhbWVyYS5zb3VuZC5lbmFibGVkIjogdHJ1ZSwKICAgICJjbGVhci5yZW1vdGUtd2luZG93cy5kYXRhIjogZmFsc2UsCiAgICAiY21hcy5lbmFibGVkIjogWwogICAgICAgIHRydWUsCiAgICAgICAgdHJ1ZQogICAgXSwKICAgICJjb250aW51b3VzLXRyYW5zaXRpb24uZW5hYmxlZCI6IGZhbHNlLAogICAgImRlYnVnLmNvbnNvbGUuZW5hYmxlZCI6IHRydWUsCiAgICAiZGVidWcuZnBzLmVuYWJsZWQiOiBmYWxzZSwKICAgICJkZWJ1Zy5nYWlhLmVuYWJsZWQiOiBmYWxzZSwKICAgICJkZWJ1Zy5sb2ctYW5pbWF0aW9ucy5lbmFibGVkIjogZmFsc2UsCiAgICAiZGVidWcub29wLmRpc2FibGVkIjogZmFsc2UsCiAgICAiZGVidWcucGFpbnQtZmxhc2hpbmcuZW5hYmxlZCI6IGZhbHNlLAogICAgImRlYnVnLnBlZm9ybWFuY2VkYXRhLnNoYXJlZCI6IGZhbHNlLAogICAgImRlYnVnLnBlcmZvcm1hbmNlX2RhdGEuc2hhcmVkIjogZmFsc2UsCiAgICAiZGVidWcudHRsLmVuYWJsZWQiOiBmYWxzZSwKICAgICJkZWJ1Z2dlci5yZW1vdGUtbW9kZSI6ICJhZGItb25seSIsCiAgICAiZGV2ZWxvcGVyLm1lbnUuZW5hYmxlZCI6IHRydWUsCiAgICAiZGV2aWNlLnN0b3JhZ2Uud3JpdGFibGUubmFtZSI6ICJzZGNhcmQiLAogICAgImRldmljZWluZm8uYnVpbGRfbnVtYmVyIjogImVuZy5jbHRibGQuMjAxNTA2MTQuMTk1NTMyIiwKICAgICJkZXZpY2VpbmZvLmZpcm13YXJlX3JldmlzaW9uIjogIiIsCiAgICAiZGV2aWNlaW5mby5oYXJkd2FyZSI6ICJxY29tIiwKICAgICJkZXZpY2VpbmZvLm1hYyI6ICIiLAogICAgImRldmljZWluZm8ub3MiOiAiMi4xLjAuMC1wcmVyZWxlYXNlIiwKICAgICJkZXZpY2VpbmZvLnBsYXRmb3JtX2J1aWxkX2lkIjogIjIwMTUwNjE0MTYxMjA1IiwKICAgICJkZXZpY2VpbmZvLnBsYXRmb3JtX3ZlcnNpb24iOiAiMzQuMCIsCiAgICAiZGV2aWNlaW5mby5wcmV2aW91c19vcyI6ICIyLjEuMC4wLXByZXJlbGVhc2UiLAogICAgImRldmljZWluZm8ucHJvZHVjdF9tb2RlbCI6ICJmbGFtZSIsCiAgICAiZGV2aWNlaW5mby5zb2Z0d2FyZSI6ICJCb290MkdlY2tvIDIuMS4wLjAtcHJlcmVsZWFzZSIsCiAgICAiZGV2dG9vbHMuZXZlbnRsb29wbGFnLnRocmVzaG9sZCI6IDEwMCwKICAgICJkZXZ0b29scy5vdmVybGF5IjogZmFsc2UsCiAgICAiZGV2dG9vbHMub3ZlcmxheS5zeXN0ZW0iOiBmYWxzZSwKICAgICJkZXZ0b29scy5yZW1vdGUud2lmaS5lbmFibGVkIjogZmFsc2UsCiAgICAiZGV2dG9vbHMucmVtb3RlLndpZmkudmlzaWJsZSI6IGZhbHNlLAogICAgImRpYWxlci5yaW5ndG9uZSI6IHsKICAgICAgICAic2l6ZSI6IDEyMjYwOCwKICAgICAgICAic2xpY2UiOiBudWxsLAogICAgICAgICJ0eXBlIjogImF1ZGlvL29nZyIKICAgIH0sCiAgICAiZGlhbGVyLnJpbmd0b25lLmRlZmF1bHQuaWQiOiAiYnVpbHRpbjpyaW5ndG9uZS9yaW5nZXJfZmlyZWZveCIsCiAgICAiZGlhbGVyLnJpbmd0b25lLmlkIjogImJ1aWx0aW46cmluZ3RvbmUvcmluZ2VyX2ZpcmVmb3giLAogICAgImRpYWxlci5yaW5ndG9uZS5uYW1lIjogewogICAgICAgICJsMTBuSUQiOiAicmluZ2VyX2ZpcmVmb3gyIgogICAgfSwKICAgICJkb20ubW1zLm9wZXJhdG9yU2l6ZUxpbWl0YXRpb24iOiAzMDcyMDAsCiAgICAiZG9tLm1vekFwcHMuc2lnbmVkX2FwcHNfaW5zdGFsbGFibGVfZnJvbSI6ICJodHRwczovL21hcmtldHBsYWNlLmZpcmVmb3guY29tLGh0dHBzOi8vbWFya2V0cGxhY2UuYWxsaXpvbS5vcmciLAogICAgImVkZ2VzZ2VzdHVyZS5lbmFibGVkIjogdHJ1ZSwKICAgICJmZWVkYmFjay51cmwiOiAiaHR0cHM6Ly9pbnB1dC5hbGxpem9tLm9yZy9hcGkvdjEvZmVlZGJhY2svIiwKICAgICJmaW5kbXlkZXZpY2UudWkuZW5hYmxlZCI6IHRydWUsCiAgICAiZnR1Lm1hbmlmZXN0VVJMIjogImFwcDovL2Z0dS5nYWlhbW9iaWxlLm9yZy9tYW5pZmVzdC53ZWJhcHAiLAogICAgImZ0dS5waW5nVVJMIjogImh0dHBzOi8vZnhvcy50ZWxlbWV0cnkubW96aWxsYS5vcmcvc3VibWl0L3RlbGVtZXRyeSIsCiAgICAiZ2FpYS5zeXN0ZW0uY2hlY2tGb3JVcGRhdGVzIjogZmFsc2UsCiAgICAiZ2FpYS51aS5oaWdobGlnaHQiOiAiI2IyZjJmZiIsCiAgICAiZ2FpYS51aS5pbmZvYmFja2dyb3VuZCI6ICIjMzQzZTQwIiwKICAgICJnYWlhLnVpLmluZm90ZXh0IjogIiM2ODY4NjgiLAogICAgImdhaWEudWkubWVudSI6ICIjZjk3YzE3IiwKICAgICJnYWlhLnVpLm1lbnV0ZXh0IjogIiNmZmZmZmYiLAogICAgImdhaWEudWkud2luZG93IjogIiNmZmZmZmYiLAogICAgImdhaWEudWkud2luZG93dGV4dCI6ICIjMDAwMDAwIiwKICAgICJnZWNrby51cGRhdGVTdGF0dXMiOiAibm8tdXBkYXRlcyIsCiAgICAiZ2VvbG9jYXRpb24uZGVidWdnaW5nLmVuYWJsZWQiOiBmYWxzZSwKICAgICJnZW9sb2NhdGlvbi5lbmFibGVkIjogdHJ1ZSwKICAgICJnZW9sb2NhdGlvbi5zdXNwZW5kZWQiOiBmYWxzZSwKICAgICJob21lZ2VzdHVyZS5lbmFibGVkIjogZmFsc2UsCiAgICAiaG9tZXNjcmVlbi5tYW5pZmVzdFVSTCI6ICJhcHA6Ly92ZXJ0aWNhbGhvbWUuZ2FpYW1vYmlsZS5vcmcvbWFuaWZlc3Qud2ViYXBwIiwKICAgICJodWQuYXBwbWVtb3J5IjogZmFsc2UsCiAgICAiaHVkLmRvbSI6IGZhbHNlLAogICAgImh1ZC5lcnJvcnMiOiB0cnVlLAogICAgImh1ZC5qYW5rIjogZmFsc2UsCiAgICAiaHVkLmpzb2JqZWN0cyI6IGZhbHNlLAogICAgImh1ZC5qc290aGVyIjogZmFsc2UsCiAgICAiaHVkLmpzc3RyaW5ncyI6IGZhbHNlLAogICAgImh1ZC5sb2dnaW5nIjogdHJ1ZSwKICAgICJodWQub3RoZXIiOiBmYWxzZSwKICAgICJodWQucmVmbG93cyI6IGZhbHNlLAogICAgImh1ZC5zZWN1cml0eSI6IHRydWUsCiAgICAiaHVkLnN0eWxlIjogZmFsc2UsCiAgICAiaHVkLnVzcyI6IHRydWUsCiAgICAiaHVkLndhcm5pbmdzIjogdHJ1ZSwKICAgICJpY2MuYXBwbGljYXRpb25zIjogIntcIjFcIjp7XCJpY2NJZFwiOlwiODk4ODY5MjAwMzEwMzE0NTIzMDFcIixcImVudHJpZXNcIjp7XCJ0aXRsZVwiOlwiXHU0ZTJkXHU4M2VmXHU5NmZiXHU0ZmUxXHU1MzQwXCIsXCJpdGVtc1wiOlt7XCJpZGVudGlmaWVyXCI6MSxcInRleHRcIjpcImVtb21lXHU3NDA2XHU4Y2ExXCJ9LHtcImlkZW50aWZpZXJcIjoyLFwidGV4dFwiOlwiZW1vbWVcdTUyYTBcdTUwM2NcIn1dLFwicHJlc2VudGF0aW9uVHlwZVwiOjB9fX0iLAogICAgImljYy5kYXRhIjogbnVsbCwKICAgICJpY2MuZGlzcGxheVRleHRUaW1lb3V0IjogNDAwMDAsCiAgICAiaWNjLmdvQmFja1RpbWVvdXQiOiA0MDAwLAogICAgImljYy5pbnB1dFRleHRUaW1lb3V0IjogNDAwMDAsCiAgICAiaWNjLnNlbGVjdFRpbWVvdXQiOiAxNTAwMDAsCiAgICAiaWNjLnRvbmVEZWZhdWx0VGltZW91dCI6IDUwMDAsCiAgICAiaWRlbnRpdHkuZnhhY2NvdW50cy5yZXNldC1wYXNzd29yZC51cmwiOiAiaHR0cHM6Ly9hY2NvdW50cy5maXJlZm94LmNvbS9yZXNldF9wYXNzd29yZCIsCiAgICAiaW4tYXBwLXNoZWV0LmVuYWJsZWQiOiBmYWxzZSwKICAgICJrZXlib2FyZC4zcmQtcGFydHktYXBwLmVuYWJsZWQiOiB0cnVlLAogICAgImtleWJvYXJkLmF1dG9jb3JyZWN0IjogZmFsc2UsCiAgICAia2V5Ym9hcmQuY2xpY2tzb3VuZCI6IGZhbHNlLAogICAgImtleWJvYXJkLmN1cnJlbnQiOiBudWxsLAogICAgImtleWJvYXJkLmRlZmF1bHQtbGF5b3V0cyI6IHsKICAgICAgICAiYXBwOi8va2V5Ym9hcmQuZ2FpYW1vYmlsZS5vcmcvbWFuaWZlc3Qud2ViYXBwIjogewogICAgICAgICAgICAiZW4iOiB0cnVlLAogICAgICAgICAgICAibnVtYmVyIjogdHJ1ZQogICAgICAgIH0KICAgIH0sCiAgICAia2V5Ym9hcmQuZW5hYmxlZC1sYXlvdXRzIjogewogICAgICAgICJhcHA6Ly9rZXlib2FyZC5nYWlhbW9iaWxlLm9yZy9tYW5pZmVzdC53ZWJhcHAiOiB7CiAgICAgICAgICAgICJlbiI6IHRydWUsCiAgICAgICAgICAgICJudW1iZXIiOiB0cnVlCiAgICAgICAgfQogICAgfSwKICAgICJrZXlib2FyZC5mdHUuZW5hYmxlZCI6IGZhbHNlLAogICAgImtleWJvYXJkLmxhdW5jaC1vbi1ib290IjogdHJ1ZSwKICAgICJrZXlib2FyZC52aWJyYXRpb24iOiB0cnVlLAogICAgImtleWJvYXJkLndvcmRzdWdnZXN0aW9uIjogdHJ1ZSwKICAgICJsYW5ndWFnZS5jdXJyZW50IjogImVuLVVTIiwKICAgICJsYXllcnMuY29tcG9zZXIyZC5lbmFibGVkIjogdHJ1ZSwKICAgICJsYXllcnMuZHJhdy1ib3JkZXJzIjogZmFsc2UsCiAgICAibGF5ZXJzLmR1bXAiOiBmYWxzZSwKICAgICJsYXllcnMuZWZmZWN0LmNvbnRyYXN0IjogIjAuMCIsCiAgICAibGF5ZXJzLmVmZmVjdC5ncmF5c2NhbGUiOiBmYWxzZSwKICAgICJsYXllcnMuZWZmZWN0LmludmVydCI6IGZhbHNlLAogICAgImxheWVycy5lbmFibGUtdGlsZXMiOiB0cnVlLAogICAgImxheWVycy5sb3ctb3BhY2l0eSI6IHRydWUsCiAgICAibGF5ZXJzLmxvdy1wcmVjaXNpb24iOiB0cnVlLAogICAgImxheWVycy5zaW1wbGUtdGlsZXMiOiBmYWxzZSwKICAgICJsb2NhbGUuaG91cjEyIjogdHJ1ZSwKICAgICJsb2Nrc2NyZWVuLmVuYWJsZWQiOiB0cnVlLAogICAgImxvY2tzY3JlZW4ubG9ja2VkIjogZmFsc2UsCiAgICAibG9ja3NjcmVlbi5ub3RpZmljYXRpb25zLXByZXZpZXcuZW5hYmxlZCI6IHRydWUsCiAgICAibG9ja3NjcmVlbi5wYXNzY29kZS1sb2NrLmNvZGUiOiAiMDAwMCIsCiAgICAibG9ja3NjcmVlbi5wYXNzY29kZS1sb2NrLmVuYWJsZWQiOiBmYWxzZSwKICAgICJsb2Nrc2NyZWVuLnBhc3Njb2RlLWxvY2sudGltZW91dCI6IDAsCiAgICAibG9ja3NjcmVlbi51bmxvY2stc291bmQuZW5hYmxlZCI6IGZhbHNlLAogICAgIm1lZGlhLnJpbmd0b25lIjogewogICAgICAgICJzaXplIjogMTI2MTIsCiAgICAgICAgInNsaWNlIjogbnVsbCwKICAgICAgICAidHlwZSI6ICJhdWRpby9vZ2ciCiAgICB9LAogICAgIm1lc3NhZ2Uuc2VudC1zb3VuZC5lbmFibGVkIjogdHJ1ZSwKICAgICJuZmMuZGVidWdnaW5nLmVuYWJsZWQiOiBmYWxzZSwKICAgICJuZmMuZW5hYmxlZCI6IGZhbHNlLAogICAgIm5mYy5zdXNwZW5kZWQiOiBmYWxzZSwKICAgICJub3RpZmljYXRpb24ucmluZ3RvbmUiOiB7CiAgICAgICAgInNpemUiOiAxMjYxMiwKICAgICAgICAic2xpY2UiOiBudWxsLAogICAgICAgICJ0eXBlIjogImF1ZGlvL29nZyIKICAgIH0sCiAgICAibm90aWZpY2F0aW9uLnJpbmd0b25lLmRlZmF1bHQuaWQiOiAiYnVpbHRpbjphbGVydHRvbmUvbm90aWZpZXJfZmlyZWZveCIsCiAgICAibm90aWZpY2F0aW9uLnJpbmd0b25lLmlkIjogImJ1aWx0aW46YWxlcnR0b25lL25vdGlmaWVyX2ZpcmVmb3giLAogICAgIm5vdGlmaWNhdGlvbi5yaW5ndG9uZS5uYW1lIjogewogICAgICAgICJsMTBuSUQiOiAibm90aWZpZXJfZmlyZWZveDIiCiAgICB9LAogICAgIm5vdGlmaWNhdGlvbnMucmVzZW5kIjogdHJ1ZSwKICAgICJvcGVyYXRvcnZhcmlhbnQuMi4xLjAuMC1wcmVyZWxlYXNlLklDQzAuY3VzdG9taXphdGlvbiI6IHRydWUsCiAgICAib3BlcmF0b3J2YXJpYW50LmljY0lkIjogWwogICAgICAgICI4OTg4NjkyMDAzMTAzMTQ1MjMwMSIsCiAgICAgICAgbnVsbAogICAgXSwKICAgICJvcGVyYXRvcnZhcmlhbnQubWNjIjogWwogICAgICAgICI0NjYiLAogICAgICAgICIwMDAiCiAgICBdLAogICAgIm9wZXJhdG9ydmFyaWFudC5tbmMiOiBbCiAgICAgICAgIjkyIiwKICAgICAgICAiMDAiCiAgICBdLAogICAgInBob25lLmR0bWYudHlwZSI6ICJsb25nIiwKICAgICJwaG9uZS5yaW5nLmtleXBhZCI6IHRydWUsCiAgICAicG93ZXJzYXZlLmVuYWJsZWQiOiBmYWxzZSwKICAgICJwb3dlcnNhdmUudGhyZXNob2xkIjogLTEsCiAgICAicHJpdmFjeS5kb25vdHRyYWNraGVhZGVyLmVuYWJsZWQiOiBmYWxzZSwKICAgICJwcml2YWN5LmRvbm90dHJhY2toZWFkZXIudmFsdWUiOiAiLTEiLAogICAgInByaXZhdGUuYnJvYWRjYXN0LmF0dGVudGlvbl9zY3JlZW5fb3BlbmluZyI6IGZhbHNlLAogICAgInJpbC5jYWxsZXJJZCI6ICJDTElSX0RFRkFVTFQiLAogICAgInJpbC5jYWxsd2FpdGluZy5lbmFibGVkIjogbnVsbCwKICAgICJyaWwuY2VsbGJyb2FkY2FzdC5kaXNhYmxlZCI6IFsKICAgICAgICBmYWxzZSwKICAgICAgICBmYWxzZQogICAgXSwKICAgICJyaWwuY2VsbGJyb2FkY2FzdC5zZWFyY2hsaXN0IjogWwogICAgICAgICIiLAogICAgICAgICIiCiAgICBdLAogICAgInJpbC5jZi5lbmFibGVkIjogWwogICAgICAgIGZhbHNlLAogICAgICAgIGZhbHNlCiAgICBdLAogICAgInJpbC5kYXRhLmFwbiI6ICJpbnRlcm5ldCIsCiAgICAicmlsLmRhdGEuYXBuU2V0dGluZ3MiOiBbCiAgICAgICAgWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiYXBuIjogImludGVybmV0IiwKICAgICAgICAgICAgICAgICJjYXJyaWVyIjogIlx1NGUyZFx1ODNlZlx1OTZmYlx1NGZlMShDaHVuZ2h3YSkgKEludGVybmV0KSIsCiAgICAgICAgICAgICAgICAidHlwZXMiOiBbCiAgICAgICAgICAgICAgICAgICAgImRlZmF1bHQiCiAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJhcG4iOiAiZW1vbWUiLAogICAgICAgICAgICAgICAgImNhcnJpZXIiOiAiXHU0ZTJkXHU4M2VmXHU5NmZiXHU0ZmUxKENodW5naHdhKSAoTU1TKSIsCiAgICAgICAgICAgICAgICAibW1zYyI6ICJodHRwOi8vbW1zLmVtb21lLm5ldDo4MDAyIiwKICAgICAgICAgICAgICAgICJtbXNwb3J0IjogIjgwODAiLAogICAgICAgICAgICAgICAgIm1tc3Byb3h5IjogIjEwLjEuMS4xIiwKICAgICAgICAgICAgICAgICJ0eXBlcyI6IFsKICAgICAgICAgICAgICAgICAgICAibW1zIgogICAgICAgICAgICAgICAgXQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiYXBuIjogImludGVybmV0IiwKICAgICAgICAgICAgICAgICJjYXJyaWVyIjogIlx1NGUyZFx1ODNlZlx1OTZmYlx1NGZlMShDaHVuZ2h3YSkgKEludGVybmV0KSIsCiAgICAgICAgICAgICAgICAidHlwZXMiOiBbCiAgICAgICAgICAgICAgICAgICAgInN1cGwiCiAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgIFtdCiAgICBdLAogICAgInJpbC5kYXRhLmF1dGh0eXBlIjogIm5vdERlZmluZWQiLAogICAgInJpbC5kYXRhLmNhcnJpZXIiOiAiXHU0ZTJkXHU4M2VmXHU5NmZiXHU0ZmUxKENodW5naHdhKSAoSW50ZXJuZXQpIiwKICAgICJyaWwuZGF0YS5jcC5hcG5zIjogIiIsCiAgICAicmlsLmRhdGEuZGVmYXVsdC5hcG5TZXR0aW5ncyI6IFsKICAgICAgICBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJhcG4iOiAiaW50ZXJuZXQiLAogICAgICAgICAgICAgICAgImNhcnJpZXIiOiAiXHU0ZTJkXHU4M2VmXHU5NmZiXHU0ZmUxKENodW5naHdhKSAoSW50ZXJuZXQpIiwKICAgICAgICAgICAgICAgICJ0eXBlcyI6IFsKICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdCIKICAgICAgICAgICAgICAgIF0KICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImFwbiI6ICJlbW9tZSIsCiAgICAgICAgICAgICAgICAiY2FycmllciI6ICJcdTRlMmRcdTgzZWZcdTk2ZmJcdTRmZTEoQ2h1bmdod2EpIChNTVMpIiwKICAgICAgICAgICAgICAgICJtbXNjIjogImh0dHA6Ly9tbXMuZW1vbWUubmV0OjgwMDIiLAogICAgICAgICAgICAgICAgIm1tc3BvcnQiOiAiODA4MCIsCiAgICAgICAgICAgICAgICAibW1zcHJveHkiOiAiMTAuMS4xLjEiLAogICAgICAgICAgICAgICAgInR5cGVzIjogWwogICAgICAgICAgICAgICAgICAgICJtbXMiCiAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJhcG4iOiAiaW50ZXJuZXQiLAogICAgICAgICAgICAgICAgImNhcnJpZXIiOiAiXHU0ZTJkXHU4M2VmXHU5NmZiXHU0ZmUxKENodW5naHdhKSAoSW50ZXJuZXQpIiwKICAgICAgICAgICAgICAgICJ0eXBlcyI6IFsKICAgICAgICAgICAgICAgICAgICAic3VwbCIKICAgICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgW10KICAgIF0sCiAgICAicmlsLmRhdGEuZGVmYXVsdC5hcG5zIjogewogICAgICAgICI0NjYiOiB7CiAgICAgICAgICAgICI5MiI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiYXBuIjogImludGVybmV0IiwKICAgICAgICAgICAgICAgICAgICAiY2FycmllciI6ICJcdTRlMmRcdTgzZWZcdTk2ZmJcdTRmZTEoQ2h1bmdod2EpIChJbnRlcm5ldCkiLAogICAgICAgICAgICAgICAgICAgICJ0eXBlcyI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHQiLAogICAgICAgICAgICAgICAgICAgICAgICAic3VwbCIKICAgICAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJhcG4iOiAiZW1vbWUiLAogICAgICAgICAgICAgICAgICAgICJjYXJyaWVyIjogIlx1NGUyZFx1ODNlZlx1OTZmYlx1NGZlMShDaHVuZ2h3YSkgKE1NUykiLAogICAgICAgICAgICAgICAgICAgICJtbXNjIjogImh0dHA6Ly9tbXMuZW1vbWUubmV0OjgwMDIiLAogICAgICAgICAgICAgICAgICAgICJtbXNwb3J0IjogIjgwODAiLAogICAgICAgICAgICAgICAgICAgICJtbXNwcm94eSI6ICIxMC4xLjEuMSIsCiAgICAgICAgICAgICAgICAgICAgInR5cGVzIjogWwogICAgICAgICAgICAgICAgICAgICAgICAibW1zIgogICAgICAgICAgICAgICAgICAgIF0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgXQogICAgICAgIH0KICAgIH0sCiAgICAicmlsLmRhdGEuZGVmYXVsdFNlcnZpY2VJZCI6IDAsCiAgICAicmlsLmRhdGEuZW5hYmxlZCI6IGZhbHNlLAogICAgInJpbC5kYXRhLmh0dHBQcm94eUhvc3QiOiAiIiwKICAgICJyaWwuZGF0YS5odHRwUHJveHlQb3J0IjogIiIsCiAgICAicmlsLmRhdGEubW1zYyI6ICIiLAogICAgInJpbC5kYXRhLm1tc3BvcnQiOiAwLAogICAgInJpbC5kYXRhLm1tc3Byb3h5IjogIiIsCiAgICAicmlsLmRhdGEucGFzc3dkIjogIiIsCiAgICAicmlsLmRhdGEucm9hbWluZ19lbmFibGVkIjogZmFsc2UsCiAgICAicmlsLmRhdGEuc3VzcGVuZGVkIjogZmFsc2UsCiAgICAicmlsLmRhdGEudXNlciI6ICIiLAogICAgInJpbC5kdW4uYXBuIjogIiIsCiAgICAicmlsLmR1bi5hdXRodHlwZSI6ICJub3REZWZpbmVkIiwKICAgICJyaWwuZHVuLmNhcnJpZXIiOiAiIiwKICAgICJyaWwuZHVuLmh0dHBQcm94eUhvc3QiOiAiIiwKICAgICJyaWwuZHVuLmh0dHBQcm94eVBvcnQiOiAiIiwKICAgICJyaWwuZHVuLnBhc3N3ZCI6ICIiLAogICAgInJpbC5kdW4udXNlciI6ICIiLAogICAgInJpbC5pY2NJbmZvLm1iZG4iOiBbCiAgICAgICAgIiIsCiAgICAgICAgIiIKICAgIF0sCiAgICAicmlsLmltcy5hcG4iOiAiIiwKICAgICJyaWwuaW1zLmF1dGh0eXBlIjogIm5vdERlZmluZWQiLAogICAgInJpbC5pbXMuY2FycmllciI6ICIiLAogICAgInJpbC5pbXMuaHR0cFByb3h5SG9zdCI6ICIiLAogICAgInJpbC5pbXMuaHR0cFByb3h5UG9ydCI6ICIiLAogICAgInJpbC5pbXMucGFzc3dkIjogIiIsCiAgICAicmlsLmltcy51c2VyIjogIiIsCiAgICAicmlsLm1tcy5hcG4iOiAiZW1vbWUiLAogICAgInJpbC5tbXMuYXV0aHR5cGUiOiAibm90RGVmaW5lZCIsCiAgICAicmlsLm1tcy5jYXJyaWVyIjogIlx1NGUyZFx1ODNlZlx1OTZmYlx1NGZlMShDaHVuZ2h3YSkgKE1NUykiLAogICAgInJpbC5tbXMuZGVmYXVsdFNlcnZpY2VJZCI6IDAsCiAgICAicmlsLm1tcy5odHRwUHJveHlIb3N0IjogIiIsCiAgICAicmlsLm1tcy5odHRwUHJveHlQb3J0IjogIiIsCiAgICAicmlsLm1tcy5tbXNjIjogImh0dHA6Ly9tbXMuZW1vbWUubmV0OjgwMDIiLAogICAgInJpbC5tbXMubW1zcG9ydCI6ICI4MDgwIiwKICAgICJyaWwubW1zLm1tc3Byb3h5IjogIjEwLjEuMS4xIiwKICAgICJyaWwubW1zLnBhc3N3ZCI6ICIiLAogICAgInJpbC5tbXMucmVxdWVzdFJlYWRSZXBvcnQuZW5hYmxlZCI6IGZhbHNlLAogICAgInJpbC5tbXMucmV0cmlldmFsX21vZGUiOiAiYXV0b21hdGljLWhvbWUiLAogICAgInJpbC5tbXMudXNlciI6ICIiLAogICAgInJpbC5yYWRpby5kaXNhYmxlZCI6IGZhbHNlLAogICAgInJpbC5yYWRpby5wcmVmZXJyZWROZXR3b3JrVHlwZSI6IFsKICAgICAgICAid2NkbWEvZ3NtIiwKICAgICAgICAiZ3NtIgogICAgXSwKICAgICJyaWwuc21zLmRlZmF1bHRTZXJ2aWNlSWQiOiAwLAogICAgInJpbC5zbXMucmVxdWVzdFN0YXR1c1JlcG9ydC5lbmFibGVkIjogZmFsc2UsCiAgICAicmlsLnNtcy5zdHJpY3Q3Qml0RW5jb2RpbmcuZW5hYmxlZCI6IGZhbHNlLAogICAgInJpbC5zdXBsLmFwbiI6ICJpbnRlcm5ldCIsCiAgICAicmlsLnN1cGwuYXV0aHR5cGUiOiAibm90RGVmaW5lZCIsCiAgICAicmlsLnN1cGwuY2FycmllciI6ICJcdTRlMmRcdTgzZWZcdTk2ZmJcdTRmZTEoQ2h1bmdod2EpIChJbnRlcm5ldCkiLAogICAgInJpbC5zdXBsLmh0dHBQcm94eUhvc3QiOiAiIiwKICAgICJyaWwuc3VwbC5odHRwUHJveHlQb3J0IjogIiIsCiAgICAicmlsLnN1cGwucGFzc3dkIjogIiIsCiAgICAicmlsLnN1cGwudXNlciI6ICIiLAogICAgInJpbC50ZWxlcGhvbnkuZGVmYXVsdFNlcnZpY2VJZCI6IDAsCiAgICAicmlsLnZvaWNlbWFpbC5kZWZhdWx0U2VydmljZUlkIjogMCwKICAgICJyb2NrZXRiYXIubmV3VGFiQXBwVVJMIjogImFwcDovL3NlYXJjaC5nYWlhbW9iaWxlLm9yZy9pbmRleC5odG1sIiwKICAgICJyb2NrZXRiYXIuc2VhcmNoQXBwVVJMIjogImFwcDovL3NlYXJjaC5nYWlhbW9iaWxlLm9yZy9pbmRleC5odG1sIiwKICAgICJzY3JlZW4uYXV0b21hdGljLWJyaWdodG5lc3MiOiBmYWxzZSwKICAgICJzY3JlZW4uYnJpZ2h0bmVzcyI6IDEsCiAgICAic2NyZWVuLnRpbWVvdXQiOiAwLAogICAgInNlYXJjaC5pY29uVXJsIjogewogICAgICAgICJzaXplIjogMTE3MywKICAgICAgICAic2xpY2UiOiBudWxsLAogICAgICAgICJ0eXBlIjogImltYWdlL3gtaWNvbiIKICAgIH0sCiAgICAic2VhcmNoLnN1Z2dlc3Rpb25zLmVuYWJsZWQiOiB0cnVlLAogICAgInNlYXJjaC5zdWdnZXN0aW9uc1VybFRlbXBsYXRlIjogImh0dHBzOi8vd3d3Lmdvb2dsZS5jb20vY29tcGxldGUvc2VhcmNoP2NsaWVudD1maXJlZm94JnE9e3NlYXJjaFRlcm1zfSIsCiAgICAic2VhcmNoLnVybFRlbXBsYXRlIjogImh0dHBzOi8vd3d3Lmdvb2dsZS5jb20vc2VhcmNoP3E9e3NlYXJjaFRlcm1zfSIsCiAgICAic29mdHdhcmUtYnV0dG9uLmVuYWJsZWQiOiBmYWxzZSwKICAgICJzdGF0dXNiYXIubmV0d29yay1hY3Rpdml0eS5kaXNhYmxlZCI6IGZhbHNlLAogICAgInN0YXR1c2Jhci5zaG93LWFtLXBtIjogZmFsc2UsCiAgICAic3VwcG9ydC5jYWxsc3VwcG9ydDEuaHJlZiI6ICIiLAogICAgInN1cHBvcnQuY2FsbHN1cHBvcnQxLnRpdGxlIjogIiIsCiAgICAic3VwcG9ydC5jYWxsc3VwcG9ydDIuaHJlZiI6ICIiLAogICAgInN1cHBvcnQuY2FsbHN1cHBvcnQyLnRpdGxlIjogIiIsCiAgICAic3VwcG9ydC5vbmxpbmVzdXBwb3J0LmhyZWYiOiAiIiwKICAgICJzdXBwb3J0Lm9ubGluZXN1cHBvcnQudGl0bGUiOiAiIiwKICAgICJ0ZWxlcGhvbnkuc3BlYWtlci5lbmFibGVkIjogZmFsc2UsCiAgICAidGV0aGVyaW5nLnVzYi5jb25uZWN0ZWRDbGllbnRzIjogMCwKICAgICJ0ZXRoZXJpbmcudXNiLmRoY3BzZXJ2ZXIuZW5kaXAiOiAiMTkyLjE2OC4wLjMwIiwKICAgICJ0ZXRoZXJpbmcudXNiLmRoY3BzZXJ2ZXIuc3RhcnRpcCI6ICIxOTIuMTY4LjAuMTAiLAogICAgInRldGhlcmluZy51c2IuZW5hYmxlZCI6IGZhbHNlLAogICAgInRldGhlcmluZy51c2IuaXAiOiAiMTkyLjE2OC4wLjEiLAogICAgInRldGhlcmluZy51c2IucHJlZml4IjogIjI0IiwKICAgICJ0ZXRoZXJpbmcud2lmaS5jb25uZWN0ZWRDbGllbnRzIjogMCwKICAgICJ0ZXRoZXJpbmcud2lmaS5kaGNwc2VydmVyLmVuZGlwIjogIjE5Mi4xNjguMS4zMCIsCiAgICAidGV0aGVyaW5nLndpZmkuZGhjcHNlcnZlci5zdGFydGlwIjogIjE5Mi4xNjguMS4xMCIsCiAgICAidGV0aGVyaW5nLndpZmkuZW5hYmxlZCI6IGZhbHNlLAogICAgInRldGhlcmluZy53aWZpLmlwIjogIjE5Mi4xNjguMS4xIiwKICAgICJ0ZXRoZXJpbmcud2lmaS5wcmVmaXgiOiAiMjQiLAogICAgInRldGhlcmluZy53aWZpLnNlY3VyaXR5LnBhc3N3b3JkIjogIiIsCiAgICAidGV0aGVyaW5nLndpZmkuc2VjdXJpdHkudHlwZSI6ICJ3cGEyLXBzayIsCiAgICAidGV0aGVyaW5nLndpZmkuc3NpZCI6ICJGaXJlZm94SG90c3BvdCIsCiAgICAidGhlbWUuc2VsZWN0ZWQiOiAiYXBwOi8vZGVmYXVsdF90aGVtZS5nYWlhbW9iaWxlLm9yZy9tYW5pZmVzdC53ZWJhcHAiLAogICAgInRpbWUuY2xvY2suYXV0b21hdGljLXVwZGF0ZS5hdmFpbGFibGUiOiB0cnVlLAogICAgInRpbWUuY2xvY2suYXV0b21hdGljLXVwZGF0ZS5lbmFibGVkIjogdHJ1ZSwKICAgICJ0aW1lLnRpbWV6b25lIjogIlVUQyswODowMCIsCiAgICAidGltZS50aW1lem9uZS5hdXRvbWF0aWMtdXBkYXRlLmF2YWlsYWJsZSI6IHRydWUsCiAgICAidGltZS50aW1lem9uZS5hdXRvbWF0aWMtdXBkYXRlLmVuYWJsZWQiOiB0cnVlLAogICAgInVpLnRvdWNoLnJhZGl1cy5ib3R0b21tbSI6IDIsCiAgICAidWkudG91Y2gucmFkaXVzLmxlZnRtbSI6IDMsCiAgICAidWkudG91Y2gucmFkaXVzLnJpZ2h0bW0iOiAzLAogICAgInVpLnRvdWNoLnJhZGl1cy50b3BtbSI6IDUsCiAgICAidW1zLmVuYWJsZWQiOiBmYWxzZSwKICAgICJ1bXMubW9kZSI6IDAsCiAgICAidW1zLnN0YXR1cyI6IDAsCiAgICAidW1zLnZvbHVtZS5leHRlcm5hbC5lbmFibGVkIjogdHJ1ZSwKICAgICJ1bXMudm9sdW1lLmV4dHNkY2FyZC5lbmFibGVkIjogdHJ1ZSwKICAgICJ1bXMudm9sdW1lLnNkY2FyZC5lbmFibGVkIjogdHJ1ZSwKICAgICJ1bXMudm9sdW1lLnNkY2FyZDEuZW5hYmxlZCI6IHRydWUsCiAgICAidXNiLnRyYW5zZmVyIjogIjAiLAogICAgInZpYnJhdGlvbi5lbmFibGVkIjogdHJ1ZSwKICAgICJ2b2x1bWUuZXh0ZXJuYWwudW5yZWNvZ25pc2VkIjogZmFsc2UsCiAgICAid2FsbHBhcGVyLmltYWdlIjogewogICAgICAgICJzaXplIjogMjI0NTgwLAogICAgICAgICJzbGljZSI6IG51bGwsCiAgICAgICAgInR5cGUiOiAiaW1hZ2UvcG5nIgogICAgfSwKICAgICJ3YWxscGFwZXIuaW1hZ2UudmFsaWQiOiB0cnVlLAogICAgIndhcC5wdXNoLmVuYWJsZWQiOiB0cnVlLAogICAgIndpZmkuY29ubmVjdF92aWFfc2V0dGluZ3MiOiBmYWxzZSwKICAgICJ3aWZpLmRlYnVnZ2luZy5lbmFibGVkIjogdHJ1ZSwKICAgICJ3aWZpLmRpc2FibGVkX2J5X3dha2Vsb2NrIjogZmFsc2UsCiAgICAid2lmaS5lbmFibGVkIjogdHJ1ZSwKICAgICJ3aWZpLm5vdGlmaWNhdGlvbiI6IGZhbHNlLAogICAgIndpZmkuc2NyZWVuX29mZl90aW1lb3V0IjogNjAwMDAwLAogICAgIndpZmkuc3VzcGVuZGVkIjogZmFsc2UKfQ==" target="_blank">Settings</a> </td>
          <td class="debug">
            <div class="screenshot"><a href="#"><img src="data:image/png;base64,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"/></a></div>
            <div class="log">Traceback (most recent call last):<br/>  File "/var/lib/jenkins/JenkinsCI/B2G_Flame_2dot1_Kitkat/B2G_Gaia_2dot1/tests/python/gaia-ui-tests/.env/local/lib/python2.7/site-packages/marionette_client_mozilla_b2g34_v2_1-0.2-py2.7.egg/marionette/marionette_test.py", line 174, in run<br/>    testMethod()<br/>  File "/var/lib/jenkins/JenkinsCI/B2G_Flame_2dot1_Kitkat/B2G_Gaia_2dot1/tests/python/gaia-ui-tests/gaiatest/tests/functional/dialer/test_call_log_all_calls.py", line 71, in test_call_log_all_calls<br/>    self.wait_for_condition(lambda m: len(call_log.call_list) == 2)<br/>  File "/var/lib/jenkins/JenkinsCI/B2G_Flame_2dot1_Kitkat/B2G_Gaia_2dot1/tests/python/gaia-ui-tests/gaiatest/gaia_test.py", line 937, in wait_for_condition<br/>    Wait(self.marionette, timeout).until(method, message=message)<br/>  File "/var/lib/jenkins/JenkinsCI/B2G_Flame_2dot1_Kitkat/B2G_Gaia_2dot1/tests/python/gaia-ui-tests/.env/local/lib/python2.7/site-packages/marionette_client_mozilla_b2g34_v2_1-0.2-py2.7.egg/marionette/wait.py", line 143, in until<br/>    cause=last_exc)<br/><span class="error">TimeoutException: TimeoutException: Timed out after 30.2 seconds</span><br/></div></td></tr>
        <tr class="passed results-table-row">
          <td class="col-result">Passed</td>
          <td class="col-class">test_dialer_receive_call.TestReceiveCall</td>
          <td class="col-name">test_receive_call</td>
          <td class="col-duration">91.1</td>
          <td class="col-links"></td>
          <td class="debug"></td></tr>
        <tr class="passed results-table-row">
          <td class="col-result">Passed</td>
          <td class="col-class">test_dialer_receive_call_with_locked_screen.TestReceiveCallScreenLocked</td>
          <td class="col-name">test_receive_call_with_locked_screen</td>
          <td class="col-duration">101.4</td>
          <td class="col-links"></td>
          <td class="debug"></td></tr>
        <tr class="error results-table-row">
          <td class="col-result">Error</td>
          <td class="col-class">test_setup_basic_gmail.TestSetupGmail</td>
          <td class="col-name">test_setup_basic_gmail</td>
          <td class="col-duration">115.7</td>
          <td class="col-links"><a class="source" href="data:text/plain;charset=utf-8;base64,PCFET0NUWVBFIGh0bWw+CjxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiBsYW5nPSJlbiI+PGhlYWQ+CiAgPG1ldGEgY2hhcnNldD0idXRmLTgiIC8+CiAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPTMwMCwgaW5pdGlhbC1zY2FsZT0xIiAvPgogIDxtZXRhIGNvbnRlbnQ9IkxyZFRVVzlwc1VBTWJoNElhMDc0LUJQRVZtY3BCeEY2R3dmME1TZ1FYWnMiIG5hbWU9Imdvb2dsZS1zaXRlLXZlcmlmaWNhdGlvbiIgLz4KICA8dGl0bGU+U2lnbiBpbiAtIEdvb2dsZSBBY2NvdW50czwvdGl0bGU+CiAgPHN0eWxlPgogIEBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDMwMDsKICBzcmM6IGxvY2FsKCdPcGVuIFNhbnMgTGlnaHQnKSwgbG9jYWwoJ09wZW5TYW5zLUxpZ2h0JyksIHVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvb3BlbnNhbnMvdjEzL0RYSTFPUkhDcHNRbTNWcDZtWG9hVFhoQ1VPR3o3dllHaDY4MGxHaC11WE0ud29mZikgZm9ybWF0KCd3b2ZmJyk7Cn0KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNDAwOwogIHNyYzogbG9jYWwoJ09wZW4gU2FucycpLCBsb2NhbCgnT3BlblNhbnMnKSwgdXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9vcGVuc2Fucy92MTMvY0paS2VPdUJybjRrRVJ4cXRhVUgzVDhFMGk3S1puLUVQbnlvM0hadTdrdy53b2ZmKSBmb3JtYXQoJ3dvZmYnKTsKfQogIDwvc3R5bGU+CiAgPHN0eWxlPgogIGgxLCBoMiB7CiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDAuMXM7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZm9udGZpeDsKICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7CiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7CiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDA7CiAgfQogIEAtd2Via2l0LWtleWZyYW1lcyBmb250Zml4IHsKICBmcm9tIHsKICBvcGFjaXR5OiAxOwogIH0KICB0byB7CiAgb3BhY2l0eTogMTsKICB9CiAgfQogIDwvc3R5bGU+CjxzdHlsZT4KICBodG1sLCBib2R5IHsKICBmb250LWZhbWlseTogQXJpYWwsIHNhbnMtc2VyaWY7CiAgYmFja2dyb3VuZDogI2ZmZjsKICBtYXJnaW46IDA7CiAgcGFkZGluZzogMDsKICBib3JkZXI6IDA7CiAgcG9zaXRpb246IGFic29sdXRlOwogIGhlaWdodDogMTAwJTsKICBtaW4td2lkdGg6IDEwMCU7CiAgZm9udC1zaXplOiAxM3B4OwogIGNvbG9yOiAjNDA0MDQwOwogIGRpcmVjdGlvbjogbHRyOwogIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogbm9uZTsKICB9CiAgYnV0dG9uLAogIGlucHV0W3R5cGU9YnV0dG9uXSwKICBpbnB1dFt0eXBlPXN1Ym1pdF0gewogIGZvbnQtZmFtaWx5OiBBcmlhbCwgc2Fucy1zZXJpZjsKICBmb250LXNpemU6IDEzcHg7CiAgfQogIGEsCiAgYTpob3ZlciwKICBhOnZpc2l0ZWQgewogIGNvbG9yOiAjNDI3ZmVkOwogIGN1cnNvcjogcG9pbnRlcjsKICB0ZXh0LWRlY29yYXRpb246IG5vbmU7CiAgfQogIGE6aG92ZXIgewogIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOwogIH0KICBoMSB7CiAgZm9udC1zaXplOiAyMHB4OwogIGNvbG9yOiAjMjYyNjI2OwogIG1hcmdpbjogMCAwIDE1cHg7CiAgZm9udC13ZWlnaHQ6IG5vcm1hbDsKICB9CiAgaDIgewogIGZvbnQtc2l6ZTogMTRweDsKICBjb2xvcjogIzI2MjYyNjsKICBtYXJnaW46IDAgMCAxNXB4OwogIGZvbnQtd2VpZ2h0OiBib2xkOwogIH0KICBpbnB1dFt0eXBlPWVtYWlsXSwKICBpbnB1dFt0eXBlPW51bWJlcl0sCiAgaW5wdXRbdHlwZT1wYXNzd29yZF0sCiAgaW5wdXRbdHlwZT10ZWxdLAogIGlucHV0W3R5cGU9dGV4dF0sCiAgaW5wdXRbdHlwZT11cmxdIHsKICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7CiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOwogIGFwcGVhcmFuY2U6IG5vbmU7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIGhlaWdodDogMzZweDsKICBwYWRkaW5nOiAwIDhweDsKICBtYXJnaW46IDA7CiAgYmFja2dyb3VuZDogI2ZmZjsKICBib3JkZXI6IDFweCBzb2xpZCAjZDlkOWQ5OwogIGJvcmRlci10b3A6IDFweCBzb2xpZCAjYzBjMGMwOwogIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDsKICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAtbW96LWJvcmRlci1yYWRpdXM6IDFweDsKICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDFweDsKICBib3JkZXItcmFkaXVzOiAxcHg7CiAgZm9udC1zaXplOiAxNXB4OwogIGNvbG9yOiAjNDA0MDQwOwogIH0KICBpbnB1dFt0eXBlPWVtYWlsXTpob3ZlciwKICBpbnB1dFt0eXBlPW51bWJlcl06aG92ZXIsCiAgaW5wdXRbdHlwZT1wYXNzd29yZF06aG92ZXIsCiAgaW5wdXRbdHlwZT10ZWxdOmhvdmVyLAogIGlucHV0W3R5cGU9dGV4dF06aG92ZXIsCiAgaW5wdXRbdHlwZT11cmxdOmhvdmVyIHsKICBib3JkZXI6IDFweCBzb2xpZCAjYjliOWI5OwogIGJvcmRlci10b3A6IDFweCBzb2xpZCAjYTBhMGEwOwogIC1tb3otYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoMCwwLDAsMC4xKTsKICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKDAsMCwwLDAuMSk7CiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoMCwwLDAsMC4xKTsKICB9CiAgaW5wdXRbdHlwZT1lbWFpbF06Zm9jdXMsCiAgaW5wdXRbdHlwZT1udW1iZXJdOmZvY3VzLAogIGlucHV0W3R5cGU9cGFzc3dvcmRdOmZvY3VzLAogIGlucHV0W3R5cGU9dGVsXTpmb2N1cywKICBpbnB1dFt0eXBlPXRleHRdOmZvY3VzLAogIGlucHV0W3R5cGU9dXJsXTpmb2N1cyB7CiAgb3V0bGluZTogbm9uZTsKICBib3JkZXI6IDFweCBzb2xpZCAjNGQ5MGZlOwogIC1tb3otYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoMCwwLDAsMC4zKTsKICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKDAsMCwwLDAuMyk7CiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoMCwwLDAsMC4zKTsKICB9CiAgaW5wdXRbdHlwZT1jaGVja2JveF0sCiAgaW5wdXRbdHlwZT1yYWRpb10gewogIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgd2lkdGg6IDEzcHg7CiAgaGVpZ2h0OiAxM3B4OwogIG1hcmdpbjogMDsKICBjdXJzb3I6IHBvaW50ZXI7CiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTsKICBiYWNrZ3JvdW5kOiAjZmZmOwogIGJvcmRlcjogMXB4IHNvbGlkICNjNmM2YzY7CiAgLW1vei1ib3JkZXItcmFkaXVzOiAxcHg7CiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxcHg7CiAgYm9yZGVyLXJhZGl1czogMXB4OwogIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDsKICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgfQogIGlucHV0W3R5cGU9Y2hlY2tib3hdOmFjdGl2ZSwKICBpbnB1dFt0eXBlPXJhZGlvXTphY3RpdmUgewogIGJhY2tncm91bmQ6ICNlYmViZWI7CiAgfQogIGlucHV0W3R5cGU9Y2hlY2tib3hdOmhvdmVyIHsKICBib3JkZXItY29sb3I6ICNjNmM2YzY7CiAgLW1vei1ib3gtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgwLDAsMCwwLjEpOwogIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoMCwwLDAsMC4xKTsKICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgwLDAsMCwwLjEpOwogIH0KICBpbnB1dFt0eXBlPXJhZGlvXSB7CiAgLW1vei1ib3JkZXItcmFkaXVzOiAxZW07CiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxZW07CiAgYm9yZGVyLXJhZGl1czogMWVtOwogIHdpZHRoOiAxNXB4OwogIGhlaWdodDogMTVweDsKICB9CiAgaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZCwKICBpbnB1dFt0eXBlPXJhZGlvXTpjaGVja2VkIHsKICBiYWNrZ3JvdW5kOiAjZmZmOwogIH0KICBpbnB1dFt0eXBlPXJhZGlvXTpjaGVja2VkOjphZnRlciB7CiAgY29udGVudDogJyc7CiAgZGlzcGxheTogYmxvY2s7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIHRvcDogM3B4OwogIGxlZnQ6IDNweDsKICB3aWR0aDogN3B4OwogIGhlaWdodDogN3B4OwogIGJhY2tncm91bmQ6ICM2NjY7CiAgLW1vei1ib3JkZXItcmFkaXVzOiAxZW07CiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxZW07CiAgYm9yZGVyLXJhZGl1czogMWVtOwogIH0KICBpbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2VkOjphZnRlciB7CiAgY29udGVudDogdXJsKC8vc3NsLmdzdGF0aWMuY29tL3VpL3YxL21lbnUvY2hlY2ttYXJrLnBuZyk7CiAgZGlzcGxheTogYmxvY2s7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHRvcDogLTZweDsKICBsZWZ0OiAtNXB4OwogIH0KICBpbnB1dFt0eXBlPWNoZWNrYm94XTpmb2N1cyB7CiAgb3V0bGluZTogbm9uZTsKICBib3JkZXItY29sb3I6ICM0ZDkwZmU7CiAgfQogIC5zdGFja2VkLWxhYmVsIHsKICBkaXNwbGF5OiBibG9jazsKICBmb250LXdlaWdodDogYm9sZDsKICBtYXJnaW46IC41ZW0gMDsKICB9CiAgLmhpZGRlbi1sYWJlbCB7CiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7CiAgY2xpcDogcmVjdCgxcHggMXB4IDFweCAxcHgpOyAvKiBJRTYsIElFNyAqLwogIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTsKICBoZWlnaHQ6IDBweDsKICB3aWR0aDogMHB4OwogIG92ZXJmbG93OiBoaWRkZW47CiAgdmlzaWJpbGl0eTogaGlkZGVuOwogIH0KICBpbnB1dFt0eXBlPWNoZWNrYm94XS5mb3JtLWVycm9yLAogIGlucHV0W3R5cGU9ZW1haWxdLmZvcm0tZXJyb3IsCiAgaW5wdXRbdHlwZT1udW1iZXJdLmZvcm0tZXJyb3IsCiAgaW5wdXRbdHlwZT1wYXNzd29yZF0uZm9ybS1lcnJvciwKICBpbnB1dFt0eXBlPXRleHRdLmZvcm0tZXJyb3IsCiAgaW5wdXRbdHlwZT10ZWxdLmZvcm0tZXJyb3IsCiAgaW5wdXRbdHlwZT11cmxdLmZvcm0tZXJyb3IgewogIGJvcmRlcjogMXB4IHNvbGlkICNkZDRiMzk7CiAgfQogIC5lcnJvci1tc2cgewogIG1hcmdpbjogLjVlbSAwOwogIGRpc3BsYXk6IGJsb2NrOwogIGNvbG9yOiAjZGQ0YjM5OwogIGxpbmUtaGVpZ2h0OiAxN3B4OwogIH0KICAuaGVscC1saW5rIHsKICBiYWNrZ3JvdW5kOiAjZGQ0YjM5OwogIHBhZGRpbmc6IDAgNXB4OwogIGNvbG9yOiAjZmZmOwogIGZvbnQtd2VpZ2h0OiBib2xkOwogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAtbW96LWJvcmRlci1yYWRpdXM6IDFlbTsKICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDFlbTsKICBib3JkZXItcmFkaXVzOiAxZW07CiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICB0b3A6IDBweDsKICB9CiAgLmhlbHAtbGluazp2aXNpdGVkIHsKICBjb2xvcjogI2ZmZjsKICB9CiAgLmhlbHAtbGluazpob3ZlciB7CiAgY29sb3I6ICNmZmY7CiAgYmFja2dyb3VuZDogI2MwMzUyMzsKICB0ZXh0LWRlY29yYXRpb246IG5vbmU7CiAgfQogIC5oZWxwLWxpbms6YWN0aXZlIHsKICBvcGFjaXR5OiAxOwogIGJhY2tncm91bmQ6ICNhZTI4MTc7CiAgfQogIC53cmFwcGVyIHsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgbWluLWhlaWdodDogMTAwJTsKICB9CiAgLmNvbnRlbnQgewogIHBhZGRpbmc6IDAgNDRweDsKICB9CiAgLm1haW4gewogIHBhZGRpbmctYm90dG9tOiAxMDBweDsKICB9CiAgLyogRm9yIG1vZGVybiBicm93c2VycyAqLwogIC5jbGVhcmZpeDpiZWZvcmUsCiAgLmNsZWFyZml4OmFmdGVyIHsKICBjb250ZW50OiAiIjsKICBkaXNwbGF5OiB0YWJsZTsKICB9CiAgLmNsZWFyZml4OmFmdGVyIHsKICBjbGVhcjogYm90aDsKICB9CiAgLyogRm9yIElFIDYvNyAodHJpZ2dlciBoYXNMYXlvdXQpICovCiAgLmNsZWFyZml4IHsKICB6b29tOjE7CiAgfQogIC5nb29nbGUtaGVhZGVyLWJhciB7CiAgaGVpZ2h0OiA3MXB4OwogIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTVlNWU1OwogIG92ZXJmbG93OiBoaWRkZW47CiAgfQogIC5oZWFkZXIgLmxvZ28gewogIG1hcmdpbjogMTdweCAwIDA7CiAgZmxvYXQ6IGxlZnQ7CiAgaGVpZ2h0OiAzOHB4OwogIHdpZHRoOiAxMTZweDsKICB9CiAgLmhlYWRlciAuc2Vjb25kYXJ5LWxpbmsgewogIG1hcmdpbjogMjhweCAwIDA7CiAgZmxvYXQ6IHJpZ2h0OwogIH0KICAuaGVhZGVyIC5zZWNvbmRhcnktbGluayBhIHsKICBmb250LXdlaWdodDogbm9ybWFsOwogIH0KICAuZ29vZ2xlLWhlYWRlci1iYXIuY2VudGVyZWQgewogIGJvcmRlcjogMDsKICBoZWlnaHQ6IDEwOHB4OwogIH0KICAuZ29vZ2xlLWhlYWRlci1iYXIuY2VudGVyZWQgLmhlYWRlciAubG9nbyB7CiAgZmxvYXQ6IG5vbmU7CiAgbWFyZ2luOiA0MHB4IGF1dG8gMzBweDsKICBkaXNwbGF5OiBibG9jazsKICB9CiAgLmdvb2dsZS1oZWFkZXItYmFyLmNlbnRlcmVkIC5oZWFkZXIgLnNlY29uZGFyeS1saW5rIHsKICBkaXNwbGF5OiBub25lCiAgfQogIC5nb29nbGUtZm9vdGVyLWJhciB7CiAgcG9zaXRpb246IGFic29sdXRlOwogIGJvdHRvbTogMDsKICBoZWlnaHQ6IDM1cHg7CiAgd2lkdGg6IDEwMCU7CiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlNWU1ZTU7CiAgb3ZlcmZsb3c6IGhpZGRlbjsKICB9CiAgLmZvb3RlciB7CiAgcGFkZGluZy10b3A6IDdweDsKICBmb250LXNpemU6IC44NWVtOwogIHdoaXRlLXNwYWNlOiBub3dyYXA7CiAgbGluZS1oZWlnaHQ6IDA7CiAgfQogIC5mb290ZXIgdWwgewogIGZsb2F0OiBsZWZ0OwogIG1heC13aWR0aDogODAlOwogIG1pbi1oZWlnaHQ6IDE2cHg7CiAgcGFkZGluZzogMDsKICB9CiAgLmZvb3RlciB1bCBsaSB7CiAgY29sb3I6ICM3MzczNzM7CiAgZGlzcGxheTogaW5saW5lOwogIHBhZGRpbmc6IDA7CiAgcGFkZGluZy1yaWdodDogMS41ZW07CiAgfQogIC5mb290ZXIgYSB7CiAgY29sb3I6ICM3MzczNzM7CiAgfQogIC5sYW5nLWNob29zZXItd3JhcCB7CiAgZmxvYXQ6IHJpZ2h0OwogIGRpc3BsYXk6IGlubGluZTsKICB9CiAgLmxhbmctY2hvb3Nlci13cmFwIGltZyB7CiAgdmVydGljYWwtYWxpZ246IHRvcDsKICB9CiAgLmxhbmctY2hvb3NlciB7CiAgZm9udC1zaXplOiAxM3B4OwogIGhlaWdodDogMjRweDsKICBsaW5lLWhlaWdodDogMjRweDsKICB9CiAgLmxhbmctY2hvb3NlciBvcHRpb24gewogIGZvbnQtc2l6ZTogMTNweDsKICBsaW5lLWhlaWdodDogMjRweDsKICB9CiAgLmhpZGRlbiB7CiAgaGVpZ2h0OiAwcHg7CiAgd2lkdGg6IDBweDsKICBvdmVyZmxvdzogaGlkZGVuOwogIHZpc2liaWxpdHk6IGhpZGRlbjsKICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7CiAgfQogIC5iYW5uZXIgewogIHRleHQtYWxpZ246IGNlbnRlcjsKICB9CiAgLmNhcmQgewogIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7CiAgcGFkZGluZzogMjBweCAyNXB4IDMwcHg7CiAgbWFyZ2luOiAwIGF1dG8gMjVweDsKICB3aWR0aDogMzA0cHg7CiAgLW1vei1ib3JkZXItcmFkaXVzOiAycHg7CiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAycHg7CiAgYm9yZGVyLXJhZGl1czogMnB4OwogIC1tb3otYm94LXNoYWRvdzogMHB4IDJweCAycHggcmdiYSgwLCAwLCAwLCAwLjMpOwogIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDJweCAycHggcmdiYSgwLCAwLCAwLCAwLjMpOwogIGJveC1zaGFkb3c6IDBweCAycHggMnB4IHJnYmEoMCwgMCwgMCwgMC4zKTsKICB9CiAgLmNhcmQgJmd0OyAqOmZpcnN0LWNoaWxkIHsKICBtYXJnaW4tdG9wOiAwOwogIH0KICAucmMtYnV0dG9uLAogIC5yYy1idXR0b246dmlzaXRlZCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIG1pbi13aWR0aDogNDZweDsKICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgY29sb3I6ICM0NDQ7CiAgZm9udC1zaXplOiAxNHB4OwogIGZvbnQtd2VpZ2h0OiA3MDA7CiAgaGVpZ2h0OiAzNnB4OwogIHBhZGRpbmc6IDAgOHB4OwogIGxpbmUtaGVpZ2h0OiAzNnB4OwogIC1tb3otYm9yZGVyLXJhZGl1czogM3B4OwogIC13ZWJraXQtYm9yZGVyLXJhZGl1czogM3B4OwogIGJvcmRlci1yYWRpdXM6IDNweDsKICAtby10cmFuc2l0aW9uOiBhbGwgMC4yMThzOwogIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMjE4czsKICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjIxOHM7CiAgdHJhbnNpdGlvbjogYWxsIDAuMjE4czsKICBib3JkZXI6IDFweCBzb2xpZCAjZGNkY2RjOwogIGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7CiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCNmNWY1ZjUsI2YxZjFmMSk7CiAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCNmNWY1ZjUsI2YxZjFmMSk7CiAgYmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsI2Y1ZjVmNSwjZjFmMWYxKTsKICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCNmNWY1ZjUsI2YxZjFmMSk7CiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvcCwjZjVmNWY1LCNmMWYxZjEpOwogIC1vLXRyYW5zaXRpb246IG5vbmU7CiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTsKICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lOwogIHVzZXItc2VsZWN0OiBub25lOwogIGN1cnNvcjogZGVmYXVsdDsKICB9CiAgLmNhcmQgLnJjLWJ1dHRvbiB7CiAgd2lkdGg6IDEwMCU7CiAgcGFkZGluZzogMDsKICB9CiAgLnJjLWJ1dHRvbi5kaXNhYmxlZCwKICAucmMtYnV0dG9uW2Rpc2FibGVkXSB7CiAgb3BhY2l0eTogLjU7CiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTUwKTsKICBjdXJzb3I6IGRlZmF1bHQ7CiAgcG9pbnRlci1ldmVudHM6IG5vbmU7CiAgfQogIC5yYy1idXR0b246aG92ZXIgewogIGJvcmRlcjogMXB4IHNvbGlkICNjNmM2YzY7CiAgY29sb3I6ICMzMzM7CiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogIC1vLXRyYW5zaXRpb246IGFsbCAwLjBzOwogIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMHM7CiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4wczsKICB0cmFuc2l0aW9uOiBhbGwgMC4wczsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGY4OwogIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwjZjhmOGY4LCNmMWYxZjEpOwogIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwjZjhmOGY4LCNmMWYxZjEpOwogIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCNmOGY4ZjgsI2YxZjFmMSk7CiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwjZjhmOGY4LCNmMWYxZjEpOwogIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0b3AsI2Y4ZjhmOCwjZjFmMWYxKTsKICAtbW96LWJveC1zaGFkb3c6IDAgMXB4IDFweCByZ2JhKDAsMCwwLDAuMSk7CiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDFweCAxcHggcmdiYSgwLDAsMCwwLjEpOwogIGJveC1zaGFkb3c6IDAgMXB4IDFweCByZ2JhKDAsMCwwLDAuMSk7CiAgfQogIC5yYy1idXR0b246YWN0aXZlIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjZmNmY2OwogIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwjZjZmNmY2LCNmMWYxZjEpOwogIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwjZjZmNmY2LCNmMWYxZjEpOwogIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCNmNmY2ZjYsI2YxZjFmMSk7CiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwjZjZmNmY2LCNmMWYxZjEpOwogIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0b3AsI2Y2ZjZmNiwjZjFmMWYxKTsKICAtbW96LWJveC1zaGFkb3c6IDAgMXB4IDJweCByZ2JhKDAsMCwwLDAuMSk7CiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDFweCAycHggcmdiYSgwLDAsMCwwLjEpOwogIGJveC1zaGFkb3c6IDAgMXB4IDJweCByZ2JhKDAsMCwwLDAuMSk7CiAgfQogIC5yYy1idXR0b24tc3VibWl0LAogIC5yYy1idXR0b24tc3VibWl0OnZpc2l0ZWQgewogIGJvcmRlcjogMXB4IHNvbGlkICMzMDc5ZWQ7CiAgY29sb3I6ICNmZmY7CiAgdGV4dC1zaGFkb3c6IDAgMXB4IHJnYmEoMCwwLDAsMC4xKTsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGQ5MGZlOwogIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwjNGQ5MGZlLCM0Nzg3ZWQpOwogIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwjNGQ5MGZlLCM0Nzg3ZWQpOwogIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCM0ZDkwZmUsIzQ3ODdlZCk7CiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwjNGQ5MGZlLCM0Nzg3ZWQpOwogIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0b3AsIzRkOTBmZSwjNDc4N2VkKTsKICB9CiAgLnJjLWJ1dHRvbi1zdWJtaXQ6aG92ZXIgewogIGJvcmRlcjogMXB4IHNvbGlkICMyZjViYjc7CiAgY29sb3I6ICNmZmY7CiAgdGV4dC1zaGFkb3c6IDAgMXB4IHJnYmEoMCwwLDAsMC4zKTsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzU3YWU4OwogIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwjNGQ5MGZlLCMzNTdhZTgpOwogIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwjNGQ5MGZlLCMzNTdhZTgpOwogIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCM0ZDkwZmUsIzM1N2FlOCk7CiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwjNGQ5MGZlLCMzNTdhZTgpOwogIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0b3AsIzRkOTBmZSwjMzU3YWU4KTsKICB9CiAgLnJjLWJ1dHRvbi1zdWJtaXQ6YWN0aXZlIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzU3YWU4OwogIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwjNGQ5MGZlLCMzNTdhZTgpOwogIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwjNGQ5MGZlLCMzNTdhZTgpOwogIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCM0ZDkwZmUsIzM1N2FlOCk7CiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwjNGQ5MGZlLCMzNTdhZTgpOwogIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0b3AsIzRkOTBmZSwjMzU3YWU4KTsKICAtbW96LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKDAsMCwwLDAuMyk7CiAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgwLDAsMCwwLjMpOwogIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKDAsMCwwLDAuMyk7CiAgfQogIC5yYy1idXR0b24tcmVkLAogIC5yYy1idXR0b24tcmVkOnZpc2l0ZWQgewogIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50OwogIGNvbG9yOiAjZmZmOwogIHRleHQtc2hhZG93OiAwIDFweCByZ2JhKDAsMCwwLDAuMSk7CiAgYmFja2dyb3VuZC1jb2xvcjogI2QxNDgzNjsKICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsI2RkNGIzOSwjZDE0ODM2KTsKICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsI2RkNGIzOSwjZDE0ODM2KTsKICBiYWNrZ3JvdW5kLWltYWdlOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwjZGQ0YjM5LCNkMTQ4MzYpOwogIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsI2RkNGIzOSwjZDE0ODM2KTsKICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG9wLCNkZDRiMzksI2QxNDgzNik7CiAgfQogIC5yYy1idXR0b24tcmVkOmhvdmVyIHsKICBib3JkZXI6IDFweCBzb2xpZCAjYjAyODFhOwogIGNvbG9yOiAjZmZmOwogIHRleHQtc2hhZG93OiAwIDFweCByZ2JhKDAsMCwwLDAuMyk7CiAgYmFja2dyb3VuZC1jb2xvcjogI2M1MzcyNzsKICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsI2RkNGIzOSwjYzUzNzI3KTsKICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsI2RkNGIzOSwjYzUzNzI3KTsKICBiYWNrZ3JvdW5kLWltYWdlOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwjZGQ0YjM5LCNjNTM3MjcpOwogIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsI2RkNGIzOSwjYzUzNzI3KTsKICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG9wLCNkZDRiMzksI2M1MzcyNyk7CiAgfQogIC5yYy1idXR0b24tcmVkOmFjdGl2ZSB7CiAgYm9yZGVyOiAxcHggc29saWQgIzk5MmExYjsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjAyODFhOwogIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwjZGQ0YjM5LCNiMDI4MWEpOwogIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwjZGQ0YjM5LCNiMDI4MWEpOwogIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCNkZDRiMzksI2IwMjgxYSk7CiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwjZGQ0YjM5LCNiMDI4MWEpOwogIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0b3AsI2RkNGIzOSwjYjAyODFhKTsKICAtbW96LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKDAsMCwwLDAuMyk7CiAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgwLDAsMCwwLjMpOwogIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKDAsMCwwLDAuMyk7CiAgfQogIC5zZWNvbmRhcnktYWN0aW9ucyB7CiAgdGV4dC1hbGlnbjogY2VudGVyOwogIH0KPC9zdHlsZT4KPHN0eWxlIG1lZGlhPSIiPgogIC5nb29nbGUtaGVhZGVyLWJhci5jZW50ZXJlZCB7CiAgaGVpZ2h0OiA4M3B4OwogIH0KICAuZ29vZ2xlLWhlYWRlci1iYXIuY2VudGVyZWQgLmhlYWRlciAubG9nbyB7CiAgbWFyZ2luOiAyNXB4IGF1dG8gMjBweDsKICB9CiAgLmNhcmQgewogIG1hcmdpbi1ib3R0b206IDIwcHg7CiAgfQo8L3N0eWxlPgo8c3R5bGUgbWVkaWE9IiI+CiAgaHRtbCwgYm9keSB7CiAgZm9udC1zaXplOiAxNHB4OwogIH0KICAuZ29vZ2xlLWhlYWRlci1iYXIuY2VudGVyZWQgewogIGhlaWdodDogNzNweDsKICB9CiAgLmdvb2dsZS1oZWFkZXItYmFyLmNlbnRlcmVkIC5oZWFkZXIgLmxvZ28gewogIG1hcmdpbjogMjBweCBhdXRvIDE1cHg7CiAgfQogIC5jb250ZW50IHsKICBwYWRkaW5nLWxlZnQ6IDEwcHg7CiAgcGFkZGluZy1yaWdodDogMTBweDsKICB9CiAgLmhpZGRlbi1zbWFsbCB7CiAgZGlzcGxheTogbm9uZTsKICB9CiAgLmNhcmQgewogIHBhZGRpbmc6IDIwcHggMTVweCAzMHB4OwogIHdpZHRoOiAyNzBweDsKICB9CiAgLmZvb3RlciB1bCBsaSB7CiAgcGFkZGluZy1yaWdodDogMWVtOwogIH0KICAubGFuZy1jaG9vc2VyLXdyYXAgewogIGRpc3BsYXk6IG5vbmU7CiAgfQo8L3N0eWxlPgo8c3R5bGU+CiAgcHJlLmRlYnVnIHsKICBmb250LWZhbWlseTogbW9ub3NwYWNlOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICBsZWZ0OiAwOwogIG1hcmdpbjogMDsKICBwYWRkaW5nOiAxLjVlbTsKICBmb250LXNpemU6IDEzcHg7CiAgYmFja2dyb3VuZDogI2YxZjFmMTsKICBib3JkZXItdG9wOiAxcHggc29saWQgI2U1ZTVlNTsKICBkaXJlY3Rpb246IGx0cjsKICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7CiAgd2lkdGg6IDkwJTsKICBvdmVyZmxvdzogaGlkZGVuOwogIH0KPC9zdHlsZT4KPHN0eWxlPgogIC5iYW5uZXIgaDEgewogIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJywgYXJpYWw7CiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7CiAgY29sb3I6ICM1NTU7CiAgZm9udC1zaXplOiA0MnB4OwogIGZvbnQtd2VpZ2h0OiAzMDA7CiAgbWFyZ2luLXRvcDogMDsKICBtYXJnaW4tYm90dG9tOiAyMHB4OwogIH0KICAuYmFubmVyIGgyIHsKICBmb250LWZhbWlseTogJ09wZW4gU2FucycsIGFyaWFsOwogIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkOwogIGNvbG9yOiAjNTU1OwogIGZvbnQtc2l6ZTogMThweDsKICBmb250LXdlaWdodDogNDAwOwogIG1hcmdpbi1ib3R0b206IDIwcHg7CiAgfQogIC5zaWduaW4tY2FyZCB7CiAgd2lkdGg6IDI3NHB4OwogIHBhZGRpbmc6IDQwcHggNDBweDsKICB9CiAgLnNpZ25pbi1jYXJkIC5wcm9maWxlLWltZyB7CiAgd2lkdGg6IDk2cHg7CiAgaGVpZ2h0OiA5NnB4OwogIG1hcmdpbjogMCBhdXRvIDEwcHg7CiAgZGlzcGxheTogYmxvY2s7CiAgLW1vei1ib3JkZXItcmFkaXVzOiA1MCU7CiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1MCU7CiAgYm9yZGVyLXJhZGl1czogNTAlOwogIH0KICAuc2lnbmluLWNhcmQgLnByb2ZpbGUtbmFtZSB7CiAgZm9udC1zaXplOiAxNnB4OwogIGZvbnQtd2VpZ2h0OiBib2xkOwogIHRleHQtYWxpZ246IGNlbnRlcjsKICBtYXJnaW46IDEwcHggMCAwOwogIG1pbi1oZWlnaHQ6IDFlbTsKICB9CiAgLnNpZ25pbi1jYXJkIC5wcm9maWxlLWVtYWlsIHsKICBmb250LXNpemU6IDE2cHg7CiAgdGV4dC1hbGlnbjogY2VudGVyOwogIG1hcmdpbjogMTBweCAwIDIwcHggMDsKICBtaW4taGVpZ2h0OiAxZW07CiAgfQogIC5zaWduaW4tY2FyZCBpbnB1dFt0eXBlPWVtYWlsXSwKICAuc2lnbmluLWNhcmQgaW5wdXRbdHlwZT1wYXNzd29yZF0sCiAgLnNpZ25pbi1jYXJkIGlucHV0W3R5cGU9dGV4dF0sCiAgLnNpZ25pbi1jYXJkIGlucHV0W3R5cGU9c3VibWl0XSB7CiAgd2lkdGg6IDEwMCU7CiAgZGlzcGxheTogYmxvY2s7CiAgbWFyZ2luLWJvdHRvbTogMTBweDsKICB6LWluZGV4OiAxOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94OwogIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgfQogIC5zaWduaW4tY2FyZCAjRW1haWwsCiAgLnNpZ25pbi1jYXJkICNQYXNzd2QsCiAgLnNpZ25pbi1jYXJkIC5jYXB0Y2hhIHsKICBkaXJlY3Rpb246IGx0cjsKICBoZWlnaHQ6IDQ0cHg7CiAgbGluZS1oZWlnaHQ6IDQ0cHg7CiAgZm9udC1zaXplOiAxNnB4OwogIH0KICAuc2lnbmluLWNhcmQgI0VtYWlsICsgLnN0YWNrZWQtbGFiZWwgewogIG1hcmdpbi10b3A6IDE1cHg7CiAgfQogIC5zaWduaW4tY2FyZCAjcmVhdXRoRW1haWwgewogIGRpc3BsYXk6IGJsb2NrOwogIG1hcmdpbi1ib3R0b206IDEwcHg7CiAgbGluZS1oZWlnaHQ6IDM2cHg7CiAgcGFkZGluZzogMCA4cHg7CiAgZm9udC1zaXplOiAxNXB4OwogIGNvbG9yOiAjNDA0MDQwOwogIGxpbmUtaGVpZ2h0OiAyOwogIG1hcmdpbi1ib3R0b206IDEwcHg7CiAgZm9udC1zaXplOiAxNHB4OwogIHRleHQtYWxpZ246IGNlbnRlcjsKICBvdmVyZmxvdzogaGlkZGVuOwogIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOwogIHdoaXRlLXNwYWNlOiBub3dyYXA7CiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94OwogIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDsKICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogIH0KICAub25lLWdvb2dsZSBwIHsKICBtYXJnaW46IDAgMCAxMHB4OwogIGNvbG9yOiAjNTU1OwogIGZvbnQtc2l6ZTogMTRweDsKICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgfQogIC5vbmUtZ29vZ2xlIHAuY3JlYXRlLWFjY291bnQsCiAgLm9uZS1nb29nbGUgcC5zd2l0Y2gtYWNjb3VudCB7CiAgbWFyZ2luLWJvdHRvbTogNjBweDsKICB9CiAgLm9uZS1nb29nbGUgaW1nIHsKICBkaXNwbGF5OiBibG9jazsKICB3aWR0aDogMjEwcHg7CiAgaGVpZ2h0OiAxN3B4OwogIG1hcmdpbjogMTBweCBhdXRvOwogIH0KPC9zdHlsZT4KPHN0eWxlIG1lZGlhPSIiPgogIC5iYW5uZXIgaDEgewogIGZvbnQtc2l6ZTogMzhweDsKICBtYXJnaW4tYm90dG9tOiAxNXB4OwogIH0KICAuYmFubmVyIGgyIHsKICBtYXJnaW4tYm90dG9tOiAxNXB4OwogIH0KICAub25lLWdvb2dsZSBwLmNyZWF0ZS1hY2NvdW50LAogIC5vbmUtZ29vZ2xlIHAuc3dpdGNoLWFjY291bnQgewogIG1hcmdpbi1ib3R0b206IDMwcHg7CiAgfQogIC5zaWduaW4tY2FyZCAjRW1haWwgewogIG1hcmdpbi1ib3R0b206IDA7CiAgfQogIC5zaWduaW4tY2FyZCAjUGFzc3dkIHsKICBtYXJnaW4tdG9wOiAtMXB4OwogIH0KICAuc2lnbmluLWNhcmQgI0VtYWlsLmZvcm0tZXJyb3IsCiAgLnNpZ25pbi1jYXJkICNQYXNzd2QuZm9ybS1lcnJvciB7CiAgei1pbmRleDogMjsKICB9CiAgLnNpZ25pbi1jYXJkICNFbWFpbDpob3ZlciwKICAuc2lnbmluLWNhcmQgI0VtYWlsOmZvY3VzLAogIC5zaWduaW4tY2FyZCAjUGFzc3dkOmhvdmVyLAogIC5zaWduaW4tY2FyZCAjUGFzc3dkOmZvY3VzIHsKICB6LWluZGV4OiAzOwogIH0KPC9zdHlsZT4KPHN0eWxlIG1lZGlhPSIiPgogIC5iYW5uZXIgaDEgewogIGZvbnQtc2l6ZTogMjJweDsKICBtYXJnaW4tYm90dG9tOiAxNXB4OwogIH0KICAuc2lnbmluLWNhcmQgewogIHdpZHRoOiAyNjBweDsKICBwYWRkaW5nOiAyMHB4IDIwcHg7CiAgbWFyZ2luOiAwIGF1dG8gMjBweDsKICB9CiAgLnNpZ25pbi1jYXJkIC5wcm9maWxlLWltZyB7CiAgd2lkdGg6IDcycHg7CiAgaGVpZ2h0OiA3MnB4OwogIC1tb3otYm9yZGVyLXJhZGl1czogNzJweDsKICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDcycHg7CiAgYm9yZGVyLXJhZGl1czogNzJweDsKICB9Cjwvc3R5bGU+CjxzdHlsZT4KICAuamZrLXRvb2x0aXAgewogIGJhY2tncm91bmQtY29sb3I6ICNmZmY7CiAgYm9yZGVyOiAxcHggc29saWQ7CiAgY29sb3I6ICM3MzczNzM7CiAgZm9udC1zaXplOiAxMnB4OwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB6LWluZGV4OiA4MDAgIWltcG9ydGFudDsKICBib3JkZXItY29sb3I6ICNiYmIgI2JiYiAjYThhOGE4OwogIHBhZGRpbmc6IDE2cHg7CiAgd2lkdGg6IDI1MHB4OwogIH0KIC5qZmstdG9vbHRpcCBoMyB7CiAgY29sb3I6ICM1NTU7CiAgZm9udC1zaXplOiAxMnB4OwogIG1hcmdpbjogMCAwIC41ZW07CiAgfQogLmpmay10b29sdGlwLWNvbnRlbnQgcDpsYXN0LWNoaWxkIHsKICBtYXJnaW4tYm90dG9tOiAwOwogIH0KICAuamZrLXRvb2x0aXAtYXJyb3cgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB9CiAgLmpmay10b29sdGlwLWFycm93IC5qZmstdG9vbHRpcC1hcnJvd2ltcGxiZWZvcmUsCiAgLmpmay10b29sdGlwLWFycm93IC5qZmstdG9vbHRpcC1hcnJvd2ltcGxhZnRlciB7CiAgZGlzcGxheTogYmxvY2s7CiAgaGVpZ2h0OiAwOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB3aWR0aDogMDsKICB9CiAgLmpmay10b29sdGlwLWFycm93IC5qZmstdG9vbHRpcC1hcnJvd2ltcGxiZWZvcmUgewogIGJvcmRlcjogOXB4IHNvbGlkOwogIH0KICAuamZrLXRvb2x0aXAtYXJyb3cgLmpmay10b29sdGlwLWFycm93aW1wbGFmdGVyIHsKICBib3JkZXI6IDhweCBzb2xpZDsKICB9CiAgLmpmay10b29sdGlwLWFycm93ZG93biB7CiAgYm90dG9tOiAwOwogIH0KICAuamZrLXRvb2x0aXAtYXJyb3d1cCB7CiAgdG9wOiAtOXB4OwogIH0KICAuamZrLXRvb2x0aXAtYXJyb3dsZWZ0IHsKICBsZWZ0OiAtOXB4OwogIHRvcDogMzBweDsKICB9CiAgLmpmay10b29sdGlwLWFycm93cmlnaHQgewogIHJpZ2h0OiAwOwogIHRvcDogMzBweDsKICB9CiAgLmpmay10b29sdGlwLWFycm93ZG93biAuamZrLXRvb2x0aXAtYXJyb3dpbXBsYmVmb3JlLC5qZmstdG9vbHRpcC1hcnJvd3VwIC5qZmstdG9vbHRpcC1hcnJvd2ltcGxiZWZvcmUgewogIGJvcmRlci1jb2xvcjogI2JiYiB0cmFuc3BhcmVudDsKICBsZWZ0OiAtOXB4OwogIH0KICAuamZrLXRvb2x0aXAtYXJyb3dkb3duIC5qZmstdG9vbHRpcC1hcnJvd2ltcGxiZWZvcmUgewogIGJvcmRlci1jb2xvcjogI2E4YThhOCB0cmFuc3BhcmVudDsKICB9CiAgLmpmay10b29sdGlwLWFycm93ZG93biAuamZrLXRvb2x0aXAtYXJyb3dpbXBsYWZ0ZXIsLmpmay10b29sdGlwLWFycm93dXAgLmpmay10b29sdGlwLWFycm93aW1wbGFmdGVyIHsKICBib3JkZXItY29sb3I6ICNmZmYgdHJhbnNwYXJlbnQ7CiAgbGVmdDogLThweDsKICB9CiAgLmpmay10b29sdGlwLWFycm93ZG93biAuamZrLXRvb2x0aXAtYXJyb3dpbXBsYmVmb3JlIHsKICBib3JkZXItYm90dG9tLXdpZHRoOiAwOwogIH0KICAuamZrLXRvb2x0aXAtYXJyb3dkb3duIC5qZmstdG9vbHRpcC1hcnJvd2ltcGxhZnRlciB7CiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDsKICB9CiAgLmpmay10b29sdGlwLWFycm93dXAgLmpmay10b29sdGlwLWFycm93aW1wbGJlZm9yZSB7CiAgYm9yZGVyLXRvcC13aWR0aDogMDsKICB9CiAgLmpmay10b29sdGlwLWFycm93dXAgLmpmay10b29sdGlwLWFycm93aW1wbGFmdGVyIHsKICBib3JkZXItdG9wLXdpZHRoOiAwOwogIHRvcDogMXB4OwogIH0KICAuamZrLXRvb2x0aXAtYXJyb3dsZWZ0IC5qZmstdG9vbHRpcC1hcnJvd2ltcGxiZWZvcmUsCiAgLmpmay10b29sdGlwLWFycm93cmlnaHQgLmpmay10b29sdGlwLWFycm93aW1wbGJlZm9yZSB7CiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjYmJiOwogIHRvcDogLTlweDsKICB9CiAgLmpmay10b29sdGlwLWFycm93bGVmdCAuamZrLXRvb2x0aXAtYXJyb3dpbXBsYWZ0ZXIsCiAgLmpmay10b29sdGlwLWFycm93cmlnaHQgLmpmay10b29sdGlwLWFycm93aW1wbGFmdGVyIHsKICBib3JkZXItY29sb3I6dHJhbnNwYXJlbnQgI2ZmZjsKICB0b3A6LThweDsKICB9CiAgLmpmay10b29sdGlwLWFycm93bGVmdCAuamZrLXRvb2x0aXAtYXJyb3dpbXBsYmVmb3JlIHsKICBib3JkZXItbGVmdC13aWR0aDogMDsKICB9CiAgLmpmay10b29sdGlwLWFycm93bGVmdCAuamZrLXRvb2x0aXAtYXJyb3dpbXBsYWZ0ZXIgewogIGJvcmRlci1sZWZ0LXdpZHRoOiAwOwogIGxlZnQ6IDFweDsKICB9CiAgLmpmay10b29sdGlwLWFycm93cmlnaHQgLmpmay10b29sdGlwLWFycm93aW1wbGJlZm9yZSB7CiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwOwogIH0KICAuamZrLXRvb2x0aXAtYXJyb3dyaWdodCAuamZrLXRvb2x0aXAtYXJyb3dpbXBsYWZ0ZXIgewogIGJvcmRlci1yaWdodC13aWR0aDogMDsKICB9CiAgLmpmay10b29sdGlwLWNsb3NlYnRuIHsKICBiYWNrZ3JvdW5kOiB1cmwoIi8vc3NsLmdzdGF0aWMuY29tL3VpL3YxL2ljb25zL2NvbW1vbi94XzhweC5wbmciKSBuby1yZXBlYXQ7CiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7CiAgaGVpZ2h0OiAyMXB4OwogIG9wYWNpdHk6IC40OwogIG91dGxpbmU6IDA7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHJpZ2h0OiAycHg7CiAgdG9wOiAycHg7CiAgd2lkdGg6IDIxcHg7CiAgfQogIC5qZmstdG9vbHRpcC1jbG9zZWJ0bjpmb2N1cywKICAuamZrLXRvb2x0aXAtY2xvc2VidG46aG92ZXIgewogIG9wYWNpdHk6IC44OwogIGN1cnNvcjogcG9pbnRlcjsKICB9CiAgLmpmay10b29sdGlwLWNsb3NlYnRuOmZvY3VzIHsKICBib3JkZXItY29sb3I6ICM0ZDkwZmU7CiAgfQo8L3N0eWxlPgo8c3R5bGUgbWVkaWE9IiI+CiAgLmpmay10b29sdGlwIHsKICBkaXNwbGF5OiBub25lOwogIH0KPC9zdHlsZT4KPHN0eWxlPgogIC5yZW1lbWJlciAuYnViYmxlLXdyYXAgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICBwYWRkaW5nLXRvcDogM3B4OwogIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgLjIxOHMgZWFzZS1pbiAuMjE4czsKICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgLjIxOHMgZWFzZS1pbiAuMjE4czsKICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgLjIxOHMgZWFzZS1pbiAuMjE4czsKICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4yMThzIGVhc2UtaW4gLjIxOHM7CiAgbGVmdDogLTk5OWVtOwogIG9wYWNpdHk6IDA7CiAgd2lkdGg6IDMxNHB4OwogIG1hcmdpbi1sZWZ0OiAtMjBweDsKICB9CiAgLnJlbWVtYmVyOmhvdmVyIC5idWJibGUtd3JhcCwKICAucmVtZW1iZXIgaW5wdXQ6Zm9jdXMgfiAuYnViYmxlLXdyYXAsCiAgLnJlbWVtYmVyIC5idWJibGUtd3JhcDpob3ZlciwKICAucmVtZW1iZXIgLmJ1YmJsZS13cmFwOmZvY3VzIHsKICBvcGFjaXR5OiAxOwogIGxlZnQ6IGluaGVyaXQ7CiAgfQogIC5idWJibGUtcG9pbnRlciB7CiAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7CiAgYm9yZGVyLXJpZ2h0OiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50OwogIGJvcmRlci1ib3R0b206IDEwcHggc29saWQgI2ZmZjsKICB3aWR0aDogMDsKICBoZWlnaHQ6IDA7CiAgbWFyZ2luLWxlZnQ6IDE3cHg7CiAgfQogIC5idWJibGUgewogIGJhY2tncm91bmQtY29sb3I6ICNmZmY7CiAgcGFkZGluZzogMTVweDsKICBtYXJnaW4tdG9wOiAtMXB4OwogIGZvbnQtc2l6ZTogMTFweDsKICAtbW96LWJvcmRlci1yYWRpdXM6IDJweDsKICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDJweDsKICBib3JkZXItcmFkaXVzOiAycHg7CiAgLW1vei1ib3gtc2hhZG93OiAwcHggMnB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMyk7CiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMnB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMyk7CiAgYm94LXNoYWRvdzogMHB4IDJweCAycHggcmdiYSgwLCAwLCAwLCAwLjMpOwogIH0KICAjc3RheS1zaWduZWQtaW4gewogIGZsb2F0OiBsZWZ0OwogIH0KICAjc3RheS1zaWduZWQtaW4tdG9vbHRpcCB7CiAgbGVmdDogYXV0bzsKICBtYXJnaW4tbGVmdDogLTIwcHg7CiAgcGFkZGluZy10b3A6IDNweDsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgdG9wOiAwOwogIHZpc2liaWxpdHk6IGhpZGRlbjsKICB3aWR0aDogMzE0cHg7CiAgei1pbmRleDogMTsKICB9CiAgLmRhc2hlci10b29sdGlwIHsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgbGVmdDogNTAlOwogIHRvcDogMzgwcHg7CiAgbWFyZ2luLWxlZnQ6IDE1MHB4OwogIH0KICAuZGFzaGVyLXRvb2x0aXAgLnRvb2x0aXAtcG9pbnRlciB7CiAgbWFyZ2luLXRvcDogMTVweDsKICB9CiAgLmRhc2hlci10b29sdGlwIHAgewogIG1hcmdpbi10b3A6IDA7CiAgfQogIC5kYXNoZXItdG9vbHRpcCBwIHNwYW4gewogIGRpc3BsYXk6IGJsb2NrOwogIH0KPC9zdHlsZT4KPHN0eWxlIG1lZGlhPSIiPgogIC5kYXNoZXItdG9vbHRpcCB7CiAgdG9wOiAzNDBweDsKICB9Cjwvc3R5bGU+CjxzdHlsZT4KICAuaW5mb21zZyB7CiAgY29sb3I6ICM3OTc5Nzk7CiAgbGluZS1oZWlnaHQ6IDE3cHg7CiAgbWFyZ2luOiAwLjVlbSAwIDA7CiAgZGlzcGxheTogYmxvY2s7CiAgfQogIC5qZmstYnViYmxlIHsKICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMXB4IDNweCByZ2JhKDAsMCwwLC4yKTsKICAtbW96LWJveC1zaGFkb3c6IDAgMXB4IDNweCByZ2JhKDAsMCwwLC4yKTsKICBib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLDAsMCwuMik7CiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsKICBib3JkZXI6IDFweCBzb2xpZDsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgei1pbmRleDogODAwICFpbXBvcnRhbnQ7CiAgYm9yZGVyLWNvbG9yOiAjYmJiICNiYmIgI2E4YThhODsKICBwYWRkaW5nOiAxNnB4OwogIGxpbmUtaGVpZ2h0OiAxN3B4OwogIH0KICAuamZrLWJ1YmJsZS1hcnJvdyB7CiAgcG9zaXRpb246IGFic29sdXRlCiAgfQogIC5qZmstYnViYmxlLWFycm93IC5qZmstYnViYmxlLWFycm93aW1wbGJlZm9yZSwuamZrLWJ1YmJsZS1hcnJvdyAuamZrLWJ1YmJsZS1hcnJvd2ltcGxhZnRlciB7CiAgZGlzcGxheTpibG9jazsKICBoZWlnaHQ6MDsKICBwb3NpdGlvbjphYnNvbHV0ZTsKICB3aWR0aDowCiAgfQogIC5qZmstYnViYmxlLWFycm93IC5qZmstYnViYmxlLWFycm93aW1wbGJlZm9yZSB7CiAgYm9yZGVyOjlweCBzb2xpZAogIH0KICAuamZrLWJ1YmJsZS1hcnJvdyAuamZrLWJ1YmJsZS1hcnJvd2ltcGxhZnRlciB7CiAgYm9yZGVyOjhweCBzb2xpZAogIH0KICAuamZrLWJ1YmJsZS1hcnJvd2Rvd24gewogIGJvdHRvbTowCiAgfQogIC5qZmstYnViYmxlLWFycm93dXAgewogIHRvcDotOXB4CiAgfQogIC5qZmstYnViYmxlLWFycm93bGVmdCB7CiAgbGVmdDotOXB4CiAgfQogIC5qZmstYnViYmxlLWFycm93cmlnaHQgewogIHJpZ2h0OjAKICB9CiAgLmpmay1idWJibGUtYXJyb3dkb3duIC5qZmstYnViYmxlLWFycm93aW1wbGJlZm9yZSwuamZrLWJ1YmJsZS1hcnJvd3VwIC5qZmstYnViYmxlLWFycm93aW1wbGJlZm9yZSB7CiAgYm9yZGVyLWNvbG9yOiNiYmIgdHJhbnNwYXJlbnQ7CiAgbGVmdDotOXB4CiAgfQogIC5qZmstYnViYmxlLWFycm93ZG93biAuamZrLWJ1YmJsZS1hcnJvd2ltcGxiZWZvcmUgewogIGJvcmRlci1jb2xvcjojYThhOGE4IHRyYW5zcGFyZW50CiAgfQogIC5qZmstYnViYmxlLWFycm93ZG93biAuamZrLWJ1YmJsZS1hcnJvd2ltcGxhZnRlciwuamZrLWJ1YmJsZS1hcnJvd3VwIC5qZmstYnViYmxlLWFycm93aW1wbGFmdGVyIHsKICBib3JkZXItY29sb3I6I2ZmZiB0cmFuc3BhcmVudDsKICBsZWZ0Oi04cHgKICB9CiAgLmpmay1idWJibGUtYXJyb3dkb3duIC5qZmstYnViYmxlLWFycm93aW1wbGJlZm9yZSB7CiAgYm9yZGVyLWJvdHRvbS13aWR0aDowCiAgfQogIC5qZmstYnViYmxlLWFycm93ZG93biAuamZrLWJ1YmJsZS1hcnJvd2ltcGxhZnRlciB7CiAgYm9yZGVyLWJvdHRvbS13aWR0aDowCiAgfQogIC5qZmstYnViYmxlLWFycm93dXAgLmpmay1idWJibGUtYXJyb3dpbXBsYmVmb3JlIHsKICBib3JkZXItdG9wLXdpZHRoOjAKICB9CiAgLmpmay1idWJibGUtYXJyb3d1cCAuamZrLWJ1YmJsZS1hcnJvd2ltcGxhZnRlciB7CiAgYm9yZGVyLXRvcC13aWR0aDowOwogIHRvcDoxcHgKICB9CiAgLmpmay1idWJibGUtYXJyb3dsZWZ0IC5qZmstYnViYmxlLWFycm93aW1wbGJlZm9yZSwuamZrLWJ1YmJsZS1hcnJvd3JpZ2h0IC5qZmstYnViYmxlLWFycm93aW1wbGJlZm9yZSB7CiAgYm9yZGVyLWNvbG9yOnRyYW5zcGFyZW50ICNiYmI7CiAgdG9wOi05cHgKICB9CiAgLmpmay1idWJibGUtYXJyb3dsZWZ0IC5qZmstYnViYmxlLWFycm93aW1wbGFmdGVyLC5qZmstYnViYmxlLWFycm93cmlnaHQgLmpmay1idWJibGUtYXJyb3dpbXBsYWZ0ZXIgewogIGJvcmRlci1jb2xvcjp0cmFuc3BhcmVudCAjZmZmOwogIHRvcDotOHB4CiAgfQogIC5qZmstYnViYmxlLWFycm93bGVmdCAuamZrLWJ1YmJsZS1hcnJvd2ltcGxiZWZvcmUgewogIGJvcmRlci1sZWZ0LXdpZHRoOjAKICB9CiAgLmpmay1idWJibGUtYXJyb3dsZWZ0IC5qZmstYnViYmxlLWFycm93aW1wbGFmdGVyIHsKICBib3JkZXItbGVmdC13aWR0aDowOwogIGxlZnQ6MXB4CiAgfQogIC5qZmstYnViYmxlLWFycm93cmlnaHQgLmpmay1idWJibGUtYXJyb3dpbXBsYmVmb3JlIHsKICBib3JkZXItcmlnaHQtd2lkdGg6MAogIH0KICAuamZrLWJ1YmJsZS1hcnJvd3JpZ2h0IC5qZmstYnViYmxlLWFycm93aW1wbGFmdGVyIHsKICBib3JkZXItcmlnaHQtd2lkdGg6MAogIH0KICAuamZrLWJ1YmJsZS5qZmstYnViYmxlLXByb21vIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiNmOWVkYmU7CiAgYm9yZGVyOjFweCBzb2xpZCAjZjBjMzZkCiAgfQogIC5qZmstYnViYmxlLXByb21vIC5qZmstYnViYmxlLWFycm93ZG93biAuamZrLWJ1YmJsZS1hcnJvd2ltcGxiZWZvcmUsLmpmay1idWJibGUtcHJvbW8gLmpmay1idWJibGUtYXJyb3d1cCAuamZrLWJ1YmJsZS1hcnJvd2ltcGxiZWZvcmUgewogIGJvcmRlci1jb2xvcjojZjBjMzZkIHRyYW5zcGFyZW50CiAgfQogIC5qZmstYnViYmxlLXByb21vIC5qZmstYnViYmxlLWFycm93ZG93biAuamZrLWJ1YmJsZS1hcnJvd2ltcGxhZnRlciwuamZrLWJ1YmJsZS1wcm9tbyAuamZrLWJ1YmJsZS1hcnJvd3VwIC5qZmstYnViYmxlLWFycm93aW1wbGFmdGVyIHsKICBib3JkZXItY29sb3I6I2Y5ZWRiZSB0cmFuc3BhcmVudAogIH0KICAuamZrLWJ1YmJsZS1wcm9tbyAuamZrLWJ1YmJsZS1hcnJvd2xlZnQgLmpmay1idWJibGUtYXJyb3dpbXBsYmVmb3JlLC5qZmstYnViYmxlLXByb21vIC5qZmstYnViYmxlLWFycm93cmlnaHQgLmpmay1idWJibGUtYXJyb3dpbXBsYmVmb3JlIHsKICBib3JkZXItY29sb3I6dHJhbnNwYXJlbnQgI2YwYzM2ZAogIH0KICAuamZrLWJ1YmJsZS1wcm9tbyAuamZrLWJ1YmJsZS1hcnJvd2xlZnQgLmpmay1idWJibGUtYXJyb3dpbXBsYWZ0ZXIsLmpmay1idWJibGUtcHJvbW8gLmpmay1idWJibGUtYXJyb3dyaWdodCAuamZrLWJ1YmJsZS1hcnJvd2ltcGxhZnRlciB7CiAgYm9yZGVyLWNvbG9yOnRyYW5zcGFyZW50ICNmOWVkYmUKICB9Cjwvc3R5bGU+CjxzdHlsZT4KLmZvcm0tcGFuZWwgewogIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDsKICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgd2lkdGg6IDEwMCU7Cn0KLmZvcm0tcGFuZWwuZmlyc3QgewogIHotaW5kZXg6IDI7Cn0KLmZvcm0tcGFuZWwuc2Vjb25kIHsKICB6LWluZGV4OiAxOwp9Ci5zaGlmdC1mb3JtIC5mb3JtLXBhbmVsLmZpcnN0IHsKICB6LWluZGV4OiAxOwp9Ci5zaGlmdC1mb3JtIC5mb3JtLXBhbmVsLnNlY29uZCB7CiAgei1pbmRleDogMjsKfQouaGlkZS1mb3JtLnNsaWRlLW91dCB7CiAgZGlzcGxheTogbm9uZTsKfQouaGlkZS1mb3JtLnNsaWRlLWluIHsKICBkaXNwbGF5OiBub25lOwp9Ci5oaWRlLWZvcm0uc2xpZGUtaW4gI1Bhc3N3ZCB7CiAgZGlzcGxheTogbm9uZTsKfQouc2xpZGUtaW4sCi5zbGlkZS1vdXQgewogIGRpc3BsYXk6IGJsb2NrOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogLXdlYmtpdC10cmFuc2Zvcm0sIG9wYWNpdHk7CiAgLW1vei10cmFuc2l0aW9uLXByb3BlcnR5OiAtbW96LXRyYW5zZm9ybSwgb3BhY2l0eTsKICAtbXMtdHJhbnNpdGlvbi1wcm9wZXJ0eTogLW1zLXRyYW5zZm9ybSwgb3BhY2l0eTsKICAtby10cmFuc2l0aW9uLXByb3BlcnR5OiAtby10cmFuc2Zvcm0sIG9wYWNpdHk7CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5OwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xczsKICAtbW96LXRyYW5zaXRpb24tZHVyYXRpb246IDAuMXM7CiAgLW1zLXRyYW5zaXRpb24tZHVyYXRpb246IDAuMXM7CiAgLW8tdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjFzOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7CiAgLW1vei10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTsKICAtbXMtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7CiAgLW8tdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7Cn0KLnNsaWRlLW91dCB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7Cn0KLnNoaWZ0LWZvcm0gLnNsaWRlLW91dCB7CiAgb3BhY2l0eTogMDsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEyMCUsIDAsIDApOwogIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTIwJSwgMCwgMCk7CiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEyMCUsIDAsIDApOwogIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEyMCUsIDAsIDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEyMCUsIDAsIDApOwp9Ci5zbGlkZS1pbiB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEyMCUsIDAsIDApOwogIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMjAlLCAwLCAwKTsKICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMjAlLCAwLCAwKTsKICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEyMCUsIDAsIDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTIwJSwgMCwgMCk7Cn0KLnNoaWZ0LWZvcm0gLnNsaWRlLWluIHsKICBvcGFjaXR5OiAxOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwp9Ci5lcnJvci1tc2cgewogIC13ZWJraXQtdHJhbnNpdGlvbjogbWF4LWhlaWdodCAwLjNzLCBvcGFjaXR5IDAuM3MgMHMgc3RlcHMoMTAsIGVuZCk7CiAgLW1vei10cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IDAuM3MsIG9wYWNpdHkgMC4zcyAwcyBzdGVwcygxMCwgZW5kKTsKICAtbXMtdHJhbnNpdGlvbjogbWF4LWhlaWdodCAwLjNzLCBvcGFjaXR5IDAuM3MgMHMgc3RlcHMoMTAsIGVuZCk7CiAgLW8tdHJhbnNpdGlvbjogbWF4LWhlaWdodCAwLjNzLCBvcGFjaXR5IDAuM3MgMHMgc3RlcHMoMTAsIGVuZCk7CiAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAwLjNzLCBvcGFjaXR5IDAuM3MgMHMgc3RlcHMoMTAsIGVuZCk7CiAgaGVpZ2h0OiBhdXRvOwogIG1heC1oZWlnaHQ6IDA7CiAgb3BhY2l0eTogMDsKfQouaGFzLWVycm9yIC5lcnJvci1tc2cgewogIG1heC1oZWlnaHQ6IDMuNWVtOwogIG1hcmdpbi10b3A6IDEwcHg7CiAgbWFyZ2luLWJvdHRvbTogMTBweDsKICBvcGFjaXR5OiAxOwogIHZpc2liaWxpdHk6IHZpc2libGU7Cn0KLmJhY2stYXJyb3cgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB0b3A6IDM3cHg7CiAgd2lkdGg6IDI0cHg7CiAgaGVpZ2h0OiAyNHB4OwogIGRpc3BsYXk6IG5vbmU7CiAgY3Vyc29yOiBwb2ludGVyOwp9Ci5zaGlmdC1mb3JtLmJhY2stYXJyb3cgewogIGRpc3BsYXk6IGJsb2NrOwp9CiNsaW5rLXNpZ251cCB7CiAgdGV4dC1hbGlnbjogY2VudGVyOwogIGZvbnQtc2l6ZTogMTRweDsKfQouc2hpZnQtZm9ybSAjbGluay1zaWdudXB7CiAgZGlzcGxheTogbm9uZTsKfQojbGluay1zaWduaW4tZGlmZmVyZW50IHsKICBkaXNwbGF5OiBub25lOwogIHRleHQtYWxpZ246IGNlbnRlcjsKICBmb250LXNpemU6IDE0cHg7Cn0KLnNoaWZ0LWZvcm0gI2xpbmstc2lnbmluLWRpZmZlcmVudCB7CiAgZGlzcGxheTogYmxvY2s7Cn0KLnNpZ25pbi1jYXJkICNwcm9maWxlLW5hbWUgewogIGZvbnQtc2l6ZTogMTZweDsKICBmb250LXdlaWdodDogYm9sZDsKICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgbWFyZ2luOiAwOwogIG1pbi1oZWlnaHQ6IDFlbTsKfQouc2lnbmluLWNhcmQubm8tbmFtZSAjcHJvZmlsZS1uYW1lIHsKICBkaXNwbGF5OiBub25lOwp9Ci5zaWduaW4tY2FyZC5uby1uYW1lICNlbWFpbC1kaXNwbGF5IHsKICBsaW5lLWhlaWdodDogaW5pdGlhbDsKICBtYXJnaW4tYm90dG9tOiAxNnB4Owp9Ci5zaWduaW4tY2FyZCAjZW1haWwtZGlzcGxheSB7CiAgZGlzcGxheTogYmxvY2s7CiAgcGFkZGluZzogMHB4IDhweDsKICBjb2xvcjogcmdiKDY0LCA2NCwgNjQpOwogIGxpbmUtaGVpZ2h0OiAyOwogIG1hcmdpbi1ib3R0b206IDEwcHg7CiAgZm9udC1zaXplOiAxNHB4OwogIHRleHQtYWxpZ246IGNlbnRlcjsKICBvdmVyZmxvdzogaGlkZGVuOwogIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOwogIHdoaXRlLXNwYWNlOiBub3dyYXA7CiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94OwogIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDsKICBib3gtc2l6aW5nOiBib3JkZXItYm94Owp9Ci5zaWduaW4tY2FyZCAjRW1haWwgewogIG1hcmdpbi10b3A6IDE2cHg7Cn0KLm5lZWQtaGVscCB7CiAgZmxvYXQ6IHJpZ2h0OwogIHRleHQtYWxpZ246IHJpZ2h0Owp9Ci5mb3JtLXBhbmVsIHsKICB3aWR0aDogMjc0cHg7Cn0KI2dhaWFfZmlyc3Rmb3JtIHsKICB6LWluZGV4OiAyOwp9Ci5zaWduaW4tY2FyZCB7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIG92ZXJmbG93OiBoaWRkZW47Cn0KLnNpZ25pbi1jYXJkICNwcm9maWxlLW5hbWUgewogIGNvbG9yOiAjMDAwOwp9Ci5jaXJjbGUtbWFzayB7CiAgZGlzcGxheTogYmxvY2s7CiAgaGVpZ2h0OiA5NnB4OwogIHdpZHRoOiA5NnB4OwogIG92ZXJmbG93OiBoaWRkZW47CiAgYm9yZGVyLXJhZGl1czogNTAlOwogIG1hcmdpbi1sZWZ0OiBhdXRvOwogIG1hcmdpbi1yaWdodDogYXV0bzsKICB6LWluZGV4OiAxMDA7CiAgbWFyZ2luLWJvdHRvbTogMTBweDsKICBiYWNrZ3JvdW5kLXNpemU6IDk2cHg7CiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsKICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaHR0cHM6Ly9zc2wuZ3N0YXRpYy5jb20vYWNjb3VudHMvdWkvYXZhdGFyXzJ4LnBuZyk7CiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMDc1czsKICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgMC4wNzVzOwogIC1tcy10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMDc1czsKICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMDc1czsKICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMDc1czsKfQouY2lyY2xlIHsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IC13ZWJraXQtdHJhbnNmb3JtOwogIC1tb3otdHJhbnNpdGlvbi1wcm9wZXJ0eTogLW1vei10cmFuc2Zvcm07CiAgLW1zLXRyYW5zaXRpb24tcHJvcGVydHk6IC1tcy10cmFuc2Zvcm07CiAgLW8tdHJhbnNpdGlvbi1wcm9wZXJ0eTogLW8tdHJhbnNmb3JtOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjY0NSwuMDQ1LC4zNTUsMSk7CiAgLW1vei10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC42NDUsLjA0NSwuMzU1LDEpOwogIC1tcy10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC42NDUsLjA0NSwuMzU1LDEpOwogIC1vLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjY0NSwuMDQ1LC4zNTUsMSk7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguNjQ1LC4wNDUsLjM1NSwxKTsKfQouY2lyY2xlIHsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgei1pbmRleDogMTAxOwogIGhlaWdodDogOTZweDsKICB3aWR0aDogOTZweDsKICBib3JkZXItcmFkaXVzOiA1MCU7CiAgb3BhY2l0eTogMC45OTsKICBvdmVyZmxvdzogaGlkZGVuOwogIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7CiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjsKfQoubWFpbiB7CiAgb3ZlcmZsb3c6IGhpZGRlbjsKfQouY2FyZC1tYXNrLXdyYXAgewogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICB3aWR0aDogMzYwcHg7CiAgbWFyZ2luOiAwIGF1dG87CiAgei1pbmRleDogMTsKICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzOwogIC1tb3otdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXM7CiAgLW1zLXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzOwogIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzOwogIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0yNjNweAosIDApOwogIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0yNjNweAosIDApOwogIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTI2M3B4CiwgMCk7CiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0yNjNweAosIDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwKICAtMjYzcHgKLCAwKTsKOwp9Ci5jYXJkLW1hc2std3JhcC5oYXMtY2FwdGNoYSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTEyM3B4CiwgMCk7CiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTEyM3B4CiwgMCk7CiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwKICAtMTIzcHgKLCAwKTsKICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTEyM3B4CiwgMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0xMjNweAosIDApOwo7Cn0KLmNhcmQtbWFzay13cmFwLmhhcy1lcnJvciB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTIyM3B4CiwgMCk7CiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTIyM3B4CiwgMCk7CiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwKICAtMjIzcHgKLCAwKTsKICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTIyM3B4CiwgMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0yMjNweAosIDApOwo7Cn0KLmNhcmQtbWFzay13cmFwLmhhcy1jYXB0Y2hhLmhhcy1lcnJvciB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTgzcHgKLCAwKTsKICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwKICAtODNweAosIDApOwogIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTgzcHgKLCAwKTsKICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTgzcHgKLCAwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTgzcHgKLCAwKTsKOwp9Ci5zaGlmdC1mb3JtLmNhcmQtbWFzay13cmFwIHsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwKICAtMjIycHgKLCAwKTsKICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwKICAtMjIycHgKLCAwKTsKICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0yMjJweAosIDApOwogIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwKICAtMjIycHgKLCAwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTIyMnB4CiwgMCk7CjsKfQouaGFzLWVycm9yLnNoaWZ0LWZvcm0uY2FyZC1tYXNrLXdyYXAgewogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0xODJweAosIDApOwogIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0xODJweAosIDApOwogIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTE4MnB4CiwgMCk7CiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0xODJweAosIDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwKICAtMTgycHgKLCAwKTsKOwp9Ci5zaGlmdC1mb3JtLmNhcmQtbWFzay13cmFwLm5vLW5hbWUgewogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0yNDJweAosIDApOwogIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0yNDJweAosIDApOwogIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTI0MnB4CiwgMCk7CiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0yNDJweAosIDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwKICAtMjQycHgKLCAwKTsKOwp9Ci5oYXMtZXJyb3Iuc2hpZnQtZm9ybS5jYXJkLW1hc2std3JhcC5uby1uYW1lIHsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwKICAtMjAycHgKLCAwKTsKICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwKICAtMjAycHgKLCAwKTsKICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0yMDJweAosIDApOwogIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwKICAtMjAycHgKLCAwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTIwMnB4CiwgMCk7CjsKfQouaGFzLWNhcHRjaGEuc2hpZnQtZm9ybS5jYXJkLW1hc2std3JhcCB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTU3cHgKLCAwKTsKICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwKICAtNTdweAosIDApOwogIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTU3cHgKLCAwKTsKICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTU3cHgKLCAwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTU3cHgKLCAwKTsKOwp9Ci5oYXMtY2FwdGNoYS5zaGlmdC1mb3JtLmNhcmQtbWFzay13cmFwLm5vLW5hbWUgewogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC03N3B4CiwgMCk7CiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTc3cHgKLCAwKTsKICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC03N3B4CiwgMCk7CiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC03N3B4CiwgMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC03N3B4CiwgMCk7CjsKfQouaGFzLWNhcHRjaGEuc2hpZnQtZm9ybS5jYXJkLW1hc2std3JhcC5oYXMtZXJyb3IgewogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0xN3B4CiwgMCk7CiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTE3cHgKLCAwKTsKICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0xN3B4CiwgMCk7CiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0xN3B4CiwgMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0xN3B4CiwgMCk7CjsKfQouaGFzLWNhcHRjaGEuc2hpZnQtZm9ybS5jYXJkLW1hc2std3JhcC5oYXMtZXJyb3Iubm8tbmFtZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTM3cHgKLCAwKTsKICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwKICAtMzdweAosIDApOwogIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTM3cHgKLCAwKTsKICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTM3cHgKLCAwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTM3cHgKLCAwKTsKOwp9Ci5tYWluLWNvbnRlbnQgewogIGhlaWdodDogNDUwcHg7CjsKfQoubWFpbi1jb250ZW50Lmhhcy1jYXB0Y2hhIHsKICBoZWlnaHQ6IDU5MHB4Owo7Cn0KLm1haW4tY29udGVudC5oYXMtZXJyb3IgewogIGhlaWdodDogNDkwcHg7CjsKfQoubWFpbi1jb250ZW50Lmhhcy1jYXB0Y2hhLmhhcy1lcnJvciB7CiAgaGVpZ2h0OiA2MzBweDsKOwp9Ci5zaGlmdC1mb3JtLm1haW4tY29udGVudCB7CiAgaGVpZ2h0OiA0OTFweDsKOwp9Ci5oYXMtZXJyb3Iuc2hpZnQtZm9ybS5tYWluLWNvbnRlbnQgewogIGhlaWdodDogNTMxcHg7CjsKfQouc2hpZnQtZm9ybS5tYWluLWNvbnRlbnQubm8tbmFtZSB7CiAgaGVpZ2h0OiA0NzFweDsKOwp9Ci5oYXMtZXJyb3Iuc2hpZnQtZm9ybS5tYWluLWNvbnRlbnQubm8tbmFtZSB7CiAgaGVpZ2h0OiA1MTFweDsKOwp9Ci5oYXMtY2FwdGNoYS5zaGlmdC1mb3JtLm1haW4tY29udGVudCB7CiAgaGVpZ2h0OiA2NTZweDsKOwp9Ci5oYXMtY2FwdGNoYS5zaGlmdC1mb3JtLm1haW4tY29udGVudC5uby1uYW1lIHsKICBoZWlnaHQ6IDYzNnB4Owo7Cn0KLmhhcy1jYXB0Y2hhLnNoaWZ0LWZvcm0ubWFpbi1jb250ZW50Lmhhcy1lcnJvciB7CiAgaGVpZ2h0OiA2OTZweDsKOwp9Ci5oYXMtY2FwdGNoYS5zaGlmdC1mb3JtLm1haW4tY29udGVudC5oYXMtZXJyb3Iubm8tbmFtZSB7CiAgaGVpZ2h0OiA2NzZweDsKOwp9Ci5jYXJkLW1hc2sgewogIGJhY2tncm91bmQtY29sb3I6ICNmZmY7CiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDA7CiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsKICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFXZ0FBQUFHQ0FJQUFBQmhEcE1jQUFBQUJtSkxSMFFBL3dEL0FQK2d2YWVUQUFBQUNYQklXWE1BQUFzVEFBQUxFd0VBbXB3WUFBQUFCM1JKVFVVSDNna2VGeGtzNllmbExBQUFBS2xKUkVGVVdNUHQyQ0VTaERBTWhlR21NQ0ZWMU1IOXo4TXRhckM0UUtmTml1d3dPeXhIZUo5cjZpSitFVEt6M3Z1KzcvTThEOE1RQUFEZXROYU80MWpYTmNZWWZVUkVwWlJhSzdZREFQOXFyYVVVSXZMbjZOVmc1dDc3dG0ycWFtWllFd0RjaUVoRWxtVmhabS9INkI4cHBaeHpDT0U4VDRRREFCN2htS1lwNTV4UytrNDhFNjAxVlZYVjY3b1FEZ0I0aElPWlJVUkUvQkpLdjVrd00xUURBRjdiY1I4NFFnZ2Y0U2hIb3ZVL29nY0FBQUFBU1VWT1JLNUNZSUk9KTsKICBtaW4taGVpZ2h0OiAzMDBweDsKfQouY2FyZCB7CiAgbWFyZ2luLWJvdHRvbTogMDsKfQouc2lnbmluLWNhcmQgewogIGhlaWdodDogNTAwcHg7Cn0KLm9uZS1nb29nbGUgewogIHBhZGRpbmctdG9wOiAyN3B4Owp9CiNjYW52YXMgewogIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjA3NXM7CiAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMDc1czsKICAtbXMtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjA3NXM7CiAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSAwLjA3NXM7CiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjA3NXM7CiAgb3BhY2l0eTogMC4wMTsKfQouc2hpZnQtZm9ybSAjY2FudmFzIHsKICBvcGFjaXR5OiAwLjk5Owp9Ci5sYWJlbCB7CiAgY29sb3I6ICM0MDQwNDA7Cn0KI2FjY291bnQtY2hvb3Nlci1saW5rIHsKICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4zczsKICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgMC4zczsKICAtbXMtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzOwogIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgMC4zczsKICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3M7Cn0KLmlucHV0LXdyYXBwZXIgewogIHBvc2l0aW9uOiByZWxhdGl2ZTsKfQouZ29vZ2xlLWZvb3Rlci1iYXIgewogIHotaW5kZXg6IDI7Cn0KLnByb2ZpbGUtdG9vbHRpcCB7CiAgZGlzcGxheTogbm9uZTsKfQouamZrLWJ1YmJsZSB7CiAgbWF4LXdpZHRoOiAzMDBweDsKfQo8L3N0eWxlPgo8c3R5bGUgbWVkaWE9IiI+Ci5iYWNrLWFycm93IHsKICB0b3A6IDE3cHg7Cn0KLmNpcmNsZS1tYXNrIHsKICBoZWlnaHQ6IDcycHg7CiAgd2lkdGg6IDcycHg7CiAgYmFja2dyb3VuZC1zaXplOiA3MnB4Owp9Ci5jaXJjbGUgewogIGhlaWdodDogNzJweDsKICB3aWR0aDogNzJweDsKfQojY2FudmFzIHsKICBoZWlnaHQ6IDcycHg7CiAgd2lkdGg6IDcycHg7Cn0KLmZvcm0tcGFuZWwgewogIHdpZHRoOiAyNTZweDsKfQouY2FyZC1tYXNrIHsKICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFTNEFBQUFHQ0FJQUFBRHlxdVQ3QUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUF5SnBWRmgwV0UxTU9tTnZiUzVoWkc5aVpTNTRiWEFBQUFBQUFEdy9lSEJoWTJ0bGRDQmlaV2RwYmowaTc3dS9JaUJwWkQwaVZ6Vk5NRTF3UTJWb2FVaDZjbVZUZWs1VVkzcHJZemxrSWo4K0lEeDRPbmh0Y0cxbGRHRWdlRzFzYm5NNmVEMGlZV1J2WW1VNmJuTTZiV1YwWVM4aUlIZzZlRzF3ZEdzOUlrRmtiMkpsSUZoTlVDQkRiM0psSURVdU1DMWpNRFl4SURZMExqRTBNRGswT1N3Z01qQXhNQzh4TWk4d055MHhNRG8xTnpvd01TQWdJQ0FnSUNBZ0lqNGdQSEprWmpwU1JFWWdlRzFzYm5NNmNtUm1QU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh4T1RrNUx6QXlMekl5TFhKa1ppMXplVzUwWVhndGJuTWpJajRnUEhKa1pqcEVaWE5qY21sd2RHbHZiaUJ5WkdZNllXSnZkWFE5SWlJZ2VHMXNibk02ZUcxd1BTSm9kSFJ3T2k4dmJuTXVZV1J2WW1VdVkyOXRMM2hoY0M4eExqQXZJaUI0Yld4dWN6cDRiWEJOVFQwaWFIUjBjRG92TDI1ekxtRmtiMkpsTG1OdmJTOTRZWEF2TVM0d0wyMXRMeUlnZUcxc2JuTTZjM1JTWldZOUltaDBkSEE2THk5dWN5NWhaRzlpWlM1amIyMHZlR0Z3THpFdU1DOXpWSGx3WlM5U1pYTnZkWEpqWlZKbFppTWlJSGh0Y0RwRGNtVmhkRzl5Vkc5dmJEMGlRV1J2WW1VZ1VHaHZkRzl6YUc5d0lFTlROUzR4SUZkcGJtUnZkM01pSUhodGNFMU5Pa2x1YzNSaGJtTmxTVVE5SW5odGNDNXBhV1E2UkRjeU1qTXlRME5GT0RnNE1URkZORUV6UmtVNVJEVkVSVFV3UlVRNU9UQWlJSGh0Y0UxTk9rUnZZM1Z0Wlc1MFNVUTlJbmh0Y0M1a2FXUTZSRGN5TWpNeVEwUkZPRGc0TVRGRk5FRXpSa1U1UkRWRVJUVXdSVVE1T1RBaVBpQThlRzF3VFUwNlJHVnlhWFpsWkVaeWIyMGdjM1JTWldZNmFXNXpkR0Z1WTJWSlJEMGllRzF3TG1scFpEcEVOekl5TXpKRFFVVTRPRGd4TVVVMFFUTkdSVGxFTlVSRk5UQkZSRGs1TUNJZ2MzUlNaV1k2Wkc5amRXMWxiblJKUkQwaWVHMXdMbVJwWkRwRU56SXlNekpEUWtVNE9EZ3hNVVUwUVROR1JUbEVOVVJGTlRCRlJEazVNQ0l2UGlBOEwzSmtaanBFWlhOamNtbHdkR2x2Ymo0Z1BDOXlaR1k2VWtSR1BpQThMM2c2ZUcxd2JXVjBZVDRnUEQ5NGNHRmphMlYwSUdWdVpEMGljaUkvUHFHQ2MrTUFBQUNuU1VSQlZIamE3Tmc3RG9RZ0ZJWGhZVEFLRlhTNi8vVzRDeHRhT2g0QjVzUTdtY3dHcERwZnBkamQ1TTlWMVJpajl4NUNjTTVwclY5RU5FdHJMY1o0SE1jYjVFZ3BkVjFYclpYVElab0R1U0U2cENlM2kzUzRyaXQyNDNtZUtTWHNTWTZKNkZHSXpoaXo3enZTa3hvWGVXQ3Q5ZDdqSXVmTUZJa21wTGh0RzZKRGV0OFRDUS92ck9sV1NtR0tSQk5TeEQ0ME4vbEhvLzdER3plT2lXaE9qYjhQUmZnSU1BQWFZRWVpdDZ0a0t3QUFBQUJKUlU1RXJrSmdnZz09KTsKfQouY2FyZC1tYXNrLXdyYXAgewogIHdpZHRoOiAzMDBweDsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwKICAtMjg4cHgKLCAwKTsKICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwKICAtMjg4cHgKLCAwKTsKICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0yODhweAosIDApOwogIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwKICAtMjg4cHgKLCAwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTI4OHB4CiwgMCk7CjsKfQouY2FyZC1tYXNrLXdyYXAuaGFzLWNhcHRjaGEgewogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0xNDhweAosIDApOwogIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0xNDhweAosIDApOwogIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTE0OHB4CiwgMCk7CiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0xNDhweAosIDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwKICAtMTQ4cHgKLCAwKTsKOwp9Ci5jYXJkLW1hc2std3JhcC5oYXMtZXJyb3IgewogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0yNDhweAosIDApOwogIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0yNDhweAosIDApOwogIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTI0OHB4CiwgMCk7CiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0yNDhweAosIDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwKICAtMjQ4cHgKLCAwKTsKOwp9Ci5jYXJkLW1hc2std3JhcC5oYXMtY2FwdGNoYS5oYXMtZXJyb3IgewogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0xMDhweAosIDApOwogIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0xMDhweAosIDApOwogIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTEwOHB4CiwgMCk7CiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0xMDhweAosIDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwKICAtMTA4cHgKLCAwKTsKOwp9Ci5zaGlmdC1mb3JtLmNhcmQtbWFzay13cmFwIHsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwKICAtMjQ3cHgKLCAwKTsKICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwKICAtMjQ3cHgKLCAwKTsKICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0yNDdweAosIDApOwogIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwKICAtMjQ3cHgKLCAwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTI0N3B4CiwgMCk7CjsKfQouaGFzLWVycm9yLnNoaWZ0LWZvcm0uY2FyZC1tYXNrLXdyYXAgewogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0yMDdweAosIDApOwogIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0yMDdweAosIDApOwogIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTIwN3B4CiwgMCk7CiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0yMDdweAosIDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwKICAtMjA3cHgKLCAwKTsKOwp9Ci5zaGlmdC1mb3JtLmNhcmQtbWFzay13cmFwLm5vLW5hbWUgewogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0yNjdweAosIDApOwogIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0yNjdweAosIDApOwogIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTI2N3B4CiwgMCk7CiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0yNjdweAosIDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwKICAtMjY3cHgKLCAwKTsKOwp9Ci5oYXMtZXJyb3Iuc2hpZnQtZm9ybS5jYXJkLW1hc2std3JhcC5uby1uYW1lIHsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwKICAtMjI3cHgKLCAwKTsKICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwKICAtMjI3cHgKLCAwKTsKICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0yMjdweAosIDApOwogIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwKICAtMjI3cHgKLCAwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTIyN3B4CiwgMCk7CjsKfQouaGFzLWNhcHRjaGEuc2hpZnQtZm9ybS5jYXJkLW1hc2std3JhcCB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTgycHgKLCAwKTsKICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwKICAtODJweAosIDApOwogIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTgycHgKLCAwKTsKICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTgycHgKLCAwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTgycHgKLCAwKTsKOwp9Ci5oYXMtY2FwdGNoYS5zaGlmdC1mb3JtLmNhcmQtbWFzay13cmFwLm5vLW5hbWUgewogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0xMDJweAosIDApOwogIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0xMDJweAosIDApOwogIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTEwMnB4CiwgMCk7CiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC0xMDJweAosIDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwKICAtMTAycHgKLCAwKTsKOwp9Ci5oYXMtY2FwdGNoYS5zaGlmdC1mb3JtLmNhcmQtbWFzay13cmFwLmhhcy1lcnJvciB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTQycHgKLCAwKTsKICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwKICAtNDJweAosIDApOwogIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTQycHgKLCAwKTsKICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTQycHgKLCAwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsCiAgLTQycHgKLCAwKTsKOwp9Ci5oYXMtY2FwdGNoYS5zaGlmdC1mb3JtLmNhcmQtbWFzay13cmFwLmhhcy1lcnJvci5uby1uYW1lIHsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwKICAtNjJweAosIDApOwogIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLAogIC02MnB4CiwgMCk7CiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwKICAtNjJweAosIDApOwogIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwKICAtNjJweAosIDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwKICAtNjJweAosIDApOwo7Cn0KLm1haW4tY29udGVudCB7CiAgaGVpZ2h0OiAzNTBweDsKOwp9Ci5tYWluLWNvbnRlbnQuaGFzLWNhcHRjaGEgewogIGhlaWdodDogNDkwcHg7CjsKfQoubWFpbi1jb250ZW50Lmhhcy1lcnJvciB7CiAgaGVpZ2h0OiAzOTBweDsKOwp9Ci5tYWluLWNvbnRlbnQuaGFzLWNhcHRjaGEuaGFzLWVycm9yIHsKICBoZWlnaHQ6IDUzMHB4Owo7Cn0KLnNoaWZ0LWZvcm0ubWFpbi1jb250ZW50IHsKICBoZWlnaHQ6IDM5MXB4Owo7Cn0KLmhhcy1lcnJvci5zaGlmdC1mb3JtLm1haW4tY29udGVudCB7CiAgaGVpZ2h0OiA0MzFweDsKOwp9Ci5zaGlmdC1mb3JtLm1haW4tY29udGVudC5uby1uYW1lIHsKICBoZWlnaHQ6IDM3MXB4Owo7Cn0KLmhhcy1lcnJvci5zaGlmdC1mb3JtLm1haW4tY29udGVudC5uby1uYW1lIHsKICBoZWlnaHQ6IDQxMXB4Owo7Cn0KLmhhcy1jYXB0Y2hhLnNoaWZ0LWZvcm0ubWFpbi1jb250ZW50IHsKICBoZWlnaHQ6IDU1NnB4Owo7Cn0KLmhhcy1jYXB0Y2hhLnNoaWZ0LWZvcm0ubWFpbi1jb250ZW50Lm5vLW5hbWUgewogIGhlaWdodDogNTM2cHg7CjsKfQouaGFzLWNhcHRjaGEuc2hpZnQtZm9ybS5tYWluLWNvbnRlbnQuaGFzLWVycm9yIHsKICBoZWlnaHQ6IDU5NnB4Owo7Cn0KLmhhcy1jYXB0Y2hhLnNoaWZ0LWZvcm0ubWFpbi1jb250ZW50Lmhhcy1lcnJvci5uby1uYW1lIHsKICBoZWlnaHQ6IDU3NnB4Owo7Cn0KLnNpZ25pbi1jYXJkIHsKICB3aWR0aDogMjU2cHg7Cn0KLnNpZ25pbi1jYXJkICNFbWFpbEZpcnN0IHsKICBtYXJnaW4tdG9wOiAxNXB4Owp9Ci5vbmUtZ29vZ2xlIHsKICBwYWRkaW5nLXRvcDogMjJweDsKfQo8L3N0eWxlPgogIDwvaGVhZD4KICA8Ym9keT4KICA8ZGl2IGNsYXNzPSJ3cmFwcGVyIj4KICA8ZGl2IGNsYXNzPSJnb29nbGUtaGVhZGVyLWJhciAgY2VudGVyZWQiPgogIDxkaXYgY2xhc3M9ImhlYWRlciBjb250ZW50IGNsZWFyZml4Ij4KICA8aW1nIHNyYz0iLy9zc2wuZ3N0YXRpYy5jb20vYWNjb3VudHMvdWkvbG9nb18yeC5wbmciIGNsYXNzPSJsb2dvIiBhbHQ9Ikdvb2dsZSIgLz4KICA8L2Rpdj4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJtYWluIGNvbnRlbnQgY2xlYXJmaXgiPgo8ZGl2IGNsYXNzPSJiYW5uZXIiPgogIDxoMj4KICBTaWduIGluIHdpdGggeW91ciBHb29nbGUgQWNjb3VudAogIDwvaDI+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJtYWluLWNvbnRlbnQgCiAgCiAgCiAgICBuby1uYW1lCiAgCiAgCiAgCiI+CjxkaXYgY2xhc3M9ImNhcmQgc2lnbmluLWNhcmQKICAKICAgIHByZS1zaGlmdAogIAogIAogIAogICBuby1uYW1lIj4KICA8ZGl2IGlkPSJjY19pZnJhbWVfcGFyZW50Ij48aWZyYW1lIHN0eWxlPSJ2aXNpYmlsaXR5OiBoaWRkZW47IHdpZHRoOiAxcHg7IGhlaWdodDogMXB4OyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogLTEwMHB4OyIgc3JjPSJodHRwczovL2FjY291bnRzLnlvdXR1YmUuY29tL2FjY291bnRzL0NoZWNrQ29ubmVjdGlvbj9wbXBvPWh0dHBzJTNBJTJGJTJGYWNjb3VudHMuZ29vZ2xlLmNvbSZhbXA7dj0tNTQzNDk3Mjk4JmFtcDt0aW1lc3RhbXA9MTQzNDMzODIxOTY0MCIgaWQ9InlvdXR1YmUiPjwvaWZyYW1lPjwvZGl2PgogIDxkaXYgc3R5bGU9IgogICAgICAKICAgICAgICAKICAgICAgIiBjbGFzcz0iY2lyY2xlLW1hc2siPgogIDxjYW52YXMgaGVpZ2h0PSI5NiIgd2lkdGg9Ijk2IiBjbGFzcz0iY2lyY2xlIiBpZD0iY2FudmFzIj48L2NhbnZhcz4KICA8L2Rpdj4KICA8Zm9ybSBpZD0iZ2FpYV9sb2dpbmZvcm0iIGFjdGlvbj0iaHR0cHM6Ly9hY2NvdW50cy5nb29nbGUuY29tL1NlcnZpY2VMb2dpbkF1dGgiIG1ldGhvZD0icG9zdCIgbm92YWxpZGF0ZT0iIj4KICA8aW5wdXQgdHlwZT0iaGlkZGVuIiB2YWx1ZT0iUGFzc3dvcmRTZXBhcmF0aW9uU2lnbkluIiBuYW1lPSJQYWdlIiAvPgogIDxpbnB1dCB0eXBlPSJoaWRkZW4iIHZhbHVlPSJSbXEzQVdURU9RSSIgbmFtZT0iR0FMWCIgLz4KICA8aW5wdXQgdHlwZT0iaGlkZGVuIiB2YWx1ZT0iaHR0cHM6Ly9hY2NvdW50cy5nb29nbGUuY29tL28vb2F1dGgyL2F1dGg/bWF4X2F1dGhfYWdlPTAmYW1wO3Njb3BlPWh0dHBzOi8vbWFpbC5nb29nbGUuY29tLyZhbXA7cmVzcG9uc2VfdHlwZT1jb2RlJmFtcDtyZWRpcmVjdF91cmk9aHR0cDovL2xvY2FsaG9zdCZhbXA7bG9naW5faGludD1Nb3pUcGVRQUBnbWFpbC5jb20mYW1wO2NsaWVudF9pZD02NzM4MTM3MDQ1MDctb2Vudmw2YW5pNGxtcm81djl2OTM0dDE4c21hYmwxMmUuYXBwcy5nb29nbGV1c2VyY29udGVudC5jb20mYW1wO2hsPXpoLVRXJmFtcDtmcm9tX2xvZ2luPTEmYW1wO2FzPS0yM2MzYjBiYTVhZGFjNTBjIiBuYW1lPSJjb250aW51ZSIgLz4KICA8aW5wdXQgdHlwZT0iaGlkZGVuIiB2YWx1ZT0iZW1iZWRkZWQiIG5hbWU9Imx0bXBsIiAvPgogIDxpbnB1dCB0eXBlPSJoaWRkZW4iIHZhbHVlPSIxIiBuYW1lPSJzY2MiIC8+CiAgPGlucHV0IHR5cGU9ImhpZGRlbiIgdmFsdWU9IjEiIG5hbWU9InNhcnAiIC8+CiAgPGlucHV0IHR5cGU9ImhpZGRlbiIgdmFsdWU9IjEiIG5hbWU9Im9hdXRoIiAvPgogIDxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9IkRpc3BsYXlOYW1lIiBpZD0iZGlzcGxheS1uYW1lLWlucHV0IiAvPgogIDxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9IlByb2ZpbGVQaG90byIgaWQ9InByb2ZpbGUtcGhvdG8taW5wdXQiIC8+CiAgPGlucHV0IHR5cGU9ImhpZGRlbiIgdmFsdWU9IiIgbmFtZT0iUHJvZmlsZUluZm9ybWF0aW9uIiBpZD0icHJvZmlsZS1pbmZvcm1hdGlvbiIgLz4KICA8aW5wdXQgdHlwZT0iaGlkZGVuIiB2YWx1ZT0i4piDIiBuYW1lPSJfdXRmOCIgaWQ9Il91dGY4IiAvPgogIDxpbnB1dCB0eXBlPSJoaWRkZW4iIHZhbHVlPSJqc19kaXNhYmxlZCIgaWQ9ImJncmVzcG9uc2UiIG5hbWU9ImJncmVzcG9uc2UiIC8+CiAgPGlucHV0IHR5cGU9ImhpZGRlbiIgdmFsdWU9IjEiIG5hbWU9InBzdE1zZyIgaWQ9InBzdE1zZyIgLz4KICA8aW5wdXQgdHlwZT0iaGlkZGVuIiB2YWx1ZT0iIiBuYW1lPSJkbkNvbm4iIGlkPSJkbkNvbm4iIC8+CiAgPGlucHV0IHR5cGU9ImhpZGRlbiIgdmFsdWU9InlvdXR1YmU6OTQ4OjEiIG5hbWU9ImNoZWNrQ29ubmVjdGlvbiIgaWQ9ImNoZWNrQ29ubmVjdGlvbiIgLz4KICA8aW5wdXQgdHlwZT0iaGlkZGVuIiB2YWx1ZT0ieW91dHViZSIgbmFtZT0iY2hlY2tlZERvbWFpbnMiIGlkPSJjaGVja2VkRG9tYWlucyIgLz4KICA8ZGl2IGlkPSJnYWlhX2ZpcnN0Zm9ybSIgY2xhc3M9ImZvcm0tcGFuZWwgZmlyc3QgdmFsaWQiPgogIDxkaXYgY2xhc3M9InNsaWRlLW91dCAiPgogIDxkaXYgY2xhc3M9ImlucHV0LXdyYXBwZXIgZm9jdXNlZCI+CiAgPGRpdiBpZD0iaWRlbnRpZmllci1zaG93biI+CiAgPGRpdj4KICA8bGFiZWwgZm9yPSJFbWFpbCIgY2xhc3M9ImhpZGRlbi1sYWJlbCI+CiAgRW50ZXIgeW91ciBlbWFpbDwvbGFiZWw+CiAgPGlucHV0IHR5cGU9ImVtYWlsIiBzcGVsbGNoZWNrPSJmYWxzZSIgdmFsdWU9IiIgcGxhY2Vob2xkZXI9IkVudGVyIHlvdXIgZW1haWwiIG5hbWU9IkVtYWlsIiBpZD0iRW1haWwiIC8+CiAgPGlucHV0IHR5cGU9InBhc3N3b3JkIiBjbGFzcz0iaGlkZGVuIiBzcGVsbGNoZWNrPSJmYWxzZSIgaWQ9IlBhc3N3ZC1oaWRkZW4iIC8+CiAgPC9kaXY+CiAgPC9kaXY+CiAgPHNwYW4gaWQ9ImVycm9ybXNnXzBfRW1haWwiIGNsYXNzPSJlcnJvci1tc2ciIHJvbGU9ImFsZXJ0Ij48L3NwYW4+CiAgPC9kaXY+CjxkaXYgaWQ9ImlkZW50aWZpZXItY2FwdGNoYSIgc3R5bGU9ImRpc3BsYXk6IG5vbmUiPgo8aW5wdXQgdHlwZT0iaGlkZGVuIiB2YWx1ZT0iIiBpZD0iaWRlbnRpZmllci10b2tlbiIgbmFtZT0iaWRlbnRpZmllcnRva2VuIiAvPgo8aW5wdXQgdHlwZT0iaGlkZGVuIiBpZD0iaWRlbnRpZmllci10b2tlbi1hdWRpbyIgbmFtZT0iaWRlbnRpZmllcnRva2VuX2F1ZGlvIiAvPgo8ZGl2IGNsYXNzPSJjYXB0Y2hhLWJveCI+CiAgPGRpdiBpZD0iY2FwdGNoYS1pbWciPgogIDxpbWcgYWx0PSJWaXN1YWwgdmVyaWZpY2F0aW9uIiBzcmM9IiIgLz4KICA8L2Rpdj4KICA8c3BhbiBjbGFzcz0iY2FwdGNoYS1tc2ciPgogIExldHRlcnMgYXJlIG5vdCBjYXNlLXNlbnNpdGl2ZQogIDwvc3Bhbj4KPC9kaXY+CjxsYWJlbCBjbGFzcz0iaGlkZGVuLWxhYmVsIiBmb3I9ImlkZW50aWZpZXItY2FwdGNoYS1pbnB1dCI+PC9sYWJlbD4KPGlucHV0IHR5cGU9InRleHQiIHRpdGxlPSJUeXBlIHRoZSBjaGFyYWN0ZXJzIHlvdSBzZWUgb3IgbnVtYmVycyB5b3UgaGVhciIgcGxhY2Vob2xkZXI9IkVudGVyIHRoZSBsZXR0ZXJzIGFib3ZlIiBjbGFzcz0iY2FwdGNoYSIgbmFtZT0iaWRlbnRpZmllci1jYXB0Y2hhLWlucHV0IiBpZD0iaWRlbnRpZmllci1jYXB0Y2hhLWlucHV0IiAvPgo8L2Rpdj4KPGlucHV0IHR5cGU9InN1Ym1pdCIgdmFsdWU9Ik5leHQiIGNsYXNzPSJyYy1idXR0b24gcmMtYnV0dG9uLXN1Ym1pdCIgbmFtZT0ic2lnbkluIiBpZD0ibmV4dCIgLz4KICA8YSBocmVmPSJodHRwczovL3d3dy5nb29nbGUuY29tL2FjY291bnRzL3JlY292ZXJ5P2hsPWVuIiBjbGFzcz0ibmVlZC1oZWxwIj4KICBOZWVkIGhlbHA/CiAgPC9hPgogIDwvZGl2PgogIDwvZGl2PgogIDxhIGhyZWY9Imh0dHBzOi8vYWNjb3VudHMuZ29vZ2xlLmNvbS9TZXJ2aWNlTG9naW5BdXRoIj4KICA8aW1nIHNyYz0iaHR0cHM6Ly93d3cuZ3N0YXRpYy5jb20vaW1hZ2VzL2ljb25zL21hdGVyaWFsL3N5c3RlbS8xeC9hcnJvd19iYWNrX2dyZXk2MDBfMjRkcC5wbmciIGFsdD0iQmFjayIgdGFiaW5kZXg9IjAiIHJvbGU9ImJ1dHRvbiIgYXJpYS1sYWJlbD0iQmFjayIgY2xhc3M9ImJhY2stYXJyb3cgIiBpZD0iYmFjay1hcnJvdyIgLz4KICA8L2E+CiAgPGRpdiBjbGFzcz0iZm9ybS1wYW5lbCBzZWNvbmQiPgogIDxkaXYgY2xhc3M9InNsaWRlLWluIGhpZGUtZm9ybSI+CiAgPGRpdj4KICA8cCBpZD0icHJvZmlsZS1uYW1lIj48L3A+CiAgPHNwYW4gaWQ9ImVtYWlsLWRpc3BsYXkiPjwvc3Bhbj4KICA8L2Rpdj4KICA8ZGl2PgogIDxkaXYgaWQ9InBhc3N3b3JkLXNob3duIj48L2Rpdj4KICA8L2Rpdj4KPGlucHV0IHR5cGU9InN1Ym1pdCIgdmFsdWU9IlNpZ24gaW4iIGNsYXNzPSJyYy1idXR0b24gcmMtYnV0dG9uLXN1Ym1pdCIgbmFtZT0ic2lnbkluIiBpZD0ic2lnbkluIiAvPgogIDxpbnB1dCB0eXBlPSJoaWRkZW4iIHZhbHVlPSJ5ZXMiIG5hbWU9IlBlcnNpc3RlbnRDb29raWUiIC8+CiAgPGEgaHJlZj0iIiBjbGFzcz0ibmVlZC1oZWxwIiBpZD0ibGluay1mb3Jnb3QtcGFzc3dkIj4KICBGb3Jnb3QgcGFzc3dvcmQ/CiAgPC9hPgogIDwvZGl2PgogIDxzcGFuIGNsYXNzPSJlcnJvci1tc2ciIHJvbGU9ImFsZXJ0IiBzdHlsZT0iZGlzcGxheTogbm9uZSIgaWQ9ImluZ2UiPgogIFNvcnJ5LCBHb29nbGUgZG9lc24ndCByZWNvZ25pemUgdGhhdCBlbWFpbC4gPGEgaHJlZj0iaHR0cHM6Ly9hY2NvdW50cy5nb29nbGUuY29tL1NpZ25VcFdpdGhvdXRHbWFpbD9FbWFpbEFkZHJlc3M9Ij5DcmVhdGUgYW4gYWNjb3VudDwvYT4gdXNpbmcgdGhhdCBhZGRyZXNzPwogIDwvc3Bhbj4KICA8L2Rpdj4KICA8L2Zvcm0+CjwvZGl2PgogIDxkaXYgY2xhc3M9ImNhcmQtbWFzay13cmFwCiAgICAKICAgICAgICAKICAgICBuby1uYW1lIj4KICA8ZGl2IGNsYXNzPSJjYXJkLW1hc2siPgogIDxkaXYgY2xhc3M9Im9uZS1nb29nbGUiPgogIDxwIGNsYXNzPSJjcmVhdGUtYWNjb3VudCI+CiAgPHNwYW4gaWQ9Imxpbmstc2lnbmluLWRpZmZlcmVudCI+CiAgPGEgaHJlZj0iaHR0cHM6Ly9hY2NvdW50cy5nb29nbGUuY29tL0FjY291bnRDaG9vc2VyP2NvbnRpbnVlPWh0dHBzJTNBJTJGJTJGYWNjb3VudHMuZ29vZ2xlLmNvbSUyRm8lMkZvYXV0aDIlMkZhdXRoJTNGbWF4X2F1dGhfYWdlJTNEMCUyNnNjb3BlJTNEaHR0cHMlM0ElMkYlMkZtYWlsLmdvb2dsZS5jb20lMkYlMjZyZXNwb25zZV90eXBlJTNEY29kZSUyNnJlZGlyZWN0X3VyaSUzRGh0dHAlM0ElMkYlMkZsb2NhbGhvc3QlMjZsb2dpbl9oaW50JTNETW96VHBlUUElNDBnbWFpbC5jb20lMjZjbGllbnRfaWQlM0Q2NzM4MTM3MDQ1MDctb2Vudmw2YW5pNGxtcm81djl2OTM0dDE4c21hYmwxMmUuYXBwcy5nb29nbGV1c2VyY29udGVudC5jb20lMjZobCUzRHpoLVRXJTI2ZnJvbV9sb2dpbiUzRDElMjZhcyUzRC0yM2MzYjBiYTVhZGFjNTBjJmFtcDtobD1lbiZhbXA7c2NjPTEiPgogIFNpZ24gaW4gd2l0aCBhIGRpZmZlcmVudCBhY2NvdW50CiAgPC9hPgogIDwvc3Bhbj4KICA8c3BhbiBpZD0ibGluay1zaWdudXAiPgogIDxhIGhyZWY9Imh0dHBzOi8vYWNjb3VudHMuZ29vZ2xlLmNvbS9TaWduVXA/Y29udGludWU9aHR0cHMlM0ElMkYlMkZhY2NvdW50cy5nb29nbGUuY29tJTJGbyUyRm9hdXRoMiUyRmF1dGglM0ZtYXhfYXV0aF9hZ2UlM0QwJTI2c2NvcGUlM0RodHRwcyUzQSUyRiUyRm1haWwuZ29vZ2xlLmNvbSUyRiUyNnJlc3BvbnNlX3R5cGUlM0Rjb2RlJTI2cmVkaXJlY3RfdXJpJTNEaHR0cCUzQSUyRiUyRmxvY2FsaG9zdCUyNmxvZ2luX2hpbnQlM0RNb3pUcGVRQSU0MGdtYWlsLmNvbSUyNmNsaWVudF9pZCUzRDY3MzgxMzcwNDUwNy1vZW52bDZhbmk0bG1ybzV2OXY5MzR0MThzbWFibDEyZS5hcHBzLmdvb2dsZXVzZXJjb250ZW50LmNvbSUyNmhsJTNEemgtVFclMjZmcm9tX2xvZ2luJTNEMSUyNmFzJTNELTIzYzNiMGJhNWFkYWM1MGMmYW1wO2x0bXBsPWVtYmVkZGVkIj4KICBDcmVhdGUgYWNjb3VudAogIDwvYT4KICA8L3NwYW4+CiAgPC9wPgo8cCBjbGFzcz0idGFnbGluZSI+CiAgT25lIEdvb2dsZSBBY2NvdW50IGZvciBldmVyeXRoaW5nIEdvb2dsZQo8L3A+CjxpbWcgaGVpZ2h0PSIxNyIgd2lkdGg9IjIxMCIgYWx0PSIiIHNyYz0iLy9zc2wuZ3N0YXRpYy5jb20vYWNjb3VudHMvdWkvbG9nb19zdHJpcF8yeC5wbmciIC8+CiAgPC9kaXY+CiAgPC9kaXY+CiAgPC9kaXY+CjwvZGl2PgogIDwvZGl2PgogIDxkaXYgY2xhc3M9Imdvb2dsZS1mb290ZXItYmFyIj4KICA8ZGl2IGNsYXNzPSJmb290ZXIgY29udGVudCBjbGVhcmZpeCI+CiAgPHVsIGlkPSJmb290ZXItbGlzdCI+CiAgPGxpPgogIEdvb2dsZQogIDwvbGk+CiAgPGxpPgogIDxhIGhyZWY9Imh0dHBzOi8vd3d3Lmdvb2dsZS5jb20vaW50bC9lbi9wb2xpY2llcy9wcml2YWN5L2VtYmVkZGVkLyI+CiAgUHJpdmFjeQogIDwvYT4KICA8L2xpPgogIDxsaT4KICA8YSBocmVmPSJodHRwczovL3d3dy5nb29nbGUuY29tL2ludGwvZW4vcG9saWNpZXMvdGVybXMvZW1iZWRkZWQvIj4KICBUZXJtcwogIDwvYT4KICA8L2xpPgogIDwvdWw+CiAgPC9kaXY+CjwvZGl2PgogIDwvZGl2Pgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CiAgdmFyIGdhaWFfYXR0YWNoRXZlbnQgPSBmdW5jdGlvbihlbGVtZW50LCBldmVudCwgY2FsbGJhY2spIHsKICBpZiAoZWxlbWVudC5hZGRFdmVudExpc3RlbmVyKSB7CiAgZWxlbWVudC5hZGRFdmVudExpc3RlbmVyKGV2ZW50LCBjYWxsYmFjaywgZmFsc2UpOwogIH0gZWxzZSBpZiAoZWxlbWVudC5hdHRhY2hFdmVudCkgewogIGVsZW1lbnQuYXR0YWNoRXZlbnQoJ29uJyArIGV2ZW50LCBjYWxsYmFjayk7CiAgfQogIH07CiAgKGZ1bmN0aW9uKCkgewogIHZhciBnYWlhX2hpZGVOYXZCYXIgPSBmdW5jdGlvbigpIHsKICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogIHdpbmRvdy5zY3JvbGxUbygwLCAxKTsKICB9LCAwKTsKICB9OwogIGdhaWFfYXR0YWNoRXZlbnQod2luZG93LCAnbG9hZCcsIGdhaWFfaGlkZU5hdkJhcik7CiAgfSkoKTsKPC9zY3JpcHQ+CiAgPHNjcmlwdD52YXIgRyxHYj1mdW5jdGlvbihhLGIpe3ZhciBjPWE7YSZhbXA7JmFtcDsic3RyaW5nIj09dHlwZW9mIGEmYW1wOyZhbXA7KGM9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoYSkpO2lmKGImYW1wOyZhbXA7IWMpdGhyb3cgbmV3IEdhKGEpO3JldHVybiBjfSxHYT1mdW5jdGlvbihhKXt0aGlzLmlkPWE7dGhpcy50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiJObyBlbGVtZW50IGZvdW5kIGZvciBpZCAnIit0aGlzLmlkKyInIn19O3ZhciBHYz17fSxHZj1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9ZnVuY3Rpb24oYSl7dmFyIGI9Yy5jYWxsKHRoaXMsYSk7ITE9PT1iJmFtcDsmYW1wO0dkKGEpO3JldHVybiBifTthPUdiKGEsITApO2EuYWRkRXZlbnRMaXN0ZW5lcihiLGQsITEpO0dlKGEsYikucHVzaChkKTtyZXR1cm4gZH0sR2c9ZnVuY3Rpb24oYSxiLGMpe2E9R2IoYSwhMCk7dmFyIGQ9ZnVuY3Rpb24oKXt2YXIgYj13aW5kb3cuZXZlbnQsZD1jLmNhbGwoYSxiKTshMT09PWQmYW1wOyZhbXA7R2QoYik7cmV0dXJuIGR9O2EuYXR0YWNoRXZlbnQoIm9uIitiLGQpO0dlKGEsYikucHVzaChkKTtyZXR1cm4gZH0sR2g7R2g9d2luZG93LmFkZEV2ZW50TGlzdGVuZXI/R2Y6d2luZG93LmF0dGFjaEV2ZW50P0dnOnZvaWQgMDt2YXIgR2Q9ZnVuY3Rpb24oYSl7YS5wcmV2ZW50RGVmYXVsdD9hLnByZXZlbnREZWZhdWx0KCk6YS5yZXR1cm5WYWx1ZT0hMTtyZXR1cm4hMX07CnZhciBHZT1mdW5jdGlvbihhLGIpe0djW2FdPUdjW2FdfHx7fTtHY1thXVtiXT1HY1thXVtiXXx8W107cmV0dXJuIEdjW2FdW2JdfTt2YXIgR2k9ZnVuY3Rpb24oKXt0cnl7cmV0dXJuIG5ldyBYTUxIdHRwUmVxdWVzdH1jYXRjaChhKXtmb3IodmFyIGI9WyJNU1hNTDIuWE1MSFRUUC42LjAiLCJNU1hNTDIuWE1MSFRUUC4zLjAiLCJNU1hNTDIuWE1MSFRUUCIsIk1pY3Jvc29mdC5YTUxIVFRQIl0sYz0wO2MmbHQ7Yi5sZW5ndGg7YysrKXRyeXtyZXR1cm4gbmV3IEFjdGl2ZVhPYmplY3QoYltjXSl9Y2F0Y2goZCl7fX1yZXR1cm4gbnVsbH0sR2o9ZnVuY3Rpb24oKXt0aGlzLnJlcXVlc3Q9R2koKTt0aGlzLnBhcmFtZXRlcnM9e319OwpHai5wcm90b3R5cGUuc2VuZD1mdW5jdGlvbihhLGIpe3ZhciBjPVtdLGQ7Zm9yKGQgaW4gdGhpcy5wYXJhbWV0ZXJzKXt2YXIgZT10aGlzLnBhcmFtZXRlcnNbZF07Yy5wdXNoKGQrIj0iK2VuY29kZVVSSUNvbXBvbmVudChlKSl9dmFyIGM9Yy5qb2luKCImYW1wOyIpLGY9dGhpcy5yZXF1ZXN0O2Yub3BlbigiUE9TVCIsYSwhMCk7Zi5zZXRSZXF1ZXN0SGVhZGVyKCJDb250ZW50LXR5cGUiLCJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiKTtmLm9ucmVhZHlzdGF0ZWNoYW5nZT1mdW5jdGlvbigpezQ9PWYucmVhZHlTdGF0ZSZhbXA7JmFtcDtiKHtzdGF0dXM6Zi5zdGF0dXMsdGV4dDpmLnJlc3BvbnNlVGV4dH0pfTtmLnNlbmQoYyl9OwpHai5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGEsYil7dmFyIGM9dGhpcy5yZXF1ZXN0O2Mub3BlbigiR0VUIixhLCEwKTtjLm9ucmVhZHlzdGF0ZWNoYW5nZT1mdW5jdGlvbigpezQ9PWMucmVhZHlTdGF0ZSZhbXA7JmFtcDtiKHtzdGF0dXM6Yy5zdGF0dXMsdGV4dDpjLnJlc3BvbnNlVGV4dH0pfTtjLnNlbmQoKX07dmFyIEdsPWZ1bmN0aW9uKGEpe3RoaXMuZz1hO3RoaXMudj10aGlzLm8oKTtpZihudWxsPT10aGlzLmcpdGhyb3cgbmV3IEdrKCJFbXB0eSBtb2R1bGUgbmFtZSIpO307Rz1HbC5wcm90b3R5cGU7Ry5vPWZ1bmN0aW9uKCl7dmFyIGE9d2luZG93LmxvY2F0aW9uLnBhdGhuYW1lO3JldHVybiBhJmFtcDsmYW1wOzA9PWEuaW5kZXhPZigiL2FjY291bnRzIik/Ii9hY2NvdW50cy9Kc1JlbW90ZUxvZyI6Ii9Kc1JlbW90ZUxvZyJ9OwpHLmo9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXRoaXMudixlPXRoaXMuZ3x8IiIsZD1kKyI/bW9kdWxlPSIrZW5jb2RlVVJJQ29tcG9uZW50KGUpO2E9YXx8IiI7ZD1kKyImYW1wO3R5cGU9IitlbmNvZGVVUklDb21wb25lbnQoYSk7Yj1ifHwiIjtkPWQrIiZhbXA7bXNnPSIrZW5jb2RlVVJJQ29tcG9uZW50KGIpO2M9Y3x8W107Zm9yKGE9MDthJmx0O2MubGVuZ3RoO2ErKylkPWQrIiZhbXA7YXJnPSIrZW5jb2RlVVJJQ29tcG9uZW50KGNbYV0pO3RyeXt2YXIgZj1NYXRoLmZsb29yKDFFNCpNYXRoLnJhbmRvbSgpKSxkPWQrIiZhbXA7cj0iK1N0cmluZyhmKX1jYXRjaChnKXt9cmV0dXJuIGR9O0cuc2VuZD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9bmV3IEdqO2QucGFyYW1ldGVycz17fTt0cnl7dmFyIGU9dGhpcy5qKGEsYixjKTtkLmdldChlLGZ1bmN0aW9uKCl7fSl9Y2F0Y2goZil7fX07Ry5lcnJvcj1mdW5jdGlvbihhLGIpe3RoaXMuc2VuZCgiRVJST1IiLGEsYil9OwpHLndhcm49ZnVuY3Rpb24oYSxiKXt0aGlzLnNlbmQoIldBUk4iLGEsYil9O0cuaW5mbz1mdW5jdGlvbihhLGIpe3RoaXMuc2VuZCgiSU5GTyIsYSxiKX07Ry5mPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXM7cmV0dXJuIGZ1bmN0aW9uKCl7dHJ5e3JldHVybiBhLmFwcGx5KG51bGwsYXJndW1lbnRzKX1jYXRjaChjKXt0aHJvdyBiLmVycm9yKCJVbmNhdGNoZWQgZXhjZXB0aW9uOiAiK2MpLGM7fX19O3ZhciBHaz1mdW5jdGlvbigpe307dmFyIEdtPUdtfHxuZXcgR2woInVyaSIpLEduPVJlZ0V4cCgiXig/OihbXjovPyMuXSspOik/KD86Ly8oPzooW14vPyNdKilAKT8oW1xcd1xcZFxcLVxcdTAxMDAtXFx1ZmZmZi4lXSopKD86OihbMC05XSspKT8pPyhbXj8jXSspPyg/OlxcPyhbXiNdKikpPyg/OiMoLiopKT8kIiksR289ZnVuY3Rpb24oYSl7cmV0dXJuImh0dHAiPT1hLnRvTG93ZXJDYXNlKCk/ODA6Imh0dHBzIj09YS50b0xvd2VyQ2FzZSgpPzQ0MzpudWxsfSxHcD1mdW5jdGlvbihhLGIpe3ZhciBjPWIubWF0Y2goR24pWzFdfHxudWxsLGQsZT1iLm1hdGNoKEduKVszXXx8bnVsbDtkPWUmYW1wOyZhbXA7ZGVjb2RlVVJJQ29tcG9uZW50KGUpO2U9TnVtYmVyKGIubWF0Y2goR24pWzRdfHxudWxsKXx8bnVsbDtpZighY3x8IWQpcmV0dXJuIEdtLmVycm9yKCJJbnZhbGlkIG9yaWdpbiBFeGNlcHRpb24iLFtTdHJpbmcoYildKSwhMTtlfHwoZT1HbyhjKSk7dmFyIGY9YS5tYXRjaChHbilbMV18fG51bGw7aWYoIWZ8fGYudG9Mb3dlckNhc2UoKSE9CmMudG9Mb3dlckNhc2UoKSlyZXR1cm4hMTtjPShjPWEubWF0Y2goR24pWzNdfHxudWxsKSZhbXA7JmFtcDtkZWNvZGVVUklDb21wb25lbnQoYyk7aWYoIWN8fGMudG9Mb3dlckNhc2UoKSE9ZC50b0xvd2VyQ2FzZSgpKXJldHVybiExOyhkPU51bWJlcihhLm1hdGNoKEduKVs0XXx8bnVsbCl8fG51bGwpfHwoZD1HbyhmKSk7cmV0dXJuIGU9PWR9O3ZhciBHcT1HcXx8bmV3IEdsKCJjaGVja19jb25uZWN0aW9uIiksR3I9bnVsbCxHcz1udWxsLEd0PW51bGwsR3U9ZnVuY3Rpb24oYSxiKXt0aGlzLmM9YTt0aGlzLmI9Yjt0aGlzLmE9ITF9O0c9R3UucHJvdG90eXBlO0cuaT1mdW5jdGlvbihhLGIpe2lmKCFiKXJldHVybiExO2lmKDAmbHQ7PWEuaW5kZXhPZigiLCIpKXJldHVybiBHcS5lcnJvcigiQ2hlY2tDb25uZWN0aW9uIHJlc3VsdCBjb250YWlucyBjb21tYSIsW2FdKSwhMTt2YXIgYz1iLnZhbHVlO2IudmFsdWU9Yz9jKyIsIithOmE7cmV0dXJuITB9O0cuaD1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5pKGEsR3MpfTtHLnc9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuaShhLEd0KX07Ry5tPWZ1bmN0aW9uKGEpe2E9YS5tYXRjaCgiXihbXjpdKyk6KFxcZCopOihcXGQ/KSQiKTtyZXR1cm4hYXx8MyZndDthLmxlbmd0aD9udWxsOmFbMV19OwpHLnU9ZnVuY3Rpb24oYSxiKXtpZighR3AodGhpcy5jLGEpKXJldHVybiExO2lmKHRoaXMuYXx8IWIpcmV0dXJuITA7ImFjY2Vzc2libGUiPT1iPyh0aGlzLmgoYSksdGhpcy5hPSEwKTp0aGlzLm0oYik9PXRoaXMuYiZhbXA7JmFtcDsodGhpcy53KGIpfHx0aGlzLmgoYSksdGhpcy5hPSEwKTtyZXR1cm4hMH07Ry5zPWZ1bmN0aW9uKCl7dmFyIGE7YT10aGlzLmM7dmFyIGI9InRpbWVzdGFtcCIsYz1TdHJpbmcoKG5ldyBEYXRlKS5nZXRUaW1lKCkpO2lmKDAmbHQ7YS5pbmRleE9mKCIjIikpdGhyb3cgT2JqZWN0KCJVbnN1cHBvcnRlZCBVUkwgRXhjZXB0aW9uOiAiK2EpO3JldHVybiBhPTAmbHQ7PWEuaW5kZXhPZigiPyIpP2ErIiZhbXA7IitlbmNvZGVVUklDb21wb25lbnQoYikrIj0iK2VuY29kZVVSSUNvbXBvbmVudChjKTphKyI/IitlbmNvZGVVUklDb21wb25lbnQoYikrIj0iK2VuY29kZVVSSUNvbXBvbmVudChjKX07CkcubD1mdW5jdGlvbigpe3ZhciBhPXdpbmRvdy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKSxiPWEuc3R5bGU7Yi52aXNpYmlsaXR5PSJoaWRkZW4iO2Iud2lkdGg9IjFweCI7Yi5oZWlnaHQ9IjFweCI7Yi5wb3NpdGlvbj0iYWJzb2x1dGUiO2IudG9wPSItMTAwcHgiO2Euc3JjPXRoaXMucygpO2EuaWQ9dGhpcy5iO0dyLmFwcGVuZENoaWxkKGEpfTsKdmFyIEd2PWZ1bmN0aW9uKGEpe3JldHVybiBmdW5jdGlvbihiKXt2YXIgYz1iLm9yaWdpbi50b0xvd2VyQ2FzZSgpO2I9Yi5kYXRhO2Zvcih2YXIgZD1hLmxlbmd0aCxlPTA7ZSZsdDtkJmFtcDsmYW1wOyFhW2VdLnUoYyxiKTtlKyspO319LEd3PWZ1bmN0aW9uKCl7aWYod2luZG93LnBvc3RNZXNzYWdlKXt2YXIgYTthPXdpbmRvdy5fX0NIRUNLX0NPTk5FQ1RJT05fQ09ORklHLmlmcmFtZVBhcmVudEVsZW1lbnRJZDt2YXIgYj13aW5kb3cuX19DSEVDS19DT05ORUNUSU9OX0NPTkZJRy5jb25uZWN0aXZpdHlFbGVtZW50SWQsYz13aW5kb3cuX19DSEVDS19DT05ORUNUSU9OX0NPTkZJRy5uZXdSZXN1bHRFbGVtZW50SWQ7KEdyPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGEpKT8oYiZhbXA7JmFtcDsoR3M9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoYikpLGMmYW1wOyZhbXA7KEd0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGMpKSxHc3x8R3Q/YT0hMDooR3EuZXJyb3IoIlVuYWJsZSB0byBsb2NhdGUgdGhlIGlucHV0IGVsZW1lbnQgdG8gc3RvcmVDaGVja0Nvbm5lY3Rpb24gcmVzdWx0IiwKWyJvbGQgaWQ6ICIrU3RyaW5nKGIpLCJuZXcgaWQ6ICIrU3RyaW5nKGMpXSksYT0hMSkpOihHcS5lcnJvcigiVW5hYmxlIHRvIGxvY2F0ZSB0aGUgaWZyYW1lIGFuY2hvciB0byBhcHBlbmQgY29ubmVjdGlvbiB0ZXN0IGlmcmFtZSIsWyJlbGVtZW50IGlkOiAiK2FdKSxhPSExKTtpZihhKXthPXdpbmRvdy5fX0NIRUNLX0NPTk5FQ1RJT05fQ09ORklHLmRvbWFpbkNvbmZpZ3M7aWYoIWEpe2lmKCF3aW5kb3cuX19DSEVDS19DT05ORUNUSU9OX0NPTkZJRy5pZnJhbWVVcmkpe0dxLmVycm9yKCJNaXNzaW5nIGlmcmFtZSBVUkwgaW4gb2xkIGNvbmZpZ3VyYXRpb24iKTtyZXR1cm59YT1be2lmcmFtZVVyaTp3aW5kb3cuX19DSEVDS19DT05ORUNUSU9OX0NPTkZJRy5pZnJhbWVVcmksZG9tYWluU3ltYm9sOiJ5b3V0dWJlIn1dfWlmKDAhPWEubGVuZ3RoKXtmb3IodmFyIGI9YS5sZW5ndGgsYz1bXSxkPTA7ZCZsdDtiO2QrKyljLnB1c2gobmV3IEd1KGFbZF0uaWZyYW1lVXJpLGFbZF0uZG9tYWluU3ltYm9sKSk7CkdoKHdpbmRvdywibWVzc2FnZSIsR3YoYykpO2ZvcihkPTA7ZCZsdDtiO2QrKyljW2RdLmwoKX19fX0sR3g9ZnVuY3Rpb24oKXtpZih3aW5kb3cuX19DSEVDS19DT05ORUNUSU9OX0NPTkZJRyl7dmFyIGE9d2luZG93Ll9fQ0hFQ0tfQ09OTkVDVElPTl9DT05GSUcucG9zdE1zZ1N1cHBvcnRFbGVtZW50SWQ7aWYod2luZG93LnBvc3RNZXNzYWdlKXt2YXIgYj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChhKTtiP2IudmFsdWU9IjEiOkdxLmVycm9yKCJVbmFibGUgdG8gbG9jYXRlIHRoZSBpbnB1dCBlbGVtZW50IHRvIHN0b3JlcG9zdE1lc3NhZ2UgdGVzdCByZXN1bHQiLFsiZWxlbWVudCBpZDogIithXSl9fX07R19jaGVja0Nvbm5lY3Rpb25NYWluPUdxLmYoR3cpO0dfc2V0UG9zdE1lc3NhZ2VTdXBwb3J0RmxhZz1HcS5mKEd4KTsKPC9zY3JpcHQ+CiAgPHNjcmlwdD4KICB3aW5kb3cuX19DSEVDS19DT05ORUNUSU9OX0NPTkZJRyA9IHsKICBuZXdSZXN1bHRFbGVtZW50SWQ6ICdjaGVja0Nvbm5lY3Rpb24nLAogIGRvbWFpbkNvbmZpZ3M6IFt7aWZyYW1lVXJpOiAnaHR0cHM6Ly9hY2NvdW50cy55b3V0dWJlLmNvbS9hY2NvdW50cy9DaGVja0Nvbm5lY3Rpb24/cG1wb1w3NWh0dHBzJTNBJTJGJTJGYWNjb3VudHMuZ29vZ2xlLmNvbVw0NnZcNzUtNTQzNDk3Mjk4Jyxkb21haW5TeW1ib2w6ICd5b3V0dWJlJ31dLAogIGlmcmFtZVVyaTogJycsCiAgaWZyYW1lT3JpZ2luOiAnJywKICBjb25uZWN0aXZpdHlFbGVtZW50SWQ6ICdkbkNvbm4nLAogIGlmcmFtZVBhcmVudEVsZW1lbnRJZDogJ2NjX2lmcmFtZV9wYXJlbnQnLAogIHBvc3RNc2dTdXBwb3J0RWxlbWVudElkOiAncHN0TXNnJywKICBtc2dDb250ZW50OiAnYWNjZXNzaWJsZScKICB9OwogIEdfc2V0UG9zdE1lc3NhZ2VTdXBwb3J0RmxhZygpOwogIEdfY2hlY2tDb25uZWN0aW9uTWFpbigpOwo8L3NjcmlwdD4KICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+LyogQW50aS1zcGFtLiBXYW50IHRvIHNheSBoZWxsbz8gQ29udGFjdCAoYmFzZTY0KSBZbTkwWjNWaGNtUXRZMjl1ZEdGamRFQm5iMjluYkdVdVkyOXQgKi8oZnVuY3Rpb24oKXtldmFsKCd2YXIgaD1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIDImZ3Q7PWFyZ3VtZW50cy5sZW5ndGg/Zi5zbGljZS5jYWxsKGEsYik6Zi5zbGljZS5jYWxsKGEsYixjKX0scD1mdW5jdGlvbihhLGIsYyxkLGUpe2M9YS5zcGxpdCgiLiIpLGQ9ayxjWzBdaW4gZHx8IWQuZXhlY1NjcmlwdHx8ZC5leGVjU2NyaXB0KCJ2YXIgIitjWzBdKTtmb3IoO2MubGVuZ3RoJmFtcDsmYW1wOyhlPWMuc2hpZnQoKSk7KWMubGVuZ3RofHx2b2lkIDA9PT1iP2Q9ZFtlXT9kW2VdOmRbZV09e306ZFtlXT1ifSxmPUFycmF5LnByb3RvdHlwZSxxPWZ1bmN0aW9uKGEsYixjKXtpZihiPXR5cGVvZiBhLCJvYmplY3QiPT1iKWlmKGEpe2lmKGEgaW5zdGFuY2VvZiBBcnJheSlyZXR1cm4iYXJyYXkiO2lmKGEgaW5zdGFuY2VvZiBPYmplY3QpcmV0dXJuIGI7aWYoYz1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoYSksIltvYmplY3QgV2luZG93XSI9PWMpcmV0dXJuIm9iamVjdCI7aWYoIltvYmplY3QgQXJyYXldIj09Y3x8Im51bWJlciI9PXR5cGVvZiBhLmxlbmd0aCZhbXA7JmFtcDsidW5kZWZpbmVkIiE9dHlwZW9mIGEuc3BsaWNlJmFtcDsmYW1wOyJ1bmRlZmluZWQiIT10eXBlb2YgYS5wcm9wZXJ0eUlzRW51bWVyYWJsZSZhbXA7JmFtcDshYS5wcm9wZXJ0eUlzRW51bWVyYWJsZSgic3BsaWNlIikpcmV0dXJuImFycmF5IjtpZigiW29iamVjdCBGdW5jdGlvbl0iPT1jfHwidW5kZWZpbmVkIiE9dHlwZW9mIGEuY2FsbCZhbXA7JmFtcDsidW5kZWZpbmVkIiE9dHlwZW9mIGEucHJvcGVydHlJc0VudW1lcmFibGUmYW1wOyZhbXA7IWEucHJvcGVydHlJc0VudW1lcmFibGUoImNhbGwiKSlyZXR1cm4iZnVuY3Rpb24ifWVsc2UgcmV0dXJuIm51bGwiO2Vsc2UgaWYoImZ1bmN0aW9uIj09YiZhbXA7JmFtcDsidW5kZWZpbmVkIj09dHlwZW9mIGEuY2FsbClyZXR1cm4ib2JqZWN0IjtyZXR1cm4gYn0saz10aGlzLHQsdz0obmV3IGZ1bmN0aW9uKCl7fSxmdW5jdGlvbihhLGIsYyxkLGUpe2ZvcihhPWEucmVwbGFjZSgvXFxyXFxuL2csIlxcbiIpLGI9W10sZD1jPTA7ZCZsdDthLmxlbmd0aDtkKyspZT1hLmNoYXJDb2RlQXQoZCksMTI4Jmd0O2U/YltjKytdPWU6KDIwNDgmZ3Q7ZT9iW2MrK109ZSZndDsmZ3Q7NnwxOTI6KGJbYysrXT1lJmd0OyZndDsxMnwyMjQsYltjKytdPWUmZ3Q7Jmd0OzYmYW1wOzYzfDEyOCksYltjKytdPWUmYW1wOzYzfDEyOCk7cmV0dXJuIGJ9KSxBPWZ1bmN0aW9uKGEsYixjLGQsZSxnKXt0cnl7Zm9yKHRoaXMuYz1bXSx4KHRoaXMsdGhpcy5iLDApLHgodGhpcyx0aGlzLnUsMCkseCh0aGlzLHRoaXMuYmEsIm9iamVjdCI9PXR5cGVvZiB3aW5kb3c/d2luZG93OmspLHgodGhpcyx0aGlzLkwsMCkseCh0aGlzLHRoaXMuRCwwKSx4KHRoaXMsdGhpcy5DLHt9KSx4KHRoaXMsdGhpcy5vLDIwNDgpLHgodGhpcyx0aGlzLm0sdGhpcy5tKSx4KHRoaXMsdGhpcy5LLDApLHgodGhpcyx0aGlzLmFhLFtdKSx4KHRoaXMsdGhpcy5qLHkoNCkpLHRoaXMuSD10cnVlLHgodGhpcyx0aGlzLmwsW10pLHgodGhpcyx0aGlzLmRhLHRoaXMpLHgodGhpcyx0aGlzLmcsW10pLGI9MDs2NCZndDtiOysrYik7aWYoYSZhbXA7JmFtcDsiISI9PWEuY2hhckF0KDApKXRoaXMudj1hO2Vsc2V7aWYod2luZG93LmF0b2Ipe2ZvcihkPXdpbmRvdy5hdG9iKGEpLGE9W10sZT1iPTA7ZSZsdDtkLmxlbmd0aDtlKyspe2ZvcihnPWQuY2hhckNvZGVBdChlKTsyNTUmbHQ7ZzspYVtiKytdPWcmYW1wOzI1NSxnJmd0OyZndDs9ODthW2IrK109Z31jPWF9ZWxzZSBjPW51bGw7KHRoaXMuZj1jKSZhbXA7JmFtcDt0aGlzLmYubGVuZ3RoPyh0aGlzLlU9W10sdGhpcy5JKCkpOnRoaXMuaCh0aGlzLlcpfX1jYXRjaChsKXt6KHRoaXMsbCl9fSx4PSh0PUEucHJvdG90eXBlLHQuWD0zMSxmdW5jdGlvbihhLGIsYyl7aWYoYj09YS5ifHxiPT1hLnUpYS5jW2JdP2EuY1tiXS5uYShjKTphLmNbYl09QihjKTtlbHNlIGlmKGIhPWEuZyZhbXA7JmFtcDtiIT1hLmomYW1wOyZhbXA7YiE9YS5sfHwhYS5jW2JdKWEuY1tiXT1DKGMsYS5hKTtiPT1hLkQmYW1wOyZhbXA7KGEuRz12b2lkIDAseChhLGEuYixhLmEoYS5iKSs0KSl9KSxEPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGFbYl0mbHQ7Jmx0OzI0fGFbYisxXSZsdDsmbHQ7MTZ8YVtiKzJdJmx0OyZsdDs4fGFbYiszXX0sRj0oQS5wcm90b3R5cGUucGE9ZnVuY3Rpb24oYSxiLGMsZCl7aWYoMz09YS5sZW5ndGgpe2ZvcihjPTA7MyZndDtjO2MrKyliW2NdKz1hW2NdO2ZvcihjPTAsZD1bMTMsOCwxMywxMiwxNiw1LDMsMTAsMTVdOzkmZ3Q7YztjKyspYlszXShiLGMlMyxkW2NdKX19LHQuZGE9MTk1LGZ1bmN0aW9uKGEsYixjLGQpe3JldHVybiBjPWEuYShhLmIpLGEuZiZhbXA7JmFtcDtjJmx0O2EuZi5sZW5ndGg/KHgoYSxhLmIsYS5mLmxlbmd0aCksRShhLGIpKTp4KGEsYS5iLGIpLGQ9YS5JKCkseChhLGEuYixjKSxkfSksRz0odC5CPXt9LHQubz0xNzAsZnVuY3Rpb24oYSxiLGMsZCl7dHJ5e2ZvcihkPTA7ODQ5NDE5NDQ2MDghPWQ7KWErPShiJmx0OyZsdDs0XmImZ3Q7Jmd0OyZndDs1KStiXmQrY1tkJmFtcDszXSxkKz0yNjU0NDM1NzY5LGIrPShhJmx0OyZsdDs0XmEmZ3Q7Jmd0OyZndDs1KSthXmQrY1tkJmd0OyZndDsmZ3Q7MTEmYW1wOzNdO3JldHVyblthJmd0OyZndDsmZ3Q7MjQsYSZndDsmZ3Q7MTYmYW1wOzI1NSxhJmd0OyZndDs4JmFtcDsyNTUsYSZhbXA7MjU1LGImZ3Q7Jmd0OyZndDsyNCxiJmd0OyZndDsxNiZhbXA7MjU1LGImZ3Q7Jmd0OzgmYW1wOzI1NSxiJmFtcDsyNTVdfWNhdGNoKGUpe3Rocm93IGU7fX0pLEk9KHQuTD0xMTIsdC5qPTE0LHQubT0yMjUsdC53PSJjYWxsZXIiLHQuQT0yMix0LmJhPTczLHQuVj0yMSxmdW5jdGlvbihhLGIsYyxkLGUsZyl7Zm9yKGI9e30sYz1IKGEpLGIuVD1IKGEpLGIucz1bXSxkPUgoYSktMSxlPUgoYSksZz0wO2cmbHQ7ZDtnKyspYi5zLnB1c2goSChhKSk7Zm9yKGIuUj1hLmEoYyksYi5TPWEuYShlKTtkLS07KWIuc1tkXT1hLmEoYi5zW2RdKTtyZXR1cm4gYn0pLEM9KHQuZWE9MTUsdC5OPSJ0b1N0cmluZyIsdC5aPTMwLHQuZmE9MTIsdC5jYT0yMTYsdC5DPTEzMSx0LiQ9MzYsZnVuY3Rpb24oYSxiLGMsZCxlLGcsbCxtLG4pe3JldHVybiBlPUEucHJvdG90eXBlLG09QSxuPWUuaCxsPWUuTyxnPWUuSSxkPWZ1bmN0aW9uKCl7cmV0dXJuIGMoKX0sYz1mdW5jdGlvbihhLHIsdil7Zm9yKGE9ZFtlLnddLHI9YT09PWIsdj0wLGE9YSZhbXA7JmFtcDthW2Uud107YSZhbXA7JmFtcDthIT1nJmFtcDsmYW1wO2EhPWwmYW1wOyZhbXA7YSE9bSZhbXA7JmFtcDthIT1uJmFtcDsmYW1wOzIwJmd0O3Y7KXYrKyxhPWFbZS53XTtyZXR1cm4gY1tlLmlhK3IrISghYSsodiszJmd0OyZndDszKSldfSxkW2UuTl09ZSxjW2UuJF09YSxhPXZvaWQgMCxkfSkseT0odC5hYT0xNzEsdC5pYT0zNCx0Lmc9MjU0LHQudT0xODQsZnVuY3Rpb24oYSxiKXtmb3IoYj1BcnJheShhKTthLS07KWJbYV09MjU1Kk1hdGgucmFuZG9tKCl8MDtyZXR1cm4gYn0pLEU9KEEucHJvdG90eXBlLnJhPWZ1bmN0aW9uKGEsYil7Yi5wdXNoKGFbMF0mbHQ7Jmx0OzI0fGFbMV0mbHQ7Jmx0OzE2fGFbMl0mbHQ7Jmx0Ozh8YVszXSksYi5wdXNoKGFbNF0mbHQ7Jmx0OzI0fGFbNV0mbHQ7Jmx0OzE2fGFbNl0mbHQ7Jmx0Ozh8YVs3XSksYi5wdXNoKGFbOF0mbHQ7Jmx0OzI0fGFbOV0mbHQ7Jmx0OzE2fGFbMTBdJmx0OyZsdDs4fGFbMTFdKX0sdC5NPTE3OCx0LmdhPTEwLGZ1bmN0aW9uKGEsYil7YS5VLnB1c2goYS5jLnNsaWNlKCkpLGEuY1thLmJdPXZvaWQgMCx4KGEsYS5iLGIpfSksSj1mdW5jdGlvbihhLGIsYyxkLGUsZyl7Zm9yKGU9YS5hKGIpLGI9Yj09YS5qP2Z1bmN0aW9uKGIsYyxkLGcpe2lmKGM9ZS5sZW5ndGgsZD1jLTQmZ3Q7Jmd0OzMsZS5sYSE9ZCl7ZS5sYT1kLGQ9KGQmbHQ7Jmx0OzMpLTQsZz1bMCwwLDAsYS5hKGEuTCldO3RyeXtlLmphPUcoRChlLGQpLEQoZSxkKzQpLGcpfWNhdGNoKHIpe3Rocm93IHI7fX1lLnB1c2goZS5qYVtjJmFtcDs3XV5iKX06ZnVuY3Rpb24oYSl7ZS5wdXNoKGEpfSxkJmFtcDsmYW1wO2IoZCZhbXA7MjU1KSxnPTAsZD1jLmxlbmd0aDtnJmx0O2Q7ZysrKWIoY1tnXSl9LHo9KEEucHJvdG90eXBlLmE9ZnVuY3Rpb24oYSxiKXtpZihiPXRoaXMuY1thXSx2b2lkIDA9PT1iKXRocm93IHRoaXMuaCh0aGlzLlosMCxhKSx0aGlzLkI7cmV0dXJuIGIoKX0sdC5sPTIzMyxmdW5jdGlvbihhLGIpe2Eudj0oIkU6IitiLm1lc3NhZ2UrIjoiK2Iuc3RhY2spLnNsaWNlKDAsMjA0OCl9KSxMPSh0LkQ9MjMyLEEucHJvdG90eXBlLmg9ZnVuY3Rpb24oYSxiLGMsZCl7ZD10aGlzLmEodGhpcy51KSxhPVthLGQmZ3Q7Jmd0OzgmYW1wOzI1NSxkJmFtcDsyNTVdLHZvaWQgMCE9YyZhbXA7JmFtcDthLnB1c2goYyksMD09dGhpcy5hKHRoaXMubCkubGVuZ3RoJmFtcDsmYW1wOyh0aGlzLmNbdGhpcy5sXT12b2lkIDAseCh0aGlzLHRoaXMubCxhKSksYz0iIixiJmFtcDsmYW1wOyhiLm1lc3NhZ2UmYW1wOyZhbXA7KGMrPWIubWVzc2FnZSksYi5zdGFjayZhbXA7JmFtcDsoYys9IjoiK2Iuc3RhY2spKSxiPXRoaXMuYSh0aGlzLm8pLDMmbHQ7YiZhbXA7JmFtcDsoYz1jLnNsaWNlKDAsYi0zKSxiLT1jLmxlbmd0aCszLGM9dyhjKSxKKHRoaXMsdGhpcy5qLEsoYy5sZW5ndGgsMikuY29uY2F0KGMpLHRoaXMuZmEpKSx4KHRoaXMsdGhpcy5vLGIpfSx0LmhhPTQyLGZ1bmN0aW9uKGEsYixjLGQpe3JldHVybiBmdW5jdGlvbigpe2lmKCFkfHxhLkgpcmV0dXJuIHgoYSxhLmNhLGFyZ3VtZW50cykseChhLGEuQyxjKSxGKGEsYil9fSksSz0odC5iPTE5OCxmdW5jdGlvbihhLGIsYyxkKXtmb3IoZD1iLTEsYz1bXTswJmx0Oz1kO2QtLSljW2ItMS1kXT1hJmd0OyZndDs4KmQmYW1wOzI1NTtyZXR1cm4gY30pLEg9KHQuSj0yNTIsdC5XPTE3LGZ1bmN0aW9uKGEsYixjKXtpZihiPWEuYShhLmIpLCEoYiBpbiBhLmYpKXRocm93IGEuaChhLlgpLGEuQjtyZXR1cm4gdm9pZCAwPT1hLkcmYW1wOyZhbXA7KGEuRz1EKGEuZixiLTQpLGEuRj12b2lkIDApLGEuRiE9YiZndDsmZ3Q7MyZhbXA7JmFtcDsoYS5GPWImZ3Q7Jmd0OzMsYz1bMCwwLDAsYS5hKGEuRCldLGEua2E9RyhhLkcsYS5GLGMpKSx4KGEsYS5iLGIrMSksYS5mW2JdXmEua2FbYiU4XX0pLEI9KEEucHJvdG90eXBlLnFhPWZ1bmN0aW9uKGEsYixjLGQpe3RyeXtkPWFbKGIrMiklM10sYVtiXT1hW2JdLWFbKGIrMSklM10tZF4oMT09Yj9kJmx0OyZsdDtjOmQmZ3Q7Jmd0OyZndDtjKX1jYXRjaChlKXt0aHJvdyBlO319LHQuWT0zMyx0LlA9W2Z1bmN0aW9uKGEsYixjLGQpe2I9SChhKSxjPUgoYSksZD1IKGEpLGEuYShiKSZndDthLmEoYykmYW1wOyZhbXA7eChhLGQsYS5hKGQpKzEpfSxmdW5jdGlvbihhLGIsYyxkLGUsZyxsLG0sbil7aWYoYj1IKGEpLGM9SChhKSZsdDsmbHQ7OHxIKGEpLGQ9IiIsdm9pZCAwIT1hLmNbYS5KXSlmb3IoZT1hLmEoYS5KKTtjLS07KWc9ZVtIKGEpJmx0OyZsdDs4fEgoYSldLGQrPWc7ZWxzZXtmb3IoZD1BcnJheShjKSxlPTA7ZSZsdDtjO2UrKylkW2VdPUgoYSk7Zm9yKGM9W10sZz1lPTA7ZSZsdDtkLmxlbmd0aDspbD1kW2UrK10sMTI4Jmd0O2w/Y1tnKytdPVN0cmluZy5mcm9tQ2hhckNvZGUobCk6MTkxJmx0O2wmYW1wOyZhbXA7MjI0Jmd0O2w/KG09ZFtlKytdLGNbZysrXT1TdHJpbmcuZnJvbUNoYXJDb2RlKChsJmFtcDszMSkmbHQ7Jmx0OzZ8bSZhbXA7NjMpKToobT1kW2UrK10sbj1kW2UrK10sY1tnKytdPVN0cmluZy5mcm9tQ2hhckNvZGUoKGwmYW1wOzE1KSZsdDsmbHQ7MTJ8KG0mYW1wOzYzKSZsdDsmbHQ7NnxuJmFtcDs2MykpO2Q9Yy5qb2luKCIiKX14KGEsYixkKX0sZnVuY3Rpb24oYSl7TShhLDQpfSxmdW5jdGlvbihhKXtOKGEsMSl9LGZ1bmN0aW9uKGEsYixjLGQpe2I9SChhKSxjPUgoYSksZD1hLmEoSChhKSksYz1hLmEoYykseChhLGIsTChhLGMsZCkpfSxmdW5jdGlvbihhKXtNKGEsMil9LGZ1bmN0aW9uKGEsYixjKXtiPUgoYSksYz1IKGEpLHgoYSxjLCIiK2EuYShiKSl9LGZ1bmN0aW9uKGEsYixjLGQpe2I9SChhKSxjPUgoYSksZD1IKGEpLGEuYShiKT09YS5hKGMpJmFtcDsmYW1wO3goYSxkLGEuYShkKSsxKX0sZnVuY3Rpb24oYSxiLGMsZCl7Yj1IKGEpLGM9SChhKSxkPUgoYSkseChhLGQsYS5hKGIpfGEuYShjKSl9LGZ1bmN0aW9uKGEsYil7Yj1JKGEpLHgoYSxiLlQsYi5SLmFwcGx5KGIuUyxiLnMpKX0sZnVuY3Rpb24oYSxiKXtiPWEuYShIKGEpKSxFKGEsYil9LGZ1bmN0aW9uKCl7fSxmdW5jdGlvbihhLGIsYyxkKXtpZihiPWEuVS5wb3AoKSl7Zm9yKGM9SChhKTswJmx0O2M7Yy0tKWQ9SChhKSxiW2RdPWEuY1tkXTthLmM9Yn1lbHNlIHgoYSxhLmIsYS5mLmxlbmd0aCl9LGZ1bmN0aW9uKGEsYixjLGQsZSxnLGwpe2I9SShhKSxlPWIuUixkPWIuUyxjPWIucyxsPWMubGVuZ3RoLDA9PWw/Zz1uZXcgZFtlXToxPT1sP2c9bmV3IGRbZV0oY1swXSk6Mj09bD9nPW5ldyBkW2VdKGNbMF0sY1sxXSk6Mz09bD9nPW5ldyBkW2VdKGNbMF0sY1sxXSxjWzJdKTo0PT1sP2c9bmV3IGRbZV0oY1swXSxjWzFdLGNbMl0sY1szXSk6YS5oKGEuQSkseChhLGIuVCxnKX0sZnVuY3Rpb24oYSxiLGMsZCl7Yj1IKGEpLGM9SChhKSxkPUgoYSksYS5hKGIpW2EuYShjKV09YS5hKGQpfSxmdW5jdGlvbigpe30sZnVuY3Rpb24oYSl7TyhhLDcpfSxmdW5jdGlvbihhLGIsYyxkLGUpe2I9SChhKSxjPUgoYSksZD1IKGEpLGU9YS5hKEgoYSkpLGM9YS5hKGMpLGQ9YS5hKGQpLGEuYShiKS5hZGRFdmVudExpc3RlbmVyKGMsTChhLGQsZSx0cnVlKSxmYWxzZSl9LGZ1bmN0aW9uKGEsYixjKXtiPUgoYSksYz1IKGEpLDAhPWEuYShiKSZhbXA7JmFtcDt4KGEsYS5iLGEuYShjKSl9LGZ1bmN0aW9uKGEsYixjLGQsZSl7Zm9yKGI9SChhKSxjPUgoYSkmbHQ7Jmx0Ozh8SChhKSxkPUFycmF5KGMpLGU9MDtlJmx0O2M7ZSsrKWRbZV09SChhKTt4KGEsYixkKX0sZnVuY3Rpb24oYSxiLGMsZCl7Yj1IKGEpLGM9SChhKSxkPUgoYSkseChhLGQsKGEuYShiKWluIGEuYShjKSkrMCl9LGZ1bmN0aW9uKGEsYixjLGQpe2I9SChhKSxjPUgoYSksZD1IKGEpLHgoYSxkLGEuYShiKSZndDsmZ3Q7Yyl9LGZ1bmN0aW9uKGEsYixjLGQpe2I9SChhKSxjPUgoYSksZD1IKGEpLGM9YS5hKGMpLGI9YS5hKGIpLHgoYSxkLGJbY10pfSxmdW5jdGlvbihhLGIsYyxkLGUsZyl7aWYoYj1IKGEpLGM9SChhKSxkPUgoYSksZT1IKGEpLGI9YS5hKGIpLGM9YS5hKGMpLGQ9YS5hKGQpLGE9YS5hKGUpLCJvYmplY3QiPT1xKGIpKXtmb3IoZyBpbiBlPVtdLGIpZS5wdXNoKGcpO2I9ZX1mb3IoZT0wLGc9Yi5sZW5ndGg7ZSZsdDtnO2UrPWQpYyhiLnNsaWNlKGUsZStkKSxhKX0sZnVuY3Rpb24oYSl7TShhLDEpfSxmdW5jdGlvbihhLGIsYyl7Yj1IKGEpLGM9SChhKSx4KGEsYyxhLmEoYyktYS5hKGIpKX0sZnVuY3Rpb24oYSxiLGMsZCl7Yj1IKGEpLGM9SChhKSxkPUgoYSkseChhLGQsYS5hKGIpfHxhLmEoYykpfSxmdW5jdGlvbihhKXtPKGEsNCl9LGZ1bmN0aW9uKGEpe08oYSwwKX0sZnVuY3Rpb24oYSxiLGMsZCl7Yj1IKGEpLGM9SChhKSxkPUgoYSkseChhLGQsYS5hKGIpJmx0OyZsdDtjKX0sZnVuY3Rpb24oKXt9LGZ1bmN0aW9uKGEpe04oYSw0KX0sZnVuY3Rpb24oYSxiLGMpe2I9SChhKSxjPUgoYSksYj1hLmEoYikseChhLGMsYil9LGZ1bmN0aW9uKGEsYixjKXtiPUgoYSksYz1IKGEpLHgoYSxjLGEuYShjKSphLmEoYikpfSxmdW5jdGlvbihhLGIsYyl7Yj1IKGEpLGM9SChhKSxiPWEuYShiKSx4KGEsYyxxKGIpKX0sZnVuY3Rpb24oYSxiLGMpe2I9SChhKSxjPUgoYSkseChhLGMsYS5hKGMpJWEuYShiKSl9LGZ1bmN0aW9uKGEsYixjKXtiPUgoYSksYz1IKGEpLHgoYSxjLGEuYShjKSthLmEoYikpfSxmdW5jdGlvbihhKXtPKGEsMyl9LGZ1bmN0aW9uKGEsYixjKXtiPUgoYSksYz1IKGEpLHgoYSxjLGZ1bmN0aW9uKGEpe3JldHVybiBldmFsKGEpfShhLmEoYikpKX0sZnVuY3Rpb24oYSl7TihhLDIpfV0sZnVuY3Rpb24oYSxiLGMpe3JldHVybiBjPWZ1bmN0aW9uKCl7cmV0dXJuIGF9LGI9ZnVuY3Rpb24oKXtyZXR1cm4gYygpfSxiLm5hPWZ1bmN0aW9uKGIpe2E9Yn0sYn0pLFA9KHQuSz0yNTMsZnVuY3Rpb24oYSxiLGMsZCl7aWYoODE5MiZndDs9YS5sZW5ndGgpcmV0dXJuIFN0cmluZy5mcm9tQ2hhckNvZGUuYXBwbHkobnVsbCxhKTtmb3IoYz0wLGI9IiI7YyZsdDthLmxlbmd0aDtjKz04MTkyKWQ9aChhLGMsYys4MTkyKSxiKz1TdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KG51bGwsZCk7cmV0dXJuIGJ9KSxOPShBLnByb3RvdHlwZS5vYT1mdW5jdGlvbihhKXtyZXR1cm4oYT13aW5kb3cucGVyZm9ybWFuY2UpJmFtcDsmYW1wO2Eubm93P2Z1bmN0aW9uKCl7cmV0dXJuIGEubm93KCl8MH06ZnVuY3Rpb24oKXtyZXR1cm4rbmV3IERhdGV9fSgpLGZ1bmN0aW9uKGEsYixjLGQpe2M9SChhKSxkPUgoYSksSihhLGQsSyhhLmEoYyksYikpfSksTT1mdW5jdGlvbihhLGIsYyxkKXtmb3IoYz1IKGEpLGQ9MDswJmx0O2I7Yi0tKWQ9ZCZsdDsmbHQ7OHxIKGEpO3goYSxjLGQpfSxPPShBLnByb3RvdHlwZS5tYT1mdW5jdGlvbihhLGIpe3JldHVybiBiPXRoaXMuTygpLGEmYW1wOyZhbXA7YShiKSxifSxmdW5jdGlvbihhLGIsYyxkLGUsZyl7ZD1iJmFtcDszLGM9YiZhbXA7NCxlPUgoYSksZz1IKGEpLGU9YS5hKGUpLGMmYW1wOyZhbXA7KGU9dygiIitlKSksZCZhbXA7JmFtcDtKKGEsZyxLKGUubGVuZ3RoLDIpKSxKKGEsZyxlKX0pO0EucHJvdG90eXBlLk89ZnVuY3Rpb24oYSxiLGMsZCxlLGcsbCxtLG4sdSl7aWYodGhpcy52KXJldHVybiB0aGlzLnY7dHJ5e2lmKHRoaXMuSD1mYWxzZSxiPXRoaXMuYSh0aGlzLmcpLmxlbmd0aCxjPXRoaXMuYSh0aGlzLmopLmxlbmd0aCxkPXRoaXMuYSh0aGlzLm8pLHRoaXMuY1t0aGlzLk1dJmFtcDsmYW1wO0YodGhpcyx0aGlzLmEodGhpcy5NKSksZT10aGlzLmEodGhpcy5sKSwwJmx0O2UubGVuZ3RoJmFtcDsmYW1wO0oodGhpcyx0aGlzLmcsSyhlLmxlbmd0aCwyKS5jb25jYXQoZSksdGhpcy5lYSksZz10aGlzLmEodGhpcy5LKSZhbXA7MjU1LGctPXRoaXMuYSh0aGlzLmcpLmxlbmd0aCs1LGw9dGhpcy5hKHRoaXMuaiksNCZsdDtsLmxlbmd0aCZhbXA7JmFtcDsoZy09bC5sZW5ndGgrMyksMCZsdDtnJmFtcDsmYW1wO0oodGhpcyx0aGlzLmcsSyhnLDIpLmNvbmNhdCh5KGcpKSx0aGlzLmdhKSw0Jmx0O2wubGVuZ3RoJmFtcDsmYW1wO0oodGhpcyx0aGlzLmcsSyhsLmxlbmd0aCwyKS5jb25jYXQobCksdGhpcy5oYSksbT15KDIpLmNvbmNhdCh0aGlzLmEodGhpcy5nKSksbVsxXT1tWzBdXjMsbj13aW5kb3cuYnRvYT93aW5kb3cuYnRvYShQKG0pKS5yZXBsYWNlKC9cXCsvZywiLSIpLnJlcGxhY2UoL1xcLy9nLCJfIikucmVwbGFjZSgvPS9nLCIiKTp2b2lkIDAsbiluPSIhIituO2Vsc2UgZm9yKGU9MCxuPSIiO2UmbHQ7bS5sZW5ndGg7ZSsrKXU9bVtlXVt0aGlzLk5dKDE2KSwxPT11Lmxlbmd0aCZhbXA7JmFtcDsodT0iMCIrdSksbis9dTt0aGlzLmEodGhpcy5nKS5sZW5ndGg9Yix0aGlzLmEodGhpcy5qKS5sZW5ndGg9Yyx4KHRoaXMsdGhpcy5vLGQpLGE9bix0aGlzLkg9dHJ1ZX1jYXRjaChyKXt6KHRoaXMsciksYT10aGlzLnZ9cmV0dXJuIGF9LEEucHJvdG90eXBlLkk9ZnVuY3Rpb24oYSxiLGMsZCxlLGcpe3RyeXtmb3IoZD0wLGM9dm9pZCAwLGI9NTAwMSxhPXRoaXMuZi5sZW5ndGg7LS1iJmFtcDsmYW1wOyhkPXRoaXMuYSh0aGlzLmIpKSZsdDthOyl0cnl7eCh0aGlzLHRoaXMudSxkKSxlPUgodGhpcykldGhpcy5QLmxlbmd0aCwoYz10aGlzLlBbZV0pP2ModGhpcyk6dGhpcy5oKHRoaXMuViwwLGUpfWNhdGNoKGwpe2whPXRoaXMuQiZhbXA7JmFtcDsoZz10aGlzLmEodGhpcy5tKSxnIT10aGlzLm0/KHgodGhpcyxnLGwpLHgodGhpcyx0aGlzLm0sdGhpcy5tKSk6dGhpcy5oKHRoaXMuQSxsKSl9Ynx8dGhpcy5oKHRoaXMuWSl9Y2F0Y2gobSl7dHJ5e3RoaXMuaCh0aGlzLkEsbSl9Y2F0Y2gobil7eih0aGlzLG4pfX1yZXR1cm4gdGhpcy5hKHRoaXMuQyl9O3RyeXt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigidW5sb2FkIixmdW5jdGlvbigpe30sZmFsc2UpfWNhdGNoKFEpe31wKCJib3RndWFyZC5iZyIsQSkscCgiYm90Z3VhcmQuYmcucHJvdG90eXBlLmludm9rZSIsQS5wcm90b3R5cGUubWEpOycpfSkoKTwvc2NyaXB0PgogIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KICBkb2N1bWVudC5iZyA9IG5ldyBib3RndWFyZC5iZygnOGlLVFdUczU2TjlxdHVJWWx2SUMwZGhRQ25VNGltdVRkd1g3NzFDUkNFQTdPeFJhTGxJdEVxV0JNVW8yZHptVnFlWHlyRVVCb1VlbG1rRW16ajRUdm9scDFUVEhUTFJjWTRoU25PQjltRkM3RzFrZWZlYXZvSmpDaFRuYnh3YmJQREM5SW5KL3RpTFlUR21RejFSS0ZyYmwxVm1tL3NxUDA2OXkzSDNyanFnbVVGYnd4aERXU0dZdHMra0R2QlBKVjJ6aldyV210YUp0SU5mM1lGbU5IOUloUldmRjZ6WVBnRlJKQVpiY1Q5Nm1qV3F3YnZCSE9vWHpuTUVyUEhFWGVrdXlVSmt0TFNNR0dVVFdwelluMHd6OWN4TnlHSlI3UzVXMkxZZUtxYnlwYXA5cThiRkJhb00xWko5Nk54Z2ZidzdJSDhCNlZEZ3FLbG5FakFKcGM5WnJURXZlUGthbjZDK3FLNm1hR042Tm1LVkJERm5ZNEdTV0taOXlWcGhaMXhGSklsRXQ5a3MyYzRHK1kyMlZsWTljbFd3TnZHL1hkTThJZFFaVTNhWUgzSTB4REg3ajI1Z2JHTGt5WXZ4eVlpd1pTcDg0NFZscFhzOHVSaVZYeWVXbVErV1lxZDZwdWxVT3o0S2hWaCtCbCtiTDM0N3dJTnZNLys0NmxqVFB5amQ2elRDOGsyUlhINVRjb01IR2MydnVrMi9uanJtN1k1bG52UWZCbzg4YzBxdjBGeHVWMkZjMFl1VEpCQ2FNajNWZFFjRmNxOE5Ib0dIQ0h3d00xQjloQ1lndlVINVpTNUxyemRrckNVMGVjQUZrVkgzZ1llNFJOMVlMM0RUc3pISHVHbWFyQWEwOUdlQVhGL2M3MXhIYjhxRWRFbVczSkQ0YzdwVEpZWmdBcGFzeWFSeEhzWWU2VTdQT25YczQrWHd1UmxXc1FTQmI5TFozZVpLOXYweUVpYm5GYVFUbHMrS2YrMExiWndyN1ZoaUV4a3lGZ1FSYzRKWnNjUkx2aWxqaGNQRHdhd3EySEp1U0ZJWFg4czVLd0ZQUlczOW02QWZlM0hqVnlHblo5Um90dmJRdDRPSlJFTEgvSWdmL04zWDFGNFhtK3F3K2gzdXo2UnVRdmtXdkZoSEQvQTRyeDVka0xkcjZpSDk3cWx6SGc5YzlaSDhWTUJPZ2Z1ajM4QXJGbERyQXVjUldDbkxmNmhrSUgwVGJhSitUU0lVM1pqemZta3QrU29KN2N0WXNLbi9vd0F6ZDFrWjV2NFFhdGp6WEliS05UMW5GWjMyT0UwWWZBRFZ3NnpGV21qUVgxU2p4a0R5R0Z2cHpxVDNrTm1mOXYwY3VRdk15eERaSVBoQU5YY2t6MnNtWmpQVVRvcWtTazVOSElFSHFZZjl4RzRVcmpjZ3laK0dYYVprU3FVQ1g3NVRxc0ZmRzk0UGZDNVJ0MDRZcXcwcVBtUUpJaFQxQTRDOG51QjBjeHkweXVESWdDYW9pUXlncGcyTTFTUEpsZjRjTHdBN3NZaS9FSXRxZ2pDVVZJc2ZDbnh5K1d0QnBkSHZveE5QUS9CZnUvTm9lRC8wQ0tEMXgrdVYwUXIyNGp4dGtrSFhCQUpBUDFxWEoyd3k3RVhqSTQ1K0RmVmJiYmhJc3pLaCtwNzRTa1BHRldCN1FTRWZYc3pDNXlrUmNNMmtHSmpoVzRoam1FOEgxbmdzNFNyZXJDY2MzNDdvQy9aUVpqQ2h5cFJicVJVRE1oeTdERGpsdnhHcTNVY3JqQ1BlSG9TUmxFdnBVc244amhWWDNQcXd2TGk2bkhJUjhRTVptU090NXFuU3BQMys2RFJlV3hva3g3MVNMRlROa3dWTnA1bnRUYjlaM21tcFp3Ym8vODNrVDdZazl4YnFaNDV5S0JzOWIzL3ZTVVlmM3R3aDIwMm9SUm9IY1hvZkxKOGpOanhzUThxUkR3S0FlenR6dHhaejFYTythQ0dybHBmYjZadVNRd014cUdhUWg5WUFjSENPcldoZ1FhMHRqMktTalNxMzY4N0tGcHBnNHBQN3JrazJSQ2JzKzBUZ25nZU9QeEtUSTNNWGdHL3dhTEc5S0xlZWFrajdaUC9zVnBwbW9ZRXZ3V2xyWS9DQS9YZnVIQ0xMS1cva1g5VGhTZHduRGcrT2RiS1pYRzQvRHYyWjd4bE1ROXhCRG43TnlZalJOMWpwVEFDZ2xFSDZRTUdRNHhrRnNXMHFYN2d3MkE1d0VURFIvMGRzd285V3ZDSThMQzhBNzNMbCtuSWFQTjRzUmdUZ2hsMmdlWitnZ0ZHUjliVUdaT1ZkOXU4cmZkdkg2WGZCNHJyelhUaHNsa2FLaU90NndUYXFvZEdiUWFWSzhPakpjdllaRW5QR3BnUm93cWtyNENPdzN5L3VRMEJZbWJTQ1ZRY3ZGdlBHZEEwVklUZUVMbElmZDNZN2d1S0o3TDFUTU1NOWRWWXNselh6WHVXcDNMWGhZak1FSXBqL0J3ZTFHVzhEZCtxejZoYndpbmRRSFIxNFRIYkRtUTY2cTVraXNOK2Y1MGlnZFZGdXpCU29FR0hmZnFZVVhQNWxINXM1UXZJUU0yYUl5cWxlVE84em0rMVFRU0hxRmhBTVZFbEhrQnNUSCtYdmdiaHg5ZUVPdzQwZEJiczJ2VzhuaHBqSXpuQ2o3M0xmbkkzOE80allwTTFKMitCb21rQzRoQ0RSTUJ5cVNMNWdYM3ZvTnJWZHMwUGJobmR0cEgxT1hxYmFCL2lBSU1DQldlOGxPQ3pYSXI0eWRNbXF5c09LUjZxUkFXK0xwMTlFMDQ5SzFaYUhHSllDa3dHMExXbUZ4TUdJb3NjMCsrcFErZTBrTGJ2cmVLRmM1VUhnQkxMMTNtQ0F5WkhuVHdxT3dXSUFiRzgwUm5pRFM4aGtIejNTdUI3dkJVMEZDVjNHa1I2dTM2T1Q2Um5pY1BidUU4YmFrVUtpNmhIK0R4M0lWTW1CdzgzWkI3dXI3eVdqaGdOQkI5d3lZcE5abW9TcHlVbmdFMU1BSzlIOWxKU1hzWFIwakV2VGxUL0tiTzJlbVlLdVZCM0gvV0hCVFkydUNJc3ZzY0N4WTUrK3ZaNW9OMmF3UHY5dkhHOTl3Zm1yS3lSSElaRHdDM29XOFFUUERyRGdFQlFaLzBGQTVVNktQc3hDNWh5VVlORk1HTEg3ODc2djFmT1R5bWUzVmg0cFJyR1UxSUYzWkFCaUVYSFU4SWtWYXFRSXV1U05IendENmUwd1lMQzRFclpWRmVGbU5qc25mZjAvTEkzYjFxcmlMdzNBbUdadVloVkJGVE5UZkFRSStQb25tSThWK0dUb0lYcWRjRHhxRVJFU0xMd1F0L05tODhnUWRwZHhLclFYdEU5dG52Q2oxQXpnU3dxUDNJLzZCdCtzOHJFZnNoejBKL1ZkZWZxVWUxSFY3czNCNjRlcHp4czg0eHNEbWxJdFNiT2oxRjRCdWJLYjcyUW9OM1ErclRJdkNlWElERGVoQzdnMGdIZGg4aGJyOUs1QkdIaTlHWW81V21QQVpnYUhEbEFKRGYxb2JOdG5kSzNiRVB6Ti9kVXZJSWhsbkltSWU3RDIxbkd1WFZsUHUwSFdlWFF0WUJHQmdCWnQ4Sm96NnJDM1ZubW5SUzg3bWNQRklZZUVHMlZwY1kveWt3VFJ0ckFSVG8vTlJqU2EvK3NTa3djWG1aeEg3UEorTFRXUVVkTzlDd045bGxoc2IzTC9vT004SjcxQ3lzUnpnSUpCT1FEM3E1NzZIU0Z0ZEIzVUVsL3hWcUxUcURrcTVSWmtiTktpUHMwTUN4NmxTZmlMR0JURXhqa1B6WmtxT1JBTHVxS1EvU1M0NDZPYzFmYm9UeDZvNTZ5VHI5aW4wdEtwWlZpNnJ6SHR1cFpza2pCVjRJK1JxQVVWY1dOaHhlcEdpTXFRUnhtNFJGMFJ1WS9CSEpaK3NlU1lDUTViMWpBajY3dGk5LytLSXNiaDhYeWxzaElZVHpCdXpKTkZ1cTNhaFZFVmVaVUZTK2dmOEVFTHhxM1VCcEdDSUxtTkhaN29wQkoyZkRhd3RQUHFoN3lXQjZ2TjNKUklVYjk4ZnA1TFZCbnJQdUhuQlNNZE1vMU43M0FVb0dMWnhxWi8vbjdwMnNmNXRPbHJxNFNBWGZWeVBwbGhiY1ByekRMZE91WVNUOGh5bU9GTXhNSDBvbXQwU1krQ2xkZEVUQ0RiOURnYkFGSWg2Q1VhRWZKL1RrSVJpa2FpWTV5d09oMWFDdHdzN3cvcS8rcWx4UEwyeTFFZWwwYmNRV1JaUlB0VGdmbGczdGtuS21qUGx4RlAwbTcyV005Y3dvTUdlMjVwUXByNEtDYnN5V2duamNMbWlhUnlnZDNxa2p3elNqMGtwOXhlQmxtMGswaU1YZ0M4SGVkbzgxQnZJSzVGL2VWdFYrSHlnNTZYeVN3Vlpnbi9nYnFDMHNDVldKVCtWSlJQZGtxRmZ2WkNXRlNzRHltQlZ0MjdqUkk1enBmTFdFZGxHcTZRSG52a1BsNXdrbkVFa0ZTM3hyS0NYdjBPT0ZWV2NZNmgyOTJaQlNDL1B6T3h4U1RuRk11TEthK2JBL1JoUnlaYjVUWHRldEJkajQ1ZGFrQWRSYVF5UTQ1QjBwYjRkWFhpb1lZV3daNW9QbzJmQWtGT3RwYWswMFhtRndrRFFZdW9lYm1jU3l4UklxNTZqWXM5Q00wVlEwVUh1NzI2MGkvdUgraU8wRUdveDlub3hGZVNtRThRRjVBcFpQajAwVXBuL1Q5UGVXNC9zL0RwZ3VoUlZIT0Nua3FxbEQ5NGhlbHhFVHVNWHZTQXE2OWZIWVRUTTdTK0gxejJZeWxBb2NmTlJYU2JlQytxM3Q5dFAxbStFRmJFMTdFUmlZVm0zT1lFOGdMcDdPNy8xVWxiSTlVL21zdmlUb1NDNTRtQS9yR2QrMUhzbzc0Mks5SkpWQXpMT3Rza2dIMlNtZkl0b1BiV0tPckFLN0xIYmk4b1hnTkRvaWV4VWF5M0ZCalRNKzc3SnlJSTV1dGNqdmg2d1E3QW5KWStjSlRrMFJhWW1YOXZYKzN1K2ExMlk3SmtFeU9WTWNnNVJLZHNWd01OdlBIR2RKcC9tOEt2aTludTBZb1RXTGtQNGpZYzFFVlc4UE1wb2lFK28wRlhEQ2ZGVUdHK2lzSEF3aVpuQXUxbkdtRkdhUFRkSURLKzgzTTRwQ3JwaUlON210WElaVHhRbk00blhWU1JUOW1KQWtrN2lXZ2hFWm5qaUZBQ083SFB6LzVjNlFxUU9xTmVRNEpKb0s1blZ2Q1pSQU5rV2hrN3JJcTRtOVVoOHkrakROeVpvU2ZyMGQ2Q0VMOGF5WHF5TENSbWdIM2hpKzE1U3lOaUxLZUh0dS9DT012WW1abWM0UjhZTk15ek1tSVdMdVVSZkQ5a0tWMm5sNFIrTFA0Snh5dkNJTUpKMGNQdVVtajM2dWMxKzZ0eEtxZEtQRzE3NmwvSFdGSHE0aEF4OGFYSW1oWHh0QzhLQmFTSVkvVGt5T2NLV2toNVZyb3VXalNieGxsVXBsSEZ3YlUvUkVLeDl6a2h0WVI0dkFjS2NRekwxb3lPamFQcDdoRmUzQ3pwMFRMUzRUVmd3SkJGdFpEMVg4Mm52UHdkRFVsSkFkcjlUQ0dkcTFqRzJlRGllakhLOFlEazZCY1VyOEhQb3V3dzViNi81MlAvYWVGSVIxeWdSdEZScjlrYjNSdFRQU1h6a05HbWZzTkl3Q3lKY1czcW9UeGFURFc0Q05USlBrNXVWUEJ2bUFHRzZMVW9COUJwZU50QXVhanpxTnBpU2pPb1pnRVlNMm1mU2tJVjk1K1d1S2RyNlZ3cWFvRzMvTWl4K010N3hZdDlOeC9heXFtcjlBaUE3RzlmQm5IdWZsZXcwekxuSlFiNnU0S1VTRVNsVm9kYU12NGVJck93M3V2dzNub1c3QnBtYUVMUnRaY1hpMFpiYTlGQTRCZGpjRTJ4NjZOc2txTFgrQnowcExHOEM0RFYxcEVoaUhBakk5RUN1d0ZtNWp2eFU3MEhzWU5CbGUwV3I2aG9MTzVNVXFDVDQ2aWFuQjAzZ2QzSGtPQ2YvTU1pQ3NCaE80QUVKTTZzalcwWDJOZWoybU5GTldkY1NGRk5sbmMrUktkbWFvdGpyK2FtUlZnSW5INy9ZSEJCU1BRY01WTGJSbXpMM3JyeUJvZ2svYmtYaUwvMXowNklhY3htNWdlNVk1S3JYRW1yaFZrQWZTNHl6d0JMN0FoY0hqSjFWbkgydDhoWkp2aEIxMFRwTHVMVzNhRGtGbHdLTzlwcjdsaEh5cjdraHhOUEx0V1ptd2U2eWRxNUN4YStGWTl2RTZhL3BJU3BJZ1NlN1FSaklET1FITXZpNDFadGhtU25heXZVUzRWQ3JmZWRYWCtzS0M4Q2x5b3kvdGFXWTFUYkFIaVluellKWWdiNGF5akl1Mjg1OVRGQUtOOFJ2RStWS1F3Y0RJbHpqRm1sdnpKNldyRU4rVUhQUzhEUVBsbEZ4S0VHeHBlS2x5dndNYllJdGJDUG10WEQ4dzBJRkhIUlB6eVZyTERxMTdUcjJ2cFRSL1UreElDNGdKaTdGVnAxVTc5QjhiUGRVU090NXF0Sk9oMVVLK1ZJTE1yL3h2UFZTdmswZ3MydTQwczhxNFhDUGdWTk9YNkowV1pzUVNjdlE0ZVA4THZBY3Y4a2ZmaDVnN29YYXBlM2luY1U2TG5icGtreGs2eG9Qd0lBSTh1Y0RpRUYzSVB1UDBacWFmSUhaMXRYZ1BjN2Z0bUdFZGRGWi9Dd1BTdlpLZWg2TWhHU2tTNGtuNnppeHZFdGo0ZjFjMXpmeFdEa2FKdE5yelFLb2p0dmtkcys5Rjl2amZIVVU0TWwrdzJqMGZ5Y0JXT3R2WUxSaVdXdno0YmoyNERETVJqQzVSWkhoN0NXbWtoWTdTbm1MbjhHWlhVK045c3lidHR3RW5kRFREVFEvOUkvOEhEbHlmRWpmKzBGZytOTzQwVXpFQ014b0pOM3FlS1lDYk1sd3EvNkpScHA4YUZLREN1SUZKL282M1lraVVyMm9oYXdqQXg4Njc5TXBxbkpILzNrbUV6NjNaNTZSVWc2dUxrZmlIelpDeStkdVh5TXk0b1JYbUU2TlNGWW12UmNxdSt5VmdCQjI0WkhpZEl0Zng1bFNpLysyTHkwL0NRalh1ZlNpcytpNk80YVJyNjE2cUV1b3lOSDducUpJQlJ2VWN1MXE0cXpFQ1JqMzVrTmJGeC81TTlUbncvZkpYTTZBbFg2anpVQnlSSUFOYnJ3N0prWFlRTFBDTzZMN3ZKYXFUcGFaYzlDZTN4a0p0dDJ2ZmpOM1dza2FxdEYyYzJKRERseWtjQzgxV2ZmZWdhT0l0TmhORndFZUF3RlpVRXdFRzZpM0RtWG1XSVlUSEwzRllWME95RzBwMVNPQjhnMXc3L0RXem5ZUDliOE40V3hXd1hmaTRHVGdYQytlblVlSHQxbTJ1aWx5Y0FadkdJcU9sT2cwU3J0SThSS0l3M3JtalNTakxMRjhiSmJuYTJrT2tSRHNyd1duME5ycGVKVjQ1NTlhSjlKNDZOcmkyT0p5KzdCSkNUMHFuYTVraG4xRTBLdnFPTGE2OGJQR3M4RGpEWVNCOUFZVkVyUEh5cWtNaU54ZlBmdkJqa21ZU2NYTjVzV0RvVGx5dmlQc2EwcUNBQTl0RFBDWEdzYXhDSzZsRDBxejRSK1BIVmx4aExlcDRVK0ZKYXZMSVlXS1AydXVseG1jZHNOdDcvSUVweTdQUnVmWlN3OG9tbFVRVFF2UkpoNTZpMjYrSUFvUXVXTjFjc3RiRXpHZHhOOEVxM3l2YWdnWDEzajl3THpnQ0lYVVBSS2kvbWNMM1p6R0ZMcWdiYzFQN0gvRUYwbzZSMnQwMVNqRys3VnJLREdzN1VVYlNMLzcrREpCM3YzWHpjV2l3UkFpMDNZTklrd2RETlkwZkVyWjZiOFQwWE5id1p6SGhmcGxFcTJ0Mzdnb1dvSUVuY1JzMys2MWFIOWtCdTJha3QzR09jb2JtS3BmSENBM0YxbExVOWIwT0E0WnNrS0wvdHV6Z2JMckxXZVRVQVhNS1BpWVdLUjFneXVIak5uNk1mVHJTUHpkNkNwV0F4RWtHdWdyZVRueXdncUxMWi9hMEtFMHI4TzF1ZTVMSDZKOXJ1cW5tUWhYUDVHZDRCY1ZNT1FNRldsQW9qK2dMdlcreVRZQ1J1elI5OURZZVVCSG5ob1EwZWxESzQycUZ2KzlQOWtyZXpzb3l4YnUzbzZmdmN1K1hzSFNZYmp1RWJrcUlUMVpwbjU3MDRCQzNLZW5DUWVFMXR4UjRJblpEbk9rc0xXQXFSSFNrRkxuMGJJWlJpdStPZktyaE13dzJBbkZuRFFwcHU4Mk14UkNOUVMvaHlMcXl2L2hEc0krWStVa2VZa0t4eEN3K1RTWFY3TzRBaytQMDVNKytWUHR1Q29tMGNuNG9RcHZCWXlZaTVjQSttNmlRQ1MvOU5jWlcvdzd4NXZBbmtMK0lpdVdaRUJ5UVVaV3lvaHF2ZHlMS1c0bVl0VDRrV3VBTXQxOU0yUnREOFREQWdPendwMWlPa2FocGsxUUwvNlROY3Rqc3ZMVjM4R3RWc2hSRzhESEdta1FpaG92OGdvSWwxSVdPaWRqVVNxVHdUdkxXUFc1UlVoMndpWkpqUU9ZNEFkVlBaSUdIbVNLNGVleEV0ZUI1bnpyNlZ0Rno0a3crYkM5d2JYWlJDM1dhQWhyQ2xRSTJQQ1VlMXU2NFFRMHlhU0JvZ1I2aEhQbjBOYnExbVIxZzN6aUhpWnJUNWQxbUN6MGVCMHl3WG9hVDZmR09ocUNBR2NQRjFRYnJld29hL3YrRVdvU1BjQVdxc2hYSHlHL3Y4TzRKY2gyUEt4ekUwdGtuRXovc1NvVkFjRzBtMndmYzUwb0pRVWhvTjNYUG5QYnFRT3F5L1NNckJhdE9Yd1RJbVhyQndmbFBBbWRhQTJJaVY1ays0N3YzRUoyM1ROVU91YnhCVVVmaE83L01TZjQrUTlzVXJLeXBzSk9JL0kyQUdRWnZCeXFYZGs2QWlxTmduZlp2R294bWVrRWxTbXBmUlYyVHJIdVV6L05tZ0hKOWhqckU3bDZ2ZkJnRnJTM0pYcVkwT1pyZTEyY3hMdnV6QXVHZWwvaEc0bXhUOXBxZy9GQVp5cUp3TFh0ZDdvSzZQN2VhdWdQVDF1d0Z3ZGYwbmdrRmZqUEQvRGNQcmVCY00wcUtma2RKZEJxTWxnbGQ2Uk1lMDdpRldXelRtNnhxeGp3VmhzY3JDSzZtbkNVQ1U0UjhVbGFPZ3lrQUs2U2V6bzZUS0RObU9lZDgxSjNYZFV1ejFxbFdvTXVsRXNCb09YYUtsN2VqZ2J4UzVHd0R6SjdEQzFTRW5acW9zVW1YT3ZyWlR2eCtYMzFhc0ZidmJGKzFXMmNnQXdLNW9ZVHNmOG96Z0F3M1ZFQ3hpMVRnZzVXdTFrVUZNUDlzcDNkbEN1TzllWldDR2ErVE1KYWFCOC8yNTR2alRTNXJmSzBLeXprcXQzSWtRQVNWN2krM3pDOTEzSEVmckxJeWdUcGhPdEpBMlo1M0xnTlJWbm1qZS93S3YySFZVSElRdUpNWHcrSkdnNzhjbFBjbHNCN25ZcUc2MHpybDlqZ1NYN0FSb2RXOEJwTGs3aXEvb21abjVoc2pDWmpXZ25vZ25ydjR0SW9ZU2laYlhmVDZQZHRkaWQ3UWpkRnRobHhoNzRoWWVTY1pVWGVkM1JxZ1FBeU9QbDVDbFBneE9jNFU0am8wOEhPdFNuVm5pdjFJNitLMHZSWlhZQjZJRlJJTmdZM3FULzFBd2w1YmhGWHNGSmFzaENpMzN3ZFN4TlVFSmNMUzV1MUNhdHlCNlR1cllBWHRyWkpsa2s0OWgrbGY5WDZ4bThraXJqcXNPMkpSRElXbzc3WDFnUUh1dGFIREFMZUVzRlZGb1h6bkdtK25TY2FOSUFwa2NRbkt5RzVRQWlzQmhlNTZRcUVKcUxtVlVsaE9ac0RHOSthekh3b2dPeUtBUkVsOThvQVJScG5tL3Z1emFrakF6WDhSY0VXRmVjbFVLOTh0Qk9JT1d4RTE5RzBpb3lOYmdpZzJURXp3U0hmSEtOVHVKRGJvbzdmY3VrPScpOwogIDwvc2NyaXB0Pgo8c2NyaXB0PgogIGZ1bmN0aW9uIGdhaWFfcGFyc2VGcmFnbWVudCgpIHsKICB2YXIgaGFzaCA9IGxvY2F0aW9uLmhhc2g7CiAgdmFyIHBhcmFtcyA9IHt9OwogIGlmICghaGFzaCkgewogIHJldHVybiBwYXJhbXM7CiAgfQogIHZhciBwYXJhbVN0cnMgPSBkZWNvZGVVUklDb21wb25lbnQoaGFzaC5zdWJzdHJpbmcoMSkpLnNwbGl0KCcmYW1wOycpOwogIGZvciAodmFyIGkgPSAwOyBpICZsdDsgcGFyYW1TdHJzLmxlbmd0aDsgaSsrKSB7CiAgICAgIHZhciBwYXJhbSA9IHBhcmFtU3Ryc1tpXS5zcGxpdCgnPScpOwogICAgICBwYXJhbXNbcGFyYW1bMF1dID0gcGFyYW1bMV07CiAgICB9CiAgICByZXR1cm4gcGFyYW1zOwogIH0KCiAgZnVuY3Rpb24gZ2FpYV9wcmVmaWxsRW1haWwoKSB7CiAgICB2YXIgZW1haWwgPSBudWxsOwogICAgaWYgKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKSB7CiAgICAgIGVtYWlsID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ0VtYWlsJyk7CiAgICB9CgogICAgaWYgKChlbWFpbC52YWx1ZSA9PSBudWxsIHx8IGVtYWlsLnZhbHVlID09ICcnKQogICAgICAgICZhbXA7JmFtcDsgKGVtYWlsLnR5cGUgIT0gJ2hpZGRlbicpKSB7CiAgICAgIGhhc2hQYXJhbXMgPSBnYWlhX3BhcnNlRnJhZ21lbnQoKTsKICAgICAgaWYgKGhhc2hQYXJhbXNbJ0VtYWlsJ10gJmFtcDsmYW1wOyBoYXNoUGFyYW1zWydFbWFpbCddICE9ICcnKSB7CiAgICAgICAgZW1haWwudmFsdWUgPSBoYXNoUGFyYW1zWydFbWFpbCddOwogICAgICB9CiAgICB9CiAgfQoKICAKICB0cnkgewogICAgZ2FpYV9wcmVmaWxsRW1haWwoKTsKICB9IGNhdGNoIChlKSB7CiAgfQogIAo8L3NjcmlwdD4KPHNjcmlwdD4KICB2YXIgZ2FpYV9zY3JvbGxUb0VsZW1lbnQgPSBmdW5jdGlvbihlbGVtZW50KSB7CiAgdmFyIGNhbGN1bGF0ZU9mZnNldEhlaWdodCA9IGZ1bmN0aW9uKGVsZW1lbnQpIHsKICB2YXIgY3VydG9wID0gMDsKICBpZiAoZWxlbWVudC5vZmZzZXRQYXJlbnQpIHsKICB3aGlsZSAoZWxlbWVudCkgewogIGN1cnRvcCArPSBlbGVtZW50Lm9mZnNldFRvcDsKICBlbGVtZW50ID0gZWxlbWVudC5vZmZzZXRQYXJlbnQ7CiAgfQogIH0KICByZXR1cm4gY3VydG9wOwogIH0KICB2YXIgc2lnaW5PZmZzZXRIZWlnaHQgPSBjYWxjdWxhdGVPZmZzZXRIZWlnaHQoZWxlbWVudCk7CiAgdmFyIHNjcm9sbEhlaWdodCA9IHNpZ2luT2Zmc2V0SGVpZ2h0IC0gd2luZG93LmlubmVySGVpZ2h0ICsKICBlbGVtZW50LmNsaWVudEhlaWdodCArIDAuMDIgKiB3aW5kb3cuaW5uZXJIZWlnaHQ7CiAgd2luZG93LnNjcm9sbCgwLCBzY3JvbGxIZWlnaHQpOwogIH0KPC9zY3JpcHQ+CiAgPHNjcmlwdD52YXIgUFNfLFBTX2E9dGhpcyxQU19hYT1mdW5jdGlvbihhLGIpe3ZhciBjPWEuc3BsaXQoIi4iKSxkPVBTX2E7Y1swXWluIGR8fCFkLmV4ZWNTY3JpcHR8fGQuZXhlY1NjcmlwdCgidmFyICIrY1swXSk7Zm9yKHZhciBlO2MubGVuZ3RoJmFtcDsmYW1wOyhlPWMuc2hpZnQoKSk7KWMubGVuZ3RofHx2b2lkIDA9PT1iP2RbZV0/ZD1kW2VdOmQ9ZFtlXT17fTpkW2VdPWJ9LFBTX2JhPWZ1bmN0aW9uKCl7fSxQU19jYT1mdW5jdGlvbihhKXt2YXIgYj10eXBlb2YgYTtpZigib2JqZWN0Ij09YilpZihhKXtpZihhIGluc3RhbmNlb2YgQXJyYXkpcmV0dXJuImFycmF5IjtpZihhIGluc3RhbmNlb2YgT2JqZWN0KXJldHVybiBiO3ZhciBjPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChhKTtpZigiW29iamVjdCBXaW5kb3ddIj09YylyZXR1cm4ib2JqZWN0IjtpZigiW29iamVjdCBBcnJheV0iPT1jfHwibnVtYmVyIj09dHlwZW9mIGEubGVuZ3RoJmFtcDsmYW1wOyJ1bmRlZmluZWQiIT10eXBlb2YgYS5zcGxpY2UmYW1wOyZhbXA7CiJ1bmRlZmluZWQiIT10eXBlb2YgYS5wcm9wZXJ0eUlzRW51bWVyYWJsZSZhbXA7JmFtcDshYS5wcm9wZXJ0eUlzRW51bWVyYWJsZSgic3BsaWNlIikpcmV0dXJuImFycmF5IjtpZigiW29iamVjdCBGdW5jdGlvbl0iPT1jfHwidW5kZWZpbmVkIiE9dHlwZW9mIGEuY2FsbCZhbXA7JmFtcDsidW5kZWZpbmVkIiE9dHlwZW9mIGEucHJvcGVydHlJc0VudW1lcmFibGUmYW1wOyZhbXA7IWEucHJvcGVydHlJc0VudW1lcmFibGUoImNhbGwiKSlyZXR1cm4iZnVuY3Rpb24ifWVsc2UgcmV0dXJuIm51bGwiO2Vsc2UgaWYoImZ1bmN0aW9uIj09YiZhbXA7JmFtcDsidW5kZWZpbmVkIj09dHlwZW9mIGEuY2FsbClyZXR1cm4ib2JqZWN0IjtyZXR1cm4gYn0sUFNfYj1mdW5jdGlvbihhKXtyZXR1cm4iYXJyYXkiPT1QU19jYShhKX0sUFNfYz1mdW5jdGlvbihhKXtyZXR1cm4ic3RyaW5nIj09dHlwZW9mIGF9LFBTX2Q9ZnVuY3Rpb24oYSl7cmV0dXJuIm51bWJlciI9PXR5cGVvZiBhfSxQU19kYT1mdW5jdGlvbihhKXtyZXR1cm4iZnVuY3Rpb24iPT1QU19jYShhKX0sClBTX2VhPWZ1bmN0aW9uKGEpe3ZhciBiPXR5cGVvZiBhO3JldHVybiJvYmplY3QiPT1iJmFtcDsmYW1wO251bGwhPWF8fCJmdW5jdGlvbiI9PWJ9LFBTX2ZhPSJjbG9zdXJlX3VpZF8iKygxRTkqTWF0aC5yYW5kb20oKSZndDsmZ3Q7Jmd0OzApLFBTX2dhPTAsUFNfaGE9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBhLmNhbGwuYXBwbHkoYS5iaW5kLGFyZ3VtZW50cyl9LFBTX2lhPWZ1bmN0aW9uKGEsYixjKXtpZighYSl0aHJvdyBFcnJvcigpO2lmKDImbHQ7YXJndW1lbnRzLmxlbmd0aCl7dmFyIGQ9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLDIpO3JldHVybiBmdW5jdGlvbigpe3ZhciBjPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cyk7QXJyYXkucHJvdG90eXBlLnVuc2hpZnQuYXBwbHkoYyxkKTtyZXR1cm4gYS5hcHBseShiLGMpfX1yZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gYS5hcHBseShiLGFyZ3VtZW50cyl9fSxQU19lPWZ1bmN0aW9uKGEsYixjKXtQU19lPUZ1bmN0aW9uLnByb3RvdHlwZS5iaW5kJmFtcDsmYW1wOwotMSE9RnVuY3Rpb24ucHJvdG90eXBlLmJpbmQudG9TdHJpbmcoKS5pbmRleE9mKCJuYXRpdmUgY29kZSIpP1BTX2hhOlBTX2lhO3JldHVybiBQU19lLmFwcGx5KG51bGwsYXJndW1lbnRzKX0sUFNfamE9ZnVuY3Rpb24oYSxiKXt2YXIgYz1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMsMSk7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIGI9Yy5zbGljZSgpO2IucHVzaC5hcHBseShiLGFyZ3VtZW50cyk7cmV0dXJuIGEuYXBwbHkodGhpcyxiKX19LFBTX2Y9RGF0ZS5ub3d8fGZ1bmN0aW9uKCl7cmV0dXJuK25ldyBEYXRlfSxQU19nPWZ1bmN0aW9uKGEsYil7ZnVuY3Rpb24gYygpe31jLnByb3RvdHlwZT1iLnByb3RvdHlwZTthLkE9Yi5wcm90b3R5cGU7YS5wcm90b3R5cGU9bmV3IGM7YS5wcm90b3R5cGUuY29uc3RydWN0b3I9YTthLlRhPWZ1bmN0aW9uKGEsYyxmKXtmb3IodmFyIGc9QXJyYXkoYXJndW1lbnRzLmxlbmd0aC0yKSxoPTI7aCZsdDthcmd1bWVudHMubGVuZ3RoO2grKylnW2gtCjJdPWFyZ3VtZW50c1toXTtyZXR1cm4gYi5wcm90b3R5cGVbY10uYXBwbHkoYSxnKX19O0Z1bmN0aW9uLnByb3RvdHlwZS5iaW5kPUZ1bmN0aW9uLnByb3RvdHlwZS5iaW5kfHxmdW5jdGlvbihhLGIpe2lmKDEmbHQ7YXJndW1lbnRzLmxlbmd0aCl7dmFyIGM9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLDEpO2MudW5zaGlmdCh0aGlzLGEpO3JldHVybiBQU19lLmFwcGx5KG51bGwsYyl9cmV0dXJuIFBTX2UodGhpcyxhKX07dmFyIFBTX2thPWZ1bmN0aW9uKCl7dHJ5e3JldHVybiBuZXcgWE1MSHR0cFJlcXVlc3R9Y2F0Y2goYSl7Zm9yKHZhciBiPVsiTVNYTUwyLlhNTEhUVFAuNi4wIiwiTVNYTUwyLlhNTEhUVFAuMy4wIiwiTVNYTUwyLlhNTEhUVFAiLCJNaWNyb3NvZnQuWE1MSFRUUCJdLGM9MDtjJmx0O2IubGVuZ3RoO2MrKyl0cnl7cmV0dXJuIG5ldyBBY3RpdmVYT2JqZWN0KGJbY10pfWNhdGNoKGQpe319cmV0dXJuIG51bGx9O1BTX2FhKCJnYWlhLmFqYXgubmV3WG1sSHR0cFJlcXVlc3QiLFBTX2thKTt2YXIgUFNfaD1mdW5jdGlvbigpe3RoaXMuYT1QU19rYSgpO3RoaXMucGFyYW1ldGVycz17fX07UFNfYWEoImdhaWEuYWpheC5YbWxIdHRwRm9ybVJlcXVlc3QiLFBTX2gpOwpQU19oLnByb3RvdHlwZS5zZW5kPWZ1bmN0aW9uKGEsYil7dmFyIGM9W10sZDtmb3IoZCBpbiB0aGlzLnBhcmFtZXRlcnMpYy5wdXNoKGQrIj0iK2VuY29kZVVSSUNvbXBvbmVudCh0aGlzLnBhcmFtZXRlcnNbZF0pKTt2YXIgYz1jLmpvaW4oIiZhbXA7IiksZT10aGlzLmE7ZS5vcGVuKCJQT1NUIixhLCEwKTtlLnNldFJlcXVlc3RIZWFkZXIoIkNvbnRlbnQtdHlwZSIsImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIpO2Uub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7ND09ZS5yZWFkeVN0YXRlJmFtcDsmYW1wO2Ioe3N0YXR1czplLnN0YXR1cyx0ZXh0OmUucmVzcG9uc2VUZXh0fSl9O2Uuc2VuZChjKX07UFNfaC5wcm90b3R5cGUuc2VuZD1QU19oLnByb3RvdHlwZS5zZW5kOwpQU19oLnByb3RvdHlwZS5jPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzLmE7ZC5vcGVuKCJQT1NUIixhLCEwKTtkLnNldFJlcXVlc3RIZWFkZXIoIkNvbnRlbnQtdHlwZSIsImFwcGxpY2F0aW9uL2pzb24iKTtkLm9ucmVhZHlzdGF0ZWNoYW5nZT1mdW5jdGlvbigpezQ9PWQucmVhZHlTdGF0ZSZhbXA7JmFtcDtjKHtzdGF0dXM6ZC5zdGF0dXMsdGV4dDpkLnJlc3BvbnNlVGV4dH0pfTtkLnNlbmQoYil9O1BTX2gucHJvdG90eXBlLnNlbmRKc29uPVBTX2gucHJvdG90eXBlLmM7UFNfaC5wcm90b3R5cGUuYj1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMuYTtjLm9wZW4oIkdFVCIsYSwhMCk7Yy5vbnJlYWR5c3RhdGVjaGFuZ2U9ZnVuY3Rpb24oKXs0PT1jLnJlYWR5U3RhdGUmYW1wOyZhbXA7Yih7c3RhdHVzOmMuc3RhdHVzLHRleHQ6Yy5yZXNwb25zZVRleHR9KX07Yy5zZW5kKCl9O1BTX2gucHJvdG90eXBlLmdldD1QU19oLnByb3RvdHlwZS5iO3ZhciBQU19pPWZ1bmN0aW9uKCl7dGhpcy51PXRoaXMudTt0aGlzLmo9dGhpcy5qfTtQU19pLnByb3RvdHlwZS51PSExO1BTX2kucHJvdG90eXBlLkw9ZnVuY3Rpb24oKXt0aGlzLnV8fCh0aGlzLnU9ITAsdGhpcy5tKCkpfTtQU19pLnByb3RvdHlwZS5tPWZ1bmN0aW9uKCl7aWYodGhpcy5qKWZvcig7dGhpcy5qLmxlbmd0aDspdGhpcy5qLnNoaWZ0KCkoKX07dmFyIFBTX2xhPWZ1bmN0aW9uKGEpe2EmYW1wOyZhbXA7ImZ1bmN0aW9uIj09dHlwZW9mIGEuTCZhbXA7JmFtcDthLkwoKX07dmFyIFBTX21hPWZ1bmN0aW9uKGEpe2lmKEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKUVycm9yLmNhcHR1cmVTdGFja1RyYWNlKHRoaXMsUFNfbWEpO2Vsc2V7dmFyIGI9RXJyb3IoKS5zdGFjaztiJmFtcDsmYW1wOyh0aGlzLnN0YWNrPWIpfWEmYW1wOyZhbXA7KHRoaXMubWVzc2FnZT1TdHJpbmcoYSkpfTtQU19nKFBTX21hLEVycm9yKTtQU19tYS5wcm90b3R5cGUubmFtZT0iQ3VzdG9tRXJyb3IiO3ZhciBQU19uYTt2YXIgUFNfb2E9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9YS5zcGxpdCgiJXMiKSxkPSIiLGU9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLDEpO2UubGVuZ3RoJmFtcDsmYW1wOzEmbHQ7Yy5sZW5ndGg7KWQrPWMuc2hpZnQoKStlLnNoaWZ0KCk7cmV0dXJuIGQrYy5qb2luKCIlcyIpfSxQU19wYT1TdHJpbmcucHJvdG90eXBlLnRyaW0/ZnVuY3Rpb24oYSl7cmV0dXJuIGEudHJpbSgpfTpmdW5jdGlvbihhKXtyZXR1cm4gYS5yZXBsYWNlKC9eW1xzXHhhMF0rfFtcc1x4YTBdKyQvZywiIil9LFBTX2o9ZnVuY3Rpb24oYSl7aWYoIVBTX3FhLnRlc3QoYSkpcmV0dXJuIGE7LTEhPWEuaW5kZXhPZigiJmFtcDsiKSZhbXA7JmFtcDsoYT1hLnJlcGxhY2UoUFNfcmEsIiZhbXA7YW1wOyIpKTstMSE9YS5pbmRleE9mKCImbHQ7IikmYW1wOyZhbXA7KGE9YS5yZXBsYWNlKFBTX3NhLCImYW1wO2x0OyIpKTstMSE9YS5pbmRleE9mKCImZ3Q7IikmYW1wOyZhbXA7KGE9YS5yZXBsYWNlKFBTX3RhLCImYW1wO2d0OyIpKTstMSE9YS5pbmRleE9mKCciJykmYW1wOyZhbXA7KGE9YS5yZXBsYWNlKFBTX3VhLAoiJmFtcDtxdW90OyIpKTstMSE9YS5pbmRleE9mKCInIikmYW1wOyZhbXA7KGE9YS5yZXBsYWNlKFBTX3ZhLCImYW1wOyMzOTsiKSk7LTEhPWEuaW5kZXhPZigiXHgwMCIpJmFtcDsmYW1wOyhhPWEucmVwbGFjZShQU193YSwiJmFtcDsjMDsiKSk7cmV0dXJuIGF9LFBTX3JhPS8mYW1wOy9nLFBTX3NhPS8mbHQ7L2csUFNfdGE9LyZndDsvZyxQU191YT0vIi9nLFBTX3ZhPS8nL2csUFNfd2E9L1x4MDAvZyxQU19xYT0vW1x4MDAmYW1wOyZsdDsmZ3Q7IiddLyxQU195YT1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz0wLGQ9UFNfcGEoU3RyaW5nKGEpKS5zcGxpdCgiLiIpLGU9UFNfcGEoU3RyaW5nKGIpKS5zcGxpdCgiLiIpLGY9TWF0aC5tYXgoZC5sZW5ndGgsZS5sZW5ndGgpLGc9MDswPT1jJmFtcDsmYW1wO2cmbHQ7ZjtnKyspe3ZhciBoPWRbZ118fCIiLG09ZVtnXXx8IiIsaz1SZWdFeHAoIihcXGQqKShcXEQqKSIsImciKSxsPVJlZ0V4cCgiKFxcZCopKFxcRCopIiwiZyIpO2Rve3ZhciBuPWsuZXhlYyhoKXx8WyIiLCIiLCIiXSxwPWwuZXhlYyhtKXx8WyIiLCIiLCIiXTtpZigwPT1uWzBdLmxlbmd0aCZhbXA7JmFtcDsKMD09cFswXS5sZW5ndGgpYnJlYWs7Yz1QU194YSgwPT1uWzFdLmxlbmd0aD8wOnBhcnNlSW50KG5bMV0sMTApLDA9PXBbMV0ubGVuZ3RoPzA6cGFyc2VJbnQocFsxXSwxMCkpfHxQU194YSgwPT1uWzJdLmxlbmd0aCwwPT1wWzJdLmxlbmd0aCl8fFBTX3hhKG5bMl0scFsyXSl9d2hpbGUoMD09Yyl9cmV0dXJuIGN9LFBTX3hhPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGEmbHQ7Yj8tMTphJmd0O2I/MTowfSxQU196YT1mdW5jdGlvbihhKXtyZXR1cm4gU3RyaW5nKGEpLnJlcGxhY2UoL1wtKFthLXpdKS9nLGZ1bmN0aW9uKGEsYyl7cmV0dXJuIGMudG9VcHBlckNhc2UoKX0pfSxQU19BYT1mdW5jdGlvbihhKXt2YXIgYj1QU19jKHZvaWQgMCk/InVuZGVmaW5lZCIucmVwbGFjZSgvKFstKClcW1xde30rPyouJFxefCw6IyZsdDshXFxdKS9nLCJcXCQxIikucmVwbGFjZSgvXHgwOC9nLCJcXHgwOCIpOiJcXHMiO3JldHVybiBhLnJlcGxhY2UobmV3IFJlZ0V4cCgiKF4iKyhiPyJ8WyIrYisiXSsiOiIiKSsiKShbYS16XSkiLAoiZyIpLGZ1bmN0aW9uKGEsYixlKXtyZXR1cm4gYitlLnRvVXBwZXJDYXNlKCl9KX07dmFyIFBTX0JhPWZ1bmN0aW9uKGEsYil7Yi51bnNoaWZ0KGEpO1BTX21hLmNhbGwodGhpcyxQU19vYS5hcHBseShudWxsLGIpKTtiLnNoaWZ0KCl9O1BTX2coUFNfQmEsUFNfbWEpO1BTX0JhLnByb3RvdHlwZS5uYW1lPSJBc3NlcnRpb25FcnJvciI7CnZhciBQU19DYT1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT0iQXNzZXJ0aW9uIGZhaWxlZCI7aWYoYyl2YXIgZT1lKygiOiAiK2MpLGY9ZDtlbHNlIGEmYW1wOyZhbXA7KGUrPSI6ICIrYSxmPWIpO3Rocm93IG5ldyBQU19CYSgiIitlLGZ8fFtdKTt9LFBTX2s9ZnVuY3Rpb24oYSxiLGMpe2F8fFBTX0NhKCIiLG51bGwsYixBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMsMikpO3JldHVybiBhfSxQU19sPWZ1bmN0aW9uKGEsYil7dGhyb3cgbmV3IFBTX0JhKCJGYWlsdXJlIisoYT8iOiAiK2E6IiIpLEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywxKSk7fSxQU19EYT1mdW5jdGlvbihhLGIsYyl7UFNfYyhhKXx8UFNfQ2EoIkV4cGVjdGVkIHN0cmluZyBidXQgZ290ICVzOiAlcy4iLFtQU19jYShhKSxhXSxiLEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywyKSk7cmV0dXJuIGF9LFBTX0VhPWZ1bmN0aW9uKGEsYixjKXtQU19lYShhKXx8UFNfQ2EoIkV4cGVjdGVkIG9iamVjdCBidXQgZ290ICVzOiAlcy4iLApbUFNfY2EoYSksYV0sYixBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMsMikpfSxQU19HYT1mdW5jdGlvbihhLGIsYyxkKXthIGluc3RhbmNlb2YgYnx8UFNfQ2EoIkV4cGVjdGVkIGluc3RhbmNlb2YgJXMgYnV0IGdvdCAlcy4iLFtQU19GYShiKSxQU19GYShhKV0sYyxBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMsMykpfSxQU19GYT1mdW5jdGlvbihhKXtyZXR1cm4gYSBpbnN0YW5jZW9mIEZ1bmN0aW9uP2EuZGlzcGxheU5hbWV8fGEubmFtZXx8InVua25vd24gdHlwZSBuYW1lIjphIGluc3RhbmNlb2YgT2JqZWN0P2EuY29uc3RydWN0b3IuZGlzcGxheU5hbWV8fGEuY29uc3RydWN0b3IubmFtZXx8T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGEpOm51bGw9PT1hPyJudWxsIjp0eXBlb2YgYX07dmFyIFBTX0hhPWZ1bmN0aW9uKGEpe1BTX0hhWyIgIl0oYSk7cmV0dXJuIGF9O1BTX0hhWyIgIl09UFNfYmE7dmFyIFBTX209QXJyYXkucHJvdG90eXBlLFBTX0lhPVBTX20uaW5kZXhPZj9mdW5jdGlvbihhLGIsYyl7UFNfayhudWxsIT1hLmxlbmd0aCk7cmV0dXJuIFBTX20uaW5kZXhPZi5jYWxsKGEsYixjKX06ZnVuY3Rpb24oYSxiLGMpe2M9bnVsbD09Yz8wOjAmZ3Q7Yz9NYXRoLm1heCgwLGEubGVuZ3RoK2MpOmM7aWYoUFNfYyhhKSlyZXR1cm4gUFNfYyhiKSZhbXA7JmFtcDsxPT1iLmxlbmd0aD9hLmluZGV4T2YoYixjKTotMTtmb3IoO2MmbHQ7YS5sZW5ndGg7YysrKWlmKGMgaW4gYSZhbXA7JmFtcDthW2NdPT09YilyZXR1cm4gYztyZXR1cm4tMX0sUFNfbj1QU19tLmZvckVhY2g/ZnVuY3Rpb24oYSxiLGMpe1BTX2sobnVsbCE9YS5sZW5ndGgpO1BTX20uZm9yRWFjaC5jYWxsKGEsYixjKX06ZnVuY3Rpb24oYSxiLGMpe2Zvcih2YXIgZD1hLmxlbmd0aCxlPVBTX2MoYSk/YS5zcGxpdCgiIik6YSxmPTA7ZiZsdDtkO2YrKylmIGluIGUmYW1wOyZhbXA7Yi5jYWxsKGMsZVtmXSxmLGEpfSxQU19KYT1QU19tLmZpbHRlcj9mdW5jdGlvbihhLGIsYyl7UFNfayhudWxsIT0KYS5sZW5ndGgpO3JldHVybiBQU19tLmZpbHRlci5jYWxsKGEsYixjKX06ZnVuY3Rpb24oYSxiLGMpe2Zvcih2YXIgZD1hLmxlbmd0aCxlPVtdLGY9MCxnPVBTX2MoYSk/YS5zcGxpdCgiIik6YSxoPTA7aCZsdDtkO2grKylpZihoIGluIGcpe3ZhciBtPWdbaF07Yi5jYWxsKGMsbSxoLGEpJmFtcDsmYW1wOyhlW2YrK109bSl9cmV0dXJuIGV9LFBTX0thPVBTX20ubWFwP2Z1bmN0aW9uKGEsYixjKXtQU19rKG51bGwhPWEubGVuZ3RoKTtyZXR1cm4gUFNfbS5tYXAuY2FsbChhLGIsYyl9OmZ1bmN0aW9uKGEsYixjKXtmb3IodmFyIGQ9YS5sZW5ndGgsZT1BcnJheShkKSxmPVBTX2MoYSk/YS5zcGxpdCgiIik6YSxnPTA7ZyZsdDtkO2crKylnIGluIGYmYW1wOyZhbXA7KGVbZ109Yi5jYWxsKGMsZltnXSxnLGEpKTtyZXR1cm4gZX0sUFNfTGE9UFNfbS5zb21lP2Z1bmN0aW9uKGEsYixjKXtQU19rKG51bGwhPWEubGVuZ3RoKTtyZXR1cm4gUFNfbS5zb21lLmNhbGwoYSxiLGMpfTpmdW5jdGlvbihhLGIsYyl7Zm9yKHZhciBkPWEubGVuZ3RoLAplPVBTX2MoYSk/YS5zcGxpdCgiIik6YSxmPTA7ZiZsdDtkO2YrKylpZihmIGluIGUmYW1wOyZhbXA7Yi5jYWxsKGMsZVtmXSxmLGEpKXJldHVybiEwO3JldHVybiExfSxQU19NYT1mdW5jdGlvbihhLGIpe3ZhciBjPVBTX0lhKGEsYiksZDtpZihkPTAmbHQ7PWMpUFNfayhudWxsIT1hLmxlbmd0aCksUFNfbS5zcGxpY2UuY2FsbChhLGMsMSk7cmV0dXJuIGR9O3ZhciBQU19OYT1mdW5jdGlvbihhLGIsYyl7Zm9yKHZhciBkIGluIGEpYi5jYWxsKGMsYVtkXSxkLGEpfSxQU19QYT1mdW5jdGlvbihhKXt2YXIgYj1QU19PYSxjO2ZvcihjIGluIGIpaWYoYltjXT09YSlyZXR1cm4hMDtyZXR1cm4hMX0sUFNfUWE9ImNvbnN0cnVjdG9yIGhhc093blByb3BlcnR5IGlzUHJvdG90eXBlT2YgcHJvcGVydHlJc0VudW1lcmFibGUgdG9Mb2NhbGVTdHJpbmcgdG9TdHJpbmcgdmFsdWVPZiIuc3BsaXQoIiAiKSxQU19SYT1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYyxkLGU9MTtlJmx0O2FyZ3VtZW50cy5sZW5ndGg7ZSsrKXtkPWFyZ3VtZW50c1tlXTtmb3IoYyBpbiBkKWFbY109ZFtjXTtmb3IodmFyIGY9MDtmJmx0O1BTX1FhLmxlbmd0aDtmKyspYz1QU19RYVtmXSxPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZCxjKSZhbXA7JmFtcDsoYVtjXT1kW2NdKX19LFBTX1NhPWZ1bmN0aW9uKGEpe3ZhciBiPWFyZ3VtZW50cy5sZW5ndGg7aWYoMT09YiZhbXA7JmFtcDtQU19iKGFyZ3VtZW50c1swXSkpcmV0dXJuIFBTX1NhLmFwcGx5KG51bGwsCmFyZ3VtZW50c1swXSk7Zm9yKHZhciBjPXt9LGQ9MDtkJmx0O2I7ZCsrKWNbYXJndW1lbnRzW2RdXT0hMDtyZXR1cm4gY307dmFyIFBTX287YTp7dmFyIFBTX1RhPVBTX2EubmF2aWdhdG9yO2lmKFBTX1RhKXt2YXIgUFNfVWE9UFNfVGEudXNlckFnZW50O2lmKFBTX1VhKXtQU19vPVBTX1VhO2JyZWFrIGF9fVBTX289IiJ9dmFyIFBTX3A9ZnVuY3Rpb24oYSl7cmV0dXJuLTEhPVBTX28uaW5kZXhPZihhKX07dmFyIFBTX1ZhPWZ1bmN0aW9uKCl7cmV0dXJuIFBTX3AoIk9wZXJhIil8fFBTX3AoIk9QUiIpfSxQU19XYT1mdW5jdGlvbigpe3JldHVybiBQU19wKCJFZGdlIil8fFBTX3AoIlRyaWRlbnQiKXx8UFNfcCgiTVNJRSIpfSxQU19YYT1mdW5jdGlvbigpe3JldHVybihQU19wKCJDaHJvbWUiKXx8UFNfcCgiQ3JpT1MiKSkmYW1wOyZhbXA7IVBTX1ZhKCkmYW1wOyZhbXA7IVBTX1dhKCl9O3ZhciBQU19xPWZ1bmN0aW9uKCl7cmV0dXJuIFBTX3AoIkVkZ2UiKX07dmFyIFBTX1lhPWZ1bmN0aW9uKCl7cmV0dXJuIFBTX3AoImlQaG9uZSIpJmFtcDsmYW1wOyFQU19wKCJpUG9kIikmYW1wOyZhbXA7IVBTX3AoImlQYWQiKX07dmFyIFBTX3I9UFNfVmEoKSxQU19zPVBTX1dhKCksUFNfdD1QU19wKCJHZWNrbyIpJmFtcDsmYW1wOyEoLTEhPVBTX28udG9Mb3dlckNhc2UoKS5pbmRleE9mKCJ3ZWJraXQiKSZhbXA7JmFtcDshUFNfcSgpKSZhbXA7JmFtcDshKFBTX3AoIlRyaWRlbnQiKXx8UFNfcCgiTVNJRSIpKSZhbXA7JmFtcDshUFNfcSgpLFBTX3U9LTEhPVBTX28udG9Mb3dlckNhc2UoKS5pbmRleE9mKCJ3ZWJraXQiKSZhbXA7JmFtcDshUFNfcSgpLFBTX1phPVBTX3UmYW1wOyZhbXA7UFNfcCgiTW9iaWxlIiksUFNfX2E9UFNfcCgiTWFjaW50b3NoIiksUFNfMGE9ZnVuY3Rpb24oKXt2YXIgYT1QU19vO2lmKFBTX3QpcmV0dXJuL3J2XDooW15cKTtdKykoXCl8OykvLmV4ZWMoYSk7aWYoUFNfcyZhbXA7JmFtcDtQU19xKCkpcmV0dXJuL0VkZ2VcLyhbXGRcLl0rKS8uZXhlYyhhKTtpZihQU19zKXJldHVybi9cYig/Ok1TSUV8cnYpWzogXShbXlwpO10rKShcKXw7KS8uZXhlYyhhKTtpZihQU191KXJldHVybi9XZWJLaXRcLyhcUyspLy5leGVjKGEpfSxQU18xYT1mdW5jdGlvbigpe3ZhciBhPVBTX2EuZG9jdW1lbnQ7CnJldHVybiBhP2EuZG9jdW1lbnRNb2RlOnZvaWQgMH0sUFNfMmE9ZnVuY3Rpb24oKXtpZihQU19yJmFtcDsmYW1wO1BTX2Eub3BlcmEpe3ZhciBhPVBTX2Eub3BlcmEudmVyc2lvbjtyZXR1cm4gUFNfZGEoYSk/YSgpOmF9dmFyIGE9IiIsYj1QU18wYSgpO2ImYW1wOyZhbXA7KGE9Yj9iWzFdOiIiKTtyZXR1cm4gUFNfcyZhbXA7JmFtcDshUFNfcSgpJmFtcDsmYW1wOyhiPVBTXzFhKCksYiZndDtwYXJzZUZsb2F0KGEpKT9TdHJpbmcoYik6YX0oKSxQU18zYT17fSxQU192PWZ1bmN0aW9uKGEpe3JldHVybiBQU18zYVthXXx8KFBTXzNhW2FdPTAmbHQ7PVBTX3lhKFBTXzJhLGEpKX0sUFNfdz1mdW5jdGlvbihhKXtyZXR1cm4gUFNfcyZhbXA7JmFtcDsoUFNfcSgpfHxQU180YSZndDs9YSl9LFBTXzVhPVBTX2EuZG9jdW1lbnQsUFNfNmE9UFNfMWEoKSxQU180YT0hUFNfNWF8fCFQU19zfHwhUFNfNmEmYW1wOyZhbXA7UFNfcSgpP3ZvaWQgMDpQU182YXx8KCJDU1MxQ29tcGF0Ij09UFNfNWEuY29tcGF0TW9kZT9wYXJzZUludChQU18yYSwxMCk6NSk7dmFyIFBTXzdhPSFQU19zfHxQU193KDkpLFBTXzhhPSFQU19zfHxQU193KDkpLFBTXzlhPVBTX3MmYW1wOyZhbXA7IVBTX3YoIjkiKTshUFNfdXx8UFNfdigiNTI4Iik7UFNfdCZhbXA7JmFtcDtQU192KCIxLjliIil8fFBTX3MmYW1wOyZhbXA7UFNfdigiOCIpfHxQU19yJmFtcDsmYW1wO1BTX3YoIjkuNSIpfHxQU191JmFtcDsmYW1wO1BTX3YoIjUyOCIpO1BTX3QmYW1wOyZhbXA7IVBTX3YoIjgiKXx8UFNfcyZhbXA7JmFtcDtQU192KCI5Iik7dmFyIFBTX3g9ZnVuY3Rpb24oYSxiKXt0aGlzLnR5cGU9YTt0aGlzLmE9dGhpcy50YXJnZXQ9Yjt0aGlzLnlhPSEwfTtQU194LnByb3RvdHlwZS5wcmV2ZW50RGVmYXVsdD1mdW5jdGlvbigpe3RoaXMueWE9ITF9O3ZhciBQU195PWZ1bmN0aW9uKGEsYil7UFNfeC5jYWxsKHRoaXMsYT9hLnR5cGU6IiIpO3RoaXMuYT10aGlzLnRhcmdldD1udWxsO3RoaXMua2V5Q29kZT10aGlzLmNsaWVudFk9dGhpcy5jbGllbnRYPTA7dGhpcy5xYT0hMTt0aGlzLlQ9dGhpcy5zdGF0ZT1udWxsO2lmKGEpe3RoaXMudHlwZT1hLnR5cGU7dGhpcy50YXJnZXQ9YS50YXJnZXR8fGEuc3JjRWxlbWVudDt0aGlzLmE9Yjt2YXIgYz1hLnJlbGF0ZWRUYXJnZXQ7aWYoYyZhbXA7JmFtcDtQU190KXRyeXtQU19IYShjLm5vZGVOYW1lKX1jYXRjaChkKXt9dGhpcy5jbGllbnRYPXZvaWQgMCE9PWEuY2xpZW50WD9hLmNsaWVudFg6YS5wYWdlWDt0aGlzLmNsaWVudFk9dm9pZCAwIT09YS5jbGllbnRZP2EuY2xpZW50WTphLnBhZ2VZO3RoaXMua2V5Q29kZT1hLmtleUNvZGV8fDA7dGhpcy5xYT1hLmN0cmxLZXk7dGhpcy5zdGF0ZT1hLnN0YXRlO3RoaXMuVD1hO2EuZGVmYXVsdFByZXZlbnRlZCZhbXA7JmFtcDt0aGlzLnByZXZlbnREZWZhdWx0KCl9fTsKUFNfZyhQU195LFBTX3gpO3ZhciBQU18kYT1bMSw0LDJdO1BTX3kucHJvdG90eXBlLnByZXZlbnREZWZhdWx0PWZ1bmN0aW9uKCl7UFNfeS5BLnByZXZlbnREZWZhdWx0LmNhbGwodGhpcyk7dmFyIGE9dGhpcy5UO2lmKGEucHJldmVudERlZmF1bHQpYS5wcmV2ZW50RGVmYXVsdCgpO2Vsc2UgaWYoYS5yZXR1cm5WYWx1ZT0hMSxQU185YSl0cnl7aWYoYS5jdHJsS2V5fHwxMTImbHQ7PWEua2V5Q29kZSZhbXA7JmFtcDsxMjMmZ3Q7PWEua2V5Q29kZSlhLmtleUNvZGU9LTF9Y2F0Y2goYil7fX07UFNfeS5wcm90b3R5cGUuVT1mdW5jdGlvbigpe3JldHVybiB0aGlzLlR9O3ZhciBQU19hYj0iY2xvc3VyZV9saXN0ZW5hYmxlXyIrKDFFNipNYXRoLnJhbmRvbSgpfDApLFBTX2JiPWZ1bmN0aW9uKGEpe3JldHVybiEoIWF8fCFhW1BTX2FiXSl9LFBTX2NiPTA7dmFyIFBTX2RiPWZ1bmN0aW9uKGEsYixjLGQsZSl7dGhpcy5saXN0ZW5lcj1hO3RoaXMuYT1udWxsO3RoaXMuc3JjPWI7dGhpcy50eXBlPWM7dGhpcy5jYT0hIWQ7dGhpcy5lYT1lO3RoaXMuZ2E9KytQU19jYjt0aGlzLlA9dGhpcy5iYT0hMX0sUFNfZWI9ZnVuY3Rpb24oYSl7YS5QPSEwO2EubGlzdGVuZXI9bnVsbDthLmE9bnVsbDthLnNyYz1udWxsO2EuZWE9bnVsbH07dmFyIFBTX2ZiPWZ1bmN0aW9uKGEpe3RoaXMuc3JjPWE7dGhpcy5hPXt9O3RoaXMuYj0wfTtQU19mYi5wcm90b3R5cGUuYWRkPWZ1bmN0aW9uKGEsYixjLGQsZSl7dmFyIGY9YS50b1N0cmluZygpO2E9dGhpcy5hW2ZdO2F8fChhPXRoaXMuYVtmXT1bXSx0aGlzLmIrKyk7dmFyIGc9UFNfZ2IoYSxiLGQsZSk7LTEmbHQ7Zz8oYj1hW2ddLGN8fChiLmJhPSExKSk6KGI9bmV3IFBTX2RiKGIsdGhpcy5zcmMsZiwhIWQsZSksYi5iYT1jLGEucHVzaChiKSk7cmV0dXJuIGJ9O1BTX2ZiLnByb3RvdHlwZS5yZW1vdmU9ZnVuY3Rpb24oYSxiLGMsZCl7YT1hLnRvU3RyaW5nKCk7aWYoIShhIGluIHRoaXMuYSkpcmV0dXJuITE7dmFyIGU9dGhpcy5hW2FdO2I9UFNfZ2IoZSxiLGMsZCk7cmV0dXJuLTEmbHQ7Yj8oUFNfZWIoZVtiXSksUFNfayhudWxsIT1lLmxlbmd0aCksUFNfbS5zcGxpY2UuY2FsbChlLGIsMSksMD09ZS5sZW5ndGgmYW1wOyZhbXA7KGRlbGV0ZSB0aGlzLmFbYV0sdGhpcy5iLS0pLCEwKTohMX07CnZhciBQU19oYj1mdW5jdGlvbihhLGIpe3ZhciBjPWIudHlwZTtjIGluIGEuYSZhbXA7JmFtcDtQU19NYShhLmFbY10sYikmYW1wOyZhbXA7KFBTX2ViKGIpLDA9PWEuYVtjXS5sZW5ndGgmYW1wOyZhbXA7KGRlbGV0ZSBhLmFbY10sYS5iLS0pKX0sUFNfaWI9ZnVuY3Rpb24oYSxiLGMsZCxlKXthPWEuYVtiLnRvU3RyaW5nKCldO2I9LTE7YSZhbXA7JmFtcDsoYj1QU19nYihhLGMsZCxlKSk7cmV0dXJuLTEmbHQ7Yj9hW2JdOm51bGx9LFBTX2diPWZ1bmN0aW9uKGEsYixjLGQpe2Zvcih2YXIgZT0wO2UmbHQ7YS5sZW5ndGg7KytlKXt2YXIgZj1hW2VdO2lmKCFmLlAmYW1wOyZhbXA7Zi5saXN0ZW5lcj09YiZhbXA7JmFtcDtmLmNhPT0hIWMmYW1wOyZhbXA7Zi5lYT09ZClyZXR1cm4gZX1yZXR1cm4tMX07dmFyIFBTX2piPSJjbG9zdXJlX2xtXyIrKDFFNipNYXRoLnJhbmRvbSgpfDApLFBTX2tiPXt9LFBTX2xiPTAsUFNfbWI9ZnVuY3Rpb24oYSxiLGMsZCxlKXtpZihQU19iKGIpKXtmb3IodmFyIGY9MDtmJmx0O2IubGVuZ3RoO2YrKylQU19tYihhLGJbZl0sYyxkLGUpO3JldHVybiBudWxsfWM9UFNfbmIoYyk7UFNfYmIoYSk/KFBTX29iKGEpLGE9YS5DLmFkZChTdHJpbmcoYiksYywhMSxkLGUpKTphPVBTX3BiKGEsYixjLCExLGQsZSk7cmV0dXJuIGF9LFBTX3BiPWZ1bmN0aW9uKGEsYixjLGQsZSxmKXtpZighYil0aHJvdyBFcnJvcigiSW52YWxpZCBldmVudCB0eXBlIik7dmFyIGc9ISFlLGg9UFNfcWIoYSk7aHx8KGFbUFNfamJdPWg9bmV3IFBTX2ZiKGEpKTtjPWguYWRkKGIsYyxkLGUsZik7aWYoYy5hKXJldHVybiBjO2Q9UFNfcmIoKTtjLmE9ZDtkLnNyYz1hO2QubGlzdGVuZXI9YztpZihhLmFkZEV2ZW50TGlzdGVuZXIpYS5hZGRFdmVudExpc3RlbmVyKGIudG9TdHJpbmcoKSxkLGcpOwplbHNlIGlmKGEuYXR0YWNoRXZlbnQpYS5hdHRhY2hFdmVudChQU19zYihiLnRvU3RyaW5nKCkpLGQpO2Vsc2UgdGhyb3cgRXJyb3IoImFkZEV2ZW50TGlzdGVuZXIgYW5kIGF0dGFjaEV2ZW50IGFyZSB1bmF2YWlsYWJsZS4iKTtQU19sYisrO3JldHVybiBjfSxQU19yYj1mdW5jdGlvbigpe3ZhciBhPVBTX3RiLGI9UFNfOGE/ZnVuY3Rpb24oYyl7cmV0dXJuIGEuY2FsbChiLnNyYyxiLmxpc3RlbmVyLGMpfTpmdW5jdGlvbihjKXtjPWEuY2FsbChiLnNyYyxiLmxpc3RlbmVyLGMpO2lmKCFjKXJldHVybiBjfTtyZXR1cm4gYn0sUFNfdWI9ZnVuY3Rpb24oYSxiLGMsZCxlKXtpZihQU19iKGIpKXtmb3IodmFyIGY9MDtmJmx0O2IubGVuZ3RoO2YrKylQU191YihhLGJbZl0sYyxkLGUpO3JldHVybiBudWxsfWM9UFNfbmIoYyk7cmV0dXJuIFBTX2JiKGEpP2EuamEoYixjLGQsZSk6UFNfcGIoYSxiLGMsITAsZCxlKX0sUFNfdmI9ZnVuY3Rpb24oYSxiLGMsZCxlKXtpZihQU19iKGIpKWZvcih2YXIgZj0KMDtmJmx0O2IubGVuZ3RoO2YrKylQU192YihhLGJbZl0sYyxkLGUpO2Vsc2UgYz1QU19uYihjKSxQU19iYihhKT9hLkMucmVtb3ZlKFN0cmluZyhiKSxjLGQsZSk6YSZhbXA7JmFtcDsoYT1QU19xYihhKSkmYW1wOyZhbXA7KGI9UFNfaWIoYSxiLGMsISFkLGUpKSZhbXA7JmFtcDtQU196KGIpfSxQU196PWZ1bmN0aW9uKGEpe2lmKCFQU19kKGEpJmFtcDsmYW1wO2EmYW1wOyZhbXA7IWEuUCl7dmFyIGI9YS5zcmM7aWYoUFNfYmIoYikpUFNfaGIoYi5DLGEpO2Vsc2V7dmFyIGM9YS50eXBlLGQ9YS5hO2IucmVtb3ZlRXZlbnRMaXN0ZW5lcj9iLnJlbW92ZUV2ZW50TGlzdGVuZXIoYyxkLGEuY2EpOmIuZGV0YWNoRXZlbnQmYW1wOyZhbXA7Yi5kZXRhY2hFdmVudChQU19zYihjKSxkKTtQU19sYi0tOyhjPVBTX3FiKGIpKT8oUFNfaGIoYyxhKSwwPT1jLmImYW1wOyZhbXA7KGMuc3JjPW51bGwsYltQU19qYl09bnVsbCkpOlBTX2ViKGEpfX19LFBTX3NiPWZ1bmN0aW9uKGEpe3JldHVybiBhIGluIFBTX2tiP1BTX2tiW2FdOlBTX2tiW2FdPSJvbiIrYX0sUFNfeGI9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9CiEwO2lmKGE9UFNfcWIoYSkpaWYoYj1hLmFbYi50b1N0cmluZygpXSlmb3IoYj1iLmNvbmNhdCgpLGE9MDthJmx0O2IubGVuZ3RoO2ErKyl7dmFyIGY9YlthXTtmJmFtcDsmYW1wO2YuY2E9PWMmYW1wOyZhbXA7IWYuUCZhbXA7JmFtcDsoZj1QU193YihmLGQpLGU9ZSZhbXA7JmFtcDshMSE9PWYpfXJldHVybiBlfSxQU193Yj1mdW5jdGlvbihhLGIpe3ZhciBjPWEubGlzdGVuZXIsZD1hLmVhfHxhLnNyYzthLmJhJmFtcDsmYW1wO1BTX3ooYSk7cmV0dXJuIGMuY2FsbChkLGIpfSxQU190Yj1mdW5jdGlvbihhLGIpe2lmKGEuUClyZXR1cm4hMDtpZighUFNfOGEpe3ZhciBjO2lmKCEoYz1iKSlhOntjPVsid2luZG93IiwiZXZlbnQiXTtmb3IodmFyIGQ9UFNfYSxlO2U9Yy5zaGlmdCgpOylpZihudWxsIT1kW2VdKWQ9ZFtlXTtlbHNle2M9bnVsbDticmVhayBhfWM9ZH1lPWM7Yz1uZXcgUFNfeShlLHRoaXMpO2Q9ITA7aWYoISgwJmd0O2Uua2V5Q29kZXx8dm9pZCAwIT1lLnJldHVyblZhbHVlKSl7YTp7dmFyIGY9ITE7aWYoMD09ZS5rZXlDb2RlKXRyeXtlLmtleUNvZGU9Ci0xO2JyZWFrIGF9Y2F0Y2goZyl7Zj0hMH1pZihmfHx2b2lkIDA9PWUucmV0dXJuVmFsdWUpZS5yZXR1cm5WYWx1ZT0hMH1lPVtdO2ZvcihmPWMuYTtmO2Y9Zi5wYXJlbnROb2RlKWUucHVzaChmKTtmb3IodmFyIGY9YS50eXBlLGg9ZS5sZW5ndGgtMTswJmx0Oz1oO2gtLSl7Yy5hPWVbaF07dmFyIG09UFNfeGIoZVtoXSxmLCEwLGMpLGQ9ZCZhbXA7JmFtcDttfWZvcihoPTA7aCZsdDtlLmxlbmd0aDtoKyspYy5hPWVbaF0sbT1QU194YihlW2hdLGYsITEsYyksZD1kJmFtcDsmYW1wO219cmV0dXJuIGR9cmV0dXJuIFBTX3diKGEsbmV3IFBTX3koYix0aGlzKSl9LFBTX3FiPWZ1bmN0aW9uKGEpe2E9YVtQU19qYl07cmV0dXJuIGEgaW5zdGFuY2VvZiBQU19mYj9hOm51bGx9LFBTX3liPSJfX2Nsb3N1cmVfZXZlbnRzX2ZuXyIrKDFFOSpNYXRoLnJhbmRvbSgpJmd0OyZndDsmZ3Q7MCksUFNfbmI9ZnVuY3Rpb24oYSl7UFNfayhhLCJMaXN0ZW5lciBjYW4gbm90IGJlIG51bGwuIik7aWYoUFNfZGEoYSkpcmV0dXJuIGE7UFNfayhhLmhhbmRsZUV2ZW50LAoiQW4gb2JqZWN0IGxpc3RlbmVyIG11c3QgaGF2ZSBoYW5kbGVFdmVudCBtZXRob2QuIik7YVtQU195Yl18fChhW1BTX3liXT1mdW5jdGlvbihiKXtyZXR1cm4gYS5oYW5kbGVFdmVudChiKX0pO3JldHVybiBhW1BTX3liXX07dmFyIFBTX3piPWZ1bmN0aW9uKGEpe3ZhciBiO2I9Ynx8MDtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gYS5hcHBseSh0aGlzLEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywwLGIpKX19LFBTX0FiPWZ1bmN0aW9uKGEpe3ZhciBiPSExLGM7cmV0dXJuIGZ1bmN0aW9uKCl7Ynx8KGM9YSgpLGI9ITApO3JldHVybiBjfX07dmFyIFBTX0E9ZnVuY3Rpb24oYSxiLGMpe1BTX2kuY2FsbCh0aGlzKTt0aGlzLmE9bnVsbDt0aGlzLmY9ITE7dGhpcy5nPWE7dGhpcy5pPWM7dGhpcy5iPWJ8fHdpbmRvdzt0aGlzLmM9UFNfZSh0aGlzLmgsdGhpcyl9O1BTX2coUFNfQSxQU19pKTsKdmFyIFBTX0ViPWZ1bmN0aW9uKGEpe1BTX0JiKGEpO2EuZj0hMTt2YXIgYj1QU19DYihhKSxjPVBTX0RiKGEpO2ImYW1wOyZhbXA7IWMmYW1wOyZhbXA7YS5iLm1velJlcXVlc3RBbmltYXRpb25GcmFtZT8oYS5hPVBTX21iKGEuYiwiTW96QmVmb3JlUGFpbnQiLGEuYyksYS5iLm1velJlcXVlc3RBbmltYXRpb25GcmFtZShudWxsKSxhLmY9ITApOmEuYT1iJmFtcDsmYW1wO2M/Yi5jYWxsKGEuYixhLmMpOmEuYi5zZXRUaW1lb3V0KFBTX3piKGEuYyksMjApfSxQU19CYj1mdW5jdGlvbihhKXtpZihudWxsIT1hLmEpe3ZhciBiPVBTX0NiKGEpLGM9UFNfRGIoYSk7YiZhbXA7JmFtcDshYyZhbXA7JmFtcDthLmIubW96UmVxdWVzdEFuaW1hdGlvbkZyYW1lP1BTX3ooYS5hKTpiJmFtcDsmYW1wO2M/Yy5jYWxsKGEuYixhLmEpOmEuYi5jbGVhclRpbWVvdXQoYS5hKX1hLmE9bnVsbH07UFNfQS5wcm90b3R5cGUuaD1mdW5jdGlvbigpe3RoaXMuZiZhbXA7JmFtcDt0aGlzLmEmYW1wOyZhbXA7UFNfeih0aGlzLmEpO3RoaXMuYT1udWxsO3RoaXMuZy5jYWxsKHRoaXMuaSxQU19mKCkpfTsKUFNfQS5wcm90b3R5cGUubT1mdW5jdGlvbigpe1BTX0JiKHRoaXMpO1BTX0EuQS5tLmNhbGwodGhpcyl9O3ZhciBQU19DYj1mdW5jdGlvbihhKXthPWEuYjtyZXR1cm4gYS5yZXF1ZXN0QW5pbWF0aW9uRnJhbWV8fGEud2Via2l0UmVxdWVzdEFuaW1hdGlvbkZyYW1lfHxhLm1velJlcXVlc3RBbmltYXRpb25GcmFtZXx8YS5vUmVxdWVzdEFuaW1hdGlvbkZyYW1lfHxhLm1zUmVxdWVzdEFuaW1hdGlvbkZyYW1lfHxudWxsfSxQU19EYj1mdW5jdGlvbihhKXthPWEuYjtyZXR1cm4gYS5jYW5jZWxBbmltYXRpb25GcmFtZXx8YS5jYW5jZWxSZXF1ZXN0QW5pbWF0aW9uRnJhbWV8fGEud2Via2l0Q2FuY2VsUmVxdWVzdEFuaW1hdGlvbkZyYW1lfHxhLm1vekNhbmNlbFJlcXVlc3RBbmltYXRpb25GcmFtZXx8YS5vQ2FuY2VsUmVxdWVzdEFuaW1hdGlvbkZyYW1lfHxhLm1zQ2FuY2VsUmVxdWVzdEFuaW1hdGlvbkZyYW1lfHxudWxsfTt2YXIgUFNfRmI9ZnVuY3Rpb24oYSl7aWYoYS5jbGFzc0xpc3QpcmV0dXJuIGEuY2xhc3NMaXN0O2E9YS5jbGFzc05hbWU7cmV0dXJuIFBTX2MoYSkmYW1wOyZhbXA7YS5tYXRjaCgvXFMrL2cpfHxbXX0sUFNfR2I9ZnVuY3Rpb24oYSxiKXt2YXIgYzthLmNsYXNzTGlzdD9jPWEuY2xhc3NMaXN0LmNvbnRhaW5zKGIpOihjPVBTX0ZiKGEpLGM9MCZsdDs9UFNfSWEoYyxiKSk7cmV0dXJuIGN9LFBTX0I9ZnVuY3Rpb24oYSxiKXthLmNsYXNzTGlzdD9hLmNsYXNzTGlzdC5hZGQoYik6UFNfR2IoYSxiKXx8KGEuY2xhc3NOYW1lKz0wJmx0O2EuY2xhc3NOYW1lLmxlbmd0aD8iICIrYjpiKX0sUFNfSGI9ZnVuY3Rpb24oYSxiKXtpZihhLmNsYXNzTGlzdClQU19uKGIsZnVuY3Rpb24oYil7UFNfQihhLGIpfSk7ZWxzZXt2YXIgYz17fTtQU19uKFBTX0ZiKGEpLGZ1bmN0aW9uKGEpe2NbYV09ITB9KTtQU19uKGIsZnVuY3Rpb24oYSl7Y1thXT0hMH0pO2EuY2xhc3NOYW1lPSIiO2Zvcih2YXIgZCBpbiBjKWEuY2xhc3NOYW1lKz0KMCZsdDthLmNsYXNzTmFtZS5sZW5ndGg/IiAiK2Q6ZH19LFBTX0liPWZ1bmN0aW9uKGEsYil7YS5jbGFzc0xpc3Q/YS5jbGFzc0xpc3QucmVtb3ZlKGIpOlBTX0diKGEsYikmYW1wOyZhbXA7KGEuY2xhc3NOYW1lPVBTX0phKFBTX0ZiKGEpLGZ1bmN0aW9uKGEpe3JldHVybiBhIT1ifSkuam9pbigiICIpKX0sUFNfQz1mdW5jdGlvbihhLGIsYyl7Yz9QU19CKGEsYik6UFNfSWIoYSxiKX07dmFyIFBTX0piPVBTX3AoIkZpcmVmb3giKSxQU19LYj1QU19ZYSgpfHxQU19wKCJpUG9kIiksUFNfTGI9UFNfcCgiaVBhZCIpLFBTX01iPVBTX3AoIkFuZHJvaWQiKSZhbXA7JmFtcDshKFBTX1hhKCl8fFBTX3AoIkZpcmVmb3giKXx8UFNfVmEoKXx8UFNfcCgiU2lsayIpKSxQU19OYj1QU19YYSgpLFBTX09iPVBTX3AoIlNhZmFyaSIpJmFtcDsmYW1wOyEoUFNfWGEoKXx8UFNfcCgiQ29hc3QiKXx8UFNfVmEoKXx8UFNfV2EoKXx8UFNfcCgiU2lsayIpfHxQU19wKCJBbmRyb2lkIikpJmFtcDsmYW1wOyEoUFNfWWEoKXx8UFNfcCgiaVBhZCIpfHxQU19wKCJpUG9kIikpO3ZhciBQU19QYj0hUFNfcyxQU19RYj1mdW5jdGlvbihhKXtyZXR1cm4gUFNfUGImYW1wOyZhbXA7YS5kYXRhc2V0PyJhbHRUZXh0ImluIGEuZGF0YXNldD9hLmRhdGFzZXQuYWx0VGV4dDpudWxsOmEuZ2V0QXR0cmlidXRlKCJkYXRhLSIrImFsdFRleHQiLnJlcGxhY2UoLyhbQS1aXSkvZywiLSQxIikudG9Mb3dlckNhc2UoKSl9O3ZhciBQU19SYj1QU19TYSgiYXJlYSBiYXNlIGJyIGNvbCBjb21tYW5kIGVtYmVkIGhyIGltZyBpbnB1dCBrZXlnZW4gbGluayBtZXRhIHBhcmFtIHNvdXJjZSB0cmFjayB3YnIiLnNwbGl0KCIgIikpO3ZhciBQU19EPWZ1bmN0aW9uKCl7dGhpcy5hPSIiO3RoaXMuYj1QU19TYn07UFNfRC5wcm90b3R5cGUuTj0hMDtQU19ELnByb3RvdHlwZS5NPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuYX07UFNfRC5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4iQ29uc3R7Iit0aGlzLmErIn0ifTt2YXIgUFNfVGI9ZnVuY3Rpb24oYSl7aWYoYSBpbnN0YW5jZW9mIFBTX0QmYW1wOyZhbXA7YS5jb25zdHJ1Y3Rvcj09PVBTX0QmYW1wOyZhbXA7YS5iPT09UFNfU2IpcmV0dXJuIGEuYTtQU19sKCJleHBlY3RlZCBvYmplY3Qgb2YgdHlwZSBDb25zdCwgZ290ICciK2ErIiciKTtyZXR1cm4idHlwZV9lcnJvcjpDb25zdCJ9LFBTX1NiPXt9LFBTX1ViPWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBQU19EO2IuYT1hO3JldHVybiBifTt2YXIgUFNfRT1mdW5jdGlvbigpe3RoaXMuYT0iIjt0aGlzLmI9UFNfVmJ9O1BTX0UucHJvdG90eXBlLk49ITA7dmFyIFBTX1ZiPXt9O1BTX0UucHJvdG90eXBlLk09ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5hfTtQU19FLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiJTYWZlU3R5bGV7Iit0aGlzLmErIn0ifTt2YXIgUFNfV2I9ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IFBTX0U7Yi5hPWE7cmV0dXJuIGJ9LFBTX1hiPVBTX1diKCIiKSxQU19ZYj0vXlstLC4iJyVfISMgYS16QS1aMC05XSskLzt2YXIgUFNfRj1mdW5jdGlvbigpe3RoaXMuYT0iIjt0aGlzLmI9UFNfWmJ9O1BTXz1QU19GLnByb3RvdHlwZTtQU18uTj0hMDtQU18uTT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmF9O1BTXy5oYT0hMDtQU18uVj1mdW5jdGlvbigpe3JldHVybiAxfTtQU18udG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4iU2FmZVVybHsiK3RoaXMuYSsifSJ9Owp2YXIgUFNfX2I9ZnVuY3Rpb24oYSl7aWYoYSBpbnN0YW5jZW9mIFBTX0YmYW1wOyZhbXA7YS5jb25zdHJ1Y3Rvcj09PVBTX0YmYW1wOyZhbXA7YS5iPT09UFNfWmIpcmV0dXJuIGEuYTtQU19sKCJleHBlY3RlZCBvYmplY3Qgb2YgdHlwZSBTYWZlVXJsLCBnb3QgJyIrYSsiJyIpO3JldHVybiJ0eXBlX2Vycm9yOlNhZmVVcmwifSxQU18wYj0vXig/Oig/Omh0dHBzP3xtYWlsdG98ZnRwKTp8W14mYW1wOzovPyNdKig/OlsvPyNdfCQpKS9pLFBTXzNiPWZ1bmN0aW9uKGEpe3RyeXt2YXIgYj1lbmNvZGVVUkkoYSl9Y2F0Y2goYyl7cmV0dXJuImFib3V0OmludmFsaWQjekNsb3N1cmV6In1yZXR1cm4gYi5yZXBsYWNlKFBTXzFiLGZ1bmN0aW9uKGEpe3JldHVybiBQU18yYlthXX0pfSxQU18xYj0vWygpJ118JTVCfCU1RHwlMjUvZyxQU18yYj17IiciOiIlMjciLCIoIjoiJTI4IiwiKSI6IiUyOSIsIiU1QiI6IlsiLCIlNUQiOiJdIiwiJTI1IjoiJSJ9LFBTX1piPXt9O3ZhciBQU19HPWZ1bmN0aW9uKCl7dGhpcy5hPSIiO3RoaXMuYj1QU180Yn07UFNfPVBTX0cucHJvdG90eXBlO1BTXy5OPSEwO1BTXy5NPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuYX07UFNfLmhhPSEwO1BTXy5WPWZ1bmN0aW9uKCl7cmV0dXJuIDF9O1BTXy50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiJUcnVzdGVkUmVzb3VyY2VVcmx7Iit0aGlzLmErIn0ifTt2YXIgUFNfNWI9ZnVuY3Rpb24oYSl7aWYoYSBpbnN0YW5jZW9mIFBTX0cmYW1wOyZhbXA7YS5jb25zdHJ1Y3Rvcj09PVBTX0cmYW1wOyZhbXA7YS5iPT09UFNfNGIpcmV0dXJuIGEuYTtQU19sKCJleHBlY3RlZCBvYmplY3Qgb2YgdHlwZSBUcnVzdGVkUmVzb3VyY2VVcmwsIGdvdCAnIithKyInIik7cmV0dXJuInR5cGVfZXJyb3I6VHJ1c3RlZFJlc291cmNlVXJsIn0sUFNfNGI9e30sUFNfNmI9ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IFBTX0c7Yi5hPWE7cmV0dXJuIGJ9O3ZhciBQU19IPWZ1bmN0aW9uKCl7dGhpcy5hPSIiO3RoaXMuYz1QU183Yjt0aGlzLmI9bnVsbH07UFNfPVBTX0gucHJvdG90eXBlO1BTXy5oYT0hMDtQU18uVj1mdW5jdGlvbigpe3JldHVybiB0aGlzLmJ9O1BTXy5OPSEwO1BTXy5NPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuYX07UFNfLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIlNhZmVIdG1seyIrdGhpcy5hKyJ9In07CnZhciBQU19JPWZ1bmN0aW9uKGEpe2lmKGEgaW5zdGFuY2VvZiBQU19IJmFtcDsmYW1wO2EuY29uc3RydWN0b3I9PT1QU19IJmFtcDsmYW1wO2EuYz09PVBTXzdiKXJldHVybiBhLmE7UFNfbCgiZXhwZWN0ZWQgb2JqZWN0IG9mIHR5cGUgU2FmZUh0bWwsIGdvdCAnIithKyInIik7cmV0dXJuInR5cGVfZXJyb3I6U2FmZUh0bWwifSxQU184Yj1mdW5jdGlvbihhKXtpZihhIGluc3RhbmNlb2YgUFNfSClyZXR1cm4gYTt2YXIgYj1udWxsO2EuaGEmYW1wOyZhbXA7KGI9YS5WKCkpO2E9UFNfaihhLk4/YS5NKCk6U3RyaW5nKGEpKTtyZXR1cm4gUFNfSihhLGIpfSxQU185Yj0vXlthLXpBLVowLTktXSskLyxQU18kYj17YWN0aW9uOiEwLGNpdGU6ITAsZGF0YTohMCxmb3JtYWN0aW9uOiEwLGhyZWY6ITAsbWFuaWZlc3Q6ITAscG9zdGVyOiEwLHNyYzohMH0sUFNfYWM9e0VNQkVEOiEwLElGUkFNRTohMCxMSU5LOiEwLE9CSkVDVDohMCxTQ1JJUFQ6ITAsU1RZTEU6ITAsVEVNUExBVEU6ITB9LFBTX2NjPWZ1bmN0aW9uKGEsYixjKXtpZighUFNfOWIudGVzdChhKSl0aHJvdyBFcnJvcigiSW52YWxpZCB0YWcgbmFtZSAmbHQ7IisKYSsiJmd0Oy4iKTtpZihhLnRvVXBwZXJDYXNlKClpbiBQU19hYyl0aHJvdyBFcnJvcigiVGFnIG5hbWUgJmx0OyIrYSsiJmd0OyBpcyBub3QgYWxsb3dlZCBmb3IgU2FmZUh0bWwuIik7cmV0dXJuIFBTX2JjKGEsYixjKX0sUFNfZGM9ZnVuY3Rpb24oYSl7dmFyIGI9MCxjPSIiLGQ9ZnVuY3Rpb24oYSl7UFNfYihhKT9QU19uKGEsZCk6KGE9UFNfOGIoYSksYys9UFNfSShhKSxhPWEuVigpLDA9PWI/Yj1hOjAhPWEmYW1wOyZhbXA7YiE9YSZhbXA7JmFtcDsoYj1udWxsKSl9O1BTX24oYXJndW1lbnRzLGQpO3JldHVybiBQU19KKGMsYil9LFBTXzdiPXt9LFBTX0o9ZnVuY3Rpb24oYSxiKXt2YXIgYz1uZXcgUFNfSDtjLmE9YTtjLmI9YjtyZXR1cm4gY30sUFNfYmM9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPW51bGwsZT0iJmx0OyIrYTtpZihiKWZvcih2YXIgZiBpbiBiKXtpZighUFNfOWIudGVzdChmKSl0aHJvdyBFcnJvcignSW52YWxpZCBhdHRyaWJ1dGUgbmFtZSAiJytmKyciLicpO3ZhciBnPWJbZl07aWYobnVsbCE9Zyl7dmFyIGgsbT0KYTtoPWY7aWYoZyBpbnN0YW5jZW9mIFBTX0QpZz1QU19UYihnKTtlbHNlIGlmKCJzdHlsZSI9PWgudG9Mb3dlckNhc2UoKSl7aWYoIVBTX2VhKGcpKXRocm93IEVycm9yKCdUaGUgInN0eWxlIiBhdHRyaWJ1dGUgcmVxdWlyZXMgZ29vZy5odG1sLlNhZmVTdHlsZSBvciBtYXAgb2Ygc3R5bGUgcHJvcGVydGllcywgJyt0eXBlb2YgZysiIGdpdmVuOiAiK2cpO2lmKCEoZyBpbnN0YW5jZW9mIFBTX0UpKXt2YXIgbT0iIixrPXZvaWQgMDtmb3IoayBpbiBnKXtpZighL15bLV9hLXpBLVowLTldKyQvLnRlc3QoaykpdGhyb3cgRXJyb3IoIk5hbWUgYWxsb3dzIG9ubHkgWy1fYS16QS1aMC05XSwgZ290OiAiK2spO3ZhciBsPWdba107aWYobnVsbCE9bCl7aWYobCBpbnN0YW5jZW9mIFBTX0QpbD1QU19UYihsKSxQU19rKCEvW3s7fV0vLnRlc3QobCksIlZhbHVlIGRvZXMgbm90IGFsbG93IFt7O31dLiIpO2Vsc2UgaWYoUFNfWWIudGVzdChsKSl7Zm9yKHZhciBuPSEwLHA9ITAscT0wO3EmbHQ7bC5sZW5ndGg7cSsrKXt2YXIgcj0KbC5jaGFyQXQocSk7IiciPT1yJmFtcDsmYW1wO3A/bj0hbjonIic9PXImYW1wOyZhbXA7biZhbXA7JmFtcDsocD0hcCl9biZhbXA7JmFtcDtwfHwoUFNfbCgiU3RyaW5nIHZhbHVlIHJlcXVpcmVzIGJhbGFuY2VkIHF1b3RlcywgZ290OiAiK2wpLGw9InpDbG9zdXJleiIpfWVsc2UgUFNfbCgiU3RyaW5nIHZhbHVlIGFsbG93cyBvbmx5IFstLC5cIiclXyEjIGEtekEtWjAtOV0sIGdvdDogIitsKSxsPSJ6Q2xvc3VyZXoiO20rPWsrIjoiK2wrIjsifX1tPyhQU19rKCEvWyZsdDsmZ3Q7XS8udGVzdChtKSwiRm9yYmlkZGVuIGNoYXJhY3RlcnMgaW4gc3R5bGUgc3RyaW5nOiAiK20pLGc9UFNfV2IobSkpOmc9UFNfWGJ9bT12b2lkIDA7ZyBpbnN0YW5jZW9mIFBTX0UmYW1wOyZhbXA7Zy5jb25zdHJ1Y3Rvcj09PVBTX0UmYW1wOyZhbXA7Zy5iPT09UFNfVmI/bT1nLmE6KFBTX2woImV4cGVjdGVkIG9iamVjdCBvZiB0eXBlIFNhZmVTdHlsZSwgZ290ICciK2crIiciKSxtPSJ0eXBlX2Vycm9yOlNhZmVTdHlsZSIpO2c9bX1lbHNle2lmKC9eb24vaS50ZXN0KGgpKXRocm93IEVycm9yKCdBdHRyaWJ1dGUgIicrCmgrJyIgcmVxdWlyZXMgZ29vZy5zdHJpbmcuQ29uc3QgdmFsdWUsICInK2crJyIgZ2l2ZW4uJyk7aWYoaC50b0xvd2VyQ2FzZSgpaW4gUFNfJGIpaWYoZyBpbnN0YW5jZW9mIFBTX0cpZz1QU181YihnKTtlbHNlIGlmKGcgaW5zdGFuY2VvZiBQU19GKWc9UFNfX2IoZyk7ZWxzZSB0aHJvdyBFcnJvcignQXR0cmlidXRlICInK2grJyIgb24gdGFnICInK20rJyIgcmVxdWlyZXMgZ29vZy5odG1sLlNhZmVVcmwgb3IgZ29vZy5zdHJpbmcuQ29uc3QgdmFsdWUsICInK2crJyIgZ2l2ZW4uJyk7fWcuTiZhbXA7JmFtcDsoZz1nLk0oKSk7UFNfayhQU19jKGcpfHxQU19kKGcpLCJTdHJpbmcgb3IgbnVtYmVyIHZhbHVlIGV4cGVjdGVkLCBnb3QgIit0eXBlb2YgZysiIHdpdGggdmFsdWU6ICIrZyk7aD1oKyc9IicrUFNfaihTdHJpbmcoZykpKyciJztlPWUrKCIgIitoKX19bnVsbCE9Yz9QU19iKGMpfHwoYz1bY10pOmM9W107ITA9PT1QU19SYlthLnRvTG93ZXJDYXNlKCldPyhQU19rKCFjLmxlbmd0aCwiVm9pZCB0YWcgJmx0OyIrCmErIiZndDsgZG9lcyBub3QgYWxsb3cgY29udGVudC4iKSxlKz0iJmd0OyIpOihkPVBTX2RjKGMpLGUrPSImZ3Q7IitQU19JKGQpKyImbHQ7LyIrYSsiJmd0OyIsZD1kLlYoKSk7KGE9YiZhbXA7JmFtcDtiLmRpcikmYW1wOyZhbXA7KC9eKGx0cnxydGx8YXV0bykkL2kudGVzdChhKT9kPTA6ZD1udWxsKTtyZXR1cm4gUFNfSihlLGQpfTtQU19KKCImbHQ7IURPQ1RZUEUgaHRtbCZndDsiLDApO3ZhciBQU19lYz1QU19KKCIiLDApO3ZhciBQU19LPWZ1bmN0aW9uKGEsYil7dGhpcy54PXZvaWQgMCE9PWE/YTowO3RoaXMueT12b2lkIDAhPT1iP2I6MH07UFNfSy5wcm90b3R5cGUuY2xvbmU9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IFBTX0sodGhpcy54LHRoaXMueSl9O1BTX0sucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIigiK3RoaXMueCsiLCAiK3RoaXMueSsiKSJ9O3ZhciBQU19mYz1mdW5jdGlvbihhLGIpe3JldHVybiBuZXcgUFNfSyhhLngtYi54LGEueS1iLnkpfTtQU19LLnByb3RvdHlwZS5yb3VuZD1mdW5jdGlvbigpe3RoaXMueD1NYXRoLnJvdW5kKHRoaXMueCk7dGhpcy55PU1hdGgucm91bmQodGhpcy55KTtyZXR1cm4gdGhpc307dmFyIFBTX0w9ZnVuY3Rpb24oYSxiKXt0aGlzLndpZHRoPWE7dGhpcy5oZWlnaHQ9Yn07UFNfTC5wcm90b3R5cGUuY2xvbmU9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IFBTX0wodGhpcy53aWR0aCx0aGlzLmhlaWdodCl9O1BTX0wucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIigiK3RoaXMud2lkdGgrIiB4ICIrdGhpcy5oZWlnaHQrIikifTtQU19MLnByb3RvdHlwZS5yb3VuZD1mdW5jdGlvbigpe3RoaXMud2lkdGg9TWF0aC5yb3VuZCh0aGlzLndpZHRoKTt0aGlzLmhlaWdodD1NYXRoLnJvdW5kKHRoaXMuaGVpZ2h0KTtyZXR1cm4gdGhpc307dmFyIFBTX2djPSFQU190JmFtcDsmYW1wOyFQU19zfHxQU19zJmFtcDsmYW1wO1BTX3coOSl8fFBTX3QmYW1wOyZhbXA7UFNfdigiMS45LjEiKTtQU19zJmFtcDsmYW1wO1BTX3YoIjkiKTt2YXIgUFNfaGM9UFNfc3x8UFNfcnx8UFNfdTt2YXIgUFNfTj1mdW5jdGlvbihhKXtyZXR1cm4gYT9uZXcgUFNfaWMoUFNfTShhKSk6UFNfbmF8fChQU19uYT1uZXcgUFNfaWMpfSxQU19PPWZ1bmN0aW9uKGEpe3JldHVybiBQU19jKGEpP2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKGEpOmF9LFBTX1A9ZnVuY3Rpb24oYSxiKXt2YXIgYz1ifHxkb2N1bWVudCxkPW51bGw7Yy5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lP2Q9Yy5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKGEpWzBdOmMucXVlcnlTZWxlY3RvckFsbCZhbXA7JmFtcDtjLnF1ZXJ5U2VsZWN0b3I/ZD1jLnF1ZXJ5U2VsZWN0b3IoIi4iK2EpOmQ9UFNfamMoIioiLGEsYilbMF07cmV0dXJuIGR8fG51bGx9LFBTX2pjPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1kb2N1bWVudDtjPWN8fGQ7dmFyIGU9YSZhbXA7JmFtcDsiKiIhPWE/YS50b1VwcGVyQ2FzZSgpOiIiO2lmKGMucXVlcnlTZWxlY3RvckFsbCZhbXA7JmFtcDtjLnF1ZXJ5U2VsZWN0b3ImYW1wOyZhbXA7KGV8fGIpKXJldHVybiBjLnF1ZXJ5U2VsZWN0b3JBbGwoZSsoYj8iLiIrYjoiIikpOwppZihiJmFtcDsmYW1wO2MuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSl7YT1jLmdldEVsZW1lbnRzQnlDbGFzc05hbWUoYik7aWYoZSl7Yz17fTtmb3IodmFyIGY9ZD0wLGc7Zz1hW2ZdO2YrKyllPT1nLm5vZGVOYW1lJmFtcDsmYW1wOyhjW2QrK109Zyk7Yy5sZW5ndGg9ZDtyZXR1cm4gY31yZXR1cm4gYX1hPWMuZ2V0RWxlbWVudHNCeVRhZ05hbWUoZXx8IioiKTtpZihiKXtjPXt9O2ZvcihmPWQ9MDtnPWFbZl07ZisrKXt2YXIgZT1nLmNsYXNzTmFtZSxoO2lmKGg9ImZ1bmN0aW9uIj09dHlwZW9mIGUuc3BsaXQpaD0wJmx0Oz1QU19JYShlLnNwbGl0KC9ccysvKSxiKTtoJmFtcDsmYW1wOyhjW2QrK109Zyl9Yy5sZW5ndGg9ZDtyZXR1cm4gY31yZXR1cm4gYX0sUFNfbGM9ZnVuY3Rpb24oYSxiKXtQU19OYShiLGZ1bmN0aW9uKGIsZCl7InN0eWxlIj09ZD9hLnN0eWxlLmNzc1RleHQ9YjoiY2xhc3MiPT1kP2EuY2xhc3NOYW1lPWI6ImZvciI9PWQ/YS5odG1sRm9yPWI6UFNfa2MuaGFzT3duUHJvcGVydHkoZCk/YS5zZXRBdHRyaWJ1dGUoUFNfa2NbZF0sCmIpOjA9PWQubGFzdEluZGV4T2YoImFyaWEtIiwwKXx8MD09ZC5sYXN0SW5kZXhPZigiZGF0YS0iLDApP2Euc2V0QXR0cmlidXRlKGQsYik6YVtkXT1ifSl9LFBTX2tjPXtjZWxscGFkZGluZzoiY2VsbFBhZGRpbmciLGNlbGxzcGFjaW5nOiJjZWxsU3BhY2luZyIsY29sc3BhbjoiY29sU3BhbiIsZnJhbWVib3JkZXI6ImZyYW1lQm9yZGVyIixoZWlnaHQ6ImhlaWdodCIsbWF4bGVuZ3RoOiJtYXhMZW5ndGgiLHJvbGU6InJvbGUiLHJvd3NwYW46InJvd1NwYW4iLHR5cGU6InR5cGUiLHVzZW1hcDoidXNlTWFwIix2YWxpZ246InZBbGlnbiIsd2lkdGg6IndpZHRoIn0sUFNfb2M9ZnVuY3Rpb24oYSl7dmFyIGI9UFNfbWMoYSk7YT1QU19uYyhhKTtyZXR1cm4gUFNfcyZhbXA7JmFtcDtQU192KCIxMCIpJmFtcDsmYW1wO2EucGFnZVlPZmZzZXQhPWIuc2Nyb2xsVG9wP25ldyBQU19LKGIuc2Nyb2xsTGVmdCxiLnNjcm9sbFRvcCk6bmV3IFBTX0soYS5wYWdlWE9mZnNldHx8Yi5zY3JvbGxMZWZ0LGEucGFnZVlPZmZzZXR8fApiLnNjcm9sbFRvcCl9LFBTX21jPWZ1bmN0aW9uKGEpe3JldHVybiBhLmE/YS5hOlBTX3V8fCJDU1MxQ29tcGF0IiE9YS5jb21wYXRNb2RlP2EuYm9keXx8YS5kb2N1bWVudEVsZW1lbnQ6YS5kb2N1bWVudEVsZW1lbnR9LFBTX3BjPWZ1bmN0aW9uKGEpe3JldHVybiBhP1BTX25jKGEpOndpbmRvd30sUFNfbmM9ZnVuY3Rpb24oYSl7cmV0dXJuIGEucGFyZW50V2luZG93fHxhLmRlZmF1bHRWaWV3fSxQU19xYz1mdW5jdGlvbihhKXtmb3IodmFyIGI7Yj1hLmZpcnN0Q2hpbGQ7KWEucmVtb3ZlQ2hpbGQoYil9LFBTX3JjPWZ1bmN0aW9uKGEpe2EmYW1wOyZhbXA7YS5wYXJlbnROb2RlJmFtcDsmYW1wO2EucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChhKX0sUFNfc2M9ZnVuY3Rpb24oYSl7cmV0dXJuIFBTX2djJmFtcDsmYW1wO3ZvaWQgMCE9YS5jaGlsZHJlbj9hLmNoaWxkcmVuOlBTX0phKGEuY2hpbGROb2RlcyxmdW5jdGlvbihhKXtyZXR1cm4gMT09YS5ub2RlVHlwZX0pfSxQU190Yz1mdW5jdGlvbihhLGIpe2lmKGEuY29udGFpbnMmYW1wOyZhbXA7CjE9PWIubm9kZVR5cGUpcmV0dXJuIGE9PWJ8fGEuY29udGFpbnMoYik7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBhLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKXJldHVybiBhPT1ifHxCb29sZWFuKGEuY29tcGFyZURvY3VtZW50UG9zaXRpb24oYikmYW1wOzE2KTtmb3IoO2ImYW1wOyZhbXA7YSE9YjspYj1iLnBhcmVudE5vZGU7cmV0dXJuIGI9PWF9LFBTX009ZnVuY3Rpb24oYSl7UFNfayhhLCJOb2RlIGNhbm5vdCBiZSBudWxsIG9yIHVuZGVmaW5lZC4iKTtyZXR1cm4gOT09YS5ub2RlVHlwZT9hOmEub3duZXJEb2N1bWVudHx8YS5kb2N1bWVudH0sUFNfdWM9ZnVuY3Rpb24oYSl7cmV0dXJuIGEuY29udGVudERvY3VtZW50fHxhLmNvbnRlbnRXaW5kb3cuZG9jdW1lbnR9LFBTX3ZjPWZ1bmN0aW9uKGEsYil7UFNfayhudWxsIT1hLCJnb29nLmRvbS5zZXRUZXh0Q29udGVudCBleHBlY3RzIGEgbm9uLW51bGwgdmFsdWUgZm9yIG5vZGUiKTtpZigidGV4dENvbnRlbnQiaW4gYSlhLnRleHRDb250ZW50PWI7ZWxzZSBpZigzPT0KYS5ub2RlVHlwZSlhLmRhdGE9YjtlbHNlIGlmKGEuZmlyc3RDaGlsZCZhbXA7JmFtcDszPT1hLmZpcnN0Q2hpbGQubm9kZVR5cGUpe2Zvcig7YS5sYXN0Q2hpbGQhPWEuZmlyc3RDaGlsZDspYS5yZW1vdmVDaGlsZChhLmxhc3RDaGlsZCk7YS5maXJzdENoaWxkLmRhdGE9Yn1lbHNle1BTX3FjKGEpO3ZhciBjPVBTX00oYSk7YS5hcHBlbmRDaGlsZChjLmNyZWF0ZVRleHROb2RlKFN0cmluZyhiKSkpfX0sUFNfaWM9ZnVuY3Rpb24oYSl7dGhpcy5hPWF8fFBTX2EuZG9jdW1lbnR8fGRvY3VtZW50fTtQU19pYy5wcm90b3R5cGUuQj1mdW5jdGlvbihhKXtyZXR1cm4gUFNfYyhhKT90aGlzLmEuZ2V0RWxlbWVudEJ5SWQoYSk6YX07dmFyIFBTX3djPWZ1bmN0aW9uKGEpe3JldHVybiJDU1MxQ29tcGF0Ij09YS5hLmNvbXBhdE1vZGV9O1BTX2ljLnByb3RvdHlwZS5hcHBlbmRDaGlsZD1mdW5jdGlvbihhLGIpe2EuYXBwZW5kQ2hpbGQoYil9O1BTX2ljLnByb3RvdHlwZS5jb250YWlucz1QU190Yzt2YXIgUFNfUT1mdW5jdGlvbihhKXtQU19pLmNhbGwodGhpcyk7dGhpcy5iPWE7dGhpcy5hPXt9fTtQU19nKFBTX1EsUFNfaSk7dmFyIFBTX3hjPVtdLFBTX1I9ZnVuY3Rpb24oYSxiLGMsZCxlKXtQU19iKGMpfHwoYyZhbXA7JmFtcDsoUFNfeGNbMF09Yy50b1N0cmluZygpKSxjPVBTX3hjKTtmb3IodmFyIGY9MDtmJmx0O2MubGVuZ3RoO2YrKyl7dmFyIGc9UFNfbWIoYixjW2ZdLGR8fGEuaGFuZGxlRXZlbnQsZXx8ITEsYS5ifHxhKTtpZighZylicmVhazthLmFbZy5nYV09Z319O1BTX1EucHJvdG90eXBlLmphPWZ1bmN0aW9uKGEsYixjLGQpe3JldHVybiBQU195Yyh0aGlzLGEsYixjLGQpfTsKdmFyIFBTX3ljPWZ1bmN0aW9uKGEsYixjLGQsZSxmKXtpZihQU19iKGMpKWZvcih2YXIgZz0wO2cmbHQ7Yy5sZW5ndGg7ZysrKVBTX3ljKGEsYixjW2ddLGQsZSxmKTtlbHNle2I9UFNfdWIoYixjLGR8fGEuaGFuZGxlRXZlbnQsZSxmfHxhLmJ8fGEpO2lmKCFiKXJldHVybiBhO2EuYVtiLmdhXT1ifXJldHVybiBhfSxQU196Yz1mdW5jdGlvbihhLGIsYyxkLGUsZil7aWYoUFNfYihjKSlmb3IodmFyIGc9MDtnJmx0O2MubGVuZ3RoO2crKylQU196YyhhLGIsY1tnXSxkLGUsZik7ZWxzZSBkPWR8fGEuaGFuZGxlRXZlbnQsZj1mfHxhLmJ8fGEsZD1QU19uYihkKSxlPSEhZSxjPVBTX2JiKGIpP1BTX2liKGIuQyxTdHJpbmcoYyksZCxlLGYpOmI/KGI9UFNfcWIoYikpP1BTX2liKGIsYyxkLGUsZik6bnVsbDpudWxsLGMmYW1wOyZhbXA7KFBTX3ooYyksZGVsZXRlIGEuYVtjLmdhXSl9LFBTX0FjPWZ1bmN0aW9uKGEpe1BTX05hKGEuYSxmdW5jdGlvbihhLGMpe3RoaXMuYS5oYXNPd25Qcm9wZXJ0eShjKSZhbXA7JmFtcDtQU196KGEpfSwKYSk7YS5hPXt9fTtQU19RLnByb3RvdHlwZS5tPWZ1bmN0aW9uKCl7UFNfUS5BLm0uY2FsbCh0aGlzKTtQU19BYyh0aGlzKX07UFNfUS5wcm90b3R5cGUuaGFuZGxlRXZlbnQ9ZnVuY3Rpb24oKXt0aHJvdyBFcnJvcigiRXZlbnRIYW5kbGVyLmhhbmRsZUV2ZW50IG5vdCBpbXBsZW1lbnRlZCIpO307dmFyIFBTX0JjPVsiY2xpY2siLFBTX3Q/ImtleXByZXNzIjoia2V5ZG93biIsImtleXVwIl0sUFNfQ2M9ZnVuY3Rpb24oYSxiLGMsZCxlKXt2YXIgZj1mdW5jdGlvbihhKXt2YXIgYz1QU19uYihiKSxlPWEudGFyZ2V0LGU9UFNfZWEoZSkmYW1wOyZhbXA7MT09ZS5ub2RlVHlwZT9hLnRhcmdldC5nZXRBdHRyaWJ1dGUoInJvbGUiKXx8bnVsbDpudWxsOyJjbGljayI9PWEudHlwZSZhbXA7JmFtcDsoUFNfN2E/MD09YS5ULmJ1dHRvbjoiY2xpY2siPT1hLnR5cGV8fGEuVC5idXR0b24mYW1wO1BTXyRhWzBdKSZhbXA7JmFtcDshKFBTX3UmYW1wOyZhbXA7UFNfX2EmYW1wOyZhbXA7YS5xYSk/Yy5jYWxsKGQsYSk6MTMhPWEua2V5Q29kZSZhbXA7JmFtcDszIT1hLmtleUNvZGV8fCJrZXl1cCI9PWEudHlwZT8zMiE9YS5rZXlDb2RlfHwia2V5dXAiIT1hLnR5cGV8fCJidXR0b24iIT1lJmFtcDsmYW1wOyJ0YWIiIT1lfHwoYy5jYWxsKGQsYSksYS5wcmV2ZW50RGVmYXVsdCgpKTooYS50eXBlPSJrZXlwcmVzcyIsYy5jYWxsKGQsYSkpfTtmLmc9YjtmLmE9ZDtlP1BTX1IoZSxhLFBTX0JjLGYsYyk6ClBTX21iKGEsUFNfQmMsZixjKX07dmFyIFBTX0RjPWZ1bmN0aW9uKGEpe2E9U3RyaW5nKGEpO2lmKC9eXHMqJC8udGVzdChhKT8wOi9eW1xdLDp7fVxzXHUyMDI4XHUyMDI5XSokLy50ZXN0KGEucmVwbGFjZSgvXFxbIlxcXC9iZm5ydHVdL2csIkAiKS5yZXBsYWNlKC8iW14iXFxcblxyXHUyMDI4XHUyMDI5XHgwMC1ceDA4XHgwYS1ceDFmXSoifHRydWV8ZmFsc2V8bnVsbHwtP1xkKyg/OlwuXGQqKT8oPzpbZUVdWytcLV0/XGQrKT8vZywiXSIpLnJlcGxhY2UoLyg/Ol58OnwsKSg/Oltcc1x1MjAyOFx1MjAyOV0qXFspKy9nLCIiKSkpdHJ5e3JldHVybiBldmFsKCIoIithKyIpIil9Y2F0Y2goYil7fXRocm93IEVycm9yKCJJbnZhbGlkIEpTT04gc3RyaW5nOiAiK2EpO307dmFyIFBTX0VjPWZ1bmN0aW9uKCl7cmV0dXJuIFBTX3U/IldlYmtpdCI6UFNfdD8iTW96IjpQU19zPyJtcyI6UFNfcj8iTyI6bnVsbH0sUFNfRmM9ZnVuY3Rpb24oKXtyZXR1cm4gUFNfdT8iLXdlYmtpdCI6UFNfdD8iLW1veiI6UFNfcz8iLW1zIjpQU19yPyItbyI6bnVsbH07dmFyIFBTX1M9ZnVuY3Rpb24oYSxiLGMsZCl7dGhpcy50b3A9YTt0aGlzLnJpZ2h0PWI7dGhpcy5ib3R0b209Yzt0aGlzLmxlZnQ9ZH07UFNfUy5wcm90b3R5cGUuY2xvbmU9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IFBTX1ModGhpcy50b3AsdGhpcy5yaWdodCx0aGlzLmJvdHRvbSx0aGlzLmxlZnQpfTtQU19TLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiIoIit0aGlzLnRvcCsidCwgIit0aGlzLnJpZ2h0KyJyLCAiK3RoaXMuYm90dG9tKyJiLCAiK3RoaXMubGVmdCsibCkifTtQU19TLnByb3RvdHlwZS5jb250YWlucz1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcyZhbXA7JmFtcDthP2EgaW5zdGFuY2VvZiBQU19TP2EubGVmdCZndDs9dGhpcy5sZWZ0JmFtcDsmYW1wO2EucmlnaHQmbHQ7PXRoaXMucmlnaHQmYW1wOyZhbXA7YS50b3AmZ3Q7PXRoaXMudG9wJmFtcDsmYW1wO2EuYm90dG9tJmx0Oz10aGlzLmJvdHRvbTphLngmZ3Q7PXRoaXMubGVmdCZhbXA7JmFtcDthLngmbHQ7PXRoaXMucmlnaHQmYW1wOyZhbXA7YS55Jmd0Oz10aGlzLnRvcCZhbXA7JmFtcDthLnkmbHQ7PXRoaXMuYm90dG9tOiExfTsKUFNfUy5wcm90b3R5cGUucm91bmQ9ZnVuY3Rpb24oKXt0aGlzLnRvcD1NYXRoLnJvdW5kKHRoaXMudG9wKTt0aGlzLnJpZ2h0PU1hdGgucm91bmQodGhpcy5yaWdodCk7dGhpcy5ib3R0b209TWF0aC5yb3VuZCh0aGlzLmJvdHRvbSk7dGhpcy5sZWZ0PU1hdGgucm91bmQodGhpcy5sZWZ0KTtyZXR1cm4gdGhpc307dmFyIFBTX1Q9ZnVuY3Rpb24oYSxiLGMsZCl7dGhpcy5sZWZ0PWE7dGhpcy50b3A9Yjt0aGlzLndpZHRoPWM7dGhpcy5oZWlnaHQ9ZH07UFNfVC5wcm90b3R5cGUuY2xvbmU9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IFBTX1QodGhpcy5sZWZ0LHRoaXMudG9wLHRoaXMud2lkdGgsdGhpcy5oZWlnaHQpfTtQU19ULnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiIoIit0aGlzLmxlZnQrIiwgIit0aGlzLnRvcCsiIC0gIit0aGlzLndpZHRoKyJ3IHggIit0aGlzLmhlaWdodCsiaCkifTsKUFNfVC5wcm90b3R5cGUuY29udGFpbnM9ZnVuY3Rpb24oYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBQU19UP3RoaXMubGVmdCZsdDs9YS5sZWZ0JmFtcDsmYW1wO3RoaXMubGVmdCt0aGlzLndpZHRoJmd0Oz1hLmxlZnQrYS53aWR0aCZhbXA7JmFtcDt0aGlzLnRvcCZsdDs9YS50b3AmYW1wOyZhbXA7dGhpcy50b3ArdGhpcy5oZWlnaHQmZ3Q7PWEudG9wK2EuaGVpZ2h0OmEueCZndDs9dGhpcy5sZWZ0JmFtcDsmYW1wO2EueCZsdDs9dGhpcy5sZWZ0K3RoaXMud2lkdGgmYW1wOyZhbXA7YS55Jmd0Oz10aGlzLnRvcCZhbXA7JmFtcDthLnkmbHQ7PXRoaXMudG9wK3RoaXMuaGVpZ2h0fTtQU19ULnByb3RvdHlwZS5yb3VuZD1mdW5jdGlvbigpe3RoaXMubGVmdD1NYXRoLnJvdW5kKHRoaXMubGVmdCk7dGhpcy50b3A9TWF0aC5yb3VuZCh0aGlzLnRvcCk7dGhpcy53aWR0aD1NYXRoLnJvdW5kKHRoaXMud2lkdGgpO3RoaXMuaGVpZ2h0PU1hdGgucm91bmQodGhpcy5oZWlnaHQpO3JldHVybiB0aGlzfTt2YXIgUFNfVT1mdW5jdGlvbihhLGIsYyl7aWYoUFNfYyhiKSkoYj1QU19HYyhhLGIpKSZhbXA7JmFtcDsoYS5zdHlsZVtiXT1jKTtlbHNlIGZvcih2YXIgZCBpbiBiKXtjPWE7dmFyIGU9YltkXSxmPVBTX0djKGMsZCk7ZiZhbXA7JmFtcDsoYy5zdHlsZVtmXT1lKX19LFBTX0hjPXt9LFBTX0djPWZ1bmN0aW9uKGEsYil7dmFyIGM9UFNfSGNbYl07aWYoIWMpe3ZhciBkPVBTX3phKGIpLGM9ZDt2b2lkIDA9PT1hLnN0eWxlW2RdJmFtcDsmYW1wOyhkPVBTX0VjKCkrUFNfQWEoZCksdm9pZCAwIT09YS5zdHlsZVtkXSZhbXA7JmFtcDsoYz1kKSk7UFNfSGNbYl09Y31yZXR1cm4gY30sUFNfVj1mdW5jdGlvbihhLGIpe3ZhciBjPVBTX00oYSk7cmV0dXJuIGMuZGVmYXVsdFZpZXcmYW1wOyZhbXA7Yy5kZWZhdWx0Vmlldy5nZXRDb21wdXRlZFN0eWxlJmFtcDsmYW1wOyhjPWMuZGVmYXVsdFZpZXcuZ2V0Q29tcHV0ZWRTdHlsZShhLG51bGwpKT9jW2JdfHxjLmdldFByb3BlcnR5VmFsdWUoYil8fCIiOiIifSxQU19XPWZ1bmN0aW9uKGEsYil7cmV0dXJuIFBTX1YoYSxiKXx8KGEuY3VycmVudFN0eWxlPwphLmN1cnJlbnRTdHlsZVtiXTpudWxsKXx8YS5zdHlsZSZhbXA7JmFtcDthLnN0eWxlW2JdfSxQU19KYz1mdW5jdGlvbihhLGIsYyl7dmFyIGQ7YiBpbnN0YW5jZW9mIFBTX0s/KGQ9Yi54LGI9Yi55KTooZD1iLGI9Yyk7YS5zdHlsZS5sZWZ0PVBTX0ljKGQpO2Euc3R5bGUudG9wPVBTX0ljKGIpfSxQU19LYz1mdW5jdGlvbihhKXt2YXIgYjt0cnl7Yj1hLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpfWNhdGNoKGMpe3JldHVybntsZWZ0OjAsdG9wOjAscmlnaHQ6MCxib3R0b206MH19UFNfcyZhbXA7JmFtcDthLm93bmVyRG9jdW1lbnQuYm9keSZhbXA7JmFtcDsoYT1hLm93bmVyRG9jdW1lbnQsYi5sZWZ0LT1hLmRvY3VtZW50RWxlbWVudC5jbGllbnRMZWZ0K2EuYm9keS5jbGllbnRMZWZ0LGIudG9wLT1hLmRvY3VtZW50RWxlbWVudC5jbGllbnRUb3ArYS5ib2R5LmNsaWVudFRvcCk7cmV0dXJuIGJ9LFBTX0xjPWZ1bmN0aW9uKGEpe2lmKFBTX3MmYW1wOyZhbXA7IVBTX3coOCkpcmV0dXJuIGEub2Zmc2V0UGFyZW50O3ZhciBiPVBTX00oYSksYz0KUFNfVyhhLCJwb3NpdGlvbiIpLGQ9ImZpeGVkIj09Y3x8ImFic29sdXRlIj09Yztmb3IoYT1hLnBhcmVudE5vZGU7YSZhbXA7JmFtcDthIT1iO2E9YS5wYXJlbnROb2RlKWlmKDExPT1hLm5vZGVUeXBlJmFtcDsmYW1wO2EuaG9zdCZhbXA7JmFtcDsoYT1hLmhvc3QpLGM9UFNfVyhhLCJwb3NpdGlvbiIpLGQ9ZCZhbXA7JmFtcDsic3RhdGljIj09YyZhbXA7JmFtcDthIT1iLmRvY3VtZW50RWxlbWVudCZhbXA7JmFtcDthIT1iLmJvZHksIWQmYW1wOyZhbXA7KGEuc2Nyb2xsV2lkdGgmZ3Q7YS5jbGllbnRXaWR0aHx8YS5zY3JvbGxIZWlnaHQmZ3Q7YS5jbGllbnRIZWlnaHR8fCJmaXhlZCI9PWN8fCJhYnNvbHV0ZSI9PWN8fCJyZWxhdGl2ZSI9PWMpKXJldHVybiBhO3JldHVybiBudWxsfSxQU19OYz1mdW5jdGlvbihhKXtmb3IodmFyIGI9bmV3IFBTX1MoMCxJbmZpbml0eSxJbmZpbml0eSwwKSxjPVBTX04oYSksZD1jLmEuYm9keSxlPWMuYS5kb2N1bWVudEVsZW1lbnQsZj1QU19tYyhjLmEpO2E9UFNfTGMoYSk7KWlmKCEoUFNfcyZhbXA7JmFtcDswPT1hLmNsaWVudFdpZHRofHxQU191JmFtcDsmYW1wOzA9PWEuY2xpZW50SGVpZ2h0JmFtcDsmYW1wOwphPT1kKSZhbXA7JmFtcDthIT1kJmFtcDsmYW1wO2EhPWUmYW1wOyZhbXA7InZpc2libGUiIT1QU19XKGEsIm92ZXJmbG93Iikpe3ZhciBnPVBTX01jKGEpLGg9bmV3IFBTX0soYS5jbGllbnRMZWZ0LGEuY2xpZW50VG9wKTtnLngrPWgueDtnLnkrPWgueTtiLnRvcD1NYXRoLm1heChiLnRvcCxnLnkpO2IucmlnaHQ9TWF0aC5taW4oYi5yaWdodCxnLngrYS5jbGllbnRXaWR0aCk7Yi5ib3R0b209TWF0aC5taW4oYi5ib3R0b20sZy55K2EuY2xpZW50SGVpZ2h0KTtiLmxlZnQ9TWF0aC5tYXgoYi5sZWZ0LGcueCl9ZD1mLnNjcm9sbExlZnQ7Zj1mLnNjcm9sbFRvcDtiLmxlZnQ9TWF0aC5tYXgoYi5sZWZ0LGQpO2IudG9wPU1hdGgubWF4KGIudG9wLGYpO2M9KFBTX25jKGMuYSl8fHdpbmRvdykuZG9jdW1lbnQ7Yz0iQ1NTMUNvbXBhdCI9PWMuY29tcGF0TW9kZT9jLmRvY3VtZW50RWxlbWVudDpjLmJvZHk7Yz1uZXcgUFNfTChjLmNsaWVudFdpZHRoLGMuY2xpZW50SGVpZ2h0KTtiLnJpZ2h0PU1hdGgubWluKGIucmlnaHQsZCtjLndpZHRoKTsKYi5ib3R0b209TWF0aC5taW4oYi5ib3R0b20sZitjLmhlaWdodCk7cmV0dXJuIDAmbHQ7PWIudG9wJmFtcDsmYW1wOzAmbHQ7PWIubGVmdCZhbXA7JmFtcDtiLmJvdHRvbSZndDtiLnRvcCZhbXA7JmFtcDtiLnJpZ2h0Jmd0O2IubGVmdD9iOm51bGx9LFBTX01jPWZ1bmN0aW9uKGEpe3ZhciBiPVBTX00oYSk7UFNfRWEoYSwiUGFyYW1ldGVyIGlzIHJlcXVpcmVkIik7dmFyIGM9bmV3IFBTX0soMCwwKSxkO2Q9Yj9QU19NKGIpOmRvY3VtZW50O2Q9IVBTX3N8fFBTX3coOSl8fFBTX3djKFBTX04oZCkpP2QuZG9jdW1lbnRFbGVtZW50OmQuYm9keTtpZihhPT1kKXJldHVybiBjO2E9UFNfS2MoYSk7Yj1QU19OKGIpO2I9UFNfb2MoYi5hKTtjLng9YS5sZWZ0K2IueDtjLnk9YS50b3ArYi55O3JldHVybiBjfSxQU19QYz1mdW5jdGlvbihhLGIpe3ZhciBjPVBTX09jKGEpLGQ9UFNfT2MoYik7cmV0dXJuIG5ldyBQU19LKGMueC1kLngsYy55LWQueSl9LFBTX1FjPWZ1bmN0aW9uKGEpe2E9UFNfS2MoYSk7cmV0dXJuIG5ldyBQU19LKGEubGVmdCxhLnRvcCl9LApQU19PYz1mdW5jdGlvbihhKXtQU19rKGEpO2lmKDE9PWEubm9kZVR5cGUpcmV0dXJuIFBTX1FjKGEpO3ZhciBiPVBTX2RhKGEuVSksYz1hO2EudGFyZ2V0VG91Y2hlcyZhbXA7JmFtcDthLnRhcmdldFRvdWNoZXMubGVuZ3RoP2M9YS50YXJnZXRUb3VjaGVzWzBdOmImYW1wOyZhbXA7YS5VKCkudGFyZ2V0VG91Y2hlcyZhbXA7JmFtcDthLlUoKS50YXJnZXRUb3VjaGVzLmxlbmd0aCZhbXA7JmFtcDsoYz1hLlUoKS50YXJnZXRUb3VjaGVzWzBdKTtyZXR1cm4gbmV3IFBTX0soYy5jbGllbnRYLGMuY2xpZW50WSl9LFBTX0ljPWZ1bmN0aW9uKGEpeyJudW1iZXIiPT10eXBlb2YgYSZhbXA7JmFtcDsoYT1hKyJweCIpO3JldHVybiBhfSxQU19YPWZ1bmN0aW9uKGEpe3ZhciBiPVBTX1JjO2lmKCJub25lIiE9UFNfVyhhLCJkaXNwbGF5IikpcmV0dXJuIGIoYSk7dmFyIGM9YS5zdHlsZSxkPWMuZGlzcGxheSxlPWMudmlzaWJpbGl0eSxmPWMucG9zaXRpb247Yy52aXNpYmlsaXR5PSJoaWRkZW4iO2MucG9zaXRpb249ImFic29sdXRlIjtjLmRpc3BsYXk9ImlubGluZSI7CmE9YihhKTtjLmRpc3BsYXk9ZDtjLnBvc2l0aW9uPWY7Yy52aXNpYmlsaXR5PWU7cmV0dXJuIGF9LFBTX1JjPWZ1bmN0aW9uKGEpe3ZhciBiPWEub2Zmc2V0V2lkdGgsYz1hLm9mZnNldEhlaWdodCxkPVBTX3UmYW1wOyZhbXA7IWImYW1wOyZhbXA7IWM7cmV0dXJuKHZvaWQgMD09PWJ8fGQpJmFtcDsmYW1wO2EuZ2V0Qm91bmRpbmdDbGllbnRSZWN0PyhhPVBTX0tjKGEpLG5ldyBQU19MKGEucmlnaHQtYS5sZWZ0LGEuYm90dG9tLWEudG9wKSk6bmV3IFBTX0woYixjKX0sUFNfU2M9ZnVuY3Rpb24oYSl7dmFyIGI9UFNfTWMoYSk7YT1QU19YKGEpO3JldHVybiBuZXcgUFNfVChiLngsYi55LGEud2lkdGgsYS5oZWlnaHQpfSxQU19UYz1mdW5jdGlvbihhLGIpe3ZhciBjPWEuc3R5bGU7Im9wYWNpdHkiaW4gYz9jLm9wYWNpdHk9YjoiTW96T3BhY2l0eSJpbiBjP2MuTW96T3BhY2l0eT1iOiJmaWx0ZXIiaW4gYyZhbXA7JmFtcDsoYy5maWx0ZXI9IiI9PT1iPyIiOiJhbHBoYShvcGFjaXR5PSIrMTAwKmIrIikiKX0sUFNfWT1mdW5jdGlvbihhLGIpe2Euc3R5bGUuZGlzcGxheT0KYj8iIjoibm9uZSJ9LFBTX1VjPWZ1bmN0aW9uKGEsYil7aWYoL15cZCtweD8kLy50ZXN0KGIpKXJldHVybiBwYXJzZUludChiLDEwKTt2YXIgYz1hLnN0eWxlLmxlZnQsZD1hLnJ1bnRpbWVTdHlsZS5sZWZ0O2EucnVudGltZVN0eWxlLmxlZnQ9YS5jdXJyZW50U3R5bGUubGVmdDthLnN0eWxlLmxlZnQ9Yjt2YXIgZT1hLnN0eWxlLnBpeGVsTGVmdDthLnN0eWxlLmxlZnQ9YzthLnJ1bnRpbWVTdHlsZS5sZWZ0PWQ7cmV0dXJuIGV9LFBTX1ZjPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5jdXJyZW50U3R5bGU/YS5jdXJyZW50U3R5bGVbYl06bnVsbDtyZXR1cm4gYz9QU19VYyhhLGMpOjB9LFBTX1djPWZ1bmN0aW9uKGEsYil7aWYoUFNfcyl7dmFyIGM9UFNfVmMoYSxiKyJMZWZ0IiksZD1QU19WYyhhLGIrIlJpZ2h0IiksZT1QU19WYyhhLGIrIlRvcCIpLGY9UFNfVmMoYSxiKyJCb3R0b20iKTtyZXR1cm4gbmV3IFBTX1MoZSxkLGYsYyl9Yz1QU19WKGEsYisiTGVmdCIpO2Q9UFNfVihhLGIrCiJSaWdodCIpO2U9UFNfVihhLGIrIlRvcCIpO2Y9UFNfVihhLGIrIkJvdHRvbSIpO3JldHVybiBuZXcgUFNfUyhwYXJzZUZsb2F0KGUpLHBhcnNlRmxvYXQoZCkscGFyc2VGbG9hdChmKSxwYXJzZUZsb2F0KGMpKX0sUFNfWGM9e3RoaW46MixtZWRpdW06NCx0aGljazo2fSxQU19ZYz1mdW5jdGlvbihhLGIpe2lmKCJub25lIj09KGEuY3VycmVudFN0eWxlP2EuY3VycmVudFN0eWxlW2IrIlN0eWxlIl06bnVsbCkpcmV0dXJuIDA7dmFyIGM9YS5jdXJyZW50U3R5bGU/YS5jdXJyZW50U3R5bGVbYisiV2lkdGgiXTpudWxsO3JldHVybiBjIGluIFBTX1hjP1BTX1hjW2NdOlBTX1VjKGEsYyl9O1BTX3MmYW1wOyZhbXA7UFNfdigxMik7dmFyIFBTX1pjPS9tYXRyaXhcKFswLTlcLlwtXSssIFswLTlcLlwtXSssIFswLTlcLlwtXSssIFswLTlcLlwtXSssIChbMC05XC5cLV0rKXA/eD8sIChbMC05XC5cLV0rKXA/eD9cKS87dmFyIFBTX19jPWZ1bmN0aW9uKGEpe3JldHVybihhPWEuZXhlYyhQU19vKSk/YVsxXToiIn0sUFNfMGM9ZnVuY3Rpb24oKXtpZihQU19KYilyZXR1cm4gUFNfX2MoL0ZpcmVmb3hcLyhbMC05Ll0rKS8pO2lmKFBTX3N8fFBTX3IpcmV0dXJuIFBTXzJhO2lmKFBTX05iKXJldHVybiBQU19fYygvQ2hyb21lXC8oWzAtOS5dKykvKTtpZihQU19PYiZhbXA7JmFtcDshKFBTX1lhKCl8fFBTX3AoImlQYWQiKXx8UFNfcCgiaVBvZCIpKSlyZXR1cm4gUFNfX2MoL1ZlcnNpb25cLyhbMC05Ll0rKS8pO2lmKFBTX0tifHxQU19MYil7dmFyIGE7aWYoYT0vVmVyc2lvblwvKFxTKykuKk1vYmlsZVwvKFxTKykvLmV4ZWMoUFNfbykpcmV0dXJuIGFbMV0rIi4iK2FbMl19ZWxzZSBpZihQU19NYilyZXR1cm4oYT1QU19fYygvQW5kcm9pZFxzKyhbMC05Ll0rKS8pKT9hOlBTX19jKC9WZXJzaW9uXC8oWzAtOS5dKykvKTtyZXR1cm4iIn0oKTt2YXIgUFNfMWM9UFNfQWIoZnVuY3Rpb24oKXtyZXR1cm4hUFNfc3x8MCZsdDs9UFNfeWEoUFNfMGMsOSl9KSxQU18yYz1QU19BYihmdW5jdGlvbigpe3JldHVybiBQU191fHxQU190JmFtcDsmYW1wOzAmbHQ7PVBTX3lhKFBTXzBjLDEwKXx8UFNfcyZhbXA7JmFtcDswJmx0Oz1QU195YShQU18wYywxMCl9KSxQU18zYz1QU19BYihmdW5jdGlvbigpe3JldHVybiBQU19zJmFtcDsmYW1wOzk9PVBTXzRhPyItbXMtdHJhbnNmb3JtIjoidHJhbnNmb3JtIn0pO3ZhciBQU19aPWZ1bmN0aW9uKCl7UFNfaS5jYWxsKHRoaXMpO3RoaXMuQz1uZXcgUFNfZmIodGhpcyk7dGhpcy5YPXRoaXM7dGhpcy5EPW51bGx9O1BTX2coUFNfWixQU19pKTtQU19aLnByb3RvdHlwZVtQU19hYl09ITA7UFNfPVBTX1oucHJvdG90eXBlO1BTXy5rYT1mdW5jdGlvbihhKXt0aGlzLkQ9YX07UFNfLmFkZEV2ZW50TGlzdGVuZXI9ZnVuY3Rpb24oYSxiLGMsZCl7UFNfbWIodGhpcyxhLGIsYyxkKX07UFNfLnJlbW92ZUV2ZW50TGlzdGVuZXI9ZnVuY3Rpb24oYSxiLGMsZCl7UFNfdmIodGhpcyxhLGIsYyxkKX07ClBTXy5kaXNwYXRjaEV2ZW50PWZ1bmN0aW9uKGEpe1BTX29iKHRoaXMpO3ZhciBiLGM9dGhpcy5EO2lmKGMpe2I9W107Zm9yKHZhciBkPTE7YztjPWMuRCliLnB1c2goYyksUFNfaygxRTMmZ3Q7KytkLCJpbmZpbml0ZSBsb29wIil9Yz10aGlzLlg7ZD1hLnR5cGV8fGE7aWYoUFNfYyhhKSlhPW5ldyBQU194KGEsYyk7ZWxzZSBpZihhIGluc3RhbmNlb2YgUFNfeClhLnRhcmdldD1hLnRhcmdldHx8YztlbHNle3ZhciBlPWE7YT1uZXcgUFNfeChkLGMpO1BTX1JhKGEsZSl9dmFyIGU9ITAsZjtpZihiKWZvcih2YXIgZz1iLmxlbmd0aC0xOzAmbHQ7PWc7Zy0tKWY9YS5hPWJbZ10sZT1QU180YyhmLGQsITAsYSkmYW1wOyZhbXA7ZTtmPWEuYT1jO2U9UFNfNGMoZixkLCEwLGEpJmFtcDsmYW1wO2U7ZT1QU180YyhmLGQsITEsYSkmYW1wOyZhbXA7ZTtpZihiKWZvcihnPTA7ZyZsdDtiLmxlbmd0aDtnKyspZj1hLmE9YltnXSxlPVBTXzRjKGYsZCwhMSxhKSZhbXA7JmFtcDtlO3JldHVybiBlfTsKUFNfLm09ZnVuY3Rpb24oKXtQU19aLkEubS5jYWxsKHRoaXMpO2lmKHRoaXMuQyl7dmFyIGE9dGhpcy5DLGI9MCxjO2ZvcihjIGluIGEuYSl7Zm9yKHZhciBkPWEuYVtjXSxlPTA7ZSZsdDtkLmxlbmd0aDtlKyspKytiLFBTX2ViKGRbZV0pO2RlbGV0ZSBhLmFbY107YS5iLS19fXRoaXMuRD1udWxsfTtQU18uamE9ZnVuY3Rpb24oYSxiLGMsZCl7cmV0dXJuIHRoaXMuQy5hZGQoU3RyaW5nKGEpLGIsITAsYyxkKX07dmFyIFBTXzRjPWZ1bmN0aW9uKGEsYixjLGQpe2I9YS5DLmFbU3RyaW5nKGIpXTtpZighYilyZXR1cm4hMDtiPWIuY29uY2F0KCk7Zm9yKHZhciBlPSEwLGY9MDtmJmx0O2IubGVuZ3RoOysrZil7dmFyIGc9YltmXTtpZihnJmFtcDsmYW1wOyFnLlAmYW1wOyZhbXA7Zy5jYT09Yyl7dmFyIGg9Zy5saXN0ZW5lcixtPWcuZWF8fGcuc3JjO2cuYmEmYW1wOyZhbXA7UFNfaGIoYS5DLGcpO2U9ITEhPT1oLmNhbGwobSxkKSZhbXA7JmFtcDtlfX1yZXR1cm4gZSZhbXA7JmFtcDswIT1kLnlhfSxQU19vYj1mdW5jdGlvbihhKXtQU19rKGEuQywiRXZlbnQgdGFyZ2V0IGlzIG5vdCBpbml0aWFsaXplZC4gRGlkIHlvdSBjYWxsIHRoZSBzdXBlcmNsYXNzIChnb29nLmV2ZW50cy5FdmVudFRhcmdldCkgY29uc3RydWN0b3I/Iil9O3ZhciBQU19fPWZ1bmN0aW9uKGEsYil7UFNfWi5jYWxsKHRoaXMpO3RoaXMuZj1hfHwxO3RoaXMuYj1ifHxQU19hO3RoaXMuZz1QU19lKHRoaXMuaSx0aGlzKTt0aGlzLmg9UFNfZigpfTtQU19nKFBTX18sUFNfWik7UFNfXy5wcm90b3R5cGUuYz0hMTtQU19fLnByb3RvdHlwZS5hPW51bGw7dmFyIFBTXzdjPWZ1bmN0aW9uKGEsYil7YS5mPWI7YS5hJmFtcDsmYW1wO2EuYz8oUFNfNWMoYSksUFNfNmMoYSkpOmEuYSZhbXA7JmFtcDtQU181YyhhKX07UFNfXy5wcm90b3R5cGUuaT1mdW5jdGlvbigpe2lmKHRoaXMuYyl7dmFyIGE9UFNfZigpLXRoaXMuaDswJmx0O2EmYW1wOyZhbXA7YSZsdDsuOCp0aGlzLmY/dGhpcy5hPXRoaXMuYi5zZXRUaW1lb3V0KHRoaXMuZyx0aGlzLmYtYSk6KHRoaXMuYSZhbXA7JmFtcDsodGhpcy5iLmNsZWFyVGltZW91dCh0aGlzLmEpLHRoaXMuYT1udWxsKSx0aGlzLmRpc3BhdGNoRXZlbnQoInRpY2siKSx0aGlzLmMmYW1wOyZhbXA7KHRoaXMuYT10aGlzLmIuc2V0VGltZW91dCh0aGlzLmcsdGhpcy5mKSx0aGlzLmg9UFNfZigpKSl9fTsKdmFyIFBTXzZjPWZ1bmN0aW9uKGEpe2EuYz0hMDthLmF8fChhLmE9YS5iLnNldFRpbWVvdXQoYS5nLGEuZiksYS5oPVBTX2YoKSl9LFBTXzVjPWZ1bmN0aW9uKGEpe2EuYz0hMTthLmEmYW1wOyZhbXA7KGEuYi5jbGVhclRpbWVvdXQoYS5hKSxhLmE9bnVsbCl9O1BTX18ucHJvdG90eXBlLm09ZnVuY3Rpb24oKXtQU19fLkEubS5jYWxsKHRoaXMpO1BTXzVjKHRoaXMpO2RlbGV0ZSB0aGlzLmJ9O3ZhciBQU18wPWZ1bmN0aW9uKGEsYixjKXtpZihQU19kYShhKSljJmFtcDsmYW1wOyhhPVBTX2UoYSxjKSk7ZWxzZSBpZihhJmFtcDsmYW1wOyJmdW5jdGlvbiI9PXR5cGVvZiBhLmhhbmRsZUV2ZW50KWE9UFNfZShhLmhhbmRsZUV2ZW50LGEpO2Vsc2UgdGhyb3cgRXJyb3IoIkludmFsaWQgbGlzdGVuZXIgYXJndW1lbnQiKTtyZXR1cm4gMjE0NzQ4MzY0NyZsdDtiPy0xOlBTX2Euc2V0VGltZW91dChhLGJ8fDApfTt2YXIgUFNfOGM9ZnVuY3Rpb24oKXtQU19aLmNhbGwodGhpcyk7dGhpcy5hPTB9O1BTX2coUFNfOGMsUFNfWik7dmFyIFBTXzljPWZ1bmN0aW9uKGEsYil7UFNfYihiKXx8KGI9W2JdKTtQU19rKDAmbHQ7Yi5sZW5ndGgsIkF0IGxlYXN0IG9uZSBDc3MzUHJvcGVydHkgc2hvdWxkIGJlIHNwZWNpZmllZC4iKTt2YXIgYz1QU19LYShiLGZ1bmN0aW9uKGEpe2lmKFBTX2MoYSkpcmV0dXJuIGE7UFNfRWEoYSwiRXhwZWN0ZWQgY3NzMyBwcm9wZXJ0eSB0byBiZSBhbiBvYmplY3QuIik7dmFyIGI9YS53YSsiICIrYS5kdXJhdGlvbisicyAiK2EudGltaW5nKyIgIithLm9hKyJzIjtQU19rKGEud2EmYW1wOyZhbXA7UFNfZChhLmR1cmF0aW9uKSZhbXA7JmFtcDthLnRpbWluZyZhbXA7JmFtcDtQU19kKGEub2EpLCJVbmV4cGVjdGVkIGNzczMgcHJvcGVydHkgdmFsdWU6ICVzIixiKTtyZXR1cm4gYn0pO1BTX1UoYSwidHJhbnNpdGlvbiIsYy5qb2luKCIsIikpfSxQU18kYz1QU19BYihmdW5jdGlvbigpe2lmKFBTX3MpcmV0dXJuIFBTX3YoIjEwLjAiKTt2YXIgYT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJESVYiKSxiPVBTX0ZjKCksYz17dHJhbnNpdGlvbjoib3BhY2l0eSAxcyBsaW5lYXIifTsKYiZhbXA7JmFtcDsoY1tiKyItdHJhbnNpdGlvbiJdPSJvcGFjaXR5IDFzIGxpbmVhciIpO2I9UFNfY2MoImRpdiIse3N0eWxlOmN9KTthLmlubmVySFRNTD1QU19JKGIpO2E9YS5maXJzdENoaWxkO1BTX2soYS5ub2RlVHlwZT09Tm9kZS5FTEVNRU5UX05PREUpO2I9YS5zdHlsZVtQU196YSgidHJhbnNpdGlvbiIpXTtyZXR1cm4iIiE9KCJ1bmRlZmluZWQiIT09dHlwZW9mIGI/YjphLnN0eWxlW1BTX0djKGEsInRyYW5zaXRpb24iKV18fCIiKX0pO3ZhciBQU18xPWZ1bmN0aW9uKGEsYixjLGQsZSl7UFNfOGMuY2FsbCh0aGlzKTt0aGlzLmI9YTt0aGlzLmg9Yjt0aGlzLmk9Yzt0aGlzLmY9ZDt0aGlzLnM9UFNfYihlKT9lOltlXX07UFNfZyhQU18xLFBTXzhjKTt2YXIgUFNfYWQ9ZnVuY3Rpb24oYSl7MSE9YS5hJmFtcDsmYW1wOyhhLmRpc3BhdGNoRXZlbnQoImJlZ2luIiksYS5kaXNwYXRjaEV2ZW50KCJwbGF5IiksUFNfZigpLGEuYT0xLFBTXyRjKCk/KFBTX1UoYS5iLGEuaSksYS5nPVBTXzAoYS5sLHZvaWQgMCxhKSk6YS5jKCExKSl9O1BTXzEucHJvdG90eXBlLmw9ZnVuY3Rpb24oKXtQU19YKHRoaXMuYik7UFNfOWModGhpcy5iLHRoaXMucyk7UFNfVSh0aGlzLmIsdGhpcy5mKTt0aGlzLmc9UFNfMChQU19lKHRoaXMuYyx0aGlzLCExKSwxRTMqdGhpcy5oKX07ClBTXzEucHJvdG90eXBlLmM9ZnVuY3Rpb24oYSl7UFNfVSh0aGlzLmIsInRyYW5zaXRpb24iLCIiKTtQU19hLmNsZWFyVGltZW91dCh0aGlzLmcpO1BTX1UodGhpcy5iLHRoaXMuZik7UFNfZigpO3RoaXMuYT0wO2E/dGhpcy5kaXNwYXRjaEV2ZW50KCJzdG9wIik6dGhpcy5kaXNwYXRjaEV2ZW50KCJmaW5pc2giKTt0aGlzLmRpc3BhdGNoRXZlbnQoImVuZCIpfTtQU18xLnByb3RvdHlwZS5tPWZ1bmN0aW9uKCl7MT09dGhpcy5hJmFtcDsmYW1wO3RoaXMuYyghMCk7UFNfMS5BLm0uY2FsbCh0aGlzKX07dmFyIFBTX2JkPWZ1bmN0aW9uKGEsYixjLGQpe3JldHVybiBuZXcgUFNfMShhLC4yMTgse29wYWNpdHk6Y30se29wYWNpdHk6ZH0se3dhOiJvcGFjaXR5IixkdXJhdGlvbjouMjE4LHRpbWluZzpiLG9hOjB9KX07dmFyIFBTX2NkPXtVYTohMH0sUFNfZGQ9e1ZhOiEwfSxQU19lZD1mdW5jdGlvbigpe3Rocm93IEVycm9yKCJEbyBub3QgaW5zdGFudGlhdGUgZGlyZWN0bHkiKTt9O1BTX2VkLnByb3RvdHlwZS5hPW51bGw7UFNfZWQucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuV307dmFyIFBTX2ZkPWZ1bmN0aW9uKGEpe2lmKCFQU19lYShhKSlyZXR1cm4gU3RyaW5nKGEpO2lmKGEgaW5zdGFuY2VvZiBQU19lZCl7aWYoYS5TPT09UFNfY2QpcmV0dXJuIFBTX0RhKGEuVyk7aWYoYS5TPT09UFNfZGQpcmV0dXJuIFBTX2ooYS5XKX1QU19sKCJTb3kgdGVtcGxhdGUgb3V0cHV0IGlzIHVuc2FmZSBmb3IgdXNlIGFzIEhUTUw6ICIrYSk7cmV0dXJuInpTb3l6In0sUFNfZ2Q9L14mbHQ7KGJvZHl8Y2FwdGlvbnxjb2x8Y29sZ3JvdXB8aGVhZHxodG1sfHRyfHRkfHRib2R5fHRoZWFkfHRmb290KSZndDsvaSxQU19oZD17fTt2YXIgUFNfMj1mdW5jdGlvbigpe307UFNfMi5iPWZ1bmN0aW9uKCl7cmV0dXJuIFBTXzIuYT9QU18yLmE6UFNfMi5hPW5ldyBQU18yfTtQU18yLnByb3RvdHlwZS5hPTA7dmFyIFBTXzM9ZnVuY3Rpb24oYSl7UFNfWi5jYWxsKHRoaXMpO3RoaXMuZj1hfHxQU19OKCk7dGhpcy53PW51bGw7dGhpcy5GPSExO3RoaXMuYT1udWxsO3RoaXMuYz12b2lkIDA7dGhpcy5pPXRoaXMubD10aGlzLmc9bnVsbH07UFNfZyhQU18zLFBTX1opO1BTXzMucHJvdG90eXBlLkk9UFNfMi5iKCk7UFNfMy5wcm90b3R5cGUuQj1mdW5jdGlvbigpe3JldHVybiB0aGlzLmF9O3ZhciBQU19pZD1mdW5jdGlvbihhKXthLmN8fChhLmM9bmV3IFBTX1EoYSkpO3JldHVybiBhLmN9O1BTXzMucHJvdG90eXBlLmthPWZ1bmN0aW9uKGEpe2lmKHRoaXMuZyZhbXA7JmFtcDt0aGlzLmchPWEpdGhyb3cgRXJyb3IoIk1ldGhvZCBub3Qgc3VwcG9ydGVkIik7UFNfMy5BLmthLmNhbGwodGhpcyxhKX07UFNfMy5wcm90b3R5cGUucmE9ZnVuY3Rpb24oKXt0aGlzLmE9dGhpcy5mLmEuY3JlYXRlRWxlbWVudCgiRElWIil9OwpQU18zLnByb3RvdHlwZS5kYT1mdW5jdGlvbigpe3RoaXMuRj0hMDtQU19qZCh0aGlzLGZ1bmN0aW9uKGEpeyFhLkYmYW1wOyZhbXA7YS5CKCkmYW1wOyZhbXA7YS5kYSgpfSl9O3ZhciBQU19rZD1mdW5jdGlvbihhKXtQU19qZChhLGZ1bmN0aW9uKGEpe2EuRiZhbXA7JmFtcDtQU19rZChhKX0pO2EuYyZhbXA7JmFtcDtQU19BYyhhLmMpO2EuRj0hMX07UFNfMy5wcm90b3R5cGUubT1mdW5jdGlvbigpe3RoaXMuRiZhbXA7JmFtcDtQU19rZCh0aGlzKTt0aGlzLmMmYW1wOyZhbXA7KHRoaXMuYy5MKCksZGVsZXRlIHRoaXMuYyk7UFNfamQodGhpcyxmdW5jdGlvbihhKXthLkwoKX0pO3RoaXMuYSZhbXA7JmFtcDtQU19yYyh0aGlzLmEpO3RoaXMuZz10aGlzLmE9dGhpcy5pPXRoaXMubD1udWxsO1BTXzMuQS5tLmNhbGwodGhpcyl9O1BTXzMucHJvdG90eXBlLnBhPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuYX07dmFyIFBTX2pkPWZ1bmN0aW9uKGEsYil7YS5sJmFtcDsmYW1wO1BTX24oYS5sLGIsdm9pZCAwKX07ClBTXzMucHJvdG90eXBlLnJlbW92ZUNoaWxkPWZ1bmN0aW9uKGEsYil7aWYoYSl7dmFyIGM9UFNfYyhhKT9hOmEud3x8KGEudz0iOiIrKGEuSS5hKyspLnRvU3RyaW5nKDM2KSksZDt0aGlzLmkmYW1wOyZhbXA7Yz8oZD10aGlzLmksZD0oYyBpbiBkP2RbY106dm9pZCAwKXx8bnVsbCk6ZD1udWxsO2E9ZDtpZihjJmFtcDsmYW1wO2Epe2Q9dGhpcy5pO2MgaW4gZCZhbXA7JmFtcDtkZWxldGUgZFtjXTtQU19NYSh0aGlzLmwsYSk7YiZhbXA7JmFtcDsoUFNfa2QoYSksYS5hJmFtcDsmYW1wO1BTX3JjKGEuYSkpO2M9YTtpZihudWxsPT1jKXRocm93IEVycm9yKCJVbmFibGUgdG8gc2V0IHBhcmVudCBjb21wb25lbnQiKTtjLmc9bnVsbDtQU18zLkEua2EuY2FsbChjLG51bGwpfX1pZighYSl0aHJvdyBFcnJvcigiQ2hpbGQgaXMgbm90IGluIHBhcmVudCBjb21wb25lbnQiKTtyZXR1cm4gYX07dmFyIFBTX2xkPWZ1bmN0aW9uKGEsYil7cmV0dXJuKGImYW1wOzQmYW1wOyZhbXA7InJ0bCI9PVBTX1coYSwiZGlyZWN0aW9uIik/Yl4yOmIpJmFtcDstNX07dmFyIFBTXzQ9ZnVuY3Rpb24oYSxiKXtQU19aLmNhbGwodGhpcyk7dGhpcy5hPW5ldyBQU19RKHRoaXMpO3ZhciBjPWF8fG51bGw7UFNfbWQodGhpcyk7dGhpcy52PWM7YiZhbXA7JmFtcDsodGhpcy5SPWIpfTtQU19nKFBTXzQsUFNfWik7UFNfPVBTXzQucHJvdG90eXBlO1BTXy52PW51bGw7UFNfLm1hPW51bGw7UFNfLkc9ITE7UFNfLmlhPS0xO1BTXy5SPSJ0b2dnbGVfZGlzcGxheSI7UFNfLkI9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52fTt2YXIgUFNfbWQ9ZnVuY3Rpb24oYSl7aWYoYS5HKXRocm93IEVycm9yKCJDYW4gbm90IGNoYW5nZSB0aGlzIHN0YXRlIG9mIHRoZSBwb3B1cCB3aGlsZSBzaG93aW5nLiIpO307UFNfNC5wcm90b3R5cGUuYj1QU19iYTsKdmFyIFBTX25kPWZ1bmN0aW9uKGEsYil7YS5HJmFtcDsmYW1wO2EuZGlzcGF0Y2hFdmVudCh7dHlwZToiYmVmb3JlaGlkZSIsdGFyZ2V0OmJ9KSZhbXA7JmFtcDsoYS5hJmFtcDsmYW1wO1BTX0FjKGEuYSksYS5HPSExLFBTX2YoKSxhLmM/KFBTX3ViKGEuYywiZW5kIixQU19qYShhLm5hLGIpLCExLGEpLFBTX2FkKGEuYykpOmEubmEoYikpfTtQU189UFNfNC5wcm90b3R5cGU7UFNfLm5hPWZ1bmN0aW9uKGEpeyJ0b2dnbGVfZGlzcGxheSI9PXRoaXMuUj90aGlzLkxhKCk6Im1vdmVfb2Zmc2NyZWVuIj09dGhpcy5SJmFtcDsmYW1wOyh0aGlzLnYuc3R5bGUudG9wPSItMTAwMDBweCIpO3RoaXMuZGlzcGF0Y2hFdmVudCh7dHlwZToiaGlkZSIsdGFyZ2V0OmF9KX07UFNfLkxhPWZ1bmN0aW9uKCl7dGhpcy52LnN0eWxlLnZpc2liaWxpdHk9ImhpZGRlbiI7UFNfWSh0aGlzLnYsITEpfTtQU18uc2E9ZnVuY3Rpb24oKXt0aGlzLmRpc3BhdGNoRXZlbnQoInNob3ciKX07ClBTXy52YT1mdW5jdGlvbihhKXthPWEudGFyZ2V0O1BTX3RjKHRoaXMudixhKXx8UFNfb2QodGhpcyxhKXx8MTUwJmd0O1BTX2YoKS10aGlzLmlhfHxQU19uZCh0aGlzLGEpfTtQU18udWE9ZnVuY3Rpb24oYSl7dmFyIGI9UFNfTSh0aGlzLnYpO2lmKCJ1bmRlZmluZWQiIT10eXBlb2YgZG9jdW1lbnQuYWN0aXZlRWxlbWVudCl7aWYoYT1iLmFjdGl2ZUVsZW1lbnQsIWF8fFBTX3RjKHRoaXMudixhKXx8IkJPRFkiPT1hLnRhZ05hbWUpcmV0dXJufWVsc2UgaWYoYS50YXJnZXQhPWIpcmV0dXJuOzE1MCZndDtQU19mKCktdGhpcy5pYXx8UFNfbmQodGhpcyl9O3ZhciBQU19vZD1mdW5jdGlvbihhLGIpe3JldHVybiBQU19MYShhLm1hfHxbXSxmdW5jdGlvbihhKXtyZXR1cm4gYj09PWF8fFBTX3RjKGEsYil9KX07ClBTXzQucHJvdG90eXBlLm09ZnVuY3Rpb24oKXtQU180LkEubS5jYWxsKHRoaXMpO3RoaXMuYS5MKCk7UFNfbGEodGhpcy5mKTtQU19sYSh0aGlzLmMpO2RlbGV0ZSB0aGlzLnY7ZGVsZXRlIHRoaXMuYTtkZWxldGUgdGhpcy5tYX07dmFyIFBTX3BkPWZ1bmN0aW9uKGEsYil7dGhpcy5nPWJ8fHZvaWQgMDtQU180LmNhbGwodGhpcyxhKX07UFNfZyhQU19wZCxQU180KTtQU19wZC5wcm90b3R5cGUuYj1mdW5jdGlvbigpe2lmKHRoaXMuZyl7dmFyIGE9IXRoaXMuRyZhbXA7JmFtcDsibW92ZV9vZmZzY3JlZW4iIT10aGlzLlIsYj10aGlzLkIoKTthJmFtcDsmYW1wOyhiLnN0eWxlLnZpc2liaWxpdHk9ImhpZGRlbiIsUFNfWShiLCEwKSk7dGhpcy5nLmcoYiw0LHRoaXMuaCk7YSZhbXA7JmFtcDtQU19ZKGIsITEpfX07dmFyIFBTX3FkPWZ1bmN0aW9uKCl7fTtQU19xZC5wcm90b3R5cGUuZz1mdW5jdGlvbigpe307dmFyIFBTX3JkPWZ1bmN0aW9uKGEsYil7dGhpcy5jPWE7dGhpcy5pPSEhYjt0aGlzLmY9ezA6dGhpcy5jKyItYXJyb3dyaWdodCIsMTp0aGlzLmMrIi1hcnJvd3VwIiwyOnRoaXMuYysiLWFycm93ZG93biIsMzp0aGlzLmMrIi1hcnJvd2xlZnQifX07UFNfZyhQU19yZCxQU19xZCk7UFNfcmQucHJvdG90eXBlLnU9MjA7UFNfcmQucHJvdG90eXBlLmg9LTU7ClBTX3JkLnByb3RvdHlwZS5nPWZ1bmN0aW9uKGEsYixjKXtQU19rKHRoaXMuaiwiTXVzdCBjYWxsIHNldEVsZW1lbnRzIGZpcnN0LiIpO2E9MjsyPT1hJmFtcDsmYW1wOyhhPTApO2I9dGhpcy5iLm9mZnNldEhlaWdodC8yO2lmKHRoaXMuYSl7dmFyIGQ9UFNfc2QoMyxhKSxlPXRoaXMuYTt2YXIgZj1QU19YKGUpLmhlaWdodC8yLWIsZz1QU19sZChlLGQpLGg7aWYoaD1QU19OYyhlKSllPVBTX1NjKGUpLGU9bmV3IFBTX1MoZS50b3AsZS5sZWZ0K2Uud2lkdGgsZS50b3ArZS5oZWlnaHQsZS5sZWZ0KSxlLnRvcCZsdDtoLnRvcCZhbXA7JmFtcDshKGcmYW1wOzEpP2YtPWgudG9wLWUudG9wOmUuYm90dG9tJmd0O2guYm90dG9tJmFtcDsmYW1wO2cmYW1wOzEmYW1wOyZhbXA7KGYtPWUuYm90dG9tLWguYm90dG9tKTtnPW5ldyBQU19LKHRoaXMuaCxmKTtmPTA7InJ0bCI9PXRoaXMuYS5kaXImYW1wOyZhbXA7KGY9Myk7aD10aGlzLmE7ZT1QU19zZChmLGEpO2Y9dGhpcy5iO1BTX2soZik7dmFyIG0saz1mLm9mZnNldFBhcmVudDtpZihrKXt2YXIgbD0iSFRNTCI9PWsudGFnTmFtZXx8IkJPRFkiPT0Kay50YWdOYW1lO2wmYW1wOyZhbXA7InN0YXRpYyI9PVBTX1coaywicG9zaXRpb24iKXx8KG09UFNfTWMoayksbHx8KGw9KGw9InJ0bCI9PVBTX1coaywiZGlyZWN0aW9uIikpJmFtcDsmYW1wO1BTX3Q/LWsuc2Nyb2xsTGVmdDohbHx8UFNfcyZhbXA7JmFtcDtQU192KCI4Iil8fCJ2aXNpYmxlIj09UFNfVyhrLCJvdmVyZmxvd1giKT9rLnNjcm9sbExlZnQ6ay5zY3JvbGxXaWR0aC1rLmNsaWVudFdpZHRoLWsuc2Nyb2xsTGVmdCxtPVBTX2ZjKG0sbmV3IFBTX0sobCxrLnNjcm9sbFRvcCkpKSl9bT1tfHxuZXcgUFNfSztrPVBTX1NjKGgpO2lmKGw9UFNfTmMoaCkpe3ZhciBuPW5ldyBQU19UKGwubGVmdCxsLnRvcCxsLnJpZ2h0LWwubGVmdCxsLmJvdHRvbS1sLnRvcCksbD1NYXRoLm1heChrLmxlZnQsbi5sZWZ0KSxwPU1hdGgubWluKGsubGVmdCtrLndpZHRoLG4ubGVmdCtuLndpZHRoKTtpZihsJmx0Oz1wKXt2YXIgcT1NYXRoLm1heChrLnRvcCxuLnRvcCksbj1NYXRoLm1pbihrLnRvcCtrLmhlaWdodCxuLnRvcCtuLmhlaWdodCk7CnEmbHQ7PW4mYW1wOyZhbXA7KGsubGVmdD1sLGsudG9wPXEsay53aWR0aD1wLWwsay5oZWlnaHQ9bi1xKX19bD1QU19OKGgpO3E9UFNfTihmKTtpZihsLmEhPXEuYSl7dmFyIHA9bC5hLmJvZHkscT1QU19uYyhxLmEpLG49bmV3IFBTX0soMCwwKSxyPVBTX3BjKFBTX00ocCkpLHQ9cDtkb3t2YXIgdT1yPT1xP1BTX01jKHQpOlBTX1FjKFBTX2sodCkpO24ueCs9dS54O24ueSs9dS55fXdoaWxlKHImYW1wOyZhbXA7ciE9cSZhbXA7JmFtcDtyIT1yLnBhcmVudCZhbXA7JmFtcDsodD1yLmZyYW1lRWxlbWVudCkmYW1wOyZhbXA7KHI9ci5wYXJlbnQpKTtwPVBTX2ZjKG4sUFNfTWMocCkpOyFQU19zfHxQU193KDkpfHxQU193YyhsKXx8KHA9UFNfZmMocCxQU19vYyhsLmEpKSk7ay5sZWZ0Kz1wLng7ay50b3ArPXAueX1oPVBTX2xkKGgsZSk7ZT1uZXcgUFNfSyhoJmFtcDsyP2subGVmdCtrLndpZHRoOmsubGVmdCxoJmFtcDsxP2sudG9wK2suaGVpZ2h0OmsudG9wKTtlPVBTX2ZjKGUsbSk7ZyZhbXA7JmFtcDsoZS54Kz0oaCZhbXA7Mj8tMToxKSpnLngsZS55Kz0oaCZhbXA7MT8tMToxKSpnLnkpO2g9ZS5jbG9uZSgpOwpnPVBTX2xkKGYsZCk7ZD1QU19YKGYpO2U9ZC5jbG9uZSgpO2g9aC5jbG9uZSgpO2U9ZS5jbG9uZSgpO2lmKGN8fDAhPWcpZyZhbXA7Mj9oLngtPWUud2lkdGgrKGM/Yy5yaWdodDowKTpjJmFtcDsmYW1wOyhoLngrPWMubGVmdCksZyZhbXA7MT9oLnktPWUuaGVpZ2h0KyhjP2MuYm90dG9tOjApOmMmYW1wOyZhbXA7KGgueSs9Yy50b3ApO2M9bmV3IFBTX1QoMCwwLDAsMCk7Yy5sZWZ0PWgueDtjLnRvcD1oLnk7Yy53aWR0aD1lLndpZHRoO2MuaGVpZ2h0PWUuaGVpZ2h0O1BTX0pjKGYsbmV3IFBTX0soYy5sZWZ0LGMudG9wKSk7ZT1uZXcgUFNfTChjLndpZHRoLGMuaGVpZ2h0KTtkPT1lfHxkJmFtcDsmYW1wO2UmYW1wOyZhbXA7ZC53aWR0aD09ZS53aWR0aCZhbXA7JmFtcDtkLmhlaWdodD09ZS5oZWlnaHR8fChjPWUsZD1QU19NKGYpLGc9UFNfd2MoUFNfTihkKSksIVBTX3N8fFBTX3YoIjEwIil8fGcmYW1wOyZhbXA7UFNfdigiOCIpPyhmPWYuc3R5bGUsUFNfdD9mLk1vekJveFNpemluZz0iYm9yZGVyLWJveCI6UFNfdT9mLldlYmtpdEJveFNpemluZz0iYm9yZGVyLWJveCI6Zi5ib3hTaXppbmc9CiJib3JkZXItYm94IixmLndpZHRoPU1hdGgubWF4KGMud2lkdGgsMCkrInB4IixmLmhlaWdodD1NYXRoLm1heChjLmhlaWdodCwwKSsicHgiKTooZD1mLnN0eWxlLGc/KGc9UFNfV2MoZiwicGFkZGluZyIpLFBTX3MmYW1wOyZhbXA7IVBTX3coOSk/KGg9UFNfWWMoZiwiYm9yZGVyTGVmdCIpLGU9UFNfWWMoZiwiYm9yZGVyUmlnaHQiKSxtPVBTX1ljKGYsImJvcmRlclRvcCIpLGY9UFNfWWMoZiwiYm9yZGVyQm90dG9tIiksZj1uZXcgUFNfUyhtLGUsZixoKSk6KGg9UFNfVihmLCJib3JkZXJMZWZ0V2lkdGgiKSxlPVBTX1YoZiwiYm9yZGVyUmlnaHRXaWR0aCIpLG09UFNfVihmLCJib3JkZXJUb3BXaWR0aCIpLGY9UFNfVihmLCJib3JkZXJCb3R0b21XaWR0aCIpLGY9bmV3IFBTX1MocGFyc2VGbG9hdChtKSxwYXJzZUZsb2F0KGUpLHBhcnNlRmxvYXQoZikscGFyc2VGbG9hdChoKSkpLGQucGl4ZWxXaWR0aD1jLndpZHRoLWYubGVmdC1nLmxlZnQtZy5yaWdodC1mLnJpZ2h0LGQucGl4ZWxIZWlnaHQ9CmMuaGVpZ2h0LWYudG9wLWcudG9wLWcuYm90dG9tLWYuYm90dG9tKTooZC5waXhlbFdpZHRoPWMud2lkdGgsZC5waXhlbEhlaWdodD1jLmhlaWdodCkpKTt0aGlzLmkmYW1wOyZhbXA7KGM9cGFyc2VGbG9hdCh0aGlzLmIuc3R5bGUubGVmdCksZj1wYXJzZUZsb2F0KHRoaXMuYi5zdHlsZS50b3ApLFBTX2soIWlzTmFOKGMpJmFtcDsmYW1wOyFpc05hTihmKSwiQ291bGQgbm90IHBhcnNlIHBvc2l0aW9uLiIpLGlzRmluaXRlKGMpJmFtcDsmYW1wOzA9PWMlMSZhbXA7JmFtcDtpc0Zpbml0ZShmKSZhbXA7JmFtcDswPT1mJTF8fFBTX0pjKHRoaXMuYixNYXRoLnJvdW5kKGMpLE1hdGgucm91bmQoZikpKX1QU190ZCh0aGlzLGEsYil9Owp2YXIgUFNfdGQ9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWEuajtQU19OYShhLmYsZnVuY3Rpb24oYSl7UFNfQyhkLGEsITEpfSxhKTtQU19CKGQsYS5mWzNdKTtkLnN0eWxlLnRvcD1kLnN0eWxlLmxlZnQ9ZC5zdHlsZS5yaWdodD1kLnN0eWxlLmJvdHRvbT0iIjthLmE/KGI9UFNfUGMoYS5hLGEuYiksYz1QU191ZChhLmEpLGE9UFNfdmQoYi55K2MueSxhLmIub2Zmc2V0SGVpZ2h0LTE1KSxkLnN0eWxlLnRvcD1hKyJweCIpOmQuc3R5bGVbMD09Yj8idG9wIjoiYm90dG9tIl09YysicHgifSxQU192ZD1mdW5jdGlvbihhLGIpe3JldHVybiAxNSZndDtiPzE1Ok1hdGgubWluKE1hdGgubWF4KGEsMTUpLGIpfSxQU19zZD1mdW5jdGlvbihhLGIpe3N3aXRjaChhKXtjYXNlIDI6cmV0dXJuIDA9PWI/MTozO2Nhc2UgMTpyZXR1cm4gMD09Yj8wOjI7Y2FzZSAwOnJldHVybiAwPT1iPzY6NztkZWZhdWx0OnJldHVybiAwPT1iPzQ6NX19LFBTX3VkPWZ1bmN0aW9uKGEpe3ZhciBiPTAsYz0wO2E9UFNfWChhKTsKYj1hLndpZHRoO2M9YS5oZWlnaHQvMjtyZXR1cm4gbmV3IFBTX0soYixjKX07UFNfcyZhbXA7JmFtcDtQU192KDgpO3ZhciBQU181PWZ1bmN0aW9uKCl7UFNfZWQuY2FsbCh0aGlzKX07UFNfZyhQU181LFBTX2VkKTtQU181LnByb3RvdHlwZS5TPVBTX2NkO3ZhciBQU193ZD1mdW5jdGlvbihhKXtmdW5jdGlvbiBiKGEpe3RoaXMuVz1hfWIucHJvdG90eXBlPWEucHJvdG90eXBlO3JldHVybiBmdW5jdGlvbihhLGQpe3ZhciBlPW5ldyBiKFN0cmluZyhhKSk7dm9pZCAwIT09ZCZhbXA7JmFtcDsoZS5hPWQpO3JldHVybiBlfX0oUFNfNSk7KGZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGIoYSl7dGhpcy5XPWF9Yi5wcm90b3R5cGU9YS5wcm90b3R5cGU7cmV0dXJuIGZ1bmN0aW9uKGEsZCl7dmFyIGU9U3RyaW5nKGEpO2lmKCFlKXJldHVybiIiO2U9bmV3IGIoZSk7dm9pZCAwIT09ZCZhbXA7JmFtcDsoZS5hPWQpO3JldHVybiBlfX0pKFBTXzUpOwp2YXIgUFNfQmQ9ZnVuY3Rpb24oYSl7cmV0dXJuIG51bGwhPWEmYW1wOyZhbXA7YS5TPT09UFNfY2Q/KFBTX2soYS5jb25zdHJ1Y3Rvcj09PVBTXzUpLGE9U3RyaW5nKGEuVykucmVwbGFjZShQU194ZCwiIikucmVwbGFjZShQU195ZCwiJmFtcDtsdDsiKSxTdHJpbmcoYSkucmVwbGFjZShQU196ZCxQU19BZCkpOlBTX2ooU3RyaW5nKGEpKX0sUFNfQ2Q9eyJceDAwIjoiJmFtcDsjMDsiLCJcdCI6IiZhbXA7Izk7IiwiXG4iOiImYW1wOyMxMDsiLCJceDBCIjoiJmFtcDsjMTE7IiwiXGYiOiImYW1wOyMxMjsiLCJcciI6IiZhbXA7IzEzOyIsIiAiOiImYW1wOyMzMjsiLCciJzoiJmFtcDtxdW90OyIsIiZhbXA7IjoiJmFtcDthbXA7IiwiJyI6IiZhbXA7IzM5OyIsIi0iOiImYW1wOyM0NTsiLCIvIjoiJmFtcDsjNDc7IiwiJmx0OyI6IiZhbXA7bHQ7IiwiPSI6IiZhbXA7IzYxOyIsIiZndDsiOiImYW1wO2d0OyIsImAiOiImYW1wOyM5NjsiLCJcdTAwODUiOiImYW1wOyMxMzM7IiwiXHUwMGEwIjoiJmFtcDsjMTYwOyIsIlx1MjAyOCI6IiZhbXA7IzgyMzI7IiwiXHUyMDI5IjoiJmFtcDsjODIzMzsifSxQU19BZD1mdW5jdGlvbihhKXtyZXR1cm4gUFNfQ2RbYV19LFBTX3pkPQovW1x4MDBceDIyXHgyN1x4M2NceDNlXS9nLFBTX3hkPS8mbHQ7KD86IXxcLz8oW2EtekEtWl1bYS16QS1aMC05OlwtXSopKSg/OlteJmd0OyciXXwiW14iXSoifCdbXiddKicpKiZndDsvZyxQU195ZD0vJmx0Oy9nO3ZhciBQU19EZD1mdW5jdGlvbihhKXt2YXIgYj0nJmx0O2RpdiBjbGFzcz0iamZrLWJ1YmJsZSIgcm9sZT0iYWxlcnRkaWFsb2ciJysoYS51aWQ/JyBhcmlhLWRlc2NyaWJlZGJ5PSInK1BTX0JkKGEudWlkKSsnIic6IiIpKycmZ3Q7Jmx0O2RpdiBjbGFzcz0iamZrLWJ1YmJsZS1jb250ZW50LWlkIicrKGEudWlkPycgaWQ9IicrUFNfQmQoYS51aWQpKyciJzoiIikrIiZndDsmbHQ7L2RpdiZndDsiO2EuUGEmYW1wOyZhbXA7KGE9YixiPSJDbG9zZSIucmVwbGFjZShQU196ZCxQU19BZCksYj1hKygnJmx0O2RpdiBjbGFzcz0iamZrLWJ1YmJsZS1jbG9zZWJ0bi1pZCBqZmstYnViYmxlLWNsb3NlYnRuIiBhcmlhLWxhYmVsPSInK2IrJyIgcm9sZT0iYnV0dG9uIiB0YWJpbmRleD0wJmd0OyZsdDsvZGl2Jmd0OycpKTtyZXR1cm4gUFNfd2QoYisnJmx0O2RpdiBjbGFzcz0iamZrLWJ1YmJsZS1hcnJvdy1pZCBqZmstYnViYmxlLWFycm93IiZndDsmbHQ7ZGl2IGNsYXNzPSJqZmstYnViYmxlLWFycm93aW1wbGJlZm9yZSImZ3Q7Jmx0Oy9kaXYmZ3Q7Jmx0O2RpdiBjbGFzcz0iamZrLWJ1YmJsZS1hcnJvd2ltcGxhZnRlciImZ3Q7Jmx0Oy9kaXYmZ3Q7Jmx0Oy9kaXYmZ3Q7Jmx0Oy9kaXYmZ3Q7Jyl9OwpQU19EZC5hPSJqZmsudGVtcGxhdGVzLmJ1YmJsZS5tYWluIjt2YXIgUFNfNj1mdW5jdGlvbihhKXtQU18zLmNhbGwodGhpcyxhKTt0aGlzLmg9bmV3IFBTX3JkKCJqZmstYnViYmxlIiwhMCk7dGhpcy5iPW5ldyBQU19wZDt0aGlzLko9W119O1BTX2coUFNfNixQU18zKTtQU182LnByb3RvdHlwZS5zPSEwOwp2YXIgUFNfRWQ9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLnBhKCk7aWYoYiZhbXA7JmFtcDtjKWlmKFBTX2MoYikpe3ZhciBkO2Q9UFNfSihiLG51bGwpO2MuaW5uZXJIVE1MPVBTX0koZCl9ZWxzZSBpZihiIGluc3RhbmNlb2YgUFNfNSl7aWYoYi5TPT09UFNfZGQpZD1QU184YihiLnRvU3RyaW5nKCkpO2Vsc2V7aWYoYi5TIT09UFNfY2QpdGhyb3cgRXJyb3IoIlNhbml0aXplZCBjb250ZW50IHdhcyBub3Qgb2Yga2luZCBURVhUIG9yIEhUTUwuIik7dmFyIGU9UFNfVWIoIlNveSBTYW5pdGl6ZWRDb250ZW50IG9mIGtpbmQgSFRNTCBwcm9kdWNlcyBTYWZlSHRtbC1jb250cmFjdC1jb21wbGlhbnQgdmFsdWUuIik7ZD1iLnRvU3RyaW5nKCk7dmFyIGY9Yi5hO1BTX0RhKFBTX1RiKGUpLCJtdXN0IHByb3ZpZGUganVzdGlmaWNhdGlvbiIpO2U9UFNfVGIoZSk7UFNfayghL15bXHNceGEwXSokLy50ZXN0KGUpLCJtdXN0IHByb3ZpZGUgbm9uLWVtcHR5IGp1c3RpZmljYXRpb24iKTtkPVBTX0ooZCxmfHxudWxsKX1jLmlubmVySFRNTD0KUFNfSShkKX1lbHNlIGIgaW5zdGFuY2VvZiBQU19IP2MuaW5uZXJIVE1MPVBTX0koYik6KGMuaW5uZXJIVE1MPVBTX0koUFNfZWMpLGMuYXBwZW5kQ2hpbGQoYikpfTtQU189UFNfNi5wcm90b3R5cGU7UFNfLnBhPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuYT9QU19QKCJqZmstYnViYmxlLWNvbnRlbnQtaWQiLHRoaXMuYXx8dGhpcy5mLmEpOm51bGx9OwpQU18ucmE9ZnVuY3Rpb24oKXt2YXIgYTthOnt2YXIgYj17UGE6dGhpcy5zLHVpZDoiYnViYmxlLSIrKHRoaXNbUFNfZmFdfHwodGhpc1tQU19mYV09KytQU19nYSkpfTthPXRoaXMuZjtQU19rKFBTX0RkLCJTb3kgdGVtcGxhdGUgbWF5IG5vdCBiZSBudWxsLiIpO2E9KGF8fFBTX04oKSkuYS5jcmVhdGVFbGVtZW50KCJESVYiKTt2YXIgYj1QU19mZChQU19EZChifHxQU19oZCkpLGM9Yi5tYXRjaChQU19nZCk7UFNfayghYywiVGhpcyB0ZW1wbGF0ZSBzdGFydHMgd2l0aCBhICVzLCB3aGljaCBjYW5ub3QgYmUgYSBjaGlsZCBvZiBhICZsdDtkaXYmZ3Q7LCBhcyByZXF1aXJlZCBieSBzb3kgaW50ZXJuYWxzLiBDb25zaWRlciB1c2luZyBnb29nLnNveS5yZW5kZXJFbGVtZW50IGluc3RlYWQuXG5UZW1wbGF0ZSBvdXRwdXQ6ICVzIixjJmFtcDsmYW1wO2NbMF0sYik7YS5pbm5lckhUTUw9YjtpZigxPT1hLmNoaWxkTm9kZXMubGVuZ3RoJmFtcDsmYW1wOyhiPWEuZmlyc3RDaGlsZCwxPT1iLm5vZGVUeXBlKSl7YT1iO2JyZWFrIGF9fXRoaXMuYT0KYTtQU19FZCh0aGlzLHRoaXMuSCk7UFNfWSh0aGlzLkIoKSwhMSk7YT10aGlzLmI7Yj10aGlzLkIoKTtQU19tZChhKTthLnY9YjtQU19aYXx8KGE9dGhpcy5iLGI9UFNfYmQodGhpcy5CKCksImVhc2Utb3V0IiwwLDEpLGM9UFNfYmQodGhpcy5CKCksImVhc2UtaW4iLDEsMCksYS5mPWIsYS5jPWMpO1BTX0hiKHRoaXMuQigpLHRoaXMuSil9OwpQU18uZGE9ZnVuY3Rpb24oKXtQU182LkEuZGEuY2FsbCh0aGlzKTtQU19SKFBTX2lkKHRoaXMpLHRoaXMuYixbImJlZm9yZXNob3ciLCJzaG93IiwiYmVmb3JlaGlkZSIsImhpZGUiXSx0aGlzLkthKTtpZih0aGlzLnMpe3ZhciBhPVBTX2lkKHRoaXMpLGI9dGhpcy5hP1BTX1AoImpmay1idWJibGUtY2xvc2VidG4taWQiLHRoaXMuYXx8dGhpcy5mLmEpOm51bGw7UFNfQ2MoYixQU19qYSh0aGlzLmZhLCExKSx2b2lkIDAsYS5ifHxhLGEpfWE9dGhpcy5CKCk7UFNfayhhLCJnZXRFbGVtZW50KCkgcmV0dXJucyBudWxsLiIpO2I9dGhpcy5hP1BTX1AoImpmay1idWJibGUtYXJyb3ctaWQiLHRoaXMuYXx8dGhpcy5mLmEpOm51bGw7UFNfayhiLCJObyBhcnJvdyBlbGVtZW50IGlzIGZvdW5kISIpO3ZhciBjPXRoaXMuaDtjLmI9YTtjLmo9YjthPXRoaXMuYjthLmc9dGhpcy5ofHx2b2lkIDA7YS5HJmFtcDsmYW1wO2EuYigpfTsKUFNfLmZhPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMuYjtpZihiLmYpe3ZhciBjPWIuZjsxPT1jLmEmYW1wOyZhbXA7Yy5jKCEwKX1iLmMmYW1wOyZhbXA7KGM9Yi5jLDE9PWMuYSZhbXA7JmFtcDtjLmMoITApKTtpZihhKXtpZighYi5HJmFtcDsmYW1wO2IuZGlzcGF0Y2hFdmVudCgiYmVmb3Jlc2hvdyIpKXtpZighYi52KXRocm93IEVycm9yKCJDYWxsZXIgbXVzdCBjYWxsIHNldEVsZW1lbnQgYmVmb3JlIHRyeWluZyB0byBzaG93IHRoZSBwb3B1cCIpO2IuYigpO2E9UFNfTShiLnYpO1BTX1IoYi5hLGEsIm1vdXNlZG93biIsYi52YSwhMCk7aWYoUFNfcyl7dmFyIGQ7dHJ5e2Q9YS5hY3RpdmVFbGVtZW50fWNhdGNoKGUpe31mb3IoO2QmYW1wOyZhbXA7IklGUkFNRSI9PWQubm9kZU5hbWU7KXt0cnl7dmFyIGY9UFNfdWMoZCl9Y2F0Y2goZyl7YnJlYWt9YT1mO2Q9YS5hY3RpdmVFbGVtZW50fVBTX1IoYi5hLGEsIm1vdXNlZG93biIsYi52YSwhMCk7UFNfUihiLmEsYSwiZGVhY3RpdmF0ZSIsYi51YSl9ZWxzZSBQU19SKGIuYSxhLCJibHVyIixiLnVhKTsidG9nZ2xlX2Rpc3BsYXkiPT0KYi5SPyhiLnYuc3R5bGUudmlzaWJpbGl0eT0idmlzaWJsZSIsUFNfWShiLnYsITApKToibW92ZV9vZmZzY3JlZW4iPT1iLlImYW1wOyZhbXA7Yi5iKCk7Yi5HPSEwO2IuaWE9UFNfZigpO2IuZj8oUFNfdWIoYi5mLCJlbmQiLGIuc2EsITEsYiksUFNfYWQoYi5mKSk6Yi5zYSgpfX1lbHNlIFBTX25kKGIpfTtQU18ubT1mdW5jdGlvbigpe3RoaXMuYi5MKCk7ZGVsZXRlIHRoaXMuYjtQU182LkEubS5jYWxsKHRoaXMpfTtQU18udGE9ZnVuY3Rpb24oKXtQU19PYyh0aGlzLkIoKSk7cmV0dXJuITF9O1BTXy5LYT1mdW5jdGlvbihhKXtpZigic2hvdyI9PWEudHlwZXx8ImhpZGUiPT1hLnR5cGUpe3ZhciBiPVBTX2lkKHRoaXMpLGM9dGhpcy5mLGM9UFNfcz9QU19uYyhjLmEpOmMuYTsic2hvdyI9PWEudHlwZT9QU19SKGIsYywic2Nyb2xsIix0aGlzLnRhKTpQU196YyhiLGMsInNjcm9sbCIsdGhpcy50YSl9cmV0dXJuIHRoaXMuZGlzcGF0Y2hFdmVudChhLnR5cGUpfTt2YXIgUFNfRmQ9ZnVuY3Rpb24oKXtyZXR1cm4hKFBTX3AoImlQYWQiKXx8UFNfcCgiQW5kcm9pZCIpJmFtcDsmYW1wOyFQU19wKCJNb2JpbGUiKXx8UFNfcCgiU2lsayIpKSZhbXA7JmFtcDsoUFNfcCgiaVBvZCIpfHxQU19wKCJpUGhvbmUiKXx8UFNfcCgiQW5kcm9pZCIpfHxQU19wKCJJRU1vYmlsZSIpKX07dmFyIFBTX0dkPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPVthXSxkPWIubGVuZ3RoLTE7MCZsdDs9ZDstLWQpYy5wdXNoKHR5cGVvZiBiW2RdLGJbZF0pO3JldHVybiBjLmpvaW4oIlx4MEIiKX07dmFyIFBTX0hkPWZ1bmN0aW9uKCl7UFNfeC5jYWxsKHRoaXMsIm5hdmlnYXRlIil9O1BTX2coUFNfSGQsUFNfeCk7dmFyIFBTXzk9ZnVuY3Rpb24oYSxiLGMsZCl7UFNfWi5jYWxsKHRoaXMpO2lmKGEmYW1wOyZhbXA7IWIpdGhyb3cgRXJyb3IoIkNhbid0IHVzZSBpbnZpc2libGUgaGlzdG9yeSB3aXRob3V0IHByb3ZpZGluZyBhIGJsYW5rIHBhZ2UuIik7dmFyIGU7aWYoYyllPWM7ZWxzZXtlPSJoaXN0b3J5X3N0YXRlIitQU19JZDt2YXIgZj1QU19jYygiaW5wdXQiLHt0eXBlOiJ0ZXh0IixuYW1lOmUsaWQ6ZSxzdHlsZTpQU19VYigiZGlzcGxheTpub25lIil9KTtkb2N1bWVudC53cml0ZShQU19JKGYpKTtlPVBTX08oZSl9dGhpcy5sPWU7dGhpcy5hPWM/UFNfcGMoUFNfTShjKSk6d2luZG93O3ZhciBnO1BTX2MoYik/Zz1QU182YihiKTpnPWI7dGhpcy5zPWc7UFNfcyZhbXA7JmFtcDshYiZhbXA7JmFtcDsoYj0iaHR0cHMiPT13aW5kb3cubG9jYXRpb24ucHJvdG9jb2w/UFNfVWIoImh0dHBzOi8vLyIpOlBTX1ViKCdqYXZhc2NyaXB0OiIiJyksdGhpcy5zPWI9UFNfNmIoUFNfVGIoYikpKTt0aGlzLmI9bmV3IFBTX18oMTUwKTtiPVBTX2phKFBTX2xhLAp0aGlzLmIpO3RoaXMudT9iLmNhbGwodm9pZCAwKToodGhpcy5qfHwodGhpcy5qPVtdKSx0aGlzLmoucHVzaChiKSk7dGhpcy5jPSFhO3RoaXMubz1uZXcgUFNfUSh0aGlzKTtpZihhfHxQU183KXt2YXIgaDtpZihkKWg9ZDtlbHNle2E9Imhpc3RvcnlfaWZyYW1lIitQU19JZDtkPXtpZDphLHN0eWxlOlBTX1ViKCJkaXNwbGF5Om5vbmUiKSxzYW5kYm94OnZvaWQgMH07Yj17fTtiLnNyYz10aGlzLnN8fG51bGw7Yi5zcmNkb2M9bnVsbDtjPXtzYW5kYm94OiIifTtnPXt9O2ZvcihoIGluIGIpUFNfayhoLnRvTG93ZXJDYXNlKCk9PWgsIk11c3QgYmUgbG93ZXIgY2FzZSIpLGdbaF09YltoXTtmb3IoaCBpbiBjKVBTX2soaC50b0xvd2VyQ2FzZSgpPT1oLCJNdXN0IGJlIGxvd2VyIGNhc2UiKSxnW2hdPWNbaF07Zm9yKGggaW4gZCl7ZT1oLnRvTG93ZXJDYXNlKCk7aWYoZSBpbiBiKXRocm93IEVycm9yKCdDYW5ub3Qgb3ZlcnJpZGUgIicrZSsnIiBhdHRyaWJ1dGUsIGdvdCAiJytoKyciIHdpdGggdmFsdWUgIicrCmRbaF0rJyInKTtlIGluIGMmYW1wOyZhbXA7ZGVsZXRlIGdbZV07Z1toXT1kW2hdfWg9UFNfYmMoImlmcmFtZSIsZyx2b2lkIDApO2RvY3VtZW50LndyaXRlKFBTX0koaCkpO2g9UFNfTyhhKX10aGlzLnc9aDt0aGlzLk89ITB9UFNfNyZhbXA7JmFtcDsoUFNfUih0aGlzLm8sdGhpcy5hLCJsb2FkIix0aGlzLlopLHRoaXMuST10aGlzLkg9ITEpO3RoaXMuYz9QU19KZCh0aGlzLFBTXzgodGhpcyksITApOlBTX0tkKHRoaXMsdGhpcy5sLnZhbHVlKTtQU19JZCsrfTtQU19nKFBTXzksUFNfWik7UFNfOS5wcm90b3R5cGUuaT0hMTtQU185LnByb3RvdHlwZS5oPSExO1BTXzkucHJvdG90eXBlLmY9bnVsbDsKdmFyIFBTX0xkPWZ1bmN0aW9uKGEsYil7dmFyIGM9Ynx8UFNfR2Q7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIGI9dGhpc3x8UFNfYSxiPWIuY2xvc3VyZV9tZW1vaXplX2NhY2hlX3x8KGIuY2xvc3VyZV9tZW1vaXplX2NhY2hlXz17fSksZT1jKGFbUFNfZmFdfHwoYVtQU19mYV09KytQU19nYSksYXJndW1lbnRzKTtyZXR1cm4gYi5oYXNPd25Qcm9wZXJ0eShlKT9iW2VdOmJbZV09YS5hcHBseSh0aGlzLGFyZ3VtZW50cyl9fShmdW5jdGlvbigpe3JldHVybiBQU19zP1BTX3coOCk6Im9uaGFzaGNoYW5nZSJpbiBQU19hfSksUFNfNz1QU19zJmFtcDsmYW1wOyFQU193KDgpO1BTXzkucHJvdG90eXBlLmc9bnVsbDtQU185LnByb3RvdHlwZS5tPWZ1bmN0aW9uKCl7UFNfOS5BLm0uY2FsbCh0aGlzKTt0aGlzLm8uTCgpO1BTX01kKHRoaXMsITEpfTsKdmFyIFBTX01kPWZ1bmN0aW9uKGEsYil7aWYoYiE9YS5pKWlmKFBTXzcmYW1wOyZhbXA7IWEuSClhLkk9YjtlbHNlIGlmKGIpaWYoUFNfcj9QU19SKGEubyxhLmEuZG9jdW1lbnQsUFNfTmQsYS5hYSk6UFNfdCZhbXA7JmFtcDtQU19SKGEubyxhLmEsInBhZ2VzaG93IixhLlkpLFBTX0xkKCkmYW1wOyZhbXA7YS5jKVBTX1IoYS5vLGEuYSwiaGFzaGNoYW5nZSIsYS4kKSxhLmk9ITAsYS5kaXNwYXRjaEV2ZW50KG5ldyBQU19IZChQU184KGEpKSk7ZWxzZXtpZighUFNfc3x8UFNfRmQoKXx8YS5IKVBTX1IoYS5vLGEuYiwidGljayIsUFNfZShhLkosYSwhMCkpLGEuaT0hMCxQU183fHwoYS5mPVBTXzgoYSksYS5kaXNwYXRjaEV2ZW50KG5ldyBQU19IZChQU184KGEpKSkpLFBTXzZjKGEuYil9ZWxzZSBhLmk9ITEsUFNfQWMoYS5vKSxQU181YyhhLmIpfTtQU185LnByb3RvdHlwZS5aPWZ1bmN0aW9uKCl7dGhpcy5IPSEwO3RoaXMubC52YWx1ZSZhbXA7JmFtcDtQU19LZCh0aGlzLHRoaXMubC52YWx1ZSwhMCk7UFNfTWQodGhpcyx0aGlzLkkpfTsKUFNfOS5wcm90b3R5cGUuWT1mdW5jdGlvbihhKXthLlUoKS5wZXJzaXN0ZWQmYW1wOyZhbXA7KFBTX01kKHRoaXMsITEpLFBTX01kKHRoaXMsITApKX07UFNfOS5wcm90b3R5cGUuJD1mdW5jdGlvbigpe3ZhciBhPVBTX09kKHRoaXMuYSk7YSE9dGhpcy5mJmFtcDsmYW1wO1BTX1BkKHRoaXMsYSl9Owp2YXIgUFNfOD1mdW5jdGlvbihhKXtyZXR1cm4gbnVsbCE9YS5nP2EuZzphLmM/UFNfT2QoYS5hKTpQU19RZChhKXx8IiJ9LFBTX09kPWZ1bmN0aW9uKGEpe2E9YS5sb2NhdGlvbi5ocmVmO3ZhciBiPWEuaW5kZXhPZigiIyIpO3JldHVybiAwJmd0O2I/IiI6YS5zdWJzdHJpbmcoYisxKX0sUFNfUmQ9ZnVuY3Rpb24oYSxiKXtQU184KGEpIT1iJmFtcDsmYW1wOyhhLmM/KFBTX0pkKGEsYiwhMSksUFNfTGQoKXx8UFNfcyZhbXA7JmFtcDshUFNfRmQoKSZhbXA7JmFtcDtQU19LZChhLGIsITEsdm9pZCAwKSxhLmkmYW1wOyZhbXA7YS5KKCkpOihQU19LZChhLGIsITEpLGEuZz1hLmY9YS5sLnZhbHVlPWIsYS5kaXNwYXRjaEV2ZW50KG5ldyBQU19IZCkpKX0sUFNfSmQ9ZnVuY3Rpb24oYSxiLGMpe2E9YS5hLmxvY2F0aW9uO3ZhciBkPWEuaHJlZi5zcGxpdCgiIyIpWzBdLGU9LTEhPWEuaHJlZi5pbmRleE9mKCIjIik7aWYoUFNfN3x8ZXx8YilkKz0iIyIrYjtkIT1hLmhyZWYmYW1wOyZhbXA7KGM/YS5yZXBsYWNlKGQpOmEuaHJlZj1kKX0sUFNfS2Q9ZnVuY3Rpb24oYSwKYixjLGQpe2lmKGEuT3x8YiE9UFNfUWQoYSkpaWYoYS5PPSExLGI9ZW5jb2RlVVJJQ29tcG9uZW50KFN0cmluZyhiKSksUFNfcyl7dmFyIGU9UFNfdWMoYS53KTtlLm9wZW4oInRleHQvaHRtbCIsYz8icmVwbGFjZSI6dm9pZCAwKTtjPVBTX2RjKFBTX2NjKCJ0aXRsZSIse30sZHx8YS5hLmRvY3VtZW50LnRpdGxlKSxQU19jYygiYm9keSIse30sYikpO2Uud3JpdGUoUFNfSShjKSk7ZS5jbG9zZSgpfWVsc2UgaWYoUFNfR2EoYS5zLFBTX0csInRoaXMuaWZyYW1lU3JjXyBtdXN0IGJlIHNldCBvbiBjYWxscyB0byBzZXRJZnJhbWVUb2tlbl8iKSxlPVBTXzViKGEucykrIiMiK2IsYT1hLncuY29udGVudFdpbmRvdyljP2EubG9jYXRpb24ucmVwbGFjZShlKTphLmxvY2F0aW9uLmhyZWY9ZX0sUFNfUWQ9ZnVuY3Rpb24oYSl7aWYoUFNfcylyZXR1cm4gYT1QU191YyhhLncpLGEuYm9keT9kZWNvZGVVUklDb21wb25lbnQoYS5ib2R5LmlubmVySFRNTC5yZXBsYWNlKC9cKy9nLCIgIikpOm51bGw7CnZhciBiPWEudy5jb250ZW50V2luZG93O2lmKGIpe3ZhciBjO3RyeXtjPWRlY29kZVVSSUNvbXBvbmVudChQU19PZChiKS5yZXBsYWNlKC9cKy9nLCIgIikpfWNhdGNoKGQpe3JldHVybiBhLmh8fCgxIT1hLmgmYW1wOyZhbXA7UFNfN2MoYS5iLDFFNCksYS5oPSEwKSxudWxsfWEuaCZhbXA7JmFtcDsoMCE9YS5oJmFtcDsmYW1wO1BTXzdjKGEuYiwxNTApLGEuaD0hMSk7cmV0dXJuIGN8fG51bGx9cmV0dXJuIG51bGx9O1BTXzkucHJvdG90eXBlLko9ZnVuY3Rpb24oKXtpZih0aGlzLmMpe3ZhciBhPVBTX09kKHRoaXMuYSk7YSE9dGhpcy5mJmFtcDsmYW1wO1BTX1BkKHRoaXMsYSl9aWYoIXRoaXMuY3x8UFNfNylpZihhPVBTX1FkKHRoaXMpfHwiIixudWxsPT10aGlzLmd8fGE9PXRoaXMuZyl0aGlzLmc9bnVsbCxhIT10aGlzLmYmYW1wOyZhbXA7UFNfUGQodGhpcyxhKX07dmFyIFBTX1BkPWZ1bmN0aW9uKGEsYil7YS5mPWEubC52YWx1ZT1iO2EuYz8oUFNfNyZhbXA7JmFtcDtQU19LZChhLGIpLFBTX0pkKGEsYikpOlBTX0tkKGEsYik7YS5kaXNwYXRjaEV2ZW50KG5ldyBQU19IZChQU184KGEpKSl9OwpQU185LnByb3RvdHlwZS5hYT1mdW5jdGlvbigpe1BTXzVjKHRoaXMuYik7UFNfNmModGhpcy5iKX07dmFyIFBTX05kPVsibW91c2Vkb3duIiwia2V5ZG93biIsIm1vdXNlbW92ZSJdLFBTX0lkPTA7dmFyIFBTX1NkPWZ1bmN0aW9uKGEsYil7UFNfUGEoYSl8fChhPSJpZGVudGlmaWVyIik7dGhpcy5hPWE7dGhpcy5jPW51bGw7dGhpcy5iPW5ldyBQU185O3RoaXMubz1uZXcgUFNfUSh0aGlzKTtQU19QYShhKSZhbXA7JmFtcDtQU19SZCh0aGlzLmIsYSk7dGhpcy5qPWJ8fFBTX2JhO1BTX1IodGhpcy5vLHRoaXMuYiwibmF2aWdhdGUiLHRoaXMuZik7UFNfTWQodGhpcy5iLCEwKX0sUFNfT2E9e1FhOiJpZGVudGlmaWVyIixSYToicGFzc3dvcmQifTtQU19TZC5wcm90b3R5cGUuZj1mdW5jdGlvbihhKXt2YXIgYj1QU184KHRoaXMuYik7UFNfUGEoYikmYW1wOyZhbXA7YiE9dGhpcy5hPyh0aGlzLmM9dGhpcy5hLHRoaXMuYT1iLHRoaXMuaihhKSk6UFNfUmQodGhpcy5iLHRoaXMuYSl9O3ZhciBQU19UZD1mdW5jdGlvbihhKXt0aGlzLmk9YTt0aGlzLmo9UFNfTygiRW1haWwiKTt0aGlzLmw9UFNfTygiUGFzc3dkIik7dGhpcy5hPVBTX08oIkVtYWlsLWhpZGRlbiIpO3RoaXMuZz10aGlzLmEudmFsdWU7dGhpcy5iPVBTX08oIlBhc3N3ZC1oaWRkZW4iKTt0aGlzLmM9UFNfTygiaWRlbnRpZmllci1zaG93biIpO3RoaXMucz1QU19zYyh0aGlzLmMpWzBdO3RoaXMuZj1QU19PKCJwYXNzd29yZC1zaG93biIpO3RoaXMudz1QU19zYyh0aGlzLmYpWzBdO3RoaXMuaD0iIjt0aGlzLm89bmV3IFBTX1EodGhpcyk7UFNfcWMoImlkZW50aWZpZXIiPT10aGlzLmkuYT90aGlzLmY6dGhpcy5jKTtQU19sYyh0aGlzLmEse25hbWU6IkVtYWlsIn0pO1BTX1IodGhpcy5vLHRoaXMuaiwiaW5wdXQiLHRoaXMudSk7UFNfUih0aGlzLm8sdGhpcy5hLCJjaGFuZ2UiLHRoaXMuRCl9OwpQU19UZC5wcm90b3R5cGUudT1mdW5jdGlvbigpeyIiIT10aGlzLmIudmFsdWUmYW1wOyZhbXA7KFBTX3pjKHRoaXMubyx0aGlzLmosImlucHV0Iix0aGlzLnUpLHRoaXMuaD10aGlzLmIudmFsdWUpfTtQU19UZC5wcm90b3R5cGUuRD1mdW5jdGlvbigpe3RoaXMuYS52YWx1ZT10aGlzLmd9O3ZhciBQU18kPWZ1bmN0aW9uKGEsYil7dGhpcy5jPW5ldyBQU19TZCgxPT1hPyJwYXNzd29yZCI6ImlkZW50aWZpZXIiLFBTX2UodGhpcy5KYSx0aGlzKSk7dGhpcy4kPVBTX1AoIm1haW4tY29udGVudCIpO3RoaXMuSj1QU19PKCJnYWlhX2xvZ2luZm9ybSIpO3RoaXMuWj1QU19QKCJzbGlkZS1vdXQiKTt0aGlzLkk9UFNfUCgic2xpZGUtaW4iKTt0aGlzLmI9UFNfTygiRW1haWwiKTt0aGlzLmY9UFNfTygiUGFzc3dkIik7dGhpcy5sPVBTX08oIm5leHQiKTt0aGlzLmxhPVBTX08oInNpZ25JbiIpO3RoaXMuZz1QU19PKCJiYWNrLWFycm93Iik7dGhpcy5qPVBTX1AoImNpcmNsZS1tYXNrIik7dGhpcy5jYW52YXM9UFNfTygiY2FudmFzIik7dGhpcy5YPVBTX08oImlkZW50aWZpZXItY2FwdGNoYSIpO3RoaXMuaD1QU19PKCJjYXB0Y2hhLWltZyIpO3RoaXMuWT1QU19PKCJpZGVudGlmaWVyLXRva2VuIik7dGhpcy53PVBTX08oImlkZW50aWZpZXItY2FwdGNoYS1pbnB1dCIpO3RoaXMuYWE9ClBTX08oInByb2ZpbGUtaW5mb3JtYXRpb24iKTt0aGlzLnM9UFNfUCgic2lnbmluLWNhcmQiKTt0aGlzLnU9UFNfUCgiY2FyZC1tYXNrLXdyYXAiKTt0aGlzLk5hPTEwMDt0aGlzLkQ9dGhpcy5IPSExO3RoaXMuaT0wO3RoaXMubz1uZXcgUFNfUSh0aGlzKTtQU19SKHRoaXMubyx0aGlzLkosInN1Ym1pdCIsdGhpcy5GYSk7UFNfUih0aGlzLm8sd2luZG93LCJyZXNpemUiLHRoaXMuSGEpO1BTX0NjKHRoaXMuZyx0aGlzLkVhLCExLHRoaXMsdGhpcy5vKTt0aGlzLkouYWN0aW9uPWI7dGhpcy5JYT1uZXcgUFNfVGQodGhpcy5jKTswPT1hP1BTX1VkKHRoaXMuYik6KFBTX1VkKHRoaXMuZiksUFNfQih0aGlzLmcsInNoaWZ0LWZvcm0iKSl9O1BTX2FhKCJnYWlhLnBhZ2VzLlBhc3N3b3JkU2VwYXJhdGlvblBhZ2UiLFBTXyQpOwpQU18kLnByb3RvdHlwZS5GYT1mdW5jdGlvbihhKXsiaWRlbnRpZmllciI9PXRoaXMuYy5hPyhhLnByZXZlbnREZWZhdWx0KCksdGhpcy5sLnNldEF0dHJpYnV0ZSgiZGlzYWJsZWQiLCIiKSx0aGlzLmIuc2V0QXR0cmlidXRlKCJkaXNhYmxlZCIsIiIpLFBTX1ZkKHRoaXMpKToodGhpcy5sYS5zZXRBdHRyaWJ1dGUoImRpc2FibGVkIiwiIiksdGhpcy5sLnNldEF0dHJpYnV0ZSgiZGlzYWJsZWQiLCIiKSx0aGlzLmYuc2V0QXR0cmlidXRlKCJyZWFkb25seSIsIiIpKX07UFNfJC5wcm90b3R5cGUuSGE9ZnVuY3Rpb24oKXtpZih0aGlzLmEpe3ZhciBhPXRoaXMuYTthLmIuRyZhbXA7JmFtcDthLmIuYigpfX07ClBTXyQucHJvdG90eXBlLkVhPWZ1bmN0aW9uKGEpe2EucHJldmVudERlZmF1bHQoKTtQU19XZCh0aGlzKTtQU19YZCh0aGlzKTt0aGlzLmYudmFsdWU9IiI7UFNfUGEoImlkZW50aWZpZXIiKSZhbXA7JmFtcDtQU19SZCh0aGlzLmMuYiwiaWRlbnRpZmllciIpO3RoaXMubGEucmVtb3ZlQXR0cmlidXRlKCJkaXNhYmxlZCIpO3RoaXMubC5yZW1vdmVBdHRyaWJ1dGUoImRpc2FibGVkIik7dGhpcy5mLnJlbW92ZUF0dHJpYnV0ZSgicmVhZG9ubHkiKX07CnZhciBQU19WZD1mdW5jdGlvbihhKXtpZighYS5IKXthLkg9ITA7dmFyIGI9bmV3IFBTX2g7Yi5wYXJhbWV0ZXJzPXt9O2IucGFyYW1ldGVycy5FbWFpbD1hLmIudmFsdWU7Yi5wYXJhbWV0ZXJzLnJlcXVlc3Rsb2NhdGlvbj1QU19hLmxvY2F0aW9uLmhyZWY7dmFyIGM9YS5KLmhkLGM9Yz9jLnZhbHVlOm51bGw7bnVsbCE9YyZhbXA7JmFtcDsoYi5wYXJhbWV0ZXJzLmhkPWMpO2EuRCZhbXA7JmFtcDsoYi5wYXJhbWV0ZXJzWyJpZGVudGlmaWVyLWNhcHRjaGEtaW5wdXQiXT1hLncudmFsdWUsYi5wYXJhbWV0ZXJzLmlkZW50aWZpZXJ0b2tlbj1hLlkudmFsdWUpO3ZhciBkPSJqc19kaXNhYmxlZCI7dHJ5e2RvY3VtZW50LmJnLmludm9rZShmdW5jdGlvbihhKXtkPWF9KX1jYXRjaChlKXtkPSIifWIucGFyYW1ldGVycy5iZ3Jlc3BvbnNlPWQ7Yi5zZW5kKCIvYWNjb3VudExvZ2luSW5mb1hociIsUFNfZShhLkdhLGEpKX19LFBTX1lkPWZ1bmN0aW9uKGEsYil7UFNfV2QoYSk7YS5kaXNwbGF5TmFtZT1iLm5hbWU7YS5NYT0KYi5lbWFpbDthLk89Yi5waG90b191cmw7YS54YT1iLnJlY292ZXJ5X3VybDthLmFhJmFtcDsmYW1wOyhhLmFhLnZhbHVlPWIuZW5jb2RlZF9wcm9maWxlX2luZm9ybWF0aW9uKTtQU19QYSgicGFzc3dvcmQiKSZhbXA7JmFtcDtQU19SZChhLmMuYiwicGFzc3dvcmQiKX07ClBTXyQucHJvdG90eXBlLkdhPWZ1bmN0aW9uKGEpe3RoaXMuSD0hMTt0aGlzLmwucmVtb3ZlQXR0cmlidXRlKCJkaXNhYmxlZCIpO3RoaXMuYi5yZW1vdmVBdHRyaWJ1dGUoImRpc2FibGVkIik7aWYoMjAwPT1hLnN0YXR1cylpZihhPVBTX0RjKGEudGV4dCksIlNIT1dfRVJST1IiPT1hLmFjdGlvbilQU19aZCh0aGlzLGEuZXJyb3JfbXNnKTtlbHNlIGlmKCJTVUJNSVRfRk9STSI9PWEuYWN0aW9uKVBTX08oImdhaWFfbG9naW5mb3JtIikuc3VibWl0KCk7ZWxzZSBpZigiUkVESVJFQ1QiPT1hLmFjdGlvbil7dmFyIGI9YS5yZWRpcmVjdFVybDthPVBTX2EubG9jYXRpb247aWYoIShiIGluc3RhbmNlb2YgUFNfRnx8YiBpbnN0YW5jZW9mIFBTX0YpKXt2YXIgYj1iLk4/Yi5NKCk6U3RyaW5nKGIpLGI9UFNfMGIudGVzdChiKT9QU18zYihiKToiYWJvdXQ6aW52YWxpZCN6Q2xvc3VyZXoiLGM9bmV3IFBTX0Y7Yy5hPWI7Yj1jfWEuaHJlZj1QU19fYihiKX1lbHNlIlNIT1dfQ0FQVENIQSI9PQphLmFjdGlvbj8oUFNfX2QodGhpcyxhKSxQU19YZCh0aGlzKSk6IlNIT1dfQ0FQVENIQV9BTkRfRVJST1IiPT1hLmFjdGlvbj8oUFNfX2QodGhpcyxhKSxQU19aZCh0aGlzLGEuZXJyb3JfbXNnKSk6UFNfWWQodGhpcyxhKTtlbHNlIDQwMCZsdDs9YS5zdGF0dXMmYW1wOyZhbXA7UFNfWWQodGhpcyx7bmFtZToiIixlbWFpbDp0aGlzLmIudmFsdWUscGhvdG9fdXJsOiIiLHJlY292ZXJ5X3VybDoiaHR0cHM6Ly9hY2NvdW50cy5nb29nbGUuY29tL1JlY292ZXJBY2NvdW50P0VtYWlsPSIrdGhpcy5iLnZhbHVlLGVuY29kZWRfcHJvZmlsZV9pbmZvcm1hdGlvbjoiIn0pfTsKUFNfJC5wcm90b3R5cGUuSmE9ZnVuY3Rpb24oKXtQU19hLmNsZWFyVGltZW91dCh0aGlzLkNhKTtQU19hLmNsZWFyVGltZW91dCh0aGlzLkFhKTtQU19hLmNsZWFyVGltZW91dCh0aGlzLk9hKTtQU19hLmNsZWFyVGltZW91dCh0aGlzLkRhKTtQU19hLmNsZWFyVGltZW91dCh0aGlzLkJhKTt0aGlzLmEmYW1wOyZhbXA7dGhpcy5hLmZhKCExKTt2YXIgYT10aGlzLklhOyJpZGVudGlmaWVyIj09YS5pLmE/KFBTX3FjKGEuZiksYS5nPWEuYS52YWx1ZT0iIixhLmwudmFsdWU9IiIsYS5jLmFwcGVuZENoaWxkKGEucyksYS5oPWEuYi52YWx1ZSk6KGEuZz1hLmEudmFsdWU9YS5qLnZhbHVlLGEuaCE9PWEuYi52YWx1ZSZhbXA7JmFtcDsoYS5sLnZhbHVlPWEuYi52YWx1ZSksUFNfcWMoYS5jKSxhLmYuYXBwZW5kQ2hpbGQoYS53KSk7ImlkZW50aWZpZXIiPT10aGlzLmMuYT9QU18wZCh0aGlzKToicGFzc3dvcmQiPT10aGlzLmMuYSZhbXA7JmFtcDtQU18xZCh0aGlzKX07CnZhciBQU18wZD1mdW5jdGlvbihhKXtQU18yZChhLCEwKTtQU18zZChhLDEwMCwwKTtQU180ZChhLCJzaGlmdC1mb3JtIiwhMSk7UFNfWGQoYSk7UFNfVWQoYS5iKTtQU19JYihhLmcsInNoaWZ0LWZvcm0iKTsicGFzc3dvcmQiPT1hLmMuYyZhbXA7JmFtcDsoUFNfVGMoYS5qLCIwLjAxIiksYS5CYT1QU18wKGZ1bmN0aW9uKCl7UFNfVSh0aGlzLmosImJhY2tncm91bmQtaW1hZ2UiLCIiKTtQU19UYyh0aGlzLmosIiIpfSw3NSxhKSxhLkRhPVBTXzAoZnVuY3Rpb24oKXtQU181ZCh0aGlzLCExKX0sMjAwLGEpKX0sUFNfMWQ9ZnVuY3Rpb24oYSl7UFNfNWQoYSwhMCk7UFNfM2QoYSwwLGEuU2EpO1BTXzRkKGEsInNoaWZ0LWZvcm0iLCEwKTtQU182ZChhKTthLkNhPVBTXzAoZnVuY3Rpb24oKXtQU19YZCh0aGlzKTtQU19CKHRoaXMuZywic2hpZnQtZm9ybSIpO1BTXzJkKHRoaXMsITEpO3RoaXMucy5vZmZzZXRXaWR0aH0sMjAwLGEpO2EuQWE9UFNfMChmdW5jdGlvbigpe1BTX1VkKHRoaXMuZil9LDQwMCwKYSl9LFBTXzZkPWZ1bmN0aW9uKGEpe3ZhciBiPSJodHRwczovL2xoMy5nb29nbGV1c2VyY29udGVudC5jb20vLVhkVUlxZE1rQ1dBL0FBQUFBQUFBQUFJL0FBQUFBQUFBQUFBLzQyNTJyc2NidjVNL3Bob3RvLmpwZz9zej05NiI7YS5PJmFtcDsmYW1wOyhiPWEuTysiP3N6PSIrYS5jYW52YXMud2lkdGgudG9TdHJpbmcoKSk7UFNfRWIobmV3IFBTX0EoZnVuY3Rpb24oKXt2YXIgYT1QU19PKCJwcm9maWxlLW5hbWUiKTt0aGlzLks9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaW1nIik7dGhpcy5LLnNyYz1iO3RoaXMuY2FudmFzLmdldENvbnRleHQoIjJkIikuY2xlYXJSZWN0KDAsMCx0aGlzLmNhbnZhcy53aWR0aCx0aGlzLmNhbnZhcy5oZWlnaHQpO3RoaXMuZGlzcGxheU5hbWU/KFBTX3ZjKGEsdGhpcy5kaXNwbGF5TmFtZSksUFNfWShhLCEwKSxQU180ZCh0aGlzLCJuby1uYW1lIiwhMSkpOihQU19ZKGEsITEpLFBTXzRkKHRoaXMsIm5vLW5hbWUiLCEwKSk7UFNfdmMoUFNfTygiZW1haWwtZGlzcGxheSIpLAp0aGlzLk1hKTt0aGlzLnhhJmFtcDsmYW1wOyhQU19PKCJsaW5rLWZvcmdvdC1wYXNzd2QiKS5ocmVmPXRoaXMueGEpO3RoaXMuT2E9UFNfMChmdW5jdGlvbigpe3RoaXMuSy5jb21wbGV0ZT90aGlzLnphLmNhbGwodGhpcyk6dGhpcy5vLmphKHRoaXMuSywibG9hZCIsdGhpcy56YSl9LHRoaXMuTmEsdGhpcyl9LHdpbmRvdyxhKSl9LFBTXzRkPWZ1bmN0aW9uKGEsYixjKXtQU19DKGEucyxiLGMpO1BTXzdkKGEsYixjKX0sUFNfN2Q9ZnVuY3Rpb24oYSxiLGMpe1BTX0MoYS51LGIsYyk7YS4kJmFtcDsmYW1wO1BTX0MoYS4kLGIsYyl9LFBTXzNkPWZ1bmN0aW9uKGEsYixjKXtQU19VKGEuWiwidHJhbnNpdGlvbkRlbGF5IixiKyJtcyIpO1BTX1UoYS5JLCJ0cmFuc2l0aW9uRGVsYXkiLGMrIm1zIil9LFBTXzJkPWZ1bmN0aW9uKGEsYil7UFNfQyhhLlosImhpZGUtZm9ybSIsIWIpO2Eucy5vZmZzZXRXaWR0aH0sUFNfNWQ9ZnVuY3Rpb24oYSxiKXtQU19DKGEuSSwiaGlkZS1mb3JtIiwhYik7YS5zLm9mZnNldFdpZHRofSwKUFNfWmQ9ZnVuY3Rpb24oYSxiKXtQU19VZChhLmIpO3ZhciBjPVBTX08oImVycm9ybXNnXzBfRW1haWwiKTtpZigiSU5HRSI9PWIpe3ZhciBkPVBTX08oImluZ2UiKS5jbG9uZU5vZGUoITApLGU9Yy5wYXJlbnROb2RlO2UmYW1wOyZhbXA7ZS5yZXBsYWNlQ2hpbGQoZCxjKTtQU19sYyhkLHtpZDoiZXJyb3Jtc2dfMF9FbWFpbCJ9KTtQU19ZKGQsITApO2lmKHZvaWQgMCE9ZC5maXJzdEVsZW1lbnRDaGlsZCljPWQuZmlyc3RFbGVtZW50Q2hpbGQ7ZWxzZSBmb3IoYz1kLmZpcnN0Q2hpbGQ7YyZhbXA7JmFtcDsxIT1jLm5vZGVUeXBlOyljPWMubmV4dFNpYmxpbmc7Yy5ocmVmPWMuaHJlZitQU19qKGEuYi52YWx1ZSl9ZWxzZSBQU192YyhjLGIrIiAiKTtQU180ZChhLCJoYXMtZXJyb3IiLCEwKTtQU19CKGEuYiwiZm9ybS1lcnJvciIpO2M9YS5pO2Q9UFNfTygiZXJyb3Jtc2dfMF9FbWFpbCIpO2U9ZC5jbG9uZU5vZGUoITApO1BTX0liKGUsImVycm9yLW1zZyIpO3ZhciBmO2E6e2lmKFBTX2hjJmFtcDsmYW1wOyEoUFNfcyZhbXA7JmFtcDtQU192KCI5IikmYW1wOyZhbXA7CiFQU192KCIxMCIpJmFtcDsmYW1wO1BTX2EuU1ZHRWxlbWVudCZhbXA7JmFtcDtkIGluc3RhbmNlb2YgUFNfYS5TVkdFbGVtZW50KSZhbXA7JmFtcDsoZj1kLnBhcmVudEVsZW1lbnQpKWJyZWFrIGE7Zj1kLnBhcmVudE5vZGU7Zj1QU19lYShmKSZhbXA7JmFtcDsxPT1mLm5vZGVUeXBlP2Y6bnVsbH1mLmFwcGVuZENoaWxkKGUpO2Y9UFNfWChlKS5oZWlnaHQ7UFNfcmMoZSk7ZD1QU19XYyhkLCJtYXJnaW4iKTtmKz1kLnRvcCtkLmJvdHRvbTthLmk9ZjtkPWEudTtiOntlPVBTX3phKCJ0cmFuc2Zvcm0iKTtpZih2b2lkIDA9PT1kLnN0eWxlW2VdJmFtcDsmYW1wOyhlPVBTX0VjKCkrUFNfQWEoZSksdm9pZCAwIT09ZC5zdHlsZVtlXSkpe2U9UFNfRmMoKSsiLXRyYW5zZm9ybSI7YnJlYWsgYn1lPSJ0cmFuc2Zvcm0ifWU9KGQ9UFNfVyhkLGUpfHxQU19XKGQsInRyYW5zZm9ybSIpKT8oZD1kLm1hdGNoKFBTX1pjKSk/bmV3IFBTX0socGFyc2VGbG9hdChkWzFdKSxwYXJzZUZsb2F0KGRbMl0pKTpuZXcgUFNfSygwLDApOm5ldyBQU19LKDAsMCk7ZD1hLnU7Yz0KZS55KyhhLmktYyk7UFNfMWMoKSZhbXA7JmFtcDsoYz1QU18yYygpPyJ0cmFuc2xhdGUzZCgwcHgsIitjKyJweCwwcHgpIjoidHJhbnNsYXRlKDBweCwiK2MrInB4KSIsUFNfVShkLFBTXzNjKCksYykpfSxQU19YZD1mdW5jdGlvbihhKXthLmk9MDtQU19VKGEudSwidHJhbnNmb3JtIiwiIik7UFNfdmMoUFNfTygiZXJyb3Jtc2dfMF9FbWFpbCIpLCIiKTtQU19yYyhQU19PKCJlcnJvcm1zZ18wX1Bhc3N3ZCIpKTtQU180ZChhLCJoYXMtZXJyb3IiLCExKTtQU19JYihhLmIsImZvcm0tZXJyb3IiKTtQU19JYihhLmYsImZvcm0tZXJyb3IiKX07ClBTXyQucHJvdG90eXBlLnphPWZ1bmN0aW9uKCl7dmFyIGE9dGhpcy5jYW52YXMud2lkdGgvMi10aGlzLksud2lkdGgvMixiPXRoaXMuY2FudmFzLmhlaWdodC8yLXRoaXMuSy5oZWlnaHQvMixjPXRoaXMuY2FudmFzLmdldENvbnRleHQoIjJkIiksZD0wLGU9dGhpcy5jYW52YXMud2lkdGgvMixmPXRoaXMuY2FudmFzLmhlaWdodC8yLGc9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiY2FudmFzIik7Zy53aWR0aD10aGlzLmNhbnZhcy53aWR0aDtnLmhlaWdodD10aGlzLmNhbnZhcy5oZWlnaHQ7dmFyIGg9Zy5nZXRDb250ZXh0KCIyZCIpLG09dGhpcy5jYW52YXMud2lkdGgvMTIsaz1QU19lKGZ1bmN0aW9uKCl7Yy5zYXZlKCk7d2luZG93LmNocm9tZT8oaC5jbGVhclJlY3QoMCwwLGcud2lkdGgsZy5oZWlnaHQpLGguZ2xvYmFsQ29tcG9zaXRlT3BlcmF0aW9uPSJzb3VyY2Utb3ZlciIsaC5kcmF3SW1hZ2UodGhpcy5LLGEsYiksaC5zaGFkb3dDb2xvcj0iI2ZmZiIsaC5nbG9iYWxDb21wb3NpdGVPcGVyYXRpb249CiJkZXN0aW5hdGlvbi1pbiIsaC5iZWdpblBhdGgoKSxoLmFyYyhlLGYsZCwwLDIqTWF0aC5QSSwhMSksaC5jbG9zZVBhdGgoKSxoLmZpbGwoKSxjLmRyYXdJbWFnZShnLDAsMCkpOmMuZHJhd0ltYWdlKHRoaXMuSyxhLGIpO2MucmVzdG9yZSgpfSx0aGlzKSxsPVBTX2UoZnVuY3Rpb24oKXt2YXIgYT1uZXcgUFNfQShsKTtkKz1tO2lmKGQmbHQ7PXRoaXMuY2FudmFzLndpZHRoKXt2YXIgYj1kO2Muc2F2ZSgpO3dpbmRvdy5jaHJvbWV8fChjLmJlZ2luUGF0aCgpLGMuYXJjKGUsZixiLDAsMipNYXRoLlBJLCExKSxjLmNsaXAoKSk7aygpO2MucmVzdG9yZSgpO1BTX0ViKGEpfWVsc2UgaWYoUFNfQmIoYSksInBhc3N3b3JkIj09dGhpcy5jLmEmYW1wOyZhbXA7KFBTX1UodGhpcy5qLCJiYWNrZ3JvdW5kLWltYWdlIiwibm9uZSIpLHRoaXMuZGlzcGxheU5hbWUmYW1wOyZhbXA7dGhpcy5PKSlpZih0aGlzLmEpdGhpcy5hLmZhKCEwKTtlbHNlIGlmKChhPVBTX1AoInByb2ZpbGUtdG9vbHRpcCIpKSZhbXA7JmFtcDt0aGlzLmNhbnZhcyl7Yj0KdGhpcy5hPW5ldyBQU182O2IuaC5hPXRoaXMuY2FudmFzO2IuYi5HJmFtcDsmYW1wO2IuYi5iKCk7Yj10aGlzLmE7UFNfayghYi5GLCJNdXN0IGNhbGwgc2V0U2hvd0Nsb3NlYm94KCkgYmVmb3JlIHJlbmRlcmluZyIpO2Iucz0hMTtiPXRoaXMuYTtQU19rKCFiLkYsIk11c3QgY2FsbCBzZXRQb3NpdGlvbigpIGJlZm9yZSByZW5kZXJpbmciKTtiPWIuaDtQU19kKHZvaWQgMCkmYW1wOyZhbXA7KGIudT1NYXRoLm1heCh2b2lkIDAsMTUpKTtQU19kKC0xNSkmYW1wOyZhbXA7KGIuaD0tMTUpO2I9dGhpcy5hO2E9YS5pbm5lckhUTUw7UFNfayhQU19jKGEpfHxhLm5vZGVUeXBlfHxhIGluc3RhbmNlb2YgUFNfNXx8YSBpbnN0YW5jZW9mIFBTX0gsIkNvbnRlbnQgbXVzdCBiZSBhIHN0cmluZyBvciBIVE1MLiIpO2IuSD1hO1BTX0VkKGIsYSk7YT10aGlzLmE7aWYoYS5GKXRocm93IEVycm9yKCJDb21wb25lbnQgYWxyZWFkeSByZW5kZXJlZCIpO2EuYXx8YS5yYSgpO2EuZi5hLmJvZHkuYXBwZW5kQ2hpbGQoYS5hKTthLmcmYW1wOyZhbXA7IWEuZy5GfHwKYS5kYSgpO3RoaXMuYS5mYSghMCl9fSx0aGlzKTtsKCl9Owp2YXIgUFNfX2Q9ZnVuY3Rpb24oYSxiKXtQU183ZChhLCJoYXMtY2FwdGNoYSIsITApO2EuRD0hMDt2YXIgYz1QU19qYygiaW1nIiwiIixhLmgpWzBdO2M/Yy5zcmM9Yi5pbWdfdXJsOihjPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImltZyIpLGMuc2V0QXR0cmlidXRlKCJzcmMiLGIuaW1nX3VybCksYy5zZXRBdHRyaWJ1dGUoImFsdCIsUFNfUWIoYS5oKSksYS5oLmFwcGVuZENoaWxkKGMpKTthLlkuc2V0QXR0cmlidXRlKCJ2YWx1ZSIsUFNfaihiLmltZ190b2tlbikpO2Eudy52YWx1ZT0iIjtQU19ZKGEuWCwhMCl9LFBTX1dkPWZ1bmN0aW9uKGEpe1BTXzdkKGEsImhhcy1jYXB0Y2hhIiwhMSk7InBhc3N3b3JkIj09YS5jLmE/KGEuRD0hMSxQU19xYyhhLmgpLGEudy52YWx1ZT0iIixQU19ZKGEuWCwhMSkpOlBTX3JjKFBTX1AoImNhcHRjaGEtY29udGFpbmVyIixhLkkpKX0sUFNfVWQ9ZnVuY3Rpb24oYSl7UFNfWWEoKXx8UFNfcCgiaVBhZCIpfHxQU19wKCJpUG9kIil8fGEuZm9jdXMoKX07Cjwvc2NyaXB0PgogIDxzY3JpcHQ+CiAgcGFzc3dvcmRTZXBhcmF0aW9uUGFnZSA9IG5ldyBnYWlhLnBhZ2VzLlBhc3N3b3JkU2VwYXJhdGlvblBhZ2UoCiAgMAogICwgJ2h0dHBzOi8vYWNjb3VudHMuZ29vZ2xlLmNvbS9TZXJ2aWNlTG9naW5BdXRoJyk7CiAgPC9zY3JpcHQ+PGlucHV0IHR5cGU9InRleHQiIHN0eWxlPSJkaXNwbGF5Om5vbmUiIGlkPSJoaXN0b3J5X3N0YXRlMCIgbmFtZT0iaGlzdG9yeV9zdGF0ZTAiIC8+CjxzY3JpcHQ+CiAgKGZ1bmN0aW9uKCl7CiAgdmFyIHNpZ25pbklucHV0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3NpZ25JbicpOwogIGdhaWFfb25Mb2dpblN1Ym1pdCA9IGZ1bmN0aW9uKCkgewogIHRyeSB7CiAgZG9jdW1lbnQuYmcuaW52b2tlKGZ1bmN0aW9uKHJlc3BvbnNlKSB7CiAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2JncmVzcG9uc2UnKS52YWx1ZSA9IHJlc3BvbnNlOwogIH0pOwogIH0gY2F0Y2ggKGVycikgewogIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdiZ3Jlc3BvbnNlJykudmFsdWUgPSAnJzsKICB9CiAgcmV0dXJuIHRydWU7CiAgfQogIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdnYWlhX2xvZ2luZm9ybScpLm9uc3VibWl0ID0gZ2FpYV9vbkxvZ2luU3VibWl0OwogIHZhciBzaWduaW5CdXR0b24gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnc2lnbkluJyk7CiAgZ2FpYV9hdHRhY2hFdmVudCh3aW5kb3csICdsb2FkJywgZnVuY3Rpb24oKXsKICBnYWlhX3Njcm9sbFRvRWxlbWVudChzaWduaW5CdXR0b24pOwogIH0pOwogIH0pKCk7Cjwvc2NyaXB0PgogIAoKPC9ib2R5PjwvaHRtbD4=" target="_blank">Source</a> <a class="screenshot" href="#" target="_blank">Screenshot</a> <a class="settings" href="data:text/plain;charset=utf-8;base64,ewogICAgImFjY2Vzc2liaWxpdHkuaW52ZXJ0IjogZmFsc2UsCiAgICAiYWNjZXNzaWJpbGl0eS5zY3JlZW5yZWFkZXIiOiBmYWxzZSwKICAgICJhaXJwbGFuZU1vZGUuZW5hYmxlZCI6IGZhbHNlLAogICAgImFpcnBsYW5lTW9kZS5zdGF0dXMiOiAiZGlzYWJsZWQiLAogICAgImFsYXJtLmVuYWJsZWQiOiBmYWxzZSwKICAgICJhbGFybS5yaW5ndG9uZSI6IHsKICAgICAgICAic2l6ZSI6IDM2NzYxLAogICAgICAgICJzbGljZSI6IG51bGwsCiAgICAgICAgInR5cGUiOiAiYXVkaW8vb2dnIgogICAgfSwKICAgICJhcG4uc2VsZWN0aW9ucyI6IG51bGwsCiAgICAiYXBwLXN1c3BlbmRpbmcuZW5hYmxlZCI6IHRydWUsCiAgICAiYXBwLXRoZW1lY29sb3IuZW5hYmxlZCI6IHRydWUsCiAgICAiYXBwLXRyYW5zaXRpb24uZW5hYmxlZCI6IHRydWUsCiAgICAiYXBwLmNhcmRzX3ZpZXcuc2NyZWVuc2hvdHMuZW5hYmxlZCI6IHRydWUsCiAgICAiYXBwLmxhdW5jaF9wYXRoLmJsYWNrbGlzdCI6IFtdLAogICAgImFwcC5yZXBvcnRDcmFzaGVzIjogImFzayIsCiAgICAiYXBwLnVwZGF0ZS5iYXR0ZXJ5LXRocmVzaG9sZC5wbHVnZ2VkIjogMjUsCiAgICAiYXBwLnVwZGF0ZS5iYXR0ZXJ5LXRocmVzaG9sZC51bnBsdWdnZWQiOiAyNSwKICAgICJhcHAudXBkYXRlLmNoYW5uZWwiOiAiZGVmYXVsdCIsCiAgICAiYXBwLnVwZGF0ZS5pbnRlcnZhbCI6IDg2NDAwLAogICAgImFwcC51cGRhdGUudXJsIjogImh0dHBzOi8vYXVzNC5tb3ppbGxhLm9yZy91cGRhdGUvMy8lUFJPRFVDVCUvJVZFUlNJT04lLyVCVUlMRF9JRCUvJVBST0RVQ1RfREVWSUNFJS8lTE9DQUxFJS8lQ0hBTk5FTCUvJU9TX1ZFUlNJT04lLyVESVNUUklCVVRJT04lLyVESVNUUklCVVRJT05fVkVSU0lPTiUvdXBkYXRlLnhtbCIsCiAgICAiYXBwc2VhcmNoLnVybCI6ICJodHRwczovL2FwcHNlYXJjaC5zZXJ2aWNlcy5tb3ppbGxhLmNvbS9wYXJ0bmVycy8xLjAve3Jlc291cmNlfS8iLAogICAgImFwei5mb3JjZS1lbmFibGUiOiB0cnVlLAogICAgImFwei5vdmVyc2Nyb2xsLmVuYWJsZWQiOiB0cnVlLAogICAgImF1ZGlvLnZvbHVtZS5hbGFybSI6IDAsCiAgICAiYXVkaW8udm9sdW1lLmJ0X3NjbyI6IDE1LAogICAgImF1ZGlvLnZvbHVtZS5jZW1heHZvbCI6IDExLAogICAgImF1ZGlvLnZvbHVtZS5jb250ZW50IjogMCwKICAgICJhdWRpby52b2x1bWUuZHRtZiI6IDE1LAogICAgImF1ZGlvLnZvbHVtZS5tYXN0ZXIiOiA1LAogICAgImF1ZGlvLnZvbHVtZS5ub3RpZmljYXRpb24iOiAwLAogICAgImF1ZGlvLnZvbHVtZS50ZWxlcGhvbnkiOiA1LAogICAgImF1ZGlvLnZvbHVtZS50dHMiOiAxNSwKICAgICJibHVldG9vdGguZGVidWdnaW5nLmVuYWJsZWQiOiBmYWxzZSwKICAgICJibHVldG9vdGguZGV2aWNlLmNvbm5lY3RlZCI6IG51bGwsCiAgICAiYmx1ZXRvb3RoLmVuYWJsZWQiOiBmYWxzZSwKICAgICJibHVldG9vdGguc3VzcGVuZGVkIjogZmFsc2UsCiAgICAiY2FtZXJhLnJlY29yZGluZy5wcmVmZXJyZWRTaXplcyI6IFtdLAogICAgImNhbWVyYS5zb3VuZC5lbmFibGVkIjogdHJ1ZSwKICAgICJjbGVhci5yZW1vdGUtd2luZG93cy5kYXRhIjogZmFsc2UsCiAgICAiY21hcy5lbmFibGVkIjogWwogICAgICAgIHRydWUsCiAgICAgICAgdHJ1ZQogICAgXSwKICAgICJjb250aW51b3VzLXRyYW5zaXRpb24uZW5hYmxlZCI6IGZhbHNlLAogICAgImRlYnVnLmNvbnNvbGUuZW5hYmxlZCI6IHRydWUsCiAgICAiZGVidWcuZnBzLmVuYWJsZWQiOiBmYWxzZSwKICAgICJkZWJ1Zy5nYWlhLmVuYWJsZWQiOiBmYWxzZSwKICAgICJkZWJ1Zy5sb2ctYW5pbWF0aW9ucy5lbmFibGVkIjogZmFsc2UsCiAgICAiZGVidWcub29wLmRpc2FibGVkIjogZmFsc2UsCiAgICAiZGVidWcucGFpbnQtZmxhc2hpbmcuZW5hYmxlZCI6IGZhbHNlLAogICAgImRlYnVnLnBlZm9ybWFuY2VkYXRhLnNoYXJlZCI6IGZhbHNlLAogICAgImRlYnVnLnBlcmZvcm1hbmNlX2RhdGEuc2hhcmVkIjogZmFsc2UsCiAgICAiZGVidWcudHRsLmVuYWJsZWQiOiBmYWxzZSwKICAgICJkZWJ1Z2dlci5yZW1vdGUtbW9kZSI6ICJhZGItb25seSIsCiAgICAiZGV2ZWxvcGVyLm1lbnUuZW5hYmxlZCI6IHRydWUsCiAgICAiZGV2aWNlLnN0b3JhZ2Uud3JpdGFibGUubmFtZSI6ICJzZGNhcmQiLAogICAgImRldmljZWluZm8uYnVpbGRfbnVtYmVyIjogImVuZy5jbHRibGQuMjAxNTA2MTQuMTk1NTMyIiwKICAgICJkZXZpY2VpbmZvLmZpcm13YXJlX3JldmlzaW9uIjogIiIsCiAgICAiZGV2aWNlaW5mby5oYXJkd2FyZSI6ICJxY29tIiwKICAgICJkZXZpY2VpbmZvLm1hYyI6ICIiLAogICAgImRldmljZWluZm8ub3MiOiAiMi4xLjAuMC1wcmVyZWxlYXNlIiwKICAgICJkZXZpY2VpbmZvLnBsYXRmb3JtX2J1aWxkX2lkIjogIjIwMTUwNjE0MTYxMjA1IiwKICAgICJkZXZpY2VpbmZvLnBsYXRmb3JtX3ZlcnNpb24iOiAiMzQuMCIsCiAgICAiZGV2aWNlaW5mby5wcmV2aW91c19vcyI6ICIyLjEuMC4wLXByZXJlbGVhc2UiLAogICAgImRldmljZWluZm8ucHJvZHVjdF9tb2RlbCI6ICJmbGFtZSIsCiAgICAiZGV2aWNlaW5mby5zb2Z0d2FyZSI6ICJCb290MkdlY2tvIDIuMS4wLjAtcHJlcmVsZWFzZSIsCiAgICAiZGV2dG9vbHMuZXZlbnRsb29wbGFnLnRocmVzaG9sZCI6IDEwMCwKICAgICJkZXZ0b29scy5vdmVybGF5IjogZmFsc2UsCiAgICAiZGV2dG9vbHMub3ZlcmxheS5zeXN0ZW0iOiBmYWxzZSwKICAgICJkZXZ0b29scy5yZW1vdGUud2lmaS5lbmFibGVkIjogZmFsc2UsCiAgICAiZGV2dG9vbHMucmVtb3RlLndpZmkudmlzaWJsZSI6IGZhbHNlLAogICAgImRpYWxlci5yaW5ndG9uZSI6IHsKICAgICAgICAic2l6ZSI6IDEyMjYwOCwKICAgICAgICAic2xpY2UiOiBudWxsLAogICAgICAgICJ0eXBlIjogImF1ZGlvL29nZyIKICAgIH0sCiAgICAiZGlhbGVyLnJpbmd0b25lLmRlZmF1bHQuaWQiOiAiYnVpbHRpbjpyaW5ndG9uZS9yaW5nZXJfZmlyZWZveCIsCiAgICAiZGlhbGVyLnJpbmd0b25lLmlkIjogImJ1aWx0aW46cmluZ3RvbmUvcmluZ2VyX2ZpcmVmb3giLAogICAgImRpYWxlci5yaW5ndG9uZS5uYW1lIjogewogICAgICAgICJsMTBuSUQiOiAicmluZ2VyX2ZpcmVmb3gyIgogICAgfSwKICAgICJkb20ubW1zLm9wZXJhdG9yU2l6ZUxpbWl0YXRpb24iOiAzMDcyMDAsCiAgICAiZG9tLm1vekFwcHMuc2lnbmVkX2FwcHNfaW5zdGFsbGFibGVfZnJvbSI6ICJodHRwczovL21hcmtldHBsYWNlLmZpcmVmb3guY29tLGh0dHBzOi8vbWFya2V0cGxhY2UuYWxsaXpvbS5vcmciLAogICAgImVkZ2VzZ2VzdHVyZS5lbmFibGVkIjogdHJ1ZSwKICAgICJmZWVkYmFjay51cmwiOiAiaHR0cHM6Ly9pbnB1dC5hbGxpem9tLm9yZy9hcGkvdjEvZmVlZGJhY2svIiwKICAgICJmaW5kbXlkZXZpY2UudWkuZW5hYmxlZCI6IHRydWUsCiAgICAiZnR1Lm1hbmlmZXN0VVJMIjogImFwcDovL2Z0dS5nYWlhbW9iaWxlLm9yZy9tYW5pZmVzdC53ZWJhcHAiLAogICAgImZ0dS5waW5nVVJMIjogImh0dHBzOi8vZnhvcy50ZWxlbWV0cnkubW96aWxsYS5vcmcvc3VibWl0L3RlbGVtZXRyeSIsCiAgICAiZ2FpYS5zeXN0ZW0uY2hlY2tGb3JVcGRhdGVzIjogZmFsc2UsCiAgICAiZ2FpYS51aS5oaWdobGlnaHQiOiAiI2IyZjJmZiIsCiAgICAiZ2FpYS51aS5pbmZvYmFja2dyb3VuZCI6ICIjMzQzZTQwIiwKICAgICJnYWlhLnVpLmluZm90ZXh0IjogIiM2ODY4NjgiLAogICAgImdhaWEudWkubWVudSI6ICIjZjk3YzE3IiwKICAgICJnYWlhLnVpLm1lbnV0ZXh0IjogIiNmZmZmZmYiLAogICAgImdhaWEudWkud2luZG93IjogIiNmZmZmZmYiLAogICAgImdhaWEudWkud2luZG93dGV4dCI6ICIjMDAwMDAwIiwKICAgICJnZWNrby51cGRhdGVTdGF0dXMiOiAibm8tdXBkYXRlcyIsCiAgICAiZ2VvbG9jYXRpb24uZGVidWdnaW5nLmVuYWJsZWQiOiBmYWxzZSwKICAgICJnZW9sb2NhdGlvbi5lbmFibGVkIjogdHJ1ZSwKICAgICJnZW9sb2NhdGlvbi5zdXNwZW5kZWQiOiBmYWxzZSwKICAgICJob21lZ2VzdHVyZS5lbmFibGVkIjogZmFsc2UsCiAgICAiaG9tZXNjcmVlbi5tYW5pZmVzdFVSTCI6ICJhcHA6Ly92ZXJ0aWNhbGhvbWUuZ2FpYW1vYmlsZS5vcmcvbWFuaWZlc3Qud2ViYXBwIiwKICAgICJodWQuYXBwbWVtb3J5IjogZmFsc2UsCiAgICAiaHVkLmRvbSI6IGZhbHNlLAogICAgImh1ZC5lcnJvcnMiOiB0cnVlLAogICAgImh1ZC5qYW5rIjogZmFsc2UsCiAgICAiaHVkLmpzb2JqZWN0cyI6IGZhbHNlLAogICAgImh1ZC5qc290aGVyIjogZmFsc2UsCiAgICAiaHVkLmpzc3RyaW5ncyI6IGZhbHNlLAogICAgImh1ZC5sb2dnaW5nIjogdHJ1ZSwKICAgICJodWQub3RoZXIiOiBmYWxzZSwKICAgICJodWQucmVmbG93cyI6IGZhbHNlLAogICAgImh1ZC5zZWN1cml0eSI6IHRydWUsCiAgICAiaHVkLnN0eWxlIjogZmFsc2UsCiAgICAiaHVkLnVzcyI6IHRydWUsCiAgICAiaHVkLndhcm5pbmdzIjogdHJ1ZSwKICAgICJpY2MuYXBwbGljYXRpb25zIjogIntcIjFcIjp7XCJpY2NJZFwiOlwiODk4ODY5MjAwMzEwMzE0NTIzMDFcIixcImVudHJpZXNcIjp7XCJ0aXRsZVwiOlwiXHU0ZTJkXHU4M2VmXHU5NmZiXHU0ZmUxXHU1MzQwXCIsXCJpdGVtc1wiOlt7XCJpZGVudGlmaWVyXCI6MSxcInRleHRcIjpcImVtb21lXHU3NDA2XHU4Y2ExXCJ9LHtcImlkZW50aWZpZXJcIjoyLFwidGV4dFwiOlwiZW1vbWVcdTUyYTBcdTUwM2NcIn1dLFwicHJlc2VudGF0aW9uVHlwZVwiOjB9fX0iLAogICAgImljYy5kYXRhIjogbnVsbCwKICAgICJpY2MuZGlzcGxheVRleHRUaW1lb3V0IjogNDAwMDAsCiAgICAiaWNjLmdvQmFja1RpbWVvdXQiOiA0MDAwLAogICAgImljYy5pbnB1dFRleHRUaW1lb3V0IjogNDAwMDAsCiAgICAiaWNjLnNlbGVjdFRpbWVvdXQiOiAxNTAwMDAsCiAgICAiaWNjLnRvbmVEZWZhdWx0VGltZW91dCI6IDUwMDAsCiAgICAiaWRlbnRpdHkuZnhhY2NvdW50cy5yZXNldC1wYXNzd29yZC51cmwiOiAiaHR0cHM6Ly9hY2NvdW50cy5maXJlZm94LmNvbS9yZXNldF9wYXNzd29yZCIsCiAgICAiaW4tYXBwLXNoZWV0LmVuYWJsZWQiOiBmYWxzZSwKICAgICJrZXlib2FyZC4zcmQtcGFydHktYXBwLmVuYWJsZWQiOiB0cnVlLAogICAgImtleWJvYXJkLmF1dG9jb3JyZWN0IjogZmFsc2UsCiAgICAia2V5Ym9hcmQuY2xpY2tzb3VuZCI6IGZhbHNlLAogICAgImtleWJvYXJkLmN1cnJlbnQiOiAiZW4iLAogICAgImtleWJvYXJkLmRlZmF1bHQtbGF5b3V0cyI6IHsKICAgICAgICAiYXBwOi8va2V5Ym9hcmQuZ2FpYW1vYmlsZS5vcmcvbWFuaWZlc3Qud2ViYXBwIjogewogICAgICAgICAgICAiZW4iOiB0cnVlLAogICAgICAgICAgICAibnVtYmVyIjogdHJ1ZQogICAgICAgIH0KICAgIH0sCiAgICAia2V5Ym9hcmQuZW5hYmxlZC1sYXlvdXRzIjogewogICAgICAgICJhcHA6Ly9rZXlib2FyZC5nYWlhbW9iaWxlLm9yZy9tYW5pZmVzdC53ZWJhcHAiOiB7CiAgICAgICAgICAgICJlbiI6IHRydWUsCiAgICAgICAgICAgICJudW1iZXIiOiB0cnVlCiAgICAgICAgfQogICAgfSwKICAgICJrZXlib2FyZC5mdHUuZW5hYmxlZCI6IGZhbHNlLAogICAgImtleWJvYXJkLmxhdW5jaC1vbi1ib290IjogdHJ1ZSwKICAgICJrZXlib2FyZC52aWJyYXRpb24iOiB0cnVlLAogICAgImtleWJvYXJkLndvcmRzdWdnZXN0aW9uIjogdHJ1ZSwKICAgICJsYW5ndWFnZS5jdXJyZW50IjogImVuLVVTIiwKICAgICJsYXllcnMuY29tcG9zZXIyZC5lbmFibGVkIjogdHJ1ZSwKICAgICJsYXllcnMuZHJhdy1ib3JkZXJzIjogZmFsc2UsCiAgICAibGF5ZXJzLmR1bXAiOiBmYWxzZSwKICAgICJsYXllcnMuZWZmZWN0LmNvbnRyYXN0IjogIjAuMCIsCiAgICAibGF5ZXJzLmVmZmVjdC5ncmF5c2NhbGUiOiBmYWxzZSwKICAgICJsYXllcnMuZWZmZWN0LmludmVydCI6IGZhbHNlLAogICAgImxheWVycy5lbmFibGUtdGlsZXMiOiB0cnVlLAogICAgImxheWVycy5sb3ctb3BhY2l0eSI6IHRydWUsCiAgICAibGF5ZXJzLmxvdy1wcmVjaXNpb24iOiB0cnVlLAogICAgImxheWVycy5zaW1wbGUtdGlsZXMiOiBmYWxzZSwKICAgICJsb2NhbGUuaG91cjEyIjogdHJ1ZSwKICAgICJsb2Nrc2NyZWVuLmVuYWJsZWQiOiB0cnVlLAogICAgImxvY2tzY3JlZW4ubG9ja2VkIjogZmFsc2UsCiAgICAibG9ja3NjcmVlbi5ub3RpZmljYXRpb25zLXByZXZpZXcuZW5hYmxlZCI6IHRydWUsCiAgICAibG9ja3NjcmVlbi5wYXNzY29kZS1sb2NrLmNvZGUiOiAiMDAwMCIsCiAgICAibG9ja3NjcmVlbi5wYXNzY29kZS1sb2NrLmVuYWJsZWQiOiBmYWxzZSwKICAgICJsb2Nrc2NyZWVuLnBhc3Njb2RlLWxvY2sudGltZW91dCI6IDAsCiAgICAibG9ja3NjcmVlbi51bmxvY2stc291bmQuZW5hYmxlZCI6IGZhbHNlLAogICAgIm1lZGlhLnJpbmd0b25lIjogewogICAgICAgICJzaXplIjogMTI2MTIsCiAgICAgICAgInNsaWNlIjogbnVsbCwKICAgICAgICAidHlwZSI6ICJhdWRpby9vZ2ciCiAgICB9LAogICAgIm1lc3NhZ2Uuc2VudC1zb3VuZC5lbmFibGVkIjogdHJ1ZSwKICAgICJuZmMuZGVidWdnaW5nLmVuYWJsZWQiOiBmYWxzZSwKICAgICJuZmMuZW5hYmxlZCI6IGZhbHNlLAogICAgIm5mYy5zdXNwZW5kZWQiOiBmYWxzZSwKICAgICJub3RpZmljYXRpb24ucmluZ3RvbmUiOiB7CiAgICAgICAgInNpemUiOiAxMjYxMiwKICAgICAgICAic2xpY2UiOiBudWxsLAogICAgICAgICJ0eXBlIjogImF1ZGlvL29nZyIKICAgIH0sCiAgICAibm90aWZpY2F0aW9uLnJpbmd0b25lLmRlZmF1bHQuaWQiOiAiYnVpbHRpbjphbGVydHRvbmUvbm90aWZpZXJfZmlyZWZveCIsCiAgICAibm90aWZpY2F0aW9uLnJpbmd0b25lLmlkIjogImJ1aWx0aW46YWxlcnR0b25lL25vdGlmaWVyX2ZpcmVmb3giLAogICAgIm5vdGlmaWNhdGlvbi5yaW5ndG9uZS5uYW1lIjogewogICAgICAgICJsMTBuSUQiOiAibm90aWZpZXJfZmlyZWZveDIiCiAgICB9LAogICAgIm5vdGlmaWNhdGlvbnMucmVzZW5kIjogdHJ1ZSwKICAgICJvcGVyYXRvcnZhcmlhbnQuMi4xLjAuMC1wcmVyZWxlYXNlLklDQzAuY3VzdG9taXphdGlvbiI6IHRydWUsCiAgICAib3BlcmF0b3J2YXJpYW50LmljY0lkIjogWwogICAgICAgICI4OTg4NjkyMDAzMTAzMTQ1MjMwMSIsCiAgICAgICAgbnVsbAogICAgXSwKICAgICJvcGVyYXRvcnZhcmlhbnQubWNjIjogWwogICAgICAgICI0NjYiLAogICAgICAgICIwMDAiCiAgICBdLAogICAgIm9wZXJhdG9ydmFyaWFudC5tbmMiOiBbCiAgICAgICAgIjkyIiwKICAgICAgICAiMDAiCiAgICBdLAogICAgInBob25lLmR0bWYudHlwZSI6ICJsb25nIiwKICAgICJwaG9uZS5yaW5nLmtleXBhZCI6IHRydWUsCiAgICAicG93ZXJzYXZlLmVuYWJsZWQiOiBmYWxzZSwKICAgICJwb3dlcnNhdmUudGhyZXNob2xkIjogLTEsCiAgICAicHJpdmFjeS5kb25vdHRyYWNraGVhZGVyLmVuYWJsZWQiOiBmYWxzZSwKICAgICJwcml2YWN5LmRvbm90dHJhY2toZWFkZXIudmFsdWUiOiAiLTEiLAogICAgInJpbC5jYWxsZXJJZCI6ICJDTElSX0RFRkFVTFQiLAogICAgInJpbC5jYWxsd2FpdGluZy5lbmFibGVkIjogbnVsbCwKICAgICJyaWwuY2VsbGJyb2FkY2FzdC5kaXNhYmxlZCI6IFsKICAgICAgICBmYWxzZSwKICAgICAgICBmYWxzZQogICAgXSwKICAgICJyaWwuY2VsbGJyb2FkY2FzdC5zZWFyY2hsaXN0IjogWwogICAgICAgICIiLAogICAgICAgICIiCiAgICBdLAogICAgInJpbC5jZi5lbmFibGVkIjogWwogICAgICAgIGZhbHNlLAogICAgICAgIGZhbHNlCiAgICBdLAogICAgInJpbC5kYXRhLmFwbiI6ICJpbnRlcm5ldCIsCiAgICAicmlsLmRhdGEuYXBuU2V0dGluZ3MiOiBbCiAgICAgICAgWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiYXBuIjogImludGVybmV0IiwKICAgICAgICAgICAgICAgICJjYXJyaWVyIjogIlx1NGUyZFx1ODNlZlx1OTZmYlx1NGZlMShDaHVuZ2h3YSkgKEludGVybmV0KSIsCiAgICAgICAgICAgICAgICAidHlwZXMiOiBbCiAgICAgICAgICAgICAgICAgICAgImRlZmF1bHQiCiAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJhcG4iOiAiZW1vbWUiLAogICAgICAgICAgICAgICAgImNhcnJpZXIiOiAiXHU0ZTJkXHU4M2VmXHU5NmZiXHU0ZmUxKENodW5naHdhKSAoTU1TKSIsCiAgICAgICAgICAgICAgICAibW1zYyI6ICJodHRwOi8vbW1zLmVtb21lLm5ldDo4MDAyIiwKICAgICAgICAgICAgICAgICJtbXNwb3J0IjogIjgwODAiLAogICAgICAgICAgICAgICAgIm1tc3Byb3h5IjogIjEwLjEuMS4xIiwKICAgICAgICAgICAgICAgICJ0eXBlcyI6IFsKICAgICAgICAgICAgICAgICAgICAibW1zIgogICAgICAgICAgICAgICAgXQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiYXBuIjogImludGVybmV0IiwKICAgICAgICAgICAgICAgICJjYXJyaWVyIjogIlx1NGUyZFx1ODNlZlx1OTZmYlx1NGZlMShDaHVuZ2h3YSkgKEludGVybmV0KSIsCiAgICAgICAgICAgICAgICAidHlwZXMiOiBbCiAgICAgICAgICAgICAgICAgICAgInN1cGwiCiAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgIFtdCiAgICBdLAogICAgInJpbC5kYXRhLmF1dGh0eXBlIjogIm5vdERlZmluZWQiLAogICAgInJpbC5kYXRhLmNhcnJpZXIiOiAiXHU0ZTJkXHU4M2VmXHU5NmZiXHU0ZmUxKENodW5naHdhKSAoSW50ZXJuZXQpIiwKICAgICJyaWwuZGF0YS5jcC5hcG5zIjogIiIsCiAgICAicmlsLmRhdGEuZGVmYXVsdC5hcG5TZXR0aW5ncyI6IFsKICAgICAgICBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJhcG4iOiAiaW50ZXJuZXQiLAogICAgICAgICAgICAgICAgImNhcnJpZXIiOiAiXHU0ZTJkXHU4M2VmXHU5NmZiXHU0ZmUxKENodW5naHdhKSAoSW50ZXJuZXQpIiwKICAgICAgICAgICAgICAgICJ0eXBlcyI6IFsKICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdCIKICAgICAgICAgICAgICAgIF0KICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImFwbiI6ICJlbW9tZSIsCiAgICAgICAgICAgICAgICAiY2FycmllciI6ICJcdTRlMmRcdTgzZWZcdTk2ZmJcdTRmZTEoQ2h1bmdod2EpIChNTVMpIiwKICAgICAgICAgICAgICAgICJtbXNjIjogImh0dHA6Ly9tbXMuZW1vbWUubmV0OjgwMDIiLAogICAgICAgICAgICAgICAgIm1tc3BvcnQiOiAiODA4MCIsCiAgICAgICAgICAgICAgICAibW1zcHJveHkiOiAiMTAuMS4xLjEiLAogICAgICAgICAgICAgICAgInR5cGVzIjogWwogICAgICAgICAgICAgICAgICAgICJtbXMiCiAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJhcG4iOiAiaW50ZXJuZXQiLAogICAgICAgICAgICAgICAgImNhcnJpZXIiOiAiXHU0ZTJkXHU4M2VmXHU5NmZiXHU0ZmUxKENodW5naHdhKSAoSW50ZXJuZXQpIiwKICAgICAgICAgICAgICAgICJ0eXBlcyI6IFsKICAgICAgICAgICAgICAgICAgICAic3VwbCIKICAgICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgW10KICAgIF0sCiAgICAicmlsLmRhdGEuZGVmYXVsdC5hcG5zIjogewogICAgICAgICI0NjYiOiB7CiAgICAgICAgICAgICI5MiI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiYXBuIjogImludGVybmV0IiwKICAgICAgICAgICAgICAgICAgICAiY2FycmllciI6ICJcdTRlMmRcdTgzZWZcdTk2ZmJcdTRmZTEoQ2h1bmdod2EpIChJbnRlcm5ldCkiLAogICAgICAgICAgICAgICAgICAgICJ0eXBlcyI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHQiLAogICAgICAgICAgICAgICAgICAgICAgICAic3VwbCIKICAgICAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJhcG4iOiAiZW1vbWUiLAogICAgICAgICAgICAgICAgICAgICJjYXJyaWVyIjogIlx1NGUyZFx1ODNlZlx1OTZmYlx1NGZlMShDaHVuZ2h3YSkgKE1NUykiLAogICAgICAgICAgICAgICAgICAgICJtbXNjIjogImh0dHA6Ly9tbXMuZW1vbWUubmV0OjgwMDIiLAogICAgICAgICAgICAgICAgICAgICJtbXNwb3J0IjogIjgwODAiLAogICAgICAgICAgICAgICAgICAgICJtbXNwcm94eSI6ICIxMC4xLjEuMSIsCiAgICAgICAgICAgICAgICAgICAgInR5cGVzIjogWwogICAgICAgICAgICAgICAgICAgICAgICAibW1zIgogICAgICAgICAgICAgICAgICAgIF0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgXQogICAgICAgIH0KICAgIH0sCiAgICAicmlsLmRhdGEuZGVmYXVsdFNlcnZpY2VJZCI6IDAsCiAgICAicmlsLmRhdGEuZW5hYmxlZCI6IGZhbHNlLAogICAgInJpbC5kYXRhLmh0dHBQcm94eUhvc3QiOiAiIiwKICAgICJyaWwuZGF0YS5odHRwUHJveHlQb3J0IjogIiIsCiAgICAicmlsLmRhdGEubW1zYyI6ICIiLAogICAgInJpbC5kYXRhLm1tc3BvcnQiOiAwLAogICAgInJpbC5kYXRhLm1tc3Byb3h5IjogIiIsCiAgICAicmlsLmRhdGEucGFzc3dkIjogIiIsCiAgICAicmlsLmRhdGEucm9hbWluZ19lbmFibGVkIjogZmFsc2UsCiAgICAicmlsLmRhdGEuc3VzcGVuZGVkIjogZmFsc2UsCiAgICAicmlsLmRhdGEudXNlciI6ICIiLAogICAgInJpbC5kdW4uYXBuIjogIiIsCiAgICAicmlsLmR1bi5hdXRodHlwZSI6ICJub3REZWZpbmVkIiwKICAgICJyaWwuZHVuLmNhcnJpZXIiOiAiIiwKICAgICJyaWwuZHVuLmh0dHBQcm94eUhvc3QiOiAiIiwKICAgICJyaWwuZHVuLmh0dHBQcm94eVBvcnQiOiAiIiwKICAgICJyaWwuZHVuLnBhc3N3ZCI6ICIiLAogICAgInJpbC5kdW4udXNlciI6ICIiLAogICAgInJpbC5pY2NJbmZvLm1iZG4iOiBbCiAgICAgICAgIiIsCiAgICAgICAgIiIKICAgIF0sCiAgICAicmlsLmltcy5hcG4iOiAiIiwKICAgICJyaWwuaW1zLmF1dGh0eXBlIjogIm5vdERlZmluZWQiLAogICAgInJpbC5pbXMuY2FycmllciI6ICIiLAogICAgInJpbC5pbXMuaHR0cFByb3h5SG9zdCI6ICIiLAogICAgInJpbC5pbXMuaHR0cFByb3h5UG9ydCI6ICIiLAogICAgInJpbC5pbXMucGFzc3dkIjogIiIsCiAgICAicmlsLmltcy51c2VyIjogIiIsCiAgICAicmlsLm1tcy5hcG4iOiAiZW1vbWUiLAogICAgInJpbC5tbXMuYXV0aHR5cGUiOiAibm90RGVmaW5lZCIsCiAgICAicmlsLm1tcy5jYXJyaWVyIjogIlx1NGUyZFx1ODNlZlx1OTZmYlx1NGZlMShDaHVuZ2h3YSkgKE1NUykiLAogICAgInJpbC5tbXMuZGVmYXVsdFNlcnZpY2VJZCI6IDAsCiAgICAicmlsLm1tcy5odHRwUHJveHlIb3N0IjogIiIsCiAgICAicmlsLm1tcy5odHRwUHJveHlQb3J0IjogIiIsCiAgICAicmlsLm1tcy5tbXNjIjogImh0dHA6Ly9tbXMuZW1vbWUubmV0OjgwMDIiLAogICAgInJpbC5tbXMubW1zcG9ydCI6ICI4MDgwIiwKICAgICJyaWwubW1zLm1tc3Byb3h5IjogIjEwLjEuMS4xIiwKICAgICJyaWwubW1zLnBhc3N3ZCI6ICIiLAogICAgInJpbC5tbXMucmVxdWVzdFJlYWRSZXBvcnQuZW5hYmxlZCI6IGZhbHNlLAogICAgInJpbC5tbXMucmV0cmlldmFsX21vZGUiOiAiYXV0b21hdGljLWhvbWUiLAogICAgInJpbC5tbXMudXNlciI6ICIiLAogICAgInJpbC5yYWRpby5kaXNhYmxlZCI6IGZhbHNlLAogICAgInJpbC5yYWRpby5wcmVmZXJyZWROZXR3b3JrVHlwZSI6IFsKICAgICAgICAid2NkbWEvZ3NtIiwKICAgICAgICAiZ3NtIgogICAgXSwKICAgICJyaWwuc21zLmRlZmF1bHRTZXJ2aWNlSWQiOiAwLAogICAgInJpbC5zbXMucmVxdWVzdFN0YXR1c1JlcG9ydC5lbmFibGVkIjogZmFsc2UsCiAgICAicmlsLnNtcy5zdHJpY3Q3Qml0RW5jb2RpbmcuZW5hYmxlZCI6IGZhbHNlLAogICAgInJpbC5zdXBsLmFwbiI6ICJpbnRlcm5ldCIsCiAgICAicmlsLnN1cGwuYXV0aHR5cGUiOiAibm90RGVmaW5lZCIsCiAgICAicmlsLnN1cGwuY2FycmllciI6ICJcdTRlMmRcdTgzZWZcdTk2ZmJcdTRmZTEoQ2h1bmdod2EpIChJbnRlcm5ldCkiLAogICAgInJpbC5zdXBsLmh0dHBQcm94eUhvc3QiOiAiIiwKICAgICJyaWwuc3VwbC5odHRwUHJveHlQb3J0IjogIiIsCiAgICAicmlsLnN1cGwucGFzc3dkIjogIiIsCiAgICAicmlsLnN1cGwudXNlciI6ICIiLAogICAgInJpbC50ZWxlcGhvbnkuZGVmYXVsdFNlcnZpY2VJZCI6IDAsCiAgICAicmlsLnZvaWNlbWFpbC5kZWZhdWx0U2VydmljZUlkIjogMCwKICAgICJyb2NrZXRiYXIubmV3VGFiQXBwVVJMIjogImFwcDovL3NlYXJjaC5nYWlhbW9iaWxlLm9yZy9pbmRleC5odG1sIiwKICAgICJyb2NrZXRiYXIuc2VhcmNoQXBwVVJMIjogImFwcDovL3NlYXJjaC5nYWlhbW9iaWxlLm9yZy9pbmRleC5odG1sIiwKICAgICJzY3JlZW4uYXV0b21hdGljLWJyaWdodG5lc3MiOiBmYWxzZSwKICAgICJzY3JlZW4uYnJpZ2h0bmVzcyI6IDEsCiAgICAic2NyZWVuLnRpbWVvdXQiOiAwLAogICAgInNlYXJjaC5pY29uVXJsIjogewogICAgICAgICJzaXplIjogMTE3MywKICAgICAgICAic2xpY2UiOiBudWxsLAogICAgICAgICJ0eXBlIjogImltYWdlL3gtaWNvbiIKICAgIH0sCiAgICAic2VhcmNoLnN1Z2dlc3Rpb25zLmVuYWJsZWQiOiB0cnVlLAogICAgInNlYXJjaC5zdWdnZXN0aW9uc1VybFRlbXBsYXRlIjogImh0dHBzOi8vd3d3Lmdvb2dsZS5jb20vY29tcGxldGUvc2VhcmNoP2NsaWVudD1maXJlZm94JnE9e3NlYXJjaFRlcm1zfSIsCiAgICAic2VhcmNoLnVybFRlbXBsYXRlIjogImh0dHBzOi8vd3d3Lmdvb2dsZS5jb20vc2VhcmNoP3E9e3NlYXJjaFRlcm1zfSIsCiAgICAic29mdHdhcmUtYnV0dG9uLmVuYWJsZWQiOiBmYWxzZSwKICAgICJzdGF0dXNiYXIubmV0d29yay1hY3Rpdml0eS5kaXNhYmxlZCI6IGZhbHNlLAogICAgInN0YXR1c2Jhci5zaG93LWFtLXBtIjogZmFsc2UsCiAgICAic3VwcG9ydC5jYWxsc3VwcG9ydDEuaHJlZiI6ICIiLAogICAgInN1cHBvcnQuY2FsbHN1cHBvcnQxLnRpdGxlIjogIiIsCiAgICAic3VwcG9ydC5jYWxsc3VwcG9ydDIuaHJlZiI6ICIiLAogICAgInN1cHBvcnQuY2FsbHN1cHBvcnQyLnRpdGxlIjogIiIsCiAgICAic3VwcG9ydC5vbmxpbmVzdXBwb3J0LmhyZWYiOiAiIiwKICAgICJzdXBwb3J0Lm9ubGluZXN1cHBvcnQudGl0bGUiOiAiIiwKICAgICJ0ZWxlcGhvbnkuc3BlYWtlci5lbmFibGVkIjogZmFsc2UsCiAgICAidGV0aGVyaW5nLnVzYi5jb25uZWN0ZWRDbGllbnRzIjogMCwKICAgICJ0ZXRoZXJpbmcudXNiLmRoY3BzZXJ2ZXIuZW5kaXAiOiAiMTkyLjE2OC4wLjMwIiwKICAgICJ0ZXRoZXJpbmcudXNiLmRoY3BzZXJ2ZXIuc3RhcnRpcCI6ICIxOTIuMTY4LjAuMTAiLAogICAgInRldGhlcmluZy51c2IuZW5hYmxlZCI6IGZhbHNlLAogICAgInRldGhlcmluZy51c2IuaXAiOiAiMTkyLjE2OC4wLjEiLAogICAgInRldGhlcmluZy51c2IucHJlZml4IjogIjI0IiwKICAgICJ0ZXRoZXJpbmcud2lmaS5jb25uZWN0ZWRDbGllbnRzIjogMCwKICAgICJ0ZXRoZXJpbmcud2lmaS5kaGNwc2VydmVyLmVuZGlwIjogIjE5Mi4xNjguMS4zMCIsCiAgICAidGV0aGVyaW5nLndpZmkuZGhjcHNlcnZlci5zdGFydGlwIjogIjE5Mi4xNjguMS4xMCIsCiAgICAidGV0aGVyaW5nLndpZmkuZW5hYmxlZCI6IGZhbHNlLAogICAgInRldGhlcmluZy53aWZpLmlwIjogIjE5Mi4xNjguMS4xIiwKICAgICJ0ZXRoZXJpbmcud2lmaS5wcmVmaXgiOiAiMjQiLAogICAgInRldGhlcmluZy53aWZpLnNlY3VyaXR5LnBhc3N3b3JkIjogIiIsCiAgICAidGV0aGVyaW5nLndpZmkuc2VjdXJpdHkudHlwZSI6ICJ3cGEyLXBzayIsCiAgICAidGV0aGVyaW5nLndpZmkuc3NpZCI6ICJGaXJlZm94SG90c3BvdCIsCiAgICAidGhlbWUuc2VsZWN0ZWQiOiAiYXBwOi8vZGVmYXVsdF90aGVtZS5nYWlhbW9iaWxlLm9yZy9tYW5pZmVzdC53ZWJhcHAiLAogICAgInRpbWUuY2xvY2suYXV0b21hdGljLXVwZGF0ZS5hdmFpbGFibGUiOiB0cnVlLAogICAgInRpbWUuY2xvY2suYXV0b21hdGljLXVwZGF0ZS5lbmFibGVkIjogdHJ1ZSwKICAgICJ0aW1lLnRpbWV6b25lIjogIlVUQyswODowMCIsCiAgICAidGltZS50aW1lem9uZS5hdXRvbWF0aWMtdXBkYXRlLmF2YWlsYWJsZSI6IHRydWUsCiAgICAidGltZS50aW1lem9uZS5hdXRvbWF0aWMtdXBkYXRlLmVuYWJsZWQiOiB0cnVlLAogICAgInVpLnRvdWNoLnJhZGl1cy5ib3R0b21tbSI6IDIsCiAgICAidWkudG91Y2gucmFkaXVzLmxlZnRtbSI6IDMsCiAgICAidWkudG91Y2gucmFkaXVzLnJpZ2h0bW0iOiAzLAogICAgInVpLnRvdWNoLnJhZGl1cy50b3BtbSI6IDUsCiAgICAidW1zLmVuYWJsZWQiOiBmYWxzZSwKICAgICJ1bXMubW9kZSI6IDAsCiAgICAidW1zLnN0YXR1cyI6IDAsCiAgICAidW1zLnZvbHVtZS5leHRlcm5hbC5lbmFibGVkIjogdHJ1ZSwKICAgICJ1bXMudm9sdW1lLmV4dHNkY2FyZC5lbmFibGVkIjogdHJ1ZSwKICAgICJ1bXMudm9sdW1lLnNkY2FyZC5lbmFibGVkIjogdHJ1ZSwKICAgICJ1bXMudm9sdW1lLnNkY2FyZDEuZW5hYmxlZCI6IHRydWUsCiAgICAidXNiLnRyYW5zZmVyIjogIjAiLAogICAgInZpYnJhdGlvbi5lbmFibGVkIjogdHJ1ZSwKICAgICJ2b2x1bWUuZXh0ZXJuYWwudW5yZWNvZ25pc2VkIjogZmFsc2UsCiAgICAid2FsbHBhcGVyLmltYWdlIjogewogICAgICAgICJzaXplIjogMjI0NTgwLAogICAgICAgICJzbGljZSI6IG51bGwsCiAgICAgICAgInR5cGUiOiAiaW1hZ2UvcG5nIgogICAgfSwKICAgICJ3YWxscGFwZXIuaW1hZ2UudmFsaWQiOiB0cnVlLAogICAgIndhcC5wdXNoLmVuYWJsZWQiOiB0cnVlLAogICAgIndpZmkuY29ubmVjdF92aWFfc2V0dGluZ3MiOiBmYWxzZSwKICAgICJ3aWZpLmRlYnVnZ2luZy5lbmFibGVkIjogdHJ1ZSwKICAgICJ3aWZpLmRpc2FibGVkX2J5X3dha2Vsb2NrIjogZmFsc2UsCiAgICAid2lmaS5lbmFibGVkIjogdHJ1ZSwKICAgICJ3aWZpLm5vdGlmaWNhdGlvbiI6IGZhbHNlLAogICAgIndpZmkuc2NyZWVuX29mZl90aW1lb3V0IjogNjAwMDAwLAogICAgIndpZmkuc3VzcGVuZGVkIjogZmFsc2UKfQ==" target="_blank">Settings</a> </td>
          <td class="debug">
            <div class="screenshot"><a href="#"><img src="data:image/png;base64,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"/></a></div>
            <div class="log">Traceback (most recent call last):<br/>  File "/var/lib/jenkins/JenkinsCI/B2G_Flame_2dot1_Kitkat/B2G_Gaia_2dot1/tests/python/gaia-ui-tests/.env/local/lib/python2.7/site-packages/marionette_client_mozilla_b2g34_v2_1-0.2-py2.7.egg/marionette/marionette_test.py", line 174, in run<br/>    testMethod()<br/>  File "/var/lib/jenkins/JenkinsCI/B2G_Flame_2dot1_Kitkat/B2G_Gaia_2dot1/tests/python/gaia-ui-tests/gaiatest/tests/functional/email/test_setup_basic_gmail.py", line 29, in test_setup_basic_gmail<br/>    self.testvars['email']['gmail']['password'])<br/>  File "/var/lib/jenkins/JenkinsCI/B2G_Flame_2dot1_Kitkat/B2G_Gaia_2dot1/tests/python/gaia-ui-tests/gaiatest/apps/email/app.py", line 39, in basic_setup_email<br/>    google_login.type_password(password)<br/>  File "/var/lib/jenkins/JenkinsCI/B2G_Flame_2dot1_Kitkat/B2G_Gaia_2dot1/tests/python/gaia-ui-tests/gaiatest/apps/email/regions/google.py", line 32, in type_password<br/>    self.marionette.find_element(*self._password_locator).send_keys(password)<br/>  File "/var/lib/jenkins/JenkinsCI/B2G_Flame_2dot1_Kitkat/B2G_Gaia_2dot1/tests/python/gaia-ui-tests/.env/local/lib/python2.7/site-packages/marionette_client_mozilla_b2g34_v2_1-0.2-py2.7.egg/marionette/marionette.py", line 1282, in find_element<br/>    response = self._send_message('findElement', 'value', **kwargs)<br/>  File "/var/lib/jenkins/JenkinsCI/B2G_Flame_2dot1_Kitkat/B2G_Gaia_2dot1/tests/python/gaia-ui-tests/.env/local/lib/python2.7/site-packages/marionette_client_mozilla_b2g34_v2_1-0.2-py2.7.egg/marionette/decorators.py", line 35, in _<br/>    return func(*args, **kwargs)<br/>  File "/var/lib/jenkins/JenkinsCI/B2G_Flame_2dot1_Kitkat/B2G_Gaia_2dot1/tests/python/gaia-ui-tests/.env/local/lib/python2.7/site-packages/marionette_client_mozilla_b2g34_v2_1-0.2-py2.7.egg/marionette/marionette.py", line 641, in _send_message<br/><span class="error">    self._handle_error(response)</span><br/><span class="error">  File "/var/lib/jenkins/JenkinsCI/B2G_Flame_2dot1_Kitkat/B2G_Gaia_2dot1/tests/python/gaia-ui-tests/.env/local/lib/python2.7/site-packages/marionette_client_mozilla_b2g34_v2_1-0.2-py2.7.egg/marionette/marionette.py", line 675, in _handle_error</span><br/><span class="error">    raise errors.NoSuchElementException(message=message, status=status, stacktrace=stacktrace)</span><br/><span class="error">NoSuchElementException: NoSuchElementException: Unable to locate element: Passwd</span><br/></div></td></tr>
        <tr class="passed results-table-row">
          <td class="col-result">Passed</td>
          <td class="col-class">test_setup_and_send_imap_email.TestSetupAndSendIMAPEmail</td>
          <td class="col-name">test_setup_and_send_imap_email</td>
          <td class="col-duration">186.4</td>
          <td class="col-links"></td>
          <td class="debug"></td></tr>
        <tr class="passed results-table-row">
          <td class="col-result">Passed</td>
          <td class="col-class">test_everythingme_launch_link.TestEverythingMeLaunchLink</td>
          <td class="col-name">test_launch_everything_me_link</td>
          <td class="col-duration">120.1</td>
          <td class="col-links"></td>
          <td class="debug"></td></tr>
        <tr class="passed results-table-row">
          <td class="col-result">Passed</td>
          <td class="col-class">test_everythingme_add_collection_save_bookmark.TestEverythingMeAddCollectionSaveBookmark</td>
          <td class="col-name">test_everythingme_add_collection</td>
          <td class="col-duration">117.8</td>
          <td class="col-links"></td>
          <td class="debug"></td></tr>
        <tr class="passed results-table-row">
          <td class="col-result">Passed</td>
          <td class="col-class">test_fmradio_frequency_dialer.TestFMRadioFreqDialer</td>
          <td class="col-name">test_radio_frequency_dialer</td>
          <td class="col-duration">89.6</td>
          <td class="col-links"></td>
          <td class="debug"></td></tr>
        <tr class="passed results-table-row">
          <td class="col-result">Passed</td>
          <td class="col-class">test_ftu_skip_tour.TestFtu</td>
          <td class="col-name">test_ftu_skip_tour</td>
          <td class="col-duration">99.2</td>
          <td class="col-links"></td>
          <td class="debug"></td></tr>
        <tr class="passed results-table-row">
          <td class="col-result">Passed</td>
          <td class="col-class">test_ftu_with_tour.TestFtu</td>
          <td class="col-name">test_ftu_with_tour</td>
          <td class="col-duration">86.4</td>
          <td class="col-links"></td>
          <td class="debug"></td></tr>
        <tr class="passed results-table-row">
          <td class="col-result">Passed</td>
          <td class="col-class">test_gallery_view.TestGallery</td>
          <td class="col-name">test_gallery_view</td>
          <td class="col-duration">82.2</td>
          <td class="col-links"></td>
          <td class="debug"></td></tr>
        <tr class="passed results-table-row">
          <td class="col-result">Passed</td>
          <td class="col-class">test_gallery_flick.TestGallery</td>
          <td class="col-name">test_gallery_full_screen_image_flicks</td>
          <td class="col-duration">92.7</td>
          <td class="col-links"></td>
          <td class="debug"></td></tr>
        <tr class="passed results-table-row">
          <td class="col-result">Passed</td>
          <td class="col-class">test_homescreen_delete_app.TestDeleteApp</td>
          <td class="col-name">test_delete_app</td>
          <td class="col-duration">97.3</td>
          <td class="col-links"></td>
          <td class="debug"></td></tr>
        <tr class="passed results-table-row">
          <td class="col-result">Passed</td>
          <td class="col-class">test_homescreen_move_app.TestMoveApp</td>
          <td class="col-name">test_move_app_position</td>
          <td class="col-duration">108.4</td>
          <td class="col-links"></td>
          <td class="debug"></td></tr>
        <tr class="passed results-table-row">
          <td class="col-result">Passed</td>
          <td class="col-class">test_lockscreen_unlock_to_homescreen.TestLockScreen</td>
          <td class="col-name">test_unlock_to_homescreen</td>
          <td class="col-duration">76.3</td>
          <td class="col-links"></td>
          <td class="debug"></td></tr>
        <tr class="passed results-table-row">
          <td class="col-result">Passed</td>
          <td class="col-class">test_lockscreen_unlock_to_camera.TestLockScreen</td>
          <td class="col-name">test_unlock_to_camera</td>
          <td class="col-duration">78.7</td>
          <td class="col-links"></td>
          <td class="debug"></td></tr>
        <tr class="passed results-table-row">
          <td class="col-result">Passed</td>
          <td class="col-class">test_lockscreen_unlock_to_camera_with_passcode.TestCameraUnlockWithPasscode</td>
          <td class="col-name">test_unlock_to_camera_with_passcode</td>
          <td class="col-duration">81.7</td>
          <td class="col-links"></td>
          <td class="debug"></td></tr>
        <tr class="passed results-table-row">
          <td class="col-result">Passed</td>
          <td class="col-class">test_marketplace_launch.TestMarketplaceLaunch</td>
          <td class="col-name">test_marketplace_launch</td>
          <td class="col-duration">86.2</td>
          <td class="col-links"></td>
          <td class="debug"></td></tr>
        <tr class="passed results-table-row">
          <td class="col-result">Passed</td>
          <td class="col-class">test_sms.TestSms</td>
          <td class="col-name">test_sms_send</td>
          <td class="col-duration">98.2</td>
          <td class="col-links"></td>
          <td class="debug"></td></tr>
        <tr class="passed results-table-row">
          <td class="col-result">Passed</td>
          <td class="col-class">test_sms_with_attachments.TestSmsWithAttachments</td>
          <td class="col-name">test_sms_send</td>
          <td class="col-duration">118.4</td>
          <td class="col-links"></td>
          <td class="debug"></td></tr>
        <tr class="passed results-table-row">
          <td class="col-result">Passed</td>
          <td class="col-class">test_music_artist_mp3.TestMusic</td>
          <td class="col-name">test_select_artist_play</td>
          <td class="col-duration">85.1</td>
          <td class="col-links"></td>
          <td class="debug"></td></tr>
        <tr class="passed results-table-row">
          <td class="col-result">Passed</td>
          <td class="col-class">test_settings_dsds_cell_data.TestDSDSCellData</td>
          <td class="col-name">test_cell_data_for_two_sims</td>
          <td class="col-duration">82.3</td>
          <td class="col-links"></td>
          <td class="debug"></td></tr>
        <tr class="passed results-table-row">
          <td class="col-result">Passed</td>
          <td class="col-class">test_power_button_long_press.TestPowerButton</td>
          <td class="col-name">test_power_button_long_press</td>
          <td class="col-duration">75.5</td>
          <td class="col-links"></td>
          <td class="debug"></td></tr>
        <tr class="passed results-table-row">
          <td class="col-result">Passed</td>
          <td class="col-class">test_play_3gp_video.TestPlay3GPVideo</td>
          <td class="col-name">test_play_3gp_video</td>
          <td class="col-duration">78.8</td>
          <td class="col-links"></td>
          <td class="debug"></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_dialer_set_up_conference_call.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">Cannot work on local CI service<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_setup_and_send_active_sync_email.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">Bug 1028192 - Problems with ActiveSync accounts<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_receive_active_sync_email.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">Bug 1028192 - Problems with ActiveSync accounts<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_ftu_skip_tour_desktopb2g.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">skip-if: device != "desktop"<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_settings_bluetooth.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">skip-if: device == "desktop" || device == "flame"<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_settings_cell_data.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">skip-if: device == "desktop" || device == "sp7710gaplus_gonk" || device == "flame"<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_settings_sim_manager.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">Disabled because run the device with 1 SIM only<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_browser_search.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_browser_navigation.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_browser_bookmark.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_browser_share_link.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_calendar_flick_through_months.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_camera_capture_photo.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_camera_flash_modes.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_cards_view_kill_apps_with_two_apps.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_clock_set_alarm.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_call_contact.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_sort_contacts.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_delete_contact.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_add_contact_to_favorites.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_import_contacts_from_sim.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_export_contacts_to_sdcard.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_import_contacts_from_sdcard.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_import_contacts_from_gmail.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_cost_control_ftu.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_cost_control_reset_wifi.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_dialer_airplane_mode.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_MMI.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_dialer_add_contact.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_dialer_find_contact.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_dialer_miss_call_from_known_contact_notification.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_dialer_receive_call_with_contact_photo.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_everythingme_search.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_fmradio_add_remove_from_favorites.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_fmradio_find_stations.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_fmradio_turn_on_off.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_gallery_empty.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_gallery_delete_image.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_gallery_edit_photo.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_gallery_crop_photo.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_homescreen_column_layout.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_homescreen_change_wallpaper.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_homescreen_edit_mode.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_homescreen_launch_app.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_keyboard.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_number_keyboard.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_keyboard_predictive_key.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_email_keyboard.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_keyboard_bug_1073870.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_lockscreen_unlock_to_homescreen_with_passcode.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_lockscreen_unlock_to_emergency_call_screen.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_lockscreen_notification.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_lockscreen_wake_with_notification.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_add_to_an_existing_contact_from_messages.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_add_to_new_contact_from_messages.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_sms_add_contact.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_sms_to_dialer.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_sms_contact_match.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_sms_contact_input_validation.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_sms_notification.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_mms_add_subject.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_inbox_to_settings.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_music_album_mp3.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_music_empty.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_music_songs_3gp.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_persona_app.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_settings_change_language.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_settings_change_language_rtl.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_settings_gps.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_settings_do_not_track.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_settings_wifi.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_settings_airplane_mode.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_settings_media_storage.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_settings_wallpaper.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_settings_passcode.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_settings_change_keyboard_language.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_settings_device_info.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_settings_power_save_mode.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_system_notification_bar.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_geolocation_prompt.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_quick_settings.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_system_message.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_system_message_pending.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_inter_app_comm.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_privileged_app_audio_capture_prompt.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_privileged_app_video_capture_prompt.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_privileged_app_contacts_prompt.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_privileged_app_device_music_prompt.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_privileged_app_device_picture_prompt.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_privileged_app_device_sdcard_prompt.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_privileged_app_device_video_prompt.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_privileged_app_geolocation_prompt.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_video_empty.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_play_ogv_video.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_play_webm_video.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_play_mp4_video.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr>
        <tr class="skipped results-table-row">
          <td class="col-result">Skipped</td>
          <td class="col-class"></td>
          <td class="col-name">test_play_ogg_video.py</td>
          <td class="col-duration">0</td>
          <td class="col-links"></td>
          <td class="debug">
            <div class="log">filtered by type (b2g+smoketest)<br/></div></td></tr></tbody></table></body></html>