Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 海阔视界规则分享,当前分享的是:网页插件¥js_url¥global_不要获取我的IP@base64://Ly8gPT1Vc2VyU2NyaXB0PT0KLy8gQG5hbWVzcGFjZSAgICBodHRwOi8vbGlua21lLmJpby9qaG9ucGVyZ29uLz91c2Vyc2NyaXB0PWFwaV9ibG9jawovLyBAdmVyc2lvbiAgICAgIDEuMAovLyBAYXV0aG9yICAgICAgIEpob24gUMOpcmdvbgoKLy8gQG5hbWUgICAgICAgICBOw6NvIFBlZ3VlIE1ldSBJUAovLyBAbmFtZTpwdCAgICAgICBOw6NvIFBlZ3VlIE1ldSBJUAovLyBAbmFtZTplcyAgICAgICBObyBPYnRlbmdhcyBNaSBJUAovLyBAbmFtZTplbiAgICAgICBEb24ndCBHZXQgTXkgSVAKLy8gQG5hbWU6ZnIgICAgICAgTmUgUHJlbmRzIFBhcyBNb24gSVAKLy8gQG5hbWU6cnUgICAgICAg0J3QtSDQsdC10YDQuCDQvNC+0LkgSVAKLy8gQG5hbWU6amEgICAgICAgSVDjgpLlj5blvpfjgZfjgarjgYTjgafjgY/jgaDjgZXjgYQKLy8gQG5hbWU6a28gICAgICAg64K0IElQ66W8IOqwgOyguOqwgOyngCDrp4jshLjsmpQKLy8gQG5hbWU6emgtVFcgICAgIOS4jeimgeiOt+WPluaIkeeahElQCi8vIEBuYW1lOnpoLUNOICAgICDkuI3opoHojrflj5bmiJHnmoRJUAovLyBAbmFtZTppZCAgICAgICAgSmFuZ2FuIEFtYmlsIElQIFNheWEKLy8gQG5hbWU6dWcgICAgICAgINmF25DZhtmJ2q0g2Kbbhtiy2KbZidm+2YnZhdmG2Ykg2YLbh9mE24fZviDZgtmI2YrZhdinCi8vIEBuYW1lOmFyICAgICAgICDZhNinINiq2KPYrtiwINi52YbZiNin2YYgSVAg2KfZhNiu2KfYtSDYqNmKCi8vIEBuYW1lOmhlICAgICAgICDXkNecINeq16fXkdecINeQ16og15vXqteV15HXqiDXlC1JUCDXqdec15kKLy8gQG5hbWU6aGkgICAgICAgIOCkruClh+CksOCkviBJUCDgpK7gpKQg4KSy4KWLCi8vIEBuYW1lOnRoICAgICAgICDguK3guKLguYjguLLguYDguIHguYfguJogSVAg4LiC4Lit4LiH4LiJ4Lix4LiZCi8vIEBuYW1lOmJnICAgICAgICDQndC1INCy0LfQuNC80LDQudGC0LUg0LzQvtC10YLQviBJUAovLyBAbmFtZTpybyAgICAgICAgTnUgTHVhyJtpIElQLXVsIE1ldQovLyBAbmFtZTpmaSAgICAgICAgw4Rsw6QgSGFlIE1pbnVuIElQLW9zb2l0ZXR0YW5pCi8vIEBuYW1lOml0ICAgICAgICBOb24gUHJlbmRlcmUgSWwgTWlvIElQCi8vIEBuYW1lOmVsICAgICAgICDOnM63zr0gzqDOrM+BzrXOuc+CIM6kzrfOvSBJUCDOnM6/z4UKLy8gQG5hbWU6ZW8gICAgICAgIE5lIFByZW51IE1pYW4gSVAKLy8gQG5hbWU6aHUgICAgICAgIE5lIFZlZ3nDqWwgRWwgQXogSVAtY8OtbWVtZXQKLy8gQG5hbWU6bmIgICAgICAgIElra2UgSGVudCBNaW4gSVAKLy8gQG5hbWU6c2sgICAgICAgIE5lYmVyYWogTW9qdSBJUAovLyBAbmFtZTpzdiAgICAgICAgVGEgSW50ZSBNaXR0IElQCi8vIEBuYW1lOnNyICAgICAgICBOZSBVemltYWogTW9qIElQCi8vIEBuYW1lOnBsICAgICAgICBOaWUgQmllcnogTW9qZWdvIElQCi8vIEBuYW1lOm5sICAgICAgICBQYWsgTWlqbiBJUCBOaWV0Ci8vIEBuYW1lOmRlICAgICAgICBNZWluIElQIE5pY2h0IEFicnVmZW4KLy8gQG5hbWU6ZGEgICAgICAgIFRhZyBJa2tlIE1pbiBJUAovLyBAbmFtZTpjcyAgICAgICAgTmV6w61yZWogTW9qaSBJUAovLyBAbmFtZTp1ayAgICAgICAg0J3QtSDQkdC10YDQuCDQnNC+0Y4gSVAKLy8gQG5hbWU6dHIgICAgICAgIElQJ2ltaSBBbG1hCi8vIEBuYW1lOnZpICAgICAgICDEkOG7q25nIEzhuqV5IElQIEPhu6dhIFTDtGkKLy8gQG5hbWU6ZnItQ0EgICAgIE5lIFByZW5kcyBQYXMgTW9uIElQIChDYW5hZGEpCgovLyBAZGVzY3JpcHRpb24gICAgICAgICBJbXBlZGUgYSBjYXB0dXJhIGRvIGVuZGVyZcOnbyBJUCBmZWl0YSBwb3Igc29saWNpdGHDp8OjbyBkZSBBUEkgZXh0ZXJuYS4KLy8gQGRlc2NyaXB0aW9uOnB0ICAgICAgSW1wZWRlIGEgY2FwdHVyYSBkbyBlbmRlcmXDp28gSVAgZmVpdGEgcG9yIHNvbGljaXRhw6fDo28gZGUgQVBJIGV4dGVybmEuCi8vIEBkZXNjcmlwdGlvbjplcyAgICAgIEJsb3F1ZWEgbGEgY2FwdHVyYSBkZSBJUCByZWFsaXphZGEgcG9yIHVuYSBzb2xpY2l0dWQgZGUgQVBJIGV4dGVybmEuCi8vIEBkZXNjcmlwdGlvbjplbiAgICAgIEJsb2NrcyB0aGUgY2FwdHVyZSBvZiB0aGUgSVAgYWRkcmVzcyBkb25lIGJ5IGFuIGV4dGVybmFsIEFQSSByZXF1ZXN0LgovLyBAZGVzY3JpcHRpb246ZnIgICAgICBCbG9xdWUgbGEgY2FwdHVyZSBkZSBsJ2FkcmVzc2UgSVAgZWZmZWN0dcOpZSBwYXIgdW5lIGRlbWFuZGUgZCdBUEkgZXh0ZXJuZS4KLy8gQGRlc2NyaXB0aW9uOnJ1ICAgICAg0JHQu9C+0LrQuNGA0YPQtdGCINC30LDRhdCy0LDRgiBJUC3QsNC00YDQtdGB0LAsINGB0LTQtdC70LDQvdC90YvQuSDQstC90LXRiNC90LjQvCDQt9Cw0L/RgNC+0YHQvtC8IEFQSS4KLy8gQGRlc2NyaXB0aW9uOmphICAgICAg5aSW6YOoQVBJ44Oq44Kv44Ko44K544OI44Gr44KI44KLSVDjgqLjg4njg6zjgrnjga7jgq3jg6Pjg5fjg4Hjg6PjgpLjg5bjg63jg4Pjgq/jgZfjgb7jgZnjgIIKLy8gQGRlc2NyaXB0aW9uOmtvICAgICAg7Jm467aAIEFQSSDsmpTssq3snLzroZwg7IiY7ZaJIOuQnCBJUCDso7zshowg7Lqh7LKY66W8IOywqOuLqO2VqeuLiOuLpC4KLy8gQGRlc2NyaXB0aW9uOnpoLVRXICAg6Zi75q2i5aSW6YOoQVBJ6K+35rGC5o2V6I63SVDlnLDlnYDjgIIKLy8gQGRlc2NyaXB0aW9uOnpoLUNOICAg6Zi75q2i5aSW6YOoQVBJ6K+35rGC5o2V6I63SVDlnLDlnYDjgIIKLy8gQGRlc2NyaXB0aW9uOmlkICAgICAgIE1lbmNlZ2FoIHBlbmFuZ2thcGFuIGFsYW1hdCBJUCB5YW5nIGRpbGFrdWthbiBvbGVoIHBlcm1pbnRhYW4gQVBJIGVrc3Rlcm5hbC4KLy8gQGRlc2NyaXB0aW9uOnVnICAgICAgINiz2YnYsdmJ2YLZiSBBUEkg2LPZiNix2YnYs9mJINiq25XYsdmJ2b7Zidiv2YnZhiDYptmJ2LTZhNmJ2KrZidmE2LrYp9mGIElQINib2YnZhdmJ2LLZhtmJINmC2YjZhNuH2b4g2YLZiNmK2YnYr9uHLgovLyBAZGVzY3JpcHRpb246YXIgICAgICAg2YrYrdi42LEg2KfZhNiq2YLYp9i3INi52YbZiNin2YYgSVAg2KfZhNiw2Yog2YrYqtmFINio2YjYp9iz2LfYqSDYt9mE2KggQVBJINiu2KfYsdis2YouCi8vIEBkZXNjcmlwdGlvbjpoZSAgICAgICDXnteV16DXoiDXkNeqINec15vXmdeT16og15vXqteV15HXqiDXlC1JUCDXqdeg16LXqdeZ16og16LXnCDXmdeT15kg15HXp9ep16ogQVBJINeX15nXpteV16DXmdeqLgovLyBAZGVzY3JpcHRpb246aGkgICAgICAg4KSP4KSV4KWN4KS44KSf4KSw4KWN4KSo4KSyIEFQSSDgpIXgpKjgpYHgpLDgpYvgpKcg4KSm4KWN4KS14KS+4KSw4KS+IOCkleCkv+CkjyDgpJfgpI8gSVAg4KSq4KSk4KS+IOCkleCliyDgpKzgpY3gpLLgpYngpJUg4KSV4KSw4KSk4KS+IOCkueCliOClpAovLyBAZGVzY3JpcHRpb246dGggICAgICAg4Lia4Lil4LmH4Lit4LiB4LiB4Liy4Lij4LiI4Lix4LiaIElQIGFkZHJlc3Mg4LiX4Li14LmI4LiX4Liz4LmC4LiU4Lii4LiE4Liz4LiC4LitIEFQSSDguIjguLLguIHguKDguLLguKLguJnguK3guIEKLy8gQGRlc2NyaXB0aW9uOmJnICAgICAgINCR0LvQvtC60LjRgNCwINC30LDRgdC90LXQvNCw0L3QtdGC0L4g0L3QsCBJUCDQsNC00YDQtdGBLCDQuNC30LLRitGA0YjQtdC90L4g0YfRgNC10Lcg0LLRitC90YjQvdCwINC30LDRj9Cy0LrQsCDQutGK0LwgQVBJLgovLyBAZGVzY3JpcHRpb246cm8gICAgICAgQmxvY2hlYXrEgyBjYXB0dXJhcmVhIGFkcmVzZWkgSVAgZWZlY3R1YXTEgyBwcmluIGNlcmVyZWEgdW5laSBBUEkgZXh0ZXJuZS4KLy8gQGRlc2NyaXB0aW9uOmZpICAgICAgIEVzdMOkw6QgSVAtb3NvaXR0ZWVuIGthYXBwYXVrc2VuLCBqb2thIG9uIHRlaHR5IHVsa29pc2VuIEFQSS1weXlubsO2biBrYXV0dGEuCi8vIEBkZXNjcmlwdGlvbjppdCAgICAgICBCbG9jY2EgbGEgY2F0dHVyYSBkZWxsJ2luZGlyaXp6byBJUCBlZmZldHR1YXRhIGRhIHVuYSByaWNoaWVzdGEgZGkgQVBJIGVzdGVybmEuCi8vIEBkZXNjcmlwdGlvbjplbCAgICAgICDOps+BzqzOts61zrkgz4TOt869IM66zrHPhM6xzrPPgc6xz4bOriDPhM63z4IgzrTOuc61z43OuM+Fzr3Pg863z4IgSVAgz4DOv8+FIM+Az4HOsc6zzrzOsc+Ezr/PgM6/zrnOtc6vz4TOsc65IM6xz4DPjCDOtc6+z4nPhM61z4HOuc66z4wgzrHOr8+EzrfOvM6xIEFQSS4KLy8gQGRlc2NyaXB0aW9uOmVvICAgICAgIEJsb2thcyBsYSBrYXB0YWRvbiBkZSBsYSBJUC1hZHJlc28gZmFyaXRhIHBlciBla3N0ZXJhIEFQSSBwZXRvLgovLyBAZGVzY3JpcHRpb246aHUgICAgICAgQmxva2tvbGphIGF6IElQLWPDrW0gZWxrYXDDoXPDoXQsIGFtaXQga8O8bHPFkSBBUEkta8OpcsOpcyB2w6lnemV0dC4KLy8gQGRlc2NyaXB0aW9uOm5iICAgICAgIEJsb2trZXJlciBmYW5nc3RlbiBhdiBJUC1hZHJlc3NlbiB1dGbDuHJ0IGF2IGVuIGVrc3Rlcm4gQVBJLWZvcmVzcMO4cnNlbC4KLy8gQGRlc2NyaXB0aW9uOnNrICAgICAgIEJsb2t1amUgemFjaHl0w6F2YW5pZSBJUCBhZHJlc3kgdnlrb25hbsOpIGV4dGVybm91IHBvxb5pYWRhdmtvdSBBUEkuCi8vIEBkZXNjcmlwdGlvbjpzdiAgICAgICBCbG9ja2VyYXIgZsOlbmdzdGVuIGF2IElQLWFkcmVzc2VuIHNvbSB1dGbDtnJzIGF2IGVuIGV4dGVybiBBUEktYmVnw6RyYW4uCi8vIEBkZXNjcmlwdGlvbjpzciAgICAgICBCbG9raXJhIGh2YXRhbmplIElQIGFkcmVzZSBpenZyxaFlbm8gcHJla28gc3BvbGpub2cgQVBJIHphaHRldmEuCi8vIEBkZXNjcmlwdGlvbjpwbCAgICAgICBCbG9rdWplIHByemVjaHd5dHl3YW5pZSBhZHJlc3UgSVAgZG9rb255d2FuZSBwcnpleiB6ZXduxJl0cnpuZSDFvMSFZGFuaWUgQVBJLgovLyBAZGVzY3JpcHRpb246bmwgICAgICAgQmxva2tlZXJ0IGhldCB2YXN0bGVnZ2VuIHZhbiBoZXQgSVAtYWRyZXMgZGF0IHdvcmR0IGdlZGFhbiBkb29yIGVlbiBleHRlcm5lIEFQSS1hYW52cmFhZy4KLy8gQGRlc2NyaXB0aW9uOmRlICAgICAgIEJsb2NraWVydCBkYXMgRXJmYXNzZW4gZGVyIElQLUFkcmVzc2UgZHVyY2ggZWluZSBleHRlcm5lIEFQSS1BbmZyYWdlLgovLyBAZGVzY3JpcHRpb246ZGEgICAgICAgQmxva2VyZXIgb3BmYW5nZSBJUC1hZHJlc3NlbiB1ZGbDuHJ0IGFmIGVuIGVrc3Rlcm4gQVBJLWZvcmVzcMO4cmdzZWwuCi8vIEBkZXNjcmlwdGlvbjpjcyAgICAgICBCbG9rdWplIHphY2h5Y2Vuw60gSVAgYWRyZXN5IHByb3ZlZGVuw6kgZXh0ZXJuw60gxb7DoWRvc3TDrSBvIEFQSS4KLy8gQGRlc2NyaXB0aW9uOnVrICAgICAgINCR0LvQvtC60YPRlCDQt9Cw0YXQvtC/0LvQtdC90L3RjyBJUC3QsNC00YDQtdGB0LgsINC30LTRltC50YHQvdC10L3QtSDQt9C+0LLQvdGW0YjQvdGM0L7RjiDQt9Cw0L/QuNGC0L7QvCDQtNC+IEFQSS4KLy8gQGRlc2NyaXB0aW9uOnRyICAgICAgIEhhcmljaSBiaXIgQVBJIGlzdGXEn2kgdGFyYWbEsW5kYW4geWFwxLFsYW4gSVAgYWRyZXNpIHlha2FsYW1hecSxIGVuZ2VsbGVyLgovLyBAZGVzY3JpcHRpb246dmkgICAgICAgQ2jhurduIHZp4buHYyB0aHUgdGjhuq1wIMSR4buLYSBjaOG7iSBJUCB0aOG7sWMgaGnhu4duIGLhu59pIHnDqnUgY+G6p3UgQVBJIGLDqm4gbmdvw6BpLgovLyBAZGVzY3JpcHRpb246ZnItQ0EgICBCbG9xdWUgbGEgY2FwdHVyZSBkZSBsJ2FkcmVzc2UgSVAgZWZmZWN0dcOpZSBwYXIgdW5lIGRlbWFuZGUgZCdBUEkgZXh0ZXJuZS4KCi8vIEBtYXRjaCAgICAgICAgKjovLyovKgovLyBAZXhjbHVkZSAgICAgIGh0dHBzOi8vd3d3LnlvdXR1YmUuY29tLyoKLy8gQGV4Y2x1ZGUgICAgICBodHRwczovL20ueW91dHViZS5jb20vKgovLyBAZXhjbHVkZSAgICAgIGh0dHBzOi8vbXVzaWMueW91dHViZS5jb20vKgovLyBAZXhjbHVkZSAgICAgIGh0dHBzOi8veW91dHUuYmUvKgovLyBAZXhjbHVkZSAgICAgIGh0dHBzOi8vYWNjb3VudHMueW91dHViZS5jb20vKgovLyBAZXhjbHVkZSAgICAgIGh0dHBzOi8vd3d3LnlvdXR1YmUtbm9jb29raWUuY29tLyoKLy8gQGV4Y2x1ZGUgICAgICBodHRwczovL2dtYWlsLmNvbS8qCi8vIEBleGNsdWRlICAgICAgaHR0cHM6Ly9tYWlsLmdvb2dsZS5jb20vKgoKLy8gQGdyYW50ICAgICAgICBub25lCi8vIEBpY29uICAgICAgICAgZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFEUUFBQUEwQ0FZQUFBREZlQnZyQUFBQUlHTklVazBBQUhvbUFBQ0FoQUFBK2dBQUFJRG9BQUIxTUFBQTZtQUFBRHFZQUFBWGNKeTZVVHdBQUFBR1lrdEhSQUQvQVA4QS82QzlwNU1BQUFBSmNFaFpjd0FBQ3hNQUFBc1RBUUNhbkJnQUFBQUhkRWxOUlFmbkNod0lGd0NjZXFReUFBQVExRWxFUVZSbzNzMmFlWHhWMWJYSHYrdWNPMlJPeU0wTllaSWt0b0FpZzZDK1o2dFdJS0hWRHRwU2ZWcmJLaTJEclZWTHJTMWFwQSt4UExDMVVMQU9MU3BWM2hNUjlaV2lWa0FRUVR2S29HaURBbUVLa0pHRUpDUjNPSHYxajNOdTdzMEVxYmJ2ODlibmM3TnZ6dDFubjczV2IwMTdyU05sWlpjTElJRCtQeGhQUjMxYXcvZXYzS1J0MnhvTUJzak16TkI0M0NFYWpXbGJXeHZHbU1UbXU0Ny8wT1o3R24zL3JNMkxpSTRmUDVhRkN4ZWJ4Q1pmZU9HL1plYk03OXJSYU5ReVJzbklTRGRyMXo0ZHYraWlpUjA3WDdCZ3JtemV2QlZWL2NqTUFDcGxaWmRiSDNZQlZkVnd1SUJWcTU1VGdHQXdrQldMeFllcTZqbkFNT0FzVmMwSE1yeDcyb0Y2RVRrTTdCR1JDci9mZnlBU2liUUEzSERETlhMOGVBMGk4bitMa0tyS3NHRWYwNGNmZmt4emMzUDhsbVdkcDZwWFJpTFJTY0M1UUFqdzlXWU1IaHFPcXRaSElwSDNSR1NqaUx5OGJ0MHJ1NXVhVGtabnpwekszcjM3UlVUKzlRaUppR3pZc05tRXd5Ri9YVjNESjFYMW04Q25nVEFmaldwRlpEM3dXQ2lVLzBaZFhYMjB2SHlDcFM3M2ZWZjl2bm81VmRXU2txRXNYLzZrMnJZOXdoam5lNnBjQStSMTJWZ2NPQTRjRU9HUUt0VWkwdXI5bHFXcVlXQW9VQXdVOVlCa0U3RGF0cTJmTzQ2cG1ENzlSdG0vLzBDZjFiQlBDRG1PMFUyYnRtZ29sTzg3Y2FMeFdsWDlzV2NqcVZRSmJQRFVaMmNnNEQ4K1lFRFJxY3JLZzA3cXBMUFBMcmFycW81bFJLT3hJbFVkbzZybFFCbFEybVc5OTBYazNyeTgzTlVORFNkaUV5ZGVKclp0ZjNTRUhNZlJ6WnUzYWlBUXlJN0ZZajlRMVZsQVpzcURLMFJraFlpc0dUWHEzTXBkdTNZYnoxQ1NNeUpBd0ZzVm9BYm83LzR6YnR3WWErZk9kMHBVZFlxcVRnVkdwS3pkS2lKTC9IN2ZvbWcwMWp4aHdxVm5aT3EwQ0RtTzBjMmJYMWUvMzVjWGk4VVhBdE1CeTN2WVNlQngyN1lmZEJ4blh5b1RaZVVUWk11dEwrUTVnZlQrS2xZQlNCYWdncmFpcHM0WFBWWHpiNytlZW1McjcvN1h2VUZjNW16YkxuVWM1MWJnRzBDTzl4d2pJc3R0MjU0ZGo4ZFBuSW1wWGhGU1ZkMjQ4VFVOQm9QWjBXajBwOERNTHVwdzE4Q0JSV3VycW83RnZSdndyV3N1ZEFJWmw2cElPVEFlWkpDM3NZU2R4RUJiUUk0SXVoM1Y5YjVJNjdiWTUzT3FWUVFCaGd3WjVEdHk1T2hWcXJvZ1ZhMUY1RmQrdisvN2tVaTBlZEtrVDRsbFdUMHlaZlVHWFVuSlVFS2hmcjVZTFBZREQ1a0UvVWxFcmxmVjUyZVB6WFZReGI5Wnc3SlJ2eE1QWnI2c1lqME5NaFBrQW9RQldKS0pKVUh2azRWbEZTRnlnVnJXRExYc3AyTVpPUy9KUm03enY5UVdScFZsNDROeFZYMU9STDRDL0NueFVGV2RGb3ZGZjlpdlg1NnZ1UGdzZWtQSUxpMHRoaDVjODVvMXY5WDI5c2gxbnFTQ0NXWXN5NXFxcXUrc0JWN3NQMGplR3pTdHpOUlcvUkxWbXdtbUR3VHNEaldLdEVIOVVXaHA3UHhwYlVxTU5pMU5BM0JpbnpHQmpJdmxtSDA0dHJlaThvM3RmMlVSSExNc2E1dXFYb0xyRFFVWUg0bEVLM2ZzZVB2dHM4OHU2ZEZVdXRtUXFzcXJyMjR4dG0yUGNCem50eW13dis4aHMxMkIvTWQyQkJxTHg4N1FUYy9NWmRYQ01Objk0SmFsVUhLZXU5ckplbmowRHRqMW1tdGJJdlJNQWhuWjhQRnhjUEVYNm1UMFpmTUtpZ3NlWFRkZVloZGIxaFhHbU1YQThKUWI5dGkyZmJYak9CV1RKbjNLNmhwOHUyVUt3NGQvWEhmdDJ1MnZyNi8vWGdvekowWGtMbFhkdmhiSVg3NDkwRGhrOUowYWpjMWh5ek5wN052cHp2cmpPaWc5ejExdDMwN1l2QXBpRWZwRWxlOUE5Y0VDSFg3aFQyc3I2d3IrM2JJamFwdzdjTE9PVkJydU9NNnN3c0x3cldQSGpvcnQyclc3ZHh0U1ZYM29vZVZhWDk5d2lSYzBFL1Q0d0lGRmE1ZDk3bHg1YWxpZU5BNFpNME9ST2FoSkk5S2VuQlZOK1I2TEpGMjNDUGo4NEF0MC85ZytkNXh3UGR6eEdNUmphVHo0blRtcTVyNFVabHFCM1VBaThiMjJ0cmJ1RXc4ODhLQjJ6U1E2SVJRT0Y1Q2JtK052YWpyNURaSVpRSVZ0Mnc5V1ZSMkwzM3JrS0xJK1hxYkNYQ0N0YjZJSGNzTXcvWDdvVjlnNVBnRTRjZmZhMkFsUThXZjQ5UTlnN3c0N1pjWmhFWmxuV2RZZkhjZFpneHVuOG9CcDJkbFpiNFJDK2ZHR2hoTTluNGRXclhyT1dKWTFDamMzODRRckt4ekgyYWVBZjExTE9CN011QWNrbWJmMVpocXBGRXlIY1pPZ2FIQlN4Z215Z0ZQdHNQYVhzR29oTk5WNTF5MG9IZE1vYVpuZjBvRlh2dWlzdnhzUldhR3FDd0ZVZFhKcjY2bFJxMWUvc0QzVkQzUjg4WXdMVmIyQ1pLSlpLU0pyY1BVUko1QitIY2lsblRaMHBuTm1ZbzRUQndkd0REanFmZ0FPNzRmRjAySDU3Q1F6QU9FaE1IdGxOZzl1TFdiMVhRbmhyc0ZOc1FEQ3hwZ3J2T3ZkYmVqQ0M4Y1JEQWF5VkhWU3lsWTJqQjQ5c2hJdmFLcklUZDB3NlF0Q2lUbnEvU080ZHZXWDlURC9XdGk0MG1XNDB6MEM2Vm0yeHBucTM5TFlIMVhHamgxVkNXeEltVlVXQ1BpelJvNGNrVmc5aWRDQ0JROW9MQll2QmtaNmsrTWlzbUhuem5jTWdCUEl1QXhrVkkvU1B5TkNDZWNBV0Y1OFd2TnpXUGhWK09DdEpBUDVSV0RaeVh0VVFSa2RUOHUrQkdENzlsMUdSRGJnWnZRQTV6aU9LVjZ5NU9FZXZSemVTVFBoV1k2THlDNkF5ei83T1ZHUk1zRGZxL1JQUjc0QVdEN1hYbzRmaEY5OEM1Yi9FQnByM2QvOVFmajh0K0RyODF5djF5RW9CY0VQVEo1dzVXZkZVNjlkdU1jVGdKQXhKcEhNZGtiSXUvaHhFcEVlRGdRQy91T284c2JNbFhuQStKNmxmeHBVVEJ5S2l1SEcvM1NsLzlabW1IOE5iSGd5cVdLaEFYRHp6K0hiUzZEL1daM1JSRUJCeFJyMzV2VGY5T01wSlJnTUhnY09KRVJGTXVnbUViSnRXNTkvZnFVQVozVUlYamcwYU5EQVU2NjZwZmNIR2R6anhudER5TExoZ3MvQTNPZmdraW53dTRkZ3dmV3c1eS9KT2VkZURIZXZnaTk4RzRKK3FLc0NKK2FobHViR0xnSFFRYkdNM0RCZmhZS0MvRllST1pTVW13NVp1blNSMkxhZFJDZ1lESER6emJOc3I2Q1JFSEQxdm4yVkRvQjdCQ0M3endnWllOaDRtUDJVRzN1VzNRS1BmaDlPVkx1L0I5TGdzelBnbm1maC9NdGNuV2lvZzlkV0p4RWFkRFprNTROUlFMSlJEVk1EaHc5WEdWV3RUZ3BlUXZQbUxiTDlmbjh5RG1WbVptZzBHclZ3cXpPSmlhMnE2aDdPM1BOTXowV1BUZ2lsbE5ueXdtNGU5K3ZaVVBHbjVKUmdPbnpoRnJoaUdoZ0hxaXFoK3FBYmgzWnM5TkMxNEJOWFF6RE5ZMGo5YXRtWkZIYlptNHRRbXFyYW9WQS9wNnJxbUpzcHhPTU9YdTJ2dTd3RHZlTFFIYUdNSEpmQmFEdTh0QnllWGdBTnh6dlBOdzVzV1EydnIzRnZWZ1BOamREV25KeHp3YWZoMGk4bEhRT0NxQ042eEU0d2taU25JTkZvVkp1YlcraEFLQnFOYVVaR3VqbDU4bVJLTWtaV0FnRkJXeFZpZEJ3alVySm5OYTZYdXVvV21Id1RWRmZCa3orR0RVOUJQTnBkQUxFbzFCeWlWeG83QVdZK0FEa2hNTVpUQVkycFNET0RPeERLU2lMRXFkemMzRVQrNGRwUVcxc2JhOWMrSFFmcU93U3ZHaTR0TGZaRVl1cmNrMlpTWWgzU0czZzJmUGNSbUxZSURsZTRYdXpseHpvemM3cmsxQitBOUd3b1BnKys5bU9ZdlJLR25wUEtEQ0F0bGhPcnB4MkdEZnVZcmFxRnlhV2w0Y2lScW5oTFMydlNob3d4ZXRGRkV4R1J3eWx3RGoxNjlGZ0cxVFQ3SXFlcW94bDVSNENpVHVjcHl3YzN6WWRnQnJ5OEhGYk9kdzkwWFNrM0ROTVhRYi8rM1pOVEVjakloWUdsN3U4aVhaa0I5TEE0VHJXbUN3Ry9QNE1VYjZ5cWgwU0VzckxMTzJYYkNkcURtM0haUUhFMEdpdWlTSm8vK2VueXh0ZnUrUDEyUlM3b0ZMYjhQb2kyd2VOM3d5c3JrbWNmZnhDR2pJQ0Q3N3J4SnBnTzUwK0NBVU82SjZjZHRvV1hHWFJqQm1EN1pROU9hUkxBTm1ZQWJrMFAzR3ptQXcrRVRwbENBcjRLSUpFaEZxbnFHSUROdjErdnFLNEhqWFhrWXBiQTI5dmd2dXRnM2FOSlpuTERNT04rdUdGT01vMEJWK3B4dk1UVWRCOVZ1ekRSTWNiRW1JMmJWcnhpM0dYTWFGZFR3RE9SOXhKZ2taSXBjTjk5YzhUdjl4OEEvdVpOOEtucTVQUFBIMjBCK0NLdFcwSGV4aExYc0gvM0tQemtPdGk5TGJucG9TUGhycFV3NVRaSXkweXFWektONlczVHB4dmZ0cHpvNnpwQUdEbHloQVdVa3d3aDc2V2xwUjE4OGNWbnV5TzBaY3NiUkNLUkZoSFptS0lJWmJ0MjdTNUJoTmpuYzJyRUowOVFkOVRoNFZudzBPMXVaRStsUzc0SUYwMU9jYmNKNkwwL1NjM282NmpBYjV3ck0yb0VxS2o0b05TcnRDWTA2dFcydHJhV0pVc2U2a2poT213bzRReEU1R1ZWdlIzM1RGU2lxbE9BK3ltN0cycTJWZExXMHN6ZUhYazkyb0ZsOXh5eFVoSDZ4MnJ2V3dOdFRhdWkzdUhaR0RNRktQRldyUUZlOHZiZUtkdnVvSzk4NVJySnljbCt4K3NDNEUyZWFsbldTTm0wY0txK3MvV1JUc3lVam9ZQlhVdlNQZENIUTZqV012SDUwU3Z5YWhIQnNxeFNWYjBwWmRYMStmbjkzcDArL2NaT2hkSlVocVM2dW9iR3hxWVlzQnhvOUs0UE04YXNVdFZsd0JBUFJzUGwxem44YUpYcnpUcERrWkJFOHYvRTJhYnZOdFF1YXVaUHV5cnc2cXlyTHBSd3VNQlcxVnRKMXIwYkxjdDZ2TDYrSWJwLy80RnVWWjhPc1ltSXpKaHhrNFJDK1c4QXF4T0tCSnhIc2tEZklHTDlpRzh2bnMvZ1lXMEVVbW9sd1l6azkwQjZVbDYrQVBqOWZVV29YZFRjbDFXOTk1R2lDQ3grK2E5YVYxZC90ZGVIOHVRcHorYmtaRys3NFlacnVqYkZzRXRMaXlXVnFZYUdFL0x1dTM5emJOdmU2eGxnUVFvRTcxdVd6SGpKbUJVYmJ2N0ptNmNzL3dtVUN6bTZONU9oNThJWGI0TzhRbmZwekJ5b1B3WnRMWERGTjJGOHVadDBucDZaT2xFeko2dDY3eStXZlgxRWZCYW9aVmtYcU9yRHdBQnZEM3NzeTdxdHJhMjlwckF3TEYzNlJ2UllyRTkwNlVUa0JsVjlOQVdkblpabFhXK01xVkRnK3ZFbDhzeUM5eWRxL2JHNXBHZGZTbGF1SkIyQUJaRlRidGszcDhCTmZYb01tZ2xQSWRzc0U1OS80MzhFTmc1cGdudEJiZHMrMTNHY0o0Q0x2T2UzaXNnTVZmMmY4dklKb3FyZEluQkM1YnAxSHFaUHYxSHk4bktmRVpFbEpPUDdXR1BNQ2hFWkw4Q2R4VkhWeWI1WDdVRkR2aXladWJlanZOVVJmTlc0S3BnL0FIeSszcGlKZ2I0RjNCNW9hL3F5bWVqZmtQZUo4ZHpySWRPRkdRTXNMaXdzZUhiT25EdDdZcVozaEJKTUpkb3BzVmpzWjZvNkkwWDFQaENSdXdZUEh2amJ3NGVyT3RvcC9yV05oVjVCWTdLS05RNTBNRWcycUQrUk5ZTzBnQjRCM2hKak5scE85SFhueW93YXp6Z29MQ3l3YTJ2cnIxYlYvOEl0Q1NUb1YybHBhZDl2YjI5djdxbW1uVURvREEwdnQzdm44L242T1k2elVGV25wYURhak52d1d0YXQ0VlUyVWJiZXNqb3ZscEZiaUdwWUxUdFQxSWlLTkZ0T3JFRWM1L2lsRDEvWHRIbjVPcU1EcFNQMzhsenpyWjREU0p5UURiQThFQWpNamthakp5Wk92TXl5TEt0SFprNkxVRmVtQWdGL2Rpd1cvNkdxZnBmT0xjazlJdktFaUt3Wk0rYThBenQydk8zMlZKOVUrQnBRRGZRSER1TTYvWGJROUNRVEkwZWVZMVZVdkY5cWpQbFNUeTFKWUhGYVd0cjk3ZTN0eldkaTVvd0lwVEsxYWRQcm1wL2Z6OWZZMkhTdHFzNmxjNHNEM0lybVJoSFpJQ0k3ZzhIZzhWQ29YK3VSSTBjNzVkZkRoMy9NM3IvL1lMb3hab0F4Wmd4UTdublRraTdyN1JHUmU4UGhnbWRyYW1wamZXR0d2alNORTZNeFJvY09QWXNubmxpcFh1OW9GbkF0cDIzcnl5RlZyUkdSRmxWRlJESlZ0VC91ZWFhWW50djZqU0x5cklnOFlJelpjODg5ZDhxYmIvNjV0NWN3dXRHSGZ2R2lzRERzcjYydCt5VHdUVldkREJUeTBhZ1dlTVd5ck1kemNySzNOVFkyeFhweHpiMHlRMjh0eVRPTkpTVkRyZkx5Q2VZUGYvanpnZXpzN0hYeGVIeURxaDdDZFJnWnVLMFdpOU9UNHpIeFZ4RjVURVRtaGtMNXkwK2RPclZ2eXBTcnRMQ3c0SFNhMHl0OTVKZVhRcUY4VnE5K1FRRUNBWCtXNDVoaVk4eHdZSVNxRGhHUmtLcW1pN2dGRFJGcDhJN05IK0NlWnc2MXRia2xueGt6YnBKOSt5clA5STdQYWZucHN3MmRhUlFSUGVlYzRTeGQra2pIUTVjdVhTVHo1aTJ5VmRXT1JxT2FtNXRyamh5cGlrdEt2L1dWVjU3blp6OWIxdGQzZXM1SUh3bWhNNDIyYmF2Zjc1ZFFxRitpYmtaTFM2dDRMd0Qrbyt2MWlaOS8yZ3VBUFkyTzQ0ampPRnBWZGV6RGJMN3IyTEhwMDkzN2Q4MVlGZlJZNDRrOEFBQUFKWFJGV0hSa1lYUmxPbU55WldGMFpRQXlNREl6TFRFd0xUSTRWREE0T2pJeU9qUXhLekF3T2pBdzB3dEFvd0FBQUNWMFJWaDBaR0YwWlRwdGIyUnBabmtBTWpBeU15MHhNQzB5T0ZRd09Eb3lNam8wTVNzd01Eb3dNS0pXK0I4QUFBQW9kRVZZZEdSaGRHVTZkR2x0WlhOMFlXMXdBREl3TWpNdE1UQXRNamhVTURnNk1qTTZNREFyTURBNk1EQTR2TGV3QUFBQUFFbEZUa1N1UW1DQwoKLy8gQGxpY2Vuc2UgICAgICBNSVQKLy8gQHJ1bi1hdCAgICAgICBkb2N1bWVudC1zdGFydAoKLy8gQGNvbXBhdGlibGUgICAgICBjaHJvbWUKLy8gQGNvbXBhdGlibGUgICAgICBmaXJlZm94Ci8vIEBjb21wYXRpYmxlICAgICAgb3BlcmEKLy8gQGNvbXBhdGlibGUgICAgICBlZGdlCi8vIEBjb21wYXRpYmxlICAgICAgc2FmYXJpCi8vIEBjb21wYXRpYmxlICAgICAgYmVycnlicm93c2VyCgovLyBAZG93bmxvYWRVUkwgaHR0cHM6Ly91cGRhdGUuZ3JlYXN5Zm9yay5vcmcvc2NyaXB0cy80NzIzNzUvTiVDMyVBM28lMjBQZWd1ZSUyME1ldSUyMElQLnVzZXIuanMKLy8gQHVwZGF0ZVVSTCBodHRwczovL3VwZGF0ZS5ncmVhc3lmb3JrLm9yZy9zY3JpcHRzLzQ3MjM3NS9OJUMzJUEzbyUyMFBlZ3VlJTIwTWV1JTIwSVAubWV0YS5qcwovLyA9PS9Vc2VyU2NyaXB0PT0KCihmdW5jdGlvbigpIHsKICAgICd1c2Ugc3RyaWN0JzsKCiAgICBjb25zb2xlLmxvZygnSVBCTE9DSyA9PT09Pj4gTGlzdGVuaW5nIGZvciByZXF1ZXN0cy4uLicpOwogICAgLy8gTGlzdGEgZGUgVVJMcyBkZSBBUEkgY29uaGVjaWRhcyBwYXJhIGNhcHR1cmFyIG8gSVAKICAgIGNvbnN0IGJsb2NrZWRBcGlVcmxzID0gWwogICAgICAgICdodHRwczovL2FwaS5pcGlmeS5vcmcnLAogICAgICAgICdodHRwczovL2FwaS5pcGlmeS5vcmc/Zm9ybWF0PWpzb24nLAogICAgICAgICdodHRwczovL2lwaW5mby5pbycsCiAgICAgICAgJ2h0dHBzOi8vYXBpLmlwYXBpLmNvbScsCiAgICAgICAgJ2h0dHBzOi8vd3d3LmlwbG9jYXRpb24ubmV0JywKICAgICAgICAnaHR0cHM6Ly9hcGkuaXBsb2NhdGlvbi5uZXQnLAogICAgICAgICdodHRwczovL3dlYnNpdGUtY2RuLmlwaW5mby5pbycsCiAgICAgICAgJ2h0dHBzOi8vcC50eXBla2l0Lm5ldCcsCiAgICAgICAgJ2h0dHBzOi8vdXNlLnR5cGVraXQubmV0JywKICAgICAgICAnaHR0cHM6Ly9wYWdlYWQyLmdvb2dsZXN5bmRpY2F0aW9uLmNvbScsCiAgICAgICAgJ2h0dHBzOi8vZGF0YS1qc2V4dC5jb20nLAogICAgICAgICdodHRwczptYWluLmV4b2NsaWNrLmNvbScsCiAgICAgICAgJ2h0dHBzOm1haW4uZXhkeW5zcnYuY29tJywKICAgICAgICAnaHR0cHM6bWFpbi5leG9zcnYuY29tJywKICAgICAgICAnaHR0cHM6Ly9nZW9sb2NhdGlvbi5vbmV0cnVzdC5jb20nLAogICAgICAgICdodHRwczovL2Nkbi5jb29raWVsYXcub3JnJywKICAgICAgICAnaHR0cDovL2F4ZW9jeS5jb20nLAogICAgICAgICdodHRwczovL2NoaWt6enouY29tJywKICAgICAgICAnaHR0cHM6Ly90aGVtZWV0cGFydG5lcnMubGlmZScsCiAgICAgICAgJ2h0dHBzOi8vYXBpLmlwLWFwaS5jb20nLAogICAgICAgICdodHRwczovL2lwYXBpLmNvJywKICAgICAgICAnaHR0cHM6Ly9nZW8uaXBpZnkub3JnJywKICAgICAgICAnaHR0cHM6Ly9leHRyZW1lLWlwLWxvb2t1cC5jb20nLAogICAgICAgICdodHRwczovL2ZyZWVpcGFwaS5jb20nLAogICAgICAgICdodHRwczovL2FwcGxpY2F0aW9uL3ZuZC5tYXhtaW5kLmNvbScsCiAgICAgICAgJ2h0dHBzOi8vZnJlZWdlb2lwLmlvJywKICAgICAgICAnaXBiYXNlLmNvbScsCiAgICAgICAgJ2h0dHBzOi8vYXBpLmlwMmxvY2F0aW9uLmNvbScsCiAgICAgICAgJ2h0dHBzOi8vaXBzdGFjay5jb20nLAogICAgICAgICdodHRwczovL2lwc3RhY2sxLnAucmFwaWRhcGkuY29tJywKICAgICAgICAnaHR0cHM6Ly9hcHAuZnVzZWJveC5mbScsCiAgICAgICAgJ2h0dHBzOi8vYXBpLnVzZXJjZW50cmljcy5ldScsCiAgICAgICAgJ2h0dHBzOi8vbWFwcy5nb29nbGVhcGlzLmNvbScsCiAgICAgICAgJ2h0dHBzOi8vd3d3LmV4cHJlc3N2cG4uY29tJywKICAgICAgICAnaHR0cHM6Ly9ncmFwaHFsLnVzZXJjZW50cmljcy5ldScsCiAgICAgICAgJ2h0dHBzOi8vaXBhZGRyZXNzJywKICAgICAgICAnaHR0cHM6Ly90bHMuYnJvd3NlcmxlYWtzLmNvbScsCiAgICAgICAgJ2h0dHBzOi8vcmYucmV2b2x2ZXJtYXBzLmNvbScsCiAgICAgICAgJ3dob2lzeG1sYXBpLmNvbScsCiAgICAgICAgJ21heG1pbmQuY29tJywKICAgICAgICAnaXAtYXBpJywKICAgICAgICAnL2Nvb2tpZScsCiAgICAgICAgJy9sb2NhdGlvbicsCiAgICAgICAgJy9pcCcsCiAgICAgICAgJy9pcHMnLAogICAgICAgICcvYXBpL2hvc3RuYW1lJywKICAgICAgICAnL2FwaS93aG9pcycsCiAgICAgICAgJ2h0dHBzOi8vWycsCiAgICAgICAgJ2dlb2lwJywKICAgICAgICAnZ2VvaXAyJywKICAgICAgICAnaXBhZGRyZXNzJwogICAgICAgIC8vIEFkaWNpb25lIG1haXMgVVJMcyBkZSBBUEkgcXVlIGRlc2VqYSBibG9xdWVhciwgc2UgbmVjZXNzw6FyaW8KICAgIF07CgogICAgbGV0IGxpc3RCbG9jazEgPSAibGlzdCBvZiBibG9ja2VkID09PiAiOwogICAgbGV0IGxpc3RCbG9jazIgPSAibGlzdCBvZiBibG9ja2VkIC0tPiAiOwoKICAgIHZhciB2ZXJpZnljMSA9IGZhbHNlOwogICAgLy8gSW50ZXJjZXB0YSBhcyBzb2xpY2l0YcOnw7VlcyBBSkFYIGZlaXRhcyBwZWxvIHdlYnNpdGUKICAgIGNvbnN0IG9wZW4gPSBYTUxIdHRwUmVxdWVzdC5wcm90b3R5cGUub3BlbjsKICAgIFhNTEh0dHBSZXF1ZXN0LnByb3RvdHlwZS5vcGVuID0gZnVuY3Rpb24obWV0aG9kLCB1cmwpIHsKICAgICAgICAvLyBWZXJpZmljYSBzZSBhIFVSTCBkYSBzb2xpY2l0YcOnw6NvIGNvcnJlc3BvbmRlIGEgdW1hIFVSTCBkZSBBUEkgYmxvcXVlYWRhCiAgICAgICAgY29uc29sZS5sb2coJz09PT0+PicsIHVybCk7CiAgICAgICAgaWYgKGJsb2NrZWRBcGlVcmxzLnNvbWUoYXBpVXJsID0+IHVybC5zdGFydHNXaXRoKGFwaVVybCkpKSB7CiAgICAgICAgICAgIHZlcmlmeWMxID0gdHJ1ZTsKICAgICAgICAgICAgbGlzdEJsb2NrMSArPSB1cmwrIiB+ICI7CiAgICAgICAgICAgIGNvbnNvbGUubG9nKGBTb2xpY2l0YcOnw6NvIGRlIEFQSSBibG9xdWVhZGE6ICR7dXJsfWApOwogICAgICAgICAgICByZXR1cm47IC8vIEludGVycm9tcGUgYSBleGVjdcOnw6NvIGRhIHNvbGljaXRhw6fDo28KICAgICAgICB9CiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBibG9ja2VkQXBpVXJscy5sZW5ndGg7IGkrKykgewogICAgICAgICAgdmFyIHBhbGF2cmEgPSBibG9ja2VkQXBpVXJsc1tpXTsKICAgICAgICAgIGlmICh1cmwuaW5jbHVkZXMocGFsYXZyYSkpIHsKICAgICAgICAgICAgY29uc29sZS5sb2coYH4gQmxvY2s6ICR7cGFsYXZyYX1gKTsKICAgICAgICAgICAgbGlzdEJsb2NrMSArPSBwYWxhdnJhKyIgfiAiOwogICAgICAgICAgICB2ZXJpZnljMSA9IHRydWU7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgLy8gQ29udGludWEgY29tIGEgZXhlY3XDp8OjbyBub3JtYWwgZGEgc29saWNpdGHDp8OjbwogICAgICAgIG9wZW4uYXBwbHkodGhpcywgYXJndW1lbnRzKTsKICAgIH07CgoKCiAgbGV0IGJsb3F1ZWFyRmV0Y2ggPSB0cnVlOwogIGxldCB2ZXJpZnljMiA9IGZhbHNlOwoKICBmdW5jdGlvbiBpbnRlcmNlcHRhckZldGNoKHVybCwgb3B0aW9ucykgewogICAgY29uc29sZS5sb2coJy0tLS0+PicsIHVybCk7CiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGJsb2NrZWRBcGlVcmxzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgdmFyIHBhbGF2cmEgPSBibG9ja2VkQXBpVXJsc1tpXTsKICAgICAgICBpZiAodXJsLmluY2x1ZGVzKHBhbGF2cmEpKSB7CiAgICAgICAgICBjb25zb2xlLmxvZyhgfiBCbG9jazogJHtwYWxhdnJhfWApOwogICAgICAgICAgbGlzdEJsb2NrMiArPSBwYWxhdnJhKyIgfiAiOwogICAgICAgICAgdmVyaWZ5YzIgPSB0cnVlOwogICAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh7IHN0YXR1czogMjAwLCBib2R5OiAnQSBzb2xpY2l0YcOnw6NvIGZvaSBibG9xdWVhZGEuJyB9KTsKICAgICAgICB9CiAgICAgIH0KICAgIGlmIChibG9xdWVhckZldGNoICYmIGNvcnJlc3BvbmRlQVVybEJsb3F1ZWFkYSh1cmwpKSB7CiAgICAgIGNvbnNvbGUubG9nKCdTb2xpY2l0YcOnw6NvIGZldGNoIGJsb3F1ZWFkYTonLCB1cmwpOwogICAgICB2ZXJpZnljMiA9IHRydWU7CiAgICAgIGxpc3RCbG9jazIgKz0gdXJsKyIgfiAiOwogICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHsgc3RhdHVzOiAyMDAsIGJvZHk6ICdBIHNvbGljaXRhw6fDo28gZm9pIGJsb3F1ZWFkYS4nIH0pOwogICAgfSBlbHNlIHsKICAgICAgcmV0dXJuIHdpbmRvdy5vcmlnaW5hbEZldGNoLmNhbGwodGhpcywgdXJsLCBvcHRpb25zKTsKICAgIH0KICB9CgogIGZ1bmN0aW9uIGNvcnJlc3BvbmRlQVVybEJsb3F1ZWFkYSh1cmwpIHsKICAgIGZvciAoY29uc3QgdXJsQmxvcXVlYWRhIG9mIGJsb2NrZWRBcGlVcmxzKSB7CiAgICAgIGlmICh1cmwuc3RhcnRzV2l0aCh1cmxCbG9xdWVhZGEpKSB7CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIH0KICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBibG9ja2VkQXBpVXJscy5sZW5ndGg7IGkrKykgewogICAgICAgIHZhciBwYWxhdnJhID0gYmxvY2tlZEFwaVVybHNbaV07CiAgICAgICAgaWYgKHVybC5pbmNsdWRlcyhwYWxhdnJhKSkgewogICAgICAgICAgY29uc29sZS5sb2coYH4gQmxvY2s6ICR7cGFsYXZyYX1gKTsKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0KICAgICAgfQogICAgfQogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgLy8gU3Vic3RpdHVpciBhIGZ1bsOnw6NvIGZldGNoIGdsb2JhbG1lbnRlCiAgd2luZG93Lm9yaWdpbmFsRmV0Y2ggPSB3aW5kb3cuZmV0Y2g7CiAgd2luZG93LmZldGNoID0gaW50ZXJjZXB0YXJGZXRjaDsKCiAgLy8gQWd1YXJkZSBvIGV2ZW50byBkZSBjYXJyZWdhbWVudG8gdG90YWwgZGEgcMOhZ2luYQogIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgZnVuY3Rpb24oKSB7CiAgICAvLyBBcMOzcyBvIGNhcnJlZ2FtZW50byB0b3RhbCBkYSBww6FnaW5hLCBwZXJtaXRpciB0b2RhcyBhcyBzb2xpY2l0YcOnw7VlcyBmZXRjaAogICAgYmxvcXVlYXJGZXRjaCA9IGZhbHNlOwogIH0pOwoKCgogIGZ1bmN0aW9uIG5vdGlmaWNhQWxlcnQoKSB7CiAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7CiAgICAgIGlmKHZlcmlmeWMxID09IHRydWUpewogICAgICAgIGFsZXJ0KCJ+fiBJUEJMT0NLIEFKQVggfn5cblxuIitsaXN0QmxvY2sxKTsKICAgICAgICBsaXN0QmxvY2sxID0gImxpc3Qgb2YgYmxvY2tlZCA9PT4gIjsKICAgICAgICB2ZXJpZnljMSA9IGZhbHNlOwogICAgICB9CiAgICAgIGVsc2UgaWYodmVyaWZ5YzIgPT0gdHJ1ZSl7CiAgICAgICAgYWxlcnQoIn5+IElQQkxPQ0sgRmV0Y2ggfn5cblxuIitsaXN0QmxvY2syKTsKICAgICAgICBsaXN0QmxvY2syID0gImxpc3Qgb2YgYmxvY2tlZCAtLT4gIjsKICAgICAgICB2ZXJpZnljMiA9IGZhbHNlOwogICAgICB9CiAgICAgIGVsc2V7CiAgICAgICAgY29uc29sZS5sb2coJ0lQQkxPQ0sgPT09PT4+IE5vIEFQSSByZXF1ZXN0cyBmb3IgSVAgaWRlbnRpZmllZC4nKTsKICAgICAgfQogICAgfSwxMDAwKTsKICB9CgogIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgbm90aWZpY2FBbGVydCk7Cgp9KSgpOw==
Add Comment
Please, Sign In to add comment