Skip to main content

Body Fat Calculator

image.png

Экспорт блока

eyJ0eXBlIjoicmF3LWh0bWwiLCJwcmVzZXQiOiJyYXctaHRtbCIsInBhcmFtcyI6IntcImJsb2NrQ29kZVwiOlwiYzRhNjRcIixcIm5hbWVcIjpcIlwiLFwicmF3VmFsdWVcIjpcIjxzdHlsZT5cXG4gICAgXFwvKiBib2R5IHtcXG4gICAgICAgICAgICBmb250LWZhbWlseTogQXJpYWwsIHNhbnMtc2VyaWY7XFxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjBmNTtcXG4gICAgICAgICAgICBtYXJnaW46IDA7XFxuICAgICAgICAgICAgcGFkZGluZzogMDtcXG4gICAgICAgIH0gKlxcL1xcblxcbiAgICAubW5mc3QtYmZjIHtcXG4gICAgICAgIG1heC13aWR0aDogNTAwcHg7XFxuICAgICAgICBtYXJnaW46IDUwcHggYXV0bztcXG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcXG4gICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMSk7XFxuICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xcbiAgICB9XFxuXFxuICAgIC5tbmZzdC1iZmMgaDEge1xcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgY29sb3I6ICMzMzM7XFxuICAgIH1cXG5cXG4gICAgLm1uZnN0LWJmYyBsYWJlbCB7XFxuICAgICAgICBkaXNwbGF5OiBibG9jaztcXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDhweDtcXG4gICAgICAgIGNvbG9yOiAjNTU1O1xcbiAgICB9XFxuXFxuICAgIC5tbmZzdC1iZmMgaW5wdXQsXFxuICAgIC5tbmZzdC1iZmMgc2VsZWN0IHtcXG4gICAgICAgIHdpZHRoOiAxMDAlO1xcbiAgICAgICAgcGFkZGluZzogMTBweDtcXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XFxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xcbiAgICB9XFxuXFxuICAgIC5tbmZzdC1iZmMgYnV0dG9uIHtcXG4gICAgICAgIHdpZHRoOiAxMDAlO1xcbiAgICAgICAgcGFkZGluZzogMTJweDtcXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyOGE3NDU7XFxuICAgICAgICBjb2xvcjogd2hpdGU7XFxuICAgICAgICBib3JkZXI6IG5vbmU7XFxuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XFxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XFxuICAgIH1cXG5cXG4gICAgLm1uZnN0LWJmYyBidXR0b246aG92ZXIge1xcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzIxODgzODtcXG4gICAgfVxcblxcbiAgICAubW5mc3QtYmZjIC5yZXN1bHRzIHtcXG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XFxuICAgIH1cXG5cXG4gICAgLm1uZnN0LWJmYyAucmVzdWx0LWl0ZW0ge1xcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcXG4gICAgfVxcblxcbiAgICAubW5mc3QtYmZjIC5yZXN1bHQtbGFiZWwge1xcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XFxuICAgICAgICBjb2xvcjogIzMzMztcXG4gICAgfVxcbjxcXC9zdHlsZT5cXG5cXG48ZGl2IGNsYXNzPVxcXCJtbmZzdC1iZmNcXFwiPlxcbiAgICA8aDE+Qm9keSBGYXQgQ2FsY3VsYXRvcjxcXC9oMT5cXG5cXG4gICAgPGxhYmVsIGZvcj1cXFwiZ2VuZGVyXFxcIj5TZXg6PFxcL2xhYmVsPlxcbiAgICA8c2VsZWN0IGlkPVxcXCJnZW5kZXJcXFwiIG9uY2hhbmdlPVxcXCJ0b2dnbGVIaXBGaWVsZCgpXFxcIj5cXG4gICAgICAgIDxvcHRpb24gdmFsdWU9XFxcIm1hbGVcXFwiPmJcXHUwMTAzcmJhdDxcXC9vcHRpb24+XFxuICAgICAgICA8b3B0aW9uIHZhbHVlPVxcXCJmZW1hbGVcXFwiPmZlbWVpZTxcXC9vcHRpb24+XFxuICAgIDxcXC9zZWxlY3Q+XFxuXFxuICAgIDxsYWJlbCBmb3I9XFxcImFnZVxcXCI+VlxcdTAwZTJyc3RhOjxcXC9sYWJlbD5cXG4gICAgPGlucHV0IHR5cGU9XFxcIm51bWJlclxcXCIgaWQ9XFxcImFnZVxcXCIgcGxhY2Vob2xkZXI9XFxcImludHJvZHUgdlxcdTAwZTJyc3RhXFxcIiByZXF1aXJlZD5cXG5cXG4gICAgPGxhYmVsIGZvcj1cXFwid2VpZ2h0XFxcIj5HcmV1dGF0ZSAoa2cpOjxcXC9sYWJlbD5cXG4gICAgPGlucHV0IHR5cGU9XFxcIm51bWJlclxcXCIgaWQ9XFxcIndlaWdodFxcXCIgcGxhY2Vob2xkZXI9XFxcImludHJvZHUgZ3JldXRhdGVhXFxcIiByZXF1aXJlZD5cXG5cXG4gICAgPGxhYmVsIGZvcj1cXFwiaGVpZ2h0XFxcIj5cXHUwMGNlblxcdTAxMDNsXFx1MDIxYmltZWEgKGNtKTo8XFwvbGFiZWw+XFxuICAgIDxpbnB1dCB0eXBlPVxcXCJudW1iZXJcXFwiIGlkPVxcXCJoZWlnaHRcXFwiIHBsYWNlaG9sZGVyPVxcXCJpbnRyb2R1IFxcdTAwZWVuXFx1MDEwM2xcXHUwMjFiaW1lYVxcXCIgcmVxdWlyZWQ+XFxuXFxuICAgIDxsYWJlbCBmb3I9XFxcIm5lY2tcXFwiPkdcXHUwMGUydCAoY20pOjxcXC9sYWJlbD5cXG4gICAgPGlucHV0IHR5cGU9XFxcIm51bWJlclxcXCIgaWQ9XFxcIm5lY2tcXFwiIHBsYWNlaG9sZGVyPVxcXCJpbnRyb2R1IGNpcmN1bWZlcmluXFx1MDIxYmEgZ1xcdTAwZTJ0dWx1aVxcXCIgcmVxdWlyZWQ+XFxuXFxuICAgIDxsYWJlbCBmb3I9XFxcIndhaXN0XFxcIj5UYWxpZSAoY20pOjxcXC9sYWJlbD5cXG4gICAgPGlucHV0IHR5cGU9XFxcIm51bWJlclxcXCIgaWQ9XFxcIndhaXN0XFxcIiBwbGFjZWhvbGRlcj1cXFwiaW50cm9kdSBjaXJjdW1mZXJpblxcdTAyMWJhIHRhbGllaVxcXCIgcmVxdWlyZWQ+XFxuXFxuICAgIDxkaXYgaWQ9XFxcImhpcEZpZWxkXFxcIiBzdHlsZT1cXFwiZGlzcGxheTpub25lO1xcXCI+XFxuICAgICAgICA8bGFiZWwgZm9yPVxcXCJoaXBcXFwiPlxcdTAyMThvbGR1cmkgKGNtKTo8XFwvbGFiZWw+XFxuICAgICAgICA8aW5wdXQgdHlwZT1cXFwibnVtYmVyXFxcIiBpZD1cXFwiaGlwXFxcIiBwbGFjZWhvbGRlcj1cXFwiaW50cm9kdSBjaXJjdW1mZXJpblxcdTAyMWJhIFxcdTAyMTlvbGR1cmlsb3JcXFwiPlxcbiAgICA8XFwvZGl2PlxcblxcbiAgICA8YnV0dG9uIG9uY2xpY2s9XFxcImNhbGN1bGF0ZUJvZHlGYXQoKVxcXCI+Q2FsY3VsZWF6XFx1MDEwMzxcXC9idXR0b24+XFxuXFxuICAgIDxkaXYgY2xhc3M9XFxcInJlc3VsdHNcXFwiIGlkPVxcXCJyZXN1bHRzXFxcIj48XFwvZGl2PlxcbjxcXC9kaXY+XFxuXFxuPHNjcmlwdD5cXG4gICAgZnVuY3Rpb24gdG9nZ2xlSGlwRmllbGQoKSB7XFxuICAgICAgICBjb25zdCBnZW5kZXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZ2VuZGVyJykudmFsdWU7XFxuICAgICAgICBjb25zdCBoaXBGaWVsZCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdoaXBGaWVsZCcpO1xcbiAgICAgICAgaWYgKGdlbmRlciA9PT0gJ2ZlbWFsZScpIHtcXG4gICAgICAgICAgICBoaXBGaWVsZC5zdHlsZS5kaXNwbGF5ID0gJ2Jsb2NrJztcXG4gICAgICAgIH0gZWxzZSB7XFxuICAgICAgICAgICAgaGlwRmllbGQuc3R5bGUuZGlzcGxheSA9ICdub25lJztcXG4gICAgICAgIH1cXG4gICAgfVxcblxcbiAgICBmdW5jdGlvbiBjYWxjdWxhdGVCb2R5RmF0KCkge1xcbiAgICAgICAgY29uc3QgZ2VuZGVyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2dlbmRlcicpLnZhbHVlO1xcbiAgICAgICAgY29uc3QgYWdlID0gcGFyc2VGbG9hdChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnYWdlJykudmFsdWUpO1xcbiAgICAgICAgY29uc3Qgd2VpZ2h0ID0gcGFyc2VGbG9hdChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnd2VpZ2h0JykudmFsdWUpO1xcbiAgICAgICAgY29uc3QgaGVpZ2h0ID0gcGFyc2VGbG9hdChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnaGVpZ2h0JykudmFsdWUpO1xcbiAgICAgICAgY29uc3QgbmVjayA9IHBhcnNlRmxvYXQoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ25lY2snKS52YWx1ZSk7XFxuICAgICAgICBjb25zdCB3YWlzdCA9IHBhcnNlRmxvYXQoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3dhaXN0JykudmFsdWUpO1xcbiAgICAgICAgbGV0IGhpcCA9IG51bGw7XFxuXFxuICAgICAgICBpZiAoZ2VuZGVyID09PSAnZmVtYWxlJykge1xcbiAgICAgICAgICAgIGhpcCA9IHBhcnNlRmxvYXQoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2hpcCcpLnZhbHVlKTtcXG4gICAgICAgIH1cXG5cXG4gICAgICAgIFxcL1xcLyBVLlMuIE5hdnkgTWV0aG9kIENhbGN1bGF0aW9uXFxuICAgICAgICBsZXQgYm9keUZhdFBlcmNlbnRhZ2U7XFxuICAgICAgICBpZiAoZ2VuZGVyID09PSAnbWFsZScpIHtcXG4gICAgICAgICAgICBib2R5RmF0UGVyY2VudGFnZSA9IDQ5NSBcXC8gKDEuMDMyNCAtIDAuMTkwNzcgKiBNYXRoLmxvZzEwKHdhaXN0IC0gbmVjaykgKyAwLjE1NDU2ICogTWF0aC5sb2cxMChoZWlnaHQpKSAtXFxuICAgICAgICAgICAgICAgIDQ1MDtcXG4gICAgICAgIH0gZWxzZSB7XFxuICAgICAgICAgICAgYm9keUZhdFBlcmNlbnRhZ2UgPSA0OTUgXFwvICgxLjI5NTc5IC0gMC4zNTAwNCAqIE1hdGgubG9nMTAod2Fpc3QgKyBoaXAgLSBuZWNrKSArIDAuMjIxMDAgKiBNYXRoLmxvZzEwKFxcbiAgICAgICAgICAgICAgICBoZWlnaHQpKSAtIDQ1MDtcXG4gICAgICAgIH1cXG5cXG4gICAgICAgIGNvbnN0IGJvZHlGYXRNYXNzID0gKGJvZHlGYXRQZXJjZW50YWdlIFxcLyAxMDApICogd2VpZ2h0O1xcbiAgICAgICAgY29uc3QgbGVhbkJvZHlNYXNzID0gd2VpZ2h0IC0gYm9keUZhdE1hc3M7XFxuXFxuICAgICAgICBcXC9cXC8gSmFja3NvbiAmIFBvbGxvY2sgSWRlYWwgQm9keSBGYXQgQ2FsY3VsYXRpb25cXG4gICAgICAgIGxldCBpZGVhbEJvZHlGYXQgPSBpZGVhbEJvZHlGYXRDYWxjKGFnZSwgZ2VuZGVyKTtcXG5cXG4gICAgICAgIGNvbnN0IGJvZHlGYXRUb0xvc2UgPSBNYXRoLm1heCgwLCBib2R5RmF0TWFzcyAtIChpZGVhbEJvZHlGYXQgXFwvIDEwMCkgKiB3ZWlnaHQpO1xcblxcbiAgICAgICAgXFwvXFwvIEJNSSBNZXRob2QgZm9yIEJvZHkgRmF0IChhcHByb3hpbWF0aW9uKVxcbiAgICAgICAgY29uc3QgYm1pID0gd2VpZ2h0IFxcLyBNYXRoLnBvdyhoZWlnaHQgXFwvIDEwMCwgMik7XFxuICAgICAgICBjb25zdCBib2R5RmF0Qm1pTWV0aG9kID0gKDEuMiAqIGJtaSkgKyAoMC4yMyAqIGFnZSkgLSAoMTAuOCAqIChnZW5kZXIgPT09ICdtYWxlJyA/IDEgOiAwKSkgLSA1LjQ7XFxuXFxuICAgICAgICBcXC9cXC8gQm9keSBGYXQgQ2F0ZWdvcnlcXG4gICAgICAgIGxldCBib2R5RmF0Q2F0ZWdvcnk7XFxuICAgICAgICBpZiAoZ2VuZGVyID09PSAnbWFsZScpIHtcXG4gICAgICAgICAgICBpZiAoYm9keUZhdFBlcmNlbnRhZ2UgPCA2KSB7XFxuICAgICAgICAgICAgICAgIGJvZHlGYXRDYXRlZ29yeSA9ICdFc3NlbnRpYWwgZmF0JztcXG4gICAgICAgICAgICB9IGVsc2UgaWYgKGJvZHlGYXRQZXJjZW50YWdlIDwgMTQpIHtcXG4gICAgICAgICAgICAgICAgYm9keUZhdENhdGVnb3J5ID0gJ0F0aGxldGVzJztcXG4gICAgICAgICAgICB9IGVsc2UgaWYgKGJvZHlGYXRQZXJjZW50YWdlIDwgMTgpIHtcXG4gICAgICAgICAgICAgICAgYm9keUZhdENhdGVnb3J5ID0gJ0ZpdG5lc3MnO1xcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoYm9keUZhdFBlcmNlbnRhZ2UgPCAyNSkge1xcbiAgICAgICAgICAgICAgICBib2R5RmF0Q2F0ZWdvcnkgPSAnQXZlcmFnZSc7XFxuICAgICAgICAgICAgfSBlbHNlIHtcXG4gICAgICAgICAgICAgICAgYm9keUZhdENhdGVnb3J5ID0gJ09iZXNlJztcXG4gICAgICAgICAgICB9XFxuICAgICAgICB9IGVsc2Uge1xcbiAgICAgICAgICAgIGlmIChib2R5RmF0UGVyY2VudGFnZSA8IDE0KSB7XFxuICAgICAgICAgICAgICAgIGJvZHlGYXRDYXRlZ29yeSA9ICdFc3NlbnRpYWwgZmF0JztcXG4gICAgICAgICAgICB9IGVsc2UgaWYgKGJvZHlGYXRQZXJjZW50YWdlIDwgMjEpIHtcXG4gICAgICAgICAgICAgICAgYm9keUZhdENhdGVnb3J5ID0gJ0F0aGxldGVzJztcXG4gICAgICAgICAgICB9IGVsc2UgaWYgKGJvZHlGYXRQZXJjZW50YWdlIDwgMjUpIHtcXG4gICAgICAgICAgICAgICAgYm9keUZhdENhdGVnb3J5ID0gJ0ZpdG5lc3MnO1xcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoYm9keUZhdFBlcmNlbnRhZ2UgPCAzMikge1xcbiAgICAgICAgICAgICAgICBib2R5RmF0Q2F0ZWdvcnkgPSAnQXZlcmFnZSc7XFxuICAgICAgICAgICAgfSBlbHNlIHtcXG4gICAgICAgICAgICAgICAgYm9keUZhdENhdGVnb3J5ID0gJ09iZXNlJztcXG4gICAgICAgICAgICB9XFxuICAgICAgICB9XFxuXFxuICAgICAgICBcXC9cXC8gRGlzcGxheSByZXN1bHRzXFxuICAgICAgICBjb25zdCByZXN1bHRzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Jlc3VsdHMnKTtcXG4gICAgICAgIHJlc3VsdHMuaW5uZXJIVE1MID0gYFxcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XFxcInJlc3VsdC1pdGVtXFxcIj48c3BhbiBjbGFzcz1cXFwicmVzdWx0LWxhYmVsXFxcIj5Cb2R5IEZhdCAoJSk6PFxcL3NwYW4+ICR7Ym9keUZhdFBlcmNlbnRhZ2UudG9GaXhlZCgyKX0lPFxcL2Rpdj5cXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVxcXCJyZXN1bHQtaXRlbVxcXCI+PHNwYW4gY2xhc3M9XFxcInJlc3VsdC1sYWJlbFxcXCI+Qm9keSBGYXQgQ2F0ZWdvcnk6PFxcL3NwYW4+ICR7Ym9keUZhdENhdGVnb3J5fTxcXC9kaXY+XFxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cXFwicmVzdWx0LWl0ZW1cXFwiPjxzcGFuIGNsYXNzPVxcXCJyZXN1bHQtbGFiZWxcXFwiPkJvZHkgRmF0IE1hc3MgKGtnKTo8XFwvc3Bhbj4gJHtib2R5RmF0TWFzcy50b0ZpeGVkKDIpfSBrZzxcXC9kaXY+XFxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cXFwicmVzdWx0LWl0ZW1cXFwiPjxzcGFuIGNsYXNzPVxcXCJyZXN1bHQtbGFiZWxcXFwiPkxlYW4gQm9keSBNYXNzIChrZyk6PFxcL3NwYW4+ICR7bGVhbkJvZHlNYXNzLnRvRml4ZWQoMil9IGtnPFxcL2Rpdj5cXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVxcXCJyZXN1bHQtaXRlbVxcXCI+PHNwYW4gY2xhc3M9XFxcInJlc3VsdC1sYWJlbFxcXCI+SWRlYWwgQm9keSBGYXQgZm9yIEdpdmVuIEFnZSAoJSk6PFxcL3NwYW4+ICR7aWRlYWxCb2R5RmF0LnRvRml4ZWQoMil9JTxcXC9kaXY+XFxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cXFwicmVzdWx0LWl0ZW1cXFwiPjxzcGFuIGNsYXNzPVxcXCJyZXN1bHQtbGFiZWxcXFwiPkJvZHkgRmF0IHRvIExvc2UgdG8gUmVhY2ggSWRlYWwgKGtnKTo8XFwvc3Bhbj4gJHtib2R5RmF0VG9Mb3NlLnRvRml4ZWQoMil9IGtnPFxcL2Rpdj5cXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVxcXCJyZXN1bHQtaXRlbVxcXCI+PHNwYW4gY2xhc3M9XFxcInJlc3VsdC1sYWJlbFxcXCI+Qm9keSBGYXQgKCUpOjxcXC9zcGFuPiAoQk1JIG1ldGhvZCk6ICR7Ym9keUZhdEJtaU1ldGhvZC50b0ZpeGVkKDIpfSU8XFwvZGl2PlxcbiAgICAgICAgYDtcXG4gICAgfVxcblxcbiAgICBmdW5jdGlvbiBpZGVhbEJvZHlGYXRDYWxjKGFnZSwgZ2VuZGVyKSB7XFxuICAgICAgICBpZiAoZ2VuZGVyID09PSBcXFwibWFsZVxcXCIpIHtcXG4gICAgICAgICAgICBpZiAoYWdlIDw9IDIwKSByZXR1cm4gOC41O1xcbiAgICAgICAgICAgIGVsc2UgaWYgKGFnZSA8PSAyNSkgcmV0dXJuIDEwLjU7XFxuICAgICAgICAgICAgZWxzZSBpZiAoYWdlIDw9IDMwKSByZXR1cm4gMTIuNztcXG4gICAgICAgICAgICBlbHNlIGlmIChhZ2UgPD0gMzUpIHJldHVybiAxMy43O1xcbiAgICAgICAgICAgIGVsc2UgaWYgKGFnZSA8PSA0MCkgcmV0dXJuIDE1LjM7XFxuICAgICAgICAgICAgZWxzZSBpZiAoYWdlIDw9IDQ1KSByZXR1cm4gMTYuNDtcXG4gICAgICAgICAgICBlbHNlIGlmIChhZ2UgPD0gNTApIHJldHVybiAxOC45O1xcbiAgICAgICAgICAgIGVsc2UgaWYgKGFnZSA8PSA1NSkgcmV0dXJuIDIwLjk7XFxuICAgICAgICAgICAgZWxzZSByZXR1cm4gMjI7IFxcL1xcLyBcXHUwNDFjXFx1MDQzZVxcdTA0MzZcXHUwNDNkXFx1MDQzZSBcXHUwNDQzXFx1MDQzYVxcdTA0MzBcXHUwNDM3XFx1MDQzMFxcdTA0NDJcXHUwNDRjIFxcdTA0MzdcXHUwNDNkXFx1MDQzMFxcdTA0NDdcXHUwNDM1XFx1MDQzZFxcdTA0MzhcXHUwNDM1IFxcdTA0MzRcXHUwNDNiXFx1MDQ0ZiBcXHUwNDMyXFx1MDQzZVxcdTA0MzdcXHUwNDQwXFx1MDQzMFxcdTA0NDFcXHUwNDQyXFx1MDQzMCBcXHUwNDMyXFx1MDQ0YlxcdTA0NDhcXHUwNDM1IDU1XFxuICAgICAgICB9IGVsc2UgaWYgKGdlbmRlciA9PT0gXFxcImZlbWFsZVxcXCIpIHtcXG4gICAgICAgICAgICBpZiAoYWdlIDw9IDIwKSByZXR1cm4gMTcuNztcXG4gICAgICAgICAgICBlbHNlIGlmIChhZ2UgPD0gMjUpIHJldHVybiAxOC40O1xcbiAgICAgICAgICAgIGVsc2UgaWYgKGFnZSA8PSAzMCkgcmV0dXJuIDE5LjM7XFxuICAgICAgICAgICAgZWxzZSBpZiAoYWdlIDw9IDM1KSByZXR1cm4gMjEuNTtcXG4gICAgICAgICAgICBlbHNlIGlmIChhZ2UgPD0gNDApIHJldHVybiAyMi4yO1xcbiAgICAgICAgICAgIGVsc2UgaWYgKGFnZSA8PSA0NSkgcmV0dXJuIDIyLjk7XFxuICAgICAgICAgICAgZWxzZSBpZiAoYWdlIDw9IDUwKSByZXR1cm4gMjUuMjtcXG4gICAgICAgICAgICBlbHNlIGlmIChhZ2UgPD0gNTUpIHJldHVybiAyNi4zO1xcbiAgICAgICAgICAgIGVsc2UgcmV0dXJuIDI4OyBcXC9cXC8gXFx1MDQxY1xcdTA0M2VcXHUwNDM2XFx1MDQzZFxcdTA0M2UgXFx1MDQ0M1xcdTA0M2FcXHUwNDMwXFx1MDQzN1xcdTA0MzBcXHUwNDQyXFx1MDQ0YyBcXHUwNDM3XFx1MDQzZFxcdTA0MzBcXHUwNDQ3XFx1MDQzNVxcdTA0M2RcXHUwNDM4XFx1MDQzNSBcXHUwNDM0XFx1MDQzYlxcdTA0NGYgXFx1MDQzMlxcdTA0M2VcXHUwNDM3XFx1MDQ0MFxcdTA0MzBcXHUwNDQxXFx1MDQ0MlxcdTA0MzAgXFx1MDQzMlxcdTA0NGJcXHUwNDQ4XFx1MDQzNSA1NVxcbiAgICAgICAgfVxcbiAgICAgICAgcmV0dXJuIG51bGw7IFxcL1xcLyBcXHUwNDE1XFx1MDQ0MVxcdTA0M2JcXHUwNDM4IFxcdTA0M2ZcXHUwNDNlXFx1MDQzYiBcXHUwNDNkXFx1MDQzNSBcXHUwNDQzXFx1MDQzYVxcdTA0MzBcXHUwNDM3XFx1MDQzMFxcdTA0M2QsIFxcdTA0MzJcXHUwNDNlXFx1MDQzN1xcdTA0MzJcXHUwNDQwXFx1MDQzMFxcdTA0NDlcXHUwNDMwXFx1MDQzNVxcdTA0M2MgbnVsbFxcbiAgICB9XFxuPFxcL3NjcmlwdD5cIixcInJlcGxhY2VWYXJpYWJsZXNcIjpcIlwiLFwiYmxvY2tQYWRkaW5nVG9wXCI6MCxcImJsb2NrUGFkZGluZ0JvdHRvbVwiOjAsXCJibG9ja0JhY2tncm91bmRDb2xvclwiOlwiXCIsXCJibG9ja0ZvcmVncm91bmRDb2xvclwiOlwiXCIsXCJibG9ja0xpbmtDb2xvclwiOlwiXCIsXCJibG9ja0ZvbnRcIjpudWxsLFwiYmxvY2tGb250SGVhZGVyXCI6bnVsbCxcImJsb2NrQ3NzQ2xhc3NcIjpcIlwiLFwiYmxvY2tDb3ZlclwiOm51bGwsXCJpc01vZGFsXCI6bnVsbCxcImJsb2NrQ2xpY2tBY3Rpb25cIjpcIlwiLFwiYmxvY2tGbGV4XCI6MH0iLCJjc3MiOm51bGwsImlzUmVkZXNpZ24iOmZhbHNlfQ==
<style>
    /* body {
            font-family: Arial, sans-serif;
            background-color: #f0f0f5;
            margin: 0;
            padding: 0;
        } */

    .mnfst-bfc {
        max-width: 500px;
        margin: 50px auto;
        padding: 20px;
        background-color: white;
        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
        border-radius: 10px;
    }

    .mnfst-bfc h1 {
        text-align: center;
        color: #333;
    }

    .mnfst-bfc label {
        display: block;
        margin-bottom: 8px;
        color: #555;
    }

    .mnfst-bfc input,
    .mnfst-bfc select {
        width: 100%;
        padding: 10px;
        margin-bottom: 15px;
        border: 1px solid #ccc;
        border-radius: 5px;
    }

    .mnfst-bfc button {
        width: 100%;
        padding: 12px;
        background-color: #28a745;
        color: white;
        border: none;
        border-radius: 5px;
        cursor: pointer;
    }

    .mnfst-bfc button:hover {
        background-color: #218838;
    }

    .mnfst-bfc .results {
        margin-top: 20px;
    }

    .mnfst-bfc .result-item {
        margin-bottom: 10px;
    }

    .mnfst-bfc .result-label {
        font-weight: bold;
        color: #333;
    }
