@opcua/for-node-red 3.9.0 → 3.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -4,8 +4,7 @@
4
4
  </style>
5
5
 
6
6
  <script type="text/javascript">
7
- (function(_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 _0x16dc(_0x1b9bab,_0x35cb34){const _0x42d784=_0x42d7();return _0x16dc=function(_0x16dc9c,_0x33635f){_0x16dc9c=_0x16dc9c-0x1bb;let _0x51aef6=_0x42d784[_0x16dc9c];return _0x51aef6;},_0x16dc(_0x1b9bab,_0x35cb34);}(function(_0x3b9595,_0x2c13b5){const _0x1bfc91=_0x16dc,_0x91a46f=_0x3b9595();while(!![]){try{const _0x2f9571=parseInt(_0x1bfc91(0x1fc))/0x1*(parseInt(_0x1bfc91(0x1d1))/0x2)+parseInt(_0x1bfc91(0x210))/0x3*(parseInt(_0x1bfc91(0x291))/0x4)+parseInt(_0x1bfc91(0x208))/0x5+-parseInt(_0x1bfc91(0x287))/0x6*(parseInt(_0x1bfc91(0x1ec))/0x7)+parseInt(_0x1bfc91(0x2e2))/0x8+parseInt(_0x1bfc91(0x2e5))/0x9+-parseInt(_0x1bfc91(0x1eb))/0xa;if(_0x2f9571===_0x2c13b5)break;else _0x91a46f['push'](_0x91a46f['shift']());}catch(_0x82d562){_0x91a46f['push'](_0x91a46f['shift']());}}}(_0x42d7,0xa5f38),(function(){'use strict';const _0x528a1a=_0x16dc;function _0xd26ea3(_0x4dd3a6,_0x5cc1b4){const _0x158f75=_0x16dc,_0x2df1e9=$(_0x158f75(0x1e8)),_0x4d4776=$('#node-input-subscription'),_0x4cd3cf=()=>{const _0x5d0762=_0x158f75,_0x4c5d84=_0x4dd3a6['nodes'][_0x5d0762(0x1f4)](_0x2df1e9[_0x5d0762(0x2f5)]());_0x4d4776[_0x5d0762(0x2df)]();if(!_0x4c5d84||!_0x4c5d84[_0x5d0762(0x1dc)])return;for(const _0x302875 of _0x4c5d84[_0x5d0762(0x1dc)]){const _0x22b6c6=_0x302875[_0x5d0762(0x24d)]||_0x302875['id'];$(_0x5d0762(0x2bf),{'value':_0x302875['id'],'label':_0x22b6c6,'selected':_0x302875['id']===_0x5cc1b4['subscription']})['text'](_0x22b6c6)[_0x5d0762(0x1d0)](_0x4d4776);}};_0x4cd3cf(),_0x4d4776['on'](_0x158f75(0x2e4),()=>{const _0x42d13b=_0x158f75;_0x5cc1b4[_0x42d13b(0x267)]=_0x4d4776[_0x42d13b(0x2f5)]();}),_0x2df1e9['on'](_0x158f75(0x2e4),()=>{_0x4cd3cf();});}function _0x5c2ade(_0x26314f,_0x2825ec,_0x3995b0,_0x22d94f){function _0x152f92(_0x1b22a5){return _0x1b22a5 instanceof _0x3995b0?_0x1b22a5:new _0x3995b0(function(_0x5a35e7){_0x5a35e7(_0x1b22a5);});}return new(_0x3995b0||(_0x3995b0=Promise))(function(_0x1909b2,_0x241e47){const _0xd79300=_0x16dc;function _0x5de7dc(_0x41346b){const _0x470a83=_0x16dc;try{_0x3c465d(_0x22d94f[_0x470a83(0x27b)](_0x41346b));}catch(_0x2936af){_0x241e47(_0x2936af);}}function _0x55cfb1(_0x4767ba){const _0x2e4991=_0x16dc;try{_0x3c465d(_0x22d94f[_0x2e4991(0x1e0)](_0x4767ba));}catch(_0x377765){_0x241e47(_0x377765);}}function _0x3c465d(_0x34eae4){const _0x4fa753=_0x16dc;_0x34eae4['done']?_0x1909b2(_0x34eae4[_0x4fa753(0x275)]):_0x152f92(_0x34eae4[_0x4fa753(0x275)])['then'](_0x5de7dc,_0x55cfb1);}_0x3c465d((_0x22d94f=_0x22d94f[_0xd79300(0x2f7)](_0x26314f,_0x2825ec||[]))[_0xd79300(0x27b)]());});}typeof SuppressedError===_0x528a1a(0x304)?SuppressedError:function(_0x4ee8df,_0x1ee3d5,_0x46fb1d){const _0xcf21b9=_0x528a1a;var _0x5a3bd7=new Error(_0x46fb1d);return _0x5a3bd7['name']=_0xcf21b9(0x2fa),_0x5a3bd7[_0xcf21b9(0x200)]=_0x4ee8df,_0x5a3bd7[_0xcf21b9(0x27a)]=_0x1ee3d5,_0x5a3bd7;};const _0x4d2df0=_0x528a1a(0x269),_0x1d9825=_0x528a1a(0x2b0),_0x3ed50d=_0x528a1a(0x1ff),_0x5ed2a0=_0x528a1a(0x2a9),_0x510a4b='ns=0;i=34',_0x4ff7c6='ns=0;i=45',_0x3b7068=_0x528a1a(0x1cb);var _0x34872d;(function(_0x2ea53b){const _0x2a34b7=_0x528a1a;_0x2ea53b[_0x2ea53b[_0x2a34b7(0x216)]=0x0]=_0x2a34b7(0x216),_0x2ea53b[_0x2ea53b['Inverse']=0x1]=_0x2a34b7(0x222),_0x2ea53b[_0x2ea53b[_0x2a34b7(0x2aa)]=0x2]='Both',_0x2ea53b[_0x2ea53b[_0x2a34b7(0x306)]=0x3]='Invalid';}(_0x34872d||(_0x34872d={})));var _0x517211;(function(_0x281eef){const _0x512410=_0x528a1a;_0x281eef[_0x281eef[_0x512410(0x2ff)]=0x0]=_0x512410(0x2ff),_0x281eef[_0x281eef[_0x512410(0x301)]=0x1]=_0x512410(0x301),_0x281eef[_0x281eef['Variable']=0x2]=_0x512410(0x243),_0x281eef[_0x281eef[_0x512410(0x2bd)]=0x4]=_0x512410(0x2bd),_0x281eef[_0x281eef['ObjectType']=0x8]=_0x512410(0x2b5),_0x281eef[_0x281eef[_0x512410(0x1d7)]=0x10]='VariableType',_0x281eef[_0x281eef['ReferenceType']=0x20]=_0x512410(0x2af),_0x281eef[_0x281eef[_0x512410(0x236)]=0x40]=_0x512410(0x236),_0x281eef[_0x281eef[_0x512410(0x229)]=0x80]=_0x512410(0x229);}(_0x517211||(_0x517211={})));var _0x446d21;(function(_0x3f7559){const _0x32d0d9=_0x528a1a;_0x3f7559[_0x3f7559[_0x32d0d9(0x301)]=0x1]=_0x32d0d9(0x301),_0x3f7559[_0x3f7559['Variable']=0x2]=_0x32d0d9(0x243),_0x3f7559[_0x3f7559[_0x32d0d9(0x2bd)]=0x4]='Method',_0x3f7559[_0x3f7559['ObjectType']=0x8]=_0x32d0d9(0x2b5),_0x3f7559[_0x3f7559['VariableType']=0x10]=_0x32d0d9(0x1d7),_0x3f7559[_0x3f7559['ReferenceType']=0x20]=_0x32d0d9(0x2af),_0x3f7559[_0x3f7559[_0x32d0d9(0x236)]=0x40]='DataType',_0x3f7559[_0x3f7559[_0x32d0d9(0x229)]=0x80]=_0x32d0d9(0x229);}(_0x446d21||(_0x446d21={})));var _0x41c59e;(function(_0x4c7de8){const _0x3b4d70=_0x528a1a;_0x4c7de8[_0x4c7de8[_0x3b4d70(0x2af)]=0x1]=_0x3b4d70(0x2af),_0x4c7de8[_0x4c7de8[_0x3b4d70(0x2f6)]=0x2]=_0x3b4d70(0x2f6),_0x4c7de8[_0x4c7de8[_0x3b4d70(0x26c)]=0x4]=_0x3b4d70(0x26c),_0x4c7de8[_0x4c7de8[_0x3b4d70(0x2fc)]=0x8]=_0x3b4d70(0x2fc),_0x4c7de8[_0x4c7de8['DisplayName']=0x10]=_0x3b4d70(0x203),_0x4c7de8[_0x4c7de8['TypeDefinition']=0x20]='TypeDefinition';}(_0x41c59e||(_0x41c59e={})));function _0x3d393d(_0xe20f67){const _0x595c08=_0x528a1a;switch(_0xe20f67){case'Organizes':return _0x4d2df0;case'HasProperty':return _0x5ed2a0;case _0x595c08(0x241):return _0x3ed50d;case _0x595c08(0x2bb):return _0x510a4b;case _0x595c08(0x22b):return _0x4ff7c6;case _0x595c08(0x1cf):return _0x3b7068;}}const _0x536659=_0x50b854=>{const _0x94dc49=_0x528a1a;switch(_0x50b854[_0x94dc49(0x260)]){case _0x94dc49(0x301):if(_0x50b854[_0x94dc49(0x2cf)]===_0x4d2df0);if(_0x50b854[_0x94dc49(0x20f)]===_0x1d9825||_0x50b854[_0x94dc49(0x2cf)]==='i=61')return{'icon':_0x94dc49(0x1e4),'color':_0x94dc49(0x271)};return{'icon':'fa-object-group','color':_0x94dc49(0x2d2)};case _0x94dc49(0x243):if(_0x50b854[_0x94dc49(0x2cf)]===_0x3ed50d)return{'icon':_0x94dc49(0x2a0),'color':_0x94dc49(0x1d6)};else return _0x50b854[_0x94dc49(0x2cf)]===_0x5ed2a0?{'icon':_0x94dc49(0x2a0),'color':_0x94dc49(0x204)}:{'icon':'fa-list-alt','color':_0x94dc49(0x284)};case _0x94dc49(0x2bd):return{'icon':_0x94dc49(0x27d),'color':_0x94dc49(0x23f)};case _0x94dc49(0x2b5):return{'icon':_0x94dc49(0x256),'color':'DarkOrange'};case _0x94dc49(0x1d7):return{'icon':_0x94dc49(0x220),'color':'DarkOrange'};case'DataType':return{'icon':_0x94dc49(0x1fb),'color':_0x94dc49(0x284)};}return{'icon':_0x94dc49(0x270),'color':_0x94dc49(0x279)};},_0x20475e=(_0x1dd2fc,_0x30b875,_0x311dc3)=>_0x5c2ade(void 0x0,[_0x1dd2fc,_0x30b875,_0x311dc3],void 0x0,function*({endpointNode:_0x120624,endpoint:_0x5e01d3,baseUrl:_0x4e9cb7},_0x117b82,_0x3acb46){const _0x4cd784=_0x528a1a,_0x21bb57=_0x4e9cb7+_0x4cd784(0x2bc),_0x598ef8=_0x21bb57+_0x4cd784(0x282),_0x439325=Object[_0x4cd784(0x257)](Object['assign']({},_0x3acb46),{'nodeId':_0x117b82,'resultMask':0x3f}),_0x361eb1=yield fetch(_0x598ef8,{'method':'POST','body':JSON[_0x4cd784(0x22a)]({'endpointNode':_0x120624,'endpoint':_0x5e01d3,'browseDescription':_0x439325}),'headers':{'Content-Type':_0x4cd784(0x1f1)}});if(_0x361eb1[_0x4cd784(0x1f2)]!==0xc8)return console[_0x4cd784(0x1ce)](_0x4cd784(0x1be),_0x361eb1[_0x4cd784(0x1f2)],_0x361eb1['statusText']),{'references':[]};const _0x30dd77=yield _0x361eb1[_0x4cd784(0x1fa)](),_0x473afe=_0x30dd77[_0x4cd784(0x26f)][_0x4cd784(0x206)]||[];return{'references':_0x473afe};}),_0x241150={'referenceTypeId':_0x3d393d('HasChild'),'includeSubtypes':!![],'browseDirection':_0x34872d[_0x528a1a(0x216)],'nodeClassMask':_0x517211[_0x528a1a(0x243)]|_0x517211[_0x528a1a(0x301)]|_0x517211[_0x528a1a(0x2bd)],'resultMask':0x3f},_0x25301f={'referenceTypeId':_0x3d393d(_0x528a1a(0x2ee)),'includeSubtypes':!![],'browseDirection':_0x34872d[_0x528a1a(0x216)],'nodeClassMask':_0x517211[_0x528a1a(0x243)]|_0x517211[_0x528a1a(0x301)]|_0x517211[_0x528a1a(0x2bd)],'resultMask':0x3f},_0x1d5816=(_0x369bec,_0x29a0b6)=>_0x5c2ade(void 0x0,[_0x369bec,_0x29a0b6],void 0x0,function*({endpointNode:_0xe757d6,endpoint:_0x5675c4,baseUrl:_0x1be814},{nodeId:_0x3f110f,rootNodeId:_0x4ae6a8,isType:_0x437a4c}){const _0x3d30e8=_0x528a1a,_0x14cc49=_0x1be814+_0x3d30e8(0x2bc),_0x41a563=_0x14cc49+_0x3d30e8(0x2dd),_0x11dbcb=yield fetch(_0x41a563,{'method':_0x3d30e8(0x1e6),'body':JSON[_0x3d30e8(0x22a)]({'endpointNode':_0xe757d6,'endpoint':_0x5675c4,'nodeId':_0x3f110f,'rootNodeId':_0x4ae6a8,'isType':_0x437a4c}),'headers':{'Content-Type':_0x3d30e8(0x1f1)}});if(_0x11dbcb[_0x3d30e8(0x1f2)]!==0xc8)return null;const _0x53b4b1=yield _0x11dbcb[_0x3d30e8(0x1fa)]();return _0x53b4b1['browsePath'];}),_0x52e1fb=(_0x28b31c,_0x30c3d8)=>{const _0x3163bd=_0x528a1a;if(_0x28b31c[_0x3163bd(0x29f)]!==_0x3163bd(0x2da))return _0x28b31c[_0x3163bd(0x2b1)];switch(_0x30c3d8){case _0x3163bd(0x1cc):return _0x28b31c[_0x3163bd(0x262)];case _0x3163bd(0x20b):return _0x28b31c[_0x3163bd(0x302)]||_0x28b31c[_0x3163bd(0x262)];case _0x3163bd(0x278):return _0x28b31c[_0x3163bd(0x255)]||_0x28b31c[_0x3163bd(0x2ea)];case _0x3163bd(0x273):return _0x28b31c[_0x3163bd(0x2ea)];default:case _0x3163bd(0x307):return _0x28b31c['nodeId'];}},_0x27c013=_0x5ca27c=>{const _0x5526a2=_0x528a1a;if(_0x5ca27c[_0x5526a2(0x29f)]!==_0x5526a2(0x2da))return _0x5526a2(0x289)+_0x5ca27c['statusCode'];else{let _0x2fead8=[];return _0x2fead8['push'](_0x5526a2(0x230)+_0x5ca27c[_0x5526a2(0x307)]),_0x2fead8[_0x5526a2(0x1df)](_0x5526a2(0x247)+_0x5ca27c[_0x5526a2(0x262)]),_0x2fead8[_0x5526a2(0x1df)]('node\x20class:\x20'+_0x517211[_0x5ca27c['nodeClass']]),_0x5ca27c[_0x5526a2(0x2ea)]&&_0x2fead8[_0x5526a2(0x1df)]('nsu\x20nodeId:\x20'+_0x5ca27c[_0x5526a2(0x2ea)]),_0x5ca27c[_0x5526a2(0x255)]&&_0x2fead8[_0x5526a2(0x1df)](_0x5526a2(0x2d4)+_0x5ca27c[_0x5526a2(0x255)]),_0x5ca27c[_0x5526a2(0x262)]&&_0x2fead8['push'](_0x5526a2(0x1ca)+_0x5ca27c[_0x5526a2(0x302)]),_0x2fead8['join']('\x0a');}};function _0x75492b(_0x1fe5f7){const _0x11561e=_0x528a1a;if(_0x1fe5f7[_0x11561e(0x232)](/^nsu=/))return _0x11561e(0x273);if(_0x1fe5f7[_0x11561e(0x232)](/^(ns=.*;)?(i|b|s|g)=/))return'nodeId';if(_0x1fe5f7['match'](/^nsa=/))return _0x11561e(0x278);if(_0x1fe5f7[_0x11561e(0x232)](/^(\/|\.)[0-9]+:/))return _0x11561e(0x1cc);if(_0x1fe5f7[_0x11561e(0x232)](/^(\/|\.).*:/))return _0x11561e(0x1cc);}function _0x1849c7(_0x5831c7){const _0xc5eb71=_0x528a1a,_0x4ba45f=_0x75492b(_0x5831c7);switch(_0x4ba45f){case _0xc5eb71(0x307):return'n';case _0xc5eb71(0x278):return'na';case'nsuNodeID':return _0xc5eb71(0x223);case'browsePath':return'b';case'aliasedBrowsePath':return'ab';default:return't';}}function _0x5450e2(_0x1d83c1){const _0x5c5f31=_0x528a1a;let _0x124a32;switch(_0x1d83c1){case'n':_0x124a32=_0x5c5f31(0x307);break;case'na':_0x124a32='aliasedNodeId';break;case'nsu':_0x124a32=_0x5c5f31(0x273);break;case'b':_0x124a32=_0x5c5f31(0x1cc);break;case'ab':_0x124a32=_0x5c5f31(0x20b);break;}return _0x124a32;}function _0x5ee64a(_0x41556e){const _0x4bd92c=_0x528a1a;switch(_0x41556e){case'nodeId':return'n';case _0x4bd92c(0x278):return'na';case _0x4bd92c(0x273):return _0x4bd92c(0x223);case _0x4bd92c(0x1cc):return'b';case'aliasedBrowsePath':return'ab';default:return't';}}const _0x34de0c=(_0x44d244,_0x10a171)=>_0x5c2ade(void 0x0,[_0x44d244,_0x10a171],void 0x0,function*({endpointNode:_0x36089b,endpoint:_0x3b0b72,baseUrl:_0x34c05e},_0x25def0){const _0x3bbdd2=_0x528a1a,_0x3d71b1=_0x34c05e+_0x3bbdd2(0x2bc),_0x420ea8=_0x3d71b1+'/checkNodeId',_0x5681d1=_0x36089b['id'],_0x5712e1=RED['nodes'][_0x3bbdd2(0x1f4)](_0x5681d1);console[_0x3bbdd2(0x1ce)](_0x5712e1[_0x3bbdd2(0x1e9)]),_0x5712e1[_0x3bbdd2(0x1e9)];const _0x40d8f3=_0x36089b['namespaceAliases'],_0x461116=yield fetch(_0x420ea8,{'method':_0x3bbdd2(0x1e6),'body':JSON[_0x3bbdd2(0x22a)]({'endpointNode':_0x36089b,'endpoint':_0x3b0b72,'nodeId':_0x25def0,'namespaceAliases':_0x40d8f3}),'headers':{'Content-Type':_0x3bbdd2(0x1f1)}}),_0x1a0a7d=yield _0x461116['json']();return{'json':_0x1a0a7d,'data':_0x461116};}),_0x18899a=(_0xc7ccff,_0x2afea7,_0x384a2c,_0x100632)=>_0x5c2ade(void 0x0,[_0xc7ccff,_0x2afea7,_0x384a2c,_0x100632],void 0x0,function*({endpointNode:_0x593283,endpoint:_0xdec6b1,baseUrl:_0x256511},_0x47b807,_0x32a6b5,_0x3db764){const _0x2a5c74=_0x528a1a,_0x1c8e37=_0x32a6b5[_0x2a5c74(0x2f5)](),{json:_0x13e1de,data:_0x1e7d50}=yield _0x34de0c({'endpointNode':_0x593283,'endpoint':_0xdec6b1,'baseUrl':_0x256511},_0x1c8e37),_0x572518=(_0x128d95,_0x5831af)=>{const _0x5c84bc=_0x2a5c74;_0x3db764[_0x5c84bc(0x298)](_0x128d95)[_0x5c84bc(0x1d4)](_0x5c84bc(0x1e7))[_0x5c84bc(0x1d4)](_0x5831af),_0x3db764[_0x5c84bc(0x288)](),setTimeout(()=>{const _0x21ba1c=_0x5c84bc;_0x3db764[_0x21ba1c(0x1d5)](_0x5831af),_0x3db764[_0x21ba1c(0x29e)]();},0xbb8);};if(_0x1e7d50['status']!==0xc8)return _0x572518('!!failure!!'+_0x1c8e37,_0x2a5c74(0x1f0)),![];else{if(_0x13e1de[_0x2a5c74(0x29f)][_0x2a5c74(0x232)](/Good/)){const _0x274471=_0x27c013(_0x13e1de);_0x32a6b5[_0x2a5c74(0x2ad)](_0x2a5c74(0x283),_0x274471);const _0x45dde0=_0x52e1fb(_0x13e1de,_0x47b807);return _0x32a6b5[_0x2a5c74(0x2f5)](_0x45dde0),_0x32a6b5[_0x2a5c74(0x27e)](_0x2a5c74(0x2e4)),_0x572518(_0x2a5c74(0x2da),'ok'),!![];}else return _0x32a6b5[_0x2a5c74(0x2f5)](''+_0x1c8e37),_0x572518(_0x13e1de[_0x2a5c74(0x29f)]+'\x20'+_0x1e7d50[_0x2a5c74(0x2b2)],'failure'),![];}});function _0x14124c(_0xbdfdae,_0x292c53){return _0x5c2ade(this,void 0x0,void 0x0,function*(){const _0x1ea978=_0x16dc,_0x4125e7=_0xbdfdae['data'](_0x1ea978(0x275)),_0x4141de=yield _0x20475e(_0x292c53,_0x4125e7,_0x241150),_0x42a5ee=yield _0x20475e(_0x292c53,_0x4125e7,_0x25301f);return{'references':[..._0x4141de[_0x1ea978(0x206)],..._0x42a5ee['references']]};});}const _0x5d01a4={'referenceTypeId':_0x3d393d(_0x528a1a(0x22b)),'includeSubtypes':!![],'browseDirection':_0x34872d['Forward'],'nodeClassMask':_0x517211[_0x528a1a(0x2af)]|_0x517211[_0x528a1a(0x2b5)]|_0x517211[_0x528a1a(0x236)]|_0x517211[_0x528a1a(0x1d7)],'resultMask':0x3f};function _0x59ebed(_0x7d56d4,_0x456201){return _0x5c2ade(this,void 0x0,void 0x0,function*(){const _0x1ae2ad=_0x16dc,_0x4644b2=_0x7d56d4[_0x1ae2ad(0x218)]('value'),_0x540bab=yield _0x20475e(_0x456201,_0x4644b2,_0x5d01a4);return _0x540bab;});}const _0x1d3d1a=_0x297a7a=>{const _0x52c0b3=_0x528a1a;var _0x49130b,_0x3e5163,_0x25aac9,_0x2c073d;if(!_0x297a7a||!_0x297a7a[_0x52c0b3(0x307)]){const _0x5cddd6=$('<li><i\x20class=\x22fa\x20fa-error\x22\x20style=\x22color:red;\x22></i>no\x20reference\x20!<ul></ul></li>');return _0x5cddd6;}const _0x4bf099=_0x297a7a[_0x52c0b3(0x307)]['toString'](),_0x3670cd=((_0x49130b=_0x297a7a[_0x52c0b3(0x2c6)])===null||_0x49130b===void 0x0?void 0x0:_0x49130b[_0x52c0b3(0x298)])||((_0x3e5163=_0x297a7a[_0x52c0b3(0x29d)])===null||_0x3e5163===void 0x0?void 0x0:_0x3e5163[_0x52c0b3(0x24d)])||_0x297a7a[_0x52c0b3(0x307)][_0x52c0b3(0x2a1)](),{icon:_0x3d6064,color:_0x181cdf}=_0x536659(_0x297a7a),_0x29eda6='('+_0x297a7a[_0x52c0b3(0x307)][_0x52c0b3(0x2a1)]()+')\x20'+(((_0x25aac9=_0x297a7a[_0x52c0b3(0x29d)])===null||_0x25aac9===void 0x0?void 0x0:_0x25aac9[_0x52c0b3(0x24d)])||((_0x2c073d=_0x297a7a['displayName'])===null||_0x2c073d===void 0x0?void 0x0:_0x2c073d['text'])||''),_0x296b29=$('<li\x20key=\x22'+_0x297a7a[_0x52c0b3(0x307)][_0x52c0b3(0x2a1)]()+_0x52c0b3(0x20e)+_0x29eda6+_0x52c0b3(0x268)+_0x3d6064+'\x22\x20style=\x22color:'+_0x181cdf+_0x52c0b3(0x2d3)+_0x3670cd+'</span><ul></ul></li>');return _0x296b29['addClass'](_0x52c0b3(0x221)),_0x296b29[_0x52c0b3(0x218)]('value',_0x4bf099),_0x296b29[_0x52c0b3(0x218)](_0x52c0b3(0x2b6),_0x297a7a),_0x296b29;},_0xa8587c=(_0x78208f,_0x1414e0)=>{const _0x51040c=_0x528a1a;return _0x1414e0[_0x51040c(0x2c0)](_0x51040c(0x1c7)+_0x78208f+'\x22]');},_0x2ad3ed=(_0x38b060,_0x4f524e)=>{const _0x1b9595=_0x528a1a;_0x38b060['$tree'][_0x1b9595(0x2c0)]('li\x20>\x20.tree-text')[_0x1b9595(0x1d5)](_0x1b9595(0x1bc)),_0x4f524e[_0x1b9595(0x2c0)](_0x1b9595(0x205))[_0x1b9595(0x1d4)](_0x1b9595(0x1bc));},_0x3cc14d=(_0x2189f2,_0x283334,_0x5a57d3)=>_0x5c2ade(void 0x0,void 0x0,void 0x0,function*(){const _0x4be389=_0x528a1a;let _0x1aa987=_0x5a57d3['children'](_0x4be389(0x249));_0x283334[_0x4be389(0x1c4)][_0x4be389(0x21c)]||[];const _0x17aaeb=_0x283334['nodeIds']||[];if(_0x17aaeb[_0x4be389(0x308)]===0x0)return;for(const _0x117faf of _0x17aaeb){_0x1aa987[_0x4be389(0x1ef)]('expandable')&&(yield _0x41e9c2(_0x2189f2,_0x1aa987));const _0x11025f=_0xa8587c(_0x117faf,_0x1aa987);if(_0x11025f['length']===0x0)return;_0x1aa987=_0x11025f;}_0x2ad3ed(_0x2189f2,_0x1aa987),_0x284728(_0x2189f2[_0x4be389(0x22c)],_0x1aa987);});function _0x284728(_0x354348,_0x268717){const _0x318221=_0x528a1a,_0x197b2d=_0x268717[_0x318221(0x2ae)]()[_0x318221(0x2a3)],_0x3b69f9=_0x354348[_0x318221(0x21d)]();if(_0x3b69f9==undefined)return;const _0x39b6c8=_0x3b69f9+_0x197b2d-_0x354348['height']()/0x2+_0x268717['height']()/0x2;_0x354348['animate']({'scrollTop':_0x39b6c8},0x1f4);}const _0x4e6c5b=(_0x15d088,_0x16a8da)=>_0x5c2ade(void 0x0,void 0x0,void 0x0,function*(){const _0x531f91=_0x528a1a,_0x3941a2=_0x15d088['$input']['val'](),_0x1fc7f6={'nodeId':_0x3941a2,'rootNodeId':_0x16a8da['nodeId'],'isType':_0x15d088[_0x531f91(0x2a5)][_0x531f91(0x281)]||![]},_0x3a4bf5=_0x5cd5d6(_0x15d088),_0x4c178e=yield _0x1d5816(_0x3a4bf5,_0x1fc7f6);if(!_0x4c178e)return;yield _0x3cc14d(_0x15d088,_0x4c178e,_0x15d088[_0x531f91(0x2e8)]);});function _0x3ad892(_0x11abba,_0x28b4ae,_0x33bb39,_0x5e3361){return _0x5c2ade(this,void 0x0,void 0x0,function*(){const _0x3d1632=_0x16dc;if(_0x28b4ae[_0x3d1632(0x1ef)](_0x3d1632(0x24e))){console['log'](_0x3d1632(0x23c));return;}if(_0x28b4ae[_0x3d1632(0x1ef)]('loading')){console[_0x3d1632(0x1ce)](_0x3d1632(0x238));return;}_0x28b4ae[_0x3d1632(0x1d4)](_0x3d1632(0x2f4)),_0x28b4ae['append']('<div\x20class=\x22spinner\x22></div>');try{_0x28b4ae[_0x3d1632(0x296)]('ul')['empty']();const {references:_0x3c0c92}=yield _0x33bb39(_0x28b4ae,_0x5e3361);_0x3c0c92[_0x3d1632(0x1c3)]((_0xb79ada,_0x234c23)=>{const _0x3f41d4=_0x3d1632;var _0x66fa87,_0x5d6910;return(((_0x66fa87=_0xb79ada[_0x3f41d4(0x29d)])===null||_0x66fa87===void 0x0?void 0x0:_0x66fa87[_0x3f41d4(0x24d)])||'')[_0x3f41d4(0x300)](((_0x5d6910=_0x234c23[_0x3f41d4(0x29d)])===null||_0x5d6910===void 0x0?void 0x0:_0x5d6910['name'])||'');});for(const _0x145c1b of _0x3c0c92){if(_0x11abba[_0x3d1632(0x2a5)]['filter']&&!_0x11abba[_0x3d1632(0x2a5)][_0x3d1632(0x225)](_0x145c1b))continue;const _0x75c93f=_0x1d3d1a(_0x145c1b);_0x28b4ae[_0x3d1632(0x296)]('ul')[_0x3d1632(0x28b)](_0x75c93f);}_0x28b4ae['addClass'](_0x3d1632(0x24e));}catch(_0x59f3ab){_0x28b4ae[_0x3d1632(0x296)]('ul')[_0x3d1632(0x28b)]('<li>error\x20'+_0x59f3ab[_0x3d1632(0x2c9)]+_0x3d1632(0x1da)),console['log'](_0x3d1632(0x227),_0x59f3ab);}_0x28b4ae[_0x3d1632(0x2c0)](_0x3d1632(0x248))[_0x3d1632(0x29c)](),_0x28b4ae['removeClass'](_0x3d1632(0x2f4));});}function _0x5cd5d6(_0x308432){const _0x5bc50a=_0x528a1a,_0x766b2d={'baseUrl':_0x308432[_0x5bc50a(0x2a5)]['baseUrl'],'endpointNode':typeof _0x308432['options'][_0x5bc50a(0x1f8)]===_0x5bc50a(0x304)?_0x308432[_0x5bc50a(0x2a5)][_0x5bc50a(0x1f8)]():_0x308432[_0x5bc50a(0x2a5)][_0x5bc50a(0x1f8)],'endpoint':typeof _0x308432[_0x5bc50a(0x2a5)][_0x5bc50a(0x266)]===_0x5bc50a(0x304)?_0x308432[_0x5bc50a(0x2a5)][_0x5bc50a(0x266)]():_0x308432[_0x5bc50a(0x2a5)]['endpoint']};return _0x766b2d;}function _0x41e9c2(_0x4cdce4,_0x88563a){return _0x5c2ade(this,void 0x0,void 0x0,function*(){const _0x1c1117=_0x16dc;if(_0x88563a[_0x1c1117(0x1ef)](_0x1c1117(0x24e))){_0x88563a[_0x1c1117(0x1d5)](_0x1c1117(0x221))[_0x1c1117(0x1d4)](_0x1c1117(0x22d)),_0x88563a[_0x1c1117(0x296)]('ul')[_0x1c1117(0x234)]();return;}const _0x2c7d26=_0x5cd5d6(_0x4cdce4),_0xb6c0fe=!_0x4cdce4[_0x1c1117(0x2a5)][_0x1c1117(0x281)]?_0x14124c:_0x59ebed;try{yield _0x3ad892(_0x4cdce4,_0x88563a,_0xb6c0fe,_0x2c7d26),_0x88563a[_0x1c1117(0x1d5)](_0x1c1117(0x221))[_0x1c1117(0x1d4)](_0x1c1117(0x22d));}catch(_0x93682){_0x88563a[_0x1c1117(0x1d5)]('expandable')[_0x1c1117(0x1d4)]('expanded'),console[_0x1c1117(0x1ce)](_0x1c1117(0x200),_0x93682);}});}const _0x27e557={'browseName':{'namespaceIndex':0x0,'name':_0x528a1a(0x2a7)},'nodeClass':_0x528a1a(0x301),'nodeId':'ns=0;i=85','displayName':{'text':_0x528a1a(0x2a7)},'typeDefinition':_0x1d9825},_0xe3ea40=()=>{const _0x2b7273=_0x528a1a;$[_0x2b7273(0x2ba)](_0x2b7273(0x2d6),{'options':{'endpointNode':()=>({'endpoint':_0x2b7273(0x280)}),'endpoint':()=>undefined,'parentNode':()=>_0x27e557,'filter':()=>!![],'baseUrl':'','isTypeRef':![]},'resolveParentNode'(){return _0x5c2ade(this,void 0x0,void 0x0,function*(){const _0x18e4df=_0x16dc,_0xb2853e=this;if(_0xb2853e[_0x18e4df(0x27c)]==undefined){const _0xd84b94=typeof _0xb2853e['options'][_0x18e4df(0x1e1)]===_0x18e4df(0x304)?_0xb2853e[_0x18e4df(0x2a5)][_0x18e4df(0x1e1)][_0x18e4df(0x2e3)](_0xb2853e):_0xb2853e[_0x18e4df(0x2a5)][_0x18e4df(0x1e1)];if(_0xd84b94 instanceof Promise){const _0x59f0a6=yield _0xd84b94;_0xb2853e['__parentNode']=_0x59f0a6;}else _0xb2853e[_0x18e4df(0x27c)]=_0xd84b94;}return _0xb2853e['__parentNode']||_0x27e557;});},'reset'(){return _0x5c2ade(this,void 0x0,void 0x0,function*(){const _0x568274=_0x16dc,_0xacfaaa=this,_0x48d394=_0xacfaaa;_0x48d394['__parentNode']=undefined,_0xacfaaa[_0x568274(0x2e8)][_0x568274(0x2df)]();const _0x1d75eb=yield this[_0x568274(0x228)](),_0x1c6fd5=_0x1d3d1a(_0x1d75eb);_0xacfaaa[_0x568274(0x2e8)][_0x568274(0x28b)](_0x1c6fd5),_0xacfaaa[_0x568274(0x2fe)]=_0x1d75eb;});},'verify'(_0x54a3b4){const _0xf94803=_0x2b7273,_0x5311b1=this,_0x536501=_0x5cd5d6(_0x5311b1);_0x18899a(_0x536501,_0x54a3b4,_0x5311b1[_0xf94803(0x252)],_0x5311b1['$info'])['then'](_0x301202=>{const _0x4c7232=_0xf94803;!_0x301202?_0x5311b1['$combo'][_0x4c7232(0x1d4)](_0x4c7232(0x28a)):_0x5311b1[_0x4c7232(0x22f)][_0x4c7232(0x1d5)]('sterfive-input-error');});},'_hideMenu'(_0x4051f4){const _0x55ce9d=_0x2b7273,_0x46f5eb=this;$(document)[_0x55ce9d(0x21f)](_0x55ce9d(0x226)),_0x4051f4[_0x55ce9d(0x29e)](),_0x4051f4[_0x55ce9d(0x212)]({'height':_0x55ce9d(0x1c1)});if(_0x4051f4[_0x55ce9d(0x27f)][_0x55ce9d(0x26d)]){var _0x4aacb2=[];_0x4051f4[_0x55ce9d(0x2c0)](_0x55ce9d(0x250))[_0x55ce9d(0x2f8)](function(){const _0xe414db=_0x55ce9d;$(this)[_0xe414db(0x2d8)](_0xe414db(0x1d9))&&_0x4aacb2['push']($(this)['data'](_0xe414db(0x275)));}),_0x4051f4[_0x55ce9d(0x1de)](_0x4aacb2);}_0x46f5eb[_0x55ce9d(0x2b9)]['is'](_0x55ce9d(0x2c1))?_0x46f5eb[_0x55ce9d(0x252)][_0x55ce9d(0x27e)]('focus'):_0x46f5eb['$selectTrigger'][_0x55ce9d(0x27e)](_0x55ce9d(0x2d1));},'_createMenu'(_0x20ab82,_0x4619d4,_0x2fce7b){const _0x31996d=_0x2b7273;var _0xf108db=this;const _0x1e49f3=$(_0x31996d(0x1e3))['addClass'](_0x31996d(0x2c5));return _0x1e49f3[_0x31996d(0x27f)]=_0x4619d4,_0x1e49f3[_0x31996d(0x1de)]=_0x2fce7b,_0x20ab82['forEach'](_0x4115a3=>{const _0xacd1a1=_0x31996d;typeof _0x4115a3===_0xacd1a1(0x2e7)&&(_0x4115a3={'value':_0x4115a3,'label':_0x4115a3});var _0x5c1fd2=$('<a\x20href=\x22#\x22></a>')[_0xacd1a1(0x2ad)](_0xacd1a1(0x275),_0x4115a3[_0xacd1a1(0x275)])[_0xacd1a1(0x1d0)](_0x1e49f3);_0x4115a3[_0xacd1a1(0x305)]&&_0x5c1fd2['text'](_0x4115a3[_0xacd1a1(0x305)]);_0x4115a3[_0xacd1a1(0x283)]&&_0x5c1fd2[_0xacd1a1(0x2d8)](_0xacd1a1(0x283),_0x4115a3[_0xacd1a1(0x283)]);if(_0x4115a3[_0xacd1a1(0x1f9)]){if(_0x4115a3[_0xacd1a1(0x1f9)][_0xacd1a1(0x1ee)]('<')===0x0)$(_0x4115a3['icon'])[_0xacd1a1(0x2d7)](_0x5c1fd2);else _0x4115a3['icon'][_0xacd1a1(0x1ee)]('/')!==-0x1?$('<i>',{'class':'red-ui-typedInput-icon','style':'mask-image:\x20url('+_0x4115a3[_0xacd1a1(0x1f9)]+_0xacd1a1(0x294)+_0x4115a3[_0xacd1a1(0x1f9)]+');'})['prependTo'](_0x5c1fd2):$(_0xacd1a1(0x297),{'class':_0xacd1a1(0x21a)+_0x4115a3[_0xacd1a1(0x1f9)]})[_0xacd1a1(0x2d7)](_0x5c1fd2);}else _0x5c1fd2[_0xacd1a1(0x212)]({'paddingLeft':_0xacd1a1(0x295)});!_0x4115a3[_0xacd1a1(0x1f9)]&&!_0x4115a3['label']&&_0x5c1fd2[_0xacd1a1(0x298)](_0x4115a3[_0xacd1a1(0x275)]);var _0x417ef2;_0x4619d4['multiple']&&(_0x417ef2=$('<input\x20type=\x22checkbox\x22>')[_0xacd1a1(0x212)](_0xacd1a1(0x2b3),_0xacd1a1(0x29b))['data'](_0xacd1a1(0x275),_0x4115a3[_0xacd1a1(0x275)])[_0xacd1a1(0x2d7)](_0x5c1fd2)['on'](_0xacd1a1(0x1c8),function(_0x500934){_0x500934['preventDefault']();})),_0x5c1fd2['on'](_0xacd1a1(0x303),function(_0x57f3fb){const _0x34deba=_0xacd1a1;_0x57f3fb[_0x34deba(0x28d)](),_0x57f3fb[_0x34deba(0x1bf)](),!_0x4619d4['multiple']?(_0x2fce7b(_0x4115a3['value']),_0xf108db['_hideMenu'](_0x1e49f3)):_0x417ef2[_0x34deba(0x2d8)](_0x34deba(0x1d9),!_0x417ef2['prop']('checked'));});}),_0x1e49f3[_0x31996d(0x212)]({'display':'none'}),_0x1e49f3['on'](_0x31996d(0x2fd),function(_0x344fff){const _0x261a1d=_0x31996d;if(_0x344fff[_0x261a1d(0x1fe)]===0x28)_0x344fff[_0x261a1d(0x28d)](),$(this)[_0x261a1d(0x296)](_0x261a1d(0x202))[_0x261a1d(0x27b)]()[_0x261a1d(0x27e)](_0x261a1d(0x2d1));else{if(_0x344fff[_0x261a1d(0x1fe)]===0x26)_0x344fff[_0x261a1d(0x28d)](),$(this)[_0x261a1d(0x296)](_0x261a1d(0x202))[_0x261a1d(0x1fd)]()[_0x261a1d(0x27e)](_0x261a1d(0x2d1));else _0x344fff['keyCode']===0x1b&&(_0x344fff[_0x261a1d(0x28d)](),_0xf108db[_0x261a1d(0x277)](_0x1e49f3));}_0x344fff[_0x261a1d(0x1bf)]();}),_0x1e49f3;},'disarmClick':![],'_showMenu'(_0x5d7e6a,_0x492e6f){const _0x146b2c=_0x2b7273;if(this[_0x146b2c(0x2e6)]){this['disarmClick']=![];return;}var _0x30a4cb=this,_0x39d7af=_0x492e6f[_0x146b2c(0x2d0)](),_0x441fcd=_0x492e6f[_0x146b2c(0x2ac)](),_0x3ba475=_0x5d7e6a[_0x146b2c(0x2ac)](),_0x3374ac=_0x441fcd+_0x39d7af['top'];_0x3374ac+_0x3ba475-$(document)['scrollTop']()>$(window)[_0x146b2c(0x2ac)]()&&(_0x3374ac-=_0x3374ac+_0x3ba475-$(window)[_0x146b2c(0x2ac)]()+0x5),_0x3374ac<0x0&&(_0x5d7e6a['height'](_0x3ba475+_0x3374ac),_0x3374ac=0x0),_0x5d7e6a[_0x146b2c(0x212)]({'top':_0x3374ac+'px','left':_0x39d7af[_0x146b2c(0x309)]+'px'}),_0x5d7e6a[_0x146b2c(0x2f1)](0x64),this[_0x146b2c(0x20c)](function(){const _0x48d002=_0x146b2c;_0x30a4cb[_0x48d002(0x2db)]['addClass']('red-ui-typedInput-focus'),$(document)['on'](_0x48d002(0x226),function(_0x23cc7a){const _0x579192=_0x48d002;!$(_0x23cc7a['target'])[_0x579192(0x299)](_0x5d7e6a)['length']&&_0x30a4cb[_0x579192(0x277)](_0x5d7e6a),$(_0x23cc7a[_0x579192(0x2a6)])[_0x579192(0x299)](_0x492e6f)[_0x579192(0x308)]&&(_0x30a4cb['disarmClick']=!![],_0x23cc7a[_0x579192(0x28d)]());});});},'_showTypeMenu'(){const _0x1da44b=_0x2b7273,_0x528194=this;this[_0x1da44b(0x2be)](_0x528194[_0x1da44b(0x2d9)],_0x528194[_0x1da44b(0x22f)]),_0x528194[_0x1da44b(0x22c)][_0x1da44b(0x29e)]();const _0x4e8481=_0x528194[_0x1da44b(0x25f)];var _0xa5b826=_0x528194[_0x1da44b(0x2d9)][_0x1da44b(0x2c0)](_0x1da44b(0x1f5)+_0x4e8481+'\x27');setTimeout(function(){const _0x1e745a=_0x1da44b;_0xa5b826[_0x1e745a(0x27e)](_0x1e745a(0x2d1));},0x78);},'_initMenu'(){const _0xc54567=_0x2b7273,_0x3bd350=this;_0x3bd350['$selectTrigger']['attr'](_0xc54567(0x26e),-0x1),_0x3bd350[_0xc54567(0x1c0)]['on'](_0xc54567(0x211),function(_0xcecfad){const _0x58d8e4=_0xc54567;_0xcecfad[_0x58d8e4(0x28d)]();});_0x3bd350['$menu']&&_0x3bd350['$menu']['remove']();const _0x37deeb=[{'label':_0xc54567(0x298),'value':'t','title':_0xc54567(0x30a),'icon':_0xc54567(0x1c9)},{'label':_0xc54567(0x23e),'value':_0xc54567(0x2c8),'title':_0xc54567(0x1c6),'icon':'<i\x20class=\x22fa\x20fa-envelope-open-o\x22/>'},{'label':_0xc54567(0x1d2),'value':'n','icon':_0xc54567(0x240)},{'label':_0xc54567(0x2d5),'value':'na','icon':_0xc54567(0x2dc)},{'label':_0xc54567(0x244),'value':_0xc54567(0x223),'icon':_0xc54567(0x1c5)},{'label':_0xc54567(0x2e0),'value':'b','icon':_0xc54567(0x1cd)},{'label':_0xc54567(0x1d8),'value':'ab','icon':'<i\x20class=\x22fa\x20fa-bookmark\x22/><i\x20class=\x22fa\x20fa-fighter-jet\x22/>&nbsp;'}],_0x3a7c15=_0x1849c7(_0x3bd350[_0xc54567(0x252)][_0xc54567(0x2f5)]()),_0xa56306=_0x37deeb[_0xc54567(0x2c0)](_0x23f3bd=>_0x23f3bd['value']===_0x3a7c15);_0x3bd350[_0xc54567(0x1f6)][_0xc54567(0x2df)]()[_0xc54567(0x28b)](_0xc54567(0x231)+((_0xa56306===null||_0xa56306===void 0x0?void 0x0:_0xa56306[_0xc54567(0x283)])||'')+_0xc54567(0x20a)+((_0xa56306===null||_0xa56306===void 0x0?void 0x0:_0xa56306[_0xc54567(0x1f9)])||'')+_0xc54567(0x215)),_0x3bd350[_0xc54567(0x25f)]=_0x3a7c15;const _0x4f1482=this;_0x3bd350[_0xc54567(0x2d9)]=this[_0xc54567(0x24c)](_0x37deeb,{},_0x1adecc=>{const _0x182a4c=_0xc54567,_0x574004=_0x5450e2(_0x1adecc);_0x574004&&_0x4f1482[_0x182a4c(0x21e)](_0x574004);const _0x1f7768=_0x37deeb['find'](_0x36cf94=>_0x36cf94[_0x182a4c(0x275)]===_0x1adecc);_0x3bd350[_0x182a4c(0x25f)]=_0x1adecc,_0x3bd350[_0x182a4c(0x1f6)][_0x182a4c(0x2df)]()[_0x182a4c(0x28b)](_0x182a4c(0x231)+((_0x1f7768===null||_0x1f7768===void 0x0?void 0x0:_0x1f7768[_0x182a4c(0x283)])||'')+_0x182a4c(0x20a)+((_0x1f7768===null||_0x1f7768===void 0x0?void 0x0:_0x1f7768[_0x182a4c(0x1f9)])||'')+_0x182a4c(0x215));}),_0x3bd350[_0xc54567(0x2d9)][_0xc54567(0x1d0)](document[_0xc54567(0x26a)]),_0x3bd350['$menu']['hide'](),_0x3bd350['$selectTrigger'][_0xc54567(0x288)]();},'mode'(){const _0x494b57=_0x2b7273,_0x15d4de=this;return _0x5450e2(_0x15d4de[_0x494b57(0x25f)]);},'setMode'(_0x376055){const _0x5ca1c4=_0x2b7273,_0x4e17d6=this,_0xf16cdb=_0x5ee64a(_0x376055);_0x4e17d6[_0x5ca1c4(0x25f)]=_0xf16cdb;},'_create'(){const _0x118572=_0x2b7273,_0x2c7b45=this;_0x2c7b45['$input']=this[_0x118572(0x245)],_0x2c7b45['$input'][_0x118572(0x212)]('border',_0x118572(0x29b)),_0x2c7b45['$elementDiv']=_0x2c7b45[_0x118572(0x252)]['wrap']('<div>')['parent']()[_0x118572(0x1d4)](_0x118572(0x246)),_0x2c7b45[_0x118572(0x22f)]=$('<div/>'),_0x2c7b45['$combo'][_0x118572(0x1d4)]('sterfive-combo-box'),_0x2c7b45['$input'][_0x118572(0x2ef)](_0x2c7b45[_0x118572(0x22f)]),_0x2c7b45[_0x118572(0x21b)]=$(_0x118572(0x1ea))[_0x118572(0x1d4)](_0x118572(0x1f3)),_0x2c7b45[_0x118572(0x22f)][_0x118572(0x28b)](_0x2c7b45[_0x118572(0x21b)]),_0x2c7b45[_0x118572(0x21b)]['append'](_0x2c7b45[_0x118572(0x252)]),_0x2c7b45[_0x118572(0x28e)]=$(_0x118572(0x235)),_0x2c7b45[_0x118572(0x252)][_0x118572(0x201)](_0x2c7b45[_0x118572(0x28e)]),_0x2c7b45[_0x118572(0x28e)]['on'](_0x118572(0x303),function(){return _0x5c2ade(this,void 0x0,void 0x0,function*(){const _0x625b74=_0x16dc;var _0x373556;let _0x1142d4=![],_0xe97d9e;!_0x2c7b45['$dropdown']['is'](_0x625b74(0x2c1))&&(_0x2c7b45[_0x625b74(0x265)][_0x625b74(0x29e)](),_0xe97d9e=yield _0x2c7b45[_0x625b74(0x228)](),(_0xe97d9e!==_0x2c7b45[_0x625b74(0x2fe)]||((_0x373556=_0x2c7b45[_0x625b74(0x2fe)])===null||_0x373556===void 0x0?void 0x0:_0x373556[_0x625b74(0x307)])!==_0xe97d9e[_0x625b74(0x307)])&&(yield _0x2c7b45[_0x625b74(0x1d3)]()),_0x1142d4=!![]),_0x2c7b45['$dropdown'][_0x625b74(0x234)](),_0x1142d4&&(yield _0x4e6c5b(_0x2c7b45,_0xe97d9e));});}),_0x2c7b45['$verifyBtn']=$(_0x118572(0x25a)),_0x2c7b45[_0x118572(0x252)][_0x118572(0x201)](_0x2c7b45[_0x118572(0x2ec)]),_0x2c7b45[_0x118572(0x2ec)]['on']('click',()=>{const _0xd53d08=_0x118572,_0x571da7=_0x2c7b45[_0xd53d08(0x1e5)]();if(!_0x571da7)return;this[_0xd53d08(0x21e)](_0x571da7);});const _0x2b6442=_0x3efb2c=>_0x5c2ade(this,void 0x0,void 0x0,function*(){const _0x5cc9e3=_0x118572,_0x28e9b2=this;let _0x5e809d=_0x28e9b2[_0x5cc9e3(0x1e5)]();if(!_0x5e809d)return;const _0x79c351=_0x5cd5d6(_0x28e9b2),{data:_0x49ed2c,json:_0x2e6120}=yield _0x34de0c(_0x79c351,_0x3efb2c);if(_0x49ed2c[_0x5cc9e3(0x1f2)]!==0xc8)return;if(_0x2e6120['statusCode'][_0x5cc9e3(0x232)](/Good/)){const _0x2ac61a=_0x52e1fb(_0x2e6120,_0x5e809d);_0x28e9b2[_0x5cc9e3(0x252)]['val'](_0x2ac61a),_0x28e9b2[_0x5cc9e3(0x252)][_0x5cc9e3(0x27e)](_0x5cc9e3(0x2e4));}});{_0x2c7b45[_0x118572(0x2db)]=$(_0x118572(0x1e3)),_0x2c7b45[_0x118572(0x252)]['before'](_0x2c7b45[_0x118572(0x2db)]),_0x2c7b45['$selectTrigger']=$('<button\x20type=\x22button\x22\x20tabindex=\x220\x22></button>')[_0x118572(0x2d7)](_0x2c7b45[_0x118572(0x2db)]),$(_0x118572(0x2a8))[_0x118572(0x234)](!![])[_0x118572(0x1d0)](_0x2c7b45[_0x118572(0x1c0)]),_0x2c7b45['$selectTrigger']['on'](_0x118572(0x303),function(_0x484be4){const _0x5e12f2=_0x118572;_0x484be4[_0x5e12f2(0x28d)](),_0x484be4[_0x5e12f2(0x1bf)](),_0x2c7b45[_0x5e12f2(0x2cc)]();}),_0x2c7b45[_0x118572(0x1c0)]['on'](_0x118572(0x2fd),function(_0xb1a04){const _0x49e72c=_0x118572;_0xb1a04[_0x49e72c(0x1fe)]===0x28&&_0x2c7b45[_0x49e72c(0x2cc)](),_0xb1a04[_0x49e72c(0x1bf)]();})['on'](_0x118572(0x2d1),function(){const _0x5756f9=_0x118572;_0x2c7b45[_0x5756f9(0x2db)][_0x5756f9(0x1d4)]('red-ui-typedInput-focus');})['on']('blur',function(){const _0x389902=_0x118572;_0x2c7b45['$uiSelect'][_0x389902(0x1d5)](_0x389902(0x1ed));}),_0x2c7b45[_0x118572(0x1f6)]=$(_0x118572(0x1dd))[_0x118572(0x1d0)](_0x2c7b45[_0x118572(0x1c0)]);}this[_0x118572(0x2c7)]();!_0x2c7b45[_0x118572(0x252)][_0x118572(0x2ad)](_0x118572(0x2cb))&&_0x2c7b45[_0x118572(0x252)]['attr'](_0x118572(0x2cb),_0x118572(0x1bd));_0x2c7b45['$info']=$(_0x118572(0x2e9)),_0x2c7b45[_0x118572(0x265)][_0x118572(0x29e)](),_0x2c7b45[_0x118572(0x22f)][_0x118572(0x28b)](_0x2c7b45[_0x118572(0x265)]),_0x2c7b45[_0x118572(0x22c)]=$(_0x118572(0x1ea))[_0x118572(0x1d4)](_0x118572(0x253))[_0x118572(0x29e)]()[_0x118572(0x1d0)](_0x2c7b45['$combo']),_0x2c7b45['$tree']=$(_0x118572(0x1db))['appendTo'](_0x2c7b45[_0x118572(0x22c)]),this[_0x118572(0x1d3)]();const _0x40c7fe=(_0x301b52,_0x42e6f5)=>{const _0x4d7a6a=_0x118572,_0x3d02f8=0x14,_0x46aa54=0x14,_0x379343=_0x301b52[_0x4d7a6a(0x2d0)](),_0x4c728b=_0x42e6f5;if(_0x4c728b[_0x4d7a6a(0x258)]>=_0x379343[_0x4d7a6a(0x309)]&&_0x4c728b[_0x4d7a6a(0x258)]<=_0x379343['left']+_0x3d02f8&&_0x4c728b[_0x4d7a6a(0x23a)]>=_0x379343[_0x4d7a6a(0x2a3)]&&_0x4c728b[_0x4d7a6a(0x23a)]<=_0x379343[_0x4d7a6a(0x2a3)]+_0x46aa54)return!![];return![];},_0x16f9f9=_0x137bd9=>_0x5c2ade(this,void 0x0,void 0x0,function*(){const _0x1189f1=_0x118572;if(_0x137bd9[_0x1189f1(0x1ef)](_0x1189f1(0x221)))_0x41e9c2(_0x2c7b45,_0x137bd9);else{if(_0x137bd9['hasClass']('expanded'))_0x137bd9[_0x1189f1(0x296)]('ul')['toggle'](),_0x137bd9[_0x1189f1(0x254)](_0x1189f1(0x28c));else{if(_0x137bd9[_0x1189f1(0x296)]('ul')['children']()[_0x1189f1(0x308)]>0x0)_0x137bd9['children']('ul')[_0x1189f1(0x234)](),_0x137bd9[_0x1189f1(0x254)](_0x1189f1(0x28c));else;}}});_0x2c7b45[_0x118572(0x2e8)]['on'](_0x118572(0x2fb),'li',function(_0x1f730a){const _0x132adb=_0x118572;var _0x130c73,_0x596ff9;_0x1f730a['stopPropagation']();let _0x43b03b=$(this);if(_0x40c7fe(_0x43b03b,_0x1f730a))_0x16f9f9(_0x43b03b);else{const _0x2eeee4=_0x43b03b[_0x132adb(0x218)](_0x132adb(0x275)),_0x2161e0=_0x43b03b[_0x132adb(0x218)](_0x132adb(0x2b6));if(_0x2c7b45['options']['isSelectable']&&!_0x2c7b45['options'][_0x132adb(0x264)](_0x2161e0))return;_0x2c7b45[_0x132adb(0x252)]['data'](_0x132adb(0x2b6),_0x2161e0),((_0x130c73=_0x2161e0[_0x132adb(0x2c6)])===null||_0x130c73===void 0x0?void 0x0:_0x130c73[_0x132adb(0x298)])||((_0x596ff9=_0x2161e0[_0x132adb(0x29d)])===null||_0x596ff9===void 0x0?void 0x0:_0x596ff9['name'])||_0x2161e0[_0x132adb(0x307)][_0x132adb(0x2a1)]();let _0x39bbe4=_0x2c7b45[_0x132adb(0x1e5)]();!_0x39bbe4&&(_0x39bbe4=_0x132adb(0x307),_0x2c7b45[_0x132adb(0x2f9)](_0x39bbe4)),_0x2b6442(_0x2eeee4)[_0x132adb(0x276)](()=>{const _0x333f34=_0x132adb;_0x2c7b45[_0x333f34(0x22c)][_0x333f34(0x29e)]();})['catch'](_0x5d87c2=>{const _0x3b8bda=_0x132adb;_0x2c7b45[_0x3b8bda(0x22c)][_0x3b8bda(0x29e)]();});}}),_0x2c7b45['$tree']['on']('click','li',function(_0x3cc6a5){const _0x1ebcb7=_0x118572;_0x3cc6a5[_0x1ebcb7(0x1bf)]();let _0x261386=$(this);_0x40c7fe(_0x261386,_0x3cc6a5)&&_0x16f9f9(_0x261386),_0x2ad3ed(_0x2c7b45,_0x261386);}),$(document)['on'](_0x118572(0x303),function(_0x44d9c4){const _0x66f7a3=_0x118572;!$(_0x44d9c4[_0x66f7a3(0x2a6)])[_0x66f7a3(0x299)](_0x2c7b45[_0x66f7a3(0x22f)])['length']&&_0x2c7b45[_0x66f7a3(0x22c)][_0x66f7a3(0x29e)]();});}});},_0x462011=_0x2dec81=>{const _0x3081d7=_0x528a1a;var _0x4c7515,_0x316d66,_0x1c5d83;if(!_0x2dec81){const _0x317aae=$(_0x3081d7(0x25c));return _0x317aae;}const _0x5b2a9c=_0x2dec81[_0x3081d7(0x307)][_0x3081d7(0x2a1)]();let _0x6bf049=((_0x4c7515=_0x2dec81[_0x3081d7(0x2c6)])===null||_0x4c7515===void 0x0?void 0x0:_0x4c7515['text'])||((_0x316d66=_0x2dec81[_0x3081d7(0x29d)])===null||_0x316d66===void 0x0?void 0x0:_0x316d66['name'])||_0x2dec81['nodeId'][_0x3081d7(0x2a1)](),_0x3422a7=(_0x1c5d83=_0x2dec81[_0x3081d7(0x29d)])===null||_0x1c5d83===void 0x0?void 0x0:_0x1c5d83[_0x3081d7(0x1f7)];_0x6bf049+=_0x3422a7!==undefined&&_0x2dec81[_0x3081d7(0x260)][_0x3081d7(0x232)](/Type/)?_0x3081d7(0x274)+_0x3422a7+')':'';const {icon:_0x8d8662,color:_0x4dd719}=_0x536659(_0x2dec81),_0x3de0d9=$(_0x3081d7(0x1bb));if(_0x2dec81['nodeClass']===_0x3081d7(0x243)){const _0x3e7ad3=$(_0x3081d7(0x2b8));_0x3de0d9[_0x3081d7(0x28b)](_0x3e7ad3),_0x3e7ad3['on'](_0x3081d7(0x303),function(){const _0x52ec8e=_0x3081d7;_0x3e7ad3[_0x52ec8e(0x1ef)](_0x52ec8e(0x2b7))?_0x3e7ad3['removeClass']('unchecked')[_0x52ec8e(0x1d4)](_0x52ec8e(0x1d9)):_0x3e7ad3['removeClass'](_0x52ec8e(0x1d9))[_0x52ec8e(0x1d4)]('unchecked');});}return _0x3de0d9[_0x3081d7(0x28b)]($(_0x3081d7(0x2cd)+_0x8d8662+_0x3081d7(0x242)+_0x4dd719+_0x3081d7(0x2f2)+_0x6bf049+'<ul></ul>')),_0x3de0d9[_0x3081d7(0x1d4)](_0x3081d7(0x221)),_0x3de0d9[_0x3081d7(0x218)](_0x3081d7(0x275),_0x5b2a9c),_0x3de0d9[_0x3081d7(0x218)](_0x3081d7(0x2b6),_0x2dec81),_0x3de0d9;},_0x3430c3=()=>{const _0x15d6a4=_0x528a1a;$['widget'](_0x15d6a4(0x2a4),{'options':{'endpointNode':()=>({'endpoint':'opc.tcp://opcuademo.sterfive.com:26543'}),'endpoint':()=>undefined,'baseUrl':''},'_populate'(){return _0x5c2ade(this,void 0x0,void 0x0,function*(){const _0x20a0c7=_0x16dc;var _0x36a041;const _0x3385b5=this,_0x98bae9=new Set(((_0x36a041=_0x3385b5[_0x20a0c7(0x252)][_0x20a0c7(0x2f5)]())===null||_0x36a041===void 0x0?void 0x0:_0x36a041[_0x20a0c7(0x2a1)]()[_0x20a0c7(0x2ed)](';'))||[]),_0x59e309=_0x5cd5d6(_0x3385b5),_0x51d4fa=yield _0x67e48(_0x59e309);this['_installTree'](_0x51d4fa,_0x98bae9);});},'_installTree'(_0x589d8e,_0x38f411){const _0x590ac5=_0x15d6a4,_0x4a65d1=this;_0x4a65d1[_0x590ac5(0x2e8)][_0x590ac5(0x2df)]();if(!_0x589d8e[_0x590ac5(0x2c4)])return;const _0x299dd8=_0x589d8e['events'],_0x13ae73=_0x462011(_0x299dd8);_0x4a65d1[_0x590ac5(0x2e8)][_0x590ac5(0x28b)](_0x13ae73);const _0x6de02a='';this[_0x590ac5(0x2c2)](_0x13ae73[_0x590ac5(0x296)]('ul'),_0x299dd8,_0x6de02a,_0x38f411),_0x13ae73[_0x590ac5(0x1d5)](_0x590ac5(0x221))[_0x590ac5(0x1d4)](_0x590ac5(0x22d)),this[_0x590ac5(0x2a2)](_0x38f411);},'_installChildren'(_0x5e40ec,_0x17d744,_0x5eda85,_0x5c8b64){const _0x45c49c=_0x15d6a4,_0x234ec6=({name:_0x246cff,namespaceIndex:_0x3739af})=>{if(_0x3739af===0x0)return _0x246cff;return _0x3739af+':'+_0x246cff;},_0x259c2b=_0x17d744[_0x45c49c(0x296)]||[],_0x4b4e43=_0x17d744[_0x45c49c(0x259)]||[],_0x434073=[..._0x259c2b,..._0x4b4e43];for(const _0x51f623 of _0x434073){const _0x3330b5=_0x462011(_0x51f623);_0x5e40ec['append'](_0x3330b5);let _0x1d1f50='';_0x51f623[_0x45c49c(0x260)]===_0x45c49c(0x243)&&(_0x5eda85?_0x1d1f50=_0x5eda85+'.'+_0x234ec6(_0x51f623['browseName']):_0x1d1f50=_0x234ec6(_0x51f623['browseName']),_0x3330b5['attr'](_0x45c49c(0x2eb),_0x1d1f50));const _0x16a19a=_0x51f623['children']&&_0x51f623[_0x45c49c(0x296)][_0x45c49c(0x308)],_0x50a97f=_0x51f623[_0x45c49c(0x259)]&&_0x51f623[_0x45c49c(0x259)][_0x45c49c(0x308)];!_0x16a19a&&!_0x50a97f?_0x3330b5[_0x45c49c(0x1d5)](_0x45c49c(0x221))[_0x45c49c(0x1d4)](_0x45c49c(0x219)):(this[_0x45c49c(0x2c2)](_0x3330b5[_0x45c49c(0x296)]('ul'),_0x51f623,_0x1d1f50,_0x5c8b64),_0x3330b5[_0x45c49c(0x1d5)](_0x45c49c(0x221))['addClass']('expanded'));}},'_updateSelectedFields'(){const _0x2a71b5=_0x15d6a4;var _0x34391e;const _0x415a0f=this,_0xd007d=new Set(((_0x34391e=_0x415a0f[_0x2a71b5(0x252)]['val']())===null||_0x34391e===void 0x0?void 0x0:_0x34391e['toString']()[_0x2a71b5(0x2ed)](';'))||[]);this['_updateValues'](_0xd007d);},'_updateValues'(_0x529766){const _0x432fb5=_0x15d6a4;$(_0x432fb5(0x22e))[_0x432fb5(0x2f8)](function(){const _0x23e908=_0x432fb5,_0x4b28f4=$(this),_0x1e15b7=_0x4b28f4[_0x23e908(0x2ad)](_0x23e908(0x2eb));_0x1e15b7&&_0x529766[_0x23e908(0x224)](_0x1e15b7)&&_0x4b28f4['children'](_0x23e908(0x2ab))[_0x23e908(0x1d5)]('unchecked')[_0x23e908(0x1d4)]('checked');});},'_setInputValue'(){const _0x14a3dd=_0x15d6a4,_0x1770b3=this,_0xf913ad=[];$('.sterfive-tree\x20li')['each'](function(){const _0x77d064=_0x16dc,_0xb8c98c=$(this);if(_0xb8c98c['children'](_0x77d064(0x237))[_0x77d064(0x308)]>0x0){const _0xfbb8e6=_0xb8c98c[_0x77d064(0x2ad)]('data-value');if(_0xfbb8e6)_0xf913ad[_0x77d064(0x1df)](_0xfbb8e6);}});const _0x4e0d38=[...new Set(_0xf913ad)][_0x14a3dd(0x1c3)]()[_0x14a3dd(0x24f)](';');_0x1770b3[_0x14a3dd(0x252)][_0x14a3dd(0x2f5)](_0x4e0d38),_0x1770b3[_0x14a3dd(0x252)][_0x14a3dd(0x27e)](_0x14a3dd(0x2e4));},'_create'(){const _0x514b48=_0x15d6a4,_0x273ec6=this;_0x273ec6[_0x514b48(0x252)]=this[_0x514b48(0x245)],_0x273ec6['$combo']=$(_0x514b48(0x1ea)),_0x273ec6[_0x514b48(0x22f)]['addClass'](_0x514b48(0x23b)),this[_0x514b48(0x245)][0x0][_0x514b48(0x25e)][_0x514b48(0x263)](_0x273ec6[_0x514b48(0x22f)][0x0],this[_0x514b48(0x245)][0x0]),_0x273ec6[_0x514b48(0x21b)]=$(_0x514b48(0x1ea))[_0x514b48(0x1d4)](_0x514b48(0x286)),_0x273ec6[_0x514b48(0x22f)]['append'](_0x273ec6[_0x514b48(0x21b)]),_0x273ec6[_0x514b48(0x21b)][_0x514b48(0x28b)](_0x273ec6[_0x514b48(0x252)]),_0x273ec6['$toggleTreeBtn']=$(_0x514b48(0x24b)),_0x273ec6[_0x514b48(0x21b)]['append'](_0x273ec6[_0x514b48(0x28e)]),_0x273ec6[_0x514b48(0x28e)]['on'](_0x514b48(0x303),function(){const _0x17a70c=_0x514b48;_0x273ec6[_0x17a70c(0x22c)][_0x17a70c(0x234)](),_0x273ec6[_0x17a70c(0x265)]['toggle']();if(_0x273ec6[_0x17a70c(0x22c)]['is'](':visible')){_0x55a3c4[_0x17a70c(0x288)]();const _0xc3f61a=_0x273ec6['$dropdown'][_0x17a70c(0x2d0)]();_0x55a3c4[_0x17a70c(0x212)]({'top':_0xc3f61a['top']+'px','right':'calc(100%\x20-\x20'+(_0xc3f61a[_0x17a70c(0x309)]+_0x273ec6[_0x17a70c(0x22c)][_0x17a70c(0x25d)]())+_0x17a70c(0x2e1)}),_0x273ec6['_populate'](),_0x273ec6[_0x17a70c(0x26b)]();}else _0x55a3c4[_0x17a70c(0x29e)]();});!_0x273ec6['$input'][_0x514b48(0x2ad)](_0x514b48(0x2cb))&&_0x273ec6[_0x514b48(0x252)][_0x514b48(0x2ad)](_0x514b48(0x2cb),_0x514b48(0x1bd));_0x273ec6[_0x514b48(0x265)]=$(_0x514b48(0x2e9)),_0x273ec6[_0x514b48(0x265)][_0x514b48(0x29e)](),_0x273ec6[_0x514b48(0x22c)]=$(_0x514b48(0x1ea))[_0x514b48(0x1d4)](_0x514b48(0x253))[_0x514b48(0x29e)]();const _0x39a190=$(_0x514b48(0x29a)),_0x5cef93=$(_0x514b48(0x285)),_0x55a3c4=$(_0x514b48(0x25b))['append'](_0x39a190,_0x5cef93);_0x55a3c4[_0x514b48(0x29e)](),_0x39a190['on'](_0x514b48(0x303),()=>{const _0x3a70d3=_0x514b48;_0x273ec6['_setInputValue'](),_0x273ec6[_0x3a70d3(0x22c)][_0x3a70d3(0x29e)]();}),_0x5cef93['on'](_0x514b48(0x303),()=>{const _0x2eae1c=_0x514b48;_0x273ec6[_0x2eae1c(0x22c)][_0x2eae1c(0x29e)]();}),_0x273ec6[_0x514b48(0x22f)][_0x514b48(0x28b)](_0x273ec6[_0x514b48(0x265)]),_0x273ec6['$combo'][_0x514b48(0x28b)](_0x273ec6[_0x514b48(0x22c)]),_0x273ec6[_0x514b48(0x2e8)]=$('<ul\x20class=\x22sterfive-tree\x22></ul>'),_0x273ec6[_0x514b48(0x22c)][_0x514b48(0x2df)]()['append'](_0x273ec6[_0x514b48(0x2e8)],_0x55a3c4),_0x273ec6[_0x514b48(0x2e8)]['on'](_0x514b48(0x303),'li',function(_0x188f9b){const _0x3b4623=_0x514b48;_0x188f9b[_0x3b4623(0x1bf)]();let _0x2fee2f=$(this);const _0xcb5d92=0x14,_0x22d2e6=0x14,_0x565187=$(this)[_0x3b4623(0x2d0)](),_0x3050c1=_0x188f9b;if(_0x3050c1[_0x3b4623(0x258)]>=_0x565187['left']&&_0x3050c1['pageX']<=_0x565187[_0x3b4623(0x309)]+_0xcb5d92&&_0x3050c1['pageY']>=_0x565187[_0x3b4623(0x2a3)]&&_0x3050c1[_0x3b4623(0x23a)]<=_0x565187['top']+_0x22d2e6){console['log']('clicked\x20on\x20icon'),console[_0x3b4623(0x1ce)](_0x3b4623(0x239),_0x2fee2f['data'](_0x3b4623(0x275)),_0x2fee2f[_0x3b4623(0x2ad)](_0x3b4623(0x1e2)));if(_0x2fee2f[_0x3b4623(0x1ef)](_0x3b4623(0x221)))_0x2fee2f[_0x3b4623(0x1d5)](_0x3b4623(0x221))[_0x3b4623(0x1d4)]('expanded'),_0x2fee2f[_0x3b4623(0x296)]('ul')[_0x3b4623(0x234)]();else{if(_0x2fee2f[_0x3b4623(0x1ef)](_0x3b4623(0x22d)))_0x2fee2f[_0x3b4623(0x296)]('ul')[_0x3b4623(0x234)](),_0x2fee2f[_0x3b4623(0x254)](_0x3b4623(0x28c));else{if(_0x2fee2f[_0x3b4623(0x296)]('ul')[_0x3b4623(0x296)]()['length']>0x0)_0x2fee2f[_0x3b4623(0x296)]('ul')[_0x3b4623(0x234)](),_0x2fee2f[_0x3b4623(0x254)](_0x3b4623(0x28c));else;}}}}),$(document)['on'](_0x514b48(0x303),function(_0x1fe308){const _0x51182b=_0x514b48;!$(_0x1fe308['target'])['closest'](_0x273ec6[_0x51182b(0x22f)])[_0x51182b(0x308)]&&_0x273ec6[_0x51182b(0x22c)][_0x51182b(0x29e)]();}),this[_0x514b48(0x20d)]();}});},_0x67e48=_0x3c5be6=>_0x5c2ade(void 0x0,[_0x3c5be6],void 0x0,function*({endpointNode:_0x36fcc7,endpoint:_0x13006f,baseUrl:_0x52ba40}){const _0x39346d=_0x528a1a,_0xe68c30=_0x52ba40+'/opcua-for-node-red',_0xa1cc5d=_0xe68c30+_0x39346d(0x2c3),_0x455583=yield fetch(_0xa1cc5d,{'method':_0x39346d(0x1e6),'body':JSON[_0x39346d(0x22a)]({'endpointNode':_0x36fcc7,'endpoint':_0x13006f}),'headers':{'Content-Type':_0x39346d(0x1f1)}});if(_0x455583[_0x39346d(0x1f2)]!==0xc8)return console['log'](_0x39346d(0x1be),_0x455583[_0x39346d(0x1f2)],_0x455583[_0x39346d(0x2b2)]),{'events':null};console[_0x39346d(0x1ce)](_0x39346d(0x2b4),_0x455583[_0x39346d(0x1f2)],_0x455583[_0x39346d(0x2b2)]);const _0x594691=yield _0x455583[_0x39346d(0x1fa)](),_0x29d972=_0x594691[_0x39346d(0x2c4)];return{'events':_0x29d972};}),_0x3516a6=()=>{const _0x2a6990=_0x528a1a,_0x3c2e9f=$(_0x2a6990(0x1e8)),_0x1f380e=_0x3c2e9f[_0x2a6990(0x2f5)](),_0x6b6cf9=RED[_0x2a6990(0x290)][_0x2a6990(0x1f4)](_0x1f380e);if(!_0x6b6cf9)return undefined;const {endpoint:_0x399fe5,securityMode:_0x5d4f42,securityPolicy:_0x555d0b,userIdentityType:_0x1c0856,credentials:_0x8d0646,namespaceAliases:_0x358e97}=_0x6b6cf9,_0x24c327={'endpoint':_0x399fe5,'securityMode':_0x5d4f42,'securityPolicy':_0x555d0b,'userIdentityType':_0x1c0856,'credentials':_0x8d0646,'namespaceAliases':_0x358e97};return _0x24c327;},_0x15feff=()=>{const _0x19ad9a=_0x528a1a,_0x419ab3=$(_0x19ad9a(0x1e8)),_0x3167c4=_0x419ab3[_0x19ad9a(0x2f5)](),_0x19cbc5=_0x3516a6();if(!_0x19cbc5)return undefined;const _0x472c94=_0x19cbc5['namespaceAliases'];return Object[_0x19ad9a(0x257)]({'namespaceAliases':_0x472c94,'id':_0x3167c4},_0x19cbc5);},_0x239ee9=()=>{return{'endpointNode':_0x15feff};},_0xe92e74=()=>{const _0x6fa4=_0x528a1a,_0x52a91e=$('.red-ui-tray-body');if(_0x52a91e[_0x6fa4(0x308)]){const _0x1cd5d7=$('<iframe></iframe>',{'src':_0x6fa4(0x2f3),'scrolling':'no','style':_0x6fa4(0x2ce),'allowtransparency':_0x6fa4(0x1c2),'width':_0x6fa4(0x28f),'height':_0x6fa4(0x209)});_0x52a91e[_0x6fa4(0x28b)](_0x1cd5d7),_0x1cd5d7[_0x6fa4(0x212)]({'position':_0x6fa4(0x2ca),'right':_0x6fa4(0x23d),'bottom':_0x6fa4(0x251)});}};RED[_0x528a1a(0x290)]['registerType']('OpcUa-Client2-MonitorEvent',{'category':_0x528a1a(0x292),'color':_0x528a1a(0x24a),'align':_0x528a1a(0x293),'icon':'opcualogobig.png','paletteLabel':'monitor\x20events','defaults':{'inputs':{'value':0x1},'output':{'value':0x4},'name':{'value':''},'endpoint':{'value':'','required':!![],'type':_0x528a1a(0x2f0)},'subscription':{'value':'','required':!![],'validate':_0x320995=>{if(_0x320995==='')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 _0x4559b6=_0x528a1a;return this[_0x4559b6(0x24d)]||_0x4559b6(0x261);},'labelStyle'(){const _0xdca0f3=_0x528a1a;return this[_0xdca0f3(0x24d)]?'node_label_italic':'';},'oneditprepare'(){const _0x179633=_0x528a1a;_0xe3ea40(),_0x3430c3(),_0xd26ea3(RED,this),_0xe92e74(),$(_0x179633(0x233))['on'](_0x179633(0x2e4),()=>{const _0x5e5a22=_0x179633,_0x2a6644=$(_0x5e5a22(0x213))['prop'](_0x5e5a22(0x1d9));_0x2a6644?$(_0x5e5a22(0x272))[_0x5e5a22(0x2f5)](0x0):$('#node-input-inputs')[_0x5e5a22(0x2f5)](0x1);});const _0x4e8aaa=$(_0x179633(0x217));_0x4e8aaa['nodeBrowser'](Object['assign'](Object[_0x179633(0x257)]({},_0x239ee9()),{'filter'(_0x5ab2e0){const _0x379107=_0x179633;return _0x5ab2e0[_0x379107(0x260)]===_0x379107(0x301);},'isSelectable'(_0x53856b){const _0x265d84=_0x179633;return _0x53856b['nodeClass']===_0x265d84(0x301);}})),$(_0x179633(0x2de));const _0x451412=$(_0x179633(0x214));_0x451412['eventFieldSelector'](Object[_0x179633(0x257)]({},_0x239ee9()));},'oneditsave'(){const _0x2dcb66=_0x528a1a,_0x3adc23=$(_0x2dcb66(0x213))[_0x2dcb66(0x2d8)](_0x2dcb66(0x1d9));_0x3adc23?($(_0x2dcb66(0x213))[_0x2dcb66(0x2f5)](_0x3adc23?0x0:0x1),this[_0x2dcb66(0x207)]=_0x3adc23?0x0:0x1):($(_0x2dcb66(0x213))[_0x2dcb66(0x2f5)](0x1),this[_0x2dcb66(0x207)]=0x1);}});}()));function _0x42d7(){const _0x329fb9=['>&nbsp;\x20','aliasedBrowsePath','_delay','_populate','\x22}><span\x20class=\x22tree-text\x22\x20title=','typeDefinition','271998jPGGAy','mousedown.red-ui-typedInput-focus-block','css','#node-input-startImmediately','#node-input-selectClauses','</span>','Forward','#node-input-nodeId','data','no-expandable','red-ui-typedInput-icon\x20','$inputGroup','elements','scrollTop','verify','off','fa-sliders','expandable','Inverse','nsu','has','filter','mousedown.red-ui-typedInput-close-property-select','err','resolveParentNode','View','stringify','HasSubtype','$dropdown','expanded','.sterfive-tree\x20li','$combo','nodeId:\x20','<span\x20title=','match','node-input-startImmediately','toggle','<button\x20title=\x22open\x20OPCUA\x20AddressSpace\x20Browser\x22><i\x20class=\x22fa\x20fa-sitemap\x22></i></button>','DataType','span.custom-checkbox.checked','already\x20loading','clicked\x20on\x20','pageY','sterfive-combo-box','already\x20fetched','20px','msg.','SandyBrown','<i\x20class=\x22fa\x20fa-tag\x22/>1\x20&nbsp;\x20','HasComponent','\x22\x20style=\x22color:','Variable','NodeId\x20with\x20namespace\x20Urn','element','main-wrapper','browse\x20path:\x20','.spinner',':first','#C0DEED','<button><i\x20class=\x22fa\x20fa-sitemap\x22></i></button>','_createMenu','name','fetched','join','input[type=\x22checkbox\x22]','16px','$input','sterfive-dropdown','toggleClass','nodeId_aliased','fa-object-group','assign','pageX','subTypes','<button\x20title=\x22verify\x20nodeId\x20or\x20browsePath\x22><i\x20class=\x22fa\x20fa-refresh\x22></i></button>','<div\x20class=\x22floating-buttons\x22></div>','<li><i\x20class=\x22fa\x20fa-error\x22\x20style=\x22color:red;\x22></i>no\x20reference\x20!<ul></ul></li>','width','parentElement','selectedMenuItem','nodeClass','OPCUA\x20Monitor','bp_indexed','replaceChild','isSelectable','$info','endpoint','subscription','><i\x20class=\x22fa\x20','ns=0;i=35','body','_updateSelectedFields','NodeClass','multiple','tabindex','browseResult','fa-question','rgba(61,\x2060,\x204,\x200.525)','#node-input-inputs','nsuNodeID','\x20(ns=','value','then','_hideMenu','aliasedNodeId','grey','suppressed','next','__parentNode','fa-cog','trigger','opts','opc.tcp://opcuademo.sterfive.com:26543','isTypeRef','/browse','title','CadetBlue','<span\x20class=\x22cancel-button\x22>✖</span>','input-group','12858IMOtju','show','statusCode:\x20','sterfive-input-error','append','expandable\x20expanded','preventDefault','$toggleTreeBtn','180px','nodes','12yBQUxN','opcua','right',');\x20-webkit-mask-image:\x20url(','18px','children','<i>','text','closest','<span\x20class=\x22validate-button\x22>✔</span>','none','remove','browseName','hide','statusCode','fa-list-alt','toString','_updateValues','top','sterfive.eventFieldSelector','options','target','Objects','<i\x20class=\x22red-ui-typedInput-icon\x20fa\x20fa-caret-down\x22></i>','ns=0;i=46','Both','span.custom-checkbox','height','attr','position','ReferenceType','ns=0;i=61','requestedNodeId','statusText','pointer-events','fetched\x20:\x20','ObjectType','reference','unchecked','<span\x20class=\x22custom-checkbox\x20unchecked\x22></span>','$elementDiv','widget','HasChild','/opcua-for-node-red','Method','_showMenu','<option/>','find',':visible','_installChildren','/extractEventTypes','events','sterfive-typedInput-options\x20sterfive-online-menu','displayName','_initMenu','msg','message','absolute','placeholder','_showTypeMenu','<i\x20class=\x22fa\x20','background-color:transparent;overflow:hidden;border:3px','referenceTypeId','offset','focus','SeaGreen',';\x22></i>\x20','aliased\x20NodeId:\x20','Aliased\x20NodeId','sterfive.nodeBrowser','prependTo','prop','$menu','Good','$uiSelect','<i\x20class=\x22fa\x20fa-bookmark\x22/>&nbsp;\x20','/walk-backward','#node-input-whereClause','empty','BrowsePath','px)','4261408DfwRhn','call','change','7732566ApxzPR','disarmClick','string','$tree','<div\x20class=\x22sterfive-info-text\x22></div>','nodeId_nsu','data-value','$verifyBtn','split','Organizes','replaceWith','OpcUa-Endpoint2','slideDown',';\x22></i>','/opcua-for-node-red/support-frame.html','loading','val','IsForward','apply','each','setMode','SuppressedError','dblclick','BrowseName','keydown','currentParent','Unspecified','localeCompare','Object','bp_aliased','click','function','label','Invalid','nodeId','length','left','Value\x20is\x20not\x20verified','<li>','selected','enter\x20a\x20nodeId\x20or\x20a\x20browsePath\x20','fetching\x20failed\x20with\x20error','stopPropagation','$selectTrigger','auto','true','sort','relativePath','<i\x20class=\x22fa\x20fa-id-card\x22/>&nbsp;\x20','node\x20id\x20or\x20\x20browse\x20path\x20comes\x20from\x20injected\x20msg\x20parameter','li[key=\x22','mousedown','<i\x20class=\x22fa\x20fa-font\x22/i>\x20','aliased\x20browsePath:\x20','ns=0;i=40','browsePath','<i\x20class=\x22fa\x20fa-tag\x22/><i\x20class=\x22fa\x20fa-fighter-jet\x22/>&nbsp;','log','HasTypeDefinition','appendTo','6ghSTKO','NodeId','reset','addClass','removeClass','SteelBlue','VariableType','Aliased\x20Browse\x20Path','checked','</li>','<ul\x20class=\x22sterfive-tree\x22></ul>','subscriptions','<span\x20class=\x22red-ui-typedInput-type-label\x22></span>','callback','push','throw','parentNode','class','<div>','fa-folder','mode','POST','sterfive-info','#node-input-endpoint','namespaceAliases','<div/>','7222720wnVZGp','4130ynhtDg','red-ui-typedInput-focus','indexOf','hasClass','failure','application/json','status','sterfive-input-group','node','[value=\x27','$selectLabel','namespaceIndex','endpointNode','icon','json','fa-text-width','113799TkOnPp','prev','keyCode','ns=0;i=47','error','after',':focus','DisplayName','DodgerBlue','.tree-text:first','references','inputs','3305665pbDtrQ','30px'];_0x42d7=function(){return _0x329fb9;};return _0x42d7();}
9
8
  </script>
10
9
  <script type="text/x-red" data-template-name="OpcUa-Client2-MonitorEvent">
11
10
  <style>