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лaты» для снижения веса – пoдбор прoдуктов

салаты для похудения – подбор продуктов диета

При большом желании похудеть нужно настраиваться на здоровое питание. А салаты как раз и есть важная составляющая здорового рациона. В салатах при небольшом количестве калорий много витаминов и минералов. Но при приготовлении салатов нужно быть аккуратным, чтобы получить диетические салаты. Исключается большое количество майонеза или сыра. Рассмотрим ниже, какие продукты должны входить в салат, чтобы он имел похудательный эффект.

Салаты для похудения – подбор продуктов

  • Томаты или помидоры. В помидорах есть витамин А и С, фермент ликопин, который помогает в профилактике рака. Один помидор содержит в себе половину дневной дозы витамина А и ¼ витамина С. В 100 граммах помидора — 19.9 калорий. Так что 100 граммов помидора можно смело класть в салат.
  • Сладкий (болгарский) перец. Содержит 60-70% от дневной дозы витамина А и С плюс большое количество бета-каротина. В 100 граммах — 26 калорий. В салат кладут не менее 100 граммов.
  • Огурцы. В огурцах 95% структурированной полезной воды для нашего организма. В маринованных огурцах одна только соль. Огурцы очищают кишечник. В 100 граммах огурца — 14 калорий.
  • Редька и редиска. Содержат мало витаминов и малокалорийны. Их обычно добавляют для остроты. В редисе 20 калорий на 100 граммов, а в черной редьке — 36.
  • Морковь. В моркови много бета-каротина и витамина А. В салат можно натереть одну среднюю морковь. В 100 граммах моркови — 35 калорий.
  • Капуста. В капусте много витамина С и клетчатки. Полезна любая капуста: и брокколи, и цветная, и самая обычная белокочанная. В салат кладут 100-200 грамм. В капусте на 100 граммов в среднем 30 калорий, независимо от сорта.
  • Зеленый салат. Какой лучше подобрать салат, читайте в статье Салаты для похудения – рецепты. В салатах не меньше витаминов, чем в других овощах. Однако маловато клетчатки: на 200 грамм салата — всего один грамм. В 100 граммах салата — 16 калорий.
  • Яблоко. Яблоки придают салату приятную кислинку. В них много витаминов и антиоксидантов, а еще «правильный» сахар – фруктоза. 100 граммов яблок — 47 калорий. Очень полезно и пригодится в борьбе с лишним весом. Это очень хороший фрукт, особенно для того чтобы избавиться от двойного подбородка или складок.
  • Авокадо. В авокадо много ненасыщенных жиров и минералов. Авокадо не сильно калориен, на 100 грамм авокадо — 28 калорий. В салат кладут несколько ломтиков.
  • Грецкий орех. В орехах есть жиры, белки, клетчатка, минералы и витамин Е. Орехи более калорийны, чем овощи. Для салата нужно не более столовой ложки измельченных орехов. 100 граммов грецкого ореха — 656 калорий.

салаты для похудения – подбор продуктов полезные

  • Грибы. Грибы диетологи считают пустыми, однако в них есть полезные вещества – селен и фолиевая кислота, и они хорошо утоляют чувство голода. В 100 граммов грибов — 160 калорий. В салат можно положить 100 граммов.
  • Бобовые, фасоль и горох. Для салата нужна отварная или консервированная фасоль. Кроме того, используют консервированную кукурузу. В бобовых много клетчатки, белки и витамины группы В. В салат кладут не более 100 грамм. В фасоли на 100 грамм 16 грамм.
  • Оливки консервированные. В оливках много натрия, соли, попросту говоря. А соль не сильно полезна для похудения, поскольку задерживает жидкость. Черные оливки полезнее зеленых, употреблять можно не более 5 штук. В 100 граммах оливок — 175 калорий.
  • Брынза и сыр. Для похудения в салат кладут обезжиренный или низкой жирности. В нём много белка и кальция. Для салата берут 70-100 грамм сыра (брынзы). Калорийность сыра 86 калорий на 100 грамм.
  • Яйца. Всем известно, что в яйцах много протеина и белка, однако в желтке есть жир. Для салата нужно одно яйцо. Калорийность яйца — 157 калорий. В одном яйце — 47 граммов.
  • Рис отварной. В рисе есть клетчатка и минералы. Для салата нужно 100 граммов риса.
  • Белки. Для салата нужен белок. Его можно взять из куриной грудки, рыбы или тофу. 100 граммов белка вполне хватит для салата. В 100 граммов куриной грудке — 241 калория.

