@opcua/for-node-red 3.9.0 → 3.11.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(_0x305d79,_0x4f3762){const _0x4a812d=_0x517d,_0x44fdd3=_0x305d79();while(!![]){try{const _0x228cfe=-parseInt(_0x4a812d(0x205))/0x1+-parseInt(_0x4a812d(0x186))/0x2+-parseInt(_0x4a812d(0x274))/0x3+-parseInt(_0x4a812d(0x170))/0x4+parseInt(_0x4a812d(0x1d9))/0x5*(-parseInt(_0x4a812d(0x262))/0x6)+-parseInt(_0x4a812d(0x1a3))/0x7+parseInt(_0x4a812d(0x1b1))/0x8*(parseInt(_0x4a812d(0x17f))/0x9);if(_0x228cfe===_0x4f3762)break;else _0x44fdd3['push'](_0x44fdd3['shift']());}catch(_0x3a9f7c){_0x44fdd3['push'](_0x44fdd3['shift']());}}}(_0x584c,0x5d741),(function(){'use strict';const _0x3e5a70=_0x517d;function _0xd2b05f(_0x492d51,_0x199094){const _0x145fb0=_0x517d,_0x23fee8=$(_0x145fb0(0x14c)),_0x45fda0=$('#node-input-subscription'),_0x4d3e85=()=>{const _0x4d333f=_0x145fb0,_0x32c1c9=_0x492d51[_0x4d333f(0x265)][_0x4d333f(0x1f0)](_0x23fee8['val']());_0x45fda0['empty']();if(!_0x32c1c9||!_0x32c1c9[_0x4d333f(0x1be)])return;for(const _0x3ead83 of _0x32c1c9[_0x4d333f(0x1be)]){const _0x120de8=_0x3ead83[_0x4d333f(0x14f)]||_0x3ead83['id'];$(_0x4d333f(0x223),{'value':_0x3ead83['id'],'label':_0x120de8,'selected':_0x3ead83['id']===_0x199094[_0x4d333f(0x1db)]})[_0x4d333f(0x21e)](_0x120de8)[_0x4d333f(0x134)](_0x45fda0);}};_0x4d3e85(),_0x45fda0['on']('change',()=>{const _0x5a225e=_0x145fb0;_0x199094[_0x5a225e(0x1db)]=_0x45fda0[_0x5a225e(0x183)]();}),_0x23fee8['on']('change',()=>{_0x4d3e85();});}function _0x3b6609(_0x20245d,_0x2ddf9a,_0x299dc5,_0x41425e){function _0x36a75a(_0x21904b){return _0x21904b instanceof _0x299dc5?_0x21904b:new _0x299dc5(function(_0x32eb87){_0x32eb87(_0x21904b);});}return new(_0x299dc5||(_0x299dc5=Promise))(function(_0x3602ed,_0x5607c8){const _0x29f251=_0x517d;function _0x1399d3(_0x5210b0){try{_0x401558(_0x41425e['next'](_0x5210b0));}catch(_0x3f1037){_0x5607c8(_0x3f1037);}}function _0x182482(_0x4281a8){try{_0x401558(_0x41425e['throw'](_0x4281a8));}catch(_0x2100d3){_0x5607c8(_0x2100d3);}}function _0x401558(_0xccf43b){const _0x140920=_0x517d;_0xccf43b[_0x140920(0x1ff)]?_0x3602ed(_0xccf43b['value']):_0x36a75a(_0xccf43b[_0x140920(0x163)])['then'](_0x1399d3,_0x182482);}_0x401558((_0x41425e=_0x41425e[_0x29f251(0x268)](_0x20245d,_0x2ddf9a||[]))[_0x29f251(0x1a8)]());});}typeof SuppressedError==='function'?SuppressedError:function(_0x31f704,_0x4c4fae,_0x221a65){const _0x1f3536=_0x517d;var _0x5598df=new Error(_0x221a65);return _0x5598df[_0x1f3536(0x14f)]=_0x1f3536(0x214),_0x5598df[_0x1f3536(0x238)]=_0x31f704,_0x5598df[_0x1f3536(0x17b)]=_0x4c4fae,_0x5598df;};const _0x181fb8=_0x3e5a70(0x246),_0x473a71=_0x3e5a70(0x1cc),_0x3cddcc='ns=0;i=47',_0x521b00=_0x3e5a70(0x175),_0x335637=_0x3e5a70(0x272),_0xffcf5a=_0x3e5a70(0x135),_0x1a8a98=_0x3e5a70(0x21c);var _0x14d28f;(function(_0x716f71){const _0x4078eb=_0x3e5a70;_0x716f71[_0x716f71['Forward']=0x0]=_0x4078eb(0x213),_0x716f71[_0x716f71[_0x4078eb(0x154)]=0x1]=_0x4078eb(0x154),_0x716f71[_0x716f71[_0x4078eb(0x132)]=0x2]=_0x4078eb(0x132),_0x716f71[_0x716f71[_0x4078eb(0x14a)]=0x3]='Invalid';}(_0x14d28f||(_0x14d28f={})));var _0x247a97;(function(_0x1d71dc){const _0x5bf4ce=_0x3e5a70;_0x1d71dc[_0x1d71dc['Unspecified']=0x0]='Unspecified',_0x1d71dc[_0x1d71dc['Object']=0x1]=_0x5bf4ce(0x193),_0x1d71dc[_0x1d71dc['Variable']=0x2]=_0x5bf4ce(0x1a5),_0x1d71dc[_0x1d71dc['Method']=0x4]=_0x5bf4ce(0x26a),_0x1d71dc[_0x1d71dc[_0x5bf4ce(0x22d)]=0x8]=_0x5bf4ce(0x22d),_0x1d71dc[_0x1d71dc[_0x5bf4ce(0x1e6)]=0x10]=_0x5bf4ce(0x1e6),_0x1d71dc[_0x1d71dc[_0x5bf4ce(0x16f)]=0x20]='ReferenceType',_0x1d71dc[_0x1d71dc[_0x5bf4ce(0x1ba)]=0x40]=_0x5bf4ce(0x1ba),_0x1d71dc[_0x1d71dc[_0x5bf4ce(0x244)]=0x80]=_0x5bf4ce(0x244);}(_0x247a97||(_0x247a97={})));var _0x5d9920;(function(_0x43836e){const _0x81886e=_0x3e5a70;_0x43836e[_0x43836e['Object']=0x1]='Object',_0x43836e[_0x43836e['Variable']=0x2]='Variable',_0x43836e[_0x43836e[_0x81886e(0x26a)]=0x4]=_0x81886e(0x26a),_0x43836e[_0x43836e[_0x81886e(0x22d)]=0x8]='ObjectType',_0x43836e[_0x43836e[_0x81886e(0x1e6)]=0x10]=_0x81886e(0x1e6),_0x43836e[_0x43836e[_0x81886e(0x16f)]=0x20]=_0x81886e(0x16f),_0x43836e[_0x43836e[_0x81886e(0x1ba)]=0x40]='DataType',_0x43836e[_0x43836e['View']=0x80]=_0x81886e(0x244);}(_0x5d9920||(_0x5d9920={})));var _0x3f5925;(function(_0x538900){const _0x313a73=_0x3e5a70;_0x538900[_0x538900[_0x313a73(0x16f)]=0x1]='ReferenceType',_0x538900[_0x538900['IsForward']=0x2]=_0x313a73(0x13a),_0x538900[_0x538900[_0x313a73(0x1c9)]=0x4]='NodeClass',_0x538900[_0x538900[_0x313a73(0x251)]=0x8]=_0x313a73(0x251),_0x538900[_0x538900['DisplayName']=0x10]='DisplayName',_0x538900[_0x538900[_0x313a73(0x21b)]=0x20]=_0x313a73(0x21b);}(_0x3f5925||(_0x3f5925={})));function _0x499a32(_0xbc2aa){const _0xd9a954=_0x3e5a70;switch(_0xbc2aa){case _0xd9a954(0x1b3):return _0x181fb8;case _0xd9a954(0x23b):return _0x521b00;case _0xd9a954(0x1af):return _0x3cddcc;case'HasChild':return _0x335637;case'HasSubtype':return _0xffcf5a;case'HasTypeDefinition':return _0x1a8a98;}}const _0x35b221=_0x97012c=>{const _0x25320d=_0x3e5a70;switch(_0x97012c[_0x25320d(0x166)]){case'Object':if(_0x97012c[_0x25320d(0x17a)]===_0x181fb8);if(_0x97012c[_0x25320d(0x209)]===_0x473a71||_0x97012c[_0x25320d(0x17a)]===_0x25320d(0x1cf))return{'icon':_0x25320d(0x21d),'color':'rgba(61,\x2060,\x204,\x200.525)'};return{'icon':_0x25320d(0x216),'color':'SeaGreen'};case _0x25320d(0x1a5):if(_0x97012c[_0x25320d(0x17a)]===_0x3cddcc)return{'icon':_0x25320d(0x19b),'color':_0x25320d(0x1ea)};else return _0x97012c['referenceTypeId']===_0x521b00?{'icon':'fa-list-alt','color':_0x25320d(0x25c)}:{'icon':_0x25320d(0x19b),'color':_0x25320d(0x1d4)};case'Method':return{'icon':_0x25320d(0x1dc),'color':_0x25320d(0x142)};case _0x25320d(0x22d):return{'icon':_0x25320d(0x216),'color':'DarkOrange'};case _0x25320d(0x1e6):return{'icon':_0x25320d(0x255),'color':_0x25320d(0x23d)};case _0x25320d(0x1ba):return{'icon':_0x25320d(0x23f),'color':'CadetBlue'};}return{'icon':'fa-question','color':_0x25320d(0x13d)};},_0x4ddeaa=(_0x4d3712,_0x1b6580,_0x16aec4)=>_0x3b6609(void 0x0,[_0x4d3712,_0x1b6580,_0x16aec4],void 0x0,function*({endpointNode:_0x5e0568,endpoint:_0x3d239b,baseUrl:_0x5c6990},_0x1eb5d2,_0x2aa250){const _0x314c04=_0x3e5a70,_0x5c826c=_0x5c6990+_0x314c04(0x275),_0x2b82b5=_0x5c826c+'/browse',_0x2bb6be=Object[_0x314c04(0x18e)](Object[_0x314c04(0x18e)]({},_0x2aa250),{'nodeId':_0x1eb5d2,'resultMask':0x3f}),_0xd56377=yield fetch(_0x2b82b5,{'method':_0x314c04(0x239),'body':JSON[_0x314c04(0x22a)]({'endpointNode':_0x5e0568,'endpoint':_0x3d239b,'browseDescription':_0x2bb6be}),'headers':{'Content-Type':_0x314c04(0x1ae)}});if(_0xd56377['status']!==0xc8)return console[_0x314c04(0x215)]('fetching\x20failed\x20with\x20error',_0xd56377[_0x314c04(0x242)],_0xd56377['statusText']),{'references':[]};const _0x513ddd=yield _0xd56377[_0x314c04(0x180)](),_0x44519b=_0x513ddd['browseResult'][_0x314c04(0x187)]||[];return{'references':_0x44519b};}),_0x382ac4={'referenceTypeId':_0x499a32(_0x3e5a70(0x1f1)),'includeSubtypes':!![],'browseDirection':_0x14d28f[_0x3e5a70(0x213)],'nodeClassMask':_0x247a97[_0x3e5a70(0x1a5)]|_0x247a97['Object']|_0x247a97[_0x3e5a70(0x26a)],'resultMask':0x3f},_0xe0adea={'referenceTypeId':_0x499a32(_0x3e5a70(0x1b3)),'includeSubtypes':!![],'browseDirection':_0x14d28f[_0x3e5a70(0x213)],'nodeClassMask':_0x247a97['Variable']|_0x247a97['Object']|_0x247a97[_0x3e5a70(0x26a)],'resultMask':0x3f},_0x365da4=(_0x2162fa,_0x44d345)=>_0x3b6609(void 0x0,[_0x2162fa,_0x44d345],void 0x0,function*({endpointNode:_0x41eb0c,endpoint:_0x465ea0,baseUrl:_0x20d42f},{nodeId:_0x5422db,rootNodeId:_0x1219ac,isType:_0x58fcce}){const _0x5ae9dd=_0x3e5a70,_0x13a6f5=_0x20d42f+_0x5ae9dd(0x275),_0x5224ff=_0x13a6f5+'/walk-backward',_0x55c3ab=yield fetch(_0x5224ff,{'method':_0x5ae9dd(0x239),'body':JSON[_0x5ae9dd(0x22a)]({'endpointNode':_0x41eb0c,'endpoint':_0x465ea0,'nodeId':_0x5422db,'rootNodeId':_0x1219ac,'isType':_0x58fcce}),'headers':{'Content-Type':_0x5ae9dd(0x1ae)}});if(_0x55c3ab[_0x5ae9dd(0x242)]!==0xc8)return null;const _0x213da5=yield _0x55c3ab['json']();return _0x213da5[_0x5ae9dd(0x24e)];}),_0x22c51a=(_0x11705e,_0x246ed0)=>{const _0x7990d0=_0x3e5a70;if(_0x11705e['statusCode']!=='Good')return _0x11705e[_0x7990d0(0x210)];switch(_0x246ed0){case _0x7990d0(0x24e):return _0x11705e[_0x7990d0(0x24a)];case _0x7990d0(0x191):return _0x11705e['bp_aliased']||_0x11705e['bp_indexed'];case _0x7990d0(0x147):return _0x11705e[_0x7990d0(0x161)]||_0x11705e['nodeId_nsu'];case'nsuNodeID':return _0x11705e[_0x7990d0(0x1fc)];default:case _0x7990d0(0x1aa):return _0x11705e[_0x7990d0(0x1aa)];}},_0x3b21be=_0x335c06=>{const _0x2f2371=_0x3e5a70;if(_0x335c06['statusCode']!==_0x2f2371(0x12d))return'statusCode:\x20'+_0x335c06[_0x2f2371(0x224)];else{let _0x325d68=[];return _0x325d68['push'](_0x2f2371(0x143)+_0x335c06['nodeId']),_0x325d68[_0x2f2371(0x248)](_0x2f2371(0x1ec)+_0x335c06['bp_indexed']),_0x325d68[_0x2f2371(0x248)](_0x2f2371(0x137)+_0x247a97[_0x335c06['nodeClass']]),_0x335c06[_0x2f2371(0x1fc)]&&_0x325d68[_0x2f2371(0x248)](_0x2f2371(0x229)+_0x335c06[_0x2f2371(0x1fc)]),_0x335c06[_0x2f2371(0x161)]&&_0x325d68[_0x2f2371(0x248)](_0x2f2371(0x1f2)+_0x335c06[_0x2f2371(0x161)]),_0x335c06[_0x2f2371(0x24a)]&&_0x325d68['push']('aliased\x20browsePath:\x20'+_0x335c06[_0x2f2371(0x25e)]),_0x325d68[_0x2f2371(0x218)]('\x0a');}};function _0x335c86(_0x1d7324){const _0x5eae6e=_0x3e5a70;if(_0x1d7324[_0x5eae6e(0x13f)](/^nsu=/))return _0x5eae6e(0x1ee);if(_0x1d7324[_0x5eae6e(0x13f)](/^(ns=.*;)?(i|b|s|g)=/))return _0x5eae6e(0x1aa);if(_0x1d7324['match'](/^nsa=/))return'aliasedNodeId';if(_0x1d7324['match'](/^(\/|\.)[0-9]+:/))return _0x5eae6e(0x24e);if(_0x1d7324[_0x5eae6e(0x13f)](/^(\/|\.).*:/))return'browsePath';}function _0x31b0b1(_0x522685){const _0x403418=_0x3e5a70,_0x1de47c=_0x335c86(_0x522685);switch(_0x1de47c){case _0x403418(0x1aa):return'n';case _0x403418(0x147):return'na';case _0x403418(0x1ee):return _0x403418(0x176);case _0x403418(0x24e):return'b';case _0x403418(0x191):return'ab';default:return't';}}function _0x2a1e2a(_0x27e564){const _0x11fcdd=_0x3e5a70;let _0x4799f1;switch(_0x27e564){case'n':_0x4799f1=_0x11fcdd(0x1aa);break;case'na':_0x4799f1=_0x11fcdd(0x147);break;case _0x11fcdd(0x176):_0x4799f1='nsuNodeID';break;case'b':_0x4799f1=_0x11fcdd(0x24e);break;case'ab':_0x4799f1=_0x11fcdd(0x191);break;}return _0x4799f1;}function _0x17fbce(_0x1ad933){const _0x5ef83f=_0x3e5a70;switch(_0x1ad933){case _0x5ef83f(0x1aa):return'n';case _0x5ef83f(0x147):return'na';case _0x5ef83f(0x1ee):return _0x5ef83f(0x176);case _0x5ef83f(0x24e):return'b';case _0x5ef83f(0x191):return'ab';default:return't';}}const _0x1795c3=(_0x10d342,_0x483e78)=>_0x3b6609(void 0x0,[_0x10d342,_0x483e78],void 0x0,function*({endpointNode:_0x5ecb01,endpoint:_0x352060,baseUrl:_0x373f90},_0x5693c3){const _0x40c25c=_0x3e5a70,_0x4a181b=_0x373f90+_0x40c25c(0x275),_0x2a7b36=_0x4a181b+_0x40c25c(0x26c),_0x2d587a=_0x5ecb01['id'],_0x393b0b=RED['nodes']['node'](_0x2d587a);console[_0x40c25c(0x215)](_0x393b0b[_0x40c25c(0x23e)]),_0x393b0b[_0x40c25c(0x23e)];const _0x574961=_0x5ecb01[_0x40c25c(0x23e)],_0x2c1859=yield fetch(_0x2a7b36,{'method':_0x40c25c(0x239),'body':JSON[_0x40c25c(0x22a)]({'endpointNode':_0x5ecb01,'endpoint':_0x352060,'nodeId':_0x5693c3,'namespaceAliases':_0x574961}),'headers':{'Content-Type':_0x40c25c(0x1ae)}}),_0x5f41b8=yield _0x2c1859[_0x40c25c(0x180)]();return{'json':_0x5f41b8,'data':_0x2c1859};}),_0x46708c=(_0x3b19e4,_0x4fd1dd,_0x1ecb19,_0x171bbd)=>_0x3b6609(void 0x0,[_0x3b19e4,_0x4fd1dd,_0x1ecb19,_0x171bbd],void 0x0,function*({endpointNode:_0x20a97e,endpoint:_0x36d9e6,baseUrl:_0x30cd7b},_0x5e56ef,_0x4b6f71,_0x514f22){const _0x2e998a=_0x3e5a70,_0x347217=_0x4b6f71[_0x2e998a(0x183)](),{json:_0x57bc73,data:_0x5c8c32}=yield _0x1795c3({'endpointNode':_0x20a97e,'endpoint':_0x36d9e6,'baseUrl':_0x30cd7b},_0x347217),_0x52ebc0=(_0x51e8af,_0x3ff8f7)=>{const _0x281398=_0x2e998a;_0x514f22[_0x281398(0x21e)](_0x51e8af)[_0x281398(0x1ca)](_0x281398(0x155))[_0x281398(0x1ca)](_0x3ff8f7),_0x514f22[_0x281398(0x195)](),setTimeout(()=>{_0x514f22['removeClass'](_0x3ff8f7),_0x514f22['hide']();},0xbb8);};if(_0x5c8c32['status']!==0xc8)return _0x52ebc0('!!failure!!'+_0x347217,_0x2e998a(0x263)),![];else{if(_0x57bc73[_0x2e998a(0x224)][_0x2e998a(0x13f)](/Good/)){const _0x146115=_0x3b21be(_0x57bc73);_0x4b6f71[_0x2e998a(0x1ed)](_0x2e998a(0x1c1),_0x146115);const _0xc9bfe8=_0x22c51a(_0x57bc73,_0x5e56ef);return _0x4b6f71['val'](_0xc9bfe8),_0x4b6f71['trigger'](_0x2e998a(0x130)),_0x52ebc0('Good','ok'),!![];}else return _0x4b6f71['val'](''+_0x347217),_0x52ebc0(_0x57bc73[_0x2e998a(0x224)]+'\x20'+_0x5c8c32['statusText'],_0x2e998a(0x263)),![];}});function _0x597b99(_0x4fbab8,_0x527db1){return _0x3b6609(this,void 0x0,void 0x0,function*(){const _0x5274c4=_0x517d,_0x57a32f=_0x4fbab8[_0x5274c4(0x140)](_0x5274c4(0x163)),_0x18611b=yield _0x4ddeaa(_0x527db1,_0x57a32f,_0x382ac4),_0x485b9a=yield _0x4ddeaa(_0x527db1,_0x57a32f,_0xe0adea);return{'references':[..._0x18611b[_0x5274c4(0x187)],..._0x485b9a[_0x5274c4(0x187)]]};});}const _0x974e79={'referenceTypeId':_0x499a32(_0x3e5a70(0x18a)),'includeSubtypes':!![],'browseDirection':_0x14d28f[_0x3e5a70(0x213)],'nodeClassMask':_0x247a97['ReferenceType']|_0x247a97[_0x3e5a70(0x22d)]|_0x247a97[_0x3e5a70(0x1ba)]|_0x247a97['VariableType'],'resultMask':0x3f};function _0x1a4ad1(_0x43860c,_0x3d8677){return _0x3b6609(this,void 0x0,void 0x0,function*(){const _0x44c67d=_0x517d,_0xd0d45e=_0x43860c[_0x44c67d(0x140)](_0x44c67d(0x163)),_0x5a98fd=yield _0x4ddeaa(_0x3d8677,_0xd0d45e,_0x974e79);return _0x5a98fd;});}const _0x520d71=_0x1d43d5=>{const _0x5a0a14=_0x3e5a70;var _0x510845,_0x5be6b2,_0x5ca003,_0x55eca8;if(!_0x1d43d5||!_0x1d43d5[_0x5a0a14(0x1aa)]){const _0x184e6e=$(_0x5a0a14(0x185));return _0x184e6e;}const _0x50090c=_0x1d43d5['nodeId'][_0x5a0a14(0x1a2)](),_0x3d71d8=((_0x510845=_0x1d43d5['displayName'])===null||_0x510845===void 0x0?void 0x0:_0x510845[_0x5a0a14(0x21e)])||((_0x5be6b2=_0x1d43d5[_0x5a0a14(0x19a)])===null||_0x5be6b2===void 0x0?void 0x0:_0x5be6b2[_0x5a0a14(0x14f)])||_0x1d43d5['nodeId'][_0x5a0a14(0x1a2)](),{icon:_0x4d893c,color:_0x2101f0}=_0x35b221(_0x1d43d5),_0x35162a='('+_0x1d43d5[_0x5a0a14(0x1aa)][_0x5a0a14(0x1a2)]()+')\x20'+(((_0x5ca003=_0x1d43d5[_0x5a0a14(0x19a)])===null||_0x5ca003===void 0x0?void 0x0:_0x5ca003[_0x5a0a14(0x14f)])||((_0x55eca8=_0x1d43d5[_0x5a0a14(0x1b4)])===null||_0x55eca8===void 0x0?void 0x0:_0x55eca8[_0x5a0a14(0x21e)])||''),_0x423a21=$(_0x5a0a14(0x141)+_0x1d43d5[_0x5a0a14(0x1aa)][_0x5a0a14(0x1a2)]()+_0x5a0a14(0x26f)+_0x35162a+_0x5a0a14(0x266)+_0x4d893c+_0x5a0a14(0x136)+_0x2101f0+';\x22></i>\x20'+_0x3d71d8+'</span><ul></ul></li>');return _0x423a21['addClass'](_0x5a0a14(0x167)),_0x423a21['data']('value',_0x50090c),_0x423a21['data'](_0x5a0a14(0x22e),_0x1d43d5),_0x423a21;},_0x565a8f=(_0x491088,_0x5f52d0)=>{const _0x2a0563=_0x3e5a70;return _0x5f52d0[_0x2a0563(0x1fa)](_0x2a0563(0x211)+_0x491088+'\x22]');},_0x5e7167=(_0x15df75,_0x5aa77d)=>{const _0x40ac5c=_0x3e5a70;_0x15df75[_0x40ac5c(0x267)][_0x40ac5c(0x1fa)](_0x40ac5c(0x169))[_0x40ac5c(0x1c5)](_0x40ac5c(0x1cb)),_0x5aa77d['find']('.tree-text:first')[_0x40ac5c(0x1ca)]('selected');},_0x43428e=(_0x5792b3,_0x5f26f1,_0x11e8c6)=>_0x3b6609(void 0x0,void 0x0,void 0x0,function*(){const _0x297478=_0x3e5a70;let _0x345fe2=_0x11e8c6[_0x297478(0x241)](_0x297478(0x19e));_0x5f26f1[_0x297478(0x1df)]['elements']||[];const _0x4f70a3=_0x5f26f1['nodeIds']||[];if(_0x4f70a3[_0x297478(0x250)]===0x0)return;for(const _0x3b549e of _0x4f70a3){_0x345fe2['hasClass'](_0x297478(0x167))&&(yield _0x179972(_0x5792b3,_0x345fe2));const _0x1fe8fe=_0x565a8f(_0x3b549e,_0x345fe2);if(_0x1fe8fe[_0x297478(0x250)]===0x0)return;_0x345fe2=_0x1fe8fe;}_0x5e7167(_0x5792b3,_0x345fe2),_0x3cc49f(_0x5792b3[_0x297478(0x243)],_0x345fe2);});function _0x3cc49f(_0x33c621,_0x5e9188){const _0x34c60b=_0x3e5a70,_0x53260a=_0x5e9188[_0x34c60b(0x198)]()[_0x34c60b(0x20a)],_0x451e33=_0x33c621['scrollTop']();if(_0x451e33==undefined)return;const _0x455d76=_0x451e33+_0x53260a-_0x33c621['height']()/0x2+_0x5e9188['height']()/0x2;_0x33c621['animate']({'scrollTop':_0x455d76},0x1f4);}const _0x204da7=(_0x41c604,_0x735ea6)=>_0x3b6609(void 0x0,void 0x0,void 0x0,function*(){const _0x16c23e=_0x3e5a70,_0x1edcca=_0x41c604['$input'][_0x16c23e(0x183)](),_0x810bd4={'nodeId':_0x1edcca,'rootNodeId':_0x735ea6[_0x16c23e(0x1aa)],'isType':_0x41c604['options']['isTypeRef']||![]},_0x53c5ce=_0x221cea(_0x41c604),_0x4947cb=yield _0x365da4(_0x53c5ce,_0x810bd4);if(!_0x4947cb)return;yield _0x43428e(_0x41c604,_0x4947cb,_0x41c604[_0x16c23e(0x267)]);});function _0x1c3df6(_0x130900,_0x3fb55a,_0x1d90bd,_0x54d33b){return _0x3b6609(this,void 0x0,void 0x0,function*(){const _0x15c76d=_0x517d;if(_0x3fb55a[_0x15c76d(0x25f)](_0x15c76d(0x172))){console[_0x15c76d(0x215)](_0x15c76d(0x254));return;}if(_0x3fb55a['hasClass'](_0x15c76d(0x1a1))){console[_0x15c76d(0x215)](_0x15c76d(0x144));return;}_0x3fb55a['addClass'](_0x15c76d(0x1a1)),_0x3fb55a[_0x15c76d(0x16b)](_0x15c76d(0x1f6));try{_0x3fb55a[_0x15c76d(0x241)]('ul')['empty']();const {references:_0x19339a}=yield _0x1d90bd(_0x3fb55a,_0x54d33b);_0x19339a[_0x15c76d(0x1d7)]((_0x1c2f0b,_0x386f1d)=>{const _0x318cd4=_0x15c76d;var _0x4a9209,_0x1ae72a;return(((_0x4a9209=_0x1c2f0b['browseName'])===null||_0x4a9209===void 0x0?void 0x0:_0x4a9209[_0x318cd4(0x14f)])||'')['localeCompare'](((_0x1ae72a=_0x386f1d[_0x318cd4(0x19a)])===null||_0x1ae72a===void 0x0?void 0x0:_0x1ae72a[_0x318cd4(0x14f)])||'');});for(const _0x215b0c of _0x19339a){if(_0x130900[_0x15c76d(0x257)][_0x15c76d(0x1d5)]&&!_0x130900[_0x15c76d(0x257)][_0x15c76d(0x1d5)](_0x215b0c))continue;const _0x18a33e=_0x520d71(_0x215b0c);_0x3fb55a[_0x15c76d(0x241)]('ul')[_0x15c76d(0x16b)](_0x18a33e);}_0x3fb55a[_0x15c76d(0x1ca)](_0x15c76d(0x172));}catch(_0x1d3a9d){_0x3fb55a[_0x15c76d(0x241)]('ul')[_0x15c76d(0x16b)]('<li>error\x20'+_0x1d3a9d[_0x15c76d(0x201)]+_0x15c76d(0x25d)),console[_0x15c76d(0x215)](_0x15c76d(0x182),_0x1d3a9d);}_0x3fb55a[_0x15c76d(0x1fa)](_0x15c76d(0x1f8))[_0x15c76d(0x1b8)](),_0x3fb55a['removeClass'](_0x15c76d(0x1a1));});}function _0x221cea(_0x3b7a6c){const _0x31a0d2=_0x3e5a70,_0x1ff292={'baseUrl':_0x3b7a6c[_0x31a0d2(0x257)][_0x31a0d2(0x13c)],'endpointNode':typeof _0x3b7a6c[_0x31a0d2(0x257)][_0x31a0d2(0x17d)]===_0x31a0d2(0x1cd)?_0x3b7a6c['options'][_0x31a0d2(0x17d)]():_0x3b7a6c[_0x31a0d2(0x257)][_0x31a0d2(0x17d)],'endpoint':typeof _0x3b7a6c[_0x31a0d2(0x257)][_0x31a0d2(0x1f3)]===_0x31a0d2(0x1cd)?_0x3b7a6c[_0x31a0d2(0x257)][_0x31a0d2(0x1f3)]():_0x3b7a6c[_0x31a0d2(0x257)]['endpoint']};return _0x1ff292;}function _0x179972(_0x28cafe,_0x2695a3){return _0x3b6609(this,void 0x0,void 0x0,function*(){const _0x352a36=_0x517d;if(_0x2695a3[_0x352a36(0x25f)](_0x352a36(0x172))){_0x2695a3[_0x352a36(0x1c5)](_0x352a36(0x167))[_0x352a36(0x1ca)]('expanded'),_0x2695a3[_0x352a36(0x241)]('ul')[_0x352a36(0x156)]();return;}const _0x33881d=_0x221cea(_0x28cafe),_0xfbfb1e=!_0x28cafe['options'][_0x352a36(0x177)]?_0x597b99:_0x1a4ad1;try{yield _0x1c3df6(_0x28cafe,_0x2695a3,_0xfbfb1e,_0x33881d),_0x2695a3['removeClass'](_0x352a36(0x167))[_0x352a36(0x1ca)](_0x352a36(0x1e7));}catch(_0xda2a8d){_0x2695a3[_0x352a36(0x1c5)]('expandable')[_0x352a36(0x1ca)](_0x352a36(0x1e7)),console['log']('error',_0xda2a8d);}});}const _0x337726={'browseName':{'namespaceIndex':0x0,'name':_0x3e5a70(0x230)},'nodeClass':_0x3e5a70(0x193),'nodeId':_0x3e5a70(0x173),'displayName':{'text':_0x3e5a70(0x230)},'typeDefinition':_0x473a71},_0x14c8c9=()=>{const _0x5950ac=_0x3e5a70;$[_0x5950ac(0x12e)](_0x5950ac(0x19c),{'options':{'endpointNode':()=>({'endpoint':_0x5950ac(0x12c)}),'endpoint':()=>undefined,'parentNode':()=>_0x337726,'filter':()=>!![],'baseUrl':'','isTypeRef':![]},'resolveParentNode'(){return _0x3b6609(this,void 0x0,void 0x0,function*(){const _0x237744=_0x517d,_0x1386b2=this;if(_0x1386b2['__parentNode']==undefined){const _0x29b446=typeof _0x1386b2[_0x237744(0x257)][_0x237744(0x16a)]===_0x237744(0x1cd)?_0x1386b2['options'][_0x237744(0x16a)][_0x237744(0x269)](_0x1386b2):_0x1386b2['options'][_0x237744(0x16a)];if(_0x29b446 instanceof Promise){const _0x16b666=yield _0x29b446;_0x1386b2[_0x237744(0x20e)]=_0x16b666;}else _0x1386b2['__parentNode']=_0x29b446;}return _0x1386b2['__parentNode']||_0x337726;});},'reset'(){return _0x3b6609(this,void 0x0,void 0x0,function*(){const _0xcda6e=_0x517d,_0x3f2a43=this,_0x1e28b5=_0x3f2a43;_0x1e28b5[_0xcda6e(0x20e)]=undefined,_0x3f2a43[_0xcda6e(0x267)][_0xcda6e(0x12a)]();const _0x2c752e=yield this[_0xcda6e(0x160)](),_0x3ee649=_0x520d71(_0x2c752e);_0x3f2a43['$tree'][_0xcda6e(0x16b)](_0x3ee649),_0x3f2a43['currentParent']=_0x2c752e;});},'verify'(_0x119e12){const _0xde3f9d=_0x5950ac,_0x30ea9a=this,_0x255c66=_0x221cea(_0x30ea9a);_0x46708c(_0x255c66,_0x119e12,_0x30ea9a['$input'],_0x30ea9a[_0xde3f9d(0x16d)])[_0xde3f9d(0x1a6)](_0x3d6963=>{const _0x365041=_0xde3f9d;!_0x3d6963?_0x30ea9a['$combo'][_0x365041(0x1ca)](_0x365041(0x145)):_0x30ea9a[_0x365041(0x197)][_0x365041(0x1c5)](_0x365041(0x145));});},'_hideMenu'(_0x174e1c){const _0x2cc291=_0x5950ac,_0x1eb9cb=this;$(document)[_0x2cc291(0x20c)](_0x2cc291(0x206)),_0x174e1c['hide'](),_0x174e1c['css']({'height':'auto'});if(_0x174e1c[_0x2cc291(0x219)][_0x2cc291(0x22c)]){var _0x10dc6f=[];_0x174e1c[_0x2cc291(0x1fa)](_0x2cc291(0x138))[_0x2cc291(0x202)](function(){const _0x4a8ab5=_0x2cc291;$(this)[_0x4a8ab5(0x232)](_0x4a8ab5(0x204))&&_0x10dc6f[_0x4a8ab5(0x248)]($(this)[_0x4a8ab5(0x140)]('value'));}),_0x174e1c[_0x2cc291(0x25b)](_0x10dc6f);}_0x1eb9cb[_0x2cc291(0x192)]['is'](':visible')?_0x1eb9cb[_0x2cc291(0x15d)][_0x2cc291(0x1eb)](_0x2cc291(0x20f)):_0x1eb9cb[_0x2cc291(0x258)][_0x2cc291(0x1eb)](_0x2cc291(0x20f));},'_createMenu'(_0x3929c4,_0x1807b1,_0xfb919a){const _0x3b278f=_0x5950ac;var _0x4e92e0=this;const _0x217139=$('<div>')['addClass'](_0x3b278f(0x15f));return _0x217139[_0x3b278f(0x219)]=_0x1807b1,_0x217139[_0x3b278f(0x25b)]=_0xfb919a,_0x3929c4[_0x3b278f(0x1c4)](_0x464d43=>{const _0x7611bd=_0x3b278f;typeof _0x464d43==='string'&&(_0x464d43={'value':_0x464d43,'label':_0x464d43});var _0x563556=$('<a\x20href=\x22#\x22></a>')[_0x7611bd(0x1ed)]('value',_0x464d43[_0x7611bd(0x163)])['appendTo'](_0x217139);_0x464d43[_0x7611bd(0x14e)]&&_0x563556['text'](_0x464d43[_0x7611bd(0x14e)]);_0x464d43[_0x7611bd(0x1c1)]&&_0x563556[_0x7611bd(0x232)]('title',_0x464d43['title']);if(_0x464d43[_0x7611bd(0x18b)]){if(_0x464d43[_0x7611bd(0x18b)][_0x7611bd(0x174)]('<')===0x0)$(_0x464d43['icon'])[_0x7611bd(0x227)](_0x563556);else _0x464d43[_0x7611bd(0x18b)][_0x7611bd(0x174)]('/')!==-0x1?$(_0x7611bd(0x188),{'class':_0x7611bd(0x1dd),'style':'mask-image:\x20url('+_0x464d43[_0x7611bd(0x18b)]+_0x7611bd(0x194)+_0x464d43[_0x7611bd(0x18b)]+');'})[_0x7611bd(0x227)](_0x563556):$(_0x7611bd(0x188),{'class':_0x7611bd(0x1d1)+_0x464d43[_0x7611bd(0x18b)]})[_0x7611bd(0x227)](_0x563556);}else _0x563556[_0x7611bd(0x19d)]({'paddingLeft':_0x7611bd(0x16c)});!_0x464d43['icon']&&!_0x464d43[_0x7611bd(0x14e)]&&_0x563556[_0x7611bd(0x21e)](_0x464d43[_0x7611bd(0x163)]);var _0x3ff52b;_0x1807b1[_0x7611bd(0x22c)]&&(_0x3ff52b=$(_0x7611bd(0x1bb))[_0x7611bd(0x19d)]('pointer-events',_0x7611bd(0x153))[_0x7611bd(0x140)]('value',_0x464d43[_0x7611bd(0x163)])[_0x7611bd(0x227)](_0x563556)['on'](_0x7611bd(0x1c8),function(_0x5b0f1f){const _0x7dee8f=_0x7611bd;_0x5b0f1f[_0x7dee8f(0x1b6)]();})),_0x563556['on'](_0x7611bd(0x20b),function(_0x2e6e5c){const _0x40c26d=_0x7611bd;_0x2e6e5c[_0x40c26d(0x1b6)](),_0x2e6e5c[_0x40c26d(0x1ce)](),!_0x1807b1['multiple']?(_0xfb919a(_0x464d43[_0x40c26d(0x163)]),_0x4e92e0[_0x40c26d(0x1a7)](_0x217139)):_0x3ff52b[_0x40c26d(0x232)](_0x40c26d(0x204),!_0x3ff52b[_0x40c26d(0x232)]('checked'));});}),_0x217139[_0x3b278f(0x19d)]({'display':'none'}),_0x217139['on']('keydown',function(_0x3fd351){const _0x209f14=_0x3b278f;if(_0x3fd351['keyCode']===0x28)_0x3fd351[_0x209f14(0x1b6)](),$(this)['children'](_0x209f14(0x1e4))['next']()['trigger'](_0x209f14(0x20f));else{if(_0x3fd351['keyCode']===0x26)_0x3fd351[_0x209f14(0x1b6)](),$(this)['children'](':focus')['prev']()[_0x209f14(0x1eb)](_0x209f14(0x20f));else _0x3fd351[_0x209f14(0x237)]===0x1b&&(_0x3fd351[_0x209f14(0x1b6)](),_0x4e92e0[_0x209f14(0x1a7)](_0x217139));}_0x3fd351[_0x209f14(0x1ce)]();}),_0x217139;},'disarmClick':![],'_showMenu'(_0x239be4,_0x1ddc03){const _0x5e5aeb=_0x5950ac;if(this[_0x5e5aeb(0x13b)]){this[_0x5e5aeb(0x13b)]=![];return;}var _0x286974=this,_0x559ef5=_0x1ddc03['offset'](),_0x6138d6=_0x1ddc03['height'](),_0x470748=_0x239be4[_0x5e5aeb(0x1a4)](),_0x7b8736=_0x6138d6+_0x559ef5['top'];_0x7b8736+_0x470748-$(document)[_0x5e5aeb(0x203)]()>$(window)[_0x5e5aeb(0x1a4)]()&&(_0x7b8736-=_0x7b8736+_0x470748-$(window)[_0x5e5aeb(0x1a4)]()+0x5),_0x7b8736<0x0&&(_0x239be4['height'](_0x470748+_0x7b8736),_0x7b8736=0x0),_0x239be4[_0x5e5aeb(0x19d)]({'top':_0x7b8736+'px','left':_0x559ef5[_0x5e5aeb(0x164)]+'px'}),_0x239be4[_0x5e5aeb(0x253)](0x64),this[_0x5e5aeb(0x1f5)](function(){const _0x197a41=_0x5e5aeb;_0x286974[_0x197a41(0x256)][_0x197a41(0x1ca)](_0x197a41(0x18d)),$(document)['on'](_0x197a41(0x206),function(_0x2c2413){const _0x508574=_0x197a41;!$(_0x2c2413[_0x508574(0x19f)])['closest'](_0x239be4)['length']&&_0x286974[_0x508574(0x1a7)](_0x239be4),$(_0x2c2413[_0x508574(0x19f)])[_0x508574(0x12b)](_0x1ddc03)[_0x508574(0x250)]&&(_0x286974[_0x508574(0x13b)]=!![],_0x2c2413[_0x508574(0x1b6)]());});});},'_showTypeMenu'(){const _0xec7a48=_0x5950ac,_0x77e21e=this;this[_0xec7a48(0x273)](_0x77e21e[_0xec7a48(0x240)],_0x77e21e[_0xec7a48(0x197)]),_0x77e21e[_0xec7a48(0x243)][_0xec7a48(0x1c0)]();const _0x888be2=_0x77e21e[_0xec7a48(0x12f)];var _0x40762b=_0x77e21e['$menu'][_0xec7a48(0x1fa)]('[value=\x27'+_0x888be2+'\x27');setTimeout(function(){_0x40762b['trigger']('focus');},0x78);},'_initMenu'(){const _0x4b65d8=_0x5950ac,_0x4c49ea=this;_0x4c49ea[_0x4b65d8(0x258)]['attr'](_0x4b65d8(0x1f4),-0x1),_0x4c49ea[_0x4b65d8(0x258)]['on'](_0x4b65d8(0x15c),function(_0x4e2567){const _0x34edf7=_0x4b65d8;_0x4e2567[_0x34edf7(0x1b6)]();});_0x4c49ea[_0x4b65d8(0x240)]&&_0x4c49ea['$menu'][_0x4b65d8(0x1b8)]();const _0x3e10fb=[{'label':'text','value':'t','title':_0x4b65d8(0x15b),'icon':_0x4b65d8(0x1e1)},{'label':_0x4b65d8(0x21a),'value':_0x4b65d8(0x261),'title':_0x4b65d8(0x179),'icon':_0x4b65d8(0x1e3)},{'label':'NodeId','value':'n','icon':_0x4b65d8(0x1d3)},{'label':_0x4b65d8(0x1d0),'value':'na','icon':_0x4b65d8(0x264)},{'label':_0x4b65d8(0x1c7),'value':_0x4b65d8(0x176),'icon':_0x4b65d8(0x1fd)},{'label':'BrowsePath','value':'b','icon':'<i\x20class=\x22fa\x20fa-tag\x22/><i\x20class=\x22fa\x20fa-fighter-jet\x22/>&nbsp;'},{'label':'Aliased\x20Browse\x20Path','value':'ab','icon':_0x4b65d8(0x231)}],_0x197b7c=_0x31b0b1(_0x4c49ea[_0x4b65d8(0x15d)][_0x4b65d8(0x183)]()),_0x39ab4f=_0x3e10fb[_0x4b65d8(0x1fa)](_0x1cd22a=>_0x1cd22a['value']===_0x197b7c);_0x4c49ea['$selectLabel']['empty']()[_0x4b65d8(0x16b)](_0x4b65d8(0x270)+((_0x39ab4f===null||_0x39ab4f===void 0x0?void 0x0:_0x39ab4f[_0x4b65d8(0x1c1)])||'')+_0x4b65d8(0x200)+((_0x39ab4f===null||_0x39ab4f===void 0x0?void 0x0:_0x39ab4f[_0x4b65d8(0x18b)])||'')+_0x4b65d8(0x13e)),_0x4c49ea['selectedMenuItem']=_0x197b7c;const _0x29ad2f=this;_0x4c49ea[_0x4b65d8(0x240)]=this[_0x4b65d8(0x236)](_0x3e10fb,{},_0x1442ff=>{const _0xfe3d3a=_0x4b65d8,_0x1a40b0=_0x2a1e2a(_0x1442ff);_0x1a40b0&&_0x29ad2f['verify'](_0x1a40b0);const _0x2e97dc=_0x3e10fb[_0xfe3d3a(0x1fa)](_0x26952a=>_0x26952a[_0xfe3d3a(0x163)]===_0x1442ff);_0x4c49ea[_0xfe3d3a(0x12f)]=_0x1442ff,_0x4c49ea[_0xfe3d3a(0x1a0)]['empty']()[_0xfe3d3a(0x16b)](_0xfe3d3a(0x270)+((_0x2e97dc===null||_0x2e97dc===void 0x0?void 0x0:_0x2e97dc['title'])||'')+'>&nbsp;\x20'+((_0x2e97dc===null||_0x2e97dc===void 0x0?void 0x0:_0x2e97dc[_0xfe3d3a(0x18b)])||'')+_0xfe3d3a(0x13e));}),_0x4c49ea[_0x4b65d8(0x240)][_0x4b65d8(0x134)](document[_0x4b65d8(0x14d)]),_0x4c49ea[_0x4b65d8(0x240)]['hide'](),_0x4c49ea['$selectTrigger'][_0x4b65d8(0x195)]();},'mode'(){const _0x49f714=_0x5950ac,_0x536cca=this;return _0x2a1e2a(_0x536cca[_0x49f714(0x12f)]);},'setMode'(_0x58bc32){const _0xe569c0=_0x5950ac,_0x471a27=this,_0x4e98dd=_0x17fbce(_0x58bc32);_0x471a27[_0xe569c0(0x12f)]=_0x4e98dd;},'_create'(){const _0x3ba29b=_0x5950ac,_0x7ee5fb=this;_0x7ee5fb['$input']=this[_0x3ba29b(0x22b)],_0x7ee5fb[_0x3ba29b(0x15d)][_0x3ba29b(0x19d)]('border',_0x3ba29b(0x153)),_0x7ee5fb['$elementDiv']=_0x7ee5fb[_0x3ba29b(0x15d)][_0x3ba29b(0x24f)](_0x3ba29b(0x149))[_0x3ba29b(0x1e0)]()[_0x3ba29b(0x1ca)](_0x3ba29b(0x151)),_0x7ee5fb[_0x3ba29b(0x197)]=$(_0x3ba29b(0x1d6)),_0x7ee5fb[_0x3ba29b(0x197)]['addClass'](_0x3ba29b(0x17c)),_0x7ee5fb[_0x3ba29b(0x15d)][_0x3ba29b(0x1f7)](_0x7ee5fb[_0x3ba29b(0x197)]),_0x7ee5fb['$inputGroup']=$('<div/>')[_0x3ba29b(0x1ca)]('sterfive-input-group'),_0x7ee5fb[_0x3ba29b(0x197)][_0x3ba29b(0x16b)](_0x7ee5fb[_0x3ba29b(0x1fb)]),_0x7ee5fb[_0x3ba29b(0x1fb)][_0x3ba29b(0x16b)](_0x7ee5fb['$input']),_0x7ee5fb['$toggleTreeBtn']=$(_0x3ba29b(0x20d)),_0x7ee5fb[_0x3ba29b(0x15d)]['after'](_0x7ee5fb[_0x3ba29b(0x259)]),_0x7ee5fb[_0x3ba29b(0x259)]['on'](_0x3ba29b(0x20b),function(){return _0x3b6609(this,void 0x0,void 0x0,function*(){const _0x30ecda=_0x517d;var _0x14b2a1;let _0x3d4e18=![],_0x16d1db;!_0x7ee5fb[_0x30ecda(0x243)]['is'](_0x30ecda(0x158))&&(_0x7ee5fb[_0x30ecda(0x16d)]['hide'](),_0x16d1db=yield _0x7ee5fb[_0x30ecda(0x160)](),(_0x16d1db!==_0x7ee5fb[_0x30ecda(0x1c6)]||((_0x14b2a1=_0x7ee5fb['currentParent'])===null||_0x14b2a1===void 0x0?void 0x0:_0x14b2a1[_0x30ecda(0x1aa)])!==_0x16d1db[_0x30ecda(0x1aa)])&&(yield _0x7ee5fb['reset']()),_0x3d4e18=!![]),_0x7ee5fb[_0x30ecda(0x243)][_0x30ecda(0x156)](),_0x3d4e18&&(yield _0x204da7(_0x7ee5fb,_0x16d1db));});}),_0x7ee5fb[_0x3ba29b(0x131)]=$(_0x3ba29b(0x1ab)),_0x7ee5fb['$input'][_0x3ba29b(0x157)](_0x7ee5fb[_0x3ba29b(0x131)]),_0x7ee5fb[_0x3ba29b(0x131)]['on'](_0x3ba29b(0x20b),()=>{const _0x5433d0=_0x3ba29b,_0x302d28=_0x7ee5fb[_0x5433d0(0x152)]();if(!_0x302d28)return;this[_0x5433d0(0x1ef)](_0x302d28);});const _0x1503e6=_0x3806c9=>_0x3b6609(this,void 0x0,void 0x0,function*(){const _0x27ac43=_0x3ba29b,_0x43f229=this;let _0x215cc2=_0x43f229['mode']();if(!_0x215cc2)return;const _0x5ccc97=_0x221cea(_0x43f229),{data:_0x393e87,json:_0x3cd79c}=yield _0x1795c3(_0x5ccc97,_0x3806c9);if(_0x393e87['status']!==0xc8)return;if(_0x3cd79c[_0x27ac43(0x224)]['match'](/Good/)){const _0x4e0e70=_0x22c51a(_0x3cd79c,_0x215cc2);_0x43f229[_0x27ac43(0x15d)][_0x27ac43(0x183)](_0x4e0e70),_0x43f229['$input'][_0x27ac43(0x1eb)](_0x27ac43(0x130));}});{_0x7ee5fb[_0x3ba29b(0x256)]=$(_0x3ba29b(0x149)),_0x7ee5fb[_0x3ba29b(0x15d)]['before'](_0x7ee5fb[_0x3ba29b(0x256)]),_0x7ee5fb[_0x3ba29b(0x258)]=$(_0x3ba29b(0x1a9))[_0x3ba29b(0x227)](_0x7ee5fb[_0x3ba29b(0x256)]),$(_0x3ba29b(0x196))['toggle'](!![])['appendTo'](_0x7ee5fb[_0x3ba29b(0x258)]),_0x7ee5fb[_0x3ba29b(0x258)]['on'](_0x3ba29b(0x20b),function(_0x2b5d6a){const _0x5a02a9=_0x3ba29b;_0x2b5d6a[_0x5a02a9(0x1b6)](),_0x2b5d6a[_0x5a02a9(0x1ce)](),_0x7ee5fb['_showTypeMenu']();}),_0x7ee5fb[_0x3ba29b(0x258)]['on'](_0x3ba29b(0x26e),function(_0xd41d4b){const _0x192533=_0x3ba29b;_0xd41d4b['keyCode']===0x28&&_0x7ee5fb[_0x192533(0x1b0)](),_0xd41d4b[_0x192533(0x1ce)]();})['on'](_0x3ba29b(0x20f),function(){const _0x5ec9a4=_0x3ba29b;_0x7ee5fb['$uiSelect'][_0x5ec9a4(0x1ca)]('red-ui-typedInput-focus');})['on'](_0x3ba29b(0x220),function(){const _0x28c9ad=_0x3ba29b;_0x7ee5fb[_0x28c9ad(0x256)]['removeClass']('red-ui-typedInput-focus');}),_0x7ee5fb[_0x3ba29b(0x1a0)]=$(_0x3ba29b(0x1d8))['appendTo'](_0x7ee5fb[_0x3ba29b(0x258)]);}this[_0x3ba29b(0x15e)]();!_0x7ee5fb[_0x3ba29b(0x15d)][_0x3ba29b(0x1ed)](_0x3ba29b(0x168))&&_0x7ee5fb['$input'][_0x3ba29b(0x1ed)](_0x3ba29b(0x168),'enter\x20a\x20nodeId\x20or\x20a\x20browsePath\x20');_0x7ee5fb[_0x3ba29b(0x16d)]=$(_0x3ba29b(0x1ad)),_0x7ee5fb[_0x3ba29b(0x16d)][_0x3ba29b(0x1c0)](),_0x7ee5fb[_0x3ba29b(0x197)][_0x3ba29b(0x16b)](_0x7ee5fb[_0x3ba29b(0x16d)]),_0x7ee5fb[_0x3ba29b(0x243)]=$(_0x3ba29b(0x1d6))[_0x3ba29b(0x1ca)](_0x3ba29b(0x159))['hide']()[_0x3ba29b(0x134)](_0x7ee5fb[_0x3ba29b(0x197)]),_0x7ee5fb[_0x3ba29b(0x267)]=$(_0x3ba29b(0x146))[_0x3ba29b(0x134)](_0x7ee5fb[_0x3ba29b(0x243)]),this[_0x3ba29b(0x252)]();const _0x4bab78=(_0x263daa,_0x3a4b40)=>{const _0x2d8bfc=_0x3ba29b,_0xdcf4b1=0x14,_0x818dea=0x14,_0x402cac=_0x263daa[_0x2d8bfc(0x26b)](),_0x31d404=_0x3a4b40;if(_0x31d404[_0x2d8bfc(0x199)]>=_0x402cac[_0x2d8bfc(0x164)]&&_0x31d404[_0x2d8bfc(0x199)]<=_0x402cac['left']+_0xdcf4b1&&_0x31d404[_0x2d8bfc(0x1c2)]>=_0x402cac[_0x2d8bfc(0x20a)]&&_0x31d404[_0x2d8bfc(0x1c2)]<=_0x402cac[_0x2d8bfc(0x20a)]+_0x818dea)return!![];return![];},_0xb7f877=_0x2ad048=>_0x3b6609(this,void 0x0,void 0x0,function*(){const _0x5a0453=_0x3ba29b;if(_0x2ad048[_0x5a0453(0x25f)](_0x5a0453(0x167)))_0x179972(_0x7ee5fb,_0x2ad048);else{if(_0x2ad048[_0x5a0453(0x25f)](_0x5a0453(0x1e7)))_0x2ad048[_0x5a0453(0x241)]('ul')['toggle'](),_0x2ad048['toggleClass'](_0x5a0453(0x249));else{if(_0x2ad048[_0x5a0453(0x241)]('ul')[_0x5a0453(0x241)]()[_0x5a0453(0x250)]>0x0)_0x2ad048[_0x5a0453(0x241)]('ul')[_0x5a0453(0x156)](),_0x2ad048['toggleClass'](_0x5a0453(0x249));else;}}});_0x7ee5fb['$tree']['on'](_0x3ba29b(0x150),'li',function(_0x229015){const _0x112131=_0x3ba29b;var _0x1d5c19,_0x10b687;_0x229015[_0x112131(0x1ce)]();let _0x3e406e=$(this);if(_0x4bab78(_0x3e406e,_0x229015))_0xb7f877(_0x3e406e);else{const _0x4ef5c3=_0x3e406e[_0x112131(0x140)](_0x112131(0x163)),_0x3a7a10=_0x3e406e[_0x112131(0x140)](_0x112131(0x22e));if(_0x7ee5fb[_0x112131(0x257)][_0x112131(0x1b7)]&&!_0x7ee5fb[_0x112131(0x257)]['isSelectable'](_0x3a7a10))return;_0x7ee5fb[_0x112131(0x15d)]['data'](_0x112131(0x22e),_0x3a7a10),((_0x1d5c19=_0x3a7a10[_0x112131(0x1b4)])===null||_0x1d5c19===void 0x0?void 0x0:_0x1d5c19['text'])||((_0x10b687=_0x3a7a10[_0x112131(0x19a)])===null||_0x10b687===void 0x0?void 0x0:_0x10b687[_0x112131(0x14f)])||_0x3a7a10[_0x112131(0x1aa)][_0x112131(0x1a2)]();let _0x30e664=_0x7ee5fb['mode']();!_0x30e664&&(_0x30e664=_0x112131(0x1aa),_0x7ee5fb[_0x112131(0x1fe)](_0x30e664)),_0x1503e6(_0x4ef5c3)['then'](()=>{const _0x9df9e3=_0x112131;_0x7ee5fb[_0x9df9e3(0x243)][_0x9df9e3(0x1c0)]();})[_0x112131(0x18f)](_0x3bdb20=>{const _0x5bb160=_0x112131;_0x7ee5fb[_0x5bb160(0x243)][_0x5bb160(0x1c0)]();});}}),_0x7ee5fb[_0x3ba29b(0x267)]['on']('click','li',function(_0x4311e9){_0x4311e9['stopPropagation']();let _0x5658df=$(this);_0x4bab78(_0x5658df,_0x4311e9)&&_0xb7f877(_0x5658df),_0x5e7167(_0x7ee5fb,_0x5658df);}),$(document)['on'](_0x3ba29b(0x20b),function(_0x47abe8){const _0x1353e6=_0x3ba29b;!$(_0x47abe8[_0x1353e6(0x19f)])[_0x1353e6(0x12b)](_0x7ee5fb['$combo'])[_0x1353e6(0x250)]&&_0x7ee5fb[_0x1353e6(0x243)]['hide']();});}});},_0x2a0025=_0x1efa6d=>{const _0x4b1412=_0x3e5a70;var _0x16d50d,_0x40e48a,_0xb0073e;if(!_0x1efa6d){const _0xecbec9=$(_0x4b1412(0x185));return _0xecbec9;}const _0x12767a=_0x1efa6d['nodeId'][_0x4b1412(0x1a2)]();let _0x1383d2=((_0x16d50d=_0x1efa6d['displayName'])===null||_0x16d50d===void 0x0?void 0x0:_0x16d50d['text'])||((_0x40e48a=_0x1efa6d[_0x4b1412(0x19a)])===null||_0x40e48a===void 0x0?void 0x0:_0x40e48a[_0x4b1412(0x14f)])||_0x1efa6d[_0x4b1412(0x1aa)][_0x4b1412(0x1a2)](),_0x250c29=(_0xb0073e=_0x1efa6d[_0x4b1412(0x19a)])===null||_0xb0073e===void 0x0?void 0x0:_0xb0073e[_0x4b1412(0x23c)];_0x1383d2+=_0x250c29!==undefined&&_0x1efa6d[_0x4b1412(0x166)][_0x4b1412(0x13f)](/Type/)?_0x4b1412(0x24b)+_0x250c29+')':'';const {icon:_0x1ac814,color:_0xb9928c}=_0x35b221(_0x1efa6d),_0xf08d02=$('<li>');if(_0x1efa6d['nodeClass']==='Variable'){const _0x406ccb=$(_0x4b1412(0x217));_0xf08d02[_0x4b1412(0x16b)](_0x406ccb),_0x406ccb['on'](_0x4b1412(0x20b),function(){const _0x23d3c1=_0x4b1412;_0x406ccb[_0x23d3c1(0x25f)](_0x23d3c1(0x1de))?_0x406ccb[_0x23d3c1(0x1c5)](_0x23d3c1(0x1de))[_0x23d3c1(0x1ca)](_0x23d3c1(0x204)):_0x406ccb[_0x23d3c1(0x1c5)]('checked')[_0x23d3c1(0x1ca)](_0x23d3c1(0x1de));});}return _0xf08d02[_0x4b1412(0x16b)]($(_0x4b1412(0x15a)+_0x1ac814+_0x4b1412(0x136)+_0xb9928c+_0x4b1412(0x178)+_0x1383d2+_0x4b1412(0x1d2))),_0xf08d02[_0x4b1412(0x1ca)]('expandable'),_0xf08d02[_0x4b1412(0x140)](_0x4b1412(0x163),_0x12767a),_0xf08d02[_0x4b1412(0x140)](_0x4b1412(0x22e),_0x1efa6d),_0xf08d02;},_0x24699b=()=>{const _0x151d1b=_0x3e5a70;$[_0x151d1b(0x12e)](_0x151d1b(0x24c),{'options':{'endpointNode':()=>({'endpoint':_0x151d1b(0x12c)}),'endpoint':()=>undefined,'baseUrl':''},'_populate'(){return _0x3b6609(this,void 0x0,void 0x0,function*(){const _0x5d9989=_0x517d;var _0x22c146;const _0x1f1951=this,_0x231147=new Set(((_0x22c146=_0x1f1951[_0x5d9989(0x15d)][_0x5d9989(0x183)]())===null||_0x22c146===void 0x0?void 0x0:_0x22c146[_0x5d9989(0x1a2)]()[_0x5d9989(0x1e2)](';'))||[]),_0x28bfaa=_0x221cea(_0x1f1951),_0x4e48de=yield _0x1e54cb(_0x28bfaa);this[_0x5d9989(0x207)](_0x4e48de,_0x231147);});},'_installTree'(_0xa97eea,_0x3fc47d){const _0x794c67=_0x151d1b,_0x47848d=this;_0x47848d[_0x794c67(0x267)][_0x794c67(0x12a)]();if(!_0xa97eea[_0x794c67(0x1b2)])return;const _0x110950=_0xa97eea[_0x794c67(0x1b2)],_0x5b124e=_0x2a0025(_0x110950);_0x47848d[_0x794c67(0x267)][_0x794c67(0x16b)](_0x5b124e);const _0x239823='';this[_0x794c67(0x226)](_0x5b124e[_0x794c67(0x241)]('ul'),_0x110950,_0x239823,_0x3fc47d),_0x5b124e[_0x794c67(0x1c5)](_0x794c67(0x167))[_0x794c67(0x1ca)]('expanded'),this[_0x794c67(0x18c)](_0x3fc47d);},'_installChildren'(_0x28d6d1,_0x50aed2,_0x3e0789,_0x2e1231){const _0x5edcf3=_0x151d1b,_0x5bccff=({name:_0x36503b,namespaceIndex:_0x1267df})=>{if(_0x1267df===0x0)return _0x36503b;return _0x1267df+':'+_0x36503b;},_0x587967=_0x50aed2[_0x5edcf3(0x241)]||[],_0x4c1db6=_0x50aed2[_0x5edcf3(0x247)]||[],_0x166582=[..._0x587967,..._0x4c1db6];for(const _0xd4cb17 of _0x166582){const _0xe12347=_0x2a0025(_0xd4cb17);_0x28d6d1[_0x5edcf3(0x16b)](_0xe12347);let _0xbe4606='';_0xd4cb17['nodeClass']===_0x5edcf3(0x1a5)&&(_0x3e0789?_0xbe4606=_0x3e0789+'.'+_0x5bccff(_0xd4cb17[_0x5edcf3(0x19a)]):_0xbe4606=_0x5bccff(_0xd4cb17[_0x5edcf3(0x19a)]),_0xe12347[_0x5edcf3(0x1ed)](_0x5edcf3(0x1bc),_0xbe4606));const _0x5291b8=_0xd4cb17[_0x5edcf3(0x241)]&&_0xd4cb17['children']['length'],_0x213b08=_0xd4cb17[_0x5edcf3(0x247)]&&_0xd4cb17[_0x5edcf3(0x247)][_0x5edcf3(0x250)];!_0x5291b8&&!_0x213b08?_0xe12347[_0x5edcf3(0x1c5)](_0x5edcf3(0x167))[_0x5edcf3(0x1ca)]('no-expandable'):(this[_0x5edcf3(0x226)](_0xe12347[_0x5edcf3(0x241)]('ul'),_0xd4cb17,_0xbe4606,_0x2e1231),_0xe12347[_0x5edcf3(0x1c5)](_0x5edcf3(0x167))[_0x5edcf3(0x1ca)](_0x5edcf3(0x1e7)));}},'_updateSelectedFields'(){const _0x55c636=_0x151d1b;var _0x5b8e1c;const _0x3c961f=this,_0x4f01f5=new Set(((_0x5b8e1c=_0x3c961f[_0x55c636(0x15d)]['val']())===null||_0x5b8e1c===void 0x0?void 0x0:_0x5b8e1c[_0x55c636(0x1a2)]()[_0x55c636(0x1e2)](';'))||[]);this[_0x55c636(0x18c)](_0x4f01f5);},'_updateValues'(_0x53e782){const _0x4a919e=_0x151d1b;$(_0x4a919e(0x17e))['each'](function(){const _0x40d626=_0x4a919e,_0x4c663f=$(this),_0x449cbe=_0x4c663f[_0x40d626(0x1ed)](_0x40d626(0x1bc));_0x449cbe&&_0x53e782[_0x40d626(0x1e5)](_0x449cbe)&&_0x4c663f[_0x40d626(0x241)](_0x40d626(0x1da))[_0x40d626(0x1c5)](_0x40d626(0x1de))['addClass'](_0x40d626(0x204));});},'_setInputValue'(){const _0x5940c5=_0x151d1b,_0x528494=this,_0xc90c1d=[];$(_0x5940c5(0x17e))[_0x5940c5(0x202)](function(){const _0x37b058=_0x5940c5,_0x438338=$(this);if(_0x438338[_0x37b058(0x241)](_0x37b058(0x1e8))[_0x37b058(0x250)]>0x0){const _0x6795ff=_0x438338[_0x37b058(0x1ed)](_0x37b058(0x1bc));if(_0x6795ff)_0xc90c1d['push'](_0x6795ff);}});const _0x235bfb=[...new Set(_0xc90c1d)][_0x5940c5(0x1d7)]()[_0x5940c5(0x218)](';');_0x528494[_0x5940c5(0x15d)][_0x5940c5(0x183)](_0x235bfb),_0x528494[_0x5940c5(0x15d)][_0x5940c5(0x1eb)](_0x5940c5(0x130));},'_create'(){const _0x1e3154=_0x151d1b,_0x51d509=this;_0x51d509[_0x1e3154(0x15d)]=this[_0x1e3154(0x22b)],_0x51d509[_0x1e3154(0x197)]=$(_0x1e3154(0x1d6)),_0x51d509[_0x1e3154(0x197)][_0x1e3154(0x1ca)]('sterfive-combo-box'),this[_0x1e3154(0x22b)][0x0][_0x1e3154(0x208)][_0x1e3154(0x189)](_0x51d509[_0x1e3154(0x197)][0x0],this[_0x1e3154(0x22b)][0x0]),_0x51d509[_0x1e3154(0x1fb)]=$('<div/>')[_0x1e3154(0x1ca)](_0x1e3154(0x23a)),_0x51d509['$combo'][_0x1e3154(0x16b)](_0x51d509[_0x1e3154(0x1fb)]),_0x51d509[_0x1e3154(0x1fb)][_0x1e3154(0x16b)](_0x51d509[_0x1e3154(0x15d)]),_0x51d509['$toggleTreeBtn']=$(_0x1e3154(0x171)),_0x51d509['$inputGroup'][_0x1e3154(0x16b)](_0x51d509['$toggleTreeBtn']),_0x51d509['$toggleTreeBtn']['on'](_0x1e3154(0x20b),function(){const _0x110df9=_0x1e3154;_0x51d509[_0x110df9(0x243)][_0x110df9(0x156)](),_0x51d509[_0x110df9(0x16d)][_0x110df9(0x156)]();if(_0x51d509['$dropdown']['is'](_0x110df9(0x158))){_0x1ab488[_0x110df9(0x195)]();const _0x46b4ca=_0x51d509[_0x110df9(0x243)][_0x110df9(0x26b)]();_0x1ab488[_0x110df9(0x19d)]({'top':_0x46b4ca[_0x110df9(0x20a)]+'px','right':'calc(100%\x20-\x20'+(_0x46b4ca['left']+_0x51d509[_0x110df9(0x243)]['width']())+_0x110df9(0x16e)}),_0x51d509['_populate'](),_0x51d509[_0x110df9(0x1b5)]();}else _0x1ab488[_0x110df9(0x1c0)]();});!_0x51d509['$input'][_0x1e3154(0x1ed)]('placeholder')&&_0x51d509['$input'][_0x1e3154(0x1ed)]('placeholder',_0x1e3154(0x14b));_0x51d509['$info']=$(_0x1e3154(0x1ad)),_0x51d509[_0x1e3154(0x16d)][_0x1e3154(0x1c0)](),_0x51d509[_0x1e3154(0x243)]=$('<div/>')[_0x1e3154(0x1ca)](_0x1e3154(0x159))[_0x1e3154(0x1c0)]();const _0x2bd544=$(_0x1e3154(0x133)),_0xf47a88=$('<span\x20class=\x22cancel-button\x22>✖</span>'),_0x1ab488=$(_0x1e3154(0x139))[_0x1e3154(0x16b)](_0x2bd544,_0xf47a88);_0x1ab488['hide'](),_0x2bd544['on']('click',()=>{const _0xf83b53=_0x1e3154;_0x51d509[_0xf83b53(0x1c3)](),_0x51d509[_0xf83b53(0x243)][_0xf83b53(0x1c0)]();}),_0xf47a88['on'](_0x1e3154(0x20b),()=>{const _0x317b87=_0x1e3154;_0x51d509[_0x317b87(0x243)][_0x317b87(0x1c0)]();}),_0x51d509[_0x1e3154(0x197)][_0x1e3154(0x16b)](_0x51d509[_0x1e3154(0x16d)]),_0x51d509[_0x1e3154(0x197)]['append'](_0x51d509[_0x1e3154(0x243)]),_0x51d509[_0x1e3154(0x267)]=$(_0x1e3154(0x146)),_0x51d509['$dropdown']['empty']()[_0x1e3154(0x16b)](_0x51d509[_0x1e3154(0x267)],_0x1ab488),_0x51d509['$tree']['on']('click','li',function(_0x4a2233){const _0xf4210f=_0x1e3154;_0x4a2233['stopPropagation']();let _0x4df70b=$(this);const _0x42332f=0x14,_0x2f0848=0x14,_0x21cea0=$(this)[_0xf4210f(0x26b)](),_0x183e28=_0x4a2233;if(_0x183e28[_0xf4210f(0x199)]>=_0x21cea0[_0xf4210f(0x164)]&&_0x183e28[_0xf4210f(0x199)]<=_0x21cea0['left']+_0x42332f&&_0x183e28[_0xf4210f(0x1c2)]>=_0x21cea0[_0xf4210f(0x20a)]&&_0x183e28[_0xf4210f(0x1c2)]<=_0x21cea0[_0xf4210f(0x20a)]+_0x2f0848){console[_0xf4210f(0x215)]('clicked\x20on\x20icon'),console[_0xf4210f(0x215)]('clicked\x20on\x20',_0x4df70b['data']('value'),_0x4df70b[_0xf4210f(0x1ed)](_0xf4210f(0x162)));if(_0x4df70b['hasClass'](_0xf4210f(0x167)))_0x4df70b['removeClass'](_0xf4210f(0x167))['addClass'](_0xf4210f(0x1e7)),_0x4df70b[_0xf4210f(0x241)]('ul')[_0xf4210f(0x156)]();else{if(_0x4df70b[_0xf4210f(0x25f)](_0xf4210f(0x1e7)))_0x4df70b['children']('ul')['toggle'](),_0x4df70b[_0xf4210f(0x25a)]('expandable\x20expanded');else{if(_0x4df70b[_0xf4210f(0x241)]('ul')[_0xf4210f(0x241)]()[_0xf4210f(0x250)]>0x0)_0x4df70b['children']('ul')[_0xf4210f(0x156)](),_0x4df70b[_0xf4210f(0x25a)](_0xf4210f(0x249));else;}}}}),$(document)['on'](_0x1e3154(0x20b),function(_0x521cf2){const _0x10b55d=_0x1e3154;!$(_0x521cf2['target'])[_0x10b55d(0x12b)](_0x51d509[_0x10b55d(0x197)])['length']&&_0x51d509[_0x10b55d(0x243)][_0x10b55d(0x1c0)]();}),this[_0x1e3154(0x181)]();}});},_0x1e54cb=_0x991a8b=>_0x3b6609(void 0x0,[_0x991a8b],void 0x0,function*({endpointNode:_0x33d35c,endpoint:_0x21c0af,baseUrl:_0xd7cc91}){const _0x122b1f=_0x3e5a70,_0x22240f=_0xd7cc91+'/opcua-for-node-red',_0x5093d4=_0x22240f+_0x122b1f(0x1ac),_0x52422c=yield fetch(_0x5093d4,{'method':_0x122b1f(0x239),'body':JSON[_0x122b1f(0x22a)]({'endpointNode':_0x33d35c,'endpoint':_0x21c0af}),'headers':{'Content-Type':'application/json'}});if(_0x52422c[_0x122b1f(0x242)]!==0xc8)return console[_0x122b1f(0x215)]('fetching\x20failed\x20with\x20error',_0x52422c[_0x122b1f(0x242)],_0x52422c['statusText']),{'events':null};console['log']('fetched\x20:\x20',_0x52422c[_0x122b1f(0x242)],_0x52422c['statusText']);const _0x542c22=yield _0x52422c[_0x122b1f(0x180)](),_0x4dd07d=_0x542c22[_0x122b1f(0x1b2)];return{'events':_0x4dd07d};}),_0x4faa9f=()=>{const _0x330fa8=_0x3e5a70,_0x11ae91=$('#node-input-endpoint'),_0x14608c=_0x11ae91[_0x330fa8(0x183)](),_0x13a000=RED[_0x330fa8(0x265)]['node'](_0x14608c);if(!_0x13a000)return undefined;const {endpoint:_0x1bb07b,securityMode:_0x22b3df,securityPolicy:_0x3715fb,userIdentityType:_0x3d4771,credentials:_0x457feb,namespaceAliases:_0x45874f}=_0x13a000,_0x209277={'endpoint':_0x1bb07b,'securityMode':_0x22b3df,'securityPolicy':_0x3715fb,'userIdentityType':_0x3d4771,'credentials':_0x457feb,'namespaceAliases':_0x45874f};return _0x209277;},_0x86ddce=()=>{const _0xc2dd05=_0x3e5a70,_0x15e8cf=$(_0xc2dd05(0x14c)),_0x491ff1=_0x15e8cf[_0xc2dd05(0x183)](),_0x3b7ce5=_0x4faa9f();if(!_0x3b7ce5)return undefined;const _0x2b7d00=_0x3b7ce5['namespaceAliases'];return Object[_0xc2dd05(0x18e)]({'namespaceAliases':_0x2b7d00,'id':_0x491ff1},_0x3b7ce5);},_0x2c0de9=()=>{return{'endpointNode':_0x86ddce};},_0x2b3c2f=()=>{const _0x50116d=_0x3e5a70,_0x522255=$('.red-ui-tray-body');console[_0x50116d(0x215)](_0x50116d(0x212),_0x522255['length']);if(_0x522255[_0x50116d(0x250)]){console[_0x50116d(0x215)](_0x50116d(0x233));const _0x18d8c2=$('<iframe></iframe>',{'src':_0x50116d(0x184),'scrolling':'no','style':'background-color:transparent;overflow:hidden;border:3px','allowtransparency':'true','width':_0x50116d(0x24d),'height':_0x50116d(0x165)});_0x522255['append'](_0x18d8c2),_0x18d8c2['css']({'position':_0x50116d(0x1e9),'right':_0x50116d(0x234),'bottom':_0x50116d(0x1b9)});}};RED[_0x3e5a70(0x265)][_0x3e5a70(0x26d)](_0x3e5a70(0x228),{'category':_0x3e5a70(0x222),'color':'#C0DEED','align':_0x3e5a70(0x1f9),'icon':_0x3e5a70(0x221),'paletteLabel':_0x3e5a70(0x235),'defaults':{'inputs':{'value':0x1},'output':{'value':0x4},'name':{'value':''},'endpoint':{'value':'','required':!![],'type':_0x3e5a70(0x271)},'subscription':{'value':'','required':!![],'validate':_0x75a000=>{if(_0x75a000==='')return![];return!![];}},'startImmediately':{'value':!![],'required':!![]},'nodeId':{'value':'','required':![],'validate':()=>!![]},'samplingInterval':{'value':0x3e8,'required':!![]},'discardOldest':{'value':!![],'required':!![]},'queueSize':{'value':0xa,'required':!![]},'selectClauses':{'value':'','required':!![]},'whereClause':{'value':'','required':![]}},'outputs':0x2,'label'(){const _0xe74d04=_0x3e5a70;return this['name']||_0xe74d04(0x148);},'labelStyle'(){const _0x4d6e5e=_0x3e5a70;return this[_0x4d6e5e(0x14f)]?_0x4d6e5e(0x21f):'';},'oneditprepare'(){const _0x34f29b=_0x3e5a70;_0x14c8c9(),_0x24699b(),_0xd2b05f(RED,this),_0x2b3c2f(),$(_0x34f29b(0x225))['on'](_0x34f29b(0x130),()=>{const _0x36c0c8=_0x34f29b,_0x373f1d=$(_0x36c0c8(0x260))[_0x36c0c8(0x232)](_0x36c0c8(0x204));_0x373f1d?$('#node-input-inputs')[_0x36c0c8(0x183)](0x0):$(_0x36c0c8(0x245))['val'](0x1);});const _0xf43747=$('#node-input-nodeId');_0xf43747[_0x34f29b(0x22f)](Object[_0x34f29b(0x18e)](Object[_0x34f29b(0x18e)]({},_0x2c0de9()),{'filter'(_0x4d31c6){const _0x36ccae=_0x34f29b;return _0x4d31c6[_0x36ccae(0x166)]===_0x36ccae(0x193);},'isSelectable'(_0x5e94b8){const _0x3388d6=_0x34f29b;return _0x5e94b8[_0x3388d6(0x166)]===_0x3388d6(0x193);}})),$('#node-input-whereClause');const _0x5d7cdc=$(_0x34f29b(0x1bf));_0x5d7cdc[_0x34f29b(0x1bd)](Object['assign']({},_0x2c0de9()));},'oneditsave'(){const _0x24f089=_0x3e5a70,_0x1f054b=$(_0x24f089(0x260))['prop'](_0x24f089(0x204));_0x1f054b?($(_0x24f089(0x260))[_0x24f089(0x183)](_0x1f054b?0x0:0x1),this[_0x24f089(0x190)]=_0x1f054b?0x0:0x1):($(_0x24f089(0x260))[_0x24f089(0x183)](0x1),this[_0x24f089(0x190)]=0x1);}});}()));function _0x517d(_0x1b7f13,_0xa0f15e){const _0x584c79=_0x584c();return _0x517d=function(_0x517da4,_0x513a21){_0x517da4=_0x517da4-0x12a;let _0x3d1042=_0x584c79[_0x517da4];return _0x3d1042;},_0x517d(_0x1b7f13,_0xa0f15e);}function _0x584c(){const _0x3d1986=['body','label','name','dblclick','main-wrapper','mode','none','Inverse','sterfive-info','toggle','after',':visible','sterfive-dropdown','<i\x20class=\x22fa\x20','Value\x20is\x20not\x20verified','mousedown.red-ui-typedInput-focus-block','$input','_initMenu','sterfive-typedInput-options\x20sterfive-online-menu','resolveParentNode','nodeId_aliased','class','value','left','30px','nodeClass','expandable','placeholder','li\x20>\x20.tree-text','parentNode','append','18px','$info','px)','ReferenceType','419980gucdpJ','<button><i\x20class=\x22fa\x20fa-sitemap\x22></i></button>','fetched','ns=0;i=85','indexOf','ns=0;i=46','nsu','isTypeRef',';\x22></i>','node\x20id\x20or\x20\x20browse\x20path\x20comes\x20from\x20injected\x20msg\x20parameter','referenceTypeId','suppressed','sterfive-combo-box','endpointNode','.sterfive-tree\x20li','9sPOIvB','json','_populate','err','val','/opcua-for-node-red/support-frame.html','<li><i\x20class=\x22fa\x20fa-error\x22\x20style=\x22color:red;\x22></i>no\x20reference\x20!<ul></ul></li>','581542neHOWV','references','<i>','replaceChild','HasSubtype','icon','_updateValues','red-ui-typedInput-focus','assign','catch','inputs','aliasedBrowsePath','$elementDiv','Object',');\x20-webkit-mask-image:\x20url(','show','<i\x20class=\x22red-ui-typedInput-icon\x20fa\x20fa-caret-down\x22></i>','$combo','position','pageX','browseName','fa-list-alt','sterfive.nodeBrowser','css',':first','target','$selectLabel','loading','toString','3503164hLTand','height','Variable','then','_hideMenu','next','<button\x20type=\x22button\x22\x20tabindex=\x220\x22></button>','nodeId','<button\x20title=\x22verify\x20nodeId\x20or\x20browsePath\x22><i\x20class=\x22fa\x20fa-refresh\x22></i></button>','/extractEventTypes','<div\x20class=\x22sterfive-info-text\x22></div>','application/json','HasComponent','_showTypeMenu','24394056LXsgtv','events','Organizes','displayName','_updateSelectedFields','preventDefault','isSelectable','remove','16px','DataType','<input\x20type=\x22checkbox\x22>','data-value','eventFieldSelector','subscriptions','#node-input-selectClauses','hide','title','pageY','_setInputValue','forEach','removeClass','currentParent','NodeId\x20with\x20namespace\x20Urn','mousedown','NodeClass','addClass','selected','ns=0;i=61','function','stopPropagation','i=61','Aliased\x20NodeId','red-ui-typedInput-icon\x20','<ul></ul>','<i\x20class=\x22fa\x20fa-tag\x22/>1\x20&nbsp;\x20','CadetBlue','filter','<div/>','sort','<span\x20class=\x22red-ui-typedInput-type-label\x22></span>','5TFfigq','span.custom-checkbox','subscription','fa-cog','red-ui-typedInput-icon','unchecked','relativePath','parent','<i\x20class=\x22fa\x20fa-font\x22/i>\x20','split','<i\x20class=\x22fa\x20fa-envelope-open-o\x22/>',':focus','has','VariableType','expanded','span.custom-checkbox.checked','absolute','SteelBlue','trigger','browse\x20path:\x20','attr','nsuNodeID','verify','node','HasChild','aliased\x20NodeId:\x20','endpoint','tabindex','_delay','<div\x20class=\x22spinner\x22></div>','replaceWith','.spinner','right','find','$inputGroup','nodeId_nsu','<i\x20class=\x22fa\x20fa-id-card\x22/>&nbsp;\x20','setMode','done','>&nbsp;\x20','message','each','scrollTop','checked','600666vNtMZV','mousedown.red-ui-typedInput-close-property-select','_installTree','parentElement','typeDefinition','top','click','off','<button\x20title=\x22open\x20OPCUA\x20AddressSpace\x20Browser\x22><i\x20class=\x22fa\x20fa-sitemap\x22></i></button>','__parentNode','focus','requestedNodeId','li[key=\x22','installFeedbackWidget\x20','Forward','SuppressedError','log','fa-object-group','<span\x20class=\x22custom-checkbox\x20unchecked\x22></span>','join','opts','msg.','TypeDefinition','ns=0;i=40','fa-folder','text','node_label_italic','blur','opcualogobig.png','opcua','<option/>','statusCode','node-input-startImmediately','_installChildren','prependTo','OpcUa-Client2-MonitorEvent','nsu\x20nodeId:\x20','stringify','element','multiple','ObjectType','reference','nodeBrowser','Objects','<i\x20class=\x22fa\x20fa-bookmark\x22/><i\x20class=\x22fa\x20fa-fighter-jet\x22/>&nbsp;','prop','installing\x20iframe','20px','monitor\x20events','_createMenu','keyCode','error','POST','input-group','HasProperty','namespaceIndex','DarkOrange','namespaceAliases','fa-text-width','$menu','children','status','$dropdown','View','#node-input-inputs','ns=0;i=35','subTypes','push','expandable\x20expanded','bp_indexed','\x20(ns=','sterfive.eventFieldSelector','180px','browsePath','wrap','length','BrowseName','reset','slideDown','already\x20fetched','fa-sliders','$uiSelect','options','$selectTrigger','$toggleTreeBtn','toggleClass','callback','DodgerBlue','</li>','bp_aliased','hasClass','#node-input-startImmediately','msg','3088812CFhimc','failure','<i\x20class=\x22fa\x20fa-bookmark\x22/>&nbsp;\x20','nodes','><i\x20class=\x22fa\x20','$tree','apply','call','Method','offset','/checkNodeId','registerType','keydown','\x22}><span\x20class=\x22tree-text\x22\x20title=','<span\x20title=','OpcUa-Endpoint2','ns=0;i=34','_showMenu','1964358lGWTOP','/opcua-for-node-red','empty','closest','opc.tcp://opcuademo.sterfive.com:26543','Good','widget','selectedMenuItem','change','$verifyBtn','Both','<span\x20class=\x22validate-button\x22>✔</span>','appendTo','ns=0;i=45','\x22\x20style=\x22color:','node\x20class:\x20','input[type=\x22checkbox\x22]','<div\x20class=\x22floating-buttons\x22></div>','IsForward','disarmClick','baseUrl','grey','</span>','match','data','<li\x20key=\x22','SandyBrown','nodeId:\x20','already\x20loading','sterfive-input-error','<ul\x20class=\x22sterfive-tree\x22></ul>','aliasedNodeId','OPCUA\x20Monitor','<div>','Invalid','enter\x20a\x20nodeId\x20or\x20a\x20browsePath\x20','#node-input-endpoint'];_0x584c=function(){return _0x3d1986;};return _0x584c();}
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNvdXJjZU1hcCJdLCJuYW1lcyI6WyJfMHhkMmIwNWYiLCJfMHg0OTJkNTEiLCJfMHgxOTkwOTQiLCJfMHgyM2ZlZTgiLCIkIiwiXzB4NDVmZGEwIiwiXzB4NGQzZTg1IiwiXzB4MzJjMWM5IiwiXzB4M2VhZDgzIiwiXzB4MTIwZGU4IiwiXzB4M2I2NjA5IiwiXzB4MjAyNDVkIiwiXzB4MmRkZjlhIiwiXzB4Mjk5ZGM1IiwiXzB4NDE0MjVlIiwiXzB4MzZhNzVhIiwiXzB4MjE5MDRiIiwiXzB4MzJlYjg3IiwiUHJvbWlzZSIsIl8weDM2MDJlZCIsIl8weDU2MDdjOCIsIl8weDEzOTlkMyIsIl8weDUyMTBiMCIsIl8weDQwMTU1OCIsIl8weDNmMTAzNyIsIl8weDE4MjQ4MiIsIl8weDQyODFhOCIsIl8weDIxMDBkMyIsIl8weGNjZjQzYiIsIlN1cHByZXNzZWRFcnJvciIsIl8weDMxZjcwNCIsIl8weDRjNGZhZSIsIl8weDIyMWE2NSIsIl8weDU1OThkZiIsIkVycm9yIiwiXzB4MTgxZmI4IiwiXzB4NDczYTcxIiwiXzB4M2NkZGNjIiwiXzB4NTIxYjAwIiwiXzB4MzM1NjM3IiwiXzB4ZmZjZjVhIiwiXzB4MWE4YTk4IiwiXzB4MTRkMjhmIiwiXzB4NzE2ZjcxIiwiXzB4MjQ3YTk3IiwiXzB4MWQ3MWRjIiwiXzB4NWQ5OTIwIiwiXzB4NDM4MzZlIiwiXzB4M2Y1OTI1IiwiXzB4NTM4OTAwIiwiXzB4NDk5YTMyIiwiXzB4YmMyYWEiLCJfMHgzNWIyMjEiLCJfMHg5NzAxMmMiLCJfMHg0ZGRlYWEiLCJfMHg0ZDM3MTIiLCJfMHgxYjY1ODAiLCJfMHgxNmFlYzQiLCJlbmRwb2ludE5vZGUiLCJfMHg1ZTA1NjgiLCJlbmRwb2ludCIsIl8weDNkMjM5YiIsImJhc2VVcmwiLCJfMHg1YzY5OTAiLCJfMHgxZWI1ZDIiLCJfMHgyYWEyNTAiLCJfMHg1YzgyNmMiLCJfMHgyYjgyYjUiLCJfMHgyYmI2YmUiLCJPYmplY3QiLCJfMHhkNTYzNzciLCJmZXRjaCIsIkpTT04iLCJjb25zb2xlIiwiXzB4NTEzZGRkIiwiXzB4NDQ1MTliIiwiXzB4MzgyYWM0IiwiXzB4ZTBhZGVhIiwiXzB4MzY1ZGE0IiwiXzB4MjE2MmZhIiwiXzB4NDRkMzQ1IiwiXzB4NDFlYjBjIiwiXzB4NDY1ZWEwIiwiXzB4MjBkNDJmIiwibm9kZUlkIiwiXzB4NTQyMmRiIiwicm9vdE5vZGVJZCIsIl8weDEyMTlhYyIsImlzVHlwZSIsIl8weDU4ZmNjZSIsIl8weDEzYTZmNSIsIl8weDUyMjRmZiIsIl8weDU1YzNhYiIsIl8weDIxM2RhNSIsIl8weDIyYzUxYSIsIl8weDExNzA1ZSIsIl8weDI0NmVkMCIsIl8weDNiMjFiZSIsIl8weDMzNWMwNiIsIl8weDMyNWQ2OCIsIl8weDMzNWM4NiIsIl8weDFkNzMyNCIsIl8weDMxYjBiMSIsIl8weDUyMjY4NSIsIl8weDFkZTQ3YyIsIl8weDJhMWUyYSIsIl8weDI3ZTU2NCIsIl8weDQ3OTlmMSIsIl8weDE3ZmJjZSIsIl8weDFhZDkzMyIsIl8weDE3OTVjMyIsIl8weDEwZDM0MiIsIl8weDQ4M2U3OCIsIl8weDVlY2IwMSIsIl8weDM1MjA2MCIsIl8weDM3M2Y5MCIsIl8weDU2OTNjMyIsIl8weDRhMTgxYiIsIl8weDJhN2IzNiIsIl8weDJkNTg3YSIsIl8weDM5M2IwYiIsIlJFRCIsIl8weDU3NDk2MSIsIl8weDJjMTg1OSIsIl8weDVmNDFiOCIsIl8weDQ2NzA4YyIsIl8weDNiMTllNCIsIl8weDRmZDFkZCIsIl8weDFlY2IxOSIsIl8weDE3MWJiZCIsIl8weDIwYTk3ZSIsIl8weDM2ZDllNiIsIl8weDMwY2Q3YiIsIl8weDVlNTZlZiIsIl8weDRiNmY3MSIsIl8weDUxNGYyMiIsIl8weDM0NzIxNyIsImpzb24iLCJfMHg1N2JjNzMiLCJkYXRhIiwiXzB4NWM4YzMyIiwiXzB4NTJlYmMwIiwiXzB4NTFlOGFmIiwiXzB4M2ZmOGY3Iiwic2V0VGltZW91dCIsIl8weDE0NjExNSIsIl8weGM5YmZlOCIsIl8weDU5N2I5OSIsIl8weDRmYmFiOCIsIl8weDUyN2RiMSIsIl8weDU3YTMyZiIsIl8weDE4NjExYiIsIl8weDQ4NWI5YSIsIl8weDk3NGU3OSIsIl8weDFhNGFkMSIsIl8weDQzODYwYyIsIl8weDNkODY3NyIsIl8weGQwZDQ1ZSIsIl8weDVhOThmZCIsIl8weDUyMGQ3MSIsIl8weDFkNDNkNSIsIl8weDUxMDg0NSIsIl8weDViZTZiMiIsIl8weDVjYTAwMyIsIl8weDU1ZWNhOCIsIl8weDE4NGU2ZSIsIl8weDUwMDkwYyIsIl8weDNkNzFkOCIsImljb24iLCJfMHg0ZDg5M2MiLCJjb2xvciIsIl8weDIxMDFmMCIsIl8weDM1MTYyYSIsIl8weDQyM2EyMSIsIl8weDU2NWE4ZiIsIl8weDQ5MTA4OCIsIl8weDVmNTJkMCIsIl8weDVlNzE2NyIsIl8weDE1ZGY3NSIsIl8weDVhYTc3ZCIsIl8weDQzNDI4ZSIsIl8weDU3OTJiMyIsIl8weDVmMjZmMSIsIl8weDExZThjNiIsIl8weDM0NWZlMiIsIl8weDRmNzBhMyIsIl8weDNiNTQ5ZSIsIl8weDE3OTk3MiIsIl8weDFmZThmZSIsIl8weDNjYzQ5ZiIsIl8weDMzYzYyMSIsIl8weDVlOTE4OCIsIl8weDUzMjYwYSIsIl8weDQ1MWUzMyIsInVuZGVmaW5lZCIsIl8weDQ1NWQ3NiIsIl8weDIwNGRhNyIsIl8weDQxYzYwNCIsIl8weDczNWVhNiIsIl8weDFlZGNjYSIsIl8weDgxMGJkNCIsIl8weDUzYzVjZSIsIl8weDIyMWNlYSIsIl8weDQ5NDdjYiIsIl8weDFjM2RmNiIsIl8weDEzMDkwMCIsIl8weDNmYjU1YSIsIl8weDFkOTBiZCIsIl8weDU0ZDMzYiIsInJlZmVyZW5jZXMiLCJfMHgxOTMzOWEiLCJfMHgxYzJmMGIiLCJfMHgzODZmMWQiLCJfMHg0YTkyMDkiLCJfMHgxYWU3MmEiLCJfMHgyMTViMGMiLCJfMHgxOGEzM2UiLCJfMHgxZDNhOWQiLCJfMHgzYjdhNmMiLCJfMHgxZmYyOTIiLCJfMHgyOGNhZmUiLCJfMHgyNjk1YTMiLCJfMHgzMzg4MWQiLCJfMHhmYmZiMWUiLCJfMHhkYTJhOGQiLCJfMHgzMzc3MjYiLCJfMHgxNGM4YzkiLCJfMHgxMzg2YjIiLCJfMHgyOWI0NDYiLCJfMHgxNmI2NjYiLCJfMHgzZjJhNDMiLCJfMHgxZTI4YjUiLCJfMHgyYzc1MmUiLCJfMHgzZWU2NDkiLCJfMHgxMTllMTIiLCJfMHgzMGVhOWEiLCJfMHgyNTVjNjYiLCJfMHgzZDY5NjMiLCJfMHgxNzRlMWMiLCJfMHgxZWI5Y2IiLCJkb2N1bWVudCIsIl8weDEwZGM2ZiIsIl8weDM5MjljNCIsIl8weDE4MDdiMSIsIl8weGZiOTE5YSIsIl8weDRlOTJlMCIsIl8weDIxNzEzOSIsIl8weDQ2NGQ0MyIsIl8weDU2MzU1NiIsIl8weDNmZjUyYiIsIl8weDViMGYxZiIsIl8weDJlNmU1YyIsIl8weDNmZDM1MSIsIl8weDIzOWJlNCIsIl8weDFkZGMwMyIsIl8weDI4Njk3NCIsIl8weDU1OWVmNSIsIl8weDYxMzhkNiIsIl8weDQ3MDc0OCIsIl8weDdiODczNiIsIndpbmRvdyIsIl8weDJjMjQxMyIsIl8weDc3ZTIxZSIsIl8weDg4OGJlMiIsIl8weDQwNzYyYiIsIl8weDRjNDllYSIsIl8weDRlMjU2NyIsIl8weDNlMTBmYiIsIl8weDE5N2I3YyIsIl8weDM5YWI0ZiIsIl8weDFjZDIyYSIsIl8weDI5YWQyZiIsIl8weDE0NDJmZiIsIl8weDFhNDBiMCIsIl8weDJlOTdkYyIsIl8weDI2OTUyYSIsIl8weDUzNmNjYSIsIl8weDU4YmMzMiIsIl8weDQ3MWEyNyIsIl8weDRlOThkZCIsIl8weDdlZTVmYiIsIl8weDE0YjJhMSIsIl8weDNkNGUxOCIsIl8weDE2ZDFkYiIsIl8weDMwMmQyOCIsIl8weDE1MDNlNiIsIl8weDM4MDZjOSIsIl8weDQzZjIyOSIsIl8weDIxNWNjMiIsIl8weDVjY2M5NyIsIl8weDM5M2U4NyIsIl8weDNjZDc5YyIsIl8weDRlMGU3MCIsIl8weDJiNWQ2YSIsIl8weGQ0MWQ0YiIsIl8weDRiYWI3OCIsIl8weDI2M2RhYSIsIl8weDNhNGI0MCIsIl8weGRjZjRiMSIsIl8weDgxOGRlYSIsIl8weDQwMmNhYyIsIl8weDMxZDQwNCIsIl8weGI3Zjg3NyIsIl8weDJhZDA0OCIsIl8weDIyOTAxNSIsIl8weDFkNWMxOSIsIl8weDEwYjY4NyIsIl8weDNlNDA2ZSIsIl8weDRlZjVjMyIsIl8weDNhN2ExMCIsIl8weDMwZTY2NCIsIl8weDNiZGIyMCIsIl8weDQzMTFlOSIsIl8weDU2NThkZiIsIl8weDQ3YWJlOCIsIl8weDJhMDAyNSIsIl8weDFlZmE2ZCIsIl8weDE2ZDUwZCIsIl8weDQwZTQ4YSIsIl8weGIwMDczZSIsIl8weGVjYmVjOSIsIl8weDEyNzY3YSIsIl8weDEzODNkMiIsIl8weDI1MGMyOSIsIl8weDFhYzgxNCIsIl8weGI5OTI4YyIsIl8weGYwOGQwMiIsIl8weDQwNmNjYiIsIl8weDI0Njk5YiIsIl8weDIyYzE0NiIsIl8weDFmMTk1MSIsIl8weDIzMTE0NyIsIlNldCIsIl8weDI4YmZhYSIsIl8weDRlNDhkZSIsIl8weDFlNTRjYiIsIl8weGE5N2VlYSIsIl8weDNmYzQ3ZCIsIl8weDQ3ODQ4ZCIsIl8weDExMDk1MCIsIl8weDViMTI0ZSIsIl8weDIzOTgyMyIsIl8weDI4ZDZkMSIsIl8weDUwYWVkMiIsIl8weDNlMDc4OSIsIl8weDJlMTIzMSIsIl8weDViY2NmZiIsIm5hbWUiLCJfMHgzNjUwM2IiLCJuYW1lc3BhY2VJbmRleCIsIl8weDEyNjdkZiIsIl8weDU4Nzk2NyIsIl8weDRjMWRiNiIsIl8weDE2NjU4MiIsIl8weGQ0Y2IxNyIsIl8weGUxMjM0NyIsIl8weGJlNDYwNiIsIl8weDUyOTFiOCIsIl8weDIxM2IwOCIsIl8weDViOGUxYyIsIl8weDNjOTYxZiIsIl8weDRmMDFmNSIsIl8weDUzZTc4MiIsIl8weDRjNjYzZiIsIl8weDQ0OWNiZSIsIl8weDUyODQ5NCIsIl8weGM5MGMxZCIsIl8weDQzODMzOCIsIl8weDY3OTVmZiIsIl8weDIzNWJmYiIsIl8weDUxZDUwOSIsIl8weDFhYjQ4OCIsIl8weDQ2YjRjYSIsIl8weDJiZDU0NCIsIl8weGY0N2E4OCIsIl8weDRhMjIzMyIsIl8weDRkZjcwYiIsIl8weDQyMzMyZiIsIl8weDJmMDg0OCIsIl8weDIxY2VhMCIsIl8weDE4M2UyOCIsIl8weDUyMWNmMiIsIl8weDk5MWE4YiIsIl8weDMzZDM1YyIsIl8weDIxYzBhZiIsIl8weGQ3Y2M5MSIsIl8weDIyMjQwZiIsIl8weDUwOTNkNCIsIl8weDUyNDIyYyIsIl8weDU0MmMyMiIsIl8weDRkZDA3ZCIsIl8weDRmYWE5ZiIsIl8weDExYWU5MSIsIl8weDE0NjA4YyIsIl8weDEzYTAwMCIsIl8weDFiYjA3YiIsInNlY3VyaXR5TW9kZSIsIl8weDIyYjNkZiIsInNlY3VyaXR5UG9saWN5IiwiXzB4MzcxNWZiIiwidXNlcklkZW50aXR5VHlwZSIsIl8weDNkNDc3MSIsImNyZWRlbnRpYWxzIiwiXzB4NDU3ZmViIiwibmFtZXNwYWNlQWxpYXNlcyIsIl8weDQ1ODc0ZiIsIl8weDIwOTI3NyIsIl8weDg2ZGRjZSIsIl8weDE1ZThjZiIsIl8weDQ5MWZmMSIsIl8weDNiN2NlNSIsIl8weDJiN2QwMCIsIl8weDJjMGRlOSIsIl8weDJiM2MyZiIsIl8weDUyMjI1NSIsIl8weDE4ZDhjMiIsIl8weDc1YTAwMCIsIl8weDM3M2YxZCIsIl8weGY0Mzc0NyIsIl8weDRkMzFjNiIsIl8weDVlOTRiOCIsIl8weDVkN2NkYyIsIl8weDFmMDU0YiJdLCJtYXBwaW5ncyI6InlpQkFBQSxDQUFDLFUsQ0FDRyxhLHdCQUVBLFNBQVNBLFNBQVQsQ0FBcUNDLFNBQXJDLENBQTBDQyxTQUExQyxDLHlCQUNVQyxTQUFBLENBQVlDLENBQUEsQyxnQkFBQSxDLENBQ1pDLFNBQUEsQ0FBZ0JELENBQUEsQywwQkFBQSxDLENBRWhCRSxTQUFBLENBQTZCLEksMkJBQ3pCQyxTQUFBLENBQVdOLFNBQUEsQyxnQkFBQSxFLGdCQUFBLEVBQWVFLFNBQUEsQyxLQUFBLEdBQWYsQyxDQUNqQkUsU0FBQSxDLE9BQUEsSSxHQUNJLENBQUNFLFNBQUQsRUFBYSxDQUFDQSxTQUFBLEMsZ0JBQUEsQyxDQUNkLE9BRUosVUFBV0MsU0FBWCxJ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LEciLCJzb3VyY2VzQ29udGVudCI6WyIoZnVuY3Rpb24gKCkge1xuICAgICd1c2Ugc3RyaWN0JztcblxuICAgIGZ1bmN0aW9uIGluc3RhbGxTdWJzY3JpcHRpb25TZWxlY3RvcihSRUQsIG5vZGUpIHtcbiAgICAgICAgY29uc3QgJGVuZHBvaW50ID0gJChcIiNub2RlLWlucHV0LWVuZHBvaW50XCIpO1xuICAgICAgICBjb25zdCAkc3Vic2NyaXB0aW9uID0gJChcIiNub2RlLWlucHV0LXN1YnNjcmlwdGlvblwiKTtcbiAgICAgICAgLy8gZGVidWdnZXI7XG4gICAgICAgIGNvbnN0IGluc3RhbGxTdWJzY3JpcHRpb25PcHRpb25zID0gKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgZW5kcG9pbnQgPSBSRUQubm9kZXMubm9kZSgkZW5kcG9pbnQudmFsKCkpO1xuICAgICAgICAgICAgJHN1YnNjcmlwdGlvbi5lbXB0eSgpO1xuICAgICAgICAgICAgaWYgKCFlbmRwb2ludCB8fCAhZW5kcG9pbnQuc3Vic2NyaXB0aW9ucykge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGZvciAoY29uc3QgcyBvZiBlbmRwb2ludC5zdWJzY3JpcHRpb25zKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbGFiZWwgPSBzLm5hbWUgfHwgcy5pZDtcbiAgICAgICAgICAgICAgICAkKFwiPG9wdGlvbi8+XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6IHMuaWQsXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsOiBsYWJlbCxcbiAgICAgICAgICAgICAgICAgICAgc2VsZWN0ZWQ6IHMuaWQgPT09IG5vZGUuc3Vic2NyaXB0aW9uLFxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgIC50ZXh0KGxhYmVsKVxuICAgICAgICAgICAgICAgICAgICAuYXBwZW5kVG8oJHN1YnNjcmlwdGlvbik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgICAgIGluc3RhbGxTdWJzY3JpcHRpb25PcHRpb25zKCk7XG4gICAgICAgIC8vIGhhY2tcbiAgICAgICAgLy8gJGlucHV0QWN0aW9uLm9uKFwiY2hhbmdlXCIsICgpID0+IHtcbiAgICAgICAgLy8gICAgICRlbmRwb2ludC5vbihcImNoYW5nZVwiLCAoKSA9PiB7XG4gICAgICAgIC8vICAgICAgICAgaW5zdGFsbFN1YnNjcmlwdGlvbk9wdGlvbnMoKTtcbiAgICAgICAgLy8gICAgIH0pO1xuICAgICAgICAvLyB9KTtcbiAgICAgICAgJHN1YnNjcmlwdGlvbi5vbihcImNoYW5nZVwiLCAoKSA9PiB7XG4gICAgICAgICAgICBub2RlLnN1YnNjcmlwdGlvbiA9ICRzdWJzY3JpcHRpb24udmFsKCk7XG4gICAgICAgICAgICAvLyAgICBpbnN0YWxsU3Vic2NyaXB0aW9uT3B0aW9ucygpO1xuICAgICAgICB9KTtcbiAgICAgICAgJGVuZHBvaW50Lm9uKFwiY2hhbmdlXCIsICgpID0+IHtcbiAgICAgICAgICAgIGluc3RhbGxTdWJzY3JpcHRpb25PcHRpb25zKCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICAgIENvcHlyaWdodCAoYykgTWljcm9zb2Z0IENvcnBvcmF0aW9uLlxyXG5cclxuICAgIFBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZC9vciBkaXN0cmlidXRlIHRoaXMgc29mdHdhcmUgZm9yIGFueVxyXG4gICAgcHVycG9zZSB3aXRoIG9yIHdpdGhvdXQgZmVlIGlzIGhlcmVieSBncmFudGVkLlxyXG5cclxuICAgIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIgQU5EIFRIRSBBVVRIT1IgRElTQ0xBSU1TIEFMTCBXQVJSQU5USUVTIFdJVEhcclxuICAgIFJFR0FSRCBUTyBUSElTIFNPRlRXQVJFIElOQ0xVRElORyBBTEwgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWVxyXG4gICAgQU5EIEZJVE5FU1MuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgQkUgTElBQkxFIEZPUiBBTlkgU1BFQ0lBTCwgRElSRUNULFxyXG4gICAgSU5ESVJFQ1QsIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyBPUiBBTlkgREFNQUdFUyBXSEFUU09FVkVSIFJFU1VMVElORyBGUk9NXHJcbiAgICBMT1NTIE9GIFVTRSwgREFUQSBPUiBQUk9GSVRTLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgTkVHTElHRU5DRSBPUlxyXG4gICAgT1RIRVIgVE9SVElPVVMgQUNUSU9OLCBBUklTSU5HIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFVTRSBPUlxyXG4gICAgUEVSRk9STUFOQ0UgT0YgVEhJUyBTT0ZUV0FSRS5cclxuICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqICovXHJcbiAgICAvKiBnbG9iYWwgUmVmbGVjdCwgUHJvbWlzZSwgU3VwcHJlc3NlZEVycm9yLCBTeW1ib2wsIEl0ZXJhdG9yICovXHJcblxyXG5cclxuICAgIGZ1bmN0aW9uIF9fYXdhaXRlcih0aGlzQXJnLCBfYXJndW1lbnRzLCBQLCBnZW5lcmF0b3IpIHtcclxuICAgICAgICBmdW5jdGlvbiBhZG9wdCh2YWx1ZSkgeyByZXR1cm4gdmFsdWUgaW5zdGFuY2VvZiBQID8gdmFsdWUgOiBuZXcgUChmdW5jdGlvbiAocmVzb2x2ZSkgeyByZXNvbHZlKHZhbHVlKTsgfSk7IH1cclxuICAgICAgICByZXR1cm4gbmV3IChQIHx8IChQID0gUHJvbWlzZSkpKGZ1bmN0aW9uIChyZXNvbHZlLCByZWplY3QpIHtcclxuICAgICAgICAgICAgZnVuY3Rpb24gZnVsZmlsbGVkKHZhbHVlKSB7IHRyeSB7IHN0ZXAoZ2VuZXJhdG9yLm5leHQodmFsdWUpKTsgfSBjYXRjaCAoZSkgeyByZWplY3QoZSk7IH0gfVxyXG4gICAgICAgICAgICBmdW5jdGlvbiByZWplY3RlZCh2YWx1ZSkgeyB0cnkgeyBzdGVwKGdlbmVyYXRvcltcInRocm93XCJdKHZhbHVlKSk7IH0gY2F0Y2ggKGUpIHsgcmVqZWN0KGUpOyB9IH1cclxuICAgICAgICAgICAgZnVuY3Rpb24gc3RlcChyZXN1bHQpIHsgcmVzdWx0LmRvbmUgPyByZXNvbHZlKHJlc3VsdC52YWx1ZSkgOiBhZG9wdChyZXN1bHQudmFsdWUpLnRoZW4oZnVsZmlsbGVkLCByZWplY3RlZCk7IH1cclxuICAgICAgICAgICAgc3RlcCgoZ2VuZXJhdG9yID0gZ2VuZXJhdG9yLmFwcGx5KHRoaXNBcmcsIF9hcmd1bWVudHMgfHwgW10pKS5uZXh0KCkpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHR5cGVvZiBTdXBwcmVzc2VkRXJyb3IgPT09IFwiZnVuY3Rpb25cIiA/IFN1cHByZXNzZWRFcnJvciA6IGZ1bmN0aW9uIChlcnJvciwgc3VwcHJlc3NlZCwgbWVzc2FnZSkge1xyXG4gICAgICAgIHZhciBlID0gbmV3IEVycm9yKG1lc3NhZ2UpO1xyXG4gICAgICAgIHJldHVybiBlLm5hbWUgPSBcIlN1cHByZXNzZWRFcnJvclwiLCBlLmVycm9yID0gZXJyb3IsIGUuc3VwcHJlc3NlZCA9IHN1cHByZXNzZWQsIGU7XHJcbiAgICB9O1xuXG4gICAgY29uc3QgT3JnYW5pemVzUmVmTm9kZUlkID0gXCJucz0wO2k9MzVcIjtcbiAgICBjb25zdCBGb2xkZXJUeXBlID0gXCJucz0wO2k9NjFcIjtcbiAgICBjb25zdCBIYXNDb21wb25lbnRSZWZOb2RlSWQgPSBcIm5zPTA7aT00N1wiO1xuICAgIGNvbnN0IEhhc1Byb3BlcnR5UmVmTm9kZUlkID0gXCJucz0wO2k9NDZcIjtcbiAgICBjb25zdCBIYXNDaGlsZFJlZk5vZGVJZCA9IFwibnM9MDtpPTM0XCI7XG4gICAgY29uc3QgSGFzU3VidHlwZVJlZk5vZGVJZCA9IFwibnM9MDtpPTQ1XCI7XG4gICAgY29uc3QgSGFzVHlwZURlZmluaXRpb25SZWZOb2RlSWQgPSBcIm5zPTA7aT00MFwiO1xuXG4gICAgdmFyIEJyb3dzZURpcmVjdGlvbjtcbiAgICAoZnVuY3Rpb24gKEJyb3dzZURpcmVjdGlvbikge1xuICAgICAgICBCcm93c2VEaXJlY3Rpb25bQnJvd3NlRGlyZWN0aW9uW1wiRm9yd2FyZFwiXSA9IDBdID0gXCJGb3J3YXJkXCI7XG4gICAgICAgIEJyb3dzZURpcmVjdGlvbltCcm93c2VEaXJlY3Rpb25bXCJJbnZlcnNlXCJdID0gMV0gPSBcIkludmVyc2VcIjtcbiAgICAgICAgQnJvd3NlRGlyZWN0aW9uW0Jyb3dzZURpcmVjdGlvbltcIkJvdGhcIl0gPSAyXSA9IFwiQm90aFwiO1xuICAgICAgICBCcm93c2VEaXJlY3Rpb25bQnJvd3NlRGlyZWN0aW9uW1wiSW52YWxpZFwiXSA9IDNdID0gXCJJbnZhbGlkXCI7XG4gICAgfSkoQnJvd3NlRGlyZWN0aW9uIHx8IChCcm93c2VEaXJlY3Rpb24gPSB7fSkpO1xuICAgIHZhciBOb2RlQ2xhc3M7XG4gICAgKGZ1bmN0aW9uIChOb2RlQ2xhc3MpIHtcbiAgICAgICAgTm9kZUNsYXNzW05vZGVDbGFzc1tcIlVuc3BlY2lmaWVkXCJdID0gMF0gPSBcIlVuc3BlY2lmaWVkXCI7XG4gICAgICAgIE5vZGVDbGFzc1tOb2RlQ2xhc3NbXCJPYmplY3RcIl0gPSAxXSA9IFwiT2JqZWN0XCI7XG4gICAgICAgIE5vZGVDbGFzc1tOb2RlQ2xhc3NbXCJWYXJpYWJsZVwiXSA9IDJdID0gXCJWYXJpYWJsZVwiO1xuICAgICAgICBOb2RlQ2xhc3NbTm9kZUNsYXNzW1wiTWV0aG9kXCJdID0gNF0gPSBcIk1ldGhvZFwiO1xuICAgICAgICBOb2RlQ2xhc3NbTm9kZUNsYXNzW1wiT2JqZWN0VHlwZVwiXSA9IDhdID0gXCJPYmplY3RUeXBlXCI7XG4gICAgICAgIE5vZGVDbGFzc1tOb2RlQ2xhc3NbXCJWYXJpYWJsZVR5cGVcIl0gPSAxNl0gPSBcIlZhcmlhYmxlVHlwZVwiO1xuICAgICAgICBOb2RlQ2xhc3NbTm9kZUNsYXNzW1wiUmVmZXJlbmNlVHlwZVwiXSA9IDMyXSA9IFwiUmVmZXJlbmNlVHlwZVwiO1xuICAgICAgICBOb2RlQ2xhc3NbTm9kZUNsYXNzW1wiRGF0YVR5cGVcIl0gPSA2NF0gPSBcIkRhdGFUeXBlXCI7XG4gICAgICAgIE5vZGVDbGFzc1tOb2RlQ2xhc3NbXCJWaWV3XCJdID0gMTI4XSA9IFwiVmlld1wiO1xuICAgIH0pKE5vZGVDbGFzcyB8fCAoTm9kZUNsYXNzID0ge30pKTtcbiAgICB2YXIgTm9kZUNsYXNzTWFzaztcbiAgICAoZnVuY3Rpb24gKE5vZGVDbGFzc01hc2spIHtcbiAgICAgICAgTm9kZUNsYXNzTWFza1tOb2RlQ2xhc3NNYXNrW1wiT2JqZWN0XCJdID0gMV0gPSBcIk9iamVjdFwiO1xuICAgICAgICBOb2RlQ2xhc3NNYXNrW05vZGVDbGFzc01hc2tbXCJWYXJpYWJsZVwiXSA9IDJdID0gXCJWYXJpYWJsZVwiO1xuICAgICAgICBOb2RlQ2xhc3NNYXNrW05vZGVDbGFzc01hc2tbXCJNZXRob2RcIl0gPSA0XSA9IFwiTWV0aG9kXCI7XG4gICAgICAgIE5vZGVDbGFzc01hc2tbTm9kZUNsYXNzTWFza1tcIk9iamVjdFR5cGVcIl0gPSA4XSA9IFwiT2JqZWN0VHlwZVwiO1xuICAgICAgICBOb2RlQ2xhc3NNYXNrW05vZGVDbGFzc01hc2tbXCJWYXJpYWJsZVR5cGVcIl0gPSAxNl0gPSBcIlZhcmlhYmxlVHlwZVwiO1xuICAgICAgICBOb2RlQ2xhc3NNYXNrW05vZGVDbGFzc01hc2tbXCJSZWZlcmVuY2VUeXBlXCJdID0gMzJdID0gXCJSZWZlcmVuY2VUeXBlXCI7XG4gICAgICAgIE5vZGVDbGFzc01hc2tbTm9kZUNsYXNzTWFza1tcIkRhdGFUeXBlXCJdID0gNjRdID0gXCJEYXRhVHlwZVwiO1xuICAgICAgICBOb2RlQ2xhc3NNYXNrW05vZGVDbGFzc01hc2tbXCJWaWV3XCJdID0gMTI4XSA9IFwiVmlld1wiO1xuICAgIH0pKE5vZGVDbGFzc01hc2sgfHwgKE5vZGVDbGFzc01hc2sgPSB7fSkpO1xuICAgIHZhciBSZXN1bHRNYXNrO1xuICAgIChmdW5jdGlvbiAoUmVzdWx0TWFzaykge1xuICAgICAgICBSZXN1bHRNYXNrW1Jlc3VsdE1hc2tbXCJSZWZlcmVuY2VUeXBlXCJdID0gMV0gPSBcIlJlZmVyZW5jZVR5cGVcIjtcbiAgICAgICAgUmVzdWx0TWFza1tSZXN1bHRNYXNrW1wiSXNGb3J3YXJkXCJdID0gMl0gPSBcIklzRm9yd2FyZFwiO1xuICAgICAgICBSZXN1bHRNYXNrW1Jlc3VsdE1hc2tbXCJOb2RlQ2xhc3NcIl0gPSA0XSA9IFwiTm9kZUNsYXNzXCI7XG4gICAgICAgIFJlc3VsdE1hc2tbUmVzdWx0TWFza1tcIkJyb3dzZU5hbWVcIl0gPSA4XSA9IFwiQnJvd3NlTmFtZVwiO1xuICAgICAgICBSZXN1bHRNYXNrW1Jlc3VsdE1hc2tbXCJEaXNwbGF5TmFtZVwiXSA9IDE2XSA9IFwiRGlzcGxheU5hbWVcIjtcbiAgICAgICAgUmVzdWx0TWFza1tSZXN1bHRNYXNrW1wiVHlwZURlZmluaXRpb25cIl0gPSAzMl0gPSBcIlR5cGVEZWZpbml0aW9uXCI7XG4gICAgfSkoUmVzdWx0TWFzayB8fCAoUmVzdWx0TWFzayA9IHt9KSk7XG4gICAgLy8gIGNvbnN0IHEgPSBSZWZlcmVuY2VUeXBlSWRzLk9yZ2FuaXplcztcbiAgICBmdW5jdGlvbiByZXNvbHZlTm9kZUlkKG5vZGVJZExpa2UpIHtcbiAgICAgICAgc3dpdGNoIChub2RlSWRMaWtlKSB7XG4gICAgICAgICAgICBjYXNlIFwiT3JnYW5pemVzXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIE9yZ2FuaXplc1JlZk5vZGVJZDtcbiAgICAgICAgICAgIGNhc2UgXCJIYXNQcm9wZXJ0eVwiOlxuICAgICAgICAgICAgICAgIHJldHVybiBIYXNQcm9wZXJ0eVJlZk5vZGVJZDtcbiAgICAgICAgICAgIGNhc2UgXCJIYXNDb21wb25lbnRcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4gSGFzQ29tcG9uZW50UmVmTm9kZUlkO1xuICAgICAgICAgICAgY2FzZSBcIkhhc0NoaWxkXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIEhhc0NoaWxkUmVmTm9kZUlkO1xuICAgICAgICAgICAgY2FzZSBcIkhhc1N1YnR5cGVcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4gSGFzU3VidHlwZVJlZk5vZGVJZDtcbiAgICAgICAgICAgIGNhc2UgXCJIYXNUeXBlRGVmaW5pdGlvblwiOlxuICAgICAgICAgICAgICAgIHJldHVybiBIYXNUeXBlRGVmaW5pdGlvblJlZk5vZGVJZDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IGdldEljb24gPSAocmVmZXJlbmNlKSA9PiB7XG4gICAgICAgIHN3aXRjaCAocmVmZXJlbmNlLm5vZGVDbGFzcykge1xuICAgICAgICAgICAgY2FzZSBcIk9iamVjdFwiOlxuICAgICAgICAgICAgICAgIGlmIChyZWZlcmVuY2UucmVmZXJlbmNlVHlwZUlkID09PSBPcmdhbml6ZXNSZWZOb2RlSWQpIDtcbiAgICAgICAgICAgICAgICBpZiAocmVmZXJlbmNlLnR5cGVEZWZpbml0aW9uID09PSBGb2xkZXJUeXBlIHx8IHJlZmVyZW5jZS5yZWZlcmVuY2VUeXBlSWQgPT09IFwiaT02MVwiKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB7IGljb246IFwiZmEtZm9sZGVyXCIsIGNvbG9yOiBcInJnYmEoNjEsIDYwLCA0LCAwLjUyNSlcIiB9O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm4geyBpY29uOiBcImZhLW9iamVjdC1ncm91cFwiLCBjb2xvcjogXCJTZWFHcmVlblwiIH07XG4gICAgICAgICAgICBjYXNlIFwiVmFyaWFibGVcIjpcbiAgICAgICAgICAgICAgICBpZiAocmVmZXJlbmNlLnJlZmVyZW5jZVR5cGVJZCA9PT0gSGFzQ29tcG9uZW50UmVmTm9kZUlkKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB7IGljb246IFwiZmEtbGlzdC1hbHRcIiwgY29sb3I6IFwiU3RlZWxCbHVlXCIgfTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAocmVmZXJlbmNlLnJlZmVyZW5jZVR5cGVJZCA9PT0gSGFzUHJvcGVydHlSZWZOb2RlSWQpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHsgaWNvbjogXCJmYS1saXN0LWFsdFwiLCBjb2xvcjogXCJEb2RnZXJCbHVlXCIgfTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB7IGljb246IFwiZmEtbGlzdC1hbHRcIiwgY29sb3I6IFwiQ2FkZXRCbHVlXCIgfTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXNlIFwiTWV0aG9kXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHsgaWNvbjogXCJmYS1jb2dcIiwgY29sb3I6IFwiU2FuZHlCcm93blwiIH07XG4gICAgICAgICAgICBjYXNlIFwiT2JqZWN0VHlwZVwiOlxuICAgICAgICAgICAgICAgIHJldHVybiB7IGljb246IFwiZmEtb2JqZWN0LWdyb3VwXCIsIGNvbG9yOiBcIkRhcmtPcmFuZ2VcIiB9O1xuICAgICAgICAgICAgY2FzZSBcIlZhcmlhYmxlVHlwZVwiOlxuICAgICAgICAgICAgICAgIHJldHVybiB7IGljb246IFwiZmEtc2xpZGVyc1wiLCBjb2xvcjogXCJEYXJrT3JhbmdlXCIgfTtcbiAgICAgICAgICAgIGNhc2UgXCJEYXRhVHlwZVwiOlxuICAgICAgICAgICAgICAgIHJldHVybiB7IGljb246IFwiZmEtdGV4dC13aWR0aFwiLCBjb2xvcjogXCJDYWRldEJsdWVcIiB9O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB7IGljb246IFwiZmEtcXVlc3Rpb25cIiwgY29sb3I6IFwiZ3JleVwiIH07XG4gICAgfTtcblxuICAgIGNvbnN0IGJyb3dzZSA9IChfYSwgbm9kZUlkXzEsIHRlbXBsYXRlXzEpID0+IF9fYXdhaXRlcih2b2lkIDAsIFtfYSwgbm9kZUlkXzEsIHRlbXBsYXRlXzFdLCB2b2lkIDAsIGZ1bmN0aW9uKiAoeyBlbmRwb2ludE5vZGUsIGVuZHBvaW50LCBiYXNlVXJsIH0sIG5vZGVJZCwgdGVtcGxhdGUpIHtcbiAgICAgICAgY29uc3Qgcm9vdCA9IGAke2Jhc2VVcmx9L29wY3VhLWZvci1ub2RlLXJlZGA7XG4gICAgICAgIGNvbnN0IHVybCA9IGAke3Jvb3R9L2Jyb3dzZWA7XG4gICAgICAgIGNvbnN0IGJyb3dzZURlc2NyaXB0aW9uID0gT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCB0ZW1wbGF0ZSksIHsgbm9kZUlkLCByZXN1bHRNYXNrOiA2MyB9KTtcbiAgICAgICAgY29uc3QgZGF0YSA9IHlpZWxkIGZldGNoKHVybCwge1xuICAgICAgICAgICAgbWV0aG9kOiBcIlBPU1RcIixcbiAgICAgICAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgICAgICAgICBlbmRwb2ludE5vZGUsXG4gICAgICAgICAgICAgICAgZW5kcG9pbnQsXG4gICAgICAgICAgICAgICAgYnJvd3NlRGVzY3JpcHRpb24sXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIGhlYWRlcnM6IHsgXCJDb250ZW50LVR5cGVcIjogXCJhcHBsaWNhdGlvbi9qc29uXCIgfSxcbiAgICAgICAgfSk7XG4gICAgICAgIGlmIChkYXRhLnN0YXR1cyAhPT0gMjAwKSB7XG4gICAgICAgICAgICBjb25zb2xlLmxvZyhcImZldGNoaW5nIGZhaWxlZCB3aXRoIGVycm9yXCIsIGRhdGEuc3RhdHVzLCBkYXRhLnN0YXR1c1RleHQpO1xuICAgICAgICAgICAgcmV0dXJuIHsgcmVmZXJlbmNlczogW10gfTtcbiAgICAgICAgfVxuICAgICAgICAvLyBjb25zb2xlLmxvZyhcImJyb3dzZSBmZXRjaGVkIDogXCIsIGRhdGEuc3RhdHVzLCBkYXRhLnN0YXR1c1RleHQpO1xuICAgICAgICBjb25zdCByZXNwb25zZSA9IHlpZWxkIGRhdGEuanNvbigpO1xuICAgICAgICBjb25zdCByZWZlcmVuY2VzID0gcmVzcG9uc2UuYnJvd3NlUmVzdWx0LnJlZmVyZW5jZXMgfHwgW107XG4gICAgICAgIHJldHVybiB7IHJlZmVyZW5jZXMgfTtcbiAgICB9KTtcblxuICAgIGNvbnN0IHRlbXBsYXRlMSA9IHtcbiAgICAgICAgcmVmZXJlbmNlVHlwZUlkOiByZXNvbHZlTm9kZUlkKFwiSGFzQ2hpbGRcIiksXG4gICAgICAgIGluY2x1ZGVTdWJ0eXBlczogdHJ1ZSxcbiAgICAgICAgYnJvd3NlRGlyZWN0aW9uOiBCcm93c2VEaXJlY3Rpb24uRm9yd2FyZCxcbiAgICAgICAgbm9kZUNsYXNzTWFzazogTm9kZUNsYXNzLlZhcmlhYmxlIHwgTm9kZUNsYXNzLk9iamVjdCB8IE5vZGVDbGFzcy5NZXRob2QsXG4gICAgICAgIC8vICBOb2RlQ2xhc3MuT2JqZWN0VHlwZSB8XG4gICAgICAgIC8vICBOb2RlQ2xhc3MuVmFyaWFibGVUeXBlIHxcbiAgICAgICAgLy8gTm9kZUNsYXNzLlJlZmVyZW5jZVR5cGUgfFxuICAgICAgICAvLyBOb2RlQ2xhc3MuRGF0YVR5cGUgfFxuICAgICAgICAvLyBOb2RlQ2xhc3MuVmlldyxcbiAgICAgICAgcmVzdWx0TWFzazogNjMsXG4gICAgfTtcbiAgICBjb25zdCB0ZW1wbGF0ZTIgPSB7XG4gICAgICAgIHJlZmVyZW5jZVR5cGVJZDogcmVzb2x2ZU5vZGVJZChcIk9yZ2FuaXplc1wiKSxcbiAgICAgICAgaW5jbHVkZVN1YnR5cGVzOiB0cnVlLFxuICAgICAgICBicm93c2VEaXJlY3Rpb246IEJyb3dzZURpcmVjdGlvbi5Gb3J3YXJkLFxuICAgICAgICBub2RlQ2xhc3NNYXNrOiBOb2RlQ2xhc3MuVmFyaWFibGUgfCBOb2RlQ2xhc3MuT2JqZWN0IHwgTm9kZUNsYXNzLk1ldGhvZCxcbiAgICAgICAgLy8gIE5vZGVDbGFzcy5PYmplY3RUeXBlIHxcbiAgICAgICAgLy8gIE5vZGVDbGFzcy5WYXJpYWJsZVR5cGUgfFxuICAgICAgICAvLyBOb2RlQ2xhc3MuUmVmZXJlbmNlVHlwZSB8XG4gICAgICAgIC8vIE5vZGVDbGFzcy5EYXRhVHlwZSB8XG4gICAgICAgIC8vIE5vZGVDbGFzcy5WaWV3LFxuICAgICAgICByZXN1bHRNYXNrOiA2MyxcbiAgICB9O1xuICAgIGNvbnN0IHdhbGtCYWNrd2FyZCA9IChfYSwgX2IpID0+IF9fYXdhaXRlcih2b2lkIDAsIFtfYSwgX2JdLCB2b2lkIDAsIGZ1bmN0aW9uKiAoeyBlbmRwb2ludE5vZGUsIGVuZHBvaW50LCBiYXNlVXJsIH0sIHsgbm9kZUlkLCByb290Tm9kZUlkLCBpc1R5cGUgfSkge1xuICAgICAgICBjb25zdCByb290ID0gYCR7YmFzZVVybH0vb3BjdWEtZm9yLW5vZGUtcmVkYDtcbiAgICAgICAgY29uc3QgdXJsID0gYCR7cm9vdH0vd2Fsay1iYWNrd2FyZGA7XG4gICAgICAgIGNvbnN0IGRhdGEgPSB5aWVsZCBmZXRjaCh1cmwsIHtcbiAgICAgICAgICAgIG1ldGhvZDogXCJQT1NUXCIsXG4gICAgICAgICAgICBib2R5OiBKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgICAgICAgICAgZW5kcG9pbnROb2RlLFxuICAgICAgICAgICAgICAgIGVuZHBvaW50LFxuICAgICAgICAgICAgICAgIG5vZGVJZCxcbiAgICAgICAgICAgICAgICByb290Tm9kZUlkLFxuICAgICAgICAgICAgICAgIGlzVHlwZSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgaGVhZGVyczogeyBcIkNvbnRlbnQtVHlwZVwiOiBcImFwcGxpY2F0aW9uL2pzb25cIiB9LFxuICAgICAgICB9KTtcbiAgICAgICAgaWYgKGRhdGEuc3RhdHVzICE9PSAyMDApIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGpzb24gPSAoeWllbGQgZGF0YS5qc29uKCkpO1xuICAgICAgICByZXR1cm4ganNvbi5icm93c2VQYXRoO1xuICAgIH0pO1xuICAgIGNvbnN0IGNob29zZU5vZGVJZCA9IChkYXRhLCBtb2RlKSA9PiB7XG4gICAgICAgIGlmIChkYXRhLnN0YXR1c0NvZGUgIT09IFwiR29vZFwiKSB7XG4gICAgICAgICAgICByZXR1cm4gZGF0YS5yZXF1ZXN0ZWROb2RlSWQ7XG4gICAgICAgIH1cbiAgICAgICAgc3dpdGNoIChtb2RlKSB7XG4gICAgICAgICAgICBjYXNlIFwiYnJvd3NlUGF0aFwiOlxuICAgICAgICAgICAgICAgIHJldHVybiBkYXRhLmJwX2luZGV4ZWQ7XG4gICAgICAgICAgICBjYXNlIFwiYWxpYXNlZEJyb3dzZVBhdGhcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4gZGF0YS5icF9hbGlhc2VkIHx8IGRhdGEuYnBfaW5kZXhlZDtcbiAgICAgICAgICAgIGNhc2UgXCJhbGlhc2VkTm9kZUlkXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIGRhdGEubm9kZUlkX2FsaWFzZWQgfHwgZGF0YS5ub2RlSWRfbnN1O1xuICAgICAgICAgICAgY2FzZSBcIm5zdU5vZGVJRFwiOlxuICAgICAgICAgICAgICAgIHJldHVybiBkYXRhLm5vZGVJZF9uc3U7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgY2FzZSBcIm5vZGVJZFwiOlxuICAgICAgICAgICAgICAgIHJldHVybiBkYXRhLm5vZGVJZDtcbiAgICAgICAgfVxuICAgIH07XG4gICAgY29uc3QgbWFrZVRvb2x0aXAgPSAoZGF0YSkgPT4ge1xuICAgICAgICBpZiAoZGF0YS5zdGF0dXNDb2RlICE9PSBcIkdvb2RcIikge1xuICAgICAgICAgICAgcmV0dXJuIGBzdGF0dXNDb2RlOiAke2RhdGEuc3RhdHVzQ29kZX1gO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgbGV0IHN0ciA9IFtdO1xuICAgICAgICAgICAgc3RyLnB1c2goYG5vZGVJZDogJHtkYXRhLm5vZGVJZH1gKTtcbiAgICAgICAgICAgIHN0ci5wdXNoKGBicm93c2UgcGF0aDogJHtkYXRhLmJwX2luZGV4ZWR9YCk7XG4gICAgICAgICAgICBzdHIucHVzaChgbm9kZSBjbGFzczogJHtOb2RlQ2xhc3NbZGF0YS5ub2RlQ2xhc3NdfWApO1xuICAgICAgICAgICAgaWYgKGRhdGEubm9kZUlkX25zdSkge1xuICAgICAgICAgICAgICAgIHN0ci5wdXNoKGBuc3Ugbm9kZUlkOiAke2RhdGEubm9kZUlkX25zdX1gKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChkYXRhLm5vZGVJZF9hbGlhc2VkKSB7XG4gICAgICAgICAgICAgICAgc3RyLnB1c2goYGFsaWFzZWQgTm9kZUlkOiAke2RhdGEubm9kZUlkX2FsaWFzZWR9YCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoZGF0YS5icF9pbmRleGVkKSB7XG4gICAgICAgICAgICAgICAgc3RyLnB1c2goYGFsaWFzZWQgYnJvd3NlUGF0aDogJHtkYXRhLmJwX2FsaWFzZWR9YCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gc3RyLmpvaW4oXCJcXG5cIik7XG4gICAgICAgIH1cbiAgICB9O1xuICAgIGZ1bmN0aW9uIGZpZ3VyZU91dE1vZGUoZW5oYW5jZWROb2RlSWQpIHtcbiAgICAgICAgaWYgKGVuaGFuY2VkTm9kZUlkLm1hdGNoKC9ebnN1PS8pKSB7XG4gICAgICAgICAgICByZXR1cm4gXCJuc3VOb2RlSURcIjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoZW5oYW5jZWROb2RlSWQubWF0Y2goL14obnM9Lio7KT8oaXxifHN8Zyk9LykpIHtcbiAgICAgICAgICAgIHJldHVybiBcIm5vZGVJZFwiO1xuICAgICAgICB9XG4gICAgICAgIGlmIChlbmhhbmNlZE5vZGVJZC5tYXRjaCgvXm5zYT0vKSkge1xuICAgICAgICAgICAgcmV0dXJuIFwiYWxpYXNlZE5vZGVJZFwiO1xuICAgICAgICB9XG4gICAgICAgIGlmIChlbmhhbmNlZE5vZGVJZC5tYXRjaCgvXihcXC98XFwuKVswLTldKzovKSkge1xuICAgICAgICAgICAgcmV0dXJuIFwiYnJvd3NlUGF0aFwiO1xuICAgICAgICB9XG4gICAgICAgIGlmIChlbmhhbmNlZE5vZGVJZC5tYXRjaCgvXihcXC98XFwuKS4qOi8pKSB7XG4gICAgICAgICAgICByZXR1cm4gXCJicm93c2VQYXRoXCI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZnVuY3Rpb24gZmlndXJlT3V0TWVuVUl0ZW1WYWx1ZShzdHIpIHtcbiAgICAgICAgY29uc3QgbW9kZSA9IGZpZ3VyZU91dE1vZGUoc3RyKTtcbiAgICAgICAgc3dpdGNoIChtb2RlKSB7XG4gICAgICAgICAgICBjYXNlIFwibm9kZUlkXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIFwiblwiO1xuICAgICAgICAgICAgY2FzZSBcImFsaWFzZWROb2RlSWRcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4gXCJuYVwiO1xuICAgICAgICAgICAgY2FzZSBcIm5zdU5vZGVJRFwiOlxuICAgICAgICAgICAgICAgIHJldHVybiBcIm5zdVwiO1xuICAgICAgICAgICAgY2FzZSBcImJyb3dzZVBhdGhcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4gXCJiXCI7XG4gICAgICAgICAgICBjYXNlIFwiYWxpYXNlZEJyb3dzZVBhdGhcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4gXCJhYlwiO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICByZXR1cm4gXCJ0XCI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZnVuY3Rpb24gdG9Nb2RlKHYpIHtcbiAgICAgICAgbGV0IG1vZGU7XG4gICAgICAgIHN3aXRjaCAodikge1xuICAgICAgICAgICAgY2FzZSBcIm5cIjpcbiAgICAgICAgICAgICAgICBtb2RlID0gXCJub2RlSWRcIjtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgXCJuYVwiOlxuICAgICAgICAgICAgICAgIG1vZGUgPSBcImFsaWFzZWROb2RlSWRcIjtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgXCJuc3VcIjpcbiAgICAgICAgICAgICAgICBtb2RlID0gXCJuc3VOb2RlSURcIjtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgXCJiXCI6XG4gICAgICAgICAgICAgICAgbW9kZSA9IFwiYnJvd3NlUGF0aFwiO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSBcImFiXCI6XG4gICAgICAgICAgICAgICAgbW9kZSA9IFwiYWxpYXNlZEJyb3dzZVBhdGhcIjtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbW9kZTtcbiAgICB9XG4gICAgZnVuY3Rpb24gZnJvbU1vZGUobW9kZSkge1xuICAgICAgICBzd2l0Y2ggKG1vZGUpIHtcbiAgICAgICAgICAgIGNhc2UgXCJub2RlSWRcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4gXCJuXCI7XG4gICAgICAgICAgICBjYXNlIFwiYWxpYXNlZE5vZGVJZFwiOlxuICAgICAgICAgICAgICAgIHJldHVybiBcIm5hXCI7XG4gICAgICAgICAgICBjYXNlIFwibnN1Tm9kZUlEXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIFwibnN1XCI7XG4gICAgICAgICAgICBjYXNlIFwiYnJvd3NlUGF0aFwiOlxuICAgICAgICAgICAgICAgIHJldHVybiBcImJcIjtcbiAgICAgICAgICAgIGNhc2UgXCJhbGlhc2VkQnJvd3NlUGF0aFwiOlxuICAgICAgICAgICAgICAgIHJldHVybiBcImFiXCI7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHJldHVybiBcInRcIjtcbiAgICAgICAgfVxuICAgIH1cbiAgICBjb25zdCBfY2FsbENoZWNrTm9kZUlkID0gKF9hLCBub2RlSWRfMSkgPT4gX19hd2FpdGVyKHZvaWQgMCwgW19hLCBub2RlSWRfMV0sIHZvaWQgMCwgZnVuY3Rpb24qICh7IGVuZHBvaW50Tm9kZSwgZW5kcG9pbnQsIGJhc2VVcmwgfSwgbm9kZUlkKSB7XG4gICAgICAgIGNvbnN0IHJvb3QgPSBgJHtiYXNlVXJsfS9vcGN1YS1mb3Itbm9kZS1yZWRgO1xuICAgICAgICBjb25zdCB1cmwgPSBgJHtyb290fS9jaGVja05vZGVJZGA7XG4gICAgICAgIGNvbnN0IGVJZCA9IGVuZHBvaW50Tm9kZS5pZDtcbiAgICAgICAgY29uc3QgbiA9IFJFRC5ub2Rlcy5ub2RlKGVJZCk7XG4gICAgICAgIGNvbnNvbGUubG9nKG4ubmFtZXNwYWNlQWxpYXNlcyk7XG4gICAgICAgIG4ubmFtZXNwYWNlQWxpYXNlcztcbiAgICAgICAgY29uc3QgbmFtZXNwYWNlQWxpYXNlcyA9IGVuZHBvaW50Tm9kZS5uYW1lc3BhY2VBbGlhc2VzO1xuICAgICAgICBjb25zdCBkYXRhID0geWllbGQgZmV0Y2godXJsLCB7XG4gICAgICAgICAgICBtZXRob2Q6IFwiUE9TVFwiLFxuICAgICAgICAgICAgYm9keTogSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICAgICAgICAgIGVuZHBvaW50Tm9kZSxcbiAgICAgICAgICAgICAgICBlbmRwb2ludCxcbiAgICAgICAgICAgICAgICBub2RlSWQsXG4gICAgICAgICAgICAgICAgbmFtZXNwYWNlQWxpYXNlcyxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgaGVhZGVyczogeyBcIkNvbnRlbnQtVHlwZVwiOiBcImFwcGxpY2F0aW9uL2pzb25cIiB9LFxuICAgICAgICB9KTtcbiAgICAgICAgY29uc3QganNvbiA9ICh5aWVsZCBkYXRhLmpzb24oKSk7XG4gICAgICAgIHJldHVybiB7IGpzb24sIGRhdGEgfTtcbiAgICB9KTtcbiAgICBjb25zdCBpbnRlcm5hbFZlcmlmeSA9IChfYSwgbW9kZV8xLCAkaW5wdXRFbGVtZW50XzEsICRpbmZvXzEpID0+IF9fYXdhaXRlcih2b2lkIDAsIFtfYSwgbW9kZV8xLCAkaW5wdXRFbGVtZW50XzEsICRpbmZvXzFdLCB2b2lkIDAsIGZ1bmN0aW9uKiAoeyBlbmRwb2ludE5vZGUsIGVuZHBvaW50LCBiYXNlVXJsIH0sIG1vZGUsICRpbnB1dEVsZW1lbnQsICRpbmZvKSB7XG4gICAgICAgIGNvbnN0IGVuaGFuY2VkTm9kZUlkID0gJGlucHV0RWxlbWVudC52YWwoKTtcbiAgICAgICAgY29uc3QgeyBqc29uLCBkYXRhIH0gPSB5aWVsZCBfY2FsbENoZWNrTm9kZUlkKHsgZW5kcG9pbnROb2RlLCBlbmRwb2ludCwgYmFzZVVybCB9LCBlbmhhbmNlZE5vZGVJZCk7XG4gICAgICAgIGNvbnN0IHNldE5vdGlmaWNhdGlvbiA9ICh0ZXh0LCBjbGFzc05hbWUpID0+IHtcbiAgICAgICAgICAgICRpbmZvLnRleHQodGV4dCkuYWRkQ2xhc3MoXCJzdGVyZml2ZS1pbmZvXCIpLmFkZENsYXNzKGNsYXNzTmFtZSk7XG4gICAgICAgICAgICAkaW5mby5zaG93KCk7XG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICAkaW5mby5yZW1vdmVDbGFzcyhjbGFzc05hbWUpO1xuICAgICAgICAgICAgICAgICRpbmZvLmhpZGUoKTtcbiAgICAgICAgICAgIH0sIDMwMDApO1xuICAgICAgICB9O1xuICAgICAgICBpZiAoZGF0YS5zdGF0dXMgIT09IDIwMCkge1xuICAgICAgICAgICAgLy8gZG8gc29tZXRoaW5nO1xuICAgICAgICAgICAgc2V0Tm90aWZpY2F0aW9uKFwiISFmYWlsdXJlISFcIiArIGVuaGFuY2VkTm9kZUlkLCBcImZhaWx1cmVcIik7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBpZiAoanNvbi5zdGF0dXNDb2RlLm1hdGNoKC9Hb29kLykpIHtcbiAgICAgICAgICAgICAgICBjb25zdCB0b29sdGlwID0gbWFrZVRvb2x0aXAoanNvbik7XG4gICAgICAgICAgICAgICAgJGlucHV0RWxlbWVudC5hdHRyKFwidGl0bGVcIiwgdG9vbHRpcCk7XG4gICAgICAgICAgICAgICAgLy8gZG8gc29tZXRoaW5nXG4gICAgICAgICAgICAgICAgY29uc3Qgc2VsZWN0ZWROb2RlSWQgPSBjaG9vc2VOb2RlSWQoanNvbiwgbW9kZSk7XG4gICAgICAgICAgICAgICAgJGlucHV0RWxlbWVudC52YWwoc2VsZWN0ZWROb2RlSWQpO1xuICAgICAgICAgICAgICAgICRpbnB1dEVsZW1lbnQudHJpZ2dlcihcImNoYW5nZVwiKTtcbiAgICAgICAgICAgICAgICBzZXROb3RpZmljYXRpb24oXCJHb29kXCIsIFwib2tcIik7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAkaW5wdXRFbGVtZW50LnZhbChgJHtlbmhhbmNlZE5vZGVJZH1gKTtcbiAgICAgICAgICAgICAgICBzZXROb3RpZmljYXRpb24oYCR7anNvbi5zdGF0dXNDb2RlfSAke2RhdGEuc3RhdHVzVGV4dH1gLCBcImZhaWx1cmVcIik7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfSk7XG4gICAgZnVuY3Rpb24gZmV0Y2hDaGlsZHJlbigkbm9kZSwgZGF0YSkge1xuICAgICAgICByZXR1cm4gX19hd2FpdGVyKHRoaXMsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICAgICAgY29uc3Qgbm9kZUlkID0gJG5vZGUuZGF0YShcInZhbHVlXCIpO1xuICAgICAgICAgICAgY29uc3QgYnJvd3NlUmVzdWx0MSA9IHlpZWxkIGJyb3dzZShkYXRhLCBub2RlSWQsIHRlbXBsYXRlMSk7XG4gICAgICAgICAgICBjb25zdCBicm93c2VSZXN1bHQyID0geWllbGQgYnJvd3NlKGRhdGEsIG5vZGVJZCwgdGVtcGxhdGUyKTtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgcmVmZXJlbmNlczogWy4uLmJyb3dzZVJlc3VsdDEucmVmZXJlbmNlcywgLi4uYnJvd3NlUmVzdWx0Mi5yZWZlcmVuY2VzXSxcbiAgICAgICAgICAgIH07XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBjb25zdCB0ZW1wbGF0ZVNUID0ge1xuICAgICAgICByZWZlcmVuY2VUeXBlSWQ6IHJlc29sdmVOb2RlSWQoXCJIYXNTdWJ0eXBlXCIpLFxuICAgICAgICBpbmNsdWRlU3VidHlwZXM6IHRydWUsXG4gICAgICAgIGJyb3dzZURpcmVjdGlvbjogQnJvd3NlRGlyZWN0aW9uLkZvcndhcmQsXG4gICAgICAgIG5vZGVDbGFzc01hc2s6IE5vZGVDbGFzcy5SZWZlcmVuY2VUeXBlIHwgTm9kZUNsYXNzLk9iamVjdFR5cGUgfCBOb2RlQ2xhc3MuRGF0YVR5cGUgfCBOb2RlQ2xhc3MuVmFyaWFibGVUeXBlLFxuICAgICAgICByZXN1bHRNYXNrOiA2MyxcbiAgICB9O1xuICAgIGZ1bmN0aW9uIGZldGNoU3VidHlwZXMoJG5vZGUsIGRhdGEpIHtcbiAgICAgICAgcmV0dXJuIF9fYXdhaXRlcih0aGlzLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24qICgpIHtcbiAgICAgICAgICAgIGNvbnN0IG5vZGVJZCA9ICRub2RlLmRhdGEoXCJ2YWx1ZVwiKTtcbiAgICAgICAgICAgIGNvbnN0IGJyb3dzZVJlc3VsdDEgPSB5aWVsZCBicm93c2UoZGF0YSwgbm9kZUlkLCB0ZW1wbGF0ZVNUKTtcbiAgICAgICAgICAgIHJldHVybiBicm93c2VSZXN1bHQxO1xuICAgICAgICB9KTtcbiAgICB9XG4gICAgY29uc3QgbWFrZUVsZW1lbnQkMSA9IChyZWZlcmVuY2UpID0+IHtcbiAgICAgICAgdmFyIF9hLCBfYiwgX2MsIF9kO1xuICAgICAgICBpZiAoIXJlZmVyZW5jZSB8fCAhcmVmZXJlbmNlLm5vZGVJZCkge1xuICAgICAgICAgICAgY29uc3QgJGVsZW1lbnQgPSAkKGA8bGk+PGkgY2xhc3M9XCJmYSBmYS1lcnJvclwiIHN0eWxlPVwiY29sb3I6cmVkO1wiPjwvaT5ubyByZWZlcmVuY2UgITx1bD48L3VsPjwvbGk+YCk7XG4gICAgICAgICAgICByZXR1cm4gJGVsZW1lbnQ7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgbiA9IHJlZmVyZW5jZS5ub2RlSWQudG9TdHJpbmcoKTtcbiAgICAgICAgY29uc3QgdCA9ICgoX2EgPSByZWZlcmVuY2UuZGlzcGxheU5hbWUpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS50ZXh0KSB8fCAoKF9iID0gcmVmZXJlbmNlLmJyb3dzZU5hbWUpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5uYW1lKSB8fCByZWZlcmVuY2Uubm9kZUlkLnRvU3RyaW5nKCk7XG4gICAgICAgIGNvbnN0IHsgaWNvbiwgY29sb3IgfSA9IGdldEljb24ocmVmZXJlbmNlKTtcbiAgICAgICAgY29uc3QgdGl0bGUgPSBgKCR7cmVmZXJlbmNlLm5vZGVJZC50b1N0cmluZygpfSkgJHsoKF9jID0gcmVmZXJlbmNlLmJyb3dzZU5hbWUpID09PSBudWxsIHx8IF9jID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYy5uYW1lKSB8fCAoKF9kID0gcmVmZXJlbmNlLmRpc3BsYXlOYW1lKSA9PT0gbnVsbCB8fCBfZCA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2QudGV4dCkgfHwgXCJcIn1gO1xuICAgICAgICBjb25zdCAkZWxlbWVudCA9ICQoYDxsaSBrZXk9XCIke3JlZmVyZW5jZS5ub2RlSWQudG9TdHJpbmcoKX1cIn0+PHNwYW4gY2xhc3M9XCJ0cmVlLXRleHRcIiB0aXRsZT0ke3RpdGxlfT48aSBjbGFzcz1cImZhICR7aWNvbn1cIiBzdHlsZT1cImNvbG9yOiR7Y29sb3J9O1wiPjwvaT4gJHt0fTwvc3Bhbj48dWw+PC91bD48L2xpPmApO1xuICAgICAgICAkZWxlbWVudC5hZGRDbGFzcyhcImV4cGFuZGFibGVcIik7XG4gICAgICAgICRlbGVtZW50LmRhdGEoXCJ2YWx1ZVwiLCBuKTtcbiAgICAgICAgJGVsZW1lbnQuZGF0YShcInJlZmVyZW5jZVwiLCByZWZlcmVuY2UpO1xuICAgICAgICByZXR1cm4gJGVsZW1lbnQ7XG4gICAgfTtcbiAgICBjb25zdCBmaW5kRWxlbWVudCA9IChub2RlSWQsICR0cmVlKSA9PiB7XG4gICAgICAgIHJldHVybiAkdHJlZS5maW5kKGBsaVtrZXk9XCIke25vZGVJZH1cIl1gKTtcbiAgICB9O1xuICAgIGNvbnN0IHNlbGVjdFNpbmdsZSA9ICh0aGF0LCAkbGkpID0+IHtcbiAgICAgICAgdGhhdC4kdHJlZS5maW5kKFwibGkgPiAudHJlZS10ZXh0XCIpLnJlbW92ZUNsYXNzKFwic2VsZWN0ZWRcIik7XG4gICAgICAgIC8vIGNsZWFyIGFsbCBzZWxlY3RlZCBpdGVtc1xuICAgICAgICAkbGkuZmluZChcIi50cmVlLXRleHQ6Zmlyc3RcIikuYWRkQ2xhc3MoXCJzZWxlY3RlZFwiKTtcbiAgICB9O1xuICAgIGNvbnN0IGF1dG9FeHBhbmQgPSAodGhhdCwgYnJvd3NlUGF0aCwgJHRyZWUpID0+IF9fYXdhaXRlcih2b2lkIDAsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICAvLyBleHBhbmQgdGhlIHRyZWUgdG8gc2hvdyB0aGUgbm9kZUlkXG4gICAgICAgIGxldCAkY3VycmVudCA9ICR0cmVlLmNoaWxkcmVuKFwiOmZpcnN0XCIpO1xuICAgICAgICBicm93c2VQYXRoLnJlbGF0aXZlUGF0aC5lbGVtZW50cyB8fCBbXTtcbiAgICAgICAgY29uc3Qgbm9kZUlkcyA9IGJyb3dzZVBhdGgubm9kZUlkcyB8fCBbXTtcbiAgICAgICAgaWYgKG5vZGVJZHMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgZm9yIChjb25zdCBuIG9mIG5vZGVJZHMpIHtcbiAgICAgICAgICAgIGlmICgkY3VycmVudC5oYXNDbGFzcyhcImV4cGFuZGFibGVcIikpIHtcbiAgICAgICAgICAgICAgICAvLyBuZWVkIHRvIGV4cGFuZCBhbmQgc2VsZWN0IHRoZSByaWdodCBlbGVtZW50XG4gICAgICAgICAgICAgICAgeWllbGQgX2V4cGFuZExpKHRoYXQsICRjdXJyZW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0ICRlbGVtZW50ID0gZmluZEVsZW1lbnQobiwgJGN1cnJlbnQpO1xuICAgICAgICAgICAgaWYgKCRlbGVtZW50Lmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICRjdXJyZW50ID0gJGVsZW1lbnQ7XG4gICAgICAgIH1cbiAgICAgICAgc2VsZWN0U2luZ2xlKHRoYXQsICRjdXJyZW50KTtcbiAgICAgICAgc2Nyb2xsVG9MaSh0aGF0LiRkcm9wZG93biwgJGN1cnJlbnQpO1xuICAgIH0pO1xuICAgIGZ1bmN0aW9uIHNjcm9sbFRvTGkoJGNvbnRhaW5lciwgJHRhcmdldExpKSB7XG4gICAgICAgIC8vIEdldCB0aGUgcG9zaXRpb24gb2YgdGhlIHRhcmdldCBpdGVtIHJlbGF0aXZlIHRvIGl0cyBjb250YWluZXJcbiAgICAgICAgY29uc3QgbGlQb3MgPSAkdGFyZ2V0TGkucG9zaXRpb24oKS50b3A7XG4gICAgICAgIC8vIEdldCB0aGUgY3VycmVudCBzY3JvbGwgcG9zaXRpb24gb2YgdGhlIGNvbnRhaW5lclxuICAgICAgICBjb25zdCBjb250YWluZXJTY3JvbGxUb3AgPSAkY29udGFpbmVyLnNjcm9sbFRvcCgpO1xuICAgICAgICBpZiAoY29udGFpbmVyU2Nyb2xsVG9wID09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIC8vIENhbGN1bGF0ZSB0aGUgcG9zaXRpb24gdG8gc2Nyb2xsIHRvIChjdXJyZW50IHNjcm9sbCArIGl0ZW0ncyBwb3NpdGlvbilcbiAgICAgICAgLy8gQWRqdXN0IHRoaXMgY2FsY3VsYXRpb24gYmFzZWQgb24geW91ciBuZWVkc1xuICAgICAgICBjb25zdCBzY3JvbGxUbyA9IGNvbnRhaW5lclNjcm9sbFRvcCArIGxpUG9zIC0gJGNvbnRhaW5lci5oZWlnaHQoKSAvIDIgKyAkdGFyZ2V0TGkuaGVpZ2h0KCkgLyAyO1xuICAgICAgICAvLyBTY3JvbGwgdGhlIGNvbnRhaW5lciB0byBlbnN1cmUgdGhlIGl0ZW0gaXMgdmlzaWJsZVxuICAgICAgICAkY29udGFpbmVyLmFuaW1hdGUoe1xuICAgICAgICAgICAgc2Nyb2xsVG9wOiBzY3JvbGxUbyxcbiAgICAgICAgfSwgNTAwKTsgLy8gQWRqdXN0IHRoZSBkdXJhdGlvbiAoNTAwbXMpIGFzIG5lZWRlZFxuICAgIH1cbiAgICBjb25zdCByZWFjaFNlbGVjdGlvbiA9ICh0aGF0LCBwYXJlbnROb2RlKSA9PiBfX2F3YWl0ZXIodm9pZCAwLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24qICgpIHtcbiAgICAgICAgY29uc3Qgbm9kZUlkID0gdGhhdC4kaW5wdXQudmFsKCk7XG4gICAgICAgIGNvbnN0IG9wdGlvbnMgPSB7XG4gICAgICAgICAgICBub2RlSWQsXG4gICAgICAgICAgICByb290Tm9kZUlkOiBwYXJlbnROb2RlLm5vZGVJZCxcbiAgICAgICAgICAgIGlzVHlwZTogdGhhdC5vcHRpb25zLmlzVHlwZVJlZiB8fCBmYWxzZSxcbiAgICAgICAgfTtcbiAgICAgICAgY29uc3QgZGF0YSA9IG1ha2VDb25uZWN0aW9uKHRoYXQpO1xuICAgICAgICBjb25zdCBicm93c2VQYXRoID0geWllbGQgd2Fsa0JhY2t3YXJkKGRhdGEsIG9wdGlvbnMpO1xuICAgICAgICBpZiAoIWJyb3dzZVBhdGgpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB5aWVsZCBhdXRvRXhwYW5kKHRoYXQsIGJyb3dzZVBhdGgsIHRoYXQuJHRyZWUpO1xuICAgIH0pO1xuICAgIGZ1bmN0aW9uIF9mZXRjaERhdGFGb3JOb2RlKHRoYXQsICRub2RlLCBmZXRjaEZ1bmMsIGRhdGEpIHtcbiAgICAgICAgcmV0dXJuIF9fYXdhaXRlcih0aGlzLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24qICgpIHtcbiAgICAgICAgICAgIGlmICgkbm9kZS5oYXNDbGFzcyhcImZldGNoZWRcIikpIHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhcImFscmVhZHkgZmV0Y2hlZFwiKTtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoJG5vZGUuaGFzQ2xhc3MoXCJsb2FkaW5nXCIpKSB7XG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2coXCJhbHJlYWR5IGxvYWRpbmdcIik7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJG5vZGUuYWRkQ2xhc3MoXCJsb2FkaW5nXCIpO1xuICAgICAgICAgICAgJG5vZGUuYXBwZW5kKCc8ZGl2IGNsYXNzPVwic3Bpbm5lclwiPjwvZGl2PicpO1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAkbm9kZS5jaGlsZHJlbihcInVsXCIpLmVtcHR5KCk7XG4gICAgICAgICAgICAgICAgY29uc3QgeyByZWZlcmVuY2VzIH0gPSB5aWVsZCBmZXRjaEZ1bmMoJG5vZGUsIGRhdGEpO1xuICAgICAgICAgICAgICAgIC8vIHNvcnQgcmVmZXJlbmNlICAgYnkgYnJvd3NlTmFtZVxuICAgICAgICAgICAgICAgIHJlZmVyZW5jZXMuc29ydCgoYSwgYikgPT4geyB2YXIgX2EsIF9iOyByZXR1cm4gKCgoX2EgPSBhLmJyb3dzZU5hbWUpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5uYW1lKSB8fCBcIlwiKS5sb2NhbGVDb21wYXJlKCgoX2IgPSBiLmJyb3dzZU5hbWUpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5uYW1lKSB8fCBcIlwiKTsgfSk7XG4gICAgICAgICAgICAgICAgZm9yIChjb25zdCByZWZlcmVuY2Ugb2YgcmVmZXJlbmNlcykge1xuICAgICAgICAgICAgICAgICAgICBpZiAodGhhdC5vcHRpb25zLmZpbHRlciAmJiAhdGhhdC5vcHRpb25zLmZpbHRlcihyZWZlcmVuY2UpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBjb25zdCAkZWxlbWVudCA9IG1ha2VFbGVtZW50JDEocmVmZXJlbmNlKTtcbiAgICAgICAgICAgICAgICAgICAgJG5vZGUuY2hpbGRyZW4oXCJ1bFwiKS5hcHBlbmQoJGVsZW1lbnQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAkbm9kZS5hZGRDbGFzcyhcImZldGNoZWRcIik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgICAgICAgJG5vZGUuY2hpbGRyZW4oXCJ1bFwiKS5hcHBlbmQoYDxsaT5lcnJvciAke2Vyci5tZXNzYWdlfTwvbGk+YCk7XG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2coXCJlcnJcIiwgZXJyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICRub2RlLmZpbmQoXCIuc3Bpbm5lclwiKS5yZW1vdmUoKTtcbiAgICAgICAgICAgICRub2RlLnJlbW92ZUNsYXNzKFwibG9hZGluZ1wiKTtcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIGZ1bmN0aW9uIG1ha2VDb25uZWN0aW9uKHRoYXQpIHtcbiAgICAgICAgY29uc3QgZGF0YSA9IHtcbiAgICAgICAgICAgIGJhc2VVcmw6IHRoYXQub3B0aW9ucy5iYXNlVXJsLFxuICAgICAgICAgICAgZW5kcG9pbnROb2RlOiB0eXBlb2YgdGhhdC5vcHRpb25zLmVuZHBvaW50Tm9kZSA9PT0gXCJmdW5jdGlvblwiID8gdGhhdC5vcHRpb25zLmVuZHBvaW50Tm9kZSgpIDogdGhhdC5vcHRpb25zLmVuZHBvaW50Tm9kZSxcbiAgICAgICAgICAgIGVuZHBvaW50OiB0eXBlb2YgdGhhdC5vcHRpb25zLmVuZHBvaW50ID09PSBcImZ1bmN0aW9uXCIgPyB0aGF0Lm9wdGlvbnMuZW5kcG9pbnQoKSA6IHRoYXQub3B0aW9ucy5lbmRwb2ludCxcbiAgICAgICAgfTtcbiAgICAgICAgcmV0dXJuIGRhdGE7XG4gICAgfVxuICAgIGZ1bmN0aW9uIF9leHBhbmRMaSh0aGF0LCAkbGkpIHtcbiAgICAgICAgcmV0dXJuIF9fYXdhaXRlcih0aGlzLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24qICgpIHtcbiAgICAgICAgICAgIGlmICgkbGkuaGFzQ2xhc3MoXCJmZXRjaGVkXCIpKSB7XG4gICAgICAgICAgICAgICAgJGxpLnJlbW92ZUNsYXNzKFwiZXhwYW5kYWJsZVwiKS5hZGRDbGFzcyhcImV4cGFuZGVkXCIpO1xuICAgICAgICAgICAgICAgICRsaS5jaGlsZHJlbihcInVsXCIpLnRvZ2dsZSgpO1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIEZldGNoIG5ldyBkYXRhIGZvciB0aGlzIG5vZGVcbiAgICAgICAgICAgIGNvbnN0IGRhdGEgPSBtYWtlQ29ubmVjdGlvbih0aGF0KTtcbiAgICAgICAgICAgIGNvbnN0IGYgPSAhdGhhdC5vcHRpb25zLmlzVHlwZVJlZiA/IGZldGNoQ2hpbGRyZW4gOiBmZXRjaFN1YnR5cGVzO1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICB5aWVsZCBfZmV0Y2hEYXRhRm9yTm9kZSh0aGF0LCAkbGksIGYsIGRhdGEpO1xuICAgICAgICAgICAgICAgIC8vIG1hcmsgYXMgZXhwYW5kZWRcbiAgICAgICAgICAgICAgICAkbGkucmVtb3ZlQ2xhc3MoXCJleHBhbmRhYmxlXCIpLmFkZENsYXNzKFwiZXhwYW5kZWRcIik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgICAgICAgJGxpLnJlbW92ZUNsYXNzKFwiZXhwYW5kYWJsZVwiKS5hZGRDbGFzcyhcImV4cGFuZGVkXCIpO1xuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiZXJyb3JcIiwgZXJyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuICAgIGNvbnN0IGRlZmF1bHRQYXJlbnROb2RlID0ge1xuICAgICAgICBicm93c2VOYW1lOiB7IG5hbWVzcGFjZUluZGV4OiAwLCBuYW1lOiBcIk9iamVjdHNcIiB9LFxuICAgICAgICBub2RlQ2xhc3M6IFwiT2JqZWN0XCIsXG4gICAgICAgIG5vZGVJZDogXCJucz0wO2k9ODVcIixcbiAgICAgICAgZGlzcGxheU5hbWU6IHsgdGV4dDogXCJPYmplY3RzXCIgfSxcbiAgICAgICAgdHlwZURlZmluaXRpb246IEZvbGRlclR5cGUsXG4gICAgfTtcbiAgICBjb25zdCBkZWNsYXJlTm9kZUJyb3dzZXJXaWRnZXQgPSAoKSA9PiB7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBbIFRlbXBlcmF0dXJlICBdXG4gICAgICAgICAqICAgKCB0b29sdGlwIDogKC9PYmplY3RzL015U2Vuc29yKSAobnM9MTtzPVRlbXBlcmF0dXJlKSlcbiAgICAgICAgICogWyArIFtGb2xkZXJdIE9iamVjdHNdXG4gICAgICAgICAqIFsgICAgIFtPYmplY3RdIE15U2Vuc29yXVxuICAgICAgICAgKiBbICAgICAoICkgW1ZhcmlhYmxlXSBUZW1wZXJhdHVyZV1cbiAgICAgICAgICovXG4gICAgICAgICQud2lkZ2V0KFwic3RlcmZpdmUubm9kZUJyb3dzZXJcIiwge1xuICAgICAgICAgICAgLyogZGVmYXVsdCBvcHRpb25zICovXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgICAgZW5kcG9pbnROb2RlOiAoKSA9PiAoeyBlbmRwb2ludDogXCJvcGMudGNwOi8vb3BjdWFkZW1vLnN0ZXJmaXZlLmNvbToyNjU0M1wiIH0pLFxuICAgICAgICAgICAgICAgIGVuZHBvaW50OiAoKSA9PiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgcGFyZW50Tm9kZTogKCkgPT4gZGVmYXVsdFBhcmVudE5vZGUsXG4gICAgICAgICAgICAgICAgZmlsdGVyOiAoKSA9PiB0cnVlLFxuICAgICAgICAgICAgICAgIGJhc2VVcmw6IFwiXCIsXG4gICAgICAgICAgICAgICAgaXNUeXBlUmVmOiBmYWxzZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICByZXNvbHZlUGFyZW50Tm9kZSgpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gX19hd2FpdGVyKHRoaXMsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCB0aGF0ID0gdGhpcztcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoYXQuX19wYXJlbnROb2RlID09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgYSA9IHR5cGVvZiB0aGF0Lm9wdGlvbnMucGFyZW50Tm9kZSA9PT0gXCJmdW5jdGlvblwiID8gdGhhdC5vcHRpb25zLnBhcmVudE5vZGUuY2FsbCh0aGF0KSA6IHRoYXQub3B0aW9ucy5wYXJlbnROb2RlO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGEgaW5zdGFuY2VvZiBQcm9taXNlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZGVzYyA9IHlpZWxkIGE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5fX3BhcmVudE5vZGUgPSBkZXNjO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5fX3BhcmVudE5vZGUgPSBhO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGF0Ll9fcGFyZW50Tm9kZSB8fCBkZWZhdWx0UGFyZW50Tm9kZTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICByZXNldCgpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gX19hd2FpdGVyKHRoaXMsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCB0aGF0ID0gdGhpcztcbiAgICAgICAgICAgICAgICAgICAgLy8gYWxzbyByZXNldCBwYXJlbnQgbm9kZVxuICAgICAgICAgICAgICAgICAgICBjb25zdCBhID0gdGhhdDtcbiAgICAgICAgICAgICAgICAgICAgYS5fX3BhcmVudE5vZGUgPSB1bmRlZmluZWQ7XG4gICAgICAgICAgICAgICAgICAgIHRoYXQuJHRyZWUuZW1wdHkoKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcGFyZW50Tm9kZSA9IHlpZWxkIHRoaXMucmVzb2x2ZVBhcmVudE5vZGUoKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgJGVsZW1lbnQgPSBtYWtlRWxlbWVudCQxKHBhcmVudE5vZGUpO1xuICAgICAgICAgICAgICAgICAgICB0aGF0LiR0cmVlLmFwcGVuZCgkZWxlbWVudCk7XG4gICAgICAgICAgICAgICAgICAgIHRoYXQuY3VycmVudFBhcmVudCA9IHBhcmVudE5vZGU7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgdmVyaWZ5KG1vZGUpIHtcbiAgICAgICAgICAgICAgICBjb25zdCB0aGF0ID0gdGhpcztcbiAgICAgICAgICAgICAgICAvLyBGZXRjaCBuZXcgZGF0YSBmb3IgdGhpcyBub2RlXG4gICAgICAgICAgICAgICAgY29uc3QgZGF0YSA9IG1ha2VDb25uZWN0aW9uKHRoYXQpO1xuICAgICAgICAgICAgICAgIGludGVybmFsVmVyaWZ5KGRhdGEsIG1vZGUsIHRoYXQuJGlucHV0LCB0aGF0LiRpbmZvKS50aGVuKChzdWNjZXNzKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmICghc3VjY2Vzcykge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC4kY29tYm8uYWRkQ2xhc3MoXCJzdGVyZml2ZS1pbnB1dC1lcnJvclwiKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuJGNvbWJvLnJlbW92ZUNsYXNzKFwic3RlcmZpdmUtaW5wdXQtZXJyb3JcIik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBfaGlkZU1lbnUobWVudSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHRoYXQgPSB0aGlzO1xuICAgICAgICAgICAgICAgICQoZG9jdW1lbnQpLm9mZihcIm1vdXNlZG93bi5yZWQtdWktdHlwZWRJbnB1dC1jbG9zZS1wcm9wZXJ0eS1zZWxlY3RcIik7XG4gICAgICAgICAgICAgICAgbWVudS5oaWRlKCk7XG4gICAgICAgICAgICAgICAgbWVudS5jc3Moe1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IFwiYXV0b1wiLFxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIGlmIChtZW51Lm9wdHMubXVsdGlwbGUpIHtcbiAgICAgICAgICAgICAgICAgICAgdmFyIHNlbGVjdGVkID0gW107XG4gICAgICAgICAgICAgICAgICAgIG1lbnUuZmluZCgnaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdJykuZWFjaChmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoJCh0aGlzKS5wcm9wKFwiY2hlY2tlZFwiKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdGVkLnB1c2goJCh0aGlzKS5kYXRhKFwidmFsdWVcIikpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgbWVudS5jYWxsYmFjayhzZWxlY3RlZCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICh0aGF0LiRlbGVtZW50RGl2LmlzKFwiOnZpc2libGVcIikpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhhdC4kaW5wdXQudHJpZ2dlcihcImZvY3VzXCIpO1xuICAgICAgICAgICAgICAgICAgICAvL3h4IH0gZWxzZSBpZiAodGhpcy4kb3B0aW9uU2VsZWN0VHJpZ2dlci5pcyhcIjp2aXNpYmxlXCIpKSB7XG4gICAgICAgICAgICAgICAgICAgIC8veHggICAgIHRoYXQuJG9wdGlvblNlbGVjdFRyaWdnZXIudHJpZ2dlcihcImZvY3VzXCIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdGhhdC4kc2VsZWN0VHJpZ2dlci50cmlnZ2VyKFwiZm9jdXNcIik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIF9jcmVhdGVNZW51KG1lbnVPcHRpb25zLCBvcHRzLCBjYWxsYmFjaykge1xuICAgICAgICAgICAgICAgIHZhciB0aGF0ID0gdGhpcztcbiAgICAgICAgICAgICAgICBjb25zdCBtZW51ID0gJChcIjxkaXY+XCIpLmFkZENsYXNzKFwic3RlcmZpdmUtdHlwZWRJbnB1dC1vcHRpb25zIHN0ZXJmaXZlLW9ubGluZS1tZW51XCIpO1xuICAgICAgICAgICAgICAgIG1lbnUub3B0cyA9IG9wdHM7XG4gICAgICAgICAgICAgICAgbWVudS5jYWxsYmFjayA9IGNhbGxiYWNrO1xuICAgICAgICAgICAgICAgIG1lbnVPcHRpb25zLmZvckVhY2goKG9wdCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAodHlwZW9mIG9wdCA9PT0gXCJzdHJpbmdcIikge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3B0ID0geyB2YWx1ZTogb3B0LCBsYWJlbDogb3B0IH07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgdmFyIG9wID0gJCgnPGEgaHJlZj1cIiNcIj48L2E+JykuYXR0cihcInZhbHVlXCIsIG9wdC52YWx1ZSkuYXBwZW5kVG8obWVudSk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChvcHQubGFiZWwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wLnRleHQob3B0LmxhYmVsKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBpZiAob3B0LnRpdGxlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcC5wcm9wKFwidGl0bGVcIiwgb3B0LnRpdGxlKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBpZiAob3B0Lmljb24pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChvcHQuaWNvbi5pbmRleE9mKFwiPFwiKSA9PT0gMCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICQob3B0Lmljb24pLnByZXBlbmRUbyhvcCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChvcHQuaWNvbi5pbmRleE9mKFwiL1wiKSAhPT0gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKFwiPGk+XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M6IFwicmVkLXVpLXR5cGVkSW5wdXQtaWNvblwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZTogXCJtYXNrLWltYWdlOiB1cmwoXCIgKyBvcHQuaWNvbiArIFwiKTsgLXdlYmtpdC1tYXNrLWltYWdlOiB1cmwoXCIgKyBvcHQuaWNvbiArIFwiKTtcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KS5wcmVwZW5kVG8ob3ApO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJChcIjxpPlwiLCB7IGNsYXNzOiBcInJlZC11aS10eXBlZElucHV0LWljb24gXCIgKyBvcHQuaWNvbiB9KS5wcmVwZW5kVG8ob3ApO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3AuY3NzKHsgcGFkZGluZ0xlZnQ6IFwiMThweFwiIH0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGlmICghb3B0Lmljb24gJiYgIW9wdC5sYWJlbCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3AudGV4dChvcHQudmFsdWUpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHZhciBjYjtcbiAgICAgICAgICAgICAgICAgICAgaWYgKG9wdHMubXVsdGlwbGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNiID0gJCgnPGlucHV0IHR5cGU9XCJjaGVja2JveFwiPicpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNzcyhcInBvaW50ZXItZXZlbnRzXCIsIFwibm9uZVwiKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5kYXRhKFwidmFsdWVcIiwgb3B0LnZhbHVlKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5wcmVwZW5kVG8ob3ApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLm9uKFwibW91c2Vkb3duXCIsIGZ1bmN0aW9uIChldnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBldnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIG9wLm9uKFwiY2xpY2tcIiwgZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoIW9wdHMubXVsdGlwbGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYWxsYmFjayhvcHQudmFsdWUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuX2hpZGVNZW51KG1lbnUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2IucHJvcChcImNoZWNrZWRcIiwgIWNiLnByb3AoXCJjaGVja2VkXCIpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgbWVudS5jc3Moe1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBtZW51Lm9uKFwia2V5ZG93blwiLCBmdW5jdGlvbiAoZXZ0KSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChldnQua2V5Q29kZSA9PT0gNDApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGV2dC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gRE9XTlxuICAgICAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5jaGlsZHJlbihcIjpmb2N1c1wiKS5uZXh0KCkudHJpZ2dlcihcImZvY3VzXCIpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKGV2dC5rZXlDb2RlID09PSAzOCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZXZ0LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBVUFxuICAgICAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5jaGlsZHJlbihcIjpmb2N1c1wiKS5wcmV2KCkudHJpZ2dlcihcImZvY3VzXCIpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKGV2dC5rZXlDb2RlID09PSAyNykge1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gRVNDQVBFXG4gICAgICAgICAgICAgICAgICAgICAgICBldnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuX2hpZGVNZW51KG1lbnUpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGV2dC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICByZXR1cm4gbWVudTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBkaXNhcm1DbGljazogZmFsc2UsXG4gICAgICAgICAgICBfc2hvd01lbnUobWVudSwgcmVsYXRpdmVUbykge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmRpc2FybUNsaWNrKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGlzYXJtQ2xpY2sgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB2YXIgdGhhdCA9IHRoaXM7XG4gICAgICAgICAgICAgICAgdmFyIHBvcyA9IHJlbGF0aXZlVG8ub2Zmc2V0KCk7XG4gICAgICAgICAgICAgICAgdmFyIGhlaWdodCA9IHJlbGF0aXZlVG8uaGVpZ2h0KCk7XG4gICAgICAgICAgICAgICAgdmFyIG1lbnVIZWlnaHQgPSBtZW51LmhlaWdodCgpO1xuICAgICAgICAgICAgICAgIHZhciB0b3AgPSBoZWlnaHQgKyBwb3MudG9wO1xuICAgICAgICAgICAgICAgIGlmICh0b3AgKyBtZW51SGVpZ2h0IC0gJChkb2N1bWVudCkuc2Nyb2xsVG9wKCkgPiAkKHdpbmRvdykuaGVpZ2h0KCkpIHtcbiAgICAgICAgICAgICAgICAgICAgdG9wIC09IHRvcCArIG1lbnVIZWlnaHQgLSAkKHdpbmRvdykuaGVpZ2h0KCkgKyA1O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAodG9wIDwgMCkge1xuICAgICAgICAgICAgICAgICAgICBtZW51LmhlaWdodChtZW51SGVpZ2h0ICsgdG9wKTtcbiAgICAgICAgICAgICAgICAgICAgdG9wID0gMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgbWVudS5jc3Moe1xuICAgICAgICAgICAgICAgICAgICB0b3A6IHRvcCArIFwicHhcIixcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogcG9zLmxlZnQgKyBcInB4XCIsXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgbWVudS5zbGlkZURvd24oMTAwKTtcbiAgICAgICAgICAgICAgICB0aGlzLl9kZWxheShmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoYXQuJHVpU2VsZWN0LmFkZENsYXNzKFwicmVkLXVpLXR5cGVkSW5wdXQtZm9jdXNcIik7XG4gICAgICAgICAgICAgICAgICAgICQoZG9jdW1lbnQpLm9uKFwibW91c2Vkb3duLnJlZC11aS10eXBlZElucHV0LWNsb3NlLXByb3BlcnR5LXNlbGVjdFwiLCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghJChldmVudC50YXJnZXQpLmNsb3Nlc3QobWVudSkubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5faGlkZU1lbnUobWVudSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoJChldmVudC50YXJnZXQpLmNsb3Nlc3QocmVsYXRpdmVUbykubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5kaXNhcm1DbGljayA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgX3Nob3dUeXBlTWVudSgpIHtcbiAgICAgICAgICAgICAgICBjb25zdCB0aGF0ID0gdGhpcztcbiAgICAgICAgICAgICAgICB0aGlzLl9zaG93TWVudSh0aGF0LiRtZW51LCB0aGF0LiRjb21ibyk7XG4gICAgICAgICAgICAgICAgdGhhdC4kZHJvcGRvd24uaGlkZSgpO1xuICAgICAgICAgICAgICAgIGNvbnN0IHR5cGUgPSB0aGF0LnNlbGVjdGVkTWVudUl0ZW07XG4gICAgICAgICAgICAgICAgdmFyIHNlbGVjdGVkID0gdGhhdC4kbWVudS5maW5kKFwiW3ZhbHVlPSdcIiArIHR5cGUgKyBcIidcIik7XG4gICAgICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgICAgIHNlbGVjdGVkLnRyaWdnZXIoXCJmb2N1c1wiKTtcbiAgICAgICAgICAgICAgICB9LCAxMjApO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIF9pbml0TWVudSgpIHtcbiAgICAgICAgICAgICAgICBjb25zdCB0aGF0ID0gdGhpcztcbiAgICAgICAgICAgICAgICB0aGF0LiRzZWxlY3RUcmlnZ2VyLmF0dHIoXCJ0YWJpbmRleFwiLCAtMSk7XG4gICAgICAgICAgICAgICAgdGhhdC4kc2VsZWN0VHJpZ2dlci5vbihcIm1vdXNlZG93bi5yZWQtdWktdHlwZWRJbnB1dC1mb2N1cy1ibG9ja1wiLCBmdW5jdGlvbiAoZXZ0KSB7XG4gICAgICAgICAgICAgICAgICAgIGV2dC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIGlmICh0aGF0LiRtZW51KSB7XG4gICAgICAgICAgICAgICAgICAgIHRoYXQuJG1lbnUucmVtb3ZlKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8vIGZhLWlkLWNhcmRcbiAgICAgICAgICAgICAgICBjb25zdCB0eXBlTGlzdCA9IFtcbiAgICAgICAgICAgICAgICAgICAgeyBsYWJlbDogXCJ0ZXh0XCIsIHZhbHVlOiBcInRcIiwgdGl0bGU6IFwiVmFsdWUgaXMgbm90IHZlcmlmaWVkXCIsIGljb246ICc8aSBjbGFzcz1cImZhIGZhLWZvbnRcIi9pPiAnIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsOiBcIm1zZy5cIixcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBcIm1zZ1wiLFxuICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IFwibm9kZSBpZCBvciAgYnJvd3NlIHBhdGggY29tZXMgZnJvbSBpbmplY3RlZCBtc2cgcGFyYW1ldGVyXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICBpY29uOiAnPGkgY2xhc3M9XCJmYSBmYS1lbnZlbG9wZS1vcGVuLW9cIi8+JyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBsYWJlbDogXCJOb2RlSWRcIiwgdmFsdWU6IFwiblwiLCBpY29uOiAnPGkgY2xhc3M9XCJmYSBmYS10YWdcIi8+MSAmbmJzcDsgJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IGxhYmVsOiBcIkFsaWFzZWQgTm9kZUlkXCIsIHZhbHVlOiBcIm5hXCIsIGljb246ICc8aSBjbGFzcz1cImZhIGZhLWJvb2ttYXJrXCIvPiZuYnNwOyAnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbGFiZWw6IFwiTm9kZUlkIHdpdGggbmFtZXNwYWNlIFVyblwiLCB2YWx1ZTogXCJuc3VcIiwgaWNvbjogJzxpIGNsYXNzPVwiZmEgZmEtaWQtY2FyZFwiLz4mbmJzcDsgJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IGxhYmVsOiBcIkJyb3dzZVBhdGhcIiwgdmFsdWU6IFwiYlwiLCBpY29uOiAnPGkgY2xhc3M9XCJmYSBmYS10YWdcIi8+PGkgY2xhc3M9XCJmYSBmYS1maWdodGVyLWpldFwiLz4mbmJzcDsnIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsOiBcIkFsaWFzZWQgQnJvd3NlIFBhdGhcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBcImFiXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICBpY29uOiAnPGkgY2xhc3M9XCJmYSBmYS1ib29rbWFya1wiLz48aSBjbGFzcz1cImZhIGZhLWZpZ2h0ZXItamV0XCIvPiZuYnNwOycsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgXTtcbiAgICAgICAgICAgICAgICBjb25zdCBhID0gZmlndXJlT3V0TWVuVUl0ZW1WYWx1ZSh0aGF0LiRpbnB1dC52YWwoKSk7XG4gICAgICAgICAgICAgICAgY29uc3QgZSA9IHR5cGVMaXN0LmZpbmQoKHgpID0+IHgudmFsdWUgPT09IGEpO1xuICAgICAgICAgICAgICAgIHRoYXQuJHNlbGVjdExhYmVsLmVtcHR5KCkuYXBwZW5kKGA8c3BhbiB0aXRsZT0keyhlID09PSBudWxsIHx8IGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGUudGl0bGUpIHx8IFwiXCJ9PiZuYnNwOyAkeyhlID09PSBudWxsIHx8IGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGUuaWNvbikgfHwgXCJcIn08L3NwYW4+YCk7XG4gICAgICAgICAgICAgICAgdGhhdC5zZWxlY3RlZE1lbnVJdGVtID0gYTtcbiAgICAgICAgICAgICAgICBjb25zdCB0dCA9IHRoaXM7XG4gICAgICAgICAgICAgICAgdGhhdC4kbWVudSA9IHRoaXMuX2NyZWF0ZU1lbnUodHlwZUxpc3QsIHt9LCAodikgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBtb2RlID0gdG9Nb2RlKHYpO1xuICAgICAgICAgICAgICAgICAgICBpZiAobW9kZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gb24gTWVudSBzZWxlY3RlZCAhXG4gICAgICAgICAgICAgICAgICAgICAgICB0dC52ZXJpZnkobW9kZSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZSA9IHR5cGVMaXN0LmZpbmQoKHgpID0+IHgudmFsdWUgPT09IHYpO1xuICAgICAgICAgICAgICAgICAgICB0aGF0LnNlbGVjdGVkTWVudUl0ZW0gPSB2O1xuICAgICAgICAgICAgICAgICAgICB0aGF0LiRzZWxlY3RMYWJlbC5lbXB0eSgpLmFwcGVuZChgPHNwYW4gdGl0bGU9JHsoZSA9PT0gbnVsbCB8fCBlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBlLnRpdGxlKSB8fCBcIlwifT4mbmJzcDsgJHsoZSA9PT0gbnVsbCB8fCBlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBlLmljb24pIHx8IFwiXCJ9PC9zcGFuPmApO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIHRoYXQuJG1lbnUuYXBwZW5kVG8oZG9jdW1lbnQuYm9keSk7XG4gICAgICAgICAgICAgICAgdGhhdC4kbWVudS5oaWRlKCk7XG4gICAgICAgICAgICAgICAgdGhhdC4kc2VsZWN0VHJpZ2dlci5zaG93KCk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgbW9kZSgpIHtcbiAgICAgICAgICAgICAgICBjb25zdCB0aGF0ID0gdGhpcztcbiAgICAgICAgICAgICAgICByZXR1cm4gdG9Nb2RlKHRoYXQuc2VsZWN0ZWRNZW51SXRlbSk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgc2V0TW9kZShtb2RlKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgdGhhdCA9IHRoaXM7XG4gICAgICAgICAgICAgICAgY29uc3QgcyA9IGZyb21Nb2RlKG1vZGUpO1xuICAgICAgICAgICAgICAgIHRoYXQuc2VsZWN0ZWRNZW51SXRlbSA9IHM7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgX2NyZWF0ZSgpIHtcbiAgICAgICAgICAgICAgICAvLyBkZWJ1Z2dlcjtcbiAgICAgICAgICAgICAgICBjb25zdCB0aGF0ID0gdGhpcztcbiAgICAgICAgICAgICAgICB0aGF0LiRpbnB1dCA9IHRoaXMuZWxlbWVudDtcbiAgICAgICAgICAgICAgICB0aGF0LiRpbnB1dC5jc3MoXCJib3JkZXJcIiwgXCJub25lXCIpO1xuICAgICAgICAgICAgICAgIC8vIHRoYXQuJGlucHV0LmFkZENsYXNzKFwicmVkLXVpLXR5cGVkSW5wdXRcIik7XG4gICAgICAgICAgICAgICAgdGhhdC4kZWxlbWVudERpdiA9IHRoYXQuJGlucHV0LndyYXAoXCI8ZGl2PlwiKS5wYXJlbnQoKS5hZGRDbGFzcyhcIm1haW4td3JhcHBlclwiKTtcbiAgICAgICAgICAgICAgICAvLyAjcmVnaW9uIENvbWJvIGJyb3dzZXJcbiAgICAgICAgICAgICAgICB0aGF0LiRjb21ibyA9ICQoXCI8ZGl2Lz5cIik7XG4gICAgICAgICAgICAgICAgdGhhdC4kY29tYm8uYWRkQ2xhc3MoXCJzdGVyZml2ZS1jb21iby1ib3hcIik7XG4gICAgICAgICAgICAgICAgLy8gdGhhdC4kY29tYm8uYWRkQ2xhc3MoXCJyZWQtdWktdHlwZWRJbnB1dC1pbnB1dC13cmFwXCIpO1xuICAgICAgICAgICAgICAgIHRoYXQuJGlucHV0LnJlcGxhY2VXaXRoKHRoYXQuJGNvbWJvKTtcbiAgICAgICAgICAgICAgICB0aGF0LiRpbnB1dEdyb3VwID0gJChcIjxkaXYvPlwiKS5hZGRDbGFzcyhcInN0ZXJmaXZlLWlucHV0LWdyb3VwXCIpO1xuICAgICAgICAgICAgICAgIHRoYXQuJGNvbWJvLmFwcGVuZCh0aGF0LiRpbnB1dEdyb3VwKTtcbiAgICAgICAgICAgICAgICB0aGF0LiRpbnB1dEdyb3VwLmFwcGVuZCh0aGF0LiRpbnB1dCk7XG4gICAgICAgICAgICAgICAgLy8gI2VuZHJlZ2lvblxuICAgICAgICAgICAgICAgIC8vICNyZWdpb24gYWRkIGJ1dHRvbiBvbiB0aGUgcmlnaHQgc2lkZVxuICAgICAgICAgICAgICAgIC8vICNyZWdpb24gdG9nZ2xlVHJlZUJ0blxuICAgICAgICAgICAgICAgIHRoYXQuJHRvZ2dsZVRyZWVCdG4gPSAkKGA8YnV0dG9uIHRpdGxlPVwib3BlbiBPUENVQSBBZGRyZXNzU3BhY2UgQnJvd3NlclwiPjxpIGNsYXNzPVwiZmEgZmEtc2l0ZW1hcFwiPjwvaT48L2J1dHRvbj5gKTtcbiAgICAgICAgICAgICAgICB0aGF0LiRpbnB1dC5hZnRlcih0aGF0LiR0b2dnbGVUcmVlQnRuKTtcbiAgICAgICAgICAgICAgICB0aGF0LiR0b2dnbGVUcmVlQnRuLm9uKFwiY2xpY2tcIiwgZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gX19hd2FpdGVyKHRoaXMsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdmFyIF9hO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IG5lZWRUb1JlYWNoU2VsZWN0aW9uID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgcGFyZW50Tm9kZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghdGhhdC4kZHJvcGRvd24uaXMoXCI6dmlzaWJsZVwiKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuJGluZm8uaGlkZSgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRyZWUgd2lkZ2V0IGlzIGdvaW5nIHRvIGJlY29tZSB2aXNpYmxlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFyZW50Tm9kZSA9IHlpZWxkIHRoYXQucmVzb2x2ZVBhcmVudE5vZGUoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocGFyZW50Tm9kZSAhPT0gdGhhdC5jdXJyZW50UGFyZW50IHx8ICgoX2EgPSB0aGF0LmN1cnJlbnRQYXJlbnQpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5ub2RlSWQpICE9PSBwYXJlbnROb2RlLm5vZGVJZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB5aWVsZCB0aGF0LnJlc2V0KCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5lZWRUb1JlYWNoU2VsZWN0aW9uID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuJGRyb3Bkb3duLnRvZ2dsZSgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgbmVlZFRvUmVhY2hTZWxlY3Rpb24gJiYgKHlpZWxkIHJlYWNoU2VsZWN0aW9uKHRoYXQsIHBhcmVudE5vZGUpKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgLy8gI2VuZHJlZ2lvblxuICAgICAgICAgICAgICAgIC8vICNyZWdpb24gdmVyaWZ5QnRuXG4gICAgICAgICAgICAgICAgdGhhdC4kdmVyaWZ5QnRuID0gJChgPGJ1dHRvbiB0aXRsZT1cInZlcmlmeSBub2RlSWQgb3IgYnJvd3NlUGF0aFwiPjxpIGNsYXNzPVwiZmEgZmEtcmVmcmVzaFwiPjwvaT48L2J1dHRvbj5gKTtcbiAgICAgICAgICAgICAgICB0aGF0LiRpbnB1dC5hZnRlcih0aGF0LiR2ZXJpZnlCdG4pO1xuICAgICAgICAgICAgICAgIHRoYXQuJHZlcmlmeUJ0bi5vbihcImNsaWNrXCIsICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgbW9kZSA9IHRoYXQubW9kZSgpO1xuICAgICAgICAgICAgICAgICAgICBpZiAoIW1vZGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB0aGlzLnZlcmlmeShtb2RlKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAvLyAjZW5kcmVnaW9uXG4gICAgICAgICAgICAgICAgLy8gI2VuZHJlZ2lvblxuICAgICAgICAgICAgICAgIGNvbnN0IG5vcm1hbGl6ZUlucHV0ID0gKGlucHV0KSA9PiBfX2F3YWl0ZXIodGhpcywgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKiAoKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHRoYXQgPSB0aGlzO1xuICAgICAgICAgICAgICAgICAgICBsZXQgbW9kZSA9IHRoYXQubW9kZSgpO1xuICAgICAgICAgICAgICAgICAgICBpZiAoIW1vZGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAvLyBGZXRjaCBuZXcgZGF0YSBmb3IgdGhpcyBub2RlXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGNvbm5lY3Rpb25EYXRhID0gbWFrZUNvbm5lY3Rpb24odGhhdCk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHsgZGF0YSwganNvbiB9ID0geWllbGQgX2NhbGxDaGVja05vZGVJZChjb25uZWN0aW9uRGF0YSwgaW5wdXQpO1xuICAgICAgICAgICAgICAgICAgICBpZiAoZGF0YS5zdGF0dXMgIT09IDIwMCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGlmIChqc29uLnN0YXR1c0NvZGUubWF0Y2goL0dvb2QvKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc2VsZWN0ZWROb2RlSWQgPSBjaG9vc2VOb2RlSWQoanNvbiwgbW9kZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGF0LiRpbnB1dC52YWwoc2VsZWN0ZWROb2RlSWQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC4kaW5wdXQudHJpZ2dlcihcImNoYW5nZVwiKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICAgICAgICAgIC8vIGNyZWF0ZSB0aGUgcHJlcGVuZGVkIGJ1dHRvblxuICAgICAgICAgICAgICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgdGhhdC4kdWlTZWxlY3QgPSAkKFwiPGRpdj5cIik7XG4gICAgICAgICAgICAgICAgICAgIHRoYXQuJGlucHV0LmJlZm9yZSh0aGF0LiR1aVNlbGVjdCk7XG4gICAgICAgICAgICAgICAgICAgIHRoYXQuJHNlbGVjdFRyaWdnZXIgPSAkKCc8YnV0dG9uIHR5cGU9XCJidXR0b25cIiB0YWJpbmRleD1cIjBcIj48L2J1dHRvbj4nKS5wcmVwZW5kVG8odGhhdC4kdWlTZWxlY3QpO1xuICAgICAgICAgICAgICAgICAgICAkKCc8aSBjbGFzcz1cInJlZC11aS10eXBlZElucHV0LWljb24gZmEgZmEtY2FyZXQtZG93blwiPjwvaT4nKS50b2dnbGUodHJ1ZSkuYXBwZW5kVG8odGhhdC4kc2VsZWN0VHJpZ2dlcik7XG4gICAgICAgICAgICAgICAgICAgIHRoYXQuJHNlbGVjdFRyaWdnZXIub24oXCJjbGlja1wiLCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuX3Nob3dUeXBlTWVudSgpO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgdGhhdC4kc2VsZWN0VHJpZ2dlclxuICAgICAgICAgICAgICAgICAgICAgICAgLm9uKFwia2V5ZG93blwiLCBmdW5jdGlvbiAoZXZ0KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoZXZ0LmtleUNvZGUgPT09IDQwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gRG93blxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuX3Nob3dUeXBlTWVudSgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgZXZ0LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgLm9uKFwiZm9jdXNcIiwgZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC4kdWlTZWxlY3QuYWRkQ2xhc3MoXCJyZWQtdWktdHlwZWRJbnB1dC1mb2N1c1wiKTtcbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICAgIC5vbihcImJsdXJcIiwgZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gdmFyIG9wdCA9IHRoYXQudHlwZU1hcFt0aGF0LnByb3BlcnR5VHlwZV07XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBpZiAob3B0Lmhhc1ZhbHVlID09PSBmYWxzZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC4kdWlTZWxlY3QucmVtb3ZlQ2xhc3MoXCJyZWQtdWktdHlwZWRJbnB1dC1mb2N1c1wiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIH1cbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIHRoYXQuJHNlbGVjdExhYmVsID0gJCgnPHNwYW4gY2xhc3M9XCJyZWQtdWktdHlwZWRJbnB1dC10eXBlLWxhYmVsXCI+PC9zcGFuPicpLmFwcGVuZFRvKHRoYXQuJHNlbGVjdFRyaWdnZXIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0aGlzLl9pbml0TWVudSgpO1xuICAgICAgICAgICAgICAgIGlmICghdGhhdC4kaW5wdXQuYXR0cihcInBsYWNlaG9sZGVyXCIpKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoYXQuJGlucHV0LmF0dHIoXCJwbGFjZWhvbGRlclwiLCBcImVudGVyIGEgbm9kZUlkIG9yIGEgYnJvd3NlUGF0aCBcIik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8vICNyZWdpb24gdGVtcG9yYXR5IGluZm8gcGFuZWxcbiAgICAgICAgICAgICAgICB0aGF0LiRpbmZvID0gJChgPGRpdiBjbGFzcz1cInN0ZXJmaXZlLWluZm8tdGV4dFwiPjwvZGl2PmApO1xuICAgICAgICAgICAgICAgIHRoYXQuJGluZm8uaGlkZSgpO1xuICAgICAgICAgICAgICAgIHRoYXQuJGNvbWJvLmFwcGVuZCh0aGF0LiRpbmZvKTtcbiAgICAgICAgICAgICAgICAvLyAjZW5kcmVnaW9uXG4gICAgICAgICAgICAgICAgLy8gI3JlZ2lvbiBkcm9wIGRvd24gdHJlZVxuICAgICAgICAgICAgICAgIHRoYXQuJGRyb3Bkb3duID0gJChcIjxkaXYvPlwiKS5hZGRDbGFzcyhcInN0ZXJmaXZlLWRyb3Bkb3duXCIpLmhpZGUoKS5hcHBlbmRUbyh0aGF0LiRjb21ibyk7XG4gICAgICAgICAgICAgICAgdGhhdC4kdHJlZSA9ICQoYDx1bCBjbGFzcz1cInN0ZXJmaXZlLXRyZWVcIj48L3VsPmApLmFwcGVuZFRvKHRoYXQuJGRyb3Bkb3duKTtcbiAgICAgICAgICAgICAgICAvLyB0aGF0LiRkcm9wZG93bi5zaG93KCk7XG4gICAgICAgICAgICAgICAgdGhpcy5yZXNldCgpO1xuICAgICAgICAgICAgICAgIC8vICNlbmRyZWdpb25cbiAgICAgICAgICAgICAgICBjb25zdCBpc09uTGVmdFNpemUgPSAoJGxpLCBldmVudCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBiZWZvcmVXaWR0aCA9IDIwOyAvLyBTZXQgd2lkdGggb2YgdGhlIDo6YmVmb3JlIGNvbnRlbnRcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgYmVmb3JlSGVpZ2h0ID0gMjA7IC8vIFNldCBoZWlnaHQgb2YgdGhlIDo6YmVmb3JlIGNvbnRlbnRcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZWxlbWVudFBvcyA9ICRsaS5vZmZzZXQoKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZSA9IGV2ZW50O1xuICAgICAgICAgICAgICAgICAgICBpZiAoZS5wYWdlWCA+PSBlbGVtZW50UG9zLmxlZnQgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgIGUucGFnZVggPD0gZWxlbWVudFBvcy5sZWZ0ICsgYmVmb3JlV2lkdGggJiZcbiAgICAgICAgICAgICAgICAgICAgICAgIGUucGFnZVkgPj0gZWxlbWVudFBvcy50b3AgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgIGUucGFnZVkgPD0gZWxlbWVudFBvcy50b3AgKyBiZWZvcmVIZWlnaHQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIGNvbnN0IHRvZ2dsZUV4cGFuc2lvbiA9ICgkbGkpID0+IF9fYXdhaXRlcih0aGlzLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24qICgpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCRsaS5oYXNDbGFzcyhcImV4cGFuZGFibGVcIikpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIF9leHBhbmRMaSh0aGF0LCAkbGkpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKCRsaS5oYXNDbGFzcyhcImV4cGFuZGVkXCIpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBUb2dnbGUgaXRzIGV4cGFuZGVkL2NvbGxhcHNlZCBzdGF0ZVxuICAgICAgICAgICAgICAgICAgICAgICAgJGxpLmNoaWxkcmVuKFwidWxcIikudG9nZ2xlKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBTd2FwIGV4cGFuZGFibGUgYW5kIGV4cGFuZGVkIGNsYXNzZXNcbiAgICAgICAgICAgICAgICAgICAgICAgICRsaS50b2dnbGVDbGFzcyhcImV4cGFuZGFibGUgZXhwYW5kZWRcIik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoJGxpLmNoaWxkcmVuKFwidWxcIikuY2hpbGRyZW4oKS5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAkbGkuY2hpbGRyZW4oXCJ1bFwiKS50b2dnbGUoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIFN3YXAgZXhwYW5kYWJsZSBhbmQgZXhwYW5kZWQgY2xhc3Nlc1xuICAgICAgICAgICAgICAgICAgICAgICAgJGxpLnRvZ2dsZUNsYXNzKFwiZXhwYW5kYWJsZSBleHBhbmRlZFwiKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIDtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB0aGF0LiR0cmVlLm9uKFwiZGJsY2xpY2tcIiwgXCJsaVwiLCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgdmFyIF9hLCBfYjtcbiAgICAgICAgICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICAgICAgICAgIGxldCAkbGkgPSAkKHRoaXMpO1xuICAgICAgICAgICAgICAgICAgICBpZiAoaXNPbkxlZnRTaXplKCRsaSwgZXZlbnQpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b2dnbGVFeHBhbnNpb24oJGxpKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gJGxpLmRhdGEoXCJ2YWx1ZVwiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlZmVyZW5jZSA9ICRsaS5kYXRhKFwicmVmZXJlbmNlXCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRoYXQub3B0aW9ucy5pc1NlbGVjdGFibGUgJiYgIXRoYXQub3B0aW9ucy5pc1NlbGVjdGFibGUocmVmZXJlbmNlKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuJGlucHV0LmRhdGEoXCJyZWZlcmVuY2VcIiwgcmVmZXJlbmNlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICgoX2EgPSByZWZlcmVuY2UuZGlzcGxheU5hbWUpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS50ZXh0KSB8fCAoKF9iID0gcmVmZXJlbmNlLmJyb3dzZU5hbWUpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5uYW1lKSB8fCByZWZlcmVuY2Uubm9kZUlkLnRvU3RyaW5nKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBjb25zdCBpbnB1dCA9IGBbJHtkaXNwbGF5TmFtZX1dKCR7dmFsdWV9KWA7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgbW9kZSA9IHRoYXQubW9kZSgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFtb2RlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbW9kZSA9IFwibm9kZUlkXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5zZXRNb2RlKG1vZGUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgbm9ybWFsaXplSW5wdXQodmFsdWUpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRoYXQuJGlucHV0LnZhbChpbnB1dCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gdGhhdC4kaW5wdXQudHJpZ2dlcihcImNoYW5nZVwiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGF0LiRkcm9wZG93bi5oaWRlKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5jYXRjaCgoZXJyKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gdGhhdC4kaW5wdXQudmFsKGlucHV0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB0aGF0LiRpbnB1dC50cmlnZ2VyKFwiY2hhbmdlXCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuJGRyb3Bkb3duLmhpZGUoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgdGhhdC4kdHJlZS5vbihcImNsaWNrXCIsIFwibGlcIiwgZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgICAgICAgICBsZXQgJGxpID0gJCh0aGlzKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGlzT25MZWZ0U2l6ZSgkbGksIGV2ZW50KSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9nZ2xlRXhwYW5zaW9uKCRsaSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgc2VsZWN0U2luZ2xlKHRoYXQsICRsaSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgJChkb2N1bWVudCkub24oXCJjbGlja1wiLCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gY2xpY2tpbmcgb3V0c2lkZSB0aGUgcGFnZSB3aWxsIGhpZGUgdGhlIGRyb3Bkb3duXG4gICAgICAgICAgICAgICAgICAgIGlmICghJChldmVudC50YXJnZXQpLmNsb3Nlc3QodGhhdC4kY29tYm8pLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC4kZHJvcGRvd24uaGlkZSgpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9LFxuICAgICAgICB9KTtcbiAgICB9O1xuXG4gICAgY29uc3QgbWFrZUVsZW1lbnQgPSAocmVmZXJlbmNlKSA9PiB7XG4gICAgICAgIHZhciBfYSwgX2IsIF9jO1xuICAgICAgICBpZiAoIXJlZmVyZW5jZSkge1xuICAgICAgICAgICAgY29uc3QgJGVsZW1lbnQgPSAkKGA8bGk+PGkgY2xhc3M9XCJmYSBmYS1lcnJvclwiIHN0eWxlPVwiY29sb3I6cmVkO1wiPjwvaT5ubyByZWZlcmVuY2UgITx1bD48L3VsPjwvbGk+YCk7XG4gICAgICAgICAgICByZXR1cm4gJGVsZW1lbnQ7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgbiA9IHJlZmVyZW5jZS5ub2RlSWQudG9TdHJpbmcoKTtcbiAgICAgICAgbGV0IHQgPSAoKF9hID0gcmVmZXJlbmNlLmRpc3BsYXlOYW1lKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EudGV4dCkgfHwgKChfYiA9IHJlZmVyZW5jZS5icm93c2VOYW1lKSA9PT0gbnVsbCB8fCBfYiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2IubmFtZSkgfHwgcmVmZXJlbmNlLm5vZGVJZC50b1N0cmluZygpO1xuICAgICAgICBsZXQgbnMgPSAoX2MgPSByZWZlcmVuY2UuYnJvd3NlTmFtZSkgPT09IG51bGwgfHwgX2MgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9jLm5hbWVzcGFjZUluZGV4O1xuICAgICAgICB0ICs9IG5zICE9PSB1bmRlZmluZWQgJiYgcmVmZXJlbmNlLm5vZGVDbGFzcy5tYXRjaCgvVHlwZS8pID8gYCAobnM9JHtuc30pYCA6IFwiXCI7XG4gICAgICAgIGNvbnN0IHsgaWNvbiwgY29sb3IgfSA9IGdldEljb24ocmVmZXJlbmNlKTtcbiAgICAgICAgY29uc3QgJGVsZW1lbnQgPSAkKGA8bGk+YCk7XG4gICAgICAgIGlmIChyZWZlcmVuY2Uubm9kZUNsYXNzID09PSBcIlZhcmlhYmxlXCIpIHtcbiAgICAgICAgICAgIGNvbnN0IGNoZWNrQm94ID0gJCgnPHNwYW4gY2xhc3M9XCJjdXN0b20tY2hlY2tib3ggdW5jaGVja2VkXCI+PC9zcGFuPicpO1xuICAgICAgICAgICAgJGVsZW1lbnQuYXBwZW5kKGNoZWNrQm94KTtcbiAgICAgICAgICAgIC8vIFRvZ2dsZSBjaGVja2JveCBzdGF0ZSB3aGVuIGNsaWNrZWRcbiAgICAgICAgICAgIGNoZWNrQm94Lm9uKFwiY2xpY2tcIiwgZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgIGlmIChjaGVja0JveC5oYXNDbGFzcyhcInVuY2hlY2tlZFwiKSkge1xuICAgICAgICAgICAgICAgICAgICBjaGVja0JveC5yZW1vdmVDbGFzcyhcInVuY2hlY2tlZFwiKS5hZGRDbGFzcyhcImNoZWNrZWRcIik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBjaGVja0JveC5yZW1vdmVDbGFzcyhcImNoZWNrZWRcIikuYWRkQ2xhc3MoXCJ1bmNoZWNrZWRcIik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgJGVsZW1lbnQuYXBwZW5kKCQoYDxpIGNsYXNzPVwiZmEgJHtpY29ufVwiIHN0eWxlPVwiY29sb3I6JHtjb2xvcn07XCI+PC9pPiR7dH08dWw+PC91bD5gKSk7XG4gICAgICAgICRlbGVtZW50LmFkZENsYXNzKFwiZXhwYW5kYWJsZVwiKTtcbiAgICAgICAgJGVsZW1lbnQuZGF0YShcInZhbHVlXCIsIG4pO1xuICAgICAgICAkZWxlbWVudC5kYXRhKFwicmVmZXJlbmNlXCIsIHJlZmVyZW5jZSk7XG4gICAgICAgIHJldHVybiAkZWxlbWVudDtcbiAgICB9O1xuICAgIGNvbnN0IGRlY2xhcmVFdmVudEZpZWxkU2VsZWN0b3JXaWRnZXQgPSAoKSA9PiB7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBbIFRlbXBlcmF0dXJlICBdXG4gICAgICAgICAqICAgKCB0b29sdGlwIDogKC9PYmplY3RzL015U2Vuc29yKSAobnM9MTtzPVRlbXBlcmF0dXJlKSlcbiAgICAgICAgICogWyArIFtGb2xkZXJdIE9iamVjdHNdXG4gICAgICAgICAqIFsgICAgIFtPYmplY3RdIE15U2Vuc29yXVxuICAgICAgICAgKiBbICAgICAoICkgW1ZhcmlhYmxlXSBUZW1wZXJhdHVyZV1cbiAgICAgICAgICovXG4gICAgICAgICQud2lkZ2V0KFwic3RlcmZpdmUuZXZlbnRGaWVsZFNlbGVjdG9yXCIsIHtcbiAgICAgICAgICAgIC8qIGRlZmF1bHQgb3B0aW9ucyAqL1xuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICAgIGVuZHBvaW50Tm9kZTogKCkgPT4gKHsgZW5kcG9pbnQ6IFwib3BjLnRjcDovL29wY3VhZGVtby5zdGVyZml2ZS5jb206MjY1NDNcIiB9KSxcbiAgICAgICAgICAgICAgICBlbmRwb2ludDogKCkgPT4gdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgIGJhc2VVcmw6IFwiXCIsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgX3BvcHVsYXRlKCkge1xuICAgICAgICAgICAgICAgIHJldHVybiBfX2F3YWl0ZXIodGhpcywgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKiAoKSB7XG4gICAgICAgICAgICAgICAgICAgIHZhciBfYTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgdGhhdCA9IHRoaXM7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHNlbGVjdGVkRmllbGQgPSBuZXcgU2V0KCgoX2EgPSB0aGF0LiRpbnB1dC52YWwoKSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLnRvU3RyaW5nKCkuc3BsaXQoXCI7XCIpKSB8fCBbXSk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGRhdGEgPSBtYWtlQ29ubmVjdGlvbih0aGF0KTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0geWllbGQgZXh0cmFjdEV2ZW50RmllbGRJbmZvKGRhdGEpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9pbnN0YWxsVHJlZShyZXN1bHQsIHNlbGVjdGVkRmllbGQpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIF9pbnN0YWxsVHJlZShyZXN1bHQsIHNlbGVjdEZpZWxkKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgdGhhdCA9IHRoaXM7XG4gICAgICAgICAgICAgICAgdGhhdC4kdHJlZS5lbXB0eSgpO1xuICAgICAgICAgICAgICAgIGlmICghcmVzdWx0LmV2ZW50cykge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNvbnN0IHJvb3QgPSByZXN1bHQuZXZlbnRzO1xuICAgICAgICAgICAgICAgIGNvbnN0ICRyb290RWxlbWVudCA9IG1ha2VFbGVtZW50KHJvb3QpO1xuICAgICAgICAgICAgICAgIHRoYXQuJHRyZWUuYXBwZW5kKCRyb290RWxlbWVudCk7XG4gICAgICAgICAgICAgICAgY29uc3QgcHJlZml4ID0gXCJcIjtcbiAgICAgICAgICAgICAgICB0aGlzLl9pbnN0YWxsQ2hpbGRyZW4oJHJvb3RFbGVtZW50LmNoaWxkcmVuKFwidWxcIiksIHJvb3QsIHByZWZpeCwgc2VsZWN0RmllbGQpO1xuICAgICAgICAgICAgICAgICRyb290RWxlbWVudC5yZW1vdmVDbGFzcyhcImV4cGFuZGFibGVcIikuYWRkQ2xhc3MoXCJleHBhbmRlZFwiKTtcbiAgICAgICAgICAgICAgICB0aGlzLl91cGRhdGVWYWx1ZXMoc2VsZWN0RmllbGQpO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIF9pbnN0YWxsQ2hpbGRyZW4oJHBhcmVudCwgcGFyZW50LCBwcmVmaXgsIHNlbGVjdGVkRmllbGQpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBiID0gKHsgbmFtZSwgbmFtZXNwYWNlSW5kZXggfSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAobmFtZXNwYWNlSW5kZXggPT09IDApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBuYW1lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBgJHtuYW1lc3BhY2VJbmRleH06JHtuYW1lfWA7XG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICBjb25zdCBjaGlsZHJlbiA9IHBhcmVudC5jaGlsZHJlbiB8fCBbXTtcbiAgICAgICAgICAgICAgICBjb25zdCBzdWJUeXBlcyA9IHBhcmVudC5zdWJUeXBlcyB8fCBbXTtcbiAgICAgICAgICAgICAgICBjb25zdCBjaGlsZHJlbkFuZFN1YlR5cGVzID0gWy4uLmNoaWxkcmVuLCAuLi5zdWJUeXBlc107XG4gICAgICAgICAgICAgICAgZm9yIChjb25zdCBjaGlsZCBvZiBjaGlsZHJlbkFuZFN1YlR5cGVzKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0ICRlbGVtZW50ID0gbWFrZUVsZW1lbnQoY2hpbGQpO1xuICAgICAgICAgICAgICAgICAgICAkcGFyZW50LmFwcGVuZCgkZWxlbWVudCk7XG4gICAgICAgICAgICAgICAgICAgIGxldCBwcmVmaXgyID0gXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGNoaWxkLm5vZGVDbGFzcyA9PT0gXCJWYXJpYWJsZVwiKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAocHJlZml4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJlZml4MiA9IHByZWZpeCArIFwiLlwiICsgYihjaGlsZC5icm93c2VOYW1lKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZWZpeDIgPSBiKGNoaWxkLmJyb3dzZU5hbWUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgJGVsZW1lbnQuYXR0cihcImRhdGEtdmFsdWVcIiwgcHJlZml4Mik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgaGFzQ2hpbGRyZW4gPSBjaGlsZC5jaGlsZHJlbiAmJiBjaGlsZC5jaGlsZHJlbi5sZW5ndGg7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGhhc1N1YlR5cGVzID0gY2hpbGQuc3ViVHlwZXMgJiYgY2hpbGQuc3ViVHlwZXMubGVuZ3RoO1xuICAgICAgICAgICAgICAgICAgICBpZiAoIWhhc0NoaWxkcmVuICYmICFoYXNTdWJUeXBlcykge1xuICAgICAgICAgICAgICAgICAgICAgICAgJGVsZW1lbnQucmVtb3ZlQ2xhc3MoXCJleHBhbmRhYmxlXCIpLmFkZENsYXNzKFwibm8tZXhwYW5kYWJsZVwiKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX2luc3RhbGxDaGlsZHJlbigkZWxlbWVudC5jaGlsZHJlbihcInVsXCIpLCBjaGlsZCwgcHJlZml4Miwgc2VsZWN0ZWRGaWVsZCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAkZWxlbWVudC5yZW1vdmVDbGFzcyhcImV4cGFuZGFibGVcIikuYWRkQ2xhc3MoXCJleHBhbmRlZFwiKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBfdXBkYXRlU2VsZWN0ZWRGaWVsZHMoKSB7XG4gICAgICAgICAgICAgICAgdmFyIF9hO1xuICAgICAgICAgICAgICAgIGNvbnN0IHRoYXQgPSB0aGlzO1xuICAgICAgICAgICAgICAgIGNvbnN0IHNlbGVjdGVkRmllbGRzID0gbmV3IFNldCgoKF9hID0gdGhhdC4kaW5wdXQudmFsKCkpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS50b1N0cmluZygpLnNwbGl0KFwiO1wiKSkgfHwgW10pO1xuICAgICAgICAgICAgICAgIHRoaXMuX3VwZGF0ZVZhbHVlcyhzZWxlY3RlZEZpZWxkcyk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgX3VwZGF0ZVZhbHVlcyhzZWxlY3RlZEZpZWxkcykge1xuICAgICAgICAgICAgICAgICQoXCIuc3RlcmZpdmUtdHJlZSBsaVwiKS5lYWNoKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgJHRoaXMgPSAkKHRoaXMpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCB2ID0gJHRoaXMuYXR0cihcImRhdGEtdmFsdWVcIik7XG4gICAgICAgICAgICAgICAgICAgIGlmICh2ICYmIHNlbGVjdGVkRmllbGRzLmhhcyh2KSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgJHRoaXMuY2hpbGRyZW4oXCJzcGFuLmN1c3RvbS1jaGVja2JveFwiKS5yZW1vdmVDbGFzcyhcInVuY2hlY2tlZFwiKS5hZGRDbGFzcyhcImNoZWNrZWRcIik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBfc2V0SW5wdXRWYWx1ZSgpIHtcbiAgICAgICAgICAgICAgICBjb25zdCB0aGF0ID0gdGhpcztcbiAgICAgICAgICAgICAgICBjb25zdCBsaXN0ID0gW107XG4gICAgICAgICAgICAgICAgLy8gY3Jhd2wgdGhlIHRyZWUgdG8gZmluZCBzZWxlY3RlZCBlbGVtZW50cyBhbmQgY3JlYXRlIGEgbGlzdCBvZiBCcm93c2VQYXRoXG4gICAgICAgICAgICAgICAgJChcIi5zdGVyZml2ZS10cmVlIGxpXCIpLmVhY2goZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCAkdGhpcyA9ICQodGhpcyk7XG4gICAgICAgICAgICAgICAgICAgIC8vIENoZWNrIGlmIHRoZSBlbGVtZW50IGlzIHNlbGVjdGVkXG4gICAgICAgICAgICAgICAgICAgIGlmICgkdGhpcy5jaGlsZHJlbihcInNwYW4uY3VzdG9tLWNoZWNrYm94LmNoZWNrZWRcIikubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdiA9ICR0aGlzLmF0dHIoXCJkYXRhLXZhbHVlXCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHYpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlzdC5wdXNoKHYpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgY29uc3QgdmFsdWUgPSBbLi4ubmV3IFNldChsaXN0KV0uc29ydCgpLmpvaW4oXCI7XCIpO1xuICAgICAgICAgICAgICAgIHRoYXQuJGlucHV0LnZhbCh2YWx1ZSk7XG4gICAgICAgICAgICAgICAgdGhhdC4kaW5wdXQudHJpZ2dlcihcImNoYW5nZVwiKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBfY3JlYXRlKCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHRoYXQgPSB0aGlzO1xuICAgICAgICAgICAgICAgIHRoYXQuJGlucHV0ID0gdGhpcy5lbGVtZW50O1xuICAgICAgICAgICAgICAgIHRoYXQuJGNvbWJvID0gJChcIjxkaXYvPlwiKTtcbiAgICAgICAgICAgICAgICB0aGF0LiRjb21iby5hZGRDbGFzcyhcInN0ZXJmaXZlLWNvbWJvLWJveFwiKTtcbiAgICAgICAgICAgICAgICB0aGlzLmVsZW1lbnRbMF0ucGFyZW50RWxlbWVudC5yZXBsYWNlQ2hpbGQodGhhdC4kY29tYm9bMF0sIHRoaXMuZWxlbWVudFswXSk7XG4gICAgICAgICAgICAgICAgLy8gdGhpcy5lbGVtZW50LnJlcGxhY2VXaXRoKHRoYXQuJGNvbWJvKTtcbiAgICAgICAgICAgICAgICB0aGF0LiRpbnB1dEdyb3VwID0gJChcIjxkaXYvPlwiKS5hZGRDbGFzcyhcImlucHV0LWdyb3VwXCIpO1xuICAgICAgICAgICAgICAgIHRoYXQuJGNvbWJvLmFwcGVuZCh0aGF0LiRpbnB1dEdyb3VwKTtcbiAgICAgICAgICAgICAgICB0aGF0LiRpbnB1dEdyb3VwLmFwcGVuZCh0aGF0LiRpbnB1dCk7XG4gICAgICAgICAgICAgICAgdGhhdC4kdG9nZ2xlVHJlZUJ0biA9ICQoYDxidXR0b24+PGkgY2xhc3M9XCJmYSBmYS1zaXRlbWFwXCI+PC9pPjwvYnV0dG9uPmApO1xuICAgICAgICAgICAgICAgIHRoYXQuJGlucHV0R3JvdXAuYXBwZW5kKHRoYXQuJHRvZ2dsZVRyZWVCdG4pO1xuICAgICAgICAgICAgICAgIHRoYXQuJHRvZ2dsZVRyZWVCdG4ub24oXCJjbGlja1wiLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoYXQuJGRyb3Bkb3duLnRvZ2dsZSgpO1xuICAgICAgICAgICAgICAgICAgICB0aGF0LiRpbmZvLnRvZ2dsZSgpO1xuICAgICAgICAgICAgICAgICAgICBpZiAodGhhdC4kZHJvcGRvd24uaXMoXCI6dmlzaWJsZVwiKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgJGZsb2F0aW5nQnV0dG9ucy5zaG93KCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBvZmZzZXQgPSB0aGF0LiRkcm9wZG93bi5vZmZzZXQoKTsgLy8gR2V0IHRoZSB0b3AtbGVmdCBjb3JuZXIgcG9zaXRpb25cbiAgICAgICAgICAgICAgICAgICAgICAgICRmbG9hdGluZ0J1dHRvbnMuY3NzKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IGAke29mZnNldC50b3B9cHhgLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiBgY2FsYygxMDAlIC0gJHtvZmZzZXQubGVmdCArIHRoYXQuJGRyb3Bkb3duLndpZHRoKCl9cHgpYCxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5fcG9wdWxhdGUoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuX3VwZGF0ZVNlbGVjdGVkRmllbGRzKCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAkZmxvYXRpbmdCdXR0b25zLmhpZGUoKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIGlmICghdGhhdC4kaW5wdXQuYXR0cihcInBsYWNlaG9sZGVyXCIpKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoYXQuJGlucHV0LmF0dHIoXCJwbGFjZWhvbGRlclwiLCBcImVudGVyIGEgbm9kZUlkIG9yIGEgYnJvd3NlUGF0aCBcIik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRoYXQuJGluZm8gPSAkKGA8ZGl2IGNsYXNzPVwic3RlcmZpdmUtaW5mby10ZXh0XCI+PC9kaXY+YCk7XG4gICAgICAgICAgICAgICAgdGhhdC4kaW5mby5oaWRlKCk7XG4gICAgICAgICAgICAgICAgdGhhdC4kZHJvcGRvd24gPSAkKFwiPGRpdi8+XCIpLmFkZENsYXNzKFwic3RlcmZpdmUtZHJvcGRvd25cIikuaGlkZSgpO1xuICAgICAgICAgICAgICAgIC8vIGNvbnN0ICRzY3JvbGxhYmxlQ29udGVudCA9ICQoJzxkaXYgY2xhc3M9XCJzdGVyZml2ZS1kcm9wZG93bi1zY3JvbGxhYmxlLWNvbnRlbnRcIj48L2Rpdj4nKTtcbiAgICAgICAgICAgICAgICBjb25zdCAkdmFsaWRhdGVCdXR0b24gPSAkKCc8c3BhbiBjbGFzcz1cInZhbGlkYXRlLWJ1dHRvblwiPuKclDwvc3Bhbj4nKTsgLy8gVXNlIGFueSBpY29uIG9yIHRleHQgaGVyZVxuICAgICAgICAgICAgICAgIGNvbnN0ICRjYW5jZWxCdXR0b24gPSAkKCc8c3BhbiBjbGFzcz1cImNhbmNlbC1idXR0b25cIj7inJY8L3NwYW4+Jyk7IC8vIFVzZSBhbnkgaWNvbiBvciB0ZXh0IGhlcmVcbiAgICAgICAgICAgICAgICBjb25zdCAkZmxvYXRpbmdCdXR0b25zID0gJCgnPGRpdiBjbGFzcz1cImZsb2F0aW5nLWJ1dHRvbnNcIj48L2Rpdj4nKS5hcHBlbmQoJHZhbGlkYXRlQnV0dG9uLCAkY2FuY2VsQnV0dG9uKTtcbiAgICAgICAgICAgICAgICAkZmxvYXRpbmdCdXR0b25zLmhpZGUoKTtcbiAgICAgICAgICAgICAgICAvLyBEZWZpbmUgeW91ciB2YWxpZGF0aW9uIGFuZCBjYW5jZWxsYXRpb24gbG9naWNcbiAgICAgICAgICAgICAgICAkdmFsaWRhdGVCdXR0b24ub24oXCJjbGlja1wiLCAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoYXQuX3NldElucHV0VmFsdWUoKTtcbiAgICAgICAgICAgICAgICAgICAgdGhhdC4kZHJvcGRvd24uaGlkZSgpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICRjYW5jZWxCdXR0b24ub24oXCJjbGlja1wiLCAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoYXQuJGRyb3Bkb3duLmhpZGUoKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB0aGF0LiRjb21iby5hcHBlbmQodGhhdC4kaW5mbyk7XG4gICAgICAgICAgICAgICAgdGhhdC4kY29tYm8uYXBwZW5kKHRoYXQuJGRyb3Bkb3duKTtcbiAgICAgICAgICAgICAgICB0aGF0LiR0cmVlID0gJChgPHVsIGNsYXNzPVwic3RlcmZpdmUtdHJlZVwiPjwvdWw+YCk7XG4gICAgICAgICAgICAgICAgdGhhdC4kZHJvcGRvd24uZW1wdHkoKS5hcHBlbmQodGhhdC4kdHJlZSwgJGZsb2F0aW5nQnV0dG9ucyk7XG4gICAgICAgICAgICAgICAgdGhhdC4kdHJlZS5vbihcImNsaWNrXCIsIFwibGlcIiwgZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgICAgICAgICBsZXQgJGxpID0gJCh0aGlzKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgYmVmb3JlV2lkdGggPSAyMDsgLy8gU2V0IHdpZHRoIG9mIHRoZSA6OmJlZm9yZSBjb250ZW50XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGJlZm9yZUhlaWdodCA9IDIwOyAvLyBTZXQgaGVpZ2h0IG9mIHRoZSA6OmJlZm9yZSBjb250ZW50XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGVsZW1lbnRQb3MgPSAkKHRoaXMpLm9mZnNldCgpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBlID0gZXZlbnQ7XG4gICAgICAgICAgICAgICAgICAgIGlmIChlLnBhZ2VYID49IGVsZW1lbnRQb3MubGVmdCAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgZS5wYWdlWCA8PSBlbGVtZW50UG9zLmxlZnQgKyBiZWZvcmVXaWR0aCAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgZS5wYWdlWSA+PSBlbGVtZW50UG9zLnRvcCAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgZS5wYWdlWSA8PSBlbGVtZW50UG9zLnRvcCArIGJlZm9yZUhlaWdodCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coXCJjbGlja2VkIG9uIGljb25cIik7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhcImNsaWNrZWQgb24gXCIsICRsaS5kYXRhKFwidmFsdWVcIiksICRsaS5hdHRyKFwiY2xhc3NcIikpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCRsaS5oYXNDbGFzcyhcImV4cGFuZGFibGVcIikpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkbGkucmVtb3ZlQ2xhc3MoXCJleHBhbmRhYmxlXCIpLmFkZENsYXNzKFwiZXhwYW5kZWRcIik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJGxpLmNoaWxkcmVuKFwidWxcIikudG9nZ2xlKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlmICgkbGkuaGFzQ2xhc3MoXCJleHBhbmRlZFwiKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFRvZ2dsZSBpdHMgZXhwYW5kZWQvY29sbGFwc2VkIHN0YXRlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJGxpLmNoaWxkcmVuKFwidWxcIikudG9nZ2xlKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gU3dhcCBleHBhbmRhYmxlIGFuZCBleHBhbmRlZCBjbGFzc2VzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJGxpLnRvZ2dsZUNsYXNzKFwiZXhwYW5kYWJsZSBleHBhbmRlZFwiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKCRsaS5jaGlsZHJlbihcInVsXCIpLmNoaWxkcmVuKCkubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICRsaS5jaGlsZHJlbihcInVsXCIpLnRvZ2dsZSgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFN3YXAgZXhwYW5kYWJsZSBhbmQgZXhwYW5kZWQgY2xhc3Nlc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICRsaS50b2dnbGVDbGFzcyhcImV4cGFuZGFibGUgZXhwYW5kZWRcIik7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBlbHNlIDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICQoZG9jdW1lbnQpLm9uKFwiY2xpY2tcIiwgZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIGNsaWNraW5nIG91dHNpZGUgdGhlIHBhZ2Ugd2lsbCBoaWRlIHRoZSBkcm9wZG93blxuICAgICAgICAgICAgICAgICAgICBpZiAoISQoZXZlbnQudGFyZ2V0KS5jbG9zZXN0KHRoYXQuJGNvbWJvKS5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuJGRyb3Bkb3duLmhpZGUoKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIHRoaXMuX3BvcHVsYXRlKCk7XG4gICAgICAgICAgICB9LFxuICAgICAgICB9KTtcbiAgICB9O1xuICAgIGNvbnN0IGV4dHJhY3RFdmVudEZpZWxkSW5mbyA9IChfYSkgPT4gX19hd2FpdGVyKHZvaWQgMCwgW19hXSwgdm9pZCAwLCBmdW5jdGlvbiogKHsgZW5kcG9pbnROb2RlLCBlbmRwb2ludCwgYmFzZVVybCwgfSkge1xuICAgICAgICBjb25zdCByb290ID0gYCR7YmFzZVVybH0vb3BjdWEtZm9yLW5vZGUtcmVkYDtcbiAgICAgICAgY29uc3QgdXJsID0gYCR7cm9vdH0vZXh0cmFjdEV2ZW50VHlwZXNgO1xuICAgICAgICBjb25zdCBkYXRhID0geWllbGQgZmV0Y2godXJsLCB7XG4gICAgICAgICAgICBtZXRob2Q6IFwiUE9TVFwiLFxuICAgICAgICAgICAgYm9keTogSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICAgICAgICAgIGVuZHBvaW50Tm9kZSxcbiAgICAgICAgICAgICAgICBlbmRwb2ludCxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgaGVhZGVyczogeyBcIkNvbnRlbnQtVHlwZVwiOiBcImFwcGxpY2F0aW9uL2pzb25cIiB9LFxuICAgICAgICB9KTtcbiAgICAgICAgaWYgKGRhdGEuc3RhdHVzICE9PSAyMDApIHtcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiZmV0Y2hpbmcgZmFpbGVkIHdpdGggZXJyb3JcIiwgZGF0YS5zdGF0dXMsIGRhdGEuc3RhdHVzVGV4dCk7XG4gICAgICAgICAgICByZXR1cm4geyBldmVudHM6IG51bGwgfTtcbiAgICAgICAgfVxuICAgICAgICBjb25zb2xlLmxvZyhcImZldGNoZWQgOiBcIiwgZGF0YS5zdGF0dXMsIGRhdGEuc3RhdHVzVGV4dCk7XG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID0geWllbGQgZGF0YS5qc29uKCk7XG4gICAgICAgIGNvbnN0IGV2ZW50cyA9IHJlc3BvbnNlLmV2ZW50cztcbiAgICAgICAgcmV0dXJuIHsgZXZlbnRzIH07XG4gICAgfSk7XG5cbiAgICAvKipcbiAgICAgKlxuICAgICAqIEByZXR1cm5zIHRoZSBlbmRwb2ludCBhdHRyaWJ1dGVzIGNvbnRhaW5pbmc6XG4gICAgICogIC0gdGhlIGVuZHBvaW50LCBzZWN1cml0eU1vZGUsIHNlY3VyaXR5UG9saWN5LFxuICAgICAqICAtIHVzZXJJZGVudGl0eVR5cGUsXG4gICAgICogIC0gY3JlZGVudGlhbHNcbiAgICAgKiAgLSBuYW1lc3BhY2VBbGlhc2VzXG4gICAgICpcbiAgICAgKiBleHRyYWN0ZWQgZnJvbSB0aGUgdWkgd2lkZ2V0ICNub2RlLWlucHV0LWVuZHBvaW50XG4gICAgICovXG4gICAgY29uc3QgZ2V0RW5kUG9pbnRBdHRyaWJ1dGVzID0gKCkgPT4ge1xuICAgICAgICBjb25zdCAkZW5kcG9pbnQgPSAkKFwiI25vZGUtaW5wdXQtZW5kcG9pbnRcIik7XG4gICAgICAgIGNvbnN0IGVuZHBvaW50SWQgPSAkZW5kcG9pbnQudmFsKCk7XG4gICAgICAgIGNvbnN0IHJlZE5vZGUgPSBSRUQubm9kZXMubm9kZShlbmRwb2ludElkKTtcbiAgICAgICAgaWYgKCFyZWROb2RlKVxuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgLy8gY29uc3QgY3JlZGVudGlhbHMgPSBSRUQuKGVuZHBvaW50SWQpO1xuICAgICAgICAvLyB3ZSBuZWVkIHRvIHNhbml0aXplIGFuZCBleHRyYWN0IHRoZSBlbmRwb2ludCBhdHRyaWJ1dGVzIG9ubHkgKCBub3QgdGhlIG5vZGUtcmVkIHN0dWZmKVxuICAgICAgICBjb25zdCB7IGVuZHBvaW50LCBzZWN1cml0eU1vZGUsIHNlY3VyaXR5UG9saWN5LCB1c2VySWRlbnRpdHlUeXBlLCBjcmVkZW50aWFscywgbmFtZXNwYWNlQWxpYXNlcyB9ID0gcmVkTm9kZTtcbiAgICAgICAgY29uc3QgcmV0VmFsdWUgPSB7XG4gICAgICAgICAgICBlbmRwb2ludCxcbiAgICAgICAgICAgIHNlY3VyaXR5TW9kZSxcbiAgICAgICAgICAgIHNlY3VyaXR5UG9saWN5LFxuICAgICAgICAgICAgdXNlcklkZW50aXR5VHlwZSxcbiAgICAgICAgICAgIGNyZWRlbnRpYWxzLFxuICAgICAgICAgICAgbmFtZXNwYWNlQWxpYXNlcyxcbiAgICAgICAgfTtcbiAgICAgICAgcmV0dXJuIHJldFZhbHVlO1xuICAgIH07XG4gICAgY29uc3QgZ2V0RW5kcG9pbnRQYXJhbWV0ZXJzID0gKCkgPT4ge1xuICAgICAgICBjb25zdCAkZW5kcG9pbnQgPSAkKFwiI25vZGUtaW5wdXQtZW5kcG9pbnRcIik7XG4gICAgICAgIGNvbnN0IGVuZHBvaW50SWQgPSAkZW5kcG9pbnQudmFsKCk7XG4gICAgICAgIGNvbnN0IGVuZHBvaW50TnIgPSBnZXRFbmRQb2ludEF0dHJpYnV0ZXMoKTtcbiAgICAgICAgaWYgKCFlbmRwb2ludE5yKSB7XG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG5hbWVzcGFjZUFsaWFzZXMgPSBlbmRwb2ludE5yLm5hbWVzcGFjZUFsaWFzZXM7XG4gICAgICAgIHJldHVybiBPYmplY3QuYXNzaWduKHsgbmFtZXNwYWNlQWxpYXNlcywgaWQ6IGVuZHBvaW50SWQgfSwgZW5kcG9pbnROcik7XG4gICAgfTtcbiAgICBjb25zdCBnZXRFbmRwb2ludFBhcmFtZXRlcnNIYW5kbGVyID0gKCkgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgZW5kcG9pbnROb2RlOiBnZXRFbmRwb2ludFBhcmFtZXRlcnMsXG4gICAgICAgIH07XG4gICAgfTtcblxuICAgIGNvbnN0IGluc3RhbGxGZWVkYmFja1dpZGdldCA9ICgpID0+IHtcbiAgICAgICAgLy8gcmV0dXJuO1xuICAgICAgICAvLyBkZWJ1Z2dlcjtcbiAgICAgICAgY29uc3QgdHJheUNvbnRlbnQgPSAkKFwiLnJlZC11aS10cmF5LWJvZHlcIik7XG4gICAgICAgIGNvbnNvbGUubG9nKFwiaW5zdGFsbEZlZWRiYWNrV2lkZ2V0IFwiLCB0cmF5Q29udGVudC5sZW5ndGgpO1xuICAgICAgICBpZiAodHJheUNvbnRlbnQubGVuZ3RoKSB7XG4gICAgICAgICAgICBjb25zb2xlLmxvZyhcImluc3RhbGxpbmcgaWZyYW1lXCIpO1xuICAgICAgICAgICAgLy8gQ3JlYXRlIHRoZSBpZnJhbWUgZWxlbWVudFxuICAgICAgICAgICAgY29uc3QgaWZyYW1lID0gJChcIjxpZnJhbWU+PC9pZnJhbWU+XCIsIHtcbiAgICAgICAgICAgICAgICBzcmM6IFwiL29wY3VhLWZvci1ub2RlLXJlZC9zdXBwb3J0LWZyYW1lLmh0bWxcIixcbiAgICAgICAgICAgICAgICBzY3JvbGxpbmc6IFwibm9cIixcbiAgICAgICAgICAgICAgICBzdHlsZTogXCJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O292ZXJmbG93OmhpZGRlbjtib3JkZXI6M3B4XCIsXG4gICAgICAgICAgICAgICAgYWxsb3d0cmFuc3BhcmVuY3k6IFwidHJ1ZVwiLFxuICAgICAgICAgICAgICAgIHdpZHRoOiBcIjE4MHB4XCIsXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBcIjMwcHhcIixcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgLy8gQXBwZW5kIHRoZSBpZnJhbWUgdG8gdGhlIGZlZWRiYWNrIGVsZW1lbnRcbiAgICAgICAgICAgIHRyYXlDb250ZW50LmFwcGVuZChpZnJhbWUpO1xuICAgICAgICAgICAgLy8gUG9zaXRpb24gdGhlIGZlZWRiYWNrIGVsZW1lbnQgYXQgdGhlIGJvdHRvbSByaWdodCBvZiB0aGUgdHJheSBjb250ZW50XG4gICAgICAgICAgICBpZnJhbWUuY3NzKHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogXCJhYnNvbHV0ZVwiLFxuICAgICAgICAgICAgICAgIHJpZ2h0OiBcIjIwcHhcIixcbiAgICAgICAgICAgICAgICBib3R0b206IFwiMTZweFwiLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgUkVELm5vZGVzLnJlZ2lzdGVyVHlwZShcIk9wY1VhLUNsaWVudDItTW9uaXRvckV2ZW50XCIsIHtcbiAgICAgICAgY2F0ZWdvcnk6IFwib3BjdWFcIixcbiAgICAgICAgY29sb3I6IFwiI0MwREVFRFwiLFxuICAgICAgICBhbGlnbjogXCJyaWdodFwiLFxuICAgICAgICBpY29uOiBcIm9wY3VhbG9nb2JpZy5wbmdcIixcbiAgICAgICAgcGFsZXR0ZUxhYmVsOiBcIm1vbml0b3IgZXZlbnRzXCIsXG4gICAgICAgIGRlZmF1bHRzOiB7XG4gICAgICAgICAgICBpbnB1dHM6IHsgdmFsdWU6IDEgfSxcbiAgICAgICAgICAgIG91dHB1dDogeyB2YWx1ZTogNCB9LFxuICAgICAgICAgICAgbmFtZTogeyB2YWx1ZTogXCJcIiB9LFxuICAgICAgICAgICAgZW5kcG9pbnQ6IHsgdmFsdWU6IFwiXCIsIHJlcXVpcmVkOiB0cnVlLCB0eXBlOiBcIk9wY1VhLUVuZHBvaW50MlwiIH0sXG4gICAgICAgICAgICBzdWJzY3JpcHRpb246IHtcbiAgICAgICAgICAgICAgICB2YWx1ZTogXCJcIixcbiAgICAgICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICB2YWxpZGF0ZTogKHZhbCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAodmFsID09PSBcIlwiKVxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHN0YXJ0SW1tZWRpYXRlbHk6IHsgdmFsdWU6IHRydWUsIHJlcXVpcmVkOiB0cnVlIH0sXG4gICAgICAgICAgICAvLyB3ZSB1c2UgYSBkaWZmZXJlbnQgd2lkZ2V0IGZvciBlZGl0aW5nIHRoZSBub2RlSWQsIGJlY2F1c2UgdGhlIGJlaGF2aW9yXG4gICAgICAgICAgICAvLyBpcyBzcGVjaWZpYyB0byBtb25pdG9yLCBob3dldmVyIHByb3BlcnR5IHdpbGwgYmUgc3RvcmVkIGluIG5vZGVJZFxuICAgICAgICAgICAgbm9kZUlkOiB7IHZhbHVlOiBcIlwiLCByZXF1aXJlZDogZmFsc2UsIHZhbGlkYXRlOiAoKSA9PiB0cnVlIH0sXG4gICAgICAgICAgICBzYW1wbGluZ0ludGVydmFsOiB7IHZhbHVlOiAxMDAwLCByZXF1aXJlZDogdHJ1ZSB9LFxuICAgICAgICAgICAgZGlzY2FyZE9sZGVzdDogeyB2YWx1ZTogdHJ1ZSwgcmVxdWlyZWQ6IHRydWUgfSxcbiAgICAgICAgICAgIHF1ZXVlU2l6ZTogeyB2YWx1ZTogMTAsIHJlcXVpcmVkOiB0cnVlIH0sXG4gICAgICAgICAgICBzZWxlY3RDbGF1c2VzOiB7IHZhbHVlOiBcIlwiLCByZXF1aXJlZDogdHJ1ZSB9LFxuICAgICAgICAgICAgd2hlcmVDbGF1c2U6IHsgdmFsdWU6IFwiXCIsIHJlcXVpcmVkOiBmYWxzZSB9LFxuICAgICAgICB9LFxuICAgICAgICAvLyBpbnB1dHM6LFxuICAgICAgICBvdXRwdXRzOiAyLCAvLyAyIG91dHB1dCwgc2Vjb25kIGZvciByYXcgbm9kZS1vcGN1YSBkaWFnbm9zdGljcyBvciBtb3JlIGNvbXBsZXRlIG1lc3NhZ2VcbiAgICAgICAgbGFiZWwoKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5uYW1lIHx8IFwiT1BDVUEgTW9uaXRvclwiO1xuICAgICAgICB9LFxuICAgICAgICBsYWJlbFN0eWxlKCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMubmFtZSA/IFwibm9kZV9sYWJlbF9pdGFsaWNcIiA6IFwiXCI7XG4gICAgICAgIH0sXG4gICAgICAgIG9uZWRpdHByZXBhcmUoKSB7XG4gICAgICAgICAgICBkZWNsYXJlTm9kZUJyb3dzZXJXaWRnZXQoKTtcbiAgICAgICAgICAgIGRlY2xhcmVFdmVudEZpZWxkU2VsZWN0b3JXaWRnZXQoKTtcbiAgICAgICAgICAgIGluc3RhbGxTdWJzY3JpcHRpb25TZWxlY3RvcihSRUQsIHRoaXMpO1xuICAgICAgICAgICAgaW5zdGFsbEZlZWRiYWNrV2lkZ2V0KCk7XG4gICAgICAgICAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICAgICAgLy8gaGFuZGxlIEFjdGlvbiBNb25pdG9yIENvbW1vblxuICAgICAgICAgICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgICAgIC8vIC0tIGluc3RhbGwgc3Vic2NyaXB0aW9uIHNlbGVjdGlvblxuICAgICAgICAgICAgJChcIm5vZGUtaW5wdXQtc3RhcnRJbW1lZGlhdGVseVwiKS5vbihcImNoYW5nZVwiLCAoKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgY2hlY2tlZCA9ICQoXCIjbm9kZS1pbnB1dC1zdGFydEltbWVkaWF0ZWx5XCIpLnByb3AoXCJjaGVja2VkXCIpO1xuICAgICAgICAgICAgICAgIGlmIChjaGVja2VkKSB7XG4gICAgICAgICAgICAgICAgICAgICQoXCIjbm9kZS1pbnB1dC1pbnB1dHNcIikudmFsKDApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgJChcIiNub2RlLWlucHV0LWlucHV0c1wiKS52YWwoMSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICAgICAgLy8gaGFuZGxlIEFjdGlvbiBNb25pdG9yXG4gICAgICAgICAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICAgICAgY29uc3QgJG5vZGVJZCA9ICQoXCIjbm9kZS1pbnB1dC1ub2RlSWRcIik7XG4gICAgICAgICAgICAkbm9kZUlkLm5vZGVCcm93c2VyKE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSwgZ2V0RW5kcG9pbnRQYXJhbWV0ZXJzSGFuZGxlcigpKSwgeyBmaWx0ZXIobm9kZURlc2MpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG5vZGVEZXNjLm5vZGVDbGFzcyA9PT0gXCJPYmplY3RcIjtcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIGlzU2VsZWN0YWJsZShub2RlRGVzYykge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gbm9kZURlc2Mubm9kZUNsYXNzID09PSBcIk9iamVjdFwiIC8qIHRvIGRvIHx8IG5vZGVEZXNjLmV2ZW50Tm90aWZpZXIgPT09IDEgKi87XG4gICAgICAgICAgICAgICAgfSB9KSk7XG4gICAgICAgICAgICAvLyAtLS0tLS0gaW5zdGFsbCBldmVudCBmaWVsZCBzZWxlY3RvclxuICAgICAgICAgICAgJChcIiNub2RlLWlucHV0LXdoZXJlQ2xhdXNlXCIpO1xuICAgICAgICAgICAgY29uc3QgJHNlbGVjdENsYXVzZXMgPSAkKFwiI25vZGUtaW5wdXQtc2VsZWN0Q2xhdXNlc1wiKTtcbiAgICAgICAgICAgICRzZWxlY3RDbGF1c2VzLmV2ZW50RmllbGRTZWxlY3RvcihPYmplY3QuYXNzaWduKHt9LCBnZXRFbmRwb2ludFBhcmFtZXRlcnNIYW5kbGVyKCkpKTtcbiAgICAgICAgfSxcbiAgICAgICAgb25lZGl0c2F2ZSgpIHtcbiAgICAgICAgICAgIGNvbnN0IHN0YXJ0SW1tZWRpYXRlbHkgPSAkKFwiI25vZGUtaW5wdXQtc3RhcnRJbW1lZGlhdGVseVwiKS5wcm9wKFwiY2hlY2tlZFwiKTtcbiAgICAgICAgICAgIGlmIChzdGFydEltbWVkaWF0ZWx5KSB7XG4gICAgICAgICAgICAgICAgJChcIiNub2RlLWlucHV0LXN0YXJ0SW1tZWRpYXRlbHlcIikudmFsKHN0YXJ0SW1tZWRpYXRlbHkgPyAwIDogMSk7XG4gICAgICAgICAgICAgICAgdGhpcy5pbnB1dHMgPSBzdGFydEltbWVkaWF0ZWx5ID8gMCA6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAkKFwiI25vZGUtaW5wdXQtc3RhcnRJbW1lZGlhdGVseVwiKS52YWwoMSk7XG4gICAgICAgICAgICAgICAgdGhpcy5pbnB1dHMgPSAxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9LFxuICAgIH0pO1xuXG59KSgpOyJdfQ==
7
+ (function(_0x53d944,_0x25c07e){const _0x56b284=_0x2272,_0x21ff5a=_0x53d944();while(!![]){try{const _0x24c896=-parseInt(_0x56b284(0x250))/0x1*(parseInt(_0x56b284(0x1f5))/0x2)+parseInt(_0x56b284(0x187))/0x3+-parseInt(_0x56b284(0x16e))/0x4*(parseInt(_0x56b284(0x243))/0x5)+parseInt(_0x56b284(0x1d0))/0x6*(parseInt(_0x56b284(0x226))/0x7)+-parseInt(_0x56b284(0x1d7))/0x8+parseInt(_0x56b284(0x230))/0x9+-parseInt(_0x56b284(0x25f))/0xa;if(_0x24c896===_0x25c07e)break;else _0x21ff5a['push'](_0x21ff5a['shift']());}catch(_0x339234){_0x21ff5a['push'](_0x21ff5a['shift']());}}}(_0x3804,0xe16d4),(function(){'use strict';const _0x1afd75=_0x2272;function _0x342abe(_0x3edc57,_0x16b472){const _0x2547cc=_0x2272,_0x27526c=$('#node-input-endpoint'),_0x493c19=$(_0x2547cc(0x217)),_0x25e6ac=()=>{const _0x44a25f=_0x2547cc,_0x362937=_0x3edc57[_0x44a25f(0x161)][_0x44a25f(0x257)](_0x27526c[_0x44a25f(0x150)]());_0x493c19[_0x44a25f(0x191)]();if(!_0x362937||!_0x362937[_0x44a25f(0x182)])return;for(const _0x14918f of _0x362937[_0x44a25f(0x182)]){const _0x43ee34=_0x14918f[_0x44a25f(0x281)]||_0x14918f['id'];$(_0x44a25f(0x215),{'value':_0x14918f['id'],'label':_0x43ee34,'selected':_0x14918f['id']===_0x16b472[_0x44a25f(0x223)]})[_0x44a25f(0x198)](_0x43ee34)[_0x44a25f(0x25d)](_0x493c19);}};_0x25e6ac(),_0x493c19['on'](_0x2547cc(0x1c3),()=>{const _0x5480dc=_0x2547cc;_0x16b472['subscription']=_0x493c19[_0x5480dc(0x150)]();}),_0x27526c['on'](_0x2547cc(0x1c3),()=>{_0x25e6ac();});}function _0x3eaa92(_0x3b1f13,_0x132b5a,_0x4f9239,_0x3b85c7){function _0x4981b0(_0x26b877){return _0x26b877 instanceof _0x4f9239?_0x26b877:new _0x4f9239(function(_0x2d875c){_0x2d875c(_0x26b877);});}return new(_0x4f9239||(_0x4f9239=Promise))(function(_0x2ebbc3,_0x49a0bf){const _0x30f6bc=_0x2272;function _0x293674(_0xc64045){const _0x5ad394=_0x2272;try{_0x3747c0(_0x3b85c7[_0x5ad394(0x189)](_0xc64045));}catch(_0x560e1e){_0x49a0bf(_0x560e1e);}}function _0x1b32a5(_0x4059d1){const _0x5d14e4=_0x2272;try{_0x3747c0(_0x3b85c7[_0x5d14e4(0x1b2)](_0x4059d1));}catch(_0x1edeb8){_0x49a0bf(_0x1edeb8);}}function _0x3747c0(_0x3947e7){const _0x53dec3=_0x2272;_0x3947e7[_0x53dec3(0x274)]?_0x2ebbc3(_0x3947e7[_0x53dec3(0x1d3)]):_0x4981b0(_0x3947e7[_0x53dec3(0x1d3)])[_0x53dec3(0x17f)](_0x293674,_0x1b32a5);}_0x3747c0((_0x3b85c7=_0x3b85c7[_0x30f6bc(0x170)](_0x3b1f13,_0x132b5a||[]))[_0x30f6bc(0x189)]());});}typeof SuppressedError==='function'?SuppressedError:function(_0x2d106c,_0x3c3cca,_0x609216){const _0xf935a7=_0x2272;var _0x5693e2=new Error(_0x609216);return _0x5693e2['name']=_0xf935a7(0x20c),_0x5693e2['error']=_0x2d106c,_0x5693e2[_0xf935a7(0x173)]=_0x3c3cca,_0x5693e2;};const _0x2472e0=_0x1afd75(0x297),_0x1a715b=_0x1afd75(0x17b),_0x6cfea1=_0x1afd75(0x20d),_0x1383f4=_0x1afd75(0x228),_0x154264=_0x1afd75(0x175),_0x4d15aa=_0x1afd75(0x17e),_0x5ca3b4=_0x1afd75(0x166);var _0x303ba7;(function(_0x17cdfd){const _0x488e29=_0x1afd75;_0x17cdfd[_0x17cdfd['Forward']=0x0]='Forward',_0x17cdfd[_0x17cdfd[_0x488e29(0x185)]=0x1]=_0x488e29(0x185),_0x17cdfd[_0x17cdfd['Both']=0x2]=_0x488e29(0x18b),_0x17cdfd[_0x17cdfd[_0x488e29(0x296)]=0x3]=_0x488e29(0x296);}(_0x303ba7||(_0x303ba7={})));var _0x5c5768;(function(_0xacd3c5){const _0x334ecb=_0x1afd75;_0xacd3c5[_0xacd3c5[_0x334ecb(0x196)]=0x0]='Unspecified',_0xacd3c5[_0xacd3c5[_0x334ecb(0x220)]=0x1]=_0x334ecb(0x220),_0xacd3c5[_0xacd3c5['Variable']=0x2]=_0x334ecb(0x1df),_0xacd3c5[_0xacd3c5[_0x334ecb(0x1e4)]=0x4]=_0x334ecb(0x1e4),_0xacd3c5[_0xacd3c5[_0x334ecb(0x1a8)]=0x8]=_0x334ecb(0x1a8),_0xacd3c5[_0xacd3c5['VariableType']=0x10]=_0x334ecb(0x18e),_0xacd3c5[_0xacd3c5[_0x334ecb(0x24f)]=0x20]=_0x334ecb(0x24f),_0xacd3c5[_0xacd3c5[_0x334ecb(0x200)]=0x40]=_0x334ecb(0x200),_0xacd3c5[_0xacd3c5['View']=0x80]='View';}(_0x5c5768||(_0x5c5768={})));var _0x3939f9;(function(_0x1d4828){const _0x11d557=_0x1afd75;_0x1d4828[_0x1d4828[_0x11d557(0x220)]=0x1]=_0x11d557(0x220),_0x1d4828[_0x1d4828[_0x11d557(0x1df)]=0x2]=_0x11d557(0x1df),_0x1d4828[_0x1d4828['Method']=0x4]='Method',_0x1d4828[_0x1d4828[_0x11d557(0x1a8)]=0x8]='ObjectType',_0x1d4828[_0x1d4828[_0x11d557(0x18e)]=0x10]=_0x11d557(0x18e),_0x1d4828[_0x1d4828[_0x11d557(0x24f)]=0x20]=_0x11d557(0x24f),_0x1d4828[_0x1d4828[_0x11d557(0x200)]=0x40]='DataType',_0x1d4828[_0x1d4828['View']=0x80]=_0x11d557(0x21b);}(_0x3939f9||(_0x3939f9={})));var _0x54a22c;(function(_0x331580){const _0x124145=_0x1afd75;_0x331580[_0x331580[_0x124145(0x24f)]=0x1]=_0x124145(0x24f),_0x331580[_0x331580[_0x124145(0x272)]=0x2]='IsForward',_0x331580[_0x331580[_0x124145(0x26a)]=0x4]='NodeClass',_0x331580[_0x331580[_0x124145(0x23c)]=0x8]='BrowseName',_0x331580[_0x331580[_0x124145(0x24e)]=0x10]=_0x124145(0x24e),_0x331580[_0x331580['TypeDefinition']=0x20]=_0x124145(0x25b);}(_0x54a22c||(_0x54a22c={})));function _0x81f283(_0x583132){const _0xff335d=_0x1afd75;switch(_0x583132){case'Organizes':return _0x2472e0;case _0xff335d(0x158):return _0x1383f4;case'HasComponent':return _0x6cfea1;case _0xff335d(0x1f1):return _0x154264;case _0xff335d(0x27c):return _0x4d15aa;case _0xff335d(0x1e3):return _0x5ca3b4;}}const _0x55944b=_0x8820eb=>{const _0xf9f4f5=_0x1afd75;switch(_0x8820eb['nodeClass']){case _0xf9f4f5(0x220):if(_0x8820eb[_0xf9f4f5(0x219)]===_0x2472e0);if(_0x8820eb[_0xf9f4f5(0x23a)]===_0x1a715b||_0x8820eb[_0xf9f4f5(0x219)]===_0xf9f4f5(0x209))return{'icon':_0xf9f4f5(0x284),'color':_0xf9f4f5(0x1d9)};return{'icon':_0xf9f4f5(0x1c6),'color':_0xf9f4f5(0x22e)};case _0xf9f4f5(0x1df):if(_0x8820eb[_0xf9f4f5(0x219)]===_0x6cfea1)return{'icon':_0xf9f4f5(0x1eb),'color':_0xf9f4f5(0x1d6)};else return _0x8820eb[_0xf9f4f5(0x219)]===_0x1383f4?{'icon':_0xf9f4f5(0x1eb),'color':_0xf9f4f5(0x216)}:{'icon':_0xf9f4f5(0x1eb),'color':_0xf9f4f5(0x1f0)};case _0xf9f4f5(0x1e4):return{'icon':_0xf9f4f5(0x282),'color':_0xf9f4f5(0x1b7)};case _0xf9f4f5(0x1a8):return{'icon':_0xf9f4f5(0x1c6),'color':_0xf9f4f5(0x221)};case _0xf9f4f5(0x18e):return{'icon':_0xf9f4f5(0x260),'color':'DarkOrange'};case _0xf9f4f5(0x200):return{'icon':'fa-text-width','color':_0xf9f4f5(0x1f0)};}return{'icon':'fa-question','color':_0xf9f4f5(0x21a)};},_0x5e4bfe=(_0x299bc6,_0x4b9b4e,_0x168b4a)=>_0x3eaa92(void 0x0,[_0x299bc6,_0x4b9b4e,_0x168b4a],void 0x0,function*({endpointNode:_0x44b65c,endpoint:_0x58359d,baseUrl:_0xc82fce},_0x3946db,_0x17cedf){const _0x4fbea0=_0x1afd75,_0x3f23be=_0xc82fce+_0x4fbea0(0x227),_0x27ffe0=_0x3f23be+_0x4fbea0(0x1ea),_0xb1bec9=Object[_0x4fbea0(0x252)](Object[_0x4fbea0(0x252)]({},_0x17cedf),{'nodeId':_0x3946db,'resultMask':0x3f}),_0x1e24b7=yield fetch(_0x27ffe0,{'method':_0x4fbea0(0x1ff),'body':JSON[_0x4fbea0(0x1a9)]({'endpointNode':_0x44b65c,'endpoint':_0x58359d,'browseDescription':_0xb1bec9}),'headers':{'Content-Type':_0x4fbea0(0x169)}});if(_0x1e24b7['status']!==0xc8)return console[_0x4fbea0(0x232)](_0x4fbea0(0x18c),_0x1e24b7[_0x4fbea0(0x290)],_0x1e24b7['statusText']),{'references':[]};const _0x3d7923=yield _0x1e24b7[_0x4fbea0(0x14e)](),_0x123d8b=_0x3d7923[_0x4fbea0(0x1d1)][_0x4fbea0(0x1be)]||[];return{'references':_0x123d8b};}),_0x4fedb1={'referenceTypeId':_0x81f283(_0x1afd75(0x1f1)),'includeSubtypes':!![],'browseDirection':_0x303ba7[_0x1afd75(0x212)],'nodeClassMask':_0x5c5768['Variable']|_0x5c5768[_0x1afd75(0x220)]|_0x5c5768[_0x1afd75(0x1e4)],'resultMask':0x3f},_0x58ae7f={'referenceTypeId':_0x81f283(_0x1afd75(0x299)),'includeSubtypes':!![],'browseDirection':_0x303ba7['Forward'],'nodeClassMask':_0x5c5768[_0x1afd75(0x1df)]|_0x5c5768['Object']|_0x5c5768[_0x1afd75(0x1e4)],'resultMask':0x3f},_0x2e5bfe=(_0x542fe3,_0x205bda)=>_0x3eaa92(void 0x0,[_0x542fe3,_0x205bda],void 0x0,function*({endpointNode:_0x3f2492,endpoint:_0x16f9e4,baseUrl:_0xf2e1b8},{nodeId:_0x2aba02,rootNodeId:_0x5296a1,isType:_0x544225}){const _0x22a75b=_0x1afd75,_0x5d3689=_0xf2e1b8+_0x22a75b(0x227),_0x1f7d53=_0x5d3689+_0x22a75b(0x1dc),_0x4a09cb=yield fetch(_0x1f7d53,{'method':_0x22a75b(0x1ff),'body':JSON['stringify']({'endpointNode':_0x3f2492,'endpoint':_0x16f9e4,'nodeId':_0x2aba02,'rootNodeId':_0x5296a1,'isType':_0x544225}),'headers':{'Content-Type':_0x22a75b(0x169)}});if(_0x4a09cb[_0x22a75b(0x290)]!==0xc8)return null;const _0x210a11=yield _0x4a09cb[_0x22a75b(0x14e)]();return _0x210a11[_0x22a75b(0x1f3)];}),_0x1c7ea7=(_0x5d3ba8,_0x11077c)=>{const _0x29fef2=_0x1afd75;if(_0x5d3ba8[_0x29fef2(0x190)]!==_0x29fef2(0x19c))return _0x5d3ba8[_0x29fef2(0x204)];switch(_0x11077c){case'browsePath':return _0x5d3ba8[_0x29fef2(0x255)];case _0x29fef2(0x181):return _0x5d3ba8[_0x29fef2(0x176)]||_0x5d3ba8[_0x29fef2(0x255)];case'aliasedNodeId':return _0x5d3ba8[_0x29fef2(0x23d)]||_0x5d3ba8[_0x29fef2(0x298)];case _0x29fef2(0x1f9):return _0x5d3ba8['nodeId_nsu'];default:case _0x29fef2(0x177):return _0x5d3ba8[_0x29fef2(0x177)];}},_0x21de99=_0x2b4dd8=>{const _0x4b631b=_0x1afd75;if(_0x2b4dd8['statusCode']!=='Good')return _0x4b631b(0x276)+_0x2b4dd8[_0x4b631b(0x190)];else{let _0x2774ad=[];return _0x2774ad[_0x4b631b(0x26b)](_0x4b631b(0x231)+_0x2b4dd8[_0x4b631b(0x177)]),_0x2774ad['push'](_0x4b631b(0x186)+_0x2b4dd8[_0x4b631b(0x255)]),_0x2774ad[_0x4b631b(0x26b)](_0x4b631b(0x277)+_0x5c5768[_0x2b4dd8[_0x4b631b(0x14f)]]),_0x2b4dd8[_0x4b631b(0x298)]&&_0x2774ad['push']('nsu\x20nodeId:\x20'+_0x2b4dd8['nodeId_nsu']),_0x2b4dd8[_0x4b631b(0x23d)]&&_0x2774ad[_0x4b631b(0x26b)](_0x4b631b(0x27e)+_0x2b4dd8[_0x4b631b(0x23d)]),_0x2b4dd8[_0x4b631b(0x255)]&&_0x2774ad[_0x4b631b(0x26b)](_0x4b631b(0x19a)+_0x2b4dd8[_0x4b631b(0x176)]),_0x2774ad['join']('\x0a');}};function _0x2a3259(_0x31d763){const _0x250a29=_0x1afd75;if(_0x31d763[_0x250a29(0x1b0)](/^nsu=/))return _0x250a29(0x1f9);if(_0x31d763[_0x250a29(0x1b0)](/^(ns=.*;)?(i|b|s|g)=/))return _0x250a29(0x177);if(_0x31d763[_0x250a29(0x1b0)](/^nsa=/))return'aliasedNodeId';if(_0x31d763['match'](/^(\/|\.)[0-9]+:/))return _0x250a29(0x1f3);if(_0x31d763['match'](/^(\/|\.).*:/))return _0x250a29(0x1f3);}function _0x48a707(_0x5e19f7){const _0x2f4d46=_0x1afd75,_0x5bc462=_0x2a3259(_0x5e19f7);switch(_0x5bc462){case _0x2f4d46(0x177):return'n';case _0x2f4d46(0x24b):return'na';case _0x2f4d46(0x1f9):return _0x2f4d46(0x1e5);case'browsePath':return'b';case _0x2f4d46(0x181):return'ab';default:return't';}}function _0x513d51(_0x51b5bf){const _0xd03ee3=_0x1afd75;let _0x42551b;switch(_0x51b5bf){case'n':_0x42551b=_0xd03ee3(0x177);break;case'na':_0x42551b='aliasedNodeId';break;case _0xd03ee3(0x1e5):_0x42551b='nsuNodeID';break;case'b':_0x42551b=_0xd03ee3(0x1f3);break;case'ab':_0x42551b=_0xd03ee3(0x181);break;}return _0x42551b;}function _0x2d4981(_0x490ba7){const _0x39166c=_0x1afd75;switch(_0x490ba7){case _0x39166c(0x177):return'n';case _0x39166c(0x24b):return'na';case _0x39166c(0x1f9):return _0x39166c(0x1e5);case'browsePath':return'b';case'aliasedBrowsePath':return'ab';default:return't';}}const _0x2e6042=(_0x5d2743,_0x8a16a)=>_0x3eaa92(void 0x0,[_0x5d2743,_0x8a16a],void 0x0,function*({endpointNode:_0x1568ce,endpoint:_0x510667,baseUrl:_0x17217e},_0x4eaba7){const _0x355ef4=_0x1afd75,_0x3c5575=_0x17217e+'/opcua-for-node-red',_0x551c2b=_0x3c5575+'/checkNodeId',_0xf5aa98=_0x1568ce['id'],_0x6e7ea2=RED[_0x355ef4(0x161)][_0x355ef4(0x257)](_0xf5aa98);console[_0x355ef4(0x232)](_0x6e7ea2['namespaceAliases']),_0x6e7ea2[_0x355ef4(0x267)];const _0x386872=_0x1568ce['namespaceAliases'],_0x5a902a=yield fetch(_0x551c2b,{'method':'POST','body':JSON['stringify']({'endpointNode':_0x1568ce,'endpoint':_0x510667,'nodeId':_0x4eaba7,'namespaceAliases':_0x386872}),'headers':{'Content-Type':_0x355ef4(0x169)}}),_0xf403b5=yield _0x5a902a[_0x355ef4(0x14e)]();return{'json':_0xf403b5,'data':_0x5a902a};}),_0x243a68=(_0x48236a,_0x16a972,_0x384458,_0x314e35)=>_0x3eaa92(void 0x0,[_0x48236a,_0x16a972,_0x384458,_0x314e35],void 0x0,function*({endpointNode:_0xb8c615,endpoint:_0x400086,baseUrl:_0x57fc4f},_0x5f1e73,_0x27b820,_0x9e8dcd){const _0x4fe901=_0x1afd75,_0x59b604=_0x27b820[_0x4fe901(0x150)](),{json:_0x2829f2,data:_0x59f5ae}=yield _0x2e6042({'endpointNode':_0xb8c615,'endpoint':_0x400086,'baseUrl':_0x57fc4f},_0x59b604),_0x2ffbca=(_0x205639,_0x7f10d8)=>{const _0x2fd1f1=_0x4fe901;_0x9e8dcd['text'](_0x205639)[_0x2fd1f1(0x163)](_0x2fd1f1(0x249))[_0x2fd1f1(0x163)](_0x7f10d8),_0x9e8dcd[_0x2fd1f1(0x291)](),setTimeout(()=>{const _0x212ce3=_0x2fd1f1;_0x9e8dcd[_0x212ce3(0x1dd)](_0x7f10d8),_0x9e8dcd[_0x212ce3(0x21d)]();},0xbb8);};if(_0x59f5ae[_0x4fe901(0x290)]!==0xc8)return _0x2ffbca('!!failure!!'+_0x59b604,_0x4fe901(0x16d)),![];else{if(_0x2829f2[_0x4fe901(0x190)][_0x4fe901(0x1b0)](/Good/)){const _0x5d3cc2=_0x21de99(_0x2829f2);_0x27b820['attr'](_0x4fe901(0x15e),_0x5d3cc2);const _0x377b72=_0x1c7ea7(_0x2829f2,_0x5f1e73);return _0x27b820['val'](_0x377b72),_0x27b820[_0x4fe901(0x256)](_0x4fe901(0x1c3)),_0x2ffbca(_0x4fe901(0x19c),'ok'),!![];}else return _0x27b820[_0x4fe901(0x150)](''+_0x59b604),_0x2ffbca(_0x2829f2[_0x4fe901(0x190)]+'\x20'+_0x59f5ae['statusText'],_0x4fe901(0x16d)),![];}});function _0x3af108(_0x3a44a5,_0x4575ea){return _0x3eaa92(this,void 0x0,void 0x0,function*(){const _0x49be28=_0x2272,_0x23bd3f=_0x3a44a5[_0x49be28(0x262)](_0x49be28(0x1d3)),_0x33665d=yield _0x5e4bfe(_0x4575ea,_0x23bd3f,_0x4fedb1),_0xf9dbf7=yield _0x5e4bfe(_0x4575ea,_0x23bd3f,_0x58ae7f);return{'references':[..._0x33665d[_0x49be28(0x1be)],..._0xf9dbf7['references']]};});}const _0x436ede={'referenceTypeId':_0x81f283(_0x1afd75(0x27c)),'includeSubtypes':!![],'browseDirection':_0x303ba7[_0x1afd75(0x212)],'nodeClassMask':_0x5c5768[_0x1afd75(0x24f)]|_0x5c5768[_0x1afd75(0x1a8)]|_0x5c5768[_0x1afd75(0x200)]|_0x5c5768['VariableType'],'resultMask':0x3f};function _0x4d0e49(_0x405d7d,_0x3bb46a){return _0x3eaa92(this,void 0x0,void 0x0,function*(){const _0x454bc2=_0x2272,_0x104da6=_0x405d7d[_0x454bc2(0x262)]('value'),_0x138bf9=yield _0x5e4bfe(_0x3bb46a,_0x104da6,_0x436ede);return _0x138bf9;});}const _0x7b7f51=_0x335ac3=>{const _0x2ec52f=_0x1afd75;var _0x44dbae,_0x8971d5,_0x5378d5,_0x50ce57;if(!_0x335ac3||!_0x335ac3['nodeId']){const _0x2900d5=$(_0x2ec52f(0x28d));return _0x2900d5;}const _0x4cd50a=_0x335ac3[_0x2ec52f(0x177)]['toString'](),_0x1d184d=((_0x44dbae=_0x335ac3[_0x2ec52f(0x184)])===null||_0x44dbae===void 0x0?void 0x0:_0x44dbae[_0x2ec52f(0x198)])||((_0x8971d5=_0x335ac3[_0x2ec52f(0x214)])===null||_0x8971d5===void 0x0?void 0x0:_0x8971d5[_0x2ec52f(0x281)])||_0x335ac3[_0x2ec52f(0x177)]['toString'](),{icon:_0x1b6b65,color:_0x1adb1c}=_0x55944b(_0x335ac3),_0x9b9f54='('+_0x335ac3['nodeId'][_0x2ec52f(0x206)]()+')\x20'+(((_0x5378d5=_0x335ac3['browseName'])===null||_0x5378d5===void 0x0?void 0x0:_0x5378d5[_0x2ec52f(0x281)])||((_0x50ce57=_0x335ac3['displayName'])===null||_0x50ce57===void 0x0?void 0x0:_0x50ce57[_0x2ec52f(0x198)])||''),_0x458c4d=$(_0x2ec52f(0x188)+_0x335ac3[_0x2ec52f(0x177)][_0x2ec52f(0x206)]()+'\x22}><span\x20class=\x22tree-text\x22\x20title='+_0x9b9f54+_0x2ec52f(0x244)+_0x1b6b65+_0x2ec52f(0x211)+_0x1adb1c+_0x2ec52f(0x1aa)+_0x1d184d+'</span><ul></ul></li>');return _0x458c4d[_0x2ec52f(0x163)](_0x2ec52f(0x23f)),_0x458c4d[_0x2ec52f(0x262)]('value',_0x4cd50a),_0x458c4d[_0x2ec52f(0x262)](_0x2ec52f(0x1e1),_0x335ac3),_0x458c4d;},_0x799632=(_0x49fb54,_0x3109cd)=>{const _0x1c846a=_0x1afd75;return _0x3109cd[_0x1c846a(0x21e)](_0x1c846a(0x15b)+_0x49fb54+'\x22]');},_0x2f5764=(_0x55b989,_0xa8c62f)=>{const _0x3be520=_0x1afd75;_0x55b989['$tree'][_0x3be520(0x21e)](_0x3be520(0x183))[_0x3be520(0x1dd)](_0x3be520(0x1f2)),_0xa8c62f[_0x3be520(0x21e)]('.tree-text:first')[_0x3be520(0x163)](_0x3be520(0x1f2));},_0x3e0b17=(_0x2aca6c,_0x50dc9e,_0x25b57f)=>_0x3eaa92(void 0x0,void 0x0,void 0x0,function*(){const _0x28feb5=_0x1afd75;let _0x385821=_0x25b57f[_0x28feb5(0x19b)](_0x28feb5(0x26f));_0x50dc9e[_0x28feb5(0x25c)][_0x28feb5(0x245)]||[];const _0x4418df=_0x50dc9e[_0x28feb5(0x222)]||[];if(_0x4418df[_0x28feb5(0x278)]===0x0)return;for(const _0x1e410e of _0x4418df){_0x385821[_0x28feb5(0x294)](_0x28feb5(0x23f))&&(yield _0x110058(_0x2aca6c,_0x385821));const _0x14895d=_0x799632(_0x1e410e,_0x385821);if(_0x14895d[_0x28feb5(0x278)]===0x0)return;_0x385821=_0x14895d;}_0x2f5764(_0x2aca6c,_0x385821),_0x3c849e(_0x2aca6c[_0x28feb5(0x17d)],_0x385821);});function _0x3c849e(_0x3989f9,_0x30748b){const _0x54b77a=_0x1afd75,_0x186c04=_0x30748b[_0x54b77a(0x1f8)]()[_0x54b77a(0x1c2)],_0x3e0089=_0x3989f9[_0x54b77a(0x240)]();if(_0x3e0089==undefined)return;const _0x841487=_0x3e0089+_0x186c04-_0x3989f9['height']()/0x2+_0x30748b[_0x54b77a(0x285)]()/0x2;_0x3989f9[_0x54b77a(0x264)]({'scrollTop':_0x841487},0x1f4);}const _0x464031=(_0x983de9,_0x3b7fef)=>_0x3eaa92(void 0x0,void 0x0,void 0x0,function*(){const _0x220f5e=_0x1afd75,_0x18cd3a=_0x983de9[_0x220f5e(0x1c9)][_0x220f5e(0x150)](),_0x4a1011={'nodeId':_0x18cd3a,'rootNodeId':_0x3b7fef[_0x220f5e(0x177)],'isType':_0x983de9[_0x220f5e(0x26c)][_0x220f5e(0x26d)]||![]},_0x5330a5=_0x14c8ea(_0x983de9),_0x162195=yield _0x2e5bfe(_0x5330a5,_0x4a1011);if(!_0x162195)return;yield _0x3e0b17(_0x983de9,_0x162195,_0x983de9[_0x220f5e(0x1ac)]);});function _0x1ccbc0(_0x3e74de,_0x308994,_0x211d77,_0xa41269){return _0x3eaa92(this,void 0x0,void 0x0,function*(){const _0x172254=_0x2272;if(_0x308994[_0x172254(0x294)]('fetched')){console[_0x172254(0x232)](_0x172254(0x271));return;}if(_0x308994[_0x172254(0x294)](_0x172254(0x270))){console['log'](_0x172254(0x1ce));return;}_0x308994[_0x172254(0x163)]('loading'),_0x308994[_0x172254(0x1cb)](_0x172254(0x19d));try{_0x308994[_0x172254(0x19b)]('ul')[_0x172254(0x191)]();const {references:_0x373bea}=yield _0x211d77(_0x308994,_0xa41269);_0x373bea['sort']((_0x478fbb,_0x25e16c)=>{const _0x3303f6=_0x172254;var _0x26da02,_0x40a604;return(((_0x26da02=_0x478fbb[_0x3303f6(0x214)])===null||_0x26da02===void 0x0?void 0x0:_0x26da02[_0x3303f6(0x281)])||'')[_0x3303f6(0x259)](((_0x40a604=_0x25e16c['browseName'])===null||_0x40a604===void 0x0?void 0x0:_0x40a604[_0x3303f6(0x281)])||'');});for(const _0x5f50b5 of _0x373bea){if(_0x3e74de[_0x172254(0x26c)]['filter']&&!_0x3e74de[_0x172254(0x26c)][_0x172254(0x213)](_0x5f50b5))continue;const _0x5e3de2=_0x7b7f51(_0x5f50b5);_0x308994['children']('ul')['append'](_0x5e3de2);}_0x308994[_0x172254(0x163)]('fetched');}catch(_0x50cbcc){_0x308994['children']('ul')[_0x172254(0x1cb)](_0x172254(0x1ae)+_0x50cbcc[_0x172254(0x26e)]+_0x172254(0x1a0)),console[_0x172254(0x232)](_0x172254(0x167),_0x50cbcc);}_0x308994[_0x172254(0x21e)](_0x172254(0x1a6))[_0x172254(0x236)](),_0x308994[_0x172254(0x1dd)](_0x172254(0x270));});}function _0x14c8ea(_0x2aea6a){const _0x599a5b=_0x1afd75,_0x38012f={'baseUrl':_0x2aea6a[_0x599a5b(0x26c)][_0x599a5b(0x23b)],'endpointNode':typeof _0x2aea6a[_0x599a5b(0x26c)][_0x599a5b(0x1e2)]===_0x599a5b(0x241)?_0x2aea6a[_0x599a5b(0x26c)]['endpointNode']():_0x2aea6a['options']['endpointNode'],'endpoint':typeof _0x2aea6a['options'][_0x599a5b(0x254)]===_0x599a5b(0x241)?_0x2aea6a[_0x599a5b(0x26c)][_0x599a5b(0x254)]():_0x2aea6a[_0x599a5b(0x26c)]['endpoint']};return _0x38012f;}function _0x110058(_0x4cb863,_0x3a54c0){return _0x3eaa92(this,void 0x0,void 0x0,function*(){const _0x226e49=_0x2272;if(_0x3a54c0[_0x226e49(0x294)](_0x226e49(0x1a1))){_0x3a54c0['removeClass'](_0x226e49(0x23f))[_0x226e49(0x163)](_0x226e49(0x24c)),_0x3a54c0[_0x226e49(0x19b)]('ul')['toggle']();return;}const _0x9788fc=_0x14c8ea(_0x4cb863),_0x69661=!_0x4cb863['options'][_0x226e49(0x26d)]?_0x3af108:_0x4d0e49;try{yield _0x1ccbc0(_0x4cb863,_0x3a54c0,_0x69661,_0x9788fc),_0x3a54c0['removeClass'](_0x226e49(0x23f))[_0x226e49(0x163)](_0x226e49(0x24c));}catch(_0x44c488){_0x3a54c0[_0x226e49(0x1dd)](_0x226e49(0x23f))['addClass'](_0x226e49(0x24c)),console[_0x226e49(0x232)](_0x226e49(0x28a),_0x44c488);}});}const _0x46b1a={'browseName':{'namespaceIndex':0x0,'name':_0x1afd75(0x1da)},'nodeClass':_0x1afd75(0x220),'nodeId':_0x1afd75(0x279),'displayName':{'text':_0x1afd75(0x1da)},'typeDefinition':_0x1a715b},_0x343046=()=>{const _0x3d809a=_0x1afd75;$['widget'](_0x3d809a(0x28e),{'options':{'endpointNode':()=>({'endpoint':_0x3d809a(0x1a2)}),'endpoint':()=>undefined,'parentNode':()=>_0x46b1a,'filter':()=>!![],'baseUrl':'','isTypeRef':![]},'resolveParentNode'(){return _0x3eaa92(this,void 0x0,void 0x0,function*(){const _0x5d86fa=_0x2272,_0x44c34c=this;if(_0x44c34c[_0x5d86fa(0x1bd)]==undefined){const _0x31dbb1=typeof _0x44c34c[_0x5d86fa(0x26c)][_0x5d86fa(0x22d)]===_0x5d86fa(0x241)?_0x44c34c[_0x5d86fa(0x26c)][_0x5d86fa(0x22d)]['call'](_0x44c34c):_0x44c34c[_0x5d86fa(0x26c)][_0x5d86fa(0x22d)];if(_0x31dbb1 instanceof Promise){const _0x24a9b4=yield _0x31dbb1;_0x44c34c[_0x5d86fa(0x1bd)]=_0x24a9b4;}else _0x44c34c[_0x5d86fa(0x1bd)]=_0x31dbb1;}return _0x44c34c[_0x5d86fa(0x1bd)]||_0x46b1a;});},'reset'(){return _0x3eaa92(this,void 0x0,void 0x0,function*(){const _0x492ae2=_0x2272,_0x3f25f3=this,_0x1024a5=_0x3f25f3;_0x1024a5[_0x492ae2(0x1bd)]=undefined,_0x3f25f3['$tree'][_0x492ae2(0x191)]();const _0x101e45=yield this[_0x492ae2(0x1e0)](),_0x41054e=_0x7b7f51(_0x101e45);_0x3f25f3[_0x492ae2(0x1ac)]['append'](_0x41054e),_0x3f25f3[_0x492ae2(0x17a)]=_0x101e45;});},'verify'(_0x3a5ced){const _0x9d6b98=_0x3d809a,_0xc1d7f7=this,_0x370b53=_0x14c8ea(_0xc1d7f7);_0x243a68(_0x370b53,_0x3a5ced,_0xc1d7f7['$input'],_0xc1d7f7[_0x9d6b98(0x1d4)])[_0x9d6b98(0x17f)](_0x597487=>{const _0x2572b9=_0x9d6b98;!_0x597487?_0xc1d7f7[_0x2572b9(0x1d8)]['addClass'](_0x2572b9(0x1c4)):_0xc1d7f7['$combo'][_0x2572b9(0x1dd)](_0x2572b9(0x1c4));});},'_hideMenu'(_0x45633f){const _0x1075d0=_0x3d809a,_0x13eb94=this;$(document)[_0x1075d0(0x152)](_0x1075d0(0x159)),_0x45633f[_0x1075d0(0x21d)](),_0x45633f[_0x1075d0(0x1a5)]({'height':_0x1075d0(0x1cf)});if(_0x45633f[_0x1075d0(0x224)]['multiple']){var _0x32d7b3=[];_0x45633f[_0x1075d0(0x21e)](_0x1075d0(0x1e9))[_0x1075d0(0x248)](function(){const _0x415011=_0x1075d0;$(this)[_0x415011(0x194)]('checked')&&_0x32d7b3[_0x415011(0x26b)]($(this)[_0x415011(0x262)]('value'));}),_0x45633f[_0x1075d0(0x199)](_0x32d7b3);}_0x13eb94[_0x1075d0(0x1cc)]['is'](':visible')?_0x13eb94['$input']['trigger'](_0x1075d0(0x20f)):_0x13eb94[_0x1075d0(0x1e6)]['trigger'](_0x1075d0(0x20f));},'_createMenu'(_0x37907e,_0x119ced,_0x210a86){const _0x50e32d=_0x3d809a;var _0x59dbbf=this;const _0x9dec07=$(_0x50e32d(0x1b3))[_0x50e32d(0x163)]('sterfive-typedInput-options\x20sterfive-online-menu');return _0x9dec07[_0x50e32d(0x224)]=_0x119ced,_0x9dec07['callback']=_0x210a86,_0x37907e['forEach'](_0x5b9269=>{const _0x3cf47a=_0x50e32d;typeof _0x5b9269===_0x3cf47a(0x1fa)&&(_0x5b9269={'value':_0x5b9269,'label':_0x5b9269});var _0x337b16=$(_0x3cf47a(0x1a3))[_0x3cf47a(0x174)](_0x3cf47a(0x1d3),_0x5b9269[_0x3cf47a(0x1d3)])[_0x3cf47a(0x25d)](_0x9dec07);_0x5b9269[_0x3cf47a(0x247)]&&_0x337b16[_0x3cf47a(0x198)](_0x5b9269[_0x3cf47a(0x247)]);_0x5b9269[_0x3cf47a(0x15e)]&&_0x337b16[_0x3cf47a(0x194)](_0x3cf47a(0x15e),_0x5b9269['title']);if(_0x5b9269[_0x3cf47a(0x1d2)]){if(_0x5b9269[_0x3cf47a(0x1d2)][_0x3cf47a(0x1b6)]('<')===0x0)$(_0x5b9269['icon'])['prependTo'](_0x337b16);else _0x5b9269[_0x3cf47a(0x1d2)][_0x3cf47a(0x1b6)]('/')!==-0x1?$('<i>',{'class':'red-ui-typedInput-icon','style':'mask-image:\x20url('+_0x5b9269['icon']+_0x3cf47a(0x293)+_0x5b9269[_0x3cf47a(0x1d2)]+');'})['prependTo'](_0x337b16):$(_0x3cf47a(0x20a),{'class':_0x3cf47a(0x235)+_0x5b9269[_0x3cf47a(0x1d2)]})[_0x3cf47a(0x27a)](_0x337b16);}else _0x337b16['css']({'paddingLeft':'18px'});!_0x5b9269[_0x3cf47a(0x1d2)]&&!_0x5b9269[_0x3cf47a(0x247)]&&_0x337b16[_0x3cf47a(0x198)](_0x5b9269[_0x3cf47a(0x1d3)]);var _0x20e2e7;_0x119ced[_0x3cf47a(0x1ed)]&&(_0x20e2e7=$(_0x3cf47a(0x18a))[_0x3cf47a(0x1a5)]('pointer-events',_0x3cf47a(0x22b))['data']('value',_0x5b9269[_0x3cf47a(0x1d3)])['prependTo'](_0x337b16)['on'](_0x3cf47a(0x1c7),function(_0x1a3924){const _0x8a73d3=_0x3cf47a;_0x1a3924[_0x8a73d3(0x1bf)]();})),_0x337b16['on'](_0x3cf47a(0x160),function(_0x21eef9){const _0xf1d7d2=_0x3cf47a;_0x21eef9['preventDefault'](),_0x21eef9['stopPropagation'](),!_0x119ced['multiple']?(_0x210a86(_0x5b9269[_0xf1d7d2(0x1d3)]),_0x59dbbf[_0xf1d7d2(0x1db)](_0x9dec07)):_0x20e2e7[_0xf1d7d2(0x194)](_0xf1d7d2(0x1ca),!_0x20e2e7[_0xf1d7d2(0x194)]('checked'));});}),_0x9dec07['css']({'display':_0x50e32d(0x22b)}),_0x9dec07['on']('keydown',function(_0x2cd531){const _0x40abf3=_0x50e32d;if(_0x2cd531['keyCode']===0x28)_0x2cd531[_0x40abf3(0x1bf)](),$(this)[_0x40abf3(0x19b)](_0x40abf3(0x20b))['next']()[_0x40abf3(0x256)](_0x40abf3(0x20f));else{if(_0x2cd531[_0x40abf3(0x258)]===0x26)_0x2cd531[_0x40abf3(0x1bf)](),$(this)[_0x40abf3(0x19b)](_0x40abf3(0x20b))[_0x40abf3(0x273)]()[_0x40abf3(0x256)](_0x40abf3(0x20f));else _0x2cd531[_0x40abf3(0x258)]===0x1b&&(_0x2cd531[_0x40abf3(0x1bf)](),_0x59dbbf[_0x40abf3(0x1db)](_0x9dec07));}_0x2cd531[_0x40abf3(0x28b)]();}),_0x9dec07;},'disarmClick':![],'_showMenu'(_0x34ca1a,_0x17dbf9){const _0x144ca4=_0x3d809a;if(this[_0x144ca4(0x18f)]){this['disarmClick']=![];return;}var _0x287838=this,_0x312c52=_0x17dbf9[_0x144ca4(0x22a)](),_0x4427e5=_0x17dbf9[_0x144ca4(0x285)](),_0x52cbed=_0x34ca1a[_0x144ca4(0x285)](),_0x34bab9=_0x4427e5+_0x312c52[_0x144ca4(0x1c2)];_0x34bab9+_0x52cbed-$(document)['scrollTop']()>$(window)[_0x144ca4(0x285)]()&&(_0x34bab9-=_0x34bab9+_0x52cbed-$(window)[_0x144ca4(0x285)]()+0x5),_0x34bab9<0x0&&(_0x34ca1a[_0x144ca4(0x285)](_0x52cbed+_0x34bab9),_0x34bab9=0x0),_0x34ca1a[_0x144ca4(0x1a5)]({'top':_0x34bab9+'px','left':_0x312c52[_0x144ca4(0x1e7)]+'px'}),_0x34ca1a[_0x144ca4(0x1bc)](0x64),this[_0x144ca4(0x239)](function(){const _0x69c1e3=_0x144ca4;_0x287838[_0x69c1e3(0x269)]['addClass'](_0x69c1e3(0x263)),$(document)['on'](_0x69c1e3(0x159),function(_0x3cc47e){const _0x305b72=_0x69c1e3;!$(_0x3cc47e[_0x305b72(0x246)])[_0x305b72(0x29a)](_0x34ca1a)[_0x305b72(0x278)]&&_0x287838[_0x305b72(0x1db)](_0x34ca1a),$(_0x3cc47e['target'])['closest'](_0x17dbf9)['length']&&(_0x287838['disarmClick']=!![],_0x3cc47e['preventDefault']());});});},'_showTypeMenu'(){const _0x4e2da6=_0x3d809a,_0x2fb599=this;this['_showMenu'](_0x2fb599[_0x4e2da6(0x1d5)],_0x2fb599[_0x4e2da6(0x1d8)]),_0x2fb599[_0x4e2da6(0x17d)][_0x4e2da6(0x21d)]();const _0x107f37=_0x2fb599['selectedMenuItem'];var _0x930d2d=_0x2fb599['$menu'][_0x4e2da6(0x21e)](_0x4e2da6(0x22c)+_0x107f37+'\x27');setTimeout(function(){const _0x1fdc9b=_0x4e2da6;_0x930d2d[_0x1fdc9b(0x256)]('focus');},0x78);},'_initMenu'(){const _0xd6a5a5=_0x3d809a,_0x50ca19=this;_0x50ca19[_0xd6a5a5(0x1e6)][_0xd6a5a5(0x174)](_0xd6a5a5(0x1f6),-0x1),_0x50ca19[_0xd6a5a5(0x1e6)]['on'](_0xd6a5a5(0x1b4),function(_0x3c871e){const _0x44bdac=_0xd6a5a5;_0x3c871e[_0x44bdac(0x1bf)]();});_0x50ca19[_0xd6a5a5(0x1d5)]&&_0x50ca19['$menu']['remove']();const _0x5ab830=[{'label':_0xd6a5a5(0x198),'value':'t','title':'Value\x20is\x20not\x20verified','icon':'<i\x20class=\x22fa\x20fa-font\x22/i>\x20'},{'label':_0xd6a5a5(0x15f),'value':'msg','title':_0xd6a5a5(0x24d),'icon':_0xd6a5a5(0x179)},{'label':_0xd6a5a5(0x207),'value':'n','icon':'<i\x20class=\x22fa\x20fa-tag\x22/>1\x20&nbsp;\x20'},{'label':_0xd6a5a5(0x16c),'value':'na','icon':_0xd6a5a5(0x16f)},{'label':'NodeId\x20with\x20namespace\x20Urn','value':'nsu','icon':_0xd6a5a5(0x15d)},{'label':'BrowsePath','value':'b','icon':_0xd6a5a5(0x18d)},{'label':'Aliased\x20Browse\x20Path','value':'ab','icon':_0xd6a5a5(0x295)}],_0x18a786=_0x48a707(_0x50ca19['$input'][_0xd6a5a5(0x150)]()),_0x1cf008=_0x5ab830['find'](_0xbb574b=>_0xbb574b[_0xd6a5a5(0x1d3)]===_0x18a786);_0x50ca19[_0xd6a5a5(0x1c8)][_0xd6a5a5(0x191)]()[_0xd6a5a5(0x1cb)](_0xd6a5a5(0x25e)+((_0x1cf008===null||_0x1cf008===void 0x0?void 0x0:_0x1cf008['title'])||'')+_0xd6a5a5(0x1de)+((_0x1cf008===null||_0x1cf008===void 0x0?void 0x0:_0x1cf008[_0xd6a5a5(0x1d2)])||'')+_0xd6a5a5(0x1ab)),_0x50ca19[_0xd6a5a5(0x180)]=_0x18a786;const _0x5aa5a2=this;_0x50ca19[_0xd6a5a5(0x1d5)]=this['_createMenu'](_0x5ab830,{},_0x30318b=>{const _0x1ed984=_0xd6a5a5,_0x26d777=_0x513d51(_0x30318b);_0x26d777&&_0x5aa5a2[_0x1ed984(0x261)](_0x26d777);const _0x14ba88=_0x5ab830[_0x1ed984(0x21e)](_0x196787=>_0x196787['value']===_0x30318b);_0x50ca19[_0x1ed984(0x180)]=_0x30318b,_0x50ca19[_0x1ed984(0x1c8)][_0x1ed984(0x191)]()[_0x1ed984(0x1cb)]('<span\x20title='+((_0x14ba88===null||_0x14ba88===void 0x0?void 0x0:_0x14ba88[_0x1ed984(0x15e)])||'')+_0x1ed984(0x1de)+((_0x14ba88===null||_0x14ba88===void 0x0?void 0x0:_0x14ba88['icon'])||'')+_0x1ed984(0x1ab));}),_0x50ca19['$menu'][_0xd6a5a5(0x25d)](document[_0xd6a5a5(0x1b5)]),_0x50ca19[_0xd6a5a5(0x1d5)]['hide'](),_0x50ca19['$selectTrigger'][_0xd6a5a5(0x291)]();},'mode'(){const _0x3fa9de=this;return _0x513d51(_0x3fa9de['selectedMenuItem']);},'setMode'(_0x1a9281){const _0x4d86ae=this,_0x8b8f84=_0x2d4981(_0x1a9281);_0x4d86ae['selectedMenuItem']=_0x8b8f84;},'_create'(){const _0x1a318c=_0x3d809a,_0x107e98=this;_0x107e98[_0x1a318c(0x1c9)]=this[_0x1a318c(0x151)],_0x107e98[_0x1a318c(0x1c9)][_0x1a318c(0x1a5)]('border',_0x1a318c(0x22b)),_0x107e98[_0x1a318c(0x1cc)]=_0x107e98[_0x1a318c(0x1c9)]['wrap'](_0x1a318c(0x1b3))['parent']()[_0x1a318c(0x163)](_0x1a318c(0x251)),_0x107e98[_0x1a318c(0x1d8)]=$(_0x1a318c(0x20e)),_0x107e98[_0x1a318c(0x1d8)]['addClass'](_0x1a318c(0x229)),_0x107e98[_0x1a318c(0x1c9)][_0x1a318c(0x157)](_0x107e98[_0x1a318c(0x1d8)]),_0x107e98[_0x1a318c(0x172)]=$(_0x1a318c(0x20e))['addClass']('sterfive-input-group'),_0x107e98[_0x1a318c(0x1d8)]['append'](_0x107e98['$inputGroup']),_0x107e98['$inputGroup'][_0x1a318c(0x1cb)](_0x107e98['$input']),_0x107e98[_0x1a318c(0x275)]=$(_0x1a318c(0x16b)),_0x107e98[_0x1a318c(0x1c9)][_0x1a318c(0x1b9)](_0x107e98[_0x1a318c(0x275)]),_0x107e98[_0x1a318c(0x275)]['on'](_0x1a318c(0x160),function(){return _0x3eaa92(this,void 0x0,void 0x0,function*(){const _0x97ac8=_0x2272;var _0x734bab;let _0x4b088c=![],_0x255ba1;!_0x107e98[_0x97ac8(0x17d)]['is'](_0x97ac8(0x1a4))&&(_0x107e98[_0x97ac8(0x1d4)][_0x97ac8(0x21d)](),_0x255ba1=yield _0x107e98['resolveParentNode'](),(_0x255ba1!==_0x107e98[_0x97ac8(0x17a)]||((_0x734bab=_0x107e98[_0x97ac8(0x17a)])===null||_0x734bab===void 0x0?void 0x0:_0x734bab[_0x97ac8(0x177)])!==_0x255ba1['nodeId'])&&(yield _0x107e98['reset']()),_0x4b088c=!![]),_0x107e98[_0x97ac8(0x17d)][_0x97ac8(0x1fc)](),_0x4b088c&&(yield _0x464031(_0x107e98,_0x255ba1));});}),_0x107e98[_0x1a318c(0x203)]=$(_0x1a318c(0x1e8)),_0x107e98['$input'][_0x1a318c(0x1b9)](_0x107e98[_0x1a318c(0x203)]),_0x107e98[_0x1a318c(0x203)]['on'](_0x1a318c(0x160),()=>{const _0x18549a=_0x1a318c,_0x44d876=_0x107e98['mode']();if(!_0x44d876)return;this[_0x18549a(0x261)](_0x44d876);});const _0x81f0ae=_0x402375=>_0x3eaa92(this,void 0x0,void 0x0,function*(){const _0xfe3484=_0x1a318c,_0x121be1=this;let _0x121d35=_0x121be1['mode']();if(!_0x121d35)return;const _0x372edd=_0x14c8ea(_0x121be1),{data:_0x365d2c,json:_0x4826ad}=yield _0x2e6042(_0x372edd,_0x402375);if(_0x365d2c[_0xfe3484(0x290)]!==0xc8)return;if(_0x4826ad[_0xfe3484(0x190)]['match'](/Good/)){const _0x569cc4=_0x1c7ea7(_0x4826ad,_0x121d35);_0x121be1[_0xfe3484(0x1c9)][_0xfe3484(0x150)](_0x569cc4),_0x121be1[_0xfe3484(0x1c9)][_0xfe3484(0x256)](_0xfe3484(0x1c3));}});{_0x107e98['$uiSelect']=$(_0x1a318c(0x1b3)),_0x107e98[_0x1a318c(0x1c9)][_0x1a318c(0x15c)](_0x107e98[_0x1a318c(0x269)]),_0x107e98['$selectTrigger']=$(_0x1a318c(0x21c))[_0x1a318c(0x27a)](_0x107e98[_0x1a318c(0x269)]),$(_0x1a318c(0x265))[_0x1a318c(0x1fc)](!![])[_0x1a318c(0x25d)](_0x107e98[_0x1a318c(0x1e6)]),_0x107e98[_0x1a318c(0x1e6)]['on'](_0x1a318c(0x160),function(_0x3bd2ac){const _0x1ae0be=_0x1a318c;_0x3bd2ac[_0x1ae0be(0x1bf)](),_0x3bd2ac['stopPropagation'](),_0x107e98[_0x1ae0be(0x1cd)]();}),_0x107e98[_0x1a318c(0x1e6)]['on'](_0x1a318c(0x17c),function(_0x1acb4a){const _0x44ddeb=_0x1a318c;_0x1acb4a[_0x44ddeb(0x258)]===0x28&&_0x107e98[_0x44ddeb(0x1cd)](),_0x1acb4a[_0x44ddeb(0x28b)]();})['on'](_0x1a318c(0x20f),function(){const _0x3d065d=_0x1a318c;_0x107e98[_0x3d065d(0x269)][_0x3d065d(0x163)](_0x3d065d(0x263));})['on'](_0x1a318c(0x22f),function(){const _0x1c17be=_0x1a318c;_0x107e98['$uiSelect'][_0x1c17be(0x1dd)](_0x1c17be(0x263));}),_0x107e98[_0x1a318c(0x1c8)]=$(_0x1a318c(0x24a))['appendTo'](_0x107e98[_0x1a318c(0x1e6)]);}this['_initMenu']();!_0x107e98[_0x1a318c(0x1c9)][_0x1a318c(0x174)]('placeholder')&&_0x107e98['$input'][_0x1a318c(0x174)]('placeholder',_0x1a318c(0x15a));_0x107e98[_0x1a318c(0x1d4)]=$('<div\x20class=\x22sterfive-info-text\x22></div>'),_0x107e98['$info'][_0x1a318c(0x21d)](),_0x107e98[_0x1a318c(0x1d8)]['append'](_0x107e98[_0x1a318c(0x1d4)]),_0x107e98[_0x1a318c(0x17d)]=$(_0x1a318c(0x20e))[_0x1a318c(0x163)]('sterfive-dropdown')['hide']()[_0x1a318c(0x25d)](_0x107e98[_0x1a318c(0x1d8)]),_0x107e98[_0x1a318c(0x1ac)]=$('<ul\x20class=\x22sterfive-tree\x22></ul>')[_0x1a318c(0x25d)](_0x107e98[_0x1a318c(0x17d)]),this['reset']();const _0x4eefd=(_0x25db94,_0x7c03f1)=>{const _0x845f1b=_0x1a318c,_0x4e20d8=0x14,_0x300969=0x14,_0x4b68da=_0x25db94['offset'](),_0x46f3e8=_0x7c03f1;if(_0x46f3e8[_0x845f1b(0x193)]>=_0x4b68da[_0x845f1b(0x1e7)]&&_0x46f3e8['pageX']<=_0x4b68da[_0x845f1b(0x1e7)]+_0x4e20d8&&_0x46f3e8[_0x845f1b(0x14d)]>=_0x4b68da['top']&&_0x46f3e8[_0x845f1b(0x14d)]<=_0x4b68da[_0x845f1b(0x1c2)]+_0x300969)return!![];return![];},_0x52ed35=_0x571805=>_0x3eaa92(this,void 0x0,void 0x0,function*(){const _0x1de95e=_0x1a318c;if(_0x571805[_0x1de95e(0x294)](_0x1de95e(0x23f)))_0x110058(_0x107e98,_0x571805);else{if(_0x571805[_0x1de95e(0x294)](_0x1de95e(0x24c)))_0x571805[_0x1de95e(0x19b)]('ul')[_0x1de95e(0x1fc)](),_0x571805['toggleClass'](_0x1de95e(0x289));else{if(_0x571805[_0x1de95e(0x19b)]('ul')[_0x1de95e(0x19b)]()[_0x1de95e(0x278)]>0x0)_0x571805['children']('ul')['toggle'](),_0x571805[_0x1de95e(0x286)](_0x1de95e(0x289));else;}}});_0x107e98[_0x1a318c(0x1ac)]['on']('dblclick','li',function(_0x2c8470){const _0x4d8443=_0x1a318c;var _0x5bbf16,_0x102a5d;_0x2c8470[_0x4d8443(0x28b)]();let _0x3b024f=$(this);if(_0x4eefd(_0x3b024f,_0x2c8470))_0x52ed35(_0x3b024f);else{const _0x596244=_0x3b024f[_0x4d8443(0x262)](_0x4d8443(0x1d3)),_0x1a226d=_0x3b024f['data']('reference');if(_0x107e98[_0x4d8443(0x26c)][_0x4d8443(0x1f7)]&&!_0x107e98[_0x4d8443(0x26c)][_0x4d8443(0x1f7)](_0x1a226d))return;_0x107e98[_0x4d8443(0x1c9)][_0x4d8443(0x262)]('reference',_0x1a226d),((_0x5bbf16=_0x1a226d['displayName'])===null||_0x5bbf16===void 0x0?void 0x0:_0x5bbf16[_0x4d8443(0x198)])||((_0x102a5d=_0x1a226d[_0x4d8443(0x214)])===null||_0x102a5d===void 0x0?void 0x0:_0x102a5d[_0x4d8443(0x281)])||_0x1a226d[_0x4d8443(0x177)][_0x4d8443(0x206)]();let _0x2ab9d3=_0x107e98[_0x4d8443(0x168)]();!_0x2ab9d3&&(_0x2ab9d3=_0x4d8443(0x177),_0x107e98[_0x4d8443(0x1ec)](_0x2ab9d3)),_0x81f0ae(_0x596244)[_0x4d8443(0x17f)](()=>{const _0x6aa06b=_0x4d8443;_0x107e98[_0x6aa06b(0x17d)][_0x6aa06b(0x21d)]();})[_0x4d8443(0x1a7)](_0x4ed285=>{const _0x46db13=_0x4d8443;_0x107e98[_0x46db13(0x17d)][_0x46db13(0x21d)]();});}}),_0x107e98[_0x1a318c(0x1ac)]['on'](_0x1a318c(0x160),'li',function(_0x52e6d9){_0x52e6d9['stopPropagation']();let _0x3e0dcb=$(this);_0x4eefd(_0x3e0dcb,_0x52e6d9)&&_0x52ed35(_0x3e0dcb),_0x2f5764(_0x107e98,_0x3e0dcb);}),$(document)['on'](_0x1a318c(0x160),function(_0x572d61){const _0x5b4f40=_0x1a318c;!$(_0x572d61[_0x5b4f40(0x246)])[_0x5b4f40(0x29a)](_0x107e98[_0x5b4f40(0x1d8)])[_0x5b4f40(0x278)]&&_0x107e98[_0x5b4f40(0x17d)][_0x5b4f40(0x21d)]();});}});},_0x38cba=_0x50611d=>{const _0x40fa81=_0x1afd75;var _0x5a7f8f,_0x476222,_0x21a87f;if(!_0x50611d){const _0x52c729=$(_0x40fa81(0x28d));return _0x52c729;}const _0x1600d4=_0x50611d[_0x40fa81(0x177)]['toString']();let _0x4de6a9=((_0x5a7f8f=_0x50611d[_0x40fa81(0x184)])===null||_0x5a7f8f===void 0x0?void 0x0:_0x5a7f8f[_0x40fa81(0x198)])||((_0x476222=_0x50611d[_0x40fa81(0x214)])===null||_0x476222===void 0x0?void 0x0:_0x476222[_0x40fa81(0x281)])||_0x50611d['nodeId'][_0x40fa81(0x206)](),_0x53a28f=(_0x21a87f=_0x50611d[_0x40fa81(0x214)])===null||_0x21a87f===void 0x0?void 0x0:_0x21a87f[_0x40fa81(0x21f)];_0x4de6a9+=_0x53a28f!==undefined&&_0x50611d[_0x40fa81(0x14f)][_0x40fa81(0x1b0)](/Type/)?_0x40fa81(0x238)+_0x53a28f+')':'';const {icon:_0x41a4d6,color:_0x476dd5}=_0x55944b(_0x50611d),_0x3ec8ad=$(_0x40fa81(0x1c1));if(_0x50611d[_0x40fa81(0x14f)]===_0x40fa81(0x1df)){const _0x4a4f22=$(_0x40fa81(0x288));_0x3ec8ad[_0x40fa81(0x1cb)](_0x4a4f22),_0x4a4f22['on'](_0x40fa81(0x160),function(){const _0x5ef5ad=_0x40fa81;_0x4a4f22[_0x5ef5ad(0x294)](_0x5ef5ad(0x283))?_0x4a4f22[_0x5ef5ad(0x1dd)](_0x5ef5ad(0x283))[_0x5ef5ad(0x163)]('checked'):_0x4a4f22[_0x5ef5ad(0x1dd)]('checked')[_0x5ef5ad(0x163)](_0x5ef5ad(0x283));});}return _0x3ec8ad[_0x40fa81(0x1cb)]($('<i\x20class=\x22fa\x20'+_0x41a4d6+_0x40fa81(0x211)+_0x476dd5+_0x40fa81(0x1c0)+_0x4de6a9+'<ul></ul>')),_0x3ec8ad[_0x40fa81(0x163)](_0x40fa81(0x23f)),_0x3ec8ad[_0x40fa81(0x262)](_0x40fa81(0x1d3),_0x1600d4),_0x3ec8ad[_0x40fa81(0x262)](_0x40fa81(0x1e1),_0x50611d),_0x3ec8ad;},_0x5b4778=()=>{const _0x1398e7=_0x1afd75;$[_0x1398e7(0x205)]('sterfive.eventFieldSelector',{'options':{'endpointNode':()=>({'endpoint':_0x1398e7(0x1a2)}),'endpoint':()=>undefined,'baseUrl':''},'_populate'(){return _0x3eaa92(this,void 0x0,void 0x0,function*(){const _0x194da9=_0x2272;var _0x39adba;const _0x3aff50=this,_0x3913f2=new Set(((_0x39adba=_0x3aff50[_0x194da9(0x1c9)]['val']())===null||_0x39adba===void 0x0?void 0x0:_0x39adba[_0x194da9(0x206)]()[_0x194da9(0x25a)](';'))||[]),_0x45e5bb=_0x14c8ea(_0x3aff50),_0x513d9a=yield _0x310e73(_0x45e5bb);this[_0x194da9(0x19e)](_0x513d9a,_0x3913f2);});},'_installTree'(_0x109181,_0x22bcdf){const _0x597e73=_0x1398e7,_0xe7a684=this;_0xe7a684['$tree'][_0x597e73(0x191)]();if(!_0x109181[_0x597e73(0x233)])return;const _0x2c1b38=_0x109181['events'],_0x535728=_0x38cba(_0x2c1b38);_0xe7a684[_0x597e73(0x1ac)][_0x597e73(0x1cb)](_0x535728);const _0x2f5bbc='';this['_installChildren'](_0x535728[_0x597e73(0x19b)]('ul'),_0x2c1b38,_0x2f5bbc,_0x22bcdf),_0x535728[_0x597e73(0x1dd)]('expandable')[_0x597e73(0x163)](_0x597e73(0x24c)),this[_0x597e73(0x292)](_0x22bcdf);},'_installChildren'(_0x354a28,_0x598b19,_0xb0fc5e,_0x839d87){const _0xd20ff=_0x1398e7,_0x250048=({name:_0x3f1d51,namespaceIndex:_0x32b10f})=>{if(_0x32b10f===0x0)return _0x3f1d51;return _0x32b10f+':'+_0x3f1d51;},_0x20ef79=_0x598b19[_0xd20ff(0x19b)]||[],_0x5c5ead=_0x598b19['subTypes']||[],_0x1de07e=[..._0x20ef79,..._0x5c5ead];for(const _0x1b518d of _0x1de07e){const _0x1ca721=_0x38cba(_0x1b518d);_0x354a28['append'](_0x1ca721);let _0x9b444e='';_0x1b518d['nodeClass']===_0xd20ff(0x1df)&&(_0xb0fc5e?_0x9b444e=_0xb0fc5e+'.'+_0x250048(_0x1b518d[_0xd20ff(0x214)]):_0x9b444e=_0x250048(_0x1b518d['browseName']),_0x1ca721[_0xd20ff(0x174)](_0xd20ff(0x242),_0x9b444e));const _0x839523=_0x1b518d['children']&&_0x1b518d[_0xd20ff(0x19b)]['length'],_0x2300cc=_0x1b518d['subTypes']&&_0x1b518d[_0xd20ff(0x266)][_0xd20ff(0x278)];!_0x839523&&!_0x2300cc?_0x1ca721['removeClass'](_0xd20ff(0x23f))[_0xd20ff(0x163)](_0xd20ff(0x165)):(this[_0xd20ff(0x225)](_0x1ca721[_0xd20ff(0x19b)]('ul'),_0x1b518d,_0x9b444e,_0x839d87),_0x1ca721[_0xd20ff(0x1dd)](_0xd20ff(0x23f))[_0xd20ff(0x163)](_0xd20ff(0x24c)));}},'_updateSelectedFields'(){const _0x23dbfc=_0x1398e7;var _0x1b454d;const _0x1dfc08=this,_0x4abc9d=new Set(((_0x1b454d=_0x1dfc08[_0x23dbfc(0x1c9)][_0x23dbfc(0x150)]())===null||_0x1b454d===void 0x0?void 0x0:_0x1b454d[_0x23dbfc(0x206)]()[_0x23dbfc(0x25a)](';'))||[]);this[_0x23dbfc(0x292)](_0x4abc9d);},'_updateValues'(_0x1041a1){const _0xde6376=_0x1398e7;$('.sterfive-tree\x20li')[_0xde6376(0x248)](function(){const _0x9a4252=_0xde6376,_0x3dc69d=$(this),_0x2c082c=_0x3dc69d['attr'](_0x9a4252(0x242));_0x2c082c&&_0x1041a1[_0x9a4252(0x280)](_0x2c082c)&&_0x3dc69d['children'](_0x9a4252(0x27b))[_0x9a4252(0x1dd)](_0x9a4252(0x283))[_0x9a4252(0x163)]('checked');});},'_setInputValue'(){const _0x3b4b0d=_0x1398e7,_0x5f2cf1=this,_0xfd90e1=[];$(_0x3b4b0d(0x218))['each'](function(){const _0x518a0c=_0x3b4b0d,_0xda0324=$(this);if(_0xda0324['children'](_0x518a0c(0x27f))['length']>0x0){const _0x2fa11e=_0xda0324[_0x518a0c(0x174)]('data-value');if(_0x2fa11e)_0xfd90e1[_0x518a0c(0x26b)](_0x2fa11e);}});const _0x317c7a=[...new Set(_0xfd90e1)][_0x3b4b0d(0x197)]()[_0x3b4b0d(0x208)](';');_0x5f2cf1['$input'][_0x3b4b0d(0x150)](_0x317c7a),_0x5f2cf1['$input']['trigger'](_0x3b4b0d(0x1c3));},'_create'(){const _0x49ee44=_0x1398e7,_0x561cb4=this;_0x561cb4[_0x49ee44(0x1c9)]=this['element'],_0x561cb4[_0x49ee44(0x1d8)]=$(_0x49ee44(0x20e)),_0x561cb4[_0x49ee44(0x1d8)][_0x49ee44(0x163)](_0x49ee44(0x229)),this[_0x49ee44(0x151)][0x0][_0x49ee44(0x28f)][_0x49ee44(0x1f4)](_0x561cb4[_0x49ee44(0x1d8)][0x0],this[_0x49ee44(0x151)][0x0]),_0x561cb4[_0x49ee44(0x172)]=$(_0x49ee44(0x20e))[_0x49ee44(0x163)](_0x49ee44(0x234)),_0x561cb4[_0x49ee44(0x1d8)][_0x49ee44(0x1cb)](_0x561cb4['$inputGroup']),_0x561cb4[_0x49ee44(0x172)][_0x49ee44(0x1cb)](_0x561cb4[_0x49ee44(0x1c9)]),_0x561cb4['$toggleTreeBtn']=$('<button><i\x20class=\x22fa\x20fa-sitemap\x22></i></button>'),_0x561cb4[_0x49ee44(0x172)][_0x49ee44(0x1cb)](_0x561cb4[_0x49ee44(0x275)]),_0x561cb4['$toggleTreeBtn']['on'](_0x49ee44(0x160),function(){const _0x511283=_0x49ee44;_0x561cb4[_0x511283(0x17d)][_0x511283(0x1fc)](),_0x561cb4[_0x511283(0x1d4)][_0x511283(0x1fc)]();if(_0x561cb4[_0x511283(0x17d)]['is'](_0x511283(0x1a4))){_0x25a5ff[_0x511283(0x291)]();const _0x321738=_0x561cb4['$dropdown'][_0x511283(0x22a)]();_0x25a5ff[_0x511283(0x1a5)]({'top':_0x321738[_0x511283(0x1c2)]+'px','right':'calc(100%\x20-\x20'+(_0x321738[_0x511283(0x1e7)]+_0x561cb4[_0x511283(0x17d)][_0x511283(0x162)]())+'px)'}),_0x561cb4[_0x511283(0x19f)](),_0x561cb4[_0x511283(0x237)]();}else _0x25a5ff[_0x511283(0x21d)]();});!_0x561cb4[_0x49ee44(0x1c9)][_0x49ee44(0x174)](_0x49ee44(0x156))&&_0x561cb4['$input'][_0x49ee44(0x174)](_0x49ee44(0x156),_0x49ee44(0x15a));_0x561cb4[_0x49ee44(0x1d4)]=$(_0x49ee44(0x1b8)),_0x561cb4[_0x49ee44(0x1d4)][_0x49ee44(0x21d)](),_0x561cb4[_0x49ee44(0x17d)]=$(_0x49ee44(0x20e))['addClass'](_0x49ee44(0x202))[_0x49ee44(0x21d)]();const _0x1583c4=$(_0x49ee44(0x195)),_0xbf6b3f=$('<span\x20class=\x22cancel-button\x22>✖</span>'),_0x25a5ff=$(_0x49ee44(0x1fd))['append'](_0x1583c4,_0xbf6b3f);_0x25a5ff['hide'](),_0x1583c4['on'](_0x49ee44(0x160),()=>{const _0x217aef=_0x49ee44;_0x561cb4[_0x217aef(0x210)](),_0x561cb4['$dropdown'][_0x217aef(0x21d)]();}),_0xbf6b3f['on'](_0x49ee44(0x160),()=>{const _0x34acf5=_0x49ee44;_0x561cb4[_0x34acf5(0x17d)][_0x34acf5(0x21d)]();}),_0x561cb4[_0x49ee44(0x1d8)][_0x49ee44(0x1cb)](_0x561cb4[_0x49ee44(0x1d4)]),_0x561cb4[_0x49ee44(0x1d8)]['append'](_0x561cb4[_0x49ee44(0x17d)]),_0x561cb4[_0x49ee44(0x1ac)]=$(_0x49ee44(0x201)),_0x561cb4[_0x49ee44(0x17d)][_0x49ee44(0x191)]()[_0x49ee44(0x1cb)](_0x561cb4[_0x49ee44(0x1ac)],_0x25a5ff),_0x561cb4['$tree']['on'](_0x49ee44(0x160),'li',function(_0x9642d0){const _0x16e43d=_0x49ee44;_0x9642d0[_0x16e43d(0x28b)]();let _0x1bf7cd=$(this);const _0x4fcb3d=0x14,_0x248712=0x14,_0x552ef8=$(this)[_0x16e43d(0x22a)](),_0x3f9a3e=_0x9642d0;if(_0x3f9a3e['pageX']>=_0x552ef8[_0x16e43d(0x1e7)]&&_0x3f9a3e[_0x16e43d(0x193)]<=_0x552ef8[_0x16e43d(0x1e7)]+_0x4fcb3d&&_0x3f9a3e[_0x16e43d(0x14d)]>=_0x552ef8[_0x16e43d(0x1c2)]&&_0x3f9a3e[_0x16e43d(0x14d)]<=_0x552ef8[_0x16e43d(0x1c2)]+_0x248712){console[_0x16e43d(0x232)](_0x16e43d(0x1ef)),console[_0x16e43d(0x232)](_0x16e43d(0x178),_0x1bf7cd[_0x16e43d(0x262)]('value'),_0x1bf7cd[_0x16e43d(0x174)]('class'));if(_0x1bf7cd['hasClass']('expandable'))_0x1bf7cd[_0x16e43d(0x1dd)](_0x16e43d(0x23f))[_0x16e43d(0x163)](_0x16e43d(0x24c)),_0x1bf7cd[_0x16e43d(0x19b)]('ul')[_0x16e43d(0x1fc)]();else{if(_0x1bf7cd[_0x16e43d(0x294)](_0x16e43d(0x24c)))_0x1bf7cd[_0x16e43d(0x19b)]('ul')[_0x16e43d(0x1fc)](),_0x1bf7cd[_0x16e43d(0x286)](_0x16e43d(0x289));else{if(_0x1bf7cd[_0x16e43d(0x19b)]('ul')['children']()[_0x16e43d(0x278)]>0x0)_0x1bf7cd['children']('ul')[_0x16e43d(0x1fc)](),_0x1bf7cd[_0x16e43d(0x286)]('expandable\x20expanded');else;}}}}),$(document)['on'](_0x49ee44(0x160),function(_0x516a42){const _0x40b785=_0x49ee44;!$(_0x516a42[_0x40b785(0x246)])[_0x40b785(0x29a)](_0x561cb4['$combo'])[_0x40b785(0x278)]&&_0x561cb4['$dropdown'][_0x40b785(0x21d)]();}),this[_0x49ee44(0x19f)]();}});},_0x310e73=_0x3778ae=>_0x3eaa92(void 0x0,[_0x3778ae],void 0x0,function*({endpointNode:_0x538328,endpoint:_0x189b46,baseUrl:_0x26c47a}){const _0x55f924=_0x1afd75,_0x4fe237=_0x26c47a+'/opcua-for-node-red',_0xf2c974=_0x4fe237+_0x55f924(0x1ba),_0x2e3a73=yield fetch(_0xf2c974,{'method':_0x55f924(0x1ff),'body':JSON[_0x55f924(0x1a9)]({'endpointNode':_0x538328,'endpoint':_0x189b46}),'headers':{'Content-Type':'application/json'}});if(_0x2e3a73[_0x55f924(0x290)]!==0xc8)return console[_0x55f924(0x232)](_0x55f924(0x18c),_0x2e3a73[_0x55f924(0x290)],_0x2e3a73[_0x55f924(0x27d)]),{'events':null};console['log'](_0x55f924(0x153),_0x2e3a73[_0x55f924(0x290)],_0x2e3a73[_0x55f924(0x27d)]);const _0x460ea7=yield _0x2e3a73[_0x55f924(0x14e)](),_0x17b65f=_0x460ea7['events'];return{'events':_0x17b65f};}),_0x92ff0a=()=>{const _0x312c8c=_0x1afd75,_0x23de5f=$('#node-input-endpoint'),_0xe80f6b=_0x23de5f['val'](),_0x4aa9fe=RED['nodes'][_0x312c8c(0x257)](_0xe80f6b);if(!_0x4aa9fe)return undefined;const {endpoint:_0x3555f6,securityMode:_0x2682f9,securityPolicy:_0x5679cf,userIdentityType:_0x40ca53,credentials:_0x520f9d,namespaceAliases:_0x29a166}=_0x4aa9fe,_0x1d8ce7={'endpoint':_0x3555f6,'securityMode':_0x2682f9,'securityPolicy':_0x5679cf,'userIdentityType':_0x40ca53,'credentials':_0x520f9d,'namespaceAliases':_0x29a166};return _0x1d8ce7;},_0x47ffdb=()=>{const _0xca76a9=_0x1afd75,_0x5357f6=$(_0xca76a9(0x1c5)),_0x24bdf3=_0x5357f6[_0xca76a9(0x150)](),_0x1a8257=_0x92ff0a();if(!_0x1a8257)return undefined;const _0x1d8ce9=_0x1a8257['namespaceAliases'];return Object['assign']({'namespaceAliases':_0x1d8ce9,'id':_0x24bdf3},_0x1a8257);},_0x37e5e7=()=>{return{'endpointNode':_0x47ffdb};},_0x2a2364=()=>{const _0x1499f3=_0x1afd75,_0x2eecd0=$(_0x1499f3(0x1af));if(_0x2eecd0[_0x1499f3(0x278)]){const _0x44a928=$(_0x1499f3(0x171),{'src':'/opcua-for-node-red/support-frame.html','scrolling':'no','style':'background-color:transparent;overflow:hidden;border:3px','allowtransparency':_0x1499f3(0x1fb),'width':_0x1499f3(0x287),'height':_0x1499f3(0x1ad)});_0x2eecd0[_0x1499f3(0x1cb)](_0x44a928),_0x44a928['css']({'position':'absolute','right':_0x1499f3(0x1ee),'bottom':'16px'});}};RED['nodes']['registerType'](_0x1afd75(0x23e),{'category':_0x1afd75(0x192),'color':'#C0DEED','align':_0x1afd75(0x155),'icon':_0x1afd75(0x164),'paletteLabel':_0x1afd75(0x154),'defaults':{'inputs':{'value':0x1},'output':{'value':0x4},'name':{'value':''},'endpoint':{'value':'','required':!![],'type':_0x1afd75(0x28c)},'subscription':{'value':'','required':!![],'validate':_0x38c94e=>{if(_0x38c94e==='')return![];return!![];}},'startImmediately':{'value':!![],'required':!![]},'nodeId':{'value':'','required':![],'validate':()=>!![]},'samplingInterval':{'value':0x3e8,'required':!![]},'discardOldest':{'value':!![],'required':!![]},'queueSize':{'value':0xa,'required':!![]},'selectClauses':{'value':'','required':!![]},'whereClause':{'value':'','required':![]}},'outputs':0x2,'label'(){const _0x22b235=_0x1afd75;return this[_0x22b235(0x281)]||'OPCUA\x20Monitor';},'labelStyle'(){const _0x3e9347=_0x1afd75;return this['name']?_0x3e9347(0x16a):'';},'oneditprepare'(){const _0x5a31ed=_0x1afd75;_0x343046(),_0x5b4778(),_0x342abe(RED,this),_0x2a2364(),$('node-input-startImmediately')['on'](_0x5a31ed(0x1c3),()=>{const _0x4deb50=_0x5a31ed,_0x214e09=$(_0x4deb50(0x1bb))[_0x4deb50(0x194)]('checked');_0x214e09?$('#node-input-inputs')['val'](0x0):$(_0x4deb50(0x268))[_0x4deb50(0x150)](0x1);});const _0x5301f6=$(_0x5a31ed(0x253));_0x5301f6[_0x5a31ed(0x1fe)](Object[_0x5a31ed(0x252)](Object[_0x5a31ed(0x252)]({},_0x37e5e7()),{'filter'(_0x2aedf9){const _0x27cc7b=_0x5a31ed;return _0x2aedf9[_0x27cc7b(0x14f)]===_0x27cc7b(0x220);},'isSelectable'(_0x1b950f){const _0x351a1d=_0x5a31ed;return _0x1b950f['nodeClass']===_0x351a1d(0x220);}})),$('#node-input-whereClause');const _0x290f3a=$('#node-input-selectClauses');_0x290f3a['eventFieldSelector'](Object[_0x5a31ed(0x252)]({},_0x37e5e7()));},'oneditsave'(){const _0x33f08e=_0x1afd75,_0x21f9a2=$(_0x33f08e(0x1bb))[_0x33f08e(0x194)](_0x33f08e(0x1ca));_0x21f9a2?($(_0x33f08e(0x1bb))['val'](_0x21f9a2?0x0:0x1),this[_0x33f08e(0x1b1)]=_0x21f9a2?0x0:0x1):($('#node-input-startImmediately')[_0x33f08e(0x150)](0x1),this[_0x33f08e(0x1b1)]=0x1);}});}()));function _0x2272(_0xf715a2,_0x32660f){const _0x380455=_0x3804();return _0x2272=function(_0x227267,_0x316e3a){_0x227267=_0x227267-0x14d;let _0x5b44a9=_0x380455[_0x227267];return _0x5b44a9;},_0x2272(_0xf715a2,_0x32660f);}function _0x3804(){const _0x202536=['red-ui-typedInput-focus','animate','<i\x20class=\x22red-ui-typedInput-icon\x20fa\x20fa-caret-down\x22></i>','subTypes','namespaceAliases','#node-input-inputs','$uiSelect','NodeClass','push','options','isTypeRef','message',':first','loading','already\x20fetched','IsForward','prev','done','$toggleTreeBtn','statusCode:\x20','node\x20class:\x20','length','ns=0;i=85','prependTo','span.custom-checkbox','HasSubtype','statusText','aliased\x20NodeId:\x20','span.custom-checkbox.checked','has','name','fa-cog','unchecked','fa-folder','height','toggleClass','180px','<span\x20class=\x22custom-checkbox\x20unchecked\x22></span>','expandable\x20expanded','error','stopPropagation','OpcUa-Endpoint2','<li><i\x20class=\x22fa\x20fa-error\x22\x20style=\x22color:red;\x22></i>no\x20reference\x20!<ul></ul></li>','sterfive.nodeBrowser','parentElement','status','show','_updateValues',');\x20-webkit-mask-image:\x20url(','hasClass','<i\x20class=\x22fa\x20fa-bookmark\x22/><i\x20class=\x22fa\x20fa-fighter-jet\x22/>&nbsp;','Invalid','ns=0;i=35','nodeId_nsu','Organizes','closest','pageY','json','nodeClass','val','element','off','fetched\x20:\x20','monitor\x20events','right','placeholder','replaceWith','HasProperty','mousedown.red-ui-typedInput-close-property-select','enter\x20a\x20nodeId\x20or\x20a\x20browsePath\x20','li[key=\x22','before','<i\x20class=\x22fa\x20fa-id-card\x22/>&nbsp;\x20','title','msg.','click','nodes','width','addClass','opcualogobig.png','no-expandable','ns=0;i=40','err','mode','application/json','node_label_italic','<button\x20title=\x22open\x20OPCUA\x20AddressSpace\x20Browser\x22><i\x20class=\x22fa\x20fa-sitemap\x22></i></button>','Aliased\x20NodeId','failure','110632yMUpaL','<i\x20class=\x22fa\x20fa-bookmark\x22/>&nbsp;\x20','apply','<iframe></iframe>','$inputGroup','suppressed','attr','ns=0;i=34','bp_aliased','nodeId','clicked\x20on\x20','<i\x20class=\x22fa\x20fa-envelope-open-o\x22/>','currentParent','ns=0;i=61','keydown','$dropdown','ns=0;i=45','then','selectedMenuItem','aliasedBrowsePath','subscriptions','li\x20>\x20.tree-text','displayName','Inverse','browse\x20path:\x20','2994873flqcBm','<li\x20key=\x22','next','<input\x20type=\x22checkbox\x22>','Both','fetching\x20failed\x20with\x20error','<i\x20class=\x22fa\x20fa-tag\x22/><i\x20class=\x22fa\x20fa-fighter-jet\x22/>&nbsp;','VariableType','disarmClick','statusCode','empty','opcua','pageX','prop','<span\x20class=\x22validate-button\x22>✔</span>','Unspecified','sort','text','callback','aliased\x20browsePath:\x20','children','Good','<div\x20class=\x22spinner\x22></div>','_installTree','_populate','</li>','fetched','opc.tcp://opcuademo.sterfive.com:26543','<a\x20href=\x22#\x22></a>',':visible','css','.spinner','catch','ObjectType','stringify',';\x22></i>\x20','</span>','$tree','30px','<li>error\x20','.red-ui-tray-body','match','inputs','throw','<div>','mousedown.red-ui-typedInput-focus-block','body','indexOf','SandyBrown','<div\x20class=\x22sterfive-info-text\x22></div>','after','/extractEventTypes','#node-input-startImmediately','slideDown','__parentNode','references','preventDefault',';\x22></i>','<li>','top','change','sterfive-input-error','#node-input-endpoint','fa-object-group','mousedown','$selectLabel','$input','checked','append','$elementDiv','_showTypeMenu','already\x20loading','auto','6RfwNfP','browseResult','icon','value','$info','$menu','SteelBlue','2709400hKITWz','$combo','rgba(61,\x2060,\x204,\x200.525)','Objects','_hideMenu','/walk-backward','removeClass','>&nbsp;\x20','Variable','resolveParentNode','reference','endpointNode','HasTypeDefinition','Method','nsu','$selectTrigger','left','<button\x20title=\x22verify\x20nodeId\x20or\x20browsePath\x22><i\x20class=\x22fa\x20fa-refresh\x22></i></button>','input[type=\x22checkbox\x22]','/browse','fa-list-alt','setMode','multiple','20px','clicked\x20on\x20icon','CadetBlue','HasChild','selected','browsePath','replaceChild','901174NkASyo','tabindex','isSelectable','position','nsuNodeID','string','true','toggle','<div\x20class=\x22floating-buttons\x22></div>','nodeBrowser','POST','DataType','<ul\x20class=\x22sterfive-tree\x22></ul>','sterfive-dropdown','$verifyBtn','requestedNodeId','widget','toString','NodeId','join','i=61','<i>',':focus','SuppressedError','ns=0;i=47','<div/>','focus','_setInputValue','\x22\x20style=\x22color:','Forward','filter','browseName','<option/>','DodgerBlue','#node-input-subscription','.sterfive-tree\x20li','referenceTypeId','grey','View','<button\x20type=\x22button\x22\x20tabindex=\x220\x22></button>','hide','find','namespaceIndex','Object','DarkOrange','nodeIds','subscription','opts','_installChildren','10579667lIZKsH','/opcua-for-node-red','ns=0;i=46','sterfive-combo-box','offset','none','[value=\x27','parentNode','SeaGreen','blur','9979020hwEjtI','nodeId:\x20','log','events','input-group','red-ui-typedInput-icon\x20','remove','_updateSelectedFields','\x20(ns=','_delay','typeDefinition','baseUrl','BrowseName','nodeId_aliased','OpcUa-Client2-MonitorEvent','expandable','scrollTop','function','data-value','45OglrYz','><i\x20class=\x22fa\x20','elements','target','label','each','sterfive-info','<span\x20class=\x22red-ui-typedInput-type-label\x22></span>','aliasedNodeId','expanded','node\x20id\x20or\x20\x20browse\x20path\x20comes\x20from\x20injected\x20msg\x20parameter','DisplayName','ReferenceType','1fxsjqI','main-wrapper','assign','#node-input-nodeId','endpoint','bp_indexed','trigger','node','keyCode','localeCompare','split','TypeDefinition','relativePath','appendTo','<span\x20title=','16569200cLxdpL','fa-sliders','verify','data'];_0x3804=function(){return _0x202536;};return _0x3804();}
9
8
  </script>
10
9
  <script type="text/x-red" data-template-name="OpcUa-Client2-MonitorEvent">
11
10
  <style>