Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # Name: ebl-image-edit v2.0
- # Type: Admin/Public side plugin
- # Advanced Image Editing Plugin for Textpattern
- # Author: Eric Limegrover
- # URL: http://www.syserror.net/
- # Recommended load order: 5
- # .....................................................................
- # This is a plugin for Textpattern - http://textpattern.com/
- # To install: textpattern > admin > plugins
- # Paste the following text into the 'Install plugin' box:
- # .....................................................................
- YToxMTp7czo0OiJuYW1lIjtzOjE0OiJlYmwtaW1hZ2UtZWRpdCI7czo2OiJhdXRob3IiO3M6
- MTU6IkVyaWMgTGltZWdyb3ZlciI7czoxMDoiYXV0aG9yX3VyaSI7czoyNDoiaHR0cDovL3d3
- dy5zeXNlcnJvci5uZXQvIjtzOjc6InZlcnNpb24iO3M6MzoiMi4wIjtzOjExOiJkZXNjcmlw
- dGlvbiI7czo0NToiQWR2YW5jZWQgSW1hZ2UgRWRpdGluZyBQbHVnaW4gZm9yIFRleHRwYXR0
- ZXJuIjtzOjQ6ImNvZGUiO3M6MzU5NTE6Ii8qaW5jbHVkZSgncGx1Z2luRGV2L2VibC1pbWFn
- ZS1lZGl0LnBocCcpOyovDQoNCmlmIChAdHhwaW50ZXJmYWNlID09ICdhZG1pbicpDQogICAg
- ew0KICAgICAgICBhZGRfcHJpdnMoJ2VibGltZ2VkaXRleHQnLCAnMScpOyANCiAgICAgICAg
- cmVnaXN0ZXJfdGFiKCdleHRlbnNpb25zJywgJ2VibGltZ2VkaXRleHQnLCAnRUJMIEltYWdl
- IEVkaXQnKTsNCiAgICAgICAgcmVnaXN0ZXJfY2FsbGJhY2soJ2VibF9pbWFnZV9lZGl0X2V4
- dCcsICdlYmxpbWdlZGl0ZXh0Jyk7DQoNCiAgICBzd2l0Y2ggKGdwcygnZXZlbnQnKSkNCiAg
- ICAgICAgew0KICAgICAgICAgICAgY2FzZSAnZWJscm90YXRlbGVmdCc6DQogICAgICAgICAg
- ICAgICAgZWJsX2ltZ19lZGl0KGdwcygnaW1naWQnKSwgJ2xlZnQnLCAncm90YXRlJyk7IGV4
- aXQoKTsNCiAgICAgICAgICAgICAgICBicmVhazsNCiAgICAgICAgICAgIGNhc2UgJ2VibHJv
- dGF0ZXJpZ2h0JzoNCiAgICAgICAgICAgICAgICBlYmxfaW1nX2VkaXQoZ3BzKCdpbWdpZCcp
- LCAncmlnaHQnLCAncm90YXRlJyk7IGV4aXQoKTsNCiAgICAgICAgICAgICAgICBicmVhazsN
- CiAgICAgICAgICAgIGNhc2UgJ2VibHJvdGF0ZXVwJzoNCiAgICAgICAgICAgICAgICBlYmxf
- aW1nX2VkaXQoZ3BzKCdpbWdpZCcpLCAndXAnLCAncm90YXRlJyk7IGV4aXQoKTsNCiAgICAg
- ICAgICAgICAgICBicmVhazsNCiAgICAgICAgICAgIGNhc2UgJ2VibGltZ2Nyb3AnOg0KICAg
- ICAgICAgICAgICAgIGVibF9pbWdfZWRpdChncHMoJ2ltZ2lkJyksICcnLCAnY3JvcCcpOyBl
- eGl0KCk7DQogICAgICAgICAgICAgICAgYnJlYWs7DQogICAgICAgICAgICBjYXNlICdlYmxp
- bWdjcm9wJzoNCiAgICAgICAgICAgICAgICBlYmxfcHJvY2Vzc1VwbG9hZChncHMoJ3VwbG9h
- ZFR5cGUnKSk7DQogICAgICAgICAgICAgICAgYnJlYWs7DQogICAgICAgICAgICBjYXNlICdl
- Ymx0bWJjcm9wJzoNCiAgICAgICAgICAgICAgICBlYmxfaW1nX2VkaXQoZ3BzKCdpbWdpZCcp
- LCAnJywgJ3RodW1ibmFpbCcpOyBleGl0KCk7DQogICAgICAgICAgICAgICAgYnJlYWs7DQog
- ICAgICAgICAgICBjYXNlICdlYmxyc3ppbWcnOg0KICAgICAgICAgICAgICAgIGVibF9pbWdf
- ZWRpdChncHMoJ2ltZ2lkJyksICcnLCAncnN6Jyk7IGV4aXQoKTsNCiAgICAgICAgICAgICAg
- ICBicmVhazsNCiAgICAgICAgICAgIGNhc2UgJ2VibGJhY2t1cGltZyc6DQogICAgICAgICAg
- ICAgICAgZWJsYmFja3VwaW1nKGdwcygnaW1naWQnKSk7DQogICAgICAgICAgICAgICAgYnJl
- YWs7DQogICAgICAgICAgICBjYXNlICdlYmxyZXN0b3JlaW1nJzoNCiAgICAgICAgICAgICAg
- ICBlYmxyZXN0b3JlaW1nKGdwcygnaW1naWQnKSk7DQogICAgICAgICAgICAgICAgYnJlYWs7
- DQogICAgICAgICAgICBjYXNlICdlYmxyZW1vdmVpbWcnOg0KICAgICAgICAgICAgICAgIGVi
- bHJlbW92ZWltZyhncHMoJ2ltZ2lkJykpOw0KICAgICAgICAgICAgICAgIGJyZWFrOyAgICAg
- ICAgICAgICAgICANCiAgICAgICAgfQ0KICAgIH0NCg0KZnVuY3Rpb24gZWJsX2ltYWdlX2Vk
- aXRfZXh0KCkgDQp7DQogICAgDQogICAgJHN0ZXAgPSBncHMoJ3N0ZXAnKTsNCiAgICANCiAg
- ICAkbWVzc2FnZSA9IChpc19jYWxsYWJsZSgkc3RlcCkpID8gJHN0ZXAoKSA6ICcnOw0KICAg
- IA0KICAgIGVjaG8gcGFnZXRvcCgiRUJMIEltYWdlIEVkaXQgUHJlZmVyZW5jZXMiLCAkbWVz
- c2FnZSk7DQogICAgDQogICAgZWNobyAgICAnPGRpdiBzdHlsZT0ibWFyZ2luOiAwIGF1dG87
- IHdpZHRoOiA0MDBweDsiPicubi4NCiAgICAgICAgICAgIGVibF9saXN0X2Nyb3BTdHlsZXMo
- KS4NCiAgICAgICAgICAgICc8L2Rpdj4nOyAgICANCn0NCg0KZnVuY3Rpb24gZWJsX2xpc3Rf
- Y3JvcFN0eWxlcygpDQp7DQogICAgZ2xvYmFsICR0eHBfdXNlciwgJHBhdGhfdG9fc2l0ZSwg
- JGltZ19kaXI7DQogICAgDQogICAgJGJhY2t1cGRpciAgICAgPSAkcGF0aF90b19zaXRlIC4g
- Jy8nIC4gJGltZ19kaXIgLiAnL2JhY2t1cC8nOw0KICAgICAgICBpZighZmlsZV9leGlzdHMo
- JGJhY2t1cGRpcikpIHsNCiAgICAgICAgICAgIA0KICAgICAgICAkY3JlYXRlRUJMdGFibGUg
- PSBzYWZlX3F1ZXJ5KCJDUkVBVEUgVEFCTEUgYCIuUEZYLiJlYmxfY3JvcGAgKCIuDQogICAg
- ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYG5hbWVgIHZhcmNoYXIoNjQpIE5P
- VCBOVUxMLCIuDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYHdpZHRo
- YCB2YXJjaGFyKDE2KSBOT1QgTlVMTCwiLg0KICAgICAgICAgICAgICAgICAgICAgICAgICAg
- ICAgICAgICAgImBoZWlnaHRgIHZhcmNoYXIoMTYpIE5PVCBOVUxMLCIuDQogICAgICAgICAg
- ICAgICAgICAgICAgICAgICAgICAgICAgICAiYHRodW1iYCB2YXJjaGFyKDEpIE5PVCBOVUxM
- IGRlZmF1bHQgJzAnLCIuDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAi
- VU5JUVVFIEtFWSBgbmFtZWAgKGBuYW1lYCkiLg0KICAgICAgICAgICAgICAgICAgICAgICAg
- ICAgICAgICAgICAgIik7Iik7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
- ICANCiAgICAgICAgJHJzID0gc2FmZV9pbnNlcnQoJ2VibF9jcm9wJywgImBuYW1lYCA9ICdJ
- bWFnZSBDcm9wJywgYHdpZHRoYCA9ICc1MDAnLGBoZWlnaHRgID0gJzUwMCcsIGB0aHVtYmAg
- PSAnMCciKTsNCiAgICAgICAgJHJzID0gc2FmZV9pbnNlcnQoJ2VibF9jcm9wJywgImBuYW1l
- YCA9ICdUaHVtYm5haWwgU3F1YXJlJywgYHdpZHRoYCA9ICcxMDAnLGBoZWlnaHRgID0gJzEw
- MCcsIGB0aHVtYmAgPSAnMSciKTsNCg0KICAgICAgICAgICAgJG1rZGlyID0gKEBta2Rpcigk
- YmFja3VwZGlyKSkgPyBUUlVFIDogRkFMU0U7DQogICAgICAgICAgICBpZigkbWtkaXIpIHsg
- DQogICAgICAgICAgICAgICAgZWNobyAiPHAgIHN0eWxlPVwidGV4dC1hbGlnbjogY2VudGVy
- OyBcIj4kYmFja3VwZGlyIGRpZCBub3QgZXhpc3QgcHJldmlvdXNseS4gTm93IGNyZWF0ZWQu
- PC9wPiI7DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgIGVjaG8gIjxw
- IHN0eWxlPVwidGV4dC1hbGlnbjogY2VudGVyOyBmb250LXdlaWdodDogYm9sZDsgXCI+VW5h
- YmxlIHRvIGNyZWF0ZSAkYmFja3VwZGlyLiBQbGVhc2UgY2hlY2sgeW91ciBmb2xkZXIgcGVy
- bWlzc2lvbnMuPC9wPiI7DQogICAgICAgICAgICB9DQogICAgICAgIH0NCg0KDQogDQogICAg
- ZWNobyBuLm4uaGVkKGdUeHQoJ0Nyb3AgU3R5bGVzJyksIDEsICcgc3R5bGU9InRleHQtYWxp
- Z246IGNlbnRlcjsgbWFyZ2luLXRvcDoyZW07IGZvbnQtd2VpZ2h0OiBib2xkOyInKS4NCiAg
- ICAgICAgbi5uLnN0YXJ0VGFibGUoJ2xpc3QnKS4NCiAgICAgICAgbi50cigNCiAgICAgICAg
- ICAgIG4uaENlbGwoZ1R4dCgnbmFtZScpKS4NCiAgICAgICAgICAgIG4uaENlbGwoZ1R4dCgn
- d2lkdGgnKSkuDQogICAgICAgICAgICBuLmhDZWxsKCkuDQogICAgICAgICAgICBuLmhDZWxs
- KGdUeHQoJ2hlaWdodCcpKS4NCiAgICAgICAgICAgIG4uaENlbGwoZ1R4dCgndGh1bWJuYWls
- JykpLg0KICAgICAgICAgICAgbi5oQ2VsbChnVHh0KCdkZWxldGUnKSkNCiAgICAgICAgKTsN
- Cg0KICAgICRycyA9IHNhZmVfcm93c19zdGFydCgnKicsICdlYmxfY3JvcCcsICcxPTEgT1JE
- RVIgQlkgYG5hbWVgJyk7DQoNCiAgICAkb3V0ID0gJyc7DQogICAgDQogICAgaWYgKCRycykN
- CiAgICB7IA0KICAgICAgICB3aGlsZSAoJGEgPSBuZXh0Um93KCRycykpDQogICAgICAgIHsg
- DQogICAgICAgICAgICAkaXNDaGVja2VkID0gKCRhWyd0aHVtYiddID09IDEpID8gJ3llcycg
- OiAnbm8nOw0KICAgICAgICAgICAgJG91dCAuPSBuLnRyKA0KICAgICAgICAgICAgICAgICAg
- ICB0ZCggaHRtbHNwZWNpYWxjaGFycygkYVsnbmFtZSddKSkuDQogICAgICAgICAgICAgICAg
- ICAgIHRkKCBodG1sc3BlY2lhbGNoYXJzKCRhWyd3aWR0aCddKSkuDQogICAgICAgICAgICAg
- ICAgICAgIHRkKCBodG1sc3BlY2lhbGNoYXJzKCcgWCAnKSkuDQogICAgICAgICAgICAgICAg
- ICAgIHRkKCBodG1sc3BlY2lhbGNoYXJzKCRhWydoZWlnaHQnXSkpLg0KICAgICAgICAgICAg
- ICAgICAgICB0ZCggJGlzQ2hlY2tlZCkuDQogICAgICAgICAgICAgICAgICAgIHRkKCANCiAg
- ICAgICAgICAgICAgICAgICAgICAgIGRMaW5rKCdlYmxpbWdlZGl0ZXh0JywgJ2VibF9jcm9w
- ZGVsZXRlJywgJ3N0eWxlbmFtZScsICRhWyduYW1lJ10pDQogICAgICAgICAgICAgICAgICAg
- ICkNCiAgICAgICAgICAgICAgICApOw0KICAgICAgICB9DQogICAgfQ0KICAgIA0KICAgIGVj
- aG8gZm9ybSgkb3V0KTsNCiAgICANCiAgICBlY2hvIG4udHIoDQogICAgICAgIGZvcm0oDQog
- ICAgICAgICAgICB0ZCggZklucHV0KCd0ZXh0JywgJ25hbWUnLCAnJywgJ2VkaXQnLCcnLCcn
- LDEwKSApLg0KICAgICAgICAgICAgdGQoIGZJbnB1dCgndGV4dCcsICd3aWR0aCcsICcnLCAn
- ZWRpdCcsJycsJycsNSkgKS4NCiAgICAgICAgICAgIHRkKCkuDQogICAgICAgICAgICB0ZCgg
- ZklucHV0KCd0ZXh0JywgJ2hlaWdodCcsICcnLCAnZWRpdCcsJycsJycsNSkgKS4NCiAgICAg
- ICAgICAgIHRkKCAnPGlucHV0IG5hbWU9ImVibGlzdG1iIiBjbGFzcz0iY2hlY2tib3giIHR5
- cGU9ImNoZWNrYm94Ij4nKS4NCiAgICAgICAgICAgIHRkKCBmSW5wdXQoJ3N1Ym1pdCcsICdh
- ZGQnLCBnVHh0KCdhZGQnKSwgJ3NtYWxsZXJib3gnKSApLg0KICAgICAgICAgICAgbi5lSW5w
- dXQoJ2VibGltZ2VkaXRleHQnKS4NCiAgICAgICAgICAgIG4uc0lucHV0KCdlYmxfY3JvcHNh
- dmVuZXcnKQ0KICAgICAgICApDQogICAgKTsNCg0KICAgIGVjaG8gbi5lbmRUYWJsZSgpOw0K
- fQ0KDQpmdW5jdGlvbiBzZWxlY3RTdHlsZXMoJHRodW1iID0gJzAnKSANCnsNCg0KICAgICRy
- cyA9IHNhZmVfcm93c19zdGFydCgnKicsICdlYmxfY3JvcCcsICd0aHVtYj0nLiR0aHVtYi4n
- IE9SREVSIEJZIGBuYW1lYCcpOw0KDQogICAgJG91dCA9ICI8c2VsZWN0IG5hbWU9XCJjdXN0
- b21zaXplXCIgaWQ9XCJjdXN0b21zaXplJHRodW1iXCI+JyArICIubi4NCiAgICAgICAgICAg
- Iic8b3B0aW9uIHZhbHVlPVwiQ3VzdG9tXCI+Q3VzdG9tPC9vcHRpb24+JyArICIubjsNCiAg
- ICANCiAgICBpZiAoJHJzKQ0KICAgIHsgDQogICAgICAgIHdoaWxlICgkYSA9IG5leHRSb3co
- JHJzKSkNCiAgICAgICAgew0KICAgICAgICAgICAgJHdpZHRoICAgID0gJGFbJ3dpZHRoJ107
- DQogICAgICAgICAgICAkaGVpZ2h0ICAgID0gJGFbJ2hlaWdodCddOw0KICAgICAgICAgICAg
- JG5hbWUgICAgID0gJGFbJ25hbWUnXTsNCg0KICAgICAgICAgICAgJG91dCAuPSAiJzxvcHRp
- b24gdmFsdWU9Ii4kd2lkdGguIngiLiRoZWlnaHQuIlw+Ii5odG1sc3BlY2lhbGNoYXJzKCRu
- YW1lKS4iIDogJHdpZHRoIHggJGhlaWdodCA8L29wdGlvbj4nICsgIi5uOw0KICAgICAgICB9
- DQogICAgfQ0KICAgICRvdXQgLj0gIic8L3NlbGVjdD4iOw0KICAgIA0KICAgIHJldHVybiAk
- b3V0Ow0KfQ0KDQpmdW5jdGlvbiBlYmxfY3JvcHNhdmVuZXcoKQ0Kew0KDQogICAgZXh0cmFj
- dChkb1NsYXNoKHBzYShhcnJheSgnbmFtZScsICd3aWR0aCcsJ2hlaWdodCcsJ2VibGlzdG1i
- JykpKSk7DQogICAgDQogICAgaWYgKCRuYW1lICYmIGlzX251bWVyaWMoJHdpZHRoKSAmJiBp
- c19udW1lcmljKCRoZWlnaHQpKQ0KICAgIHsgDQogICAgICAgICRlYmxpc3RtYiA9ICgkZWJs
- aXN0bWIgPT0gIm9uIikgPyAxIDogMDsNCiAgICAgICAgDQogICAgICAgICRycyA9IEBzYWZl
- X2luc2VydCgnZWJsX2Nyb3AnLCAiDQogICAgICAgICAgICBgbmFtZWAgICAgID0gJyRuYW1l
- JywNCiAgICAgICAgICAgIGB3aWR0aGAgICAgID0gJyR3aWR0aCcsDQogICAgICAgICAgICBg
- aGVpZ2h0YCA9ICckaGVpZ2h0JywNCiAgICAgICAgICAgIGB0aHVtYmAgID0gJyRlYmxpc3Rt
- YiciKTsNCg0KICAgICAgICByZXR1cm4gKCRycykgPw0KICAgICAgICAgICAgIk5ldyBjcm9w
- IHN0eWxlIGNyZWF0ZWQiIDogDQogICAgICAgICAgICAiPGI+RXJyb3I6PC9iPiBEdXBsaWNh
- dGUgTmFtZSI7ICAgIA0KICAgICAgICANCiAgICB9IGVsc2Ugew0KICAgICAgICANCiAgICAg
- ICAgcmV0dXJuICI8Yj5XaWR0aDwvYj4gYW5kIDxiPkhlaWdodDwvYj4gbXVzdCBiZSBudW1l
- cmljIHZhbHVlcyI7DQogICAgfQ0KICAgIA0KICAgIHJldHVybiBGQUxTRTsNCn0NCg0KZnVu
- Y3Rpb24gZWJsX2Nyb3BkZWxldGUoKQ0Kew0KICAgICRuYW1lID0gcHMoJ3N0eWxlbmFtZScp
- Ow0KICAgIHJldHVybiAoc2FmZV9kZWxldGUoJ2VibF9jcm9wJywgImBuYW1lYCA9ICciLmRv
- U2xhc2goJG5hbWUpLiInIikpID8gDQogICAgICAgICI8Yj5EZWxldGVkPC9iPiAkbmFtZSIg
- OiANCiAgICAgICAgIjxiPkVycm9yPC9iPiBVbmFibGUgdG8gZGVsZXRlICRuYW1lIjsgDQp9
- DQoNCmlmKGdwcygnc3RlcCcpID09ICdpbWFnZV9lZGl0JyB8fCBncHMoJ3N0ZXAnKSA9PSAn
- dGh1bWJuYWlsX2luc2VydCcgfHwgZ3BzKCdzdGVwJykgPT0gJ2ltYWdlX3JlcGxhY2UnIHx8
- IGdwcygnc3RlcCcpID09ICd0aHVtYm5haWxfY3JlYXRlJyB8fCBncHMoJ3N0ZXAnKSA9PSAn
- dGh1bWJuYWlsX2RlbGV0ZScgfHwgZ3BzKCdzdGVwJykgPT0gJ2ltYWdlX2luc2VydCcpIHsN
- CiAgICByZWdpc3Rlcl9jYWxsYmFjaygnZWJsX2ltZ2Nyb3AnLCAnYWRtaW5fc2lkZScsICdo
- ZWFkX2VuZCcpOw0KfQ0KDQpmdW5jdGlvbiBlYmxfaW1nY3JvcCgpIA0Kew0KDQogICAgZ2xv
- YmFsICRwYXRoX3RvX3NpdGUsJGltZ19kaXI7DQogICAgICAgICAgICAgICAgICAgIA0KICAg
- IEAkaWQgPSAoZ3BzKCdpZCcpID4gMCkgPyBncHMoJ2lkJykgOiAkR0xPQkFMU1snSUQnXTsN
- CiAgICANCiAgICBpZighaXNfbnVtZXJpYygkaWQpKSByZXR1cm47DQogICAgDQogICAgJGlt
- YWdlZGlyID0gaHUgLiAkaW1nX2RpciAuICcvJzsNCiAgICANCiAgICAkcnMgPSBAc2FmZV9y
- b3coIiosIHVuaXhfdGltZXN0YW1wKGRhdGUpIGFzIHVEYXRlIiwgInR4cF9pbWFnZSIsICJp
- ZCA9ICRpZCIpOw0KDQogICAgaWYgKCRycykgew0KICAgICAgICBleHRyYWN0KCRycyk7DQog
- ICAgICAgICRmaWxlbmFtZSA9ICRpZC4kZXh0Ow0KICAgICAgICAkaW1nc3JjID0gJGltYWdl
- ZGlyLiRmaWxlbmFtZTsNCiAgICAgICAgJHRtYnNyYyA9ICRpbWFnZWRpci4kaWQuJ3QnLiRl
- eHQ7DQogICAgfQ0KICAgIA0KICAgICRjdXN0b21UaHVtYlNpemUgPSBzZWxlY3RTdHlsZXMo
- MSk7DQogICAgJGN1c3RvbUltZ1NpemUgPSBzZWxlY3RTdHlsZXMoMCk7DQogICAgDQogICAg
- ZWNobyA8PDwgRU9GDQo8c2NyaXB0IHNyYz0iamNyb3AvanF1ZXJ5Lkpjcm9wLnBhY2suanMi
- Pjwvc2NyaXB0Pg0KPGxpbmsgaHJlZj0iamNyb3AvanF1ZXJ5Lkpjcm9wLmNzcyIgcmVsPSJz
- dHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgLz4NCjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+
- DQojZWJsaW1ncHJvY2VzcyB7DQogICAgbWFyZ2luOiA1cHg7DQogICAgZm9udC13ZWlnaHQ6
- IGJvbGQ7IA0KICAgIGZvbnQtc2l6ZTogMTRwdDsNCiAgICBjb2xvcjogIzU1MDAwMDsNCiAg
- ICBwYWRkaW5nOiAwIDAgMCAyMHB4Ow0KICAgIGJhY2tncm91bmQ6IHVybCgnamNyb3AvcHJv
- Y2Vzc2luZy5naWYnKSBsZWZ0IG5vLXJlcGVhdDsNCn0NCmEgeyBwYWRkaW5nOiAwIDAgM3B4
- O30NCmE6dmlzaXRlZCB7fSBhOmhvdmVyIHt9IGE6YWN0aXZlIHsgYm9yZGVyOiAwOyB9DQph
- OmZvY3VzIHsgb3V0bGluZTogMDsgdGV4dC1kZWNvcmF0aW9uOiBub25lO30gDQo8L3N0eWxl
- Pg0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPg0KJChkb2N1bWVudCkucmVhZHko
- ZnVuY3Rpb24oKSB7IC8vIGluaXQgZXZlcnl0aGluZw0KDQogICAgJCgiI2xpc3QgdGQ6Zmly
- c3QgaW1nIikuYXR0cignaWQnLCdtYWluSW1nJyk7IC8vIEdpdmUgb3VyIGltYWdlIGFuIElE
- DQogICAgJCgiI2xpc3QgdGQ6Zmlyc3QiKS5hdHRyKCdpZCcsJ21haW5JbWdURCcpOyAvLyBu
- YW1lIHRoZSB0YWJsZSB0byBtYWtlIGl0IGVhc2llciB0byBmaW5kLg0KDQogICAgJCgnI2lt
- YWdlLXRodW1ibmFpbCB0ZDpmaXJzdCBpbWcnKS5hdHRyKCdpZCcsJ3RodW1iJyk7IC8vIEdp
- dmUgb3VyIHRodW1ibmFpbCBpbWFnZSBhbiBJRA0KICAgICQoJyNpbWFnZS10aHVtYm5haWwg
- dGQ6Zmlyc3QnKS5hdHRyKCdpZCcsJ3RodW1iVEQnKTsgLy8gbmFtZSB0aGUgVEQgdGhhdCBj
- b250YWlucyB0aGUgaW1hZ2Ugc28gd2UgY2FuIHN3YXAgaXQgb3V0Lg0KDQogICAgaWYoISAk
- KCcjdGh1bWJURCcpLmxlbmd0aCApIHsgICQoIiNsaXN0IHRkOmVxKDEpIikuYXR0cignaWQn
- LCd0aHVtYlREJyk7ICB9DQoNCiAgICAkKCcjbWFpbkltZ1REJykucHJlcGVuZCgnPGRpdiBp
- ZD0iZWJsY3JvcHVpIj48L2Rpdj4nKTsNCiAgICAkKCcjZWJsY3JvcHVpJykuYXBwZW5kKCc8
- ZmllbGRzZXQgc3R5bGU9Im1pbi13aWR0aDogNTAwcHg7Ij48bGVnZW5kPkVkaXQgSW1hZ2U8
- L2xlZ2VuZD48ZGl2IGlkPSJlYmxjb250YWluZXIiPjwvZGl2PjwvZmllbGRzZXQ+Jyk7DQog
- ICAgDQogICAgJCgnI2VibGNvbnRhaW5lcicpLmNzcyh7J21hcmdpbic6JzEwcHgnfSk7DQog
- ICAgJCgnI2VibGNvbnRhaW5lcicpLmFwcGVuZCgNCiAgICAgICAgICAgICAgICAgICAgICAg
- ICc8cD4nICsgDQogICAgICAgICAgICAgICAgICAgICAgICAgJzxhIGhyZWY9IiMiIGlkPSJl
- Ymxjcm9wbG5rIiA+Q3JvcDwvYT4gfCAnICsgDQogICAgICAgICAgICAgICAgICAgICAgICAg
- JzxhIGhyZWY9IiMiIGlkPSJlYmx0bWJsbmsiID5UaHVtYm5haWw8L2E+IHwgJyArIA0KICAg
- ICAgICAgICAgICAgICAgICAgICAgICc8YSBocmVmPSIjIiBpZD0iZWJscm90YXRlbG5rIiA+
- Um90YXRlPC9hPiB8ICcgKw0KICAgICAgICAgICAgICAgICAgICAgICAgICc8YSBocmVmPSIj
- IiBpZD0iZWJscmVzaXplbG5rIiA+UmVzaXplPC9hPiB8ICcgKyANCiAgICAgICAgICAgICAg
- ICAgICAgICAgICAnPGEgaHJlZj0iIyIgaWQ9ImVibGJhY2t1cGxuayIgPkJhY2t1cDwvYT4n
- ICsgDQogICAgICAgICAgICAgICAgICAgICAgICAnPC9wPicNCiAgICAgICAgICAgICAgICAg
- ICAgICAgICk7DQogICAgDQogICAgJCgnI2VibGNvbnRhaW5lcicpLmFwcGVuZCgnPGRpdiBp
- ZD0iZWJsY3JvcGRhdGEiPjwvZGl2PjxkaXYgaWQ9ImVibGNyb3BjdHJsIj48L2Rpdj48ZGl2
- IGlkPSJlYmx0bWJjdHJsIj48L2Rpdj48ZGl2IGlkPSJlYmxyb3RhdGVjdHJsIj48L2Rpdj48
- ZGl2IGlkPSJlYmxyZXNpemUiPjwvZGl2PjxkaXYgaWQ9ImVibGJhY2t1cGltZyI+PC9kaXY+
- PGRpdiBpZD0iZWJsaGlkZGVuZGF0YSI+PC9kaXY+PGRpdiBpZD0iZWJsaW1ncHJvY2VzcyI+
- IFByb2Nlc3NpbmcuLi48L2Rpdj4nKTsNCiAgICANCiAgICAkKCcjZWJsY3JvcGN0cmwnKS5h
- cHBlbmQoDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnPGlucHV0IHR5cGU9
- ImhpZGRlbiIgaWQ9ImVibGNyb3BIaCIgbmFtZT0iZWJsY3JvcEgiIHZhbHVlPSIiIC8+JyAr
- DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnPGlucHV0IHR5cGU9ImhpZGRl
- biIgaWQ9ImVibGNyb3BXaCIgbmFtZT0iZWJsY3JvcFciIHZhbHVlPSIiIC8+JyArDQogICAg
- ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnPGlucHV0IHR5cGU9ImhpZGRlbiIgaWQ9
- ImVibGNyb3BYaCIgbmFtZT0iZWJsY3JvcFhoIiB2YWx1ZT0iIiAvPicgKw0KICAgICAgICAg
- ICAgICAgICAgICAgICAgICAgICAgICAgJzxpbnB1dCB0eXBlPSJoaWRkZW4iIGlkPSJlYmxj
- cm9wWWgiIG5hbWU9ImVibGNyb3BZaCIgdmFsdWU9IiIgLz4nDQogICAgICAgICAgICAgICAg
- ICAgICAgICAgICAgKTsNCiAgICANCiAgICAkKCcjZWJsY3JvcGN0cmwnKS5hcHBlbmQoDQog
- ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICc8cD5Vc2UgcHJlZGVmaW5lZCBzaXpl
- OiAkY3VzdG9tSW1nU2l6ZSB8IDxpbnB1dCBuYW1lPSJhc3BlY3RyYXRpbyIgdHlwZT0iY2hl
- Y2tib3giIGlkPSJpbWdhc3BlY3RyYXRpbyIgdmFsdWU9IiIgLz4gTG9jayBBc3BlY3QgUmF0
- aW8gPC9wPicgKw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnPGlucHV0IHR5
- cGU9InN1Ym1pdCIgbmFtZT0iJGlkIiBpZD0iZWJsaW1nY3JvcCIgdmFsdWU9IkNyb3AgT3Jp
- Z2luYWwiIGNsYXNzPSJzbWFsbGVyYm94IiAvPicNCiAgICAgICAgICAgICAgICAgICAgICAg
- ICAgICApOw0KICAgIA0KICAgICQoJyNlYmx0bWJjdHJsJykuYXBwZW5kKCAgICAgICAgICAg
- ICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICc8
- L3A+PHA+VXNlIHByZWRlZmluZWQgc2l6ZTogJGN1c3RvbVRodW1iU2l6ZSB8ICcgKyANCiAg
- ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJzxpbnB1dCBuYW1lPSJhc3BlY3RyYXRp
- byIgdHlwZT0iY2hlY2tib3giIGlkPSJ0bWJhc3BlY3RyYXRpbyIgdmFsdWU9IiIgLz4gTG9j
- ayBBc3BlY3QgUmF0aW8gPC9wPjwvcD48cD4gVGh1bWJuYWlsIERpbWVuc2lvbnM6ICcgKyAN
- CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICcoIFc6IDxpbnB1dCBuYW1lPSJl
- Ymx0bWJXIiB0eXBlPSJ0ZXh0IiBpZD0iZWJsdG1iVyIgc2l6ZT0iNSIgbWF4bGVuZ3RoPSI0
- IiB2YWx1ZT0iMTAwIiAvPiApIHggJyArDQogICAgICAgICAgICAgICAgICAgICAgICAgICAg
- ICAgICAnKCBIOiA8aW5wdXQgbmFtZT0iZWJsdG1iSCIgdHlwZT0idGV4dCIgaWQ9ImVibHRt
- YkgiIHNpemU9IjUiIG1heGxlbmd0aD0iNCIgdmFsdWU9IjEwMCIgLz4gKScgKyANCiAgICAg
- ICAgICAgICAgICAgICAgICAgICAgICAgICAgICd8IDxpbnB1dCBuYW1lPSJjcm9wdGh1bWIi
- IHR5cGU9ImNoZWNrYm94IiBpZD0iY3JvcHRodW1iIiBjaGVja2VkPSJ0cnVlIi8+IFJlc2l6
- ZSBUaHVtYm5haWwgJyArIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnPC9w
- PjxwPicgKyAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnPGlucHV0IHR5
- cGU9ImJ1dHRvbiIgbmFtZT0iJGlkIiBpZD0iZWJsdG1iY3JvcCIgdmFsdWU9IkNyZWF0ZSBU
- aHVtYm5haWwiIGNsYXNzPSJzbWFsbGVyYm94IiAvPicgKyANCiAgICAgICAgICAgICAgICAg
- ICAgICAgICAgICAgICAgJzwvcD4nDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgKTsN
- CiAgICANCiAgICAkKCcjZWJscm90YXRlY3RybCcpLmFwcGVuZCgNCiAgICAgICAgICAgICAg
- ICAgICAgICAgICAgICAgICAgJzxwPlJvdGF0ZSA8aW5wdXQgdHlwZT0iYnV0dG9uIiBuYW1l
- PSIkaWQiIGlkPSJyb3RhdGVyaWdodCIgdmFsdWU9IkNsb2Nrd2lzZSA5MCZkZWc7IiBjbGFz
- cz0ic21hbGxlcmJveCIgLz4gJyArDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
- ICAnPGlucHV0IHR5cGU9ImJ1dHRvbiIgbmFtZT0iJGlkIiBpZD0icm90YXRlbGVmdCIgdmFs
- dWU9IkNvdW50ZXJjbG9ja3dpc2UgOTAmZGVnOyAiIGNsYXNzPSJzbWFsbGVyYm94IiAvPiAn
- ICsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICc8aW5wdXQgdHlwZT0iYnV0
- dG9uIiBuYW1lPSIkaWQiIGlkPSJyb3RhdGV1cCIgdmFsdWU9IjE4MCAmZGVnOyAiIGNsYXNz
- PSJzbWFsbGVyYm94IiAvPicgKyANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
- JzwvcD4nDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgKTsNCiAgICAgICAgICAgICAg
- ICAgICAgICAgICAgICANCiAgICAkKCcjZWJsYmFja3VwaW1nJykuYXBwZW5kKA0KICAgICAg
- ICAgICAgICAgICAgICAgICAgICAgICAgICAnPHA+PGlucHV0IHR5cGU9ImJ1dHRvbiIgbmFt
- ZT0iJGlkIiBpZD0iZWJsYmFja3VwIiB2YWx1ZT0iQmFja3VwIiBjbGFzcz0ic21hbGxlcmJv
- eCIgLz4gJyArDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICc8aW5wdXQgdHlw
- ZT0iYnV0dG9uIiBuYW1lPSIkaWQiIGlkPSJlYmxyZXN0b3JlIiB2YWx1ZT0iUmVzdG9yZSIg
- Y2xhc3M9InNtYWxsZXJib3giIC8+ICcgKyANCiAgICAgICAgICAgICAgICAgICAgICAgICAg
- ICAgICAgJzxpbnB1dCB0eXBlPSJidXR0b24iIG5hbWU9IiRpZCIgaWQ9ImVibGRlbGV0ZUJh
- Y2t1cCIgdmFsdWU9IlJlbW92ZSBCYWNrdXAiIGNsYXNzPSJzbWFsbGVyYm94IiAvPicgKyAN
- CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJzwvcD4nDQogICAgICAgICAgICAg
- ICAgICAgICAgICAgICAgKTsNCiAgICANCiAgICAkKCcjZWJscmVzaXplJykuYXBwZW5kKA0K
- ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnPHA+Q3VycmVudCBJbWFnZSBTaXpl
- IDogV1sgPHNwYW4gaWQ9Im9yaWdXIj48L3NwYW4+IF0geCBIWyA8c3BhbiBpZD0ib3JpZ0gi
- Pjwvc3Bhbj4gXTwvcD4nICsgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICc8
- cD48bGFiZWwgZm9yPSJlYmxyc3pXIj5XaWR0aDogPC9sYWJlbD48aW5wdXQgdHlwZT0idGV4
- dCIgbmFtZT0iZWJscnN6VyIgaWQ9ImVibHJzelciIC8+IHggJyArDQogICAgICAgICAgICAg
- ICAgICAgICAgICAgICAgICAgICAnPGxhYmVsIGZvcj0iZWJscnN6SCI+SGVpZ2h0OiA8L2xh
- YmVsPjxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJlYmxyc3pIIiBpZD0iZWJscnN6SCIgLz4g
- JyArDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJzxpbnB1dCB0eXBlPSJi
- dXR0b24iIG5hbWU9IiRpZCIgaWQ9ImVibHJzemltZyIgdmFsdWU9IlJlc2l6ZSIgY2xhc3M9
- InNtYWxsZXJib3giIC8+JyArDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICc8
- L3A+Jw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7DQogICAgDQogICAgJCgnI2Vi
- bGNyb3BkYXRhJykuYXBwZW5kKA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAn
- PHA+Q3VycmVudCBDcm9wIEFyZWEgKFc6IDxzcGFuIHN0eWxlPSJmb250LXdlaWdodDogYm9s
- ZDsiIGlkPSJlYmxjcm9wVyI+MDwvc3Bhbj4pIHggKEg6IDxzcGFuIHN0eWxlPSJmb250LXdl
- aWdodDogYm9sZDsiIGlkPSJlYmxjcm9wSCI+MDwvc3Bhbj4pPC9wPicNCiAgICAgICAgICAg
- ICAgICAgICAgICAgICAgICApOw0KICAgIA0KICAgICQoJyNlYmxjcm9wY3RybCwjZWJscm90
- YXRlY3RybCwjZWJscmVzaXplLCNlYmx0bWJjdHJsLCNlYmxjcm9wZGF0YSwjZWJsaW1ncHJv
- Y2VzcywjZWJsYmFja3VwaW1nJykuaGlkZSgpOw0KICAgIA0KICAgIA0KICAgIC8vIHNldCBv
- dXIgZGVmYXVsdHMNCiAgICB3aW5kb3cuY3JvcCA9IGZhbHNlOw0KICAgIHdpbmRvdy50bWJj
- cm9wID0gZmFsc2U7DQoNCiAgICAkKCcjbWFpbkltZycpLndyYXAoJzxkaXYgaWQ9ImltZ0Rp
- diI+PC9kaXYnKTsNCiAgICAkKCcjaW1nYXNwZWN0cmF0aW8sI3RtYmFzcGVjdHJhdGlvJyku
- YXR0cignZGlzYWJsZWQnLCB0cnVlKS5hdHRyKCdjaGVja2VkJywgZmFsc2UpOw0KDQogICAg
- DQpmdW5jdGlvbiByZW1vdmVDcm9wKCkgew0KICAgIC8vIFJlbW92ZXMgakNyb3AgaWYgZm91
- bmQuDQogICAgaWYgKCAkKCcuamNyb3AtaG9sZGVyJykubGVuZ3RoICkgew0KICAgICAgICB2
- YXIgeCA9ICQoJyNpbWdEaXYnKTsNCiAgICAgICAgDQogICAgICAgIC8vIGdlbmVyYXRlIHJh
- bmRvbSBudW1iZXIgdG8gYXBwZW5kIHRvIGltZyB1cmwgdG8gYXZvaWQgY2FjaGUgaXNzdWVz
- DQogICAgICAgIHZhciByYW5kID0gTWF0aC5yYW5kb20oKTsNCiAgICAgICAgDQogICAgICAg
- IC8vIGhpZGUgV2lkdGgvSGVpZ2h0IGRhdGENCiAgICAgICAgJCgnI2VibGNyb3BkYXRhJyku
- aGlkZSgpOyANCiAgICAgICAgDQogICAgICAgIC8vIHJlcGxhY2UgcmVtb3ZlZCBjb250ZW50
- IHdpdGgganVzdCB0aGUgaW1hZ2UuDQogICAgICAgIHguZW1wdHkoKS5hcHBlbmQoJzxpbWcg
- c3JjPSIkaW1nc3JjPycgKyByYW5kICsnIiBpZD0ibWFpbkltZyIgLz4nKTsNCiAgICAgICAg
- d2luZG93Lm15Q3JvcCA9ICcnOw0KICAgIH0NCiAgICANCiAgICB3aW5kb3cuY3JvcE9uID0g
- ZmFsc2U7DQogICAgd2luZG93LmNyb3AgPSBmYWxzZTsNCiAgICB3aW5kb3cudG1iY3JvcCA9
- IGZhbHNlOw0KfQ0KDQpmdW5jdGlvbiBhZGRDcm9wKCkgew0KICAgIC8vIEJpbmQgakNyb3Ag
- dG8gI21haW5JbWcNCiAgICB2YXIgYXNwZWN0cmF0aW8gPSAkKCcjYXNwZWN0cmF0aW8nKS5h
- dHRyKCdjaGVja2VkJykgPyAxIDogMDsgLy8gVGhhbmtzIE1hbmZyZQ0KDQogICAgLy8gRGlz
- cGxheSBIIFggVw0KICAgICQoJyNlYmxjcm9wZGF0YScpLnNob3coKTsgDQoNCiAgICAvLyBj
- aGVjayBpZiB0aGUgamNyb3AgaG9sZGVyIGlzIGFscmVhZHkgYWN0aXZlLiBMb2FkIGlmIG5v
- dCBhY3RpdmUuDQogICAgaWYgKCEgJCgnLmpjcm9wLWhvbGRlcicpLmxlbmd0aCApIHsNCiAg
- ICAgICAgd2luZG93Lm15Q3JvcCA9ICQuSmNyb3AoJyNtYWluSW1nJyx7IA0KICAgICAgICAg
- ICAgb25TZWxlY3Q6IHNob3dDb29yZHMsDQogICAgICAgICAgICBvbkNoYW5nZTogc2hvd0Nv
- b3JkcywNCiAgICAgICAgICAgIGFzcGVjdFJhdGlvOiBhc3BlY3RyYXRpbw0KICAgICAgICB9
- KTsNCiAgICBteUNyb3Auc2V0U2VsZWN0KFsgMCwgMCwgMTAwLCAxNTAgXSk7DQogICAgfQ0K
- ICAgIHdpbmRvdy5jcm9wT24gPSB0cnVlOw0KfQ0KICAgIA0KICAgIA0KICAgICQoJyNlYmxj
- cm9wbG5rJykuY2xpY2soZnVuY3Rpb24gKCkgew0KICAgICAgICAkKHRoaXMpLmNzcyh7J2Zv
- bnQtd2VpZ2h0JzonYm9sZCd9KTsNCiAgICAgICAgJCgnI2VibHJlc2l6ZWxuaywjZWJscm90
- YXRlbG5rLCNlYmx0bWJsbmssI2VibGJhY2t1cGxuaycpLmNzcygnZm9udC13ZWlnaHQnLCdu
- b3JtYWwnKTsNCiAgICAgICAgJCgnI2VibHJvdGF0ZWN0cmwsI2VibHRtYmN0cmwsI2VibHJl
- c2l6ZSwjZWJscm90YXRlY3RybCwjZWJsYmFja3VwaW1nJykuaGlkZSgpOw0KICAgICAgICAk
- KCcjZWJsY3JvcGN0cmwnKS50b2dnbGUoKTsNCg0KICAgIA0KICAgICAgICBpZih3aW5kb3cu
- Y3JvcCAmJiB3aW5kb3cuY3JvcE9uKSB7IC8vIHVzZXIgY2xvc2VkIG1haW4gY3JvcCBmdW5j
- dGlvbg0KICAgICAgICAgICAgd2luZG93LmNyb3AgPSBmYWxzZTsNCiAgICAgICAgICAgIHJl
- bW92ZUNyb3AoKTsgIC8vIHJlbW92ZSB0aGUgY3JvcCBiaW5kaW5nDQogICAgICAgIH0gZWxz
- ZSBpZiAoIXdpbmRvdy5jcm9wICYmIHdpbmRvdy5jcm9wT24pIHsgLy8gdXNlciBzd2l0Y2hl
- ZCBmcm9tIHRodW1iIGNyb3ANCiAgICAgICAgICAgIHdpbmRvdy50bWJjcm9wID0gZmFsc2U7
- DQogICAgICAgICAgICB3aW5kb3cuY3JvcCA9IHRydWU7DQogICAgICAgICAgICAkKCcjaW1n
- YXNwZWN0cmF0aW8sI3RtYmFzcGVjdHJhdGlvJykuYXR0cignZGlzYWJsZWQnLCB0cnVlKS5h
- dHRyKCdjaGVja2VkJywgZmFsc2UpOw0KICAgICAgICAgICAgJCgnI2N1c3RvbXNpemUwJyku
- dmFsKCdDdXN0b20nKTsNCiAgICAgICAgICAgIG15Q3JvcC5zZXRPcHRpb25zKHthc3BlY3RS
- YXRpbzogMH0pOw0KICAgICAgICAgICAgbXlDcm9wLmFuaW1hdGVUbyhbIDAsIDAsIDEwMCwg
- MTUwIF0pOw0KICAgICAgICB9IGVsc2UgeyAvLyB1c2VyIG9wZW5lZCBtYWluIGNyb3AgZnVu
- Y3Rpb24NCiAgICAgICAgICAgIGFkZENyb3AoKTsgLy8gYWRkIGNyb3AgYmluZGluZw0KICAg
- ICAgICAgICAgd2luZG93LmNyb3AgPSB0cnVlOw0KICAgICAgICB9DQogICAgfSk7DQoNCiAg
- ICAkKCcjZWJsdG1ibG5rJykuY2xpY2soZnVuY3Rpb24gKCkgew0KICAgICAgICAkKHRoaXMp
- LmNzcygnZm9udC13ZWlnaHQnLCAnYm9sZCcpOw0KICAgICAgICAkKCcjZWJscmVzaXplbG5r
- LCNlYmxyb3RhdGVsbmssI2VibGNyb3BsbmssI2VibGJhY2t1cGxuaycpLmNzcygnZm9udC13
- ZWlnaHQnLCdub3JtYWwnKTsNCiAgICAgICAgJCgnI2VibHRtYmN0cmwnKS50b2dnbGUoKTsN
- CiAgICAgICAgJCgnI2VibHJvdGF0ZWN0cmwsI2VibGNyb3BjdHJsLCNlYmxyZXNpemUsI2Vi
- bHJvdGF0ZWN0cmwsI2VibGJhY2t1cGltZycpLmhpZGUoKTsNCiAgICANCiAgICAgICAgaWYo
- d2luZG93LnRtYmNyb3AgJiYgd2luZG93LmNyb3BPbikgeyAvLyB1c2VyIGNsb3NlZCB0aHVt
- YiBjcm9wDQogICAgICAgICAgICB3aW5kb3cudG1iY3JvcCA9IGZhbHNlOyANCiAgICAgICAg
- ICAgIHJlbW92ZUNyb3AoKTsNCiAgICAgICAgfSBlbHNlIGlmICghd2luZG93LnRtYmNyb3Ag
- JiYgd2luZG93LmNyb3BPbikgeyAvLyB1c2VyIHN3aXRjaGVkIGZyb20gbWFpbiBjcm9wDQog
- ICAgICAgICAgICB3aW5kb3cudG1iY3JvcCA9IHRydWU7DQogICAgICAgICAgICB3aW5kb3cu
- Y3JvcCA9IGZhbHNlOw0KICAgICAgICAgICAgJCgnI2ltZ2FzcGVjdHJhdGlvLCN0bWJhc3Bl
- Y3RyYXRpbycpLmF0dHIoJ2Rpc2FibGVkJywgdHJ1ZSkuYXR0cignY2hlY2tlZCcsIGZhbHNl
- KTsNCiAgICAgICAgICAgICQoJyNjdXN0b21zaXplMScpLnZhbCgnQ3VzdG9tJyk7DQogICAg
- ICAgICAgICBteUNyb3Auc2V0T3B0aW9ucyh7YXNwZWN0UmF0aW86IDB9KTsNCiAgICAgICAg
- ICAgIG15Q3JvcC5hbmltYXRlVG8oWyAwLCAwLCAxMDAsIDE1MCBdKTsNCiAgICAgICAgfSBl
- bHNlIHsgLy8gdXNlciBvcGVucyB0aHVtYiBjcm9wDQogICAgICAgICAgICBhZGRDcm9wKCk7
- DQogICAgICAgICAgICB3aW5kb3cudG1iY3JvcCA9IHRydWU7DQogICAgICAgIH0NCiAgICAN
- CiAgICB9KTsNCg0KICAgICQoJyNlYmxyb3RhdGVsbmsnKS5jbGljayhmdW5jdGlvbiAoKSB7
- DQogICAgICAgICQodGhpcykuY3NzKCdmb250LXdlaWdodCcsICdib2xkJyk7DQogICAgICAg
- ICQoJyNlYmxyZXNpemVsbmssI2VibHRtYmxuaywjZWJsY3JvcGxuaywjZWJsYmFja3VwbG5r
- JykuY3NzKCdmb250LXdlaWdodCcsJ25vcm1hbCcpOw0KICAgICAgICAkKCcjZWJsY3JvcGN0
- cmwsI2VibHRtYmN0cmwsI2VibHJlc2l6ZSwjZWJsY3JvcGRhdGEsI2VibGJhY2t1cGltZycp
- LmhpZGUoKTsNCiAgICAgICAgJCgnI2VibHJvdGF0ZWN0cmwnKS50b2dnbGUoKTsNCg0KICAg
- ICAgICByZW1vdmVDcm9wKCk7DQogICAgICAgIHdpbmRvdy5teUNyb3AgPSAnICc7DQogICAg
- ICAgIHdpbmRvdy5jcm9wID0gZmFsc2U7DQogICAgfSk7DQoNCiAgICAkKCcjZWJscmVzaXpl
- bG5rJykuY2xpY2soZnVuY3Rpb24gKCkgew0KICAgICAgICAkKHRoaXMpLmNzcygnZm9udC13
- ZWlnaHQnLCAnYm9sZCcpOw0KICAgICAgICAkKCcjZWJscm90YXRlbG5rLCNlYmx0bWJsbmss
- I2VibGNyb3BsbmssI2VibGJhY2t1cGxuaycpLmNzcygnZm9udC13ZWlnaHQnLCdub3JtYWwn
- KTsNCiAgICAgICAgJCgnI2VibHJvdGF0ZWN0cmwsI2VibGNyb3BjdHJsLCNlYmx0bWJjdHJs
- LCNlYmxyb3RhdGVjdHJsLCNlYmxjcm9wZGF0YSwjZWJsYmFja3VwaW1nJykuaGlkZSgpOw0K
- ICAgICAgICAkKCcjZWJscmVzaXplJykudG9nZ2xlKCk7DQogICAgICAgIA0KICAgICAgICB2
- YXIgaW1nVyA9ICQoJyNtYWluSW1nJykud2lkdGgoKTsNCiAgICAgICAgdmFyIGltZ0ggPSAk
- KCcjbWFpbkltZycpLmhlaWdodCgpOw0KICAgICAgICANCiAgICAgICAgJCgnI29yaWdXJyku
- dGV4dChpbWdXKTsNCiAgICAgICAgJCgnI29yaWdIJykudGV4dChpbWdIKTsNCiAgICAgICAg
- DQogICAgICAgIHJlbW92ZUNyb3AoKTsgICAgDQogICAgfSk7DQoNCiAgICAkKCcjcm90YXRl
- bGVmdCcpLmNsaWNrKGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmVtb3ZlQ3JvcCgpOw0KICAg
- ICAgICB2YXIgaWQgPSAkKCcjcm90YXRlcmlnaHQnKS5hdHRyKCduYW1lJyk7DQoNCiAgICAg
- ICAgdmFyIHJhbmQgPSBNYXRoLnJhbmRvbSgpOw0KICAgICAgICAkKCcjZWJsaW1ncHJvY2Vz
- cycpLnNob3coKTsNCiAgICAgICAgJC5hamF4KHsNCiAgICAgICAgICAgIHR5cGU6ICJQT1NU
- IiwNCiAgICAgICAgICAgIHVybDogImluZGV4LnBocD9ldmVudD1lYmxyb3RhdGVsZWZ0Jmlt
- Z2lkPSIraWQsDQogICAgICAgICAgICBzdWNjZXNzOiBmdW5jdGlvbihodG1sKXsNCiAgICAg
- ICAgICAgICAgICBpZihodG1sLm1hdGNoKC9zdWNjZXNzLykpIHsNCiAgICAgICAgICAgICAg
- ICAgICAgJCgnI2VibGltZ3Byb2Nlc3MnKS5oaWRlKCk7DQogICAgICAgICAgICAgICAgICAg
- IHZhciB4ID0gJCgnI2ltZ0RpdicpOw0KICAgICAgICAgICAgICAgICAgICB4LmVtcHR5KCku
- YXBwZW5kKCc8aW1nIHNyYz0iJGltZ3NyYz8nICsgcmFuZCArJyIgaWQ9Im1haW5JbWciIC8+
- Jyk7ICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICB9IGVsc2Ugew0KICAg
- ICAgICAgICAgICAgICAgICBhbGVydChodG1sKTsNCiAgICAgICAgICAgICAgICB9DQogICAg
- ICAgICAgICB9DQogICAgICAgIH0pOw0KICAgIH0pOw0KDQogICAgJCgnI3JvdGF0ZXJpZ2h0
- JykuY2xpY2soZnVuY3Rpb24gKCkgew0KICAgICAgICByZW1vdmVDcm9wKCk7DQogICAgICAg
- IHZhciBpZCA9ICQoJyNyb3RhdGVyaWdodCcpLmF0dHIoJ25hbWUnKTsNCiAgICAgICAgdmFy
- IHJhbmQgPSBNYXRoLnJhbmRvbSgpOw0KICAgICAgICAkKCcjZWJsaW1ncHJvY2VzcycpLnNo
- b3coKTsNCiAgICAgICAgJC5hamF4KHsNCiAgICAgICAgICAgIHR5cGU6ICJQT1NUIiwNCiAg
- ICAgICAgICAgIHVybDogImluZGV4LnBocD9ldmVudD1lYmxyb3RhdGVyaWdodCZpbWdpZD0i
- K2lkLA0KICAgICAgICAgICAgc3VjY2VzczogZnVuY3Rpb24oaHRtbCl7DQogICAgICAgICAg
- ICAgICAgaWYoaHRtbC5tYXRjaCgvc3VjY2Vzcy8pKSB7DQogICAgICAgICAgICAgICAgICAg
- ICQoJyNlYmxpbWdwcm9jZXNzJykuaGlkZSgpOw0KICAgICAgICAgICAgICAgICAgICB2YXIg
- eCA9ICQoJyNpbWdEaXYnKTsNCiAgICAgICAgICAgICAgICAgICAgeC5lbXB0eSgpLmFwcGVu
- ZCgnPGltZyBzcmM9IiRpbWdzcmM/JyArIHJhbmQgKyciIGlkPSJtYWluSW1nIiAvPicpOw0K
- ICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgIGFsZXJ0KGh0
- bWwpOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCiAgICAgICAgfSk7DQog
- ICAgfSk7DQoNCiAgICAkKCcjcm90YXRldXAnKS5jbGljayhmdW5jdGlvbiAoKSB7DQogICAg
- ICAgIHJlbW92ZUNyb3AoKTsNCiAgICAgICAgdmFyIGlkID0gJCgnI3JvdGF0ZXJpZ2h0Jyku
- YXR0cignbmFtZScpOw0KICAgICAgICB2YXIgcmFuZCA9IE1hdGgucmFuZG9tKCk7DQogICAg
- ICAgICQoJyNlYmxpbWdwcm9jZXNzJykuc2hvdygpOw0KICAgICAgICAkLmFqYXgoew0KICAg
- ICAgICAgICAgdHlwZTogIlBPU1QiLA0KICAgICAgICAgICAgdXJsOiAiaW5kZXgucGhwP2V2
- ZW50PWVibHJvdGF0ZXVwJmltZ2lkPSIraWQsDQogICAgICAgICAgICBzdWNjZXNzOiBmdW5j
- dGlvbihodG1sKXsNCiAgICAgICAgICAgICAgICBpZihodG1sLm1hdGNoKC9zdWNjZXNzLykp
- IHsNCiAgICAgICAgICAgICAgICAgICAgJCgnI2VibGltZ3Byb2Nlc3MnKS5oaWRlKCk7DQog
- ICAgICAgICAgICAgICAgICAgIHZhciB4ID0gJCgnI2ltZ0RpdicpOw0KICAgICAgICAgICAg
- ICAgICAgICB4LmVtcHR5KCkuYXBwZW5kKCc8aW1nIHNyYz0iJGltZ3NyYz8nICsgcmFuZCAr
- JyIgaWQ9Im1haW5JbWciIC8+Jyk7DQogICAgICAgICAgICAgICAgfSBlbHNlIHsNCiAgICAg
- ICAgICAgICAgICAgICAgYWxlcnQoaHRtbCk7DQogICAgICAgICAgICAgICAgfQ0KICAgICAg
- ICAgICAgfQ0KICAgICAgICB9KTsNCiAgICB9KTsNCg0KICAgICQoJyNlYmxpbWdjcm9wJyku
- Y2xpY2soZnVuY3Rpb24gKCkgew0KICAgICAgICB2YXIgaWQgPSAkKCcjZWJsaW1nY3JvcCcp
- LmF0dHIoJ25hbWUnKTsNCiAgICAgICAgdmFyIEggPSAkKCcjZWJsY3JvcEhoJykuYXR0cign
- dmFsdWUnKTsNCiAgICAgICAgdmFyIFcgPSAkKCcjZWJsY3JvcFdoJykuYXR0cigndmFsdWUn
- KTsNCiAgICAgICAgdmFyIFggPSAkKCcjZWJsY3JvcFhoJykuYXR0cigndmFsdWUnKTsNCiAg
- ICAgICAgdmFyIFkgPSAkKCcjZWJsY3JvcFloJykuYXR0cigndmFsdWUnKTsNCiAgICAgICAg
- JCgnI2VibGltZ3Byb2Nlc3MnKS5zaG93KCk7DQogICAgICAgIHZhciByYW5kID0gTWF0aC5y
- YW5kb20oKTsNCiAgICAgICAgJC5hamF4KHsNCiAgICAgICAgICAgIHR5cGU6ICJQT1NUIiwN
- CiAgICAgICAgICAgIHVybDogImluZGV4LnBocD9ldmVudD1lYmxpbWdjcm9wJmltZ2lkPSIr
- aWQsDQogICAgICAgICAgICBkYXRhOiAgICAgIiZlYmxjcm9wWGg9IiArIFggKyAiJmVibGNy
- b3BZaD0iICsgWSArICImZWJsY3JvcFc9IiArIFcgKyAiJmVibGNyb3BIPSIgKyBILA0KICAg
- ICAgICAgICAgc3VjY2VzczogZnVuY3Rpb24oaHRtbCl7DQogICAgICAgICAgICAgICAgJCgn
- I2VibGltZ3Byb2Nlc3MnKS5oaWRlKCk7DQogICAgICAgICAgICAgICAgaWYoaHRtbC5tYXRj
- aCgvc3VjY2Vzcy8pKSB7DQogICAgICAgICAgICAgICAgICAgIHJlbW92ZUNyb3AoKTsNCiAg
- ICAgICAgICAgICAgICAgICAgJCgnI2VibGNyb3BjdHJsJykudG9nZ2xlKCk7DQogICAgICAg
- ICAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgICAgICAgICAgYWxlcnQoaHRtbCk7DQog
- ICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9KTsNCiAgICB9KTsN
- CiAgICANCiAgICAkKCcjZWJsdG1iY3JvcCcpLmNsaWNrKGZ1bmN0aW9uICgpIHsNCiAgICAg
- ICAgdmFyIGlkID0gJCgnI2VibGltZ2Nyb3AnKS5hdHRyKCduYW1lJyk7DQogICAgICAgIHZh
- ciBIID0gJCgnI2VibGNyb3BIaCcpLmF0dHIoJ3ZhbHVlJyk7DQogICAgICAgIHZhciBXID0g
- JCgnI2VibGNyb3BXaCcpLmF0dHIoJ3ZhbHVlJyk7DQogICAgICAgIHZhciBYID0gJCgnI2Vi
- bGNyb3BYaCcpLmF0dHIoJ3ZhbHVlJyk7DQogICAgICAgIHZhciBZID0gJCgnI2VibGNyb3BZ
- aCcpLmF0dHIoJ3ZhbHVlJyk7DQogICAgICAgIA0KICAgICAgICB2YXIgdEggPSAkKCcjZWJs
- dG1iSCcpLmF0dHIoJ3ZhbHVlJyk7DQogICAgICAgIHZhciB0VyA9ICQoJyNlYmx0bWJXJyku
- YXR0cigndmFsdWUnKTsNCg0KICAgICAgICAkKCcjZWJsaW1ncHJvY2VzcycpLnNob3coKTsN
- CiAgICAgICAgdmFyIHJzelRtYiA9ICQoJyNjcm9wdGh1bWInKS5hdHRyKCdjaGVja2VkJykg
- PyAncnN6JyA6ICdubyc7DQogICAgICAgICAgICANCiAgICAgICAgdmFyIHJhbmQgPSBNYXRo
- LnJhbmRvbSgpOw0KICAgICAgICAkLmFqYXgoew0KICAgICAgICAgICAgdHlwZTogIlBPU1Qi
- LA0KICAgICAgICAgICAgdXJsOiAiaW5kZXgucGhwP2V2ZW50PWVibHRtYmNyb3AmaW1naWQ9
- IitpZCwNCiAgICAgICAgICAgIGRhdGE6ICImcnN6VG1iPSIgKyByc3pUbWIgKyAiJmVibGNy
- b3BYaD0iICsgWCArICImZWJsY3JvcFloPSIgKyBZICsgIiZlYmxjcm9wVz0iICsgVyArICIm
- ZWJsY3JvcEg9IiArIEggKyAiJmVibHRtYkg9IiArIHRIICsgIiZlYmx0bWJXPSIgKyB0VywN
- CiAgICAgICAgICAgIHN1Y2Nlc3M6IGZ1bmN0aW9uKGh0bWwpew0KICAgICAgICAgICAgICAg
- ICQoJyNlYmxpbWdwcm9jZXNzJykuaGlkZSgpOw0KICAgICAgICAgICAgICAgIGlmKGh0bWwu
- bWF0Y2goL3N1Y2Nlc3MvKSkgew0KICAgICAgICAgICAgICAgICAgICByZW1vdmVDcm9wKCk7
- DQogICAgICAgICAgICAgICAgICAgICQoJyN0aHVtYlREJykuZW1wdHkoKS5hcHBlbmQoJzxp
- bWcgc3JjPSIkdG1ic3JjPycgKyByYW5kICsnIiBpZD0idGh1bWIiIC8+Jyk7DQogICAgICAg
- ICAgICAgICAgICAgICQoJyNlYmx0bWJjdHJsJykudG9nZ2xlKCk7DQogICAgICAgICAgICAg
- ICAgfSBlbHNlIHsNCiAgICAgICAgICAgICAgICAgICAgYWxlcnQoaHRtbCk7DQogICAgICAg
- ICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9KTsNCiAgICB9KTsNCiAgICAN
- CiAgICAkKCcjZWJscnN6aW1nJykuY2xpY2soZnVuY3Rpb24gKCkgew0KICAgICAgICB2YXIg
- aWQgPSAkKCcjZWJscnN6aW1nJykuYXR0cignbmFtZScpOw0KICAgICAgICB2YXIgSCA9ICQo
- JyNlYmxyc3pIJykuYXR0cigndmFsdWUnKTsNCiAgICAgICAgdmFyIFcgPSAkKCcjZWJscnN6
- VycpLmF0dHIoJ3ZhbHVlJyk7DQogICAgDQogICAgICAgICQoJyNlYmxpbWdwcm9jZXNzJyku
- c2hvdygpOw0KICAgICAgICAgICAgDQogICAgICAgIHZhciByYW5kID0gTWF0aC5yYW5kb20o
- KTsNCiAgICAgICAgJC5hamF4KHsNCiAgICAgICAgICAgIHR5cGU6ICJQT1NUIiwNCiAgICAg
- ICAgICAgIHVybDogImluZGV4LnBocD9ldmVudD1lYmxyc3ppbWcmaW1naWQ9IitpZCwNCiAg
- ICAgICAgICAgIGRhdGE6ICImZWJscnN6SD0iICsgSCArICImZWJscnN6Vz0iICsgVywNCiAg
- ICAgICAgICAgIHN1Y2Nlc3M6IGZ1bmN0aW9uKGh0bWwpew0KICAgICAgICAgICAgICAgICQo
- JyNlYmxpbWdwcm9jZXNzJykuaGlkZSgpOw0KICAgICAgICAgICAgICAgIGlmKGh0bWwubWF0
- Y2goL3N1Y2Nlc3MvKSkgew0KICAgICAgICAgICAgICAgICAgICB2YXIgeCA9ICQoJyNpbWdE
- aXYnKTsNCiAgICAgICAgICAgICAgICAgICAgeC5lbXB0eSgpLmFwcGVuZCgnPGltZyBzcmM9
- IiRpbWdzcmM/JyArIHJhbmQgKyciIGlkPSJtYWluSW1nIiAvPicpOw0KICAgICAgICAgICAg
- ICAgICAgICAvLyANCiAgICAgICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAg
- ICAgICBhbGVydChodG1sKTsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQog
- ICAgICAgIH0pOw0KICAgIH0pOw0KDQoNCiAgICAkKCcjZWJsYmFja3VwbG5rJykuY2xpY2so
- ZnVuY3Rpb24gKCkgew0KICAgICAgICAkKHRoaXMpLmNzcygnZm9udC13ZWlnaHQnLCAnYm9s
- ZCcpOw0KICAgICAgICAkKCcjZWJscm90YXRlbG5rLCAjZWJscmVzaXplbG5rLCNlYmx0bWJs
- bmssI2VibGNyb3BsbmsnKS5jc3MoJ2ZvbnQtd2VpZ2h0Jywnbm9ybWFsJyk7DQogICAgICAg
- ICQoJyNlYmxyb3RhdGVjdHJsLCNlYmxjcm9wY3RybCwjZWJsdG1iY3RybCwjZWJscmVzaXpl
- LCNlYmxyb3RhdGVjdHJsLCNlYmxjcm9wZGF0YScpLmhpZGUoKTsNCiAgICAgICAgJCgnI2Vi
- bGJhY2t1cGltZycpLnRvZ2dsZSgpOw0KICAgIH0pOw0KICAgIA0KICAgICQoJyNlYmxiYWNr
- dXAnKS5jbGljayhmdW5jdGlvbiAoKSB7DQogICAgICAgIHZhciBpZCA9ICQodGhpcykuYXR0
- cignbmFtZScpOw0KICAgICAgICAkKCcjZWJsaW1ncHJvY2VzcycpLnNob3coKTsNCiAgICAg
- ICAgJC5hamF4KHsNCiAgICAgICAgICAgIHR5cGU6ICJQT1NUIiwNCiAgICAgICAgICAgIHVy
- bDogImluZGV4LnBocD9ldmVudD1lYmxiYWNrdXBpbWcmaW1naWQ9IitpZCwNCiAgICAgICAg
- ICAgIHN1Y2Nlc3M6IGZ1bmN0aW9uKGh0bWwpew0KICAgICAgICAgICAgICAgIGlmKGh0bWwu
- bWF0Y2goL3N1Y2Nlc3MvKSkgew0KICAgICAgICAgICAgICAgICAgICAkKCcjZWJsaW1ncHJv
- Y2VzcycpLmhpZGUoKTsNCiAgICAgICAgICAgICAgICAgICAgYWxlcnQoImltYWdlIGJhY2tl
- ZCB1cCIpOw0KICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAg
- ICQoJyNlYmxpbWdwcm9jZXNzJykuaGlkZSgpOw0KICAgICAgICAgICAgICAgICAgICBhbGVy
- dCgiRXJyb3IgOiAiICsgaWQgKyAiICB8ICAgIiArIGh0bWwpOw0KICAgICAgICAgICAgICAg
- IH0NCiAgICAgICAgICAgIH0NCiAgICAgICAgfSk7DQogICAgfSk7DQogICAgDQogICAgJCgn
- I2VibHJlc3RvcmUnKS5jbGljayhmdW5jdGlvbiAoKSB7DQogICAgICAgIHZhciBpZCA9ICQo
- dGhpcykuYXR0cignbmFtZScpOw0KICAgICAgICAkKCcjZWJsaW1ncHJvY2VzcycpLnNob3co
- KTsNCiAgICAgICAgdmFyIHJhbmQgPSBNYXRoLnJhbmRvbSgpOw0KICAgICAgICAkLmFqYXgo
- ew0KICAgICAgICAgICAgdHlwZTogIlBPU1QiLA0KICAgICAgICAgICAgdXJsOiAiaW5kZXgu
- cGhwP2V2ZW50PWVibHJlc3RvcmVpbWcmaW1naWQ9IitpZCwNCiAgICAgICAgICAgIHN1Y2Nl
- c3M6IGZ1bmN0aW9uKGh0bWwpew0KICAgICAgICAgICAgICAgIGlmKGh0bWwubWF0Y2goL3N1
- Y2Nlc3MvKSkgew0KICAgICAgICAgICAgICAgICAgICAkKCcjZWJsaW1ncHJvY2VzcycpLmhp
- ZGUoKTsNCiAgICAgICAgICAgICAgICAgICAgYWxlcnQoImltYWdlIHJlc3RvcmVkIik7DQog
- ICAgICAgICAgICAgICAgICAgIHZhciB4ID0gJCgnI2ltZ0RpdicpOw0KICAgICAgICAgICAg
- ICAgICAgICB4LmVtcHR5KCkuYXBwZW5kKCc8aW1nIHNyYz0iJGltZ3NyYz8nICsgcmFuZCAr
- JyIgaWQ9Im1haW5JbWciIC8+Jyk7DQogICAgICAgICAgICAgICAgfSBlbHNlIHsNCiAgICAg
- ICAgICAgICAgICAgICAgJCgnI2VibGltZ3Byb2Nlc3MnKS5oaWRlKCk7DQogICAgICAgICAg
- ICAgICAgICAgIGFsZXJ0KCJFcnJvciA6ICIgKyBodG1sKTsNCiAgICAgICAgICAgICAgICB9
- DQogICAgICAgICAgICB9DQogICAgICAgIH0pOw0KICAgIH0pOw0KDQogICAgJCgnI2VibGRl
- bGV0ZUJhY2t1cCcpLmNsaWNrKGZ1bmN0aW9uICgpIHsNCiAgICAgICAgdmFyIGlkID0gJCh0
- aGlzKS5hdHRyKCduYW1lJyk7DQogICAgICAgICQoJyNlYmxpbWdwcm9jZXNzJykuc2hvdygp
- Ow0KICAgICAgICB2YXIgcmFuZCA9IE1hdGgucmFuZG9tKCk7DQogICAgICAgICQuYWpheCh7
- DQogICAgICAgICAgICB0eXBlOiAiUE9TVCIsDQogICAgICAgICAgICB1cmw6ICJpbmRleC5w
- aHA/ZXZlbnQ9ZWJscmVtb3ZlaW1nJmltZ2lkPSIraWQsDQogICAgICAgICAgICBzdWNjZXNz
- OiBmdW5jdGlvbihodG1sKXsNCiAgICAgICAgICAgICAgICBpZihodG1sLm1hdGNoKC9zdWNj
- ZXNzLykpIHsNCiAgICAgICAgICAgICAgICAgICAgJCgnI2VibGltZ3Byb2Nlc3MnKS5oaWRl
- KCk7DQogICAgICAgICAgICAgICAgICAgIGFsZXJ0KCJCYWNrdXAgaW1hZ2UgcmVtb3ZlZCIp
- Ow0KICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgICQoJyNl
- YmxpbWdwcm9jZXNzJykuaGlkZSgpOw0KICAgICAgICAgICAgICAgICAgICBhbGVydCgiRXJy
- b3IgOiAiICsgaHRtbCk7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAg
- ICAgICB9KTsNCiAgICB9KTsNCiAgICANCiAgICAkKCcjY3VzdG9tc2l6ZTAsI2N1c3RvbXNp
- emUxJykuY2hhbmdlKGZ1bmN0aW9uICgpIHsNCiAgICAgICAgdmFyIHNpemUgPSAkKHRoaXMp
- LnZhbCgpOw0KICAgICAgICBpZighc2l6ZS5tYXRjaCgiQ3VzdG9tIikpIHsNCiAgICAgICAg
- ICAgICQoJyNpbWdhc3BlY3RyYXRpbywjdG1iYXNwZWN0cmF0aW8nKS5hdHRyKCdkaXNhYmxl
- ZCcsIGZhbHNlKS5hdHRyKCdjaGVja2VkJywgdHJ1ZSk7DQogICAgICAgICAgICB2YXIgeCA9
- IHNpemUuc3BsaXQoJ3gnKVswXTsNCiAgICAgICAgICAgIHZhciB5ID0gc2l6ZS5zcGxpdCgn
- eCcpWzFdOw0KDQogICAgICAgICAgICBteUNyb3AuYW5pbWF0ZVRvKFsgMCwgMCwgeCwgeSBd
- KTsNCiAgICAgICAgICAgIA0KICAgICAgICAgICAgdmFyIGFzcGVjdHJhdGlvID0geCAvIHk7
- DQoNCiAgICAgICAgICAgIHZhciBvcHQgPSB7DQogICAgICAgICAgICAgICAgYXNwZWN0UmF0
- aW86IGFzcGVjdHJhdGlvDQogICAgICAgICAgICB9DQogICAgICAgICAgICANCiAgICAgICAg
- ICAgIG15Q3JvcC5zZXRPcHRpb25zKG9wdCk7DQogICAgICAgIH0gZWxzZSB7DQogICAgICAg
- ICAgICAkKCcjaW1nYXNwZWN0cmF0aW8sI3RtYmFzcGVjdHJhdGlvJykuYXR0cignZGlzYWJs
- ZWQnLCB0cnVlKS5hdHRyKCdjaGVja2VkJywgZmFsc2UpOw0KICAgICAgICAgICAgbXlDcm9w
- LnNldE9wdGlvbnMoe2FzcGVjdFJhdGlvOiAwfSk7DQogICAgICAgIH0NCiAgICAgICAgDQog
- ICAgfSk7DQoNCiAgICAkKCcjaW1nYXNwZWN0cmF0aW8sI3RtYmFzcGVjdHJhdGlvJykuY2hh
- bmdlKGZ1bmN0aW9uICgpIHsNCiAgICAgICAgaWYoJCh0aGlzKS5hdHRyKCdjaGVja2VkJykp
- DQogICAgICAgIHsNCiAgICAgICAgICAgIGlmKHRoaXMuaWQgPT09ICdpbWdhc3BlY3RyYXRp
- bycpIA0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIHZhciBzaXplID0gJCgnI2N1
- c3RvbXNpemUwJykudmFsKCk7DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAg
- ICAgIHZhciBzaXplID0gJCgnI2N1c3RvbXNpemUxJykudmFsKCk7DQogICAgICAgICAgICB9
- DQogICAgICAgICAgICANCiAgICAgICAgICAgIHZhciB4ID0gc2l6ZS5zcGxpdCgneCcpWzBd
- Ow0KICAgICAgICAgICAgdmFyIHkgPSBzaXplLnNwbGl0KCd4JylbMV07ICAgIA0KICAgICAg
- ICAgICAgDQogICAgICAgICAgICB2YXIgYXNwZWN0cmF0aW8gPSB4IC8geTsNCiAgICAgICAg
- ICAgIG15Q3JvcC5hbmltYXRlVG8oWyAwLCAwLCB4LCB5IF0pOw0KDQogICAgICAgIH0gZWxz
- ZSB7DQogICAgICAgICAgICB2YXIgYXNwZWN0cmF0aW8gPSAwOw0KICAgICAgICAgICAgDQog
- ICAgICAgIH0NCg0KICAgICAgICB2YXIgb3B0ID0gew0KICAgICAgICAgICAgYXNwZWN0UmF0
- aW86IGFzcGVjdHJhdGlvDQogICAgICAgIH0NCiAgICAgICAgbXlDcm9wLnNldE9wdGlvbnMo
- b3B0KTsNCiAgICB9KTsNCiAgICANCiAgICAkKCcjY3JvcHRodW1iJykuY2hhbmdlKGZ1bmN0
- aW9uICgpIHsNCiAgICAgICAgICAgIHZhciBjcm9wdGh1bWIgPSAkKHRoaXMpLmF0dHIoJ2No
- ZWNrZWQnKSA/IGZhbHNlIDogdHJ1ZTsNCiAgICAgICAgICAgIA0KICAgICAgICAgICAgaWYo
- Y3JvcHRodW1iKSB7DQogICAgICAgICAgICAgICAgJCgnI2VibHRtYlcsICNlYmx0bWJIJyku
- YXR0cih7ZGlzYWJsZWQ6ImRpc2FibGVkIix2YWx1ZToiIyMjIn0pOw0KICAgICAgICAgICAg
- fSBlbHNlIHsNCiAgICAgICAgICAgICAgICAkKCcjZWJsdG1iVywgI2VibHRtYkgnKS5yZW1v
- dmVBdHRyKCJkaXNhYmxlZCIpOw0KICAgICAgICAgICAgICAgICQoJyNlYmx0bWJXLCAjZWJs
- dG1iSCcpLmF0dHIoInZhbHVlIiwiMTAwIik7DQogICAgICAgICAgICB9DQogICAgfSk7DQp9
- KTsNCg0KZnVuY3Rpb24gc2hvd0Nvb3JkcyhjKSB7DQogICAgICAgICQoJyNlYmxjcm9wWCcp
- LnRleHQoYy54KTsNCiAgICAgICAgJCgnI2VibGNyb3BYaCcpLnZhbChjLngpOw0KICAgICAg
- ICAkKCcjZWJsY3JvcFknKS50ZXh0KGMueSk7DQogICAgICAgICQoJyNlYmxjcm9wWWgnKS52
- YWwoYy55KTsNCiAgICAgICAgJCgnI2VibGNyb3BYMicpLnRleHQoYy54Mik7DQogICAgICAg
- ICQoJyNlYmxjcm9wWDJoJykudmFsKGMueDIpOw0KICAgICAgICAkKCcjZWJsY3JvcFkyJyku
- dGV4dChjLnkyKTsNCiAgICAgICAgJCgnI2VibGNyb3BZMmgnKS52YWwoYy55Mik7DQogICAg
- ICAgIA0KICAgICAgICB2YXIgaW1nVyA9IHplcm9QYWQoYy53LDQpOw0KICAgICAgICB2YXIg
- aW1nSCA9IHplcm9QYWQoYy5oLDQpOw0KICAgICAgICANCiAgICAgICAgJCgnI2VibGNyb3BX
- JykudGV4dChpbWdXKTsNCiAgICAgICAgJCgnI2VibGNyb3BXaCcpLnZhbChjLncpOw0KICAg
- ICAgICAkKCcjZWJsY3JvcEgnKS50ZXh0KGltZ0gpOw0KICAgICAgICAkKCcjZWJsY3JvcEho
- JykudmFsKGMuaCk7DQp9Ow0KDQpmdW5jdGlvbiB6ZXJvUGFkKG51bSxjb3VudCkgew0KICAg
- IHZhciBudW1aZXJvcGFkID0gbnVtICsgJyc7DQogICAgd2hpbGUobnVtWmVyb3BhZC5sZW5n
- dGggPCBjb3VudCkgew0KICAgICAgICBudW1aZXJvcGFkID0gIjAiICsgbnVtWmVyb3BhZDsN
- CiAgICB9DQogICAgcmV0dXJuIG51bVplcm9wYWQ7DQp9DQoNCjwvc2NyaXB0Pg0KRU9GOw0K
- DQp9DQoNCmZ1bmN0aW9uIGVibHJlc3RvcmVpbWcoJGlkKSANCnsNCiAgICBnbG9iYWwgJHBh
- dGhfdG9fc2l0ZSwkaW1nX2RpcjsNCiAgICANCiAgICAkcnMgPSBzYWZlX3JvdygiKiwgdW5p
- eF90aW1lc3RhbXAoZGF0ZSkgYXMgdURhdGUiLCAidHhwX2ltYWdlIiwgImlkID0gJGlkIik7
- DQogICAgICAgIA0KICAgIGlmICgkcnMpIHsNCiAgICAgICAgJGJhY2t1cGRpciAgICAgPSAk
- cGF0aF90b19zaXRlIC4gJy8nIC4gJGltZ19kaXIgLiAnL2JhY2t1cC8nOw0KICAgICAgICAk
- aW1hZ2VkaXIgICAgPSAkcGF0aF90b19zaXRlIC4gJy8nIC4gJGltZ19kaXIgLiAnLyc7DQog
- ICAgICAgIA0KICAgICAgICBleHRyYWN0KCRycyk7DQogICAgICAgICRmaWxlbmFtZSA9ICRp
- ZC4kZXh0Ow0KICAgICAgICAkaW1nc3JjID0gJGltYWdlZGlyLiRmaWxlbmFtZTsgICAgICAg
- IA0KICAgICAgICANCiAgICAgICAgaWYoQGNvcHkoJGJhY2t1cGRpci4kZmlsZW5hbWUsICRp
- bWFnZWRpci4kZmlsZW5hbWUpKSANCiAgICAgICAgew0KICAgICAgICAgICAgbGlzdCgkd2lk
- dGgsICRoZWlnaHQpID0gZ2V0aW1hZ2VzaXplKCRiYWNrdXBkaXIuJGZpbGVuYW1lKTsNCiAg
- ICAgICAgICAgIGlmKHNhZmVfdXBkYXRlKCd0eHBfaW1hZ2UnLCAidyA9ICciLiR3aWR0aC4i
- JywgaCA9ICciLiRoZWlnaHQuIiciLCAiaWQgPSAkaWQiKSkgDQogICAgICAgICAgICB7DQog
- ICAgICAgICAgICAgICAgZWNobyAic3VjY2VzcyI7IGV4aXQoKTsNCiAgICAgICAgICAgIH0g
- ZWxzZSB7DQogICAgICAgICAgICAgICAgZWNobyAiRmlsZSBDb3BpZWQgYnV0IGRiIG5vdCB1
- cGRhdGVkIjsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAg
- IGVjaG8gIkJhY2t1cCBkb2VzIG5vdCBleGlzdCI7DQogICAgICAgIH0NCiAgICB9IGVsc2Ug
- ew0KICAgICAgICBlY2hvICJEYXRhYmFzZSBFcnJvciI7DQogICAgfQ0KDQogICAgZXhpdCgp
- Ow0KfQ0KDQpmdW5jdGlvbiBlYmxiYWNrdXBpbWcoJGlkKSANCnsgICAgDQogICAgZ2xvYmFs
- ICRwYXRoX3RvX3NpdGUsJGltZ19kaXI7DQogICAgDQogICAgJHJzID0gc2FmZV9yb3coIios
- IHVuaXhfdGltZXN0YW1wKGRhdGUpIGFzIHVEYXRlIiwgInR4cF9pbWFnZSIsICJpZCA9ICRp
- ZCIpOw0KDQogICAgaWYgKCRycykgew0KICAgICAgICAkYmFja3VwZGlyICAgICA9ICRwYXRo
- X3RvX3NpdGUgLiAnLycgLiAkaW1nX2RpciAuICcvYmFja3VwLyc7DQogICAgICAgICRpbWFn
- ZWRpciAgICA9ICRwYXRoX3RvX3NpdGUgLiAnLycgLiAkaW1nX2RpciAuICcvJzsNCiAgICAg
- ICAgDQogICAgICAgIGV4dHJhY3QoJHJzKTsNCiAgICAgICAgJGZpbGVuYW1lID0gJGlkLiRl
- eHQ7DQogICAgICAgICRpbWdzcmMgPSAkaW1hZ2VkaXIuJGZpbGVuYW1lOyBlY2hvICRpbWFn
- ZWRpci4kZmlsZW5hbWU7DQogICAgDQogICAgICAgICRjciA9IGNvcHkoJGltYWdlZGlyLiRm
- aWxlbmFtZSwkYmFja3VwZGlyLiRmaWxlbmFtZSk7DQogICAgICAgIGVjaG8gInN1Y2Nlc3Mi
- Ow0KICAgIH0gZWxzZSB7DQogICAgICAgIGVjaG8gIkRhdGFiYXNlIEVycm9yIjsNCiAgICB9
- DQogICAgDQogICAgZXhpdCgpOw0KfQ0KDQpmdW5jdGlvbiBlYmxyZW1vdmVpbWcoJGlkKQ0K
- ew0KICAgIGdsb2JhbCAkcGF0aF90b19zaXRlLCRpbWdfZGlyOw0KDQogICAgJHJzID0gc2Fm
- ZV9yb3coIiosIHVuaXhfdGltZXN0YW1wKGRhdGUpIGFzIHVEYXRlIiwgInR4cF9pbWFnZSIs
- ICJpZCA9ICRpZCIpOw0KDQogICAgaWYgKCRycykgew0KICAgICAgICAkYmFja3VwZGlyICAg
- ICA9ICRwYXRoX3RvX3NpdGUgLiAnLycgLiAkaW1nX2RpciAuICcvYmFja3VwLyc7DQogICAg
- ICAgICRpbWFnZWRpciAgICA9ICRwYXRoX3RvX3NpdGUgLiAnLycgLiAkaW1nX2RpciAuICcv
- JzsNCiAgICAgICAgDQogICAgICAgIGV4dHJhY3QoJHJzKTsNCiAgICAgICAgJGZpbGVuYW1l
- ID0gJGlkLiRleHQ7DQogICAgICAgICRpbWdzcmMgPSAkaW1hZ2VkaXIuJGZpbGVuYW1lOyBl
- Y2hvICRpbWFnZWRpci4kZmlsZW5hbWU7DQoNCiAgICAgICAgJGNyID0gdW5saW5rKCRiYWNr
- dXBkaXIuJGZpbGVuYW1lKTsNCiAgICAgICAgZWNobyAic3VjY2VzcyI7DQogICAgfSBlbHNl
- IHsNCiAgICAgICAgZWNobyAiRGF0YWJhc2UgRXJyb3IiOw0KICAgIH0NCg0KICAgIGV4aXQo
- KTsgICAgICAgIA0KfQ0KDQpmdW5jdGlvbiBlYmxfaW1nX2VkaXQgKCRpZCwgJGRpcmVjdGlv
- biwgJGFjdGlvbikNCnsNCiAgICBnbG9iYWwgJHBhdGhfdG9fc2l0ZSwkaW1nX2RpcjsNCg0K
- ICAgICRpbWFnZWRpciA9ICRwYXRoX3RvX3NpdGUgLiAnLycgLiAkaW1nX2RpciAuICcvJzsN
- Cg0KICAgICRycyA9IHNhZmVfcm93KCIqLCB1bml4X3RpbWVzdGFtcChkYXRlKSBhcyB1RGF0
- ZSIsICJ0eHBfaW1hZ2UiLCAiaWQgPSAkaWQiKTsNCg0KICAgIGlmICgkcnMpIHsNCiAgICAg
- ICAgZXh0cmFjdCgkcnMpOw0KICAgICAgICAkZmlsZW5hbWUgPSAkaWQuJGV4dDsNCg0KICAg
- ICAgICBzd2l0Y2ggKHN0cnRvbG93ZXIoJGV4dCkpIHsNCiAgICAgICAgICAgIGNhc2UgJy5q
- cGcnOg0KICAgICAgICAgICAgICAgICRzcmNpbWFnZSA9IGltYWdlY3JlYXRlZnJvbWpwZWco
- JGltYWdlZGlyIC4gJGZpbGVuYW1lKTsNCiAgICAgICAgICAgICAgICBicmVhazsNCiAgICAg
- ICAgICAgIGNhc2UgJy5naWYnOg0KICAgICAgICAgICAgICAgICRzcmNpbWFnZSA9IGltYWdl
- Y3JlYXRlZnJvbWdpZigkaW1hZ2VkaXIgLiAkZmlsZW5hbWUpOw0KICAgICAgICAgICAgICAg
- IGJyZWFrOw0KICAgICAgICAgICAgY2FzZSAnLnBuZyc6DQogICAgICAgICAgICAgICAgJHNy
- Y2ltYWdlID0gaW1hZ2VjcmVhdGVmcm9tcG5nKCRpbWFnZWRpciAuICRmaWxlbmFtZSk7DQog
- ICAgICAgICAgICAgICAgYnJlYWs7DQogICAgICAgIH0NCg0KICAgICAgICBpZigkYWN0aW9u
- ID09ICdyb3RhdGUnKSB7IC8vIHJvdGF0ZSBpbWFnZQ0KDQogICAgICAgICAgICAvKiogVGVy
- bmFyeSBlcXVpdmFsZW50IG9mICBpZiAvIGVsc2VpZiAvIGVsc2UgOiBEb25lIGZvciBzaW1w
- bGUgc2hvcnRoYW5kLiBBc3N1bWVzIGFueXRoaW5nIG5vdCByaWdodCAvIGxlZnQgPSAxODAg
- KiovDQogICAgICAgICAgICAkZGVncmVlcyA9ICgkZGlyZWN0aW9uID09ICdyaWdodCcpID8g
- LTkwIDogKCgkZGlyZWN0aW9uID09ICdsZWZ0JykgPyA5MCA6IDE4MCk7DQogICAgICAgICAg
- ICAkbmV3aW1nICA9IGltYWdlcm90YXRlKCRzcmNpbWFnZSwgJGRlZ3JlZXMsIDApOw0KICAg
- ICAgICB9IGVsc2VpZiAoJGFjdGlvbiA9PSAnY3JvcCcpIHsgLy8gcHJpbWFyeSBpbWFnZSBj
- cm9wcGluZw0KDQogICAgICAgICAgICAvL2dhdGhlciBjcm9wIHZhcmlhYmxlcyBmcm9tIGhp
- ZGRlbiBmaWVsZHMuDQogICAgICAgICAgICAkY3JvcFggPSBncHMoJ2VibGNyb3BYaCcpOw0K
- ICAgICAgICAgICAgJGNyb3BZID0gZ3BzKCdlYmxjcm9wWWgnKTsNCiAgICAgICAgICAgICR0
- YXJnVyA9ICRjcm9wVyA9IGdwcygnZWJsY3JvcFcnKTsNCiAgICAgICAgICAgICR0YXJnSCA9
- ICRjcm9wSCA9IGdwcygnZWJsY3JvcEgnKTsNCiAgICAgICAgICAgIA0KICAgICAgICAgICAg
- Ly8gcHJldmVudHMgZGl2aXNpb24gYnkgemVybyAmIGludmFsaWQgY3JvcCB3aWR0aHMuDQog
- ICAgICAgICAgICAkdmFsdWUgPSAoaW50KSR0YXJnSCArIChpbnQpJHRhcmdXOw0KICAgICAg
- ICAgICAgaWYoJHZhbHVlIDwgMzApIHsNCiAgICAgICAgICAgICAgICBlY2hvICJpbnZhbGlk
- IGNyb3AgdmFsdWVzIGRldGVjdGVkIjsNCiAgICAgICAgICAgICAgICBpbWFnZWRlc3Ryb3ko
- JHNyY2ltYWdlKTsNCiAgICAgICAgICAgICAgICBleGl0KCk7DQogICAgICAgICAgICB9DQoN
- CiAgICAgICAgICAgIC8qKiBDcmVhdGUgYmFzZSBjYW52YXMgKiovDQogICAgICAgICAgICAk
- bmV3aW1nID0gaW1hZ2VjcmVhdGV0cnVlY29sb3IoJHRhcmdXLCR0YXJnSCk7DQoNCiAgICAg
- ICAgICAgIC8qKiBVc2UgdGhlIFgvWSBjb29yZHMgdG8gcGxvdCB0aGUgaW5pdGlhbCBwb2lu
- dCwgd2lkdGgvaGVpZ2h0IHRha2UgY2FyZSBvZiB0aGUgcmVzdCAqKi8NCiAgICAgICAgICAg
- IGltYWdlY29weXJlc2FtcGxlZCgkbmV3aW1nLCAkc3JjaW1hZ2UsMCwwLCAkY3JvcFgsICRj
- cm9wWSwgJHRhcmdXLCAkdGFyZ0gsICRjcm9wVywgJGNyb3BIKTsNCg0KICAgICAgICB9IGVs
- c2VpZiAoJGFjdGlvbiA9PSAndGh1bWJuYWlsJykgeyAvLyBjcmVhdGUgdGh1bWJuYWlsDQoN
- CiAgICAgICAgICAgIC8vZ2F0aGVyIGNyb3AgdmFyaWFibGVzIGZyb20gaGlkZGVuIGZpZWxk
- cy4NCiAgICAgICAgICAgICRjcm9wWCA9IGdwcygnZWJsY3JvcFhoJyk7DQogICAgICAgICAg
- ICAkY3JvcFkgPSBncHMoJ2VibGNyb3BZaCcpOw0KICAgICAgICAgICAgJGNyb3BIID0gZ3Bz
- KCdlYmxjcm9wSCcpOw0KICAgICAgICAgICAgJGNyb3BXID0gZ3BzKCdlYmxjcm9wVycpOw0K
- ICAgICAgICAgICAgDQogICAgICAgICAgICAvLyBwcmV2ZW50cyBkaXZpc2lvbiBieSB6ZXJv
- ICYgaW52YWxpZCBjcm9wIHdpZHRocy4NCiAgICAgICAgICAgICR2YWx1ZSA9IChpbnQpJGNy
- b3BIICsgKGludCkkY3JvcFc7DQogICAgICAgICAgICBpZigkdmFsdWUgPCA0KSB7DQogICAg
- ICAgICAgICAgICAgZWNobyAiaW52YWxpZCBjcm9wIHZhbHVlcyBkZXRlY3RlZCI7DQogICAg
- ICAgICAgICAgICAgaW1hZ2VkZXN0cm95KCRzcmNpbWFnZSk7DQogICAgICAgICAgICAgICAg
- ZXhpdCgpOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgDQogICAgICAgICAgICBpZihn
- cHMoJ3JzelRtYicpID09ICJyc3oiKSB7IC8vIGFyZSB3ZSByZXNpemluZyB0aGUgdGhlIHRo
- dW1ibmFpbD8NCiAgICAgICAgICAgICAgICAkdGFyZ0ggPSBncHMoJ2VibHRtYkgnKTsNCiAg
- ICAgICAgICAgICAgICAkdGFyZ1cgPSBncHMoJ2VibHRtYlcnKTsgDQogICAgICAgICAgICAN
- CiAgICAgICAgICAgIC8vIGRpZCBzb21lb25lIGZvcmdldCB0byBpbnB1dCBhIGhlaWdodCBv
- ciB3aWR0aD8gSWYgc28sIGRlZmF1bHQgdG8gY3JvcCB3aWR0aA0KICAgICAgICAgICAgaWYo
- JHRhcmdIIDwgMSkgeyAkdGFyZ0ggPSAkY3JvcEg7IH0NCiAgICAgICAgICAgIGlmKCR0YXJn
- VyA8IDEpIHsgJHRhcmdXID0gJGNyb3BXOyB9DQoNCiAgICAgICAgICAgICAgICAvLyBkZXRl
- cm1pbmUgdGhlIGNvcnJlY3Qgc2NhbGUgdmFsdWUNCiAgICAgICAgICAgICAgICAkc2NhbGUg
- PSBtaW4oJHRhcmdXIC8gJGNyb3BXLCR0YXJnSCAvICRjcm9wSCk7DQogICAgICAgICAgICAg
- ICAgLy8gYXJlIHRoZSBzaWRlcyBlcXVhbD8gSWYgbm90LCBzY2FsZSB0byBmaXQuDQogICAg
- ICAgICAgICAgICAgaWYgKCRzY2FsZSA8IDEpIHsNCiAgICAgICAgICAgICAgICAgICAgJHRh
- cmdXID0gY2VpbCgkc2NhbGUgKiAkY3JvcFcpOw0KICAgICAgICAgICAgICAgICAgICAkdGFy
- Z0ggPSBjZWlsKCRzY2FsZSAqICRjcm9wSCk7DQogICAgICAgICAgICAgICAgfSANCiAgICAg
- ICAgICAgIH0gZWxzZWlmIChncHMoJ3JzelRtYicpICE9ICdyc3onKSB7IC8vIGlmIG5vdCwg
- d2UnbGwganVzdCB1c2UgdGhlIGNyb3AtYXJlYSBzaXplIHRvIGNyZWF0ZSBvdXIgdGh1bWJu
- YWlsDQogICAgICAgICAgICAgICAgJHRhcmdIID0gJGNyb3BIOw0KICAgICAgICAgICAgICAg
- ICR0YXJnVyA9ICRjcm9wVzsNCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgIA0KICAgICAg
- ICAgICAgLyoqIENyZWF0ZSBiYXNlIGNhbnZhcyAqKi8NCiAgICAgICAgICAgICRuZXdpbWcg
- PSBpbWFnZWNyZWF0ZXRydWVjb2xvcigkdGFyZ1csJHRhcmdIKTsNCiAgICAgICAgICAgIC8q
- KiBVc2UgdGhlIFgvWSBjb29yZHMgdG8gcGxvdCB0aGUgaW5pdGlhbCBwb2ludCwgd2lkdGgv
- aGVpZ2h0IHRha2UgY2FyZSBvZiB0aGUgcmVzdCAqKi8NCiAgICAgICAgICAgIGltYWdlY29w
- eXJlc2FtcGxlZCgkbmV3aW1nLCAkc3JjaW1hZ2UsMCwwLCAkY3JvcFgsICRjcm9wWSwgJHRh
- cmdXLCAkdGFyZ0gsICRjcm9wVywgJGNyb3BIKTsNCg0KICAgICAgICB9IGVsc2VpZiAoJGFj
- dGlvbiA9PSAncnN6JykgeyAvLyBnZW5lcmFsIHJlc2l6ZQ0KICAgICAgICAgICAgJHRhcmdI
- ID0gZ3BzKCdlYmxyc3pIJyk7DQogICAgICAgICAgICAkdGFyZ1cgPSBncHMoJ2VibHJzelcn
- KTsNCiAgICAgICAgICAgIA0KICAgICAgICAgICAgaWYoKCR0YXJnSCArICR0YXJnVykgPCAx
- KSB7DQogICAgICAgICAgICAgICAgZWNobyAiIEVSUk9SIDogRGltZW5zaW9ucyBtdXN0IGJl
- IGVudGVyZWQuIjsNCiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgICAg
- ICB9DQogICAgICAgICAgICAvLyBkaWQgc29tZW9uZSBmb3JnZXQgdG8gaW5wdXQgYSBoZWln
- aHQgb3Igd2lkdGg/IElmIHNvLCB3ZSdsbCBkZWZhdWx0IHRvIHRoZSBvcmlnaW5hbCBzaXpl
- IGZvciB0aGUgbWlzc2luZyB2YWx1ZS4NCiAgICAgICAgICAgIGlmKCR0YXJnSCA8IDEpIHsg
- JHRhcmdIID0gJGg7IH0NCiAgICAgICAgICAgIGlmKCR0YXJnVyA8IDEpIHsgJHRhcmdXID0g
- JHc7IH0NCiAgICAgICAgICAgIC8vIGNoZWNrcyB0byBzZWUgaWYgdGhlIHRhcmdldGVkIHZh
- bHVlcyBhcmUgbGFyZ2VyIHRoYW4gdGhlIG9yaWdpbmFsLCBpZiBzbywgcmVzZXQgdG8gb3Jp
- Z2luYWwgdmFsdWUgYXMgdGhlIGxvbmdlc3Qgc2lkZS4NCiAgICAgICAgICAgIGlmKCR0YXJn
- SCA+ICRoKSB7ICR0YXJnSCA9ICRoOyB9DQogICAgICAgICAgICBpZigkdGFyZ1cgPiAkdykg
- eyAkdGFyZ1cgPSAkdzsgfQ0KICAgICAgICAgICAgDQogICAgICAgICAgICAkc2NhbGUgPSBt
- aW4oJHRhcmdXIC8gJHcsICR0YXJnSCAvICRoKTsNCiAgICAgICAgICAgIC8vIGFyZSB0aGUg
- c2lkZXMgZXF1YWw/IElmIG5vdCwgc2NhbGUgdG8gZml0Lg0KICAgICAgICAgICAgaWYgKCRz
- Y2FsZSA8IDEpIHsNCiAgICAgICAgICAgICAgICAkdGFyZ1cgPSBjZWlsKCRzY2FsZSAqICR3
- KTsNCiAgICAgICAgICAgICAgICAkdGFyZ0ggPSBjZWlsKCRzY2FsZSAqICRoKTsNCiAgICAg
- ICAgICAgIH0gZWxzZSB7IC8vIGltYWdlIGlzIHNtYWxsZXIgdGhhbiByZXF1ZXN0ZWQgc2Nh
- bGUuIEFib3J0Lg0KICAgICAgICAgICAgICAgIGltYWdlZGVzdHJveSgkc3JjaW1hZ2UpOw0K
- ICAgICAgICAgICAgICAgIGVjaG8gIkltYWdlIHNtYWxsZXIgdGhhbiBwYXJhbWV0ZXJzIGVu
- dGVyZWQiOw0KICAgICAgICAgICAgICAgIHJldHVybjsNCiAgICAgICAgICAgIH0NCg0KICAg
- ICAgICAgICAgLyoqIENyZWF0ZSBiYXNlIGNhbnZhcyAqKi8NCiAgICAgICAgICAgICRuZXdp
- bWcgPSBpbWFnZWNyZWF0ZXRydWVjb2xvcigkdGFyZ1csJHRhcmdIKTsNCiAgICAgICAgICAg
- IC8qKiBVc2UgdGhlIFgvWSBjb29yZHMgdG8gcGxvdCB0aGUgaW5pdGlhbCBwb2ludCwgd2lk
- dGgvaGVpZ2h0IHRha2UgY2FyZSBvZiB0aGUgcmVzdCAqKi8NCiAgICAgICAgICAgIGltYWdl
- Y29weXJlc2FtcGxlZCgkbmV3aW1nLCAkc3JjaW1hZ2UsMCwwLDAsMCwgJHRhcmdXLCAkdGFy
- Z0gsICR3LCAkaCk7DQogICAgICAgIH0NCg0KICAgICAgICAkdCA9ICgkYWN0aW9uID09ICd0
- aHVtYm5haWwnKSA/ICd0JyA6ICcnOw0KICAgICAgICANCiAgICAgICAgJGZpbGVuYW1lID0g
- JGlkLiR0LiRleHQ7DQogICAgICAgIA0KICAgICAgICBzd2l0Y2ggKHN0cnRvbG93ZXIoJGV4
- dCkpIHsNCiAgICAgICAgICAgIGNhc2UgKCRleHQgPT0gJy5qcGcnIHx8ICRleHQgPT0gJy5q
- cGVnJyk6DQogICAgICAgICAgICAgICAgJGZpbGVyZXN1bHQgPSBpbWFnZWpwZWcoJG5ld2lt
- ZywkaW1hZ2VkaXIgLiAkZmlsZW5hbWUsJzEwMCcpOw0KICAgICAgICAgICAgICAgIGJyZWFr
- Ow0KICAgICAgICAgICAgY2FzZSAiLmdpZiI6DQogICAgICAgICAgICAgICAgJGZpbGVyZXN1
- bHQgPSBpbWFnZWdpZigkbmV3aW1nLCRpbWFnZWRpciAuICRmaWxlbmFtZSk7DQogICAgICAg
- ICAgICAgICAgYnJlYWs7DQogICAgICAgICAgICBjYXNlICIucG5nIjoNCiAgICAgICAgICAg
- ICAgICAkZmlsZXJlc3VsdCA9IGltYWdlcG5nKCRuZXdpbWcsJGltYWdlZGlyIC4gJGZpbGVu
- YW1lKTsNCiAgICAgICAgICAgICAgICBicmVhazsNCiAgICAgICAgfQ0KDQogICAgICAgIGlt
- YWdlZGVzdHJveSgkc3JjaW1hZ2UpOw0KICAgIH0NCg0KICAgIGlmKCRhY3Rpb24gIT0gJ3Ro
- dW1ibmFpbCcpIA0KICAgIHsNCiAgICAgICAgbGlzdCAoJHdpZHRoLCRoZWlnaHQpID0gZ2V0
- aW1hZ2VzaXplKCRpbWFnZWRpciAuICRmaWxlbmFtZSk7DQogICAgICAgICRycyA9IHNhZmVf
- dXBkYXRlKCd0eHBfaW1hZ2UnLCAidyA9ICciLiR3aWR0aC4iJywgaCA9ICciLiRoZWlnaHQu
- IiciLCAiaWQgPSAkaWQiKTsNCiAgICB9IGVsc2Ugew0KICAgICAgICAkcnMgPSBzYWZlX3Vw
- ZGF0ZSgndHhwX2ltYWdlJywgInRodW1ibmFpbCA9ICcxJyIsICJpZCA9ICRpZCIpOw0KICAg
- IH0NCiAgICANCiAgICBlY2hvICgkZmlsZXJlc3VsdCAmJiAkcnMpID8gInN1Y2Nlc3MiIDog
- J0VSUk9SICc7DQp9IjtzOjQ6InR5cGUiO3M6MToiMSI7czo1OiJvcmRlciI7czoxOiI1Ijtz
- OjU6ImZsYWdzIjtzOjE6IjAiO3M6NDoiaGVscCI7czo1OTg4OiI8c3R5bGUgdHlwZT0idGV4
- dC9jc3MiID5oMSwgaDIsIGgzLCBwIHt0ZXh0LWFsaWduOmxlZnR9aDF7Zm9udC1zaXplOjI4
- cHg7IGxldHRlci1zcGFjaW5nOi4wMWVtOyB3b3JkLXNwYWNpbmc6LjFlbTsgY29sb3I6IzQ0
- NH1oMntmb250LXNpemU6MTRweDsgbWFyZ2luOjVweCAwIDE1cHg7IGNvbG9yOiNBQUE7IGJv
- cmRlci1ib3R0b206MXB4IHNvbGlkICNEREQ7IHBhZGRpbmc6MCAwIDVweDsgbGV0dGVyLXNw
- YWNpbmc6LjA1ZW07IHdvcmQtc3BhY2luZzouMWVtfWgze2ZvbnQtc2l6ZToxNnB4OyBtYXJn
- aW46MTBweCAwOyBjb2xvcjojNDQ0OyBmb250LXdlaWdodDogOTAwO31we21hcmdpbjoxNXB4
- IDA7IGZvbnQtc2l6ZToxNHB4OyBsaW5lLWhlaWdodDoyNHB4fS5kcm9wY2Fwe2Zsb2F0Omxl
- ZnQ7IGNvbG9yOiNCNEI0Qjc7IGZvbnQtc2l6ZTo1MHB4OyBsaW5lLWhlaWdodDo0MHB4OyBw
- YWRkaW5nLXRvcDoycHg7IG1hcmdpbjowIDNweCAwIDA7IGZvbnQtZmFtaWx5OlRpbWVzLHNl
- cmlmLEdlb3JnaWF9LmNhcHN7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlOyBsZXR0ZXItc3Bh
- Y2luZzouMTVlbTsgZm9udC1zaXplOjEycHg7IGNvbG9yOiM1NTV9I21haW4ge2ZvbnQtZmFt
- aWx5Okdlb3JnaWEsICJUaW1lcyBOZXcgUm9tYW4iLCBUaW1lcywgc2VyaWY7IGZvbnQtc2l6
- ZToxNHB4O2ZvbnQtd2VpZ2h0OjQwMDt9CTwvc3R5bGU+Cgo8ZGl2IGlkPSJtYWluIj4KPGgx
- PkVCTCBJbWFnZSBFZGl0PC9oMT4KIDxoMj5BZHZhbmNlZCBJbWFnZSBFZGl0aW5nIFBsdWdp
- biBmb3IgVGV4dHBhdHRlcm48L2gyPgogPHA+PHNwYW4gY2xhc3M9ImRyb3BjYXAiPlQ8L3Nw
- YW4+aGlzIHBsdWdpbiBpbnRyb2R1Y2VzIGFkdmFuY2VkIGltYWdlIGVkaXRpbmcgZnVuY3Rp
- b25hbGl0eSB0byBUZXh0cGF0dGVybiA0LjA3IC8gNC4wOC4KIFVzZXJzIG1heSBub3cgY3Vz
- dG9tIGNyb3AsIHJlc2l6ZSwgcm90YXRlLCBhbmQgY3JlYXRlIGN1c3RvbSB0aHVtYm5haWxz
- IGRpcmVjdGx5IHdpdGhpbiBUZXh0cGF0dGVybi48L3A+CgogPGgzPkZlYXR1cmVzPC9oMz4K
- IDxwPlRoaXMgcGx1Z2luIGFsbG93cyBmb3IgZnVuY3Rpb25zIHByZXZpb3VzbHkgb25seSBh
- dmFpbGFibGUgaW4gaW1hZ2UtZWRpdGluZyBwcm9ncmFtaW5zLiBJdCBhbGxvd3MgZm9yIHVz
- ZXJzLCBhdCBhbnkgdGVybWluYWwgd2hpY2ggdGhleSdyZSBsb2dnZWQgaW4gdG8gdG8gZG8g
- dGhlIGZvbGxvd2luZzoKIDx1bD4KIAk8bGk+PHN0cm9uZz5Dcm9wcGluZzwvc3Ryb25nPjog
- VGhlIG9yaWdpbmFsIHVwbG9hZGVkIGltYWdlIGNhbiBiZSBlZGl0ZWQgdG8gY3V0IG91dCBw
- YXJ0cyB0aGF0IGFyZSBub3QgZGVzaXJlZCBhbmQga2VlcCBvbmx5IHRob3NlIGltcG9ydGFu
- dCBmYWNldHMgb2YgdGhlIG9yaWdpbmFsIGltYWdlLjwvbGk+CiAJPGxpPjxzdHJvbmc+VGh1
- bWJuYWlsIENyb3A8L3N0cm9uZz46IE1ha2UgYSB0aHVtYm5haWwgc2hvdyBub3QgdGhlIGVu
- dGlyZSBpbWFnZSwgYnV0IGp1c3QgZW5vdWdoIHRvIHBpcXVlIGludGVyZXN0LjwvbGk+CiAJ
- PGxpPjxzdHJvbmc+Um90YXRlPC9zdHJvbmc+OiBGb3IgdGhvc2UgcGljdHVyZXMgdGhhdCBh
- cmUgc2lkZXdheXMgb3IgdXBzaWRlIGRvd24uIFVzZXJzIG1heSByb3RhdGUgdGhlIGltYWdl
- IGNsb2Nrd2lzZTkwJmRlZzssIGNvdW50ZXJjbG9ja3dpc2U5MCZkZWc7IG9yIHJvdGF0ZSBh
- IGZ1bGwgMTgwOTAmZGVnOy48L2xpPgogCTxsaT48c3Ryb25nPlJlc2l6ZTwvc3Ryb25nPjog
- TWFueSBkaWdpdGFsIGltYWdlcyBhcmUganVzdCB0b28gbGFyZ2UgdG8gYmUgc2hvd24gb24g
- dGhlIHdlYi4gVGhpcyBvcHRpb24gYWxsb3dzIGZvciBleGNlc3NpdmVseSBzaXplZCBpbWFn
- ZXMgdG8gYmUgc2NhbGVkIGRvd24uIEJ1aWx0IGludG8gdGhlIHJlc2l6aW5nIGZ1bmN0aW9u
- IGlzIHRoZSBhYmlsaXR5IHRvIG1haW50YWluIHRoZSBvcmlnaW5hbCBoZWlnaHQgdG8gd2lk
- dGggcmF0aW8sIHNvIGltYWdlcyB3aWxsIG5ldmVyIHNlZW0gc3F1aXNoZWQgb25lIHdheSBv
- ciB0aGUgb3RoZXIuPC9saT4KIAk8bGk+PHN0cm9uZz5JbWFnZSBCYWNrdXBzPC9zdHJvbmc+
- OiBOZXcgZm9yIDxpPjIuMDwvaT4gaXMgdGhlIGZlYXR1cmUgdG8gc2F2ZSBhbiBvcmlnaW5h
- bCBjb3B5IG9mIHRoZSB0aGUgaW1hZ2UgdG8gYSB0ZW1wIGZvbGRlciBzbyB0aGF0IHlvdSBt
- YXkgcmVzdG9yZSBpdCBhdCBhbnkgdGltZS4gVGhlIGltYWdlIG11c3QgZmlyc3QgYmUgc2F2
- ZWQgYnkgY2xpY2tpbmcgb24gYmFja3VwLCBhbmQgdGhlbiBtYXkgYmUgcmVzdG9yZWQgYXQg
- YW55IHRpbWUuPC9saT4KIDwvdWw+PC9wPgogPGgzPkluc3RhbGxhdGlvbjwvaDM+CiA8cD5J
- bnN0YWxsYXRpb24gaXMgc3RyYWlnaHQgZm9yd2FyZCBhbmQgaW52b2x2ZXMgdGhlIGluc3Rh
- bGxhdGlvbiBvZiBvbmUgcGx1Z2luIGZpbGUsIGFuZCB0aGUgdXBsb2FkIG9mIG9uZSBkaXJl
- Y3RvcnkgdG8geW91ciBUZXh0cGF0dGVybiBmb2xkZXIuPC9wPgogPHA+Q29udGFpbmVkIHdp
- dGhpbiB0aGUgemlwIGFyY2hpdmUgYXJlIHR3byBmaWxlczoKICA8b2w+CiAgIDxsaT48Yj5l
- YmwtaW1hZ2UtZWRpdF92MS4wLnR4dDwvYj4gOiBUaGlzIGlzIHRoZSBwbHVnaW4gY29kZSB0
- aGF0IGlzIHBhc3RlZCBpbnRvIHRoZSB0ZXh0Ym94IGluIDxpPkFkbWluIC0+IFBsdWdpbnM8
- L2k+PC9saT4KICAgPGxpPjxiPmpjcm9wPC9iPiA6IFRoaXMgZm9sZGVyIHdpbGwgbmVlZCB0
- byBiZSB1cGxvYWRlZCB0byB0aGUgVGV4dHBhdHRlcm4gZGlyZWN0b3J5IChlLmcuLCAvdGV4
- dHBhdHRlcm4vICk8L2xpPgogIDwvb2w+CiA8L3A+CiA8cD5PbmNlIHRoZSBhYm92ZSBoYXMg
- YmVlbiBjb21wbGV0ZWQsIGFjdGl2YXRlIHRoZSBwbHVnaW4gaW4gPGk+QWRtaW4gLT4gUGx1
- Z2luczwvaT48L3A+CiA8cD5PbmNlIHRoZSBwbHVnaW4gaGFzIGJlZW4gYWN0aXZhdGVkLCBu
- YXZpZ2F0ZSB0byA8aT5Db250ZW50IC0+IEV4dGVuc2lvbnMgLT4gRUJMIEltYWdlIEVkaXQ8
- L2k+LiBUaGUgdGVtcCBmb2xkZXIgYW5kIGRiIGZpZWxkIHdpbGwgYmUgY3JlYXRlZC4gVGhl
- IHBsdWdpbiB3aWxsIGJlIHJlYWR5IGZvciB1c2UgYXQgdGhpcyBwb2ludC48L3A+CgogPGgz
- PlVzYWdlIEluc3RydWN0aW9uczwvaDM+CiA8cD5GdXJ0aGVyIGhlbHAgY2FuIGJlIGZvdW5k
- IG9ubGluZSBpbiB0aGUgdGV4dHBhdHRlcm4gZm9ydW0gdG9waWM6ICI8c3Ryb25nPjxhIGhy
- ZWY9Imh0dHA6Ly9mb3J1bS50ZXh0cGF0dGVybi5jb20vdmlld3RvcGljLnBocD9pZD0yOTU0
- NyI+ZWJsIGltYWdlIGVkaXQgdjEuMCA8L2E+PC9zdHJvbmc+IjwvcD4KIDx1bD4KIAk8bGk+
- PGI+Q3JvcDwvYj46IFRoaXMgdGFiIHBlcm1pdHMgdGhlIGNyb3BwaW5nIG9mIGltYWdlcy4g
- Q2xpY2sgYW5kIGRyYWcgYWNyb3NzIHRoZSBpbWFnZSB0byBzZWxlY3QgdGhlIGNyb3AgYXJl
- YS4gV2hpbGUgc2VsZWN0aW5nIHRoZSBjcm9wIHJlZ2lvbiwgdGhlIHNpemUgb2YgdGhlIGNy
- b3AgYXJlYSB3aWxsYmUgZGlzcGxheWVkIGluIGFzIFdpZHRoIFggSGVpZ2h0LiBUaGlzIGlz
- IG1lYXN1cmVkIGluIHBpeGVscy4gWW91J2xsIG5vdGUgdGhhdCB0aGUgYXJlYSBvdXRzaWRl
- IG9mIHRoZSBjcm9wIHJlZ2lvbiBpcyBkYXJrLCB3aGVyZWFzIHRoZSBhcmVhIGluc2lkZSBp
- cyBsaWdodGVyLiBUaGlzIGlzIHRoZSBpbnRlbmRlZCBlZmZlY3QuIEV2ZXJ5dGhpbmcgd2l0
- aGluIHRoZSBjcm9wIGFyZWEgd2lsbCBiZSBzZWxlY3RlZCBhbmQgd2lsbCByZXBsYWNlIHRo
- ZSBvcmlnaW5hbCBpbWFnZSBvbmNlIHRoZSA8Yj5Dcm9wIE9yaWdpbmFsPC9iPiBidXR0b24g
- aXMgY2xpY2tlZC4KCTx1bD4KCQk8bGk+PGk+UHJlZGVmaW5lZCBzaXplPC9pPjogVGhpcyBk
- cm9wLWRvd24gYm94IGFsbG93cyB0aGUgdXNlciB0byBzZWxlY3QgcHJlLWRlZmluZWQgY3Jv
- cCBhcmVhIHNlbGVjdGlvbnMuIFRoZXkgbWF5IGJlIG1vdmVkIGFyb3VuZCBhbnl3aGVyZSBv
- biB0aGUgaW1hZ2UuIElmIG5lZWRlZCwgdGhlc2UgYXJlYXMgY2FuIGJlIHNpemVkIGRpZmZl
- cmVudGx5LCBidXQgdGhlIGFzcGVjdCByYXRpbyBvZiB0aGUgb3JpZ2luYWwgd2lsbCByZW1h
- aW4uIDxpPihGb3VuZCBpbiBUaHVtYm5haWwgQ3JvcCBhcyB3ZWxsLik8L2k+PGxpPgoJCTxs
- aT48aT5Mb2NrIEFzcGVjdCBSYXRpbzwvaT46IFVuY2hlY2tpbmcgdGhpcyBib3ggd2lsbCBh
- bGxvdyBmb3IgYSBkaWZmZXJlbnQgYXNwZWN0IHJhdGlvIHRoYW4gd2hhdCB3YXMgc2VsZWN0
- ZWQgaW4gdGhlIGRyb3AgZG93biBib3guIDxpPihGb3VuZCBpbiBUaHVtYm5haWwgQ3JvcCBh
- cyB3ZWxsLik8L2k+PC9saT4KCTwvdWw+PC9saT4KIAk8bGk+PGI+VGh1bWJuYWlsIENyb3A8
- L2I+OiBOZWFybHkgaWRlbnRpY2FsIGluIGZ1bmN0aW9uIHRvIHRoZSBtYWluIGltYWdlIGNy
- b3AsIHRoZSB0aHVtYm5haWwgY3JvcCBhbGxvd3MgZm9yIGEgc2VsZWN0ZWQgcmVnaW9uIHRv
- IGJlIGhpZ2hsaWdodGVkIHRvIGFjdCBhcyB0aGUgcHJpbWFyeSBpbWFnZSB0aHVtYm5haWwu
- IFRvIGNyZWF0ZSB0aGUgY3JvcHBlZCB0aHVtYm5haWwsIHNlbGVjdCB0aGUgY3JvcC1hcmVh
- LiBJZiB5b3Ugd2FudCB0aGUgaW1hZ2UgcmVzaXplZCB0byBhIHNwZWNpZmljIGRpbWVuc2lv
- biwgY2hlY2sgPGk+UmVzaXplIFRodW1ibmFpbDwvaT4gYW5kIGVkaXQgdGhlIHNpemUgYWNj
- b3JkaW5nbHkuIE9uY2UgeW91IGFyZSBzYXRpc2lmaWVkIHdpdGggdGhlIGNyb3AgYXJlYSBh
- bmQgdGhlIG9wdGlvbnMsIGNsaWNrIG9uIHRoZSBDcmVhdGUgVGh1bWJuYWlsIGJ1dHRvbi4g
- PC9saT4KIAk8bGk+PGI+Um90YXRlPC9iPjogVGhpcyB0YWIgYWxsb3dzIHRocmVlIHNlcGVy
- YXRlIG1ldGhvZHMgb2Ygcm90YXRpbmcuIDEuIFJvdGF0ZSBDbG9ja3dpc2UgOTAmZGVnOyAo
- VHVybiBSaWdodCksIDIuIENvdW50ZXItQ2xvY2t3aXNlIDkwJmRlZzsgKExlZnQgVHVybikg
- b3IgMy4gMTgwJmRlZzsgKEZsaXApLiBDbGlja2luZyBhbnkgb2YgdGhlc2UgYnV0dG9ucyB3
- aWxsIHJvdGF0ZSB0aGUgb3JpZ2luYWwgYnV0dG9uLiA8ZW0+RG8gbm90IHJlcGVhdGVkbHkg
- cm90YXRlIHRoZSBpbWFnZXMgYXMgdGhpcyB3aWxsIGdyYWR1YWxseSBkZWdyYWRlIGltYWdl
- IHF1YWxpdHk8L2VtPi48L2xpPgogCTxsaT48Yj5SZXNpemU8L2I+OiBUaGlzIHRhYiBhbGxv
- d3MgdGhlIGZvciBhIGxvbmdlc3Qtc2lkZSByZXNpemUgb2YgYW4gb3JpZ2luYWwgaW1hZ2Uu
- IFNpbXBseSBpbnB1dCB0aGUgZGVzaXJlZCBkaW1lbnNpb25zIGFuZCB0aGUgaW1hZ2Ugd2ls
- bCBiZSBzaXplZCBkb3duIHRvIGZpdC4gTm90ZSwgaWYgdGhlIGltYWdlIGlzIHNtYWxsZXIg
- aW4gYW55IG9uZSBkaW1lbnNpb24gdGhhdCB3aGljaCB3YXMgZW50ZXJlZCwgaXQgd2lsbCBu
- b3QgYmUgc2l6ZWQgdXAgdG8gZml0LCBidXQgcmF0aGVyLCBzaXplZCBkb3duIGluIHByb3Bv
- cnRpb24gd2l0aCB0aGUgbG9uZ2VzdCBzaWRlLiBJZiB0aGUgaW1hZ2UgaXMgZW50aXJlbHkg
- c21hbGxlciB0aGFuIHRoZSBkaW1lbnNpb25zIGVudGVyZWQsIGl0IHdpbGwgbm90IGJlIHJl
- c2l6ZWQuIDwvbGk+Cgk8bGk+PGI+QmFja3VwPC9iPjogVGhpcyB0YWIgYWxsb3dzIGZvciB0
- aGUgYmFja2luZy11cCBvZiBhbiBpbWFnZSBpbnRvIGEgYmFja3VwIGZvbGRlciBsb2NhdGVk
- IHdpdGhpbiB5b3VyIGltYWdlIGRpcmVjdG9yeS4gV2hlbiBhY3RpdmUsIHR3byBidXR0b25z
- IGFyZSBkaXNwbGF5ZWQuIFRoZSBmaXJzdCwgQmFja3VwIHdpbGwgaW1tZWRpYXRlbHkgY29w
- eSB0aGUgYXNzb2NpYXRlZCBpbWFnZSB0byB0aGUgYmFja3VwIGRpcmVjdG9yeSBhbmQgb3Zl
- cndyaXRlIGFueSBpZGVudGljYWxseSBuYW1lZCBmaWxlLiBDbGlja2luZyBSZXN0b3JlIHdp
- bGwgY29weSB0aGF0IGltYWdlIGJhY2sgdG8gdGhlIG1haW4gaW1hZ2UgZGlyZWN0b3J5IGJ1
- dCB3aWxsIHN0aWxsIG1haW50YWluIHRoZSBjb3BpZWQgZmlsZSBpbiB0aGlzIGxvY2F0aW9u
- LjwvbGk+CiA8L3VsPjwvcD4KPC9kaXY+Cgo8L2Rpdj4iO3M6MzoibWQ1IjtzOjMyOiIzNDFm
- ODVhOTEyNzRmZWQ2ZjdmZTQ3MzZmNDcxNWVmOSI7fQ==
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement