PHNjcmlwdCBhc3luYyBzcmM9Jy8vcGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20vcGFnZWFkL2pzL2Fkc2J5Z29vZ2xlLmpzJz48L3NjcmlwdD48aW5zIGNsYXNzPSdhZHNieWdvb2dsZScgc3R5bGU9J2Rpc3BsYXk6YmxvY2snIGRhdGEtYWQtY2xpZW50PSdjYS1wdWItNjk4MDgyOTE2MzgxMjA0NycgZGF0YS1hZC1zbG90PSc3MTU3OTE2MjE1JyBkYXRhLWFkLWZvcm1hdD0nYXV0byc+PC9pbnM+PHNjcmlwdD4oYWRzYnlnb29nbGU9d2luZG93LmFkc2J5Z29vZ2xlfHxbXSkucHVzaCh7fSk7PC9zY3JpcHQ+PHNjcmlwdCBhc3luYyBzcmM9Ii8vcGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20vcGFnZWFkL2pzL2Fkc2J5Z29vZ2xlLmpzIj48L3NjcmlwdD4NCjxpbnMgY2xhc3M9ImFkc2J5Z29vZ2xlIg0KICAgICBzdHlsZT0iZGlzcGxheTpibG9jazsgdGV4dC1hbGlnbjpjZW50ZXI7Ig0KICAgICBkYXRhLWFkLWZvcm1hdD0iZmx1aWQiDQogICAgIGRhdGEtYWQtbGF5b3V0PSJpbi1hcnRpY2xlIg0KICAgICBkYXRhLWFkLWNsaWVudD0iY2EtcHViLTY5ODA4MjkxNjM4MTIwNDciDQogICAgIGRhdGEtYWQtc2xvdD0iOTk0NjE4NjQ4NCI+PC9pbnM+DQo8c2NyaXB0Pg0KICAgICAoYWRzYnlnb29nbGUgPSB3aW5kb3cuYWRzYnlnb29nbGUgfHwgW10pLnB1c2goe30pOw0KPC9zY3JpcHQ+PCEtLSBZYW5kZXguUlRCIFItQS0yMzEzODctMTAgLS0+DQo8ZGl2IGlkPSJ5YW5kZXhfcnRiX1ItQS0yMzEzODctMTAiPjwvZGl2Pg0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPg0KICAgIChmdW5jdGlvbih3LCBkLCBuLCBzLCB0KSB7DQogICAgICAgIHdbbl0gPSB3W25dIHx8IFtdOw0KICAgICAgICB3W25dLnB1c2goZnVuY3Rpb24oKSB7DQogICAgICAgICAgICBZYS5Db250ZXh0LkFkdk1hbmFnZXIucmVuZGVyKHsNCiAgICAgICAgICAgICAgICBibG9ja0lkOiAiUi1BLTIzMTM4Ny0xMCIsDQogICAgICAgICAgICAgICAgcmVuZGVyVG86ICJ5YW5kZXhfcnRiX1ItQS0yMzEzODctMTAiLA0KICAgICAgICAgICAgICAgIGhvcml6b250YWxBbGlnbjogZmFsc2UsDQogICAgICAgICAgICAgICAgYXN5bmM6IHRydWUNCiAgICAgICAgICAgIH0pOw0KICAgICAgICB9KTsNCiAgICAgICAgdCA9IGQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInNjcmlwdCIpWzBdOw0KICAgICAgICBzID0gZC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTsNCiAgICAgICAgcy50eXBlID0gInRleHQvamF2YXNjcmlwdCI7DQogICAgICAgIHMuc3JjID0gIi8vYW4ueWFuZGV4LnJ1L3N5c3RlbS9jb250ZXh0LmpzIjsNCiAgICAgICAgcy5hc3luYyA9IHRydWU7DQogICAgICAgIHQucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUocywgdCk7DQogICAgfSkodGhpcywgdGhpcy5kb2N1bWVudCwgInlhbmRleENvbnRleHRBc3luY0NhbGxiYWNrcyIpOw0KPC9zY3JpcHQ+PCEtLSBZYW5kZXguUlRCIFItQS0yMzEzODctMSAtLT4NCjxkaXYgaWQ9InlhbmRleF9ydGJfUi1BLTIzMTM4Ny0xIj48L2Rpdj4NCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAoZnVuY3Rpb24odywgZCwgbiwgcywgdCkgew0KICAgICAgICB3W25dID0gd1tuXSB8fCBbXTsNCiAgICAgICAgd1tuXS5wdXNoKGZ1bmN0aW9uKCkgew0KICAgICAgICAgICAgWWEuQ29udGV4dC5BZHZNYW5hZ2VyLnJlbmRlcih7DQogICAgICAgICAgICAgICAgYmxvY2tJZDogIlItQS0yMzEzODctMSIsDQogICAgICAgICAgICAgICAgcmVuZGVyVG86ICJ5YW5kZXhfcnRiX1ItQS0yMzEzODctMSIsDQogICAgICAgICAgICAgICAgYXN5bmM6IHRydWUNCiAgICAgICAgICAgIH0pOw0KICAgICAgICB9KTsNCiAgICAgICAgdCA9IGQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInNjcmlwdCIpWzBdOw0KICAgICAgICBzID0gZC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTsNCiAgICAgICAgcy50eXBlID0gInRleHQvamF2YXNjcmlwdCI7DQogICAgICAgIHMuc3JjID0gIi8vYW4ueWFuZGV4LnJ1L3N5c3RlbS9jb250ZXh0LmpzIjsNCiAgICAgICAgcy5hc3luYyA9IHRydWU7DQogICAgICAgIHQucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUocywgdCk7DQogICAgfSkodGhpcywgdGhpcy5kb2N1bWVudCwgInlhbmRleENvbnRleHRBc3luY0NhbGxiYWNrcyIpOw0KPC9zY3JpcHQ+ PHNjcmlwdCBhc3luYyBzcmM9Jy8vcGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20vcGFnZWFkL2pzL2Fkc2J5Z29vZ2xlLmpzJz48L3NjcmlwdD48aW5zIGNsYXNzPSdhZHNieWdvb2dsZScgc3R5bGU9J2Rpc3BsYXk6YmxvY2snIGRhdGEtYWQtY2xpZW50PSdjYS1wdWItNjk4MDgyOTE2MzgxMjA0NycgZGF0YS1hZC1zbG90PSc3MTU3OTE2MjE1JyBkYXRhLWFkLWZvcm1hdD0nYXV0byc+PC9pbnM+PHNjcmlwdD4oYWRzYnlnb29nbGU9d2luZG93LmFkc2J5Z29vZ2xlfHxbXSkucHVzaCh7fSk7PC9zY3JpcHQ+PHNjcmlwdCBhc3luYyBzcmM9Ii8vcGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20vcGFnZWFkL2pzL2Fkc2J5Z29vZ2xlLmpzIj48L3NjcmlwdD4NCjxpbnMgY2xhc3M9ImFkc2J5Z29vZ2xlIg0KICAgICBzdHlsZT0iZGlzcGxheTpibG9jazsgdGV4dC1hbGlnbjpjZW50ZXI7Ig0KICAgICBkYXRhLWFkLWZvcm1hdD0iZmx1aWQiDQogICAgIGRhdGEtYWQtbGF5b3V0PSJpbi1hcnRpY2xlIg0KICAgICBkYXRhLWFkLWNsaWVudD0iY2EtcHViLTY5ODA4MjkxNjM4MTIwNDciDQogICAgIGRhdGEtYWQtc2xvdD0iOTk0NjE4NjQ4NCI+PC9pbnM+DQo8c2NyaXB0Pg0KICAgICAoYWRzYnlnb29nbGUgPSB3aW5kb3cuYWRzYnlnb29nbGUgfHwgW10pLnB1c2goe30pOw0KPC9zY3JpcHQ+PCEtLSBZYW5kZXguUlRCIFItQS0yMzEzODctNyAtLT4NCjxkaXYgaWQ9InlhbmRleF9ydGJfUi1BLTIzMTM4Ny03Ij48L2Rpdj4NCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAoZnVuY3Rpb24odywgZCwgbiwgcywgdCkgew0KICAgICAgICB3W25dID0gd1tuXSB8fCBbXTsNCiAgICAgICAgd1tuXS5wdXNoKGZ1bmN0aW9uKCkgew0KICAgICAgICAgICAgWWEuQ29udGV4dC5BZHZNYW5hZ2VyLnJlbmRlcih7DQogICAgICAgICAgICAgICAgYmxvY2tJZDogIlItQS0yMzEzODctNyIsDQogICAgICAgICAgICAgICAgcmVuZGVyVG86ICJ5YW5kZXhfcnRiX1ItQS0yMzEzODctNyIsDQogICAgICAgICAgICAgICAgaG9yaXpvbnRhbEFsaWduOiBmYWxzZSwNCiAgICAgICAgICAgICAgICBhc3luYzogdHJ1ZQ0KICAgICAgICAgICAgfSk7DQogICAgICAgIH0pOw0KICAgICAgICB0ID0gZC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IilbMF07DQogICAgICAgIHMgPSBkLmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpOw0KICAgICAgICBzLnR5cGUgPSAidGV4dC9qYXZhc2NyaXB0IjsNCiAgICAgICAgcy5zcmMgPSAiLy9hbi55YW5kZXgucnUvc3lzdGVtL2NvbnRleHQuanMiOw0KICAgICAgICBzLmFzeW5jID0gdHJ1ZTsNCiAgICAgICAgdC5wYXJlbnROb2RlLmluc2VydEJlZm9yZShzLCB0KTsNCiAgICB9KSh0aGlzLCB0aGlzLmRvY3VtZW50LCAieWFuZGV4Q29udGV4dEFzeW5jQ2FsbGJhY2tzIik7DQo8L3NjcmlwdD4=PGRpdiBzdHlsZT0id2lkdGg6MTAwJTttYXgtaGVpZ2h0OjIwMHB4O3BhZGRpbmc6MC41JSI+PCEtLSBZYW5kZXguUlRCIFItQS0yMzEzODctNCAtLT4NCjxkaXYgaWQ9InlhbmRleF9ydGJfUi1BLTIzMTM4Ny00Ij48L2Rpdj4NCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAoZnVuY3Rpb24odywgZCwgbiwgcywgdCkgew0KICAgICAgICB3W25dID0gd1tuXSB8fCBbXTsNCiAgICAgICAgd1tuXS5wdXNoKGZ1bmN0aW9uKCkgew0KICAgICAgICAgICAgWWEuQ29udGV4dC5BZHZNYW5hZ2VyLnJlbmRlcih7DQogICAgICAgICAgICAgICAgYmxvY2tJZDogIlItQS0yMzEzODctNCIsDQogICAgICAgICAgICAgICAgcmVuZGVyVG86ICJ5YW5kZXhfcnRiX1ItQS0yMzEzODctNCIsDQogICAgICAgICAgICAgICAgaG9yaXpvbnRhbEFsaWduOiBmYWxzZSwNCiAgICAgICAgICAgICAgICBhc3luYzogdHJ1ZQ0KICAgICAgICAgICAgfSk7DQogICAgICAgIH0pOw0KICAgICAgICB0ID0gZC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IilbMF07DQogICAgICAgIHMgPSBkLmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpOw0KICAgICAgICBzLnR5cGUgPSAidGV4dC9qYXZhc2NyaXB0IjsNCiAgICAgICAgcy5zcmMgPSAiLy9hbi55YW5kZXgucnUvc3lzdGVtL2NvbnRleHQuanMiOw0KICAgICAgICBzLmFzeW5jID0gdHJ1ZTsNCiAgICAgICAgdC5wYXJlbnROb2RlLmluc2VydEJlZm9yZShzLCB0KTsNCiAgICB9KSh0aGlzLCB0aGlzLmRvY3VtZW50LCAieWFuZGV4Q29udGV4dEFzeW5jQ2FsbGJhY2tzIik7DQo8L3NjcmlwdD48L2Rpdj4= PHNjcmlwdCBhc3luYyBzcmM9Jy8vcGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20vcGFnZWFkL2pzL2Fkc2J5Z29vZ2xlLmpzJz48L3NjcmlwdD48aW5zIGNsYXNzPSdhZHNieWdvb2dsZScgc3R5bGU9J2Rpc3BsYXk6YmxvY2snIGRhdGEtYWQtY2xpZW50PSdjYS1wdWItNjk4MDgyOTE2MzgxMjA0NycgZGF0YS1hZC1zbG90PSc3MTU3OTE2MjE1JyBkYXRhLWFkLWZvcm1hdD0nYXV0byc+PC9pbnM+PHNjcmlwdD4oYWRzYnlnb29nbGU9d2luZG93LmFkc2J5Z29vZ2xlfHxbXSkucHVzaCh7fSk7PC9zY3JpcHQ+PHNjcmlwdCBhc3luYyBzcmM9Ii8vcGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20vcGFnZWFkL2pzL2Fkc2J5Z29vZ2xlLmpzIj48L3NjcmlwdD4NCjxpbnMgY2xhc3M9ImFkc2J5Z29vZ2xlIg0KICAgICBzdHlsZT0iZGlzcGxheTpibG9jazsgdGV4dC1hbGlnbjpjZW50ZXI7Ig0KICAgICBkYXRhLWFkLWZvcm1hdD0iZmx1aWQiDQogICAgIGRhdGEtYWQtbGF5b3V0PSJpbi1hcnRpY2xlIg0KICAgICBkYXRhLWFkLWNsaWVudD0iY2EtcHViLTY5ODA4MjkxNjM4MTIwNDciDQogICAgIGRhdGEtYWQtc2xvdD0iOTk0NjE4NjQ4NCI+PC9pbnM+DQo8c2NyaXB0Pg0KICAgICAoYWRzYnlnb29nbGUgPSB3aW5kb3cuYWRzYnlnb29nbGUgfHwgW10pLnB1c2goe30pOw0KPC9zY3JpcHQ+PCEtLSBZYW5kZXguUlRCIFItQS0yMzEzODctOCAtLT4NCjxkaXYgaWQ9InlhbmRleF9ydGJfUi1BLTIzMTM4Ny04Ij48L2Rpdj4NCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAoZnVuY3Rpb24odywgZCwgbiwgcywgdCkgew0KICAgICAgICB3W25dID0gd1tuXSB8fCBbXTsNCiAgICAgICAgd1tuXS5wdXNoKGZ1bmN0aW9uKCkgew0KICAgICAgICAgICAgWWEuQ29udGV4dC5BZHZNYW5hZ2VyLnJlbmRlcih7DQogICAgICAgICAgICAgICAgYmxvY2tJZDogIlItQS0yMzEzODctOCIsDQogICAgICAgICAgICAgICAgcmVuZGVyVG86ICJ5YW5kZXhfcnRiX1ItQS0yMzEzODctOCIsDQogICAgICAgICAgICAgICAgaG9yaXpvbnRhbEFsaWduOiBmYWxzZSwNCiAgICAgICAgICAgICAgICBhc3luYzogdHJ1ZQ0KICAgICAgICAgICAgfSk7DQogICAgICAgIH0pOw0KICAgICAgICB0ID0gZC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IilbMF07DQogICAgICAgIHMgPSBkLmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpOw0KICAgICAgICBzLnR5cGUgPSAidGV4dC9qYXZhc2NyaXB0IjsNCiAgICAgICAgcy5zcmMgPSAiLy9hbi55YW5kZXgucnUvc3lzdGVtL2NvbnRleHQuanMiOw0KICAgICAgICBzLmFzeW5jID0gdHJ1ZTsNCiAgICAgICAgdC5wYXJlbnROb2RlLmluc2VydEJlZm9yZShzLCB0KTsNCiAgICB9KSh0aGlzLCB0aGlzLmRvY3VtZW50LCAieWFuZGV4Q29udGV4dEFzeW5jQ2FsbGJhY2tzIik7DQo8L3NjcmlwdD4=PGRpdiBzdHlsZT0id2lkdGg6MTAwJTttYXgtaGVpZ2h0OjIwMHB4O3BhZGRpbmc6MC41JSI+PCEtLSBZYW5kZXguUlRCIFItQS0yMzEzODctNSAtLT4NCjxkaXYgaWQ9InlhbmRleF9ydGJfUi1BLTIzMTM4Ny01Ij48L2Rpdj4NCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAoZnVuY3Rpb24odywgZCwgbiwgcywgdCkgew0KICAgICAgICB3W25dID0gd1tuXSB8fCBbXTsNCiAgICAgICAgd1tuXS5wdXNoKGZ1bmN0aW9uKCkgew0KICAgICAgICAgICAgWWEuQ29udGV4dC5BZHZNYW5hZ2VyLnJlbmRlcih7DQogICAgICAgICAgICAgICAgYmxvY2tJZDogIlItQS0yMzEzODctNSIsDQogICAgICAgICAgICAgICAgcmVuZGVyVG86ICJ5YW5kZXhfcnRiX1ItQS0yMzEzODctNSIsDQogICAgICAgICAgICAgICAgaG9yaXpvbnRhbEFsaWduOiBmYWxzZSwNCiAgICAgICAgICAgICAgICBhc3luYzogdHJ1ZQ0KICAgICAgICAgICAgfSk7DQogICAgICAgIH0pOw0KICAgICAgICB0ID0gZC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IilbMF07DQogICAgICAgIHMgPSBkLmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpOw0KICAgICAgICBzLnR5cGUgPSAidGV4dC9qYXZhc2NyaXB0IjsNCiAgICAgICAgcy5zcmMgPSAiLy9hbi55YW5kZXgucnUvc3lzdGVtL2NvbnRleHQuanMiOw0KICAgICAgICBzLmFzeW5jID0gdHJ1ZTsNCiAgICAgICAgdC5wYXJlbnROb2RlLmluc2VydEJlZm9yZShzLCB0KTsNCiAgICB9KSh0aGlzLCB0aGlzLmRvY3VtZW50LCAieWFuZGV4Q29udGV4dEFzeW5jQ2FsbGJhY2tzIik7DQo8L3NjcmlwdD48L2Rpdj4= PHNjcmlwdCBhc3luYyBzcmM9Jy8vcGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20vcGFnZWFkL2pzL2Fkc2J5Z29vZ2xlLmpzJz48L3NjcmlwdD48aW5zIGNsYXNzPSdhZHNieWdvb2dsZScgc3R5bGU9J2Rpc3BsYXk6YmxvY2snIGRhdGEtYWQtY2xpZW50PSdjYS1wdWItNjk4MDgyOTE2MzgxMjA0NycgZGF0YS1hZC1zbG90PSc3MTU3OTE2MjE1JyBkYXRhLWFkLWZvcm1hdD0nYXV0byc+PC9pbnM+PHNjcmlwdD4oYWRzYnlnb29nbGU9d2luZG93LmFkc2J5Z29vZ2xlfHxbXSkucHVzaCh7fSk7PC9zY3JpcHQ+PHNjcmlwdCBhc3luYyBzcmM9Ii8vcGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20vcGFnZWFkL2pzL2Fkc2J5Z29vZ2xlLmpzIj48L3NjcmlwdD4NCjxpbnMgY2xhc3M9ImFkc2J5Z29vZ2xlIg0KICAgICBzdHlsZT0iZGlzcGxheTpibG9jazsgdGV4dC1hbGlnbjpjZW50ZXI7Ig0KICAgICBkYXRhLWFkLWZvcm1hdD0iZmx1aWQiDQogICAgIGRhdGEtYWQtbGF5b3V0PSJpbi1hcnRpY2xlIg0KICAgICBkYXRhLWFkLWNsaWVudD0iY2EtcHViLTY5ODA4MjkxNjM4MTIwNDciDQogICAgIGRhdGEtYWQtc2xvdD0iOTk0NjE4NjQ4NCI+PC9pbnM+DQo8c2NyaXB0Pg0KICAgICAoYWRzYnlnb29nbGUgPSB3aW5kb3cuYWRzYnlnb29nbGUgfHwgW10pLnB1c2goe30pOw0KPC9zY3JpcHQ+PCEtLSBZYW5kZXguUlRCIFItQS0yMzEzODctOSAtLT4NCjxkaXYgaWQ9InlhbmRleF9ydGJfUi1BLTIzMTM4Ny05Ij48L2Rpdj4NCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAoZnVuY3Rpb24odywgZCwgbiwgcywgdCkgew0KICAgICAgICB3W25dID0gd1tuXSB8fCBbXTsNCiAgICAgICAgd1tuXS5wdXNoKGZ1bmN0aW9uKCkgew0KICAgICAgICAgICAgWWEuQ29udGV4dC5BZHZNYW5hZ2VyLnJlbmRlcih7DQogICAgICAgICAgICAgICAgYmxvY2tJZDogIlItQS0yMzEzODctOSIsDQogICAgICAgICAgICAgICAgcmVuZGVyVG86ICJ5YW5kZXhfcnRiX1ItQS0yMzEzODctOSIsDQogICAgICAgICAgICAgICAgaG9yaXpvbnRhbEFsaWduOiBmYWxzZSwNCiAgICAgICAgICAgICAgICBhc3luYzogdHJ1ZQ0KICAgICAgICAgICAgfSk7DQogICAgICAgIH0pOw0KICAgICAgICB0ID0gZC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IilbMF07DQogICAgICAgIHMgPSBkLmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpOw0KICAgICAgICBzLnR5cGUgPSAidGV4dC9qYXZhc2NyaXB0IjsNCiAgICAgICAgcy5zcmMgPSAiLy9hbi55YW5kZXgucnUvc3lzdGVtL2NvbnRleHQuanMiOw0KICAgICAgICBzLmFzeW5jID0gdHJ1ZTsNCiAgICAgICAgdC5wYXJlbnROb2RlLmluc2VydEJlZm9yZShzLCB0KTsNCiAgICB9KSh0aGlzLCB0aGlzLmRvY3VtZW50LCAieWFuZGV4Q29udGV4dEFzeW5jQ2FsbGJhY2tzIik7DQo8L3NjcmlwdD4=PGRpdiBzdHlsZT0id2lkdGg6MTAwJTttYXgtaGVpZ2h0OjIwMHB4O3BhZGRpbmc6MC41JSI+PCEtLSBZYW5kZXguUlRCIFItQS0yMzEzODctNiAtLT4NCjxkaXYgaWQ9InlhbmRleF9ydGJfUi1BLTIzMTM4Ny02Ij48L2Rpdj4NCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAoZnVuY3Rpb24odywgZCwgbiwgcywgdCkgew0KICAgICAgICB3W25dID0gd1tuXSB8fCBbXTsNCiAgICAgICAgd1tuXS5wdXNoKGZ1bmN0aW9uKCkgew0KICAgICAgICAgICAgWWEuQ29udGV4dC5BZHZNYW5hZ2VyLnJlbmRlcih7DQogICAgICAgICAgICAgICAgYmxvY2tJZDogIlItQS0yMzEzODctNiIsDQogICAgICAgICAgICAgICAgcmVuZGVyVG86ICJ5YW5kZXhfcnRiX1ItQS0yMzEzODctNiIsDQogICAgICAgICAgICAgICAgaG9yaXpvbnRhbEFsaWduOiBmYWxzZSwNCiAgICAgICAgICAgICAgICBhc3luYzogdHJ1ZQ0KICAgICAgICAgICAgfSk7DQogICAgICAgIH0pOw0KICAgICAgICB0ID0gZC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IilbMF07DQogICAgICAgIHMgPSBkLmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpOw0KICAgICAgICBzLnR5cGUgPSAidGV4dC9qYXZhc2NyaXB0IjsNCiAgICAgICAgcy5zcmMgPSAiLy9hbi55YW5kZXgucnUvc3lzdGVtL2NvbnRleHQuanMiOw0KICAgICAgICBzLmFzeW5jID0gdHJ1ZTsNCiAgICAgICAgdC5wYXJlbnROb2RlLmluc2VydEJlZm9yZShzLCB0KTsNCiAgICB9KSh0aGlzLCB0aGlzLmRvY3VtZW50LCAieWFuZGV4Q29udGV4dEFzeW5jQ2FsbGJhY2tzIik7DQo8L3NjcmlwdD48L2Rpdj4= PHNjcmlwdCBhc3luYyBzcmM9Jy8vcGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20vcGFnZWFkL2pzL2Fkc2J5Z29vZ2xlLmpzJz48L3NjcmlwdD48aW5zIGNsYXNzPSdhZHNieWdvb2dsZScgc3R5bGU9J2Rpc3BsYXk6YmxvY2snIGRhdGEtYWQtY2xpZW50PSdjYS1wdWItNjk4MDgyOTE2MzgxMjA0NycgZGF0YS1hZC1zbG90PSc3MTU3OTE2MjE1JyBkYXRhLWFkLWZvcm1hdD0nYXV0byc+PC9pbnM+PHNjcmlwdD4oYWRzYnlnb29nbGU9d2luZG93LmFkc2J5Z29vZ2xlfHxbXSkucHVzaCh7fSk7PC9zY3JpcHQ+PHNjcmlwdCBhc3luYyBzcmM9Ii8vcGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20vcGFnZWFkL2pzL2Fkc2J5Z29vZ2xlLmpzIj48L3NjcmlwdD4NCjxpbnMgY2xhc3M9ImFkc2J5Z29vZ2xlIg0KICAgICBzdHlsZT0iZGlzcGxheTpibG9jazsgdGV4dC1hbGlnbjpjZW50ZXI7Ig0KICAgICBkYXRhLWFkLWZvcm1hdD0iZmx1aWQiDQogICAgIGRhdGEtYWQtbGF5b3V0PSJpbi1hcnRpY2xlIg0KICAgICBkYXRhLWFkLWNsaWVudD0iY2EtcHViLTY5ODA4MjkxNjM4MTIwNDciDQogICAgIGRhdGEtYWQtc2xvdD0iOTk0NjE4NjQ4NCI+PC9pbnM+DQo8c2NyaXB0Pg0KICAgICAoYWRzYnlnb29nbGUgPSB3aW5kb3cuYWRzYnlnb29nbGUgfHwgW10pLnB1c2goe30pOw0KPC9zY3JpcHQ+

