@opcua/for-node-red 3.9.0 → 3.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.md +1 -1
- package/all.js +4 -150
- package/config-panel/assets/{index-Cbauh_EP.css → index-CxGeB_Tt.css} +1 -1
- package/config-panel/index.html +5 -3
- package/examples/coffee-machine-2.json +79 -186
- package/examples/coffee-machine.json +394 -0
- package/examples/explore-demo.json +182 -0
- package/examples/file-operation.json +707 -0
- package/examples/job_manager.json +465 -231
- package/package.json +2 -1
- package/source/OpcUa-Client2-Browse/OpcUa-Client2-Browse.html +3 -4
- package/source/OpcUa-Client2-Call/OpcUa-Client2-Call.html +7 -2
- package/source/OpcUa-Client2-Explore/OpcUa-Client2-Explore.html +1 -2
- package/source/OpcUa-Client2-ExtensionObject/OpcUa-Client2-ExtensionObject.html +1 -2
- package/source/OpcUa-Client2-FileOperation/OpcUa-Client2-FileOperation.css +2 -0
- package/source/OpcUa-Client2-FileOperation/OpcUa-Client2-FileOperation.html +75 -0
- package/source/OpcUa-Client2-FileOperation/OpcUa-Client2-FileOperation.js +2 -0
- package/source/OpcUa-Client2-HistoryRead/OpcUa-Client2-HistoryRead.html +1 -2
- package/source/OpcUa-Client2-Monitor/OpcUa-Client2-Monitor.html +1 -2
- package/source/OpcUa-Client2-MonitorEvent/OpcUa-Client2-MonitorEvent.html +1 -2
- package/source/OpcUa-Client2-Read/OpcUa-Client2-Read.html +1 -2
- package/source/OpcUa-Client2-Write/OpcUa-Client2-Write.html +1 -2
- package/source/OpcUa-Endpoint2/OpcUa-Endpoint2.html +1 -2
- /package/config-panel/assets/{index-Dbq8sVaJ.js → index-DgIjB-ey.js} +0 -0
@@ -4,8 +4,7 @@
|
|
4
4
|
</style>
|
5
5
|
|
6
6
|
<script type="text/javascript">
|
7
|
-
function _0x2a80(){const _0xf0ac36=['show','.section-userIdentityType-Certificate','150px','pk_live_51HsE1sBCNccbzsVzt7zaq2uv20pkryWllAzvZgZd5AhwFI9A3qBIeOJvJwQF08lDoLpFqLjwmyA79wnPnYLsvKjt009f00VpCW','<input/>','\x20to\x20acquire\x20a\x20license.','baseUrl','Please\x20contact\x20','<unknown>','<div\x20class=\x22alias-entry\x22>','.input-requestedLifetimeCount','userIdentityType','.subscription-id','#node-input-certificate','Sign','addItem','http://opcfoundation.org/UA/','subscribe-button','SignAndEncrypt','height:\x20100%;max-height:\x20100%;','publishingEnabled','width','password','Trial\x20licence','push','status','invalid\x20userIdentityType\x20','createElement','licence-widget','EXPIRED','<iframe></iframe>','2581224JbvsdE','<br>','open','.red-ui-editableList-item-remove','FAILED','<span>','/opcua-for-node-red/support-frame.html','expiryDate','name','tomorrow','namespaceAliases','128953YPsYMm','#test-connection','30px','-failure','PROFESSIONAL','\x20for\x20more\x20information.','requestedMaxKeepAliveCount','next','editableList','<a\x20href=\x22mailto:support@sterfive.com\x22\x20subject=\x22@opcua/for-node-red\x20support\x20request\x22>mailto:support@sterfive.com</a>','apply','node-input-alias-index','/opcua-for-node-red','throw','20px','tabs','stringify','.node-input-alias-alias','.section-userIdentityType-UserName','val','typedInput','<i>','\x20days','#toggleAdvancedSection','removeClass','parameters','element','#node-config-input-securityPolicy','#node-config-input-securityMode','value','\x20or\x20visit\x20our\x20website\x20to\x20renew\x20your\x20license\x20and\x20regain\x20access\x20to\x20our\x20services.','.section-securityPolicy','opcua\x20endpoint','POST','opc.tcp:','licenceType',':checked','class','None','type','fa\x20fa-calendar-time','fa\x20fa-exclamation-circle','Anonymous','map','.node-input-alias-namespace-uri','isDefault','UserName','SuppressedError','3011322GvLlbe','requestedPublishingInterval','data-i','/opcua-for-node-red/test-connection','append','addClass','FREEWARE','55679hAFMZn','find','#licenceWidget','00000000-0000-0000-0000-000000000000','empty','Your\x20trial\x20license\x20has\x20expired.\x0aPlease\x20visit\x20','pricing-table-id','hide','#node-config-input-userIdentityType','widget','licence-widget-msg','error','join','/licenceInfo','Your\x20licence\x20has\x20expired\x20-\x20Freeware\x20mode\x20activated','src','licence-widget-','then','onPremiseServerHost','#node-input-maxChunkCount','suppressed','.input-name','#node-input-receiveBufferSize','.input-requestedPublishingInterval','resize','#node-input-sendBufferSize','/opcua-for-node-red/config','background-color:transparent;overflow:hidden;border:3px','2634QglkWp','maxNotificationsPerPublish','260px','#section-Advanced','</p>','#node-config-input-useTransport','connection','25%','catch','-success','9689859dqYMeI','720RYWMsq','click','prctbl_1OJt49BCNccbzsVzkaANOgFL','Your\x20license\x20has\x20expired.\x0aPlease\x20contact\x20our\x20\x20','TRIAL','70%','#extract-aliases','fetching\x20failed\x20with\x20error','#section-TransportSettings','#goto-config','node-input-alias-namespace-uri','children','opc.tcp://opcuademo.sterfive.com:26543/UA/SampleServer','attr','text','json','#subscription-template','removeAttr','#subscriptions-container','securityMode','log','endpoint-tab-subscriptions','.input-maxNotificationsPerPublish','40WQTTPm','/opcua-for-node-red/extract-namespace-aliases','Freeware\x20licence','appendTo','css','licenceInfo','Your\x20license\x20is\x20currently\x20invalid.','message','disabled','absolute','#editable-list-aliases-container','#node-config-input-userCertificate','internal\x20error\x20','replace','<p>','\x20hours','change','#node-config-input-userName','today','namespaceUri','auto','registerType','/opcua-for-node-red/client_certificate.json','Default\x20Subscription','fa\x20fa-check-circle','Namespace\x20Aliases','style','The\x20Trial\x20will\x20expire\x20','<button/>','#node-input-useTransport','subscriptions','Fast\x20Subscription','#node-config-input-endpoint','length','#checkCertificate','https://js.stripe.com/v3/pricing-table.js','statusText','.\x0aBuy\x20online\x20and\x20visit\x20','invalid\x20securityMode\x20','items','err','addTab','.input-isDefault','checked','Certificate','endpoint-tab-namespace-aliases','in\x20','#node-config-input-password','alias','#node-config-endpoint-tabs-content','prop','template','-messages','5123517BpFkOC','installFeedbackWidget\x20','-pending','invalid\x20endpoint','assign','licence-widget-icon','.input-priority','10gQnjAV','\x20-\x20','<stripe-pricing-table/>','node-input-alias-alias','html','4TuBrFe','head','result','getTime','http://opcfoundation.org/DI/','each','3695lLlAXc','floor','sterfive.licenceWidget','.input-requestedMaxKeepAliveCount','application/json','#node-config-input-userPrivatekey','split','AUTHORIZED'];_0x2a80=function(){return _0xf0ac36;};return _0x2a80();}function _0x2105(_0x694853,_0x40ddd2){const _0x2a805b=_0x2a80();return _0x2105=function(_0x210541,_0x2b4d84){_0x210541=_0x210541-0xf0;let _0x5e00e2=_0x2a805b[_0x210541];return _0x5e00e2;},_0x2105(_0x694853,_0x40ddd2);}(function(_0x5c4735,_0x4b2494){const _0x1f361c=_0x2105,_0x552951=_0x5c4735();while(!![]){try{const _0x5acbdb=parseInt(_0x1f361c(0x105))/0x1*(parseInt(_0x1f361c(0x143))/0x2)+-parseInt(_0x1f361c(0xfe))/0x3*(parseInt(_0x1f361c(0x184))/0x4)+parseInt(_0x1f361c(0x18a))/0x5*(-parseInt(_0x1f361c(0x121))/0x6)+parseInt(_0x1f361c(0x178))/0x7+-parseInt(_0x1f361c(0x1b1))/0x8+parseInt(_0x1f361c(0x12b))/0x9*(parseInt(_0x1f361c(0x17f))/0xa)+parseInt(_0x1f361c(0x1bc))/0xb*(-parseInt(_0x1f361c(0x12c))/0xc);if(_0x5acbdb===_0x4b2494)break;else _0x552951['push'](_0x552951['shift']());}catch(_0x5541de){_0x552951['push'](_0x552951['shift']());}}}(_0x2a80,0x8aa7e),(function(){'use strict';const _0x58615a=_0x2105;function _0x54f868(_0x2b76c7,_0x1164f6,_0x6d4095,_0x36a248){function _0x2980d3(_0x4b9ed3){return _0x4b9ed3 instanceof _0x6d4095?_0x4b9ed3:new _0x6d4095(function(_0x38b5a2){_0x38b5a2(_0x4b9ed3);});}return new(_0x6d4095||(_0x6d4095=Promise))(function(_0xf8aef7,_0xf64720){const _0x4c7d4e=_0x2105;function _0x36f0b4(_0x5b4fd4){const _0x543cb2=_0x2105;try{_0x3991c5(_0x36a248[_0x543cb2(0x1c3)](_0x5b4fd4));}catch(_0x1b8d94){_0xf64720(_0x1b8d94);}}function _0x22a5d5(_0x5bdcd8){const _0x464d5f=_0x2105;try{_0x3991c5(_0x36a248[_0x464d5f(0x1c9)](_0x5bdcd8));}catch(_0x5a057b){_0xf64720(_0x5a057b);}}function _0x3991c5(_0x132196){const _0x108216=_0x2105;_0x132196['done']?_0xf8aef7(_0x132196[_0x108216(0x1d9)]):_0x2980d3(_0x132196[_0x108216(0x1d9)])['then'](_0x36f0b4,_0x22a5d5);}_0x3991c5((_0x36a248=_0x36a248[_0x4c7d4e(0x1c6)](_0x2b76c7,_0x1164f6||[]))[_0x4c7d4e(0x1c3)]());});}typeof SuppressedError==='function'?SuppressedError:function(_0x361cd1,_0x1bfab7,_0x21eae2){const _0x298c3f=_0x2105;var _0x450a7b=new Error(_0x21eae2);return _0x450a7b[_0x298c3f(0x1b9)]=_0x298c3f(0xfd),_0x450a7b[_0x298c3f(0x110)]=_0x361cd1,_0x450a7b[_0x298c3f(0x119)]=_0x1bfab7,_0x450a7b;};function _0x88d468(_0x542cd9,_0x15eaa7,_0x2e1c88,_0x38afb7){const _0x14da77=_0x2105,_0x32ddc3=$('#'+_0x542cd9+_0x14da77(0x12a)),_0x173156=$('#'+_0x542cd9+_0x14da77(0x1bf)),_0x40d30e=$('#'+_0x542cd9+_0x14da77(0x17a)),_0x1a115d=$('#'+_0x542cd9+_0x14da77(0x177));let _0x13f74e=![];_0x32ddc3['hide'](),_0x173156[_0x14da77(0x10c)](),_0x40d30e['hide'](),_0x15eaa7['on']('click',()=>{const _0x27169b=_0x14da77;if(_0x13f74e)return;_0x13f74e=!![],_0x40d30e[_0x27169b(0x1d4)](_0x27169b(0x10c)),_0x40d30e[_0x27169b(0x183)]('Testing\x20Connection\x20...'),_0x32ddc3['addClass'](_0x27169b(0x10c)),_0x173156[_0x27169b(0x103)]('hide'),_0x1a115d[_0x27169b(0x183)]('');const {body:_0x5c82b3,url:_0x597799}=_0x2e1c88();fetch(_0x597799,{'method':'POST','headers':{'Content-Type':_0x27169b(0x18e)},'body':JSON[_0x27169b(0x1cc)](_0x5c82b3)})[_0x27169b(0x116)](_0x1266bd=>_0x1266bd['json']())['then'](_0x456621=>{const _0x23d908=_0x27169b;_0x13f74e=![],_0x40d30e[_0x23d908(0x10c)](),console['log'](JSON[_0x23d908(0x1cc)](_0x456621,null,'\x20'));if(_0x456621[_0x23d908(0x186)]==='ok')_0x32ddc3['removeClass'](_0x23d908(0x10c)),_0x173156['addClass']('hide'),_0x1a115d['html'](_0x456621[_0x23d908(0x14a)][_0x23d908(0x150)]('\x0a','<br>'));else{const _0x295f61=_0x1ca46a=>!_0x1ca46a?'':_0x1ca46a[_0x23d908(0x190)]('\x0a')[_0x23d908(0xf9)](_0x383828=>_0x23d908(0x151)+_0x383828+_0x23d908(0x125))[_0x23d908(0x111)]('\x0a'),_0x4e3d78=_0x3191fd=>Array['isArray'](_0x3191fd)?_0x3191fd[_0x23d908(0xf9)](_0x295f61)['join']('\x0a'):_0x295f61(_0x3191fd);_0x32ddc3[_0x23d908(0x103)](_0x23d908(0x10c)),_0x173156[_0x23d908(0x1d4)](_0x23d908(0x10c)),_0x1a115d[_0x23d908(0x183)](_0x4e3d78(_0x456621['message'])+_0x4e3d78(_0x456621['extra'])),_0x38afb7(new Error(_0x456621[_0x23d908(0x186)]),_0x456621);}})[_0x27169b(0x129)](_0x39d019=>{const _0x47fd78=_0x27169b;_0x13f74e=![],_0x40d30e[_0x47fd78(0x103)]('hide'),_0x32ddc3[_0x47fd78(0x103)](_0x47fd78(0x10c)),_0x173156[_0x47fd78(0x1d4)](_0x47fd78(0x10c)),_0x1a115d[_0x47fd78(0x183)](_0x47fd78(0x14f)+_0x39d019['message']),console[_0x47fd78(0x140)](_0x47fd78(0x16b),_0x39d019);});});}var _0x1421d7;(function(_0x3d673f){const _0x2317ad=_0x2105;_0x3d673f[_0x3d673f[_0x2317ad(0x104)]=0x0]=_0x2317ad(0x104),_0x3d673f[_0x3d673f['TRIAL']=0x1]=_0x2317ad(0x130),_0x3d673f[_0x3d673f[_0x2317ad(0x1c0)]=0x2]=_0x2317ad(0x1c0);}(_0x1421d7||(_0x1421d7={})));var _0x3ba7b2;(function(_0x53ad18){const _0x48bb84=_0x2105;_0x53ad18[_0x53ad18[_0x48bb84(0x191)]=0x18]='AUTHORIZED',_0x53ad18[_0x53ad18[_0x48bb84(0x1b5)]=0x17]=_0x48bb84(0x1b5),_0x53ad18[_0x53ad18[_0x48bb84(0x1af)]=0x16]=_0x48bb84(0x1af);}(_0x3ba7b2||(_0x3ba7b2={})));function _0x233516(_0x537c26,_0x36a709){const _0x5b6e0a=_0x2105;if(_0x36a709!==_0x3ba7b2[_0x5b6e0a(0x191)])return _0x1421d7[_0x5b6e0a(0x104)];return _0x537c26;}const _0x39ee69=0xe10*0x3e8,_0x3dc232=_0x39ee69*0x18;function _0x28052e(_0x2cdb71){const _0x220571=_0x2105;return!_0x2cdb71?new Date(0x0):_0x2cdb71 instanceof Date?_0x2cdb71:new Date(_0x2cdb71[_0x220571(0x148)]?_0x2cdb71[_0x220571(0x148)][_0x220571(0x1b8)]:0x0);}function _0x106b50(_0x1d8b93){const _0x30739a=_0x2105,_0x2b10f3=_0x28052e(_0x1d8b93),_0x519caf=new Date(),_0x2d7d92=Math['floor']((_0x2b10f3[_0x30739a(0x187)]()-_0x519caf[_0x30739a(0x187)]())/_0x3dc232);return _0x2d7d92;}function _0x1cea06(_0x2c0b2f){const _0x319f3c=_0x2105,_0x28d795=_0x28052e(_0x2c0b2f),_0x3c2118=new Date(),_0x11a677=Math[_0x319f3c(0x18b)]((_0x28d795[_0x319f3c(0x187)]()-_0x3c2118['getTime']())/_0x39ee69);return _0x11a677;}const _0x5ddb56=_0x58615a(0x12e),_0x488e98=_0x58615a(0x195);function _0x237454(){return _0x54f868(this,arguments,void 0x0,function*(_0x41d1da=''){const _0x13d2a6=_0x2105,_0x49c283=_0x41d1da+_0x13d2a6(0x1c8),_0x2c8d25=_0x49c283+_0x13d2a6(0x112),_0x1d0e65=yield fetch(_0x2c8d25,{'method':_0x13d2a6(0x1dd),'headers':{'Content-Type':_0x13d2a6(0x18e)}}),_0x522a96=new Date()['toISOString'](),_0x4b3903={'status':_0x13d2a6(0x1b5),'type':_0x13d2a6(0x104),'licenceInfo':{'licenceId':_0x13d2a6(0x108),'licenceType':_0x13d2a6(0x19a),'expiryDate':_0x522a96,'onPremiseServerHost':'','expired':!![],'userCompany':'','userEmail':'','userName':''}};if(_0x1d0e65[_0x13d2a6(0x1ab)]!==0xc8)return console[_0x13d2a6(0x140)](_0x13d2a6(0x133),_0x1d0e65[_0x13d2a6(0x1ab)],_0x1d0e65[_0x13d2a6(0x167)]),_0x4b3903;const _0x153e09=yield _0x1d0e65[_0x13d2a6(0x13b)]();return _0x153e09;});}const _0xc1d292=()=>{const _0x1b997a=_0x58615a;$[_0x1b997a(0x10e)](_0x1b997a(0x18c),{'options':{'baseUrl':''},'_create'(){const _0xa63db6=_0x1b997a,_0x4b64af=this,_0x595c1e=_0xa63db6(0x1c5),_0x1bc0ca='<a\x20href=\x22https://www.sterfive.com/opcua/for-node-red\x22\x20target=”_blank”>Sterfive\x27s\x20website\x20</a>';_0x237454(_0x4b64af[_0xa63db6(0x198)])[_0xa63db6(0x116)](_0x32e638=>{const _0x372443=_0xa63db6;var _0xcbe354,_0x44106d;let _0xd855f6='',_0x4cd358='',_0x4fb37e='';const _0x85745a=_0x1421d7[_0x32e638[_0x372443(0xf5)]],_0x5e6379=_0x3ba7b2[_0x32e638[_0x372443(0x1ab)]],_0x1a05a8=_0x233516(_0x85745a,_0x5e6379),_0x2c278b=_0x106b50(((_0xcbe354=_0x32e638[_0x372443(0x148)])===null||_0xcbe354===void 0x0?void 0x0:_0xcbe354[_0x372443(0x1b8)])?new Date(_0x32e638[_0x372443(0x148)]['expiryDate']):undefined),_0x23483b=_0x1cea06(((_0x44106d=_0x32e638[_0x372443(0x148)])===null||_0x44106d===void 0x0?void 0x0:_0x44106d[_0x372443(0x1b8)])?new Date(_0x32e638['licenceInfo'][_0x372443(0x1b8)]):undefined),_0x9a6ae5=_0x2c278b==0x0?_0x23483b>0xa?_0x372443(0x155):_0x372443(0x171)+_0x23483b+_0x372443(0x152):_0x2c278b==0x1?_0x372443(0x1ba):'in\x20'+_0x2c278b+_0x372443(0x1d2);switch(_0x5e6379){case _0x3ba7b2['AUTHORIZED']:_0xd855f6=_0x372443(0x15b);switch(_0x1a05a8){case _0x1421d7[_0x372443(0x130)]:{_0x4cd358=_0x372443(0x1a9),_0x4fb37e=_0x372443(0x15e)+_0x9a6ae5+_0x372443(0x168)+_0x1bc0ca+_0x372443(0x197);break;}case _0x1421d7[_0x372443(0x1c0)]:_0x4cd358='Your\x20licence\x20is\x20valid.';_0x2c278b<0x5a&&_0x2c278b>=0x0&&(_0x4cd358+='\x0aIt\x20will\x20expire\x20'+_0x9a6ae5+'.');_0x4fb37e=_0x32e638[_0x372443(0x148)][_0x372443(0xf1)]+_0x372443(0x180)+(_0x32e638[_0x372443(0x148)][_0x372443(0x117)]||'');break;case _0x1421d7[_0x372443(0x104)]:_0x4cd358=_0x372443(0x145),_0x4fb37e='This\x20is\x20a\x20freeware\x20licence,\x20and\x20have\x20some\x20limitations.\x0a'+_0x1bc0ca+_0x372443(0x1c1);break;}break;case _0x3ba7b2[_0x372443(0x1af)]:_0xd855f6=_0x372443(0xf6);switch(_0x85745a){case _0x1421d7[_0x372443(0x130)]:_0x4cd358='Freeware\x20:\x20(Trial\x20licence\x20expired)',_0x4fb37e=_0x372443(0x10a)+_0x1bc0ca+_0x372443(0x197);break;case _0x1421d7[_0x372443(0x104)]:_0x4cd358='Freeware\x20licence\x20expired',_0x4fb37e='Your\x20freeware\x20license\x20has\x20expired.\x0a'+_0x1bc0ca+_0x372443(0x1c1);break;case _0x1421d7['PROFESSIONAL']:default:_0x4cd358=_0x372443(0x113),_0x4fb37e=_0x372443(0x12f)+_0x595c1e+_0x372443(0x1da);}break;case _0x3ba7b2['FAILED']:default:_0xd855f6=_0x372443(0xf7),_0x4cd358=_0x372443(0x149),_0x4fb37e=_0x372443(0x199)+_0x595c1e+'\x20or\x20visit\x20our\x20website\x20to\x20renew\x20your\x20license\x20and\x20regain\x20access\x20to\x20our\x20services.̀';break;}this[_0x372443(0x1d6)]['addClass'](_0x372443(0x1ae)),this['element'][_0x372443(0x103)](_0x372443(0x115)+_0x5e6379),this[_0x372443(0x1d6)][_0x372443(0x102)]($('<span>')[_0x372443(0x103)](_0x372443(0x17d))[_0x372443(0x102)]($(_0x372443(0x1d1))[_0x372443(0x103)](_0xd855f6))),this[_0x372443(0x1d6)][_0x372443(0x102)]($(_0x372443(0x1b6))[_0x372443(0x103)](_0x372443(0x10f))[_0x372443(0x13a)](_0x4cd358)),this[_0x372443(0x1d6)][_0x372443(0x102)]($(_0x372443(0x1b2))),this[_0x372443(0x1d6)][_0x372443(0x102)]($(_0x372443(0x1b6))['addClass']('licence-widget-details')[_0x372443(0x102)](_0x4fb37e));if(_0x5e6379===_0x3ba7b2[_0x372443(0x1af)]||_0x5e6379===_0x3ba7b2[_0x372443(0x1b5)]||_0x1a05a8===_0x1421d7[_0x372443(0x104)]||_0x1a05a8===_0x1421d7['TRIAL']){this[_0x372443(0x1d6)]['append']($(_0x372443(0x1b2)));const _0x3676be=$(_0x372443(0x15f));_0x3676be[_0x372443(0x139)]('id',_0x372443(0x1a3)),_0x3676be[_0x372443(0x139)](_0x372443(0xf3),'btn\x20btn-primary'),_0x3676be['attr']('style','margin-top:\x2020px;'),_0x3676be[_0x372443(0x13a)]('Subscribe'),this[_0x372443(0x1d6)]['append'](_0x3676be);const _0x69e2f9=document[_0x372443(0x1ad)]('script');_0x69e2f9[_0x372443(0x114)]=_0x372443(0x166),_0x69e2f9['async']=!![],$(_0x372443(0x185))[_0x372443(0x102)](_0x69e2f9);const _0x520e33=$(_0x372443(0x181));_0x520e33[_0x372443(0x139)](_0x372443(0x10b),_0x5ddb56),_0x520e33[_0x372443(0x139)]('publishable-key',_0x488e98),_0x520e33[_0x372443(0x139)](_0x372443(0x15d),_0x372443(0x1a5)),_0x520e33[_0x372443(0x10c)](),this[_0x372443(0x1d6)][_0x372443(0x102)](_0x520e33),_0x3676be['on']('click',()=>{const _0x14a887=_0x372443;_0x520e33[_0x14a887(0x192)](),_0x3676be[_0x14a887(0x10c)](),this['element'][_0x14a887(0x139)](_0x14a887(0x15d),'height:\x20100%\x20!important;');});}})[_0xa63db6(0x129)](_0x38afa7=>{const _0x194a35=_0xa63db6;console[_0x194a35(0x140)](_0x38afa7);});}});},_0x113de2=()=>{const _0x697f02=_0x58615a,_0xbb5a9f=$('.red-ui-tray-body');console[_0x697f02(0x140)](_0x697f02(0x179),_0xbb5a9f[_0x697f02(0x164)]);if(_0xbb5a9f[_0x697f02(0x164)]){console[_0x697f02(0x140)]('installing\x20iframe');const _0x29bf04=$(_0x697f02(0x1b0),{'src':_0x697f02(0x1b7),'scrolling':'no','style':_0x697f02(0x120),'allowtransparency':'true','width':'180px','height':_0x697f02(0x1be)});_0xbb5a9f[_0x697f02(0x102)](_0x29bf04),_0x29bf04[_0x697f02(0x147)]({'position':_0x697f02(0x14c),'right':_0x697f02(0x1ca),'bottom':'16px'});}};_0xc1d292();function _0x51e8e6(_0x178a2a){const _0x2d5450=_0x58615a;let _0x5eaf9e;try{_0x5eaf9e=new URL(_0x178a2a);}catch(_0x3a011d){return![];}return _0x5eaf9e['protocol']===_0x2d5450(0xf0);}const _0x542b4={'publishingEnabled':!![],'requestedLifetimeCount':0x3e8,'requestedMaxKeepAliveCount':0xa,'requestedPublishingInterval':0x3e8,'maxNotificationsPerPublish':0x0,'priority':0x64};RED['nodes'][_0x58615a(0x158)]('OpcUa-Endpoint2',{'category':'config','paletteLabel':_0x58615a(0x1dc),'defaults':{'name':{'value':''},'endpoint':{'value':_0x58615a(0x138),'required':!![],'validate':_0x51e8e6},'securityMode':{'value':'None'},'securityPolicy':{'value':'None','validate':_0x2c0478=>{if(!_0x2c0478)return![];return!![];}},'userIdentityType':{'value':_0x58615a(0xf8)},'pkiName':{'value':'','validate':_0x3cad62=>!_0x3cad62||_0x3cad62['match'](/[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':_0x58615a(0x15a),'isDefault':!![],'parameters':Object[_0x58615a(0x17c)]({},_0x542b4)},{'id':'s2','name':'Slow\x20Subscription','isDefault':![],'parameters':{'publishingEnabled':!![],'requestedLifetimeCount':0x64,'requestedMaxKeepAliveCount':0x3,'requestedPublishingInterval':0x1388,'maxNotificationsPerPublish':0x64,'priority':0xa}},{'id':'s3','name':_0x58615a(0x162),'isDefault':![],'parameters':{'publishingEnabled':!![],'requestedLifetimeCount':0xfa0,'requestedMaxKeepAliveCount':0x32,'requestedPublishingInterval':0xfa,'maxNotificationsPerPublish':0x64,'priority':0xc8}}],'required':![]},'namespaceAliases':{'value':[{'alias':'ua','namespaceUri':_0x58615a(0x1a2),'isWellKnown':!![],'isDefault':!![]},{'alias':'di','namespaceUri':_0x58615a(0x188),'isWellKnown':!![],'isDefault':!![]}],'required':![]}},'credentials':{'userName':{'type':'text'},'password':{'type':'password'},'userCertificate':{'type':_0x58615a(0x13a)},'userPrivatekey':{'type':_0x58615a(0x1a8)}},'label':function(){const _0x21908d=_0x58615a;return this[_0x21908d(0x1b9)]||this['endpoint']||_0x21908d(0x17b);},'oneditsave'(){const _0xf78178=_0x58615a,_0x587709=$(_0xf78178(0x1d7)),_0x4ab6e9=$(_0xf78178(0x1d8));_0x587709[_0xf78178(0x1cf)]()===_0xf78178(0xf4)&&_0x4ab6e9[_0xf78178(0x13a)](_0xf78178(0xf4));{const _0x3828c7=$(_0xf78178(0x13e))[_0xf78178(0x1c4)]('items'),_0x1262ce=[],_0x29162d=_0x30bf6b=>_0x30bf6b;_0x3828c7[_0xf78178(0x189)](function(_0x19e366,_0x466797){const _0x27516b=_0xf78178,_0x2f806b=$(this),_0x5930c1={'id':'s'+_0x19e366,'name':_0x2f806b[_0x27516b(0x106)](_0x27516b(0x11a))[_0x27516b(0x1cf)](),'isDefault':!!_0x2f806b[_0x27516b(0x106)]('.input-isDefault')['val'](),'parameters':{'publishingEnabled':!!_0x2f806b[_0x27516b(0x106)]('.input-publishingEnabled')['is'](_0x27516b(0xf2)),'requestedLifetimeCount':_0x29162d(_0x2f806b[_0x27516b(0x106)](_0x27516b(0x19c))[_0x27516b(0x1cf)]()),'requestedMaxKeepAliveCount':_0x29162d(_0x2f806b['find'](_0x27516b(0x18d))[_0x27516b(0x1cf)]()),'requestedPublishingInterval':_0x29162d(_0x2f806b[_0x27516b(0x106)](_0x27516b(0x11c))[_0x27516b(0x1cf)]()),'maxNotificationsPerPublish':_0x29162d(_0x2f806b[_0x27516b(0x106)](_0x27516b(0x142))[_0x27516b(0x1cf)]()),'priority':_0x29162d(_0x2f806b['find']('.input-priority')[_0x27516b(0x1cf)]())}};_0x5930c1[_0x27516b(0x1d5)][_0x27516b(0x1a6)]=!![],_0x5930c1['isDefault']&&_0x5930c1['id']==='s0'&&(_0x5930c1[_0x27516b(0x1b9)]=_0x27516b(0x15a)),_0x1262ce['push'](_0x5930c1);}),this[_0xf78178(0x161)]=_0x1262ce;}{const _0x4e8833=$(_0xf78178(0x14d))[_0xf78178(0x1c4)]('items'),_0x2248a0=[];_0x4e8833[_0xf78178(0x189)](function(_0x4a97aa,_0x50e715){const _0x469789=_0xf78178,_0x41fc26=$(this),_0x1f8444={'namespaceUri':_0x41fc26[_0x469789(0x106)](_0x469789(0xfa))[_0x469789(0x1cf)](),'alias':_0x41fc26[_0x469789(0x106)](_0x469789(0x1cd))[_0x469789(0x1cf)]()};_0x2248a0[_0x469789(0x1aa)](_0x1f8444);}),this[_0xf78178(0x1bb)]=_0x2248a0;}},'oneditprepare'(){const _0x52ab95=_0x58615a,_0x597569=this;_0x113de2();const _0x331d0b=RED[_0x52ab95(0x1cb)]['create']({'id':'node-config-endpoint-tabs','onchange':function(_0x5b0d33){const _0x5ee856=_0x52ab95;$(_0x5ee856(0x174))[_0x5ee856(0x137)]()[_0x5ee856(0x10c)](),$('#'+_0x5b0d33['id'])[_0x5ee856(0x192)]();}});_0x331d0b[_0x52ab95(0x16c)]({'id':'endpoint-tab-connection','label':'Connection'},0x0),_0x331d0b[_0x52ab95(0x16c)]({'id':_0x52ab95(0x141),'label':'Subscriptions'},0x1),_0x331d0b[_0x52ab95(0x16c)]({'id':_0x52ab95(0x170),'label':_0x52ab95(0x15c)},0x2),setTimeout(function(){const _0x3c5f10=_0x52ab95;_0x331d0b[_0x3c5f10(0x11d)]();},0x0);{const _0x398279=_0x1416bf=>{const _0x452505=_0x52ab95;switch(_0x1416bf){case null:case undefined:case'':case _0x452505(0xf4):$('.section-securityPolicy')[_0x452505(0x10c)]();break;case _0x452505(0x1a0):case _0x452505(0x1a4):{const _0x43ee11=$(_0x452505(0x1db));(_0x43ee11[_0x452505(0x1cf)]()===_0x452505(0xf4)||_0x43ee11['val']()==='')&&_0x43ee11[_0x452505(0x1cf)]('Basic256Sha256'),$(_0x452505(0x1db))['show']();}break;default:console[_0x452505(0x140)](_0x452505(0x169)+_0x1416bf);}};_0x398279(_0x597569[_0x52ab95(0x13f)]);const _0x87b111=$(_0x52ab95(0x1d8));_0x87b111['on'](_0x52ab95(0x153),()=>{const _0x123e78=_0x52ab95,_0xf881c4=_0x87b111[_0x123e78(0x1cf)]();_0x398279(_0xf881c4);});}const _0x486cc8=$(_0x52ab95(0x107));_0x486cc8['licenceWidget']({'baseUrl':''});{const _0x5b13de=$(_0x52ab95(0x1ce)),_0x1ab14a=$(_0x52ab95(0x193)),_0x35c194=_0x3ad676=>{const _0x2051b2=_0x52ab95;_0x3ad676=_0x3ad676||_0x2051b2(0xf8);switch(_0x3ad676){case _0x2051b2(0xf8):$('#node-config-input-userName')['val'](''),$(_0x2051b2(0x172))[_0x2051b2(0x1cf)](''),_0x5b13de[_0x2051b2(0x10c)](),_0x1ab14a[_0x2051b2(0x10c)]();break;case _0x2051b2(0xfc):_0x5b13de[_0x2051b2(0x192)](),_0x1ab14a[_0x2051b2(0x10c)]();break;case _0x2051b2(0x16f):$(_0x2051b2(0x154))['val'](''),$(_0x2051b2(0x172))[_0x2051b2(0x1cf)](''),_0x1ab14a[_0x2051b2(0x192)](),_0x5b13de[_0x2051b2(0x10c)]();break;default:console[_0x2051b2(0x140)](_0x2051b2(0x1ac)+_0x3ad676);}};_0x35c194(_0x597569[_0x52ab95(0x19d)]);const _0x20e7bf=$(_0x52ab95(0x10d));_0x20e7bf['on']('change',()=>{const _0x4f8abc=_0x52ab95,_0x4b668b=_0x20e7bf[_0x4f8abc(0x1cf)]();_0x35c194(_0x4b668b);});}{$('#section-Advanced')['hide'](),$(_0x52ab95(0x1d3))[_0x52ab95(0x175)](_0x52ab95(0x16e),![]),$(_0x52ab95(0x1d3))['on'](_0x52ab95(0x153),function(){const _0x4d5fec=_0x52ab95;$(this)[_0x4d5fec(0x175)](_0x4d5fec(0x16e))?$(_0x4d5fec(0x124))['show']():$(_0x4d5fec(0x124))[_0x4d5fec(0x10c)]();});}const _0x512b20=$(_0x52ab95(0x126))[_0x52ab95(0x175)](_0x52ab95(0x16e));_0x512b20?$('#section-TransportSettings')[_0x52ab95(0x192)]():$(_0x52ab95(0x134))[_0x52ab95(0x10c)]();$('#node-config-input-useTransport')['on'](_0x52ab95(0x153),function(){const _0xad5678=_0x52ab95;$(this)[_0xad5678(0x175)](_0xad5678(0x16e))?$(_0xad5678(0x134))[_0xad5678(0x192)]():$('#section-TransportSettings')[_0xad5678(0x10c)]();});{$(_0x52ab95(0x165))['on'](_0x52ab95(0x12d),()=>_0x54f868(this,void 0x0,void 0x0,function*(){const _0x3c101a=_0x52ab95,_0xa68b83=yield fetch(_0x3c101a(0x159)),_0x4d2037=yield _0xa68b83[_0x3c101a(0x13b)](),_0x15f5fc=JSON[_0x3c101a(0x1cc)](_0x4d2037,null,'\x20');alert(_0x15f5fc);}));}$(_0x52ab95(0x135))['on'](_0x52ab95(0x12d),()=>_0x54f868(this,void 0x0,void 0x0,function*(){const _0x3df205=_0x52ab95;window[_0x3df205(0x1b3)](_0x3df205(0x11f),'_blank');}));function _0x2074cb(){const _0x26f66e=_0x52ab95;var _0x5d1427;return{'id':_0x597569['id'],'endpoint':$(_0x26f66e(0x163))['val'](),'name':$('#node-config-input-name')['val'](),'pkiName':(_0x5d1427=$('#node-config-input-pkiName'))===null||_0x5d1427===void 0x0?void 0x0:_0x5d1427[_0x26f66e(0x1cf)](),'securityMode':$(_0x26f66e(0x1d8))[_0x26f66e(0x1cf)](),'securityPolicy':$(_0x26f66e(0x1d7))[_0x26f66e(0x1cf)](),'userIdentityType':$(_0x26f66e(0x10d))['val'](),'userName':$('#node-config-input-userName')['val'](),'password':$(_0x26f66e(0x172))[_0x26f66e(0x1cf)](),'userCertificate':$(_0x26f66e(0x14e))[_0x26f66e(0x1cf)](),'userPrivatekey':$(_0x26f66e(0x18f))['val'](),'certificate':$(_0x26f66e(0x19f))[_0x26f66e(0x1cf)](),'useTransport':$(_0x26f66e(0x160))[_0x26f66e(0x175)](_0x26f66e(0x16e)),'maxChunkCount':$(_0x26f66e(0x118))[_0x26f66e(0x1cf)](),'maxMessageSize':$('#node-input-maxMessageSize')[_0x26f66e(0x1cf)](),'receiveBufferSize':$(_0x26f66e(0x11b))[_0x26f66e(0x1cf)](),'sendBufferSize':$(_0x26f66e(0x11e))[_0x26f66e(0x1cf)]()};}{_0x88d468(_0x52ab95(0x127),$(_0x52ab95(0x1bd)),()=>({'url':_0x52ab95(0x101),'body':{'endpointNode':_0x2074cb()}}),()=>{});}{const _0x44b17b=(_0x8b6f50,_0x130b8e)=>{const _0x4ad92c=_0x52ab95;var _0x1a0332=_0x8b6f50[_0x4ad92c(0x1a7)]()||0x64;_0x8b6f50['find']('label')[_0x4ad92c(0x1d0)](_0x4ad92c(0x1a7),_0x1a0332-0xf);},_0x1c20e5=$('#subscriptions-container')[_0x52ab95(0x147)]({'min-height':'150px','min-width':_0x52ab95(0x123)})[_0x52ab95(0x1c4)]({'addItem':(_0x3a5be6,_0x3a9121,_0x2e275c)=>{const _0x17794f=_0x52ab95,_0x3ca075=_0x2e275c,_0x51e78b=$(_0x17794f(0x13c))['clone']()[_0x17794f(0x146)](_0x3a5be6);_0x51e78b[_0x17794f(0x13d)]('id')['removeClass'](_0x17794f(0x10c))['removeClass'](_0x17794f(0x176))['attr'](_0x17794f(0x100),_0x3a9121),_0x51e78b[_0x17794f(0x106)]('.input-name')[_0x17794f(0x1cf)](_0x3ca075['name']),_0x51e78b[_0x17794f(0x106)]('.input-requestedPublishingInterval')['val'](_0x3ca075[_0x17794f(0x1d5)][_0x17794f(0xff)]),_0x51e78b[_0x17794f(0x106)](_0x17794f(0x18d))['val'](_0x3ca075['parameters'][_0x17794f(0x1c2)]),_0x51e78b[_0x17794f(0x106)](_0x17794f(0x19c))[_0x17794f(0x1cf)](_0x3ca075[_0x17794f(0x1d5)]['requestedLifetimeCount']),_0x51e78b[_0x17794f(0x106)](_0x17794f(0x142))[_0x17794f(0x1cf)](_0x3ca075[_0x17794f(0x1d5)][_0x17794f(0x122)]||0x0),_0x51e78b[_0x17794f(0x106)](_0x17794f(0x17e))[_0x17794f(0x1cf)](_0x3ca075[_0x17794f(0x1d5)]['priority']||0x0),_0x51e78b[_0x17794f(0x106)](_0x17794f(0x19e))['text'](''+_0x3a9121),_0x3ca075[_0x17794f(0xfb)]&&_0x51e78b[_0x17794f(0x106)](_0x17794f(0x11a))[_0x17794f(0x175)]('readonly',!![]),_0x51e78b[_0x17794f(0x106)](_0x17794f(0x16d))['prop'](_0x17794f(0x16e),_0x3ca075['isDefault']),_0x3ca075[_0x17794f(0xfb)]&&(_0x3a5be6[_0x17794f(0x106)](_0x17794f(0x1b4))[_0x17794f(0x103)](_0x17794f(0x10c)),setTimeout(()=>_0x51e78b[_0x17794f(0x106)]('.input-isDefault')[_0x17794f(0x175)](_0x17794f(0x14b),!![]),0xa));},'removable':!![],'resizeItem':_0x44b17b}),_0x559997=()=>{const _0x1ab5b8=_0x52ab95,_0x57fea3=_0x597569[_0x1ab5b8(0x161)]||[];_0x57fea3[_0x1ab5b8(0x164)]===0x0&&_0x57fea3[_0x1ab5b8(0x1aa)]({'id':'s1','name':_0x1ab5b8(0x15a),'isDefault':!![],'parameters':Object['assign']({},_0x542b4)});_0x1c20e5[_0x1ab5b8(0x1c4)](_0x1ab5b8(0x109));for(const _0x112e7e of _0x57fea3){_0x1c20e5[_0x1ab5b8(0x1c4)]('addItem',_0x112e7e);}};_0x559997();}{function _0x1639a8(_0x56794c,_0x4f8e9a,_0x49ab10){const _0x30dd66=_0x52ab95,_0x16af69=_0x49ab10,_0x11c67c=$(_0x30dd66(0x19b))[_0x30dd66(0x146)](_0x56794c);$(_0x30dd66(0x196),{'class':_0x30dd66(0x1c7),'type':'text'})['val'](_0x49ab10[_0x30dd66(0x173)]||'')[_0x30dd66(0x147)]({'width':'5%'})[_0x30dd66(0x146)](_0x11c67c)[_0x30dd66(0x1cf)](_0x4f8e9a['toString']()),$(_0x30dd66(0x196),{'class':_0x30dd66(0x182),'type':_0x30dd66(0x13a)})[_0x30dd66(0x1cf)](_0x49ab10[_0x30dd66(0x173)]||'')[_0x30dd66(0x147)]({'width':_0x30dd66(0x128)})['appendTo'](_0x11c67c)[_0x30dd66(0x1cf)](_0x16af69[_0x30dd66(0x173)]),$('<input/>',{'class':_0x30dd66(0x136),'type':_0x30dd66(0x13a)})[_0x30dd66(0x1cf)](_0x49ab10['namespaceUri']||'')['css']({'width':_0x30dd66(0x131)})[_0x30dd66(0x146)](_0x11c67c)[_0x30dd66(0x1cf)](_0x16af69[_0x30dd66(0x156)]);}const _0x3ac026=$(_0x52ab95(0x14d))['css']({'min-height':_0x52ab95(0x194),'min-width':_0x52ab95(0x123)})['editableList']({'addButton':![],'removable':![],'height':_0x52ab95(0x157),'scrollOnAdd':![],'addItem'(_0x3e3761,_0x2ba125,_0x38489e){_0x1639a8(_0x3e3761,_0x2ba125,_0x38489e);}});function _0x5a1ed5(){const _0xf685bf=_0x52ab95;_0x3ac026[_0xf685bf(0x1c4)](_0xf685bf(0x16a)),_0x3ac026[_0xf685bf(0x1c4)](_0xf685bf(0x109));for(const _0x33317b of _0x597569[_0xf685bf(0x1bb)]||[]){_0x3ac026[_0xf685bf(0x1c4)](_0xf685bf(0x1a1),_0x33317b);}}{$(_0x52ab95(0x132))['on']('click',()=>_0x54f868(this,void 0x0,void 0x0,function*(){const _0x47bb8d=_0x52ab95,_0x18f132={'endpointNode':_0x2074cb(),'namespaceAliases':_0x597569[_0x47bb8d(0x1bb)]||[]},_0x403aac=yield fetch(_0x47bb8d(0x144),{'method':_0x47bb8d(0x1dd),'headers':{'Content-Type':_0x47bb8d(0x18e)},'body':JSON[_0x47bb8d(0x1cc)](_0x18f132)}),_0x1f1819=yield _0x403aac[_0x47bb8d(0x13b)](),_0x527b09=_0x1f1819[_0x47bb8d(0x1bb)];console['log'](_0x47bb8d(0x1bb),_0x527b09),Array['isArray'](_0x527b09)&&(_0x597569['namespaceAliases']=_0x527b09,_0x5a1ed5());})),_0x597569[_0x52ab95(0x1bb)]=_0x597569['namespaceAliases']||[{'alias':'ua','namespaceUri':_0x52ab95(0x1a2),'isWellKnown':!![],'isDefault':!![]}];}_0x5a1ed5();}}});}()));
|
8
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNvdXJjZU1hcCJdLCJuYW1lcyI6WyJfMHg1NGY4NjgiLCJfMHgyYjc2YzciLCJfMHgxMTY0ZjYiLCJfMHg2ZDQwOTUiLCJfMHgzNmEyNDgiLCJfMHgyOTgwZDMiLCJfMHg0YjllZDMiLCJfMHgzOGI1YTIiLCJQcm9taXNlIiwiXzB4ZjhhZWY3IiwiXzB4ZjY0NzIwIiwiXzB4MzZmMGI0IiwiXzB4NWI0ZmQ0IiwiXzB4Mzk5MWM1IiwiXzB4MWI4ZDk0IiwiXzB4MjJhNWQ1IiwiXzB4NWJkY2Q4IiwiXzB4NWEwNTdiIiwiXzB4MTMyMTk2IiwiU3VwcHJlc3NlZEVycm9yIiwiXzB4MzYxY2QxIiwiXzB4MWJmYWI3IiwiXzB4MjFlYWUyIiwiXzB4NDUwYTdiIiwiRXJyb3IiLCJfMHg4OGQ0NjgiLCJfMHg1NDJjZDkiLCJfMHgxNWVhYTciLCJfMHgyZTFjODgiLCJfMHgzOGFmYjciLCJfMHgzMmRkYzMiLCIkIiwiXzB4MTczMTU2IiwiXzB4NDBkMzBlIiwiXzB4MWExMTVkIiwiXzB4MTNmNzRlIiwiYm9keSIsIl8weDVjODJiMyIsInVybCIsIl8weDU5Nzc5OSIsImZldGNoIiwiSlNPTiIsIl8weDEyNjZiZCIsIl8weDQ1NjYyMSIsImNvbnNvbGUiLCJfMHgyOTVmNjEiLCJfMHgxY2E0NmEiLCJfMHgzODM4MjgiLCJfMHg0ZTNkNzgiLCJfMHgzMTkxZmQiLCJBcnJheSIsIl8weDM5ZDAxOSIsIl8weDE0MjFkNyIsIl8weDNkNjczZiIsIl8weDNiYTdiMiIsIl8weDUzYWQxOCIsIl8weDIzMzUxNiIsIl8weDUzN2MyNiIsIl8weDM2YTcwOSIsIl8weDM5ZWU2OSIsIl8weDNkYzIzMiIsIl8weDI4MDUyZSIsIl8weDJjZGI3MSIsIkRhdGUiLCJfMHgxMDZiNTAiLCJfMHgxZDhiOTMiLCJfMHgyYjEwZjMiLCJfMHg1MTljYWYiLCJfMHgyZDdkOTIiLCJNYXRoIiwiXzB4MWNlYTA2IiwiXzB4MmMwYjJmIiwiXzB4MjhkNzk1IiwiXzB4M2MyMTE4IiwiXzB4MTFhNjc3IiwiXzB4NWRkYjU2IiwiXzB4NDg4ZTk4IiwiXzB4MjM3NDU0IiwiYXJndW1lbnRzIiwiXzB4NDFkMWRhIiwiXzB4NDljMjgzIiwiXzB4MmM4ZDI1IiwiXzB4MWQwZTY1IiwiXzB4NTIyYTk2IiwiXzB4NGIzOTAzIiwiXzB4MTUzZTA5IiwiXzB4YzFkMjkyIiwiXzB4NGI2NGFmIiwiXzB4NTk1YzFlIiwiXzB4MWJjMGNhIiwiXzB4MzJlNjM4IiwiXzB4Y2JlMzU0IiwiXzB4NDQxMDZkIiwiXzB4ZDg1NWY2IiwiXzB4NGNkMzU4IiwiXzB4NGZiMzdlIiwiXzB4ODU3NDVhIiwiXzB4NWU2Mzc5IiwiXzB4MWEwNWE4IiwiXzB4MmMyNzhiIiwidW5kZWZpbmVkIiwiXzB4MjM0ODNiIiwiXzB4OWE2YWU1IiwiXzB4MzY3NmJlIiwiXzB4NjllMmY5IiwiZG9jdW1lbnQiLCJfMHg1MjBlMzMiLCJfMHgzOGFmYTciLCJfMHgxMTNkZTIiLCJfMHhiYjVhOWYiLCJfMHgyOWJmMDQiLCJfMHg1MWU4ZTYiLCJfMHgxNzhhMmEiLCJfMHg1ZWFmOWUiLCJVUkwiLCJfMHgzYTAxMWQiLCJfMHg1NDJiNCIsIlJFRCIsIl8weDJjMDQ3OCIsIl8weDNjYWQ2MiIsIk9iamVjdCIsIl8weDU4NzcwOSIsIl8weDRhYjZlOSIsIl8weDM4MjhjNyIsIl8weDEyNjJjZSIsIl8weDI5MTYyZCIsIl8weDMwYmY2YiIsIl8weDE5ZTM2NiIsIl8weDQ2Njc5NyIsIl8weDJmODA2YiIsIl8weDU5MzBjMSIsIl8weDRlODgzMyIsIl8weDIyNDhhMCIsIl8weDRhOTdhYSIsIl8weDUwZTcxNSIsIl8weDQxZmMyNiIsIl8weDFmODQ0NCIsIl8weDU5NzU2OSIsIl8weDMzMWQwYiIsIl8weDViMGQzMyIsInNldFRpbWVvdXQiLCJfMHgzOTgyNzkiLCJfMHgxNDE2YmYiLCJfMHg0M2VlMTEiLCJfMHg4N2IxMTEiLCJfMHhmODgxYzQiLCJfMHg0ODZjYzgiLCJfMHg1YjEzZGUiLCJfMHgxYWIxNGEiLCJfMHgzNWMxOTQiLCJfMHgzYWQ2NzYiLCJfMHgyMGU3YmYiLCJfMHg0YjY2OGIiLCJfMHg1MTJiMjAiLCJfMHhhNjhiODMiLCJfMHg0ZDIwMzciLCJfMHgxNWY1ZmMiLCJhbGVydCIsIndpbmRvdyIsIl8weDIwNzRjYiIsIl8weDVkMTQyNyIsIl8weDQ0YjE3YiIsIl8weDhiNmY1MCIsIl8weDEzMGI4ZSIsIl8weDFhMDMzMiIsIl8weDFjMjBlNSIsIl8weDNhNWJlNiIsIl8weDNhOTEyMSIsIl8weDJlMjc1YyIsIl8weDNjYTA3NSIsIl8weDUxZTc4YiIsIl8weDU1OTk5NyIsIl8weDU3ZmVhMyIsIl8weDExMmU3ZSIsIl8weDE2MzlhOCIsIl8weDU2Nzk0YyIsIl8weDRmOGU5YSIsIl8weDQ5YWIxMCIsIl8weDE2YWY2OSIsIl8weDExYzY3YyIsIl8weDNhYzAyNiIsIl8weDNlMzc2MSIsIl8weDJiYTEyNSIsIl8weDM4NDg5ZSIsIl8weDVhMWVkNSIsIl8weDMzMzE3YiIsIl8weDE4ZjEzMiIsIl8weDQwM2FhYyIsIl8weDFmMTgxOSIsIl8weDUyN2IwOSJdLCJtYXBwaW5ncyI6Im9vTEFBQSxDQUFDLFUsQ0FDRyxhLHdCQW1CQSxTQUFTQSxTQUFULENBQW1CQyxTQUFuQixDQUE0QkMsU0FBNUIsQ0FBd0NDLFNBQXhDLENBQTJDQyxTQUEzQyxDLENBQ0ksU0FBU0MsU0FBVCxDQUFlQyxTQUFmLEMsUUFBK0JBLFNBQUEsWUFBaUJILFNBQWpCLENBQXFCRyxTQUFyQixDQUE2QixJQUFJSCxTQUFKLENBQU0sU0FBVUksU0FBVixDLENBQXFCQSxTQUFBLENBQVFELFNBQVIsQyxFQUEzQixDLFNBQ3JELEdBQUssQ0FBQUgsU0FBQSxFQUFNLENBQUFBLFNBQUEsQ0FBSUssT0FBSixDQUFOLENBQUwsQ0FBeUIsU0FBVUMsU0FBVixDQUFtQkMsU0FBbkIsQyx5QkFDNUIsU0FBU0MsU0FBVCxDQUFtQkMsU0FBbkIsQyx5QkFBNEIsRyxDQUFNQyxTQUFBLENBQUtULFNBQUEsQyxnQkFBQSxFQUFlUSxTQUFmLENBQUwsQyxFQUErQixNQUFPRSxTQUFQLEMs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QnRCLFNBQUEsQyxnQkFBQSxHQUF5QixFQUYvQixDLENBSVZrRCxTQUFBLENBQU8sTUFBTW5KLEtBQUEsQyxnQkFBQSxDQUF1RCxDLFFBQ3RFLEMsZ0JBRHNFLEMsU0FFdEUsQ0FBUyxDLGNBQUUsQyxnQkFBRixDQUY2RCxDLE1BR3RFLENBQU1DLElBQUEsQyxnQkFBQSxFQUFlaUosU0FBZixDQUhnRSxDQUF2RCxDLENBS2JFLFNBQUEsQ0FBTyxNQUFNRCxTQUFBLEMsZ0JBQUEsRyxDQUNiRSxTQUFBLENBQW1CRCxTQUFBLEMsZ0JBQUEsQyxDQUN6QmhKLE9BQUEsQyxLQUFBLEUsZ0JBQUEsQ0FBZ0NpSixTQUFoQyxDLENBQ0kzSSxLQUFBLEMsU0FBQSxFQUFjMkksU0FBZCxDLEdBQ0FwRCxTQUFBLEMsa0JBQUEsRUFBd0JvRCxTLENBQ3hCTCxTQUFBLEUsR0FmZ0MsQ0FBeEMsQyxDQWtCQS9DLFNBQUEsQyxnQkFBQSxFQUF3QkEsU0FBQSxDLGtCQUFBLEdBQXlCLENBQzdDLEMsT0FDSSxDLElBREosQyxjQUVJLEMsZ0JBRkosQyxhQUdJLEMsSUFISixDLFdBSUksQyxJQUpKLENBRDZDLEMsRUFTckQrQyxTQUFBLEUsR0F4ZDhCLENBQTFDLEMsRUFqVkosRyIsInNvdXJjZXNDb250ZW50IjpbIihmdW5jdGlvbiAoKSB7XG4gICAgJ3VzZSBzdHJpY3QnO1xuXG4gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gICAgQ29weXJpZ2h0IChjKSBNaWNyb3NvZnQgQ29ycG9yYXRpb24uXHJcblxyXG4gICAgUGVybWlzc2lvbiB0byB1c2UsIGNvcHksIG1vZGlmeSwgYW5kL29yIGRpc3RyaWJ1dGUgdGhpcyBzb2Z0d2FyZSBmb3IgYW55XHJcbiAgICBwdXJwb3NlIHdpdGggb3Igd2l0aG91dCBmZWUgaXMgaGVyZWJ5IGdyYW50ZWQuXHJcblxyXG4gICAgVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiBBTkQgVEhFIEFVVEhPUiBESVNDTEFJTVMgQUxMIFdBUlJBTlRJRVMgV0lUSFxyXG4gICAgUkVHQVJEIFRPIFRISVMgU09GVFdBUkUgSU5DTFVESU5HIEFMTCBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZXHJcbiAgICBBTkQgRklUTkVTUy4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBCRSBMSUFCTEUgRk9SIEFOWSBTUEVDSUFMLCBESVJFQ1QsXHJcbiAgICBJTkRJUkVDVCwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIE9SIEFOWSBEQU1BR0VTIFdIQVRTT0VWRVIgUkVTVUxUSU5HIEZST01cclxuICAgIExPU1MgT0YgVVNFLCBEQVRBIE9SIFBST0ZJVFMsIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBORUdMSUdFTkNFIE9SXHJcbiAgICBPVEhFUiBUT1JUSU9VUyBBQ1RJT04sIEFSSVNJTkcgT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgVVNFIE9SXHJcbiAgICBQRVJGT1JNQU5DRSBPRiBUSElTIFNPRlRXQVJFLlxyXG4gICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogKi9cclxuICAgIC8qIGdsb2JhbCBSZWZsZWN0LCBQcm9taXNlLCBTdXBwcmVzc2VkRXJyb3IsIFN5bWJvbCwgSXRlcmF0b3IgKi9cclxuXHJcblxyXG4gICAgZnVuY3Rpb24gX19hd2FpdGVyKHRoaXNBcmcsIF9hcmd1bWVudHMsIFAsIGdlbmVyYXRvcikge1xyXG4gICAgICAgIGZ1bmN0aW9uIGFkb3B0KHZhbHVlKSB7IHJldHVybiB2YWx1ZSBpbnN0YW5jZW9mIFAgPyB2YWx1ZSA6IG5ldyBQKGZ1bmN0aW9uIChyZXNvbHZlKSB7IHJlc29sdmUodmFsdWUpOyB9KTsgfVxyXG4gICAgICAgIHJldHVybiBuZXcgKFAgfHwgKFAgPSBQcm9taXNlKSkoZnVuY3Rpb24gKHJlc29sdmUsIHJlamVjdCkge1xyXG4gICAgICAgICAgICBmdW5jdGlvbiBmdWxmaWxsZWQodmFsdWUpIHsgdHJ5IHsgc3RlcChnZW5lcmF0b3IubmV4dCh2YWx1ZSkpOyB9IGNhdGNoIChlKSB7IHJlamVjdChlKTsgfSB9XHJcbiAgICAgICAgICAgIGZ1bmN0aW9uIHJlamVjdGVkKHZhbHVlKSB7IHRyeSB7IHN0ZXAoZ2VuZXJhdG9yW1widGhyb3dcIl0odmFsdWUpKTsgfSBjYXRjaCAoZSkgeyByZWplY3QoZSk7IH0gfVxyXG4gICAgICAgICAgICBmdW5jdGlvbiBzdGVwKHJlc3VsdCkgeyByZXN1bHQuZG9uZSA/IHJlc29sdmUocmVzdWx0LnZhbHVlKSA6IGFkb3B0KHJlc3VsdC52YWx1ZSkudGhlbihmdWxmaWxsZWQsIHJlamVjdGVkKTsgfVxyXG4gICAgICAgICAgICBzdGVwKChnZW5lcmF0b3IgPSBnZW5lcmF0b3IuYXBwbHkodGhpc0FyZywgX2FyZ3VtZW50cyB8fCBbXSkpLm5leHQoKSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgdHlwZW9mIFN1cHByZXNzZWRFcnJvciA9PT0gXCJmdW5jdGlvblwiID8gU3VwcHJlc3NlZEVycm9yIDogZnVuY3Rpb24gKGVycm9yLCBzdXBwcmVzc2VkLCBtZXNzYWdlKSB7XHJcbiAgICAgICAgdmFyIGUgPSBuZXcgRXJyb3IobWVzc2FnZSk7XHJcbiAgICAgICAgcmV0dXJuIGUubmFtZSA9IFwiU3VwcHJlc3NlZEVycm9yXCIsIGUuZXJyb3IgPSBlcnJvciwgZS5zdXBwcmVzc2VkID0gc3VwcHJlc3NlZCwgZTtcclxuICAgIH07XG5cbiAgICBmdW5jdGlvbiBtYW5hZ2VBUElDYWxsKHByZWZpeCwgYnRuLCBmdW5jLCBvblJlc3VsdCkge1xuICAgICAgICBjb25zdCBzdWNjZXNzSWNvbiA9ICQoYCMke3ByZWZpeH0tc3VjY2Vzc2ApO1xuICAgICAgICBjb25zdCBmYWlsdXJlSWNvbiA9ICQoYCMke3ByZWZpeH0tZmFpbHVyZWApO1xuICAgICAgICBjb25zdCBwZW5kaW5nSWNvbiA9ICQoYCMke3ByZWZpeH0tcGVuZGluZ2ApO1xuICAgICAgICBjb25zdCBtZXNzYWdlcyA9ICQoYCMke3ByZWZpeH0tbWVzc2FnZXNgKTtcbiAgICAgICAgbGV0IGFjdGlvblBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3VjY2Vzc0ljb24uaGlkZSgpO1xuICAgICAgICBmYWlsdXJlSWNvbi5oaWRlKCk7XG4gICAgICAgIHBlbmRpbmdJY29uLmhpZGUoKTtcbiAgICAgICAgYnRuLm9uKFwiY2xpY2tcIiwgKCkgPT4ge1xuICAgICAgICAgICAgaWYgKGFjdGlvblBlbmRpbmcpXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgYWN0aW9uUGVuZGluZyA9IHRydWU7XG4gICAgICAgICAgICBwZW5kaW5nSWNvbi5yZW1vdmVDbGFzcyhcImhpZGVcIik7XG4gICAgICAgICAgICBwZW5kaW5nSWNvbi5odG1sKFwiVGVzdGluZyBDb25uZWN0aW9uIC4uLlwiKTtcbiAgICAgICAgICAgIHN1Y2Nlc3NJY29uLmFkZENsYXNzKFwiaGlkZVwiKTtcbiAgICAgICAgICAgIGZhaWx1cmVJY29uLmFkZENsYXNzKFwiaGlkZVwiKTtcbiAgICAgICAgICAgIG1lc3NhZ2VzLmh0bWwoXCJcIik7XG4gICAgICAgICAgICBjb25zdCB7IGJvZHksIHVybCB9ID0gZnVuYygpO1xuICAgICAgICAgICAgLy8geHggY29uc29sZS5sb2coXCJ4eHh4eFwiLCBib2R5KTtcbiAgICAgICAgICAgIGZldGNoKHVybCwge1xuICAgICAgICAgICAgICAgIG1ldGhvZDogXCJQT1NUXCIsXG4gICAgICAgICAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgICAgICAgICAgICBcIkNvbnRlbnQtVHlwZVwiOiBcImFwcGxpY2F0aW9uL2pzb25cIixcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KGJvZHkpLFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAudGhlbigoZGF0YSkgPT4gZGF0YS5qc29uKCkpXG4gICAgICAgICAgICAgICAgLnRoZW4oKGpzb24pID0+IHtcbiAgICAgICAgICAgICAgICBhY3Rpb25QZW5kaW5nID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgcGVuZGluZ0ljb24uaGlkZSgpO1xuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKEpTT04uc3RyaW5naWZ5KGpzb24sIG51bGwsIFwiIFwiKSk7XG4gICAgICAgICAgICAgICAgaWYgKGpzb24ucmVzdWx0ID09PSBcIm9rXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgc3VjY2Vzc0ljb24ucmVtb3ZlQ2xhc3MoXCJoaWRlXCIpO1xuICAgICAgICAgICAgICAgICAgICBmYWlsdXJlSWNvbi5hZGRDbGFzcyhcImhpZGVcIik7XG4gICAgICAgICAgICAgICAgICAgIG1lc3NhZ2VzLmh0bWwoanNvbi5tZXNzYWdlLnJlcGxhY2UoXCJcXG5cIiwgXCI8YnI+XCIpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGFkYXB0ID0gKHN0cikgPT4gIXN0clxuICAgICAgICAgICAgICAgICAgICAgICAgPyBcIlwiXG4gICAgICAgICAgICAgICAgICAgICAgICA6IHN0clxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5zcGxpdChcIlxcblwiKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tYXAoKGEpID0+IGA8cD4ke2F9PC9wPmApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmpvaW4oXCJcXG5cIik7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGFkYXB0MiA9IChzdHIpID0+IChBcnJheS5pc0FycmF5KHN0cikgPyBzdHIubWFwKGFkYXB0KS5qb2luKFwiXFxuXCIpIDogYWRhcHQoc3RyKSk7XG4gICAgICAgICAgICAgICAgICAgIHN1Y2Nlc3NJY29uLmFkZENsYXNzKFwiaGlkZVwiKTtcbiAgICAgICAgICAgICAgICAgICAgZmFpbHVyZUljb24ucmVtb3ZlQ2xhc3MoXCJoaWRlXCIpO1xuICAgICAgICAgICAgICAgICAgICBtZXNzYWdlcy5odG1sKGFkYXB0Mihqc29uLm1lc3NhZ2UpICsgYWRhcHQyKGpzb24uZXh0cmEpKTtcbiAgICAgICAgICAgICAgICAgICAgb25SZXN1bHQobmV3IEVycm9yKGpzb24ucmVzdWx0KSwganNvbik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAuY2F0Y2goKGVycikgPT4ge1xuICAgICAgICAgICAgICAgIGFjdGlvblBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICBwZW5kaW5nSWNvbi5hZGRDbGFzcyhcImhpZGVcIik7XG4gICAgICAgICAgICAgICAgc3VjY2Vzc0ljb24uYWRkQ2xhc3MoXCJoaWRlXCIpO1xuICAgICAgICAgICAgICAgIGZhaWx1cmVJY29uLnJlbW92ZUNsYXNzKFwiaGlkZVwiKTtcbiAgICAgICAgICAgICAgICBtZXNzYWdlcy5odG1sKFwiaW50ZXJuYWwgZXJyb3IgXCIgKyBlcnIubWVzc2FnZSk7XG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2coXCJlcnJcIiwgZXJyKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICB2YXIgTGljZW5jZVR5cGU7XG4gICAgKGZ1bmN0aW9uIChMaWNlbmNlVHlwZSkge1xuICAgICAgICBMaWNlbmNlVHlwZVtMaWNlbmNlVHlwZVtcIkZSRUVXQVJFXCJdID0gMF0gPSBcIkZSRUVXQVJFXCI7XG4gICAgICAgIExpY2VuY2VUeXBlW0xpY2VuY2VUeXBlW1wiVFJJQUxcIl0gPSAxXSA9IFwiVFJJQUxcIjtcbiAgICAgICAgTGljZW5jZVR5cGVbTGljZW5jZVR5cGVbXCJQUk9GRVNTSU9OQUxcIl0gPSAyXSA9IFwiUFJPRkVTU0lPTkFMXCI7XG4gICAgfSkoTGljZW5jZVR5cGUgfHwgKExpY2VuY2VUeXBlID0ge30pKTtcbiAgICB2YXIgTGljZW5jZVN0YXR1cztcbiAgICAoZnVuY3Rpb24gKExpY2VuY2VTdGF0dXMpIHtcbiAgICAgICAgTGljZW5jZVN0YXR1c1tMaWNlbmNlU3RhdHVzW1wiQVVUSE9SSVpFRFwiXSA9IDI0XSA9IFwiQVVUSE9SSVpFRFwiO1xuICAgICAgICBMaWNlbmNlU3RhdHVzW0xpY2VuY2VTdGF0dXNbXCJGQUlMRURcIl0gPSAyM10gPSBcIkZBSUxFRFwiO1xuICAgICAgICBMaWNlbmNlU3RhdHVzW0xpY2VuY2VTdGF0dXNbXCJFWFBJUkVEXCJdID0gMjJdID0gXCJFWFBJUkVEXCI7XG4gICAgfSkoTGljZW5jZVN0YXR1cyB8fCAoTGljZW5jZVN0YXR1cyA9IHt9KSk7XG5cbiAgICBmdW5jdGlvbiBnZXRFZmZlY3RpdmVMaWNlbmNlVHlwZShsaWNlbmNlVHlwZSwgbGljZW5jZVN0YXR1cykge1xuICAgICAgICBpZiAobGljZW5jZVN0YXR1cyAhPT0gTGljZW5jZVN0YXR1cy5BVVRIT1JJWkVEKSB7XG4gICAgICAgICAgICByZXR1cm4gTGljZW5jZVR5cGUuRlJFRVdBUkU7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGxpY2VuY2VUeXBlO1xuICAgIH1cbiAgICBjb25zdCBtaWxsaXNlY29uZHNQZXJIb3VyID0gMzYwMCAqIDEwMDA7XG4gICAgY29uc3QgbWlsbGlzZWNvbmRzUGVyRGF5ID0gbWlsbGlzZWNvbmRzUGVySG91ciAqIDI0O1xuICAgIGZ1bmN0aW9uIF9hYShsaWNlbmNlKSB7XG4gICAgICAgIHJldHVybiAhbGljZW5jZVxuICAgICAgICAgICAgPyBuZXcgRGF0ZSgwKVxuICAgICAgICAgICAgOiBsaWNlbmNlIGluc3RhbmNlb2YgRGF0ZVxuICAgICAgICAgICAgICAgID8gbGljZW5jZVxuICAgICAgICAgICAgICAgIDogbmV3IERhdGUobGljZW5jZS5saWNlbmNlSW5mbyA/IGxpY2VuY2UubGljZW5jZUluZm8uZXhwaXJ5RGF0ZSA6IDApO1xuICAgIH1cbiAgICBmdW5jdGlvbiBnZXREYXlzTGVmdChsaWNlbmNlKSB7XG4gICAgICAgIGNvbnN0IGV4cGlyeURhdGUgPSBfYWEobGljZW5jZSk7XG4gICAgICAgIGNvbnN0IG5vdyA9IG5ldyBEYXRlKCk7XG4gICAgICAgIGNvbnN0IGRheXNMZWZ0ID0gTWF0aC5mbG9vcigoZXhwaXJ5RGF0ZS5nZXRUaW1lKCkgLSBub3cuZ2V0VGltZSgpKSAvIG1pbGxpc2Vjb25kc1BlckRheSk7XG4gICAgICAgIHJldHVybiBkYXlzTGVmdDtcbiAgICB9XG4gICAgZnVuY3Rpb24gZ2V0SG91cnNMZWZ0KGxpY2VuY2UpIHtcbiAgICAgICAgY29uc3QgZXhwaXJ5RGF0ZSA9IF9hYShsaWNlbmNlKTtcbiAgICAgICAgY29uc3Qgbm93ID0gbmV3IERhdGUoKTtcbiAgICAgICAgY29uc3QgaG91cnNMZWZ0ID0gTWF0aC5mbG9vcigoZXhwaXJ5RGF0ZS5nZXRUaW1lKCkgLSBub3cuZ2V0VGltZSgpKSAvIG1pbGxpc2Vjb25kc1BlckhvdXIpO1xuICAgICAgICByZXR1cm4gaG91cnNMZWZ0O1xuICAgIH1cblxuICAgIGNvbnN0IHByaWNpbmdUYWJsZUlkID0gXCJwcmN0YmxfMU9KdDQ5QkNOY2NienNWemthQU5PZ0ZMXCI7XG4gICAgY29uc3QgcHVibGlzaGFibGVLZXkgPSBcInBrX2xpdmVfNTFIc0Uxc0JDTmNjYnpzVnp0N3phcTJ1djIwcGtyeVdsbEF6dlpnWmQ1QWh3Rkk5QTNxQkllT0p2SndRRjA4bERvTHBGcUxqd215QTc5d25QbllMc3ZLanQwMDlmMDBWcENXXCI7XG4gICAgZnVuY3Rpb24gZmV0Y2hMaWNlbmNlSW5mbygpIHtcbiAgICAgICAgcmV0dXJuIF9fYXdhaXRlcih0aGlzLCBhcmd1bWVudHMsIHZvaWQgMCwgZnVuY3Rpb24qIChiYXNlVXJsID0gXCJcIikge1xuICAgICAgICAgICAgY29uc3Qgcm9vdCA9IGAke2Jhc2VVcmx9L29wY3VhLWZvci1ub2RlLXJlZGA7XG4gICAgICAgICAgICBjb25zdCB1cmwgPSBgJHtyb290fS9saWNlbmNlSW5mb2A7XG4gICAgICAgICAgICBjb25zdCBkYXRhID0geWllbGQgZmV0Y2godXJsLCB7XG4gICAgICAgICAgICAgICAgbWV0aG9kOiBcIlBPU1RcIixcbiAgICAgICAgICAgICAgICBoZWFkZXJzOiB7IFwiQ29udGVudC1UeXBlXCI6IFwiYXBwbGljYXRpb24vanNvblwiIH0sXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGNvbnN0IHRvZGF5ID0gbmV3IERhdGUoKS50b0lTT1N0cmluZygpO1xuICAgICAgICAgICAgY29uc3QgYmFkTGljZW5jZSA9IHtcbiAgICAgICAgICAgICAgICBzdGF0dXM6IFwiRkFJTEVEXCIsXG4gICAgICAgICAgICAgICAgdHlwZTogXCJGUkVFV0FSRVwiLFxuICAgICAgICAgICAgICAgIGxpY2VuY2VJbmZvOiB7XG4gICAgICAgICAgICAgICAgICAgIGxpY2VuY2VJZDogXCIwMDAwMDAwMC0wMDAwLTAwMDAtMDAwMC0wMDAwMDAwMDAwMDBcIixcbiAgICAgICAgICAgICAgICAgICAgbGljZW5jZVR5cGU6IFwiPHVua25vd24+XCIsXG4gICAgICAgICAgICAgICAgICAgIGV4cGlyeURhdGU6IHRvZGF5LFxuICAgICAgICAgICAgICAgICAgICBvblByZW1pc2VTZXJ2ZXJIb3N0OiBcIlwiLFxuICAgICAgICAgICAgICAgICAgICBleHBpcmVkOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICB1c2VyQ29tcGFueTogXCJcIixcbiAgICAgICAgICAgICAgICAgICAgdXNlckVtYWlsOiBcIlwiLFxuICAgICAgICAgICAgICAgICAgICB1c2VyTmFtZTogXCJcIixcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIGlmIChkYXRhLnN0YXR1cyAhPT0gMjAwKSB7XG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2coXCJmZXRjaGluZyBmYWlsZWQgd2l0aCBlcnJvclwiLCBkYXRhLnN0YXR1cywgZGF0YS5zdGF0dXNUZXh0KTtcbiAgICAgICAgICAgICAgICByZXR1cm4gYmFkTGljZW5jZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IGpzb24gPSB5aWVsZCBkYXRhLmpzb24oKTtcbiAgICAgICAgICAgIHJldHVybiBqc29uO1xuICAgICAgICB9KTtcbiAgICB9XG4gICAgY29uc3QgZGVjbGFyZUxpY2VuY2VXaWRnZXQgPSAoKSA9PiB7XG4gICAgICAgICQud2lkZ2V0KFwic3RlcmZpdmUubGljZW5jZVdpZGdldFwiLCB7XG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgICAgYmFzZVVybDogXCJcIixcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBfY3JlYXRlKCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHRoYXQgPSB0aGlzO1xuICAgICAgICAgICAgICAgIGNvbnN0IGNvbnRhY3RMaW5rID0gYDxhIGhyZWY9XCJtYWlsdG86c3VwcG9ydEBzdGVyZml2ZS5jb21cIiBzdWJqZWN0PVwiQG9wY3VhL2Zvci1ub2RlLXJlZCBzdXBwb3J0IHJlcXVlc3RcIj5tYWlsdG86c3VwcG9ydEBzdGVyZml2ZS5jb208L2E+YDtcbiAgICAgICAgICAgICAgICBjb25zdCB3ZWJzaXRlTGluayA9IGA8YSBocmVmPVwiaHR0cHM6Ly93d3cuc3RlcmZpdmUuY29tL29wY3VhL2Zvci1ub2RlLXJlZFwiIHRhcmdldD3igJ1fYmxhbmvigJ0+U3RlcmZpdmUncyB3ZWJzaXRlIDwvYT5gO1xuICAgICAgICAgICAgICAgIGZldGNoTGljZW5jZUluZm8odGhhdC5iYXNlVXJsKVxuICAgICAgICAgICAgICAgICAgICAudGhlbigoanNvbikgPT4ge1xuICAgICAgICAgICAgICAgICAgICB2YXIgX2EsIF9iO1xuICAgICAgICAgICAgICAgICAgICBsZXQgaWNvbiA9IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgIGxldCBtc2cgPSBcIlwiO1xuICAgICAgICAgICAgICAgICAgICBsZXQgZGV0YWlscyA9IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGxpY2VuY2VUeXBlID0gTGljZW5jZVR5cGVbanNvbi50eXBlXTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RhdHVzID0gTGljZW5jZVN0YXR1c1tqc29uLnN0YXR1c107XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGVmZmVjdGl2ZUxpY2VuY2VUeXBlID0gZ2V0RWZmZWN0aXZlTGljZW5jZVR5cGUobGljZW5jZVR5cGUsIHN0YXR1cyk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGRheXNMZWZ0ID0gZ2V0RGF5c0xlZnQoKChfYSA9IGpzb24ubGljZW5jZUluZm8pID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5leHBpcnlEYXRlKSA/IG5ldyBEYXRlKGpzb24ubGljZW5jZUluZm8uZXhwaXJ5RGF0ZSkgOiB1bmRlZmluZWQpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBob3Vyc0xlZnQgPSBnZXRIb3Vyc0xlZnQoKChfYiA9IGpzb24ubGljZW5jZUluZm8pID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5leHBpcnlEYXRlKSA/IG5ldyBEYXRlKGpzb24ubGljZW5jZUluZm8uZXhwaXJ5RGF0ZSkgOiB1bmRlZmluZWQpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBlID0gZGF5c0xlZnQgPT0gMFxuICAgICAgICAgICAgICAgICAgICAgICAgPyBob3Vyc0xlZnQgPiAxMFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gXCJ0b2RheVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBgaW4gJHtob3Vyc0xlZnR9IGhvdXJzYFxuICAgICAgICAgICAgICAgICAgICAgICAgOiBkYXlzTGVmdCA9PSAxXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBcInRvbW9ycm93XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IGBpbiAke2RheXNMZWZ0fSBkYXlzYDtcbiAgICAgICAgICAgICAgICAgICAgc3dpdGNoIChzdGF0dXMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgTGljZW5jZVN0YXR1cy5BVVRIT1JJWkVEOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGljb24gPSBcImZhIGZhLWNoZWNrLWNpcmNsZVwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN3aXRjaCAoZWZmZWN0aXZlTGljZW5jZVR5cGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSBMaWNlbmNlVHlwZS5UUklBTDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbXNnID0gXCJUcmlhbCBsaWNlbmNlXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRhaWxzID0gYFRoZSBUcmlhbCB3aWxsIGV4cGlyZSAke2V9LlxcbkJ1eSBvbmxpbmUgYW5kIHZpc2l0ICR7d2Vic2l0ZUxpbmt9IHRvIGFjcXVpcmUgYSBsaWNlbnNlLmA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlIExpY2VuY2VUeXBlLlBST0ZFU1NJT05BTDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1zZyA9IGBZb3VyIGxpY2VuY2UgaXMgdmFsaWQuYDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChkYXlzTGVmdCA8IDkwICYmIGRheXNMZWZ0ID49IDApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtc2cgKz0gYFxcbkl0IHdpbGwgZXhwaXJlICR7ZX0uYDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGRldGFpbHMgPSBgJHt3ZWJzaXRlTGlua308YnI+JHtjb250YWN0TGlua31gO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV0YWlscyA9IGpzb24ubGljZW5jZUluZm8ubGljZW5jZVR5cGUgKyBcIiAtIFwiICsgKGpzb24ubGljZW5jZUluZm8ub25QcmVtaXNlU2VydmVySG9zdCB8fCBcIlwiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlIExpY2VuY2VUeXBlLkZSRUVXQVJFOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbXNnID0gXCJGcmVld2FyZSBsaWNlbmNlXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRhaWxzID0gYFRoaXMgaXMgYSBmcmVld2FyZSBsaWNlbmNlLCBhbmQgaGF2ZSBzb21lIGxpbWl0YXRpb25zLlxcbiR7d2Vic2l0ZUxpbmt9IGZvciBtb3JlIGluZm9ybWF0aW9uLmA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgICAgICBjYXNlIExpY2VuY2VTdGF0dXMuRVhQSVJFRDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uID0gXCJmYSBmYS1jYWxlbmRhci10aW1lXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3dpdGNoIChsaWNlbmNlVHlwZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlIExpY2VuY2VUeXBlLlRSSUFMOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbXNnID0gXCJGcmVld2FyZSA6IChUcmlhbCBsaWNlbmNlIGV4cGlyZWQpXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRhaWxzID0gYFlvdXIgdHJpYWwgbGljZW5zZSBoYXMgZXhwaXJlZC5cXG5QbGVhc2UgdmlzaXQgJHt3ZWJzaXRlTGlua30gdG8gYWNxdWlyZSBhIGxpY2Vuc2UuYDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlIExpY2VuY2VUeXBlLkZSRUVXQVJFOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbXNnID0gXCJGcmVld2FyZSBsaWNlbmNlIGV4cGlyZWRcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRldGFpbHMgPSBgWW91ciBmcmVld2FyZSBsaWNlbnNlIGhhcyBleHBpcmVkLlxcbiR7d2Vic2l0ZUxpbmt9IGZvciBtb3JlIGluZm9ybWF0aW9uLmA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSBMaWNlbmNlVHlwZS5QUk9GRVNTSU9OQUw6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtc2cgPSBcIllvdXIgbGljZW5jZSBoYXMgZXhwaXJlZCAtIEZyZWV3YXJlIG1vZGUgYWN0aXZhdGVkXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRhaWxzID0gYFlvdXIgbGljZW5zZSBoYXMgZXhwaXJlZC5cXG5QbGVhc2UgY29udGFjdCBvdXIgICR7Y29udGFjdExpbmt9IG9yIHZpc2l0IG91ciB3ZWJzaXRlIHRvIHJlbmV3IHlvdXIgbGljZW5zZSBhbmQgcmVnYWluIGFjY2VzcyB0byBvdXIgc2VydmljZXMuYDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgICAgICBjYXNlIExpY2VuY2VTdGF0dXMuRkFJTEVEOlxuICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uID0gXCJmYSBmYS1leGNsYW1hdGlvbi1jaXJjbGVcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtc2cgPSBcIllvdXIgbGljZW5zZSBpcyBjdXJyZW50bHkgaW52YWxpZC5cIjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRhaWxzID0gYFBsZWFzZSBjb250YWN0ICR7Y29udGFjdExpbmt9IG9yIHZpc2l0IG91ciB3ZWJzaXRlIHRvIHJlbmV3IHlvdXIgbGljZW5zZSBhbmQgcmVnYWluIGFjY2VzcyB0byBvdXIgc2VydmljZXMuzIBgO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC8qKiAqL1xuICAgICAgICAgICAgICAgICAgICAvLyB0aGlzLmVsZW1lbnQudGV4dChcIkxpY2VuY2UgXCIgKyBKU09OLnN0cmluZ2lmeShqc29uKSk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZWxlbWVudC5hZGRDbGFzcyhcImxpY2VuY2Utd2lkZ2V0XCIpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmVsZW1lbnQuYWRkQ2xhc3MoXCJsaWNlbmNlLXdpZGdldC1cIiArIHN0YXR1cyk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZWxlbWVudC5hcHBlbmQoJChcIjxzcGFuPlwiKS5hZGRDbGFzcyhcImxpY2VuY2Utd2lkZ2V0LWljb25cIikuYXBwZW5kKCQoXCI8aT5cIikuYWRkQ2xhc3MoaWNvbikpKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5lbGVtZW50LmFwcGVuZCgkKFwiPHNwYW4+XCIpLmFkZENsYXNzKFwibGljZW5jZS13aWRnZXQtbXNnXCIpLnRleHQobXNnKSk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZWxlbWVudC5hcHBlbmQoJChcIjxicj5cIikpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmVsZW1lbnQuYXBwZW5kKCQoXCI8c3Bhbj5cIikuYWRkQ2xhc3MoXCJsaWNlbmNlLXdpZGdldC1kZXRhaWxzXCIpLmFwcGVuZChkZXRhaWxzKSk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChzdGF0dXMgPT09IExpY2VuY2VTdGF0dXMuRVhQSVJFRCB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgc3RhdHVzID09PSBMaWNlbmNlU3RhdHVzLkZBSUxFRCB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgZWZmZWN0aXZlTGljZW5jZVR5cGUgPT09IExpY2VuY2VUeXBlLkZSRUVXQVJFIHx8XG4gICAgICAgICAgICAgICAgICAgICAgICBlZmZlY3RpdmVMaWNlbmNlVHlwZSA9PT0gTGljZW5jZVR5cGUuVFJJQUwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZWxlbWVudC5hcHBlbmQoJChcIjxicj5cIikpO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3Vic2NyaWJlQnV0dG9uID0gJChcIjxidXR0b24vPlwiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHN1YnNjcmliZUJ1dHRvbi5hdHRyKFwiaWRcIiwgXCJzdWJzY3JpYmUtYnV0dG9uXCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgc3Vic2NyaWJlQnV0dG9uLmF0dHIoXCJjbGFzc1wiLCBcImJ0biBidG4tcHJpbWFyeVwiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHN1YnNjcmliZUJ1dHRvbi5hdHRyKFwic3R5bGVcIiwgXCJtYXJnaW4tdG9wOiAyMHB4O1wiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHN1YnNjcmliZUJ1dHRvbi50ZXh0KFwiU3Vic2NyaWJlXCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5lbGVtZW50LmFwcGVuZChzdWJzY3JpYmVCdXR0b24pO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc2NyaXB0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcInNjcmlwdFwiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIFNldCBhdHRyaWJ1dGVzIGZvciB0aGUgc2NyaXB0IGVsZW1lbnRcbiAgICAgICAgICAgICAgICAgICAgICAgIHNjcmlwdC5zcmMgPSBcImh0dHBzOi8vanMuc3RyaXBlLmNvbS92My9wcmljaW5nLXRhYmxlLmpzXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICBzY3JpcHQuYXN5bmMgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gQXBwZW5kIHRoZSBzY3JpcHQgZWxlbWVudCB0byB0aGUgaGVhZCAob3IgYm9keSkgb2YgdGhlIGRvY3VtZW50XG4gICAgICAgICAgICAgICAgICAgICAgICAkKFwiaGVhZFwiKS5hcHBlbmQoc2NyaXB0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0cmlwZVByaWNpbmdUYWJsZSA9ICQoXCI8c3RyaXBlLXByaWNpbmctdGFibGUvPlwiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIFNldCBhdHRyaWJ1dGVzIGZvciB0aGUgZWxlbWVudFxuICAgICAgICAgICAgICAgICAgICAgICAgc3RyaXBlUHJpY2luZ1RhYmxlLmF0dHIoXCJwcmljaW5nLXRhYmxlLWlkXCIsIHByaWNpbmdUYWJsZUlkKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cmlwZVByaWNpbmdUYWJsZS5hdHRyKFwicHVibGlzaGFibGUta2V5XCIsIHB1Ymxpc2hhYmxlS2V5KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cmlwZVByaWNpbmdUYWJsZS5hdHRyKFwic3R5bGVcIiwgXCJoZWlnaHQ6IDEwMCU7bWF4LWhlaWdodDogMTAwJTtcIik7XG4gICAgICAgICAgICAgICAgICAgICAgICBzdHJpcGVQcmljaW5nVGFibGUuaGlkZSgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5lbGVtZW50LmFwcGVuZChzdHJpcGVQcmljaW5nVGFibGUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgc3Vic2NyaWJlQnV0dG9uLm9uKFwiY2xpY2tcIiwgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cmlwZVByaWNpbmdUYWJsZS5zaG93KCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Vic2NyaWJlQnV0dG9uLmhpZGUoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmVsZW1lbnQuYXR0cihcInN0eWxlXCIsIFwiaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAuY2F0Y2goKGVycikgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgfTtcblxuICAgIGNvbnN0IGluc3RhbGxGZWVkYmFja1dpZGdldCA9ICgpID0+IHtcbiAgICAgICAgLy8gcmV0dXJuO1xuICAgICAgICAvLyBkZWJ1Z2dlcjtcbiAgICAgICAgY29uc3QgdHJheUNvbnRlbnQgPSAkKFwiLnJlZC11aS10cmF5LWJvZHlcIik7XG4gICAgICAgIGNvbnNvbGUubG9nKFwiaW5zdGFsbEZlZWRiYWNrV2lkZ2V0IFwiLCB0cmF5Q29udGVudC5sZW5ndGgpO1xuICAgICAgICBpZiAodHJheUNvbnRlbnQubGVuZ3RoKSB7XG4gICAgICAgICAgICBjb25zb2xlLmxvZyhcImluc3RhbGxpbmcgaWZyYW1lXCIpO1xuICAgICAgICAgICAgLy8gQ3JlYXRlIHRoZSBpZnJhbWUgZWxlbWVudFxuICAgICAgICAgICAgY29uc3QgaWZyYW1lID0gJChcIjxpZnJhbWU+PC9pZnJhbWU+XCIsIHtcbiAgICAgICAgICAgICAgICBzcmM6IFwiL29wY3VhLWZvci1ub2RlLXJlZC9zdXBwb3J0LWZyYW1lLmh0bWxcIixcbiAgICAgICAgICAgICAgICBzY3JvbGxpbmc6IFwibm9cIixcbiAgICAgICAgICAgICAgICBzdHlsZTogXCJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O292ZXJmbG93OmhpZGRlbjtib3JkZXI6M3B4XCIsXG4gICAgICAgICAgICAgICAgYWxsb3d0cmFuc3BhcmVuY3k6IFwidHJ1ZVwiLFxuICAgICAgICAgICAgICAgIHdpZHRoOiBcIjE4MHB4XCIsXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBcIjMwcHhcIixcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgLy8gQXBwZW5kIHRoZSBpZnJhbWUgdG8gdGhlIGZlZWRiYWNrIGVsZW1lbnRcbiAgICAgICAgICAgIHRyYXlDb250ZW50LmFwcGVuZChpZnJhbWUpO1xuICAgICAgICAgICAgLy8gUG9zaXRpb24gdGhlIGZlZWRiYWNrIGVsZW1lbnQgYXQgdGhlIGJvdHRvbSByaWdodCBvZiB0aGUgdHJheSBjb250ZW50XG4gICAgICAgICAgICBpZnJhbWUuY3NzKHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogXCJhYnNvbHV0ZVwiLFxuICAgICAgICAgICAgICAgIHJpZ2h0OiBcIjIwcHhcIixcbiAgICAgICAgICAgICAgICBib3R0b206IFwiMTZweFwiLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgZGVjbGFyZUxpY2VuY2VXaWRnZXQoKTtcbiAgICBmdW5jdGlvbiBpc1ZhbGlkT1BDX1VBX1VSSShzdHIpIHtcbiAgICAgICAgbGV0IHVybDtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHVybCA9IG5ldyBVUkwoc3RyKTtcbiAgICAgICAgfVxuICAgICAgICBjYXRjaCAoXykge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB1cmwucHJvdG9jb2wgPT09IFwib3BjLnRjcDpcIjtcbiAgICB9XG4gICAgY29uc3QgZGVmYXVsdFN1YnNjcmlwdGlvblBhcmFtZXRlcnMgPSB7XG4gICAgICAgIHB1Ymxpc2hpbmdFbmFibGVkOiB0cnVlLFxuICAgICAgICByZXF1ZXN0ZWRMaWZldGltZUNvdW50OiAxMDAwLFxuICAgICAgICByZXF1ZXN0ZWRNYXhLZWVwQWxpdmVDb3VudDogMTAsIC8vIGV2ZXJ5IDEwIHNlY29uZHNcbiAgICAgICAgcmVxdWVzdGVkUHVibGlzaGluZ0ludGVydmFsOiAxMDAwLFxuICAgICAgICBtYXhOb3RpZmljYXRpb25zUGVyUHVibGlzaDogMCxcbiAgICAgICAgcHJpb3JpdHk6IDEwMCxcbiAgICB9O1xuICAgIFJFRC5ub2Rlcy5yZWdpc3RlclR5cGUoXCJPcGNVYS1FbmRwb2ludDJcIiwge1xuICAgICAgICBjYXRlZ29yeTogXCJjb25maWdcIixcbiAgICAgICAgcGFsZXR0ZUxhYmVsOiBcIm9wY3VhIGVuZHBvaW50XCIsXG4gICAgICAgIGRlZmF1bHRzOiB7XG4gICAgICAgICAgICBuYW1lOiB7IHZhbHVlOiBcIlwiIH0sXG4gICAgICAgICAgICBlbmRwb2ludDoge1xuICAgICAgICAgICAgICAgIHZhbHVlOiBcIm9wYy50Y3A6Ly9vcGN1YWRlbW8uc3RlcmZpdmUuY29tOjI2NTQzL1VBL1NhbXBsZVNlcnZlclwiLFxuICAgICAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIHZhbGlkYXRlOiBpc1ZhbGlkT1BDX1VBX1VSSSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAvLyBTZWN1cml0eSBNb2RlXG4gICAgICAgICAgICBzZWN1cml0eU1vZGU6IHsgdmFsdWU6IFwiTm9uZVwiIH0sXG4gICAgICAgICAgICBzZWN1cml0eVBvbGljeToge1xuICAgICAgICAgICAgICAgIHZhbHVlOiBcIk5vbmVcIixcbiAgICAgICAgICAgICAgICB2YWxpZGF0ZTogKHZhbHVlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmICghdmFsdWUpXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgdXNlcklkZW50aXR5VHlwZTogeyB2YWx1ZTogXCJBbm9ueW1vdXNcIiB9LFxuICAgICAgICAgICAgcGtpTmFtZTogeyB2YWx1ZTogXCJcIiwgdmFsaWRhdGU6ICh2YWx1ZSkgPT4gKCF2YWx1ZSB8fCB2YWx1ZS5tYXRjaCgvWzAtOWEtekEtWl0qLykgPyB0cnVlIDogZmFsc2UpIH0sXG4gICAgICAgICAgICAvLyB0byB1c2Ugd2hlbiB1c2VySWRlbnRpdHlUeXBlIGlzIFVzZXJOYW1lXG4gICAgICAgICAgICAvLyBjcmVkZW50aWFsczoge1xuICAgICAgICAgICAgLy8gICAgIHVzZXJOYW1lOiB7IHZhbHVlOiBcIlwiLCB0eXBlOiBcInRleHRcIiB9LFxuICAgICAgICAgICAgLy8gICAgIHBhc3N3b3JkOiB7IHZhbHVlOiBcIlwiLCB0eXBlOiBcInBhc3N3b3JkXCIgfSxcbiAgICAgICAgICAgIC8vICAgICAvLyB0byB1c2Ugd2hlbiB1c2VySWRlbnRpdHlUeXBlIGlzIENlcnRpZmljYXRlXG4gICAgICAgICAgICAvLyAgICAgdXNlckNlcnRpZmljYXRlOiB7IHZhbHVicm93c2VQYXRoZTogXCJcIiwgdHlwZTogXCJ0ZXh0XCIgfSxcbiAgICAgICAgICAgIC8vICAgICB1c2VyUHJpdmF0ZWtleTogeyB2YWx1ZTogXCJcIiAsIHR5cGU6IFwicGFzc3dvcmRcIn0sXG4gICAgICAgICAgICAvLyB9IGFzIGFueSAvKiBjaXJjdW12ZW50IGEgYnVnIGluIG5vZGUtcmVkICovLFxuICAgICAgICAgICAgLy8gdXNlcm5hbWVcbiAgICAgICAgICAgIHVzZVRyYW5zcG9ydDogeyB2YWx1ZTogZmFsc2UsIHJlcXVpcmVkOiBmYWxzZSB9LFxuICAgICAgICAgICAgbWF4Q2h1bmtDb3VudDogeyB2YWx1ZTogMSwgcmVxdWlyZWQ6IGZhbHNlIH0sXG4gICAgICAgICAgICBtYXhNZXNzYWdlU2l6ZTogeyB2YWx1ZTogODE5MiwgcmVxdWlyZWQ6IGZhbHNlIH0sIC8vIHNob3VsZCBiZSBhdCBsZWFzdCA4MTkyXG4gICAgICAgICAgICByZWNlaXZlQnVmZmVyU2l6ZTogeyB2YWx1ZTogODE5MiwgcmVxdWlyZWQ6IGZhbHNlIH0sXG4gICAgICAgICAgICBzZW5kQnVmZmVyU2l6ZTogeyB2YWx1ZTogODE5MiwgcmVxdWlyZWQ6IGZhbHNlIH0sXG4gICAgICAgICAgICBzdWJzY3JpcHRpb25zOiB7XG4gICAgICAgICAgICAgICAgdmFsdWU6IFtcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwiczFcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwiRGVmYXVsdCBTdWJzY3JpcHRpb25cIixcbiAgICAgICAgICAgICAgICAgICAgICAgIGlzRGVmYXVsdDogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtZXRlcnM6IE9iamVjdC5hc3NpZ24oe30sIGRlZmF1bHRTdWJzY3JpcHRpb25QYXJhbWV0ZXJzKSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwiczJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwiU2xvdyBTdWJzY3JpcHRpb25cIixcbiAgICAgICAgICAgICAgICAgICAgICAgIGlzRGVmYXVsdDogZmFsc2UsXG4gICAgICAgICAgICAgICAgICAgICAgICBwYXJhbWV0ZXJzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHVibGlzaGluZ0VuYWJsZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWVzdGVkTGlmZXRpbWVDb3VudDogMTAwLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVlc3RlZE1heEtlZXBBbGl2ZUNvdW50OiAzLCAvLyBldmVyeSAxNSBzZWNvbmRzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWVzdGVkUHVibGlzaGluZ0ludGVydmFsOiA1MDAwLCAvL1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heE5vdGlmaWNhdGlvbnNQZXJQdWJsaXNoOiAxMDAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJpb3JpdHk6IDEwLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwiczNcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwiRmFzdCBTdWJzY3JpcHRpb25cIixcbiAgICAgICAgICAgICAgICAgICAgICAgIGlzRGVmYXVsdDogZmFsc2UsXG4gICAgICAgICAgICAgICAgICAgICAgICBwYXJhbWV0ZXJzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHVibGlzaGluZ0VuYWJsZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWVzdGVkTGlmZXRpbWVDb3VudDogNDAwMCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1ZXN0ZWRNYXhLZWVwQWxpdmVDb3VudDogNTAsIC8vIGV2ZXJ5IDEyLjUgc2Vjb25kc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVlc3RlZFB1Ymxpc2hpbmdJbnRlcnZhbDogMjUwLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heE5vdGlmaWNhdGlvbnNQZXJQdWJsaXNoOiAxMDAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJpb3JpdHk6IDIwMCxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgbmFtZXNwYWNlQWxpYXNlczoge1xuICAgICAgICAgICAgICAgIHZhbHVlOiBbXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFsaWFzOiBcInVhXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lc3BhY2VVcmk6IFwiaHR0cDovL29wY2ZvdW5kYXRpb24ub3JnL1VBL1wiLFxuICAgICAgICAgICAgICAgICAgICAgICAgaXNXZWxsS25vd246IHRydWUsXG4gICAgICAgICAgICAgICAgICAgICAgICBpc0RlZmF1bHQ6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFsaWFzOiBcImRpXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lc3BhY2VVcmk6IFwiaHR0cDovL29wY2ZvdW5kYXRpb24ub3JnL0RJL1wiLFxuICAgICAgICAgICAgICAgICAgICAgICAgaXNXZWxsS25vd246IHRydWUsXG4gICAgICAgICAgICAgICAgICAgICAgICBpc0RlZmF1bHQ6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBjcmVkZW50aWFsczoge1xuICAgICAgICAgICAgdXNlck5hbWU6IHsgdHlwZTogXCJ0ZXh0XCIgfSxcbiAgICAgICAgICAgIHBhc3N3b3JkOiB7IHR5cGU6IFwicGFzc3dvcmRcIiB9LFxuICAgICAgICAgICAgdXNlckNlcnRpZmljYXRlOiB7IHR5cGU6IFwidGV4dFwiIH0sXG4gICAgICAgICAgICB1c2VyUHJpdmF0ZWtleTogeyB0eXBlOiBcInBhc3N3b3JkXCIgfSxcbiAgICAgICAgfSxcbiAgICAgICAgbGFiZWw6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLm5hbWUgfHwgdGhpcy5lbmRwb2ludCB8fCBcImludmFsaWQgZW5kcG9pbnRcIjtcbiAgICAgICAgfSxcbiAgICAgICAgb25lZGl0c2F2ZSgpIHtcbiAgICAgICAgICAgIGNvbnN0IF9zZWN1cml0eVBvbGljeSA9ICQoXCIjbm9kZS1jb25maWctaW5wdXQtc2VjdXJpdHlQb2xpY3lcIik7XG4gICAgICAgICAgICBjb25zdCBfc2VjdXJpdHlNb2RlID0gJChcIiNub2RlLWNvbmZpZy1pbnB1dC1zZWN1cml0eU1vZGVcIik7XG4gICAgICAgICAgICBpZiAoX3NlY3VyaXR5UG9saWN5LnZhbCgpID09PSBcIk5vbmVcIikge1xuICAgICAgICAgICAgICAgIF9zZWN1cml0eU1vZGUudGV4dChcIk5vbmVcIik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyAoKCgoKCgoKCgoIHJldHJpZXZlIHN1YnNjcmlwdGlvbiBkYXRhICkpKSkpKSkpKSlcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBjb25zdCBzdWJzY3JpcHRpb25JdGVtcyA9ICQoXCIjc3Vic2NyaXB0aW9ucy1jb250YWluZXJcIikuZWRpdGFibGVMaXN0KFwiaXRlbXNcIik7XG4gICAgICAgICAgICAgICAgY29uc3QgcyA9IFtdO1xuICAgICAgICAgICAgICAgIGNvbnN0IG4gPSAoeCkgPT4geDtcbiAgICAgICAgICAgICAgICBzdWJzY3JpcHRpb25JdGVtcy5lYWNoKGZ1bmN0aW9uIChpbmRleCwgaXRlbSkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBlID0gJCh0aGlzKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgYSA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBcInNcIiArIGluZGV4LFxuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogZS5maW5kKFwiLmlucHV0LW5hbWVcIikudmFsKCksXG4gICAgICAgICAgICAgICAgICAgICAgICBpc0RlZmF1bHQ6ICEhZS5maW5kKFwiLmlucHV0LWlzRGVmYXVsdFwiKS52YWwoKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtZXRlcnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwdWJsaXNoaW5nRW5hYmxlZDogISFlLmZpbmQoXCIuaW5wdXQtcHVibGlzaGluZ0VuYWJsZWRcIikuaXMoXCI6Y2hlY2tlZFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1ZXN0ZWRMaWZldGltZUNvdW50OiBuKGUuZmluZChcIi5pbnB1dC1yZXF1ZXN0ZWRMaWZldGltZUNvdW50XCIpLnZhbCgpKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1ZXN0ZWRNYXhLZWVwQWxpdmVDb3VudDogbihlLmZpbmQoXCIuaW5wdXQtcmVxdWVzdGVkTWF4S2VlcEFsaXZlQ291bnRcIikudmFsKCkpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVlc3RlZFB1Ymxpc2hpbmdJbnRlcnZhbDogbihlLmZpbmQoXCIuaW5wdXQtcmVxdWVzdGVkUHVibGlzaGluZ0ludGVydmFsXCIpLnZhbCgpKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXhOb3RpZmljYXRpb25zUGVyUHVibGlzaDogbihlLmZpbmQoXCIuaW5wdXQtbWF4Tm90aWZpY2F0aW9uc1BlclB1Ymxpc2hcIikudmFsKCkpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByaW9yaXR5OiBuKGUuZmluZChcIi5pbnB1dC1wcmlvcml0eVwiKS52YWwoKSksXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICAvLyBmb3JjZSB0byBiZSB0cnVlXG4gICAgICAgICAgICAgICAgICAgIGEucGFyYW1ldGVycy5wdWJsaXNoaW5nRW5hYmxlZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIGlmIChhLmlzRGVmYXVsdCAmJiBhLmlkID09PSBcInMwXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIG5vcm1hbGl6ZSBkZWZhdWx0IHN1YnNjcmlwdGlvbiBuYW1lXG4gICAgICAgICAgICAgICAgICAgICAgICBhLm5hbWUgPSBcIkRlZmF1bHQgU3Vic2NyaXB0aW9uXCI7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgcy5wdXNoKGEpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIHRoaXMuc3Vic2NyaXB0aW9ucyA9IHM7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyAoKCgoKCgoKCgoIHJldHJpZXZlIG5hbWVzcGFjZSBhbGlhcyBkYXRhICkpKSkpKSkpKVxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIC8vIGFsaWFzZXNcbiAgICAgICAgICAgICAgICBjb25zdCBhbGlhc0l0ZW1zID0gJChcIiNlZGl0YWJsZS1saXN0LWFsaWFzZXMtY29udGFpbmVyXCIpLmVkaXRhYmxlTGlzdChcIml0ZW1zXCIpO1xuICAgICAgICAgICAgICAgIGNvbnN0IHRtcCA9IFtdO1xuICAgICAgICAgICAgICAgIGFsaWFzSXRlbXMuZWFjaChmdW5jdGlvbiAoaW5kZXgsIGl0ZW0pIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZSA9ICQodGhpcyk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGEgPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBpZDogXCJzXCIgKyBpbmRleCxcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWVzcGFjZVVyaTogZS5maW5kKFwiLm5vZGUtaW5wdXQtYWxpYXMtbmFtZXNwYWNlLXVyaVwiKS52YWwoKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGFsaWFzOiBlLmZpbmQoXCIubm9kZS1pbnB1dC1hbGlhcy1hbGlhc1wiKS52YWwoKSxcbiAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgdG1wLnB1c2goYSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgdGhpcy5uYW1lc3BhY2VBbGlhc2VzID0gdG1wO1xuICAgICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBvbmVkaXRwcmVwYXJlKCkge1xuICAgICAgICAgICAgY29uc3Qgbm9kZSA9IHRoaXM7XG4gICAgICAgICAgICBpbnN0YWxsRmVlZGJhY2tXaWRnZXQoKTtcbiAgICAgICAgICAgIGNvbnN0IHRhYnMgPSBSRUQudGFicy5jcmVhdGUoe1xuICAgICAgICAgICAgICAgIGlkOiBcIm5vZGUtY29uZmlnLWVuZHBvaW50LXRhYnNcIixcbiAgICAgICAgICAgICAgICBvbmNoYW5nZTogZnVuY3Rpb24gKHRhYikge1xuICAgICAgICAgICAgICAgICAgICAkKFwiI25vZGUtY29uZmlnLWVuZHBvaW50LXRhYnMtY29udGVudFwiKS5jaGlsZHJlbigpLmhpZGUoKTtcbiAgICAgICAgICAgICAgICAgICAgJChcIiNcIiArIHRhYi5pZCkuc2hvdygpO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHRhYnMuYWRkVGFiKHtcbiAgICAgICAgICAgICAgICBpZDogXCJlbmRwb2ludC10YWItY29ubmVjdGlvblwiLFxuICAgICAgICAgICAgICAgIGxhYmVsOiBcIkNvbm5lY3Rpb25cIixcbiAgICAgICAgICAgIH0sIDApO1xuICAgICAgICAgICAgdGFicy5hZGRUYWIoe1xuICAgICAgICAgICAgICAgIGlkOiBcImVuZHBvaW50LXRhYi1zdWJzY3JpcHRpb25zXCIsXG4gICAgICAgICAgICAgICAgbGFiZWw6IFwiU3Vic2NyaXB0aW9uc1wiLFxuICAgICAgICAgICAgfSwgMSk7XG4gICAgICAgICAgICB0YWJzLmFkZFRhYih7XG4gICAgICAgICAgICAgICAgaWQ6IFwiZW5kcG9pbnQtdGFiLW5hbWVzcGFjZS1hbGlhc2VzXCIsXG4gICAgICAgICAgICAgICAgbGFiZWw6IFwiTmFtZXNwYWNlIEFsaWFzZXNcIixcbiAgICAgICAgICAgIH0sIDIpO1xuICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgdGFicy5yZXNpemUoKTtcbiAgICAgICAgICAgIH0sIDApO1xuICAgICAgICAgICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgICAgIC8vIGhhbmRsZSBTZWN1cml0eSBjb250cm9sc1xuICAgICAgICAgICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBjb25zdCB1cGRhdGVTZWN1cml0eUNvbnRyb2wgPSAoc2VjdXJpdHlNb2RlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHN3aXRjaCAoc2VjdXJpdHlNb2RlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjYXNlIG51bGw6XG4gICAgICAgICAgICAgICAgICAgICAgICBjYXNlIHVuZGVmaW5lZDpcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgXCJcIjpcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgXCJOb25lXCI6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJChcIi5zZWN0aW9uLXNlY3VyaXR5UG9saWN5XCIpLmhpZGUoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgXCJTaWduXCI6XG4gICAgICAgICAgICAgICAgICAgICAgICBjYXNlIFwiU2lnbkFuZEVuY3J5cHRcIjpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNwID0gJChcIi5zZWN0aW9uLXNlY3VyaXR5UG9saWN5XCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoc3AudmFsKCkgPT09IFwiTm9uZVwiIHx8IHNwLnZhbCgpID09PSBcIlwiKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcC52YWwoXCJCYXNpYzI1NlNoYTI1NlwiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKFwiLnNlY3Rpb24tc2VjdXJpdHlQb2xpY3lcIikuc2hvdygpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coXCJpbnZhbGlkIHNlY3VyaXR5TW9kZSBcIiArIHNlY3VyaXR5TW9kZSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIHVwZGF0ZVNlY3VyaXR5Q29udHJvbChub2RlLnNlY3VyaXR5TW9kZSk7XG4gICAgICAgICAgICAgICAgY29uc3QgX3NlY3VyaXR5TW9kZSA9ICQoXCIjbm9kZS1jb25maWctaW5wdXQtc2VjdXJpdHlNb2RlXCIpO1xuICAgICAgICAgICAgICAgIF9zZWN1cml0eU1vZGUub24oXCJjaGFuZ2VcIiwgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBuZXdTZWN1cml0eU1vZGUgPSBfc2VjdXJpdHlNb2RlLnZhbCgpO1xuICAgICAgICAgICAgICAgICAgICB1cGRhdGVTZWN1cml0eUNvbnRyb2wobmV3U2VjdXJpdHlNb2RlKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IGxpY2VuY2VXaWRnZXQgPSAkKFwiI2xpY2VuY2VXaWRnZXRcIik7XG4gICAgICAgICAgICBsaWNlbmNlV2lkZ2V0LmxpY2VuY2VXaWRnZXQoe1xuICAgICAgICAgICAgICAgIGJhc2VVcmw6IFwiXCIsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgICAgICAvLyBoYW5kbGUgdGhlIFVzZXIgSWRlbnRpdHkgQ29udHJvbHNcbiAgICAgICAgICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgY29uc3QgYXV0aFJvdyA9ICQoXCIuc2VjdGlvbi11c2VySWRlbnRpdHlUeXBlLVVzZXJOYW1lXCIpO1xuICAgICAgICAgICAgICAgIGNvbnN0IGNlcnRSb3cgPSAkKFwiLnNlY3Rpb24tdXNlcklkZW50aXR5VHlwZS1DZXJ0aWZpY2F0ZVwiKTtcbiAgICAgICAgICAgICAgICBjb25zdCB1cGRhdGVJZGVudGl0eUNvbnRyb2xzID0gKHVzZXJJZGVudGl0eVR5cGUpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdXNlcklkZW50aXR5VHlwZSA9IHVzZXJJZGVudGl0eVR5cGUgfHwgXCJBbm9ueW1vdXNcIjtcbiAgICAgICAgICAgICAgICAgICAgc3dpdGNoICh1c2VySWRlbnRpdHlUeXBlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjYXNlIFwiQW5vbnltb3VzXCI6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJChcIiNub2RlLWNvbmZpZy1pbnB1dC11c2VyTmFtZVwiKS52YWwoXCJcIik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJChcIiNub2RlLWNvbmZpZy1pbnB1dC1wYXNzd29yZFwiKS52YWwoXCJcIik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYXV0aFJvdy5oaWRlKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2VydFJvdy5oaWRlKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgICAgICBjYXNlIFwiVXNlck5hbWVcIjpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdXRoUm93LnNob3coKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjZXJ0Um93LmhpZGUoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgXCJDZXJ0aWZpY2F0ZVwiOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoXCIjbm9kZS1jb25maWctaW5wdXQtdXNlck5hbWVcIikudmFsKFwiXCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoXCIjbm9kZS1jb25maWctaW5wdXQtcGFzc3dvcmRcIikudmFsKFwiXCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNlcnRSb3cuc2hvdygpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF1dGhSb3cuaGlkZSgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhcImludmFsaWQgdXNlcklkZW50aXR5VHlwZSBcIiArIHVzZXJJZGVudGl0eVR5cGUpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICB1cGRhdGVJZGVudGl0eUNvbnRyb2xzKG5vZGUudXNlcklkZW50aXR5VHlwZSk7XG4gICAgICAgICAgICAgICAgY29uc3QgX3VzZXJJZGVudGl0eVR5cGUgPSAkKFwiI25vZGUtY29uZmlnLWlucHV0LXVzZXJJZGVudGl0eVR5cGVcIik7XG4gICAgICAgICAgICAgICAgX3VzZXJJZGVudGl0eVR5cGUub24oXCJjaGFuZ2VcIiwgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBuZXdJZGVudGl0eVR5cGUgPSBfdXNlcklkZW50aXR5VHlwZS52YWwoKTtcbiAgICAgICAgICAgICAgICAgICAgdXBkYXRlSWRlbnRpdHlDb250cm9scyhuZXdJZGVudGl0eVR5cGUpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgICAgIC8vIGhhbmRsZSBhZHZhbmNlZCBjb250cm9sc1xuICAgICAgICAgICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAkKFwiI3NlY3Rpb24tQWR2YW5jZWRcIikuaGlkZSgpO1xuICAgICAgICAgICAgICAgICQoXCIjdG9nZ2xlQWR2YW5jZWRTZWN0aW9uXCIpLnByb3AoXCJjaGVja2VkXCIsIGZhbHNlKTtcbiAgICAgICAgICAgICAgICAkKFwiI3RvZ2dsZUFkdmFuY2VkU2VjdGlvblwiKS5vbihcImNoYW5nZVwiLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmICgkKHRoaXMpLnByb3AoXCJjaGVja2VkXCIpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBJZiB0aGUgY2hlY2tib3ggaXMgY2hlY2tlZCwgc2hvdyB0aGUgZGl2XG4gICAgICAgICAgICAgICAgICAgICAgICAkKFwiI3NlY3Rpb24tQWR2YW5jZWRcIikuc2hvdygpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gT3RoZXJ3aXNlLCBoaWRlIGl0XG4gICAgICAgICAgICAgICAgICAgICAgICAkKFwiI3NlY3Rpb24tQWR2YW5jZWRcIikuaGlkZSgpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCB1c2VUcmFuc3BvcnRTZXR0aW5nID0gJChcIiNub2RlLWNvbmZpZy1pbnB1dC11c2VUcmFuc3BvcnRcIikucHJvcChcImNoZWNrZWRcIik7XG4gICAgICAgICAgICBpZiAodXNlVHJhbnNwb3J0U2V0dGluZykge1xuICAgICAgICAgICAgICAgICQoXCIjc2VjdGlvbi1UcmFuc3BvcnRTZXR0aW5nc1wiKS5zaG93KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAkKFwiI3NlY3Rpb24tVHJhbnNwb3J0U2V0dGluZ3NcIikuaGlkZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJChcIiNub2RlLWNvbmZpZy1pbnB1dC11c2VUcmFuc3BvcnRcIikub24oXCJjaGFuZ2VcIiwgZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgIGlmICgkKHRoaXMpLnByb3AoXCJjaGVja2VkXCIpKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIElmIHRoZSBjaGVja2JveCBpcyBjaGVja2VkLCBzaG93IHRoZSBkaXZcbiAgICAgICAgICAgICAgICAgICAgJChcIiNzZWN0aW9uLVRyYW5zcG9ydFNldHRpbmdzXCIpLnNob3coKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIE90aGVyd2lzZSwgaGlkZSBpdFxuICAgICAgICAgICAgICAgICAgICAkKFwiI3NlY3Rpb24tVHJhbnNwb3J0U2V0dGluZ3NcIikuaGlkZSgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgICAgIC8vIGNoZWNrQ2VydGlmaWNhdGVcbiAgICAgICAgICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgJChcIiNjaGVja0NlcnRpZmljYXRlXCIpLm9uKFwiY2xpY2tcIiwgKCkgPT4gX19hd2FpdGVyKHRoaXMsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBkYXRhID0geWllbGQgZmV0Y2goXCIvb3BjdWEtZm9yLW5vZGUtcmVkL2NsaWVudF9jZXJ0aWZpY2F0ZS5qc29uXCIpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBpbmZvID0geWllbGQgZGF0YS5qc29uKCk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHQgPSBKU09OLnN0cmluZ2lmeShpbmZvLCBudWxsLCBcIiBcIik7XG4gICAgICAgICAgICAgICAgICAgIGFsZXJ0KHQpO1xuICAgICAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgICAgICAvLyBoYW5kbGUgY29uZmlnIGJ1dHRvblxuICAgICAgICAgICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgICAgICQoXCIjZ290by1jb25maWdcIikub24oXCJjbGlja1wiLCAoKSA9PiBfX2F3YWl0ZXIodGhpcywgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKiAoKSB7XG4gICAgICAgICAgICAgICAgd2luZG93Lm9wZW4oXCIvb3BjdWEtZm9yLW5vZGUtcmVkL2NvbmZpZ1wiLCBcIl9ibGFua1wiKTtcbiAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgIGZ1bmN0aW9uIGV4dHJhY3RFbmRwb2ludERhdGEoKSB7XG4gICAgICAgICAgICAgICAgdmFyIF9hO1xuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgIGlkOiBub2RlLmlkLFxuICAgICAgICAgICAgICAgICAgICBlbmRwb2ludDogJChcIiNub2RlLWNvbmZpZy1pbnB1dC1lbmRwb2ludFwiKS52YWwoKSxcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogJChcIiNub2RlLWNvbmZpZy1pbnB1dC1uYW1lXCIpLnZhbCgpLFxuICAgICAgICAgICAgICAgICAgICBwa2lOYW1lOiAoX2EgPSAkKFwiI25vZGUtY29uZmlnLWlucHV0LXBraU5hbWVcIikpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS52YWwoKSxcbiAgICAgICAgICAgICAgICAgICAgc2VjdXJpdHlNb2RlOiAkKFwiI25vZGUtY29uZmlnLWlucHV0LXNlY3VyaXR5TW9kZVwiKS52YWwoKSxcbiAgICAgICAgICAgICAgICAgICAgc2VjdXJpdHlQb2xpY3k6ICQoXCIjbm9kZS1jb25maWctaW5wdXQtc2VjdXJpdHlQb2xpY3lcIikudmFsKCksXG4gICAgICAgICAgICAgICAgICAgIHVzZXJJZGVudGl0eVR5cGU6ICQoXCIjbm9kZS1jb25maWctaW5wdXQtdXNlcklkZW50aXR5VHlwZVwiKS52YWwoKSxcbiAgICAgICAgICAgICAgICAgICAgdXNlck5hbWU6ICQoXCIjbm9kZS1jb25maWctaW5wdXQtdXNlck5hbWVcIikudmFsKCksXG4gICAgICAgICAgICAgICAgICAgIHBhc3N3b3JkOiAkKFwiI25vZGUtY29uZmlnLWlucHV0LXBhc3N3b3JkXCIpLnZhbCgpLFxuICAgICAgICAgICAgICAgICAgICB1c2VyQ2VydGlmaWNhdGU6ICQoXCIjbm9kZS1jb25maWctaW5wdXQtdXNlckNlcnRpZmljYXRlXCIpLnZhbCgpLFxuICAgICAgICAgICAgICAgICAgICB1c2VyUHJpdmF0ZWtleTogJChcIiNub2RlLWNvbmZpZy1pbnB1dC11c2VyUHJpdmF0ZWtleVwiKS52YWwoKSxcbiAgICAgICAgICAgICAgICAgICAgLy8vIG5vdCB0ZXN0ZWQgeWV0IC4uLjpcbiAgICAgICAgICAgICAgICAgICAgY2VydGlmaWNhdGU6ICQoXCIjbm9kZS1pbnB1dC1jZXJ0aWZpY2F0ZVwiKS52YWwoKSxcbiAgICAgICAgICAgICAgICAgICAgdXNlVHJhbnNwb3J0OiAkKFwiI25vZGUtaW5wdXQtdXNlVHJhbnNwb3J0XCIpLnByb3AoXCJjaGVja2VkXCIpLFxuICAgICAgICAgICAgICAgICAgICBtYXhDaHVua0NvdW50OiAkKFwiI25vZGUtaW5wdXQtbWF4Q2h1bmtDb3VudFwiKS52YWwoKSxcbiAgICAgICAgICAgICAgICAgICAgbWF4TWVzc2FnZVNpemU6ICQoXCIjbm9kZS1pbnB1dC1tYXhNZXNzYWdlU2l6ZVwiKS52YWwoKSxcbiAgICAgICAgICAgICAgICAgICAgcmVjZWl2ZUJ1ZmZlclNpemU6ICQoXCIjbm9kZS1pbnB1dC1yZWNlaXZlQnVmZmVyU2l6ZVwiKS52YWwoKSxcbiAgICAgICAgICAgICAgICAgICAgc2VuZEJ1ZmZlclNpemU6ICQoXCIjbm9kZS1pbnB1dC1zZW5kQnVmZmVyU2l6ZVwiKS52YWwoKSxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgICAgIC8vIGhhbmRsZSB0aGUgVGVzdCBidXR0b25cbiAgICAgICAgICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbWFuYWdlQVBJQ2FsbChcImNvbm5lY3Rpb25cIiwgJChcIiN0ZXN0LWNvbm5lY3Rpb25cIiksICgpID0+ICh7XG4gICAgICAgICAgICAgICAgICAgIHVybDogXCIvb3BjdWEtZm9yLW5vZGUtcmVkL3Rlc3QtY29ubmVjdGlvblwiLFxuICAgICAgICAgICAgICAgICAgICBib2R5OiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBlbmRwb2ludE5vZGU6IGV4dHJhY3RFbmRwb2ludERhdGEoKSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9KSwgKCkgPT4geyB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgICAgICAvLyAgSW5zdGFsbCBzdWJzY3JpcHRpb25zIExpc3QgbWFuYWdlbWVudFxuICAgICAgICAgICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBjb25zdCByZXNpemVUb3BpY3MgPSAodG9waWMsIGluZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHZhciBuZXdXaWR0aCA9IHRvcGljLndpZHRoKCkgfHwgMTAwO1xuICAgICAgICAgICAgICAgICAgICB0b3BpYy5maW5kKFwibGFiZWxcIikudHlwZWRJbnB1dChcIndpZHRoXCIsIG5ld1dpZHRoIC0gMTUpO1xuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgY29uc3Qgc3Vic2NyaXB0aW9uTGlzdCA9ICQoXCIjc3Vic2NyaXB0aW9ucy1jb250YWluZXJcIilcbiAgICAgICAgICAgICAgICAgICAgLmNzcyh7IFwibWluLWhlaWdodFwiOiBcIjE1MHB4XCIsIFwibWluLXdpZHRoXCI6IFwiMjYwcHhcIiB9KVxuICAgICAgICAgICAgICAgICAgICAuZWRpdGFibGVMaXN0KHtcbiAgICAgICAgICAgICAgICAgICAgYWRkSXRlbTogKGNvbnRhaW5lciwgaW5kZXgsIGRhdGEpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IF9kYXRhID0gZGF0YTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGVsZW1lbnQgPSAkKFwiI3N1YnNjcmlwdGlvbi10ZW1wbGF0ZVwiKS5jbG9uZSgpLmFwcGVuZFRvKGNvbnRhaW5lcik7XG4gICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50LnJlbW92ZUF0dHIoXCJpZFwiKS5yZW1vdmVDbGFzcyhcImhpZGVcIikucmVtb3ZlQ2xhc3MoXCJ0ZW1wbGF0ZVwiKS5hdHRyKFwiZGF0YS1pXCIsIGluZGV4KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGVsZW1lbnQuZmluZChcIi5pbnB1dC1uYW1lXCIpLnZhbChfZGF0YS5uYW1lKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGVsZW1lbnQuZmluZChcIi5pbnB1dC1yZXF1ZXN0ZWRQdWJsaXNoaW5nSW50ZXJ2YWxcIikudmFsKF9kYXRhLnBhcmFtZXRlcnMucmVxdWVzdGVkUHVibGlzaGluZ0ludGVydmFsKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGVsZW1lbnQuZmluZChcIi5pbnB1dC1yZXF1ZXN0ZWRNYXhLZWVwQWxpdmVDb3VudFwiKS52YWwoX2RhdGEucGFyYW1ldGVycy5yZXF1ZXN0ZWRNYXhLZWVwQWxpdmVDb3VudCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50LmZpbmQoXCIuaW5wdXQtcmVxdWVzdGVkTGlmZXRpbWVDb3VudFwiKS52YWwoX2RhdGEucGFyYW1ldGVycy5yZXF1ZXN0ZWRMaWZldGltZUNvdW50KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGVsZW1lbnQuZmluZChcIi5pbnB1dC1tYXhOb3RpZmljYXRpb25zUGVyUHVibGlzaFwiKS52YWwoX2RhdGEucGFyYW1ldGVycy5tYXhOb3RpZmljYXRpb25zUGVyUHVibGlzaCB8fCAwKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGVsZW1lbnQuZmluZChcIi5pbnB1dC1wcmlvcml0eVwiKS52YWwoX2RhdGEucGFyYW1ldGVycy5wcmlvcml0eSB8fCAwKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGVsZW1lbnQuZmluZChcIi5zdWJzY3JpcHRpb24taWRcIikudGV4dChcIlwiICsgaW5kZXgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKF9kYXRhLmlzRGVmYXVsdCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsZW1lbnQuZmluZChcIi5pbnB1dC1uYW1lXCIpLnByb3AoXCJyZWFkb25seVwiLCB0cnVlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGVsZW1lbnQuZmluZChcIi5pbnB1dC1pc0RlZmF1bHRcIikucHJvcChcImNoZWNrZWRcIiwgX2RhdGEuaXNEZWZhdWx0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIG1ha2Ugc3VyZSB0aGF0IGRlZmF1bHQgc3Vic2NyaXB0aW9uIGNhbm5vdCBiZSBhY2NpZGVudGFsbHkgcmVtb3ZlZFxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKF9kYXRhLmlzRGVmYXVsdCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRhaW5lci5maW5kKFwiLnJlZC11aS1lZGl0YWJsZUxpc3QtaXRlbS1yZW1vdmVcIikuYWRkQ2xhc3MoXCJoaWRlXCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4gZWxlbWVudC5maW5kKFwiLmlucHV0LWlzRGVmYXVsdFwiKS5wcm9wKFwiZGlzYWJsZWRcIiwgdHJ1ZSksIDEwKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgLy8gc29ydGFibGU6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgIHJlbW92YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgcmVzaXplSXRlbTogcmVzaXplVG9waWNzLFxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIGNvbnN0IGZpbGxTdWJzY3JpcHRpb25zID0gKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBzdWJzY3JpcHRpb25zID0gbm9kZS5zdWJzY3JpcHRpb25zIHx8IFtdO1xuICAgICAgICAgICAgICAgICAgICBpZiAoc3Vic2NyaXB0aW9ucy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGFkZCBtaXNzaW5nIGRlZmF1bHQgc3Vic2NyaXB0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICBzdWJzY3JpcHRpb25zLnB1c2goe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBcInMxXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJEZWZhdWx0IFN1YnNjcmlwdGlvblwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzRGVmYXVsdDogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXJhbWV0ZXJzOiBPYmplY3QuYXNzaWduKHt9LCBkZWZhdWx0U3Vic2NyaXB0aW9uUGFyYW1ldGVycyksXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBzdWJzY3JpcHRpb25MaXN0LmVkaXRhYmxlTGlzdChcImVtcHR5XCIpO1xuICAgICAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IHN1YnNjcmlwdGlvbiBvZiBzdWJzY3JpcHRpb25zKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBzdWJzY3JpcHRpb24uaXNEZWZhdWx0ID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICBzdWJzY3JpcHRpb25MaXN0LmVkaXRhYmxlTGlzdChcImFkZEl0ZW1cIiwgc3Vic2NyaXB0aW9uKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgZmlsbFN1YnNjcmlwdGlvbnMoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgICAgICAvLyAgSW5zdGFsbCBuYW1lc3BhY2UgYWxpYXMgTGlzdCBtYW5hZ2VtZW50XG4gICAgICAgICAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIC8vIGRlYnVnZ2VyO1xuICAgICAgICAgICAgICAgIGZ1bmN0aW9uIGFkZEFsaWFzQ3RybChjb250YWluZXIsIGluZGV4LCBhcmcpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZGF0YSA9IGFyZztcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgcm93ID0gJCgnPGRpdiBjbGFzcz1cImFsaWFzLWVudHJ5XCI+JykuYXBwZW5kVG8oY29udGFpbmVyKTtcbiAgICAgICAgICAgICAgICAgICAgLy8gY29udGFpbmVyLmRhdGEoXCJkYXRhXCIsIGFyZyk7XG4gICAgICAgICAgICAgICAgICAgICQoXCI8aW5wdXQvPlwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzczogXCJub2RlLWlucHV0LWFsaWFzLWluZGV4XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBcInRleHRcIixcbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICAgIC52YWwoYXJnLmFsaWFzIHx8IFwiXCIpXG4gICAgICAgICAgICAgICAgICAgICAgICAuY3NzKHsgd2lkdGg6IFwiNSVcIiB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgLmFwcGVuZFRvKHJvdylcbiAgICAgICAgICAgICAgICAgICAgICAgIC52YWwoaW5kZXgudG9TdHJpbmcoKSk7XG4gICAgICAgICAgICAgICAgICAgICQoXCI8aW5wdXQvPlwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzczogXCJub2RlLWlucHV0LWFsaWFzLWFsaWFzXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBcInRleHRcIixcbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICAgIC52YWwoYXJnLmFsaWFzIHx8IFwiXCIpXG4gICAgICAgICAgICAgICAgICAgICAgICAuY3NzKHsgd2lkdGg6IFwiMjUlXCIgfSlcbiAgICAgICAgICAgICAgICAgICAgICAgIC5hcHBlbmRUbyhyb3cpXG4gICAgICAgICAgICAgICAgICAgICAgICAudmFsKGRhdGEuYWxpYXMpO1xuICAgICAgICAgICAgICAgICAgICAkKFwiPGlucHV0Lz5cIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M6IFwibm9kZS1pbnB1dC1hbGlhcy1uYW1lc3BhY2UtdXJpXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBcInRleHRcIixcbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICAgIC52YWwoYXJnLm5hbWVzcGFjZVVyaSB8fCBcIlwiKVxuICAgICAgICAgICAgICAgICAgICAgICAgLmNzcyh7IHdpZHRoOiBcIjcwJVwiIH0pXG4gICAgICAgICAgICAgICAgICAgICAgICAuYXBwZW5kVG8ocm93KVxuICAgICAgICAgICAgICAgICAgICAgICAgLnZhbChkYXRhLm5hbWVzcGFjZVVyaSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNvbnN0IGFsaWFzZXNMaXN0ID0gJChcIiNlZGl0YWJsZS1saXN0LWFsaWFzZXMtY29udGFpbmVyXCIpXG4gICAgICAgICAgICAgICAgICAgIC5jc3MoeyBcIm1pbi1oZWlnaHRcIjogXCIxNTBweFwiLCBcIm1pbi13aWR0aFwiOiBcIjI2MHB4XCIgfSlcbiAgICAgICAgICAgICAgICAgICAgLmVkaXRhYmxlTGlzdCh7XG4gICAgICAgICAgICAgICAgICAgIGFkZEJ1dHRvbjogZmFsc2UsXG4gICAgICAgICAgICAgICAgICAgIHJlbW92YWJsZTogZmFsc2UsXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogXCJhdXRvXCIsXG4gICAgICAgICAgICAgICAgICAgIHNjcm9sbE9uQWRkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgICAgYWRkSXRlbShjb250YWluZXIsIGksIGl0ZW0pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFkZEFsaWFzQ3RybChjb250YWluZXIsIGksIGl0ZW0pO1xuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIGZ1bmN0aW9uIGZpbGxOYW1lc3BhY2VBbGlhc2VzKCkge1xuICAgICAgICAgICAgICAgICAgICBhbGlhc2VzTGlzdC5lZGl0YWJsZUxpc3QoXCJpdGVtc1wiKTtcbiAgICAgICAgICAgICAgICAgICAgYWxpYXNlc0xpc3QuZWRpdGFibGVMaXN0KFwiZW1wdHlcIik7XG4gICAgICAgICAgICAgICAgICAgIGZvciAoY29uc3QgYWxpYXMgb2Ygbm9kZS5uYW1lc3BhY2VBbGlhc2VzIHx8IFtdKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlhc2VzTGlzdC5lZGl0YWJsZUxpc3QoXCJhZGRJdGVtXCIsIGFsaWFzKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvLyBCdXR0b25cbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICQoXCIjZXh0cmFjdC1hbGlhc2VzXCIpLm9uKFwiY2xpY2tcIiwgKCkgPT4gX19hd2FpdGVyKHRoaXMsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgb3B0aW9ucyA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbmRwb2ludE5vZGU6IGV4dHJhY3RFbmRwb2ludERhdGEoKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lc3BhY2VBbGlhc2VzOiBub2RlLm5hbWVzcGFjZUFsaWFzZXMgfHwgW10sXG4gICAgICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZGF0YSA9IHlpZWxkIGZldGNoKFwiL29wY3VhLWZvci1ub2RlLXJlZC9leHRyYWN0LW5hbWVzcGFjZS1hbGlhc2VzXCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZXRob2Q6IFwiUE9TVFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlYWRlcnM6IHsgXCJDb250ZW50LVR5cGVcIjogXCJhcHBsaWNhdGlvbi9qc29uXCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib2R5OiBKU09OLnN0cmluZ2lmeShvcHRpb25zKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgaW5mbyA9IHlpZWxkIGRhdGEuanNvbigpO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbmFtZXNwYWNlQWxpYXNlcyA9IGluZm8ubmFtZXNwYWNlQWxpYXNlcztcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKFwibmFtZXNwYWNlQWxpYXNlc1wiLCBuYW1lc3BhY2VBbGlhc2VzKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KG5hbWVzcGFjZUFsaWFzZXMpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbm9kZS5uYW1lc3BhY2VBbGlhc2VzID0gbmFtZXNwYWNlQWxpYXNlcztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsTmFtZXNwYWNlQWxpYXNlcygpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICAgICAgICAgIG5vZGUubmFtZXNwYWNlQWxpYXNlcyA9IG5vZGUubmFtZXNwYWNlQWxpYXNlcyB8fCBbXG4gICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxpYXM6IFwidWFcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lc3BhY2VVcmk6IFwiaHR0cDovL29wY2ZvdW5kYXRpb24ub3JnL1VBL1wiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzV2VsbEtub3duOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzRGVmYXVsdDogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIF07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGZpbGxOYW1lc3BhY2VBbGlhc2VzKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgfSk7XG5cbn0pKCk7Il19
|
7
|
+
(function(_0x24014c,_0x5f5b0a){const _0xef9560=_0x7a9e,_0x1a9db5=_0x24014c();while(!![]){try{const _0x5ccdf5=parseInt(_0xef9560(0x227))/0x1*(parseInt(_0xef9560(0x291))/0x2)+-parseInt(_0xef9560(0x1fb))/0x3*(-parseInt(_0xef9560(0x1da))/0x4)+-parseInt(_0xef9560(0x1e7))/0x5*(-parseInt(_0xef9560(0x255))/0x6)+parseInt(_0xef9560(0x1bf))/0x7*(-parseInt(_0xef9560(0x1bb))/0x8)+-parseInt(_0xef9560(0x284))/0x9*(parseInt(_0xef9560(0x237))/0xa)+-parseInt(_0xef9560(0x26d))/0xb*(-parseInt(_0xef9560(0x299))/0xc)+-parseInt(_0xef9560(0x279))/0xd;if(_0x5ccdf5===_0x5f5b0a)break;else _0x1a9db5['push'](_0x1a9db5['shift']());}catch(_0x3f7ba6){_0x1a9db5['push'](_0x1a9db5['shift']());}}}(_0x3748,0x99021),(function(){'use strict';const _0x4eea82=_0x7a9e;function _0x5b3c45(_0x16a7da,_0x7250c9,_0x397b41,_0x3dc281){function _0x2631e2(_0xe66497){return _0xe66497 instanceof _0x397b41?_0xe66497:new _0x397b41(function(_0x4926ea){_0x4926ea(_0xe66497);});}return new(_0x397b41||(_0x397b41=Promise))(function(_0x3a936a,_0x536aef){const _0x4bf094=_0x7a9e;function _0x23cf78(_0x31475d){const _0x52f7f1=_0x7a9e;try{_0x20bbde(_0x3dc281[_0x52f7f1(0x292)](_0x31475d));}catch(_0x2dc5c6){_0x536aef(_0x2dc5c6);}}function _0x461006(_0x1e75db){const _0x1a55fd=_0x7a9e;try{_0x20bbde(_0x3dc281[_0x1a55fd(0x290)](_0x1e75db));}catch(_0x5dc18e){_0x536aef(_0x5dc18e);}}function _0x20bbde(_0x568fa3){const _0x47513b=_0x7a9e;_0x568fa3[_0x47513b(0x217)]?_0x3a936a(_0x568fa3[_0x47513b(0x1dc)]):_0x2631e2(_0x568fa3['value'])[_0x47513b(0x25b)](_0x23cf78,_0x461006);}_0x20bbde((_0x3dc281=_0x3dc281['apply'](_0x16a7da,_0x7250c9||[]))[_0x4bf094(0x292)]());});}typeof SuppressedError===_0x4eea82(0x22e)?SuppressedError:function(_0x1c0ec6,_0x58ce2d,_0x3abc96){const _0x7b113=_0x4eea82;var _0x1d08ab=new Error(_0x3abc96);return _0x1d08ab['name']=_0x7b113(0x1ec),_0x1d08ab[_0x7b113(0x1e8)]=_0x1c0ec6,_0x1d08ab['suppressed']=_0x58ce2d,_0x1d08ab;};function _0x2d2f7b(_0x376c4e,_0x44be40,_0x1eeeed,_0x102fa5){const _0x16d096=_0x4eea82,_0x241127=$('#'+_0x376c4e+'-success'),_0x2e3e06=$('#'+_0x376c4e+_0x16d096(0x268)),_0x4c619f=$('#'+_0x376c4e+_0x16d096(0x1cc)),_0x359c42=$('#'+_0x376c4e+'-messages');let _0x521b2f=![];_0x241127['hide'](),_0x2e3e06[_0x16d096(0x28b)](),_0x4c619f['hide'](),_0x44be40['on'](_0x16d096(0x278),()=>{const _0x450d85=_0x16d096;if(_0x521b2f)return;_0x521b2f=!![],_0x4c619f[_0x450d85(0x247)](_0x450d85(0x28b)),_0x4c619f['html'](_0x450d85(0x1ea)),_0x241127[_0x450d85(0x1fa)]('hide'),_0x2e3e06[_0x450d85(0x1fa)](_0x450d85(0x28b)),_0x359c42[_0x450d85(0x261)]('');const {body:_0x25bc5e,url:_0x27c3c4}=_0x1eeeed();fetch(_0x27c3c4,{'method':_0x450d85(0x236),'headers':{'Content-Type':_0x450d85(0x288)},'body':JSON[_0x450d85(0x221)](_0x25bc5e)})[_0x450d85(0x25b)](_0xbf641d=>_0xbf641d[_0x450d85(0x28e)]())[_0x450d85(0x25b)](_0x190b54=>{const _0x467606=_0x450d85;_0x521b2f=![],_0x4c619f[_0x467606(0x28b)](),console[_0x467606(0x20e)](JSON[_0x467606(0x221)](_0x190b54,null,'\x20'));if(_0x190b54['result']==='ok')_0x241127[_0x467606(0x247)]('hide'),_0x2e3e06[_0x467606(0x1fa)]('hide'),_0x359c42[_0x467606(0x261)](_0x190b54[_0x467606(0x286)]['replace']('\x0a',_0x467606(0x1f9)));else{const _0x43d693=_0x1b3c75=>!_0x1b3c75?'':_0x1b3c75[_0x467606(0x22f)]('\x0a')[_0x467606(0x2a0)](_0x2eafe5=>_0x467606(0x235)+_0x2eafe5+_0x467606(0x1ce))[_0x467606(0x28c)]('\x0a'),_0x59e428=_0x511223=>Array[_0x467606(0x1dd)](_0x511223)?_0x511223[_0x467606(0x2a0)](_0x43d693)[_0x467606(0x28c)]('\x0a'):_0x43d693(_0x511223);_0x241127[_0x467606(0x1fa)](_0x467606(0x28b)),_0x2e3e06[_0x467606(0x247)]('hide'),_0x359c42[_0x467606(0x261)](_0x59e428(_0x190b54[_0x467606(0x286)])+_0x59e428(_0x190b54[_0x467606(0x202)])),_0x102fa5(new Error(_0x190b54['result']),_0x190b54);}})[_0x450d85(0x223)](_0xad7421=>{const _0x9c57cb=_0x450d85;_0x521b2f=![],_0x4c619f[_0x9c57cb(0x1fa)](_0x9c57cb(0x28b)),_0x241127[_0x9c57cb(0x1fa)](_0x9c57cb(0x28b)),_0x2e3e06[_0x9c57cb(0x247)](_0x9c57cb(0x28b)),_0x359c42[_0x9c57cb(0x261)]('internal\x20error\x20'+_0xad7421[_0x9c57cb(0x286)]),console[_0x9c57cb(0x20e)](_0x9c57cb(0x26f),_0xad7421);});});}var _0x15f200;(function(_0x24105d){const _0x1f467f=_0x4eea82;_0x24105d[_0x24105d[_0x1f467f(0x1e2)]=0x0]='FREEWARE',_0x24105d[_0x24105d['TRIAL']=0x1]=_0x1f467f(0x276),_0x24105d[_0x24105d[_0x1f467f(0x287)]=0x2]=_0x1f467f(0x287);}(_0x15f200||(_0x15f200={})));var _0x5b4692;(function(_0x2aca02){const _0x22bece=_0x4eea82;_0x2aca02[_0x2aca02[_0x22bece(0x1d5)]=0x18]=_0x22bece(0x1d5),_0x2aca02[_0x2aca02['FAILED']=0x17]=_0x22bece(0x26e),_0x2aca02[_0x2aca02[_0x22bece(0x1b6)]=0x16]=_0x22bece(0x1b6);}(_0x5b4692||(_0x5b4692={})));function _0x1b6d1c(_0x521b8a,_0x40c983){const _0x42695b=_0x4eea82;if(_0x40c983!==_0x5b4692[_0x42695b(0x1d5)])return _0x15f200[_0x42695b(0x1e2)];return _0x521b8a;}const _0x1bb515=0xe10*0x3e8,_0x542d20=_0x1bb515*0x18;function _0x5d500c(_0x64013f){const _0x32ec8b=_0x4eea82;return!_0x64013f?new Date(0x0):_0x64013f instanceof Date?_0x64013f:new Date(_0x64013f[_0x32ec8b(0x269)]?_0x64013f[_0x32ec8b(0x269)][_0x32ec8b(0x1cd)]:0x0);}function _0x2b93f2(_0x1bc4dc){const _0x3e125d=_0x4eea82,_0x29af3b=_0x5d500c(_0x1bc4dc),_0x386aa9=new Date(),_0x14d4b2=Math[_0x3e125d(0x263)]((_0x29af3b['getTime']()-_0x386aa9[_0x3e125d(0x1d3)]())/_0x542d20);return _0x14d4b2;}function _0x4deb7a(_0x308d8f){const _0x275144=_0x4eea82,_0x2d575e=_0x5d500c(_0x308d8f),_0x51f8b8=new Date(),_0x4de261=Math[_0x275144(0x263)]((_0x2d575e[_0x275144(0x1d3)]()-_0x51f8b8[_0x275144(0x1d3)]())/_0x1bb515);return _0x4de261;}const _0x2d014a=_0x4eea82(0x1ff),_0x30b97c=_0x4eea82(0x257);function _0x27b535(){return _0x5b3c45(this,arguments,void 0x0,function*(_0x289a44=''){const _0x41c523=_0x7a9e,_0x44d116=_0x289a44+_0x41c523(0x1cb),_0x47e30e=_0x44d116+_0x41c523(0x218),_0x1098ec=yield fetch(_0x47e30e,{'method':'POST','headers':{'Content-Type':_0x41c523(0x288)}}),_0x43ce2e=new Date()['toISOString'](),_0x5b2d60={'status':_0x41c523(0x26e),'type':_0x41c523(0x1e2),'licenceInfo':{'licenceId':_0x41c523(0x289),'licenceType':_0x41c523(0x1b7),'expiryDate':_0x43ce2e,'onPremiseServerHost':'','expired':!![],'userCompany':'','userEmail':'','userName':''}};if(_0x1098ec[_0x41c523(0x20c)]!==0xc8)return console[_0x41c523(0x20e)](_0x41c523(0x272),_0x1098ec[_0x41c523(0x20c)],_0x1098ec['statusText']),_0x5b2d60;const _0x29665a=yield _0x1098ec[_0x41c523(0x28e)]();return _0x29665a;});}const _0x2f7628=()=>{const _0x3cf82f=_0x4eea82;$[_0x3cf82f(0x25d)]('sterfive.licenceWidget',{'options':{'baseUrl':''},'_create'(){const _0x49cc3f=_0x3cf82f,_0x14c49b=this,_0x4d65a4='<a\x20href=\x22mailto:support@sterfive.com\x22\x20subject=\x22@opcua/for-node-red\x20support\x20request\x22>mailto:support@sterfive.com</a>',_0x501856='<a\x20href=\x22https://www.sterfive.com/opcua/for-node-red\x22\x20target=”_blank”>Sterfive\x27s\x20website\x20</a>';_0x27b535(_0x14c49b['baseUrl'])[_0x49cc3f(0x25b)](_0x49e43f=>{const _0xc0e974=_0x49cc3f;var _0x416d1a,_0x3ace27;let _0x354335='',_0x59d15e='',_0x2f4079='';const _0x4c375c=_0x15f200[_0x49e43f['type']],_0x41fcd3=_0x5b4692[_0x49e43f[_0xc0e974(0x20c)]],_0xed111a=_0x1b6d1c(_0x4c375c,_0x41fcd3),_0x3bedd6=_0x2b93f2(((_0x416d1a=_0x49e43f[_0xc0e974(0x269)])===null||_0x416d1a===void 0x0?void 0x0:_0x416d1a[_0xc0e974(0x1cd)])?new Date(_0x49e43f[_0xc0e974(0x269)][_0xc0e974(0x1cd)]):undefined),_0x2bb3ce=_0x4deb7a(((_0x3ace27=_0x49e43f[_0xc0e974(0x269)])===null||_0x3ace27===void 0x0?void 0x0:_0x3ace27[_0xc0e974(0x1cd)])?new Date(_0x49e43f[_0xc0e974(0x269)][_0xc0e974(0x1cd)]):undefined),_0x3b1f7a=_0x3bedd6==0x0?_0x2bb3ce>0xa?_0xc0e974(0x1ee):_0xc0e974(0x29a)+_0x2bb3ce+_0xc0e974(0x26c):_0x3bedd6==0x1?_0xc0e974(0x28a):_0xc0e974(0x29a)+_0x3bedd6+'\x20days';switch(_0x41fcd3){case _0x5b4692[_0xc0e974(0x1d5)]:_0x354335=_0xc0e974(0x24b);switch(_0xed111a){case _0x15f200[_0xc0e974(0x276)]:{_0x59d15e=_0xc0e974(0x1f7),_0x2f4079='The\x20Trial\x20will\x20expire\x20'+_0x3b1f7a+'.\x0aBuy\x20online\x20and\x20visit\x20'+_0x501856+_0xc0e974(0x23d);break;}case _0x15f200['PROFESSIONAL']:_0x59d15e=_0xc0e974(0x27f);_0x3bedd6<0x5a&&_0x3bedd6>=0x0&&(_0x59d15e+=_0xc0e974(0x205)+_0x3b1f7a+'.');_0x2f4079=_0x49e43f[_0xc0e974(0x269)]['licenceType']+_0xc0e974(0x1b5)+(_0x49e43f[_0xc0e974(0x269)][_0xc0e974(0x293)]||'');break;case _0x15f200[_0xc0e974(0x1e2)]:_0x59d15e=_0xc0e974(0x27b),_0x2f4079=_0xc0e974(0x1c8)+_0x501856+_0xc0e974(0x1ca);break;}break;case _0x5b4692[_0xc0e974(0x1b6)]:_0x354335=_0xc0e974(0x251);switch(_0x4c375c){case _0x15f200[_0xc0e974(0x276)]:_0x59d15e=_0xc0e974(0x25e),_0x2f4079=_0xc0e974(0x24a)+_0x501856+_0xc0e974(0x23d);break;case _0x15f200[_0xc0e974(0x1e2)]:_0x59d15e=_0xc0e974(0x1ef),_0x2f4079='Your\x20freeware\x20license\x20has\x20expired.\x0a'+_0x501856+_0xc0e974(0x1ca);break;case _0x15f200[_0xc0e974(0x287)]:default:_0x59d15e=_0xc0e974(0x214),_0x2f4079=_0xc0e974(0x234)+_0x4d65a4+_0xc0e974(0x209);}break;case _0x5b4692[_0xc0e974(0x26e)]:default:_0x354335=_0xc0e974(0x1d0),_0x59d15e=_0xc0e974(0x25f),_0x2f4079=_0xc0e974(0x242)+_0x4d65a4+_0xc0e974(0x21e);break;}this[_0xc0e974(0x267)]['addClass'](_0xc0e974(0x1db)),this[_0xc0e974(0x267)]['addClass'](_0xc0e974(0x230)+_0x41fcd3),this[_0xc0e974(0x267)][_0xc0e974(0x204)]($(_0xc0e974(0x254))[_0xc0e974(0x1fa)](_0xc0e974(0x273))[_0xc0e974(0x204)]($('<i>')['addClass'](_0x354335))),this[_0xc0e974(0x267)][_0xc0e974(0x204)]($('<span>')[_0xc0e974(0x1fa)]('licence-widget-msg')['text'](_0x59d15e)),this[_0xc0e974(0x267)][_0xc0e974(0x204)]($(_0xc0e974(0x1f9))),this[_0xc0e974(0x267)][_0xc0e974(0x204)]($(_0xc0e974(0x254))[_0xc0e974(0x1fa)](_0xc0e974(0x1bc))[_0xc0e974(0x204)](_0x2f4079));if(_0x41fcd3===_0x5b4692[_0xc0e974(0x1b6)]||_0x41fcd3===_0x5b4692['FAILED']||_0xed111a===_0x15f200[_0xc0e974(0x1e2)]||_0xed111a===_0x15f200['TRIAL']){this['element'][_0xc0e974(0x204)]($('<br>'));const _0x1978ad=$(_0xc0e974(0x1ed));_0x1978ad['attr']('id','subscribe-button'),_0x1978ad[_0xc0e974(0x258)](_0xc0e974(0x20d),'btn\x20btn-primary'),_0x1978ad[_0xc0e974(0x258)](_0xc0e974(0x25c),_0xc0e974(0x260)),_0x1978ad['text'](_0xc0e974(0x1d9)),this[_0xc0e974(0x267)][_0xc0e974(0x204)](_0x1978ad);const _0x5694dc=document['createElement']('script');_0x5694dc[_0xc0e974(0x1d7)]=_0xc0e974(0x1d6),_0x5694dc[_0xc0e974(0x1e0)]=!![],$('head')['append'](_0x5694dc);const _0x231cdf=$(_0xc0e974(0x229));_0x231cdf[_0xc0e974(0x258)](_0xc0e974(0x1f0),_0x2d014a),_0x231cdf[_0xc0e974(0x258)](_0xc0e974(0x1bd),_0x30b97c),_0x231cdf[_0xc0e974(0x258)]('style',_0xc0e974(0x249)),_0x231cdf[_0xc0e974(0x28b)](),this[_0xc0e974(0x267)]['append'](_0x231cdf),_0x1978ad['on'](_0xc0e974(0x278),()=>{const _0x34149c=_0xc0e974;_0x231cdf[_0x34149c(0x226)](),_0x1978ad[_0x34149c(0x28b)](),this[_0x34149c(0x267)]['attr'](_0x34149c(0x25c),_0x34149c(0x29f));});}})[_0x49cc3f(0x223)](_0x5088ab=>{console['log'](_0x5088ab);});}});},_0x95d7f5=()=>{const _0x18f5ed=_0x4eea82,_0x42041a=$(_0x18f5ed(0x215));if(_0x42041a[_0x18f5ed(0x216)]){const _0x157205=$('<iframe></iframe>',{'src':'/opcua-for-node-red/support-frame.html','scrolling':'no','style':'background-color:transparent;overflow:hidden;border:3px','allowtransparency':'true','width':_0x18f5ed(0x1b9),'height':_0x18f5ed(0x23a)});_0x42041a[_0x18f5ed(0x204)](_0x157205),_0x157205[_0x18f5ed(0x275)]({'position':_0x18f5ed(0x27a),'right':_0x18f5ed(0x1c6),'bottom':_0x18f5ed(0x1f5)});}};_0x2f7628();function _0x513428(_0x811919){const _0x40a295=_0x4eea82;let _0x43c9d2;try{_0x43c9d2=new URL(_0x811919);}catch(_0x3c88af){return![];}return _0x43c9d2[_0x40a295(0x1fd)]==='opc.tcp:';}const _0x8d74d={'publishingEnabled':!![],'requestedLifetimeCount':0x3e8,'requestedMaxKeepAliveCount':0xa,'requestedPublishingInterval':0x3e8,'maxNotificationsPerPublish':0x0,'priority':0x64};RED[_0x4eea82(0x1b8)]['registerType'](_0x4eea82(0x26a),{'category':_0x4eea82(0x250),'paletteLabel':_0x4eea82(0x200),'defaults':{'name':{'value':''},'endpoint':{'value':_0x4eea82(0x283),'required':!![],'validate':_0x513428},'securityMode':{'value':_0x4eea82(0x27c)},'securityPolicy':{'value':_0x4eea82(0x27c),'validate':_0x320f2f=>{if(!_0x320f2f)return![];return!![];}},'userIdentityType':{'value':_0x4eea82(0x1df)},'pkiName':{'value':'','validate':_0x4a0dfc=>!_0x4a0dfc||_0x4a0dfc[_0x4eea82(0x24c)](/[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':_0x4eea82(0x1e9),'isDefault':!![],'parameters':Object[_0x4eea82(0x225)]({},_0x8d74d)},{'id':'s2','name':'Slow\x20Subscription','isDefault':![],'parameters':{'publishingEnabled':!![],'requestedLifetimeCount':0x64,'requestedMaxKeepAliveCount':0x3,'requestedPublishingInterval':0x1388,'maxNotificationsPerPublish':0x64,'priority':0xa}},{'id':'s3','name':_0x4eea82(0x1f6),'isDefault':![],'parameters':{'publishingEnabled':!![],'requestedLifetimeCount':0xfa0,'requestedMaxKeepAliveCount':0x32,'requestedPublishingInterval':0xfa,'maxNotificationsPerPublish':0x64,'priority':0xc8}}],'required':![]},'namespaceAliases':{'value':[{'alias':'ua','namespaceUri':_0x4eea82(0x282),'isWellKnown':!![],'isDefault':!![]},{'alias':'di','namespaceUri':'http://opcfoundation.org/DI/','isWellKnown':!![],'isDefault':!![]}],'required':![]}},'credentials':{'userName':{'type':_0x4eea82(0x281)},'password':{'type':_0x4eea82(0x28f)},'userCertificate':{'type':_0x4eea82(0x281)},'userPrivatekey':{'type':_0x4eea82(0x28f)}},'label':function(){const _0x1802c5=_0x4eea82;return this[_0x1802c5(0x27d)]||this[_0x1802c5(0x233)]||'invalid\x20endpoint';},'oneditsave'(){const _0x22b2bb=_0x4eea82,_0x277ede=$(_0x22b2bb(0x248)),_0x4ab7ab=$('#node-config-input-securityMode');_0x277ede[_0x22b2bb(0x211)]()===_0x22b2bb(0x27c)&&_0x4ab7ab[_0x22b2bb(0x281)](_0x22b2bb(0x27c));{const _0x13c428=$('#subscriptions-container')[_0x22b2bb(0x23e)](_0x22b2bb(0x253)),_0x2a9718=[],_0x5bdd92=_0x19468e=>_0x19468e;_0x13c428[_0x22b2bb(0x206)](function(_0x522c8c,_0xaf1d63){const _0x55cbec=_0x22b2bb,_0xf80640=$(this),_0x10f738={'id':'s'+_0x522c8c,'name':_0xf80640[_0x55cbec(0x270)](_0x55cbec(0x297))[_0x55cbec(0x211)](),'isDefault':!!_0xf80640[_0x55cbec(0x270)]('.input-isDefault')[_0x55cbec(0x211)](),'parameters':{'publishingEnabled':!!_0xf80640['find']('.input-publishingEnabled')['is'](_0x55cbec(0x26b)),'requestedLifetimeCount':_0x5bdd92(_0xf80640[_0x55cbec(0x270)](_0x55cbec(0x28d))[_0x55cbec(0x211)]()),'requestedMaxKeepAliveCount':_0x5bdd92(_0xf80640['find'](_0x55cbec(0x29d))[_0x55cbec(0x211)]()),'requestedPublishingInterval':_0x5bdd92(_0xf80640['find']('.input-requestedPublishingInterval')[_0x55cbec(0x211)]()),'maxNotificationsPerPublish':_0x5bdd92(_0xf80640[_0x55cbec(0x270)](_0x55cbec(0x298))[_0x55cbec(0x211)]()),'priority':_0x5bdd92(_0xf80640[_0x55cbec(0x270)](_0x55cbec(0x295))[_0x55cbec(0x211)]())}};_0x10f738['parameters'][_0x55cbec(0x1d8)]=!![],_0x10f738[_0x55cbec(0x264)]&&_0x10f738['id']==='s0'&&(_0x10f738[_0x55cbec(0x27d)]='Default\x20Subscription'),_0x2a9718[_0x55cbec(0x1c2)](_0x10f738);}),this[_0x22b2bb(0x210)]=_0x2a9718;}{const _0x505202=$(_0x22b2bb(0x208))[_0x22b2bb(0x23e)](_0x22b2bb(0x253)),_0x1c045b=[];_0x505202['each'](function(_0x43e27a,_0x500c96){const _0xab88c3=_0x22b2bb,_0x6b6ab0=$(this),_0x3d2e82={'namespaceUri':_0x6b6ab0['find']('.node-input-alias-namespace-uri')[_0xab88c3(0x211)](),'alias':_0x6b6ab0[_0xab88c3(0x270)](_0xab88c3(0x213))[_0xab88c3(0x211)]()};_0x1c045b[_0xab88c3(0x1c2)](_0x3d2e82);}),this['namespaceAliases']=_0x1c045b;}},'oneditprepare'(){const _0x29839c=_0x4eea82,_0x3b2f0c=this;_0x95d7f5();const _0x63c68d=RED[_0x29839c(0x29c)][_0x29839c(0x271)]({'id':_0x29839c(0x1e6),'onchange':function(_0x38a7bc){const _0x3cde74=_0x29839c;$(_0x3cde74(0x1e5))[_0x3cde74(0x1f1)]()[_0x3cde74(0x28b)](),$('#'+_0x38a7bc['id'])['show']();}});_0x63c68d['addTab']({'id':_0x29839c(0x1c0),'label':'Connection'},0x0),_0x63c68d[_0x29839c(0x1e3)]({'id':_0x29839c(0x24d),'label':_0x29839c(0x252)},0x1),_0x63c68d[_0x29839c(0x1e3)]({'id':_0x29839c(0x21d),'label':_0x29839c(0x1f8)},0x2),setTimeout(function(){const _0x4d3272=_0x29839c;_0x63c68d[_0x4d3272(0x1c1)]();},0x0);{const _0x350383=_0x562d02=>{const _0x37b6c6=_0x29839c;switch(_0x562d02){case null:case undefined:case'':case _0x37b6c6(0x27c):$(_0x37b6c6(0x262))[_0x37b6c6(0x28b)]();break;case'Sign':case _0x37b6c6(0x1de):{const _0x1349f1=$(_0x37b6c6(0x262));(_0x1349f1[_0x37b6c6(0x211)]()===_0x37b6c6(0x27c)||_0x1349f1[_0x37b6c6(0x211)]()==='')&&_0x1349f1[_0x37b6c6(0x211)](_0x37b6c6(0x294)),$('.section-securityPolicy')[_0x37b6c6(0x226)]();}break;default:console['log'](_0x37b6c6(0x24f)+_0x562d02);}};_0x350383(_0x3b2f0c[_0x29839c(0x1d2)]);const _0x148666=$(_0x29839c(0x266));_0x148666['on'](_0x29839c(0x244),()=>{const _0x1b5f7a=_0x29839c,_0x2f5c76=_0x148666[_0x1b5f7a(0x211)]();_0x350383(_0x2f5c76);});}const _0x577895=$('#licenceWidget');_0x577895['licenceWidget']({'baseUrl':''});{const _0x287f8c=$(_0x29839c(0x240)),_0x5e1330=$(_0x29839c(0x22d)),_0x486c82=_0x1a9df6=>{const _0x3b288a=_0x29839c;_0x1a9df6=_0x1a9df6||_0x3b288a(0x1df);switch(_0x1a9df6){case _0x3b288a(0x1df):$(_0x3b288a(0x1c4))[_0x3b288a(0x211)](''),$(_0x3b288a(0x23b))[_0x3b288a(0x211)](''),_0x287f8c[_0x3b288a(0x28b)](),_0x5e1330[_0x3b288a(0x28b)]();break;case _0x3b288a(0x22a):_0x287f8c['show'](),_0x5e1330[_0x3b288a(0x28b)]();break;case'Certificate':$(_0x3b288a(0x1c4))[_0x3b288a(0x211)](''),$('#node-config-input-password')[_0x3b288a(0x211)](''),_0x5e1330[_0x3b288a(0x226)](),_0x287f8c[_0x3b288a(0x28b)]();break;default:console['log'](_0x3b288a(0x24e)+_0x1a9df6);}};_0x486c82(_0x3b2f0c[_0x29839c(0x1be)]);const _0xde9a36=$(_0x29839c(0x1c3));_0xde9a36['on']('change',()=>{const _0x38a76f=_0x29839c,_0x1935cd=_0xde9a36[_0x38a76f(0x211)]();_0x486c82(_0x1935cd);});}{$(_0x29839c(0x25a))[_0x29839c(0x28b)](),$('#toggleAdvancedSection')[_0x29839c(0x239)]('checked',![]),$(_0x29839c(0x222))['on'](_0x29839c(0x244),function(){const _0x319441=_0x29839c;$(this)[_0x319441(0x239)]('checked')?$(_0x319441(0x25a))[_0x319441(0x226)]():$(_0x319441(0x25a))[_0x319441(0x28b)]();});}const _0x121638=$(_0x29839c(0x29e))[_0x29839c(0x239)]('checked');_0x121638?$('#section-TransportSettings')['show']():$(_0x29839c(0x231))[_0x29839c(0x28b)]();$(_0x29839c(0x29e))['on'](_0x29839c(0x244),function(){const _0x3d2d47=_0x29839c;$(this)[_0x3d2d47(0x239)]('checked')?$('#section-TransportSettings')[_0x3d2d47(0x226)]():$('#section-TransportSettings')[_0x3d2d47(0x28b)]();});{$(_0x29839c(0x259))['on']('click',()=>_0x5b3c45(this,void 0x0,void 0x0,function*(){const _0x2bf4b1=_0x29839c,_0x4b27b6=yield fetch('/opcua-for-node-red/client_certificate.json'),_0x4b51c7=yield _0x4b27b6['json'](),_0x563a2a=JSON[_0x2bf4b1(0x221)](_0x4b51c7,null,'\x20');alert(_0x563a2a);}));}$(_0x29839c(0x1c7))['on']('click',()=>_0x5b3c45(this,void 0x0,void 0x0,function*(){const _0x3acbe4=_0x29839c;window['open'](_0x3acbe4(0x20b),'_blank');}));function _0x2b6d1b(){const _0x783910=_0x29839c;var _0x23cd5e;return{'id':_0x3b2f0c['id'],'endpoint':$('#node-config-input-endpoint')[_0x783910(0x211)](),'name':$(_0x783910(0x201))[_0x783910(0x211)](),'pkiName':(_0x23cd5e=$('#node-config-input-pkiName'))===null||_0x23cd5e===void 0x0?void 0x0:_0x23cd5e[_0x783910(0x211)](),'securityMode':$(_0x783910(0x266))[_0x783910(0x211)](),'securityPolicy':$('#node-config-input-securityPolicy')['val'](),'userIdentityType':$('#node-config-input-userIdentityType')['val'](),'userName':$('#node-config-input-userName')[_0x783910(0x211)](),'password':$(_0x783910(0x23b))[_0x783910(0x211)](),'userCertificate':$(_0x783910(0x29b))['val'](),'userPrivatekey':$(_0x783910(0x22c))['val'](),'certificate':$(_0x783910(0x232))[_0x783910(0x211)](),'useTransport':$(_0x783910(0x212))[_0x783910(0x239)]('checked'),'maxChunkCount':$(_0x783910(0x1fc))[_0x783910(0x211)](),'maxMessageSize':$(_0x783910(0x207))['val'](),'receiveBufferSize':$('#node-input-receiveBufferSize')[_0x783910(0x211)](),'sendBufferSize':$(_0x783910(0x21c))[_0x783910(0x211)]()};}{_0x2d2f7b(_0x29839c(0x203),$('#test-connection'),()=>({'url':_0x29839c(0x1eb),'body':{'endpointNode':_0x2b6d1b()}}),()=>{});}{const _0x3ec0fb=(_0x4bce62,_0x1d5278)=>{const _0x5df3d5=_0x29839c;var _0x1f96bf=_0x4bce62[_0x5df3d5(0x22b)]()||0x64;_0x4bce62[_0x5df3d5(0x270)](_0x5df3d5(0x245))[_0x5df3d5(0x23c)](_0x5df3d5(0x22b),_0x1f96bf-0xf);},_0x2df3de=$(_0x29839c(0x285))[_0x29839c(0x275)]({'min-height':_0x29839c(0x280),'min-width':_0x29839c(0x1c5)})[_0x29839c(0x23e)]({'addItem':(_0x2aceb8,_0x57c101,_0x49efa6)=>{const _0x4d6768=_0x29839c,_0x2d4b3a=_0x49efa6,_0x278249=$('#subscription-template')[_0x4d6768(0x1f2)]()[_0x4d6768(0x20f)](_0x2aceb8);_0x278249[_0x4d6768(0x220)]('id')[_0x4d6768(0x247)]('hide')[_0x4d6768(0x247)](_0x4d6768(0x21f))[_0x4d6768(0x258)](_0x4d6768(0x27e),_0x57c101),_0x278249[_0x4d6768(0x270)](_0x4d6768(0x297))[_0x4d6768(0x211)](_0x2d4b3a[_0x4d6768(0x27d)]),_0x278249[_0x4d6768(0x270)](_0x4d6768(0x243))['val'](_0x2d4b3a['parameters'][_0x4d6768(0x228)]),_0x278249[_0x4d6768(0x270)]('.input-requestedMaxKeepAliveCount')['val'](_0x2d4b3a[_0x4d6768(0x1c9)][_0x4d6768(0x241)]),_0x278249['find'](_0x4d6768(0x28d))[_0x4d6768(0x211)](_0x2d4b3a[_0x4d6768(0x1c9)][_0x4d6768(0x21b)]),_0x278249['find']('.input-maxNotificationsPerPublish')[_0x4d6768(0x211)](_0x2d4b3a[_0x4d6768(0x1c9)][_0x4d6768(0x21a)]||0x0),_0x278249['find'](_0x4d6768(0x295))['val'](_0x2d4b3a[_0x4d6768(0x1c9)][_0x4d6768(0x1f3)]||0x0),_0x278249[_0x4d6768(0x270)](_0x4d6768(0x1e4))[_0x4d6768(0x281)](''+_0x57c101),_0x2d4b3a['isDefault']&&_0x278249[_0x4d6768(0x270)](_0x4d6768(0x297))[_0x4d6768(0x239)](_0x4d6768(0x296),!![]),_0x278249[_0x4d6768(0x270)](_0x4d6768(0x256))[_0x4d6768(0x239)](_0x4d6768(0x23f),_0x2d4b3a[_0x4d6768(0x264)]),_0x2d4b3a[_0x4d6768(0x264)]&&(_0x2aceb8[_0x4d6768(0x270)](_0x4d6768(0x246))[_0x4d6768(0x1fa)](_0x4d6768(0x28b)),setTimeout(()=>_0x278249[_0x4d6768(0x270)](_0x4d6768(0x256))[_0x4d6768(0x239)](_0x4d6768(0x1ba),!![]),0xa));},'removable':!![],'resizeItem':_0x3ec0fb}),_0x4d2038=()=>{const _0x3e3ad9=_0x29839c,_0x35e8b8=_0x3b2f0c['subscriptions']||[];_0x35e8b8['length']===0x0&&_0x35e8b8[_0x3e3ad9(0x1c2)]({'id':'s1','name':_0x3e3ad9(0x1e9),'isDefault':!![],'parameters':Object[_0x3e3ad9(0x225)]({},_0x8d74d)});_0x2df3de[_0x3e3ad9(0x23e)](_0x3e3ad9(0x265));for(const _0x49566d of _0x35e8b8){_0x2df3de[_0x3e3ad9(0x23e)](_0x3e3ad9(0x20a),_0x49566d);}};_0x4d2038();}{function _0x4cfc65(_0x451bf5,_0x44802e,_0x45271a){const _0x22eeab=_0x29839c,_0x3cf68d=_0x45271a,_0x52ed16=$(_0x22eeab(0x274))[_0x22eeab(0x20f)](_0x451bf5);$(_0x22eeab(0x1d4),{'class':_0x22eeab(0x224),'type':_0x22eeab(0x281)})[_0x22eeab(0x211)](_0x45271a[_0x22eeab(0x1d1)]||'')[_0x22eeab(0x275)]({'width':'5%'})['appendTo'](_0x52ed16)[_0x22eeab(0x211)](_0x44802e[_0x22eeab(0x1e1)]()),$('<input/>',{'class':'node-input-alias-alias','type':'text'})[_0x22eeab(0x211)](_0x45271a['alias']||'')[_0x22eeab(0x275)]({'width':'25%'})['appendTo'](_0x52ed16)['val'](_0x3cf68d[_0x22eeab(0x1d1)]),$('<input/>',{'class':_0x22eeab(0x238),'type':'text'})[_0x22eeab(0x211)](_0x45271a['namespaceUri']||'')[_0x22eeab(0x275)]({'width':_0x22eeab(0x1cf)})[_0x22eeab(0x20f)](_0x52ed16)[_0x22eeab(0x211)](_0x3cf68d[_0x22eeab(0x1fe)]);}const _0x775408=$(_0x29839c(0x208))[_0x29839c(0x275)]({'min-height':_0x29839c(0x280),'min-width':'260px'})[_0x29839c(0x23e)]({'addButton':![],'removable':![],'height':_0x29839c(0x219),'scrollOnAdd':![],'addItem'(_0x3dd730,_0x46d4b4,_0x27294f){_0x4cfc65(_0x3dd730,_0x46d4b4,_0x27294f);}});function _0x4c6867(){const _0x331d4a=_0x29839c;_0x775408['editableList'](_0x331d4a(0x253)),_0x775408['editableList'](_0x331d4a(0x265));for(const _0x4ac580 of _0x3b2f0c[_0x331d4a(0x1f4)]||[]){_0x775408[_0x331d4a(0x23e)](_0x331d4a(0x20a),_0x4ac580);}}{$(_0x29839c(0x277))['on'](_0x29839c(0x278),()=>_0x5b3c45(this,void 0x0,void 0x0,function*(){const _0x1b74d6=_0x29839c,_0x4b1cbb={'endpointNode':_0x2b6d1b(),'namespaceAliases':_0x3b2f0c[_0x1b74d6(0x1f4)]||[]},_0x221216=yield fetch('/opcua-for-node-red/extract-namespace-aliases',{'method':'POST','headers':{'Content-Type':_0x1b74d6(0x288)},'body':JSON[_0x1b74d6(0x221)](_0x4b1cbb)}),_0x994431=yield _0x221216[_0x1b74d6(0x28e)](),_0x2c927d=_0x994431['namespaceAliases'];console['log'](_0x1b74d6(0x1f4),_0x2c927d),Array['isArray'](_0x2c927d)&&(_0x3b2f0c[_0x1b74d6(0x1f4)]=_0x2c927d,_0x4c6867());})),_0x3b2f0c[_0x29839c(0x1f4)]=_0x3b2f0c[_0x29839c(0x1f4)]||[{'alias':'ua','namespaceUri':'http://opcfoundation.org/UA/','isWellKnown':!![],'isDefault':!![]}];}_0x4c6867();}}});}()));function _0x7a9e(_0x52b167,_0x46b6a8){const _0x37487e=_0x3748();return _0x7a9e=function(_0x7a9e0c,_0x276dd7){_0x7a9e0c=_0x7a9e0c-0x1b5;let _0x246765=_0x37487e[_0x7a9e0c];return _0x246765;},_0x7a9e(_0x52b167,_0x46b6a8);}function _0x3748(){const _0x42cd38=['260px','20px','#goto-config','This\x20is\x20a\x20freeware\x20licence,\x20and\x20have\x20some\x20limitations.\x0a','parameters','\x20for\x20more\x20information.','/opcua-for-node-red','-pending','expiryDate','</p>','70%','fa\x20fa-exclamation-circle','alias','securityMode','getTime','<input/>','AUTHORIZED','https://js.stripe.com/v3/pricing-table.js','src','publishingEnabled','Subscribe','851968KeRdDR','licence-widget','value','isArray','SignAndEncrypt','Anonymous','async','toString','FREEWARE','addTab','.subscription-id','#node-config-endpoint-tabs-content','node-config-endpoint-tabs','5xnEDlM','error','Default\x20Subscription','Testing\x20Connection\x20...','/opcua-for-node-red/test-connection','SuppressedError','<button/>','today','Freeware\x20licence\x20expired','pricing-table-id','children','clone','priority','namespaceAliases','16px','Fast\x20Subscription','Trial\x20licence','Namespace\x20Aliases','<br>','addClass','12mkQGgq','#node-input-maxChunkCount','protocol','namespaceUri','prctbl_1OJt49BCNccbzsVzkaANOgFL','opcua\x20endpoint','#node-config-input-name','extra','connection','append','\x0aIt\x20will\x20expire\x20','each','#node-input-maxMessageSize','#editable-list-aliases-container','\x20or\x20visit\x20our\x20website\x20to\x20renew\x20your\x20license\x20and\x20regain\x20access\x20to\x20our\x20services.','addItem','/opcua-for-node-red/config','status','class','log','appendTo','subscriptions','val','#node-input-useTransport','.node-input-alias-alias','Your\x20licence\x20has\x20expired\x20-\x20Freeware\x20mode\x20activated','.red-ui-tray-body','length','done','/licenceInfo','auto','maxNotificationsPerPublish','requestedLifetimeCount','#node-input-sendBufferSize','endpoint-tab-namespace-aliases','\x20or\x20visit\x20our\x20website\x20to\x20renew\x20your\x20license\x20and\x20regain\x20access\x20to\x20our\x20services.̀','template','removeAttr','stringify','#toggleAdvancedSection','catch','node-input-alias-index','assign','show','1yIUqFx','requestedPublishingInterval','<stripe-pricing-table/>','UserName','width','#node-config-input-userPrivatekey','.section-userIdentityType-Certificate','function','split','licence-widget-','#section-TransportSettings','#node-input-certificate','endpoint','Your\x20license\x20has\x20expired.\x0aPlease\x20contact\x20our\x20\x20','<p>','POST','8835870VOGqFt','node-input-alias-namespace-uri','prop','30px','#node-config-input-password','typedInput','\x20to\x20acquire\x20a\x20license.','editableList','checked','.section-userIdentityType-UserName','requestedMaxKeepAliveCount','Please\x20contact\x20','.input-requestedPublishingInterval','change','label','.red-ui-editableList-item-remove','removeClass','#node-config-input-securityPolicy','height:\x20100%;max-height:\x20100%;','Your\x20trial\x20license\x20has\x20expired.\x0aPlease\x20visit\x20','fa\x20fa-check-circle','match','endpoint-tab-subscriptions','invalid\x20userIdentityType\x20','invalid\x20securityMode\x20','config','fa\x20fa-calendar-time','Subscriptions','items','<span>','3275994XLBNgc','.input-isDefault','pk_live_51HsE1sBCNccbzsVzt7zaq2uv20pkryWllAzvZgZd5AhwFI9A3qBIeOJvJwQF08lDoLpFqLjwmyA79wnPnYLsvKjt009f00VpCW','attr','#checkCertificate','#section-Advanced','then','style','widget','Freeware\x20:\x20(Trial\x20licence\x20expired)','Your\x20license\x20is\x20currently\x20invalid.','margin-top:\x2020px;','html','.section-securityPolicy','floor','isDefault','empty','#node-config-input-securityMode','element','-failure','licenceInfo','OpcUa-Endpoint2',':checked','\x20hours','1720807NNUTnm','FAILED','err','find','create','fetching\x20failed\x20with\x20error','licence-widget-icon','<div\x20class=\x22alias-entry\x22>','css','TRIAL','#extract-aliases','click','3959254tCDGZA','absolute','Freeware\x20licence','None','name','data-i','Your\x20licence\x20is\x20valid.','150px','text','http://opcfoundation.org/UA/','opc.tcp://opcuademo.sterfive.com:26543/UA/SampleServer','9lbFyiE','#subscriptions-container','message','PROFESSIONAL','application/json','00000000-0000-0000-0000-000000000000','tomorrow','hide','join','.input-requestedLifetimeCount','json','password','throw','737114cPBOsr','next','onPremiseServerHost','Basic256Sha256','.input-priority','readonly','.input-name','.input-maxNotificationsPerPublish','36CeeYev','in\x20','#node-config-input-userCertificate','tabs','.input-requestedMaxKeepAliveCount','#node-config-input-useTransport','height:\x20100%\x20!important;','map','\x20-\x20','EXPIRED','<unknown>','nodes','180px','disabled','552LfLAwb','licence-widget-details','publishable-key','userIdentityType','42707RAVZCS','endpoint-tab-connection','resize','push','#node-config-input-userIdentityType','#node-config-input-userName'];_0x3748=function(){return _0x42cd38;};return _0x3748();}
|
9
8
|
</script>
|
10
9
|
<script type="text/x-red" data-template-name="OpcUa-Endpoint2">
|
11
10
|
<div id="licenceWidget"></div>
|
File without changes
|