</style>

<div class="mnfst-bfc">
    <h1>Body Fat Calculator</h1>

    <label for="gender">Sex:</label>
    <select id="gender" onchange="toggleHipField()">
        <option value="male">bărbat</option>
        <option value="female">femeie</option>
    </select>

    <label for="age">Vârsta:</label>
    <input type="number" id="age" placeholder="introdu vârsta" required>

    <label for="weight">Greutate (kg):</label>
    <input type="number" id="weight" placeholder="introdu greutatea" required>

    <label for="height">Înălțimea (cm):</label>
    <input type="number" id="height" placeholder="introdu înălțimea" required>

    <label for="neck">Gât (cm):</label>
    <input type="number" id="neck" placeholder="introdu circumferința gâtului" required>

    <label for="waist">Talie (cm):</label>
    <input type="number" id="waist" placeholder="introdu circumferința taliei" required>

    <div id="hipField" style="display:none;">
        <label for="hip">Șolduri (cm):</label>
        <input type="number" id="hip" placeholder="introdu circumferința șoldurilor">
    </div>

    <button onclick="calculateBodyFat()">Calculează</button>

    <div class="results" id="results"></div>
</div>

<script>
    function toggleHipField() {
        const gender = document.getElementById('gender').value;
        const hipField = document.getElementById('hipField');
        if (gender === 'female') {
            hipField.style.display = 'block';
        } else {
            hipField.style.display = 'none';
        }
    }

    function calculateBodyFat() {
        const gender = document.getElementById('gender').value;
        const age = parseFloat(document.getElementById('age').value);
        const weight = parseFloat(document.getElementById('weight').value);
        const height = parseFloat(document.getElementById('height').value);
        const neck = parseFloat(document.getElementById('neck').value);
        const waist = parseFloat(document.getElementById('waist').value);
        let hip = null;

        if (gender === 'female') {
            hip = parseFloat(document.getElementById('hip').value);
        }

        // U.S. Navy Method Calculation
        let bodyFatPercentage;
        if (gender === 'male') {
            bodyFatPercentage = 495 / (1.0324 - 0.19077 * Math.log10(waist - neck) + 0.15456 * Math.log10(height)) -
                450;
        } else {
            bodyFatPercentage = 495 / (1.29579 - 0.35004 * Math.log10(waist + hip - neck) + 0.22100 * Math.log10(
                height)) - 450;
        }

        const bodyFatMass = (bodyFatPercentage / 100) * weight;
        const leanBodyMass = weight - bodyFatMass;

        // Jackson & Pollock Ideal Body Fat Calculation
        let idealBodyFat = idealBodyFatCalc(age, gender);

        const bodyFatToLose = Math.max(0, bodyFatMass - (idealBodyFat / 100) * weight);

        // BMI Method for Body Fat (approximation)
        const bmi = weight / Math.pow(height / 100, 2);
        const bodyFatBmiMethod = (1.2 * bmi) + (0.23 * age) - (10.8 * (gender === 'male' ? 1 : 0)) - 5.4;

        // Body Fat Category
        let bodyFatCategory;
        if (gender === 'male') {
            if (bodyFatPercentage < 6) {
                bodyFatCategory = 'Essential fat';
            } else if (bodyFatPercentage < 14) {
                bodyFatCategory = 'Athletes';
            } else if (bodyFatPercentage < 18) {
                bodyFatCategory = 'Fitness';
            } else if (bodyFatPercentage < 25) {
                bodyFatCategory = 'Average';
            } else {
                bodyFatCategory = 'Obese';
            }
        } else {
            if (bodyFatPercentage < 14) {
                bodyFatCategory = 'Essential fat';
            } else if (bodyFatPercentage < 21) {
                bodyFatCategory = 'Athletes';
            } else if (bodyFatPercentage < 25) {
                bodyFatCategory = 'Fitness';
            } else if (bodyFatPercentage < 32) {
                bodyFatCategory = 'Average';
            } else {
                bodyFatCategory = 'Obese';
            }
        }

        // Display results
        const results = document.getElementById('results');
        results.innerHTML = `
            <div class="result-item"><span class="result-label">Body Fat (%):</span> ${bodyFatPercentage.toFixed(2)}%</div>
            <div class="result-item"><span class="result-label">Body Fat Category:</span> ${bodyFatCategory}</div>
            <div class="result-item"><span class="result-label">Body Fat Mass (kg):</span> ${bodyFatMass.toFixed(2)} kg</div>
            <div class="result-item"><span class="result-label">Lean Body Mass (kg):</span> ${leanBodyMass.toFixed(2)} kg</div>
            <div class="result-item"><span class="result-label">Ideal Body Fat for Given Age (%):</span> ${idealBodyFat.toFixed(2)}%</div>
            <div class="result-item"><span class="result-label">Body Fat to Lose to Reach Ideal (kg):</span> ${bodyFatToLose.toFixed(2)} kg</div>
            <div class="result-item"><span class="result-label">Body Fat (%):</span> (BMI method): ${bodyFatBmiMethod.toFixed(2)}%</div>
        `;
    }

    function idealBodyFatCalc(age, gender) {
        if (gender === "male") {
            if (age <= 20) return 8.5;
            else if (age <= 25) return 10.5;
            else if (age <= 30) return 12.7;
            else if (age <= 35) return 13.7;
            else if (age <= 40) return 15.3;
            else if (age <= 45) return 16.4;
            else if (age <= 50) return 18.9;
            else if (age <= 55) return 20.9;
            else return 22; // Можно указать значение для возраста выше 55
        } else if (gender === "female") {
            if (age <= 20) return 17.7;
            else if (age <= 25) return 18.4;
            else if (age <= 30) return 19.3;
            else if (age <= 35) return 21.5;
            else if (age <= 40) return 22.2;
            else if (age <= 45) return 22.9;
            else if (age <= 50) return 25.2;
            else if (age <= 55) return 26.3;
            else return 28; // Можно указать значение для возраста выше 55
        }
        return null; // Если пол не указан, возвращаем null
    }
</script>