@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.
- package/LICENSE.md +1 -1
- package/all.js +4 -150
- package/config-panel/assets/index-CxGeB_Tt.css +1 -0
- package/config-panel/assets/index-DgIjB-ey.js +49 -0
- package/config-panel/index.html +5 -3
- package/examples/coffee-machine-2.json +3393 -0
- package/examples/svg_watertank.html +17 -0
- package/examples/tank.jsx +33 -0
- package/package.json +2 -1
- package/source/OpcUa-Client2-Browse/OpcUa-Client2-Browse.html +3 -4
- package/source/OpcUa-Client2-Call/OpcUa-Client2-Call.html +7 -2
- package/source/OpcUa-Client2-Explore/OpcUa-Client2-Explore.html +1 -2
- package/source/OpcUa-Client2-ExtensionObject/OpcUa-Client2-ExtensionObject.html +1 -2
- package/source/OpcUa-Client2-FileOperation/OpcUa-Client2-FileOperation.css +2 -0
- package/source/OpcUa-Client2-FileOperation/OpcUa-Client2-FileOperation.html +75 -0
- package/source/OpcUa-Client2-FileOperation/OpcUa-Client2-FileOperation.js +2 -0
- package/source/OpcUa-Client2-HistoryRead/OpcUa-Client2-HistoryRead.html +1 -2
- package/source/OpcUa-Client2-Monitor/OpcUa-Client2-Monitor.html +1 -2
- package/source/OpcUa-Client2-MonitorEvent/OpcUa-Client2-MonitorEvent.html +1 -2
- package/source/OpcUa-Client2-Read/OpcUa-Client2-Read.html +1 -2
- package/source/OpcUa-Client2-Write/OpcUa-Client2-Write.html +1 -2
- package/source/OpcUa-Endpoint2/OpcUa-Endpoint2.html +1 -2
- package/config-panel/assets/index-DDkINW5U.js +0 -49
- package/config-panel/assets/index-DayGs2U8.css +0 -1
@@ -4,8 +4,7 @@
|
|
4
4
|
</style>
|
5
5
|
|
6
6
|
<script type="text/javascript">
|
7
|
-
function _0x1f76(){const _0x2f85b5=['next','each','30px','body','mousedown.red-ui-typedInput-focus-block','trigger','top','multiple','scrollTop','remove','DisplayName','fetched','dblclick','fa-question','\x22\x20style=\x22color:','closest','><i\x20class=\x22fa\x20','nodeClass','val','#node-input-nodeId','<i>','referenceTypeId','tabindex','ns=0;i=35','right','prependTo','ReferenceType','browseName','<i\x20class=\x22fa\x20fa-id-card\x22/> \x20','browsePath','16px','application/json','$inputGroup','pageY','off','Aliased\x20NodeId','preventDefault','aliasedNodeId','sterfive-typedInput-options\x20sterfive-online-menu','selected','value','empty','show','Both','<button\x20title=\x22verify\x20nodeId\x20or\x20browsePath\x22><i\x20class=\x22fa\x20fa-refresh\x22></i></button>','ns=0;i=85','nsuNodeID','Inverse','label','toggle','VariableType','mode','mask-image:\x20url(','left','indexOf','expandable','function','$elementDiv','Organizes','status','nodeId:\x20','title','css','json','/opcua-for-node-red','target','fa-cog','attr','statusCode:\x20','#node-input-endpoint','sterfive-input-error','log','ns=0;i=46','browseResult','POST','aliased\x20browsePath:\x20','border','click','nodes','endpointNode','<li><i\x20class=\x22fa\x20fa-error\x22\x20style=\x22color:red;\x22></i>no\x20reference\x20!<ul></ul></li>','Value\x20is\x20not\x20verified','$input','6521996GZnjSL','sterfive.nodeBrowser','DodgerBlue','_initMenu','hasClass','msg','find','element','_hideMenu','<input\x20type=\x22checkbox\x22>','_delay','options','installing\x20iframe','statusText','HasTypeDefinition','removeClass','statusCode','icon','stringify','grey','reference','HasChild','already\x20loading','Aliased\x20Browse\x20Path','none','sort','toString','nsu','18px','parentNode','wrap','<span\x20title=','Good','join','opts','typeDefinition','<div>','</li>','7349340qXVolC','forEach','node\x20id\x20or\x20\x20browse\x20path\x20comes\x20from\x20injected\x20msg\x20parameter','nodeIds','34177787RKfuLG','text','selectedMenuItem','nsu\x20nodeId:\x20','\x22}><span\x20class=\x22tree-text\x22\x20title=','fa-folder','_showTypeMenu','isSelectable','ns=0;i=47','catch','keyCode','Unspecified','offset','Method','error','append','Invalid','callback','<iframe></iframe>','nodeId',':visible','<button\x20title=\x22open\x20OPCUA\x20AddressSpace\x20Browser\x22><i\x20class=\x22fa\x20fa-sitemap\x22></i></button>','i=61','$menu','displayName','!!failure!!','ObjectType','loading','name','CadetBlue','keydown','setMode','DarkOrange','message','> \x20','<i\x20class=\x22red-ui-typedInput-icon\x20fa\x20fa-caret-down\x22></i>','sterfive-info','SandyBrown','before','node','red-ui-typedInput-focus','replaceWith','match','<div/>','auto',':focus','expandable\x20expanded','children','currentParent','height','baseUrl','bp_indexed','4235637vozerN','$info','$toggleTreeBtn','BrowsePath','stopPropagation','addClass','filter','expanded','180px','<i\x20class=\x22fa\x20fa-tag\x22/>1\x20 \x20','failure','opcua','namespaceAliases','mousedown','DataType','push','ns=0;i=40','appendTo','BrowseName','prop','IsForward','sterfive-combo-box','OpcUa-Client2-Write','</span>','<ul\x20class=\x22sterfive-tree\x22></ul>','prev','resolveParentNode','/opcua-for-node-red/support-frame.html','/walk-backward','/checkNodeId','nodeId_aliased','$selectLabel','_showMenu','653809oBYOkd','background-color:transparent;overflow:hidden;border:3px','disarmClick','localeCompare','HasComponent','<i\x20class=\x22fa\x20fa-bookmark\x22/><i\x20class=\x22fa\x20fa-fighter-jet\x22/> ','TypeDefinition','124415MmbOfC',':first','toggleClass','$selectTrigger','true','fetching\x20failed\x20with\x20error','length','pointer-events','<div\x20class=\x22spinner\x22></div>','Value','endpoint','assign','[value=\x27','$dropdown','View','<div\x20class=\x22sterfive-info-text\x22></div>','$verifyBtn','references','__parentNode','requestedNodeId','<i\x20class=\x22fa\x20fa-bookmark\x22/> \x20','blur','red-ui-typedInput-icon\x20','rgba(61,\x2060,\x204,\x200.525)','Objects','<i\x20class=\x22fa\x20fa-envelope-open-o\x22/>','.spinner','slideDown','</span><ul></ul></li>','nodeBrowser','pageX','OPCUA\x20Client\x20Write','../../icons/opcuanodeLogo.png','then','aliased\x20NodeId:\x20','browse\x20path:\x20','$uiSelect','hide','<i\x20class=\x22fa\x20fa-tag\x22/><i\x20class=\x22fa\x20fa-fighter-jet\x22/> ','nodeId_nsu','focus','relativePath','li\x20>\x20.tree-text','SuppressedError','input[type=\x22checkbox\x22]','enter\x20a\x20nodeId\x20or\x20a\x20browsePath\x20','HasProperty','reset','apply','Forward','<a\x20href=\x22#\x22></a>','fa-list-alt','Variable','HasSubtype','position','fa-sliders','registerType','throw','Object','OpcUa-Endpoint2','change','err','$tree','checked','1723090ncsDaM','<li>error\x20','aliasedBrowsePath','absolute',';\x22></i>\x20','data','isTypeRef','$combo'];_0x1f76=function(){return _0x2f85b5;};return _0x1f76();}function _0x1ce5(_0x5a33f4,_0x2c2f38){const _0x1f7681=_0x1f76();return _0x1ce5=function(_0x1ce5e3,_0x36ec23){_0x1ce5e3=_0x1ce5e3-0x168;let _0x303c2e=_0x1f7681[_0x1ce5e3];return _0x303c2e;},_0x1ce5(_0x5a33f4,_0x2c2f38);}(function(_0x3d65fe,_0x3c2ef6){const _0x41901f=_0x1ce5,_0x1034dd=_0x3d65fe();while(!![]){try{const _0x57e2df=-parseInt(_0x41901f(0x21e))/0x1+parseInt(_0x41901f(0x265))/0x2+-parseInt(_0x41901f(0x1fd))/0x3+-parseInt(_0x41901f(0x19f))/0x4+parseInt(_0x41901f(0x225))/0x5+-parseInt(_0x41901f(0x1c5))/0x6+parseInt(_0x41901f(0x1c9))/0x7;if(_0x57e2df===_0x3c2ef6)break;else _0x1034dd['push'](_0x1034dd['shift']());}catch(_0xfb2150){_0x1034dd['push'](_0x1034dd['shift']());}}}(_0x1f76,0xcf014),(function(){'use strict';const _0x5109f3=_0x1ce5;function _0x552655(_0x372f2e,_0x228397,_0x5764e1,_0x29023f){function _0x2ce0c8(_0xbe6afc){return _0xbe6afc instanceof _0x5764e1?_0xbe6afc:new _0x5764e1(function(_0x37900d){_0x37900d(_0xbe6afc);});}return new(_0x5764e1||(_0x5764e1=Promise))(function(_0x46fab4,_0x596a17){const _0x49afea=_0x1ce5;function _0x144065(_0x504816){const _0x4f879a=_0x1ce5;try{_0x1e6442(_0x29023f[_0x4f879a(0x26d)](_0x504816));}catch(_0xc9fe39){_0x596a17(_0xc9fe39);}}function _0x2ae54f(_0x400de7){const _0x11887a=_0x1ce5;try{_0x1e6442(_0x29023f[_0x11887a(0x25e)](_0x400de7));}catch(_0x39e30b){_0x596a17(_0x39e30b);}}function _0x1e6442(_0x4e0a25){const _0x4376fc=_0x1ce5;_0x4e0a25['done']?_0x46fab4(_0x4e0a25[_0x4376fc(0x174)]):_0x2ce0c8(_0x4e0a25[_0x4376fc(0x174)])['then'](_0x144065,_0x2ae54f);}_0x1e6442((_0x29023f=_0x29023f[_0x49afea(0x255)](_0x372f2e,_0x228397||[]))[_0x49afea(0x26d)]());});}typeof SuppressedError===_0x5109f3(0x184)?SuppressedError:function(_0x18ec4a,_0x2ccf83,_0x3a0505){const _0x3d9cf2=_0x5109f3;var _0x5d3634=new Error(_0x3a0505);return _0x5d3634[_0x3d9cf2(0x1e5)]=_0x3d9cf2(0x250),_0x5d3634[_0x3d9cf2(0x1d7)]=_0x18ec4a,_0x5d3634['suppressed']=_0x2ccf83,_0x5d3634;};const _0x1847a6=_0x5109f3(0x284),_0xd1c8bf='ns=0;i=61',_0x43a9f2=_0x5109f3(0x1d1),_0x32e6f1=_0x5109f3(0x194),_0x2fb16b='ns=0;i=34',_0x4b50d4='ns=0;i=45',_0x5c5ee2=_0x5109f3(0x20d);var _0x2dcf7e;(function(_0xcc2e68){const _0x3eb10f=_0x5109f3;_0xcc2e68[_0xcc2e68['Forward']=0x0]='Forward',_0xcc2e68[_0xcc2e68[_0x3eb10f(0x17b)]=0x1]='Inverse',_0xcc2e68[_0xcc2e68['Both']=0x2]=_0x3eb10f(0x177),_0xcc2e68[_0xcc2e68[_0x3eb10f(0x1d9)]=0x3]=_0x3eb10f(0x1d9);}(_0x2dcf7e||(_0x2dcf7e={})));var _0x4c0399;(function(_0x2f18fe){const _0x4b98df=_0x5109f3;_0x2f18fe[_0x2f18fe[_0x4b98df(0x1d4)]=0x0]=_0x4b98df(0x1d4),_0x2f18fe[_0x2f18fe[_0x4b98df(0x25f)]=0x1]=_0x4b98df(0x25f),_0x2f18fe[_0x2f18fe[_0x4b98df(0x259)]=0x2]=_0x4b98df(0x259),_0x2f18fe[_0x2f18fe['Method']=0x4]=_0x4b98df(0x1d6),_0x2f18fe[_0x2f18fe['ObjectType']=0x8]='ObjectType',_0x2f18fe[_0x2f18fe['VariableType']=0x10]=_0x4b98df(0x17e),_0x2f18fe[_0x2f18fe[_0x4b98df(0x287)]=0x20]='ReferenceType',_0x2f18fe[_0x2f18fe['DataType']=0x40]='DataType',_0x2f18fe[_0x2f18fe['View']=0x80]='View';}(_0x4c0399||(_0x4c0399={})));var _0x304f82;(function(_0x164b50){const _0x2d91d8=_0x5109f3;_0x164b50[_0x164b50['Object']=0x1]=_0x2d91d8(0x25f),_0x164b50[_0x164b50[_0x2d91d8(0x259)]=0x2]=_0x2d91d8(0x259),_0x164b50[_0x164b50[_0x2d91d8(0x1d6)]=0x4]=_0x2d91d8(0x1d6),_0x164b50[_0x164b50['ObjectType']=0x8]=_0x2d91d8(0x1e3),_0x164b50[_0x164b50[_0x2d91d8(0x17e)]=0x10]=_0x2d91d8(0x17e),_0x164b50[_0x164b50[_0x2d91d8(0x287)]=0x20]=_0x2d91d8(0x287),_0x164b50[_0x164b50[_0x2d91d8(0x20b)]=0x40]=_0x2d91d8(0x20b),_0x164b50[_0x164b50['View']=0x80]=_0x2d91d8(0x233);}(_0x304f82||(_0x304f82={})));var _0x4f018b;(function(_0x7b7dc8){const _0x15cbd8=_0x5109f3;_0x7b7dc8[_0x7b7dc8['ReferenceType']=0x1]=_0x15cbd8(0x287),_0x7b7dc8[_0x7b7dc8[_0x15cbd8(0x211)]=0x2]=_0x15cbd8(0x211),_0x7b7dc8[_0x7b7dc8['NodeClass']=0x4]='NodeClass',_0x7b7dc8[_0x7b7dc8[_0x15cbd8(0x20f)]=0x8]='BrowseName',_0x7b7dc8[_0x7b7dc8['DisplayName']=0x10]=_0x15cbd8(0x277),_0x7b7dc8[_0x7b7dc8['TypeDefinition']=0x20]=_0x15cbd8(0x224);}(_0x4f018b||(_0x4f018b={})));function _0xb93e35(_0x160436){const _0x34a395=_0x5109f3;switch(_0x160436){case _0x34a395(0x186):return _0x1847a6;case _0x34a395(0x253):return _0x32e6f1;case _0x34a395(0x222):return _0x43a9f2;case _0x34a395(0x1b4):return _0x2fb16b;case _0x34a395(0x25a):return _0x4b50d4;case _0x34a395(0x1ad):return _0x5c5ee2;}}const _0x2dd92a=_0x182910=>{const _0x2b676b=_0x5109f3;switch(_0x182910['nodeClass']){case _0x2b676b(0x25f):if(_0x182910[_0x2b676b(0x282)]===_0x1847a6);if(_0x182910[_0x2b676b(0x1c2)]===_0xd1c8bf||_0x182910[_0x2b676b(0x282)]===_0x2b676b(0x1df))return{'icon':_0x2b676b(0x1ce),'color':_0x2b676b(0x23c)};return{'icon':'fa-object-group','color':'SeaGreen'};case _0x2b676b(0x259):if(_0x182910[_0x2b676b(0x282)]===_0x43a9f2)return{'icon':_0x2b676b(0x258),'color':'SteelBlue'};else return _0x182910[_0x2b676b(0x282)]===_0x32e6f1?{'icon':_0x2b676b(0x258),'color':_0x2b676b(0x1a1)}:{'icon':'fa-list-alt','color':_0x2b676b(0x1e6)};case _0x2b676b(0x1d6):return{'icon':_0x2b676b(0x18e),'color':_0x2b676b(0x1ee)};case _0x2b676b(0x1e3):return{'icon':'fa-object-group','color':_0x2b676b(0x1e9)};case _0x2b676b(0x17e):return{'icon':_0x2b676b(0x25c),'color':_0x2b676b(0x1e9)};case'DataType':return{'icon':'fa-text-width','color':'CadetBlue'};}return{'icon':_0x2b676b(0x27a),'color':_0x2b676b(0x1b2)};},_0x3874b5=(_0x2f4eba,_0x3e249a,_0x3b81d7)=>_0x552655(void 0x0,[_0x2f4eba,_0x3e249a,_0x3b81d7],void 0x0,function*({endpointNode:_0x61a64e,endpoint:_0x3fb46f,baseUrl:_0x38b6f6},_0x1ad971,_0x3800dd){const _0x23409b=_0x5109f3,_0x5d8480=_0x38b6f6+_0x23409b(0x18c),_0x58fe5f=_0x5d8480+'/browse',_0x34e776=Object[_0x23409b(0x230)](Object[_0x23409b(0x230)]({},_0x3800dd),{'nodeId':_0x1ad971,'resultMask':0x3f}),_0x223bed=yield fetch(_0x58fe5f,{'method':'POST','body':JSON[_0x23409b(0x1b1)]({'endpointNode':_0x61a64e,'endpoint':_0x3fb46f,'browseDescription':_0x34e776}),'headers':{'Content-Type':'application/json'}});if(_0x223bed[_0x23409b(0x187)]!==0xc8)return console['log'](_0x23409b(0x22a),_0x223bed[_0x23409b(0x187)],_0x223bed[_0x23409b(0x1ac)]),{'references':[]};const _0x226c52=yield _0x223bed[_0x23409b(0x18b)](),_0xa3d762=_0x226c52[_0x23409b(0x195)]['references']||[];return{'references':_0xa3d762};}),_0x59b617={'referenceTypeId':_0xb93e35('HasChild'),'includeSubtypes':!![],'browseDirection':_0x2dcf7e[_0x5109f3(0x256)],'nodeClassMask':_0x4c0399[_0x5109f3(0x259)]|_0x4c0399['Object']|_0x4c0399['Method'],'resultMask':0x3f},_0x5cf319={'referenceTypeId':_0xb93e35('Organizes'),'includeSubtypes':!![],'browseDirection':_0x2dcf7e[_0x5109f3(0x256)],'nodeClassMask':_0x4c0399[_0x5109f3(0x259)]|_0x4c0399[_0x5109f3(0x25f)]|_0x4c0399[_0x5109f3(0x1d6)],'resultMask':0x3f},_0x13e1ca=(_0x57afc6,_0x328505)=>_0x552655(void 0x0,[_0x57afc6,_0x328505],void 0x0,function*({endpointNode:_0x215020,endpoint:_0x594643,baseUrl:_0x4bc384},{nodeId:_0x1af33c,rootNodeId:_0x1d35fd,isType:_0x32e6c2}){const _0xa70b88=_0x5109f3,_0x5e411d=_0x4bc384+_0xa70b88(0x18c),_0x1b58bb=_0x5e411d+_0xa70b88(0x219),_0x1b33a9=yield fetch(_0x1b58bb,{'method':_0xa70b88(0x196),'body':JSON['stringify']({'endpointNode':_0x215020,'endpoint':_0x594643,'nodeId':_0x1af33c,'rootNodeId':_0x1d35fd,'isType':_0x32e6c2}),'headers':{'Content-Type':_0xa70b88(0x16b)}});if(_0x1b33a9[_0xa70b88(0x187)]!==0xc8)return null;const _0x3c8b06=yield _0x1b33a9['json']();return _0x3c8b06[_0xa70b88(0x169)];}),_0x12eb92=(_0x1d1778,_0x1a1426)=>{const _0x2ac412=_0x5109f3;if(_0x1d1778[_0x2ac412(0x1af)]!==_0x2ac412(0x1bf))return _0x1d1778[_0x2ac412(0x238)];switch(_0x1a1426){case _0x2ac412(0x169):return _0x1d1778[_0x2ac412(0x1fc)];case _0x2ac412(0x267):return _0x1d1778['bp_aliased']||_0x1d1778[_0x2ac412(0x1fc)];case _0x2ac412(0x171):return _0x1d1778[_0x2ac412(0x21b)]||_0x1d1778[_0x2ac412(0x24c)];case _0x2ac412(0x17a):return _0x1d1778[_0x2ac412(0x24c)];default:case _0x2ac412(0x1dc):return _0x1d1778[_0x2ac412(0x1dc)];}},_0x420f78=_0x47e64e=>{const _0x2a2d25=_0x5109f3;if(_0x47e64e[_0x2a2d25(0x1af)]!==_0x2a2d25(0x1bf))return _0x2a2d25(0x190)+_0x47e64e[_0x2a2d25(0x1af)];else{let _0x43f688=[];return _0x43f688[_0x2a2d25(0x20c)](_0x2a2d25(0x188)+_0x47e64e[_0x2a2d25(0x1dc)]),_0x43f688[_0x2a2d25(0x20c)](_0x2a2d25(0x248)+_0x47e64e[_0x2a2d25(0x1fc)]),_0x43f688[_0x2a2d25(0x20c)]('node\x20class:\x20'+_0x4c0399[_0x47e64e[_0x2a2d25(0x27e)]]),_0x47e64e[_0x2a2d25(0x24c)]&&_0x43f688['push'](_0x2a2d25(0x1cc)+_0x47e64e[_0x2a2d25(0x24c)]),_0x47e64e[_0x2a2d25(0x21b)]&&_0x43f688[_0x2a2d25(0x20c)](_0x2a2d25(0x247)+_0x47e64e[_0x2a2d25(0x21b)]),_0x47e64e[_0x2a2d25(0x1fc)]&&_0x43f688['push'](_0x2a2d25(0x197)+_0x47e64e['bp_aliased']),_0x43f688[_0x2a2d25(0x1c0)]('\x0a');}};function _0x4e7e70(_0x1b0a97){const _0x3b01e9=_0x5109f3;if(_0x1b0a97[_0x3b01e9(0x1f3)](/^nsu=/))return _0x3b01e9(0x17a);if(_0x1b0a97['match'](/^(ns=.*;)?(i|b|s|g)=/))return _0x3b01e9(0x1dc);if(_0x1b0a97[_0x3b01e9(0x1f3)](/^nsa=/))return _0x3b01e9(0x171);if(_0x1b0a97[_0x3b01e9(0x1f3)](/^(\/|\.)[0-9]+:/))return _0x3b01e9(0x169);if(_0x1b0a97[_0x3b01e9(0x1f3)](/^(\/|\.).*:/))return _0x3b01e9(0x169);}function _0x590968(_0x5bb9f3){const _0x56f5bb=_0x5109f3,_0x5ec1b7=_0x4e7e70(_0x5bb9f3);switch(_0x5ec1b7){case _0x56f5bb(0x1dc):return'n';case'aliasedNodeId':return'na';case _0x56f5bb(0x17a):return _0x56f5bb(0x1ba);case _0x56f5bb(0x169):return'b';case _0x56f5bb(0x267):return'ab';default:return't';}}function _0x1fc3dc(_0x3cce1a){const _0x2de6bb=_0x5109f3;let _0x1fd700;switch(_0x3cce1a){case'n':_0x1fd700='nodeId';break;case'na':_0x1fd700=_0x2de6bb(0x171);break;case _0x2de6bb(0x1ba):_0x1fd700=_0x2de6bb(0x17a);break;case'b':_0x1fd700=_0x2de6bb(0x169);break;case'ab':_0x1fd700=_0x2de6bb(0x267);break;}return _0x1fd700;}function _0x47b474(_0x4d48a4){const _0x283e67=_0x5109f3;switch(_0x4d48a4){case'nodeId':return'n';case _0x283e67(0x171):return'na';case'nsuNodeID':return _0x283e67(0x1ba);case _0x283e67(0x169):return'b';case _0x283e67(0x267):return'ab';default:return't';}}const _0x50305c=(_0x11e7fc,_0x46003a)=>_0x552655(void 0x0,[_0x11e7fc,_0x46003a],void 0x0,function*({endpointNode:_0x576c33,endpoint:_0x22aa48,baseUrl:_0xa233c9},_0x116aee){const _0x19888d=_0x5109f3,_0x226c51=_0xa233c9+_0x19888d(0x18c),_0x2dcf36=_0x226c51+_0x19888d(0x21a),_0x32e6e1=_0x576c33['id'],_0x2a2d43=RED['nodes'][_0x19888d(0x1f0)](_0x32e6e1);console[_0x19888d(0x193)](_0x2a2d43['namespaceAliases']),_0x2a2d43[_0x19888d(0x209)];const _0x58adb1=_0x576c33[_0x19888d(0x209)],_0x2cebf9=yield fetch(_0x2dcf36,{'method':_0x19888d(0x196),'body':JSON[_0x19888d(0x1b1)]({'endpointNode':_0x576c33,'endpoint':_0x22aa48,'nodeId':_0x116aee,'namespaceAliases':_0x58adb1}),'headers':{'Content-Type':'application/json'}}),_0x10506c=yield _0x2cebf9[_0x19888d(0x18b)]();return{'json':_0x10506c,'data':_0x2cebf9};}),_0x24a0cc=(_0x20dfa1,_0x5326c5,_0x289168,_0x2b3495)=>_0x552655(void 0x0,[_0x20dfa1,_0x5326c5,_0x289168,_0x2b3495],void 0x0,function*({endpointNode:_0xf89242,endpoint:_0x522f54,baseUrl:_0x530a75},_0x5c9806,_0x112f0e,_0x4cec33){const _0xcd7ac0=_0x5109f3,_0x44321b=_0x112f0e[_0xcd7ac0(0x27f)](),{json:_0xbe10b4,data:_0x33385c}=yield _0x50305c({'endpointNode':_0xf89242,'endpoint':_0x522f54,'baseUrl':_0x530a75},_0x44321b),_0x57cb82=(_0x383874,_0x5d53c2)=>{const _0x32f833=_0xcd7ac0;_0x4cec33[_0x32f833(0x1ca)](_0x383874)[_0x32f833(0x202)](_0x32f833(0x1ed))['addClass'](_0x5d53c2),_0x4cec33['show'](),setTimeout(()=>{const _0x1a9d6d=_0x32f833;_0x4cec33[_0x1a9d6d(0x1ae)](_0x5d53c2),_0x4cec33['hide']();},0xbb8);};if(_0x33385c[_0xcd7ac0(0x187)]!==0xc8)return _0x57cb82(_0xcd7ac0(0x1e2)+_0x44321b,_0xcd7ac0(0x207)),![];else{if(_0xbe10b4[_0xcd7ac0(0x1af)][_0xcd7ac0(0x1f3)](/Good/)){const _0x4f7fc0=_0x420f78(_0xbe10b4);_0x112f0e[_0xcd7ac0(0x18f)](_0xcd7ac0(0x189),_0x4f7fc0);const _0x1b575e=_0x12eb92(_0xbe10b4,_0x5c9806);return _0x112f0e[_0xcd7ac0(0x27f)](_0x1b575e),_0x112f0e['trigger'](_0xcd7ac0(0x261)),_0x57cb82(_0xcd7ac0(0x1bf),'ok'),!![];}else return _0x112f0e[_0xcd7ac0(0x27f)](''+_0x44321b),_0x57cb82(_0xbe10b4[_0xcd7ac0(0x1af)]+'\x20'+_0x33385c[_0xcd7ac0(0x1ac)],_0xcd7ac0(0x207)),![];}});function _0x424d65(_0x1b78e5,_0x1a9289){return _0x552655(this,void 0x0,void 0x0,function*(){const _0x58720b=_0x1ce5,_0x553b85=_0x1b78e5[_0x58720b(0x26a)](_0x58720b(0x174)),_0x1d8495=yield _0x3874b5(_0x1a9289,_0x553b85,_0x59b617),_0x3d8a59=yield _0x3874b5(_0x1a9289,_0x553b85,_0x5cf319);return{'references':[..._0x1d8495['references'],..._0x3d8a59[_0x58720b(0x236)]]};});}const _0x365e61={'referenceTypeId':_0xb93e35(_0x5109f3(0x25a)),'includeSubtypes':!![],'browseDirection':_0x2dcf7e['Forward'],'nodeClassMask':_0x4c0399[_0x5109f3(0x287)]|_0x4c0399['ObjectType']|_0x4c0399[_0x5109f3(0x20b)]|_0x4c0399[_0x5109f3(0x17e)],'resultMask':0x3f};function _0x547477(_0x45c707,_0x4fc0e3){return _0x552655(this,void 0x0,void 0x0,function*(){const _0x384fbd=_0x1ce5,_0x3dcfe6=_0x45c707[_0x384fbd(0x26a)](_0x384fbd(0x174)),_0x37e59f=yield _0x3874b5(_0x4fc0e3,_0x3dcfe6,_0x365e61);return _0x37e59f;});}const _0x2ab1f7=_0x3fc214=>{const _0x152383=_0x5109f3;var _0x3e531e,_0x2771ff,_0x2b78b0,_0x56dc0c;if(!_0x3fc214||!_0x3fc214['nodeId']){const _0x3a2037=$(_0x152383(0x19c));return _0x3a2037;}const _0x5c4d4f=_0x3fc214['nodeId'][_0x152383(0x1b9)](),_0x5ac5ff=((_0x3e531e=_0x3fc214[_0x152383(0x1e1)])===null||_0x3e531e===void 0x0?void 0x0:_0x3e531e[_0x152383(0x1ca)])||((_0x2771ff=_0x3fc214[_0x152383(0x288)])===null||_0x2771ff===void 0x0?void 0x0:_0x2771ff[_0x152383(0x1e5)])||_0x3fc214[_0x152383(0x1dc)][_0x152383(0x1b9)](),{icon:_0x3fbd78,color:_0x30f84d}=_0x2dd92a(_0x3fc214),_0x16be64='('+_0x3fc214['nodeId'][_0x152383(0x1b9)]()+')\x20'+(((_0x2b78b0=_0x3fc214[_0x152383(0x288)])===null||_0x2b78b0===void 0x0?void 0x0:_0x2b78b0['name'])||((_0x56dc0c=_0x3fc214[_0x152383(0x1e1)])===null||_0x56dc0c===void 0x0?void 0x0:_0x56dc0c[_0x152383(0x1ca)])||''),_0x48e00a=$('<li\x20key=\x22'+_0x3fc214[_0x152383(0x1dc)][_0x152383(0x1b9)]()+_0x152383(0x1cd)+_0x16be64+_0x152383(0x27d)+_0x3fbd78+_0x152383(0x27b)+_0x30f84d+_0x152383(0x269)+_0x5ac5ff+_0x152383(0x241));return _0x48e00a[_0x152383(0x202)](_0x152383(0x183)),_0x48e00a['data']('value',_0x5c4d4f),_0x48e00a['data'](_0x152383(0x1b3),_0x3fc214),_0x48e00a;},_0x47d025=(_0x15e3d0,_0x1e4598)=>{const _0x290302=_0x5109f3;return _0x1e4598[_0x290302(0x1a5)]('li[key=\x22'+_0x15e3d0+'\x22]');},_0x2410a2=(_0x525bb1,_0x1f4ab3)=>{const _0x5384b9=_0x5109f3;_0x525bb1[_0x5384b9(0x263)][_0x5384b9(0x1a5)](_0x5384b9(0x24f))['removeClass'](_0x5384b9(0x173)),_0x1f4ab3[_0x5384b9(0x1a5)]('.tree-text:first')[_0x5384b9(0x202)](_0x5384b9(0x173));},_0x75bc2a=(_0x53492b,_0x43f1be,_0x28a1ac)=>_0x552655(void 0x0,void 0x0,void 0x0,function*(){const _0x39a898=_0x5109f3;let _0x44a486=_0x28a1ac[_0x39a898(0x1f8)](_0x39a898(0x226));_0x43f1be[_0x39a898(0x24e)]['elements']||[];const _0x5b70d6=_0x43f1be[_0x39a898(0x1c8)]||[];if(_0x5b70d6[_0x39a898(0x22b)]===0x0)return;for(const _0x26bf46 of _0x5b70d6){_0x44a486['hasClass'](_0x39a898(0x183))&&(yield _0x2146af(_0x53492b,_0x44a486));const _0x32bcba=_0x47d025(_0x26bf46,_0x44a486);if(_0x32bcba[_0x39a898(0x22b)]===0x0)return;_0x44a486=_0x32bcba;}_0x2410a2(_0x53492b,_0x44a486),_0x5a1b58(_0x53492b[_0x39a898(0x232)],_0x44a486);});function _0x5a1b58(_0x1b0d20,_0x4aab3f){const _0x5f928d=_0x5109f3,_0x2352e6=_0x4aab3f[_0x5f928d(0x25b)]()[_0x5f928d(0x273)],_0x21f289=_0x1b0d20['scrollTop']();if(_0x21f289==undefined)return;const _0x11b142=_0x21f289+_0x2352e6-_0x1b0d20[_0x5f928d(0x1fa)]()/0x2+_0x4aab3f[_0x5f928d(0x1fa)]()/0x2;_0x1b0d20['animate']({'scrollTop':_0x11b142},0x1f4);}const _0x4a3988=(_0x566637,_0x57d024)=>_0x552655(void 0x0,void 0x0,void 0x0,function*(){const _0x4a8c8c=_0x5109f3,_0x5d165a=_0x566637[_0x4a8c8c(0x19e)]['val'](),_0x330ac4={'nodeId':_0x5d165a,'rootNodeId':_0x57d024['nodeId'],'isType':_0x566637[_0x4a8c8c(0x1aa)]['isTypeRef']||![]},_0xebca23=_0x5c566e(_0x566637),_0x43fbfb=yield _0x13e1ca(_0xebca23,_0x330ac4);if(!_0x43fbfb)return;yield _0x75bc2a(_0x566637,_0x43fbfb,_0x566637[_0x4a8c8c(0x263)]);});function _0x47856c(_0x5eb48a,_0x2bcbf9,_0x2f42e4,_0x441f49){return _0x552655(this,void 0x0,void 0x0,function*(){const _0x105196=_0x1ce5;if(_0x2bcbf9[_0x105196(0x1a3)](_0x105196(0x278))){console[_0x105196(0x193)]('already\x20fetched');return;}if(_0x2bcbf9['hasClass']('loading')){console[_0x105196(0x193)](_0x105196(0x1b5));return;}_0x2bcbf9[_0x105196(0x202)](_0x105196(0x1e4)),_0x2bcbf9[_0x105196(0x1d8)](_0x105196(0x22d));try{_0x2bcbf9[_0x105196(0x1f8)]('ul')[_0x105196(0x175)]();const {references:_0x33eecb}=yield _0x2f42e4(_0x2bcbf9,_0x441f49);_0x33eecb[_0x105196(0x1b8)]((_0x3474c1,_0x410a85)=>{const _0x3ba797=_0x105196;var _0x45c829,_0x964a7b;return(((_0x45c829=_0x3474c1['browseName'])===null||_0x45c829===void 0x0?void 0x0:_0x45c829['name'])||'')[_0x3ba797(0x221)](((_0x964a7b=_0x410a85[_0x3ba797(0x288)])===null||_0x964a7b===void 0x0?void 0x0:_0x964a7b['name'])||'');});for(const _0x49778b of _0x33eecb){if(_0x5eb48a[_0x105196(0x1aa)]['filter']&&!_0x5eb48a[_0x105196(0x1aa)][_0x105196(0x203)](_0x49778b))continue;const _0x33e797=_0x2ab1f7(_0x49778b);_0x2bcbf9['children']('ul')[_0x105196(0x1d8)](_0x33e797);}_0x2bcbf9[_0x105196(0x202)](_0x105196(0x278));}catch(_0x50b534){_0x2bcbf9[_0x105196(0x1f8)]('ul')[_0x105196(0x1d8)](_0x105196(0x266)+_0x50b534[_0x105196(0x1ea)]+_0x105196(0x1c4)),console['log'](_0x105196(0x262),_0x50b534);}_0x2bcbf9['find'](_0x105196(0x23f))[_0x105196(0x276)](),_0x2bcbf9[_0x105196(0x1ae)]('loading');});}function _0x5c566e(_0x49b936){const _0x4abef9=_0x5109f3,_0x47559c={'baseUrl':_0x49b936[_0x4abef9(0x1aa)][_0x4abef9(0x1fb)],'endpointNode':typeof _0x49b936['options'][_0x4abef9(0x19b)]===_0x4abef9(0x184)?_0x49b936[_0x4abef9(0x1aa)][_0x4abef9(0x19b)]():_0x49b936[_0x4abef9(0x1aa)][_0x4abef9(0x19b)],'endpoint':typeof _0x49b936[_0x4abef9(0x1aa)]['endpoint']===_0x4abef9(0x184)?_0x49b936[_0x4abef9(0x1aa)][_0x4abef9(0x22f)]():_0x49b936[_0x4abef9(0x1aa)]['endpoint']};return _0x47559c;}function _0x2146af(_0x14a4be,_0x436c03){return _0x552655(this,void 0x0,void 0x0,function*(){const _0x27ddf0=_0x1ce5;if(_0x436c03[_0x27ddf0(0x1a3)]('fetched')){_0x436c03[_0x27ddf0(0x1ae)]('expandable')[_0x27ddf0(0x202)](_0x27ddf0(0x204)),_0x436c03[_0x27ddf0(0x1f8)]('ul')[_0x27ddf0(0x17d)]();return;}const _0x5ec0b8=_0x5c566e(_0x14a4be),_0x4516d1=!_0x14a4be['options'][_0x27ddf0(0x26b)]?_0x424d65:_0x547477;try{yield _0x47856c(_0x14a4be,_0x436c03,_0x4516d1,_0x5ec0b8),_0x436c03[_0x27ddf0(0x1ae)](_0x27ddf0(0x183))[_0x27ddf0(0x202)]('expanded');}catch(_0x2e7c57){_0x436c03[_0x27ddf0(0x1ae)](_0x27ddf0(0x183))[_0x27ddf0(0x202)]('expanded'),console[_0x27ddf0(0x193)](_0x27ddf0(0x1d7),_0x2e7c57);}});}const _0x239781={'browseName':{'namespaceIndex':0x0,'name':'Objects'},'nodeClass':_0x5109f3(0x25f),'nodeId':_0x5109f3(0x179),'displayName':{'text':_0x5109f3(0x23d)},'typeDefinition':_0xd1c8bf},_0xfc1949=()=>{const _0x1f254c=_0x5109f3;$['widget'](_0x1f254c(0x1a0),{'options':{'endpointNode':()=>({'endpoint':'opc.tcp://opcuademo.sterfive.com:26543'}),'endpoint':()=>undefined,'parentNode':()=>_0x239781,'filter':()=>!![],'baseUrl':'','isTypeRef':![]},'resolveParentNode'(){return _0x552655(this,void 0x0,void 0x0,function*(){const _0x37349c=_0x1ce5,_0x4a7057=this;if(_0x4a7057['__parentNode']==undefined){const _0x147e44=typeof _0x4a7057[_0x37349c(0x1aa)][_0x37349c(0x1bc)]==='function'?_0x4a7057[_0x37349c(0x1aa)]['parentNode']['call'](_0x4a7057):_0x4a7057['options'][_0x37349c(0x1bc)];if(_0x147e44 instanceof Promise){const _0x22a91b=yield _0x147e44;_0x4a7057[_0x37349c(0x237)]=_0x22a91b;}else _0x4a7057[_0x37349c(0x237)]=_0x147e44;}return _0x4a7057['__parentNode']||_0x239781;});},'reset'(){return _0x552655(this,void 0x0,void 0x0,function*(){const _0x5c02d6=_0x1ce5,_0x5daead=this,_0x306899=_0x5daead;_0x306899['__parentNode']=undefined,_0x5daead[_0x5c02d6(0x263)][_0x5c02d6(0x175)]();const _0x2ea2fd=yield this['resolveParentNode'](),_0x14872f=_0x2ab1f7(_0x2ea2fd);_0x5daead[_0x5c02d6(0x263)][_0x5c02d6(0x1d8)](_0x14872f),_0x5daead[_0x5c02d6(0x1f9)]=_0x2ea2fd;});},'verify'(_0x591db0){const _0x423528=_0x1f254c,_0x2ef1c0=this,_0x5edc1b=_0x5c566e(_0x2ef1c0);_0x24a0cc(_0x5edc1b,_0x591db0,_0x2ef1c0[_0x423528(0x19e)],_0x2ef1c0['$info'])[_0x423528(0x246)](_0x10552e=>{const _0x1c048c=_0x423528;!_0x10552e?_0x2ef1c0['$combo'][_0x1c048c(0x202)](_0x1c048c(0x192)):_0x2ef1c0[_0x1c048c(0x26c)][_0x1c048c(0x1ae)](_0x1c048c(0x192));});},'_hideMenu'(_0x1beeb6){const _0x1f7688=_0x1f254c,_0x4b3cb0=this;$(document)[_0x1f7688(0x16e)]('mousedown.red-ui-typedInput-close-property-select'),_0x1beeb6[_0x1f7688(0x24a)](),_0x1beeb6[_0x1f7688(0x18a)]({'height':_0x1f7688(0x1f5)});if(_0x1beeb6[_0x1f7688(0x1c1)][_0x1f7688(0x274)]){var _0x40392c=[];_0x1beeb6[_0x1f7688(0x1a5)](_0x1f7688(0x251))[_0x1f7688(0x26e)](function(){const _0x24e3cb=_0x1f7688;$(this)['prop'](_0x24e3cb(0x264))&&_0x40392c['push']($(this)['data'](_0x24e3cb(0x174)));}),_0x1beeb6['callback'](_0x40392c);}_0x4b3cb0[_0x1f7688(0x185)]['is'](_0x1f7688(0x1dd))?_0x4b3cb0[_0x1f7688(0x19e)]['trigger'](_0x1f7688(0x24d)):_0x4b3cb0[_0x1f7688(0x228)]['trigger'](_0x1f7688(0x24d));},'_createMenu'(_0x24e8f8,_0xfccddd,_0x397618){const _0xae01a5=_0x1f254c;var _0xdb8331=this;const _0x42448f=$(_0xae01a5(0x1c3))[_0xae01a5(0x202)](_0xae01a5(0x172));return _0x42448f[_0xae01a5(0x1c1)]=_0xfccddd,_0x42448f[_0xae01a5(0x1da)]=_0x397618,_0x24e8f8[_0xae01a5(0x1c6)](_0x20288e=>{const _0x2db4c8=_0xae01a5;typeof _0x20288e==='string'&&(_0x20288e={'value':_0x20288e,'label':_0x20288e});var _0x4d7230=$(_0x2db4c8(0x257))[_0x2db4c8(0x18f)](_0x2db4c8(0x174),_0x20288e[_0x2db4c8(0x174)])[_0x2db4c8(0x20e)](_0x42448f);_0x20288e[_0x2db4c8(0x17c)]&&_0x4d7230[_0x2db4c8(0x1ca)](_0x20288e['label']);_0x20288e[_0x2db4c8(0x189)]&&_0x4d7230['prop'](_0x2db4c8(0x189),_0x20288e['title']);if(_0x20288e[_0x2db4c8(0x1b0)]){if(_0x20288e[_0x2db4c8(0x1b0)][_0x2db4c8(0x182)]('<')===0x0)$(_0x20288e[_0x2db4c8(0x1b0)])['prependTo'](_0x4d7230);else _0x20288e[_0x2db4c8(0x1b0)][_0x2db4c8(0x182)]('/')!==-0x1?$(_0x2db4c8(0x281),{'class':'red-ui-typedInput-icon','style':_0x2db4c8(0x180)+_0x20288e['icon']+');\x20-webkit-mask-image:\x20url('+_0x20288e['icon']+');'})[_0x2db4c8(0x286)](_0x4d7230):$('<i>',{'class':_0x2db4c8(0x23b)+_0x20288e[_0x2db4c8(0x1b0)]})['prependTo'](_0x4d7230);}else _0x4d7230[_0x2db4c8(0x18a)]({'paddingLeft':_0x2db4c8(0x1bb)});!_0x20288e[_0x2db4c8(0x1b0)]&&!_0x20288e[_0x2db4c8(0x17c)]&&_0x4d7230[_0x2db4c8(0x1ca)](_0x20288e['value']);var _0x19df1e;_0xfccddd[_0x2db4c8(0x274)]&&(_0x19df1e=$(_0x2db4c8(0x1a8))['css'](_0x2db4c8(0x22c),'none')[_0x2db4c8(0x26a)](_0x2db4c8(0x174),_0x20288e[_0x2db4c8(0x174)])[_0x2db4c8(0x286)](_0x4d7230)['on'](_0x2db4c8(0x20a),function(_0x167248){const _0x2af9a0=_0x2db4c8;_0x167248[_0x2af9a0(0x170)]();})),_0x4d7230['on'](_0x2db4c8(0x199),function(_0x1169c1){const _0x30baa4=_0x2db4c8;_0x1169c1[_0x30baa4(0x170)](),_0x1169c1['stopPropagation'](),!_0xfccddd[_0x30baa4(0x274)]?(_0x397618(_0x20288e['value']),_0xdb8331[_0x30baa4(0x1a7)](_0x42448f)):_0x19df1e[_0x30baa4(0x210)]('checked',!_0x19df1e[_0x30baa4(0x210)](_0x30baa4(0x264)));});}),_0x42448f['css']({'display':_0xae01a5(0x1b7)}),_0x42448f['on'](_0xae01a5(0x1e7),function(_0x2face8){const _0x493be9=_0xae01a5;if(_0x2face8[_0x493be9(0x1d3)]===0x28)_0x2face8[_0x493be9(0x170)](),$(this)[_0x493be9(0x1f8)](_0x493be9(0x1f6))[_0x493be9(0x26d)]()[_0x493be9(0x272)]('focus');else{if(_0x2face8[_0x493be9(0x1d3)]===0x26)_0x2face8[_0x493be9(0x170)](),$(this)[_0x493be9(0x1f8)](_0x493be9(0x1f6))[_0x493be9(0x216)]()['trigger'](_0x493be9(0x24d));else _0x2face8[_0x493be9(0x1d3)]===0x1b&&(_0x2face8[_0x493be9(0x170)](),_0xdb8331[_0x493be9(0x1a7)](_0x42448f));}_0x2face8[_0x493be9(0x201)]();}),_0x42448f;},'disarmClick':![],'_showMenu'(_0x3852d7,_0x44abbd){const _0x43ac72=_0x1f254c;if(this[_0x43ac72(0x220)]){this['disarmClick']=![];return;}var _0x504517=this,_0x17e59f=_0x44abbd[_0x43ac72(0x1d5)](),_0x579cd7=_0x44abbd['height'](),_0x4ee6f9=_0x3852d7['height'](),_0x2d1901=_0x579cd7+_0x17e59f[_0x43ac72(0x273)];_0x2d1901+_0x4ee6f9-$(document)[_0x43ac72(0x275)]()>$(window)[_0x43ac72(0x1fa)]()&&(_0x2d1901-=_0x2d1901+_0x4ee6f9-$(window)[_0x43ac72(0x1fa)]()+0x5),_0x2d1901<0x0&&(_0x3852d7[_0x43ac72(0x1fa)](_0x4ee6f9+_0x2d1901),_0x2d1901=0x0),_0x3852d7[_0x43ac72(0x18a)]({'top':_0x2d1901+'px','left':_0x17e59f[_0x43ac72(0x181)]+'px'}),_0x3852d7[_0x43ac72(0x240)](0x64),this[_0x43ac72(0x1a9)](function(){const _0x1efd9d=_0x43ac72;_0x504517[_0x1efd9d(0x249)][_0x1efd9d(0x202)](_0x1efd9d(0x1f1)),$(document)['on']('mousedown.red-ui-typedInput-close-property-select',function(_0x5425e5){const _0x40e93d=_0x1efd9d;!$(_0x5425e5[_0x40e93d(0x18d)])[_0x40e93d(0x27c)](_0x3852d7)[_0x40e93d(0x22b)]&&_0x504517['_hideMenu'](_0x3852d7),$(_0x5425e5[_0x40e93d(0x18d)])[_0x40e93d(0x27c)](_0x44abbd)[_0x40e93d(0x22b)]&&(_0x504517[_0x40e93d(0x220)]=!![],_0x5425e5[_0x40e93d(0x170)]());});});},'_showTypeMenu'(){const _0x4aa746=_0x1f254c,_0x4fecb8=this;this[_0x4aa746(0x21d)](_0x4fecb8['$menu'],_0x4fecb8['$combo']),_0x4fecb8[_0x4aa746(0x232)][_0x4aa746(0x24a)]();const _0x56dc85=_0x4fecb8[_0x4aa746(0x1cb)];var _0x5cd200=_0x4fecb8[_0x4aa746(0x1e0)][_0x4aa746(0x1a5)](_0x4aa746(0x231)+_0x56dc85+'\x27');setTimeout(function(){const _0x477d26=_0x4aa746;_0x5cd200[_0x477d26(0x272)](_0x477d26(0x24d));},0x78);},'_initMenu'(){const _0x3a2213=_0x1f254c,_0x3f93d7=this;_0x3f93d7[_0x3a2213(0x228)][_0x3a2213(0x18f)](_0x3a2213(0x283),-0x1),_0x3f93d7[_0x3a2213(0x228)]['on'](_0x3a2213(0x271),function(_0x3accaa){const _0x478c57=_0x3a2213;_0x3accaa[_0x478c57(0x170)]();});_0x3f93d7['$menu']&&_0x3f93d7['$menu'][_0x3a2213(0x276)]();const _0x48abfa=[{'label':_0x3a2213(0x1ca),'value':'t','title':_0x3a2213(0x19d),'icon':'<i\x20class=\x22fa\x20fa-font\x22/i>\x20'},{'label':'msg.','value':_0x3a2213(0x1a4),'title':_0x3a2213(0x1c7),'icon':_0x3a2213(0x23e)},{'label':'NodeId','value':'n','icon':_0x3a2213(0x206)},{'label':_0x3a2213(0x16f),'value':'na','icon':_0x3a2213(0x239)},{'label':'NodeId\x20with\x20namespace\x20Urn','value':_0x3a2213(0x1ba),'icon':_0x3a2213(0x168)},{'label':_0x3a2213(0x200),'value':'b','icon':_0x3a2213(0x24b)},{'label':_0x3a2213(0x1b6),'value':'ab','icon':_0x3a2213(0x223)}],_0x578b5d=_0x590968(_0x3f93d7[_0x3a2213(0x19e)]['val']()),_0x2892c7=_0x48abfa[_0x3a2213(0x1a5)](_0x2e1fdd=>_0x2e1fdd[_0x3a2213(0x174)]===_0x578b5d);_0x3f93d7[_0x3a2213(0x21c)][_0x3a2213(0x175)]()['append']('<span\x20title='+((_0x2892c7===null||_0x2892c7===void 0x0?void 0x0:_0x2892c7[_0x3a2213(0x189)])||'')+_0x3a2213(0x1eb)+((_0x2892c7===null||_0x2892c7===void 0x0?void 0x0:_0x2892c7['icon'])||'')+_0x3a2213(0x214)),_0x3f93d7[_0x3a2213(0x1cb)]=_0x578b5d;const _0x41173b=this;_0x3f93d7[_0x3a2213(0x1e0)]=this['_createMenu'](_0x48abfa,{},_0xd8ba7f=>{const _0x35d4e3=_0x3a2213,_0x48cf88=_0x1fc3dc(_0xd8ba7f);_0x48cf88&&_0x41173b['verify'](_0x48cf88);const _0x4685c0=_0x48abfa[_0x35d4e3(0x1a5)](_0x4e9ca2=>_0x4e9ca2[_0x35d4e3(0x174)]===_0xd8ba7f);_0x3f93d7[_0x35d4e3(0x1cb)]=_0xd8ba7f,_0x3f93d7[_0x35d4e3(0x21c)]['empty']()[_0x35d4e3(0x1d8)](_0x35d4e3(0x1be)+((_0x4685c0===null||_0x4685c0===void 0x0?void 0x0:_0x4685c0[_0x35d4e3(0x189)])||'')+_0x35d4e3(0x1eb)+((_0x4685c0===null||_0x4685c0===void 0x0?void 0x0:_0x4685c0['icon'])||'')+'</span>');}),_0x3f93d7['$menu'][_0x3a2213(0x20e)](document[_0x3a2213(0x270)]),_0x3f93d7[_0x3a2213(0x1e0)]['hide'](),_0x3f93d7['$selectTrigger'][_0x3a2213(0x176)]();},'mode'(){const _0x12c30b=_0x1f254c,_0x183015=this;return _0x1fc3dc(_0x183015[_0x12c30b(0x1cb)]);},'setMode'(_0x808c4e){const _0x295f30=this,_0x465874=_0x47b474(_0x808c4e);_0x295f30['selectedMenuItem']=_0x465874;},'_create'(){const _0x2beecc=_0x1f254c,_0xf7147d=this;_0xf7147d[_0x2beecc(0x19e)]=this[_0x2beecc(0x1a6)],_0xf7147d[_0x2beecc(0x19e)][_0x2beecc(0x18a)](_0x2beecc(0x198),_0x2beecc(0x1b7)),_0xf7147d[_0x2beecc(0x185)]=_0xf7147d['$input'][_0x2beecc(0x1bd)](_0x2beecc(0x1c3))['parent']()['addClass']('main-wrapper'),_0xf7147d[_0x2beecc(0x26c)]=$(_0x2beecc(0x1f4)),_0xf7147d[_0x2beecc(0x26c)][_0x2beecc(0x202)](_0x2beecc(0x212)),_0xf7147d[_0x2beecc(0x19e)][_0x2beecc(0x1f2)](_0xf7147d[_0x2beecc(0x26c)]),_0xf7147d[_0x2beecc(0x16c)]=$(_0x2beecc(0x1f4))[_0x2beecc(0x202)]('sterfive-input-group'),_0xf7147d['$combo'][_0x2beecc(0x1d8)](_0xf7147d[_0x2beecc(0x16c)]),_0xf7147d[_0x2beecc(0x16c)][_0x2beecc(0x1d8)](_0xf7147d[_0x2beecc(0x19e)]),_0xf7147d[_0x2beecc(0x1ff)]=$(_0x2beecc(0x1de)),_0xf7147d['$input']['after'](_0xf7147d[_0x2beecc(0x1ff)]),_0xf7147d['$toggleTreeBtn']['on'](_0x2beecc(0x199),function(){return _0x552655(this,void 0x0,void 0x0,function*(){const _0x12ba01=_0x1ce5;var _0x11fe8a;let _0x5de74b=![],_0x23483e;!_0xf7147d[_0x12ba01(0x232)]['is'](_0x12ba01(0x1dd))&&(_0xf7147d[_0x12ba01(0x1fe)][_0x12ba01(0x24a)](),_0x23483e=yield _0xf7147d[_0x12ba01(0x217)](),(_0x23483e!==_0xf7147d[_0x12ba01(0x1f9)]||((_0x11fe8a=_0xf7147d[_0x12ba01(0x1f9)])===null||_0x11fe8a===void 0x0?void 0x0:_0x11fe8a[_0x12ba01(0x1dc)])!==_0x23483e[_0x12ba01(0x1dc)])&&(yield _0xf7147d[_0x12ba01(0x254)]()),_0x5de74b=!![]),_0xf7147d[_0x12ba01(0x232)][_0x12ba01(0x17d)](),_0x5de74b&&(yield _0x4a3988(_0xf7147d,_0x23483e));});}),_0xf7147d['$verifyBtn']=$(_0x2beecc(0x178)),_0xf7147d[_0x2beecc(0x19e)]['after'](_0xf7147d[_0x2beecc(0x235)]),_0xf7147d[_0x2beecc(0x235)]['on']('click',()=>{const _0xfbb006=_0x2beecc,_0xe5a3c1=_0xf7147d[_0xfbb006(0x17f)]();if(!_0xe5a3c1)return;this['verify'](_0xe5a3c1);});const _0x2647cb=_0x171351=>_0x552655(this,void 0x0,void 0x0,function*(){const _0x3ed14c=_0x2beecc,_0x1f1e3e=this;let _0x2c3c68=_0x1f1e3e[_0x3ed14c(0x17f)]();if(!_0x2c3c68)return;const _0x274dc8=_0x5c566e(_0x1f1e3e),{data:_0x51225f,json:_0x5c538f}=yield _0x50305c(_0x274dc8,_0x171351);if(_0x51225f[_0x3ed14c(0x187)]!==0xc8)return;if(_0x5c538f[_0x3ed14c(0x1af)][_0x3ed14c(0x1f3)](/Good/)){const _0x2698ff=_0x12eb92(_0x5c538f,_0x2c3c68);_0x1f1e3e[_0x3ed14c(0x19e)][_0x3ed14c(0x27f)](_0x2698ff),_0x1f1e3e[_0x3ed14c(0x19e)]['trigger'](_0x3ed14c(0x261));}});{_0xf7147d[_0x2beecc(0x249)]=$(_0x2beecc(0x1c3)),_0xf7147d['$input'][_0x2beecc(0x1ef)](_0xf7147d[_0x2beecc(0x249)]),_0xf7147d[_0x2beecc(0x228)]=$('<button\x20type=\x22button\x22\x20tabindex=\x220\x22></button>')[_0x2beecc(0x286)](_0xf7147d[_0x2beecc(0x249)]),$(_0x2beecc(0x1ec))['toggle'](!![])['appendTo'](_0xf7147d[_0x2beecc(0x228)]),_0xf7147d[_0x2beecc(0x228)]['on'](_0x2beecc(0x199),function(_0x31f4bf){const _0x249cda=_0x2beecc;_0x31f4bf['preventDefault'](),_0x31f4bf[_0x249cda(0x201)](),_0xf7147d[_0x249cda(0x1cf)]();}),_0xf7147d[_0x2beecc(0x228)]['on'](_0x2beecc(0x1e7),function(_0x514e09){const _0x2a337c=_0x2beecc;_0x514e09[_0x2a337c(0x1d3)]===0x28&&_0xf7147d[_0x2a337c(0x1cf)](),_0x514e09['stopPropagation']();})['on'](_0x2beecc(0x24d),function(){const _0x1e5d18=_0x2beecc;_0xf7147d[_0x1e5d18(0x249)][_0x1e5d18(0x202)]('red-ui-typedInput-focus');})['on'](_0x2beecc(0x23a),function(){const _0x3db89f=_0x2beecc;_0xf7147d[_0x3db89f(0x249)][_0x3db89f(0x1ae)](_0x3db89f(0x1f1));}),_0xf7147d[_0x2beecc(0x21c)]=$('<span\x20class=\x22red-ui-typedInput-type-label\x22></span>')[_0x2beecc(0x20e)](_0xf7147d[_0x2beecc(0x228)]);}this[_0x2beecc(0x1a2)]();!_0xf7147d[_0x2beecc(0x19e)]['attr']('placeholder')&&_0xf7147d[_0x2beecc(0x19e)][_0x2beecc(0x18f)]('placeholder',_0x2beecc(0x252));_0xf7147d[_0x2beecc(0x1fe)]=$(_0x2beecc(0x234)),_0xf7147d['$info'][_0x2beecc(0x24a)](),_0xf7147d[_0x2beecc(0x26c)][_0x2beecc(0x1d8)](_0xf7147d['$info']),_0xf7147d[_0x2beecc(0x232)]=$('<div/>')[_0x2beecc(0x202)]('sterfive-dropdown')[_0x2beecc(0x24a)]()[_0x2beecc(0x20e)](_0xf7147d[_0x2beecc(0x26c)]),_0xf7147d[_0x2beecc(0x263)]=$(_0x2beecc(0x215))[_0x2beecc(0x20e)](_0xf7147d[_0x2beecc(0x232)]),this[_0x2beecc(0x254)]();const _0x59b56b=(_0x23bec8,_0x4fef31)=>{const _0x567e07=_0x2beecc,_0x3bcdab=0x14,_0x34b867=0x14,_0x274fcb=_0x23bec8[_0x567e07(0x1d5)](),_0x51d006=_0x4fef31;if(_0x51d006['pageX']>=_0x274fcb[_0x567e07(0x181)]&&_0x51d006[_0x567e07(0x243)]<=_0x274fcb['left']+_0x3bcdab&&_0x51d006[_0x567e07(0x16d)]>=_0x274fcb[_0x567e07(0x273)]&&_0x51d006['pageY']<=_0x274fcb[_0x567e07(0x273)]+_0x34b867)return!![];return![];},_0x5f230b=_0x4ba9d8=>_0x552655(this,void 0x0,void 0x0,function*(){const _0x3e8140=_0x2beecc;if(_0x4ba9d8['hasClass'](_0x3e8140(0x183)))_0x2146af(_0xf7147d,_0x4ba9d8);else{if(_0x4ba9d8['hasClass'](_0x3e8140(0x204)))_0x4ba9d8[_0x3e8140(0x1f8)]('ul')[_0x3e8140(0x17d)](),_0x4ba9d8[_0x3e8140(0x227)](_0x3e8140(0x1f7));else{if(_0x4ba9d8[_0x3e8140(0x1f8)]('ul')[_0x3e8140(0x1f8)]()[_0x3e8140(0x22b)]>0x0)_0x4ba9d8[_0x3e8140(0x1f8)]('ul')[_0x3e8140(0x17d)](),_0x4ba9d8['toggleClass']('expandable\x20expanded');else;}}});_0xf7147d[_0x2beecc(0x263)]['on'](_0x2beecc(0x279),'li',function(_0x498ca5){const _0x5a9469=_0x2beecc;var _0xad3aac,_0x231776;_0x498ca5[_0x5a9469(0x201)]();let _0x495983=$(this);if(_0x59b56b(_0x495983,_0x498ca5))_0x5f230b(_0x495983);else{const _0x5b4cb3=_0x495983[_0x5a9469(0x26a)](_0x5a9469(0x174)),_0x2d8984=_0x495983[_0x5a9469(0x26a)](_0x5a9469(0x1b3));if(_0xf7147d['options'][_0x5a9469(0x1d0)]&&!_0xf7147d[_0x5a9469(0x1aa)][_0x5a9469(0x1d0)](_0x2d8984))return;_0xf7147d[_0x5a9469(0x19e)][_0x5a9469(0x26a)](_0x5a9469(0x1b3),_0x2d8984),((_0xad3aac=_0x2d8984[_0x5a9469(0x1e1)])===null||_0xad3aac===void 0x0?void 0x0:_0xad3aac[_0x5a9469(0x1ca)])||((_0x231776=_0x2d8984[_0x5a9469(0x288)])===null||_0x231776===void 0x0?void 0x0:_0x231776['name'])||_0x2d8984['nodeId']['toString']();let _0x46d19d=_0xf7147d[_0x5a9469(0x17f)]();!_0x46d19d&&(_0x46d19d=_0x5a9469(0x1dc),_0xf7147d[_0x5a9469(0x1e8)](_0x46d19d)),_0x2647cb(_0x5b4cb3)[_0x5a9469(0x246)](()=>{const _0x3c12d1=_0x5a9469;_0xf7147d[_0x3c12d1(0x232)][_0x3c12d1(0x24a)]();})[_0x5a9469(0x1d2)](_0x1d450f=>{const _0x496fe6=_0x5a9469;_0xf7147d[_0x496fe6(0x232)][_0x496fe6(0x24a)]();});}}),_0xf7147d[_0x2beecc(0x263)]['on']('click','li',function(_0x33a289){const _0x57d0ff=_0x2beecc;_0x33a289[_0x57d0ff(0x201)]();let _0x3f47e6=$(this);_0x59b56b(_0x3f47e6,_0x33a289)&&_0x5f230b(_0x3f47e6),_0x2410a2(_0xf7147d,_0x3f47e6);}),$(document)['on']('click',function(_0x280e18){const _0x47be5c=_0x2beecc;!$(_0x280e18['target'])[_0x47be5c(0x27c)](_0xf7147d[_0x47be5c(0x26c)])[_0x47be5c(0x22b)]&&_0xf7147d[_0x47be5c(0x232)][_0x47be5c(0x24a)]();});}});},_0x35b613=()=>{const _0x2cf0e9=_0x5109f3,_0x14859e=$(_0x2cf0e9(0x191)),_0x5eebcd=_0x14859e[_0x2cf0e9(0x27f)](),_0x653eda=RED[_0x2cf0e9(0x19a)][_0x2cf0e9(0x1f0)](_0x5eebcd);if(!_0x653eda)return undefined;const {endpoint:_0x22990f,securityMode:_0x1cb4e3,securityPolicy:_0x2fb283,userIdentityType:_0x3f1da5,credentials:_0x3337ab,namespaceAliases:_0xe0feca}=_0x653eda,_0x270e10={'endpoint':_0x22990f,'securityMode':_0x1cb4e3,'securityPolicy':_0x2fb283,'userIdentityType':_0x3f1da5,'credentials':_0x3337ab,'namespaceAliases':_0xe0feca};return _0x270e10;},_0x3e6fba=()=>{const _0x2454c4=_0x5109f3,_0x429230=$(_0x2454c4(0x191)),_0x410711=_0x429230[_0x2454c4(0x27f)](),_0x470647=_0x35b613();if(!_0x470647)return undefined;const _0x1be9ef=_0x470647['namespaceAliases'];return Object['assign']({'namespaceAliases':_0x1be9ef,'id':_0x410711},_0x470647);},_0x5b4951=()=>{return{'endpointNode':_0x3e6fba};},_0x1ab072=()=>{const _0xe50ab4=_0x5109f3,_0x4005bf=$('.red-ui-tray-body');console[_0xe50ab4(0x193)]('installFeedbackWidget\x20',_0x4005bf[_0xe50ab4(0x22b)]);if(_0x4005bf['length']){console['log'](_0xe50ab4(0x1ab));const _0x13f78e=$(_0xe50ab4(0x1db),{'src':_0xe50ab4(0x218),'scrolling':'no','style':_0xe50ab4(0x21f),'allowtransparency':_0xe50ab4(0x229),'width':_0xe50ab4(0x205),'height':_0xe50ab4(0x26f)});_0x4005bf[_0xe50ab4(0x1d8)](_0x13f78e),_0x13f78e[_0xe50ab4(0x18a)]({'position':_0xe50ab4(0x268),'right':'20px','bottom':_0xe50ab4(0x16a)});}};RED[_0x5109f3(0x19a)][_0x5109f3(0x25d)](_0x5109f3(0x213),{'category':_0x5109f3(0x208),'color':'#C0DEED','align':_0x5109f3(0x285),'icon':_0x5109f3(0x245),'paletteLabel':'write','defaults':{'inputs':{'value':0x1},'output':{'value':0x4},'name':{'value':''},'endpoint':{'value':'','required':!![],'type':_0x5109f3(0x260)},'attributeId':{'value':_0x5109f3(0x22e),'required':!![]},'nodeId':{'value':'','required':![]}},'inputs':0x1,'outputs':0x1,'label'(){const _0x12830c=_0x5109f3;return this[_0x12830c(0x1e5)]||_0x12830c(0x244);},'labelStyle'(){const _0x4750b6=_0x5109f3;return this[_0x4750b6(0x1e5)]?'node_label_italic':'';},'oneditprepare'(){const _0x18f938=_0x5109f3,_0x38b3cb=this;_0xfc1949(),_0x1ab072(),_0x38b3cb['inputs']=0x1;const _0x23dbee=$(_0x18f938(0x280));_0x23dbee[_0x18f938(0x242)](Object[_0x18f938(0x230)](Object[_0x18f938(0x230)]({},_0x5b4951()),{'isSelectable'(_0x1b7093){const _0x48ae02=_0x18f938;return _0x1b7093[_0x48ae02(0x27e)]===_0x48ae02(0x259);}}));},'oneditsave'(){}});}()));
|
8
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNvdXJjZU1hcCJdLCJuYW1lcyI6WyJfMHg1NTI2NTUiLCJfMHgzNzJmMmUiLCJfMHgyMjgzOTciLCJfMHg1NzY0ZTEiLCJfMHgyOTAyM2YiLCJfMHgyY2UwYzgiLCJfMHhiZTZhZmMiLCJfMHgzNzkwMGQiLCJQcm9taXNlIiwiXzB4NDZmYWI0IiwiXzB4NTk2YTE3IiwiXzB4MTQ0MDY1IiwiXzB4NTA0ODE2IiwiXzB4MWU2NDQyIiwiXzB4YzlmZTM5IiwiXzB4MmFlNTRmIiwiXzB4NDAwZGU3IiwiXzB4MzllMzBiIiwiXzB4NGUwYTI1IiwiU3VwcHJlc3NlZEVycm9yIiwiXzB4MThlYzRhIiwiXzB4MmNjZjgzIiwiXzB4M2EwNTA1IiwiXzB4NWQzNjM0IiwiRXJyb3IiLCJfMHgxODQ3YTYiLCJfMHhkMWM4YmYiLCJfMHg0M2E5ZjIiLCJfMHgzMmU2ZjEiLCJfMHgyZmIxNmIiLCJfMHg0YjUwZDQiLCJfMHg1YzVlZTIiLCJfMHgyZGNmN2UiLCJfMHhjYzJlNjgiLCJfMHg0YzAzOTkiLCJfMHgyZjE4ZmUiLCJfMHgzMDRmODIiLCJfMHgxNjRiNTAiLCJfMHg0ZjAxOGIiLCJfMHg3YjdkYzgiLCJfMHhiOTNlMzUiLCJfMHgxNjA0MzYiLCJfMHgyZGQ5MmEiLCJfMHgxODI5MTAiLCJfMHgzODc0YjUiLCJfMHgyZjRlYmEiLCJfMHgzZTI0OWEiLCJfMHgzYjgxZDciLCJlbmRwb2ludE5vZGUiLCJfMHg2MWE2NGUiLCJlbmRwb2ludCIsIl8weDNmYjQ2ZiIsImJhc2VVcmwiLCJfMHgzOGI2ZjYiLCJfMHgxYWQ5NzEiLCJfMHgzODAwZGQiLCJfMHg1ZDg0ODAiLCJfMHg1OGZlNWYiLCJfMHgzNGU3NzYiLCJPYmplY3QiLCJfMHgyMjNiZWQiLCJmZXRjaCIsIkpTT04iLCJjb25zb2xlIiwiXzB4MjI2YzUyIiwiXzB4YTNkNzYyIiwiXzB4NTliNjE3IiwiXzB4NWNmMzE5IiwiXzB4MTNlMWNhIiwiXzB4NTdhZmM2IiwiXzB4MzI4NTA1IiwiXzB4MjE1MDIwIiwiXzB4NTk0NjQzIiwiXzB4NGJjMzg0Iiwibm9kZUlkIiwiXzB4MWFmMzNjIiwicm9vdE5vZGVJZCIsIl8weDFkMzVmZCIsImlzVHlwZSIsIl8weDMyZTZjMiIsIl8weDVlNDExZCIsIl8weDFiNThiYiIsIl8weDFiMzNhOSIsIl8weDNjOGIwNiIsIl8weDEyZWI5MiIsIl8weDFkMTc3OCIsIl8weDFhMTQyNiIsIl8weDQyMGY3OCIsIl8weDQ3ZTY0ZSIsIl8weDQzZjY4OCIsIl8weDRlN2U3MCIsIl8weDFiMGE5NyIsIl8weDU5MDk2OCIsIl8weDViYjlmMyIsIl8weDVlYzFiNyIsIl8weDFmYzNkYyIsIl8weDNjY2UxYSIsIl8weDFmZDcwMCIsIl8weDQ3YjQ3NCIsIl8weDRkNDhhNCIsIl8weDUwMzA1YyIsIl8weDExZTdmYyIsIl8weDQ2MDAzYSIsIl8weDU3NmMzMyIsIl8weDIyYWE0OCIsIl8weGEyMzNjOSIsIl8weDExNmFlZSIsIl8weDIyNmM1MSIsIl8weDJkY2YzNiIsIl8weDMyZTZlMSIsIl8weDJhMmQ0MyIsIlJFRCIsIl8weDU4YWRiMSIsIl8weDJjZWJmOSIsIl8weDEwNTA2YyIsIl8weDI0YTBjYyIsIl8weDIwZGZhMSIsIl8weDUzMjZjNSIsIl8weDI4OTE2OCIsIl8weDJiMzQ5NSIsIl8weGY4OTI0MiIsIl8weDUyMmY1NCIsIl8weDUzMGE3NSIsIl8weDVjOTgwNiIsIl8weDExMmYwZSIsIl8weDRjZWMzMyIsIl8weDQ0MzIxYiIsImpzb24iLCJfMHhiZTEwYjQiLCJkYXRhIiwiXzB4MzMzODVjIiwiXzB4NTdjYjgyIiwiXzB4MzgzODc0IiwiXzB4NWQ1M2MyIiwic2V0VGltZW91dCIsIl8weDRmN2ZjMCIsIl8weDFiNTc1ZSIsIl8weDQyNGQ2NSIsIl8weDFiNzhlNSIsIl8weDFhOTI4OSIsIl8weDU1M2I4NSIsIl8weDFkODQ5NSIsIl8weDNkOGE1OSIsIl8weDM2NWU2MSIsIl8weDU0NzQ3NyIsIl8weDQ1YzcwNyIsIl8weDRmYzBlMyIsIl8weDNkY2ZlNiIsIl8weDM3ZTU5ZiIsIl8weDJhYjFmNyIsIl8weDNmYzIxNCIsIl8weDNlNTMxZSIsIl8weDI3NzFmZiIsIl8weDJiNzhiMCIsIl8weDU2ZGMwYyIsIl8weDNhMjAzNyIsIiQiLCJfMHg1YzRkNGYiLCJfMHg1YWM1ZmYiLCJpY29uIiwiXzB4M2ZiZDc4IiwiY29sb3IiLCJfMHgzMGY4NGQiLCJfMHgxNmJlNjQiLCJfMHg0OGUwMGEiLCJfMHg0N2QwMjUiLCJfMHgxNWUzZDAiLCJfMHgxZTQ1OTgiLCJfMHgyNDEwYTIiLCJfMHg1MjViYjEiLCJfMHgxZjRhYjMiLCJfMHg3NWJjMmEiLCJfMHg1MzQ5MmIiLCJfMHg0M2YxYmUiLCJfMHgyOGExYWMiLCJfMHg0NGE0ODYiLCJfMHg1YjcwZDYiLCJfMHgyNmJmNDYiLCJfMHgyMTQ2YWYiLCJfMHgzMmJjYmEiLCJfMHg1YTFiNTgiLCJfMHgxYjBkMjAiLCJfMHg0YWFiM2YiLCJfMHgyMzUyZTYiLCJfMHgyMWYyODkiLCJ1bmRlZmluZWQiLCJfMHgxMWIxNDIiLCJfMHg0YTM5ODgiLCJfMHg1NjY2MzciLCJfMHg1N2QwMjQiLCJfMHg1ZDE2NWEiLCJfMHgzMzBhYzQiLCJfMHhlYmNhMjMiLCJfMHg1YzU2NmUiLCJfMHg0M2ZiZmIiLCJfMHg0Nzg1NmMiLCJfMHg1ZWI0OGEiLCJfMHgyYmNiZjkiLCJfMHgyZjQyZTQiLCJfMHg0NDFmNDkiLCJyZWZlcmVuY2VzIiwiXzB4MzNlZWNiIiwiXzB4MzQ3NGMxIiwiXzB4NDEwYTg1IiwiXzB4NDVjODI5IiwiXzB4OTY0YTdiIiwiXzB4NDk3NzhiIiwiXzB4MzNlNzk3IiwiXzB4NTBiNTM0IiwiXzB4NDliOTM2IiwiXzB4NDc1NTljIiwiXzB4MTRhNGJlIiwiXzB4NDM2YzAzIiwiXzB4NWVjMGI4IiwiXzB4NDUxNmQxIiwiXzB4MmU3YzU3IiwiXzB4MjM5NzgxIiwiXzB4ZmMxOTQ5IiwiXzB4NGE3MDU3IiwiXzB4MTQ3ZTQ0IiwiXzB4MjJhOTFiIiwiXzB4NWRhZWFkIiwiXzB4MzA2ODk5IiwiXzB4MmVhMmZkIiwiXzB4MTQ4NzJmIiwiXzB4NTkxZGIwIiwiXzB4MmVmMWMwIiwiXzB4NWVkYzFiIiwiXzB4MTA1NTJlIiwiXzB4MWJlZWI2IiwiXzB4NGIzY2IwIiwiZG9jdW1lbnQiLCJfMHg0MDM5MmMiLCJfMHgyNGU4ZjgiLCJfMHhmY2NkZGQiLCJfMHgzOTc2MTgiLCJfMHhkYjgzMzEiLCJfMHg0MjQ0OGYiLCJfMHgyMDI4OGUiLCJfMHg0ZDcyMzAiLCJfMHgxOWRmMWUiLCJfMHgxNjcyNDgiLCJfMHgxMTY5YzEiLCJfMHgyZmFjZTgiLCJfMHgzODUyZDciLCJfMHg0NGFiYmQiLCJfMHg1MDQ1MTciLCJfMHgxN2U1OWYiLCJfMHg1NzljZDciLCJfMHg0ZWU2ZjkiLCJfMHgyZDE5MDEiLCJ3aW5kb3ciLCJfMHg1NDI1ZTUiLCJfMHg0ZmVjYjgiLCJfMHg1NmRjODUiLCJfMHg1Y2QyMDAiLCJfMHgzZjkzZDciLCJfMHgzYWNjYWEiLCJfMHg0OGFiZmEiLCJfMHg1NzhiNWQiLCJfMHgyODkyYzciLCJfMHgyZTFmZGQiLCJfMHg0MTE3M2IiLCJfMHhkOGJhN2YiLCJfMHg0OGNmODgiLCJfMHg0Njg1YzAiLCJfMHg0ZTljYTIiLCJfMHgxODMwMTUiLCJfMHg4MDhjNGUiLCJfMHgyOTVmMzAiLCJfMHg0NjU4NzQiLCJfMHhmNzE0N2QiLCJfMHgxMWZlOGEiLCJfMHg1ZGU3NGIiLCJfMHgyMzQ4M2UiLCJfMHhlNWEzYzEiLCJfMHgyNjQ3Y2IiLCJfMHgxNzEzNTEiLCJfMHgxZjFlM2UiLCJfMHgyYzNjNjgiLCJfMHgyNzRkYzgiLCJfMHg1MTIyNWYiLCJfMHg1YzUzOGYiLCJfMHgyNjk4ZmYiLCJfMHgzMWY0YmYiLCJfMHg1MTRlMDkiLCJfMHg1OWI1NmIiLCJfMHgyM2JlYzgiLCJfMHg0ZmVmMzEiLCJfMHgzYmNkYWIiLCJfMHgzNGI4NjciLCJfMHgyNzRmY2IiLCJfMHg1MWQwMDYiLCJfMHg1ZjIzMGIiLCJfMHg0YmE5ZDgiLCJfMHg0OThjYTUiLCJfMHhhZDNhYWMiLCJfMHgyMzE3NzYiLCJfMHg0OTU5ODMiLCJfMHg1YjRjYjMiLCJfMHgyZDg5ODQiLCJfMHg0NmQxOWQiLCJfMHgxZDQ1MGYiLCJfMHgzM2EyODkiLCJfMHgzZjQ3ZTYiLCJfMHgyODBlMTgiLCJfMHgzNWI2MTMiLCJfMHgxNDg1OWUiLCJfMHg1ZWViY2QiLCJfMHg2NTNlZGEiLCJfMHgyMjk5MGYiLCJzZWN1cml0eU1vZGUiLCJfMHgxY2I0ZTMiLCJzZWN1cml0eVBvbGljeSIsIl8weDJmYjI4MyIsInVzZXJJZGVudGl0eVR5cGUiLCJfMHgzZjFkYTUiLCJjcmVkZW50aWFscyIsIl8weDMzMzdhYiIsIm5hbWVzcGFjZUFsaWFzZXMiLCJfMHhlMGZlY2EiLCJfMHgyNzBlMTAiLCJfMHgzZTZmYmEiLCJfMHg0MjkyMzAiLCJfMHg0MTA3MTEiLCJfMHg0NzA2NDciLCJfMHgxYmU5ZWYiLCJfMHg1YjQ5NTEiLCJfMHgxYWIwNzIiLCJfMHg0MDA1YmYiLCJfMHgxM2Y3OGUiLCJfMHgzOGIzY2IiLCJfMHgyM2RiZWUiLCJfMHgxYjcwOTMiXSwibWFwcGluZ3MiOiJvOUtBQUEsQ0FBQyxVLENBQ0csYSx3QkFtQkEsU0FBU0EsU0FBVCxDQUFtQkMsU0FBbkIsQ0FBNEJDLFNBQTVCLENBQXdDQyxTQUF4QyxDQUEyQ0MsU0FBM0MsQyxDQUNJLFNBQVNDLFNBQVQsQ0FBZUMsU0FBZixDLFFBQStCQSxTQUFBLFlBQWlCSCxTQUFqQixDQUFxQkcsU0FBckIsQ0FBNkIsSUFBSUgsU0FBSixDQUFNLFNBQVVJLFNBQVYsQyxDQUFxQkEsU0FBQSxDQUFRRCxTQUFSLEMsRUFBM0IsQyxTQUNyRCxHQUFLLENBQUFILFNBQUEsRUFBTSxDQUFBQSxTQUFBLENBQUlLLE9BQUosQ0FBTixDQUFMLENBQXlCLFNBQVVDLFNBQVYsQ0FBbUJDLFNBQW5CLEMseUJBQzVCLFNBQVNDLFNBQVQsQ0FBbUJDLFNBQW5CLEMseUJBQTRCLEcsQ0FBTUMsU0FBQSxDQUFLVCxTQUFBLEMsZ0JBQUEsRUFBZVEsU0FBZixDQUFMLEMsRUFBK0IsTUFBT0UsU0FBUCxDLENBQVlKLFNBQUEsQ0FBT0ksU0FBUCxDLEdBQzdFLFNBQVNDLFNBQVQsQ0FBa0JDLFNBQWxCLEMseUJBQTJCLEcsQ0FBTUgsU0FBQSxDQUFLVCxTQUFBLEMsZ0JBQUEsRUFBbUJZLFNBQW5CLENBQUwsQyxFQUFtQyxNQUFPQyxTQUFQLEMsQ0FBWVAsU0FBQSxDQUFPTyxTQUFQLEMsR0FDaEYsU0FBU0osU0FBVCxDQUFjSyxTQUFkLEMseUJBQXdCQSxTQUFBLEMsTUFBQSxFQUFjVCxTQUFBLENBQVFTLFNBQUEsQyxnQkFBQSxDQUFSLENBQWQsQ0FBc0NiLFNBQUEsQ0FBTWEsU0FBQSxDLGdCQUFBLENBQU4sRSxNQUFBLEVBQXlCUCxTQUF6QixDQUFvQ0ksU0FBcEMsQyxFQUM5REYsU0FBQSxDQUFNLENBQUFULFNBQUEsQ0FBWUEsU0FBQSxDLGdCQUFBLEVBQWdCSCxTQUFoQixDQUF5QkMsU0FBQSxFQUFjLEVBQXZDLENBQVosQ0FBRCxDLGdCQUFBLEdBQUwsQyxFQUpHLEMsRUFRWCxPQUFPaUIsZUFBUCxHLGdCQUFBLENBQXdDQSxlQUF4QyxDQUEwRCxTQUFVQyxTQUFWLENBQWlCQyxTQUFqQixDQUE2QkMsU0FBN0IsQywyQkFDdEQsSUFBSUMsU0FBQSxDQUFJLElBQUlDLEtBQUosQ0FBVUYsU0FBVixDQUFSLEMsT0FDT0MsU0FBQSxDLGdCQUFBLEUsZ0JBQUEsQ0FBNEJBLFNBQUEsQyxnQkFBQSxFQUFVSCxTQUF0QyxDQUE2Q0csU0FBQSxDLFlBQUEsRUFBZUYsU0FBNUQsQ0FBd0VFLFMsRUFGbkYsQ0FLQSxNQUFNRSxTQUFBLEMsZ0JBQU4sQ0FDTUMsU0FBQSxDLFdBRE4sQ0FFTUMsU0FBQSxDLGdCQUZOLENBR01DLFNBQUEsQyxnQkFITixDQUlNQyxTQUFBLEMsV0FKTixDQUtNQyxTQUFBLEMsV0FMTixDQU1NQyxTQUFBLEMsZ0JBTk4sQ0FRQSxJQUFJQyxTQUFKLENBQ0EsQ0FBQyxTQUFVQyxTQUFWLEMsMkJBQ0dBLFNBQUEsQ0FBZ0JBLFNBQUEsQyxTQUFBLEUsR0FBaEIsRSxVQUNBQSxTQUFBLENBQWdCQSxTQUFBLEMsZ0JBQUEsRSxHQUFoQixFLFVBQ0FBLFNBQUEsQ0FBZ0JBLFNBQUEsQyxNQUFBLEUsR0FBaEIsRSxpQkFDQUEsU0FBQSxDQUFnQkEsU0FBQSxDLGdCQUFBLEUsR0FBaEIsRSxrQkFKSixDQUtHRCxTQUFBLEVBQW9CLENBQUFBLFNBQUEsQ0FBa0IsRUFBbEIsQ0FMdkIsR0FNQSxJQUFJRSxTQUFKLENBQ0EsQ0FBQyxTQUFVQyxTQUFWLEMsMkJBQ0dBLFNBQUEsQ0FBVUEsU0FBQSxDLGdCQUFBLEUsR0FBVixFLGlCQUNBQSxTQUFBLENBQVVBLFNBQUEsQyxnQkFBQSxFLEdBQVYsRSxpQkFDQUEsU0FBQSxDQUFVQSxTQUFBLEMsZ0JBQUEsRSxHQUFWLEUsaUJBQ0FBLFNBQUEsQ0FBVUEsU0FBQSxDLFFBQUEsRSxHQUFWLEUsaUJBQ0FBLFNBQUEsQ0FBVUEsU0FBQSxDLFlBQUEsRSxHQUFWLEUsYUFDQUEsU0FBQSxDQUFVQSxTQUFBLEMsY0FBQSxFLElBQVYsRSxpQkFDQUEsU0FBQSxDQUFVQSxTQUFBLEMsZ0JBQUEsRSxJQUFWLEUsZ0JBQ0FBLFNBQUEsQ0FBVUEsU0FBQSxDLFVBQUEsRSxJQUFWLEUsV0FDQUEsU0FBQSxDQUFVQSxTQUFBLEMsTUFBQSxFLElBQVYsRSxRQVRKLENBVUdELFNBQUEsRUFBYyxDQUFBQSxTQUFBLENBQVksRUFBWixDQVZqQixHQVdBLElBQUlFLFNBQUosQ0FDQSxDQUFDLFNBQVVDLFNBQVYsQywyQkFDR0EsU0FBQSxDQUFjQSxTQUFBLEMsUUFBQSxFLEdBQWQsRSxpQkFDQUEsU0FBQSxDQUFjQSxTQUFBLEMsZ0JBQUEsRSxHQUFkLEUsaUJBQ0FBLFNBQUEsQ0FBY0EsU0FBQSxDLGdCQUFBLEUsR0FBZCxFLGlCQUNBQSxTQUFBLENBQWNBLFNBQUEsQyxZQUFBLEUsR0FBZCxFLGlCQUNBQSxTQUFBLENBQWNBLFNBQUEsQyxnQkFBQSxFLElBQWQsRSxpQkFDQUEsU0FBQSxDQUFjQSxTQUFBLEMsZ0JBQUEsRSxJQUFkLEUsaUJBQ0FBLFNBQUEsQ0FBY0EsU0FBQSxDLGdCQUFBLEUsSUFBZCxFLGlCQUNBQSxTQUFBLENBQWNBLFNBQUEsQyxNQUFBLEUsSUFBZCxFLGtCQVJKLENBU0dELFNBQUEsRUFBa0IsQ0FBQUEsU0FBQSxDQUFnQixFQUFoQixDQVRyQixHQVVBLElBQUlFLFNBQUosQ0FDQSxDQUFDLFNBQVVDLFNBQVYsQywyQkFDR0EsU0FBQSxDQUFXQSxTQUFBLEMsZUFBQSxFLEdBQVgsRSxpQkFDQUEsU0FBQSxDQUFXQSxTQUFBLEMsZ0JBQUEsRSxHQUFYLEUsaUJBQ0FBLFNBQUEsQ0FBV0EsU0FBQSxDLFdBQUEsRSxHQUFYLEUsWUFDQUEsU0FBQSxDQUFXQSxTQUFBLEMsZ0JBQUEsRSxHQUFYLEUsYUFDQUEsU0FBQSxDQUFXQSxTQUFBLEMsYUFBQSxFLElBQVgsRSxpQkFDQUEsU0FBQSxDQUFXQSxTQUFBLEMsZ0JBQUEsRSxJQUFYLEUsa0JBTkosQ0FPR0QsU0FBQSxFQUFlLENBQUFBLFNBQUEsQ0FBYSxFQUFiLENBUGxCLEdBU0EsU0FBU0UsU0FBVCxDQUF1QkMsU0FBdkIsQywyQkFDSSxPQUFRQSxTQUFSLEVBQ0ksSyxnQkFBQSxDQUNJLE9BQU9oQixTQUFQLENBQ0osSyxnQkFBQSxDQUNJLE9BQU9HLFNBQVAsQ0FDSixLLGdCQUFBLENBQ0ksT0FBT0QsU0FBUCxDQUNKLEssZ0JBQUEsQ0FDSSxPQUFPRSxTQUFQLENBQ0osSyxnQkFBQSxDQUNJLE9BQU9DLFNBQVAsQ0FDSixLLGdCQUFBLENBQ0ksT0FBT0MsU0FBUCxDQVpSLEMsQ0FnQkosTUFBTVcsU0FBQSxDQUFXQyxTQUFELEUsMkJBQ1osT0FBUUEsU0FBQSxDLFdBQUEsQ0FBUixFQUNJLEssZ0JBQUEsQyxHQUNRQSxTQUFBLEMsZ0JBQUEsSUFBOEJsQixTLEtBQzlCa0IsU0FBQSxDLGdCQUFBLElBQTZCakIsU0FBN0IsRUFBMkNpQixTQUFBLEMsZ0JBQUEsSSx1QkFDcEMsQyxNQUFFLEMsZ0JBQUYsQyxPQUFxQixDLGdCQUFyQixDLENBRVgsTUFBTyxDLE1BQUUsQyxpQkFBRixDLE9BQTJCLEMsVUFBM0IsQ0FBUCxDQUNKLEssZ0JBQUEsQyxHQUNRQSxTQUFBLEMsZ0JBQUEsSUFBOEJoQixTLE9BQ3ZCLEMsTUFBRSxDLGdCQUFGLEMsT0FBdUIsQyxXQUF2QixDLGFBRUZnQixTQUFBLEMsZ0JBQUEsSUFBOEJmLFMsQ0FDNUIsQyxNQUFFLEMsZ0JBQUYsQyxPQUF1QixDLGdCQUF2QixDLENBR0EsQyxNQUFFLEMsYUFBRixDLE9BQXVCLEMsZ0JBQXZCLEMsQ0FFZixLLGdCQUFBLENBQ0ksTUFBTyxDLE1BQUUsQyxnQkFBRixDLE9BQWtCLEMsZ0JBQWxCLENBQVAsQ0FDSixLLGdCQUFBLENBQ0ksTUFBTyxDLE1BQUUsQyxpQkFBRixDLE9BQTJCLEMsZ0JBQTNCLENBQVAsQ0FDSixLLGdCQUFBLENBQ0ksTUFBTyxDLE1BQUUsQyxnQkFBRixDLE9BQXNCLEMsZ0JBQXRCLENBQVAsQ0FDSixJLFVBQUEsQ0FDSSxNQUFPLEMsTUFBRSxDLGVBQUYsQyxPQUF5QixDLFdBQXpCLENBQVAsQ0F4QlIsQyxNQTBCTyxDLE1BQUUsQyxnQkFBRixDLE9BQXVCLEMsZ0JBQXZCLEMsRUEzQlgsQ0E4Qk1nQixTQUFBLENBQVMsQ0FBQ0MsU0FBRCxDQUFLQyxTQUFMLENBQWVDLFNBQWYsR0FBOEIvQyxTQUFBLENBQVUsSyxHQUFWLENBQWtCLENBQUM2QyxTQUFELENBQUtDLFNBQUwsQ0FBZUMsU0FBZixDQUFsQixDQUE4QyxLLEdBQTlDLENBQXNELFVBQVcsQ0FBRUMsWUFBQSxDQUFBQyxTQUFGLENBQWdCQyxRQUFBLENBQUFDLFNBQWhCLENBQTBCQyxPQUFBLENBQUFDLFNBQTFCLENBQVgsQ0FBZ0RDLFNBQWhELENBQXdEQyxTQUF4RCxDLDJCQUN6RkMsU0FBQSxDQUFVSCxTLGtCQUNWSSxTQUFBLENBQVNELFMsV0FDVEUsU0FBQSxDQUFvQkMsTUFBQSxDLGdCQUFBLEVBQWNBLE1BQUEsQyxnQkFBQSxFQUFjLEVBQWQsQ0FBa0JKLFNBQWxCLENBQWQsQ0FBMkMsQyxRQUFFLENBQUFELFNBQUYsQyxZQUFVLEMsSUFBVixDQUEzQyxDLENBQ3BCTSxTQUFBLENBQU8sTUFBTUMsS0FBQSxDQUFNSixTQUFOLENBQVcsQyxRQUMxQixDLE1BRDBCLEMsTUFFMUIsQ0FBTUssSUFBQSxDLGdCQUFBLEVBQWUsQyxjQUNqQixDQUFBYixTQURpQixDLFVBRWpCLENBQUFFLFNBRmlCLEMsbUJBR2pCLENBQUFPLFNBSGlCLENBQWYsQ0FGb0IsQyxTQU8xQixDQUFTLEMsY0FBRSxDLGtCQUFGLENBUGlCLENBQVgsQyxJQVNmRSxTQUFBLEMsZ0JBQUEsSSxZQUNBRyxPQUFBLEMsS0FBQSxFLGdCQUFBLENBQTBDSCxTQUFBLEMsZ0JBQUEsQ0FBMUMsQ0FBdURBLFNBQUEsQyxnQkFBQSxDQUF2RCxDLENBQ08sQyxZQUFFLENBQVksRUFBZCxDLENBR1gsTUFBTUksU0FBQSxDQUFXLE1BQU1KLFNBQUEsQyxnQkFBQSxHQUF2QixDQUNNSyxTQUFBLENBQWFELFNBQUEsQyxnQkFBQSxFLFlBQUEsR0FBb0MsRUFEdkQsQyxNQUVPLEMsWUFBRSxDQUFBQyxTQUFGLEMsRUFwQmtDLENBOUI3QyxDQXFETUMsU0FBQSxDQUFZLEMsaUJBQ2QsQ0FBaUIxQixTQUFBLEMsVUFBQSxDQURILEMsaUJBRWQsQyxJQUZjLEMsaUJBR2QsQ0FBaUJSLFNBQUEsQyxnQkFBQSxDQUhILEMsZUFJZCxDQUFlRSxTQUFBLEMsZ0JBQUEsRUFBcUJBLFNBQUEsQyxRQUFBLENBQXJCLENBQXdDQSxTQUFBLEMsUUFBQSxDQUp6QyxDLFlBVWQsQyxJQVZjLENBckRsQixDQWlFTWlDLFNBQUEsQ0FBWSxDLGlCQUNkLENBQWlCM0IsU0FBQSxDLFdBQUEsQ0FESCxDLGlCQUVkLEMsSUFGYyxDLGlCQUdkLENBQWlCUixTQUFBLEMsZ0JBQUEsQ0FISCxDLGVBSWQsQ0FBZUUsU0FBQSxDLGdCQUFBLEVBQXFCQSxTQUFBLEMsZ0JBQUEsQ0FBckIsQ0FBd0NBLFNBQUEsQyxnQkFBQSxDQUp6QyxDLFlBVWQsQyxJQVZjLENBakVsQixDQTZFTWtDLFNBQUEsQ0FBZSxDQUFDQyxTQUFELENBQUtDLFNBQUwsR0FBWXRFLFNBQUEsQ0FBVSxLLEdBQVYsQ0FBa0IsQ0FBQ3FFLFNBQUQsQ0FBS0MsU0FBTCxDQUFsQixDQUE0QixLLEdBQTVCLENBQW9DLFVBQVcsQ0FBRXRCLFlBQUEsQ0FBQXVCLFNBQUYsQ0FBZ0JyQixRQUFBLENBQUFzQixTQUFoQixDQUEwQnBCLE9BQUEsQ0FBQXFCLFNBQTFCLENBQVgsQ0FBZ0QsQ0FBRUMsTUFBQSxDQUFBQyxTQUFGLENBQVVDLFVBQUEsQ0FBQUMsU0FBVixDQUFzQkMsTUFBQSxDQUFBQyxTQUF0QixDQUFoRCxDLDJCQUMzREMsU0FBQSxDQUFVUCxTLGtCQUNWUSxTQUFBLENBQVNELFMsa0JBQ1RFLFNBQUEsQ0FBTyxNQUFNckIsS0FBQSxDQUFNb0IsU0FBTixDQUFXLEMsUUFDMUIsQyxnQkFEMEIsQyxNQUUxQixDQUFNbkIsSUFBQSxDLFdBQUEsRUFBZSxDLGNBQ2pCLENBQUFTLFNBRGlCLEMsVUFFakIsQ0FBQUMsU0FGaUIsQyxRQUdqQixDQUFBRyxTQUhpQixDLFlBSWpCLENBQUFFLFNBSmlCLEMsUUFLakIsQ0FBQUUsU0FMaUIsQ0FBZixDQUZvQixDLFNBUzFCLENBQVMsQyxjQUFFLEMsZ0JBQUYsQ0FUaUIsQ0FBWCxDLElBV2ZHLFNBQUEsQyxnQkFBQSxJLFlBQ08sSSxDQUVYLE1BQU1DLFNBQUEsQ0FBUSxNQUFNRCxTQUFBLEMsTUFBQSxHQUFwQixDLE9BQ09DLFNBQUEsQyxnQkFBQSxDLEVBbEJzQixDQTdFakMsQ0FpR01DLFNBQUEsQ0FBZSxDQUFDQyxTQUFELENBQU9DLFNBQVAsRyw4QkFDYkQsU0FBQSxDLGdCQUFBLEksd0JBQ09BLFNBQUEsQyxnQkFBQSxDLENBRVgsT0FBUUMsU0FBUixFQUNJLEssZ0JBQUEsQ0FDSSxPQUFPRCxTQUFBLEMsZ0JBQUEsQ0FBUCxDQUNKLEssZ0JBQUEsQ0FDSSxPQUFPQSxTQUFBLEMsWUFBQSxHQUFtQkEsU0FBQSxDLGdCQUFBLENBQTFCLENBQ0osSyxnQkFBQSxDQUNJLE9BQU9BLFNBQUEsQyxnQkFBQSxHQUF1QkEsU0FBQSxDLGdCQUFBLENBQTlCLENBQ0osSyxnQkFBQSxDQUNJLE9BQU9BLFNBQUEsQyxnQkFBQSxDQUFQLENBQ0osUUFDQSxLLGdCQUFBLENBQ0ksT0FBT0EsU0FBQSxDLGdCQUFBLENBQVAsQ0FYUixDLENBckdKLENBbUhNRSxTQUFBLENBQWVDLFNBQUQsRSw4QkFDWkEsU0FBQSxDLGdCQUFBLEkseUNBQ3NCQSxTQUFBLEMsZ0JBQUEsQyxNQUd0QixJQUFJQyxTQUFBLENBQU0sRUFBVixDLE9BQ0FBLFNBQUEsQyxnQkFBQSxFLGlCQUFvQkQsU0FBQSxDLGdCQUFBLENBQXBCLEMsQ0FDQUMsU0FBQSxDLGdCQUFBLEUsaUJBQXlCRCxTQUFBLEMsZ0JBQUEsQ0FBekIsQyxDQUNBQyxTQUFBLEMsZ0JBQUEsRSxxQkFBd0J2RCxTQUFBLENBQVVzRCxTQUFBLEMsZ0JBQUEsQ0FBVixDQUF4QixDLENBQ0lBLFNBQUEsQyxnQkFBQSxDLEVBQ0FDLFNBQUEsQyxNQUFBLEUsaUJBQXdCRCxTQUFBLEMsZ0JBQUEsQ0FBeEIsQyxDQUVBQSxTQUFBLEMsZ0JBQUEsQyxFQUNBQyxTQUFBLEMsZ0JBQUEsRSxpQkFBNEJELFNBQUEsQyxnQkFBQSxDQUE1QixDLENBRUFBLFNBQUEsQyxnQkFBQSxDLEVBQ0FDLFNBQUEsQyxNQUFBLEUsaUJBQWdDRCxTQUFBLEMsWUFBQSxDQUFoQyxDLENBRUdDLFNBQUEsQyxnQkFBQSxFLE1BQUEsQyxHQXJJZixDQXdJQSxTQUFTQyxTQUFULENBQXVCQyxTQUF2QixDLDhCQUNRQSxTQUFBLEMsZ0JBQUEsRUFBcUIsT0FBckIsQyw0QkFHQUEsU0FBQSxDLE9BQUEsRUFBcUIsc0JBQXJCLEMsNEJBR0FBLFNBQUEsQyxnQkFBQSxFQUFxQixPQUFyQixDLDRCQUdBQSxTQUFBLEMsZ0JBQUEsRUFBcUIsaUJBQXJCLEMsNEJBR0FBLFNBQUEsQyxnQkFBQSxFQUFxQixhQUFyQixDLDBCQUlSLFNBQVNDLFNBQVQsQ0FBZ0NDLFNBQWhDLEMsMkJBQ1VDLFNBQUEsQ0FBT0osU0FBQSxDQUFjRyxTQUFkLEMsQ0FDYixPQUFRQyxTQUFSLEVBQ0ksSyxnQkFBQSxDQUNJLE0sR0FBQSxDQUNKLEksZUFBQSxDQUNJLE0sSUFBQSxDQUNKLEssZ0JBQUEsQ0FDSSxPLGdCQUFBLENBQ0osSyxnQkFBQSxDQUNJLE0sR0FBQSxDQUNKLEssZ0JBQUEsQ0FDSSxNLElBQUEsQ0FDSixRQUNJLE0sR0FBQSxDQVpSLEMsQ0FlSixTQUFTQyxTQUFULENBQWdCQyxTQUFoQixDLDJCQUNJLElBQUlDLFNBQUosQ0FDQSxPQUFRRCxTQUFSLEVBQ0ksSSxHQUFBLENBQ0lDLFNBQUEsQyxRQUFBLENBQ0EsTUFDSixJLElBQUEsQ0FDSUEsU0FBQSxDLGdCQUFBLENBQ0EsTUFDSixLLGdCQUFBLENBQ0lBLFNBQUEsQyxnQkFBQSxDQUNBLE1BQ0osSSxHQUFBLENBQ0lBLFNBQUEsQyxnQkFBQSxDQUNBLE1BQ0osSSxJQUFBLENBQ0lBLFNBQUEsQyxnQkFBQSxDQUNBLE1BZlIsQyxPQWlCT0EsUyxFQUVYLFNBQVNDLFNBQVQsQ0FBa0JDLFNBQWxCLEMsMkJBQ0ksT0FBUUEsU0FBUixFQUNJLEksUUFBQSxDQUNJLE0sR0FBQSxDQUNKLEssZ0JBQUEsQ0FDSSxNLElBQUEsQ0FDSixJLFdBQUEsQ0FDSSxPLGdCQUFBLENBQ0osSyxnQkFBQSxDQUNJLE0sR0FBQSxDQUNKLEssZ0JBQUEsQ0FDSSxNLElBQUEsQ0FDSixRQUNJLE0sR0FBQSxDQVpSLEMsQ0FlSixNQUFNQyxTQUFBLENBQW1CLENBQUNDLFNBQUQsQ0FBS0MsU0FBTCxHQUFrQnRHLFNBQUEsQ0FBVSxLLEdBQVYsQ0FBa0IsQ0FBQ3FHLFNBQUQsQ0FBS0MsU0FBTCxDQUFsQixDQUFrQyxLLEdBQWxDLENBQTBDLFVBQVcsQ0FBRXRELFlBQUEsQ0FBQXVELFNBQUYsQ0FBZ0JyRCxRQUFBLENBQUFzRCxTQUFoQixDQUEwQnBELE9BQUEsQ0FBQXFELFNBQTFCLENBQVgsQ0FBZ0RDLFNBQWhELEMsMkJBQzNFQyxTQUFBLENBQVVGLFMsa0JBQ1ZHLFNBQUEsQ0FBU0QsUyxrQkFDVEUsU0FBQSxDQUFNTixTQUFBLEMsSUFBQSxDLENBQ05PLFNBQUEsQ0FBSUMsR0FBQSxDLE9BQUEsRSxnQkFBQSxFQUFlRixTQUFmLEMsQ0FDVjlDLE9BQUEsQyxnQkFBQSxFQUFZK0MsU0FBQSxDLGtCQUFBLENBQVosQyxDQUNBQSxTQUFBLEMsZ0JBQUEsQ0FEQSxDQUVBLE1BQU1FLFNBQUEsQ0FBbUJULFNBQUEsQyxnQkFBQSxDQUF6QixDQUNNVSxTQUFBLENBQU8sTUFBTXBELEtBQUEsQ0FBTStDLFNBQU4sQ0FBVyxDLFFBQzFCLEMsZ0JBRDBCLEMsTUFFMUIsQ0FBTTlDLElBQUEsQyxnQkFBQSxFQUFlLEMsY0FDakIsQ0FBQXlDLFNBRGlCLEMsVUFFakIsQ0FBQUMsU0FGaUIsQyxRQUdqQixDQUFBRSxTQUhpQixDLGtCQUlqQixDQUFBTSxTQUppQixDQUFmLENBRm9CLEMsU0FRMUIsQ0FBUyxDLGNBQUUsQyxrQkFBRixDQVJpQixDQUFYLENBRG5CLENBV01FLFNBQUEsQ0FBUSxNQUFNRCxTQUFBLEMsZ0JBQUEsR0FYcEIsQyxNQVlPLEMsTUFBRSxDQUFBQyxTQUFGLEMsTUFBUSxDQUFBRCxTQUFSLEMsRUFuQmdDLENBQTNDLENBcUJNRSxTQUFBLENBQWlCLENBQUNDLFNBQUQsQ0FBS0MsU0FBTCxDQUFhQyxTQUFiLENBQThCQyxTQUE5QixHQUEwQ3ZILFNBQUEsQ0FBVSxLLEdBQVYsQ0FBa0IsQ0FBQ29ILFNBQUQsQ0FBS0MsU0FBTCxDQUFhQyxTQUFiLENBQThCQyxTQUE5QixDQUFsQixDQUEwRCxLLEdBQTFELENBQWtFLFVBQVcsQ0FBRXZFLFlBQUEsQ0FBQXdFLFNBQUYsQ0FBZ0J0RSxRQUFBLENBQUF1RSxTQUFoQixDQUEwQnJFLE9BQUEsQ0FBQXNFLFNBQTFCLENBQVgsQ0FBZ0RDLFNBQWhELENBQXNEQyxTQUF0RCxDQUFxRUMsU0FBckUsQywyQkFDekhDLFNBQUEsQ0FBaUJGLFNBQUEsQyxnQkFBQSxHLENBQ2pCLENBQUVHLElBQUEsQ0FBQUMsU0FBRixDQUFRQyxJQUFBLENBQUFDLFNBQVIsRUFBaUIsTUFBTTlCLFNBQUEsQ0FBaUIsQyxjQUFFLENBQUFvQixTQUFGLEMsVUFBZ0IsQ0FBQUMsU0FBaEIsQyxTQUEwQixDQUFBQyxTQUExQixDQUFqQixDQUFzREksU0FBdEQsQyxDQUN2QkssU0FBQSxDQUFrQixDQUFDQyxTQUFELENBQU9DLFNBQVAsRywyQkFDcEJSLFNBQUEsQyxnQkFBQSxFQUFXTyxTQUFYLEUsZ0JBQUEsRSxnQkFBQSxFLFVBQUEsRUFBb0RDLFNBQXBELEMsQ0FDQVIsU0FBQSxDLE1BQUEsRyxDQUNBUyxVQUFBLENBQVcsSSwyQkFDUFQsU0FBQSxDLGdCQUFBLEVBQWtCUSxTQUFsQixDLENBQ0FSLFNBQUEsQyxNQUFBLEcsRUFGSixDLEtBQUEsQyxNQUtBSyxTQUFBLEMsZ0JBQUEsSSxZQUVBQyxTQUFBLEMsZ0JBQWdCLENBQWdCTCxTQUFoQyxDLGdCQUFBLEMsYUFJSUUsU0FBQSxDLGdCQUFBLEUsZ0JBQUEsRUFBc0IsTUFBdEIsQyxFQUNBLE1BQU1PLFNBQUEsQ0FBVWhELFNBQUEsQ0FBWXlDLFNBQVosQ0FBaEIsQ0FDQUosU0FBQSxDLGdCQUFBLEUsZ0JBQUEsQ0FBNEJXLFNBQTVCLEVBRUEsTUFBTUMsU0FBQSxDQUFpQnBELFNBQUEsQ0FBYTRDLFNBQWIsQ0FBbUJMLFNBQW5CLENBQXZCLEMsT0FDQUMsU0FBQSxDLGdCQUFBLEVBQWtCWSxTQUFsQixDLENBQ0FaLFNBQUEsQyxTQUFBLEUsZ0JBQUEsQyxDQUNBTyxTQUFBLEMsZ0JBQUEsQyxJQUFBLEMsbUJBSUFQLFNBQUEsQyxnQkFBQSxFLEdBQXFCRSxTQUFyQixDLENBQ0FLLFNBQUEsQ0FBbUJILFNBQUEsQyxnQkFBQSxDLFFBQW1CRSxTQUFBLEMsZ0JBQUEsQ0FBdEMsQyxnQkFBQSxDLE9BN0JxRCxDQXJCakUsQ0F1REEsU0FBU08sU0FBVCxDQUF1QkMsU0FBdkIsQ0FBOEJDLFNBQTlCLEMsUUFDVzNJLFNBQUEsQ0FBVSxJQUFWLENBQWdCLEssR0FBaEIsQ0FBd0IsSyxHQUF4QixDQUFnQyxXLHlCQUM3QjRJLFNBQUEsQ0FBU0YsU0FBQSxDLGdCQUFBLEUsZ0JBQUEsQyxDQUNURyxTQUFBLENBQWdCLE1BQU1qRyxTQUFBLENBQU8rRixTQUFQLENBQWFDLFNBQWIsQ0FBcUIxRSxTQUFyQixDLENBQ3RCNEUsU0FBQSxDQUFnQixNQUFNbEcsU0FBQSxDQUFPK0YsU0FBUCxDQUFhQyxTQUFiLENBQXFCekUsU0FBckIsQyxPQUNyQixDLFlBQ0gsQ0FBWSxDQUFDLEdBQUcwRSxTQUFBLEMsWUFBQSxDQUFKLENBQThCLEdBQUdDLFNBQUEsQyxnQkFBQSxDQUFqQyxDQURULEMsRUFKSixDLEVBU1gsTUFBTUMsU0FBQSxDQUFhLEMsaUJBQ2YsQ0FBaUJ2RyxTQUFBLEMsZ0JBQUEsQ0FERixDLGlCQUVmLEMsSUFGZSxDLGlCQUdmLENBQWlCUixTQUFBLEMsU0FBQSxDQUhGLEMsZUFJZixDQUFlRSxTQUFBLEMsZ0JBQUEsRUFBMEJBLFNBQUEsQyxZQUFBLENBQTFCLENBQWlEQSxTQUFBLEMsZ0JBQUEsQ0FBakQsQ0FBc0VBLFNBQUEsQyxnQkFBQSxDQUp0RSxDLFlBS2YsQyxJQUxlLENBQW5CLENBT0EsU0FBUzhHLFNBQVQsQ0FBdUJDLFNBQXZCLENBQThCQyxTQUE5QixDLFFBQ1dsSixTQUFBLENBQVUsSUFBVixDQUFnQixLLEdBQWhCLENBQXdCLEssR0FBeEIsQ0FBZ0MsVyx5QkFDN0JtSixTQUFBLENBQVNGLFNBQUEsQyxnQkFBQSxFLGdCQUFBLEMsQ0FDVEcsU0FBQSxDQUFnQixNQUFNeEcsU0FBQSxDQUFPc0csU0FBUCxDQUFhQyxTQUFiLENBQXFCSixTQUFyQixDLFFBQ3JCSyxTLEVBSEosQyxFQU1YLE1BQU1DLFNBQUEsQ0FBZUMsU0FBRCxFLDJCQUNoQixJQUFJQyxTQUFKLENBQVFDLFNBQVIsQ0FBWUMsU0FBWixDQUFnQkMsU0FBaEIsQyxHQUNJLENBQUNKLFNBQUQsRUFBYyxDQUFDQSxTQUFBLEMsUUFBQSxDLEVBQ2YsTUFBTUssU0FBQSxDQUFXQyxDQUFBLEMsZ0JBQUEsQ0FBakIsQyxPQUNPRCxTLEVBRVgsTUFBTUUsU0FBQSxDQUFJUCxTQUFBLEMsUUFBQSxFLGdCQUFBLEdBQVYsQ0FDTVEsU0FBQSxDQUFLLENBQUMsQ0FBQVAsU0FBQSxDQUFLRCxTQUFBLEMsZ0JBQUEsQ0FBTCxDQUFELEdBQWlDLElBQWpDLEVBQXlDQyxTQUFBLEdBQU8sSyxHQUFoRCxDQUF5RCxLLEdBQXpELENBQWtFQSxTQUFBLEMsZ0JBQUEsQ0FBbEUsQ0FBRCxFQUFnRixDQUFDLENBQUFDLFNBQUEsQ0FBS0YsU0FBQSxDLGdCQUFBLENBQUwsQ0FBRCxHQUFnQyxJQUFoQyxFQUF3Q0UsU0FBQSxHQUFPLEssR0FBL0MsQ0FBd0QsSyxHQUF4RCxDQUFpRUEsU0FBQSxDLGdCQUFBLENBQWpFLENBQWhGLEVBQTZKRixTQUFBLEMsZ0JBQUEsRSxnQkFBQSxHQUR2SyxDQUVNLENBQUVTLElBQUEsQ0FBQUMsU0FBRixDQUFRQyxLQUFBLENBQUFDLFNBQVIsRUFBa0J4SCxTQUFBLENBQVE0RyxTQUFSLENBRnhCLENBR01hLFNBQUEsQyxJQUFZYixTQUFBLEMsUUFBQSxFLGdCQUFBLEcsU0FBZ0MsQ0FBQyxDQUFDLENBQUFHLFNBQUEsQ0FBS0gsU0FBQSxDLGdCQUFBLENBQUwsQ0FBRCxHQUFnQyxJQUFoQyxFQUF3Q0csU0FBQSxHQUFPLEssR0FBL0MsQ0FBd0QsSyxHQUF4RCxDQUFpRUEsU0FBQSxDLE1BQUEsQ0FBakUsQ0FBRCxFQUErRSxDQUFDLENBQUFDLFNBQUEsQ0FBS0osU0FBQSxDLGdCQUFBLENBQUwsQ0FBRCxHQUFpQyxJQUFqQyxFQUF5Q0ksU0FBQSxHQUFPLEssR0FBaEQsQ0FBeUQsSyxHQUF6RCxDQUFrRUEsU0FBQSxDLGdCQUFBLENBQWxFLENBQS9FLEUsRUFBQSxDQUhsRCxDQUlNVSxTQUFBLENBQVdSLENBQUEsQyxrQkFBY04sU0FBQSxDLGdCQUFBLEUsZ0JBQUEsRyxrQkFBK0RhLFMsa0JBQXNCSCxTLGtCQUFzQkUsUyxrQkFBZ0JKLFMsaUJBQXpJLENBSmpCLEMsT0FLQU0sU0FBQSxDLGdCQUFBLEUsZ0JBQUEsQyxDQUNBQSxTQUFBLEMsTUFBQSxFLE9BQUEsQ0FBdUJQLFNBQXZCLEMsQ0FDQU8sU0FBQSxDLE1BQUEsRSxnQkFBQSxDQUEyQmQsU0FBM0IsQyxDQUNPYyxTLEVBZFgsQ0FnQk1DLFNBQUEsQ0FBYyxDQUFDQyxTQUFELENBQVNDLFNBQVQsRyxrQ0FDVEEsU0FBQSxDLGdCQUFBLEUsY0FBc0JELFMsUUFBdEIsQyxFQWpCWCxDQW1CTUUsU0FBQSxDQUFlLENBQUNDLFNBQUQsQ0FBT0MsU0FBUCxHLDJCQUNqQkQsU0FBQSxDLGdCQUFBLEUsZ0JBQUEsRSxnQkFBQSxFLGFBQUEsRSxnQkFBQSxDLENBRUFDLFNBQUEsQyxnQkFBQSxFLGtCQUFBLEUsZ0JBQUEsRSxnQkFBQSxDLEVBdEJKLENBd0JNQyxTQUFBLENBQWEsQ0FBQ0MsU0FBRCxDQUFPQyxTQUFQLENBQW1CQyxTQUFuQixHQUE2QjlLLFNBQUEsQ0FBVSxLLEdBQVYsQ0FBa0IsSyxHQUFsQixDQUEwQixLLEdBQTFCLENBQWtDLFcsMkJBRTlFLElBQUkrSyxTQUFBLENBQVdELFNBQUEsQyxnQkFBQSxFLGdCQUFBLENBQWYsQ0FDQUQsU0FBQSxDLGdCQUFBLEUsVUFBQSxHQUFvQyxFQUFwQyxDQUNBLE1BQU1HLFNBQUEsQ0FBVUgsU0FBQSxDLGdCQUFBLEdBQXNCLEVBQXRDLEMsR0FDSUcsU0FBQSxDLGdCQUFBLEksSUFDQSxPQUVKLFVBQVdDLFNBQVgsSUFBZ0JELFNBQWhCLEMsQ0FDUUQsU0FBQSxDLFVBQUEsRSxnQkFBQSxDLEVBRUEsT0FBTUcsU0FBQSxDQUFVTixTQUFWLENBQWdCRyxTQUFoQixDQUFOLEMsQ0FFSixNQUFNSSxTQUFBLENBQVdkLFNBQUEsQ0FBWVksU0FBWixDQUFlRixTQUFmLENBQWpCLEMsR0FDSUksU0FBQSxDLGdCQUFBLEksSUFDQSxPQUVKSixTQUFBLENBQVdJLFMsRUFFZlgsU0FBQSxDQUFhSSxTQUFiLENBQW1CRyxTQUFuQixDLENBQ0FLLFNBQUEsQ0FBV1IsU0FBQSxDLGdCQUFBLENBQVgsQ0FBMkJHLFNBQTNCLEMsRUFwQjRDLENBeEJoRCxDQThDQSxTQUFTSyxTQUFULENBQW9CQyxTQUFwQixDQUFnQ0MsU0FBaEMsQywyQkFFVUMsU0FBQSxDQUFRRCxTQUFBLEMsZ0JBQUEsSSxnQkFBQSxDLENBRVJFLFNBQUEsQ0FBcUJILFNBQUEsQyxXQUFBLEcsSUFDdkJHLFNBQUEsRUFBc0JDLFMsQ0FDdEIsT0FJSixNQUFNQyxTQUFBLENBQVdGLFNBQUEsQ0FBcUJELFNBQXJCLENBQTZCRixTQUFBLEMsZ0JBQUEsSSxHQUE3QixDQUF1REMsU0FBQSxDLGdCQUFBLEksR0FBeEUsQ0FFQUQsU0FBQSxDLFNBQUEsRUFBbUIsQyxXQUNmLENBQVdLLFNBREksQ0FBbkIsQyxLQUFBLEMsRUFJSixNQUFNQyxTQUFBLENBQWlCLENBQUNDLFNBQUQsQ0FBT0MsU0FBUCxHQUFzQjdMLFNBQUEsQ0FBVSxLLEdBQVYsQ0FBa0IsSyxHQUFsQixDQUEwQixLLEdBQTFCLENBQWtDLFcsMkJBQ3JFOEwsU0FBQSxDQUFTRixTQUFBLEMsZ0JBQUEsRSxLQUFBLEcsQ0FDVEcsU0FBQSxDQUFVLEMsUUFDWixDQUFBRCxTQURZLEMsWUFFWixDQUFZRCxTQUFBLEMsUUFBQSxDQUZBLEMsUUFHWixDQUFRRCxTQUFBLEMsZ0JBQUEsRSxXQUFBLEcsR0FISSxDLENBS1ZJLFNBQUEsQ0FBT0MsU0FBQSxDQUFlTCxTQUFmLEMsQ0FDUE0sU0FBQSxDQUFhLE1BQU05SCxTQUFBLENBQWE0SCxTQUFiLENBQW1CRCxTQUFuQixDLElBQ3JCLENBQUNHLFMsQ0FDRCxPQUVKLE1BQU12QixTQUFBLENBQVdpQixTQUFYLENBQWlCTSxTQUFqQixDQUE2Qk4sU0FBQSxDLGdCQUFBLENBQTdCLEMsRUFabUMsQ0FBN0MsQ0FjQSxTQUFTTyxTQUFULENBQTJCQyxTQUEzQixDQUFpQ0MsU0FBakMsQ0FBd0NDLFNBQXhDLENBQW1EQyxTQUFuRCxDLFFBQ1d2TSxTQUFBLENBQVUsSUFBVixDQUFnQixLLEdBQWhCLENBQXdCLEssR0FBeEIsQ0FBZ0MsVyw0QkFDL0JxTSxTQUFBLEMsZ0JBQUEsRSxnQkFBQSxDLEVBQ0F0SSxPQUFBLEMsZ0JBQUEsRSxvQkFBQSxFQUNBLE8sSUFFQXNJLFNBQUEsQyxVQUFBLEUsU0FBQSxDLEVBQ0F0SSxPQUFBLEMsZ0JBQUEsRSxnQkFBQSxFQUNBLE8sQ0FFSnNJLFNBQUEsQyxnQkFBQSxFLGdCQUFBLEMsQ0FDQUEsU0FBQSxDLGdCQUFBLEUsZ0JBQUEsQ0FEQSxDQUVBLEcsQ0FDSUEsU0FBQSxDLGdCQUFBLEUsSUFBQSxFLGdCQUFBLElBQ0EsTUFBTSxDQUFFRyxVQUFBLENBQUFDLFNBQUYsRUFBaUIsTUFBTUgsU0FBQSxDQUFVRCxTQUFWLENBQWlCRSxTQUFqQixDQUE3QixDQUVBRSxTQUFBLEMsZ0JBQUEsRUFBZ0IsQ0FBQ0MsU0FBRCxDQUFJQyxTQUFKLEcsMkJBQVksSUFBSUMsU0FBSixDQUFRQyxTQUFSLEMsTUFBb0IsQ0FBQyxDQUFDLENBQUFELFNBQUEsQ0FBS0YsU0FBQSxDLFlBQUEsQ0FBTCxDQUFELEdBQXdCLElBQXhCLEVBQWdDRSxTQUFBLEdBQU8sSyxHQUF2QyxDQUFnRCxLLEdBQWhELENBQXlEQSxTQUFBLEMsTUFBQSxDQUF6RCxDQUFELEUsRUFBQSxDQUFELEMsZ0JBQUEsRUFBMEYsQ0FBQyxDQUFBQyxTQUFBLENBQUtGLFNBQUEsQyxnQkFBQSxDQUFMLENBQUQsR0FBd0IsSUFBeEIsRUFBZ0NFLFNBQUEsR0FBTyxLLEdBQXZDLENBQWdELEssR0FBaEQsQ0FBeURBLFNBQUEsQyxNQUFBLENBQXpELENBQUQsRSxFQUF6RixDLEVBQS9DLEVBQ0EsVUFBV0MsU0FBWCxJQUF3QkwsU0FBeEIsQyxJQUNRTCxTQUFBLEMsZ0JBQUEsRSxRQUFBLEdBQXVCLENBQUNBLFNBQUEsQyxnQkFBQSxFLGdCQUFBLEVBQW9CVSxTQUFwQixDLENBQ3hCLFNBRUosTUFBTUMsU0FBQSxDQUFXMUQsU0FBQSxDQUFZeUQsU0FBWixDQUFqQixDQUNBVCxTQUFBLEMsVUFBQSxFLElBQUEsRSxnQkFBQSxFQUE0QlUsU0FBNUIsQyxFQUVKVixTQUFBLEMsZ0JBQUEsRSxnQkFBQSxDLEVBRUosTUFBT1csU0FBUCxDLENBQ0lYLFNBQUEsQyxnQkFBQSxFLElBQUEsRSxnQkFBQSxFLGlCQUF5Q1csU0FBQSxDLGdCQUFBLEMsaUJBQXpDLEMsQ0FDQWpKLE9BQUEsQyxLQUFBLEUsZ0JBQUEsQ0FBbUJpSixTQUFuQixDLEVBRUpYLFNBQUEsQyxNQUFBLEUsZ0JBQUEsRSxnQkFBQSxHLENBQ0FBLFNBQUEsQyxnQkFBQSxFLFNBQUEsQyxFQTlCRyxDLEVBaUNYLFNBQVNKLFNBQVQsQ0FBd0JnQixTQUF4QixDLDJCQUNVQyxTQUFBLENBQU8sQyxTQUNULENBQVNELFNBQUEsQyxnQkFBQSxFLGdCQUFBLENBREEsQyxjQUVULENBQWMsT0FBT0EsU0FBQSxDLFNBQUEsRSxnQkFBQSxDQUFQLEcsZ0JBQUEsQ0FBa0RBLFNBQUEsQyxnQkFBQSxFLGdCQUFBLEdBQWxELENBQWdGQSxTQUFBLEMsZ0JBQUEsRSxnQkFBQSxDQUZyRixDLFVBR1QsQ0FBVSxPQUFPQSxTQUFBLEMsZ0JBQUEsRSxVQUFBLENBQVAsRyxnQkFBQSxDQUE4Q0EsU0FBQSxDLGdCQUFBLEUsZ0JBQUEsR0FBOUMsQ0FBd0VBLFNBQUEsQyxnQkFBQSxFLFVBQUEsQ0FIekUsQyxRQUtOQyxTLEVBRVgsU0FBU2hDLFNBQVQsQ0FBbUJpQyxTQUFuQixDQUF5QkMsU0FBekIsQyxRQUNXcE4sU0FBQSxDQUFVLElBQVYsQ0FBZ0IsSyxHQUFoQixDQUF3QixLLEdBQXhCLENBQWdDLFcsNEJBQy9Cb04sU0FBQSxDLGdCQUFBLEUsU0FBQSxDLEVBQ0FBLFNBQUEsQyxnQkFBQSxFLFlBQUEsRSxnQkFBQSxFLGdCQUFBLEMsQ0FDQUEsU0FBQSxDLGdCQUFBLEUsSUFBQSxFLGdCQUFBLEdBREEsQ0FFQSxPLENBR0osTUFBTUMsU0FBQSxDQUFPcEIsU0FBQSxDQUFla0IsU0FBZixDQUFiLENBQ01HLFNBQUEsQ0FBSSxDQUFDSCxTQUFBLEMsU0FBQSxFLGdCQUFBLENBQUQsQ0FBMEIxRSxTQUExQixDQUEwQ08sU0FEcEQsQ0FFQSxHLENBQ0ksTUFBTW1ELFNBQUEsQ0FBa0JnQixTQUFsQixDQUF3QkMsU0FBeEIsQ0FBNkJFLFNBQTdCLENBQWdDRCxTQUFoQyxDLENBRU5ELFNBQUEsQyxnQkFBQSxFLGdCQUFBLEUsZ0JBQUEsRSxVQUFBLEMsRUFFSixNQUFPRyxTQUFQLEMsQ0FDSUgsU0FBQSxDLGdCQUFBLEUsZ0JBQUEsRSxnQkFBQSxFLFVBQUEsQyxDQUNBckosT0FBQSxDLGdCQUFBLEUsZ0JBQUEsQ0FBcUJ3SixTQUFyQixDLEdBaEJELEMsRUFvQlgsTUFBTUMsU0FBQSxDQUFvQixDLFlBQ3RCLENBQVksQyxnQkFBRSxDLEdBQUYsQyxNQUFxQixDLFNBQXJCLENBRFUsQyxXQUV0QixDLGdCQUZzQixDLFFBR3RCLEMsZ0JBSHNCLEMsYUFJdEIsQ0FBYSxDLE1BQUUsQyxnQkFBRixDQUpTLEMsZ0JBS3RCLENBQWdCOUwsU0FMTSxDQUExQixDQU9NK0wsU0FBQSxDQUEyQixJLDJCQVE3QjdELENBQUEsQyxRQUFBLEUsZ0JBQUEsQ0FBaUMsQyxTQUU3QixDQUFTLEMsY0FDTCxDQUFjLEtBQU8sQyxVQUFFLEMsd0NBQUYsQ0FBUCxDQURULEMsVUFFTCxDQUFVLElBQU02QixTQUZYLEMsWUFHTCxDQUFZLElBQU0rQixTQUhiLEMsUUFJTCxDQUFRLEksSUFKSCxDLFNBS0wsQyxFQUxLLEMsV0FNTCxDLEdBTkssQ0FGb0IsQyxtQkFVN0IsRSxRQUNXeE4sU0FBQSxDQUFVLElBQVYsQ0FBZ0IsSyxHQUFoQixDQUF3QixLLEdBQXhCLENBQWdDLFcseUJBQzdCME4sU0FBQSxDQUFPLEksSUFDVEEsU0FBQSxDLGNBQUEsR0FBcUJqQyxTLEVBQ3JCLE1BQU1rQyxTQUFBLENBQUksT0FBT0QsU0FBQSxDLGdCQUFBLEUsZ0JBQUEsQ0FBUCxHLFVBQUEsQ0FBZ0RBLFNBQUEsQyxnQkFBQSxFLFlBQUEsRSxNQUFBLEVBQTZCQSxTQUE3QixDQUFoRCxDQUFxRkEsU0FBQSxDLFNBQUEsRSxnQkFBQSxDQUEvRixDLEdBQ0lDLFNBQUEsWUFBYW5OLE8sRUFDYixNQUFNb04sU0FBQSxDQUFPLE1BQU1ELFNBQW5CLENBQ0FELFNBQUEsQyxnQkFBQSxFQUFvQkUsUyxPQUdwQkYsU0FBQSxDLGdCQUFBLEVBQW9CQyxTLFNBR3JCRCxTQUFBLEMsY0FBQSxHQUFxQkYsUyxFQVp6QixDLEVBWGtCLEMsT0EwQjdCLEUsUUFDV3hOLFNBQUEsQ0FBVSxJQUFWLENBQWdCLEssR0FBaEIsQ0FBd0IsSyxHQUF4QixDQUFnQyxXLHlCQUM3QjZOLFNBQUEsQ0FBTyxJLENBRVBDLFNBQUEsQ0FBSUQsUyxDQUNWQyxTQUFBLEMsY0FBQSxFQUFpQnJDLFMsQ0FDakJvQyxTQUFBLEMsZ0JBQUEsRSxnQkFBQSxHQURBLENBRUEsTUFBTUUsU0FBQSxDQUFhLE1BQU0sSyxtQkFBQSxHQUF6QixDQUNNQyxTQUFBLENBQVczRSxTQUFBLENBQVkwRSxTQUFaLENBRGpCLENBRUFGLFNBQUEsQyxnQkFBQSxFLGdCQUFBLEVBQWtCRyxTQUFsQixDLENBQ0FILFNBQUEsQyxnQkFBQSxFQUFxQkUsUyxFQVRsQixDLEVBM0JrQixDLFFBdUM3QixDQUFPRSxTQUFQLEMsMkJBQ1VDLFNBQUEsQ0FBTyxJLENBRVBDLFNBQUEsQ0FBT2xDLFNBQUEsQ0FBZWlDLFNBQWYsQyxDQUNiL0csU0FBQSxDQUFlZ0gsU0FBZixDQUFxQkYsU0FBckIsQ0FBMkJDLFNBQUEsQyxnQkFBQSxDQUEzQixDQUF3Q0EsU0FBQSxDLE9BQUEsQ0FBeEMsRSxnQkFBQSxFQUEwREUsU0FBRCxFLDJCQUNqRCxDQUFDQSxTLENBQ0RGLFNBQUEsQyxRQUFBLEUsZ0JBQUEsRSxnQkFBQSxDLENBR0FBLFNBQUEsQyxnQkFBQSxFLGdCQUFBLEUsZ0JBQUEsQyxFQUxSLEMsRUEzQ3lCLEMsV0FvRDdCLENBQVVHLFNBQVYsQywyQkFDVUMsU0FBQSxDQUFPLEksQ0FDYjFFLENBQUEsQ0FBRTJFLFFBQUYsRSxnQkFBQSxFLG1EQUFBLEMsQ0FDQUYsU0FBQSxDLGdCQUFBLEcsQ0FDQUEsU0FBQSxDLGdCQUFBLEVBQVMsQyxRQUNMLEMsZ0JBREssQ0FBVCxDQUZBLEMsR0FLSUEsU0FBQSxDLGdCQUFBLEUsZ0JBQUEsQyxFQUNBLElBQUlHLFNBQUEsQ0FBVyxFQUFmLENBQ0FILFNBQUEsQyxnQkFBQSxFLGdCQUFBLEUsZ0JBQUEsRUFBeUMsVSwyQkFDakN6RSxDQUFBLENBQUUsSUFBRixFLE1BQUEsRSxnQkFBQSxDLEVBQ0E0RSxTQUFBLEMsTUFBQSxFQUFjNUUsQ0FBQSxDQUFFLElBQUYsRSxNQUFBLEUsZ0JBQUEsQ0FBZCxDLEVBRlIsQyxDQUtBeUUsU0FBQSxDLFVBQUEsRUFBY0csU0FBZCxDLEVBRUFGLFNBQUEsQyxnQkFBQSxFLElBQUEsRSxnQkFBQSxDLENBQ0FBLFNBQUEsQyxnQkFBQSxFLFNBQUEsRSxnQkFBQSxDLENBS0FBLFNBQUEsQyxnQkFBQSxFLFNBQUEsRSxnQkFBQSxDLEVBMUVxQixDLGFBNkU3QixDQUFZRyxTQUFaLENBQXlCQyxTQUF6QixDQUErQkMsU0FBL0IsQywyQkFDSSxJQUFJQyxTQUFBLENBQU8sSUFBWCxDQUNBLE1BQU1DLFNBQUEsQ0FBT2pGLENBQUEsQyxnQkFBQSxFLGdCQUFBLEUsZ0JBQUEsQ0FBYixDLE9BQ0FpRixTQUFBLEMsZ0JBQUEsRUFBWUgsUyxDQUNaRyxTQUFBLEMsZ0JBQUEsRUFBZ0JGLFMsQ0FDaEJGLFNBQUEsQyxnQkFBQSxFQUFxQkssU0FBRCxFLDJCQUNaLE9BQU9BLFNBQVAsRyxVQUNBLENBQUFBLFNBQUEsQ0FBTSxDLE9BQUUsQ0FBT0EsU0FBVCxDLE9BQWMsQ0FBT0EsU0FBckIsQ0FBTixDLENBRUosSUFBSUMsU0FBQSxDQUFLbkYsQ0FBQSxDLGdCQUFBLEUsZ0JBQUEsRSxnQkFBQSxDQUFvQ2tGLFNBQUEsQyxnQkFBQSxDQUFwQyxFLGdCQUFBLEVBQXdERCxTQUF4RCxDQUFULENBQ0lDLFNBQUEsQyxnQkFBQSxDLEVBQ0FDLFNBQUEsQyxnQkFBQSxFQUFRRCxTQUFBLEMsT0FBQSxDQUFSLEMsQ0FFQUEsU0FBQSxDLGdCQUFBLEMsRUFDQUMsU0FBQSxDLE1BQUEsRSxnQkFBQSxDQUFpQkQsU0FBQSxDLE9BQUEsQ0FBakIsQyxJQUVBQSxTQUFBLEMsZ0JBQUEsQyxLQUNJQSxTQUFBLEMsZ0JBQUEsRSxnQkFBQSxFLEdBQUEsSSxJQUNBbEYsQ0FBQSxDQUFFa0YsU0FBQSxDLGdCQUFBLENBQUYsRSxXQUFBLEVBQXNCQyxTQUF0QixDLE1BRUtELFNBQUEsQyxnQkFBQSxFLGdCQUFBLEUsR0FBQSxJQUEwQixDLElBQy9CbEYsQ0FBQSxDLGdCQUFBLENBQVMsQyxPQUNMLEMsd0JBREssQyxPQUVMLEMsZ0JBQU8sQ0FBcUJrRixTQUFBLEMsTUFBQSxDQUFyQixDLG1DQUFBLENBQWdFQSxTQUFBLEMsTUFBQSxDQUFoRSxDLElBRkYsQ0FBVCxFLGdCQUFBLEVBR2FDLFNBSGIsQyxDQU1BbkYsQ0FBQSxDLEtBQUEsQ0FBUyxDLE9BQUUsQyxnQkFBTyxDQUE0QmtGLFNBQUEsQyxnQkFBQSxDQUFyQyxDQUFULEUsV0FBQSxFQUFvRUMsU0FBcEUsQyxPQUlKQSxTQUFBLEMsZ0JBQUEsRUFBTyxDLGFBQUUsQyxnQkFBRixDQUFQLEMsQ0FFQSxDQUFDRCxTQUFBLEMsZ0JBQUEsQ0FBRCxFQUFhLENBQUNBLFNBQUEsQyxnQkFBQSxDLEVBQ2RDLFNBQUEsQyxnQkFBQSxFQUFRRCxTQUFBLEMsT0FBQSxDQUFSLEMsQ0FFSixJQUFJRSxTQUFKLENBQ0lOLFNBQUEsQyxnQkFBQSxDLEVBQ0EsQ0FBQU0sU0FBQSxDQUFLcEYsQ0FBQSxDLGdCQUFBLEUsS0FBQSxFLGdCQUFBLEMsTUFBQSxFLGdCQUFBLEUsZ0JBQUEsQ0FFY2tGLFNBQUEsQyxnQkFBQSxDQUZkLEUsZ0JBQUEsRUFHVUMsU0FIVixFLElBQUEsRSxnQkFBQSxDQUlnQixTQUFVRSxTQUFWLEMsMkJBQ2pCQSxTQUFBLEMsZ0JBQUEsRyxFQUxDLENBQUwsQyxDQVFKRixTQUFBLEMsSUFBQSxFLGdCQUFBLENBQWUsU0FBVUcsU0FBVixDLDJCQUNYQSxTQUFBLEMsZ0JBQUEsRyxDQUNBQSxTQUFBLEMsaUJBQUEsRyxDQUNJLENBQUNSLFNBQUEsQyxnQkFBQSxDLEVBQ0RDLFNBQUEsQ0FBU0csU0FBQSxDLE9BQUEsQ0FBVCxDLENBQ0FGLFNBQUEsQyxnQkFBQSxFQUFlQyxTQUFmLEMsRUFHQUcsU0FBQSxDLGdCQUFBLEUsU0FBQSxDQUFtQixDQUFDQSxTQUFBLEMsZ0JBQUEsRSxnQkFBQSxDQUFwQixDLEVBUlIsQyxFQXpDSixDLENBcURBSCxTQUFBLEMsS0FBQSxFQUFTLEMsU0FDTCxDLGdCQURLLENBQVQsQyxDQUdBQSxTQUFBLEMsSUFBQSxFLGdCQUFBLENBQW1CLFNBQVVNLFNBQVYsQyw4QkFDWEEsU0FBQSxDLGdCQUFBLEksS0FDQUEsU0FBQSxDLGdCQUFBLEcsQ0FFQXZGLENBQUEsQ0FBRSxJQUFGLEUsZ0JBQUEsRSxnQkFBQSxFLGdCQUFBLEksZ0JBQUEsRSxPQUFBLEMsU0FFS3VGLFNBQUEsQyxnQkFBQSxJLEtBQ0xBLFNBQUEsQyxnQkFBQSxHLENBRUF2RixDQUFBLENBQUUsSUFBRixFLGdCQUFBLEUsZ0JBQUEsRSxnQkFBQSxJLFNBQUEsRSxnQkFBQSxDLE1BRUt1RixTQUFBLEMsZ0JBQUEsSSxPQUVMQSxTQUFBLEMsZ0JBQUEsRyxDQUNBUCxTQUFBLEMsZ0JBQUEsRUFBZUMsU0FBZixDLEdBRUpNLFNBQUEsQyxnQkFBQSxHLEVBaEJKLEMsQ0FrQk9OLFMsRUE1SmtCLEMsYUE4SjdCLEMsR0E5SjZCLEMsV0ErSjdCLENBQVVPLFNBQVYsQ0FBZ0JDLFNBQWhCLEMsOEJBQ1EsSyxnQkFBQSxDLEVBQ0EsSyxhQUFBLEUsR0FBQSxDQUNBLE8sQ0FFSixJQUFJQyxTQUFBLENBQU8sSUFBWCxDQUNJQyxTQUFBLENBQU1GLFNBQUEsQyxnQkFBQSxHQURWLENBRUlHLFNBQUEsQ0FBU0gsU0FBQSxDLFFBQUEsR0FGYixDQUdJSSxTQUFBLENBQWFMLFNBQUEsQyxRQUFBLEdBSGpCLENBSUlNLFNBQUEsQ0FBTUYsU0FBQSxDQUFTRCxTQUFBLEMsZ0JBQUEsQ0FKbkIsQ0FLSUcsU0FBQSxDQUFNRCxTQUFOLENBQW1CN0YsQ0FBQSxDQUFFMkUsUUFBRixFLGdCQUFBLEdBQW5CLENBQTZDM0UsQ0FBQSxDQUFFK0YsTUFBRixFLGdCQUFBLEcsRUFDN0MsQ0FBQUQsU0FBQSxFQUFPQSxTQUFBLENBQU1ELFNBQU4sQ0FBbUI3RixDQUFBLENBQUUrRixNQUFGLEUsZ0JBQUEsR0FBbkIsQyxHQUFQLEMsQ0FFQUQsU0FBQSxDLE1BQ0FOLFNBQUEsQyxnQkFBQSxFQUFZSyxTQUFBLENBQWFDLFNBQXpCLEMsQ0FDQUEsU0FBQSxDLEtBRUpOLFNBQUEsQyxnQkFBQSxFQUFTLEMsS0FDTCxDQUFLTSxTQUFBLEMsSUFEQSxDLE1BRUwsQ0FBTUgsU0FBQSxDLGdCQUFBLEUsSUFGRCxDQUFULEMsQ0FJQUgsU0FBQSxDLGdCQUFBLEUsSUFBQSxDLENBQ0EsSyxnQkFBQSxFQUFZLFUsMkJBQ1JFLFNBQUEsQyxnQkFBQSxFLGdCQUFBLEUsZ0JBQUEsQyxDQUNBMUYsQ0FBQSxDQUFFMkUsUUFBRixFLElBQUEsRSxtREFBQSxDQUFvRSxTQUFVcUIsU0FBVixDLDJCQUM1RCxDQUFDaEcsQ0FBQSxDQUFFZ0csU0FBQSxDLGdCQUFBLENBQUYsRSxnQkFBQSxFQUF3QlIsU0FBeEIsRSxnQkFBQSxDLEVBQ0RFLFNBQUEsQyxXQUFBLEVBQWVGLFNBQWYsQyxDQUVBeEYsQ0FBQSxDQUFFZ0csU0FBQSxDLGdCQUFBLENBQUYsRSxnQkFBQSxFQUF3QlAsU0FBeEIsRSxnQkFBQSxDLEdBQ0FDLFNBQUEsQyxnQkFBQSxFLEtBQ0FNLFNBQUEsQyxnQkFBQSxHLEdBTlIsQyxFQUZKLEMsRUFyTHlCLEMsZUFrTTdCLEUsMkJBQ1VDLFNBQUEsQ0FBTyxJLENBQ2IsSyxnQkFBQSxFQUFlQSxTQUFBLEMsT0FBQSxDQUFmLENBQTJCQSxTQUFBLEMsUUFBQSxDQUEzQixDLENBQ0FBLFNBQUEsQyxnQkFBQSxFLGdCQUFBLEdBREEsQ0FFQSxNQUFNQyxTQUFBLENBQU9ELFNBQUEsQyxnQkFBQSxDQUFiLENBQ0EsSUFBSUUsU0FBQSxDQUFXRixTQUFBLEMsZ0JBQUEsRSxnQkFBQSxFLGdCQUFnQixDQUFhQyxTQUFiLEMsTUFBaEIsQ0FBZixDQUNBeEgsVUFBQSxDQUFXLFUsMkJBQ1B5SCxTQUFBLEMsZ0JBQUEsRSxnQkFBQSxDLEVBREosQyxJQUFBLEMsRUF4TXlCLEMsV0E0TTdCLEUsMkJBQ1VDLFNBQUEsQ0FBTyxJLENBQ2JBLFNBQUEsQyxnQkFBQSxFLGdCQUFBLEUsZ0JBQUEsQ0FBcUMsQyxHQUFyQyxDLENBQ0FBLFNBQUEsQyxnQkFBQSxFLElBQUEsRSxnQkFBQSxDQUFrRSxTQUFVQyxTQUFWLEMsMkJBQzlEQSxTQUFBLEMsZ0JBQUEsRyxFQURKLENBREEsQ0FJSUQsU0FBQSxDLE9BQUEsQyxFQUNBQSxTQUFBLEMsT0FBQSxFLGdCQUFBLEcsQ0FHSixNQUFNRSxTQUFBLENBQVcsQ0FDYixDLE9BQUUsQyxnQkFBRixDLE9BQWlCLEMsR0FBakIsQyxPQUE2QixDLGdCQUE3QixDLE1BQTZELEMsMENBQTdELENBRGEsQ0FFYixDLE9BQ0ksQyxNQURKLEMsT0FFSSxDLGdCQUZKLEMsT0FHSSxDLGdCQUhKLEMsTUFJSSxDLGdCQUpKLENBRmEsQ0FRYixDLE9BQUUsQyxRQUFGLEMsT0FBbUIsQyxHQUFuQixDLE1BQStCLEMsZ0JBQS9CLENBUmEsQ0FTYixDLE9BQUUsQyxnQkFBRixDLE9BQTJCLEMsSUFBM0IsQyxNQUF3QyxDLGdCQUF4QyxDQVRhLENBVWIsQyxPQUFFLEMsb0NBQUYsQyxPQUFzQyxDLGdCQUF0QyxDLE1BQW9ELEMsZ0JBQXBELENBVmEsQ0FXYixDLE9BQUUsQyxnQkFBRixDLE9BQXVCLEMsR0FBdkIsQyxNQUFtQyxDLGdCQUFuQyxDQVhhLENBWWIsQyxPQUNJLEMsZ0JBREosQyxPQUVJLEMsSUFGSixDLE1BR0ksQyxnQkFISixDQVphLENBQWpCLENBa0JNQyxTQUFBLENBQUl2SyxTQUFBLENBQXVCb0ssU0FBQSxDLGdCQUFBLEUsS0FBQSxHQUF2QixDQWxCVixDQW1CTUksU0FBQSxDQUFJRixTQUFBLEMsZ0JBQUEsRUFBZUcsU0FBRCxFQUFPQSxTQUFBLEMsZ0JBQUEsSUFBWUYsU0FBakMsQ0FuQlYsQ0FvQkFILFNBQUEsQyxnQkFBQSxFLGdCQUFBLEksUUFBQSxFLGtCQUFnRCxDQUFDLENBQUFJLFNBQUEsR0FBTSxJQUFOLEVBQWNBLFNBQUEsR0FBTSxLLEdBQXBCLENBQTZCLEssR0FBN0IsQ0FBc0NBLFNBQUEsQyxnQkFBQSxDQUF0QyxDQUFELEUsRUFBQSxDLGtCQUFnRSxDQUFDLENBQUFBLFNBQUEsR0FBTSxJQUFOLEVBQWNBLFNBQUEsR0FBTSxLLEdBQXBCLENBQTZCLEssR0FBN0IsQ0FBc0NBLFNBQUEsQyxNQUFBLENBQXRDLENBQUQsRSxFQUFBLEMsaUJBQWhILEMsQ0FDQUosU0FBQSxDLGdCQUFBLEVBQXdCRyxTQUR4QixDQUVBLE1BQU1HLFNBQUEsQ0FBSyxJQUFYLENBQ0FOLFNBQUEsQyxnQkFBQSxFQUFhLEssYUFBQSxFQUFpQkUsU0FBakIsQ0FBMkIsRUFBM0IsQ0FBZ0NLLFNBQUQsRSwyQkFDbENDLFNBQUEsQ0FBT3pLLFNBQUEsQ0FBT3dLLFNBQVAsQyxDQUNUQyxTLEVBRUFGLFNBQUEsQyxRQUFBLEVBQVVFLFNBQVYsQyxDQUVKLE1BQU1DLFNBQUEsQ0FBSVAsU0FBQSxDLGdCQUFBLEVBQWVRLFNBQUQsRUFBT0EsU0FBQSxDLGdCQUFBLElBQVlILFNBQWpDLENBQVYsQ0FDQVAsU0FBQSxDLGdCQUFBLEVBQXdCTyxTLENBQ3hCUCxTQUFBLEMsZ0JBQUEsRSxPQUFBLEksZ0JBQUEsRSxpQkFBZ0QsQ0FBQyxDQUFBUyxTQUFBLEdBQU0sSUFBTixFQUFjQSxTQUFBLEdBQU0sSyxHQUFwQixDQUE2QixLLEdBQTdCLENBQXNDQSxTQUFBLEMsZ0JBQUEsQ0FBdEMsQ0FBRCxFLEVBQUEsQyxrQkFBZ0UsQ0FBQyxDQUFBQSxTQUFBLEdBQU0sSUFBTixFQUFjQSxTQUFBLEdBQU0sSyxHQUFwQixDQUE2QixLLEdBQTdCLENBQXNDQSxTQUFBLEMsTUFBQSxDQUF0QyxDQUFELEUsRUFBQSxDLFVBQWhILEMsRUFSUyxDLENBVWJULFNBQUEsQyxPQUFBLEUsZ0JBQUEsRUFBb0J6QixRQUFBLEMsZ0JBQUEsQ0FBcEIsQyxDQUNBeUIsU0FBQSxDLGdCQUFBLEUsTUFBQSxHLENBQ0FBLFNBQUEsQyxnQkFBQSxFLGdCQUFBLEcsRUF6UHlCLEMsTUEyUDdCLEUsMkJBQ1VXLFNBQUEsQ0FBTyxJLFFBQ041SyxTQUFBLENBQU80SyxTQUFBLEMsZ0JBQUEsQ0FBUCxDLEVBN1BrQixDLFNBK1A3QixDQUFRQyxTQUFSLEMsQ0FDSSxNQUFNQyxTQUFBLENBQU8sSUFBYixDQUNNQyxTQUFBLENBQUk1SyxTQUFBLENBQVMwSyxTQUFULENBRFYsQ0FFQUMsU0FBQSxDLGtCQUFBLEVBQXdCQyxTLEVBbFFDLEMsU0FvUTdCLEUsMkJBRVVDLFNBQUEsQ0FBTyxJLENBQ2JBLFNBQUEsQyxnQkFBQSxFQUFjLEssZ0JBQUEsQyxDQUNkQSxTQUFBLEMsZ0JBQUEsRSxnQkFBQSxFLGdCQUFBLEMsZ0JBQUEsQyxDQUVBQSxTQUFBLEMsZ0JBQUEsRUFBbUJBLFNBQUEsQyxRQUFBLEUsZ0JBQUEsRSxnQkFBQSxFLFFBQUEsSSxVQUFBLEUsY0FBQSxDLENBRW5CQSxTQUFBLEMsZ0JBQUEsRUFBY25ILENBQUEsQyxnQkFBQSxDLENBQ2RtSCxTQUFBLEMsZ0JBQUEsRSxnQkFBQSxFLGdCQUFBLEMsQ0FFQUEsU0FBQSxDLGdCQUFBLEUsZ0JBQUEsRUFBd0JBLFNBQUEsQyxnQkFBQSxDQUF4QixDLENBQ0FBLFNBQUEsQyxnQkFBQSxFQUFtQm5ILENBQUEsQyxnQkFBQSxFLGdCQUFBLEUsc0JBQUEsQyxDQUNuQm1ILFNBQUEsQyxRQUFBLEUsZ0JBQUEsRUFBbUJBLFNBQUEsQyxnQkFBQSxDQUFuQixDLENBQ0FBLFNBQUEsQyxnQkFBQSxFLGdCQUFBLEVBQXdCQSxTQUFBLEMsZ0JBQUEsQ0FBeEIsQyxDQUlBQSxTQUFBLEMsZ0JBQUEsRUFBc0JuSCxDQUFBLEMsZ0JBQUEsQyxDQUN0Qm1ILFNBQUEsQyxRQUFBLEUsT0FBQSxFQUFrQkEsU0FBQSxDLGdCQUFBLENBQWxCLEMsQ0FDQUEsU0FBQSxDLGdCQUFBLEUsSUFBQSxFLGdCQUFBLENBQWdDLFUsUUFDckIvUSxTQUFBLENBQVUsSUFBVixDQUFnQixLLEdBQWhCLENBQXdCLEssR0FBeEIsQ0FBZ0MsVyx5QkFDbkMsSUFBSWdSLFNBQUosQ0FDQSxJQUFJQyxTQUFBLEMsR0FBSixDQUNJQyxTQURKLENBRUksQ0FBQ0gsU0FBQSxDLGdCQUFBLEUsSUFBQSxFLGdCQUFBLEMsR0FDREEsU0FBQSxDLGdCQUFBLEUsZ0JBQUEsRyxDQUVBRyxTQUFBLENBQWEsTUFBTUgsU0FBQSxDLGdCQUFBLEcsQ0FDZixDQUFBRyxTQUFBLEdBQWVILFNBQUEsQyxnQkFBQSxDQUFmLEVBQXNDLENBQUMsQ0FBQUMsU0FBQSxDQUFLRCxTQUFBLEMsZ0JBQUEsQ0FBTCxDQUFELEdBQThCLElBQTlCLEVBQXNDQyxTQUFBLEdBQU8sSyxHQUE3QyxDQUFzRCxLLEdBQXRELENBQStEQSxTQUFBLEMsZ0JBQUEsQ0FBL0QsQ0FBRCxHQUErRUUsU0FBQSxDLGdCQUFBLENBQXBILEMsRUFDQSxPQUFNSCxTQUFBLEMsZ0JBQUEsR0FBTixDLENBRUpFLFNBQUEsQyxNQUVKRixTQUFBLEMsZ0JBQUEsRSxnQkFBQSxHLENBQ0FFLFNBQUEsRUFBeUIsT0FBTXRGLFNBQUEsQ0FBZW9GLFNBQWYsQ0FBcUJHLFNBQXJCLENBQU4sQyxFQWR0QixDLEVBRFgsQyxDQW9CQUgsU0FBQSxDLFlBQUEsRUFBa0JuSCxDQUFBLEMsZ0JBQUEsQyxDQUNsQm1ILFNBQUEsQyxnQkFBQSxFLE9BQUEsRUFBa0JBLFNBQUEsQyxnQkFBQSxDQUFsQixDLENBQ0FBLFNBQUEsQyxnQkFBQSxFLElBQUEsRSxPQUFBLENBQTRCLEksMkJBQ2xCSSxTQUFBLENBQU9KLFNBQUEsQyxnQkFBQSxHLElBQ1QsQ0FBQ0ksUyxDQUNELE9BRUosSyxRQUFBLEVBQVlBLFNBQVosQyxFQUxKLENBdkNBLENBZ0RBLE1BQU1DLFNBQUEsQ0FBa0JDLFNBQUQsRUFBV3JSLFNBQUEsQ0FBVSxJQUFWLENBQWdCLEssR0FBaEIsQ0FBd0IsSyxHQUF4QixDQUFnQyxXLDJCQUN4RHNSLFNBQUEsQ0FBTyxJLENBQ2IsSUFBSUMsU0FBQSxDQUFPRCxTQUFBLEMsZ0JBQUEsR0FBWCxDLEdBQ0ksQ0FBQ0MsUyxDQUNELE9BR0osTUFBTUMsU0FBQSxDQUFpQnZGLFNBQUEsQ0FBZXFGLFNBQWYsQ0FBdkIsQ0FDTSxDQUFFckosSUFBQSxDQUFBd0osU0FBRixDQUFRMUosSUFBQSxDQUFBMkosU0FBUixFQUFpQixNQUFNdEwsU0FBQSxDQUFpQm9MLFNBQWpCLENBQWlDSCxTQUFqQyxDQUQ3QixDLEdBRUlJLFNBQUEsQyxnQkFBQSxJLEtBQ0EsTyxHQUVBQyxTQUFBLEMsZ0JBQUEsRSxnQkFBQSxFQUFzQixNQUF0QixDLEVBQ0EsTUFBTUMsU0FBQSxDQUFpQnZNLFNBQUEsQ0FBYXNNLFNBQWIsQ0FBbUJILFNBQW5CLENBQXZCLENBQ0FELFNBQUEsQyxnQkFBQSxFLGdCQUFBLEVBQWdCSyxTQUFoQixDLENBQ0FMLFNBQUEsQyxnQkFBQSxFLFNBQUEsRSxnQkFBQSxDLEdBZjBCLENBQWxDLEMsQ0FzQklQLFNBQUEsQyxnQkFBQSxFQUFpQm5ILENBQUEsQyxnQkFBQSxDLENBQ2pCbUgsU0FBQSxDLFFBQUEsRSxnQkFBQSxFQUFtQkEsU0FBQSxDLGdCQUFBLENBQW5CLEMsQ0FDQUEsU0FBQSxDLGdCQUFBLEVBQXNCbkgsQ0FBQSxDLGdFQUFBLEUsZ0JBQUEsRUFBNERtSCxTQUFBLEMsZ0JBQUEsQ0FBNUQsQyxDQUN0Qm5ILENBQUEsQyxnQkFBQSxFLFFBQUEsRSxJQUFBLEUsVUFBQSxFQUFtRm1ILFNBQUEsQyxnQkFBQSxDQUFuRixDLENBQ0FBLFNBQUEsQyxnQkFBQSxFLElBQUEsRSxnQkFBQSxDQUFnQyxTQUFVYSxTQUFWLEMsMkJBQzVCQSxTQUFBLEMsZ0JBQUEsRyxDQUNBQSxTQUFBLEMsZ0JBQUEsRyxDQUNBYixTQUFBLEMsZ0JBQUEsRyxFQUhKLEMsQ0FLQUEsU0FBQSxDLGdCQUFBLEUsSUFBQSxFLGdCQUFBLENBQ21CLFNBQVVjLFNBQVYsQywyQkFDWEEsU0FBQSxDLGdCQUFBLEksTUFFQWQsU0FBQSxDLGdCQUFBLEcsQ0FFSmMsU0FBQSxDLGlCQUFBLEcsRUFOSixFLElBQUEsRSxnQkFBQSxDQVFpQixVLDJCQUNiZCxTQUFBLEMsZ0JBQUEsRSxnQkFBQSxFLHlCQUFBLEMsRUFUSixFLElBQUEsRSxnQkFBQSxDQVdnQixVLDJCQUdaQSxTQUFBLEMsZ0JBQUEsRSxnQkFBQSxFLGdCQUFBLEMsRUFkSixDLENBaUJBQSxTQUFBLEMsZ0JBQUEsRUFBb0JuSCxDQUFBLEMsNkRBQUEsRSxnQkFBQSxFQUFpRW1ILFNBQUEsQyxnQkFBQSxDQUFqRSxDLEVBRXhCLEssZ0JBQUEsSUFDSSxDQUFDQSxTQUFBLEMsZ0JBQUEsRSxNQUFBLEUsYUFBQSxDLEVBQ0RBLFNBQUEsQyxnQkFBQSxFLGdCQUFBLEUsYUFBQSxDLGdCQUFBLEMsQ0FHSkEsU0FBQSxDLGdCQUFBLEVBQWFuSCxDQUFBLEMsZ0JBQUEsQyxDQUNibUgsU0FBQSxDLE9BQUEsRSxnQkFBQSxHLENBQ0FBLFNBQUEsQyxnQkFBQSxFLGdCQUFBLEVBQW1CQSxTQUFBLEMsT0FBQSxDQUFuQixDLENBR0FBLFNBQUEsQyxnQkFBQSxFQUFpQm5ILENBQUEsQyxRQUFBLEUsZ0JBQUEsRSxtQkFBQSxFLGdCQUFBLEksZ0JBQUEsRUFBMERtSCxTQUFBLEMsZ0JBQUEsQ0FBMUQsQyxDQUNqQkEsU0FBQSxDLGdCQUFBLEVBQWFuSCxDQUFBLEMsZ0JBQUEsRSxnQkFBQSxFQUE4Q21ILFNBQUEsQyxnQkFBQSxDQUE5QyxDLENBRWIsSyxnQkFBQSxHQVJBLENBVUEsTUFBTWUsU0FBQSxDQUFlLENBQUNDLFNBQUQsQ0FBTUMsU0FBTixHLDJCQUNYQyxTQUFBLEMsS0FDQUMsU0FBQSxDLEtBQ0FDLFNBQUEsQ0FBYUosU0FBQSxDLGdCQUFBLEcsQ0FDYkssU0FBQSxDQUFJSixTLElBQ05JLFNBQUEsQyxPQUFBLEdBQVdELFNBQUEsQyxnQkFBQSxDQUFYLEVBQ0FDLFNBQUEsQyxnQkFBQSxHQUFXRCxTQUFBLEMsTUFBQSxFQUFrQkYsU0FEN0IsRUFFQUcsU0FBQSxDLGdCQUFBLEdBQVdELFNBQUEsQyxnQkFBQSxDQUZYLEVBR0FDLFNBQUEsQyxPQUFBLEdBQVdELFNBQUEsQyxnQkFBQSxFQUFpQkQsUyx1QkFScEMsQ0FhTUcsU0FBQSxDQUFtQkMsU0FBRCxFQUFTdFMsU0FBQSxDQUFVLElBQVYsQ0FBZ0IsSyxHQUFoQixDQUF3QixLLEdBQXhCLENBQWdDLFcsOEJBQ3pEc1MsU0FBQSxDLFVBQUEsRSxnQkFBQSxDLENBQ0FwSCxTQUFBLENBQVU2RixTQUFWLENBQWdCdUIsU0FBaEIsQyxTQUVLQSxTQUFBLEMsVUFBQSxFLGdCQUFBLEMsQ0FFTEEsU0FBQSxDLGdCQUFBLEUsSUFBQSxFLGdCQUFBLEcsQ0FFQUEsU0FBQSxDLGdCQUFBLEUsZ0JBQUEsQyxTQUVLQSxTQUFBLEMsZ0JBQUEsRSxJQUFBLEUsZ0JBQUEsSSxnQkFBQSxFLElBQ0xBLFNBQUEsQyxnQkFBQSxFLElBQUEsRSxnQkFBQSxHLENBRUFBLFNBQUEsQyxhQUFBLEUsd0JBQUEsQyxTQWJ5QixDQWJqQyxDQThCQXZCLFNBQUEsQyxnQkFBQSxFLElBQUEsRSxnQkFBQSxDLElBQUEsQ0FBZ0MsU0FBVXdCLFNBQVYsQywyQkFDNUIsSUFBSUMsU0FBSixDQUFRQyxTQUFSLENBQ0FGLFNBQUEsQyxnQkFBQSxJQUNBLElBQUlHLFNBQUEsQ0FBTTlJLENBQUEsQ0FBRSxJQUFGLENBQVYsQyxHQUNJa0ksU0FBQSxDQUFhWSxTQUFiLENBQWtCSCxTQUFsQixDLENBQ0FGLFNBQUEsQ0FBZ0JLLFNBQWhCLEMsTUFHQSxNQUFNQyxTQUFBLENBQVFELFNBQUEsQyxnQkFBQSxFLGdCQUFBLENBQWQsQ0FDTUUsU0FBQSxDQUFZRixTQUFBLEMsZ0JBQUEsRSxnQkFBQSxDQURsQixDLEdBRUkzQixTQUFBLEMsU0FBQSxFLGdCQUFBLEdBQTZCLENBQUNBLFNBQUEsQyxnQkFBQSxFLGdCQUFBLEVBQTBCNkIsU0FBMUIsQyxDQUM5QixPQUVKN0IsU0FBQSxDLGdCQUFBLEUsZ0JBQUEsRSxnQkFBQSxDQUE4QjZCLFNBQTlCLEMsQ0FDQyxDQUFDLENBQUFKLFNBQUEsQ0FBS0ksU0FBQSxDLGdCQUFBLENBQUwsQ0FBRCxHQUFpQyxJQUFqQyxFQUF5Q0osU0FBQSxHQUFPLEssR0FBaEQsQ0FBeUQsSyxHQUF6RCxDQUFrRUEsU0FBQSxDLGdCQUFBLENBQWxFLENBQUQsRUFBZ0YsQ0FBQyxDQUFBQyxTQUFBLENBQUtHLFNBQUEsQyxnQkFBQSxDQUFMLENBQUQsR0FBZ0MsSUFBaEMsRUFBd0NILFNBQUEsR0FBTyxLLEdBQS9DLENBQXdELEssR0FBeEQsQ0FBaUVBLFNBQUEsQyxNQUFBLENBQWpFLENBQWhGLEVBQTZKRyxTQUFBLEMsUUFBQSxFLFVBQUEsR0FEN0osQ0FHQSxJQUFJQyxTQUFBLENBQU85QixTQUFBLEMsZ0JBQUEsR0FBWCxDQUNJLENBQUM4QixTLEdBQ0RBLFNBQUEsQyxpQkFDQTlCLFNBQUEsQyxnQkFBQSxFQUFhOEIsU0FBYixDLEVBRUp6QixTQUFBLENBQWV1QixTQUFmLEUsZ0JBQUEsRUFDVSxJLDJCQUdONUIsU0FBQSxDLGdCQUFBLEUsZ0JBQUEsRyxFQUpKLEUsZ0JBQUEsRUFNWStCLFNBQUQsRSwyQkFHUC9CLFNBQUEsQyxnQkFBQSxFLGdCQUFBLEcsRUFUSixDLEdBckJSLEMsQ0FrQ0FBLFNBQUEsQyxnQkFBQSxFLElBQUEsRSxPQUFBLEMsSUFBQSxDQUE2QixTQUFVZ0MsU0FBVixDLDJCQUN6QkEsU0FBQSxDLGdCQUFBLElBQ0EsSUFBSUMsU0FBQSxDQUFNcEosQ0FBQSxDQUFFLElBQUYsQ0FBVixDQUNJa0ksU0FBQSxDQUFha0IsU0FBYixDQUFrQkQsU0FBbEIsQyxFQUNBVixTQUFBLENBQWdCVyxTQUFoQixDLENBRUp4SSxTQUFBLENBQWF1RyxTQUFiLENBQW1CaUMsU0FBbkIsQyxFQU5KLEMsQ0FRQXBKLENBQUEsQ0FBRTJFLFFBQUYsRSxJQUFBLEUsT0FBQSxDQUF3QixTQUFVMEUsU0FBVixDLDJCQUVoQixDQUFDckosQ0FBQSxDQUFFcUosU0FBQSxDLFFBQUEsQ0FBRixFLGdCQUFBLEVBQXdCbEMsU0FBQSxDLGdCQUFBLENBQXhCLEUsZ0JBQUEsQyxFQUNEQSxTQUFBLEMsZ0JBQUEsRSxnQkFBQSxHLEVBSFIsQyxFQWhjeUIsQ0FBakMsQyxFQWZKLENBbWVNbUMsU0FBQSxDQUF3QixJLDJCQUNwQkMsU0FBQSxDQUFZdkosQ0FBQSxDLGdCQUFBLEMsQ0FDWndKLFNBQUEsQ0FBYUQsU0FBQSxDLGdCQUFBLEcsQ0FDYkUsU0FBQSxDQUFVdE0sR0FBQSxDLGdCQUFBLEUsZ0JBQUEsRUFBZXFNLFNBQWYsQyxJQUNaLENBQUNDLFMsQ0FDRCxPQUFPNUgsU0FBUCxDQUdKLE1BQU0sQ0FBRXZJLFFBQUEsQ0FBQW9RLFNBQUYsQ0FBWUMsWUFBQSxDQUFBQyxTQUFaLENBQTBCQyxjQUFBLENBQUFDLFNBQTFCLENBQTBDQyxnQkFBQSxDQUFBQyxTQUExQyxDQUE0REMsV0FBQSxDQUFBQyxTQUE1RCxDQUF5RUMsZ0JBQUEsQ0FBQUMsU0FBekUsRUFBOEZYLFNBQXBHLENBQ01ZLFNBQUEsQ0FBVyxDLFVBQ2IsQ0FBQVgsU0FEYSxDLGNBRWIsQ0FBQUUsU0FGYSxDLGdCQUdiLENBQUFFLFNBSGEsQyxrQkFJYixDQUFBRSxTQUphLEMsYUFLYixDQUFBRSxTQUxhLEMsa0JBTWIsQ0FBQUUsU0FOYSxDQURqQixDLE9BU09DLFMsRUFwZlgsQ0FzZk1DLFNBQUEsQ0FBd0IsSSwyQkFDcEJDLFNBQUEsQ0FBWXZLLENBQUEsQyxnQkFBQSxDLENBQ1p3SyxTQUFBLENBQWFELFNBQUEsQyxnQkFBQSxHLENBQ2JFLFNBQUEsQ0FBYW5CLFNBQUEsRSxJQUNmLENBQUNtQixTLFFBQ001SSxTLENBRVgsTUFBTTZJLFNBQUEsQ0FBbUJELFNBQUEsQyxrQkFBQSxDQUF6QixDLE9BQ08xUSxNQUFBLEMsUUFBQSxFQUFjLEMsa0JBQUUsQ0FBQTJRLFNBQUYsQyxJQUFvQixDQUFJRixTQUF4QixDQUFkLENBQW9EQyxTQUFwRCxDLEVBOWZYLENBZ2dCTUUsU0FBQSxDQUErQixJLE9BQzFCLEMsY0FDSCxDQUFjTCxTQURYLEMsRUFqZ0JYLENBc2dCTU0sU0FBQSxDQUF3QixJLDJCQUdwQkMsU0FBQSxDQUFjN0ssQ0FBQSxDLG1CQUFBLEMsQ0FDcEI3RixPQUFBLEMsZ0JBQUEsRSwyQkFBQSxDQUFzQzBRLFNBQUEsQyxnQkFBQSxDQUF0QyxFLEdBQ0lBLFNBQUEsQyxRQUFBLEMsRUFDQTFRLE9BQUEsQyxLQUFBLEUsZ0JBQUEsRUFFQSxNQUFNMlEsU0FBQSxDQUFTOUssQ0FBQSxDLGdCQUFBLENBQXVCLEMsS0FDbEMsQyxnQkFEa0MsQyxXQUVsQyxDLElBRmtDLEMsT0FHbEMsQyxnQkFIa0MsQyxtQkFJbEMsQyxnQkFKa0MsQyxPQUtsQyxDLGdCQUxrQyxDLFFBTWxDLEMsZ0JBTmtDLENBQXZCLENBQWYsQ0FTQTZLLFNBQUEsQyxnQkFBQSxFQUFtQkMsU0FBbkIsQyxDQUVBQSxTQUFBLEMsZ0JBQUEsRUFBVyxDLFVBQ1AsQyxnQkFETyxDLE9BRVAsQyxNQUZPLEMsUUFHUCxDLGdCQUhPLENBQVgsQyxHQXpoQlIsQ0FpaUJBM04sR0FBQSxDLGdCQUFBLEUsZ0JBQUEsRSxnQkFBQSxDQUE4QyxDLFVBQzFDLEMsZ0JBRDBDLEMsT0FFMUMsQyxTQUYwQyxDLE9BRzFDLEMsZ0JBSDBDLEMsTUFJMUMsQyxnQkFKMEMsQyxjQUsxQyxDLE9BTDBDLEMsVUFNMUMsQ0FBVSxDLFFBQ04sQ0FBUSxDLE9BQUUsQyxHQUFGLENBREYsQyxRQUVOLENBQVEsQyxPQUFFLEMsR0FBRixDQUZGLEMsTUFJTixDQUFNLEMsT0FBRSxDLEVBQUYsQ0FKQSxDLFVBS04sQ0FBVSxDLE9BQUUsQyxFQUFGLEMsVUFBYSxDLElBQWIsQyxNQUE2QixDLGdCQUE3QixDQUxKLEMsYUFNTixDQUFhLEMsT0FBRSxDLGdCQUFGLEMsVUFBa0IsQyxJQUFsQixDQU5QLEMsUUFPTixDQUFRLEMsT0FBRSxDLEVBQUYsQyxVQUFhLEMsR0FBYixDQVBGLENBTmdDLEMsUUFlMUMsQyxHQWYwQyxDLFNBZ0IxQyxDLEdBaEIwQyxDLE9BaUIxQyxFLGtDQUNXLEssZ0JBQUEsRyxrQkFsQitCLEMsWUFvQjFDLEUsa0NBQ1csSyxnQkFBQSxFLG1CQUFBLEMsSUFyQitCLEMsZUF1QjFDLEUsMkJBQ1U0TixTQUFBLENBQU8sSSxDQUNibEgsU0FBQSxFLENBQ0ErRyxTQUFBLEUsQ0FDQUcsU0FBQSxDLFFBQUEsRSxHQUZBLENBR0EsTUFBTUMsU0FBQSxDQUFVaEwsQ0FBQSxDLGdCQUFBLENBQWhCLENBQ0FnTCxTQUFBLEMsZ0JBQUEsRUFBb0JqUixNQUFBLEMsZ0JBQUEsRUFBY0EsTUFBQSxDLGdCQUFBLEVBQWMsRUFBZCxDQUFrQjRRLFNBQUEsRUFBbEIsQ0FBZCxDQUFpRSxDLGNBQUUsQ0FBYU0sU0FBYixDLGtDQUN4RUEsU0FBQSxDLGdCQUFBLEksa0JBRHNFLENBQWpFLENBQXBCLEMsRUE3QnNDLEMsWUFpQzFDLEUsRUFqQzBDLENBQTlDLEMsRUE5aUNKLEciLCJzb3VyY2VzQ29udGVudCI6WyIoZnVuY3Rpb24gKCkge1xuICAgICd1c2Ugc3RyaWN0JztcblxuICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICAgIENvcHlyaWdodCAoYykgTWljcm9zb2Z0IENvcnBvcmF0aW9uLlxyXG5cclxuICAgIFBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZC9vciBkaXN0cmlidXRlIHRoaXMgc29mdHdhcmUgZm9yIGFueVxyXG4gICAgcHVycG9zZSB3aXRoIG9yIHdpdGhvdXQgZmVlIGlzIGhlcmVieSBncmFudGVkLlxyXG5cclxuICAgIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIgQU5EIFRIRSBBVVRIT1IgRElTQ0xBSU1TIEFMTCBXQVJSQU5USUVTIFdJVEhcclxuICAgIFJFR0FSRCBUTyBUSElTIFNPRlRXQVJFIElOQ0xVRElORyBBTEwgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWVxyXG4gICAgQU5EIEZJVE5FU1MuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgQkUgTElBQkxFIEZPUiBBTlkgU1BFQ0lBTCwgRElSRUNULFxyXG4gICAgSU5ESVJFQ1QsIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyBPUiBBTlkgREFNQUdFUyBXSEFUU09FVkVSIFJFU1VMVElORyBGUk9NXHJcbiAgICBMT1NTIE9GIFVTRSwgREFUQSBPUiBQUk9GSVRTLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgTkVHTElHRU5DRSBPUlxyXG4gICAgT1RIRVIgVE9SVElPVVMgQUNUSU9OLCBBUklTSU5HIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFVTRSBPUlxyXG4gICAgUEVSRk9STUFOQ0UgT0YgVEhJUyBTT0ZUV0FSRS5cclxuICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqICovXHJcbiAgICAvKiBnbG9iYWwgUmVmbGVjdCwgUHJvbWlzZSwgU3VwcHJlc3NlZEVycm9yLCBTeW1ib2wsIEl0ZXJhdG9yICovXHJcblxyXG5cclxuICAgIGZ1bmN0aW9uIF9fYXdhaXRlcih0aGlzQXJnLCBfYXJndW1lbnRzLCBQLCBnZW5lcmF0b3IpIHtcclxuICAgICAgICBmdW5jdGlvbiBhZG9wdCh2YWx1ZSkgeyByZXR1cm4gdmFsdWUgaW5zdGFuY2VvZiBQID8gdmFsdWUgOiBuZXcgUChmdW5jdGlvbiAocmVzb2x2ZSkgeyByZXNvbHZlKHZhbHVlKTsgfSk7IH1cclxuICAgICAgICByZXR1cm4gbmV3IChQIHx8IChQID0gUHJvbWlzZSkpKGZ1bmN0aW9uIChyZXNvbHZlLCByZWplY3QpIHtcclxuICAgICAgICAgICAgZnVuY3Rpb24gZnVsZmlsbGVkKHZhbHVlKSB7IHRyeSB7IHN0ZXAoZ2VuZXJhdG9yLm5leHQodmFsdWUpKTsgfSBjYXRjaCAoZSkgeyByZWplY3QoZSk7IH0gfVxyXG4gICAgICAgICAgICBmdW5jdGlvbiByZWplY3RlZCh2YWx1ZSkgeyB0cnkgeyBzdGVwKGdlbmVyYXRvcltcInRocm93XCJdKHZhbHVlKSk7IH0gY2F0Y2ggKGUpIHsgcmVqZWN0KGUpOyB9IH1cclxuICAgICAgICAgICAgZnVuY3Rpb24gc3RlcChyZXN1bHQpIHsgcmVzdWx0LmRvbmUgPyByZXNvbHZlKHJlc3VsdC52YWx1ZSkgOiBhZG9wdChyZXN1bHQudmFsdWUpLnRoZW4oZnVsZmlsbGVkLCByZWplY3RlZCk7IH1cclxuICAgICAgICAgICAgc3RlcCgoZ2VuZXJhdG9yID0gZ2VuZXJhdG9yLmFwcGx5KHRoaXNBcmcsIF9hcmd1bWVudHMgfHwgW10pKS5uZXh0KCkpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHR5cGVvZiBTdXBwcmVzc2VkRXJyb3IgPT09IFwiZnVuY3Rpb25cIiA/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+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGVuZHBvaW50Tm9kZTogZ2V0RW5kcG9pbnRQYXJhbWV0ZXJzLFxuICAgICAgICB9O1xuICAgIH07XG5cbiAgICBjb25zdCBpbnN0YWxsRmVlZGJhY2tXaWRnZXQgPSAoKSA9PiB7XG4gICAgICAgIC8vIHJldHVybjtcbiAgICAgICAgLy8gZGVidWdnZXI7XG4gICAgICAgIGNvbnN0IHRyYXlDb250ZW50ID0gJChcIi5yZWQtdWktdHJheS1ib2R5XCIpO1xuICAgICAgICBjb25zb2xlLmxvZyhcImluc3RhbGxGZWVkYmFja1dpZGdldCBcIiwgdHJheUNvbnRlbnQubGVuZ3RoKTtcbiAgICAgICAgaWYgKHRyYXlDb250ZW50Lmxlbmd0aCkge1xuICAgICAgICAgICAgY29uc29sZS5sb2coXCJpbnN0YWxsaW5nIGlmcmFtZVwiKTtcbiAgICAgICAgICAgIC8vIENyZWF0ZSB0aGUgaWZyYW1lIGVsZW1lbnRcbiAgICAgICAgICAgIGNvbnN0IGlmcmFtZSA9ICQoXCI8aWZyYW1lPjwvaWZyYW1lPlwiLCB7XG4gICAgICAgICAgICAgICAgc3JjOiBcIi9vcGN1YS1mb3Itbm9kZS1yZWQvc3VwcG9ydC1mcmFtZS5odG1sXCIsXG4gICAgICAgICAgICAgICAgc2Nyb2xsaW5nOiBcIm5vXCIsXG4gICAgICAgICAgICAgICAgc3R5bGU6IFwiYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtvdmVyZmxvdzpoaWRkZW47Ym9yZGVyOjNweFwiLFxuICAgICAgICAgICAgICAgIGFsbG93dHJhbnNwYXJlbmN5OiBcInRydWVcIixcbiAgICAgICAgICAgICAgICB3aWR0aDogXCIxODBweFwiLFxuICAgICAgICAgICAgICAgIGhlaWdodDogXCIzMHB4XCIsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIC8vIEFwcGVuZCB0aGUgaWZyYW1lIHRvIHRoZSBmZWVkYmFjayBlbGVtZW50XG4gICAgICAgICAgICB0cmF5Q29udGVudC5hcHBlbmQoaWZyYW1lKTtcbiAgICAgICAgICAgIC8vIFBvc2l0aW9uIHRoZSBmZWVkYmFjayBlbGVtZW50IGF0IHRoZSBib3R0b20gcmlnaHQgb2YgdGhlIHRyYXkgY29udGVudFxuICAgICAgICAgICAgaWZyYW1lLmNzcyh7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IFwiYWJzb2x1dGVcIixcbiAgICAgICAgICAgICAgICByaWdodDogXCIyMHB4XCIsXG4gICAgICAgICAgICAgICAgYm90dG9tOiBcIjE2cHhcIixcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfTtcblxuICAgIFJFRC5ub2Rlcy5yZWdpc3RlclR5cGUoXCJPcGNVYS1DbGllbnQyLVdyaXRlXCIsIHtcbiAgICAgICAgY2F0ZWdvcnk6IFwib3BjdWFcIixcbiAgICAgICAgY29sb3I6IFwiI0MwREVFRFwiLFxuICAgICAgICBhbGlnbjogXCJyaWdodFwiLFxuICAgICAgICBpY29uOiBcIi4uLy4uL2ljb25zL29wY3Vhbm9kZUxvZ28ucG5nXCIsXG4gICAgICAgIHBhbGV0dGVMYWJlbDogXCJ3cml0ZVwiLFxuICAgICAgICBkZWZhdWx0czoge1xuICAgICAgICAgICAgaW5wdXRzOiB7IHZhbHVlOiAxIH0sXG4gICAgICAgICAgICBvdXRwdXQ6IHsgdmFsdWU6IDQgfSxcbiAgICAgICAgICAgIC8vIENvbW1vblxuICAgICAgICAgICAgbmFtZTogeyB2YWx1ZTogXCJcIiB9LFxuICAgICAgICAgICAgZW5kcG9pbnQ6IHsgdmFsdWU6IFwiXCIsIHJlcXVpcmVkOiB0cnVlLCB0eXBlOiBcIk9wY1VhLUVuZHBvaW50MlwiIH0sXG4gICAgICAgICAgICBhdHRyaWJ1dGVJZDogeyB2YWx1ZTogXCJWYWx1ZVwiLCByZXF1aXJlZDogdHJ1ZSB9LFxuICAgICAgICAgICAgbm9kZUlkOiB7IHZhbHVlOiBcIlwiLCByZXF1aXJlZDogZmFsc2UgfSxcbiAgICAgICAgfSxcbiAgICAgICAgaW5wdXRzOiAxLFxuICAgICAgICBvdXRwdXRzOiAxLFxuICAgICAgICBsYWJlbCgpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLm5hbWUgfHwgXCJPUENVQSBDbGllbnQgV3JpdGVcIjtcbiAgICAgICAgfSxcbiAgICAgICAgbGFiZWxTdHlsZSgpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLm5hbWUgPyBcIm5vZGVfbGFiZWxfaXRhbGljXCIgOiBcIlwiO1xuICAgICAgICB9LFxuICAgICAgICBvbmVkaXRwcmVwYXJlKCkge1xuICAgICAgICAgICAgY29uc3Qgbm9kZSA9IHRoaXM7XG4gICAgICAgICAgICBkZWNsYXJlTm9kZUJyb3dzZXJXaWRnZXQoKTtcbiAgICAgICAgICAgIGluc3RhbGxGZWVkYmFja1dpZGdldCgpO1xuICAgICAgICAgICAgbm9kZS5pbnB1dHMgPSAxO1xuICAgICAgICAgICAgY29uc3QgJG5vZGVJZCA9ICQoXCIjbm9kZS1pbnB1dC1ub2RlSWRcIik7XG4gICAgICAgICAgICAkbm9kZUlkLm5vZGVCcm93c2VyKE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSwgZ2V0RW5kcG9pbnRQYXJhbWV0ZXJzSGFuZGxlcigpKSwgeyBpc1NlbGVjdGFibGUobm9kZURlc2MpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG5vZGVEZXNjLm5vZGVDbGFzcyA9PT0gXCJWYXJpYWJsZVwiO1xuICAgICAgICAgICAgICAgIH0gfSkpO1xuICAgICAgICB9LFxuICAgICAgICBvbmVkaXRzYXZlKCkgeyB9LFxuICAgIH0pO1xuXG59KSgpOyJdfQ==
|
7
|
+
function _0x9b79(_0x5a0e7c,_0x42e914){const _0x10acac=_0x10ac();return _0x9b79=function(_0x9b79de,_0x5cca82){_0x9b79de=_0x9b79de-0x115;let _0x12e899=_0x10acac[_0x9b79de];return _0x12e899;},_0x9b79(_0x5a0e7c,_0x42e914);}function _0x10ac(){const _0x10c596=['attr','<iframe></iframe>','click',':visible','HasTypeDefinition','top','/opcua-for-node-red/support-frame.html','reference','$dropdown','offset','DarkOrange','function','mousedown.red-ui-typedInput-focus-block','hide','fa-cog','OpcUa-Client2-Write','toggleClass',';\x22></i>\x20',':focus','nodeId','<div\x20class=\x22sterfive-info-text\x22></div>','ns=0;i=61','nodeId_aliased','preventDefault','aliasedNodeId','CadetBlue','failure','then','ns=0;i=45','selectedMenuItem','toString','79644iioZdl','Object','fa-list-alt','$combo','blur','aliased\x20browsePath:\x20','SuppressedError','.spinner','focus','suppressed','ns=0;i=85','NodeId','30px','_hideMenu','enter\x20a\x20nodeId\x20or\x20a\x20browsePath\x20','join','Both','nsuNodeID','/checkNodeId','indexOf','ns=0;i=34','catch','#node-input-endpoint','disarmClick','red-ui-typedInput-icon\x20','bp_indexed','ObjectType','name','226367FdaZuw','absolute','namespaceAliases','data','$uiSelect','POST','red-ui-typedInput-icon','node\x20class:\x20','red-ui-typedInput-focus','aliased\x20NodeId:\x20','__parentNode','displayName','Aliased\x20NodeId','toggle','status','sterfive-input-error','18px','_initMenu','mask-image:\x20url(','ns=0;i=35','<i>','_showTypeMenu','nodes','prop','12SIWhEZ','left','already\x20loading','setMode','!!failure!!','DisplayName','typeDefinition','json','error','css','push','sterfive-combo-box','<div>','statusText','match','options','Objects','call','mousedown.red-ui-typedInput-close-property-select','<li>error\x20','node_label_italic','Organizes','$toggleTreeBtn','10960WxaEAd','element','VariableType','keydown','statusCode:\x20','HasSubtype','35nRDoAk','children','empty','DodgerBlue','none','Forward','<button\x20title=\x22verify\x20nodeId\x20or\x20browsePath\x22><i\x20class=\x22fa\x20fa-refresh\x22></i></button>','resolveParentNode','TypeDefinition','icon','already\x20fetched','string','length','node\x20id\x20or\x20\x20browse\x20path\x20comes\x20from\x20injected\x20msg\x20parameter','browsePath','$selectLabel','Value','#node-input-nodeId','nodeClass','.red-ui-tray-body','prev','endpointNode','wrap','reset','</span>','opc.tcp://opcuademo.sterfive.com:26543','pageX','> \x20','appendTo','main-wrapper','replaceWith','statusCode','HasChild','fetched','<button\x20type=\x22button\x22\x20tabindex=\x220\x22></button>','Good','SeaGreen','verify','selected','placeholder','><i\x20class=\x22fa\x20','parentNode','DataType','$selectTrigger','err','scrollTop','pageY','application/json','742340fxxNCJ','next','height','$elementDiv','prependTo','2781171LfntcY','write','filter','opcua','<li\x20key=\x22','<span\x20title=','BrowseName','isSelectable','Unspecified','<a\x20href=\x22#\x22></a>','animate','fa-text-width','Invalid','8577470KvfvTU','1464LBOemk','$menu','<i\x20class=\x22fa\x20fa-tag\x22/>1\x20 \x20','trigger','opts','apply','checked','sort','HasComponent','<i\x20class=\x22fa\x20fa-font\x22/i>\x20','callback','position','HasProperty','hasClass','stringify','log','val','<i\x20class=\x22fa\x20fa-bookmark\x22/> \x20','body','aliasedBrowsePath','text','20px','Aliased\x20Browse\x20Path','SandyBrown','</span><ul></ul></li>','node','2atzgEh','keyCode','nsu','Method','822904ovNeEU','#C0DEED','border','<input\x20type=\x22checkbox\x22>','$info','Variable','show','browse\x20path:\x20','NodeId\x20with\x20namespace\x20Urn','fa-object-group','expandable\x20expanded','baseUrl','NodeClass','off','stopPropagation','</li>','nodeId:\x20','change','multiple','ns=0;i=47','assign','sterfive-input-group','mode','$inputGroup','sterfive.nodeBrowser','fa-folder','bp_aliased','<i\x20class=\x22fa\x20fa-bookmark\x22/><i\x20class=\x22fa\x20fa-fighter-jet\x22/> ','loading','ns=0;i=46','$tree','\x22}><span\x20class=\x22tree-text\x22\x20title=','input[type=\x22checkbox\x22]','true','pointer-events','IsForward','find','View','append','ns=0;i=40','target','referenceTypeId','nodeIds','_createMenu','OPCUA\x20Client\x20Write','tabindex','expandable','expanded','endpoint','nodeId_nsu','removeClass','after','$input','closest','/opcua-for-node-red','<i\x20class=\x22red-ui-typedInput-icon\x20fa\x20fa-caret-down\x22></i>','auto','browseName','nsu\x20nodeId:\x20','<div/>','slideDown','currentParent','title','background-color:transparent;overflow:hidden;border:3px','$verifyBtn','[value=\x27','addClass','label','dblclick','references','ReferenceType','browseResult','remove','BrowsePath','isTypeRef','value'];_0x10ac=function(){return _0x10c596;};return _0x10ac();}(function(_0x447db6,_0x20160b){const _0x49f312=_0x9b79,_0x2f4158=_0x447db6();while(!![]){try{const _0x1a1c13=-parseInt(_0x49f312(0x1f0))/0x1*(-parseInt(_0x49f312(0x165))/0x2)+-parseInt(_0x49f312(0x208))/0x3*(-parseInt(_0x49f312(0x1d4))/0x4)+-parseInt(_0x49f312(0x21f))/0x5*(parseInt(_0x49f312(0x14b))/0x6)+-parseInt(_0x49f312(0x225))/0x7*(parseInt(_0x49f312(0x169))/0x8)+parseInt(_0x49f312(0x13d))/0x9+-parseInt(_0x49f312(0x138))/0xa+parseInt(_0x49f312(0x14a))/0xb;if(_0x1a1c13===_0x20160b)break;else _0x2f4158['push'](_0x2f4158['shift']());}catch(_0x765619){_0x2f4158['push'](_0x2f4158['shift']());}}}(_0x10ac,0x4242b),(function(){'use strict';const _0x1048ab=_0x9b79;function _0x3a6ede(_0x31585e,_0x387efd,_0x2b6767,_0x4ed074){function _0x26e36c(_0x581377){return _0x581377 instanceof _0x2b6767?_0x581377:new _0x2b6767(function(_0x701cc0){_0x701cc0(_0x581377);});}return new(_0x2b6767||(_0x2b6767=Promise))(function(_0x5a8108,_0x356cfe){const _0x176e28=_0x9b79;function _0x4a8bf5(_0x30ea01){const _0xe14f98=_0x9b79;try{_0x2caa87(_0x4ed074[_0xe14f98(0x139)](_0x30ea01));}catch(_0x296845){_0x356cfe(_0x296845);}}function _0x245ca4(_0x566ea0){try{_0x2caa87(_0x4ed074['throw'](_0x566ea0));}catch(_0x3e9207){_0x356cfe(_0x3e9207);}}function _0x2caa87(_0x43ae81){const _0x347390=_0x9b79;_0x43ae81['done']?_0x5a8108(_0x43ae81[_0x347390(0x1b4)]):_0x26e36c(_0x43ae81[_0x347390(0x1b4)])['then'](_0x4a8bf5,_0x245ca4);}_0x2caa87((_0x4ed074=_0x4ed074[_0x176e28(0x150)](_0x31585e,_0x387efd||[]))['next']());});}typeof SuppressedError===_0x1048ab(0x1c0)?SuppressedError:function(_0x3dbf37,_0x2ef4bd,_0x4f9c27){const _0x45e96e=_0x1048ab;var _0xf773d7=new Error(_0x4f9c27);return _0xf773d7[_0x45e96e(0x1ef)]=_0x45e96e(0x1da),_0xf773d7[_0x45e96e(0x210)]=_0x3dbf37,_0xf773d7[_0x45e96e(0x1dd)]=_0x2ef4bd,_0xf773d7;};const _0xd5de9d=_0x1048ab(0x203),_0x484237=_0x1048ab(0x1ca),_0x54d1e1=_0x1048ab(0x17c),_0x436883=_0x1048ab(0x186),_0x1de391=_0x1048ab(0x1e8),_0x531207=_0x1048ab(0x1d1),_0x26501b=_0x1048ab(0x190);var _0x5b5c0f;(function(_0x3de919){const _0x375654=_0x1048ab;_0x3de919[_0x3de919[_0x375654(0x22a)]=0x0]=_0x375654(0x22a),_0x3de919[_0x3de919['Inverse']=0x1]='Inverse',_0x3de919[_0x3de919[_0x375654(0x1e4)]=0x2]='Both',_0x3de919[_0x3de919[_0x375654(0x149)]=0x3]='Invalid';}(_0x5b5c0f||(_0x5b5c0f={})));var _0x4d7a88;(function(_0x523394){const _0x1f078c=_0x1048ab;_0x523394[_0x523394[_0x1f078c(0x145)]=0x0]=_0x1f078c(0x145),_0x523394[_0x523394['Object']=0x1]='Object',_0x523394[_0x523394['Variable']=0x2]=_0x1f078c(0x16e),_0x523394[_0x523394[_0x1f078c(0x168)]=0x4]=_0x1f078c(0x168),_0x523394[_0x523394[_0x1f078c(0x1ee)]=0x8]=_0x1f078c(0x1ee),_0x523394[_0x523394[_0x1f078c(0x221)]=0x10]='VariableType',_0x523394[_0x523394[_0x1f078c(0x1af)]=0x20]=_0x1f078c(0x1af),_0x523394[_0x523394[_0x1f078c(0x132)]=0x40]=_0x1f078c(0x132),_0x523394[_0x523394[_0x1f078c(0x18e)]=0x80]=_0x1f078c(0x18e);}(_0x4d7a88||(_0x4d7a88={})));var _0x398c37;(function(_0x54433f){const _0x210ddd=_0x1048ab;_0x54433f[_0x54433f['Object']=0x1]='Object',_0x54433f[_0x54433f[_0x210ddd(0x16e)]=0x2]='Variable',_0x54433f[_0x54433f[_0x210ddd(0x168)]=0x4]=_0x210ddd(0x168),_0x54433f[_0x54433f[_0x210ddd(0x1ee)]=0x8]='ObjectType',_0x54433f[_0x54433f[_0x210ddd(0x221)]=0x10]=_0x210ddd(0x221),_0x54433f[_0x54433f['ReferenceType']=0x20]='ReferenceType',_0x54433f[_0x54433f[_0x210ddd(0x132)]=0x40]='DataType',_0x54433f[_0x54433f[_0x210ddd(0x18e)]=0x80]=_0x210ddd(0x18e);}(_0x398c37||(_0x398c37={})));var _0x2d5160;(function(_0x48a14c){const _0x4b923b=_0x1048ab;_0x48a14c[_0x48a14c[_0x4b923b(0x1af)]=0x1]=_0x4b923b(0x1af),_0x48a14c[_0x48a14c[_0x4b923b(0x18c)]=0x2]=_0x4b923b(0x18c),_0x48a14c[_0x48a14c[_0x4b923b(0x175)]=0x4]='NodeClass',_0x48a14c[_0x48a14c['BrowseName']=0x8]=_0x4b923b(0x143),_0x48a14c[_0x48a14c[_0x4b923b(0x20d)]=0x10]=_0x4b923b(0x20d),_0x48a14c[_0x48a14c[_0x4b923b(0x22d)]=0x20]=_0x4b923b(0x22d);}(_0x2d5160||(_0x2d5160={})));function _0x2ea8bb(_0x423e17){const _0x21d3dc=_0x1048ab;switch(_0x423e17){case _0x21d3dc(0x21d):return _0xd5de9d;case _0x21d3dc(0x157):return _0x436883;case _0x21d3dc(0x153):return _0x54d1e1;case _0x21d3dc(0x128):return _0x1de391;case'HasSubtype':return _0x531207;case _0x21d3dc(0x1b9):return _0x26501b;}}const _0x528505=_0x3ede77=>{const _0x984f77=_0x1048ab;switch(_0x3ede77[_0x984f77(0x11a)]){case _0x984f77(0x1d5):if(_0x3ede77[_0x984f77(0x192)]===_0xd5de9d);if(_0x3ede77[_0x984f77(0x20e)]===_0x484237||_0x3ede77['referenceTypeId']==='i=61')return{'icon':_0x984f77(0x182),'color':'rgba(61,\x2060,\x204,\x200.525)'};return{'icon':'fa-object-group','color':_0x984f77(0x12c)};case'Variable':if(_0x3ede77[_0x984f77(0x192)]===_0x54d1e1)return{'icon':_0x984f77(0x1d6),'color':'SteelBlue'};else return _0x3ede77['referenceTypeId']===_0x436883?{'icon':_0x984f77(0x1d6),'color':_0x984f77(0x228)}:{'icon':'fa-list-alt','color':_0x984f77(0x1ce)};case _0x984f77(0x168):return{'icon':_0x984f77(0x1c3),'color':_0x984f77(0x162)};case _0x984f77(0x1ee):return{'icon':_0x984f77(0x172),'color':_0x984f77(0x1bf)};case _0x984f77(0x221):return{'icon':'fa-sliders','color':_0x984f77(0x1bf)};case _0x984f77(0x132):return{'icon':_0x984f77(0x148),'color':_0x984f77(0x1ce)};}return{'icon':'fa-question','color':'grey'};},_0x501921=(_0x3dea49,_0xdb5707,_0x479216)=>_0x3a6ede(void 0x0,[_0x3dea49,_0xdb5707,_0x479216],void 0x0,function*({endpointNode:_0x1c7881,endpoint:_0x46e4b7,baseUrl:_0x3439ec},_0x59327c,_0x5a3603){const _0x342b2c=_0x1048ab,_0x8653ba=_0x3439ec+_0x342b2c(0x19f),_0x1c16dd=_0x8653ba+'/browse',_0x45a2cb=Object[_0x342b2c(0x17d)](Object[_0x342b2c(0x17d)]({},_0x5a3603),{'nodeId':_0x59327c,'resultMask':0x3f}),_0x214b56=yield fetch(_0x1c16dd,{'method':_0x342b2c(0x1f5),'body':JSON[_0x342b2c(0x159)]({'endpointNode':_0x1c7881,'endpoint':_0x46e4b7,'browseDescription':_0x45a2cb}),'headers':{'Content-Type':_0x342b2c(0x137)}});if(_0x214b56['status']!==0xc8)return console[_0x342b2c(0x15a)]('fetching\x20failed\x20with\x20error',_0x214b56['status'],_0x214b56[_0x342b2c(0x215)]),{'references':[]};const _0x1b5d7f=yield _0x214b56[_0x342b2c(0x20f)](),_0xe70958=_0x1b5d7f[_0x342b2c(0x1b0)][_0x342b2c(0x1ae)]||[];return{'references':_0xe70958};}),_0x149fea={'referenceTypeId':_0x2ea8bb('HasChild'),'includeSubtypes':!![],'browseDirection':_0x5b5c0f[_0x1048ab(0x22a)],'nodeClassMask':_0x4d7a88[_0x1048ab(0x16e)]|_0x4d7a88[_0x1048ab(0x1d5)]|_0x4d7a88[_0x1048ab(0x168)],'resultMask':0x3f},_0x3bf7be={'referenceTypeId':_0x2ea8bb(_0x1048ab(0x21d)),'includeSubtypes':!![],'browseDirection':_0x5b5c0f['Forward'],'nodeClassMask':_0x4d7a88[_0x1048ab(0x16e)]|_0x4d7a88[_0x1048ab(0x1d5)]|_0x4d7a88[_0x1048ab(0x168)],'resultMask':0x3f},_0x4f93be=(_0x2f6063,_0x22c326)=>_0x3a6ede(void 0x0,[_0x2f6063,_0x22c326],void 0x0,function*({endpointNode:_0x55d355,endpoint:_0xbe2d16,baseUrl:_0x439a39},{nodeId:_0xd9a52a,rootNodeId:_0x5231c4,isType:_0x1a8876}){const _0x5edf9a=_0x1048ab,_0x24a2e8=_0x439a39+'/opcua-for-node-red',_0x2b3c74=_0x24a2e8+'/walk-backward',_0x2f6bd3=yield fetch(_0x2b3c74,{'method':_0x5edf9a(0x1f5),'body':JSON[_0x5edf9a(0x159)]({'endpointNode':_0x55d355,'endpoint':_0xbe2d16,'nodeId':_0xd9a52a,'rootNodeId':_0x5231c4,'isType':_0x1a8876}),'headers':{'Content-Type':'application/json'}});if(_0x2f6bd3[_0x5edf9a(0x1fe)]!==0xc8)return null;const _0x4772f1=yield _0x2f6bd3[_0x5edf9a(0x20f)]();return _0x4772f1[_0x5edf9a(0x116)];}),_0x8dbcf4=(_0x2f5991,_0xd0f061)=>{const _0x5dd8c7=_0x1048ab;if(_0x2f5991[_0x5dd8c7(0x127)]!==_0x5dd8c7(0x12b))return _0x2f5991['requestedNodeId'];switch(_0xd0f061){case _0x5dd8c7(0x116):return _0x2f5991['bp_indexed'];case _0x5dd8c7(0x15e):return _0x2f5991[_0x5dd8c7(0x183)]||_0x2f5991[_0x5dd8c7(0x1ed)];case _0x5dd8c7(0x1cd):return _0x2f5991[_0x5dd8c7(0x1cb)]||_0x2f5991[_0x5dd8c7(0x19a)];case _0x5dd8c7(0x1e5):return _0x2f5991['nodeId_nsu'];default:case _0x5dd8c7(0x1c8):return _0x2f5991['nodeId'];}},_0x24733f=_0x53d879=>{const _0x208cfb=_0x1048ab;if(_0x53d879[_0x208cfb(0x127)]!=='Good')return _0x208cfb(0x223)+_0x53d879['statusCode'];else{let _0x2453db=[];return _0x2453db[_0x208cfb(0x212)](_0x208cfb(0x179)+_0x53d879['nodeId']),_0x2453db['push'](_0x208cfb(0x170)+_0x53d879[_0x208cfb(0x1ed)]),_0x2453db[_0x208cfb(0x212)](_0x208cfb(0x1f7)+_0x4d7a88[_0x53d879[_0x208cfb(0x11a)]]),_0x53d879[_0x208cfb(0x19a)]&&_0x2453db[_0x208cfb(0x212)](_0x208cfb(0x1a3)+_0x53d879[_0x208cfb(0x19a)]),_0x53d879[_0x208cfb(0x1cb)]&&_0x2453db[_0x208cfb(0x212)](_0x208cfb(0x1f9)+_0x53d879[_0x208cfb(0x1cb)]),_0x53d879['bp_indexed']&&_0x2453db[_0x208cfb(0x212)](_0x208cfb(0x1d9)+_0x53d879[_0x208cfb(0x183)]),_0x2453db[_0x208cfb(0x1e3)]('\x0a');}};function _0x3226f3(_0x276db0){const _0x4c6064=_0x1048ab;if(_0x276db0[_0x4c6064(0x216)](/^nsu=/))return _0x4c6064(0x1e5);if(_0x276db0[_0x4c6064(0x216)](/^(ns=.*;)?(i|b|s|g)=/))return _0x4c6064(0x1c8);if(_0x276db0['match'](/^nsa=/))return'aliasedNodeId';if(_0x276db0[_0x4c6064(0x216)](/^(\/|\.)[0-9]+:/))return _0x4c6064(0x116);if(_0x276db0[_0x4c6064(0x216)](/^(\/|\.).*:/))return _0x4c6064(0x116);}function _0x2b0747(_0x1152b5){const _0x230675=_0x1048ab,_0x42e368=_0x3226f3(_0x1152b5);switch(_0x42e368){case _0x230675(0x1c8):return'n';case _0x230675(0x1cd):return'na';case'nsuNodeID':return'nsu';case _0x230675(0x116):return'b';case'aliasedBrowsePath':return'ab';default:return't';}}function _0x1a9e8c(_0x20dfd9){const _0x18ec78=_0x1048ab;let _0x4b8df8;switch(_0x20dfd9){case'n':_0x4b8df8=_0x18ec78(0x1c8);break;case'na':_0x4b8df8='aliasedNodeId';break;case'nsu':_0x4b8df8=_0x18ec78(0x1e5);break;case'b':_0x4b8df8='browsePath';break;case'ab':_0x4b8df8=_0x18ec78(0x15e);break;}return _0x4b8df8;}function _0x2adc46(_0x2095d9){const _0x16e9df=_0x1048ab;switch(_0x2095d9){case _0x16e9df(0x1c8):return'n';case _0x16e9df(0x1cd):return'na';case _0x16e9df(0x1e5):return _0x16e9df(0x167);case _0x16e9df(0x116):return'b';case _0x16e9df(0x15e):return'ab';default:return't';}}const _0x1217e4=(_0x26692c,_0x569872)=>_0x3a6ede(void 0x0,[_0x26692c,_0x569872],void 0x0,function*({endpointNode:_0x129a9b,endpoint:_0x2c1d89,baseUrl:_0x50ef2d},_0x37bf7b){const _0x3143f9=_0x1048ab,_0x35cbb6=_0x50ef2d+_0x3143f9(0x19f),_0x2a2c1d=_0x35cbb6+_0x3143f9(0x1e6),_0x3e9a25=_0x129a9b['id'],_0x1094f4=RED[_0x3143f9(0x206)]['node'](_0x3e9a25);console['log'](_0x1094f4['namespaceAliases']),_0x1094f4['namespaceAliases'];const _0x45277e=_0x129a9b[_0x3143f9(0x1f2)],_0x5664ba=yield fetch(_0x2a2c1d,{'method':_0x3143f9(0x1f5),'body':JSON[_0x3143f9(0x159)]({'endpointNode':_0x129a9b,'endpoint':_0x2c1d89,'nodeId':_0x37bf7b,'namespaceAliases':_0x45277e}),'headers':{'Content-Type':_0x3143f9(0x137)}}),_0x3a3a53=yield _0x5664ba['json']();return{'json':_0x3a3a53,'data':_0x5664ba};}),_0x4e78ec=(_0xf17936,_0x486589,_0x546de3,_0x4d9a9c)=>_0x3a6ede(void 0x0,[_0xf17936,_0x486589,_0x546de3,_0x4d9a9c],void 0x0,function*({endpointNode:_0x455e7f,endpoint:_0x398c17,baseUrl:_0xa1bccf},_0x4ce863,_0x1d2c37,_0x4aa6a0){const _0xb87116=_0x1048ab,_0x142d6c=_0x1d2c37['val'](),{json:_0x2eb800,data:_0x5109a3}=yield _0x1217e4({'endpointNode':_0x455e7f,'endpoint':_0x398c17,'baseUrl':_0xa1bccf},_0x142d6c),_0x4eac2a=(_0x23734e,_0x192981)=>{const _0x197b4c=_0x9b79;_0x4aa6a0['text'](_0x23734e)['addClass']('sterfive-info')[_0x197b4c(0x1ab)](_0x192981),_0x4aa6a0[_0x197b4c(0x16f)](),setTimeout(()=>{const _0x3704dc=_0x197b4c;_0x4aa6a0[_0x3704dc(0x19b)](_0x192981),_0x4aa6a0[_0x3704dc(0x1c2)]();},0xbb8);};if(_0x5109a3['status']!==0xc8)return _0x4eac2a(_0xb87116(0x20c)+_0x142d6c,_0xb87116(0x1cf)),![];else{if(_0x2eb800[_0xb87116(0x127)][_0xb87116(0x216)](/Good/)){const _0x154487=_0x24733f(_0x2eb800);_0x1d2c37[_0xb87116(0x1b5)]('title',_0x154487);const _0x1b9261=_0x8dbcf4(_0x2eb800,_0x4ce863);return _0x1d2c37['val'](_0x1b9261),_0x1d2c37['trigger'](_0xb87116(0x17a)),_0x4eac2a(_0xb87116(0x12b),'ok'),!![];}else return _0x1d2c37[_0xb87116(0x15b)](''+_0x142d6c),_0x4eac2a(_0x2eb800[_0xb87116(0x127)]+'\x20'+_0x5109a3[_0xb87116(0x215)],_0xb87116(0x1cf)),![];}});function _0x40d565(_0x5ab9a2,_0x4de06f){return _0x3a6ede(this,void 0x0,void 0x0,function*(){const _0x10bedc=_0x9b79,_0x24d4c4=_0x5ab9a2['data'](_0x10bedc(0x1b4)),_0x50696f=yield _0x501921(_0x4de06f,_0x24d4c4,_0x149fea),_0x2947ca=yield _0x501921(_0x4de06f,_0x24d4c4,_0x3bf7be);return{'references':[..._0x50696f[_0x10bedc(0x1ae)],..._0x2947ca[_0x10bedc(0x1ae)]]};});}const _0x366531={'referenceTypeId':_0x2ea8bb(_0x1048ab(0x224)),'includeSubtypes':!![],'browseDirection':_0x5b5c0f[_0x1048ab(0x22a)],'nodeClassMask':_0x4d7a88[_0x1048ab(0x1af)]|_0x4d7a88[_0x1048ab(0x1ee)]|_0x4d7a88['DataType']|_0x4d7a88[_0x1048ab(0x221)],'resultMask':0x3f};function _0x40bd82(_0x557159,_0x4023a8){return _0x3a6ede(this,void 0x0,void 0x0,function*(){const _0x3248ef=_0x9b79,_0x5ae2b3=_0x557159[_0x3248ef(0x1f3)]('value'),_0x5293d0=yield _0x501921(_0x4023a8,_0x5ae2b3,_0x366531);return _0x5293d0;});}const _0x486af8=_0x4fcb3e=>{const _0x34d05c=_0x1048ab;var _0x3f4fe1,_0x34a07c,_0x353eec,_0x50396f;if(!_0x4fcb3e||!_0x4fcb3e[_0x34d05c(0x1c8)]){const _0x54c196=$('<li><i\x20class=\x22fa\x20fa-error\x22\x20style=\x22color:red;\x22></i>no\x20reference\x20!<ul></ul></li>');return _0x54c196;}const _0x35ea30=_0x4fcb3e['nodeId'][_0x34d05c(0x1d3)](),_0x539262=((_0x3f4fe1=_0x4fcb3e[_0x34d05c(0x1fb)])===null||_0x3f4fe1===void 0x0?void 0x0:_0x3f4fe1[_0x34d05c(0x15f)])||((_0x34a07c=_0x4fcb3e[_0x34d05c(0x1a2)])===null||_0x34a07c===void 0x0?void 0x0:_0x34a07c['name'])||_0x4fcb3e[_0x34d05c(0x1c8)]['toString'](),{icon:_0x51f523,color:_0x32a2cb}=_0x528505(_0x4fcb3e),_0x5ec844='('+_0x4fcb3e['nodeId'][_0x34d05c(0x1d3)]()+')\x20'+(((_0x353eec=_0x4fcb3e[_0x34d05c(0x1a2)])===null||_0x353eec===void 0x0?void 0x0:_0x353eec['name'])||((_0x50396f=_0x4fcb3e[_0x34d05c(0x1fb)])===null||_0x50396f===void 0x0?void 0x0:_0x50396f['text'])||''),_0x112529=$(_0x34d05c(0x141)+_0x4fcb3e['nodeId'][_0x34d05c(0x1d3)]()+_0x34d05c(0x188)+_0x5ec844+_0x34d05c(0x130)+_0x51f523+'\x22\x20style=\x22color:'+_0x32a2cb+_0x34d05c(0x1c6)+_0x539262+_0x34d05c(0x163));return _0x112529[_0x34d05c(0x1ab)](_0x34d05c(0x197)),_0x112529['data'](_0x34d05c(0x1b4),_0x35ea30),_0x112529[_0x34d05c(0x1f3)](_0x34d05c(0x1bc),_0x4fcb3e),_0x112529;},_0x1ac137=(_0x30014b,_0x312f3c)=>{const _0x187afe=_0x1048ab;return _0x312f3c[_0x187afe(0x18d)]('li[key=\x22'+_0x30014b+'\x22]');},_0x36c2ca=(_0xbc264b,_0x25c1b9)=>{const _0x19c9d0=_0x1048ab;_0xbc264b[_0x19c9d0(0x187)][_0x19c9d0(0x18d)]('li\x20>\x20.tree-text')[_0x19c9d0(0x19b)](_0x19c9d0(0x12e)),_0x25c1b9[_0x19c9d0(0x18d)]('.tree-text:first')[_0x19c9d0(0x1ab)](_0x19c9d0(0x12e));},_0x823318=(_0x51a188,_0x2ac441,_0x5c5be0)=>_0x3a6ede(void 0x0,void 0x0,void 0x0,function*(){const _0x2416c7=_0x1048ab;let _0x378f63=_0x5c5be0[_0x2416c7(0x226)](':first');_0x2ac441['relativePath']['elements']||[];const _0x3a01ea=_0x2ac441[_0x2416c7(0x193)]||[];if(_0x3a01ea['length']===0x0)return;for(const _0x34bec7 of _0x3a01ea){_0x378f63['hasClass']('expandable')&&(yield _0x5d515d(_0x51a188,_0x378f63));const _0x3339e2=_0x1ac137(_0x34bec7,_0x378f63);if(_0x3339e2[_0x2416c7(0x231)]===0x0)return;_0x378f63=_0x3339e2;}_0x36c2ca(_0x51a188,_0x378f63),_0x2ec0d5(_0x51a188[_0x2416c7(0x1bd)],_0x378f63);});function _0x2ec0d5(_0x2aba37,_0x1937b1){const _0x3b99a2=_0x1048ab,_0x5513eb=_0x1937b1[_0x3b99a2(0x156)]()['top'],_0x3996d3=_0x2aba37[_0x3b99a2(0x135)]();if(_0x3996d3==undefined)return;const _0x1d1d5f=_0x3996d3+_0x5513eb-_0x2aba37['height']()/0x2+_0x1937b1[_0x3b99a2(0x13a)]()/0x2;_0x2aba37[_0x3b99a2(0x147)]({'scrollTop':_0x1d1d5f},0x1f4);}const _0x52c32b=(_0x5d1ce6,_0x10a645)=>_0x3a6ede(void 0x0,void 0x0,void 0x0,function*(){const _0x21a117=_0x1048ab,_0x136fae=_0x5d1ce6['$input']['val'](),_0xd4f80f={'nodeId':_0x136fae,'rootNodeId':_0x10a645[_0x21a117(0x1c8)],'isType':_0x5d1ce6[_0x21a117(0x217)][_0x21a117(0x1b3)]||![]},_0x28c62f=_0x26029f(_0x5d1ce6),_0x4edeb8=yield _0x4f93be(_0x28c62f,_0xd4f80f);if(!_0x4edeb8)return;yield _0x823318(_0x5d1ce6,_0x4edeb8,_0x5d1ce6[_0x21a117(0x187)]);});function _0x297d30(_0x53ff2b,_0x2bcd8b,_0x3d05a4,_0x51bd43){return _0x3a6ede(this,void 0x0,void 0x0,function*(){const _0x2dc457=_0x9b79;if(_0x2bcd8b[_0x2dc457(0x158)](_0x2dc457(0x129))){console[_0x2dc457(0x15a)](_0x2dc457(0x22f));return;}if(_0x2bcd8b[_0x2dc457(0x158)](_0x2dc457(0x185))){console[_0x2dc457(0x15a)](_0x2dc457(0x20a));return;}_0x2bcd8b['addClass'](_0x2dc457(0x185)),_0x2bcd8b[_0x2dc457(0x18f)]('<div\x20class=\x22spinner\x22></div>');try{_0x2bcd8b['children']('ul')['empty']();const {references:_0x585452}=yield _0x3d05a4(_0x2bcd8b,_0x51bd43);_0x585452[_0x2dc457(0x152)]((_0x1e6258,_0x224ac1)=>{const _0x54723f=_0x2dc457;var _0x4d8b40,_0x1f7f4b;return(((_0x4d8b40=_0x1e6258[_0x54723f(0x1a2)])===null||_0x4d8b40===void 0x0?void 0x0:_0x4d8b40[_0x54723f(0x1ef)])||'')['localeCompare'](((_0x1f7f4b=_0x224ac1[_0x54723f(0x1a2)])===null||_0x1f7f4b===void 0x0?void 0x0:_0x1f7f4b[_0x54723f(0x1ef)])||'');});for(const _0x2e384a of _0x585452){if(_0x53ff2b[_0x2dc457(0x217)][_0x2dc457(0x13f)]&&!_0x53ff2b[_0x2dc457(0x217)][_0x2dc457(0x13f)](_0x2e384a))continue;const _0x53f846=_0x486af8(_0x2e384a);_0x2bcd8b[_0x2dc457(0x226)]('ul')[_0x2dc457(0x18f)](_0x53f846);}_0x2bcd8b[_0x2dc457(0x1ab)](_0x2dc457(0x129));}catch(_0x80d94d){_0x2bcd8b['children']('ul')[_0x2dc457(0x18f)](_0x2dc457(0x21b)+_0x80d94d['message']+_0x2dc457(0x178)),console[_0x2dc457(0x15a)](_0x2dc457(0x134),_0x80d94d);}_0x2bcd8b[_0x2dc457(0x18d)](_0x2dc457(0x1db))['remove'](),_0x2bcd8b['removeClass']('loading');});}function _0x26029f(_0x4197ca){const _0x2b91be=_0x1048ab,_0x21c7f9={'baseUrl':_0x4197ca[_0x2b91be(0x217)][_0x2b91be(0x174)],'endpointNode':typeof _0x4197ca[_0x2b91be(0x217)][_0x2b91be(0x11d)]===_0x2b91be(0x1c0)?_0x4197ca[_0x2b91be(0x217)]['endpointNode']():_0x4197ca[_0x2b91be(0x217)]['endpointNode'],'endpoint':typeof _0x4197ca[_0x2b91be(0x217)]['endpoint']==='function'?_0x4197ca[_0x2b91be(0x217)][_0x2b91be(0x199)]():_0x4197ca[_0x2b91be(0x217)][_0x2b91be(0x199)]};return _0x21c7f9;}function _0x5d515d(_0x58eb34,_0x31baab){return _0x3a6ede(this,void 0x0,void 0x0,function*(){const _0x2c9e95=_0x9b79;if(_0x31baab[_0x2c9e95(0x158)](_0x2c9e95(0x129))){_0x31baab[_0x2c9e95(0x19b)]('expandable')[_0x2c9e95(0x1ab)]('expanded'),_0x31baab[_0x2c9e95(0x226)]('ul')[_0x2c9e95(0x1fd)]();return;}const _0x3199a6=_0x26029f(_0x58eb34),_0x489b53=!_0x58eb34[_0x2c9e95(0x217)][_0x2c9e95(0x1b3)]?_0x40d565:_0x40bd82;try{yield _0x297d30(_0x58eb34,_0x31baab,_0x489b53,_0x3199a6),_0x31baab[_0x2c9e95(0x19b)]('expandable')[_0x2c9e95(0x1ab)](_0x2c9e95(0x198));}catch(_0x5e9720){_0x31baab[_0x2c9e95(0x19b)](_0x2c9e95(0x197))[_0x2c9e95(0x1ab)](_0x2c9e95(0x198)),console[_0x2c9e95(0x15a)]('error',_0x5e9720);}});}const _0x249b03={'browseName':{'namespaceIndex':0x0,'name':_0x1048ab(0x218)},'nodeClass':_0x1048ab(0x1d5),'nodeId':_0x1048ab(0x1de),'displayName':{'text':_0x1048ab(0x218)},'typeDefinition':_0x484237},_0x47c981=()=>{const _0x125181=_0x1048ab;$['widget'](_0x125181(0x181),{'options':{'endpointNode':()=>({'endpoint':_0x125181(0x121)}),'endpoint':()=>undefined,'parentNode':()=>_0x249b03,'filter':()=>!![],'baseUrl':'','isTypeRef':![]},'resolveParentNode'(){return _0x3a6ede(this,void 0x0,void 0x0,function*(){const _0x4d8596=_0x9b79,_0x59ff36=this;if(_0x59ff36['__parentNode']==undefined){const _0x59b471=typeof _0x59ff36['options']['parentNode']==='function'?_0x59ff36['options'][_0x4d8596(0x131)][_0x4d8596(0x219)](_0x59ff36):_0x59ff36[_0x4d8596(0x217)]['parentNode'];if(_0x59b471 instanceof Promise){const _0x3b3548=yield _0x59b471;_0x59ff36[_0x4d8596(0x1fa)]=_0x3b3548;}else _0x59ff36[_0x4d8596(0x1fa)]=_0x59b471;}return _0x59ff36[_0x4d8596(0x1fa)]||_0x249b03;});},'reset'(){return _0x3a6ede(this,void 0x0,void 0x0,function*(){const _0x7db30e=_0x9b79,_0x1239aa=this,_0x4426c0=_0x1239aa;_0x4426c0[_0x7db30e(0x1fa)]=undefined,_0x1239aa[_0x7db30e(0x187)][_0x7db30e(0x227)]();const _0x300be0=yield this[_0x7db30e(0x22c)](),_0x3a59da=_0x486af8(_0x300be0);_0x1239aa[_0x7db30e(0x187)][_0x7db30e(0x18f)](_0x3a59da),_0x1239aa['currentParent']=_0x300be0;});},'verify'(_0xfa4fc7){const _0xcf4701=_0x125181,_0x1e7a89=this,_0x11d9c4=_0x26029f(_0x1e7a89);_0x4e78ec(_0x11d9c4,_0xfa4fc7,_0x1e7a89[_0xcf4701(0x19d)],_0x1e7a89[_0xcf4701(0x16d)])[_0xcf4701(0x1d0)](_0x356f2f=>{const _0x333e73=_0xcf4701;!_0x356f2f?_0x1e7a89['$combo'][_0x333e73(0x1ab)]('sterfive-input-error'):_0x1e7a89[_0x333e73(0x1d7)][_0x333e73(0x19b)](_0x333e73(0x1ff));});},'_hideMenu'(_0x482839){const _0x161293=_0x125181,_0xa4f13=this;$(document)[_0x161293(0x176)](_0x161293(0x21a)),_0x482839['hide'](),_0x482839[_0x161293(0x211)]({'height':_0x161293(0x1a1)});if(_0x482839[_0x161293(0x14f)][_0x161293(0x17b)]){var _0x22184e=[];_0x482839['find'](_0x161293(0x189))['each'](function(){const _0x508a01=_0x161293;$(this)[_0x508a01(0x207)](_0x508a01(0x151))&&_0x22184e[_0x508a01(0x212)]($(this)['data'](_0x508a01(0x1b4)));}),_0x482839[_0x161293(0x155)](_0x22184e);}_0xa4f13[_0x161293(0x13b)]['is'](_0x161293(0x1b8))?_0xa4f13[_0x161293(0x19d)]['trigger']('focus'):_0xa4f13['$selectTrigger'][_0x161293(0x14e)](_0x161293(0x1dc));},'_createMenu'(_0x106c31,_0x3826f8,_0x5cd173){const _0x539bb6=_0x125181;var _0x305f5c=this;const _0x56aa00=$(_0x539bb6(0x214))[_0x539bb6(0x1ab)]('sterfive-typedInput-options\x20sterfive-online-menu');return _0x56aa00['opts']=_0x3826f8,_0x56aa00[_0x539bb6(0x155)]=_0x5cd173,_0x106c31['forEach'](_0xe3259b=>{const _0x28cbb3=_0x539bb6;typeof _0xe3259b===_0x28cbb3(0x230)&&(_0xe3259b={'value':_0xe3259b,'label':_0xe3259b});var _0x927bb5=$(_0x28cbb3(0x146))[_0x28cbb3(0x1b5)](_0x28cbb3(0x1b4),_0xe3259b['value'])[_0x28cbb3(0x124)](_0x56aa00);_0xe3259b[_0x28cbb3(0x1ac)]&&_0x927bb5['text'](_0xe3259b[_0x28cbb3(0x1ac)]);_0xe3259b[_0x28cbb3(0x1a7)]&&_0x927bb5[_0x28cbb3(0x207)](_0x28cbb3(0x1a7),_0xe3259b[_0x28cbb3(0x1a7)]);if(_0xe3259b[_0x28cbb3(0x22e)]){if(_0xe3259b['icon'][_0x28cbb3(0x1e7)]('<')===0x0)$(_0xe3259b[_0x28cbb3(0x22e)])[_0x28cbb3(0x13c)](_0x927bb5);else _0xe3259b[_0x28cbb3(0x22e)][_0x28cbb3(0x1e7)]('/')!==-0x1?$(_0x28cbb3(0x204),{'class':_0x28cbb3(0x1f6),'style':_0x28cbb3(0x202)+_0xe3259b[_0x28cbb3(0x22e)]+');\x20-webkit-mask-image:\x20url('+_0xe3259b['icon']+');'})[_0x28cbb3(0x13c)](_0x927bb5):$('<i>',{'class':_0x28cbb3(0x1ec)+_0xe3259b[_0x28cbb3(0x22e)]})['prependTo'](_0x927bb5);}else _0x927bb5[_0x28cbb3(0x211)]({'paddingLeft':_0x28cbb3(0x200)});!_0xe3259b['icon']&&!_0xe3259b['label']&&_0x927bb5['text'](_0xe3259b[_0x28cbb3(0x1b4)]);var _0x52e8d1;_0x3826f8[_0x28cbb3(0x17b)]&&(_0x52e8d1=$(_0x28cbb3(0x16c))['css'](_0x28cbb3(0x18b),_0x28cbb3(0x229))[_0x28cbb3(0x1f3)](_0x28cbb3(0x1b4),_0xe3259b[_0x28cbb3(0x1b4)])[_0x28cbb3(0x13c)](_0x927bb5)['on']('mousedown',function(_0x1d5f10){_0x1d5f10['preventDefault']();})),_0x927bb5['on'](_0x28cbb3(0x1b7),function(_0x12ff03){const _0x32fce3=_0x28cbb3;_0x12ff03['preventDefault'](),_0x12ff03[_0x32fce3(0x177)](),!_0x3826f8[_0x32fce3(0x17b)]?(_0x5cd173(_0xe3259b['value']),_0x305f5c['_hideMenu'](_0x56aa00)):_0x52e8d1[_0x32fce3(0x207)](_0x32fce3(0x151),!_0x52e8d1[_0x32fce3(0x207)](_0x32fce3(0x151)));});}),_0x56aa00[_0x539bb6(0x211)]({'display':_0x539bb6(0x229)}),_0x56aa00['on'](_0x539bb6(0x222),function(_0x5cba12){const _0x42698d=_0x539bb6;if(_0x5cba12[_0x42698d(0x166)]===0x28)_0x5cba12['preventDefault'](),$(this)['children'](_0x42698d(0x1c7))[_0x42698d(0x139)]()[_0x42698d(0x14e)](_0x42698d(0x1dc));else{if(_0x5cba12['keyCode']===0x26)_0x5cba12[_0x42698d(0x1cc)](),$(this)[_0x42698d(0x226)](_0x42698d(0x1c7))[_0x42698d(0x11c)]()['trigger'](_0x42698d(0x1dc));else _0x5cba12[_0x42698d(0x166)]===0x1b&&(_0x5cba12[_0x42698d(0x1cc)](),_0x305f5c[_0x42698d(0x1e1)](_0x56aa00));}_0x5cba12[_0x42698d(0x177)]();}),_0x56aa00;},'disarmClick':![],'_showMenu'(_0x102fb6,_0x20b29c){const _0x3d372c=_0x125181;if(this[_0x3d372c(0x1eb)]){this[_0x3d372c(0x1eb)]=![];return;}var _0x591cf3=this,_0x2404f6=_0x20b29c[_0x3d372c(0x1be)](),_0x59cdee=_0x20b29c[_0x3d372c(0x13a)](),_0x11a3cf=_0x102fb6[_0x3d372c(0x13a)](),_0x13aa00=_0x59cdee+_0x2404f6[_0x3d372c(0x1ba)];_0x13aa00+_0x11a3cf-$(document)[_0x3d372c(0x135)]()>$(window)[_0x3d372c(0x13a)]()&&(_0x13aa00-=_0x13aa00+_0x11a3cf-$(window)[_0x3d372c(0x13a)]()+0x5),_0x13aa00<0x0&&(_0x102fb6[_0x3d372c(0x13a)](_0x11a3cf+_0x13aa00),_0x13aa00=0x0),_0x102fb6['css']({'top':_0x13aa00+'px','left':_0x2404f6[_0x3d372c(0x209)]+'px'}),_0x102fb6[_0x3d372c(0x1a5)](0x64),this['_delay'](function(){const _0x2d8f56=_0x3d372c;_0x591cf3[_0x2d8f56(0x1f4)][_0x2d8f56(0x1ab)](_0x2d8f56(0x1f8)),$(document)['on'](_0x2d8f56(0x21a),function(_0x35cb6f){const _0x35d193=_0x2d8f56;!$(_0x35cb6f[_0x35d193(0x191)])[_0x35d193(0x19e)](_0x102fb6)[_0x35d193(0x231)]&&_0x591cf3[_0x35d193(0x1e1)](_0x102fb6),$(_0x35cb6f[_0x35d193(0x191)])[_0x35d193(0x19e)](_0x20b29c)['length']&&(_0x591cf3['disarmClick']=!![],_0x35cb6f[_0x35d193(0x1cc)]());});});},'_showTypeMenu'(){const _0x2405e7=_0x125181,_0x40bb48=this;this['_showMenu'](_0x40bb48[_0x2405e7(0x14c)],_0x40bb48[_0x2405e7(0x1d7)]),_0x40bb48[_0x2405e7(0x1bd)][_0x2405e7(0x1c2)]();const _0x51bcc5=_0x40bb48['selectedMenuItem'];var _0x85ee99=_0x40bb48[_0x2405e7(0x14c)][_0x2405e7(0x18d)](_0x2405e7(0x1aa)+_0x51bcc5+'\x27');setTimeout(function(){const _0x3ea638=_0x2405e7;_0x85ee99[_0x3ea638(0x14e)]('focus');},0x78);},'_initMenu'(){const _0x1092ef=_0x125181,_0x1cde4e=this;_0x1cde4e[_0x1092ef(0x133)]['attr'](_0x1092ef(0x196),-0x1),_0x1cde4e[_0x1092ef(0x133)]['on'](_0x1092ef(0x1c1),function(_0x5ef929){const _0x14da2c=_0x1092ef;_0x5ef929[_0x14da2c(0x1cc)]();});_0x1cde4e['$menu']&&_0x1cde4e[_0x1092ef(0x14c)][_0x1092ef(0x1b1)]();const _0x10ebcd=[{'label':_0x1092ef(0x15f),'value':'t','title':'Value\x20is\x20not\x20verified','icon':_0x1092ef(0x154)},{'label':'msg.','value':'msg','title':_0x1092ef(0x115),'icon':'<i\x20class=\x22fa\x20fa-envelope-open-o\x22/>'},{'label':_0x1092ef(0x1df),'value':'n','icon':_0x1092ef(0x14d)},{'label':_0x1092ef(0x1fc),'value':'na','icon':_0x1092ef(0x15c)},{'label':_0x1092ef(0x171),'value':_0x1092ef(0x167),'icon':'<i\x20class=\x22fa\x20fa-id-card\x22/> \x20'},{'label':_0x1092ef(0x1b2),'value':'b','icon':'<i\x20class=\x22fa\x20fa-tag\x22/><i\x20class=\x22fa\x20fa-fighter-jet\x22/> '},{'label':_0x1092ef(0x161),'value':'ab','icon':_0x1092ef(0x184)}],_0x115831=_0x2b0747(_0x1cde4e[_0x1092ef(0x19d)]['val']()),_0x331a44=_0x10ebcd[_0x1092ef(0x18d)](_0x4db08a=>_0x4db08a[_0x1092ef(0x1b4)]===_0x115831);_0x1cde4e[_0x1092ef(0x117)][_0x1092ef(0x227)]()[_0x1092ef(0x18f)](_0x1092ef(0x142)+((_0x331a44===null||_0x331a44===void 0x0?void 0x0:_0x331a44['title'])||'')+_0x1092ef(0x123)+((_0x331a44===null||_0x331a44===void 0x0?void 0x0:_0x331a44[_0x1092ef(0x22e)])||'')+'</span>'),_0x1cde4e[_0x1092ef(0x1d2)]=_0x115831;const _0x45938e=this;_0x1cde4e['$menu']=this[_0x1092ef(0x194)](_0x10ebcd,{},_0x31dbc1=>{const _0x196415=_0x1092ef,_0x3b4262=_0x1a9e8c(_0x31dbc1);_0x3b4262&&_0x45938e[_0x196415(0x12d)](_0x3b4262);const _0x17ea31=_0x10ebcd[_0x196415(0x18d)](_0x378657=>_0x378657[_0x196415(0x1b4)]===_0x31dbc1);_0x1cde4e[_0x196415(0x1d2)]=_0x31dbc1,_0x1cde4e[_0x196415(0x117)][_0x196415(0x227)]()['append'](_0x196415(0x142)+((_0x17ea31===null||_0x17ea31===void 0x0?void 0x0:_0x17ea31[_0x196415(0x1a7)])||'')+'> \x20'+((_0x17ea31===null||_0x17ea31===void 0x0?void 0x0:_0x17ea31['icon'])||'')+_0x196415(0x120));}),_0x1cde4e['$menu'][_0x1092ef(0x124)](document[_0x1092ef(0x15d)]),_0x1cde4e['$menu'][_0x1092ef(0x1c2)](),_0x1cde4e[_0x1092ef(0x133)][_0x1092ef(0x16f)]();},'mode'(){const _0x55e804=this;return _0x1a9e8c(_0x55e804['selectedMenuItem']);},'setMode'(_0x170a79){const _0x20c2e9=_0x125181,_0x59cee1=this,_0x2bb535=_0x2adc46(_0x170a79);_0x59cee1[_0x20c2e9(0x1d2)]=_0x2bb535;},'_create'(){const _0x7c8f7f=_0x125181,_0x93001c=this;_0x93001c['$input']=this[_0x7c8f7f(0x220)],_0x93001c[_0x7c8f7f(0x19d)][_0x7c8f7f(0x211)](_0x7c8f7f(0x16b),'none'),_0x93001c[_0x7c8f7f(0x13b)]=_0x93001c[_0x7c8f7f(0x19d)][_0x7c8f7f(0x11e)](_0x7c8f7f(0x214))['parent']()[_0x7c8f7f(0x1ab)](_0x7c8f7f(0x125)),_0x93001c['$combo']=$(_0x7c8f7f(0x1a4)),_0x93001c['$combo'][_0x7c8f7f(0x1ab)](_0x7c8f7f(0x213)),_0x93001c['$input'][_0x7c8f7f(0x126)](_0x93001c[_0x7c8f7f(0x1d7)]),_0x93001c[_0x7c8f7f(0x180)]=$('<div/>')[_0x7c8f7f(0x1ab)](_0x7c8f7f(0x17e)),_0x93001c[_0x7c8f7f(0x1d7)]['append'](_0x93001c[_0x7c8f7f(0x180)]),_0x93001c[_0x7c8f7f(0x180)]['append'](_0x93001c[_0x7c8f7f(0x19d)]),_0x93001c[_0x7c8f7f(0x21e)]=$('<button\x20title=\x22open\x20OPCUA\x20AddressSpace\x20Browser\x22><i\x20class=\x22fa\x20fa-sitemap\x22></i></button>'),_0x93001c[_0x7c8f7f(0x19d)][_0x7c8f7f(0x19c)](_0x93001c[_0x7c8f7f(0x21e)]),_0x93001c['$toggleTreeBtn']['on'](_0x7c8f7f(0x1b7),function(){return _0x3a6ede(this,void 0x0,void 0x0,function*(){const _0xb6e14=_0x9b79;var _0x223fb0;let _0x23bf68=![],_0x4330aa;!_0x93001c[_0xb6e14(0x1bd)]['is'](_0xb6e14(0x1b8))&&(_0x93001c[_0xb6e14(0x16d)][_0xb6e14(0x1c2)](),_0x4330aa=yield _0x93001c[_0xb6e14(0x22c)](),(_0x4330aa!==_0x93001c[_0xb6e14(0x1a6)]||((_0x223fb0=_0x93001c[_0xb6e14(0x1a6)])===null||_0x223fb0===void 0x0?void 0x0:_0x223fb0[_0xb6e14(0x1c8)])!==_0x4330aa[_0xb6e14(0x1c8)])&&(yield _0x93001c[_0xb6e14(0x11f)]()),_0x23bf68=!![]),_0x93001c[_0xb6e14(0x1bd)][_0xb6e14(0x1fd)](),_0x23bf68&&(yield _0x52c32b(_0x93001c,_0x4330aa));});}),_0x93001c[_0x7c8f7f(0x1a9)]=$(_0x7c8f7f(0x22b)),_0x93001c[_0x7c8f7f(0x19d)]['after'](_0x93001c[_0x7c8f7f(0x1a9)]),_0x93001c[_0x7c8f7f(0x1a9)]['on']('click',()=>{const _0x2f5ab1=_0x7c8f7f,_0x57bfc3=_0x93001c[_0x2f5ab1(0x17f)]();if(!_0x57bfc3)return;this['verify'](_0x57bfc3);});const _0x427b33=_0x574b8e=>_0x3a6ede(this,void 0x0,void 0x0,function*(){const _0xfa512a=_0x7c8f7f,_0x39d79d=this;let _0x37841c=_0x39d79d[_0xfa512a(0x17f)]();if(!_0x37841c)return;const _0x1bab75=_0x26029f(_0x39d79d),{data:_0x47a293,json:_0x2c5c16}=yield _0x1217e4(_0x1bab75,_0x574b8e);if(_0x47a293[_0xfa512a(0x1fe)]!==0xc8)return;if(_0x2c5c16['statusCode']['match'](/Good/)){const _0x527f71=_0x8dbcf4(_0x2c5c16,_0x37841c);_0x39d79d['$input'][_0xfa512a(0x15b)](_0x527f71),_0x39d79d[_0xfa512a(0x19d)]['trigger']('change');}});{_0x93001c[_0x7c8f7f(0x1f4)]=$(_0x7c8f7f(0x214)),_0x93001c['$input']['before'](_0x93001c[_0x7c8f7f(0x1f4)]),_0x93001c[_0x7c8f7f(0x133)]=$(_0x7c8f7f(0x12a))[_0x7c8f7f(0x13c)](_0x93001c['$uiSelect']),$(_0x7c8f7f(0x1a0))[_0x7c8f7f(0x1fd)](!![])[_0x7c8f7f(0x124)](_0x93001c[_0x7c8f7f(0x133)]),_0x93001c[_0x7c8f7f(0x133)]['on'](_0x7c8f7f(0x1b7),function(_0x59fce2){const _0x5d25c1=_0x7c8f7f;_0x59fce2['preventDefault'](),_0x59fce2[_0x5d25c1(0x177)](),_0x93001c['_showTypeMenu']();}),_0x93001c[_0x7c8f7f(0x133)]['on'](_0x7c8f7f(0x222),function(_0x2fd297){const _0x3db881=_0x7c8f7f;_0x2fd297[_0x3db881(0x166)]===0x28&&_0x93001c[_0x3db881(0x205)](),_0x2fd297[_0x3db881(0x177)]();})['on'](_0x7c8f7f(0x1dc),function(){const _0x5d6ce6=_0x7c8f7f;_0x93001c[_0x5d6ce6(0x1f4)][_0x5d6ce6(0x1ab)]('red-ui-typedInput-focus');})['on'](_0x7c8f7f(0x1d8),function(){const _0x411e3b=_0x7c8f7f;_0x93001c[_0x411e3b(0x1f4)][_0x411e3b(0x19b)](_0x411e3b(0x1f8));}),_0x93001c[_0x7c8f7f(0x117)]=$('<span\x20class=\x22red-ui-typedInput-type-label\x22></span>')[_0x7c8f7f(0x124)](_0x93001c[_0x7c8f7f(0x133)]);}this[_0x7c8f7f(0x201)]();!_0x93001c[_0x7c8f7f(0x19d)][_0x7c8f7f(0x1b5)](_0x7c8f7f(0x12f))&&_0x93001c['$input'][_0x7c8f7f(0x1b5)]('placeholder',_0x7c8f7f(0x1e2));_0x93001c['$info']=$(_0x7c8f7f(0x1c9)),_0x93001c['$info'][_0x7c8f7f(0x1c2)](),_0x93001c['$combo'][_0x7c8f7f(0x18f)](_0x93001c[_0x7c8f7f(0x16d)]),_0x93001c[_0x7c8f7f(0x1bd)]=$(_0x7c8f7f(0x1a4))[_0x7c8f7f(0x1ab)]('sterfive-dropdown')[_0x7c8f7f(0x1c2)]()[_0x7c8f7f(0x124)](_0x93001c[_0x7c8f7f(0x1d7)]),_0x93001c['$tree']=$('<ul\x20class=\x22sterfive-tree\x22></ul>')[_0x7c8f7f(0x124)](_0x93001c[_0x7c8f7f(0x1bd)]),this[_0x7c8f7f(0x11f)]();const _0x153fe3=(_0xe5084e,_0x28816e)=>{const _0x1b4f4b=_0x7c8f7f,_0x32ca1a=0x14,_0x32a872=0x14,_0x52736b=_0xe5084e[_0x1b4f4b(0x1be)](),_0x5c455e=_0x28816e;if(_0x5c455e['pageX']>=_0x52736b[_0x1b4f4b(0x209)]&&_0x5c455e[_0x1b4f4b(0x122)]<=_0x52736b['left']+_0x32ca1a&&_0x5c455e[_0x1b4f4b(0x136)]>=_0x52736b[_0x1b4f4b(0x1ba)]&&_0x5c455e[_0x1b4f4b(0x136)]<=_0x52736b[_0x1b4f4b(0x1ba)]+_0x32a872)return!![];return![];},_0x144f1c=_0x3446a8=>_0x3a6ede(this,void 0x0,void 0x0,function*(){const _0x40f43c=_0x7c8f7f;if(_0x3446a8[_0x40f43c(0x158)](_0x40f43c(0x197)))_0x5d515d(_0x93001c,_0x3446a8);else{if(_0x3446a8['hasClass'](_0x40f43c(0x198)))_0x3446a8[_0x40f43c(0x226)]('ul')[_0x40f43c(0x1fd)](),_0x3446a8[_0x40f43c(0x1c5)](_0x40f43c(0x173));else{if(_0x3446a8['children']('ul')['children']()[_0x40f43c(0x231)]>0x0)_0x3446a8[_0x40f43c(0x226)]('ul')[_0x40f43c(0x1fd)](),_0x3446a8[_0x40f43c(0x1c5)](_0x40f43c(0x173));else;}}});_0x93001c['$tree']['on'](_0x7c8f7f(0x1ad),'li',function(_0x383def){const _0x45cc1e=_0x7c8f7f;var _0x25b11c,_0x2314ca;_0x383def[_0x45cc1e(0x177)]();let _0x30f7d7=$(this);if(_0x153fe3(_0x30f7d7,_0x383def))_0x144f1c(_0x30f7d7);else{const _0x10c67b=_0x30f7d7[_0x45cc1e(0x1f3)](_0x45cc1e(0x1b4)),_0x114ae8=_0x30f7d7[_0x45cc1e(0x1f3)](_0x45cc1e(0x1bc));if(_0x93001c[_0x45cc1e(0x217)]['isSelectable']&&!_0x93001c['options'][_0x45cc1e(0x144)](_0x114ae8))return;_0x93001c[_0x45cc1e(0x19d)]['data'](_0x45cc1e(0x1bc),_0x114ae8),((_0x25b11c=_0x114ae8[_0x45cc1e(0x1fb)])===null||_0x25b11c===void 0x0?void 0x0:_0x25b11c['text'])||((_0x2314ca=_0x114ae8[_0x45cc1e(0x1a2)])===null||_0x2314ca===void 0x0?void 0x0:_0x2314ca[_0x45cc1e(0x1ef)])||_0x114ae8['nodeId'][_0x45cc1e(0x1d3)]();let _0x302ac2=_0x93001c['mode']();!_0x302ac2&&(_0x302ac2='nodeId',_0x93001c[_0x45cc1e(0x20b)](_0x302ac2)),_0x427b33(_0x10c67b)[_0x45cc1e(0x1d0)](()=>{const _0x37bce0=_0x45cc1e;_0x93001c['$dropdown'][_0x37bce0(0x1c2)]();})[_0x45cc1e(0x1e9)](_0x24fd94=>{const _0xb4a050=_0x45cc1e;_0x93001c[_0xb4a050(0x1bd)][_0xb4a050(0x1c2)]();});}}),_0x93001c[_0x7c8f7f(0x187)]['on'](_0x7c8f7f(0x1b7),'li',function(_0x4e9fa7){const _0x2b7a33=_0x7c8f7f;_0x4e9fa7[_0x2b7a33(0x177)]();let _0x17430d=$(this);_0x153fe3(_0x17430d,_0x4e9fa7)&&_0x144f1c(_0x17430d),_0x36c2ca(_0x93001c,_0x17430d);}),$(document)['on'](_0x7c8f7f(0x1b7),function(_0x428eb6){const _0x7f4b98=_0x7c8f7f;!$(_0x428eb6[_0x7f4b98(0x191)])[_0x7f4b98(0x19e)](_0x93001c[_0x7f4b98(0x1d7)])['length']&&_0x93001c[_0x7f4b98(0x1bd)][_0x7f4b98(0x1c2)]();});}});},_0x1ce8e5=()=>{const _0x5c8d08=_0x1048ab,_0x389bb8=$('#node-input-endpoint'),_0x260145=_0x389bb8[_0x5c8d08(0x15b)](),_0x4ba7e9=RED['nodes'][_0x5c8d08(0x164)](_0x260145);if(!_0x4ba7e9)return undefined;const {endpoint:_0xb2ee02,securityMode:_0x5403f5,securityPolicy:_0x535a37,userIdentityType:_0xb57a8b,credentials:_0x245507,namespaceAliases:_0x468629}=_0x4ba7e9,_0x3f4fcf={'endpoint':_0xb2ee02,'securityMode':_0x5403f5,'securityPolicy':_0x535a37,'userIdentityType':_0xb57a8b,'credentials':_0x245507,'namespaceAliases':_0x468629};return _0x3f4fcf;},_0x17a601=()=>{const _0x1d0ae6=_0x1048ab,_0x2b8a2c=$(_0x1d0ae6(0x1ea)),_0x4fa8b3=_0x2b8a2c[_0x1d0ae6(0x15b)](),_0x281750=_0x1ce8e5();if(!_0x281750)return undefined;const _0x15c035=_0x281750[_0x1d0ae6(0x1f2)];return Object['assign']({'namespaceAliases':_0x15c035,'id':_0x4fa8b3},_0x281750);},_0x2d70eb=()=>{return{'endpointNode':_0x17a601};},_0x39c7ba=()=>{const _0x380b2c=_0x1048ab,_0x540db7=$(_0x380b2c(0x11b));if(_0x540db7[_0x380b2c(0x231)]){const _0x10c7cc=$(_0x380b2c(0x1b6),{'src':_0x380b2c(0x1bb),'scrolling':'no','style':_0x380b2c(0x1a8),'allowtransparency':_0x380b2c(0x18a),'width':'180px','height':_0x380b2c(0x1e0)});_0x540db7['append'](_0x10c7cc),_0x10c7cc[_0x380b2c(0x211)]({'position':_0x380b2c(0x1f1),'right':_0x380b2c(0x160),'bottom':'16px'});}};RED['nodes']['registerType'](_0x1048ab(0x1c4),{'category':_0x1048ab(0x140),'color':_0x1048ab(0x16a),'align':'right','icon':'../../icons/opcuanodeLogo.png','paletteLabel':_0x1048ab(0x13e),'defaults':{'inputs':{'value':0x1},'output':{'value':0x4},'name':{'value':''},'endpoint':{'value':'','required':!![],'type':'OpcUa-Endpoint2'},'attributeId':{'value':_0x1048ab(0x118),'required':!![]},'nodeId':{'value':'','required':![]}},'inputs':0x1,'outputs':0x1,'label'(){const _0x3f92e5=_0x1048ab;return this[_0x3f92e5(0x1ef)]||_0x3f92e5(0x195);},'labelStyle'(){const _0x111464=_0x1048ab;return this[_0x111464(0x1ef)]?_0x111464(0x21c):'';},'oneditprepare'(){const _0xbe8c40=_0x1048ab,_0x4d8558=this;_0x47c981(),_0x39c7ba(),_0x4d8558['inputs']=0x1;const _0x4927f8=$(_0xbe8c40(0x119));_0x4927f8['nodeBrowser'](Object[_0xbe8c40(0x17d)](Object[_0xbe8c40(0x17d)]({},_0x2d70eb()),{'isSelectable'(_0x27d3ec){const _0x5cef23=_0xbe8c40;return _0x27d3ec[_0x5cef23(0x11a)]===_0x5cef23(0x16e);}}));},'oneditsave'(){}});}()));
|
9
8
|
</script>
|
10
9
|
<script type="text/x-red" data-template-name="OpcUa-Client2-Write">
|
11
10
|
<h3>OpcUa Write</h3>
|