Лучшие приложения для похудения на Android в 2017 году. Калоризатор, упражнения, счетчики шагов

Лучшие приложения для похудения на Android в 2017 году андроид

Нет смысла задаваться вопросом, чему сегодня уделяет максимальное количество своего времени современный человек.

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

С приложениями также, как и с собственно с гаджетами, – стоит найти свой вариант, как многие проблемы уйдут сами собой.

Кстати, похудение – не исключение.

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

Итак, представляем ТОП лучших приложений для похудения на Android к 2017 году.

«Похудеть без диет» — приложение мотиватор

Особенность этого приложения не только в том, что оно ориентировано главным образом на мотивацию, а не жесткую дисциплину и самоконтроль, но и то, что оно отечественного производства.

А именно:

  • Приложение поможет соблюсти баланс между потраченными и потребленными калориями. Их соотношение и отвечает за то сбрасываете вы вес или набираете. Впрочем, ничего необычного в этом нет. Разве что у вас нет надобности скрупулёзно вести подсчет каждой килокалории.
  • Индивидуальный помощник в виде позитивной рыжеволосой девчушки поможет разобраться во всех нюансах.
  • Программа умеет вести подсчет количества съеденной пищи, выпитой воды, контролирует выполнение той или иной (выбранной вами) программы питания. В результате, вы даже не заметите, что скинете пару килограммов за неделю.
  • Автоматический расчет КБЖУ. Это возможно благодаря тому, что в системе имеется более полусотни тысяч рецептов.

