PGRpdiBjbGFzcz0nZGV0ZWN0X2NsJyBkYXRhLWlkPSdhZC15YS1tb2ItMCc+PGRpdiBzdHlsZT0ibWF4LWhlaWdodDozMyUhaW1wb3J0YW50O3dpZHRoOjEwMCU7YmFja2dyb3VuZDp5ZWxsb3c7Ym9yZGVyLWxlZnQ6M3B4IHNvbGlkICMwMDA7cGFkZGluZzoyJSAwO21hcmdpbjoyJSAwIj4NCjxkaXYgaWQ9InlhbmRleF9ydGJfUi1BLTIzMTM4Ny0xMCI+PC9kaXY+DQo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICAgKGZ1bmN0aW9uKHcsIGQsIG4sIHMsIHQpIHsNCiAgICAgICAgd1tuXSA9IHdbbl0gfHwgW107DQogICAgICAgIHdbbl0ucHVzaChmdW5jdGlvbigpIHsNCiAgICAgICAgICAgIFlhLkNvbnRleHQuQWR2TWFuYWdlci5yZW5kZXIoew0KICAgICAgICAgICAgICAgIGJsb2NrSWQ6ICJSLUEtMjMxMzg3LTEwIiwNCiAgICAgICAgICAgICAgICByZW5kZXJUbzogInlhbmRleF9ydGJfUi1BLTIzMTM4Ny0xMCIsDQogICAgICAgICAgICAgICAgaG9yaXpvbnRhbEFsaWduOiBmYWxzZSwNCiAgICAgICAgICAgICAgICBhc3luYzogdHJ1ZQ0KICAgICAgICAgICAgfSk7DQogICAgICAgIH0pOw0KICAgICAgICB0ID0gZC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IilbMF07DQogICAgICAgIHMgPSBkLmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpOw0KICAgICAgICBzLnR5cGUgPSAidGV4dC9qYXZhc2NyaXB0IjsNCiAgICAgICAgcy5zcmMgPSAiLy9hbi55YW5kZXgucnUvc3lzdGVtL2NvbnRleHQuanMiOw0KICAgICAgICBzLmFzeW5jID0gdHJ1ZTsNCiAgICAgICAgdC5wYXJlbnROb2RlLmluc2VydEJlZm9yZShzLCB0KTsNCiAgICB9KSh0aGlzLCB0aGlzLmRvY3VtZW50LCAieWFuZGV4Q29udGV4dEFzeW5jQ2FsbGJhY2tzIik7DQo8L3NjcmlwdD48L2Rpdj48L2Rpdj4=PGRpdiBjbGFzcz0nZGV0ZWN0X2NsJyBkYXRhLWlkPSdhZC15YS0wJz48ZGl2IHN0eWxlPSJtYXgtaGVpZ2h0OjMzJSFpbXBvcnRhbnQ7d2lkdGg6MTAwJTtiYWNrZ3JvdW5kOnllbGxvdztib3JkZXItbGVmdDozcHggc29saWQgIzAwMDtwYWRkaW5nOjIlIDA7bWFyZ2luOjIlIDAiPg0KPGRpdiBpZD0ieWFuZGV4X3J0Yl9SLUEtMjMxMzg3LTEiPjwvZGl2Pg0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPg0KICAgIChmdW5jdGlvbih3LCBkLCBuLCBzLCB0KSB7DQogICAgICAgIHdbbl0gPSB3W25dIHx8IFtdOw0KICAgICAgICB3W25dLnB1c2goZnVuY3Rpb24oKSB7DQogICAgICAgICAgICBZYS5Db250ZXh0LkFkdk1hbmFnZXIucmVuZGVyKHsNCiAgICAgICAgICAgICAgICBibG9ja0lkOiAiUi1BLTIzMTM4Ny0xIiwNCiAgICAgICAgICAgICAgICByZW5kZXJUbzogInlhbmRleF9ydGJfUi1BLTIzMTM4Ny0xIiwNCiAgICAgICAgICAgICAgICBhc3luYzogdHJ1ZQ0KICAgICAgICAgICAgfSk7DQogICAgICAgIH0pOw0KICAgICAgICB0ID0gZC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IilbMF07DQogICAgICAgIHMgPSBkLmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpOw0KICAgICAgICBzLnR5cGUgPSAidGV4dC9qYXZhc2NyaXB0IjsNCiAgICAgICAgcy5zcmMgPSAiLy9hbi55YW5kZXgucnUvc3lzdGVtL2NvbnRleHQuanMiOw0KICAgICAgICBzLmFzeW5jID0gdHJ1ZTsNCiAgICAgICAgdC5wYXJlbnROb2RlLmluc2VydEJlZm9yZShzLCB0KTsNCiAgICB9KSh0aGlzLCB0aGlzLmRvY3VtZW50LCAieWFuZGV4Q29udGV4dEFzeW5jQ2FsbGJhY2tzIik7DQo8L3NjcmlwdD48L2Rpdj48L2Rpdj4=PGRpdiBjbGFzcz0nZGV0ZWN0X2NsJyBkYXRhLWlkPSdhZC15YS1tb2ItMCc+PGRpdiBzdHlsZT0ibWF4LWhlaWdodDozMyUhaW1wb3J0YW50O3dpZHRoOjEwMCU7YmFja2dyb3VuZDp5ZWxsb3c7Ym9yZGVyLWxlZnQ6M3B4IHNvbGlkICMwMDA7cGFkZGluZzoyJSAwO21hcmdpbjoyJSAwIj4NCjxkaXYgaWQ9InlhbmRleF9ydGJfUi1BLTIzMTM4Ny0xMCI+PC9kaXY+DQo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICAgKGZ1bmN0aW9uKHcsIGQsIG4sIHMsIHQpIHsNCiAgICAgICAgd1tuXSA9IHdbbl0gfHwgW107DQogICAgICAgIHdbbl0ucHVzaChmdW5jdGlvbigpIHsNCiAgICAgICAgICAgIFlhLkNvbnRleHQuQWR2TWFuYWdlci5yZW5kZXIoew0KICAgICAgICAgICAgICAgIGJsb2NrSWQ6ICJSLUEtMjMxMzg3LTEwIiwNCiAgICAgICAgICAgICAgICByZW5kZXJUbzogInlhbmRleF9ydGJfUi1BLTIzMTM4Ny0xMCIsDQogICAgICAgICAgICAgICAgaG9yaXpvbnRhbEFsaWduOiBmYWxzZSwNCiAgICAgICAgICAgICAgICBhc3luYzogdHJ1ZQ0KICAgICAgICAgICAgfSk7DQogICAgICAgIH0pOw0KICAgICAgICB0ID0gZC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IilbMF07DQogICAgICAgIHMgPSBkLmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpOw0KICAgICAgICBzLnR5cGUgPSAidGV4dC9qYXZhc2NyaXB0IjsNCiAgICAgICAgcy5zcmMgPSAiLy9hbi55YW5kZXgucnUvc3lzdGVtL2NvbnRleHQuanMiOw0KICAgICAgICBzLmFzeW5jID0gdHJ1ZTsNCiAgICAgICAgdC5wYXJlbnROb2RlLmluc2VydEJlZm9yZShzLCB0KTsNCiAgICB9KSh0aGlzLCB0aGlzLmRvY3VtZW50LCAieWFuZGV4Q29udGV4dEFzeW5jQ2FsbGJhY2tzIik7DQo8L3NjcmlwdD48L2Rpdj48L2Rpdj4=PGRpdiBjbGFzcz0nZGV0ZWN0X2NsJyBkYXRhLWlkPSdhZC15YS0wJz48ZGl2IHN0eWxlPSJtYXgtaGVpZ2h0OjMzJSFpbXBvcnRhbnQ7d2lkdGg6MTAwJTtiYWNrZ3JvdW5kOnllbGxvdztib3JkZXItbGVmdDozcHggc29saWQgIzAwMDtwYWRkaW5nOjIlIDA7bWFyZ2luOjIlIDAiPg0KPGRpdiBpZD0ieWFuZGV4X3J0Yl9SLUEtMjMxMzg3LTEiPjwvZGl2Pg0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPg0KICAgIChmdW5jdGlvbih3LCBkLCBuLCBzLCB0KSB7DQogICAgICAgIHdbbl0gPSB3W25dIHx8IFtdOw0KICAgICAgICB3W25dLnB1c2goZnVuY3Rpb24oKSB7DQogICAgICAgICAgICBZYS5Db250ZXh0LkFkdk1hbmFnZXIucmVuZGVyKHsNCiAgICAgICAgICAgICAgICBibG9ja0lkOiAiUi1BLTIzMTM4Ny0xIiwNCiAgICAgICAgICAgICAgICByZW5kZXJUbzogInlhbmRleF9ydGJfUi1BLTIzMTM4Ny0xIiwNCiAgICAgICAgICAgICAgICBhc3luYzogdHJ1ZQ0KICAgICAgICAgICAgfSk7DQogICAgICAgIH0pOw0KICAgICAgICB0ID0gZC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IilbMF07DQogICAgICAgIHMgPSBkLmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpOw0KICAgICAgICBzLnR5cGUgPSAidGV4dC9qYXZhc2NyaXB0IjsNCiAgICAgICAgcy5zcmMgPSAiLy9hbi55YW5kZXgucnUvc3lzdGVtL2NvbnRleHQuanMiOw0KICAgICAgICBzLmFzeW5jID0gdHJ1ZTsNCiAgICAgICAgdC5wYXJlbnROb2RlLmluc2VydEJlZm9yZShzLCB0KTsNCiAgICB9KSh0aGlzLCB0aGlzLmRvY3VtZW50LCAieWFuZGV4Q29udGV4dEFzeW5jQ2FsbGJhY2tzIik7DQo8L3NjcmlwdD48L2Rpdj48L2Rpdj4=PGRpdiBjbGFzcz0nZGV0ZWN0X2NsJyBkYXRhLWlkPSdhZC1nbC1tb2ItMScgPjxkaXYgc3R5bGU9Im1heC1oZWlnaHQ6MzMlIWltcG9ydGFudDt3aWR0aDoxMDAlO2JhY2tncm91bmQ6eWVsbG93O2JvcmRlci1sZWZ0OjNweCBzb2xpZCAjMDAwO3BhZGRpbmc6MiUgMDttYXJnaW46MiUgMCIgY2xhc3M9ImhpZGRlbi1tZCBoaWRkZW4tbGciPg0KPHNjcmlwdCBhc3luYyBzcmM9Ii8vcGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20vcGFnZWFkL2pzL2Fkc2J5Z29vZ2xlLmpzIj48L3NjcmlwdD4NCiAgICA8aW5zIGNsYXNzPSJhZHNieWdvb2dsZSIgc3R5bGU9ImRpc3BsYXk6YmxvY2siIA0KICAgIGRhdGEtYWQtY2xpZW50PSJjYS1wdWItNjk4MDgyOTE2MzgxMjA0NyIgDQogICAgZGF0YS1hZC1zbG90PSI3MTU3OTE2MjE1Ij48L2lucz4NCiAgICA8c2NyaXB0Pg0KICAgICAgICB2YXIgZWwgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcuaGlkZGVuLW1kLCAuaGlkZGVuLWxnJyk7DQogICAgICAgIHZhciBkaXNwbGF5ID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUoZWwsIG51bGwpLmdldFByb3BlcnR5VmFsdWUoJ2Rpc3BsYXknKTsNCiAgICAgICAgdmFyIGlucyA9IGVsLnF1ZXJ5U2VsZWN0b3IoJ2lucycpOw0KICAgICAgICBpZiAoZGlzcGxheSA9PT0gJ2Jsb2NrJyl7DQogICAgICAgICAgICBpbnMuc2V0QXR0cmlidXRlKCdkYXRhLWFkLWZvcm1hdCcsICdhdXRvJyk7DQogICAgICAgIH0NCiAgICAgICAgKGFkc2J5Z29vZ2xlID0gd2luZG93LmFkc2J5Z29vZ2xlIHx8IFtdKS5wdXNoKHt9KTsNCiAgICA8L3NjcmlwdD4NCjwvZGl2PjwvZGl2Pg==PGRpdiBjbGFzcz0nZGV0ZWN0X2NsJyBkYXRhLWlkPSdhZC1nbC0xJz48ZGl2IHN0eWxlPSJtYXgtaGVpZ2h0OjMzJSFpbXBvcnRhbnQ7d2lkdGg6MTAwJTtiYWNrZ3JvdW5kOnllbGxvdztib3JkZXItbGVmdDozcHggc29saWQgIzAwMDtwYWRkaW5nOjIlIDA7bWFyZ2luOjIlIDAiIGNsYXNzPSJoaWRkZW4tbWQgaGlkZGVuLWxnIj4NCjxzY3JpcHQgYXN5bmMgc3JjPSIvL3BhZ2VhZDIuZ29vZ2xlc3luZGljYXRpb24uY29tL3BhZ2VhZC9qcy9hZHNieWdvb2dsZS5qcyI+PC9zY3JpcHQ+DQogICAgPGlucyBjbGFzcz0iYWRzYnlnb29nbGUiIHN0eWxlPSJkaXNwbGF5OmJsb2NrIiANCiAgICBkYXRhLWFkLWNsaWVudD0iY2EtcHViLTY5ODA4MjkxNjM4MTIwNDciIA0KICAgIGRhdGEtYWQtc2xvdD0iOTk0NjE4NjQ4NCI+PC9pbnM+DQogICAgPHNjcmlwdD4NCiAgICAgICAgdmFyIGVsID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLmhpZGRlbi1tZCwgLmhpZGRlbi1sZycpOw0KICAgICAgICB2YXIgZGlzcGxheSA9IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGVsLCBudWxsKS5nZXRQcm9wZXJ0eVZhbHVlKCdkaXNwbGF5Jyk7DQogICAgICAgIHZhciBpbnMgPSBlbC5xdWVyeVNlbGVjdG9yKCdpbnMnKTsNCiAgICAgICAgaWYgKGRpc3BsYXkgPT09ICdibG9jaycpew0KICAgICAgICAgICAgaW5zLnNldEF0dHJpYnV0ZSgnZGF0YS1hZC1mb3JtYXQnLCAnYXV0bycpOw0KICAgICAgICB9DQogICAgICAgIChhZHNieWdvb2dsZSA9IHdpbmRvdy5hZHNieWdvb2dsZSB8fCBbXSkucHVzaCh7fSk7DQogICAgPC9zY3JpcHQ+DQo8L2Rpdj48L2Rpdj4=PGRpdiBjbGFzcz0nZGV0ZWN0X2NsJyBkYXRhLWlkPSdhZC15YS1tb2ItMSc+PCEtLSBZYW5kZXguUlRCIFItQS0yMzEzODctNyAtLT4NCjxkaXYgaWQ9InlhbmRleF9ydGJfUi1BLTIzMTM4Ny03Ij48L2Rpdj4NCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAoZnVuY3Rpb24odywgZCwgbiwgcywgdCkgew0KICAgICAgICB3W25dID0gd1tuXSB8fCBbXTsNCiAgICAgICAgd1tuXS5wdXNoKGZ1bmN0aW9uKCkgew0KICAgICAgICAgICAgWWEuQ29udGV4dC5BZHZNYW5hZ2VyLnJlbmRlcih7DQogICAgICAgICAgICAgICAgYmxvY2tJZDogIlItQS0yMzEzODctNyIsDQogICAgICAgICAgICAgICAgcmVuZGVyVG86ICJ5YW5kZXhfcnRiX1ItQS0yMzEzODctNyIsDQogICAgICAgICAgICAgICAgaG9yaXpvbnRhbEFsaWduOiBmYWxzZSwNCiAgICAgICAgICAgICAgICBhc3luYzogdHJ1ZQ0KICAgICAgICAgICAgfSk7DQogICAgICAgIH0pOw0KICAgICAgICB0ID0gZC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IilbMF07DQogICAgICAgIHMgPSBkLmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpOw0KICAgICAgICBzLnR5cGUgPSAidGV4dC9qYXZhc2NyaXB0IjsNCiAgICAgICAgcy5zcmMgPSAiLy9hbi55YW5kZXgucnUvc3lzdGVtL2NvbnRleHQuanMiOw0KICAgICAgICBzLmFzeW5jID0gdHJ1ZTsNCiAgICAgICAgdC5wYXJlbnROb2RlLmluc2VydEJlZm9yZShzLCB0KTsNCiAgICB9KSh0aGlzLCB0aGlzLmRvY3VtZW50LCAieWFuZGV4Q29udGV4dEFzeW5jQ2FsbGJhY2tzIik7DQo8L3NjcmlwdD48L2Rpdj4=PGRpdiBjbGFzcz0nZGV0ZWN0X2NsJyBkYXRhLWlkPSdhZC15YS0xJz48ZGl2IHN0eWxlPSJ3aWR0aDoxMDAlO21heC1oZWlnaHQ6MjAwcHg7cGFkZGluZzowLjUlIj48IS0tIFlhbmRleC5SVEIgUi1BLTIzMTM4Ny00IC0tPg0KPGRpdiBpZD0ieWFuZGV4X3J0Yl9SLUEtMjMxMzg3LTQiPjwvZGl2Pg0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPg0KICAgIChmdW5jdGlvbih3LCBkLCBuLCBzLCB0KSB7DQogICAgICAgIHdbbl0gPSB3W25dIHx8IFtdOw0KICAgICAgICB3W25dLnB1c2goZnVuY3Rpb24oKSB7DQogICAgICAgICAgICBZYS5Db250ZXh0LkFkdk1hbmFnZXIucmVuZGVyKHsNCiAgICAgICAgICAgICAgICBibG9ja0lkOiAiUi1BLTIzMTM4Ny00IiwNCiAgICAgICAgICAgICAgICByZW5kZXJUbzogInlhbmRleF9ydGJfUi1BLTIzMTM4Ny00IiwNCiAgICAgICAgICAgICAgICBob3Jpem9udGFsQWxpZ246IGZhbHNlLA0KICAgICAgICAgICAgICAgIGFzeW5jOiB0cnVlDQogICAgICAgICAgICB9KTsNCiAgICAgICAgfSk7DQogICAgICAgIHQgPSBkLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKVswXTsNCiAgICAgICAgcyA9IGQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7DQogICAgICAgIHMudHlwZSA9ICJ0ZXh0L2phdmFzY3JpcHQiOw0KICAgICAgICBzLnNyYyA9ICIvL2FuLnlhbmRleC5ydS9zeXN0ZW0vY29udGV4dC5qcyI7DQogICAgICAgIHMuYXN5bmMgPSB0cnVlOw0KICAgICAgICB0LnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKHMsIHQpOw0KICAgIH0pKHRoaXMsIHRoaXMuZG9jdW1lbnQsICJ5YW5kZXhDb250ZXh0QXN5bmNDYWxsYmFja3MiKTsNCjwvc2NyaXB0PjwvZGl2PjwvZGl2Pg==PGRpdiBjbGFzcz0nZGV0ZWN0X2NsJyBkYXRhLWlkPSdhZC1nbC1tb2ItMicgPjxkaXYgc3R5bGU9Im1heC1oZWlnaHQ6MzMlIWltcG9ydGFudDt3aWR0aDoxMDAlO2JhY2tncm91bmQ6eWVsbG93O2JvcmRlci1sZWZ0OjNweCBzb2xpZCAjMDAwO3BhZGRpbmc6MiUgMDttYXJnaW46MiUgMCI+PHNjcmlwdCBhc3luYyBzcmM9Ii8vcGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20vcGFnZWFkL2pzL2Fkc2J5Z29vZ2xlLmpzIj48L3NjcmlwdD4NCjwhLS0gc2xfX3NuZ2xfXzIgLS0+DQo8aW5zIGNsYXNzPSJhZHNieWdvb2dsZSINCiAgICAgc3R5bGU9ImRpc3BsYXk6YmxvY2siDQogICAgIGRhdGEtYWQtY2xpZW50PSJjYS1wdWItNjk4MDgyOTE2MzgxMjA0NyINCiAgICAgZGF0YS1hZC1zbG90PSI1MTIxMzA1Mjk1Ig0KICAgICBkYXRhLWFkLWZvcm1hdD0iYXV0byI+PC9pbnM+DQo8c2NyaXB0Pg0KKGFkc2J5Z29vZ2xlID0gd2luZG93LmFkc2J5Z29vZ2xlIHx8IFtdKS5wdXNoKHt9KTsNCjwvc2NyaXB0Pg0KPC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0nZGV0ZWN0X2NsJyBkYXRhLWlkPSdhZC1nbC0yJz48ZGl2IHN0eWxlPSJtYXgtaGVpZ2h0OjMzJSFpbXBvcnRhbnQ7d2lkdGg6MTAwJTtiYWNrZ3JvdW5kOnllbGxvdztib3JkZXItbGVmdDozcHggc29saWQgIzAwMDtwYWRkaW5nOjIlIDA7bWFyZ2luOjIlIDAiPjxzY3JpcHQgYXN5bmMgc3JjPSIvL3BhZ2VhZDIuZ29vZ2xlc3luZGljYXRpb24uY29tL3BhZ2VhZC9qcy9hZHNieWdvb2dsZS5qcyI+PC9zY3JpcHQ+DQo8IS0tIHNsX19zbmdsX18yIC0tPg0KPGlucyBjbGFzcz0iYWRzYnlnb29nbGUiDQogICAgIHN0eWxlPSJkaXNwbGF5OmJsb2NrIg0KICAgICBkYXRhLWFkLWNsaWVudD0iY2EtcHViLTY5ODA4MjkxNjM4MTIwNDciDQogICAgIGRhdGEtYWQtc2xvdD0iNTEyMTMwNTI5NSINCiAgICAgZGF0YS1hZC1mb3JtYXQ9ImF1dG8iPjwvaW5zPg0KPHNjcmlwdD4NCihhZHNieWdvb2dsZSA9IHdpbmRvdy5hZHNieWdvb2dsZSB8fCBbXSkucHVzaCh7fSk7DQo8L3NjcmlwdD4NCjwvZGl2PjwvZGl2Pg==PGRpdiBjbGFzcz0nZGV0ZWN0X2NsJyBkYXRhLWlkPSdhZC15YS1tb2ItMic+PCEtLSBZYW5kZXguUlRCIFItQS0yMzEzODctOCAtLT4NCjxkaXYgaWQ9InlhbmRleF9ydGJfUi1BLTIzMTM4Ny04Ij48L2Rpdj4NCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAoZnVuY3Rpb24odywgZCwgbiwgcywgdCkgew0KICAgICAgICB3W25dID0gd1tuXSB8fCBbXTsNCiAgICAgICAgd1tuXS5wdXNoKGZ1bmN0aW9uKCkgew0KICAgICAgICAgICAgWWEuQ29udGV4dC5BZHZNYW5hZ2VyLnJlbmRlcih7DQogICAgICAgICAgICAgICAgYmxvY2tJZDogIlItQS0yMzEzODctOCIsDQogICAgICAgICAgICAgICAgcmVuZGVyVG86ICJ5YW5kZXhfcnRiX1ItQS0yMzEzODctOCIsDQogICAgICAgICAgICAgICAgaG9yaXpvbnRhbEFsaWduOiBmYWxzZSwNCiAgICAgICAgICAgICAgICBhc3luYzogdHJ1ZQ0KICAgICAgICAgICAgfSk7DQogICAgICAgIH0pOw0KICAgICAgICB0ID0gZC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IilbMF07DQogICAgICAgIHMgPSBkLmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpOw0KICAgICAgICBzLnR5cGUgPSAidGV4dC9qYXZhc2NyaXB0IjsNCiAgICAgICAgcy5zcmMgPSAiLy9hbi55YW5kZXgucnUvc3lzdGVtL2NvbnRleHQuanMiOw0KICAgICAgICBzLmFzeW5jID0gdHJ1ZTsNCiAgICAgICAgdC5wYXJlbnROb2RlLmluc2VydEJlZm9yZShzLCB0KTsNCiAgICB9KSh0aGlzLCB0aGlzLmRvY3VtZW50LCAieWFuZGV4Q29udGV4dEFzeW5jQ2FsbGJhY2tzIik7DQo8L3NjcmlwdD48L2Rpdj4=PGRpdiBjbGFzcz0nZGV0ZWN0X2NsJyBkYXRhLWlkPSdhZC15YS0yJz48ZGl2IHN0eWxlPSJ3aWR0aDoxMDAlO21heC1oZWlnaHQ6MjAwcHg7cGFkZGluZzowLjUlIj48IS0tIFlhbmRleC5SVEIgUi1BLTIzMTM4Ny01IC0tPg0KPGRpdiBpZD0ieWFuZGV4X3J0Yl9SLUEtMjMxMzg3LTUiPjwvZGl2Pg0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPg0KICAgIChmdW5jdGlvbih3LCBkLCBuLCBzLCB0KSB7DQogICAgICAgIHdbbl0gPSB3W25dIHx8IFtdOw0KICAgICAgICB3W25dLnB1c2goZnVuY3Rpb24oKSB7DQogICAgICAgICAgICBZYS5Db250ZXh0LkFkdk1hbmFnZXIucmVuZGVyKHsNCiAgICAgICAgICAgICAgICBibG9ja0lkOiAiUi1BLTIzMTM4Ny01IiwNCiAgICAgICAgICAgICAgICByZW5kZXJUbzogInlhbmRleF9ydGJfUi1BLTIzMTM4Ny01IiwNCiAgICAgICAgICAgICAgICBob3Jpem9udGFsQWxpZ246IGZhbHNlLA0KICAgICAgICAgICAgICAgIGFzeW5jOiB0cnVlDQogICAgICAgICAgICB9KTsNCiAgICAgICAgfSk7DQogICAgICAgIHQgPSBkLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKVswXTsNCiAgICAgICAgcyA9IGQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7DQogICAgICAgIHMudHlwZSA9ICJ0ZXh0L2phdmFzY3JpcHQiOw0KICAgICAgICBzLnNyYyA9ICIvL2FuLnlhbmRleC5ydS9zeXN0ZW0vY29udGV4dC5qcyI7DQogICAgICAgIHMuYXN5bmMgPSB0cnVlOw0KICAgICAgICB0LnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKHMsIHQpOw0KICAgIH0pKHRoaXMsIHRoaXMuZG9jdW1lbnQsICJ5YW5kZXhDb250ZXh0QXN5bmNDYWxsYmFja3MiKTsNCjwvc2NyaXB0PjwvZGl2PjwvZGl2Pg==PGRpdiBjbGFzcz0nZGV0ZWN0X2NsJyBkYXRhLWlkPSdhZC1nbC1tb2ItMycgPjxkaXYgc3R5bGU9Im1heC1oZWlnaHQ6MzMlIWltcG9ydGFudDt3aWR0aDoxMDAlO2JhY2tncm91bmQ6eWVsbG93O2JvcmRlci1sZWZ0OjNweCBzb2xpZCAjMDAwO3BhZGRpbmc6MiUgMDttYXJnaW46MiUgMCI+PHNjcmlwdCBhc3luYyBzcmM9Ii8vcGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20vcGFnZWFkL2pzL2Fkc2J5Z29vZ2xlLmpzIj48L3NjcmlwdD4NCjwhLS0gc2xfX3NuZ2xfXzMgLS0+DQo8aW5zIGNsYXNzPSJhZHNieWdvb2dsZSINCiAgICAgc3R5bGU9ImRpc3BsYXk6YmxvY2siDQogICAgIGRhdGEtYWQtY2xpZW50PSJjYS1wdWItNjk4MDgyOTE2MzgxMjA0NyINCiAgICAgZGF0YS1hZC1zbG90PSIxNTYxMjEwNTI1Ig0KICAgICBkYXRhLWFkLWZvcm1hdD0iYXV0byI+PC9pbnM+DQo8c2NyaXB0Pg0KKGFkc2J5Z29vZ2xlID0gd2luZG93LmFkc2J5Z29vZ2xlIHx8IFtdKS5wdXNoKHt9KTsNCjwvc2NyaXB0Pg0KPC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0nZGV0ZWN0X2NsJyBkYXRhLWlkPSdhZC1nbC0zJz48ZGl2IHN0eWxlPSJtYXgtaGVpZ2h0OjMzJSFpbXBvcnRhbnQ7d2lkdGg6MTAwJTtiYWNrZ3JvdW5kOnllbGxvdztib3JkZXItbGVmdDozcHggc29saWQgIzAwMDtwYWRkaW5nOjIlIDA7bWFyZ2luOjIlIDAiPjxzY3JpcHQgYXN5bmMgc3JjPSIvL3BhZ2VhZDIuZ29vZ2xlc3luZGljYXRpb24uY29tL3BhZ2VhZC9qcy9hZHNieWdvb2dsZS5qcyI+PC9zY3JpcHQ+DQo8IS0tIHNsX19zbmdsX18zIC0tPg0KPGlucyBjbGFzcz0iYWRzYnlnb29nbGUiDQogICAgIHN0eWxlPSJkaXNwbGF5OmJsb2NrIg0KICAgICBkYXRhLWFkLWNsaWVudD0iY2EtcHViLTY5ODA4MjkxNjM4MTIwNDciDQogICAgIGRhdGEtYWQtc2xvdD0iMTU2MTIxMDUyNSINCiAgICAgZGF0YS1hZC1mb3JtYXQ9ImF1dG8iPjwvaW5zPg0KPHNjcmlwdD4NCihhZHNieWdvb2dsZSA9IHdpbmRvdy5hZHNieWdvb2dsZSB8fCBbXSkucHVzaCh7fSk7DQo8L3NjcmlwdD4NCjwvZGl2PjwvZGl2Pg==PGRpdiBjbGFzcz0nZGV0ZWN0X2NsJyBkYXRhLWlkPSdhZC15YS1tb2ItMyc+PCEtLSBZYW5kZXguUlRCIFItQS0yMzEzODctOSAtLT4NCjxkaXYgaWQ9InlhbmRleF9ydGJfUi1BLTIzMTM4Ny05Ij48L2Rpdj4NCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAoZnVuY3Rpb24odywgZCwgbiwgcywgdCkgew0KICAgICAgICB3W25dID0gd1tuXSB8fCBbXTsNCiAgICAgICAgd1tuXS5wdXNoKGZ1bmN0aW9uKCkgew0KICAgICAgICAgICAgWWEuQ29udGV4dC5BZHZNYW5hZ2VyLnJlbmRlcih7DQogICAgICAgICAgICAgICAgYmxvY2tJZDogIlItQS0yMzEzODctOSIsDQogICAgICAgICAgICAgICAgcmVuZGVyVG86ICJ5YW5kZXhfcnRiX1ItQS0yMzEzODctOSIsDQogICAgICAgICAgICAgICAgaG9yaXpvbnRhbEFsaWduOiBmYWxzZSwNCiAgICAgICAgICAgICAgICBhc3luYzogdHJ1ZQ0KICAgICAgICAgICAgfSk7DQogICAgICAgIH0pOw0KICAgICAgICB0ID0gZC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IilbMF07DQogICAgICAgIHMgPSBkLmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpOw0KICAgICAgICBzLnR5cGUgPSAidGV4dC9qYXZhc2NyaXB0IjsNCiAgICAgICAgcy5zcmMgPSAiLy9hbi55YW5kZXgucnUvc3lzdGVtL2NvbnRleHQuanMiOw0KICAgICAgICBzLmFzeW5jID0gdHJ1ZTsNCiAgICAgICAgdC5wYXJlbnROb2RlLmluc2VydEJlZm9yZShzLCB0KTsNCiAgICB9KSh0aGlzLCB0aGlzLmRvY3VtZW50LCAieWFuZGV4Q29udGV4dEFzeW5jQ2FsbGJhY2tzIik7DQo8L3NjcmlwdD48L2Rpdj4=PGRpdiBjbGFzcz0nZGV0ZWN0X2NsJyBkYXRhLWlkPSdhZC15YS0zJz48ZGl2IHN0eWxlPSJ3aWR0aDoxMDAlO21heC1oZWlnaHQ6MjAwcHg7cGFkZGluZzowLjUlIj48IS0tIFlhbmRleC5SVEIgUi1BLTIzMTM4Ny02IC0tPg0KPGRpdiBpZD0ieWFuZGV4X3J0Yl9SLUEtMjMxMzg3LTYiPjwvZGl2Pg0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPg0KICAgIChmdW5jdGlvbih3LCBkLCBuLCBzLCB0KSB7DQogICAgICAgIHdbbl0gPSB3W25dIHx8IFtdOw0KICAgICAgICB3W25dLnB1c2goZnVuY3Rpb24oKSB7DQogICAgICAgICAgICBZYS5Db250ZXh0LkFkdk1hbmFnZXIucmVuZGVyKHsNCiAgICAgICAgICAgICAgICBibG9ja0lkOiAiUi1BLTIzMTM4Ny02IiwNCiAgICAgICAgICAgICAgICByZW5kZXJUbzogInlhbmRleF9ydGJfUi1BLTIzMTM4Ny02IiwNCiAgICAgICAgICAgICAgICBob3Jpem9udGFsQWxpZ246IGZhbHNlLA0KICAgICAgICAgICAgICAgIGFzeW5jOiB0cnVlDQogICAgICAgICAgICB9KTsNCiAgICAgICAgfSk7DQogICAgICAgIHQgPSBkLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKVswXTsNCiAgICAgICAgcyA9IGQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7DQogICAgICAgIHMudHlwZSA9ICJ0ZXh0L2phdmFzY3JpcHQiOw0KICAgICAgICBzLnNyYyA9ICIvL2FuLnlhbmRleC5ydS9zeXN0ZW0vY29udGV4dC5qcyI7DQogICAgICAgIHMuYXN5bmMgPSB0cnVlOw0KICAgICAgICB0LnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKHMsIHQpOw0KICAgIH0pKHRoaXMsIHRoaXMuZG9jdW1lbnQsICJ5YW5kZXhDb250ZXh0QXN5bmNDYWxsYmFja3MiKTsNCjwvc2NyaXB0PjwvZGl2PjwvZGl2Pg==PGRpdiBjbGFzcz0nZGV0ZWN0X2NsJyBkYXRhLWlkPSdhZC15YS1tb2ItNCc+PGRpdiBzdHlsZT0ibWF4LWhlaWdodDozMyUhaW1wb3J0YW50O3dpZHRoOjEwMCU7YmFja2dyb3VuZDp5ZWxsb3c7Ym9yZGVyLWxlZnQ6M3B4IHNvbGlkICMwMDA7cGFkZGluZzoyJSAwO21hcmdpbjoyJSAwIj48c2NyaXB0IGFzeW5jIHNyYz0iLy9wYWdlYWQyLmdvb2dsZXN5bmRpY2F0aW9uLmNvbS9wYWdlYWQvanMvYWRzYnlnb29nbGUuanMiPjwvc2NyaXB0Pg0KPCEtLSBzbF9fc25nbF9fNCAtLT4NCjxpbnMgY2xhc3M9ImFkc2J5Z29vZ2xlIg0KICAgICBzdHlsZT0iZGlzcGxheTpibG9jayINCiAgICAgZGF0YS1hZC1jbGllbnQ9ImNhLXB1Yi02OTgwODI5MTYzODEyMDQ3Ig0KICAgICBkYXRhLWFkLXNsb3Q9IjMwNjE5OTQ0NTYiDQogICAgIGRhdGEtYWQtZm9ybWF0PSJhdXRvIj48L2lucz4NCjxzY3JpcHQ+DQooYWRzYnlnb29nbGUgPSB3aW5kb3cuYWRzYnlnb29nbGUgfHwgW10pLnB1c2goe30pOw0KPC9zY3JpcHQ+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0nZGV0ZWN0X2NsJyBkYXRhLWlkPSdhZC15YS00Jz48ZGl2IHN0eWxlPSJtYXgtaGVpZ2h0OjMzJSFpbXBvcnRhbnQ7d2lkdGg6MTAwJTtiYWNrZ3JvdW5kOnllbGxvdztib3JkZXItbGVmdDozcHggc29saWQgIzAwMDtwYWRkaW5nOjIlIDA7bWFyZ2luOjIlIDAiPjxzY3JpcHQgYXN5bmMgc3JjPSIvL3BhZ2VhZDIuZ29vZ2xlc3luZGljYXRpb24uY29tL3BhZ2VhZC9qcy9hZHNieWdvb2dsZS5qcyI+PC9zY3JpcHQ+DQo8IS0tIHNsX19zbmdsX180IC0tPg0KPGlucyBjbGFzcz0iYWRzYnlnb29nbGUiDQogICAgIHN0eWxlPSJkaXNwbGF5OmJsb2NrIg0KICAgICBkYXRhLWFkLWNsaWVudD0iY2EtcHViLTY5ODA4MjkxNjM4MTIwNDciDQogICAgIGRhdGEtYWQtc2xvdD0iMzA2MTk5NDQ1NiINCiAgICAgZGF0YS1hZC1mb3JtYXQ9ImF1dG8iPjwvaW5zPg0KPHNjcmlwdD4NCihhZHNieWdvb2dsZSA9IHdpbmRvdy5hZHNieWdvb2dsZSB8fCBbXSkucHVzaCh7fSk7DQo8L3NjcmlwdD48L2Rpdj48L2Rpdj4=PGRpdiBjbGFzcz0nZGV0ZWN0X2NsJyBkYXRhLWlkPSdhZC15YS1tb2ItNCc+PGRpdiBzdHlsZT0ibWF4LWhlaWdodDozMyUhaW1wb3J0YW50O3dpZHRoOjEwMCU7YmFja2dyb3VuZDp5ZWxsb3c7Ym9yZGVyLWxlZnQ6M3B4IHNvbGlkICMwMDA7cGFkZGluZzoyJSAwO21hcmdpbjoyJSAwIj48c2NyaXB0IGFzeW5jIHNyYz0iLy9wYWdlYWQyLmdvb2dsZXN5bmRpY2F0aW9uLmNvbS9wYWdlYWQvanMvYWRzYnlnb29nbGUuanMiPjwvc2NyaXB0Pg0KPCEtLSBzbF9fc25nbF9fNCAtLT4NCjxpbnMgY2xhc3M9ImFkc2J5Z29vZ2xlIg0KICAgICBzdHlsZT0iZGlzcGxheTpibG9jayINCiAgICAgZGF0YS1hZC1jbGllbnQ9ImNhLXB1Yi02OTgwODI5MTYzODEyMDQ3Ig0KICAgICBkYXRhLWFkLXNsb3Q9IjMwNjE5OTQ0NTYiDQogICAgIGRhdGEtYWQtZm9ybWF0PSJhdXRvIj48L2lucz4NCjxzY3JpcHQ+DQooYWRzYnlnb29nbGUgPSB3aW5kb3cuYWRzYnlnb29nbGUgfHwgW10pLnB1c2goe30pOw0KPC9zY3JpcHQ+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0nZGV0ZWN0X2NsJyBkYXRhLWlkPSdhZC15YS00Jz48ZGl2IHN0eWxlPSJtYXgtaGVpZ2h0OjMzJSFpbXBvcnRhbnQ7d2lkdGg6MTAwJTtiYWNrZ3JvdW5kOnllbGxvdztib3JkZXItbGVmdDozcHggc29saWQgIzAwMDtwYWRkaW5nOjIlIDA7bWFyZ2luOjIlIDAiPjxzY3JpcHQgYXN5bmMgc3JjPSIvL3BhZ2VhZDIuZ29vZ2xlc3luZGljYXRpb24uY29tL3BhZ2VhZC9qcy9hZHNieWdvb2dsZS5qcyI+PC9zY3JpcHQ+DQo8IS0tIHNsX19zbmdsX180IC0tPg0KPGlucyBjbGFzcz0iYWRzYnlnb29nbGUiDQogICAgIHN0eWxlPSJkaXNwbGF5OmJsb2NrIg0KICAgICBkYXRhLWFkLWNsaWVudD0iY2EtcHViLTY5ODA4MjkxNjM4MTIwNDciDQogICAgIGRhdGEtYWQtc2xvdD0iMzA2MTk5NDQ1NiINCiAgICAgZGF0YS1hZC1mb3JtYXQ9ImF1dG8iPjwvaW5zPg0KPHNjcmlwdD4NCihhZHNieWdvb2dsZSA9IHdpbmRvdy5hZHNieWdvb2dsZSB8fCBbXSkucHVzaCh7fSk7DQo8L3NjcmlwdD48L2Rpdj48L2Rpdj4=

