@opcua/for-node-red 3.9.0 → 3.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -4,8 +4,7 @@
4
4
  </style>
5
5
 
6
6
  <script type="text/javascript">
7
- function _0x33c2(){const _0x226cc1=['pageX','851106ihmfOV','NodeId\x20with\x20namespace\x20Urn','each','<iframe></iframe>','subscriptions','installing\x20iframe','baseUrl','browseName','red-ui-typedInput-focus','_delay','fetched','function','data','Aliased\x20Browse\x20Path','position','SteelBlue','ReferenceType','disarmClick','sterfive-input-group','Good','#node-input-endpoint','750981yVFkJL','registerType','stringify','aliasedNodeId','$elementDiv','selectedMenuItem','failure','BrowsePath','/Server/ServerStatus/CurrentTime','input[type=\x22checkbox\x22]','click','then','Forward','inputs','string','removeClass','filter','push','call','ObjectType','installFeedbackWidget\x20','appendTo','background-color:transparent;overflow:hidden;border:3px','<option/>','status','POST','height','fa-list-alt','application/json','addClass','<button\x20title=\x22verify\x20nodeId\x20or\x20browsePath\x22><i\x20class=\x22fa\x20fa-refresh\x22></i></button>','Unspecified','focus','<i\x20class=\x22fa\x20fa-bookmark\x22/>&nbsp;\x20','requestedNodeId','browseResult','bp_aliased','assign','referenceTypeId','$verifyBtn','closest','<i\x20class=\x22fa\x20fa-bookmark\x22/><i\x20class=\x22fa\x20fa-fighter-jet\x22/>&nbsp;','<li\x20key=\x22','<span\x20title=','9ggrLIH','resolveParentNode','DataType','$input','_initMenu','<i\x20class=\x22fa\x20fa-font\x22/i>\x20','checked','blur','pointer-events','!!failure!!','Method','/browse','top','hasClass','fa-folder','nsu','message','OPCUA\x20Client\x20Monitor\x20','HasTypeDefinition','log','endpoint','element','rgba(61,\x2060,\x204,\x200.525)','407398AmFFWD','fetching\x20failed\x20with\x20error','$toggleTreeBtn','trigger','name','SeaGreen','attr','animate','remove','mode','toggleClass','<i\x20class=\x22fa\x20fa-id-card\x22/>&nbsp;\x20','<div>','replaceWith',':focus','\x22\x20style=\x22color:','options','<li>error\x20','children','verify','statusCode','18px','msg.','icon','stopPropagation','dblclick','mousedown.red-ui-typedInput-close-property-select','CadetBlue','sterfive-combo-box','Invalid','reference','forEach','nodeId:\x20','reset','multiple','OpcUa-Endpoint2','before','Organizes','<button\x20title=\x22open\x20OPCUA\x20AddressSpace\x20Browser\x22><i\x20class=\x22fa\x20fa-sitemap\x22></i></button>','expandable',');\x20-webkit-mask-image:\x20url(','#node-input-subscription','setMode','</span><ul></ul></li>','value','toString',';\x22></i>\x20','throw','30px','tabindex','right','after','\x22}><span\x20class=\x22tree-text\x22\x20title=','empty',':visible','sterfive-input-error','Aliased\x20NodeId','>&nbsp;\x20','pageY','DodgerBlue','</span>','indexOf','callback','5019280bBikKC','monitor\x20variable','node\x20id\x20or\x20\x20browse\x20path\x20comes\x20from\x20injected\x20msg\x20parameter','IsForward','180px','sterfive.nodeBrowser','label','typeDefinition','sterfive-dropdown','<span\x20class=\x22red-ui-typedInput-type-label\x22></span>','45cmFVOm','node_label_italic','displayName','sort','$combo','isTypeRef','fa-object-group','json','opcua','show','HasChild','sterfive-info','expandable\x20expanded','[value=\x27','aliased\x20NodeId:\x20','aliased\x20browsePath:\x20','change','nodeId','<i\x20class=\x22fa\x20fa-envelope-open-o\x22/>','nodeId_nsu','prop','$uiSelect','find','Object','$selectTrigger','nodes','isSelectable','$info','Variable','placeholder','SandyBrown','ns=0;i=85','currentParent','offset','true','><i\x20class=\x22fa\x20','text','nodeIds','toggle','err','keydown','<div\x20class=\x22sterfive-info-text\x22></div>','<a\x20href=\x22#\x22></a>','opts','mask-image:\x20url(','aliasedBrowsePath','_hideMenu','ns=0;i=47','558362TKPdNa','title','<i\x20class=\x22fa\x20fa-tag\x22/><i\x20class=\x22fa\x20fa-fighter-jet\x22/>&nbsp;','mousedown.red-ui-typedInput-focus-block','<i>','SuppressedError','377160TtrKcc','endpointNode','subscription','Both','TypeDefinition','16px','<ul\x20class=\x22sterfive-tree\x22></ul>','li\x20>\x20.tree-text','Inverse','hide','DisplayName','ns=0;i=45','HasProperty','NodeId','browse\x20path:\x20','__parentNode','left','<div/>','widget','expanded','slideDown','nsuNodeID','92772cXtxaQ','li[key=\x22','i=61','namespaceAliases','HasSubtype','append','$selectLabel','$tree','#C0DEED','nodeId_aliased','node','browsePath','prev','selected','preventDefault','statusText','.spinner','sterfive-typedInput-options\x20sterfive-online-menu','match','Value\x20is\x20not\x20verified','error','ns=0;i=61','$inputGroup','/opcua-for-node-red/support-frame.html','none','body','VariableType','ns=0;i=40','prependTo','_showMenu','fa-question','length','scrollTop','references','parentNode','#node-input-startImmediately','localeCompare','done','/checkNodeId','target','$menu','keyCode','absolute','DarkOrange','ns=0;i=34','join','View','Objects','#node-input-inputs','_showTypeMenu','bp_indexed','<input\x20type=\x22checkbox\x22>','val','node\x20class:\x20','loading','next','css','nodeClass','grey','.tree-text:first','/opcua-for-node-red','fa-sliders','$dropdown','<button\x20type=\x22button\x22\x20tabindex=\x220\x22></button>','20px','enter\x20a\x20nodeId\x20or\x20a\x20browsePath\x20'];_0x33c2=function(){return _0x226cc1;};return _0x33c2();}function _0x3840(_0x13f6a7,_0xa96a25){const _0x33c2ff=_0x33c2();return _0x3840=function(_0x38403c,_0x544093){_0x38403c=_0x38403c-0x147;let _0x10fde3=_0x33c2ff[_0x38403c];return _0x10fde3;},_0x3840(_0x13f6a7,_0xa96a25);}(function(_0x2d7b77,_0x29cd3c){const _0x28cf11=_0x3840,_0x3e520d=_0x2d7b77();while(!![]){try{const _0x48652e=parseInt(_0x28cf11(0x181))/0x1+-parseInt(_0x28cf11(0x232))/0x2+parseInt(_0x28cf11(0x1ef))/0x3+-parseInt(_0x28cf11(0x197))/0x4*(-parseInt(_0x28cf11(0x14b))/0x5)+parseInt(_0x28cf11(0x1da))/0x6+parseInt(_0x28cf11(0x17b))/0x7+-parseInt(_0x28cf11(0x271))/0x8*(parseInt(_0x28cf11(0x21b))/0x9);if(_0x48652e===_0x29cd3c)break;else _0x3e520d['push'](_0x3e520d['shift']());}catch(_0x45e660){_0x3e520d['push'](_0x3e520d['shift']());}}}(_0x33c2,0x375ac),(function(){'use strict';const _0xbf82a9=_0x3840;function _0x5bab38(_0x27f9f0,_0x3fd1b2,_0x231e79,_0x31b433){function _0x4f28b2(_0x6d9535){return _0x6d9535 instanceof _0x231e79?_0x6d9535:new _0x231e79(function(_0x268186){_0x268186(_0x6d9535);});}return new(_0x231e79||(_0x231e79=Promise))(function(_0x385113,_0x4644c4){const _0x1e214f=_0x3840;function _0x338ca4(_0x385d47){const _0x39a807=_0x3840;try{_0x3bd1e4(_0x31b433[_0x39a807(0x1ce)](_0x385d47));}catch(_0x420583){_0x4644c4(_0x420583);}}function _0xc66031(_0x2f1eff){const _0x5f1bb5=_0x3840;try{_0x3bd1e4(_0x31b433[_0x5f1bb5(0x261)](_0x2f1eff));}catch(_0x199257){_0x4644c4(_0x199257);}}function _0x3bd1e4(_0x5767b9){const _0x504bba=_0x3840;_0x5767b9[_0x504bba(0x1bc)]?_0x385113(_0x5767b9[_0x504bba(0x25e)]):_0x4f28b2(_0x5767b9[_0x504bba(0x25e)])[_0x504bba(0x1fa)](_0x338ca4,_0xc66031);}_0x3bd1e4((_0x31b433=_0x31b433['apply'](_0x27f9f0,_0x3fd1b2||[]))[_0x1e214f(0x1ce)]());});}typeof SuppressedError===_0xbf82a9(0x1e5)?SuppressedError:function(_0x3934b3,_0x5d1646,_0xaa858){const _0x5d9d14=_0xbf82a9;var _0x1aec2a=new Error(_0xaa858);return _0x1aec2a[_0x5d9d14(0x236)]=_0x5d9d14(0x180),_0x1aec2a['error']=_0x3934b3,_0x1aec2a['suppressed']=_0x5d1646,_0x1aec2a;};const _0x865d5b='ns=0;i=35',_0x1fc79c=_0xbf82a9(0x1ac),_0x336878=_0xbf82a9(0x17a),_0x9b0541='ns=0;i=46',_0x21b88a=_0xbf82a9(0x1c3),_0x1538af=_0xbf82a9(0x18c),_0x1b58c2=_0xbf82a9(0x1b2);var _0x474dbc;(function(_0x46f6d3){const _0x469bca=_0xbf82a9;_0x46f6d3[_0x46f6d3[_0x469bca(0x1fb)]=0x0]=_0x469bca(0x1fb),_0x46f6d3[_0x46f6d3[_0x469bca(0x189)]=0x1]=_0x469bca(0x189),_0x46f6d3[_0x46f6d3[_0x469bca(0x184)]=0x2]=_0x469bca(0x184),_0x46f6d3[_0x46f6d3[_0x469bca(0x24f)]=0x3]='Invalid';}(_0x474dbc||(_0x474dbc={})));var _0x31e538;(function(_0x33eccc){const _0x22f82b=_0xbf82a9;_0x33eccc[_0x33eccc['Unspecified']=0x0]=_0x22f82b(0x20e),_0x33eccc[_0x33eccc[_0x22f82b(0x162)]=0x1]=_0x22f82b(0x162),_0x33eccc[_0x33eccc['Variable']=0x2]=_0x22f82b(0x167),_0x33eccc[_0x33eccc['Method']=0x4]='Method',_0x33eccc[_0x33eccc[_0x22f82b(0x202)]=0x8]=_0x22f82b(0x202),_0x33eccc[_0x33eccc['VariableType']=0x10]=_0x22f82b(0x1b1),_0x33eccc[_0x33eccc['ReferenceType']=0x20]=_0x22f82b(0x1ea),_0x33eccc[_0x33eccc[_0x22f82b(0x21d)]=0x40]='DataType',_0x33eccc[_0x33eccc[_0x22f82b(0x1c5)]=0x80]=_0x22f82b(0x1c5);}(_0x31e538||(_0x31e538={})));var _0x1f7f30;(function(_0x3077ae){const _0x1d06af=_0xbf82a9;_0x3077ae[_0x3077ae[_0x1d06af(0x162)]=0x1]=_0x1d06af(0x162),_0x3077ae[_0x3077ae['Variable']=0x2]=_0x1d06af(0x167),_0x3077ae[_0x3077ae[_0x1d06af(0x225)]=0x4]=_0x1d06af(0x225),_0x3077ae[_0x3077ae[_0x1d06af(0x202)]=0x8]=_0x1d06af(0x202),_0x3077ae[_0x3077ae[_0x1d06af(0x1b1)]=0x10]=_0x1d06af(0x1b1),_0x3077ae[_0x3077ae[_0x1d06af(0x1ea)]=0x20]=_0x1d06af(0x1ea),_0x3077ae[_0x3077ae[_0x1d06af(0x21d)]=0x40]=_0x1d06af(0x21d),_0x3077ae[_0x3077ae['View']=0x80]=_0x1d06af(0x1c5);}(_0x1f7f30||(_0x1f7f30={})));var _0x5f4313;(function(_0x3747b4){const _0x5f0ab9=_0xbf82a9;_0x3747b4[_0x3747b4[_0x5f0ab9(0x1ea)]=0x1]=_0x5f0ab9(0x1ea),_0x3747b4[_0x3747b4[_0x5f0ab9(0x274)]=0x2]=_0x5f0ab9(0x274),_0x3747b4[_0x3747b4['NodeClass']=0x4]='NodeClass',_0x3747b4[_0x3747b4['BrowseName']=0x8]='BrowseName',_0x3747b4[_0x3747b4[_0x5f0ab9(0x18b)]=0x10]='DisplayName',_0x3747b4[_0x3747b4[_0x5f0ab9(0x185)]=0x20]=_0x5f0ab9(0x185);}(_0x5f4313||(_0x5f4313={})));function _0xff9d0e(_0x57edf6){const _0x7021ce=_0xbf82a9;switch(_0x57edf6){case _0x7021ce(0x257):return _0x865d5b;case _0x7021ce(0x18d):return _0x9b0541;case'HasComponent':return _0x336878;case _0x7021ce(0x155):return _0x21b88a;case _0x7021ce(0x19b):return _0x1538af;case _0x7021ce(0x22d):return _0x1b58c2;}}const _0x3b75b1=_0x4102b5=>{const _0x5a3cb4=_0xbf82a9;switch(_0x4102b5[_0x5a3cb4(0x1d0)]){case _0x5a3cb4(0x162):if(_0x4102b5[_0x5a3cb4(0x215)]===_0x865d5b);if(_0x4102b5[_0x5a3cb4(0x148)]===_0x1fc79c||_0x4102b5[_0x5a3cb4(0x215)]===_0x5a3cb4(0x199))return{'icon':_0x5a3cb4(0x229),'color':_0x5a3cb4(0x231)};return{'icon':'fa-object-group','color':_0x5a3cb4(0x237)};case'Variable':if(_0x4102b5['referenceTypeId']===_0x336878)return{'icon':_0x5a3cb4(0x20a),'color':_0x5a3cb4(0x1e9)};else return _0x4102b5[_0x5a3cb4(0x215)]===_0x9b0541?{'icon':_0x5a3cb4(0x20a),'color':_0x5a3cb4(0x26d)}:{'icon':'fa-list-alt','color':_0x5a3cb4(0x24d)};case _0x5a3cb4(0x225):return{'icon':'fa-cog','color':_0x5a3cb4(0x169)};case _0x5a3cb4(0x202):return{'icon':_0x5a3cb4(0x151),'color':'DarkOrange'};case _0x5a3cb4(0x1b1):return{'icon':_0x5a3cb4(0x1d4),'color':_0x5a3cb4(0x1c2)};case _0x5a3cb4(0x21d):return{'icon':'fa-text-width','color':_0x5a3cb4(0x24d)};}return{'icon':_0x5a3cb4(0x1b5),'color':_0x5a3cb4(0x1d1)};},_0x6901a3=(_0x369961,_0x18b37f,_0x31fd91)=>_0x5bab38(void 0x0,[_0x369961,_0x18b37f,_0x31fd91],void 0x0,function*({endpointNode:_0x3936aa,endpoint:_0x2011a5,baseUrl:_0x4ec06d},_0x56a392,_0x31ecfe){const _0x5df824=_0xbf82a9,_0xa003e0=_0x4ec06d+_0x5df824(0x1d3),_0x1dcd22=_0xa003e0+_0x5df824(0x226),_0x3b531f=Object[_0x5df824(0x214)](Object[_0x5df824(0x214)]({},_0x31ecfe),{'nodeId':_0x56a392,'resultMask':0x3f}),_0x16d116=yield fetch(_0x1dcd22,{'method':_0x5df824(0x208),'body':JSON[_0x5df824(0x1f1)]({'endpointNode':_0x3936aa,'endpoint':_0x2011a5,'browseDescription':_0x3b531f}),'headers':{'Content-Type':_0x5df824(0x20b)}});if(_0x16d116[_0x5df824(0x207)]!==0xc8)return console[_0x5df824(0x22e)](_0x5df824(0x233),_0x16d116[_0x5df824(0x207)],_0x16d116[_0x5df824(0x1a6)]),{'references':[]};const _0x6e1212=yield _0x16d116['json'](),_0xb7a048=_0x6e1212[_0x5df824(0x212)][_0x5df824(0x1b8)]||[];return{'references':_0xb7a048};}),_0x4c542c={'referenceTypeId':_0xff9d0e(_0xbf82a9(0x155)),'includeSubtypes':!![],'browseDirection':_0x474dbc[_0xbf82a9(0x1fb)],'nodeClassMask':_0x31e538[_0xbf82a9(0x167)]|_0x31e538[_0xbf82a9(0x162)]|_0x31e538[_0xbf82a9(0x225)],'resultMask':0x3f},_0x4ab1c3={'referenceTypeId':_0xff9d0e(_0xbf82a9(0x257)),'includeSubtypes':!![],'browseDirection':_0x474dbc[_0xbf82a9(0x1fb)],'nodeClassMask':_0x31e538[_0xbf82a9(0x167)]|_0x31e538[_0xbf82a9(0x162)]|_0x31e538[_0xbf82a9(0x225)],'resultMask':0x3f},_0x259ca4=(_0x3f5829,_0x40e023)=>_0x5bab38(void 0x0,[_0x3f5829,_0x40e023],void 0x0,function*({endpointNode:_0x16f106,endpoint:_0x14c2a5,baseUrl:_0x46c305},{nodeId:_0x4adaa3,rootNodeId:_0x59b5ec,isType:_0x2cb482}){const _0x5b4681=_0xbf82a9,_0xe86ceb=_0x46c305+_0x5b4681(0x1d3),_0x353dd0=_0xe86ceb+'/walk-backward',_0x5e478f=yield fetch(_0x353dd0,{'method':_0x5b4681(0x208),'body':JSON[_0x5b4681(0x1f1)]({'endpointNode':_0x16f106,'endpoint':_0x14c2a5,'nodeId':_0x4adaa3,'rootNodeId':_0x59b5ec,'isType':_0x2cb482}),'headers':{'Content-Type':_0x5b4681(0x20b)}});if(_0x5e478f[_0x5b4681(0x207)]!==0xc8)return null;const _0x50a44e=yield _0x5e478f[_0x5b4681(0x152)]();return _0x50a44e[_0x5b4681(0x1a2)];}),_0x39771e=(_0x4e7e2e,_0x36e354)=>{const _0x282c75=_0xbf82a9;if(_0x4e7e2e['statusCode']!=='Good')return _0x4e7e2e[_0x282c75(0x211)];switch(_0x36e354){case _0x282c75(0x1a2):return _0x4e7e2e[_0x282c75(0x1c9)];case'aliasedBrowsePath':return _0x4e7e2e[_0x282c75(0x213)]||_0x4e7e2e[_0x282c75(0x1c9)];case'aliasedNodeId':return _0x4e7e2e[_0x282c75(0x1a0)]||_0x4e7e2e[_0x282c75(0x15e)];case'nsuNodeID':return _0x4e7e2e['nodeId_nsu'];default:case _0x282c75(0x15c):return _0x4e7e2e[_0x282c75(0x15c)];}},_0x2f225b=_0x383924=>{const _0x29d3e4=_0xbf82a9;if(_0x383924[_0x29d3e4(0x246)]!==_0x29d3e4(0x1ed))return'statusCode:\x20'+_0x383924[_0x29d3e4(0x246)];else{let _0x269747=[];return _0x269747[_0x29d3e4(0x200)](_0x29d3e4(0x252)+_0x383924['nodeId']),_0x269747[_0x29d3e4(0x200)](_0x29d3e4(0x18f)+_0x383924[_0x29d3e4(0x1c9)]),_0x269747[_0x29d3e4(0x200)](_0x29d3e4(0x1cc)+_0x31e538[_0x383924[_0x29d3e4(0x1d0)]]),_0x383924[_0x29d3e4(0x15e)]&&_0x269747[_0x29d3e4(0x200)]('nsu\x20nodeId:\x20'+_0x383924['nodeId_nsu']),_0x383924[_0x29d3e4(0x1a0)]&&_0x269747['push'](_0x29d3e4(0x159)+_0x383924['nodeId_aliased']),_0x383924[_0x29d3e4(0x1c9)]&&_0x269747['push'](_0x29d3e4(0x15a)+_0x383924[_0x29d3e4(0x213)]),_0x269747[_0x29d3e4(0x1c4)]('\x0a');}};function _0x38cb49(_0x4e45b3){const _0x4821f5=_0xbf82a9;if(_0x4e45b3[_0x4821f5(0x1a9)](/^nsu=/))return _0x4821f5(0x196);if(_0x4e45b3[_0x4821f5(0x1a9)](/^(ns=.*;)?(i|b|s|g)=/))return'nodeId';if(_0x4e45b3[_0x4821f5(0x1a9)](/^nsa=/))return'aliasedNodeId';if(_0x4e45b3[_0x4821f5(0x1a9)](/^(\/|\.)[0-9]+:/))return _0x4821f5(0x1a2);if(_0x4e45b3[_0x4821f5(0x1a9)](/^(\/|\.).*:/))return _0x4821f5(0x1a2);}function _0x2df7c6(_0x5cb24d){const _0x2fed02=_0xbf82a9,_0x2eba4e=_0x38cb49(_0x5cb24d);switch(_0x2eba4e){case'nodeId':return'n';case _0x2fed02(0x1f2):return'na';case _0x2fed02(0x196):return'nsu';case _0x2fed02(0x1a2):return'b';case _0x2fed02(0x178):return'ab';default:return't';}}function _0x4b1bc3(_0x2acbf1){const _0x3cd555=_0xbf82a9;let _0x444858;switch(_0x2acbf1){case'n':_0x444858='nodeId';break;case'na':_0x444858=_0x3cd555(0x1f2);break;case _0x3cd555(0x22a):_0x444858=_0x3cd555(0x196);break;case'b':_0x444858='browsePath';break;case'ab':_0x444858=_0x3cd555(0x178);break;}return _0x444858;}function _0x111373(_0x34541a){const _0x3ab338=_0xbf82a9;switch(_0x34541a){case _0x3ab338(0x15c):return'n';case _0x3ab338(0x1f2):return'na';case _0x3ab338(0x196):return _0x3ab338(0x22a);case'browsePath':return'b';case'aliasedBrowsePath':return'ab';default:return't';}}const _0x22ab06=(_0x28e31f,_0x32fe60)=>_0x5bab38(void 0x0,[_0x28e31f,_0x32fe60],void 0x0,function*({endpointNode:_0x20ccae,endpoint:_0x47f4f7,baseUrl:_0x4aa8d8},_0x38ee30){const _0x327247=_0xbf82a9,_0xeda922=_0x4aa8d8+_0x327247(0x1d3),_0x11d3d9=_0xeda922+_0x327247(0x1bd),_0x9fa5f1=_0x20ccae['id'],_0x45ad3e=RED[_0x327247(0x164)][_0x327247(0x1a1)](_0x9fa5f1);console[_0x327247(0x22e)](_0x45ad3e[_0x327247(0x19a)]),_0x45ad3e[_0x327247(0x19a)];const _0x16115f=_0x20ccae[_0x327247(0x19a)],_0xb9f567=yield fetch(_0x11d3d9,{'method':_0x327247(0x208),'body':JSON[_0x327247(0x1f1)]({'endpointNode':_0x20ccae,'endpoint':_0x47f4f7,'nodeId':_0x38ee30,'namespaceAliases':_0x16115f}),'headers':{'Content-Type':_0x327247(0x20b)}}),_0x22b368=yield _0xb9f567[_0x327247(0x152)]();return{'json':_0x22b368,'data':_0xb9f567};}),_0x15af44=(_0x62bff0,_0x361d33,_0x4c33d9,_0x3ce383)=>_0x5bab38(void 0x0,[_0x62bff0,_0x361d33,_0x4c33d9,_0x3ce383],void 0x0,function*({endpointNode:_0x2a14e2,endpoint:_0x125ab1,baseUrl:_0x17a9b8},_0x355770,_0x2116ac,_0x555798){const _0xda5a5d=_0xbf82a9,_0x176477=_0x2116ac[_0xda5a5d(0x1cb)](),{json:_0x330132,data:_0x117aa3}=yield _0x22ab06({'endpointNode':_0x2a14e2,'endpoint':_0x125ab1,'baseUrl':_0x17a9b8},_0x176477),_0x426547=(_0x2b6f9b,_0x3c66f6)=>{const _0x484934=_0xda5a5d;_0x555798[_0x484934(0x16f)](_0x2b6f9b)[_0x484934(0x20c)](_0x484934(0x156))[_0x484934(0x20c)](_0x3c66f6),_0x555798[_0x484934(0x154)](),setTimeout(()=>{const _0x2e98d7=_0x484934;_0x555798[_0x2e98d7(0x1fe)](_0x3c66f6),_0x555798[_0x2e98d7(0x18a)]();},0xbb8);};if(_0x117aa3[_0xda5a5d(0x207)]!==0xc8)return _0x426547(_0xda5a5d(0x224)+_0x176477,_0xda5a5d(0x1f5)),![];else{if(_0x330132[_0xda5a5d(0x246)][_0xda5a5d(0x1a9)](/Good/)){const _0x1a871d=_0x2f225b(_0x330132);_0x2116ac['attr'](_0xda5a5d(0x17c),_0x1a871d);const _0x203f32=_0x39771e(_0x330132,_0x355770);return _0x2116ac['val'](_0x203f32),_0x2116ac['trigger'](_0xda5a5d(0x15b)),_0x426547('Good','ok'),!![];}else return _0x2116ac['val'](''+_0x176477),_0x426547(_0x330132[_0xda5a5d(0x246)]+'\x20'+_0x117aa3['statusText'],_0xda5a5d(0x1f5)),![];}});function _0x258af8(_0x3962dd,_0x5796a5){return _0x5bab38(this,void 0x0,void 0x0,function*(){const _0x13fcad=_0x3840,_0xad949f=_0x3962dd['data'](_0x13fcad(0x25e)),_0x2df533=yield _0x6901a3(_0x5796a5,_0xad949f,_0x4c542c),_0x49de27=yield _0x6901a3(_0x5796a5,_0xad949f,_0x4ab1c3);return{'references':[..._0x2df533[_0x13fcad(0x1b8)],..._0x49de27['references']]};});}const _0x2d3db5={'referenceTypeId':_0xff9d0e(_0xbf82a9(0x19b)),'includeSubtypes':!![],'browseDirection':_0x474dbc[_0xbf82a9(0x1fb)],'nodeClassMask':_0x31e538[_0xbf82a9(0x1ea)]|_0x31e538[_0xbf82a9(0x202)]|_0x31e538[_0xbf82a9(0x21d)]|_0x31e538[_0xbf82a9(0x1b1)],'resultMask':0x3f};function _0x155023(_0x5e71c5,_0x515d03){return _0x5bab38(this,void 0x0,void 0x0,function*(){const _0x361dd4=_0x3840,_0xc827de=_0x5e71c5[_0x361dd4(0x1e6)]('value'),_0x295d88=yield _0x6901a3(_0x515d03,_0xc827de,_0x2d3db5);return _0x295d88;});}const _0x2ce175=_0x2fa5a8=>{const _0x3ca271=_0xbf82a9;var _0x149582,_0x59ede8,_0x249526,_0x5c37cd;if(!_0x2fa5a8||!_0x2fa5a8['nodeId']){const _0x1e1f55=$('<li><i\x20class=\x22fa\x20fa-error\x22\x20style=\x22color:red;\x22></i>no\x20reference\x20!<ul></ul></li>');return _0x1e1f55;}const _0x3a2e7a=_0x2fa5a8[_0x3ca271(0x15c)][_0x3ca271(0x25f)](),_0x5c44a5=((_0x149582=_0x2fa5a8[_0x3ca271(0x14d)])===null||_0x149582===void 0x0?void 0x0:_0x149582[_0x3ca271(0x16f)])||((_0x59ede8=_0x2fa5a8['browseName'])===null||_0x59ede8===void 0x0?void 0x0:_0x59ede8[_0x3ca271(0x236)])||_0x2fa5a8['nodeId'][_0x3ca271(0x25f)](),{icon:_0x3a352b,color:_0x4553e8}=_0x3b75b1(_0x2fa5a8),_0x5647f8='('+_0x2fa5a8[_0x3ca271(0x15c)]['toString']()+')\x20'+(((_0x249526=_0x2fa5a8[_0x3ca271(0x1e1)])===null||_0x249526===void 0x0?void 0x0:_0x249526[_0x3ca271(0x236)])||((_0x5c37cd=_0x2fa5a8[_0x3ca271(0x14d)])===null||_0x5c37cd===void 0x0?void 0x0:_0x5c37cd['text'])||''),_0x4530b0=$(_0x3ca271(0x219)+_0x2fa5a8[_0x3ca271(0x15c)][_0x3ca271(0x25f)]()+_0x3ca271(0x266)+_0x5647f8+_0x3ca271(0x16e)+_0x3a352b+_0x3ca271(0x241)+_0x4553e8+_0x3ca271(0x260)+_0x5c44a5+_0x3ca271(0x25d));return _0x4530b0['addClass'](_0x3ca271(0x259)),_0x4530b0['data'](_0x3ca271(0x25e),_0x3a2e7a),_0x4530b0[_0x3ca271(0x1e6)](_0x3ca271(0x250),_0x2fa5a8),_0x4530b0;},_0x5097d0=(_0x38b72a,_0x2cee15)=>{const _0x4c9d25=_0xbf82a9;return _0x2cee15[_0x4c9d25(0x161)](_0x4c9d25(0x198)+_0x38b72a+'\x22]');},_0x5326e0=(_0x140170,_0x348b0c)=>{const _0x1e5cab=_0xbf82a9;_0x140170['$tree']['find'](_0x1e5cab(0x188))[_0x1e5cab(0x1fe)](_0x1e5cab(0x1a4)),_0x348b0c[_0x1e5cab(0x161)](_0x1e5cab(0x1d2))['addClass'](_0x1e5cab(0x1a4));},_0x9887c2=(_0x23de6f,_0x3661e2,_0x23c9fe)=>_0x5bab38(void 0x0,void 0x0,void 0x0,function*(){const _0x56fc87=_0xbf82a9;let _0x4b27f1=_0x23c9fe[_0x56fc87(0x244)](':first');_0x3661e2['relativePath']['elements']||[];const _0x2fabc3=_0x3661e2[_0x56fc87(0x170)]||[];if(_0x2fabc3[_0x56fc87(0x1b6)]===0x0)return;for(const _0x531083 of _0x2fabc3){_0x4b27f1['hasClass'](_0x56fc87(0x259))&&(yield _0x561dce(_0x23de6f,_0x4b27f1));const _0xf5ee2=_0x5097d0(_0x531083,_0x4b27f1);if(_0xf5ee2[_0x56fc87(0x1b6)]===0x0)return;_0x4b27f1=_0xf5ee2;}_0x5326e0(_0x23de6f,_0x4b27f1),_0x29c948(_0x23de6f[_0x56fc87(0x1d5)],_0x4b27f1);});function _0x29c948(_0x9d47cb,_0x46dd13){const _0x484ad1=_0xbf82a9,_0x488208=_0x46dd13[_0x484ad1(0x1e8)]()['top'],_0x2fd423=_0x9d47cb[_0x484ad1(0x1b7)]();if(_0x2fd423==undefined)return;const _0x1ca86a=_0x2fd423+_0x488208-_0x9d47cb[_0x484ad1(0x209)]()/0x2+_0x46dd13[_0x484ad1(0x209)]()/0x2;_0x9d47cb[_0x484ad1(0x239)]({'scrollTop':_0x1ca86a},0x1f4);}const _0x8a5f37=(_0x2fdf45,_0x2bed7d)=>_0x5bab38(void 0x0,void 0x0,void 0x0,function*(){const _0x3519d4=_0xbf82a9,_0x14d5af=_0x2fdf45[_0x3519d4(0x21e)][_0x3519d4(0x1cb)](),_0x566dad={'nodeId':_0x14d5af,'rootNodeId':_0x2bed7d[_0x3519d4(0x15c)],'isType':_0x2fdf45[_0x3519d4(0x242)][_0x3519d4(0x150)]||![]},_0x16a10c=_0x2ffeab(_0x2fdf45),_0x84e39=yield _0x259ca4(_0x16a10c,_0x566dad);if(!_0x84e39)return;yield _0x9887c2(_0x2fdf45,_0x84e39,_0x2fdf45[_0x3519d4(0x19e)]);});function _0x2f0efb(_0x3a8e44,_0x5aaa78,_0x1fbac4,_0x5a4c79){return _0x5bab38(this,void 0x0,void 0x0,function*(){const _0x45a18b=_0x3840;if(_0x5aaa78['hasClass'](_0x45a18b(0x1e4))){console[_0x45a18b(0x22e)]('already\x20fetched');return;}if(_0x5aaa78[_0x45a18b(0x228)](_0x45a18b(0x1cd))){console[_0x45a18b(0x22e)]('already\x20loading');return;}_0x5aaa78[_0x45a18b(0x20c)](_0x45a18b(0x1cd)),_0x5aaa78['append']('<div\x20class=\x22spinner\x22></div>');try{_0x5aaa78[_0x45a18b(0x244)]('ul')[_0x45a18b(0x267)]();const {references:_0x112c23}=yield _0x1fbac4(_0x5aaa78,_0x5a4c79);_0x112c23[_0x45a18b(0x14e)]((_0xa7e76a,_0x3c2a07)=>{const _0x9e2dde=_0x45a18b;var _0x47cfe6,_0x4e7f5c;return(((_0x47cfe6=_0xa7e76a[_0x9e2dde(0x1e1)])===null||_0x47cfe6===void 0x0?void 0x0:_0x47cfe6[_0x9e2dde(0x236)])||'')[_0x9e2dde(0x1bb)](((_0x4e7f5c=_0x3c2a07['browseName'])===null||_0x4e7f5c===void 0x0?void 0x0:_0x4e7f5c['name'])||'');});for(const _0x55b0f9 of _0x112c23){if(_0x3a8e44[_0x45a18b(0x242)]['filter']&&!_0x3a8e44[_0x45a18b(0x242)][_0x45a18b(0x1ff)](_0x55b0f9))continue;const _0x2c799a=_0x2ce175(_0x55b0f9);_0x5aaa78[_0x45a18b(0x244)]('ul')[_0x45a18b(0x19c)](_0x2c799a);}_0x5aaa78['addClass'](_0x45a18b(0x1e4));}catch(_0x3c5ea6){_0x5aaa78['children']('ul')[_0x45a18b(0x19c)](_0x45a18b(0x243)+_0x3c5ea6[_0x45a18b(0x22b)]+'</li>'),console['log'](_0x45a18b(0x172),_0x3c5ea6);}_0x5aaa78[_0x45a18b(0x161)](_0x45a18b(0x1a7))['remove'](),_0x5aaa78[_0x45a18b(0x1fe)](_0x45a18b(0x1cd));});}function _0x2ffeab(_0x546de9){const _0x1fade4=_0xbf82a9,_0x402a73={'baseUrl':_0x546de9['options'][_0x1fade4(0x1e0)],'endpointNode':typeof _0x546de9[_0x1fade4(0x242)]['endpointNode']===_0x1fade4(0x1e5)?_0x546de9[_0x1fade4(0x242)]['endpointNode']():_0x546de9[_0x1fade4(0x242)][_0x1fade4(0x182)],'endpoint':typeof _0x546de9['options']['endpoint']===_0x1fade4(0x1e5)?_0x546de9['options'][_0x1fade4(0x22f)]():_0x546de9[_0x1fade4(0x242)][_0x1fade4(0x22f)]};return _0x402a73;}function _0x561dce(_0x562722,_0x4b8556){return _0x5bab38(this,void 0x0,void 0x0,function*(){const _0x2a714d=_0x3840;if(_0x4b8556[_0x2a714d(0x228)](_0x2a714d(0x1e4))){_0x4b8556[_0x2a714d(0x1fe)](_0x2a714d(0x259))[_0x2a714d(0x20c)](_0x2a714d(0x194)),_0x4b8556[_0x2a714d(0x244)]('ul')[_0x2a714d(0x171)]();return;}const _0x1b4faa=_0x2ffeab(_0x562722),_0x410e5c=!_0x562722[_0x2a714d(0x242)][_0x2a714d(0x150)]?_0x258af8:_0x155023;try{yield _0x2f0efb(_0x562722,_0x4b8556,_0x410e5c,_0x1b4faa),_0x4b8556[_0x2a714d(0x1fe)]('expandable')['addClass'](_0x2a714d(0x194));}catch(_0x45bae5){_0x4b8556[_0x2a714d(0x1fe)](_0x2a714d(0x259))['addClass'](_0x2a714d(0x194)),console[_0x2a714d(0x22e)](_0x2a714d(0x1ab),_0x45bae5);}});}const _0x2e0a74={'browseName':{'namespaceIndex':0x0,'name':_0xbf82a9(0x1c6)},'nodeClass':_0xbf82a9(0x162),'nodeId':_0xbf82a9(0x16a),'displayName':{'text':'Objects'},'typeDefinition':_0x1fc79c},_0x1cd5a0=()=>{const _0xaf1e31=_0xbf82a9;$[_0xaf1e31(0x193)](_0xaf1e31(0x276),{'options':{'endpointNode':()=>({'endpoint':'opc.tcp://opcuademo.sterfive.com:26543'}),'endpoint':()=>undefined,'parentNode':()=>_0x2e0a74,'filter':()=>!![],'baseUrl':'','isTypeRef':![]},'resolveParentNode'(){return _0x5bab38(this,void 0x0,void 0x0,function*(){const _0x36a6d5=_0x3840,_0x1b8473=this;if(_0x1b8473[_0x36a6d5(0x190)]==undefined){const _0x52b0c7=typeof _0x1b8473[_0x36a6d5(0x242)][_0x36a6d5(0x1b9)]===_0x36a6d5(0x1e5)?_0x1b8473[_0x36a6d5(0x242)][_0x36a6d5(0x1b9)][_0x36a6d5(0x201)](_0x1b8473):_0x1b8473['options'][_0x36a6d5(0x1b9)];if(_0x52b0c7 instanceof Promise){const _0x5a45aa=yield _0x52b0c7;_0x1b8473['__parentNode']=_0x5a45aa;}else _0x1b8473[_0x36a6d5(0x190)]=_0x52b0c7;}return _0x1b8473[_0x36a6d5(0x190)]||_0x2e0a74;});},'reset'(){return _0x5bab38(this,void 0x0,void 0x0,function*(){const _0x2ba3d9=_0x3840,_0x3c8682=this,_0x41ab99=_0x3c8682;_0x41ab99[_0x2ba3d9(0x190)]=undefined,_0x3c8682['$tree'][_0x2ba3d9(0x267)]();const _0x460e46=yield this[_0x2ba3d9(0x21c)](),_0x38b79c=_0x2ce175(_0x460e46);_0x3c8682['$tree']['append'](_0x38b79c),_0x3c8682[_0x2ba3d9(0x16b)]=_0x460e46;});},'verify'(_0x457591){const _0x447c25=_0xaf1e31,_0x1e70fd=this,_0x1984c3=_0x2ffeab(_0x1e70fd);_0x15af44(_0x1984c3,_0x457591,_0x1e70fd[_0x447c25(0x21e)],_0x1e70fd[_0x447c25(0x166)])['then'](_0x162fdb=>{const _0x3fe068=_0x447c25;!_0x162fdb?_0x1e70fd[_0x3fe068(0x14f)]['addClass'](_0x3fe068(0x269)):_0x1e70fd[_0x3fe068(0x14f)][_0x3fe068(0x1fe)](_0x3fe068(0x269));});},'_hideMenu'(_0x3c227f){const _0x35dd15=_0xaf1e31,_0xe7c49b=this;$(document)['off']('mousedown.red-ui-typedInput-close-property-select'),_0x3c227f[_0x35dd15(0x18a)](),_0x3c227f[_0x35dd15(0x1cf)]({'height':'auto'});if(_0x3c227f[_0x35dd15(0x176)][_0x35dd15(0x254)]){var _0x5ee57f=[];_0x3c227f[_0x35dd15(0x161)](_0x35dd15(0x1f8))[_0x35dd15(0x1dc)](function(){const _0x4255e0=_0x35dd15;$(this)[_0x4255e0(0x15f)]('checked')&&_0x5ee57f['push']($(this)[_0x4255e0(0x1e6)](_0x4255e0(0x25e)));}),_0x3c227f[_0x35dd15(0x270)](_0x5ee57f);}_0xe7c49b[_0x35dd15(0x1f3)]['is'](_0x35dd15(0x268))?_0xe7c49b[_0x35dd15(0x21e)][_0x35dd15(0x235)](_0x35dd15(0x20f)):_0xe7c49b[_0x35dd15(0x163)][_0x35dd15(0x235)](_0x35dd15(0x20f));},'_createMenu'(_0x338f5c,_0x3b82cf,_0x269901){const _0x51d9cf=_0xaf1e31;var _0x21cfdc=this;const _0x163294=$('<div>')[_0x51d9cf(0x20c)](_0x51d9cf(0x1a8));return _0x163294[_0x51d9cf(0x176)]=_0x3b82cf,_0x163294[_0x51d9cf(0x270)]=_0x269901,_0x338f5c[_0x51d9cf(0x251)](_0x532520=>{const _0x202dbf=_0x51d9cf;typeof _0x532520===_0x202dbf(0x1fd)&&(_0x532520={'value':_0x532520,'label':_0x532520});var _0x11b60d=$(_0x202dbf(0x175))[_0x202dbf(0x238)](_0x202dbf(0x25e),_0x532520[_0x202dbf(0x25e)])[_0x202dbf(0x204)](_0x163294);_0x532520['label']&&_0x11b60d['text'](_0x532520['label']);_0x532520[_0x202dbf(0x17c)]&&_0x11b60d[_0x202dbf(0x15f)](_0x202dbf(0x17c),_0x532520[_0x202dbf(0x17c)]);if(_0x532520[_0x202dbf(0x249)]){if(_0x532520[_0x202dbf(0x249)][_0x202dbf(0x26f)]('<')===0x0)$(_0x532520[_0x202dbf(0x249)])[_0x202dbf(0x1b3)](_0x11b60d);else _0x532520['icon'][_0x202dbf(0x26f)]('/')!==-0x1?$(_0x202dbf(0x17f),{'class':'red-ui-typedInput-icon','style':_0x202dbf(0x177)+_0x532520[_0x202dbf(0x249)]+_0x202dbf(0x25a)+_0x532520['icon']+');'})[_0x202dbf(0x1b3)](_0x11b60d):$(_0x202dbf(0x17f),{'class':'red-ui-typedInput-icon\x20'+_0x532520[_0x202dbf(0x249)]})[_0x202dbf(0x1b3)](_0x11b60d);}else _0x11b60d['css']({'paddingLeft':_0x202dbf(0x247)});!_0x532520[_0x202dbf(0x249)]&&!_0x532520[_0x202dbf(0x147)]&&_0x11b60d[_0x202dbf(0x16f)](_0x532520[_0x202dbf(0x25e)]);var _0x34bec6;_0x3b82cf['multiple']&&(_0x34bec6=$(_0x202dbf(0x1ca))['css'](_0x202dbf(0x223),'none')[_0x202dbf(0x1e6)](_0x202dbf(0x25e),_0x532520[_0x202dbf(0x25e)])[_0x202dbf(0x1b3)](_0x11b60d)['on']('mousedown',function(_0x1c068c){const _0x3353b6=_0x202dbf;_0x1c068c[_0x3353b6(0x1a5)]();})),_0x11b60d['on'](_0x202dbf(0x1f9),function(_0x39354b){const _0x5a8cf0=_0x202dbf;_0x39354b[_0x5a8cf0(0x1a5)](),_0x39354b['stopPropagation'](),!_0x3b82cf[_0x5a8cf0(0x254)]?(_0x269901(_0x532520['value']),_0x21cfdc[_0x5a8cf0(0x179)](_0x163294)):_0x34bec6[_0x5a8cf0(0x15f)](_0x5a8cf0(0x221),!_0x34bec6[_0x5a8cf0(0x15f)](_0x5a8cf0(0x221)));});}),_0x163294[_0x51d9cf(0x1cf)]({'display':_0x51d9cf(0x1af)}),_0x163294['on'](_0x51d9cf(0x173),function(_0x24d6cd){const _0x4cf693=_0x51d9cf;if(_0x24d6cd['keyCode']===0x28)_0x24d6cd[_0x4cf693(0x1a5)](),$(this)[_0x4cf693(0x244)](_0x4cf693(0x240))[_0x4cf693(0x1ce)]()[_0x4cf693(0x235)]('focus');else{if(_0x24d6cd[_0x4cf693(0x1c0)]===0x26)_0x24d6cd[_0x4cf693(0x1a5)](),$(this)[_0x4cf693(0x244)](_0x4cf693(0x240))[_0x4cf693(0x1a3)]()['trigger'](_0x4cf693(0x20f));else _0x24d6cd[_0x4cf693(0x1c0)]===0x1b&&(_0x24d6cd[_0x4cf693(0x1a5)](),_0x21cfdc['_hideMenu'](_0x163294));}_0x24d6cd[_0x4cf693(0x24a)]();}),_0x163294;},'disarmClick':![],'_showMenu'(_0x16da31,_0x1fcadd){const _0x1045f3=_0xaf1e31;if(this['disarmClick']){this[_0x1045f3(0x1eb)]=![];return;}var _0x3c351a=this,_0x277af7=_0x1fcadd[_0x1045f3(0x16c)](),_0x47c775=_0x1fcadd[_0x1045f3(0x209)](),_0x40dd34=_0x16da31[_0x1045f3(0x209)](),_0x5e18a5=_0x47c775+_0x277af7[_0x1045f3(0x227)];_0x5e18a5+_0x40dd34-$(document)[_0x1045f3(0x1b7)]()>$(window)[_0x1045f3(0x209)]()&&(_0x5e18a5-=_0x5e18a5+_0x40dd34-$(window)[_0x1045f3(0x209)]()+0x5),_0x5e18a5<0x0&&(_0x16da31[_0x1045f3(0x209)](_0x40dd34+_0x5e18a5),_0x5e18a5=0x0),_0x16da31['css']({'top':_0x5e18a5+'px','left':_0x277af7[_0x1045f3(0x191)]+'px'}),_0x16da31[_0x1045f3(0x195)](0x64),this[_0x1045f3(0x1e3)](function(){const _0x17ff01=_0x1045f3;_0x3c351a[_0x17ff01(0x160)]['addClass']('red-ui-typedInput-focus'),$(document)['on'](_0x17ff01(0x24c),function(_0x4eb554){const _0x585eab=_0x17ff01;!$(_0x4eb554[_0x585eab(0x1be)])[_0x585eab(0x217)](_0x16da31)[_0x585eab(0x1b6)]&&_0x3c351a['_hideMenu'](_0x16da31),$(_0x4eb554['target'])['closest'](_0x1fcadd)[_0x585eab(0x1b6)]&&(_0x3c351a[_0x585eab(0x1eb)]=!![],_0x4eb554[_0x585eab(0x1a5)]());});});},'_showTypeMenu'(){const _0xba6b98=_0xaf1e31,_0x50d983=this;this[_0xba6b98(0x1b4)](_0x50d983[_0xba6b98(0x1bf)],_0x50d983[_0xba6b98(0x14f)]),_0x50d983[_0xba6b98(0x1d5)][_0xba6b98(0x18a)]();const _0x33766f=_0x50d983[_0xba6b98(0x1f4)];var _0x343c2b=_0x50d983[_0xba6b98(0x1bf)][_0xba6b98(0x161)](_0xba6b98(0x158)+_0x33766f+'\x27');setTimeout(function(){const _0xbe44d1=_0xba6b98;_0x343c2b[_0xbe44d1(0x235)](_0xbe44d1(0x20f));},0x78);},'_initMenu'(){const _0x21479b=_0xaf1e31,_0x297a06=this;_0x297a06['$selectTrigger'][_0x21479b(0x238)](_0x21479b(0x263),-0x1),_0x297a06['$selectTrigger']['on'](_0x21479b(0x17e),function(_0x32cfa7){const _0x5d8a54=_0x21479b;_0x32cfa7[_0x5d8a54(0x1a5)]();});_0x297a06['$menu']&&_0x297a06['$menu'][_0x21479b(0x23a)]();const _0xd93e43=[{'label':'text','value':'t','title':_0x21479b(0x1aa),'icon':_0x21479b(0x220)},{'label':_0x21479b(0x248),'value':'msg','title':_0x21479b(0x273),'icon':_0x21479b(0x15d)},{'label':_0x21479b(0x18e),'value':'n','icon':'<i\x20class=\x22fa\x20fa-tag\x22/>1\x20&nbsp;\x20'},{'label':_0x21479b(0x26a),'value':'na','icon':_0x21479b(0x210)},{'label':_0x21479b(0x1db),'value':'nsu','icon':_0x21479b(0x23d)},{'label':_0x21479b(0x1f6),'value':'b','icon':_0x21479b(0x17d)},{'label':_0x21479b(0x1e7),'value':'ab','icon':_0x21479b(0x218)}],_0x1da180=_0x2df7c6(_0x297a06['$input'][_0x21479b(0x1cb)]()),_0x2a5025=_0xd93e43['find'](_0x584047=>_0x584047[_0x21479b(0x25e)]===_0x1da180);_0x297a06[_0x21479b(0x19d)][_0x21479b(0x267)]()['append']('<span\x20title='+((_0x2a5025===null||_0x2a5025===void 0x0?void 0x0:_0x2a5025['title'])||'')+_0x21479b(0x26b)+((_0x2a5025===null||_0x2a5025===void 0x0?void 0x0:_0x2a5025[_0x21479b(0x249)])||'')+_0x21479b(0x26e)),_0x297a06[_0x21479b(0x1f4)]=_0x1da180;const _0x28bc32=this;_0x297a06[_0x21479b(0x1bf)]=this['_createMenu'](_0xd93e43,{},_0x523f45=>{const _0x119913=_0x21479b,_0xc155a5=_0x4b1bc3(_0x523f45);_0xc155a5&&_0x28bc32['verify'](_0xc155a5);const _0x3305af=_0xd93e43[_0x119913(0x161)](_0x8d409b=>_0x8d409b[_0x119913(0x25e)]===_0x523f45);_0x297a06[_0x119913(0x1f4)]=_0x523f45,_0x297a06[_0x119913(0x19d)][_0x119913(0x267)]()[_0x119913(0x19c)](_0x119913(0x21a)+((_0x3305af===null||_0x3305af===void 0x0?void 0x0:_0x3305af[_0x119913(0x17c)])||'')+_0x119913(0x26b)+((_0x3305af===null||_0x3305af===void 0x0?void 0x0:_0x3305af[_0x119913(0x249)])||'')+'</span>');}),_0x297a06['$menu'][_0x21479b(0x204)](document[_0x21479b(0x1b0)]),_0x297a06[_0x21479b(0x1bf)][_0x21479b(0x18a)](),_0x297a06[_0x21479b(0x163)][_0x21479b(0x154)]();},'mode'(){const _0x1d7c68=_0xaf1e31,_0x281af5=this;return _0x4b1bc3(_0x281af5[_0x1d7c68(0x1f4)]);},'setMode'(_0x59b7d7){const _0x270681=_0xaf1e31,_0x27a193=this,_0x52d509=_0x111373(_0x59b7d7);_0x27a193[_0x270681(0x1f4)]=_0x52d509;},'_create'(){const _0xa5b54e=_0xaf1e31,_0x27b327=this;_0x27b327[_0xa5b54e(0x21e)]=this[_0xa5b54e(0x230)],_0x27b327[_0xa5b54e(0x21e)][_0xa5b54e(0x1cf)]('border',_0xa5b54e(0x1af)),_0x27b327[_0xa5b54e(0x1f3)]=_0x27b327['$input']['wrap']('<div>')['parent']()['addClass']('main-wrapper'),_0x27b327[_0xa5b54e(0x14f)]=$('<div/>'),_0x27b327[_0xa5b54e(0x14f)][_0xa5b54e(0x20c)](_0xa5b54e(0x24e)),_0x27b327[_0xa5b54e(0x21e)][_0xa5b54e(0x23f)](_0x27b327[_0xa5b54e(0x14f)]),_0x27b327[_0xa5b54e(0x1ad)]=$(_0xa5b54e(0x192))['addClass'](_0xa5b54e(0x1ec)),_0x27b327[_0xa5b54e(0x14f)][_0xa5b54e(0x19c)](_0x27b327[_0xa5b54e(0x1ad)]),_0x27b327[_0xa5b54e(0x1ad)][_0xa5b54e(0x19c)](_0x27b327[_0xa5b54e(0x21e)]),_0x27b327[_0xa5b54e(0x234)]=$(_0xa5b54e(0x258)),_0x27b327[_0xa5b54e(0x21e)][_0xa5b54e(0x265)](_0x27b327[_0xa5b54e(0x234)]),_0x27b327['$toggleTreeBtn']['on'](_0xa5b54e(0x1f9),function(){return _0x5bab38(this,void 0x0,void 0x0,function*(){const _0x43f848=_0x3840;var _0x380d87;let _0x5b6db6=![],_0x20092a;!_0x27b327[_0x43f848(0x1d5)]['is'](_0x43f848(0x268))&&(_0x27b327['$info'][_0x43f848(0x18a)](),_0x20092a=yield _0x27b327[_0x43f848(0x21c)](),(_0x20092a!==_0x27b327[_0x43f848(0x16b)]||((_0x380d87=_0x27b327[_0x43f848(0x16b)])===null||_0x380d87===void 0x0?void 0x0:_0x380d87[_0x43f848(0x15c)])!==_0x20092a[_0x43f848(0x15c)])&&(yield _0x27b327[_0x43f848(0x253)]()),_0x5b6db6=!![]),_0x27b327[_0x43f848(0x1d5)]['toggle'](),_0x5b6db6&&(yield _0x8a5f37(_0x27b327,_0x20092a));});}),_0x27b327[_0xa5b54e(0x216)]=$(_0xa5b54e(0x20d)),_0x27b327[_0xa5b54e(0x21e)][_0xa5b54e(0x265)](_0x27b327[_0xa5b54e(0x216)]),_0x27b327[_0xa5b54e(0x216)]['on']('click',()=>{const _0x300b85=_0xa5b54e,_0x456d62=_0x27b327['mode']();if(!_0x456d62)return;this[_0x300b85(0x245)](_0x456d62);});const _0x11191e=_0xd9d03f=>_0x5bab38(this,void 0x0,void 0x0,function*(){const _0x1517d4=_0xa5b54e,_0x5f0113=this;let _0x22b393=_0x5f0113['mode']();if(!_0x22b393)return;const _0x5295c1=_0x2ffeab(_0x5f0113),{data:_0x55ed74,json:_0x11e44a}=yield _0x22ab06(_0x5295c1,_0xd9d03f);if(_0x55ed74['status']!==0xc8)return;if(_0x11e44a[_0x1517d4(0x246)][_0x1517d4(0x1a9)](/Good/)){const _0xc4b99d=_0x39771e(_0x11e44a,_0x22b393);_0x5f0113[_0x1517d4(0x21e)][_0x1517d4(0x1cb)](_0xc4b99d),_0x5f0113[_0x1517d4(0x21e)][_0x1517d4(0x235)]('change');}});{_0x27b327[_0xa5b54e(0x160)]=$(_0xa5b54e(0x23e)),_0x27b327[_0xa5b54e(0x21e)][_0xa5b54e(0x256)](_0x27b327[_0xa5b54e(0x160)]),_0x27b327[_0xa5b54e(0x163)]=$(_0xa5b54e(0x1d6))[_0xa5b54e(0x1b3)](_0x27b327[_0xa5b54e(0x160)]),$('<i\x20class=\x22red-ui-typedInput-icon\x20fa\x20fa-caret-down\x22></i>')[_0xa5b54e(0x171)](!![])[_0xa5b54e(0x204)](_0x27b327[_0xa5b54e(0x163)]),_0x27b327['$selectTrigger']['on'](_0xa5b54e(0x1f9),function(_0x2980eb){const _0x3a100d=_0xa5b54e;_0x2980eb[_0x3a100d(0x1a5)](),_0x2980eb['stopPropagation'](),_0x27b327['_showTypeMenu']();}),_0x27b327[_0xa5b54e(0x163)]['on'](_0xa5b54e(0x173),function(_0xcb08){const _0x34aa4d=_0xa5b54e;_0xcb08[_0x34aa4d(0x1c0)]===0x28&&_0x27b327[_0x34aa4d(0x1c8)](),_0xcb08[_0x34aa4d(0x24a)]();})['on']('focus',function(){const _0x5cd223=_0xa5b54e;_0x27b327[_0x5cd223(0x160)][_0x5cd223(0x20c)](_0x5cd223(0x1e2));})['on'](_0xa5b54e(0x222),function(){const _0x5b4077=_0xa5b54e;_0x27b327[_0x5b4077(0x160)][_0x5b4077(0x1fe)]('red-ui-typedInput-focus');}),_0x27b327['$selectLabel']=$(_0xa5b54e(0x14a))[_0xa5b54e(0x204)](_0x27b327[_0xa5b54e(0x163)]);}this[_0xa5b54e(0x21f)]();!_0x27b327[_0xa5b54e(0x21e)][_0xa5b54e(0x238)](_0xa5b54e(0x168))&&_0x27b327[_0xa5b54e(0x21e)]['attr'](_0xa5b54e(0x168),_0xa5b54e(0x1d8));_0x27b327[_0xa5b54e(0x166)]=$(_0xa5b54e(0x174)),_0x27b327['$info'][_0xa5b54e(0x18a)](),_0x27b327[_0xa5b54e(0x14f)][_0xa5b54e(0x19c)](_0x27b327[_0xa5b54e(0x166)]),_0x27b327['$dropdown']=$(_0xa5b54e(0x192))[_0xa5b54e(0x20c)](_0xa5b54e(0x149))[_0xa5b54e(0x18a)]()['appendTo'](_0x27b327[_0xa5b54e(0x14f)]),_0x27b327['$tree']=$(_0xa5b54e(0x187))[_0xa5b54e(0x204)](_0x27b327['$dropdown']),this[_0xa5b54e(0x253)]();const _0xf1b21f=(_0x290f26,_0x407378)=>{const _0x2e0f6b=_0xa5b54e,_0x352121=0x14,_0x466f9e=0x14,_0x4f8d24=_0x290f26[_0x2e0f6b(0x16c)](),_0x254a7d=_0x407378;if(_0x254a7d[_0x2e0f6b(0x1d9)]>=_0x4f8d24[_0x2e0f6b(0x191)]&&_0x254a7d[_0x2e0f6b(0x1d9)]<=_0x4f8d24['left']+_0x352121&&_0x254a7d[_0x2e0f6b(0x26c)]>=_0x4f8d24['top']&&_0x254a7d[_0x2e0f6b(0x26c)]<=_0x4f8d24[_0x2e0f6b(0x227)]+_0x466f9e)return!![];return![];},_0x325753=_0x1af64e=>_0x5bab38(this,void 0x0,void 0x0,function*(){const _0x170733=_0xa5b54e;if(_0x1af64e['hasClass'](_0x170733(0x259)))_0x561dce(_0x27b327,_0x1af64e);else{if(_0x1af64e[_0x170733(0x228)](_0x170733(0x194)))_0x1af64e[_0x170733(0x244)]('ul')[_0x170733(0x171)](),_0x1af64e[_0x170733(0x23c)](_0x170733(0x157));else{if(_0x1af64e[_0x170733(0x244)]('ul')[_0x170733(0x244)]()[_0x170733(0x1b6)]>0x0)_0x1af64e[_0x170733(0x244)]('ul')[_0x170733(0x171)](),_0x1af64e['toggleClass']('expandable\x20expanded');else;}}});_0x27b327[_0xa5b54e(0x19e)]['on'](_0xa5b54e(0x24b),'li',function(_0x364c3d){const _0xa84e84=_0xa5b54e;var _0x57c5d1,_0x50af37;_0x364c3d[_0xa84e84(0x24a)]();let _0x36e900=$(this);if(_0xf1b21f(_0x36e900,_0x364c3d))_0x325753(_0x36e900);else{const _0x1c8de7=_0x36e900['data']('value'),_0x208982=_0x36e900[_0xa84e84(0x1e6)](_0xa84e84(0x250));if(_0x27b327[_0xa84e84(0x242)]['isSelectable']&&!_0x27b327[_0xa84e84(0x242)][_0xa84e84(0x165)](_0x208982))return;_0x27b327[_0xa84e84(0x21e)][_0xa84e84(0x1e6)](_0xa84e84(0x250),_0x208982),((_0x57c5d1=_0x208982[_0xa84e84(0x14d)])===null||_0x57c5d1===void 0x0?void 0x0:_0x57c5d1[_0xa84e84(0x16f)])||((_0x50af37=_0x208982['browseName'])===null||_0x50af37===void 0x0?void 0x0:_0x50af37[_0xa84e84(0x236)])||_0x208982[_0xa84e84(0x15c)][_0xa84e84(0x25f)]();let _0x295326=_0x27b327[_0xa84e84(0x23b)]();!_0x295326&&(_0x295326='nodeId',_0x27b327[_0xa84e84(0x25c)](_0x295326)),_0x11191e(_0x1c8de7)['then'](()=>{const _0x22b2d7=_0xa84e84;_0x27b327['$dropdown'][_0x22b2d7(0x18a)]();})['catch'](_0x1a6bec=>{const _0x60663f=_0xa84e84;_0x27b327[_0x60663f(0x1d5)][_0x60663f(0x18a)]();});}}),_0x27b327[_0xa5b54e(0x19e)]['on'](_0xa5b54e(0x1f9),'li',function(_0x3bedef){_0x3bedef['stopPropagation']();let _0x2ca16e=$(this);_0xf1b21f(_0x2ca16e,_0x3bedef)&&_0x325753(_0x2ca16e),_0x5326e0(_0x27b327,_0x2ca16e);}),$(document)['on'](_0xa5b54e(0x1f9),function(_0xa44721){const _0x46da14=_0xa5b54e;!$(_0xa44721[_0x46da14(0x1be)])[_0x46da14(0x217)](_0x27b327[_0x46da14(0x14f)])[_0x46da14(0x1b6)]&&_0x27b327[_0x46da14(0x1d5)]['hide']();});}});};function _0x1467da(_0x53fc43,_0x319402){const _0x43063a=_0xbf82a9,_0x34cfb7=$('#node-input-endpoint'),_0x2f1d6d=$(_0x43063a(0x25b)),_0x3eeda0=()=>{const _0x337413=_0x43063a,_0x5ef4d2=_0x53fc43['nodes'][_0x337413(0x1a1)](_0x34cfb7['val']());_0x2f1d6d[_0x337413(0x267)]();if(!_0x5ef4d2||!_0x5ef4d2[_0x337413(0x1de)])return;for(const _0x15447b of _0x5ef4d2[_0x337413(0x1de)]){const _0x1b7473=_0x15447b['name']||_0x15447b['id'];$(_0x337413(0x206),{'value':_0x15447b['id'],'label':_0x1b7473,'selected':_0x15447b['id']===_0x319402[_0x337413(0x183)]})[_0x337413(0x16f)](_0x1b7473)[_0x337413(0x204)](_0x2f1d6d);}};_0x3eeda0(),_0x2f1d6d['on']('change',()=>{const _0x248e6f=_0x43063a;_0x319402[_0x248e6f(0x183)]=_0x2f1d6d[_0x248e6f(0x1cb)]();}),_0x34cfb7['on'](_0x43063a(0x15b),()=>{_0x3eeda0();});}const _0x5b00bc=()=>{const _0x33a0bd=_0xbf82a9,_0x2199f0=$(_0x33a0bd(0x1ee)),_0x3c3286=_0x2199f0[_0x33a0bd(0x1cb)](),_0x4b967c=RED[_0x33a0bd(0x164)]['node'](_0x3c3286);if(!_0x4b967c)return undefined;const {endpoint:_0x1e1aea,securityMode:_0x4be6d3,securityPolicy:_0x74b4ed,userIdentityType:_0x302f15,credentials:_0x2414c8,namespaceAliases:_0x110132}=_0x4b967c,_0x3e6cf2={'endpoint':_0x1e1aea,'securityMode':_0x4be6d3,'securityPolicy':_0x74b4ed,'userIdentityType':_0x302f15,'credentials':_0x2414c8,'namespaceAliases':_0x110132};return _0x3e6cf2;},_0x22db99=()=>{const _0x1e5389=_0xbf82a9,_0x2c2305=$(_0x1e5389(0x1ee)),_0x1378c4=_0x2c2305[_0x1e5389(0x1cb)](),_0x42551f=_0x5b00bc();if(!_0x42551f)return undefined;const _0x29b395=_0x42551f[_0x1e5389(0x19a)];return Object[_0x1e5389(0x214)]({'namespaceAliases':_0x29b395,'id':_0x1378c4},_0x42551f);},_0x3f7180=()=>{return{'endpointNode':_0x22db99};},_0x307278=()=>{const _0x677c23=_0xbf82a9,_0x5c79b7=$('.red-ui-tray-body');console[_0x677c23(0x22e)](_0x677c23(0x203),_0x5c79b7[_0x677c23(0x1b6)]);if(_0x5c79b7['length']){console[_0x677c23(0x22e)](_0x677c23(0x1df));const _0x4f7c5a=$(_0x677c23(0x1dd),{'src':_0x677c23(0x1ae),'scrolling':'no','style':_0x677c23(0x205),'allowtransparency':_0x677c23(0x16d),'width':_0x677c23(0x275),'height':_0x677c23(0x262)});_0x5c79b7[_0x677c23(0x19c)](_0x4f7c5a),_0x4f7c5a['css']({'position':_0x677c23(0x1c1),'right':_0x677c23(0x1d7),'bottom':_0x677c23(0x186)});}};RED['nodes'][_0xbf82a9(0x1f0)]('OpcUa-Client2-Monitor',{'category':_0xbf82a9(0x153),'color':_0xbf82a9(0x19f),'align':_0xbf82a9(0x264),'icon':'../../icons/opcuanodeLogo.png','paletteLabel':_0xbf82a9(0x272),'defaults':{'inputs':{'value':0x1},'output':{'value':0x2},'name':{'value':''},'endpoint':{'value':'','required':!![],'type':_0xbf82a9(0x255)},'subscription':{'value':'','required':!![],'validate':_0x5c48f5=>{if(_0x5c48f5==='')return![];return!![];}},'startImmediately':{'value':!![],'required':!![]},'nodeId':{'value':_0xbf82a9(0x1f7),'required':![],'validate':()=>!![]},'samplingInterval':{'value':0x3e8,'required':!![]},'discardOldest':{'value':!![],'required':!![]},'queueSize':{'value':0xa,'required':!![]}},'outputs':0x1,'label'(){const _0x1b4ed0=_0xbf82a9;return this[_0x1b4ed0(0x236)]||_0x1b4ed0(0x22c);},'labelStyle'(){const _0x177917=_0xbf82a9;return this['name']?_0x177917(0x14c):'';},'oneditprepare'(){const _0x4323b3=_0xbf82a9,_0x18672e=this;_0x1cd5a0(),_0x307278();const _0x4627de=_0x18672e['startImmediately'];_0x18672e[_0x4323b3(0x1fc)]=_0x4627de?0x0:0x1,_0x1467da(RED,this),$('node-input-startImmediately')['on'](_0x4323b3(0x15b),()=>{const _0x2e0108=_0x4323b3,_0x1e4fb2=$('#node-input-startImmediately')[_0x2e0108(0x15f)](_0x2e0108(0x221));_0x1e4fb2?$('#node-input-inputs')[_0x2e0108(0x1cb)](0x0):$(_0x2e0108(0x1c7))[_0x2e0108(0x1cb)](0x1);});const _0x1e8924=$('#node-input-nodeId');_0x1e8924['nodeBrowser'](Object[_0x4323b3(0x214)](Object[_0x4323b3(0x214)]({},_0x3f7180()),{'filter'(_0x31b205){const _0x3a6621=_0x4323b3;return _0x31b205[_0x3a6621(0x1d0)]===_0x3a6621(0x167)||_0x31b205['nodeClass']===_0x3a6621(0x162);},'isSelectable'(_0x3713a2){return _0x3713a2['nodeClass']==='Variable';}}));},'oneditsave'(){const _0x1e722e=_0xbf82a9,_0x598f96=$('#node-input-startImmediately')[_0x1e722e(0x15f)](_0x1e722e(0x221));_0x598f96?($(_0x1e722e(0x1ba))['val'](_0x598f96?0x0:0x1),this[_0x1e722e(0x1fc)]=_0x598f96?0x0:0x1):($(_0x1e722e(0x1ba))['val'](0x1),this[_0x1e722e(0x1fc)]=0x1);}});}()));
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNvdXJjZU1hcCJdLCJuYW1lcyI6WyJfMHg1YmFiMzgiLCJfMHgyN2Y5ZjAiLCJfMHgzZmQxYjIiLCJfMHgyMzFlNzkiLCJfMHgzMWI0MzMiLCJfMHg0ZjI4YjIiLCJfMHg2ZDk1MzUiLCJfMHgyNjgxODYiLCJQcm9taXNlIiwiXzB4Mzg1MTEzIiwiXzB4NDY0NGM0IiwiXzB4MzM4Y2E0IiwiXzB4Mzg1ZDQ3IiwiXzB4M2JkMWU0IiwiXzB4NDIwNTgzIiwiXzB4YzY2MDMxIiwiXzB4MmYxZWZmIiwiXzB4MTk5MjU3IiwiXzB4NTc2N2I5IiwiU3VwcHJlc3NlZEVycm9yIiwiXzB4MzkzNGIzIiwiXzB4NWQxNjQ2IiwiXzB4YWE4NTgiLCJfMHgxYWVjMmEiLCJFcnJvciIsIl8weDg2NWQ1YiIsIl8weDFmYzc5YyIsIl8weDMzNjg3OCIsIl8weDliMDU0MSIsIl8weDIxYjg4YSIsIl8weDE1MzhhZiIsIl8weDFiNThjMiIsIl8weDQ3NGRiYyIsIl8weDQ2ZjZkMyIsIl8weDMxZTUzOCIsIl8weDMzZWNjYyIsIl8weDFmN2YzMCIsIl8weDMwNzdhZSIsIl8weDVmNDMxMyIsIl8weDM3NDdiNCIsIl8weGZmOWQwZSIsIl8weDU3ZWRmNiIsIl8weDNiNzViMSIsIl8weDQxMDJiNSIsIl8weDY5MDFhMyIsIl8weDM2OTk2MSIsIl8weDE4YjM3ZiIsIl8weDMxZmQ5MSIsImVuZHBvaW50Tm9kZSIsIl8weDM5MzZhYSIsImVuZHBvaW50IiwiXzB4MjAxMWE1IiwiYmFzZVVybCIsIl8weDRlYzA2ZCIsIl8weDU2YTM5MiIsIl8weDMxZWNmZSIsIl8weGEwMDNlMCIsIl8weDFkY2QyMiIsIl8weDNiNTMxZiIsIk9iamVjdCIsIl8weDE2ZDExNiIsImZldGNoIiwiSlNPTiIsImNvbnNvbGUiLCJfMHg2ZTEyMTIiLCJfMHhiN2EwNDgiLCJfMHg0YzU0MmMiLCJfMHg0YWIxYzMiLCJfMHgyNTljYTQiLCJfMHgzZjU4MjkiLCJfMHg0MGUwMjMiLCJfMHgxNmYxMDYiLCJfMHgxNGMyYTUiLCJfMHg0NmMzMDUiLCJub2RlSWQiLCJfMHg0YWRhYTMiLCJyb290Tm9kZUlkIiwiXzB4NTliNWVjIiwiaXNUeXBlIiwiXzB4MmNiNDgyIiwiXzB4ZTg2Y2ViIiwiXzB4MzUzZGQwIiwiXzB4NWU0NzhmIiwiXzB4NTBhNDRlIiwiXzB4Mzk3NzFlIiwiXzB4NGU3ZTJlIiwiXzB4MzZlMzU0IiwiXzB4MmYyMjViIiwiXzB4MzgzOTI0IiwiXzB4MjY5NzQ3IiwiXzB4MzhjYjQ5IiwiXzB4NGU0NWIzIiwiXzB4MmRmN2M2IiwiXzB4NWNiMjRkIiwiXzB4MmViYTRlIiwiXzB4NGIxYmMzIiwiXzB4MmFjYmYxIiwiXzB4NDQ0ODU4IiwiXzB4MTExMzczIiwiXzB4MzQ1NDFhIiwiXzB4MjJhYjA2IiwiXzB4MjhlMzFmIiwiXzB4MzJmZTYwIiwiXzB4MjBjY2FlIiwiXzB4NDdmNGY3IiwiXzB4NGFhOGQ4IiwiXzB4MzhlZTMwIiwiXzB4ZWRhOTIyIiwiXzB4MTFkM2Q5IiwiXzB4OWZhNWYxIiwiXzB4NDVhZDNlIiwiUkVEIiwiXzB4MTYxMTVmIiwiXzB4YjlmNTY3IiwiXzB4MjJiMzY4IiwiXzB4MTVhZjQ0IiwiXzB4NjJiZmYwIiwiXzB4MzYxZDMzIiwiXzB4NGMzM2Q5IiwiXzB4M2NlMzgzIiwiXzB4MmExNGUyIiwiXzB4MTI1YWIxIiwiXzB4MTdhOWI4IiwiXzB4MzU1NzcwIiwiXzB4MjExNmFjIiwiXzB4NTU1Nzk4IiwiXzB4MTc2NDc3IiwianNvbiIsIl8weDMzMDEzMiIsImRhdGEiLCJfMHgxMTdhYTMiLCJfMHg0MjY1NDciLCJfMHgyYjZmOWIiLCJfMHgzYzY2ZjYiLCJzZXRUaW1lb3V0IiwiXzB4MWE4NzFkIiwiXzB4MjAzZjMyIiwiXzB4MjU4YWY4IiwiXzB4Mzk2MmRkIiwiXzB4NTc5NmE1IiwiXzB4YWQ5NDlmIiwiXzB4MmRmNTMzIiwiXzB4NDlkZTI3IiwiXzB4MmQzZGI1IiwiXzB4MTU1MDIzIiwiXzB4NWU3MWM1IiwiXzB4NTE1ZDAzIiwiXzB4YzgyN2RlIiwiXzB4Mjk1ZDg4IiwiXzB4MmNlMTc1IiwiXzB4MmZhNWE4IiwiXzB4MTQ5NTgyIiwiXzB4NTllZGU4IiwiXzB4MjQ5NTI2IiwiXzB4NWMzN2NkIiwiXzB4MWUxZjU1IiwiJCIsIl8weDNhMmU3YSIsIl8weDVjNDRhNSIsImljb24iLCJfMHgzYTM1MmIiLCJjb2xvciIsIl8weDQ1NTNlOCIsIl8weDU2NDdmOCIsIl8weDQ1MzBiMCIsIl8weDUwOTdkMCIsIl8weDM4YjcyYSIsIl8weDJjZWUxNSIsIl8weDUzMjZlMCIsIl8weDE0MDE3MCIsIl8weDM0OGIwYyIsIl8weDk4ODdjMiIsIl8weDIzZGU2ZiIsIl8weDM2NjFlMiIsIl8weDIzYzlmZSIsIl8weDRiMjdmMSIsIl8weDJmYWJjMyIsIl8weDUzMTA4MyIsIl8weDU2MWRjZSIsIl8weGY1ZWUyIiwiXzB4MjljOTQ4IiwiXzB4OWQ0N2NiIiwiXzB4NDZkZDEzIiwiXzB4NDg4MjA4IiwiXzB4MmZkNDIzIiwidW5kZWZpbmVkIiwiXzB4MWNhODZhIiwiXzB4OGE1ZjM3IiwiXzB4MmZkZjQ1IiwiXzB4MmJlZDdkIiwiXzB4MTRkNWFmIiwiXzB4NTY2ZGFkIiwiXzB4MTZhMTBjIiwiXzB4MmZmZWFiIiwiXzB4ODRlMzkiLCJfMHgyZjBlZmIiLCJfMHgzYThlNDQiLCJfMHg1YWFhNzgiLCJfMHgxZmJhYzQiLCJfMHg1YTRjNzkiLCJyZWZlcmVuY2VzIiwiXzB4MTEyYzIzIiwiXzB4YTdlNzZhIiwiXzB4M2MyYTA3IiwiXzB4NDdjZmU2IiwiXzB4NGU3ZjVjIiwiXzB4NTViMGY5IiwiXzB4MmM3OTlhIiwiXzB4M2M1ZWE2IiwiXzB4NTQ2ZGU5IiwiXzB4NDAyYTczIiwiXzB4NTYyNzIyIiwiXzB4NGI4NTU2IiwiXzB4MWI0ZmFhIiwiXzB4NDEwZTVjIiwiXzB4NDViYWU1IiwiXzB4MmUwYTc0IiwiXzB4MWNkNWEwIiwiXzB4MWI4NDczIiwiXzB4NTJiMGM3IiwiXzB4NWE0NWFhIiwiXzB4M2M4NjgyIiwiXzB4NDFhYjk5IiwiXzB4NDYwZTQ2IiwiXzB4MzhiNzljIiwiXzB4NDU3NTkxIiwiXzB4MWU3MGZkIiwiXzB4MTk4NGMzIiwiXzB4MTYyZmRiIiwiXzB4M2MyMjdmIiwiXzB4ZTdjNDliIiwiZG9jdW1lbnQiLCJfMHg1ZWU1N2YiLCJfMHgzMzhmNWMiLCJfMHgzYjgyY2YiLCJfMHgyNjk5MDEiLCJfMHgyMWNmZGMiLCJfMHgxNjMyOTQiLCJfMHg1MzI1MjAiLCJfMHgxMWI2MGQiLCJfMHgzNGJlYzYiLCJfMHgxYzA2OGMiLCJfMHgzOTM1NGIiLCJfMHgyNGQ2Y2QiLCJfMHgxNmRhMzEiLCJfMHgxZmNhZGQiLCJfMHgzYzM1MWEiLCJfMHgyNzdhZjciLCJfMHg0N2M3NzUiLCJfMHg0MGRkMzQiLCJfMHg1ZTE4YTUiLCJ3aW5kb3ciLCJfMHg0ZWI1NTQiLCJfMHg1MGQ5ODMiLCJfMHgzMzc2NmYiLCJfMHgzNDNjMmIiLCJfMHgyOTdhMDYiLCJfMHgzMmNmYTciLCJfMHhkOTNlNDMiLCJfMHgxZGExODAiLCJfMHgyYTUwMjUiLCJfMHg1ODQwNDciLCJfMHgyOGJjMzIiLCJfMHg1MjNmNDUiLCJfMHhjMTU1YTUiLCJfMHgzMzA1YWYiLCJfMHg4ZDQwOWIiLCJfMHgyODFhZjUiLCJfMHg1OWI3ZDciLCJfMHgyN2ExOTMiLCJfMHg1MmQ1MDkiLCJfMHgyN2IzMjciLCJfMHgzODBkODciLCJfMHg1YjZkYjYiLCJfMHgyMDA5MmEiLCJfMHg0NTZkNjIiLCJfMHgxMTE5MWUiLCJfMHhkOWQwM2YiLCJfMHg1ZjAxMTMiLCJfMHgyMmIzOTMiLCJfMHg1Mjk1YzEiLCJfMHg1NWVkNzQiLCJfMHgxMWU0NGEiLCJfMHhjNGI5OWQiLCJfMHgyOTgwZWIiLCJfMHhjYjA4IiwiXzB4ZjFiMjFmIiwiXzB4MjkwZjI2IiwiXzB4NDA3Mzc4IiwiXzB4MzUyMTIxIiwiXzB4NDY2ZjllIiwiXzB4NGY4ZDI0IiwiXzB4MjU0YTdkIiwiXzB4MzI1NzUzIiwiXzB4MWFmNjRlIiwiXzB4MzY0YzNkIiwiXzB4NTdjNWQxIiwiXzB4NTBhZjM3IiwiXzB4MzZlOTAwIiwiXzB4MWM4ZGU3IiwiXzB4MjA4OTgyIiwiXzB4Mjk1MzI2IiwiXzB4MWE2YmVjIiwiXzB4M2JlZGVmIiwiXzB4MmNhMTZlIiwiXzB4YTQ0NzIxIiwiXzB4MTQ2N2RhIiwiXzB4NTNmYzQzIiwiXzB4MzE5NDAyIiwiXzB4MzRjZmI3IiwiXzB4MmYxZDZkIiwiXzB4M2VlZGEwIiwiXzB4NWVmNGQyIiwiXzB4MTU0NDdiIiwiXzB4MWI3NDczIiwiXzB4NWIwMGJjIiwiXzB4MjE5OWYwIiwiXzB4M2MzMjg2IiwiXzB4NGI5NjdjIiwiXzB4MWUxYWVhIiwic2VjdXJpdHlNb2RlIiwiXzB4NGJlNmQzIiwic2VjdXJpdHlQb2xpY3kiLCJfMHg3NGI0ZWQiLCJ1c2VySWRlbnRpdHlUeXBlIiwiXzB4MzAyZjE1IiwiY3JlZGVudGlhbHMiLCJfMHgyNDE0YzgiLCJuYW1lc3BhY2VBbGlhc2VzIiwiXzB4MTEwMTMyIiwiXzB4M2U2Y2YyIiwiXzB4MjJkYjk5IiwiXzB4MmMyMzA1IiwiXzB4MTM3OGM0IiwiXzB4NDI1NTFmIiwiXzB4MjliMzk1IiwiXzB4M2Y3MTgwIiwiXzB4MzA3Mjc4IiwiXzB4NWM3OWI3IiwiXzB4NGY3YzVhIiwiXzB4NWM0OGY1IiwiXzB4MTg2NzJlIiwiXzB4NDYyN2RlIiwiXzB4MWU0ZmIyIiwiXzB4MWU4OTI0IiwiXzB4MzFiMjA1IiwiXzB4MzcxM2EyIiwiXzB4NTk4Zjk2Il0sIm1hcHBpbmdzIjoid3dMQUFBLENBQUMsVSxDQUNHLGEsd0JBbUJBLFNBQVNBLFNBQVQsQ0FBbUJDLFNBQW5CLENBQTRCQyxTQUE1QixDQUF3Q0MsU0FBeEMsQ0FBMkNDLFNBQTNDLEMsQ0FDSSxTQUFTQyxTQUFULENBQWVDLFNBQWYsQyxRQUErQkEsU0FBQSxZQUFpQkgsU0FBakIsQ0FBcUJHLFNBQXJCLENBQTZCLElBQUlILFNBQUosQ0FBTSxTQUFVSSxTQUFWLEMsQ0FBcUJBLFNBQUEsQ0FBUUQsU0FBUixDLEVBQTNCLEMsU0FDckQsR0FBSyxDQUFBSCxTQUFBLEVBQU0sQ0FBQUEsU0FBQSxDQUFJSyxPQUFKLENBQU4sQ0FBTCxDQUF5QixTQUFVQyxT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Q3JCK0wsUyxFQUNBL0wsQ0FBQSxDLGdCQUFBLEUsS0FBQSxFQUFzQytMLFNBQUEsQyxHQUFBLEMsR0FBdEMsQyxDQUNBLEssZ0JBQUEsRUFBY0EsU0FBQSxDLEdBQUEsQyxNQUdkL0wsQ0FBQSxDLGdCQUFBLEUsS0FBQSxFLEdBQUEsQyxDQUNBLEssZ0JBQUEsRSxNQTFFb0MsQ0FBaEQsQyxFQW5sQ0osRyIsInNvdXJjZXNDb250ZW50IjpbIihmdW5jdGlvbiAoKSB7XG4gICAgJ3VzZSBzdHJpY3QnO1xuXG4gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gICAgQ29weXJpZ2h0IChjKSBNaWNyb3NvZnQgQ29ycG9yYXRpb24uXHJcblxyXG4gICAgUGVybWlzc2lvbiB0byB1c2UsIGNvcHksIG1vZGlmeSwgYW5kL29yIGRpc3RyaWJ1dGUgdGhpcyBzb2Z0d2FyZSBmb3IgYW55XHJcbiAgICBwdXJwb3NlIHdpdGggb3Igd2l0aG91dCBmZWUgaXMgaGVyZWJ5IGdyYW50ZWQuXHJcblxyXG4gICAgVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiBBTkQgVEhFIEFVVEhPUiBESVNDTEFJTVMgQUxMIFdBUlJBTlRJRVMgV0lUSFxyXG4gICAgUkVHQVJEIFRPIFRISVMgU09GVFdBUkUgSU5DTFVESU5HIEFMTCBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZXHJcbiAgICBBTkQgRklUTkVTUy4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBCRSBMSUFCTEUgRk9SIEFOWSBTUEVDSUFMLCBESVJFQ1QsXHJcbiAgICBJTkRJUkVDVCwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIE9SIEFOWSBEQU1BR0VTIFdIQVRTT0VWRVIgUkVTVUxUSU5HIEZST01cclxuICAgIExPU1MgT0YgVVNFLCBEQVRBIE9SIFBST0ZJVFMsIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBORUdMSUdFTkNFIE9SXHJcbiAgICBPVEhFUiBUT1JUSU9VUyBBQ1RJT04sIEFSSVNJTkcgT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgVVNFIE9SXHJcbiAgICBQRVJGT1JNQU5DRSBPRiBUSElTIFNPRlRXQVJFLlxyXG4gICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogKi9cclxuICAgIC8qIGdsb2JhbCBSZWZsZWN0LCBQcm9taXNlLCBTdXBwcmVzc2VkRXJyb3IsIFN5bWJvbCwgSXRlcmF0b3IgKi9cclxuXHJcblxyXG4gICAgZnVuY3Rpb24gX19hd2FpdGVyKHRoaXNBcmcsIF9hcmd1bWVudHMsIFAsIGdlbmVyYXRvcikge1xyXG4gICAgICAgIGZ1bmN0aW9uIGFkb3B0KHZhbHVlKSB7IHJldHVybiB2YWx1ZSBpbnN0YW5jZW9mIFAgPyB2YWx1ZSA6IG5ldyBQKGZ1bmN0aW9uIChyZXNvbHZlKSB7IHJlc29sdmUodmFsdWUpOyB9KTsgfVxyXG4gICAgICAgIHJldHVybiBuZXcgKFAgfHwgKFAgPSBQcm9taXNlKSkoZnVuY3Rpb24gKHJlc29sdmUsIHJlamVjdCkge1xyXG4gICAgICAgICAgICBmdW5jdGlvbiBmdWxmaWxsZWQodmFsdWUpIHsgdHJ5IHsgc3RlcChnZW5lcmF0b3IubmV4dCh2YWx1ZSkpOyB9IGNhdGNoIChlKSB7IHJlamVjdChlKTsgfSB9XHJcbiAgICAgICAgICAgIGZ1bmN0aW9uIHJlamVjdGVkKHZhbHVlKSB7IHRyeSB7IHN0ZXAoZ2VuZXJhdG9yW1widGhyb3dcIl0odmFsdWUpKTsgfSBjYXRjaCAoZSkgeyByZWplY3QoZSk7IH0gfVxyXG4gICAgICAgICAgICBmdW5jdGlvbiBzdGVwKHJlc3VsdCkgeyByZXN1bHQuZG9uZSA/IHJlc29sdmUocmVzdWx0LnZhbHVlKSA6IGFkb3B0KHJlc3VsdC52YWx1ZSkudGhlbihmdWxmaWxsZWQsIHJlamVjdGVkKTsgfVxyXG4gICAgICAgICAgICBzdGVwKChnZW5lcmF0b3IgPSBnZW5lcmF0b3IuYXBwbHkodGhpc0FyZywgX2FyZ3VtZW50cyB8fCBbXSkpLm5leHQoKSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgdHlwZW9mIFN1cHByZXNzZWRFcnJvciA9PT0gXCJmdW5jdGlvblwiID8gU3VwcHJlc3NlZEVycm9yIDogZnVuY3Rpb24gKGVycm9yLCBzdXBwcmVzc2VkLCBtZXNzYWdlKSB7XHJcbiAgICAgICAgdmFyIGUgPSBuZXcgRXJyb3IobWVzc2FnZSk7XHJcbiAgICAgICAgcmV0dXJuIGUubmFtZSA9IFwiU3VwcHJlc3NlZEVycm9yXCIsIGUuZXJyb3IgPSBlcnJvciwgZS5zdXBwcmVzc2VkID0gc3VwcHJlc3NlZCwgZTtcclxuICAgIH07XG5cbiAgICBjb25zdCBPcmdhbml6ZXNSZWZOb2RlSWQgPSBcIm5zPTA7aT0zNVwiO1xuICAgIGNvbnN0IEZvbGRlclR5cGUgPSBcIm5zPTA7aT02MVwiO1xuICAgIGNvbnN0IEhhc0NvbXBvbmVudFJlZk5vZGVJZCA9IFwibnM9MDtpPTQ3XCI7XG4gICAgY29uc3QgSGFzUHJvcGVydHlSZWZOb2RlSWQgPSBcIm5zPTA7aT00NlwiO1xuICAgIGNvbnN0IEhhc0NoaWxkUmVmTm9kZUlkID0gXCJucz0wO2k9MzRcIjtcbiAgICBjb25zdCBIYXNTdWJ0eXBlUmVmTm9kZUlkID0gXCJucz0wO2k9NDVcIjtcbiAgICBjb25zdCBIYXNUeXBlRGVmaW5pdGlvblJlZk5vZGVJZCA9IFwibnM9MDtpPTQwXCI7XG5cbiAgICB2YXIgQnJvd3NlRGlyZWN0aW9uO1xuICAgIChmdW5jdGlvbiAoQnJvd3NlRGlyZWN0aW9uKSB7XG4gICAgICAgIEJyb3dzZURpcmVjdGlvbltCcm93c2VEaXJlY3Rpb25bXCJGb3J3YXJkXCJdID0gMF0gPSBcIkZvcndhcmRcIjtcbiAgICAgICAgQnJvd3NlRGlyZWN0aW9uW0Jyb3dzZURpcmVjdGlvbltcIkludmVyc2VcIl0gPSAxXSA9IFwiSW52ZXJzZVwiO1xuICAgICAgICBCcm93c2VEaXJlY3Rpb25bQnJvd3NlRGlyZWN0aW9uW1wiQm90aFwiXSA9IDJdID0gXCJCb3RoXCI7XG4gICAgICAgIEJyb3dzZURpcmVjdGlvbltCcm93c2VEaXJlY3Rpb25bXCJJbnZhbGlkXCJdID0gM10gPSBcIkludmFsaWRcIjtcbiAgICB9KShCcm93c2VEaXJlY3Rpb24gfHwgKEJyb3dzZURpcmVjdGlvbiA9IHt9KSk7XG4gICAgdmFyIE5vZGVDbGFzcztcbiAgICAoZnVuY3Rpb24gKE5vZGVDbGFzcykge1xuICAgICAgICBOb2RlQ2xhc3NbTm9kZUNsYXNzW1wiVW5zcGVjaWZpZWRcIl0gPSAwXSA9IFwiVW5zcGVjaWZpZWRcIjtcbiAgICAgICAgTm9kZUNsYXNzW05vZGVDbGFzc1tcIk9iamVjdFwiXSA9IDFdID0gXCJPYmplY3RcIjtcbiAgICAgICAgTm9kZUNsYXNzW05vZGVDbGFzc1tcIlZhcmlhYmxlXCJdID0gMl0gPSBcIlZhcmlhYmxlXCI7XG4gICAgICAgIE5vZGVDbGFzc1tOb2RlQ2xhc3NbXCJNZXRob2RcIl0gPSA0XSA9IFwiTWV0aG9kXCI7XG4gICAgICAgIE5vZGVDbGFzc1tOb2RlQ2xhc3NbXCJPYmplY3RUeXBlXCJdID0gOF0gPSBcIk9iamVjdFR5cGVcIjtcbiAgICAgICAgTm9kZUNsYXNzW05vZGVDbGFzc1tcIlZhcmlhYmxlVHlwZVwiXSA9IDE2XSA9IFwiVmFyaWFibGVUeXBlXCI7XG4gICAgICAgIE5vZGVDbGFzc1tOb2RlQ2xhc3NbXCJSZWZlcmVuY2VUeXBlXCJdID0gMzJdID0gXCJSZWZlcmVuY2VUeXBlXCI7XG4gICAgICAgIE5vZGVDbGFzc1tOb2RlQ2xhc3NbXCJEYXRhVHlwZVwiXSA9IDY0XSA9IFwiRGF0YVR5cGVcIjtcbiAgICAgICAgTm9kZUNsYXNzW05vZGVDbGFzc1tcIlZpZXdcIl0gPSAxMjhdID0gXCJWaWV3XCI7XG4gICAgfSkoTm9kZUNsYXNzIHx8IChOb2RlQ2xhc3MgPSB7fSkpO1xuICAgIHZhciBOb2RlQ2xhc3NNYXNrO1xuICAgIChmdW5jdGlvbiAoTm9kZUNsYXNzTWFzaykge1xuICAgICAgICBOb2RlQ2xhc3NNYXNrW05vZGVDbGFzc01hc2tbXCJPYmplY3RcIl0gPSAxXSA9IFwiT2JqZWN0XCI7XG4gICAgICAgIE5vZGVDbGFzc01hc2tbTm9kZUNsYXNzTWFza1tcIlZhcmlhYmxlXCJdID0gMl0gPSBcIlZhcmlhYmxlXCI7XG4gICAgICAgIE5vZGVDbGFzc01hc2tbTm9kZUNsYXNzTWFza1tcIk1ldGhvZFwiXSA9IDRdID0gXCJNZXRob2RcIjtcbiAgICAgICAgTm9kZUNsYXNzTWFza1tOb2RlQ2xhc3NNYXNrW1wiT2JqZWN0VHlwZVwiXSA9IDhdID0gXCJPYmplY3RUeXBlXCI7XG4gICAgICAgIE5vZGVDbGFzc01hc2tbTm9kZUNsYXNzTWFza1tcIlZhcmlhYmxlVHlwZVwiXSA9IDE2XSA9IFwiVmFyaWFibGVUeXBlXCI7XG4gICAgICAgIE5vZGVDbGFzc01hc2tbTm9kZUNsYXNzTWFza1tcIlJlZmVyZW5jZVR5cGVcIl0gPSAzMl0gPSBcIlJlZmVyZW5jZVR5cGVcIjtcbiAgICAgICAgTm9kZUNsYXNzTWFza1tOb2RlQ2xhc3NNYXNrW1wiRGF0YVR5cGVcIl0gPSA2NF0gPSBcIkRhdGFUeXBlXCI7XG4gICAgICAgIE5vZGVDbGFzc01hc2tbTm9kZUNsYXNzTWFza1tcIlZpZXdcIl0gPSAxMjhdID0gXCJWaWV3XCI7XG4gICAgfSkoTm9kZUNsYXNzTWFzayB8fCAoTm9kZUNsYXNzTWFzayA9IHt9KSk7XG4gICAgdmFyIFJlc3VsdE1hc2s7XG4gICAgKGZ1bmN0aW9uIChSZXN1bHRNYXNrKSB7XG4gICAgICAgIFJlc3VsdE1hc2tbUmVzdWx0TWFza1tcIlJlZmVyZW5jZVR5cGVcIl0gPSAxXSA9IFwiUmVmZXJlbmNlVHlwZVwiO1xuICAgICAgICBSZXN1bHRNYXNrW1Jlc3VsdE1hc2tbXCJJc0ZvcndhcmRcIl0gPSAyXSA9IFwiSXNGb3J3YXJkXCI7XG4gICAgICAgIFJlc3VsdE1hc2tbUmVzdWx0TWFza1tcIk5vZGVDbGFzc1wiXSA9IDRdID0gXCJOb2RlQ2xhc3NcIjtcbiAgICAgICAgUmVzdWx0TWFza1tSZXN1bHRNYXNrW1wiQnJvd3NlTmFtZVwiXSA9IDhdID0gXCJCcm93c2VOYW1lXCI7XG4gICAgICAgIFJlc3VsdE1hc2tbUmVzdWx0TWFza1tcIkRpc3BsYXlOYW1lXCJdID0gMTZdID0gXCJEaXNwbGF5TmFtZVwiO1xuICAgICAgICBSZXN1bHRNYXNrW1Jlc3VsdE1hc2tbXCJUeXBlRGVmaW5pdGlvblwiXSA9IDMyXSA9IFwiVHlwZURlZmluaXRpb25cIjtcbiAgICB9KShSZXN1bHRNYXNrIHx8IChSZXN1bHRNYXNrID0ge30pKTtcbiAgICAvLyAgY29uc3QgcSA9IFJlZmVyZW5jZVR5cGVJZHMuT3JnYW5pemVzO1xuICAgIGZ1bmN0aW9uIHJlc29sdmVOb2RlSWQobm9kZUlkTGlrZSkge1xuICAgICAgICBzd2l0Y2ggKG5vZGVJZExpa2UpIHtcbiAgICAgICAgICAgIGNhc2UgXCJPcmdhbml6ZXNcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4gT3JnYW5pemVzUmVmTm9kZUlkO1xuICAgICAgICAgICAgY2FzZSBcIkhhc1Byb3BlcnR5XCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIEhhc1Byb3BlcnR5UmVmTm9kZUlkO1xuICAgICAgICAgICAgY2FzZSBcIkhhc0NvbXBvbmVudFwiOlxuICAgICAgICAgICAgICAgIHJldHVybiBIYXNDb21wb25lbnRSZWZOb2RlSWQ7XG4gICAgICAgICAgICBjYXNlIFwiSGFzQ2hpbGRcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4gSGFzQ2hpbGRSZWZOb2RlSWQ7XG4gICAgICAgICAgICBjYXNlIFwiSGFzU3VidHlwZVwiOlxuICAgICAgICAgICAgICAgIHJldHVybiBIYXNTdWJ0eXBlUmVmTm9kZUlkO1xuICAgICAgICAgICAgY2FzZSBcIkhhc1R5cGVEZWZpbml0aW9uXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIEhhc1R5cGVEZWZpbml0aW9uUmVmTm9kZUlkO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgZ2V0SWNvbiA9IChyZWZlcmVuY2UpID0+IHtcbiAgICAgICAgc3dpdGNoIChyZWZlcmVuY2Uubm9kZUNsYXNzKSB7XG4gICAgICAgICAgICBjYXNlIFwiT2JqZWN0XCI6XG4gICAgICAgICAgICAgICAgaWYgKHJlZmVyZW5jZS5yZWZlcmVuY2VUeXBlSWQgPT09IE9yZ2FuaXplc1JlZk5vZGVJZCkgO1xuICAgICAgICAgICAgICAgIGlmIChyZWZlcmVuY2UudHlwZURlZmluaXRpb24gPT09IEZvbGRlclR5cGUgfHwgcmVmZXJlbmNlLnJlZmVyZW5jZVR5cGVJZCA9PT0gXCJpPTYxXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHsgaWNvbjogXCJmYS1mb2xkZXJcIiwgY29sb3I6IFwicmdiYSg2MSwgNjAsIDQsIDAuNTI1KVwiIH07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiB7IGljb246IFwiZmEtb2JqZWN0LWdyb3VwXCIsIGNvbG9yOiBcIlNlYUdyZWVuXCIgfTtcbiAgICAgICAgICAgIGNhc2UgXCJWYXJpYWJsZVwiOlxuICAgICAgICAgICAgICAgIGlmIChyZWZlcmVuY2UucmVmZXJlbmNlVHlwZUlkID09PSBIYXNDb21wb25lbnRSZWZOb2RlSWQpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHsgaWNvbjogXCJmYS1saXN0LWFsdFwiLCBjb2xvcjogXCJTdGVlbEJsdWVcIiB9O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIGlmIChyZWZlcmVuY2UucmVmZXJlbmNlVHlwZUlkID09PSBIYXNQcm9wZXJ0eVJlZk5vZGVJZCkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4geyBpY29uOiBcImZhLWxpc3QtYWx0XCIsIGNvbG9yOiBcIkRvZGdlckJsdWVcIiB9O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHsgaWNvbjogXCJmYS1saXN0LWFsdFwiLCBjb2xvcjogXCJDYWRldEJsdWVcIiB9O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNhc2UgXCJNZXRob2RcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4geyBpY29uOiBcImZhLWNvZ1wiLCBjb2xvcjogXCJTYW5keUJyb3duXCIgfTtcbiAgICAgICAgICAgIGNhc2UgXCJPYmplY3RUeXBlXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHsgaWNvbjogXCJmYS1vYmplY3QtZ3JvdXBcIiwgY29sb3I6IFwiRGFya09yYW5nZVwiIH07XG4gICAgICAgICAgICBjYXNlIFwiVmFyaWFibGVUeXBlXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHsgaWNvbjogXCJmYS1zbGlkZXJzXCIsIGNvbG9yOiBcIkRhcmtPcmFuZ2VcIiB9O1xuICAgICAgICAgICAgY2FzZSBcIkRhdGFUeXBlXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHsgaWNvbjogXCJmYS10ZXh0LXdpZHRoXCIsIGNvbG9yOiBcIkNhZGV0Qmx1ZVwiIH07XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHsgaWNvbjogXCJmYS1xdWVzdGlvblwiLCBjb2xvcjogXCJncmV5XCIgfTtcbiAgICB9O1xuXG4gICAgY29uc3QgYnJvd3NlID0gKF9hLCBub2RlSWRfMSwgdGVtcGxhdGVfMSkgPT4gX19hd2FpdGVyKHZvaWQgMCwgW19hLCBub2RlSWRfMSwgdGVtcGxhdGVfMV0sIHZvaWQgMCwgZnVuY3Rpb24qICh7IGVuZHBvaW50Tm9kZSwgZW5kcG9pbnQsIGJhc2VVcmwgfSwgbm9kZUlkLCB0ZW1wbGF0ZSkge1xuICAgICAgICBjb25zdCByb290ID0gYCR7YmFzZVVybH0vb3BjdWEtZm9yLW5vZGUtcmVkYDtcbiAgICAgICAgY29uc3QgdXJsID0gYCR7cm9vdH0vYnJvd3NlYDtcbiAgICAgICAgY29uc3QgYnJvd3NlRGVzY3JpcHRpb24gPSBPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sIHRlbXBsYXRlKSwgeyBub2RlSWQsIHJlc3VsdE1hc2s6IDYzIH0pO1xuICAgICAgICBjb25zdCBkYXRhID0geWllbGQgZmV0Y2godXJsLCB7XG4gICAgICAgICAgICBtZXRob2Q6IFwiUE9TVFwiLFxuICAgICAgICAgICAgYm9keTogSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICAgICAgICAgIGVuZHBvaW50Tm9kZSxcbiAgICAgICAgICAgICAgICBlbmRwb2ludCxcbiAgICAgICAgICAgICAgICBicm93c2VEZXNjcmlwdGlvbixcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgaGVhZGVyczogeyBcIkNvbnRlbnQtVHlwZVwiOiBcImFwcGxpY2F0aW9uL2pzb25cIiB9LFxuICAgICAgICB9KTtcbiAgICAgICAgaWYgKGRhdGEuc3RhdHVzICE9PSAyMDApIHtcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiZmV0Y2hpbmcgZmFpbGVkIHdpdGggZXJyb3JcIiwgZGF0YS5zdGF0dXMsIGRhdGEuc3RhdHVzVGV4dCk7XG4gICAgICAgICAgICByZXR1cm4geyByZWZlcmVuY2VzOiBbXSB9O1xuICAgICAgICB9XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKFwiYnJvd3NlIGZldGNoZWQgOiBcIiwgZGF0YS5zdGF0dXMsIGRhdGEuc3RhdHVzVGV4dCk7XG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID0geWllbGQgZGF0YS5qc29uKCk7XG4gICAgICAgIGNvbnN0IHJlZmVyZW5jZXMgPSByZXNwb25zZS5icm93c2VSZXN1bHQucmVmZXJlbmNlcyB8fCBbXTtcbiAgICAgICAgcmV0dXJuIHsgcmVmZXJlbmNlcyB9O1xuICAgIH0pO1xuXG4gICAgY29uc3QgdGVtcGxhdGUxID0ge1xuICAgICAgICByZWZlcmVuY2VUeXBlSWQ6IHJlc29sdmVOb2RlSWQoXCJIYXNDaGlsZFwiKSxcbiAgICAgICAgaW5jbHVkZVN1YnR5cGVzOiB0cnVlLFxuICAgICAgICBicm93c2VEaXJlY3Rpb246IEJyb3dzZURpcmVjdGlvbi5Gb3J3YXJkLFxuICAgICAgICBub2RlQ2xhc3NNYXNrOiBOb2RlQ2xhc3MuVmFyaWFibGUgfCBOb2RlQ2xhc3MuT2JqZWN0IHwgTm9kZUNsYXNzLk1ldGhvZCxcbiAgICAgICAgLy8gIE5vZGVDbGFzcy5PYmplY3RUeXBlIHxcbiAgICAgICAgLy8gIE5vZGVDbGFzcy5WYXJpYWJsZVR5cGUgfFxuICAgICAgICAvLyBOb2RlQ2xhc3MuUmVmZXJlbmNlVHlwZSB8XG4gICAgICAgIC8vIE5vZGVDbGFzcy5EYXRhVHlwZSB8XG4gICAgICAgIC8vIE5vZGVDbGFzcy5WaWV3LFxuICAgICAgICByZXN1bHRNYXNrOiA2MyxcbiAgICB9O1xuICAgIGNvbnN0IHRlbXBsYXRlMiA9IHtcbiAgICAgICAgcmVmZXJlbmNlVHlwZUlkOiByZXNvbHZlTm9kZUlkKFwiT3JnYW5pemVzXCIpLFxuICAgICAgICBpbmNsdWRlU3VidHlwZXM6IHRydWUsXG4gICAgICAgIGJyb3dzZURpcmVjdGlvbjogQnJvd3NlRGlyZWN0aW9uLkZvcndhcmQsXG4gICAgICAgIG5vZGVDbGFzc01hc2s6IE5vZGVDbGFzcy5WYXJpYWJsZSB8IE5vZGVDbGFzcy5PYmplY3QgfCBOb2RlQ2xhc3MuTWV0aG9kLFxuICAgICAgICAvLyAgTm9kZUNsYXNzLk9iamVjdFR5cGUgfFxuICAgICAgICAvLyAgTm9kZUNsYXNzLlZhcmlhYmxlVHlwZSB8XG4gICAgICAgIC8vIE5vZGVDbGFzcy5SZWZlcmVuY2VUeXBlIHxcbiAgICAgICAgLy8gTm9kZUNsYXNzLkRhdGFUeXBlIHxcbiAgICAgICAgLy8gTm9kZUNsYXNzLlZpZXcsXG4gICAgICAgIHJlc3VsdE1hc2s6IDYzLFxuICAgIH07XG4gICAgY29uc3Qgd2Fsa0JhY2t3YXJkID0gKF9hLCBfYikgPT4gX19hd2FpdGVyKHZvaWQgMCwgW19hLCBfYl0sIHZvaWQgMCwgZnVuY3Rpb24qICh7IGVuZHBvaW50Tm9kZSwgZW5kcG9pbnQsIGJhc2VVcmwgfSwgeyBub2RlSWQsIHJvb3ROb2RlSWQsIGlzVHlwZSB9KSB7XG4gICAgICAgIGNvbnN0IHJvb3QgPSBgJHtiYXNlVXJsfS9vcGN1YS1mb3Itbm9kZS1yZWRgO1xuICAgICAgICBjb25zdCB1cmwgPSBgJHtyb290fS93YWxrLWJhY2t3YXJkYDtcbiAgICAgICAgY29uc3QgZGF0YSA9IHlpZWxkIGZldGNoKHVybCwge1xuICAgICAgICAgICAgbWV0aG9kOiBcIlBPU1RcIixcbiAgICAgICAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgICAgICAgICBlbmRwb2ludE5vZGUsXG4gICAgICAgICAgICAgICAgZW5kcG9pbnQsXG4gICAgICAgICAgICAgICAgbm9kZUlkLFxuICAgICAgICAgICAgICAgIHJvb3ROb2RlSWQsXG4gICAgICAgICAgICAgICAgaXNUeXBlLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBoZWFkZXJzOiB7IFwiQ29udGVudC1UeXBlXCI6IFwiYXBwbGljYXRpb24vanNvblwiIH0sXG4gICAgICAgIH0pO1xuICAgICAgICBpZiAoZGF0YS5zdGF0dXMgIT09IDIwMCkge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QganNvbiA9ICh5aWVsZCBkYXRhLmpzb24oKSk7XG4gICAgICAgIHJldHVybiBqc29uLmJyb3dzZVBhdGg7XG4gICAgfSk7XG4gICAgY29uc3QgY2hvb3NlTm9kZUlkID0gKGRhdGEsIG1vZGUpID0+IHtcbiAgICAgICAgaWYgKGRhdGEuc3RhdHVzQ29kZSAhPT0gXCJHb29kXCIpIHtcbiAgICAgICAgICAgIHJldHVybiBkYXRhLnJlcXVlc3RlZE5vZGVJZDtcbiAgICAgICAgfVxuICAgICAgICBzd2l0Y2ggKG1vZGUpIHtcbiAgICAgICAgICAgIGNhc2UgXCJicm93c2VQYXRoXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIGRhdGEuYnBfaW5kZXhlZDtcbiAgICAgICAgICAgIGNhc2UgXCJhbGlhc2VkQnJvd3NlUGF0aFwiOlxuICAgICAgICAgICAgICAgIHJldHVybiBkYXRhLmJwX2FsaWFzZWQgfHwgZGF0YS5icF9pbmRleGVkO1xuICAgICAgICAgICAgY2FzZSBcImFsaWFzZWROb2RlSWRcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4gZGF0YS5ub2RlSWRfYWxpYXNlZCB8fCBkYXRhLm5vZGVJZF9uc3U7XG4gICAgICAgICAgICBjYXNlIFwibnN1Tm9kZUlEXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIGRhdGEubm9kZUlkX25zdTtcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICBjYXNlIFwibm9kZUlkXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIGRhdGEubm9kZUlkO1xuICAgICAgICB9XG4gICAgfTtcbiAgICBjb25zdCBtYWtlVG9vbHRpcCA9IChkYXRhKSA9PiB7XG4gICAgICAgIGlmIChkYXRhLnN0YXR1c0NvZGUgIT09IFwiR29vZFwiKSB7XG4gICAgICAgICAgICByZXR1cm4gYHN0YXR1c0NvZGU6ICR7ZGF0YS5zdGF0dXNDb2RlfWA7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBsZXQgc3RyID0gW107XG4gICAgICAgICAgICBzdHIucHVzaChgbm9kZUlkOiAke2RhdGEubm9kZUlkfWApO1xuICAgICAgICAgICAgc3RyLnB1c2goYGJyb3dzZSBwYXRoOiAke2RhdGEuYnBfaW5kZXhlZH1gKTtcbiAgICAgICAgICAgIHN0ci5wdXNoKGBub2RlIGNsYXNzOiAke05vZGVDbGFzc1tkYXRhLm5vZGVDbGFzc119YCk7XG4gICAgICAgICAgICBpZiAoZGF0YS5ub2RlSWRfbnN1KSB7XG4gICAgICAgICAgICAgICAgc3RyLnB1c2goYG5zdSBub2RlSWQ6ICR7ZGF0YS5ub2RlSWRfbnN1fWApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGRhdGEubm9kZUlkX2FsaWFzZWQpIHtcbiAgICAgICAgICAgICAgICBzdHIucHVzaChgYWxpYXNlZCBOb2RlSWQ6ICR7ZGF0YS5ub2RlSWRfYWxpYXNlZH1gKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChkYXRhLmJwX2luZGV4ZWQpIHtcbiAgICAgICAgICAgICAgICBzdHIucHVzaChgYWxpYXNlZCBicm93c2VQYXRoOiAke2RhdGEuYnBfYWxpYXNlZH1gKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBzdHIuam9pbihcIlxcblwiKTtcbiAgICAgICAgfVxuICAgIH07XG4gICAgZnVuY3Rpb24gZmlndXJlT3V0TW9kZShlbmhhbmNlZE5vZGVJZCkge1xuICAgICAgICBpZiAoZW5oYW5jZWROb2RlSWQubWF0Y2goL15uc3U9LykpIHtcbiAgICAgICAgICAgIHJldHVybiBcIm5zdU5vZGVJRFwiO1xuICAgICAgICB9XG4gICAgICAgIGlmIChlbmhhbmNlZE5vZGVJZC5tYXRjaCgvXihucz0uKjspPyhpfGJ8c3xnKT0vKSkge1xuICAgICAgICAgICAgcmV0dXJuIFwibm9kZUlkXCI7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGVuaGFuY2VkTm9kZUlkLm1hdGNoKC9ebnNhPS8pKSB7XG4gICAgICAgICAgICByZXR1cm4gXCJhbGlhc2VkTm9kZUlkXCI7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGVuaGFuY2VkTm9kZUlkLm1hdGNoKC9eKFxcL3xcXC4pWzAtOV0rOi8pKSB7XG4gICAgICAgICAgICByZXR1cm4gXCJicm93c2VQYXRoXCI7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGVuaGFuY2VkTm9kZUlkLm1hdGNoKC9eKFxcL3xcXC4pLio6LykpIHtcbiAgICAgICAgICAgIHJldHVybiBcImJyb3dzZVBhdGhcIjtcbiAgICAgICAgfVxuICAgIH1cbiAgICBmdW5jdGlvbiBmaWd1cmVPdXRNZW5VSXRlbVZhbHVlKHN0cikge1xuICAgICAgICBjb25zdCBtb2RlID0gZmlndXJlT3V0TW9kZShzdHIpO1xuICAgICAgICBzd2l0Y2ggKG1vZGUpIHtcbiAgICAgICAgICAgIGNhc2UgXCJub2RlSWRcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4gXCJuXCI7XG4gICAgICAgICAgICBjYXNlIFwiYWxpYXNlZE5vZGVJZFwiOlxuICAgICAgICAgICAgICAgIHJldHVybiBcIm5hXCI7XG4gICAgICAgICAgICBjYXNlIFwibnN1Tm9kZUlEXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIFwibnN1XCI7XG4gICAgICAgICAgICBjYXNlIFwiYnJvd3NlUGF0aFwiOlxuICAgICAgICAgICAgICAgIHJldHVybiBcImJcIjtcbiAgICAgICAgICAgIGNhc2UgXCJhbGlhc2VkQnJvd3NlUGF0aFwiOlxuICAgICAgICAgICAgICAgIHJldHVybiBcImFiXCI7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHJldHVybiBcInRcIjtcbiAgICAgICAgfVxuICAgIH1cbiAgICBmdW5jdGlvbiB0b01vZGUodikge1xuICAgICAgICBsZXQgbW9kZTtcbiAgICAgICAgc3dpdGNoICh2KSB7XG4gICAgICAgICAgICBjYXNlIFwiblwiOlxuICAgICAgICAgICAgICAgIG1vZGUgPSBcIm5vZGVJZFwiO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSBcIm5hXCI6XG4gICAgICAgICAgICAgICAgbW9kZSA9IFwiYWxpYXNlZE5vZGVJZFwiO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSBcIm5zdVwiOlxuICAgICAgICAgICAgICAgIG1vZGUgPSBcIm5zdU5vZGVJRFwiO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSBcImJcIjpcbiAgICAgICAgICAgICAgICBtb2RlID0gXCJicm93c2VQYXRoXCI7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlIFwiYWJcIjpcbiAgICAgICAgICAgICAgICBtb2RlID0gXCJhbGlhc2VkQnJvd3NlUGF0aFwiO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBtb2RlO1xuICAgIH1cbiAgICBmdW5jdGlvbiBmcm9tTW9kZShtb2RlKSB7XG4gICAgICAgIHN3aXRjaCAobW9kZSkge1xuICAgICAgICAgICAgY2FzZSBcIm5vZGVJZFwiOlxuICAgICAgICAgICAgICAgIHJldHVybiBcIm5cIjtcbiAgICAgICAgICAgIGNhc2UgXCJhbGlhc2VkTm9kZUlkXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIFwibmFcIjtcbiAgICAgICAgICAgIGNhc2UgXCJuc3VOb2RlSURcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4gXCJuc3VcIjtcbiAgICAgICAgICAgIGNhc2UgXCJicm93c2VQYXRoXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIFwiYlwiO1xuICAgICAgICAgICAgY2FzZSBcImFsaWFzZWRCcm93c2VQYXRoXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIFwiYWJcIjtcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgcmV0dXJuIFwidFwiO1xuICAgICAgICB9XG4gICAgfVxuICAgIGNvbnN0IF9jYWxsQ2hlY2tOb2RlSWQgPSAoX2EsIG5vZGVJZF8xKSA9PiBfX2F3YWl0ZXIodm9pZCAwLCBbX2EsIG5vZGVJZF8xXSwgdm9pZCAwLCBmdW5jdGlvbiogKHsgZW5kcG9pbnROb2RlLCBlbmRwb2ludCwgYmFzZVVybCB9LCBub2RlSWQpIHtcbiAgICAgICAgY29uc3Qgcm9vdCA9IGAke2Jhc2VVcmx9L29wY3VhLWZvci1ub2RlLXJlZGA7XG4gICAgICAgIGNvbnN0IHVybCA9IGAke3Jvb3R9L2NoZWNrTm9kZUlkYDtcbiAgICAgICAgY29uc3QgZUlkID0gZW5kcG9pbnROb2RlLmlkO1xuICAgICAgICBjb25zdCBuID0gUkVELm5vZGVzLm5vZGUoZUlkKTtcbiAgICAgICAgY29uc29sZS5sb2cobi5uYW1lc3BhY2VBbGlhc2VzKTtcbiAgICAgICAgbi5uYW1lc3BhY2VBbGlhc2VzO1xuICAgICAgICBjb25zdCBuYW1lc3BhY2VBbGlhc2VzID0gZW5kcG9pbnROb2RlLm5hbWVzcGFjZUFsaWFzZXM7XG4gICAgICAgIGNvbnN0IGRhdGEgPSB5aWVsZCBmZXRjaCh1cmwsIHtcbiAgICAgICAgICAgIG1ldGhvZDogXCJQT1NUXCIsXG4gICAgICAgICAgICBib2R5OiBKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgICAgICAgICAgZW5kcG9pbnROb2RlLFxuICAgICAgICAgICAgICAgIGVuZHBvaW50LFxuICAgICAgICAgICAgICAgIG5vZGVJZCxcbiAgICAgICAgICAgICAgICBuYW1lc3BhY2VBbGlhc2VzLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBoZWFkZXJzOiB7IFwiQ29udGVudC1UeXBlXCI6IFwiYXBwbGljYXRpb24vanNvblwiIH0sXG4gICAgICAgIH0pO1xuICAgICAgICBjb25zdCBqc29uID0gKHlpZWxkIGRhdGEuanNvbigpKTtcbiAgICAgICAgcmV0dXJuIHsganNvbiwgZGF0YSB9O1xuICAgIH0pO1xuICAgIGNvbnN0IGludGVybmFsVmVyaWZ5ID0gKF9hLCBtb2RlXzEsICRpbnB1dEVsZW1lbnRfMSwgJGluZm9fMSkgPT4gX19hd2FpdGVyKHZvaWQgMCwgW19hLCBtb2RlXzEsICRpbnB1dEVsZW1lbnRfMSwgJGluZm9fMV0sIHZvaWQgMCwgZnVuY3Rpb24qICh7IGVuZHBvaW50Tm9kZSwgZW5kcG9pbnQsIGJhc2VVcmwgfSwgbW9kZSwgJGlucHV0RWxlbWVudCwgJGluZm8pIHtcbiAgICAgICAgY29uc3QgZW5oYW5jZWROb2RlSWQgPSAkaW5wdXRFbGVtZW50LnZhbCgpO1xuICAgICAgICBjb25zdCB7IGpzb24sIGRhdGEgfSA9IHlpZWxkIF9jYWxsQ2hlY2tOb2RlSWQoeyBlbmRwb2ludE5vZGUsIGVuZHBvaW50LCBiYXNlVXJsIH0sIGVuaGFuY2VkTm9kZUlkKTtcbiAgICAgICAgY29uc3Qgc2V0Tm90aWZpY2F0aW9uID0gKHRleHQsIGNsYXNzTmFtZSkgPT4ge1xuICAgICAgICAgICAgJGluZm8udGV4dCh0ZXh0KS5hZGRDbGFzcyhcInN0ZXJmaXZlLWluZm9cIikuYWRkQ2xhc3MoY2xhc3NOYW1lKTtcbiAgICAgICAgICAgICRpbmZvLnNob3coKTtcbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgICRpbmZvLnJlbW92ZUNsYXNzKGNsYXNzTmFtZSk7XG4gICAgICAgICAgICAgICAgJGluZm8uaGlkZSgpO1xuICAgICAgICAgICAgfSwgMzAwMCk7XG4gICAgICAgIH07XG4gICAgICAgIGlmIChkYXRhLnN0YXR1cyAhPT0gMjAwKSB7XG4gICAgICAgICAgICAvLyBkbyBzb21ldGhpbmc7XG4gICAgICAgICAgICBzZXROb3RpZmljYXRpb24oXCIhIWZhaWx1cmUhIVwiICsgZW5oYW5jZWROb2RlSWQsIFwiZmFpbHVyZVwiKTtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGlmIChqc29uLnN0YXR1c0NvZGUubWF0Y2goL0dvb2QvKSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHRvb2x0aXAgPSBtYWtlVG9vbHRpcChqc29uKTtcbiAgICAgICAgICAgICAgICAkaW5wdXRFbGVtZW50LmF0dHIoXCJ0aXRsZVwiLCB0b29sdGlwKTtcbiAgICAgICAgICAgICAgICAvLyBkbyBzb21ldGhpbmdcbiAgICAgICAgICAgICAgICBjb25zdCBzZWxlY3RlZE5vZGVJZCA9IGNob29zZU5vZGVJZChqc29uLCBtb2RlKTtcbiAgICAgICAgICAgICAgICAkaW5wdXRFbGVtZW50LnZhbChzZWxlY3RlZE5vZGVJZCk7XG4gICAgICAgICAgICAgICAgJGlucHV0RWxlbWVudC50cmlnZ2VyKFwiY2hhbmdlXCIpO1xuICAgICAgICAgICAgICAgIHNldE5vdGlmaWNhdGlvbihcIkdvb2RcIiwgXCJva1wiKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICRpbnB1dEVsZW1lbnQudmFsKGAke2VuaGFuY2VkTm9kZUlkfWApO1xuICAgICAgICAgICAgICAgIHNldE5vdGlmaWNhdGlvbihgJHtqc29uLnN0YXR1c0NvZGV9ICR7ZGF0YS5zdGF0dXNUZXh0fWAsIFwiZmFpbHVyZVwiKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9KTtcbiAgICBmdW5jdGlvbiBmZXRjaENoaWxkcmVuKCRub2RlLCBkYXRhKSB7XG4gICAgICAgIHJldHVybiBfX2F3YWl0ZXIodGhpcywgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKiAoKSB7XG4gICAgICAgICAgICBjb25zdCBub2RlSWQgPSAkbm9kZS5kYXRhKFwidmFsdWVcIik7XG4gICAgICAgICAgICBjb25zdCBicm93c2VSZXN1bHQxID0geWllbGQgYnJvd3NlKGRhdGEsIG5vZGVJZCwgdGVtcGxhdGUxKTtcbiAgICAgICAgICAgIGNvbnN0IGJyb3dzZVJlc3VsdDIgPSB5aWVsZCBicm93c2UoZGF0YSwgbm9kZUlkLCB0ZW1wbGF0ZTIpO1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICByZWZlcmVuY2VzOiBbLi4uYnJvd3NlUmVzdWx0MS5yZWZlcmVuY2VzLCAuLi5icm93c2VSZXN1bHQyLnJlZmVyZW5jZXNdLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIGNvbnN0IHRlbXBsYXRlU1QgPSB7XG4gICAgICAgIHJlZmVyZW5jZVR5cGVJZDogcmVzb2x2ZU5vZGVJZChcIkhhc1N1YnR5cGVcIiksXG4gICAgICAgIGluY2x1ZGVTdWJ0eXBlczogdHJ1ZSxcbiAgICAgICAgYnJvd3NlRGlyZWN0aW9uOiBCcm93c2VEaXJlY3Rpb24uRm9yd2FyZCxcbiAgICAgICAgbm9kZUNsYXNzTWFzazogTm9kZUNsYXNzLlJlZmVyZW5jZVR5cGUgfCBOb2RlQ2xhc3MuT2JqZWN0VHlwZSB8IE5vZGVDbGFzcy5EYXRhVHlwZSB8IE5vZGVDbGFzcy5WYXJpYWJsZVR5cGUsXG4gICAgICAgIHJlc3VsdE1hc2s6IDYzLFxuICAgIH07XG4gICAgZnVuY3Rpb24gZmV0Y2hTdWJ0eXBlcygkbm9kZSwgZGF0YSkge1xuICAgICAgICByZXR1cm4gX19hd2FpdGVyKHRoaXMsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICAgICAgY29uc3Qgbm9kZUlkID0gJG5vZGUuZGF0YShcInZhbHVlXCIpO1xuICAgICAgICAgICAgY29uc3QgYnJvd3NlUmVzdWx0MSA9IHlpZWxkIGJyb3dzZShkYXRhLCBub2RlSWQsIHRlbXBsYXRlU1QpO1xuICAgICAgICAgICAgcmV0dXJuIGJyb3dzZVJlc3VsdDE7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBjb25zdCBtYWtlRWxlbWVudCA9IChyZWZlcmVuY2UpID0+IHtcbiAgICAgICAgdmFyIF9hLCBfYiwgX2MsIF9kO1xuICAgICAgICBpZiAoIXJlZmVyZW5jZSB8fCAhcmVmZXJlbmNlLm5vZGVJZCkge1xuICAgICAgICAgICAgY29uc3QgJGVsZW1lbnQgPSAkKGA8bGk+PGkgY2xhc3M9XCJmYSBmYS1lcnJvclwiIHN0eWxlPVwiY29sb3I6cmVkO1wiPjwvaT5ubyByZWZlcmVuY2UgITx1bD48L3VsPjwvbGk+YCk7XG4gICAgICAgICAgICByZXR1cm4gJGVsZW1lbnQ7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgbiA9IHJlZmVyZW5jZS5ub2RlSWQudG9TdHJpbmcoKTtcbiAgICAgICAgY29uc3QgdCA9ICgoX2EgPSByZWZlcmVuY2UuZGlzcGxheU5hbWUpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS50ZXh0KSB8fCAoKF9iID0gcmVmZXJlbmNlLmJyb3dzZU5hbWUpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5uYW1lKSB8fCByZWZlcmVuY2Uubm9kZUlkLnRvU3RyaW5nKCk7XG4gICAgICAgIGNvbnN0IHsgaWNvbiwgY29sb3IgfSA9IGdldEljb24ocmVmZXJlbmNlKTtcbiAgICAgICAgY29uc3QgdGl0bGUgPSBgKCR7cmVmZXJlbmNlLm5vZGVJZC50b1N0cmluZygpfSkgJHsoKF9jID0gcmVmZXJlbmNlLmJyb3dzZU5hbWUpID09PSBudWxsIHx8IF9jID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYy5uYW1lKSB8fCAoKF9kID0gcmVmZXJlbmNlLmRpc3BsYXlOYW1lKSA9PT0gbnVsbCB8fCBfZCA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2QudGV4dCkgfHwgXCJcIn1gO1xuICAgICAgICBjb25zdCAkZWxlbWVudCA9ICQoYDxsaSBrZXk9XCIke3JlZmVyZW5jZS5ub2RlSWQudG9TdHJpbmcoKX1cIn0+PHNwYW4gY2xhc3M9XCJ0cmVlLXRleHRcIiB0aXRsZT0ke3RpdGxlfT48aSBjbGFzcz1cImZhICR7aWNvbn1cIiBzdHlsZT1cImNvbG9yOiR7Y29sb3J9O1wiPjwvaT4gJHt0fTwvc3Bhbj48dWw+PC91bD48L2xpPmApO1xuICAgICAgICAkZWxlbWVudC5hZGRDbGFzcyhcImV4cGFuZGFibGVcIik7XG4gICAgICAgICRlbGVtZW50LmRhdGEoXCJ2YWx1ZVwiLCBuKTtcbiAgICAgICAgJGVsZW1lbnQuZGF0YShcInJlZmVyZW5jZVwiLCByZWZlcmVuY2UpO1xuICAgICAgICByZXR1cm4gJGVsZW1lbnQ7XG4gICAgfTtcbiAgICBjb25zdCBmaW5kRWxlbWVudCA9IChub2RlSWQsICR0cmVlKSA9PiB7XG4gICAgICAgIHJldHVybiAkdHJlZS5maW5kKGBsaVtrZXk9XCIke25vZGVJZH1cIl1gKTtcbiAgICB9O1xuICAgIGNvbnN0IHNlbGVjdFNpbmdsZSA9ICh0aGF0LCAkbGkpID0+IHtcbiAgICAgICAgdGhhdC4kdHJlZS5maW5kKFwibGkgPiAudHJlZS10ZXh0XCIpLnJlbW92ZUNsYXNzKFwic2VsZWN0ZWRcIik7XG4gICAgICAgIC8vIGNsZWFyIGFsbCBzZWxlY3RlZCBpdGVtc1xuICAgICAgICAkbGkuZmluZChcIi50cmVlLXRleHQ6Zmlyc3RcIikuYWRkQ2xhc3MoXCJzZWxlY3RlZFwiKTtcbiAgICB9O1xuICAgIGNvbnN0IGF1dG9FeHBhbmQgPSAodGhhdCwgYnJvd3NlUGF0aCwgJHRyZWUpID0+IF9fYXdhaXRlcih2b2lkIDAsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICAvLyBleHBhbmQgdGhlIHRyZWUgdG8gc2hvdyB0aGUgbm9kZUlkXG4gICAgICAgIGxldCAkY3VycmVudCA9ICR0cmVlLmNoaWxkcmVuKFwiOmZpcnN0XCIpO1xuICAgICAgICBicm93c2VQYXRoLnJlbGF0aXZlUGF0aC5lbGVtZW50cyB8fCBbXTtcbiAgICAgICAgY29uc3Qgbm9kZUlkcyA9IGJyb3dzZVBhdGgubm9kZUlkcyB8fCBbXTtcbiAgICAgICAgaWYgKG5vZGVJZHMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgZm9yIChjb25zdCBuIG9mIG5vZGVJZHMpIHtcbiAgICAgICAgICAgIGlmICgkY3VycmVudC5oYXNDbGFzcyhcImV4cGFuZGFibGVcIikpIHtcbiAgICAgICAgICAgICAgICAvLyBuZWVkIHRvIGV4cGFuZCBhbmQgc2VsZWN0IHRoZSByaWdodCBlbGVtZW50XG4gICAgICAgICAgICAgICAgeWllbGQgX2V4cGFuZExpKHRoYXQsICRjdXJyZW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0ICRlbGVtZW50ID0gZmluZEVsZW1lbnQobiwgJGN1cnJlbnQpO1xuICAgICAgICAgICAgaWYgKCRlbGVtZW50Lmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICRjdXJyZW50ID0gJGVsZW1lbnQ7XG4gICAgICAgIH1cbiAgICAgICAgc2VsZWN0U2luZ2xlKHRoYXQsICRjdXJyZW50KTtcbiAgICAgICAgc2Nyb2xsVG9MaSh0aGF0LiRkcm9wZG93biwgJGN1cnJlbnQpO1xuICAgIH0pO1xuICAgIGZ1bmN0aW9uIHNjcm9sbFRvTGkoJGNvbnRhaW5lciwgJHRhcmdldExpKSB7XG4gICAgICAgIC8vIEdldCB0aGUgcG9zaXRpb24gb2YgdGhlIHRhcmdldCBpdGVtIHJlbGF0aXZlIHRvIGl0cyBjb250YWluZXJcbiAgICAgICAgY29uc3QgbGlQb3MgPSAkdGFyZ2V0TGkucG9zaXRpb24oKS50b3A7XG4gICAgICAgIC8vIEdldCB0aGUgY3VycmVudCBzY3JvbGwgcG9zaXRpb24gb2YgdGhlIGNvbnRhaW5lclxuICAgICAgICBjb25zdCBjb250YWluZXJTY3JvbGxUb3AgPSAkY29udGFpbmVyLnNjcm9sbFRvcCgpO1xuICAgICAgICBpZiAoY29udGFpbmVyU2Nyb2xsVG9wID09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIC8vIENhbGN1bGF0ZSB0aGUgcG9zaXRpb24gdG8gc2Nyb2xsIHRvIChjdXJyZW50IHNjcm9sbCArIGl0ZW0ncyBwb3NpdGlvbilcbiAgICAgICAgLy8gQWRqdXN0IHRoaXMgY2FsY3VsYXRpb24gYmFzZWQgb24geW91ciBuZWVkc1xuICAgICAgICBjb25zdCBzY3JvbGxUbyA9IGNvbnRhaW5lclNjcm9sbFRvcCArIGxpUG9zIC0gJGNvbnRhaW5lci5oZWlnaHQoKSAvIDIgKyAkdGFyZ2V0TGkuaGVpZ2h0KCkgLyAyO1xuICAgICAgICAvLyBTY3JvbGwgdGhlIGNvbnRhaW5lciB0byBlbnN1cmUgdGhlIGl0ZW0gaXMgdmlzaWJsZVxuICAgICAgICAkY29udGFpbmVyLmFuaW1hdGUoe1xuICAgICAgICAgICAgc2Nyb2xsVG9wOiBzY3JvbGxUbyxcbiAgICAgICAgfSwgNTAwKTsgLy8gQWRqdXN0IHRoZSBkdXJhdGlvbiAoNTAwbXMpIGFzIG5lZWRlZFxuICAgIH1cbiAgICBjb25zdCByZWFjaFNlbGVjdGlvbiA9ICh0aGF0LCBwYXJlbnROb2RlKSA9PiBfX2F3YWl0ZXIodm9pZCAwLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24qICgpIHtcbiAgICAgICAgY29uc3Qgbm9kZUlkID0gdGhhdC4kaW5wdXQudmFsKCk7XG4gICAgICAgIGNvbnN0IG9wdGlvbnMgPSB7XG4gICAgICAgICAgICBub2RlSWQsXG4gICAgICAgICAgICByb290Tm9kZUlkOiBwYXJlbnROb2RlLm5vZGVJZCxcbiAgICAgICAgICAgIGlzVHlwZTogdGhhdC5vcHRpb25zLmlzVHlwZVJlZiB8fCBmYWxzZSxcbiAgICAgICAgfTtcbiAgICAgICAgY29uc3QgZGF0YSA9IG1ha2VDb25uZWN0aW9uKHRoYXQpO1xuICAgICAgICBjb25zdCBicm93c2VQYXRoID0geWllbGQgd2Fsa0JhY2t3YXJkKGRhdGEsIG9wdGlvbnMpO1xuICAgICAgICBpZiAoIWJyb3dzZVBhdGgpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB5aWVsZCBhdXRvRXhwYW5kKHRoYXQsIGJyb3dzZVBhdGgsIHRoYXQuJHRyZWUpO1xuICAgIH0pO1xuICAgIGZ1bmN0aW9uIF9mZXRjaERhdGFGb3JOb2RlKHRoYXQsICRub2RlLCBmZXRjaEZ1bmMsIGRhdGEpIHtcbiAgICAgICAgcmV0dXJuIF9fYXdhaXRlcih0aGlzLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24qICgpIHtcbiAgICAgICAgICAgIGlmICgkbm9kZS5oYXNDbGFzcyhcImZldGNoZWRcIikpIHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhcImFscmVhZHkgZmV0Y2hlZFwiKTtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoJG5vZGUuaGFzQ2xhc3MoXCJsb2FkaW5nXCIpKSB7XG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2coXCJhbHJlYWR5IGxvYWRpbmdcIik7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJG5vZGUuYWRkQ2xhc3MoXCJsb2FkaW5nXCIpO1xuICAgICAgICAgICAgJG5vZGUuYXBwZW5kKCc8ZGl2IGNsYXNzPVwic3Bpbm5lclwiPjwvZGl2PicpO1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAkbm9kZS5jaGlsZHJlbihcInVsXCIpLmVtcHR5KCk7XG4gICAgICAgICAgICAgICAgY29uc3QgeyByZWZlcmVuY2VzIH0gPSB5aWVsZCBmZXRjaEZ1bmMoJG5vZGUsIGRhdGEpO1xuICAgICAgICAgICAgICAgIC8vIHNvcnQgcmVmZXJlbmNlICAgYnkgYnJvd3NlTmFtZVxuICAgICAgICAgICAgICAgIHJlZmVyZW5jZXMuc29ydCgoYSwgYikgPT4geyB2YXIgX2EsIF9iOyByZXR1cm4gKCgoX2EgPSBhLmJyb3dzZU5hbWUpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5uYW1lKSB8fCBcIlwiKS5sb2NhbGVDb21wYXJlKCgoX2IgPSBiLmJyb3dzZU5hbWUpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5uYW1lKSB8fCBcIlwiKTsgfSk7XG4gICAgICAgICAgICAgICAgZm9yIChjb25zdCByZWZlcmVuY2Ugb2YgcmVmZXJlbmNlcykge1xuICAgICAgICAgICAgICAgICAgICBpZiAodGhhdC5vcHRpb25zLmZpbHRlciAmJiAhdGhhdC5vcHRpb25zLmZpbHRlcihyZWZlcmVuY2UpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBjb25zdCAkZWxlbWVudCA9IG1ha2VFbGVtZW50KHJlZmVyZW5jZSk7XG4gICAgICAgICAgICAgICAgICAgICRub2RlLmNoaWxkcmVuKFwidWxcIikuYXBwZW5kKCRlbGVtZW50KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJG5vZGUuYWRkQ2xhc3MoXCJmZXRjaGVkXCIpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2F0Y2ggKGVycikge1xuICAgICAgICAgICAgICAgICRub2RlLmNoaWxkcmVuKFwidWxcIikuYXBwZW5kKGA8bGk+ZXJyb3IgJHtlcnIubWVzc2FnZX08L2xpPmApO1xuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiZXJyXCIsIGVycik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAkbm9kZS5maW5kKFwiLnNwaW5uZXJcIikucmVtb3ZlKCk7XG4gICAgICAgICAgICAkbm9kZS5yZW1vdmVDbGFzcyhcImxvYWRpbmdcIik7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBmdW5jdGlvbiBtYWtlQ29ubmVjdGlvbih0aGF0KSB7XG4gICAgICAgIGNvbnN0IGRhdGEgPSB7XG4gICAgICAgICAgICBiYXNlVXJsOiB0aGF0Lm9wdGlvbnMuYmFzZVVybCxcbiAgICAgICAgICAgIGVuZHBvaW50Tm9kZTogdHlwZW9mIHRoYXQub3B0aW9ucy5lbmRwb2ludE5vZGUgPT09IFwiZnVuY3Rpb25cIiA/IHRoYXQub3B0aW9ucy5lbmRwb2ludE5vZGUoKSA6IHRoYXQub3B0aW9ucy5lbmRwb2ludE5vZGUsXG4gICAgICAgICAgICBlbmRwb2ludDogdHlwZW9mIHRoYXQub3B0aW9ucy5lbmRwb2ludCA9PT0gXCJmdW5jdGlvblwiID8gdGhhdC5vcHRpb25zLmVuZHBvaW50KCkgOiB0aGF0Lm9wdGlvbnMuZW5kcG9pbnQsXG4gICAgICAgIH07XG4gICAgICAgIHJldHVybiBkYXRhO1xuICAgIH1cbiAgICBmdW5jdGlvbiBfZXhwYW5kTGkodGhhdCwgJGxpKSB7XG4gICAgICAgIHJldHVybiBfX2F3YWl0ZXIodGhpcywgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKiAoKSB7XG4gICAgICAgICAgICBpZiAoJGxpLmhhc0NsYXNzKFwiZmV0Y2hlZFwiKSkge1xuICAgICAgICAgICAgICAgICRsaS5yZW1vdmVDbGFzcyhcImV4cGFuZGFibGVcIikuYWRkQ2xhc3MoXCJleHBhbmRlZFwiKTtcbiAgICAgICAgICAgICAgICAkbGkuY2hpbGRyZW4oXCJ1bFwiKS50b2dnbGUoKTtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBGZXRjaCBuZXcgZGF0YSBmb3IgdGhpcyBub2RlXG4gICAgICAgICAgICBjb25zdCBkYXRhID0gbWFrZUNvbm5lY3Rpb24odGhhdCk7XG4gICAgICAgICAgICBjb25zdCBmID0gIXRoYXQub3B0aW9ucy5pc1R5cGVSZWYgPyBmZXRjaENoaWxkcmVuIDogZmV0Y2hTdWJ0eXBlcztcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgeWllbGQgX2ZldGNoRGF0YUZvck5vZGUodGhhdCwgJGxpLCBmLCBkYXRhKTtcbiAgICAgICAgICAgICAgICAvLyBtYXJrIGFzIGV4cGFuZGVkXG4gICAgICAgICAgICAgICAgJGxpLnJlbW92ZUNsYXNzKFwiZXhwYW5kYWJsZVwiKS5hZGRDbGFzcyhcImV4cGFuZGVkXCIpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2F0Y2ggKGVycikge1xuICAgICAgICAgICAgICAgICRsaS5yZW1vdmVDbGFzcyhcImV4cGFuZGFibGVcIikuYWRkQ2xhc3MoXCJleHBhbmRlZFwiKTtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhcImVycm9yXCIsIGVycik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBjb25zdCBkZWZhdWx0UGFyZW50Tm9kZSA9IHtcbiAgICAgICAgYnJvd3NlTmFtZTogeyBuYW1lc3BhY2VJbmRleDogMCwgbmFtZTogXCJPYmplY3RzXCIgfSxcbiAgICAgICAgbm9kZUNsYXNzOiBcIk9iamVjdFwiLFxuICAgICAgICBub2RlSWQ6IFwibnM9MDtpPTg1XCIsXG4gICAgICAgIGRpc3BsYXlOYW1lOiB7IHRleHQ6IFwiT2JqZWN0c1wiIH0sXG4gICAgICAgIHR5cGVEZWZpbml0aW9uOiBGb2xkZXJUeXBlLFxuICAgIH07XG4gICAgY29uc3QgZGVjbGFyZU5vZGVCcm93c2VyV2lkZ2V0ID0gKCkgPT4ge1xuICAgICAgICAvKipcbiAgICAgICAgICogWyBUZW1wZXJhdHVyZSAgXVxuICAgICAgICAgKiAgICggdG9vbHRpcCA6ICgvT2JqZWN0cy9NeVNlbnNvcikgKG5zPTE7cz1UZW1wZXJhdHVyZSkpXG4gICAgICAgICAqIFsgKyBbRm9sZGVyXSBPYmplY3RzXVxuICAgICAgICAgKiBbICAgICBbT2JqZWN0XSBNeVNlbnNvcl1cbiAgICAgICAgICogWyAgICAgKCApIFtWYXJpYWJsZV0gVGVtcGVyYXR1cmVdXG4gICAgICAgICAqL1xuICAgICAgICAkLndpZGdldChcInN0ZXJmaXZlLm5vZGVCcm93c2VyXCIsIHtcbiAgICAgICAgICAgIC8qIGRlZmF1bHQgb3B0aW9ucyAqL1xuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICAgIGVuZHBvaW50Tm9kZTogKCkgPT4gKHsgZW5kcG9pbnQ6IFwib3BjLnRjcDovL29wY3VhZGVtby5zdGVyZml2ZS5jb206MjY1NDNcIiB9KSxcbiAgICAgICAgICAgICAgICBlbmRwb2ludDogKCkgPT4gdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgIHBhcmVudE5vZGU6ICgpID0+IGRlZmF1bHRQYXJlbnROb2RlLFxuICAgICAgICAgICAgICAgIGZpbHRlcjogKCkgPT4gdHJ1ZSxcbiAgICAgICAgICAgICAgICBiYXNlVXJsOiBcIlwiLFxuICAgICAgICAgICAgICAgIGlzVHlwZVJlZjogZmFsc2UsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgcmVzb2x2ZVBhcmVudE5vZGUoKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIF9fYXdhaXRlcih0aGlzLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24qICgpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgdGhhdCA9IHRoaXM7XG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGF0Ll9fcGFyZW50Tm9kZSA9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGEgPSB0eXBlb2YgdGhhdC5vcHRpb25zLnBhcmVudE5vZGUgPT09IFwiZnVuY3Rpb25cIiA/IHRoYXQub3B0aW9ucy5wYXJlbnROb2RlLmNhbGwodGhhdCkgOiB0aGF0Lm9wdGlvbnMucGFyZW50Tm9kZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChhIGluc3RhbmNlb2YgUHJvbWlzZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGRlc2MgPSB5aWVsZCBhO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuX19wYXJlbnROb2RlID0gZGVzYztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuX19wYXJlbnROb2RlID0gYTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhhdC5fX3BhcmVudE5vZGUgfHwgZGVmYXVsdFBhcmVudE5vZGU7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgcmVzZXQoKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIF9fYXdhaXRlcih0aGlzLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24qICgpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgdGhhdCA9IHRoaXM7XG4gICAgICAgICAgICAgICAgICAgIC8vIGFsc28gcmVzZXQgcGFyZW50IG5vZGVcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgYSA9IHRoYXQ7XG4gICAgICAgICAgICAgICAgICAgIGEuX19wYXJlbnROb2RlID0gdW5kZWZpbmVkO1xuICAgICAgICAgICAgICAgICAgICB0aGF0LiR0cmVlLmVtcHR5KCk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHBhcmVudE5vZGUgPSB5aWVsZCB0aGlzLnJlc29sdmVQYXJlbnROb2RlKCk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0ICRlbGVtZW50ID0gbWFrZUVsZW1lbnQocGFyZW50Tm9kZSk7XG4gICAgICAgICAgICAgICAgICAgIHRoYXQuJHRyZWUuYXBwZW5kKCRlbGVtZW50KTtcbiAgICAgICAgICAgICAgICAgICAgdGhhdC5jdXJyZW50UGFyZW50ID0gcGFyZW50Tm9kZTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB2ZXJpZnkobW9kZSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHRoYXQgPSB0aGlzO1xuICAgICAgICAgICAgICAgIC8vIEZldGNoIG5ldyBkYXRhIGZvciB0aGlzIG5vZGVcbiAgICAgICAgICAgICAgICBjb25zdCBkYXRhID0gbWFrZUNvbm5lY3Rpb24odGhhdCk7XG4gICAgICAgICAgICAgICAgaW50ZXJuYWxWZXJpZnkoZGF0YSwgbW9kZSwgdGhhdC4kaW5wdXQsIHRoYXQuJGluZm8pLnRoZW4oKHN1Y2Nlc3MpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFzdWNjZXNzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGF0LiRjb21iby5hZGRDbGFzcyhcInN0ZXJmaXZlLWlucHV0LWVycm9yXCIpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC4kY29tYm8ucmVtb3ZlQ2xhc3MoXCJzdGVyZml2ZS1pbnB1dC1lcnJvclwiKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIF9oaWRlTWVudShtZW51KSB7XG4gICAgICAgICAgICAgICAgY29uc3QgdGhhdCA9IHRoaXM7XG4gICAgICAgICAgICAgICAgJChkb2N1bWVudCkub2ZmKFwibW91c2Vkb3duLnJlZC11aS10eXBlZElucHV0LWNsb3NlLXByb3BlcnR5LXNlbGVjdFwiKTtcbiAgICAgICAgICAgICAgICBtZW51LmhpZGUoKTtcbiAgICAgICAgICAgICAgICBtZW51LmNzcyh7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogXCJhdXRvXCIsXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgaWYgKG1lbnUub3B0cy5tdWx0aXBsZSkge1xuICAgICAgICAgICAgICAgICAgICB2YXIgc2VsZWN0ZWQgPSBbXTtcbiAgICAgICAgICAgICAgICAgICAgbWVudS5maW5kKCdpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0nKS5lYWNoKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgkKHRoaXMpLnByb3AoXCJjaGVja2VkXCIpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0ZWQucHVzaCgkKHRoaXMpLmRhdGEoXCJ2YWx1ZVwiKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICBtZW51LmNhbGxiYWNrKHNlbGVjdGVkKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKHRoYXQuJGVsZW1lbnREaXYuaXMoXCI6dmlzaWJsZVwiKSkge1xuICAgICAgICAgICAgICAgICAgICB0aGF0LiRpbnB1dC50cmlnZ2VyKFwiZm9jdXNcIik7XG4gICAgICAgICAgICAgICAgICAgIC8veHggfSBlbHNlIGlmICh0aGlzLiRvcHRpb25TZWxlY3RUcmlnZ2VyLmlzKFwiOnZpc2libGVcIikpIHtcbiAgICAgICAgICAgICAgICAgICAgLy94eCAgICAgdGhhdC4kb3B0aW9uU2VsZWN0VHJpZ2dlci50cmlnZ2VyKFwiZm9jdXNcIik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0aGF0LiRzZWxlY3RUcmlnZ2VyLnRyaWdnZXIoXCJmb2N1c1wiKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgX2NyZWF0ZU1lbnUobWVudU9wdGlvbnMsIG9wdHMsIGNhbGxiYWNrKSB7XG4gICAgICAgICAgICAgICAgdmFyIHRoYXQgPSB0aGlzO1xuICAgICAgICAgICAgICAgIGNvbnN0IG1lbnUgPSAkKFwiPGRpdj5cIikuYWRkQ2xhc3MoXCJzdGVyZml2ZS10eXBlZElucHV0LW9wdGlvbnMgc3RlcmZpdmUtb25saW5lLW1lbnVcIik7XG4gICAgICAgICAgICAgICAgbWVudS5vcHRzID0gb3B0cztcbiAgICAgICAgICAgICAgICBtZW51LmNhbGxiYWNrID0gY2FsbGJhY2s7XG4gICAgICAgICAgICAgICAgbWVudU9wdGlvbnMuZm9yRWFjaCgob3B0KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmICh0eXBlb2Ygb3B0ID09PSBcInN0cmluZ1wiKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcHQgPSB7IHZhbHVlOiBvcHQsIGxhYmVsOiBvcHQgfTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB2YXIgb3AgPSAkKCc8YSBocmVmPVwiI1wiPjwvYT4nKS5hdHRyKFwidmFsdWVcIiwgb3B0LnZhbHVlKS5hcHBlbmRUbyhtZW51KTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKG9wdC5sYWJlbCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3AudGV4dChvcHQubGFiZWwpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGlmIChvcHQudGl0bGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wLnByb3AoXCJ0aXRsZVwiLCBvcHQudGl0bGUpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGlmIChvcHQuaWNvbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG9wdC5pY29uLmluZGV4T2YoXCI8XCIpID09PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJChvcHQuaWNvbikucHJlcGVuZFRvKG9wKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKG9wdC5pY29uLmluZGV4T2YoXCIvXCIpICE9PSAtMSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoXCI8aT5cIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzczogXCJyZWQtdWktdHlwZWRJbnB1dC1pY29uXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlOiBcIm1hc2staW1hZ2U6IHVybChcIiArIG9wdC5pY29uICsgXCIpOyAtd2Via2l0LW1hc2staW1hZ2U6IHVybChcIiArIG9wdC5pY29uICsgXCIpO1wiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLnByZXBlbmRUbyhvcCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKFwiPGk+XCIsIHsgY2xhc3M6IFwicmVkLXVpLXR5cGVkSW5wdXQtaWNvbiBcIiArIG9wdC5pY29uIH0pLnByZXBlbmRUbyhvcCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcC5jc3MoeyBwYWRkaW5nTGVmdDogXCIxOHB4XCIgfSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYgKCFvcHQuaWNvbiAmJiAhb3B0LmxhYmVsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcC50ZXh0KG9wdC52YWx1ZSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgdmFyIGNiO1xuICAgICAgICAgICAgICAgICAgICBpZiAob3B0cy5tdWx0aXBsZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY2IgPSAkKCc8aW5wdXQgdHlwZT1cImNoZWNrYm94XCI+JylcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuY3NzKFwicG9pbnRlci1ldmVudHNcIiwgXCJub25lXCIpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmRhdGEoXCJ2YWx1ZVwiLCBvcHQudmFsdWUpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnByZXBlbmRUbyhvcClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAub24oXCJtb3VzZWRvd25cIiwgZnVuY3Rpb24gKGV2dCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV2dC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgb3Aub24oXCJjbGlja1wiLCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghb3B0cy5tdWx0aXBsZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrKG9wdC52YWx1ZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5faGlkZU1lbnUobWVudSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYi5wcm9wKFwiY2hlY2tlZFwiLCAhY2IucHJvcChcImNoZWNrZWRcIikpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBtZW51LmNzcyh7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IFwibm9uZVwiLFxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIG1lbnUub24oXCJrZXlkb3duXCIsIGZ1bmN0aW9uIChldnQpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGV2dC5rZXlDb2RlID09PSA0MCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZXZ0LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBET1dOXG4gICAgICAgICAgICAgICAgICAgICAgICAkKHRoaXMpLmNoaWxkcmVuKFwiOmZvY3VzXCIpLm5leHQoKS50cmlnZ2VyKFwiZm9jdXNcIik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoZXZ0LmtleUNvZGUgPT09IDM4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBldnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIFVQXG4gICAgICAgICAgICAgICAgICAgICAgICAkKHRoaXMpLmNoaWxkcmVuKFwiOmZvY3VzXCIpLnByZXYoKS50cmlnZ2VyKFwiZm9jdXNcIik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoZXZ0LmtleUNvZGUgPT09IDI3KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBFU0NBUEVcbiAgICAgICAgICAgICAgICAgICAgICAgIGV2dC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5faGlkZU1lbnUobWVudSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZXZ0LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIHJldHVybiBtZW51O1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGRpc2FybUNsaWNrOiBmYWxzZSxcbiAgICAgICAgICAgIF9zaG93TWVudShtZW51LCByZWxhdGl2ZVRvKSB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuZGlzYXJtQ2xpY2spIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kaXNhcm1DbGljayA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHZhciB0aGF0ID0gdGhpcztcbiAgICAgICAgICAgICAgICB2YXIgcG9zID0gcmVsYXRpdmVUby5vZmZzZXQoKTtcbiAgICAgICAgICAgICAgICB2YXIgaGVpZ2h0ID0gcmVsYXRpdmVUby5oZWlnaHQoKTtcbiAgICAgICAgICAgICAgICB2YXIgbWVudUhlaWdodCA9IG1lbnUuaGVpZ2h0KCk7XG4gICAgICAgICAgICAgICAgdmFyIHRvcCA9IGhlaWdodCArIHBvcy50b3A7XG4gICAgICAgICAgICAgICAgaWYgKHRvcCArIG1lbnVIZWlnaHQgLSAkKGRvY3VtZW50KS5zY3JvbGxUb3AoKSA+ICQod2luZG93KS5oZWlnaHQoKSkge1xuICAgICAgICAgICAgICAgICAgICB0b3AgLT0gdG9wICsgbWVudUhlaWdodCAtICQod2luZG93KS5oZWlnaHQoKSArIDU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICh0b3AgPCAwKSB7XG4gICAgICAgICAgICAgICAgICAgIG1lbnUuaGVpZ2h0KG1lbnVIZWlnaHQgKyB0b3ApO1xuICAgICAgICAgICAgICAgICAgICB0b3AgPSAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBtZW51LmNzcyh7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogdG9wICsgXCJweFwiLFxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiBwb3MubGVmdCArIFwicHhcIixcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBtZW51LnNsaWRlRG93bigxMDApO1xuICAgICAgICAgICAgICAgIHRoaXMuX2RlbGF5KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhhdC4kdWlTZWxlY3QuYWRkQ2xhc3MoXCJyZWQtdWktdHlwZWRJbnB1dC1mb2N1c1wiKTtcbiAgICAgICAgICAgICAgICAgICAgJChkb2N1bWVudCkub24oXCJtb3VzZWRvd24ucmVkLXVpLXR5cGVkSW5wdXQtY2xvc2UtcHJvcGVydHktc2VsZWN0XCIsIGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCEkKGV2ZW50LnRhcmdldCkuY2xvc2VzdChtZW51KS5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGF0Ll9oaWRlTWVudShtZW51KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgkKGV2ZW50LnRhcmdldCkuY2xvc2VzdChyZWxhdGl2ZVRvKS5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGF0LmRpc2FybUNsaWNrID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBfc2hvd1R5cGVNZW51KCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHRoYXQgPSB0aGlzO1xuICAgICAgICAgICAgICAgIHRoaXMuX3Nob3dNZW51KHRoYXQuJG1lbnUsIHRoYXQuJGNvbWJvKTtcbiAgICAgICAgICAgICAgICB0aGF0LiRkcm9wZG93bi5oaWRlKCk7XG4gICAgICAgICAgICAgICAgY29uc3QgdHlwZSA9IHRoYXQuc2VsZWN0ZWRNZW51SXRlbTtcbiAgICAgICAgICAgICAgICB2YXIgc2VsZWN0ZWQgPSB0aGF0LiRtZW51LmZpbmQoXCJbdmFsdWU9J1wiICsgdHlwZSArIFwiJ1wiKTtcbiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgICAgc2VsZWN0ZWQudHJpZ2dlcihcImZvY3VzXCIpO1xuICAgICAgICAgICAgICAgIH0sIDEyMCk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgX2luaXRNZW51KCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHRoYXQgPSB0aGlzO1xuICAgICAgICAgICAgICAgIHRoYXQuJHNlbGVjdFRyaWdnZXIuYXR0cihcInRhYmluZGV4XCIsIC0xKTtcbiAgICAgICAgICAgICAgICB0aGF0LiRzZWxlY3RUcmlnZ2VyLm9uKFwibW91c2Vkb3duLnJlZC11aS10eXBlZElucHV0LWZvY3VzLWJsb2NrXCIsIGZ1bmN0aW9uIChldnQpIHtcbiAgICAgICAgICAgICAgICAgICAgZXZ0LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgaWYgKHRoYXQuJG1lbnUpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhhdC4kbWVudS5yZW1vdmUoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLy8gZmEtaWQtY2FyZFxuICAgICAgICAgICAgICAgIGNvbnN0IHR5cGVMaXN0ID0gW1xuICAgICAgICAgICAgICAgICAgICB7IGxhYmVsOiBcInRleHRcIiwgdmFsdWU6IFwidFwiLCB0aXRsZTogXCJWYWx1ZSBpcyBub3QgdmVyaWZpZWRcIiwgaWNvbjogJzxpIGNsYXNzPVwiZmEgZmEtZm9udFwiL2k+ICcgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw6IFwibXNnLlwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IFwibXNnXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogXCJub2RlIGlkIG9yICBicm93c2UgcGF0aCBjb21lcyBmcm9tIGluamVjdGVkIG1zZyBwYXJhbWV0ZXJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIGljb246ICc8aSBjbGFzcz1cImZhIGZhLWVudmVsb3BlLW9wZW4tb1wiLz4nLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7IGxhYmVsOiBcIk5vZGVJZFwiLCB2YWx1ZTogXCJuXCIsIGljb246ICc8aSBjbGFzcz1cImZhIGZhLXRhZ1wiLz4xICZuYnNwOyAnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbGFiZWw6IFwiQWxpYXNlZCBOb2RlSWRcIiwgdmFsdWU6IFwibmFcIiwgaWNvbjogJzxpIGNsYXNzPVwiZmEgZmEtYm9va21hcmtcIi8+Jm5ic3A7ICcgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBsYWJlbDogXCJOb2RlSWQgd2l0aCBuYW1lc3BhY2UgVXJuXCIsIHZhbHVlOiBcIm5zdVwiLCBpY29uOiAnPGkgY2xhc3M9XCJmYSBmYS1pZC1jYXJkXCIvPiZuYnNwOyAnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbGFiZWw6IFwiQnJvd3NlUGF0aFwiLCB2YWx1ZTogXCJiXCIsIGljb246ICc8aSBjbGFzcz1cImZhIGZhLXRhZ1wiLz48aSBjbGFzcz1cImZhIGZhLWZpZ2h0ZXItamV0XCIvPiZuYnNwOycgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw6IFwiQWxpYXNlZCBCcm93c2UgUGF0aFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IFwiYWJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIGljb246ICc8aSBjbGFzcz1cImZhIGZhLWJvb2ttYXJrXCIvPjxpIGNsYXNzPVwiZmEgZmEtZmlnaHRlci1qZXRcIi8+Jm5ic3A7JyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBdO1xuICAgICAgICAgICAgICAgIGNvbnN0IGEgPSBmaWd1cmVPdXRNZW5VSXRlbVZhbHVlKHRoYXQuJGlucHV0LnZhbCgpKTtcbiAgICAgICAgICAgICAgICBjb25zdCBlID0gdHlwZUxpc3QuZmluZCgoeCkgPT4geC52YWx1ZSA9PT0gYSk7XG4gICAgICAgICAgICAgICAgdGhhdC4kc2VsZWN0TGFiZWwuZW1wdHkoKS5hcHBlbmQoYDxzcGFuIHRpdGxlPSR7KGUgPT09IG51bGwgfHwgZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogZS50aXRsZSkgfHwgXCJcIn0+Jm5ic3A7ICR7KGUgPT09IG51bGwgfHwgZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogZS5pY29uKSB8fCBcIlwifTwvc3Bhbj5gKTtcbiAgICAgICAgICAgICAgICB0aGF0LnNlbGVjdGVkTWVudUl0ZW0gPSBhO1xuICAgICAgICAgICAgICAgIGNvbnN0IHR0ID0gdGhpcztcbiAgICAgICAgICAgICAgICB0aGF0LiRtZW51ID0gdGhpcy5fY3JlYXRlTWVudSh0eXBlTGlzdCwge30sICh2KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IG1vZGUgPSB0b01vZGUodik7XG4gICAgICAgICAgICAgICAgICAgIGlmIChtb2RlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBvbiBNZW51IHNlbGVjdGVkICFcbiAgICAgICAgICAgICAgICAgICAgICAgIHR0LnZlcmlmeShtb2RlKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBjb25zdCBlID0gdHlwZUxpc3QuZmluZCgoeCkgPT4geC52YWx1ZSA9PT0gdik7XG4gICAgICAgICAgICAgICAgICAgIHRoYXQuc2VsZWN0ZWRNZW51SXRlbSA9IHY7XG4gICAgICAgICAgICAgICAgICAgIHRoYXQuJHNlbGVjdExhYmVsLmVtcHR5KCkuYXBwZW5kKGA8c3BhbiB0aXRsZT0keyhlID09PSBudWxsIHx8IGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGUudGl0bGUpIHx8IFwiXCJ9PiZuYnNwOyAkeyhlID09PSBudWxsIHx8IGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGUuaWNvbikgfHwgXCJcIn08L3NwYW4+YCk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgdGhhdC4kbWVudS5hcHBlbmRUbyhkb2N1bWVudC5ib2R5KTtcbiAgICAgICAgICAgICAgICB0aGF0LiRtZW51LmhpZGUoKTtcbiAgICAgICAgICAgICAgICB0aGF0LiRzZWxlY3RUcmlnZ2VyLnNob3coKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBtb2RlKCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHRoYXQgPSB0aGlzO1xuICAgICAgICAgICAgICAgIHJldHVybiB0b01vZGUodGhhdC5zZWxlY3RlZE1lbnVJdGVtKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBzZXRNb2RlKG1vZGUpIHtcbiAgICAgICAgICAgICAgICBjb25zdCB0aGF0ID0gdGhpcztcbiAgICAgICAgICAgICAgICBjb25zdCBzID0gZnJvbU1vZGUobW9kZSk7XG4gICAgICAgICAgICAgICAgdGhhdC5zZWxlY3RlZE1lbnVJdGVtID0gcztcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBfY3JlYXRlKCkge1xuICAgICAgICAgICAgICAgIC8vIGRlYnVnZ2VyO1xuICAgICAgICAgICAgICAgIGNvbnN0IHRoYXQgPSB0aGlzO1xuICAgICAgICAgICAgICAgIHRoYXQuJGlucHV0ID0gdGhpcy5lbGVtZW50O1xuICAgICAgICAgICAgICAgIHRoYXQuJGlucHV0LmNzcyhcImJvcmRlclwiLCBcIm5vbmVcIik7XG4gICAgICAgICAgICAgICAgLy8gdGhhdC4kaW5wdXQuYWRkQ2xhc3MoXCJyZWQtdWktdHlwZWRJbnB1dFwiKTtcbiAgICAgICAgICAgICAgICB0aGF0LiRlbGVtZW50RGl2ID0gdGhhdC4kaW5wdXQud3JhcChcIjxkaXY+XCIpLnBhcmVudCgpLmFkZENsYXNzKFwibWFpbi13cmFwcGVyXCIpO1xuICAgICAgICAgICAgICAgIC8vICNyZWdpb24gQ29tYm8gYnJvd3NlclxuICAgICAgICAgICAgICAgIHRoYXQuJGNvbWJvID0gJChcIjxkaXYvPlwiKTtcbiAgICAgICAgICAgICAgICB0aGF0LiRjb21iby5hZGRDbGFzcyhcInN0ZXJmaXZlLWNvbWJvLWJveFwiKTtcbiAgICAgICAgICAgICAgICAvLyB0aGF0LiRjb21iby5hZGRDbGFzcyhcInJlZC11aS10eXBlZElucHV0LWlucHV0LXdyYXBcIik7XG4gICAgICAgICAgICAgICAgdGhhdC4kaW5wdXQucmVwbGFjZVdpdGgodGhhdC4kY29tYm8pO1xuICAgICAgICAgICAgICAgIHRoYXQuJGlucHV0R3JvdXAgPSAkKFwiPGRpdi8+XCIpLmFkZENsYXNzKFwic3RlcmZpdmUtaW5wdXQtZ3JvdXBcIik7XG4gICAgICAgICAgICAgICAgdGhhdC4kY29tYm8uYXBwZW5kKHRoYXQuJGlucHV0R3JvdXApO1xuICAgICAgICAgICAgICAgIHRoYXQuJGlucHV0R3JvdXAuYXBwZW5kKHRoYXQuJGlucHV0KTtcbiAgICAgICAgICAgICAgICAvLyAjZW5kcmVnaW9uXG4gICAgICAgICAgICAgICAgLy8gI3JlZ2lvbiBhZGQgYnV0dG9uIG9uIHRoZSByaWdodCBzaWRlXG4gICAgICAgICAgICAgICAgLy8gI3JlZ2lvbiB0b2dnbGVUcmVlQnRuXG4gICAgICAgICAgICAgICAgdGhhdC4kdG9nZ2xlVHJlZUJ0biA9ICQoYDxidXR0b24gdGl0bGU9XCJvcGVuIE9QQ1VBIEFkZHJlc3NTcGFjZSBCcm93c2VyXCI+PGkgY2xhc3M9XCJmYSBmYS1zaXRlbWFwXCI+PC9pPjwvYnV0dG9uPmApO1xuICAgICAgICAgICAgICAgIHRoYXQuJGlucHV0LmFmdGVyKHRoYXQuJHRvZ2dsZVRyZWVCdG4pO1xuICAgICAgICAgICAgICAgIHRoYXQuJHRvZ2dsZVRyZWVCdG4ub24oXCJjbGlja1wiLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBfX2F3YWl0ZXIodGhpcywgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKiAoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB2YXIgX2E7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgbmVlZFRvUmVhY2hTZWxlY3Rpb24gPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCBwYXJlbnROb2RlO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCF0aGF0LiRkcm9wZG93bi5pcyhcIjp2aXNpYmxlXCIpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC4kaW5mby5oaWRlKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gdHJlZSB3aWRnZXQgaXMgZ29pbmcgdG8gYmVjb21lIHZpc2libGVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXJlbnROb2RlID0geWllbGQgdGhhdC5yZXNvbHZlUGFyZW50Tm9kZSgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChwYXJlbnROb2RlICE9PSB0aGF0LmN1cnJlbnRQYXJlbnQgfHwgKChfYSA9IHRoYXQuY3VycmVudFBhcmVudCkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLm5vZGVJZCkgIT09IHBhcmVudE5vZGUubm9kZUlkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHlpZWxkIHRoYXQucmVzZXQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmVlZFRvUmVhY2hTZWxlY3Rpb24gPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC4kZHJvcGRvd24udG9nZ2xlKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBuZWVkVG9SZWFjaFNlbGVjdGlvbiAmJiAoeWllbGQgcmVhY2hTZWxlY3Rpb24odGhhdCwgcGFyZW50Tm9kZSkpO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAvLyAjZW5kcmVnaW9uXG4gICAgICAgICAgICAgICAgLy8gI3JlZ2lvbiB2ZXJpZnlCdG5cbiAgICAgICAgICAgICAgICB0aGF0LiR2ZXJpZnlCdG4gPSAkKGA8YnV0dG9uIHRpdGxlPVwidmVyaWZ5IG5vZGVJZCBvciBicm93c2VQYXRoXCI+PGkgY2xhc3M9XCJmYSBmYS1yZWZyZXNoXCI+PC9pPjwvYnV0dG9uPmApO1xuICAgICAgICAgICAgICAgIHRoYXQuJGlucHV0LmFmdGVyKHRoYXQuJHZlcmlmeUJ0bik7XG4gICAgICAgICAgICAgICAgdGhhdC4kdmVyaWZ5QnRuLm9uKFwiY2xpY2tcIiwgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBtb2RlID0gdGhhdC5tb2RlKCk7XG4gICAgICAgICAgICAgICAgICAgIGlmICghbW9kZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHRoaXMudmVyaWZ5KG1vZGUpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIC8vICNlbmRyZWdpb25cbiAgICAgICAgICAgICAgICAvLyAjZW5kcmVnaW9uXG4gICAgICAgICAgICAgICAgY29uc3Qgbm9ybWFsaXplSW5wdXQgPSAoaW5wdXQpID0+IF9fYXdhaXRlcih0aGlzLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24qICgpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgdGhhdCA9IHRoaXM7XG4gICAgICAgICAgICAgICAgICAgIGxldCBtb2RlID0gdGhhdC5tb2RlKCk7XG4gICAgICAgICAgICAgICAgICAgIGlmICghbW9kZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC8vIEZldGNoIG5ldyBkYXRhIGZvciB0aGlzIG5vZGVcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgY29ubmVjdGlvbkRhdGEgPSBtYWtlQ29ubmVjdGlvbih0aGF0KTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgeyBkYXRhLCBqc29uIH0gPSB5aWVsZCBfY2FsbENoZWNrTm9kZUlkKGNvbm5lY3Rpb25EYXRhLCBpbnB1dCk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChkYXRhLnN0YXR1cyAhPT0gMjAwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYgKGpzb24uc3RhdHVzQ29kZS5tYXRjaCgvR29vZC8pKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzZWxlY3RlZE5vZGVJZCA9IGNob29zZU5vZGVJZChqc29uLCBtb2RlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuJGlucHV0LnZhbChzZWxlY3RlZE5vZGVJZCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGF0LiRpbnB1dC50cmlnZ2VyKFwiY2hhbmdlXCIpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgICAgICAgICAgLy8gY3JlYXRlIHRoZSBwcmVwZW5kZWQgYnV0dG9uXG4gICAgICAgICAgICAgICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICB0aGF0LiR1aVNlbGVjdCA9ICQoXCI8ZGl2PlwiKTtcbiAgICAgICAgICAgICAgICAgICAgdGhhdC4kaW5wdXQuYmVmb3JlKHRoYXQuJHVpU2VsZWN0KTtcbiAgICAgICAgICAgICAgICAgICAgdGhhdC4kc2VsZWN0VHJpZ2dlciA9ICQoJzxidXR0b24gdHlwZT1cImJ1dHRvblwiIHRhYmluZGV4PVwiMFwiPjwvYnV0dG9uPicpLnByZXBlbmRUbyh0aGF0LiR1aVNlbGVjdCk7XG4gICAgICAgICAgICAgICAgICAgICQoJzxpIGNsYXNzPVwicmVkLXVpLXR5cGVkSW5wdXQtaWNvbiBmYSBmYS1jYXJldC1kb3duXCI+PC9pPicpLnRvZ2dsZSh0cnVlKS5hcHBlbmRUbyh0aGF0LiRzZWxlY3RUcmlnZ2VyKTtcbiAgICAgICAgICAgICAgICAgICAgdGhhdC4kc2VsZWN0VHJpZ2dlci5vbihcImNsaWNrXCIsIGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5fc2hvd1R5cGVNZW51KCk7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICB0aGF0LiRzZWxlY3RUcmlnZ2VyXG4gICAgICAgICAgICAgICAgICAgICAgICAub24oXCJrZXlkb3duXCIsIGZ1bmN0aW9uIChldnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChldnQua2V5Q29kZSA9PT0gNDApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBEb3duXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5fc2hvd1R5cGVNZW51KCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBldnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICAgICAub24oXCJmb2N1c1wiLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGF0LiR1aVNlbGVjdC5hZGRDbGFzcyhcInJlZC11aS10eXBlZElucHV0LWZvY3VzXCIpO1xuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgLm9uKFwiYmx1clwiLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyB2YXIgb3B0ID0gdGhhdC50eXBlTWFwW3RoYXQucHJvcGVydHlUeXBlXTtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGlmIChvcHQuaGFzVmFsdWUgPT09IGZhbHNlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGF0LiR1aVNlbGVjdC5yZW1vdmVDbGFzcyhcInJlZC11aS10eXBlZElucHV0LWZvY3VzXCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gfVxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgdGhhdC4kc2VsZWN0TGFiZWwgPSAkKCc8c3BhbiBjbGFzcz1cInJlZC11aS10eXBlZElucHV0LXR5cGUtbGFiZWxcIj48L3NwYW4+JykuYXBwZW5kVG8odGhhdC4kc2VsZWN0VHJpZ2dlcik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRoaXMuX2luaXRNZW51KCk7XG4gICAgICAgICAgICAgICAgaWYgKCF0aGF0LiRpbnB1dC5hdHRyKFwicGxhY2Vob2xkZXJcIikpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhhdC4kaW5wdXQuYXR0cihcInBsYWNlaG9sZGVyXCIsIFwiZW50ZXIgYSBub2RlSWQgb3IgYSBicm93c2VQYXRoIFwiKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLy8gI3JlZ2lvbiB0ZW1wb3JhdHkgaW5mbyBwYW5lbFxuICAgICAgICAgICAgICAgIHRoYXQuJGluZm8gPSAkKGA8ZGl2IGNsYXNzPVwic3RlcmZpdmUtaW5mby10ZXh0XCI+PC9kaXY+YCk7XG4gICAgICAgICAgICAgICAgdGhhdC4kaW5mby5oaWRlKCk7XG4gICAgICAgICAgICAgICAgdGhhdC4kY29tYm8uYXBwZW5kKHRoYXQuJGluZm8pO1xuICAgICAgICAgICAgICAgIC8vICNlbmRyZWdpb25cbiAgICAgICAgICAgICAgICAvLyAjcmVnaW9uIGRyb3AgZG93biB0cmVlXG4gICAgICAgICAgICAgICAgdGhhdC4kZHJvcGRvd24gPSAkKFwiPGRpdi8+XCIpLmFkZENsYXNzKFwic3RlcmZpdmUtZHJvcGRvd25cIikuaGlkZSgpLmFwcGVuZFRvKHRoYXQuJGNvbWJvKTtcbiAgICAgICAgICAgICAgICB0aGF0LiR0cmVlID0gJChgPHVsIGNsYXNzPVwic3RlcmZpdmUtdHJlZVwiPjwvdWw+YCkuYXBwZW5kVG8odGhhdC4kZHJvcGRvd24pO1xuICAgICAgICAgICAgICAgIC8vIHRoYXQuJGRyb3Bkb3duLnNob3coKTtcbiAgICAgICAgICAgICAgICB0aGlzLnJlc2V0KCk7XG4gICAgICAgICAgICAgICAgLy8gI2VuZHJlZ2lvblxuICAgICAgICAgICAgICAgIGNvbnN0IGlzT25MZWZ0U2l6ZSA9ICgkbGksIGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGJlZm9yZVdpZHRoID0gMjA7IC8vIFNldCB3aWR0aCBvZiB0aGUgOjpiZWZvcmUgY29udGVudFxuICAgICAgICAgICAgICAgICAgICBjb25zdCBiZWZvcmVIZWlnaHQgPSAyMDsgLy8gU2V0IGhlaWdodCBvZiB0aGUgOjpiZWZvcmUgY29udGVudFxuICAgICAgICAgICAgICAgICAgICBjb25zdCBlbGVtZW50UG9zID0gJGxpLm9mZnNldCgpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBlID0gZXZlbnQ7XG4gICAgICAgICAgICAgICAgICAgIGlmIChlLnBhZ2VYID49IGVsZW1lbnRQb3MubGVmdCAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgZS5wYWdlWCA8PSBlbGVtZW50UG9zLmxlZnQgKyBiZWZvcmVXaWR0aCAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgZS5wYWdlWSA+PSBlbGVtZW50UG9zLnRvcCAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgZS5wYWdlWSA8PSBlbGVtZW50UG9zLnRvcCArIGJlZm9yZUhlaWdodCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgY29uc3QgdG9nZ2xlRXhwYW5zaW9uID0gKCRsaSkgPT4gX19hd2FpdGVyKHRoaXMsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICAgICAgICAgICAgICBpZiAoJGxpLmhhc0NsYXNzKFwiZXhwYW5kYWJsZVwiKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgX2V4cGFuZExpKHRoYXQsICRsaSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoJGxpLmhhc0NsYXNzKFwiZXhwYW5kZWRcIikpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIFRvZ2dsZSBpdHMgZXhwYW5kZWQvY29sbGFwc2VkIHN0YXRlXG4gICAgICAgICAgICAgICAgICAgICAgICAkbGkuY2hpbGRyZW4oXCJ1bFwiKS50b2dnbGUoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIFN3YXAgZXhwYW5kYWJsZSBhbmQgZXhwYW5kZWQgY2xhc3Nlc1xuICAgICAgICAgICAgICAgICAgICAgICAgJGxpLnRvZ2dsZUNsYXNzKFwiZXhwYW5kYWJsZSBleHBhbmRlZFwiKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIGlmICgkbGkuY2hpbGRyZW4oXCJ1bFwiKS5jaGlsZHJlbigpLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICRsaS5jaGlsZHJlbihcInVsXCIpLnRvZ2dsZSgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gU3dhcCBleHBhbmRhYmxlIGFuZCBleHBhbmRlZCBjbGFzc2VzXG4gICAgICAgICAgICAgICAgICAgICAgICAkbGkudG9nZ2xlQ2xhc3MoXCJleHBhbmRhYmxlIGV4cGFuZGVkXCIpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2UgO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIHRoYXQuJHRyZWUub24oXCJkYmxjbGlja1wiLCBcImxpXCIsIGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICAgICAgICAgICAgICB2YXIgX2EsIF9iO1xuICAgICAgICAgICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgICAgICAgICAgbGV0ICRsaSA9ICQodGhpcyk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChpc09uTGVmdFNpemUoJGxpLCBldmVudCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvZ2dsZUV4cGFuc2lvbigkbGkpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdmFsdWUgPSAkbGkuZGF0YShcInZhbHVlXCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVmZXJlbmNlID0gJGxpLmRhdGEoXCJyZWZlcmVuY2VcIik7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAodGhhdC5vcHRpb25zLmlzU2VsZWN0YWJsZSAmJiAhdGhhdC5vcHRpb25zLmlzU2VsZWN0YWJsZShyZWZlcmVuY2UpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC4kaW5wdXQuZGF0YShcInJlZmVyZW5jZVwiLCByZWZlcmVuY2UpO1xuICAgICAgICAgICAgICAgICAgICAgICAgKChfYSA9IHJlZmVyZW5jZS5kaXNwbGF5TmFtZSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLnRleHQpIHx8ICgoX2IgPSByZWZlcmVuY2UuYnJvd3NlTmFtZSkgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLm5hbWUpIHx8IHJlZmVyZW5jZS5ub2RlSWQudG9TdHJpbmcoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGNvbnN0IGlucHV0ID0gYFske2Rpc3BsYXlOYW1lfV0oJHt2YWx1ZX0pYDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCBtb2RlID0gdGhhdC5tb2RlKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoIW1vZGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtb2RlID0gXCJub2RlSWRcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGF0LnNldE1vZGUobW9kZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBub3JtYWxpemVJbnB1dCh2YWx1ZSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gdGhhdC4kaW5wdXQudmFsKGlucHV0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB0aGF0LiRpbnB1dC50cmlnZ2VyKFwiY2hhbmdlXCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuJGRyb3Bkb3duLmhpZGUoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNhdGNoKChlcnIpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB0aGF0LiRpbnB1dC52YWwoaW5wdXQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRoYXQuJGlucHV0LnRyaWdnZXIoXCJjaGFuZ2VcIik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC4kZHJvcGRvd24uaGlkZSgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB0aGF0LiR0cmVlLm9uKFwiY2xpY2tcIiwgXCJsaVwiLCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICAgICAgICAgIGxldCAkbGkgPSAkKHRoaXMpO1xuICAgICAgICAgICAgICAgICAgICBpZiAoaXNPbkxlZnRTaXplKCRsaSwgZXZlbnQpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b2dnbGVFeHBhbnNpb24oJGxpKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBzZWxlY3RTaW5nbGUodGhhdCwgJGxpKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAkKGRvY3VtZW50KS5vbihcImNsaWNrXCIsIGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAvLyBjbGlja2luZyBvdXRzaWRlIHRoZSBwYWdlIHdpbGwgaGlkZSB0aGUgZHJvcGRvd25cbiAgICAgICAgICAgICAgICAgICAgaWYgKCEkKGV2ZW50LnRhcmdldCkuY2xvc2VzdCh0aGF0LiRjb21ibykubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGF0LiRkcm9wZG93bi5oaWRlKCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuICAgIH07XG5cbiAgICBmdW5jdGlvbiBpbnN0YWxsU3Vic2NyaXB0aW9uU2VsZWN0b3IoUkVELCBub2RlKSB7XG4gICAgICAgIGNvbnN0ICRlbmRwb2ludCA9ICQoXCIjbm9kZS1pbnB1dC1lbmRwb2ludFwiKTtcbiAgICAgICAgY29uc3QgJHN1YnNjcmlwdGlvbiA9ICQoXCIjbm9kZS1pbnB1dC1zdWJzY3JpcHRpb25cIik7XG4gICAgICAgIC8vIGRlYnVnZ2VyO1xuICAgICAgICBjb25zdCBpbnN0YWxsU3Vic2NyaXB0aW9uT3B0aW9ucyA9ICgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGVuZHBvaW50ID0gUkVELm5vZGVzLm5vZGUoJGVuZHBvaW50LnZhbCgpKTtcbiAgICAgICAgICAgICRzdWJzY3JpcHRpb24uZW1wdHkoKTtcbiAgICAgICAgICAgIGlmICghZW5kcG9pbnQgfHwgIWVuZHBvaW50LnN1YnNjcmlwdGlvbnMpIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBmb3IgKGNvbnN0IHMgb2YgZW5kcG9pbnQuc3Vic2NyaXB0aW9ucykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGxhYmVsID0gcy5uYW1lIHx8IHMuaWQ7XG4gICAgICAgICAgICAgICAgJChcIjxvcHRpb24vPlwiLCB7XG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOiBzLmlkLFxuICAgICAgICAgICAgICAgICAgICBsYWJlbDogbGFiZWwsXG4gICAgICAgICAgICAgICAgICAgIHNlbGVjdGVkOiBzLmlkID09PSBub2RlLnN1YnNjcmlwdGlvbixcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAudGV4dChsYWJlbClcbiAgICAgICAgICAgICAgICAgICAgLmFwcGVuZFRvKCRzdWJzY3JpcHRpb24pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuICAgICAgICBpbnN0YWxsU3Vic2NyaXB0aW9uT3B0aW9ucygpO1xuICAgICAgICAvLyBoYWNrXG4gICAgICAgIC8vICRpbnB1dEFjdGlvbi5vbihcImNoYW5nZVwiLCAoKSA9PiB7XG4gICAgICAgIC8vICAgICAkZW5kcG9pbnQub24oXCJjaGFuZ2VcIiwgKCkgPT4ge1xuICAgICAgICAvLyAgICAgICAgIGluc3RhbGxTdWJzY3JpcHRpb25PcHRpb25zKCk7XG4gICAgICAgIC8vICAgICB9KTtcbiAgICAgICAgLy8gfSk7XG4gICAgICAgICRzdWJzY3JpcHRpb24ub24oXCJjaGFuZ2VcIiwgKCkgPT4ge1xuICAgICAgICAgICAgbm9kZS5zdWJzY3JpcHRpb24gPSAkc3Vic2NyaXB0aW9uLnZhbCgpO1xuICAgICAgICAgICAgLy8gICAgaW5zdGFsbFN1YnNjcmlwdGlvbk9wdGlvbnMoKTtcbiAgICAgICAgfSk7XG4gICAgICAgICRlbmRwb2ludC5vbihcImNoYW5nZVwiLCAoKSA9PiB7XG4gICAgICAgICAgICBpbnN0YWxsU3Vic2NyaXB0aW9uT3B0aW9ucygpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKlxuICAgICAqIEByZXR1cm5zIHRoZSBlbmRwb2ludCBhdHRyaWJ1dGVzIGNvbnRhaW5pbmc6XG4gICAgICogIC0gdGhlIGVuZHBvaW50LCBzZWN1cml0eU1vZGUsIHNlY3VyaXR5UG9saWN5LFxuICAgICAqICAtIHVzZXJJZGVudGl0eVR5cGUsXG4gICAgICogIC0gY3JlZGVudGlhbHNcbiAgICAgKiAgLSBuYW1lc3BhY2VBbGlhc2VzXG4gICAgICpcbiAgICAgKiBleHRyYWN0ZWQgZnJvbSB0aGUgdWkgd2lkZ2V0ICNub2RlLWlucHV0LWVuZHBvaW50XG4gICAgICovXG4gICAgY29uc3QgZ2V0RW5kUG9pbnRBdHRyaWJ1dGVzID0gKCkgPT4ge1xuICAgICAgICBjb25zdCAkZW5kcG9pbnQgPSAkKFwiI25vZGUtaW5wdXQtZW5kcG9pbnRcIik7XG4gICAgICAgIGNvbnN0IGVuZHBvaW50SWQgPSAkZW5kcG9pbnQudmFsKCk7XG4gICAgICAgIGNvbnN0IHJlZE5vZGUgPSBSRUQubm9kZXMubm9kZShlbmRwb2ludElkKTtcbiAgICAgICAgaWYgKCFyZWROb2RlKVxuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgLy8gY29uc3QgY3JlZGVudGlhbHMgPSBSRUQuKGVuZHBvaW50SWQpO1xuICAgICAgICAvLyB3ZSBuZWVkIHRvIHNhbml0aXplIGFuZCBleHRyYWN0IHRoZSBlbmRwb2ludCBhdHRyaWJ1dGVzIG9ubHkgKCBub3QgdGhlIG5vZGUtcmVkIHN0dWZmKVxuICAgICAgICBjb25zdCB7IGVuZHBvaW50LCBzZWN1cml0eU1vZGUsIHNlY3VyaXR5UG9saWN5LCB1c2VySWRlbnRpdHlUeXBlLCBjcmVkZW50aWFscywgbmFtZXNwYWNlQWxpYXNlcyB9ID0gcmVkTm9kZTtcbiAgICAgICAgY29uc3QgcmV0VmFsdWUgPSB7XG4gICAgICAgICAgICBlbmRwb2ludCxcbiAgICAgICAgICAgIHNlY3VyaXR5TW9kZSxcbiAgICAgICAgICAgIHNlY3VyaXR5UG9saWN5LFxuICAgICAgICAgICAgdXNlcklkZW50aXR5VHlwZSxcbiAgICAgICAgICAgIGNyZWRlbnRpYWxzLFxuICAgICAgICAgICAgbmFtZXNwYWNlQWxpYXNlcyxcbiAgICAgICAgfTtcbiAgICAgICAgcmV0dXJuIHJldFZhbHVlO1xuICAgIH07XG4gICAgY29uc3QgZ2V0RW5kcG9pbnRQYXJhbWV0ZXJzID0gKCkgPT4ge1xuICAgICAgICBjb25zdCAkZW5kcG9pbnQgPSAkKFwiI25vZGUtaW5wdXQtZW5kcG9pbnRcIik7XG4gICAgICAgIGNvbnN0IGVuZHBvaW50SWQgPSAkZW5kcG9pbnQudmFsKCk7XG4gICAgICAgIGNvbnN0IGVuZHBvaW50TnIgPSBnZXRFbmRQb2ludEF0dHJpYnV0ZXMoKTtcbiAgICAgICAgaWYgKCFlbmRwb2ludE5yKSB7XG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG5hbWVzcGFjZUFsaWFzZXMgPSBlbmRwb2ludE5yLm5hbWVzcGFjZUFsaWFzZXM7XG4gICAgICAgIHJldHVybiBPYmplY3QuYXNzaWduKHsgbmFtZXNwYWNlQWxpYXNlcywgaWQ6IGVuZHBvaW50SWQgfSwgZW5kcG9pbnROcik7XG4gICAgfTtcbiAgICBjb25zdCBnZXRFbmRwb2ludFBhcmFtZXRlcnNIYW5kbGVyID0gKCkgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgZW5kcG9pbnROb2RlOiBnZXRFbmRwb2ludFBhcmFtZXRlcnMsXG4gICAgICAgIH07XG4gICAgfTtcblxuICAgIGNvbnN0IGluc3RhbGxGZWVkYmFja1dpZGdldCA9ICgpID0+IHtcbiAgICAgICAgLy8gcmV0dXJuO1xuICAgICAgICAvLyBkZWJ1Z2dlcjtcbiAgICAgICAgY29uc3QgdHJheUNvbnRlbnQgPSAkKFwiLnJlZC11aS10cmF5LWJvZHlcIik7XG4gICAgICAgIGNvbnNvbGUubG9nKFwiaW5zdGFsbEZlZWRiYWNrV2lkZ2V0IFwiLCB0cmF5Q29udGVudC5sZW5ndGgpO1xuICAgICAgICBpZiAodHJheUNvbnRlbnQubGVuZ3RoKSB7XG4gICAgICAgICAgICBjb25zb2xlLmxvZyhcImluc3RhbGxpbmcgaWZyYW1lXCIpO1xuICAgICAgICAgICAgLy8gQ3JlYXRlIHRoZSBpZnJhbWUgZWxlbWVudFxuICAgICAgICAgICAgY29uc3QgaWZyYW1lID0gJChcIjxpZnJhbWU+PC9pZnJhbWU+XCIsIHtcbiAgICAgICAgICAgICAgICBzcmM6IFwiL29wY3VhLWZvci1ub2RlLXJlZC9zdXBwb3J0LWZyYW1lLmh0bWxcIixcbiAgICAgICAgICAgICAgICBzY3JvbGxpbmc6IFwibm9cIixcbiAgICAgICAgICAgICAgICBzdHlsZTogXCJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O292ZXJmbG93OmhpZGRlbjtib3JkZXI6M3B4XCIsXG4gICAgICAgICAgICAgICAgYWxsb3d0cmFuc3BhcmVuY3k6IFwidHJ1ZVwiLFxuICAgICAgICAgICAgICAgIHdpZHRoOiBcIjE4MHB4XCIsXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBcIjMwcHhcIixcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgLy8gQXBwZW5kIHRoZSBpZnJhbWUgdG8gdGhlIGZlZWRiYWNrIGVsZW1lbnRcbiAgICAgICAgICAgIHRyYXlDb250ZW50LmFwcGVuZChpZnJhbWUpO1xuICAgICAgICAgICAgLy8gUG9zaXRpb24gdGhlIGZlZWRiYWNrIGVsZW1lbnQgYXQgdGhlIGJvdHRvbSByaWdodCBvZiB0aGUgdHJheSBjb250ZW50XG4gICAgICAgICAgICBpZnJhbWUuY3NzKHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogXCJhYnNvbHV0ZVwiLFxuICAgICAgICAgICAgICAgIHJpZ2h0OiBcIjIwcHhcIixcbiAgICAgICAgICAgICAgICBib3R0b206IFwiMTZweFwiLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgUkVELm5vZGVzLnJlZ2lzdGVyVHlwZShcIk9wY1VhLUNsaWVudDItTW9uaXRvclwiLCB7XG4gICAgICAgIGNhdGVnb3J5OiBcIm9wY3VhXCIsXG4gICAgICAgIGNvbG9yOiBcIiNDMERFRURcIixcbiAgICAgICAgYWxpZ246IFwicmlnaHRcIixcbiAgICAgICAgaWNvbjogXCIuLi8uLi9pY29ucy9vcGN1YW5vZGVMb2dvLnBuZ1wiLFxuICAgICAgICBwYWxldHRlTGFiZWw6IFwibW9uaXRvciB2YXJpYWJsZVwiLFxuICAgICAgICBkZWZhdWx0czoge1xuICAgICAgICAgICAgaW5wdXRzOiB7IHZhbHVlOiAxIH0sXG4gICAgICAgICAgICBvdXRwdXQ6IHsgdmFsdWU6IDIgfSxcbiAgICAgICAgICAgIC8vIENvbW1vblxuICAgICAgICAgICAgbmFtZTogeyB2YWx1ZTogXCJcIiB9LFxuICAgICAgICAgICAgZW5kcG9pbnQ6IHsgdmFsdWU6IFwiXCIsIHJlcXVpcmVkOiB0cnVlLCB0eXBlOiBcIk9wY1VhLUVuZHBvaW50MlwiIH0sXG4gICAgICAgICAgICAvLyBmb3IgYWN0aW9uIG1vbml0b3JcbiAgICAgICAgICAgIHN1YnNjcmlwdGlvbjoge1xuICAgICAgICAgICAgICAgIHZhbHVlOiBcIlwiLFxuICAgICAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIHZhbGlkYXRlOiAodmFsKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmICh2YWwgPT09IFwiXCIpXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgc3RhcnRJbW1lZGlhdGVseTogeyB2YWx1ZTogdHJ1ZSwgcmVxdWlyZWQ6IHRydWUgfSxcbiAgICAgICAgICAgIC8vIHdlIHVzZSBhIGRpZmZlcmVudCB3aWRnZXQgZm9yIGVkaXRpbmcgdGhlIG5vZGVJZCwgYmVjYXVzZSB0aGUgYmVoYXZpb3JcbiAgICAgICAgICAgIC8vIGlzIHNwZWNpZmljIHRvIG1vbml0b3IsIGhvd2V2ZXIgcHJvcGVydHkgd2lsbCBiZSBzdG9yZWQgaW4gbm9kZUlkXG4gICAgICAgICAgICBub2RlSWQ6IHsgdmFsdWU6IFwiL1NlcnZlci9TZXJ2ZXJTdGF0dXMvQ3VycmVudFRpbWVcIiwgcmVxdWlyZWQ6IGZhbHNlLCB2YWxpZGF0ZTogKCkgPT4gdHJ1ZSB9LFxuICAgICAgICAgICAgc2FtcGxpbmdJbnRlcnZhbDogeyB2YWx1ZTogMTAwMCwgcmVxdWlyZWQ6IHRydWUgfSxcbiAgICAgICAgICAgIGRpc2NhcmRPbGRlc3Q6IHsgdmFsdWU6IHRydWUsIHJlcXVpcmVkOiB0cnVlIH0sXG4gICAgICAgICAgICBxdWV1ZVNpemU6IHsgdmFsdWU6IDEwLCByZXF1aXJlZDogdHJ1ZSB9LFxuICAgICAgICB9LFxuICAgICAgICAvLyBpbnB1dHM6LFxuICAgICAgICBvdXRwdXRzOiAxLCAvL3h4XG4gICAgICAgIC8vIDIgb3V0cHV0LCBzZWNvbmQgZm9yIHJhdyBub2RlLW9wY3VhIGRpYWdub3N0aWNzIG9yIG1vcmUgY29tcGxldGUgbWVzc2FnZVxuICAgICAgICBsYWJlbCgpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLm5hbWUgfHwgXCJPUENVQSBDbGllbnQgTW9uaXRvciBcIjtcbiAgICAgICAgfSxcbiAgICAgICAgbGFiZWxTdHlsZSgpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLm5hbWUgPyBcIm5vZGVfbGFiZWxfaXRhbGljXCIgOiBcIlwiO1xuICAgICAgICB9LFxuICAgICAgICBvbmVkaXRwcmVwYXJlKCkge1xuICAgICAgICAgICAgY29uc3Qgbm9kZSA9IHRoaXM7XG4gICAgICAgICAgICBkZWNsYXJlTm9kZUJyb3dzZXJXaWRnZXQoKTtcbiAgICAgICAgICAgIGluc3RhbGxGZWVkYmFja1dpZGdldCgpO1xuICAgICAgICAgICAgY29uc3QgaXNJbW1lZGlhdGUgPSBub2RlLnN0YXJ0SW1tZWRpYXRlbHk7XG4gICAgICAgICAgICBub2RlLmlucHV0cyA9IGlzSW1tZWRpYXRlID8gMCA6IDE7XG4gICAgICAgICAgICBpbnN0YWxsU3Vic2NyaXB0aW9uU2VsZWN0b3IoUkVELCB0aGlzKTtcbiAgICAgICAgICAgICQoXCJub2RlLWlucHV0LXN0YXJ0SW1tZWRpYXRlbHlcIikub24oXCJjaGFuZ2VcIiwgKCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGNoZWNrZWQgPSAkKFwiI25vZGUtaW5wdXQtc3RhcnRJbW1lZGlhdGVseVwiKS5wcm9wKFwiY2hlY2tlZFwiKTtcbiAgICAgICAgICAgICAgICBpZiAoY2hlY2tlZCkge1xuICAgICAgICAgICAgICAgICAgICAkKFwiI25vZGUtaW5wdXQtaW5wdXRzXCIpLnZhbCgwKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICQoXCIjbm9kZS1pbnB1dC1pbnB1dHNcIikudmFsKDEpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgICAgIC8vIGhhbmRsZSBBY3Rpb24gTW9uaXRvclxuICAgICAgICAgICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgICAgIGNvbnN0ICRub2RlSWQgPSAkKFwiI25vZGUtaW5wdXQtbm9kZUlkXCIpO1xuICAgICAgICAgICAgJG5vZGVJZC5ub2RlQnJvd3NlcihPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sIGdldEVuZHBvaW50UGFyYW1ldGVyc0hhbmRsZXIoKSksIHsgZmlsdGVyKG5vZGVEZXNjKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBub2RlRGVzYy5ub2RlQ2xhc3MgPT09IFwiVmFyaWFibGVcIiB8fCBub2RlRGVzYy5ub2RlQ2xhc3MgPT09IFwiT2JqZWN0XCI7XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBpc1NlbGVjdGFibGUobm9kZURlc2MpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG5vZGVEZXNjLm5vZGVDbGFzcyA9PT0gXCJWYXJpYWJsZVwiO1xuICAgICAgICAgICAgICAgIH0gfSkpO1xuICAgICAgICB9LFxuICAgICAgICBvbmVkaXRzYXZlKCkge1xuICAgICAgICAgICAgY29uc3Qgc3RhcnRJbW1lZGlhdGVseSA9ICQoXCIjbm9kZS1pbnB1dC1zdGFydEltbWVkaWF0ZWx5XCIpLnByb3AoXCJjaGVja2VkXCIpO1xuICAgICAgICAgICAgaWYgKHN0YXJ0SW1tZWRpYXRlbHkpIHtcbiAgICAgICAgICAgICAgICAkKFwiI25vZGUtaW5wdXQtc3RhcnRJbW1lZGlhdGVseVwiKS52YWwoc3RhcnRJbW1lZGlhdGVseSA/IDAgOiAxKTtcbiAgICAgICAgICAgICAgICB0aGlzLmlucHV0cyA9IHN0YXJ0SW1tZWRpYXRlbHkgPyAwIDogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICQoXCIjbm9kZS1pbnB1dC1zdGFydEltbWVkaWF0ZWx5XCIpLnZhbCgxKTtcbiAgICAgICAgICAgICAgICB0aGlzLmlucHV0cyA9IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgfSk7XG5cbn0pKCk7Il19
7
+ (function(_0x2e5fbd,_0x3e495b){const _0x169b86=_0x1d63,_0x116cdf=_0x2e5fbd();while(!![]){try{const _0x568844=-parseInt(_0x169b86(0x1cd))/0x1*(parseInt(_0x169b86(0xfb))/0x2)+-parseInt(_0x169b86(0x1ef))/0x3+-parseInt(_0x169b86(0x11c))/0x4+parseInt(_0x169b86(0x1d5))/0x5+parseInt(_0x169b86(0x107))/0x6+parseInt(_0x169b86(0x16e))/0x7*(parseInt(_0x169b86(0x18d))/0x8)+-parseInt(_0x169b86(0x222))/0x9*(-parseInt(_0x169b86(0x10c))/0xa);if(_0x568844===_0x3e495b)break;else _0x116cdf['push'](_0x116cdf['shift']());}catch(_0x3b019f){_0x116cdf['push'](_0x116cdf['shift']());}}}(_0x3765,0x9cbe7),(function(){'use strict';const _0x242bdf=_0x1d63;function _0xbd58ad(_0x44a3b8,_0x3a54b0,_0x4efea5,_0x2cda5c){function _0x9b94ee(_0x49a362){return _0x49a362 instanceof _0x4efea5?_0x49a362:new _0x4efea5(function(_0x3263a5){_0x3263a5(_0x49a362);});}return new(_0x4efea5||(_0x4efea5=Promise))(function(_0x5d3898,_0x1ab3b2){const _0x58b000=_0x1d63;function _0x2a2a2e(_0x5882bb){try{_0x1dbaf7(_0x2cda5c['next'](_0x5882bb));}catch(_0x5bcff6){_0x1ab3b2(_0x5bcff6);}}function _0x53c280(_0x500a96){const _0x2963de=_0x1d63;try{_0x1dbaf7(_0x2cda5c[_0x2963de(0x1a8)](_0x500a96));}catch(_0x17e0dd){_0x1ab3b2(_0x17e0dd);}}function _0x1dbaf7(_0x470643){const _0x5ed4c0=_0x1d63;_0x470643['done']?_0x5d3898(_0x470643['value']):_0x9b94ee(_0x470643[_0x5ed4c0(0x1d4)])[_0x5ed4c0(0x156)](_0x2a2a2e,_0x53c280);}_0x1dbaf7((_0x2cda5c=_0x2cda5c[_0x58b000(0x1a1)](_0x44a3b8,_0x3a54b0||[]))[_0x58b000(0x11e)]());});}typeof SuppressedError===_0x242bdf(0x209)?SuppressedError:function(_0x4bb135,_0x26fbd8,_0x548e9b){const _0x5c961a=_0x242bdf;var _0x559398=new Error(_0x548e9b);return _0x559398['name']='SuppressedError',_0x559398[_0x5c961a(0x1e4)]=_0x4bb135,_0x559398[_0x5c961a(0x19a)]=_0x26fbd8,_0x559398;};const _0x5d3376=_0x242bdf(0x169),_0x578002=_0x242bdf(0x1f0),_0x56b7aa=_0x242bdf(0x161),_0xcd6add=_0x242bdf(0x1f9),_0x1f41c2=_0x242bdf(0x14e),_0x98c2eb='ns=0;i=45',_0x5a40ba=_0x242bdf(0x1bc);var _0x225e8e;(function(_0xdee6b7){const _0xfbd869=_0x242bdf;_0xdee6b7[_0xdee6b7[_0xfbd869(0x1a0)]=0x0]=_0xfbd869(0x1a0),_0xdee6b7[_0xdee6b7[_0xfbd869(0x123)]=0x1]='Inverse',_0xdee6b7[_0xdee6b7[_0xfbd869(0x133)]=0x2]=_0xfbd869(0x133),_0xdee6b7[_0xdee6b7[_0xfbd869(0x1f7)]=0x3]=_0xfbd869(0x1f7);}(_0x225e8e||(_0x225e8e={})));var _0x5b31ef;(function(_0x1f3c7b){const _0x820acb=_0x242bdf;_0x1f3c7b[_0x1f3c7b[_0x820acb(0x210)]=0x0]='Unspecified',_0x1f3c7b[_0x1f3c7b[_0x820acb(0x166)]=0x1]=_0x820acb(0x166),_0x1f3c7b[_0x1f3c7b[_0x820acb(0x1ad)]=0x2]=_0x820acb(0x1ad),_0x1f3c7b[_0x1f3c7b[_0x820acb(0x16f)]=0x4]='Method',_0x1f3c7b[_0x1f3c7b['ObjectType']=0x8]='ObjectType',_0x1f3c7b[_0x1f3c7b[_0x820acb(0x194)]=0x10]=_0x820acb(0x194),_0x1f3c7b[_0x1f3c7b['ReferenceType']=0x20]=_0x820acb(0x16c),_0x1f3c7b[_0x1f3c7b['DataType']=0x40]='DataType',_0x1f3c7b[_0x1f3c7b[_0x820acb(0x121)]=0x80]=_0x820acb(0x121);}(_0x5b31ef||(_0x5b31ef={})));var _0x12ccbb;(function(_0x64546f){const _0x411502=_0x242bdf;_0x64546f[_0x64546f[_0x411502(0x166)]=0x1]='Object',_0x64546f[_0x64546f['Variable']=0x2]=_0x411502(0x1ad),_0x64546f[_0x64546f[_0x411502(0x16f)]=0x4]=_0x411502(0x16f),_0x64546f[_0x64546f[_0x411502(0x1e0)]=0x8]='ObjectType',_0x64546f[_0x64546f['VariableType']=0x10]=_0x411502(0x194),_0x64546f[_0x64546f[_0x411502(0x16c)]=0x20]=_0x411502(0x16c),_0x64546f[_0x64546f[_0x411502(0x140)]=0x40]=_0x411502(0x140),_0x64546f[_0x64546f[_0x411502(0x121)]=0x80]='View';}(_0x12ccbb||(_0x12ccbb={})));var _0x152423;(function(_0x4c94d9){const _0x420f3f=_0x242bdf;_0x4c94d9[_0x4c94d9[_0x420f3f(0x16c)]=0x1]=_0x420f3f(0x16c),_0x4c94d9[_0x4c94d9[_0x420f3f(0x17e)]=0x2]=_0x420f3f(0x17e),_0x4c94d9[_0x4c94d9['NodeClass']=0x4]=_0x420f3f(0x13e),_0x4c94d9[_0x4c94d9[_0x420f3f(0xf9)]=0x8]=_0x420f3f(0xf9),_0x4c94d9[_0x4c94d9[_0x420f3f(0x1ac)]=0x10]=_0x420f3f(0x1ac),_0x4c94d9[_0x4c94d9[_0x420f3f(0x13f)]=0x20]='TypeDefinition';}(_0x152423||(_0x152423={})));function _0xc83f2d(_0x1ddd2d){const _0x566e00=_0x242bdf;switch(_0x1ddd2d){case'Organizes':return _0x5d3376;case _0x566e00(0x120):return _0xcd6add;case _0x566e00(0x12f):return _0x56b7aa;case _0x566e00(0x184):return _0x1f41c2;case _0x566e00(0x106):return _0x98c2eb;case _0x566e00(0x14f):return _0x5a40ba;}}const _0x2604c7=_0xfcf82c=>{const _0x4bf6f7=_0x242bdf;switch(_0xfcf82c[_0x4bf6f7(0x197)]){case _0x4bf6f7(0x166):if(_0xfcf82c['referenceTypeId']===_0x5d3376);if(_0xfcf82c[_0x4bf6f7(0x138)]===_0x578002||_0xfcf82c[_0x4bf6f7(0x18a)]===_0x4bf6f7(0x18b))return{'icon':_0x4bf6f7(0x126),'color':_0x4bf6f7(0x157)};return{'icon':_0x4bf6f7(0x154),'color':'SeaGreen'};case'Variable':if(_0xfcf82c['referenceTypeId']===_0x56b7aa)return{'icon':_0x4bf6f7(0x141),'color':_0x4bf6f7(0x1f3)};else return _0xfcf82c[_0x4bf6f7(0x18a)]===_0xcd6add?{'icon':'fa-list-alt','color':_0x4bf6f7(0x188)}:{'icon':'fa-list-alt','color':_0x4bf6f7(0x1db)};case _0x4bf6f7(0x16f):return{'icon':_0x4bf6f7(0x172),'color':_0x4bf6f7(0x190)};case _0x4bf6f7(0x1e0):return{'icon':_0x4bf6f7(0x154),'color':_0x4bf6f7(0x17b)};case _0x4bf6f7(0x194):return{'icon':'fa-sliders','color':_0x4bf6f7(0x17b)};case'DataType':return{'icon':_0x4bf6f7(0x14d),'color':_0x4bf6f7(0x1db)};}return{'icon':_0x4bf6f7(0x1a7),'color':_0x4bf6f7(0x212)};},_0x462479=(_0x14e4f7,_0x5c312a,_0x139edf)=>_0xbd58ad(void 0x0,[_0x14e4f7,_0x5c312a,_0x139edf],void 0x0,function*({endpointNode:_0x5522e3,endpoint:_0x3ff520,baseUrl:_0xaf138a},_0x27ce08,_0x344910){const _0x5c0d4a=_0x242bdf,_0x13eb76=_0xaf138a+'/opcua-for-node-red',_0x422d39=_0x13eb76+_0x5c0d4a(0x1d8),_0x1868ac=Object['assign'](Object[_0x5c0d4a(0x1a9)]({},_0x344910),{'nodeId':_0x27ce08,'resultMask':0x3f}),_0x20f5b2=yield fetch(_0x422d39,{'method':_0x5c0d4a(0x21b),'body':JSON[_0x5c0d4a(0x1d9)]({'endpointNode':_0x5522e3,'endpoint':_0x3ff520,'browseDescription':_0x1868ac}),'headers':{'Content-Type':_0x5c0d4a(0x19e)}});if(_0x20f5b2[_0x5c0d4a(0x1d6)]!==0xc8)return console[_0x5c0d4a(0x11d)](_0x5c0d4a(0x1dc),_0x20f5b2[_0x5c0d4a(0x1d6)],_0x20f5b2[_0x5c0d4a(0x1ae)]),{'references':[]};const _0x3a0f09=yield _0x20f5b2['json'](),_0x536182=_0x3a0f09['browseResult'][_0x5c0d4a(0x1f5)]||[];return{'references':_0x536182};}),_0x3a1f81={'referenceTypeId':_0xc83f2d(_0x242bdf(0x184)),'includeSubtypes':!![],'browseDirection':_0x225e8e[_0x242bdf(0x1a0)],'nodeClassMask':_0x5b31ef['Variable']|_0x5b31ef['Object']|_0x5b31ef['Method'],'resultMask':0x3f},_0xc85344={'referenceTypeId':_0xc83f2d(_0x242bdf(0x1b5)),'includeSubtypes':!![],'browseDirection':_0x225e8e[_0x242bdf(0x1a0)],'nodeClassMask':_0x5b31ef['Variable']|_0x5b31ef[_0x242bdf(0x166)]|_0x5b31ef[_0x242bdf(0x16f)],'resultMask':0x3f},_0x44cd11=(_0x3effc3,_0x379ad5)=>_0xbd58ad(void 0x0,[_0x3effc3,_0x379ad5],void 0x0,function*({endpointNode:_0x195dae,endpoint:_0xe60bfc,baseUrl:_0x171f31},{nodeId:_0x1aeec,rootNodeId:_0x1ca102,isType:_0x106fdf}){const _0x204127=_0x242bdf,_0x4817f4=_0x171f31+_0x204127(0xf8),_0x56cc88=_0x4817f4+_0x204127(0x103),_0x5bfa9c=yield fetch(_0x56cc88,{'method':_0x204127(0x21b),'body':JSON[_0x204127(0x1d9)]({'endpointNode':_0x195dae,'endpoint':_0xe60bfc,'nodeId':_0x1aeec,'rootNodeId':_0x1ca102,'isType':_0x106fdf}),'headers':{'Content-Type':_0x204127(0x19e)}});if(_0x5bfa9c['status']!==0xc8)return null;const _0x36a329=yield _0x5bfa9c[_0x204127(0x15f)]();return _0x36a329['browsePath'];}),_0x25956a=(_0x43e360,_0x49d5fd)=>{const _0x30bbda=_0x242bdf;if(_0x43e360[_0x30bbda(0x1ce)]!==_0x30bbda(0x217))return _0x43e360[_0x30bbda(0x164)];switch(_0x49d5fd){case _0x30bbda(0x1e8):return _0x43e360[_0x30bbda(0x1b9)];case'aliasedBrowsePath':return _0x43e360[_0x30bbda(0x148)]||_0x43e360[_0x30bbda(0x1b9)];case'aliasedNodeId':return _0x43e360['nodeId_aliased']||_0x43e360[_0x30bbda(0x221)];case'nsuNodeID':return _0x43e360[_0x30bbda(0x221)];default:case _0x30bbda(0x16b):return _0x43e360['nodeId'];}},_0x52df09=_0x1bdaaf=>{const _0x811a49=_0x242bdf;if(_0x1bdaaf[_0x811a49(0x1ce)]!==_0x811a49(0x217))return _0x811a49(0x1ca)+_0x1bdaaf[_0x811a49(0x1ce)];else{let _0x4fbba8=[];return _0x4fbba8[_0x811a49(0x101)]('nodeId:\x20'+_0x1bdaaf[_0x811a49(0x16b)]),_0x4fbba8['push'](_0x811a49(0x1bd)+_0x1bdaaf[_0x811a49(0x1b9)]),_0x4fbba8[_0x811a49(0x101)]('node\x20class:\x20'+_0x5b31ef[_0x1bdaaf[_0x811a49(0x197)]]),_0x1bdaaf[_0x811a49(0x221)]&&_0x4fbba8['push'](_0x811a49(0x1af)+_0x1bdaaf['nodeId_nsu']),_0x1bdaaf['nodeId_aliased']&&_0x4fbba8['push'](_0x811a49(0x173)+_0x1bdaaf['nodeId_aliased']),_0x1bdaaf[_0x811a49(0x1b9)]&&_0x4fbba8[_0x811a49(0x101)]('aliased\x20browsePath:\x20'+_0x1bdaaf[_0x811a49(0x148)]),_0x4fbba8[_0x811a49(0x170)]('\x0a');}};function _0x2f34a2(_0x5f0024){const _0x26fc1b=_0x242bdf;if(_0x5f0024[_0x26fc1b(0x1b8)](/^nsu=/))return _0x26fc1b(0x20a);if(_0x5f0024[_0x26fc1b(0x1b8)](/^(ns=.*;)?(i|b|s|g)=/))return'nodeId';if(_0x5f0024[_0x26fc1b(0x1b8)](/^nsa=/))return'aliasedNodeId';if(_0x5f0024['match'](/^(\/|\.)[0-9]+:/))return _0x26fc1b(0x1e8);if(_0x5f0024['match'](/^(\/|\.).*:/))return'browsePath';}function _0x4a4c51(_0x227ac5){const _0x42982d=_0x242bdf,_0x4b553b=_0x2f34a2(_0x227ac5);switch(_0x4b553b){case _0x42982d(0x16b):return'n';case _0x42982d(0x1c3):return'na';case _0x42982d(0x20a):return'nsu';case _0x42982d(0x1e8):return'b';case _0x42982d(0x12b):return'ab';default:return't';}}function _0x272628(_0x2d65c9){const _0x2c5c0c=_0x242bdf;let _0x539d9a;switch(_0x2d65c9){case'n':_0x539d9a=_0x2c5c0c(0x16b);break;case'na':_0x539d9a=_0x2c5c0c(0x1c3);break;case'nsu':_0x539d9a=_0x2c5c0c(0x20a);break;case'b':_0x539d9a='browsePath';break;case'ab':_0x539d9a=_0x2c5c0c(0x12b);break;}return _0x539d9a;}function _0x1bd996(_0x1c0e24){const _0x2e13c8=_0x242bdf;switch(_0x1c0e24){case _0x2e13c8(0x16b):return'n';case _0x2e13c8(0x1c3):return'na';case _0x2e13c8(0x20a):return'nsu';case _0x2e13c8(0x1e8):return'b';case'aliasedBrowsePath':return'ab';default:return't';}}const _0x20c0bc=(_0x49730e,_0x19cff9)=>_0xbd58ad(void 0x0,[_0x49730e,_0x19cff9],void 0x0,function*({endpointNode:_0x492991,endpoint:_0x306d30,baseUrl:_0x37b7da},_0x32b997){const _0x69b93b=_0x242bdf,_0x1dbd10=_0x37b7da+_0x69b93b(0xf8),_0x3dbe78=_0x1dbd10+'/checkNodeId',_0x59a32b=_0x492991['id'],_0x2137bb=RED[_0x69b93b(0x139)]['node'](_0x59a32b);console[_0x69b93b(0x11d)](_0x2137bb[_0x69b93b(0x10e)]),_0x2137bb[_0x69b93b(0x10e)];const _0xb33071=_0x492991[_0x69b93b(0x10e)],_0x2b5412=yield fetch(_0x3dbe78,{'method':'POST','body':JSON[_0x69b93b(0x1d9)]({'endpointNode':_0x492991,'endpoint':_0x306d30,'nodeId':_0x32b997,'namespaceAliases':_0xb33071}),'headers':{'Content-Type':_0x69b93b(0x19e)}}),_0x4c14d4=yield _0x2b5412['json']();return{'json':_0x4c14d4,'data':_0x2b5412};}),_0x340781=(_0x2f6c42,_0x31bdc1,_0x5a73e4,_0x59015f)=>_0xbd58ad(void 0x0,[_0x2f6c42,_0x31bdc1,_0x5a73e4,_0x59015f],void 0x0,function*({endpointNode:_0x44669b,endpoint:_0x5cb73d,baseUrl:_0x287047},_0x5302c6,_0x10f6af,_0x23816d){const _0x11879c=_0x242bdf,_0x4020dc=_0x10f6af['val'](),{json:_0x5a210a,data:_0x113a9c}=yield _0x20c0bc({'endpointNode':_0x44669b,'endpoint':_0x5cb73d,'baseUrl':_0x287047},_0x4020dc),_0x38b263=(_0x22e885,_0x490136)=>{const _0x28fcb2=_0x1d63;_0x23816d['text'](_0x22e885)[_0x28fcb2(0x1eb)](_0x28fcb2(0x17d))[_0x28fcb2(0x1eb)](_0x490136),_0x23816d[_0x28fcb2(0x1c0)](),setTimeout(()=>{const _0x413822=_0x28fcb2;_0x23816d[_0x413822(0x1e6)](_0x490136),_0x23816d['hide']();},0xbb8);};if(_0x113a9c['status']!==0xc8)return _0x38b263('!!failure!!'+_0x4020dc,_0x11879c(0x20f)),![];else{if(_0x5a210a[_0x11879c(0x1ce)][_0x11879c(0x1b8)](/Good/)){const _0x4f0138=_0x52df09(_0x5a210a);_0x10f6af[_0x11879c(0x1fa)](_0x11879c(0x204),_0x4f0138);const _0x73f3d2=_0x25956a(_0x5a210a,_0x5302c6);return _0x10f6af[_0x11879c(0x1f6)](_0x73f3d2),_0x10f6af[_0x11879c(0x13a)](_0x11879c(0x1fe)),_0x38b263('Good','ok'),!![];}else return _0x10f6af[_0x11879c(0x1f6)](''+_0x4020dc),_0x38b263(_0x5a210a[_0x11879c(0x1ce)]+'\x20'+_0x113a9c[_0x11879c(0x1ae)],_0x11879c(0x20f)),![];}});function _0x432829(_0x2f511d,_0x1651b6){return _0xbd58ad(this,void 0x0,void 0x0,function*(){const _0x5de3cb=_0x1d63,_0x2b7557=_0x2f511d[_0x5de3cb(0xfe)](_0x5de3cb(0x1d4)),_0x3b8ca0=yield _0x462479(_0x1651b6,_0x2b7557,_0x3a1f81),_0x184631=yield _0x462479(_0x1651b6,_0x2b7557,_0xc85344);return{'references':[..._0x3b8ca0[_0x5de3cb(0x1f5)],..._0x184631[_0x5de3cb(0x1f5)]]};});}const _0x562e7f={'referenceTypeId':_0xc83f2d('HasSubtype'),'includeSubtypes':!![],'browseDirection':_0x225e8e['Forward'],'nodeClassMask':_0x5b31ef[_0x242bdf(0x16c)]|_0x5b31ef[_0x242bdf(0x1e0)]|_0x5b31ef[_0x242bdf(0x140)]|_0x5b31ef[_0x242bdf(0x194)],'resultMask':0x3f};function _0x5a1aa9(_0x1b5b7b,_0x241a24){return _0xbd58ad(this,void 0x0,void 0x0,function*(){const _0x9a810f=_0x1d63,_0x932786=_0x1b5b7b[_0x9a810f(0xfe)](_0x9a810f(0x1d4)),_0x6c8a2=yield _0x462479(_0x241a24,_0x932786,_0x562e7f);return _0x6c8a2;});}const _0x48a9e8=_0x511cac=>{const _0x5b6d02=_0x242bdf;var _0x186e8d,_0xa4a605,_0xe39d69,_0x2e8caf;if(!_0x511cac||!_0x511cac[_0x5b6d02(0x16b)]){const _0x39ce0e=$(_0x5b6d02(0x104));return _0x39ce0e;}const _0x223a4b=_0x511cac[_0x5b6d02(0x16b)][_0x5b6d02(0x105)](),_0x20618c=((_0x186e8d=_0x511cac[_0x5b6d02(0x206)])===null||_0x186e8d===void 0x0?void 0x0:_0x186e8d[_0x5b6d02(0x127)])||((_0xa4a605=_0x511cac['browseName'])===null||_0xa4a605===void 0x0?void 0x0:_0xa4a605[_0x5b6d02(0x215)])||_0x511cac['nodeId'][_0x5b6d02(0x105)](),{icon:_0x4d20ca,color:_0x3f4fe4}=_0x2604c7(_0x511cac),_0x55fe74='('+_0x511cac[_0x5b6d02(0x16b)][_0x5b6d02(0x105)]()+')\x20'+(((_0xe39d69=_0x511cac[_0x5b6d02(0x1de)])===null||_0xe39d69===void 0x0?void 0x0:_0xe39d69[_0x5b6d02(0x215)])||((_0x2e8caf=_0x511cac[_0x5b6d02(0x206)])===null||_0x2e8caf===void 0x0?void 0x0:_0x2e8caf['text'])||''),_0x32aa33=$(_0x5b6d02(0x213)+_0x511cac[_0x5b6d02(0x16b)][_0x5b6d02(0x105)]()+_0x5b6d02(0x1ed)+_0x55fe74+'><i\x20class=\x22fa\x20'+_0x4d20ca+_0x5b6d02(0x165)+_0x3f4fe4+';\x22></i>\x20'+_0x20618c+_0x5b6d02(0x183));return _0x32aa33[_0x5b6d02(0x1eb)]('expandable'),_0x32aa33['data'](_0x5b6d02(0x1d4),_0x223a4b),_0x32aa33[_0x5b6d02(0xfe)](_0x5b6d02(0x17a),_0x511cac),_0x32aa33;},_0x38c035=(_0x143511,_0x5d4196)=>{const _0x2a6ec5=_0x242bdf;return _0x5d4196[_0x2a6ec5(0x19d)](_0x2a6ec5(0x128)+_0x143511+'\x22]');},_0x1aaab8=(_0x1bff62,_0x31641b)=>{const _0x3e0b6e=_0x242bdf;_0x1bff62[_0x3e0b6e(0x1ff)][_0x3e0b6e(0x19d)](_0x3e0b6e(0x110))[_0x3e0b6e(0x1e6)](_0x3e0b6e(0x150)),_0x31641b[_0x3e0b6e(0x19d)](_0x3e0b6e(0x19f))[_0x3e0b6e(0x1eb)](_0x3e0b6e(0x150));},_0x49dc59=(_0x215d1e,_0x4e6132,_0x4b4146)=>_0xbd58ad(void 0x0,void 0x0,void 0x0,function*(){const _0xeccc7=_0x242bdf;let _0x2e79e6=_0x4b4146['children'](_0xeccc7(0x1df));_0x4e6132[_0xeccc7(0x174)][_0xeccc7(0x1ba)]||[];const _0x3425e6=_0x4e6132[_0xeccc7(0x21d)]||[];if(_0x3425e6[_0xeccc7(0x17f)]===0x0)return;for(const _0x48bae7 of _0x3425e6){_0x2e79e6[_0xeccc7(0x15e)](_0xeccc7(0x1d7))&&(yield _0xea675f(_0x215d1e,_0x2e79e6));const _0x43c0bf=_0x38c035(_0x48bae7,_0x2e79e6);if(_0x43c0bf[_0xeccc7(0x17f)]===0x0)return;_0x2e79e6=_0x43c0bf;}_0x1aaab8(_0x215d1e,_0x2e79e6),_0x507c2b(_0x215d1e[_0xeccc7(0x181)],_0x2e79e6);});function _0x507c2b(_0x31c311,_0x4571b4){const _0x46ae04=_0x242bdf,_0x5ac7ae=_0x4571b4[_0x46ae04(0x1b7)]()[_0x46ae04(0x18f)],_0x1e94a2=_0x31c311[_0x46ae04(0x10f)]();if(_0x1e94a2==undefined)return;const _0x30b651=_0x1e94a2+_0x5ac7ae-_0x31c311[_0x46ae04(0xfc)]()/0x2+_0x4571b4[_0x46ae04(0xfc)]()/0x2;_0x31c311[_0x46ae04(0x200)]({'scrollTop':_0x30b651},0x1f4);}const _0x2b92ce=(_0x1899a9,_0x866973)=>_0xbd58ad(void 0x0,void 0x0,void 0x0,function*(){const _0x1c5cb3=_0x242bdf,_0x2c286d=_0x1899a9[_0x1c5cb3(0x1b4)][_0x1c5cb3(0x1f6)](),_0x5057bb={'nodeId':_0x2c286d,'rootNodeId':_0x866973[_0x1c5cb3(0x16b)],'isType':_0x1899a9[_0x1c5cb3(0x1e9)]['isTypeRef']||![]},_0x629993=_0x384917(_0x1899a9),_0x4dee09=yield _0x44cd11(_0x629993,_0x5057bb);if(!_0x4dee09)return;yield _0x49dc59(_0x1899a9,_0x4dee09,_0x1899a9[_0x1c5cb3(0x1ff)]);});function _0x327a55(_0x27f7f6,_0x5e303e,_0x59f341,_0x571912){return _0xbd58ad(this,void 0x0,void 0x0,function*(){const _0x1afe6f=_0x1d63;if(_0x5e303e['hasClass'](_0x1afe6f(0x102))){console[_0x1afe6f(0x11d)](_0x1afe6f(0x1ab));return;}if(_0x5e303e[_0x1afe6f(0x15e)]('loading')){console[_0x1afe6f(0x11d)](_0x1afe6f(0x185));return;}_0x5e303e[_0x1afe6f(0x1eb)](_0x1afe6f(0x1b6)),_0x5e303e['append'](_0x1afe6f(0x1c7));try{_0x5e303e[_0x1afe6f(0x13d)]('ul')['empty']();const {references:_0x249834}=yield _0x59f341(_0x5e303e,_0x571912);_0x249834['sort']((_0x22b82b,_0x29efe7)=>{const _0x250b96=_0x1afe6f;var _0x49983e,_0x5109e9;return(((_0x49983e=_0x22b82b[_0x250b96(0x1de)])===null||_0x49983e===void 0x0?void 0x0:_0x49983e[_0x250b96(0x215)])||'')['localeCompare'](((_0x5109e9=_0x29efe7['browseName'])===null||_0x5109e9===void 0x0?void 0x0:_0x5109e9[_0x250b96(0x215)])||'');});for(const _0x50956f of _0x249834){if(_0x27f7f6[_0x1afe6f(0x1e9)]['filter']&&!_0x27f7f6[_0x1afe6f(0x1e9)][_0x1afe6f(0x196)](_0x50956f))continue;const _0x2f5422=_0x48a9e8(_0x50956f);_0x5e303e['children']('ul')[_0x1afe6f(0x119)](_0x2f5422);}_0x5e303e['addClass'](_0x1afe6f(0x102));}catch(_0x473fdd){_0x5e303e[_0x1afe6f(0x13d)]('ul')[_0x1afe6f(0x119)](_0x1afe6f(0x124)+_0x473fdd[_0x1afe6f(0x1be)]+_0x1afe6f(0x182)),console[_0x1afe6f(0x11d)]('err',_0x473fdd);}_0x5e303e[_0x1afe6f(0x19d)](_0x1afe6f(0x1e7))[_0x1afe6f(0x1cb)](),_0x5e303e[_0x1afe6f(0x1e6)]('loading');});}function _0x384917(_0x112202){const _0x220f40=_0x242bdf,_0x50db68={'baseUrl':_0x112202[_0x220f40(0x1e9)][_0x220f40(0x15d)],'endpointNode':typeof _0x112202[_0x220f40(0x1e9)][_0x220f40(0x163)]==='function'?_0x112202[_0x220f40(0x1e9)]['endpointNode']():_0x112202['options'][_0x220f40(0x163)],'endpoint':typeof _0x112202[_0x220f40(0x1e9)][_0x220f40(0x20b)]===_0x220f40(0x209)?_0x112202[_0x220f40(0x1e9)][_0x220f40(0x20b)]():_0x112202[_0x220f40(0x1e9)][_0x220f40(0x20b)]};return _0x50db68;}function _0xea675f(_0x1e8eb1,_0x5e3eef){return _0xbd58ad(this,void 0x0,void 0x0,function*(){const _0x298d27=_0x1d63;if(_0x5e3eef['hasClass'](_0x298d27(0x102))){_0x5e3eef[_0x298d27(0x1e6)](_0x298d27(0x1d7))[_0x298d27(0x1eb)](_0x298d27(0x1cf)),_0x5e3eef[_0x298d27(0x13d)]('ul')[_0x298d27(0x1f4)]();return;}const _0x20d529=_0x384917(_0x1e8eb1),_0x16c3c4=!_0x1e8eb1[_0x298d27(0x1e9)][_0x298d27(0x203)]?_0x432829:_0x5a1aa9;try{yield _0x327a55(_0x1e8eb1,_0x5e3eef,_0x16c3c4,_0x20d529),_0x5e3eef[_0x298d27(0x1e6)](_0x298d27(0x1d7))['addClass'](_0x298d27(0x1cf));}catch(_0x1b6c42){_0x5e3eef[_0x298d27(0x1e6)](_0x298d27(0x1d7))[_0x298d27(0x1eb)](_0x298d27(0x1cf)),console[_0x298d27(0x11d)]('error',_0x1b6c42);}});}const _0x2abf62={'browseName':{'namespaceIndex':0x0,'name':_0x242bdf(0x162)},'nodeClass':_0x242bdf(0x166),'nodeId':_0x242bdf(0x12a),'displayName':{'text':_0x242bdf(0x162)},'typeDefinition':_0x578002},_0x2e3d4d=()=>{const _0x2131e0=_0x242bdf;$[_0x2131e0(0x142)](_0x2131e0(0x11a),{'options':{'endpointNode':()=>({'endpoint':_0x2131e0(0x1e1)}),'endpoint':()=>undefined,'parentNode':()=>_0x2abf62,'filter':()=>!![],'baseUrl':'','isTypeRef':![]},'resolveParentNode'(){return _0xbd58ad(this,void 0x0,void 0x0,function*(){const _0x316e3c=_0x1d63,_0x1024bc=this;if(_0x1024bc[_0x316e3c(0x171)]==undefined){const _0x4036c8=typeof _0x1024bc[_0x316e3c(0x1e9)][_0x316e3c(0xfd)]==='function'?_0x1024bc[_0x316e3c(0x1e9)][_0x316e3c(0xfd)][_0x316e3c(0x109)](_0x1024bc):_0x1024bc['options']['parentNode'];if(_0x4036c8 instanceof Promise){const _0x356762=yield _0x4036c8;_0x1024bc[_0x316e3c(0x171)]=_0x356762;}else _0x1024bc['__parentNode']=_0x4036c8;}return _0x1024bc[_0x316e3c(0x171)]||_0x2abf62;});},'reset'(){return _0xbd58ad(this,void 0x0,void 0x0,function*(){const _0x332485=_0x1d63,_0x1a2487=this,_0x3d8302=_0x1a2487;_0x3d8302[_0x332485(0x171)]=undefined,_0x1a2487[_0x332485(0x1ff)]['empty']();const _0x515e66=yield this[_0x332485(0x1ea)](),_0x541f51=_0x48a9e8(_0x515e66);_0x1a2487[_0x332485(0x1ff)]['append'](_0x541f51),_0x1a2487[_0x332485(0x207)]=_0x515e66;});},'verify'(_0x52cd0a){const _0xa48877=_0x2131e0,_0x775446=this,_0x589bf4=_0x384917(_0x775446);_0x340781(_0x589bf4,_0x52cd0a,_0x775446[_0xa48877(0x1b4)],_0x775446[_0xa48877(0x115)])[_0xa48877(0x156)](_0x5418cd=>{const _0x155cf0=_0xa48877;!_0x5418cd?_0x775446[_0x155cf0(0x14a)][_0x155cf0(0x1eb)]('sterfive-input-error'):_0x775446[_0x155cf0(0x14a)]['removeClass'](_0x155cf0(0x135));});},'_hideMenu'(_0x926df3){const _0x226bfe=_0x2131e0,_0x435866=this;$(document)[_0x226bfe(0x179)](_0x226bfe(0x12e)),_0x926df3[_0x226bfe(0x144)](),_0x926df3[_0x226bfe(0x211)]({'height':_0x226bfe(0x224)});if(_0x926df3[_0x226bfe(0x19c)][_0x226bfe(0x125)]){var _0x4962ba=[];_0x926df3[_0x226bfe(0x19d)](_0x226bfe(0x132))[_0x226bfe(0x15c)](function(){const _0x45625b=_0x226bfe;$(this)['prop']('checked')&&_0x4962ba[_0x45625b(0x101)]($(this)[_0x45625b(0xfe)](_0x45625b(0x1d4)));}),_0x926df3[_0x226bfe(0x1c5)](_0x4962ba);}_0x435866[_0x226bfe(0x192)]['is'](_0x226bfe(0x223))?_0x435866['$input']['trigger']('focus'):_0x435866[_0x226bfe(0x176)][_0x226bfe(0x13a)](_0x226bfe(0x21e));},'_createMenu'(_0x158ae8,_0x5d63f1,_0x276d69){const _0x1ed7c3=_0x2131e0;var _0x115569=this;const _0x369819=$('<div>')[_0x1ed7c3(0x1eb)](_0x1ed7c3(0x117));return _0x369819['opts']=_0x5d63f1,_0x369819[_0x1ed7c3(0x1c5)]=_0x276d69,_0x158ae8['forEach'](_0x2411ba=>{const _0x18d1fc=_0x1ed7c3;typeof _0x2411ba==='string'&&(_0x2411ba={'value':_0x2411ba,'label':_0x2411ba});var _0x94c614=$(_0x18d1fc(0xf5))[_0x18d1fc(0x1fa)](_0x18d1fc(0x1d4),_0x2411ba[_0x18d1fc(0x1d4)])[_0x18d1fc(0x147)](_0x369819);_0x2411ba['label']&&_0x94c614[_0x18d1fc(0x127)](_0x2411ba['label']);_0x2411ba[_0x18d1fc(0x204)]&&_0x94c614[_0x18d1fc(0x1c8)](_0x18d1fc(0x204),_0x2411ba[_0x18d1fc(0x204)]);if(_0x2411ba['icon']){if(_0x2411ba[_0x18d1fc(0x1d3)]['indexOf']('<')===0x0)$(_0x2411ba[_0x18d1fc(0x1d3)])[_0x18d1fc(0xf7)](_0x94c614);else _0x2411ba[_0x18d1fc(0x1d3)]['indexOf']('/')!==-0x1?$('<i>',{'class':_0x18d1fc(0x1e5),'style':_0x18d1fc(0x1bf)+_0x2411ba[_0x18d1fc(0x1d3)]+_0x18d1fc(0x1da)+_0x2411ba['icon']+');'})['prependTo'](_0x94c614):$(_0x18d1fc(0x159),{'class':'red-ui-typedInput-icon\x20'+_0x2411ba[_0x18d1fc(0x1d3)]})[_0x18d1fc(0xf7)](_0x94c614);}else _0x94c614[_0x18d1fc(0x211)]({'paddingLeft':_0x18d1fc(0x1f1)});!_0x2411ba[_0x18d1fc(0x1d3)]&&!_0x2411ba[_0x18d1fc(0x152)]&&_0x94c614[_0x18d1fc(0x127)](_0x2411ba[_0x18d1fc(0x1d4)]);var _0x1f15c2;_0x5d63f1[_0x18d1fc(0x125)]&&(_0x1f15c2=$(_0x18d1fc(0x186))['css'](_0x18d1fc(0x205),'none')[_0x18d1fc(0xfe)](_0x18d1fc(0x1d4),_0x2411ba[_0x18d1fc(0x1d4)])[_0x18d1fc(0xf7)](_0x94c614)['on'](_0x18d1fc(0x131),function(_0x3fc460){const _0x328b6a=_0x18d1fc;_0x3fc460[_0x328b6a(0x1c1)]();})),_0x94c614['on'](_0x18d1fc(0x208),function(_0x395c3f){const _0x21d18b=_0x18d1fc;_0x395c3f[_0x21d18b(0x1c1)](),_0x395c3f[_0x21d18b(0x202)](),!_0x5d63f1[_0x21d18b(0x125)]?(_0x276d69(_0x2411ba['value']),_0x115569[_0x21d18b(0x14c)](_0x369819)):_0x1f15c2[_0x21d18b(0x1c8)](_0x21d18b(0x1fb),!_0x1f15c2[_0x21d18b(0x1c8)]('checked'));});}),_0x369819[_0x1ed7c3(0x211)]({'display':_0x1ed7c3(0x13c)}),_0x369819['on']('keydown',function(_0x39d995){const _0x35328c=_0x1ed7c3;if(_0x39d995[_0x35328c(0x143)]===0x28)_0x39d995[_0x35328c(0x1c1)](),$(this)[_0x35328c(0x13d)](_0x35328c(0x193))['next']()[_0x35328c(0x13a)](_0x35328c(0x21e));else{if(_0x39d995[_0x35328c(0x143)]===0x26)_0x39d995[_0x35328c(0x1c1)](),$(this)['children'](_0x35328c(0x193))[_0x35328c(0x167)]()['trigger'](_0x35328c(0x21e));else _0x39d995[_0x35328c(0x143)]===0x1b&&(_0x39d995['preventDefault'](),_0x115569['_hideMenu'](_0x369819));}_0x39d995['stopPropagation']();}),_0x369819;},'disarmClick':![],'_showMenu'(_0x5d156a,_0x54d669){const _0x119930=_0x2131e0;if(this['disarmClick']){this[_0x119930(0x1d2)]=![];return;}var _0x1d26bb=this,_0x58c2c7=_0x54d669['offset'](),_0x1ff1a3=_0x54d669[_0x119930(0xfc)](),_0x14a3d0=_0x5d156a[_0x119930(0xfc)](),_0x589769=_0x1ff1a3+_0x58c2c7[_0x119930(0x18f)];_0x589769+_0x14a3d0-$(document)['scrollTop']()>$(window)['height']()&&(_0x589769-=_0x589769+_0x14a3d0-$(window)[_0x119930(0xfc)]()+0x5),_0x589769<0x0&&(_0x5d156a['height'](_0x14a3d0+_0x589769),_0x589769=0x0),_0x5d156a[_0x119930(0x211)]({'top':_0x589769+'px','left':_0x58c2c7['left']+'px'}),_0x5d156a[_0x119930(0x1a4)](0x64),this[_0x119930(0x15a)](function(){const _0x3c61c4=_0x119930;_0x1d26bb[_0x3c61c4(0x158)]['addClass'](_0x3c61c4(0x136)),$(document)['on']('mousedown.red-ui-typedInput-close-property-select',function(_0x341e13){const _0x34ed16=_0x3c61c4;!$(_0x341e13[_0x34ed16(0x15b)])[_0x34ed16(0x111)](_0x5d156a)[_0x34ed16(0x17f)]&&_0x1d26bb[_0x34ed16(0x14c)](_0x5d156a),$(_0x341e13[_0x34ed16(0x15b)])['closest'](_0x54d669)[_0x34ed16(0x17f)]&&(_0x1d26bb[_0x34ed16(0x1d2)]=!![],_0x341e13[_0x34ed16(0x1c1)]());});});},'_showTypeMenu'(){const _0x3118db=_0x2131e0,_0x11b038=this;this[_0x3118db(0x1b1)](_0x11b038[_0x3118db(0x1bb)],_0x11b038[_0x3118db(0x14a)]),_0x11b038['$dropdown'][_0x3118db(0x144)]();const _0x5529f6=_0x11b038[_0x3118db(0x21c)];var _0xb446cf=_0x11b038[_0x3118db(0x1bb)][_0x3118db(0x19d)](_0x3118db(0x149)+_0x5529f6+'\x27');setTimeout(function(){const _0xf2427c=_0x3118db;_0xb446cf[_0xf2427c(0x13a)](_0xf2427c(0x21e));},0x78);},'_initMenu'(){const _0x512758=_0x2131e0,_0x3b1e74=this;_0x3b1e74[_0x512758(0x176)]['attr'](_0x512758(0x155),-0x1),_0x3b1e74[_0x512758(0x176)]['on'](_0x512758(0x1b2),function(_0x3c604f){const _0x485f8d=_0x512758;_0x3c604f[_0x485f8d(0x1c1)]();});_0x3b1e74[_0x512758(0x1bb)]&&_0x3b1e74['$menu']['remove']();const _0x3498bb=[{'label':_0x512758(0x127),'value':'t','title':_0x512758(0x175),'icon':_0x512758(0x145)},{'label':_0x512758(0x1b3),'value':'msg','title':'node\x20id\x20or\x20\x20browse\x20path\x20comes\x20from\x20injected\x20msg\x20parameter','icon':'<i\x20class=\x22fa\x20fa-envelope-open-o\x22/>'},{'label':'NodeId','value':'n','icon':_0x512758(0x1f8)},{'label':_0x512758(0x218),'value':'na','icon':_0x512758(0x21f)},{'label':_0x512758(0x189),'value':_0x512758(0x1e2),'icon':_0x512758(0x1a5)},{'label':_0x512758(0x20c),'value':'b','icon':_0x512758(0x21a)},{'label':'Aliased\x20Browse\x20Path','value':'ab','icon':_0x512758(0x116)}],_0x4be6d6=_0x4a4c51(_0x3b1e74[_0x512758(0x1b4)][_0x512758(0x1f6)]()),_0x206a92=_0x3498bb[_0x512758(0x19d)](_0x9440bf=>_0x9440bf[_0x512758(0x1d4)]===_0x4be6d6);_0x3b1e74[_0x512758(0x1ec)][_0x512758(0x18e)]()['append']('<span\x20title='+((_0x206a92===null||_0x206a92===void 0x0?void 0x0:_0x206a92[_0x512758(0x204)])||'')+'>&nbsp;\x20'+((_0x206a92===null||_0x206a92===void 0x0?void 0x0:_0x206a92[_0x512758(0x1d3)])||'')+_0x512758(0x220)),_0x3b1e74['selectedMenuItem']=_0x4be6d6;const _0x39cd5b=this;_0x3b1e74[_0x512758(0x1bb)]=this['_createMenu'](_0x3498bb,{},_0x5748d4=>{const _0x3a26e0=_0x512758,_0x1b3397=_0x272628(_0x5748d4);_0x1b3397&&_0x39cd5b['verify'](_0x1b3397);const _0x5d3997=_0x3498bb[_0x3a26e0(0x19d)](_0x266d15=>_0x266d15['value']===_0x5748d4);_0x3b1e74[_0x3a26e0(0x21c)]=_0x5748d4,_0x3b1e74['$selectLabel']['empty']()['append'](_0x3a26e0(0x1c6)+((_0x5d3997===null||_0x5d3997===void 0x0?void 0x0:_0x5d3997[_0x3a26e0(0x204)])||'')+_0x3a26e0(0x1f2)+((_0x5d3997===null||_0x5d3997===void 0x0?void 0x0:_0x5d3997['icon'])||'')+'</span>');}),_0x3b1e74[_0x512758(0x1bb)][_0x512758(0x147)](document[_0x512758(0x214)]),_0x3b1e74[_0x512758(0x1bb)][_0x512758(0x144)](),_0x3b1e74['$selectTrigger'][_0x512758(0x1c0)]();},'mode'(){const _0x3bd87d=_0x2131e0,_0x411162=this;return _0x272628(_0x411162[_0x3bd87d(0x21c)]);},'setMode'(_0x3b9af3){const _0x2d1caf=_0x2131e0,_0xe5a64a=this,_0x196f16=_0x1bd996(_0x3b9af3);_0xe5a64a[_0x2d1caf(0x21c)]=_0x196f16;},'_create'(){const _0x1f7957=_0x2131e0,_0x30b85c=this;_0x30b85c[_0x1f7957(0x1b4)]=this[_0x1f7957(0x1e3)],_0x30b85c[_0x1f7957(0x1b4)]['css']('border',_0x1f7957(0x13c)),_0x30b85c[_0x1f7957(0x192)]=_0x30b85c[_0x1f7957(0x1b4)]['wrap']('<div>')[_0x1f7957(0x114)]()[_0x1f7957(0x1eb)](_0x1f7957(0x1c4)),_0x30b85c[_0x1f7957(0x14a)]=$('<div/>'),_0x30b85c[_0x1f7957(0x14a)]['addClass'](_0x1f7957(0x1aa)),_0x30b85c[_0x1f7957(0x1b4)][_0x1f7957(0x1b0)](_0x30b85c['$combo']),_0x30b85c[_0x1f7957(0x219)]=$(_0x1f7957(0x11f))[_0x1f7957(0x1eb)]('sterfive-input-group'),_0x30b85c['$combo'][_0x1f7957(0x119)](_0x30b85c[_0x1f7957(0x219)]),_0x30b85c[_0x1f7957(0x219)][_0x1f7957(0x119)](_0x30b85c[_0x1f7957(0x1b4)]),_0x30b85c[_0x1f7957(0x10d)]=$(_0x1f7957(0x113)),_0x30b85c[_0x1f7957(0x1b4)]['after'](_0x30b85c['$toggleTreeBtn']),_0x30b85c['$toggleTreeBtn']['on']('click',function(){return _0xbd58ad(this,void 0x0,void 0x0,function*(){const _0x37fc50=_0x1d63;var _0x3b818c;let _0x325eaa=![],_0x3cffd6;!_0x30b85c[_0x37fc50(0x181)]['is'](_0x37fc50(0x223))&&(_0x30b85c[_0x37fc50(0x115)][_0x37fc50(0x144)](),_0x3cffd6=yield _0x30b85c[_0x37fc50(0x1ea)](),(_0x3cffd6!==_0x30b85c[_0x37fc50(0x207)]||((_0x3b818c=_0x30b85c['currentParent'])===null||_0x3b818c===void 0x0?void 0x0:_0x3b818c[_0x37fc50(0x16b)])!==_0x3cffd6[_0x37fc50(0x16b)])&&(yield _0x30b85c[_0x37fc50(0x1d1)]()),_0x325eaa=!![]),_0x30b85c['$dropdown'][_0x37fc50(0x1f4)](),_0x325eaa&&(yield _0x2b92ce(_0x30b85c,_0x3cffd6));});}),_0x30b85c[_0x1f7957(0x198)]=$(_0x1f7957(0x1a6)),_0x30b85c[_0x1f7957(0x1b4)][_0x1f7957(0x16d)](_0x30b85c[_0x1f7957(0x198)]),_0x30b85c[_0x1f7957(0x198)]['on']('click',()=>{const _0x2d39bb=_0x1f7957,_0x5d05db=_0x30b85c[_0x2d39bb(0x1fc)]();if(!_0x5d05db)return;this[_0x2d39bb(0x201)](_0x5d05db);});const _0x1a1898=_0x3bb2a3=>_0xbd58ad(this,void 0x0,void 0x0,function*(){const _0x1d711f=_0x1f7957,_0x5704a0=this;let _0x871393=_0x5704a0['mode']();if(!_0x871393)return;const _0x522011=_0x384917(_0x5704a0),{data:_0x2096e1,json:_0x87d87c}=yield _0x20c0bc(_0x522011,_0x3bb2a3);if(_0x2096e1[_0x1d711f(0x1d6)]!==0xc8)return;if(_0x87d87c['statusCode'][_0x1d711f(0x1b8)](/Good/)){const _0x5ccda9=_0x25956a(_0x87d87c,_0x871393);_0x5704a0[_0x1d711f(0x1b4)][_0x1d711f(0x1f6)](_0x5ccda9),_0x5704a0[_0x1d711f(0x1b4)]['trigger'](_0x1d711f(0x1fe));}});{_0x30b85c[_0x1f7957(0x158)]=$(_0x1f7957(0x177)),_0x30b85c[_0x1f7957(0x1b4)]['before'](_0x30b85c[_0x1f7957(0x158)]),_0x30b85c[_0x1f7957(0x176)]=$('<button\x20type=\x22button\x22\x20tabindex=\x220\x22></button>')[_0x1f7957(0xf7)](_0x30b85c[_0x1f7957(0x158)]),$('<i\x20class=\x22red-ui-typedInput-icon\x20fa\x20fa-caret-down\x22></i>')['toggle'](!![])[_0x1f7957(0x147)](_0x30b85c['$selectTrigger']),_0x30b85c['$selectTrigger']['on'](_0x1f7957(0x208),function(_0x50b136){const _0x131c4b=_0x1f7957;_0x50b136['preventDefault'](),_0x50b136[_0x131c4b(0x202)](),_0x30b85c[_0x131c4b(0x118)]();}),_0x30b85c[_0x1f7957(0x176)]['on'](_0x1f7957(0x178),function(_0x3e7e00){const _0x2d4069=_0x1f7957;_0x3e7e00[_0x2d4069(0x143)]===0x28&&_0x30b85c['_showTypeMenu'](),_0x3e7e00[_0x2d4069(0x202)]();})['on'](_0x1f7957(0x21e),function(){const _0x1bba16=_0x1f7957;_0x30b85c[_0x1bba16(0x158)][_0x1bba16(0x1eb)](_0x1bba16(0x136));})['on'](_0x1f7957(0x18c),function(){const _0xca8d5b=_0x1f7957;_0x30b85c[_0xca8d5b(0x158)][_0xca8d5b(0x1e6)](_0xca8d5b(0x136));}),_0x30b85c['$selectLabel']=$('<span\x20class=\x22red-ui-typedInput-type-label\x22></span>')['appendTo'](_0x30b85c[_0x1f7957(0x176)]);}this[_0x1f7957(0x100)]();!_0x30b85c[_0x1f7957(0x1b4)][_0x1f7957(0x1fa)](_0x1f7957(0x17c))&&_0x30b85c[_0x1f7957(0x1b4)][_0x1f7957(0x1fa)]('placeholder',_0x1f7957(0x112));_0x30b85c[_0x1f7957(0x115)]=$(_0x1f7957(0x14b)),_0x30b85c[_0x1f7957(0x115)]['hide'](),_0x30b85c['$combo'][_0x1f7957(0x119)](_0x30b85c['$info']),_0x30b85c[_0x1f7957(0x181)]=$(_0x1f7957(0x11f))[_0x1f7957(0x1eb)](_0x1f7957(0x1d0))['hide']()[_0x1f7957(0x147)](_0x30b85c['$combo']),_0x30b85c[_0x1f7957(0x1ff)]=$(_0x1f7957(0x10b))['appendTo'](_0x30b85c[_0x1f7957(0x181)]),this[_0x1f7957(0x1d1)]();const _0x4b60c4=(_0x5739bc,_0x3b13ed)=>{const _0x4b96aa=_0x1f7957,_0x32ce46=0x14,_0x512547=0x14,_0x320fe9=_0x5739bc['offset'](),_0x600035=_0x3b13ed;if(_0x600035[_0x4b96aa(0x160)]>=_0x320fe9[_0x4b96aa(0x216)]&&_0x600035[_0x4b96aa(0x160)]<=_0x320fe9['left']+_0x32ce46&&_0x600035[_0x4b96aa(0x10a)]>=_0x320fe9[_0x4b96aa(0x18f)]&&_0x600035['pageY']<=_0x320fe9[_0x4b96aa(0x18f)]+_0x512547)return!![];return![];},_0x52ad07=_0x11cdec=>_0xbd58ad(this,void 0x0,void 0x0,function*(){const _0x2da939=_0x1f7957;if(_0x11cdec[_0x2da939(0x15e)]('expandable'))_0xea675f(_0x30b85c,_0x11cdec);else{if(_0x11cdec[_0x2da939(0x15e)]('expanded'))_0x11cdec[_0x2da939(0x13d)]('ul')[_0x2da939(0x1f4)](),_0x11cdec[_0x2da939(0x168)](_0x2da939(0x137));else{if(_0x11cdec[_0x2da939(0x13d)]('ul')['children']()[_0x2da939(0x17f)]>0x0)_0x11cdec[_0x2da939(0x13d)]('ul')['toggle'](),_0x11cdec[_0x2da939(0x168)](_0x2da939(0x137));else;}}});_0x30b85c[_0x1f7957(0x1ff)]['on']('dblclick','li',function(_0x5ef275){const _0x378f3e=_0x1f7957;var _0x439a06,_0x27f22e;_0x5ef275['stopPropagation']();let _0x48bdaa=$(this);if(_0x4b60c4(_0x48bdaa,_0x5ef275))_0x52ad07(_0x48bdaa);else{const _0x2dde97=_0x48bdaa['data'](_0x378f3e(0x1d4)),_0x55acb6=_0x48bdaa['data'](_0x378f3e(0x17a));if(_0x30b85c[_0x378f3e(0x1e9)][_0x378f3e(0x1ee)]&&!_0x30b85c[_0x378f3e(0x1e9)][_0x378f3e(0x1ee)](_0x55acb6))return;_0x30b85c['$input'][_0x378f3e(0xfe)](_0x378f3e(0x17a),_0x55acb6),((_0x439a06=_0x55acb6[_0x378f3e(0x206)])===null||_0x439a06===void 0x0?void 0x0:_0x439a06[_0x378f3e(0x127)])||((_0x27f22e=_0x55acb6[_0x378f3e(0x1de)])===null||_0x27f22e===void 0x0?void 0x0:_0x27f22e[_0x378f3e(0x215)])||_0x55acb6[_0x378f3e(0x16b)][_0x378f3e(0x105)]();let _0x79b76e=_0x30b85c[_0x378f3e(0x1fc)]();!_0x79b76e&&(_0x79b76e=_0x378f3e(0x16b),_0x30b85c[_0x378f3e(0x191)](_0x79b76e)),_0x1a1898(_0x2dde97)[_0x378f3e(0x156)](()=>{const _0x2d9b99=_0x378f3e;_0x30b85c[_0x2d9b99(0x181)]['hide']();})[_0x378f3e(0x146)](_0x2d0b5d=>{const _0x3afb5b=_0x378f3e;_0x30b85c['$dropdown'][_0x3afb5b(0x144)]();});}}),_0x30b85c[_0x1f7957(0x1ff)]['on'](_0x1f7957(0x208),'li',function(_0x151d77){_0x151d77['stopPropagation']();let _0x312034=$(this);_0x4b60c4(_0x312034,_0x151d77)&&_0x52ad07(_0x312034),_0x1aaab8(_0x30b85c,_0x312034);}),$(document)['on'](_0x1f7957(0x208),function(_0xb5220a){const _0x11616e=_0x1f7957;!$(_0xb5220a[_0x11616e(0x15b)])['closest'](_0x30b85c[_0x11616e(0x14a)])[_0x11616e(0x17f)]&&_0x30b85c[_0x11616e(0x181)][_0x11616e(0x144)]();});}});};function _0x2a0cd3(_0x407c77,_0x29cc1f){const _0xe3b4c2=_0x242bdf,_0x57cf2e=$(_0xe3b4c2(0x134)),_0x7b9479=$(_0xe3b4c2(0x195)),_0x88cc58=()=>{const _0x29c824=_0xe3b4c2,_0x2aeb4c=_0x407c77[_0x29c824(0x139)][_0x29c824(0x199)](_0x57cf2e[_0x29c824(0x1f6)]());_0x7b9479[_0x29c824(0x18e)]();if(!_0x2aeb4c||!_0x2aeb4c[_0x29c824(0x108)])return;for(const _0x453a88 of _0x2aeb4c['subscriptions']){const _0x4821fd=_0x453a88[_0x29c824(0x215)]||_0x453a88['id'];$(_0x29c824(0xfa),{'value':_0x453a88['id'],'label':_0x4821fd,'selected':_0x453a88['id']===_0x29cc1f[_0x29c824(0x122)]})[_0x29c824(0x127)](_0x4821fd)[_0x29c824(0x147)](_0x7b9479);}};_0x88cc58(),_0x7b9479['on'](_0xe3b4c2(0x1fe),()=>{const _0x504a55=_0xe3b4c2;_0x29cc1f['subscription']=_0x7b9479[_0x504a55(0x1f6)]();}),_0x57cf2e['on']('change',()=>{_0x88cc58();});}const _0x2a1e6f=()=>{const _0x406c02=_0x242bdf,_0x47e88d=$(_0x406c02(0x134)),_0x5f0611=_0x47e88d[_0x406c02(0x1f6)](),_0x1fd682=RED[_0x406c02(0x139)]['node'](_0x5f0611);if(!_0x1fd682)return undefined;const {endpoint:_0x486fd2,securityMode:_0x2f40d3,securityPolicy:_0x551f1e,userIdentityType:_0x41598e,credentials:_0x3c12f9,namespaceAliases:_0x521aa2}=_0x1fd682,_0x276eed={'endpoint':_0x486fd2,'securityMode':_0x2f40d3,'securityPolicy':_0x551f1e,'userIdentityType':_0x41598e,'credentials':_0x3c12f9,'namespaceAliases':_0x521aa2};return _0x276eed;},_0xa6151a=()=>{const _0x1d6b1b=_0x242bdf,_0x20294e=$('#node-input-endpoint'),_0x774828=_0x20294e['val'](),_0x2a1679=_0x2a1e6f();if(!_0x2a1679)return undefined;const _0x219c5f=_0x2a1679[_0x1d6b1b(0x10e)];return Object['assign']({'namespaceAliases':_0x219c5f,'id':_0x774828},_0x2a1679);},_0x32bc5a=()=>{return{'endpointNode':_0xa6151a};},_0x116d10=()=>{const _0xc112d9=_0x242bdf,_0x388a75=$(_0xc112d9(0x153));if(_0x388a75[_0xc112d9(0x17f)]){const _0x3c9977=$(_0xc112d9(0x1a2),{'src':_0xc112d9(0x1cc),'scrolling':'no','style':_0xc112d9(0xf6),'allowtransparency':'true','width':_0xc112d9(0x11b),'height':_0xc112d9(0x12d)});_0x388a75[_0xc112d9(0x119)](_0x3c9977),_0x3c9977[_0xc112d9(0x211)]({'position':_0xc112d9(0x19b),'right':_0xc112d9(0x20d),'bottom':_0xc112d9(0x1fd)});}};RED[_0x242bdf(0x139)][_0x242bdf(0x129)](_0x242bdf(0x13b),{'category':_0x242bdf(0x151),'color':_0x242bdf(0x1a3),'align':_0x242bdf(0x20e),'icon':_0x242bdf(0x180),'paletteLabel':_0x242bdf(0x12c),'defaults':{'inputs':{'value':0x1},'output':{'value':0x2},'name':{'value':''},'endpoint':{'value':'','required':!![],'type':_0x242bdf(0x1dd)},'subscription':{'value':'','required':!![],'validate':_0x9c3733=>{if(_0x9c3733==='')return![];return!![];}},'startImmediately':{'value':!![],'required':!![]},'nodeId':{'value':'/Server/ServerStatus/CurrentTime','required':![],'validate':()=>!![]},'samplingInterval':{'value':0x3e8,'required':!![]},'discardOldest':{'value':!![],'required':!![]},'queueSize':{'value':0xa,'required':!![]}},'outputs':0x1,'label'(){const _0x28a6cf=_0x242bdf;return this[_0x28a6cf(0x215)]||_0x28a6cf(0x130);},'labelStyle'(){const _0x78bb60=_0x242bdf;return this['name']?_0x78bb60(0xff):'';},'oneditprepare'(){const _0x4198d5=_0x242bdf,_0x265643=this;_0x2e3d4d(),_0x116d10();const _0x4a43cb=_0x265643['startImmediately'];_0x265643[_0x4198d5(0x16a)]=_0x4a43cb?0x0:0x1,_0x2a0cd3(RED,this),$(_0x4198d5(0x187))['on'](_0x4198d5(0x1fe),()=>{const _0xdb24c3=_0x4198d5,_0x397df3=$(_0xdb24c3(0x1c2))[_0xdb24c3(0x1c8)](_0xdb24c3(0x1fb));_0x397df3?$(_0xdb24c3(0x1c9))['val'](0x0):$(_0xdb24c3(0x1c9))[_0xdb24c3(0x1f6)](0x1);});const _0x1bb08f=$('#node-input-nodeId');_0x1bb08f['nodeBrowser'](Object[_0x4198d5(0x1a9)](Object[_0x4198d5(0x1a9)]({},_0x32bc5a()),{'filter'(_0xb8f531){const _0x25aabf=_0x4198d5;return _0xb8f531[_0x25aabf(0x197)]===_0x25aabf(0x1ad)||_0xb8f531['nodeClass']==='Object';},'isSelectable'(_0x405911){const _0x2702b2=_0x4198d5;return _0x405911['nodeClass']===_0x2702b2(0x1ad);}}));},'oneditsave'(){const _0x4a7dd7=_0x242bdf,_0x285e0d=$(_0x4a7dd7(0x1c2))[_0x4a7dd7(0x1c8)]('checked');_0x285e0d?($(_0x4a7dd7(0x1c2))['val'](_0x285e0d?0x0:0x1),this[_0x4a7dd7(0x16a)]=_0x285e0d?0x0:0x1):($(_0x4a7dd7(0x1c2))['val'](0x1),this[_0x4a7dd7(0x16a)]=0x1);}});}()));function _0x1d63(_0x2c023c,_0x18a229){const _0x3765db=_0x3765();return _0x1d63=function(_0x1d631e,_0x28353b){_0x1d631e=_0x1d631e-0xf5;let _0x6cc4c1=_0x3765db[_0x1d631e];return _0x6cc4c1;},_0x1d63(_0x2c023c,_0x18a229);}function _0x3765(){const _0x73490c=['throw','assign','sterfive-combo-box','already\x20fetched','DisplayName','Variable','statusText','nsu\x20nodeId:\x20','replaceWith','_showMenu','mousedown.red-ui-typedInput-focus-block','msg.','$input','Organizes','loading','position','match','bp_indexed','elements','$menu','ns=0;i=40','browse\x20path:\x20','message','mask-image:\x20url(','show','preventDefault','#node-input-startImmediately','aliasedNodeId','main-wrapper','callback','<span\x20title=','<div\x20class=\x22spinner\x22></div>','prop','#node-input-inputs','statusCode:\x20','remove','/opcua-for-node-red/support-frame.html','145QnqsRk','statusCode','expanded','sterfive-dropdown','reset','disarmClick','icon','value','2630775TQsWQg','status','expandable','/browse','stringify',');\x20-webkit-mask-image:\x20url(','CadetBlue','fetching\x20failed\x20with\x20error','OpcUa-Endpoint2','browseName',':first','ObjectType','opc.tcp://opcuademo.sterfive.com:26543','nsu','element','error','red-ui-typedInput-icon','removeClass','.spinner','browsePath','options','resolveParentNode','addClass','$selectLabel','\x22}><span\x20class=\x22tree-text\x22\x20title=','isSelectable','2138928WXjIjE','ns=0;i=61','18px','>&nbsp;\x20','SteelBlue','toggle','references','val','Invalid','<i\x20class=\x22fa\x20fa-tag\x22/>1\x20&nbsp;\x20','ns=0;i=46','attr','checked','mode','16px','change','$tree','animate','verify','stopPropagation','isTypeRef','title','pointer-events','displayName','currentParent','click','function','nsuNodeID','endpoint','BrowsePath','20px','right','failure','Unspecified','css','grey','<li\x20key=\x22','body','name','left','Good','Aliased\x20NodeId','$inputGroup','<i\x20class=\x22fa\x20fa-tag\x22/><i\x20class=\x22fa\x20fa-fighter-jet\x22/>&nbsp;','POST','selectedMenuItem','nodeIds','focus','<i\x20class=\x22fa\x20fa-bookmark\x22/>&nbsp;\x20','</span>','nodeId_nsu','14589FaFwGR',':visible','auto','<a\x20href=\x22#\x22></a>','background-color:transparent;overflow:hidden;border:3px','prependTo','/opcua-for-node-red','BrowseName','<option/>','7332CEgEdc','height','parentNode','data','node_label_italic','_initMenu','push','fetched','/walk-backward','<li><i\x20class=\x22fa\x20fa-error\x22\x20style=\x22color:red;\x22></i>no\x20reference\x20!<ul></ul></li>','toString','HasSubtype','6868800CJEwos','subscriptions','call','pageY','<ul\x20class=\x22sterfive-tree\x22></ul>','10xYsrhw','$toggleTreeBtn','namespaceAliases','scrollTop','li\x20>\x20.tree-text','closest','enter\x20a\x20nodeId\x20or\x20a\x20browsePath\x20','<button\x20title=\x22open\x20OPCUA\x20AddressSpace\x20Browser\x22><i\x20class=\x22fa\x20fa-sitemap\x22></i></button>','parent','$info','<i\x20class=\x22fa\x20fa-bookmark\x22/><i\x20class=\x22fa\x20fa-fighter-jet\x22/>&nbsp;','sterfive-typedInput-options\x20sterfive-online-menu','_showTypeMenu','append','sterfive.nodeBrowser','180px','384684IGVcLr','log','next','<div/>','HasProperty','View','subscription','Inverse','<li>error\x20','multiple','fa-folder','text','li[key=\x22','registerType','ns=0;i=85','aliasedBrowsePath','monitor\x20variable','30px','mousedown.red-ui-typedInput-close-property-select','HasComponent','OPCUA\x20Client\x20Monitor\x20','mousedown','input[type=\x22checkbox\x22]','Both','#node-input-endpoint','sterfive-input-error','red-ui-typedInput-focus','expandable\x20expanded','typeDefinition','nodes','trigger','OpcUa-Client2-Monitor','none','children','NodeClass','TypeDefinition','DataType','fa-list-alt','widget','keyCode','hide','<i\x20class=\x22fa\x20fa-font\x22/i>\x20','catch','appendTo','bp_aliased','[value=\x27','$combo','<div\x20class=\x22sterfive-info-text\x22></div>','_hideMenu','fa-text-width','ns=0;i=34','HasTypeDefinition','selected','opcua','label','.red-ui-tray-body','fa-object-group','tabindex','then','rgba(61,\x2060,\x204,\x200.525)','$uiSelect','<i>','_delay','target','each','baseUrl','hasClass','json','pageX','ns=0;i=47','Objects','endpointNode','requestedNodeId','\x22\x20style=\x22color:','Object','prev','toggleClass','ns=0;i=35','inputs','nodeId','ReferenceType','after','542787SlmejW','Method','join','__parentNode','fa-cog','aliased\x20NodeId:\x20','relativePath','Value\x20is\x20not\x20verified','$selectTrigger','<div>','keydown','off','reference','DarkOrange','placeholder','sterfive-info','IsForward','length','../../icons/opcuanodeLogo.png','$dropdown','</li>','</span><ul></ul></li>','HasChild','already\x20loading','<input\x20type=\x22checkbox\x22>','node-input-startImmediately','DodgerBlue','NodeId\x20with\x20namespace\x20Urn','referenceTypeId','i=61','blur','32ZJXsdN','empty','top','SandyBrown','setMode','$elementDiv',':focus','VariableType','#node-input-subscription','filter','nodeClass','$verifyBtn','node','suppressed','absolute','opts','find','application/json','.tree-text:first','Forward','apply','<iframe></iframe>','#C0DEED','slideDown','<i\x20class=\x22fa\x20fa-id-card\x22/>&nbsp;\x20','<button\x20title=\x22verify\x20nodeId\x20or\x20browsePath\x22><i\x20class=\x22fa\x20fa-refresh\x22></i></button>','fa-question'];_0x3765=function(){return _0x73490c;};return _0x3765();}
9
8
  </script>
10
9
  <script type="text/x-red" data-template-name="OpcUa-Client2-Monitor">
11
10
  <style>