Лучшие приложения для похудения на Android в 2017 году питание

Другая сторона медали – затрата энергии тоже весьма понятна.

  • Нужно лишь выбрать вид занятия в разделе «Тренировка» и время.
  • Приложение само подсчитает в плюсе вы или минусе.

В чем же мотивация?

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

Плюсы – полностью оправдывает свое название, легкое в использовании. Позволяет незаметно для себя скинуть три килограмма в течение месяца.

Минусы – не считывает штрих-коды, не адаптируется с фитнес браслетами.

Цена – пробная версия – бесплатно. Полная – не более 2 долларов.

Приложение шагомер NoomWalk

Легкий способ контролировать собственную физическую активность – шагомеры.

  • Использовать их удобно, поскольку, как правило, телефон сопровождает нас всюду и можно провести знак равенства между перемещениями в пространстве устройства и его хозяина.
  • И это даже без использования дополнительного устройства в виде фитнес-браслета.

Приложение Noom Walk – новое слово для Android в области похудения и здорового образа жизни.

  • Работает на системе GPS.
  • Не тратит заряд батареи, как это случается с другими приложениями аналогичного вида.
  • Существует возможность общения с единомышленниками.
  • Можно наблюдать за чужими достижениями, мотивируя тем самым, самого себя.

Лучшие приложения для похудения на Android в 2017 году мотивация