Диета при «дермaтите»

Диета при дерматите продукты

Дерматит – неприятная реакция кожи на какое-либо воздействие внешних или внутренних факторов. Чаще всего кожные заболевания являются аллергическими.

Можно выделить два основных вида дерматита, при которых диета будет играть ключевую роль:

  • Себорейный;
  • Атопический.

Питание при себорейном дерматите

При этом заболевании диета является главным условием для лечения. Причинами себорейного дерматита считают заболевания желудочно-кишечного тракта, а также недостаток витаминов и минералов.

Именно пищевые аллергены провоцируют заболевание, поэтому лечебная диета просто необходима.

В каждом конкретном случае врач должен устанавливать индивидуальный план питания, потому что вызывать негативную реакцию могут разные продукты. Но есть общий список, включающий в себя наиболее популярные аллергены – от них нужно полностью отказаться.
Диета при дерматите рацион
Запрещенные продукты:

  • Копчености
  • Острое и пряное
  • Соленое
  • Быстрые углеводы в виде сахара, десертов и хлеба
  • Продукты быстрого приготовления
  • Фастфуд
  • Консервы
  • Цитрусовые
  • Кофе


Рацион должен состоять из:

  • Свежих овощей
  • Фруктов
  • Молочных продуктов
  • Ягод
  • Постного мяса