Салаты для похудения – вредные продукты

  • Колбаса, бекон и ветчина – вкусно, но и вредно. Много жира, соли и много калорий. Старайтесь класть как минимум 10 граммов жира в салат. В вареной диетической колбасе 170 калорий на 100 граммов.
  • Жирные сыры – много холестерина и жиров. Испортят любой салат. В среднем жирные сыры содержат 300 калорий на 100 граммов.
  • Сухарики. Только лишние калории, соль и жиры.
  • Картофель и макароны. Вообще не содержат полезных веществ, калорийность большая.
  • Изюм. На 1 грамм белка и 2 грамма клетчатки — аж 130 калорий.

салаты для похудения – подбор продуктов вредные

  • Лучше не использовать фабричные закуски, а делать самой, потому что они вреднее домашних.
  • Майонез лучше заменять домашней сметаной. Или покупать нежирный, а то и вовсе делать домашний майонез.
  • В салатах лучше использовать оливковое масло вместо растительного.
PGRpdiBjbGFzcz0nZGV0ZWN0X2NsJyBkYXRhLWlkPSdhZC15YS1tb2ItNSc+PGRpdiBzdHlsZT0ibWF4LWhlaWdodDozMyUhaW1wb3J0YW50O3dpZHRoOjEwMCU7YmFja2dyb3VuZDp5ZWxsb3c7Ym9yZGVyLWxlZnQ6M3B4IHNvbGlkICMwMDA7cGFkZGluZzoyJSAwO21hcmdpbjoyJSAwIj48c2NyaXB0IGFzeW5jIHNyYz0iLy9wYWdlYWQyLmdvb2dsZXN5bmRpY2F0aW9uLmNvbS9wYWdlYWQvanMvYWRzYnlnb29nbGUuanMiPjwvc2NyaXB0Pg0KPCEtLSBzbF9fc25nbF9fNSAtLT4NCjxpbnMgY2xhc3M9ImFkc2J5Z29vZ2xlIg0KICAgICBzdHlsZT0iZGlzcGxheTpibG9jayINCiAgICAgZGF0YS1hZC1jbGllbnQ9ImNhLXB1Yi02OTgwODI5MTYzODEyMDQ3Ig0KICAgICBkYXRhLWFkLXNsb3Q9IjYzMTg3MTMxODgiDQogICAgIGRhdGEtYWQtZm9ybWF0PSJhdXRvIj48L2lucz4NCjxzY3JpcHQ+DQooYWRzYnlnb29nbGUgPSB3aW5kb3cuYWRzYnlnb29nbGUgfHwgW10pLnB1c2goe30pOw0KPC9zY3JpcHQ+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0nZGV0ZWN0X2NsJyBkYXRhLWlkPSdhZC15YS01Jz48ZGl2IHN0eWxlPSJtYXgtaGVpZ2h0OjMzJSFpbXBvcnRhbnQ7d2lkdGg6MTAwJTtiYWNrZ3JvdW5kOnllbGxvdztib3JkZXItbGVmdDozcHggc29saWQgIzAwMDtwYWRkaW5nOjIlIDA7bWFyZ2luOjIlIDAiPjxzY3JpcHQgYXN5bmMgc3JjPSIvL3BhZ2VhZDIuZ29vZ2xlc3luZGljYXRpb24uY29tL3BhZ2VhZC9qcy9hZHNieWdvb2dsZS5qcyI+PC9zY3JpcHQ+DQo8IS0tIHNsX19zbmdsX181IC0tPg0KPGlucyBjbGFzcz0iYWRzYnlnb29nbGUiDQogICAgIHN0eWxlPSJkaXNwbGF5OmJsb2NrIg0KICAgICBkYXRhLWFkLWNsaWVudD0iY2EtcHViLTY5ODA4MjkxNjM4MTIwNDciDQogICAgIGRhdGEtYWQtc2xvdD0iNjMxODcxMzE4OCINCiAgICAgZGF0YS1hZC1mb3JtYXQ9ImF1dG8iPjwvaW5zPg0KPHNjcmlwdD4NCihhZHNieWdvb2dsZSA9IHdpbmRvdy5hZHNieWdvb2dsZSB8fCBbXSkucHVzaCh7fSk7DQo8L3NjcmlwdD48L2Rpdj48L2Rpdj4=PGRpdiBjbGFzcz0nZGV0ZWN0X2NsJyBkYXRhLWlkPSdhZC15YS1tb2ItNSc+PGRpdiBzdHlsZT0ibWF4LWhlaWdodDozMyUhaW1wb3J0YW50O3dpZHRoOjEwMCU7YmFja2dyb3VuZDp5ZWxsb3c7Ym9yZGVyLWxlZnQ6M3B4IHNvbGlkICMwMDA7cGFkZGluZzoyJSAwO21hcmdpbjoyJSAwIj48c2NyaXB0IGFzeW5jIHNyYz0iLy9wYWdlYWQyLmdvb2dsZXN5bmRpY2F0aW9uLmNvbS9wYWdlYWQvanMvYWRzYnlnb29nbGUuanMiPjwvc2NyaXB0Pg0KPCEtLSBzbF9fc25nbF9fNSAtLT4NCjxpbnMgY2xhc3M9ImFkc2J5Z29vZ2xlIg0KICAgICBzdHlsZT0iZGlzcGxheTpibG9jayINCiAgICAgZGF0YS1hZC1jbGllbnQ9ImNhLXB1Yi02OTgwODI5MTYzODEyMDQ3Ig0KICAgICBkYXRhLWFkLXNsb3Q9IjYzMTg3MTMxODgiDQogICAgIGRhdGEtYWQtZm9ybWF0PSJhdXRvIj48L2lucz4NCjxzY3JpcHQ+DQooYWRzYnlnb29nbGUgPSB3aW5kb3cuYWRzYnlnb29nbGUgfHwgW10pLnB1c2goe30pOw0KPC9zY3JpcHQ+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0nZGV0ZWN0X2NsJyBkYXRhLWlkPSdhZC15YS01Jz48ZGl2IHN0eWxlPSJtYXgtaGVpZ2h0OjMzJSFpbXBvcnRhbnQ7d2lkdGg6MTAwJTtiYWNrZ3JvdW5kOnllbGxvdztib3JkZXItbGVmdDozcHggc29saWQgIzAwMDtwYWRkaW5nOjIlIDA7bWFyZ2luOjIlIDAiPjxzY3JpcHQgYXN5bmMgc3JjPSIvL3BhZ2VhZDIuZ29vZ2xlc3luZGljYXRpb24uY29tL3BhZ2VhZC9qcy9hZHNieWdvb2dsZS5qcyI+PC9zY3JpcHQ+DQo8IS0tIHNsX19zbmdsX181IC0tPg0KPGlucyBjbGFzcz0iYWRzYnlnb29nbGUiDQogICAgIHN0eWxlPSJkaXNwbGF5OmJsb2NrIg0KICAgICBkYXRhLWFkLWNsaWVudD0iY2EtcHViLTY5ODA4MjkxNjM4MTIwNDciDQogICAgIGRhdGEtYWQtc2xvdD0iNjMxODcxMzE4OCINCiAgICAgZGF0YS1hZC1mb3JtYXQ9ImF1dG8iPjwvaW5zPg0KPHNjcmlwdD4NCihhZHNieWdvb2dsZSA9IHdpbmRvdy5hZHNieWdvb2dsZSB8fCBbXSkucHVzaCh7fSk7DQo8L3NjcmlwdD48L2Rpdj48L2Rpdj4=
1 комментариев
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=