Работает в круглосуточном режиме.

  • Для работы приложения достаточно лишь двух процентов от заряда батареи.
  • Если провести аналогию, то за сутки этот шагомер «съест» столько же зарядки как 20 минут работающего дисплея.
  • Плюсы – экономия батареи, возможность общения.
  • Минусы – не обнаружено.
Цена – бесплатно.

S Health – приложение для фитнеса

Умная программа не ограничивается банальным подсчетом калорий или шагов, которые вы прошли в течение дня.

Она умеет:

  • следить за состоянием своего хозяина, учитывает температуру и влажность (эти показатели влияют на количество затраченной энергии).
  • Мониторит сердечный пульс, уровень стресса, пульс, сон, вес, количество съеденной пищи.
  • Приложение работает в тандеме с другими устройствами вроде фитнес браслетов или часов.
Приложение не имело бы пометку «фитнес», если бы не особый раздел, в котором отмечаются индивидуальные показатели и спортивные «рекорды». При этом учитывается не только количество повторов и подходов, но и число сожженных калорий. Очень мотивирует.

Лучшие приложения для похудения на Android в 2017 году для смартфона

Можно самому установить конкретную задачу и схему поощрений. При этом, можно воспользоваться услугами он-лайн тренера. Такой виртуальный помощник составит индивидуальную программу тренировок, после того как получит максимальное количество информации о человеке.

  • Плюсы – поддержка большинства интерфейсов.
  • Минусы – «ест» батарею, работает только на андроиде.