Обязательным условием считается необходимость пить достаточное количество воды. Она должна быть максимально очищенной и мягкой.

Благотворно влияют травяные чаи и настои, а также успокаивающие сборы.

Если воспаления на коже не прошли после исключения раздражающих продуктов, нужно срочно обратиться к дерматологу. Затянувшееся кожное заболевания может перерасти в серьезные проблемы. Любые кожные воспаления свидетельствуют о проблемах в работе внутренних органов.

Питание при атопическом дерматите

В отличие от детей, у людей в возрасте старше 20 кожные аллергические реакцию возникают чаще не от пищи, а от других раздражителей.

Это может быть:

  • Пыль
  • Грибки
  • Пыльца
  • Очищающие средства – мыло, гель для душа и т.д.

Прежде всего необходимо устранить основной раздражитель – заменить средства гигиены на гипоаллергенные, а также полностью избегать другие возможные факторы.
Диета при дерматите питание

Вторым шагом к выздоровлению должна стать специальная диета.

На время лечения исключается:

  • Крепкий алкоголь
  • Вино, пиво
  • Колбасы и копченья
  • Сыры
  • Дрожжевая выпечка
  • Кофе
Желательно ограничить употребление бобовых и цитрусовых.

Пример меню для диеты при любом дерматите:

  • Завтрак: 200г нежирного творога, травяной чай
  • Перекус: яблоко или груша
  • Обед: легкий овощной суп, кусок вареного куриного филе
  • Перекус: стакан кефира
  • Ужин: Овощное рагу, нежирная рыба на пару

