@opcua/for-node-red 3.8.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 _0x7308(_0x41d8f7,_0x3e56e4){const _0x1fdc5a=_0x1fdc();return _0x7308=function(_0x7308f6,_0x1f5f0d){_0x7308f6=_0x7308f6-0x12a;let _0x410431=_0x1fdc5a[_0x7308f6];return _0x410431;},_0x7308(_0x41d8f7,_0x3e56e4);}(function(_0x4345e3,_0x28b382){const _0x2aea6c=_0x7308,_0x2b1abb=_0x4345e3();while(!![]){try{const _0x2780ce=-parseInt(_0x2aea6c(0x1ad))/0x1*(parseInt(_0x2aea6c(0x1f9))/0x2)+parseInt(_0x2aea6c(0x199))/0x3*(-parseInt(_0x2aea6c(0x1b1))/0x4)+-parseInt(_0x2aea6c(0x259))/0x5*(-parseInt(_0x2aea6c(0x202))/0x6)+-parseInt(_0x2aea6c(0x1f2))/0x7*(parseInt(_0x2aea6c(0x240))/0x8)+parseInt(_0x2aea6c(0x133))/0x9+parseInt(_0x2aea6c(0x1f5))/0xa+parseInt(_0x2aea6c(0x26d))/0xb*(parseInt(_0x2aea6c(0x201))/0xc);if(_0x2780ce===_0x28b382)break;else _0x2b1abb['push'](_0x2b1abb['shift']());}catch(_0x28299f){_0x2b1abb['push'](_0x2b1abb['shift']());}}}(_0x1fdc,0x22b64),(function(){'use strict';const _0x5492ff=_0x7308;function _0x1bcc84(_0x3d24ba,_0x2a96a0,_0x4305b3,_0x4e08a0){function _0x9cdae(_0x2eac0c){return _0x2eac0c instanceof _0x4305b3?_0x2eac0c:new _0x4305b3(function(_0x26b040){_0x26b040(_0x2eac0c);});}return new(_0x4305b3||(_0x4305b3=Promise))(function(_0x1813bf,_0x204b5c){const _0x56a0d2=_0x7308;function _0x1fed82(_0x1c7b25){try{_0x59edf1(_0x4e08a0['next'](_0x1c7b25));}catch(_0xda2573){_0x204b5c(_0xda2573);}}function _0x5addb6(_0x15284b){try{_0x59edf1(_0x4e08a0['throw'](_0x15284b));}catch(_0x1d498a){_0x204b5c(_0x1d498a);}}function _0x59edf1(_0x3b5bc9){const _0x4bc81d=_0x7308;_0x3b5bc9[_0x4bc81d(0x23e)]?_0x1813bf(_0x3b5bc9[_0x4bc81d(0x1b6)]):_0x9cdae(_0x3b5bc9['value'])[_0x4bc81d(0x190)](_0x1fed82,_0x5addb6);}_0x59edf1((_0x4e08a0=_0x4e08a0[_0x56a0d2(0x17d)](_0x3d24ba,_0x2a96a0||[]))[_0x56a0d2(0x25f)]());});}typeof SuppressedError===_0x5492ff(0x137)?SuppressedError:function(_0x2c5f0f,_0x32e4b0,_0x1756e3){const _0x3685db=_0x5492ff;var _0x5df4a7=new Error(_0x1756e3);return _0x5df4a7['name']=_0x3685db(0x216),_0x5df4a7['error']=_0x2c5f0f,_0x5df4a7[_0x3685db(0x185)]=_0x32e4b0,_0x5df4a7;};const _0x4a311b=_0x5492ff(0x16b),_0x21202d='ns=0;i=61',_0x294c4e=_0x5492ff(0x272),_0x167eb3=_0x5492ff(0x139),_0x498de1=_0x5492ff(0x15d),_0x5c65fc=_0x5492ff(0x171),_0x18b46b='ns=0;i=40';var _0x2f1415;(function(_0xd3bee){const _0x4340ba=_0x5492ff;_0xd3bee[_0xd3bee[_0x4340ba(0x157)]=0x0]=_0x4340ba(0x157),_0xd3bee[_0xd3bee['Inverse']=0x1]=_0x4340ba(0x18e),_0xd3bee[_0xd3bee[_0x4340ba(0x1ca)]=0x2]='Both',_0xd3bee[_0xd3bee[_0x4340ba(0x19f)]=0x3]=_0x4340ba(0x19f);}(_0x2f1415||(_0x2f1415={})));var _0x7d7ac5;(function(_0x52023c){const _0x20ef8f=_0x5492ff;_0x52023c[_0x52023c[_0x20ef8f(0x160)]=0x0]=_0x20ef8f(0x160),_0x52023c[_0x52023c[_0x20ef8f(0x145)]=0x1]=_0x20ef8f(0x145),_0x52023c[_0x52023c[_0x20ef8f(0x142)]=0x2]=_0x20ef8f(0x142),_0x52023c[_0x52023c[_0x20ef8f(0x1ff)]=0x4]=_0x20ef8f(0x1ff),_0x52023c[_0x52023c[_0x20ef8f(0x149)]=0x8]=_0x20ef8f(0x149),_0x52023c[_0x52023c[_0x20ef8f(0x1d3)]=0x10]=_0x20ef8f(0x1d3),_0x52023c[_0x52023c['ReferenceType']=0x20]=_0x20ef8f(0x225),_0x52023c[_0x52023c[_0x20ef8f(0x21e)]=0x40]=_0x20ef8f(0x21e),_0x52023c[_0x52023c['View']=0x80]='View';}(_0x7d7ac5||(_0x7d7ac5={})));var _0x259668;(function(_0x6e40f0){const _0x7db51b=_0x5492ff;_0x6e40f0[_0x6e40f0[_0x7db51b(0x145)]=0x1]=_0x7db51b(0x145),_0x6e40f0[_0x6e40f0[_0x7db51b(0x142)]=0x2]=_0x7db51b(0x142),_0x6e40f0[_0x6e40f0[_0x7db51b(0x1ff)]=0x4]=_0x7db51b(0x1ff),_0x6e40f0[_0x6e40f0[_0x7db51b(0x149)]=0x8]=_0x7db51b(0x149),_0x6e40f0[_0x6e40f0['VariableType']=0x10]=_0x7db51b(0x1d3),_0x6e40f0[_0x6e40f0[_0x7db51b(0x225)]=0x20]=_0x7db51b(0x225),_0x6e40f0[_0x6e40f0[_0x7db51b(0x21e)]=0x40]=_0x7db51b(0x21e),_0x6e40f0[_0x6e40f0['View']=0x80]=_0x7db51b(0x172);}(_0x259668||(_0x259668={})));var _0x4047ba;(function(_0x45ca67){const _0x40ebc2=_0x5492ff;_0x45ca67[_0x45ca67[_0x40ebc2(0x225)]=0x1]=_0x40ebc2(0x225),_0x45ca67[_0x45ca67[_0x40ebc2(0x1b7)]=0x2]=_0x40ebc2(0x1b7),_0x45ca67[_0x45ca67[_0x40ebc2(0x1a0)]=0x4]=_0x40ebc2(0x1a0),_0x45ca67[_0x45ca67[_0x40ebc2(0x227)]=0x8]='BrowseName',_0x45ca67[_0x45ca67[_0x40ebc2(0x1cc)]=0x10]=_0x40ebc2(0x1cc),_0x45ca67[_0x45ca67[_0x40ebc2(0x193)]=0x20]=_0x40ebc2(0x193);}(_0x4047ba||(_0x4047ba={})));function _0x3130a1(_0x2057a5){const _0x2f90b7=_0x5492ff;switch(_0x2057a5){case _0x2f90b7(0x211):return _0x4a311b;case _0x2f90b7(0x276):return _0x167eb3;case'HasComponent':return _0x294c4e;case _0x2f90b7(0x1fb):return _0x498de1;case _0x2f90b7(0x270):return _0x5c65fc;case _0x2f90b7(0x223):return _0x18b46b;}}const _0x34d064=_0x3549b2=>{const _0x5ae3a5=_0x5492ff;switch(_0x3549b2[_0x5ae3a5(0x1ef)]){case _0x5ae3a5(0x145):if(_0x3549b2[_0x5ae3a5(0x1a8)]===_0x4a311b);if(_0x3549b2[_0x5ae3a5(0x1e6)]===_0x21202d||_0x3549b2['referenceTypeId']===_0x5ae3a5(0x176))return{'icon':_0x5ae3a5(0x186),'color':_0x5ae3a5(0x16c)};return{'icon':'fa-object-group','color':_0x5ae3a5(0x12c)};case _0x5ae3a5(0x142):if(_0x3549b2[_0x5ae3a5(0x1a8)]===_0x294c4e)return{'icon':_0x5ae3a5(0x1af),'color':_0x5ae3a5(0x1b2)};else return _0x3549b2[_0x5ae3a5(0x1a8)]===_0x167eb3?{'icon':_0x5ae3a5(0x1af),'color':_0x5ae3a5(0x18f)}:{'icon':'fa-list-alt','color':_0x5ae3a5(0x1a1)};case _0x5ae3a5(0x1ff):return{'icon':_0x5ae3a5(0x262),'color':_0x5ae3a5(0x166)};case _0x5ae3a5(0x149):return{'icon':_0x5ae3a5(0x1d0),'color':'DarkOrange'};case _0x5ae3a5(0x1d3):return{'icon':_0x5ae3a5(0x1f6),'color':'DarkOrange'};case _0x5ae3a5(0x21e):return{'icon':_0x5ae3a5(0x188),'color':'CadetBlue'};}return{'icon':'fa-question','color':_0x5ae3a5(0x1c3)};},_0x56c8c8=(_0x156cf1,_0x317f9d,_0x4b65e6)=>_0x1bcc84(void 0x0,[_0x156cf1,_0x317f9d,_0x4b65e6],void 0x0,function*({endpointNode:_0x5ca1f2,endpoint:_0x35a5bd,baseUrl:_0x45125f},_0x388e0a,_0x275da7){const _0x22dc0d=_0x5492ff,_0x559485=_0x45125f+_0x22dc0d(0x138),_0x3da39f=_0x559485+'/browse',_0x5bbe3d=Object[_0x22dc0d(0x244)](Object[_0x22dc0d(0x244)]({},_0x275da7),{'nodeId':_0x388e0a,'resultMask':0x3f}),_0x311082=yield fetch(_0x3da39f,{'method':_0x22dc0d(0x19d),'body':JSON[_0x22dc0d(0x21c)]({'endpointNode':_0x5ca1f2,'endpoint':_0x35a5bd,'browseDescription':_0x5bbe3d}),'headers':{'Content-Type':_0x22dc0d(0x1f4)}});if(_0x311082[_0x22dc0d(0x25a)]!==0xc8)return console[_0x22dc0d(0x14f)](_0x22dc0d(0x24f),_0x311082[_0x22dc0d(0x25a)],_0x311082['statusText']),{'references':[]};const _0x52100d=yield _0x311082[_0x22dc0d(0x15f)](),_0x5a4427=_0x52100d[_0x22dc0d(0x132)][_0x22dc0d(0x13b)]||[];return{'references':_0x5a4427};}),_0x365311={'referenceTypeId':_0x3130a1(_0x5492ff(0x1fb)),'includeSubtypes':!![],'browseDirection':_0x2f1415[_0x5492ff(0x157)],'nodeClassMask':_0x7d7ac5[_0x5492ff(0x142)]|_0x7d7ac5[_0x5492ff(0x145)]|_0x7d7ac5[_0x5492ff(0x1ff)],'resultMask':0x3f},_0xfbfa3e={'referenceTypeId':_0x3130a1(_0x5492ff(0x211)),'includeSubtypes':!![],'browseDirection':_0x2f1415[_0x5492ff(0x157)],'nodeClassMask':_0x7d7ac5[_0x5492ff(0x142)]|_0x7d7ac5['Object']|_0x7d7ac5[_0x5492ff(0x1ff)],'resultMask':0x3f},_0x5782cf=(_0x199eb5,_0x56c0c0)=>_0x1bcc84(void 0x0,[_0x199eb5,_0x56c0c0],void 0x0,function*({endpointNode:_0xc69630,endpoint:_0x2a3958,baseUrl:_0x3e3606},{nodeId:_0x4126fc,rootNodeId:_0x24237e,isType:_0x1c7927}){const _0x589d5d=_0x5492ff,_0x503648=_0x3e3606+_0x589d5d(0x138),_0x1b5ee5=_0x503648+_0x589d5d(0x15a),_0x1aa579=yield fetch(_0x1b5ee5,{'method':_0x589d5d(0x19d),'body':JSON[_0x589d5d(0x21c)]({'endpointNode':_0xc69630,'endpoint':_0x2a3958,'nodeId':_0x4126fc,'rootNodeId':_0x24237e,'isType':_0x1c7927}),'headers':{'Content-Type':_0x589d5d(0x1f4)}});if(_0x1aa579['status']!==0xc8)return null;const _0xf71e4b=yield _0x1aa579['json']();return _0xf71e4b[_0x589d5d(0x178)];}),_0x93c5d=(_0x3cefff,_0x1ef1fa)=>{const _0x410172=_0x5492ff;if(_0x3cefff[_0x410172(0x156)]!=='Good')return _0x3cefff[_0x410172(0x141)];switch(_0x1ef1fa){case _0x410172(0x178):return _0x3cefff[_0x410172(0x1a9)];case _0x410172(0x1e7):return _0x3cefff[_0x410172(0x1b8)]||_0x3cefff[_0x410172(0x1a9)];case _0x410172(0x1da):return _0x3cefff[_0x410172(0x1b5)]||_0x3cefff[_0x410172(0x219)];case'nsuNodeID':return _0x3cefff['nodeId_nsu'];default:case _0x410172(0x24e):return _0x3cefff[_0x410172(0x24e)];}},_0x2ee62b=_0x11a1c2=>{const _0x1d90cf=_0x5492ff;if(_0x11a1c2['statusCode']!==_0x1d90cf(0x24c))return _0x1d90cf(0x19e)+_0x11a1c2[_0x1d90cf(0x156)];else{let _0x1ea9c3=[];return _0x1ea9c3['push']('nodeId:\x20'+_0x11a1c2[_0x1d90cf(0x24e)]),_0x1ea9c3[_0x1d90cf(0x258)]('browse\x20path:\x20'+_0x11a1c2['bp_indexed']),_0x1ea9c3[_0x1d90cf(0x258)](_0x1d90cf(0x22f)+_0x7d7ac5[_0x11a1c2['nodeClass']]),_0x11a1c2[_0x1d90cf(0x219)]&&_0x1ea9c3[_0x1d90cf(0x258)](_0x1d90cf(0x1a3)+_0x11a1c2['nodeId_nsu']),_0x11a1c2[_0x1d90cf(0x1b5)]&&_0x1ea9c3[_0x1d90cf(0x258)]('aliased\x20NodeId:\x20'+_0x11a1c2['nodeId_aliased']),_0x11a1c2['bp_indexed']&&_0x1ea9c3[_0x1d90cf(0x258)](_0x1d90cf(0x235)+_0x11a1c2[_0x1d90cf(0x1b8)]),_0x1ea9c3[_0x1d90cf(0x12e)]('\x0a');}};function _0x4f5709(_0x537589){const _0x129a11=_0x5492ff;if(_0x537589[_0x129a11(0x151)](/^nsu=/))return _0x129a11(0x1c8);if(_0x537589[_0x129a11(0x151)](/^(ns=.*;)?(i|b|s|g)=/))return'nodeId';if(_0x537589['match'](/^nsa=/))return'aliasedNodeId';if(_0x537589[_0x129a11(0x151)](/^(\/|\.)[0-9]+:/))return _0x129a11(0x178);if(_0x537589['match'](/^(\/|\.).*:/))return'browsePath';}function _0xd53134(_0xff41c8){const _0x5db045=_0x5492ff,_0x5d151d=_0x4f5709(_0xff41c8);switch(_0x5d151d){case'nodeId':return'n';case _0x5db045(0x1da):return'na';case _0x5db045(0x1c8):return _0x5db045(0x208);case _0x5db045(0x178):return'b';case _0x5db045(0x1e7):return'ab';default:return't';}}function _0x393f51(_0x5b3561){const _0x56b4c1=_0x5492ff;let _0x495d1a;switch(_0x5b3561){case'n':_0x495d1a='nodeId';break;case'na':_0x495d1a='aliasedNodeId';break;case _0x56b4c1(0x208):_0x495d1a=_0x56b4c1(0x1c8);break;case'b':_0x495d1a=_0x56b4c1(0x178);break;case'ab':_0x495d1a=_0x56b4c1(0x1e7);break;}return _0x495d1a;}function _0x4486c9(_0xa28afc){const _0x4f18ee=_0x5492ff;switch(_0xa28afc){case _0x4f18ee(0x24e):return'n';case'aliasedNodeId':return'na';case _0x4f18ee(0x1c8):return _0x4f18ee(0x208);case _0x4f18ee(0x178):return'b';case _0x4f18ee(0x1e7):return'ab';default:return't';}}const _0x2de346=(_0x1a1ffc,_0x5aab98)=>_0x1bcc84(void 0x0,[_0x1a1ffc,_0x5aab98],void 0x0,function*({endpointNode:_0x296b0b,endpoint:_0x5b0f1f,baseUrl:_0x23f4e2},_0x5d62b7){const _0x25a314=_0x5492ff,_0xf70f63=_0x23f4e2+'/opcua-for-node-red',_0x13e83f=_0xf70f63+_0x25a314(0x26a),_0x3a5fa8=_0x296b0b['id'],_0xad0e10=RED[_0x25a314(0x248)]['node'](_0x3a5fa8);console[_0x25a314(0x14f)](_0xad0e10['namespaceAliases']),_0xad0e10[_0x25a314(0x155)];const _0x31d3d0=_0x296b0b[_0x25a314(0x155)],_0xe4e711=yield fetch(_0x13e83f,{'method':'POST','body':JSON['stringify']({'endpointNode':_0x296b0b,'endpoint':_0x5b0f1f,'nodeId':_0x5d62b7,'namespaceAliases':_0x31d3d0}),'headers':{'Content-Type':_0x25a314(0x1f4)}}),_0xef51d2=yield _0xe4e711[_0x25a314(0x15f)]();return{'json':_0xef51d2,'data':_0xe4e711};}),_0x2fc938=(_0x520eba,_0x5036bd,_0x3839c1,_0x4d8d79)=>_0x1bcc84(void 0x0,[_0x520eba,_0x5036bd,_0x3839c1,_0x4d8d79],void 0x0,function*({endpointNode:_0x575d18,endpoint:_0xa64ad1,baseUrl:_0x1d8ae0},_0x4057da,_0x4656fb,_0x113d95){const _0x4eeaa9=_0x5492ff,_0x5d33a6=_0x4656fb[_0x4eeaa9(0x1fe)](),{json:_0x59da5e,data:_0x3d376b}=yield _0x2de346({'endpointNode':_0x575d18,'endpoint':_0xa64ad1,'baseUrl':_0x1d8ae0},_0x5d33a6),_0x4d2ad2=(_0x9fbf0b,_0x254a9c)=>{const _0x4e3b66=_0x4eeaa9;_0x113d95[_0x4e3b66(0x1fa)](_0x9fbf0b)[_0x4e3b66(0x20d)](_0x4e3b66(0x1e8))[_0x4e3b66(0x20d)](_0x254a9c),_0x113d95[_0x4e3b66(0x1ba)](),setTimeout(()=>{const _0x100b4f=_0x4e3b66;_0x113d95[_0x100b4f(0x20f)](_0x254a9c),_0x113d95[_0x100b4f(0x224)]();},0xbb8);};if(_0x3d376b['status']!==0xc8)return _0x4d2ad2('!!failure!!'+_0x5d33a6,_0x4eeaa9(0x167)),![];else{if(_0x59da5e[_0x4eeaa9(0x156)][_0x4eeaa9(0x151)](/Good/)){const _0x58ad10=_0x2ee62b(_0x59da5e);_0x4656fb[_0x4eeaa9(0x191)]('title',_0x58ad10);const _0x3dc333=_0x93c5d(_0x59da5e,_0x4057da);return _0x4656fb[_0x4eeaa9(0x1fe)](_0x3dc333),_0x4656fb[_0x4eeaa9(0x1e1)](_0x4eeaa9(0x203)),_0x4d2ad2(_0x4eeaa9(0x24c),'ok'),!![];}else return _0x4656fb[_0x4eeaa9(0x1fe)](''+_0x5d33a6),_0x4d2ad2(_0x59da5e['statusCode']+'\x20'+_0x3d376b[_0x4eeaa9(0x16e)],_0x4eeaa9(0x167)),![];}});function _0x43bd24(_0x4ecff6,_0x3db522){return _0x1bcc84(this,void 0x0,void 0x0,function*(){const _0x30d6ba=_0x7308,_0x21d0dd=_0x4ecff6[_0x30d6ba(0x265)](_0x30d6ba(0x1b6)),_0x37a7e2=yield _0x56c8c8(_0x3db522,_0x21d0dd,_0x365311),_0x54e31a=yield _0x56c8c8(_0x3db522,_0x21d0dd,_0xfbfa3e);return{'references':[..._0x37a7e2[_0x30d6ba(0x13b)],..._0x54e31a[_0x30d6ba(0x13b)]]};});}const _0x307960={'referenceTypeId':_0x3130a1(_0x5492ff(0x270)),'includeSubtypes':!![],'browseDirection':_0x2f1415['Forward'],'nodeClassMask':_0x7d7ac5[_0x5492ff(0x225)]|_0x7d7ac5['ObjectType']|_0x7d7ac5[_0x5492ff(0x21e)]|_0x7d7ac5[_0x5492ff(0x1d3)],'resultMask':0x3f};function _0x261d67(_0x4984d7,_0x5a4948){return _0x1bcc84(this,void 0x0,void 0x0,function*(){const _0x3a582c=_0x7308,_0x4f51b7=_0x4984d7[_0x3a582c(0x265)](_0x3a582c(0x1b6)),_0x1c75e1=yield _0x56c8c8(_0x5a4948,_0x4f51b7,_0x307960);return _0x1c75e1;});}const _0x301bbc=_0x3ceea3=>{const _0x548bb2=_0x5492ff;var _0x1c9173,_0x1ab84b,_0x536f6d,_0x13accb;if(!_0x3ceea3||!_0x3ceea3[_0x548bb2(0x24e)]){const _0x22e4a8=$(_0x548bb2(0x14c));return _0x22e4a8;}const _0x9cf337=_0x3ceea3[_0x548bb2(0x24e)][_0x548bb2(0x26b)](),_0x2dcfad=((_0x1c9173=_0x3ceea3[_0x548bb2(0x232)])===null||_0x1c9173===void 0x0?void 0x0:_0x1c9173[_0x548bb2(0x1fa)])||((_0x1ab84b=_0x3ceea3[_0x548bb2(0x17b)])===null||_0x1ab84b===void 0x0?void 0x0:_0x1ab84b[_0x548bb2(0x17e)])||_0x3ceea3[_0x548bb2(0x24e)]['toString'](),{icon:_0x560584,color:_0x29c5af}=_0x34d064(_0x3ceea3),_0x4a0ec2='('+_0x3ceea3[_0x548bb2(0x24e)][_0x548bb2(0x26b)]()+')\x20'+(((_0x536f6d=_0x3ceea3['browseName'])===null||_0x536f6d===void 0x0?void 0x0:_0x536f6d['name'])||((_0x13accb=_0x3ceea3[_0x548bb2(0x232)])===null||_0x13accb===void 0x0?void 0x0:_0x13accb[_0x548bb2(0x1fa)])||''),_0x2da34f=$(_0x548bb2(0x255)+_0x3ceea3[_0x548bb2(0x24e)]['toString']()+_0x548bb2(0x15e)+_0x4a0ec2+_0x548bb2(0x13f)+_0x560584+_0x548bb2(0x174)+_0x29c5af+';\x22></i>\x20'+_0x2dcfad+'</span><ul></ul></li>');return _0x2da34f[_0x548bb2(0x20d)](_0x548bb2(0x14a)),_0x2da34f['data']('value',_0x9cf337),_0x2da34f[_0x548bb2(0x265)](_0x548bb2(0x243),_0x3ceea3),_0x2da34f;},_0xc2c45a=(_0x23c4b6,_0x5f2c60)=>{const _0x55d7e7=_0x5492ff;return _0x5f2c60[_0x55d7e7(0x24b)](_0x55d7e7(0x239)+_0x23c4b6+'\x22]');},_0x572501=(_0x165b0c,_0x4e0715)=>{const _0x7804a8=_0x5492ff;_0x165b0c[_0x7804a8(0x1e4)][_0x7804a8(0x24b)](_0x7804a8(0x241))[_0x7804a8(0x20f)]('selected'),_0x4e0715['find'](_0x7804a8(0x1b0))[_0x7804a8(0x20d)]('selected');},_0x1c82fd=(_0x1b8853,_0x41c1e8,_0x182254)=>_0x1bcc84(void 0x0,void 0x0,void 0x0,function*(){const _0x5746fe=_0x5492ff;let _0x4f0048=_0x182254['children'](_0x5746fe(0x1ae));_0x41c1e8[_0x5746fe(0x12a)][_0x5746fe(0x252)]||[];const _0x3e4642=_0x41c1e8[_0x5746fe(0x273)]||[];if(_0x3e4642[_0x5746fe(0x263)]===0x0)return;for(const _0x530ece of _0x3e4642){_0x4f0048[_0x5746fe(0x20b)](_0x5746fe(0x14a))&&(yield _0x28fb3b(_0x1b8853,_0x4f0048));const _0xfb95b=_0xc2c45a(_0x530ece,_0x4f0048);if(_0xfb95b[_0x5746fe(0x263)]===0x0)return;_0x4f0048=_0xfb95b;}_0x572501(_0x1b8853,_0x4f0048),_0x186225(_0x1b8853[_0x5746fe(0x22d)],_0x4f0048);});function _0x186225(_0x3e2b05,_0x440c7a){const _0x156c68=_0x5492ff,_0x1ca810=_0x440c7a[_0x156c68(0x195)]()[_0x156c68(0x277)],_0x4e1249=_0x3e2b05['scrollTop']();if(_0x4e1249==undefined)return;const _0x496a63=_0x4e1249+_0x1ca810-_0x3e2b05['height']()/0x2+_0x440c7a[_0x156c68(0x16a)]()/0x2;_0x3e2b05[_0x156c68(0x254)]({'scrollTop':_0x496a63},0x1f4);}const _0x2ef792=(_0x2196de,_0x35cb92)=>_0x1bcc84(void 0x0,void 0x0,void 0x0,function*(){const _0x64409e=_0x5492ff,_0x39665e=_0x2196de[_0x64409e(0x14b)][_0x64409e(0x1fe)](),_0x29b247={'nodeId':_0x39665e,'rootNodeId':_0x35cb92[_0x64409e(0x24e)],'isType':_0x2196de[_0x64409e(0x26c)]['isTypeRef']||![]},_0x1b7df8=_0xa29d83(_0x2196de),_0xc6d5f9=yield _0x5782cf(_0x1b7df8,_0x29b247);if(!_0xc6d5f9)return;yield _0x1c82fd(_0x2196de,_0xc6d5f9,_0x2196de[_0x64409e(0x1e4)]);});function _0x2019f7(_0x32ce56,_0xf60036,_0x57ec6f,_0x1b3006){return _0x1bcc84(this,void 0x0,void 0x0,function*(){const _0x2eaf4e=_0x7308;if(_0xf60036['hasClass'](_0x2eaf4e(0x233))){console[_0x2eaf4e(0x14f)]('already\x20fetched');return;}if(_0xf60036['hasClass'](_0x2eaf4e(0x1d7))){console[_0x2eaf4e(0x14f)](_0x2eaf4e(0x251));return;}_0xf60036['addClass']('loading'),_0xf60036[_0x2eaf4e(0x16d)](_0x2eaf4e(0x159));try{_0xf60036['children']('ul')[_0x2eaf4e(0x1f8)]();const {references:_0x622dbf}=yield _0x57ec6f(_0xf60036,_0x1b3006);_0x622dbf['sort']((_0x1a99a7,_0x594f5d)=>{const _0x48c612=_0x2eaf4e;var _0x4f9013,_0x56cb94;return(((_0x4f9013=_0x1a99a7[_0x48c612(0x17b)])===null||_0x4f9013===void 0x0?void 0x0:_0x4f9013[_0x48c612(0x17e)])||'')['localeCompare'](((_0x56cb94=_0x594f5d[_0x48c612(0x17b)])===null||_0x56cb94===void 0x0?void 0x0:_0x56cb94[_0x48c612(0x17e)])||'');});for(const _0x9a2753 of _0x622dbf){if(_0x32ce56[_0x2eaf4e(0x26c)]['filter']&&!_0x32ce56[_0x2eaf4e(0x26c)]['filter'](_0x9a2753))continue;const _0x4362f1=_0x301bbc(_0x9a2753);_0xf60036[_0x2eaf4e(0x131)]('ul')[_0x2eaf4e(0x16d)](_0x4362f1);}_0xf60036[_0x2eaf4e(0x20d)]('fetched');}catch(_0x23f4a6){_0xf60036[_0x2eaf4e(0x131)]('ul')[_0x2eaf4e(0x16d)](_0x2eaf4e(0x1c6)+_0x23f4a6['message']+_0x2eaf4e(0x1d1)),console[_0x2eaf4e(0x14f)](_0x2eaf4e(0x13e),_0x23f4a6);}_0xf60036[_0x2eaf4e(0x24b)](_0x2eaf4e(0x19c))[_0x2eaf4e(0x1cb)](),_0xf60036['removeClass'](_0x2eaf4e(0x1d7));});}function _0xa29d83(_0x1bd38e){const _0x256631=_0x5492ff,_0x24f66c={'baseUrl':_0x1bd38e[_0x256631(0x26c)]['baseUrl'],'endpointNode':typeof _0x1bd38e['options'][_0x256631(0x1be)]===_0x256631(0x137)?_0x1bd38e['options'][_0x256631(0x1be)]():_0x1bd38e[_0x256631(0x26c)]['endpointNode'],'endpoint':typeof _0x1bd38e[_0x256631(0x26c)]['endpoint']==='function'?_0x1bd38e[_0x256631(0x26c)][_0x256631(0x19a)]():_0x1bd38e[_0x256631(0x26c)][_0x256631(0x19a)]};return _0x24f66c;}function _0x28fb3b(_0xeb4c42,_0x3716fc){return _0x1bcc84(this,void 0x0,void 0x0,function*(){const _0x18846a=_0x7308;if(_0x3716fc[_0x18846a(0x20b)]('fetched')){_0x3716fc[_0x18846a(0x20f)](_0x18846a(0x14a))[_0x18846a(0x20d)](_0x18846a(0x234)),_0x3716fc['children']('ul')[_0x18846a(0x23b)]();return;}const _0x2a646d=_0xa29d83(_0xeb4c42),_0xf337fc=!_0xeb4c42['options'][_0x18846a(0x13a)]?_0x43bd24:_0x261d67;try{yield _0x2019f7(_0xeb4c42,_0x3716fc,_0xf337fc,_0x2a646d),_0x3716fc[_0x18846a(0x20f)](_0x18846a(0x14a))['addClass']('expanded');}catch(_0x257658){_0x3716fc[_0x18846a(0x20f)](_0x18846a(0x14a))[_0x18846a(0x20d)](_0x18846a(0x234)),console[_0x18846a(0x14f)]('error',_0x257658);}});}const _0x33863f={'browseName':{'namespaceIndex':0x0,'name':_0x5492ff(0x21b)},'nodeClass':'Object','nodeId':_0x5492ff(0x1a7),'displayName':{'text':_0x5492ff(0x21b)},'typeDefinition':_0x21202d},_0xa0eb24=()=>{const _0x1b41c4=_0x5492ff;$[_0x1b41c4(0x158)](_0x1b41c4(0x26e),{'options':{'endpointNode':()=>({'endpoint':_0x1b41c4(0x1fd)}),'endpoint':()=>undefined,'parentNode':()=>_0x33863f,'filter':()=>!![],'baseUrl':'','isTypeRef':![]},'resolveParentNode'(){return _0x1bcc84(this,void 0x0,void 0x0,function*(){const _0x5a0904=_0x7308,_0x4d583a=this;if(_0x4d583a[_0x5a0904(0x214)]==undefined){const _0x2ef884=typeof _0x4d583a[_0x5a0904(0x26c)]['parentNode']===_0x5a0904(0x137)?_0x4d583a[_0x5a0904(0x26c)][_0x5a0904(0x1d8)][_0x5a0904(0x1b4)](_0x4d583a):_0x4d583a[_0x5a0904(0x26c)][_0x5a0904(0x1d8)];if(_0x2ef884 instanceof Promise){const _0x367beb=yield _0x2ef884;_0x4d583a[_0x5a0904(0x214)]=_0x367beb;}else _0x4d583a['__parentNode']=_0x2ef884;}return _0x4d583a[_0x5a0904(0x214)]||_0x33863f;});},'reset'(){return _0x1bcc84(this,void 0x0,void 0x0,function*(){const _0x378c44=_0x7308,_0x2f0fb0=this,_0x28025b=_0x2f0fb0;_0x28025b[_0x378c44(0x214)]=undefined,_0x2f0fb0[_0x378c44(0x1e4)]['empty']();const _0x2361d7=yield this[_0x378c44(0x148)](),_0x2c35e3=_0x301bbc(_0x2361d7);_0x2f0fb0[_0x378c44(0x1e4)][_0x378c44(0x16d)](_0x2c35e3),_0x2f0fb0[_0x378c44(0x18b)]=_0x2361d7;});},'verify'(_0x2a057e){const _0x15bfba=_0x1b41c4,_0x57b154=this,_0xe9fe71=_0xa29d83(_0x57b154);_0x2fc938(_0xe9fe71,_0x2a057e,_0x57b154[_0x15bfba(0x14b)],_0x57b154[_0x15bfba(0x1b9)])[_0x15bfba(0x190)](_0x574000=>{const _0x2d9e9b=_0x15bfba;!_0x574000?_0x57b154[_0x2d9e9b(0x275)][_0x2d9e9b(0x20d)]('sterfive-input-error'):_0x57b154[_0x2d9e9b(0x275)][_0x2d9e9b(0x20f)](_0x2d9e9b(0x20c));});},'_hideMenu'(_0x1abb6e){const _0x1f0779=_0x1b41c4,_0x35b018=this;$(document)['off'](_0x1f0779(0x229)),_0x1abb6e[_0x1f0779(0x224)](),_0x1abb6e['css']({'height':_0x1f0779(0x180)});if(_0x1abb6e['opts']['multiple']){var _0x4c9286=[];_0x1abb6e[_0x1f0779(0x24b)]('input[type=\x22checkbox\x22]')[_0x1f0779(0x245)](function(){const _0xc92b2e=_0x1f0779;$(this)[_0xc92b2e(0x1c9)](_0xc92b2e(0x18c))&&_0x4c9286[_0xc92b2e(0x258)]($(this)[_0xc92b2e(0x265)](_0xc92b2e(0x1b6)));}),_0x1abb6e['callback'](_0x4c9286);}_0x35b018[_0x1f0779(0x13d)]['is'](_0x1f0779(0x268))?_0x35b018[_0x1f0779(0x14b)][_0x1f0779(0x1e1)](_0x1f0779(0x1cd)):_0x35b018[_0x1f0779(0x221)]['trigger'](_0x1f0779(0x1cd));},'_createMenu'(_0x54e88e,_0x1aa9ce,_0x3c3ebb){const _0x497df2=_0x1b41c4;var _0x298fbc=this;const _0x1d0599=$(_0x497df2(0x267))['addClass'](_0x497df2(0x24a));return _0x1d0599[_0x497df2(0x189)]=_0x1aa9ce,_0x1d0599[_0x497df2(0x21a)]=_0x3c3ebb,_0x54e88e[_0x497df2(0x135)](_0xbbf8a=>{const _0x3c328b=_0x497df2;typeof _0xbbf8a===_0x3c328b(0x271)&&(_0xbbf8a={'value':_0xbbf8a,'label':_0xbbf8a});var _0x3273a3=$(_0x3c328b(0x22c))[_0x3c328b(0x191)](_0x3c328b(0x1b6),_0xbbf8a[_0x3c328b(0x1b6)])[_0x3c328b(0x130)](_0x1d0599);_0xbbf8a[_0x3c328b(0x12b)]&&_0x3273a3[_0x3c328b(0x1fa)](_0xbbf8a[_0x3c328b(0x12b)]);_0xbbf8a[_0x3c328b(0x218)]&&_0x3273a3[_0x3c328b(0x1c9)](_0x3c328b(0x218),_0xbbf8a[_0x3c328b(0x218)]);if(_0xbbf8a[_0x3c328b(0x187)]){if(_0xbbf8a[_0x3c328b(0x187)]['indexOf']('<')===0x0)$(_0xbbf8a['icon'])[_0x3c328b(0x23a)](_0x3273a3);else _0xbbf8a[_0x3c328b(0x187)]['indexOf']('/')!==-0x1?$('<i>',{'class':_0x3c328b(0x1ea),'style':_0x3c328b(0x204)+_0xbbf8a['icon']+_0x3c328b(0x220)+_0xbbf8a[_0x3c328b(0x187)]+');'})['prependTo'](_0x3273a3):$('<i>',{'class':_0x3c328b(0x206)+_0xbbf8a[_0x3c328b(0x187)]})[_0x3c328b(0x23a)](_0x3273a3);}else _0x3273a3[_0x3c328b(0x152)]({'paddingLeft':_0x3c328b(0x213)});!_0xbbf8a[_0x3c328b(0x187)]&&!_0xbbf8a[_0x3c328b(0x12b)]&&_0x3273a3[_0x3c328b(0x1fa)](_0xbbf8a[_0x3c328b(0x1b6)]);var _0x1124c0;_0x1aa9ce[_0x3c328b(0x26f)]&&(_0x1124c0=$(_0x3c328b(0x1f7))[_0x3c328b(0x152)]('pointer-events',_0x3c328b(0x226))['data'](_0x3c328b(0x1b6),_0xbbf8a[_0x3c328b(0x1b6)])[_0x3c328b(0x23a)](_0x3273a3)['on']('mousedown',function(_0x17ed89){_0x17ed89['preventDefault']();})),_0x3273a3['on'](_0x3c328b(0x1de),function(_0x5b63fb){const _0x3dbfdf=_0x3c328b;_0x5b63fb[_0x3dbfdf(0x257)](),_0x5b63fb[_0x3dbfdf(0x12f)](),!_0x1aa9ce[_0x3dbfdf(0x26f)]?(_0x3c3ebb(_0xbbf8a[_0x3dbfdf(0x1b6)]),_0x298fbc['_hideMenu'](_0x1d0599)):_0x1124c0[_0x3dbfdf(0x1c9)]('checked',!_0x1124c0[_0x3dbfdf(0x1c9)](_0x3dbfdf(0x18c)));});}),_0x1d0599[_0x497df2(0x152)]({'display':_0x497df2(0x226)}),_0x1d0599['on'](_0x497df2(0x17f),function(_0x43bb9f){const _0x32ea52=_0x497df2;if(_0x43bb9f[_0x32ea52(0x181)]===0x28)_0x43bb9f[_0x32ea52(0x257)](),$(this)['children'](_0x32ea52(0x1a6))[_0x32ea52(0x25f)]()[_0x32ea52(0x1e1)](_0x32ea52(0x1cd));else{if(_0x43bb9f[_0x32ea52(0x181)]===0x26)_0x43bb9f[_0x32ea52(0x257)](),$(this)[_0x32ea52(0x131)](_0x32ea52(0x1a6))[_0x32ea52(0x169)]()[_0x32ea52(0x1e1)](_0x32ea52(0x1cd));else _0x43bb9f['keyCode']===0x1b&&(_0x43bb9f[_0x32ea52(0x257)](),_0x298fbc[_0x32ea52(0x1f1)](_0x1d0599));}_0x43bb9f[_0x32ea52(0x12f)]();}),_0x1d0599;},'disarmClick':![],'_showMenu'(_0x534e20,_0x5748d0){const _0x58958d=_0x1b41c4;if(this[_0x58958d(0x1d4)]){this['disarmClick']=![];return;}var _0x4dbb3d=this,_0x3ea6c9=_0x5748d0[_0x58958d(0x25d)](),_0x3a20b3=_0x5748d0['height'](),_0x4a3d1a=_0x534e20[_0x58958d(0x16a)](),_0x26d0b4=_0x3a20b3+_0x3ea6c9['top'];_0x26d0b4+_0x4a3d1a-$(document)[_0x58958d(0x168)]()>$(window)[_0x58958d(0x16a)]()&&(_0x26d0b4-=_0x26d0b4+_0x4a3d1a-$(window)[_0x58958d(0x16a)]()+0x5),_0x26d0b4<0x0&&(_0x534e20[_0x58958d(0x16a)](_0x4a3d1a+_0x26d0b4),_0x26d0b4=0x0),_0x534e20['css']({'top':_0x26d0b4+'px','left':_0x3ea6c9['left']+'px'}),_0x534e20['slideDown'](0x64),this['_delay'](function(){const _0x1a8962=_0x58958d;_0x4dbb3d[_0x1a8962(0x23c)][_0x1a8962(0x20d)](_0x1a8962(0x1bb)),$(document)['on'](_0x1a8962(0x229),function(_0x422ee5){const _0x2c0dc8=_0x1a8962;!$(_0x422ee5[_0x2c0dc8(0x143)])[_0x2c0dc8(0x200)](_0x534e20)['length']&&_0x4dbb3d['_hideMenu'](_0x534e20),$(_0x422ee5[_0x2c0dc8(0x143)])[_0x2c0dc8(0x200)](_0x5748d0)['length']&&(_0x4dbb3d['disarmClick']=!![],_0x422ee5[_0x2c0dc8(0x257)]());});});},'_showTypeMenu'(){const _0x4e6d07=_0x1b41c4,_0x23fc9b=this;this[_0x4e6d07(0x250)](_0x23fc9b[_0x4e6d07(0x1ab)],_0x23fc9b[_0x4e6d07(0x275)]),_0x23fc9b[_0x4e6d07(0x22d)][_0x4e6d07(0x224)]();const _0x249860=_0x23fc9b[_0x4e6d07(0x1bc)];var _0x3f8a7b=_0x23fc9b[_0x4e6d07(0x1ab)][_0x4e6d07(0x24b)](_0x4e6d07(0x192)+_0x249860+'\x27');setTimeout(function(){const _0x4d1935=_0x4e6d07;_0x3f8a7b[_0x4d1935(0x1e1)]('focus');},0x78);},'_initMenu'(){const _0x1ee677=_0x1b41c4,_0x136fbf=this;_0x136fbf[_0x1ee677(0x221)][_0x1ee677(0x191)](_0x1ee677(0x14d),-0x1),_0x136fbf[_0x1ee677(0x221)]['on'](_0x1ee677(0x215),function(_0x58e15b){_0x58e15b['preventDefault']();});_0x136fbf['$menu']&&_0x136fbf['$menu'][_0x1ee677(0x1cb)]();const _0x4a3f3d=[{'label':_0x1ee677(0x1fa),'value':'t','title':_0x1ee677(0x1e5),'icon':'<i\x20class=\x22fa\x20fa-font\x22/i>\x20'},{'label':'msg.','value':_0x1ee677(0x18a),'title':_0x1ee677(0x147),'icon':_0x1ee677(0x153)},{'label':_0x1ee677(0x196),'value':'n','icon':'<i\x20class=\x22fa\x20fa-tag\x22/>1\x20&nbsp;\x20'},{'label':_0x1ee677(0x17a),'value':'na','icon':_0x1ee677(0x274)},{'label':_0x1ee677(0x266),'value':'nsu','icon':_0x1ee677(0x25e)},{'label':_0x1ee677(0x1e3),'value':'b','icon':_0x1ee677(0x1b3)},{'label':_0x1ee677(0x1c2),'value':'ab','icon':'<i\x20class=\x22fa\x20fa-bookmark\x22/><i\x20class=\x22fa\x20fa-fighter-jet\x22/>&nbsp;'}],_0x4466a6=_0xd53134(_0x136fbf[_0x1ee677(0x14b)][_0x1ee677(0x1fe)]()),_0x550aa3=_0x4a3f3d[_0x1ee677(0x24b)](_0x5cc7a9=>_0x5cc7a9[_0x1ee677(0x1b6)]===_0x4466a6);_0x136fbf[_0x1ee677(0x19b)]['empty']()[_0x1ee677(0x16d)](_0x1ee677(0x1d5)+((_0x550aa3===null||_0x550aa3===void 0x0?void 0x0:_0x550aa3[_0x1ee677(0x218)])||'')+_0x1ee677(0x212)+((_0x550aa3===null||_0x550aa3===void 0x0?void 0x0:_0x550aa3[_0x1ee677(0x187)])||'')+_0x1ee677(0x210)),_0x136fbf[_0x1ee677(0x1bc)]=_0x4466a6;const _0x3c2465=this;_0x136fbf[_0x1ee677(0x1ab)]=this[_0x1ee677(0x154)](_0x4a3f3d,{},_0x3fab72=>{const _0x9c1dc3=_0x1ee677,_0x19300e=_0x393f51(_0x3fab72);_0x19300e&&_0x3c2465[_0x9c1dc3(0x1c5)](_0x19300e);const _0x234699=_0x4a3f3d[_0x9c1dc3(0x24b)](_0xc01c18=>_0xc01c18[_0x9c1dc3(0x1b6)]===_0x3fab72);_0x136fbf['selectedMenuItem']=_0x3fab72,_0x136fbf['$selectLabel'][_0x9c1dc3(0x1f8)]()['append'](_0x9c1dc3(0x1d5)+((_0x234699===null||_0x234699===void 0x0?void 0x0:_0x234699[_0x9c1dc3(0x218)])||'')+_0x9c1dc3(0x212)+((_0x234699===null||_0x234699===void 0x0?void 0x0:_0x234699[_0x9c1dc3(0x187)])||'')+_0x9c1dc3(0x210));}),_0x136fbf[_0x1ee677(0x1ab)][_0x1ee677(0x130)](document[_0x1ee677(0x1bf)]),_0x136fbf[_0x1ee677(0x1ab)][_0x1ee677(0x224)](),_0x136fbf[_0x1ee677(0x221)][_0x1ee677(0x1ba)]();},'mode'(){const _0x280da4=_0x1b41c4,_0x5842db=this;return _0x393f51(_0x5842db[_0x280da4(0x1bc)]);},'setMode'(_0xc0a6e6){const _0x4d9145=_0x1b41c4,_0x4e8cd4=this,_0x41e937=_0x4486c9(_0xc0a6e6);_0x4e8cd4[_0x4d9145(0x1bc)]=_0x41e937;},'_create'(){const _0x3d8bc7=_0x1b41c4,_0x34ebe7=this;_0x34ebe7[_0x3d8bc7(0x14b)]=this[_0x3d8bc7(0x179)],_0x34ebe7[_0x3d8bc7(0x14b)][_0x3d8bc7(0x152)]('border','none'),_0x34ebe7[_0x3d8bc7(0x13d)]=_0x34ebe7[_0x3d8bc7(0x14b)][_0x3d8bc7(0x14e)](_0x3d8bc7(0x267))[_0x3d8bc7(0x15c)]()[_0x3d8bc7(0x20d)](_0x3d8bc7(0x1aa)),_0x34ebe7[_0x3d8bc7(0x275)]=$(_0x3d8bc7(0x1e2)),_0x34ebe7[_0x3d8bc7(0x275)]['addClass'](_0x3d8bc7(0x23f)),_0x34ebe7[_0x3d8bc7(0x14b)]['replaceWith'](_0x34ebe7[_0x3d8bc7(0x275)]),_0x34ebe7[_0x3d8bc7(0x1dc)]=$(_0x3d8bc7(0x1e2))[_0x3d8bc7(0x20d)](_0x3d8bc7(0x238)),_0x34ebe7['$combo']['append'](_0x34ebe7['$inputGroup']),_0x34ebe7['$inputGroup'][_0x3d8bc7(0x16d)](_0x34ebe7[_0x3d8bc7(0x14b)]),_0x34ebe7[_0x3d8bc7(0x18d)]=$(_0x3d8bc7(0x21d)),_0x34ebe7[_0x3d8bc7(0x14b)]['after'](_0x34ebe7[_0x3d8bc7(0x18d)]),_0x34ebe7['$toggleTreeBtn']['on'](_0x3d8bc7(0x1de),function(){return _0x1bcc84(this,void 0x0,void 0x0,function*(){const _0x41ca94=_0x7308;var _0x156913;let _0x535a6e=![],_0x55c2ad;!_0x34ebe7[_0x41ca94(0x22d)]['is'](_0x41ca94(0x268))&&(_0x34ebe7['$info']['hide'](),_0x55c2ad=yield _0x34ebe7[_0x41ca94(0x148)](),(_0x55c2ad!==_0x34ebe7[_0x41ca94(0x18b)]||((_0x156913=_0x34ebe7[_0x41ca94(0x18b)])===null||_0x156913===void 0x0?void 0x0:_0x156913[_0x41ca94(0x24e)])!==_0x55c2ad[_0x41ca94(0x24e)])&&(yield _0x34ebe7[_0x41ca94(0x228)]()),_0x535a6e=!![]),_0x34ebe7[_0x41ca94(0x22d)]['toggle'](),_0x535a6e&&(yield _0x2ef792(_0x34ebe7,_0x55c2ad));});}),_0x34ebe7[_0x3d8bc7(0x24d)]=$('<button\x20title=\x22verify\x20nodeId\x20or\x20browsePath\x22><i\x20class=\x22fa\x20fa-refresh\x22></i></button>'),_0x34ebe7[_0x3d8bc7(0x14b)][_0x3d8bc7(0x177)](_0x34ebe7[_0x3d8bc7(0x24d)]),_0x34ebe7[_0x3d8bc7(0x24d)]['on']('click',()=>{const _0x68fda=_0x3d8bc7,_0xaa0643=_0x34ebe7[_0x68fda(0x261)]();if(!_0xaa0643)return;this['verify'](_0xaa0643);});const _0x26cb9c=_0x2dfea7=>_0x1bcc84(this,void 0x0,void 0x0,function*(){const _0xbd4ecd=_0x3d8bc7,_0x50a1b8=this;let _0x6986df=_0x50a1b8[_0xbd4ecd(0x261)]();if(!_0x6986df)return;const _0x41e7eb=_0xa29d83(_0x50a1b8),{data:_0x231051,json:_0x45248b}=yield _0x2de346(_0x41e7eb,_0x2dfea7);if(_0x231051[_0xbd4ecd(0x25a)]!==0xc8)return;if(_0x45248b['statusCode'][_0xbd4ecd(0x151)](/Good/)){const _0x295499=_0x93c5d(_0x45248b,_0x6986df);_0x50a1b8[_0xbd4ecd(0x14b)][_0xbd4ecd(0x1fe)](_0x295499),_0x50a1b8[_0xbd4ecd(0x14b)][_0xbd4ecd(0x1e1)](_0xbd4ecd(0x203));}});{_0x34ebe7['$uiSelect']=$(_0x3d8bc7(0x267)),_0x34ebe7['$input'][_0x3d8bc7(0x165)](_0x34ebe7[_0x3d8bc7(0x23c)]),_0x34ebe7[_0x3d8bc7(0x221)]=$(_0x3d8bc7(0x170))[_0x3d8bc7(0x23a)](_0x34ebe7[_0x3d8bc7(0x23c)]),$(_0x3d8bc7(0x1a5))[_0x3d8bc7(0x23b)](!![])[_0x3d8bc7(0x130)](_0x34ebe7['$selectTrigger']),_0x34ebe7['$selectTrigger']['on'](_0x3d8bc7(0x1de),function(_0x32bbdc){const _0x4b9c70=_0x3d8bc7;_0x32bbdc[_0x4b9c70(0x257)](),_0x32bbdc[_0x4b9c70(0x12f)](),_0x34ebe7[_0x4b9c70(0x134)]();}),_0x34ebe7['$selectTrigger']['on'](_0x3d8bc7(0x17f),function(_0x4cd94d){const _0x3359c7=_0x3d8bc7;_0x4cd94d['keyCode']===0x28&&_0x34ebe7['_showTypeMenu'](),_0x4cd94d[_0x3359c7(0x12f)]();})['on'](_0x3d8bc7(0x1cd),function(){const _0x4d462c=_0x3d8bc7;_0x34ebe7[_0x4d462c(0x23c)]['addClass'](_0x4d462c(0x1bb));})['on'](_0x3d8bc7(0x1db),function(){const _0x34ae58=_0x3d8bc7;_0x34ebe7[_0x34ae58(0x23c)][_0x34ae58(0x20f)]('red-ui-typedInput-focus');}),_0x34ebe7[_0x3d8bc7(0x19b)]=$(_0x3d8bc7(0x1a4))['appendTo'](_0x34ebe7[_0x3d8bc7(0x221)]);}this[_0x3d8bc7(0x1e9)]();!_0x34ebe7['$input'][_0x3d8bc7(0x191)]('placeholder')&&_0x34ebe7[_0x3d8bc7(0x14b)][_0x3d8bc7(0x191)](_0x3d8bc7(0x1a2),_0x3d8bc7(0x217));_0x34ebe7[_0x3d8bc7(0x1b9)]=$(_0x3d8bc7(0x1ac)),_0x34ebe7[_0x3d8bc7(0x1b9)][_0x3d8bc7(0x224)](),_0x34ebe7['$combo'][_0x3d8bc7(0x16d)](_0x34ebe7['$info']),_0x34ebe7[_0x3d8bc7(0x22d)]=$('<div/>')[_0x3d8bc7(0x20d)](_0x3d8bc7(0x12d))['hide']()[_0x3d8bc7(0x130)](_0x34ebe7[_0x3d8bc7(0x275)]),_0x34ebe7[_0x3d8bc7(0x1e4)]=$(_0x3d8bc7(0x25c))['appendTo'](_0x34ebe7[_0x3d8bc7(0x22d)]),this[_0x3d8bc7(0x228)]();const _0x44979f=(_0xa8fa54,_0x564e21)=>{const _0x5bed81=_0x3d8bc7,_0x365e10=0x14,_0x1c5504=0x14,_0x2265b2=_0xa8fa54[_0x5bed81(0x25d)](),_0x39a092=_0x564e21;if(_0x39a092[_0x5bed81(0x22e)]>=_0x2265b2[_0x5bed81(0x173)]&&_0x39a092[_0x5bed81(0x22e)]<=_0x2265b2[_0x5bed81(0x173)]+_0x365e10&&_0x39a092['pageY']>=_0x2265b2['top']&&_0x39a092[_0x5bed81(0x230)]<=_0x2265b2[_0x5bed81(0x277)]+_0x1c5504)return!![];return![];},_0x171177=_0x4a2e35=>_0x1bcc84(this,void 0x0,void 0x0,function*(){const _0x2077dd=_0x3d8bc7;if(_0x4a2e35['hasClass'](_0x2077dd(0x14a)))_0x28fb3b(_0x34ebe7,_0x4a2e35);else{if(_0x4a2e35[_0x2077dd(0x20b)](_0x2077dd(0x234)))_0x4a2e35[_0x2077dd(0x131)]('ul')['toggle'](),_0x4a2e35[_0x2077dd(0x1e0)](_0x2077dd(0x136));else{if(_0x4a2e35[_0x2077dd(0x131)]('ul')[_0x2077dd(0x131)]()['length']>0x0)_0x4a2e35[_0x2077dd(0x131)]('ul')[_0x2077dd(0x23b)](),_0x4a2e35[_0x2077dd(0x1e0)](_0x2077dd(0x136));else;}}});_0x34ebe7[_0x3d8bc7(0x1e4)]['on'](_0x3d8bc7(0x264),'li',function(_0x51ddc5){const _0x395cce=_0x3d8bc7;var _0xfcc4ed,_0x5eb6f6;_0x51ddc5[_0x395cce(0x12f)]();let _0x3cf604=$(this);if(_0x44979f(_0x3cf604,_0x51ddc5))_0x171177(_0x3cf604);else{const _0x14385d=_0x3cf604[_0x395cce(0x265)](_0x395cce(0x1b6)),_0x5f16fd=_0x3cf604[_0x395cce(0x265)](_0x395cce(0x243));if(_0x34ebe7['options'][_0x395cce(0x183)]&&!_0x34ebe7[_0x395cce(0x26c)]['isSelectable'](_0x5f16fd))return;_0x34ebe7['$input'][_0x395cce(0x265)](_0x395cce(0x243),_0x5f16fd),((_0xfcc4ed=_0x5f16fd[_0x395cce(0x232)])===null||_0xfcc4ed===void 0x0?void 0x0:_0xfcc4ed[_0x395cce(0x1fa)])||((_0x5eb6f6=_0x5f16fd[_0x395cce(0x17b)])===null||_0x5eb6f6===void 0x0?void 0x0:_0x5eb6f6[_0x395cce(0x17e)])||_0x5f16fd['nodeId'][_0x395cce(0x26b)]();let _0x47ddf0=_0x34ebe7[_0x395cce(0x261)]();!_0x47ddf0&&(_0x47ddf0=_0x395cce(0x24e),_0x34ebe7[_0x395cce(0x242)](_0x47ddf0)),_0x26cb9c(_0x14385d)[_0x395cce(0x190)](()=>{const _0xb450d6=_0x395cce;_0x34ebe7['$dropdown'][_0xb450d6(0x224)]();})[_0x395cce(0x20e)](_0x55754e=>{const _0x53d7e6=_0x395cce;_0x34ebe7['$dropdown'][_0x53d7e6(0x224)]();});}}),_0x34ebe7['$tree']['on'](_0x3d8bc7(0x1de),'li',function(_0x229777){const _0x30519c=_0x3d8bc7;_0x229777[_0x30519c(0x12f)]();let _0x35396e=$(this);_0x44979f(_0x35396e,_0x229777)&&_0x171177(_0x35396e),_0x572501(_0x34ebe7,_0x35396e);}),$(document)['on'](_0x3d8bc7(0x1de),function(_0x5da10f){const _0x14213f=_0x3d8bc7;!$(_0x5da10f[_0x14213f(0x143)])['closest'](_0x34ebe7[_0x14213f(0x275)])[_0x14213f(0x263)]&&_0x34ebe7[_0x14213f(0x22d)][_0x14213f(0x224)]();});}});},_0x2df1dc=()=>{const _0x124eca=_0x5492ff,_0x1b7329=$(_0x124eca(0x1cf)),_0x57cf38=_0x1b7329[_0x124eca(0x1fe)](),_0x323a89=RED[_0x124eca(0x248)][_0x124eca(0x22b)](_0x57cf38);if(!_0x323a89)return undefined;const {endpoint:_0x1069ea,securityMode:_0x764ee3,securityPolicy:_0x1831c0,userIdentityType:_0x31a629,credentials:_0x3f6031,namespaceAliases:_0xa96cfd}=_0x323a89,_0x1fe20c={'endpoint':_0x1069ea,'securityMode':_0x764ee3,'securityPolicy':_0x1831c0,'userIdentityType':_0x31a629,'credentials':_0x3f6031,'namespaceAliases':_0xa96cfd};return _0x1fe20c;},_0x267dc4=()=>{const _0x2c5ae4=_0x5492ff,_0x22fc5d=$('#node-input-endpoint'),_0x198d7a=_0x22fc5d[_0x2c5ae4(0x1fe)](),_0x3de6fc=_0x2df1dc();if(!_0x3de6fc)return undefined;const _0x25ddc9=_0x3de6fc['namespaceAliases'];return Object[_0x2c5ae4(0x244)]({'namespaceAliases':_0x25ddc9,'id':_0x198d7a},_0x3de6fc);},_0x295d92=()=>{return{'endpointNode':_0x267dc4};},_0x5dcfa3=()=>{const _0x3ccfe1=_0x5492ff,_0x2a3af8=$(_0x3ccfe1(0x23d));console[_0x3ccfe1(0x14f)](_0x3ccfe1(0x1ec),_0x2a3af8[_0x3ccfe1(0x263)]);if(_0x2a3af8[_0x3ccfe1(0x263)]){console['log'](_0x3ccfe1(0x253));const _0xd968c4=$('<iframe></iframe>',{'src':_0x3ccfe1(0x247),'scrolling':'no','style':'background-color:transparent;overflow:hidden;border:3px','allowtransparency':'true','width':_0x3ccfe1(0x1eb),'height':_0x3ccfe1(0x1fc)});_0x2a3af8['append'](_0xd968c4),_0xd968c4[_0x3ccfe1(0x152)]({'position':'absolute','right':_0x3ccfe1(0x249),'bottom':_0x3ccfe1(0x205)});}};RED[_0x5492ff(0x248)][_0x5492ff(0x260)]('OpcUa-Client2-HistoryRead',{'category':_0x5492ff(0x16f),'color':_0x5492ff(0x246),'align':_0x5492ff(0x1dd),'icon':_0x5492ff(0x146),'paletteLabel':_0x5492ff(0x1c1),'defaults':{'inputs':{'value':0x1},'output':{'value':0x4},'name':{'value':''},'endpoint':{'value':'','required':!![],'type':'OpcUa-Endpoint2'},'historyReadParam':{'value':{'type':_0x5492ff(0x1f0),'endTime':_0x5492ff(0x1d2),'startTime':_0x5492ff(0x1c4),'numValuesPerNode':0x64,'returnBounds':!![]},'required':!![],'validate':_0x42363b=>{if(_0x42363b==='')return![];return!![];}},'nodeId':{'value':'','required':![]},'outputType':{'value':_0x5492ff(0x1df),'required':!![]}},'outputs':0x2,'label'(){const _0x542b05=_0x5492ff;return this[_0x542b05(0x17e)]||_0x542b05(0x197);},'labelStyle'(){const _0x57de59=_0x5492ff;return this[_0x57de59(0x17e)]?_0x57de59(0x25b):'';},'oneditprepare'(){const _0x3f4a4f=_0x5492ff,_0x54effa=this;_0xa0eb24(),_0x5dcfa3(),_0x54effa['inputs']=0x1;const _0x3ed8d5=$(_0x3f4a4f(0x15b));_0x3ed8d5[_0x3f4a4f(0x144)](Object['assign'](Object[_0x3f4a4f(0x244)]({},_0x295d92()),{'isSelectable'(_0x596b92){const _0x1f7211=_0x3f4a4f;return _0x596b92[_0x1f7211(0x1ef)]===_0x1f7211(0x142);}})),$(_0x3f4a4f(0x207))['val'](_0x54effa[_0x3f4a4f(0x1bd)][_0x3f4a4f(0x22a)]);switch(_0x54effa[_0x3f4a4f(0x1bd)][_0x3f4a4f(0x22a)]){case _0x3f4a4f(0x1f0):$('#node-input-raw-startTime')[_0x3f4a4f(0x1fe)](_0x54effa[_0x3f4a4f(0x1bd)][_0x3f4a4f(0x194)]),$(_0x3f4a4f(0x1c7))[_0x3f4a4f(0x1fe)](_0x54effa[_0x3f4a4f(0x1bd)][_0x3f4a4f(0x13c)]),$(_0x3f4a4f(0x21f))[_0x3f4a4f(0x1fe)](_0x54effa[_0x3f4a4f(0x1bd)][_0x3f4a4f(0x237)]),$(_0x3f4a4f(0x1ee))[_0x3f4a4f(0x1c9)](_0x3f4a4f(0x18c),_0x54effa[_0x3f4a4f(0x1bd)]['returnBounds']);break;case _0x3f4a4f(0x209):$('#node-input-modified-startTime')[_0x3f4a4f(0x1fe)](_0x54effa['historyReadParam'][_0x3f4a4f(0x194)]),$(_0x3f4a4f(0x1d6))[_0x3f4a4f(0x1fe)](_0x54effa['historyReadParam']['endTime']),$('#node-input-modified-numValuesPerNode')[_0x3f4a4f(0x1fe)](_0x54effa['historyReadParam'][_0x3f4a4f(0x237)]),$('#node-input-modified-returnBounds')[_0x3f4a4f(0x1c9)](_0x3f4a4f(0x18c),_0x54effa[_0x3f4a4f(0x1bd)]['returnBounds']);break;case _0x3f4a4f(0x184):_0x54effa[_0x3f4a4f(0x1bd)]['aggregateConfiguration']=_0x54effa[_0x3f4a4f(0x1bd)]['aggregateConfiguration']||{},$(_0x3f4a4f(0x1ce))[_0x3f4a4f(0x1fe)](_0x54effa[_0x3f4a4f(0x1bd)][_0x3f4a4f(0x194)]),$(_0x3f4a4f(0x161))['val'](_0x54effa['historyReadParam'][_0x3f4a4f(0x13c)]),$('#node-input-processed-details-processingInterval')[_0x3f4a4f(0x1fe)](_0x54effa[_0x3f4a4f(0x1bd)][_0x3f4a4f(0x182)]),$('#node-input-processed-details-aggregateType')['val'](_0x54effa['historyReadParam'][_0x3f4a4f(0x256)]),$('#node-input-processed-details-aggregateConfiguration-useServerCapabilitiesDefaults')[_0x3f4a4f(0x1c9)]('checked',_0x54effa[_0x3f4a4f(0x1bd)]['aggregateConfiguration'][_0x3f4a4f(0x198)]),$(_0x3f4a4f(0x17c))[_0x3f4a4f(0x1c9)](_0x3f4a4f(0x18c),_0x54effa[_0x3f4a4f(0x1bd)][_0x3f4a4f(0x163)]['treatUncertainAsBad']),$(_0x3f4a4f(0x1f3))[_0x3f4a4f(0x1fe)](_0x54effa[_0x3f4a4f(0x1bd)][_0x3f4a4f(0x163)]['percentDataBad']),$(_0x3f4a4f(0x162))[_0x3f4a4f(0x1fe)](_0x54effa[_0x3f4a4f(0x1bd)][_0x3f4a4f(0x163)][_0x3f4a4f(0x150)]),$(_0x3f4a4f(0x231))[_0x3f4a4f(0x1c9)](_0x3f4a4f(0x18c),_0x54effa[_0x3f4a4f(0x1bd)][_0x3f4a4f(0x163)]['useSlopedExtrapolation']);break;}{function _0x414fd7(){const _0x473985=_0x3f4a4f;$(_0x473985(0x222))[_0x473985(0x224)](),$(_0x473985(0x1ed))[_0x473985(0x224)](),$(_0x473985(0x269))['hide'](),$('#section-at-time')['hide'](),$(_0x473985(0x236))['hide'](),$(_0x473985(0x175))[_0x473985(0x224)]();}function _0x570ece(){const _0xca94ba=_0x3f4a4f;_0x414fd7();var _0x490601=$(_0xca94ba(0x207))[_0xca94ba(0x1fe)]();$(_0xca94ba(0x20a)+_0x490601)['show']();}$(_0x3f4a4f(0x207))['on'](_0x3f4a4f(0x203),_0x570ece),_0x570ece();}},'oneditsave'(){const _0x475bd8=_0x5492ff,_0x35bdae=_0x5f24c9=>_0x5f24c9[_0x475bd8(0x1fe)]()==undefined?'':_0x5f24c9['val']()[_0x475bd8(0x26b)](),_0x5bb11a=_0x627086=>_0x627086['val']()==undefined?0x0:_0x627086[_0x475bd8(0x1fe)](),_0x159f3b=$(_0x475bd8(0x207))[_0x475bd8(0x1fe)]();switch(_0x159f3b){case _0x475bd8(0x1f0):this[_0x475bd8(0x1bd)]={'type':'raw','startTime':_0x35bdae($(_0x475bd8(0x164))),'endTime':_0x35bdae($(_0x475bd8(0x1c7))),'numValuesPerNode':_0x5bb11a($(_0x475bd8(0x21f))),'returnBounds':$(_0x475bd8(0x1ee))['prop'](_0x475bd8(0x18c))};break;case _0x475bd8(0x209):this[_0x475bd8(0x1bd)]={'type':_0x475bd8(0x209),'startTime':_0x35bdae($('#node-input-modified-startTime')),'endTime':_0x35bdae($(_0x475bd8(0x1d6))),'numValuesPerNode':_0x5bb11a($('#node-input-modified-numValuesPerNode')),'returnBounds':$(_0x475bd8(0x1c0))[_0x475bd8(0x1c9)](_0x475bd8(0x18c))};break;case _0x475bd8(0x184):this[_0x475bd8(0x1bd)]={'type':'processed-details','startTime':_0x35bdae($(_0x475bd8(0x1ce))),'endTime':_0x35bdae($(_0x475bd8(0x161))),'processingInterval':_0x5bb11a($(_0x475bd8(0x1d9))),'aggregateType':_0x35bdae($('#node-input-processed-details-aggregateType')),'aggregateConfiguration':{'useServerCapabilitiesDefaults':$(_0x475bd8(0x140))['prop'](_0x475bd8(0x18c)),'treatUncertainAsBad':$(_0x475bd8(0x17c))['prop']('checked'),'percentDataBad':_0x5bb11a($('#node-input-processed-details-aggregateConfiguration-percentDataBad')),'percentDataGood':_0x5bb11a($('#node-input-processed-details-aggregateConfiguration-percentDataGood')),'useSlopedExtrapolation':$(_0x475bd8(0x231))['prop'](_0x475bd8(0x18c))}};break;}}});}()));function _0x1fdc(){const _0x49e481=['$uiSelect','.red-ui-tray-body','done','sterfive-combo-box','17440fpKpHo','li\x20>\x20.tree-text','setMode','reference','assign','each','#C0DEED','/opcua-for-node-red/support-frame.html','nodes','20px','sterfive-typedInput-options\x20sterfive-online-menu','find','Good','$verifyBtn','nodeId','fetching\x20failed\x20with\x20error','_showMenu','already\x20loading','elements','installing\x20iframe','animate','<li\x20key=\x22','aggregateType','preventDefault','push','5ExwQoE','status','node_label_italic','<ul\x20class=\x22sterfive-tree\x22></ul>','offset','<i\x20class=\x22fa\x20fa-id-card\x22/>&nbsp;\x20','next','registerType','mode','fa-cog','length','dblclick','data','NodeId\x20with\x20namespace\x20Urn','<div>',':visible','#section-processed-details','/checkNodeId','toString','options','404063FKjZol','sterfive.nodeBrowser','multiple','HasSubtype','string','ns=0;i=47','nodeIds','<i\x20class=\x22fa\x20fa-bookmark\x22/>&nbsp;\x20','$combo','HasProperty','top','relativePath','label','SeaGreen','sterfive-dropdown','join','stopPropagation','appendTo','children','browseResult','10026KTloir','_showTypeMenu','forEach','expandable\x20expanded','function','/opcua-for-node-red','ns=0;i=46','isTypeRef','references','endTime','$elementDiv','err','><i\x20class=\x22fa\x20','#node-input-processed-details-aggregateConfiguration-useServerCapabilitiesDefaults','requestedNodeId','Variable','target','nodeBrowser','Object','../../icons/opcuanodeLogo.png','node\x20id\x20or\x20\x20browse\x20path\x20comes\x20from\x20injected\x20msg\x20parameter','resolveParentNode','ObjectType','expandable','$input','<li><i\x20class=\x22fa\x20fa-error\x22\x20style=\x22color:red;\x22></i>no\x20reference\x20!<ul></ul></li>','tabindex','wrap','log','percentDataGood','match','css','<i\x20class=\x22fa\x20fa-envelope-open-o\x22/>','_createMenu','namespaceAliases','statusCode','Forward','widget','<div\x20class=\x22spinner\x22></div>','/walk-backward','#node-input-nodeId','parent','ns=0;i=34','\x22}><span\x20class=\x22tree-text\x22\x20title=','json','Unspecified','#node-input-processed-details-endTime','#node-input-processed-details-aggregateConfiguration-percentDataGood','aggregateConfiguration','#node-input-raw-startTime','before','SandyBrown','failure','scrollTop','prev','height','ns=0;i=35','rgba(61,\x2060,\x204,\x200.525)','append','statusText','opcua','<button\x20type=\x22button\x22\x20tabindex=\x220\x22></button>','ns=0;i=45','View','left','\x22\x20style=\x22color:','#section-event','i=61','after','browsePath','element','Aliased\x20NodeId','browseName','#node-input-processed-details-aggregateConfiguration-treatUncertainAsBad','apply','name','keydown','auto','keyCode','processingInterval','isSelectable','processed-details','suppressed','fa-folder','icon','fa-text-width','opts','msg','currentParent','checked','$toggleTreeBtn','Inverse','DodgerBlue','then','attr','[value=\x27','TypeDefinition','startTime','position','NodeId','OPCUA\x20Client\x20HistoryRead','useServerCapabilitiesDefaults','15tvhHOT','endpoint','$selectLabel','.spinner','POST','statusCode:\x20','Invalid','NodeClass','CadetBlue','placeholder','nsu\x20nodeId:\x20','<span\x20class=\x22red-ui-typedInput-type-label\x22></span>','<i\x20class=\x22red-ui-typedInput-icon\x20fa\x20fa-caret-down\x22></i>',':focus','ns=0;i=85','referenceTypeId','bp_indexed','main-wrapper','$menu','<div\x20class=\x22sterfive-info-text\x22></div>','18062bewKkf',':first','fa-list-alt','.tree-text:first','201972xkUBIC','SteelBlue','<i\x20class=\x22fa\x20fa-tag\x22/><i\x20class=\x22fa\x20fa-fighter-jet\x22/>&nbsp;','call','nodeId_aliased','value','IsForward','bp_aliased','$info','show','red-ui-typedInput-focus','selectedMenuItem','historyReadParam','endpointNode','body','#node-input-modified-returnBounds','read-history','Aliased\x20Browse\x20Path','grey','11m\x20ago','verify','<li>error\x20','#node-input-raw-endTime','nsuNodeID','prop','Both','remove','DisplayName','focus','#node-input-processed-details-startTime','#node-input-endpoint','fa-object-group','</li>','1m\x20ago','VariableType','disarmClick','<span\x20title=','#node-input-modified-endTime','loading','parentNode','#node-input-processed-details-processingInterval','aliasedNodeId','blur','$inputGroup','right','click','Value','toggleClass','trigger','<div/>','BrowsePath','$tree','Value\x20is\x20not\x20verified','typeDefinition','aliasedBrowsePath','sterfive-info','_initMenu','red-ui-typedInput-icon','180px','installFeedbackWidget\x20','#section-modified','#node-input-returnBounds','nodeClass','raw','_hideMenu','308OpNXbu','#node-input-processed-details-aggregateConfiguration-percentDataBad','application/json','72770aToTBB','fa-sliders','<input\x20type=\x22checkbox\x22>','empty','4HTMLun','text','HasChild','30px','opc.tcp://opcuademo.sterfive.com:26543','val','Method','closest','84xtRgPT','1567002qtdzEm','change','mask-image:\x20url(','16px','red-ui-typedInput-icon\x20','#select-history-type','nsu','modified','#section-','hasClass','sterfive-input-error','addClass','catch','removeClass','</span>','Organizes','>&nbsp;\x20','18px','__parentNode','mousedown.red-ui-typedInput-focus-block','SuppressedError','enter\x20a\x20nodeId\x20or\x20a\x20browsePath\x20','title','nodeId_nsu','callback','Objects','stringify','<button\x20title=\x22open\x20OPCUA\x20AddressSpace\x20Browser\x22><i\x20class=\x22fa\x20fa-sitemap\x22></i></button>','DataType','#node-input-raw-numValuesPerNode',');\x20-webkit-mask-image:\x20url(','$selectTrigger','#section-raw','HasTypeDefinition','hide','ReferenceType','none','BrowseName','reset','mousedown.red-ui-typedInput-close-property-select','type','node','<a\x20href=\x22#\x22></a>','$dropdown','pageX','node\x20class:\x20','pageY','#node-input-processed-details-aggregateConfiguration-useSlopedExtrapolation','displayName','fetched','expanded','aliased\x20browsePath:\x20','#section-annotation-data','numValuesPerNode','sterfive-input-group','li[key=\x22','prependTo','toggle'];_0x1fdc=function(){return _0x49e481;};return _0x1fdc();}
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNvdXJjZU1hcCJdLCJuYW1lcyI6WyJfMHgxYmNjODQiLCJfMHgzZDI0YmEiLCJfMHgyYTk2YTAiLCJfMHg0MzA1YjMiLCJfMHg0ZTA4YTAiLCJfMHg5Y2RhZSIsIl8weDJlYWMwYyIsIl8weDI2YjA0MCIsIlByb21pc2UiLCJfMHgxODEzYmYiLCJfMHgyMDRiNWMiLCJfMHgxZmVkODIiLCJfMHgxYzdiMjUiLCJfMHg1OWVkZjEiLCJfMHhkYTI1NzMiLCJfMHg1YWRkYjYiLCJfMHgxNTI4NGIiLCJfMHgxZDQ5OGEiLCJfMHgzYjViYzkiLCJTdXBwcmVzc2VkRXJyb3IiLCJfMHgyYzVmMGYiLCJfMHgzMmU0YjAiLCJfMHgxNzU2ZTMiLCJfMHg1ZGY0YTciLCJFcnJvciIsIl8weDRhMzExYiIsIl8weDIxMjAyZCIsIl8weDI5NGM0ZSIsIl8weDE2N2ViMyIsIl8weDQ5OGRlMSIsIl8weDVjNjVmYyIsIl8weDE4YjQ2YiIsIl8weDJmMTQxNSIsIl8weGQzYmVlIiwiXzB4N2Q3YWM1IiwiXzB4NTIwMjNjIiwiXzB4MjU5NjY4IiwiXzB4NmU0MGYwIiwiXzB4NDA0N2JhIiwiXzB4NDVjYTY3IiwiXzB4MzEzMGExIiwiXzB4MjA1N2E1IiwiXzB4MzRkMDY0IiwiXzB4MzU0OWIyIiwiXzB4NTZjOGM4IiwiXzB4MTU2Y2YxIiwiXzB4MzE3ZjlkIiwiXzB4NGI2NWU2IiwiZW5kcG9pbnROb2RlIiwiXzB4NWNhMWYyIiwiZW5kcG9pbnQiLCJfMHgzNWE1YmQiLCJiYXNlVXJsIiwiXzB4NDUxMjVmIiwiXzB4Mzg4ZTBhIiwiXzB4Mjc1ZGE3IiwiXzB4NTU5NDg1IiwiXzB4M2RhMzlmIiwiXzB4NWJiZTNkIiwiT2JqZWN0IiwiXzB4MzExMDgyIiwiZmV0Y2giLCJKU09OIiwiY29uc29sZSIsIl8weDUyMTAwZCIsIl8weDVhNDQyNyIsIl8weDM2NTMxMSIsIl8weGZiZmEzZSIsIl8weDU3ODJjZiIsIl8weDE5OWViNSIsIl8weDU2YzBjMCIsIl8weGM2OTYzMCIsIl8weDJhMzk1OCIsIl8weDNlMzYwNiIsIm5vZGVJZCIsIl8weDQxMjZmYyIsInJvb3ROb2RlSWQiLCJfMHgyNDIzN2UiLCJpc1R5cGUiLCJfMHgxYzc5MjciLCJfMHg1MDM2NDgiLCJfMHgxYjVlZTUiLCJfMHgxYWE1NzkiLCJfMHhmNzFlNGIiLCJfMHg5M2M1ZCIsIl8weDNjZWZmZiIsIl8weDFlZjFmYSIsIl8weDJlZTYyYiIsIl8weDExYTFjMiIsIl8weDFlYTljMyIsIl8weDRmNTcwOSIsIl8weDUzNzU4OSIsIl8weGQ1MzEzNCIsIl8weGZmNDFjOCIsIl8weDVkMTUxZCIsIl8weDM5M2Y1MSIsIl8weDViMzU2MSIsIl8weDQ5NWQxYSIsIl8weDQ0ODZjOSIsIl8weGEyOGFmYyIsIl8weDJkZTM0NiIsIl8weDFhMWZmYyIsIl8weDVhYWI5OCIsIl8weDI5NmIwYiIsIl8weDViMGYxZiIsIl8weDIzZjRlMiIsIl8weDVkNjJiNyIsIl8weGY3MGY2MyIsIl8weDEzZTgzZiIsIl8weDNhNWZhOCIsIl8weGFkMGUxMCIsIlJFRCIsIl8weDMxZDNkMCIsIl8weGU0ZTcxMSIsIl8weGVmNTFkMiIsIl8weDJmYzkzOCIsIl8weDUyMGViYSIsIl8weDUwMzZiZCIsIl8weDM4MzljMSIsIl8weDRkOGQ3OSIsIl8weDU3NWQxOCIsIl8weGE2NGFkMSIsIl8weDFkOGFlMCIsIl8weDQwNTdkYSIsIl8weDQ2NTZmYiIsIl8weDExM2Q5NSIsIl8weDVkMzNhNiIsImpzb24iLCJfMHg1OWRhNWUiLCJkYXRhIiwiXzB4M2QzNzZiIiwiXzB4NGQyYWQyIiwiXzB4OWZiZjBiIiwiXzB4MjU0YTljIiwic2V0VGltZW91dCIsIl8weDU4YWQxMCIsIl8weDNkYzMzMyIsIl8weDQzYmQyNCIsIl8weDRlY2ZmNiIsIl8weDNkYjUyMiIsIl8weDIxZDBkZCIsIl8weDM3YTdlMiIsIl8weDU0ZTMxYSIsIl8weDMwNzk2MCIsIl8weDI2MWQ2NyIsIl8weDQ5ODRkNyIsIl8weDVhNDk0OCIsIl8weDRmNTFiNyIsIl8weDFjNzVlMSIsIl8weDMwMWJiYyIsIl8weDNjZWVhMyIsIl8weDFjOTE3MyIsIl8weDFhYjg0YiIsIl8weDUzNmY2ZCIsIl8weDEzYWNjYiIsIl8weDIyZTRhOCIsIiQiLCJfMHg5Y2YzMzciLCJfMHgyZGNmYWQiLCJpY29uIiwiXzB4NTYwNTg0IiwiY29sb3IiLCJfMHgyOWM1YWYiLCJfMHg0YTBlYzIiLCJfMHgyZGEzNGYiLCJfMHhjMmM0NWEiLCJfMHgyM2M0YjYiLCJfMHg1ZjJjNjAiLCJfMHg1NzI1MDEiLCJfMHgxNjViMGMiLCJfMHg0ZTA3MTUiLCJfMHgxYzgyZmQiLCJfMHgxYjg4NTMiLCJfMHg0MWMxZTgiLCJfMHgxODIyNTQiLCJfMHg0ZjAwNDgiLCJfMHgzZTQ2NDIiLCJfMHg1MzBlY2UiLCJfMHgyOGZiM2IiLCJfMHhmYjk1YiIsIl8weDE4NjIyNSIsIl8weDNlMmIwNSIsIl8weDQ0MGM3YSIsIl8weDFjYTgxMCIsIl8weDRlMTI0OSIsInVuZGVmaW5lZCIsIl8weDQ5NmE2MyIsIl8weDJlZjc5MiIsIl8weDIxOTZkZSIsIl8weDM1Y2I5MiIsIl8weDM5NjY1ZSIsIl8weDI5YjI0NyIsIl8weDFiN2RmOCIsIl8weGEyOWQ4MyIsIl8weGM2ZDVmOSIsIl8weDIwMTlmNyIsIl8weDMyY2U1NiIsIl8weGY2MDAzNiIsIl8weDU3ZWM2ZiIsIl8weDFiMzAwNiIsInJlZmVyZW5jZXMiLCJfMHg2MjJkYmYiLCJfMHgxYTk5YTciLCJfMHg1OTRmNWQiLCJfMHg0ZjkwMTMiLCJfMHg1NmNiOTQiLCJfMHg5YTI3NTMiLCJfMHg0MzYyZjEiLCJfMHgyM2Y0YTYiLCJfMHgxYmQzOGUiLCJfMHgyNGY2NmMiLCJfMHhlYjRjNDIiLCJfMHgzNzE2ZmMiLCJfMHgyYTY0NmQiLCJfMHhmMzM3ZmMiLCJfMHgyNTc2NTgiLCJfMHgzMzg2M2YiLCJfMHhhMGViMjQiLCJfMHg0ZDU4M2EiLCJfMHgyZWY4ODQiLCJfMHgzNjdiZWIiLCJfMHgyZjBmYjAiLCJfMHgyODAyNWIiLCJfMHgyMzYxZDciLCJfMHgyYzM1ZTMiLCJfMHgyYTA1N2UiLCJfMHg1N2IxNTQiLCJfMHhlOWZlNzEiLCJfMHg1NzQwMDAiLCJfMHgxYWJiNmUiLCJfMHgzNWIwMTgiLCJkb2N1bWVudCIsIl8weDRjOTI4NiIsIl8weDU0ZTg4ZSIsIl8weDFhYTljZSIsIl8weDNjM2ViYiIsIl8weDI5OGZiYyIsIl8weDFkMDU5OSIsIl8weGJiZjhhIiwiXzB4MzI3M2EzIiwiXzB4MTEyNGMwIiwiXzB4MTdlZDg5IiwiXzB4NWI2M2ZiIiwiXzB4NDNiYjlmIiwiXzB4NTM0ZTIwIiwiXzB4NTc0OGQwIiwiXzB4NGRiYjNkIiwiXzB4M2VhNmM5IiwiXzB4M2EyMGIzIiwiXzB4NGEzZDFhIiwiXzB4MjZkMGI0Iiwid2luZG93IiwiXzB4NDIyZWU1IiwiXzB4MjNmYzliIiwiXzB4MjQ5ODYwIiwiXzB4M2Y4YTdiIiwiXzB4MTM2ZmJmIiwiXzB4NThlMTViIiwiXzB4NGEzZjNkIiwiXzB4NDQ2NmE2IiwiXzB4NTUwYWEzIiwiXzB4NWNjN2E5IiwiXzB4M2MyNDY1IiwiXzB4M2ZhYjcyIiwiXzB4MTkzMDBlIiwiXzB4MjM0Njk5IiwiXzB4YzAxYzE4IiwiXzB4NTg0MmRiIiwiXzB4YzBhNmU2IiwiXzB4NGU4Y2Q0IiwiXzB4NDFlOTM3IiwiXzB4MzRlYmU3IiwiXzB4MTU2OTEzIiwiXzB4NTM1YTZlIiwiXzB4NTVjMmFkIiwiXzB4YWEwNjQzIiwiXzB4MjZjYjljIiwiXzB4MmRmZWE3IiwiXzB4NTBhMWI4IiwiXzB4Njk4NmRmIiwiXzB4NDFlN2ViIiwiXzB4MjMxMDUxIiwiXzB4NDUyNDhiIiwiXzB4Mjk1NDk5IiwiXzB4MzJiYmRjIiwiXzB4NGNkOTRkIiwiXzB4NDQ5NzlmIiwiXzB4YThmYTU0IiwiXzB4NTY0ZTIxIiwiXzB4MzY1ZTEwIiwiXzB4MWM1NTA0IiwiXzB4MjI2NWIyIiwiXzB4MzlhMDkyIiwiXzB4MTcxMTc3IiwiXzB4NGEyZTM1IiwiXzB4NTFkZGM1IiwiXzB4ZmNjNGVkIiwiXzB4NWViNmY2IiwiXzB4M2NmNjA0IiwiXzB4MTQzODVkIiwiXzB4NWYxNmZkIiwiXzB4NDdkZGYwIiwiXzB4NTU3NTRlIiwiXzB4MjI5Nzc3IiwiXzB4MzUzOTZlIiwiXzB4NWRhMTBmIiwiXzB4MmRmMWRjIiwiXzB4MWI3MzI5IiwiXzB4NTdjZjM4IiwiXzB4MzIzYTg5IiwiXzB4MTA2OWVhIiwic2VjdXJpdHlNb2RlIiwiXzB4NzY0ZWUzIiwic2VjdXJpdHlQb2xpY3kiLCJfMHgxODMxYzAiLCJ1c2VySWRlbnRpdHlUeXBlIiwiXzB4MzFhNjI5IiwiY3JlZGVudGlhbHMiLCJfMHgzZjYwMzEiLCJuYW1lc3BhY2VBbGlhc2VzIiwiXzB4YTk2Y2ZkIiwiXzB4MWZlMjBjIiwiXzB4MjY3ZGM0IiwiXzB4MjJmYzVkIiwiXzB4MTk4ZDdhIiwiXzB4M2RlNmZjIiwiXzB4MjVkZGM5IiwiXzB4Mjk1ZDkyIiwiXzB4NWRjZmEzIiwiXzB4MmEzYWY4IiwiXzB4ZDk2OGM0IiwiXzB4NDIzNjNiIiwiXzB4NTRlZmZhIiwiXzB4M2VkOGQ1IiwiXzB4NTk2YjkyIiwiXzB4NDE0ZmQ3IiwiXzB4NTcwZWNlIiwiXzB4NDkwNjAxIiwiXzB4MzViZGFlIiwiXzB4NWYyNGM5IiwiXzB4NWJiMTFhIiwiXzB4NjI3MDg2IiwiXzB4MTU5ZjNiIl0sIm1hcHBpbmdzIjoiczJCQUFBLENBQUMsVSxDQUNHLGEsd0JBbUJBLFNBQVNBLFNBQVQsQ0FBbUJDLFNBQW5CLENBQTRCQyxTQUE1QixDQUF3Q0MsU0FBeEMsQ0FBMkNDLFNBQTNDLEMsQ0FDSSxTQUFTQyxRQUFULENBQWVDLFNBQWYsQyxRQUErQkEsU0FBQSxZQUFpQkgsU0FBakIsQ0FBcUJHLFNBQXJCLENBQTZCLElBQUlILFNBQUosQ0FBTSxTQUFVSSxTQUFWLEMsQ0FBcUJBLFNBQUEsQ0FBUUQsU0FBUixDLEVBQTNCLEMsU0FDckQsR0FBSyxDQUFBSCxTQUFBLEVBQU0sQ0FBQUEsU0FBQSxDQUFJSyxPQUFKLENBQU4sQ0FBTCxDQUF5QixTQUFVQyxTQUFWLENBQW1CQyxTQUFuQixDLHlCQUM1QixTQUFTQyxTQUFULENBQW1CQyxTQUFuQixDLENBQTRCLEcs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QUFBLENBTEosQ0FOSixDQUF4QixDQWNBLE1BbENSLEMsQ0FyRzRDLENBQXBELEMsRUE5aUNKLEciLCJzb3VyY2VzQ29udGVudCI6WyIoZnVuY3Rpb24gKCkge1xuICAgICd1c2Ugc3RyaWN0JztcblxuICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICAgIENvcHlyaWdodCAoYykgTWljcm9zb2Z0IENvcnBvcmF0aW9uLlxyXG5cclxuICAgIFBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZC9vciBkaXN0cmlidXRlIHRoaXMgc29mdHdhcmUgZm9yIGFueVxyXG4gICAgcHVycG9zZSB3aXRoIG9yIHdpdGhvdXQgZmVlIGlzIGhlcmVieSBncmFudGVkLlxyXG5cclxuICAgIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIgQU5EIFRIRSBBVVRIT1IgRElTQ0xBSU1TIEFMTCBXQVJSQU5USUVTIFdJVEhcclxuICAgIFJFR0FSRCBUTyBUSElTIFNPRlRXQVJFIElOQ0xVRElORyBBTEwgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWVxyXG4gICAgQU5EIEZJVE5FU1MuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgQkUgTElBQkxFIEZPUiBBTlkgU1BFQ0lBTCwgRElSRUNULFxyXG4gICAgSU5ESVJFQ1QsIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyBPUiBBTlkgREFNQUdFUyBXSEFUU09FVkVSIFJFU1VMVElORyBGUk9NXHJcbiAgICBMT1NTIE9GIFVTRSwgREFUQSBPUiBQUk9GSVRTLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgTkVHTElHRU5DRSBPUlxyXG4gICAgT1RIRVIgVE9SVElPVVMgQUNUSU9OLCBBUklTSU5HIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFVTRSBPUlxyXG4gICAgUEVSRk9STUFOQ0UgT0YgVEhJUyBTT0ZUV0FSRS5cclxuICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqICovXHJcbiAgICAvKiBnbG9iYWwgUmVmbGVjdCwgUHJvbWlzZSwgU3VwcHJlc3NlZEVycm9yLCBTeW1ib2wsIEl0ZXJhdG9yICovXHJcblxyXG5cclxuICAgIGZ1bmN0aW9uIF9fYXdhaXRlcih0aGlzQXJnLCBfYXJndW1lbnRzLCBQLCBnZW5lcmF0b3IpIHtcclxuICAgICAgICBmdW5jdGlvbiBhZG9wdCh2YWx1ZSkgeyByZXR1cm4gdmFsdWUgaW5zdGFuY2VvZiBQID8gdmFsdWUgOiBuZXcgUChmdW5jdGlvbiAocmVzb2x2ZSkgeyByZXNvbHZlKHZhbHVlKTsgfSk7IH1cclxuICAgICAgICByZXR1cm4gbmV3IChQIHx8IChQID0gUHJvbWlzZSkpKGZ1bmN0aW9uIChyZXNvbHZlLCByZWplY3QpIHtcclxuICAgICAgICAgICAgZnVuY3Rpb24gZnVsZmlsbGVkKHZhbHVlKSB7IHRyeSB7IHN0ZXAoZ2VuZXJhdG9yLm5leHQodmFsdWUpKTsgfSBjYXRjaCAoZSkgeyByZWplY3QoZSk7IH0gfVxyXG4gICAgICAgICAgICBmdW5jdGlvbiByZWplY3RlZCh2YWx1ZSkgeyB0cnkgeyBzdGVwKGdlbmVyYXRvcltcInRocm93XCJdKHZhbHVlKSk7IH0gY2F0Y2ggKGUpIHsgcmVqZWN0KGUpOyB9IH1cclxuICAgICAgICAgICAgZnVuY3Rpb24gc3RlcChyZXN1bHQpIHsgcmVzdWx0LmRvbmUgPyByZXNvbHZlKHJlc3VsdC52YWx1ZSkgOiBhZG9wdChyZXN1bHQudmFsdWUpLnRoZW4oZnVsZmlsbGVkLCByZWplY3RlZCk7IH1cclxuICAgICAgICAgICAgc3RlcCgoZ2VuZXJhdG9yID0gZ2VuZXJhdG9yLmFwcGx5KHRoaXNBcmcsIF9hcmd1bWVudHMgfHwgW10pKS5uZXh0KCkpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHR5cGVvZiBTdXBwcmVzc2VkRXJyb3IgPT09IFwiZnVuY3Rpb25cIiA/IFN1cHByZXNzZWRFcnJvciA6IGZ1bmN0aW9uIChlcnJvciwgc3VwcHJlc3NlZCwgbWVzc2FnZSkge1xyXG4gICAgICAgIHZhciBlID0gbmV3IEVycm9yKG1lc3NhZ2UpO1xyXG4gICAgICAgIHJldHVybiBlLm5hbWUgPSBcIlN1cHByZXNzZWRFcnJvclwiLCBlLmVycm9yID0gZXJyb3IsIGUuc3VwcHJlc3NlZCA9IHN1cHByZXNzZWQsIGU7XHJcbiAgICB9O1xuXG4gICAgY29uc3QgT3JnYW5pemVzUmVmTm9kZUlkID0gXCJucz0wO2k9MzVcIjtcbiAgICBjb25zdCBGb2xkZXJUeXBlID0gXCJucz0wO2k9NjFcIjtcbiAgICBjb25zdCBIYXNDb21wb25lbnRSZWZOb2RlSWQgPSBcIm5zPTA7aT00N1wiO1xuICAgIGNvbnN0IEhhc1Byb3BlcnR5UmVmTm9kZUlkID0gXCJucz0wO2k9NDZcIjtcbiAgICBjb25zdCBIYXNDaGlsZFJlZk5vZGVJZCA9IFwibnM9MDtpPTM0XCI7XG4gICAgY29uc3QgSGFzU3VidHlwZVJlZk5vZGVJZCA9IFwibnM9MDtpPTQ1XCI7XG4gICAgY29uc3QgSGFzVHlwZURlZmluaXRpb25SZWZOb2RlSWQgPSBcIm5zPTA7aT00MFwiO1xuXG4gICAgdmFyIEJyb3dzZURpcmVjdGlvbjtcbiAgICAoZnVuY3Rpb24gKEJyb3dzZURpcmVjdGlvbikge1xuICAgICAgICBCcm93c2VEaXJlY3Rpb25bQnJvd3NlRGlyZWN0aW9uW1wiRm9yd2FyZFwiXSA9IDBdID0gXCJGb3J3YXJkXCI7XG4gICAgICAgIEJyb3dzZURpcmVjdGlvbltCcm93c2VEaXJlY3Rpb25bXCJJbnZlcnNlXCJdID0gMV0gPSBcIkludmVyc2VcIjtcbiAgICAgICAgQnJvd3NlRGlyZWN0aW9uW0Jyb3dzZURpcmVjdGlvbltcIkJvdGhcIl0gPSAyXSA9IFwiQm90aFwiO1xuICAgICAgICBCcm93c2VEaXJlY3Rpb25bQnJvd3NlRGlyZWN0aW9uW1wiSW52YWxpZFwiXSA9IDNdID0gXCJJbnZhbGlkXCI7XG4gICAgfSkoQnJvd3NlRGlyZWN0aW9uIHx8IChCcm93c2VEaXJlY3Rpb24gPSB7fSkpO1xuICAgIHZhciBOb2RlQ2xhc3M7XG4gICAgKGZ1bmN0aW9uIChOb2RlQ2xhc3MpIHtcbiAgICAgICAgTm9kZUNsYXNzW05vZGVDbGFzc1tcIlVuc3BlY2lmaWVkXCJdID0gMF0gPSBcIlVuc3BlY2lmaWVkXCI7XG4gICAgICAgIE5vZGVDbGFzc1tOb2RlQ2xhc3NbXCJPYmplY3RcIl0gPSAxXSA9IFwiT2JqZWN0XCI7XG4gICAgICAgIE5vZGVDbGFzc1tOb2RlQ2xhc3NbXCJWYXJpYWJsZVwiXSA9IDJdID0gXCJWYXJpYWJsZVwiO1xuICAgICAgICBOb2RlQ2xhc3NbTm9kZUNsYXNzW1wiTWV0aG9kXCJdID0gNF0gPSBcIk1ldGhvZFwiO1xuICAgICAgICBOb2RlQ2xhc3NbTm9kZUNsYXNzW1wiT2JqZWN0VHlwZVwiXSA9IDhdID0gXCJPYmplY3RUeXBlXCI7XG4gICAgICAgIE5vZGVDbGFzc1tOb2RlQ2xhc3NbXCJWYXJpYWJsZVR5cGVcIl0gPSAxNl0gPSBcIlZhcmlhYmxlVHlwZVwiO1xuICAgICAgICBOb2RlQ2xhc3NbTm9kZUNsYXNzW1wiUmVmZXJlbmNlVHlwZVwiXSA9IDMyXSA9IFwiUmVmZXJlbmNlVHlwZVwiO1xuICAgICAgICBOb2RlQ2xhc3NbTm9kZUNsYXNzW1wiRGF0YVR5cGVcIl0gPSA2NF0gPSBcIkRhdGFUeXBlXCI7XG4gICAgICAgIE5vZGVDbGFzc1tOb2RlQ2xhc3NbXCJWaWV3XCJdID0gMTI4XSA9IFwiVmlld1wiO1xuICAgIH0pKE5vZGVDbGFzcyB8fCAoTm9kZUNsYXNzID0ge30pKTtcbiAgICB2YXIgTm9kZUNsYXNzTWFzaztcbiAgICAoZnVuY3Rpb24gKE5vZGVDbGFzc01hc2spIHtcbiAgICAgICAgTm9kZUNsYXNzTWFza1tOb2RlQ2xhc3NNYXNrW1wiT2JqZWN0XCJdID0gMV0gPSBcIk9iamVjdFwiO1xuICAgICAgICBOb2RlQ2xhc3NNYXNrW05vZGVDbGFzc01hc2tbXCJWYXJpYWJsZVwiXSA9IDJdID0gXCJWYXJpYWJsZVwiO1xuICAgICAgICBOb2RlQ2xhc3NNYXNrW05vZGVDbGFzc01hc2tbXCJNZXRob2RcIl0gPSA0XSA9IFwiTWV0aG9kXCI7XG4gICAgICAgIE5vZGVDbGFzc01hc2tbTm9kZUNsYXNzTWFza1tcIk9iamVjdFR5cGVcIl0gPSA4XSA9IFwiT2JqZWN0VHlwZVwiO1xuICAgICAgICBOb2RlQ2xhc3NNYXNrW05vZGVDbGFzc01hc2tbXCJWYXJpYWJsZVR5cGVcIl0gPSAxNl0gPSBcIlZhcmlhYmxlVHlwZVwiO1xuICAgICAgICBOb2RlQ2xhc3NNYXNrW05vZGVDbGFzc01hc2tbXCJSZWZlcmVuY2VUeXBlXCJdID0gMzJdID0gXCJSZWZlcmVuY2VUeXBlXCI7XG4gICAgICAgIE5vZGVDbGFzc01hc2tbTm9kZUNsYXNzTWFza1tcIkRhdGFUeXBlXCJdID0gNjRdID0gXCJEYXRhVHlwZVwiO1xuICAgICAgICBOb2RlQ2xhc3NNYXNrW05vZGVDbGFzc01hc2tbXCJWaWV3XCJdID0gMTI4XSA9IFwiVmlld1wiO1xuICAgIH0pKE5vZGVDbGFzc01hc2sgfHwgKE5vZGVDbGFzc01hc2sgPSB7fSkpO1xuICAgIHZhciBSZXN1bHRNYXNrO1xuICAgIChmdW5jdGlvbiAoUmVzdWx0TWFzaykge1xuICAgICAgICBSZXN1bHRNYXNrW1Jlc3VsdE1hc2tbXCJSZWZlcmVuY2VUeXBlXCJdID0gMV0gPSBcIlJlZmVyZW5jZVR5cGVcIjtcbiAgICAgICAgUmVzdWx0TWFza1tSZXN1bHRNYXNrW1wiSXNGb3J3YXJkXCJdID0gMl0gPSBcIklzRm9yd2FyZFwiO1xuICAgICAgICBSZXN1bHRNYXNrW1Jlc3VsdE1hc2tbXCJOb2RlQ2xhc3NcIl0gPSA0XSA9IFwiTm9kZUNsYXNzXCI7XG4gICAgICAgIFJlc3VsdE1hc2tbUmVzdWx0TWFza1tcIkJyb3dzZU5hbWVcIl0gPSA4XSA9IFwiQnJvd3NlTmFtZVwiO1xuICAgICAgICBSZXN1bHRNYXNrW1Jlc3VsdE1hc2tbXCJEaXNwbGF5TmFtZVwiXSA9IDE2XSA9IFwiRGlzcGxheU5hbWVcIjtcbiAgICAgICAgUmVzdWx0TWFza1tSZXN1bHRNYXNrW1wiVHlwZURlZmluaXRpb25cIl0gPSAzMl0gPSBcIlR5cGVEZWZpbml0aW9uXCI7XG4gICAgfSkoUmVzdWx0TWFzayB8fCAoUmVzdWx0TWFzayA9IHt9KSk7XG4gICAgLy8gIGNvbnN0IHEgPSBSZWZlcmVuY2VUeXBlSWRzLk9yZ2FuaXplcztcbiAgICBmdW5jdGlvbiByZXNvbHZlTm9kZUlkKG5vZGVJZExpa2UpIHtcbiAgICAgICAgc3dpdGNoIChub2RlSWRMaWtlKSB7XG4gICAgICAgICAgICBjYXNlIFwiT3JnYW5pemVzXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIE9yZ2FuaXplc1JlZk5vZGVJZDtcbiAgICAgICAgICAgIGNhc2UgXCJIYXNQcm9wZXJ0eVwiOlxuICAgICAgICAgICAgICAgIHJldHVybiBIYXNQcm9wZXJ0eVJlZk5vZGVJZDtcbiAgICAgICAgICAgIGNhc2UgXCJIYXNDb21wb25lbnRcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4gSGFzQ29tcG9uZW50UmVmTm9kZUlkO1xuICAgICAgICAgICAgY2FzZSBcIkhhc0NoaWxkXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIEhhc0NoaWxkUmVmTm9kZUlkO1xuICAgICAgICAgICAgY2FzZSBcIkhhc1N1YnR5cGVcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4gSGFzU3VidHlwZVJlZk5vZGVJZDtcbiAgICAgICAgICAgIGNhc2UgXCJIYXNUeXBlRGVmaW5pdGlvblwiOlxuICAgICAgICAgICAgICAgIHJldHVybiBIYXNUeXBlRGVmaW5pdGlvblJlZk5vZGVJZDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IGdldEljb24gPSAocmVmZXJlbmNlKSA9PiB7XG4gICAgICAgIHN3aXRjaCAocmVmZXJlbmNlLm5vZGVDbGFzcykge1xuICAgICAgICAgICAgY2FzZSBcIk9iamVjdFwiOlxuICAgICAgICAgICAgICAgIGlmIChyZWZlcmVuY2UucmVmZXJlbmNlVHlwZUlkID09PSBPcmdhbml6ZXNSZWZOb2RlSWQpIDtcbiAgICAgICAgICAgICAgICBpZiAocmVmZXJlbmNlLnR5cGVEZWZpbml0aW9uID09PSBGb2xkZXJUeXBlIHx8IHJlZmVyZW5jZS5yZWZlcmVuY2VUeXBlSWQgPT09IFwiaT02MVwiKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB7IGljb246IFwiZmEtZm9sZGVyXCIsIGNvbG9yOiBcInJnYmEoNjEsIDYwLCA0LCAwLjUyNSlcIiB9O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm4geyBpY29uOiBcImZhLW9iamVjdC1ncm91cFwiLCBjb2xvcjogXCJTZWFHcmVlblwiIH07XG4gICAgICAgICAgICBjYXNlIFwiVmFyaWFibGVcIjpcbiAgICAgICAgICAgICAgICBpZiAocmVmZXJlbmNlLnJlZmVyZW5jZVR5cGVJZCA9PT0gSGFzQ29tcG9uZW50UmVmTm9kZUlkKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB7IGljb246IFwiZmEtbGlzdC1hbHRcIiwgY29sb3I6IFwiU3RlZWxCbHVlXCIgfTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAocmVmZXJlbmNlLnJlZmVyZW5jZVR5cGVJZCA9PT0gSGFzUHJvcGVydHlSZWZOb2RlSWQpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHsgaWNvbjogXCJmYS1saXN0LWFsdFwiLCBjb2xvcjogXCJEb2RnZXJCbHVlXCIgfTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB7IGljb246IFwiZmEtbGlzdC1hbHRcIiwgY29sb3I6IFwiQ2FkZXRCbHVlXCIgfTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXNlIFwiTWV0aG9kXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHsgaWNvbjogXCJmYS1jb2dcIiwgY29sb3I6IFwiU2FuZHlCcm93blwiIH07XG4gICAgICAgICAgICBjYXNlIFwiT2JqZWN0VHlwZVwiOlxuICAgICAgICAgICAgICAgIHJldHVybiB7IGljb246IFwiZmEtb2JqZWN0LWdyb3VwXCIsIGNvbG9yOiBcIkRhcmtPcmFuZ2VcIiB9O1xuICAgICAgICAgICAgY2FzZSBcIlZhcmlhYmxlVHlwZVwiOlxuICAgICAgICAgICAgICAgIHJldHVybiB7IGljb246IFwiZmEtc2xpZGVyc1wiLCBjb2xvcjogXCJEYXJrT3JhbmdlXCIgfTtcbiAgICAgICAgICAgIGNhc2UgXCJEYXRhVHlwZVwiOlxuICAgICAgICAgICAgICAgIHJldHVybiB7IGljb246IFwiZmEtdGV4dC13aWR0aFwiLCBjb2xvcjogXCJDYWRldEJsdWVcIiB9O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB7IGljb246IFwiZmEtcXVlc3Rpb25cIiwgY29sb3I6IFwiZ3JleVwiIH07XG4gICAgfTtcblxuICAgIGNvbnN0IGJyb3dzZSA9IChfYSwgbm9kZUlkXzEsIHRlbXBsYXRlXzEpID0+IF9fYXdhaXRlcih2b2lkIDAsIFtfYSwgbm9kZUlkXzEsIHRlbXBsYXRlXzFdLCB2b2lkIDAsIGZ1bmN0aW9uKiAoeyBlbmRwb2ludE5vZGUsIGVuZHBvaW50LCBiYXNlVXJsIH0sIG5vZGVJZCwgdGVtcGxhdGUpIHtcbiAgICAgICAgY29uc3Qgcm9vdCA9IGAke2Jhc2VVcmx9L29wY3VhLWZvci1ub2RlLXJlZGA7XG4gICAgICAgIGNvbnN0IHVybCA9IGAke3Jvb3R9L2Jyb3dzZWA7XG4gICAgICAgIGNvbnN0IGJyb3dzZURlc2NyaXB0aW9uID0gT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCB0ZW1wbGF0ZSksIHsgbm9kZUlkLCByZXN1bHRNYXNrOiA2MyB9KTtcbiAgICAgICAgY29uc3QgZGF0YSA9IHlpZWxkIGZldGNoKHVybCwge1xuICAgICAgICAgICAgbWV0aG9kOiBcIlBPU1RcIixcbiAgICAgICAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgICAgICAgICBlbmRwb2ludE5vZGUsXG4gICAgICAgICAgICAgICAgZW5kcG9pbnQsXG4gICAgICAgICAgICAgICAgYnJvd3NlRGVzY3JpcHRpb24sXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIGhlYWRlcnM6IHsgXCJDb250ZW50LVR5cGVcIjogXCJhcHBsaWNhdGlvbi9qc29uXCIgfSxcbiAgICAgICAgfSk7XG4gICAgICAgIGlmIChkYXRhLnN0YXR1cyAhPT0gMjAwKSB7XG4gICAgICAgICAgICBjb25zb2xlLmxvZyhcImZldGNoaW5nIGZhaWxlZCB3aXRoIGVycm9yXCIsIGRhdGEuc3RhdHVzLCBkYXRhLnN0YXR1c1RleHQpO1xuICAgICAgICAgICAgcmV0dXJuIHsgcmVmZXJlbmNlczogW10gfTtcbiAgICAgICAgfVxuICAgICAgICAvLyBjb25zb2xlLmxvZyhcImJyb3dzZSBmZXRjaGVkIDogXCIsIGRhdGEuc3RhdHVzLCBkYXRhLnN0YXR1c1RleHQpO1xuICAgICAgICBjb25zdCByZXNwb25zZSA9IHlpZWxkIGRhdGEuanNvbigpO1xuICAgICAgICBjb25zdCByZWZlcmVuY2VzID0gcmVzcG9uc2UuYnJvd3NlUmVzdWx0LnJlZmVyZW5jZXMgfHwgW107XG4gICAgICAgIHJldHVybiB7IHJlZmVyZW5jZXMgfTtcbiAgICB9KTtcblxuICAgIGNvbnN0IHRlbXBsYXRlMSA9IHtcbiAgICAgICAgcmVmZXJlbmNlVHlwZUlkOiByZXNvbHZlTm9kZUlkKFwiSGFzQ2hpbGRcIiksXG4gICAgICAgIGluY2x1ZGVTdWJ0eXBlczogdHJ1ZSxcbiAgICAgICAgYnJvd3NlRGlyZWN0aW9uOiBCcm93c2VEaXJlY3Rpb24uRm9yd2FyZCxcbiAgICAgICAgbm9kZUNsYXNzTWFzazogTm9kZUNsYXNzLlZhcmlhYmxlIHwgTm9kZUNsYXNzLk9iamVjdCB8IE5vZGVDbGFzcy5NZXRob2QsXG4gICAgICAgIC8vICBOb2RlQ2xhc3MuT2JqZWN0VHlwZSB8XG4gICAgICAgIC8vICBOb2RlQ2xhc3MuVmFyaWFibGVUeXBlIHxcbiAgICAgICAgLy8gTm9kZUNsYXNzLlJlZmVyZW5jZVR5cGUgfFxuICAgICAgICAvLyBOb2RlQ2xhc3MuRGF0YVR5cGUgfFxuICAgICAgICAvLyBOb2RlQ2xhc3MuVmlldyxcbiAgICAgICAgcmVzdWx0TWFzazogNjMsXG4gICAgfTtcbiAgICBjb25zdCB0ZW1wbGF0ZTIgPSB7XG4gICAgICAgIHJlZmVyZW5jZVR5cGVJZDogcmVzb2x2ZU5vZGVJZChcIk9yZ2FuaXplc1wiKSxcbiAgICAgICAgaW5jbHVkZVN1YnR5cGVzOiB0cnVlLFxuICAgICAgICBicm93c2VEaXJlY3Rpb246IEJyb3dzZURpcmVjdGlvbi5Gb3J3YXJkLFxuICAgICAgICBub2RlQ2xhc3NNYXNrOiBOb2RlQ2xhc3MuVmFyaWFibGUgfCBOb2RlQ2xhc3MuT2JqZWN0IHwgTm9kZUNsYXNzLk1ldGhvZCxcbiAgICAgICAgLy8gIE5vZGVDbGFzcy5PYmplY3RUeXBlIHxcbiAgICAgICAgLy8gIE5vZGVDbGFzcy5WYXJpYWJsZVR5cGUgfFxuICAgICAgICAvLyBOb2RlQ2xhc3MuUmVmZXJlbmNlVHlwZSB8XG4gICAgICAgIC8vIE5vZGVDbGFzcy5EYXRhVHlwZSB8XG4gICAgICAgIC8vIE5vZGVDbGFzcy5WaWV3LFxuICAgICAgICByZXN1bHRNYXNrOiA2MyxcbiAgICB9O1xuICAgIGNvbnN0IHdhbGtCYWNrd2FyZCA9IChfYSwgX2IpID0+IF9fYXdhaXRlcih2b2lkIDAsIFtfYSwgX2JdLCB2b2lkIDAsIGZ1bmN0aW9uKiAoeyBlbmRwb2ludE5vZGUsIGVuZHBvaW50LCBiYXNlVXJsIH0sIHsgbm9kZUlkLCByb290Tm9kZUlkLCBpc1R5cGUgfSkge1xuICAgICAgICBjb25zdCByb290ID0gYCR7YmFzZVVybH0vb3BjdWEtZm9yLW5vZGUtcmVkYDtcbiAgICAgICAgY29uc3QgdXJsID0gYCR7cm9vdH0vd2Fsay1iYWNrd2FyZGA7XG4gICAgICAgIGNvbnN0IGRhdGEgPSB5aWVsZCBmZXRjaCh1cmwsIHtcbiAgICAgICAgICAgIG1ldGhvZDogXCJQT1NUXCIsXG4gICAgICAgICAgICBib2R5OiBKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgICAgICAgICAgZW5kcG9pbnROb2RlLFxuICAgICAgICAgICAgICAgIGVuZHBvaW50LFxuICAgICAgICAgICAgICAgIG5vZGVJZCxcbiAgICAgICAgICAgICAgICByb290Tm9kZUlkLFxuICAgICAgICAgICAgICAgIGlzVHlwZSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgaGVhZGVyczogeyBcIkNvbnRlbnQtVHlwZVwiOiBcImFwcGxpY2F0aW9uL2pzb25cIiB9LFxuICAgICAgICB9KTtcbiAgICAgICAgaWYgKGRhdGEuc3RhdHVzICE9PSAyMDApIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGpzb24gPSAoeWllbGQgZGF0YS5qc29uKCkpO1xuICAgICAgICByZXR1cm4ganNvbi5icm93c2VQYXRoO1xuICAgIH0pO1xuICAgIGNvbnN0IGNob29zZU5vZGVJZCA9IChkYXRhLCBtb2RlKSA9PiB7XG4gICAgICAgIGlmIChkYXRhLnN0YXR1c0NvZGUgIT09IFwiR29vZFwiKSB7XG4gICAgICAgICAgICByZXR1cm4gZGF0YS5yZXF1ZXN0ZWROb2RlSWQ7XG4gICAgICAgIH1cbiAgICAgICAgc3dpdGNoIChtb2RlKSB7XG4gICAgICAgICAgICBjYXNlIFwiYnJvd3NlUGF0aFwiOlxuICAgICAgICAgICAgICAgIHJldHVybiBkYXRhLmJwX2luZGV4ZWQ7XG4gICAgICAgICAgICBjYXNlIFwiYWxpYXNlZEJyb3dzZVBhdGhcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4gZGF0YS5icF9hbGlhc2VkIHx8IGRhdGEuYnBfaW5kZXhlZDtcbiAgICAgICAgICAgIGNhc2UgXCJhbGlhc2VkTm9kZUlkXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIGRhdGEubm9kZUlkX2FsaWFzZWQgfHwgZGF0YS5ub2RlSWRfbnN1O1xuICAgICAgICAgICAgY2FzZSBcIm5zdU5vZGVJRFwiOlxuICAgICAgICAgICAgICAgIHJldHVybiBkYXRhLm5vZGVJZF9uc3U7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgY2FzZSBcIm5vZGVJZFwiOlxuICAgICAgICAgICAgICAgIHJldHVybiBkYXRhLm5vZGVJZDtcbiAgICAgICAgfVxuICAgIH07XG4gICAgY29uc3QgbWFrZVRvb2x0aXAgPSAoZGF0YSkgPT4ge1xuICAgICAgICBpZiAoZGF0YS5zdGF0dXNDb2RlICE9PSBcIkdvb2RcIikge1xuICAgICAgICAgICAgcmV0dXJuIGBzdGF0dXNDb2RlOiAke2RhdGEuc3RhdHVzQ29kZX1gO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgbGV0IHN0ciA9IFtdO1xuICAgICAgICAgICAgc3RyLnB1c2goYG5vZGVJZDogJHtkYXRhLm5vZGVJZH1gKTtcbiAgICAgICAgICAgIHN0ci5wdXNoKGBicm93c2UgcGF0aDogJHtkYXRhLmJwX2luZGV4ZWR9YCk7XG4gICAgICAgICAgICBzdHIucHVzaChgbm9kZSBjbGFzczogJHtOb2RlQ2xhc3NbZGF0YS5ub2RlQ2xhc3NdfWApO1xuICAgICAgICAgICAgaWYgKGRhdGEubm9kZUlkX25zdSkge1xuICAgICAgICAgICAgICAgIHN0ci5wdXNoKGBuc3Ugbm9kZUlkOiAke2RhdGEubm9kZUlkX25zdX1gKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChkYXRhLm5vZGVJZF9hbGlhc2VkKSB7XG4gICAgICAgICAgICAgICAgc3RyLnB1c2goYGFsaWFzZWQgTm9kZUlkOiAke2RhdGEubm9kZUlkX2FsaWFzZWR9YCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoZGF0YS5icF9pbmRleGVkKSB7XG4gICAgICAgICAgICAgICAgc3RyLnB1c2goYGFsaWFzZWQgYnJvd3NlUGF0aDogJHtkYXRhLmJwX2FsaWFzZWR9YCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gc3RyLmpvaW4oXCJcXG5cIik7XG4gICAgICAgIH1cbiAgICB9O1xuICAgIGZ1bmN0aW9uIGZpZ3VyZU91dE1vZGUoZW5oYW5jZWROb2RlSWQpIHtcbiAgICAgICAgaWYgKGVuaGFuY2VkTm9kZUlkLm1hdGNoKC9ebnN1PS8pKSB7XG4gICAgICAgICAgICByZXR1cm4gXCJuc3VOb2RlSURcIjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoZW5oYW5jZWROb2RlSWQubWF0Y2goL14obnM9Lio7KT8oaXxifHN8Zyk9LykpIHtcbiAgICAgICAgICAgIHJldHVybiBcIm5vZGVJZFwiO1xuICAgICAgICB9XG4gICAgICAgIGlmIChlbmhhbmNlZE5vZGVJZC5tYXRjaCgvXm5zYT0vKSkge1xuICAgICAgICAgICAgcmV0dXJuIFwiYWxpYXNlZE5vZGVJZFwiO1xuICAgICAgICB9XG4gICAgICAgIGlmIChlbmhhbmNlZE5vZGVJZC5tYXRjaCgvXihcXC98XFwuKVswLTldKzovKSkge1xuICAgICAgICAgICAgcmV0dXJuIFwiYnJvd3NlUGF0aFwiO1xuICAgICAgICB9XG4gICAgICAgIGlmIChlbmhhbmNlZE5vZGVJZC5tYXRjaCgvXihcXC98XFwuKS4qOi8pKSB7XG4gICAgICAgICAgICByZXR1cm4gXCJicm93c2VQYXRoXCI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZnVuY3Rpb24gZmlndXJlT3V0TWVuVUl0ZW1WYWx1ZShzdHIpIHtcbiAgICAgICAgY29uc3QgbW9kZSA9IGZpZ3VyZU91dE1vZGUoc3RyKTtcbiAgICAgICAgc3dpdGNoIChtb2RlKSB7XG4gICAgICAgICAgICBjYXNlIFwibm9kZUlkXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIFwiblwiO1xuICAgICAgICAgICAgY2FzZSBcImFsaWFzZWROb2RlSWRcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4gXCJuYVwiO1xuICAgICAgICAgICAgY2FzZSBcIm5zdU5vZGVJRFwiOlxuICAgICAgICAgICAgICAgIHJldHVybiBcIm5zdVwiO1xuICAgICAgICAgICAgY2FzZSBcImJyb3dzZVBhdGhcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4gXCJiXCI7XG4gICAgICAgICAgICBjYXNlIFwiYWxpYXNlZEJyb3dzZVBhdGhcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4gXCJhYlwiO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICByZXR1cm4gXCJ0XCI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZnVuY3Rpb24gdG9Nb2RlKHYpIHtcbiAgICAgICAgbGV0IG1vZGU7XG4gICAgICAgIHN3aXRjaCAodikge1xuICAgICAgICAgICAgY2FzZSBcIm5cIjpcbiAgICAgICAgICAgICAgICBtb2RlID0gXCJub2RlSWRcIjtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgXCJuYVwiOlxuICAgICAgICAgICAgICAgIG1vZGUgPSBcImFsaWFzZWROb2RlSWRcIjtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgXCJuc3VcIjpcbiAgICAgICAgICAgICAgICBtb2RlID0gXCJuc3VOb2RlSURcIjtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgXCJiXCI6XG4gICAgICAgICAgICAgICAgbW9kZSA9IFwiYnJvd3NlUGF0aFwiO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSBcImFiXCI6XG4gICAgICAgICAgICAgICAgbW9kZSA9IFwiYWxpYXNlZEJyb3dzZVBhdGhcIjtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbW9kZTtcbiAgICB9XG4gICAgZnVuY3Rpb24gZnJvbU1vZGUobW9kZSkge1xuICAgICAgICBzd2l0Y2ggKG1vZGUpIHtcbiAgICAgICAgICAgIGNhc2UgXCJub2RlSWRcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4gXCJuXCI7XG4gICAgICAgICAgICBjYXNlIFwiYWxpYXNlZE5vZGVJZFwiOlxuICAgICAgICAgICAgICAgIHJldHVybiBcIm5hXCI7XG4gICAgICAgICAgICBjYXNlIFwibnN1Tm9kZUlEXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIFwibnN1XCI7XG4gICAgICAgICAgICBjYXNlIFwiYnJvd3NlUGF0aFwiOlxuICAgICAgICAgICAgICAgIHJldHVybiBcImJcIjtcbiAgICAgICAgICAgIGNhc2UgXCJhbGlhc2VkQnJvd3NlUGF0aFwiOlxuICAgICAgICAgICAgICAgIHJldHVybiBcImFiXCI7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHJldHVybiBcInRcIjtcbiAgICAgICAgfVxuICAgIH1cbiAgICBjb25zdCBfY2FsbENoZWNrTm9kZUlkID0gKF9hLCBub2RlSWRfMSkgPT4gX19hd2FpdGVyKHZvaWQgMCwgW19hLCBub2RlSWRfMV0sIHZvaWQgMCwgZnVuY3Rpb24qICh7IGVuZHBvaW50Tm9kZSwgZW5kcG9pbnQsIGJhc2VVcmwgfSwgbm9kZUlkKSB7XG4gICAgICAgIGNvbnN0IHJvb3QgPSBgJHtiYXNlVXJsfS9vcGN1YS1mb3Itbm9kZS1yZWRgO1xuICAgICAgICBjb25zdCB1cmwgPSBgJHtyb290fS9jaGVja05vZGVJZGA7XG4gICAgICAgIGNvbnN0IGVJZCA9IGVuZHBvaW50Tm9kZS5pZDtcbiAgICAgICAgY29uc3QgbiA9IFJFRC5ub2Rlcy5ub2RlKGVJZCk7XG4gICAgICAgIGNvbnNvbGUubG9nKG4ubmFtZXNwYWNlQWxpYXNlcyk7XG4gICAgICAgIG4ubmFtZXNwYWNlQWxpYXNlcztcbiAgICAgICAgY29uc3QgbmFtZXNwYWNlQWxpYXNlcyA9IGVuZHBvaW50Tm9kZS5uYW1lc3BhY2VBbGlhc2VzO1xuICAgICAgICBjb25zdCBkYXRhID0geWllbGQgZmV0Y2godXJsLCB7XG4gICAgICAgICAgICBtZXRob2Q6IFwiUE9TVFwiLFxuICAgICAgICAgICAgYm9keTogSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICAgICAgICAgIGVuZHBvaW50Tm9kZSxcbiAgICAgICAgICAgICAgICBlbmRwb2ludCxcbiAgICAgICAgICAgICAgICBub2RlSWQsXG4gICAgICAgICAgICAgICAgbmFtZXNwYWNlQWxpYXNlcyxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgaGVhZGVyczogeyBcIkNvbnRlbnQtVHlwZVwiOiBcImFwcGxpY2F0aW9uL2pzb25cIiB9LFxuICAgICAgICB9KTtcbiAgICAgICAgY29uc3QganNvbiA9ICh5aWVsZCBkYXRhLmpzb24oKSk7XG4gICAgICAgIHJldHVybiB7IGpzb24sIGRhdGEgfTtcbiAgICB9KTtcbiAgICBjb25zdCBpbnRlcm5hbFZlcmlmeSA9IChfYSwgbW9kZV8xLCAkaW5wdXRFbGVtZW50XzEsICRpbmZvXzEpID0+IF9fYXdhaXRlcih2b2lkIDAsIFtfYSwgbW9kZV8xLCAkaW5wdXRFbGVtZW50XzEsICRpbmZvXzFdLCB2b2lkIDAsIGZ1bmN0aW9uKiAoeyBlbmRwb2ludE5vZGUsIGVuZHBvaW50LCBiYXNlVXJsIH0sIG1vZGUsICRpbnB1dEVsZW1lbnQsICRpbmZvKSB7XG4gICAgICAgIGNvbnN0IGVuaGFuY2VkTm9kZUlkID0gJGlucHV0RWxlbWVudC52YWwoKTtcbiAgICAgICAgY29uc3QgeyBqc29uLCBkYXRhIH0gPSB5aWVsZCBfY2FsbENoZWNrTm9kZUlkKHsgZW5kcG9pbnROb2RlLCBlbmRwb2ludCwgYmFzZVVybCB9LCBlbmhhbmNlZE5vZGVJZCk7XG4gICAgICAgIGNvbnN0IHNldE5vdGlmaWNhdGlvbiA9ICh0ZXh0LCBjbGFzc05hbWUpID0+IHtcbiAgICAgICAgICAgICRpbmZvLnRleHQodGV4dCkuYWRkQ2xhc3MoXCJzdGVyZml2ZS1pbmZvXCIpLmFkZENsYXNzKGNsYXNzTmFtZSk7XG4gICAgICAgICAgICAkaW5mby5zaG93KCk7XG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICAkaW5mby5yZW1vdmVDbGFzcyhjbGFzc05hbWUpO1xuICAgICAgICAgICAgICAgICRpbmZvLmhpZGUoKTtcbiAgICAgICAgICAgIH0sIDMwMDApO1xuICAgICAgICB9O1xuICAgICAgICBpZiAoZGF0YS5zdGF0dXMgIT09IDIwMCkge1xuICAgICAgICAgICAgLy8gZG8gc29tZXRoaW5nO1xuICAgICAgICAgICAgc2V0Tm90aWZpY2F0aW9uKFwiISFmYWlsdXJlISFcIiArIGVuaGFuY2VkTm9kZUlkLCBcImZhaWx1cmVcIik7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBpZiAoanNvbi5zdGF0dXNDb2RlLm1hdGNoKC9Hb29kLykpIHtcbiAgICAgICAgICAgICAgICBjb25zdCB0b29sdGlwID0gbWFrZVRvb2x0aXAoanNvbik7XG4gICAgICAgICAgICAgICAgJGlucHV0RWxlbWVudC5hdHRyKFwidGl0bGVcIiwgdG9vbHRpcCk7XG4gICAgICAgICAgICAgICAgLy8gZG8gc29tZXRoaW5nXG4gICAgICAgICAgICAgICAgY29uc3Qgc2VsZWN0ZWROb2RlSWQgPSBjaG9vc2VOb2RlSWQoanNvbiwgbW9kZSk7XG4gICAgICAgICAgICAgICAgJGlucHV0RWxlbWVudC52YWwoc2VsZWN0ZWROb2RlSWQpO1xuICAgICAgICAgICAgICAgICRpbnB1dEVsZW1lbnQudHJpZ2dlcihcImNoYW5nZVwiKTtcbiAgICAgICAgICAgICAgICBzZXROb3RpZmljYXRpb24oXCJHb29kXCIsIFwib2tcIik7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAkaW5wdXRFbGVtZW50LnZhbChgJHtlbmhhbmNlZE5vZGVJZH1gKTtcbiAgICAgICAgICAgICAgICBzZXROb3RpZmljYXRpb24oYCR7anNvbi5zdGF0dXNDb2RlfSAke2RhdGEuc3RhdHVzVGV4dH1gLCBcImZhaWx1cmVcIik7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfSk7XG4gICAgZnVuY3Rpb24gZmV0Y2hDaGlsZHJlbigkbm9kZSwgZGF0YSkge1xuICAgICAgICByZXR1cm4gX19hd2FpdGVyKHRoaXMsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICAgICAgY29uc3Qgbm9kZUlkID0gJG5vZGUuZGF0YShcInZhbHVlXCIpO1xuICAgICAgICAgICAgY29uc3QgYnJvd3NlUmVzdWx0MSA9IHlpZWxkIGJyb3dzZShkYXRhLCBub2RlSWQsIHRlbXBsYXRlMSk7XG4gICAgICAgICAgICBjb25zdCBicm93c2VSZXN1bHQyID0geWllbGQgYnJvd3NlKGRhdGEsIG5vZGVJZCwgdGVtcGxhdGUyKTtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgcmVmZXJlbmNlczogWy4uLmJyb3dzZVJlc3VsdDEucmVmZXJlbmNlcywgLi4uYnJvd3NlUmVzdWx0Mi5yZWZlcmVuY2VzXSxcbiAgICAgICAgICAgIH07XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBjb25zdCB0ZW1wbGF0ZVNUID0ge1xuICAgICAgICByZWZlcmVuY2VUeXBlSWQ6IHJlc29sdmVOb2RlSWQoXCJIYXNTdWJ0eXBlXCIpLFxuICAgICAgICBpbmNsdWRlU3VidHlwZXM6IHRydWUsXG4gICAgICAgIGJyb3dzZURpcmVjdGlvbjogQnJvd3NlRGlyZWN0aW9uLkZvcndhcmQsXG4gICAgICAgIG5vZGVDbGFzc01hc2s6IE5vZGVDbGFzcy5SZWZlcmVuY2VUeXBlIHwgTm9kZUNsYXNzLk9iamVjdFR5cGUgfCBOb2RlQ2xhc3MuRGF0YVR5cGUgfCBOb2RlQ2xhc3MuVmFyaWFibGVUeXBlLFxuICAgICAgICByZXN1bHRNYXNrOiA2MyxcbiAgICB9O1xuICAgIGZ1bmN0aW9uIGZldGNoU3VidHlwZXMoJG5vZGUsIGRhdGEpIHtcbiAgICAgICAgcmV0dXJuIF9fYXdhaXRlcih0aGlzLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24qICgpIHtcbiAgICAgICAgICAgIGNvbnN0IG5vZGVJZCA9ICRub2RlLmRhdGEoXCJ2YWx1ZVwiKTtcbiAgICAgICAgICAgIGNvbnN0IGJyb3dzZVJlc3VsdDEgPSB5aWVsZCBicm93c2UoZGF0YSwgbm9kZUlkLCB0ZW1wbGF0ZVNUKTtcbiAgICAgICAgICAgIHJldHVybiBicm93c2VSZXN1bHQxO1xuICAgICAgICB9KTtcbiAgICB9XG4gICAgY29uc3QgbWFrZUVsZW1lbnQgPSAocmVmZXJlbmNlKSA9PiB7XG4gICAgICAgIHZhciBfYSwgX2IsIF9jLCBfZDtcbiAgICAgICAgaWYgKCFyZWZlcmVuY2UgfHwgIXJlZmVyZW5jZS5ub2RlSWQpIHtcbiAgICAgICAgICAgIGNvbnN0ICRlbGVtZW50ID0gJChgPGxpPjxpIGNsYXNzPVwiZmEgZmEtZXJyb3JcIiBzdHlsZT1cImNvbG9yOnJlZDtcIj48L2k+bm8gcmVmZXJlbmNlICE8dWw+PC91bD48L2xpPmApO1xuICAgICAgICAgICAgcmV0dXJuICRlbGVtZW50O1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG4gPSByZWZlcmVuY2Uubm9kZUlkLnRvU3RyaW5nKCk7XG4gICAgICAgIGNvbnN0IHQgPSAoKF9hID0gcmVmZXJlbmNlLmRpc3BsYXlOYW1lKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EudGV4dCkgfHwgKChfYiA9IHJlZmVyZW5jZS5icm93c2VOYW1lKSA9PT0gbnVsbCB8fCBfYiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2IubmFtZSkgfHwgcmVmZXJlbmNlLm5vZGVJZC50b1N0cmluZygpO1xuICAgICAgICBjb25zdCB7IGljb24sIGNvbG9yIH0gPSBnZXRJY29uKHJlZmVyZW5jZSk7XG4gICAgICAgIGNvbnN0IHRpdGxlID0gYCgke3JlZmVyZW5jZS5ub2RlSWQudG9TdHJpbmcoKX0pICR7KChfYyA9IHJlZmVyZW5jZS5icm93c2VOYW1lKSA9PT0gbnVsbCB8fCBfYyA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2MubmFtZSkgfHwgKChfZCA9IHJlZmVyZW5jZS5kaXNwbGF5TmFtZSkgPT09IG51bGwgfHwgX2QgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9kLnRleHQpIHx8IFwiXCJ9YDtcbiAgICAgICAgY29uc3QgJGVsZW1lbnQgPSAkKGA8bGkga2V5PVwiJHtyZWZlcmVuY2Uubm9kZUlkLnRvU3RyaW5nKCl9XCJ9PjxzcGFuIGNsYXNzPVwidHJlZS10ZXh0XCIgdGl0bGU9JHt0aXRsZX0+PGkgY2xhc3M9XCJmYSAke2ljb259XCIgc3R5bGU9XCJjb2xvcjoke2NvbG9yfTtcIj48L2k+ICR7dH08L3NwYW4+PHVsPjwvdWw+PC9saT5gKTtcbiAgICAgICAgJGVsZW1lbnQuYWRkQ2xhc3MoXCJleHBhbmRhYmxlXCIpO1xuICAgICAgICAkZWxlbWVudC5kYXRhKFwidmFsdWVcIiwgbik7XG4gICAgICAgICRlbGVtZW50LmRhdGEoXCJyZWZlcmVuY2VcIiwgcmVmZXJlbmNlKTtcbiAgICAgICAgcmV0dXJuICRlbGVtZW50O1xuICAgIH07XG4gICAgY29uc3QgZmluZEVsZW1lbnQgPSAobm9kZUlkLCAkdHJlZSkgPT4ge1xuICAgICAgICByZXR1cm4gJHRyZWUuZmluZChgbGlba2V5PVwiJHtub2RlSWR9XCJdYCk7XG4gICAgfTtcbiAgICBjb25zdCBzZWxlY3RTaW5nbGUgPSAodGhhdCwgJGxpKSA9PiB7XG4gICAgICAgIHRoYXQuJHRyZWUuZmluZChcImxpID4gLnRyZWUtdGV4dFwiKS5yZW1vdmVDbGFzcyhcInNlbGVjdGVkXCIpO1xuICAgICAgICAvLyBjbGVhciBhbGwgc2VsZWN0ZWQgaXRlbXNcbiAgICAgICAgJGxpLmZpbmQoXCIudHJlZS10ZXh0OmZpcnN0XCIpLmFkZENsYXNzKFwic2VsZWN0ZWRcIik7XG4gICAgfTtcbiAgICBjb25zdCBhdXRvRXhwYW5kID0gKHRoYXQsIGJyb3dzZVBhdGgsICR0cmVlKSA9PiBfX2F3YWl0ZXIodm9pZCAwLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24qICgpIHtcbiAgICAgICAgLy8gZXhwYW5kIHRoZSB0cmVlIHRvIHNob3cgdGhlIG5vZGVJZFxuICAgICAgICBsZXQgJGN1cnJlbnQgPSAkdHJlZS5jaGlsZHJlbihcIjpmaXJzdFwiKTtcbiAgICAgICAgYnJvd3NlUGF0aC5yZWxhdGl2ZVBhdGguZWxlbWVudHMgfHwgW107XG4gICAgICAgIGNvbnN0IG5vZGVJZHMgPSBicm93c2VQYXRoLm5vZGVJZHMgfHwgW107XG4gICAgICAgIGlmIChub2RlSWRzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGZvciAoY29uc3QgbiBvZiBub2RlSWRzKSB7XG4gICAgICAgICAgICBpZiAoJGN1cnJlbnQuaGFzQ2xhc3MoXCJleHBhbmRhYmxlXCIpKSB7XG4gICAgICAgICAgICAgICAgLy8gbmVlZCB0byBleHBhbmQgYW5kIHNlbGVjdCB0aGUgcmlnaHQgZWxlbWVudFxuICAgICAgICAgICAgICAgIHlpZWxkIF9leHBhbmRMaSh0aGF0LCAkY3VycmVudCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCAkZWxlbWVudCA9IGZpbmRFbGVtZW50KG4sICRjdXJyZW50KTtcbiAgICAgICAgICAgIGlmICgkZWxlbWVudC5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAkY3VycmVudCA9ICRlbGVtZW50O1xuICAgICAgICB9XG4gICAgICAgIHNlbGVjdFNpbmdsZSh0aGF0LCAkY3VycmVudCk7XG4gICAgICAgIHNjcm9sbFRvTGkodGhhdC4kZHJvcGRvd24sICRjdXJyZW50KTtcbiAgICB9KTtcbiAgICBmdW5jdGlvbiBzY3JvbGxUb0xpKCRjb250YWluZXIsICR0YXJnZXRMaSkge1xuICAgICAgICAvLyBHZXQgdGhlIHBvc2l0aW9uIG9mIHRoZSB0YXJnZXQgaXRlbSByZWxhdGl2ZSB0byBpdHMgY29udGFpbmVyXG4gICAgICAgIGNvbnN0IGxpUG9zID0gJHRhcmdldExpLnBvc2l0aW9uKCkudG9wO1xuICAgICAgICAvLyBHZXQgdGhlIGN1cnJlbnQgc2Nyb2xsIHBvc2l0aW9uIG9mIHRoZSBjb250YWluZXJcbiAgICAgICAgY29uc3QgY29udGFpbmVyU2Nyb2xsVG9wID0gJGNvbnRhaW5lci5zY3JvbGxUb3AoKTtcbiAgICAgICAgaWYgKGNvbnRhaW5lclNjcm9sbFRvcCA9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICAvLyBDYWxjdWxhdGUgdGhlIHBvc2l0aW9uIHRvIHNjcm9sbCB0byAoY3VycmVudCBzY3JvbGwgKyBpdGVtJ3MgcG9zaXRpb24pXG4gICAgICAgIC8vIEFkanVzdCB0aGlzIGNhbGN1bGF0aW9uIGJhc2VkIG9uIHlvdXIgbmVlZHNcbiAgICAgICAgY29uc3Qgc2Nyb2xsVG8gPSBjb250YWluZXJTY3JvbGxUb3AgKyBsaVBvcyAtICRjb250YWluZXIuaGVpZ2h0KCkgLyAyICsgJHRhcmdldExpLmhlaWdodCgpIC8gMjtcbiAgICAgICAgLy8gU2Nyb2xsIHRoZSBjb250YWluZXIgdG8gZW5zdXJlIHRoZSBpdGVtIGlzIHZpc2libGVcbiAgICAgICAgJGNvbnRhaW5lci5hbmltYXRlKHtcbiAgICAgICAgICAgIHNjcm9sbFRvcDogc2Nyb2xsVG8sXG4gICAgICAgIH0sIDUwMCk7IC8vIEFkanVzdCB0aGUgZHVyYXRpb24gKDUwMG1zKSBhcyBuZWVkZWRcbiAgICB9XG4gICAgY29uc3QgcmVhY2hTZWxlY3Rpb24gPSAodGhhdCwgcGFyZW50Tm9kZSkgPT4gX19hd2FpdGVyKHZvaWQgMCwgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKiAoKSB7XG4gICAgICAgIGNvbnN0IG5vZGVJZCA9IHRoYXQuJGlucHV0LnZhbCgpO1xuICAgICAgICBjb25zdCBvcHRpb25zID0ge1xuICAgICAgICAgICAgbm9kZUlkLFxuICAgICAgICAgICAgcm9vdE5vZGVJZDogcGFyZW50Tm9kZS5ub2RlSWQsXG4gICAgICAgICAgICBpc1R5cGU6IHRoYXQub3B0aW9ucy5pc1R5cGVSZWYgfHwgZmFsc2UsXG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IGRhdGEgPSBtYWtlQ29ubmVjdGlvbih0aGF0KTtcbiAgICAgICAgY29uc3QgYnJvd3NlUGF0aCA9IHlpZWxkIHdhbGtCYWNrd2FyZChkYXRhLCBvcHRpb25zKTtcbiAgICAgICAgaWYgKCFicm93c2VQYXRoKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgeWllbGQgYXV0b0V4cGFuZCh0aGF0LCBicm93c2VQYXRoLCB0aGF0LiR0cmVlKTtcbiAgICB9KTtcbiAgICBmdW5jdGlvbiBfZmV0Y2hEYXRhRm9yTm9kZSh0aGF0LCAkbm9kZSwgZmV0Y2hGdW5jLCBkYXRhKSB7XG4gICAgICAgIHJldHVybiBfX2F3YWl0ZXIodGhpcywgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKiAoKSB7XG4gICAgICAgICAgICBpZiAoJG5vZGUuaGFzQ2xhc3MoXCJmZXRjaGVkXCIpKSB7XG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2coXCJhbHJlYWR5IGZldGNoZWRcIik7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKCRub2RlLmhhc0NsYXNzKFwibG9hZGluZ1wiKSkge1xuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiYWxyZWFkeSBsb2FkaW5nXCIpO1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICRub2RlLmFkZENsYXNzKFwibG9hZGluZ1wiKTtcbiAgICAgICAgICAgICRub2RlLmFwcGVuZCgnPGRpdiBjbGFzcz1cInNwaW5uZXJcIj48L2Rpdj4nKTtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgJG5vZGUuY2hpbGRyZW4oXCJ1bFwiKS5lbXB0eSgpO1xuICAgICAgICAgICAgICAgIGNvbnN0IHsgcmVmZXJlbmNlcyB9ID0geWllbGQgZmV0Y2hGdW5jKCRub2RlLCBkYXRhKTtcbiAgICAgICAgICAgICAgICAvLyBzb3J0IHJlZmVyZW5jZSAgIGJ5IGJyb3dzZU5hbWVcbiAgICAgICAgICAgICAgICByZWZlcmVuY2VzLnNvcnQoKGEsIGIpID0+IHsgdmFyIF9hLCBfYjsgcmV0dXJuICgoKF9hID0gYS5icm93c2VOYW1lKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EubmFtZSkgfHwgXCJcIikubG9jYWxlQ29tcGFyZSgoKF9iID0gYi5icm93c2VOYW1lKSA9PT0gbnVsbCB8fCBfYiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2IubmFtZSkgfHwgXCJcIik7IH0pO1xuICAgICAgICAgICAgICAgIGZvciAoY29uc3QgcmVmZXJlbmNlIG9mIHJlZmVyZW5jZXMpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoYXQub3B0aW9ucy5maWx0ZXIgJiYgIXRoYXQub3B0aW9ucy5maWx0ZXIocmVmZXJlbmNlKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgJGVsZW1lbnQgPSBtYWtlRWxlbWVudChyZWZlcmVuY2UpO1xuICAgICAgICAgICAgICAgICAgICAkbm9kZS5jaGlsZHJlbihcInVsXCIpLmFwcGVuZCgkZWxlbWVudCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICRub2RlLmFkZENsYXNzKFwiZmV0Y2hlZFwiKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNhdGNoIChlcnIpIHtcbiAgICAgICAgICAgICAgICAkbm9kZS5jaGlsZHJlbihcInVsXCIpLmFwcGVuZChgPGxpPmVycm9yICR7ZXJyLm1lc3NhZ2V9PC9saT5gKTtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhcImVyclwiLCBlcnIpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJG5vZGUuZmluZChcIi5zcGlubmVyXCIpLnJlbW92ZSgpO1xuICAgICAgICAgICAgJG5vZGUucmVtb3ZlQ2xhc3MoXCJsb2FkaW5nXCIpO1xuICAgICAgICB9KTtcbiAgICB9XG4gICAgZnVuY3Rpb24gbWFrZUNvbm5lY3Rpb24odGhhdCkge1xuICAgICAgICBjb25zdCBkYXRhID0ge1xuICAgICAgICAgICAgYmFzZVVybDogdGhhdC5vcHRpb25zLmJhc2VVcmwsXG4gICAgICAgICAgICBlbmRwb2ludE5vZGU6IHR5cGVvZiB0aGF0Lm9wdGlvbnMuZW5kcG9pbnROb2RlID09PSBcImZ1bmN0aW9uXCIgPyB0aGF0Lm9wdGlvbnMuZW5kcG9pbnROb2RlKCkgOiB0aGF0Lm9wdGlvbnMuZW5kcG9pbnROb2RlLFxuICAgICAgICAgICAgZW5kcG9pbnQ6IHR5cGVvZiB0aGF0Lm9wdGlvbnMuZW5kcG9pbnQgPT09IFwiZnVuY3Rpb25cIiA/IHRoYXQub3B0aW9ucy5lbmRwb2ludCgpIDogdGhhdC5vcHRpb25zLmVuZHBvaW50LFxuICAgICAgICB9O1xuICAgICAgICByZXR1cm4gZGF0YTtcbiAgICB9XG4gICAgZnVuY3Rpb24gX2V4cGFuZExpKHRoYXQsICRsaSkge1xuICAgICAgICByZXR1cm4gX19hd2FpdGVyKHRoaXMsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICAgICAgaWYgKCRsaS5oYXNDbGFzcyhcImZldGNoZWRcIikpIHtcbiAgICAgICAgICAgICAgICAkbGkucmVtb3ZlQ2xhc3MoXCJleHBhbmRhYmxlXCIpLmFkZENsYXNzKFwiZXhwYW5kZWRcIik7XG4gICAgICAgICAgICAgICAgJGxpLmNoaWxkcmVuKFwidWxcIikudG9nZ2xlKCk7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gRmV0Y2ggbmV3IGRhdGEgZm9yIHRoaXMgbm9kZVxuICAgICAgICAgICAgY29uc3QgZGF0YSA9IG1ha2VDb25uZWN0aW9uKHRoYXQpO1xuICAgICAgICAgICAgY29uc3QgZiA9ICF0aGF0Lm9wdGlvbnMuaXNUeXBlUmVmID8gZmV0Y2hDaGlsZHJlbiA6IGZldGNoU3VidHlwZXM7XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIHlpZWxkIF9mZXRjaERhdGFGb3JOb2RlKHRoYXQsICRsaSwgZiwgZGF0YSk7XG4gICAgICAgICAgICAgICAgLy8gbWFyayBhcyBleHBhbmRlZFxuICAgICAgICAgICAgICAgICRsaS5yZW1vdmVDbGFzcyhcImV4cGFuZGFibGVcIikuYWRkQ2xhc3MoXCJleHBhbmRlZFwiKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNhdGNoIChlcnIpIHtcbiAgICAgICAgICAgICAgICAkbGkucmVtb3ZlQ2xhc3MoXCJleHBhbmRhYmxlXCIpLmFkZENsYXNzKFwiZXhwYW5kZWRcIik7XG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2coXCJlcnJvclwiLCBlcnIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG4gICAgY29uc3QgZGVmYXVsdFBhcmVudE5vZGUgPSB7XG4gICAgICAgIGJyb3dzZU5hbWU6IHsgbmFtZXNwYWNlSW5kZXg6IDAsIG5hbWU6IFwiT2JqZWN0c1wiIH0sXG4gICAgICAgIG5vZGVDbGFzczogXCJPYmplY3RcIixcbiAgICAgICAgbm9kZUlkOiBcIm5zPTA7aT04NVwiLFxuICAgICAgICBkaXNwbGF5TmFtZTogeyB0ZXh0OiBcIk9iamVjdHNcIiB9LFxuICAgICAgICB0eXBlRGVmaW5pdGlvbjogRm9sZGVyVHlwZSxcbiAgICB9O1xuICAgIGNvbnN0IGRlY2xhcmVOb2RlQnJvd3NlcldpZGdldCA9ICgpID0+IHtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIFsgVGVtcGVyYXR1cmUgIF1cbiAgICAgICAgICogICAoIHRvb2x0aXAgOiAoL09iamVjdHMvTXlTZW5zb3IpIChucz0xO3M9VGVtcGVyYXR1cmUpKVxuICAgICAgICAgKiBbICsgW0ZvbGRlcl0gT2JqZWN0c11cbiAgICAgICAgICogWyAgICAgW09iamVjdF0gTXlTZW5zb3JdXG4gICAgICAgICAqIFsgICAgICggKSBbVmFyaWFibGVdIFRlbXBlcmF0dXJlXVxuICAgICAgICAgKi9cbiAgICAgICAgJC53aWRnZXQoXCJzdGVyZml2ZS5ub2RlQnJvd3NlclwiLCB7XG4gICAgICAgICAgICAvKiBkZWZhdWx0IG9wdGlvbnMgKi9cbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICBlbmRwb2ludE5vZGU6ICgpID0+ICh7IGVuZHBvaW50OiBcIm9wYy50Y3A6Ly9vcGN1YWRlbW8uc3RlcmZpdmUuY29tOjI2NTQzXCIgfSksXG4gICAgICAgICAgICAgICAgZW5kcG9pbnQ6ICgpID0+IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICBwYXJlbnROb2RlOiAoKSA9PiBkZWZhdWx0UGFyZW50Tm9kZSxcbiAgICAgICAgICAgICAgICBmaWx0ZXI6ICgpID0+IHRydWUsXG4gICAgICAgICAgICAgICAgYmFzZVVybDogXCJcIixcbiAgICAgICAgICAgICAgICBpc1R5cGVSZWY6IGZhbHNlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHJlc29sdmVQYXJlbnROb2RlKCkge1xuICAgICAgICAgICAgICAgIHJldHVybiBfX2F3YWl0ZXIodGhpcywgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKiAoKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHRoYXQgPSB0aGlzO1xuICAgICAgICAgICAgICAgICAgICBpZiAodGhhdC5fX3BhcmVudE5vZGUgPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBhID0gdHlwZW9mIHRoYXQub3B0aW9ucy5wYXJlbnROb2RlID09PSBcImZ1bmN0aW9uXCIgPyB0aGF0Lm9wdGlvbnMucGFyZW50Tm9kZS5jYWxsKHRoYXQpIDogdGhhdC5vcHRpb25zLnBhcmVudE5vZGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoYSBpbnN0YW5jZW9mIFByb21pc2UpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBkZXNjID0geWllbGQgYTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGF0Ll9fcGFyZW50Tm9kZSA9IGRlc2M7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGF0Ll9fcGFyZW50Tm9kZSA9IGE7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoYXQuX19wYXJlbnROb2RlIHx8IGRlZmF1bHRQYXJlbnROb2RlO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHJlc2V0KCkge1xuICAgICAgICAgICAgICAgIHJldHVybiBfX2F3YWl0ZXIodGhpcywgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKiAoKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHRoYXQgPSB0aGlzO1xuICAgICAgICAgICAgICAgICAgICAvLyBhbHNvIHJlc2V0IHBhcmVudCBub2RlXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGEgPSB0aGF0O1xuICAgICAgICAgICAgICAgICAgICBhLl9fcGFyZW50Tm9kZSA9IHVuZGVmaW5lZDtcbiAgICAgICAgICAgICAgICAgICAgdGhhdC4kdHJlZS5lbXB0eSgpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBwYXJlbnROb2RlID0geWllbGQgdGhpcy5yZXNvbHZlUGFyZW50Tm9kZSgpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCAkZWxlbWVudCA9IG1ha2VFbGVtZW50KHBhcmVudE5vZGUpO1xuICAgICAgICAgICAgICAgICAgICB0aGF0LiR0cmVlLmFwcGVuZCgkZWxlbWVudCk7XG4gICAgICAgICAgICAgICAgICAgIHRoYXQuY3VycmVudFBhcmVudCA9IHBhcmVudE5vZGU7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgdmVyaWZ5KG1vZGUpIHtcbiAgICAgICAgICAgICAgICBjb25zdCB0aGF0ID0gdGhpcztcbiAgICAgICAgICAgICAgICAvLyBGZXRjaCBuZXcgZGF0YSBmb3IgdGhpcyBub2RlXG4gICAgICAgICAgICAgICAgY29uc3QgZGF0YSA9IG1ha2VDb25uZWN0aW9uKHRoYXQpO1xuICAgICAgICAgICAgICAgIGludGVybmFsVmVyaWZ5KGRhdGEsIG1vZGUsIHRoYXQuJGlucHV0LCB0aGF0LiRpbmZvKS50aGVuKChzdWNjZXNzKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmICghc3VjY2Vzcykge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC4kY29tYm8uYWRkQ2xhc3MoXCJzdGVyZml2ZS1pbnB1dC1lcnJvclwiKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuJGNvbWJvLnJlbW92ZUNsYXNzKFwic3RlcmZpdmUtaW5wdXQtZXJyb3JcIik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBfaGlkZU1lbnUobWVudSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHRoYXQgPSB0aGlzO1xuICAgICAgICAgICAgICAgICQoZG9jdW1lbnQpLm9mZihcIm1vdXNlZG93bi5yZWQtdWktdHlwZWRJbnB1dC1jbG9zZS1wcm9wZXJ0eS1zZWxlY3RcIik7XG4gICAgICAgICAgICAgICAgbWVudS5oaWRlKCk7XG4gICAgICAgICAgICAgICAgbWVudS5jc3Moe1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IFwiYXV0b1wiLFxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIGlmIChtZW51Lm9wdHMubXVsdGlwbGUpIHtcbiAgICAgICAgICAgICAgICAgICAgdmFyIHNlbGVjdGVkID0gW107XG4gICAgICAgICAgICAgICAgICAgIG1lbnUuZmluZCgnaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdJykuZWFjaChmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoJCh0aGlzKS5wcm9wKFwiY2hlY2tlZFwiKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdGVkLnB1c2goJCh0aGlzKS5kYXRhKFwidmFsdWVcIikpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgbWVudS5jYWxsYmFjayhzZWxlY3RlZCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICh0aGF0LiRlbGVtZW50RGl2LmlzKFwiOnZpc2libGVcIikpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhhdC4kaW5wdXQudHJpZ2dlcihcImZvY3VzXCIpO1xuICAgICAgICAgICAgICAgICAgICAvL3h4IH0gZWxzZSBpZiAodGhpcy4kb3B0aW9uU2VsZWN0VHJpZ2dlci5pcyhcIjp2aXNpYmxlXCIpKSB7XG4gICAgICAgICAgICAgICAgICAgIC8veHggICAgIHRoYXQuJG9wdGlvblNlbGVjdFRyaWdnZXIudHJpZ2dlcihcImZvY3VzXCIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdGhhdC4kc2VsZWN0VHJpZ2dlci50cmlnZ2VyKFwiZm9jdXNcIik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIF9jcmVhdGVNZW51KG1lbnVPcHRpb25zLCBvcHRzLCBjYWxsYmFjaykge1xuICAgICAgICAgICAgICAgIHZhciB0aGF0ID0gdGhpcztcbiAgICAgICAgICAgICAgICBjb25zdCBtZW51ID0gJChcIjxkaXY+XCIpLmFkZENsYXNzKFwic3RlcmZpdmUtdHlwZWRJbnB1dC1vcHRpb25zIHN0ZXJmaXZlLW9ubGluZS1tZW51XCIpO1xuICAgICAgICAgICAgICAgIG1lbnUub3B0cyA9IG9wdHM7XG4gICAgICAgICAgICAgICAgbWVudS5jYWxsYmFjayA9IGNhbGxiYWNrO1xuICAgICAgICAgICAgICAgIG1lbnVPcHRpb25zLmZvckVhY2goKG9wdCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAodHlwZW9mIG9wdCA9PT0gXCJzdHJpbmdcIikge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3B0ID0geyB2YWx1ZTogb3B0LCBsYWJlbDogb3B0IH07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgdmFyIG9wID0gJCgnPGEgaHJlZj1cIiNcIj48L2E+JykuYXR0cihcInZhbHVlXCIsIG9wdC52YWx1ZSkuYXBwZW5kVG8obWVudSk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChvcHQubGFiZWwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wLnRleHQob3B0LmxhYmVsKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBpZiAob3B0LnRpdGxlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcC5wcm9wKFwidGl0bGVcIiwgb3B0LnRpdGxlKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBpZiAob3B0Lmljb24pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChvcHQuaWNvbi5pbmRleE9mKFwiPFwiKSA9PT0gMCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICQob3B0Lmljb24pLnByZXBlbmRUbyhvcCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChvcHQuaWNvbi5pbmRleE9mKFwiL1wiKSAhPT0gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKFwiPGk+XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M6IFwicmVkLXVpLXR5cGVkSW5wdXQtaWNvblwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZTogXCJtYXNrLWltYWdlOiB1cmwoXCIgKyBvcHQuaWNvbiArIFwiKTsgLXdlYmtpdC1tYXNrLWltYWdlOiB1cmwoXCIgKyBvcHQuaWNvbiArIFwiKTtcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KS5wcmVwZW5kVG8ob3ApO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJChcIjxpPlwiLCB7IGNsYXNzOiBcInJlZC11aS10eXBlZElucHV0LWljb24gXCIgKyBvcHQuaWNvbiB9KS5wcmVwZW5kVG8ob3ApO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3AuY3NzKHsgcGFkZGluZ0xlZnQ6IFwiMThweFwiIH0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGlmICghb3B0Lmljb24gJiYgIW9wdC5sYWJlbCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3AudGV4dChvcHQudmFsdWUpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHZhciBjYjtcbiAgICAgICAgICAgICAgICAgICAgaWYgKG9wdHMubXVsdGlwbGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNiID0gJCgnPGlucHV0IHR5cGU9XCJjaGVja2JveFwiPicpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNzcyhcInBvaW50ZXItZXZlbnRzXCIsIFwibm9uZVwiKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5kYXRhKFwidmFsdWVcIiwgb3B0LnZhbHVlKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5wcmVwZW5kVG8ob3ApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLm9uKFwibW91c2Vkb3duXCIsIGZ1bmN0aW9uIChldnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBldnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIG9wLm9uKFwiY2xpY2tcIiwgZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoIW9wdHMubXVsdGlwbGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYWxsYmFjayhvcHQudmFsdWUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuX2hpZGVNZW51KG1lbnUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2IucHJvcChcImNoZWNrZWRcIiwgIWNiLnByb3AoXCJjaGVja2VkXCIpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgbWVudS5jc3Moe1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBtZW51Lm9uKFwia2V5ZG93blwiLCBmdW5jdGlvbiAoZXZ0KSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChldnQua2V5Q29kZSA9PT0gNDApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGV2dC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gRE9XTlxuICAgICAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5jaGlsZHJlbihcIjpmb2N1c1wiKS5uZXh0KCkudHJpZ2dlcihcImZvY3VzXCIpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKGV2dC5rZXlDb2RlID09PSAzOCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZXZ0LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBVUFxuICAgICAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5jaGlsZHJlbihcIjpmb2N1c1wiKS5wcmV2KCkudHJpZ2dlcihcImZvY3VzXCIpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKGV2dC5rZXlDb2RlID09PSAyNykge1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gRVNDQVBFXG4gICAgICAgICAgICAgICAgICAgICAgICBldnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuX2hpZGVNZW51KG1lbnUpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGV2dC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICByZXR1cm4gbWVudTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBkaXNhcm1DbGljazogZmFsc2UsXG4gICAgICAgICAgICBfc2hvd01lbnUobWVudSwgcmVsYXRpdmVUbykge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmRpc2FybUNsaWNrKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGlzYXJtQ2xpY2sgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB2YXIgdGhhdCA9IHRoaXM7XG4gICAgICAgICAgICAgICAgdmFyIHBvcyA9IHJlbGF0aXZlVG8ub2Zmc2V0KCk7XG4gICAgICAgICAgICAgICAgdmFyIGhlaWdodCA9IHJlbGF0aXZlVG8uaGVpZ2h0KCk7XG4gICAgICAgICAgICAgICAgdmFyIG1lbnVIZWlnaHQgPSBtZW51LmhlaWdodCgpO1xuICAgICAgICAgICAgICAgIHZhciB0b3AgPSBoZWlnaHQgKyBwb3MudG9wO1xuICAgICAgICAgICAgICAgIGlmICh0b3AgKyBtZW51SGVpZ2h0IC0gJChkb2N1bWVudCkuc2Nyb2xsVG9wKCkgPiAkKHdpbmRvdykuaGVpZ2h0KCkpIHtcbiAgICAgICAgICAgICAgICAgICAgdG9wIC09IHRvcCArIG1lbnVIZWlnaHQgLSAkKHdpbmRvdykuaGVpZ2h0KCkgKyA1O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAodG9wIDwgMCkge1xuICAgICAgICAgICAgICAgICAgICBtZW51LmhlaWdodChtZW51SGVpZ2h0ICsgdG9wKTtcbiAgICAgICAgICAgICAgICAgICAgdG9wID0gMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgbWVudS5jc3Moe1xuICAgICAgICAgICAgICAgICAgICB0b3A6IHRvcCArIFwicHhcIixcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogcG9zLmxlZnQgKyBcInB4XCIsXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgbWVudS5zbGlkZURvd24oMTAwKTtcbiAgICAgICAgICAgICAgICB0aGlzLl9kZWxheShmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoYXQuJHVpU2VsZWN0LmFkZENsYXNzKFwicmVkLXVpLXR5cGVkSW5wdXQtZm9jdXNcIik7XG4gICAgICAgICAgICAgICAgICAgICQoZG9jdW1lbnQpLm9uKFwibW91c2Vkb3duLnJlZC11aS10eXBlZElucHV0LWNsb3NlLXByb3BlcnR5LXNlbGVjdFwiLCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghJChldmVudC50YXJnZXQpLmNsb3Nlc3QobWVudSkubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5faGlkZU1lbnUobWVudSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoJChldmVudC50YXJnZXQpLmNsb3Nlc3QocmVsYXRpdmVUbykubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5kaXNhcm1DbGljayA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgX3Nob3dUeXBlTWVudSgpIHtcbiAgICAgICAgICAgICAgICBjb25zdCB0aGF0ID0gdGhpcztcbiAgICAgICAgICAgICAgICB0aGlzLl9zaG93TWVudSh0aGF0LiRtZW51LCB0aGF0LiRjb21ibyk7XG4gICAgICAgICAgICAgICAgdGhhdC4kZHJvcGRvd24uaGlkZSgpO1xuICAgICAgICAgICAgICAgIGNvbnN0IHR5cGUgPSB0aGF0LnNlbGVjdGVkTWVudUl0ZW07XG4gICAgICAgICAgICAgICAgdmFyIHNlbGVjdGVkID0gdGhhdC4kbWVudS5maW5kKFwiW3ZhbHVlPSdcIiArIHR5cGUgKyBcIidcIik7XG4gICAgICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgICAgIHNlbGVjdGVkLnRyaWdnZXIoXCJmb2N1c1wiKTtcbiAgICAgICAgICAgICAgICB9LCAxMjApO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIF9pbml0TWVudSgpIHtcbiAgICAgICAgICAgICAgICBjb25zdCB0aGF0ID0gdGhpcztcbiAgICAgICAgICAgICAgICB0aGF0LiRzZWxlY3RUcmlnZ2VyLmF0dHIoXCJ0YWJpbmRleFwiLCAtMSk7XG4gICAgICAgICAgICAgICAgdGhhdC4kc2VsZWN0VHJpZ2dlci5vbihcIm1vdXNlZG93bi5yZWQtdWktdHlwZWRJbnB1dC1mb2N1cy1ibG9ja1wiLCBmdW5jdGlvbiAoZXZ0KSB7XG4gICAgICAgICAgICAgICAgICAgIGV2dC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIGlmICh0aGF0LiRtZW51KSB7XG4gICAgICAgICAgICAgICAgICAgIHRoYXQuJG1lbnUucmVtb3ZlKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8vIGZhLWlkLWNhcmRcbiAgICAgICAgICAgICAgICBjb25zdCB0eXBlTGlzdCA9IFtcbiAgICAgICAgICAgICAgICAgICAgeyBsYWJlbDogXCJ0ZXh0XCIsIHZhbHVlOiBcInRcIiwgdGl0bGU6IFwiVmFsdWUgaXMgbm90IHZlcmlmaWVkXCIsIGljb246ICc8aSBjbGFzcz1cImZhIGZhLWZvbnRcIi9pPiAnIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsOiBcIm1zZy5cIixcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBcIm1zZ1wiLFxuICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IFwibm9kZSBpZCBvciAgYnJvd3NlIHBhdGggY29tZXMgZnJvbSBpbmplY3RlZCBtc2cgcGFyYW1ldGVyXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICBpY29uOiAnPGkgY2xhc3M9XCJmYSBmYS1lbnZlbG9wZS1vcGVuLW9cIi8+JyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBsYWJlbDogXCJOb2RlSWRcIiwgdmFsdWU6IFwiblwiLCBpY29uOiAnPGkgY2xhc3M9XCJmYSBmYS10YWdcIi8+MSAmbmJzcDsgJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IGxhYmVsOiBcIkFsaWFzZWQgTm9kZUlkXCIsIHZhbHVlOiBcIm5hXCIsIGljb246ICc8aSBjbGFzcz1cImZhIGZhLWJvb2ttYXJrXCIvPiZuYnNwOyAnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbGFiZWw6IFwiTm9kZUlkIHdpdGggbmFtZXNwYWNlIFVyblwiLCB2YWx1ZTogXCJuc3VcIiwgaWNvbjogJzxpIGNsYXNzPVwiZmEgZmEtaWQtY2FyZFwiLz4mbmJzcDsgJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IGxhYmVsOiBcIkJyb3dzZVBhdGhcIiwgdmFsdWU6IFwiYlwiLCBpY29uOiAnPGkgY2xhc3M9XCJmYSBmYS10YWdcIi8+PGkgY2xhc3M9XCJmYSBmYS1maWdodGVyLWpldFwiLz4mbmJzcDsnIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsOiBcIkFsaWFzZWQgQnJvd3NlIFBhdGhcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBcImFiXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICBpY29uOiAnPGkgY2xhc3M9XCJmYSBmYS1ib29rbWFya1wiLz48aSBjbGFzcz1cImZhIGZhLWZpZ2h0ZXItamV0XCIvPiZuYnNwOycsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgXTtcbiAgICAgICAgICAgICAgICBjb25zdCBhID0gZmlndXJlT3V0TWVuVUl0ZW1WYWx1ZSh0aGF0LiRpbnB1dC52YWwoKSk7XG4gICAgICAgICAgICAgICAgY29uc3QgZSA9IHR5cGVMaXN0LmZpbmQoKHgpID0+IHgudmFsdWUgPT09IGEpO1xuICAgICAgICAgICAgICAgIHRoYXQuJHNlbGVjdExhYmVsLmVtcHR5KCkuYXBwZW5kKGA8c3BhbiB0aXRsZT0keyhlID09PSBudWxsIHx8IGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGUudGl0bGUpIHx8IFwiXCJ9PiZuYnNwOyAkeyhlID09PSBudWxsIHx8IGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGUuaWNvbikgfHwgXCJcIn08L3NwYW4+YCk7XG4gICAgICAgICAgICAgICAgdGhhdC5zZWxlY3RlZE1lbnVJdGVtID0gYTtcbiAgICAgICAgICAgICAgICBjb25zdCB0dCA9IHRoaXM7XG4gICAgICAgICAgICAgICAgdGhhdC4kbWVudSA9IHRoaXMuX2NyZWF0ZU1lbnUodHlwZUxpc3QsIHt9LCAodikgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBtb2RlID0gdG9Nb2RlKHYpO1xuICAgICAgICAgICAgICAgICAgICBpZiAobW9kZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gb24gTWVudSBzZWxlY3RlZCAhXG4gICAgICAgICAgICAgICAgICAgICAgICB0dC52ZXJpZnkobW9kZSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZSA9IHR5cGVMaXN0LmZpbmQoKHgpID0+IHgudmFsdWUgPT09IHYpO1xuICAgICAgICAgICAgICAgICAgICB0aGF0LnNlbGVjdGVkTWVudUl0ZW0gPSB2O1xuICAgICAgICAgICAgICAgICAgICB0aGF0LiRzZWxlY3RMYWJlbC5lbXB0eSgpLmFwcGVuZChgPHNwYW4gdGl0bGU9JHsoZSA9PT0gbnVsbCB8fCBlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBlLnRpdGxlKSB8fCBcIlwifT4mbmJzcDsgJHsoZSA9PT0gbnVsbCB8fCBlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBlLmljb24pIHx8IFwiXCJ9PC9zcGFuPmApO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIHRoYXQuJG1lbnUuYXBwZW5kVG8oZG9jdW1lbnQuYm9keSk7XG4gICAgICAgICAgICAgICAgdGhhdC4kbWVudS5oaWRlKCk7XG4gICAgICAgICAgICAgICAgdGhhdC4kc2VsZWN0VHJpZ2dlci5zaG93KCk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgbW9kZSgpIHtcbiAgICAgICAgICAgICAgICBjb25zdCB0aGF0ID0gdGhpcztcbiAgICAgICAgICAgICAgICByZXR1cm4gdG9Nb2RlKHRoYXQuc2VsZWN0ZWRNZW51SXRlbSk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgc2V0TW9kZShtb2RlKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgdGhhdCA9IHRoaXM7XG4gICAgICAgICAgICAgICAgY29uc3QgcyA9IGZyb21Nb2RlKG1vZGUpO1xuICAgICAgICAgICAgICAgIHRoYXQuc2VsZWN0ZWRNZW51SXRlbSA9IHM7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgX2NyZWF0ZSgpIHtcbiAgICAgICAgICAgICAgICAvLyBkZWJ1Z2dlcjtcbiAgICAgICAgICAgICAgICBjb25zdCB0aGF0ID0gdGhpcztcbiAgICAgICAgICAgICAgICB0aGF0LiRpbnB1dCA9IHRoaXMuZWxlbWVudDtcbiAgICAgICAgICAgICAgICB0aGF0LiRpbnB1dC5jc3MoXCJib3JkZXJcIiwgXCJub25lXCIpO1xuICAgICAgICAgICAgICAgIC8vIHRoYXQuJGlucHV0LmFkZENsYXNzKFwicmVkLXVpLXR5cGVkSW5wdXRcIik7XG4gICAgICAgICAgICAgICAgdGhhdC4kZWxlbWVudERpdiA9IHRoYXQuJGlucHV0LndyYXAoXCI8ZGl2PlwiKS5wYXJlbnQoKS5hZGRDbGFzcyhcIm1haW4td3JhcHBlclwiKTtcbiAgICAgICAgICAgICAgICAvLyAjcmVnaW9uIENvbWJvIGJyb3dzZXJcbiAgICAgICAgICAgICAgICB0aGF0LiRjb21ibyA9ICQoXCI8ZGl2Lz5cIik7XG4gICAgICAgICAgICAgICAgdGhhdC4kY29tYm8uYWRkQ2xhc3MoXCJzdGVyZml2ZS1jb21iby1ib3hcIik7XG4gICAgICAgICAgICAgICAgLy8gdGhhdC4kY29tYm8uYWRkQ2xhc3MoXCJyZWQtdWktdHlwZWRJbnB1dC1pbnB1dC13cmFwXCIpO1xuICAgICAgICAgICAgICAgIHRoYXQuJGlucHV0LnJlcGxhY2VXaXRoKHRoYXQuJGNvbWJvKTtcbiAgICAgICAgICAgICAgICB0aGF0LiRpbnB1dEdyb3VwID0gJChcIjxkaXYvPlwiKS5hZGRDbGFzcyhcInN0ZXJmaXZlLWlucHV0LWdyb3VwXCIpO1xuICAgICAgICAgICAgICAgIHRoYXQuJGNvbWJvLmFwcGVuZCh0aGF0LiRpbnB1dEdyb3VwKTtcbiAgICAgICAgICAgICAgICB0aGF0LiRpbnB1dEdyb3VwLmFwcGVuZCh0aGF0LiRpbnB1dCk7XG4gICAgICAgICAgICAgICAgLy8gI2VuZHJlZ2lvblxuICAgICAgICAgICAgICAgIC8vICNyZWdpb24gYWRkIGJ1dHRvbiBvbiB0aGUgcmlnaHQgc2lkZVxuICAgICAgICAgICAgICAgIC8vICNyZWdpb24gdG9nZ2xlVHJlZUJ0blxuICAgICAgICAgICAgICAgIHRoYXQuJHRvZ2dsZVRyZWVCdG4gPSAkKGA8YnV0dG9uIHRpdGxlPVwib3BlbiBPUENVQSBBZGRyZXNzU3BhY2UgQnJvd3NlclwiPjxpIGNsYXNzPVwiZmEgZmEtc2l0ZW1hcFwiPjwvaT48L2J1dHRvbj5gKTtcbiAgICAgICAgICAgICAgICB0aGF0LiRpbnB1dC5hZnRlcih0aGF0LiR0b2dnbGVUcmVlQnRuKTtcbiAgICAgICAgICAgICAgICB0aGF0LiR0b2dnbGVUcmVlQnRuLm9uKFwiY2xpY2tcIiwgZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gX19hd2FpdGVyKHRoaXMsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdmFyIF9hO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IG5lZWRUb1JlYWNoU2VsZWN0aW9uID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgcGFyZW50Tm9kZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghdGhhdC4kZHJvcGRvd24uaXMoXCI6dmlzaWJsZVwiKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuJGluZm8uaGlkZSgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRyZWUgd2lkZ2V0IGlzIGdvaW5nIHRvIGJlY29tZSB2aXNpYmxlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFyZW50Tm9kZSA9IHlpZWxkIHRoYXQucmVzb2x2ZVBhcmVudE5vZGUoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocGFyZW50Tm9kZSAhPT0gdGhhdC5jdXJyZW50UGFyZW50IHx8ICgoX2EgPSB0aGF0LmN1cnJlbnRQYXJlbnQpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5ub2RlSWQpICE9PSBwYXJlbnROb2RlLm5vZGVJZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB5aWVsZCB0aGF0LnJlc2V0KCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5lZWRUb1JlYWNoU2VsZWN0aW9uID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuJGRyb3Bkb3duLnRvZ2dsZSgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgbmVlZFRvUmVhY2hTZWxlY3Rpb24gJiYgKHlpZWxkIHJlYWNoU2VsZWN0aW9uKHRoYXQsIHBhcmVudE5vZGUpKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgLy8gI2VuZHJlZ2lvblxuICAgICAgICAgICAgICAgIC8vICNyZWdpb24gdmVyaWZ5QnRuXG4gICAgICAgICAgICAgICAgdGhhdC4kdmVyaWZ5QnRuID0gJChgPGJ1dHRvbiB0aXRsZT1cInZlcmlmeSBub2RlSWQgb3IgYnJvd3NlUGF0aFwiPjxpIGNsYXNzPVwiZmEgZmEtcmVmcmVzaFwiPjwvaT48L2J1dHRvbj5gKTtcbiAgICAgICAgICAgICAgICB0aGF0LiRpbnB1dC5hZnRlcih0aGF0LiR2ZXJpZnlCdG4pO1xuICAgICAgICAgICAgICAgIHRoYXQuJHZlcmlmeUJ0bi5vbihcImNsaWNrXCIsICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgbW9kZSA9IHRoYXQubW9kZSgpO1xuICAgICAgICAgICAgICAgICAgICBpZiAoIW1vZGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB0aGlzLnZlcmlmeShtb2RlKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAvLyAjZW5kcmVnaW9uXG4gICAgICAgICAgICAgICAgLy8gI2VuZHJlZ2lvblxuICAgICAgICAgICAgICAgIGNvbnN0IG5vcm1hbGl6ZUlucHV0ID0gKGlucHV0KSA9PiBfX2F3YWl0ZXIodGhpcywgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKiAoKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHRoYXQgPSB0aGlzO1xuICAgICAgICAgICAgICAgICAgICBsZXQgbW9kZSA9IHRoYXQubW9kZSgpO1xuICAgICAgICAgICAgICAgICAgICBpZiAoIW1vZGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAvLyBGZXRjaCBuZXcgZGF0YSBmb3IgdGhpcyBub2RlXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGNvbm5lY3Rpb25EYXRhID0gbWFrZUNvbm5lY3Rpb24odGhhdCk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHsgZGF0YSwganNvbiB9ID0geWllbGQgX2NhbGxDaGVja05vZGVJZChjb25uZWN0aW9uRGF0YSwgaW5wdXQpO1xuICAgICAgICAgICAgICAgICAgICBpZiAoZGF0YS5zdGF0dXMgIT09IDIwMCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGlmIChqc29uLnN0YXR1c0NvZGUubWF0Y2goL0dvb2QvKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc2VsZWN0ZWROb2RlSWQgPSBjaG9vc2VOb2RlSWQoanNvbiwgbW9kZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGF0LiRpbnB1dC52YWwoc2VsZWN0ZWROb2RlSWQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC4kaW5wdXQudHJpZ2dlcihcImNoYW5nZVwiKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICAgICAgICAgIC8vIGNyZWF0ZSB0aGUgcHJlcGVuZGVkIGJ1dHRvblxuICAgICAgICAgICAgICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgdGhhdC4kdWlTZWxlY3QgPSAkKFwiPGRpdj5cIik7XG4gICAgICAgICAgICAgICAgICAgIHRoYXQuJGlucHV0LmJlZm9yZSh0aGF0LiR1aVNlbGVjdCk7XG4gICAgICAgICAgICAgICAgICAgIHRoYXQuJHNlbGVjdFRyaWdnZXIgPSAkKCc8YnV0dG9uIHR5cGU9XCJidXR0b25cIiB0YWJpbmRleD1cIjBcIj48L2J1dHRvbj4nKS5wcmVwZW5kVG8odGhhdC4kdWlTZWxlY3QpO1xuICAgICAgICAgICAgICAgICAgICAkKCc8aSBjbGFzcz1cInJlZC11aS10eXBlZElucHV0LWljb24gZmEgZmEtY2FyZXQtZG93blwiPjwvaT4nKS50b2dnbGUodHJ1ZSkuYXBwZW5kVG8odGhhdC4kc2VsZWN0VHJpZ2dlcik7XG4gICAgICAgICAgICAgICAgICAgIHRoYXQuJHNlbGVjdFRyaWdnZXIub24oXCJjbGlja1wiLCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuX3Nob3dUeXBlTWVudSgpO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgdGhhdC4kc2VsZWN0VHJpZ2dlclxuICAgICAgICAgICAgICAgICAgICAgICAgLm9uKFwia2V5ZG93blwiLCBmdW5jdGlvbiAoZXZ0KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoZXZ0LmtleUNvZGUgPT09IDQwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gRG93blxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuX3Nob3dUeXBlTWVudSgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgZXZ0LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgLm9uKFwiZm9jdXNcIiwgZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC4kdWlTZWxlY3QuYWRkQ2xhc3MoXCJyZWQtdWktdHlwZWRJbnB1dC1mb2N1c1wiKTtcbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICAgIC5vbihcImJsdXJcIiwgZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gdmFyIG9wdCA9IHRoYXQudHlwZU1hcFt0aGF0LnByb3BlcnR5VHlwZV07XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBpZiAob3B0Lmhhc1ZhbHVlID09PSBmYWxzZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC4kdWlTZWxlY3QucmVtb3ZlQ2xhc3MoXCJyZWQtdWktdHlwZWRJbnB1dC1mb2N1c1wiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIH1cbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIHRoYXQuJHNlbGVjdExhYmVsID0gJCgnPHNwYW4gY2xhc3M9XCJyZWQtdWktdHlwZWRJbnB1dC10eXBlLWxhYmVsXCI+PC9zcGFuPicpLmFwcGVuZFRvKHRoYXQuJHNlbGVjdFRyaWdnZXIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0aGlzLl9pbml0TWVudSgpO1xuICAgICAgICAgICAgICAgIGlmICghdGhhdC4kaW5wdXQuYXR0cihcInBsYWNlaG9sZGVyXCIpKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoYXQuJGlucHV0LmF0dHIoXCJwbGFjZWhvbGRlclwiLCBcImVudGVyIGEgbm9kZUlkIG9yIGEgYnJvd3NlUGF0aCBcIik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8vICNyZWdpb24gdGVtcG9yYXR5IGluZm8gcGFuZWxcbiAgICAgICAgICAgICAgICB0aGF0LiRpbmZvID0gJChgPGRpdiBjbGFzcz1cInN0ZXJmaXZlLWluZm8tdGV4dFwiPjwvZGl2PmApO1xuICAgICAgICAgICAgICAgIHRoYXQuJGluZm8uaGlkZSgpO1xuICAgICAgICAgICAgICAgIHRoYXQuJGNvbWJvLmFwcGVuZCh0aGF0LiRpbmZvKTtcbiAgICAgICAgICAgICAgICAvLyAjZW5kcmVnaW9uXG4gICAgICAgICAgICAgICAgLy8gI3JlZ2lvbiBkcm9wIGRvd24gdHJlZVxuICAgICAgICAgICAgICAgIHRoYXQuJGRyb3Bkb3duID0gJChcIjxkaXYvPlwiKS5hZGRDbGFzcyhcInN0ZXJmaXZlLWRyb3Bkb3duXCIpLmhpZGUoKS5hcHBlbmRUbyh0aGF0LiRjb21ibyk7XG4gICAgICAgICAgICAgICAgdGhhdC4kdHJlZSA9ICQoYDx1bCBjbGFzcz1cInN0ZXJmaXZlLXRyZWVcIj48L3VsPmApLmFwcGVuZFRvKHRoYXQuJGRyb3Bkb3duKTtcbiAgICAgICAgICAgICAgICAvLyB0aGF0LiRkcm9wZG93bi5zaG93KCk7XG4gICAgICAgICAgICAgICAgdGhpcy5yZXNldCgpO1xuICAgICAgICAgICAgICAgIC8vICNlbmRyZWdpb25cbiAgICAgICAgICAgICAgICBjb25zdCBpc09uTGVmdFNpemUgPSAoJGxpLCBldmVudCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBiZWZvcmVXaWR0aCA9IDIwOyAvLyBTZXQgd2lkdGggb2YgdGhlIDo6YmVmb3JlIGNvbnRlbnRcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgYmVmb3JlSGVpZ2h0ID0gMjA7IC8vIFNldCBoZWlnaHQgb2YgdGhlIDo6YmVmb3JlIGNvbnRlbnRcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZWxlbWVudFBvcyA9ICRsaS5vZmZzZXQoKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZSA9IGV2ZW50O1xuICAgICAgICAgICAgICAgICAgICBpZiAoZS5wYWdlWCA+PSBlbGVtZW50UG9zLmxlZnQgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgIGUucGFnZVggPD0gZWxlbWVudFBvcy5sZWZ0ICsgYmVmb3JlV2lkdGggJiZcbiAgICAgICAgICAgICAgICAgICAgICAgIGUucGFnZVkgPj0gZWxlbWVudFBvcy50b3AgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgIGUucGFnZVkgPD0gZWxlbWVudFBvcy50b3AgKyBiZWZvcmVIZWlnaHQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIGNvbnN0IHRvZ2dsZUV4cGFuc2lvbiA9ICgkbGkpID0+IF9fYXdhaXRlcih0aGlzLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24qICgpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCRsaS5oYXNDbGFzcyhcImV4cGFuZGFibGVcIikpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIF9leHBhbmRMaSh0aGF0LCAkbGkpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKCRsaS5oYXNDbGFzcyhcImV4cGFuZGVkXCIpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBUb2dnbGUgaXRzIGV4cGFuZGVkL2NvbGxhcHNlZCBzdGF0ZVxuICAgICAgICAgICAgICAgICAgICAgICAgJGxpLmNoaWxkcmVuKFwidWxcIikudG9nZ2xlKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBTd2FwIGV4cGFuZGFibGUgYW5kIGV4cGFuZGVkIGNsYXNzZXNcbiAgICAgICAgICAgICAgICAgICAgICAgICRsaS50b2dnbGVDbGFzcyhcImV4cGFuZGFibGUgZXhwYW5kZWRcIik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoJGxpLmNoaWxkcmVuKFwidWxcIikuY2hpbGRyZW4oKS5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAkbGkuY2hpbGRyZW4oXCJ1bFwiKS50b2dnbGUoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIFN3YXAgZXhwYW5kYWJsZSBhbmQgZXhwYW5kZWQgY2xhc3Nlc1xuICAgICAgICAgICAgICAgICAgICAgICAgJGxpLnRvZ2dsZUNsYXNzKFwiZXhwYW5kYWJsZSBleHBhbmRlZFwiKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIDtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB0aGF0LiR0cmVlLm9uKFwiZGJsY2xpY2tcIiwgXCJsaVwiLCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgdmFyIF9hLCBfYjtcbiAgICAgICAgICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICAgICAgICAgIGxldCAkbGkgPSAkKHRoaXMpO1xuICAgICAgICAgICAgICAgICAgICBpZiAoaXNPbkxlZnRTaXplKCRsaSwgZXZlbnQpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b2dnbGVFeHBhbnNpb24oJGxpKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gJGxpLmRhdGEoXCJ2YWx1ZVwiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlZmVyZW5jZSA9ICRsaS5kYXRhKFwicmVmZXJlbmNlXCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRoYXQub3B0aW9ucy5pc1NlbGVjdGFibGUgJiYgIXRoYXQub3B0aW9ucy5pc1NlbGVjdGFibGUocmVmZXJlbmNlKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuJGlucHV0LmRhdGEoXCJyZWZlcmVuY2VcIiwgcmVmZXJlbmNlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICgoX2EgPSByZWZlcmVuY2UuZGlzcGxheU5hbWUpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS50ZXh0KSB8fCAoKF9iID0gcmVmZXJlbmNlLmJyb3dzZU5hbWUpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5uYW1lKSB8fCByZWZlcmVuY2Uubm9kZUlkLnRvU3RyaW5nKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBjb25zdCBpbnB1dCA9IGBbJHtkaXNwbGF5TmFtZX1dKCR7dmFsdWV9KWA7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgbW9kZSA9IHRoYXQubW9kZSgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFtb2RlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbW9kZSA9IFwibm9kZUlkXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5zZXRNb2RlKG1vZGUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgbm9ybWFsaXplSW5wdXQodmFsdWUpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRoYXQuJGlucHV0LnZhbChpbnB1dCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gdGhhdC4kaW5wdXQudHJpZ2dlcihcImNoYW5nZVwiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGF0LiRkcm9wZG93bi5oaWRlKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5jYXRjaCgoZXJyKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gdGhhdC4kaW5wdXQudmFsKGlucHV0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB0aGF0LiRpbnB1dC50cmlnZ2VyKFwiY2hhbmdlXCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuJGRyb3Bkb3duLmhpZGUoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgdGhhdC4kdHJlZS5vbihcImNsaWNrXCIsIFwibGlcIiwgZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgICAgICAgICBsZXQgJGxpID0gJCh0aGlzKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGlzT25MZWZ0U2l6ZSgkbGksIGV2ZW50KSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9nZ2xlRXhwYW5zaW9uKCRsaSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgc2VsZWN0U2luZ2xlKHRoYXQsICRsaSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgJChkb2N1bWVudCkub24oXCJjbGlja1wiLCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gY2xpY2tpbmcgb3V0c2lkZSB0aGUgcGFnZSB3aWxsIGhpZGUgdGhlIGRyb3Bkb3duXG4gICAgICAgICAgICAgICAgICAgIGlmICghJChldmVudC50YXJnZXQpLmNsb3Nlc3QodGhhdC4kY29tYm8pLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC4kZHJvcGRvd24uaGlkZSgpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9LFxuICAgICAgICB9KTtcbiAgICB9O1xuXG4gICAgLyoqXG4gICAgICpcbiAgICAgKiBAcmV0dXJucyB0aGUgZW5kcG9pbnQgYXR0cmlidXRlcyBjb250YWluaW5nOlxuICAgICAqICAtIHRoZSBlbmRwb2ludCwgc2VjdXJpdHlNb2RlLCBzZWN1cml0eVBvbGljeSxcbiAgICAgKiAgLSB1c2VySWRlbnRpdHlUeXBlLFxuICAgICAqICAtIGNyZWRlbnRpYWxzXG4gICAgICogIC0gbmFtZXNwYWNlQWxpYXNlc1xuICAgICAqXG4gICAgICogZXh0cmFjdGVkIGZyb20gdGhlIHVpIHdpZGdldCAjbm9kZS1pbnB1dC1lbmRwb2ludFxuICAgICAqL1xuICAgIGNvbnN0IGdldEVuZFBvaW50QXR0cmlidXRlcyA9ICgpID0+IHtcbiAgICAgICAgY29uc3QgJGVuZHBvaW50ID0gJChcIiNub2RlLWlucHV0LWVuZHBvaW50XCIpO1xuICAgICAgICBjb25zdCBlbmRwb2ludElkID0gJGVuZHBvaW50LnZhbCgpO1xuICAgICAgICBjb25zdCByZWROb2RlID0gUkVELm5vZGVzLm5vZGUoZW5kcG9pbnRJZCk7XG4gICAgICAgIGlmICghcmVkTm9kZSlcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIC8vIGNvbnN0IGNyZWRlbnRpYWxzID0gUkVELihlbmRwb2ludElkKTtcbiAgICAgICAgLy8gd2UgbmVlZCB0byBzYW5pdGl6ZSBhbmQgZXh0cmFjdCB0aGUgZW5kcG9pbnQgYXR0cmlidXRlcyBvbmx5ICggbm90IHRoZSBub2RlLXJlZCBzdHVmZilcbiAgICAgICAgY29uc3QgeyBlbmRwb2ludCwgc2VjdXJpdHlNb2RlLCBzZWN1cml0eVBvbGljeSwgdXNlcklkZW50aXR5VHlwZSwgY3JlZGVudGlhbHMsIG5hbWVzcGFjZUFsaWFzZXMgfSA9IHJlZE5vZGU7XG4gICAgICAgIGNvbnN0IHJldFZhbHVlID0ge1xuICAgICAgICAgICAgZW5kcG9pbnQsXG4gICAgICAgICAgICBzZWN1cml0eU1vZGUsXG4gICAgICAgICAgICBzZWN1cml0eVBvbGljeSxcbiAgICAgICAgICAgIHVzZXJJZGVudGl0eVR5cGUsXG4gICAgICAgICAgICBjcmVkZW50aWFscyxcbiAgICAgICAgICAgIG5hbWVzcGFjZUFsaWFzZXMsXG4gICAgICAgIH07XG4gICAgICAgIHJldHVybiByZXRWYWx1ZTtcbiAgICB9O1xuICAgIGNvbnN0IGdldEVuZHBvaW50UGFyYW1ldGVycyA9ICgpID0+IHtcbiAgICAgICAgY29uc3QgJGVuZHBvaW50ID0gJChcIiNub2RlLWlucHV0LWVuZHBvaW50XCIpO1xuICAgICAgICBjb25zdCBlbmRwb2ludElkID0gJGVuZHBvaW50LnZhbCgpO1xuICAgICAgICBjb25zdCBlbmRwb2ludE5yID0gZ2V0RW5kUG9pbnRBdHRyaWJ1dGVzKCk7XG4gICAgICAgIGlmICghZW5kcG9pbnROcikge1xuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBuYW1lc3BhY2VBbGlhc2VzID0gZW5kcG9pbnROci5uYW1lc3BhY2VBbGlhc2VzO1xuICAgICAgICByZXR1cm4gT2JqZWN0LmFzc2lnbih7IG5hbWVzcGFjZUFsaWFzZXMsIGlkOiBlbmRwb2ludElkIH0sIGVuZHBvaW50TnIpO1xuICAgIH07XG4gICAgY29uc3QgZ2V0RW5kcG9pbnRQYXJhbWV0ZXJzSGFuZGxlciA9ICgpID0+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGVuZHBvaW50Tm9kZTogZ2V0RW5kcG9pbnRQYXJhbWV0ZXJzLFxuICAgICAgICB9O1xuICAgIH07XG5cbiAgICBjb25zdCBpbnN0YWxsRmVlZGJhY2tXaWRnZXQgPSAoKSA9PiB7XG4gICAgICAgIC8vIHJldHVybjtcbiAgICAgICAgLy8gZGVidWdnZXI7XG4gICAgICAgIGNvbnN0IHRyYXlDb250ZW50ID0gJChcIi5yZWQtdWktdHJheS1ib2R5XCIpO1xuICAgICAgICBjb25zb2xlLmxvZyhcImluc3RhbGxGZWVkYmFja1dpZGdldCBcIiwgdHJheUNvbnRlbnQubGVuZ3RoKTtcbiAgICAgICAgaWYgKHRyYXlDb250ZW50Lmxlbmd0aCkge1xuICAgICAgICAgICAgY29uc29sZS5sb2coXCJpbnN0YWxsaW5nIGlmcmFtZVwiKTtcbiAgICAgICAgICAgIC8vIENyZWF0ZSB0aGUgaWZyYW1lIGVsZW1lbnRcbiAgICAgICAgICAgIGNvbnN0IGlmcmFtZSA9ICQoXCI8aWZyYW1lPjwvaWZyYW1lPlwiLCB7XG4gICAgICAgICAgICAgICAgc3JjOiBcIi9vcGN1YS1mb3Itbm9kZS1yZWQvc3VwcG9ydC1mcmFtZS5odG1sXCIsXG4gICAgICAgICAgICAgICAgc2Nyb2xsaW5nOiBcIm5vXCIsXG4gICAgICAgICAgICAgICAgc3R5bGU6IFwiYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtvdmVyZmxvdzpoaWRkZW47Ym9yZGVyOjNweFwiLFxuICAgICAgICAgICAgICAgIGFsbG93dHJhbnNwYXJlbmN5OiBcInRydWVcIixcbiAgICAgICAgICAgICAgICB3aWR0aDogXCIxODBweFwiLFxuICAgICAgICAgICAgICAgIGhlaWdodDogXCIzMHB4XCIsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIC8vIEFwcGVuZCB0aGUgaWZyYW1lIHRvIHRoZSBmZWVkYmFjayBlbGVtZW50XG4gICAgICAgICAgICB0cmF5Q29udGVudC5hcHBlbmQoaWZyYW1lKTtcbiAgICAgICAgICAgIC8vIFBvc2l0aW9uIHRoZSBmZWVkYmFjayBlbGVtZW50IGF0IHRoZSBib3R0b20gcmlnaHQgb2YgdGhlIHRyYXkgY29udGVudFxuICAgICAgICAgICAgaWZyYW1lLmNzcyh7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IFwiYWJzb2x1dGVcIixcbiAgICAgICAgICAgICAgICByaWdodDogXCIyMHB4XCIsXG4gICAgICAgICAgICAgICAgYm90dG9tOiBcIjE2cHhcIixcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfTtcblxuICAgIFJFRC5ub2Rlcy5yZWdpc3RlclR5cGUoXCJPcGNVYS1DbGllbnQyLUhpc3RvcnlSZWFkXCIsIHtcbiAgICAgICAgY2F0ZWdvcnk6IFwib3BjdWFcIixcbiAgICAgICAgY29sb3I6IFwiI0MwREVFRFwiLFxuICAgICAgICBhbGlnbjogXCJyaWdodFwiLFxuICAgICAgICBpY29uOiBcIi4uLy4uL2ljb25zL29wY3Vhbm9kZUxvZ28ucG5nXCIsXG4gICAgICAgIHBhbGV0dGVMYWJlbDogXCJyZWFkLWhpc3RvcnlcIixcbiAgICAgICAgZGVmYXVsdHM6IHtcbiAgICAgICAgICAgIGlucHV0czogeyB2YWx1ZTogMSB9LFxuICAgICAgICAgICAgb3V0cHV0OiB7IHZhbHVlOiA0IH0sXG4gICAgICAgICAgICAvLyBDb21tb25cbiAgICAgICAgICAgIG5hbWU6IHsgdmFsdWU6IFwiXCIgfSxcbiAgICAgICAgICAgIGVuZHBvaW50OiB7IHZhbHVlOiBcIlwiLCByZXF1aXJlZDogdHJ1ZSwgdHlwZTogXCJPcGNVYS1FbmRwb2ludDJcIiB9LFxuICAgICAgICAgICAgaGlzdG9yeVJlYWRQYXJhbToge1xuICAgICAgICAgICAgICAgIHZhbHVlOiB7XG4gICAgICAgICAgICAgICAgICAgIHR5cGU6IFwicmF3XCIsXG4gICAgICAgICAgICAgICAgICAgIGVuZFRpbWU6IFwiMW0gYWdvXCIsXG4gICAgICAgICAgICAgICAgICAgIHN0YXJ0VGltZTogXCIxMW0gYWdvXCIsXG4gICAgICAgICAgICAgICAgICAgIG51bVZhbHVlc1Blck5vZGU6IDEwMCxcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuQm91bmRzOiB0cnVlLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgdmFsaWRhdGU6ICh2YWwpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHZhbCA9PT0gXCJcIilcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAvLyBmb3IgYWN0aW9uIHJlYWQgSGlzdG9yeVxuICAgICAgICAgICAgbm9kZUlkOiB7IHZhbHVlOiBcIlwiLCByZXF1aXJlZDogZmFsc2UgfSxcbiAgICAgICAgICAgIG91dHB1dFR5cGU6IHsgdmFsdWU6IFwiVmFsdWVcIiwgcmVxdWlyZWQ6IHRydWUgfSxcbiAgICAgICAgfSxcbiAgICAgICAgLy8gaW5wdXRzOixcbiAgICAgICAgb3V0cHV0czogMiwgLy8gMiBvdXRwdXQsIHNlY29uZCBmb3IgcmF3IG5vZGUtb3BjdWEgZGlhZ25vc3RpY3Mgb3IgbW9yZSBjb21wbGV0ZSBtZXNzYWdlXG4gICAgICAgIGxhYmVsKCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMubmFtZSB8fCBcIk9QQ1VBIENsaWVudCBIaXN0b3J5UmVhZFwiO1xuICAgICAgICB9LFxuICAgICAgICBsYWJlbFN0eWxlKCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMubmFtZSA/IFwibm9kZV9sYWJlbF9pdGFsaWNcIiA6IFwiXCI7XG4gICAgICAgIH0sXG4gICAgICAgIG9uZWRpdHByZXBhcmUoKSB7XG4gICAgICAgICAgICBjb25zdCBub2RlID0gdGhpcztcbiAgICAgICAgICAgIGRlY2xhcmVOb2RlQnJvd3NlcldpZGdldCgpO1xuICAgICAgICAgICAgaW5zdGFsbEZlZWRiYWNrV2lkZ2V0KCk7XG4gICAgICAgICAgICBub2RlLmlucHV0cyA9IDE7XG4gICAgICAgICAgICBjb25zdCAkbm9kZUlkID0gJChcIiNub2RlLWlucHV0LW5vZGVJZFwiKTtcbiAgICAgICAgICAgICRub2RlSWQubm9kZUJyb3dzZXIoT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCBnZXRFbmRwb2ludFBhcmFtZXRlcnNIYW5kbGVyKCkpLCB7IGlzU2VsZWN0YWJsZShub2RlRGVzYykge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gbm9kZURlc2Mubm9kZUNsYXNzID09PSBcIlZhcmlhYmxlXCI7XG4gICAgICAgICAgICAgICAgfSB9KSk7XG4gICAgICAgICAgICAkKFwiI3NlbGVjdC1oaXN0b3J5LXR5cGVcIikudmFsKG5vZGUuaGlzdG9yeVJlYWRQYXJhbS50eXBlKTtcbiAgICAgICAgICAgIHN3aXRjaCAobm9kZS5oaXN0b3J5UmVhZFBhcmFtLnR5cGUpIHtcbiAgICAgICAgICAgICAgICBjYXNlIFwicmF3XCI6XG4gICAgICAgICAgICAgICAgICAgICQoXCIjbm9kZS1pbnB1dC1yYXctc3RhcnRUaW1lXCIpLnZhbChub2RlLmhpc3RvcnlSZWFkUGFyYW0uc3RhcnRUaW1lKTtcbiAgICAgICAgICAgICAgICAgICAgJChcIiNub2RlLWlucHV0LXJhdy1lbmRUaW1lXCIpLnZhbChub2RlLmhpc3RvcnlSZWFkUGFyYW0uZW5kVGltZSk7XG4gICAgICAgICAgICAgICAgICAgICQoXCIjbm9kZS1pbnB1dC1yYXctbnVtVmFsdWVzUGVyTm9kZVwiKS52YWwobm9kZS5oaXN0b3J5UmVhZFBhcmFtLm51bVZhbHVlc1Blck5vZGUpO1xuICAgICAgICAgICAgICAgICAgICAkKFwiI25vZGUtaW5wdXQtcmV0dXJuQm91bmRzXCIpLnByb3AoXCJjaGVja2VkXCIsIG5vZGUuaGlzdG9yeVJlYWRQYXJhbS5yZXR1cm5Cb3VuZHMpO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlIFwibW9kaWZpZWRcIjpcbiAgICAgICAgICAgICAgICAgICAgJChcIiNub2RlLWlucHV0LW1vZGlmaWVkLXN0YXJ0VGltZVwiKS52YWwobm9kZS5oaXN0b3J5UmVhZFBhcmFtLnN0YXJ0VGltZSk7XG4gICAgICAgICAgICAgICAgICAgICQoXCIjbm9kZS1pbnB1dC1tb2RpZmllZC1lbmRUaW1lXCIpLnZhbChub2RlLmhpc3RvcnlSZWFkUGFyYW0uZW5kVGltZSk7XG4gICAgICAgICAgICAgICAgICAgICQoXCIjbm9kZS1pbnB1dC1tb2RpZmllZC1udW1WYWx1ZXNQZXJOb2RlXCIpLnZhbChub2RlLmhpc3RvcnlSZWFkUGFyYW0ubnVtVmFsdWVzUGVyTm9kZSk7XG4gICAgICAgICAgICAgICAgICAgICQoXCIjbm9kZS1pbnB1dC1tb2RpZmllZC1yZXR1cm5Cb3VuZHNcIikucHJvcChcImNoZWNrZWRcIiwgbm9kZS5oaXN0b3J5UmVhZFBhcmFtLnJldHVybkJvdW5kcyk7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgXCJwcm9jZXNzZWQtZGV0YWlsc1wiOlxuICAgICAgICAgICAgICAgICAgICBub2RlLmhpc3RvcnlSZWFkUGFyYW0uYWdncmVnYXRlQ29uZmlndXJhdGlvbiA9IG5vZGUuaGlzdG9yeVJlYWRQYXJhbS5hZ2dyZWdhdGVDb25maWd1cmF0aW9uIHx8IHt9O1xuICAgICAgICAgICAgICAgICAgICAkKFwiI25vZGUtaW5wdXQtcHJvY2Vzc2VkLWRldGFpbHMtc3RhcnRUaW1lXCIpLnZhbChub2RlLmhpc3RvcnlSZWFkUGFyYW0uc3RhcnRUaW1lKTtcbiAgICAgICAgICAgICAgICAgICAgJChcIiNub2RlLWlucHV0LXByb2Nlc3NlZC1kZXRhaWxzLWVuZFRpbWVcIikudmFsKG5vZGUuaGlzdG9yeVJlYWRQYXJhbS5lbmRUaW1lKTtcbiAgICAgICAgICAgICAgICAgICAgJChcIiNub2RlLWlucHV0LXByb2Nlc3NlZC1kZXRhaWxzLXByb2Nlc3NpbmdJbnRlcnZhbFwiKS52YWwobm9kZS5oaXN0b3J5UmVhZFBhcmFtLnByb2Nlc3NpbmdJbnRlcnZhbCk7XG4gICAgICAgICAgICAgICAgICAgICQoXCIjbm9kZS1pbnB1dC1wcm9jZXNzZWQtZGV0YWlscy1hZ2dyZWdhdGVUeXBlXCIpLnZhbChub2RlLmhpc3RvcnlSZWFkUGFyYW0uYWdncmVnYXRlVHlwZSk7XG4gICAgICAgICAgICAgICAgICAgICQoXCIjbm9kZS1pbnB1dC1wcm9jZXNzZWQtZGV0YWlscy1hZ2dyZWdhdGVDb25maWd1cmF0aW9uLXVzZVNlcnZlckNhcGFiaWxpdGllc0RlZmF1bHRzXCIpLnByb3AoXCJjaGVja2VkXCIsIG5vZGUuaGlzdG9yeVJlYWRQYXJhbS5hZ2dyZWdhdGVDb25maWd1cmF0aW9uLnVzZVNlcnZlckNhcGFiaWxpdGllc0RlZmF1bHRzKTtcbiAgICAgICAgICAgICAgICAgICAgJChcIiNub2RlLWlucHV0LXByb2Nlc3NlZC1kZXRhaWxzLWFnZ3JlZ2F0ZUNvbmZpZ3VyYXRpb24tdHJlYXRVbmNlcnRhaW5Bc0JhZFwiKS5wcm9wKFwiY2hlY2tlZFwiLCBub2RlLmhpc3RvcnlSZWFkUGFyYW0uYWdncmVnYXRlQ29uZmlndXJhdGlvbi50cmVhdFVuY2VydGFpbkFzQmFkKTtcbiAgICAgICAgICAgICAgICAgICAgJChcIiNub2RlLWlucHV0LXByb2Nlc3NlZC1kZXRhaWxzLWFnZ3JlZ2F0ZUNvbmZpZ3VyYXRpb24tcGVyY2VudERhdGFCYWRcIikudmFsKG5vZGUuaGlzdG9yeVJlYWRQYXJhbS5hZ2dyZWdhdGVDb25maWd1cmF0aW9uLnBlcmNlbnREYXRhQmFkKTtcbiAgICAgICAgICAgICAgICAgICAgJChcIiNub2RlLWlucHV0LXByb2Nlc3NlZC1kZXRhaWxzLWFnZ3JlZ2F0ZUNvbmZpZ3VyYXRpb24tcGVyY2VudERhdGFHb29kXCIpLnZhbChub2RlLmhpc3RvcnlSZWFkUGFyYW0uYWdncmVnYXRlQ29uZmlndXJhdGlvbi5wZXJjZW50RGF0YUdvb2QpO1xuICAgICAgICAgICAgICAgICAgICAkKFwiI25vZGUtaW5wdXQtcHJvY2Vzc2VkLWRldGFpbHMtYWdncmVnYXRlQ29uZmlndXJhdGlvbi11c2VTbG9wZWRFeHRyYXBvbGF0aW9uXCIpLnByb3AoXCJjaGVja2VkXCIsIG5vZGUuaGlzdG9yeVJlYWRQYXJhbS5hZ2dyZWdhdGVDb25maWd1cmF0aW9uLnVzZVNsb3BlZEV4dHJhcG9sYXRpb24pO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgICAgICAvLyBoYW5kbGUgYWR2YW5jZWQgY29udHJvbHNcbiAgICAgICAgICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZnVuY3Rpb24gaGlkZUFsbFNlY3Rpb24oKSB7XG4gICAgICAgICAgICAgICAgICAgICQoXCIjc2VjdGlvbi1yYXdcIikuaGlkZSgpO1xuICAgICAgICAgICAgICAgICAgICAkKFwiI3NlY3Rpb24tbW9kaWZpZWRcIikuaGlkZSgpO1xuICAgICAgICAgICAgICAgICAgICAkKFwiI3NlY3Rpb24tcHJvY2Vzc2VkLWRldGFpbHNcIikuaGlkZSgpO1xuICAgICAgICAgICAgICAgICAgICAkKFwiI3NlY3Rpb24tYXQtdGltZVwiKS5oaWRlKCk7XG4gICAgICAgICAgICAgICAgICAgICQoXCIjc2VjdGlvbi1hbm5vdGF0aW9uLWRhdGFcIikuaGlkZSgpO1xuICAgICAgICAgICAgICAgICAgICAkKFwiI3NlY3Rpb24tZXZlbnRcIikuaGlkZSgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBmdW5jdGlvbiB0b2dnbGVTZWN0aW9ucygpIHtcbiAgICAgICAgICAgICAgICAgICAgaGlkZUFsbFNlY3Rpb24oKTtcbiAgICAgICAgICAgICAgICAgICAgdmFyIHNlbGVjdGVkVmFsdWUgPSAkKFwiI3NlbGVjdC1oaXN0b3J5LXR5cGVcIikudmFsKCk7XG4gICAgICAgICAgICAgICAgICAgIC8vIGFsZXJ0KFwidG9nZ2xlU2VjdGlvbnMgXCIgKyBzZWxlY3RlZFZhbHVlKTtcbiAgICAgICAgICAgICAgICAgICAgJChcIiNzZWN0aW9uLVwiICsgc2VsZWN0ZWRWYWx1ZSkuc2hvdygpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAkKFwiI3NlbGVjdC1oaXN0b3J5LXR5cGVcIikub24oXCJjaGFuZ2VcIiwgdG9nZ2xlU2VjdGlvbnMpO1xuICAgICAgICAgICAgICAgIHRvZ2dsZVNlY3Rpb25zKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIG9uZWRpdHNhdmUoKSB7XG4gICAgICAgICAgICBjb25zdCB2YWx1ZUFzVGV4dCA9IChhKSA9PiAoYS52YWwoKSA9PSB1bmRlZmluZWQgPyBcIlwiIDogYS52YWwoKS50b1N0cmluZygpKTtcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlQXNOdW1iZXIgPSAoYSkgPT4gKGEudmFsKCkgPT0gdW5kZWZpbmVkID8gMCA6IGEudmFsKCkpO1xuICAgICAgICAgICAgY29uc3QgdHlwZSA9ICQoXCIjc2VsZWN0LWhpc3RvcnktdHlwZVwiKS52YWwoKTtcbiAgICAgICAgICAgIHN3aXRjaCAodHlwZSkge1xuICAgICAgICAgICAgICAgIGNhc2UgXCJyYXdcIjpcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5oaXN0b3J5UmVhZFBhcmFtID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogXCJyYXdcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0YXJ0VGltZTogdmFsdWVBc1RleHQoJChcIiNub2RlLWlucHV0LXJhdy1zdGFydFRpbWVcIikpLFxuICAgICAgICAgICAgICAgICAgICAgICAgZW5kVGltZTogdmFsdWVBc1RleHQoJChcIiNub2RlLWlucHV0LXJhdy1lbmRUaW1lXCIpKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIG51bVZhbHVlc1Blck5vZGU6IHZhbHVlQXNOdW1iZXIoJChcIiNub2RlLWlucHV0LXJhdy1udW1WYWx1ZXNQZXJOb2RlXCIpKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybkJvdW5kczogJChcIiNub2RlLWlucHV0LXJldHVybkJvdW5kc1wiKS5wcm9wKFwiY2hlY2tlZFwiKSxcbiAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSBcIm1vZGlmaWVkXCI6XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaGlzdG9yeVJlYWRQYXJhbSA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IFwibW9kaWZpZWRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0YXJ0VGltZTogdmFsdWVBc1RleHQoJChcIiNub2RlLWlucHV0LW1vZGlmaWVkLXN0YXJ0VGltZVwiKSksXG4gICAgICAgICAgICAgICAgICAgICAgICBlbmRUaW1lOiB2YWx1ZUFzVGV4dCgkKFwiI25vZGUtaW5wdXQtbW9kaWZpZWQtZW5kVGltZVwiKSksXG4gICAgICAgICAgICAgICAgICAgICAgICBudW1WYWx1ZXNQZXJOb2RlOiB2YWx1ZUFzTnVtYmVyKCQoXCIjbm9kZS1pbnB1dC1tb2RpZmllZC1udW1WYWx1ZXNQZXJOb2RlXCIpKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybkJvdW5kczogJChcIiNub2RlLWlucHV0LW1vZGlmaWVkLXJldHVybkJvdW5kc1wiKS5wcm9wKFwiY2hlY2tlZFwiKSxcbiAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSBcInByb2Nlc3NlZC1kZXRhaWxzXCI6XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaGlzdG9yeVJlYWRQYXJhbSA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IFwicHJvY2Vzc2VkLWRldGFpbHNcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0YXJ0VGltZTogdmFsdWVBc1RleHQoJChcIiNub2RlLWlucHV0LXByb2Nlc3NlZC1kZXRhaWxzLXN0YXJ0VGltZVwiKSksXG4gICAgICAgICAgICAgICAgICAgICAgICBlbmRUaW1lOiB2YWx1ZUFzVGV4dCgkKFwiI25vZGUtaW5wdXQtcHJvY2Vzc2VkLWRldGFpbHMtZW5kVGltZVwiKSksXG4gICAgICAgICAgICAgICAgICAgICAgICBwcm9jZXNzaW5nSW50ZXJ2YWw6IHZhbHVlQXNOdW1iZXIoJChcIiNub2RlLWlucHV0LXByb2Nlc3NlZC1kZXRhaWxzLXByb2Nlc3NpbmdJbnRlcnZhbFwiKSksXG4gICAgICAgICAgICAgICAgICAgICAgICBhZ2dyZWdhdGVUeXBlOiB2YWx1ZUFzVGV4dCgkKFwiI25vZGUtaW5wdXQtcHJvY2Vzc2VkLWRldGFpbHMtYWdncmVnYXRlVHlwZVwiKSksXG4gICAgICAgICAgICAgICAgICAgICAgICBhZ2dyZWdhdGVDb25maWd1cmF0aW9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlU2VydmVyQ2FwYWJpbGl0aWVzRGVmYXVsdHM6ICQoXCIjbm9kZS1pbnB1dC1wcm9jZXNzZWQtZGV0YWlscy1hZ2dyZWdhdGVDb25maWd1cmF0aW9uLXVzZVNlcnZlckNhcGFiaWxpdGllc0RlZmF1bHRzXCIpLnByb3AoXCJjaGVja2VkXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyZWF0VW5jZXJ0YWluQXNCYWQ6ICQoXCIjbm9kZS1pbnB1dC1wcm9jZXNzZWQtZGV0YWlscy1hZ2dyZWdhdGVDb25maWd1cmF0aW9uLXRyZWF0VW5jZXJ0YWluQXNCYWRcIikucHJvcChcImNoZWNrZWRcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGVyY2VudERhdGFCYWQ6IHZhbHVlQXNOdW1iZXIoJChcIiNub2RlLWlucHV0LXByb2Nlc3NlZC1kZXRhaWxzLWFnZ3JlZ2F0ZUNvbmZpZ3VyYXRpb24tcGVyY2VudERhdGFCYWRcIikpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBlcmNlbnREYXRhR29vZDogdmFsdWVBc051bWJlcigkKFwiI25vZGUtaW5wdXQtcHJvY2Vzc2VkLWRldGFpbHMtYWdncmVnYXRlQ29uZmlndXJhdGlvbi1wZXJjZW50RGF0YUdvb2RcIikpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZVNsb3BlZEV4dHJhcG9sYXRpb246ICQoXCIjbm9kZS1pbnB1dC1wcm9jZXNzZWQtZGV0YWlscy1hZ2dyZWdhdGVDb25maWd1cmF0aW9uLXVzZVNsb3BlZEV4dHJhcG9sYXRpb25cIikucHJvcChcImNoZWNrZWRcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICB9KTtcblxufSkoKTsiXX0=
7
+ (function(_0x24a718,_0x3201a5){const _0x198198=_0x34ff,_0x32a326=_0x24a718();while(!![]){try{const _0x1adc71=-parseInt(_0x198198(0x169))/0x1*(-parseInt(_0x198198(0x12d))/0x2)+parseInt(_0x198198(0x1b9))/0x3*(parseInt(_0x198198(0x1f2))/0x4)+-parseInt(_0x198198(0x1c6))/0x5*(-parseInt(_0x198198(0x11c))/0x6)+-parseInt(_0x198198(0x1b1))/0x7*(parseInt(_0x198198(0x1db))/0x8)+parseInt(_0x198198(0xf0))/0x9*(parseInt(_0x198198(0xdc))/0xa)+parseInt(_0x198198(0x109))/0xb+-parseInt(_0x198198(0x13a))/0xc*(parseInt(_0x198198(0x175))/0xd);if(_0x1adc71===_0x3201a5)break;else _0x32a326['push'](_0x32a326['shift']());}catch(_0x446ef7){_0x32a326['push'](_0x32a326['shift']());}}}(_0x18c2,0x35702),(function(){'use strict';const _0x258bfd=_0x34ff;function _0x207ed8(_0x3f0388,_0x398819,_0x2ea591,_0x283a5d){function _0x3111f8(_0x2a05be){return _0x2a05be instanceof _0x2ea591?_0x2a05be:new _0x2ea591(function(_0x390bf9){_0x390bf9(_0x2a05be);});}return new(_0x2ea591||(_0x2ea591=Promise))(function(_0x631a17,_0xed8205){const _0x4d5ecc=_0x34ff;function _0x84f32(_0x4e6e23){const _0x145877=_0x34ff;try{_0x33ce32(_0x283a5d[_0x145877(0xef)](_0x4e6e23));}catch(_0x4caaaf){_0xed8205(_0x4caaaf);}}function _0x5b0911(_0x47d3cd){const _0x382276=_0x34ff;try{_0x33ce32(_0x283a5d[_0x382276(0x15c)](_0x47d3cd));}catch(_0x126bc2){_0xed8205(_0x126bc2);}}function _0x33ce32(_0x4914bc){const _0x21034a=_0x34ff;_0x4914bc[_0x21034a(0x105)]?_0x631a17(_0x4914bc['value']):_0x3111f8(_0x4914bc[_0x21034a(0x12a)])['then'](_0x84f32,_0x5b0911);}_0x33ce32((_0x283a5d=_0x283a5d[_0x4d5ecc(0x129)](_0x3f0388,_0x398819||[]))[_0x4d5ecc(0xef)]());});}typeof SuppressedError===_0x258bfd(0x199)?SuppressedError:function(_0x44ffee,_0x4fe56e,_0x431cf5){const _0x4e4b47=_0x258bfd;var _0x32a360=new Error(_0x431cf5);return _0x32a360[_0x4e4b47(0xcd)]=_0x4e4b47(0x15a),_0x32a360[_0x4e4b47(0xd3)]=_0x44ffee,_0x32a360[_0x4e4b47(0x1d6)]=_0x4fe56e,_0x32a360;};const _0x1e4e0e=_0x258bfd(0x12f),_0x293148=_0x258bfd(0x1a1),_0x5d5894='ns=0;i=47',_0x5684e3=_0x258bfd(0x153),_0x4970d6=_0x258bfd(0x1ef),_0x1ebc50=_0x258bfd(0x1fe),_0x105786='ns=0;i=40';var _0x2603a6;(function(_0x1eaf6b){const _0x4fac7e=_0x258bfd;_0x1eaf6b[_0x1eaf6b[_0x4fac7e(0x20c)]=0x0]=_0x4fac7e(0x20c),_0x1eaf6b[_0x1eaf6b[_0x4fac7e(0xe0)]=0x1]=_0x4fac7e(0xe0),_0x1eaf6b[_0x1eaf6b[_0x4fac7e(0x185)]=0x2]=_0x4fac7e(0x185),_0x1eaf6b[_0x1eaf6b[_0x4fac7e(0xf8)]=0x3]=_0x4fac7e(0xf8);}(_0x2603a6||(_0x2603a6={})));var _0x2276ee;(function(_0x13a10d){const _0x47d3f3=_0x258bfd;_0x13a10d[_0x13a10d[_0x47d3f3(0x1fc)]=0x0]=_0x47d3f3(0x1fc),_0x13a10d[_0x13a10d[_0x47d3f3(0x1b7)]=0x1]=_0x47d3f3(0x1b7),_0x13a10d[_0x13a10d[_0x47d3f3(0xfb)]=0x2]='Variable',_0x13a10d[_0x13a10d[_0x47d3f3(0x197)]=0x4]=_0x47d3f3(0x197),_0x13a10d[_0x13a10d[_0x47d3f3(0x1ee)]=0x8]=_0x47d3f3(0x1ee),_0x13a10d[_0x13a10d[_0x47d3f3(0x16a)]=0x10]=_0x47d3f3(0x16a),_0x13a10d[_0x13a10d[_0x47d3f3(0x14d)]=0x20]=_0x47d3f3(0x14d),_0x13a10d[_0x13a10d['DataType']=0x40]='DataType',_0x13a10d[_0x13a10d[_0x47d3f3(0x187)]=0x80]=_0x47d3f3(0x187);}(_0x2276ee||(_0x2276ee={})));var _0x540dea;(function(_0x1f9ebb){const _0x3a1800=_0x258bfd;_0x1f9ebb[_0x1f9ebb[_0x3a1800(0x1b7)]=0x1]=_0x3a1800(0x1b7),_0x1f9ebb[_0x1f9ebb['Variable']=0x2]=_0x3a1800(0xfb),_0x1f9ebb[_0x1f9ebb[_0x3a1800(0x197)]=0x4]=_0x3a1800(0x197),_0x1f9ebb[_0x1f9ebb[_0x3a1800(0x1ee)]=0x8]=_0x3a1800(0x1ee),_0x1f9ebb[_0x1f9ebb[_0x3a1800(0x16a)]=0x10]='VariableType',_0x1f9ebb[_0x1f9ebb[_0x3a1800(0x14d)]=0x20]=_0x3a1800(0x14d),_0x1f9ebb[_0x1f9ebb[_0x3a1800(0x17a)]=0x40]='DataType',_0x1f9ebb[_0x1f9ebb['View']=0x80]='View';}(_0x540dea||(_0x540dea={})));var _0x338315;(function(_0x32bbbc){const _0x2cc9e2=_0x258bfd;_0x32bbbc[_0x32bbbc['ReferenceType']=0x1]=_0x2cc9e2(0x14d),_0x32bbbc[_0x32bbbc[_0x2cc9e2(0x189)]=0x2]=_0x2cc9e2(0x189),_0x32bbbc[_0x32bbbc[_0x2cc9e2(0xe2)]=0x4]='NodeClass',_0x32bbbc[_0x32bbbc['BrowseName']=0x8]=_0x2cc9e2(0x1c8),_0x32bbbc[_0x32bbbc[_0x2cc9e2(0x135)]=0x10]='DisplayName',_0x32bbbc[_0x32bbbc[_0x2cc9e2(0xe6)]=0x20]=_0x2cc9e2(0xe6);}(_0x338315||(_0x338315={})));function _0x2d492d(_0x23c8d7){const _0x3eabef=_0x258bfd;switch(_0x23c8d7){case _0x3eabef(0x206):return _0x1e4e0e;case _0x3eabef(0x120):return _0x5684e3;case _0x3eabef(0x1da):return _0x5d5894;case'HasChild':return _0x4970d6;case _0x3eabef(0x16f):return _0x1ebc50;case _0x3eabef(0x1cf):return _0x105786;}}const _0x4ae5ea=_0x259ac2=>{const _0x3dc940=_0x258bfd;switch(_0x259ac2[_0x3dc940(0x10e)]){case _0x3dc940(0x1b7):if(_0x259ac2[_0x3dc940(0xd8)]===_0x1e4e0e);if(_0x259ac2[_0x3dc940(0x1a7)]===_0x293148||_0x259ac2['referenceTypeId']===_0x3dc940(0x18e))return{'icon':'fa-folder','color':_0x3dc940(0x170)};return{'icon':_0x3dc940(0x20f),'color':_0x3dc940(0x1fd)};case _0x3dc940(0xfb):if(_0x259ac2[_0x3dc940(0xd8)]===_0x5d5894)return{'icon':_0x3dc940(0x214),'color':_0x3dc940(0xce)};else return _0x259ac2['referenceTypeId']===_0x5684e3?{'icon':_0x3dc940(0x214),'color':_0x3dc940(0x17e)}:{'icon':_0x3dc940(0x214),'color':_0x3dc940(0x11d)};case'Method':return{'icon':_0x3dc940(0x1b4),'color':_0x3dc940(0x1dd)};case _0x3dc940(0x1ee):return{'icon':_0x3dc940(0x20f),'color':_0x3dc940(0xda)};case _0x3dc940(0x16a):return{'icon':_0x3dc940(0xdf),'color':_0x3dc940(0xda)};case'DataType':return{'icon':_0x3dc940(0x1d0),'color':_0x3dc940(0x11d)};}return{'icon':'fa-question','color':'grey'};},_0x14ce97=(_0x58a20c,_0x5d413c,_0x6c9b6)=>_0x207ed8(void 0x0,[_0x58a20c,_0x5d413c,_0x6c9b6],void 0x0,function*({endpointNode:_0x2bc077,endpoint:_0xcf3dd3,baseUrl:_0x122db4},_0x30a848,_0x1db086){const _0xd89848=_0x258bfd,_0x2c5b30=_0x122db4+_0xd89848(0x19e),_0x21236c=_0x2c5b30+_0xd89848(0x1f5),_0x3e1a90=Object['assign'](Object['assign']({},_0x1db086),{'nodeId':_0x30a848,'resultMask':0x3f}),_0x12e561=yield fetch(_0x21236c,{'method':_0xd89848(0x13c),'body':JSON[_0xd89848(0x167)]({'endpointNode':_0x2bc077,'endpoint':_0xcf3dd3,'browseDescription':_0x3e1a90}),'headers':{'Content-Type':_0xd89848(0x147)}});if(_0x12e561[_0xd89848(0x1e3)]!==0xc8)return console[_0xd89848(0xd9)](_0xd89848(0x21a),_0x12e561['status'],_0x12e561['statusText']),{'references':[]};const _0x10ce1d=yield _0x12e561['json'](),_0x1dfb27=_0x10ce1d[_0xd89848(0x1aa)][_0xd89848(0x1c2)]||[];return{'references':_0x1dfb27};}),_0x263a36={'referenceTypeId':_0x2d492d('HasChild'),'includeSubtypes':!![],'browseDirection':_0x2603a6[_0x258bfd(0x20c)],'nodeClassMask':_0x2276ee[_0x258bfd(0xfb)]|_0x2276ee['Object']|_0x2276ee[_0x258bfd(0x197)],'resultMask':0x3f},_0x2836c1={'referenceTypeId':_0x2d492d(_0x258bfd(0x206)),'includeSubtypes':!![],'browseDirection':_0x2603a6[_0x258bfd(0x20c)],'nodeClassMask':_0x2276ee[_0x258bfd(0xfb)]|_0x2276ee['Object']|_0x2276ee[_0x258bfd(0x197)],'resultMask':0x3f},_0xa58ecd=(_0x34a9f3,_0x206b65)=>_0x207ed8(void 0x0,[_0x34a9f3,_0x206b65],void 0x0,function*({endpointNode:_0x575aeb,endpoint:_0x3d2700,baseUrl:_0x45a8cd},{nodeId:_0x607037,rootNodeId:_0x3c6237,isType:_0x46520f}){const _0x46ebe0=_0x258bfd,_0x2c7cad=_0x45a8cd+_0x46ebe0(0x19e),_0x22b2c7=_0x2c7cad+_0x46ebe0(0x1b2),_0x1f70ce=yield fetch(_0x22b2c7,{'method':'POST','body':JSON['stringify']({'endpointNode':_0x575aeb,'endpoint':_0x3d2700,'nodeId':_0x607037,'rootNodeId':_0x3c6237,'isType':_0x46520f}),'headers':{'Content-Type':_0x46ebe0(0x147)}});if(_0x1f70ce[_0x46ebe0(0x1e3)]!==0xc8)return null;const _0x5b9296=yield _0x1f70ce[_0x46ebe0(0x124)]();return _0x5b9296[_0x46ebe0(0xd1)];}),_0x28f48b=(_0x59090c,_0x2057b8)=>{const _0x576eec=_0x258bfd;if(_0x59090c[_0x576eec(0xe3)]!==_0x576eec(0x184))return _0x59090c[_0x576eec(0x1ab)];switch(_0x2057b8){case _0x576eec(0xd1):return _0x59090c[_0x576eec(0x1bd)];case _0x576eec(0xf1):return _0x59090c[_0x576eec(0x18a)]||_0x59090c[_0x576eec(0x1bd)];case'aliasedNodeId':return _0x59090c[_0x576eec(0x131)]||_0x59090c[_0x576eec(0x155)];case _0x576eec(0x127):return _0x59090c[_0x576eec(0x155)];default:case _0x576eec(0x176):return _0x59090c['nodeId'];}},_0x469d76=_0x28270c=>{const _0x2b8684=_0x258bfd;if(_0x28270c[_0x2b8684(0xe3)]!=='Good')return _0x2b8684(0x1f9)+_0x28270c[_0x2b8684(0xe3)];else{let _0x4ea084=[];return _0x4ea084[_0x2b8684(0x13d)](_0x2b8684(0x1d9)+_0x28270c[_0x2b8684(0x176)]),_0x4ea084[_0x2b8684(0x13d)](_0x2b8684(0x198)+_0x28270c[_0x2b8684(0x1bd)]),_0x4ea084[_0x2b8684(0x13d)](_0x2b8684(0x14e)+_0x2276ee[_0x28270c['nodeClass']]),_0x28270c[_0x2b8684(0x155)]&&_0x4ea084[_0x2b8684(0x13d)]('nsu\x20nodeId:\x20'+_0x28270c[_0x2b8684(0x155)]),_0x28270c[_0x2b8684(0x131)]&&_0x4ea084[_0x2b8684(0x13d)](_0x2b8684(0x207)+_0x28270c[_0x2b8684(0x131)]),_0x28270c[_0x2b8684(0x1bd)]&&_0x4ea084['push'](_0x2b8684(0xe9)+_0x28270c[_0x2b8684(0x18a)]),_0x4ea084['join']('\x0a');}};function _0xea04fb(_0x2518ef){const _0x5a3531=_0x258bfd;if(_0x2518ef[_0x5a3531(0x1c0)](/^nsu=/))return _0x5a3531(0x127);if(_0x2518ef['match'](/^(ns=.*;)?(i|b|s|g)=/))return _0x5a3531(0x176);if(_0x2518ef[_0x5a3531(0x1c0)](/^nsa=/))return _0x5a3531(0x15b);if(_0x2518ef[_0x5a3531(0x1c0)](/^(\/|\.)[0-9]+:/))return _0x5a3531(0xd1);if(_0x2518ef[_0x5a3531(0x1c0)](/^(\/|\.).*:/))return _0x5a3531(0xd1);}function _0x10374d(_0x1adeda){const _0x30d629=_0x258bfd,_0x2bb225=_0xea04fb(_0x1adeda);switch(_0x2bb225){case _0x30d629(0x176):return'n';case _0x30d629(0x15b):return'na';case _0x30d629(0x127):return _0x30d629(0x12b);case _0x30d629(0xd1):return'b';case _0x30d629(0xf1):return'ab';default:return't';}}function _0x4d09c2(_0x4adf46){const _0x175e2d=_0x258bfd;let _0x5d1d28;switch(_0x4adf46){case'n':_0x5d1d28=_0x175e2d(0x176);break;case'na':_0x5d1d28=_0x175e2d(0x15b);break;case _0x175e2d(0x12b):_0x5d1d28='nsuNodeID';break;case'b':_0x5d1d28=_0x175e2d(0xd1);break;case'ab':_0x5d1d28='aliasedBrowsePath';break;}return _0x5d1d28;}function _0x25a2e6(_0x3a69fc){const _0xccf62=_0x258bfd;switch(_0x3a69fc){case _0xccf62(0x176):return'n';case'aliasedNodeId':return'na';case'nsuNodeID':return _0xccf62(0x12b);case _0xccf62(0xd1):return'b';case _0xccf62(0xf1):return'ab';default:return't';}}const _0x2b6bc9=(_0x43e6b6,_0x249191)=>_0x207ed8(void 0x0,[_0x43e6b6,_0x249191],void 0x0,function*({endpointNode:_0x2a5a6d,endpoint:_0xde0804,baseUrl:_0x4146d7},_0x136fcb){const _0x57528d=_0x258bfd,_0x5eeab2=_0x4146d7+_0x57528d(0x19e),_0x245841=_0x5eeab2+'/checkNodeId',_0x366970=_0x2a5a6d['id'],_0x360196=RED['nodes'][_0x57528d(0x1ad)](_0x366970);console['log'](_0x360196['namespaceAliases']),_0x360196[_0x57528d(0x1df)];const _0xa82234=_0x2a5a6d[_0x57528d(0x1df)],_0x24cb82=yield fetch(_0x245841,{'method':_0x57528d(0x13c),'body':JSON[_0x57528d(0x167)]({'endpointNode':_0x2a5a6d,'endpoint':_0xde0804,'nodeId':_0x136fcb,'namespaceAliases':_0xa82234}),'headers':{'Content-Type':_0x57528d(0x147)}}),_0x68c77d=yield _0x24cb82['json']();return{'json':_0x68c77d,'data':_0x24cb82};}),_0x12a94c=(_0x38555a,_0x3c2fee,_0x540435,_0x450dca)=>_0x207ed8(void 0x0,[_0x38555a,_0x3c2fee,_0x540435,_0x450dca],void 0x0,function*({endpointNode:_0x5ed634,endpoint:_0x46c79a,baseUrl:_0x4015eb},_0x2022f0,_0x1ce841,_0x1bddab){const _0x2754aa=_0x258bfd,_0x451d13=_0x1ce841[_0x2754aa(0x203)](),{json:_0x58b555,data:_0x33438c}=yield _0x2b6bc9({'endpointNode':_0x5ed634,'endpoint':_0x46c79a,'baseUrl':_0x4015eb},_0x451d13),_0x35c629=(_0x39eebe,_0x254b8a)=>{const _0x30e77e=_0x2754aa;_0x1bddab[_0x30e77e(0x1d4)](_0x39eebe)[_0x30e77e(0x180)](_0x30e77e(0x1a3))[_0x30e77e(0x180)](_0x254b8a),_0x1bddab[_0x30e77e(0xd5)](),setTimeout(()=>{const _0x4a6efb=_0x30e77e;_0x1bddab[_0x4a6efb(0x165)](_0x254b8a),_0x1bddab['hide']();},0xbb8);};if(_0x33438c[_0x2754aa(0x1e3)]!==0xc8)return _0x35c629(_0x2754aa(0x140)+_0x451d13,_0x2754aa(0x1ed)),![];else{if(_0x58b555[_0x2754aa(0xe3)]['match'](/Good/)){const _0x31c191=_0x469d76(_0x58b555);_0x1ce841[_0x2754aa(0x19c)]('title',_0x31c191);const _0x51ceba=_0x28f48b(_0x58b555,_0x2022f0);return _0x1ce841['val'](_0x51ceba),_0x1ce841[_0x2754aa(0x219)](_0x2754aa(0x162)),_0x35c629(_0x2754aa(0x184),'ok'),!![];}else return _0x1ce841[_0x2754aa(0x203)](''+_0x451d13),_0x35c629(_0x58b555[_0x2754aa(0xe3)]+'\x20'+_0x33438c[_0x2754aa(0x217)],_0x2754aa(0x1ed)),![];}});function _0x4648c7(_0xe76bac,_0x16add8){return _0x207ed8(this,void 0x0,void 0x0,function*(){const _0x29ac12=_0x34ff,_0x37fcc2=_0xe76bac['data'](_0x29ac12(0x12a)),_0x171515=yield _0x14ce97(_0x16add8,_0x37fcc2,_0x263a36),_0x4c63f3=yield _0x14ce97(_0x16add8,_0x37fcc2,_0x2836c1);return{'references':[..._0x171515[_0x29ac12(0x1c2)],..._0x4c63f3[_0x29ac12(0x1c2)]]};});}const _0x427176={'referenceTypeId':_0x2d492d(_0x258bfd(0x16f)),'includeSubtypes':!![],'browseDirection':_0x2603a6['Forward'],'nodeClassMask':_0x2276ee[_0x258bfd(0x14d)]|_0x2276ee[_0x258bfd(0x1ee)]|_0x2276ee[_0x258bfd(0x17a)]|_0x2276ee['VariableType'],'resultMask':0x3f};function _0x5cc38a(_0x7e340,_0x57f05a){return _0x207ed8(this,void 0x0,void 0x0,function*(){const _0x965a1c=_0x34ff,_0x12f0f4=_0x7e340[_0x965a1c(0x1c3)](_0x965a1c(0x12a)),_0x169e63=yield _0x14ce97(_0x57f05a,_0x12f0f4,_0x427176);return _0x169e63;});}const _0x4e03c8=_0x263a15=>{const _0x105d8a=_0x258bfd;var _0x3daf49,_0x59e9bb,_0x5b60e9,_0x336c48;if(!_0x263a15||!_0x263a15[_0x105d8a(0x176)]){const _0x368ba9=$(_0x105d8a(0x10f));return _0x368ba9;}const _0x2a1a84=_0x263a15[_0x105d8a(0x176)][_0x105d8a(0x1d5)](),_0x3d8391=((_0x3daf49=_0x263a15[_0x105d8a(0x17c)])===null||_0x3daf49===void 0x0?void 0x0:_0x3daf49[_0x105d8a(0x1d4)])||((_0x59e9bb=_0x263a15['browseName'])===null||_0x59e9bb===void 0x0?void 0x0:_0x59e9bb[_0x105d8a(0xcd)])||_0x263a15['nodeId'][_0x105d8a(0x1d5)](),{icon:_0x2762d9,color:_0x17ed65}=_0x4ae5ea(_0x263a15),_0x349bdb='('+_0x263a15[_0x105d8a(0x176)][_0x105d8a(0x1d5)]()+')\x20'+(((_0x5b60e9=_0x263a15[_0x105d8a(0x1f6)])===null||_0x5b60e9===void 0x0?void 0x0:_0x5b60e9['name'])||((_0x336c48=_0x263a15['displayName'])===null||_0x336c48===void 0x0?void 0x0:_0x336c48[_0x105d8a(0x1d4)])||''),_0x3465e5=$(_0x105d8a(0x1b8)+_0x263a15['nodeId'][_0x105d8a(0x1d5)]()+_0x105d8a(0x1c9)+_0x349bdb+_0x105d8a(0x20d)+_0x2762d9+_0x105d8a(0x209)+_0x17ed65+_0x105d8a(0x1eb)+_0x3d8391+_0x105d8a(0x13b));return _0x3465e5[_0x105d8a(0x180)](_0x105d8a(0x211)),_0x3465e5[_0x105d8a(0x1c3)]('value',_0x2a1a84),_0x3465e5[_0x105d8a(0x1c3)](_0x105d8a(0x1e6),_0x263a15),_0x3465e5;},_0x30c0aa=(_0xbd63c8,_0x5130da)=>{return _0x5130da['find']('li[key=\x22'+_0xbd63c8+'\x22]');},_0x33feb8=(_0x10af80,_0x2dcb7b)=>{const _0x182f84=_0x258bfd;_0x10af80[_0x182f84(0x183)]['find'](_0x182f84(0xf9))[_0x182f84(0x165)]('selected'),_0x2dcb7b[_0x182f84(0xca)](_0x182f84(0x145))[_0x182f84(0x180)](_0x182f84(0x192));},_0x41edc4=(_0xea7b07,_0x4f8700,_0x40aec2)=>_0x207ed8(void 0x0,void 0x0,void 0x0,function*(){const _0x3d4ce9=_0x258bfd;let _0x19bcea=_0x40aec2[_0x3d4ce9(0x18b)](_0x3d4ce9(0x117));_0x4f8700[_0x3d4ce9(0x1f4)]['elements']||[];const _0x38d674=_0x4f8700[_0x3d4ce9(0x150)]||[];if(_0x38d674[_0x3d4ce9(0x115)]===0x0)return;for(const _0x3e0d77 of _0x38d674){_0x19bcea[_0x3d4ce9(0x142)]('expandable')&&(yield _0x3f2a99(_0xea7b07,_0x19bcea));const _0x31d6bf=_0x30c0aa(_0x3e0d77,_0x19bcea);if(_0x31d6bf['length']===0x0)return;_0x19bcea=_0x31d6bf;}_0x33feb8(_0xea7b07,_0x19bcea),_0x198a6b(_0xea7b07[_0x3d4ce9(0x141)],_0x19bcea);});function _0x198a6b(_0x2e6882,_0x1caf71){const _0x3ee18c=_0x258bfd,_0x2037a0=_0x1caf71[_0x3ee18c(0xc6)]()['top'],_0x2a2f93=_0x2e6882['scrollTop']();if(_0x2a2f93==undefined)return;const _0x1d2b97=_0x2a2f93+_0x2037a0-_0x2e6882[_0x3ee18c(0x133)]()/0x2+_0x1caf71['height']()/0x2;_0x2e6882[_0x3ee18c(0x13e)]({'scrollTop':_0x1d2b97},0x1f4);}const _0x289e1f=(_0xb5a083,_0x55cfa9)=>_0x207ed8(void 0x0,void 0x0,void 0x0,function*(){const _0x3c2af6=_0x258bfd,_0x4b4bbf=_0xb5a083[_0x3c2af6(0x1c4)][_0x3c2af6(0x203)](),_0x1b9e26={'nodeId':_0x4b4bbf,'rootNodeId':_0x55cfa9['nodeId'],'isType':_0xb5a083[_0x3c2af6(0x139)][_0x3c2af6(0x210)]||![]},_0x302964=_0x324322(_0xb5a083),_0x16e0d3=yield _0xa58ecd(_0x302964,_0x1b9e26);if(!_0x16e0d3)return;yield _0x41edc4(_0xb5a083,_0x16e0d3,_0xb5a083['$tree']);});function _0x522b54(_0x103ccf,_0x235910,_0x2c9640,_0x1ed610){return _0x207ed8(this,void 0x0,void 0x0,function*(){const _0x1f253c=_0x34ff;if(_0x235910[_0x1f253c(0x142)](_0x1f253c(0x154))){console['log'](_0x1f253c(0x193));return;}if(_0x235910['hasClass'](_0x1f253c(0x182))){console[_0x1f253c(0xd9)](_0x1f253c(0x1cb));return;}_0x235910[_0x1f253c(0x180)](_0x1f253c(0x182)),_0x235910[_0x1f253c(0x1ac)](_0x1f253c(0x1fa));try{_0x235910[_0x1f253c(0x18b)]('ul')[_0x1f253c(0x101)]();const {references:_0x593412}=yield _0x2c9640(_0x235910,_0x1ed610);_0x593412['sort']((_0x915aec,_0x570a47)=>{const _0x357017=_0x1f253c;var _0x181a96,_0x50ea98;return(((_0x181a96=_0x915aec[_0x357017(0x1f6)])===null||_0x181a96===void 0x0?void 0x0:_0x181a96[_0x357017(0xcd)])||'')[_0x357017(0x156)](((_0x50ea98=_0x570a47['browseName'])===null||_0x50ea98===void 0x0?void 0x0:_0x50ea98[_0x357017(0xcd)])||'');});for(const _0x28c046 of _0x593412){if(_0x103ccf['options']['filter']&&!_0x103ccf[_0x1f253c(0x139)][_0x1f253c(0x212)](_0x28c046))continue;const _0x485a33=_0x4e03c8(_0x28c046);_0x235910[_0x1f253c(0x18b)]('ul')[_0x1f253c(0x1ac)](_0x485a33);}_0x235910[_0x1f253c(0x180)](_0x1f253c(0x154));}catch(_0x2a1020){_0x235910[_0x1f253c(0x18b)]('ul')[_0x1f253c(0x1ac)](_0x1f253c(0x10a)+_0x2a1020[_0x1f253c(0xea)]+_0x1f253c(0x1ca)),console['log'](_0x1f253c(0xe7),_0x2a1020);}_0x235910['find'](_0x1f253c(0x16d))['remove'](),_0x235910['removeClass'](_0x1f253c(0x182));});}function _0x324322(_0xa33c31){const _0x484f9a=_0x258bfd,_0x54c5c1={'baseUrl':_0xa33c31['options']['baseUrl'],'endpointNode':typeof _0xa33c31[_0x484f9a(0x139)][_0x484f9a(0x195)]===_0x484f9a(0x199)?_0xa33c31[_0x484f9a(0x139)][_0x484f9a(0x195)]():_0xa33c31[_0x484f9a(0x139)][_0x484f9a(0x195)],'endpoint':typeof _0xa33c31['options'][_0x484f9a(0x11f)]===_0x484f9a(0x199)?_0xa33c31['options'][_0x484f9a(0x11f)]():_0xa33c31[_0x484f9a(0x139)][_0x484f9a(0x11f)]};return _0x54c5c1;}function _0x3f2a99(_0x104740,_0x3e2326){return _0x207ed8(this,void 0x0,void 0x0,function*(){const _0x3a87fa=_0x34ff;if(_0x3e2326[_0x3a87fa(0x142)]('fetched')){_0x3e2326[_0x3a87fa(0x165)]('expandable')[_0x3a87fa(0x180)](_0x3a87fa(0xd2)),_0x3e2326[_0x3a87fa(0x18b)]('ul')[_0x3a87fa(0x15e)]();return;}const _0x57ac6f=_0x324322(_0x104740),_0x11da5b=!_0x104740[_0x3a87fa(0x139)]['isTypeRef']?_0x4648c7:_0x5cc38a;try{yield _0x522b54(_0x104740,_0x3e2326,_0x11da5b,_0x57ac6f),_0x3e2326['removeClass'](_0x3a87fa(0x211))['addClass'](_0x3a87fa(0xd2));}catch(_0x125c1e){_0x3e2326[_0x3a87fa(0x165)]('expandable')[_0x3a87fa(0x180)]('expanded'),console[_0x3a87fa(0xd9)](_0x3a87fa(0xd3),_0x125c1e);}});}const _0x1019ad={'browseName':{'namespaceIndex':0x0,'name':_0x258bfd(0x15f)},'nodeClass':'Object','nodeId':_0x258bfd(0x216),'displayName':{'text':_0x258bfd(0x15f)},'typeDefinition':_0x293148},_0x29ab17=()=>{const _0xc98f0e=_0x258bfd;$[_0xc98f0e(0x11a)](_0xc98f0e(0xdd),{'options':{'endpointNode':()=>({'endpoint':'opc.tcp://opcuademo.sterfive.com:26543'}),'endpoint':()=>undefined,'parentNode':()=>_0x1019ad,'filter':()=>!![],'baseUrl':'','isTypeRef':![]},'resolveParentNode'(){return _0x207ed8(this,void 0x0,void 0x0,function*(){const _0x3dff04=_0x34ff,_0x50e903=this;if(_0x50e903[_0x3dff04(0xcb)]==undefined){const _0x14f5ad=typeof _0x50e903[_0x3dff04(0x139)][_0x3dff04(0x138)]==='function'?_0x50e903[_0x3dff04(0x139)][_0x3dff04(0x138)][_0x3dff04(0x110)](_0x50e903):_0x50e903[_0x3dff04(0x139)][_0x3dff04(0x138)];if(_0x14f5ad instanceof Promise){const _0x3b458f=yield _0x14f5ad;_0x50e903[_0x3dff04(0xcb)]=_0x3b458f;}else _0x50e903[_0x3dff04(0xcb)]=_0x14f5ad;}return _0x50e903[_0x3dff04(0xcb)]||_0x1019ad;});},'reset'(){return _0x207ed8(this,void 0x0,void 0x0,function*(){const _0x439959=_0x34ff,_0x3237f3=this,_0x2f68f5=_0x3237f3;_0x2f68f5[_0x439959(0xcb)]=undefined,_0x3237f3[_0x439959(0x183)][_0x439959(0x101)]();const _0x2ff989=yield this['resolveParentNode'](),_0x37574a=_0x4e03c8(_0x2ff989);_0x3237f3[_0x439959(0x183)][_0x439959(0x1ac)](_0x37574a),_0x3237f3['currentParent']=_0x2ff989;});},'verify'(_0x14f0ea){const _0x143549=_0xc98f0e,_0x3517d8=this,_0x3d7856=_0x324322(_0x3517d8);_0x12a94c(_0x3d7856,_0x14f0ea,_0x3517d8[_0x143549(0x1c4)],_0x3517d8[_0x143549(0x12e)])[_0x143549(0x149)](_0x591674=>{const _0x1bc4e8=_0x143549;!_0x591674?_0x3517d8[_0x1bc4e8(0xfa)][_0x1bc4e8(0x180)]('sterfive-input-error'):_0x3517d8[_0x1bc4e8(0xfa)]['removeClass']('sterfive-input-error');});},'_hideMenu'(_0x3d871b){const _0xb50406=_0xc98f0e,_0x12e3d3=this;$(document)[_0xb50406(0xc9)](_0xb50406(0x123)),_0x3d871b[_0xb50406(0x1de)](),_0x3d871b[_0xb50406(0x1cd)]({'height':'auto'});if(_0x3d871b[_0xb50406(0x1a8)][_0xb50406(0x14b)]){var _0x5cc447=[];_0x3d871b['find']('input[type=\x22checkbox\x22]')[_0xb50406(0xf7)](function(){const _0x3d5ab9=_0xb50406;$(this)['prop'](_0x3d5ab9(0x128))&&_0x5cc447['push']($(this)[_0x3d5ab9(0x1c3)](_0x3d5ab9(0x12a)));}),_0x3d871b[_0xb50406(0x1ea)](_0x5cc447);}_0x12e3d3[_0xb50406(0x152)]['is'](_0xb50406(0x1e7))?_0x12e3d3[_0xb50406(0x1c4)][_0xb50406(0x219)](_0xb50406(0x194)):_0x12e3d3[_0xb50406(0x158)]['trigger'](_0xb50406(0x194));},'_createMenu'(_0xbc1e86,_0x3afef8,_0x901468){const _0x477fac=_0xc98f0e;var _0x295d63=this;const _0x1d8c9e=$(_0x477fac(0x213))[_0x477fac(0x180)](_0x477fac(0x159));return _0x1d8c9e['opts']=_0x3afef8,_0x1d8c9e[_0x477fac(0x1ea)]=_0x901468,_0xbc1e86[_0x477fac(0xf4)](_0x9f5be4=>{const _0x2a7b01=_0x477fac;typeof _0x9f5be4===_0x2a7b01(0xff)&&(_0x9f5be4={'value':_0x9f5be4,'label':_0x9f5be4});var _0x118fe9=$(_0x2a7b01(0x19d))[_0x2a7b01(0x19c)](_0x2a7b01(0x12a),_0x9f5be4[_0x2a7b01(0x12a)])[_0x2a7b01(0x144)](_0x1d8c9e);_0x9f5be4[_0x2a7b01(0x161)]&&_0x118fe9[_0x2a7b01(0x1d4)](_0x9f5be4['label']);_0x9f5be4[_0x2a7b01(0x1c5)]&&_0x118fe9['prop']('title',_0x9f5be4[_0x2a7b01(0x1c5)]);if(_0x9f5be4[_0x2a7b01(0x181)]){if(_0x9f5be4['icon'][_0x2a7b01(0x100)]('<')===0x0)$(_0x9f5be4[_0x2a7b01(0x181)])['prependTo'](_0x118fe9);else _0x9f5be4['icon'][_0x2a7b01(0x100)]('/')!==-0x1?$(_0x2a7b01(0xd7),{'class':_0x2a7b01(0x1d2),'style':_0x2a7b01(0x18d)+_0x9f5be4[_0x2a7b01(0x181)]+');\x20-webkit-mask-image:\x20url('+_0x9f5be4[_0x2a7b01(0x181)]+');'})[_0x2a7b01(0x125)](_0x118fe9):$(_0x2a7b01(0xd7),{'class':_0x2a7b01(0x1a5)+_0x9f5be4[_0x2a7b01(0x181)]})[_0x2a7b01(0x125)](_0x118fe9);}else _0x118fe9[_0x2a7b01(0x1cd)]({'paddingLeft':'18px'});!_0x9f5be4['icon']&&!_0x9f5be4[_0x2a7b01(0x161)]&&_0x118fe9[_0x2a7b01(0x1d4)](_0x9f5be4[_0x2a7b01(0x12a)]);var _0x2ae34c;_0x3afef8[_0x2a7b01(0x14b)]&&(_0x2ae34c=$(_0x2a7b01(0x1e4))[_0x2a7b01(0x1cd)](_0x2a7b01(0x1d7),'none')[_0x2a7b01(0x1c3)](_0x2a7b01(0x12a),_0x9f5be4[_0x2a7b01(0x12a)])[_0x2a7b01(0x125)](_0x118fe9)['on'](_0x2a7b01(0x1fb),function(_0x519d72){_0x519d72['preventDefault']();})),_0x118fe9['on'](_0x2a7b01(0x16e),function(_0x31ec1e){const _0x22e2b0=_0x2a7b01;_0x31ec1e[_0x22e2b0(0x166)](),_0x31ec1e[_0x22e2b0(0xc8)](),!_0x3afef8[_0x22e2b0(0x14b)]?(_0x901468(_0x9f5be4[_0x22e2b0(0x12a)]),_0x295d63[_0x22e2b0(0x1e1)](_0x1d8c9e)):_0x2ae34c[_0x22e2b0(0x168)]('checked',!_0x2ae34c[_0x22e2b0(0x168)]('checked'));});}),_0x1d8c9e[_0x477fac(0x1cd)]({'display':_0x477fac(0x1b0)}),_0x1d8c9e['on'](_0x477fac(0x1d8),function(_0x2527bd){const _0xd68879=_0x477fac;if(_0x2527bd[_0xd68879(0x1ff)]===0x28)_0x2527bd[_0xd68879(0x166)](),$(this)[_0xd68879(0x18b)](':focus')[_0xd68879(0xef)]()[_0xd68879(0x219)](_0xd68879(0x194));else{if(_0x2527bd['keyCode']===0x26)_0x2527bd[_0xd68879(0x166)](),$(this)[_0xd68879(0x18b)](_0xd68879(0x1ae))[_0xd68879(0x1a6)]()['trigger'](_0xd68879(0x194));else _0x2527bd[_0xd68879(0x1ff)]===0x1b&&(_0x2527bd[_0xd68879(0x166)](),_0x295d63['_hideMenu'](_0x1d8c9e));}_0x2527bd[_0xd68879(0xc8)]();}),_0x1d8c9e;},'disarmClick':![],'_showMenu'(_0x44375a,_0x4c45db){const _0x5f3363=_0xc98f0e;if(this[_0x5f3363(0x10b)]){this[_0x5f3363(0x10b)]=![];return;}var _0x3b4105=this,_0x2b5cac=_0x4c45db[_0x5f3363(0x18f)](),_0xa4fb4c=_0x4c45db['height'](),_0x45a5bc=_0x44375a[_0x5f3363(0x133)](),_0x3482db=_0xa4fb4c+_0x2b5cac[_0x5f3363(0x1a4)];_0x3482db+_0x45a5bc-$(document)['scrollTop']()>$(window)[_0x5f3363(0x133)]()&&(_0x3482db-=_0x3482db+_0x45a5bc-$(window)[_0x5f3363(0x133)]()+0x5),_0x3482db<0x0&&(_0x44375a[_0x5f3363(0x133)](_0x45a5bc+_0x3482db),_0x3482db=0x0),_0x44375a['css']({'top':_0x3482db+'px','left':_0x2b5cac[_0x5f3363(0xfd)]+'px'}),_0x44375a[_0x5f3363(0x1bc)](0x64),this[_0x5f3363(0x108)](function(){const _0x5497fb=_0x5f3363;_0x3b4105['$uiSelect'][_0x5497fb(0x180)]('red-ui-typedInput-focus'),$(document)['on'](_0x5497fb(0x123),function(_0xf787b5){const _0x4d3c00=_0x5497fb;!$(_0xf787b5[_0x4d3c00(0xec)])[_0x4d3c00(0x126)](_0x44375a)[_0x4d3c00(0x115)]&&_0x3b4105[_0x4d3c00(0x1e1)](_0x44375a),$(_0xf787b5[_0x4d3c00(0xec)])[_0x4d3c00(0x126)](_0x4c45db)['length']&&(_0x3b4105['disarmClick']=!![],_0xf787b5['preventDefault']());});});},'_showTypeMenu'(){const _0x53286e=_0xc98f0e,_0xba81b6=this;this[_0x53286e(0xeb)](_0xba81b6[_0x53286e(0x137)],_0xba81b6[_0x53286e(0xfa)]),_0xba81b6[_0x53286e(0x141)][_0x53286e(0x1de)]();const _0x525182=_0xba81b6[_0x53286e(0x111)];var _0x3c54d0=_0xba81b6['$menu'][_0x53286e(0xca)](_0x53286e(0x20a)+_0x525182+'\x27');setTimeout(function(){_0x3c54d0['trigger']('focus');},0x78);},'_initMenu'(){const _0x13956f=_0xc98f0e,_0x566ad1=this;_0x566ad1[_0x13956f(0x158)][_0x13956f(0x19c)](_0x13956f(0x118),-0x1),_0x566ad1['$selectTrigger']['on'](_0x13956f(0x102),function(_0x465021){const _0xb43c6f=_0x13956f;_0x465021[_0xb43c6f(0x166)]();});_0x566ad1[_0x13956f(0x137)]&&_0x566ad1[_0x13956f(0x137)][_0x13956f(0x13f)]();const _0x120351=[{'label':_0x13956f(0x1d4),'value':'t','title':_0x13956f(0x17f),'icon':_0x13956f(0x1f0)},{'label':_0x13956f(0x1e9),'value':_0x13956f(0x1be),'title':'node\x20id\x20or\x20\x20browse\x20path\x20comes\x20from\x20injected\x20msg\x20parameter','icon':_0x13956f(0x190)},{'label':_0x13956f(0x19f),'value':'n','icon':_0x13956f(0xc7)},{'label':_0x13956f(0x116),'value':'na','icon':'<i\x20class=\x22fa\x20fa-bookmark\x22/>&nbsp;\x20'},{'label':_0x13956f(0x164),'value':_0x13956f(0x12b),'icon':_0x13956f(0x1a2)},{'label':_0x13956f(0x1d3),'value':'b','icon':_0x13956f(0xf3)},{'label':'Aliased\x20Browse\x20Path','value':'ab','icon':_0x13956f(0x215)}],_0x842ce0=_0x10374d(_0x566ad1[_0x13956f(0x1c4)][_0x13956f(0x203)]()),_0x5ca7c6=_0x120351[_0x13956f(0xca)](_0x12d7b6=>_0x12d7b6[_0x13956f(0x12a)]===_0x842ce0);_0x566ad1['$selectLabel'][_0x13956f(0x101)]()['append'](_0x13956f(0x171)+((_0x5ca7c6===null||_0x5ca7c6===void 0x0?void 0x0:_0x5ca7c6[_0x13956f(0x1c5)])||'')+_0x13956f(0x121)+((_0x5ca7c6===null||_0x5ca7c6===void 0x0?void 0x0:_0x5ca7c6[_0x13956f(0x181)])||'')+_0x13956f(0x17b)),_0x566ad1[_0x13956f(0x111)]=_0x842ce0;const _0x3b8ad3=this;_0x566ad1[_0x13956f(0x137)]=this[_0x13956f(0x202)](_0x120351,{},_0x1d0152=>{const _0x6d0415=_0x13956f,_0x36999c=_0x4d09c2(_0x1d0152);_0x36999c&&_0x3b8ad3[_0x6d0415(0x218)](_0x36999c);const _0x5079fc=_0x120351['find'](_0x2bf6da=>_0x2bf6da[_0x6d0415(0x12a)]===_0x1d0152);_0x566ad1[_0x6d0415(0x111)]=_0x1d0152,_0x566ad1[_0x6d0415(0x104)][_0x6d0415(0x101)]()[_0x6d0415(0x1ac)](_0x6d0415(0x171)+((_0x5079fc===null||_0x5079fc===void 0x0?void 0x0:_0x5079fc[_0x6d0415(0x1c5)])||'')+_0x6d0415(0x121)+((_0x5079fc===null||_0x5079fc===void 0x0?void 0x0:_0x5079fc[_0x6d0415(0x181)])||'')+'</span>');}),_0x566ad1['$menu'][_0x13956f(0x144)](document[_0x13956f(0x143)]),_0x566ad1[_0x13956f(0x137)][_0x13956f(0x1de)](),_0x566ad1[_0x13956f(0x158)][_0x13956f(0xd5)]();},'mode'(){const _0x2f7ce2=this;return _0x4d09c2(_0x2f7ce2['selectedMenuItem']);},'setMode'(_0x2ebd7f){const _0x35bea1=_0xc98f0e,_0x4a8ca0=this,_0x5ac989=_0x25a2e6(_0x2ebd7f);_0x4a8ca0[_0x35bea1(0x111)]=_0x5ac989;},'_create'(){const _0x3c3a86=_0xc98f0e,_0x243afb=this;_0x243afb[_0x3c3a86(0x1c4)]=this[_0x3c3a86(0x20b)],_0x243afb[_0x3c3a86(0x1c4)][_0x3c3a86(0x1cd)](_0x3c3a86(0x178),_0x3c3a86(0x1b0)),_0x243afb[_0x3c3a86(0x152)]=_0x243afb[_0x3c3a86(0x1c4)][_0x3c3a86(0x186)]('<div>')[_0x3c3a86(0xcc)]()[_0x3c3a86(0x180)](_0x3c3a86(0x1ba)),_0x243afb[_0x3c3a86(0xfa)]=$(_0x3c3a86(0xe8)),_0x243afb[_0x3c3a86(0xfa)][_0x3c3a86(0x180)](_0x3c3a86(0x1c1)),_0x243afb[_0x3c3a86(0x1c4)]['replaceWith'](_0x243afb[_0x3c3a86(0xfa)]),_0x243afb[_0x3c3a86(0x1ce)]=$(_0x3c3a86(0xe8))[_0x3c3a86(0x180)](_0x3c3a86(0xf5)),_0x243afb[_0x3c3a86(0xfa)]['append'](_0x243afb[_0x3c3a86(0x1ce)]),_0x243afb[_0x3c3a86(0x1ce)]['append'](_0x243afb[_0x3c3a86(0x1c4)]),_0x243afb[_0x3c3a86(0x200)]=$(_0x3c3a86(0x177)),_0x243afb[_0x3c3a86(0x1c4)][_0x3c3a86(0x1e8)](_0x243afb[_0x3c3a86(0x200)]),_0x243afb[_0x3c3a86(0x200)]['on']('click',function(){return _0x207ed8(this,void 0x0,void 0x0,function*(){const _0x13bcc4=_0x34ff;var _0x10e03d;let _0x14e8dc=![],_0x18de65;!_0x243afb[_0x13bcc4(0x141)]['is'](_0x13bcc4(0x1e7))&&(_0x243afb[_0x13bcc4(0x12e)][_0x13bcc4(0x1de)](),_0x18de65=yield _0x243afb[_0x13bcc4(0x112)](),(_0x18de65!==_0x243afb['currentParent']||((_0x10e03d=_0x243afb['currentParent'])===null||_0x10e03d===void 0x0?void 0x0:_0x10e03d['nodeId'])!==_0x18de65[_0x13bcc4(0x176)])&&(yield _0x243afb[_0x13bcc4(0xde)]()),_0x14e8dc=!![]),_0x243afb[_0x13bcc4(0x141)][_0x13bcc4(0x15e)](),_0x14e8dc&&(yield _0x289e1f(_0x243afb,_0x18de65));});}),_0x243afb[_0x3c3a86(0x1b6)]=$(_0x3c3a86(0xe4)),_0x243afb[_0x3c3a86(0x1c4)]['after'](_0x243afb['$verifyBtn']),_0x243afb[_0x3c3a86(0x1b6)]['on']('click',()=>{const _0x285a10=_0x3c3a86,_0x1bd13a=_0x243afb['mode']();if(!_0x1bd13a)return;this[_0x285a10(0x218)](_0x1bd13a);});const _0x5c5a9d=_0x1849c6=>_0x207ed8(this,void 0x0,void 0x0,function*(){const _0x22e523=_0x3c3a86,_0x1b827d=this;let _0x4734d4=_0x1b827d[_0x22e523(0x1f3)]();if(!_0x4734d4)return;const _0x1e91d0=_0x324322(_0x1b827d),{data:_0x301e91,json:_0x1cf213}=yield _0x2b6bc9(_0x1e91d0,_0x1849c6);if(_0x301e91[_0x22e523(0x1e3)]!==0xc8)return;if(_0x1cf213[_0x22e523(0xe3)][_0x22e523(0x1c0)](/Good/)){const _0x456475=_0x28f48b(_0x1cf213,_0x4734d4);_0x1b827d['$input'][_0x22e523(0x203)](_0x456475),_0x1b827d['$input'][_0x22e523(0x219)]('change');}});{_0x243afb[_0x3c3a86(0x107)]=$('<div>'),_0x243afb[_0x3c3a86(0x1c4)][_0x3c3a86(0x21b)](_0x243afb['$uiSelect']),_0x243afb[_0x3c3a86(0x158)]=$(_0x3c3a86(0x14c))[_0x3c3a86(0x125)](_0x243afb[_0x3c3a86(0x107)]),$('<i\x20class=\x22red-ui-typedInput-icon\x20fa\x20fa-caret-down\x22></i>')[_0x3c3a86(0x15e)](!![])[_0x3c3a86(0x144)](_0x243afb[_0x3c3a86(0x158)]),_0x243afb[_0x3c3a86(0x158)]['on']('click',function(_0x5bf43){const _0x1fc9f2=_0x3c3a86;_0x5bf43[_0x1fc9f2(0x166)](),_0x5bf43['stopPropagation'](),_0x243afb[_0x1fc9f2(0x151)]();}),_0x243afb[_0x3c3a86(0x158)]['on'](_0x3c3a86(0x1d8),function(_0x26272b){const _0x30bbfb=_0x3c3a86;_0x26272b[_0x30bbfb(0x1ff)]===0x28&&_0x243afb[_0x30bbfb(0x151)](),_0x26272b[_0x30bbfb(0xc8)]();})['on'](_0x3c3a86(0x194),function(){const _0x52fd21=_0x3c3a86;_0x243afb[_0x52fd21(0x107)][_0x52fd21(0x180)](_0x52fd21(0x146));})['on'](_0x3c3a86(0x1a0),function(){const _0x43a754=_0x3c3a86;_0x243afb[_0x43a754(0x107)][_0x43a754(0x165)](_0x43a754(0x146));}),_0x243afb[_0x3c3a86(0x104)]=$('<span\x20class=\x22red-ui-typedInput-type-label\x22></span>')[_0x3c3a86(0x144)](_0x243afb['$selectTrigger']);}this[_0x3c3a86(0x179)]();!_0x243afb[_0x3c3a86(0x1c4)]['attr'](_0x3c3a86(0x17d))&&_0x243afb[_0x3c3a86(0x1c4)]['attr'](_0x3c3a86(0x17d),'enter\x20a\x20nodeId\x20or\x20a\x20browsePath\x20');_0x243afb[_0x3c3a86(0x12e)]=$(_0x3c3a86(0x1d1)),_0x243afb[_0x3c3a86(0x12e)]['hide'](),_0x243afb[_0x3c3a86(0xfa)]['append'](_0x243afb[_0x3c3a86(0x12e)]),_0x243afb['$dropdown']=$('<div/>')[_0x3c3a86(0x180)](_0x3c3a86(0x19b))['hide']()['appendTo'](_0x243afb[_0x3c3a86(0xfa)]),_0x243afb[_0x3c3a86(0x183)]=$(_0x3c3a86(0x173))['appendTo'](_0x243afb[_0x3c3a86(0x141)]),this[_0x3c3a86(0xde)]();const _0xd8230=(_0x4fa918,_0x3058fe)=>{const _0x51516c=_0x3c3a86,_0x927587=0x14,_0x3092cd=0x14,_0x53e1be=_0x4fa918[_0x51516c(0x18f)](),_0x329fb7=_0x3058fe;if(_0x329fb7[_0x51516c(0xd4)]>=_0x53e1be[_0x51516c(0xfd)]&&_0x329fb7['pageX']<=_0x53e1be['left']+_0x927587&&_0x329fb7[_0x51516c(0x188)]>=_0x53e1be[_0x51516c(0x1a4)]&&_0x329fb7[_0x51516c(0x188)]<=_0x53e1be[_0x51516c(0x1a4)]+_0x3092cd)return!![];return![];},_0x1a9324=_0xd60242=>_0x207ed8(this,void 0x0,void 0x0,function*(){const _0x71c430=_0x3c3a86;if(_0xd60242[_0x71c430(0x142)]('expandable'))_0x3f2a99(_0x243afb,_0xd60242);else{if(_0xd60242[_0x71c430(0x142)]('expanded'))_0xd60242[_0x71c430(0x18b)]('ul')[_0x71c430(0x15e)](),_0xd60242['toggleClass'](_0x71c430(0x18c));else{if(_0xd60242[_0x71c430(0x18b)]('ul')['children']()[_0x71c430(0x115)]>0x0)_0xd60242['children']('ul')[_0x71c430(0x15e)](),_0xd60242[_0x71c430(0x1af)](_0x71c430(0x18c));else;}}});_0x243afb[_0x3c3a86(0x183)]['on'](_0x3c3a86(0xe5),'li',function(_0x24e182){const _0x4a039b=_0x3c3a86;var _0x579426,_0x4d86ad;_0x24e182['stopPropagation']();let _0x3425b3=$(this);if(_0xd8230(_0x3425b3,_0x24e182))_0x1a9324(_0x3425b3);else{const _0x2af1bb=_0x3425b3[_0x4a039b(0x1c3)](_0x4a039b(0x12a)),_0x1d18a3=_0x3425b3[_0x4a039b(0x1c3)](_0x4a039b(0x1e6));if(_0x243afb['options']['isSelectable']&&!_0x243afb[_0x4a039b(0x139)][_0x4a039b(0xdb)](_0x1d18a3))return;_0x243afb[_0x4a039b(0x1c4)][_0x4a039b(0x1c3)]('reference',_0x1d18a3),((_0x579426=_0x1d18a3[_0x4a039b(0x17c)])===null||_0x579426===void 0x0?void 0x0:_0x579426['text'])||((_0x4d86ad=_0x1d18a3[_0x4a039b(0x1f6)])===null||_0x4d86ad===void 0x0?void 0x0:_0x4d86ad[_0x4a039b(0xcd)])||_0x1d18a3['nodeId'][_0x4a039b(0x1d5)]();let _0x1fcc38=_0x243afb['mode']();!_0x1fcc38&&(_0x1fcc38=_0x4a039b(0x176),_0x243afb['setMode'](_0x1fcc38)),_0x5c5a9d(_0x2af1bb)[_0x4a039b(0x149)](()=>{_0x243afb['$dropdown']['hide']();})[_0x4a039b(0x163)](_0x3abd28=>{const _0x279b52=_0x4a039b;_0x243afb[_0x279b52(0x141)]['hide']();});}}),_0x243afb['$tree']['on'](_0x3c3a86(0x16e),'li',function(_0x55ce96){const _0x51dcc0=_0x3c3a86;_0x55ce96[_0x51dcc0(0xc8)]();let _0x205231=$(this);_0xd8230(_0x205231,_0x55ce96)&&_0x1a9324(_0x205231),_0x33feb8(_0x243afb,_0x205231);}),$(document)['on'](_0x3c3a86(0x16e),function(_0x195ac9){const _0x39fa26=_0x3c3a86;!$(_0x195ac9['target'])[_0x39fa26(0x126)](_0x243afb[_0x39fa26(0xfa)])[_0x39fa26(0x115)]&&_0x243afb[_0x39fa26(0x141)][_0x39fa26(0x1de)]();});}});},_0x1bf665=()=>{const _0x3adab3=_0x258bfd,_0x493d7b=$(_0x3adab3(0x106)),_0x948a0e=_0x493d7b[_0x3adab3(0x203)](),_0x3bb8e4=RED[_0x3adab3(0x1b3)][_0x3adab3(0x1ad)](_0x948a0e);if(!_0x3bb8e4)return undefined;const {endpoint:_0x1770ef,securityMode:_0x1637b4,securityPolicy:_0x26a62f,userIdentityType:_0x33ee34,credentials:_0x3d4e35,namespaceAliases:_0x3d4114}=_0x3bb8e4,_0xb4cda9={'endpoint':_0x1770ef,'securityMode':_0x1637b4,'securityPolicy':_0x26a62f,'userIdentityType':_0x33ee34,'credentials':_0x3d4e35,'namespaceAliases':_0x3d4114};return _0xb4cda9;},_0x45a3a9=()=>{const _0x6b65af=_0x258bfd,_0x44632d=$(_0x6b65af(0x106)),_0x4d7b9c=_0x44632d[_0x6b65af(0x203)](),_0x136f87=_0x1bf665();if(!_0x136f87)return undefined;const _0x1a4e94=_0x136f87['namespaceAliases'];return Object['assign']({'namespaceAliases':_0x1a4e94,'id':_0x4d7b9c},_0x136f87);},_0x15dbbd=()=>{return{'endpointNode':_0x45a3a9};},_0x3c5c67=()=>{const _0x5cf988=_0x258bfd,_0x5ced4e=$(_0x5cf988(0x11e));if(_0x5ced4e[_0x5cf988(0x115)]){const _0x5e9054=$(_0x5cf988(0x12c),{'src':'/opcua-for-node-red/support-frame.html','scrolling':'no','style':'background-color:transparent;overflow:hidden;border:3px','allowtransparency':_0x5cf988(0xf6),'width':_0x5cf988(0x1a9),'height':'30px'});_0x5ced4e[_0x5cf988(0x1ac)](_0x5e9054),_0x5e9054[_0x5cf988(0x1cd)]({'position':'absolute','right':_0x5cf988(0x1f8),'bottom':_0x5cf988(0x122)});}};RED[_0x258bfd(0x1b3)][_0x258bfd(0x119)](_0x258bfd(0x196),{'category':_0x258bfd(0xcf),'color':'#C0DEED','align':_0x258bfd(0x172),'icon':_0x258bfd(0x15d),'paletteLabel':_0x258bfd(0xf2),'defaults':{'inputs':{'value':0x1},'output':{'value':0x4},'name':{'value':''},'endpoint':{'value':'','required':!![],'type':'OpcUa-Endpoint2'},'historyReadParam':{'value':{'type':_0x258bfd(0x1e5),'endTime':'1m\x20ago','startTime':_0x258bfd(0x114),'numValuesPerNode':0x64,'returnBounds':!![]},'required':!![],'validate':_0x4e8058=>{if(_0x4e8058==='')return![];return!![];}},'nodeId':{'value':'','required':![]},'outputType':{'value':_0x258bfd(0x132),'required':!![]}},'outputs':0x2,'label'(){const _0x4bf2a3=_0x258bfd;return this[_0x4bf2a3(0xcd)]||_0x4bf2a3(0x1e0);},'labelStyle'(){const _0x2b1e31=_0x258bfd;return this['name']?_0x2b1e31(0x174):'';},'oneditprepare'(){const _0x1ae8f5=_0x258bfd,_0x188064=this;_0x29ab17(),_0x3c5c67(),_0x188064[_0x1ae8f5(0x1f7)]=0x1;const _0x35c748=$(_0x1ae8f5(0xd6));_0x35c748[_0x1ae8f5(0x113)](Object['assign'](Object['assign']({},_0x15dbbd()),{'isSelectable'(_0x3830f3){const _0x7813bb=_0x1ae8f5;return _0x3830f3[_0x7813bb(0x10e)]===_0x7813bb(0xfb);}})),$(_0x1ae8f5(0x160))[_0x1ae8f5(0x203)](_0x188064[_0x1ae8f5(0x1b5)][_0x1ae8f5(0x136)]);switch(_0x188064[_0x1ae8f5(0x1b5)]['type']){case'raw':$(_0x1ae8f5(0x1bf))[_0x1ae8f5(0x203)](_0x188064['historyReadParam'][_0x1ae8f5(0x1dc)]),$(_0x1ae8f5(0x11b))[_0x1ae8f5(0x203)](_0x188064['historyReadParam'][_0x1ae8f5(0xfe)]),$('#node-input-raw-numValuesPerNode')[_0x1ae8f5(0x203)](_0x188064[_0x1ae8f5(0x1b5)][_0x1ae8f5(0xd0)]),$(_0x1ae8f5(0x1c7))[_0x1ae8f5(0x168)](_0x1ae8f5(0x128),_0x188064[_0x1ae8f5(0x1b5)]['returnBounds']);break;case _0x1ae8f5(0x204):$('#node-input-modified-startTime')[_0x1ae8f5(0x203)](_0x188064[_0x1ae8f5(0x1b5)][_0x1ae8f5(0x1dc)]),$(_0x1ae8f5(0x134))[_0x1ae8f5(0x203)](_0x188064[_0x1ae8f5(0x1b5)][_0x1ae8f5(0xfe)]),$(_0x1ae8f5(0x103))[_0x1ae8f5(0x203)](_0x188064[_0x1ae8f5(0x1b5)][_0x1ae8f5(0xd0)]),$(_0x1ae8f5(0x10c))[_0x1ae8f5(0x168)](_0x1ae8f5(0x128),_0x188064['historyReadParam'][_0x1ae8f5(0x19a)]);break;case _0x1ae8f5(0x148):_0x188064[_0x1ae8f5(0x1b5)][_0x1ae8f5(0x20e)]=_0x188064[_0x1ae8f5(0x1b5)]['aggregateConfiguration']||{},$(_0x1ae8f5(0xe1))['val'](_0x188064[_0x1ae8f5(0x1b5)][_0x1ae8f5(0x1dc)]),$('#node-input-processed-details-endTime')[_0x1ae8f5(0x203)](_0x188064['historyReadParam'][_0x1ae8f5(0xfe)]),$(_0x1ae8f5(0xee))[_0x1ae8f5(0x203)](_0x188064['historyReadParam'][_0x1ae8f5(0x1e2)]),$('#node-input-processed-details-aggregateType')['val'](_0x188064[_0x1ae8f5(0x1b5)][_0x1ae8f5(0x157)]),$(_0x1ae8f5(0x205))[_0x1ae8f5(0x168)](_0x1ae8f5(0x128),_0x188064[_0x1ae8f5(0x1b5)][_0x1ae8f5(0x20e)][_0x1ae8f5(0x14a)]),$(_0x1ae8f5(0x191))[_0x1ae8f5(0x168)](_0x1ae8f5(0x128),_0x188064[_0x1ae8f5(0x1b5)][_0x1ae8f5(0x20e)][_0x1ae8f5(0x1ec)]),$(_0x1ae8f5(0x1f1))['val'](_0x188064['historyReadParam'][_0x1ae8f5(0x20e)]['percentDataBad']),$(_0x1ae8f5(0x16b))[_0x1ae8f5(0x203)](_0x188064[_0x1ae8f5(0x1b5)]['aggregateConfiguration']['percentDataGood']),$(_0x1ae8f5(0xfc))[_0x1ae8f5(0x168)](_0x1ae8f5(0x128),_0x188064[_0x1ae8f5(0x1b5)][_0x1ae8f5(0x20e)][_0x1ae8f5(0x201)]);break;}{function _0x575d20(){const _0x493398=_0x1ae8f5;$('#section-raw')[_0x493398(0x1de)](),$(_0x493398(0x208))[_0x493398(0x1de)](),$(_0x493398(0x130))[_0x493398(0x1de)](),$(_0x493398(0x1bb))[_0x493398(0x1de)](),$('#section-annotation-data')[_0x493398(0x1de)](),$(_0x493398(0x14f))[_0x493398(0x1de)]();}function _0x48c08e(){const _0x18e20f=_0x1ae8f5;_0x575d20();var _0x8c85f6=$(_0x18e20f(0x160))[_0x18e20f(0x203)]();$(_0x18e20f(0xed)+_0x8c85f6)[_0x18e20f(0xd5)]();}$(_0x1ae8f5(0x160))['on'](_0x1ae8f5(0x162),_0x48c08e),_0x48c08e();}},'oneditsave'(){const _0xa8eefe=_0x258bfd,_0x57db74=_0x1687b9=>_0x1687b9['val']()==undefined?'':_0x1687b9['val']()[_0xa8eefe(0x1d5)](),_0x5b22c2=_0x139af9=>_0x139af9[_0xa8eefe(0x203)]()==undefined?0x0:_0x139af9[_0xa8eefe(0x203)](),_0x5e86cd=$(_0xa8eefe(0x160))[_0xa8eefe(0x203)]();switch(_0x5e86cd){case'raw':this[_0xa8eefe(0x1b5)]={'type':_0xa8eefe(0x1e5),'startTime':_0x57db74($(_0xa8eefe(0x1bf))),'endTime':_0x57db74($(_0xa8eefe(0x11b))),'numValuesPerNode':_0x5b22c2($(_0xa8eefe(0x16c))),'returnBounds':$('#node-input-returnBounds')[_0xa8eefe(0x168)](_0xa8eefe(0x128))};break;case _0xa8eefe(0x204):this[_0xa8eefe(0x1b5)]={'type':_0xa8eefe(0x204),'startTime':_0x57db74($('#node-input-modified-startTime')),'endTime':_0x57db74($('#node-input-modified-endTime')),'numValuesPerNode':_0x5b22c2($(_0xa8eefe(0x103))),'returnBounds':$(_0xa8eefe(0x10c))['prop'](_0xa8eefe(0x128))};break;case _0xa8eefe(0x148):this[_0xa8eefe(0x1b5)]={'type':_0xa8eefe(0x148),'startTime':_0x57db74($(_0xa8eefe(0xe1))),'endTime':_0x57db74($(_0xa8eefe(0x1cc))),'processingInterval':_0x5b22c2($(_0xa8eefe(0xee))),'aggregateType':_0x57db74($(_0xa8eefe(0x10d))),'aggregateConfiguration':{'useServerCapabilitiesDefaults':$('#node-input-processed-details-aggregateConfiguration-useServerCapabilitiesDefaults')['prop'](_0xa8eefe(0x128)),'treatUncertainAsBad':$(_0xa8eefe(0x191))[_0xa8eefe(0x168)](_0xa8eefe(0x128)),'percentDataBad':_0x5b22c2($(_0xa8eefe(0x1f1))),'percentDataGood':_0x5b22c2($(_0xa8eefe(0x16b))),'useSlopedExtrapolation':$(_0xa8eefe(0xfc))[_0xa8eefe(0x168)]('checked')}};break;}}});}()));function _0x34ff(_0x5541d0,_0x572922){const _0x18c28c=_0x18c2();return _0x34ff=function(_0x34ff3a,_0x57f1f0){_0x34ff3a=_0x34ff3a-0xc6;let _0x572dcf=_0x18c28c[_0x34ff3a];return _0x572dcf;},_0x34ff(_0x5541d0,_0x572922);}function _0x18c2(){const _0x3280e5=['16px','mousedown.red-ui-typedInput-close-property-select','json','prependTo','closest','nsuNodeID','checked','apply','value','nsu','<iframe></iframe>','63244ZAMMPh','$info','ns=0;i=35','#section-processed-details','nodeId_aliased','Value','height','#node-input-modified-endTime','DisplayName','type','$menu','parentNode','options','1968kIYXGX','</span><ul></ul></li>','POST','push','animate','remove','!!failure!!','$dropdown','hasClass','body','appendTo','.tree-text:first','red-ui-typedInput-focus','application/json','processed-details','then','useServerCapabilitiesDefaults','multiple','<button\x20type=\x22button\x22\x20tabindex=\x220\x22></button>','ReferenceType','node\x20class:\x20','#section-event','nodeIds','_showTypeMenu','$elementDiv','ns=0;i=46','fetched','nodeId_nsu','localeCompare','aggregateType','$selectTrigger','sterfive-typedInput-options\x20sterfive-online-menu','SuppressedError','aliasedNodeId','throw','../../icons/opcuanodeLogo.png','toggle','Objects','#select-history-type','label','change','catch','NodeId\x20with\x20namespace\x20Urn','removeClass','preventDefault','stringify','prop','13ovtAZh','VariableType','#node-input-processed-details-aggregateConfiguration-percentDataGood','#node-input-raw-numValuesPerNode','.spinner','click','HasSubtype','rgba(61,\x2060,\x204,\x200.525)','<span\x20title=','right','<ul\x20class=\x22sterfive-tree\x22></ul>','node_label_italic','72982ZGXVYw','nodeId','<button\x20title=\x22open\x20OPCUA\x20AddressSpace\x20Browser\x22><i\x20class=\x22fa\x20fa-sitemap\x22></i></button>','border','_initMenu','DataType','</span>','displayName','placeholder','DodgerBlue','Value\x20is\x20not\x20verified','addClass','icon','loading','$tree','Good','Both','wrap','View','pageY','IsForward','bp_aliased','children','expandable\x20expanded','mask-image:\x20url(','i=61','offset','<i\x20class=\x22fa\x20fa-envelope-open-o\x22/>','#node-input-processed-details-aggregateConfiguration-treatUncertainAsBad','selected','already\x20fetched','focus','endpointNode','OpcUa-Client2-HistoryRead','Method','browse\x20path:\x20','function','returnBounds','sterfive-dropdown','attr','<a\x20href=\x22#\x22></a>','/opcua-for-node-red','NodeId','blur','ns=0;i=61','<i\x20class=\x22fa\x20fa-id-card\x22/>&nbsp;\x20','sterfive-info','top','red-ui-typedInput-icon\x20','prev','typeDefinition','opts','180px','browseResult','requestedNodeId','append','node',':focus','toggleClass','none','203Bikoay','/walk-backward','nodes','fa-cog','historyReadParam','$verifyBtn','Object','<li\x20key=\x22','3PKGIMJ','main-wrapper','#section-at-time','slideDown','bp_indexed','msg','#node-input-raw-startTime','match','sterfive-combo-box','references','data','$input','title','25wuLDkd','#node-input-returnBounds','BrowseName','\x22}><span\x20class=\x22tree-text\x22\x20title=','</li>','already\x20loading','#node-input-processed-details-endTime','css','$inputGroup','HasTypeDefinition','fa-text-width','<div\x20class=\x22sterfive-info-text\x22></div>','red-ui-typedInput-icon','BrowsePath','text','toString','suppressed','pointer-events','keydown','nodeId:\x20','HasComponent','7400CuyqKZ','startTime','SandyBrown','hide','namespaceAliases','OPCUA\x20Client\x20HistoryRead','_hideMenu','processingInterval','status','<input\x20type=\x22checkbox\x22>','raw','reference',':visible','after','msg.','callback',';\x22></i>\x20','treatUncertainAsBad','failure','ObjectType','ns=0;i=34','<i\x20class=\x22fa\x20fa-font\x22/i>\x20','#node-input-processed-details-aggregateConfiguration-percentDataBad','505808yKiFVR','mode','relativePath','/browse','browseName','inputs','20px','statusCode:\x20','<div\x20class=\x22spinner\x22></div>','mousedown','Unspecified','SeaGreen','ns=0;i=45','keyCode','$toggleTreeBtn','useSlopedExtrapolation','_createMenu','val','modified','#node-input-processed-details-aggregateConfiguration-useServerCapabilitiesDefaults','Organizes','aliased\x20NodeId:\x20','#section-modified','\x22\x20style=\x22color:','[value=\x27','element','Forward','><i\x20class=\x22fa\x20','aggregateConfiguration','fa-object-group','isTypeRef','expandable','filter','<div>','fa-list-alt','<i\x20class=\x22fa\x20fa-bookmark\x22/><i\x20class=\x22fa\x20fa-fighter-jet\x22/>&nbsp;','ns=0;i=85','statusText','verify','trigger','fetching\x20failed\x20with\x20error','before','position','<i\x20class=\x22fa\x20fa-tag\x22/>1\x20&nbsp;\x20','stopPropagation','off','find','__parentNode','parent','name','SteelBlue','opcua','numValuesPerNode','browsePath','expanded','error','pageX','show','#node-input-nodeId','<i>','referenceTypeId','log','DarkOrange','isSelectable','170LmQeKL','sterfive.nodeBrowser','reset','fa-sliders','Inverse','#node-input-processed-details-startTime','NodeClass','statusCode','<button\x20title=\x22verify\x20nodeId\x20or\x20browsePath\x22><i\x20class=\x22fa\x20fa-refresh\x22></i></button>','dblclick','TypeDefinition','err','<div/>','aliased\x20browsePath:\x20','message','_showMenu','target','#section-','#node-input-processed-details-processingInterval','next','129843CmqPBM','aliasedBrowsePath','read-history','<i\x20class=\x22fa\x20fa-tag\x22/><i\x20class=\x22fa\x20fa-fighter-jet\x22/>&nbsp;','forEach','sterfive-input-group','true','each','Invalid','li\x20>\x20.tree-text','$combo','Variable','#node-input-processed-details-aggregateConfiguration-useSlopedExtrapolation','left','endTime','string','indexOf','empty','mousedown.red-ui-typedInput-focus-block','#node-input-modified-numValuesPerNode','$selectLabel','done','#node-input-endpoint','$uiSelect','_delay','2201881kullyH','<li>error\x20','disarmClick','#node-input-modified-returnBounds','#node-input-processed-details-aggregateType','nodeClass','<li><i\x20class=\x22fa\x20fa-error\x22\x20style=\x22color:red;\x22></i>no\x20reference\x20!<ul></ul></li>','call','selectedMenuItem','resolveParentNode','nodeBrowser','11m\x20ago','length','Aliased\x20NodeId',':first','tabindex','registerType','widget','#node-input-raw-endTime','220122gJdkkx','CadetBlue','.red-ui-tray-body','endpoint','HasProperty','>&nbsp;\x20'];_0x18c2=function(){return _0x3280e5;};return _0x18c2();}
9
8
  </script>
10
9
  <script type="text/x-red" data-template-name="OpcUa-Client2-HistoryRead">
11
10
  <style>