Цена – бесплатно.

Noom Coach для правильного питания

Тоже не имеет ничего общего с жесткими диетами и другими суровыми методами для избавления от лишнего веса.

Приложение работает по принципу правильного питания.

  • Сначала оно дает оценку вашему состоянию здоровья и подсчитывает количество лишних килограммов, конечно же, после ввода некоторых данных. После этого вам будет предложена индивидуальная программа занятий.
  • От вас потребуется вводить в курс дела приложение о количестве съеденной пищи, физических нагрузках. Кстати, подобный ручной ввод таких данных, многие относят к плюсам, ведь это дисциплинирует и заставляет задуматься о собственном образе жизни.
Однако в Noom Coach имеется и шагомер, количество пройденных шагов и сожжённых калорий, будет автоматически суммироваться к показателям физической активности. Платная или полная версия позволяет общаться с единомышленниками и следить за их результатами в том числе.
  • Плюсы – простой и понятный дизайн, общение, мотивация.
  • Минусы – приложение не имеет русского языка.

Noom Coach для телефона

Цена – около $10 в месяц.
PHNjcmlwdCBhc3luYyBzcmM9Jy8vcGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20vcGFnZWFkL2pzL2Fkc2J5Z29vZ2xlLmpzJz48L3NjcmlwdD48aW5zIGNsYXNzPSdhZHNieWdvb2dsZScgc3R5bGU9J2Rpc3BsYXk6YmxvY2snIGRhdGEtYWQtY2xpZW50PSdjYS1wdWItNjk4MDgyOTE2MzgxMjA0NycgZGF0YS1hZC1zbG90PSc3MTU3OTE2MjE1JyBkYXRhLWFkLWZvcm1hdD0nYXV0byc+PC9pbnM+PHNjcmlwdD4oYWRzYnlnb29nbGU9d2luZG93LmFkc2J5Z29vZ2xlfHxbXSkucHVzaCh7fSk7PC9zY3JpcHQ+PHNjcmlwdCBhc3luYyBzcmM9Ii8vcGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20vcGFnZWFkL2pzL2Fkc2J5Z29vZ2xlLmpzIj48L3NjcmlwdD4NCjxpbnMgY2xhc3M9ImFkc2J5Z29vZ2xlIg0KICAgICBzdHlsZT0iZGlzcGxheTpibG9jazsgdGV4dC1hbGlnbjpjZW50ZXI7Ig0KICAgICBkYXRhLWFkLWZvcm1hdD0iZmx1aWQiDQogICAgIGRhdGEtYWQtbGF5b3V0PSJpbi1hcnRpY2xlIg0KICAgICBkYXRhLWFkLWNsaWVudD0iY2EtcHViLTY5ODA4MjkxNjM4MTIwNDciDQogICAgIGRhdGEtYWQtc2xvdD0iOTk0NjE4NjQ4NCI+PC9pbnM+DQo8c2NyaXB0Pg0KICAgICAoYWRzYnlnb29nbGUgPSB3aW5kb3cuYWRzYnlnb29nbGUgfHwgW10pLnB1c2goe30pOw0KPC9zY3JpcHQ+
PHNjcmlwdCBhc3luYyBzcmM9Jy8vcGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20vcGFnZWFkL2pzL2Fkc2J5Z29vZ2xlLmpzJz48L3NjcmlwdD48aW5zIGNsYXNzPSdhZHNieWdvb2dsZScgc3R5bGU9J2Rpc3BsYXk6YmxvY2snIGRhdGEtYWQtY2xpZW50PSdjYS1wdWItNjk4MDgyOTE2MzgxMjA0NycgZGF0YS1hZC1zbG90PSc3MTU3OTE2MjE1JyBkYXRhLWFkLWZvcm1hdD0nYXV0byc+PC9pbnM+PHNjcmlwdD4oYWRzYnlnb29nbGU9d2luZG93LmFkc2J5Z29vZ2xlfHxbXSkucHVzaCh7fSk7PC9zY3JpcHQ+PHNjcmlwdCBhc3luYyBzcmM9Jy8vcGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20vcGFnZWFkL2pzL2Fkc2J5Z29vZ2xlLmpzJz48L3NjcmlwdD48aW5zIGNsYXNzPSdhZHNieWdvb2dsZScgc3R5bGU9J2Rpc3BsYXk6YmxvY2snIGRhdGEtYWQtY2xpZW50PSdjYS1wdWItNjk4MDgyOTE2MzgxMjA0NycgZGF0YS1hZC1zbG90PSc3MTU3OTE2MjE1JyBkYXRhLWFkLWZvcm1hdD0nYXV0byc+PC9pbnM+PHNjcmlwdD4oYWRzYnlnb29nbGU9d2luZG93LmFkc2J5Z29vZ2xlfHxbXSkucHVzaCh7fSk7PC9zY3JpcHQ+PHNjcmlwdCBhc3luYyBzcmM9Ii8vcGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20vcGFnZWFkL2pzL2Fkc2J5Z29vZ2xlLmpzIj48L3NjcmlwdD4NCjxpbnMgY2xhc3M9ImFkc2J5Z29vZ2xlIg0KICAgICBzdHlsZT0iZGlzcGxheTpibG9jazsgdGV4dC1hbGlnbjpjZW50ZXI7Ig0KICAgICBkYXRhLWFkLWZvcm1hdD0iZmx1aWQiDQogICAgIGRhdGEtYWQtbGF5b3V0PSJpbi1hcnRpY2xlIg0KICAgICBkYXRhLWFkLWNsaWVudD0iY2EtcHViLTY5ODA4MjkxNjM4MTIwNDciDQogICAgIGRhdGEtYWQtc2xvdD0iOTk0NjE4NjQ4NCI+PC9pbnM+DQo8c2NyaXB0Pg0KICAgICAoYWRzYnlnb29nbGUgPSB3aW5kb3cuYWRzYnlnb29nbGUgfHwgW10pLnB1c2goe30pOw0KPC9zY3JpcHQ+
PHNjcmlwdCBhc3luYyBzcmM9Jy8vcGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20vcGFnZWFkL2pzL2Fkc2J5Z29vZ2xlLmpzJz48L3NjcmlwdD48aW5zIGNsYXNzPSdhZHNieWdvb2dsZScgc3R5bGU9J2Rpc3BsYXk6YmxvY2snIGRhdGEtYWQtY2xpZW50PSdjYS1wdWItNjk4MDgyOTE2MzgxMjA0NycgZGF0YS1hZC1zbG90PSc3MTU3OTE2MjE1JyBkYXRhLWFkLWZvcm1hdD0nYXV0byc+PC9pbnM+PHNjcmlwdD4oYWRzYnlnb29nbGU9d2luZG93LmFkc2J5Z29vZ2xlfHxbXSkucHVzaCh7fSk7PC9zY3JpcHQ+PHNjcmlwdCBhc3luYyBzcmM9Ii8vcGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20vcGFnZWFkL2pzL2Fkc2J5Z29vZ2xlLmpzIj48L3NjcmlwdD4NCjxpbnMgY2xhc3M9ImFkc2J5Z29vZ2xlIg0KICAgICBzdHlsZT0iZGlzcGxheTpibG9jazsgdGV4dC1hbGlnbjpjZW50ZXI7Ig0KICAgICBkYXRhLWFkLWZvcm1hdD0iZmx1aWQiDQogICAgIGRhdGEtYWQtbGF5b3V0PSJpbi1hcnRpY2xlIg0KICAgICBkYXRhLWFkLWNsaWVudD0iY2EtcHViLTY5ODA4MjkxNjM4MTIwNDciDQogICAgIGRhdGEtYWQtc2xvdD0iOTk0NjE4NjQ4NCI+PC9pbnM+DQo8c2NyaXB0Pg0KICAgICAoYWRzYnlnb29nbGUgPSB3aW5kb3cuYWRzYnlnb29nbGUgfHwgW10pLnB1c2goe30pOw0KPC9zY3JpcHQ+