Дополнительные рекомендации по питанию при дерматите:

  • Почти всегда во время обострения кожных заболеваний страдает печень, поэтому диета должна обеспечить ее разгрузку. Самый простой способ – снизить общее количество жиров в рационе.
  • Особенно нежелательно употреблять животные жиры (мясо, жирный творог) и транс-жиры, которые часто встречаются в выпечке и десертах.
  • Еще одна нерекомендуемая группа продуктов – глютеносодержащая. Сюда входят любые изделия из пшеницы и пшеничной муки. У большинства пациентов с дерматитами глютен провоцирует обострение заболевания.

Диета при дерматите меню

Как придерживаться диеты?

Чтобы выявить аллерген и облегчить течение заболевания необходимо на 4-5 дней перейти на максимально простой рацион. Нужно исключить все вышеперечисленные продукты, оставив в меню лишь разрешенные каши, постное мясо, овощи и легкие салаты.

Через 5 дней постепенно добавляйте свои любимые продукты, но обязательно в умеренном количестве и по одному. Ведите пищевой дневник, который в дальнейшем поможет выяснить какой именно продукт негативно влияет на кожу.

Обязательно соблюдайте все предписания врача-дермотолога. Несмотря на то, что питание в лечении кожных заболеваний носит существенную роль, важно не забывать пить все прописанные лекарства, и пользоваться мазями, которые выписал врач.

