@opcua/for-node-red 2.8.3 → 2.9.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/all.js +1 -1
- package/package.json +2 -1
- package/source/OpcUa-Client2-Browse/OpcUa-Client2-Browse.html +2 -2
- package/source/OpcUa-Client2-Call/OpcUa-Client2-Call.html +2 -2
- package/source/OpcUa-Client2-Explore/OpcUa-Client2-Explore.html +2 -2
- package/source/OpcUa-Client2-ExtensionObject/OpcUa-Client2-ExtensionObject.html +2 -2
- package/source/OpcUa-Client2-Monitor/OpcUa-Client2-Monitor.html +2 -2
- package/source/OpcUa-Client2-MonitorEvent/OpcUa-Client2-MonitorEvent.html +2 -2
- package/source/OpcUa-Client2-Read/OpcUa-Client2-Read.html +2 -2
- package/source/OpcUa-Client2-Write/OpcUa-Client2-Write.html +2 -2
- package/source/OpcUa-Endpoint2/OpcUa-Endpoint2.html +2 -2
@@ -4,8 +4,8 @@
|
|
4
4
|
</style>
|
5
5
|
|
6
6
|
<script type="text/javascript">
|
7
|
-
function _0x4959(_0x16afac,_0x2dc827){const _0xee54fa=_0xee54();return _0x4959=function(_0x495994,_0x39f1b1){_0x495994=_0x495994-0x188;let _0x1b53aa=_0xee54fa[_0x495994];return _0x1b53aa;},_0x4959(_0x16afac,_0x2dc827);}function _0xee54(){const _0x38fa6f=['function','469242fUCcmk','licenceInfo','opcua\x20endpoint','-failure','change','nodes','length',':checked','style','empty','label','Subscribe','https://js.stripe.com/v3/pricing-table.js','Freeware\x20licence','#toggleAdvancedSection','247112KCCPYI','name','script','.section-userIdentityType-UserName','invalid\x20securityMode\x20','644037ijDhiV','config','<br>','#node-config-input-endpoint','#section-TransportSettings','find','Anonymous','.input-name','.section-securityPolicy','Connection','#node-input-maxMessageSize','Sign','invalid\x20endpoint','createElement','licence-widget-icon','application/json','internal\x20error\x20','subscriptions','<button/>','Default\x20Subscription','tabs','priority','css','\x20-\x20','licence-widget','5HAIvkd','#node-config-input-password','None','click','.input-maxNotificationsPerPublish','then','value','Trial\x20licence','hide','push','.subscription-id','#test-connection','TRIAL','#checkCertificate','subscribe-button','password','#node-config-input-securityPolicy','assign','fa\x20fa-check-circle','typedInput','FAILED','.input-publishingEnabled','Basic256Sha256','invalid\x20userIdentityType\x20','SignAndEncrypt','class','async','opc.tcp://opcuademo.sterfive.com:26543/UA/SampleServer','throw','132186ENtHxa','html','margin-top:\x2020px;','185092XMFFRS','catch','checked','#node-input-useTransport','PROFESSIONAL','Fast\x20Subscription','#node-config-input-name','.input-requestedMaxKeepAliveCount','removeAttr','#node-config-input-userName','userIdentityType','#node-config-input-useTransport','addItem','<a\x20href=\x22mailto:support@sterfive.com\x22\x20subject=\x22@opcua/for-node-red\x20support\x20request\x22>mailto:support@sterfive.com</a>','prctbl_1OJt49BCNccbzsVzkaANOgFL','src','#licenceWidget','\x20for\x20more\x20information.','resize','9XCqamP','#node-config-input-pkiName','</p>','Your\x20license\x20is\x20currently\x20invalid.','UserName','/opcua-endpoint2/test-connection','baseUrl','licenceType','pricing-table-id','\x20to\x20acquire\x20a\x20license.','addTab','.input-isDefault','sterfive.licenceWidget','append','element','licenceWidget','height:\x20100%;max-height:\x20100%;','#node-input-maxChunkCount','/opcua-endpoint2/client_certificate.json','.template','json','isArray','done','registerType','#node-config-input-userIdentityType','#node-config-input-securityMode','/licenceInfo','create','#section-Advanced','each','err','This\x20is\x20a\x20freeware\x20licence,\x20and\x20have\x20some\x20limitations.\x0a','prop','result','val','260px','width','apply','connection','toISOString','securityMode','7IBtQbO','.input-priority','stringify','<span>','.red-ui-editableList-item-remove','endpoint','log','#node-config-input-userPrivatekey','pk_live_51HsE1sBCNccbzsVzt7zaq2uv20pkryWllAzvZgZd5AhwFI9A3qBIeOJvJwQF08lDoLpFqLjwmyA79wnPnYLsvKjt009f00VpCW','btn\x20btn-primary','items','type','map','<stripe-pricing-table/>','/opcua-endpoint2','extra','daysLeft','message','endpoint-tab-subscriptions','Slow\x20Subscription','Your\x20licence\x20is\x20valid.','join','150px','endpoint-tab-connection','FREEWARE','isDefault','<i>','status','editableList','next','clone','addClass','#node-input-sendBufferSize','POST','licence-widget-details','Please\x20contact\x20','opc.tcp:','#subscriptions-container','publishable-key','show','licence-widget-msg','suppressed','removeClass','128957FWYNIS','2823860dOIXMU','<p>','onPremiseServerHost','#node-config-endpoint-tabs-content','match','#node-input-certificate','licence-widget-','AUTHORIZED','requestedLifetimeCount','parameters','text','attr','fetching\x20failed\x20with\x20error','requestedMaxKeepAliveCount','split','.input-requestedLifetimeCount'];_0xee54=function(){return _0x38fa6f;};return _0xee54();}(function(_0x8ef8de,_0x2d7048){const _0x265846=_0x4959,_0x5e8569=_0x8ef8de();while(!![]){try{const _0x115339=-parseInt(_0x265846(0x1f6))/0x1+-parseInt(_0x265846(0x208))/0x2+parseInt(_0x265846(0x21c))/0x3+parseInt(_0x265846(0x18f))/0x4*(parseInt(_0x265846(0x235))/0x5)+-parseInt(_0x265846(0x18c))/0x6*(parseInt(_0x265846(0x1cb))/0x7)+-parseInt(_0x265846(0x217))/0x8*(parseInt(_0x265846(0x1a2))/0x9)+parseInt(_0x265846(0x1f7))/0xa;if(_0x115339===_0x2d7048)break;else _0x5e8569['push'](_0x5e8569['shift']());}catch(_0x8487ca){_0x5e8569['push'](_0x5e8569['shift']());}}}(_0xee54,0x1ef78),(function(){'use strict';const _0x5ad3c1=_0x4959;function _0x422186(_0x3106e9,_0x51fe6a,_0x5ab109,_0x62eced){function _0x59a243(_0x56ea8c){return _0x56ea8c instanceof _0x5ab109?_0x56ea8c:new _0x5ab109(function(_0x2420cf){_0x2420cf(_0x56ea8c);});}return new(_0x5ab109||(_0x5ab109=Promise))(function(_0xaf3e23,_0x172cdd){const _0x250801=_0x4959;function _0x17a1b0(_0x559836){const _0x5608e3=_0x4959;try{_0x347d96(_0x62eced[_0x5608e3(0x1e8)](_0x559836));}catch(_0x1103af){_0x172cdd(_0x1103af);}}function _0x5d3bf4(_0x4946c5){const _0x112cb5=_0x4959;try{_0x347d96(_0x62eced[_0x112cb5(0x18b)](_0x4946c5));}catch(_0x595f05){_0x172cdd(_0x595f05);}}function _0x347d96(_0x50a6db){const _0x2b30b1=_0x4959;_0x50a6db[_0x2b30b1(0x1b8)]?_0xaf3e23(_0x50a6db['value']):_0x59a243(_0x50a6db[_0x2b30b1(0x23b)])['then'](_0x17a1b0,_0x5d3bf4);}_0x347d96((_0x62eced=_0x62eced[_0x250801(0x1c7)](_0x3106e9,_0x51fe6a||[]))[_0x250801(0x1e8)]());});}typeof SuppressedError===_0x5ad3c1(0x207)?SuppressedError:function(_0x49657c,_0x185df8,_0x219f6c){const _0x4621f7=_0x5ad3c1;var _0x505359=new Error(_0x219f6c);return _0x505359[_0x4621f7(0x218)]='SuppressedError',_0x505359['error']=_0x49657c,_0x505359[_0x4621f7(0x1f4)]=_0x185df8,_0x505359;};function _0xa08538(_0xdd3f32,_0x3ef60e,_0x4907c7,_0x35e785){const _0xc54813=_0x5ad3c1,_0x4d270e=$('#'+_0xdd3f32+'-success'),_0x4ba07c=$('#'+_0xdd3f32+_0xc54813(0x20b)),_0x147749=$('#'+_0xdd3f32+'-pending'),_0xd688de=$('#'+_0xdd3f32+'-messages');let _0xcd213=![];_0x4d270e[_0xc54813(0x23d)](),_0x4ba07c[_0xc54813(0x23d)](),_0x147749['hide'](),_0x3ef60e['on']('click',()=>{const _0x3dee02=_0xc54813;if(_0xcd213)return;_0xcd213=!![],_0x147749[_0x3dee02(0x1f5)]('hide'),_0x147749[_0x3dee02(0x18d)]('Testing\x20Connection\x20...'),_0x4d270e[_0x3dee02(0x1ea)](_0x3dee02(0x23d)),_0x4ba07c['addClass'](_0x3dee02(0x23d)),_0xd688de[_0x3dee02(0x18d)]('');const {body:_0x4ad2b0,url:_0x4c0dc0}=_0x4907c7();fetch(_0x4c0dc0,{'method':'POST','headers':{'Content-Type':_0x3dee02(0x22b)},'body':JSON['stringify'](_0x4ad2b0)})[_0x3dee02(0x23a)](_0x5bfb6d=>_0x5bfb6d['json']())[_0x3dee02(0x23a)](_0x38aa02=>{const _0x537907=_0x3dee02;_0xcd213=![],_0x147749[_0x537907(0x23d)](),console[_0x537907(0x1d1)](JSON[_0x537907(0x1cd)](_0x38aa02,null,'\x20'));if(_0x38aa02[_0x537907(0x1c3)]==='ok')_0x4d270e[_0x537907(0x1f5)](_0x537907(0x23d)),_0x4ba07c[_0x537907(0x1ea)](_0x537907(0x23d)),_0xd688de[_0x537907(0x18d)](_0x38aa02[_0x537907(0x1dc)]['replace']('\x0a',_0x537907(0x21e))),_0x35e785(null,_0x38aa02);else{const _0x9772d0=_0x429ff9=>!_0x429ff9?'':_0x429ff9[_0x537907(0x205)]('\x0a')[_0x537907(0x1d7)](_0x10983e=>_0x537907(0x1f8)+_0x10983e+_0x537907(0x1a4))[_0x537907(0x1e0)]('\x0a'),_0x38526f=_0x14af02=>Array[_0x537907(0x1b7)](_0x14af02)?_0x14af02[_0x537907(0x1d7)](_0x9772d0)[_0x537907(0x1e0)]('\x0a'):_0x9772d0(_0x14af02);_0x4d270e['addClass'](_0x537907(0x23d)),_0x4ba07c['removeClass']('hide'),_0xd688de[_0x537907(0x18d)](_0x38526f(_0x38aa02['message'])+_0x38526f(_0x38aa02[_0x537907(0x1da)])),_0x35e785(new Error(_0x38aa02[_0x537907(0x1c3)]),_0x38aa02);}})[_0x3dee02(0x190)](_0x43eb19=>{const _0x303a35=_0x3dee02;_0xcd213=![],_0x147749[_0x303a35(0x1ea)](_0x303a35(0x23d)),_0x4d270e[_0x303a35(0x1ea)]('hide'),_0x4ba07c[_0x303a35(0x1f5)](_0x303a35(0x23d)),_0xd688de[_0x303a35(0x18d)](_0x303a35(0x22c)+_0x43eb19[_0x303a35(0x1dc)]),console['log'](_0x303a35(0x1c0),_0x43eb19),_0x35e785(_0x43eb19,null);});});}const _0x4e9fb5=_0x5ad3c1(0x19d),_0xb0dc24=_0x5ad3c1(0x1d3);function _0xd0c504(_0x23c4a8=''){return _0x422186(this,void 0x0,void 0x0,function*(){const _0x2e65e2=_0x4959,_0x2b29b8=_0x23c4a8+_0x2e65e2(0x1d9),_0x399b75=_0x2b29b8+_0x2e65e2(0x1bc),_0xcf4a52=yield fetch(_0x399b75,{'method':_0x2e65e2(0x1ec),'headers':{'Content-Type':_0x2e65e2(0x22b)}}),_0x36a916=new Date()[_0x2e65e2(0x1c9)]();if(_0xcf4a52[_0x2e65e2(0x1e6)]!==0xc8)return console['log'](_0x2e65e2(0x203),_0xcf4a52[_0x2e65e2(0x1e6)],_0xcf4a52['statusText']),{'status':'FAILED','type':'FREEWARE','licenceInfo':{'expiryDate':_0x36a916}};const _0x5ffc30=yield _0xcf4a52[_0x2e65e2(0x1b6)]();return _0x5ffc30;});}const _0x39b8e=()=>{const _0x234f24=_0x5ad3c1;$['widget'](_0x234f24(0x1ae),{'options':{'baseUrl':''},'_create'(){const _0x229578=_0x234f24,_0x4650f=this,_0x5b63dd=_0x229578(0x19c),_0xa2892a='<a\x20href=\x22https://www.sterfive.com/opcua/for-node-red\x22\x20target=”_blank”>Sterfive\x27s\x20website\x20</a>';_0xd0c504(_0x4650f[_0x229578(0x1a8)])['then'](_0x3c3413=>{const _0x1c87b1=_0x229578;let _0x17fc1c='',_0x17bf32='',_0x2fbc51='';const _0x2c5086=_0x3c3413['status'],_0x4c6e8f=_0x3c3413[_0x1c87b1(0x1db)];switch(_0x2c5086){case _0x1c87b1(0x1fe):_0x17fc1c=_0x1c87b1(0x247);switch(_0x3c3413['type']){case _0x1c87b1(0x241):{_0x17bf32=_0x1c87b1(0x23c),_0x2fbc51='The\x20Trial\x20will\x20expire\x20in\x20'+_0x4c6e8f+'\x20days.\x0aBuy\x20online\x20and\x20visit\x20'+_0xa2892a+_0x1c87b1(0x1ab);break;}case _0x1c87b1(0x193):_0x17bf32=_0x1c87b1(0x1df);_0x4c6e8f<0x5a&&_0x4c6e8f>=0x0&&(_0x17bf32+='\x20It\x20will\x20expire\x20in\x20'+_0x4c6e8f+'\x20days.');_0x2fbc51=_0x3c3413[_0x1c87b1(0x209)][_0x1c87b1(0x1a9)]+_0x1c87b1(0x233)+(_0x3c3413[_0x1c87b1(0x209)][_0x1c87b1(0x1f9)]||'');break;case'FREEWARE':_0x17bf32=_0x1c87b1(0x215),_0x2fbc51=_0x1c87b1(0x1c1)+_0xa2892a+_0x1c87b1(0x1a0);break;}break;case'EXPIRED':_0x17fc1c='fa\x20fa-calendar-time',_0x17bf32='Licence\x20has\x20expired',_0x2fbc51='Your\x20license\x20has\x20expired.\x20Please\x20contact\x20our\x20support\x20team\x20or\x20visit\x20our\x20website\x20to\x20renew\x20your\x20license\x20and\x20regain\x20access\x20to\x20our\x20services.';break;case'FAILED':default:_0x17fc1c='fa\x20fa-exclamation-circle',_0x17bf32=_0x1c87b1(0x1a5),_0x2fbc51=_0x1c87b1(0x1ee)+_0x5b63dd+'\x20or\x20visit\x20our\x20website\x20to\x20renew\x20your\x20license\x20and\x20regain\x20access\x20to\x20our\x20services.̀';break;}this[_0x1c87b1(0x1b0)][_0x1c87b1(0x1ea)](_0x1c87b1(0x234)),this[_0x1c87b1(0x1b0)][_0x1c87b1(0x1ea)](_0x1c87b1(0x1fd)+_0x2c5086),this[_0x1c87b1(0x1b0)]['append']($('<span>')[_0x1c87b1(0x1ea)](_0x1c87b1(0x22a))[_0x1c87b1(0x1af)]($(_0x1c87b1(0x1e5))[_0x1c87b1(0x1ea)](_0x17fc1c))),this[_0x1c87b1(0x1b0)][_0x1c87b1(0x1af)]($('<span>')[_0x1c87b1(0x1ea)](_0x1c87b1(0x1f3))[_0x1c87b1(0x201)](_0x17bf32)),this['element']['append']($(_0x1c87b1(0x21e))),this['element'][_0x1c87b1(0x1af)]($(_0x1c87b1(0x1ce))['addClass'](_0x1c87b1(0x1ed))[_0x1c87b1(0x1af)](_0x2fbc51));if(_0x2c5086==='EXPIRED'||_0x2c5086===_0x1c87b1(0x249)||_0x3c3413[_0x1c87b1(0x1d6)]===_0x1c87b1(0x1e3)||_0x3c3413[_0x1c87b1(0x1d6)]===_0x1c87b1(0x241)){const _0x29e7b0=$(_0x1c87b1(0x22e));_0x29e7b0['attr']('id',_0x1c87b1(0x243)),_0x29e7b0[_0x1c87b1(0x202)](_0x1c87b1(0x188),_0x1c87b1(0x1d4)),_0x29e7b0['attr'](_0x1c87b1(0x210),_0x1c87b1(0x18e)),_0x29e7b0[_0x1c87b1(0x201)](_0x1c87b1(0x213)),this[_0x1c87b1(0x1b0)][_0x1c87b1(0x1af)](_0x29e7b0);const _0x4ed7ff=document[_0x1c87b1(0x229)](_0x1c87b1(0x219));_0x4ed7ff[_0x1c87b1(0x19e)]=_0x1c87b1(0x214),_0x4ed7ff[_0x1c87b1(0x189)]=!![],$('head')['append'](_0x4ed7ff);const _0x4c88e3=$(_0x1c87b1(0x1d8));_0x4c88e3[_0x1c87b1(0x202)](_0x1c87b1(0x1aa),_0x4e9fb5),_0x4c88e3[_0x1c87b1(0x202)](_0x1c87b1(0x1f1),_0xb0dc24),_0x4c88e3['attr'](_0x1c87b1(0x210),_0x1c87b1(0x1b2)),_0x4c88e3[_0x1c87b1(0x23d)](),this['element'][_0x1c87b1(0x1af)](_0x4c88e3),_0x29e7b0['on'](_0x1c87b1(0x238),()=>{const _0x369c5d=_0x1c87b1;_0x4c88e3[_0x369c5d(0x1f2)](),_0x29e7b0['hide'](),this[_0x369c5d(0x1b0)][_0x369c5d(0x202)](_0x369c5d(0x210),'height:\x20100%\x20!important;');});}})[_0x229578(0x190)](_0x186992=>{const _0x193986=_0x229578;console[_0x193986(0x1d1)](_0x186992);});}});};_0x39b8e();function _0x5c2347(_0x4978f3){const _0x26741e=_0x5ad3c1;let _0xc48a32;try{_0xc48a32=new URL(_0x4978f3);}catch(_0x2be11b){return![];}return _0xc48a32['protocol']===_0x26741e(0x1ef);}const _0x18f00e={'publishingEnabled':!![],'requestedLifetimeCount':0x3e8,'requestedMaxKeepAliveCount':0xa,'requestedPublishingInterval':0x3e8,'maxNotificationsPerPublish':0x0,'priority':0x64};RED[_0x5ad3c1(0x20d)][_0x5ad3c1(0x1b9)]('OpcUa-Endpoint2',{'category':_0x5ad3c1(0x21d),'paletteLabel':_0x5ad3c1(0x20a),'defaults':{'name':{'value':''},'endpoint':{'value':_0x5ad3c1(0x18a),'required':!![],'validate':_0x5c2347},'securityMode':{'value':_0x5ad3c1(0x237)},'securityPolicy':{'value':_0x5ad3c1(0x237),'validate':_0x1b69f2=>{if(!_0x1b69f2)return![];return!![];}},'userIdentityType':{'value':'Anonymous'},'pkiName':{'value':'','validate':_0x5973a0=>!_0x5973a0||_0x5973a0[_0x5ad3c1(0x1fb)](/[0-9a-zA-Z]*/)?!![]:![]},'useTransport':{'value':![],'required':![]},'maxChunkCount':{'value':0x1,'required':![]},'maxMessageSize':{'value':0x2000,'required':![]},'receiveBufferSize':{'value':0x2000,'required':![]},'sendBufferSize':{'value':0x2000,'required':![]},'subscriptions':{'value':[{'id':'s1','name':'Default\x20Subscription','isDefault':!![],'parameters':Object[_0x5ad3c1(0x246)]({},_0x18f00e)},{'id':'s2','name':_0x5ad3c1(0x1de),'isDefault':![],'parameters':{'publishingEnabled':!![],'requestedLifetimeCount':0x64,'requestedMaxKeepAliveCount':0x3,'requestedPublishingInterval':0x1388,'maxNotificationsPerPublish':0x64,'priority':0xa}},{'id':'s3','name':_0x5ad3c1(0x194),'isDefault':![],'parameters':{'publishingEnabled':!![],'requestedLifetimeCount':0xfa0,'requestedMaxKeepAliveCount':0x32,'requestedPublishingInterval':0xfa,'maxNotificationsPerPublish':0x64,'priority':0xc8}}],'required':![]}},'credentials':{'userName':{'type':_0x5ad3c1(0x201)},'password':{'type':_0x5ad3c1(0x244)},'userCertificate':{'type':'text'},'userPrivatekey':{'type':_0x5ad3c1(0x244)}},'label':function(){const _0x56e112=_0x5ad3c1;return this[_0x56e112(0x218)]||this[_0x56e112(0x1d0)]||_0x56e112(0x228);},'oneditsave'(){const _0x190252=_0x5ad3c1,_0x2c0e3d=$(_0x190252(0x245)),_0x3de4ed=$('#node-config-input-securityMode');_0x2c0e3d[_0x190252(0x1c4)]()===_0x190252(0x237)&&_0x3de4ed[_0x190252(0x201)]('None');const _0x3dcbe0=$(_0x190252(0x1f0))['editableList'](_0x190252(0x1d5)),_0x26451d=[],_0x3bd608=_0xb3719b=>_0xb3719b;_0x3dcbe0[_0x190252(0x1bf)](function(_0x58a5a5,_0x1aac44){const _0xad82a6=_0x190252,_0x201ca1=$(this),_0x176ec7={'id':'s'+_0x58a5a5,'name':_0x201ca1['find'](_0xad82a6(0x223))['val'](),'isDefault':!!_0x201ca1[_0xad82a6(0x221)](_0xad82a6(0x1ad))['val'](),'parameters':{'publishingEnabled':!!_0x201ca1[_0xad82a6(0x221)](_0xad82a6(0x24a))['is'](_0xad82a6(0x20f)),'requestedLifetimeCount':_0x3bd608(_0x201ca1[_0xad82a6(0x221)](_0xad82a6(0x206))[_0xad82a6(0x1c4)]()),'requestedMaxKeepAliveCount':_0x3bd608(_0x201ca1['find']('.input-requestedMaxKeepAliveCount')['val']()),'requestedPublishingInterval':_0x3bd608(_0x201ca1[_0xad82a6(0x221)]('.input-requestedPublishingInterval')[_0xad82a6(0x1c4)]()),'maxNotificationsPerPublish':_0x3bd608(_0x201ca1['find'](_0xad82a6(0x239))[_0xad82a6(0x1c4)]()),'priority':_0x3bd608(_0x201ca1[_0xad82a6(0x221)](_0xad82a6(0x1cc))['val']())}};_0x176ec7['parameters']['publishingEnabled']=!![],_0x176ec7[_0xad82a6(0x1e4)]&&_0x176ec7['id']==='s0'&&(_0x176ec7[_0xad82a6(0x218)]='Default\x20Subscription'),_0x26451d['push'](_0x176ec7);}),this['subscriptions']=_0x26451d;},'oneditprepare'(){const _0x46df67=_0x5ad3c1,_0x3ee635=this,_0x4ff6e4=RED[_0x46df67(0x230)][_0x46df67(0x1bd)]({'id':'node-config-endpoint-tabs','onchange':function(_0x22e97d){const _0x41538f=_0x46df67;$(_0x41538f(0x1fa))['children']()[_0x41538f(0x23d)](),$('#'+_0x22e97d['id'])[_0x41538f(0x1f2)]();}});_0x4ff6e4[_0x46df67(0x1ac)]({'id':_0x46df67(0x1e2),'label':_0x46df67(0x225)},0x0),_0x4ff6e4[_0x46df67(0x1ac)]({'id':_0x46df67(0x1dd),'label':'Subscriptions'},0x1),setTimeout(function(){const _0x4abdfb=_0x46df67;_0x4ff6e4[_0x4abdfb(0x1a1)]();},0x0);{const _0x1e0984=_0x11e225=>{const _0x87d1d4=_0x46df67;switch(_0x11e225){case null:case undefined:case'':case _0x87d1d4(0x237):$('.section-securityPolicy')[_0x87d1d4(0x23d)]();break;case _0x87d1d4(0x227):case _0x87d1d4(0x24d):{const _0x5197e8=$(_0x87d1d4(0x224));(_0x5197e8['val']()==='None'||_0x5197e8[_0x87d1d4(0x1c4)]()==='')&&_0x5197e8[_0x87d1d4(0x1c4)](_0x87d1d4(0x24b)),$(_0x87d1d4(0x224))['show']();}break;default:console['log'](_0x87d1d4(0x21b)+_0x11e225);}};_0x1e0984(_0x3ee635[_0x46df67(0x1ca)]);const _0x1beced=$(_0x46df67(0x1bb));_0x1beced['on'](_0x46df67(0x20c),()=>{const _0x591eb9=_0x46df67,_0x94990f=_0x1beced[_0x591eb9(0x1c4)]();_0x1e0984(_0x94990f);});}const _0x235df8=$(_0x46df67(0x19f));_0x235df8[_0x46df67(0x1b1)]({'baseUrl':''});{const _0x3e85a8=$(_0x46df67(0x21a)),_0x35dfde=$('.section-userIdentityType-Certificate'),_0xbbb839=_0x1bbbc4=>{const _0x59bf50=_0x46df67;_0x1bbbc4=_0x1bbbc4||_0x59bf50(0x222);switch(_0x1bbbc4){case _0x59bf50(0x222):$(_0x59bf50(0x198))['val'](''),$(_0x59bf50(0x236))[_0x59bf50(0x1c4)](''),_0x3e85a8[_0x59bf50(0x23d)](),_0x35dfde['hide']();break;case _0x59bf50(0x1a6):_0x3e85a8[_0x59bf50(0x1f2)](),_0x35dfde[_0x59bf50(0x23d)]();break;case'Certificate':$('#node-config-input-userName')['val'](''),$(_0x59bf50(0x236))[_0x59bf50(0x1c4)](''),_0x35dfde[_0x59bf50(0x1f2)](),_0x3e85a8[_0x59bf50(0x23d)]();break;default:console[_0x59bf50(0x1d1)](_0x59bf50(0x24c)+_0x1bbbc4);}};_0xbbb839(_0x3ee635[_0x46df67(0x199)]);const _0x26aced=$('#node-config-input-userIdentityType');_0x26aced['on']('change',()=>{const _0x261420=_0x46df67,_0x2a74d7=_0x26aced[_0x261420(0x1c4)]();_0xbbb839(_0x2a74d7);});}{$('#section-Advanced')[_0x46df67(0x23d)](),$(_0x46df67(0x216))[_0x46df67(0x1c2)](_0x46df67(0x191),![]),$('#toggleAdvancedSection')['on'](_0x46df67(0x20c),function(){const _0xbd6db3=_0x46df67;$(this)[_0xbd6db3(0x1c2)](_0xbd6db3(0x191))?$(_0xbd6db3(0x1be))[_0xbd6db3(0x1f2)]():$(_0xbd6db3(0x1be))[_0xbd6db3(0x23d)]();});}const _0x294d72=$('#node-config-input-useTransport')[_0x46df67(0x1c2)](_0x46df67(0x191));_0x294d72?$(_0x46df67(0x220))[_0x46df67(0x1f2)]():$(_0x46df67(0x220))[_0x46df67(0x23d)]();$(_0x46df67(0x19a))['on'](_0x46df67(0x20c),function(){const _0x15e3c9=_0x46df67;$(this)[_0x15e3c9(0x1c2)]('checked')?$(_0x15e3c9(0x220))[_0x15e3c9(0x1f2)]():$(_0x15e3c9(0x220))[_0x15e3c9(0x23d)]();});{$(_0x46df67(0x242))['on'](_0x46df67(0x238),()=>_0x422186(this,void 0x0,void 0x0,function*(){const _0x577b0b=_0x46df67,_0x38251c=yield fetch(_0x577b0b(0x1b4)),_0x4d6562=yield _0x38251c['json'](),_0x2b0bdc=JSON[_0x577b0b(0x1cd)](_0x4d6562,null,'\x20');alert(_0x2b0bdc);}));}{_0xa08538(_0x46df67(0x1c8),$(_0x46df67(0x240)),()=>{const _0x4953b7=_0x46df67;var _0x4cb708;return{'url':_0x4953b7(0x1a7),'body':{'endpointNode':{'id':_0x3ee635['id'],'endpoint':$(_0x4953b7(0x21f))[_0x4953b7(0x1c4)](),'name':$(_0x4953b7(0x195))[_0x4953b7(0x1c4)](),'pkiName':(_0x4cb708=$(_0x4953b7(0x1a3)))===null||_0x4cb708===void 0x0?void 0x0:_0x4cb708[_0x4953b7(0x1c4)](),'securityMode':$('#node-config-input-securityMode')[_0x4953b7(0x1c4)](),'securityPolicy':$('#node-config-input-securityPolicy')['val'](),'userIdentityType':$(_0x4953b7(0x1ba))['val'](),'userName':$(_0x4953b7(0x198))[_0x4953b7(0x1c4)](),'password':$('#node-config-input-password')[_0x4953b7(0x1c4)](),'userCertificate':$('#node-config-input-userCertificate')[_0x4953b7(0x1c4)](),'userPrivatekey':$(_0x4953b7(0x1d2))[_0x4953b7(0x1c4)](),'certificate':$(_0x4953b7(0x1fc))['val'](),'useTransport':$(_0x4953b7(0x192))[_0x4953b7(0x1c2)]('checked'),'maxChunkCount':$(_0x4953b7(0x1b3))['val'](),'maxMessageSize':$(_0x4953b7(0x226))[_0x4953b7(0x1c4)](),'receiveBufferSize':$('#node-input-receiveBufferSize')['val'](),'sendBufferSize':$(_0x4953b7(0x1eb))[_0x4953b7(0x1c4)]()}}};},()=>{});}{const _0x2aa550=(_0x5c8077,_0x2b8fcf)=>{const _0x2acf55=_0x46df67;var _0x882722=_0x5c8077[_0x2acf55(0x1c6)]()||0x64;_0x5c8077[_0x2acf55(0x221)](_0x2acf55(0x212))[_0x2acf55(0x248)]('width',_0x882722-0xf);},_0x42f03e=$(_0x46df67(0x1f0))[_0x46df67(0x232)]({'min-height':_0x46df67(0x1e1),'min-width':_0x46df67(0x1c5)})[_0x46df67(0x1e7)]({'addItem':(_0x2af30c,_0x393bd2,_0x1fbf67)=>{const _0x266ba6=_0x46df67,_0x3156fc=_0x1fbf67,_0x2426ff=$(_0x266ba6(0x1b5))[_0x266ba6(0x1e9)]()['appendTo'](_0x2af30c);_0x2426ff[_0x266ba6(0x197)]('id')[_0x266ba6(0x1f5)](_0x266ba6(0x23d))[_0x266ba6(0x1f5)]('template')[_0x266ba6(0x202)]('data-i',_0x393bd2),_0x2426ff[_0x266ba6(0x221)](_0x266ba6(0x223))[_0x266ba6(0x1c4)](_0x3156fc[_0x266ba6(0x218)]),_0x2426ff[_0x266ba6(0x221)]('.input-requestedPublishingInterval')['val'](_0x3156fc['parameters']['requestedPublishingInterval']),_0x2426ff[_0x266ba6(0x221)](_0x266ba6(0x196))['val'](_0x3156fc[_0x266ba6(0x200)][_0x266ba6(0x204)]),_0x2426ff[_0x266ba6(0x221)](_0x266ba6(0x206))[_0x266ba6(0x1c4)](_0x3156fc[_0x266ba6(0x200)][_0x266ba6(0x1ff)]),_0x2426ff[_0x266ba6(0x221)](_0x266ba6(0x239))[_0x266ba6(0x1c4)](_0x3156fc['parameters']['maxNotificationsPerPublish']||0x0),_0x2426ff[_0x266ba6(0x221)]('.input-priority')[_0x266ba6(0x1c4)](_0x3156fc['parameters'][_0x266ba6(0x231)]||0x0),_0x2426ff[_0x266ba6(0x221)](_0x266ba6(0x23f))[_0x266ba6(0x201)](''+_0x393bd2),_0x3156fc[_0x266ba6(0x1e4)]&&_0x2426ff[_0x266ba6(0x221)](_0x266ba6(0x223))[_0x266ba6(0x1c2)]('readonly',!![]),_0x2426ff[_0x266ba6(0x221)](_0x266ba6(0x1ad))['prop']('checked',_0x3156fc['isDefault']),_0x3156fc[_0x266ba6(0x1e4)]&&(_0x2af30c[_0x266ba6(0x221)](_0x266ba6(0x1cf))['addClass']('hide'),setTimeout(()=>_0x2426ff[_0x266ba6(0x221)](_0x266ba6(0x1ad))['prop']('disabled',!![]),0xa));},'removable':!![],'resizeItem':_0x2aa550}),_0x1cc86f=()=>{const _0x3b9613=_0x46df67,_0x3e8540=_0x3ee635[_0x3b9613(0x22d)]||[];_0x3e8540[_0x3b9613(0x20e)]===0x0&&_0x3e8540[_0x3b9613(0x23e)]({'id':'s1','name':_0x3b9613(0x22f),'isDefault':!![],'parameters':Object[_0x3b9613(0x246)]({},_0x18f00e)});_0x42f03e[_0x3b9613(0x1e7)](_0x3b9613(0x211));for(const _0x6e8dd3 of _0x3e8540){_0x42f03e[_0x3b9613(0x1e7)](_0x3b9613(0x19b),_0x6e8dd3);}};_0x1cc86f();}}});}()));
|
8
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNvdXJjZU1hcCJdLCJuYW1lcyI6WyJfMHg0MjIxODYiLCJfMHgzMTA2ZTkiLCJfMHg1MWZlNmEiLCJfMHg1YWIxMDkiLCJfMHg2MmVjZWQiLCJfMHg1OWEyNDMiLCJfMHg1NmVhOGMiLCJfMHgyNDIwY2YiLCJQcm9taXNlIiwiXzB4YWYzZTIzIiwiXzB4MTcyY2RkIiwiXzB4MTdhMWIwIiwiXzB4NTU5ODM2IiwiXzB4MzQ3ZDk2IiwiXzB4MTEwM2FmIiwiXzB4NWQzYmY0IiwiXzB4NDk0NmM1IiwiXzB4NTk1ZjA1IiwiXzB4NTBhNmRiIiwiU3VwcHJlc3NlZEVycm9yIiwiXzB4NDk2NTdjIiwiXzB4MTg1ZGY4IiwiXzB4MjE5ZjZjIiwiXzB4NTA1MzU5IiwiRXJyb3IiLCJfMHhhMDg1MzgiLCJfMHhkZDNmMzIiLCJfMHgzZWY2MGUiLCJfMHg0OTA3YzciLCJfMHgzNWU3ODUiLCJfMHg0ZDI3MGUiLCIkIiwiXzB4NGJhMDdjIiwiXzB4MTQ3NzQ5IiwiXzB4ZDY4OGRlIiwiXzB4Y2QyMTMiLCJib2R5IiwiXzB4NGFkMmIwIiwidXJsIiwiXzB4NGMwZGMwIiwiZmV0Y2giLCJKU09OIiwiXzB4NWJmYjZkIiwiXzB4MzhhYTAyIiwiY29uc29sZSIsIl8weDk3NzJkMCIsIl8weDQyOWZmOSIsIl8weDEwOTgzZSIsIl8weDM4NTI2ZiIsIl8weDE0YWYwMiIsIkFycmF5IiwiXzB4NDNlYjE5IiwiXzB4NGU5ZmI1IiwiXzB4YjBkYzI0IiwiXzB4ZDBjNTA0IiwiXzB4MjNjNGE4IiwiXzB4MmIyOWI4IiwiXzB4Mzk5Yjc1IiwiXzB4Y2Y0YTUyIiwiXzB4MzZhOTE2IiwiRGF0ZSIsIl8weDVmZmMzMCIsIl8weDM5YjhlIiwiXzB4NDY1MGYiLCJfMHg1YjYzZGQiLCJfMHhhMjg5MmEiLCJfMHgzYzM0MTMiLCJfMHgxN2ZjMWMiLCJfMHgxN2JmMzIiLCJfMHgyZmJjNTEiLCJfMHgyYzUwODYiLCJfMHg0YzZlOGYiLCJfMHgyOWU3YjAiLCJfMHg0ZWQ3ZmYiLCJkb2N1bWVudCIsIl8weDRjODhlMyIsIl8weDE4Njk5MiIsIl8weDVjMjM0NyIsIl8weDQ5NzhmMyIsIl8weGM0OGEzMiIsIlVSTCIsIl8weDJiZTExYiIsIl8weDE4ZjAwZSIsIlJFRCIsIl8weDFiNjlmMiIsIl8weDU5NzNhMCIsIk9iamVjdCIsIl8weDJjMGUzZCIsIl8weDNkZTRlZCIsIl8weDNkY2JlMCIsIl8weDI2NDUxZCIsIl8weDNiZDYwOCIsIl8weGIzNzE5YiIsIl8weDU4YTVhNSIsIl8weDFhYWM0NCIsIl8weDIwMWNhMSIsIl8weDE3NmVjNyIsIl8weDNlZTYzNSIsIl8weDRmZjZlNCIsIl8weDIyZTk3ZCIsInNldFRpbWVvdXQiLCJfMHgxZTA5ODQiLCJfMHgxMWUyMjUiLCJ1bmRlZmluZWQiLCJfMHg1MTk3ZTgiLCJfMHgxYmVjZWQiLCJfMHg5NDk5MGYiLCJfMHgyMzVkZjgiLCJfMHgzZTg1YTgiLCJfMHgzNWRmZGUiLCJfMHhiYmI4MzkiLCJfMHgxYmJiYzQiLCJfMHgyNmFjZWQiLCJfMHgyYTc0ZDciLCJfMHgyOTRkNzIiLCJfMHgzODI1MWMiLCJfMHg0ZDY1NjIiLCJfMHgyYjBiZGMiLCJhbGVydCIsIl8weDRjYjcwOCIsIl8weDJhYTU1MCIsIl8weDVjODA3NyIsIl8weDJiOGZjZiIsIl8weDg4MjcyMiIsIl8weDQyZjAzZSIsIl8weDJhZjMwYyIsIl8weDM5M2JkMiIsIl8weDFmYmY2NyIsIl8weDMxNTZmYyIsIl8weDI0MjZmZiIsIl8weDFjYzg2ZiIsIl8weDNlODU0MCIsIl8weDZlOGRkMyJdLCJtYXBwaW5ncyI6InE4SUFBQSxDQUFDLFUsQ0FDRyxhLHdCQW1CQSxTQUFTQSxTQUFULENBQW1CQyxTQUFuQixDQUE0QkMsU0FBNUIsQ0FBd0NDLFNBQXhDLENBQTJDQyxTQUEzQyxDLENBQ0ksU0FBU0MsU0FBVCxDQUFlQyxTQUFmLEMsUUFBK0JBLFNBQUEsWUFBaUJILFNBQWpCLENBQXFCRyxTQUFyQixDQUE2QixJQUFJSCxTQUFKLENBQU0sU0FBVUksU0FBVixDLENBQXFCQSxTQUFBLENBQVFELFNBQVIsQyxFQUEzQixDLFNBQ3JELEdBQUssQ0FBQUgsU0FBQSxFQUFNLENBQUFBLFNBQUEsQ0FBSUssT0FBSixDQUFOLENBQUwsQ0FBeUIsU0FBVUMsU0FBVixDQUFtQkMsU0FBbkIsQyx5QkFDNUIsU0FBU0MsU0FBVCxDQUFtQkMsU0FBbkIsQyx5QkFBNEIsRyxDQUFNQyxTQUFBLENBQUtULFNBQUEsQyxnQkFBQSxFQUFlUSxTQUFmLENBQUwsQyxFQUErQixNQUFPRSxTQUFQLEMsQ0FBWUosU0FBQSxDQUFPSSxTQUFQLEMsR0FDN0UsU0FBU0MsU0FBVCxDQUFrQkMsU0FBbEIsQyx5QkFBMkIsRyxDQUFNSCxTQUFBLENBQUtULFNBQUEsQyxnQkFBQSxFQUFtQlksU0FBbkIsQ0FBTCxDLEVBQW1DLE1BQU9DLFNBQVAsQyxDQUFZUCxTQUFBLENBQU9PLFNBQVAsQyxHQUNoRixTQUFTSixTQUFULENBQWNLLFNBQWQsQyx5QkFBd0JBLFNBQUEsQyxnQkFBQSxFQUFjVCxTQUFBLENBQVFTLFNBQUEsQyxPQUFBLENBQVIsQ0FBZCxDQUFzQ2IsU0FBQSxDQUFNYSxTQUFBLEMsZ0JBQUEsQ0FBTixFLE1BQUEsRUFBeUJQLFNBQXpCLENBQW9DSSxTQUFwQyxDLEVBQzlERixTQUFBLENBQU0sQ0FBQVQsU0FBQSxDQUFZQSxTQUFBLEMsZ0JBQUEsRUFBZ0JILFNBQWhCLENBQXlCQyxTQUFBLEVBQWMsRUFBdkMsQ0FBWixDQUFELEMsZ0JBQUEsR0FBTCxDLEVBSkcsQyxFQVFYLE9BQU9pQixlQUFQLEcsZ0JBQUEsQ0FBd0NBLGVBQXhDLENBQTBELFNBQVVDLFNBQVYsQ0FBaUJDLFNBQWpCLENBQTZCQyxTQUE3QixDLDJCQUN0RCxJQUFJQyxTQUFBLENBQUksSUFBSUMsS0FBSixDQUFVRixTQUFWLENBQVIsQyxPQUNPQyxTQUFBLEMsZ0JBQUEsRSxpQkFBQSxDQUE0QkEsU0FBQSxDLE9BQUEsRUFBVUgsU0FBdEMsQ0FBNkNHLFNBQUEsQyxnQkFBQSxFQUFlRixTQUE1RCxDQUF3RUUsUyxFQUZuRixDQUtBLFNBQVNFLFNBQVQsQ0FBdUJDLFNBQXZCLENBQStCQyxTQUEvQixDQUFvQ0MsU0FBcEMsQ0FBMENDLFNBQTFDLEMsMkJBQ1VDLFNBQUEsQ0FBY0MsQ0FBQSxDLElBQU1MLFMsV0FBTixDLENBQ2RNLFNBQUEsQ0FBY0QsQ0FBQSxDLElBQU1MLFMsaUJBQU4sQyxDQUNkTyxTQUFBLENBQWNGLENBQUEsQyxJQUFNTCxTLFdBQU4sQyxDQUNkUSxTQUFBLENBQVdILENBQUEsQyxJQUFNTCxTLFlBQU4sQyxDQUNqQixJQUFJUyxRQUFBLEMsR0FBSixDQUNBTCxTQUFBLEMsZ0JBQUEsRyxDQUNBRSxTQUFBLEMsZ0JBQUEsRyxDQUNBQyxTQUFBLEMsTUFBQSxHLENBQ0FOLFNBQUEsQyxJQUFBLEUsT0FBQSxDQUFnQixJLDhCQUNSUSxRLENBQ0EsT0FDSkEsUUFBQSxDLEtBQ0FGLFNBQUEsQyxnQkFBQSxFLE1BQUEsQyxDQUNBQSxTQUFBLEMsZ0JBQUEsRSw4QkFBQSxDLENBQ0FILFNBQUEsQyxnQkFBQSxFLGdCQUFBLEMsQ0FDQUUsU0FBQSxDLFVBQUEsRSxnQkFBQSxDLENBQ0FFLFNBQUEsQyxnQkFBQSxFLEVBQUEsQ0FMQSxDQU1BLE1BQU0sQ0FBRUUsSUFBQSxDQUFBQyxTQUFGLENBQVFDLEdBQUEsQ0FBQUMsU0FBUixFQUFnQlgsU0FBQSxFQUF0QixDQUVBWSxLQUFBLENBQU1ELFNBQU4sQ0FBVyxDLFFBQ1AsQyxNQURPLEMsU0FFUCxDQUFTLEMsY0FDTCxDLGdCQURLLENBRkYsQyxNQUtQLENBQU1FLElBQUEsQyxXQUFBLEVBQWVKLFNBQWYsQ0FMQyxDQUFYLEUsZ0JBQUEsRUFPV0ssU0FBRCxFQUFVQSxTQUFBLEMsTUFBQSxHQVBwQixFLGdCQUFBLEVBUVdDLFNBQUQsRSwyQkFDTlIsUUFBQSxDLElBQ0FGLFNBQUEsQyxnQkFBQSxHLENBQ0FXLE9BQUEsQyxnQkFBQSxFQUFZSCxJQUFBLEMsZ0JBQUEsRUFBZUUsU0FBZixDQUFxQixJQUFyQixDLE1BQUEsQ0FBWixDQUZBLEMsR0FHSUEsU0FBQSxDLGdCQUFBLEksS0FDQWIsU0FBQSxDLGdCQUFBLEUsZ0JBQUEsQyxDQUNBRSxTQUFBLEMsZ0JBQUEsRSxnQkFBQSxDLENBQ0FFLFNBQUEsQyxnQkFBQSxFQUFjUyxTQUFBLEMsZ0JBQUEsRSxTQUFBLEUsTUFBQSxDLGdCQUFBLENBQWQsQyxDQUNBZCxTQUFBLENBQVMsSUFBVCxDQUFlYyxTQUFmLEMsTUFHQSxNQUFNRSxTQUFBLENBQVNDLFNBQUQsRUFBUyxDQUFDQSxTQUFELEMsRUFBQSxDQUVqQkEsU0FBQSxDLGdCQUFBLEUsTUFBQSxFLGdCQUFBLEVBRVFDLFNBQUQsRSxpQkFBYUEsUyxpQkFGcEIsRSxnQkFBQSxFLE1BQUEsQ0FGTixDQU1NQyxTQUFBLENBQVVDLFNBQUQsRUFBVUMsS0FBQSxDLGdCQUFBLEVBQWNELFNBQWQsRUFBcUJBLFNBQUEsQyxnQkFBQSxFQUFRSixTQUFSLEUsZ0JBQUEsRSxNQUFBLENBQXJCLENBQWlEQSxTQUFBLENBQU1JLFNBQU4sQ0FOMUUsQ0FPQW5CLFNBQUEsQyxVQUFBLEUsZ0JBQUEsQyxDQUNBRSxTQUFBLEMsYUFBQSxFLE1BQUEsQyxDQUNBRSxTQUFBLEMsZ0JBQUEsRUFBY2MsU0FBQSxDQUFPTCxTQUFBLEMsU0FBQSxDQUFQLEVBQXVCSyxTQUFBLENBQU9MLFNBQUEsQyxnQkFBQSxDQUFQLENBQXJDLEMsQ0FDQWQsU0FBQSxDQUFTLElBQUlMLEtBQUosQ0FBVW1CLFNBQUEsQyxnQkFBQSxDQUFWLENBQVQsQ0FBaUNBLFNBQWpDLEMsR0E3QlIsRSxnQkFBQSxFQWdDWVEsU0FBRCxFLDJCQUNQaEIsUUFBQSxDLElBQ0FGLFNBQUEsQyxnQkFBQSxFLGdCQUFBLEMsQ0FDQUgsU0FBQSxDLGdCQUFBLEUsTUFBQSxDLENBQ0FFLFNBQUEsQyxnQkFBQSxFLGdCQUFBLEMsQ0FDQUUsU0FBQSxDLGdCQUFBLEUsZ0JBQWMsQ0FBb0JpQixTQUFBLEMsZ0JBQUEsQ0FBbEMsQyxDQUNBUCxPQUFBLEMsS0FBQSxFLGdCQUFBLENBQW1CTyxTQUFuQixDLENBQ0F0QixTQUFBLENBQVNzQixTQUFULENBQWMsSUFBZCxDLEVBdkNKLEMsRUFYSixDLEVBdURKLE1BQU1DLFNBQUEsQyxnQkFBTixDQUNNQyxTQUFBLEMsZ0JBRE4sQ0FFQSxTQUFTQyxTQUFULENBQTBCQyxTQUFBLEMsRUFBMUIsQyxRQUNXdkQsU0FBQSxDQUFVLElBQVYsQ0FBZ0IsSyxHQUFoQixDQUF3QixLLEdBQXhCLENBQWdDLFcseUJBQzdCd0QsU0FBQSxDQUFVRCxTLGtCQUNWRSxTQUFBLENBQVNELFMsa0JBQ1RFLFNBQUEsQ0FBTyxNQUFNbEIsS0FBQSxDQUFNaUIsU0FBTixDQUFXLEMsUUFDMUIsQyxnQkFEMEIsQyxTQUUxQixDQUFTLEMsY0FBRSxDLGdCQUFGLENBRmlCLENBQVgsQyxDQUliRSxTQUFBLENBQVEsSUFBSUMsSUFBSixHLGdCQUFBLEcsSUFDVkYsU0FBQSxDLGdCQUFBLEksWUFDQWQsT0FBQSxDLEtBQUEsRSxnQkFBQSxDQUEwQ2MsU0FBQSxDLGdCQUFBLENBQTFDLENBQXVEQSxTQUFBLEMsWUFBQSxDQUF2RCxDLENBQ08sQyxRQUFFLEMsUUFBRixDLE1BQW9CLEMsVUFBcEIsQyxhQUFzQyxDQUFhLEMsWUFBRSxDQUFZQyxTQUFkLENBQW5ELEMsQ0FFWCxNQUFNRSxTQUFBLENBQU8sTUFBTUgsU0FBQSxDLGdCQUFBLEdBQW5CLEMsT0FDT0csUyxFQWJKLEMsRUFnQlgsTUFBTUMsUUFBQSxDQUF1QixJLDJCQUN6Qi9CLENBQUEsQyxRQUFBLEUsZ0JBQUEsQ0FBbUMsQyxTQUMvQixDQUFTLEMsU0FDTCxDLEVBREssQ0FEc0IsQyxTQUkvQixFLDJCQUNVZ0MsUUFBQSxDQUFPLEksQ0FDUEMsU0FBQSxDLGlCQUNBQyxTQUFBLEMscUhBQ05YLFNBQUEsQ0FBaUJTLFFBQUEsQyxnQkFBQSxDQUFqQixFLE1BQUEsRUFDV0csU0FBRCxFLDJCQUNOLElBQUlDLFNBQUEsQyxFQUFKLENBQ0lDLFNBQUEsQyxFQURKLENBRUlDLFNBQUEsQyxFQUZKLENBR0EsTUFBTUMsU0FBQSxDQUFTSixTQUFBLEMsUUFBQSxDQUFmLENBQ01LLFNBQUEsQ0FBVUwsU0FBQSxDLGdCQUFBLENBRGhCLENBRUEsT0FBUUksU0FBUixFQUNJLEssZ0JBQUEsQ0FDSUgsU0FBQSxDLGdCQUFBLENBQ0EsT0FBUUQsU0FBQSxDLE1BQUEsQ0FBUixFQUNJLEssZ0JBQUEsQyxDQUNJRSxTQUFBLEMsaUJBQ0FDLFNBQUEsQywyQ0FBc0NFLFMsa0RBQXVDTixTLGlCQUQ3RSxDQUVBLE0sQ0FFSixLLGdCQUFBLENBQ0lHLFNBQUEsQyxnQkFBQSxDQUNJRyxTQUFBLEMsSUFBQSxFQUFnQkEsU0FBQSxFLEtBQ2hCLENBQUFILFNBQUEsRSxxQ0FBNkJHLFMsWUFBN0IsQyxDQUdKRixTQUFBLENBQVVILFNBQUEsQyxnQkFBQSxFLGdCQUFBLEUsZ0JBQUEsQ0FBd0MsQ0FBQUEsU0FBQSxDLGdCQUFBLEUsZ0JBQUEsRyxFQUFBLENBQWxELENBQ0EsTUFDSixJLFVBQUEsQ0FDSUUsU0FBQSxDLGlCQUNBQyxTQUFBLEMsaUJBQXFFSixTLGlCQURyRSxDQUVBLE1BakJSLENBbUJBLE1BQ0osSSxTQUFBLENBQ0lFLFNBQUEsQyx5QkFDQUMsU0FBQSxDLDRCQUNBQyxTQUFBLEMsMk1BRkEsQ0FJQSxNQUNKLEksUUFBQSxDQUNBLFFBQ0lGLFNBQUEsQyw4QkFDQUMsU0FBQSxDLGlCQUNBQyxTQUFBLEMsaUJBQTRCTCxTLDRIQUY1QixDQUdBLE1BbENSLENBc0NBLEssZ0JBQUEsRSxnQkFBQSxFLGdCQUFBLEMsQ0FDQSxLLGdCQUFBLEUsZ0JBQUEsRSxnQkFBc0IsQ0FBb0JNLFNBQTFDLEMsQ0FDQSxLLGdCQUFBLEUsUUFBQSxFQUFvQnZDLENBQUEsQyxRQUFBLEUsZ0JBQUEsRSxnQkFBQSxFLGdCQUFBLEVBQW1EQSxDQUFBLEMsZ0JBQUEsRSxnQkFBQSxFQUFrQm9DLFNBQWxCLENBQW5ELENBQXBCLEMsQ0FDQSxLLGdCQUFBLEUsZ0JBQUEsRUFBb0JwQyxDQUFBLEMsUUFBQSxFLGdCQUFBLEUsZ0JBQUEsRSxnQkFBQSxFQUFnRHFDLFNBQWhELENBQXBCLEMsQ0FDQSxLLFNBQUEsRSxRQUFBLEVBQW9CckMsQ0FBQSxDLGdCQUFBLENBQXBCLEMsQ0FDQSxLLFNBQUEsRSxnQkFBQSxFQUFvQkEsQ0FBQSxDLGdCQUFBLEUsVUFBQSxFLGdCQUFBLEUsZ0JBQUEsRUFBc0RzQyxTQUF0RCxDQUFwQixDQUxBLEMsR0FNSUMsU0FBQSxHLFNBQUEsRUFBd0JBLFNBQUEsRyxnQkFBeEIsRUFBK0NKLFNBQUEsQyxnQkFBQSxJLGdCQUEvQyxFQUEyRUEsU0FBQSxDLGdCQUFBLEksa0JBQzNFLE1BQU1NLFNBQUEsQ0FBa0J6QyxDQUFBLEMsZ0JBQUEsQ0FBeEIsQ0FDQXlDLFNBQUEsQyxNQUFBLEUsSUFBQSxDLGdCQUFBLEMsQ0FDQUEsU0FBQSxDLGdCQUFBLEUsZ0JBQUEsQyxnQkFBQSxDLENBQ0FBLFNBQUEsQyxNQUFBLEUsZ0JBQUEsQyxnQkFBQSxDLENBQ0FBLFNBQUEsQyxnQkFBQSxFLGdCQUFBLEMsQ0FDQSxLLGdCQUFBLEUsZ0JBQUEsRUFBb0JBLFNBQXBCLENBSkEsQ0FLQSxNQUFNQyxTQUFBLENBQVNDLFFBQUEsQyxnQkFBQSxFLGdCQUFBLENBQWYsQ0FFQUQsU0FBQSxDLGdCQUFBLEUsaUJBQ0FBLFNBQUEsQyxnQkFBQSxFLEtBRUExQyxDQUFBLEMsTUFBQSxFLFFBQUEsRUFBaUIwQyxTQUFqQixDQUhBLENBSUEsTUFBTUUsU0FBQSxDQUFxQjVDLENBQUEsQyxnQkFBQSxDQUEzQixDQUVBNEMsU0FBQSxDLGdCQUFBLEUsZ0JBQUEsQ0FBNEN2QixTQUE1QyxDLENBQ0F1QixTQUFBLEMsZ0JBQUEsRSxnQkFBQSxDQUEyQ3RCLFNBQTNDLEMsQ0FDQXNCLFNBQUEsQyxNQUFBLEUsZ0JBQUEsQyxnQkFBQSxDLENBQ0FBLFNBQUEsQyxnQkFBQSxHLENBQ0EsSyxTQUFBLEUsZ0JBQUEsRUFBb0JBLFNBQXBCLEMsQ0FDQUgsU0FBQSxDLElBQUEsRSxnQkFBQSxDQUE0QixJLDJCQUN4QkcsU0FBQSxDLGdCQUFBLEcsQ0FDQUgsU0FBQSxDLE1BQUEsRyxDQUNBLEssZ0JBQUEsRSxnQkFBQSxFLGdCQUFBLEMsZ0NBQUEsQyxFQUhKLEMsR0F2RVIsRSxnQkFBQSxFQThFWUksU0FBRCxFLDJCQUNQaEMsT0FBQSxDLGdCQUFBLEVBQVlnQyxTQUFaLEMsRUEvRUosQyxFQVIyQixDQUFuQyxDLEVBREosQ0E4RkFkLFFBQUEsR0FDQSxTQUFTZSxTQUFULENBQTJCQyxTQUEzQixDLDJCQUNJLElBQUlDLFNBQUosQ0FDQSxHLENBQ0lBLFNBQUEsQ0FBTSxJQUFJQyxHQUFKLENBQVFGLFNBQVIsQyxFQUVWLE1BQU9HLFNBQVAsQyxtQkFHT0YsU0FBQSxDLFVBQUEsSSxrQkFFWCxNQUFNRyxTQUFBLENBQWdDLEMsbUJBQ2xDLEMsSUFEa0MsQyx3QkFFbEMsQyxLQUZrQyxDLDRCQUdsQyxDLEdBSGtDLEMsNkJBSWxDLEMsS0FKa0MsQyw0QkFLbEMsQyxHQUxrQyxDLFVBTWxDLEMsSUFOa0MsQ0FBdEMsQ0FRQUMsR0FBQSxDLGdCQUFBLEUsZ0JBQUEsRSxpQkFBQSxDQUEwQyxDLFVBQ3RDLEMsZ0JBRHNDLEMsY0FFdEMsQyxnQkFGc0MsQyxVQUd0QyxDQUFVLEMsTUFDTixDQUFNLEMsT0FBRSxDLEVBQUYsQ0FEQSxDLFVBRU4sQ0FBVSxDLE9BQ04sQyxnQkFETSxDLFVBRU4sQyxJQUZNLEMsVUFHTixDQUFVTixTQUhKLENBRkosQyxjQVFOLENBQWMsQyxPQUFFLEMsZ0JBQUYsQ0FSUixDLGdCQVNOLENBQWdCLEMsT0FDWixDLGdCQURZLEMsVUFFWixDQUFXTyxTQUFELEUsSUFDRixDQUFDQSxTLENBQ0QsTSxHQUFBLEMsWUFKSSxDQVRWLEMsa0JBaUJOLENBQWtCLEMsT0FBRSxDLFdBQUYsQ0FqQlosQyxTQWtCTixDQUFTLEMsT0FBRSxDLEVBQUYsQyxVQUFhLENBQVdDLFNBQUQsRUFBWSxDQUFDQSxTQUFELEVBQVVBLFNBQUEsQyxnQkFBQSxFQUFZLGNBQVosQ0FBVixDLElBQUEsQyxHQUFuQyxDQWxCSCxDLGNBNEJOLENBQWMsQyxPQUFFLEMsR0FBRixDLFVBQWdCLEMsR0FBaEIsQ0E1QlIsQyxlQTZCTixDQUFlLEMsT0FBRSxDLEdBQUYsQyxVQUFZLEMsR0FBWixDQTdCVCxDLGdCQThCTixDQUFnQixDLE9BQUUsQyxNQUFGLEMsVUFBZSxDLEdBQWYsQ0E5QlYsQyxtQkErQk4sQ0FBbUIsQyxPQUFFLEMsTUFBRixDLFVBQWUsQyxHQUFmLENBL0JiLEMsZ0JBZ0NOLENBQWdCLEMsT0FBRSxDLE1BQUYsQyxVQUFlLEMsR0FBZixDQWhDVixDLGVBaUNOLENBQWUsQyxPQUNYLENBQU8sQ0FDSCxDLElBQ0ksQyxJQURKLEMsTUFFSSxDLHlCQUZKLEMsV0FHSSxDLElBSEosQyxZQUlJLENBQVlDLE1BQUEsQyxnQkFBQSxFQUFjLEVBQWQsQ0FBa0JKLFNBQWxCLENBSmhCLENBREcsQ0FPSCxDLElBQ0ksQyxJQURKLEMsTUFFSSxDLGdCQUZKLEMsV0FHSSxDLEdBSEosQyxZQUlJLENBQVksQyxtQkFDUixDLElBRFEsQyx3QkFFUixDLElBRlEsQyw0QkFHUixDLEdBSFEsQyw2QkFJUixDLE1BSlEsQyw0QkFLUixDLElBTFEsQyxVQU1SLEMsR0FOUSxDQUpoQixDQVBHLENBb0JILEMsSUFDSSxDLElBREosQyxNQUVJLEMsZ0JBRkosQyxXQUdJLEMsR0FISixDLFlBSUksQ0FBWSxDLG1CQUNSLEMsSUFEUSxDLHdCQUVSLEMsS0FGUSxDLDRCQUdSLEMsSUFIUSxDLDZCQUlSLEMsSUFKUSxDLDRCQUtSLEMsSUFMUSxDLFVBTVIsQyxJQU5RLENBSmhCLENBcEJHLENBREksQyxVQW1DWCxDLEdBbkNXLENBakNULENBSDRCLEMsYUEwRXRDLENBQWEsQyxVQUNULENBQVUsQyxNQUFFLEMsZ0JBQUYsQ0FERCxDLFVBRVQsQ0FBVSxDLE1BQUUsQyxnQkFBRixDQUZELEMsaUJBR1QsQ0FBaUIsQyxNQUFFLEMsTUFBRixDQUhSLEMsZ0JBSVQsQ0FBZ0IsQyxNQUFFLEMsZ0JBQUYsQ0FKUCxDQTFFeUIsQyxPQWdGdEMsQ0FBTyxVLGtDQUNJLEssZ0JBQUEsR0FBYSxLLGdCQUFBLENBQWIsRSxrQkFqRjJCLEMsWUFtRnRDLEUsMkJBQ1VLLFNBQUEsQ0FBa0J4RCxDQUFBLEMsZ0JBQUEsQyxDQUNsQnlELFNBQUEsQ0FBZ0J6RCxDQUFBLEMsaUNBQUEsQyxDQUNsQndELFNBQUEsQyxnQkFBQSxNLGtCQUNBQyxTQUFBLEMsZ0JBQUEsRSxNQUFBLEMsQ0FHSixNQUFNQyxTQUFBLENBQXFCMUQsQ0FBQSxDLGdCQUFBLEUsY0FBQSxFLGdCQUFBLENBQTNCLENBQ00yRCxTQUFBLENBQUksRUFEVixDQUVNQyxTQUFBLENBQUtDLFNBQUQsRUFBT0EsU0FGakIsQ0FHQUgsU0FBQSxDLGdCQUFBLEVBQXdCLFNBQVVJLFNBQVYsQ0FBaUJDLFNBQWpCLEMsMkJBQ2RDLFNBQUEsQ0FBSWhFLENBQUEsQ0FBRSxJQUFGLEMsQ0FDSmlFLFNBQUEsQ0FBSSxDLElBQ04sQyxHQUFJLENBQU1ILFNBREosQyxNQUVOLENBQU1FLFNBQUEsQyxNQUFBLEUsZ0JBQUEsRSxLQUFBLEdBRkEsQyxXQUdOLENBQVcsQ0FBQyxDQUFDQSxTQUFBLEMsZ0JBQUEsRSxnQkFBQSxFLEtBQUEsR0FIUCxDLFlBSU4sQ0FBWSxDLG1CQUNSLENBQW1CLENBQUMsQ0FBQ0EsU0FBQSxDLGdCQUFBLEUsZ0JBQUEsRSxJQUFBLEUsZ0JBQUEsQ0FEYixDLHdCQUVSLENBQXdCSixTQUFBLENBQUVJLFNBQUEsQyxnQkFBQSxFLGdCQUFBLEUsZ0JBQUEsR0FBRixDQUZoQixDLDRCQUdSLENBQTRCSixTQUFBLENBQUVJLFNBQUEsQyxNQUFBLEUsbUNBQUEsRSxLQUFBLEdBQUYsQ0FIcEIsQyw2QkFJUixDQUE2QkosU0FBQSxDQUFFSSxTQUFBLEMsZ0JBQUEsRSxvQ0FBQSxFLGdCQUFBLEdBQUYsQ0FKckIsQyw0QkFLUixDQUE0QkosU0FBQSxDQUFFSSxTQUFBLEMsTUFBQSxFLGdCQUFBLEUsZ0JBQUEsR0FBRixDQUxwQixDLFVBTVIsQ0FBVUosU0FBQSxDQUFFSSxTQUFBLEMsZ0JBQUEsRSxnQkFBQSxFLEtBQUEsR0FBRixDQU5GLENBSk4sQyxDQWNWQyxTQUFBLEMsWUFBQSxFLG1CQUFBLEUsS0FDSUEsU0FBQSxDLGdCQUFBLEdBQWVBLFNBQUEsQyxJQUFBLEksTUFFZixDQUFBQSxTQUFBLEMsZ0JBQUEsRSx5QkFBQSxDLENBRUpOLFNBQUEsQyxNQUFBLEVBQU9NLFNBQVAsQyxFQXJCSixDLENBdUJBLEssZUFBQSxFQUFxQk4sUyxFQXBIYSxDLGVBc0h0QyxFLDJCQUNVTyxTQUFBLENBQU8sSSxDQUNQQyxTQUFBLENBQU9mLEdBQUEsQyxnQkFBQSxFLGdCQUFBLEVBQWdCLEMsSUFDekIsQywyQkFEeUIsQyxVQUV6QixDQUFVLFNBQVVnQixTQUFWLEMsMkJBQ05wRSxDQUFBLEMsZ0JBQUEsRSxVQUFBLEksZ0JBQUEsRyxDQUNBQSxDQUFBLEMsR0FBRSxDQUFNb0UsU0FBQSxDLElBQUEsQ0FBUixFLGdCQUFBLEcsRUFKcUIsQ0FBaEIsQyxDQU9iRCxTQUFBLEMsZ0JBQUEsRUFBWSxDLElBQ1IsQyxnQkFEUSxDLE9BRVIsQyxnQkFGUSxDQUFaLEMsR0FBQSxDLENBSUFBLFNBQUEsQyxnQkFBQSxFQUFZLEMsSUFDUixDLGdCQURRLEMsT0FFUixDLGVBRlEsQ0FBWixDLEdBQUEsQyxDQUlBRSxVQUFBLENBQVcsVSwyQkFDUEYsU0FBQSxDLGdCQUFBLEcsRUFESixDLEdBQUEsQ0FSQSxDLENBZUksTUFBTUcsU0FBQSxDQUF5QkMsU0FBRCxFLDJCQUMxQixPQUFRQSxTQUFSLEVBQ0ksS0FBSyxJQUFMLENBQ0EsS0FBS0MsU0FBTCxDQUNBLEksRUFBQSxDQUNBLEssZ0JBQUEsQ0FDSXhFLENBQUEsQyx5QkFBQSxFLGdCQUFBLElBQ0EsTUFDSixLLGdCQUFBLENBQ0EsSyxnQkFBQSxDLENBRVEsTUFBTXlFLFNBQUEsQ0FBS3pFLENBQUEsQyxnQkFBQSxDQUFYLENBQ0ksQ0FBQXlFLFNBQUEsQyxLQUFBLE0sTUFBQSxFQUF1QkEsU0FBQSxDLGdCQUFBLE0sRUFBdkIsQyxFQUNBQSxTQUFBLEMsZ0JBQUEsRSxnQkFBQSxDLENBRUp6RSxDQUFBLEMsZ0JBQUEsRSxNQUFBLEcsRUFFSixNQUNKLFFBQ0lhLE9BQUEsQyxLQUFBLEUsZ0JBQVksQ0FBMEIwRCxTQUF0QyxFQWxCUixDLENBREosQ0FzQkFELFNBQUEsQ0FBc0JKLFNBQUEsQyxnQkFBQSxDQUF0QixFQUNBLE1BQU1RLFNBQUEsQ0FBZ0IxRSxDQUFBLEMsZ0JBQUEsQ0FBdEIsQ0FDQTBFLFNBQUEsQyxJQUFBLEUsZ0JBQUEsQ0FBMkIsSSwyQkFDakJDLFNBQUEsQ0FBa0JELFNBQUEsQyxnQkFBQSxHLENBQ3hCSixTQUFBLENBQXNCSyxTQUF0QixDLEVBRkosQyxFQUtKLE1BQU1DLFNBQUEsQ0FBZ0I1RSxDQUFBLEMsZ0JBQUEsQ0FBdEIsQ0FDQTRFLFNBQUEsQyxnQkFBQSxFQUE0QixDLFNBQ3hCLEMsRUFEd0IsQ0FBNUIsRSxDQU9JLE1BQU1DLFNBQUEsQ0FBVTdFLENBQUEsQyxnQkFBQSxDQUFoQixDQUNNOEUsU0FBQSxDQUFVOUUsQ0FBQSxDLHVDQUFBLENBRGhCLENBRU0rRSxTQUFBLENBQTBCQyxTQUFELEUsMkJBQzNCQSxTQUFBLENBQW1CQSxTQUFBLEUsZ0JBQW5CLENBQ0EsT0FBUUEsU0FBUixFQUNJLEssZ0JBQUEsQ0FDSWhGLENBQUEsQyxnQkFBQSxFLEtBQUEsRSxFQUFBLEMsQ0FDQUEsQ0FBQSxDLGdCQUFBLEUsZ0JBQUEsRSxFQUFBLEMsQ0FDQTZFLFNBQUEsQyxnQkFBQSxHLENBQ0FDLFNBQUEsQyxNQUFBLEdBSEEsQ0FJQSxNQUNKLEssZ0JBQUEsQ0FDSUQsU0FBQSxDLGdCQUFBLEcsQ0FDQUMsU0FBQSxDLGdCQUFBLEdBREEsQ0FFQSxNQUNKLEksYUFBQSxDQUNJOUUsQ0FBQSxDLDZCQUFBLEUsS0FBQSxFLEVBQUEsQyxDQUNBQSxDQUFBLEMsZ0JBQUEsRSxnQkFBQSxFLEVBQUEsQyxDQUNBOEUsU0FBQSxDLGdCQUFBLEcsQ0FDQUQsU0FBQSxDLGdCQUFBLEdBSEEsQ0FJQSxNQUNKLFFBQ0loRSxPQUFBLEMsZ0JBQUEsRSxnQkFBWSxDQUE4Qm1FLFNBQTFDLEVBbEJSLEMsQ0FKSixDQXlCQUQsU0FBQSxDQUF1QmIsU0FBQSxDLGdCQUFBLENBQXZCLEVBQ0EsTUFBTWUsU0FBQSxDQUFvQmpGLENBQUEsQyxxQ0FBQSxDQUExQixDQUNBaUYsU0FBQSxDLElBQUEsRSxRQUFBLENBQStCLEksMkJBQ3JCQyxTQUFBLENBQWtCRCxTQUFBLEMsZ0JBQUEsRyxDQUN4QkYsU0FBQSxDQUF1QkcsU0FBdkIsQyxFQUZKLEMsR0FTQWxGLENBQUEsQyxtQkFBQSxFLGdCQUFBLEcsQ0FDQUEsQ0FBQSxDLGdCQUFBLEUsZ0JBQUEsRSxnQkFBQSxDLEdBQUEsQyxDQUNBQSxDQUFBLEMsd0JBQUEsRSxJQUFBLEUsZ0JBQUEsQ0FBeUMsVSwyQkFDakNBLENBQUEsQ0FBRSxJQUFGLEUsZ0JBQUEsRSxnQkFBQSxDLENBRUFBLENBQUEsQyxnQkFBQSxFLGdCQUFBLEcsQ0FJQUEsQ0FBQSxDLGdCQUFBLEUsZ0JBQUEsRyxFQVBSLEMsRUFXSixNQUFNbUYsU0FBQSxDQUFzQm5GLENBQUEsQyxpQ0FBQSxFLGdCQUFBLEUsZ0JBQUEsQ0FBNUIsQ0FDSW1GLFMsQ0FDQW5GLENBQUEsQyxnQkFBQSxFLGdCQUFBLEcsQ0FHQUEsQ0FBQSxDLGdCQUFBLEUsZ0JBQUEsRyxDQUVKQSxDQUFBLEMsZ0JBQUEsRSxJQUFBLEUsZ0JBQUEsQ0FBa0QsVSwyQkFDMUNBLENBQUEsQ0FBRSxJQUFGLEUsZ0JBQUEsRSxTQUFBLEMsQ0FFQUEsQ0FBQSxDLGdCQUFBLEUsZ0JBQUEsRyxDQUlBQSxDQUFBLEMsZ0JBQUEsRSxnQkFBQSxHLEVBUFIsRSxDQWNJQSxDQUFBLEMsZ0JBQUEsRSxJQUFBLEUsZ0JBQUEsQ0FBbUMsSUFBTS9CLFNBQUEsQ0FBVSxJQUFWLENBQWdCLEssR0FBaEIsQ0FBd0IsSyxHQUF4QixDQUFnQyxXLDJCQUMvRG1ILFNBQUEsQ0FBTyxNQUFNM0UsS0FBQSxDLGdCQUFBLEMsQ0FDYjRFLFNBQUEsQ0FBTyxNQUFNRCxTQUFBLEMsTUFBQSxHLENBQ2JFLFNBQUEsQ0FBSTVFLElBQUEsQyxnQkFBQSxFQUFlMkUsU0FBZixDQUFxQixJQUFyQixDLE1BQUEsQyxDQUNWRSxLQUFBLENBQU1ELFNBQU4sQyxFQUpxQyxDQUF6QyxDLEdBV0E1RixTQUFBLEMsZ0JBQUEsQ0FBNEJNLENBQUEsQyxnQkFBQSxDQUE1QixDQUFtRCxJLDJCQUMvQyxJQUFJd0YsU0FBSixDLE1BQ1EsQyxLQUNKLEMsZ0JBREksQyxNQUVKLENBQU0sQyxjQUNGLENBQWMsQyxJQUNWLENBQUl0QixTQUFBLEMsSUFBQSxDQURNLEMsVUFFVixDQUFVbEUsQ0FBQSxDLGdCQUFBLEUsZ0JBQUEsR0FGQSxDLE1BR1YsQ0FBTUEsQ0FBQSxDLGdCQUFBLEUsZ0JBQUEsR0FISSxDLFNBSVYsQ0FBVSxDQUFBd0YsU0FBQSxDQUFLeEYsQ0FBQSxDLGdCQUFBLENBQUwsQ0FBRCxHQUEyQyxJQUEzQyxFQUFtRHdGLFNBQUEsR0FBTyxLLEdBQTFELENBQW1FLEssR0FBbkUsQ0FBNEVBLFNBQUEsQyxnQkFBQSxHQUozRSxDLGNBS1YsQ0FBY3hGLENBQUEsQyxpQ0FBQSxFLGdCQUFBLEdBTEosQyxnQkFNVixDQUFnQkEsQ0FBQSxDLG1DQUFBLEUsS0FBQSxHQU5OLEMsa0JBT1YsQ0FBa0JBLENBQUEsQyxnQkFBQSxFLEtBQUEsR0FQUixDLFVBUVYsQ0FBVUEsQ0FBQSxDLGdCQUFBLEUsZ0JBQUEsR0FSQSxDLFVBU1YsQ0FBVUEsQ0FBQSxDLDZCQUFBLEUsZ0JBQUEsR0FUQSxDLGlCQVVWLENBQWlCQSxDQUFBLEMsb0NBQUEsRSxnQkFBQSxHQVZQLEMsZ0JBV1YsQ0FBZ0JBLENBQUEsQyxnQkFBQSxFLGdCQUFBLEdBWE4sQyxhQWFWLENBQWFBLENBQUEsQyxnQkFBQSxFLEtBQUEsR0FiSCxDLGNBY1YsQ0FBY0EsQ0FBQSxDLGdCQUFBLEUsZ0JBQUEsRSxTQUFBLENBZEosQyxlQWVWLENBQWVBLENBQUEsQyxnQkFBQSxFLEtBQUEsR0FmTCxDLGdCQWdCVixDQUFnQkEsQ0FBQSxDLGdCQUFBLEUsZ0JBQUEsR0FoQk4sQyxtQkFpQlYsQ0FBbUJBLENBQUEsQywrQkFBQSxFLEtBQUEsR0FqQlQsQyxnQkFrQlYsQ0FBZ0JBLENBQUEsQyxnQkFBQSxFLGdCQUFBLEdBbEJOLENBRFosQ0FGRixDLEVBRlosQ0EyQkcsSSxFQTNCSCxDLEdBaUNBLE1BQU15RixTQUFBLENBQWUsQ0FBQ0MsU0FBRCxDQUFRQyxTQUFSLEcsMkJBQ2pCLElBQUlDLFNBQUEsQ0FBV0YsU0FBQSxDLGdCQUFBLEssSUFBZixDQUNBQSxTQUFBLEMsZ0JBQUEsRSxnQkFBQSxFLGdCQUFBLEUsT0FBQSxDQUF3Q0UsU0FBQSxDLEdBQXhDLEMsRUFGSixDQUlNQyxTQUFBLENBQW1CN0YsQ0FBQSxDLGdCQUFBLEUsZ0JBQUEsRUFDaEIsQyxZQUFFLEMsZ0JBQUYsQyxXQUF5QixDLGdCQUF6QixDQURnQixFLGdCQUFBLEVBRVAsQyxTQUNkLENBQVMsQ0FBQzhGLFNBQUQsQ0FBWUMsU0FBWixDQUFtQkMsU0FBbkIsRywyQkFDQ0MsU0FBQSxDQUFRRCxTLENBQ1JFLFNBQUEsQ0FBVWxHLENBQUEsQyxnQkFBQSxFLGdCQUFBLEksVUFBQSxFQUFnQzhGLFNBQWhDLEMsQ0FDaEJJLFNBQUEsQyxnQkFBQSxFLElBQUEsRSxnQkFBQSxFLGdCQUFBLEUsZ0JBQUEsRSxVQUFBLEUsZ0JBQUEsRSxRQUFBLENBQW9GSCxTQUFwRixDLENBQ0FHLFNBQUEsQyxnQkFBQSxFLGdCQUFBLEUsZ0JBQUEsRUFBZ0NELFNBQUEsQyxnQkFBQSxDQUFoQyxDLENBQ0FDLFNBQUEsQyxnQkFBQSxFLG9DQUFBLEUsS0FBQSxFQUF1REQsU0FBQSxDLFlBQUEsRSw2QkFBQSxDQUF2RCxDLENBQ0FDLFNBQUEsQyxnQkFBQSxFLGdCQUFBLEUsS0FBQSxFQUFzREQsU0FBQSxDLGdCQUFBLEUsZ0JBQUEsQ0FBdEQsQyxDQUNBQyxTQUFBLEMsZ0JBQUEsRSxnQkFBQSxFLGdCQUFBLEVBQWtERCxTQUFBLEMsZ0JBQUEsRSxnQkFBQSxDQUFsRCxDLENBQ0FDLFNBQUEsQyxnQkFBQSxFLGdCQUFBLEUsZ0JBQUEsRUFBc0RELFNBQUEsQyxZQUFBLEUsNEJBQUEsRyxHQUF0RCxDLENBQ0FDLFNBQUEsQyxnQkFBQSxFLGlCQUFBLEUsZ0JBQUEsRUFBb0NELFNBQUEsQyxZQUFBLEUsZ0JBQUEsRyxHQUFwQyxDLENBQ0FDLFNBQUEsQyxnQkFBQSxFLGdCQUFBLEUsZ0JBQUEsRSxFQUFzQyxDQUFLSCxTQUEzQyxDLENBQ0lFLFNBQUEsQyxnQkFBQSxDLEVBQ0FDLFNBQUEsQyxnQkFBQSxFLGdCQUFBLEUsZ0JBQUEsRSxVQUFBLEMsSUFBQSxDLENBRUpBLFNBQUEsQyxnQkFBQSxFLGdCQUFBLEUsTUFBQSxFLFNBQUEsQ0FBaURELFNBQUEsQyxXQUFBLENBQWpELEMsQ0FFSUEsU0FBQSxDLGdCQUFBLEMsR0FDQUgsU0FBQSxDLGdCQUFBLEUsZ0JBQUEsRSxVQUFBLEUsTUFBQSxDLENBQ0F6QixVQUFBLENBQVcsSUFBTTZCLFNBQUEsQyxnQkFBQSxFLGdCQUFBLEUsTUFBQSxFLFVBQUEsQyxJQUFBLENBQWpCLEMsR0FBQSxDLEdBbkJNLEMsV0F1QmQsQyxJQXZCYyxDLFlBd0JkLENBQVlULFNBeEJFLENBRk8sQ0FKekIsQ0FnQ01VLFNBQUEsQ0FBa0IsSSwyQkFDZEMsU0FBQSxDQUFnQmxDLFNBQUEsQyxnQkFBQSxHQUFzQixFLENBQ3hDa0MsU0FBQSxDLGdCQUFBLEksS0FFQUEsU0FBQSxDLGdCQUFBLEVBQW1CLEMsSUFDZixDLElBRGUsQyxNQUVmLEMsZ0JBRmUsQyxXQUdmLEMsSUFIZSxDLFlBSWYsQ0FBWTdDLE1BQUEsQyxnQkFBQSxFQUFjLEVBQWQsQ0FBa0JKLFNBQWxCLENBSkcsQ0FBbkIsQyxDQU9KMEMsU0FBQSxDLGdCQUFBLEUsZ0JBQUEsRUFDQSxVQUFXUSxTQUFYLElBQTJCRCxTQUEzQixDLENBRUlQLFNBQUEsQyxnQkFBQSxFLGdCQUFBLENBQXlDUSxTQUF6QyxDLEdBOUNSLENBaURBRixTQUFBLEUsR0F0VjhCLENBQTFDLEMsRUF2T0osRyIsInNvdXJjZXNDb250ZW50IjpbIihmdW5jdGlvbiAoKSB7XG4gICAgJ3VzZSBzdHJpY3QnO1xuXG4gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gICAgQ29weXJpZ2h0IChjKSBNaWNyb3NvZnQgQ29ycG9yYXRpb24uXHJcblxyXG4gICAgUGVybWlzc2lvbiB0byB1c2UsIGNvcHksIG1vZGlmeSwgYW5kL29yIGRpc3RyaWJ1dGUgdGhpcyBzb2Z0d2FyZSBmb3IgYW55XHJcbiAgICBwdXJwb3NlIHdpdGggb3Igd2l0aG91dCBmZWUgaXMgaGVyZWJ5IGdyYW50ZWQuXHJcblxyXG4gICAgVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiBBTkQgVEhFIEFVVEhPUiBESVNDTEFJTVMgQUxMIFdBUlJBTlRJRVMgV0lUSFxyXG4gICAgUkVHQVJEIFRPIFRISVMgU09GVFdBUkUgSU5DTFVESU5HIEFMTCBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZXHJcbiAgICBBTkQgRklUTkVTUy4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBCRSBMSUFCTEUgRk9SIEFOWSBTUEVDSUFMLCBESVJFQ1QsXHJcbiAgICBJTkRJUkVDVCwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIE9SIEFOWSBEQU1BR0VTIFdIQVRTT0VWRVIgUkVTVUxUSU5HIEZST01cclxuICAgIExPU1MgT0YgVVNFLCBEQVRBIE9SIFBST0ZJVFMsIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBORUdMSUdFTkNFIE9SXHJcbiAgICBPVEhFUiBUT1JUSU9VUyBBQ1RJT04sIEFSSVNJTkcgT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgVVNFIE9SXHJcbiAgICBQRVJGT1JNQU5DRSBPRiBUSElTIFNPRlRXQVJFLlxyXG4gICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogKi9cclxuICAgIC8qIGdsb2JhbCBSZWZsZWN0LCBQcm9taXNlLCBTdXBwcmVzc2VkRXJyb3IsIFN5bWJvbCAqL1xyXG5cclxuXHJcbiAgICBmdW5jdGlvbiBfX2F3YWl0ZXIodGhpc0FyZywgX2FyZ3VtZW50cywgUCwgZ2VuZXJhdG9yKSB7XHJcbiAgICAgICAgZnVuY3Rpb24gYWRvcHQodmFsdWUpIHsgcmV0dXJuIHZhbHVlIGluc3RhbmNlb2YgUCA/IHZhbHVlIDogbmV3IFAoZnVuY3Rpb24gKHJlc29sdmUpIHsgcmVzb2x2ZSh2YWx1ZSk7IH0pOyB9XHJcbiAgICAgICAgcmV0dXJuIG5ldyAoUCB8fCAoUCA9IFByb21pc2UpKShmdW5jdGlvbiAocmVzb2x2ZSwgcmVqZWN0KSB7XHJcbiAgICAgICAgICAgIGZ1bmN0aW9uIGZ1bGZpbGxlZCh2YWx1ZSkgeyB0cnkgeyBzdGVwKGdlbmVyYXRvci5uZXh0KHZhbHVlKSk7IH0gY2F0Y2ggKGUpIHsgcmVqZWN0KGUpOyB9IH1cclxuICAgICAgICAgICAgZnVuY3Rpb24gcmVqZWN0ZWQodmFsdWUpIHsgdHJ5IHsgc3RlcChnZW5lcmF0b3JbXCJ0aHJvd1wiXSh2YWx1ZSkpOyB9IGNhdGNoIChlKSB7IHJlamVjdChlKTsgfSB9XHJcbiAgICAgICAgICAgIGZ1bmN0aW9uIHN0ZXAocmVzdWx0KSB7IHJlc3VsdC5kb25lID8gcmVzb2x2ZShyZXN1bHQudmFsdWUpIDogYWRvcHQocmVzdWx0LnZhbHVlKS50aGVuKGZ1bGZpbGxlZCwgcmVqZWN0ZWQpOyB9XHJcbiAgICAgICAgICAgIHN0ZXAoKGdlbmVyYXRvciA9IGdlbmVyYXRvci5hcHBseSh0aGlzQXJnLCBfYXJndW1lbnRzIHx8IFtdKSkubmV4dCgpKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICB0eXBlb2YgU3VwcHJlc3NlZEVycm9yID09PSBcImZ1bmN0aW9uXCIgPyBTdXBwcmVzc2VkRXJyb3IgOiBmdW5jdGlvbiAoZXJyb3IsIHN1cHByZXNzZWQsIG1lc3NhZ2UpIHtcclxuICAgICAgICB2YXIgZSA9IG5ldyBFcnJvcihtZXNzYWdlKTtcclxuICAgICAgICByZXR1cm4gZS5uYW1lID0gXCJTdXBwcmVzc2VkRXJyb3JcIiwgZS5lcnJvciA9IGVycm9yLCBlLnN1cHByZXNzZWQgPSBzdXBwcmVzc2VkLCBlO1xyXG4gICAgfTtcblxuICAgIGZ1bmN0aW9uIG1hbmFnZUFQSUNhbGwocHJlZml4LCBidG4sIGZ1bmMsIG9uUmVzdWx0KSB7XG4gICAgICAgIGNvbnN0IHN1Y2Nlc3NJY29uID0gJChgIyR7cHJlZml4fS1zdWNjZXNzYCk7XG4gICAgICAgIGNvbnN0IGZhaWx1cmVJY29uID0gJChgIyR7cHJlZml4fS1mYWlsdXJlYCk7XG4gICAgICAgIGNvbnN0IHBlbmRpbmdJY29uID0gJChgIyR7cHJlZml4fS1wZW5kaW5nYCk7XG4gICAgICAgIGNvbnN0IG1lc3NhZ2VzID0gJChgIyR7cHJlZml4fS1tZXNzYWdlc2ApO1xuICAgICAgICBsZXQgYWN0aW9uUGVuZGluZyA9IGZhbHNlO1xuICAgICAgICBzdWNjZXNzSWNvbi5oaWRlKCk7XG4gICAgICAgIGZhaWx1cmVJY29uLmhpZGUoKTtcbiAgICAgICAgcGVuZGluZ0ljb24uaGlkZSgpO1xuICAgICAgICBidG4ub24oXCJjbGlja1wiLCAoKSA9PiB7XG4gICAgICAgICAgICBpZiAoYWN0aW9uUGVuZGluZylcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICBhY3Rpb25QZW5kaW5nID0gdHJ1ZTtcbiAgICAgICAgICAgIHBlbmRpbmdJY29uLnJlbW92ZUNsYXNzKFwiaGlkZVwiKTtcbiAgICAgICAgICAgIHBlbmRpbmdJY29uLmh0bWwoXCJUZXN0aW5nIENvbm5lY3Rpb24gLi4uXCIpO1xuICAgICAgICAgICAgc3VjY2Vzc0ljb24uYWRkQ2xhc3MoXCJoaWRlXCIpO1xuICAgICAgICAgICAgZmFpbHVyZUljb24uYWRkQ2xhc3MoXCJoaWRlXCIpO1xuICAgICAgICAgICAgbWVzc2FnZXMuaHRtbChcIlwiKTtcbiAgICAgICAgICAgIGNvbnN0IHsgYm9keSwgdXJsIH0gPSBmdW5jKCk7XG4gICAgICAgICAgICAvLyB4eCBjb25zb2xlLmxvZyhcInh4eHh4XCIsIGJvZHkpO1xuICAgICAgICAgICAgZmV0Y2godXJsLCB7XG4gICAgICAgICAgICAgICAgbWV0aG9kOiBcIlBPU1RcIixcbiAgICAgICAgICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgICAgICAgICAgIFwiQ29udGVudC1UeXBlXCI6IFwiYXBwbGljYXRpb24vanNvblwiLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgYm9keTogSlNPTi5zdHJpbmdpZnkoYm9keSksXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIC50aGVuKChkYXRhKSA9PiBkYXRhLmpzb24oKSlcbiAgICAgICAgICAgICAgICAudGhlbigoanNvbikgPT4ge1xuICAgICAgICAgICAgICAgIGFjdGlvblBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICBwZW5kaW5nSWNvbi5oaWRlKCk7XG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2coSlNPTi5zdHJpbmdpZnkoanNvbiwgbnVsbCwgXCIgXCIpKTtcbiAgICAgICAgICAgICAgICBpZiAoanNvbi5yZXN1bHQgPT09IFwib2tcIikge1xuICAgICAgICAgICAgICAgICAgICBzdWNjZXNzSWNvbi5yZW1vdmVDbGFzcyhcImhpZGVcIik7XG4gICAgICAgICAgICAgICAgICAgIGZhaWx1cmVJY29uLmFkZENsYXNzKFwiaGlkZVwiKTtcbiAgICAgICAgICAgICAgICAgICAgbWVzc2FnZXMuaHRtbChqc29uLm1lc3NhZ2UucmVwbGFjZShcIlxcblwiLCBcIjxicj5cIikpO1xuICAgICAgICAgICAgICAgICAgICBvblJlc3VsdChudWxsLCBqc29uKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGFkYXB0ID0gKHN0cikgPT4gIXN0clxuICAgICAgICAgICAgICAgICAgICAgICAgPyBcIlwiXG4gICAgICAgICAgICAgICAgICAgICAgICA6IHN0clxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5zcGxpdChcIlxcblwiKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tYXAoKGEpID0+IGA8cD4ke2F9PC9wPmApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmpvaW4oXCJcXG5cIik7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGFkYXB0MiA9IChzdHIpID0+IChBcnJheS5pc0FycmF5KHN0cikgPyBzdHIubWFwKGFkYXB0KS5qb2luKFwiXFxuXCIpIDogYWRhcHQoc3RyKSk7XG4gICAgICAgICAgICAgICAgICAgIHN1Y2Nlc3NJY29uLmFkZENsYXNzKFwiaGlkZVwiKTtcbiAgICAgICAgICAgICAgICAgICAgZmFpbHVyZUljb24ucmVtb3ZlQ2xhc3MoXCJoaWRlXCIpO1xuICAgICAgICAgICAgICAgICAgICBtZXNzYWdlcy5odG1sKGFkYXB0Mihqc29uLm1lc3NhZ2UpICsgYWRhcHQyKGpzb24uZXh0cmEpKTtcbiAgICAgICAgICAgICAgICAgICAgb25SZXN1bHQobmV3IEVycm9yKGpzb24ucmVzdWx0KSwganNvbik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAuY2F0Y2goKGVycikgPT4ge1xuICAgICAgICAgICAgICAgIGFjdGlvblBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICBwZW5kaW5nSWNvbi5hZGRDbGFzcyhcImhpZGVcIik7XG4gICAgICAgICAgICAgICAgc3VjY2Vzc0ljb24uYWRkQ2xhc3MoXCJoaWRlXCIpO1xuICAgICAgICAgICAgICAgIGZhaWx1cmVJY29uLnJlbW92ZUNsYXNzKFwiaGlkZVwiKTtcbiAgICAgICAgICAgICAgICBtZXNzYWdlcy5odG1sKFwiaW50ZXJuYWwgZXJyb3IgXCIgKyBlcnIubWVzc2FnZSk7XG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2coXCJlcnJcIiwgZXJyKTtcbiAgICAgICAgICAgICAgICBvblJlc3VsdChlcnIsIG51bGwpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGNvbnN0IHByaWNpbmdUYWJsZUlkID0gXCJwcmN0YmxfMU9KdDQ5QkNOY2NienNWemthQU5PZ0ZMXCI7XG4gICAgY29uc3QgcHVibGlzaGFibGVLZXkgPSBcInBrX2xpdmVfNTFIc0Uxc0JDTmNjYnpzVnp0N3phcTJ1djIwcGtyeVdsbEF6dlpnWmQ1QWh3Rkk5QTNxQkllT0p2SndRRjA4bERvTHBGcUxqd215QTc5d25QbllMc3ZLanQwMDlmMDBWcENXXCI7XG4gICAgZnVuY3Rpb24gZmV0Y2hMaWNlbmNlSW5mbyhiYXNlVXJsID0gXCJcIikge1xuICAgICAgICByZXR1cm4gX19hd2FpdGVyKHRoaXMsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICAgICAgY29uc3Qgcm9vdCA9IGAke2Jhc2VVcmx9L29wY3VhLWVuZHBvaW50MmA7XG4gICAgICAgICAgICBjb25zdCB1cmwgPSBgJHtyb290fS9saWNlbmNlSW5mb2A7XG4gICAgICAgICAgICBjb25zdCBkYXRhID0geWllbGQgZmV0Y2godXJsLCB7XG4gICAgICAgICAgICAgICAgbWV0aG9kOiBcIlBPU1RcIixcbiAgICAgICAgICAgICAgICBoZWFkZXJzOiB7IFwiQ29udGVudC1UeXBlXCI6IFwiYXBwbGljYXRpb24vanNvblwiIH0sXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGNvbnN0IHRvZGF5ID0gbmV3IERhdGUoKS50b0lTT1N0cmluZygpO1xuICAgICAgICAgICAgaWYgKGRhdGEuc3RhdHVzICE9PSAyMDApIHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhcImZldGNoaW5nIGZhaWxlZCB3aXRoIGVycm9yXCIsIGRhdGEuc3RhdHVzLCBkYXRhLnN0YXR1c1RleHQpO1xuICAgICAgICAgICAgICAgIHJldHVybiB7IHN0YXR1czogXCJGQUlMRURcIiwgdHlwZTogXCJGUkVFV0FSRVwiLCBsaWNlbmNlSW5mbzogeyBleHBpcnlEYXRlOiB0b2RheSB9IH07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCBqc29uID0geWllbGQgZGF0YS5qc29uKCk7XG4gICAgICAgICAgICByZXR1cm4ganNvbjtcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIGNvbnN0IGRlY2xhcmVMaWNlbmNlV2lkZ2V0ID0gKCkgPT4ge1xuICAgICAgICAkLndpZGdldChcInN0ZXJmaXZlLmxpY2VuY2VXaWRnZXRcIiwge1xuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICAgIGJhc2VVcmw6IFwiXCIsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgX2NyZWF0ZSgpIHtcbiAgICAgICAgICAgICAgICBjb25zdCB0aGF0ID0gdGhpcztcbiAgICAgICAgICAgICAgICBjb25zdCBjb250YWN0TGluayA9IGA8YSBocmVmPVwibWFpbHRvOnN1cHBvcnRAc3RlcmZpdmUuY29tXCIgc3ViamVjdD1cIkBvcGN1YS9mb3Itbm9kZS1yZWQgc3VwcG9ydCByZXF1ZXN0XCI+bWFpbHRvOnN1cHBvcnRAc3RlcmZpdmUuY29tPC9hPmA7XG4gICAgICAgICAgICAgICAgY29uc3Qgd2Vic2l0ZUxpbmsgPSBgPGEgaHJlZj1cImh0dHBzOi8vd3d3LnN0ZXJmaXZlLmNvbS9vcGN1YS9mb3Itbm9kZS1yZWRcIiB0YXJnZXQ94oCdX2JsYW5r4oCdPlN0ZXJmaXZlJ3Mgd2Vic2l0ZSA8L2E+YDtcbiAgICAgICAgICAgICAgICBmZXRjaExpY2VuY2VJbmZvKHRoYXQuYmFzZVVybClcbiAgICAgICAgICAgICAgICAgICAgLnRoZW4oKGpzb24pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgbGV0IGljb24gPSBcIlwiO1xuICAgICAgICAgICAgICAgICAgICBsZXQgbXNnID0gXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgbGV0IGRldGFpbHMgPSBcIlwiO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBzdGF0dXMgPSBqc29uLnN0YXR1cztcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZGF5TGVmdCA9IGpzb24uZGF5c0xlZnQ7XG4gICAgICAgICAgICAgICAgICAgIHN3aXRjaCAoc3RhdHVzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjYXNlIFwiQVVUSE9SSVpFRFwiOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGljb24gPSBcImZhIGZhLWNoZWNrLWNpcmNsZVwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN3aXRjaCAoanNvbi50eXBlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgXCJUUklBTFwiOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtc2cgPSBcIlRyaWFsIGxpY2VuY2VcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRldGFpbHMgPSBgVGhlIFRyaWFsIHdpbGwgZXhwaXJlIGluICR7ZGF5TGVmdH0gZGF5cy5cXG5CdXkgb25saW5lIGFuZCB2aXNpdCAke3dlYnNpdGVMaW5rfSB0byBhY3F1aXJlIGEgbGljZW5zZS5gO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSBcIlBST0ZFU1NJT05BTFwiOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbXNnID0gYFlvdXIgbGljZW5jZSBpcyB2YWxpZC5gO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGRheUxlZnQgPCA5MCAmJiBkYXlMZWZ0ID49IDApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtc2cgKz0gYCBJdCB3aWxsIGV4cGlyZSBpbiAke2RheUxlZnR9IGRheXMuYDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGRldGFpbHMgPSBgJHt3ZWJzaXRlTGlua308YnI+JHtjb250YWN0TGlua31gO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV0YWlscyA9IGpzb24ubGljZW5jZUluZm8ubGljZW5jZVR5cGUgKyBcIiAtIFwiICsgKGpzb24ubGljZW5jZUluZm8ub25QcmVtaXNlU2VydmVySG9zdCB8fCBcIlwiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlIFwiRlJFRVdBUkVcIjpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1zZyA9IFwiRnJlZXdhcmUgbGljZW5jZVwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV0YWlscyA9IGBUaGlzIGlzIGEgZnJlZXdhcmUgbGljZW5jZSwgYW5kIGhhdmUgc29tZSBsaW1pdGF0aW9ucy5cXG4ke3dlYnNpdGVMaW5rfSBmb3IgbW9yZSBpbmZvcm1hdGlvbi5gO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSBcIkVYUElSRURcIjpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uID0gXCJmYSBmYS1jYWxlbmRhci10aW1lXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbXNnID0gXCJMaWNlbmNlIGhhcyBleHBpcmVkXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV0YWlscyA9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiWW91ciBsaWNlbnNlIGhhcyBleHBpcmVkLiBQbGVhc2UgY29udGFjdCBvdXIgc3VwcG9ydCB0ZWFtIG9yIHZpc2l0IG91ciB3ZWJzaXRlIHRvIHJlbmV3IHlvdXIgbGljZW5zZSBhbmQgcmVnYWluIGFjY2VzcyB0byBvdXIgc2VydmljZXMuXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgICAgICBjYXNlIFwiRkFJTEVEXCI6XG4gICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGljb24gPSBcImZhIGZhLWV4Y2xhbWF0aW9uLWNpcmNsZVwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1zZyA9IFwiWW91ciBsaWNlbnNlIGlzIGN1cnJlbnRseSBpbnZhbGlkLlwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRldGFpbHMgPSBgUGxlYXNlIGNvbnRhY3QgJHtjb250YWN0TGlua30gb3IgdmlzaXQgb3VyIHdlYnNpdGUgdG8gcmVuZXcgeW91ciBsaWNlbnNlIGFuZCByZWdhaW4gYWNjZXNzIHRvIG91ciBzZXJ2aWNlcy7MgGA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLyoqICovXG4gICAgICAgICAgICAgICAgICAgIC8vIHRoaXMuZWxlbWVudC50ZXh0KFwiTGljZW5jZSBcIiArIEpTT04uc3RyaW5naWZ5KGpzb24pKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5lbGVtZW50LmFkZENsYXNzKFwibGljZW5jZS13aWRnZXRcIik7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZWxlbWVudC5hZGRDbGFzcyhcImxpY2VuY2Utd2lkZ2V0LVwiICsgc3RhdHVzKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5lbGVtZW50LmFwcGVuZCgkKFwiPHNwYW4+XCIpLmFkZENsYXNzKFwibGljZW5jZS13aWRnZXQtaWNvblwiKS5hcHBlbmQoJChcIjxpPlwiKS5hZGRDbGFzcyhpY29uKSkpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmVsZW1lbnQuYXBwZW5kKCQoXCI8c3Bhbj5cIikuYWRkQ2xhc3MoXCJsaWNlbmNlLXdpZGdldC1tc2dcIikudGV4dChtc2cpKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5lbGVtZW50LmFwcGVuZCgkKFwiPGJyPlwiKSk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZWxlbWVudC5hcHBlbmQoJChcIjxzcGFuPlwiKS5hZGRDbGFzcyhcImxpY2VuY2Utd2lkZ2V0LWRldGFpbHNcIikuYXBwZW5kKGRldGFpbHMpKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHN0YXR1cyA9PT0gXCJFWFBJUkVEXCIgfHwgc3RhdHVzID09PSBcIkZBSUxFRFwiIHx8IGpzb24udHlwZSA9PT0gXCJGUkVFV0FSRVwiIHx8IGpzb24udHlwZSA9PT0gXCJUUklBTFwiKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdWJzY3JpYmVCdXR0b24gPSAkKFwiPGJ1dHRvbi8+XCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgc3Vic2NyaWJlQnV0dG9uLmF0dHIoXCJpZFwiLCBcInN1YnNjcmliZS1idXR0b25cIik7XG4gICAgICAgICAgICAgICAgICAgICAgICBzdWJzY3JpYmVCdXR0b24uYXR0cihcImNsYXNzXCIsIFwiYnRuIGJ0bi1wcmltYXJ5XCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgc3Vic2NyaWJlQnV0dG9uLmF0dHIoXCJzdHlsZVwiLCBcIm1hcmdpbi10b3A6IDIwcHg7XCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgc3Vic2NyaWJlQnV0dG9uLnRleHQoXCJTdWJzY3JpYmVcIik7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmVsZW1lbnQuYXBwZW5kKHN1YnNjcmliZUJ1dHRvbik7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzY3JpcHQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwic2NyaXB0XCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gU2V0IGF0dHJpYnV0ZXMgZm9yIHRoZSBzY3JpcHQgZWxlbWVudFxuICAgICAgICAgICAgICAgICAgICAgICAgc2NyaXB0LnNyYyA9IFwiaHR0cHM6Ly9qcy5zdHJpcGUuY29tL3YzL3ByaWNpbmctdGFibGUuanNcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNjcmlwdC5hc3luYyA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBBcHBlbmQgdGhlIHNjcmlwdCBlbGVtZW50IHRvIHRoZSBoZWFkIChvciBib2R5KSBvZiB0aGUgZG9jdW1lbnRcbiAgICAgICAgICAgICAgICAgICAgICAgICQoXCJoZWFkXCIpLmFwcGVuZChzY3JpcHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RyaXBlUHJpY2luZ1RhYmxlID0gJChcIjxzdHJpcGUtcHJpY2luZy10YWJsZS8+XCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gU2V0IGF0dHJpYnV0ZXMgZm9yIHRoZSBlbGVtZW50XG4gICAgICAgICAgICAgICAgICAgICAgICBzdHJpcGVQcmljaW5nVGFibGUuYXR0cihcInByaWNpbmctdGFibGUtaWRcIiwgcHJpY2luZ1RhYmxlSWQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgc3RyaXBlUHJpY2luZ1RhYmxlLmF0dHIoXCJwdWJsaXNoYWJsZS1rZXlcIiwgcHVibGlzaGFibGVLZXkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgc3RyaXBlUHJpY2luZ1RhYmxlLmF0dHIoXCJzdHlsZVwiLCBcImhlaWdodDogMTAwJTttYXgtaGVpZ2h0OiAxMDAlO1wiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cmlwZVByaWNpbmdUYWJsZS5oaWRlKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmVsZW1lbnQuYXBwZW5kKHN0cmlwZVByaWNpbmdUYWJsZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBzdWJzY3JpYmVCdXR0b24ub24oXCJjbGlja1wiLCAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RyaXBlUHJpY2luZ1RhYmxlLnNob3coKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdWJzY3JpYmVCdXR0b24uaGlkZSgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZWxlbWVudC5hdHRyKFwic3R5bGVcIiwgXCJoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcIik7XG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgIC5jYXRjaCgoZXJyKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9LFxuICAgICAgICB9KTtcbiAgICB9O1xuXG4gICAgZGVjbGFyZUxpY2VuY2VXaWRnZXQoKTtcbiAgICBmdW5jdGlvbiBpc1ZhbGlkT1BDX1VBX1VSSShzdHIpIHtcbiAgICAgICAgbGV0IHVybDtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHVybCA9IG5ldyBVUkwoc3RyKTtcbiAgICAgICAgfVxuICAgICAgICBjYXRjaCAoXykge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB1cmwucHJvdG9jb2wgPT09IFwib3BjLnRjcDpcIjtcbiAgICB9XG4gICAgY29uc3QgZGVmYXVsdFN1YnNjcmlwdGlvblBhcmFtZXRlcnMgPSB7XG4gICAgICAgIHB1Ymxpc2hpbmdFbmFibGVkOiB0cnVlLFxuICAgICAgICByZXF1ZXN0ZWRMaWZldGltZUNvdW50OiAxMDAwLFxuICAgICAgICByZXF1ZXN0ZWRNYXhLZWVwQWxpdmVDb3VudDogMTAsIC8vIGV2ZXJ5IDEwIHNlY29uZHNcbiAgICAgICAgcmVxdWVzdGVkUHVibGlzaGluZ0ludGVydmFsOiAxMDAwLFxuICAgICAgICBtYXhOb3RpZmljYXRpb25zUGVyUHVibGlzaDogMCxcbiAgICAgICAgcHJpb3JpdHk6IDEwMCxcbiAgICB9O1xuICAgIFJFRC5ub2Rlcy5yZWdpc3RlclR5cGUoXCJPcGNVYS1FbmRwb2ludDJcIiwge1xuICAgICAgICBjYXRlZ29yeTogXCJjb25maWdcIixcbiAgICAgICAgcGFsZXR0ZUxhYmVsOiBcIm9wY3VhIGVuZHBvaW50XCIsXG4gICAgICAgIGRlZmF1bHRzOiB7XG4gICAgICAgICAgICBuYW1lOiB7IHZhbHVlOiBcIlwiIH0sXG4gICAgICAgICAgICBlbmRwb2ludDoge1xuICAgICAgICAgICAgICAgIHZhbHVlOiBcIm9wYy50Y3A6Ly9vcGN1YWRlbW8uc3RlcmZpdmUuY29tOjI2NTQzL1VBL1NhbXBsZVNlcnZlclwiLFxuICAgICAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIHZhbGlkYXRlOiBpc1ZhbGlkT1BDX1VBX1VSSSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAvLyBTZWN1cml0eSBNb2RlXG4gICAgICAgICAgICBzZWN1cml0eU1vZGU6IHsgdmFsdWU6IFwiTm9uZVwiIH0sXG4gICAgICAgICAgICBzZWN1cml0eVBvbGljeToge1xuICAgICAgICAgICAgICAgIHZhbHVlOiBcIk5vbmVcIixcbiAgICAgICAgICAgICAgICB2YWxpZGF0ZTogKHZhbHVlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmICghdmFsdWUpXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgdXNlcklkZW50aXR5VHlwZTogeyB2YWx1ZTogXCJBbm9ueW1vdXNcIiB9LFxuICAgICAgICAgICAgcGtpTmFtZTogeyB2YWx1ZTogXCJcIiwgdmFsaWRhdGU6ICh2YWx1ZSkgPT4gKCF2YWx1ZSB8fCB2YWx1ZS5tYXRjaCgvWzAtOWEtekEtWl0qLykgPyB0cnVlIDogZmFsc2UpIH0sXG4gICAgICAgICAgICAvLyB0byB1c2Ugd2hlbiB1c2VySWRlbnRpdHlUeXBlIGlzIFVzZXJOYW1lXG4gICAgICAgICAgICAvLyBjcmVkZW50aWFsczoge1xuICAgICAgICAgICAgLy8gICAgIHVzZXJOYW1lOiB7IHZhbHVlOiBcIlwiLCB0eXBlOiBcInRleHRcIiB9LFxuICAgICAgICAgICAgLy8gICAgIHBhc3N3b3JkOiB7IHZhbHVlOiBcIlwiLCB0eXBlOiBcInBhc3N3b3JkXCIgfSxcbiAgICAgICAgICAgIC8vICAgICAvLyB0byB1c2Ugd2hlbiB1c2VySWRlbnRpdHlUeXBlIGlzIENlcnRpZmljYXRlXG4gICAgICAgICAgICAvLyAgICAgdXNlckNlcnRpZmljYXRlOiB7IHZhbHVlOiBcIlwiLCB0eXBlOiBcInRleHRcIiB9LFxuICAgICAgICAgICAgLy8gICAgIHVzZXJQcml2YXRla2V5OiB7IHZhbHVlOiBcIlwiICwgdHlwZTogXCJwYXNzd29yZFwifSxcbiAgICAgICAgICAgIC8vIH0gYXMgYW55IC8qIGNpcmN1bXZlbnQgYSBidWcgaW4gbm9kZS1yZWQgKi8sXG4gICAgICAgICAgICAvLyB1c2VybmFtZVxuICAgICAgICAgICAgdXNlVHJhbnNwb3J0OiB7IHZhbHVlOiBmYWxzZSwgcmVxdWlyZWQ6IGZhbHNlIH0sXG4gICAgICAgICAgICBtYXhDaHVua0NvdW50OiB7IHZhbHVlOiAxLCByZXF1aXJlZDogZmFsc2UgfSxcbiAgICAgICAgICAgIG1heE1lc3NhZ2VTaXplOiB7IHZhbHVlOiA4MTkyLCByZXF1aXJlZDogZmFsc2UgfSwgLy8gc2hvdWxkIGJlIGF0IGxlYXN0IDgxOTJcbiAgICAgICAgICAgIHJlY2VpdmVCdWZmZXJTaXplOiB7IHZhbHVlOiA4MTkyLCByZXF1aXJlZDogZmFsc2UgfSxcbiAgICAgICAgICAgIHNlbmRCdWZmZXJTaXplOiB7IHZhbHVlOiA4MTkyLCByZXF1aXJlZDogZmFsc2UgfSxcbiAgICAgICAgICAgIHN1YnNjcmlwdGlvbnM6IHtcbiAgICAgICAgICAgICAgICB2YWx1ZTogW1xuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJzMVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJEZWZhdWx0IFN1YnNjcmlwdGlvblwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgaXNEZWZhdWx0OiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgcGFyYW1ldGVyczogT2JqZWN0LmFzc2lnbih7fSwgZGVmYXVsdFN1YnNjcmlwdGlvblBhcmFtZXRlcnMpLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJzMlwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJTbG93IFN1YnNjcmlwdGlvblwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgaXNEZWZhdWx0OiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtZXRlcnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwdWJsaXNoaW5nRW5hYmxlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1ZXN0ZWRMaWZldGltZUNvdW50OiAxMDAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWVzdGVkTWF4S2VlcEFsaXZlQ291bnQ6IDMsIC8vIGV2ZXJ5IDE1IHNlY29uZHNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1ZXN0ZWRQdWJsaXNoaW5nSW50ZXJ2YWw6IDUwMDAsIC8vXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4Tm90aWZpY2F0aW9uc1BlclB1Ymxpc2g6IDEwMCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmlvcml0eTogMTAsXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJzM1wiLFxuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJGYXN0IFN1YnNjcmlwdGlvblwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgaXNEZWZhdWx0OiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtZXRlcnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwdWJsaXNoaW5nRW5hYmxlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1ZXN0ZWRMaWZldGltZUNvdW50OiA0MDAwLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVlc3RlZE1heEtlZXBBbGl2ZUNvdW50OiA1MCwgLy8gZXZlcnkgMTIuNSBzZWNvbmRzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWVzdGVkUHVibGlzaGluZ0ludGVydmFsOiAyNTAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4Tm90aWZpY2F0aW9uc1BlclB1Ymxpc2g6IDEwMCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmlvcml0eTogMjAwLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIGNyZWRlbnRpYWxzOiB7XG4gICAgICAgICAgICB1c2VyTmFtZTogeyB0eXBlOiBcInRleHRcIiB9LFxuICAgICAgICAgICAgcGFzc3dvcmQ6IHsgdHlwZTogXCJwYXNzd29yZFwiIH0sXG4gICAgICAgICAgICB1c2VyQ2VydGlmaWNhdGU6IHsgdHlwZTogXCJ0ZXh0XCIgfSxcbiAgICAgICAgICAgIHVzZXJQcml2YXRla2V5OiB7IHR5cGU6IFwicGFzc3dvcmRcIiB9LFxuICAgICAgICB9LFxuICAgICAgICBsYWJlbDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMubmFtZSB8fCB0aGlzLmVuZHBvaW50IHx8IFwiaW52YWxpZCBlbmRwb2ludFwiO1xuICAgICAgICB9LFxuICAgICAgICBvbmVkaXRzYXZlKCkge1xuICAgICAgICAgICAgY29uc3QgX3NlY3VyaXR5UG9saWN5ID0gJChcIiNub2RlLWNvbmZpZy1pbnB1dC1zZWN1cml0eVBvbGljeVwiKTtcbiAgICAgICAgICAgIGNvbnN0IF9zZWN1cml0eU1vZGUgPSAkKFwiI25vZGUtY29uZmlnLWlucHV0LXNlY3VyaXR5TW9kZVwiKTtcbiAgICAgICAgICAgIGlmIChfc2VjdXJpdHlQb2xpY3kudmFsKCkgPT09IFwiTm9uZVwiKSB7XG4gICAgICAgICAgICAgICAgX3NlY3VyaXR5TW9kZS50ZXh0KFwiTm9uZVwiKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vICgoKCgoKCgoKCggcmV0cmlldmUgc3Vic2NyaXB0aW9uIGRhdGEgKSkpKSkpKSkpKVxuICAgICAgICAgICAgY29uc3Qgc3Vic2NyaXB0aW9uc0l0ZW1zID0gJChcIiNzdWJzY3JpcHRpb25zLWNvbnRhaW5lclwiKS5lZGl0YWJsZUxpc3QoXCJpdGVtc1wiKTtcbiAgICAgICAgICAgIGNvbnN0IHMgPSBbXTtcbiAgICAgICAgICAgIGNvbnN0IG4gPSAoeCkgPT4geDtcbiAgICAgICAgICAgIHN1YnNjcmlwdGlvbnNJdGVtcy5lYWNoKGZ1bmN0aW9uIChpbmRleCwgaXRlbSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGUgPSAkKHRoaXMpO1xuICAgICAgICAgICAgICAgIGNvbnN0IGEgPSB7XG4gICAgICAgICAgICAgICAgICAgIGlkOiBcInNcIiArIGluZGV4LFxuICAgICAgICAgICAgICAgICAgICBuYW1lOiBlLmZpbmQoXCIuaW5wdXQtbmFtZVwiKS52YWwoKSxcbiAgICAgICAgICAgICAgICAgICAgaXNEZWZhdWx0OiAhIWUuZmluZChcIi5pbnB1dC1pc0RlZmF1bHRcIikudmFsKCksXG4gICAgICAgICAgICAgICAgICAgIHBhcmFtZXRlcnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHB1Ymxpc2hpbmdFbmFibGVkOiAhIWUuZmluZChcIi5pbnB1dC1wdWJsaXNoaW5nRW5hYmxlZFwiKS5pcyhcIjpjaGVja2VkXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWVzdGVkTGlmZXRpbWVDb3VudDogbihlLmZpbmQoXCIuaW5wdXQtcmVxdWVzdGVkTGlmZXRpbWVDb3VudFwiKS52YWwoKSksXG4gICAgICAgICAgICAgICAgICAgICAgICByZXF1ZXN0ZWRNYXhLZWVwQWxpdmVDb3VudDogbihlLmZpbmQoXCIuaW5wdXQtcmVxdWVzdGVkTWF4S2VlcEFsaXZlQ291bnRcIikudmFsKCkpLFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWVzdGVkUHVibGlzaGluZ0ludGVydmFsOiBuKGUuZmluZChcIi5pbnB1dC1yZXF1ZXN0ZWRQdWJsaXNoaW5nSW50ZXJ2YWxcIikudmFsKCkpLFxuICAgICAgICAgICAgICAgICAgICAgICAgbWF4Tm90aWZpY2F0aW9uc1BlclB1Ymxpc2g6IG4oZS5maW5kKFwiLmlucHV0LW1heE5vdGlmaWNhdGlvbnNQZXJQdWJsaXNoXCIpLnZhbCgpKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHByaW9yaXR5OiBuKGUuZmluZChcIi5pbnB1dC1wcmlvcml0eVwiKS52YWwoKSksXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAvLyBmb3JjZSB0byBiZSB0cnVlXG4gICAgICAgICAgICAgICAgYS5wYXJhbWV0ZXJzLnB1Ymxpc2hpbmdFbmFibGVkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICBpZiAoYS5pc0RlZmF1bHQgJiYgYS5pZCA9PT0gXCJzMFwiKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIG5vcm1hbGl6ZSBkZWZhdWx0IHN1YnNjcmlwdGlvbiBuYW1lXG4gICAgICAgICAgICAgICAgICAgIGEubmFtZSA9IFwiRGVmYXVsdCBTdWJzY3JpcHRpb25cIjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcy5wdXNoKGEpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbnMgPSBzO1xuICAgICAgICB9LFxuICAgICAgICBvbmVkaXRwcmVwYXJlKCkge1xuICAgICAgICAgICAgY29uc3Qgbm9kZSA9IHRoaXM7XG4gICAgICAgICAgICBjb25zdCB0YWJzID0gUkVELnRhYnMuY3JlYXRlKHtcbiAgICAgICAgICAgICAgICBpZDogXCJub2RlLWNvbmZpZy1lbmRwb2ludC10YWJzXCIsXG4gICAgICAgICAgICAgICAgb25jaGFuZ2U6IGZ1bmN0aW9uICh0YWIpIHtcbiAgICAgICAgICAgICAgICAgICAgJChcIiNub2RlLWNvbmZpZy1lbmRwb2ludC10YWJzLWNvbnRlbnRcIikuY2hpbGRyZW4oKS5oaWRlKCk7XG4gICAgICAgICAgICAgICAgICAgICQoXCIjXCIgKyB0YWIuaWQpLnNob3coKTtcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB0YWJzLmFkZFRhYih7XG4gICAgICAgICAgICAgICAgaWQ6IFwiZW5kcG9pbnQtdGFiLWNvbm5lY3Rpb25cIixcbiAgICAgICAgICAgICAgICBsYWJlbDogXCJDb25uZWN0aW9uXCIsXG4gICAgICAgICAgICB9LCAwKTtcbiAgICAgICAgICAgIHRhYnMuYWRkVGFiKHtcbiAgICAgICAgICAgICAgICBpZDogXCJlbmRwb2ludC10YWItc3Vic2NyaXB0aW9uc1wiLFxuICAgICAgICAgICAgICAgIGxhYmVsOiBcIlN1YnNjcmlwdGlvbnNcIixcbiAgICAgICAgICAgIH0sIDEpO1xuICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgdGFicy5yZXNpemUoKTtcbiAgICAgICAgICAgIH0sIDApO1xuICAgICAgICAgICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgICAgIC8vIGhhbmRsZSBTZWN1cml0eSBjb250cm9sc1xuICAgICAgICAgICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBjb25zdCB1cGRhdGVTZWN1cml0eUNvbnRyb2wgPSAoc2VjdXJpdHlNb2RlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHN3aXRjaCAoc2VjdXJpdHlNb2RlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjYXNlIG51bGw6XG4gICAgICAgICAgICAgICAgICAgICAgICBjYXNlIHVuZGVmaW5lZDpcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgXCJcIjpcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgXCJOb25lXCI6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJChcIi5zZWN0aW9uLXNlY3VyaXR5UG9saWN5XCIpLmhpZGUoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgXCJTaWduXCI6XG4gICAgICAgICAgICAgICAgICAgICAgICBjYXNlIFwiU2lnbkFuZEVuY3J5cHRcIjpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNwID0gJChcIi5zZWN0aW9uLXNlY3VyaXR5UG9saWN5XCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoc3AudmFsKCkgPT09IFwiTm9uZVwiIHx8IHNwLnZhbCgpID09PSBcIlwiKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcC52YWwoXCJCYXNpYzI1NlNoYTI1NlwiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKFwiLnNlY3Rpb24tc2VjdXJpdHlQb2xpY3lcIikuc2hvdygpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coXCJpbnZhbGlkIHNlY3VyaXR5TW9kZSBcIiArIHNlY3VyaXR5TW9kZSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIHVwZGF0ZVNlY3VyaXR5Q29udHJvbChub2RlLnNlY3VyaXR5TW9kZSk7XG4gICAgICAgICAgICAgICAgY29uc3QgX3NlY3VyaXR5TW9kZSA9ICQoXCIjbm9kZS1jb25maWctaW5wdXQtc2VjdXJpdHlNb2RlXCIpO1xuICAgICAgICAgICAgICAgIF9zZWN1cml0eU1vZGUub24oXCJjaGFuZ2VcIiwgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBuZXdTZWN1cml0eU1vZGUgPSBfc2VjdXJpdHlNb2RlLnZhbCgpO1xuICAgICAgICAgICAgICAgICAgICB1cGRhdGVTZWN1cml0eUNvbnRyb2wobmV3U2VjdXJpdHlNb2RlKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IGxpY2VuY2VXaWRnZXQgPSAkKFwiI2xpY2VuY2VXaWRnZXRcIik7XG4gICAgICAgICAgICBsaWNlbmNlV2lkZ2V0LmxpY2VuY2VXaWRnZXQoe1xuICAgICAgICAgICAgICAgIGJhc2VVcmw6IFwiXCIsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgICAgICAvLyBoYW5kbGUgdGhlIFVzZXIgSWRlbnRpdHkgQ29udHJvbHNcbiAgICAgICAgICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgY29uc3QgYXV0aFJvdyA9ICQoXCIuc2VjdGlvbi11c2VySWRlbnRpdHlUeXBlLVVzZXJOYW1lXCIpO1xuICAgICAgICAgICAgICAgIGNvbnN0IGNlcnRSb3cgPSAkKFwiLnNlY3Rpb24tdXNlcklkZW50aXR5VHlwZS1DZXJ0aWZpY2F0ZVwiKTtcbiAgICAgICAgICAgICAgICBjb25zdCB1cGRhdGVJZGVudGl0eUNvbnRyb2xzID0gKHVzZXJJZGVudGl0eVR5cGUpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdXNlcklkZW50aXR5VHlwZSA9IHVzZXJJZGVudGl0eVR5cGUgfHwgXCJBbm9ueW1vdXNcIjtcbiAgICAgICAgICAgICAgICAgICAgc3dpdGNoICh1c2VySWRlbnRpdHlUeXBlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjYXNlIFwiQW5vbnltb3VzXCI6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJChcIiNub2RlLWNvbmZpZy1pbnB1dC11c2VyTmFtZVwiKS52YWwoXCJcIik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJChcIiNub2RlLWNvbmZpZy1pbnB1dC1wYXNzd29yZFwiKS52YWwoXCJcIik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYXV0aFJvdy5oaWRlKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2VydFJvdy5oaWRlKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgICAgICBjYXNlIFwiVXNlck5hbWVcIjpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdXRoUm93LnNob3coKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjZXJ0Um93LmhpZGUoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgXCJDZXJ0aWZpY2F0ZVwiOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoXCIjbm9kZS1jb25maWctaW5wdXQtdXNlck5hbWVcIikudmFsKFwiXCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoXCIjbm9kZS1jb25maWctaW5wdXQtcGFzc3dvcmRcIikudmFsKFwiXCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNlcnRSb3cuc2hvdygpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF1dGhSb3cuaGlkZSgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhcImludmFsaWQgdXNlcklkZW50aXR5VHlwZSBcIiArIHVzZXJJZGVudGl0eVR5cGUpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICB1cGRhdGVJZGVudGl0eUNvbnRyb2xzKG5vZGUudXNlcklkZW50aXR5VHlwZSk7XG4gICAgICAgICAgICAgICAgY29uc3QgX3VzZXJJZGVudGl0eVR5cGUgPSAkKFwiI25vZGUtY29uZmlnLWlucHV0LXVzZXJJZGVudGl0eVR5cGVcIik7XG4gICAgICAgICAgICAgICAgX3VzZXJJZGVudGl0eVR5cGUub24oXCJjaGFuZ2VcIiwgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBuZXdJZGVudGl0eVR5cGUgPSBfdXNlcklkZW50aXR5VHlwZS52YWwoKTtcbiAgICAgICAgICAgICAgICAgICAgdXBkYXRlSWRlbnRpdHlDb250cm9scyhuZXdJZGVudGl0eVR5cGUpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgICAgIC8vIGhhbmRsZSBhZHZhbmNlZCBjb250cm9sc1xuICAgICAgICAgICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAkKFwiI3NlY3Rpb24tQWR2YW5jZWRcIikuaGlkZSgpO1xuICAgICAgICAgICAgICAgICQoXCIjdG9nZ2xlQWR2YW5jZWRTZWN0aW9uXCIpLnByb3AoXCJjaGVja2VkXCIsIGZhbHNlKTtcbiAgICAgICAgICAgICAgICAkKFwiI3RvZ2dsZUFkdmFuY2VkU2VjdGlvblwiKS5vbihcImNoYW5nZVwiLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmICgkKHRoaXMpLnByb3AoXCJjaGVja2VkXCIpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBJZiB0aGUgY2hlY2tib3ggaXMgY2hlY2tlZCwgc2hvdyB0aGUgZGl2XG4gICAgICAgICAgICAgICAgICAgICAgICAkKFwiI3NlY3Rpb24tQWR2YW5jZWRcIikuc2hvdygpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gT3RoZXJ3aXNlLCBoaWRlIGl0XG4gICAgICAgICAgICAgICAgICAgICAgICAkKFwiI3NlY3Rpb24tQWR2YW5jZWRcIikuaGlkZSgpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCB1c2VUcmFuc3BvcnRTZXR0aW5nID0gJChcIiNub2RlLWNvbmZpZy1pbnB1dC11c2VUcmFuc3BvcnRcIikucHJvcChcImNoZWNrZWRcIik7XG4gICAgICAgICAgICBpZiAodXNlVHJhbnNwb3J0U2V0dGluZykge1xuICAgICAgICAgICAgICAgICQoXCIjc2VjdGlvbi1UcmFuc3BvcnRTZXR0aW5nc1wiKS5zaG93KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAkKFwiI3NlY3Rpb24tVHJhbnNwb3J0U2V0dGluZ3NcIikuaGlkZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJChcIiNub2RlLWNvbmZpZy1pbnB1dC11c2VUcmFuc3BvcnRcIikub24oXCJjaGFuZ2VcIiwgZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgIGlmICgkKHRoaXMpLnByb3AoXCJjaGVja2VkXCIpKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIElmIHRoZSBjaGVja2JveCBpcyBjaGVja2VkLCBzaG93IHRoZSBkaXZcbiAgICAgICAgICAgICAgICAgICAgJChcIiNzZWN0aW9uLVRyYW5zcG9ydFNldHRpbmdzXCIpLnNob3coKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIE90aGVyd2lzZSwgaGlkZSBpdFxuICAgICAgICAgICAgICAgICAgICAkKFwiI3NlY3Rpb24tVHJhbnNwb3J0U2V0dGluZ3NcIikuaGlkZSgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgICAgIC8vIGNoZWNrQ2VydGlmaWNhdGVcbiAgICAgICAgICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgJChcIiNjaGVja0NlcnRpZmljYXRlXCIpLm9uKFwiY2xpY2tcIiwgKCkgPT4gX19hd2FpdGVyKHRoaXMsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBkYXRhID0geWllbGQgZmV0Y2goXCIvb3BjdWEtZW5kcG9pbnQyL2NsaWVudF9jZXJ0aWZpY2F0ZS5qc29uXCIpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBpbmZvID0geWllbGQgZGF0YS5qc29uKCk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHQgPSBKU09OLnN0cmluZ2lmeShpbmZvLCBudWxsLCBcIiBcIik7XG4gICAgICAgICAgICAgICAgICAgIGFsZXJ0KHQpO1xuICAgICAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgICAgICAvLyBoYW5kbGUgdGhlIFRlc3QgYnV0dG9uXG4gICAgICAgICAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG1hbmFnZUFQSUNhbGwoXCJjb25uZWN0aW9uXCIsICQoXCIjdGVzdC1jb25uZWN0aW9uXCIpLCAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHZhciBfYTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuICh7XG4gICAgICAgICAgICAgICAgICAgICAgICB1cmw6IFwiL29wY3VhLWVuZHBvaW50Mi90ZXN0LWNvbm5lY3Rpb25cIixcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvZHk6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbmRwb2ludE5vZGU6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IG5vZGUuaWQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVuZHBvaW50OiAkKFwiI25vZGUtY29uZmlnLWlucHV0LWVuZHBvaW50XCIpLnZhbCgpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAkKFwiI25vZGUtY29uZmlnLWlucHV0LW5hbWVcIikudmFsKCksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBraU5hbWU6IChfYSA9ICQoXCIjbm9kZS1jb25maWctaW5wdXQtcGtpTmFtZVwiKSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLnZhbCgpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWN1cml0eU1vZGU6ICQoXCIjbm9kZS1jb25maWctaW5wdXQtc2VjdXJpdHlNb2RlXCIpLnZhbCgpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWN1cml0eVBvbGljeTogJChcIiNub2RlLWNvbmZpZy1pbnB1dC1zZWN1cml0eVBvbGljeVwiKS52YWwoKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlcklkZW50aXR5VHlwZTogJChcIiNub2RlLWNvbmZpZy1pbnB1dC11c2VySWRlbnRpdHlUeXBlXCIpLnZhbCgpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VyTmFtZTogJChcIiNub2RlLWNvbmZpZy1pbnB1dC11c2VyTmFtZVwiKS52YWwoKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFzc3dvcmQ6ICQoXCIjbm9kZS1jb25maWctaW5wdXQtcGFzc3dvcmRcIikudmFsKCksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZXJDZXJ0aWZpY2F0ZTogJChcIiNub2RlLWNvbmZpZy1pbnB1dC11c2VyQ2VydGlmaWNhdGVcIikudmFsKCksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZXJQcml2YXRla2V5OiAkKFwiI25vZGUtY29uZmlnLWlucHV0LXVzZXJQcml2YXRla2V5XCIpLnZhbCgpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLy8gbm90IHRlc3RlZCB5ZXQgLi4uOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjZXJ0aWZpY2F0ZTogJChcIiNub2RlLWlucHV0LWNlcnRpZmljYXRlXCIpLnZhbCgpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VUcmFuc3BvcnQ6ICQoXCIjbm9kZS1pbnB1dC11c2VUcmFuc3BvcnRcIikucHJvcChcImNoZWNrZWRcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heENodW5rQ291bnQ6ICQoXCIjbm9kZS1pbnB1dC1tYXhDaHVua0NvdW50XCIpLnZhbCgpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXhNZXNzYWdlU2l6ZTogJChcIiNub2RlLWlucHV0LW1heE1lc3NhZ2VTaXplXCIpLnZhbCgpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWNlaXZlQnVmZmVyU2l6ZTogJChcIiNub2RlLWlucHV0LXJlY2VpdmVCdWZmZXJTaXplXCIpLnZhbCgpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZW5kQnVmZmVyU2l6ZTogJChcIiNub2RlLWlucHV0LXNlbmRCdWZmZXJTaXplXCIpLnZhbCgpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9LCAoKSA9PiB7IH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgICAgIC8vICBJbnN0YWxsIHN1YnNjcmlwdGlvbnMgTGlzdCBtYW5hZ2VtZW50XG4gICAgICAgICAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlc2l6ZVRvcGljcyA9ICh0b3BpYywgaW5kZXgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdmFyIG5ld1dpZHRoID0gdG9waWMud2lkdGgoKSB8fCAxMDA7XG4gICAgICAgICAgICAgICAgICAgIHRvcGljLmZpbmQoXCJsYWJlbFwiKS50eXBlZElucHV0KFwid2lkdGhcIiwgbmV3V2lkdGggLSAxNSk7XG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICBjb25zdCBzdWJzY3JpcHRpb25MaXN0ID0gJChcIiNzdWJzY3JpcHRpb25zLWNvbnRhaW5lclwiKVxuICAgICAgICAgICAgICAgICAgICAuY3NzKHsgXCJtaW4taGVpZ2h0XCI6IFwiMTUwcHhcIiwgXCJtaW4td2lkdGhcIjogXCIyNjBweFwiIH0pXG4gICAgICAgICAgICAgICAgICAgIC5lZGl0YWJsZUxpc3Qoe1xuICAgICAgICAgICAgICAgICAgICBhZGRJdGVtOiAoY29udGFpbmVyLCBpbmRleCwgZGF0YSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgX2RhdGEgPSBkYXRhO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZWxlbWVudCA9ICQoXCIudGVtcGxhdGVcIikuY2xvbmUoKS5hcHBlbmRUbyhjb250YWluZXIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZWxlbWVudC5yZW1vdmVBdHRyKFwiaWRcIikucmVtb3ZlQ2xhc3MoXCJoaWRlXCIpLnJlbW92ZUNsYXNzKFwidGVtcGxhdGVcIikuYXR0cihcImRhdGEtaVwiLCBpbmRleCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50LmZpbmQoXCIuaW5wdXQtbmFtZVwiKS52YWwoX2RhdGEubmFtZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50LmZpbmQoXCIuaW5wdXQtcmVxdWVzdGVkUHVibGlzaGluZ0ludGVydmFsXCIpLnZhbChfZGF0YS5wYXJhbWV0ZXJzLnJlcXVlc3RlZFB1Ymxpc2hpbmdJbnRlcnZhbCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50LmZpbmQoXCIuaW5wdXQtcmVxdWVzdGVkTWF4S2VlcEFsaXZlQ291bnRcIikudmFsKF9kYXRhLnBhcmFtZXRlcnMucmVxdWVzdGVkTWF4S2VlcEFsaXZlQ291bnQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZWxlbWVudC5maW5kKFwiLmlucHV0LXJlcXVlc3RlZExpZmV0aW1lQ291bnRcIikudmFsKF9kYXRhLnBhcmFtZXRlcnMucmVxdWVzdGVkTGlmZXRpbWVDb3VudCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50LmZpbmQoXCIuaW5wdXQtbWF4Tm90aWZpY2F0aW9uc1BlclB1Ymxpc2hcIikudmFsKF9kYXRhLnBhcmFtZXRlcnMubWF4Tm90aWZpY2F0aW9uc1BlclB1Ymxpc2ggfHwgMCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50LmZpbmQoXCIuaW5wdXQtcHJpb3JpdHlcIikudmFsKF9kYXRhLnBhcmFtZXRlcnMucHJpb3JpdHkgfHwgMCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50LmZpbmQoXCIuc3Vic2NyaXB0aW9uLWlkXCIpLnRleHQoXCJcIiArIGluZGV4KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChfZGF0YS5pc0RlZmF1bHQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50LmZpbmQoXCIuaW5wdXQtbmFtZVwiKS5wcm9wKFwicmVhZG9ubHlcIiwgdHJ1ZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50LmZpbmQoXCIuaW5wdXQtaXNEZWZhdWx0XCIpLnByb3AoXCJjaGVja2VkXCIsIF9kYXRhLmlzRGVmYXVsdCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBtYWtlIHN1cmUgdGhhdCBkZWZhdWx0IHN1YnNjcmlwdGlvbiBjYW5ub3QgYmUgYWNjaWRlbnRhbGx5IHJlbW92ZWRcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChfZGF0YS5pc0RlZmF1bHQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250YWluZXIuZmluZChcIi5yZWQtdWktZWRpdGFibGVMaXN0LWl0ZW0tcmVtb3ZlXCIpLmFkZENsYXNzKFwiaGlkZVwiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IGVsZW1lbnQuZmluZChcIi5pbnB1dC1pc0RlZmF1bHRcIikucHJvcChcImRpc2FibGVkXCIsIHRydWUpLCAxMCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIC8vIHNvcnRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICByZW1vdmFibGU6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgIHJlc2l6ZUl0ZW06IHJlc2l6ZVRvcGljcyxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBjb25zdCBBZGRTdWJzY3JpcHRpb24gPSAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHN1YnNjcmlwdGlvbnMgPSBub2RlLnN1YnNjcmlwdGlvbnMgfHwgW107XG4gICAgICAgICAgICAgICAgICAgIGlmIChzdWJzY3JpcHRpb25zLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gYWRkIG1pc3NpbmcgZGVmYXVsdCBzdWJzY3JpcHRpb25cbiAgICAgICAgICAgICAgICAgICAgICAgIHN1YnNjcmlwdGlvbnMucHVzaCh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwiczFcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBcIkRlZmF1bHQgU3Vic2NyaXB0aW9uXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaXNEZWZhdWx0OiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtZXRlcnM6IE9iamVjdC5hc3NpZ24oe30sIGRlZmF1bHRTdWJzY3JpcHRpb25QYXJhbWV0ZXJzKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHN1YnNjcmlwdGlvbkxpc3QuZWRpdGFibGVMaXN0KFwiZW1wdHlcIik7XG4gICAgICAgICAgICAgICAgICAgIGZvciAoY29uc3Qgc3Vic2NyaXB0aW9uIG9mIHN1YnNjcmlwdGlvbnMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIHN1YnNjcmlwdGlvbi5pc0RlZmF1bHQgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHN1YnNjcmlwdGlvbkxpc3QuZWRpdGFibGVMaXN0KFwiYWRkSXRlbVwiLCBzdWJzY3JpcHRpb24pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICBBZGRTdWJzY3JpcHRpb24oKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICB9KTtcblxufSkoKTsiXX0=
|
7
|
+
function _0x1e4a(){const _0x589aa4=['resize','style','publishable-key','\x20days.\x0aBuy\x20online\x20and\x20visit\x20','-failure','data-i','error','Trial\x20licence','empty','Basic256Sha256','#toggleAdvancedSection','width','requestedLifetimeCount','pk_live_51HsE1sBCNccbzsVzt7zaq2uv20pkryWllAzvZgZd5AhwFI9A3qBIeOJvJwQF08lDoLpFqLjwmyA79wnPnYLsvKjt009f00VpCW','3754485qcEWPT','value','stringify','#node-config-input-userName','class','#node-config-input-useTransport','.section-userIdentityType-UserName','then','securityMode','506472awPFbN','licence-widget-msg','fa\x20fa-check-circle','status','Licence\x20has\x20expired','isArray','html','name','#checkCertificate','opcua\x20endpoint','.red-ui-editableList-item-remove','licence-widget-icon','TRIAL','<p>','extra','#node-config-input-userCertificate','match','requestedPublishingInterval','length','internal\x20error\x20','nodes','<i>','#section-Advanced','\x20for\x20more\x20information.','#node-config-input-password','#node-config-input-securityMode','assign','catch','FREEWARE','prctbl_1OJt49BCNccbzsVzkaANOgFL','async','type','#node-config-input-userPrivatekey','element','licenceInfo','.section-securityPolicy','json','attr','widget','removeClass','publishingEnabled','.input-requestedPublishingInterval','parameters','fetching\x20failed\x20with\x20error','connection','invalid\x20endpoint','subscriptions','Default\x20Subscription','checked','PROFESSIONAL','show','script','change','addTab','FAILED','Certificate','</p>','Testing\x20Connection\x20...','The\x20Trial\x20will\x20expire\x20in\x20','/licenceInfo','replace','config','suppressed','2474759DNxHPp','application/json','#node-config-input-securityPolicy','invalid\x20userIdentityType\x20','pricing-table-id','sterfive.licenceWidget','opc.tcp://opcuademo.sterfive.com:26543/UA/SampleServer','height:\x20100%\x20!important;','fa\x20fa-exclamation-circle','Connection','\x20days.','statusText','log','.section-userIdentityType-Certificate','requestedMaxKeepAliveCount','registerType','btn\x20btn-primary','maxNotificationsPerPublish','260px','None','#node-config-input-endpoint','.input-requestedMaxKeepAliveCount','map','password','appendTo','Freeware\x20licence','onPremiseServerHost','#node-config-endpoint-tabs-content','1588662ziwPpp','isDefault','OpcUa-Endpoint2','result','append','head','#node-config-input-userIdentityType','next','4344805WxFbxa','endpoint-tab-connection','449241cNoIVg','baseUrl','addItem','tabs','\x20It\x20will\x20expire\x20in\x20','EXPIRED','<a\x20href=\x22https://www.sterfive.com/opcua/for-node-red\x22\x20target=”_blank”>Sterfive\x27s\x20website\x20</a>','\x20-\x20','join','.input-isDefault','.input-priority','apply','push','children','licenceWidget','hide','Your\x20licence\x20is\x20valid.','#node-input-sendBufferSize','protocol','Slow\x20Subscription','-success','text','priority','find','err','typedInput','<span>','css','\x20or\x20visit\x20our\x20website\x20to\x20renew\x20your\x20license\x20and\x20regain\x20access\x20to\x20our\x20services.̀','message','#node-config-input-name','.input-requestedLifetimeCount','editableList','userIdentityType','150px','val','subscribe-button','addClass','src','licenceType','prop','disabled','Subscriptions','This\x20is\x20a\x20freeware\x20licence,\x20and\x20have\x20some\x20limitations.\x0a','#test-connection','Anonymous','done','each','-messages','/opcua-endpoint2/test-connection','licence-widget','AUTHORIZED','#node-input-useTransport','endpoint-tab-subscriptions','Your\x20license\x20has\x20expired.\x20Please\x20contact\x20our\x20support\x20team\x20or\x20visit\x20our\x20website\x20to\x20renew\x20your\x20license\x20and\x20regain\x20access\x20to\x20our\x20services.','18zFZtkj','-pending','SuppressedError','click','<stripe-pricing-table/>','#node-input-maxChunkCount','<br>','#node-config-input-pkiName','#subscriptions-container','endpoint','function','#node-input-certificate','.input-name','21692096xeROJO','node-config-endpoint-tabs','#section-TransportSettings'];_0x1e4a=function(){return _0x589aa4;};return _0x1e4a();}function _0x35ce(_0x501df4,_0x2303fe){const _0x1e4ad1=_0x1e4a();return _0x35ce=function(_0x35cee9,_0x49f9d4){_0x35cee9=_0x35cee9-0xb9;let _0x26c5d0=_0x1e4ad1[_0x35cee9];return _0x26c5d0;},_0x35ce(_0x501df4,_0x2303fe);}(function(_0x4a09da,_0xb75db){const _0xf6e855=_0x35ce,_0x33a443=_0x4a09da();while(!![]){try{const _0x14ab09=parseInt(_0xf6e855(0xbc))/0x1+parseInt(_0xf6e855(0x175))/0x2+-parseInt(_0xf6e855(0x111))/0x3+-parseInt(_0xf6e855(0x11a))/0x4+-parseInt(_0xf6e855(0xba))/0x5+parseInt(_0xf6e855(0xf3))/0x6*(-parseInt(_0xf6e855(0x159))/0x7)+parseInt(_0xf6e855(0x100))/0x8;if(_0x14ab09===_0xb75db)break;else _0x33a443['push'](_0x33a443['shift']());}catch(_0x152316){_0x33a443['push'](_0x33a443['shift']());}}}(_0x1e4a,0x9e0e7),(function(){'use strict';const _0x16839e=_0x35ce;function _0x4e9a55(_0x3cd61f,_0x1ea3a0,_0x317e97,_0x219f23){function _0x5a677b(_0x2468ef){return _0x2468ef instanceof _0x317e97?_0x2468ef:new _0x317e97(function(_0x1c876b){_0x1c876b(_0x2468ef);});}return new(_0x317e97||(_0x317e97=Promise))(function(_0x24efc5,_0x2ab575){const _0x434e1b=_0x35ce;function _0x565339(_0x1356a5){const _0x4e64cb=_0x35ce;try{_0x2b9166(_0x219f23[_0x4e64cb(0xb9)](_0x1356a5));}catch(_0x49bc35){_0x2ab575(_0x49bc35);}}function _0x7b9d73(_0x517c9b){try{_0x2b9166(_0x219f23['throw'](_0x517c9b));}catch(_0x155bc8){_0x2ab575(_0x155bc8);}}function _0x2b9166(_0x372561){const _0x518334=_0x35ce;_0x372561[_0x518334(0xea)]?_0x24efc5(_0x372561[_0x518334(0x112)]):_0x5a677b(_0x372561['value'])[_0x518334(0x118)](_0x565339,_0x7b9d73);}_0x2b9166((_0x219f23=_0x219f23[_0x434e1b(0xc7)](_0x3cd61f,_0x1ea3a0||[]))[_0x434e1b(0xb9)]());});}typeof SuppressedError===_0x16839e(0xfd)?SuppressedError:function(_0x16f18c,_0xb03db0,_0x191143){const _0x16366c=_0x16839e;var _0xc9754f=new Error(_0x191143);return _0xc9754f[_0x16366c(0x121)]=_0x16366c(0xf5),_0xc9754f[_0x16366c(0x109)]=_0x16f18c,_0xc9754f[_0x16366c(0x158)]=_0xb03db0,_0xc9754f;};function _0xd4efb6(_0x11b5bd,_0x1c1e12,_0x2a8b04,_0x40be8f){const _0x7174=_0x16839e,_0x4fce5a=$('#'+_0x11b5bd+_0x7174(0xd0)),_0x3a3928=$('#'+_0x11b5bd+_0x7174(0x107)),_0x39a5ae=$('#'+_0x11b5bd+_0x7174(0xf4)),_0x2b2b91=$('#'+_0x11b5bd+_0x7174(0xec));let _0x384c47=![];_0x4fce5a[_0x7174(0xcb)](),_0x3a3928[_0x7174(0xcb)](),_0x39a5ae[_0x7174(0xcb)](),_0x1c1e12['on'](_0x7174(0xf6),()=>{const _0x50c333=_0x7174;if(_0x384c47)return;_0x384c47=!![],_0x39a5ae[_0x50c333(0x141)](_0x50c333(0xcb)),_0x39a5ae['html'](_0x50c333(0x153)),_0x4fce5a['addClass']('hide'),_0x3a3928[_0x50c333(0xe1)](_0x50c333(0xcb)),_0x2b2b91[_0x50c333(0x120)]('');const {body:_0x3b95c1,url:_0x1833c0}=_0x2a8b04();fetch(_0x1833c0,{'method':'POST','headers':{'Content-Type':_0x50c333(0x15a)},'body':JSON['stringify'](_0x3b95c1)})[_0x50c333(0x118)](_0x3bb45d=>_0x3bb45d[_0x50c333(0x13e)]())[_0x50c333(0x118)](_0x412f11=>{const _0x12db4d=_0x50c333;_0x384c47=![],_0x39a5ae[_0x12db4d(0xcb)](),console['log'](JSON['stringify'](_0x412f11,null,'\x20'));if(_0x412f11['result']==='ok')_0x4fce5a[_0x12db4d(0x141)](_0x12db4d(0xcb)),_0x3a3928[_0x12db4d(0xe1)](_0x12db4d(0xcb)),_0x2b2b91['html'](_0x412f11[_0x12db4d(0xd9)][_0x12db4d(0x156)]('\x0a',_0x12db4d(0xf9))),_0x40be8f(null,_0x412f11);else{const _0x5cbd69=_0xf0e006=>!_0xf0e006?'':_0xf0e006['split']('\x0a')[_0x12db4d(0x16f)](_0x4ef67f=>_0x12db4d(0x127)+_0x4ef67f+_0x12db4d(0x152))['join']('\x0a'),_0x1bc7dc=_0x185e47=>Array[_0x12db4d(0x11f)](_0x185e47)?_0x185e47['map'](_0x5cbd69)[_0x12db4d(0xc4)]('\x0a'):_0x5cbd69(_0x185e47);_0x4fce5a[_0x12db4d(0xe1)]('hide'),_0x3a3928[_0x12db4d(0x141)](_0x12db4d(0xcb)),_0x2b2b91[_0x12db4d(0x120)](_0x1bc7dc(_0x412f11[_0x12db4d(0xd9)])+_0x1bc7dc(_0x412f11[_0x12db4d(0x128)])),_0x40be8f(new Error(_0x412f11[_0x12db4d(0x178)]),_0x412f11);}})[_0x50c333(0x135)](_0x38223b=>{const _0x4e0b93=_0x50c333;_0x384c47=![],_0x39a5ae[_0x4e0b93(0xe1)](_0x4e0b93(0xcb)),_0x4fce5a[_0x4e0b93(0xe1)]('hide'),_0x3a3928[_0x4e0b93(0x141)](_0x4e0b93(0xcb)),_0x2b2b91[_0x4e0b93(0x120)](_0x4e0b93(0x12d)+_0x38223b[_0x4e0b93(0xd9)]),console[_0x4e0b93(0x165)](_0x4e0b93(0xd4),_0x38223b),_0x40be8f(_0x38223b,null);});});}const _0x5ad309=_0x16839e(0x137),_0x5036f9=_0x16839e(0x110);function _0x21fe74(){return _0x4e9a55(this,arguments,void 0x0,function*(_0x79f091=''){const _0x45bec6=_0x35ce,_0x3790ed=_0x79f091+'/opcua-endpoint2',_0x450509=_0x3790ed+_0x45bec6(0x155),_0x3d7389=yield fetch(_0x450509,{'method':'POST','headers':{'Content-Type':_0x45bec6(0x15a)}}),_0x295244=new Date()['toISOString']();if(_0x3d7389['status']!==0xc8)return console[_0x45bec6(0x165)](_0x45bec6(0x145),_0x3d7389[_0x45bec6(0x11d)],_0x3d7389[_0x45bec6(0x164)]),{'status':'FAILED','type':_0x45bec6(0x136),'licenceInfo':{'expiryDate':_0x295244}};const _0xe54c0d=yield _0x3d7389[_0x45bec6(0x13e)]();return _0xe54c0d;});}const _0x48161e=()=>{const _0x5ae0ed=_0x16839e;$[_0x5ae0ed(0x140)](_0x5ae0ed(0x15e),{'options':{'baseUrl':''},'_create'(){const _0x5aa0ec=_0x5ae0ed,_0x1d7144=this,_0x215bd3='<a\x20href=\x22mailto:support@sterfive.com\x22\x20subject=\x22@opcua/for-node-red\x20support\x20request\x22>mailto:support@sterfive.com</a>',_0x105461=_0x5aa0ec(0xc2);_0x21fe74(_0x1d7144[_0x5aa0ec(0xbd)])[_0x5aa0ec(0x118)](_0x53e4bb=>{const _0x5af178=_0x5aa0ec;let _0x19b887='',_0x215d70='',_0x244dae='';const _0x418ab9=_0x53e4bb[_0x5af178(0x11d)],_0x3da4db=_0x53e4bb['daysLeft'];switch(_0x418ab9){case _0x5af178(0xef):_0x19b887=_0x5af178(0x11c);switch(_0x53e4bb['type']){case _0x5af178(0x126):{_0x215d70=_0x5af178(0x10a),_0x244dae=_0x5af178(0x154)+_0x3da4db+_0x5af178(0x106)+_0x105461+'\x20to\x20acquire\x20a\x20license.';break;}case _0x5af178(0x14b):_0x215d70=_0x5af178(0xcc);_0x3da4db<0x5a&&_0x3da4db>=0x0&&(_0x215d70+=_0x5af178(0xc0)+_0x3da4db+_0x5af178(0x163));_0x244dae=_0x53e4bb[_0x5af178(0x13c)][_0x5af178(0xe3)]+_0x5af178(0xc3)+(_0x53e4bb['licenceInfo'][_0x5af178(0x173)]||'');break;case'FREEWARE':_0x215d70=_0x5af178(0x172),_0x244dae=_0x5af178(0xe7)+_0x105461+_0x5af178(0x131);break;}break;case _0x5af178(0xc1):_0x19b887='fa\x20fa-calendar-time',_0x215d70=_0x5af178(0x11e),_0x244dae=_0x5af178(0xf2);break;case _0x5af178(0x150):default:_0x19b887=_0x5af178(0x161),_0x215d70='Your\x20license\x20is\x20currently\x20invalid.',_0x244dae='Please\x20contact\x20'+_0x215bd3+_0x5af178(0xd8);break;}this[_0x5af178(0x13b)]['addClass'](_0x5af178(0xee)),this['element'][_0x5af178(0xe1)]('licence-widget-'+_0x418ab9),this['element'][_0x5af178(0x179)]($(_0x5af178(0xd6))['addClass'](_0x5af178(0x125))[_0x5af178(0x179)]($(_0x5af178(0x12f))['addClass'](_0x19b887))),this[_0x5af178(0x13b)]['append']($(_0x5af178(0xd6))[_0x5af178(0xe1)](_0x5af178(0x11b))['text'](_0x215d70)),this[_0x5af178(0x13b)][_0x5af178(0x179)]($(_0x5af178(0xf9))),this[_0x5af178(0x13b)]['append']($(_0x5af178(0xd6))[_0x5af178(0xe1)]('licence-widget-details')[_0x5af178(0x179)](_0x244dae));if(_0x418ab9==='EXPIRED'||_0x418ab9==='FAILED'||_0x53e4bb[_0x5af178(0x139)]===_0x5af178(0x136)||_0x53e4bb[_0x5af178(0x139)]===_0x5af178(0x126)){const _0x59dc5a=$('<button/>');_0x59dc5a['attr']('id',_0x5af178(0xe0)),_0x59dc5a[_0x5af178(0x13f)](_0x5af178(0x115),_0x5af178(0x169)),_0x59dc5a[_0x5af178(0x13f)](_0x5af178(0x104),'margin-top:\x2020px;'),_0x59dc5a[_0x5af178(0xd1)]('Subscribe'),this['element'][_0x5af178(0x179)](_0x59dc5a);const _0x36bed2=document['createElement'](_0x5af178(0x14d));_0x36bed2[_0x5af178(0xe2)]='https://js.stripe.com/v3/pricing-table.js',_0x36bed2[_0x5af178(0x138)]=!![],$(_0x5af178(0x17a))[_0x5af178(0x179)](_0x36bed2);const _0x220219=$(_0x5af178(0xf7));_0x220219[_0x5af178(0x13f)](_0x5af178(0x15d),_0x5ad309),_0x220219[_0x5af178(0x13f)](_0x5af178(0x105),_0x5036f9),_0x220219[_0x5af178(0x13f)]('style','height:\x20100%;max-height:\x20100%;'),_0x220219[_0x5af178(0xcb)](),this[_0x5af178(0x13b)][_0x5af178(0x179)](_0x220219),_0x59dc5a['on'](_0x5af178(0xf6),()=>{const _0x30a548=_0x5af178;_0x220219[_0x30a548(0x14c)](),_0x59dc5a['hide'](),this['element'][_0x30a548(0x13f)](_0x30a548(0x104),_0x30a548(0x160));});}})[_0x5aa0ec(0x135)](_0x33aafd=>{console['log'](_0x33aafd);});}});};_0x48161e();function _0x4992e3(_0x2bcf6d){const _0x2e6774=_0x16839e;let _0xd032a3;try{_0xd032a3=new URL(_0x2bcf6d);}catch(_0x1e3b2e){return![];}return _0xd032a3[_0x2e6774(0xce)]==='opc.tcp:';}const _0x5993c8={'publishingEnabled':!![],'requestedLifetimeCount':0x3e8,'requestedMaxKeepAliveCount':0xa,'requestedPublishingInterval':0x3e8,'maxNotificationsPerPublish':0x0,'priority':0x64};RED[_0x16839e(0x12e)][_0x16839e(0x168)](_0x16839e(0x177),{'category':_0x16839e(0x157),'paletteLabel':_0x16839e(0x123),'defaults':{'name':{'value':''},'endpoint':{'value':_0x16839e(0x15f),'required':!![],'validate':_0x4992e3},'securityMode':{'value':_0x16839e(0x16c)},'securityPolicy':{'value':_0x16839e(0x16c),'validate':_0x38a396=>{if(!_0x38a396)return![];return!![];}},'userIdentityType':{'value':'Anonymous'},'pkiName':{'value':'','validate':_0x48b211=>!_0x48b211||_0x48b211[_0x16839e(0x12a)](/[0-9a-zA-Z]*/)?!![]:![]},'useTransport':{'value':![],'required':![]},'maxChunkCount':{'value':0x1,'required':![]},'maxMessageSize':{'value':0x2000,'required':![]},'receiveBufferSize':{'value':0x2000,'required':![]},'sendBufferSize':{'value':0x2000,'required':![]},'subscriptions':{'value':[{'id':'s1','name':_0x16839e(0x149),'isDefault':!![],'parameters':Object[_0x16839e(0x134)]({},_0x5993c8)},{'id':'s2','name':_0x16839e(0xcf),'isDefault':![],'parameters':{'publishingEnabled':!![],'requestedLifetimeCount':0x64,'requestedMaxKeepAliveCount':0x3,'requestedPublishingInterval':0x1388,'maxNotificationsPerPublish':0x64,'priority':0xa}},{'id':'s3','name':'Fast\x20Subscription','isDefault':![],'parameters':{'publishingEnabled':!![],'requestedLifetimeCount':0xfa0,'requestedMaxKeepAliveCount':0x32,'requestedPublishingInterval':0xfa,'maxNotificationsPerPublish':0x64,'priority':0xc8}}],'required':![]}},'credentials':{'userName':{'type':_0x16839e(0xd1)},'password':{'type':_0x16839e(0x170)},'userCertificate':{'type':_0x16839e(0xd1)},'userPrivatekey':{'type':_0x16839e(0x170)}},'label':function(){const _0x2a1a14=_0x16839e;return this[_0x2a1a14(0x121)]||this[_0x2a1a14(0xfc)]||_0x2a1a14(0x147);},'oneditsave'(){const _0x49e27a=_0x16839e,_0x57f6ce=$(_0x49e27a(0x15b)),_0xf59037=$(_0x49e27a(0x133));_0x57f6ce[_0x49e27a(0xdf)]()===_0x49e27a(0x16c)&&_0xf59037[_0x49e27a(0xd1)](_0x49e27a(0x16c));const _0x18bc78=$(_0x49e27a(0xfb))[_0x49e27a(0xdc)]('items'),_0x2a0bb8=[],_0x270837=_0x330f56=>_0x330f56;_0x18bc78[_0x49e27a(0xeb)](function(_0x3049b4,_0x5e6952){const _0x4d90ed=_0x49e27a,_0x510852=$(this),_0x22b9b3={'id':'s'+_0x3049b4,'name':_0x510852[_0x4d90ed(0xd3)]('.input-name')[_0x4d90ed(0xdf)](),'isDefault':!!_0x510852[_0x4d90ed(0xd3)]('.input-isDefault')['val'](),'parameters':{'publishingEnabled':!!_0x510852[_0x4d90ed(0xd3)]('.input-publishingEnabled')['is'](':checked'),'requestedLifetimeCount':_0x270837(_0x510852[_0x4d90ed(0xd3)](_0x4d90ed(0xdb))[_0x4d90ed(0xdf)]()),'requestedMaxKeepAliveCount':_0x270837(_0x510852['find'](_0x4d90ed(0x16e))[_0x4d90ed(0xdf)]()),'requestedPublishingInterval':_0x270837(_0x510852[_0x4d90ed(0xd3)](_0x4d90ed(0x143))[_0x4d90ed(0xdf)]()),'maxNotificationsPerPublish':_0x270837(_0x510852[_0x4d90ed(0xd3)]('.input-maxNotificationsPerPublish')[_0x4d90ed(0xdf)]()),'priority':_0x270837(_0x510852[_0x4d90ed(0xd3)](_0x4d90ed(0xc6))['val']())}};_0x22b9b3[_0x4d90ed(0x144)][_0x4d90ed(0x142)]=!![],_0x22b9b3[_0x4d90ed(0x176)]&&_0x22b9b3['id']==='s0'&&(_0x22b9b3[_0x4d90ed(0x121)]='Default\x20Subscription'),_0x2a0bb8[_0x4d90ed(0xc8)](_0x22b9b3);}),this[_0x49e27a(0x148)]=_0x2a0bb8;},'oneditprepare'(){const _0x3e944b=_0x16839e,_0x7ba28a=this,_0x11b2a8=RED[_0x3e944b(0xbf)]['create']({'id':_0x3e944b(0x101),'onchange':function(_0x18e295){const _0xeb471c=_0x3e944b;$(_0xeb471c(0x174))[_0xeb471c(0xc9)]()[_0xeb471c(0xcb)](),$('#'+_0x18e295['id'])['show']();}});_0x11b2a8['addTab']({'id':_0x3e944b(0xbb),'label':_0x3e944b(0x162)},0x0),_0x11b2a8[_0x3e944b(0x14f)]({'id':_0x3e944b(0xf1),'label':_0x3e944b(0xe6)},0x1),setTimeout(function(){const _0x324162=_0x3e944b;_0x11b2a8[_0x324162(0x103)]();},0x0);{const _0x238b13=_0x5c7453=>{const _0x217ca2=_0x3e944b;switch(_0x5c7453){case null:case undefined:case'':case'None':$(_0x217ca2(0x13d))['hide']();break;case'Sign':case'SignAndEncrypt':{const _0x4f51f6=$('.section-securityPolicy');(_0x4f51f6[_0x217ca2(0xdf)]()===_0x217ca2(0x16c)||_0x4f51f6[_0x217ca2(0xdf)]()==='')&&_0x4f51f6[_0x217ca2(0xdf)](_0x217ca2(0x10c)),$(_0x217ca2(0x13d))['show']();}break;default:console[_0x217ca2(0x165)]('invalid\x20securityMode\x20'+_0x5c7453);}};_0x238b13(_0x7ba28a[_0x3e944b(0x119)]);const _0x272585=$(_0x3e944b(0x133));_0x272585['on']('change',()=>{const _0x54ec5f=_0x3e944b,_0x389481=_0x272585[_0x54ec5f(0xdf)]();_0x238b13(_0x389481);});}const _0x3c27be=$('#licenceWidget');_0x3c27be[_0x3e944b(0xca)]({'baseUrl':''});{const _0x400f96=$(_0x3e944b(0x117)),_0x475727=$(_0x3e944b(0x166)),_0x20ee8b=_0x4cda1b=>{const _0x2659d1=_0x3e944b;_0x4cda1b=_0x4cda1b||_0x2659d1(0xe9);switch(_0x4cda1b){case'Anonymous':$(_0x2659d1(0x114))[_0x2659d1(0xdf)](''),$(_0x2659d1(0x132))[_0x2659d1(0xdf)](''),_0x400f96[_0x2659d1(0xcb)](),_0x475727[_0x2659d1(0xcb)]();break;case'UserName':_0x400f96[_0x2659d1(0x14c)](),_0x475727[_0x2659d1(0xcb)]();break;case _0x2659d1(0x151):$(_0x2659d1(0x114))[_0x2659d1(0xdf)](''),$(_0x2659d1(0x132))[_0x2659d1(0xdf)](''),_0x475727[_0x2659d1(0x14c)](),_0x400f96[_0x2659d1(0xcb)]();break;default:console[_0x2659d1(0x165)](_0x2659d1(0x15c)+_0x4cda1b);}};_0x20ee8b(_0x7ba28a[_0x3e944b(0xdd)]);const _0x122af9=$(_0x3e944b(0x17b));_0x122af9['on'](_0x3e944b(0x14e),()=>{const _0x3a53c1=_0x3e944b,_0x579148=_0x122af9[_0x3a53c1(0xdf)]();_0x20ee8b(_0x579148);});}{$(_0x3e944b(0x130))[_0x3e944b(0xcb)](),$(_0x3e944b(0x10d))[_0x3e944b(0xe4)]('checked',![]),$(_0x3e944b(0x10d))['on'](_0x3e944b(0x14e),function(){const _0x39552d=_0x3e944b;$(this)[_0x39552d(0xe4)]('checked')?$(_0x39552d(0x130))[_0x39552d(0x14c)]():$(_0x39552d(0x130))[_0x39552d(0xcb)]();});}const _0x5290a4=$(_0x3e944b(0x116))[_0x3e944b(0xe4)]('checked');_0x5290a4?$(_0x3e944b(0x102))[_0x3e944b(0x14c)]():$(_0x3e944b(0x102))[_0x3e944b(0xcb)]();$('#node-config-input-useTransport')['on'](_0x3e944b(0x14e),function(){const _0xbf6a24=_0x3e944b;$(this)['prop'](_0xbf6a24(0x14a))?$(_0xbf6a24(0x102))['show']():$(_0xbf6a24(0x102))[_0xbf6a24(0xcb)]();});{$(_0x3e944b(0x122))['on'](_0x3e944b(0xf6),()=>_0x4e9a55(this,void 0x0,void 0x0,function*(){const _0x12d6e8=_0x3e944b,_0x1d5789=yield fetch('/opcua-endpoint2/client_certificate.json'),_0x53355b=yield _0x1d5789['json'](),_0x36c1df=JSON[_0x12d6e8(0x113)](_0x53355b,null,'\x20');alert(_0x36c1df);}));}{_0xd4efb6(_0x3e944b(0x146),$(_0x3e944b(0xe8)),()=>{const _0x19c349=_0x3e944b;var _0x3c8737;return{'url':_0x19c349(0xed),'body':{'endpointNode':{'id':_0x7ba28a['id'],'endpoint':$(_0x19c349(0x16d))[_0x19c349(0xdf)](),'name':$(_0x19c349(0xda))[_0x19c349(0xdf)](),'pkiName':(_0x3c8737=$(_0x19c349(0xfa)))===null||_0x3c8737===void 0x0?void 0x0:_0x3c8737['val'](),'securityMode':$('#node-config-input-securityMode')[_0x19c349(0xdf)](),'securityPolicy':$(_0x19c349(0x15b))[_0x19c349(0xdf)](),'userIdentityType':$(_0x19c349(0x17b))[_0x19c349(0xdf)](),'userName':$(_0x19c349(0x114))[_0x19c349(0xdf)](),'password':$(_0x19c349(0x132))[_0x19c349(0xdf)](),'userCertificate':$(_0x19c349(0x129))[_0x19c349(0xdf)](),'userPrivatekey':$(_0x19c349(0x13a))['val'](),'certificate':$(_0x19c349(0xfe))[_0x19c349(0xdf)](),'useTransport':$(_0x19c349(0xf0))['prop'](_0x19c349(0x14a)),'maxChunkCount':$(_0x19c349(0xf8))[_0x19c349(0xdf)](),'maxMessageSize':$('#node-input-maxMessageSize')[_0x19c349(0xdf)](),'receiveBufferSize':$('#node-input-receiveBufferSize')[_0x19c349(0xdf)](),'sendBufferSize':$(_0x19c349(0xcd))[_0x19c349(0xdf)]()}}};},()=>{});}{const _0xdb2c5e=(_0x1cd320,_0x1156a4)=>{const _0xfd1267=_0x3e944b;var _0x399fc6=_0x1cd320['width']()||0x64;_0x1cd320[_0xfd1267(0xd3)]('label')[_0xfd1267(0xd5)](_0xfd1267(0x10e),_0x399fc6-0xf);},_0x3687f8=$('#subscriptions-container')[_0x3e944b(0xd7)]({'min-height':_0x3e944b(0xde),'min-width':_0x3e944b(0x16b)})[_0x3e944b(0xdc)]({'addItem':(_0x51fe02,_0x107af4,_0x222776)=>{const _0x306e0a=_0x3e944b,_0x5c978b=_0x222776,_0x3791ac=$('.template')['clone']()[_0x306e0a(0x171)](_0x51fe02);_0x3791ac['removeAttr']('id')[_0x306e0a(0x141)](_0x306e0a(0xcb))['removeClass']('template')[_0x306e0a(0x13f)](_0x306e0a(0x108),_0x107af4),_0x3791ac[_0x306e0a(0xd3)]('.input-name')['val'](_0x5c978b[_0x306e0a(0x121)]),_0x3791ac['find'](_0x306e0a(0x143))[_0x306e0a(0xdf)](_0x5c978b[_0x306e0a(0x144)][_0x306e0a(0x12b)]),_0x3791ac[_0x306e0a(0xd3)](_0x306e0a(0x16e))[_0x306e0a(0xdf)](_0x5c978b[_0x306e0a(0x144)][_0x306e0a(0x167)]),_0x3791ac[_0x306e0a(0xd3)](_0x306e0a(0xdb))[_0x306e0a(0xdf)](_0x5c978b['parameters'][_0x306e0a(0x10f)]),_0x3791ac[_0x306e0a(0xd3)]('.input-maxNotificationsPerPublish')[_0x306e0a(0xdf)](_0x5c978b[_0x306e0a(0x144)][_0x306e0a(0x16a)]||0x0),_0x3791ac[_0x306e0a(0xd3)](_0x306e0a(0xc6))['val'](_0x5c978b[_0x306e0a(0x144)][_0x306e0a(0xd2)]||0x0),_0x3791ac[_0x306e0a(0xd3)]('.subscription-id')[_0x306e0a(0xd1)](''+_0x107af4),_0x5c978b[_0x306e0a(0x176)]&&_0x3791ac[_0x306e0a(0xd3)](_0x306e0a(0xff))[_0x306e0a(0xe4)]('readonly',!![]),_0x3791ac[_0x306e0a(0xd3)](_0x306e0a(0xc5))[_0x306e0a(0xe4)](_0x306e0a(0x14a),_0x5c978b[_0x306e0a(0x176)]),_0x5c978b[_0x306e0a(0x176)]&&(_0x51fe02['find'](_0x306e0a(0x124))[_0x306e0a(0xe1)](_0x306e0a(0xcb)),setTimeout(()=>_0x3791ac[_0x306e0a(0xd3)](_0x306e0a(0xc5))[_0x306e0a(0xe4)](_0x306e0a(0xe5),!![]),0xa));},'removable':!![],'resizeItem':_0xdb2c5e}),_0x1232e4=()=>{const _0x2ff962=_0x3e944b,_0x1cc12f=_0x7ba28a['subscriptions']||[];_0x1cc12f[_0x2ff962(0x12c)]===0x0&&_0x1cc12f[_0x2ff962(0xc8)]({'id':'s1','name':_0x2ff962(0x149),'isDefault':!![],'parameters':Object[_0x2ff962(0x134)]({},_0x5993c8)});_0x3687f8['editableList'](_0x2ff962(0x10b));for(const _0x74f603 of _0x1cc12f){_0x3687f8['editableList'](_0x2ff962(0xbe),_0x74f603);}};_0x1232e4();}}});}()));
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNvdXJjZU1hcCJdLCJuYW1lcyI6WyJfMHg0ZTlhNTUiLCJfMHgzY2Q2MWYiLCJfMHgxZWEzYTAiLCJfMHgzMTdlOTciLCJfMHgyMTlmMjMiLCJfMHg1YTY3N2IiLCJfMHgyNDY4ZWYiLCJfMHgxYzg3NmIiLCJQcm9taXNlIiwiXzB4MjRlZmM1IiwiXzB4MmFiNTc1IiwiXzB4NTY1MzM5IiwiXzB4MTM1NmE1IiwiXzB4MmI5MTY2IiwiXzB4NDliYzM1IiwiXzB4N2I5ZDczIiwiXzB4NTE3YzliIiwiXzB4MTU1YmM4IiwiXzB4MzcyNTYxIiwiU3VwcHJlc3NlZEVycm9yIiwiXzB4MTZmMThjIiwiXzB4YjAzZGIwIiwiXzB4MTkxMTQzIiwiXzB4Yzk3NTRmIiwiRXJyb3IiLCJfMHhkNGVmYjYiLCJfMHgxMWI1YmQiLCJfMHgxYzFlMTIiLCJfMHgyYThiMDQiLCJfMHg0MGJlOGYiLCJfMHg0ZmNlNWEiLCIkIiwiXzB4M2EzOTI4IiwiXzB4MzlhNWFlIiwiXzB4MmIyYjkxIiwiXzB4Mzg0YzQ3IiwiYm9keSIsIl8weDNiOTVjMSIsInVybCIsIl8weDE4MzNjMCIsImZldGNoIiwiSlNPTiIsIl8weDNiYjQ1ZCIsIl8weDQxMmYxMSIsImNvbnNvbGUiLCJfMHg1Y2JkNjkiLCJfMHhmMGUwMDYiLCJfMHg0ZWY2N2YiLCJfMHgxYmM3ZGMiLCJfMHgxODVlNDciLCJBcnJheSIsIl8weDM4MjIzYiIsIl8weDVhZDMwOSIsIl8weDUwMzZmOSIsIl8weDIxZmU3NCIsImFyZ3VtZW50cyIsIl8weDc5ZjA5MSIsIl8weDM3OTBlZCIsIl8weDQ1MDUwOSIsIl8weDNkNzM4OSIsIl8weDI5NTI0NCIsIkRhdGUiLCJfMHhlNTRjMGQiLCJfMHg0ODE2MWUiLCJfMHgxZDcxNDQiLCJfMHgyMTViZDMiLCJfMHgxMDU0NjEiLCJfMHg1M2U0YmIiLCJfMHgxOWI4ODciLCJfMHgyMTVkNzAiLCJfMHgyNDRkYWUiLCJfMHg0MThhYjkiLCJfMHgzZGE0ZGIiLCJfMHg1OWRjNWEiLCJfMHgzNmJlZDIiLCJkb2N1bWVudCIsIl8weDIyMDIxOSIsIl8weDMzYWFmZCIsIl8weDQ5OTJlMyIsIl8weDJiY2Y2ZCIsIl8weGQwMzJhMyIsIlVSTCIsIl8weDFlM2IyZSIsIl8weDU5OTNjOCIsIlJFRCIsIl8weDM4YTM5NiIsIl8weDQ4YjIxMSIsIk9iamVjdCIsIl8weDU3ZjZjZSIsIl8weGY1OTAzNyIsIl8weDE4YmM3OCIsIl8weDJhMGJiOCIsIl8weDI3MDgzNyIsIl8weDMzMGY1NiIsIl8weDMwNDliNCIsIl8weDVlNjk1MiIsIl8weDUxMDg1MiIsIl8weDIyYjliMyIsIl8weDdiYTI4YSIsIl8weDExYjJhOCIsIl8weDE4ZTI5NSIsInNldFRpbWVvdXQiLCJfMHgyMzhiMTMiLCJfMHg1Yzc0NTMiLCJ1bmRlZmluZWQiLCJfMHg0ZjUxZjYiLCJfMHgyNzI1ODUiLCJfMHgzODk0ODEiLCJfMHgzYzI3YmUiLCJfMHg0MDBmOTYiLCJfMHg0NzU3MjciLCJfMHgyMGVlOGIiLCJfMHg0Y2RhMWIiLCJfMHgxMjJhZjkiLCJfMHg1NzkxNDgiLCJfMHg1MjkwYTQiLCJfMHgxZDU3ODkiLCJfMHg1MzM1NWIiLCJfMHgzNmMxZGYiLCJhbGVydCIsIl8weDNjODczNyIsIl8weGRiMmM1ZSIsIl8weDFjZDMyMCIsIl8weDExNTZhNCIsIl8weDM5OWZjNiIsIl8weDM2ODdmOCIsIl8weDUxZmUwMiIsIl8weDEwN2FmNCIsIl8weDIyMjc3NiIsIl8weDVjOTc4YiIsIl8weDM3OTFhYyIsIl8weDEyMzJlNCIsIl8weDFjYzEyZiIsIl8weDc0ZjYwMyJdLCJtYXBwaW5ncyI6Im1wSkFBQSxDQUFDLFUsQ0FDRyxhLHdCQW1CQSxTQUFTQSxTQUFULENBQW1CQyxTQUFuQixDQUE0QkMsU0FBNUIsQ0FBd0NDLFNBQXhDLENBQTJDQyxTQUEzQyxDLENBQ0ksU0FBU0MsU0FBVCxDQUFlQyxTQUFmLEMsUUFBK0JBLFNBQUEsWUFBaUJILFNBQWpCLENBQXFCRyxTQUFyQixDQUE2QixJQUFJSCxTQUFKLENBQU0sU0FBVUksU0FB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LFNBQUEsQyxlQUFBLEUsZUFBQSxFLGVBQUEsRSxVQUFBLEMsSUFBQSxDLENBRUpBLFNBQUEsQyxlQUFBLEUsZUFBQSxFLGVBQUEsRSxnQkFBQSxDQUFpREQsU0FBQSxDLGdCQUFBLENBQWpELEMsQ0FFSUEsU0FBQSxDLGdCQUFBLEMsR0FDQUgsU0FBQSxDLE1BQUEsRSxnQkFBQSxFLGVBQUEsRSxlQUFBLEMsQ0FDQXpCLFVBQUEsQ0FBVyxJQUFNNkIsU0FBQSxDLGVBQUEsRSxlQUFBLEUsZUFBQSxFLGVBQUEsQyxJQUFBLENBQWpCLEMsR0FBQSxDLEdBbkJNLEMsV0F1QmQsQyxJQXZCYyxDLFlBd0JkLENBQVlULFNBeEJFLENBRk8sQ0FKekIsQ0FnQ01VLFNBQUEsQ0FBa0IsSSwyQkFDZEMsU0FBQSxDQUFnQmxDLFNBQUEsQyxlQUFBLEdBQXNCLEUsQ0FDeENrQyxTQUFBLEMsZ0JBQUEsSSxLQUVBQSxTQUFBLEMsZUFBQSxFQUFtQixDLElBQ2YsQyxJQURlLEMsTUFFZixDLGdCQUZlLEMsV0FHZixDLElBSGUsQyxZQUlmLENBQVk3QyxNQUFBLEMsZ0JBQUEsRUFBYyxFQUFkLENBQWtCSixTQUFsQixDQUpHLENBQW5CLEMsQ0FPSjBDLFNBQUEsQyxjQUFBLEUsZ0JBQUEsRUFDQSxVQUFXUSxTQUFYLElBQTJCRCxTQUEzQixDLENBRUlQLFNBQUEsQyxjQUFBLEUsZUFBQSxDQUF5Q1EsU0FBekMsQyxHQTlDUixDQWlEQUYsU0FBQSxFLEdBdFY4QixDQUExQyxDLEVBdk9KLEciLCJzb3VyY2VzQ29udGVudCI6WyIoZnVuY3Rpb24gKCkge1xuICAgICd1c2Ugc3RyaWN0JztcblxuICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICAgIENvcHlyaWdodCAoYykgTWljcm9zb2Z0IENvcnBvcmF0aW9uLlxyXG5cclxuICAgIFBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZC9vciBkaXN0cmlidXRlIHRoaXMgc29mdHdhcmUgZm9yIGFueVxyXG4gICAgcHVycG9zZSB3aXRoIG9yIHdpdGhvdXQgZmVlIGlzIGhlcmVieSBncmFudGVkLlxyXG5cclxuICAgIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIgQU5EIFRIRSBBVVRIT1IgRElTQ0xBSU1TIEFMTCBXQVJSQU5USUVTIFdJVEhcclxuICAgIFJFR0FSRCBUTyBUSElTIFNPRlRXQVJFIElOQ0xVRElORyBBTEwgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWVxyXG4gICAgQU5EIEZJVE5FU1MuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgQkUgTElBQkxFIEZPUiBBTlkgU1BFQ0lBTCwgRElSRUNULFxyXG4gICAgSU5ESVJFQ1QsIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyBPUiBBTlkgREFNQUdFUyBXSEFUU09FVkVSIFJFU1VMVElORyBGUk9NXHJcbiAgICBMT1NTIE9GIFVTRSwgREFUQSBPUiBQUk9GSVRTLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgTkVHTElHRU5DRSBPUlxyXG4gICAgT1RIRVIgVE9SVElPVVMgQUNUSU9OLCBBUklTSU5HIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFVTRSBPUlxyXG4gICAgUEVSRk9STUFOQ0UgT0YgVEhJUyBTT0ZUV0FSRS5cclxuICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqICovXHJcbiAgICAvKiBnbG9iYWwgUmVmbGVjdCwgUHJvbWlzZSwgU3VwcHJlc3NlZEVycm9yLCBTeW1ib2wgKi9cclxuXHJcblxyXG4gICAgZnVuY3Rpb24gX19hd2FpdGVyKHRoaXNBcmcsIF9hcmd1bWVudHMsIFAsIGdlbmVyYXRvcikge1xyXG4gICAgICAgIGZ1bmN0aW9uIGFkb3B0KHZhbHVlKSB7IHJldHVybiB2YWx1ZSBpbnN0YW5jZW9mIFAgPyB2YWx1ZSA6IG5ldyBQKGZ1bmN0aW9uIChyZXNvbHZlKSB7IHJlc29sdmUodmFsdWUpOyB9KTsgfVxyXG4gICAgICAgIHJldHVybiBuZXcgKFAgfHwgKFAgPSBQcm9taXNlKSkoZnVuY3Rpb24gKHJlc29sdmUsIHJlamVjdCkge1xyXG4gICAgICAgICAgICBmdW5jdGlvbiBmdWxmaWxsZWQodmFsdWUpIHsgdHJ5IHsgc3RlcChnZW5lcmF0b3IubmV4dCh2YWx1ZSkpOyB9IGNhdGNoIChlKSB7IHJlamVjdChlKTsgfSB9XHJcbiAgICAgICAgICAgIGZ1bmN0aW9uIHJlamVjdGVkKHZhbHVlKSB7IHRyeSB7IHN0ZXAoZ2VuZXJhdG9yW1widGhyb3dcIl0odmFsdWUpKTsgfSBjYXRjaCAoZSkgeyByZWplY3QoZSk7IH0gfVxyXG4gICAgICAgICAgICBmdW5jdGlvbiBzdGVwKHJlc3VsdCkgeyByZXN1bHQuZG9uZSA/IHJlc29sdmUocmVzdWx0LnZhbHVlKSA6IGFkb3B0KHJlc3VsdC52YWx1ZSkudGhlbihmdWxmaWxsZWQsIHJlamVjdGVkKTsgfVxyXG4gICAgICAgICAgICBzdGVwKChnZW5lcmF0b3IgPSBnZW5lcmF0b3IuYXBwbHkodGhpc0FyZywgX2FyZ3VtZW50cyB8fCBbXSkpLm5leHQoKSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgdHlwZW9mIFN1cHByZXNzZWRFcnJvciA9PT0gXCJmdW5jdGlvblwiID8gU3VwcHJlc3NlZEVycm9yIDogZnVuY3Rpb24gKGVycm9yLCBzdXBwcmVzc2VkLCBtZXNzYWdlKSB7XHJcbiAgICAgICAgdmFyIGUgPSBuZXcgRXJyb3IobWVzc2FnZSk7XHJcbiAgICAgICAgcmV0dXJuIGUubmFtZSA9IFwiU3VwcHJlc3NlZEVycm9yXCIsIGUuZXJyb3IgPSBlcnJvciwgZS5zdXBwcmVzc2VkID0gc3VwcHJlc3NlZCwgZTtcclxuICAgIH07XG5cbiAgICBmdW5jdGlvbiBtYW5hZ2VBUElDYWxsKHByZWZpeCwgYnRuLCBmdW5jLCBvblJlc3VsdCkge1xuICAgICAgICBjb25zdCBzdWNjZXNzSWNvbiA9ICQoYCMke3ByZWZpeH0tc3VjY2Vzc2ApO1xuICAgICAgICBjb25zdCBmYWlsdXJlSWNvbiA9ICQoYCMke3ByZWZpeH0tZmFpbHVyZWApO1xuICAgICAgICBjb25zdCBwZW5kaW5nSWNvbiA9ICQoYCMke3ByZWZpeH0tcGVuZGluZ2ApO1xuICAgICAgICBjb25zdCBtZXNzYWdlcyA9ICQoYCMke3ByZWZpeH0tbWVzc2FnZXNgKTtcbiAgICAgICAgbGV0IGFjdGlvblBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3VjY2Vzc0ljb24uaGlkZSgpO1xuICAgICAgICBmYWlsdXJlSWNvbi5oaWRlKCk7XG4gICAgICAgIHBlbmRpbmdJY29uLmhpZGUoKTtcbiAgICAgICAgYnRuLm9uKFwiY2xpY2tcIiwgKCkgPT4ge1xuICAgICAgICAgICAgaWYgKGFjdGlvblBlbmRpbmcpXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgYWN0aW9uUGVuZGluZyA9IHRydWU7XG4gICAgICAgICAgICBwZW5kaW5nSWNvbi5yZW1vdmVDbGFzcyhcImhpZGVcIik7XG4gICAgICAgICAgICBwZW5kaW5nSWNvbi5odG1sKFwiVGVzdGluZyBDb25uZWN0aW9uIC4uLlwiKTtcbiAgICAgICAgICAgIHN1Y2Nlc3NJY29uLmFkZENsYXNzKFwiaGlkZVwiKTtcbiAgICAgICAgICAgIGZhaWx1cmVJY29uLmFkZENsYXNzKFwiaGlkZVwiKTtcbiAgICAgICAgICAgIG1lc3NhZ2VzLmh0bWwoXCJcIik7XG4gICAgICAgICAgICBjb25zdCB7IGJvZHksIHVybCB9ID0gZnVuYygpO1xuICAgICAgICAgICAgLy8geHggY29uc29sZS5sb2coXCJ4eHh4eFwiLCBib2R5KTtcbiAgICAgICAgICAgIGZldGNoKHVybCwge1xuICAgICAgICAgICAgICAgIG1ldGhvZDogXCJQT1NUXCIsXG4gICAgICAgICAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgICAgICAgICAgICBcIkNvbnRlbnQtVHlwZVwiOiBcImFwcGxpY2F0aW9uL2pzb25cIixcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KGJvZHkpLFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAudGhlbigoZGF0YSkgPT4gZGF0YS5qc29uKCkpXG4gICAgICAgICAgICAgICAgLnRoZW4oKGpzb24pID0+IHtcbiAgICAgICAgICAgICAgICBhY3Rpb25QZW5kaW5nID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgcGVuZGluZ0ljb24uaGlkZSgpO1xuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKEpTT04uc3RyaW5naWZ5KGpzb24sIG51bGwsIFwiIFwiKSk7XG4gICAgICAgICAgICAgICAgaWYgKGpzb24ucmVzdWx0ID09PSBcIm9rXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgc3VjY2Vzc0ljb24ucmVtb3ZlQ2xhc3MoXCJoaWRlXCIpO1xuICAgICAgICAgICAgICAgICAgICBmYWlsdXJlSWNvbi5hZGRDbGFzcyhcImhpZGVcIik7XG4gICAgICAgICAgICAgICAgICAgIG1lc3NhZ2VzLmh0bWwoanNvbi5tZXNzYWdlLnJlcGxhY2UoXCJcXG5cIiwgXCI8YnI+XCIpKTtcbiAgICAgICAgICAgICAgICAgICAgb25SZXN1bHQobnVsbCwganNvbik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBhZGFwdCA9IChzdHIpID0+ICFzdHJcbiAgICAgICAgICAgICAgICAgICAgICAgID8gXCJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgOiBzdHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuc3BsaXQoXCJcXG5cIilcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAubWFwKChhKSA9PiBgPHA+JHthfTwvcD5gKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5qb2luKFwiXFxuXCIpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBhZGFwdDIgPSAoc3RyKSA9PiAoQXJyYXkuaXNBcnJheShzdHIpID8gc3RyLm1hcChhZGFwdCkuam9pbihcIlxcblwiKSA6IGFkYXB0KHN0cikpO1xuICAgICAgICAgICAgICAgICAgICBzdWNjZXNzSWNvbi5hZGRDbGFzcyhcImhpZGVcIik7XG4gICAgICAgICAgICAgICAgICAgIGZhaWx1cmVJY29uLnJlbW92ZUNsYXNzKFwiaGlkZVwiKTtcbiAgICAgICAgICAgICAgICAgICAgbWVzc2FnZXMuaHRtbChhZGFwdDIoanNvbi5tZXNzYWdlKSArIGFkYXB0Mihqc29uLmV4dHJhKSk7XG4gICAgICAgICAgICAgICAgICAgIG9uUmVzdWx0KG5ldyBFcnJvcihqc29uLnJlc3VsdCksIGpzb24pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgLmNhdGNoKChlcnIpID0+IHtcbiAgICAgICAgICAgICAgICBhY3Rpb25QZW5kaW5nID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgcGVuZGluZ0ljb24uYWRkQ2xhc3MoXCJoaWRlXCIpO1xuICAgICAgICAgICAgICAgIHN1Y2Nlc3NJY29uLmFkZENsYXNzKFwiaGlkZVwiKTtcbiAgICAgICAgICAgICAgICBmYWlsdXJlSWNvbi5yZW1vdmVDbGFzcyhcImhpZGVcIik7XG4gICAgICAgICAgICAgICAgbWVzc2FnZXMuaHRtbChcImludGVybmFsIGVycm9yIFwiICsgZXJyLm1lc3NhZ2UpO1xuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiZXJyXCIsIGVycik7XG4gICAgICAgICAgICAgICAgb25SZXN1bHQoZXJyLCBudWxsKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBjb25zdCBwcmljaW5nVGFibGVJZCA9IFwicHJjdGJsXzFPSnQ0OUJDTmNjYnpzVnprYUFOT2dGTFwiO1xuICAgIGNvbnN0IHB1Ymxpc2hhYmxlS2V5ID0gXCJwa19saXZlXzUxSHNFMXNCQ05jY2J6c1Z6dDd6YXEydXYyMHBrcnlXbGxBenZaZ1pkNUFod0ZJOUEzcUJJZU9Kdkp3UUYwOGxEb0xwRnFMandteUE3OXduUG5ZTHN2S2p0MDA5ZjAwVnBDV1wiO1xuICAgIGZ1bmN0aW9uIGZldGNoTGljZW5jZUluZm8oKSB7XG4gICAgICAgIHJldHVybiBfX2F3YWl0ZXIodGhpcywgYXJndW1lbnRzLCB2b2lkIDAsIGZ1bmN0aW9uKiAoYmFzZVVybCA9IFwiXCIpIHtcbiAgICAgICAgICAgIGNvbnN0IHJvb3QgPSBgJHtiYXNlVXJsfS9vcGN1YS1lbmRwb2ludDJgO1xuICAgICAgICAgICAgY29uc3QgdXJsID0gYCR7cm9vdH0vbGljZW5jZUluZm9gO1xuICAgICAgICAgICAgY29uc3QgZGF0YSA9IHlpZWxkIGZldGNoKHVybCwge1xuICAgICAgICAgICAgICAgIG1ldGhvZDogXCJQT1NUXCIsXG4gICAgICAgICAgICAgICAgaGVhZGVyczogeyBcIkNvbnRlbnQtVHlwZVwiOiBcImFwcGxpY2F0aW9uL2pzb25cIiB9LFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBjb25zdCB0b2RheSA9IG5ldyBEYXRlKCkudG9JU09TdHJpbmcoKTtcbiAgICAgICAgICAgIGlmIChkYXRhLnN0YXR1cyAhPT0gMjAwKSB7XG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2coXCJmZXRjaGluZyBmYWlsZWQgd2l0aCBlcnJvclwiLCBkYXRhLnN0YXR1cywgZGF0YS5zdGF0dXNUZXh0KTtcbiAgICAgICAgICAgICAgICByZXR1cm4geyBzdGF0dXM6IFwiRkFJTEVEXCIsIHR5cGU6IFwiRlJFRVdBUkVcIiwgbGljZW5jZUluZm86IHsgZXhwaXJ5RGF0ZTogdG9kYXkgfSB9O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QganNvbiA9IHlpZWxkIGRhdGEuanNvbigpO1xuICAgICAgICAgICAgcmV0dXJuIGpzb247XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBjb25zdCBkZWNsYXJlTGljZW5jZVdpZGdldCA9ICgpID0+IHtcbiAgICAgICAgJC53aWRnZXQoXCJzdGVyZml2ZS5saWNlbmNlV2lkZ2V0XCIsIHtcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICBiYXNlVXJsOiBcIlwiLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIF9jcmVhdGUoKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgdGhhdCA9IHRoaXM7XG4gICAgICAgICAgICAgICAgY29uc3QgY29udGFjdExpbmsgPSBgPGEgaHJlZj1cIm1haWx0bzpzdXBwb3J0QHN0ZXJmaXZlLmNvbVwiIHN1YmplY3Q9XCJAb3BjdWEvZm9yLW5vZGUtcmVkIHN1cHBvcnQgcmVxdWVzdFwiPm1haWx0bzpzdXBwb3J0QHN0ZXJmaXZlLmNvbTwvYT5gO1xuICAgICAgICAgICAgICAgIGNvbnN0IHdlYnNpdGVMaW5rID0gYDxhIGhyZWY9XCJodHRwczovL3d3dy5zdGVyZml2ZS5jb20vb3BjdWEvZm9yLW5vZGUtcmVkXCIgdGFyZ2V0PeKAnV9ibGFua+KAnT5TdGVyZml2ZSdzIHdlYnNpdGUgPC9hPmA7XG4gICAgICAgICAgICAgICAgZmV0Y2hMaWNlbmNlSW5mbyh0aGF0LmJhc2VVcmwpXG4gICAgICAgICAgICAgICAgICAgIC50aGVuKChqc29uKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGxldCBpY29uID0gXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgbGV0IG1zZyA9IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgIGxldCBkZXRhaWxzID0gXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RhdHVzID0ganNvbi5zdGF0dXM7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGRheUxlZnQgPSBqc29uLmRheXNMZWZ0O1xuICAgICAgICAgICAgICAgICAgICBzd2l0Y2ggKHN0YXR1cykge1xuICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSBcIkFVVEhPUklaRURcIjpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uID0gXCJmYSBmYS1jaGVjay1jaXJjbGVcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzd2l0Y2ggKGpzb24udHlwZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlIFwiVFJJQUxcIjoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbXNnID0gXCJUcmlhbCBsaWNlbmNlXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRhaWxzID0gYFRoZSBUcmlhbCB3aWxsIGV4cGlyZSBpbiAke2RheUxlZnR9IGRheXMuXFxuQnV5IG9ubGluZSBhbmQgdmlzaXQgJHt3ZWJzaXRlTGlua30gdG8gYWNxdWlyZSBhIGxpY2Vuc2UuYDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgXCJQUk9GRVNTSU9OQUxcIjpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1zZyA9IGBZb3VyIGxpY2VuY2UgaXMgdmFsaWQuYDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChkYXlMZWZ0IDwgOTAgJiYgZGF5TGVmdCA+PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbXNnICs9IGAgSXQgd2lsbCBleHBpcmUgaW4gJHtkYXlMZWZ0fSBkYXlzLmA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBkZXRhaWxzID0gYCR7d2Vic2l0ZUxpbmt9PGJyPiR7Y29udGFjdExpbmt9YDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRldGFpbHMgPSBqc29uLmxpY2VuY2VJbmZvLmxpY2VuY2VUeXBlICsgXCIgLSBcIiArIChqc29uLmxpY2VuY2VJbmZvLm9uUHJlbWlzZVNlcnZlckhvc3QgfHwgXCJcIik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSBcIkZSRUVXQVJFXCI6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtc2cgPSBcIkZyZWV3YXJlIGxpY2VuY2VcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRldGFpbHMgPSBgVGhpcyBpcyBhIGZyZWV3YXJlIGxpY2VuY2UsIGFuZCBoYXZlIHNvbWUgbGltaXRhdGlvbnMuXFxuJHt3ZWJzaXRlTGlua30gZm9yIG1vcmUgaW5mb3JtYXRpb24uYDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgXCJFWFBJUkVEXCI6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvbiA9IFwiZmEgZmEtY2FsZW5kYXItdGltZVwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1zZyA9IFwiTGljZW5jZSBoYXMgZXhwaXJlZFwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRldGFpbHMgPVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIllvdXIgbGljZW5zZSBoYXMgZXhwaXJlZC4gUGxlYXNlIGNvbnRhY3Qgb3VyIHN1cHBvcnQgdGVhbSBvciB2aXNpdCBvdXIgd2Vic2l0ZSB0byByZW5ldyB5b3VyIGxpY2Vuc2UgYW5kIHJlZ2FpbiBhY2Nlc3MgdG8gb3VyIHNlcnZpY2VzLlwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSBcIkZBSUxFRFwiOlxuICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uID0gXCJmYSBmYS1leGNsYW1hdGlvbi1jaXJjbGVcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtc2cgPSBcIllvdXIgbGljZW5zZSBpcyBjdXJyZW50bHkgaW52YWxpZC5cIjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRhaWxzID0gYFBsZWFzZSBjb250YWN0ICR7Y29udGFjdExpbmt9IG9yIHZpc2l0IG91ciB3ZWJzaXRlIHRvIHJlbmV3IHlvdXIgbGljZW5zZSBhbmQgcmVnYWluIGFjY2VzcyB0byBvdXIgc2VydmljZXMuzIBgO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC8qKiAqL1xuICAgICAgICAgICAgICAgICAgICAvLyB0aGlzLmVsZW1lbnQudGV4dChcIkxpY2VuY2UgXCIgKyBKU09OLnN0cmluZ2lmeShqc29uKSk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZWxlbWVudC5hZGRDbGFzcyhcImxpY2VuY2Utd2lkZ2V0XCIpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmVsZW1lbnQuYWRkQ2xhc3MoXCJsaWNlbmNlLXdpZGdldC1cIiArIHN0YXR1cyk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZWxlbWVudC5hcHBlbmQoJChcIjxzcGFuPlwiKS5hZGRDbGFzcyhcImxpY2VuY2Utd2lkZ2V0LWljb25cIikuYXBwZW5kKCQoXCI8aT5cIikuYWRkQ2xhc3MoaWNvbikpKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5lbGVtZW50LmFwcGVuZCgkKFwiPHNwYW4+XCIpLmFkZENsYXNzKFwibGljZW5jZS13aWRnZXQtbXNnXCIpLnRleHQobXNnKSk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZWxlbWVudC5hcHBlbmQoJChcIjxicj5cIikpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmVsZW1lbnQuYXBwZW5kKCQoXCI8c3Bhbj5cIikuYWRkQ2xhc3MoXCJsaWNlbmNlLXdpZGdldC1kZXRhaWxzXCIpLmFwcGVuZChkZXRhaWxzKSk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChzdGF0dXMgPT09IFwiRVhQSVJFRFwiIHx8IHN0YXR1cyA9PT0gXCJGQUlMRURcIiB8fCBqc29uLnR5cGUgPT09IFwiRlJFRVdBUkVcIiB8fCBqc29uLnR5cGUgPT09IFwiVFJJQUxcIikge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3Vic2NyaWJlQnV0dG9uID0gJChcIjxidXR0b24vPlwiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHN1YnNjcmliZUJ1dHRvbi5hdHRyKFwiaWRcIiwgXCJzdWJzY3JpYmUtYnV0dG9uXCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgc3Vic2NyaWJlQnV0dG9uLmF0dHIoXCJjbGFzc1wiLCBcImJ0biBidG4tcHJpbWFyeVwiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHN1YnNjcmliZUJ1dHRvbi5hdHRyKFwic3R5bGVcIiwgXCJtYXJnaW4tdG9wOiAyMHB4O1wiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHN1YnNjcmliZUJ1dHRvbi50ZXh0KFwiU3Vic2NyaWJlXCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5lbGVtZW50LmFwcGVuZChzdWJzY3JpYmVCdXR0b24pO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc2NyaXB0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcInNjcmlwdFwiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIFNldCBhdHRyaWJ1dGVzIGZvciB0aGUgc2NyaXB0IGVsZW1lbnRcbiAgICAgICAgICAgICAgICAgICAgICAgIHNjcmlwdC5zcmMgPSBcImh0dHBzOi8vanMuc3RyaXBlLmNvbS92My9wcmljaW5nLXRhYmxlLmpzXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICBzY3JpcHQuYXN5bmMgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gQXBwZW5kIHRoZSBzY3JpcHQgZWxlbWVudCB0byB0aGUgaGVhZCAob3IgYm9keSkgb2YgdGhlIGRvY3VtZW50XG4gICAgICAgICAgICAgICAgICAgICAgICAkKFwiaGVhZFwiKS5hcHBlbmQoc2NyaXB0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0cmlwZVByaWNpbmdUYWJsZSA9ICQoXCI8c3RyaXBlLXByaWNpbmctdGFibGUvPlwiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIFNldCBhdHRyaWJ1dGVzIGZvciB0aGUgZWxlbWVudFxuICAgICAgICAgICAgICAgICAgICAgICAgc3RyaXBlUHJpY2luZ1RhYmxlLmF0dHIoXCJwcmljaW5nLXRhYmxlLWlkXCIsIHByaWNpbmdUYWJsZUlkKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cmlwZVByaWNpbmdUYWJsZS5hdHRyKFwicHVibGlzaGFibGUta2V5XCIsIHB1Ymxpc2hhYmxlS2V5KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cmlwZVByaWNpbmdUYWJsZS5hdHRyKFwic3R5bGVcIiwgXCJoZWlnaHQ6IDEwMCU7bWF4LWhlaWdodDogMTAwJTtcIik7XG4gICAgICAgICAgICAgICAgICAgICAgICBzdHJpcGVQcmljaW5nVGFibGUuaGlkZSgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5lbGVtZW50LmFwcGVuZChzdHJpcGVQcmljaW5nVGFibGUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgc3Vic2NyaWJlQnV0dG9uLm9uKFwiY2xpY2tcIiwgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cmlwZVByaWNpbmdUYWJsZS5zaG93KCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Vic2NyaWJlQnV0dG9uLmhpZGUoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmVsZW1lbnQuYXR0cihcInN0eWxlXCIsIFwiaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAuY2F0Y2goKGVycikgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgfTtcblxuICAgIGRlY2xhcmVMaWNlbmNlV2lkZ2V0KCk7XG4gICAgZnVuY3Rpb24gaXNWYWxpZE9QQ19VQV9VUkkoc3RyKSB7XG4gICAgICAgIGxldCB1cmw7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICB1cmwgPSBuZXcgVVJMKHN0cik7XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKF8pIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdXJsLnByb3RvY29sID09PSBcIm9wYy50Y3A6XCI7XG4gICAgfVxuICAgIGNvbnN0IGRlZmF1bHRTdWJzY3JpcHRpb25QYXJhbWV0ZXJzID0ge1xuICAgICAgICBwdWJsaXNoaW5nRW5hYmxlZDogdHJ1ZSxcbiAgICAgICAgcmVxdWVzdGVkTGlmZXRpbWVDb3VudDogMTAwMCxcbiAgICAgICAgcmVxdWVzdGVkTWF4S2VlcEFsaXZlQ291bnQ6IDEwLCAvLyBldmVyeSAxMCBzZWNvbmRzXG4gICAgICAgIHJlcXVlc3RlZFB1Ymxpc2hpbmdJbnRlcnZhbDogMTAwMCxcbiAgICAgICAgbWF4Tm90aWZpY2F0aW9uc1BlclB1Ymxpc2g6IDAsXG4gICAgICAgIHByaW9yaXR5OiAxMDAsXG4gICAgfTtcbiAgICBSRUQubm9kZXMucmVnaXN0ZXJUeXBlKFwiT3BjVWEtRW5kcG9pbnQyXCIsIHtcbiAgICAgICAgY2F0ZWdvcnk6IFwiY29uZmlnXCIsXG4gICAgICAgIHBhbGV0dGVMYWJlbDogXCJvcGN1YSBlbmRwb2ludFwiLFxuICAgICAgICBkZWZhdWx0czoge1xuICAgICAgICAgICAgbmFtZTogeyB2YWx1ZTogXCJcIiB9LFxuICAgICAgICAgICAgZW5kcG9pbnQ6IHtcbiAgICAgICAgICAgICAgICB2YWx1ZTogXCJvcGMudGNwOi8vb3BjdWFkZW1vLnN0ZXJmaXZlLmNvbToyNjU0My9VQS9TYW1wbGVTZXJ2ZXJcIixcbiAgICAgICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICB2YWxpZGF0ZTogaXNWYWxpZE9QQ19VQV9VUkksXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgLy8gU2VjdXJpdHkgTW9kZVxuICAgICAgICAgICAgc2VjdXJpdHlNb2RlOiB7IHZhbHVlOiBcIk5vbmVcIiB9LFxuICAgICAgICAgICAgc2VjdXJpdHlQb2xpY3k6IHtcbiAgICAgICAgICAgICAgICB2YWx1ZTogXCJOb25lXCIsXG4gICAgICAgICAgICAgICAgdmFsaWRhdGU6ICh2YWx1ZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKVxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHVzZXJJZGVudGl0eVR5cGU6IHsgdmFsdWU6IFwiQW5vbnltb3VzXCIgfSxcbiAgICAgICAgICAgIHBraU5hbWU6IHsgdmFsdWU6IFwiXCIsIHZhbGlkYXRlOiAodmFsdWUpID0+ICghdmFsdWUgfHwgdmFsdWUubWF0Y2goL1swLTlhLXpBLVpdKi8pID8gdHJ1ZSA6IGZhbHNlKSB9LFxuICAgICAgICAgICAgLy8gdG8gdXNlIHdoZW4gdXNlcklkZW50aXR5VHlwZSBpcyBVc2VyTmFtZVxuICAgICAgICAgICAgLy8gY3JlZGVudGlhbHM6IHtcbiAgICAgICAgICAgIC8vICAgICB1c2VyTmFtZTogeyB2YWx1ZTogXCJcIiwgdHlwZTogXCJ0ZXh0XCIgfSxcbiAgICAgICAgICAgIC8vICAgICBwYXNzd29yZDogeyB2YWx1ZTogXCJcIiwgdHlwZTogXCJwYXNzd29yZFwiIH0sXG4gICAgICAgICAgICAvLyAgICAgLy8gdG8gdXNlIHdoZW4gdXNlcklkZW50aXR5VHlwZSBpcyBDZXJ0aWZpY2F0ZVxuICAgICAgICAgICAgLy8gICAgIHVzZXJDZXJ0aWZpY2F0ZTogeyB2YWx1ZTogXCJcIiwgdHlwZTogXCJ0ZXh0XCIgfSxcbiAgICAgICAgICAgIC8vICAgICB1c2VyUHJpdmF0ZWtleTogeyB2YWx1ZTogXCJcIiAsIHR5cGU6IFwicGFzc3dvcmRcIn0sXG4gICAgICAgICAgICAvLyB9IGFzIGFueSAvKiBjaXJjdW12ZW50IGEgYnVnIGluIG5vZGUtcmVkICovLFxuICAgICAgICAgICAgLy8gdXNlcm5hbWVcbiAgICAgICAgICAgIHVzZVRyYW5zcG9ydDogeyB2YWx1ZTogZmFsc2UsIHJlcXVpcmVkOiBmYWxzZSB9LFxuICAgICAgICAgICAgbWF4Q2h1bmtDb3VudDogeyB2YWx1ZTogMSwgcmVxdWlyZWQ6IGZhbHNlIH0sXG4gICAgICAgICAgICBtYXhNZXNzYWdlU2l6ZTogeyB2YWx1ZTogODE5MiwgcmVxdWlyZWQ6IGZhbHNlIH0sIC8vIHNob3VsZCBiZSBhdCBsZWFzdCA4MTkyXG4gICAgICAgICAgICByZWNlaXZlQnVmZmVyU2l6ZTogeyB2YWx1ZTogODE5MiwgcmVxdWlyZWQ6IGZhbHNlIH0sXG4gICAgICAgICAgICBzZW5kQnVmZmVyU2l6ZTogeyB2YWx1ZTogODE5MiwgcmVxdWlyZWQ6IGZhbHNlIH0sXG4gICAgICAgICAgICBzdWJzY3JpcHRpb25zOiB7XG4gICAgICAgICAgICAgICAgdmFsdWU6IFtcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwiczFcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwiRGVmYXVsdCBTdWJzY3JpcHRpb25cIixcbiAgICAgICAgICAgICAgICAgICAgICAgIGlzRGVmYXVsdDogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtZXRlcnM6IE9iamVjdC5hc3NpZ24oe30sIGRlZmF1bHRTdWJzY3JpcHRpb25QYXJhbWV0ZXJzKSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwiczJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwiU2xvdyBTdWJzY3JpcHRpb25cIixcbiAgICAgICAgICAgICAgICAgICAgICAgIGlzRGVmYXVsdDogZmFsc2UsXG4gICAgICAgICAgICAgICAgICAgICAgICBwYXJhbWV0ZXJzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHVibGlzaGluZ0VuYWJsZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWVzdGVkTGlmZXRpbWVDb3VudDogMTAwLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVlc3RlZE1heEtlZXBBbGl2ZUNvdW50OiAzLCAvLyBldmVyeSAxNSBzZWNvbmRzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWVzdGVkUHVibGlzaGluZ0ludGVydmFsOiA1MDAwLCAvL1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heE5vdGlmaWNhdGlvbnNQZXJQdWJsaXNoOiAxMDAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJpb3JpdHk6IDEwLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwiczNcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwiRmFzdCBTdWJzY3JpcHRpb25cIixcbiAgICAgICAgICAgICAgICAgICAgICAgIGlzRGVmYXVsdDogZmFsc2UsXG4gICAgICAgICAgICAgICAgICAgICAgICBwYXJhbWV0ZXJzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHVibGlzaGluZ0VuYWJsZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWVzdGVkTGlmZXRpbWVDb3VudDogNDAwMCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1ZXN0ZWRNYXhLZWVwQWxpdmVDb3VudDogNTAsIC8vIGV2ZXJ5IDEyLjUgc2Vjb25kc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVlc3RlZFB1Ymxpc2hpbmdJbnRlcnZhbDogMjUwLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heE5vdGlmaWNhdGlvbnNQZXJQdWJsaXNoOiAxMDAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJpb3JpdHk6IDIwMCxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBjcmVkZW50aWFsczoge1xuICAgICAgICAgICAgdXNlck5hbWU6IHsgdHlwZTogXCJ0ZXh0XCIgfSxcbiAgICAgICAgICAgIHBhc3N3b3JkOiB7IHR5cGU6IFwicGFzc3dvcmRcIiB9LFxuICAgICAgICAgICAgdXNlckNlcnRpZmljYXRlOiB7IHR5cGU6IFwidGV4dFwiIH0sXG4gICAgICAgICAgICB1c2VyUHJpdmF0ZWtleTogeyB0eXBlOiBcInBhc3N3b3JkXCIgfSxcbiAgICAgICAgfSxcbiAgICAgICAgbGFiZWw6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLm5hbWUgfHwgdGhpcy5lbmRwb2ludCB8fCBcImludmFsaWQgZW5kcG9pbnRcIjtcbiAgICAgICAgfSxcbiAgICAgICAgb25lZGl0c2F2ZSgpIHtcbiAgICAgICAgICAgIGNvbnN0IF9zZWN1cml0eVBvbGljeSA9ICQoXCIjbm9kZS1jb25maWctaW5wdXQtc2VjdXJpdHlQb2xpY3lcIik7XG4gICAgICAgICAgICBjb25zdCBfc2VjdXJpdHlNb2RlID0gJChcIiNub2RlLWNvbmZpZy1pbnB1dC1zZWN1cml0eU1vZGVcIik7XG4gICAgICAgICAgICBpZiAoX3NlY3VyaXR5UG9saWN5LnZhbCgpID09PSBcIk5vbmVcIikge1xuICAgICAgICAgICAgICAgIF9zZWN1cml0eU1vZGUudGV4dChcIk5vbmVcIik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyAoKCgoKCgoKCgoIHJldHJpZXZlIHN1YnNjcmlwdGlvbiBkYXRhICkpKSkpKSkpKSlcbiAgICAgICAgICAgIGNvbnN0IHN1YnNjcmlwdGlvbnNJdGVtcyA9ICQoXCIjc3Vic2NyaXB0aW9ucy1jb250YWluZXJcIikuZWRpdGFibGVMaXN0KFwiaXRlbXNcIik7XG4gICAgICAgICAgICBjb25zdCBzID0gW107XG4gICAgICAgICAgICBjb25zdCBuID0gKHgpID0+IHg7XG4gICAgICAgICAgICBzdWJzY3JpcHRpb25zSXRlbXMuZWFjaChmdW5jdGlvbiAoaW5kZXgsIGl0ZW0pIHtcbiAgICAgICAgICAgICAgICBjb25zdCBlID0gJCh0aGlzKTtcbiAgICAgICAgICAgICAgICBjb25zdCBhID0ge1xuICAgICAgICAgICAgICAgICAgICBpZDogXCJzXCIgKyBpbmRleCxcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogZS5maW5kKFwiLmlucHV0LW5hbWVcIikudmFsKCksXG4gICAgICAgICAgICAgICAgICAgIGlzRGVmYXVsdDogISFlLmZpbmQoXCIuaW5wdXQtaXNEZWZhdWx0XCIpLnZhbCgpLFxuICAgICAgICAgICAgICAgICAgICBwYXJhbWV0ZXJzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwdWJsaXNoaW5nRW5hYmxlZDogISFlLmZpbmQoXCIuaW5wdXQtcHVibGlzaGluZ0VuYWJsZWRcIikuaXMoXCI6Y2hlY2tlZFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVlc3RlZExpZmV0aW1lQ291bnQ6IG4oZS5maW5kKFwiLmlucHV0LXJlcXVlc3RlZExpZmV0aW1lQ291bnRcIikudmFsKCkpLFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWVzdGVkTWF4S2VlcEFsaXZlQ291bnQ6IG4oZS5maW5kKFwiLmlucHV0LXJlcXVlc3RlZE1heEtlZXBBbGl2ZUNvdW50XCIpLnZhbCgpKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVlc3RlZFB1Ymxpc2hpbmdJbnRlcnZhbDogbihlLmZpbmQoXCIuaW5wdXQtcmVxdWVzdGVkUHVibGlzaGluZ0ludGVydmFsXCIpLnZhbCgpKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heE5vdGlmaWNhdGlvbnNQZXJQdWJsaXNoOiBuKGUuZmluZChcIi5pbnB1dC1tYXhOb3RpZmljYXRpb25zUGVyUHVibGlzaFwiKS52YWwoKSksXG4gICAgICAgICAgICAgICAgICAgICAgICBwcmlvcml0eTogbihlLmZpbmQoXCIuaW5wdXQtcHJpb3JpdHlcIikudmFsKCkpLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgLy8gZm9yY2UgdG8gYmUgdHJ1ZVxuICAgICAgICAgICAgICAgIGEucGFyYW1ldGVycy5wdWJsaXNoaW5nRW5hYmxlZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgaWYgKGEuaXNEZWZhdWx0ICYmIGEuaWQgPT09IFwiczBcIikge1xuICAgICAgICAgICAgICAgICAgICAvLyBub3JtYWxpemUgZGVmYXVsdCBzdWJzY3JpcHRpb24gbmFtZVxuICAgICAgICAgICAgICAgICAgICBhLm5hbWUgPSBcIkRlZmF1bHQgU3Vic2NyaXB0aW9uXCI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHMucHVzaChhKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgdGhpcy5zdWJzY3JpcHRpb25zID0gcztcbiAgICAgICAgfSxcbiAgICAgICAgb25lZGl0cHJlcGFyZSgpIHtcbiAgICAgICAgICAgIGNvbnN0IG5vZGUgPSB0aGlzO1xuICAgICAgICAgICAgY29uc3QgdGFicyA9IFJFRC50YWJzLmNyZWF0ZSh7XG4gICAgICAgICAgICAgICAgaWQ6IFwibm9kZS1jb25maWctZW5kcG9pbnQtdGFic1wiLFxuICAgICAgICAgICAgICAgIG9uY2hhbmdlOiBmdW5jdGlvbiAodGFiKSB7XG4gICAgICAgICAgICAgICAgICAgICQoXCIjbm9kZS1jb25maWctZW5kcG9pbnQtdGFicy1jb250ZW50XCIpLmNoaWxkcmVuKCkuaGlkZSgpO1xuICAgICAgICAgICAgICAgICAgICAkKFwiI1wiICsgdGFiLmlkKS5zaG93KCk7XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgdGFicy5hZGRUYWIoe1xuICAgICAgICAgICAgICAgIGlkOiBcImVuZHBvaW50LXRhYi1jb25uZWN0aW9uXCIsXG4gICAgICAgICAgICAgICAgbGFiZWw6IFwiQ29ubmVjdGlvblwiLFxuICAgICAgICAgICAgfSwgMCk7XG4gICAgICAgICAgICB0YWJzLmFkZFRhYih7XG4gICAgICAgICAgICAgICAgaWQ6IFwiZW5kcG9pbnQtdGFiLXN1YnNjcmlwdGlvbnNcIixcbiAgICAgICAgICAgICAgICBsYWJlbDogXCJTdWJzY3JpcHRpb25zXCIsXG4gICAgICAgICAgICB9LCAxKTtcbiAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgIHRhYnMucmVzaXplKCk7XG4gICAgICAgICAgICB9LCAwKTtcbiAgICAgICAgICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgICAgICAvLyBoYW5kbGUgU2VjdXJpdHkgY29udHJvbHNcbiAgICAgICAgICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgY29uc3QgdXBkYXRlU2VjdXJpdHlDb250cm9sID0gKHNlY3VyaXR5TW9kZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBzd2l0Y2ggKHNlY3VyaXR5TW9kZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSBudWxsOlxuICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSB1bmRlZmluZWQ6XG4gICAgICAgICAgICAgICAgICAgICAgICBjYXNlIFwiXCI6XG4gICAgICAgICAgICAgICAgICAgICAgICBjYXNlIFwiTm9uZVwiOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoXCIuc2VjdGlvbi1zZWN1cml0eVBvbGljeVwiKS5oaWRlKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgICAgICBjYXNlIFwiU2lnblwiOlxuICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSBcIlNpZ25BbmRFbmNyeXB0XCI6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzcCA9ICQoXCIuc2VjdGlvbi1zZWN1cml0eVBvbGljeVwiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHNwLnZhbCgpID09PSBcIk5vbmVcIiB8fCBzcC52YWwoKSA9PT0gXCJcIikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3AudmFsKFwiQmFzaWMyNTZTaGEyNTZcIik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJChcIi5zZWN0aW9uLXNlY3VyaXR5UG9saWN5XCIpLnNob3coKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiaW52YWxpZCBzZWN1cml0eU1vZGUgXCIgKyBzZWN1cml0eU1vZGUpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICB1cGRhdGVTZWN1cml0eUNvbnRyb2wobm9kZS5zZWN1cml0eU1vZGUpO1xuICAgICAgICAgICAgICAgIGNvbnN0IF9zZWN1cml0eU1vZGUgPSAkKFwiI25vZGUtY29uZmlnLWlucHV0LXNlY3VyaXR5TW9kZVwiKTtcbiAgICAgICAgICAgICAgICBfc2VjdXJpdHlNb2RlLm9uKFwiY2hhbmdlXCIsICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgbmV3U2VjdXJpdHlNb2RlID0gX3NlY3VyaXR5TW9kZS52YWwoKTtcbiAgICAgICAgICAgICAgICAgICAgdXBkYXRlU2VjdXJpdHlDb250cm9sKG5ld1NlY3VyaXR5TW9kZSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCBsaWNlbmNlV2lkZ2V0ID0gJChcIiNsaWNlbmNlV2lkZ2V0XCIpO1xuICAgICAgICAgICAgbGljZW5jZVdpZGdldC5saWNlbmNlV2lkZ2V0KHtcbiAgICAgICAgICAgICAgICBiYXNlVXJsOiBcIlwiLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICAgICAgLy8gaGFuZGxlIHRoZSBVc2VyIElkZW50aXR5IENvbnRyb2xzXG4gICAgICAgICAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGNvbnN0IGF1dGhSb3cgPSAkKFwiLnNlY3Rpb24tdXNlcklkZW50aXR5VHlwZS1Vc2VyTmFtZVwiKTtcbiAgICAgICAgICAgICAgICBjb25zdCBjZXJ0Um93ID0gJChcIi5zZWN0aW9uLXVzZXJJZGVudGl0eVR5cGUtQ2VydGlmaWNhdGVcIik7XG4gICAgICAgICAgICAgICAgY29uc3QgdXBkYXRlSWRlbnRpdHlDb250cm9scyA9ICh1c2VySWRlbnRpdHlUeXBlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHVzZXJJZGVudGl0eVR5cGUgPSB1c2VySWRlbnRpdHlUeXBlIHx8IFwiQW5vbnltb3VzXCI7XG4gICAgICAgICAgICAgICAgICAgIHN3aXRjaCAodXNlcklkZW50aXR5VHlwZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSBcIkFub255bW91c1wiOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoXCIjbm9kZS1jb25maWctaW5wdXQtdXNlck5hbWVcIikudmFsKFwiXCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoXCIjbm9kZS1jb25maWctaW5wdXQtcGFzc3dvcmRcIikudmFsKFwiXCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF1dGhSb3cuaGlkZSgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNlcnRSb3cuaGlkZSgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSBcIlVzZXJOYW1lXCI6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYXV0aFJvdy5zaG93KCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2VydFJvdy5oaWRlKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgICAgICBjYXNlIFwiQ2VydGlmaWNhdGVcIjpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKFwiI25vZGUtY29uZmlnLWlucHV0LXVzZXJOYW1lXCIpLnZhbChcIlwiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKFwiI25vZGUtY29uZmlnLWlucHV0LXBhc3N3b3JkXCIpLnZhbChcIlwiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjZXJ0Um93LnNob3coKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdXRoUm93LmhpZGUoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coXCJpbnZhbGlkIHVzZXJJZGVudGl0eVR5cGUgXCIgKyB1c2VySWRlbnRpdHlUeXBlKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgdXBkYXRlSWRlbnRpdHlDb250cm9scyhub2RlLnVzZXJJZGVudGl0eVR5cGUpO1xuICAgICAgICAgICAgICAgIGNvbnN0IF91c2VySWRlbnRpdHlUeXBlID0gJChcIiNub2RlLWNvbmZpZy1pbnB1dC11c2VySWRlbnRpdHlUeXBlXCIpO1xuICAgICAgICAgICAgICAgIF91c2VySWRlbnRpdHlUeXBlLm9uKFwiY2hhbmdlXCIsICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgbmV3SWRlbnRpdHlUeXBlID0gX3VzZXJJZGVudGl0eVR5cGUudmFsKCk7XG4gICAgICAgICAgICAgICAgICAgIHVwZGF0ZUlkZW50aXR5Q29udHJvbHMobmV3SWRlbnRpdHlUeXBlKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgICAgICAvLyBoYW5kbGUgYWR2YW5jZWQgY29udHJvbHNcbiAgICAgICAgICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgJChcIiNzZWN0aW9uLUFkdmFuY2VkXCIpLmhpZGUoKTtcbiAgICAgICAgICAgICAgICAkKFwiI3RvZ2dsZUFkdmFuY2VkU2VjdGlvblwiKS5wcm9wKFwiY2hlY2tlZFwiLCBmYWxzZSk7XG4gICAgICAgICAgICAgICAgJChcIiN0b2dnbGVBZHZhbmNlZFNlY3Rpb25cIikub24oXCJjaGFuZ2VcIiwgZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICBpZiAoJCh0aGlzKS5wcm9wKFwiY2hlY2tlZFwiKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gSWYgdGhlIGNoZWNrYm94IGlzIGNoZWNrZWQsIHNob3cgdGhlIGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgJChcIiNzZWN0aW9uLUFkdmFuY2VkXCIpLnNob3coKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIE90aGVyd2lzZSwgaGlkZSBpdFxuICAgICAgICAgICAgICAgICAgICAgICAgJChcIiNzZWN0aW9uLUFkdmFuY2VkXCIpLmhpZGUoKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgdXNlVHJhbnNwb3J0U2V0dGluZyA9ICQoXCIjbm9kZS1jb25maWctaW5wdXQtdXNlVHJhbnNwb3J0XCIpLnByb3AoXCJjaGVja2VkXCIpO1xuICAgICAgICAgICAgaWYgKHVzZVRyYW5zcG9ydFNldHRpbmcpIHtcbiAgICAgICAgICAgICAgICAkKFwiI3NlY3Rpb24tVHJhbnNwb3J0U2V0dGluZ3NcIikuc2hvdygpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgJChcIiNzZWN0aW9uLVRyYW5zcG9ydFNldHRpbmdzXCIpLmhpZGUoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICQoXCIjbm9kZS1jb25maWctaW5wdXQtdXNlVHJhbnNwb3J0XCIpLm9uKFwiY2hhbmdlXCIsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICBpZiAoJCh0aGlzKS5wcm9wKFwiY2hlY2tlZFwiKSkge1xuICAgICAgICAgICAgICAgICAgICAvLyBJZiB0aGUgY2hlY2tib3ggaXMgY2hlY2tlZCwgc2hvdyB0aGUgZGl2XG4gICAgICAgICAgICAgICAgICAgICQoXCIjc2VjdGlvbi1UcmFuc3BvcnRTZXR0aW5nc1wiKS5zaG93KCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAvLyBPdGhlcndpc2UsIGhpZGUgaXRcbiAgICAgICAgICAgICAgICAgICAgJChcIiNzZWN0aW9uLVRyYW5zcG9ydFNldHRpbmdzXCIpLmhpZGUoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgICAgICAvLyBjaGVja0NlcnRpZmljYXRlXG4gICAgICAgICAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICQoXCIjY2hlY2tDZXJ0aWZpY2F0ZVwiKS5vbihcImNsaWNrXCIsICgpID0+IF9fYXdhaXRlcih0aGlzLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24qICgpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZGF0YSA9IHlpZWxkIGZldGNoKFwiL29wY3VhLWVuZHBvaW50Mi9jbGllbnRfY2VydGlmaWNhdGUuanNvblwiKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgaW5mbyA9IHlpZWxkIGRhdGEuanNvbigpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCB0ID0gSlNPTi5zdHJpbmdpZnkoaW5mbywgbnVsbCwgXCIgXCIpO1xuICAgICAgICAgICAgICAgICAgICBhbGVydCh0KTtcbiAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICAgICAgLy8gaGFuZGxlIHRoZSBUZXN0IGJ1dHRvblxuICAgICAgICAgICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBtYW5hZ2VBUElDYWxsKFwiY29ubmVjdGlvblwiLCAkKFwiI3Rlc3QtY29ubmVjdGlvblwiKSwgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB2YXIgX2E7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiAoe1xuICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiBcIi9vcGN1YS1lbmRwb2ludDIvdGVzdC1jb25uZWN0aW9uXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICBib2R5OiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5kcG9pbnROb2RlOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBub2RlLmlkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbmRwb2ludDogJChcIiNub2RlLWNvbmZpZy1pbnB1dC1lbmRwb2ludFwiKS52YWwoKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJChcIiNub2RlLWNvbmZpZy1pbnB1dC1uYW1lXCIpLnZhbCgpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwa2lOYW1lOiAoX2EgPSAkKFwiI25vZGUtY29uZmlnLWlucHV0LXBraU5hbWVcIikpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS52YWwoKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VjdXJpdHlNb2RlOiAkKFwiI25vZGUtY29uZmlnLWlucHV0LXNlY3VyaXR5TW9kZVwiKS52YWwoKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VjdXJpdHlQb2xpY3k6ICQoXCIjbm9kZS1jb25maWctaW5wdXQtc2VjdXJpdHlQb2xpY3lcIikudmFsKCksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZXJJZGVudGl0eVR5cGU6ICQoXCIjbm9kZS1jb25maWctaW5wdXQtdXNlcklkZW50aXR5VHlwZVwiKS52YWwoKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlck5hbWU6ICQoXCIjbm9kZS1jb25maWctaW5wdXQtdXNlck5hbWVcIikudmFsKCksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhc3N3b3JkOiAkKFwiI25vZGUtY29uZmlnLWlucHV0LXBhc3N3b3JkXCIpLnZhbCgpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VyQ2VydGlmaWNhdGU6ICQoXCIjbm9kZS1jb25maWctaW5wdXQtdXNlckNlcnRpZmljYXRlXCIpLnZhbCgpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VyUHJpdmF0ZWtleTogJChcIiNub2RlLWNvbmZpZy1pbnB1dC11c2VyUHJpdmF0ZWtleVwiKS52YWwoKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8vIG5vdCB0ZXN0ZWQgeWV0IC4uLjpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2VydGlmaWNhdGU6ICQoXCIjbm9kZS1pbnB1dC1jZXJ0aWZpY2F0ZVwiKS52YWwoKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlVHJhbnNwb3J0OiAkKFwiI25vZGUtaW5wdXQtdXNlVHJhbnNwb3J0XCIpLnByb3AoXCJjaGVja2VkXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXhDaHVua0NvdW50OiAkKFwiI25vZGUtaW5wdXQtbWF4Q2h1bmtDb3VudFwiKS52YWwoKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4TWVzc2FnZVNpemU6ICQoXCIjbm9kZS1pbnB1dC1tYXhNZXNzYWdlU2l6ZVwiKS52YWwoKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVjZWl2ZUJ1ZmZlclNpemU6ICQoXCIjbm9kZS1pbnB1dC1yZWNlaXZlQnVmZmVyU2l6ZVwiKS52YWwoKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VuZEJ1ZmZlclNpemU6ICQoXCIjbm9kZS1pbnB1dC1zZW5kQnVmZmVyU2l6ZVwiKS52YWwoKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSwgKCkgPT4geyB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgICAgICAvLyAgSW5zdGFsbCBzdWJzY3JpcHRpb25zIExpc3QgbWFuYWdlbWVudFxuICAgICAgICAgICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBjb25zdCByZXNpemVUb3BpY3MgPSAodG9waWMsIGluZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHZhciBuZXdXaWR0aCA9IHRvcGljLndpZHRoKCkgfHwgMTAwO1xuICAgICAgICAgICAgICAgICAgICB0b3BpYy5maW5kKFwibGFiZWxcIikudHlwZWRJbnB1dChcIndpZHRoXCIsIG5ld1dpZHRoIC0gMTUpO1xuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgY29uc3Qgc3Vic2NyaXB0aW9uTGlzdCA9ICQoXCIjc3Vic2NyaXB0aW9ucy1jb250YWluZXJcIilcbiAgICAgICAgICAgICAgICAgICAgLmNzcyh7IFwibWluLWhlaWdodFwiOiBcIjE1MHB4XCIsIFwibWluLXdpZHRoXCI6IFwiMjYwcHhcIiB9KVxuICAgICAgICAgICAgICAgICAgICAuZWRpdGFibGVMaXN0KHtcbiAgICAgICAgICAgICAgICAgICAgYWRkSXRlbTogKGNvbnRhaW5lciwgaW5kZXgsIGRhdGEpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IF9kYXRhID0gZGF0YTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGVsZW1lbnQgPSAkKFwiLnRlbXBsYXRlXCIpLmNsb25lKCkuYXBwZW5kVG8oY29udGFpbmVyKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGVsZW1lbnQucmVtb3ZlQXR0cihcImlkXCIpLnJlbW92ZUNsYXNzKFwiaGlkZVwiKS5yZW1vdmVDbGFzcyhcInRlbXBsYXRlXCIpLmF0dHIoXCJkYXRhLWlcIiwgaW5kZXgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZWxlbWVudC5maW5kKFwiLmlucHV0LW5hbWVcIikudmFsKF9kYXRhLm5hbWUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZWxlbWVudC5maW5kKFwiLmlucHV0LXJlcXVlc3RlZFB1Ymxpc2hpbmdJbnRlcnZhbFwiKS52YWwoX2RhdGEucGFyYW1ldGVycy5yZXF1ZXN0ZWRQdWJsaXNoaW5nSW50ZXJ2YWwpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZWxlbWVudC5maW5kKFwiLmlucHV0LXJlcXVlc3RlZE1heEtlZXBBbGl2ZUNvdW50XCIpLnZhbChfZGF0YS5wYXJhbWV0ZXJzLnJlcXVlc3RlZE1heEtlZXBBbGl2ZUNvdW50KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGVsZW1lbnQuZmluZChcIi5pbnB1dC1yZXF1ZXN0ZWRMaWZldGltZUNvdW50XCIpLnZhbChfZGF0YS5wYXJhbWV0ZXJzLnJlcXVlc3RlZExpZmV0aW1lQ291bnQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZWxlbWVudC5maW5kKFwiLmlucHV0LW1heE5vdGlmaWNhdGlvbnNQZXJQdWJsaXNoXCIpLnZhbChfZGF0YS5wYXJhbWV0ZXJzLm1heE5vdGlmaWNhdGlvbnNQZXJQdWJsaXNoIHx8IDApO1xuICAgICAgICAgICAgICAgICAgICAgICAgZWxlbWVudC5maW5kKFwiLmlucHV0LXByaW9yaXR5XCIpLnZhbChfZGF0YS5wYXJhbWV0ZXJzLnByaW9yaXR5IHx8IDApO1xuICAgICAgICAgICAgICAgICAgICAgICAgZWxlbWVudC5maW5kKFwiLnN1YnNjcmlwdGlvbi1pZFwiKS50ZXh0KFwiXCIgKyBpbmRleCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoX2RhdGEuaXNEZWZhdWx0KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxlbWVudC5maW5kKFwiLmlucHV0LW5hbWVcIikucHJvcChcInJlYWRvbmx5XCIsIHRydWUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgZWxlbWVudC5maW5kKFwiLmlucHV0LWlzRGVmYXVsdFwiKS5wcm9wKFwiY2hlY2tlZFwiLCBfZGF0YS5pc0RlZmF1bHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gbWFrZSBzdXJlIHRoYXQgZGVmYXVsdCBzdWJzY3JpcHRpb24gY2Fubm90IGJlIGFjY2lkZW50YWxseSByZW1vdmVkXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoX2RhdGEuaXNEZWZhdWx0KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGFpbmVyLmZpbmQoXCIucmVkLXVpLWVkaXRhYmxlTGlzdC1pdGVtLXJlbW92ZVwiKS5hZGRDbGFzcyhcImhpZGVcIik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiBlbGVtZW50LmZpbmQoXCIuaW5wdXQtaXNEZWZhdWx0XCIpLnByb3AoXCJkaXNhYmxlZFwiLCB0cnVlKSwgMTApO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAvLyBzb3J0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgcmVtb3ZhYmxlOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICByZXNpemVJdGVtOiByZXNpemVUb3BpY3MsXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgY29uc3QgQWRkU3Vic2NyaXB0aW9uID0gKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBzdWJzY3JpcHRpb25zID0gbm9kZS5zdWJzY3JpcHRpb25zIHx8IFtdO1xuICAgICAgICAgICAgICAgICAgICBpZiAoc3Vic2NyaXB0aW9ucy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGFkZCBtaXNzaW5nIGRlZmF1bHQgc3Vic2NyaXB0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICBzdWJzY3JpcHRpb25zLnB1c2goe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBcInMxXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJEZWZhdWx0IFN1YnNjcmlwdGlvblwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzRGVmYXVsdDogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXJhbWV0ZXJzOiBPYmplY3QuYXNzaWduKHt9LCBkZWZhdWx0U3Vic2NyaXB0aW9uUGFyYW1ldGVycyksXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBzdWJzY3JpcHRpb25MaXN0LmVkaXRhYmxlTGlzdChcImVtcHR5XCIpO1xuICAgICAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IHN1YnNjcmlwdGlvbiBvZiBzdWJzY3JpcHRpb25zKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBzdWJzY3JpcHRpb24uaXNEZWZhdWx0ID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICBzdWJzY3JpcHRpb25MaXN0LmVkaXRhYmxlTGlzdChcImFkZEl0ZW1cIiwgc3Vic2NyaXB0aW9uKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgQWRkU3Vic2NyaXB0aW9uKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgfSk7XG5cbn0pKCk7Il19
|
9
9
|
</script>
|
10
10
|
<script type="text/x-red" data-template-name="OpcUa-Endpoint2">
|
11
11
|
<div id="licenceWidget"></div>
|