{"title":"Retrouvez les adh\u00e9rents du SNEC","nolayout":"false","content":"PHN0eWxlPg0KI2ZpY2hlcyB7DQogICAgZm9udC1mYW1pbHk6ICJPcGVuIFNhbnMgQ29uZGVuc2VkIixzYW5zLXNlcmlmOw0KICAgIGZvbnQtd2VpZ2h0OiAzMDA7DQogICAgY29sb3I6ICM2NjY2NjY7DQogICAgbGluZS1oZWlnaHQ6IDEuNGVtOw0KICAgIG1hcmdpbi10b3A6IDMwcHg7DQogICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgIHBhZGRpbmctbGVmdDogMzBweDsNCiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4Ow0KICAgIG1heC13aWR0aDogMTE3MHB4Ow0KICAgIG1hcmdpbjogYXV0bzsNCn0NCiNmaWNoZXMgPiBwOmZpcnN0LWNoaWxkew0KICAgIGZvbnQtZmFtaWx5OiAiT3BlbiBTYW5zIENvbmRlbnNlZCIsc2Fucy1zZXJpZjsNCiAgICBmb250LXNpemU6IDI4cHg7DQogICAgbWFyZ2luLWJvdHRvbTogMjBweDsNCiAgICBtYXJnaW4tdG9wOiAwOw0KICAgIG1hcmdpbi1ib3R0b206IDMwcHg7DQogICAgdGV4dC1hbGlnbjogY2VudGVyOw0KfQ0KLnRpdGxlLXJvdyB0aCB7DQogICAgYmFja2dyb3VuZC1jb2xvcjogIzU0NTQ1NDsNCiAgICBjb2xvcjogI2ZmZjsNCiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOw0KICAgIGZvbnQtd2VpZ2h0OiA2MDA7DQogICAgZm9udC1zaXplOiAxNXB4Ow0KICAgIGhlaWdodDogNTBweDsNCn0NCi5maWNoZS1yb3cgew0KICAgIGN1cnNvcjogcG9pbnRlcjsNCiAgICBmb250LXNpemU6IDE0cHg7DQp9DQouZmljaGUtcm93Om50aC1jaGlsZChvZGQpIHsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFmMWYxOw0KICAgIGNvbG9yOiAjMmYyZjJmOw0KfQ0KLmZpY2hlLXJvdzpudGgtY2hpbGQoZXZlbikgew0KICAgIGNvbG9yOiAjODY4Njg2Ow0KfQ0KLmZpY2hlLXJvdyBhIHsNCiAgICBjb2xvcjogI2UxMDUxMjsNCiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsNCn0NCi5maWNoZS1yb3cgYTpob3ZlciB7DQogICAgY29sb3I6ICMyNjI2MjY7DQogICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7DQp9DQouZmljaGUtcm93IHRkIHsNCiAgICBwYWRkaW5nOiAxNXB4IDEwcHg7DQogICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZGVkZWRlOw0KfQ0KdGFibGUgew0KICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNkZWRlZGU7DQogICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZWRlZGU7DQogICAgZm9udC1mYW1pbHk6ICJPcGVuIFNhbnMiLHNhbnMtc2VyaWY7DQogICAgZm9udC13ZWlnaHQ6IDQwMDsNCiAgICBjb2xvcjogIzY2NjY2NjsNCiAgICBsaW5lLWhlaWdodDogMS40ZW07DQogICAgbWFyZ2luLXRvcDogMjBweDsNCiAgICBib3JkZXItc3BhY2luZzogMDsNCiAgICB3aWR0aDogMTAwJTsNCn0NCiNmaWNoZS1mb3JtIHsNCiAgICBmb250LWZhbWlseTogIk9wZW4gU2FucyBDb25kZW5zZWQiLHNhbnMtc2VyaWY7DQogICAgZm9udC13ZWlnaHQ6IDMwMDsNCiAgICBjb2xvcjogIzY2NjY2NjsNCiAgICBsaW5lLWhlaWdodDogMS40ZW07DQogICAgZGlzcGxheTogZmxleDsNCiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsNCiAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KfQ0KI2ZpY2hlLWZvcm0gPiAqOm5vdCg6bGFzdC1jaGlsZCkgew0KICAgIG1hcmdpbi1yaWdodDogMjBweDsNCn0NCiNzdWJtaXQsICNjbG9zZSwgI3ZvaXItcGx1cywgI3ByZWNlZGVudCB7DQogICAgY29sb3I6ICNlMTA1MTI7DQogICAgYmFja2dyb3VuZDogI2VhZWFlYTsNCiAgICBib3JkZXI6IDA7DQogICAgYm9yZGVyLXJhZGl1czogMDsNCiAgICBmb250LWZhbWlseTogIk9wZW4gU2FucyBDb25kZW5zZWQiLHNhbnMtc2VyaWY7DQogICAgZm9udC13ZWlnaHQ6IDMwMDsNCiAgICBwYWRkaW5nOiAxNHB4Ow0KICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICB0cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlIDBzOw0KICAgIGxpbmUtaGVpZ2h0OiAxLjRlbTsNCiAgICBjdXJzb3I6IHBvaW50ZXI7DQp9DQoNCiN2b2lyLXBsdXMsICNwcmVjZWRlbnQgew0KICAgIG1hcmdpbjogMjBweCAyMHB4Ow0KfQ0KDQojc3VibWl0OmhvdmVyLCAjY2xvc2U6aG92ZXIsICN2b2lyLXBsdXM6aG92ZXIsICNwcmVjZWRlbnQ6aG92ZXIgew0KICAgIGJhY2tncm91bmQtY29sb3I6ICNlMTA1MTI7DQogICAgY29sb3I6ICNmZmY7DQp9DQoNCiN2b2lyLXBsdXM6ZGlzYWJsZWQsICNwcmVjZWRlbnQ6ZGlzYWJsZWQgew0KICAgIGJhY2tncm91bmQtY29sb3I6ICNkZWRlZGU7DQogICAgY29sb3I6IGluaXRpYWw7DQp9DQoubGFiZWwtZm9ybSB7DQogICAgY29sb3I6ICM0YzRjNGM7DQogICAgZm9udC13ZWlnaHQ6IDYwMDsNCn0NCi5pbnB1dC10ZXh0LWZvcm0gew0KICAgIGJhY2tncm91bmQtY29sb3I6ICNlYWVhZWE7DQogICAgYm94LXNoYWRvdzogbm9uZTsNCiAgICBib3JkZXI6IDA7DQogICAgYm9yZGVyLXJhZGl1czogMDsNCiAgICBoZWlnaHQ6IDQ1cHg7DQogICAgcGFkZGluZzogMCAxMHB4Ow0KfQ0KI21vZGFsZS12aWV3IHsNCiAgICB3aWR0aDogMTAwJTsNCiAgICBoZWlnaHQ6IDEwMHZoOw0KICAgIHBvc2l0aW9uOiBmaXhlZDsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOw0KICAgIG9wYWNpdHk6IDAuNTsNCiAgICB0b3A6IDA7DQogICAgbGVmdDogMDsNCn0NCiNtb2RhbGUtdmlldy1jb250ZW50IHsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOw0KICAgIHdpZHRoOiA4MCU7DQogICAgbWF4LXdpZHRoOiA3NTBweDsNCiAgICBsZWZ0OiA1MCU7DQogICAgcGFkZGluZzogMzBweDsNCiAgICBwb3NpdGlvbjogZml4ZWQ7DQogICAgdG9wOiAzMHB4Ow0KICAgIHotaW5kZXg6IDM7DQogICAgb3ZlcmZsb3cteTogc2Nyb2xsOw0KICAgIG1pbi1oZWlnaHQ6IDIwdmg7DQogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCAtNTAlICk7DQogICAgbWF4LWhlaWdodDogODB2aDsNCiAgICBkaXNwbGF5OiBmbGV4Ow0KICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47DQp9DQojbW9kYWxlLXZpZXctY29udGVudCA+IGRpdnsNCiAgICBtYXJnaW4tYm90dG9tOiAyMHB4Ow0KfQ0KI21vZGFsZS12aWV3LWNvbnRlbnQgI2luZm9zLWFkaGVyZW50ew0KICAgIG1hcmdpbi10b3A6IDEwcHg7DQogICAgbWFyZ2luLWJvdHRvbTogMTBweDsgICANCn0NCiNtb2RhbGUtdmlldy1jb250ZW50ICNpbmZvcy1hZGhlcmVudHsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTQ1NDU0Ow0KICAgIGNvbG9yOiAjZmZmOw0KICAgIGRpc3BsYXk6IGJsb2NrOw0KICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICBtYXJnaW4tdG9wOiAwOw0KICAgIHRvcDogLTMwcHg7DQogICAgbWFyZ2luLWJvdHRvbTogMDsNCiAgICBsZWZ0OiAtMzBweDsNCiAgICBwYWRkaW5nOiAxNXB4IDMwcHg7DQogICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsNCiAgICB3aWR0aDogMTAwJTsNCiAgICBmb250LXNpemU6IDEuM3JlbTsgDQogICAgb3JkZXI6IC0xOyAgDQp9DQojbW9kYWxlLXZpZXctY29udGVudCBoMXsNCiAgICBmb250LXdlaWdodDogMzAwOw0KICAgIGNvbG9yOiAjZTEwNTEyOw0KICAgIGZvbnQtc2l6ZTogNTJweDsNCiAgICBtYXJnaW4tYm90dG9tOiAwOw0KICAgIGZvbnQtZmFtaWx5OiAiT3BlbiBTYW5zIENvbmRlbnNlZCIsc2Fucy1zZXJpZjsgICAgDQp9DQojbW9kYWxlLXZpZXctY29udGVudCBoMnsNCiAgICBmb250LWZhbWlseTogIk9wZW4gU2FucyBDb25kZW5zZWQiLHNhbnMtc2VyaWY7DQogICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNiMmIyYjI7DQogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgIGZvbnQtc2l6ZTogMzJweDsNCiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDsNCiAgICBtYXJnaW4tYm90dG9tOiAyMHB4Ow0KICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICBjb2xvcjogcmdiKDc2LDc2LDc2KTsgICANCn0NCiNtb2RhbGUtdmlldy1jb250ZW50ICNjYXRlZ29yaWV7DQogICAgd2lkdGg6IGF1dG87DQogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgIGZvbnQtc2l6ZTogMTRweDsNCiAgICBwYWRkaW5nOiA4cHggMTVweCA4cHggMzVweDsNCiAgICBjb2xvcjogIzgyODI4MjsNCiAgICBtYXJnaW4tYm90dG9tOiAxMHB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA0MDA7DQogICAgcG9zaXRpb246IHJlbGF0aXZlOw0KICAgIG9yZGVyOiAtMTsNCn0NCiNtb2RhbGUtdmlldy1jb250ZW50ICNjYXRlZ29yaWU6YmVmb3Jlew0KICAgIGNvbnRlbnQ6ICIiOw0KICAgIGRpc3BsYXk6IGJsb2NrOw0KICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICB0b3A6IDUwJTsNCiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoIC01MCUgKTsNCiAgICBsZWZ0OiAxNXB4Ow0KICAgIHdpZHRoOiAwOw0KICAgIGhlaWdodDogMDsNCiAgICBib3JkZXItdG9wOiA4cHggc29saWQgdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLWJvdHRvbTogOHB4IHNvbGlkIHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1sZWZ0OiAxMnB4IHNvbGlkICNkNmQ2ZDY7ICAgICAgICANCn0NCiNtb2RhbGUtdmlldy1jb250ZW50ICN0ZWxlcGhvbmUsDQojbW9kYWxlLXZpZXctY29udGVudCAjYWRyZXNzZSwNCiNtb2RhbGUtdmlldy1jb250ZW50ICNlbWFpbCwNCiNtb2RhbGUtdmlldy1jb250ZW50ICNwZGYsDQojbW9kYWxlLXZpZXctY29udGVudCAjbGllbnsNCiAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgcGFkZGluZy1sZWZ0OiAyNHB4Ow0KfQ0KI21vZGFsZS12aWV3LWNvbnRlbnQgI2VtYWlsew0KICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYjJiMmIyOw0KICAgIHBhZGRpbmctYm90dG9tOiAyNHB4OyAgIA0KfQ0KI21vZGFsZS12aWV3LWNvbnRlbnQgI3RlbGVwaG9uZTpiZWZvcmUsDQojbW9kYWxlLXZpZXctY29udGVudCAjYWRyZXNzZTpiZWZvcmUsDQojbW9kYWxlLXZpZXctY29udGVudCAjZW1haWw6YmVmb3JlLA0KI21vZGFsZS12aWV3LWNvbnRlbnQgI3BkZjpiZWZvcmUsDQojbW9kYWxlLXZpZXctY29udGVudCAjbGllbjpiZWZvcmV7DQogICAgY29udGVudDogIlxmMDk1IjsNCiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7DQogICAgZm9udDogbm9ybWFsIG5vcm1hbCBub3JtYWwgMTRweC8xIEZvbnRBd2Vzb21lOw0KICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICB0b3A6IDNweDsNCiAgICBsZWZ0OiAwOw0KICAgIGZvbnQtc2l6ZTogMThweDsNCiAgICBjb2xvcjogIzUwNTA1MDsNCn0NCiNtb2RhbGUtdmlldy1jb250ZW50ICNhZHJlc3NlOmJlZm9yZXsNCiAgICBjb250ZW50OiAiXGYwNDEiOw0KfQ0KI21vZGFsZS12aWV3LWNvbnRlbnQgI2VtYWlsOmJlZm9yZXsNCiAgICBjb250ZW50OiAiXGYwZTAiOw0KICAgIGZvbnQtc2l6ZTogMTZweDsNCn0NCiNtb2RhbGUtdmlldy1jb250ZW50ICNwZGY6YmVmb3Jlew0KICAgIGNvbnRlbnQ6ICJcZjE1YiI7DQp9DQojbW9kYWxlLXZpZXctY29udGVudCAjbGllbjpiZWZvcmV7DQogICAgY29udGVudDogIlxmMTA5IjsNCn0NCiNtb2RhbGUtdmlldy1jb250ZW50IGE6aG92ZXJ7DQogICAgY29sb3I6IHJnYigyMjUsIDUsIDE4KTsNCn0NCg0KLyogUG91ciBsZXMgYmFycmVzIGRlIHJlY2hlcmNoZSAqLw0KI215VUwgew0KICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsNCiAgICBwYWRkaW5nOiAwOw0KICAgIG1hcmdpbjogMDsNCiAgICBwb3NpdGlvbjogYWJzb2x1dGU7DQogICAgei1pbmRleDogOTk5OTk7DQogICAgbWF4LWhlaWdodDogNDAwcHg7DQogICAgb3ZlcmZsb3cteTogc2Nyb2xsOw0KICAgIGRpc3BsYXk6IG5vbmU7DQp9DQoNCiNteVVMIGxpIHNwYW4gew0KICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7DQogICAgbWFyZ2luLXRvcDogLTFweDsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjZmNmY2Ow0KICAgIHBhZGRpbmc6IDEycHg7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgIGZvbnQtc2l6ZTogMThweDsNCiAgICBjb2xvcjogYmxhY2s7DQogICAgZGlzcGxheTogYmxvY2s7DQogICAgY3Vyc29yOiBwb2ludGVyOw0KfQ0KDQojbXlVTCBsaSBzcGFuOmhvdmVyOm5vdCguaGVhZGVyKSB7DQogICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTsNCn0NCi5lcnJvciB7DQogICAgY29sb3I6IHJlZDsNCn0NCiNsb2dvLWFkaGVyZW50IHsNCiAgICBtYXgtd2lkdGg6IDEwMHB4Ow0KfSANCg0KI3Bob3RvLWFkaGVyZW50IHsNCiAgICBtYXgtd2lkdGg6IDM1MHB4Ow0KfQ0KI3NlYXJjaC1sYWJlbCB7DQogICAgZm9udC1zaXplOiAxLjVlbTs7DQp9DQojY291bnRlciB7DQogICAgZGlzcGxheTogbm9uZTsNCn0NCiNjYXRlZ29yaWUgew0KICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZWRlZGU7DQogICAgcGFkZGluZzogMTVweDsNCiAgICBmb250LXdlaWdodDogYm9sZDsNCiAgICB3aWR0aDogNTYwcHg7DQp9DQoNCkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpew0KDQogICAgI2ZpY2hlLWZvcm0gew0KICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOw0KICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsNCiAgICB9DQogICAgLmlucHV0LXRleHQtZm9ybSB7DQogICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyMHB4KTsNCiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsNCiAgICAgICAgbWFyZ2luLXRvcDogNXB4Ow0KICAgIH0NCg0KfQ0KPC9zdHlsZT48c2NyaXB0Pg0KICAgICAgICAoZG9jdW1lbnQpLm9uY2xpY2sgPSAoZnVuY3Rpb24oZSkgew0KICAgICAgICAgICAgaWYgKGUudGFyZ2V0LmlkICE9PSAibXlJbnB1dCIpIHsNCiAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibXlVTCIpLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7DQogICAgICAgICAgICB9DQogICAgICAgIH0pOw0KICAgICAgICBmdW5jdGlvbiBteUZ1bmN0aW9uKG15aW5wdXQsIG15dWwpIHsNCiAgICAgICAgICAgIC8vIERlY2xhcmUgdmFyaWFibGVzDQogICAgICAgICAgICB2YXIgaW5wdXQsIGZpbHRlciwgdWwsIGxpLCBhLCBpLCB0eHRWYWx1ZTsNCiAgICAgICAgICAgIGlucHV0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQobXlpbnB1dCk7DQogICAgICAgICAgICBmaWx0ZXIgPSBpbnB1dC52YWx1ZS50b1VwcGVyQ2FzZSgpOw0KICAgICAgICAgICAgdWwgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChteXVsKTsNCiAgICAgICAgICAgIGxpID0gdWwuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2xpJyk7DQoNCiAgICAgICAgICAgIGZvciAoaSA9IDA7IGkgPCBsaS5sZW5ndGg7IGkrKykgew0KICAgICAgICAgICAgICAgIGEgPSBsaVtpXS5nZXRFbGVtZW50c0J5VGFnTmFtZSgic3BhbiIpWzBdOw0KICAgICAgICAgICAgICAgIHR4dFZhbHVlID0gYS50ZXh0Q29udGVudCB8fCBhLmlubmVyVGV4dDsNCiAgICAgICAgICAgICAgICBpZiAodHh0VmFsdWUudG9VcHBlckNhc2UoKS5pbmRleE9mKGZpbHRlcikgPT09IDApIHsNCiAgICAgICAgICAgICAgICAgICAgbGlbaV0uc3R5bGUuZGlzcGxheSA9ICIiOw0KICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgIGxpW2ldLnN0eWxlLmRpc3BsYXkgPSAibm9uZSI7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgPC9zY3JpcHQ+PGRpdiBpZD0iZmljaGVzIj48aDEgY2xhc3M9InZpZXctdGl0bGUiPlJldHJvdXZleiBsZXMgYWRoJmVhY3V0ZTtyZW50cyBkdSBTTkVDPC9oMT48ZGl2PjxwIGlkPSJzZWFyY2gtbGFiZWwiPlJlY2hlcmNoZXogbm9zIGFkaMOpcmVudHMgcGFyIDo8L3A+DQogICAgICAgICAgICA8Zm9ybSBhY3Rpb249IiIgbWV0aG9kPSJwb3N0IiBpZD0iZmljaGUtZm9ybSI+DQogICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPSJsYWJlbC1mb3JtIj5LLXphbTwvbGFiZWw+DQogICAgICAgICAgICAgICAgPGlucHV0IGNsYXNzPSJpbnB1dC10ZXh0LWZvcm0iIHR5cGU9InRleHQiIG5hbWU9Imt6YW0iIHZhbHVlPSIiPg0KICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz0ibGFiZWwtZm9ybSI+UmFpc29uIHNvY2lhbGU8L2xhYmVsPg0KICAgICAgICAgICAgICAgIDxpbnB1dCBjbGFzcz0iaW5wdXQtdGV4dC1mb3JtIiB0eXBlPSJ0ZXh0IiBuYW1lPSJyYWlzb25fc29jaWFsZSIgdmFsdWU9IiI+DQogICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPSJsYWJlbC1mb3JtIj5Ew6lwYXJ0ZW1lbnQ8L2xhYmVsPg0KICAgICAgICAgICAgICAgIDxpbnB1dCBjbGFzcz0iaW5wdXQtdGV4dC1mb3JtIiB0eXBlPSJ0ZXh0IiBuYW1lPSJkZXBhcnRlbWVudCIgdmFsdWU9IiI+DQogICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPSJsYWJlbC1mb3JtIj5Nw6l0aWVyPC9sYWJlbD4NCiAgICAgICAgICAgICAgICA8c3BhbiBzdHlsZT0icG9zaXRpb246IHJlbGF0aXZlIj48aW5wdXQgYXV0b2NvbXBsZXRlPSJvZmYiIGNsYXNzPSJpbnB1dC10ZXh0LWZvcm0iIHR5cGU9InRleHQiIHZhbHVlPSIiIG5hbWU9Im1ldGllciIgaWQ9Im15SW5wdXQiIG9uZm9jdXM9ImRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdteVVMJykuc3R5bGUuZGlzcGxheSA9ICdibG9jayc7IiBvbmtleXVwPSJteUZ1bmN0aW9uKCdteUlucHV0JywgJ215VUwnKSI+DQogICAgICAgICAgICAgICAgPHVsIGlkPSJteVVMIj48bGk+PHNwYW4gaWQ9Im15U3BhbiIgb25jbGljaz0iZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ215SW5wdXQnKS52YWx1ZSA9ICgodGhpcykuaW5uZXJIVE1MKTsgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ215VUwnKS5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnOyI+PC9zcGFuPjwvbGk+PGxpPjxzcGFuIGlkPSJteVNwYW4iIG9uY2xpY2s9ImRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdteUlucHV0JykudmFsdWUgPSAoKHRoaXMpLmlubmVySFRNTCk7IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdteVVMJykuc3R5bGUuZGlzcGxheSA9ICdub25lJzsiPjIwMDwvc3Bhbj48L2xpPjxsaT48c3BhbiBpZD0ibXlTcGFuIiBvbmNsaWNrPSJkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbXlJbnB1dCcpLnZhbHVlID0gKCh0aGlzKS5pbm5lckhUTUwpOyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbXlVTCcpLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7Ij4yMDE5IC0gRW52b2kgQnVsbGV0aW4gQWRow6lzaW9uLGNvdGlzYXRpb25zIDIwMTYgcsOpZ2zDqWVzLGNvdGlzYXRpb25zIDIwMTYgcsOpZ2zDqWVzLENvdGlzYXRpb24gU05FQyAyMDE1Ig0KQ09UMTVLMDAwMjA4LDAwLTExMzhNUyxTSVNDQSAtU1VEIENVSVNJTkUgVEFSQkVTLCwscHJvZmVzc2lvbm5lbCxQcm9zcGVjdCwzNTI3NDcwMTgwMDAxMywsaW5kZXBlbmRhbnQsTG90IGxhIEdhcm91bmnDqHJlLFJvdXRlIGRlIFBhdSwsNjUwMDAsVEFSQkVTLEZyYW48L3NwYW4+PC9saT48bGk+PHNwYW4gaWQ9Im15U3BhbiIgb25jbGljaz0iZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ215SW5wdXQnKS52YWx1ZSA9ICgodGhpcykuaW5uZXJIVE1MKTsgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ215VUwnKS5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnOyI+MzAwPC9zcGFuPjwvbGk+PGxpPjxzcGFuIGlkPSJteVNwYW4iIG9uY2xpY2s9ImRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdteUlucHV0JykudmFsdWUgPSAoKHRoaXMpLmlubmVySFRNTCk7IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdteVVMJykuc3R5bGUuZGlzcGxheSA9ICdub25lJzsiPkFESEVTSU9OIC0gUGx1cyBhZGjDqXJlbnQsTUFKIC0gQWRow6lzaW9uIEZOQUVNLDIwMTkgLSBFbnZvaSBCdWxsZXRpbiBBZGjDqXNpb24sY290aXNhdGlvbnMgMjAxNiByw6lnbMOpZXMsQ290aXNhdGlvbiBTTkVDIDIwMTUiDQpDT1QxN0UwMDA2MjYsQ09NRVJBMDM2LFNBUkwgSkZNLCwscHJvZmVzc2lvbm5lbCxEaXN0cmlidXRldXIsNzk4OTUzMTM5MDAwMTAsQ09NRVJBLGNvbmNlc3Npb25uYWlyZSxaQSBkdSBDaGFtcCBCb3NzdSwsLDcxNjAwLFBBUkFZPC9zcGFuPjwvbGk+PGxpPjxzcGFuIGlkPSJteVNwYW4iIG9uY2xpY2s9ImRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdteUlucHV0JykudmFsdWUgPSAoKHRoaXMpLmlubmVySFRNTCk7IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdteVVMJykuc3R5bGUuZGlzcGxheSA9ICdub25lJzsiPkNPTVBUQSAtIEZhY3R1cmUgYWRow6lzaW9uLENPTVBUQSAtIFJlbGFuY2UsQ09NUFRBIC0gRmFjdHVyZSBhZGjDqXNpb24sTUFKIC0gQ29vcmRvbm7DqWVzLENPTVBUQSAtIFJlbGFuY2UsQ09WSUQtMTkgLSBNYXNxdWVzLENPTlRBQ1QgLSBDbG90dXJlLENPTlRBQ1QgLSBFbiBjb3VycyxDT05UQUNUIC0gRW4gY291cnMsMjAxOSAtIEVudm9pIEZhY3R1cmUgQ290aXNhdGlvbixWaXRyb3BoYW5pZSAyMDE5LFdFQiAtIEZpbiBBY2PDqHMsQ3JvaXNpw6hyZSBDPC9zcGFuPjwvbGk+PGxpPjxzcGFuIGlkPSJteVNwYW4iIG9uY2xpY2s9ImRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdteUlucHV0JykudmFsdWUgPSAoKHRoaXMpLmlubmVySFRNTCk7IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdteVVMJykuc3R5bGUuZGlzcGxheSA9ICdub25lJzsiPkNPTlRBQ1QgLSBDbG90dXJlLENBTVBVUyBFbnZvaSBwbGFxdWV0dGUgMjAxOSxQYXJ0aWNpcGFudCBDb25ncsOocyBTTkVDIDIwMTYsY290aXNhdGlvbnMgMjAxNiByw6lnbMOpZXMsQ3JvaXNpw6hyZSBDb25ncsOocyBTTkVDIDIwMTYsQ09OR1LDiFMgU05FQyAyMDE2LGNvdGlzYXRpb25zIDIwMTYgcsOpZ2zDqWVzIg0KQ09UMTVLMDAwMTcwLDAxLTExMDgsU0FTIE1JQ0hFTCAyTSwsLHByb2Zlc3Npb25uZWwsRGlzdHJpYnV0ZXVyLDQ1MzQ4NTA4ODAwMDE4LENVPC9zcGFuPjwvbGk+PGxpPjxzcGFuIGlkPSJteVNwYW4iIG9uY2xpY2s9ImRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdteUlucHV0JykudmFsdWUgPSAoKHRoaXMpLmlubmVySFRNTCk7IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdteVVMJykuc3R5bGUuZGlzcGxheSA9ICdub25lJzsiPkNPTlRBQ1QgLSBDbG90dXJlLENPTlRBQ1QgLSBDbG90dXJlLDIwMTkgLSBFbnZvaSBGYWN0dXJlIENvdGlzYXRpb24sMjAxOSAtIEVudm9pIEJ1bGxldGluIEFkaMOpc2lvbiwyMDE5IC0gVsOpcmlmaWNhdGlvbiBjb29yZG9ubsOpZXMsQ09OVEFDVCAtIEVuIGNvdXJzIg0KQ09UMTlDMDAwOTMxLEFSVEhVUkJPTk5FVDA0NCxDVUlTSU5FUyBEVSBMQVpBUk8sLCxwcm9mZXNzaW9ubmVsLERpc3RyaWJ1dGV1ciw4NDc2ODM3NzgwMDAxNyxBUlRIVVIgQk9OTjwvc3Bhbj48L2xpPjxsaT48c3BhbiBpZD0ibXlTcGFuIiBvbmNsaWNrPSJkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbXlJbnB1dCcpLnZhbHVlID0gKCh0aGlzKS5pbm5lckhUTUwpOyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbXlVTCcpLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7Ij5DT05UQUNUIC0gQ2xvdHVyZSxDT05UQUNUIC0gQ2xvdHVyZSxBREhFU0lPTiAtIFBsdXMgYWRow6lyZW50LENPTVBUQSAtIFJlbGFuY2UsQ09OVEFDVCAtIENsb3R1cmUsQ09OVEFDVCAtIEVuIGNvdXJzLENPTlRBQ1QgLSBDbG90dXJlLDIwMTkgLSBWw6lyaWZpY2F0aW9uIGNvb3Jkb25uw6llcyxDT05UQUNUIC0gQ2xvdHVyZSxBREhFU0lPTiAtIE5ldyBQYWNrYWdlLFNBREVDQyAyMDE5IC0gQ29udGFjdCINCkNPVDE3RTAwMDU4OCwwMS0xMDYyTVMsU0E8L3NwYW4+PC9saT48bGk+PHNwYW4gaWQ9Im15U3BhbiIgb25jbGljaz0iZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ215SW5wdXQnKS52YWx1ZSA9ICgodGhpcykuaW5uZXJIVE1MKTsgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ215VUwnKS5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnOyI+Q09OVEFDVCAtIENsb3R1cmUsQ09OVEFDVCAtIENsb3R1cmUsTUFKIC0gQ29vcmRvbm7DqWVzLENPTlRBQ1QgLSBDbG90dXJlLENPTlRBQ1QgLSBFbiBjb3VycyxDT05UQUNUIC0gQ2xvdHVyZSxDT05UQUNUIC0gQ2xvdHVyZSxDT05UQUNUIC0gQ2xvdHVyZSxDT05UQUNUIC0gQ2xvdHVyZSxDT01QVEEgLSBGYWN0dXJlIGFkaMOpc2lvbixDT05UQUNUIC0gQ2xvdHVyZSxDT05UQUNUIC0gQ2xvdHVyZSxDT05UQUNUIC0gRW4gY291cnMsQ09OVEFDVCAtIEM8L3NwYW4+PC9saT48bGk+PHNwYW4gaWQ9Im15U3BhbiIgb25jbGljaz0iZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ215SW5wdXQnKS52YWx1ZSA9ICgodGhpcykuaW5uZXJIVE1MKTsgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ215VUwnKS5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnOyI+Q09OVEFDVCAtIEVuIGNvdXJzLE1BSiAtIENvb3Jkb25uw6llcyxDT05UQUNUIC0gQ2xvdHVyZSxDT05UQUNUIC0gRW4gY291cnMsMjAxOSAtIEVudm9pIEZhY3R1cmUgQ290aXNhdGlvbixDT05UQUNUIC0gRW4gY291cnMsMjAxOSAtIExpdGlnZSwyMDE5IC0gRW52b2kgQnVsbGV0aW4gQWRow6lzaW9uLENPTlRBQ1QgLSBDbG90dXJlLGNvdGlzYXRpb25zIDIwMTYgcsOpZ2zDqWVzLENvdGlzYXRpb24gU05FQyAyMDE1Ig0KQ09UMjBHMDAxMjIxLENVSVNJTjwvc3Bhbj48L2xpPjxsaT48c3BhbiBpZD0ibXlTcGFuIiBvbmNsaWNrPSJkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbXlJbnB1dCcpLnZhbHVlID0gKCh0aGlzKS5pbm5lckhUTUwpOyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbXlVTCcpLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7Ij5jb3Rpc2F0aW9ucyAyMDE2IHLDqWdsw6llcw08L3NwYW4+PC9saT48bGk+PHNwYW4gaWQ9Im15U3BhbiIgb25jbGljaz0iZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ215SW5wdXQnKS52YWx1ZSA9ICgodGhpcykuaW5uZXJIVE1MKTsgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ215VUwnKS5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnOyI+TS48L3NwYW4+PC9saT48bGk+PHNwYW4gaWQ9Im15U3BhbiIgb25jbGljaz0iZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ215SW5wdXQnKS52YWx1ZSA9ICgodGhpcykuaW5uZXJIVE1MKTsgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ215VUwnKS5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnOyI+TUFKIC0gQ29vcmRvbm7DqWVzLENPTVBUQSAtIEZhY3R1cmUgYWRow6lzaW9uLENPTVBUQSAtIEZhY3R1cmUgYWRow6lzaW9uLE1BSiAtIENvb3Jkb25uw6llcyxDT05UQUNUIC0gQ2xvdHVyZSxDT05UQUNUIC0gQ2xvdHVyZSxNQUogLSBDb29yZG9ubsOpZXMsQ09OVEFDVCAtIENsb3R1cmUsTUFKIC0gQ29vcmRvbm7DqWVzLENPTlRBQ1QgLSBDbG90dXJlLE1BSiAtIENvb3Jkb25uw6llcyINCkNPVDE1SzAwMDQwNywwMy0xMDA3LENESSAtIENVSVNJTkUgREVTSTwvc3Bhbj48L2xpPjxsaT48c3BhbiBpZD0ibXlTcGFuIiBvbmNsaWNrPSJkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbXlJbnB1dCcpLnZhbHVlID0gKCh0aGlzKS5pbm5lckhUTUwpOyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbXlVTCcpLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7Ij5NQUogLSBDb29yZG9ubsOpZXMsQ09OVEFDVCAtIENsb3R1cmUsQ09NUFRBIC0gQnVsbGV0aW4gYWRow6lzaW9uLDIwMTkgLSBFbnZvaSBGYWN0dXJlIENvdGlzYXRpb24sMjAxOSAtIEVudm9pIEJ1bGxldGluIEFkaMOpc2lvbiINCkNPVDE1SzAwMDE3NSwwMC0xMTA5TVMsU0FSTCBDU1MsLCxwcm9mZXNzaW9ubmVsLFByb3NwZWN0LCxTQ0hNSURULGNvbmNlc3Npb25uYWlyZSw0IHJ1ZSBkZSBsJ0VyYWJsZSwsLDU3MjAwLFNBUlJFR1VFTUlORVMsRnJhbmM8L3NwYW4+PC9saT48bGk+PHNwYW4gaWQ9Im15U3BhbiIgb25jbGljaz0iZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ215SW5wdXQnKS52YWx1ZSA9ICgodGhpcykuaW5uZXJIVE1MKTsgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ215VUwnKS5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnOyI+TUFKIC0gQ29vcmRvbm7DqWVzLENPTlRBQ1QgLSBDbG90dXJlLENPTlRBQ1QgLSBDbG90dXJlLENPTlRBQ1QgLSBDbG90dXJlLENPTlRBQ1QgLSBDbG90dXJlLENPTlRBQ1QgLSBDbG90dXJlLENPTlRBQ1QgLSBDbG90dXJlLENPTlRBQ1QgLSBDbG90dXJlLENPTlRBQ1QgLSBDbG90dXJlLENPTlRBQ1QgLSBFbiBjb3VycyxNQUogLSBDb29yZG9ubsOpZXMiDQpDT1QyMEgwMDE5NDgsQ09NRVJBMDAwLENESSAtIENPTUVSQSwsLHByb2Zlc3Npb25uZWwsRGk8L3NwYW4+PC9saT48bGk+PHNwYW4gaWQ9Im15U3BhbiIgb25jbGljaz0iZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ215SW5wdXQnKS52YWx1ZSA9ICgodGhpcykuaW5uZXJIVE1MKTsgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ215VUwnKS5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnOyI+TUFKIC0gQ29vcmRvbm7DqWVzLE1BSiAtIEFkaMOpc2lvbiBGTkFFTSxjb3Rpc2F0aW9ucyAyMDE2IHLDqWdsw6llcyINCkNPVDE5TTAwMTAyOCwwMS0xOTM0LFNBUyBDRCBDSEFVTU9OVCwsLHByb2Zlc3Npb25uZWwsRGlzdHJpYnV0ZXVyLDg1MTMwMTc5NjAwMDEzLENIQUJFUlQgRFVWQUwsY29uY2Vzc2lvbm5haXJlLDc3IGF2ZW51ZSBkZSBsYSBSw6lwdWJsaXF1ZSwsLDUyMDAwLENIQVVNT05ULEZyYW5jZSxIQVVURSBNQVJORSw1MiwwMzI1MDE5MDk4LCw8L3NwYW4+PC9saT48bGk+PHNwYW4gaWQ9Im15U3BhbiIgb25jbGljaz0iZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ215SW5wdXQnKS52YWx1ZSA9ICgodGhpcykuaW5uZXJIVE1MKTsgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ215VUwnKS5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnOyI+TW1lPC9zcGFuPjwvbGk+PC91bD48aW5wdXQgaWQ9ImNvdW50ZXIiIHR5cGU9InRleHQiIHZhbHVlPSIwIiBuYW1lPSJjb3VudGVyIj48L3NwYW4+DQogICAgICAgICAgICAgICAgPGlucHV0IGlkPSJzdWJtaXQiIHR5cGU9InN1Ym1pdCIgbmFtZT0ic3VibWl0IiB2YWx1ZT0iUmVjaGVyY2hlciI+DQogICAgICAgICAgICA8L2Zvcm0+PC9kaXY+PHNjcmlwdD4NCiAgICAgICAgZnVuY3Rpb24gdmlldyhmaWNoZSkgew0KICAgICAgICAgICAgLy93aW5kb3cucGFyZW50LnBvc3RNZXNzYWdlKCdpZnJhbWVfbWVzc2FnZScpOw0KICAgICAgICAgICAgdmFyIG1vZGFsZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOw0KICAgICAgICAgICAgbW9kYWxlLnNldEF0dHJpYnV0ZSgnaWQnLCAnbW9kYWxlLXZpZXcnKTsNCg0KICAgICAgICAgICAgdmFyIG1vZGFsZV9jb250ZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7DQogICAgICAgICAgICBtb2RhbGVfY29udGVudC5zZXRBdHRyaWJ1dGUoJ2lkJywgJ21vZGFsZS12aWV3LWNvbnRlbnQnKTsNCg0KICAgICAgICAgICAgdmFyIHJvdyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInAiKTsNCiAgICAgICAgICAgIHJvdy5zZXRBdHRyaWJ1dGUoJ2lkJywgJ2luZm9zLWFkaGVyZW50Jyk7DQogICAgICAgICAgICByb3cuaW5uZXJIVE1MID0gJ0luZm9ybWF0aW9ucyBzdXIgY2V0IGFkaMOpcmVudCA6JzsNCiAgICAgICAgICAgIG1vZGFsZV9jb250ZW50LmFwcGVuZENoaWxkKHJvdyk7DQoNCiAgICAgICAgICAgIGlmIChmaWNoZVsnbG9nbyddLmxlbmd0aCA+IDApIHsNCiAgICAgICAgICAgICAgICB2YXIgcm93NyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOw0KICAgICAgICAgICAgICAgIHZhciByb3c3X2ltZyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImltZyIpOw0KICAgICAgICAgICAgICAgIHJvdzdfaW1nLnNldEF0dHJpYnV0ZSgnaWQnLCAnbG9nby1hZGhlcmVudCcpOw0KICAgICAgICAgICAgICAgIHJvdzdfaW1nLnNldEF0dHJpYnV0ZSgnc3JjJywgImh0dHBzOi8vam9iYm9hcmQuYXdlbHR5LmNvbSIrZmljaGVbJ2xvZ28nXSk7DQogICAgICAgICAgICAgICAgcm93Ny5hcHBlbmRDaGlsZChyb3c3X2ltZyk7DQogICAgICAgICAgICAgICAgbW9kYWxlX2NvbnRlbnQuYXBwZW5kQ2hpbGQocm93Nyk7DQogICAgICAgICAgICB9DQogICAgICAgICAgICANCiAgICAgICAgICAgIHZhciByb3cxID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgicCIpOw0KICAgICAgICAgICAgcm93MS5zZXRBdHRyaWJ1dGUoJ2lkJywgJ2NhdGVnb3JpZScpOw0KICAgICAgICAgICAgcm93MS5pbm5lckhUTUwgPSBmaWNoZVsnY2F0ZWdvcmllJ107DQogICAgICAgICAgICBtb2RhbGVfY29udGVudC5hcHBlbmRDaGlsZChyb3cxKTsNCiAgICAgICAgICAgIA0KICAgICAgICAgICAgaWYgKGZpY2hlWydlbnNlaWduZSddLmxlbmd0aCA+IDApIHsNCiAgICAgICAgICAgICAgICB2YXIgcm93MyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImgxIik7DQogICAgICAgICAgICAgICAgcm93My5zZXRBdHRyaWJ1dGUoJ2lkJywgJ2Vuc2VpZ25lJyk7DQogICAgICAgICAgICAgICAgcm93My5pbm5lckhUTUwgPSBmaWNoZVsnZW5zZWlnbmUnXTsNCiAgICAgICAgICAgICAgICBtb2RhbGVfY29udGVudC5hcHBlbmRDaGlsZChyb3czKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgIA0KICAgICAgICAgICAgdmFyIHJvdzIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJoMiIpOw0KICAgICAgICAgICAgcm93Mi5zZXRBdHRyaWJ1dGUoJ2lkJywgJ3JhaXNvbi1zb2NpYWxlJyk7DQogICAgICAgICAgICByb3cyLmlubmVySFRNTCA9IGZpY2hlWydyYWlzb25fc29jaWFsZSddOw0KICAgICAgICAgICAgbW9kYWxlX2NvbnRlbnQuYXBwZW5kQ2hpbGQocm93Mik7DQogICAgICAgICAgICANCiAgICAgICAgICAgIHZhciByb3c0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7DQogICAgICAgICAgICByb3c0LnNldEF0dHJpYnV0ZSgnaWQnLCAnYWRyZXNzZScpOw0KICAgICAgICAgICAgcm93NC5pbm5lckhUTUwgPSBmaWNoZVsnYWRyZXNzZTEnXTsNCiAgICAgICAgICAgIG1vZGFsZV9jb250ZW50LmFwcGVuZENoaWxkKHJvdzQpOw0KICAgICAgICAgICAgDQogICAgICAgICAgICBpZiAoZmljaGVbJ2FkcmVzc2UyJ10ubGVuZ3RoID4gMCkgew0KICAgICAgICAgICAgICAgIHZhciByb3dBZHJlc3MyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7DQogICAgICAgICAgICAgICAgcm93QWRyZXNzMi5pbm5lckhUTUwgPSBmaWNoZVsnYWRyZXNzZTInXTsNCiAgICAgICAgICAgICAgICByb3c0LmFwcGVuZENoaWxkKHJvd0FkcmVzczIpOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgDQogICAgICAgICAgICB2YXIgcm93Q1AgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsNCiAgICAgICAgICAgIHJvd0NQLmlubmVySFRNTCA9IGZpY2hlWydjb2RlX3Bvc3RhbCddKycgJytmaWNoZVsndmlsbGUnXTsNCiAgICAgICAgICAgIHJvdzQuYXBwZW5kQ2hpbGQocm93Q1ApOw0KICAgICAgICAgICAgDQogICAgICAgICAgICBpZiAoZmljaGVbJ3RlbGVwaG9uZSddLmxlbmd0aCA+IDApIHsNCiAgICAgICAgICAgICAgICB2YXIgcm93X3Bob25lID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgicCIpOw0KICAgICAgICAgICAgICAgIHJvd19waG9uZS5zZXRBdHRyaWJ1dGUoJ2lkJywgJ3RlbGVwaG9uZScpOw0KICAgICAgICAgICAgICAgIHZhciByb3dfcGhvbmVfbGluayA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImEiKTsNCiAgICAgICAgICAgICAgICByb3dfcGhvbmVfbGluay5zZXRBdHRyaWJ1dGUoJ2hyZWYnLCAndGVsOicrZmljaGVbJ3RlbGVwaG9uZSddKTsNCiAgICAgICAgICAgICAgICByb3dfcGhvbmVfbGluay5zZXRBdHRyaWJ1dGUoJ3RhcmdldCcsICdfYmxhbmsnKTsNCiAgICAgICAgICAgICAgICByb3dfcGhvbmVfbGluay5pbm5lckhUTUwgPSBmaWNoZVsndGVsZXBob25lJ107DQogICAgICAgICAgICAgICAgcm93X3Bob25lLmFwcGVuZENoaWxkKHJvd19waG9uZV9saW5rKTsNCiAgICAgICAgICAgICAgICBtb2RhbGVfY29udGVudC5hcHBlbmRDaGlsZChyb3dfcGhvbmUpOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgDQogICAgICAgICAgICBpZiAoZmljaGVbJ2VtYWlsJ10ubGVuZ3RoID4gMCkgew0KICAgICAgICAgICAgICAgIHZhciByb3dfZW1haWwgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJwIik7DQogICAgICAgICAgICAgICAgcm93X2VtYWlsLnNldEF0dHJpYnV0ZSgnaWQnLCAnZW1haWwnKTsNCiAgICAgICAgICAgICAgICB2YXIgcm93X2VtYWlsX2xpbmsgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJhIik7DQogICAgICAgICAgICAgICAgcm93X2VtYWlsX2xpbmsuc2V0QXR0cmlidXRlKCdocmVmJywgJ21haWx0bzonK2ZpY2hlWydlbWFpbCddKTsNCiAgICAgICAgICAgICAgICByb3dfZW1haWxfbGluay5zZXRBdHRyaWJ1dGUoJ3RhcmdldCcsICdfYmxhbmsnKTsNCiAgICAgICAgICAgICAgICByb3dfZW1haWxfbGluay5pbm5lckhUTUwgPSBmaWNoZVsnZW1haWwnXTsNCiAgICAgICAgICAgICAgICByb3dfZW1haWwuYXBwZW5kQ2hpbGQocm93X2VtYWlsX2xpbmspOw0KICAgICAgICAgICAgICAgIG1vZGFsZV9jb250ZW50LmFwcGVuZENoaWxkKHJvd19lbWFpbCk7DQogICAgICAgICAgICB9DQogICAgICAgICAgICANCiAgICAgICAgICAgIGlmIChmaWNoZVsnc2l0ZV93ZWInXS5sZW5ndGggPiAwKSB7DQogICAgICAgICAgICAgICAgdmFyIHJvdzUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJwIik7DQogICAgICAgICAgICAgICAgcm93NS5zZXRBdHRyaWJ1dGUoJ2lkJywgJ3NpdGUtd2ViJyk7DQogICAgICAgICAgICAgICAgdmFyIHJvdzVfbGluayA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImEiKTsNCiAgICAgICAgICAgICAgICBpZiAoZmljaGVbJ3NpdGVfd2ViJ10uc3Vic3RyaW5nKDAsIDQpID09ICJodHRwIikgew0KICAgICAgICAgICAgICAgICAgICByb3c1X2xpbmsuc2V0QXR0cmlidXRlKCdocmVmJywgZmljaGVbJ3NpdGVfd2ViJ10pOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICBlbHNlIHsNCiAgICAgICAgICAgICAgICAgICAgcm93NV9saW5rLnNldEF0dHJpYnV0ZSgnaHJlZicsICIvLyIrZmljaGVbJ3NpdGVfd2ViJ10pOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICByb3c1X2xpbmsuc2V0QXR0cmlidXRlKCd0YXJnZXQnLCAnX2JsYW5rJyk7DQogICAgICAgICAgICAgICAgcm93NV9saW5rLmlubmVySFRNTCA9IGZpY2hlWydzaXRlX3dlYiddOw0KICAgICAgICAgICAgICAgIHJvdzUuYXBwZW5kQ2hpbGQocm93NV9saW5rKTsNCiAgICAgICAgICAgICAgICBtb2RhbGVfY29udGVudC5hcHBlbmRDaGlsZChyb3c1KTsNCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgaWYgKGZpY2hlWydwZGYnXS5sZW5ndGggPiAwKSB7DQogICAgICAgICAgICAgICAgdmFyIHJvdzEwID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7DQogICAgICAgICAgICAgICAgcm93MTAuc2V0QXR0cmlidXRlKCdpZCcsICdwZGYnKTsNCiAgICAgICAgICAgICAgICB2YXIgcm93MTBfaW1nID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYSIpOw0KICAgICAgICAgICAgICAgIHJvdzEwX2ltZy5zZXRBdHRyaWJ1dGUoJ2hyZWYnLCAiaHR0cHM6Ly9qb2Jib2FyZC5hd2VsdHkuY29tIitmaWNoZVsncGRmJ10pOw0KICAgICAgICAgICAgICAgIHJvdzEwX2ltZy5zZXRBdHRyaWJ1dGUoJ3RhcmdldCcsICdfYmxhbmsnKTsNCiAgICAgICAgICAgICAgICByb3cxMF9pbWcuaW5uZXJIVE1MID0gZmljaGVbJ3BkZiddLnN1YnN0cig0OSk7DQogICAgICAgICAgICAgICAgcm93MTAuYXBwZW5kQ2hpbGQocm93MTBfaW1nKTsNCiAgICAgICAgICAgICAgICBtb2RhbGVfY29udGVudC5hcHBlbmRDaGlsZChyb3cxMCk7DQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAgIGlmIChmaWNoZVsnbGllbiddLmxlbmd0aCA+IDApIHsNCiAgICAgICAgICAgICAgICB2YXIgcm93OSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOw0KICAgICAgICAgICAgICAgIHJvdzkuc2V0QXR0cmlidXRlKCdpZCcsICdsaWVuJyk7DQogICAgICAgICAgICAgICAgdmFyIHJvdzlfaW1nID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYSIpOw0KICAgICAgICAgICAgICAgIGlmIChmaWNoZVsnbGllbiddLnN1YnN0cmluZygwLCA0KSA9PSAiaHR0cCIpIHsNCiAgICAgICAgICAgICAgICAgICAgcm93OV9pbWcuc2V0QXR0cmlidXRlKCdocmVmJywgZmljaGVbJ2xpZW4nXSk7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIGVsc2Ugew0KICAgICAgICAgICAgICAgICAgICByb3c5X2ltZy5zZXRBdHRyaWJ1dGUoJ2hyZWYnLCAiLy8iK2ZpY2hlWydsaWVuJ10pOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICByb3c5X2ltZy5zZXRBdHRyaWJ1dGUoJ3RhcmdldCcsICdfYmxhbmsnKTsNCiAgICAgICAgICAgICAgICByb3c5X2ltZy5pbm5lckhUTUwgPSBmaWNoZVsnbGllbiddOw0KICAgICAgICAgICAgICAgIHJvdzkuYXBwZW5kQ2hpbGQocm93OV9pbWcpOw0KICAgICAgICAgICAgICAgIG1vZGFsZV9jb250ZW50LmFwcGVuZENoaWxkKHJvdzkpOw0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICBpZiAoZmljaGVbJ3ZpZGVvJ10ubGVuZ3RoID4gMCkgew0KICAgICAgICAgICAgICAgIHZhciByb3cxMSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOw0KICAgICAgICAgICAgICAgIHJvdzExLnNldEF0dHJpYnV0ZSgnaWQnLCAndmlkZW8nKTsNCiAgICAgICAgICAgICAgICB2YXIgcm93MTFfaW1nID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIik7DQogICAgICAgICAgICAgICAgcm93MTFfaW1nLnNldEF0dHJpYnV0ZSgnZnJhbWVib3JkZXInLCAiMCIpOw0KICAgICAgICAgICAgICAgIHJvdzExX2ltZy5zZXRBdHRyaWJ1dGUoJ2hlaWdodCcsICIzMTUiKTsNCiAgICAgICAgICAgICAgICByb3cxMV9pbWcuc2V0QXR0cmlidXRlKCd3aWR0aCcsICI1NjAiKTsNCiAgICAgICAgICAgICAgICB2YXIgdXJsID0gZmljaGVbJ3ZpZGVvJ107DQogICAgICAgICAgICAgICAgdXJsID0gdXJsLnJlcGxhY2UoIndhdGNoP3Y9IiwgImVtYmVkLyIpOw0KICAgICAgICAgICAgICAgIHJvdzExX2ltZy5zZXRBdHRyaWJ1dGUoJ3NyYycsIHVybCk7DQogICAgICAgICAgICAgICAgcm93MTEuYXBwZW5kQ2hpbGQocm93MTFfaW1nKTsNCiAgICAgICAgICAgICAgICBtb2RhbGVfY29udGVudC5hcHBlbmRDaGlsZChyb3cxMSk7DQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAgIGlmIChmaWNoZVsncGhvdG8nXS5sZW5ndGggPiAwKSB7DQogICAgICAgICAgICAgICAgdmFyIHJvdzggPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsNCiAgICAgICAgICAgICAgICByb3c4LnNldEF0dHJpYnV0ZSgnaWQnLCAncGhvdG8nKTsNCiAgICAgICAgICAgICAgICB2YXIgcm93OF9pbWcgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbWciKTsNCiAgICAgICAgICAgICAgICByb3c4X2ltZy5zZXRBdHRyaWJ1dGUoJ2lkJywgJ3Bob3RvLWFkaGVyZW50Jyk7DQogICAgICAgICAgICAgICAgcm93OF9pbWcuc2V0QXR0cmlidXRlKCdzcmMnLCAiaHR0cHM6Ly9qb2Jib2FyZC5hd2VsdHkuY29tIitmaWNoZVsncGhvdG8nXSk7DQogICAgICAgICAgICAgICAgcm93OC5hcHBlbmRDaGlsZChyb3c4X2ltZyk7DQogICAgICAgICAgICAgICAgbW9kYWxlX2NvbnRlbnQuYXBwZW5kQ2hpbGQocm93OCk7DQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAgIHZhciByb3c2ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7DQogICAgICAgICAgICB2YXIgcm93Nl9saW5rID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYnV0dG9uIik7DQogICAgICAgICAgICByb3c2X2xpbmsuc2V0QXR0cmlidXRlKCdpZCcsICdjbG9zZScpOw0KICAgICAgICAgICAgcm93Nl9saW5rLmlubmVySFRNTCA9ICdGZXJtZXInOw0KICAgICAgICAgICAgcm93Ni5hcHBlbmRDaGlsZChyb3c2X2xpbmspOw0KICAgICAgICAgICAgbW9kYWxlX2NvbnRlbnQuYXBwZW5kQ2hpbGQocm93Nik7DQogICAgICAgICAgICByb3c2X2xpbmsub25jbGljayA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5LnN0eWxlLm92ZXJmbG93WSA9ICdzY3JvbGwnOw0KICAgICAgICAgICAgICAgIG1vZGFsZS5yZW1vdmUoKTsNCiAgICAgICAgICAgICAgICBtb2RhbGVfY29udGVudC5yZW1vdmUoKTsNCiAgICAgICAgICAgIH07DQoNCiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQobW9kYWxlKTsNCiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQobW9kYWxlX2NvbnRlbnQpOw0KICAgICAgICAgICAgbW9kYWxlLm9uY2xpY2sgPSBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5zdHlsZS5vdmVyZmxvd1kgPSAnc2Nyb2xsJzsNCiAgICAgICAgICAgICAgICBtb2RhbGUucmVtb3ZlKCk7DQogICAgICAgICAgICAgICAgbW9kYWxlX2NvbnRlbnQucmVtb3ZlKCk7DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICA8L3NjcmlwdD4="}