Только комплексное лечение поможет избавиться от дерматита и предотвратить его дальнейшее появление.

PGRpdiBjbGFzcz0nZGV0ZWN0X2NsJyBkYXRhLWlkPSdhZC15YS1tb2ItNSc+PGRpdiBzdHlsZT0ibWF4LWhlaWdodDozMyUhaW1wb3J0YW50O3dpZHRoOjEwMCU7YmFja2dyb3VuZDp5ZWxsb3c7Ym9yZGVyLWxlZnQ6M3B4IHNvbGlkICMwMDA7cGFkZGluZzoyJSAwO21hcmdpbjoyJSAwIj48c2NyaXB0IGFzeW5jIHNyYz0iLy9wYWdlYWQyLmdvb2dsZXN5bmRpY2F0aW9uLmNvbS9wYWdlYWQvanMvYWRzYnlnb29nbGUuanMiPjwvc2NyaXB0Pg0KPCEtLSBzbF9fc25nbF9fNSAtLT4NCjxpbnMgY2xhc3M9ImFkc2J5Z29vZ2xlIg0KICAgICBzdHlsZT0iZGlzcGxheTpibG9jayINCiAgICAgZGF0YS1hZC1jbGllbnQ9ImNhLXB1Yi02OTgwODI5MTYzODEyMDQ3Ig0KICAgICBkYXRhLWFkLXNsb3Q9IjYzMTg3MTMxODgiDQogICAgIGRhdGEtYWQtZm9ybWF0PSJhdXRvIj48L2lucz4NCjxzY3JpcHQ+DQooYWRzYnlnb29nbGUgPSB3aW5kb3cuYWRzYnlnb29nbGUgfHwgW10pLnB1c2goe30pOw0KPC9zY3JpcHQ+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0nZGV0ZWN0X2NsJyBkYXRhLWlkPSdhZC15YS01Jz48ZGl2IHN0eWxlPSJtYXgtaGVpZ2h0OjMzJSFpbXBvcnRhbnQ7d2lkdGg6MTAwJTtiYWNrZ3JvdW5kOnllbGxvdztib3JkZXItbGVmdDozcHggc29saWQgIzAwMDtwYWRkaW5nOjIlIDA7bWFyZ2luOjIlIDAiPjxzY3JpcHQgYXN5bmMgc3JjPSIvL3BhZ2VhZDIuZ29vZ2xlc3luZGljYXRpb24uY29tL3BhZ2VhZC9qcy9hZHNieWdvb2dsZS5qcyI+PC9zY3JpcHQ+DQo8IS0tIHNsX19zbmdsX181IC0tPg0KPGlucyBjbGFzcz0iYWRzYnlnb29nbGUiDQogICAgIHN0eWxlPSJkaXNwbGF5OmJsb2NrIg0KICAgICBkYXRhLWFkLWNsaWVudD0iY2EtcHViLTY5ODA4MjkxNjM4MTIwNDciDQogICAgIGRhdGEtYWQtc2xvdD0iNjMxODcxMzE4OCINCiAgICAgZGF0YS1hZC1mb3JtYXQ9ImF1dG8iPjwvaW5zPg0KPHNjcmlwdD4NCihhZHNieWdvb2dsZSA9IHdpbmRvdy5hZHNieWdvb2dsZSB8fCBbXSkucHVzaCh7fSk7DQo8L3NjcmlwdD48L2Rpdj48L2Rpdj4=PGRpdiBjbGFzcz0nZGV0ZWN0X2NsJyBkYXRhLWlkPSdhZC15YS1tb2ItNSc+PGRpdiBzdHlsZT0ibWF4LWhlaWdodDozMyUhaW1wb3J0YW50O3dpZHRoOjEwMCU7YmFja2dyb3VuZDp5ZWxsb3c7Ym9yZGVyLWxlZnQ6M3B4IHNvbGlkICMwMDA7cGFkZGluZzoyJSAwO21hcmdpbjoyJSAwIj48c2NyaXB0IGFzeW5jIHNyYz0iLy9wYWdlYWQyLmdvb2dsZXN5bmRpY2F0aW9uLmNvbS9wYWdlYWQvanMvYWRzYnlnb29nbGUuanMiPjwvc2NyaXB0Pg0KPCEtLSBzbF9fc25nbF9fNSAtLT4NCjxpbnMgY2xhc3M9ImFkc2J5Z29vZ2xlIg0KICAgICBzdHlsZT0iZGlzcGxheTpibG9jayINCiAgICAgZGF0YS1hZC1jbGllbnQ9ImNhLXB1Yi02OTgwODI5MTYzODEyMDQ3Ig0KICAgICBkYXRhLWFkLXNsb3Q9IjYzMTg3MTMxODgiDQogICAgIGRhdGEtYWQtZm9ybWF0PSJhdXRvIj48L2lucz4NCjxzY3JpcHQ+DQooYWRzYnlnb29nbGUgPSB3aW5kb3cuYWRzYnlnb29nbGUgfHwgW10pLnB1c2goe30pOw0KPC9zY3JpcHQ+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0nZGV0ZWN0X2NsJyBkYXRhLWlkPSdhZC15YS01Jz48ZGl2IHN0eWxlPSJtYXgtaGVpZ2h0OjMzJSFpbXBvcnRhbnQ7d2lkdGg6MTAwJTtiYWNrZ3JvdW5kOnllbGxvdztib3JkZXItbGVmdDozcHggc29saWQgIzAwMDtwYWRkaW5nOjIlIDA7bWFyZ2luOjIlIDAiPjxzY3JpcHQgYXN5bmMgc3JjPSIvL3BhZ2VhZDIuZ29vZ2xlc3luZGljYXRpb24uY29tL3BhZ2VhZC9qcy9hZHNieWdvb2dsZS5qcyI+PC9zY3JpcHQ+DQo8IS0tIHNsX19zbmdsX181IC0tPg0KPGlucyBjbGFzcz0iYWRzYnlnb29nbGUiDQogICAgIHN0eWxlPSJkaXNwbGF5OmJsb2NrIg0KICAgICBkYXRhLWFkLWNsaWVudD0iY2EtcHViLTY5ODA4MjkxNjM4MTIwNDciDQogICAgIGRhdGEtYWQtc2xvdD0iNjMxODcxMzE4OCINCiAgICAgZGF0YS1hZC1mb3JtYXQ9ImF1dG8iPjwvaW5zPg0KPHNjcmlwdD4NCihhZHNieWdvb2dsZSA9IHdpbmRvdy5hZHNieWdvb2dsZSB8fCBbXSkucHVzaCh7fSk7DQo8L3NjcmlwdD48L2Rpdj48L2Rpdj4=
PGRpdiBjbGFzcz0nZGV0ZWN0X2NsJyBkYXRhLWlkPSdhZC1nbC1tb2ItNycgPjxkaXYgc3R5bGU9Im1heC1oZWlnaHQ6MzMlIWltcG9ydGFudDt3aWR0aDoxMDAlO2JhY2tncm91bmQ6eWVsbG93O2JvcmRlci1sZWZ0OjNweCBzb2xpZCAjMDAwO3BhZGRpbmc6MiUgMDttYXJnaW46MiUgMCI+PHNjcmlwdCBhc3luYyBzcmM9Ii8vcGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20vcGFnZWFkL2pzL2Fkc2J5Z29vZ2xlLmpzIj48L3NjcmlwdD4NCjwhLS0gc2xfX3NuZ2xfXzcgLS0+DQo8aW5zIGNsYXNzPSJhZHNieWdvb2dsZSINCiAgICAgc3R5bGU9ImRpc3BsYXk6YmxvY2siDQogICAgIGRhdGEtYWQtY2xpZW50PSJjYS1wdWItNjk4MDgyOTE2MzgxMjA0NyINCiAgICAgZGF0YS1hZC1zbG90PSI3OTYzMzc2NDY1Ig0KICAgICBkYXRhLWFkLWZvcm1hdD0iYXV0byI+PC9pbnM+DQo8c2NyaXB0Pg0KKGFkc2J5Z29vZ2xlID0gd2luZG93LmFkc2J5Z29vZ2xlIHx8IFtdKS5wdXNoKHt9KTsNCjwvc2NyaXB0PjwvZGl2PjwvZGl2Pg==PGRpdiBjbGFzcz0nZGV0ZWN0X2NsJyBkYXRhLWlkPSdhZC1nbC03Jz48ZGl2IHN0eWxlPSJtYXgtaGVpZ2h0OjMzJSFpbXBvcnRhbnQ7d2lkdGg6MTAwJTtiYWNrZ3JvdW5kOnllbGxvdztib3JkZXItbGVmdDozcHggc29saWQgIzAwMDtwYWRkaW5nOjIlIDA7bWFyZ2luOjIlIDAiPjxzY3JpcHQgYXN5bmMgc3JjPSIvL3BhZ2VhZDIuZ29vZ2xlc3luZGljYXRpb24uY29tL3BhZ2VhZC9qcy9hZHNieWdvb2dsZS5qcyI+PC9zY3JpcHQ+DQo8IS0tIHNsX19zbmdsX183IC0tPg0KPGlucyBjbGFzcz0iYWRzYnlnb29nbGUiDQogICAgIHN0eWxlPSJkaXNwbGF5OmJsb2NrIg0KICAgICBkYXRhLWFkLWNsaWVudD0iY2EtcHViLTY5ODA4MjkxNjM4MTIwNDciDQogICAgIGRhdGEtYWQtc2xvdD0iNzk2MzM3NjQ2NSINCiAgICAgZGF0YS1hZC1mb3JtYXQ9ImF1dG8iPjwvaW5zPg0KPHNjcmlwdD4NCihhZHNieWdvb2dsZSA9IHdpbmRvdy5hZHNieWdvb2dsZSB8fCBbXSkucHVzaCh7fSk7DQo8L3NjcmlwdD48L2Rpdj48L2Rpdj4=PGRpdiBjbGFzcz0nZGV0ZWN0X2NsJyBkYXRhLWlkPSdhZC15YS1tb2ItNyc+PCEtLSBZYW5kZXguUlRCIFItQS0yMzEzODctMiAtLT4NCjxkaXYgaWQ9InlhbmRleF9ydGJfUi1BLTIzMTM4Ny0yIj48L2Rpdj4NCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAoZnVuY3Rpb24odywgZCwgbiwgcywgdCkgew0KICAgICAgICB3W25dID0gd1tuXSB8fCBbXTsNCiAgICAgICAgd1tuXS5wdXNoKGZ1bmN0aW9uKCkgew0KICAgICAgICAgICAgWWEuQ29udGV4dC5BZHZNYW5hZ2VyLnJlbmRlcih7DQogICAgICAgICAgICAgICAgYmxvY2tJZDogIlItQS0yMzEzODctMiIsDQogICAgICAgICAgICAgICAgcmVuZGVyVG86ICJ5YW5kZXhfcnRiX1ItQS0yMzEzODctMiIsDQogICAgICAgICAgICAgICAgaG9yaXpvbnRhbEFsaWduOiBmYWxzZSwNCiAgICAgICAgICAgICAgICBhc3luYzogdHJ1ZQ0KICAgICAgICAgICAgfSk7DQogICAgICAgIH0pOw0KICAgICAgICB0ID0gZC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IilbMF07DQogICAgICAgIHMgPSBkLmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpOw0KICAgICAgICBzLnR5cGUgPSAidGV4dC9qYXZhc2NyaXB0IjsNCiAgICAgICAgcy5zcmMgPSAiLy9hbi55YW5kZXgucnUvc3lzdGVtL2NvbnRleHQuanMiOw0KICAgICAgICBzLmFzeW5jID0gdHJ1ZTsNCiAgICAgICAgdC5wYXJlbnROb2RlLmluc2VydEJlZm9yZShzLCB0KTsNCiAgICB9KSh0aGlzLCB0aGlzLmRvY3VtZW50LCAieWFuZGV4Q29udGV4dEFzeW5jQ2FsbGJhY2tzIik7DQo8L3NjcmlwdD48L2Rpdj4=PGRpdiBjbGFzcz0nZGV0ZWN0X2NsJyBkYXRhLWlkPSdhZC15YS03Jz48IS0tIFlhbmRleC5SVEIgUi1BLTIzMTM4Ny0yIC0tPg0KPGRpdiBpZD0ieWFuZGV4X3J0Yl9SLUEtMjMxMzg3LTIiPjwvZGl2Pg0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPg0KICAgIChmdW5jdGlvbih3LCBkLCBuLCBzLCB0KSB7DQogICAgICAgIHdbbl0gPSB3W25dIHx8IFtdOw0KICAgICAgICB3W25dLnB1c2goZnVuY3Rpb24oKSB7DQogICAgICAgICAgICBZYS5Db250ZXh0LkFkdk1hbmFnZXIucmVuZGVyKHsNCiAgICAgICAgICAgICAgICBibG9ja0lkOiAiUi1BLTIzMTM4Ny0yIiwNCiAgICAgICAgICAgICAgICByZW5kZXJUbzogInlhbmRleF9ydGJfUi1BLTIzMTM4Ny0yIiwNCiAgICAgICAgICAgICAgICBob3Jpem9udGFsQWxpZ246IGZhbHNlLA0KICAgICAgICAgICAgICAgIGFzeW5jOiB0cnVlDQogICAgICAgICAgICB9KTsNCiAgICAgICAgfSk7DQogICAgICAgIHQgPSBkLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKVswXTsNCiAgICAgICAgcyA9IGQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7DQogICAgICAgIHMudHlwZSA9ICJ0ZXh0L2phdmFzY3JpcHQiOw0KICAgICAgICBzLnNyYyA9ICIvL2FuLnlhbmRleC5ydS9zeXN0ZW0vY29udGV4dC5qcyI7DQogICAgICAgIHMuYXN5bmMgPSB0cnVlOw0KICAgICAgICB0LnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKHMsIHQpOw0KICAgIH0pKHRoaXMsIHRoaXMuZG9jdW1lbnQsICJ5YW5kZXhDb250ZXh0QXN5bmNDYWxsYmFja3MiKTsNCjwvc2NyaXB0PjwvZGl2Pg==
PGRpdiBjbGFzcz0nZGV0ZWN0X2NsJyBkYXRhLWlkPSdhZC15YS1tb2ItOCc+PGRpdiBzdHlsZT0ibWF4LWhlaWdodDozMyUhaW1wb3J0YW50O3dpZHRoOjEwMCU7YmFja2dyb3VuZDp5ZWxsb3c7Ym9yZGVyLWxlZnQ6M3B4IHNvbGlkICMwMDA7cGFkZGluZzoyJSAwO21hcmdpbjoyJSAwIj48c2NyaXB0IGFzeW5jIHNyYz0iLy9wYWdlYWQyLmdvb2dsZXN5bmRpY2F0aW9uLmNvbS9wYWdlYWQvanMvYWRzYnlnb29nbGUuanMiPjwvc2NyaXB0Pg0KPCEtLSBzbF9fc25nbF9fOCAtLT4NCjxpbnMgY2xhc3M9ImFkc2J5Z29vZ2xlIg0KICAgICBzdHlsZT0iZGlzcGxheTpibG9jayINCiAgICAgZGF0YS1hZC1jbGllbnQ9ImNhLXB1Yi02OTgwODI5MTYzODEyMDQ3Ig0KICAgICBkYXRhLWFkLXNsb3Q9IjI1OTUwOTA1OTUiDQogICAgIGRhdGEtYWQtZm9ybWF0PSJhdXRvIj48L2lucz4NCjxzY3JpcHQ+DQooYWRzYnlnb29nbGUgPSB3aW5kb3cuYWRzYnlnb29nbGUgfHwgW10pLnB1c2goe30pOw0KPC9zY3JpcHQ+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0nZGV0ZWN0X2NsJyBkYXRhLWlkPSdhZC15YS04Jz48ZGl2IHN0eWxlPSJtYXgtaGVpZ2h0OjMzJSFpbXBvcnRhbnQ7d2lkdGg6MTAwJTtiYWNrZ3JvdW5kOnllbGxvdztib3JkZXItbGVmdDozcHggc29saWQgIzAwMDtwYWRkaW5nOjIlIDA7bWFyZ2luOjIlIDAiPjxzY3JpcHQgYXN5bmMgc3JjPSIvL3BhZ2VhZDIuZ29vZ2xlc3luZGljYXRpb24uY29tL3BhZ2VhZC9qcy9hZHNieWdvb2dsZS5qcyI+PC9zY3JpcHQ+DQo8IS0tIHNsX19zbmdsX184IC0tPg0KPGlucyBjbGFzcz0iYWRzYnlnb29nbGUiDQogICAgIHN0eWxlPSJkaXNwbGF5OmJsb2NrIg0KICAgICBkYXRhLWFkLWNsaWVudD0iY2EtcHViLTY5ODA4MjkxNjM4MTIwNDciDQogICAgIGRhdGEtYWQtc2xvdD0iMjU5NTA5MDU5NSINCiAgICAgZGF0YS1hZC1mb3JtYXQ9ImF1dG8iPjwvaW5zPg0KPHNjcmlwdD4NCihhZHNieWdvb2dsZSA9IHdpbmRvdy5hZHNieWdvb2dsZSB8fCBbXSkucHVzaCh7fSk7DQo8L3NjcmlwdD48L2Rpdj48L2Rpdj4=PGRpdiBjbGFzcz0nZGV0ZWN0X2NsJyBkYXRhLWlkPSdhZC15YS1tb2ItOCc+PGRpdiBzdHlsZT0ibWF4LWhlaWdodDozMyUhaW1wb3J0YW50O3dpZHRoOjEwMCU7YmFja2dyb3VuZDp5ZWxsb3c7Ym9yZGVyLWxlZnQ6M3B4IHNvbGlkICMwMDA7cGFkZGluZzoyJSAwO21hcmdpbjoyJSAwIj48c2NyaXB0IGFzeW5jIHNyYz0iLy9wYWdlYWQyLmdvb2dsZXN5bmRpY2F0aW9uLmNvbS9wYWdlYWQvanMvYWRzYnlnb29nbGUuanMiPjwvc2NyaXB0Pg0KPCEtLSBzbF9fc25nbF9fOCAtLT4NCjxpbnMgY2xhc3M9ImFkc2J5Z29vZ2xlIg0KICAgICBzdHlsZT0iZGlzcGxheTpibG9jayINCiAgICAgZGF0YS1hZC1jbGllbnQ9ImNhLXB1Yi02OTgwODI5MTYzODEyMDQ3Ig0KICAgICBkYXRhLWFkLXNsb3Q9IjI1OTUwOTA1OTUiDQogICAgIGRhdGEtYWQtZm9ybWF0PSJhdXRvIj48L2lucz4NCjxzY3JpcHQ+DQooYWRzYnlnb29nbGUgPSB3aW5kb3cuYWRzYnlnb29nbGUgfHwgW10pLnB1c2goe30pOw0KPC9zY3JpcHQ+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0nZGV0ZWN0X2NsJyBkYXRhLWlkPSdhZC15YS04Jz48ZGl2IHN0eWxlPSJtYXgtaGVpZ2h0OjMzJSFpbXBvcnRhbnQ7d2lkdGg6MTAwJTtiYWNrZ3JvdW5kOnllbGxvdztib3JkZXItbGVmdDozcHggc29saWQgIzAwMDtwYWRkaW5nOjIlIDA7bWFyZ2luOjIlIDAiPjxzY3JpcHQgYXN5bmMgc3JjPSIvL3BhZ2VhZDIuZ29vZ2xlc3luZGljYXRpb24uY29tL3BhZ2VhZC9qcy9hZHNieWdvb2dsZS5qcyI+PC9zY3JpcHQ+DQo8IS0tIHNsX19zbmdsX184IC0tPg0KPGlucyBjbGFzcz0iYWRzYnlnb29nbGUiDQogICAgIHN0eWxlPSJkaXNwbGF5OmJsb2NrIg0KICAgICBkYXRhLWFkLWNsaWVudD0iY2EtcHViLTY5ODA4MjkxNjM4MTIwNDciDQogICAgIGRhdGEtYWQtc2xvdD0iMjU5NTA5MDU5NSINCiAgICAgZGF0YS1hZC1mb3JtYXQ9ImF1dG8iPjwvaW5zPg0KPHNjcmlwdD4NCihhZHNieWdvb2dsZSA9IHdpbmRvdy5hZHNieWdvb2dsZSB8fCBbXSkucHVzaCh7fSk7DQo8L3NjcmlwdD48L2Rpdj48L2Rpdj4=