@alfadocs/ui-kit-debug 1.130.0 → 1.130.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_chunks/{actions-cell-renderer-DTaIQKp9.js → actions-cell-renderer-C-l_ppP6.js} +3 -3
- package/dist/_chunks/{actions-cell-renderer-DTaIQKp9.js.map → actions-cell-renderer-C-l_ppP6.js.map} +1 -1
- package/dist/_chunks/{alia-sidebar-BBxbMRmX.js → alia-sidebar-CK1zw_Bc.js} +2 -2
- package/dist/_chunks/{alia-sidebar-BBxbMRmX.js.map → alia-sidebar-CK1zw_Bc.js.map} +1 -1
- package/dist/_chunks/{anamnesis-summary-rows-CtcULkvc.js → anamnesis-summary-rows-CCNmkq55.js} +5 -5
- package/dist/_chunks/{anamnesis-summary-rows-CtcULkvc.js.map → anamnesis-summary-rows-CCNmkq55.js.map} +1 -1
- package/dist/_chunks/{appointment-card-vbUsDh70.js → appointment-card-OAOur8lH.js} +2 -2
- package/dist/_chunks/{appointment-card-vbUsDh70.js.map → appointment-card-OAOur8lH.js.map} +1 -1
- package/dist/_chunks/{appointment-peek-DdUhqfEi.js → appointment-peek-DZa6xyUb.js} +2 -2
- package/dist/_chunks/{appointment-peek-DdUhqfEi.js.map → appointment-peek-DZa6xyUb.js.map} +1 -1
- package/dist/_chunks/{appointment-timeline-B5pfBl-b.js → appointment-timeline-DQePqpyH.js} +3 -3
- package/dist/_chunks/{appointment-timeline-B5pfBl-b.js.map → appointment-timeline-DQePqpyH.js.map} +1 -1
- package/dist/_chunks/{appointment-tray-BhiXetjs.js → appointment-tray-DSFqO5Rm.js} +2 -2
- package/dist/_chunks/{appointment-tray-BhiXetjs.js.map → appointment-tray-DSFqO5Rm.js.map} +1 -1
- package/dist/_chunks/{balance-badge-cell-BtFge7Y6.js → balance-badge-cell-DTiMdnCZ.js} +4 -4
- package/dist/_chunks/{balance-badge-cell-BtFge7Y6.js.map → balance-badge-cell-DTiMdnCZ.js.map} +1 -1
- package/dist/_chunks/body-pointer-lock-CsOEDm1I.js +15 -0
- package/dist/_chunks/body-pointer-lock-CsOEDm1I.js.map +1 -0
- package/dist/_chunks/{button-group-B2MJo0Se.js → button-group-DuQuuulC.js} +2 -2
- package/dist/_chunks/{button-group-B2MJo0Se.js.map → button-group-DuQuuulC.js.map} +1 -1
- package/dist/_chunks/{calculator-dialog-BGX5XQCM.js → calculator-dialog-Cg3GjaRf.js} +2 -2
- package/dist/_chunks/{calculator-dialog-BGX5XQCM.js.map → calculator-dialog-Cg3GjaRf.js.map} +1 -1
- package/dist/_chunks/{calendar-DzR-vdJ5.js → calendar-BIoOeBTT.js} +103 -103
- package/dist/_chunks/{calendar-DzR-vdJ5.js.map → calendar-BIoOeBTT.js.map} +1 -1
- package/dist/_chunks/{calendar-appointment-editor-dialog-CXch4Pmu.js → calendar-appointment-editor-dialog-WW6V1SGh.js} +15 -15
- package/dist/_chunks/{calendar-appointment-editor-dialog-CXch4Pmu.js.map → calendar-appointment-editor-dialog-WW6V1SGh.js.map} +1 -1
- package/dist/_chunks/{care-plan-card-CwgkImOD.js → care-plan-card-DKScH9Ss.js} +2 -2
- package/dist/_chunks/{care-plan-card-CwgkImOD.js.map → care-plan-card-DKScH9Ss.js.map} +1 -1
- package/dist/_chunks/{care-plan-entry-card-cdojypxu.js → care-plan-entry-card-AG1y3nyW.js} +2 -2
- package/dist/_chunks/{care-plan-entry-card-cdojypxu.js.map → care-plan-entry-card-AG1y3nyW.js.map} +1 -1
- package/dist/_chunks/{chart-Aue_2dMb.js → chart-D0EeFWst.js} +2 -2
- package/dist/_chunks/{chart-Aue_2dMb.js.map → chart-D0EeFWst.js.map} +1 -1
- package/dist/_chunks/{dashboard-grid-CaxgaEgI.js → dashboard-grid-2uVXEe9e.js} +2 -2
- package/dist/_chunks/{dashboard-grid-CaxgaEgI.js.map → dashboard-grid-2uVXEe9e.js.map} +1 -1
- package/dist/_chunks/{data-table-BCfkcPti.js → data-table-FTV3uRjX.js} +3 -3
- package/dist/_chunks/{data-table-BCfkcPti.js.map → data-table-FTV3uRjX.js.map} +1 -1
- package/dist/_chunks/{default-tabs-BnB6FUEW.js → default-tabs-BryvhiHv.js} +4 -4
- package/dist/_chunks/{default-tabs-BnB6FUEW.js.map → default-tabs-BryvhiHv.js.map} +1 -1
- package/dist/_chunks/{dialog-CIUn5oLb.js → dialog-CVTxyR0v.js} +48 -47
- package/dist/_chunks/dialog-CVTxyR0v.js.map +1 -0
- package/dist/_chunks/{document-preview-BWDTCEHI.js → document-preview-_kQ9QvZV.js} +2 -2
- package/dist/_chunks/{document-preview-BWDTCEHI.js.map → document-preview-_kQ9QvZV.js.map} +1 -1
- package/dist/_chunks/{dropdown-menu-Dw6sgQwJ.js → dropdown-menu-DBWaW4pq.js} +92 -88
- package/dist/_chunks/dropdown-menu-DBWaW4pq.js.map +1 -0
- package/dist/_chunks/{editable-currency-cell-renderer-BlK-8A7b.js → editable-currency-cell-renderer-CZMQ5xRT.js} +2 -2
- package/dist/_chunks/{editable-currency-cell-renderer-BlK-8A7b.js.map → editable-currency-cell-renderer-CZMQ5xRT.js.map} +1 -1
- package/dist/_chunks/{face-scheme-Bt07zQJU.js → face-scheme-D_Y1StPl.js} +3 -3
- package/dist/_chunks/{face-scheme-Bt07zQJU.js.map → face-scheme-D_Y1StPl.js.map} +1 -1
- package/dist/_chunks/{file-manager-Dpwv0qs-.js → file-manager-Bzr5NK1t.js} +5 -5
- package/dist/_chunks/{file-manager-Dpwv0qs-.js.map → file-manager-Bzr5NK1t.js.map} +1 -1
- package/dist/_chunks/{header-settings-ZGvYAuKF.js → header-settings-Cu-MKOsO.js} +2 -2
- package/dist/_chunks/{header-settings-ZGvYAuKF.js.map → header-settings-Cu-MKOsO.js.map} +1 -1
- package/dist/_chunks/{heatmap-Ds5DJBUL.js → heatmap-C5gJin_F.js} +3 -3
- package/dist/_chunks/{heatmap-Ds5DJBUL.js.map → heatmap-C5gJin_F.js.map} +1 -1
- package/dist/_chunks/{help-me-write-templates-C28E_rOt.js → help-me-write-templates-DO6vJeP4.js} +2 -2
- package/dist/_chunks/{help-me-write-templates-C28E_rOt.js.map → help-me-write-templates-DO6vJeP4.js.map} +1 -1
- package/dist/_chunks/{icon-button-group-BKtkVZ1W.js → icon-button-group-SmkdVCNx.js} +2 -2
- package/dist/_chunks/{icon-button-group-BKtkVZ1W.js.map → icon-button-group-SmkdVCNx.js.map} +1 -1
- package/dist/_chunks/{invoice-upload-list-tJY7W1g_.js → invoice-upload-list-868v1oDe.js} +3 -3
- package/dist/_chunks/{invoice-upload-list-tJY7W1g_.js.map → invoice-upload-list-868v1oDe.js.map} +1 -1
- package/dist/_chunks/{link-cell-renderer-CC9VHU68.js → link-cell-renderer-D3JLPURZ.js} +2 -2
- package/dist/_chunks/{link-cell-renderer-CC9VHU68.js.map → link-cell-renderer-D3JLPURZ.js.map} +1 -1
- package/dist/_chunks/{marketplace-app-shell-D_HA8CKx.js → marketplace-app-shell-dMmxI6MT.js} +4 -4
- package/dist/_chunks/{marketplace-app-shell-D_HA8CKx.js.map → marketplace-app-shell-dMmxI6MT.js.map} +1 -1
- package/dist/_chunks/{muscle-scheme-CHrjv7p2.js → muscle-scheme-BGJD62op.js} +3 -2
- package/dist/_chunks/{muscle-scheme-CHrjv7p2.js.map → muscle-scheme-BGJD62op.js.map} +1 -1
- package/dist/_chunks/{notes-panel-DIY7eNsq.js → notes-panel-Cm-_pCRJ.js} +3 -3
- package/dist/_chunks/{notes-panel-DIY7eNsq.js.map → notes-panel-Cm-_pCRJ.js.map} +1 -1
- package/dist/_chunks/{parts-tGzYz0uG.js → parts-BOnDDU3E.js} +2 -2
- package/dist/_chunks/{parts-tGzYz0uG.js.map → parts-BOnDDU3E.js.map} +1 -1
- package/dist/_chunks/{patient-search-OAwFgOW3.js → patient-search-DBvLFArV.js} +2 -2
- package/dist/_chunks/{patient-search-OAwFgOW3.js.map → patient-search-DBvLFArV.js.map} +1 -1
- package/dist/_chunks/{practice-results-BDnZtbDM.js → practice-results-M5A9-X9y.js} +3 -3
- package/dist/_chunks/{practice-results-BDnZtbDM.js.map → practice-results-M5A9-X9y.js.map} +1 -1
- package/dist/_chunks/{public-header.agent-Db4wm6_S.js → public-header.agent-DaeDfLfy.js} +2 -2
- package/dist/_chunks/{public-header.agent-Db4wm6_S.js.map → public-header.agent-DaeDfLfy.js.map} +1 -1
- package/dist/_chunks/{radiograph-panel.agent-B-r3BoqU.js → radiograph-panel.agent-88VjqlG7.js} +2 -2
- package/dist/_chunks/{radiograph-panel.agent-B-r3BoqU.js.map → radiograph-panel.agent-88VjqlG7.js.map} +1 -1
- package/dist/_chunks/{rich-text-editor-TnX0SYdq.js → rich-text-editor-DjHL1b3E.js} +3 -3
- package/dist/_chunks/{rich-text-editor-TnX0SYdq.js.map → rich-text-editor-DjHL1b3E.js.map} +1 -1
- package/dist/_chunks/{row-actions-Dpf9CrCP.js → row-actions-BF2-uizV.js} +3 -3
- package/dist/_chunks/{row-actions-Dpf9CrCP.js.map → row-actions-BF2-uizV.js.map} +1 -1
- package/dist/_chunks/{sheet-uZZXaO_S.js → sheet-BdhYeQQT.js} +84 -72
- package/dist/_chunks/sheet-BdhYeQQT.js.map +1 -0
- package/dist/_chunks/{signature-request-DW2PSp66.js → signature-request-4pGq3YBe.js} +3 -3
- package/dist/_chunks/{signature-request-DW2PSp66.js.map → signature-request-4pGq3YBe.js.map} +1 -1
- package/dist/_chunks/{tab-bar-CF8R38Og.js → tab-bar-CeC2QOwB.js} +2 -2
- package/dist/_chunks/{tab-bar-CF8R38Og.js.map → tab-bar-CeC2QOwB.js.map} +1 -1
- package/dist/_chunks/{tabs-P4qFmxk5.js → tabs-CRIDBLP7.js} +2 -2
- package/dist/_chunks/{tabs-P4qFmxk5.js.map → tabs-CRIDBLP7.js.map} +1 -1
- package/dist/_chunks/{task-editor-CVRrDqpe.js → task-editor-BL2hHxNz.js} +3 -3
- package/dist/_chunks/{task-editor-CVRrDqpe.js.map → task-editor-BL2hHxNz.js.map} +1 -1
- package/dist/_chunks/{tasks-panel-DBSm3WjK.js → tasks-panel-BE3zaayj.js} +2 -2
- package/dist/_chunks/{tasks-panel-DBSm3WjK.js.map → tasks-panel-BE3zaayj.js.map} +1 -1
- package/dist/_chunks/{theme-toggle-CeKl8f_f.js → theme-toggle-BQDFxvVS.js} +3 -3
- package/dist/_chunks/{theme-toggle-CeKl8f_f.js.map → theme-toggle-BQDFxvVS.js.map} +1 -1
- package/dist/_chunks/{token-insert-menu-BrK5NQIq.js → token-insert-menu-BLtfMTJd.js} +2 -2
- package/dist/_chunks/{token-insert-menu-BrK5NQIq.js.map → token-insert-menu-BLtfMTJd.js.map} +1 -1
- package/dist/_chunks/{toolbar-CC-Ls_eC.js → toolbar-BK6S9PhI.js} +2 -2
- package/dist/_chunks/{toolbar-CC-Ls_eC.js.map → toolbar-BK6S9PhI.js.map} +1 -1
- package/dist/_chunks/{tooth-scheme-DHRxV2sE.js → tooth-scheme-BtnFgugP.js} +2 -2
- package/dist/_chunks/{tooth-scheme-DHRxV2sE.js.map → tooth-scheme-BtnFgugP.js.map} +1 -1
- package/dist/_chunks/{use-appointment-details-read-BrykoTOR.js → use-appointment-details-read-_b7FRB1x.js} +4 -4
- package/dist/_chunks/{use-appointment-details-read-BrykoTOR.js.map → use-appointment-details-read-_b7FRB1x.js.map} +1 -1
- package/dist/_chunks/{verify-identity-types-D_LdByCp.js → verify-identity-types-CxtrBXsZ.js} +2 -2
- package/dist/_chunks/{verify-identity-types-D_LdByCp.js.map → verify-identity-types-CxtrBXsZ.js.map} +1 -1
- package/dist/_chunks/{widget-picker-DrxJjEkv.js → widget-picker-D3T7e8a4.js} +2 -2
- package/dist/_chunks/{widget-picker-DrxJjEkv.js.map → widget-picker-D3T7e8a4.js.map} +1 -1
- package/dist/_chunks/{workflow-map-DCjkRuS_.js → workflow-map-DaZFP9SJ.js} +2 -2
- package/dist/_chunks/{workflow-map-DCjkRuS_.js.map → workflow-map-DaZFP9SJ.js.map} +1 -1
- package/dist/_chunks/{workflow-status-D0avpoeS.js → workflow-status-D1WgGVTP.js} +2 -2
- package/dist/_chunks/{workflow-status-D0avpoeS.js.map → workflow-status-D1WgGVTP.js.map} +1 -1
- package/dist/_chunks/{workflow-webhook-action-Cae02r_4.js → workflow-webhook-action-BsGSh3h9.js} +2 -2
- package/dist/_chunks/{workflow-webhook-action-Cae02r_4.js.map → workflow-webhook-action-BsGSh3h9.js.map} +1 -1
- package/dist/agent-catalog.json +1 -1
- package/dist/browser-support.js +1 -1
- package/dist/components/_shared/body-pointer-lock.d.ts +2 -0
- package/dist/components/_shared/body-pointer-lock.d.ts.map +1 -0
- package/dist/components/appointment-card/index.js +2 -2
- package/dist/components/appointment-details-panel/index.js +1 -1
- package/dist/components/appointment-peek/index.js +1 -1
- package/dist/components/appointment-timeline/index.js +1 -1
- package/dist/components/bill-table/index.js +1 -1
- package/dist/components/button-group/index.js +1 -1
- package/dist/components/calculator-dialog/index.js +1 -1
- package/dist/components/calendar/calendar.d.ts.map +1 -1
- package/dist/components/calendar/index.js +1 -1
- package/dist/components/care-plan-card/index.js +1 -1
- package/dist/components/care-plan-entry-card/index.js +1 -1
- package/dist/components/chart/index.js +1 -1
- package/dist/components/dashboard-grid/index.js +1 -1
- package/dist/components/data-grid/index.js +1 -1
- package/dist/components/data-table/index.js +4 -4
- package/dist/components/dialog/dialog.d.ts.map +1 -1
- package/dist/components/dialog/index.js +1 -1
- package/dist/components/document-preview/index.js +1 -1
- package/dist/components/dropdown-menu/dropdown-menu.d.ts.map +1 -1
- package/dist/components/dropdown-menu/index.js +1 -1
- package/dist/components/face-scheme/index.js +1 -1
- package/dist/components/file-manager/index.js +1 -1
- package/dist/components/header-settings/index.js +1 -1
- package/dist/components/heatmap/index.js +1 -1
- package/dist/components/icon-button-group/index.js +1 -1
- package/dist/components/invoice-upload-list/index.js +1 -1
- package/dist/components/muscle-scheme/index.js +1 -1
- package/dist/components/muscle-scheme/muscle-scheme.d.ts.map +1 -1
- package/dist/components/notes-panel/index.js +1 -1
- package/dist/components/patient-search/index.js +1 -1
- package/dist/components/patient-table/index.js +1 -1
- package/dist/components/practice-results/index.js +1 -1
- package/dist/components/public-header/index.js +1 -1
- package/dist/components/radiograph-panel/index.js +1 -1
- package/dist/components/rich-text-editor/index.js +1 -1
- package/dist/components/row-actions/index.js +1 -1
- package/dist/components/sheet/index.js +1 -1
- package/dist/components/sheet/sheet.d.ts.map +1 -1
- package/dist/components/skeleton-scheme/index.js +1 -1
- package/dist/components/tab-bar/index.js +1 -1
- package/dist/components/tabs/index.js +1 -1
- package/dist/components/task-editor/index.js +1 -1
- package/dist/components/tasks-panel/index.js +1 -1
- package/dist/components/theme-toggle/index.js +1 -1
- package/dist/components/token-insert-menu/index.js +1 -1
- package/dist/components/tooth-scheme/index.js +1 -1
- package/dist/components/widget-picker/index.js +1 -1
- package/dist/components/workflow/index.js +1 -1
- package/dist/components/workflow-status/index.js +1 -1
- package/dist/i18n/locales/ar.d.ts +1 -0
- package/dist/i18n/locales/ar.d.ts.map +1 -1
- package/dist/i18n/locales/ar.js +1 -0
- package/dist/i18n/locales/ar.js.map +1 -1
- package/dist/i18n/locales/de.d.ts +1 -0
- package/dist/i18n/locales/de.d.ts.map +1 -1
- package/dist/i18n/locales/de.js +1 -0
- package/dist/i18n/locales/de.js.map +1 -1
- package/dist/i18n/locales/el.d.ts +1 -0
- package/dist/i18n/locales/el.d.ts.map +1 -1
- package/dist/i18n/locales/el.js +1 -0
- package/dist/i18n/locales/el.js.map +1 -1
- package/dist/i18n/locales/en.d.ts +1 -0
- package/dist/i18n/locales/en.d.ts.map +1 -1
- package/dist/i18n/locales/en.js +1 -0
- package/dist/i18n/locales/en.js.map +1 -1
- package/dist/i18n/locales/es.d.ts +1 -0
- package/dist/i18n/locales/es.d.ts.map +1 -1
- package/dist/i18n/locales/es.js +1 -0
- package/dist/i18n/locales/es.js.map +1 -1
- package/dist/i18n/locales/fr.d.ts +1 -0
- package/dist/i18n/locales/fr.d.ts.map +1 -1
- package/dist/i18n/locales/fr.js +1 -0
- package/dist/i18n/locales/fr.js.map +1 -1
- package/dist/i18n/locales/hi.d.ts +1 -0
- package/dist/i18n/locales/hi.d.ts.map +1 -1
- package/dist/i18n/locales/hi.js +1 -0
- package/dist/i18n/locales/hi.js.map +1 -1
- package/dist/i18n/locales/it.d.ts +1 -0
- package/dist/i18n/locales/it.d.ts.map +1 -1
- package/dist/i18n/locales/it.js +1 -0
- package/dist/i18n/locales/it.js.map +1 -1
- package/dist/i18n/locales/ja.d.ts +1 -0
- package/dist/i18n/locales/ja.d.ts.map +1 -1
- package/dist/i18n/locales/ja.js +1 -0
- package/dist/i18n/locales/ja.js.map +1 -1
- package/dist/i18n/locales/nl.d.ts +1 -0
- package/dist/i18n/locales/nl.d.ts.map +1 -1
- package/dist/i18n/locales/nl.js +1 -0
- package/dist/i18n/locales/nl.js.map +1 -1
- package/dist/i18n/locales/pl.d.ts +1 -0
- package/dist/i18n/locales/pl.d.ts.map +1 -1
- package/dist/i18n/locales/pl.js +1 -0
- package/dist/i18n/locales/pl.js.map +1 -1
- package/dist/i18n/locales/pt.d.ts +1 -0
- package/dist/i18n/locales/pt.d.ts.map +1 -1
- package/dist/i18n/locales/pt.js +1 -0
- package/dist/i18n/locales/pt.js.map +1 -1
- package/dist/i18n/locales/ro.d.ts +1 -0
- package/dist/i18n/locales/ro.d.ts.map +1 -1
- package/dist/i18n/locales/ro.js +1 -0
- package/dist/i18n/locales/ro.js.map +1 -1
- package/dist/i18n/locales/ru.d.ts +1 -0
- package/dist/i18n/locales/ru.d.ts.map +1 -1
- package/dist/i18n/locales/ru.js +1 -0
- package/dist/i18n/locales/ru.js.map +1 -1
- package/dist/i18n/locales/sq.d.ts +1 -0
- package/dist/i18n/locales/sq.d.ts.map +1 -1
- package/dist/i18n/locales/sq.js +1 -0
- package/dist/i18n/locales/sq.js.map +1 -1
- package/dist/i18n/locales/sv.d.ts +1 -0
- package/dist/i18n/locales/sv.d.ts.map +1 -1
- package/dist/i18n/locales/sv.js +1 -0
- package/dist/i18n/locales/sv.js.map +1 -1
- package/dist/i18n/locales/tr.d.ts +1 -0
- package/dist/i18n/locales/tr.d.ts.map +1 -1
- package/dist/i18n/locales/tr.js +1 -0
- package/dist/i18n/locales/tr.js.map +1 -1
- package/dist/i18n/locales/zh.d.ts +1 -0
- package/dist/i18n/locales/zh.d.ts.map +1 -1
- package/dist/i18n/locales/zh.js +1 -0
- package/dist/i18n/locales/zh.js.map +1 -1
- package/dist/index.js +54 -54
- package/dist/locales/ar.json +1 -0
- package/dist/locales/de.json +1 -0
- package/dist/locales/el.json +1 -0
- package/dist/locales/en.json +1 -0
- package/dist/locales/es.json +1 -0
- package/dist/locales/fr.json +1 -0
- package/dist/locales/hi.json +1 -0
- package/dist/locales/it.json +1 -0
- package/dist/locales/ja.json +1 -0
- package/dist/locales/nl.json +1 -0
- package/dist/locales/pl.json +1 -0
- package/dist/locales/pt.json +1 -0
- package/dist/locales/ro.json +1 -0
- package/dist/locales/ru.json +1 -0
- package/dist/locales/sq.json +1 -0
- package/dist/locales/sv.json +1 -0
- package/dist/locales/tr.json +1 -0
- package/dist/locales/zh.json +1 -0
- package/dist/patterns/alia-assistant/index.js +1 -1
- package/dist/patterns/anamnesis/index.js +1 -1
- package/dist/patterns/calendar/index.js +1 -1
- package/dist/patterns/help-me-write-templates/index.js +1 -1
- package/dist/patterns/marketplace-app-shell/index.js +1 -1
- package/dist/patterns/signature-request/index.js +1 -1
- package/dist/patterns/verify-identity/index.js +1 -1
- package/dist/patterns/workflow-webhook-action/index.js +1 -1
- package/package.json +1 -1
- package/dist/_chunks/dialog-CIUn5oLb.js.map +0 -1
- package/dist/_chunks/dropdown-menu-Dw6sgQwJ.js.map +0 -1
- package/dist/_chunks/sheet-uZZXaO_S.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"muscle-scheme-CHrjv7p2.js","sources":["../../src/components/muscle-scheme/muscle-scheme.agent.ts","../../src/components/muscle-scheme/reproductive-female.ts","../../src/components/muscle-scheme/reproductive-male.ts","../../src/components/muscle-scheme/muscle-paths.ts","../../src/components/muscle-scheme/muscle-fibres.ts","../../src/components/muscle-scheme/muscle-outlines.ts","../../src/components/muscle-scheme/muscle-scheme-data.ts","../../src/components/muscle-scheme/muscle-scheme.tsx"],"sourcesContent":["import type { AgentAdapter } from '../../agent/types';\nimport type { MuscleSchemeHandle } from './muscle-scheme';\nimport type { FindingType } from './muscle-scheme-data';\n\n// JSON-Schema fragments derived from the data-model unions. Kept inline so the\n// adapter stays a pure module with no runtime import of the unions.\nconst REGION_SCHEMA = {\n type: 'string',\n description:\n \"Region id within the active view, e.g. 'quadriceps-r', 'biceps-l', 'chest-r', 'trapezius-l'. Every body view also has head, elbow-l/r and wrist-l/r; front views add ribs-l/r and hip-l/r, back views spine, scapula-l/r and knee-back-l/r. The female body view muscular-front-female also has breast-l and breast-r. The organ-only reproductive-female view has vulva, vagina, cervix, uterus, ovary-l, ovary-r, fallopian-tube-l, fallopian-tube-r, bladder and urethra. The organ-only reproductive-male view has penis, scrotum, testis-l, testis-r, prostate, bladder, urethra, epididymis-l, epididymis-r, vas-deferens-l, vas-deferens-r, seminal-vesicle-l and seminal-vesicle-r. Child views have no organ regions.\",\n} as const;\nconst FINDING_SCHEMA = {\n enum: ['observation', 'lesion', 'pain', 'treatment', 'note'],\n} as const;\nconst VIEW_SCHEMA = {\n type: 'string',\n description:\n \"View id: 'muscular-front', 'muscular-back', 'muscular-front-female', 'muscular-back-female', 'muscular-front-child', 'muscular-back-child', 'reproductive-female' or 'reproductive-male'. Reproductive views (kind 'pelvis') contain only organs; the others show the body from the front or back. Switch to the relevant view before focusing an organ region. When the host controls the view, it decides whether the switch happens.\",\n} as const;\n\nexport const muscleSchemeAgent: AgentAdapter<MuscleSchemeHandle> = {\n id: 'muscle-scheme',\n // pick — focus a region (`focus_region`, transient); set_value / edit_inline —\n // `set_finding` records a finding, `remove_finding` clears one; view_change —\n // `set_view` switches the active muscle view. Selection (`selectedRegions`)\n // and a controlled view are host state: the host's own adapter reports them,\n // and a `set_view` the host controls takes effect only when it agrees.\n capabilities: ['pick', 'set_value', 'edit_inline', 'view_change'],\n state: {\n chart: {\n type: 'object',\n descriptionKey: 'ui.agent.muscleScheme.state.chart',\n description:\n 'Current muscle chart — findings keyed by region id. Notes are PHI and omitted from this snapshot; read them per-region via get_region.',\n // A9: the always-on snapshot carries region ids + finding TYPES only —\n // never the free-text clinical note (PHI). Notes are fetched deliberately\n // per region via get_region (safety: 'phi').\n read: (handle) =>\n Object.fromEntries(\n Object.entries(handle.getChart()).map(([id, findings]) => [\n id,\n findings.map((f) => f.type),\n ]),\n ),\n },\n activeView: {\n type: 'string',\n descriptionKey: 'ui.agent.muscleScheme.state.activeView',\n description: 'Id of the currently displayed muscle view.',\n read: (handle) => handle.getView(),\n },\n },\n actions: {\n focus_region: {\n safety: 'read',\n argsType: '{ regionId: string }',\n argsSchema: {\n type: 'object',\n properties: { regionId: REGION_SCHEMA },\n required: ['regionId'],\n },\n idempotent: true,\n descriptionKey: 'ui.agent.muscleScheme.actions.focusRegion',\n description: 'Move focus to a specific region in the active view.',\n invoke: (handle, args: { regionId: string }) => {\n handle.focusRegion(args.regionId);\n },\n },\n get_region: {\n // phi (not read): resolves the free-text clinical note, which is PHI.\n // PRS §26 §3 — phi outranks read so the host gates it behind stricter\n // confirm + audit. The always-on state.chart snapshot stays note-free.\n safety: 'phi',\n argsType: '{ regionId: string }',\n argsSchema: {\n type: 'object',\n properties: { regionId: REGION_SCHEMA },\n required: ['regionId'],\n },\n returns: 'MuscleFinding[]',\n returnsSchema: {\n type: 'array',\n items: {\n type: 'object',\n properties: { type: FINDING_SCHEMA, note: { type: 'string' } },\n required: ['type'],\n },\n },\n idempotent: true,\n descriptionKey: 'ui.agent.muscleScheme.actions.getRegion',\n description: 'Read the findings (incl. notes) recorded on one region.',\n invoke: (handle, args: { regionId: string }) =>\n handle.getRegion(args.regionId),\n },\n regions_with: {\n safety: 'read',\n argsType: '{ type: FindingType }',\n argsSchema: {\n type: 'object',\n properties: { type: FINDING_SCHEMA },\n required: ['type'],\n },\n returns: 'string[]',\n returnsSchema: { type: 'array', items: REGION_SCHEMA },\n idempotent: true,\n descriptionKey: 'ui.agent.muscleScheme.actions.regionsWith',\n description: 'List the region ids carrying a given finding type.',\n invoke: (handle, args: { type: FindingType }) =>\n handle.regionsWith(args.type),\n },\n set_finding: {\n safety: 'write',\n argsType: '{ regionId: string; type: FindingType; note?: string }',\n argsSchema: {\n type: 'object',\n properties: {\n regionId: REGION_SCHEMA,\n type: FINDING_SCHEMA,\n note: { type: 'string' },\n },\n required: ['regionId', 'type'],\n },\n idempotent: true,\n descriptionKey: 'ui.agent.muscleScheme.actions.setFinding',\n description:\n 'Record a finding (observation / lesion / pain / treatment / note) on a region.',\n invoke: (\n handle,\n args: { regionId: string; type: FindingType; note?: string },\n ) => {\n handle.setFinding(args.regionId, args.type, args.note);\n },\n },\n remove_finding: {\n safety: 'write',\n argsType: '{ regionId: string; type: FindingType }',\n argsSchema: {\n type: 'object',\n properties: { regionId: REGION_SCHEMA, type: FINDING_SCHEMA },\n required: ['regionId', 'type'],\n },\n idempotent: true,\n descriptionKey: 'ui.agent.muscleScheme.actions.removeFinding',\n description: 'Remove a single finding type from a region.',\n invoke: (handle, args: { regionId: string; type: FindingType }) => {\n handle.removeFinding(args.regionId, args.type);\n },\n },\n clear_region: {\n safety: 'destructive',\n argsType: '{ regionId: string }',\n argsSchema: {\n type: 'object',\n properties: { regionId: REGION_SCHEMA },\n required: ['regionId'],\n },\n idempotent: true,\n descriptionKey: 'ui.agent.muscleScheme.actions.clearRegion',\n description: 'Clear every finding from a region.',\n invoke: (handle, args: { regionId: string }) => {\n handle.clearRegion(args.regionId);\n },\n },\n set_view: {\n safety: 'write',\n argsType: '{ viewId: string }',\n argsSchema: {\n type: 'object',\n properties: { viewId: VIEW_SCHEMA },\n required: ['viewId'],\n },\n idempotent: true,\n descriptionKey: 'ui.agent.muscleScheme.actions.setView',\n description: 'Switch the active muscle view.',\n invoke: (handle, args: { viewId: string }) => {\n handle.setView(args.viewId);\n },\n },\n },\n domHooks: {\n root: { attr: 'data-component', value: 'muscle-scheme' },\n instanceId: {\n attr: 'data-component-id',\n sourceProp: 'id',\n description: 'Sourced from the id prop.',\n },\n item: {\n attr: 'data-region',\n description:\n 'Each rendered region `<g>` carries its region id as `data-region` and its anatomical side (`left` / `right` / `midline`) as `data-side`, so bilateral regions can be disambiguated by side; a host-selected region also carries `data-selected`. The root `data-view` and `data-view-kind` attributes expose the active view and what it depicts (`front` / `back` / `pelvis`).',\n },\n },\n};\n\nexport type { FindingType };\n","import type { OrganArt } from './muscle-scheme-data';\n\n// Female pelvic organs: original kit drawings in three labelled panels, informed\n// by the NCI SEER and NIDDK references in MUSCLE-ASSETS.md (no artwork traced).\n// - Internal reproductive organs, coronal section: uterus (myometrium, the\n// endometrium and its triangular cavity), cervix with canal and external os,\n// vagina with rugae, fallopian tubes from isthmus to fimbriae, ovaries with\n// follicles. Mesosalpinx and ovarian ligaments are context, not targets.\n// - External genitalia, lithotomy view: the vulva as one region; mons, labia,\n// clitoris, urethral and vaginal openings are detail within it.\n// - Bladder and urethra, coronal section: detrusor wall, trigone, ureteric\n// orifices. The ureters are context.\n// Panels are separate views of the anatomy, not a claim that the bladder sits\n// beside the uterus. Anatomical right is on the viewer's left. Not to scale.\n// Generated by scripts/anatomy-art/build-organs.mjs from female-pelvis.mjs:\n// edit the source there and regenerate; the paths are smooth splines.\n\nexport const FEMALE_PELVIS: OrganArt = {\n viewBox: '0 0 520 660',\n plates: [\n { x: 6, y: 36, w: 508, h: 372 },\n { x: 6, y: 450, w: 250, h: 204 },\n { x: 264, y: 450, w: 250, h: 204 },\n ],\n sections: [\n { labelKey: 'internalReproductive', x: 260, y: 24 },\n { labelKey: 'externalGenital', x: 132, y: 438 },\n { labelKey: 'urinary', x: 388, y: 438 },\n ],\n backdrop: [\n {\n kind: 'path',\n d: 'M 214 116 C 192 113 163 105 141 97.5 C 123 93 108 96 100 108 C 96 122 98 136 106 145 C 124 152 151 157 177 151 C 193 147 205 141 214 136 Z',\n paint: 'membrane',\n },\n {\n kind: 'path',\n d: 'M 306 116 C 328 113 357 105 379 97.5 C 397 93 412 96 420 108 C 424 122 422 136 414 145 C 396 152 369 157 343 151 C 327 147 315 141 306 136 Z',\n paint: 'membrane',\n },\n {\n kind: 'path',\n d: 'M 146.8 174.5 C 148.1 174.5 150.5 173.4 153 172.7 C 155.6 171.9 159.1 170.9 162.1 169.9 C 165.1 168.9 168.3 167.8 171.1 166.6 C 174 165.3 176.6 163.9 179.2 162.5 C 181.9 161.1 184.5 159.5 187.1 158 C 189.6 156.5 192 155.1 194.5 153.6 C 197.1 152.1 199.7 150.6 202.2 149.1 C 204.7 147.6 207.5 146 209.5 144.8 C 211.6 143.5 213.9 142.8 214.7 141.7 C 215.4 140.7 214.6 139.2 214.1 138.3 C 213.5 137.4 212.6 136.1 211.3 136.3 C 210 136.4 208.4 138.1 206.3 139.4 C 204.3 140.7 201.5 142.3 199.1 143.8 C 196.6 145.4 194 146.9 191.5 148.4 C 189 149.9 186.6 151.4 184.1 152.9 C 181.6 154.4 179 156.1 176.5 157.5 C 173.9 158.9 171.6 160.2 168.9 161.4 C 166.2 162.6 163.2 163.7 160.3 164.7 C 157.4 165.8 154 166.8 151.5 167.6 C 149 168.4 146.3 168.7 145.2 169.5 C 144.2 170.3 144.8 171.5 145 172.3 C 145.3 173.1 145.4 174.4 146.8 174.5 Z',\n paint: 'ligament',\n },\n {\n kind: 'path',\n d: 'M 373.2 174.5 C 371.9 174.5 369.5 173.4 367 172.7 C 364.4 171.9 360.9 170.9 357.9 169.9 C 354.9 168.9 351.7 167.8 348.9 166.6 C 346 165.3 343.4 163.9 340.8 162.5 C 338.1 161.1 335.5 159.5 332.9 158 C 330.4 156.5 328 155.1 325.5 153.6 C 322.9 152.1 320.3 150.6 317.8 149.1 C 315.3 147.6 312.5 146 310.5 144.8 C 308.4 143.5 306.1 142.8 305.3 141.7 C 304.6 140.7 305.4 139.2 305.9 138.3 C 306.5 137.4 307.4 136.1 308.7 136.3 C 310 136.4 311.6 138.1 313.7 139.4 C 315.7 140.7 318.5 142.3 320.9 143.8 C 323.4 145.4 326 146.9 328.5 148.4 C 331 149.9 333.4 151.4 335.9 152.9 C 338.4 154.4 341 156.1 343.5 157.5 C 346.1 158.9 348.4 160.2 351.1 161.4 C 353.8 162.6 356.8 163.7 359.7 164.7 C 362.6 165.8 366 166.8 368.5 167.6 C 371 168.4 373.7 168.7 374.8 169.5 C 375.8 170.3 375.2 171.5 375 172.3 C 374.7 173.1 374.6 174.4 373.2 174.5 Z',\n paint: 'ligament',\n },\n {\n kind: 'path',\n d: 'M 309.9 470.6 C 309.4 471.6 310.3 473.4 310.6 475.3 C 310.9 477.2 311.3 479.9 311.6 482.1 C 312 484.4 312.4 486.8 312.9 488.9 C 313.3 491 313.8 492.9 314.3 494.9 C 314.8 496.9 315.4 498.9 316 500.8 C 316.6 502.8 317.3 504.7 318 506.6 C 318.8 508.5 319.6 510.3 320.4 512.1 C 321.3 513.9 322.2 515.7 323.2 517.4 C 324.2 519.1 325.2 520.8 326.4 522.5 C 327.6 524.3 329.1 526.1 330.4 527.8 C 331.8 529.5 333.5 531.3 334.7 532.7 C 335.9 534 336.5 535.8 337.7 536 C 338.8 536.2 340.5 534.7 341.6 533.7 C 342.7 532.7 344.4 531.1 344.3 530 C 344.3 528.8 342.6 528 341.4 526.7 C 340.2 525.4 338.6 523.7 337.3 522.1 C 336 520.6 334.7 519 333.6 517.5 C 332.5 516 331.7 514.6 330.8 513 C 329.9 511.5 329 509.9 328.2 508.3 C 327.4 506.7 326.7 505.1 326 503.4 C 325.3 501.7 324.7 500 324.1 498.2 C 323.5 496.4 323 494.6 322.5 492.7 C 322 490.9 321.5 489.1 321.1 487.1 C 320.7 485.1 320.2 482.9 319.8 480.7 C 319.5 478.5 319.1 476 318.8 474.1 C 318.5 472.2 318.9 470.2 318.1 469.4 C 317.2 468.6 315.3 469.2 313.9 469.4 C 312.6 469.6 310.5 469.6 309.9 470.6 Z',\n paint: 'urinary',\n },\n {\n kind: 'path',\n d: 'M 466.1 470.6 C 466.6 471.6 465.7 473.4 465.4 475.3 C 465.1 477.2 464.7 479.9 464.4 482.1 C 464 484.4 463.6 486.8 463.1 488.9 C 462.7 491 462.2 492.9 461.7 494.9 C 461.2 496.9 460.6 498.9 460 500.8 C 459.4 502.8 458.7 504.7 458 506.6 C 457.2 508.5 456.4 510.3 455.6 512.1 C 454.7 513.9 453.8 515.7 452.8 517.4 C 451.8 519.1 450.8 520.8 449.6 522.5 C 448.4 524.3 446.9 526.1 445.6 527.8 C 444.2 529.5 442.5 531.3 441.3 532.7 C 440.1 534 439.5 535.8 438.3 536 C 437.2 536.2 435.5 534.7 434.4 533.7 C 433.3 532.7 431.6 531.1 431.7 530 C 431.7 528.8 433.4 528 434.6 526.7 C 435.8 525.4 437.4 523.7 438.7 522.1 C 440 520.6 441.3 519 442.4 517.5 C 443.5 516 444.3 514.6 445.2 513 C 446.1 511.5 447 509.9 447.8 508.3 C 448.6 506.7 449.3 505.1 450 503.4 C 450.7 501.7 451.3 500 451.9 498.2 C 452.5 496.4 453 494.6 453.5 492.7 C 454 490.9 454.5 489.1 454.9 487.1 C 455.3 485.1 455.8 482.9 456.2 480.7 C 456.5 478.5 456.9 476 457.2 474.1 C 457.5 472.2 457.1 470.2 457.9 469.4 C 458.8 468.6 460.7 469.2 462.1 469.4 C 463.4 469.6 465.5 469.6 466.1 470.6 Z',\n paint: 'urinary',\n },\n {\n kind: 'path',\n d: 'M 44 470 C 60 500 70 540 76 572 C 82 604 96 628 118 644',\n paint: 'context',\n },\n {\n kind: 'path',\n d: 'M 220 470 C 204 500 194 540 188 572 C 182 604 168 628 146 644',\n paint: 'context',\n },\n { kind: 'path', d: 'M 132 617 L 132 628', paint: 'context' },\n {\n kind: 'path',\n d: 'M 127.6 635 a 4.4 4.4 0 1 0 8.8 0 a 4.4 4.4 0 1 0 -8.8 0 Z',\n paint: 'skin',\n },\n {\n kind: 'path',\n d: 'M 134.2 635 L 136.2 635 M 133.1 636.9 L 134.1 638.6 M 130.9 636.9 L 129.9 638.6 M 129.8 635 L 127.8 635 M 130.9 633.1 L 129.9 631.4 M 133.1 633.1 L 134.1 631.4',\n paint: 'context',\n },\n ],\n regions: [\n {\n id: 'fallopian-tube-r',\n labelKey: 'fallopianTube',\n side: 'right',\n group: 'reproductive',\n tissue: 'mucosa',\n shape: {\n kind: 'path',\n d: 'M 216 108.5 C 212.8 106.4 203.2 105 197 103 C 190.8 101 185 99.1 179 96.6 C 173 94.1 167.2 91 161 88.2 C 154.8 85.4 148.3 82 142 79.8 C 135.7 77.6 129.3 75.5 123 75 C 116.8 74.5 110.2 75.1 104.5 77 C 98.8 78.9 93.3 82.7 89 86.5 C 84.7 90.3 81.2 95.8 78.5 100 C 75.8 104.3 73.9 108.4 73 112 C 72.1 115.6 74.6 119.3 73.3 121.4 C 71.9 123.5 66.5 123.8 65 124.8 C 63.5 125.7 63.9 126.4 64.1 127 C 64.4 127.5 64.9 128.1 66.3 128 C 67.6 127.9 71.9 125.9 72.4 126.2 C 72.9 126.5 69.7 128.9 69.1 129.9 C 68.6 130.8 68.7 131.6 69 132 C 69.4 132.4 70.1 132.7 71.2 132.3 C 72.3 131.9 75.4 128.8 75.6 129.4 C 75.8 130 72.7 134.4 72.2 135.9 C 71.8 137.4 72.4 137.9 72.9 138.2 C 73.4 138.5 74.2 138.7 75.3 137.7 C 76.3 136.7 78.7 132 79.2 132.2 C 79.7 132.5 78.1 137.8 78.2 139.3 C 78.2 140.9 79 141.2 79.6 141.4 C 80.2 141.5 81 141.5 81.7 140.1 C 82.4 138.8 83.2 133.6 83.7 133.3 C 84.3 133.1 84.5 137.6 85 138.8 C 85.5 139.9 86.3 140.2 86.9 140.1 C 87.4 140.1 88.1 139.7 88.4 138.4 C 88.6 137.1 87.8 132.6 88.3 132.4 C 88.8 132.2 90.4 136.3 91.2 137.3 C 92.1 138.2 92.9 138.2 93.4 138 C 93.9 137.7 94.4 137.1 94.2 135.9 C 94.1 134.6 91.7 130.5 92.3 130.4 C 93 130.4 96.5 134.6 97.8 135.5 C 99.2 136.3 99.9 135.8 100.3 135.4 C 100.7 135 101.2 134.3 100.4 133 C 99.7 131.7 95.7 128 96 127.6 C 96.3 127.1 100.9 129.9 102.3 130.2 C 103.7 130.5 104.3 129.9 104.6 129.4 C 104.9 128.9 105.5 128.2 104 127.1 C 102.4 125.9 96.5 124.8 95.4 122.6 C 94.4 120.3 96.7 116.9 97.5 113.5 C 98.3 110.1 98.3 105.3 100 102 C 101.7 98.8 103.7 96 107.5 94 C 111.3 92 117.3 90.2 123 90 C 128.8 89.8 135.7 91.6 142 93 C 148.3 94.4 154.8 96.5 161 98.6 C 167.2 100.7 173 103.4 179 105.4 C 185 107.4 190.8 109.1 197 110.8 C 203.2 112.5 212.8 115.9 216 115.5 C 219.2 115.1 219.2 110.6 216 108.5 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 207 111.6 C 202.5 109.9 187.8 104.4 180 101.4 C 172.2 98.4 166.7 95.9 160 93.4 C 153.3 90.9 146.5 88.1 140 86.4 C 133.5 84.7 126.9 83.1 121 83 C 115.1 82.9 109.3 83.9 104.5 86 C 99.8 88.1 95.5 92.1 92.5 95.5 C 89.5 98.9 87.5 104.7 86.5 106.5',\n paint: 'lumen',\n },\n {\n kind: 'path',\n d: 'M 129 80.5 Q 131.5 84.5 129 89 M 117 80.5 Q 120 85 117 89.5 M 105.5 82.5 Q 109 86.5 106.5 91.5 M 95.5 90 Q 100 93 98.5 99',\n paint: 'fine',\n },\n ],\n hitShape: {\n kind: 'path',\n d: 'M 216.7 103.4 C 215.3 101.4 211.5 101.8 208 100.7 C 204.5 99.6 199.8 98.2 195.7 96.8 C 191.6 95.5 187.2 94.2 183.2 92.6 C 179.1 90.9 175.5 88.9 171.4 86.9 C 167.3 84.9 162.9 82.4 158.4 80.5 C 154 78.5 149.4 76.7 144.8 75.4 C 140.1 74 135.4 73 130.5 72.2 C 125.6 71.5 120.6 70.4 115.3 70.8 C 110 71.2 103.9 72.1 98.9 74.7 C 93.9 77.2 89 82 85.2 86.2 C 81.4 90.4 78.5 96 75.9 99.7 C 73.4 103.4 69.4 103.5 69.8 108.5 C 70.1 113.5 73.1 127.2 78.2 129.7 C 83.3 132.2 96.1 126.2 100.2 123.5 C 104.4 120.9 102 117.4 103.2 113.8 C 104.4 110.2 106.2 105.1 107.5 102 C 108.8 98.9 109.6 96.6 111.1 95.3 C 112.7 94 114.1 94.2 116.8 94.1 C 119.5 94 123.7 94.2 127.4 94.7 C 131.2 95.1 135.3 95.8 139.2 96.6 C 143.2 97.5 147 98.4 151.1 99.8 C 155.1 101.1 159.5 103 163.8 104.7 C 168.1 106.3 172.4 107.9 176.8 109.4 C 181.2 111 185.8 112.5 190.1 113.9 C 194.4 115.3 199.1 116.8 202.6 117.9 C 206.2 119 209 121.4 211.3 120.6 C 213.6 119.7 215.7 115.7 216.6 112.8 C 217.5 109.9 218.1 105.4 216.7 103.4 Z',\n },\n marker: { x: 141, y: 86 },\n },\n {\n id: 'fallopian-tube-l',\n labelKey: 'fallopianTube',\n side: 'left',\n group: 'reproductive',\n tissue: 'mucosa',\n shape: {\n kind: 'path',\n d: 'M 304 108.5 C 307.2 106.4 316.8 105 323 103 C 329.2 101 335 99.1 341 96.6 C 347 94.1 352.8 91 359 88.2 C 365.2 85.4 371.7 82 378 79.8 C 384.3 77.6 390.7 75.5 397 75 C 403.2 74.5 409.8 75.1 415.5 77 C 421.2 78.9 426.7 82.7 431 86.5 C 435.3 90.3 438.8 95.8 441.5 100 C 444.2 104.3 446.1 108.4 447 112 C 447.9 115.6 445.4 119.3 446.7 121.4 C 448.1 123.5 453.5 123.8 455 124.8 C 456.5 125.7 456.1 126.4 455.9 127 C 455.6 127.5 455.1 128.1 453.7 128 C 452.4 127.9 448.1 125.9 447.6 126.2 C 447.1 126.5 450.3 128.9 450.9 129.9 C 451.4 130.8 451.3 131.6 451 132 C 450.6 132.4 449.9 132.7 448.8 132.3 C 447.7 131.9 444.6 128.8 444.4 129.4 C 444.2 130 447.3 134.4 447.8 135.9 C 448.2 137.4 447.6 137.9 447.1 138.2 C 446.6 138.5 445.8 138.7 444.7 137.7 C 443.7 136.7 441.3 132 440.8 132.2 C 440.3 132.5 441.9 137.8 441.8 139.3 C 441.8 140.9 441 141.2 440.4 141.4 C 439.8 141.5 439 141.5 438.3 140.1 C 437.6 138.8 436.8 133.6 436.3 133.3 C 435.7 133.1 435.5 137.6 435 138.8 C 434.5 139.9 433.7 140.2 433.1 140.1 C 432.6 140.1 431.9 139.7 431.6 138.4 C 431.4 137.1 432.2 132.6 431.7 132.4 C 431.2 132.2 429.6 136.3 428.8 137.3 C 427.9 138.2 427.1 138.2 426.6 138 C 426.1 137.7 425.6 137.1 425.8 135.9 C 425.9 134.6 428.3 130.5 427.7 130.4 C 427 130.4 423.5 134.6 422.2 135.5 C 420.8 136.3 420.1 135.8 419.7 135.4 C 419.3 135 418.8 134.3 419.6 133 C 420.3 131.7 424.3 128 424 127.6 C 423.7 127.1 419.1 129.9 417.7 130.2 C 416.3 130.5 415.7 129.9 415.4 129.4 C 415.1 128.9 414.5 128.2 416 127.1 C 417.6 125.9 423.5 124.8 424.6 122.6 C 425.6 120.3 423.3 116.9 422.5 113.5 C 421.7 110.1 421.7 105.3 420 102 C 418.3 98.8 416.3 96 412.5 94 C 408.7 92 402.7 90.2 397 90 C 391.2 89.8 384.3 91.6 378 93 C 371.7 94.4 365.2 96.5 359 98.6 C 352.8 100.7 347 103.4 341 105.4 C 335 107.4 329.2 109.1 323 110.8 C 316.8 112.5 307.2 115.9 304 115.5 C 300.8 115.1 300.8 110.6 304 108.5 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 313 111.6 C 317.5 109.9 332.2 104.4 340 101.4 C 347.8 98.4 353.3 95.9 360 93.4 C 366.7 90.9 373.5 88.1 380 86.4 C 386.5 84.7 393.1 83.1 399 83 C 404.9 82.9 410.7 83.9 415.5 86 C 420.2 88.1 424.5 92.1 427.5 95.5 C 430.5 98.9 432.5 104.7 433.5 106.5',\n paint: 'lumen',\n },\n {\n kind: 'path',\n d: 'M 391 80.5 Q 388.5 84.5 391 89 M 403 80.5 Q 400 85 403 89.5 M 414.5 82.5 Q 411 86.5 413.5 91.5 M 424.5 90 Q 420 93 421.5 99',\n paint: 'fine',\n },\n ],\n hitShape: {\n kind: 'path',\n d: 'M 303.3 103.4 C 304.7 101.4 308.5 101.8 312 100.7 C 315.5 99.6 320.2 98.2 324.3 96.8 C 328.4 95.5 332.8 94.2 336.8 92.6 C 340.9 90.9 344.5 88.9 348.6 86.9 C 352.7 84.9 357.1 82.4 361.6 80.5 C 366 78.5 370.6 76.7 375.2 75.4 C 379.9 74 384.6 73 389.5 72.2 C 394.4 71.5 399.4 70.4 404.7 70.8 C 410 71.2 416.1 72.1 421.1 74.7 C 426.1 77.2 431 82 434.8 86.2 C 438.6 90.4 441.5 96 444.1 99.7 C 446.6 103.4 450.6 103.5 450.2 108.5 C 449.9 113.5 446.9 127.2 441.8 129.7 C 436.7 132.2 423.9 126.2 419.8 123.5 C 415.6 120.9 418 117.4 416.8 113.8 C 415.6 110.2 413.8 105.1 412.5 102 C 411.2 98.9 410.4 96.6 408.9 95.3 C 407.3 94 405.9 94.2 403.2 94.1 C 400.5 94 396.3 94.2 392.6 94.7 C 388.8 95.1 384.7 95.8 380.8 96.6 C 376.8 97.5 373 98.4 368.9 99.8 C 364.9 101.1 360.5 103 356.2 104.7 C 351.9 106.3 347.6 107.9 343.2 109.4 C 338.8 111 334.2 112.5 329.9 113.9 C 325.6 115.3 320.9 116.8 317.4 117.9 C 313.8 119 311 121.4 308.7 120.6 C 306.4 119.7 304.3 115.7 303.4 112.8 C 302.5 109.9 301.9 105.4 303.3 103.4 Z',\n },\n marker: { x: 379, y: 86 },\n },\n {\n id: 'ovary-r',\n labelKey: 'ovary',\n side: 'right',\n group: 'reproductive',\n tissue: 'gonad',\n shape: {\n kind: 'path',\n d: 'M 146.8 173.2 C 146.3 175.3 145.3 177.7 143.4 179.1 C 141.5 180.4 138.4 181.1 135.6 181.5 C 132.9 182 129.8 181.9 126.8 181.8 C 123.7 181.6 120.4 181.5 117.2 180.5 C 114 179.6 110.4 177.9 107.6 176.1 C 104.8 174.2 102.4 171.8 100.2 169.6 C 97.9 167.5 95.7 165.3 94 163.1 C 92.3 160.9 90.4 158.4 90 156.4 C 89.5 154.3 90.2 152.4 91.2 150.8 C 92.1 149.2 93.9 148 95.6 146.8 C 97.3 145.6 99 144.2 101.4 143.5 C 103.9 142.7 107.1 142.3 110.3 142.4 C 113.5 142.6 117.2 143.7 120.5 144.7 C 123.8 145.6 127 146.7 130.2 148 C 133.3 149.3 136.9 150.8 139.3 152.7 C 141.8 154.6 143.8 157.2 145.1 159.5 C 146.3 161.7 146.4 164.1 146.7 166.4 C 147 168.7 147.4 171.1 146.8 173.2 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 99.1 155 a 6.4 6.4 0 1 0 12.8 0 a 6.4 6.4 0 1 0 -12.8 0 Z',\n paint: 'follicle',\n },\n {\n kind: 'path',\n d: 'M 117 168.5 a 4.5 4.5 0 1 0 9 0 a 4.5 4.5 0 1 0 -9 0 Z',\n paint: 'follicle',\n },\n {\n kind: 'path',\n d: 'M 130.1 158 a 3.4 3.4 0 1 0 6.8 0 a 3.4 3.4 0 1 0 -6.8 0 Z',\n paint: 'follicle',\n },\n {\n kind: 'path',\n d: 'M 108.6 168.5 a 2.9 2.9 0 1 0 5.8 0 a 2.9 2.9 0 1 0 -5.8 0 Z',\n paint: 'follicle',\n },\n {\n kind: 'path',\n d: 'M 124 151.5 a 2.5 2.5 0 1 0 5 0 a 2.5 2.5 0 1 0 -5 0 Z',\n paint: 'follicle',\n },\n { kind: 'path', d: 'M 98 167 Q 110 177 126 176', paint: 'fine' },\n ],\n marker: { x: 119, y: 162 },\n },\n {\n id: 'ovary-l',\n labelKey: 'ovary',\n side: 'left',\n group: 'reproductive',\n tissue: 'gonad',\n shape: {\n kind: 'path',\n d: 'M 373.2 173.2 C 373.7 175.3 374.7 177.7 376.6 179.1 C 378.5 180.4 381.6 181.1 384.4 181.5 C 387.1 182 390.2 181.9 393.2 181.8 C 396.3 181.6 399.6 181.5 402.8 180.5 C 406 179.6 409.6 177.9 412.4 176.1 C 415.2 174.2 417.6 171.8 419.8 169.6 C 422.1 167.5 424.3 165.3 426 163.1 C 427.7 160.9 429.6 158.4 430 156.4 C 430.5 154.3 429.8 152.4 428.8 150.8 C 427.9 149.2 426.1 148 424.4 146.8 C 422.7 145.6 421 144.2 418.6 143.5 C 416.1 142.7 412.9 142.3 409.7 142.4 C 406.5 142.6 402.8 143.7 399.5 144.7 C 396.2 145.6 393 146.7 389.8 148 C 386.7 149.3 383.1 150.8 380.7 152.7 C 378.2 154.6 376.2 157.2 374.9 159.5 C 373.7 161.7 373.6 164.1 373.3 166.4 C 373 168.7 372.6 171.1 373.2 173.2 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 420.9 155 a 6.4 6.4 0 1 1 -12.8 0 a 6.4 6.4 0 1 1 12.8 0 Z',\n paint: 'follicle',\n },\n {\n kind: 'path',\n d: 'M 403 168.5 a 4.5 4.5 0 1 1 -9 0 a 4.5 4.5 0 1 1 9 0 Z',\n paint: 'follicle',\n },\n {\n kind: 'path',\n d: 'M 389.9 158 a 3.4 3.4 0 1 1 -6.8 0 a 3.4 3.4 0 1 1 6.8 0 Z',\n paint: 'follicle',\n },\n {\n kind: 'path',\n d: 'M 411.4 168.5 a 2.9 2.9 0 1 1 -5.8 0 a 2.9 2.9 0 1 1 5.8 0 Z',\n paint: 'follicle',\n },\n {\n kind: 'path',\n d: 'M 396 151.5 a 2.5 2.5 0 1 1 -5 0 a 2.5 2.5 0 1 1 5 0 Z',\n paint: 'follicle',\n },\n { kind: 'path', d: 'M 422 167 Q 410 177 394 176', paint: 'fine' },\n ],\n marker: { x: 401, y: 162 },\n },\n {\n id: 'vagina',\n labelKey: 'vagina',\n side: 'midline',\n group: 'reproductive',\n tissue: 'muscle',\n shape: {\n kind: 'path',\n d: 'M 218 250 C 216.5 238 226 229.5 240 229.5 L 280 229.5 C 294 229.5 303.5 238 302 250 C 300.5 272 295.5 296 293.5 320 C 292 338 292.5 352 287 360 C 279 368 241 368 233 360 C 227.5 352 228 338 226.5 320 C 224.5 296 219.5 272 218 250 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 228 256 C 227 245 232.5 240 238.5 244.5 L 281.5 244.5 C 287.5 240 293 245 292 256 C 290.5 276 286.5 298 285 320 C 284 336 284 346 280 352 C 274 357.5 246 357.5 240 352 C 236 346 236 336 235 320 C 233.5 298 229.5 276 228 256 Z',\n paint: 'mucosa',\n },\n {\n kind: 'path',\n d: 'M 232.6 270 Q 239.6 267 247.1 270.5 M 287.5 270 Q 280.5 267 273 270.5 M 233.3 279.5 Q 240.3 276.5 247.8 280 M 286.7 279.5 Q 279.7 276.5 272.2 280 M 234 289 Q 241 286 248.5 289.5 M 286 289 Q 279 286 271.5 289.5 M 234.7 298.5 Q 241.7 295.5 249.2 299 M 285.3 298.5 Q 278.3 295.5 270.8 299 M 235.4 308 Q 242.4 305 249.9 308.5 M 284.6 308 Q 277.6 305 270.1 308.5 M 236.1 317.5 Q 243.1 314.5 250.6 318 M 283.9 317.5 Q 276.9 314.5 269.4 318 M 236.8 327 Q 243.8 324 251.3 327.5 M 283.2 327 Q 276.2 324 268.7 327.5 M 237.5 336.5 Q 244.5 333.5 252 337 M 282.5 336.5 Q 275.5 333.5 268 337 M 238.3 346 Q 245.3 343 252.8 346.5 M 281.8 346 Q 274.8 343 267.3 346.5',\n paint: 'fine',\n },\n { kind: 'path', d: 'M 260 268 L 260 352', paint: 'lumen' },\n ],\n marker: { x: 260, y: 318 },\n },\n {\n id: 'cervix',\n labelKey: 'cervix',\n side: 'midline',\n group: 'reproductive',\n tissue: 'muscle',\n shape: {\n kind: 'path',\n d: 'M 238 204 C 250 207 270 207 282 204 C 285 216 286 230 284.5 242 C 282.5 254 274 261.5 260 262.5 C 246 261.5 237.5 254 235.5 242 C 234 230 235 216 238 204 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 260 207 C 255.8 219 255 233 256.2 245 C 257 252.5 258.5 257.5 260 261 C 261.5 257.5 263 252.5 263.8 245 C 265 233 264.2 219 260 207 Z',\n paint: 'mucosa',\n },\n {\n kind: 'path',\n d: 'M 257.2 216 L 251.5 211.5 M 262.8 216 L 268.5 211.5 M 256.6 227 L 250.5 222.5 M 263.4 227 L 269.5 222.5 M 256.6 238 L 251 234 M 263.4 238 L 269 234 M 257.2 248 L 252.5 245 M 262.8 248 L 267.5 245',\n paint: 'fine',\n },\n {\n kind: 'path',\n d: 'M 264.6 261.4 C 264.6 261.7 264.4 262 264 262.3 C 263.6 262.6 263 262.8 262.3 263 C 261.6 263.1 260.8 263.2 260 263.2 C 259.2 263.2 258.4 263.1 257.7 263 C 257 262.8 256.4 262.6 256 262.3 C 255.6 262 255.4 261.7 255.4 261.4 C 255.4 261.1 255.6 260.8 256 260.5 C 256.4 260.2 257 260 257.7 259.8 C 258.4 259.7 259.2 259.6 260 259.6 C 260.8 259.6 261.6 259.7 262.3 259.8 C 263 260 263.6 260.2 264 260.5 C 264.4 260.8 264.6 261.1 264.6 261.4 Z',\n paint: 'cavity',\n },\n ],\n marker: { x: 260, y: 232 },\n },\n {\n id: 'uterus',\n labelKey: 'uterus',\n side: 'midline',\n group: 'reproductive',\n tissue: 'muscle',\n shape: {\n kind: 'path',\n d: 'M 238 204 C 229 195 219 181 214.5 163 C 210.5 147 208.5 131 209.5 117 C 211 100 230 86 260 86 C 290 86 309 100 310.5 117 C 311.5 131 309.5 147 305.5 163 C 301 181 291 195 282 204 C 270 207 250 207 238 204 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 219 120 C 216.5 146 225 174 242 198 M 301 120 C 303.5 146 295 174 278 198 M 226 100 C 244 92 276 92 294 100 M 214.5 132 C 213 152 219 172 230 189 M 305.5 132 C 307 152 301 172 290 189',\n paint: 'fine',\n },\n {\n kind: 'path',\n d: 'M 223 110 C 238 118 282 118 297 110 C 295 128 285 150 275 170 C 270 181 266 192 264 201 L 256 201 C 254 192 250 181 245 170 C 235 150 225 128 223 110 Z',\n paint: 'mucosa',\n },\n {\n kind: 'path',\n d: 'M 236 118.5 C 250 123.5 270 123.5 284 118.5 C 280 134 272 150 266.5 165 C 263.5 175 261.5 186 261 194.5 L 259 194.5 C 258.5 186 256.5 175 253.5 165 C 248 150 240 134 236 118.5 Z',\n paint: 'cavity',\n },\n ],\n marker: { x: 260, y: 146 },\n },\n {\n id: 'vulva',\n labelKey: 'vulva',\n side: 'midline',\n group: 'reproductive',\n tissue: 'skin',\n shape: {\n kind: 'path',\n d: 'M 132 457 C 160 457 183.5 470 186.5 493 C 189.5 517 183.5 548 169.5 576 C 160.5 594 149.5 606 139.5 612 Q 132 616 124.5 612 C 114.5 606 103.5 594 94.5 576 C 80.5 548 74.5 517 77.5 493 C 80.5 470 104 457 132 457 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 97 486 C 113 478.5 151 478.5 167 486',\n paint: 'fine',\n },\n {\n kind: 'path',\n d: 'M 96 509 C 92.5 537 98.5 566 113 589',\n paint: 'fine',\n },\n {\n kind: 'path',\n d: 'M 168 509 C 171.5 537 165.5 566 151 589',\n paint: 'fine',\n },\n {\n kind: 'path',\n d: 'M 128.5 490 C 113 503 106 529 106.5 557 C 107 583 116.5 600 129 609',\n paint: 'crease',\n },\n {\n kind: 'path',\n d: 'M 135.5 490 C 151 503 158 529 157.5 557 C 157 583 147.5 600 135 609',\n paint: 'crease',\n },\n {\n kind: 'path',\n d: 'M 132 496.5 C 134.5 496.5 137.3 497.7 139.5 499.5 C 141.8 501.3 144 504.2 145.5 507.5 C 147 510.8 148 515.4 148.5 519.5 C 149 523.6 148.8 528 148.6 532 C 148.4 536 147.1 539.6 147.2 543.5 C 147.3 547.4 148.9 551.4 149.3 555.5 C 149.7 559.6 150.1 563.9 149.8 568 C 149.5 572.1 148.3 576.3 147.6 580 C 146.9 583.8 146.6 587.4 145.4 590.5 C 144.2 593.6 142.2 596.3 140.4 598.5 C 138.6 600.8 136.2 602.9 134.8 604 C 133.4 605.1 133 605.3 132 605.3 C 131 605.3 130.5 605 129 603.8 C 127.6 602.6 125.1 600.5 123.3 598.2 C 121.5 595.9 119.6 593.1 118.4 590 C 117.2 586.9 116.9 583.3 116.2 579.6 C 115.6 575.9 114.7 571.6 114.5 567.6 C 114.3 563.6 114.8 559.7 115.2 555.6 C 115.6 551.5 117 547.2 117.1 543.2 C 117.2 539.2 115.8 535.8 115.6 531.8 C 115.4 527.8 115.3 523.5 115.9 519.4 C 116.5 515.3 117.5 510.7 119 507.4 C 120.5 504.1 122.6 501.4 124.8 499.6 C 127 497.8 129.6 496.5 132 496.5 Z',\n paint: 'mucosa',\n },\n {\n kind: 'path',\n d: 'M 119.5 524 C 118 543 121 563 120 584',\n paint: 'fine',\n },\n {\n kind: 'path',\n d: 'M 144.5 524 C 146 543 143 563 144 584',\n paint: 'fine',\n },\n {\n kind: 'path',\n d: 'M 132 516.5 C 133.5 516.5 135.3 519.6 136.4 522.6 C 137.5 525.6 138.2 530.3 138.8 534.6 C 139.5 538.9 139.8 544.1 140.3 548.6 C 140.8 553.1 141.6 557.3 141.7 561.8 C 141.8 566.3 141.5 571.6 140.8 575.8 C 140.1 580 139 584 137.5 586.8 C 136 589.6 133.8 592.5 132 592.5 C 130.2 592.5 128 589.6 126.5 586.8 C 125 584 123.9 580 123.2 575.8 C 122.5 571.6 122.2 566.3 122.3 561.8 C 122.4 557.3 123.2 553.1 123.7 548.6 C 124.2 544.1 124.6 538.9 125.2 534.6 C 125.9 530.3 126.5 525.6 127.6 522.6 C 128.7 519.6 130.5 516.5 132 516.5 Z',\n paint: 'muscle',\n },\n {\n kind: 'path',\n d: 'M 120.5 510 C 120 508.7 119.9 503.1 121.8 500.5 C 123.7 497.9 128.6 494.6 132 494.6 C 135.4 494.6 140.3 497.9 142.2 500.5 C 144.1 503.1 144 508.7 143.5 510 C 143 511.3 140.9 508.8 139 508.2 C 137.1 507.6 134.3 506.6 132 506.6 C 129.7 506.6 126.9 507.6 125 508.2 C 123.1 508.8 121 511.3 120.5 510 Z',\n paint: 'mucosa',\n },\n {\n kind: 'path',\n d: 'M 129 511 a 3 3 0 1 0 6 0 a 3 3 0 1 0 -6 0 Z',\n paint: 'erectile',\n },\n {\n kind: 'path',\n d: 'M 128.2 514.8 Q 130 518.6 132 519.6 M 135.8 514.8 Q 134 518.6 132 519.6',\n paint: 'fine',\n },\n {\n kind: 'path',\n d: 'M 132 536.5 C 131.7 536.5 131.4 536.3 131.2 536.1 C 130.9 535.8 130.7 535.4 130.5 535 C 130.4 534.6 130.3 534 130.3 533.5 C 130.3 533 130.4 532.4 130.5 532 C 130.7 531.6 130.9 531.2 131.2 530.9 C 131.4 530.7 131.7 530.5 132 530.5 C 132.3 530.5 132.6 530.7 132.9 530.9 C 133.1 531.2 133.3 531.6 133.5 532 C 133.6 532.4 133.7 533 133.7 533.5 C 133.7 534 133.6 534.6 133.5 535 C 133.3 535.4 133.1 535.8 132.9 536.1 C 132.6 536.3 132.3 536.5 132 536.5 Z',\n paint: 'cavity',\n },\n {\n kind: 'path',\n d: 'M 132 577.5 C 131.1 577.5 130.1 577.2 129.2 576.7 C 128.4 576.3 127.5 575.5 126.9 574.6 C 126.2 573.7 125.6 572.5 125.2 571.3 C 124.8 570 124.5 568.6 124.4 567.2 C 124.3 565.8 124.4 564.2 124.6 562.8 C 124.8 561.4 125.2 560 125.6 558.8 C 126.1 557.5 126.7 556.3 127.4 555.4 C 128 554.5 128.8 553.7 129.6 553.3 C 130.3 552.8 131.2 552.5 132 552.5 C 132.8 552.5 133.7 552.8 134.4 553.3 C 135.2 553.7 136 554.5 136.6 555.4 C 137.3 556.3 137.9 557.5 138.4 558.8 C 138.8 560 139.2 561.4 139.4 562.8 C 139.6 564.2 139.7 565.8 139.6 567.2 C 139.5 568.6 139.2 570 138.8 571.3 C 138.4 572.5 137.8 573.7 137.1 574.6 C 136.5 575.5 135.6 576.3 134.8 576.7 C 133.9 577.2 132.9 577.5 132 577.5 Z',\n paint: 'opening',\n },\n {\n kind: 'path',\n d: 'M 126.2 555 Q 123.8 557.6 125 560.6 M 124.6 567 Q 123.6 570.4 125.8 573.6 M 137.8 555 Q 140.2 557.6 139 560.6 M 139.4 567 Q 140.4 570.4 138.2 573.6',\n paint: 'fine',\n },\n ],\n marker: { x: 132, y: 476 },\n },\n {\n id: 'bladder',\n labelKey: 'bladder',\n side: 'midline',\n group: 'reproductive',\n tissue: 'urinary',\n shape: {\n kind: 'path',\n d: 'M 388 462 C 421 462 447 476 449 506 C 451 536 436 561 413 577 C 404 583 398 589 397 595 L 379 595 C 378 589 372 583 363 577 C 340 561 325 536 327 506 C 329 476 355 462 388 462 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 388 472 C 415 472 437 484 438.5 508 C 440 532 427 552.5 408 567 C 400 573 394.5 579 391.5 586 L 384.5 586 C 381.5 579 376 573 368 567 C 349 552.5 336 532 337.5 508 C 339 484 361 472 388 472 Z',\n paint: 'gonad',\n },\n {\n kind: 'path',\n d: 'M 351 495 C 365 487 379 493 388 486 C 397 493 411 487 425 495 M 344.5 513 C 359.5 506 373.5 513 388 506 C 402.5 513 416.5 506 431.5 513 M 347 531 C 358 526 367 531.5 375 529 M 429 531 C 418 526 409 531.5 401 529',\n paint: 'fine',\n },\n {\n kind: 'path',\n d: 'M 362 539 L 414 539 L 388 580 Z',\n paint: 'trigone',\n },\n {\n kind: 'path',\n d: 'M 365.3 537.5 C 365.4 537.8 365.4 538.3 365.3 538.7 C 365.2 539.1 364.8 539.6 364.4 540 C 364 540.4 363.5 540.7 362.9 541 C 362.4 541.2 361.7 541.4 361.2 541.5 C 360.6 541.5 360 541.5 359.6 541.3 C 359.2 541.2 358.9 540.9 358.7 540.5 C 358.6 540.2 358.6 539.7 358.7 539.3 C 358.8 538.9 359.2 538.4 359.6 538 C 360 537.6 360.5 537.3 361.1 537 C 361.6 536.8 362.3 536.6 362.8 536.5 C 363.4 536.5 364 536.5 364.4 536.7 C 364.8 536.8 365.1 537.1 365.3 537.5 Z',\n paint: 'cavity',\n },\n {\n kind: 'path',\n d: 'M 417.3 540.5 C 417.1 540.9 416.8 541.2 416.4 541.3 C 416 541.5 415.4 541.5 414.8 541.5 C 414.3 541.4 413.6 541.2 413.1 541 C 412.5 540.7 412 540.4 411.6 540 C 411.2 539.6 410.8 539.1 410.7 538.7 C 410.6 538.3 410.6 537.8 410.7 537.5 C 410.9 537.1 411.2 536.8 411.6 536.7 C 412 536.5 412.6 536.5 413.2 536.5 C 413.7 536.6 414.4 536.8 414.9 537 C 415.5 537.3 416 537.6 416.4 538 C 416.8 538.4 417.2 538.9 417.3 539.3 C 417.4 539.7 417.4 540.2 417.3 540.5 Z',\n paint: 'cavity',\n },\n ],\n marker: { x: 388, y: 512 },\n },\n {\n id: 'urethra',\n labelKey: 'urethra',\n side: 'midline',\n group: 'reproductive',\n tissue: 'urinary',\n shape: {\n kind: 'path',\n d: 'M 380 594 L 396 594 C 396.5 610 395.5 626 393.5 640 Q 388 645 382.5 640 C 380.5 626 379.5 610 380 594 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 388 597 C 387.6 612 387.8 626 388 641',\n paint: 'lumen',\n },\n {\n kind: 'path',\n d: 'M 380.3 614 Q 388 617 395.7 614 M 380.6 622 Q 388 625 395.3 622',\n paint: 'fine',\n },\n ],\n hitShape: {\n kind: 'path',\n d: 'M 372 596 L 404 596 L 402 646 L 374 646 Z',\n },\n marker: { x: 388, y: 618 },\n },\n ],\n};\n","import type { OrganArt } from './muscle-scheme-data';\n\n// Male pelvic organs: an original frontal cutaway, informed by the NCI SEER and\n// NIDDK references in MUSCLE-ASSETS.md (no artwork traced). The bladder is\n// opened to show the trigone and ureteric orifices; the seminal vesicles show\n// beyond its base; the urethra runs continuously from the bladder neck through\n// the prostate (with the ejaculatory ducts) and the penis (between the corpora\n// cavernosa) to the meatus. The scrotum is opened to show each testis in its\n// tunica, capped by the epididymis; each vas deferens rises in the spermatic\n// cord and passes behind the bladder (dashed: hidden course, not a target).\n// Paired structures are separate regions. Anatomical right is on the viewer's\n// left. Not to scale. Generated by scripts/anatomy-art/build-organs.mjs from\n// male-pelvis.mjs: edit the source there and regenerate.\n\nexport const MALE_PELVIS: OrganArt = {\n viewBox: '0 0 520 596',\n plates: [{ x: 6, y: 10, w: 508, h: 580 }],\n backdrop: [\n {\n kind: 'path',\n d: 'M 173.6 28.5 C 173 29.8 174 32.5 174.3 35.2 C 174.6 37.9 174.9 41.7 175.3 44.9 C 175.7 48.1 176.1 51.5 176.5 54.7 C 177 57.8 177.5 60.6 178 63.5 C 178.5 66.5 179 69.5 179.6 72.4 C 180.2 75.3 180.9 78.2 181.5 81.1 C 182.2 83.9 182.9 86.6 183.6 89.3 C 184.3 92.1 185.1 94.7 185.9 97.4 C 186.8 100.2 187.6 102.8 188.7 105.7 C 189.8 108.5 191.2 111.8 192.6 114.8 C 193.9 117.8 195.6 121.2 196.8 123.8 C 198.1 126.3 198.6 129.2 199.9 130 C 201.1 130.8 203 129.5 204.4 128.8 C 205.8 128.2 208 127.5 208.1 126 C 208.3 124.5 206.3 122.3 205.2 119.8 C 204 117.3 202.3 113.9 201 111 C 199.7 108.1 198.3 105.1 197.3 102.3 C 196.2 99.6 195.5 97.3 194.7 94.7 C 193.9 92.1 193.2 89.6 192.5 87 C 191.8 84.3 191.1 81.7 190.5 78.9 C 189.8 76.2 189.2 73.4 188.6 70.6 C 188 67.7 187.4 64.8 186.9 61.9 C 186.4 59.1 185.9 56.4 185.5 53.3 C 185 50.3 184.6 47 184.2 43.8 C 183.8 40.7 183.4 37 183.1 34.3 C 182.8 31.6 183.2 28.7 182.4 27.5 C 181.5 26.4 179.4 27.2 177.9 27.3 C 176.5 27.5 174.2 27.1 173.6 28.5 Z',\n paint: 'urinary',\n },\n {\n kind: 'path',\n d: 'M 346.4 28.5 C 347 29.8 346 32.5 345.7 35.2 C 345.4 37.9 345.1 41.7 344.7 44.9 C 344.3 48.1 343.9 51.5 343.5 54.7 C 343 57.8 342.5 60.6 342 63.5 C 341.5 66.5 341 69.5 340.4 72.4 C 339.8 75.3 339.1 78.2 338.5 81.1 C 337.8 83.9 337.1 86.6 336.4 89.3 C 335.7 92.1 334.9 94.7 334.1 97.4 C 333.2 100.2 332.4 102.8 331.3 105.7 C 330.2 108.5 328.8 111.8 327.4 114.8 C 326.1 117.8 324.4 121.2 323.2 123.8 C 321.9 126.3 321.4 129.2 320.1 130 C 318.9 130.8 317 129.5 315.6 128.8 C 314.2 128.2 312 127.5 311.9 126 C 311.7 124.5 313.7 122.3 314.8 119.8 C 316 117.3 317.7 113.9 319 111 C 320.3 108.1 321.7 105.1 322.7 102.3 C 323.8 99.6 324.5 97.3 325.3 94.7 C 326.1 92.1 326.8 89.6 327.5 87 C 328.2 84.3 328.9 81.7 329.5 78.9 C 330.2 76.2 330.8 73.4 331.4 70.6 C 332 67.7 332.6 64.8 333.1 61.9 C 333.6 59.1 334.1 56.4 334.5 53.3 C 335 50.3 335.4 47 335.8 43.8 C 336.2 40.7 336.6 37 336.9 34.3 C 337.2 31.6 336.8 28.7 337.6 27.5 C 338.5 26.4 340.6 27.2 342.1 27.3 C 343.5 27.5 345.8 27.1 346.4 28.5 Z',\n paint: 'urinary',\n },\n {\n kind: 'path',\n d: 'M 214 284 C 236 280 284 280 306 284 L 306 293 C 284 289 236 289 214 293 Z',\n paint: 'membrane',\n },\n ],\n regions: [\n {\n id: 'seminal-vesicle-r',\n labelKey: 'seminalVesicle',\n side: 'right',\n group: 'reproductive',\n tissue: 'gland',\n shape: {\n kind: 'path',\n d: 'M 251.5 215.4 C 251.2 213.5 250.9 213.6 250.1 212.9 C 249.4 212.3 248.3 212 247.2 211.6 C 246.1 211.2 244.6 211.2 243.5 210.6 C 242.3 210 241.3 209.1 240.4 208.1 C 239.6 207.1 239.2 205.4 238.4 204.5 C 237.6 203.6 236.8 202.9 235.8 202.4 C 234.7 202 233.3 202.2 232.1 201.9 C 231 201.6 229.8 201.2 228.9 200.4 C 228 199.6 227.6 198.1 226.8 197 C 226.1 195.9 225.6 194.4 224.6 193.8 C 223.6 193.2 222.1 193.3 220.9 193.2 C 219.6 193.1 218.1 193.4 217 193.1 C 216 192.7 215.2 191.8 214.5 190.9 C 213.8 190 213.4 188.6 212.7 187.9 C 212 187.2 211.2 186.8 210.2 186.7 C 209.2 186.6 207.7 187.3 206.6 187.2 C 205.5 187.1 204.4 186.9 203.6 186.3 C 202.8 185.8 202.4 184.6 201.8 184 C 201.2 183.3 200.7 182.6 200 182.4 C 199.3 182.2 200 182.4 197.6 182.9 C 195.3 183.4 187.4 183 185.9 185.4 C 184.3 187.8 187.9 194.8 188.4 197.1 C 188.9 199.5 188.5 198.9 188.9 199.5 C 189.4 200 190.2 200.2 191.1 200.5 C 192 200.8 193.2 200.7 194.1 201.2 C 195 201.8 195.7 202.6 196.3 203.7 C 196.9 204.7 197.1 206.4 197.8 207.3 C 198.5 208.2 199.4 208.8 200.5 209.1 C 201.5 209.5 203 209.1 204.2 209.3 C 205.3 209.4 206.5 209.6 207.3 210.3 C 208.2 211 208.6 212.4 209.3 213.4 C 210 214.4 210.5 215.7 211.4 216.2 C 212.4 216.7 213.8 216.5 215 216.5 C 216.3 216.6 217.8 216.3 219 216.7 C 220.1 217.1 220.9 218.1 221.8 219 C 222.7 219.8 223.2 221.3 224.2 222 C 225.2 222.8 226.3 223.3 227.6 223.5 C 228.9 223.7 230.7 223.3 232 223.5 C 233.4 223.7 234.8 224.1 236 224.7 C 237.1 225.3 238 226.5 239 227.3 C 239.9 228 240.8 228.7 241.8 228.9 C 242.7 229.2 242.8 229.4 244.5 228.6 C 246.2 227.8 250.8 226.3 252 224.1 C 253.1 221.9 251.8 217.2 251.5 215.4 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 238 214 Q 232 206 226 212 M 224 206 Q 218 198 212 204 M 210 199 Q 205 192 199 196',\n paint: 'fine',\n },\n ],\n marker: { x: 206, y: 203 },\n },\n {\n id: 'seminal-vesicle-l',\n labelKey: 'seminalVesicle',\n side: 'left',\n group: 'reproductive',\n tissue: 'gland',\n shape: {\n kind: 'path',\n d: 'M 268.5 215.4 C 268.8 213.5 269.1 213.6 269.9 212.9 C 270.6 212.3 271.7 212 272.8 211.6 C 273.9 211.2 275.4 211.2 276.5 210.6 C 277.7 210 278.7 209.1 279.6 208.1 C 280.4 207.1 280.8 205.4 281.6 204.5 C 282.4 203.6 283.2 202.9 284.2 202.4 C 285.3 202 286.7 202.2 287.9 201.9 C 289 201.6 290.2 201.2 291.1 200.4 C 292 199.6 292.4 198.1 293.2 197 C 293.9 195.9 294.4 194.4 295.4 193.8 C 296.4 193.2 297.9 193.3 299.1 193.2 C 300.4 193.1 301.9 193.4 303 193.1 C 304 192.7 304.8 191.8 305.5 190.9 C 306.2 190 306.6 188.6 307.3 187.9 C 308 187.2 308.8 186.8 309.8 186.7 C 310.8 186.6 312.3 187.3 313.4 187.2 C 314.5 187.1 315.6 186.9 316.4 186.3 C 317.2 185.8 317.6 184.6 318.2 184 C 318.8 183.3 319.3 182.6 320 182.4 C 320.7 182.2 320 182.4 322.4 182.9 C 324.7 183.4 332.6 183 334.1 185.4 C 335.7 187.8 332.1 194.8 331.6 197.1 C 331.1 199.5 331.5 198.9 331.1 199.5 C 330.6 200 329.8 200.2 328.9 200.5 C 328 200.8 326.8 200.7 325.9 201.2 C 325 201.8 324.3 202.6 323.7 203.7 C 323.1 204.7 322.9 206.4 322.2 207.3 C 321.5 208.2 320.6 208.8 319.5 209.1 C 318.5 209.5 317 209.1 315.8 209.3 C 314.7 209.4 313.5 209.6 312.7 210.3 C 311.8 211 311.4 212.4 310.7 213.4 C 310 214.4 309.5 215.7 308.6 216.2 C 307.6 216.7 306.2 216.5 305 216.5 C 303.7 216.6 302.2 216.3 301 216.7 C 299.9 217.1 299.1 218.1 298.2 219 C 297.3 219.8 296.8 221.3 295.8 222 C 294.8 222.8 293.7 223.3 292.4 223.5 C 291.1 223.7 289.3 223.3 288 223.5 C 286.6 223.7 285.2 224.1 284 224.7 C 282.9 225.3 282 226.5 281 227.3 C 280.1 228 279.2 228.7 278.2 228.9 C 277.3 229.2 277.2 229.4 275.5 228.6 C 273.8 227.8 269.2 226.3 268 224.1 C 266.9 221.9 268.2 217.2 268.5 215.4 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 282 214 Q 288 206 294 212 M 296 206 Q 302 198 308 204 M 310 199 Q 315 192 321 196',\n paint: 'fine',\n },\n ],\n marker: { x: 314, y: 203 },\n },\n {\n id: 'bladder',\n labelKey: 'bladder',\n side: 'midline',\n group: 'reproductive',\n tissue: 'urinary',\n shape: {\n kind: 'path',\n d: 'M 260 66 C 304 66 337 90 339 128 C 341 160 324 186 298 200 C 286 206 278 211 274 220 L 246 220 C 242 211 234 206 222 200 C 196 186 179 160 181 128 C 183 90 216 66 260 66 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 260 77 C 298 77 327 97 328.5 129 C 330 157 315 179 293 191 C 282 197 274 203 270 211 L 250 211 C 246 203 238 197 227 191 C 205 179 190 157 191.5 129 C 193 97 222 77 260 77 Z',\n paint: 'gonad',\n },\n {\n kind: 'path',\n d: 'M 212 104 C 228 96 246 103 260 95 C 274 103 292 96 308 104 M 202 124 C 220 117 240 124 260 116 C 280 124 300 117 318 124 M 204 146 C 216 141 226 146 236 143 M 316 146 C 304 141 294 146 284 143',\n paint: 'fine',\n },\n {\n kind: 'path',\n d: 'M 233 170 L 287 170 L 260 207 Z',\n paint: 'trigone',\n },\n {\n kind: 'path',\n d: 'M 236.4 168.4 C 236.6 168.7 236.6 169.2 236.5 169.7 C 236.3 170.1 236 170.6 235.6 171 C 235.1 171.4 234.5 171.8 234 172.1 C 233.4 172.4 232.7 172.6 232.1 172.6 C 231.5 172.7 230.9 172.6 230.5 172.4 C 230.1 172.3 229.7 172 229.6 171.6 C 229.4 171.3 229.4 170.8 229.5 170.3 C 229.7 169.9 230 169.4 230.4 169 C 230.9 168.6 231.5 168.2 232 167.9 C 232.6 167.6 233.3 167.4 233.9 167.4 C 234.5 167.3 235.1 167.4 235.5 167.6 C 235.9 167.7 236.3 168 236.4 168.4 Z',\n paint: 'cavity',\n },\n {\n kind: 'path',\n d: 'M 290.4 171.6 C 290.3 172 289.9 172.3 289.5 172.4 C 289.1 172.6 288.5 172.7 287.9 172.6 C 287.3 172.6 286.6 172.4 286 172.1 C 285.5 171.8 284.9 171.4 284.4 171 C 284 170.6 283.7 170.1 283.5 169.7 C 283.4 169.2 283.4 168.7 283.6 168.4 C 283.7 168 284.1 167.7 284.5 167.6 C 284.9 167.4 285.5 167.3 286.1 167.4 C 286.7 167.4 287.4 167.6 288 167.9 C 288.5 168.2 289.1 168.6 289.6 169 C 290 169.4 290.3 169.9 290.5 170.3 C 290.6 170.8 290.6 171.3 290.4 171.6 Z',\n paint: 'cavity',\n },\n ],\n marker: { x: 260, y: 124 },\n },\n {\n id: 'prostate',\n labelKey: 'prostate',\n side: 'midline',\n group: 'reproductive',\n tissue: 'gland',\n shape: {\n kind: 'path',\n d: 'M 230 220 C 245 214 275 214 290 220 C 301 226 305 242 299 256 C 292 271 277 281 260 283 C 243 281 228 271 221 256 C 215 242 219 226 230 220 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 236 232 Q 230 244 236 258 M 284 232 Q 290 244 284 258 M 226 240 Q 228 252 238 266 M 294 240 Q 292 252 282 266 M 244 271 Q 252 276 260 277 Q 268 276 276 271',\n paint: 'fine',\n },\n {\n kind: 'path',\n d: 'M 244 222 C 249 232 253 242 257.5 252 M 276 222 C 271 232 267 242 262.5 252',\n paint: 'lumen',\n },\n {\n kind: 'path',\n d: 'M 260 257.2 C 259.6 257.2 259.1 257 258.8 256.8 C 258.5 256.5 258.1 256.1 257.9 255.6 C 257.7 255.1 257.6 254.5 257.6 254 C 257.6 253.5 257.7 252.9 257.9 252.4 C 258.1 251.9 258.5 251.5 258.8 251.2 C 259.1 251 259.6 250.8 260 250.8 C 260.4 250.8 260.9 251 261.2 251.2 C 261.5 251.5 261.9 251.9 262.1 252.4 C 262.3 252.9 262.4 253.5 262.4 254 C 262.4 254.5 262.3 255.1 262.1 255.6 C 261.9 256.1 261.5 256.5 261.2 256.8 C 260.9 257 260.4 257.2 260 257.2 Z',\n paint: 'mucosa',\n },\n ],\n marker: { x: 238, y: 247 },\n },\n {\n id: 'scrotum',\n labelKey: 'scrotum',\n side: 'midline',\n group: 'reproductive',\n tissue: 'skin',\n shape: {\n kind: 'path',\n d: 'M 200 344 C 224 336 296 336 320 344 C 352 358 370 402 370 452 C 370 508 348 552 312 558 C 293 561 276 555 260 546 C 244 555 227 561 208 558 C 172 552 150 508 150 452 C 150 402 168 358 200 344 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 205 355 C 227 348 293 348 315 355 C 343 368 359 407 359 452 C 359 502 340 540 310 546 C 293 549 277 543 260 535 C 243 543 227 549 210 546 C 180 540 161 502 161 452 C 161 407 177 368 205 355 Z',\n paint: 'fascia',\n },\n {\n kind: 'path',\n d: 'M 218.6 501.3 C 214.8 502 210.4 501.8 206.5 500.8 C 202.6 499.7 198.6 497.7 195.1 495 C 191.7 492.4 188.5 488.7 185.9 484.8 C 183.4 480.8 181.4 476 180 471.2 C 178.7 466.4 178 461.1 178 456.1 C 177.9 451.1 178.6 445.8 179.8 441.2 C 181 436.5 182.9 432 185.1 428.3 C 187.3 424.7 190.2 421.4 193.3 419.1 C 196.3 416.9 199.8 415.3 203.4 414.7 C 206.9 414 210.7 414.3 214.4 415.4 C 218 416.5 221.8 418.6 225.2 421.3 C 228.6 424 231.9 427.6 234.6 431.5 C 237.3 435.4 239.7 440.2 241.4 444.9 C 243.1 449.6 244.2 454.9 244.6 459.8 C 245 464.8 244.7 470 243.7 474.6 C 242.7 479.2 240.9 483.7 238.6 487.4 C 236.3 491 233.2 494.3 229.8 496.7 C 226.5 499 222.5 500.6 218.6 501.3 Z',\n paint: 'membrane',\n },\n {\n kind: 'path',\n d: 'M 301.4 501.3 C 305.2 502 309.6 501.8 313.5 500.8 C 317.4 499.7 321.4 497.7 324.9 495 C 328.3 492.4 331.5 488.7 334.1 484.8 C 336.6 480.8 338.6 476 340 471.2 C 341.3 466.4 342 461.1 342 456.1 C 342.1 451.1 341.4 445.8 340.2 441.2 C 339 436.5 337.1 432 334.9 428.3 C 332.7 424.7 329.8 421.4 326.7 419.1 C 323.7 416.9 320.2 415.3 316.6 414.7 C 313.1 414 309.3 414.3 305.6 415.4 C 302 416.5 298.2 418.6 294.8 421.3 C 291.4 424 288.1 427.6 285.4 431.5 C 282.7 435.4 280.3 440.2 278.6 444.9 C 276.9 449.6 275.8 454.9 275.4 459.8 C 275 464.8 275.3 470 276.3 474.6 C 277.3 479.2 279.1 483.7 281.4 487.4 C 283.7 491 286.8 494.3 290.2 496.7 C 293.5 499 297.5 500.6 301.4 501.3 Z',\n paint: 'membrane',\n },\n {\n kind: 'path',\n d: 'M 260 535 C 259 522 261 504 260 482',\n paint: 'crease',\n },\n {\n kind: 'path',\n d: 'M 170 512 Q 178 521 188 524 M 165 488 Q 170 497 178 501 M 186 533 Q 196 539 207 539 M 350 512 Q 342 521 332 524 M 355 488 Q 350 497 342 501 M 334 533 Q 324 539 313 539',\n paint: 'fine',\n },\n ],\n marker: { x: 260, y: 513 },\n },\n {\n id: 'vas-deferens-r',\n labelKey: 'vasDeferens',\n side: 'right',\n group: 'reproductive',\n tissue: 'duct',\n shape: {\n kind: 'path',\n d: 'M 207.9 504 C 209 503.9 210 502.7 211.5 501.7 C 213 500.7 215.2 499.6 216.9 497.9 C 218.7 496.2 220.6 494.2 222 491.8 C 223.5 489.3 224.5 486.3 225.6 483.2 C 226.6 480.1 227.6 476.5 228.4 473.1 C 229.2 469.6 229.9 466.1 230.5 462.6 C 231 459 231.5 455.5 231.8 451.9 C 232.1 448.3 232.3 444.6 232.4 440.9 C 232.6 437.3 232.6 433.6 232.6 430 C 232.6 426.4 232.5 422.8 232.3 419.2 C 232.2 415.6 231.9 412 231.6 408.4 C 231.3 404.8 231 401.2 230.6 397.6 C 230.2 394 229.8 390.4 229.3 386.8 C 228.8 383.1 228.2 379.5 227.6 375.9 C 227 372.3 226.4 368.7 225.6 365.2 C 224.9 361.7 224.1 358.3 223.2 354.9 C 222.4 351.6 221.4 348.3 220.5 344.9 C 219.5 341.6 218.5 338.3 217.5 334.9 C 216.5 331.6 215.5 328.3 214.4 324.9 C 213.4 321.6 212.3 318.3 211.1 314.9 C 210 311.6 208.8 308.2 207.6 304.7 C 206.3 301.2 205.1 297.7 203.7 294.1 C 202.4 290.5 201 286.8 199.7 283.2 C 198.3 279.6 197 276 195.6 272.6 C 194.3 269.1 192.8 265.7 191.5 262.4 C 190.1 259.1 188.6 255.9 187.3 252.6 C 186 249.4 184.8 246.1 183.7 242.8 C 182.6 239.4 181.6 235.9 180.6 232.4 C 179.6 228.9 178.7 225.2 177.9 221.7 C 177.2 218.2 176.5 214.7 175.9 211.3 C 175.4 207.9 174.9 204.6 174.6 201.3 C 174.2 198 173.9 194.7 173.9 191.5 C 173.8 188.4 173.7 185.5 174 182.4 C 174.3 179.3 174.9 176 175.5 172.9 C 176.2 169.8 177.3 166.3 178 163.6 C 178.7 161 180.1 158.6 179.9 157.1 C 179.6 155.6 177.7 154.8 176.4 154.5 C 175.1 154.1 173.2 153.7 172.1 154.9 C 171.1 156.1 171 158.8 170.3 161.5 C 169.5 164.3 168.4 167.9 167.7 171.2 C 167 174.6 166.3 178.2 166 181.6 C 165.7 185.1 165.8 188.3 165.9 191.7 C 166 195.2 166.2 198.6 166.6 202.1 C 167 205.6 167.5 209.1 168.1 212.7 C 168.7 216.2 169.4 219.8 170.2 223.5 C 171 227.1 172 230.8 173 234.5 C 174 238.1 175.1 241.7 176.3 245.2 C 177.5 248.7 178.8 252.1 180.1 255.5 C 181.4 258.9 182.9 262.1 184.3 265.4 C 185.6 268.7 187 272 188.4 275.4 C 189.7 278.9 191.1 282.4 192.5 286 C 193.8 289.5 195.2 293.2 196.6 296.7 C 197.9 300.3 199.2 303.8 200.4 307.3 C 201.7 310.7 202.8 314 204 317.4 C 205.1 320.7 206.3 323.9 207.3 327.2 C 208.4 330.5 209.5 333.8 210.5 337.1 C 211.5 340.4 212.4 343.7 213.4 346.9 C 214.3 350.2 215.2 353.5 216 356.8 C 216.9 360.1 217.7 363.4 218.4 366.8 C 219.1 370.2 219.8 373.6 220.4 377.1 C 221 380.6 221.6 384.2 222.1 387.8 C 222.6 391.3 223 394.9 223.4 398.4 C 223.8 401.9 224.2 405.4 224.4 409 C 224.7 412.5 225 416 225.1 419.5 C 225.3 423 225.4 426.5 225.4 430 C 225.4 433.6 225.4 437.1 225.3 440.7 C 225.2 444.2 225 447.9 224.7 451.3 C 224.4 454.8 224.1 458.1 223.5 461.4 C 223 464.8 222.3 468.2 221.6 471.5 C 220.8 474.7 219.9 478.2 218.9 481 C 218 483.8 217.1 486.3 216 488.2 C 214.8 490.2 213.6 491.5 212.2 492.8 C 210.8 494 209 495 207.6 495.9 C 206.3 496.7 204.7 497 204.1 498 C 203.6 499 203.9 500.9 204.5 501.9 C 205.1 502.9 206.7 504 207.9 504 Z',\n },\n hitShape: {\n kind: 'path',\n d: 'M 238 429.6 C 239.4 427.6 237.8 424.6 237.6 421.2 C 237.4 417.9 237.2 413.3 236.9 409.2 C 236.7 405.2 236.3 401 236 397.1 C 235.6 393.2 235.1 389.7 234.6 386 C 234.1 382.3 233.5 378.6 232.9 375 C 232.2 371.3 231.6 367.7 230.8 364.1 C 230.1 360.6 229.2 357.1 228.4 353.6 C 227.5 350.2 226.5 346.8 225.6 343.5 C 224.6 340.1 223.6 336.7 222.6 333.4 C 221.6 330 220.5 326.7 219.4 323.3 C 218.4 319.9 217.2 316.6 216.1 313.2 C 214.9 309.8 213.7 306.5 212.5 303 C 211.2 299.5 209.9 295.9 208.6 292.3 C 207.3 288.7 205.9 285 204.5 281.4 C 203.1 277.8 201.7 274.2 200.4 270.7 C 199 267.2 197.5 263.8 196.2 260.5 C 194.8 257.2 193.3 254 192.1 250.8 C 190.8 247.6 189.6 244.4 188.5 241.2 C 187.4 237.9 186.4 234.4 185.5 231 C 184.5 227.6 183.6 224 182.9 220.6 C 182.1 217.2 181.4 213.8 180.9 210.5 C 180.3 207.2 179.9 204 179.5 200.8 C 179.2 197.6 178.9 194.3 178.8 191.4 C 178.8 188.4 178.7 185.7 179 182.8 C 179.2 179.9 179.8 176.9 180.4 174 C 181.1 171 182.1 167.5 182.8 165 C 183.5 162.4 185.7 160.4 184.7 158.4 C 183.6 156.5 179.6 154.2 176.7 153.4 C 173.8 152.6 169.2 152.4 167.3 153.6 C 165.5 154.7 166.2 157.5 165.5 160.2 C 164.7 163 163.6 166.7 162.8 170.2 C 162.1 173.7 161.4 177.6 161 181.2 C 160.7 184.8 160.8 188.3 160.9 191.9 C 161 195.5 161.3 199.1 161.6 202.6 C 162 206.2 162.5 209.8 163.1 213.5 C 163.7 217.1 164.5 220.8 165.3 224.6 C 166.1 228.3 167.1 232.1 168.1 235.8 C 169.2 239.5 170.3 243.3 171.5 246.8 C 172.7 250.4 174 254 175.3 257.4 C 176.7 260.8 178.2 264.1 179.5 267.4 C 180.9 270.7 182.3 273.9 183.6 277.3 C 185 280.7 186.3 284.3 187.7 287.8 C 189 291.3 190.4 295 191.7 298.5 C 193 302.1 194.3 305.6 195.5 309 C 196.7 312.4 197.9 315.8 199 319.1 C 200.2 322.4 201.3 325.6 202.3 328.9 C 203.4 332.1 204.4 335.4 205.4 338.6 C 206.4 341.9 207.3 345.1 208.3 348.4 C 209.2 351.6 210.1 354.8 210.9 358.1 C 211.7 361.3 212.5 364.5 213.2 367.9 C 213.9 371.2 214.5 374.6 215.1 378 C 215.7 381.5 216.3 385 216.8 388.5 C 217.2 392 217.7 395.3 218 398.9 C 218.4 402.6 218.7 406.6 219 410.5 C 219.2 414.3 219.4 418.8 219.6 422.2 C 219.8 425.5 218.4 428.7 220 430.4 C 221.6 432.2 226.1 432.8 229.1 432.7 C 232.1 432.5 236.6 431.5 238 429.6 Z',\n },\n marker: { x: 203, y: 300 },\n },\n {\n id: 'vas-deferens-l',\n labelKey: 'vasDeferens',\n side: 'left',\n group: 'reproductive',\n tissue: 'duct',\n shape: {\n kind: 'path',\n d: 'M 312.1 504 C 311 503.9 310 502.7 308.5 501.7 C 307 500.7 304.8 499.6 303.1 497.9 C 301.3 496.2 299.4 494.2 298 491.8 C 296.5 489.3 295.5 486.3 294.4 483.2 C 293.4 480.1 292.4 476.5 291.6 473.1 C 290.8 469.6 290.1 466.1 289.5 462.6 C 289 459 288.5 455.5 288.2 451.9 C 287.9 448.3 287.7 444.6 287.6 440.9 C 287.4 437.3 287.4 433.6 287.4 430 C 287.4 426.4 287.5 422.8 287.7 419.2 C 287.8 415.6 288.1 412 288.4 408.4 C 288.7 404.8 289 401.2 289.4 397.6 C 289.8 394 290.2 390.4 290.7 386.8 C 291.2 383.1 291.8 379.5 292.4 375.9 C 293 372.3 293.6 368.7 294.4 365.2 C 295.1 361.7 295.9 358.3 296.8 354.9 C 297.6 351.6 298.6 348.3 299.5 344.9 C 300.5 341.6 301.5 338.3 302.5 334.9 C 303.5 331.6 304.5 328.3 305.6 324.9 C 306.6 321.6 307.7 318.3 308.9 314.9 C 310 311.6 311.2 308.2 312.4 304.7 C 313.7 301.2 314.9 297.7 316.3 294.1 C 317.6 290.5 319 286.8 320.3 283.2 C 321.7 279.6 323 276 324.4 272.6 C 325.7 269.1 327.2 265.7 328.5 262.4 C 329.9 259.1 331.4 255.9 332.7 252.6 C 334 249.4 335.2 246.1 336.3 242.8 C 337.4 239.4 338.4 235.9 339.4 232.4 C 340.4 228.9 341.3 225.2 342.1 221.7 C 342.8 218.2 343.5 214.7 344.1 211.3 C 344.6 207.9 345.1 204.6 345.4 201.3 C 345.8 198 346.1 194.7 346.1 191.5 C 346.2 188.4 346.3 185.5 346 182.4 C 345.7 179.3 345.1 176 344.5 172.9 C 343.8 169.8 342.7 166.3 342 163.6 C 341.3 161 339.9 158.6 340.1 157.1 C 340.4 155.6 342.3 154.8 343.6 154.5 C 344.9 154.1 346.8 153.7 347.9 154.9 C 348.9 156.1 349 158.8 349.7 161.5 C 350.5 164.3 351.6 167.9 352.3 171.2 C 353 174.6 353.7 178.2 354 181.6 C 354.3 185.1 354.2 188.3 354.1 191.7 C 354 195.2 353.8 198.6 353.4 202.1 C 353 205.6 352.5 209.1 351.9 212.7 C 351.3 216.2 350.6 219.8 349.8 223.5 C 349 227.1 348 230.8 347 234.5 C 346 238.1 344.9 241.7 343.7 245.2 C 342.5 248.7 341.2 252.1 339.9 255.5 C 338.6 258.9 337.1 262.1 335.7 265.4 C 334.4 268.7 333 272 331.6 275.4 C 330.3 278.9 328.9 282.4 327.5 286 C 326.2 289.5 324.8 293.2 323.4 296.7 C 322.1 300.3 320.8 303.8 319.6 307.3 C 318.3 310.7 317.2 314 316 317.4 C 314.9 320.7 313.7 323.9 312.7 327.2 C 311.6 330.5 310.5 333.8 309.5 337.1 C 308.5 340.4 307.6 343.7 306.6 346.9 C 305.7 350.2 304.8 353.5 304 356.8 C 303.1 360.1 302.3 363.4 301.6 366.8 C 300.9 370.2 300.2 373.6 299.6 377.1 C 299 380.6 298.4 384.2 297.9 387.8 C 297.4 391.3 297 394.9 296.6 398.4 C 296.2 401.9 295.8 405.4 295.6 409 C 295.3 412.5 295 416 294.9 419.5 C 294.7 423 294.6 426.5 294.6 430 C 294.6 433.6 294.6 437.1 294.7 440.7 C 294.8 444.2 295 447.9 295.3 451.3 C 295.6 454.8 295.9 458.1 296.5 461.4 C 297 464.8 297.7 468.2 298.4 471.5 C 299.2 474.7 300.1 478.2 301.1 481 C 302 483.8 302.9 486.3 304 488.2 C 305.2 490.2 306.4 491.5 307.8 492.8 C 309.2 494 311 495 312.4 495.9 C 313.7 496.7 315.3 497 315.9 498 C 316.4 499 316.1 500.9 315.5 501.9 C 314.9 502.9 313.3 504 312.1 504 Z',\n },\n hitShape: {\n kind: 'path',\n d: 'M 282 429.6 C 280.6 427.6 282.2 424.6 282.4 421.2 C 282.6 417.9 282.8 413.3 283.1 409.2 C 283.3 405.2 283.7 401 284 397.1 C 284.4 393.2 284.9 389.7 285.4 386 C 285.9 382.3 286.5 378.6 287.1 375 C 287.8 371.3 288.4 367.7 289.2 364.1 C 289.9 360.6 290.8 357.1 291.6 353.6 C 292.5 350.2 293.5 346.8 294.4 343.5 C 295.4 340.1 296.4 336.7 297.4 333.4 C 298.4 330 299.5 326.7 300.6 323.3 C 301.6 319.9 302.8 316.6 303.9 313.2 C 305.1 309.8 306.3 306.5 307.5 303 C 308.8 299.5 310.1 295.9 311.4 292.3 C 312.7 288.7 314.1 285 315.5 281.4 C 316.9 277.8 318.3 274.2 319.6 270.7 C 321 267.2 322.5 263.8 323.8 260.5 C 325.2 257.2 326.7 254 327.9 250.8 C 329.2 247.6 330.4 244.4 331.5 241.2 C 332.6 237.9 333.6 234.4 334.5 231 C 335.5 227.6 336.4 224 337.1 220.6 C 337.9 217.2 338.6 213.8 339.1 210.5 C 339.7 207.2 340.1 204 340.5 200.8 C 340.8 197.6 341.1 194.3 341.2 191.4 C 341.2 188.4 341.3 185.7 341 182.8 C 340.8 179.9 340.2 176.9 339.6 174 C 338.9 171 337.9 167.5 337.2 165 C 336.5 162.4 334.3 160.4 335.3 158.4 C 336.4 156.5 340.4 154.2 343.3 153.4 C 346.2 152.6 350.8 152.4 352.7 153.6 C 354.5 154.7 353.8 157.5 354.5 160.2 C 355.3 163 356.4 166.7 357.2 170.2 C 357.9 173.7 358.6 177.6 359 181.2 C 359.3 184.8 359.2 188.3 359.1 191.9 C 359 195.5 358.7 199.1 358.4 202.6 C 358 206.2 357.5 209.8 356.9 213.5 C 356.3 217.1 355.5 220.8 354.7 224.6 C 353.9 228.3 352.9 232.1 351.9 235.8 C 350.8 239.5 349.7 243.3 348.5 246.8 C 347.3 250.4 346 254 344.7 257.4 C 343.3 260.8 341.8 264.1 340.5 267.4 C 339.1 270.7 337.7 273.9 336.4 277.3 C 335 280.7 333.7 284.3 332.3 287.8 C 331 291.3 329.6 295 328.3 298.5 C 327 302.1 325.7 305.6 324.5 309 C 323.3 312.4 322.1 315.8 321 319.1 C 319.8 322.4 318.7 325.6 317.7 328.9 C 316.6 332.1 315.6 335.4 314.6 338.6 C 313.6 341.9 312.7 345.1 311.7 348.4 C 310.8 351.6 309.9 354.8 309.1 358.1 C 308.3 361.3 307.5 364.5 306.8 367.9 C 306.1 371.2 305.5 374.6 304.9 378 C 304.3 381.5 303.7 385 303.2 388.5 C 302.8 392 302.3 395.3 302 398.9 C 301.6 402.6 301.3 406.6 301 410.5 C 300.8 414.3 300.6 418.8 300.4 422.2 C 300.2 425.5 301.6 428.7 300 430.4 C 298.4 432.2 293.9 432.8 290.9 432.7 C 287.9 432.5 283.4 431.5 282 429.6 Z',\n },\n marker: { x: 317, y: 300 },\n },\n {\n id: 'testis-r',\n labelKey: 'testis',\n side: 'right',\n group: 'reproductive',\n tissue: 'gonad',\n shape: {\n kind: 'path',\n d: 'M 218.1 492.5 C 215.4 492.9 212.6 492.8 209.9 492.2 C 207.2 491.5 204.4 490.2 202 488.5 C 199.5 486.8 197.1 484.5 195.2 481.9 C 193.2 479.2 191.5 476.1 190.2 472.8 C 188.9 469.6 187.9 465.9 187.4 462.3 C 186.9 458.8 186.7 455 187 451.4 C 187.3 447.9 188 444.3 189 441.2 C 190 438 191.5 435 193.1 432.6 C 194.8 430.1 196.8 428 198.9 426.5 C 201.1 425 203.5 424 205.9 423.5 C 208.4 423.1 211 423.2 213.5 423.9 C 216 424.6 218.7 425.9 221.1 427.6 C 223.5 429.4 225.8 431.7 227.9 434.3 C 229.9 436.9 231.8 440 233.2 443.3 C 234.7 446.5 235.9 450.1 236.6 453.7 C 237.3 457.2 237.7 461 237.6 464.5 C 237.5 468 236.9 471.5 236 474.7 C 235 477.8 233.6 480.8 231.9 483.2 C 230.2 485.7 228 487.8 225.7 489.4 C 223.4 490.9 220.7 492 218.1 492.5 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 217.3 488 C 215.1 488.4 212.7 488.3 210.4 487.7 C 208.1 487.2 205.8 486 203.7 484.5 C 201.6 483 199.6 481 198 478.7 C 196.3 476.4 194.8 473.6 193.7 470.8 C 192.6 468 191.8 464.8 191.3 461.6 C 190.9 458.5 190.7 455.2 190.9 452.1 C 191.2 449.1 191.7 446 192.6 443.2 C 193.4 440.5 194.6 437.9 196 435.8 C 197.3 433.7 199 431.8 200.8 430.5 C 202.6 429.2 204.7 428.3 206.7 428 C 208.7 427.6 211 427.7 213.1 428.4 C 215.2 429 217.4 430.1 219.5 431.6 C 221.5 433.1 223.5 435.2 225.2 437.5 C 226.9 439.7 228.5 442.5 229.8 445.3 C 231 448.1 232.1 451.3 232.7 454.4 C 233.3 457.4 233.6 460.7 233.6 463.8 C 233.5 466.8 233 469.9 232.3 472.6 C 231.5 475.4 230.3 478 228.9 480.1 C 227.4 482.2 225.6 484.1 223.7 485.4 C 221.8 486.7 219.5 487.6 217.3 488 Z',\n paint: 'fine',\n },\n {\n kind: 'path',\n d: 'M 195 443 Q 206 447 216 437 M 193 456 Q 206 456 224 446 M 194 469 Q 208 467 228 460 M 199 481 Q 211 479 230 473 M 206 491 Q 216 489 229 485',\n paint: 'fine',\n },\n ],\n marker: { x: 214, y: 460 },\n },\n {\n id: 'testis-l',\n labelKey: 'testis',\n side: 'left',\n group: 'reproductive',\n tissue: 'gonad',\n shape: {\n kind: 'path',\n d: 'M 301.9 492.5 C 304.6 492.9 307.4 492.8 310.1 492.2 C 312.8 491.5 315.6 490.2 318 488.5 C 320.5 486.8 322.9 484.5 324.8 481.9 C 326.8 479.2 328.5 476.1 329.8 472.8 C 331.1 469.6 332.1 465.9 332.6 462.3 C 333.1 458.8 333.3 455 333 451.4 C 332.7 447.9 332 444.3 331 441.2 C 330 438 328.5 435 326.9 432.6 C 325.2 430.1 323.2 428 321.1 426.5 C 318.9 425 316.5 424 314.1 423.5 C 311.6 423.1 309 423.2 306.5 423.9 C 304 424.6 301.3 425.9 298.9 427.6 C 296.5 429.4 294.2 431.7 292.1 434.3 C 290.1 436.9 288.2 440 286.8 443.3 C 285.3 446.5 284.1 450.1 283.4 453.7 C 282.7 457.2 282.3 461 282.4 464.5 C 282.5 468 283.1 471.5 284 474.7 C 285 477.8 286.4 480.8 288.1 483.2 C 289.8 485.7 292 487.8 294.3 489.4 C 296.6 490.9 299.3 492 301.9 492.5 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 302.7 488 C 304.9 488.4 307.3 488.3 309.6 487.7 C 311.9 487.2 314.2 486 316.3 484.5 C 318.4 483 320.4 481 322 478.7 C 323.7 476.4 325.2 473.6 326.3 470.8 C 327.4 468 328.2 464.8 328.7 461.6 C 329.1 458.5 329.3 455.2 329.1 452.1 C 328.8 449.1 328.3 446 327.4 443.2 C 326.6 440.5 325.4 437.9 324 435.8 C 322.7 433.7 321 431.8 319.2 430.5 C 317.4 429.2 315.3 428.3 313.3 428 C 311.3 427.6 309 427.7 306.9 428.4 C 304.8 429 302.6 430.1 300.5 431.6 C 298.5 433.1 296.5 435.2 294.8 437.5 C 293.1 439.7 291.5 442.5 290.2 445.3 C 289 448.1 287.9 451.3 287.3 454.4 C 286.7 457.4 286.4 460.7 286.4 463.8 C 286.5 466.8 287 469.9 287.7 472.6 C 288.5 475.4 289.7 478 291.1 480.1 C 292.6 482.2 294.4 484.1 296.3 485.4 C 298.2 486.7 300.5 487.6 302.7 488 Z',\n paint: 'fine',\n },\n {\n kind: 'path',\n d: 'M 325 443 Q 314 447 304 437 M 327 456 Q 314 456 296 446 M 326 469 Q 312 467 292 460 M 321 481 Q 309 479 290 473 M 314 491 Q 304 489 291 485',\n paint: 'fine',\n },\n ],\n marker: { x: 306, y: 460 },\n },\n {\n id: 'epididymis-r',\n labelKey: 'epididymis',\n side: 'right',\n group: 'reproductive',\n tissue: 'duct',\n shape: {\n kind: 'path',\n d: 'M 224 417.3 C 223 415.6 222.7 415.9 221.6 415.5 C 220.5 415 218.9 414.8 217.3 414.5 C 215.7 414.1 213.7 414 211.9 413.6 C 210 413.3 207.8 412.5 205.9 412.5 C 203.9 412.5 201.8 412.8 200.1 413.6 C 198.5 414.3 197.2 415.7 195.9 416.9 C 194.5 418.1 193.5 419.5 192.3 420.7 C 191 421.9 189.5 422.8 188.2 424 C 187 425.3 185.7 426.7 184.8 428.3 C 183.8 429.9 183.5 432 182.8 433.7 C 182.2 435.5 181.4 437.2 180.8 439 C 180.3 440.7 179.8 442.4 179.3 444.1 C 178.9 445.7 178.4 447.4 178.1 449 C 177.7 450.7 177.4 452.4 177.2 454 C 177 455.7 176.9 457.4 176.8 459 C 176.7 460.7 176.8 462.3 176.8 464 C 176.8 465.7 176.9 467.4 177.1 469.1 C 177.2 470.8 177.5 472.5 177.8 474.2 C 178.1 475.8 178.4 477.5 178.9 479.1 C 179.3 480.7 179.8 482.2 180.3 483.7 C 180.8 485.1 181.3 486.6 181.9 488 C 182.6 489.3 183.3 490.7 184 492 C 184.8 493.3 185.5 494.5 186.4 495.7 C 187.4 496.8 188.3 498.1 189.4 499 C 190.6 500 192 500.9 193.4 501.6 C 194.7 502.3 196.2 502.9 197.5 503.4 C 198.8 503.9 200 504.2 201 504.5 C 201.9 504.9 202.2 505.7 203.3 505.3 C 204.4 504.8 207 503.5 207.6 502 C 208.1 500.6 207.2 497.8 206.7 496.7 C 206.2 495.7 205.4 496 204.5 495.6 C 203.7 495.2 202.5 494.7 201.5 494.2 C 200.5 493.7 199.5 493.2 198.6 492.6 C 197.8 492.1 197.2 491.6 196.6 491 C 195.9 490.4 195.4 489.8 194.8 489.1 C 194.1 488.3 193.5 487.4 192.9 486.5 C 192.3 485.6 191.7 484.6 191.2 483.6 C 190.6 482.5 190.1 481.5 189.7 480.3 C 189.3 479.2 189 477.9 188.7 476.6 C 188.3 475.3 188.1 473.9 187.8 472.5 C 187.6 471.1 187.4 469.6 187.3 468.2 C 187.2 466.8 187.2 465.4 187.2 464 C 187.2 462.6 187.4 461.3 187.6 459.9 C 187.7 458.6 188 457.2 188.3 455.9 C 188.6 454.5 188.9 453.2 189.3 451.8 C 189.7 450.5 190.1 449.2 190.7 447.9 C 191.2 446.6 191.9 445.3 192.6 444 C 193.3 442.6 194 441.2 194.9 440 C 195.8 438.8 197.1 437.9 197.9 436.9 C 198.7 435.9 199.1 434.9 199.8 434 C 200.4 433.1 200.8 432.1 201.6 431.5 C 202.3 431 203.5 430.8 204.4 430.6 C 205.3 430.5 206.3 430.7 206.9 430.5 C 207.5 430.3 207.6 429.9 208.1 429.5 C 208.6 429.2 209.2 428.5 210.1 428.5 C 210.9 428.5 212.2 429.1 213.4 429.5 C 214.5 430 215.8 430.7 216.9 430.9 C 218.1 431.1 218.3 431.6 220 430.7 C 221.8 429.8 226.7 427.8 227.4 425.6 C 228 423.3 224.9 419 224 417.3 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 214 418.5 Q 209 425 203 419 M 202 424 Q 197 431 193 426 M 191 435 Q 187 441 185 436 M 186 452 Q 182 457 186 462 M 184 473 Q 180 478 185 483',\n paint: 'fine',\n },\n ],\n marker: { x: 183, y: 458 },\n },\n {\n id: 'epididymis-l',\n labelKey: 'epididymis',\n side: 'left',\n group: 'reproductive',\n tissue: 'duct',\n shape: {\n kind: 'path',\n d: 'M 296 417.3 C 297 415.6 297.3 415.9 298.4 415.5 C 299.5 415 301.1 414.8 302.7 414.5 C 304.3 414.1 306.3 414 308.1 413.6 C 310 413.3 312.2 412.5 314.1 412.5 C 316.1 412.5 318.2 412.8 319.9 413.6 C 321.5 414.3 322.8 415.7 324.1 416.9 C 325.5 418.1 326.5 419.5 327.7 420.7 C 329 421.9 330.5 422.8 331.8 424 C 333 425.3 334.3 426.7 335.2 428.3 C 336.2 429.9 336.5 432 337.2 433.7 C 337.8 435.5 338.6 437.2 339.2 439 C 339.7 440.7 340.2 442.4 340.7 444.1 C 341.1 445.7 341.6 447.4 341.9 449 C 342.3 450.7 342.6 452.4 342.8 454 C 343 455.7 343.1 457.4 343.2 459 C 343.3 460.7 343.2 462.3 343.2 464 C 343.2 465.7 343.1 467.4 342.9 469.1 C 342.8 470.8 342.5 472.5 342.2 474.2 C 341.9 475.8 341.6 477.5 341.1 479.1 C 340.7 480.7 340.2 482.2 339.7 483.7 C 339.2 485.1 338.7 486.6 338.1 488 C 337.4 489.3 336.7 490.7 336 492 C 335.2 493.3 334.5 494.5 333.6 495.7 C 332.6 496.8 331.7 498.1 330.6 499 C 329.4 500 328 500.9 326.6 501.6 C 325.3 502.3 323.8 502.9 322.5 503.4 C 321.2 503.9 320 504.2 319 504.5 C 318.1 504.9 317.8 505.7 316.7 505.3 C 315.6 504.8 313 503.5 312.4 502 C 311.9 500.6 312.8 497.8 313.3 496.7 C 313.8 495.7 314.6 496 315.5 495.6 C 316.3 495.2 317.5 494.7 318.5 494.2 C 319.5 493.7 320.5 493.2 321.4 492.6 C 322.2 492.1 322.8 491.6 323.4 491 C 324.1 490.4 324.6 489.8 325.2 489.1 C 325.9 488.3 326.5 487.4 327.1 486.5 C 327.7 485.6 328.3 484.6 328.8 483.6 C 329.4 482.5 329.9 481.5 330.3 480.3 C 330.7 479.2 331 477.9 331.3 476.6 C 331.7 475.3 331.9 473.9 332.2 472.5 C 332.4 471.1 332.6 469.6 332.7 468.2 C 332.8 466.8 332.8 465.4 332.8 464 C 332.8 462.6 332.6 461.3 332.4 459.9 C 332.3 458.6 332 457.2 331.7 455.9 C 331.4 454.5 331.1 453.2 330.7 451.8 C 330.3 450.5 329.9 449.2 329.3 447.9 C 328.8 446.6 328.1 445.3 327.4 444 C 326.7 442.6 326 441.2 325.1 440 C 324.2 438.8 322.9 437.9 322.1 436.9 C 321.3 435.9 320.9 434.9 320.2 434 C 319.6 433.1 319.2 432.1 318.4 431.5 C 317.7 431 316.5 430.8 315.6 430.6 C 314.7 430.5 313.7 430.7 313.1 430.5 C 312.5 430.3 312.4 429.9 311.9 429.5 C 311.4 429.2 310.8 428.5 309.9 428.5 C 309.1 428.5 307.8 429.1 306.6 429.5 C 305.5 430 304.2 430.7 303.1 430.9 C 301.9 431.1 301.7 431.6 300 430.7 C 298.2 429.8 293.3 427.8 292.6 425.6 C 292 423.3 295.1 419 296 417.3 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 306 418.5 Q 311 425 317 419 M 318 424 Q 323 431 327 426 M 329 435 Q 333 441 335 436 M 334 452 Q 338 457 334 462 M 336 473 Q 340 478 335 483',\n paint: 'fine',\n },\n ],\n marker: { x: 337, y: 458 },\n },\n {\n id: 'penis',\n labelKey: 'penis',\n side: 'midline',\n group: 'reproductive',\n tissue: 'skin',\n shape: {\n kind: 'path',\n d: 'M 238 286 C 248 281 272 281 282 286 C 284.5 326 285.5 372 285.5 412 C 290.5 418 292.5 432 289.5 446 C 285.5 462 273.5 474 260 476 C 246.5 474 234.5 462 230.5 446 C 227.5 432 229.5 418 234.5 412 C 234.5 372 235.5 326 238 286 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 240.5 293 C 244 289.5 251.5 289.5 254.5 293 C 255 331 255 371 254.5 410 C 251 413 245 413 240.5 410 C 240 371 240 331 240.5 293 Z',\n paint: 'erectile',\n },\n {\n kind: 'path',\n d: 'M 279.5 293 C 276 289.5 268.5 289.5 265.5 293 C 265 331 265 371 265.5 410 C 269 413 275 413 279.5 410 C 280 371 280 331 279.5 293 Z',\n paint: 'erectile',\n },\n {\n kind: 'path',\n d: 'M 243 302 Q 247.5 305 252 302 M 243 312 Q 247.5 315 252 312 M 243 322 Q 247.5 325 252 322 M 243 332 Q 247.5 335 252 332 M 243 342 Q 247.5 345 252 342 M 243 352 Q 247.5 355 252 352 M 243 362 Q 247.5 365 252 362 M 243 372 Q 247.5 375 252 372 M 243 382 Q 247.5 385 252 382 M 243 392 Q 247.5 395 252 392 M 243 402 Q 247.5 405 252 402',\n paint: 'fine',\n },\n {\n kind: 'path',\n d: 'M 277 302 Q 272.5 305 268 302 M 277 312 Q 272.5 315 268 312 M 277 322 Q 272.5 325 268 322 M 277 332 Q 272.5 335 268 332 M 277 342 Q 272.5 345 268 342 M 277 352 Q 272.5 355 268 352 M 277 362 Q 272.5 365 268 362 M 277 372 Q 272.5 375 268 372 M 277 382 Q 272.5 385 268 382 M 277 392 Q 272.5 395 268 392 M 277 402 Q 272.5 405 268 402',\n paint: 'fine',\n },\n {\n kind: 'path',\n d: 'M 231.5 417 C 246 427.5 274 427.5 288.5 417 C 292.5 431 290.5 447.5 285.5 459 C 278.5 470 269.5 475 260 475 C 250.5 475 241.5 470 234.5 459 C 229.5 447.5 227.5 431 231.5 417 Z',\n paint: 'mucosa',\n },\n {\n kind: 'path',\n d: 'M 233 416 C 247 425 273 425 287 416',\n paint: 'fine',\n },\n ],\n marker: { x: 247, y: 360 },\n },\n {\n id: 'urethra',\n labelKey: 'urethra',\n side: 'midline',\n group: 'reproductive',\n tissue: 'urinary',\n shape: {\n kind: 'path',\n d: 'M 254.5 213 C 253.6 214.3 254.5 217.1 254.5 220 C 254.5 222.8 254.6 226.6 254.6 229.9 C 254.6 233.3 254.6 236.7 254.6 240 C 254.6 243.3 254.7 246.4 254.7 249.6 C 254.8 252.8 254.8 256.1 254.9 259.2 C 254.9 262.3 254.9 265.5 255 268 C 255.1 270.5 255.2 272.4 255.3 274.4 C 255.4 276.4 255.4 277.7 255.5 280 C 255.6 282.3 255.7 284.8 255.8 288 C 255.9 291.2 255.9 295.1 255.9 299.3 C 255.9 303.5 256 308 256 313.1 C 256 318.2 256.1 323.5 256.1 330 C 256.1 336.5 256.1 344.4 256.1 352.4 C 256.1 360.3 256.2 369.9 256.2 377.9 C 256.2 385.8 256.2 393.6 256.2 400 C 256.2 406.4 256.2 411.4 256.1 416.2 C 256.1 421.1 256.1 425.1 256.1 429.1 C 256 433.1 256 436.7 256 440 C 256 443.3 255.9 446.4 255.8 449 C 255.7 451.7 255.7 453.9 255.6 456.1 C 255.5 458.2 255.4 460.1 255.4 462 C 255.4 463.9 255.7 465.6 255.8 467.2 C 255.9 468.7 256.1 470.1 256.2 471.3 C 256.3 472.4 256 473.3 256.6 474 C 257.2 474.7 258.9 475.4 260 475.4 C 261.1 475.4 262.8 474.7 263.4 474 C 264 473.3 263.7 472.4 263.8 471.3 C 263.9 470.1 264.1 468.7 264.2 467.2 C 264.3 465.6 264.6 463.9 264.6 462 C 264.6 460.1 264.5 458.2 264.4 456.1 C 264.3 453.9 264.3 451.7 264.2 449 C 264.1 446.4 264 443.3 264 440 C 264 436.7 264 433.1 263.9 429.1 C 263.9 425.1 263.9 421.1 263.9 416.2 C 263.8 411.4 263.8 406.4 263.8 400 C 263.8 393.6 263.8 385.8 263.8 377.9 C 263.8 369.9 263.9 360.3 263.9 352.4 C 263.9 344.4 263.9 336.5 263.9 330 C 263.9 323.5 264 318.2 264 313.1 C 264 308 264.1 303.5 264.1 299.3 C 264.1 295.1 264.1 291.2 264.2 288 C 264.3 284.8 264.4 282.3 264.5 280 C 264.6 277.7 264.6 276.4 264.7 274.4 C 264.8 272.4 264.9 270.5 265 268 C 265.1 265.5 265.1 262.3 265.1 259.2 C 265.2 256.1 265.2 252.8 265.3 249.6 C 265.3 246.4 265.4 243.3 265.4 240 C 265.4 236.7 265.4 233.3 265.4 229.9 C 265.4 226.6 265.5 222.8 265.5 220 C 265.5 217.1 266.4 214.3 265.5 213 C 264.6 211.7 261.8 211.9 260 211.9 C 258.2 211.9 255.4 211.7 254.5 213 Z',\n },\n details: [{ kind: 'path', d: 'M 260 216 L 260 474', paint: 'lumen' }],\n marker: { x: 260, y: 302 },\n },\n ],\n details: [\n {\n kind: 'path',\n d: 'M 176 156 C 178.3 154.7 184.3 148 190 148 C 195.7 148 204 151.3 210 156 C 216 160.7 221.3 169 226 176 C 230.7 183 234.7 191.7 238 198 C 241.3 204.3 244.7 211.3 246 214',\n paint: 'hidden',\n },\n {\n kind: 'path',\n d: 'M 344 156 C 341.7 154.7 335.7 148 330 148 C 324.3 148 316 151.3 310 156 C 304 160.7 298.7 169 294 176 C 289.3 183 285.3 191.7 282 198 C 278.7 204.3 275.3 211.3 274 214',\n paint: 'hidden',\n },\n ],\n};\n","/* ------------------------------------------------------------------ */\n/* AUTO-GENERATED — do not hand-edit. */\n/* */\n/* Per-muscle id'd paths from `react-native-body-highlighter` (MIT, */\n/* (c) 2022 ELABBASSI Hicham). Each muscle's common/left/right */\n/* sub-paths are concatenated with absolute movetos; slug -> an */\n/* muscleScheme.region.* labelKey; head/hair -> decorative silhouette.*/\n/* ------------------------------------------------------------------ */\n\nexport interface MuscleArt {\n id: string;\n labelKey: string;\n side: 'left' | 'right' | 'midline';\n cx: number;\n cy: number;\n /** Set on the female pectoralis (breast cut out via evenodd). */\n fillRule?: 'evenodd';\n d: string;\n}\n\nexport interface MuscleFigureArt {\n viewBox: string;\n silhouette: string;\n /** Body-outline contour (stroke-only) from the library wrapper — drawn as silhouetteDetail. */\n outline: string;\n muscles: MuscleArt[];\n}\n\nexport const MUSCLE_MALE_FRONT: MuscleFigureArt = {\n viewBox: '0 0 724 1448',\n silhouette:\n 'M 418.91 167.68 c 3.92 -1.77 6.58 0.47 7.06 4.32 c 1.48 11.93 -4.92 26.67 -11.75 36.45 c -2.21 3.17 -3.86 0.17 -4.74 -1.76 a 0.38 0.38 0 0 0 -0.73 0.16 c 0.02 8.31 1.01 17.01 -3.36 24.53 c -0.167 0.293 -4.39 4.62 -10.799 9.508 c -23.591 18.112 -41.591 16.112 -61.446 -0.797 c -4.736 -3.649 -5.925 -5.041 -8.805 -7.621 c -5.66 -5.07 -5.28 -17.38 -4.47 -24.92 c 0.05 -0.51 -0.468 -0.892 -0.933 -0.687 a 0.653 0.653 0 0 0 -0.357 0.397 c -0.57 1.69 -2.24 4.05 -4.07 1.48 c -6.2 -8.71 -16.02 -28.53 -11.19 -38.98 c 1.68 -3.627 3.733 -3.91 6.16 -0.85 a 182.853 182.853 0 0 1 3.78 23.29 a 1.02 1.02 0 0 0 1.56 0.77 c 2.79 -1.75 2.61 -18.93 2.63 -24.22 c 0.02 -4.53 1.12 -8.94 3.8 -13.1 c 4.36 -6.76 4.86 -11.51 5.57 -19.82 c 0.47 -5.53 4.34 -8.12 9.77 -8.21 c 6.39 -0.12 12.69 -0.07 19 -0.93 c 4.02 -0.55 7.4 -1.43 11.53 -0.75 c 6.7 1.1 13.44 1.64 20.22 1.62 c 4.607 -0.013 7.523 0.227 8.75 0.72 c 5.96 2.37 5.56 9.73 6.11 15.22 c 0.44 4.34 2.097 8.447 4.97 12.32 c 6.57 8.88 2.19 25.6 5.64 36.36 a 1.14 1.14 0 0 0 2.22 -0.23 c 0.887 -8.36 2.18 -16.45 3.88 -24.27 z z z z M418.91 167.68q-2.55 11.73-3.88 24.27a1.14 1.14 0 01-2.22.23c-3.45-10.76.93-27.48-5.64-36.36q-4.31-5.81-4.97-12.32c-.55-5.49-.15-12.85-6.11-15.22q-1.84-.74-8.75-.72-10.17.03-20.22-1.62c-4.13-.68-7.51.2-11.53.75-6.31.86-12.61.81-19 .93-5.43.09-9.3 2.68-9.77 8.21-.71 8.31-1.21 13.06-5.57 19.82-2.68 4.16-3.78 8.57-3.8 13.1-.02 5.29.16 22.47-2.63 24.22a1.02 1.02 0 01-1.56-.77q-1.14-11.78-3.78-23.29-1.48-6.99-1.9-9.7c-2.49-15.94.13-40.13 13.53-51.15 9.39-7.72 28.53-11.63 40.37-11.51 4.2.05 8.74-.3 12.68.22 13.82 1.82 31.67 5.83 39.42 18.92 9.01 15.21 9.88 35.14 5.33 51.99z',\n outline:\n 'M 309.48 168.91 Q 305.84 164.32 303.32 169.76 C 298.49 180.21 308.31 200.03 314.51 208.74 C 316.34 211.31 318.01 208.95 318.58 207.26 A 0.67 0.66 57.6 0 1 319.87 207.55 C 319.06 215.09 318.68 227.40 324.34 232.47 C 327.22 235.05 326.97 235.88 326.92 239.51 Q 326.68 255.16 323.97 266.82 Q 323.85 267.35 323.48 267.73 Q 308.61 282.73 290.26 293.23 C 278.34 300.05 267.53 299.26 253.00 298.03 Q 237.49 296.72 224.74 305.21 C 208.71 315.86 190.95 335.73 189.24 355.50 Q 186.95 381.81 190.53 412.66 C 190.79 414.92 190.69 417.49 191.02 419.92 Q 191.09 420.43 190.88 420.90 C 187.89 427.65 183.99 434.89 181.93 441.29 C 177.25 455.76 176.31 470.23 176.20 486.02 Q 176.20 486.51 175.90 486.90 C 159.84 507.69 147.56 529.29 141.49 554.95 Q 140.10 560.80 138.16 574.66 Q 131.28 623.74 118.11 671.52 C 115.99 679.21 112.98 690.29 104.08 693.63 Q 90.70 698.65 79.29 707.27 C 73.17 711.89 69.48 719.95 66.12 726.62 C 62.44 733.91 47.57 737.30 49.20 746.00 C 49.75 748.96 51.89 750.13 54.75 750.02 Q 67.27 749.50 74.18 740.00 C 76.03 737.45 77.93 736.62 80.54 735.24 Q 81.02 734.98 81.24 735.48 Q 84.59 743.00 80.47 750.73 Q 71.41 767.75 62.21 784.70 Q 60.53 787.81 59.49 791.20 C 57.52 797.69 65.78 800.84 69.45 795.20 C 76.80 783.92 82.72 773.30 92.55 762.52 Q 93.00 762.04 92.84 762.67 Q 87.89 783.24 79.07 802.44 C 77.36 806.17 75.64 812.30 79.19 815.18 C 89.50 823.53 107.08 773.44 109.24 767.88 A 0.37 0.36 -30.3 0 1 109.94 768.06 C 108.51 777.44 106.43 787.14 105.28 796.13 C 104.34 803.43 103.67 808.49 104.41 814.32 C 105.40 822.00 112.74 817.15 114.09 812.77 C 118.56 798.32 120.41 781.74 125.18 766.21 A 0.55 0.55 0.0 0 1 125.93 765.87 C 131.64 768.40 126.65 796.54 133.38 803.49 A 1.35 1.35 0.0 0 0 134.16 803.90 C 138.40 804.59 139.71 797.34 140.15 793.73 Q 141.74 780.80 142.58 767.76 Q 142.86 763.46 144.07 759.34 Q 150.39 737.64 154.77 715.46 Q 156.15 708.50 155.48 697.76 Q 154.48 681.63 161.99 665.46 Q 180.58 625.46 201.25 586.52 C 213.64 563.18 218.66 541.14 220.65 514.18 C 221.24 506.18 223.22 502.59 228.42 495.84 C 237.76 483.72 242.73 464.92 246.12 450.19 Q 246.24 449.64 246.75 449.42 L 250.30 447.82 A 0.49 0.49 0.0 0 1 250.99 448.23 Q 252.78 470.14 257.44 487.01 C 259.04 492.80 264.20 498.21 265.32 505.20 C 265.91 508.82 266.99 512.44 267.11 516.00 Q 267.57 529.33 266.95 540.50 C 265.58 565.32 263.85 592.20 259.98 619.13 C 258.39 630.19 253.14 640.55 250.52 651.43 Q 245.19 673.62 242.32 696.24 C 239.63 717.56 236.59 740.02 236.04 757.75 Q 234.98 791.48 237.98 842.55 Q 239.43 867.18 244.64 891.26 Q 247.76 905.70 255.88 917.90 Q 256.15 918.31 256.08 918.79 C 254.89 926.25 257.03 933.47 255.60 940.95 Q 252.28 958.32 251.77 975.98 C 251.55 983.43 252.85 991.28 253.67 998.93 Q 253.99 1001.95 253.29 1005.00 C 239.19 1067.03 246.93 1130.64 261.77 1190.07 C 266.01 1207.06 266.47 1222.37 264.71 1240.03 C 263.85 1248.62 262.10 1260.41 264.24 1268.75 C 266.05 1275.80 267.54 1287.46 261.78 1293.28 C 256.71 1298.39 242.40 1310.55 240.72 1316.98 C 239.19 1322.86 235.04 1332.26 242.29 1333.71 Q 242.69 1333.79 243.08 1333.66 L 244.23 1333.29 Q 245.05 1333.02 244.81 1333.85 C 242.95 1340.16 249.20 1340.52 253.77 1340.86 C 256.46 1341.06 257.37 1343.60 259.30 1344.71 Q 263.13 1346.91 267.14 1344.43 Q 267.59 1344.15 267.92 1344.56 Q 271.17 1348.61 276.21 1349.09 C 278.90 1349.35 281.27 1347.36 283.62 1346.09 Q 284.10 1345.82 284.44 1346.26 Q 288.33 1351.29 294.72 1351.38 C 295.77 1351.39 297.65 1351.62 298.54 1350.79 Q 301.20 1348.30 306.57 1341.58 C 312.04 1334.74 311.14 1328.85 310.29 1320.16 C 309.43 1311.33 311.17 1303.41 313.76 1295.20 C 315.84 1288.56 313.35 1280.06 314.07 1273.15 C 314.57 1268.39 315.80 1263.68 315.01 1259.02 C 314.06 1253.42 311.98 1247.60 311.31 1242.66 Q 309.57 1229.80 309.57 1219.75 Q 309.57 1192.29 313.54 1161.94 C 315.34 1148.21 319.24 1136.08 324.12 1123.46 Q 325.66 1119.48 326.10 1115.72 C 330.14 1081.34 326.20 1048.44 320.65 1013.26 C 319.84 1008.17 319.39 1002.54 321.72 997.72 C 328.03 984.68 329.28 969.38 329.07 954.15 C 329.01 949.50 327.95 944.55 327.58 939.63 C 327.13 933.64 329.28 925.78 330.82 919.80 C 334.72 904.69 337.76 888.96 341.43 874.30 Q 348.95 844.25 355.42 813.95 C 358.50 799.49 357.70 784.78 357.75 768.06 Q 357.78 756.80 356.36 748.81 Q 356.26 748.24 356.77 748.50 L 363.71 751.99 A 1.07 1.07 0.0 0 0 364.67 751.99 L 371.53 748.56 Q 372.07 748.29 371.98 748.89 C 369.47 765.94 370.28 783.04 371.30 800.17 Q 371.86 809.54 372.73 813.51 C 378.37 839.12 384.90 864.49 390.59 890.08 Q 394.83 909.20 399.51 928.22 C 400.58 932.58 401.13 937.66 400.58 941.57 C 398.11 958.92 398.53 982.22 407.11 998.54 C 408.41 1001.01 408.74 1005.35 408.31 1008.09 C 402.82 1043.75 398.07 1079.22 402.19 1115.33 Q 402.65 1119.34 404.21 1123.44 C 410.53 1140.06 413.55 1150.61 415.25 1164.75 C 418.31 1190.26 420.52 1218.43 416.79 1244.33 C 415.56 1252.86 411.78 1258.57 413.63 1267.80 Q 415.33 1276.21 414.16 1284.74 C 413.11 1292.39 415.65 1298.68 417.31 1305.89 C 419.02 1313.32 418.11 1320.99 417.47 1328.50 C 416.71 1337.55 423.74 1344.86 430.17 1350.90 A 1.48 1.46 -18.7 0 0 430.95 1351.28 Q 439.25 1352.41 444.03 1346.06 Q 444.40 1345.57 444.87 1345.96 Q 453.39 1352.89 460.49 1344.48 Q 460.81 1344.11 461.23 1344.37 C 469.09 1349.37 469.89 1340.80 474.98 1340.71 C 479.52 1340.64 485.21 1340.09 483.54 1333.77 Q 483.38 1333.17 483.97 1333.35 C 488.25 1334.67 490.66 1331.94 490.06 1327.75 C 489.09 1321.04 487.50 1314.41 483.44 1310.30 Q 474.77 1301.53 466.05 1292.83 C 461.19 1287.98 462.25 1276.40 463.74 1270.47 C 466.27 1260.35 464.49 1248.06 463.03 1236.25 C 461.04 1220.05 463.22 1204.28 467.41 1187.04 C 481.60 1128.60 488.89 1065.20 475.23 1006.07 C 473.92 1000.37 475.00 995.00 475.76 989.36 C 477.88 973.68 475.72 958.50 473.08 942.76 C 471.70 934.55 473.60 926.56 472.20 918.79 Q 472.11 918.30 472.39 917.89 C 483.07 902.63 486.53 880.99 488.49 863.25 C 492.12 830.38 492.47 797.34 492.26 764.31 C 492.11 741.56 488.80 719.07 486.12 696.53 C 484.30 681.19 480.76 664.32 477.47 649.99 C 474.89 638.73 469.69 628.87 468.04 617.25 C 465.37 598.45 464.19 580.92 462.40 556.31 Q 460.86 535.06 461.01 522.74 Q 461.13 512.05 463.22 504.00 C 464.54 498.90 468.30 493.91 469.91 489.46 C 474.50 476.74 476.10 461.71 477.56 448.28 Q 477.62 447.74 478.13 447.94 L 481.73 449.35 A 0.77 0.77 0.0 0 1 482.19 449.89 Q 486.03 466.84 492.52 482.96 C 494.16 487.04 496.63 491.75 500.12 495.79 C 505.75 502.32 507.17 507.95 508.00 517.24 C 509.72 536.47 512.15 552.06 518.89 569.24 Q 521.60 576.16 527.50 587.28 Q 543.57 617.60 558.56 648.47 C 566.04 663.89 571.90 675.54 572.85 690.59 Q 572.98 692.57 572.55 700.88 Q 572.12 709.31 573.99 718.25 Q 577.87 736.78 582.37 752.38 C 585.15 761.98 586.32 769.32 586.71 778.53 C 586.92 783.46 587.58 803.53 593.41 804.06 C 599.41 804.61 599.71 774.61 600.39 768.08 A 1.12 1.12 0.0 0 1 600.80 767.33 Q 601.30 766.93 601.62 766.30 A 1.39 1.00 59.0 0 1 603.70 767.19 C 607.27 782.50 609.43 797.55 614.25 812.25 C 615.52 816.12 618.33 820.08 622.81 817.38 A 1.18 1.17 -8.4 0 0 623.35 816.66 Q 624.98 810.32 624.13 803.72 Q 621.83 785.89 618.23 768.64 A 0.53 0.53 0.0 0 1 619.24 768.34 C 622.72 777.06 636.06 814.20 645.24 816.03 C 650.64 817.10 652.13 811.12 650.95 807.31 C 648.59 799.74 644.42 791.59 642.09 784.69 Q 638.29 773.46 635.22 761.98 A 0.15 0.14 -73.3 0 1 635.47 761.84 Q 640.35 767.61 644.90 773.66 C 649.45 779.70 653.60 787.18 658.03 793.93 Q 660.09 797.07 661.70 797.82 C 665.53 799.62 670.61 795.77 669.00 791.28 C 666.63 784.66 661.63 776.66 659.33 772.19 Q 654.22 762.29 648.82 752.53 C 645.43 746.40 644.71 741.93 646.89 735.59 Q 647.08 735.05 647.60 735.27 C 650.55 736.50 652.37 737.45 654.44 740.27 Q 661.27 749.61 673.53 749.92 C 681.25 750.12 680.47 740.89 676.20 738.28 C 671.33 735.31 664.61 731.14 661.97 725.94 C 657.98 718.11 654.62 711.26 649.21 707.28 Q 637.40 698.62 623.76 693.40 C 619.45 691.75 615.12 686.26 613.76 682.47 Q 608.42 667.65 602.70 641.81 Q 594.90 606.62 590.85 578.90 Q 588.46 562.58 587.74 559.15 C 582.02 531.75 569.74 509.81 552.98 487.61 C 551.81 486.06 551.91 485.12 551.97 483.26 Q 552.48 466.57 548.70 449.61 C 546.27 438.71 541.82 430.32 537.44 420.82 Q 537.22 420.36 537.28 419.85 C 539.40 398.94 540.83 377.68 539.05 356.70 C 537.31 336.13 521.34 317.28 504.86 306.23 C 494.75 299.45 485.77 296.97 473.93 298.16 Q 464.41 299.12 453.63 298.41 C 438.05 297.39 418.32 280.58 407.40 270.35 C 405.82 268.87 404.57 267.56 404.10 265.32 Q 401.24 251.68 401.26 237.76 Q 401.26 233.73 404.68 232.04 Q 405.14 231.82 405.39 231.38 C 409.76 223.86 408.77 215.16 408.75 206.85 A 0.38 0.38 0.0 0 1 409.48 206.69 C 410.36 208.62 412.01 211.62 414.22 208.45 C 421.05 198.67 427.45 183.93 425.97 172.00 C 425.49 168.15 422.83 165.91 418.91 167.68',\n muscles: [\n {\n id: 'chest-r',\n labelKey: 'pectoralis',\n side: 'right',\n cx: 305.3,\n cy: 377.0,\n d: 'M272.91 422.84c-18.95-17.19-22-57-12.64-78.79 5.57-12.99 26.54-24.37 39.97-25.87q20.36-2.26 37.02.75c9.74 1.76 16.13 15.64 18.41 25.04 3.99 16.48 3.23 31.38 1.67 48.06q-1.35 14.35-2.05 16.89c-6.52 23.5-38.08 29.23-58.28 24.53-9.12-2.12-17.24-4.38-24.1-10.61z',\n },\n {\n id: 'chest-l',\n labelKey: 'pectoralis',\n side: 'left',\n cx: 421.1,\n cy: 376.1,\n d: 'M416.04 435c-15.12.11-34.46-6.78-41.37-21.48q-1.88-3.99-2.84-12.18c-2.89-24.41-5.9-53.65 8.44-74.79 4.26-6.26 10.49-7.93 18.36-8.56q11.66-.92 23.32-.35c10.58.53 18.02 2.74 26.62 7.87 12.81 7.65 19.73 14.52 22.67 29.75 4.94 25.57.24 64.14-28.21 74.97q-12.26 4.67-26.99 4.77z',\n },\n {\n id: 'obliques-r',\n labelKey: 'externalOblique',\n side: 'right',\n cx: 264.2,\n cy: 435.5,\n d: 'M264.21 435.53c-4.88-3.13-5.75-12.11-5.39-17.36q.03-.53.51-.75 1.8-.84 3.43.85 10.05 10.45 22.57 16.9c3.64 1.89 5.54 3.62 4.79 7.8q-.42 2.35-2.82 1.87-12.45-2.49-23.09-9.31z M287.33 452.44c-4.05 4.46-10.38 11.38-16.28 14.3a.84.83 51.1 01-.9-.1c-6.29-5.17-12.54-18.97-14.21-25.09q-.91-3.34.85-8.81.12-.39.35-.05c2.41 3.65 4.59 7.74 8.67 9.76q10.18 5.05 21.27 9.01a.61.61 0 01.25.98z M297.3 487.82c-7.36-4.23-16.68-11.37-20.55-17.57q-.32-.5.09-.92 8.72-9.04 19.84-17.87 1.46-1.17 2.81-1.67a.44.44 0 01.59.43c-.28 10.08-.4 20.42.65 30.43q.34 3.26-.68 6.15a1.9 1.9 0 01-2.75 1.02z M257.35 456.18l13.68 16.63a1.86 1.82 22.9 01.4.95c.59 5.4-2.02 12.71-3.8 17.56q-.3.84-.84.13-11.85-15.55-9.77-35.17.04-.45.33-.1z M271.69 494.07a1.53 1.52-61.8 01-.49-1.64l4.2-13.58a.98.98 0 011.51-.5c3.2 2.32 21.89 14.05 22.26 16.7q1.15 8.32.66 16.79a.9.9 0 01-1.34.73q-14.24-8.05-26.8-18.5z M299.35 544.62c-7.52-6.03-16.15-13.43-24.23-21.24-6.93-6.7-6-17.19-4.88-26.06a.44.44 0 01.72-.28q13.31 11.88 28.41 21.38.43.27.6.75c2.33 6.49.95 18.37-.07 25.23q-.09.59-.55.22z M299.09 575.53c-7.98-3.65-27.57-15.86-28.06-26.2q-.57-11.91.46-24.3a.36.36 0 01.67-.15q.84 1.36 2.17 2.54 10.59 9.45 21.68 18.31c4.37 3.49 4.34 6.46 4.16 11.74q-.3 8.82-.42 17.64-.01.72-.66.42z M308.17 657.58c-7.39-.13-12.41-4.13-17.14-9.39q-11.86-13.22-23.92-26.37-.33-.36-.33-.85.09-23.18 1.81-46.22.53-7.13 2.49-14.41a.71.71 0 011.2-.3q11.54 12.06 25.82 21.1 3.36 2.12 3.62 5.17 2.06 23.67 3.86 47.36c.58 7.62 2.31 13.36 4.43 20.82q.47 1.66-.96 2.79-.39.31-.88.3z',\n },\n {\n id: 'obliques-l',\n labelKey: 'externalOblique',\n side: 'left',\n cx: 438.7,\n cy: 444.4,\n d: 'M438.7 444.36c-2.09-4.03-.13-6.83 3.63-8.81 10.22-5.36 16.79-11 24.23-18.07a1.71 1.71 0 012.89 1.12c.33 4.74-.81 14.39-5.53 17.22-4.68 2.82-18.74 10.02-24.39 9.14q-.57-.09-.83-.6z M457.39 466.73c-3.72-1.02-13.2-10.29-16.5-14.49a.52.52 0 01.24-.81q10.94-3.75 21.31-9c3.96-2.01 6.3-5.98 8.57-9.58q.38-.59.55.09c.82 3.33 1.54 6.17.38 9.58-2.55 7.44-7.62 18.79-13.66 24.01a.96.96 0 01-.89.2z M428.43 487.22c-1.01-1.79-.82-4.55-.71-6.72q.78-15.08.48-30.27-.01-.59.55-.4 1.72.59 3.02 1.64 11.58 9.37 18.82 16.95c3.86 4.05-16.2 17.42-19.56 19.48a1.87 1.86 59.6 01-2.6-.68z M470.76 456.28a.25.25 0 01.44.13q2.03 19.67-9.8 35.22-.37.48-.6-.08c-1.37-3.29-5.86-16.13-3.51-18.91q6.3-7.47 13.47-16.36z M452.27 478.5c1.13.49 4.28 12.47 4.78 14.38q.14.5-.23.88-1.29 1.35-2.65 2.41-10.44 8.12-21.76 14.97-1.49.9-2.91 1.33a.81.81 0 01-1.05-.71q-.73-8.62.67-17.15.08-.47.44-.8c1.74-1.6 21.96-15.73 22.34-15.51a.58.03 31 00.37.2z M428.22 519.14q.11-.36.43-.56 15.3-9.66 28.83-21.69a.43.42-22.6 01.71.29c.51 8.26 2.25 18.67-4.46 25.4q-11.8 11.84-25.03 22.09-.43.34-.49-.2c-.75-6.82-1.97-18.92.01-25.33z M456.54 524.55a.04.04 0 01.07.02q1.52 13.67.41 27.4-.04.47-.28.88c-4.97 8.3-18.23 19.62-27.88 22.63q-.57.17-.58-.43-.05-10.31-.27-20.53-.1-4.8 2.63-7.09c8.54-7.13 18.56-14.62 25.9-22.88z M418.89 657.11q-1.12-1.67-.43-3.63 3.27-9.38 4.04-18.23 1.97-22.81 3.58-45.65c.16-2.32.72-6.41 2.84-7.71q14.97-9.23 27.16-21.93.41-.42.71.08 1.29 2.15 1.53 4.2 3.23 27.74 3.13 56.8a1.3 1.28-24.5 01-.33.86q-12.74 13.93-25.55 27.75c-4.8 5.17-9.09 7.87-15.73 7.96q-.61.01-.95-.5z',\n },\n {\n id: 'abs-r',\n labelKey: 'rectusAbdominis',\n side: 'right',\n cx: 311.0,\n cy: 531.7,\n d: 'M311.02 531.71a.23.23 0 01-.19-.21q-.39-10.47 1.9-20.76c1.26-5.69 7.66-9.9 13.1-12.9 9.09-5.01 18.93-11.15 28.56-14.92a1.24 1.21-42.6 01.94.03c3.28 1.52 4.78 3.87 4.82 7.68q.13 13.16-.15 26.31c-.08 3.85.78 8.39-.87 13.1q-.17.46-.59.72-2.65 1.65-4.29 1.82-21.06 2.22-43.23-.87z M321 577.76c-5.17-.33-8.71-.44-10-6.26q-3.2-14.44-.59-27.83.11-.53.64-.63c7.58-1.44 13.62-2.45 22.45-4.56q11.5-2.76 23.94-1.88c3.67.26 3.3 3.46 3.4 6.21q.46 12.55-.33 26.94-.25 4.41-1.81 8.08-.21.49-.73.6-1.39.28-3.22.29-16.89.14-33.75-.96z M347.73 429.25c7.46-3.61 10.5 6.27 10.99 11.52.48 5.06 3.46 30.61-2.78 32.93q-4.17 1.55-6.89 3.33-17.56 11.54-35.88 21.46a1.6 1.59-21.9 01-2.3-.98c-2.87-10.41-10.59-43.96 1.66-50.95 11.3-6.45 23.96-11.86 35.2-17.31z M350.35 712.81c-29.15-9.93-37.98-100.69-39.47-126.61a.99.99 0 01.33-.8c3.58-3.26 27.61-1.47 34.62-.93 4.41.34 15.27 1.31 15.26 7.53-.05 40.77.64 82.05-1.96 122.72a1.29 1.29 0 01-1.86 1.08c-2.3-1.14-4.12-2.04-6.92-2.99z',\n },\n {\n id: 'abs-l',\n labelKey: 'rectusAbdominis',\n side: 'left',\n cx: 371.9,\n cy: 473.3,\n d: 'M371.94 473.31c-5.46-2.59-2.97-24.26-2.77-29.56.25-6.8 2.41-18.63 12.64-13.8q16.26 7.67 32.34 15.72 6.18 3.1 7.13 10.05c.58 4.26 1.35 8.49 1.07 12.72q-.84 12.55-4.33 26.56-.54 2.16-1.1 3.44-.25.58-.81.31c-15.78-7.29-30.79-19.08-44.17-25.44z M382.57 533.27c-4.17-.18-9.56-.3-13.15-2.69q-.17-.11-.24-.31c-1.82-5.55-.86-11.17-.96-15.66-.18-8.4-.78-17.36.06-25.71.29-2.85 1.88-4.42 4.15-5.79q.42-.26.91-.19 1.71.25 3.21 1.03 12.48 6.44 24.75 13.26c4.96 2.75 12.21 7.02 13.72 12.41q2.93 10.56 2.39 21.49a.77.76-1.8 01-.67.71q-16.89 2.18-34.17 1.45z M373.75 578.69c-2.47 0-4.31.22-5-2.7-1.8-7.7-3.05-34.29-.19-38.81q.27-.43.77-.47 13.14-1.24 25.77 1.83c8.41 2.04 14.51 3.01 21.85 4.36a1.29 1.28.6 011.05 1.07q2.16 14.12-.73 28.07c-1.08 5.24-5.22 5.26-10.36 5.63q-14.26 1.04-33.16 1.02z M416.32 584.73q1.14.41 1.07 1.62c-1.62 26.44-9.96 116.68-40.43 126.74-2.27.75-4.15 2.12-6.35 2.73q-1.18.33-1.3-.89-.86-9.2-1.06-17.75c-.83-35.67-.91-71.2-1.01-106.88q0-.5.31-.89c4.95-6.46 41.69-7.25 48.77-4.68z',\n },\n {\n id: 'biceps-r',\n labelKey: 'biceps',\n side: 'right',\n cx: 202.3,\n cy: 448.5,\n d: 'M189.52 492.51c-2.43.62-7.38.57-7.51-3.08-.56-16.01-.42-35.49 5.11-50.26 3.19-8.54 13.89-30.22 23.27-32.72 10.08-2.68 12.68 16.59 12.6 22.8-.22 15.98-7.51 34.79-15.05 48.71-4.29 7.94-9.95 12.38-18.42 14.55z',\n },\n {\n id: 'biceps-l',\n labelKey: 'biceps',\n side: 'left',\n cx: 525.6,\n cy: 451.3,\n d: 'M526.69 486.31c-9.9-8.61-17.75-33.21-20.65-47.73-1.41-7.06-1.34-29.61 8.58-32.16 10.33-2.66 23.81 25.34 26.6 32.91q2.6 7.04 3.6 16.13 1.62 14.66 1.66 32.28c.03 11.04-16.45 1.48-19.79-1.43z',\n },\n {\n id: 'triceps-r',\n labelKey: 'triceps',\n side: 'right',\n cx: 206.2,\n cy: 514.2,\n d: 'M206.2 514.2c-5.41-.67-6.55-7.29-4.69-11.42 11.08-24.55 22.84-50.62 30.54-75.51 1.37-4.41 3.08-8.59 3.95-12.45q2.94-13.12 5.79-26.26.42-1.98 1.82-3.39a.52.52 0 01.81.1q1.04 1.69 1.94 4.56 4.63 14.65 5.15 24.92c.57 11.36-5.11 24.55-8.65 35.5q-7.69 23.78-20.25 45.39c-2.45 4.23-11.51 19.18-16.41 18.56z',\n },\n {\n id: 'triceps-l',\n labelKey: 'triceps',\n side: 'left',\n cx: 502.1,\n cy: 450.8,\n d: 'M517.69 512.06c-20.07-22.12-28.95-51.73-38.01-79.03-3.27-9.87-3.58-19.18-1.34-29.38 1.29-5.88 2.49-13.03 5.61-18.52q.32-.57.72-.06 1.35 1.67 1.79 3.69c2.67 12.33 5.14 24.49 9.07 36.52 8.25 25.28 18.58 49.8 31.1 77.2q1.42 3.1 1.05 5.33c-.81 4.89-5.46 9.25-9.99 4.25z',\n },\n {\n id: 'neck',\n labelKey: 'neck',\n side: 'midline',\n cx: 362.6,\n cy: 290.5,\n d: 'M362.65 290.52q-1.14-1.37-1.86-3.41-5.33-15.15-12.14-29.75c-2.37-5.06-1.07-9.07-7.92-10.99q-1.01-.28.02-.47c5.98-1.08 15.25.91 21.33 2q2.37.42 4.81-.09 10.09-2.13 20.45-2.12a.37.37 0 01.08.73c-6.34 1.46-5.45 5.64-7.57 10.21q-6.1 13.1-11 26.69-1.3 3.62-2.9 6.81a1.99 1.99 0 01-3.3.39z',\n },\n {\n id: 'neck-r',\n labelKey: 'neck',\n side: 'right',\n cx: 354.0,\n cy: 315.1,\n d: 'M354.01 315.07q-3.49-3.65-5.9-8.23c-6.46-12.3-11.03-25.42-16.12-38.77-2.92-7.66-1.98-19.44-1.61-27.6q.03-.58.47-.21c9.06 7.39 11.33 17.46 15.67 27.62 5.4 12.61 15.4 33.31 9.11 46.92a1 .99 35.5 01-1.62.27z M345.77 316c-4.12-1.96-12.78-6.76-15.07-11.38-4.29-8.65-2.69-16.02-2.28-25.25a1 1 0 011.95-.28c4.29 12.42 10.5 24.4 15.71 36.61q.23.55-.31.3z',\n },\n {\n id: 'neck-l',\n labelKey: 'neck',\n side: 'left',\n cx: 372.8,\n cy: 314.7,\n d: 'M372.75 314.71c-5.78-9.67 1.71-31.17 6.17-40.68 5.95-12.68 8.21-24.68 18.35-33.9a.49.49 0 01.82.35c.28 8.68.84 19.39-1.97 27.72-5.26 15.58-11.39 33.46-21.42 46.62a1.18 1.18 0 01-1.95-.11z M398.01 278.49a.5.49 35.5 01.87-.14c2.01 2.7 1.62 11.6 1.61 15.13-.04 12.42-8.2 17.45-17.9 22.58a.35.35 0 01-.48-.46c5.51-12.02 11.85-24.46 15.9-37.11z',\n },\n {\n id: 'trapezius-r',\n labelKey: 'trapezius',\n side: 'right',\n cx: 285.0,\n cy: 307.0,\n d: 'M285.01 307.01a.89.89 0 01-.11-1.64q19.44-9.61 35.65-24.8 1.68-1.57 3.31-.31.4.32.45.82 1.25 12.61-1.57 25.41c-.74 3.32-2.55 4.23-5.9 4.48q-16.02 1.24-31.83-3.96z',\n },\n {\n id: 'trapezius-l',\n labelKey: 'trapezius',\n side: 'left',\n cx: 424.3,\n cy: 295.4,\n d: 'M414 311.19c-5.24-.12-7.81-.64-8.9-6.27q-2.33-12.09-1.17-23.94.06-.61.61-.89 1.66-.85 3.65.99 16.12 14.87 33.97 23.63 3.65 1.79-.27 2.89-13.88 3.91-27.89 3.59z',\n },\n {\n id: 'deltoids-r',\n labelKey: 'deltoid',\n side: 'right',\n cx: 235.5,\n cy: 348.1,\n d: 'M274.06 311.69q3.94 2.77 4.33 8.14.04.48-.38.73c-9.98 5.88-24.35 7.45-28.82 19.75-2.31 6.36-.97 17.35-1.43 23.68q-.55 7.51-5.73 14.07-10.37 13.11-13.81 16.67c-3.41 3.53-6.81 1.76-10.69-.47-15.42-8.87-24.95-25.45-22.52-43.22 2.05-14.92 12.71-25.79 24.06-35.02 16.99-13.82 35.58-17.99 54.99-4.33z',\n },\n {\n id: 'deltoids-l',\n labelKey: 'deltoid',\n side: 'left',\n cx: 496.1,\n cy: 347.2,\n d: 'M450.39 320.75q-.95-.52-.7-1.58c1.57-6.61 5.8-9.1 12.14-11.9 24.99-11.03 43.76 3.33 60.17 20.74 20.73 21.99 11.81 56.44-14.82 68.19-4.41 1.94-6.79-1.03-9.81-4.51-5.81-6.7-13.46-14.12-15.99-22.8-3.93-13.43 4.32-27.54-9.64-37.62q-8.22-5.93-17.99-9.08-1.84-.59-3.36-1.44z',\n },\n {\n id: 'adductors-r',\n labelKey: 'adductors',\n side: 'right',\n cx: 280.3,\n cy: 647.4,\n d: 'M280.26 647.4c11.65 10.74 22.18 21.04 31.02 34.3 15.82 23.72 27.55 49.72 34.01 77.58 1.34 5.79-6.14 20.34-12.62 20.22q-.52-.01-.72-.49-.67-1.59-1.21-3.13c-14.68-41.71-27.96-79.71-46.87-117.01-1.9-3.74-3.05-7.33-4.06-11.2a.27.27 0 01.45-.27z M331.64 898.32q-.17.57-.23-.02c-2.23-25.01-8.47-50.09-14.25-74.53q-19.4-82.1-42.46-163.69-.58-2.08.33-.13c19.88 42.53 38.94 86.51 51.64 132.07 9.49 34.06 15.59 71.67 4.97 106.3z M334.46 789.17c1.56-2.63 14.39-20.38 16.2-20.37a1.71 1.7-89.2 011.7 1.76q-1.12 34.88-7.4 68.95c-.38 2.06-1.41 4.27-2.16 6.23q-.24.62-.34-.04-3.68-25.45-8.44-50.7c-.34-1.79-.63-4 .44-5.83z',\n },\n {\n id: 'adductors-l',\n labelKey: 'adductors',\n side: 'left',\n cx: 395.5,\n cy: 779.4,\n d: 'M395.47 779.4c-5.7 1.33-11.34-11.87-12.46-15.86q-.61-2.18-.02-4.65 10.17-42.64 35.06-78.81c9.47-13.77 18.83-22.36 29.85-32.56q.55-.5.4.22-1.12 5.7-3.73 10.83c-19.44 38.38-33.3 79.2-47.77 119.65a1.84 1.83-86.4 01-1.33 1.18z M453.65 658.99q.67-1.43.23.09-26.73 93.75-48.63 189.74c-1.98 8.7-3.66 17.9-5.44 26.84q-2.19 11.05-2.78 22.43a.15.15 0 01-.3.04c-8.18-24.48-6.74-51.98-1.87-76.86 11.07-56.49 34.44-110.42 58.79-162.28z M377.91 768.67c1.49.84 1.76 1.49 2.66 2.66q6.16 8.04 12.23 16.13c1.88 2.52 1.97 4.18 1.38 7.45q-4.57 25.23-8.43 50.57-.11.71-.4.05-1.89-4.29-2.54-8.09-5.57-32.28-6.98-65.01-.09-2 .81-3.44a.95.94 30.8 011.27-.32z',\n },\n {\n id: 'quadriceps-r',\n labelKey: 'quadriceps',\n side: 'right',\n cx: 292.4,\n cy: 935.6,\n d: 'M292.42 935.6q-.95-.52-1.57-1.4-4.1-5.79-7-13.53-7.8-20.79-13.3-42.33c-9.06-35.53-19.33-71.36-25.03-107.59-5.33-33.86 4-74.19 20.7-103.37q.35-.62.53.07c14.44 55.57 39.03 107.94 41.45 165.34 1.11 26.34.66 52.96-3.6 79.03-.63 3.83-4.73 27.81-12.18 23.78z M275.11 942.93q-2.42-2.18-3.57-5.24c-3.98-10.61-7.68-21.02-12.81-31.32-7.85-15.76-10.77-34.56-13.2-51.46-2.11-14.63-2.31-31.47-3.93-47.18-.22-2.16-1.04-12.78.46-13.79q1.36-.92 2.08.55c1.5 3.08 3.12 6.12 3.66 9.58q8.21 52.38 26.36 102.15c2.87 7.87 9.98 30.5 1.85 36.74a.71.7-42.5 01-.9-.03z M322.69 945.72c-3.73 6.14-10.77-2.43-12.6-5.6-3.16-5.47-2.62-14.93-1.78-20.81 4.03-28.09 5.6-52.81 3.48-80.78q-.06-.79.28-.08 15.77 32.83 14.26 68.9c-.4 9.54-2.94 22.48-2.91 34.13q.01 3.02-.73 4.24z',\n },\n {\n id: 'quadriceps-l',\n labelKey: 'quadriceps',\n side: 'left',\n cx: 437.8,\n cy: 933.5,\n d: 'M437.82 933.52c-8.9 14.18-15.15-26.74-15.46-29.25q-5.26-43.04-1.19-86.08c4.9-51.8 26.91-99.32 40.38-150.92q.18-.66.5-.06c17.25 31.67 25.39 68.28 20.54 104.36q-2.29 17.02-8.71 42.76-7.56 30.25-15.2 60.47-6.13 24.25-15.06 47.61-1.83 4.79-5.8 11.11z M451.79 942.6c-9.95-10.01 4.97-42.91 8.94-55.41q12.55-39.53 19.27-80.47c.49-2.97 2.64-12.34 5.41-13.28a.83.83 0 011.09.64q.74 4 .45 7.92c-1.99 26.52-3.37 58.99-11.01 87.73q-2.53 9.5-7.46 18.8c-4.38 8.24-6.97 16.72-10.08 25.27q-1.66 4.54-4.55 8.63a1.35 1.35 0 01-2.06.17z M406.69 946.81c-3.24-2.77-1.48-10.64-2.01-14.71q-2.23-17.18-2.57-22.16c-1.75-25.07 3.61-49.11 13.98-71.92q.23-.51.2.05c-1.2 19.15-1.28 38.18.83 57.38q1.68 15.4 3.39 30.8c.43 3.92-.31 9.71-2.09 13.33-1.62 3.28-7.58 10.77-11.73 7.23z',\n },\n {\n id: 'knees-r',\n labelKey: 'knee',\n side: 'right',\n cx: 297.7,\n cy: 1008.4,\n d: 'M297.69 1008.37c-7.27 7.29-16.34 3.42-19.64-5.18q-6.18-16.11-9.57-30.68c-1.99-8.6-2.24-19.68 9.72-19.91q13.12-.24 26.05 2.15 1.71.32 3.29 1.02a1.17 1.15 4.2 01.63.72c3.17 10.27 2.5 23.36.05 33.69q-2.37 10.01-10.53 18.19z M288.03 1059.54c-6.99-5.81 13.75-46.43 17.3-53.91q7.3-15.38 10.9-32.01c.74-3.42 2-6.31 4.18-8.64a1.36 1.35 54.7 012.23.39c3.97 9.09 1.66 13.86-1.67 24.65q-10.23 33.19-27.2 63.57-1.8 3.23-4.2 5.84a1.13 1.12-49 01-1.54.11z',\n },\n {\n id: 'knees-l',\n labelKey: 'knee',\n side: 'left',\n cx: 430.4,\n cy: 1008.3,\n d: 'M430.44 1008.31c-12.92-12.62-14.34-33.49-10.92-50.31.31-1.53 1.09-2.53 2.73-2.86q11.44-2.25 23.08-2.59c14.13-.42 17.31 5.67 14.54 18.63q-3.13 14.69-9.12 30.37c-3.45 9.03-11.63 15.25-20.31 6.76z M438.96 1059.52q-2.25-1.89-3.8-4.64-20.15-35.92-31.06-75.66-2.11-7.68 1.95-14.16a1.16 1.16 0 011.91-.08c2.26 3.06 3.4 5.4 4.26 9.37 3.98 18.54 10.94 32.53 20.07 51.09 3.51 7.14 11.38 26.16 8.5 33.61a1.16 1.16 0 01-1.83.47z',\n },\n {\n id: 'tibialis-r',\n labelKey: 'tibialisAnterior',\n side: 'right',\n cx: 263.5,\n cy: 973.6,\n d: 'M263.52 973.59a.6.6 0 011.09-.14q1.38 2.22 1.83 5.06c7.87 49.97 18.01 99.59 25 149.68q4.63 33.19 4.31 67.55-.04 3.45-2.15 5.76-.4.44-.75-.03-1.89-2.58-3.08-5.51c-11.63-28.6-20.46-58.12-24.26-88.68q-4.96-39.97-5.72-69.53c-.13-5.27-.17-12.59.35-18.98q1.7-20.77 2.52-41.6c.04-1.16.52-2.43.86-3.58z',\n },\n {\n id: 'tibialis-l',\n labelKey: 'tibialisAnterior',\n side: 'left',\n cx: 463.4,\n cy: 973.7,\n d: 'M463.39 973.68a.7.7 0 011.25-.1c.27.46.64 1.34.68 1.93q1.26 20.88 2.53 41.76.66 10.82.39 19.98-1.23 40.77-7.51 82.25c-3.91 25.87-12.19 51.55-21.96 75.76q-1.13 2.79-3.27 6.13-.29.44-.71.12c-2.68-2.06-2.32-6.7-2.29-10.32.26-31.03 2.71-55.52 8.76-91.4q9.27-55.06 18.94-110.05c.8-4.5.99-10.52 3.19-16.06z',\n },\n {\n id: 'calves-r',\n labelKey: 'gastrocnemius',\n side: 'right',\n cx: 252.1,\n cy: 1032.6,\n d: 'M252.09 1032.57c.24-3.71 2.14-22.17 4.63-24.18a1.03 1.02-17.9 011.67.85c-.45 7.89-1.27 16-1.49 23.45q-.57 18.93-.66 37.88-.02 3.63.34 6.85c2.08 18.76 5.56 37.32 9.3 55.8 3.82 18.84 9.13 37.64 13.11 56.63q2.44 11.68 2.08 17.95c-.32 5.7-3.08 20.49-8.51 23.92a.62.62 0 01-.84-.16q-1.2-1.65-.95-3.55c.92-7.26 1.45-14.15-.3-21.52q-8.25-34.74-13.62-59.06c-1.86-8.44-3.17-17.18-3.93-26.3q-3.69-44.24-.83-88.56z M315.01 1025.17a.16.16 0 01.32.02c4.06 25.75 8.98 52.72 8.71 77.81q-.13 12.06-5.74 26.31c-7.2 18.3-8.93 38.57-15.95 56.93q-.18.48-.21-.03c-1.87-34.47-5.67-65.91-8.56-103.28q-.97-12.49 4.44-23.14 7.47-14.69 15.14-29.29c.81-1.55 1.35-3.62 1.85-5.33z',\n },\n {\n id: 'calves-l',\n labelKey: 'gastrocnemius',\n side: 'left',\n cx: 455.5,\n cy: 1231.7,\n d: 'M455.5 1231.67c-7.13-5.81-9.23-24.34-8.2-31.86 1.41-10.32 4.63-23.14 7.98-36.33q9.54-37.46 15.15-75.74c2.86-19.5 1.53-40.15.75-59.8-.22-5.67-.98-12.51-1.23-18.75a.97.97 0 011.87-.4c.35.86.92 1.76 1.12 2.68q2.96 14.31 3.31 20.53 2.37 43.28-.49 84.75-1.21 17.42-5.43 35.77-6.33 27.51-12.84 54.98-2.01 8.49-.11 18.36c.36 1.9.11 3.95-.68 5.55a.79.79 0 01-1.2.26z M412.77 1025.44a.14.14 0 01.27-.04c4.88 11.62 10.93 22.01 17.28 34.78 4.07 8.19 4.71 14.41 4.1 24.25-2.13 34.3-6.27 68.85-8.45 101.59q-.05.69-.31.05-1.48-3.67-2.28-6.75c-4.34-16.75-8.78-38.38-16.39-57.57q-1.4-3.55-2.2-10.11c-1.78-14.73-.2-31.24 2.04-45.88q3.06-20.02 5.94-40.32z',\n },\n {\n id: 'forearm-r',\n labelKey: 'forearmFlexors',\n side: 'right',\n cx: 127.2,\n cy: 683.0,\n d: 'M127.23 683.05c-4.07-2.12 1.27-27.07 2.25-31.57 4.98-23.03 9.17-46.17 13.91-69.25q1.53-7.47 2.13-15.13c.93-12.09.81-22.15 6.23-31.59 7.1-12.33 13.54-29.16 26.1-36.73a1.98 1.97 62.7 012.84.91c1.92 4.48 1.93 8.28 2.06 14.15.44 19.77-1.3 41.04-8.72 59.67-11 27.62-22.22 55.21-32.62 82.91-4.04 10.76-7.56 20.66-12.82 26.39q-.59.65-1.36.24z M201.5 527.4a.84.84 0 01.67.65c3.98 17.15-2.93 39.36-10.95 54.41-4.6 8.63-13.06 20.43-18.21 31.33q-13.21 27.92-24.58 56.64-2.51 6.35-6.61 11.02a1.43 1.43 0 01-2.5-.81q-.36-3.78.84-7.17 10.31-29.18 21.57-57.99c6.32-16.18 14.55-31.65 20.66-47.87 3.69-9.82 5.36-22.36 7.32-30.62 1.49-6.27 4.19-11.06 11.79-9.59z M207.33 540.4a.6.59-63.1 011.03-.34l5.38 6.02q.4.45.33 1.06-.52 4.1-1.29 5.84-6.91 15.65-13.69 31.35c-5.41 12.53-16.33 28.4-23.51 44.89-8.3 19.08-16.03 39.32-26.75 57.16a.36.36 0 01-.62 0l-.19-.32q-.17-.28-.06-.59 10.08-29.91 23.05-58.65 2.9-6.42 5.47-11.21c4.62-8.59 10.86-16.17 14.62-23.02q13.23-24.13 16.23-52.19z',\n },\n {\n id: 'forearm-l',\n labelKey: 'forearmFlexors',\n side: 'left',\n cx: 600.1,\n cy: 683.0,\n d: 'M600.08 683.04c-5-4.14-8.97-15.46-11.29-21.56-5.82-15.25-11.38-30.55-17.58-45.7q-9.15-22.39-18.02-44.89c-5.58-14.19-7.32-31.42-7.99-46.57-.29-6.44-.68-19.43 2.67-25.02a1.71 1.71 0 012.25-.63c6.72 3.52 11.29 9.96 14.87 16.5q6.25 11.38 12.68 22.66c1.97 3.45 2.93 7.66 3.41 12.06 1.16 10.6 1.55 21.29 3.66 31.65 3.93 19.29 7.38 38.63 11.47 57.92 1.5 7.07 9.3 39.08 5.12 43.5a.91.91 0 01-1.25.08z M586.58 681.46q-4.35-4.47-6.75-10.61-11.35-28.91-24.59-57.01c-5.72-12.13-14.32-22.86-19.97-35.1-7.1-15.36-12.9-33.32-9.27-50.31a1.44 1.43-87.1 011.23-1.12c7.47-.88 9.29 2.88 11.02 9.2 3.39 12.42 4.76 25.91 9.75 36.7 15.55 33.65 27.61 64.94 39.31 98.42 1.13 3.24 2.05 5.47 1.62 9.04a1.38 1.37 26.3 01-2.35.79z M579.58 686.43q-3.92-5.77-6.87-12.13-8.05-17.34-19.75-44.5-2.68-6.24-6.46-13.62c-5.14-10.05-13.15-22.36-17.34-31.85q-9.55-21.68-13.66-31.36-1.09-2.58-1.33-5.87-.04-.61.37-1.07l5.24-5.85a.69.69 0 011.2.4q2.74 27.05 15.49 50.75 1.7 3.17 8.26 12.86 7.02 10.39 12.18 21.88 8.71 19.41 20.19 50.1 2.22 5.92 3.13 9.98a.36.36 0 01-.65.28z',\n },\n {\n id: 'hands-r',\n labelKey: 'hand',\n side: 'right',\n cx: 101.0,\n cy: 745.9,\n d: 'M100.98 745.85c-9.03-6.62-15.78-13.18-13.3-24.59 2.67-12.29 15.01-20.6 25.37-26.21 7.76-4.21 18.22-1.68 26.15.97 7.14 2.39 11.11 6.16 11.1 13.86q-.04 18.51-4.75 36.37c-5.47 20.76-34.48 6.99-44.57-.4z M53.81 746.32a.91.91 0 01-.74-.95c.14-2.49-.23-6.34 2.25-7.8 4.66-2.71 11.37-5.53 14.15-10.3q6.32-10.86 16.56-20.3 1.27-1.17.64.44c-1.45 3.73-2.86 7.21-3.87 11.59-2.76 11.9-14.62 30-28.99 27.32z M87.21 745.05c1.44.46 8.14 2.66 8.61 4.55 1.26 5.12-4.42 8.54-7 12.25-7.73 11.1-15.12 23.38-24.25 33.28a1.22 1.22 0 01-2.11-.86c.11-3.93.38-7.1 2.43-10.65q10.27-17.71 19.31-36.11.32-.65 2.13-2.27.38-.35.88-.19z M108.11 758.12a2.16 2.16 0 011.07 2.87q-10.49 22.55-19.92 45.81c-1.45 3.56-4.37 5.15-7.82 6.04a1.35 1.34-8.1 01-1.69-1.26c-.11-3.05.37-5.87 1.58-8.9q8.1-20.28 15.15-40.96c.41-1.2.62-3.33 1.69-4.85a1.21 1.21 0 01.91-.49q4.72-.21 9.03 1.74z M134.09 799.9q-1.16-1.7-1.41-3.73-2.1-17.07-1.18-34.29.03-.6.61-.75l6.93-1.85q.68-.19.65.52-.51 10.9-.85 21.71c-.28 8.58.1 12.65-4.17 18.4a.36.36 0 01-.58-.01z M108.13 814.65a1.48 1.48 0 01-1.62-1.47c-.02-2.83-.14-5.66.32-8.53q2.9-17.79 5.4-35.65.53-3.84 1.58-7.56a.66.66 0 01.76-.48l7.26 1.24a.97.97 0 01.78 1.14q-4.76 23.96-9.1 46.26-.9 4.64-5.38 5.05z',\n },\n {\n id: 'hands-l',\n labelKey: 'hand',\n side: 'left',\n cx: 591.3,\n cy: 756.0,\n d: 'M591.31 755.99c-8.06-2.93-8.66-9.76-10.28-17.06q-3.22-14.42-3.1-29.3.04-4.06 1.46-6.55c4.34-7.57 18.16-9.91 25.63-10.35 8.75-.51 18.37 6.96 24.99 12.27q8.92 7.17 10.74 17.52c2.45 13.89-12.11 23.41-22.7 29.04-6.95 3.69-18.63 7.39-26.74 4.43z M641.97 706.78q10.85 9.65 17.61 21.91c1.63 2.97 9.74 6.76 12.87 8.59 2.9 1.7 3.03 4.81 2.55 8.5q-.06.42-.48.49c-8.16 1.32-11.99-1.93-17.72-7.23-10.35-9.58-10.5-20.33-15.33-31.9q-.54-1.29.5-.36z M638 760.07c-2.54-3.42-7.52-6.03-5.44-11.11q.18-.44.61-.63l7.41-3.3q1.29-.58 2.05.62 3.33 5.23 5.69 10.04 6.84 13.94 14.71 27.33c1.35 2.29 4.28 10.16 2.25 12.11a1.22 1.22 0 01-1.77-.08c-9.43-10.98-16.85-23.36-25.51-34.98z M647.83 812.68c-4 .24-7.71-2.87-9.11-6.38q-9.28-23.27-19.74-45.33a2.05 2.05 0 01.92-2.71q4.5-2.28 9.62-1.7a1.09 1.07 83.8 01.89.73q7.5 23.06 16.57 45.5 1.8 4.46 1.5 9.24a.7.7 0 01-.65.65z M596.17 761.18a.84.84 0 01.62.81c-.01 4.86.95 35.3-2.71 37.67q-.49.32-.82-.17-3.41-5.21-3.51-8.49-.45-15.62-1.16-31.23-.03-.72.66-.52l6.92 1.93z M621.09 814.28c-4.35 1.91-5.92-3.77-6.5-6.56q-4.52-21.91-8.88-43.95a1.41 1.41 0 011.14-1.66l6.8-1.18a.92.92 0 011.06.76q2.79 16.32 5.09 32.91c.85 6.17 2.2 12.25 1.8 18.95q-.03.52-.51.73z',\n },\n {\n id: 'ankles-r',\n labelKey: 'ankle',\n side: 'right',\n cx: 291.9,\n cy: 1208.1,\n d: 'M291.88 1208.11c5.48-1.03 11.85 5.55 13.38 10.37q2.45 7.74 1.47 16.83-.09.83-.45.08c-4.31-9.05-8-16.99-15.39-23.88a1.98 1.98 0 01.99-3.4z M275.88 1270.94c-4.41-3.87-7.4-7.17-4.91-13.37q4.78-11.92 5.49-21.32.62-8.27 6.22-12.84c9-7.33 20.8 15 23.1 22.1 2.55 7.91 4.83 16.36 4.49 24.5-.31 7.14-2.02 17.4-6.49 23.1q-.3.38-.53-.05c-5.67-10.74-18.6-14.41-27.37-22.12z',\n },\n {\n id: 'ankles-l',\n labelKey: 'ankle',\n side: 'left',\n cx: 430.9,\n cy: 1209.1,\n d: 'M430.92 1209.12c2.24-1.35 10.54-2.02 6.02 2.65q-9.99 10.32-14.82 23.8a.28.28 0 01-.55-.08c-.52-10.27-.48-20.45 9.35-26.37z M445.01 1223.26c8.45 6.56 6.46 16.66 9.35 25.59q1.76 5.43 3.47 10.88c3.84 12.26-27.75 21.49-32.21 32.42q-1.02 2.51-2.17.05c-6.91-14.82-6.79-29.36-1.78-44.58q2.82-8.57 8.02-16.04c3.02-4.35 9.61-12.76 15.32-8.32z',\n },\n {\n id: 'feet-r',\n labelKey: 'foot',\n side: 'right',\n cx: 277.7,\n cy: 1312.2,\n d: 'M264.5 1334.5c-3.98-.34-18.59-4.25-19.04-9.44a1.4 1.4 0 01.27-.94c9.66-13.03 20.9-25.49 28.65-39.78q.25-.47.78-.37 9.76 1.78 17.73 7.65a1.19 1.18 43 01.07 1.86c-1.32 1.11-1.65 2.62-1.06 4.35 2.96 8.57-.92 16.55-4.81 25.34-1.79 4.06-1.76 8.99-2.81 13.62a1.56 1.56 0 01-1.99 1.14q-8.36-2.64-17.79-3.43z M291.87 1340.12c-2.25-2.64-2.07-5.93-.78-9.35q3.34-8.88 4.02-18.35.43-6.02 1.25-8.74 1.32-4.37 3.45-8.22a.66.65 53.7 011.21.19q1.97 9.26 6.28 17.3c2.59 4.85-.82 11.49-2.92 16.14a1.81 1.78-35.8 00-.16.94q.42 4.3-1.9 7.94-.22.33-.61.43l-8.79 2.06a1.06 1.06 0 01-1.05-.34z',\n },\n {\n id: 'feet-l',\n labelKey: 'foot',\n side: 'left',\n cx: 450.2,\n cy: 1312.1,\n d: 'M444.66 1337.65q-1.08-1.3-1.28-3.09c-.52-4.48-.73-8.39-2.77-12.64-3.51-7.31-7.06-16.37-4.43-23.19.77-1.99.92-3.79-.76-5.13a1.29 1.28 46.4 01.04-2.04q7.96-5.76 17.59-7.64.46-.1.69.32c7.25 13.1 17.21 24.83 26.45 36.56q1.11 1.41 2.51 3.8a1.17 1.14-51 01.09.95c-1.75 5.01-12.93 7.89-17.77 8.55q-9.87 1.36-19.54 3.82a.82.8-26.2 01-.82-.27z M426.94 1338.55c-2.01-.34-2.96-5.48-3-7.12-.15-6.02-6.29-11.65-3.12-17.89q4.35-8.53 6.34-17.75a.78.78 0 011.47-.17c2.12 4.52 4.18 9.08 4.35 14.33q.35 10.43 3.97 20.24c1.19 3.22 1.52 5.83.39 8.78a2.32 2.31 19.3 01-2.87 1.38q-3.44-1.09-7.53-1.8z',\n },\n ],\n};\n\nexport const MUSCLE_MALE_BACK: MuscleFigureArt = {\n viewBox: '724 0 724 1448',\n silhouette:\n 'M1028.14 166.45c1.03 5.06 1.36 9.61 6.41 11.53 13.06 4.95 16.74 15.51 23.52 27.48 1.387 2.447 3.863 3.623 7.43 3.53a910.025 910.025 0 0136.94-.25c6.23.09 9.27-7.55 11.48-12.3 4.31-9.27 10.37-15.83 20.28-18.94.333-.1.603-.287.81-.56 1.92-2.58 3.043-5.43 3.37-8.55l2.31-1.51a.977.977 0 01.99-.08c11.92 5.42-3.35 35.31-8.21 42.45-.761 1.11-2.423 1.028-3.06-.15l-1.26-2.32c-.133-.253-.32-.297-.56-.13-.34.24-.48.61-.42 1.11.86 7.64.75 16.87-2.96 23.31-.173.3.839.041-3.7 4.71-3.34 3.436-74.18 3.78-75.48-1.38a1.465 1.465 0 00-.55-.82c-4.15-2.97-6.07-7.95-6.16-12.39-.03-1.68.18-14.28-.53-14.63-.207-.1-.33-.037-.37.19-.3 1.553-1.183 2.597-2.65 3.13a.951.951 0 01-1.07-.32c-7.29-9.56-12.32-22.18-12.97-33.54-.34-6.04 1.797-9.23 6.41-9.57zm29.95 61.71c.173 14.187 18.967 14.703 19.1-1.37.03-4.05-.38-6.54-4.68-7.3-4.2-.75-11.87-1.47-13.85 2.91-.413.92-.603 2.84-.57 5.76zm31.71-3.35c.36 19.647 18.59 14.82 18.87 5.94.13-3.9 1.32-9.43-2.88-10.79-4.25-1.38-16.12-2.54-15.99 4.85z M1138.38 168.39q-.49 4.68-3.37 8.55-.31.41-.81.56c-9.91 3.11-15.97 9.67-20.28 18.94-2.21 4.75-5.25 12.39-11.48 12.3q-18.46-.25-36.94.25-5.35.14-7.43-3.53c-6.78-11.97-10.46-22.53-23.52-27.48-5.05-1.92-5.38-6.47-6.41-11.53q-6.64-26.16 4.43-48.88c8.13-16.7 34.61-21.41 51.58-21.04 4.89.11 9.69-.11 14.42.85 18.79 3.8 33.17 8.5 39.34 28.66q6.38 20.88.47 42.35z',\n outline:\n 'M 1028.14 166.45 Q 1021.22 166.96 1021.73 176.02 C 1022.38 187.38 1027.41 200.00 1034.70 209.56 A 0.95 0.95 0.0 0 0 1035.77 209.88 Q 1037.97 209.08 1038.42 206.75 Q 1038.48 206.41 1038.79 206.56 C 1039.50 206.91 1039.29 219.51 1039.32 221.19 C 1039.41 225.63 1041.33 230.61 1045.48 233.58 A 1.48 1.46 -79.2 0 1 1046.03 234.40 C 1047.33 239.56 1046.14 264.59 1042.52 268.26 Q 1027.38 283.59 1008.53 293.99 C 997.30 300.18 985.80 298.88 972.00 298.05 C 960.16 297.34 951.79 300.13 941.86 307.09 C 927.96 316.83 911.37 335.39 909.24 353.00 C 906.85 372.86 908.46 396.71 910.58 417.97 Q 910.78 420.04 909.97 421.91 C 907.17 428.36 903.51 435.29 901.56 441.28 Q 895.91 458.72 896.11 477.26 Q 896.15 480.50 895.88 486.15 Q 895.86 486.66 895.55 487.06 C 879.06 508.02 866.67 530.27 860.84 556.43 Q 859.72 561.44 857.62 576.15 C 853.15 607.45 846.97 639.64 837.96 670.48 C 835.37 679.35 832.82 690.15 824.31 693.38 Q 811.21 698.35 799.91 706.70 C 793.05 711.77 790.22 717.94 785.68 726.75 C 782.37 733.16 764.38 739.29 769.45 747.77 C 771.01 750.37 774.09 750.14 776.79 749.81 Q 787.25 748.51 793.13 740.83 C 795.42 737.84 797.13 736.50 800.36 735.31 A 0.63 0.63 0.0 0 1 801.16 735.68 C 803.48 741.92 802.81 745.80 799.51 751.90 Q 789.51 770.39 779.78 789.01 C 775.87 796.49 784.57 802.15 789.55 794.51 C 796.72 783.50 802.47 773.20 812.06 762.59 Q 812.62 761.98 812.43 762.79 Q 807.49 783.70 798.01 804.03 Q 795.79 808.79 797.53 813.47 C 798.35 815.65 800.88 816.85 802.95 815.95 C 807.95 813.78 812.74 805.60 815.08 800.58 Q 820.51 788.92 825.23 776.95 Q 827.37 771.52 829.06 768.26 A 0.34 0.34 0.0 0 1 829.69 768.47 C 828.65 774.94 819.92 813.84 825.80 817.66 C 829.47 820.04 832.91 815.52 833.80 812.51 Q 838.73 795.91 842.08 776.75 C 842.69 773.31 843.62 770.03 844.54 766.92 A 1.49 1.49 0.0 0 1 847.45 767.13 C 849.06 778.16 848.17 788.91 850.91 799.85 C 851.57 802.48 854.41 806.12 856.99 802.69 C 861.32 796.92 861.47 780.19 861.98 770.25 C 862.50 760.22 866.62 750.03 868.70 741.28 C 871.57 729.16 876.10 714.64 875.42 700.50 C 874.79 687.46 876.48 676.40 882.00 664.53 Q 899.81 626.31 920.51 587.27 C 928.60 572.01 933.68 558.17 937.01 542.00 Q 938.40 535.24 940.57 511.31 C 941.06 506.01 943.33 501.94 947.04 497.29 C 957.02 484.77 962.25 465.95 965.86 450.00 Q 965.97 449.54 966.40 449.37 L 969.87 447.93 Q 970.39 447.72 970.44 448.27 C 972.08 465.19 974.18 483.97 982.58 498.42 Q 985.25 503.01 985.69 509.45 C 985.76 510.51 986.43 511.70 986.49 512.50 C 986.89 517.68 987.09 525.23 986.82 531.50 Q 985.00 573.11 980.47 614.52 C 978.98 628.13 972.65 640.33 969.66 653.60 C 966.01 669.78 963.02 685.46 961.19 702.45 C 959.24 720.52 956.19 739.39 955.83 756.75 C 954.96 797.57 955.28 842.51 962.96 884.21 C 965.15 896.11 968.33 907.72 975.37 917.40 A 1.48 1.46 27.9 0 1 975.65 918.29 C 975.42 926.20 976.32 934.21 975.03 942.01 C 971.89 960.94 969.95 978.86 973.41 997.96 C 973.70 999.53 973.58 1001.87 973.23 1003.42 C 959.26 1065.20 965.77 1130.76 981.86 1191.82 C 985.51 1205.68 986.32 1220.46 984.96 1234.92 C 984.02 1244.98 982.27 1255.20 983.30 1265.30 C 984.08 1272.87 988.23 1284.18 983.14 1291.21 C 978.75 1297.25 969.45 1303.98 963.07 1312.35 C 960.11 1316.25 952.52 1335.31 964.02 1333.54 Q 964.55 1333.46 964.42 1333.98 C 962.73 1340.59 969.52 1340.54 974.36 1340.95 Q 974.88 1341.00 975.24 1341.37 C 978.64 1344.83 981.89 1347.54 986.66 1344.41 Q 987.11 1344.12 987.46 1344.52 C 992.32 1350.09 997.09 1350.27 1003.06 1346.11 Q 1003.50 1345.80 1003.93 1346.12 C 1005.34 1347.18 1006.20 1348.82 1007.59 1349.58 Q 1011.98 1351.98 1017.08 1351.27 A 1.56 1.56 0.0 0 0 1017.93 1350.86 Q 1024.28 1344.70 1027.72 1339.46 C 1032.14 1332.71 1030.13 1325.67 1029.71 1317.92 C 1029.27 1309.96 1031.28 1302.44 1033.52 1294.97 C 1034.58 1291.42 1034.05 1286.50 1033.60 1282.59 Q 1032.89 1276.40 1034.01 1270.28 C 1034.95 1265.11 1035.75 1261.39 1034.60 1257.67 Q 1029.90 1242.46 1029.51 1227.25 Q 1028.64 1193.94 1033.40 1159.73 C 1035.13 1147.30 1038.92 1136.76 1043.43 1124.47 Q 1045.16 1119.75 1045.73 1115.31 C 1050.32 1079.07 1044.60 1044.51 1039.86 1008.73 C 1038.66 999.61 1043.98 993.60 1045.54 987.51 C 1048.41 976.36 1049.80 959.10 1047.93 945.66 C 1046.88 938.09 1047.48 931.84 1049.21 924.99 C 1053.15 909.35 1056.75 892.75 1059.78 880.01 Q 1066.27 852.63 1072.60 825.22 Q 1075.98 810.55 1076.49 805.75 Q 1077.50 796.31 1077.72 775.82 Q 1077.85 764.16 1076.54 752.58 Q 1076.32 750.58 1075.99 749.61 Q 1075.45 748.03 1076.95 748.78 L 1083.35 752.00 A 1.10 1.08 44.4 0 0 1084.32 752.00 L 1091.50 748.31 A 0.24 0.24 0.0 0 1 1091.84 748.59 Q 1090.49 753.63 1090.36 758.75 C 1089.82 779.99 1089.54 802.24 1094.28 822.45 Q 1101.55 853.47 1108.92 884.46 C 1111.25 894.25 1114.60 910.13 1117.95 922.87 C 1119.13 927.36 1119.75 931.95 1120.50 936.49 C 1121.14 940.42 1119.45 945.92 1119.24 949.53 Q 1118.26 966.73 1121.38 983.68 C 1121.98 986.96 1123.21 991.52 1124.54 993.96 C 1128.10 1000.50 1128.52 1004.24 1127.36 1012.10 C 1122.34 1046.29 1118.51 1078.84 1121.48 1113.50 C 1121.72 1116.32 1122.66 1120.49 1123.91 1123.73 C 1131.43 1143.10 1134.58 1156.98 1136.42 1177.99 C 1138.35 1200.12 1139.52 1222.20 1136.35 1244.60 Q 1135.88 1247.88 1134.29 1252.69 C 1132.00 1259.62 1132.37 1264.14 1133.83 1271.98 C 1135.50 1280.93 1132.17 1288.45 1134.90 1297.66 C 1136.88 1304.36 1138.19 1310.69 1137.87 1317.88 C 1137.58 1324.48 1135.49 1332.56 1139.15 1338.36 Q 1142.72 1344.04 1149.63 1350.84 Q 1149.97 1351.18 1150.46 1351.25 Q 1158.71 1352.49 1163.67 1346.15 A 0.64 0.64 0.0 0 1 1164.58 1346.04 Q 1173.02 1352.85 1180.03 1344.60 Q 1180.37 1344.20 1180.83 1344.46 Q 1186.12 1347.40 1190.08 1343.66 Q 1192.28 1341.58 1193.29 1341.22 C 1197.87 1339.60 1204.81 1341.71 1203.29 1333.67 A 0.39 0.39 0.0 0 1 1203.82 1333.23 L 1204.86 1333.62 Q 1205.25 1333.77 1205.65 1333.71 C 1212.46 1332.65 1209.17 1324.33 1208.00 1319.87 C 1205.32 1309.62 1192.63 1299.79 1185.30 1292.30 C 1180.77 1287.68 1182.22 1274.71 1183.62 1269.06 C 1186.76 1256.35 1182.79 1239.97 1182.29 1230.50 C 1181.63 1217.80 1182.70 1204.60 1185.99 1191.35 C 1200.90 1131.35 1208.58 1067.26 1194.98 1006.22 C 1193.56 999.84 1194.88 994.32 1195.73 987.24 C 1197.46 972.87 1195.00 955.62 1192.39 940.62 C 1191.27 934.14 1192.32 927.30 1192.25 920.69 Q 1192.25 920.23 1192.09 919.80 L 1191.79 918.97 Q 1191.59 918.45 1191.92 918.00 C 1199.57 907.39 1203.42 893.36 1205.50 881.25 C 1212.13 842.49 1212.38 800.86 1211.97 761.04 C 1211.76 739.76 1208.12 718.12 1205.90 696.81 Q 1204.13 679.89 1197.85 652.94 C 1194.73 639.58 1188.50 627.37 1187.05 613.69 Q 1183.04 575.93 1181.17 542.06 Q 1180.56 530.97 1180.85 518.01 C 1180.96 512.91 1182.20 504.08 1184.51 499.52 C 1186.81 494.98 1189.81 490.71 1191.01 485.74 Q 1195.45 467.32 1197.09 448.35 A 0.55 0.55 0.0 0 1 1197.86 447.90 L 1201.25 449.41 Q 1201.74 449.63 1201.86 450.16 C 1205.49 466.08 1210.60 484.96 1221.09 497.82 C 1229.48 508.13 1227.82 523.50 1229.73 535.92 C 1232.46 553.65 1237.66 569.19 1246.25 585.54 Q 1262.47 616.39 1284.56 662.22 Q 1292.50 678.70 1292.52 695.41 Q 1292.52 695.47 1292.20 701.94 C 1291.63 713.32 1294.91 723.91 1297.35 734.87 C 1300.01 746.89 1305.13 759.34 1305.74 772.33 C 1305.98 777.24 1306.66 804.29 1313.58 804.01 A 1.29 1.29 0.0 0 0 1314.41 803.66 C 1321.43 797.06 1316.55 769.02 1321.52 766.22 A 1.20 1.19 -21.2 0 1 1323.27 766.99 C 1326.58 781.35 1329.25 795.81 1332.92 809.99 C 1334.01 814.20 1338.07 821.55 1342.84 816.86 Q 1343.20 816.50 1343.28 816.00 Q 1344.28 809.42 1343.76 805.00 Q 1341.60 786.63 1337.95 768.42 A 0.48 0.48 0.0 0 1 1338.86 768.15 C 1342.31 776.96 1355.85 815.37 1366.03 816.16 C 1370.51 816.50 1371.54 810.41 1370.44 807.06 C 1367.79 798.97 1363.64 790.62 1361.28 783.45 Q 1357.86 773.08 1355.02 762.60 A 0.28 0.28 0.0 0 1 1355.50 762.34 Q 1359.72 767.36 1363.75 772.57 C 1368.83 779.14 1373.25 787.32 1378.17 794.66 Q 1379.99 797.36 1381.66 797.98 C 1384.30 798.97 1389.15 796.58 1388.99 793.50 Q 1388.85 790.72 1386.66 786.58 Q 1378.13 770.40 1369.24 754.42 C 1365.36 747.45 1364.08 743.12 1366.68 735.63 Q 1366.81 735.24 1367.20 735.38 Q 1371.90 736.99 1372.91 738.60 Q 1379.67 749.28 1393.03 749.97 C 1401.07 750.38 1400.13 741.50 1395.34 738.12 C 1390.41 734.62 1384.54 731.36 1381.93 726.55 C 1378.04 719.37 1374.79 711.78 1368.18 706.82 Q 1357.23 698.60 1343.50 693.43 C 1335.51 690.42 1332.54 680.64 1330.25 672.50 C 1321.70 642.22 1315.13 611.45 1310.75 580.29 Q 1308.97 567.62 1308.28 563.74 C 1302.89 533.66 1289.99 510.94 1272.05 486.75 Q 1271.76 486.36 1271.76 485.88 C 1271.89 470.59 1270.82 455.36 1265.92 440.80 C 1263.95 434.94 1260.59 428.46 1257.79 422.38 Q 1256.94 420.52 1257.10 418.48 C 1258.73 398.21 1260.25 378.73 1258.88 358.36 C 1257.39 336.36 1241.06 316.98 1223.33 305.40 C 1213.33 298.87 1205.11 297.32 1193.06 298.08 C 1179.40 298.94 1169.27 299.86 1157.52 293.24 Q 1139.58 283.12 1124.50 267.54 Q 1124.15 267.19 1124.04 266.70 Q 1121.33 254.82 1121.08 242.66 C 1120.97 237.52 1120.38 234.21 1124.51 231.78 Q 1124.95 231.52 1125.21 231.07 C 1128.92 224.63 1129.03 215.40 1128.17 207.76 Q 1128.08 207.01 1128.59 206.65 Q 1128.95 206.40 1129.15 206.78 L 1130.41 209.10 A 1.80 1.79 -42.1 0 0 1133.47 209.25 C 1138.33 202.11 1153.60 172.22 1141.68 166.80 Q 1141.16 166.57 1140.69 166.88 L 1138.38 168.39',\n muscles: [\n {\n id: 'neck-r',\n labelKey: 'neck',\n side: 'right',\n cx: 1022.7,\n cy: 290.6,\n d: 'M1022.74 290.63a.62.61 25.9 01-.36-1.03q1.71-1.83 4.11-3.11c8.19-4.35 19.4-8.3 23.38-17.48q8.48-19.57 8.22-40.85-.05-4.38.57-5.76c1.98-4.38 9.65-3.66 13.85-2.91 4.3.76 4.71 3.25 4.68 7.3q-.2 24.11-.88 48.2c-.12 4.25 1.6 15.84-4.88 16.32-14.57 1.08-32.6 1.81-48.69-.68z',\n },\n {\n id: 'neck-l',\n labelKey: 'neck',\n side: 'left',\n cx: 1095.8,\n cy: 291.5,\n d: 'M1095.75 291.46c-4.3-.25-4.9-3.99-4.95-7.71q-.46-29.47-1-58.94c-.13-7.39 11.74-6.23 15.99-4.85 4.2 1.36 3.01 6.89 2.88 10.79-.28 8.88 5.15 41.1 15.32 46.78q8.6 4.81 17.27 9.51 1.97 1.07 3.26 2.36a.8.79 63.6 01-.45 1.35c-16.12 2.17-33.78 1.56-48.32.71z',\n },\n {\n id: 'trapezius-r',\n labelKey: 'trapezius',\n side: 'right',\n cx: 1071.1,\n cy: 308.9,\n d: 'M1071.06 308.94c5.6 4.92 6.96 17.83 7.43 24.88q1.5 22.3.93 44.68-1.2 46.76-5.66 94a.57.56 3.7 01-.59.51q-.68-.03-.94-1.01-4.29-15.9-9.79-25.19c-10.24-17.31-18.8-31.84-25.59-49.4-10.19-26.38-15.6-54.28-26.46-80.58q-3.07-7.43-7.61-14.07-.3-.43.2-.6 12.47-4.28 25.48-4.85c5.54-.25 12.15.86 18.32 1.41 9.7.87 16.77 3.6 24.28 10.22z',\n },\n {\n id: 'trapezius-l',\n labelKey: 'trapezius',\n side: 'left',\n cx: 1164.0,\n cy: 302.1,\n d: 'M1163.98 302.12a.43.43 0 01.22.65q-7.08 10.77-11.41 23.37c-10.53 30.61-17.8 62.94-31.3 91.07-5.11 10.64-15.17 25.22-20.12 36.26q-4.08 9.08-6.59 18.83a.77.77 0 01-1.51-.12q-4.27-45.15-5.52-90.99c-.56-20.28-.74-39.92 2.75-60.43 1.04-6.13 2.77-9.98 7.85-13.85 9.8-7.48 18.02-7.73 30.1-9.11 12.02-1.39 23.92.4 35.53 4.32z',\n },\n {\n id: 'deltoids-r',\n labelKey: 'deltoid',\n side: 'right',\n cx: 980.7,\n cy: 319.6,\n d: 'M980.66 319.58c.19.14.55.19.65.32a.8.8 0 01-.16 1.15c-6.78 4.75-15.26 9.77-20.03 15.58-6.41 7.78-8.76 16.96-9.44 27.04-.39 5.92-1.68 9.5-5.59 13.43-10.02 10.08-19.04 16.47-31.14 20.41q-.75.25-.75-.55.19-18.4-.09-36.3-.14-9.4 1.07-14.22c4.04-16.07 22.8-33.85 39.68-35.64 9.99-1.06 17.34 2.46 25.8 8.78z',\n },\n {\n id: 'deltoids-l',\n labelKey: 'deltoid',\n side: 'left',\n cx: 1227.3,\n cy: 316.4,\n d: 'M1227.3 316.44c14.62 9.44 25.48 21.03 25.46 39.51q-.02 20.56-.01 41.37a.37.37 0 01-.51.35c-5.08-2.06-10.41-3.98-14.9-6.97-7.84-5.24-21.14-14.95-21.77-24.95-.69-10.75-2.81-20.85-9.76-29.25-4.68-5.65-12.96-10.58-19.6-15.26q-1.23-.87.01-1.71c4.6-3.13 9.91-6.78 15.25-7.98q13.58-3.03 25.83 4.89z',\n },\n {\n id: 'upper-back-r',\n labelKey: 'upperBack',\n side: 'right',\n cx: 987.1,\n cy: 381.4,\n d: 'M987.06 381.44c-8.48-5.06-14.14-13.28-18.82-22.92q-5.3-10.92-6.46-14.04c-1.49-4.01 35.14-19.22 39.61-20.97q2.75-1.08 4.33-.72c4.33.96 6.61 9.96 7.46 13.7q5.43 23.89 14.65 55.74.78 2.7-.88 4.39c-5.37 5.5-34.69-12.08-39.89-15.18z M1017.44 583.31q-9.11-9.57-16.97-22.03-2.28-3.62-2.91-7.25c-3.28-18.82-5.77-38.04-10.52-56.55-3.53-13.73-4.74-25.19-6.61-41.43-.85-7.35-5.67-13.34-8.22-18.75q-4.93-10.47-6.44-22.88-.33-2.72 1.89-1.11c7.25 5.27 16.36 6.16 26.91 7.56 8.86 1.19 23.41-3.18 28.94-10.76 3.34-4.58 4.7-6.5 8.86-8.77a.67.66-26.4 01.92.3q10.02 21.8 19.93 43.78c2.56 5.69 12.11 15.88 10.77 21.83-3.65 16.09-9.88 31.96-16.24 47.13-9.72 23.21-18.61 46.72-27.2 70.36q-.24.67-.88.35-1.03-.52-2.23-1.78z M1017.71 404.73c-23.86 13.25-54.31 7.11-60.45-22.75-1.2-5.81-2.5-15.84.64-20.55 3.63-5.44 7.17 4.18 8.17 6.14 7.71 15.14 31.62 29.16 48.2 31.13q1.84.21 5.26 2.06.4.21.26.64-.86 2.65-2.08 3.33z',\n },\n {\n id: 'upper-back-l',\n labelKey: 'upperBack',\n side: 'left',\n cx: 1141.5,\n cy: 397.6,\n d: 'M1141.45 397.63a2.17 2.14-3.6 01-1.88-1.64q-.71-2.97.18-5.95 8.74-29.19 11.75-43.29c1.73-8.11 3.07-16.77 6.94-22.08 1.92-2.62 4.28-2.27 7.19-1.15q20.52 7.9 39.09 18.77a1.37 1.36 25.9 01.58 1.67c-6.05 15.46-12.98 30.84-28.43 39.45-9.45 5.26-25.83 15.17-35.42 14.22z M1149.69 404.8q-2.04-1.15-2.45-3.5-.09-.53.41-.75c4.64-2.04 9.78-2.51 14.63-3.87 11.01-3.1 22.03-10.83 30.34-18.57q6.33-5.89 7.58-8.93c1.02-2.49 3.79-9.5 7-9.46q.52.01.87.39 2.71 3.01 2.81 7.2c.33 13.77-2.24 26.93-13.26 35.95-13.88 11.36-33.12 9.94-47.93 1.54z M1161.19 419.98c6.1 1.57 11.6.99 17.75.06 8.36-1.27 14.83-2.76 21.34-7.27a.54.53 74.1 01.84.47q-.64 11.88-5.76 22.85c-2.42 5.2-6.64 10.84-8.04 16.67q-1.02 4.24-1.43 8.92-1.64 18.72-6.34 37.47c-4.73 18.91-7.13 38.67-10.8 57.85q-.24 1.24-2.2 4.3c-4.57 7.14-12.22 19.43-19.34 23.88a.44.43-25.6 01-.64-.22c-8.26-22.57-16.6-45.11-25.91-67.23-6.67-15.85-13.27-32.14-17.27-48.42q-1.58-6.41 2.91-12.01 5.21-6.51 8.57-14.14 9.25-21 19.01-41.64a.47.47 0 01.65-.21q6.17 3.37 9.51 9.64c2.45 4.6 12.22 7.75 17.15 9.03z',\n },\n {\n id: 'triceps-r',\n labelKey: 'triceps',\n side: 'right',\n cx: 931.0,\n cy: 442.3,\n d: 'M931.03 442.29c-2.01 2.57-6.52 9.71-10.12 9.17q-.52-.08-.8-.52-1.35-2.09-1.84-4.44c-2.25-10.87-3.28-22.88 1.35-33.38 5.45-12.33 18.27-23.68 29.61-31.2a.47.46 68.7 01.71.32l6.42 38.52q.09.54-.26.97c-.47.58-1.12 1.52-1.71 1.94q-9.11 6.58-18.08 13.36-2.9 2.2-5.28 5.26z M958.15 427.11a.41.41 0 01.55.27q4.44 16.16-2.23 31.41-3.37 7.73-5.91 19.98c-1.51 7.28-8.93 12.21-11.81 18.82-2.42 5.56-2.41 12.5-3.51 16.66-2.14 8.06-8.51 14.15-13.91 20.13a.93.93 0 01-1.54-.25q-.57-1.3-.75-2.89c-1.93-16.91 2.52-33.52 5.71-49.99 2.16-11.21-1.54-24.15 9.68-34.59q9.54-8.86 19.55-17.23c1.3-1.08 2.7-1.72 4.17-2.32z M903.57 519.67a1.84 1.82-5.4 01-1.12-.92q-3.54-6.97-3.68-15.19c-.37-21.2 3.8-42.53 9.5-63.44q.33-1.23.92-.1 4.64 8.78 8.6 18.67c2.88 7.21 4.19 12.98 1.88 20.57q-6.07 19.96-14.02 39.23-.65 1.58-2.08 1.18z',\n },\n {\n id: 'triceps-l',\n labelKey: 'triceps',\n side: 'left',\n cx: 1213.9,\n cy: 424.6,\n d: 'M1213.94 424.56q-2.02-1.5-3.08-3.02-.31-.46-.22-1 3.32-19.22 6.42-38.46.09-.56.56-.25 14.9 9.82 24.8 22.71c9.8 12.75 9.72 30.37 5.41 45.13a2.62 2.62 0 01-3.76 1.57c-3.26-1.77-6.22-6.71-8.62-9.67-5.24-6.46-14.75-12-21.51-17.01z M1246.2 534.5q-.95-.3-1.75-1.22c-4.65-5.4-9.13-9.88-11.46-15.51-2.96-7.13-1.37-15.5-5.64-22.09-4.06-6.26-8.72-9.91-10.89-17.58-1.62-5.68-2.81-11.46-4.97-17.02-4.56-11.69-6.45-20.86-3.33-33.56a.59.58-74 01.75-.42q1.69.56 3.22 1.79 11.23 9.08 21.54 19.18c5.39 5.28 6.92 10.13 7.24 18.16.9 22.52 10.62 44.97 6.59 67.49a1.01 1 13.9 01-1.3.78z M1258.43 439.96q2.01 5.38 3.1 10.68c3.58 17.36 7.13 34.77 6.89 52.61q-.11 8.3-3.94 15.61a1.61 1.6 33.4 01-2.44.5c-1.45-1.19-1.9-3.58-2.43-4.94q-9.23-23.41-13.19-38.15c-2.63-9.81 6.82-27.63 11.53-36.35q.28-.5.48.04z',\n },\n {\n id: 'lower-back-r',\n labelKey: 'lowerBack',\n side: 'right',\n cx: 986.8,\n cy: 627.1,\n d: 'M986.76 627.1c-3.13-13.13-7.31-49.77 7.27-58.07 2.4-1.37 4.8-.82 6.7 1.29 6.15 6.8 16.22 18.56 18.77 28.15a1.35 1.3 52.6 01-.11.98c-2.51 4.53-9.96 8.09-15.83 11.36q-5.47 3.06-11.33 10.52c-1.23 1.56-2.6 4.3-4.5 6.06a.59.58-28.2 01-.97-.29z M1023.15 607.96a2.06 2.04-74.3 01-.94-1.69c-.17-10.98 5.04-24.58 8.79-34.9q15.61-42.83 36-83.59a1.11 1.1-62.5 011.51-.48c1.25.66 3.21 12.98 3.46 15.08q6.94 59.25 2.82 116.88-.62 8.66-3.1 19.37-.13.53-.59.24l-47.95-30.91z',\n },\n {\n id: 'lower-back-l',\n labelKey: 'lowerBack',\n side: 'left',\n cx: 1090.8,\n cy: 581.8,\n d: 'M1090.76 581.75q.62-5.16 0-10.27.22-29.79 3.05-59.5 1.1-11.58 3.91-22.88.31-1.27.44-1.43 1.08-1.43 1.88.17 23.38 46.97 40.14 96.18c1.8 5.28 5.84 16.69 4.38 22.96a1.64 1.64 0 01-.71 1.01l-47.63 30.72q-1.12.72-1.34-.6-4.54-28-4.12-56.36z M1151.19 603.31q-5.39-3.38-2.19-9.05 8.03-14.22 17.88-24.62c3.49-3.69 9.04.89 10.97 3.99q2.92 4.66 3.8 10.14 3.5 21.77-1.21 43.02a.96.96 0 01-1.77.28c-6.92-11.85-16.03-16.56-27.48-23.76z',\n },\n {\n id: 'forearm-r',\n labelKey: 'forearmFlexors',\n side: 'right',\n cx: 878.4,\n cy: 534.4,\n d: 'M878.44 534.38a.15.15 0 01.18-.13c.47.12 6.68 15.77 7.07 17.22q6.66 24.73 5.52 50.29c-.4 8.9-3.45 17.35-6.64 25.55-7.94 20.38-17.41 41.88-29.59 60.09a1.04 1.02-54.2 01-1.49.25c-.34-.26.37-1.45.47-1.83q5.58-20.8 8.97-42.08 8.65-54.15 15.51-109.36z M893 518.93a.39.38 24.6 01.69-.25q5.97 7.83 13.11 15.27c8.08 8.4 1.41 28.73-5.88 37.12a1.05 1.05 0 01-1.63-.05c-6.09-7.93-5.41-18.74-4.97-28.44.36-8.12-.76-15.7-1.32-23.65z M869.06 547.19c2.16.36 1.67 6.21 1.57 7.8q-2.54 38.84-9.11 77.16c-3.04 17.71-8.47 41.3-22.09 54.09a.38.38 0 01-.62-.41c14.51-40.44 19-84.26 26.8-126.31q.9-4.88 1.48-10.82.18-1.81 1.97-1.51z M864.24 682.58q15.09-28.18 25.12-58.55c8.14-24.63 13.67-42.4 20.79-60.35q3.31-8.37 12.08-9.63c1.35-.2 3.68-.75 4.86.21q1.13.93.61 2.3-5.8 15.45-12.04 29.88c-5.79 13.39-14.92 28.68-20.32 40.14-6.12 13-28.07 59.18-31.64 56.64a.21.21 0 01.03-.36q.15-.07.34-.13.12-.04.17-.15z',\n },\n {\n id: 'forearm-l',\n labelKey: 'forearmFlexors',\n side: 'left',\n cx: 1273.0,\n cy: 519.4,\n d: 'M1272.99 519.43c.27-.33.33-.75.75-1.05a.32.32 0 01.5.29c-.7 7.22-1.77 14.33-1.66 21.54.13 8.94 2.13 24-5.35 31.17q-.37.35-.73 0c-7.63-7.55-14.2-28.29-6.52-36.92q6.6-7.41 13.01-15.03z M1312.82 688.04c-4.78-6.01-7.2-10.8-11.76-19.56q-12.39-23.79-21.03-47.53c-4.86-13.36-5.22-26.17-3.83-40.19q1.13-11.5 2.69-19.53 2.72-13.98 9.59-26.79a.17.17 0 01.32.06q7.26 63.12 17.22 120.49 2.43 14.04 7.03 30.55c.22.79.74 1.33.36 2.4a.34.34 0 01-.59.1z M1296.52 558.51c-.22-2.94-1.44-10.25 2-12.04a.62.61-18.4 01.89.44q6.25 35.69 12.21 71.07c3.88 23 8.77 46.2 16.73 68.19a.29.29 0 01-.47.31c-11.67-10.67-18.09-31.15-20.89-45.98q-7.27-38.55-10.47-81.99z M1303.5 683.6c-2.89-.66-10.16-13.21-12.11-17.02-8.8-17.21-16.92-34.81-25.84-51.89-5.36-10.27-10.98-20.49-15.39-30.95q-5.86-13.86-11.07-27.8a1.63 1.62 79.5 011.5-2.2c13.02-.16 15.5 7.18 19.65 18.81q9.04 25.33 17.43 50.89 9.65 29.37 23.82 56.84.87 1.69 2.13 3.12.24.28-.12.2z',\n },\n {\n id: 'gluteal-r',\n labelKey: 'gluteusMaximus',\n side: 'right',\n cx: 1045.1,\n cy: 626.2,\n d: 'M1045.06 626.19q1.42.61 4.11 4.4.27.39-.19.52c-14.47 4.12-26.13 7.4-38.13 15.77q-15.37 10.71-30.53 21.6a.55.54 74.9 01-.86-.5c1.19-13.13 10.35-35.23 20.46-45.06 9.14-8.88 34.99-1.11 45.14 3.27z M1007.94 762.81c-16.94-16.64-29.37-37.66-31.47-61-2.06-22.84 15.63-34.95 32.18-45.71 8.2-5.33 46.51-27.32 54.37-17.65 5.92 7.29 13.38 15.84 15.44 25.21q3.01 13.63 2.44 27.6-.94 22.59-6.27 44.49c-2.43 9.96-2.9 17.16-2.59 26.75.47 14.83-18.52 17.18-29.12 14.07-6.38-1.87-13.79-4.83-21.35-6.25q-7.39-1.38-13.63-7.51z',\n },\n {\n id: 'gluteal-l',\n labelKey: 'gluteusMaximus',\n side: 'left',\n cx: 1139.6,\n cy: 698.8,\n d: 'M1117.94 631.04q-.13-.03-.27-.06-.12-.02-.06-.13 2.58-4.2 7.05-5.92 12.71-4.87 26.13-5.81c12.93-.91 17.1 3.08 23.28 13.06 5.71 9.22 13.32 24.7 13.44 36.06q.01.76-.61.32-16.65-11.74-33.2-23.51c-10.03-7.14-23.72-10.58-35.76-14.01z M1124.12 776.61c-9.28 2.74-26.75 1.29-28.86-10.88-1.05-6.03.27-14.88-1.3-23.27q-.54-2.94-2.15-9.35c-3.2-12.81-4.02-23.33-5.08-35.27-1.07-12.03-.57-22 1.64-33.17q1.1-5.6 4.19-10.41 8.74-13.58 11.87-16.59c4.96-4.77 15.84.18 21.19 2.11q19.7 7.12 40.17 21.43c9.59 6.7 19.29 14.31 22.93 25.17 4.81 14.37-.65 33.88-7.42 46.87q-7.79 14.97-21.39 28.9-6.74 6.9-15.26 8.36c-7.07 1.21-13.68 4.08-20.53 6.1z',\n },\n {\n id: 'adductors-r',\n labelKey: 'adductors',\n side: 'right',\n cx: 1070.1,\n cy: 785.2,\n d: 'M1070.06 785.19c2.95 1.36 1.8 10.43 1.49 13.04q-3.98 33.27-14.66 64.61a.39.39 0 01-.76-.17c.9-7.05 2.31-14.29 2.16-20.92q-.68-30.14-18.71-54.52-.29-.39.18-.49c7.42-1.52 23.53-4.69 30.3-1.55z',\n },\n {\n id: 'adductors-l',\n labelKey: 'adductors',\n side: 'left',\n cx: 1127.2,\n cy: 787.7,\n d: 'M1127.24 787.66c-15.99 21.49-22.3 48.51-16.08 74.83a.47.46-63.2 01-.88.29q-1.99-4.69-3.65-10.24-8.29-27.75-11.6-56.54c-.65-5.71-1.1-11.77 6.87-11.9q13-.19 25.68 2.83a.31.24 41.2 01.1.53q-.12.01-.27.07-.1.04-.17.13z',\n },\n {\n id: 'hamstring-r',\n labelKey: 'hamstrings',\n side: 'right',\n cx: 963.3,\n cy: 741.5,\n d: 'M963.27 741.53a.71.7 31.7 011.19-.28q1.51 1.62 2.47 3.99c4.6 11.41 8.93 22.66 11.07 34.72 3.38 19.14 4.84 38.23 3.12 57.74q-1.68 19.06-2.99 38.15c-.51 7.55-.88 15.71.07 23.18q1.08 8.54 1.39 17.57a.52.52 0 01-.98.25q-1.03-2.07-1.8-4.62-5.13-16.92-7.25-34.49-5.01-41.45-6.86-83.17-1.09-24.75-.07-49.51.06-1.59.64-3.53z M1030.2 791.53q.17-.36.38-.03c5.26 8.11 9.94 16.15 12.47 25.64 3.12 11.72 5.87 24.36 4.31 36.24q-.5 3.8-3.57 14.02c-10.75 35.81-12.83 74.2-18.5 111.1q-.82 5.4-2.55 10.55-.23.68-.59.07c-4.72-8.07-5.18-25.09-5.34-34.81-.7-43.69 1.92-87.82 6.38-131.28 1.41-13.74 1.99-21.15 7.01-31.5z M998.81 761.94q14.07 14.17 20.1 33.62c.98 3.15-.78 9.61-.93 12.91q-1.3 27.63-2.3 55.27c-.55 15.31-1.54 30.27-5.12 45.26q-8.62 36.18-22.76 68.73-3.65 8.41-10.15 17.19-.45.61-.41-.14c.11-1.93.82-4.15.99-5.71q2.45-22.72 6.08-45.26c2.83-17.66 4.18-35.95 4.33-52.37.33-36.43-.75-73.34 1.47-109.68.33-5.32 1.07-16.16 4.7-20.25q.33-.36.81-.45 1.95-.37 3.19.88z M1052.52 855.62a.04.04 0 01.08.01q1.07 9.9 2.17 19.87.33 3.04-2.37 14.18c-3.83 15.8-8.15 31.11-8.9 47.47-.99 21.61-3.11 45.66-9.92 66.3q-1.49 4.52-.87-.2 3.38-25.36 3.7-51.99c.05-3.74-.4-10.32.2-15.58 2.19-19.2 7.39-38.25 11.75-57.05 1.78-7.64 2.93-15.21 4.16-23.01z',\n },\n {\n id: 'hamstring-l',\n labelKey: 'hamstrings',\n side: 'left',\n cx: 1183.2,\n cy: 947.5,\n d: 'M1183.25 947.53c2.57 14.85 4.32 31.11 6.22 46.14q.35 2.74-1.11.39c-14.67-23.67-23.34-52.15-30.55-79.32q-5.08-19.14-5.97-39.05-1.36-30.37-2.44-60.74c-.22-6.09-2.56-15.63-.55-21.57q5.87-17.35 18.96-31.07c10.77-11.28 10.17 46.55 10.16 48.97-.13 41.09-.45 74.18 1.91 110.07.57 8.75 1.88 17.53 3.37 26.18z M1136.43 791.52q.27-.42.49.03c3.12 6.46 4.84 12.26 5.68 19.83 5.07 45.8 8.05 94.61 7.56 140.76-.13 11.8-.46 26.22-5.13 37.08a.44.44 0 01-.83-.06q-2.51-9.14-3.69-18.41-3.54-27.64-7.36-55.24c-2.49-18-5.47-35.67-11.09-52.26q-4.35-12.82-2.08-26.75c1.76-10.77 3.58-21.61 8.46-31.16q3.58-6.99 7.99-13.82z M1115.03 856.73c2.03 18.72 7.11 37.44 11.47 55.77 2.25 9.46 3.94 19.51 3.95 30.11q.02 31.7 4.08 63.16.16 1.26-.29.07-2.7-7.15-4.19-14.6c-4.44-22.21-5.71-40.52-6.87-61.23-.24-4.24-1.19-9.64-2.23-13.92q-3.94-16.25-7.7-32.55c-2.09-9.04.08-18.69 1.6-27.66q.07-.38.32-.09.16.19.01.4-.19.24-.15.54z M1202.61 741.08a.44.44 0 01.72.03c.52.82.9 1.86.95 2.91q.73 15.98.37 31.97-1.16 52.95-7.85 105.49-1.88 14.74-5.97 29.04-1 3.52-1.92 4.95-1.57 2.47-1.39-.37c.58-9.44 1.83-19.17 1.71-28.16-.32-24.52-4.94-49.11-3.95-72.75.69-16.54 2.5-33.51 7.54-49.38q2.99-9.4 6.61-18.6.74-1.88 3.18-5.13z',\n },\n {\n id: 'calves-r',\n labelKey: 'gastrocnemius',\n side: 'right',\n cx: 982.7,\n cy: 1149.3,\n d: 'M982.69 1149.31c-3.07-2.23-3.98-6.24-5.24-11.03-7.19-27.14-7.88-53.18-6.67-82.78q1.03-25.29 9.23-47.45c4.77-12.89 15.33-24.77 23.79-36q.82-1.09.74.27c-1.37 22.86-2.72 45.67-3.11 68.49-.52 30.56-1.51 61.11-.42 91.68.24 6.83-2.77 16.29-10.08 18.37q-4.39 1.25-8.24-1.55z M983.99 1163.56c7.15-5.59 16.16-.63 17 8.23q4.31 45.02 5.22 90.26c.16 8.25-.8 15.79-2.19 23.65q-.45 2.52-1.43 3.66-.95 1.11-1.22-.33c-5.03-26.7-8.28-53.49-11.87-80.36q-1.68-12.52-3.24-18.71-2.04-8.12-5.53-18.24c-1.03-3 .8-6.25 3.26-8.16z M1013.69 1150.31c-4.8-2.61-4.66-16.17-4.36-20.75 2.34-36.49 3.44-73.94 1.04-110.45-1.03-15.55.02-31.49.62-47.06q.03-.66.25-.03c2.28 6.45 4.52 12.88 7.39 19.11 5.12 11.14 11.5 22.91 14.83 33.92q2.34 7.74 3.97 16.46 5.3 28.43 5.62 56.09c.2 18.32-7.9 40-22.63 51.79q-3.42 2.73-6.73.92z M1014.14 1164.37c7-1.83 14.1 2.2 14.11 9.95q.06 29.04-5.62 57.41c-3.87 19.28-6.24 38.23-8.43 57.48a.37.37 0 01-.74-.01q-3.12-43.48-3.58-86.64-.15-14.16.76-28.3c.18-2.83.02-8.98 3.5-9.89z',\n },\n {\n id: 'calves-l',\n labelKey: 'gastrocnemius',\n side: 'left',\n cx: 1172.9,\n cy: 1149.3,\n d: 'M1172.94 1149.31c-6.06-4.56-6.94-11.4-6.8-19.4.96-52.67-.49-105.31-3.54-157.9q-.04-.72.41-.16 7.96 10.07 15.43 20.44c9.11 12.64 13.61 28.98 15.78 44.21 4.96 34.71 3.75 72.94-5.97 106.5-1.97 6.82-9.18 10.93-15.31 6.31z M1144.41 1147.33q-17.19-17.37-20.08-40.86-.89-7.22-.13-19.97 1.18-20.06 4.69-41.33c2.33-14.1 5.8-25.22 12.41-38.61q8.19-16.59 14.35-34.15a.14.13-37.7 01.26.03q1.01 15.71 1.26 31.44c.18 11.61-1.34 24.91-1.58 36.43-.72 34.7 1.22 62.05 2.06 93.19.17 6.32-1.1 26.1-13.24 13.83z M1173.74 1161.73c6.88-2 14.34 3.23 11.98 10.91-2.24 7.3-4.78 14.44-5.99 21.96-5.07 31.52-8.04 63.18-14.13 94.6a.72.71-61.9 01-1.21.37c-.14-.14-.35-.39-.4-.59q-3.53-13.58-3.19-28.23 1.04-44.67 5.06-87.04c.58-6.1 1.93-10.25 7.88-11.98z M1154.32 1165a1.58 1.57-84.6 01.97 1.18c.79 4.42 1.42 8.78 1.57 13.4.96 29.17-.47 62.66-2.04 90.23q-.78 13.79-1.39 19.52a.23.23 0 01-.45 0c-2.79-21.25-5.41-41.99-9.64-63.03-3.44-17.08-4.29-34.91-4.68-52.3-.19-8.37 8.99-11.61 15.66-9z',\n },\n {\n id: 'ankles-r',\n labelKey: 'ankle',\n side: 'right',\n cx: 998.2,\n cy: 1320.5,\n d: 'M998.25 1320.52c-4.62.24-8.17-1.08-8.78-6.28-1.6-13.81-.75-28.85-2.16-42.41q-.39-3.74.24-7.03a.69.69 0 011.23-.28c2.35 3.15 4.22 5.75 5.14 9.66 1.54 6.57 1.91 22.57 9.97 24.09q13.33 2.5 15.93-10.47c.92-4.57 1-12.33 5.05-17.25q.42-.51.42.15c.11 14.39.4 30.86-3.08 44.54-.79 3.13-3.31 4.23-6.51 4.4q-8.73.45-17.45.88z',\n },\n {\n id: 'ankles-l',\n labelKey: 'ankle',\n side: 'left',\n cx: 1149.5,\n cy: 1319.5,\n d: 'M1149.5 1319.51c-6.93-.63-6.82-18.08-7.14-23.7q-.73-12.53-.59-25.09.01-.71.45-.15 2.74 3.49 3.29 7.17c1.67 11.25 3.21 25.34 19.7 19.99 4.87-1.58 7.03-18.57 7.89-23.21.79-4.2 2.74-7 5.28-10.13a.56.56 0 01.98.22c1.12 4.6.04 12.39-.37 17.26-.92 10.77-.32 21.48-1.52 32.37q-.7 6.23-7.01 6.18-12.13-.11-20.96-.91z',\n },\n {\n id: 'feet-r',\n labelKey: 'foot',\n side: 'right',\n cx: 994.8,\n cy: 1332.9,\n d: 'M962.87 1327.38q-.62-.51-.05-1.07l1.99-1.99q.39-.39.93-.41 25.66-.82 51.26 1 1.34.1 4.43 1.47.46.2.69.64 1.84 3.5 2.87 7.23c2.32 8.38-6.63 7.24-12.23 6.68q-15.37-1.53-30.5-4.56c-8.21-1.65-13.33-3.95-19.39-8.99z',\n },\n {\n id: 'feet-l',\n labelKey: 'foot',\n side: 'left',\n cx: 1173.5,\n cy: 1333.1,\n d: 'M1154.35 1341.35c-12.48 1.36-13.27-3.88-8.67-13.37 1.82-3.76 12.72-3.65 16.39-3.77q19.44-.63 38.9-.44c2.41.02 3.31 1 4.61 2.76q.32.44-.09.79c-5.43 4.67-10.52 7.17-17.95 8.74q-16.46 3.47-33.19 5.29z',\n },\n {\n id: 'hands-r',\n labelKey: 'hand',\n side: 'right',\n cx: 789.4,\n cy: 726.8,\n d: 'M789.41 726.84c3.98-6.79 9.89-14.6 16.56-20.14a.31.31 0 01.48.35c-4.39 11.06-5.38 21.94-14.02 30.72-5.82 5.93-10.7 9.81-19.04 8.57q-.55-.08-.59-.63c-.24-3.07-.26-7.29 3.1-8.85 4.82-2.26 10.72-5.28 13.51-10.02z M807.27 745.31c17.61 3.49 2.75 13.52-.73 18.99q-10.05 15.82-21.86 30.37-1.56 1.92-2.52-.58a2.41 2.33-55.4 01-.16-.96q.2-5.26 2.75-9.71c6.94-12.09 13.12-24.52 19.72-36.79q.91-1.7 2.8-1.32z M819.3 744.82c-7.79-6.06-14.51-12.4-11.88-23.38 3.07-12.83 14.66-20.7 25.14-26.38 9.57-5.18 37.61-.75 37.6 13.68q-.01 16.24-3.67 31.99c-2.38 10.26-4.49 16.44-16.87 16.3-10.71-.13-21.93-5.7-30.32-12.21z M827.99 758.27a2.08 2.07 26.6 01.91 2.73q-10.47 22.03-19.66 45.04-2.25 5.63-8.23 6.74a1.45 1.44 84.3 01-1.7-1.4q-.1-4.29 1.51-8.31 7.3-18.34 13.86-36.96c.74-2.1 1.53-6.08 2.97-8.96q.26-.5.82-.57 5.05-.64 9.52 1.69z M841.68 762.32a.76.75-79.1 01.6.89q-4.51 23.14-9.28 45.87c-.73 3.49-2.09 5.73-5.85 5.43q-.52-.04-.61-.56-.74-4.54-.32-7.21 2.89-18.57 5.59-37.18.38-2.65 1.67-8.22.13-.54.68-.44l7.52 1.42z M854.75 799.53a.78.78 0 01-1.37-.02q-.91-1.75-1.15-4.29-1.62-16.58-1.2-33.25a.84.84 0 01.61-.78l7.09-1.93q.59-.16.56.45-.58 14.77-1.12 29.56c-.14 4.06-1.54 6.86-3.42 10.26z',\n },\n {\n id: 'hands-l',\n labelKey: 'hand',\n side: 'left',\n cx: 1336.4,\n cy: 752.0,\n d: 'M1336.39 751.96c-8.72 4.49-29.38 10.28-33.61-3.6q-5.68-18.65-5.83-38.24c-.06-7.59 4.01-11.75 11.09-14.08 8.85-2.92 19.02-5.3 27.54-.35 8.74 5.09 18.39 11.28 22.45 21.01 3.05 7.3 3.34 13.66-1.78 20.01-5.21 6.47-12.49 11.45-19.86 15.25z M1374.32 737.5c-8.05-8.14-9.61-19.67-13.85-30.75a.22.22 0 01.35-.24q10.3 8.96 17.1 20.77c2.57 4.47 9.08 7.59 13.57 9.79 3.11 1.52 2.96 5.9 2.71 8.73q-.05.52-.57.59c-8.87 1.17-13.48-2.98-19.31-8.89z M1383.76 795.45c-.59-.21-.96-.17-1.39-.68-8.84-10.3-15.85-21.5-23.44-32.41-2.81-4.02-8.81-7.64-7.45-13.14q.15-.6.7-.84l7.85-3.44q.66-.29 1.13.25 2.36 2.73 4.17 6.49 7.36 15.23 16.89 31.47c2.33 3.96 3.04 7.59 2.32 11.85a.58.58 0 01-.78.45z M1365.79 812.62c-2.7-.28-6.42-2.66-7.49-5.33q-8.74-21.76-19.85-45.74c-2.12-4.58 6.55-5.17 9.12-5.21 1.8-.03 1.93.71 2.38 2.18q5.72 18.34 15.35 42.12c.74 1.84 4.81 12.43.49 11.98z M1308.16 759.17l7.44 2.1q.23.07.24.31.75 16.26-.86 32.41-.3 3-1.25 5.48a.79.79 0 01-1.42.12q-3.9-6.58-3.82-13.9.16-13.07-.83-26.11-.05-.57.5-.41z M1340.07 814.35c-2.7.82-4.99-1.16-5.54-3.71q-5.06-23.49-9.82-47.47a.77.76-10.7 01.62-.9l7.52-1.38q.59-.11.73.47c2.08 8.53 3.26 19.85 4.22 25.75q2.09 12.92 3.19 21.14.34 2.54-.33 5.46a.86.84 88.4 01-.59.64z',\n },\n ],\n};\n\nexport const MUSCLE_FEMALE_FRONT: MuscleFigureArt = {\n viewBox: '-50 -40 734 1538',\n silhouette:\n 'M 274.27,0 h 7.5 q 18.53,1.85 32.68,8.03 c 12.49,5.46 24.03,14.94 27.55,28.42 a 2.51,2.49 89.9 0 0 1.78,1.79 c 62.05,16.11 59.99,92.38 46.77,140.06 q -2.56,9.24 -6.49,17.96 c -2.53,5.64 -4.61,7.93 -10.53,9.62 l -0.26,-0.1 q -0.2,-0.09 -0.11,-0.29 3.73,-8.25 6.16,-16.1 a 1.18,1.17 -83.3 0 1 1.03,-0.82 c 9.73,-0.81 11.84,-26.25 11.81,-33.17 q 0,-2.26 -1.89,-3.46 -0.54,-0.35 -1.17,-0.24 -2.13,0.37 -4.08,0.23 c -5.7,-0.39 -8.68,-13.45 -9.55,-17.9 q -2.57,-13.24 -5.09,-28.6 -0.65,-3.97 -2.37,-7.72 a 2.7,2.65 86.8 0 0 -1.54,-1.4 C 357.04,93.05 347.03,89.65 337,88.5 q -7.76,-0.88 -14.28,3.52 c -7.75,5.24 -15.65,10.37 -23.95,14.33 q -15.27,7.3 -31.5,12.13 a 1.86,1.85 -0.3 0 0 -1.25,1.26 c -2.08,7.3 -3.02,14.59 -4.33,22.04 -0.77,4.35 -2.6,10.1 -8.02,10.27 q -1.4,0.05 -2.82,-0.07 -0.58,-0.04 -0.95,0.42 -1.31,1.64 -1.26,3.95 0.23,12.21 3.9,23.14 c 1.3,3.87 3.66,8.51 8.11,9.16 a 1.22,1.22 0 0 1 0.99,0.84 q 5.67,17.91 15.65,33.72 0.59,0.93 0.76,2 0.62,15.66 -0.31,31.34 -0.33,0.59 -0.86,1.05 -10.81,9.38 -25.26,12.16 -3.21,-0.66 -6.4,-1 -2.96,-0.31 -6.35,-1.14 -4.1,-0.99 -8.5,-0.85 -19.12,0.63 -38.2,1.5 -7.58,0.35 -14.57,-0.86 a 1.74,1.73 -87.9 0 1 -1.44,-1.56 c -0.81,-8.45 2.45,-17.97 5.45,-25.54 7.91,-19.94 16.52,-39.52 21.72,-59.8 q 3.8,-14.84 3.36,-29.24 -0.62,-20.32 -5.16,-56.52 -0.99,-7.83 -0.58,-13.57 1.97,-27.81 13.7,-48.73 C 220.38,22.24 229.09,15.56 238.9,9.81 Q 254.97,0.39 274.27,0 Z m 61.27,35.35 c -9.93,-7.61 -23.32,-7.23 -32.78,1.35 q -1.11,1.01 0.36,0.73 c 10.93,-2.09 20.77,-2.59 31.88,-0.82 q 2.75,0.43 0.54,-1.26 z M 302.76,36.7 c 9.46,-8.58 22.85,-8.96 32.78,-1.35 q 2.21,1.69 -0.54,1.26 c -11.11,-1.77 -20.95,-1.27 -31.88,0.82 q -1.47,0.28 -0.36,-0.73 z M 333.98559,84.905706 c 18.21278,1.634629 31.69605,8.136487 37.2945,12.907787 5.05164,4.305277 7.19576,45.031667 12.65256,51.693107 1.8636,2.27501 8.59028,-1.54865 8.92968,2.02054 0.963,10.12704 -1.13955,23.87461 -5.01774,34.09876 -2.76635,7.29296 -5.63968,2.08994 -7.32662,6.61326 -4.20041,11.26291 -13.37526,37.43537 -39.7435,47.10729 -18.23028,5.87857 -27.73171,4.95957 -42.38166,-0.61061 -10.53425,-7.41801 -26.32238,-15.61151 -35.48901,-45.82179 -2.15595,-7.10532 -5.07953,-2.63217 -8.24698,-7.1806 -8.2816,-11.89228 -6.24233,-24.37427 -6.11257,-33.09312 1.24002,-3.08768 8.39807,0.42491 9.86574,-4.98496 1.75809,-6.48033 5.74751,-21.52642 6.67934,-30.11758 42.80886,-10.2119 49.53647,-34.194904 68.89626,-32.632084 z',\n outline:\n 'm 373.53,205.88 c -0.45333,0.42667 -0.81,0.91667 -1.07,1.47 -3.29333,7.06 -7.28,13.70667 -11.96,19.94 -2.14,2.84667 -4.41,5.19333 -6.81,7.04 -0.36158,0.27621 -0.53584,0.73316 -0.45,1.18 0.43333,2.3 0.96,4.58667 1.58,6.86 7,25.46 37.78,29.15 59.68,31.39 6.10667,0.62 12.19667,1.61 18.27,2.97 7.96,1.77333 14.17,3.97667 18.63,6.61 14.63,8.62 23.15,23.99 26.24,40.5 3.70667,19.74 5.03,39.49 3.97,59.25 -0.0526,0.96072 0.11501,1.92175 0.49,2.81 1.62,3.77333 3.20667,7.65 4.76,11.63 6.18,15.8 10.13333,32.57333 11.86,50.32 1.18,12.12 1.68,23.92667 1.5,35.42 -0.02,1.29333 0.40333,2.43333 1.27,3.42 17.89,20.25 33.57,44.36 41.14,69.73 2.5,8.36667 5.17333,17.90333 8.02,28.61 4.34,16.3 12.18,33.04 22.68,47.08 3.98,5.31333 7.70667,10.38667 11.18,15.22 0.59333,0.83333 1.35333,1.58333 2.28,2.25 0.28,0.2 0.59,0.3 0.93,0.3 4.22667,-0.0133 8.26333,1.50667 12.11,4.56 6.02,4.78 12.17,10.11667 18.45,16.01 1.51,1.42 3.29,2.63 5.25,3.29 9.2,3.11 19.48,8.17 17.09,19.99 -0.32,1.61 -1.49,2.31 -3.05,2.48 -4.18667,0.46 -8.50667,-0.5 -12.96,-2.88 -4.75333,-2.53333 -8.58667,-4.99667 -11.5,-7.39 -0.55333,-0.45333 -1.12667,-0.48 -1.72,-0.08 l -0.24,0.16 c -0.30375,0.208 -0.35544,0.63562 -0.11,0.91 5.52667,6.25333 9.60333,12.61667 12.23,19.09 4.1,10.08667 7.07333,20.87333 8.92,32.36 0.56667,3.52 0.71667,7.10333 0.45,10.75 -0.34667,4.75333 -3.07,6.62333 -8.17,5.61 -0.77333,-0.16 -1.02333,0.13 -0.75,0.87 0.75333,2.03333 1.44333,4.07 2.07,6.11 1.56,5.04667 -0.2,8.07 -5.28,9.07 -3.49,0.69 -5.42,-2.17 -7.04,-4.75 -0.35421,-0.55015 -1.1808,-0.475 -1.43,0.13 -1.26667,3.16 -3.75333,4.66 -7.46,4.5 -2.69,-0.11 -4.64,-2.56 -5.81,-4.72 -1.54,-2.84667 -3.06,-5.96667 -4.56,-9.36 -0.72,-1.63333 -1.17,-1.56 -1.35,0.22 -0.04,0.44667 -0.04,0.88667 0,1.32 0.0506,0.45209 -0.0911,0.90266 -0.39,1.24 -6.1,6.88 -17.12,-14.55 -18.83,-18.14 -5.52,-11.58 -10.07333,-23.92333 -13.66,-37.03 -2.86,-10.44 -5.67667,-21.13333 -8.45,-32.08 -1.38,-5.43 -3.45,-10.62 -6.82,-15.28 -15.64,-21.66 -32.51,-41.59 -48.94,-62.08 -10.83333,-13.5 -19.95333,-26.60333 -27.36,-39.31 -4.35333,-7.44667 -7.92667,-14.98 -10.72,-22.6 -2.62,-7.14 -4.03667,-14.75667 -4.25,-22.85 -0.06,-2.17 -1.76,-6 -3.08,-8.08 -1.58667,-2.49333 -2.99,-5.05667 -4.21,-7.69 -7.74667,-16.80667 -13.65,-34.53333 -17.71,-53.18 -1.79333,-8.22 -2.94,-15.92 -3.44,-23.1 -0.02,-0.26 -0.0933,-0.50333 -0.22,-0.73 -0.27333,-0.50667 -0.47333,-0.48 -0.6,0.08 -1.26667,5.63333 -3.42667,10.71333 -6.48,15.24 -1.95,2.89 -4.68,5.3 -7.05,7.94 -1.00667,1.12667 -1.63667,2.41333 -1.89,3.86 -0.28667,1.63333 -0.44,3.18667 -0.46,4.66 -0.32667,32.01333 -1.04333,63.59667 -2.15,94.75 -0.1,2.86 0.11,5.76 0.63,8.7 0.94,5.33 4.48,9.32 7.59,13.42 28.13,37.13 39.68,83.8 42.02,130.13 1.55333,30.82667 0.26333,61.91 -3.87,93.25 -3.72667,28.26 -8.91333,56.45333 -15.56,84.58 -6.84667,28.98667 -14.71333,57.40667 -23.6,85.26 -1.72,5.39333 -3.00667,10.55333 -3.86,15.48 -2.69333,15.53333 -4.80333,30.7733 -6.33,45.72 -0.42667,4.1533 -0.60333,7.9733 -0.53,11.46 0.0667,3.3133 0.56667,6.8767 1.5,10.69 5.34,21.8067 9.62333,42.4733 12.85,62 1.64667,9.9467 2.82333,20.4633 3.53,31.55 1.09333,17.08 -0.91667,33.71 -6.03,49.89 -4.02,12.69 -10.84,31.49 -15.29,47.24 -5.78,20.44 -10.58667,41.91 -14.42,64.41 -0.91333,5.3467 -1.38,10.3533 -1.4,15.02 -0.0267,5.0533 -0.14333,10.22 -0.35,15.5 -0.12,3.09 0.5,6 1.74,8.88 2.88,6.73 5.31,15.28 2.81,22.38 -2.82,8 4.32,16.54 8.4,22.9 3.28,5.1067 5.71,10.0833 7.29,14.93 1.9,5.85 8.39,13.01 13.6,16.02 5.4,3.11 7.35,6.81 7,13.31 -0.24,4.33 -3.01,4.97 -6.62,5.27 -7.24,0.5933 -14.49333,1.0133 -21.76,1.26 h -26.32 c -6.06667,-0.1867 -12.12,-0.4867 -18.16,-0.9 -3.61333,-0.2533 -5.87,-0.5367 -6.77,-0.85 -6.82,-2.36 -6.74,-17.36 -6.44,-23.15 0.40667,-8.0133 1.49333,-15.8467 3.26,-23.5 1.32,-5.74 2.15,-11.64 2.97,-17.44 0.64,-4.61 0.34,-9.01 0.02,-13.63 -0.32667,-4.6333 -0.007,-9.1933 0.96,-13.68 0.27333,-1.26 0.40667,-2.6733 0.4,-4.24 -0.12,-20.3133 -0.66333,-40.95 -1.63,-61.91 -0.51333,-11.08 -1.24333,-21.3933 -2.19,-30.94 -0.24667,-2.4467 -0.48333,-4.12 -0.71,-5.02 -2.64,-10.4267 -4.75,-19.4267 -6.33,-27 -5.83,-28 -8.22,-56.65 -5.12,-86.07 0.81,-7.69 2.63,-17.18 3.77,-25.59 0.82,-6.0933 1.79667,-12.4767 2.93,-19.15 1.72667,-10.1533 2.95333,-19.9667 3.68,-29.44 0.24667,-3.2667 0.18667,-7.8433 -0.18,-13.73 -0.8,-12.77 -0.72,-25.5 -0.94,-38.64 -0.08,-4.77 0.66,-9.26 -0.1,-14.08 -1.01,-6.35 -1.99,-12.68 -2.63,-19.09 -1.76,-17.5 -3.09333,-31.96333 -4,-43.39 -2.92,-36.9 -4.94333,-71.84333 -6.07,-104.83 -0.62,-18.13333 -0.83,-32.25333 -0.63,-42.36 0.23,-11.76 0.52,-22.64 2.96,-33.39 0.3,-1.31 1.07,-2.44 1.58,-3.7 0.21633,-0.51724 -0.21543,-1.07235 -0.77,-0.99 -5.92,0.89333 -11.68667,0.89 -17.3,-0.01 -0.50066,-0.0855 -0.88038,0.44258 -0.64,0.89 1.22,2.32667 2.01,4.64 2.37,6.94 0.99333,6.25333 1.60667,12.63 1.84,19.13 0.87,24.2 0.11,49.22 -1.04,73.76 -1.77333,37.8 -4.43667,76.32667 -7.99,115.58 -0.87333,9.67333 -2.03333,19.13333 -3.48,28.38 -0.55333,3.52667 -0.79667,7.11333 -0.73,10.76 0.2,11.4933 0.0733,23.2633 -0.38,35.31 -0.37,9.95 -1.13,19.25 -0.15,28.95 0.70667,7.04 1.66,14.1833 2.86,21.43 1.86,11.23 3.05,20.33 4.64,30.47 1.44,9.1533 2.34667,15.75 2.72,19.79 1.86,19.88 1.4,39.8167 -1.38,59.81 -2,14.42 -4.83333,28.62 -8.5,42.6 -1.35333,5.1667 -2.25667,9.95 -2.71,14.35 -0.58,5.6133 -1.02,11.07 -1.32,16.37 -1.40667,25.2467 -2.17333,50.6367 -2.3,76.17 -0.007,1.0667 0.1,2.0967 0.32,3.09 0.94,4.1867 1.30667,7.6833 1.1,10.49 -0.4,5.5 -0.49667,10.37 -0.29,14.61 0.18,3.78 1.45333,11.2467 3.82,22.4 2.32,10.94 3.14,21.2167 2.46,30.83 -0.23,3.23 -0.99,6.23 -2.37,9.18 -1.12,2.4067 -3.07,3.7633 -5.85,4.07 -6.41333,0.72 -12.86333,1.1733 -19.35,1.36 h -32.5 c -6.38667,-0.3133 -12.76333,-0.75 -19.13,-1.31 -2.99,-0.26 -5.8,-0.23 -6.38,-3.95 -0.89,-5.79 0.46,-11.19 5.65,-14.03 3.87333,-2.1133 7.71,-5.6967 11.51,-10.75 1.39333,-1.8467 2.39,-3.6933 2.99,-5.54 2.15,-6.58 6.15,-14.18 10.8,-20.3 3.01333,-3.9733 4.75333,-8.46 5.22,-13.46 0.14667,-1.5867 -0.03,-3.33 -0.53,-5.23 -2.08,-7.87 0.88,-16.6 4.1,-23.94 0.75,-1.74 0.92,-4.92 0.84,-6.79 -0.22,-5.6333 -0.35667,-11.2933 -0.41,-16.98 -0.0333,-4.0267 -0.50667,-8.5367 -1.42,-13.53 -4.55,-24.93 -9.62,-49.15 -17.21,-73.21 -3.40667,-10.7933 -7.04667,-21.86 -10.92,-33.2 -6.66667,-19.4867 -9.09333,-39.4767 -7.28,-59.97 1.06667,-11.9667 2.67667,-23.9133 4.83,-35.84 3.06667,-17.02 6.78333,-34.3733 11.15,-52.06 1.02,-4.14 1.58,-7.7567 1.68,-10.85 0.11333,-3.6133 -0.0567,-7.4867 -0.51,-11.62 -1.76667,-16.2533 -4.03333,-32.40667 -6.8,-48.46 -0.41333,-2.42 -0.96667,-4.71 -1.66,-6.87 -9.93333,-30.95333 -19.14,-64.33 -27.62,-100.13 -1.60667,-6.76 -3.05667,-13.43 -4.35,-20.01 -3.02667,-15.4 -5.79667,-32.35667 -8.31,-50.87 -4.47333,-32.97333 -6.08,-64.13333 -4.82,-93.48 1.96,-45.94 12.04,-90.97 37.47,-128.29 2.24,-3.3 4.7,-6.4 7.12,-9.46 4.15,-5.26 5.95,-10.32 5.77,-16.87 -0.93333,-32.91333 -1.63667,-65.25667 -2.11,-97.03 -0.03,-1.94 -0.52,-3.58 -0.98,-5.42 -0.33333,-1.32 -0.91,-2.49333 -1.73,-3.52 -2.11,-2.64 -4.96,-4.81 -6.7,-7.55 -2.83333,-4.43333 -4.92333,-9.26 -6.27,-14.48 -0.44667,-1.74 -0.80333,-1.72333 -1.07,0.05 -0.21,1.4 -0.01,2.99 -0.19,4.42 -3.26,25.04 -10.27667,49.07667 -21.05,72.11 -2.51,5.36 -6.73,10.25 -7.04,16.61 -0.88,17.8 -8.25,33.44 -17.63,48.71 -6.92667,11.28 -14.61,22.25333 -23.05,32.92 -2.86667,3.61333 -5.78667,7.31667 -8.76,11.11 -0.48667,0.62 -1.03,1.17667 -1.63,1.67 -0.61333,0.50667 -1.13,1.1 -1.55,1.78 -0.54667,0.9 -1.16333,1.77 -1.85,2.61 -12.59,15.4 -25.29,30.72 -36.86,46.89 -5.45,7.62 -7.87,18.03 -9.84,26.83 -3.593333,16.11333 -8.14,31.19333 -13.64,45.24 -2.493333,6.38667 -5.346667,12.43 -8.56,18.13 -1.8,3.2 -10.72,18.37 -15.54,12.26 -0.68,-0.86 -0.25,-2.07 -0.49,-3.02 -0.326667,-1.25333 -0.753333,-1.28667 -1.28,-0.1 -1.83,4.14 -5.34,14.31 -10.67,14.48 -3.546667,0.10667 -5.953333,-1.43333 -7.22,-4.62 -0.209662,-0.51969 -0.897493,-0.62508 -1.24,-0.19 -0.76,0.94667 -1.49,1.90333 -2.19,2.87 -2.2,3.05 -6.34,2.41 -9.1,0.4 -3.57,-2.59 -0.63,-10.37 0.9,-13.45 0.236418,-0.45407 -0.157897,-0.97982 -0.66,-0.88 -2.81,0.51 -6.84,0.27 -7.75,-3 -1.3,-4.73 -0.81,-9.94 0.05,-14.85 1.773333,-10.17333 4.316667,-19.64333 7.63,-28.41 3.18,-8.41333 7.573333,-15.49667 13.18,-21.25 0.322884,-0.3286 0.340328,-0.84758 0.04,-1.19 -0.293333,-0.34 -0.703333,-0.50667 -1.23,-0.5 -0.278815,6e-5 -0.546543,0.0916 -0.76,0.26 -4.246667,3.34667 -9.05,6.25667 -14.41,8.73 -1.546667,0.70667 -3.236667,1.18333 -5.07,1.43 -3.24,0.44 -7.32,1.02 -8.34,-3.06 v -5.04 c 1.89,-8.36 10.71,-11.9 18.05,-14.48 1.214197,-0.42225 2.32994,-1.08557 3.28,-1.95 4.853333,-4.38 9.59,-8.60667 14.21,-12.68 4.72,-4.16 11.45,-9.69 17.55,-8.89 0.42,0.0533 0.796667,-0.0467 1.13,-0.3 0.92,-0.7 1.69,-1.49333 2.31,-2.38 2.833333,-4.10667 5.91,-8.36 9.23,-12.76 3.766667,-4.99333 6.703333,-9.25 8.81,-12.77 6.546667,-10.92667 11.606667,-22.59667 15.18,-35.01 2.026667,-7.06667 3.946667,-14.08667 5.76,-21.06 5.72,-22.05333 15.62667,-42.48333 29.72,-61.29 4.66,-6.22 9.65667,-12.45667 14.99,-18.71 0.39308,-0.46353 0.60294,-1.054 0.59,-1.66 -0.28,-12.94667 0.27,-25.82667 1.65,-38.64 2.22667,-20.61333 7.64667,-40.31667 16.26,-59.11 0.53333,-1.15333 0.76,-2.34333 0.68,-3.57 -1.06,-16.84667 -0.0433,-35.03667 3.05,-54.57 3.2,-20.24 13.06,-40.07 33.4,-47.77 5.15333,-1.95333 10.72667,-3.49333 16.72,-4.62 1.53333,-0.28667 7.27,-1.04667 17.21,-2.28 7.33333,-0.90667 14.61333,-2.13667 21.84,-3.69 9.63333,-1.85333 18.05333,-5.90667 25.26,-12.16 0.35333,-0.30667 0.64,-0.65667 0.86,-1.05 0.61333,-0.13333 1.14,-0.47333 1.58,-1.02 4.60667,-5.78667 7.37667,-12.60667 8.31,-20.46 0.0467,-0.42667 -0.10333,-0.76 -0.45,-1 -3.21333,-2.21333 -6.00333,-5.19 -8.37,-8.93 -0.12667,-0.20667 -0.29667,-0.25333 -0.51,-0.14 -0.12,0.0667 -0.20333,0.13667 -0.25,0.21 -0.11333,-0.71333 -0.36667,-1.38 -0.76,-2 -6.65333,-10.54 -11.87,-21.78 -15.65,-33.72 -0.14124,-0.44693 -0.52604,-0.77342 -0.99,-0.84 -4.45,-0.65 -6.81,-5.29 -8.11,-9.16 -2.44667,-7.28667 -3.74667,-15 -3.9,-23.14 -0.0333,-1.54 0.38667,-2.85667 1.26,-3.95 0.24667,-0.30667 0.56333,-0.44667 0.95,-0.42 0.94667,0.08 1.88667,0.10333 2.82,0.07 5.42,-0.17 7.25,-5.92 8.02,-10.27 1.31,-7.45 2.25,-14.74 4.33,-22.04 0.17452,-0.60386 0.64526,-1.07836 1.25,-1.26 10.82,-3.22 21.32,-7.26333 31.5,-12.13 8.3,-3.96 16.2,-9.09 23.95,-14.33 4.34667,-2.933333 9.10667,-4.106667 14.28,-3.52 10.03,1.15 20.04,4.55 29.47,7.81 0.67736,0.236152 1.23278,0.741083 1.54,1.4 1.14667,2.5 1.93667,5.07333 2.37,7.72 1.68,10.24 3.37667,19.77333 5.09,28.6 0.87,4.45 3.85,17.51 9.55,17.9 1.3,0.0933 2.66,0.0167 4.08,-0.23 0.42,-0.0733 0.81,0.007 1.17,0.24 1.26,0.8 1.89,1.95333 1.89,3.46 0.03,6.92 -2.08,32.36 -11.81,33.17 -0.47681,0.0359 -0.88461,0.36051 -1.03,0.82 -1.62,5.23333 -3.67333,10.6 -6.16,16.1 -0.06,0.13333 -0.0233,0.23 0.11,0.29 z',\n muscles: [\n {\n id: 'neck',\n labelKey: 'neck',\n side: 'midline',\n cx: 320.6,\n cy: 273.4,\n d: 'M 332.05,262.18 c -0.78,8.99 -5.96,18.06 -11.27,26.44 a 0.35,0.35 0 0 1 -0.59,0.01 q -6.05,-9.29 -9.58,-18.59 -1.68,-4.42 -1.62,-8.04 0.06,-3.36 4.03,-3.55 6.44,-0.31 14.09,-0.13 c 2.41,0.05 5.19,0.99 4.94,3.86 z',\n },\n {\n id: 'neck-r',\n labelKey: 'neck',\n side: 'right',\n cx: 299.8,\n cy: 286.0,\n d: 'M 290.15,290.93 c 3.28,4.65 5.62,9.8 7.15,15.32 0.7,2.53 -1.37,5.04 -3.97,5.05 q -6.56,0.04 -11.88,-2.03 a 2.07,2.06 14.4 0 1 -1.3,-2.18 c 0.77,-5.99 4.87,-11.91 8.89,-16.23 a 0.72,0.71 -41.3 0 1 1.11,0.07 z M 301.06,294.13 c -3.51,-6.07 -6.56,-12.38 -9.23,-18.87 q -1.42,-3.46 -1.56,-6.85 -0.36,-8.56 0.86,-17.74 a 0.44,0.44 0 0 1 0.53,-0.37 q 0.46,0.1 0.79,0.48 4.65,5.35 7.86,11.31 c 6.42,11.93 11.65,25.19 18.44,37.61 a 5.28,5.26 30.8 0 1 0.66,2.59 L 319.3,321 a 0.79,0.79 0 0 1 -0.79,0.79 c -1.83,0 -3.44,-1.1 -4.21,-2.73 q -5.68,-11.89 -13.24,-24.93 z',\n },\n {\n id: 'neck-l',\n labelKey: 'neck',\n side: 'left',\n cx: 341.2,\n cy: 286.1,\n d: 'M 328.11,315.98 c -1.39,2.8 -1.85,5.31 -5.45,5.84 a 0.92,0.91 85.6 0 1 -1.04,-0.9 q -0.09,-9.72 -0.08,-18.23 0,-1.57 0.75,-3.05 6.71,-13.16 12.25,-25.58 c 3.49,-7.85 8.12,-17.17 14.42,-23.56 q 0.19,-0.18 0.45,-0.19 a 0.43,0.42 -3.6 0 1 0.44,0.38 q 0.95,7.84 0.93,15.61 -0.02,4.3 -1.34,7.91 -3.03,8.27 -7.56,16.2 -8.05,14.11 -13.77,25.57 z M 343.58,306.54 c 1.42,-5.58 3.9,-10.86 7.19,-15.57 a 0.69,0.68 -50.1 0 1 1.04,-0.1 c 3.9,3.84 9.01,11.14 8.89,17.13 a 1.07,1.06 79.1 0 1 -0.65,0.97 q -5.44,2.34 -12.5,2.38 c -2.39,0.01 -4.57,-2.43 -3.97,-4.81 z',\n },\n {\n id: 'trapezius-r',\n labelKey: 'trapezius',\n side: 'right',\n cx: 263.4,\n cy: 286.9,\n d: 'M 241.01,294.28 c 12.76,-8.28 25.21,-16.07 39.54,-21.44 2.58,-0.96 6.02,0.04 5.63,3.51 q -0.44,3.92 -1.62,5.3 c -6.48,7.58 -12.74,12.81 -19.24,19.14 -1.03,1.01 -1.87,1.15 -3.25,1.03 q -8.13,-0.69 -18.79,-2.97 -2.99,-0.65 -2.7,-3.86 0.05,-0.46 0.43,-0.71 z',\n },\n {\n id: 'trapezius-l',\n labelKey: 'trapezius',\n side: 'left',\n cx: 377.5,\n cy: 286.3,\n d: 'M 366.31,275.29 c 12,4.97 22.67,11.96 33.55,18.94 q 0.51,0.33 0.54,0.94 c 0.08,1.63 -0.71,3.2 -2.44,3.59 q -9.65,2.18 -18.62,2.99 c -1.26,0.11 -2.4,0.24 -3.39,-0.7 q -5.03,-4.78 -10.97,-10.25 -6.53,-6.01 -8.56,-9.16 -1.87,-2.89 -1.63,-6.77 0.03,-0.49 0.35,-0.85 c 3.04,-3.4 7.94,-0.07 11.17,1.27 z',\n },\n {\n id: 'deltoids-r',\n labelKey: 'deltoid',\n side: 'right',\n cx: 202.5,\n cy: 327.4,\n d: 'M 215.94,289.45 c -21.5,15.97 -35.81,41.69 -45.18,66.64 a 0.54,0.54 0 0 1 -0.75,0.3 c -1.36,-0.68 -2.91,-1.32 -2.88,-3.16 q 0.36,-18.38 4.6,-33.36 c 4.12,-14.55 12.32,-23.54 25.35,-31.51 5.06,-3.09 15.01,-5.79 18.99,0.41 a 0.51,0.51 0 0 1 -0.13,0.68 z M 233,326.79 c -5.53,27.66 -26.78,45.52 -55.22,43.68 a 0.54,0.54 0 0 1 -0.5,-0.61 c 4.48,-32.74 28.09,-58.38 54.53,-76.41 q 2.3,-1.57 4.86,-0.86 a 1.61,1.61 0 0 1 1.18,1.72 Q 236,311.81 233,326.79 Z',\n },\n {\n id: 'deltoids-l',\n labelKey: 'deltoid',\n side: 'left',\n cx: 438.6,\n cy: 327.1,\n d: 'M 470.13,355.96 C 463.5,338.45 454.92,322.09 443.6,307.63 q -8.16,-10.43 -18.47,-18.02 a 0.95,0.94 33.2 0 1 -0.26,-1.22 c 3.34,-5.94 13.06,-3.27 17.74,-0.68 13.57,7.5 23.02,17.38 27.32,32.28 q 3.99,13.8 4.29,33.5 0.02,0.68 -0.47,1.17 -1.06,1.07 -2.71,1.71 a 0.71,0.71 0 0 1 -0.91,-0.41 z M 463.02,370.48 c -23.85,1.37 -44.22,-11.24 -52.35,-33.91 q -2.31,-6.45 -3.64,-14.34 -2.64,-15.63 -3.89,-27.26 -0.28,-2.56 2.36,-2.63 1.96,-0.05 4.36,1.61 c 25.95,18.03 49.33,43.22 53.78,75.78 q 0.1,0.71 -0.62,0.75 z',\n },\n {\n id: 'chest-r',\n labelKey: 'pectoralis',\n side: 'right',\n cx: 266.5,\n cy: 376.1,\n d: 'M 215.31,402.8 c 3.26,-19.61 9.28,-38.69 19.81,-54.85 q 13.83,-21.23 37.68,-27.16 c 4.19,-1.04 8.16,-1.75 12.65,-1.52 q 12.07,0.63 26.16,3.99 1.78,0.43 1.87,2.25 1.29,25.82 3.16,54.8 0.99,15.38 0.3,27.45 -0.37,6.41 -1.94,10.48 c -1.58,4.08 -6.16,7.97 -9.72,10.84 -4.33,3.5 -10.61,4.16 -16,3.9 q -10.92,-0.53 -23.26,-4.83 c -17.71,-6.16 -33.56,-14.26 -50.09,-24.02 a 1.31,1.29 20.5 0 1 -0.62,-1.33 z',\n },\n {\n id: 'chest-l',\n labelKey: 'pectoralis',\n side: 'left',\n cx: 374.6,\n cy: 376.7,\n d: 'M 363.91,319.81 c 13.87,2.63 26.6,9.35 35.84,20.13 14.46,16.89 22.21,40.73 25.93,63.05 q 0.11,0.67 -0.48,1.03 -23.28,13.86 -44.52,22.12 c -11.73,4.57 -25.54,8.27 -37.94,6.2 -5.84,-0.97 -14.69,-8.68 -16.85,-14.18 q -1.62,-4.13 -2.04,-13.18 -0.45,-9.71 0.29,-21.75 1.69,-27.64 3.41,-58.27 a 1.18,1.16 -22 0 1 0.33,-0.76 q 0.76,-0.78 1.88,-1.05 11.52,-2.78 22.73,-3.71 6.58,-0.54 11.42,0.37 z',\n },\n {\n id: 'biceps-r',\n labelKey: 'biceps',\n side: 'right',\n cx: 181.2,\n cy: 430.0,\n d: 'M 155.35,437.19 c 0.88,-13.89 5.09,-26.01 11.66,-38.24 4.28,-7.95 13.01,-13.06 21.68,-14.64 q 5.04,-0.91 8.47,-1.31 c 3.81,-0.44 9.89,1.7 10.16,6.4 q 0.6,10.54 -0.27,19.31 c -1.87,18.75 -10.06,34.69 -22.69,48.75 q -8.64,9.63 -17.84,18.84 a 1.95,1.9 16.8 0 1 -0.98,0.51 q -3.19,0.6 -7.01,-0.16 c -1.52,-0.3 -2.45,-1.78 -2.7,-3.22 -0.63,-3.64 -1.32,-7.25 -1.31,-10.96 q 0.05,-12.9 0.83,-25.28 z',\n },\n {\n id: 'biceps-l',\n labelKey: 'biceps',\n side: 'left',\n cx: 459.5,\n cy: 430.0,\n d: 'M 478.52,408.27 q 5.57,13 6.67,24.56 1.21,12.62 1.22,28.51 0,5.95 -1.27,12.12 c -0.81,3.98 -5.47,3.81 -8.54,3.62 q -1.7,-0.11 -3.27,-1.75 c -13.93,-14.57 -28.48,-28.44 -35.35,-48.06 -4.33,-12.36 -5.34,-25.85 -4.21,-39.01 q 0.06,-0.73 0.51,-1.3 c 2.72,-3.44 6.57,-4.44 11.44,-3.76 q 7.25,1.01 11.78,2.52 9.47,3.16 14.86,10.89 3.02,4.33 6.16,11.66 z',\n },\n {\n id: 'triceps-r',\n labelKey: 'triceps',\n side: 'right',\n cx: 186.2,\n cy: 464.1,\n d: 'M 203.67,452.99 c -7.1,14.55 -18.61,30.01 -32.29,39.49 q -2.32,1.61 -4.85,0.35 l -0.31,-0.15 q -2.42,-1.22 -0.37,-2.98 c 17.2,-14.83 28.72,-32 37.23,-52.62 q 0.8,-1.93 2.34,-3.04 a 1.28,1.28 0 0 1 1.8,0.31 q 1.35,1.95 0.97,4.41 -1.1,7.22 -4.52,14.23 z',\n },\n {\n id: 'triceps-l',\n labelKey: 'triceps',\n side: 'left',\n cx: 454.5,\n cy: 463.1,\n d: 'M 442.12,446.42 q 12.14,25.77 33.26,43.55 1.47,1.24 -0.14,2.3 l -0.63,0.42 a 4.39,4.37 45.8 0 1 -4.92,-0.08 q -8.08,-5.68 -15.21,-13.9 c -9.9,-11.44 -19.12,-25.17 -21.69,-39.38 q -0.62,-3.4 1.39,-5.43 0.44,-0.44 0.99,-0.15 1.54,0.81 2.17,2.22 2.35,5.31 4.78,10.45 z',\n },\n {\n id: 'obliques-r',\n labelKey: 'externalOblique',\n side: 'right',\n cx: 243.3,\n cy: 514.9,\n d: 'M 234.32,446.92 c -0.55,-2.95 -0.73,-5.84 -1.94,-8.63 q -4.84,-11.24 -8.61,-21.89 -1.12,-3.17 1.19,-0.73 c 6.09,6.44 10.93,13.52 16.12,20.74 a 1.71,1.68 28.7 0 1 0.33,1.09 q -0.53,11.15 -1.88,22.64 -0.27,2.38 -1.24,0.18 -2.52,-5.75 -3.97,-13.4 z M 242.67,456.5 c 3.65,1.14 7.61,3.78 10.54,6.08 q 2.32,1.82 2.25,4.78 l -0.21,8.13 q -0.04,1.79 -1.45,0.68 -5.7,-4.52 -10.18,-10.21 c -1.95,-2.48 -2.49,-5.57 -2.19,-8.64 a 0.96,0.96 0 0 1 1.24,-0.82 z M 246.6,490.48 c -6.03,-4.05 -7.7,-15.15 -7.34,-21.92 a 0.29,0.29 0 0 1 0.5,-0.19 c 4.79,4.87 9.23,10.01 14.82,13.93 a 1.71,1.7 17.7 0 1 0.72,1.39 l -0.03,11.84 a 0.6,0.6 0 0 1 -0.96,0.47 q -4.04,-3.05 -7.71,-5.52 z M 252.02,456.3 c -3.08,-1.43 -6.59,-6.27 -8.84,-9.51 q -1.03,-1.49 -0.89,-3.31 a 1.39,1.38 -88.2 0 1 1.35,-1.28 q 2.27,-0.04 4.18,0.73 4.36,1.77 9.23,3.14 0.54,0.15 0.58,0.71 0.4,6.12 -1.21,11.67 a 0.35,0.35 0 0 1 -0.56,0.18 q -1.73,-1.34 -3.84,-2.33 z M 257.8,616.66 c -4.79,-0.24 -10.33,-3.88 -14.25,-6.47 -3.22,-2.12 -4.01,-14.52 -4.21,-18.14 q -0.65,-12.12 -0.53,-21.74 0.32,-25.23 0.51,-50.71 c 0.03,-4.43 0.42,-8.84 0.73,-13.1 q 0.3,-4 1.6,-7.53 0.76,-2.05 2.82,-1.27 c 12.29,4.68 12.69,15.09 12.12,26.28 q -0.16,3.03 0.13,5.86 2.02,19.75 1.8,41.33 -0.05,4.7 0.76,9.52 1.4,8.43 2.19,17.36 0.85,9.42 -2.51,17.86 a 1.18,1.17 -77.7 0 1 -1.16,0.75 z M 259.53,441.27 c -6.09,-0.94 -15.24,-7.47 -17.83,-12.96 a 1.96,1.95 -46.6 0 1 -0.04,-1.54 c 0.68,-1.67 2.51,-1.45 3.82,-0.88 q 8.66,3.77 17.36,6.42 a 0.45,0.45 0 0 1 0.31,0.35 q 0.79,4.96 -2.71,8.32 -0.38,0.37 -0.91,0.29 z',\n },\n {\n id: 'obliques-l',\n labelKey: 'externalOblique',\n side: 'left',\n cx: 397.2,\n cy: 515.5,\n d: 'M 384.22,445.83 c 4.32,-0.61 8.05,-3.04 12.37,-3.63 q 1.44,-0.19 1.87,1.19 0.52,1.66 -0.54,3.18 c -4.17,5.96 -7.23,9.14 -12.91,11.89 a 0.38,0.38 0 0 1 -0.53,-0.24 q -1.53,-5.28 -1.13,-11.45 a 1.03,1.01 88.3 0 1 0.87,-0.94 z M 393.51,426.7 q 1.7,-0.72 3.57,-1.16 a 1.83,1.83 0 0 1 1.91,0.73 c 0.66,0.94 0.41,2.29 -0.25,3.15 q -6.32,8.23 -15.71,11.52 -3.03,1.06 -4.1,-1.97 -1.12,-3.14 -1.26,-3.53 -1.02,-2.87 1.9,-3.71 6.45,-1.87 13.94,-5.03 z M 397.15,610.37 c -3.94,2.47 -9.2,6.06 -13.86,6.26 a 1.49,1.48 77.9 0 1 -1.43,-0.93 q -3.33,-8.47 -2.36,-18.41 0.73,-7.6 1.89,-14.77 1,-6.17 0.99,-11.23 c -0.02,-13.26 0.27,-26.67 1.74,-39.85 q 0.47,-4.28 0.19,-8.9 c -0.66,-10.78 0.81,-21.31 12.66,-24.94 a 1.78,1.77 69.5 0 1 2.14,0.98 q 1,2.27 1.34,4.92 1.19,9.27 1.26,20.24 0.16,23.43 0.38,48.3 c 0.09,11.08 -0.18,22.85 -2.37,33.89 -0.34,1.72 -0.99,3.45 -2.57,4.44 z M 398.41,456.38 a 0.8,0.8 0 0 1 1.09,0.63 c 0.86,5.62 -1.96,9.16 -5.73,13.05 q -3.65,3.78 -7.3,6.56 a 0.41,0.41 0 0 1 -0.66,-0.3 q -0.29,-4.61 -0.24,-8.98 0.03,-3.34 2.9,-5.44 4.69,-3.42 9.94,-5.52 z M 401.76,469.17 c 0.19,6.21 -1.1,14.25 -5.22,19.11 -2.62,3.1 -6.7,5.34 -10.07,7.78 q -0.73,0.53 -0.74,-0.38 l -0.07,-12.12 q 0,-0.59 0.46,-0.96 8.07,-6.31 14.53,-13.82 1.06,-1.24 1.11,0.39 z M 417.44,415.21 c -2.14,7.47 -5.47,14.6 -8.52,22.06 q -1.36,3.31 -1.79,6.59 -1.11,8.53 -4.58,16.68 -0.79,1.86 -1.07,-0.14 -1.42,-10.38 -1.9,-22.98 a 1.58,1.57 -28.9 0 1 0.29,-1 q 6.57,-9.46 12.8,-17.21 1.87,-2.32 4.3,-4.31 0.73,-0.59 0.47,0.31 z',\n },\n {\n id: 'abs-r',\n labelKey: 'rectusAbdominis',\n side: 'right',\n cx: 284.1,\n cy: 559.6,\n d: 'M 261.73,482.62 c 0.12,-10.88 -0.33,-22.8 7.93,-31.04 10.43,-10.39 25.75,-12.91 39.95,-10.63 q 0.47,0.08 0.45,0.54 l -0.87,24.33 a 0.96,0.95 88.3 0 1 -0.86,0.92 q -8.51,0.88 -17.53,2.35 c -11.22,1.83 -20.06,5.16 -28.09,13.92 q -1,1.08 -0.98,-0.39 z M 263.89,560.38 c 18.37,-2.6 32.63,0.35 44.32,15.16 q 0.72,0.91 0.91,2.02 0.98,5.72 1.19,10.92 2.01,48.7 2.07,81.21 0.01,2.91 -2.63,5.03 c -2.77,2.21 -10.61,5.88 -13.52,2.38 -6.1,-7.32 -10.49,-16.08 -14.05,-25.36 q -14.5,-37.75 -18.65,-78.2 -0.6,-5.83 -0.33,-12.39 0.03,-0.68 0.69,-0.77 z M 283.92,476.78 q 12.55,-5.43 25.84,-3.32 0.36,0.06 0.36,0.42 0.41,19.6 -0.86,38.86 a 0.91,0.91 0 0 1 -1,0.85 c -13.44,-1.32 -28.43,-1.82 -41.54,1.88 q -1.32,0.37 -1.93,-0.86 c -9,-18.41 3.35,-31 19.13,-37.83 z M 300.31,556.68 q -4.15,-2.21 -8.98,-2.91 -13.66,-2 -27.37,-1.31 a 0.95,0.95 0 0 1 -0.97,-0.72 q -2.73,-10.93 -1.37,-23.2 0.2,-1.78 1.77,-2.92 c 6.36,-4.65 14.69,-8.3 22.33,-8.94 q 12.38,-1.05 23.44,4.26 a 2.06,2.06 0 0 1 1.17,1.89 q -0.3,18.75 -1.38,35.86 -0.03,0.52 -0.55,0.61 c -2.7,0.45 -5.69,-1.34 -8.09,-2.62 z',\n },\n {\n id: 'abs-l',\n labelKey: 'rectusAbdominis',\n side: 'left',\n cx: 357.5,\n cy: 558.6,\n d: 'M 349.65,553.77 c -5.34,0.78 -9.22,3.16 -13.94,5.24 q -1.59,0.69 -3.28,0.24 a 0.64,0.63 -83.8 0 1 -0.47,-0.59 q -1.23,-19.64 -1.28,-36.09 a 1.7,1.68 -13.4 0 1 0.95,-1.53 c 15.64,-7.64 31.83,-5.42 45.86,4.48 0.94,0.67 1.65,1.44 1.78,2.61 q 1.39,12.16 -1.2,23.23 -0.25,1.07 -1.34,1.03 -13.86,-0.54 -27.08,1.38 z M 354.08,475.63 c 16.7,6.15 32.39,19.94 21.71,39.55 a 0.9,0.9 0 0 1 -1.05,0.43 c -13.38,-3.92 -27.7,-3.22 -41.96,-2.05 a 0.9,0.9 0 0 1 -0.97,-0.78 c -1.62,-12.74 -1.1,-26.27 -1.03,-38.85 a 0.48,0.47 86.4 0 1 0.4,-0.46 q 11.86,-1.91 22.9,2.16 z M 362.23,642.32 c -4.21,12.26 -9.35,24.52 -17.49,34.79 q -0.9,1.12 -2.2,1.22 -6.54,0.54 -11.69,-3.91 c -1.34,-1.16 -2.37,-2.61 -2.35,-4.44 q 0.27,-32.33 1.7,-73.01 0.36,-10.37 1.51,-19.31 0.12,-0.89 0.67,-1.6 c 11.52,-15 26.64,-18.71 44.72,-15.65 a 0.85,0.84 -86 0 1 0.71,0.83 q 0.06,12.43 -1.93,25.22 -4.56,29.34 -13.65,55.86 z M 378.34,483.09 c -8.04,-8.87 -17.3,-12.26 -29.19,-14.16 q -8.48,-1.35 -16.49,-2.17 a 1.05,1.04 2.2 0 1 -0.93,-1 l -0.83,-24.24 q -0.02,-0.53 0.51,-0.61 18.35,-2.62 31.52,4.43 14.18,7.59 15.53,22.29 0.76,8.32 0.7,15.15 -0.01,1.2 -0.82,0.31 z',\n },\n {\n id: 'forearm-r',\n labelKey: 'forearmFlexors',\n side: 'right',\n cx: 126.3,\n cy: 566.5,\n d: 'M 80.93,647.88 c 14.1,-28.26 32.44,-54.05 52.98,-78.01 6.28,-7.32 12.52,-13.04 22.3,-14.76 a 0.44,0.44 0 0 1 0.44,0.67 q -33.59,51.14 -75.12,92.53 -1.62,1.61 -0.6,-0.43 z M 85.85,647.42 q 11.51,-11.53 23.19,-23.33 6.63,-6.71 16.74,-19.55 c 13.51,-17.18 26.63,-37.24 39.52,-56.02 a 1.08,1.08 0 0 1 1.85,0.11 q 0.51,0.96 0.26,2.09 c -1.73,8.15 -5.44,14.39 -10.55,22.73 q -11.14,18.18 -25.7,34.1 -18.98,20.74 -39.21,37.61 -2.7,2.25 -6.02,3.82 -0.28,0.13 -0.57,0.24 -1.42,0.54 -1.26,-0.09 0.03,-0.14 0.14,-0.23 0.8,-0.67 1.61,-1.48 z M 158.49,493 c -4.72,28.27 -19.05,55.5 -36.58,78.04 q -10.8,13.89 -20.36,28.46 -4.33,6.6 -7.59,13.38 c -5.52,11.5 -11.24,22.8 -19.41,32.11 q -1.49,1.7 -0.81,-0.46 c 3.77,-11.82 9.38,-23.48 14.74,-35.02 3.82,-8.21 7.5,-17.64 10.42,-26.75 7.62,-23.71 16.99,-47.77 29.34,-68.38 7.41,-12.37 17.14,-24.67 29.9,-31.38 a 0.72,0.71 -14.7 0 1 1.05,0.61 q 0.12,4.42 -0.7,9.39 z M 176.77,536.74 c -5.58,2.64 -11.34,4.68 -16.45,7.91 -5.83,3.68 -11.93,7.82 -18.84,8.99 a 1.21,1.21 0 0 1 -1.41,-1.13 c -0.29,-5.42 4.57,-12.34 7.66,-16.52 q 10.15,-13.75 23.71,-26.94 c 1.35,-1.32 3.26,-2.11 5.16,-1.83 a 1.02,1.02 0 0 1 0.86,0.86 q 2.03,13.42 -0.05,27.79 a 1.12,1.12 0 0 1 -0.64,0.87 z',\n },\n {\n id: 'forearm-l',\n labelKey: 'forearmFlexors',\n side: 'left',\n cx: 514.8,\n cy: 566.2,\n d: 'M 478.46,543.49 c -4.04,-2.35 -8.89,-4.3 -13.28,-6.25 -2.13,-0.95 -1.9,-3.18 -2.11,-5.15 q -1.32,-12.65 0.43,-23.9 a 1.38,1.38 0 0 1 1.54,-1.16 c 1.68,0.21 3.26,0.93 4.5,2.12 q 12.39,11.96 22.31,25.05 c 2.67,3.51 10.26,13.94 8.99,18.38 a 1.51,1.51 0 0 1 -1.8,1.06 q -5.3,-1.25 -8.83,-3.31 -5.39,-3.14 -11.75,-6.84 z M 480.72,568.04 c -3.26,-5.55 -5.96,-11.12 -7.24,-17.31 q -0.33,-1.61 0.58,-2.51 a 1.03,1.03 0 0 1 1.57,0.16 c 13.24,19.66 27,40.11 41.05,58.18 11.56,14.88 25.47,28 38.8,41.13 q 0.56,0.55 1.06,1.21 0.78,1.05 -0.44,0.58 -3.39,-1.29 -6.75,-4.08 -19.67,-16.3 -37.87,-35.97 -17.53,-18.94 -30.76,-41.39 z M 484.61,555.07 c 11.21,1.91 17.39,8.95 24.45,17.26 18.64,21.97 34.4,44.56 47.76,69.37 q 1.9,3.52 3.32,6.62 0.61,1.33 -0.43,0.3 -42.24,-42.1 -75.48,-92.97 -0.48,-0.73 0.38,-0.58 z M 540.63,578.72 c 5.89,18.68 13.76,35.38 21.55,52.65 q 2.61,5.79 4.88,12.9 0.81,2.52 -0.89,0.5 c -7.48,-8.88 -12.5,-17.92 -17.97,-29.24 q -6.73,-13.92 -15.23,-25.62 -8.17,-11.25 -17.48,-23.63 c -15.23,-20.26 -27.78,-45.5 -32.6,-70.62 q -1.21,-6.31 -1.13,-11.97 0.01,-1.19 1.06,-0.64 c 10.4,5.42 18.51,14.3 25.31,24.31 13.82,20.33 24.84,47.05 32.5,71.36 z',\n },\n {\n id: 'hands-r',\n labelKey: 'hand',\n side: 'right',\n cx: 43.8,\n cy: 710.2,\n d: 'M 76.9,699.46 c -1.68,6.93 -4.86,14.23 -9.75,19.73 -3.68,4.16 -10.21,-0.6 -12.84,-3.77 q -4.85,-5.86 -10.18,-10.8 c -2.03,-1.88 -9.58,-5.18 -8.37,-9.02 2,-6.4 4.37,-11.1 8.21,-16.74 q 5.74,-8.42 12.12,-17.03 2.99,-4.03 5.79,-6.44 1.65,-1.41 4.25,-0.76 7.51,1.87 13.62,4.2 a 0.47,0.47 0 0 1 0.29,0.4 q 1.61,20.71 -3.14,40.23 z M 22.64,686.61 q -4.35,2.68 -8.97,5.43 -2,1.2 -3.76,0.73 -2.04,-0.55 -3.53,-1.72 a 1.59,1.59 0 0 1 -0.52,-1.77 q 0.73,-2.04 2.74,-3 5.14,-2.46 10.34,-5.1 a 13.93,13.75 -80.7 0 0 3.47,-2.53 c 3.04,-3.03 6.28,-5.7 9.81,-8.15 q 6.86,-4.77 13.58,-9.74 c 1.68,-1.24 2.71,-1.36 4.54,-0.38 4.66,2.47 -4.59,11.2 -6.57,12.67 -6.61,4.92 -13.95,9.14 -21.13,13.56 z M 32.82,715.26 q -5.43,14.93 -12.06,27.84 -1.98,3.85 -4.71,6.75 a 1.67,1.66 51.8 0 1 -2.66,-0.32 c -2.02,-3.56 1,-13.05 2.6,-16.84 q 6.53,-15.37 13.87,-30.34 1.12,-2.28 2.93,-0.51 l 2.38,2.35 q 1.73,1.69 0.66,3.87 -1.5,3.03 -3.01,7.2 z M 32.18,751.27 q -3.61,7.78 -7.04,13.77 -0.8,1.41 -2.48,1.29 a 2.04,2.04 0 0 1 -1.82,-1.48 q -0.59,-2.11 -0.16,-4.36 1.46,-7.75 4.24,-15.75 5.55,-15.95 13.53,-31.52 a 0.92,0.91 -74.1 0 1 0.89,-0.5 c 2.55,0.22 5.63,1.06 5.19,4.36 q -0.48,3.64 -1.61,7.19 -3.97,12.44 -10.74,27 z M 54.56,726.38 c -4.87,12.51 -10.55,24.74 -16.83,36.91 q -1.47,2.85 -4.02,0.9 -0.2,-0.16 -0.33,-0.36 -1.89,-2.86 -0.7,-5.81 c 4.9,-12.05 9.63,-24.27 15.68,-36.05 q 0.94,-1.84 2.66,-0.68 l 2.47,1.68 q 1.89,1.28 1.07,3.41 z M 53.04,752.14 c 1.93,-10.58 3.66,-20.18 11.74,-27.88 a 0.88,0.88 0 0 1 1.43,0.33 q 0.18,0.48 0.07,0.95 -3.65,14.78 -9.97,27.42 -0.75,1.49 -1.97,2.17 a 1.06,1.06 0 0 1 -1.57,-1.02 q 0.09,-0.98 0.27,-1.97 z',\n },\n {\n id: 'hands-l',\n labelKey: 'hand',\n side: 'left',\n cx: 597.1,\n cy: 710.7,\n d: 'M 572.57,717.95 c -4.99,-6.62 -7.75,-14.53 -9.42,-22.45 q -3.74,-17.75 -2.3,-36.07 0.04,-0.54 0.55,-0.72 6.91,-2.55 14.55,-4.31 a 3.01,2.98 -33.7 0 1 2.4,0.47 q 2.39,1.67 4.36,4.26 11.12,14.61 17.14,24.22 2.19,3.48 3.91,8.26 c 1.42,3.93 2.9,6.43 -1.05,8.84 -6.91,4.23 -11.6,9.71 -16.7,15.64 q -2.2,2.56 -5.58,4.02 -4.71,2.02 -7.86,-2.16 z M 629.7,692.91 q -0.88,0.05 -1.63,-0.39 -16.99,-9.79 -30.39,-19.09 -5.44,-3.78 -8.34,-10.22 a 1.71,1.66 45.9 0 1 0,-1.38 c 0.82,-1.77 3.4,-2.74 5.14,-1.47 6.84,4.98 13.95,9.43 20.22,14.76 2.49,2.13 4.62,4.61 7.54,6.13 q 5.16,2.68 10.13,5.06 1.59,0.76 2.51,2.34 a 1.98,1.97 56.7 0 1 -0.53,2.58 q -2.03,1.52 -4.65,1.68 z M 619.38,741.59 c -5.55,-10.95 -9.91,-22.4 -14.42,-34.16 q -0.76,-1.97 0.82,-3.38 1.39,-1.24 2.48,-2.21 1.76,-1.58 2.8,0.54 8.21,16.69 14.65,32.42 2.73,6.68 2.32,13.6 -0.1,1.72 -1.83,1.98 a 1.61,1.58 -24.2 0 1 -1.45,-0.54 q -2.91,-3.38 -5.37,-8.25 z M 615.42,764.65 c -7.37,-14.18 -14.47,-29.6 -18.64,-45 q -0.59,-2.21 -0.29,-4.52 0.07,-0.54 0.54,-0.83 1.9,-1.18 4.13,-1.51 1,-0.15 1.46,0.75 7.03,13.62 12.86,29.78 3.2,8.87 4.64,16.66 0.36,1.96 0.12,4.04 c -0.34,2.92 -3.74,2.72 -4.82,0.63 z M 603.2,763.32 C 597.32,751.95 590.92,738.6 586.42,726.4 q -0.8,-2.15 1.08,-3.48 l 2.22,-1.57 q 1.83,-1.29 2.86,0.69 c 6.13,11.73 10.79,24.28 15.74,36.17 q 1.16,2.78 -0.76,5.72 -0.12,0.18 -0.3,0.32 -2.58,1.93 -4.06,-0.93 z M 585.43,754.04 c -5.15,-8.61 -8.65,-19.26 -10.81,-28.78 q -0.46,-2.03 1.32,-0.96 1.2,0.73 2.2,1.88 c 6.71,7.78 8.51,18.11 10.03,28.15 a 0.6,0.59 -12.9 0 1 -0.42,0.66 q -1.5,0.43 -2.32,-0.95 z',\n },\n {\n id: 'adductors-r',\n labelKey: 'adductors',\n side: 'right',\n cx: 264.4,\n cy: 742.1,\n d: 'M 286.21,731.89 c 5.1,-12.47 11.15,-24.68 16.82,-36.79 a 1.17,1.17 0 0 1 1.84,-0.38 q 0.8,0.71 0.75,1.93 c -0.46,12.38 -1.19,24.44 -2.76,37.71 -1.13,9.56 -1.91,19.14 -3.49,28.56 -0.69,4.17 -2.41,8.04 -4.32,11.69 a 2.22,2.21 29.3 0 1 -3.12,0.87 q -1.32,-0.8 -1.28,-2.41 0.2,-8.82 0.13,-17.67 -0.01,-1.4 -0.62,-2.66 c -2.16,-4.44 -4.98,-9.87 -5.17,-14.91 q -0.11,-2.7 1.22,-5.94 z M 292.87,682.52 c -3.12,14.57 -9.61,27.39 -18.76,39.63 q -0.68,0.91 -1.28,-0.05 c -2.93,-4.74 -4.21,-9.67 -4.63,-15.36 q -0.45,-5.9 -1.09,-8.14 -1.89,-6.56 -4.75,-13.01 c -2.76,-6.23 -4.28,-13.06 -7.14,-19.37 -7.35,-16.19 -16.26,-33.86 -22.42,-51.48 q -0.08,-0.21 -0.01,-0.42 a 0.26,0.26 0 0 1 0.46,-0.06 q 10.77,14.73 21.98,28.77 11.5,14.4 17.6,19.88 7.55,6.77 14.86,13.4 2.74,2.48 4.97,5.3 a 1.11,1.09 32.6 0 1 0.21,0.91 z M 300.1,836.83 q 1.64,19.12 2.22,36.73 0.11,3.47 -0.89,0.14 -2.42,-8.03 -4.58,-16.34 c -4.22,-16.26 -9.63,-31.97 -14.75,-48.34 q -2.58,-8.25 -6.48,-18.58 -14.03,-37.14 -28.05,-75.59 -3.75,-10.3 -6.6,-19.52 -5.15,-16.64 -9.78,-32.48 c -4.96,-16.95 -8.01,-35.46 -8.1,-52.91 q -0.02,-2.71 0.71,-0.1 9.47,34.09 24.55,65.57 c 6.56,13.69 13.54,27.25 19.02,40.89 q 15.49,38.57 24.83,67.42 2.41,7.47 3.31,17.16 c 1.12,12.19 3.56,24.02 4.59,35.95 z',\n },\n {\n id: 'adductors-l',\n labelKey: 'adductors',\n side: 'left',\n cx: 376.6,\n cy: 741.7,\n d: 'M 338.67,872.66 c 0.73,-20.39 1.92,-38.3 4.91,-57.16 1.83,-11.53 2.14,-23.33 6.03,-34.79 q 10.93,-32.22 23.86,-64.19 c 5.7,-14.09 12.7,-27.77 19.13,-41.2 q 15.32,-32.04 24.53,-65.61 0.65,-2.39 0.64,0.08 c -0.12,28.68 -7.98,55.21 -17.34,83.63 -1.78,5.41 -3.2,10.88 -5.19,16.32 -10.25,27.99 -20.2,55.76 -30.81,83.12 q -2.8,7.2 -4.91,13.95 -5.59,17.81 -11.19,35.6 c -3.34,10.63 -5.96,21.88 -9.13,32.74 q -0.27,0.92 -0.4,-0.03 -0.18,-1.22 -0.13,-2.46 z M 394.37,647.3 c -4.46,9.4 -9.38,19.33 -12.44,29.17 q -1.3,4.17 -2.83,7.95 c -2.26,5.61 -4.97,10.94 -5.74,16.89 -0.99,7.53 -1.06,14.75 -5.53,21.2 a 0.5,0.5 0 0 1 -0.83,0.01 q -4.34,-6.22 -7.72,-11.72 -7.96,-12.97 -11.16,-28.21 a 1.61,1.61 0 0 1 0.35,-1.37 q 2.44,-2.82 5.14,-5.21 c 9.88,-8.72 18.7,-16.83 27.48,-27.39 q 13.43,-16.14 25.97,-33.56 0.32,-0.44 0.43,-0.49 0.87,-0.39 0.54,0.51 -5.81,15.68 -13.66,32.22 z M 352.83,748.3 c -2.02,3.67 -2.95,6.58 -2.78,11.03 q 0.26,6.53 0.21,13.72 c -0.01,1.58 -1.13,2.86 -2.75,2.9 q -0.58,0.01 -0.9,-0.48 C 342.49,769 341.27,763.08 340.41,755 q -1.04,-9.79 -2.26,-19.97 c -1.6,-13.31 -2.43,-25.65 -2.79,-38.57 q -0.03,-1.03 0.53,-1.68 a 1.21,1.2 52.6 0 1 2.01,0.27 q 6.87,14.67 13.39,28.8 2.2,4.77 3.93,9.5 1.07,2.92 0.68,5.46 -0.83,5.42 -3.07,9.49 z',\n },\n {\n id: 'quadriceps-r',\n labelKey: 'quadriceps',\n side: 'right',\n cx: 247.7,\n cy: 795.8,\n d: 'M 250.69,888.3 q -16.76,-40.15 -28.04,-78.67 -9.66,-32.96 -14.75,-66.84 c -6.22,-41.38 -6.25,-81.5 4.58,-120.54 q 0.12,-0.43 0.43,-0.11 0.42,0.42 0.59,0.99 22.71,76.86 50.06,155.88 0.82,2.37 1.12,4.78 4.02,31.91 4.89,65.81 c 0.88,34.39 -0.14,66.83 -3.55,99.57 -0.42,4.08 -1.48,7.64 -3.4,11.1 a 1.74,1.74 0 0 1 -1.36,0.9 c -3.47,0.33 -9.58,0.21 -9.46,-4.63 q 0.8,-32.72 -0.01,-63.12 -0.07,-2.67 -1.1,-5.12 z M 237.75,955.7 c -18.56,-47.89 -33.57,-96.23 -39.84,-146.62 -3.58,-28.72 -3.69,-58.65 1.76,-86.95 q 0.62,-3.18 0.81,0.06 0.5,8.53 1.83,17.04 3.42,21.88 10.35,47.5 6.6,24.41 13.5,49.26 2.72,9.81 5.92,19.09 4.05,11.74 7.55,25.02 1.76,6.7 2.16,12.33 2,28.5 1.14,55.08 c -0.12,3.52 -0.98,6.35 -3.98,8.55 a 0.79,0.79 0 0 1 -1.2,-0.36 z M 301.11,919.16 c -0.02,16.26 -1.13,34.39 -10.87,47.81 -1.99,2.73 -6.98,1.8 -10.02,1.14 -1.09,-0.24 -1.35,-1.1 -1.62,-2.04 -3.49,-11.83 -3.03,-24.65 -1.79,-37.03 q 1.41,-14.09 3.35,-26.37 1.6,-10.13 1.54,-18.61 -0.09,-12.6 -1.48,-24.36 c -1.65,-13.85 -3.88,-27.85 -2.4,-41.77 a 0.32,0.32 0 0 1 0.4,-0.28 q 0.4,0.1 0.57,0.48 c 14.17,32.12 22.37,65.88 22.32,101.03 z',\n },\n {\n id: 'quadriceps-l',\n labelKey: 'quadriceps',\n side: 'left',\n cx: 393.2,\n cy: 795.6,\n d: 'M 390.96,886.41 q -1.98,4.65 -2.04,9.09 -0.45,33.06 0.22,61.74 c 0.09,3.94 -6.78,4.21 -9.43,3.95 a 1.8,1.79 -10.8 0 1 -1.44,-0.97 c -1.51,-2.91 -2.67,-5.71 -3.07,-9.04 q -1.93,-16.27 -2.84,-32.46 c -2.55,-44.99 -1.64,-90.5 3.77,-134.26 q 0.37,-2.95 1.26,-5.54 26.45,-76.29 50.24,-156.54 a 0.39,0.38 21.6 0 1 0.55,-0.23 q 0.31,0.16 0.41,0.51 c 10.18,37.82 10.57,76.54 5.14,115.55 q -4.46,32.04 -13.33,63.85 -12.28,44.03 -29.44,84.35 z M 441.32,723.15 q 5.4,27.88 3.91,59.43 c -1.5,31.66 -7.16,62.78 -15.56,93.66 q -10.93,40.18 -26.56,79.46 a 0.8,0.8 0 0 1 -1.23,0.34 c -4.09,-3.18 -3.84,-7.55 -3.96,-12.09 q -0.59,-24.2 1.07,-50.23 0.42,-6.4 2.05,-12.77 3.38,-13.22 8.06,-26.98 3.21,-9.44 5.93,-19.09 c 7.96,-28.15 15.34,-53.97 20.99,-81.11 q 3.3,-15.87 4.53,-32.62 0.01,-0.1 0.11,-0.14 l 0.25,-0.09 q 0.11,-0.04 0.12,0.07 0.06,0.98 0.29,2.16 z M 350.02,966.12 c -9.24,-14.15 -10.21,-31.4 -10.24,-48.19 -0.07,-33.99 8.51,-69.02 22.57,-100.06 a 0.51,0.49 -76.6 0 1 0.45,-0.29 q 0.28,0 0.31,0.28 c 0.83,7.48 0.62,15.88 -0.25,23.21 -1.72,14.59 -3.74,28.99 -3.61,44.11 q 0.06,8 1.44,16.9 1.82,11.87 3.26,24.93 c 1.49,13.54 2.18,28.24 -1.97,40.04 a 1.57,1.55 2.7 0 1 -1.11,1 q -3.84,0.9 -7.13,0.61 -2.19,-0.19 -3.72,-2.54 z',\n },\n {\n id: 'knees-r',\n labelKey: 'knee',\n side: 'right',\n cx: 265.3,\n cy: 1023.1,\n d: 'M 258.39,1012.52 q -5.64,-13.48 -7.66,-29.52 -0.05,-0.4 0.28,-0.64 10.7,-7.7 22.82,-4.11 c 5.29,1.57 4.59,5.57 4.3,9.79 -0.9,12.75 -3.27,25.99 -10.59,36.26 a 1.05,1.05 0 0 1 -1.64,0.09 q -4.73,-5.21 -7.51,-11.87 z M 258.71,1030.63 c 3.61,6.97 7.98,15.68 6.95,23.65 a 0.48,0.48 0 0 1 -0.72,0.35 l -18.34,-11.02 q -0.38,-0.23 -0.55,-0.64 -1,-2.44 -1.32,-4.76 -3.61,-26.35 -4.29,-51.87 -0.06,-2.2 0.39,-0.04 c 3.24,15.52 10.35,29.77 17.88,44.33 z M 288.4,985.22 q 1.73,22.58 1.26,41.7 -0.04,1.47 -0.76,3.07 -4.6,10.16 -10.25,24.15 c -2.27,5.6 -3.1,11.54 -5.89,17 q -0.2,0.39 -0.5,0.07 -0.38,-0.42 -0.45,-1 c -1.47,-12.75 1.68,-26.74 4.89,-38.94 4.36,-16.65 9.53,-33.85 10.59,-51.47 q 0.01,-0.22 0.19,-0.33 0.05,-0.02 0.1,-0.02 0.14,0.02 0.16,0.16 0.44,2.76 0.66,5.61 z',\n },\n {\n id: 'knees-l',\n labelKey: 'knee',\n side: 'left',\n cx: 375.8,\n cy: 1024.0,\n d: 'M 367.17,978.19 c 7.47,-2.33 16.25,-0.86 22.63,4.13 q 0.45,0.35 0.38,0.92 -1.87,15.08 -7.33,28.55 -2.94,7.24 -7.89,12.74 a 0.87,0.87 0 0 1 -1.34,-0.05 c -8.34,-10.84 -10.82,-27.73 -10.91,-41.25 -0.01,-2.65 2.18,-4.32 4.46,-5.04 z M 369.06,1070.47 q -0.22,1.65 -1.01,0.18 c -2.79,-5.17 -3.42,-10.89 -5.57,-16.11 q -5.2,-12.65 -10.53,-24.91 c -0.38,-0.88 -0.8,-1.93 -0.81,-2.92 q -0.26,-23.13 1.85,-46.89 a 0.27,0.26 -77 0 1 0.36,-0.23 l 0.25,0.11 q 0.13,0.05 0.14,0.19 0.36,9.87 2.31,18.26 4.17,17.95 9.24,37.46 c 3.02,11.63 5.3,23.46 3.77,34.86 z M 378.49,1038.47 q 5.25,-11 11.25,-23 6.8,-13.59 10.56,-29.93 0.03,-0.15 0.18,-0.19 0.05,-0.01 0.1,0 0.1,0.01 0.09,0.11 -0.84,19 -2.62,37.31 -1.13,11.63 -2.64,19.1 -0.25,1.26 -1.49,1.99 -10.01,5.93 -17.84,10.76 a 0.53,0.53 0 0 1 -0.8,-0.37 c -0.79,-5.16 1.07,-11.29 3.21,-15.78 z',\n },\n {\n id: 'tibialis-r',\n labelKey: 'tibialisAnterior',\n side: 'right',\n cx: 258.2,\n cy: 1176.1,\n d: 'M 260.21,1135.29 c 4.48,29.68 7.59,58.82 9.36,87.72 0.53,8.66 1.47,17.39 2.79,25.97 q 1.84,11.96 7.34,33.23 0.5,1.94 1.04,7.01 0.48,4.54 -2.34,7.74 a 0.6,0.6 0 0 1 -0.99,-0.15 q -1.61,-3.47 -2.33,-7.07 -5.47,-27.17 -8.25,-45.03 -4.18,-26.84 -7.6,-47.71 -0.97,-5.95 -2.27,-12 -7.08,-33.02 -14.69,-65.86 -1.12,-4.84 -2.44,-9.69 -1.98,-7.22 -2.28,-9.76 -2.41,-20.6 1.44,-43.08 0.25,-1.46 0.73,-0.06 7.12,20.57 13.32,44.54 4.83,18.73 7.17,34.2 z',\n },\n {\n id: 'tibialis-l',\n labelKey: 'tibialisAnterior',\n side: 'left',\n cx: 382.2,\n cy: 1175.7,\n d: 'M 367.02,1257.45 q 3.27,-15.94 4.47,-35.75 2.4,-39.61 7.94,-77.98 2.44,-16.87 5.47,-30.17 6.3,-27.69 16.13,-56.67 0.69,-2.03 1.04,0.08 2.43,14.55 2.2,31.01 -0.15,10.91 -2.78,20.08 -1.29,4.53 -2.34,9.1 -7.34,31.94 -13.88,61.81 -2.12,9.66 -3.56,18.43 c -4.93,29.99 -9.41,60.77 -15.76,91.85 q -0.74,3.61 -2.23,7.21 a 0.86,0.86 0 0 1 -1.48,0.19 q -2.35,-3.11 -2.05,-7.14 0.36,-4.83 1.56,-9.43 3.01,-11.58 5.27,-22.62 z',\n },\n {\n id: 'calves-r',\n labelKey: 'gastrocnemius',\n side: 'right',\n cx: 265.2,\n cy: 1172.0,\n d: 'M 273.89,1099.95 c 3.37,-15.16 7.39,-30.47 12.61,-44.88 q 0.67,-1.85 1.28,0.01 4.41,13.38 7.29,29.13 3.29,18.03 6.8,44.66 2.68,20.36 2.76,35.74 0.04,6.36 -1.26,13.77 -3.67,20.9 -7.39,37.94 -6.52,29.95 -12.99,57.95 -0.31,1.31 -0.67,0.01 -3.32,-11.98 -5.27,-24.29 -5.82,-36.85 -4.93,-74.51 c 0.46,-19.33 0.09,-35.61 0.04,-57.98 q -0.03,-9.65 1.73,-17.55 z M 272.32,1289.43 q 0.14,1.3 -0.7,0.3 -1.96,-2.32 -3.31,-4.94 -4.85,-9.47 -8.79,-20.24 -9.58,-26.21 -15.83,-53.09 -1,-4.3 -2.77,-8.19 c -8,-17.6 -12.77,-36.6 -13.83,-55.89 q -1.45,-26.23 4.89,-54.26 0.41,-1.85 1,-0.05 1.2,3.7 2.35,7.92 c 6.05,22.14 11.41,47.6 16.75,71.19 q 2.42,10.71 3.46,19.48 2.54,21.38 5.09,39.58 c 2.14,15.29 4.57,31.52 9.27,46.7 q 1.76,5.67 2.42,11.49 z',\n },\n {\n id: 'calves-l',\n labelKey: 'gastrocnemius',\n side: 'left',\n cx: 376.8,\n cy: 1172.4,\n d: 'M 351.12,1061.47 q 0.86,-3.24 2.27,-6.95 a 0.37,0.37 0 0 1 0.67,-0.04 q 0.6,1.15 1.07,2.55 4.5,13.38 8.77,29.36 3.17,11.88 4.35,21.44 0.65,5.26 0.58,16.16 c -0.12,17.19 -0.49,33.53 -0.01,50.26 q 0.96,33.46 -3.97,69.04 -2.3,16.62 -6.18,31.23 -0.05,0.18 -0.19,0.29 a 0.25,0.25 0 0 1 -0.39,-0.14 c -7.63,-32.4 -14.66,-63.57 -20.38,-95.86 q -1.46,-8.28 -1.39,-15.2 0.13,-12.7 1.63,-25.36 c 2.86,-24.12 6.38,-51.37 13.17,-76.78 z M 400.56,1202.06 c -1.03,2.29 -2.11,4.68 -2.7,7.11 -5.58,23.36 -12.43,46.15 -21.19,67.15 q -3.13,7.49 -7.08,13.12 -0.19,0.27 -0.47,0.44 -0.68,0.4 -0.57,-0.38 0.79,-5.61 2.43,-11.29 5.47,-18.91 8.27,-39.41 3.36,-24.7 6.32,-48.64 1.04,-8.33 3.58,-19.59 5.82,-25.8 11.4,-49.84 3.49,-14.99 7.21,-27.24 0.18,-0.58 0.63,-1.01 0.33,-0.31 0.43,0.13 c 8.56,36.96 7.32,74.95 -8.26,109.45 z',\n },\n {\n id: 'ankles-r',\n labelKey: 'ankle',\n side: 'right',\n cx: 274.8,\n cy: 1350.4,\n d: 'M 279.42,1326.07 q -2.66,-6.02 -11.2,-17.08 -1.56,-2.02 -1.72,-4 c -0.22,-2.73 1.78,-5.75 4.12,-7.13 q 0.49,-0.29 0.97,0.02 8.39,5.34 14.89,11.86 1.95,1.97 2.11,4.51 0.86,13.41 -1.46,27.53 a 0.31,0.31 0 0 1 -0.45,0.22 q -0.14,-0.08 -0.27,-0.19 -0.12,-0.1 -0.18,-0.24 -3.39,-7.76 -6.81,-15.5 z M 284.58,1349.02 q 5.05,11.98 7,21.38 3.39,16.32 -0.69,32.76 a 0.43,0.43 0 0 1 -0.76,0.16 c -10.12,-13.11 -21.17,-25.72 -34.11,-35.39 a 1.63,1.62 16.1 0 1 -0.65,-1.17 q -0.75,-8.89 2.46,-14.38 0.98,-1.67 1.18,-3.55 1.38,-12.95 2.87,-26.6 a 0.7,0.7 0 0 1 0.91,-0.59 c 11.21,3.6 17.28,16.67 21.79,27.38 z',\n },\n {\n id: 'ankles-l',\n labelKey: 'ankle',\n side: 'left',\n cx: 365.4,\n cy: 1350.4,\n d: 'M 353.36,1339.65 q -1.77,-13.46 -1.06,-24.75 0.06,-0.96 0.22,-1.92 c 0.7,-4.2 12.74,-12.42 16.33,-14.86 q 1.07,-0.72 2.08,0.08 c 3.24,2.56 4.92,6.49 2.19,10.15 -5.11,6.84 -9.99,13.59 -13.3,21.5 q -2.27,5.41 -5.06,11.31 -0.76,1.62 -1.15,-0.12 -0.15,-0.68 -0.25,-1.39 z M 379.01,1322.5 c 1.17,9.01 1.97,18.19 3.1,26.72 0.13,0.98 0.26,1.92 0.78,2.79 q 3.21,5.33 2.84,13.44 -0.1,2.05 -1.78,3.29 c -12.07,8.93 -22.71,21.31 -32.45,33.67 q -0.48,0.61 -1.15,0.95 a 0.24,0.24 0 0 1 -0.34,-0.16 q -5.23,-21.38 1.99,-42.64 2.82,-8.31 6.7,-16.77 c 4.2,-9.17 9.45,-18.49 19,-22.07 a 0.98,0.97 -14.1 0 1 1.31,0.78 z',\n },\n {\n id: 'feet-r',\n labelKey: 'foot',\n side: 'right',\n cx: 260.5,\n cy: 1406.1,\n d: 'M 268.26,1427.94 c -13.55,0.97 -28,-0.1 -40.94,-5.21 a 0.76,0.76 0 0 1 -0.35,-1.14 c 8.83,-12.76 18.97,-25.24 27.65,-37.39 q 0.72,-1 1.89,-0.61 11.12,3.76 18.81,14.19 c 1.66,2.25 0.2,9.63 -0.4,12.23 q -2.17,9.25 -5.67,17.23 a 1.19,1.17 -79.8 0 1 -0.99,0.7 z M 279.15,1427.43 c -2.43,-4.43 -2.1,-22.42 2.82,-25.6 q 0.48,-0.31 0.93,0.02 c 4.5,3.21 11.09,10.03 10.33,15.88 q -0.43,3.39 -0.54,7.02 a 3.3,3.3 0 0 1 -3.32,3.21 l -9.41,-0.05 q -0.55,0 -0.81,-0.48 z',\n },\n {\n id: 'feet-l',\n labelKey: 'foot',\n side: 'left',\n cx: 380.5,\n cy: 1406.2,\n d: 'M 382.04,1384.42 q 1.51,-0.66 3.03,-0.87 0.57,-0.07 0.91,0.39 l 27.73,37.1 a 1.23,1.22 61 0 1 -0.53,1.87 c -12.37,4.87 -27.24,6.04 -40.29,5.05 a 1.5,1.49 81 0 1 -1.27,-0.93 c -3.14,-7.8 -6.11,-16.5 -6.82,-25.44 q -0.2,-2.47 0.96,-4.02 6.68,-8.97 16.28,-13.15 z M 347.64,1416.45 c -0.34,-4.76 6.41,-11.73 10.12,-14.46 a 1.41,1.4 -37.2 0 1 1.94,0.26 c 2.44,3.09 2.86,7.16 3.19,10.93 q 0.6,6.77 -0.53,13.21 a 1.96,1.95 5.2 0 1 -1.95,1.62 l -9.39,-0.1 a 2.74,2.74 0 0 1 -2.7,-2.53 q -0.35,-4.33 -0.68,-8.93 z',\n },\n ],\n};\n\nexport const MUSCLE_FEMALE_BACK: MuscleFigureArt = {\n viewBox: '756 0 774 1448',\n silhouette:\n 'M 1096.04,0 h 7.79 c 22.49,2.45 53.18,10.99 60.21,36.27 q 0.46,1.66 2,2.05 c 64.38,16.44 60.01,99.49 44.24,147.61 q -2.62,7.99 -6.55,14.81 -0.51,0.89 -1.22,1.68 -0.97,1.07 -1.52,1.32 -3.63,1.58 -6.55,2.8 -14.77,6.1 -29.14,11 -0.74,0.26 -0.59,1.19 -0.52,-0.76 -1.47,-0.46 -4.4,1.42 -10.86,2.97 -3.97,1 -6.62,1.12 -5.28,0.24 -12.66,-0.36 -5.76,-0.52 -11.15,-2.21 -0.54,-0.17 -0.85,-0.03 -0.45,0.2 -0.58,0.77 0.26,-1.02 -0.52,-1.24 -9.76,-2.78 -19.21,-7.04 a 0.46,0.46 0 0 0 -0.65,0.43 l 0.39,12.23 q 0.49,15.83 -0.42,30.63 l -0.91,9.16 a 2.42,2.42 0 0 1 -1.99,2.15 q -11.5,2.06 -22.86,2.63 -5.84,0.05 -10.69,-1.12 -4.96,-1.19 -7,-1.31 -3.7,-0.23 -7.48,-0.12 -17.27,0.5 -33.97,1.33 -7.72,0.38 -15.15,-0.74 a 2.13,2.12 0.2 0 1 -1.78,-1.78 c -1,-6.77 1.75,-15.8 4.22,-22.15 q 5.88,-15.15 12.89,-32.55 c 7.85,-19.49 14.27,-41.02 13.35,-61.3 q -1.03,-22.68 -5.37,-57.36 -0.67,-5.33 -0.4,-10.31 0.98,-18.63 7.84,-37.04 5.87,-15.78 15.35,-24.54 c 7.92,-7.32 19.98,-14.55 31.09,-17.67 q 9.1,-2.55 18.79,-2.82 z m 40.66,79.56 c 15.08,3.29 29.45,-7.8 30.48,-23.26 q 0.15,-2.22 -0.63,-0.14 -6.61,17.62 -24.72,17.97 c -5.78,0.12 -11.81,-2.36 -16.39,-6.42 -1.53,-1.35 -3.74,-3.16 -5.84,-2.98 a 0.62,0.62 0 0 0 -0.5,0.9 q 5.86,11.37 17.6,13.93 z M 1167.18,56.3 c -1.03,15.46 -15.4,26.55 -30.48,23.26 Q 1124.96,77 1119.1,65.63 a 0.62,0.62 0 0 1 0.5,-0.9 c 2.1,-0.18 4.31,1.63 5.84,2.98 4.58,4.06 10.61,6.54 16.39,6.42 q 18.11,-0.35 24.72,-17.97 0.78,-2.08 0.63,0.14 z',\n outline:\n 'm 1194.44,206.54 c -3.1933,7.99333 -7.4233,15.23333 -12.69,21.72 -1.88,2.31333 -3.8467,4.26333 -5.9,5.85 -0.3221,0.24773 -0.4893,0.65057 -0.44,1.06 3.86,33.54 38.8,35.87 65.04,39.05 5.0133,0.60667 10.6067,1.62667 16.78,3.06 6.38,1.47333 11.8067,3.52333 16.28,6.15 14.57,8.53 23.01,23.61 26.16,40.09 3.7067,19.35333 5.04,39.21333 4,59.58 -0.05,0.96 0.16,2.23 0.57,3.12 9.9467,21.58667 15.71,44.73333 17.29,69.44 0.68,10.58667 0.91,19.95333 0.69,28.1 -0.02,0.86667 0.24,1.61 0.78,2.23 20.32,23.24 35.91,47.88 43.7,77 2.9133,10.89333 5.7433,20.80667 8.49,29.74 0.66,2.16667 1.44,4.27667 2.34,6.33 1.21,2.76 2.01,5.57 3.3,8.27 4.7267,9.88 8.63,16.84333 11.71,20.89 4.8733,6.39333 9.5,12.74333 13.88,19.05 0.6933,1 1.65,1.84 2.87,2.52 0.3,0.16667 0.6233,0.22667 0.97,0.18 4.82,-0.67 9.68,2.86 13.34,5.7 5.3867,4.2 10.4167,8.55 15.09,13.05 0.97,0.94 1.8,2.19 2.81,3.29 0.3867,0.42 0.87,0.71333 1.45,0.88 5.7467,1.69333 10.6367,3.94333 14.67,6.75 2.88,2.01333 4.6733,4.89667 5.38,8.65 v 5.01 c -0.52,1.79333 -1.6,2.74667 -3.24,2.86 -8.83,0.63 -17.91,-4.96 -24.24,-10.42 -0.64,-0.55333 -1.33,-0.62333 -2.07,-0.21 -0.28,0.15333 -0.45,0.41667 -0.51,0.79 -0.057,0.35981 0.054,0.72465 0.3,0.99 5.3933,5.72667 9.5833,12.27333 12.57,19.64 4.7133,11.63333 7.6733,23.37333 8.88,35.22 0.3333,3.31333 0.1933,6.36 -0.42,9.14 -0.83,3.72 -5.18,3.88 -8.31,3.66 -0.52,-0.0333 -0.6533,0.18 -0.4,0.64 1.5,2.73 4.15,9.73 2.03,12.51 -1,1.30667 -2.52,2.16 -4.56,2.56 -4.54,0.9 -5.48,-2.28 -7.85,-5.13 -0.3467,-0.42 -0.6133,-0.37 -0.8,0.15 -1.2067,3.36667 -3.7533,5.02 -7.64,4.96 -5.04,-0.09 -8.71,-10.14 -10.3,-14.11 -0.1733,-0.44667 -0.48,-0.77667 -0.92,-0.99 -0.4333,-0.20667 -0.6367,-0.07 -0.61,0.41 0.05,0.96 0.3,2.27 -0.22,3.1 -2.45,4 -7.21,0.07 -9.25,-2.45 -6.33,-7.84 -10.51,-16.48 -14.43,-25.97 -7.25,-17.58 -11.84,-37.32 -16.85,-56.41 -1.8,-6.87333 -3.2867,-11.19667 -4.46,-12.97 -6.3,-9.52 -14.4333,-20.36333 -24.4,-32.53 -15.11,-18.44 -29.91,-36.58 -44.05,-56.48 -8.8867,-12.51333 -15.8167,-24.99667 -20.79,-37.45 -2.9,-7.26667 -4.54,-15.05333 -4.92,-23.36 -0.09,-2.06 -0.75,-5.35 -1.64,-6.88 -5.3667,-9.18 -10.0867,-19.62333 -14.16,-31.33 -5.5933,-16.06667 -9.42,-30.98 -11.48,-44.74 -0.5467,-3.64 -0.91,-7.31333 -1.09,-11.02 -0.02,-0.32082 -0.3917,-0.48585 -0.63,-0.28 -0.1467,0.12 -0.2433,0.27667 -0.29,0.47 -1.2067,4.74 -3,9.11667 -5.38,13.13 -2.37,4.01 -6.03,7.14 -9.19,10.5 -0.7933,0.84667 -1.1967,1.84 -1.21,2.98 -0.38,33.86 -1.11,67.63667 -2.19,101.33 -0.1067,3.46667 0.3633,6.71667 1.41,9.75 1.67,4.83 5.75,8.89 8.75,13.05 19.15,26.59 30.52,57.65 35.84,89.85 6.62,39.99 5.98,81.18 1.39,121.55 -3.84,33.71333 -10.1567,68.23667 -18.95,103.57 -6.83,27.43 -13.74,52.3 -21.61,77.01 -1.6733,5.24 -3.05,11.17 -4.13,17.79 -2.6533,16.18 -4.6633,31.1133 -6.03,44.8 -0.51,5.14 -0.61,10.65 0.59,15.86 5.77,24.99 11.41,49.88 14.89,74.82 3.08,22 3.85,44.08 -1.95,65.56 -1.4733,5.4533 -3.1167,10.8133 -4.93,16.08 -7.4333,21.5733 -13.27,40.8667 -17.51,57.88 -3.1933,12.82 -6.2867,27.8233 -9.28,45.01 -0.8533,4.9 -1.2833,9.47 -1.29,13.71 0,5.1267 -0.1567,10.5767 -0.47,16.35 -0.11,2.14 0.27,4.76 1.1,6.78 2.72,6.61 5.78,14.73 4.14,21.82 -0.7333,3.1933 -1.0333,5.4033 -0.9,6.63 0.5,4.5133 1.6433,8.1033 3.43,10.77 4.73,7.07 9.6,13.97 12.12,21.89 0.82,2.56 1.88,4.7267 3.18,6.5 3.39,4.64 7.22,8.38 11.93,11.17 4.9267,2.9133 6.7967,7.6333 5.61,14.16 -0.18,0.9867 -0.6533,1.7833 -1.42,2.39 -0.8133,0.6467 -1.7933,1.0233 -2.94,1.13 -7.8467,0.7333 -15.72,1.2367 -23.62,1.51 h -29.64 c -6.9533,-0.1733 -13.86,-0.7167 -20.72,-1.63 -11.07,-1.47 -6.82,-32.77 -5.45,-39.86 1.26,-6.5067 2.58,-13.45 3.96,-20.83 1.32,-7.07 0.48,-13.46 0.26,-20.34 -0.1,-3.0067 0.2633,-6.4067 1.09,-10.2 0.26,-1.1733 0.3833,-2.57 0.37,-4.19 -0.1667,-20.2733 -0.7433,-42.1 -1.73,-65.48 -0.36,-8.34 -1.49,-16.99 -2.01,-25.27 -0.24,-3.7667 -0.8367,-7.5333 -1.79,-11.3 -2.8933,-11.5067 -5.1867,-21.89 -6.88,-31.15 -5.23,-28.74 -6.77,-58.03 -2.4,-86.44 2.09,-13.61 3.96,-27.35 6.27,-41.17 1.75,-10.47 3.26,-21.86 2.95,-33.05 -0.14,-4.9733 -0.3267,-10.2533 -0.56,-15.84 -0.4933,-11.92 -0.62,-23.23 -0.38,-33.93 0.087,-3.87333 -0.1633,-7.57667 -0.75,-11.11 -1,-6.06 -1.7367,-11.46667 -2.21,-16.22 -3.42,-34.68 -6.0767,-69.28 -7.97,-103.8 0,-0.0533 -0.38,-6.34667 -1.14,-18.88 -0.4333,-7.26 -0.7467,-14.53 -0.94,-21.81 -0.63,-23.97 -1.5,-48.33 0.89,-71.9 0.4533,-4.42 1.46,-8.21 3.02,-11.37 0.36,-0.73333 0.1367,-1.04333 -0.67,-0.93 -5.8,0.84667 -11.6067,0.83667 -17.42,-0.03 -0.5299,-0.077 -0.9242,0.47626 -0.67,0.94 1.1333,2.14 1.9167,4.39667 2.35,6.77 1.12,6.10667 1.78,12.78 1.98,20.02 0.52,19.33333 0.3867,38.51 -0.4,57.53 -2.02,49.02667 -5.3733,97.3 -10.06,144.82 -0.52,5.35 -1.42,10.71 -2.3,15.99 -0.5267,3.13333 -0.71,6.57 -0.55,10.31 0.22,4.96 0.2333,11.2 0.04,18.72 -0.24,9.2533 -0.53,18.5133 -0.87,27.78 -0.2,5.5333 -0.1433,10.4367 0.17,14.71 0.97,13.22 3.44,26.19 5.52,39.19 0.95,5.97 1.46,11.9 2.57,17.8 0.8133,4.32 1.46,8.6767 1.94,13.07 1.96,18.0733 2.0133,35.9033 0.16,53.49 -1.8,17.0067 -5.0233,34.5367 -9.67,52.59 -2.95,11.44 -3.63,22.52 -4.25,34.04 -1.2133,22.8933 -1.9,46.4567 -2.06,70.69 -0.013,2.6333 0.2133,5.2833 0.68,7.95 0.7533,4.2333 0.8467,9.2767 0.28,15.13 -0.34,3.5667 -0.2167,7.1567 0.37,10.77 1.0467,6.4333 2.1533,12.37 3.32,17.81 2.22,10.4 3.1733,20.2067 2.86,29.42 -0.14,4 -1.31,13.61 -5.91,15.24 -1.0133,0.3533 -2.0233,0.5833 -3.03,0.69 -6.26,0.6667 -12.55,1.0867 -18.87,1.26 H 1067 c -7.78,-0.2333 -15.53,-0.7367 -23.25,-1.51 -1.86,-0.19 -3.74,-1.13 -4.17,-3.14 -1.18,-5.57 0.09,-11.6 5.24,-14.4 4.46,-2.4267 8.6867,-6.4067 12.68,-11.94 1.1067,-1.54 1.9233,-3.2267 2.45,-5.06 1.3933,-4.8133 3.7333,-9.6767 7.02,-14.59 4.27,-6.37 10.95,-15.11 8.31,-23.7 -2.33,-7.59 0.58,-16.42 3.66,-23.53 0.8467,-1.9533 1.2233,-4.17 1.13,-6.65 -0.2467,-6.8467 -0.4367,-13.7033 -0.57,-20.57 -0.033,-1.8667 -0.22,-3.81 -0.56,-5.83 -0.53,-3.2 -0.78,-6.73 -1.93,-9.76 -0.57,-1.5 -0.46,-3.15 -0.75,-4.77 -4.4733,-25.64 -10.98,-51.18 -19.52,-76.62 -3.36,-10.0067 -6.23,-18.8433 -8.61,-26.51 -7.77,-24.97 -6.7,-50.73 -2.58,-76.67 3.0467,-19.1533 6.7333,-37.8133 11.06,-55.98 1.1133,-4.6733 2.1367,-9.5867 3.07,-14.74 0.7,-3.8333 0.7667,-8.9667 0.2,-15.4 -1.2667,-14.4467 -3.38,-29.87333 -6.34,-46.28 -1,-5.51333 -2.38,-11.08667 -4.14,-16.72 -8.6467,-27.59333 -16.36,-55.65333 -23.14,-84.18 -8.5133,-35.84 -14.49,-70.90333 -17.93,-105.19 -0.4067,-4.04 -0.95,-11.70667 -1.63,-23 -1.22,-20.12 -1.02,-40.2 0.6,-60.24 3.52,-43.7 15.84,-88.99 43.59,-123.06 4.52,-5.55 6.08,-10.55 5.88,-17.54 -1.0333,-36.71333 -1.7333,-70.39333 -2.1,-101.04 -0.013,-1.10667 -0.4167,-2.11333 -1.21,-3.02 -2.98,-3.41 -6.55,-6.22 -9.01,-10.18 -2.5267,-4.07333 -4.3433,-8.49 -5.45,-13.25 -0.027,-0.10667 -0.07,-0.20667 -0.13,-0.3 -0.073,-0.10667 -0.1467,-0.21 -0.22,-0.31 -0.38,-0.51333 -0.5867,-0.45333 -0.62,0.18 -0.1867,3.36 -0.5267,6.65667 -1.02,9.89 -3.18,20.91333 -9.0933,41.41667 -17.74,61.51 -2.1133,4.92 -4.57,9.73 -7.37,14.43 -1.38,2.31 -2.25,5.72 -2.35,8.5 -0.38,9.91333 -3.2067,20.34667 -8.48,31.3 -7.4,15.34 -17.09,29.69 -27.13,42.67 -11.44,14.81333 -24.26,30.94 -38.46,48.38 -8.59333,10.55333 -14.80667,18.88 -18.64,24.98 -2.16,3.44 -3.79333,7.21667 -4.9,11.33 -2.61333,9.71333 -5.20667,19.74667 -7.78,30.1 -1.21,4.83 -2.87,9.61 -4.37,14.42 -3.3,10.52667 -7.59333,20.83 -12.88,30.91 -1.67,3.2 -10.9,19.01 -16.08,13.75 -1.3,-1.32 -0.2,-2.61 -0.65,-3.85 -0.0533,-0.14 -0.15333,-0.22667 -0.3,-0.26 -0.33012,-0.0685 -0.66217,0.10802 -0.79,0.42 -1.68,3.98 -3.62333,7.83333 -5.83,11.56 -0.94,1.58 -2.4,2.82 -4.28,3.05 -3.94,0.48 -6.68,-1.13 -8.22,-4.83 -0.16296,-0.39045 -0.6952,-0.44195 -0.93,-0.09 -1.99,2.98 -3.89,6.12 -8.16,5 -2.69,-0.7 -5.36,-2.74 -4.91,-5.86 0.48,-3.3 1.34667,-6.37 2.6,-9.21 0.18054,-0.42201 -0.17743,-0.87656 -0.63,-0.8 -5.15,0.91 -8.19,-0.82 -8.39,-6.31 -0.14667,-4.06667 0.12333,-8.13667 0.81,-12.21 1.31333,-7.76667 3.32,-15.66 6.02,-23.68 3.48667,-10.37333 8.34,-18.76333 14.56,-25.17 0.38644,-0.4062 0.40798,-1.03511 0.05,-1.46 l -0.17,-0.21 c -0.54667,-0.65333 -1.14333,-0.70333 -1.79,-0.15 -4.04667,3.45333 -8.69333,6.37333 -13.94,8.76 -3.02,1.37333 -6.48333,1.99333 -10.39,1.86 -3.46,-0.12 -3.45,-3.61 -3.44,-6.16 0.02,-4.34667 1.84333,-7.82667 5.47,-10.44 3.33333,-2.40667 6.65333,-4.09333 9.96,-5.06 1.32,-0.38 2.59,-0.92333 3.81,-1.63 1.28,-0.73333 2.43,-1.57 3.45,-2.51 6.56667,-6.04 12.46,-11.28 17.68,-15.72 3.81333,-3.24 8.22333,-4.90333 13.23,-4.99 0.32334,-0.007 0.63475,-0.1269 0.88,-0.34 1.22,-1.1 2.23,-2.23 3.03,-3.39 2.92667,-4.25333 5.90333,-8.36333 8.93,-12.33 11.3,-14.82 19.21,-31.53 23.99,-49.16 2.43333,-8.99333 4.79667,-17.43667 7.09,-25.33 5.16667,-17.75333 13.26,-34.42 24.28,-50 5.38667,-7.60667 11.22333,-15.08 17.51,-22.42 0.78,-0.91 1.44,-1.79 1.43,-3.05 -0.04,-7.18667 0.15333,-15.32333 0.58,-24.41 1.2,-25.27333 6.98,-49.66 17.34,-73.16 0.47,-1.06 0.82,-2.02 0.74,-3.23 -1.05333,-16.56667 -0.03,-34.73667 3.07,-54.51 2.8,-17.8 10.26,-34.46 25.25,-43.96 4.9733,-3.16 11.2333,-5.6 18.78,-7.32 9.1267,-2.08667 18.7767,-3.55 28.95,-4.39 4.42,-0.36667 10.0367,-1.44667 16.85,-3.24 10.1122,-2.54586 26.2145,-13.0245 27.26,-14.15 4.52,-6.03333 7.2267,-12.83 8.12,-20.39 0.031,-0.22254 -0.061,-0.44444 -0.24,-0.58 -3.2333,-2.39333 -6.22,-5.54333 -8.96,-9.45 l -0.39,-12.23 c -0.01,-0.33918 0.3411,-0.57024 0.65,-0.43 15.8831,7.16 15.9397,7.22024 19.73,8.28 4.4042,0.92173 8.3867,0.98 12.58,1.47 4.92,0.4 9.14,0.52 12.66,0.36 1.7667,-0.08 3.9733,-0.45333 6.62,-1.12 l 12.92,-3.7 c 9.58,-3.26667 19.2933,-6.93333 29.14,-11 z',\n muscles: [\n {\n id: 'neck-r',\n labelKey: 'neck',\n side: 'right',\n cx: 542.0,\n cy: 109.8,\n d: 'M 1133.1,222 l -1.89,61.8 q -0.02,0.66 -0.62,0.4 -22.28,-9.35 -45.91,-9.91 a 0.77,0.77 0 0 1 -0.6,-1.22 q 1.38,-1.89 3.31,-2.48 c 6.78,-2.07 12.31,-3.9 18.36,-8.33 q 5.08,-3.71 7.66,-8.78 c 5.15,-10.11 6.3,-21.91 7.11,-32.95 q 0.13,-0.57 0.58,-0.77 0.31,-0.14 0.85,0.03 5.39,1.69 11.15,2.21 z',\n },\n {\n id: 'neck-l',\n labelKey: 'neck',\n side: 'left',\n cx: 1176.9,\n cy: 251.1,\n d: 'M 1164.71,218.73 c 1.42,12.25 1.86,24.62 7.81,35.59 3.46,6.38 11.4,11.41 17.38,13.62 q 4.31,1.6 8.68,2.96 1.85,0.58 2.75,2.35 a 0.65,0.65 0 0 1 -0.56,0.94 q -23.87,0.79 -45.98,10.03 a 0.34,0.34 0 0 1 -0.47,-0.3 l -1.94,-62.68 q 6.46,-1.55 10.86,-2.97 0.95,-0.3 1.47,0.46 z',\n },\n {\n id: 'trapezius-r',\n labelKey: 'trapezius',\n side: 'right',\n cx: 1086.2,\n cy: 343.0,\n d: 'M 1135.46,406.92 c -18.92,-8.6 -32.13,-23.67 -41.02,-42.55 q -5.92,-12.58 -12.01,-29.57 c -8.17,-22.8 -18.79,-46.58 -45.58,-51.11 q -2.73,-0.46 -0.13,-1.41 4.88,-1.81 11.29,-2.14 31.93,-1.68 62.2,8.18 c 8.7,2.84 17.39,6.76 24.41,12.87 q 2.26,1.96 2.37,4.56 c 1.34,31.32 1.02,63.51 1.17,95.68 q 0.01,2.48 -0.9,4.77 -0.52,1.31 -1.8,0.72 z',\n },\n {\n id: 'trapezius-l',\n labelKey: 'trapezius',\n side: 'left',\n cx: 1199.1,\n cy: 342.9,\n d: 'M 1207.43,323.66 c -6.47,16.09 -12.05,33.31 -20.26,48.12 q -13.47,24.27 -37.07,35.13 a 1.54,1.53 -20.3 0 1 -2.12,-0.97 q -0.48,-1.66 -0.5,-3.37 -0.3,-43.8 0.71,-95.35 c 0.05,-2.69 0.7,-4.25 2.8,-6.09 q 6.04,-5.32 13.64,-8.64 c 21.78,-9.51 47.77,-13.62 71.23,-12.54 4.41,0.2 9.17,0.92 13.49,2.46 q 1.76,0.62 -0.05,1.06 c -2.97,0.73 -5.89,1.25 -8.8,2.31 -17.14,6.22 -26.43,21.36 -33.07,37.88 z',\n },\n {\n id: 'deltoids-r',\n labelKey: 'deltoid',\n side: 'right',\n cx: 1024.1,\n cy: 327.8,\n d: 'M 1015.26,291.32 c 13.82,-8.28 31.54,1.05 42.43,10.31 a 0.79,0.78 46.2 0 1 -0.02,1.22 c -24.49,19.25 -48.03,41.91 -64.52,68.41 q -0.81,1.29 -0.91,-0.22 c -0.55,-8.02 -1.66,-16.16 -1.47,-24.04 q 0.34,-14.94 4.17,-28.72 4.91,-17.72 20.32,-26.96 z',\n },\n {\n id: 'deltoids-l',\n labelKey: 'deltoid',\n side: 'left',\n cx: 1262.2,\n cy: 329.7,\n d: 'M 1269.98,290.8 c 13.79,8.38 20.48,19.55 22.26,34.89 1.11,9.5 1.29,18.77 0.46,28.54 q -0.73,8.56 -1.29,17.08 -0.08,1.29 -0.8,0.22 c -16.86,-25.21 -37.38,-47.58 -59.38,-68.88 q -0.46,-0.45 0,-0.88 c 9.46,-8.91 18.65,-15.05 32.34,-13.43 2.34,0.28 4.42,1.25 6.41,2.46 z',\n },\n {\n id: 'upper-back-r',\n labelKey: 'upperBack',\n side: 'right',\n cx: 1085.3,\n cy: 427.9,\n d: 'M 1076.09,338.19 q 6.08,14 8.04,30.55 0.06,0.58 -0.52,0.57 -11.77,-0.05 -23.32,-2.12 -15.59,-2.79 -31.04,-5.99 a 1.37,1.36 12.9 0 1 -1.05,-1.66 c 4.67,-18.66 16.53,-35.54 33.45,-45.02 a 0.84,0.83 59.5 0 1 1.11,0.29 c 4.8,7.66 9.75,15.13 13.33,23.38 z M 1136.59,472.49 c -4.61,16.03 -15.02,30.53 -26.92,42.6 q -13.41,13.6 -29.37,25.62 -0.65,0.5 -0.73,-0.32 -5.92,-63.46 -22.92,-123.09 -4.96,-17.4 -9.99,-34.68 a 0.7,0.7 0 0 1 0.74,-0.89 q 8.92,0.83 16.32,1.52 10.81,1.01 19.97,-4.41 0.54,-0.32 1,0.1 1.78,1.59 3.48,3.41 22.52,24.07 30.7,32.06 7.98,7.79 16.19,14.02 0.79,0.6 1.05,1.52 6.33,22.2 0.48,42.54 z',\n },\n {\n id: 'upper-back-l',\n labelKey: 'upperBack',\n side: 'left',\n cx: 1200.3,\n cy: 427.7,\n d: 'M 1208.41,340.35 c 3.56,-8.92 9.08,-17.44 14.24,-25.41 a 0.92,0.91 29.5 0 1 1.18,-0.32 c 16.77,8.66 28.69,26.73 33.4,44.65 q 0.44,1.67 -1.25,2 c -18.03,3.6 -36.04,7.81 -54.02,8.1 q -0.68,0.01 -0.6,-0.67 1.86,-15.33 7.05,-28.35 z M 1238.86,382.59 c -6.36,21.96 -12.97,44.37 -18.07,65.96 q -10.8,45.75 -14.79,91.85 a 0.46,0.46 0 0 1 -0.74,0.33 Q 1184.28,525.02 1169.34,508 c -8.23,-9.38 -15.46,-20.54 -19.54,-32.61 q -6.78,-20.06 -1.17,-43.01 c 0.49,-1.99 0.83,-3.24 2.53,-4.57 17.75,-13.89 33.26,-32.01 49.33,-48.67 q 0.64,-0.67 1.43,-0.19 9.01,5.38 20.51,4.24 7.75,-0.76 15.78,-1.39 a 0.62,0.62 0 0 1 0.65,0.79 z',\n },\n {\n id: 'lower-back-r',\n labelKey: 'lowerBack',\n side: 'right',\n cx: 1097.5,\n cy: 561.9,\n d: 'M 1068.62,544.21 c 7.96,11.18 10.18,25.23 10.98,38.79 a 1.16,1.16 0 0 1 -0.56,1.06 l -18.13,10.62 a 0.4,0.39 -13.5 0 1 -0.6,-0.36 q 1.04,-16.62 2.69,-32.09 0.79,-7.45 2.8,-14.26 0.6,-2.03 1.74,-3.74 a 0.66,0.65 -45.9 0 1 1.08,-0.02 z M 1133.23,596.5 c -0.34,6.54 -1.25,13 -1.82,19.57 q -0.07,0.85 -0.6,0.17 -3.62,-4.73 -6.59,-7.98 -9.72,-10.63 -18.63,-20.4 -12.89,-14.11 -23.33,-31.15 a 0.57,0.57 0 0 1 0.2,-0.78 q 7.87,-4.59 14.81,-11.15 c 12.33,-11.64 23.63,-24.56 35.33,-36.99 q 0.87,-0.93 0.88,0.34 c 0.19,29.32 1.27,58.9 -0.25,88.37 z',\n },\n {\n id: 'lower-back-l',\n labelKey: 'lowerBack',\n side: 'left',\n cx: 1188.3,\n cy: 561.9,\n d: 'M 1199.62,562.36 c -10.91,16.62 -23.7,30.13 -37.46,44.84 q -3.74,4 -7.34,8.9 -0.68,0.93 -0.82,-0.22 c -1.8,-15.45 -2.6,-31.26 -2.53,-47.01 q 0.14,-30.97 0.58,-60.87 0.02,-1.16 0.8,-0.31 13.63,14.85 25.73,27.71 7.18,7.63 15.56,14.48 4.25,3.47 8.77,5.95 0.51,0.27 0.23,0.78 -1.61,2.85 -3.52,5.75 z M 1205.91,583.12 c 0.67,-13.86 3,-27.66 11.11,-39.08 a 0.57,0.57 0 0 1 0.96,0.06 q 1.93,3.49 2.75,7.64 c 2.78,13.99 3.44,28.55 4.52,42.69 a 0.37,0.36 13.1 0 1 -0.55,0.34 l -18.27,-10.7 a 1.05,1.04 16.6 0 1 -0.52,-0.95 z',\n },\n {\n id: 'triceps-r',\n labelKey: 'triceps',\n side: 'right',\n cx: 1002.3,\n cy: 423.5,\n d: 'M 976.72,479.34 q -0.46,-17.73 -0.59,-32.11 c -0.22,-24.28 5.62,-47.43 19.17,-67.7 q 0.38,-0.55 0.24,0.1 -9.84,49.08 -17.78,99.12 a 0.83,0.82 -4 0 1 -0.58,0.66 l -0.25,0.08 q -0.21,0.06 -0.21,-0.15 z M 990.45,481.03 c -2.39,-3.13 -3.03,-8.64 -3.15,-12.61 q -0.81,-26.18 5.96,-50.71 a 0.37,0.37 0 0 1 0.61,-0.17 q 0.16,0.15 0.19,0.37 c 2.18,16.06 4.1,31.34 3.14,46.56 -0.33,5.2 -1.01,12.19 -4.17,16.53 a 1.61,1.61 0 0 1 -2.58,0.03 z M 1028.38,422.24 c 0.27,25.48 -7.52,49.09 -23.37,68.41 q -1.16,1.41 -0.93,-0.4 0.44,-3.53 0.41,-7.83 -0.06,-10.3 -1.3,-22.14 -2.2,-20.98 -3.39,-41.99 -0.61,-10.99 0.7,-23.78 c 1.65,-15.98 6.95,-30.6 19.9,-39.63 a 0.42,0.41 73.8 0 1 0.65,0.36 q -0.32,8.22 1.06,16.55 c 2.81,16.86 6.09,33.63 6.27,50.45 z',\n },\n {\n id: 'triceps-l',\n labelKey: 'triceps',\n side: 'left',\n cx: 1283.4,\n cy: 423.3,\n d: 'M 1281,491.32 c -15.93,-19.27 -23.98,-42.53 -23.89,-67.9 q 0.04,-11.8 1.5,-21.9 2.13,-14.76 4.78,-30.03 1.39,-8.03 1.05,-16.2 a 0.44,0.44 0 0 1 0.7,-0.38 c 15.59,11.17 19.78,29.71 20.57,48.58 q 0.43,10.46 -0.35,21.17 -1.37,18.51 -3.48,40.31 -1.27,13.12 -0.53,26.21 0.03,0.6 -0.35,0.14 z M 1290.47,379.83 c 11.24,17.52 17.33,36.08 18.47,57.41 0.75,14.09 0.07,27.95 0.05,41.97 a 0.28,0.28 0 0 1 -0.41,0.24 l -0.26,-0.14 q -0.65,-0.34 -0.76,-1.06 -7.8,-49.99 -17.59,-98.21 -0.29,-1.43 0.5,-0.21 z M 1291.39,418.15 q 0.03,-0.24 0.18,-0.46 0.48,-0.71 0.7,0.12 6.89,26.33 5.89,50.76 c -0.16,3.99 -0.69,8.84 -2.91,12.24 a 1.69,1.68 -51.8 0 1 -2.56,0.31 c -2.76,-2.6 -3.77,-9.43 -4.13,-13.42 -1.44,-16.19 0.36,-32.39 2.83,-49.55 z',\n },\n {\n id: 'forearm-r',\n labelKey: 'forearmFlexors',\n side: 'right',\n cx: 949.7,\n cy: 565.6,\n d: 'M 930.6,575.85 q 12.51,-34.52 28.14,-65.44 0.43,-0.86 0.47,0.1 c 0.49,12.97 -1.54,25.43 -3.91,38.74 -2.51,14.09 -8.58,26.84 -13.42,40.42 q -1.72,4.85 -6.72,12.65 -6.65,10.39 -13.96,19.24 -0.97,1.19 -0.94,-0.34 0.15,-6.74 1.54,-13.78 3.2,-16.15 8.8,-31.59 z M 941.59,538.06 c -10.38,28.73 -19.89,57.37 -27.03,86.93 q -2.23,9.27 -3.43,18.85 -0.08,0.65 -0.71,0.78 -2.96,0.63 -5.97,-0.23 c -6.64,-1.91 -6.12,-8.24 -4.18,-13.33 q 16.12,-42.22 33.46,-84.93 5.37,-13.2 12.03,-26.13 2.79,-5.42 6.2,-10.06 1.45,-1.95 0.5,0.29 -5.71,13.57 -10.87,27.83 z M 975.21,499.01 c 1.84,-4.34 5.3,-10.94 10.55,-11.69 3.15,-0.45 8.93,-1.45 11.43,0.58 q 3.23,2.63 1.33,6.34 -3.58,7.04 -8.39,12.41 -7.93,8.86 -17.96,19.2 a 0.33,0.32 -34.8 0 1 -0.53,-0.09 q -1.15,-2.76 -1.06,-6.04 0.31,-10.51 4.63,-20.71 z M 999.09,525.32 q -17.79,35.36 -41.48,67.79 c -7.52,10.28 -15.96,20.81 -26,28.74 a 0.38,0.38 0 0 1 -0.53,-0.06 q -0.12,-0.14 -0.06,-0.3 11.88,-29.53 23.3,-54.73 6.13,-13.51 13.08,-26.59 3.39,-6.37 7.64,-12.19 c 1.13,-1.54 2.35,-1.94 4.17,-1.93 q 4.02,0.02 8.07,0.22 c 3.63,0.18 9.88,-4.42 13.11,-6.8 0.2,-0.14 0.64,-0.23 0.88,-0.2 a 0.39,0.39 0 0 1 0.32,0.53 q -1.15,2.82 -2.5,5.52 z',\n },\n {\n id: 'forearm-l',\n labelKey: 'forearmFlexors',\n side: 'left',\n cx: 1335.5,\n cy: 566.0,\n d: 'M 1287.36,495.1 q -0.66,-1.22 -1,-2.61 c -0.91,-3.66 3.19,-5.9 6.21,-5.78 q 4.25,0.16 7.87,0.8 c 8.25,1.44 13.07,19.85 14.04,26.73 q 0.78,5.48 -0.26,11.26 a 0.58,0.57 -61.9 0 1 -0.98,0.3 q -8.13,-8.44 -16.02,-16.95 -5.71,-6.16 -9.86,-13.75 z M 1374.91,644.61 a 0.63,0.62 -88.1 0 1 -0.49,-0.53 q -1.21,-9.55 -3.48,-19.07 c -6.9,-28.95 -17.02,-59.28 -27.49,-88.05 q -4.81,-13.23 -10.53,-26.85 -0.87,-2.08 0.48,-0.27 2.91,3.89 5.26,8.23 6.11,11.31 10.9,22.92 19.34,46.92 36.37,92.34 1.24,3.29 0.04,6.8 c -1.45,4.24 -7.09,5.35 -11.06,4.48 z M 1326.82,510.35 c 12.89,26.28 24.62,53.47 32.98,80.83 q 4.59,15.02 5.5,30.08 0.09,1.54 -0.91,0.36 -9.8,-11.56 -17.28,-24.72 -2.96,-5.2 -5.36,-12.12 -2.76,-7.98 -6.01,-15.96 c -4.29,-10.55 -5.9,-21.36 -7.75,-32.59 q -2.18,-13.15 -1.71,-25.77 0.04,-1.12 0.54,-0.11 z M 1354.08,620.73 q 0.96,2.42 -1,0.71 -9.65,-8.41 -17.52,-18.38 -24.99,-31.7 -45.4,-70.39 -3.25,-6.15 -6.17,-12.68 -0.09,-0.2 -0.03,-0.4 a 0.51,0.51 0 0 1 0.78,-0.29 c 4.23,2.88 9.9,7.54 15.41,6.95 q 3.07,-0.34 6.17,-0.24 c 1.9,0.05 3.28,0.57 4.42,2.2 7.5,10.74 13.36,23.21 18.79,35.06 q 12.91,28.18 24.55,57.46 z',\n },\n {\n id: 'hands-r',\n labelKey: 'hand',\n side: 'right',\n cx: 865.4,\n cy: 705.3,\n d: 'M 848.29,759.36 c -5.06,1.08 -7.66,-1.55 -5.81,-6.56 6.01,-16.27 11.17,-30.37 18.43,-44.8 q 1.12,-2.22 3.5,-1.5 l 0.45,0.14 a 3.88,3.87 16.7 0 1 2.59,4.81 c -4.79,16.16 -11.42,31.25 -18.02,46.96 a 1.59,1.57 -84.6 0 1 -1.14,0.95 z M 847.54,670.63 q 10.11,-7.1 20.43,-14.71 c 1.82,-1.34 3.93,-1.24 5.61,0.25 q 1.28,1.14 0.18,2.44 -14.63,17.34 -36.12,26.57 -2.85,1.23 -6.59,0.27 -0.66,-0.17 -1.22,-0.56 -2.78,-1.93 0.1,-3.71 c 5.74,-3.54 11.89,-6.53 17.61,-10.55 z M 857.95,703.24 c -4.4,13.3 -9.63,25.8 -16.79,37.33 q -1.72,2.78 -4.23,4.64 a 1.09,1.09 0 0 1 -1.74,-0.77 c -1.48,-16.04 8.92,-33.06 16.88,-46.35 q 0.57,-0.95 1.66,-0.8 c 2.95,0.39 5.23,2.88 4.22,5.95 z M 875.79,722.55 c -4.07,11.58 -8.41,22.82 -15.01,33 q -1.32,2.03 -3.6,3.48 -0.5,0.32 -0.97,-0.05 c -2.61,-2.08 -1.53,-6.69 -0.45,-9.36 q 5.27,-13.01 10.45,-25.43 1.81,-4.36 4.29,-8.03 0.62,-0.92 1.74,-0.88 c 4.7,0.15 4.82,3.66 3.55,7.27 z M 887.56,727.64 q -3.99,9.72 -9.96,19.13 -0.8,1.27 -2.1,1.97 a 0.74,0.74 0 0 1 -1.08,-0.76 q 1.91,-12.47 8.14,-23.5 2.02,-3.58 4.82,-5.9 a 0.94,0.94 0 0 1 1.47,0.36 c 1.15,2.7 -0.24,6.15 -1.29,8.7 z M 902.05,654.63 c 1.72,20.81 -0.74,43.2 -13.83,59.63 -1.5,1.87 -3.8,1.35 -5.78,0.55 q -7.06,-2.82 -10.22,-9.71 c -0.79,-1.73 -2.34,-3.24 -3.92,-4.25 q -5.99,-3.87 -10.35,-8.32 a 2.19,2.18 28.4 0 1 -0.59,-1.97 q 1.69,-8.62 7.46,-16.29 7.41,-9.85 18.48,-23.61 0.37,-0.46 0.96,-0.45 8.59,0.19 16.75,3.06 a 1.58,1.57 -82.5 0 1 1.04,1.36 z',\n },\n {\n id: 'hands-l',\n labelKey: 'hand',\n side: 'left',\n cx: 1420.2,\n cy: 705.5,\n d: 'M 1390.47,703.5 c -7.03,-15.23 -8.6,-32.38 -6.98,-49.44 a 0.84,0.84 0 0 1 0.55,-0.71 q 8.24,-2.9 16.94,-3.13 a 1.84,1.82 -19.6 0 1 1.51,0.71 q 7.66,9.84 15.58,19.76 7.56,9.46 9.92,18.85 c 0.44,1.72 -0.22,3.09 -1.51,4.23 q -4.73,4.18 -10.02,7.65 -2.13,1.39 -3.17,3.63 c -2.09,4.49 -5.23,7.65 -10.01,9.66 q -2.32,0.97 -4.45,0.69 -0.49,-0.06 -0.83,-0.42 -4.41,-4.73 -7.53,-11.48 z M 1434.6,668.37 q 8.2,5.82 20.84,12.66 3.02,1.63 0.3,3.74 -0.49,0.38 -1.08,0.56 -3.68,1.1 -6.72,-0.17 -21.61,-9.06 -36.36,-26.82 -0.91,-1.09 0.16,-2.02 c 2.56,-2.23 4.17,-1.59 6.69,0.28 q 8.2,6.11 16.17,11.77 z M 1440.18,733.51 c -5.02,-9.9 -10.12,-20.82 -13.01,-31.69 q -0.15,-0.58 0.1,-1.13 1.52,-3.24 4.84,-3.48 0.7,-0.05 1.06,0.55 c 8.34,13.8 18.29,30.28 17.05,46.84 a 0.97,0.97 0 0 1 -1.49,0.74 c -3.56,-2.27 -6.64,-8.06 -8.55,-11.83 z M 1431.61,747.81 q -8.05,-18.9 -13.4,-35.42 -0.77,-2.34 0.9,-4.93 0.26,-0.41 0.73,-0.64 3.35,-1.63 4.67,0.91 3.49,6.76 6.36,13.86 6.23,15.39 12.52,32.24 c 1.04,2.81 0.09,4.43 -2.57,5.47 q -3.87,1.52 -5.42,-2.33 -1.86,-4.6 -3.79,-9.16 z M 1409.03,720.33 c -1.15,-3.85 4.48,-7.35 6.5,-3.44 1.02,1.99 2.25,3.91 3.11,5.95 q 5.89,13.98 11.33,27.6 1.3,3.26 0.57,7.15 a 1.77,1.77 0 0 1 -2.76,1.12 c -3.33,-2.36 -6.22,-7.81 -8.08,-11.63 -4.21,-8.63 -7.92,-17.55 -10.67,-26.75 z M 1407.92,746.8 c -4.19,-6.47 -7.65,-13.37 -10.63,-20.61 q -1.4,-3.4 -0.83,-7.06 a 0.95,0.94 -66.3 0 1 1.52,-0.6 q 2.67,2.14 4.37,5.02 6.61,11.16 8.73,24.5 a 0.6,0.6 0 0 1 -0.81,0.65 q -1.51,-0.6 -2.35,-1.9 z',\n },\n {\n id: 'gluteal-r',\n labelKey: 'gluteusMaximus',\n side: 'right',\n cx: 1073.1,\n cy: 695.7,\n d: 'M 1031.34,630.56 q 8.17,-17.96 22.15,-29.52 0.57,-0.47 1.35,-0.78 c 0.63,-0.25 1.17,-0.54 1.88,-0.51 14.27,0.79 25.72,4.26 35.26,15.37 q 6.45,7.51 12.43,13.9 a 0.36,0.36 0 0 1 -0.21,0.6 c -34.24,5.14 -63.6,20.7 -83.41,49.12 q -0.77,1.1 -0.69,-0.24 1.54,-26.6 11.24,-47.94 z M 1092.12,758.09 q -11.32,3.91 -20.99,7.71 c -12.16,4.78 -21.24,13.16 -25.53,25.74 a 0.48,0.48 0 0 1 -0.84,0.14 c -13.74,-17.9 -25.37,-38.01 -28.48,-60.45 -4.82,-34.78 16.06,-62.1 45.13,-78.08 q 32.39,-17.79 71.37,-20.24 0.77,-0.05 0.81,0.72 0.34,5.98 0.51,12.21 0.73,27.38 0.54,74.62 0,0.87 -0.42,1.68 -13.36,26.01 -42.1,35.95 z',\n },\n {\n id: 'gluteal-l',\n labelKey: 'gluteusMaximus',\n side: 'left',\n cx: 1215.6,\n cy: 695.6,\n d: 'M 1186.16,755.14 q -22.34,-9.6 -34.37,-32.01 -0.93,-1.73 -0.95,-3.5 -0.44,-43.95 0.95,-86.05 a 0.58,0.58 0 0 1 0.61,-0.56 q 41.96,2.14 76.79,23.16 c 13.08,7.9 25.57,19.74 32.87,33.53 18.71,35.37 0.74,73.49 -21.32,101.95 a 0.51,0.51 0 0 1 -0.88,-0.15 c -5.18,-15.06 -16.82,-23.21 -31.43,-28.03 q -12.38,-4.09 -22.27,-8.34 z M 1264.84,679.01 c -19.47,-28.27 -49.51,-44.62 -83.31,-49.28 a 0.48,0.48 0 0 1 -0.29,-0.79 q 6.39,-7.08 11.97,-13.48 c 9.56,-10.98 20.54,-14.92 34.76,-15.73 q 2.05,-0.11 3.56,1.07 c 22.85,17.9 32.44,49.93 33.85,78.03 q 0.06,1.04 -0.54,0.18 z',\n },\n {\n id: 'adductors-r',\n labelKey: 'adductors',\n side: 'right',\n cx: 1112.7,\n cy: 886.5,\n d: 'M 1105.13,759.58 c 5.8,-4.09 12.22,-8.33 18.77,-11.59 a 0.54,0.54 0 0 1 0.76,0.34 q 6.8,24.08 7.01,48.83 0.14,15.6 -0.3,31.35 -0.18,6.57 -1.58,13.23 -3.79,18 -7.08,34.37 -5.52,27.39 -7.25,53.63 -0.01,0.2 -0.21,0.19 h -0.01 q -0.21,0 -0.21,-0.21 0.06,-11.05 -1.13,-21.98 -3.47,-31.95 -10.99,-67.96 c -3.17,-15.15 -5.96,-29.39 -7.82,-44.53 q -1.41,-11.59 -0.64,-23.56 c 0.24,-3.74 7.85,-10.11 10.68,-12.11 z M 1103.25,880.79 q 0.13,-2.03 0.52,-4.03 0.12,-0.59 0.23,0 6.54,34.5 9.4,71 1.16,14.9 0.83,30.46 c -0.35,16.42 -2.06,31.59 -8.52,45.43 q -0.65,1.38 -0.93,-0.12 -1.07,-5.81 -1.74,-12.63 c -4.13,-42 -2.61,-84.7 0.21,-130.11 z',\n },\n {\n id: 'adductors-l',\n labelKey: 'adductors',\n side: 'left',\n cx: 1172.5,\n cy: 886.8,\n d: 'M 1170.31,929.79 q -0.01,0.14 -0.14,0.14 h -0.01 q -0.15,0 -0.16,-0.15 c -1.65,-27.23 -6.7,-52.91 -12.71,-80.29 q -1.04,-4.77 -2.03,-9.9 -0.97,-5.04 -1.11,-10.04 -0.71,-25 0,-41.29 0.88,-20.1 6.78,-40.2 a 0.39,0.39 0 0 1 0.58,-0.23 c 9.66,5.72 22.47,11.93 28.7,21.66 q 0.95,1.49 1.03,4.47 c 0.23,9.46 -0.26,19.48 -1.78,29.2 q -3.09,19.91 -8.67,45.97 -4.33,20.25 -8.36,50.7 c -1.32,9.97 -1.83,19.78 -2.12,29.96 z M 1182.66,888.38 c 3.02,46.17 3.96,90.2 -1.62,134.34 q -0.38,3.02 -1.62,0.24 -5.13,-11.5 -6.75,-24.8 -2.53,-20.86 -1.07,-43.33 2.55,-39.34 9.73,-77.33 0.48,-2.54 0.64,0.04 0.36,5.65 0.69,10.84 z',\n },\n {\n id: 'hamstring-r',\n labelKey: 'hamstrings',\n side: 'right',\n cx: 1057.5,\n cy: 880.4,\n d: 'M 1016.46,760.39 c 9.44,12.24 16.13,25.63 21.41,40.04 q 0.82,2.23 0.84,4.98 0.07,11.27 -2.12,20.02 -2.75,11.03 -6.86,22.65 -0.52,1.46 -0.85,-0.05 -5.74,-25.82 -9.75,-52.59 -2.71,-18.1 -3.52,-34.73 -0.08,-1.52 0.85,-0.32 z M 1070.52,797.23 c -11.68,27.55 -15.75,60.62 -14.27,91.04 q 0.39,8.01 2.12,18.82 4.13,25.86 6.66,45.29 c 2.03,15.61 1.65,31.91 -2.1,47.3 q -0.46,1.88 -0.63,-0.05 -1.63,-18.54 -5.82,-37.03 c -4.65,-20.57 -11.75,-43.58 -16.62,-63.37 -3.73,-15.15 -6.46,-30.31 -6.22,-45.8 q 0.49,-31.41 19.87,-55.13 c 2.88,-3.51 6.39,-5.98 9.88,-8.87 q 4.53,-3.74 10.3,-2.59 a 1.34,1.33 19.9 0 1 0.91,1.94 q -2.27,4.18 -4.08,8.45 z M 1098.11,859.08 c 1.35,28.16 0.76,58.11 -0.79,88.31 q -0.29,5.81 -1.41,12.09 -3.22,18.13 0.59,38.78 0.25,1.36 -0.6,0.27 c -20.01,-25.52 -30.66,-57.27 -32.98,-89.64 -3.21,-44.66 6.94,-89.32 20.75,-132.24 q 0.55,-1.71 1.12,0 4.19,12.73 6.41,24.46 5.53,29.26 6.91,57.97 z',\n },\n {\n id: 'hamstring-l',\n labelKey: 'hamstrings',\n side: 'left',\n cx: 1228.0,\n cy: 880.4,\n d: 'M 1219.83,958.26 c 1.6,-16.19 4.52,-34.12 7.27,-51.04 q 1.66,-10.21 2.07,-18.85 1.54,-32.19 -5.11,-62.59 -4.38,-20.02 -13.16,-37.05 -0.74,-1.43 0.83,-1.82 c 6.74,-1.68 10.82,2.92 15.54,6.72 q 2.63,2.11 4.95,4.97 22.46,27.73 19.33,65.93 c -1.28,15.6 -4.64,30.53 -8.67,45.57 q -4.34,16.19 -8.51,30.94 -8.04,28.43 -11.39,59.02 -0.17,1.55 -0.51,0.03 -4.7,-20.89 -2.64,-41.83 z M 1222.33,911.18 c -2.52,31.89 -13.09,61.94 -32.73,87.27 q -0.72,0.94 -0.52,-0.23 2.27,-12.72 1.81,-27.27 -0.2,-6.27 -1.31,-11.44 -1.06,-4.94 -1.37,-9.68 -2.26,-34.73 -1.33,-78.46 0.82,-38.23 7.92,-73.18 2.24,-11.02 6.07,-21.84 0.39,-1.11 0.77,0.01 c 14.36,43.28 24.25,89.74 20.69,134.82 z M 1252.18,789.16 c 4.38,-10.33 10.1,-20.26 17.11,-29.06 q 0.66,-0.83 0.64,0.22 -0.05,2.47 -0.26,5.11 c -2.25,28.2 -7.17,55.27 -13.07,82.76 q -0.28,1.33 -0.76,0.06 -5.28,-13.81 -7.95,-27.73 c -1.27,-6.66 -2.21,-15.94 0.54,-22.48 q 1.91,-4.56 3.75,-8.88 z',\n },\n {\n id: 'calves-r',\n labelKey: 'gastrocnemius',\n side: 'right',\n cx: 1088.8,\n cy: 1175.4,\n d: 'M 1058.29,1085.75 c 6.08,-36.26 10.83,-64.98 13.27,-97.84 a 0.64,0.63 12.9 0 1 0.87,-0.54 c 4.34,1.73 9.74,5.17 11.34,9.62 q 0.48,1.32 0.33,3.57 c -2.18,33.02 -2.33,66.33 -2.21,98.92 q 0.04,10.61 0.89,19.22 2.51,25.4 2.71,52.08 c 0.09,12.28 -0.31,25.64 -3.38,37.51 q -0.44,1.7 -1.2,3.04 a 1.46,1.45 41.5 0 1 -2.43,0.15 c -11.56,-15.48 -22.57,-30.58 -27.04,-49.16 -1.94,-8.07 -1.22,-16.06 -0.32,-24.08 q 3.25,-29.05 7.17,-52.49 z M 1065.65,1205.72 q 0.18,-0.49 0.65,-0.28 0.57,0.24 0.99,0.74 c 7.66,9.08 12.41,22.27 15.49,34.01 q 4.92,18.73 7.73,38.56 5.06,35.68 6.15,72.03 0.14,4.75 0.25,9.3 0.09,3.29 -3.11,2.5 -0.29,-0.07 -0.59,-0.13 -3.27,-0.66 -3.31,-4 c -0.46,-33.25 -5.05,-66.1 -13.91,-98.69 q -4.29,-15.78 -9.2,-30.12 c -2.89,-8.45 -4,-15.96 -1.14,-23.92 z M 1092.9,1005.49 c 6.21,14.55 10.89,30.05 15.1,45.29 q 10.42,37.71 15.89,75.17 c 2.5,17.09 4.13,34.52 2.57,51.57 -0.69,7.55 -2.44,16.36 -7.25,22.3 a 0.72,0.71 31.3 0 1 -0.84,0.2 q -15.39,-6.63 -22.38,-22.48 -0.37,-0.84 -0.47,-1.77 -7.84,-73.34 -8.63,-146.47 -0.15,-13.23 1,-26.05 0.18,-2.03 0.73,-4.04 a 0.43,0.43 0 0 1 0.78,-0.13 q 2.25,3.5 3.5,6.41 z M 1105.01,1296.15 c 0.31,-3.79 0.81,-7.66 0.78,-11.4 -0.13,-20.92 -0.61,-43.07 2,-63.38 0.83,-6.47 2.37,-14.24 6.84,-19.26 a 0.48,0.48 0 0 1 0.83,0.26 q 2,15.5 0.91,32.56 -1.2,18.89 -3.49,38.19 -1.15,9.79 -1.38,19.57 -0.5,21.82 -2.41,44.66 -0.8,9.48 -2.65,18.21 a 0.62,0.61 -66.5 0 1 -0.96,0.38 q -3.82,-2.71 -4.14,-6.62 -0.59,-7.27 0.39,-17.04 1.85,-18.46 3.28,-36.13 z',\n },\n {\n id: 'calves-l',\n labelKey: 'gastrocnemius',\n side: 'left',\n cx: 1196.5,\n cy: 1175.1,\n d: 'M 1195.51,999.93 q 1.11,-2 1.54,0.25 0.83,4.43 1.06,9.07 0.79,16.08 0.37,32.68 -1.79,71.08 -8.41,133.14 c -0.54,5.01 -5.87,11.84 -9.39,15.76 -3.68,4.08 -8.74,6.74 -13.52,9.33 q -0.36,0.2 -0.63,-0.11 c -4.85,-5.52 -6.81,-14.78 -7.44,-21.9 -1.74,-19.58 0.51,-41.13 3.73,-60.68 q 6.55,-39.63 18.22,-79.21 3.88,-13.17 8.74,-26 2.41,-6.37 5.73,-12.33 z M 1170.98,1202.22 q 2.43,2.66 3.69,6.26 c 3.13,8.93 4.01,18.89 4.48,28.32 q 1.05,21.18 0.46,40.21 -0.29,9.19 0.45,16.73 1.84,18.75 3.59,37.51 0.69,7.41 0.77,15.52 0.06,5.8 -4.1,9 a 0.89,0.89 0 0 1 -1.42,-0.54 q -2.23,-11.91 -3.17,-25.71 -1.35,-19.53 -1.75,-36.62 -0.22,-9.41 -1.32,-18.68 -2.7,-22.94 -3.76,-42.69 -0.78,-14.6 1.04,-28.98 a 0.6,0.6 0 0 1 1.04,-0.33 z M 1209.54,1220.37 q 3.46,-8.19 9.41,-14.95 a 0.5,0.49 56.8 0 1 0.84,0.18 q 1.93,5.91 1.63,12.13 -0.21,4.19 -2.73,11.81 -8.63,26.04 -13.9,49.21 -8.52,37.45 -9.27,80.13 -0.04,2.72 -2.68,3.4 -0.94,0.24 -1.91,0.38 -2.41,0.33 -2.37,-2.1 0.65,-35.68 4.84,-70.31 c 2.84,-23.48 7.15,-48.63 16.14,-69.88 z M 1234.23,1161.52 c -4.22,19.14 -15.78,34.23 -26.98,49.71 a 1.72,1.72 0 0 1 -3.01,-0.42 q -1.93,-5.29 -2.63,-11.11 -1.51,-12.55 -1.6,-22.65 -0.27,-28.3 2.59,-57.1 0.96,-9.64 1.02,-20.11 0.27,-52.48 -2.22,-101.41 c -0.04,-0.76 0.35,-1.89 0.76,-2.54 q 3.68,-5.85 11.13,-8.53 0.53,-0.19 0.58,0.37 2.93,37.23 10.25,79.5 c 4.59,26.56 9.04,54.75 11.1,81.03 q 0.51,6.47 -0.99,13.26 z',\n },\n {\n id: 'ankles-r',\n labelKey: 'ankle',\n side: 'right',\n cx: 1090.6,\n cy: 1394.5,\n d: 'M 1081.0 1360.8 C 1075.1 1373.0 1073.5 1391.2 1074.5 1405.3 C 1075.6 1416.8 1080.4 1427.6 1088.5 1428.3 C 1095.4 1428.3 1101.3 1422.2 1104.5 1409.4 C 1107.7 1396.6 1107.7 1381.1 1102.4 1368.9 C 1099.2 1363.5 1097.0 1360.8 1093.8 1360.8 Z',\n },\n {\n id: 'ankles-l',\n labelKey: 'ankle',\n side: 'left',\n cx: 1194.8,\n cy: 1395.4,\n d: 'M 1204.4 1361.3 C 1210.3 1373.6 1211.9 1392.0 1210.8 1406.2 C 1209.8 1417.8 1204.9 1428.7 1196.9 1429.4 C 1189.9 1429.4 1184.0 1423.2 1180.8 1410.3 C 1177.6 1397.4 1177.6 1381.7 1183.0 1369.5 C 1186.2 1364.1 1188.3 1361.3 1191.5 1361.3 Z',\n },\n {\n id: 'feet-r',\n labelKey: 'foot',\n side: 'right',\n cx: 1089.5,\n cy: 1443.0,\n d: 'M 1079.17,1372.43 q 2.14,-5.13 4.33,-10.15 0.64,-1.46 0.77,0.13 0.19,2.38 0.04,5.19 -0.48,8.92 -1.17,17.73 c -0.55,6.98 -0.51,14.62 0.97,21.25 q 0.81,3.6 3.17,7.55 2.42,4.04 6.98,2.53 2.09,-0.69 2.69,-2.94 c 5.05,-18.81 8.53,-32.57 10.08,-47.69 q 0.17,-1.71 0.65,-0.06 c 4.88,16.71 7.77,34.11 9.71,51.52 a 2.81,2.81 0 0 1 -0.55,2.02 c -5.24,7.01 -14.76,8.75 -23.07,8.71 -8.31,-0.03 -16.89,-1.11 -24.67,-3.97 -3.23,-1.19 -5.27,-5.26 -4.38,-8.25 4.42,-14.8 8.65,-29.67 14.45,-43.57 z',\n },\n {\n id: 'feet-l',\n labelKey: 'foot',\n side: 'left',\n cx: 1192.5,\n cy: 1443.0,\n d: 'M 1206.8,1373.7 q 8.72,22.21 13.81,42.33 0.94,3.7 -1.71,6.53 -1.44,1.54 -5.28,2.63 -14.71,4.18 -29.01,2.49 -9.46,-1.11 -14.96,-6.81 -1.68,-1.75 -1.46,-3.83 2.75,-26.35 9.42,-50.74 0.68,-2.5 0.89,0.09 0.63,7.86 2.59,16.87 2.96,13.59 7.32,30.23 0.79,2.98 3.86,3.47 3.52,0.56 5.1,-1.58 c 2.84,-3.86 4.42,-8.89 4.83,-13.69 0.96,-11.15 -0.35,-22.32 -1,-33 q -0.2,-3.25 0.17,-6.56 0.09,-0.79 0.42,-0.07 2.74,5.83 5.01,11.64 z',\n },\n ],\n};\n","/* ------------------------------------------------------------------ */\n/* AUTO-GENERATED by scripts/anatomy-art/build-muscle-fibres.mjs. */\n/* */\n/* Muscle-fibre strokes for MuscleScheme's muscle figures, in each */\n/* figure's own coordinates (muscle-paths.ts). For every muscle and */\n/* sub-path: the outline is sampled, its long axis found (PCA, or the */\n/* anatomical fibre angle for the pectoralis, obliques, latissimus, */\n/* erector spinae, rectus abdominis and gluteus maximus), and fibres */\n/* follow the outline end to end, converging where the muscle narrows */\n/* to its tendon. Fibres are clipped to the outline. Decorative only. */\n/* ------------------------------------------------------------------ */\n\nexport type MuscleFibreSet =\n | 'male-front'\n | 'male-back'\n | 'female-front'\n | 'female-back';\n\nexport const MUSCLE_FIBRES: Record<MuscleFibreSet, Record<string, string>> = {\n 'male-front': {\n 'chest-r':\n 'M267 338L285 331 301 330 316 331 331 333 344 341 353 360 356 394M266 342L282 341 297 343 311 345 326 347 339 355 349 370 354 399M264 347L278 351 292 356 306 359 321 362 334 368 345 381 353 403M262 352L274 361 287 368 301 373 316 376 329 381 341 391 351 407M260 357L271 371 283 381 296 387 311 390 325 395 338 402 350 411M259 361L267 381 278 393 291 401 305 404 320 408 334 412 348 416M257 366L263 391 274 406 286 414 300 419 315 422 330 423 347 420',\n 'chest-l':\n 'M471 366L465 392 455 406 442 415 428 419 413 422 398 423 382 420M469 361L461 382 450 393 437 401 423 405 409 408 394 412 380 415M468 357L458 371 445 381 432 387 418 390 404 395 391 402 378 411M466 352L454 361 441 368 427 373 412 376 399 381 387 391 377 407M464 347L450 351 436 356 422 359 407 362 394 368 383 380 375 402M463 342L446 341 432 343 417 345 402 348 389 355 379 370 374 398M461 338L443 331 427 330 412 331 397 333 384 341 375 359 372 394',\n 'obliques-r':\n 'M261 419L265 425 270 430 276 434 284 438 289 443M260 420L262 427 267 432 273 436 281 440 288 444M257 435L260 441 265 446 271 450 277 453 279 460M257 435L258 442 262 448 266 453 271 457 275 463M296 453L295 461 296 468 297 474 298 480 300 486M293 456L289 465 291 471 294 476 296 481 299 486M289 458L284 469 287 474 290 478 294 483 298 487M258 458L261 463 264 469 267 475 268 481 268 490M257 458L259 465 261 471 263 477 266 483 267 490M277 480L281 487 287 492 293 497 297 503 299 511M276 481L276 490 282 495 288 500 294 505 298 511M272 499L277 508 284 515 293 522 297 531 299 542M271 500L273 510 279 519 287 526 293 534 298 543M273 528L279 536 286 544 293 552 297 562 299 573M273 528L276 538 281 547 288 555 294 564 298 573M272 529L274 540 277 551 284 558 290 566 298 574M274 563L284 575 294 587 297 604 300 621 303 637 308 653M273 564L280 578 289 591 291 608 296 623 300 639 307 653M272 564L277 580 283 594 286 612 292 626 298 641 306 654M271 565L274 582 278 598 280 616 288 629 295 643 305 655M271 566L271 584 273 602 274 620 283 632 292 645 304 656',\n 'obliques-l':\n 'M468 419L466 426 462 432 455 436 448 440 441 444M467 419L463 425 458 430 452 434 445 438 439 443M472 434L470 442 466 447 462 452 457 457 454 463M471 434L468 440 464 445 458 449 452 453 449 460M439 458L444 469 441 474 438 478 434 483 430 487M435 456L439 465 437 471 435 476 432 481 430 487M432 453L434 461 433 468 431 474 430 480 429 486M471 458L469 465 467 471 465 477 463 483 461 490M470 458L468 464 465 469 461 475 460 482 461 490M453 481L453 490 447 495 440 499 435 505 430 511M452 480L448 487 442 492 436 496 432 503 429 510M457 500L455 510 449 519 441 525 435 533 430 542M456 499L451 508 444 515 436 522 431 531 429 541M456 527L455 539 452 550 445 558 438 566 431 574M456 527L452 537 448 547 440 555 435 564 430 573M455 527L450 536 443 544 435 551 431 561 429 573M458 566L457 585 456 603 454 620 445 633 436 645 424 656M457 566L454 583 450 599 448 616 440 630 433 643 423 655M456 565L451 580 445 595 442 612 436 627 430 641 422 654M455 564L447 578 439 591 437 608 432 624 428 640 421 654M454 564L444 576 433 587 431 604 428 621 425 638 420 653',\n 'abs-r':\n 'M357 485L356 494 353 504 352 513 352 522 349 531M355 485L351 494 346 504 344 513 344 522 342 531M354 485L346 494 339 504 336 513 336 522 334 531M352 485L341 494 332 504 328 513 327 522 326 531M351 485L337 494 325 504 320 513 319 522 319 531M356 538L354 546 354 554 354 561 353 569 353 577M353 538L346 546 346 554 346 561 346 569 347 577M349 538L339 546 339 554 339 561 339 569 340 577M346 538L332 546 331 554 331 561 332 569 334 577M342 538L325 546 324 554 324 561 325 569 328 577M339 538L317 546 317 554 317 561 318 569 322 577M354 431L353 444 352 457 351 470 336 483 318 495M352 431L347 444 345 457 344 470 331 483 316 495M350 431L341 444 337 457 336 470 326 483 315 495M349 431L335 444 329 457 329 470 322 483 314 495M347 431L329 444 322 457 321 470 317 483 313 495M345 431L323 444 314 457 314 470 312 483 312 495M352 589L353 604 353 619 354 634 354 650 355 665 355 680 356 695 357 710M343 589L345 604 345 619 346 634 347 650 348 665 349 680 351 695 355 710M335 589L337 604 338 619 339 634 340 650 342 665 344 680 347 695 353 710M327 589L329 604 330 619 331 634 333 650 335 665 338 680 342 695 350 710M319 589L320 604 322 619 324 634 326 650 329 665 333 680 338 695 348 710',\n 'abs-l':\n 'M384 432L406 445 414 457 415 470 416 483 417 496M382 432L400 445 406 457 407 470 412 483 416 496M380 432L394 445 399 457 400 470 407 483 415 496M378 432L387 445 391 457 392 470 403 483 414 496M376 432L381 445 384 457 385 470 398 483 413 496M374 432L375 445 376 457 377 470 394 483 412 496M377 485L391 494 404 504 408 513 409 522 409 531M376 485L387 494 396 504 400 513 401 522 401 531M374 485L382 494 389 504 392 513 393 522 394 531M373 485L377 494 382 504 384 513 384 522 386 531M371 485L373 494 375 504 376 513 376 522 379 531M389 538L411 546 411 554 411 561 411 569 406 577M386 538L404 546 404 554 404 561 403 569 400 577M382 538L396 546 397 554 397 561 396 569 394 577M379 538L389 546 389 554 389 561 389 569 388 577M375 538L382 546 382 554 382 561 382 569 382 577M372 538L374 546 374 554 375 561 375 569 376 577M409 589L408 604 406 619 405 634 402 650 399 665 396 680 390 695 380 711M401 589L400 604 399 619 397 634 395 650 393 665 390 680 386 695 378 711M393 589L392 604 391 619 390 634 388 650 387 665 385 680 381 695 375 711M385 589L384 604 383 619 382 634 381 650 380 665 379 680 377 695 373 711M377 589L375 604 375 619 375 634 374 650 374 665 373 680 373 695 371 711',\n 'biceps-r':\n 'M184 488L187 472 190 455 194 439 201 424 210 409M186 489L192 473 196 457 201 441 207 425 212 410M189 490L197 475 202 459 207 443 212 427 214 410M191 491L203 477 209 461 214 445 217 429 217 411',\n 'biceps-l':\n 'M519 409L527 424 534 439 538 455 541 472 544 489M516 410L522 426 527 441 532 457 536 474 542 489M514 411L516 427 521 443 526 459 531 475 540 490M511 411L511 429 515 445 519 461 526 477 538 491',\n 'triceps-r':\n 'M205 508L211 494 218 480 224 466 230 452 235 437 240 422 242 407 243 391M208 509L216 496 224 482 230 468 235 454 241 439 245 424 247 409 245 392',\n 'triceps-l':\n 'M485 391L486 407 489 422 493 437 498 451 504 466 510 480 517 494 524 508M483 391L482 408 483 424 488 439 493 453 498 468 505 482 512 496 520 509',\n neck: 'M379 247L375 255 373 264 370 272 368 281 366 289M372 247L370 255 368 264 367 272 366 281 365 289M364 255L364 264 364 272 364 281 364 289M358 247L359 256 360 264 361 272 362 281 363 289M350 247L353 256 356 264 358 272 360 281 363 289',\n 'neck-r':\n 'M332 243L338 256 342 270 348 283 353 297 355 311M331 243L334 258 338 271 343 285 349 298 354 312M330 280L331 288 334 295 336 302 340 308 345 315M329 280L330 288 331 296 333 303 338 309 344 315',\n 'neck-l':\n 'M373 311L376 297 380 284 386 270 390 257 396 243M375 312L380 299 385 285 390 272 394 258 397 244M384 314L388 308 392 301 395 295 397 288 398 280M385 314L391 309 395 303 398 296 399 288 399 281',\n 'trapezius-r':\n 'M287 306L295 304 304 301 312 298 318 291 323 282M287 307L297 307 307 306 316 304 321 296 324 284',\n 'trapezius-l':\n 'M406 282L411 291 417 298 425 301 433 304 442 306M405 284L408 296 413 304 422 306 431 307 441 307',\n 'deltoids-r':\n 'M205 381L201 360 205 344 213 331 223 319 237 310 258 306M208 383L207 364 212 349 219 335 228 322 241 313 262 308M212 386L213 368 219 353 225 339 232 325 246 316 265 310M216 388L219 372 226 358 230 343 237 329 250 319 268 313M219 391L225 376 232 363 236 347 241 332 254 322 272 315M223 393L231 380 239 367 242 350 246 335 258 325 275 317',\n 'deltoids-l':\n 'M469 306L491 310 505 319 515 331 523 344 527 360 523 381M466 308L487 313 501 322 509 335 516 349 521 364 520 384M463 310L483 316 496 325 504 339 510 353 515 368 516 386M460 313L478 319 491 329 498 343 503 358 509 372 513 389M457 315L474 322 487 332 492 347 496 363 503 376 509 391M453 317L470 324 482 335 486 351 489 367 497 380 505 393',\n 'adductors-r':\n 'M284 652L294 665 304 679 312 693 319 708 326 723 332 738 337 754 339 771M283 653L291 667 300 681 307 696 314 710 320 726 326 741 331 756 335 773M279 669L287 690 295 711 303 733 310 754 316 776 322 797 328 819 332 842 334 864 333 888M278 669L285 691 292 712 299 734 305 755 311 777 317 799 322 821 327 843 330 865 332 888M343 843L342 828 341 814 340 800 342 786 349 772M343 843L344 829 345 814 345 800 347 786 351 772',\n 'adductors-l':\n 'M390 771L391 754 396 739 402 723 409 708 416 694 424 680 433 666 444 653M394 773L397 757 403 741 408 726 414 711 421 696 428 682 436 667 445 654M395 886L395 863 397 840 401 818 406 796 412 775 419 753 426 732 434 710 442 689 450 668M396 887L398 864 402 842 406 820 412 798 417 776 423 754 430 733 436 711 443 690 451 668M379 772L386 785 388 799 387 814 386 828 386 842M378 772L381 786 383 800 383 814 384 828 385 842',\n 'quadriceps-r':\n 'M268 678L273 702 279 726 285 751 291 775 297 799 300 824 302 849 303 873 302 899 300 924M267 678L269 703 273 727 278 752 284 776 289 800 293 825 296 849 298 874 298 899 297 924M266 678L266 703 268 728 272 753 277 777 282 801 286 826 290 850 292 875 294 900 295 925M264 678L262 704 262 729 265 753 269 778 274 802 279 827 283 851 287 876 290 900 293 925M263 678L258 704 256 730 258 754 262 779 267 803 272 828 277 852 281 877 286 901 291 925M262 679L254 705 251 730 251 755 255 780 260 804 265 829 271 853 276 877 282 902 288 926M245 800L247 815 249 831 252 846 255 861 259 876 264 891 269 906 274 921 277 936M243 800L245 816 246 831 248 847 251 862 254 878 259 893 264 907 270 922 274 937M314 844L318 860 320 877 321 893 321 910 319 927 320 943M313 844L315 860 316 877 316 894 315 910 313 927 316 943',\n 'quadriceps-l':\n 'M429 924L426 899 425 874 426 849 428 824 431 799 437 775 443 751 449 726 455 702 460 678M431 925L430 899 431 874 432 850 435 825 439 800 444 776 450 752 455 727 459 703 461 678M433 925L434 900 436 875 439 850 442 826 446 801 451 777 457 753 460 728 463 703 463 678M435 925L438 901 441 876 445 851 449 827 454 802 459 778 463 753 466 729 466 704 464 678M438 926L442 901 447 877 451 852 456 828 461 803 466 779 470 754 472 730 470 704 465 678M440 926L447 902 452 877 458 853 463 829 469 804 474 780 477 755 477 730 474 705 467 679M451 936L454 921 459 906 465 891 469 876 473 861 476 846 479 830 481 815 484 799M454 937L458 922 464 907 470 892 474 877 477 862 480 847 482 831 484 815 485 800M409 943L409 927 408 910 407 893 408 877 410 860 414 843M412 943L415 927 413 910 412 893 412 877 413 860 415 843',\n 'knees-r':\n 'M291 954L303 964 304 975 303 986 301 998 295 1009M287 954L296 965 297 976 297 987 296 998 292 1010M283 955L289 965 290 976 291 987 291 998 290 1010M279 955L282 966 283 977 285 988 286 999 288 1010M275 955L275 966 277 977 279 988 282 999 286 1010M288 1055L293 1041 299 1027 306 1013 312 998 317 984 320 969M290 1056L296 1042 303 1028 309 1014 315 999 320 985 322 969',\n 'knees-l':\n 'M434 1010L428 998 425 986 425 975 426 964 436 954M436 1010L432 998 431 987 431 976 433 965 441 954M438 1010L437 999 437 987 438 976 440 965 445 955M440 1010L442 999 443 988 445 977 447 966 449 955M442 1010L447 999 449 989 452 978 454 967 454 955M408 969L412 984 416 998 422 1012 429 1026 435 1040 440 1055M406 970L409 985 414 999 419 1014 425 1028 432 1042 438 1056',\n 'tibialis-r':\n 'M266 983L268 1003 271 1024 273 1045 276 1066 280 1087 283 1108 286 1129 289 1150 292 1171 294 1192M265 983L266 1004 267 1025 269 1046 271 1067 274 1088 277 1109 280 1129 284 1150 288 1171 292 1192M264 983L264 1004 263 1025 265 1047 266 1068 269 1088 271 1109 275 1130 279 1151 284 1172 290 1192',\n 'tibialis-l':\n 'M435 1192L438 1171 441 1150 444 1130 447 1109 450 1088 454 1067 456 1046 459 1025 461 1004 463 983M437 1193L443 1172 447 1151 451 1131 455 1110 458 1089 460 1068 462 1047 464 1026 464 1004 464 983',\n 'calves-r':\n 'M256 1018L255 1039 255 1059 255 1080 257 1100 260 1121 264 1141 268 1161 273 1181 277 1201 276 1222M255 1018L253 1039 253 1060 253 1080 254 1101 256 1121 260 1141 264 1161 269 1182 273 1202 274 1222M302 1179L303 1163 303 1146 303 1130 303 1113 302 1097 301 1080 303 1064 308 1048 314 1032M303 1179L305 1163 306 1146 308 1130 309 1114 309 1097 308 1081 309 1064 312 1048 315 1032M304 1179L307 1163 309 1147 313 1130 316 1114 317 1098 316 1081 315 1065 315 1048 315 1032',\n 'calves-l':\n 'M452 1222L451 1201 455 1181 460 1161 465 1141 468 1121 471 1100 473 1080 474 1059 473 1038 472 1017M455 1223L455 1202 459 1182 464 1162 469 1141 472 1121 474 1100 475 1080 476 1059 475 1038 473 1018M415 1032L420 1048 426 1064 427 1080 426 1097 426 1113 426 1130 426 1146 426 1163 426 1179M414 1032L417 1048 419 1064 420 1081 419 1097 419 1114 421 1130 422 1146 424 1163 425 1179M413 1032L413 1048 413 1065 412 1081 411 1098 412 1114 415 1130 419 1147 421 1163 424 1179',\n 'forearm-r':\n 'M127 675L131 658 135 641 139 623 143 606 147 589 151 572 153 554 158 537 165 521 173 505M129 675L133 658 138 641 142 624 147 607 152 590 156 573 159 556 164 539 169 522 176 506M130 676L135 659 141 642 146 625 151 608 156 592 161 575 166 558 170 540 174 523 178 506M131 676L138 660 143 643 149 626 155 610 161 593 167 576 172 559 175 542 178 525 180 507M142 675L147 661 153 647 158 632 164 618 170 604 177 591 184 577 189 563 193 547 196 532M144 676L149 662 155 648 161 633 167 619 173 606 181 592 188 579 194 564 197 549 200 534M150 681L157 666 163 651 169 636 176 621 183 607 192 593 199 579 205 564 209 548M151 681L158 666 164 651 171 637 177 622 185 608 193 594 200 579 206 564 211 549',\n 'forearm-l':\n 'M555 505L563 521 571 538 575 554 578 572 581 589 585 606 589 623 593 641 598 658 601 675M553 506L559 523 565 539 569 556 572 574 577 591 581 607 586 624 591 641 595 658 600 675M550 507L554 524 559 541 563 558 567 575 572 592 577 609 583 625 588 642 593 659 598 676M548 507L550 525 553 542 556 560 561 576 567 593 573 610 579 626 585 643 591 660 597 676M532 532L536 548 539 563 545 577 551 590 558 604 564 618 570 632 575 646 581 660 586 675M529 534L531 550 535 564 540 579 547 592 555 605 561 619 567 633 573 647 579 661 584 675M519 548L524 564 529 579 536 593 545 607 553 621 559 636 565 651 572 665 578 680M517 549L522 564 528 579 535 594 543 608 551 622 558 636 564 651 570 666 577 681',\n 'hands-r':\n 'M103 746L94 730 97 719 103 709 113 700 128 694M107 748L101 733 104 722 110 712 118 703 131 695M111 749L109 736 111 725 116 714 123 705 134 696M115 751L116 739 118 727 123 717 129 707 137 698M119 752L123 742 126 730 130 720 134 709 139 699M123 754L130 744 133 733 136 722 139 711 142 700M127 756L137 747 140 736 143 725 145 713 145 701M55 744L62 738 69 732 75 724 80 716 85 708M56 745L65 740 72 734 77 726 81 717 86 709M64 793L68 783 73 774 79 765 84 756 89 748M65 793L70 785 76 776 81 767 87 758 93 750M82 810L86 800 90 789 94 779 98 769 102 758M83 811L88 801 93 791 97 780 101 770 106 760M134 798L134 791 134 783 134 776 134 769 135 761M135 798L136 791 136 784 136 776 137 769 137 761M108 812L110 803 111 793 113 783 115 773 116 763M110 813L112 803 114 793 116 784 118 774 119 764',\n 'hands-l':\n 'M598 694L614 700 624 708 631 717 634 729 628 744M595 696L609 702 617 711 624 721 627 732 624 746M593 697L604 704 611 714 617 724 620 735 620 748M590 698L599 707 605 717 610 727 613 738 616 750M587 699L594 709 598 720 603 731 606 742 612 751M585 701L588 712 592 723 595 734 599 745 609 753M582 702L583 714 586 726 588 737 592 748 605 755M643 709L648 716 653 724 659 732 667 738 674 744M643 709L647 718 651 726 656 734 664 740 672 745M639 748L644 756 650 765 655 774 660 783 665 793M636 750L641 758 647 767 653 776 658 785 664 793M626 758L630 769 634 779 639 790 643 800 647 810M623 760L627 770 631 780 636 791 640 801 645 811M593 761L594 768 594 776 594 783 594 790 594 798M591 761L592 768 592 776 592 783 592 790 593 798M612 763L614 773 615 783 617 793 619 802 620 812M609 764L611 774 613 783 614 793 616 803 618 813',\n 'ankles-r':\n 'M293 1209L298 1212 302 1217 304 1222 306 1228 306 1234M292 1210L296 1214 300 1218 302 1223 304 1228 306 1234M289 1224L296 1236 299 1249 303 1262 306 1276 305 1290M286 1225L291 1238 292 1251 296 1264 302 1277 304 1290M284 1226L286 1239 285 1253 289 1266 298 1278 303 1290M282 1226L281 1241 278 1255 282 1268 294 1279 303 1290',\n 'ankles-l':\n 'M422 1234L423 1228 424 1222 427 1217 430 1212 435 1209M422 1234L424 1228 426 1223 429 1218 432 1214 437 1210M423 1290L423 1275 426 1262 429 1249 433 1236 439 1224M424 1290L427 1277 433 1264 436 1251 438 1238 442 1225M425 1290L431 1278 439 1266 443 1253 443 1239 444 1226M426 1290L435 1279 446 1268 450 1255 448 1241 446 1226',\n 'feet-r':\n 'M249 1327L258 1320 264 1312 269 1303 275 1295 280 1286M252 1328L265 1324 269 1315 275 1307 279 1297 283 1288M255 1330L271 1328 275 1319 280 1310 284 1300 286 1290M258 1332L278 1332 281 1322 285 1313 288 1303 290 1292M293 1338L296 1330 298 1322 299 1314 299 1305 300 1297M296 1339L300 1331 303 1323 304 1314 301 1306 301 1297',\n 'feet-l':\n 'M448 1286L454 1295 459 1303 465 1312 470 1320 480 1326M445 1288L449 1298 454 1307 459 1315 464 1324 477 1328M442 1290L445 1300 449 1310 453 1319 457 1329 474 1330M439 1292L440 1303 443 1313 448 1322 451 1333 471 1332M428 1297L430 1306 429 1314 430 1322 433 1331 435 1339M428 1297L427 1306 425 1315 426 1323 428 1331 433 1339',\n },\n 'male-back': {\n 'neck-r':\n 'M1026 289L1048 281 1056 267 1060 252 1062 235 1067 220M1028 289L1053 283 1061 270 1064 254 1066 237 1069 222M1030 290L1059 286 1066 272 1068 256 1069 239 1072 223M1032 291L1065 289 1071 274 1073 258 1073 241 1074 224',\n 'neck-l':\n 'M1100 220L1105 236 1107 252 1111 267 1119 281 1140 289M1098 222L1101 237 1103 254 1106 270 1113 283 1139 289M1095 223L1098 239 1099 256 1101 272 1107 286 1137 290M1092 224L1094 241 1095 257 1096 274 1101 289 1135 291',\n 'trapezius-r':\n 'M1041 300L1064 311 1070 327 1072 344 1073 361 1074 378 1074 395 1074 413 1074 430 1074 447 1074 465M1036 301L1057 313 1063 329 1065 346 1067 363 1068 380 1069 397 1070 414 1072 431 1073 448 1073 465M1031 302L1050 315 1055 331 1058 347 1060 364 1062 381 1064 398 1066 415 1069 431 1072 448 1073 465M1026 304L1042 317 1048 333 1051 349 1054 366 1056 382 1059 399 1063 416 1066 432 1070 448 1072 465M1021 305L1035 319 1041 334 1044 351 1048 367 1051 384 1054 400 1059 417 1064 433 1069 449 1072 465M1016 306L1028 320 1033 336 1037 353 1041 369 1045 385 1049 402 1055 418 1061 433 1067 449 1071 465M1011 307L1021 322 1026 338 1031 354 1035 371 1039 387 1045 403 1051 419 1058 434 1066 450 1071 465',\n 'trapezius-l':\n 'M1093 465L1093 448 1093 430 1093 413 1093 396 1093 378 1094 361 1095 344 1097 327 1103 311 1126 300M1094 465L1094 448 1095 431 1097 414 1098 397 1099 380 1100 363 1102 346 1104 329 1110 313 1131 301M1094 465L1096 448 1098 432 1101 415 1103 398 1105 381 1107 364 1109 347 1112 331 1117 315 1136 302M1095 465L1097 449 1101 432 1105 416 1108 399 1110 383 1113 366 1116 349 1119 333 1125 317 1141 304M1095 466L1099 449 1103 433 1108 417 1113 401 1116 384 1119 368 1123 351 1126 335 1132 319 1146 305M1096 466L1100 449 1106 434 1112 418 1117 402 1122 386 1126 369 1129 353 1134 336 1139 320 1151 306M1096 466L1101 450 1109 434 1116 419 1122 403 1127 387 1132 371 1136 354 1141 338 1146 322 1156 307',\n 'deltoids-r':\n 'M915 393L918 376 921 360 925 344 933 330 944 320 963 313M917 393L923 379 927 364 931 348 938 334 950 323 967 315M918 394L927 382 934 368 938 352 944 338 955 326 971 318M919 395L931 384 940 372 945 357 950 341 960 329 975 320',\n 'deltoids-l':\n 'M1204 313L1222 320 1234 330 1242 344 1246 359 1249 376 1252 392M1200 316L1217 323 1229 334 1236 348 1240 363 1244 379 1250 393M1196 318L1212 326 1223 338 1229 352 1233 367 1240 381 1249 394M1192 320L1207 329 1217 341 1222 356 1226 372 1236 384 1248 395',\n 'upper-back-r':\n 'M973 337L1002 329 1009 345 1014 361 1020 377 1027 392M971 339L997 335 1004 350 1011 365 1018 379 1026 393M970 340L992 340 999 355 1007 369 1015 382 1025 394M968 342L986 346 994 360 1003 372 1013 384 1024 395M966 344L981 351 989 365 999 376 1010 387 1023 396M965 345L975 356 984 370 995 380 1008 389 1022 397M972 417L989 423 1026 409 1033 425 1040 441 1047 457 1055 472 1049 501 1036 537 1025 571M971 418L987 425 1020 415 1026 432 1032 448 1039 465 1046 481 1041 509 1031 541 1023 573M970 418L984 427 1013 422 1019 439 1025 456 1031 473 1037 489 1034 516 1027 546 1022 574M970 419L982 430 1006 428 1012 446 1017 464 1023 481 1029 498 1027 523 1023 550 1021 575M969 420L980 432 1000 435 1004 453 1009 472 1015 489 1020 507 1019 531 1018 555 1019 577M968 420L978 434 993 442 997 461 1002 479 1007 497 1011 515 1012 538 1014 559 1018 578M968 421L975 436 987 448 990 468 994 487 999 505 1003 524 1005 545 1009 564 1016 579M961 363L967 376 975 386 986 394 1000 400 1016 402M959 364L964 379 971 390 982 398 996 404 1014 404M958 366L961 382 968 394 978 402 992 407 1012 406',\n 'upper-back-l':\n 'M1203 345L1192 356 1183 369 1172 380 1159 389 1145 396M1201 344L1187 351 1178 364 1168 376 1157 387 1144 396M1200 342L1181 345 1173 359 1165 372 1154 384 1143 395M1199 341L1176 340 1168 354 1161 368 1152 382 1142 394M1197 339L1170 334 1163 349 1157 365 1149 379 1141 393M1196 338L1165 329 1158 344 1153 361 1147 377 1140 392M1209 366L1206 382 1199 394 1189 402 1175 407 1155 406M1208 364L1203 379 1196 390 1185 398 1172 404 1153 404M1206 363L1201 376 1192 386 1181 394 1168 400 1151 402M1199 421L1192 436 1180 448 1177 468 1173 486 1168 505 1164 524 1162 545 1158 563 1151 579M1199 420L1190 434 1174 441 1170 460 1165 479 1160 497 1156 515 1155 537 1153 559 1149 578M1198 419L1187 432 1167 435 1163 453 1158 471 1152 489 1147 506 1148 530 1149 554 1148 576M1197 419L1185 429 1161 428 1156 446 1150 463 1144 481 1138 498 1140 523 1144 550 1147 575M1197 418L1183 427 1154 422 1148 439 1142 456 1136 473 1130 489 1133 515 1140 545 1145 573M1196 417L1181 425 1148 415 1141 431 1135 448 1128 465 1121 480 1126 508 1135 541 1144 572M1195 417L1178 423 1141 408 1134 424 1127 440 1120 457 1112 472 1118 501 1131 536 1142 571',\n 'triceps-r':\n 'M920 448L920 432 924 419 931 407 938 396 947 385M921 448L923 434 929 422 937 410 942 397 948 385M922 449L927 436 935 424 944 413 946 399 949 386M923 449L930 437 941 427 950 416 950 401 950 386M920 529L923 514 925 499 929 485 932 470 936 456 945 443 955 431M922 529L927 515 929 501 934 487 938 472 942 458 950 445 956 431M923 530L930 517 933 502 939 488 945 474 949 460 955 446 958 432M903 516L903 502 905 487 908 473 909 458 909 443M905 517L907 502 911 488 914 473 913 459 910 443',\n 'triceps-l':\n 'M1220 384L1229 395 1236 407 1243 419 1247 432 1247 447M1219 384L1225 397 1230 410 1237 422 1244 434 1246 448M1218 385L1221 399 1223 413 1232 424 1240 436 1245 449M1217 385L1217 400 1217 416 1226 427 1237 437 1243 449M1212 431L1222 443 1232 456 1235 471 1238 485 1242 500 1244 515 1247 530M1211 431L1217 445 1225 458 1229 473 1233 487 1238 501 1241 516 1245 530M1209 432L1212 447 1219 460 1222 475 1228 489 1234 502 1237 517 1244 530M1258 443L1258 458 1259 473 1262 487 1264 502 1264 516M1257 443L1254 458 1253 473 1256 488 1259 502 1262 516',\n 'lower-back-r':\n 'M999 571L1005 581 1010 592 1010 603 996 614 989 625M997 571L1000 581 1004 592 1003 603 993 614 988 625M996 571L996 581 997 592 997 603 990 614 988 625M994 571L991 581 991 592 990 603 987 614 987 625M1070 494L1070 509 1071 525 1071 540 1070 556 1070 571 1069 586 1068 602 1070 617 1071 633M1069 494L1068 509 1067 525 1066 540 1065 556 1063 571 1062 586 1061 602 1064 617 1070 633M1068 494L1066 509 1064 525 1061 540 1059 556 1057 571 1055 586 1053 602 1059 617 1068 633M1067 494L1064 509 1060 525 1057 540 1054 556 1050 571 1047 586 1045 602 1054 617 1066 633M1066 494L1061 509 1057 525 1052 540 1048 556 1044 571 1040 586 1038 602 1048 617 1065 633M1065 494L1059 509 1053 525 1048 540 1043 556 1038 571 1033 586 1030 602 1043 617 1063 633',\n 'lower-back-l':\n 'M1102 493L1108 509 1113 524 1119 539 1124 555 1129 570 1134 586 1137 601 1125 617 1104 632M1101 493L1105 509 1110 524 1114 539 1119 555 1123 570 1127 586 1129 601 1119 617 1103 632M1100 493L1103 509 1107 524 1110 539 1113 555 1116 570 1119 586 1122 601 1114 617 1101 632M1099 493L1101 509 1103 524 1105 539 1108 555 1110 570 1112 586 1114 601 1108 617 1099 632M1098 493L1099 509 1100 524 1101 539 1102 555 1104 570 1105 586 1106 601 1103 617 1097 632M1098 493L1096 509 1096 524 1096 539 1097 555 1097 570 1098 586 1099 601 1098 617 1096 632M1173 571L1176 581 1176 592 1177 603 1179 614 1180 624M1171 571L1172 581 1170 592 1170 603 1176 614 1179 624M1170 571L1167 581 1163 592 1164 603 1173 614 1179 624M1168 571L1162 581 1157 592 1157 603 1170 614 1178 624',\n 'forearm-r':\n 'M856 682L861 667 866 651 870 636 873 620 876 605 878 589 879 573 880 557 879 541M857 682L864 667 870 652 875 637 880 621 883 606 885 590 885 574 883 558 880 541M895 521L900 530 905 539 905 549 903 559 901 569M894 521L897 530 899 540 899 550 899 559 900 569M842 681L848 665 852 650 856 634 858 618 861 601 863 585 866 569 868 553M843 681L850 666 855 650 858 634 861 618 864 602 866 586 868 569 869 553M867 678L875 663 882 648 888 633 894 618 900 602 906 587 912 572 920 557M868 678L876 664 883 649 890 634 896 619 903 604 910 589 916 574 923 559',\n 'forearm-l':\n 'M1266 569L1263 559 1262 549 1263 540 1267 531 1272 521M1267 569L1268 560 1268 550 1268 540 1270 531 1273 522M1288 541L1287 558 1288 574 1289 589 1291 605 1294 621 1297 636 1301 652 1306 667 1311 682M1286 542L1283 558 1282 575 1282 591 1284 606 1287 622 1292 637 1297 652 1303 667 1310 682M1299 553L1301 569 1304 585 1306 601 1309 617 1311 633 1315 649 1319 665 1325 681M1298 553L1299 569 1301 585 1304 602 1306 618 1309 634 1312 650 1317 666 1324 681M1247 557L1255 572 1261 587 1267 603 1273 618 1279 634 1286 649 1292 664 1300 679M1244 559L1251 574 1257 589 1264 604 1271 619 1278 634 1284 649 1291 664 1300 679',\n 'gluteal-r':\n 'M1045 630L1027 632 1013 638 1002 646 992 656 982 666M1043 628L1023 628 1009 633 999 643 990 653 982 665M1041 626L1018 623 1004 628 995 639 987 651 981 664M1074 657L1075 682 1072 702 1067 721 1062 739 1059 759 1044 768 1018 766M1071 654L1070 676 1065 694 1058 712 1052 729 1048 748 1034 758 1014 761M1068 651L1064 670 1057 687 1049 703 1042 719 1036 737 1025 749 1009 757M1065 648L1058 665 1050 679 1041 694 1032 709 1025 726 1015 739 1005 752M1062 645L1053 659 1042 672 1032 685 1022 699 1014 715 1005 729 1000 748M1060 642L1047 653 1035 665 1023 676 1012 689 1003 704 996 720 995 743M1057 639L1041 648 1027 657 1014 667 1002 679 992 692 986 710 991 738',\n 'gluteal-l':\n 'M1127 626L1149 623 1163 629 1172 639 1180 651 1186 665M1125 628L1144 628 1159 633 1169 643 1178 654 1186 666M1123 630L1140 632 1154 638 1165 647 1175 656 1185 666M1110 639L1125 648 1140 657 1153 667 1165 679 1175 692 1181 710 1176 739M1108 642L1120 653 1132 664 1144 676 1155 689 1164 703 1171 720 1172 743M1105 645L1114 659 1125 672 1135 685 1145 699 1153 715 1162 730 1167 748M1102 648L1109 664 1117 679 1126 694 1135 709 1142 726 1152 739 1163 752M1099 651L1103 670 1110 687 1118 703 1125 719 1131 737 1142 749 1158 757M1096 654L1097 676 1103 694 1109 712 1115 729 1119 748 1133 758 1153 761M1093 656L1092 681 1095 701 1100 720 1105 739 1108 759 1123 768 1149 766',\n 'adductors-r':\n 'M1063 787L1066 801 1065 816 1064 830 1061 845 1058 860M1056 787L1060 802 1062 816 1062 830 1060 845 1057 860M1048 788L1054 802 1058 816 1060 830 1059 845 1057 860',\n 'adductors-l':\n 'M1109 859L1105 844 1103 830 1102 816 1101 801 1104 787M1110 859L1107 844 1105 830 1105 816 1107 802 1111 787M1110 859L1108 844 1107 830 1109 816 1113 802 1119 788',\n 'hamstring-r':\n 'M966 748L970 764 973 781 975 797 976 813 976 829 976 845 975 862 975 878 976 894 978 910M964 749L966 765 968 781 969 797 970 813 970 829 971 846 972 862 972 878 974 894 977 910M1021 981L1020 962 1020 944 1021 926 1022 908 1023 890 1025 872 1027 854 1028 836 1029 818 1029 799M1022 981L1022 963 1023 944 1024 926 1026 908 1028 890 1031 872 1034 854 1035 836 1034 818 1031 800M1023 981L1025 963 1026 945 1028 927 1030 909 1033 891 1036 873 1040 855 1041 837 1039 818 1034 800M980 986L984 964 988 943 992 922 994 900 995 879 995 857 996 835 996 814 997 792 995 770M981 986L987 965 993 943 997 922 1000 901 1002 879 1002 858 1003 836 1003 814 1004 793 999 771M982 986L990 965 997 944 1002 923 1006 901 1008 880 1009 858 1010 837 1010 815 1011 793 1003 771M1034 999L1036 983 1038 968 1038 953 1039 937 1041 922 1044 907 1047 892 1051 877 1052 862M1034 999L1037 984 1039 968 1040 953 1041 938 1043 922 1046 907 1050 892 1053 877 1053 862',\n 'hamstring-l':\n 'M1172 770L1170 792 1171 814 1171 835 1171 857 1172 879 1173 900 1175 922 1178 943 1183 964 1187 986M1168 771L1163 793 1164 814 1164 836 1165 858 1165 879 1167 901 1170 922 1174 943 1180 965 1186 986M1164 771L1156 793 1157 815 1157 837 1158 858 1159 880 1161 901 1165 923 1170 944 1177 965 1185 986M1138 799L1138 818 1139 836 1140 854 1142 872 1144 890 1145 908 1146 927 1147 945 1147 963 1146 981M1136 800L1133 818 1132 836 1133 854 1137 873 1139 891 1141 909 1142 927 1144 945 1145 963 1145 981M1134 800L1128 818 1126 837 1127 855 1131 873 1134 891 1137 909 1139 927 1140 945 1142 963 1144 982M1115 863L1116 878 1120 893 1123 908 1127 923 1128 938 1129 953 1130 969 1131 984 1133 999M1114 863L1114 878 1118 893 1121 908 1124 923 1126 938 1127 954 1128 969 1130 984 1133 999M1189 909L1191 893 1192 877 1192 860 1191 844 1191 828 1191 812 1192 796 1194 780 1197 764 1201 748M1190 909L1193 893 1195 877 1195 861 1196 845 1196 828 1197 812 1198 796 1199 780 1201 764 1203 748',\n 'calves-r':\n 'M984 1144L981 1127 979 1110 978 1094 978 1077 978 1061 979 1044 981 1027 985 1011 991 995 1000 979M989 1144L988 1127 986 1111 986 1094 986 1078 986 1061 987 1044 988 1028 991 1011 995 995 1001 979M993 1144L994 1128 993 1111 993 1095 993 1078 993 1061 994 1045 995 1028 997 1012 999 995 1003 979M993 1166L996 1181 998 1195 999 1210 1000 1225 1002 1239 1003 1254 1003 1269 1003 1284M987 1167L990 1181 993 1196 995 1210 996 1225 998 1240 999 1254 1001 1269 1002 1284M1013 979L1019 995 1025 1012 1030 1028 1033 1044 1035 1061 1036 1077 1037 1093 1036 1110 1032 1127 1023 1144M1013 979L1016 996 1021 1012 1025 1028 1027 1044 1029 1061 1030 1077 1030 1094 1029 1110 1026 1127 1020 1144M1012 979L1014 996 1017 1012 1020 1028 1022 1045 1023 1061 1024 1078 1024 1094 1023 1111 1021 1127 1017 1144M1011 979L1012 996 1014 1012 1016 1029 1017 1045 1017 1061 1018 1078 1017 1094 1017 1111 1015 1127 1014 1144M1014 1284L1014 1267 1014 1251 1014 1234 1015 1218 1016 1202 1016 1185 1017 1169M1014 1284L1015 1267 1017 1251 1018 1235 1020 1218 1021 1202 1022 1186 1022 1169',\n 'calves-l':\n 'M1167 979L1176 995 1182 1011 1186 1027 1188 1044 1189 1060 1189 1077 1189 1094 1188 1110 1186 1127 1183 1144M1166 979L1172 995 1176 1011 1179 1028 1180 1044 1181 1061 1182 1077 1181 1094 1181 1111 1179 1127 1178 1144M1164 979L1168 995 1170 1012 1172 1028 1173 1045 1174 1061 1174 1078 1174 1095 1174 1111 1173 1128 1174 1144M1144 1144L1135 1127 1131 1110 1130 1094 1131 1077 1132 1061 1134 1045 1137 1028 1142 1012 1148 996 1154 980M1147 1144L1141 1127 1138 1110 1137 1094 1137 1078 1138 1061 1140 1045 1142 1028 1146 1012 1151 996 1154 980M1150 1144L1146 1127 1144 1111 1143 1094 1143 1078 1144 1061 1145 1045 1147 1029 1150 1012 1153 996 1155 980M1153 1144L1152 1128 1150 1111 1150 1095 1150 1078 1150 1062 1150 1045 1151 1029 1153 1013 1155 996 1156 980M1164 1284L1164 1269 1164 1254 1165 1240 1167 1225 1168 1210 1169 1195 1171 1181 1174 1166M1165 1284L1166 1269 1168 1255 1169 1240 1171 1225 1172 1211 1174 1196 1177 1181 1180 1167M1150 1169L1151 1186 1151 1202 1152 1218 1153 1235 1153 1251 1153 1268 1153 1284M1145 1169L1145 1186 1146 1202 1147 1219 1149 1235 1150 1251 1152 1268 1153 1284',\n 'ankles-r':\n 'M990 1267L993 1277M1017 1305L1019 1316M989 1267L992 1278M1010 1307L1016 1317M988 1267L990 1278M1003 1310L1014 1318M988 1267L989 1279 996 1288 996 1300 996 1312 1011 1319',\n 'ankles-l':\n 'M1148 1316L1150 1305 1149 1293M1174 1277L1177 1267M1151 1317L1157 1307M1175 1278L1178 1267M1154 1318L1164 1310M1177 1278L1179 1267M1156 1319L1170 1312 1171 1300 1171 1288 1178 1279 1179 1267',\n 'feet-r':\n 'M966 1326L977 1327 989 1328 1000 1329 1012 1330 1023 1334M965 1328L977 1331 988 1333 1000 1334 1011 1335 1023 1337',\n 'feet-l':\n 'M1145 1333L1157 1330 1168 1329 1180 1328 1191 1327 1202 1326M1146 1337L1157 1335 1169 1334 1180 1333 1192 1331 1203 1328',\n 'hands-r':\n 'M774 744L781 738 789 732 795 724 799 716 805 708M776 745L784 740 792 734 797 726 801 717 805 709M783 792L788 783 793 774 798 765 804 756 809 748M784 793L790 784 796 776 801 767 807 758 812 750M818 743L814 727 818 716 825 707 835 699 852 695M822 745L821 731 825 720 832 710 840 702 854 696M826 747L828 734 832 724 838 714 845 704 856 697M830 749L835 738 839 727 844 717 850 707 859 699M833 751L841 742 846 731 850 720 855 710 861 700M837 753L848 745 852 734 856 723 860 712 864 701M841 755L855 749 859 738 862 727 865 715 866 702M801 810L805 800 809 789 814 779 818 769 822 758M803 811L808 801 812 790 817 780 821 770 825 760M828 812L829 803 831 793 833 783 834 773 836 763M829 813L832 803 834 793 835 784 837 774 839 764M854 798L854 790 854 783 854 776 854 768 855 761M855 798L856 791 856 783 856 776 856 768 857 761',\n 'hands-l':\n 'M1316 694L1333 699 1342 708 1350 717 1353 728 1347 744M1314 696L1328 702 1336 711 1343 720 1346 732 1344 746M1311 697L1323 704 1330 714 1336 724 1339 735 1340 748M1309 698L1318 707 1324 717 1329 727 1332 738 1336 749M1306 699L1312 709 1317 720 1322 731 1325 742 1332 751M1304 701L1307 712 1311 723 1315 734 1318 745 1328 753M1301 702L1302 714 1305 726 1308 737 1311 748 1324 755M1362 709L1368 716 1373 724 1378 732 1385 738 1393 744M1362 709L1366 718 1370 726 1375 734 1383 740 1391 745M1358 748L1364 756 1369 765 1374 774 1379 783 1384 793M1355 750L1360 758 1366 767 1372 776 1377 785 1383 793M1345 758L1349 769 1353 779 1358 789 1362 800 1366 810M1342 760L1346 770 1350 780 1355 790 1359 801 1364 811M1312 761L1313 768 1314 776 1313 783 1313 791 1313 798M1310 761L1311 768 1311 776 1311 783 1311 791 1312 798M1331 763L1333 773 1334 783 1336 793 1338 803 1339 812M1328 764L1330 774 1332 783 1333 793 1335 803 1338 813',\n },\n 'female-front': {\n neck: 'M320 287L319 282 318 276 317 271 317 265 317 259M321 287L322 282 323 276 324 271 324 265 324 259',\n 'neck-r':\n 'M290 292L290 295 291 299 291 303 292 307 292 310M289 292L288 296 287 299 286 303 286 307 289 311M293 254L298 267 304 279 310 292 316 304 318 319M292 254L294 268 299 281 306 294 312 306 316 319',\n 'neck-l':\n 'M323 319L325 305 331 292 337 279 343 267 348 254M324 319L329 306 335 294 341 281 347 268 349 254M348 311L349 307 350 303 350 299 351 296 351 292M351 311L355 307 355 303 354 299 353 296 352 292',\n 'trapezius-r':\n 'M242 296L251 293 260 289 268 284 276 279 284 275M243 297L254 297 263 295 270 289 278 283 285 276',\n 'trapezius-l':\n 'M357 275L365 279 373 284 381 289 389 293 398 296M356 276L363 283 370 289 378 295 387 297 398 297',\n 'deltoids-r':\n 'M169 352L172 336 176 321 184 307 194 296 208 287M170 353L175 338 181 323 188 310 198 299 211 289M179 367L187 354 195 341 203 329 212 317 222 306 232 295M181 368L191 357 200 345 209 333 217 321 225 308 234 296M182 369L195 360 206 349 215 337 222 324 229 310 235 297M183 370L200 363 211 353 220 341 227 328 232 313 236 297',\n 'deltoids-l':\n 'M432 287L447 296 457 307 465 320 470 336 473 352M429 289L442 298 453 310 460 323 466 338 471 353M409 295L419 306 429 317 438 329 446 341 454 354 462 367M407 296L416 308 424 321 432 333 441 345 450 357 460 368M406 297L412 310 419 324 426 337 435 349 446 360 459 369M405 298L409 313 414 328 420 341 429 353 441 363 458 370',\n 'chest-r':\n 'M235 352L257 336 275 332 292 333 307 337 312 369 316 404M232 359L253 347 271 344 287 347 302 350 309 378 315 407M230 367L250 357 266 357 282 360 297 364 305 387 313 410M227 374L246 368 262 369 277 373 292 377 302 396 312 414M224 381L242 379 257 382 272 386 288 390 299 405 311 417M221 389L238 390 253 394 268 399 283 404 295 415 310 421M219 396L234 401 248 407 263 412 278 417 292 424 309 424',\n 'chest-l':\n 'M422 396L407 401 393 407 378 412 363 417 349 424 332 424M420 389L403 390 388 394 373 399 358 404 346 415 331 421M417 382L399 379 384 382 369 386 353 390 342 405 330 417M414 374L395 368 379 369 364 373 349 377 339 396 329 414M411 367L391 357 375 357 359 360 344 364 336 387 327 410M409 359L387 347 370 344 354 347 339 350 332 378 326 407M406 352L384 336 365 332 349 333 334 337 329 369 325 403',\n 'biceps-r':\n 'M157 472L159 455 161 439 165 424 170 409 178 395 194 385M159 472L163 457 167 441 172 426 177 412 184 397 197 386M161 473L167 458 173 444 178 429 184 415 190 400 200 387M163 474L171 460 178 446 185 432 191 417 195 402 202 388M165 475L175 462 184 449 192 435 197 420 201 405 205 389',\n 'biceps-l':\n 'M447 385L463 395 471 409 476 424 480 439 482 455 484 472M444 386L457 397 464 412 469 426 474 441 478 457 482 472M441 387L451 400 457 415 463 429 468 444 474 458 480 473M439 388L445 402 450 417 456 432 463 446 470 460 478 474M436 389L440 405 443 420 449 435 457 449 466 462 476 475',\n 'triceps-r':\n 'M168 490L178 481 186 471 194 461 200 449 205 437M170 491L180 483 188 473 196 462 202 450 207 438',\n 'triceps-l':\n 'M436 437L441 449 447 461 454 471 463 481 473 490M434 438L439 450 445 462 453 473 461 483 471 491',\n 'obliques-r':\n 'M225 417L230 424 234 431 238 439 239 449 239 459M225 417L228 425 232 432 236 440 237 450 239 459M243 457L246 460 249 463 252 467 254 471 255 475M242 458L244 462 247 465 250 468 252 472 254 476M240 470L243 475 246 479 250 483 253 488 254 494M240 470L242 476 244 481 247 486 251 490 254 494M244 443L248 445 251 447 255 449 256 453 256 457M243 444L246 446 249 449 252 451 253 454 256 458M246 501L252 516 253 536 253 555 254 575 256 593 259 611M244 502L248 519 248 539 249 558 249 578 251 597 257 612M242 503L244 522 244 542 244 562 244 582 246 600 255 614M244 426L247 429 251 431 256 433 260 435 261 439M243 427L246 430 249 433 253 435 257 437 260 440',\n 'obliques-l':\n 'M398 443L395 446 392 449 389 451 387 454 385 458M397 443L393 445 390 447 386 449 385 453 385 457M398 427L395 430 392 433 388 435 384 437 381 440M398 426L394 429 390 431 385 433 381 435 380 439M399 503L397 522 397 542 397 562 397 581 395 600 387 614M397 502L393 519 393 539 392 558 392 578 390 596 384 612M395 501L389 516 388 536 388 555 387 574 385 593 382 610M399 458L397 462 394 465 391 468 389 472 387 476M398 457L395 460 392 463 389 467 387 471 386 475M401 470L400 476 397 481 394 486 390 490 387 495M401 470L398 475 395 479 391 483 388 488 386 494M416 417L413 424 409 432 405 440 404 450 402 459M416 416L411 424 407 431 403 438 402 448 402 458',\n 'abs-r':\n 'M306 442L303 450 302 457 301 465 274 473 264 481M302 442L297 450 295 457 293 465 272 473 264 481M298 442L291 450 287 457 286 465 269 473 263 481M294 442L284 450 280 457 278 465 267 473 263 481M291 442L278 450 273 457 270 465 264 473 262 481M290 564L302 580 303 596 304 611 305 627 307 642 308 658 308 674M285 564L294 580 296 596 297 611 299 627 301 642 303 658 305 674M279 564L287 580 289 596 290 611 293 627 295 642 299 658 302 674M274 564L279 580 281 596 284 611 286 627 290 642 294 658 299 674M268 564L272 580 274 596 277 611 280 627 284 642 289 658 296 674M307 475L304 482 303 490 302 498 302 506 274 514M303 475L298 482 295 490 294 498 294 506 272 514M300 475L292 482 288 490 286 498 286 506 270 514M297 475L286 482 281 490 278 498 278 506 268 514M293 475L280 482 273 490 270 498 270 506 266 514M298 518L302 526 302 534 302 542 302 550 308 557M294 518L295 526 294 534 294 542 294 550 307 557M290 518L287 526 286 534 286 542 286 550 305 557M286 518L279 526 278 534 278 542 278 550 304 557M282 518L271 526 269 534 269 542 270 550 303 557',\n 'abs-l':\n 'M359 518L370 526 372 534 371 542 371 550 338 558M355 518L362 526 363 534 363 542 363 550 337 558M351 518L354 526 355 534 355 542 355 550 335 558M347 518L346 526 347 534 347 542 347 550 334 558M343 518L339 526 339 534 339 542 339 550 333 558M347 475L361 482 368 490 371 498 371 506 375 514M344 475L355 482 360 490 363 498 363 506 373 514M341 475L349 482 353 490 355 498 355 506 371 514M337 475L343 482 345 490 347 498 347 506 370 514M334 475L337 482 338 490 339 498 339 506 368 514M372 564L369 580 367 595 364 611 361 627 357 642 352 658 344 674M367 564L362 580 360 595 357 611 355 627 351 642 347 658 342 674M362 564L354 580 352 595 350 611 348 627 346 642 342 658 339 674M357 564L347 580 345 595 344 611 342 627 340 642 338 658 336 674M351 564L339 580 338 595 337 611 336 627 334 642 333 658 333 674M350 442L363 450 368 458 370 466 377 473 379 481M347 442L357 450 361 458 363 466 374 473 378 481M343 442L350 450 354 458 355 466 372 473 378 481M339 442L344 450 346 458 347 466 370 473 377 481M335 442L338 450 339 458 339 466 368 473 377 481',\n 'forearm-r':\n 'M84 644L92 631 102 618 111 605 120 593 130 580 140 568 152 558M84 644L94 632 104 620 114 608 123 595 133 583 143 570 153 559M88 646L99 636 110 625 120 614 130 603 139 591 148 578 156 566 164 553M89 646L100 636 111 626 122 615 132 604 141 592 150 580 158 567 165 554M76 639L84 624 91 608 98 593 104 578 111 562 118 547 126 532 134 517 142 502 153 489M77 639L85 624 92 609 100 594 107 579 115 564 123 550 131 535 139 520 146 505 155 490M78 640L86 625 94 610 102 595 110 581 119 566 128 552 137 537 144 522 151 507 157 491M142 550L149 542 156 535 164 528 170 518 175 509M143 552L152 545 160 538 170 532 174 522 177 510',\n 'forearm-l':\n 'M466 509L471 519 477 528 485 535 493 543 499 551M464 510L467 522 471 533 481 539 490 545 498 552M477 553L485 566 493 578 502 590 511 602 520 614 530 625 541 635 552 645M476 554L483 567 491 580 500 592 509 604 519 615 529 626 540 636 551 646M489 558L501 568 511 581 521 593 530 606 540 618 549 631 557 644M488 559L498 570 508 583 518 595 527 608 537 620 547 633 557 645M488 489L499 502 507 517 515 532 523 547 530 562 537 577 543 593 550 608 557 623 564 639M486 490L495 505 502 520 510 535 518 549 526 564 533 579 541 594 549 609 556 624 564 639M484 491L490 507 497 522 504 537 513 552 521 566 530 581 539 595 547 610 554 625 563 639',\n 'hands-r':\n 'M57 717L44 701 47 689 52 678 58 668 65 657M60 717L52 703 54 691 59 680 64 669 69 658M62 718L59 705 62 693 66 682 69 670 73 659M65 719L66 707 70 695 73 684 75 672 76 660M8 689L17 685 25 679 33 674 41 668 49 662M9 691L18 687 26 681 35 676 43 670 50 663M14 747L17 738 21 730 24 721 28 712 32 704M16 748L19 739 23 731 27 722 31 713 34 705M22 764L25 754 29 744 32 734 36 725 40 715M24 764L28 755 32 745 35 735 39 726 42 716M34 762L37 754 40 747 44 739 47 731 50 723M36 763L39 755 43 748 46 740 49 732 52 724M54 754L55 748 57 742 59 736 62 731 65 725M54 754L57 748 59 743 61 737 63 731 65 725',\n 'hands-l':\n 'M576 657L583 668 589 678 594 689 597 701 584 717M572 658L577 669 582 680 587 691 589 703 581 717M568 659L572 670 575 682 579 693 582 705 579 718M565 660L566 672 568 684 571 695 575 707 576 718M592 662L600 668 608 673 616 679 624 685 633 689M591 663L598 670 606 676 614 682 623 687 632 691M609 704L613 712 617 721 620 730 624 739 627 748M607 704L610 713 614 722 618 731 622 740 625 749M601 715L605 725 609 734 612 744 616 754 619 764M599 716L602 726 605 735 609 745 613 754 617 764M591 723L594 731 597 739 601 746 604 754 607 762M589 724L591 732 595 740 598 747 602 755 605 763M576 725L579 730 582 736 584 742 586 748 587 754M575 725L578 731 580 737 582 743 584 748 587 754',\n 'adductors-r':\n 'M292 772L294 757 291 742 294 727 298 712 303 698M294 772L297 757 296 742 299 727 302 713 304 698M236 619L244 631 253 644 262 656 272 668 282 680 285 695 277 715M235 619L243 632 251 645 259 658 267 670 276 683 279 698 275 717M235 619L242 633 249 646 256 659 263 672 270 686 273 701 273 718M226 620L232 645 241 669 251 692 261 716 270 740 279 764 287 788 293 813 297 838 301 864M225 620L230 646 237 670 246 694 255 718 264 742 273 766 282 790 288 814 295 839 300 864',\n 'adductors-l':\n 'M340 864L344 838 348 813 354 788 362 764 371 740 380 716 390 693 400 669 408 645 415 621M341 864L346 839 353 814 359 790 368 766 377 742 386 718 395 694 404 670 411 646 416 621M364 716L356 695 359 680 369 668 379 656 388 644 397 631 405 618M366 717L362 698 365 683 374 670 382 658 390 645 398 632 406 619M368 718L368 701 371 686 378 672 385 659 392 646 399 632 406 619M338 698L343 712 347 727 350 742 347 757 349 772M337 698L339 713 342 728 345 743 344 758 347 773',\n 'quadriceps-r':\n 'M216 636L223 667 231 698 239 728 249 758 257 789 261 820 264 851 266 883 266 914 264 947M215 637L219 668 225 698 233 729 241 759 250 790 255 821 259 852 263 883 263 915 262 947M213 637L215 668 220 699 226 730 234 761 242 791 248 822 254 853 260 884 260 915 259 948M212 637L212 669 215 700 220 731 226 762 234 793 241 823 248 854 256 884 258 916 257 948M210 637L208 670 209 701 213 732 219 763 226 794 234 824 243 855 253 885 255 916 254 948M200 731L202 753 206 775 210 796 215 817 221 838 227 859 233 880 237 902 239 924 241 945M200 731L200 754 202 775 206 797 210 818 215 840 221 861 226 882 231 903 235 924 239 946M199 732L198 754 199 776 201 798 205 819 209 841 214 862 220 883 225 904 231 925 236 946M280 824L285 839 289 854 292 870 294 885 295 900 295 916 295 931 293 947 289 963M279 824L282 839 286 854 288 870 290 885 290 901 290 916 289 932 287 947 285 963M278 824L280 839 283 855 285 870 286 885 285 901 284 916 283 932 282 947 282 963',\n 'quadriceps-l':\n 'M377 947L375 914 374 882 377 851 380 819 384 788 392 758 402 728 410 697 418 667 425 636M379 947L378 915 378 883 382 852 386 821 391 790 400 759 408 729 416 698 422 667 426 636M382 947L380 915 381 884 387 853 393 822 399 791 407 760 415 730 421 699 425 668 428 636M384 948L383 916 385 884 393 854 400 823 407 792 415 762 421 731 426 700 429 669 429 637M387 948L386 916 388 885 398 855 407 824 415 794 422 763 428 732 432 701 433 669 431 637M400 946L402 924 404 902 408 881 414 859 420 838 426 817 431 796 435 775 438 753 440 731M402 946L406 925 410 903 414 882 420 861 426 840 431 818 435 797 438 775 441 753 441 731M404 947L410 926 415 904 421 883 427 862 432 841 436 819 440 798 442 776 443 754 442 731M352 963L348 947 346 932 346 916 346 901 347 885 349 870 352 855 356 839 361 824M356 963L354 947 352 932 351 916 351 901 351 885 352 870 355 855 358 840 362 824M359 963L359 947 358 932 357 917 356 901 355 886 356 870 358 855 361 840 363 824',\n 'knees-r':\n 'M270 979L272 988 271 996 271 1005 270 1014 268 1023M265 979L265 988 265 997 266 1005 266 1014 267 1023M261 979L258 988 259 997 261 1006 263 1014 266 1023M241 989L244 1002 248 1015 252 1027 257 1040 264 1051M241 989L243 1003 245 1016 248 1029 252 1041 263 1052M272 1067L275 1050 280 1034 284 1017 286 1000 287 983M273 1067L277 1051 283 1035 287 1018 288 1001 288 983',\n 'knees-l':\n 'M373 1022L371 1014 370 1005 370 996 369 987 371 979M374 1023L375 1014 375 1005 376 996 376 988 376 979M375 1023L378 1014 380 1005 382 997 383 988 380 979M354 983L355 1000 357 1017 361 1034 366 1050 368 1067M353 983L353 1001 354 1018 358 1034 363 1051 367 1067M377 1051L384 1040 389 1027 393 1015 397 1002 400 989M378 1052L389 1042 393 1029 396 1016 398 1003 400 989',\n 'tibialis-r':\n 'M241 1066L245 1088 250 1110 255 1132 259 1154 262 1176 265 1198 267 1220 270 1243 274 1265 278 1287M239 1066L241 1089 245 1111 250 1133 255 1155 259 1177 262 1199 265 1221 268 1243 272 1265 277 1287',\n 'tibialis-l':\n 'M362 1287L367 1265 371 1243 374 1220 376 1198 379 1176 382 1154 386 1132 391 1110 396 1088 400 1066M364 1287L369 1265 373 1243 376 1221 379 1199 382 1177 386 1155 391 1133 396 1111 400 1089 402 1066',\n 'calves-r':\n 'M281 1266L279 1245 278 1225 278 1205 278 1184 279 1164 279 1144 278 1124 278 1103 281 1083 285 1063M282 1266L282 1245 282 1225 283 1205 284 1185 285 1164 285 1144 284 1124 283 1103 285 1083 286 1063M283 1266L284 1245 286 1225 288 1205 290 1185 292 1164 291 1144 290 1124 288 1104 288 1083 288 1063M284 1266L287 1246 290 1225 293 1205 296 1185 298 1165 297 1144 295 1124 293 1104 292 1083 289 1063M233 1100L236 1119 238 1137 241 1155 245 1173 249 1191 253 1210 256 1228 260 1246 264 1264 270 1282M232 1101L232 1120 233 1138 235 1157 238 1175 243 1193 248 1211 252 1229 257 1247 262 1264 268 1282',\n 'calves-l':\n 'M356 1064L360 1084 363 1104 363 1124 362 1144 362 1164 363 1184 363 1205 363 1225 362 1245 360 1265M355 1064L356 1084 358 1104 357 1124 356 1144 356 1165 357 1185 358 1205 359 1225 359 1245 359 1265M353 1064L353 1084 353 1104 351 1124 350 1145 349 1165 351 1185 353 1205 355 1225 357 1245 358 1265M352 1064L349 1084 347 1104 345 1124 344 1145 343 1165 345 1185 348 1205 351 1225 354 1245 357 1265M371 1282L377 1264 381 1246 385 1228 388 1210 392 1192 396 1174 399 1156 403 1138 405 1119 407 1101M373 1282L379 1264 384 1247 389 1229 393 1211 398 1193 402 1175 406 1157 408 1139 409 1120 409 1101',\n 'ankles-r':\n 'M271 1300L277 1307 283 1313 285 1322 286 1331 287 1340M269 1301L273 1308 279 1315 282 1323 284 1332 286 1340M266 1324L275 1338 279 1353 285 1367 290 1382 291 1399M265 1324L271 1339 273 1355 280 1369 286 1384 290 1399M264 1325L267 1340 267 1357 275 1371 283 1385 289 1399M263 1325L263 1342 261 1359 270 1373 280 1386 288 1400',\n 'ankles-l':\n 'M354 1339L355 1330 356 1321 358 1313 364 1306 370 1300M355 1340L357 1331 359 1323 362 1315 368 1308 372 1300M350 1400L351 1383 355 1368 361 1353 366 1338 374 1325M351 1400L354 1384 361 1370 368 1356 370 1340 376 1325M351 1400L357 1386 366 1372 374 1358 374 1341 377 1325M352 1400L361 1387 371 1374 380 1360 378 1342 378 1326',\n 'feet-r':\n 'M229 1421L236 1415 244 1409 251 1402 256 1393 265 1389M229 1422L239 1418 248 1414 256 1408 261 1399 268 1392M230 1423L242 1421 252 1419 260 1413 265 1404 271 1395M231 1423L245 1424 257 1423 265 1419 269 1409 273 1399M283 1403L285 1408 287 1412 288 1417 288 1422 288 1427M282 1403L282 1408 283 1413 283 1418 283 1423 285 1427',\n 'feet-l':\n 'M376 1389L385 1393 390 1402 397 1409 404 1415 412 1421M373 1392L380 1398 385 1407 392 1414 401 1418 411 1422M370 1395L376 1403 380 1413 388 1419 398 1421 410 1423M368 1398L371 1409 375 1419 384 1423 396 1425 409 1424M353 1427L353 1422 353 1417 354 1412 356 1408 358 1403M356 1427L358 1423 358 1418 358 1413 359 1408 359 1403',\n },\n 'female-back': {\n 'neck-r':\n 'M1087 272L1107 268 1116 258 1120 247 1122 234 1126 221M1088 273L1113 271 1120 261 1123 248 1125 235 1127 222M1089 273L1119 274 1124 263 1126 250 1127 236 1129 223M1091 274L1125 277 1128 265 1129 251 1130 238 1131 224',\n 'neck-l':\n 'M1162 220L1163 233 1166 246 1170 258 1178 268 1198 272M1160 221L1161 234 1162 247 1166 260 1172 271 1196 273M1157 222L1158 236 1159 249 1162 262 1166 273 1195 273M1155 223L1156 237 1156 250 1158 264 1160 276 1194 274',\n 'trapezius-r':\n 'M1051 281L1077 283 1098 289 1116 296 1129 307 1131 325 1133 343 1134 362 1135 380 1137 398M1050 281L1075 285 1094 291 1111 300 1123 311 1125 329 1127 347 1130 365 1132 382 1136 399M1049 282L1072 286 1090 294 1105 304 1116 316 1119 333 1122 350 1125 367 1129 384 1135 400M1048 283L1070 288 1086 297 1099 307 1110 320 1113 337 1117 354 1121 370 1127 386 1134 401M1047 283L1067 290 1082 299 1094 311 1103 324 1107 341 1112 357 1117 373 1124 388 1132 401M1046 284L1064 291 1078 302 1088 314 1096 328 1101 344 1106 360 1113 376 1121 390 1131 402M1045 285L1062 293 1074 304 1083 318 1090 333 1095 348 1101 364 1108 378 1118 391 1130 403',\n 'trapezius-l':\n 'M1149 399L1150 381 1152 362 1153 344 1154 325 1156 307 1169 296 1187 289 1209 283 1235 281M1150 400L1153 383 1156 365 1158 347 1160 329 1163 311 1175 300 1191 291 1211 285 1236 281M1151 400L1156 384 1160 368 1163 351 1166 333 1169 316 1181 304 1195 294 1214 286 1237 282M1152 401L1159 386 1164 370 1169 354 1172 337 1176 320 1186 307 1199 296 1216 288 1238 283M1153 402L1162 388 1168 373 1174 357 1178 341 1182 324 1192 311 1204 299 1219 289 1239 283M1154 402L1164 390 1173 376 1179 361 1184 345 1189 328 1197 314 1208 302 1221 291 1240 284M1155 403L1167 392 1177 379 1184 364 1190 349 1196 333 1203 318 1212 304 1224 293 1241 285',\n 'deltoids-r':\n 'M992 366L993 349 996 333 1001 318 1009 306 1020 296 1039 292M993 367L996 350 1001 336 1007 322 1015 311 1026 301 1043 295M994 367L998 352 1005 339 1012 326 1021 315 1032 305 1047 298M994 368L1001 354 1009 342 1017 330 1027 319 1038 310 1051 301',\n 'deltoids-l':\n 'M1251 291L1270 299 1281 313 1287 329 1290 347 1291 367M1247 294L1264 304 1275 317 1282 332 1287 349 1290 367M1242 298L1257 308 1269 321 1278 335 1284 351 1290 368M1237 301L1251 312 1263 325 1273 338 1281 353 1289 368',\n 'upper-back-r':\n 'M1057 319L1062 328 1069 337 1074 346 1079 356 1083 366M1054 322L1057 334 1064 341 1071 349 1077 358 1083 367M1050 326L1051 339 1060 346 1068 353 1075 360 1082 367M1047 329L1046 345 1055 350 1064 356 1073 362 1082 368M1043 333L1041 350 1051 355 1061 359 1071 364 1081 368M1040 336L1035 356 1046 359 1057 363 1069 366 1081 369M1055 383L1076 384 1090 393 1100 405 1110 418 1120 429 1129 443 1132 463 1125 492M1054 384L1073 387 1085 397 1094 411 1104 424 1113 436 1122 451 1124 471 1118 499M1053 385L1070 391 1081 402 1089 416 1098 430 1106 443 1114 458 1116 479 1112 505M1052 386L1066 394 1076 406 1084 421 1092 436 1099 451 1106 466 1108 486 1105 512M1051 387L1063 397 1072 411 1079 426 1086 442 1092 458 1098 474 1100 494 1099 518M1050 388L1060 400 1067 415 1074 431 1079 448 1085 465 1090 482 1093 502 1092 525M1049 388L1057 403 1063 420 1068 437 1073 454 1078 472 1082 490 1085 510 1086 531',\n 'upper-back-l':\n 'M1245 336L1250 356 1239 359 1228 363 1216 366 1204 369M1242 332L1245 350 1235 355 1225 359 1214 364 1204 368M1239 329L1239 345 1230 350 1221 356 1212 362 1203 368M1235 326L1234 339 1226 346 1218 353 1210 360 1203 368M1232 322L1229 334 1221 341 1214 349 1208 358 1203 367M1228 319L1223 328 1217 337 1211 346 1206 356 1202 367M1236 388L1229 403 1223 419 1217 436 1212 454 1207 471 1203 490 1201 510 1200 531M1236 387L1226 400 1218 415 1212 431 1206 448 1200 464 1195 482 1193 502 1193 525M1235 386L1223 397 1214 410 1207 426 1200 442 1193 457 1188 474 1185 494 1187 518M1234 386L1220 394 1209 406 1202 421 1194 435 1186 450 1180 466 1177 486 1180 512M1233 385L1217 391 1205 402 1196 415 1188 429 1179 443 1172 458 1169 478 1174 505M1232 384L1214 388 1201 397 1191 410 1182 423 1172 436 1164 450 1162 471 1167 498M1232 383L1211 385 1196 393 1186 405 1176 417 1165 429 1156 442 1154 463 1161 492',\n 'lower-back-r':\n 'M1069 546L1071 555 1072 565 1073 574 1073 583 1063 592M1068 546L1068 555 1068 565 1068 574 1067 583 1062 592M1133 512L1130 529 1128 545 1126 562 1128 579 1130 595 1131 612M1132 512L1127 529 1121 545 1118 562 1122 579 1126 595 1130 612M1131 512L1123 529 1115 545 1110 562 1116 579 1123 595 1130 612M1130 512L1120 529 1109 545 1102 562 1110 579 1119 595 1129 612M1129 512L1117 529 1103 545 1094 562 1104 579 1116 595 1128 612',\n 'lower-back-l':\n 'M1156 512L1169 528 1182 545 1192 561 1182 578 1170 594 1158 611M1155 512L1165 528 1176 545 1184 561 1176 578 1167 594 1157 611M1154 512L1162 528 1170 545 1176 561 1170 578 1163 594 1156 611M1153 512L1158 528 1164 545 1168 561 1164 578 1159 594 1155 611M1153 512L1155 528 1158 545 1160 561 1158 578 1156 594 1154 611M1218 546L1218 555 1218 564 1218 574 1218 583 1223 592M1217 546L1215 555 1213 564 1212 574 1212 583 1222 592',\n 'triceps-r':\n 'M977 475L978 460 979 444 980 429 983 413 987 399 993 384M978 475L979 460 981 445 983 429 986 414 990 399 994 384M991 479L991 467 991 456 991 444 992 433 993 421M993 479L994 467 994 456 994 444 994 433 994 421M1006 485L1007 470 1008 454 1008 439 1007 423 1007 407 1007 392 1009 376 1016 361M1007 486L1011 470 1013 455 1014 439 1014 423 1014 408 1013 392 1014 376 1017 361M1008 486L1014 470 1019 455 1021 439 1021 424 1021 408 1019 392 1018 376 1019 361',\n 'triceps-l':\n 'M1270 361L1276 376 1278 392 1279 407 1278 423 1278 439 1278 455 1278 470 1280 486M1268 361L1272 376 1272 392 1272 408 1271 424 1271 439 1272 455 1275 470 1279 486M1266 361L1267 377 1266 392 1265 408 1264 424 1265 440 1267 455 1271 471 1278 486M1292 384L1298 398 1302 413 1305 428 1307 444 1308 459 1308 474M1291 384L1296 399 1299 414 1302 429 1304 444 1306 459 1308 475M1292 421L1293 432 1294 444 1295 455 1295 467 1295 479M1292 421L1292 432 1291 444 1291 456 1292 467 1293 479',\n 'forearm-r':\n 'M922 617L927 602 932 588 937 573 943 559 948 544 953 529 958 515M923 618L930 604 937 590 942 575 947 560 952 546 955 530 958 515M903 638L908 622 913 607 919 591 924 576 930 560 936 545 942 530 949 515M907 639L911 623 916 608 921 592 926 576 932 561 937 546 943 530 950 515M972 523L974 515 977 507 981 500 986 493 994 488M973 524L977 517 981 510 986 503 991 496 997 490M934 617L942 603 950 588 957 574 965 560 972 545 981 532 997 523M935 617L945 604 954 591 962 577 970 563 978 549 986 535 998 524',\n 'forearm-l':\n 'M1291 488L1299 493 1304 500 1308 507 1312 515 1314 523M1289 490L1295 496 1299 503 1304 510 1309 517 1313 524M1336 515L1343 530 1350 545 1355 560 1361 576 1367 591 1372 607 1378 622 1382 638M1336 515L1342 530 1348 545 1354 561 1359 576 1365 592 1370 608 1374 623 1378 639M1328 515L1333 530 1338 544 1343 559 1348 573 1353 587 1359 602 1364 616M1327 515L1330 530 1334 545 1338 560 1343 575 1349 589 1355 603 1362 617M1288 523L1305 532 1313 546 1321 560 1328 574 1336 588 1343 603 1351 617M1287 524L1299 535 1307 549 1315 563 1323 577 1332 591 1341 604 1350 617',\n 'hands-r':\n 'M844 757L848 747 852 737 855 728 859 718 863 709M847 758L851 748 854 738 858 729 862 719 865 709M831 683L839 679 848 674 856 668 863 662 871 657M832 684L841 681 849 676 857 671 865 664 872 658M836 743L839 734 842 725 846 716 850 708 854 699M837 743L841 735 845 726 849 718 853 709 856 700M856 757L859 749 862 741 866 733 869 725 872 717M857 757L861 750 865 742 868 734 872 726 874 718M875 747L877 741 879 736 882 730 884 725 887 720M876 747L879 742 881 737 884 731 886 726 888 720M878 711L866 695 868 684 874 673 881 662 887 652M881 712L873 697 876 686 881 675 886 664 891 653M883 712L881 699 884 688 888 677 892 665 895 654M886 713L888 701 891 690 895 679 897 667 898 655',\n 'hands-l':\n 'M1398 652L1405 662 1411 673 1417 684 1419 695 1407 711M1394 653L1399 664 1405 675 1410 686 1412 697 1405 712M1391 654L1394 665 1398 677 1402 688 1405 699 1402 712M1387 655L1388 667 1391 679 1394 690 1398 701 1400 713M1414 656L1422 662 1430 668 1437 674 1446 679 1454 683M1413 658L1421 664 1428 671 1436 676 1444 681 1453 684M1431 699L1436 708 1440 716 1444 725 1447 734 1449 743M1429 700L1433 709 1437 718 1440 726 1444 735 1448 744M1422 708L1426 718 1430 728 1434 737 1438 747 1441 757M1420 709L1423 719 1427 729 1431 738 1435 748 1439 758M1413 717L1416 725 1420 733 1423 741 1426 749 1429 757M1411 718L1414 726 1417 734 1420 742 1424 750 1428 757M1398 720L1401 725 1404 730 1406 736 1408 741 1410 747M1397 720L1399 726 1402 731 1404 737 1407 742 1410 747',\n 'gluteal-r':\n 'M1097 626L1079 629 1065 635 1052 643 1041 652 1031 663 1022 675M1093 621L1074 623 1060 630 1048 639 1038 650 1029 662 1022 675M1088 617L1069 618 1056 626 1045 636 1036 647 1028 660 1022 675M1084 612L1063 612 1051 621 1041 632 1033 644 1026 659 1021 674M1079 608L1058 607 1047 617 1038 628 1030 642 1025 657 1021 674M1133 643L1131 663 1129 684 1127 705 1120 721 1109 733 1097 743 1082 750 1066 758 1053 767 1046 782M1131 642L1127 660 1123 678 1119 697 1111 712 1100 723 1087 733 1073 742 1059 751 1048 762 1043 780M1130 640L1123 656 1117 672 1111 689 1102 703 1090 714 1078 724 1065 734 1052 744 1043 757 1040 777M1129 639L1119 652 1111 666 1103 681 1093 693 1081 704 1069 715 1056 725 1045 737 1037 751 1038 774M1128 638L1116 648 1105 660 1095 673 1083 684 1071 695 1059 705 1048 717 1038 729 1032 746 1035 771M1126 636L1112 645 1099 654 1087 665 1074 675 1062 685 1050 696 1040 708 1031 722 1027 741 1032 769M1125 635L1108 641 1093 648 1079 657 1065 666 1052 676 1041 687 1031 700 1024 715 1021 736 1029 766',\n 'gluteal-l':\n 'M1160 635L1177 641 1193 648 1207 656 1220 666 1233 676 1245 687 1254 700 1262 715 1264 736 1256 767M1159 636L1174 644 1187 654 1199 665 1211 675 1224 685 1235 696 1246 708 1255 722 1259 741 1253 769M1158 637L1170 648 1181 660 1191 673 1202 684 1214 695 1226 705 1238 717 1247 730 1253 746 1250 772M1156 639L1166 652 1175 666 1183 681 1193 693 1205 704 1217 715 1229 725 1240 737 1248 752 1248 775M1155 640L1162 656 1169 672 1175 689 1184 702 1195 714 1208 724 1221 734 1233 744 1243 757 1245 777M1154 641L1158 659 1163 678 1167 697 1174 712 1186 723 1198 733 1212 742 1226 751 1237 762 1242 780M1153 642L1155 663 1157 684 1159 705 1165 721 1176 733 1189 743 1204 750 1219 758 1232 768 1240 783M1206 607L1227 607 1239 617 1248 628 1255 642 1261 657 1265 674M1202 612L1222 613 1234 621 1244 632 1253 644 1259 658 1264 674M1197 617L1217 618 1230 626 1241 636 1250 647 1258 660 1264 675M1193 621L1212 623 1225 630 1237 639 1247 650 1256 662 1263 675M1188 626L1206 628 1221 635 1233 643 1245 652 1255 663 1263 675',\n 'adductors-r':\n 'M1123 756L1123 772 1124 789 1125 806 1125 822 1125 839 1123 856 1121 873 1119 889 1117 906 1116 923M1120 756L1116 773 1117 789 1118 806 1119 823 1119 839 1119 856 1118 873 1117 889 1116 906 1116 923M1117 756L1109 773 1109 789 1111 806 1112 823 1114 839 1114 856 1115 873 1115 889 1115 906 1115 923M1114 756L1102 773 1102 789 1104 806 1106 823 1108 839 1110 856 1112 873 1113 889 1115 906 1115 923M1105 884L1106 899 1107 913 1108 928 1109 943 1110 958 1110 973 1110 988 1109 1003 1107 1018M1104 884L1104 899 1104 913 1104 928 1105 943 1105 958 1105 973 1105 988 1106 1003 1105 1018',\n 'adductors-l':\n 'M1170 923L1168 906 1167 889 1165 872 1163 856 1161 839 1160 822 1161 806 1161 789 1163 772 1162 755M1170 923L1169 906 1169 889 1168 872 1167 856 1166 839 1167 822 1168 806 1169 789 1170 772 1165 756M1170 923L1170 906 1170 889 1171 872 1171 856 1172 839 1173 822 1175 806 1176 789 1177 772 1168 756M1170 923L1171 906 1172 889 1174 872 1175 856 1177 839 1180 822 1182 806 1184 789 1184 772 1172 756M1179 1018L1177 1003 1176 987 1176 972 1176 957 1177 942 1178 927 1179 912 1180 897 1181 882M1180 1018L1180 1003 1180 988 1180 973 1181 957 1181 942 1181 927 1181 912 1181 897 1182 882',\n 'hamstring-r':\n 'M1018 764L1025 779 1030 795 1033 811 1032 827 1030 844M1017 764L1021 780 1025 796 1027 812 1029 828 1029 844M1068 795L1059 815 1054 835 1051 855 1051 874 1052 894 1055 913 1059 933 1062 952 1064 972 1064 992M1064 795L1053 815 1048 835 1045 855 1045 874 1048 894 1051 913 1056 933 1060 952 1062 972 1063 992M1060 795L1048 815 1042 835 1039 855 1040 875 1043 894 1048 914 1052 933 1057 952 1060 972 1062 992M1086 785L1089 806 1090 826 1091 847 1091 867 1092 888 1092 908 1092 928 1092 949 1091 969 1094 990M1085 785L1085 806 1085 826 1085 847 1084 867 1084 888 1084 908 1085 929 1087 949 1088 970 1093 990M1084 785L1082 806 1080 826 1079 847 1077 867 1077 888 1077 908 1079 929 1081 949 1085 970 1092 990M1082 785L1078 806 1075 827 1072 847 1070 868 1070 888 1070 909 1072 929 1076 949 1082 970 1091 990',\n 'hamstring-l':\n 'M1222 991L1221 972 1223 952 1226 933 1230 913 1233 894 1235 874 1234 855 1232 835 1227 815 1218 795M1222 991L1223 972 1226 952 1230 933 1234 913 1238 894 1240 874 1240 855 1238 835 1232 815 1222 795M1223 992L1225 972 1229 952 1233 933 1238 914 1242 894 1245 875 1246 855 1244 835 1238 816 1226 796M1191 989L1194 969 1194 949 1194 928 1194 908 1194 887 1194 867 1194 846 1195 826 1197 805 1199 785M1193 989L1197 969 1199 949 1200 928 1201 908 1201 887 1201 867 1201 846 1200 826 1200 805 1201 785M1194 989L1201 969 1204 949 1207 928 1208 908 1208 887 1208 867 1207 846 1205 826 1204 805 1202 785M1195 990L1204 969 1210 949 1213 929 1215 908 1216 888 1215 867 1213 847 1210 826 1207 805 1203 785M1255 844L1253 827 1252 811 1255 795 1261 779 1268 764M1256 844L1257 828 1258 812 1261 796 1265 780 1269 764',\n 'calves-r':\n 'M1074 1203L1064 1182 1058 1161 1058 1141 1059 1120 1061 1100 1064 1079 1067 1059 1069 1038 1072 1017 1073 997M1077 1203L1070 1182 1065 1162 1064 1141 1065 1120 1066 1100 1068 1079 1070 1059 1073 1038 1074 1018 1076 997M1079 1203L1075 1182 1072 1162 1071 1141 1071 1120 1072 1100 1073 1079 1074 1059 1076 1038 1077 1018 1079 997M1081 1203L1080 1182 1079 1162 1078 1141 1077 1121 1077 1100 1077 1079 1078 1059 1079 1038 1080 1018 1081 997M1069 1212L1074 1227 1079 1243 1083 1259 1087 1275 1089 1291 1091 1307 1093 1323 1094 1340 1094 1356M1066 1212L1070 1228 1075 1244 1080 1259 1083 1275 1086 1291 1089 1307 1090 1324 1092 1340 1092 1356M1092 1008L1098 1026 1102 1044 1106 1062 1110 1080 1113 1099 1116 1117 1118 1135 1120 1154 1121 1173 1121 1191M1091 1008L1095 1026 1098 1044 1102 1063 1105 1081 1107 1099 1110 1118 1112 1136 1114 1155 1114 1174 1117 1192M1090 1008L1092 1026 1095 1045 1097 1063 1099 1082 1101 1100 1103 1119 1105 1137 1107 1156 1108 1174 1114 1192M1089 1008L1090 1027 1091 1045 1092 1064 1094 1082 1095 1101 1097 1119 1099 1138 1100 1157 1102 1175 1111 1193M1103 1349L1104 1333 1106 1318 1107 1302 1108 1286 1108 1271 1109 1255 1110 1239 1111 1224 1113 1208M1106 1349L1107 1333 1108 1318 1109 1302 1110 1286 1111 1271 1112 1255 1113 1239 1114 1224 1114 1208',\n 'calves-l':\n 'M1165 1192L1165 1173 1165 1154 1167 1136 1169 1117 1172 1099 1176 1081 1179 1062 1183 1044 1188 1026 1193 1008M1168 1192L1171 1174 1172 1155 1174 1137 1176 1118 1178 1100 1181 1081 1184 1063 1187 1045 1190 1026 1194 1008M1171 1193L1177 1175 1179 1156 1180 1137 1182 1119 1184 1100 1186 1082 1188 1063 1191 1045 1193 1027 1196 1008M1175 1193L1184 1175 1185 1157 1187 1138 1188 1120 1190 1101 1192 1083 1193 1064 1195 1045 1196 1027 1197 1008M1173 1208L1175 1224 1176 1240 1177 1255 1177 1271 1178 1287 1179 1302 1180 1318 1181 1334 1182 1349M1171 1208L1172 1224 1173 1240 1174 1255 1175 1271 1176 1287 1176 1303 1177 1318 1179 1334 1180 1350M1191 1356L1192 1340 1193 1323 1194 1307 1196 1291 1199 1275 1202 1259 1206 1243 1211 1227 1217 1211M1193 1357L1194 1340 1195 1324 1197 1307 1199 1291 1202 1275 1206 1259 1210 1243 1215 1228 1219 1212M1212 996L1214 1017 1216 1038 1219 1058 1222 1079 1224 1099 1226 1120 1228 1140 1228 1161 1221 1182 1211 1202M1209 997L1211 1017 1213 1038 1215 1058 1217 1079 1219 1099 1220 1120 1221 1140 1221 1161 1216 1182 1209 1202M1207 997L1208 1017 1210 1038 1211 1058 1213 1079 1214 1099 1214 1120 1214 1141 1214 1161 1211 1182 1207 1203M1204 997L1205 1017 1206 1038 1207 1058 1208 1079 1209 1100 1209 1120 1208 1141 1207 1161 1205 1182 1204 1203',\n 'ankles-r':\n 'M1085 1426L1081 1413 1081 1401 1081 1388 1082 1376 1084 1363M1088 1426L1087 1413 1087 1401 1087 1388 1088 1376 1087 1363M1090 1426L1092 1413 1093 1401 1094 1388 1093 1376 1091 1363M1093 1426L1098 1413 1100 1401 1100 1388 1099 1376 1095 1364',\n 'ankles-l':\n 'M1202 1364L1203 1376 1204 1389 1205 1402 1204 1414 1200 1427M1198 1364L1198 1377 1198 1389 1198 1402 1198 1414 1198 1427M1194 1364L1192 1377 1192 1389 1192 1402 1193 1414 1195 1427M1190 1364L1186 1377 1185 1389 1186 1402 1187 1414 1192 1427',\n 'feet-r':\n 'M1072 1424L1074 1412 1076 1400 1079 1388 1083 1376M1077 1424L1081 1412 1083 1401M1093 1426L1103 1415 1103 1403M1098 1427L1110 1416 1109 1404 1108 1392 1106 1379',\n 'feet-l':\n 'M1203 1377L1206 1388 1209 1400 1212 1412 1213 1423M1203 1401L1205 1413 1208 1424M1183 1403L1183 1415 1193 1426M1179 1380L1177 1392 1176 1404 1175 1416 1188 1427',\n },\n};\n","/* ------------------------------------------------------------------ */\n/* AUTO-GENERATED by scripts/anatomy-art/build-body-outlines.mjs. */\n/* */\n/* Smoothed body outlines for MuscleScheme's muscle figures, in each */\n/* figure's own coordinates. Derived from the contours in */\n/* muscle-paths.ts (react-native-body-highlighter, MIT, (c) 2022 */\n/* ELABBASSI Hicham): resampled, Gaussian-smoothed and simplified, so */\n/* the jagged toes and stepped edges become smooth curves. */\n/* ------------------------------------------------------------------ */\n\nexport type MuscleOutlineSet =\n | 'male-front'\n | 'male-back'\n | 'female-front'\n | 'female-back'\n | 'child-front'\n | 'child-back';\n\n/**\n * The child's proportions, in the male figure's coordinates: legs scaled by\n * `legScale` about the soles, everything above `hip` (and the arms, further\n * than `armReach` from the midline) moved down by `drop` to meet them.\n */\nexport const CHILD_PROPORTIONS = {\n legScale: 0.86,\n hip: 645,\n sole: 1340,\n armReach: 140,\n midline: {\n front: 364,\n back: 1084,\n },\n drop: 97.3,\n};\n\nexport const MUSCLE_OUTLINES: Record<MuscleOutlineSet, string> = {\n 'male-front':\n 'M 354 168 C 338 168 320 168 312 168 C 304 168 306 169 305 170 C 303 170 303 170 303 172 C 303 174 302 178 303 181 C 303 184 304 187 305 191 C 307 195 311 203 313 205 C 314 208 314 207 315 208 C 316 209 318 207 319 209 C 320 212 319 220 320 224 C 322 229 326 231 327 238 C 327 244 326 256 325 261 C 324 267 324 266 321 270 C 317 274 308 281 302 286 C 296 290 289 294 284 296 C 279 298 278 298 271 299 C 264 299 251 298 244 298 C 237 299 234 300 228 303 C 223 306 215 312 210 318 C 204 324 198 332 195 337 C 192 342 191 345 190 350 C 189 354 189 357 189 363 C 188 369 188 376 189 385 C 189 395 192 409 191 420 C 189 431 182 440 179 451 C 177 461 180 473 176 485 C 172 496 160 509 155 519 C 150 529 147 538 144 545 C 142 552 143 546 141 560 C 138 573 133 607 129 626 C 125 646 119 669 116 679 C 113 689 114 683 113 685 C 111 687 112 688 108 691 C 104 694 93 698 88 701 C 83 704 81 705 77 709 C 73 714 68 724 64 729 C 60 734 54 737 52 740 C 49 742 50 743 50 745 C 50 746 51 748 53 749 C 54 750 57 750 59 749 C 62 749 65 748 68 746 C 71 744 75 739 78 737 C 80 736 80 737 81 737 C 81 737 82 738 82 739 C 82 740 82 743 82 744 C 82 746 84 743 81 750 C 77 757 66 778 62 785 C 59 791 60 790 60 791 C 60 793 60 794 61 795 C 61 796 62 796 63 797 C 63 797 64 797 65 797 C 66 797 65 800 69 795 C 72 791 82 776 86 771 C 89 766 91 763 92 765 C 92 766 90 773 88 780 C 86 787 80 800 78 805 C 77 811 78 810 78 811 C 78 813 79 814 80 814 C 80 815 81 815 82 815 C 83 815 84 815 86 814 C 87 812 88 814 91 807 C 95 800 107 770 109 770 C 111 770 105 797 104 804 C 104 812 105 814 106 816 C 107 818 108 818 110 817 C 111 816 111 820 114 812 C 117 804 123 775 125 768 C 128 761 127 768 127 769 C 128 770 128 768 128 773 C 129 778 130 794 131 799 C 133 804 134 802 135 803 C 136 803 137 803 138 801 C 139 799 139 799 140 793 C 141 786 141 776 143 763 C 146 750 153 727 155 715 C 157 702 155 695 156 688 C 156 681 156 682 158 675 C 161 667 164 660 173 643 C 181 626 201 589 208 572 C 215 556 214 556 216 545 C 219 534 219 517 222 507 C 226 496 232 491 236 482 C 240 473 244 458 246 452 C 248 447 248 450 248 450 C 249 449 249 445 251 450 C 252 456 254 474 257 484 C 259 493 264 500 266 509 C 268 518 268 520 267 539 C 266 557 263 597 260 618 C 257 639 251 648 248 664 C 244 680 242 700 240 714 C 238 729 237 739 236 752 C 236 765 236 776 236 791 C 236 806 237 830 238 843 C 239 857 240 863 241 872 C 242 880 244 888 246 897 C 248 905 254 914 256 921 C 257 928 257 929 256 938 C 255 947 252 964 252 975 C 251 986 254 990 253 1002 C 253 1013 249 1030 247 1043 C 246 1057 245 1068 246 1084 C 247 1099 248 1115 251 1136 C 254 1157 262 1193 265 1208 C 267 1223 266 1219 266 1228 C 265 1236 263 1250 263 1259 C 263 1268 265 1277 266 1281 C 266 1286 265 1285 265 1287 C 264 1289 266 1288 262 1292 C 258 1297 246 1309 242 1314 C 238 1319 240 1320 239 1323 C 239 1325 237 1326 239 1329 C 240 1331 243 1336 247 1339 C 250 1341 255 1343 260 1344 C 265 1346 272 1348 276 1348 C 280 1349 281 1347 284 1347 C 287 1348 292 1351 294 1351 C 297 1351 297 1351 298 1350 C 300 1349 301 1348 303 1346 C 304 1344 307 1341 308 1339 C 309 1337 310 1338 310 1334 C 311 1329 310 1320 310 1313 C 311 1306 314 1299 314 1291 C 315 1282 316 1273 315 1262 C 314 1252 311 1240 310 1228 C 309 1216 310 1201 311 1189 C 311 1177 312 1169 314 1157 C 317 1145 323 1128 326 1118 C 328 1108 327 1105 328 1095 C 328 1086 328 1076 327 1061 C 325 1046 320 1017 320 1004 C 320 992 325 991 326 986 C 327 981 328 982 328 973 C 329 963 324 957 329 929 C 333 902 352 831 356 808 C 361 784 358 798 358 789 C 358 779 357 758 357 752 C 357 745 357 750 359 750 C 360 750 363 751 365 751 C 367 751 369 750 370 750 C 371 750 371 748 371 753 C 371 758 370 770 370 780 C 371 789 367 786 372 811 C 377 836 395 904 400 931 C 405 958 400 963 400 973 C 400 982 401 981 402 986 C 404 991 408 992 408 1004 C 408 1017 403 1044 402 1059 C 401 1075 401 1086 401 1095 C 401 1105 401 1108 403 1118 C 405 1128 411 1144 414 1157 C 417 1169 417 1179 418 1191 C 419 1203 419 1218 418 1230 C 418 1242 414 1252 413 1262 C 413 1273 414 1284 414 1292 C 415 1301 418 1306 418 1313 C 419 1319 417 1326 418 1331 C 418 1335 419 1336 420 1338 C 421 1340 422 1342 424 1344 C 425 1346 427 1348 429 1349 C 431 1350 431 1351 434 1351 C 437 1351 441 1348 444 1347 C 448 1347 450 1349 454 1348 C 457 1348 462 1346 467 1345 C 471 1344 476 1342 480 1340 C 484 1337 487 1333 489 1331 C 490 1329 490 1331 490 1328 C 489 1325 490 1320 486 1314 C 482 1308 469 1297 465 1292 C 462 1286 463 1286 463 1280 C 463 1275 465 1267 465 1258 C 465 1249 463 1236 462 1228 C 462 1220 460 1227 463 1212 C 465 1196 474 1158 477 1137 C 481 1115 482 1100 482 1084 C 483 1069 482 1057 481 1044 C 480 1030 476 1014 475 1002 C 474 990 477 983 477 972 C 476 962 473 948 473 940 C 472 931 471 927 473 920 C 474 913 479 906 482 898 C 484 891 485 887 486 878 C 488 869 489 856 490 844 C 491 831 492 816 492 802 C 492 787 493 770 492 757 C 492 743 491 736 489 721 C 487 706 485 685 481 668 C 478 650 471 637 468 615 C 464 594 462 556 461 538 C 460 520 461 517 462 508 C 464 499 469 492 472 483 C 475 473 476 456 478 451 C 479 445 479 449 480 450 C 481 450 480 446 482 452 C 484 458 489 475 493 484 C 497 493 503 496 506 506 C 509 517 510 535 512 546 C 514 557 512 553 519 571 C 527 588 550 631 558 648 C 567 665 567 666 569 673 C 572 680 572 680 572 688 C 573 695 572 703 574 716 C 576 728 582 750 585 763 C 587 775 587 785 588 791 C 589 797 589 799 591 801 C 592 803 593 803 594 802 C 595 802 596 803 597 798 C 598 793 599 777 600 772 C 601 767 600 761 603 768 C 605 775 612 803 614 811 C 617 820 617 816 618 817 C 620 818 622 817 622 816 C 623 815 624 814 624 812 C 624 810 625 812 624 805 C 623 798 617 770 619 770 C 621 771 633 801 638 808 C 642 816 642 814 644 815 C 645 816 647 815 648 815 C 650 814 650 813 651 811 C 651 810 652 811 650 806 C 649 801 643 789 641 782 C 639 775 636 765 636 764 C 637 763 641 768 645 773 C 649 779 657 792 660 796 C 663 800 662 797 663 797 C 664 798 665 797 666 797 C 666 797 667 796 668 795 C 668 794 672 799 668 792 C 665 784 652 758 648 750 C 644 742 646 746 646 745 C 646 743 646 740 646 739 C 647 738 647 737 648 737 C 648 737 648 736 651 737 C 653 739 657 744 661 746 C 664 748 667 749 670 749 C 673 750 675 749 677 748 C 678 747 679 745 679 744 C 678 742 679 741 676 739 C 674 736 668 733 664 728 C 660 723 655 714 651 709 C 648 705 646 705 641 702 C 635 699 625 694 621 691 C 617 689 617 688 616 686 C 614 684 615 688 613 679 C 610 670 605 653 600 631 C 596 609 589 564 584 546 C 580 527 579 529 573 519 C 568 509 557 496 553 485 C 548 474 551 462 549 451 C 546 440 539 431 538 420 C 536 409 540 394 540 384 C 540 374 540 366 539 360 C 539 354 538 351 537 347 C 536 343 535 340 532 335 C 529 330 523 322 518 317 C 513 312 506 307 500 303 C 495 300 492 299 485 298 C 477 297 463 299 456 298 C 449 298 450 298 444 296 C 439 294 431 290 425 285 C 419 280 410 273 406 268 C 402 264 403 262 403 257 C 402 252 401 243 402 238 C 403 232 407 229 408 225 C 409 220 408 212 409 209 C 410 206 413 209 416 206 C 418 203 422 195 423 190 C 425 186 426 182 426 178 C 426 175 426 173 425 171 C 423 170 421 170 418 169 C 415 169 420 169 409 168 C 398 168 371 168 354 168 Z',\n 'male-back':\n 'M 1073 167 C 1057 167 1038 168 1030 169 C 1023 169 1027 169 1026 170 C 1024 170 1023 170 1023 172 C 1022 174 1022 177 1022 181 C 1023 184 1024 188 1025 192 C 1027 197 1031 203 1032 206 C 1034 208 1034 208 1035 208 C 1036 209 1038 206 1039 209 C 1039 212 1039 220 1040 224 C 1041 229 1045 231 1046 237 C 1047 243 1046 255 1045 260 C 1045 264 1044 264 1044 265 C 1043 267 1044 267 1040 270 C 1037 274 1028 281 1022 286 C 1016 290 1009 294 1004 296 C 999 298 998 298 991 299 C 984 299 969 298 962 298 C 955 299 954 300 948 303 C 943 306 935 312 929 318 C 924 323 918 332 915 337 C 912 342 911 344 910 348 C 909 352 908 351 908 363 C 908 375 912 405 910 420 C 908 435 901 441 899 452 C 896 463 900 474 896 485 C 892 496 880 509 875 519 C 869 529 866 538 864 545 C 861 552 863 546 860 560 C 858 574 852 609 848 629 C 844 649 838 669 835 679 C 833 688 833 685 832 687 C 830 689 832 689 828 691 C 824 694 813 698 808 701 C 803 704 801 705 797 709 C 793 714 789 723 785 728 C 780 733 774 737 771 740 C 769 743 769 743 769 745 C 770 746 770 748 772 749 C 774 750 777 750 779 749 C 782 749 784 748 787 746 C 790 744 795 739 797 737 C 799 736 800 737 800 737 C 801 737 801 738 802 739 C 802 740 802 743 802 744 C 802 746 804 742 800 750 C 797 758 783 784 780 791 C 776 799 780 794 780 795 C 781 796 781 796 782 797 C 783 797 784 797 785 797 C 786 797 785 800 788 795 C 792 791 801 776 805 771 C 809 766 811 763 811 765 C 812 766 810 773 807 780 C 805 787 799 800 798 805 C 796 811 797 810 797 811 C 798 813 799 814 799 814 C 800 815 801 815 802 815 C 803 815 804 815 805 814 C 807 813 807 815 811 807 C 815 800 827 771 829 770 C 831 770 825 798 824 805 C 823 812 824 811 824 812 C 824 814 825 815 826 816 C 827 817 829 818 830 817 C 831 816 832 818 834 811 C 836 804 841 780 843 773 C 845 766 845 768 845 768 C 846 768 847 766 848 772 C 849 777 850 793 851 798 C 852 803 852 802 854 802 C 855 803 856 803 857 801 C 859 799 859 798 860 791 C 861 785 861 774 863 761 C 866 749 872 730 874 718 C 876 705 875 695 876 688 C 876 680 876 681 879 673 C 881 666 884 660 892 643 C 900 626 921 587 928 571 C 936 554 934 554 937 543 C 939 533 939 517 942 506 C 945 496 952 491 956 482 C 960 473 964 458 966 452 C 968 447 967 450 968 450 C 969 449 969 445 970 451 C 971 456 973 471 976 481 C 978 490 984 499 985 508 C 987 516 988 515 987 533 C 986 551 984 594 980 617 C 977 639 970 650 966 669 C 963 687 960 714 958 728 C 956 743 956 743 956 755 C 955 767 955 787 956 802 C 956 816 957 829 958 842 C 959 855 960 868 962 878 C 963 887 964 891 966 898 C 969 906 974 915 976 922 C 977 928 976 930 975 938 C 975 946 972 962 972 972 C 971 983 974 990 973 1002 C 972 1014 968 1030 967 1044 C 966 1058 965 1070 966 1086 C 966 1102 968 1119 971 1139 C 974 1160 983 1195 985 1210 C 987 1225 986 1220 985 1228 C 985 1236 983 1250 983 1259 C 983 1268 985 1277 985 1281 C 986 1286 985 1285 985 1287 C 984 1289 986 1288 982 1292 C 978 1297 966 1310 962 1315 C 958 1320 959 1321 959 1323 C 958 1325 957 1326 958 1329 C 960 1331 964 1336 967 1339 C 971 1342 976 1343 980 1345 C 985 1346 991 1348 995 1348 C 999 1349 1001 1347 1004 1348 C 1007 1348 1011 1350 1013 1351 C 1015 1351 1016 1351 1017 1350 C 1019 1350 1020 1349 1022 1347 C 1023 1345 1026 1342 1027 1340 C 1029 1338 1029 1339 1030 1334 C 1030 1330 1029 1319 1030 1312 C 1031 1305 1033 1297 1034 1291 C 1034 1286 1033 1281 1033 1276 C 1034 1272 1036 1271 1035 1263 C 1034 1255 1030 1243 1030 1231 C 1029 1218 1030 1200 1030 1187 C 1031 1175 1032 1167 1034 1156 C 1036 1145 1043 1129 1045 1119 C 1047 1108 1047 1104 1047 1095 C 1048 1086 1048 1078 1046 1063 C 1045 1048 1040 1016 1040 1004 C 1040 991 1044 992 1046 987 C 1047 982 1047 983 1048 973 C 1048 964 1044 956 1048 929 C 1053 901 1071 832 1076 807 C 1081 782 1078 787 1078 777 C 1078 768 1077 756 1077 751 C 1077 747 1077 750 1078 750 C 1079 750 1082 751 1084 751 C 1086 751 1089 750 1090 750 C 1091 750 1091 746 1091 752 C 1091 757 1090 774 1090 784 C 1090 794 1087 787 1092 811 C 1097 835 1115 908 1119 930 C 1124 951 1120 934 1120 938 C 1120 943 1119 950 1119 956 C 1119 962 1120 969 1120 974 C 1120 979 1121 981 1122 986 C 1123 991 1128 992 1128 1005 C 1128 1017 1123 1046 1122 1061 C 1120 1077 1120 1088 1121 1097 C 1121 1107 1120 1108 1122 1118 C 1125 1128 1131 1145 1134 1157 C 1136 1168 1137 1176 1137 1188 C 1138 1200 1139 1216 1138 1229 C 1137 1241 1133 1252 1133 1262 C 1132 1273 1133 1284 1134 1292 C 1135 1301 1137 1307 1138 1313 C 1138 1319 1137 1327 1137 1331 C 1138 1335 1138 1336 1139 1338 C 1140 1340 1142 1342 1143 1344 C 1145 1346 1147 1348 1149 1349 C 1150 1350 1151 1351 1154 1351 C 1156 1351 1161 1348 1164 1347 C 1167 1347 1168 1349 1172 1349 C 1176 1348 1183 1346 1188 1344 C 1193 1343 1198 1341 1201 1339 C 1204 1337 1206 1334 1208 1332 C 1209 1330 1209 1330 1209 1328 C 1209 1327 1209 1323 1208 1321 C 1208 1319 1209 1319 1205 1314 C 1202 1309 1189 1297 1186 1292 C 1182 1287 1184 1289 1183 1287 C 1183 1285 1182 1286 1182 1281 C 1183 1276 1185 1266 1185 1257 C 1185 1248 1183 1236 1182 1229 C 1182 1221 1180 1226 1183 1211 C 1185 1195 1194 1157 1197 1136 C 1200 1114 1201 1099 1202 1083 C 1202 1068 1202 1057 1201 1043 C 1199 1029 1195 1013 1195 1001 C 1194 990 1197 984 1196 973 C 1196 962 1193 946 1192 937 C 1191 929 1191 928 1192 921 C 1194 914 1199 905 1202 898 C 1204 891 1204 888 1206 879 C 1207 870 1209 856 1210 843 C 1211 830 1212 817 1212 803 C 1212 788 1212 769 1212 756 C 1211 743 1211 739 1209 725 C 1207 710 1205 688 1202 670 C 1198 652 1191 638 1187 616 C 1184 594 1182 556 1181 539 C 1180 521 1180 518 1182 509 C 1184 500 1189 495 1191 485 C 1194 475 1196 457 1197 451 C 1198 445 1198 449 1199 449 C 1200 450 1200 447 1202 452 C 1204 458 1207 472 1211 481 C 1215 490 1222 496 1226 507 C 1229 518 1229 535 1231 545 C 1234 556 1231 552 1239 571 C 1248 590 1274 640 1282 657 C 1290 674 1287 668 1289 674 C 1291 679 1291 681 1292 688 C 1293 695 1291 704 1293 717 C 1295 729 1302 750 1304 762 C 1307 774 1306 784 1307 790 C 1308 797 1309 798 1310 800 C 1311 802 1312 803 1314 802 C 1315 802 1316 804 1317 799 C 1318 794 1319 777 1320 772 C 1320 767 1321 768 1322 768 C 1323 768 1322 765 1324 772 C 1326 779 1331 804 1333 811 C 1336 819 1336 816 1338 817 C 1339 818 1341 817 1342 816 C 1343 816 1343 815 1343 813 C 1344 811 1344 812 1344 805 C 1343 798 1337 770 1339 770 C 1341 770 1352 799 1356 807 C 1360 814 1360 812 1362 813 C 1363 815 1364 815 1365 815 C 1366 815 1367 815 1368 815 C 1369 814 1370 813 1370 812 C 1370 810 1371 811 1370 806 C 1368 801 1363 788 1360 781 C 1358 774 1356 766 1356 764 C 1357 763 1360 767 1364 773 C 1368 778 1377 792 1380 796 C 1383 800 1382 797 1383 797 C 1384 797 1385 797 1386 797 C 1387 796 1388 794 1388 792 C 1388 791 1390 793 1386 786 C 1383 778 1371 757 1367 750 C 1364 743 1366 746 1366 744 C 1366 742 1366 740 1366 739 C 1367 737 1367 737 1368 737 C 1368 737 1369 736 1371 738 C 1373 739 1378 744 1381 746 C 1384 748 1386 749 1389 749 C 1392 750 1394 749 1396 749 C 1397 748 1398 746 1398 744 C 1398 743 1399 742 1396 739 C 1394 737 1388 734 1384 729 C 1380 724 1375 714 1370 709 C 1366 704 1365 704 1360 701 C 1354 698 1344 693 1340 691 C 1336 688 1337 689 1336 686 C 1335 684 1335 688 1332 678 C 1329 668 1323 647 1319 627 C 1315 608 1311 576 1308 562 C 1305 549 1306 552 1304 545 C 1301 538 1298 529 1293 519 C 1287 509 1276 497 1272 486 C 1268 474 1271 461 1268 450 C 1266 439 1259 434 1257 419 C 1256 404 1259 373 1259 361 C 1259 349 1258 352 1257 348 C 1256 343 1255 340 1252 335 C 1249 330 1244 323 1238 317 C 1233 312 1225 306 1219 303 C 1214 300 1212 299 1205 298 C 1198 298 1183 299 1176 299 C 1170 298 1169 298 1163 296 C 1158 293 1149 288 1143 284 C 1136 279 1129 272 1125 268 C 1122 263 1123 260 1122 255 C 1121 250 1121 242 1122 237 C 1122 232 1126 230 1127 225 C 1129 221 1128 212 1129 209 C 1130 206 1132 209 1133 208 C 1134 208 1134 209 1136 206 C 1137 202 1142 193 1144 188 C 1145 183 1146 179 1146 176 C 1146 173 1147 172 1144 171 C 1141 169 1140 169 1128 168 C 1116 167 1089 167 1073 167 Z',\n 'female-front':\n 'M 373 206 C 371 211 369 215 365 220 C 362 225 356 231 354 236 C 353 240 355 243 357 247 C 358 250 360 254 363 257 C 366 259 369 262 373 264 C 376 266 376 267 385 269 C 395 271 419 274 429 276 C 440 278 442 279 447 281 C 452 283 456 287 460 290 C 464 294 468 299 470 303 C 473 308 474 312 476 317 C 477 322 478 327 479 333 C 480 340 481 347 482 356 C 482 364 481 376 482 385 C 484 395 489 403 491 411 C 494 419 495 420 497 433 C 498 445 498 473 502 486 C 506 499 516 504 521 512 C 527 520 531 528 534 534 C 537 541 538 542 541 553 C 545 563 551 587 556 600 C 560 612 565 620 570 628 C 575 636 581 643 586 648 C 590 652 593 650 599 654 C 604 658 613 667 619 671 C 626 676 633 678 636 681 C 640 683 639 684 640 685 C 640 687 641 689 640 691 C 640 693 639 694 638 695 C 637 696 635 696 632 696 C 630 696 628 695 625 694 C 622 692 616 688 614 687 C 612 686 611 684 613 688 C 614 691 621 700 624 709 C 628 717 631 731 632 738 C 633 745 632 747 632 750 C 632 752 631 752 630 753 C 629 754 626 754 625 756 C 625 758 626 763 626 765 C 625 767 625 768 624 768 C 623 769 621 770 619 770 C 617 770 615 768 613 768 C 610 767 606 770 604 770 C 602 770 601 769 600 767 C 598 765 596 759 594 758 C 592 757 591 760 589 760 C 587 759 586 759 583 756 C 581 754 578 749 575 744 C 572 739 571 738 567 726 C 563 714 554 681 551 670 C 547 659 558 675 547 660 C 536 645 497 596 484 580 C 472 563 475 567 472 561 C 468 555 465 550 462 544 C 460 538 458 533 456 527 C 454 521 455 514 452 507 C 450 500 445 493 442 485 C 439 477 437 472 434 461 C 431 450 427 425 425 420 C 422 415 421 428 418 432 C 416 435 412 439 410 442 C 408 445 409 433 408 451 C 408 469 407 533 407 551 C 407 569 407 555 410 560 C 413 564 419 572 423 578 C 426 584 428 585 432 594 C 435 602 441 615 445 627 C 449 639 452 654 454 668 C 456 683 457 698 457 714 C 457 731 457 748 455 767 C 453 785 451 804 447 825 C 443 845 439 867 433 891 C 427 915 415 948 410 970 C 405 992 404 1011 403 1022 C 402 1034 402 1028 403 1039 C 405 1049 411 1071 413 1084 C 416 1097 418 1108 419 1118 C 420 1128 421 1135 421 1142 C 421 1149 421 1155 420 1161 C 419 1168 420 1167 416 1182 C 411 1197 399 1236 394 1254 C 389 1271 388 1280 386 1289 C 385 1298 384 1303 384 1310 C 383 1316 382 1323 383 1329 C 384 1336 387 1343 388 1349 C 389 1356 385 1360 388 1368 C 391 1377 401 1394 406 1403 C 412 1411 419 1414 422 1418 C 425 1422 424 1425 423 1427 C 423 1429 422 1430 420 1431 C 418 1432 423 1432 411 1432 C 400 1432 362 1432 351 1432 C 340 1432 347 1432 346 1431 C 344 1431 343 1431 342 1429 C 341 1427 339 1424 338 1420 C 338 1415 337 1410 338 1400 C 339 1391 343 1375 344 1363 C 345 1352 345 1344 345 1332 C 345 1319 345 1301 344 1287 C 344 1272 344 1259 342 1243 C 339 1227 333 1206 331 1190 C 329 1175 328 1161 328 1150 C 328 1139 328 1140 330 1123 C 332 1107 338 1074 340 1052 C 341 1030 340 1011 339 989 C 338 967 334 946 332 920 C 330 894 328 857 326 832 C 325 807 325 788 325 772 C 326 756 328 744 328 739 C 329 733 328 737 326 737 C 324 737 319 737 316 737 C 314 737 314 737 313 737 C 312 738 312 734 312 739 C 313 744 315 754 315 768 C 316 783 316 802 315 827 C 314 851 312 888 309 915 C 307 942 303 967 302 990 C 301 1013 300 1030 301 1053 C 303 1075 309 1107 311 1124 C 313 1140 313 1140 313 1151 C 313 1162 312 1174 310 1190 C 308 1205 301 1228 299 1244 C 297 1260 297 1273 297 1287 C 296 1302 296 1320 296 1332 C 296 1345 296 1353 297 1364 C 298 1375 301 1390 302 1399 C 303 1408 303 1414 303 1419 C 302 1424 301 1426 299 1428 C 298 1430 298 1431 293 1432 C 289 1432 282 1433 271 1433 C 260 1433 234 1432 226 1432 C 218 1432 223 1432 222 1431 C 220 1431 219 1430 219 1429 C 218 1427 218 1423 218 1421 C 218 1418 218 1419 221 1416 C 224 1413 230 1410 235 1402 C 240 1394 249 1378 252 1369 C 255 1360 252 1355 253 1349 C 254 1342 257 1337 258 1330 C 258 1323 259 1321 257 1307 C 255 1294 251 1271 246 1250 C 241 1229 230 1197 225 1183 C 221 1168 222 1169 221 1162 C 220 1155 220 1148 220 1141 C 220 1134 221 1128 222 1119 C 223 1109 225 1098 227 1085 C 230 1071 236 1048 238 1038 C 239 1027 239 1034 238 1023 C 237 1011 235 991 230 969 C 226 948 215 917 209 894 C 203 871 199 852 195 831 C 191 811 188 789 186 771 C 185 752 184 735 184 718 C 184 701 185 685 187 670 C 189 655 192 640 196 628 C 200 615 205 603 209 594 C 213 586 215 583 219 577 C 222 571 229 563 231 559 C 234 554 234 568 234 550 C 234 533 233 471 233 453 C 232 435 234 450 231 444 C 229 439 220 416 216 419 C 212 422 210 451 207 462 C 204 472 202 477 199 484 C 196 492 191 499 189 506 C 187 513 187 520 185 526 C 183 533 182 538 179 543 C 176 549 173 554 170 560 C 166 567 168 565 155 582 C 143 598 106 645 95 660 C 84 675 92 665 89 672 C 87 679 84 695 81 704 C 79 713 76 720 74 727 C 71 733 68 739 66 744 C 63 749 59 754 57 757 C 55 759 54 759 53 760 C 51 760 48 757 47 758 C 45 759 43 764 42 766 C 40 768 39 769 38 770 C 36 770 35 770 34 770 C 32 769 30 767 28 767 C 26 768 23 770 21 770 C 19 770 18 769 17 768 C 16 767 15 766 15 764 C 15 762 17 759 16 757 C 15 755 12 754 10 753 C 9 751 9 751 9 749 C 8 747 8 745 9 739 C 10 732 13 718 16 710 C 20 701 30 690 28 688 C 27 685 12 695 8 696 C 3 697 3 695 2 694 C 0 693 0 691 0 689 C 1 687 1 685 2 683 C 3 682 3 681 6 679 C 9 677 15 676 21 672 C 27 667 37 657 43 653 C 49 649 51 652 56 648 C 61 643 66 635 71 627 C 76 619 81 611 85 599 C 90 587 95 566 99 555 C 102 544 104 541 107 534 C 111 527 114 521 119 513 C 124 505 136 496 140 486 C 143 475 141 458 142 449 C 143 439 144 436 145 429 C 146 423 147 418 150 410 C 152 403 157 393 159 384 C 161 374 159 363 160 354 C 160 344 162 334 163 327 C 164 320 165 317 167 312 C 168 308 170 303 173 299 C 176 295 180 290 184 287 C 188 284 193 282 197 280 C 202 278 203 278 212 276 C 221 274 242 272 250 270 C 259 268 260 268 265 265 C 269 263 274 260 277 257 C 280 254 282 251 284 248 C 286 245 286 243 286 241 C 287 239 289 239 287 235 C 284 231 278 224 273 217 C 269 209 265 197 262 191 C 258 185 256 187 254 182 C 252 178 250 170 249 165 C 249 161 248 158 249 155 C 251 152 257 153 260 147 C 263 141 260 127 267 120 C 273 113 289 111 299 106 C 310 101 323 92 329 89 C 335 86 334 89 337 89 C 339 89 341 89 346 90 C 350 91 362 95 366 97 C 370 99 368 96 370 103 C 372 111 376 137 379 144 C 381 152 381 149 383 150 C 385 152 389 152 390 153 C 392 155 392 155 392 158 C 392 161 391 166 391 170 C 390 174 390 176 388 180 C 386 183 382 187 379 191 C 377 195 375 201 373 206 Z',\n 'female-back':\n 'M 1193 208 C 1197 208 1192 213 1189 217 C 1186 222 1178 231 1176 237 C 1175 242 1177 244 1179 248 C 1181 251 1183 255 1186 257 C 1189 260 1191 262 1194 264 C 1198 265 1197 266 1207 269 C 1216 271 1241 274 1251 276 C 1262 278 1263 279 1268 281 C 1274 283 1278 286 1282 290 C 1286 294 1290 299 1292 303 C 1295 307 1296 312 1298 317 C 1300 322 1301 328 1301 334 C 1302 341 1303 347 1304 355 C 1304 364 1303 376 1304 385 C 1306 394 1311 402 1313 410 C 1316 419 1317 421 1319 434 C 1321 446 1319 473 1324 486 C 1328 499 1338 504 1343 512 C 1349 520 1352 527 1356 534 C 1359 541 1360 543 1364 554 C 1367 564 1373 586 1377 598 C 1382 610 1386 618 1391 626 C 1396 634 1402 643 1407 648 C 1412 652 1415 649 1420 654 C 1426 658 1436 667 1442 672 C 1448 676 1454 678 1458 680 C 1461 683 1461 684 1462 686 C 1463 688 1463 690 1463 692 C 1462 693 1461 695 1460 695 C 1458 696 1458 697 1454 696 C 1450 694 1436 685 1435 687 C 1434 690 1444 702 1447 710 C 1450 719 1453 731 1454 738 C 1455 744 1455 747 1454 750 C 1454 752 1453 752 1452 753 C 1451 754 1448 754 1447 756 C 1447 758 1448 763 1448 765 C 1448 767 1447 768 1446 768 C 1445 769 1443 770 1441 770 C 1439 770 1437 767 1435 767 C 1433 767 1431 769 1429 770 C 1428 770 1427 770 1425 770 C 1424 769 1423 768 1421 766 C 1420 764 1418 759 1416 758 C 1415 757 1412 760 1410 760 C 1409 759 1408 759 1406 757 C 1404 754 1400 749 1397 744 C 1395 739 1394 741 1389 727 C 1385 713 1383 686 1369 661 C 1355 636 1317 593 1304 576 C 1292 560 1296 565 1293 559 C 1289 554 1287 548 1284 543 C 1282 538 1280 534 1278 528 C 1277 522 1277 513 1274 506 C 1272 498 1266 490 1263 483 C 1260 475 1258 471 1256 460 C 1253 450 1249 427 1247 420 C 1245 413 1247 418 1246 420 C 1245 422 1243 428 1240 431 C 1238 435 1234 439 1232 442 C 1230 445 1231 431 1230 449 C 1230 467 1229 532 1229 551 C 1229 569 1229 555 1232 559 C 1234 564 1241 572 1245 577 C 1248 583 1250 586 1254 594 C 1258 603 1263 614 1267 626 C 1270 639 1274 653 1276 667 C 1278 682 1279 699 1279 715 C 1279 732 1279 749 1277 768 C 1275 786 1273 806 1269 826 C 1265 846 1261 865 1255 889 C 1249 913 1238 947 1233 970 C 1228 992 1226 1012 1225 1023 C 1224 1034 1224 1028 1225 1038 C 1227 1048 1233 1071 1236 1085 C 1238 1098 1240 1109 1241 1119 C 1242 1128 1243 1134 1243 1141 C 1243 1149 1243 1155 1242 1162 C 1241 1169 1242 1167 1237 1183 C 1233 1198 1221 1233 1216 1255 C 1210 1276 1207 1296 1206 1309 C 1204 1322 1204 1323 1205 1330 C 1206 1337 1209 1343 1210 1349 C 1211 1354 1210 1360 1210 1364 C 1210 1367 1208 1363 1211 1369 C 1214 1376 1223 1394 1228 1402 C 1234 1410 1241 1414 1244 1418 C 1247 1422 1246 1424 1245 1426 C 1245 1428 1244 1430 1242 1430 C 1241 1431 1246 1432 1235 1432 C 1225 1432 1190 1433 1178 1432 C 1167 1432 1168 1431 1166 1430 C 1163 1429 1163 1427 1162 1426 C 1161 1424 1161 1424 1160 1420 C 1160 1416 1160 1410 1161 1401 C 1162 1391 1165 1375 1166 1364 C 1168 1352 1167 1346 1167 1332 C 1167 1318 1167 1295 1166 1280 C 1165 1265 1166 1257 1163 1241 C 1161 1225 1155 1200 1152 1185 C 1150 1170 1150 1161 1150 1151 C 1150 1140 1150 1140 1152 1124 C 1154 1108 1160 1076 1162 1054 C 1163 1031 1162 1012 1161 989 C 1160 967 1156 944 1154 918 C 1152 891 1149 854 1148 829 C 1147 805 1147 788 1147 772 C 1148 757 1150 745 1151 739 C 1151 733 1151 737 1149 737 C 1147 737 1140 737 1138 737 C 1135 737 1135 737 1135 738 C 1134 738 1134 734 1134 740 C 1135 745 1137 754 1138 770 C 1138 787 1137 812 1136 838 C 1135 863 1133 898 1131 923 C 1129 948 1126 967 1124 987 C 1123 1007 1123 1031 1123 1044 C 1123 1057 1123 1051 1125 1065 C 1126 1079 1132 1110 1134 1126 C 1135 1142 1135 1149 1135 1160 C 1134 1172 1134 1180 1131 1195 C 1129 1209 1123 1228 1121 1248 C 1119 1268 1118 1296 1118 1315 C 1118 1334 1118 1350 1119 1364 C 1120 1379 1123 1391 1124 1400 C 1126 1409 1125 1415 1125 1419 C 1124 1424 1123 1427 1121 1429 C 1120 1431 1120 1431 1115 1432 C 1110 1432 1102 1433 1091 1433 C 1080 1433 1055 1432 1048 1432 C 1040 1431 1044 1431 1043 1431 C 1042 1430 1041 1430 1040 1428 C 1040 1426 1040 1422 1040 1420 C 1041 1418 1041 1418 1043 1416 C 1044 1414 1049 1411 1052 1409 C 1054 1406 1053 1409 1057 1402 C 1061 1395 1072 1376 1075 1367 C 1078 1358 1074 1354 1075 1348 C 1076 1342 1079 1336 1080 1329 C 1081 1323 1081 1320 1079 1307 C 1078 1294 1074 1273 1069 1253 C 1064 1232 1052 1197 1048 1182 C 1043 1167 1044 1170 1044 1163 C 1043 1157 1042 1151 1042 1144 C 1042 1137 1043 1131 1044 1121 C 1045 1112 1047 1100 1049 1086 C 1052 1072 1058 1048 1060 1037 C 1061 1026 1061 1032 1060 1021 C 1059 1010 1057 992 1053 970 C 1048 949 1036 915 1030 891 C 1024 867 1020 847 1016 827 C 1013 806 1010 787 1008 769 C 1007 750 1006 734 1006 718 C 1006 701 1007 685 1009 670 C 1011 655 1014 640 1018 627 C 1022 615 1027 602 1031 594 C 1035 586 1036 584 1040 578 C 1044 572 1050 564 1053 560 C 1056 555 1056 571 1056 552 C 1056 532 1056 464 1054 444 C 1052 424 1047 435 1044 431 C 1042 427 1041 415 1038 420 C 1036 425 1032 450 1030 461 C 1027 471 1024 477 1021 485 C 1018 492 1013 499 1011 506 C 1009 513 1009 521 1007 527 C 1006 533 1004 537 1001 542 C 999 548 996 554 992 559 C 989 565 993 560 981 577 C 968 594 928 645 916 660 C 905 675 916 659 912 670 C 909 681 900 713 896 726 C 892 738 890 740 887 745 C 885 750 882 754 880 756 C 878 758 876 759 874 760 C 872 760 871 757 869 758 C 867 759 865 764 864 766 C 862 768 862 770 859 770 C 857 770 853 767 850 767 C 847 767 845 770 843 770 C 841 770 839 769 839 768 C 838 767 837 766 837 764 C 837 762 839 758 838 756 C 837 755 834 754 833 753 C 832 752 831 753 831 750 C 831 747 830 744 831 737 C 832 730 835 717 838 709 C 842 701 852 689 850 687 C 849 685 834 695 830 696 C 825 697 825 695 824 694 C 822 693 822 691 822 689 C 823 687 823 685 824 684 C 825 682 825 681 828 679 C 831 677 837 676 843 672 C 849 667 859 657 865 653 C 870 649 873 652 878 648 C 882 643 888 634 892 629 C 896 623 898 619 901 614 C 903 610 904 610 908 599 C 911 589 918 564 921 553 C 925 543 926 541 929 534 C 933 527 936 521 941 513 C 947 505 957 499 962 486 C 966 472 965 443 967 431 C 968 418 969 418 972 410 C 974 402 979 393 981 384 C 983 374 981 363 982 354 C 982 344 984 333 985 325 C 987 318 988 313 990 308 C 992 303 995 299 998 295 C 1001 292 1004 289 1008 286 C 1011 283 1015 282 1020 280 C 1024 278 1026 277 1035 276 C 1045 274 1065 271 1074 270 C 1082 268 1082 267 1086 265 C 1091 262 1096 259 1099 257 C 1102 254 1104 252 1106 249 C 1107 245 1109 240 1109 238 C 1109 235 1109 236 1108 234 C 1107 232 1102 227 1101 224 C 1100 222 1100 219 1100 217 C 1101 216 1098 213 1102 214 C 1106 214 1115 219 1122 221 C 1129 222 1138 223 1145 222 C 1151 222 1153 221 1161 219 C 1169 217 1188 208 1193 208 Z',\n 'child-front':\n 'M 354 265 C 338 265 320 265 312 265 C 304 266 306 266 305 267 C 303 268 303 267 303 269 C 303 271 302 275 303 278 C 303 281 304 284 305 288 C 307 292 311 300 313 303 C 314 306 314 305 315 305 C 316 306 318 304 319 307 C 320 309 319 317 320 322 C 322 326 326 329 327 335 C 327 341 326 353 325 359 C 324 364 324 364 321 368 C 317 372 308 379 302 383 C 296 387 289 391 284 393 C 279 395 278 396 271 396 C 264 396 251 395 244 396 C 237 396 234 397 228 400 C 223 404 215 410 210 415 C 204 421 198 429 195 434 C 192 440 191 443 190 447 C 189 451 189 454 189 460 C 188 466 188 473 189 483 C 189 492 192 506 191 517 C 189 528 182 537 179 548 C 177 559 180 571 176 582 C 172 593 160 606 155 616 C 150 626 147 636 144 643 C 142 649 143 644 141 657 C 138 671 133 704 129 724 C 125 743 119 766 116 776 C 113 786 114 781 113 783 C 111 785 112 786 108 788 C 104 791 93 796 88 799 C 83 802 81 802 77 807 C 73 811 68 821 64 826 C 60 831 54 834 52 837 C 49 840 50 841 50 842 C 50 844 51 845 53 846 C 54 847 57 847 59 847 C 62 846 65 845 68 843 C 71 841 75 836 78 835 C 80 833 80 834 81 834 C 81 835 82 835 82 836 C 82 837 82 840 82 842 C 82 844 84 841 81 847 C 77 854 66 875 62 882 C 59 889 60 887 60 889 C 60 890 60 892 61 893 C 61 893 62 894 63 894 C 63 894 64 895 65 895 C 66 894 65 897 69 893 C 72 888 82 873 86 868 C 89 863 91 860 92 862 C 92 864 90 871 88 878 C 86 884 80 898 78 903 C 77 908 78 907 78 908 C 78 910 79 911 80 912 C 80 912 81 912 82 912 C 83 912 84 912 86 911 C 87 910 88 912 91 904 C 95 897 107 868 109 867 C 111 867 105 894 104 902 C 104 909 105 911 106 913 C 107 915 108 915 110 914 C 111 914 111 917 114 909 C 117 901 123 873 125 865 C 128 858 127 865 127 866 C 128 867 128 865 128 870 C 129 875 130 892 131 897 C 133 902 134 900 135 900 C 136 900 137 900 138 898 C 139 897 139 896 140 890 C 141 884 141 873 143 860 C 146 847 153 825 155 812 C 157 800 155 792 156 785 C 156 779 156 779 158 772 C 161 765 164 758 173 741 C 181 723 201 686 208 669 C 215 653 214 653 216 642 C 219 631 219 614 222 604 C 226 593 232 588 236 579 C 240 570 244 555 246 549 C 248 544 248 547 248 547 C 249 547 249 542 251 548 C 252 553 254 571 257 581 C 259 591 264 597 266 606 C 268 615 267 623 267 636 C 267 648 265 667 264 681 C 263 694 263 703 260 717 C 257 730 250 748 247 764 C 243 780 240 799 239 811 C 237 823 237 827 236 837 C 236 846 236 855 236 868 C 236 880 237 901 238 913 C 239 924 240 930 241 937 C 242 945 244 952 246 959 C 248 966 254 974 256 980 C 257 986 257 986 256 994 C 255 1002 252 1017 252 1026 C 251 1035 254 1039 253 1049 C 253 1059 249 1073 247 1085 C 246 1097 245 1106 246 1120 C 247 1133 248 1147 251 1165 C 254 1182 262 1213 265 1227 C 267 1240 266 1236 266 1243 C 265 1251 263 1263 263 1270 C 263 1278 265 1285 266 1289 C 266 1293 265 1293 265 1294 C 264 1296 266 1295 262 1299 C 258 1303 246 1314 242 1318 C 238 1322 240 1323 239 1325 C 239 1327 237 1328 239 1330 C 240 1332 243 1337 247 1339 C 250 1341 255 1342 260 1344 C 265 1345 272 1347 276 1347 C 280 1348 281 1346 284 1346 C 287 1347 292 1349 294 1349 C 297 1350 297 1349 298 1349 C 300 1348 301 1347 303 1345 C 304 1344 307 1341 308 1339 C 309 1337 310 1338 310 1334 C 311 1331 310 1323 310 1317 C 311 1310 314 1305 314 1298 C 315 1290 316 1282 315 1273 C 314 1264 311 1254 310 1244 C 309 1233 310 1221 311 1210 C 311 1200 312 1193 314 1182 C 317 1172 323 1158 326 1149 C 328 1140 327 1138 328 1130 C 328 1121 328 1113 327 1100 C 325 1087 320 1062 320 1051 C 320 1041 325 1040 326 1035 C 327 1031 328 1032 328 1024 C 329 1016 324 1010 329 987 C 333 963 352 903 356 882 C 361 862 358 874 358 866 C 358 858 357 839 357 834 C 357 828 357 833 359 833 C 361 832 368 832 370 833 C 372 833 371 831 371 835 C 371 839 370 850 370 858 C 371 866 367 863 372 885 C 377 907 395 965 400 988 C 405 1011 400 1016 400 1024 C 400 1032 401 1031 402 1035 C 404 1040 408 1041 408 1051 C 408 1062 403 1086 402 1099 C 401 1112 401 1121 401 1130 C 401 1138 401 1140 403 1149 C 405 1158 411 1172 414 1182 C 417 1193 417 1201 418 1212 C 419 1222 419 1235 418 1245 C 418 1255 414 1264 413 1273 C 413 1282 414 1292 414 1299 C 415 1306 418 1311 418 1317 C 419 1322 417 1328 418 1332 C 418 1336 418 1336 420 1338 C 421 1340 423 1343 425 1344 C 426 1346 428 1348 430 1349 C 432 1349 433 1350 435 1349 C 438 1349 441 1347 444 1346 C 448 1346 449 1348 455 1347 C 461 1346 474 1342 480 1340 C 485 1337 487 1334 489 1333 C 490 1331 490 1332 490 1329 C 489 1327 490 1322 486 1317 C 482 1312 469 1303 465 1298 C 462 1294 463 1293 463 1289 C 463 1284 465 1277 465 1269 C 465 1262 463 1250 462 1244 C 462 1237 460 1243 463 1230 C 465 1216 474 1183 477 1165 C 481 1147 482 1133 482 1120 C 483 1107 482 1097 481 1085 C 480 1074 476 1060 475 1050 C 474 1039 477 1033 477 1024 C 476 1015 473 1003 473 996 C 472 988 471 985 473 979 C 474 973 479 967 482 960 C 484 954 485 950 487 941 C 488 933 489 923 490 912 C 491 901 492 888 492 876 C 492 864 492 849 492 838 C 492 828 491 825 490 813 C 488 801 486 783 482 767 C 479 750 472 736 468 714 C 465 692 462 654 461 636 C 460 619 460 616 462 607 C 464 597 470 588 472 579 C 475 569 477 553 478 548 C 479 543 479 547 480 547 C 481 547 480 543 482 549 C 484 555 489 573 493 582 C 497 591 503 593 506 604 C 509 614 510 633 512 643 C 514 654 512 651 519 668 C 527 685 550 728 558 746 C 567 763 567 764 569 770 C 572 777 572 778 572 785 C 573 792 572 801 574 813 C 576 826 582 847 585 860 C 587 872 587 882 588 888 C 589 895 589 896 591 898 C 592 900 593 900 594 900 C 595 899 596 901 597 896 C 598 890 599 874 600 869 C 601 864 600 859 603 865 C 605 872 612 901 614 909 C 617 917 617 913 618 914 C 620 915 622 914 622 913 C 623 913 624 911 624 910 C 624 908 625 909 624 902 C 623 895 617 867 619 868 C 621 868 633 898 638 906 C 642 913 642 911 644 912 C 645 913 647 912 648 912 C 650 911 650 910 651 909 C 651 907 652 908 650 903 C 649 898 643 886 641 879 C 639 872 636 863 636 861 C 637 860 641 865 645 871 C 649 876 657 889 660 893 C 663 897 662 894 663 895 C 664 895 665 895 666 894 C 666 894 667 893 668 893 C 668 892 672 896 668 889 C 665 881 652 855 648 848 C 644 840 646 844 646 842 C 646 840 646 838 646 836 C 647 835 647 835 648 834 C 648 834 648 833 651 835 C 653 836 657 841 661 843 C 664 845 667 846 670 847 C 673 847 675 846 677 845 C 678 844 679 842 679 841 C 678 839 679 839 676 836 C 674 833 668 830 664 825 C 660 821 655 811 651 807 C 648 802 646 802 641 799 C 635 796 625 791 621 789 C 617 786 617 785 616 783 C 614 781 615 785 613 776 C 610 767 605 751 600 728 C 596 706 589 662 584 643 C 580 624 579 627 573 617 C 568 607 557 594 553 582 C 548 571 551 559 549 548 C 546 537 539 528 538 517 C 536 506 540 491 540 482 C 540 472 540 464 539 458 C 539 451 538 449 537 444 C 536 440 535 437 532 432 C 529 427 523 419 518 414 C 513 409 506 404 500 401 C 495 398 492 396 485 396 C 477 395 463 396 456 396 C 449 395 450 396 444 393 C 439 391 431 387 425 382 C 419 378 410 370 406 366 C 402 361 403 359 403 354 C 402 349 401 340 402 335 C 403 330 407 327 408 322 C 409 317 408 310 409 307 C 410 304 413 307 416 303 C 418 300 422 292 423 287 C 425 283 426 279 426 276 C 426 273 426 270 425 269 C 423 267 421 267 418 266 C 415 266 420 266 409 266 C 398 266 371 265 354 265 Z',\n 'child-back':\n 'M 1073 265 C 1057 265 1038 266 1030 266 C 1023 266 1027 266 1026 267 C 1024 268 1023 268 1023 269 C 1022 271 1022 275 1022 278 C 1023 282 1024 286 1025 290 C 1027 294 1031 300 1032 303 C 1034 306 1034 305 1035 305 C 1036 306 1038 304 1039 306 C 1039 309 1039 317 1040 322 C 1041 326 1045 329 1046 335 C 1047 341 1046 352 1045 357 C 1045 362 1044 361 1044 363 C 1043 364 1044 364 1040 368 C 1037 371 1028 379 1022 383 C 1016 387 1009 391 1004 393 C 999 395 998 395 991 396 C 984 396 969 395 962 396 C 955 397 954 397 948 401 C 943 404 935 410 929 415 C 924 421 918 429 915 434 C 912 439 911 441 910 445 C 909 450 908 448 908 460 C 908 472 912 502 910 517 C 908 532 901 538 899 549 C 896 560 900 571 896 582 C 892 593 880 606 875 616 C 869 626 866 636 864 643 C 861 649 863 643 860 657 C 858 671 852 707 848 727 C 844 746 838 766 835 776 C 833 785 833 782 832 784 C 830 786 832 786 828 788 C 824 791 813 796 808 799 C 803 802 801 802 797 807 C 793 811 789 820 785 825 C 780 830 774 834 771 837 C 769 840 769 841 769 842 C 770 844 770 845 772 846 C 774 847 777 847 779 847 C 782 846 784 845 787 843 C 790 841 795 836 797 835 C 799 833 800 834 800 834 C 801 835 801 835 802 836 C 802 837 802 840 802 842 C 802 844 804 839 800 847 C 797 855 783 881 780 889 C 776 896 780 892 780 892 C 781 893 781 894 782 894 C 783 894 784 895 785 894 C 786 894 785 897 788 893 C 792 888 801 873 805 868 C 809 863 811 860 811 862 C 812 864 810 871 807 878 C 805 884 799 898 798 903 C 796 908 797 907 797 908 C 798 910 799 911 799 912 C 800 912 801 913 802 913 C 803 912 804 913 805 911 C 807 910 807 912 811 905 C 815 897 827 868 829 868 C 831 867 825 895 824 902 C 823 909 824 908 824 910 C 824 912 825 913 826 913 C 827 914 829 915 830 914 C 831 913 832 916 834 908 C 836 901 841 878 843 871 C 845 863 845 865 845 865 C 846 865 847 864 848 869 C 849 874 850 890 851 896 C 852 901 852 899 854 900 C 855 900 856 900 857 898 C 859 896 859 895 860 889 C 861 882 861 871 863 859 C 866 846 872 827 874 815 C 876 803 875 793 876 785 C 876 778 876 778 879 770 C 881 763 884 758 892 740 C 900 723 921 685 928 668 C 936 651 934 651 937 641 C 939 630 939 614 942 604 C 945 593 952 588 956 579 C 960 570 964 555 966 549 C 968 544 967 547 968 547 C 969 547 968 542 970 547 C 971 552 973 569 976 578 C 978 588 984 596 985 605 C 987 614 988 614 987 632 C 986 650 984 691 980 714 C 977 737 969 751 965 768 C 962 785 959 806 958 818 C 956 829 956 828 956 838 C 956 848 955 865 956 877 C 956 889 957 901 958 912 C 959 923 960 934 962 942 C 963 951 964 954 966 960 C 969 966 974 974 976 980 C 977 986 976 987 975 994 C 975 1002 972 1015 972 1024 C 971 1033 974 1039 973 1049 C 972 1060 968 1073 967 1085 C 966 1097 965 1107 966 1121 C 966 1135 968 1150 971 1167 C 974 1185 983 1215 985 1228 C 987 1241 986 1236 985 1243 C 985 1251 983 1263 983 1270 C 983 1278 985 1286 985 1290 C 986 1294 985 1293 985 1295 C 984 1296 986 1295 982 1299 C 978 1303 966 1314 962 1318 C 958 1323 959 1323 959 1325 C 958 1327 957 1328 958 1330 C 960 1333 964 1337 967 1339 C 971 1341 976 1343 980 1344 C 985 1345 991 1347 995 1347 C 999 1348 1001 1346 1004 1346 C 1007 1347 1011 1349 1013 1349 C 1015 1350 1016 1349 1017 1349 C 1019 1348 1020 1348 1022 1346 C 1024 1344 1028 1340 1030 1335 C 1031 1330 1029 1322 1030 1316 C 1031 1310 1033 1303 1034 1298 C 1034 1293 1033 1289 1033 1285 C 1034 1281 1036 1280 1035 1274 C 1034 1267 1030 1257 1030 1246 C 1029 1235 1030 1219 1030 1209 C 1031 1198 1032 1192 1034 1182 C 1036 1172 1043 1158 1045 1150 C 1047 1141 1047 1137 1047 1129 C 1048 1121 1048 1115 1046 1102 C 1045 1089 1040 1062 1040 1051 C 1040 1040 1044 1041 1046 1036 C 1047 1032 1047 1033 1048 1025 C 1048 1016 1044 1010 1048 986 C 1053 962 1071 904 1076 882 C 1081 860 1078 864 1078 856 C 1078 848 1075 838 1077 834 C 1079 830 1087 832 1090 833 C 1092 833 1091 829 1091 834 C 1091 839 1090 854 1090 862 C 1090 871 1087 864 1092 885 C 1097 906 1115 969 1119 987 C 1124 1005 1120 991 1120 995 C 1120 998 1119 1005 1119 1010 C 1119 1015 1120 1021 1120 1025 C 1120 1030 1121 1031 1122 1036 C 1123 1040 1128 1041 1128 1052 C 1128 1062 1123 1087 1122 1100 C 1120 1113 1120 1123 1121 1131 C 1121 1139 1120 1141 1122 1149 C 1125 1158 1131 1172 1134 1182 C 1136 1192 1137 1199 1137 1209 C 1138 1220 1139 1233 1138 1244 C 1137 1255 1133 1264 1133 1273 C 1132 1282 1133 1292 1134 1299 C 1135 1306 1137 1311 1138 1317 C 1138 1322 1137 1329 1137 1332 C 1138 1336 1138 1336 1139 1338 C 1141 1340 1144 1344 1145 1345 C 1147 1347 1148 1348 1150 1349 C 1151 1349 1153 1350 1155 1349 C 1158 1349 1161 1347 1164 1346 C 1167 1346 1168 1348 1172 1347 C 1176 1347 1183 1345 1188 1344 C 1193 1342 1198 1341 1201 1339 C 1204 1337 1206 1334 1208 1333 C 1209 1332 1209 1332 1209 1330 C 1209 1328 1209 1326 1208 1324 C 1208 1322 1209 1322 1205 1318 C 1202 1314 1189 1303 1186 1299 C 1182 1295 1184 1296 1183 1294 C 1183 1293 1182 1293 1182 1289 C 1183 1285 1185 1276 1185 1269 C 1185 1261 1183 1251 1182 1244 C 1182 1238 1180 1242 1183 1229 C 1185 1216 1194 1183 1197 1164 C 1200 1146 1201 1133 1202 1119 C 1202 1106 1202 1096 1201 1085 C 1199 1073 1195 1059 1195 1049 C 1194 1039 1197 1034 1196 1024 C 1196 1015 1193 1001 1192 994 C 1191 986 1191 985 1192 980 C 1194 974 1199 966 1202 960 C 1204 954 1204 951 1206 943 C 1207 936 1209 924 1210 913 C 1211 902 1212 890 1212 878 C 1212 866 1212 849 1212 839 C 1212 829 1211 828 1210 816 C 1208 804 1206 786 1203 769 C 1199 752 1191 735 1187 714 C 1184 692 1182 655 1181 637 C 1180 619 1180 615 1182 606 C 1184 597 1188 592 1191 582 C 1194 573 1196 554 1198 548 C 1199 542 1199 547 1200 547 C 1201 547 1200 545 1202 550 C 1204 555 1207 569 1211 578 C 1215 587 1222 593 1226 604 C 1229 615 1229 632 1231 643 C 1234 653 1231 650 1239 668 C 1248 687 1274 737 1282 754 C 1290 771 1287 766 1289 771 C 1291 776 1291 778 1292 786 C 1293 793 1291 802 1293 814 C 1295 826 1302 847 1304 859 C 1307 871 1306 881 1307 887 C 1308 894 1309 895 1310 897 C 1311 899 1312 900 1314 900 C 1315 900 1316 901 1317 896 C 1318 891 1319 875 1320 870 C 1320 864 1321 865 1322 865 C 1323 865 1322 862 1324 869 C 1326 876 1331 901 1333 908 C 1336 916 1336 913 1338 914 C 1339 915 1341 914 1342 914 C 1343 913 1343 912 1343 910 C 1344 908 1344 910 1344 903 C 1343 896 1337 867 1339 868 C 1341 868 1352 897 1356 904 C 1360 911 1360 909 1362 911 C 1363 912 1364 912 1365 912 C 1366 913 1367 913 1368 912 C 1369 911 1370 910 1370 909 C 1370 908 1371 909 1370 903 C 1368 898 1363 885 1360 878 C 1358 871 1356 863 1356 862 C 1357 860 1360 865 1364 870 C 1368 875 1377 889 1380 893 C 1383 897 1382 894 1383 895 C 1384 895 1385 895 1386 894 C 1387 893 1388 892 1388 890 C 1388 888 1390 890 1386 883 C 1383 876 1371 854 1367 847 C 1364 840 1366 843 1366 841 C 1366 840 1366 837 1366 836 C 1367 835 1367 835 1368 834 C 1368 834 1369 833 1371 835 C 1373 836 1378 841 1381 843 C 1384 845 1386 846 1389 847 C 1392 847 1394 847 1396 846 C 1397 845 1398 843 1398 842 C 1398 840 1399 839 1396 837 C 1394 834 1388 831 1384 826 C 1380 821 1375 811 1370 806 C 1366 802 1365 801 1360 798 C 1354 795 1344 791 1340 788 C 1336 786 1337 786 1336 784 C 1335 782 1335 785 1332 776 C 1329 766 1323 744 1319 725 C 1315 705 1311 673 1308 660 C 1305 646 1306 650 1304 642 C 1301 635 1298 626 1293 616 C 1287 606 1276 594 1272 583 C 1268 572 1271 559 1268 547 C 1266 536 1259 531 1257 517 C 1256 502 1259 470 1259 458 C 1259 446 1258 449 1257 445 C 1256 441 1255 438 1252 433 C 1249 427 1244 420 1238 415 C 1233 409 1225 403 1219 400 C 1214 397 1212 396 1205 396 C 1198 395 1183 396 1176 396 C 1170 395 1169 396 1163 393 C 1158 391 1149 386 1143 381 C 1136 376 1129 370 1125 365 C 1122 360 1123 357 1122 352 C 1121 347 1121 339 1122 334 C 1122 329 1126 327 1127 323 C 1129 318 1128 309 1129 306 C 1130 303 1132 306 1133 306 C 1134 305 1134 306 1136 303 C 1137 300 1142 290 1144 285 C 1145 280 1146 277 1146 274 C 1146 271 1147 269 1144 268 C 1141 267 1140 266 1128 265 C 1116 265 1089 264 1073 265 Z',\n};\n","/* ------------------------------------------------------------------ */\n/* MuscleScheme — data model + muscle figure datasets. */\n/* */\n/* The kit's body chart. A \"view\" is a labelled SVG: a muscle figure */\n/* (front / back · adult-male / adult-female / child) or an adult */\n/* pelvic organ diagram, carrying clickable REGIONS. Findings are */\n/* recorded against a region id and surfaced with the shared */\n/* AnnotationMarker glyph (shape-not-colour, WCAG 1.4.1). */\n/* */\n/* Muscle art comes from react-native-body-highlighter (MIT) via */\n/* `muscle-paths.ts`; the data module is the swap seam — a realistic */\n/* illustration drops in via `illustrationBaseUrl` without touching */\n/* the component. Region *ids and labels* are the stable contract. */\n/* ------------------------------------------------------------------ */\n\nimport type { MarkerShape, MarkerTone } from '../annotation-marker';\nimport { FEMALE_PELVIS } from './reproductive-female';\nimport { MALE_PELVIS } from './reproductive-male';\nimport {\n MUSCLE_MALE_FRONT,\n MUSCLE_MALE_BACK,\n MUSCLE_FEMALE_FRONT,\n MUSCLE_FEMALE_BACK,\n type MuscleFigureArt,\n} from './muscle-paths';\nimport { MUSCLE_FIBRES, type MuscleFibreSet } from './muscle-fibres';\nimport { MUSCLE_OUTLINES, CHILD_PROPORTIONS } from './muscle-outlines';\n\n/* ------------------------------------------------------------------ */\n/* Core vocabulary */\n/* ------------------------------------------------------------------ */\n\n/** Muscle figure variant. `child` is the adult-male map scaled down. */\nexport type FigureVariant = 'adult-male' | 'adult-female' | 'child';\n\nexport type MuscleViewId = string;\n/** What a view depicts. */\nexport type MuscleViewKind = 'front' | 'back' | 'pelvis';\nexport type MuscleSchemeMode = 'interactive' | 'display';\nexport type RegionSide = 'left' | 'right' | 'midline';\n\n/**\n * Generic, specialty-agnostic finding type. Each maps to a distinct\n * AnnotationMarker SHAPE so the chart never relies on colour alone; the tone is\n * decorative reinforcement. Consumers label these per specialty (a \"lesion\" is\n * a derm lesion, an ortho strain, a trigger point, …).\n */\nexport type FindingType =\n | 'observation'\n | 'lesion'\n | 'pain'\n | 'treatment'\n | 'note';\n\nexport const FINDING_TYPES: FindingType[] = [\n 'observation',\n 'lesion',\n 'pain',\n 'treatment',\n 'note',\n];\n\nexport const FINDING_MARKER: Record<\n FindingType,\n { shape: MarkerShape; tone: MarkerTone }\n> = {\n observation: { shape: 'circle', tone: 'info' },\n lesion: { shape: 'triangle', tone: 'warning' },\n pain: { shape: 'cross', tone: 'error' },\n treatment: { shape: 'square', tone: 'success' },\n note: { shape: 'diamond', tone: 'neutral' },\n};\n\nexport interface MuscleFinding {\n type: FindingType;\n /** Optional free-text clinical note. PHI — never bundle real notes in stories. */\n note?: string;\n /**\n * Host presentation overrides, for a practice-configured finding such as a\n * platform diagnosis type. `shape` replaces the type's marker shape (the\n * platform's circle / square / triangle symbol), `color` its tone (a CSS\n * colour or `var(--token)`; the practice's configured colour) and `label`\n * its translated name in the region's accessible name and tooltip (the\n * diagnosis name). A practice has only three symbols, so two of its\n * diagnoses can share a shape; the `label` in the region's accessible name\n * and tooltip is what always tells them apart.\n */\n shape?: MarkerShape;\n color?: string;\n label?: string;\n}\n\n/** Findings keyed by region id. */\nexport type MuscleChart = Record<string, MuscleFinding[]>;\n\n/* ------------------------------------------------------------------ */\n/* Geometry primitives */\n/* ------------------------------------------------------------------ */\n\nexport type RegionShape =\n | { kind: 'ellipse'; cx: number; cy: number; rx: number; ry: number }\n | { kind: 'rect'; x: number; y: number; w: number; h: number; r?: number }\n | { kind: 'polygon'; points: Array<[number, number]> }\n | { kind: 'path'; d: string; fillRule?: 'evenodd'; transform?: string };\n\n/**\n * What a region is made of. Picks its illustration paint from the\n * `--anatomy-*` tokens: red skeletal muscle and ivory tendon for the muscle\n * figures; rose smooth muscle, pink mucosa, peach gland, cream gonad and\n * duct, amber urinary tract, red erectile tissue and the one neutral skin\n * tone for the organs.\n */\nexport type AnatomyTissue =\n | 'skeletal'\n | 'tendon'\n | 'muscle'\n | 'mucosa'\n | 'gland'\n | 'gonad'\n | 'duct'\n | 'urinary'\n | 'erectile'\n | 'skin';\n\n/**\n * Paint for a decorative layer of the art. A tissue fills like an organ;\n * `cavity` / `opening` are lumens, `membrane` / `fascia` / `ligament` thin\n * connective layers, `follicle` / `trigone` small landmarks. The line paints\n * stroke only: `fibre` a muscle's striations, `ink` an anatomical contour,\n * `fine` texture (folds, rugae), `crease` a skin fold, `lumen` a canal, `hidden` a structure behind\n * another (dashed, the illustrators' convention), `context` a body outline,\n * `line` the muscle figure's own stroke (the default).\n */\nexport type AnatomyPaint =\n | AnatomyTissue\n | 'fibre'\n | 'cavity'\n | 'opening'\n | 'membrane'\n | 'fascia'\n | 'ligament'\n | 'follicle'\n | 'trigone'\n | 'line'\n | 'ink'\n | 'fine'\n | 'crease'\n | 'lumen'\n | 'hidden'\n | 'context';\n\n/** A decorative, non-interactive layer of a region or view. */\nexport type AnatomyDetail = RegionShape & { paint?: AnatomyPaint };\n\nexport interface MuscleRegion {\n /** Stable id, unique within a view — the finding key + `data-region`. */\n id: string;\n /** i18n key suffix under `muscleScheme.region.*`. */\n labelKey: string;\n shape: RegionShape;\n /**\n * The tissue the region is drawn in: every built-in muscle, joint, breast\n * and pelvic organ has one, and renders as shaded anatomical illustration.\n * A region without one draws as neutral line art.\n */\n tissue?: AnatomyTissue;\n /** Non-interactive anatomical detail (cavities, linings, folds), drawn inside the region. */\n details?: AnatomyDetail[];\n /** Wider transparent pointer target for a thin structure (a duct, the urethra), in the same coordinates. */\n hitShape?: RegionShape;\n /** Bilateral side, where meaningful (drives \"left/right\" in the label). */\n side?: RegionSide;\n /** Optional grouping (e.g. 'upper-limb'). */\n group?: string;\n /** Marker anchor; defaults to the shape centroid. */\n marker?: { x: number; y: number };\n}\n\nexport interface MuscleView {\n id: MuscleViewId;\n /** i18n key suffix under `muscleScheme.view.*`. */\n labelKey: string;\n /** Which muscle figure this view is drawn on. */\n figure: FigureVariant;\n /**\n * What the view depicts: the body from the front or the back, or the\n * pelvic organs. Map it to the host's own sub-area (the platform's\n * `body_front` / `body_back`), never parse the view id.\n */\n kind: MuscleViewKind;\n viewBox: string;\n /** Pelvic diagrams use a wider canvas than full-body figures. */\n presentation?: 'organs';\n /** Non-interactive context drawn BENEATH the regions (ureters, ligaments, landmarks). */\n backdrop?: AnatomyDetail[];\n /** Non-interactive detail drawn ABOVE the regions, e.g. a hidden duct's dashed course. */\n details?: AnatomyDetail[];\n /** Panels behind separate diagrams of one view, in view coordinates. */\n plates?: Array<{ x: number; y: number; w: number; h: number }>;\n /** Labels for separate diagrams; suffixes under muscleScheme.section.*. */\n sections?: Array<{ labelKey: string; x: number; y: number }>;\n /** Decorative head silhouette drawn behind the regions (`aria-hidden`). */\n silhouette?: string;\n /**\n * The head as separately painted pieces (face and ears, hair, a hair tie),\n * drawn in order over the body and under the regions. Replaces the\n * one-colour `silhouette` when set.\n */\n head?: HeadPiece[];\n /** Optional SVG transform applied to the regions group (and the silhouette,\n * unless `silhouetteTransform` overrides it). */\n transform?: string;\n /** Optional separate transform for the silhouette (head) group — lets the\n * child figure carry a proportionally larger head than its scaled-down body. */\n silhouetteTransform?: string;\n /** Stroke-only body contour drawn in the regions (body) group so it scales\n * with the body `transform`, not the `silhouetteTransform` — this is what lets\n * the child carry an enlarged head while its body stays scaled down. */\n bodyDetail?: string;\n /** When true, the view's muscle regions render as transparent click hotspots (tinting\n * only on hover / focus / finding) rather than filled shapes — implied when a\n * realistic illustration is loaded over the figure. */\n hotspotZones?: boolean;\n regions: MuscleRegion[];\n}\n\n/** One painted piece of a figure's head. */\nexport interface HeadPiece {\n part: 'face' | 'hair' | 'tie';\n d: string;\n}\n\n/** The art of an organ-only view, as the reproductive-* modules export it. */\nexport type OrganArt = Pick<\n MuscleView,\n 'viewBox' | 'regions' | 'backdrop' | 'details' | 'plates' | 'sections'\n>;\n\n/* ------------------------------------------------------------------ */\n/* Centroid helper (marker anchor fallback) */\n/* ------------------------------------------------------------------ */\n\nexport function regionCentroid(region: MuscleRegion): {\n x: number;\n y: number;\n} {\n if (region.marker) return region.marker;\n const s = region.shape;\n if (s.kind === 'ellipse') return { x: s.cx, y: s.cy };\n if (s.kind === 'rect') return { x: s.x + s.w / 2, y: s.y + s.h / 2 };\n // A path has no cheap centroid: every path region sets its marker anchor.\n if (s.kind === 'path') return { x: 0, y: 0 };\n const n = s.points.length;\n const sum = s.points.reduce(\n (acc, [x, y]) => ({ x: acc.x + x, y: acc.y + y }),\n { x: 0, y: 0 },\n );\n return { x: sum.x / n, y: sum.y / n };\n}\n\n/* ------------------------------------------------------------------ */\n/* Muscular — real per-muscle art (body-highlighter, MIT) */\n/* ------------------------------------------------------------------ */\n\n// The library draws each head as separate sub-paths, in this order. Paint\n// each as what it is, so the hairline is the library's own, not a flat cut.\nconst HEAD_PARTS: Record<MuscleFibreSet, HeadPiece['part'][]> = {\n 'male-front': ['face', 'hair'],\n 'male-back': ['face', 'hair'],\n 'female-front': ['hair', 'tie', 'face'],\n 'female-back': ['hair', 'tie'],\n};\n\nfunction headPieces(art: MuscleFigureArt, set: MuscleFibreSet): HeadPiece[] {\n return art.silhouette\n .split(/(?=M)/)\n .filter((d) => d.trim().length > 0)\n .map((d, index) => ({ part: HEAD_PARTS[set][index] ?? 'hair', d }));\n}\n\n// Joints, hands and feet read as tendon and retinaculum, not muscle belly.\nconst TENDON_SLUGS = new Set(['knees', 'ankles', 'hands', 'feet']);\n\nfunction oppositeSide(side: RegionSide): RegionSide {\n if (side === 'midline') return side;\n return side === 'left' ? 'right' : 'left';\n}\n\n/**\n * Build clickable per-muscle regions from a generated muscle figure. Every\n * bilateral muscle is two regions (`<slug>-l` / `<slug>-r`) so left and right\n * are independently selectable — matching the platform body map, where each\n * side is always its own target.\n *\n * Sides are the patient's. The generated art turns the library's viewer sides\n * into patient sides by swapping them, which is right for a front view only:\n * seen from behind, the viewer's left is the patient's left. So a back view\n * swaps them back, and `deltoids-r` is the right shoulder in both views.\n */\nfunction muscleRegions(\n art: MuscleFigureArt,\n fibreSet: MuscleFibreSet,\n): MuscleRegion[] {\n const back = fibreSet.endsWith('-back');\n const sided = (id: string, side: RegionSide) =>\n back ? id.replace(/-[lr]$/, side === 'left' ? '-l' : '-r') : id;\n const carved: MuscleRegion[] = [];\n const muscles = art.muscles.map((m): MuscleRegion => {\n // fibres are keyed by the generated id\n const fibres = MUSCLE_FIBRES[fibreSet][m.id];\n const side = back ? oppositeSide(m.side) : m.side;\n const carve = CARVE[fibreSet][m.id];\n const pieces = m.d.split(/(?=M)/).filter((piece) => piece.trim());\n const kept = carve\n ? pieces.filter((_, index) => !carve.pieces.includes(index)).join('')\n : m.d;\n if (carve) {\n const slug = m.id.replace(/-[lr]$/, '');\n carved.push({\n id: sided(m.id.replace(slug, carve.slug), side),\n labelKey: carve.labelKey,\n side,\n tissue: 'skeletal',\n shape: {\n kind: 'path',\n d: pieces.filter((_, i) => carve.pieces.includes(i)).join(''),\n },\n marker: carve.marker,\n });\n }\n return {\n id: sided(m.id, side),\n labelKey: m.labelKey,\n side,\n tissue: TENDON_SLUGS.has(m.id.replace(/-[lr]$/, ''))\n ? 'tendon'\n : 'skeletal',\n shape: {\n kind: 'path',\n d: kept,\n ...(m.fillRule ? { fillRule: m.fillRule } : {}),\n } as const,\n ...(fibres\n ? { details: [{ kind: 'path', d: fibres, paint: 'fibre' } as const] }\n : {}),\n marker: carve ? carve.keep : { x: m.cx, y: m.cy },\n };\n });\n // Zones are drawn after the muscles, so a zone over a muscle's edge takes\n // the click; the head goes first, so the neck stays on top of the jaw.\n const [head, ...zones] = extraZones(art, fibreSet);\n return [head, ...muscles, ...carved, ...zones];\n}\n\n/* ------------------------------------------------------------------ */\n/* Zones the muscle library does not draw */\n/* ------------------------------------------------------------------ */\n\n// The platform's body map has zones a muscle map lacks: head, spine, ribs,\n// hip, elbow, wrist, scapula and the back of the knee. A body chart that\n// replaces it must keep every one of them, so the kit adds them here.\n//\n// Ribs and scapula are carved out of the muscles drawn over them: the upper\n// slats of the external oblique (the serratus over the ribs) and the small\n// pieces of the upper back over the shoulder blade. Piece indices count the\n// library path's sub-paths; markers are in the figure's own coordinates and\n// move the muscle's marker onto the part it keeps.\ninterface Carve {\n pieces: number[];\n slug: string;\n labelKey: string;\n marker: { x: number; y: number };\n keep: { x: number; y: number };\n}\n\nconst ribs = (pieces: number[], x: number, keepX: number, keepY: number) => ({\n pieces,\n slug: 'ribs',\n labelKey: 'ribs',\n marker: { x, y: 455 },\n keep: { x: keepX, y: keepY },\n});\n\nconst scapula = (\n pieces: number[],\n x: number,\n y: number,\n keep: { x: number; y: number },\n) => ({ pieces, slug: 'scapula', labelKey: 'scapula', marker: { x, y }, keep });\n\nconst CARVE: Record<MuscleFibreSet, Record<string, Carve>> = {\n 'male-front': {\n 'obliques-r': ribs([0, 1, 2, 3], 278, 288, 560),\n 'obliques-l': ribs([0, 1, 2, 3], 450, 440, 560),\n },\n 'male-back': {\n 'upper-back-r': scapula([0, 2], 992, 368, { x: 1015, y: 493 }),\n 'upper-back-l': scapula([0, 1], 1175, 368, { x: 1152, y: 493 }),\n },\n 'female-front': {\n 'obliques-r': ribs([0, 1, 2, 3, 5], 249, 250, 556),\n 'obliques-l': ribs([0, 1, 3, 4, 5], 391, 390, 557),\n },\n 'female-back': {\n 'upper-back-r': scapula([0], 1056, 342, { x: 1093, y: 460 }),\n 'upper-back-l': scapula([0], 1229, 342, { x: 1192, y: 460 }),\n },\n};\n\n// Joints, in VIEW coordinates (the 724 × 1448 chart) for the joint on the\n// viewer's left: the patient's right from the front, left from behind. The\n// other side mirrors about the midline, x = 362.\ninterface Joint {\n slug: string;\n labelKey: string;\n x: number;\n y: number;\n rx: number;\n ry: number;\n}\n\nconst joint = (\n slug: string,\n x: number,\n y: number,\n rx: number,\n ry: number,\n labelKey = slug,\n): Joint => ({ slug, labelKey, x, y, rx, ry });\n\nconst JOINTS: Record<MuscleFibreSet, Joint[]> = {\n 'male-front': [\n joint('elbow', 178, 485, 13, 10),\n joint('wrist', 118, 686, 18, 7),\n joint('hip', 245, 655, 13, 11),\n ],\n 'male-back': [\n joint('elbow', 172, 513, 12, 9),\n joint('wrist', 114, 687, 18, 7),\n joint('knee-back', 280, 1000, 11, 12, 'kneeBack'),\n ],\n 'female-front': [\n joint('elbow', 210, 514, 10, 8),\n joint('wrist', 140, 664, 14, 7),\n joint('hip', 262, 614, 10, 10),\n ],\n 'female-back': [\n joint('elbow', 222, 510, 11, 9),\n joint('wrist', 138, 659, 13, 7),\n joint('knee-back', 309, 988, 10, 11, 'kneeBack'),\n ],\n};\n\n// The spine runs down the gap between the paired back muscles; the head zone\n// is the head the library draws, with its marker on the face or the crown.\nconst SPINE_TOP: Record<MuscleFibreSet, number> = {\n 'male-front': 0,\n 'male-back': 210,\n 'female-front': 0,\n 'female-back': 262,\n};\n\nconst HEAD_MARKER: Record<MuscleFibreSet, { x: number; y: number }> = {\n 'male-front': { x: 362, y: 130 },\n 'male-back': { x: 362, y: 125 },\n 'female-front': { x: 362, y: 180 },\n 'female-back': { x: 350, y: 165 },\n};\n\nconst round = (n: number) => Math.round(n * 100) / 100;\n\n/** A view-coordinate measure in the figure's own coordinates. */\nfunction toArt(set: MuscleFibreSet) {\n const [tx, ty, s] = (MUSCLE_NORMALISE[set].match(/-?\\d+(\\.\\d+)?/g) ?? []).map(\n Number,\n );\n return {\n x: (x: number) => round((x - tx) / s),\n y: (y: number) => round((y - ty) / s),\n len: (l: number) => round(l / s),\n };\n}\n\nconst ellipsePath = (cx: number, cy: number, rx: number, ry: number) =>\n `M${round(cx - rx)} ${cy}a${rx} ${ry} 0 1 0 ${round(2 * rx)} 0a${rx} ${ry} 0 1 0 ${round(-2 * rx)} 0Z`;\n\nfunction extraZones(art: MuscleFigureArt, set: MuscleFibreSet): MuscleRegion[] {\n const back = set.endsWith('-back');\n const at = toArt(set);\n const joints = JOINTS[set].flatMap((j) =>\n (['left', 'right'] as const).map((side): MuscleRegion => {\n const viewerLeft = back ? side === 'left' : side === 'right';\n const x = at.x(viewerLeft ? j.x : 724 - j.x);\n const y = at.y(j.y);\n return {\n id: `${j.slug}-${side === 'left' ? 'l' : 'r'}`,\n labelKey: j.labelKey,\n side,\n tissue: 'tendon',\n shape: {\n kind: 'path',\n d: ellipsePath(x, y, at.len(j.rx), at.len(j.ry)),\n },\n marker: { x, y },\n };\n }),\n );\n const head: MuscleRegion = {\n id: 'head',\n labelKey: 'head',\n side: 'midline',\n shape: { kind: 'path', d: art.silhouette },\n marker: { x: at.x(HEAD_MARKER[set].x), y: at.y(HEAD_MARKER[set].y) },\n };\n if (!back) return [head, ...joints];\n const [x0, x1, y0, y1] = [\n at.x(357),\n at.x(367),\n at.y(SPINE_TOP[set]),\n at.y(630),\n ];\n const r = round((x1 - x0) / 2);\n const spine: MuscleRegion = {\n id: 'spine',\n labelKey: 'spine',\n side: 'midline',\n tissue: 'tendon',\n shape: {\n kind: 'path',\n d: `M${x0} ${round(y0 + r)}a${r} ${r} 0 0 1 ${round(2 * r)} 0V${round(y1 - r)}a${r} ${r} 0 0 1 ${round(-2 * r)} 0Z`,\n },\n marker: { x: round((x0 + x1) / 2), y: at.y(450) },\n };\n return [head, spine, ...joints];\n}\n\n/* ------------------------------------------------------------------ */\n/* Adult reproductive organs */\n/* ------------------------------------------------------------------ */\n\n// Breasts sit on the adult female body figure, in its own coordinates; the\n// pelvic organs are separate views (reproductive-*.ts), so no muscle target\n// can hide an organ. Each breast is the mammary gland drawn over the lower\n// pectoral, from the axillary tail round the inframammary fold, with areola\n// and nipple. Its upper edge stays below the pectoral's own marker anchor, so\n// a saved pectoral finding keeps its place and its target. Anatomical left is\n// viewer right; children never inherit organ regions.\nconst BREAST_R = {\n d: 'M 224 376 C 240 383.5 270 386 290 391 C 304 395 312.5 405 312.5 418.5 C 312.5 436.5 296 450.5 268.5 450.5 C 242.5 450.5 221.5 438 215.5 418.5 C 211.5 402.5 213.5 386.5 224 376 Z',\n areola: { cx: 262, cy: 419 },\n};\nconst FIGURE_MIDLINE = 320.5;\nconst mirrorX = (x: number): number => 2 * FIGURE_MIDLINE - x;\n\nfunction mirrorPath(d: string): string {\n // The breast path uses absolute M / C / Z commands only.\n let index = 0;\n return d.replace(/-?\\d+(?:\\.\\d+)?/g, (value) =>\n String(\n index++ % 2 === 0 ? Math.round(mirrorX(Number(value)) * 10) / 10 : value,\n ),\n );\n}\n\nfunction breastRegion(side: 'left' | 'right'): MuscleRegion {\n const left = side === 'left';\n const cx = left ? mirrorX(BREAST_R.areola.cx) : BREAST_R.areola.cx;\n const cy = BREAST_R.areola.cy;\n return {\n id: `breast-${left ? 'l' : 'r'}`,\n labelKey: 'breast',\n side,\n group: 'reproductive',\n tissue: 'gland',\n shape: { kind: 'path', d: left ? mirrorPath(BREAST_R.d) : BREAST_R.d },\n details: [\n { kind: 'ellipse', cx, cy, rx: 9.5, ry: 9, paint: 'mucosa' },\n { kind: 'ellipse', cx, cy, rx: 3.2, ry: 3.2, paint: 'erectile' },\n ],\n marker: { x: cx, y: cy },\n };\n}\n\nconst FEMALE_BREASTS = [breastRegion('right'), breastRegion('left')];\n\n/* ------------------------------------------------------------------ */\n/* View registry */\n/* ------------------------------------------------------------------ */\n\n// The four pristine muscle figures ship at different native sizes + viewBoxes\n// (the library draws its female front/back larger and at a different aspect than\n// the male). Rendered each at `w-full h-auto` that makes front read taller than\n// back side-by-side. We normalise every figure into ONE common viewBox at a\n// uniform body height (adults centred, child feet-aligned and scaled down) via a\n// per-figure `view.transform` — presentation only (scale + translate, applied to\n// silhouette, body contour and regions alike). Geometry stays pristine; numbers\n// are measured from each figure's rendered bounding box (getBBox) → scale =\n// TARGET_BODY_H / bboxHeight. Re-derive if the source art ever changes.\nconst MUSCLE_VIEWBOX = '0 0 724 1448';\nconst MUSCLE_NORMALISE = {\n 'male-front': 'translate(-26.91 -49.02) scale(1.0678)',\n 'male-back': 'translate(-795.24 -49.05) scale(1.0678)',\n 'female-front': 'translate(62.31 54) scale(0.9351)',\n 'female-back': 'translate(-706.38 54) scale(0.9351)',\n // Child: the androgynous adult-MALE map, body scaled to ~0.78 of the adult body\n // height and FEET-ALIGNED to the adult baseline (so it stands on the same ground,\n // reading as shorter rather than floating). There is no openly-licensed child\n // muscle map — see MUSCLE-ASSETS.md. The body transform drives the regions +\n // body contour; the head gets a separate `…-head` transform below.\n // childRegions() then shortens the legs, so the child stands at about 0.74\n // of the adult height.\n 'child-front': 'translate(58.65 268.45) scale(0.8328)',\n 'child-back': 'translate(-540.65 268.42) scale(0.8329)',\n} as const;\n// Child head transform = body transform ∘ scaleAbout(neck, 1.18). Scaling the head\n// up about the neck pivot keeps it joined to the body while giving the child the\n// larger head of a child's proportions. Applied via `silhouetteTransform`.\n// The child's body is shorter in the leg (below), so its head moves down by\n// the same drop before it is enlarged about the neck.\n// The head's enlargement in the figure's own coordinates (after the drop).\nconst CHILD_HEAD_SCALE = {\n front: { tx: -65.54, ty: -45.66, s: 1.18 },\n back: { tx: -195.1, ty: -42.99, s: 1.18 },\n} as const;\nconst childHead = (side: keyof typeof CHILD_HEAD_SCALE) => {\n const { tx, ty, s } = CHILD_HEAD_SCALE[side];\n return `translate(0 ${CHILD_PROPORTIONS.drop}) translate(${tx} ${ty}) scale(${s})`;\n};\nconst MUSCLE_CHILD_HEAD = {\n front: `translate(58.65 268.45) scale(0.8328) ${childHead('front')}`,\n back: `translate(-540.65 268.42) scale(0.8329) ${childHead('back')}`,\n} as const;\n\n// Child proportions on the adult-male map: the legs (and the gluteal muscles,\n// which travel with them) shorten about the soles, so the feet stay on the\n// ground line, and every other region moves down to meet them. One affine\n// transform per region keeps the library paths untouched; the outline in\n// muscle-outlines.ts is warped the same way.\nconst CHILD_LEG_SLUGS = new Set([\n 'adductors',\n 'quadriceps',\n 'hamstring',\n 'knees',\n 'tibialis',\n 'calves',\n 'ankles',\n 'feet',\n 'gluteal',\n 'knee-back',\n]);\n\nfunction childRegions(\n regions: MuscleRegion[],\n side: keyof typeof CHILD_HEAD_SCALE,\n): MuscleRegion[] {\n const { legScale, sole, drop } = CHILD_PROPORTIONS;\n const head = CHILD_HEAD_SCALE[side];\n return regions.map((region) => {\n const leg = CHILD_LEG_SLUGS.has(region.id.replace(/-[lr]$/, ''));\n // The head zone grows with the child's enlarged head.\n const isHead = region.id === 'head';\n const transform = isHead\n ? childHead(side)\n : leg\n ? `matrix(1 0 0 ${legScale} 0 ${Math.round(sole * (1 - legScale) * 100) / 100})`\n : `translate(0 ${drop})`;\n const move = (point: { x: number; y: number }) =>\n isHead\n ? {\n x: point.x * head.s + head.tx,\n y: point.y * head.s + head.ty + drop,\n }\n : {\n x: point.x,\n y: leg ? sole - (sole - point.y) * legScale : point.y + drop,\n };\n const withTransform = <T extends RegionShape>(shape: T): T =>\n shape.kind === 'path' ? { ...shape, transform } : shape;\n return {\n ...region,\n shape: withTransform(region.shape),\n details: region.details?.map(withTransform),\n marker: region.marker && move(region.marker),\n };\n });\n}\n\nexport const MUSCLE_VIEWS: Record<MuscleViewId, MuscleView> = {\n // --- Adult male (the reference figure) ---\n 'muscular-front': {\n id: 'muscular-front',\n labelKey: 'muscularFront',\n figure: 'adult-male',\n kind: 'front',\n viewBox: MUSCLE_VIEWBOX,\n transform: MUSCLE_NORMALISE['male-front'],\n silhouette: MUSCLE_MALE_FRONT.silhouette,\n head: headPieces(MUSCLE_MALE_FRONT, 'male-front'),\n bodyDetail: MUSCLE_OUTLINES['male-front'],\n regions: muscleRegions(MUSCLE_MALE_FRONT, 'male-front'),\n },\n 'muscular-back': {\n id: 'muscular-back',\n labelKey: 'muscularBack',\n figure: 'adult-male',\n kind: 'back',\n viewBox: MUSCLE_VIEWBOX,\n transform: MUSCLE_NORMALISE['male-back'],\n silhouette: MUSCLE_MALE_BACK.silhouette,\n head: headPieces(MUSCLE_MALE_BACK, 'male-back'),\n bodyDetail: MUSCLE_OUTLINES['male-back'],\n regions: muscleRegions(MUSCLE_MALE_BACK, 'male-back'),\n },\n // Organ-only anatomy: a frontal cutaway with no muscle geometry, silhouette\n // or body outline (reproductive-male.ts).\n 'reproductive-male': {\n id: 'reproductive-male',\n labelKey: 'reproductiveMale',\n figure: 'adult-male',\n kind: 'pelvis',\n presentation: 'organs',\n ...MALE_PELVIS,\n },\n // --- Adult female (the library's genuine female map) ---\n // Normalised into the same common viewBox + uniform body height as the man\n // (see MUSCLE_NORMALISE) so front/back and male/female align head-to-feet.\n 'muscular-front-female': {\n id: 'muscular-front-female',\n labelKey: 'muscularFront',\n figure: 'adult-female',\n kind: 'front',\n viewBox: MUSCLE_VIEWBOX,\n transform: MUSCLE_NORMALISE['female-front'],\n silhouette: MUSCLE_FEMALE_FRONT.silhouette,\n head: headPieces(MUSCLE_FEMALE_FRONT, 'female-front'),\n bodyDetail: MUSCLE_OUTLINES['female-front'],\n regions: [\n ...muscleRegions(MUSCLE_FEMALE_FRONT, 'female-front'),\n ...FEMALE_BREASTS,\n ],\n },\n 'muscular-back-female': {\n id: 'muscular-back-female',\n labelKey: 'muscularBack',\n figure: 'adult-female',\n kind: 'back',\n viewBox: MUSCLE_VIEWBOX,\n transform: MUSCLE_NORMALISE['female-back'],\n silhouette: MUSCLE_FEMALE_BACK.silhouette,\n head: headPieces(MUSCLE_FEMALE_BACK, 'female-back'),\n bodyDetail: MUSCLE_OUTLINES['female-back'],\n regions: muscleRegions(MUSCLE_FEMALE_BACK, 'female-back'),\n },\n // Coronal internal organs, the vulva and the bladder in three labelled\n // panels (reproductive-female.ts).\n 'reproductive-female': {\n id: 'reproductive-female',\n labelKey: 'reproductiveFemale',\n figure: 'adult-female',\n kind: 'pelvis',\n presentation: 'organs',\n ...FEMALE_PELVIS,\n },\n // --- Child (the adult-MALE map, body scaled down + feet-aligned, with a\n // proportionally larger head via silhouetteTransform). Interim: no\n // openly-licensed child muscle map exists — see MUSCLE-ASSETS.md.\n 'muscular-front-child': {\n id: 'muscular-front-child',\n labelKey: 'muscularFront',\n figure: 'child',\n kind: 'front',\n viewBox: MUSCLE_VIEWBOX,\n transform: MUSCLE_NORMALISE['child-front'],\n silhouetteTransform: MUSCLE_CHILD_HEAD.front,\n silhouette: MUSCLE_MALE_FRONT.silhouette,\n head: headPieces(MUSCLE_MALE_FRONT, 'male-front'),\n bodyDetail: MUSCLE_OUTLINES['child-front'],\n regions: childRegions(\n muscleRegions(MUSCLE_MALE_FRONT, 'male-front'),\n 'front',\n ),\n },\n 'muscular-back-child': {\n id: 'muscular-back-child',\n labelKey: 'muscularBack',\n figure: 'child',\n kind: 'back',\n viewBox: MUSCLE_VIEWBOX,\n transform: MUSCLE_NORMALISE['child-back'],\n silhouetteTransform: MUSCLE_CHILD_HEAD.back,\n silhouette: MUSCLE_MALE_BACK.silhouette,\n head: headPieces(MUSCLE_MALE_BACK, 'male-back'),\n bodyDetail: MUSCLE_OUTLINES['child-back'],\n regions: childRegions(muscleRegions(MUSCLE_MALE_BACK, 'male-back'), 'back'),\n },\n};\n\n/* ------------------------------------------------------------------ */\n/* Lookups + figure mapping */\n/* ------------------------------------------------------------------ */\n\nexport function getView(id: MuscleViewId): MuscleView | undefined {\n return MUSCLE_VIEWS[id];\n}\n\n/** Muscle front/back, followed by the organ-only view for adults. */\nexport function viewsForFigure(figure: FigureVariant): MuscleView[] {\n return Object.values(MUSCLE_VIEWS).filter((v) => v.figure === figure);\n}\n\nexport function getRegion(\n viewId: MuscleViewId,\n regionId: string,\n): MuscleRegion | undefined {\n return MUSCLE_VIEWS[viewId]?.regions.find((r) => r.id === regionId);\n}\n\n/**\n * The view that carries a region for a figure: where a host sends the chart\n * when the clinician opens a saved finding from a list. Falls back to any view\n * when the figure has none (a male region on a female patient's record).\n * A region drawn on both the front and back views (each figure shares 25 ids\n * between them, the head and the elbows and wrists among them) resolves to the\n * front view.\n */\nexport function findRegionView(\n regionId: string,\n figure?: FigureVariant,\n): MuscleView | undefined {\n const views = Object.values(MUSCLE_VIEWS);\n const has = (view: MuscleView) =>\n view.regions.some((region) => region.id === regionId);\n return (\n views.find(\n (view) => view.figure === (figure ?? 'adult-male') && has(view),\n ) ?? views.find(has)\n );\n}\n\n/** Default view shown when no explicit `views` are given. */\nexport const DEFAULT_MUSCLE_VIEW: MuscleViewId = 'muscular-front';\n\n/**\n * Pick a muscle figure from patient demographics — mirrors the platform's\n * `getDefaultFigureVariant(gender, age)`. Pure heuristic; the host can override\n * with the explicit `figure` prop. Patients under 12 resolve to the (scaled-down)\n * `child` figure regardless of sex; otherwise the figure follows sex.\n */\nexport function figureFromPatient(\n sex: 'm' | 'f' | 'x' | undefined,\n ageYears: number | undefined,\n): FigureVariant {\n if (ageYears != null && ageYears < 12) return 'child';\n return sex === 'f' ? 'adult-female' : 'adult-male';\n}\n\nexport function emptyChart(): MuscleChart {\n return {};\n}\n","/* ------------------------------------------------------------------ */\n/* MuscleScheme — the kit's body chart. */\n/* */\n/* A figure resolves to muscle front/back views and, for adults, an */\n/* organ-only pelvic view. Each view carries selectable regions. */\n/* Findings use stable region ids and are surfaced with the shared */\n/* AnnotationMarker glyph — the SHAPE carries the finding type, never */\n/* colour alone. */\n/* */\n/* The muscle art is real per-muscle paths (react-native-body- */\n/* highlighter, MIT), drawn as neutral line art. The pelvic organs are */\n/* original kit illustrations in tissue paints (`--anatomy-*`). The */\n/* data module is the swap seam (hosted art drops in via */\n/* `illustrationBaseUrl`); region ids and labels are the contract. */\n/* ------------------------------------------------------------------ */\n\nimport {\n forwardRef,\n useCallback,\n useEffect,\n useId,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n type CSSProperties,\n type KeyboardEvent,\n type ReactElement,\n} from 'react';\nimport * as RadixTooltip from '@radix-ui/react-tooltip';\nimport { Check } from 'lucide-react';\nimport { cva } from 'class-variance-authority';\nimport { useTranslation } from 'react-i18next';\nimport { useAgentRegistration } from '../../agent/registry';\nimport {\n AnnotationMarker,\n markerPath,\n type MarkerShape,\n type MarkerTone,\n} from '../annotation-marker';\nimport { Tabs } from '../tabs';\nimport { Button } from '../button';\nimport { muscleSchemeAgent } from './muscle-scheme.agent';\nimport {\n MUSCLE_VIEWS,\n DEFAULT_MUSCLE_VIEW,\n FINDING_MARKER,\n FINDING_TYPES,\n findRegionView,\n regionCentroid,\n viewsForFigure,\n type AnatomyPaint,\n type AnatomyTissue,\n type MuscleChart,\n type MuscleFinding,\n type MuscleSchemeMode,\n type MuscleRegion,\n type MuscleView,\n type MuscleViewId,\n type FigureVariant,\n type FindingType,\n type RegionShape,\n} from './muscle-scheme-data';\n\n/* ------------------------------------------------------------------ */\n/* Public types */\n/* ------------------------------------------------------------------ */\n\nexport interface MuscleSchemeProps {\n /** Opaque instance id — emitted as `data-component-id` for the agent registry. */\n id?: string;\n /** Muscle figure variant. Default `'adult-male'`. */\n figure?: FigureVariant;\n /**\n * Explicit view ids to expose. When more than one, they render as tabs.\n * Defaults to muscle front/back and the organ-only view for adults.\n * Children expose only muscle front/back.\n */\n views?: MuscleViewId[];\n /**\n * Controlled active view. Pair with `onViewChange`; the host keeps its own\n * sub-area (the platform's `body_front` / `body_back`) in step through\n * each view's `kind`.\n */\n view?: MuscleViewId;\n /** Uncontrolled initial view. Defaults to the first resolved view. */\n defaultView?: MuscleViewId;\n /** Fired when the clinician (or an agent) switches view. */\n onViewChange?: (viewId: MuscleViewId) => void;\n /** `'interactive'` enables region selection + finding edits; `'display'` is read-only. */\n mode?: MuscleSchemeMode;\n /** Controlled findings — `Record<regionId, MuscleFinding[]>`. */\n value?: MuscleChart;\n /** Uncontrolled initial findings. */\n defaultValue?: MuscleChart;\n /** Fired whenever the chart changes. */\n onChange?: (next: MuscleChart) => void;\n /** Fired when a region is activated (click / Enter / Space / focus-select). */\n onSelectRegion?: (regionId: string, viewId: MuscleViewId) => void;\n /**\n * Host-owned selection: the region ids to show as selected. Passing it puts\n * the chart in selection mode — each region reports `aria-pressed` for its\n * selection, not its findings. One id for a \"pick a region, then add a\n * finding\" flow (the platform's diagnosis tab); several for a multi-select\n * (the diagnosis configuration's element picker). The host updates it from\n * `onSelectRegion`.\n */\n selectedRegions?: string[];\n /**\n * The finding type a region-click applies in interactive mode (the selected\n * tool in a finding picker). Clicking a region toggles this finding.\n */\n activeFinding?: FindingType;\n /** Show the finding-type legend below the figure. Default `false`. */\n legend?: boolean;\n /**\n * Show the labelled organ targets below an organ view (`--min-target-size`\n * controls naming every organ). Default `true` whenever regions are\n * selectable. Turn it off only when the host already lists the regions with\n * targets of at least `--min-target-size`: a narrow organ (the urethra, a\n * vas deferens) is no larger target on the figure itself.\n */\n regionList?: boolean;\n /**\n * Base URL for realistic muscle illustrations, served per-view as\n * `${illustrationBaseUrl}/${viewId}.svg` (e.g. `…/muscular-front.svg`).\n * When set, each view renders that illustration as the figure and its muscle\n * regions become transparent CLICK HOTSPOTS. Organ art stays visible.\n * When unset, the kit's\n * built-in muscle art is the fallback. The art is NOT bundled in the kit — host\n * it (CDN) and pass the base here, mirroring `ToothScheme`'s `assetBaseUrl`.\n * Trusted developer-controlled value, interpolated into an SVG `<image href>`\n * (which cannot execute scripts). Sourcing + licensing live in `MUSCLE-ASSETS.md`.\n */\n illustrationBaseUrl?: string;\n /** Accessible label override for the chart region. */\n ariaLabel?: string;\n /** Extra class names on the wrapper. */\n className?: string;\n}\n\nexport interface MuscleSchemeHandle {\n /** Programmatically focus a region by id (in the active view). */\n focusRegion: (regionId: string) => void;\n /** Read the current chart state. */\n getChart: () => MuscleChart;\n /** Read the findings recorded on one region (empty array if none). */\n getRegion: (regionId: string) => MuscleFinding[];\n /** Read the region ids carrying a given finding type. */\n regionsWith: (type: FindingType) => string[];\n /** Add a finding to a region (no-op if already present). */\n setFinding: (regionId: string, type: FindingType, note?: string) => void;\n /** Remove a finding type from a region (no-op if absent). */\n removeFinding: (regionId: string, type: FindingType) => void;\n /** Clear every finding from a region. */\n clearRegion: (regionId: string) => void;\n /** Switch the active view. */\n setView: (viewId: MuscleViewId) => void;\n /** Read the active view id. */\n getView: () => MuscleViewId;\n}\n\n/* ------------------------------------------------------------------ */\n/* Region labels — shared by the chart and by host lists */\n/* ------------------------------------------------------------------ */\n\n/**\n * A region's name, translated. A paired region has its own full name per side\n * (\"Left ovary\", \"Ovaio sinistro\", \"Linker Eierstock\"), because word order and\n * agreement differ by language; side and name are only joined as a fallback.\n */\nfunction useRegionName(): (region: MuscleRegion) => string {\n const { t } = useTranslation('ui');\n return useCallback(\n (region: MuscleRegion) => {\n const name = t(`muscleScheme.region.${region.labelKey}`);\n if (region.side !== 'left' && region.side !== 'right') return name;\n return t(`muscleScheme.sided.${region.labelKey}.${region.side}`, {\n defaultValue: `${t(`muscleScheme.side.${region.side}`)} ${name}`,\n });\n },\n [t],\n );\n}\n\n/**\n * Translated region names for host surfaces outside the chart: the selected\n * element summary, a findings list, a configuration picker. Returns\n * `(regionId, figure?) => \"Left ovary\"`, in the kit's own translations, or the\n * id itself for an unknown region (never an empty string).\n */\nexport function useMuscleRegionLabel(): (\n regionId: string,\n figure?: FigureVariant,\n) => string {\n const regionName = useRegionName();\n return useCallback(\n (regionId: string, figure?: FigureVariant) => {\n const region = findRegionView(regionId, figure)?.regions.find(\n (entry) => entry.id === regionId,\n );\n return region ? regionName(region) : regionId;\n },\n [regionName],\n );\n}\n\n/* ------------------------------------------------------------------ */\n/* Tone → fill class (no inline styles; tokens only) */\n/* ------------------------------------------------------------------ */\n\n// Every marker carries a halo in the page colour so it stays legible over\n// tissue paint, a muscle tint or hosted artwork.\nconst markerHalo =\n 'ds:[stroke:var(--background)] ds:[stroke-width:3] ds:[paint-order:stroke] ds:[stroke-linejoin:round] ds:[vector-effect:non-scaling-stroke]';\n\nconst markerToneFill: Record<MarkerTone, string> = {\n neutral: 'ds:[fill:var(--muted-foreground)]',\n info: 'ds:[fill:var(--info)]',\n success: 'ds:[fill:var(--success)]',\n warning: 'ds:[fill:var(--warning-readable)]',\n error: 'ds:[fill:var(--destructive)]',\n accent: 'ds:[fill:var(--accent)]',\n};\n\n// A host's colour for a finding (a practice's configured diagnosis colour)\n// arrives as a CSS custom property; this class consumes it.\nconst hostColourFill = 'ds:[fill:var(--muscle-finding-color)]';\n\n/**\n * The custom-property setter for a host finding colour, or nothing when the\n * finding has none or it is not a CSS colour (an invalid value would paint the\n * marker black). Inline style: permitted per 23-constraints §Runtime-computed\n * dimensions and custom properties (a custom-property setter; the fill rule\n * lives in `hostColourFill`).\n */\nfunction hostColourStyle(color: string | undefined): CSSProperties | undefined {\n if (!color) return undefined;\n if (typeof CSS !== 'undefined' && !CSS.supports('color', color))\n return undefined;\n return { '--muscle-finding-color': color } as CSSProperties;\n}\n\n/** The marker's fill: the host colour when it is valid, else the type's tone. */\nfunction markerFill(finding: MuscleFinding): {\n className: string;\n style: CSSProperties | undefined;\n} {\n const style = hostColourStyle(finding.color);\n return {\n className: style\n ? hostColourFill\n : markerToneFill[FINDING_MARKER[finding.type].tone],\n style,\n };\n}\n\n/**\n * The finding glyph in an organ target: the figure's own marker geometry\n * (`markerPath`), so a host shape or colour reads the same in both places.\n */\nfunction FindingGlyph({ finding }: { finding: MuscleFinding }): ReactElement {\n const marker = FINDING_MARKER[finding.type];\n const fill = markerFill(finding);\n return (\n <svg\n viewBox=\"0 0 24 24\"\n aria-hidden=\"true\"\n focusable=\"false\"\n data-finding={finding.type}\n className=\"ds:block ds:size-3 ds:shrink-0\"\n >\n <path\n d={markerPath(finding.shape ?? marker.shape, 12, 12, 10)}\n className={fill.className}\n // eslint-disable-next-line react/forbid-dom-props -- caller-supplied practice colour injected via a CSS variable (23-constraints §custom properties)\n style={fill.style}\n />\n </svg>\n );\n}\n\n/* ------------------------------------------------------------------ */\n/* Anatomy paints */\n/* ------------------------------------------------------------------ */\n\n// The organ palette, read once on an organ <svg> with each token's light-theme\n// value as the fallback, so an older host tokens sheet never paints organs\n// black. Everything inside reads the short `--am-*` aliases.\nconst anatomyPalette = [\n 'ds:[--am-ink:var(--anatomy-ink,color-mix(in_oklab,var(--color-red-900)_62%,var(--color-grey-900)))]',\n 'ds:[--am-skeletal:var(--anatomy-skeletal,color-mix(in_oklab,var(--color-red-400)_60%,color-mix(in_oklab,var(--color-grey-800)_70%,var(--color-red-700))))]',\n 'ds:[--am-tendon:var(--anatomy-tendon,color-mix(in_oklab,var(--color-yellow-50)_60%,var(--color-grey-600)))]',\n 'ds:[--am-muscle:var(--anatomy-muscle,color-mix(in_oklab,var(--color-red-200)_60%,var(--color-grey-600)))]',\n 'ds:[--am-mucosa:var(--anatomy-mucosa,color-mix(in_oklab,var(--color-red-300)_72%,var(--color-grey-700)))]',\n 'ds:[--am-cavity:var(--anatomy-cavity,color-mix(in_oklab,var(--color-red-700)_62%,var(--color-red-300)))]',\n 'ds:[--am-gland:var(--anatomy-gland,color-mix(in_oklab,var(--color-orange-200)_55%,color-mix(in_oklab,var(--color-red-200)_70%,var(--color-grey-700))))]',\n 'ds:[--am-gonad:var(--anatomy-gonad,color-mix(in_oklab,var(--color-orange-50)_55%,var(--color-red-100)))]',\n 'ds:[--am-duct:var(--anatomy-duct,color-mix(in_oklab,var(--color-yellow-100)_55%,var(--color-orange-100)))]',\n 'ds:[--am-urinary:var(--anatomy-urinary,color-mix(in_oklab,var(--color-yellow-200)_58%,var(--color-orange-100)))]',\n 'ds:[--am-erectile:var(--anatomy-erectile,color-mix(in_oklab,var(--color-red-400)_62%,var(--color-grey-800)))]',\n 'ds:[--am-skin:var(--anatomy-skin,color-mix(in_oklab,var(--color-orange-300)_50%,color-mix(in_oklab,var(--color-grey-800)_85%,var(--color-red-700))))]',\n 'ds:[--am-membrane:var(--anatomy-membrane,color-mix(in_oklab,var(--color-red-100)_40%,var(--color-grey-500)))]',\n 'ds:[--am-fascia:var(--anatomy-fascia,color-mix(in_oklab,var(--color-orange-100)_55%,var(--color-red-100)))]',\n 'ds:[--am-highlight:var(--anatomy-highlight,var(--color-grey-50))]',\n].join(' ');\n\n// A filled tissue: its paint, edged with the paint mixed into the ink.\nconst edge =\n 'ds:[stroke-width:1.1] ds:[stroke-linejoin:round] ds:[vector-effect:non-scaling-stroke]';\nconst paintClass: Record<AnatomyPaint, string> = {\n skeletal: `ds:[fill:var(--am-skeletal)] ds:[stroke:color-mix(in_oklab,var(--am-skeletal)_45%,var(--am-ink))] ${edge}`,\n tendon: `ds:[fill:var(--am-tendon)] ds:[stroke:color-mix(in_oklab,var(--am-tendon)_40%,var(--am-ink))] ${edge}`,\n fibre:\n 'ds:[fill:none] ds:[stroke:var(--am-ink)] ds:[stroke-opacity:0.3] ds:[stroke-width:0.75] ds:[stroke-linecap:round] ds:[stroke-linejoin:round] ds:[vector-effect:non-scaling-stroke]',\n muscle: `ds:[fill:var(--am-muscle)] ds:[stroke:color-mix(in_oklab,var(--am-muscle)_32%,var(--am-ink))] ${edge}`,\n mucosa: `ds:[fill:var(--am-mucosa)] ds:[stroke:color-mix(in_oklab,var(--am-mucosa)_32%,var(--am-ink))] ${edge}`,\n gland: `ds:[fill:var(--am-gland)] ds:[stroke:color-mix(in_oklab,var(--am-gland)_32%,var(--am-ink))] ${edge}`,\n gonad: `ds:[fill:var(--am-gonad)] ds:[stroke:color-mix(in_oklab,var(--am-gonad)_32%,var(--am-ink))] ${edge}`,\n duct: `ds:[fill:var(--am-duct)] ds:[stroke:color-mix(in_oklab,var(--am-duct)_32%,var(--am-ink))] ${edge}`,\n urinary: `ds:[fill:var(--am-urinary)] ds:[stroke:color-mix(in_oklab,var(--am-urinary)_32%,var(--am-ink))] ${edge}`,\n erectile: `ds:[fill:var(--am-erectile)] ds:[stroke:color-mix(in_oklab,var(--am-erectile)_32%,var(--am-ink))] ${edge}`,\n skin: `ds:[fill:var(--am-skin)] ds:[stroke:color-mix(in_oklab,var(--am-skin)_32%,var(--am-ink))] ${edge}`,\n cavity: `ds:[fill:var(--am-cavity)] ds:[stroke:color-mix(in_oklab,var(--am-cavity)_32%,var(--am-ink))] ${edge}`,\n opening: `ds:[fill:color-mix(in_oklab,var(--am-cavity)_72%,var(--am-mucosa))] ds:[stroke:color-mix(in_oklab,var(--am-cavity)_50%,var(--am-ink))] ${edge}`,\n fascia: `ds:[fill:var(--am-fascia)] ds:[stroke:color-mix(in_oklab,var(--am-fascia)_32%,var(--am-ink))] ${edge}`,\n membrane: `ds:[fill:var(--am-membrane)] ds:[fill-opacity:0.55] ds:[stroke:color-mix(in_oklab,var(--am-membrane)_40%,var(--am-ink))] ds:[stroke-opacity:0.45] ${edge}`,\n ligament: `ds:[fill:var(--am-membrane)] ds:[stroke:color-mix(in_oklab,var(--am-membrane)_40%,var(--am-ink))] ds:[stroke-width:0.8] ds:[vector-effect:non-scaling-stroke]`,\n follicle:\n 'ds:[fill:var(--am-highlight)] ds:[fill-opacity:0.6] ds:[stroke:color-mix(in_oklab,var(--am-gonad)_45%,var(--am-ink))] ds:[stroke-opacity:0.65] ds:[stroke-width:0.7] ds:[vector-effect:non-scaling-stroke]',\n trigone: 'ds:[fill:var(--am-muscle)] ds:[fill-opacity:0.55] ds:[stroke:none]',\n line: 'ds:[fill:none] ds:[stroke:var(--muted-foreground)] ds:[stroke-width:1] ds:[stroke-linecap:round] ds:[stroke-linejoin:round] ds:[vector-effect:non-scaling-stroke]',\n ink: 'ds:[fill:none] ds:[stroke:var(--am-ink)] ds:[stroke-opacity:0.7] ds:[stroke-width:1] ds:[stroke-linecap:round] ds:[vector-effect:non-scaling-stroke]',\n fine: 'ds:[fill:none] ds:[stroke:var(--am-ink)] ds:[stroke-opacity:0.38] ds:[stroke-width:0.8] ds:[stroke-linecap:round] ds:[vector-effect:non-scaling-stroke]',\n crease:\n 'ds:[fill:none] ds:[stroke:var(--am-ink)] ds:[stroke-opacity:0.55] ds:[stroke-width:1.2] ds:[stroke-linecap:round] ds:[vector-effect:non-scaling-stroke]',\n lumen:\n 'ds:[fill:none] ds:[stroke:var(--am-cavity)] ds:[stroke-opacity:0.75] ds:[stroke-width:1.4] ds:[stroke-linecap:round] ds:[vector-effect:non-scaling-stroke]',\n hidden:\n 'ds:[fill:none] ds:[stroke:var(--am-ink)] ds:[stroke-opacity:0.55] ds:[stroke-width:1.2] ds:[stroke-dasharray:4_3] ds:[vector-effect:non-scaling-stroke]',\n // Body context drawn on the panel, not on tissue: the page's muted ink, so\n // it holds up on a dark panel too.\n context:\n 'ds:[fill:none] ds:[stroke:var(--muted-foreground)] ds:[stroke-opacity:0.55] ds:[stroke-width:1] ds:[stroke-linecap:round] ds:[vector-effect:non-scaling-stroke]',\n};\n\nconst tissueRegionClass: Record<AnatomyTissue, string> = {\n skeletal: paintClass.skeletal,\n tendon: paintClass.tendon,\n muscle: paintClass.muscle,\n mucosa: paintClass.mucosa,\n gland: paintClass.gland,\n gonad: paintClass.gonad,\n duct: paintClass.duct,\n urinary: paintClass.urinary,\n erectile: paintClass.erectile,\n skin: paintClass.skin,\n};\n\n// Fill/stroke is resolved through compoundVariants so every region carries\n// exactly ONE fill declaration — no competing arbitrary `[fill:…]` classes\n// whose winner would depend on stylesheet source order. `schematic` paints a\n// region with no tissue as neutral line art; `hotspot` is transparent over a\n// hosted illustration and only reveals on hover/focus/marked. Tissue art takes\n// its paint from `tissueRegionClass` and its states from the overlay.\nconst regionVariants = cva(\n [\n 'ds:transition-[fill-opacity] ds:[transition-duration:var(--animation-duration)]',\n // Stroke width is authored in view coordinates; keep it constant px so the\n // figure-scaling transform (woman / child) doesn't thin or thicken outlines.\n 'ds:[vector-effect:non-scaling-stroke]',\n ].join(' '),\n {\n variants: {\n appearance: { schematic: '', hotspot: '' },\n interactive: { true: 'ds:cursor-pointer', false: '' },\n marked: { true: '', false: '' },\n },\n compoundVariants: [\n {\n appearance: 'schematic',\n marked: false,\n class:\n 'ds:[fill:var(--muted)] ds:[fill-opacity:0.5] ds:[stroke:var(--muted-foreground)] ds:[stroke-width:1]',\n },\n {\n appearance: 'schematic',\n marked: false,\n interactive: true,\n class: 'ds:hover:[fill:var(--accent)] ds:hover:[fill-opacity:0.3]',\n },\n {\n appearance: 'hotspot',\n marked: false,\n class: 'ds:[fill:transparent] ds:[stroke:transparent]',\n },\n {\n appearance: 'hotspot',\n marked: false,\n interactive: true,\n class: 'ds:hover:[fill:var(--accent)] ds:hover:[fill-opacity:0.12]',\n },\n {\n appearance: ['schematic', 'hotspot'],\n marked: true,\n class:\n 'ds:[fill:var(--accent)] ds:[fill-opacity:0.55] ds:[stroke:var(--accent)] ds:[stroke-width:1.5]',\n },\n ],\n defaultVariants: {\n appearance: 'schematic',\n interactive: false,\n marked: false,\n },\n },\n);\n\n// State layer above a region's art: a tint on hover, a tint and an accent edge\n// when it holds findings, a stronger tint when the host selects it (its\n// outline is drawn in the selection layer above). The anatomy stays readable\n// underneath; the markers carry the findings.\nconst stateOverlayVariants = cva(\n 'ds:pointer-events-none ds:[fill-opacity:0] ds:[stroke:none] ds:transition-[fill-opacity] ds:[transition-duration:var(--animation-duration)] ds:[vector-effect:non-scaling-stroke]',\n {\n variants: {\n hoverable: { true: 'ds:group-hover:[fill-opacity:0.14]', false: '' },\n marked: {\n true: 'ds:[fill-opacity:0.22] ds:[stroke:var(--accent)] ds:[stroke-width:2]',\n false: '',\n },\n // A selection tints in the brand colour; a finding, hover or nothing\n // in the accent, so the two never read as the same state.\n selected: {\n true: 'ds:[fill:var(--primary)] ds:[fill-opacity:0.4] ds:group-hover:[fill-opacity:0.4]',\n false: 'ds:[fill:var(--accent)]',\n },\n },\n defaultVariants: { hoverable: false, marked: false, selected: false },\n },\n);\n\n// The figure's head: the face in the body's neutral, the hair a mid-tone and\n// the tie a darker one, each with the body's contour.\nconst headContour =\n 'ds:[stroke:var(--muted-foreground)] ds:[stroke-width:1.25] ds:[stroke-linejoin:round] ds:[vector-effect:non-scaling-stroke]';\nconst headPaint = {\n face: `ds:[fill:var(--muted)] ${headContour}`,\n hair: `ds:[fill:color-mix(in_oklab,var(--muted-foreground)_38%,var(--muted))] ${headContour}`,\n tie: 'ds:[fill:color-mix(in_oklab,var(--muted-foreground)_70%,var(--muted))] ds:[stroke:none]',\n} as const;\n\n// Selection and focus are drawn above every region, each over a halo in the\n// page colour, so they keep their contrast over any tissue and never hide\n// under a neighbouring organ. Selection is a brand-colour outline over a brand\n// tint; focus is a wider ring with no tint, so the two never look alike, and a\n// finding (accent) never reads as a selection.\nconst outlineHalo =\n 'ds:[fill:none] ds:[stroke:var(--background)] ds:[stroke-linejoin:round] ds:[vector-effect:non-scaling-stroke]';\nconst selectionHalo = `${outlineHalo} ds:[stroke-width:6]`;\nconst selectionOutline =\n 'ds:[fill:none] ds:[stroke:var(--primary)] ds:[stroke-width:2.5] ds:[stroke-linejoin:round] ds:[vector-effect:non-scaling-stroke] ds:forced-colors:[stroke:Highlight]';\nconst focusHalo = `${outlineHalo} ds:[stroke-width:calc(var(--focus-ring-width)_+_4px)]`;\n\nconst figureVariants = cva('ds:mx-auto ds:block ds:h-auto ds:w-full', {\n variants: {\n presentation: {\n body: 'ds:max-w-[20rem]',\n organs: 'ds:max-w-[34rem]',\n },\n },\n defaultVariants: { presentation: 'body' },\n});\n\n/* ------------------------------------------------------------------ */\n/* Shape renderer */\n/* ------------------------------------------------------------------ */\n\nfunction RegionShapeEl({\n shape,\n className,\n fill,\n}: {\n shape: RegionShape;\n className: string;\n /** Presentation attribute, for a gradient reference (`url(#…)`) only. */\n fill?: string;\n}): ReactElement {\n if (shape.kind === 'ellipse') {\n return (\n <ellipse\n cx={shape.cx}\n cy={shape.cy}\n rx={shape.rx}\n ry={shape.ry}\n fill={fill}\n className={className}\n />\n );\n }\n if (shape.kind === 'rect') {\n return (\n <rect\n x={shape.x}\n y={shape.y}\n width={shape.w}\n height={shape.h}\n rx={shape.r ?? 0}\n fill={fill}\n className={className}\n />\n );\n }\n if (shape.kind === 'path') {\n return (\n <path\n d={shape.d}\n fillRule={shape.fillRule}\n transform={shape.transform}\n fill={fill}\n className={className}\n />\n );\n }\n return (\n <polygon\n points={shape.points.map(([x, y]) => `${x},${y}`).join(' ')}\n fill={fill}\n className={className}\n />\n );\n}\n\n/* ------------------------------------------------------------------ */\n/* Resolution helpers */\n/* ------------------------------------------------------------------ */\n\nfunction resolveViews(\n figure: FigureVariant | undefined,\n explicit: MuscleViewId[] | undefined,\n): MuscleView[] {\n if (explicit && explicit.length > 0) {\n return explicit\n .map((id) => MUSCLE_VIEWS[id])\n .filter(Boolean) as MuscleView[];\n }\n return viewsForFigure(figure ?? 'adult-male');\n}\n\n/* ------------------------------------------------------------------ */\n/* MuscleScheme */\n/* ------------------------------------------------------------------ */\n\nexport const MuscleScheme = forwardRef<MuscleSchemeHandle, MuscleSchemeProps>(\n (\n {\n id,\n figure,\n views: explicitViews,\n view: controlledView,\n defaultView,\n onViewChange,\n mode = 'interactive',\n value,\n defaultValue,\n onChange,\n onSelectRegion,\n selectedRegions,\n activeFinding,\n legend = false,\n regionList = true,\n illustrationBaseUrl,\n ariaLabel,\n className,\n },\n ref,\n ) => {\n const { t } = useTranslation('ui');\n const reactId = useId();\n const instanceId = id ?? reactId;\n // Gradient ids must be valid in `url(#…)`; React's ids carry colons.\n const shadeId = `muscle-scheme-shade-${reactId.replace(/[^a-zA-Z0-9_-]/g, '')}`;\n const rootRef = useRef<HTMLDivElement>(null);\n\n const resolvedViews = useMemo(\n () => resolveViews(figure, explicitViews),\n [figure, explicitViews],\n );\n const interactive = mode === 'interactive';\n const selectable = interactive || Boolean(onSelectRegion);\n const selectionMode = selectedRegions !== undefined;\n const selectedSet = useMemo(\n () => new Set(selectedRegions ?? []),\n [selectedRegions],\n );\n const [focusedRegionId, setFocusedRegionId] = useState<string>();\n const [hoveredOrganId, setHoveredOrganId] = useState<string>();\n const highlightedRegionId = focusedRegionId ?? hoveredOrganId;\n\n const [innerViewId, setInnerViewId] = useState<MuscleViewId>(\n () => defaultView ?? resolvedViews[0]?.id ?? DEFAULT_MUSCLE_VIEW,\n );\n const activeViewId = controlledView ?? innerViewId;\n // Keep the active view valid when the resolved set changes.\n const activeView =\n resolvedViews.find((v) => v.id === activeViewId) ?? resolvedViews[0];\n const activeViewRef = useRef(activeView?.id);\n activeViewRef.current = activeView?.id;\n // Host callbacks and the resolved views are read through refs so the\n // imperative handle keeps one identity; an inline host handler must not\n // re-register the agent adapter on every render.\n const latest = useRef({\n onChange,\n onViewChange,\n controlledView,\n resolvedViews,\n });\n latest.current = { onChange, onViewChange, controlledView, resolvedViews };\n\n const changeView = useCallback((next: MuscleViewId) => {\n const {\n onViewChange: notify,\n controlledView: held,\n resolvedViews: all,\n } = latest.current;\n // Only a view this chart renders can become active.\n if (!all.some((view) => view.id === next)) return;\n if (held === undefined) setInnerViewId(next);\n if (next !== activeViewRef.current) notify?.(next);\n }, []);\n\n // A controlled view this chart cannot show (the host switched figure, so\n // `reproductive-female` left the set) falls back to the first view; tell\n // the host, so its sub-area follows what the clinician sees.\n const fallbackViewId = activeView?.id;\n useEffect(() => {\n if (\n controlledView !== undefined &&\n fallbackViewId !== undefined &&\n controlledView !== fallbackViewId\n )\n latest.current.onViewChange?.(fallbackViewId);\n }, [controlledView, fallbackViewId]);\n\n const isControlled = value !== undefined;\n const [internal, setInternal] = useState<MuscleChart>(defaultValue ?? {});\n const chart = isControlled ? value : internal;\n const chartRef = useRef<MuscleChart>(chart);\n chartRef.current = chart;\n\n const commit = useCallback(\n (next: MuscleChart) => {\n if (!isControlled) setInternal(next);\n latest.current.onChange?.(next);\n },\n [isControlled],\n );\n\n const addFinding = useCallback(\n (regionId: string, type: FindingType, note?: string) => {\n const current = chartRef.current[regionId] ?? [];\n if (current.some((f) => f.type === type)) return;\n commit({\n ...chartRef.current,\n [regionId]: [...current, { type, note }],\n });\n },\n [commit],\n );\n\n const removeFindingFn = useCallback(\n (regionId: string, type: FindingType) => {\n const current = chartRef.current[regionId] ?? [];\n const next = current.filter((f) => f.type !== type);\n const copy = { ...chartRef.current };\n if (next.length > 0) copy[regionId] = next;\n else delete copy[regionId];\n commit(copy);\n },\n [commit],\n );\n\n const toggleFinding = useCallback(\n (regionId: string, type: FindingType) => {\n const has = (chartRef.current[regionId] ?? []).some(\n (f) => f.type === type,\n );\n if (has) removeFindingFn(regionId, type);\n else addFinding(regionId, type);\n },\n [addFinding, removeFindingFn],\n );\n\n const focusRegionEl = useCallback((regionId: string) => {\n // The id can come from an agent: match it by value, never splice it into\n // a selector.\n [\n ...(rootRef.current?.querySelectorAll<SVGGElement>('[data-region]') ??\n []),\n ]\n .find((element) => element.dataset.region === regionId)\n ?.focus();\n }, []);\n\n const handleActivate = useCallback(\n (region: MuscleRegion) => {\n onSelectRegion?.(region.id, activeView.id);\n if (interactive && activeFinding)\n toggleFinding(region.id, activeFinding);\n },\n [\n interactive,\n activeFinding,\n toggleFinding,\n onSelectRegion,\n activeView.id,\n ],\n );\n\n /**\n * The region's pressed state: its selection, or the active finding it\n * holds. Only a selectable region is a button; a read-only one is an image\n * and carries no pressed state.\n */\n const pressedState = useCallback(\n (regionId: string, findings: MuscleFinding[]): boolean | undefined => {\n if (!selectable) return undefined;\n if (selectionMode) return selectedSet.has(regionId);\n if (interactive && activeFinding)\n return findings.some((f) => f.type === activeFinding);\n return undefined;\n },\n [selectable, selectionMode, selectedSet, interactive, activeFinding],\n );\n\n /* ---- Imperative handle + agent registration ---- */\n const handle = useMemo<MuscleSchemeHandle>(\n () => ({\n focusRegion: focusRegionEl,\n getChart: () => chartRef.current,\n getRegion: (regionId) => chartRef.current[regionId] ?? [],\n regionsWith: (type) =>\n Object.entries(chartRef.current)\n .filter(([, findings]) => findings.some((f) => f.type === type))\n .map(([regionId]) => regionId),\n setFinding: addFinding,\n removeFinding: removeFindingFn,\n clearRegion: (regionId) => {\n if (!chartRef.current[regionId]) return;\n const copy = { ...chartRef.current };\n delete copy[regionId];\n commit(copy);\n },\n setView: changeView,\n getView: () => activeViewRef.current ?? DEFAULT_MUSCLE_VIEW,\n }),\n [focusRegionEl, addFinding, removeFindingFn, commit, changeView],\n );\n\n useImperativeHandle(ref, () => handle, [handle]);\n useAgentRegistration(muscleSchemeAgent, handle, instanceId);\n\n /* ---- Region label ---- */\n const findingName = useCallback(\n (finding: MuscleFinding) =>\n finding.label ?? t(`muscleScheme.finding.${finding.type}`),\n [t],\n );\n const regionName = useRegionName();\n const regionLabel = useCallback(\n (region: MuscleRegion, includeFindings = true): string => {\n const base = regionName(region);\n const findings = includeFindings\n ? (chartRef.current[region.id] ?? [])\n : [];\n if (findings.length === 0) return base;\n return t('muscleScheme.regionWithFindings', {\n region: base,\n findings: findings.map(findingName).join(', '),\n });\n },\n [t, regionName, findingName],\n );\n\n /* ---- Figure renderer ---- */\n const renderFigure = useCallback(\n (view: MuscleView): ReactElement => {\n // Hosted art replaces the muscles. Organ art stays visible so existing\n // provider assets do not silently lose the reproductive map.\n const illustrationHref = illustrationBaseUrl\n ? `${illustrationBaseUrl}/${view.id}.svg`\n : undefined;\n const appearance =\n illustrationHref || view.hotspotZones ? 'hotspot' : 'schematic';\n const organView = view.presentation === 'organs';\n const [vbX, vbY, vbW, vbH] = view.viewBox.split(' ').map(Number);\n // Organ targets: bilateral pairs first (right then left), then midline.\n const viewOrgans = view.regions\n .filter((region) => region.group === 'reproductive')\n .sort(\n (a, b) =>\n Number(a.side === 'midline') - Number(b.side === 'midline'),\n );\n const regionGroupLabel =\n view.kind === 'pelvis'\n ? t('muscleScheme.pelvicOrgans')\n : t('muscleScheme.breasts');\n return (\n <RadixTooltip.Provider delayDuration={200}>\n <div className=\"ds:flex ds:flex-col ds:gap-[var(--spacing-md)]\">\n <svg\n viewBox={view.viewBox}\n role=\"group\"\n aria-label={t(`muscleScheme.view.${view.labelKey}`)}\n className={[\n figureVariants({ presentation: view.presentation }),\n anatomyPalette,\n ].join(' ')}\n data-view={view.id}\n data-view-kind={view.kind}\n >\n <defs>\n {/* One soft volume for every tissue region: a highlight\n top-left, a shadow at the far edge, in objectBoundingBox\n units so it follows each region's own bounds. */}\n <radialGradient id={shadeId} cx=\"36%\" cy=\"30%\" r=\"78%\">\n <stop\n offset=\"0\"\n className=\"ds:[stop-color:var(--am-highlight)] ds:[stop-opacity:0.42]\"\n />\n <stop\n offset=\"0.42\"\n className=\"ds:[stop-color:var(--am-highlight)] ds:[stop-opacity:0]\"\n />\n <stop\n offset=\"0.78\"\n className=\"ds:[stop-color:var(--am-ink)] ds:[stop-opacity:0.04]\"\n />\n <stop\n offset=\"1\"\n className=\"ds:[stop-color:var(--am-ink)] ds:[stop-opacity:0.26]\"\n />\n </radialGradient>\n </defs>\n {view.plates && (\n <g\n data-plate=\"\"\n aria-hidden=\"true\"\n className=\"ds:pointer-events-none\"\n >\n {view.plates.map((plate) => (\n <rect\n key={`${plate.x}-${plate.y}`}\n x={plate.x}\n y={plate.y}\n width={plate.w}\n height={plate.h}\n rx={14}\n className=\"ds:[fill:var(--muted)] ds:[fill-opacity:0.55]\"\n />\n ))}\n </g>\n )}\n {illustrationHref && (\n <image\n href={illustrationHref}\n x={vbX}\n y={vbY}\n width={vbW}\n height={vbH}\n preserveAspectRatio=\"xMidYMid meet\"\n aria-hidden=\"true\"\n />\n )}\n {view.backdrop && (\n <g\n transform={view.transform}\n data-anatomy-detail=\"\"\n aria-hidden=\"true\"\n className=\"ds:pointer-events-none\"\n >\n {view.backdrop.map((detail, index) => (\n <RegionShapeEl\n key={index}\n shape={detail}\n className={paintClass[detail.paint ?? 'line']}\n />\n ))}\n </g>\n )}\n {view.bodyDetail && (\n // Body contour, scaled with the body (not the head), so the\n // child's enlarged head stays joined to a body-scaled outline.\n <g transform={view.transform}>\n {illustrationHref ? (\n <path\n d={view.bodyDetail}\n aria-hidden=\"true\"\n className=\"ds:[fill:none] ds:[stroke:var(--muted-foreground)] ds:[stroke-width:1] ds:[stroke-linecap:round] ds:[stroke-linejoin:round] ds:[vector-effect:non-scaling-stroke]\"\n />\n ) : (\n // The body itself: a solid neutral silhouette under the\n // muscles (race-neutral by construction, no skin tone),\n // with the same soft volume as the tissue and a crisp\n // contour, so the gaps between muscles read as body.\n <g data-body=\"\" aria-hidden=\"true\">\n <path\n d={view.bodyDetail}\n className=\"ds:[fill:var(--muted)] ds:[stroke:none]\"\n />\n <path\n d={view.bodyDetail}\n fill={`url(#${shadeId})`}\n className=\"ds:[fill-opacity:0.6]\"\n />\n <path\n d={view.bodyDetail}\n className=\"ds:[fill:none] ds:[stroke:var(--muted-foreground)] ds:[stroke-width:1.25] ds:[stroke-linecap:round] ds:[stroke-linejoin:round] ds:[vector-effect:non-scaling-stroke]\"\n />\n </g>\n )}\n </g>\n )}\n {!illustrationHref && (view.head || view.silhouette) && (\n // The head, over the body and under the muscles: the face\n // and ears in the body's neutral, the hair a mid-tone, so\n // the hairline is drawn, never cut.\n <g\n transform={view.silhouetteTransform ?? view.transform}\n data-head=\"\"\n aria-hidden=\"true\"\n >\n {(\n view.head ?? [\n { part: 'hair' as const, d: view.silhouette! },\n ]\n ).map((piece, index) => (\n <path\n key={index}\n d={piece.d}\n data-head-part={piece.part}\n className={headPaint[piece.part]}\n />\n ))}\n </g>\n )}\n <g transform={view.transform}>\n {view.regions.map((region) => {\n const findings = chart[region.id] ?? [];\n const marked = findings.length > 0;\n // A read-only chart cannot convey selection to assistive\n // tech, so it does not paint one either.\n const selected = selectable && selectedSet.has(region.id);\n const organ = region.group === 'reproductive';\n // Hosted art replaces the muscle drawing (its regions turn\n // into transparent hotspots); organ art always draws.\n const tissue =\n organ || appearance !== 'hotspot'\n ? region.tissue\n : undefined;\n const baseClass = tissue\n ? `${tissueRegionClass[tissue]} ${selectable ? 'ds:cursor-pointer' : ''}`\n : regionVariants({\n appearance,\n interactive: selectable,\n marked,\n });\n return (\n <RadixTooltip.Root key={region.id}>\n <RadixTooltip.Trigger asChild>\n <g\n data-region={region.id}\n data-side={region.side}\n data-group={region.group}\n data-tissue={tissue}\n data-selected={selected || undefined}\n data-highlighted={\n highlightedRegionId === region.id || undefined\n }\n role={selectable ? 'button' : 'img'}\n aria-label={regionLabel(region)}\n aria-pressed={pressedState(region.id, findings)}\n // Suppress the UA focus rectangle on the <g> and draw\n // the ring on the region shape itself (the first child)\n // so keyboard focus traces the muscle, not a box round it.\n // forced-colors: re-assert a system-palette stroke since\n // var(--ring) is overridden in High-Contrast mode.\n className=\"ds:group ds:outline-none ds:[&:focus-visible>*:first-child]:[stroke:var(--ring)] ds:[&:focus-visible>*:first-child]:[stroke-width:var(--focus-ring-width)] ds:data-[highlighted=true]:[&>*:first-child]:[stroke:var(--ring)] ds:data-[highlighted=true]:[&>*:first-child]:[stroke-width:var(--focus-ring-width)] ds:forced-colors:[&:focus-visible>*:first-child]:[stroke:CanvasText] ds:forced-colors:data-[highlighted=true]:[&>*:first-child]:[stroke:CanvasText]\"\n tabIndex={selectable ? 0 : -1}\n onFocus={() => setFocusedRegionId(region.id)}\n onBlur={() => setFocusedRegionId(undefined)}\n onClick={() => handleActivate(region)}\n onKeyDown={(e: KeyboardEvent<SVGGElement>) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n handleActivate(region);\n }\n }}\n >\n <RegionShapeEl\n shape={region.shape}\n className={baseClass}\n />\n {tissue && region.details && (\n <g\n data-anatomy-detail=\"\"\n aria-hidden=\"true\"\n className=\"ds:pointer-events-none\"\n >\n {region.details.map((detail, index) => (\n <RegionShapeEl\n key={index}\n shape={detail}\n className={\n paintClass[detail.paint ?? 'line']\n }\n />\n ))}\n </g>\n )}\n {tissue && (\n <RegionShapeEl\n shape={region.shape}\n fill={`url(#${shadeId})`}\n className=\"ds:pointer-events-none\"\n />\n )}\n {(tissue || selected) && (\n <RegionShapeEl\n shape={region.shape}\n className={stateOverlayVariants({\n hoverable: Boolean(tissue) && selectable,\n marked: Boolean(tissue) && marked,\n selected,\n })}\n />\n )}\n {region.hitShape && (\n <RegionShapeEl\n shape={region.hitShape}\n className=\"ds:[fill:transparent] ds:[stroke:none]\"\n />\n )}\n </g>\n </RadixTooltip.Trigger>\n <RadixTooltip.Portal>\n <RadixTooltip.Content\n sideOffset={4}\n className=\"ds:z-[var(--z-tooltip)] ds:rounded-[var(--radius-sm)] ds:bg-[var(--popover)] ds:px-2 ds:py-1 ds:text-[length:var(--font-size-xs)] ds:text-[var(--popover-foreground)] ds:shadow-[var(--shadow-md)]\"\n >\n {regionLabel(region)}\n <RadixTooltip.Arrow className=\"ds:[fill:var(--popover)]\" />\n </RadixTooltip.Content>\n </RadixTooltip.Portal>\n </RadixTooltip.Root>\n );\n })}\n </g>\n {view.details && (\n <g\n transform={view.transform}\n data-anatomy-detail=\"\"\n aria-hidden=\"true\"\n className=\"ds:pointer-events-none\"\n >\n {view.details.map((detail, index) => (\n <RegionShapeEl\n key={index}\n shape={detail}\n className={paintClass[detail.paint ?? 'line']}\n />\n ))}\n </g>\n )}\n {selectable && selectedSet.size > 0 && (\n <g\n transform={view.transform}\n aria-hidden=\"true\"\n data-selection-layer=\"\"\n className=\"ds:pointer-events-none\"\n >\n {view.regions\n .filter((region) => selectedSet.has(region.id))\n .map((region) => (\n <g key={region.id} data-region-selected={region.id}>\n <RegionShapeEl\n shape={region.shape}\n className={selectionHalo}\n />\n <RegionShapeEl\n shape={region.shape}\n className={selectionOutline}\n />\n </g>\n ))}\n </g>\n )}\n <g\n transform={view.transform}\n aria-hidden=\"true\"\n className=\"ds:pointer-events-none\"\n >\n {view.regions.flatMap((region) => {\n const findings = chart[region.id] ?? [];\n const anchor = regionCentroid(region);\n const organ = region.group === 'reproductive';\n const largeCoordinates = region.shape.kind === 'path';\n // Narrow organs need compact columns so neighbouring\n // structures keep distinct finding clusters. Body-region\n // placement stays unchanged for saved muscle findings.\n const organRadius = organView ? 6 : vbW / 60;\n const organGap = organView ? 14 : vbW / 24;\n const r = organ ? organRadius : largeCoordinates ? 20 : 4.5;\n const gap = organ ? organGap : largeCoordinates ? 44 : 11;\n const columns = organView ? 2 : 3;\n const rows = organ\n ? Math.ceil(findings.length / columns)\n : 1;\n return findings.map((finding, index) => {\n const marker = FINDING_MARKER[finding.type];\n const shape: MarkerShape = finding.shape ?? marker.shape;\n const row = organ ? Math.floor(index / columns) : 0;\n const rowLength = organ\n ? Math.min(columns, findings.length - row * columns)\n : findings.length;\n const column = organ ? index % columns : index;\n const offset = (column - (rowLength - 1) / 2) * gap;\n // Breast findings start at their own lower anchor and\n // wrap down, clear of the saved pectoral markers above.\n const verticalOffset =\n organ && !organView\n ? row * gap\n : (row - (rows - 1) / 2) * gap;\n const fill = markerFill(finding);\n return (\n <path\n key={`${region.id}-${finding.type}-${index}`}\n data-region-finding={region.id}\n data-finding={finding.type}\n d={markerPath(\n shape,\n anchor.x + offset,\n anchor.y + verticalOffset,\n r,\n )}\n className={`${fill.className} ${markerHalo}`}\n // eslint-disable-next-line react/forbid-dom-props -- caller-supplied practice colour injected via a CSS variable (23-constraints §custom properties)\n style={fill.style}\n />\n );\n });\n })}\n </g>\n {/* Focus is the top layer: a finding marker must never cover\n the outline of a small organ such as the cervix or testis. */}\n <g\n transform={view.transform}\n aria-hidden=\"true\"\n className=\"ds:pointer-events-none\"\n >\n {view.regions\n .filter((region) => region.id === highlightedRegionId)\n .map((region) => (\n <g key={region.id} data-region-focus={region.id}>\n <RegionShapeEl\n shape={region.shape}\n className={focusHalo}\n />\n <RegionShapeEl\n shape={region.shape}\n className=\"ds:[fill:none] ds:[stroke:var(--ring)] ds:[stroke-width:var(--focus-ring-width)] ds:[vector-effect:non-scaling-stroke] ds:forced-colors:[stroke:CanvasText]\"\n />\n </g>\n ))}\n </g>\n {view.sections?.map((section) => (\n <text\n key={section.labelKey}\n x={section.x}\n y={section.y}\n textAnchor=\"middle\"\n className=\"ds:pointer-events-none ds:font-sans ds:font-medium ds:text-[length:var(--font-size-sm)] ds:[fill:var(--muted-foreground)]\"\n >\n {t(`muscleScheme.section.${section.labelKey}`)}\n </text>\n ))}\n </svg>\n {selectable && regionList && viewOrgans.length > 0 && (\n <div\n className=\"ds:flex ds:flex-col ds:gap-[var(--spacing-xs)]\"\n role=\"group\"\n aria-labelledby={`${shadeId}-${view.id}-targets`}\n >\n <p\n id={`${shadeId}-${view.id}-targets`}\n className=\"ds:m-0 ds:font-medium ds:text-[length:var(--font-size-sm)] ds:text-[var(--muted-foreground)]\"\n >\n {regionGroupLabel}\n </p>\n <div className=\"ds:flex ds:flex-wrap ds:gap-[var(--spacing-xs)]\">\n {viewOrgans.map((region) => {\n const findings = chart[region.id] ?? [];\n const pressed = pressedState(region.id, findings);\n return (\n <Button\n key={region.id}\n intent=\"outline\"\n data-organ-target={region.id}\n aria-label={regionLabel(region)}\n aria-pressed={pressed}\n className=\"ds:min-h-[var(--min-target-size)] ds:min-w-[var(--min-target-size)] ds:rounded-full ds:aria-pressed:border-[color:var(--accent)] ds:aria-pressed:bg-[var(--accent)]/10\"\n onClick={() => handleActivate(region)}\n onFocus={() => setFocusedRegionId(region.id)}\n onBlur={() => setFocusedRegionId(undefined)}\n onPointerEnter={() => setHoveredOrganId(region.id)}\n onPointerLeave={() => setHoveredOrganId(undefined)}\n >\n <span className=\"ds:flex ds:flex-wrap ds:items-center ds:justify-center ds:gap-[var(--spacing-xs)]\">\n {/* Pressed reads by shape too, not by colour alone. */}\n {pressed && (\n <Check\n aria-hidden=\"true\"\n className=\"ds:size-4 ds:shrink-0\"\n />\n )}\n <span>{regionLabel(region, false)}</span>\n {findings.map((finding, index) => (\n <FindingGlyph\n key={`${finding.type}-${index}`}\n finding={finding}\n />\n ))}\n </span>\n </Button>\n );\n })}\n </div>\n </div>\n )}\n </div>\n </RadixTooltip.Provider>\n );\n },\n [\n chart,\n highlightedRegionId,\n selectable,\n selectedSet,\n pressedState,\n regionList,\n illustrationBaseUrl,\n shadeId,\n t,\n regionLabel,\n handleActivate,\n ],\n );\n\n const multi = resolvedViews.length > 1;\n const oneFigure =\n new Set(resolvedViews.map((view) => view.figure)).size === 1;\n\n return (\n <div\n ref={rootRef}\n data-component=\"muscle-scheme\"\n data-component-id={instanceId}\n data-view={activeView?.id}\n data-view-kind={activeView?.kind}\n className={['ds:flex ds:flex-col ds:gap-3', className]\n .filter(Boolean)\n .join(' ')}\n role=\"group\"\n aria-label={ariaLabel ?? t('muscleScheme.ariaLabel')}\n >\n {multi ? (\n <Tabs value={activeView.id} onValueChange={changeView}>\n <Tabs.List aria-label={t('muscleScheme.viewListLabel')}>\n {resolvedViews.map((v) => (\n <Tabs.Trigger key={v.id} value={v.id}>\n {/* One figure (a host's patient chart): Front / Back / Pelvis\n fit a narrow column. Mixed figures keep the full names. */}\n {oneFigure\n ? t(`muscleScheme.viewShort.${v.kind}`)\n : t(`muscleScheme.view.${v.labelKey}`)}\n </Tabs.Trigger>\n ))}\n </Tabs.List>\n {resolvedViews.map((v) => (\n <Tabs.Content key={v.id} value={v.id}>\n {renderFigure(v)}\n </Tabs.Content>\n ))}\n </Tabs>\n ) : (\n activeView && renderFigure(activeView)\n )}\n\n {legend && (\n <ul\n aria-label={t('muscleScheme.legendLabel')}\n className=\"ds:flex ds:flex-wrap ds:gap-x-4 ds:gap-y-1 ds:p-0 ds:text-[length:var(--font-size-xs)] ds:text-[var(--muted-foreground)]\"\n >\n {FINDING_TYPES.map((type) => {\n const m = FINDING_MARKER[type];\n return (\n <li key={type} className=\"ds:flex ds:list-none ds:items-center\">\n <AnnotationMarker\n shape={m.shape}\n tone={m.tone}\n size=\"sm\"\n label={t(`muscleScheme.finding.${type}`)}\n />\n </li>\n );\n })}\n </ul>\n )}\n </div>\n );\n },\n);\n\nMuscleScheme.displayName = 'MuscleScheme';\n"],"names":["REGION_SCHEMA","FINDING_SCHEMA","VIEW_SCHEMA","muscleSchemeAgent","handle","id","findings","f","args","FEMALE_PELVIS","MALE_PELVIS","MUSCLE_MALE_FRONT","MUSCLE_MALE_BACK","MUSCLE_FEMALE_FRONT","MUSCLE_FEMALE_BACK","MUSCLE_FIBRES","CHILD_PROPORTIONS","MUSCLE_OUTLINES","FINDING_TYPES","FINDING_MARKER","regionCentroid","region","s","n","sum","acc","x","y","HEAD_PARTS","headPieces","art","set","d","index","TENDON_SLUGS","oppositeSide","side","muscleRegions","fibreSet","back","sided","carved","muscles","m","fibres","carve","CARVE","pieces","piece","kept","_","slug","i","head","zones","extraZones","ribs","keepX","keepY","scapula","keep","joint","rx","ry","labelKey","JOINTS","SPINE_TOP","HEAD_MARKER","round","toArt","tx","ty","MUSCLE_NORMALISE","l","ellipsePath","cx","cy","at","joints","j","viewerLeft","x0","x1","y0","y1","r","spine","BREAST_R","FIGURE_MIDLINE","mirrorX","mirrorPath","value","breastRegion","left","FEMALE_BREASTS","MUSCLE_VIEWBOX","CHILD_HEAD_SCALE","childHead","MUSCLE_CHILD_HEAD","CHILD_LEG_SLUGS","childRegions","regions","legScale","sole","drop","leg","isHead","transform","move","point","withTransform","shape","_a","MUSCLE_VIEWS","getView","viewsForFigure","figure","v","getRegion","viewId","regionId","findRegionView","views","has","view","DEFAULT_MUSCLE_VIEW","figureFromPatient","sex","ageYears","emptyChart","useRegionName","t","useTranslation","useCallback","name","useMuscleRegionLabel","regionName","entry","markerHalo","markerToneFill","hostColourFill","hostColourStyle","color","markerFill","finding","style","FindingGlyph","marker","fill","jsx","markerPath","anatomyPalette","edge","paintClass","tissueRegionClass","regionVariants","cva","stateOverlayVariants","headContour","headPaint","outlineHalo","selectionHalo","selectionOutline","focusHalo","figureVariants","RegionShapeEl","className","resolveViews","explicit","MuscleScheme","forwardRef","explicitViews","controlledView","defaultView","onViewChange","mode","defaultValue","onChange","onSelectRegion","selectedRegions","activeFinding","legend","regionList","illustrationBaseUrl","ariaLabel","ref","reactId","useId","instanceId","shadeId","rootRef","useRef","resolvedViews","useMemo","interactive","selectable","selectionMode","selectedSet","focusedRegionId","setFocusedRegionId","useState","hoveredOrganId","setHoveredOrganId","highlightedRegionId","innerViewId","setInnerViewId","activeViewId","activeView","activeViewRef","latest","changeView","next","notify","held","all","fallbackViewId","useEffect","_b","isControlled","internal","setInternal","chart","chartRef","commit","addFinding","type","note","current","removeFindingFn","copy","toggleFinding","focusRegionEl","element","handleActivate","pressedState","useImperativeHandle","useAgentRegistration","findingName","regionLabel","includeFindings","base","renderFigure","illustrationHref","appearance","organView","vbX","vbY","vbW","vbH","viewOrgans","a","b","regionGroupLabel","RadixTooltip","jsxs","plate","detail","marked","selected","tissue","baseClass","e","anchor","organ","largeCoordinates","organRadius","organGap","gap","columns","rows","row","rowLength","offset","verticalOffset","section","pressed","Button","Check","multi","oneFigure","Tabs","AnnotationMarker"],"mappings":"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ACV,MAAM;AAAA,MACN,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,GAAG;AAAA,IAAA;AAAA,EACL;AAEJ,GChiCaC,KAAgE;AAAA,EAC3E,cAAc;AAAA,IACZ,WACE;AAAA,IACF,WACE;AAAA,IACF,cACE;AAAA,IACF,cACE;AAAA,IACF,SACE;AAAA,IACF,SACE;AAAA,IACF,YACE;AAAA,IACF,YACE;AAAA,IACF,aACE;AAAA,IACF,aACE;AAAA,IACF,MAAM;AAAA,IACN,UACE;AAAA,IACF,UACE;AAAA,IACF,eACE;AAAA,IACF,eACE;AAAA,IACF,cACE;AAAA,IACF,cACE;AAAA,IACF,eACE;AAAA,IACF,eACE;AAAA,IACF,gBACE;AAAA,IACF,gBACE;AAAA,IACF,WACE;AAAA,IACF,WACE;AAAA,IACF,cACE;AAAA,IACF,cACE;AAAA,IACF,YACE;AAAA,IACF,YACE;AAAA,IACF,aACE;AAAA,IACF,aACE;AAAA,IACF,WACE;AAAA,IACF,WACE;AAAA,IACF,YACE;AAAA,IACF,YACE;AAAA,IACF,UACE;AAAA,IACF,UACE;AAAA,EAAA;AAAA,EAEJ,aAAa;AAAA,IACX,UACE;AAAA,IACF,UACE;AAAA,IACF,eACE;AAAA,IACF,eACE;AAAA,IACF,cACE;AAAA,IACF,cACE;AAAA,IACF,gBACE;AAAA,IACF,gBACE;AAAA,IACF,aACE;AAAA,IACF,aACE;AAAA,IACF,gBACE;AAAA,IACF,gBACE;AAAA,IACF,aACE;AAAA,IACF,aACE;AAAA,IACF,aACE;AAAA,IACF,aACE;AAAA,IACF,eACE;AAAA,IACF,eACE;AAAA,IACF,eACE;AAAA,IACF,eACE;AAAA,IACF,YACE;AAAA,IACF,YACE;AAAA,IACF,YACE;AAAA,IACF,YACE;AAAA,IACF,UACE;AAAA,IACF,UACE;AAAA,IACF,WACE;AAAA,IACF,WACE;AAAA,EAAA;AAAA,EAEJ,gBAAgB;AAAA,IACd,MAAM;AAAA,IACN,UACE;AAAA,IACF,UACE;AAAA,IACF,eACE;AAAA,IACF,eACE;AAAA,IACF,cACE;AAAA,IACF,cACE;AAAA,IACF,WACE;AAAA,IACF,WACE;AAAA,IACF,YACE;AAAA,IACF,YACE;AAAA,IACF,aACE;AAAA,IACF,aACE;AAAA,IACF,cACE;AAAA,IACF,cACE;AAAA,IACF,SACE;AAAA,IACF,SACE;AAAA,IACF,aACE;AAAA,IACF,aACE;AAAA,IACF,WACE;AAAA,IACF,WACE;AAAA,IACF,eACE;AAAA,IACF,eACE;AAAA,IACF,gBACE;AAAA,IACF,gBACE;AAAA,IACF,WACE;AAAA,IACF,WACE;AAAA,IACF,cACE;AAAA,IACF,cACE;AAAA,IACF,YACE;AAAA,IACF,YACE;AAAA,IACF,YACE;AAAA,IACF,YACE;AAAA,IACF,UACE;AAAA,IACF,UACE;AAAA,EAAA;AAAA,EAEJ,eAAe;AAAA,IACb,UACE;AAAA,IACF,UACE;AAAA,IACF,eACE;AAAA,IACF,eACE;AAAA,IACF,cACE;AAAA,IACF,cACE;AAAA,IACF,gBACE;AAAA,IACF,gBACE;AAAA,IACF,gBACE;AAAA,IACF,gBACE;AAAA,IACF,aACE;AAAA,IACF,aACE;AAAA,IACF,aACE;AAAA,IACF,aACE;AAAA,IACF,WACE;AAAA,IACF,WACE;AAAA,IACF,aACE;AAAA,IACF,aACE;AAAA,IACF,eACE;AAAA,IACF,eACE;AAAA,IACF,eACE;AAAA,IACF,eACE;AAAA,IACF,YACE;AAAA,IACF,YACE;AAAA,IACF,YACE;AAAA,IACF,YACE;AAAA,IACF,UACE;AAAA,IACF,UACE;AAAA,EAAA;AAEN,GC9PaC,KAAoB;AAAA,EAC/B,UAAU;AAAA,EAEV,MAAM;AAAA,EAMN,MAAM;AACR,GAEaC,IAAoD;AAAA,EAC/D,cACE;AAAA,EACF,aACE;AAAA,EACF,gBACE;AAAA,EACF,eACE;AAAA,EACF,eACE;AAAA,EACF,cACE;AACJ,GCMaC,KAA+B;AAAA,EAC1C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAEaC,KAGT;AAAA,EACF,aAAa,EAAE,OAAO,UAAU,MAAM,OAAA;AAAA,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"}
|
|
1
|
+
{"version":3,"file":"muscle-scheme-BGJD62op.js","sources":["../../src/components/muscle-scheme/muscle-scheme.agent.ts","../../src/components/muscle-scheme/reproductive-female.ts","../../src/components/muscle-scheme/reproductive-male.ts","../../src/components/muscle-scheme/muscle-paths.ts","../../src/components/muscle-scheme/muscle-fibres.ts","../../src/components/muscle-scheme/muscle-outlines.ts","../../src/components/muscle-scheme/muscle-scheme-data.ts","../../src/components/muscle-scheme/muscle-scheme.tsx"],"sourcesContent":["import type { AgentAdapter } from '../../agent/types';\nimport type { MuscleSchemeHandle } from './muscle-scheme';\nimport type { FindingType } from './muscle-scheme-data';\n\n// JSON-Schema fragments derived from the data-model unions. Kept inline so the\n// adapter stays a pure module with no runtime import of the unions.\nconst REGION_SCHEMA = {\n type: 'string',\n description:\n \"Region id within the active view, e.g. 'quadriceps-r', 'biceps-l', 'chest-r', 'trapezius-l'. Every body view also has head, elbow-l/r and wrist-l/r; front views add ribs-l/r and hip-l/r, back views spine, scapula-l/r and knee-back-l/r. The female body view muscular-front-female also has breast-l and breast-r. The organ-only reproductive-female view has vulva, vagina, cervix, uterus, ovary-l, ovary-r, fallopian-tube-l, fallopian-tube-r, bladder and urethra. The organ-only reproductive-male view has penis, scrotum, testis-l, testis-r, prostate, bladder, urethra, epididymis-l, epididymis-r, vas-deferens-l, vas-deferens-r, seminal-vesicle-l and seminal-vesicle-r. Child views have no organ regions.\",\n} as const;\nconst FINDING_SCHEMA = {\n enum: ['observation', 'lesion', 'pain', 'treatment', 'note'],\n} as const;\nconst VIEW_SCHEMA = {\n type: 'string',\n description:\n \"View id: 'muscular-front', 'muscular-back', 'muscular-front-female', 'muscular-back-female', 'muscular-front-child', 'muscular-back-child', 'reproductive-female' or 'reproductive-male'. Reproductive views (kind 'pelvis') contain only organs; the others show the body from the front or back. Switch to the relevant view before focusing an organ region. When the host controls the view, it decides whether the switch happens.\",\n} as const;\n\nexport const muscleSchemeAgent: AgentAdapter<MuscleSchemeHandle> = {\n id: 'muscle-scheme',\n // pick — focus a region (`focus_region`, transient); set_value / edit_inline —\n // `set_finding` records a finding, `remove_finding` clears one; view_change —\n // `set_view` switches the active muscle view. Selection (`selectedRegions`)\n // and a controlled view are host state: the host's own adapter reports them,\n // and a `set_view` the host controls takes effect only when it agrees.\n capabilities: ['pick', 'set_value', 'edit_inline', 'view_change'],\n state: {\n chart: {\n type: 'object',\n descriptionKey: 'ui.agent.muscleScheme.state.chart',\n description:\n 'Current muscle chart — findings keyed by region id. Notes are PHI and omitted from this snapshot; read them per-region via get_region.',\n // A9: the always-on snapshot carries region ids + finding TYPES only —\n // never the free-text clinical note (PHI). Notes are fetched deliberately\n // per region via get_region (safety: 'phi').\n read: (handle) =>\n Object.fromEntries(\n Object.entries(handle.getChart()).map(([id, findings]) => [\n id,\n findings.map((f) => f.type),\n ]),\n ),\n },\n activeView: {\n type: 'string',\n descriptionKey: 'ui.agent.muscleScheme.state.activeView',\n description: 'Id of the currently displayed muscle view.',\n read: (handle) => handle.getView(),\n },\n },\n actions: {\n focus_region: {\n safety: 'read',\n argsType: '{ regionId: string }',\n argsSchema: {\n type: 'object',\n properties: { regionId: REGION_SCHEMA },\n required: ['regionId'],\n },\n idempotent: true,\n descriptionKey: 'ui.agent.muscleScheme.actions.focusRegion',\n description: 'Move focus to a specific region in the active view.',\n invoke: (handle, args: { regionId: string }) => {\n handle.focusRegion(args.regionId);\n },\n },\n get_region: {\n // phi (not read): resolves the free-text clinical note, which is PHI.\n // PRS §26 §3 — phi outranks read so the host gates it behind stricter\n // confirm + audit. The always-on state.chart snapshot stays note-free.\n safety: 'phi',\n argsType: '{ regionId: string }',\n argsSchema: {\n type: 'object',\n properties: { regionId: REGION_SCHEMA },\n required: ['regionId'],\n },\n returns: 'MuscleFinding[]',\n returnsSchema: {\n type: 'array',\n items: {\n type: 'object',\n properties: { type: FINDING_SCHEMA, note: { type: 'string' } },\n required: ['type'],\n },\n },\n idempotent: true,\n descriptionKey: 'ui.agent.muscleScheme.actions.getRegion',\n description: 'Read the findings (incl. notes) recorded on one region.',\n invoke: (handle, args: { regionId: string }) =>\n handle.getRegion(args.regionId),\n },\n regions_with: {\n safety: 'read',\n argsType: '{ type: FindingType }',\n argsSchema: {\n type: 'object',\n properties: { type: FINDING_SCHEMA },\n required: ['type'],\n },\n returns: 'string[]',\n returnsSchema: { type: 'array', items: REGION_SCHEMA },\n idempotent: true,\n descriptionKey: 'ui.agent.muscleScheme.actions.regionsWith',\n description: 'List the region ids carrying a given finding type.',\n invoke: (handle, args: { type: FindingType }) =>\n handle.regionsWith(args.type),\n },\n set_finding: {\n safety: 'write',\n argsType: '{ regionId: string; type: FindingType; note?: string }',\n argsSchema: {\n type: 'object',\n properties: {\n regionId: REGION_SCHEMA,\n type: FINDING_SCHEMA,\n note: { type: 'string' },\n },\n required: ['regionId', 'type'],\n },\n idempotent: true,\n descriptionKey: 'ui.agent.muscleScheme.actions.setFinding',\n description:\n 'Record a finding (observation / lesion / pain / treatment / note) on a region.',\n invoke: (\n handle,\n args: { regionId: string; type: FindingType; note?: string },\n ) => {\n handle.setFinding(args.regionId, args.type, args.note);\n },\n },\n remove_finding: {\n safety: 'write',\n argsType: '{ regionId: string; type: FindingType }',\n argsSchema: {\n type: 'object',\n properties: { regionId: REGION_SCHEMA, type: FINDING_SCHEMA },\n required: ['regionId', 'type'],\n },\n idempotent: true,\n descriptionKey: 'ui.agent.muscleScheme.actions.removeFinding',\n description: 'Remove a single finding type from a region.',\n invoke: (handle, args: { regionId: string; type: FindingType }) => {\n handle.removeFinding(args.regionId, args.type);\n },\n },\n clear_region: {\n safety: 'destructive',\n argsType: '{ regionId: string }',\n argsSchema: {\n type: 'object',\n properties: { regionId: REGION_SCHEMA },\n required: ['regionId'],\n },\n idempotent: true,\n descriptionKey: 'ui.agent.muscleScheme.actions.clearRegion',\n description: 'Clear every finding from a region.',\n invoke: (handle, args: { regionId: string }) => {\n handle.clearRegion(args.regionId);\n },\n },\n set_view: {\n safety: 'write',\n argsType: '{ viewId: string }',\n argsSchema: {\n type: 'object',\n properties: { viewId: VIEW_SCHEMA },\n required: ['viewId'],\n },\n idempotent: true,\n descriptionKey: 'ui.agent.muscleScheme.actions.setView',\n description: 'Switch the active muscle view.',\n invoke: (handle, args: { viewId: string }) => {\n handle.setView(args.viewId);\n },\n },\n },\n domHooks: {\n root: { attr: 'data-component', value: 'muscle-scheme' },\n instanceId: {\n attr: 'data-component-id',\n sourceProp: 'id',\n description: 'Sourced from the id prop.',\n },\n item: {\n attr: 'data-region',\n description:\n 'Each rendered region `<g>` carries its region id as `data-region` and its anatomical side (`left` / `right` / `midline`) as `data-side`, so bilateral regions can be disambiguated by side; a host-selected region also carries `data-selected`. The root `data-view` and `data-view-kind` attributes expose the active view and what it depicts (`front` / `back` / `pelvis`).',\n },\n },\n};\n\nexport type { FindingType };\n","import type { OrganArt } from './muscle-scheme-data';\n\n// Female pelvic organs: original kit drawings in three labelled panels, informed\n// by the NCI SEER and NIDDK references in MUSCLE-ASSETS.md (no artwork traced).\n// - Internal reproductive organs, coronal section: uterus (myometrium, the\n// endometrium and its triangular cavity), cervix with canal and external os,\n// vagina with rugae, fallopian tubes from isthmus to fimbriae, ovaries with\n// follicles. Mesosalpinx and ovarian ligaments are context, not targets.\n// - External genitalia, lithotomy view: the vulva as one region; mons, labia,\n// clitoris, urethral and vaginal openings are detail within it.\n// - Bladder and urethra, coronal section: detrusor wall, trigone, ureteric\n// orifices. The ureters are context.\n// Panels are separate views of the anatomy, not a claim that the bladder sits\n// beside the uterus. Anatomical right is on the viewer's left. Not to scale.\n// Generated by scripts/anatomy-art/build-organs.mjs from female-pelvis.mjs:\n// edit the source there and regenerate; the paths are smooth splines.\n\nexport const FEMALE_PELVIS: OrganArt = {\n viewBox: '0 0 520 660',\n plates: [\n { x: 6, y: 36, w: 508, h: 372 },\n { x: 6, y: 450, w: 250, h: 204 },\n { x: 264, y: 450, w: 250, h: 204 },\n ],\n sections: [\n { labelKey: 'internalReproductive', x: 260, y: 24 },\n { labelKey: 'externalGenital', x: 132, y: 438 },\n { labelKey: 'urinary', x: 388, y: 438 },\n ],\n backdrop: [\n {\n kind: 'path',\n d: 'M 214 116 C 192 113 163 105 141 97.5 C 123 93 108 96 100 108 C 96 122 98 136 106 145 C 124 152 151 157 177 151 C 193 147 205 141 214 136 Z',\n paint: 'membrane',\n },\n {\n kind: 'path',\n d: 'M 306 116 C 328 113 357 105 379 97.5 C 397 93 412 96 420 108 C 424 122 422 136 414 145 C 396 152 369 157 343 151 C 327 147 315 141 306 136 Z',\n paint: 'membrane',\n },\n {\n kind: 'path',\n d: 'M 146.8 174.5 C 148.1 174.5 150.5 173.4 153 172.7 C 155.6 171.9 159.1 170.9 162.1 169.9 C 165.1 168.9 168.3 167.8 171.1 166.6 C 174 165.3 176.6 163.9 179.2 162.5 C 181.9 161.1 184.5 159.5 187.1 158 C 189.6 156.5 192 155.1 194.5 153.6 C 197.1 152.1 199.7 150.6 202.2 149.1 C 204.7 147.6 207.5 146 209.5 144.8 C 211.6 143.5 213.9 142.8 214.7 141.7 C 215.4 140.7 214.6 139.2 214.1 138.3 C 213.5 137.4 212.6 136.1 211.3 136.3 C 210 136.4 208.4 138.1 206.3 139.4 C 204.3 140.7 201.5 142.3 199.1 143.8 C 196.6 145.4 194 146.9 191.5 148.4 C 189 149.9 186.6 151.4 184.1 152.9 C 181.6 154.4 179 156.1 176.5 157.5 C 173.9 158.9 171.6 160.2 168.9 161.4 C 166.2 162.6 163.2 163.7 160.3 164.7 C 157.4 165.8 154 166.8 151.5 167.6 C 149 168.4 146.3 168.7 145.2 169.5 C 144.2 170.3 144.8 171.5 145 172.3 C 145.3 173.1 145.4 174.4 146.8 174.5 Z',\n paint: 'ligament',\n },\n {\n kind: 'path',\n d: 'M 373.2 174.5 C 371.9 174.5 369.5 173.4 367 172.7 C 364.4 171.9 360.9 170.9 357.9 169.9 C 354.9 168.9 351.7 167.8 348.9 166.6 C 346 165.3 343.4 163.9 340.8 162.5 C 338.1 161.1 335.5 159.5 332.9 158 C 330.4 156.5 328 155.1 325.5 153.6 C 322.9 152.1 320.3 150.6 317.8 149.1 C 315.3 147.6 312.5 146 310.5 144.8 C 308.4 143.5 306.1 142.8 305.3 141.7 C 304.6 140.7 305.4 139.2 305.9 138.3 C 306.5 137.4 307.4 136.1 308.7 136.3 C 310 136.4 311.6 138.1 313.7 139.4 C 315.7 140.7 318.5 142.3 320.9 143.8 C 323.4 145.4 326 146.9 328.5 148.4 C 331 149.9 333.4 151.4 335.9 152.9 C 338.4 154.4 341 156.1 343.5 157.5 C 346.1 158.9 348.4 160.2 351.1 161.4 C 353.8 162.6 356.8 163.7 359.7 164.7 C 362.6 165.8 366 166.8 368.5 167.6 C 371 168.4 373.7 168.7 374.8 169.5 C 375.8 170.3 375.2 171.5 375 172.3 C 374.7 173.1 374.6 174.4 373.2 174.5 Z',\n paint: 'ligament',\n },\n {\n kind: 'path',\n d: 'M 309.9 470.6 C 309.4 471.6 310.3 473.4 310.6 475.3 C 310.9 477.2 311.3 479.9 311.6 482.1 C 312 484.4 312.4 486.8 312.9 488.9 C 313.3 491 313.8 492.9 314.3 494.9 C 314.8 496.9 315.4 498.9 316 500.8 C 316.6 502.8 317.3 504.7 318 506.6 C 318.8 508.5 319.6 510.3 320.4 512.1 C 321.3 513.9 322.2 515.7 323.2 517.4 C 324.2 519.1 325.2 520.8 326.4 522.5 C 327.6 524.3 329.1 526.1 330.4 527.8 C 331.8 529.5 333.5 531.3 334.7 532.7 C 335.9 534 336.5 535.8 337.7 536 C 338.8 536.2 340.5 534.7 341.6 533.7 C 342.7 532.7 344.4 531.1 344.3 530 C 344.3 528.8 342.6 528 341.4 526.7 C 340.2 525.4 338.6 523.7 337.3 522.1 C 336 520.6 334.7 519 333.6 517.5 C 332.5 516 331.7 514.6 330.8 513 C 329.9 511.5 329 509.9 328.2 508.3 C 327.4 506.7 326.7 505.1 326 503.4 C 325.3 501.7 324.7 500 324.1 498.2 C 323.5 496.4 323 494.6 322.5 492.7 C 322 490.9 321.5 489.1 321.1 487.1 C 320.7 485.1 320.2 482.9 319.8 480.7 C 319.5 478.5 319.1 476 318.8 474.1 C 318.5 472.2 318.9 470.2 318.1 469.4 C 317.2 468.6 315.3 469.2 313.9 469.4 C 312.6 469.6 310.5 469.6 309.9 470.6 Z',\n paint: 'urinary',\n },\n {\n kind: 'path',\n d: 'M 466.1 470.6 C 466.6 471.6 465.7 473.4 465.4 475.3 C 465.1 477.2 464.7 479.9 464.4 482.1 C 464 484.4 463.6 486.8 463.1 488.9 C 462.7 491 462.2 492.9 461.7 494.9 C 461.2 496.9 460.6 498.9 460 500.8 C 459.4 502.8 458.7 504.7 458 506.6 C 457.2 508.5 456.4 510.3 455.6 512.1 C 454.7 513.9 453.8 515.7 452.8 517.4 C 451.8 519.1 450.8 520.8 449.6 522.5 C 448.4 524.3 446.9 526.1 445.6 527.8 C 444.2 529.5 442.5 531.3 441.3 532.7 C 440.1 534 439.5 535.8 438.3 536 C 437.2 536.2 435.5 534.7 434.4 533.7 C 433.3 532.7 431.6 531.1 431.7 530 C 431.7 528.8 433.4 528 434.6 526.7 C 435.8 525.4 437.4 523.7 438.7 522.1 C 440 520.6 441.3 519 442.4 517.5 C 443.5 516 444.3 514.6 445.2 513 C 446.1 511.5 447 509.9 447.8 508.3 C 448.6 506.7 449.3 505.1 450 503.4 C 450.7 501.7 451.3 500 451.9 498.2 C 452.5 496.4 453 494.6 453.5 492.7 C 454 490.9 454.5 489.1 454.9 487.1 C 455.3 485.1 455.8 482.9 456.2 480.7 C 456.5 478.5 456.9 476 457.2 474.1 C 457.5 472.2 457.1 470.2 457.9 469.4 C 458.8 468.6 460.7 469.2 462.1 469.4 C 463.4 469.6 465.5 469.6 466.1 470.6 Z',\n paint: 'urinary',\n },\n {\n kind: 'path',\n d: 'M 44 470 C 60 500 70 540 76 572 C 82 604 96 628 118 644',\n paint: 'context',\n },\n {\n kind: 'path',\n d: 'M 220 470 C 204 500 194 540 188 572 C 182 604 168 628 146 644',\n paint: 'context',\n },\n { kind: 'path', d: 'M 132 617 L 132 628', paint: 'context' },\n {\n kind: 'path',\n d: 'M 127.6 635 a 4.4 4.4 0 1 0 8.8 0 a 4.4 4.4 0 1 0 -8.8 0 Z',\n paint: 'skin',\n },\n {\n kind: 'path',\n d: 'M 134.2 635 L 136.2 635 M 133.1 636.9 L 134.1 638.6 M 130.9 636.9 L 129.9 638.6 M 129.8 635 L 127.8 635 M 130.9 633.1 L 129.9 631.4 M 133.1 633.1 L 134.1 631.4',\n paint: 'context',\n },\n ],\n regions: [\n {\n id: 'fallopian-tube-r',\n labelKey: 'fallopianTube',\n side: 'right',\n group: 'reproductive',\n tissue: 'mucosa',\n shape: {\n kind: 'path',\n d: 'M 216 108.5 C 212.8 106.4 203.2 105 197 103 C 190.8 101 185 99.1 179 96.6 C 173 94.1 167.2 91 161 88.2 C 154.8 85.4 148.3 82 142 79.8 C 135.7 77.6 129.3 75.5 123 75 C 116.8 74.5 110.2 75.1 104.5 77 C 98.8 78.9 93.3 82.7 89 86.5 C 84.7 90.3 81.2 95.8 78.5 100 C 75.8 104.3 73.9 108.4 73 112 C 72.1 115.6 74.6 119.3 73.3 121.4 C 71.9 123.5 66.5 123.8 65 124.8 C 63.5 125.7 63.9 126.4 64.1 127 C 64.4 127.5 64.9 128.1 66.3 128 C 67.6 127.9 71.9 125.9 72.4 126.2 C 72.9 126.5 69.7 128.9 69.1 129.9 C 68.6 130.8 68.7 131.6 69 132 C 69.4 132.4 70.1 132.7 71.2 132.3 C 72.3 131.9 75.4 128.8 75.6 129.4 C 75.8 130 72.7 134.4 72.2 135.9 C 71.8 137.4 72.4 137.9 72.9 138.2 C 73.4 138.5 74.2 138.7 75.3 137.7 C 76.3 136.7 78.7 132 79.2 132.2 C 79.7 132.5 78.1 137.8 78.2 139.3 C 78.2 140.9 79 141.2 79.6 141.4 C 80.2 141.5 81 141.5 81.7 140.1 C 82.4 138.8 83.2 133.6 83.7 133.3 C 84.3 133.1 84.5 137.6 85 138.8 C 85.5 139.9 86.3 140.2 86.9 140.1 C 87.4 140.1 88.1 139.7 88.4 138.4 C 88.6 137.1 87.8 132.6 88.3 132.4 C 88.8 132.2 90.4 136.3 91.2 137.3 C 92.1 138.2 92.9 138.2 93.4 138 C 93.9 137.7 94.4 137.1 94.2 135.9 C 94.1 134.6 91.7 130.5 92.3 130.4 C 93 130.4 96.5 134.6 97.8 135.5 C 99.2 136.3 99.9 135.8 100.3 135.4 C 100.7 135 101.2 134.3 100.4 133 C 99.7 131.7 95.7 128 96 127.6 C 96.3 127.1 100.9 129.9 102.3 130.2 C 103.7 130.5 104.3 129.9 104.6 129.4 C 104.9 128.9 105.5 128.2 104 127.1 C 102.4 125.9 96.5 124.8 95.4 122.6 C 94.4 120.3 96.7 116.9 97.5 113.5 C 98.3 110.1 98.3 105.3 100 102 C 101.7 98.8 103.7 96 107.5 94 C 111.3 92 117.3 90.2 123 90 C 128.8 89.8 135.7 91.6 142 93 C 148.3 94.4 154.8 96.5 161 98.6 C 167.2 100.7 173 103.4 179 105.4 C 185 107.4 190.8 109.1 197 110.8 C 203.2 112.5 212.8 115.9 216 115.5 C 219.2 115.1 219.2 110.6 216 108.5 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 207 111.6 C 202.5 109.9 187.8 104.4 180 101.4 C 172.2 98.4 166.7 95.9 160 93.4 C 153.3 90.9 146.5 88.1 140 86.4 C 133.5 84.7 126.9 83.1 121 83 C 115.1 82.9 109.3 83.9 104.5 86 C 99.8 88.1 95.5 92.1 92.5 95.5 C 89.5 98.9 87.5 104.7 86.5 106.5',\n paint: 'lumen',\n },\n {\n kind: 'path',\n d: 'M 129 80.5 Q 131.5 84.5 129 89 M 117 80.5 Q 120 85 117 89.5 M 105.5 82.5 Q 109 86.5 106.5 91.5 M 95.5 90 Q 100 93 98.5 99',\n paint: 'fine',\n },\n ],\n hitShape: {\n kind: 'path',\n d: 'M 216.7 103.4 C 215.3 101.4 211.5 101.8 208 100.7 C 204.5 99.6 199.8 98.2 195.7 96.8 C 191.6 95.5 187.2 94.2 183.2 92.6 C 179.1 90.9 175.5 88.9 171.4 86.9 C 167.3 84.9 162.9 82.4 158.4 80.5 C 154 78.5 149.4 76.7 144.8 75.4 C 140.1 74 135.4 73 130.5 72.2 C 125.6 71.5 120.6 70.4 115.3 70.8 C 110 71.2 103.9 72.1 98.9 74.7 C 93.9 77.2 89 82 85.2 86.2 C 81.4 90.4 78.5 96 75.9 99.7 C 73.4 103.4 69.4 103.5 69.8 108.5 C 70.1 113.5 73.1 127.2 78.2 129.7 C 83.3 132.2 96.1 126.2 100.2 123.5 C 104.4 120.9 102 117.4 103.2 113.8 C 104.4 110.2 106.2 105.1 107.5 102 C 108.8 98.9 109.6 96.6 111.1 95.3 C 112.7 94 114.1 94.2 116.8 94.1 C 119.5 94 123.7 94.2 127.4 94.7 C 131.2 95.1 135.3 95.8 139.2 96.6 C 143.2 97.5 147 98.4 151.1 99.8 C 155.1 101.1 159.5 103 163.8 104.7 C 168.1 106.3 172.4 107.9 176.8 109.4 C 181.2 111 185.8 112.5 190.1 113.9 C 194.4 115.3 199.1 116.8 202.6 117.9 C 206.2 119 209 121.4 211.3 120.6 C 213.6 119.7 215.7 115.7 216.6 112.8 C 217.5 109.9 218.1 105.4 216.7 103.4 Z',\n },\n marker: { x: 141, y: 86 },\n },\n {\n id: 'fallopian-tube-l',\n labelKey: 'fallopianTube',\n side: 'left',\n group: 'reproductive',\n tissue: 'mucosa',\n shape: {\n kind: 'path',\n d: 'M 304 108.5 C 307.2 106.4 316.8 105 323 103 C 329.2 101 335 99.1 341 96.6 C 347 94.1 352.8 91 359 88.2 C 365.2 85.4 371.7 82 378 79.8 C 384.3 77.6 390.7 75.5 397 75 C 403.2 74.5 409.8 75.1 415.5 77 C 421.2 78.9 426.7 82.7 431 86.5 C 435.3 90.3 438.8 95.8 441.5 100 C 444.2 104.3 446.1 108.4 447 112 C 447.9 115.6 445.4 119.3 446.7 121.4 C 448.1 123.5 453.5 123.8 455 124.8 C 456.5 125.7 456.1 126.4 455.9 127 C 455.6 127.5 455.1 128.1 453.7 128 C 452.4 127.9 448.1 125.9 447.6 126.2 C 447.1 126.5 450.3 128.9 450.9 129.9 C 451.4 130.8 451.3 131.6 451 132 C 450.6 132.4 449.9 132.7 448.8 132.3 C 447.7 131.9 444.6 128.8 444.4 129.4 C 444.2 130 447.3 134.4 447.8 135.9 C 448.2 137.4 447.6 137.9 447.1 138.2 C 446.6 138.5 445.8 138.7 444.7 137.7 C 443.7 136.7 441.3 132 440.8 132.2 C 440.3 132.5 441.9 137.8 441.8 139.3 C 441.8 140.9 441 141.2 440.4 141.4 C 439.8 141.5 439 141.5 438.3 140.1 C 437.6 138.8 436.8 133.6 436.3 133.3 C 435.7 133.1 435.5 137.6 435 138.8 C 434.5 139.9 433.7 140.2 433.1 140.1 C 432.6 140.1 431.9 139.7 431.6 138.4 C 431.4 137.1 432.2 132.6 431.7 132.4 C 431.2 132.2 429.6 136.3 428.8 137.3 C 427.9 138.2 427.1 138.2 426.6 138 C 426.1 137.7 425.6 137.1 425.8 135.9 C 425.9 134.6 428.3 130.5 427.7 130.4 C 427 130.4 423.5 134.6 422.2 135.5 C 420.8 136.3 420.1 135.8 419.7 135.4 C 419.3 135 418.8 134.3 419.6 133 C 420.3 131.7 424.3 128 424 127.6 C 423.7 127.1 419.1 129.9 417.7 130.2 C 416.3 130.5 415.7 129.9 415.4 129.4 C 415.1 128.9 414.5 128.2 416 127.1 C 417.6 125.9 423.5 124.8 424.6 122.6 C 425.6 120.3 423.3 116.9 422.5 113.5 C 421.7 110.1 421.7 105.3 420 102 C 418.3 98.8 416.3 96 412.5 94 C 408.7 92 402.7 90.2 397 90 C 391.2 89.8 384.3 91.6 378 93 C 371.7 94.4 365.2 96.5 359 98.6 C 352.8 100.7 347 103.4 341 105.4 C 335 107.4 329.2 109.1 323 110.8 C 316.8 112.5 307.2 115.9 304 115.5 C 300.8 115.1 300.8 110.6 304 108.5 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 313 111.6 C 317.5 109.9 332.2 104.4 340 101.4 C 347.8 98.4 353.3 95.9 360 93.4 C 366.7 90.9 373.5 88.1 380 86.4 C 386.5 84.7 393.1 83.1 399 83 C 404.9 82.9 410.7 83.9 415.5 86 C 420.2 88.1 424.5 92.1 427.5 95.5 C 430.5 98.9 432.5 104.7 433.5 106.5',\n paint: 'lumen',\n },\n {\n kind: 'path',\n d: 'M 391 80.5 Q 388.5 84.5 391 89 M 403 80.5 Q 400 85 403 89.5 M 414.5 82.5 Q 411 86.5 413.5 91.5 M 424.5 90 Q 420 93 421.5 99',\n paint: 'fine',\n },\n ],\n hitShape: {\n kind: 'path',\n d: 'M 303.3 103.4 C 304.7 101.4 308.5 101.8 312 100.7 C 315.5 99.6 320.2 98.2 324.3 96.8 C 328.4 95.5 332.8 94.2 336.8 92.6 C 340.9 90.9 344.5 88.9 348.6 86.9 C 352.7 84.9 357.1 82.4 361.6 80.5 C 366 78.5 370.6 76.7 375.2 75.4 C 379.9 74 384.6 73 389.5 72.2 C 394.4 71.5 399.4 70.4 404.7 70.8 C 410 71.2 416.1 72.1 421.1 74.7 C 426.1 77.2 431 82 434.8 86.2 C 438.6 90.4 441.5 96 444.1 99.7 C 446.6 103.4 450.6 103.5 450.2 108.5 C 449.9 113.5 446.9 127.2 441.8 129.7 C 436.7 132.2 423.9 126.2 419.8 123.5 C 415.6 120.9 418 117.4 416.8 113.8 C 415.6 110.2 413.8 105.1 412.5 102 C 411.2 98.9 410.4 96.6 408.9 95.3 C 407.3 94 405.9 94.2 403.2 94.1 C 400.5 94 396.3 94.2 392.6 94.7 C 388.8 95.1 384.7 95.8 380.8 96.6 C 376.8 97.5 373 98.4 368.9 99.8 C 364.9 101.1 360.5 103 356.2 104.7 C 351.9 106.3 347.6 107.9 343.2 109.4 C 338.8 111 334.2 112.5 329.9 113.9 C 325.6 115.3 320.9 116.8 317.4 117.9 C 313.8 119 311 121.4 308.7 120.6 C 306.4 119.7 304.3 115.7 303.4 112.8 C 302.5 109.9 301.9 105.4 303.3 103.4 Z',\n },\n marker: { x: 379, y: 86 },\n },\n {\n id: 'ovary-r',\n labelKey: 'ovary',\n side: 'right',\n group: 'reproductive',\n tissue: 'gonad',\n shape: {\n kind: 'path',\n d: 'M 146.8 173.2 C 146.3 175.3 145.3 177.7 143.4 179.1 C 141.5 180.4 138.4 181.1 135.6 181.5 C 132.9 182 129.8 181.9 126.8 181.8 C 123.7 181.6 120.4 181.5 117.2 180.5 C 114 179.6 110.4 177.9 107.6 176.1 C 104.8 174.2 102.4 171.8 100.2 169.6 C 97.9 167.5 95.7 165.3 94 163.1 C 92.3 160.9 90.4 158.4 90 156.4 C 89.5 154.3 90.2 152.4 91.2 150.8 C 92.1 149.2 93.9 148 95.6 146.8 C 97.3 145.6 99 144.2 101.4 143.5 C 103.9 142.7 107.1 142.3 110.3 142.4 C 113.5 142.6 117.2 143.7 120.5 144.7 C 123.8 145.6 127 146.7 130.2 148 C 133.3 149.3 136.9 150.8 139.3 152.7 C 141.8 154.6 143.8 157.2 145.1 159.5 C 146.3 161.7 146.4 164.1 146.7 166.4 C 147 168.7 147.4 171.1 146.8 173.2 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 99.1 155 a 6.4 6.4 0 1 0 12.8 0 a 6.4 6.4 0 1 0 -12.8 0 Z',\n paint: 'follicle',\n },\n {\n kind: 'path',\n d: 'M 117 168.5 a 4.5 4.5 0 1 0 9 0 a 4.5 4.5 0 1 0 -9 0 Z',\n paint: 'follicle',\n },\n {\n kind: 'path',\n d: 'M 130.1 158 a 3.4 3.4 0 1 0 6.8 0 a 3.4 3.4 0 1 0 -6.8 0 Z',\n paint: 'follicle',\n },\n {\n kind: 'path',\n d: 'M 108.6 168.5 a 2.9 2.9 0 1 0 5.8 0 a 2.9 2.9 0 1 0 -5.8 0 Z',\n paint: 'follicle',\n },\n {\n kind: 'path',\n d: 'M 124 151.5 a 2.5 2.5 0 1 0 5 0 a 2.5 2.5 0 1 0 -5 0 Z',\n paint: 'follicle',\n },\n { kind: 'path', d: 'M 98 167 Q 110 177 126 176', paint: 'fine' },\n ],\n marker: { x: 119, y: 162 },\n },\n {\n id: 'ovary-l',\n labelKey: 'ovary',\n side: 'left',\n group: 'reproductive',\n tissue: 'gonad',\n shape: {\n kind: 'path',\n d: 'M 373.2 173.2 C 373.7 175.3 374.7 177.7 376.6 179.1 C 378.5 180.4 381.6 181.1 384.4 181.5 C 387.1 182 390.2 181.9 393.2 181.8 C 396.3 181.6 399.6 181.5 402.8 180.5 C 406 179.6 409.6 177.9 412.4 176.1 C 415.2 174.2 417.6 171.8 419.8 169.6 C 422.1 167.5 424.3 165.3 426 163.1 C 427.7 160.9 429.6 158.4 430 156.4 C 430.5 154.3 429.8 152.4 428.8 150.8 C 427.9 149.2 426.1 148 424.4 146.8 C 422.7 145.6 421 144.2 418.6 143.5 C 416.1 142.7 412.9 142.3 409.7 142.4 C 406.5 142.6 402.8 143.7 399.5 144.7 C 396.2 145.6 393 146.7 389.8 148 C 386.7 149.3 383.1 150.8 380.7 152.7 C 378.2 154.6 376.2 157.2 374.9 159.5 C 373.7 161.7 373.6 164.1 373.3 166.4 C 373 168.7 372.6 171.1 373.2 173.2 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 420.9 155 a 6.4 6.4 0 1 1 -12.8 0 a 6.4 6.4 0 1 1 12.8 0 Z',\n paint: 'follicle',\n },\n {\n kind: 'path',\n d: 'M 403 168.5 a 4.5 4.5 0 1 1 -9 0 a 4.5 4.5 0 1 1 9 0 Z',\n paint: 'follicle',\n },\n {\n kind: 'path',\n d: 'M 389.9 158 a 3.4 3.4 0 1 1 -6.8 0 a 3.4 3.4 0 1 1 6.8 0 Z',\n paint: 'follicle',\n },\n {\n kind: 'path',\n d: 'M 411.4 168.5 a 2.9 2.9 0 1 1 -5.8 0 a 2.9 2.9 0 1 1 5.8 0 Z',\n paint: 'follicle',\n },\n {\n kind: 'path',\n d: 'M 396 151.5 a 2.5 2.5 0 1 1 -5 0 a 2.5 2.5 0 1 1 5 0 Z',\n paint: 'follicle',\n },\n { kind: 'path', d: 'M 422 167 Q 410 177 394 176', paint: 'fine' },\n ],\n marker: { x: 401, y: 162 },\n },\n {\n id: 'vagina',\n labelKey: 'vagina',\n side: 'midline',\n group: 'reproductive',\n tissue: 'muscle',\n shape: {\n kind: 'path',\n d: 'M 218 250 C 216.5 238 226 229.5 240 229.5 L 280 229.5 C 294 229.5 303.5 238 302 250 C 300.5 272 295.5 296 293.5 320 C 292 338 292.5 352 287 360 C 279 368 241 368 233 360 C 227.5 352 228 338 226.5 320 C 224.5 296 219.5 272 218 250 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 228 256 C 227 245 232.5 240 238.5 244.5 L 281.5 244.5 C 287.5 240 293 245 292 256 C 290.5 276 286.5 298 285 320 C 284 336 284 346 280 352 C 274 357.5 246 357.5 240 352 C 236 346 236 336 235 320 C 233.5 298 229.5 276 228 256 Z',\n paint: 'mucosa',\n },\n {\n kind: 'path',\n d: 'M 232.6 270 Q 239.6 267 247.1 270.5 M 287.5 270 Q 280.5 267 273 270.5 M 233.3 279.5 Q 240.3 276.5 247.8 280 M 286.7 279.5 Q 279.7 276.5 272.2 280 M 234 289 Q 241 286 248.5 289.5 M 286 289 Q 279 286 271.5 289.5 M 234.7 298.5 Q 241.7 295.5 249.2 299 M 285.3 298.5 Q 278.3 295.5 270.8 299 M 235.4 308 Q 242.4 305 249.9 308.5 M 284.6 308 Q 277.6 305 270.1 308.5 M 236.1 317.5 Q 243.1 314.5 250.6 318 M 283.9 317.5 Q 276.9 314.5 269.4 318 M 236.8 327 Q 243.8 324 251.3 327.5 M 283.2 327 Q 276.2 324 268.7 327.5 M 237.5 336.5 Q 244.5 333.5 252 337 M 282.5 336.5 Q 275.5 333.5 268 337 M 238.3 346 Q 245.3 343 252.8 346.5 M 281.8 346 Q 274.8 343 267.3 346.5',\n paint: 'fine',\n },\n { kind: 'path', d: 'M 260 268 L 260 352', paint: 'lumen' },\n ],\n marker: { x: 260, y: 318 },\n },\n {\n id: 'cervix',\n labelKey: 'cervix',\n side: 'midline',\n group: 'reproductive',\n tissue: 'muscle',\n shape: {\n kind: 'path',\n d: 'M 238 204 C 250 207 270 207 282 204 C 285 216 286 230 284.5 242 C 282.5 254 274 261.5 260 262.5 C 246 261.5 237.5 254 235.5 242 C 234 230 235 216 238 204 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 260 207 C 255.8 219 255 233 256.2 245 C 257 252.5 258.5 257.5 260 261 C 261.5 257.5 263 252.5 263.8 245 C 265 233 264.2 219 260 207 Z',\n paint: 'mucosa',\n },\n {\n kind: 'path',\n d: 'M 257.2 216 L 251.5 211.5 M 262.8 216 L 268.5 211.5 M 256.6 227 L 250.5 222.5 M 263.4 227 L 269.5 222.5 M 256.6 238 L 251 234 M 263.4 238 L 269 234 M 257.2 248 L 252.5 245 M 262.8 248 L 267.5 245',\n paint: 'fine',\n },\n {\n kind: 'path',\n d: 'M 264.6 261.4 C 264.6 261.7 264.4 262 264 262.3 C 263.6 262.6 263 262.8 262.3 263 C 261.6 263.1 260.8 263.2 260 263.2 C 259.2 263.2 258.4 263.1 257.7 263 C 257 262.8 256.4 262.6 256 262.3 C 255.6 262 255.4 261.7 255.4 261.4 C 255.4 261.1 255.6 260.8 256 260.5 C 256.4 260.2 257 260 257.7 259.8 C 258.4 259.7 259.2 259.6 260 259.6 C 260.8 259.6 261.6 259.7 262.3 259.8 C 263 260 263.6 260.2 264 260.5 C 264.4 260.8 264.6 261.1 264.6 261.4 Z',\n paint: 'cavity',\n },\n ],\n marker: { x: 260, y: 232 },\n },\n {\n id: 'uterus',\n labelKey: 'uterus',\n side: 'midline',\n group: 'reproductive',\n tissue: 'muscle',\n shape: {\n kind: 'path',\n d: 'M 238 204 C 229 195 219 181 214.5 163 C 210.5 147 208.5 131 209.5 117 C 211 100 230 86 260 86 C 290 86 309 100 310.5 117 C 311.5 131 309.5 147 305.5 163 C 301 181 291 195 282 204 C 270 207 250 207 238 204 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 219 120 C 216.5 146 225 174 242 198 M 301 120 C 303.5 146 295 174 278 198 M 226 100 C 244 92 276 92 294 100 M 214.5 132 C 213 152 219 172 230 189 M 305.5 132 C 307 152 301 172 290 189',\n paint: 'fine',\n },\n {\n kind: 'path',\n d: 'M 223 110 C 238 118 282 118 297 110 C 295 128 285 150 275 170 C 270 181 266 192 264 201 L 256 201 C 254 192 250 181 245 170 C 235 150 225 128 223 110 Z',\n paint: 'mucosa',\n },\n {\n kind: 'path',\n d: 'M 236 118.5 C 250 123.5 270 123.5 284 118.5 C 280 134 272 150 266.5 165 C 263.5 175 261.5 186 261 194.5 L 259 194.5 C 258.5 186 256.5 175 253.5 165 C 248 150 240 134 236 118.5 Z',\n paint: 'cavity',\n },\n ],\n marker: { x: 260, y: 146 },\n },\n {\n id: 'vulva',\n labelKey: 'vulva',\n side: 'midline',\n group: 'reproductive',\n tissue: 'skin',\n shape: {\n kind: 'path',\n d: 'M 132 457 C 160 457 183.5 470 186.5 493 C 189.5 517 183.5 548 169.5 576 C 160.5 594 149.5 606 139.5 612 Q 132 616 124.5 612 C 114.5 606 103.5 594 94.5 576 C 80.5 548 74.5 517 77.5 493 C 80.5 470 104 457 132 457 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 97 486 C 113 478.5 151 478.5 167 486',\n paint: 'fine',\n },\n {\n kind: 'path',\n d: 'M 96 509 C 92.5 537 98.5 566 113 589',\n paint: 'fine',\n },\n {\n kind: 'path',\n d: 'M 168 509 C 171.5 537 165.5 566 151 589',\n paint: 'fine',\n },\n {\n kind: 'path',\n d: 'M 128.5 490 C 113 503 106 529 106.5 557 C 107 583 116.5 600 129 609',\n paint: 'crease',\n },\n {\n kind: 'path',\n d: 'M 135.5 490 C 151 503 158 529 157.5 557 C 157 583 147.5 600 135 609',\n paint: 'crease',\n },\n {\n kind: 'path',\n d: 'M 132 496.5 C 134.5 496.5 137.3 497.7 139.5 499.5 C 141.8 501.3 144 504.2 145.5 507.5 C 147 510.8 148 515.4 148.5 519.5 C 149 523.6 148.8 528 148.6 532 C 148.4 536 147.1 539.6 147.2 543.5 C 147.3 547.4 148.9 551.4 149.3 555.5 C 149.7 559.6 150.1 563.9 149.8 568 C 149.5 572.1 148.3 576.3 147.6 580 C 146.9 583.8 146.6 587.4 145.4 590.5 C 144.2 593.6 142.2 596.3 140.4 598.5 C 138.6 600.8 136.2 602.9 134.8 604 C 133.4 605.1 133 605.3 132 605.3 C 131 605.3 130.5 605 129 603.8 C 127.6 602.6 125.1 600.5 123.3 598.2 C 121.5 595.9 119.6 593.1 118.4 590 C 117.2 586.9 116.9 583.3 116.2 579.6 C 115.6 575.9 114.7 571.6 114.5 567.6 C 114.3 563.6 114.8 559.7 115.2 555.6 C 115.6 551.5 117 547.2 117.1 543.2 C 117.2 539.2 115.8 535.8 115.6 531.8 C 115.4 527.8 115.3 523.5 115.9 519.4 C 116.5 515.3 117.5 510.7 119 507.4 C 120.5 504.1 122.6 501.4 124.8 499.6 C 127 497.8 129.6 496.5 132 496.5 Z',\n paint: 'mucosa',\n },\n {\n kind: 'path',\n d: 'M 119.5 524 C 118 543 121 563 120 584',\n paint: 'fine',\n },\n {\n kind: 'path',\n d: 'M 144.5 524 C 146 543 143 563 144 584',\n paint: 'fine',\n },\n {\n kind: 'path',\n d: 'M 132 516.5 C 133.5 516.5 135.3 519.6 136.4 522.6 C 137.5 525.6 138.2 530.3 138.8 534.6 C 139.5 538.9 139.8 544.1 140.3 548.6 C 140.8 553.1 141.6 557.3 141.7 561.8 C 141.8 566.3 141.5 571.6 140.8 575.8 C 140.1 580 139 584 137.5 586.8 C 136 589.6 133.8 592.5 132 592.5 C 130.2 592.5 128 589.6 126.5 586.8 C 125 584 123.9 580 123.2 575.8 C 122.5 571.6 122.2 566.3 122.3 561.8 C 122.4 557.3 123.2 553.1 123.7 548.6 C 124.2 544.1 124.6 538.9 125.2 534.6 C 125.9 530.3 126.5 525.6 127.6 522.6 C 128.7 519.6 130.5 516.5 132 516.5 Z',\n paint: 'muscle',\n },\n {\n kind: 'path',\n d: 'M 120.5 510 C 120 508.7 119.9 503.1 121.8 500.5 C 123.7 497.9 128.6 494.6 132 494.6 C 135.4 494.6 140.3 497.9 142.2 500.5 C 144.1 503.1 144 508.7 143.5 510 C 143 511.3 140.9 508.8 139 508.2 C 137.1 507.6 134.3 506.6 132 506.6 C 129.7 506.6 126.9 507.6 125 508.2 C 123.1 508.8 121 511.3 120.5 510 Z',\n paint: 'mucosa',\n },\n {\n kind: 'path',\n d: 'M 129 511 a 3 3 0 1 0 6 0 a 3 3 0 1 0 -6 0 Z',\n paint: 'erectile',\n },\n {\n kind: 'path',\n d: 'M 128.2 514.8 Q 130 518.6 132 519.6 M 135.8 514.8 Q 134 518.6 132 519.6',\n paint: 'fine',\n },\n {\n kind: 'path',\n d: 'M 132 536.5 C 131.7 536.5 131.4 536.3 131.2 536.1 C 130.9 535.8 130.7 535.4 130.5 535 C 130.4 534.6 130.3 534 130.3 533.5 C 130.3 533 130.4 532.4 130.5 532 C 130.7 531.6 130.9 531.2 131.2 530.9 C 131.4 530.7 131.7 530.5 132 530.5 C 132.3 530.5 132.6 530.7 132.9 530.9 C 133.1 531.2 133.3 531.6 133.5 532 C 133.6 532.4 133.7 533 133.7 533.5 C 133.7 534 133.6 534.6 133.5 535 C 133.3 535.4 133.1 535.8 132.9 536.1 C 132.6 536.3 132.3 536.5 132 536.5 Z',\n paint: 'cavity',\n },\n {\n kind: 'path',\n d: 'M 132 577.5 C 131.1 577.5 130.1 577.2 129.2 576.7 C 128.4 576.3 127.5 575.5 126.9 574.6 C 126.2 573.7 125.6 572.5 125.2 571.3 C 124.8 570 124.5 568.6 124.4 567.2 C 124.3 565.8 124.4 564.2 124.6 562.8 C 124.8 561.4 125.2 560 125.6 558.8 C 126.1 557.5 126.7 556.3 127.4 555.4 C 128 554.5 128.8 553.7 129.6 553.3 C 130.3 552.8 131.2 552.5 132 552.5 C 132.8 552.5 133.7 552.8 134.4 553.3 C 135.2 553.7 136 554.5 136.6 555.4 C 137.3 556.3 137.9 557.5 138.4 558.8 C 138.8 560 139.2 561.4 139.4 562.8 C 139.6 564.2 139.7 565.8 139.6 567.2 C 139.5 568.6 139.2 570 138.8 571.3 C 138.4 572.5 137.8 573.7 137.1 574.6 C 136.5 575.5 135.6 576.3 134.8 576.7 C 133.9 577.2 132.9 577.5 132 577.5 Z',\n paint: 'opening',\n },\n {\n kind: 'path',\n d: 'M 126.2 555 Q 123.8 557.6 125 560.6 M 124.6 567 Q 123.6 570.4 125.8 573.6 M 137.8 555 Q 140.2 557.6 139 560.6 M 139.4 567 Q 140.4 570.4 138.2 573.6',\n paint: 'fine',\n },\n ],\n marker: { x: 132, y: 476 },\n },\n {\n id: 'bladder',\n labelKey: 'bladder',\n side: 'midline',\n group: 'reproductive',\n tissue: 'urinary',\n shape: {\n kind: 'path',\n d: 'M 388 462 C 421 462 447 476 449 506 C 451 536 436 561 413 577 C 404 583 398 589 397 595 L 379 595 C 378 589 372 583 363 577 C 340 561 325 536 327 506 C 329 476 355 462 388 462 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 388 472 C 415 472 437 484 438.5 508 C 440 532 427 552.5 408 567 C 400 573 394.5 579 391.5 586 L 384.5 586 C 381.5 579 376 573 368 567 C 349 552.5 336 532 337.5 508 C 339 484 361 472 388 472 Z',\n paint: 'gonad',\n },\n {\n kind: 'path',\n d: 'M 351 495 C 365 487 379 493 388 486 C 397 493 411 487 425 495 M 344.5 513 C 359.5 506 373.5 513 388 506 C 402.5 513 416.5 506 431.5 513 M 347 531 C 358 526 367 531.5 375 529 M 429 531 C 418 526 409 531.5 401 529',\n paint: 'fine',\n },\n {\n kind: 'path',\n d: 'M 362 539 L 414 539 L 388 580 Z',\n paint: 'trigone',\n },\n {\n kind: 'path',\n d: 'M 365.3 537.5 C 365.4 537.8 365.4 538.3 365.3 538.7 C 365.2 539.1 364.8 539.6 364.4 540 C 364 540.4 363.5 540.7 362.9 541 C 362.4 541.2 361.7 541.4 361.2 541.5 C 360.6 541.5 360 541.5 359.6 541.3 C 359.2 541.2 358.9 540.9 358.7 540.5 C 358.6 540.2 358.6 539.7 358.7 539.3 C 358.8 538.9 359.2 538.4 359.6 538 C 360 537.6 360.5 537.3 361.1 537 C 361.6 536.8 362.3 536.6 362.8 536.5 C 363.4 536.5 364 536.5 364.4 536.7 C 364.8 536.8 365.1 537.1 365.3 537.5 Z',\n paint: 'cavity',\n },\n {\n kind: 'path',\n d: 'M 417.3 540.5 C 417.1 540.9 416.8 541.2 416.4 541.3 C 416 541.5 415.4 541.5 414.8 541.5 C 414.3 541.4 413.6 541.2 413.1 541 C 412.5 540.7 412 540.4 411.6 540 C 411.2 539.6 410.8 539.1 410.7 538.7 C 410.6 538.3 410.6 537.8 410.7 537.5 C 410.9 537.1 411.2 536.8 411.6 536.7 C 412 536.5 412.6 536.5 413.2 536.5 C 413.7 536.6 414.4 536.8 414.9 537 C 415.5 537.3 416 537.6 416.4 538 C 416.8 538.4 417.2 538.9 417.3 539.3 C 417.4 539.7 417.4 540.2 417.3 540.5 Z',\n paint: 'cavity',\n },\n ],\n marker: { x: 388, y: 512 },\n },\n {\n id: 'urethra',\n labelKey: 'urethra',\n side: 'midline',\n group: 'reproductive',\n tissue: 'urinary',\n shape: {\n kind: 'path',\n d: 'M 380 594 L 396 594 C 396.5 610 395.5 626 393.5 640 Q 388 645 382.5 640 C 380.5 626 379.5 610 380 594 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 388 597 C 387.6 612 387.8 626 388 641',\n paint: 'lumen',\n },\n {\n kind: 'path',\n d: 'M 380.3 614 Q 388 617 395.7 614 M 380.6 622 Q 388 625 395.3 622',\n paint: 'fine',\n },\n ],\n hitShape: {\n kind: 'path',\n d: 'M 372 596 L 404 596 L 402 646 L 374 646 Z',\n },\n marker: { x: 388, y: 618 },\n },\n ],\n};\n","import type { OrganArt } from './muscle-scheme-data';\n\n// Male pelvic organs: an original frontal cutaway, informed by the NCI SEER and\n// NIDDK references in MUSCLE-ASSETS.md (no artwork traced). The bladder is\n// opened to show the trigone and ureteric orifices; the seminal vesicles show\n// beyond its base; the urethra runs continuously from the bladder neck through\n// the prostate (with the ejaculatory ducts) and the penis (between the corpora\n// cavernosa) to the meatus. The scrotum is opened to show each testis in its\n// tunica, capped by the epididymis; each vas deferens rises in the spermatic\n// cord and passes behind the bladder (dashed: hidden course, not a target).\n// Paired structures are separate regions. Anatomical right is on the viewer's\n// left. Not to scale. Generated by scripts/anatomy-art/build-organs.mjs from\n// male-pelvis.mjs: edit the source there and regenerate.\n\nexport const MALE_PELVIS: OrganArt = {\n viewBox: '0 0 520 596',\n plates: [{ x: 6, y: 10, w: 508, h: 580 }],\n backdrop: [\n {\n kind: 'path',\n d: 'M 173.6 28.5 C 173 29.8 174 32.5 174.3 35.2 C 174.6 37.9 174.9 41.7 175.3 44.9 C 175.7 48.1 176.1 51.5 176.5 54.7 C 177 57.8 177.5 60.6 178 63.5 C 178.5 66.5 179 69.5 179.6 72.4 C 180.2 75.3 180.9 78.2 181.5 81.1 C 182.2 83.9 182.9 86.6 183.6 89.3 C 184.3 92.1 185.1 94.7 185.9 97.4 C 186.8 100.2 187.6 102.8 188.7 105.7 C 189.8 108.5 191.2 111.8 192.6 114.8 C 193.9 117.8 195.6 121.2 196.8 123.8 C 198.1 126.3 198.6 129.2 199.9 130 C 201.1 130.8 203 129.5 204.4 128.8 C 205.8 128.2 208 127.5 208.1 126 C 208.3 124.5 206.3 122.3 205.2 119.8 C 204 117.3 202.3 113.9 201 111 C 199.7 108.1 198.3 105.1 197.3 102.3 C 196.2 99.6 195.5 97.3 194.7 94.7 C 193.9 92.1 193.2 89.6 192.5 87 C 191.8 84.3 191.1 81.7 190.5 78.9 C 189.8 76.2 189.2 73.4 188.6 70.6 C 188 67.7 187.4 64.8 186.9 61.9 C 186.4 59.1 185.9 56.4 185.5 53.3 C 185 50.3 184.6 47 184.2 43.8 C 183.8 40.7 183.4 37 183.1 34.3 C 182.8 31.6 183.2 28.7 182.4 27.5 C 181.5 26.4 179.4 27.2 177.9 27.3 C 176.5 27.5 174.2 27.1 173.6 28.5 Z',\n paint: 'urinary',\n },\n {\n kind: 'path',\n d: 'M 346.4 28.5 C 347 29.8 346 32.5 345.7 35.2 C 345.4 37.9 345.1 41.7 344.7 44.9 C 344.3 48.1 343.9 51.5 343.5 54.7 C 343 57.8 342.5 60.6 342 63.5 C 341.5 66.5 341 69.5 340.4 72.4 C 339.8 75.3 339.1 78.2 338.5 81.1 C 337.8 83.9 337.1 86.6 336.4 89.3 C 335.7 92.1 334.9 94.7 334.1 97.4 C 333.2 100.2 332.4 102.8 331.3 105.7 C 330.2 108.5 328.8 111.8 327.4 114.8 C 326.1 117.8 324.4 121.2 323.2 123.8 C 321.9 126.3 321.4 129.2 320.1 130 C 318.9 130.8 317 129.5 315.6 128.8 C 314.2 128.2 312 127.5 311.9 126 C 311.7 124.5 313.7 122.3 314.8 119.8 C 316 117.3 317.7 113.9 319 111 C 320.3 108.1 321.7 105.1 322.7 102.3 C 323.8 99.6 324.5 97.3 325.3 94.7 C 326.1 92.1 326.8 89.6 327.5 87 C 328.2 84.3 328.9 81.7 329.5 78.9 C 330.2 76.2 330.8 73.4 331.4 70.6 C 332 67.7 332.6 64.8 333.1 61.9 C 333.6 59.1 334.1 56.4 334.5 53.3 C 335 50.3 335.4 47 335.8 43.8 C 336.2 40.7 336.6 37 336.9 34.3 C 337.2 31.6 336.8 28.7 337.6 27.5 C 338.5 26.4 340.6 27.2 342.1 27.3 C 343.5 27.5 345.8 27.1 346.4 28.5 Z',\n paint: 'urinary',\n },\n {\n kind: 'path',\n d: 'M 214 284 C 236 280 284 280 306 284 L 306 293 C 284 289 236 289 214 293 Z',\n paint: 'membrane',\n },\n ],\n regions: [\n {\n id: 'seminal-vesicle-r',\n labelKey: 'seminalVesicle',\n side: 'right',\n group: 'reproductive',\n tissue: 'gland',\n shape: {\n kind: 'path',\n d: 'M 251.5 215.4 C 251.2 213.5 250.9 213.6 250.1 212.9 C 249.4 212.3 248.3 212 247.2 211.6 C 246.1 211.2 244.6 211.2 243.5 210.6 C 242.3 210 241.3 209.1 240.4 208.1 C 239.6 207.1 239.2 205.4 238.4 204.5 C 237.6 203.6 236.8 202.9 235.8 202.4 C 234.7 202 233.3 202.2 232.1 201.9 C 231 201.6 229.8 201.2 228.9 200.4 C 228 199.6 227.6 198.1 226.8 197 C 226.1 195.9 225.6 194.4 224.6 193.8 C 223.6 193.2 222.1 193.3 220.9 193.2 C 219.6 193.1 218.1 193.4 217 193.1 C 216 192.7 215.2 191.8 214.5 190.9 C 213.8 190 213.4 188.6 212.7 187.9 C 212 187.2 211.2 186.8 210.2 186.7 C 209.2 186.6 207.7 187.3 206.6 187.2 C 205.5 187.1 204.4 186.9 203.6 186.3 C 202.8 185.8 202.4 184.6 201.8 184 C 201.2 183.3 200.7 182.6 200 182.4 C 199.3 182.2 200 182.4 197.6 182.9 C 195.3 183.4 187.4 183 185.9 185.4 C 184.3 187.8 187.9 194.8 188.4 197.1 C 188.9 199.5 188.5 198.9 188.9 199.5 C 189.4 200 190.2 200.2 191.1 200.5 C 192 200.8 193.2 200.7 194.1 201.2 C 195 201.8 195.7 202.6 196.3 203.7 C 196.9 204.7 197.1 206.4 197.8 207.3 C 198.5 208.2 199.4 208.8 200.5 209.1 C 201.5 209.5 203 209.1 204.2 209.3 C 205.3 209.4 206.5 209.6 207.3 210.3 C 208.2 211 208.6 212.4 209.3 213.4 C 210 214.4 210.5 215.7 211.4 216.2 C 212.4 216.7 213.8 216.5 215 216.5 C 216.3 216.6 217.8 216.3 219 216.7 C 220.1 217.1 220.9 218.1 221.8 219 C 222.7 219.8 223.2 221.3 224.2 222 C 225.2 222.8 226.3 223.3 227.6 223.5 C 228.9 223.7 230.7 223.3 232 223.5 C 233.4 223.7 234.8 224.1 236 224.7 C 237.1 225.3 238 226.5 239 227.3 C 239.9 228 240.8 228.7 241.8 228.9 C 242.7 229.2 242.8 229.4 244.5 228.6 C 246.2 227.8 250.8 226.3 252 224.1 C 253.1 221.9 251.8 217.2 251.5 215.4 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 238 214 Q 232 206 226 212 M 224 206 Q 218 198 212 204 M 210 199 Q 205 192 199 196',\n paint: 'fine',\n },\n ],\n marker: { x: 206, y: 203 },\n },\n {\n id: 'seminal-vesicle-l',\n labelKey: 'seminalVesicle',\n side: 'left',\n group: 'reproductive',\n tissue: 'gland',\n shape: {\n kind: 'path',\n d: 'M 268.5 215.4 C 268.8 213.5 269.1 213.6 269.9 212.9 C 270.6 212.3 271.7 212 272.8 211.6 C 273.9 211.2 275.4 211.2 276.5 210.6 C 277.7 210 278.7 209.1 279.6 208.1 C 280.4 207.1 280.8 205.4 281.6 204.5 C 282.4 203.6 283.2 202.9 284.2 202.4 C 285.3 202 286.7 202.2 287.9 201.9 C 289 201.6 290.2 201.2 291.1 200.4 C 292 199.6 292.4 198.1 293.2 197 C 293.9 195.9 294.4 194.4 295.4 193.8 C 296.4 193.2 297.9 193.3 299.1 193.2 C 300.4 193.1 301.9 193.4 303 193.1 C 304 192.7 304.8 191.8 305.5 190.9 C 306.2 190 306.6 188.6 307.3 187.9 C 308 187.2 308.8 186.8 309.8 186.7 C 310.8 186.6 312.3 187.3 313.4 187.2 C 314.5 187.1 315.6 186.9 316.4 186.3 C 317.2 185.8 317.6 184.6 318.2 184 C 318.8 183.3 319.3 182.6 320 182.4 C 320.7 182.2 320 182.4 322.4 182.9 C 324.7 183.4 332.6 183 334.1 185.4 C 335.7 187.8 332.1 194.8 331.6 197.1 C 331.1 199.5 331.5 198.9 331.1 199.5 C 330.6 200 329.8 200.2 328.9 200.5 C 328 200.8 326.8 200.7 325.9 201.2 C 325 201.8 324.3 202.6 323.7 203.7 C 323.1 204.7 322.9 206.4 322.2 207.3 C 321.5 208.2 320.6 208.8 319.5 209.1 C 318.5 209.5 317 209.1 315.8 209.3 C 314.7 209.4 313.5 209.6 312.7 210.3 C 311.8 211 311.4 212.4 310.7 213.4 C 310 214.4 309.5 215.7 308.6 216.2 C 307.6 216.7 306.2 216.5 305 216.5 C 303.7 216.6 302.2 216.3 301 216.7 C 299.9 217.1 299.1 218.1 298.2 219 C 297.3 219.8 296.8 221.3 295.8 222 C 294.8 222.8 293.7 223.3 292.4 223.5 C 291.1 223.7 289.3 223.3 288 223.5 C 286.6 223.7 285.2 224.1 284 224.7 C 282.9 225.3 282 226.5 281 227.3 C 280.1 228 279.2 228.7 278.2 228.9 C 277.3 229.2 277.2 229.4 275.5 228.6 C 273.8 227.8 269.2 226.3 268 224.1 C 266.9 221.9 268.2 217.2 268.5 215.4 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 282 214 Q 288 206 294 212 M 296 206 Q 302 198 308 204 M 310 199 Q 315 192 321 196',\n paint: 'fine',\n },\n ],\n marker: { x: 314, y: 203 },\n },\n {\n id: 'bladder',\n labelKey: 'bladder',\n side: 'midline',\n group: 'reproductive',\n tissue: 'urinary',\n shape: {\n kind: 'path',\n d: 'M 260 66 C 304 66 337 90 339 128 C 341 160 324 186 298 200 C 286 206 278 211 274 220 L 246 220 C 242 211 234 206 222 200 C 196 186 179 160 181 128 C 183 90 216 66 260 66 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 260 77 C 298 77 327 97 328.5 129 C 330 157 315 179 293 191 C 282 197 274 203 270 211 L 250 211 C 246 203 238 197 227 191 C 205 179 190 157 191.5 129 C 193 97 222 77 260 77 Z',\n paint: 'gonad',\n },\n {\n kind: 'path',\n d: 'M 212 104 C 228 96 246 103 260 95 C 274 103 292 96 308 104 M 202 124 C 220 117 240 124 260 116 C 280 124 300 117 318 124 M 204 146 C 216 141 226 146 236 143 M 316 146 C 304 141 294 146 284 143',\n paint: 'fine',\n },\n {\n kind: 'path',\n d: 'M 233 170 L 287 170 L 260 207 Z',\n paint: 'trigone',\n },\n {\n kind: 'path',\n d: 'M 236.4 168.4 C 236.6 168.7 236.6 169.2 236.5 169.7 C 236.3 170.1 236 170.6 235.6 171 C 235.1 171.4 234.5 171.8 234 172.1 C 233.4 172.4 232.7 172.6 232.1 172.6 C 231.5 172.7 230.9 172.6 230.5 172.4 C 230.1 172.3 229.7 172 229.6 171.6 C 229.4 171.3 229.4 170.8 229.5 170.3 C 229.7 169.9 230 169.4 230.4 169 C 230.9 168.6 231.5 168.2 232 167.9 C 232.6 167.6 233.3 167.4 233.9 167.4 C 234.5 167.3 235.1 167.4 235.5 167.6 C 235.9 167.7 236.3 168 236.4 168.4 Z',\n paint: 'cavity',\n },\n {\n kind: 'path',\n d: 'M 290.4 171.6 C 290.3 172 289.9 172.3 289.5 172.4 C 289.1 172.6 288.5 172.7 287.9 172.6 C 287.3 172.6 286.6 172.4 286 172.1 C 285.5 171.8 284.9 171.4 284.4 171 C 284 170.6 283.7 170.1 283.5 169.7 C 283.4 169.2 283.4 168.7 283.6 168.4 C 283.7 168 284.1 167.7 284.5 167.6 C 284.9 167.4 285.5 167.3 286.1 167.4 C 286.7 167.4 287.4 167.6 288 167.9 C 288.5 168.2 289.1 168.6 289.6 169 C 290 169.4 290.3 169.9 290.5 170.3 C 290.6 170.8 290.6 171.3 290.4 171.6 Z',\n paint: 'cavity',\n },\n ],\n marker: { x: 260, y: 124 },\n },\n {\n id: 'prostate',\n labelKey: 'prostate',\n side: 'midline',\n group: 'reproductive',\n tissue: 'gland',\n shape: {\n kind: 'path',\n d: 'M 230 220 C 245 214 275 214 290 220 C 301 226 305 242 299 256 C 292 271 277 281 260 283 C 243 281 228 271 221 256 C 215 242 219 226 230 220 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 236 232 Q 230 244 236 258 M 284 232 Q 290 244 284 258 M 226 240 Q 228 252 238 266 M 294 240 Q 292 252 282 266 M 244 271 Q 252 276 260 277 Q 268 276 276 271',\n paint: 'fine',\n },\n {\n kind: 'path',\n d: 'M 244 222 C 249 232 253 242 257.5 252 M 276 222 C 271 232 267 242 262.5 252',\n paint: 'lumen',\n },\n {\n kind: 'path',\n d: 'M 260 257.2 C 259.6 257.2 259.1 257 258.8 256.8 C 258.5 256.5 258.1 256.1 257.9 255.6 C 257.7 255.1 257.6 254.5 257.6 254 C 257.6 253.5 257.7 252.9 257.9 252.4 C 258.1 251.9 258.5 251.5 258.8 251.2 C 259.1 251 259.6 250.8 260 250.8 C 260.4 250.8 260.9 251 261.2 251.2 C 261.5 251.5 261.9 251.9 262.1 252.4 C 262.3 252.9 262.4 253.5 262.4 254 C 262.4 254.5 262.3 255.1 262.1 255.6 C 261.9 256.1 261.5 256.5 261.2 256.8 C 260.9 257 260.4 257.2 260 257.2 Z',\n paint: 'mucosa',\n },\n ],\n marker: { x: 238, y: 247 },\n },\n {\n id: 'scrotum',\n labelKey: 'scrotum',\n side: 'midline',\n group: 'reproductive',\n tissue: 'skin',\n shape: {\n kind: 'path',\n d: 'M 200 344 C 224 336 296 336 320 344 C 352 358 370 402 370 452 C 370 508 348 552 312 558 C 293 561 276 555 260 546 C 244 555 227 561 208 558 C 172 552 150 508 150 452 C 150 402 168 358 200 344 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 205 355 C 227 348 293 348 315 355 C 343 368 359 407 359 452 C 359 502 340 540 310 546 C 293 549 277 543 260 535 C 243 543 227 549 210 546 C 180 540 161 502 161 452 C 161 407 177 368 205 355 Z',\n paint: 'fascia',\n },\n {\n kind: 'path',\n d: 'M 218.6 501.3 C 214.8 502 210.4 501.8 206.5 500.8 C 202.6 499.7 198.6 497.7 195.1 495 C 191.7 492.4 188.5 488.7 185.9 484.8 C 183.4 480.8 181.4 476 180 471.2 C 178.7 466.4 178 461.1 178 456.1 C 177.9 451.1 178.6 445.8 179.8 441.2 C 181 436.5 182.9 432 185.1 428.3 C 187.3 424.7 190.2 421.4 193.3 419.1 C 196.3 416.9 199.8 415.3 203.4 414.7 C 206.9 414 210.7 414.3 214.4 415.4 C 218 416.5 221.8 418.6 225.2 421.3 C 228.6 424 231.9 427.6 234.6 431.5 C 237.3 435.4 239.7 440.2 241.4 444.9 C 243.1 449.6 244.2 454.9 244.6 459.8 C 245 464.8 244.7 470 243.7 474.6 C 242.7 479.2 240.9 483.7 238.6 487.4 C 236.3 491 233.2 494.3 229.8 496.7 C 226.5 499 222.5 500.6 218.6 501.3 Z',\n paint: 'membrane',\n },\n {\n kind: 'path',\n d: 'M 301.4 501.3 C 305.2 502 309.6 501.8 313.5 500.8 C 317.4 499.7 321.4 497.7 324.9 495 C 328.3 492.4 331.5 488.7 334.1 484.8 C 336.6 480.8 338.6 476 340 471.2 C 341.3 466.4 342 461.1 342 456.1 C 342.1 451.1 341.4 445.8 340.2 441.2 C 339 436.5 337.1 432 334.9 428.3 C 332.7 424.7 329.8 421.4 326.7 419.1 C 323.7 416.9 320.2 415.3 316.6 414.7 C 313.1 414 309.3 414.3 305.6 415.4 C 302 416.5 298.2 418.6 294.8 421.3 C 291.4 424 288.1 427.6 285.4 431.5 C 282.7 435.4 280.3 440.2 278.6 444.9 C 276.9 449.6 275.8 454.9 275.4 459.8 C 275 464.8 275.3 470 276.3 474.6 C 277.3 479.2 279.1 483.7 281.4 487.4 C 283.7 491 286.8 494.3 290.2 496.7 C 293.5 499 297.5 500.6 301.4 501.3 Z',\n paint: 'membrane',\n },\n {\n kind: 'path',\n d: 'M 260 535 C 259 522 261 504 260 482',\n paint: 'crease',\n },\n {\n kind: 'path',\n d: 'M 170 512 Q 178 521 188 524 M 165 488 Q 170 497 178 501 M 186 533 Q 196 539 207 539 M 350 512 Q 342 521 332 524 M 355 488 Q 350 497 342 501 M 334 533 Q 324 539 313 539',\n paint: 'fine',\n },\n ],\n marker: { x: 260, y: 513 },\n },\n {\n id: 'vas-deferens-r',\n labelKey: 'vasDeferens',\n side: 'right',\n group: 'reproductive',\n tissue: 'duct',\n shape: {\n kind: 'path',\n d: 'M 207.9 504 C 209 503.9 210 502.7 211.5 501.7 C 213 500.7 215.2 499.6 216.9 497.9 C 218.7 496.2 220.6 494.2 222 491.8 C 223.5 489.3 224.5 486.3 225.6 483.2 C 226.6 480.1 227.6 476.5 228.4 473.1 C 229.2 469.6 229.9 466.1 230.5 462.6 C 231 459 231.5 455.5 231.8 451.9 C 232.1 448.3 232.3 444.6 232.4 440.9 C 232.6 437.3 232.6 433.6 232.6 430 C 232.6 426.4 232.5 422.8 232.3 419.2 C 232.2 415.6 231.9 412 231.6 408.4 C 231.3 404.8 231 401.2 230.6 397.6 C 230.2 394 229.8 390.4 229.3 386.8 C 228.8 383.1 228.2 379.5 227.6 375.9 C 227 372.3 226.4 368.7 225.6 365.2 C 224.9 361.7 224.1 358.3 223.2 354.9 C 222.4 351.6 221.4 348.3 220.5 344.9 C 219.5 341.6 218.5 338.3 217.5 334.9 C 216.5 331.6 215.5 328.3 214.4 324.9 C 213.4 321.6 212.3 318.3 211.1 314.9 C 210 311.6 208.8 308.2 207.6 304.7 C 206.3 301.2 205.1 297.7 203.7 294.1 C 202.4 290.5 201 286.8 199.7 283.2 C 198.3 279.6 197 276 195.6 272.6 C 194.3 269.1 192.8 265.7 191.5 262.4 C 190.1 259.1 188.6 255.9 187.3 252.6 C 186 249.4 184.8 246.1 183.7 242.8 C 182.6 239.4 181.6 235.9 180.6 232.4 C 179.6 228.9 178.7 225.2 177.9 221.7 C 177.2 218.2 176.5 214.7 175.9 211.3 C 175.4 207.9 174.9 204.6 174.6 201.3 C 174.2 198 173.9 194.7 173.9 191.5 C 173.8 188.4 173.7 185.5 174 182.4 C 174.3 179.3 174.9 176 175.5 172.9 C 176.2 169.8 177.3 166.3 178 163.6 C 178.7 161 180.1 158.6 179.9 157.1 C 179.6 155.6 177.7 154.8 176.4 154.5 C 175.1 154.1 173.2 153.7 172.1 154.9 C 171.1 156.1 171 158.8 170.3 161.5 C 169.5 164.3 168.4 167.9 167.7 171.2 C 167 174.6 166.3 178.2 166 181.6 C 165.7 185.1 165.8 188.3 165.9 191.7 C 166 195.2 166.2 198.6 166.6 202.1 C 167 205.6 167.5 209.1 168.1 212.7 C 168.7 216.2 169.4 219.8 170.2 223.5 C 171 227.1 172 230.8 173 234.5 C 174 238.1 175.1 241.7 176.3 245.2 C 177.5 248.7 178.8 252.1 180.1 255.5 C 181.4 258.9 182.9 262.1 184.3 265.4 C 185.6 268.7 187 272 188.4 275.4 C 189.7 278.9 191.1 282.4 192.5 286 C 193.8 289.5 195.2 293.2 196.6 296.7 C 197.9 300.3 199.2 303.8 200.4 307.3 C 201.7 310.7 202.8 314 204 317.4 C 205.1 320.7 206.3 323.9 207.3 327.2 C 208.4 330.5 209.5 333.8 210.5 337.1 C 211.5 340.4 212.4 343.7 213.4 346.9 C 214.3 350.2 215.2 353.5 216 356.8 C 216.9 360.1 217.7 363.4 218.4 366.8 C 219.1 370.2 219.8 373.6 220.4 377.1 C 221 380.6 221.6 384.2 222.1 387.8 C 222.6 391.3 223 394.9 223.4 398.4 C 223.8 401.9 224.2 405.4 224.4 409 C 224.7 412.5 225 416 225.1 419.5 C 225.3 423 225.4 426.5 225.4 430 C 225.4 433.6 225.4 437.1 225.3 440.7 C 225.2 444.2 225 447.9 224.7 451.3 C 224.4 454.8 224.1 458.1 223.5 461.4 C 223 464.8 222.3 468.2 221.6 471.5 C 220.8 474.7 219.9 478.2 218.9 481 C 218 483.8 217.1 486.3 216 488.2 C 214.8 490.2 213.6 491.5 212.2 492.8 C 210.8 494 209 495 207.6 495.9 C 206.3 496.7 204.7 497 204.1 498 C 203.6 499 203.9 500.9 204.5 501.9 C 205.1 502.9 206.7 504 207.9 504 Z',\n },\n hitShape: {\n kind: 'path',\n d: 'M 238 429.6 C 239.4 427.6 237.8 424.6 237.6 421.2 C 237.4 417.9 237.2 413.3 236.9 409.2 C 236.7 405.2 236.3 401 236 397.1 C 235.6 393.2 235.1 389.7 234.6 386 C 234.1 382.3 233.5 378.6 232.9 375 C 232.2 371.3 231.6 367.7 230.8 364.1 C 230.1 360.6 229.2 357.1 228.4 353.6 C 227.5 350.2 226.5 346.8 225.6 343.5 C 224.6 340.1 223.6 336.7 222.6 333.4 C 221.6 330 220.5 326.7 219.4 323.3 C 218.4 319.9 217.2 316.6 216.1 313.2 C 214.9 309.8 213.7 306.5 212.5 303 C 211.2 299.5 209.9 295.9 208.6 292.3 C 207.3 288.7 205.9 285 204.5 281.4 C 203.1 277.8 201.7 274.2 200.4 270.7 C 199 267.2 197.5 263.8 196.2 260.5 C 194.8 257.2 193.3 254 192.1 250.8 C 190.8 247.6 189.6 244.4 188.5 241.2 C 187.4 237.9 186.4 234.4 185.5 231 C 184.5 227.6 183.6 224 182.9 220.6 C 182.1 217.2 181.4 213.8 180.9 210.5 C 180.3 207.2 179.9 204 179.5 200.8 C 179.2 197.6 178.9 194.3 178.8 191.4 C 178.8 188.4 178.7 185.7 179 182.8 C 179.2 179.9 179.8 176.9 180.4 174 C 181.1 171 182.1 167.5 182.8 165 C 183.5 162.4 185.7 160.4 184.7 158.4 C 183.6 156.5 179.6 154.2 176.7 153.4 C 173.8 152.6 169.2 152.4 167.3 153.6 C 165.5 154.7 166.2 157.5 165.5 160.2 C 164.7 163 163.6 166.7 162.8 170.2 C 162.1 173.7 161.4 177.6 161 181.2 C 160.7 184.8 160.8 188.3 160.9 191.9 C 161 195.5 161.3 199.1 161.6 202.6 C 162 206.2 162.5 209.8 163.1 213.5 C 163.7 217.1 164.5 220.8 165.3 224.6 C 166.1 228.3 167.1 232.1 168.1 235.8 C 169.2 239.5 170.3 243.3 171.5 246.8 C 172.7 250.4 174 254 175.3 257.4 C 176.7 260.8 178.2 264.1 179.5 267.4 C 180.9 270.7 182.3 273.9 183.6 277.3 C 185 280.7 186.3 284.3 187.7 287.8 C 189 291.3 190.4 295 191.7 298.5 C 193 302.1 194.3 305.6 195.5 309 C 196.7 312.4 197.9 315.8 199 319.1 C 200.2 322.4 201.3 325.6 202.3 328.9 C 203.4 332.1 204.4 335.4 205.4 338.6 C 206.4 341.9 207.3 345.1 208.3 348.4 C 209.2 351.6 210.1 354.8 210.9 358.1 C 211.7 361.3 212.5 364.5 213.2 367.9 C 213.9 371.2 214.5 374.6 215.1 378 C 215.7 381.5 216.3 385 216.8 388.5 C 217.2 392 217.7 395.3 218 398.9 C 218.4 402.6 218.7 406.6 219 410.5 C 219.2 414.3 219.4 418.8 219.6 422.2 C 219.8 425.5 218.4 428.7 220 430.4 C 221.6 432.2 226.1 432.8 229.1 432.7 C 232.1 432.5 236.6 431.5 238 429.6 Z',\n },\n marker: { x: 203, y: 300 },\n },\n {\n id: 'vas-deferens-l',\n labelKey: 'vasDeferens',\n side: 'left',\n group: 'reproductive',\n tissue: 'duct',\n shape: {\n kind: 'path',\n d: 'M 312.1 504 C 311 503.9 310 502.7 308.5 501.7 C 307 500.7 304.8 499.6 303.1 497.9 C 301.3 496.2 299.4 494.2 298 491.8 C 296.5 489.3 295.5 486.3 294.4 483.2 C 293.4 480.1 292.4 476.5 291.6 473.1 C 290.8 469.6 290.1 466.1 289.5 462.6 C 289 459 288.5 455.5 288.2 451.9 C 287.9 448.3 287.7 444.6 287.6 440.9 C 287.4 437.3 287.4 433.6 287.4 430 C 287.4 426.4 287.5 422.8 287.7 419.2 C 287.8 415.6 288.1 412 288.4 408.4 C 288.7 404.8 289 401.2 289.4 397.6 C 289.8 394 290.2 390.4 290.7 386.8 C 291.2 383.1 291.8 379.5 292.4 375.9 C 293 372.3 293.6 368.7 294.4 365.2 C 295.1 361.7 295.9 358.3 296.8 354.9 C 297.6 351.6 298.6 348.3 299.5 344.9 C 300.5 341.6 301.5 338.3 302.5 334.9 C 303.5 331.6 304.5 328.3 305.6 324.9 C 306.6 321.6 307.7 318.3 308.9 314.9 C 310 311.6 311.2 308.2 312.4 304.7 C 313.7 301.2 314.9 297.7 316.3 294.1 C 317.6 290.5 319 286.8 320.3 283.2 C 321.7 279.6 323 276 324.4 272.6 C 325.7 269.1 327.2 265.7 328.5 262.4 C 329.9 259.1 331.4 255.9 332.7 252.6 C 334 249.4 335.2 246.1 336.3 242.8 C 337.4 239.4 338.4 235.9 339.4 232.4 C 340.4 228.9 341.3 225.2 342.1 221.7 C 342.8 218.2 343.5 214.7 344.1 211.3 C 344.6 207.9 345.1 204.6 345.4 201.3 C 345.8 198 346.1 194.7 346.1 191.5 C 346.2 188.4 346.3 185.5 346 182.4 C 345.7 179.3 345.1 176 344.5 172.9 C 343.8 169.8 342.7 166.3 342 163.6 C 341.3 161 339.9 158.6 340.1 157.1 C 340.4 155.6 342.3 154.8 343.6 154.5 C 344.9 154.1 346.8 153.7 347.9 154.9 C 348.9 156.1 349 158.8 349.7 161.5 C 350.5 164.3 351.6 167.9 352.3 171.2 C 353 174.6 353.7 178.2 354 181.6 C 354.3 185.1 354.2 188.3 354.1 191.7 C 354 195.2 353.8 198.6 353.4 202.1 C 353 205.6 352.5 209.1 351.9 212.7 C 351.3 216.2 350.6 219.8 349.8 223.5 C 349 227.1 348 230.8 347 234.5 C 346 238.1 344.9 241.7 343.7 245.2 C 342.5 248.7 341.2 252.1 339.9 255.5 C 338.6 258.9 337.1 262.1 335.7 265.4 C 334.4 268.7 333 272 331.6 275.4 C 330.3 278.9 328.9 282.4 327.5 286 C 326.2 289.5 324.8 293.2 323.4 296.7 C 322.1 300.3 320.8 303.8 319.6 307.3 C 318.3 310.7 317.2 314 316 317.4 C 314.9 320.7 313.7 323.9 312.7 327.2 C 311.6 330.5 310.5 333.8 309.5 337.1 C 308.5 340.4 307.6 343.7 306.6 346.9 C 305.7 350.2 304.8 353.5 304 356.8 C 303.1 360.1 302.3 363.4 301.6 366.8 C 300.9 370.2 300.2 373.6 299.6 377.1 C 299 380.6 298.4 384.2 297.9 387.8 C 297.4 391.3 297 394.9 296.6 398.4 C 296.2 401.9 295.8 405.4 295.6 409 C 295.3 412.5 295 416 294.9 419.5 C 294.7 423 294.6 426.5 294.6 430 C 294.6 433.6 294.6 437.1 294.7 440.7 C 294.8 444.2 295 447.9 295.3 451.3 C 295.6 454.8 295.9 458.1 296.5 461.4 C 297 464.8 297.7 468.2 298.4 471.5 C 299.2 474.7 300.1 478.2 301.1 481 C 302 483.8 302.9 486.3 304 488.2 C 305.2 490.2 306.4 491.5 307.8 492.8 C 309.2 494 311 495 312.4 495.9 C 313.7 496.7 315.3 497 315.9 498 C 316.4 499 316.1 500.9 315.5 501.9 C 314.9 502.9 313.3 504 312.1 504 Z',\n },\n hitShape: {\n kind: 'path',\n d: 'M 282 429.6 C 280.6 427.6 282.2 424.6 282.4 421.2 C 282.6 417.9 282.8 413.3 283.1 409.2 C 283.3 405.2 283.7 401 284 397.1 C 284.4 393.2 284.9 389.7 285.4 386 C 285.9 382.3 286.5 378.6 287.1 375 C 287.8 371.3 288.4 367.7 289.2 364.1 C 289.9 360.6 290.8 357.1 291.6 353.6 C 292.5 350.2 293.5 346.8 294.4 343.5 C 295.4 340.1 296.4 336.7 297.4 333.4 C 298.4 330 299.5 326.7 300.6 323.3 C 301.6 319.9 302.8 316.6 303.9 313.2 C 305.1 309.8 306.3 306.5 307.5 303 C 308.8 299.5 310.1 295.9 311.4 292.3 C 312.7 288.7 314.1 285 315.5 281.4 C 316.9 277.8 318.3 274.2 319.6 270.7 C 321 267.2 322.5 263.8 323.8 260.5 C 325.2 257.2 326.7 254 327.9 250.8 C 329.2 247.6 330.4 244.4 331.5 241.2 C 332.6 237.9 333.6 234.4 334.5 231 C 335.5 227.6 336.4 224 337.1 220.6 C 337.9 217.2 338.6 213.8 339.1 210.5 C 339.7 207.2 340.1 204 340.5 200.8 C 340.8 197.6 341.1 194.3 341.2 191.4 C 341.2 188.4 341.3 185.7 341 182.8 C 340.8 179.9 340.2 176.9 339.6 174 C 338.9 171 337.9 167.5 337.2 165 C 336.5 162.4 334.3 160.4 335.3 158.4 C 336.4 156.5 340.4 154.2 343.3 153.4 C 346.2 152.6 350.8 152.4 352.7 153.6 C 354.5 154.7 353.8 157.5 354.5 160.2 C 355.3 163 356.4 166.7 357.2 170.2 C 357.9 173.7 358.6 177.6 359 181.2 C 359.3 184.8 359.2 188.3 359.1 191.9 C 359 195.5 358.7 199.1 358.4 202.6 C 358 206.2 357.5 209.8 356.9 213.5 C 356.3 217.1 355.5 220.8 354.7 224.6 C 353.9 228.3 352.9 232.1 351.9 235.8 C 350.8 239.5 349.7 243.3 348.5 246.8 C 347.3 250.4 346 254 344.7 257.4 C 343.3 260.8 341.8 264.1 340.5 267.4 C 339.1 270.7 337.7 273.9 336.4 277.3 C 335 280.7 333.7 284.3 332.3 287.8 C 331 291.3 329.6 295 328.3 298.5 C 327 302.1 325.7 305.6 324.5 309 C 323.3 312.4 322.1 315.8 321 319.1 C 319.8 322.4 318.7 325.6 317.7 328.9 C 316.6 332.1 315.6 335.4 314.6 338.6 C 313.6 341.9 312.7 345.1 311.7 348.4 C 310.8 351.6 309.9 354.8 309.1 358.1 C 308.3 361.3 307.5 364.5 306.8 367.9 C 306.1 371.2 305.5 374.6 304.9 378 C 304.3 381.5 303.7 385 303.2 388.5 C 302.8 392 302.3 395.3 302 398.9 C 301.6 402.6 301.3 406.6 301 410.5 C 300.8 414.3 300.6 418.8 300.4 422.2 C 300.2 425.5 301.6 428.7 300 430.4 C 298.4 432.2 293.9 432.8 290.9 432.7 C 287.9 432.5 283.4 431.5 282 429.6 Z',\n },\n marker: { x: 317, y: 300 },\n },\n {\n id: 'testis-r',\n labelKey: 'testis',\n side: 'right',\n group: 'reproductive',\n tissue: 'gonad',\n shape: {\n kind: 'path',\n d: 'M 218.1 492.5 C 215.4 492.9 212.6 492.8 209.9 492.2 C 207.2 491.5 204.4 490.2 202 488.5 C 199.5 486.8 197.1 484.5 195.2 481.9 C 193.2 479.2 191.5 476.1 190.2 472.8 C 188.9 469.6 187.9 465.9 187.4 462.3 C 186.9 458.8 186.7 455 187 451.4 C 187.3 447.9 188 444.3 189 441.2 C 190 438 191.5 435 193.1 432.6 C 194.8 430.1 196.8 428 198.9 426.5 C 201.1 425 203.5 424 205.9 423.5 C 208.4 423.1 211 423.2 213.5 423.9 C 216 424.6 218.7 425.9 221.1 427.6 C 223.5 429.4 225.8 431.7 227.9 434.3 C 229.9 436.9 231.8 440 233.2 443.3 C 234.7 446.5 235.9 450.1 236.6 453.7 C 237.3 457.2 237.7 461 237.6 464.5 C 237.5 468 236.9 471.5 236 474.7 C 235 477.8 233.6 480.8 231.9 483.2 C 230.2 485.7 228 487.8 225.7 489.4 C 223.4 490.9 220.7 492 218.1 492.5 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 217.3 488 C 215.1 488.4 212.7 488.3 210.4 487.7 C 208.1 487.2 205.8 486 203.7 484.5 C 201.6 483 199.6 481 198 478.7 C 196.3 476.4 194.8 473.6 193.7 470.8 C 192.6 468 191.8 464.8 191.3 461.6 C 190.9 458.5 190.7 455.2 190.9 452.1 C 191.2 449.1 191.7 446 192.6 443.2 C 193.4 440.5 194.6 437.9 196 435.8 C 197.3 433.7 199 431.8 200.8 430.5 C 202.6 429.2 204.7 428.3 206.7 428 C 208.7 427.6 211 427.7 213.1 428.4 C 215.2 429 217.4 430.1 219.5 431.6 C 221.5 433.1 223.5 435.2 225.2 437.5 C 226.9 439.7 228.5 442.5 229.8 445.3 C 231 448.1 232.1 451.3 232.7 454.4 C 233.3 457.4 233.6 460.7 233.6 463.8 C 233.5 466.8 233 469.9 232.3 472.6 C 231.5 475.4 230.3 478 228.9 480.1 C 227.4 482.2 225.6 484.1 223.7 485.4 C 221.8 486.7 219.5 487.6 217.3 488 Z',\n paint: 'fine',\n },\n {\n kind: 'path',\n d: 'M 195 443 Q 206 447 216 437 M 193 456 Q 206 456 224 446 M 194 469 Q 208 467 228 460 M 199 481 Q 211 479 230 473 M 206 491 Q 216 489 229 485',\n paint: 'fine',\n },\n ],\n marker: { x: 214, y: 460 },\n },\n {\n id: 'testis-l',\n labelKey: 'testis',\n side: 'left',\n group: 'reproductive',\n tissue: 'gonad',\n shape: {\n kind: 'path',\n d: 'M 301.9 492.5 C 304.6 492.9 307.4 492.8 310.1 492.2 C 312.8 491.5 315.6 490.2 318 488.5 C 320.5 486.8 322.9 484.5 324.8 481.9 C 326.8 479.2 328.5 476.1 329.8 472.8 C 331.1 469.6 332.1 465.9 332.6 462.3 C 333.1 458.8 333.3 455 333 451.4 C 332.7 447.9 332 444.3 331 441.2 C 330 438 328.5 435 326.9 432.6 C 325.2 430.1 323.2 428 321.1 426.5 C 318.9 425 316.5 424 314.1 423.5 C 311.6 423.1 309 423.2 306.5 423.9 C 304 424.6 301.3 425.9 298.9 427.6 C 296.5 429.4 294.2 431.7 292.1 434.3 C 290.1 436.9 288.2 440 286.8 443.3 C 285.3 446.5 284.1 450.1 283.4 453.7 C 282.7 457.2 282.3 461 282.4 464.5 C 282.5 468 283.1 471.5 284 474.7 C 285 477.8 286.4 480.8 288.1 483.2 C 289.8 485.7 292 487.8 294.3 489.4 C 296.6 490.9 299.3 492 301.9 492.5 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 302.7 488 C 304.9 488.4 307.3 488.3 309.6 487.7 C 311.9 487.2 314.2 486 316.3 484.5 C 318.4 483 320.4 481 322 478.7 C 323.7 476.4 325.2 473.6 326.3 470.8 C 327.4 468 328.2 464.8 328.7 461.6 C 329.1 458.5 329.3 455.2 329.1 452.1 C 328.8 449.1 328.3 446 327.4 443.2 C 326.6 440.5 325.4 437.9 324 435.8 C 322.7 433.7 321 431.8 319.2 430.5 C 317.4 429.2 315.3 428.3 313.3 428 C 311.3 427.6 309 427.7 306.9 428.4 C 304.8 429 302.6 430.1 300.5 431.6 C 298.5 433.1 296.5 435.2 294.8 437.5 C 293.1 439.7 291.5 442.5 290.2 445.3 C 289 448.1 287.9 451.3 287.3 454.4 C 286.7 457.4 286.4 460.7 286.4 463.8 C 286.5 466.8 287 469.9 287.7 472.6 C 288.5 475.4 289.7 478 291.1 480.1 C 292.6 482.2 294.4 484.1 296.3 485.4 C 298.2 486.7 300.5 487.6 302.7 488 Z',\n paint: 'fine',\n },\n {\n kind: 'path',\n d: 'M 325 443 Q 314 447 304 437 M 327 456 Q 314 456 296 446 M 326 469 Q 312 467 292 460 M 321 481 Q 309 479 290 473 M 314 491 Q 304 489 291 485',\n paint: 'fine',\n },\n ],\n marker: { x: 306, y: 460 },\n },\n {\n id: 'epididymis-r',\n labelKey: 'epididymis',\n side: 'right',\n group: 'reproductive',\n tissue: 'duct',\n shape: {\n kind: 'path',\n d: 'M 224 417.3 C 223 415.6 222.7 415.9 221.6 415.5 C 220.5 415 218.9 414.8 217.3 414.5 C 215.7 414.1 213.7 414 211.9 413.6 C 210 413.3 207.8 412.5 205.9 412.5 C 203.9 412.5 201.8 412.8 200.1 413.6 C 198.5 414.3 197.2 415.7 195.9 416.9 C 194.5 418.1 193.5 419.5 192.3 420.7 C 191 421.9 189.5 422.8 188.2 424 C 187 425.3 185.7 426.7 184.8 428.3 C 183.8 429.9 183.5 432 182.8 433.7 C 182.2 435.5 181.4 437.2 180.8 439 C 180.3 440.7 179.8 442.4 179.3 444.1 C 178.9 445.7 178.4 447.4 178.1 449 C 177.7 450.7 177.4 452.4 177.2 454 C 177 455.7 176.9 457.4 176.8 459 C 176.7 460.7 176.8 462.3 176.8 464 C 176.8 465.7 176.9 467.4 177.1 469.1 C 177.2 470.8 177.5 472.5 177.8 474.2 C 178.1 475.8 178.4 477.5 178.9 479.1 C 179.3 480.7 179.8 482.2 180.3 483.7 C 180.8 485.1 181.3 486.6 181.9 488 C 182.6 489.3 183.3 490.7 184 492 C 184.8 493.3 185.5 494.5 186.4 495.7 C 187.4 496.8 188.3 498.1 189.4 499 C 190.6 500 192 500.9 193.4 501.6 C 194.7 502.3 196.2 502.9 197.5 503.4 C 198.8 503.9 200 504.2 201 504.5 C 201.9 504.9 202.2 505.7 203.3 505.3 C 204.4 504.8 207 503.5 207.6 502 C 208.1 500.6 207.2 497.8 206.7 496.7 C 206.2 495.7 205.4 496 204.5 495.6 C 203.7 495.2 202.5 494.7 201.5 494.2 C 200.5 493.7 199.5 493.2 198.6 492.6 C 197.8 492.1 197.2 491.6 196.6 491 C 195.9 490.4 195.4 489.8 194.8 489.1 C 194.1 488.3 193.5 487.4 192.9 486.5 C 192.3 485.6 191.7 484.6 191.2 483.6 C 190.6 482.5 190.1 481.5 189.7 480.3 C 189.3 479.2 189 477.9 188.7 476.6 C 188.3 475.3 188.1 473.9 187.8 472.5 C 187.6 471.1 187.4 469.6 187.3 468.2 C 187.2 466.8 187.2 465.4 187.2 464 C 187.2 462.6 187.4 461.3 187.6 459.9 C 187.7 458.6 188 457.2 188.3 455.9 C 188.6 454.5 188.9 453.2 189.3 451.8 C 189.7 450.5 190.1 449.2 190.7 447.9 C 191.2 446.6 191.9 445.3 192.6 444 C 193.3 442.6 194 441.2 194.9 440 C 195.8 438.8 197.1 437.9 197.9 436.9 C 198.7 435.9 199.1 434.9 199.8 434 C 200.4 433.1 200.8 432.1 201.6 431.5 C 202.3 431 203.5 430.8 204.4 430.6 C 205.3 430.5 206.3 430.7 206.9 430.5 C 207.5 430.3 207.6 429.9 208.1 429.5 C 208.6 429.2 209.2 428.5 210.1 428.5 C 210.9 428.5 212.2 429.1 213.4 429.5 C 214.5 430 215.8 430.7 216.9 430.9 C 218.1 431.1 218.3 431.6 220 430.7 C 221.8 429.8 226.7 427.8 227.4 425.6 C 228 423.3 224.9 419 224 417.3 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 214 418.5 Q 209 425 203 419 M 202 424 Q 197 431 193 426 M 191 435 Q 187 441 185 436 M 186 452 Q 182 457 186 462 M 184 473 Q 180 478 185 483',\n paint: 'fine',\n },\n ],\n marker: { x: 183, y: 458 },\n },\n {\n id: 'epididymis-l',\n labelKey: 'epididymis',\n side: 'left',\n group: 'reproductive',\n tissue: 'duct',\n shape: {\n kind: 'path',\n d: 'M 296 417.3 C 297 415.6 297.3 415.9 298.4 415.5 C 299.5 415 301.1 414.8 302.7 414.5 C 304.3 414.1 306.3 414 308.1 413.6 C 310 413.3 312.2 412.5 314.1 412.5 C 316.1 412.5 318.2 412.8 319.9 413.6 C 321.5 414.3 322.8 415.7 324.1 416.9 C 325.5 418.1 326.5 419.5 327.7 420.7 C 329 421.9 330.5 422.8 331.8 424 C 333 425.3 334.3 426.7 335.2 428.3 C 336.2 429.9 336.5 432 337.2 433.7 C 337.8 435.5 338.6 437.2 339.2 439 C 339.7 440.7 340.2 442.4 340.7 444.1 C 341.1 445.7 341.6 447.4 341.9 449 C 342.3 450.7 342.6 452.4 342.8 454 C 343 455.7 343.1 457.4 343.2 459 C 343.3 460.7 343.2 462.3 343.2 464 C 343.2 465.7 343.1 467.4 342.9 469.1 C 342.8 470.8 342.5 472.5 342.2 474.2 C 341.9 475.8 341.6 477.5 341.1 479.1 C 340.7 480.7 340.2 482.2 339.7 483.7 C 339.2 485.1 338.7 486.6 338.1 488 C 337.4 489.3 336.7 490.7 336 492 C 335.2 493.3 334.5 494.5 333.6 495.7 C 332.6 496.8 331.7 498.1 330.6 499 C 329.4 500 328 500.9 326.6 501.6 C 325.3 502.3 323.8 502.9 322.5 503.4 C 321.2 503.9 320 504.2 319 504.5 C 318.1 504.9 317.8 505.7 316.7 505.3 C 315.6 504.8 313 503.5 312.4 502 C 311.9 500.6 312.8 497.8 313.3 496.7 C 313.8 495.7 314.6 496 315.5 495.6 C 316.3 495.2 317.5 494.7 318.5 494.2 C 319.5 493.7 320.5 493.2 321.4 492.6 C 322.2 492.1 322.8 491.6 323.4 491 C 324.1 490.4 324.6 489.8 325.2 489.1 C 325.9 488.3 326.5 487.4 327.1 486.5 C 327.7 485.6 328.3 484.6 328.8 483.6 C 329.4 482.5 329.9 481.5 330.3 480.3 C 330.7 479.2 331 477.9 331.3 476.6 C 331.7 475.3 331.9 473.9 332.2 472.5 C 332.4 471.1 332.6 469.6 332.7 468.2 C 332.8 466.8 332.8 465.4 332.8 464 C 332.8 462.6 332.6 461.3 332.4 459.9 C 332.3 458.6 332 457.2 331.7 455.9 C 331.4 454.5 331.1 453.2 330.7 451.8 C 330.3 450.5 329.9 449.2 329.3 447.9 C 328.8 446.6 328.1 445.3 327.4 444 C 326.7 442.6 326 441.2 325.1 440 C 324.2 438.8 322.9 437.9 322.1 436.9 C 321.3 435.9 320.9 434.9 320.2 434 C 319.6 433.1 319.2 432.1 318.4 431.5 C 317.7 431 316.5 430.8 315.6 430.6 C 314.7 430.5 313.7 430.7 313.1 430.5 C 312.5 430.3 312.4 429.9 311.9 429.5 C 311.4 429.2 310.8 428.5 309.9 428.5 C 309.1 428.5 307.8 429.1 306.6 429.5 C 305.5 430 304.2 430.7 303.1 430.9 C 301.9 431.1 301.7 431.6 300 430.7 C 298.2 429.8 293.3 427.8 292.6 425.6 C 292 423.3 295.1 419 296 417.3 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 306 418.5 Q 311 425 317 419 M 318 424 Q 323 431 327 426 M 329 435 Q 333 441 335 436 M 334 452 Q 338 457 334 462 M 336 473 Q 340 478 335 483',\n paint: 'fine',\n },\n ],\n marker: { x: 337, y: 458 },\n },\n {\n id: 'penis',\n labelKey: 'penis',\n side: 'midline',\n group: 'reproductive',\n tissue: 'skin',\n shape: {\n kind: 'path',\n d: 'M 238 286 C 248 281 272 281 282 286 C 284.5 326 285.5 372 285.5 412 C 290.5 418 292.5 432 289.5 446 C 285.5 462 273.5 474 260 476 C 246.5 474 234.5 462 230.5 446 C 227.5 432 229.5 418 234.5 412 C 234.5 372 235.5 326 238 286 Z',\n },\n details: [\n {\n kind: 'path',\n d: 'M 240.5 293 C 244 289.5 251.5 289.5 254.5 293 C 255 331 255 371 254.5 410 C 251 413 245 413 240.5 410 C 240 371 240 331 240.5 293 Z',\n paint: 'erectile',\n },\n {\n kind: 'path',\n d: 'M 279.5 293 C 276 289.5 268.5 289.5 265.5 293 C 265 331 265 371 265.5 410 C 269 413 275 413 279.5 410 C 280 371 280 331 279.5 293 Z',\n paint: 'erectile',\n },\n {\n kind: 'path',\n d: 'M 243 302 Q 247.5 305 252 302 M 243 312 Q 247.5 315 252 312 M 243 322 Q 247.5 325 252 322 M 243 332 Q 247.5 335 252 332 M 243 342 Q 247.5 345 252 342 M 243 352 Q 247.5 355 252 352 M 243 362 Q 247.5 365 252 362 M 243 372 Q 247.5 375 252 372 M 243 382 Q 247.5 385 252 382 M 243 392 Q 247.5 395 252 392 M 243 402 Q 247.5 405 252 402',\n paint: 'fine',\n },\n {\n kind: 'path',\n d: 'M 277 302 Q 272.5 305 268 302 M 277 312 Q 272.5 315 268 312 M 277 322 Q 272.5 325 268 322 M 277 332 Q 272.5 335 268 332 M 277 342 Q 272.5 345 268 342 M 277 352 Q 272.5 355 268 352 M 277 362 Q 272.5 365 268 362 M 277 372 Q 272.5 375 268 372 M 277 382 Q 272.5 385 268 382 M 277 392 Q 272.5 395 268 392 M 277 402 Q 272.5 405 268 402',\n paint: 'fine',\n },\n {\n kind: 'path',\n d: 'M 231.5 417 C 246 427.5 274 427.5 288.5 417 C 292.5 431 290.5 447.5 285.5 459 C 278.5 470 269.5 475 260 475 C 250.5 475 241.5 470 234.5 459 C 229.5 447.5 227.5 431 231.5 417 Z',\n paint: 'mucosa',\n },\n {\n kind: 'path',\n d: 'M 233 416 C 247 425 273 425 287 416',\n paint: 'fine',\n },\n ],\n marker: { x: 247, y: 360 },\n },\n {\n id: 'urethra',\n labelKey: 'urethra',\n side: 'midline',\n group: 'reproductive',\n tissue: 'urinary',\n shape: {\n kind: 'path',\n d: 'M 254.5 213 C 253.6 214.3 254.5 217.1 254.5 220 C 254.5 222.8 254.6 226.6 254.6 229.9 C 254.6 233.3 254.6 236.7 254.6 240 C 254.6 243.3 254.7 246.4 254.7 249.6 C 254.8 252.8 254.8 256.1 254.9 259.2 C 254.9 262.3 254.9 265.5 255 268 C 255.1 270.5 255.2 272.4 255.3 274.4 C 255.4 276.4 255.4 277.7 255.5 280 C 255.6 282.3 255.7 284.8 255.8 288 C 255.9 291.2 255.9 295.1 255.9 299.3 C 255.9 303.5 256 308 256 313.1 C 256 318.2 256.1 323.5 256.1 330 C 256.1 336.5 256.1 344.4 256.1 352.4 C 256.1 360.3 256.2 369.9 256.2 377.9 C 256.2 385.8 256.2 393.6 256.2 400 C 256.2 406.4 256.2 411.4 256.1 416.2 C 256.1 421.1 256.1 425.1 256.1 429.1 C 256 433.1 256 436.7 256 440 C 256 443.3 255.9 446.4 255.8 449 C 255.7 451.7 255.7 453.9 255.6 456.1 C 255.5 458.2 255.4 460.1 255.4 462 C 255.4 463.9 255.7 465.6 255.8 467.2 C 255.9 468.7 256.1 470.1 256.2 471.3 C 256.3 472.4 256 473.3 256.6 474 C 257.2 474.7 258.9 475.4 260 475.4 C 261.1 475.4 262.8 474.7 263.4 474 C 264 473.3 263.7 472.4 263.8 471.3 C 263.9 470.1 264.1 468.7 264.2 467.2 C 264.3 465.6 264.6 463.9 264.6 462 C 264.6 460.1 264.5 458.2 264.4 456.1 C 264.3 453.9 264.3 451.7 264.2 449 C 264.1 446.4 264 443.3 264 440 C 264 436.7 264 433.1 263.9 429.1 C 263.9 425.1 263.9 421.1 263.9 416.2 C 263.8 411.4 263.8 406.4 263.8 400 C 263.8 393.6 263.8 385.8 263.8 377.9 C 263.8 369.9 263.9 360.3 263.9 352.4 C 263.9 344.4 263.9 336.5 263.9 330 C 263.9 323.5 264 318.2 264 313.1 C 264 308 264.1 303.5 264.1 299.3 C 264.1 295.1 264.1 291.2 264.2 288 C 264.3 284.8 264.4 282.3 264.5 280 C 264.6 277.7 264.6 276.4 264.7 274.4 C 264.8 272.4 264.9 270.5 265 268 C 265.1 265.5 265.1 262.3 265.1 259.2 C 265.2 256.1 265.2 252.8 265.3 249.6 C 265.3 246.4 265.4 243.3 265.4 240 C 265.4 236.7 265.4 233.3 265.4 229.9 C 265.4 226.6 265.5 222.8 265.5 220 C 265.5 217.1 266.4 214.3 265.5 213 C 264.6 211.7 261.8 211.9 260 211.9 C 258.2 211.9 255.4 211.7 254.5 213 Z',\n },\n details: [{ kind: 'path', d: 'M 260 216 L 260 474', paint: 'lumen' }],\n marker: { x: 260, y: 302 },\n },\n ],\n details: [\n {\n kind: 'path',\n d: 'M 176 156 C 178.3 154.7 184.3 148 190 148 C 195.7 148 204 151.3 210 156 C 216 160.7 221.3 169 226 176 C 230.7 183 234.7 191.7 238 198 C 241.3 204.3 244.7 211.3 246 214',\n paint: 'hidden',\n },\n {\n kind: 'path',\n d: 'M 344 156 C 341.7 154.7 335.7 148 330 148 C 324.3 148 316 151.3 310 156 C 304 160.7 298.7 169 294 176 C 289.3 183 285.3 191.7 282 198 C 278.7 204.3 275.3 211.3 274 214',\n paint: 'hidden',\n },\n ],\n};\n","/* ------------------------------------------------------------------ */\n/* AUTO-GENERATED — do not hand-edit. */\n/* */\n/* Per-muscle id'd paths from `react-native-body-highlighter` (MIT, */\n/* (c) 2022 ELABBASSI Hicham). Each muscle's common/left/right */\n/* sub-paths are concatenated with absolute movetos; slug -> an */\n/* muscleScheme.region.* labelKey; head/hair -> decorative silhouette.*/\n/* ------------------------------------------------------------------ */\n\nexport interface MuscleArt {\n id: string;\n labelKey: string;\n side: 'left' | 'right' | 'midline';\n cx: number;\n cy: number;\n /** Set on the female pectoralis (breast cut out via evenodd). */\n fillRule?: 'evenodd';\n d: string;\n}\n\nexport interface MuscleFigureArt {\n viewBox: string;\n silhouette: string;\n /** Body-outline contour (stroke-only) from the library wrapper — drawn as silhouetteDetail. */\n outline: string;\n muscles: MuscleArt[];\n}\n\nexport const MUSCLE_MALE_FRONT: MuscleFigureArt = {\n viewBox: '0 0 724 1448',\n silhouette:\n 'M 418.91 167.68 c 3.92 -1.77 6.58 0.47 7.06 4.32 c 1.48 11.93 -4.92 26.67 -11.75 36.45 c -2.21 3.17 -3.86 0.17 -4.74 -1.76 a 0.38 0.38 0 0 0 -0.73 0.16 c 0.02 8.31 1.01 17.01 -3.36 24.53 c -0.167 0.293 -4.39 4.62 -10.799 9.508 c -23.591 18.112 -41.591 16.112 -61.446 -0.797 c -4.736 -3.649 -5.925 -5.041 -8.805 -7.621 c -5.66 -5.07 -5.28 -17.38 -4.47 -24.92 c 0.05 -0.51 -0.468 -0.892 -0.933 -0.687 a 0.653 0.653 0 0 0 -0.357 0.397 c -0.57 1.69 -2.24 4.05 -4.07 1.48 c -6.2 -8.71 -16.02 -28.53 -11.19 -38.98 c 1.68 -3.627 3.733 -3.91 6.16 -0.85 a 182.853 182.853 0 0 1 3.78 23.29 a 1.02 1.02 0 0 0 1.56 0.77 c 2.79 -1.75 2.61 -18.93 2.63 -24.22 c 0.02 -4.53 1.12 -8.94 3.8 -13.1 c 4.36 -6.76 4.86 -11.51 5.57 -19.82 c 0.47 -5.53 4.34 -8.12 9.77 -8.21 c 6.39 -0.12 12.69 -0.07 19 -0.93 c 4.02 -0.55 7.4 -1.43 11.53 -0.75 c 6.7 1.1 13.44 1.64 20.22 1.62 c 4.607 -0.013 7.523 0.227 8.75 0.72 c 5.96 2.37 5.56 9.73 6.11 15.22 c 0.44 4.34 2.097 8.447 4.97 12.32 c 6.57 8.88 2.19 25.6 5.64 36.36 a 1.14 1.14 0 0 0 2.22 -0.23 c 0.887 -8.36 2.18 -16.45 3.88 -24.27 z z z z M418.91 167.68q-2.55 11.73-3.88 24.27a1.14 1.14 0 01-2.22.23c-3.45-10.76.93-27.48-5.64-36.36q-4.31-5.81-4.97-12.32c-.55-5.49-.15-12.85-6.11-15.22q-1.84-.74-8.75-.72-10.17.03-20.22-1.62c-4.13-.68-7.51.2-11.53.75-6.31.86-12.61.81-19 .93-5.43.09-9.3 2.68-9.77 8.21-.71 8.31-1.21 13.06-5.57 19.82-2.68 4.16-3.78 8.57-3.8 13.1-.02 5.29.16 22.47-2.63 24.22a1.02 1.02 0 01-1.56-.77q-1.14-11.78-3.78-23.29-1.48-6.99-1.9-9.7c-2.49-15.94.13-40.13 13.53-51.15 9.39-7.72 28.53-11.63 40.37-11.51 4.2.05 8.74-.3 12.68.22 13.82 1.82 31.67 5.83 39.42 18.92 9.01 15.21 9.88 35.14 5.33 51.99z',\n outline:\n 'M 309.48 168.91 Q 305.84 164.32 303.32 169.76 C 298.49 180.21 308.31 200.03 314.51 208.74 C 316.34 211.31 318.01 208.95 318.58 207.26 A 0.67 0.66 57.6 0 1 319.87 207.55 C 319.06 215.09 318.68 227.40 324.34 232.47 C 327.22 235.05 326.97 235.88 326.92 239.51 Q 326.68 255.16 323.97 266.82 Q 323.85 267.35 323.48 267.73 Q 308.61 282.73 290.26 293.23 C 278.34 300.05 267.53 299.26 253.00 298.03 Q 237.49 296.72 224.74 305.21 C 208.71 315.86 190.95 335.73 189.24 355.50 Q 186.95 381.81 190.53 412.66 C 190.79 414.92 190.69 417.49 191.02 419.92 Q 191.09 420.43 190.88 420.90 C 187.89 427.65 183.99 434.89 181.93 441.29 C 177.25 455.76 176.31 470.23 176.20 486.02 Q 176.20 486.51 175.90 486.90 C 159.84 507.69 147.56 529.29 141.49 554.95 Q 140.10 560.80 138.16 574.66 Q 131.28 623.74 118.11 671.52 C 115.99 679.21 112.98 690.29 104.08 693.63 Q 90.70 698.65 79.29 707.27 C 73.17 711.89 69.48 719.95 66.12 726.62 C 62.44 733.91 47.57 737.30 49.20 746.00 C 49.75 748.96 51.89 750.13 54.75 750.02 Q 67.27 749.50 74.18 740.00 C 76.03 737.45 77.93 736.62 80.54 735.24 Q 81.02 734.98 81.24 735.48 Q 84.59 743.00 80.47 750.73 Q 71.41 767.75 62.21 784.70 Q 60.53 787.81 59.49 791.20 C 57.52 797.69 65.78 800.84 69.45 795.20 C 76.80 783.92 82.72 773.30 92.55 762.52 Q 93.00 762.04 92.84 762.67 Q 87.89 783.24 79.07 802.44 C 77.36 806.17 75.64 812.30 79.19 815.18 C 89.50 823.53 107.08 773.44 109.24 767.88 A 0.37 0.36 -30.3 0 1 109.94 768.06 C 108.51 777.44 106.43 787.14 105.28 796.13 C 104.34 803.43 103.67 808.49 104.41 814.32 C 105.40 822.00 112.74 817.15 114.09 812.77 C 118.56 798.32 120.41 781.74 125.18 766.21 A 0.55 0.55 0.0 0 1 125.93 765.87 C 131.64 768.40 126.65 796.54 133.38 803.49 A 1.35 1.35 0.0 0 0 134.16 803.90 C 138.40 804.59 139.71 797.34 140.15 793.73 Q 141.74 780.80 142.58 767.76 Q 142.86 763.46 144.07 759.34 Q 150.39 737.64 154.77 715.46 Q 156.15 708.50 155.48 697.76 Q 154.48 681.63 161.99 665.46 Q 180.58 625.46 201.25 586.52 C 213.64 563.18 218.66 541.14 220.65 514.18 C 221.24 506.18 223.22 502.59 228.42 495.84 C 237.76 483.72 242.73 464.92 246.12 450.19 Q 246.24 449.64 246.75 449.42 L 250.30 447.82 A 0.49 0.49 0.0 0 1 250.99 448.23 Q 252.78 470.14 257.44 487.01 C 259.04 492.80 264.20 498.21 265.32 505.20 C 265.91 508.82 266.99 512.44 267.11 516.00 Q 267.57 529.33 266.95 540.50 C 265.58 565.32 263.85 592.20 259.98 619.13 C 258.39 630.19 253.14 640.55 250.52 651.43 Q 245.19 673.62 242.32 696.24 C 239.63 717.56 236.59 740.02 236.04 757.75 Q 234.98 791.48 237.98 842.55 Q 239.43 867.18 244.64 891.26 Q 247.76 905.70 255.88 917.90 Q 256.15 918.31 256.08 918.79 C 254.89 926.25 257.03 933.47 255.60 940.95 Q 252.28 958.32 251.77 975.98 C 251.55 983.43 252.85 991.28 253.67 998.93 Q 253.99 1001.95 253.29 1005.00 C 239.19 1067.03 246.93 1130.64 261.77 1190.07 C 266.01 1207.06 266.47 1222.37 264.71 1240.03 C 263.85 1248.62 262.10 1260.41 264.24 1268.75 C 266.05 1275.80 267.54 1287.46 261.78 1293.28 C 256.71 1298.39 242.40 1310.55 240.72 1316.98 C 239.19 1322.86 235.04 1332.26 242.29 1333.71 Q 242.69 1333.79 243.08 1333.66 L 244.23 1333.29 Q 245.05 1333.02 244.81 1333.85 C 242.95 1340.16 249.20 1340.52 253.77 1340.86 C 256.46 1341.06 257.37 1343.60 259.30 1344.71 Q 263.13 1346.91 267.14 1344.43 Q 267.59 1344.15 267.92 1344.56 Q 271.17 1348.61 276.21 1349.09 C 278.90 1349.35 281.27 1347.36 283.62 1346.09 Q 284.10 1345.82 284.44 1346.26 Q 288.33 1351.29 294.72 1351.38 C 295.77 1351.39 297.65 1351.62 298.54 1350.79 Q 301.20 1348.30 306.57 1341.58 C 312.04 1334.74 311.14 1328.85 310.29 1320.16 C 309.43 1311.33 311.17 1303.41 313.76 1295.20 C 315.84 1288.56 313.35 1280.06 314.07 1273.15 C 314.57 1268.39 315.80 1263.68 315.01 1259.02 C 314.06 1253.42 311.98 1247.60 311.31 1242.66 Q 309.57 1229.80 309.57 1219.75 Q 309.57 1192.29 313.54 1161.94 C 315.34 1148.21 319.24 1136.08 324.12 1123.46 Q 325.66 1119.48 326.10 1115.72 C 330.14 1081.34 326.20 1048.44 320.65 1013.26 C 319.84 1008.17 319.39 1002.54 321.72 997.72 C 328.03 984.68 329.28 969.38 329.07 954.15 C 329.01 949.50 327.95 944.55 327.58 939.63 C 327.13 933.64 329.28 925.78 330.82 919.80 C 334.72 904.69 337.76 888.96 341.43 874.30 Q 348.95 844.25 355.42 813.95 C 358.50 799.49 357.70 784.78 357.75 768.06 Q 357.78 756.80 356.36 748.81 Q 356.26 748.24 356.77 748.50 L 363.71 751.99 A 1.07 1.07 0.0 0 0 364.67 751.99 L 371.53 748.56 Q 372.07 748.29 371.98 748.89 C 369.47 765.94 370.28 783.04 371.30 800.17 Q 371.86 809.54 372.73 813.51 C 378.37 839.12 384.90 864.49 390.59 890.08 Q 394.83 909.20 399.51 928.22 C 400.58 932.58 401.13 937.66 400.58 941.57 C 398.11 958.92 398.53 982.22 407.11 998.54 C 408.41 1001.01 408.74 1005.35 408.31 1008.09 C 402.82 1043.75 398.07 1079.22 402.19 1115.33 Q 402.65 1119.34 404.21 1123.44 C 410.53 1140.06 413.55 1150.61 415.25 1164.75 C 418.31 1190.26 420.52 1218.43 416.79 1244.33 C 415.56 1252.86 411.78 1258.57 413.63 1267.80 Q 415.33 1276.21 414.16 1284.74 C 413.11 1292.39 415.65 1298.68 417.31 1305.89 C 419.02 1313.32 418.11 1320.99 417.47 1328.50 C 416.71 1337.55 423.74 1344.86 430.17 1350.90 A 1.48 1.46 -18.7 0 0 430.95 1351.28 Q 439.25 1352.41 444.03 1346.06 Q 444.40 1345.57 444.87 1345.96 Q 453.39 1352.89 460.49 1344.48 Q 460.81 1344.11 461.23 1344.37 C 469.09 1349.37 469.89 1340.80 474.98 1340.71 C 479.52 1340.64 485.21 1340.09 483.54 1333.77 Q 483.38 1333.17 483.97 1333.35 C 488.25 1334.67 490.66 1331.94 490.06 1327.75 C 489.09 1321.04 487.50 1314.41 483.44 1310.30 Q 474.77 1301.53 466.05 1292.83 C 461.19 1287.98 462.25 1276.40 463.74 1270.47 C 466.27 1260.35 464.49 1248.06 463.03 1236.25 C 461.04 1220.05 463.22 1204.28 467.41 1187.04 C 481.60 1128.60 488.89 1065.20 475.23 1006.07 C 473.92 1000.37 475.00 995.00 475.76 989.36 C 477.88 973.68 475.72 958.50 473.08 942.76 C 471.70 934.55 473.60 926.56 472.20 918.79 Q 472.11 918.30 472.39 917.89 C 483.07 902.63 486.53 880.99 488.49 863.25 C 492.12 830.38 492.47 797.34 492.26 764.31 C 492.11 741.56 488.80 719.07 486.12 696.53 C 484.30 681.19 480.76 664.32 477.47 649.99 C 474.89 638.73 469.69 628.87 468.04 617.25 C 465.37 598.45 464.19 580.92 462.40 556.31 Q 460.86 535.06 461.01 522.74 Q 461.13 512.05 463.22 504.00 C 464.54 498.90 468.30 493.91 469.91 489.46 C 474.50 476.74 476.10 461.71 477.56 448.28 Q 477.62 447.74 478.13 447.94 L 481.73 449.35 A 0.77 0.77 0.0 0 1 482.19 449.89 Q 486.03 466.84 492.52 482.96 C 494.16 487.04 496.63 491.75 500.12 495.79 C 505.75 502.32 507.17 507.95 508.00 517.24 C 509.72 536.47 512.15 552.06 518.89 569.24 Q 521.60 576.16 527.50 587.28 Q 543.57 617.60 558.56 648.47 C 566.04 663.89 571.90 675.54 572.85 690.59 Q 572.98 692.57 572.55 700.88 Q 572.12 709.31 573.99 718.25 Q 577.87 736.78 582.37 752.38 C 585.15 761.98 586.32 769.32 586.71 778.53 C 586.92 783.46 587.58 803.53 593.41 804.06 C 599.41 804.61 599.71 774.61 600.39 768.08 A 1.12 1.12 0.0 0 1 600.80 767.33 Q 601.30 766.93 601.62 766.30 A 1.39 1.00 59.0 0 1 603.70 767.19 C 607.27 782.50 609.43 797.55 614.25 812.25 C 615.52 816.12 618.33 820.08 622.81 817.38 A 1.18 1.17 -8.4 0 0 623.35 816.66 Q 624.98 810.32 624.13 803.72 Q 621.83 785.89 618.23 768.64 A 0.53 0.53 0.0 0 1 619.24 768.34 C 622.72 777.06 636.06 814.20 645.24 816.03 C 650.64 817.10 652.13 811.12 650.95 807.31 C 648.59 799.74 644.42 791.59 642.09 784.69 Q 638.29 773.46 635.22 761.98 A 0.15 0.14 -73.3 0 1 635.47 761.84 Q 640.35 767.61 644.90 773.66 C 649.45 779.70 653.60 787.18 658.03 793.93 Q 660.09 797.07 661.70 797.82 C 665.53 799.62 670.61 795.77 669.00 791.28 C 666.63 784.66 661.63 776.66 659.33 772.19 Q 654.22 762.29 648.82 752.53 C 645.43 746.40 644.71 741.93 646.89 735.59 Q 647.08 735.05 647.60 735.27 C 650.55 736.50 652.37 737.45 654.44 740.27 Q 661.27 749.61 673.53 749.92 C 681.25 750.12 680.47 740.89 676.20 738.28 C 671.33 735.31 664.61 731.14 661.97 725.94 C 657.98 718.11 654.62 711.26 649.21 707.28 Q 637.40 698.62 623.76 693.40 C 619.45 691.75 615.12 686.26 613.76 682.47 Q 608.42 667.65 602.70 641.81 Q 594.90 606.62 590.85 578.90 Q 588.46 562.58 587.74 559.15 C 582.02 531.75 569.74 509.81 552.98 487.61 C 551.81 486.06 551.91 485.12 551.97 483.26 Q 552.48 466.57 548.70 449.61 C 546.27 438.71 541.82 430.32 537.44 420.82 Q 537.22 420.36 537.28 419.85 C 539.40 398.94 540.83 377.68 539.05 356.70 C 537.31 336.13 521.34 317.28 504.86 306.23 C 494.75 299.45 485.77 296.97 473.93 298.16 Q 464.41 299.12 453.63 298.41 C 438.05 297.39 418.32 280.58 407.40 270.35 C 405.82 268.87 404.57 267.56 404.10 265.32 Q 401.24 251.68 401.26 237.76 Q 401.26 233.73 404.68 232.04 Q 405.14 231.82 405.39 231.38 C 409.76 223.86 408.77 215.16 408.75 206.85 A 0.38 0.38 0.0 0 1 409.48 206.69 C 410.36 208.62 412.01 211.62 414.22 208.45 C 421.05 198.67 427.45 183.93 425.97 172.00 C 425.49 168.15 422.83 165.91 418.91 167.68',\n muscles: [\n {\n id: 'chest-r',\n labelKey: 'pectoralis',\n side: 'right',\n cx: 305.3,\n cy: 377.0,\n d: 'M272.91 422.84c-18.95-17.19-22-57-12.64-78.79 5.57-12.99 26.54-24.37 39.97-25.87q20.36-2.26 37.02.75c9.74 1.76 16.13 15.64 18.41 25.04 3.99 16.48 3.23 31.38 1.67 48.06q-1.35 14.35-2.05 16.89c-6.52 23.5-38.08 29.23-58.28 24.53-9.12-2.12-17.24-4.38-24.1-10.61z',\n },\n {\n id: 'chest-l',\n labelKey: 'pectoralis',\n side: 'left',\n cx: 421.1,\n cy: 376.1,\n d: 'M416.04 435c-15.12.11-34.46-6.78-41.37-21.48q-1.88-3.99-2.84-12.18c-2.89-24.41-5.9-53.65 8.44-74.79 4.26-6.26 10.49-7.93 18.36-8.56q11.66-.92 23.32-.35c10.58.53 18.02 2.74 26.62 7.87 12.81 7.65 19.73 14.52 22.67 29.75 4.94 25.57.24 64.14-28.21 74.97q-12.26 4.67-26.99 4.77z',\n },\n {\n id: 'obliques-r',\n labelKey: 'externalOblique',\n side: 'right',\n cx: 264.2,\n cy: 435.5,\n d: 'M264.21 435.53c-4.88-3.13-5.75-12.11-5.39-17.36q.03-.53.51-.75 1.8-.84 3.43.85 10.05 10.45 22.57 16.9c3.64 1.89 5.54 3.62 4.79 7.8q-.42 2.35-2.82 1.87-12.45-2.49-23.09-9.31z M287.33 452.44c-4.05 4.46-10.38 11.38-16.28 14.3a.84.83 51.1 01-.9-.1c-6.29-5.17-12.54-18.97-14.21-25.09q-.91-3.34.85-8.81.12-.39.35-.05c2.41 3.65 4.59 7.74 8.67 9.76q10.18 5.05 21.27 9.01a.61.61 0 01.25.98z M297.3 487.82c-7.36-4.23-16.68-11.37-20.55-17.57q-.32-.5.09-.92 8.72-9.04 19.84-17.87 1.46-1.17 2.81-1.67a.44.44 0 01.59.43c-.28 10.08-.4 20.42.65 30.43q.34 3.26-.68 6.15a1.9 1.9 0 01-2.75 1.02z M257.35 456.18l13.68 16.63a1.86 1.82 22.9 01.4.95c.59 5.4-2.02 12.71-3.8 17.56q-.3.84-.84.13-11.85-15.55-9.77-35.17.04-.45.33-.1z M271.69 494.07a1.53 1.52-61.8 01-.49-1.64l4.2-13.58a.98.98 0 011.51-.5c3.2 2.32 21.89 14.05 22.26 16.7q1.15 8.32.66 16.79a.9.9 0 01-1.34.73q-14.24-8.05-26.8-18.5z M299.35 544.62c-7.52-6.03-16.15-13.43-24.23-21.24-6.93-6.7-6-17.19-4.88-26.06a.44.44 0 01.72-.28q13.31 11.88 28.41 21.38.43.27.6.75c2.33 6.49.95 18.37-.07 25.23q-.09.59-.55.22z M299.09 575.53c-7.98-3.65-27.57-15.86-28.06-26.2q-.57-11.91.46-24.3a.36.36 0 01.67-.15q.84 1.36 2.17 2.54 10.59 9.45 21.68 18.31c4.37 3.49 4.34 6.46 4.16 11.74q-.3 8.82-.42 17.64-.01.72-.66.42z M308.17 657.58c-7.39-.13-12.41-4.13-17.14-9.39q-11.86-13.22-23.92-26.37-.33-.36-.33-.85.09-23.18 1.81-46.22.53-7.13 2.49-14.41a.71.71 0 011.2-.3q11.54 12.06 25.82 21.1 3.36 2.12 3.62 5.17 2.06 23.67 3.86 47.36c.58 7.62 2.31 13.36 4.43 20.82q.47 1.66-.96 2.79-.39.31-.88.3z',\n },\n {\n id: 'obliques-l',\n labelKey: 'externalOblique',\n side: 'left',\n cx: 438.7,\n cy: 444.4,\n d: 'M438.7 444.36c-2.09-4.03-.13-6.83 3.63-8.81 10.22-5.36 16.79-11 24.23-18.07a1.71 1.71 0 012.89 1.12c.33 4.74-.81 14.39-5.53 17.22-4.68 2.82-18.74 10.02-24.39 9.14q-.57-.09-.83-.6z M457.39 466.73c-3.72-1.02-13.2-10.29-16.5-14.49a.52.52 0 01.24-.81q10.94-3.75 21.31-9c3.96-2.01 6.3-5.98 8.57-9.58q.38-.59.55.09c.82 3.33 1.54 6.17.38 9.58-2.55 7.44-7.62 18.79-13.66 24.01a.96.96 0 01-.89.2z M428.43 487.22c-1.01-1.79-.82-4.55-.71-6.72q.78-15.08.48-30.27-.01-.59.55-.4 1.72.59 3.02 1.64 11.58 9.37 18.82 16.95c3.86 4.05-16.2 17.42-19.56 19.48a1.87 1.86 59.6 01-2.6-.68z M470.76 456.28a.25.25 0 01.44.13q2.03 19.67-9.8 35.22-.37.48-.6-.08c-1.37-3.29-5.86-16.13-3.51-18.91q6.3-7.47 13.47-16.36z M452.27 478.5c1.13.49 4.28 12.47 4.78 14.38q.14.5-.23.88-1.29 1.35-2.65 2.41-10.44 8.12-21.76 14.97-1.49.9-2.91 1.33a.81.81 0 01-1.05-.71q-.73-8.62.67-17.15.08-.47.44-.8c1.74-1.6 21.96-15.73 22.34-15.51a.58.03 31 00.37.2z M428.22 519.14q.11-.36.43-.56 15.3-9.66 28.83-21.69a.43.42-22.6 01.71.29c.51 8.26 2.25 18.67-4.46 25.4q-11.8 11.84-25.03 22.09-.43.34-.49-.2c-.75-6.82-1.97-18.92.01-25.33z M456.54 524.55a.04.04 0 01.07.02q1.52 13.67.41 27.4-.04.47-.28.88c-4.97 8.3-18.23 19.62-27.88 22.63q-.57.17-.58-.43-.05-10.31-.27-20.53-.1-4.8 2.63-7.09c8.54-7.13 18.56-14.62 25.9-22.88z M418.89 657.11q-1.12-1.67-.43-3.63 3.27-9.38 4.04-18.23 1.97-22.81 3.58-45.65c.16-2.32.72-6.41 2.84-7.71q14.97-9.23 27.16-21.93.41-.42.71.08 1.29 2.15 1.53 4.2 3.23 27.74 3.13 56.8a1.3 1.28-24.5 01-.33.86q-12.74 13.93-25.55 27.75c-4.8 5.17-9.09 7.87-15.73 7.96q-.61.01-.95-.5z',\n },\n {\n id: 'abs-r',\n labelKey: 'rectusAbdominis',\n side: 'right',\n cx: 311.0,\n cy: 531.7,\n d: 'M311.02 531.71a.23.23 0 01-.19-.21q-.39-10.47 1.9-20.76c1.26-5.69 7.66-9.9 13.1-12.9 9.09-5.01 18.93-11.15 28.56-14.92a1.24 1.21-42.6 01.94.03c3.28 1.52 4.78 3.87 4.82 7.68q.13 13.16-.15 26.31c-.08 3.85.78 8.39-.87 13.1q-.17.46-.59.72-2.65 1.65-4.29 1.82-21.06 2.22-43.23-.87z M321 577.76c-5.17-.33-8.71-.44-10-6.26q-3.2-14.44-.59-27.83.11-.53.64-.63c7.58-1.44 13.62-2.45 22.45-4.56q11.5-2.76 23.94-1.88c3.67.26 3.3 3.46 3.4 6.21q.46 12.55-.33 26.94-.25 4.41-1.81 8.08-.21.49-.73.6-1.39.28-3.22.29-16.89.14-33.75-.96z M347.73 429.25c7.46-3.61 10.5 6.27 10.99 11.52.48 5.06 3.46 30.61-2.78 32.93q-4.17 1.55-6.89 3.33-17.56 11.54-35.88 21.46a1.6 1.59-21.9 01-2.3-.98c-2.87-10.41-10.59-43.96 1.66-50.95 11.3-6.45 23.96-11.86 35.2-17.31z M350.35 712.81c-29.15-9.93-37.98-100.69-39.47-126.61a.99.99 0 01.33-.8c3.58-3.26 27.61-1.47 34.62-.93 4.41.34 15.27 1.31 15.26 7.53-.05 40.77.64 82.05-1.96 122.72a1.29 1.29 0 01-1.86 1.08c-2.3-1.14-4.12-2.04-6.92-2.99z',\n },\n {\n id: 'abs-l',\n labelKey: 'rectusAbdominis',\n side: 'left',\n cx: 371.9,\n cy: 473.3,\n d: 'M371.94 473.31c-5.46-2.59-2.97-24.26-2.77-29.56.25-6.8 2.41-18.63 12.64-13.8q16.26 7.67 32.34 15.72 6.18 3.1 7.13 10.05c.58 4.26 1.35 8.49 1.07 12.72q-.84 12.55-4.33 26.56-.54 2.16-1.1 3.44-.25.58-.81.31c-15.78-7.29-30.79-19.08-44.17-25.44z M382.57 533.27c-4.17-.18-9.56-.3-13.15-2.69q-.17-.11-.24-.31c-1.82-5.55-.86-11.17-.96-15.66-.18-8.4-.78-17.36.06-25.71.29-2.85 1.88-4.42 4.15-5.79q.42-.26.91-.19 1.71.25 3.21 1.03 12.48 6.44 24.75 13.26c4.96 2.75 12.21 7.02 13.72 12.41q2.93 10.56 2.39 21.49a.77.76-1.8 01-.67.71q-16.89 2.18-34.17 1.45z M373.75 578.69c-2.47 0-4.31.22-5-2.7-1.8-7.7-3.05-34.29-.19-38.81q.27-.43.77-.47 13.14-1.24 25.77 1.83c8.41 2.04 14.51 3.01 21.85 4.36a1.29 1.28.6 011.05 1.07q2.16 14.12-.73 28.07c-1.08 5.24-5.22 5.26-10.36 5.63q-14.26 1.04-33.16 1.02z M416.32 584.73q1.14.41 1.07 1.62c-1.62 26.44-9.96 116.68-40.43 126.74-2.27.75-4.15 2.12-6.35 2.73q-1.18.33-1.3-.89-.86-9.2-1.06-17.75c-.83-35.67-.91-71.2-1.01-106.88q0-.5.31-.89c4.95-6.46 41.69-7.25 48.77-4.68z',\n },\n {\n id: 'biceps-r',\n labelKey: 'biceps',\n side: 'right',\n cx: 202.3,\n cy: 448.5,\n d: 'M189.52 492.51c-2.43.62-7.38.57-7.51-3.08-.56-16.01-.42-35.49 5.11-50.26 3.19-8.54 13.89-30.22 23.27-32.72 10.08-2.68 12.68 16.59 12.6 22.8-.22 15.98-7.51 34.79-15.05 48.71-4.29 7.94-9.95 12.38-18.42 14.55z',\n },\n {\n id: 'biceps-l',\n labelKey: 'biceps',\n side: 'left',\n cx: 525.6,\n cy: 451.3,\n d: 'M526.69 486.31c-9.9-8.61-17.75-33.21-20.65-47.73-1.41-7.06-1.34-29.61 8.58-32.16 10.33-2.66 23.81 25.34 26.6 32.91q2.6 7.04 3.6 16.13 1.62 14.66 1.66 32.28c.03 11.04-16.45 1.48-19.79-1.43z',\n },\n {\n id: 'triceps-r',\n labelKey: 'triceps',\n side: 'right',\n cx: 206.2,\n cy: 514.2,\n d: 'M206.2 514.2c-5.41-.67-6.55-7.29-4.69-11.42 11.08-24.55 22.84-50.62 30.54-75.51 1.37-4.41 3.08-8.59 3.95-12.45q2.94-13.12 5.79-26.26.42-1.98 1.82-3.39a.52.52 0 01.81.1q1.04 1.69 1.94 4.56 4.63 14.65 5.15 24.92c.57 11.36-5.11 24.55-8.65 35.5q-7.69 23.78-20.25 45.39c-2.45 4.23-11.51 19.18-16.41 18.56z',\n },\n {\n id: 'triceps-l',\n labelKey: 'triceps',\n side: 'left',\n cx: 502.1,\n cy: 450.8,\n d: 'M517.69 512.06c-20.07-22.12-28.95-51.73-38.01-79.03-3.27-9.87-3.58-19.18-1.34-29.38 1.29-5.88 2.49-13.03 5.61-18.52q.32-.57.72-.06 1.35 1.67 1.79 3.69c2.67 12.33 5.14 24.49 9.07 36.52 8.25 25.28 18.58 49.8 31.1 77.2q1.42 3.1 1.05 5.33c-.81 4.89-5.46 9.25-9.99 4.25z',\n },\n {\n id: 'neck',\n labelKey: 'neck',\n side: 'midline',\n cx: 362.6,\n cy: 290.5,\n d: 'M362.65 290.52q-1.14-1.37-1.86-3.41-5.33-15.15-12.14-29.75c-2.37-5.06-1.07-9.07-7.92-10.99q-1.01-.28.02-.47c5.98-1.08 15.25.91 21.33 2q2.37.42 4.81-.09 10.09-2.13 20.45-2.12a.37.37 0 01.08.73c-6.34 1.46-5.45 5.64-7.57 10.21q-6.1 13.1-11 26.69-1.3 3.62-2.9 6.81a1.99 1.99 0 01-3.3.39z',\n },\n {\n id: 'neck-r',\n labelKey: 'neck',\n side: 'right',\n cx: 354.0,\n cy: 315.1,\n d: 'M354.01 315.07q-3.49-3.65-5.9-8.23c-6.46-12.3-11.03-25.42-16.12-38.77-2.92-7.66-1.98-19.44-1.61-27.6q.03-.58.47-.21c9.06 7.39 11.33 17.46 15.67 27.62 5.4 12.61 15.4 33.31 9.11 46.92a1 .99 35.5 01-1.62.27z M345.77 316c-4.12-1.96-12.78-6.76-15.07-11.38-4.29-8.65-2.69-16.02-2.28-25.25a1 1 0 011.95-.28c4.29 12.42 10.5 24.4 15.71 36.61q.23.55-.31.3z',\n },\n {\n id: 'neck-l',\n labelKey: 'neck',\n side: 'left',\n cx: 372.8,\n cy: 314.7,\n d: 'M372.75 314.71c-5.78-9.67 1.71-31.17 6.17-40.68 5.95-12.68 8.21-24.68 18.35-33.9a.49.49 0 01.82.35c.28 8.68.84 19.39-1.97 27.72-5.26 15.58-11.39 33.46-21.42 46.62a1.18 1.18 0 01-1.95-.11z M398.01 278.49a.5.49 35.5 01.87-.14c2.01 2.7 1.62 11.6 1.61 15.13-.04 12.42-8.2 17.45-17.9 22.58a.35.35 0 01-.48-.46c5.51-12.02 11.85-24.46 15.9-37.11z',\n },\n {\n id: 'trapezius-r',\n labelKey: 'trapezius',\n side: 'right',\n cx: 285.0,\n cy: 307.0,\n d: 'M285.01 307.01a.89.89 0 01-.11-1.64q19.44-9.61 35.65-24.8 1.68-1.57 3.31-.31.4.32.45.82 1.25 12.61-1.57 25.41c-.74 3.32-2.55 4.23-5.9 4.48q-16.02 1.24-31.83-3.96z',\n },\n {\n id: 'trapezius-l',\n labelKey: 'trapezius',\n side: 'left',\n cx: 424.3,\n cy: 295.4,\n d: 'M414 311.19c-5.24-.12-7.81-.64-8.9-6.27q-2.33-12.09-1.17-23.94.06-.61.61-.89 1.66-.85 3.65.99 16.12 14.87 33.97 23.63 3.65 1.79-.27 2.89-13.88 3.91-27.89 3.59z',\n },\n {\n id: 'deltoids-r',\n labelKey: 'deltoid',\n side: 'right',\n cx: 235.5,\n cy: 348.1,\n d: 'M274.06 311.69q3.94 2.77 4.33 8.14.04.48-.38.73c-9.98 5.88-24.35 7.45-28.82 19.75-2.31 6.36-.97 17.35-1.43 23.68q-.55 7.51-5.73 14.07-10.37 13.11-13.81 16.67c-3.41 3.53-6.81 1.76-10.69-.47-15.42-8.87-24.95-25.45-22.52-43.22 2.05-14.92 12.71-25.79 24.06-35.02 16.99-13.82 35.58-17.99 54.99-4.33z',\n },\n {\n id: 'deltoids-l',\n labelKey: 'deltoid',\n side: 'left',\n cx: 496.1,\n cy: 347.2,\n d: 'M450.39 320.75q-.95-.52-.7-1.58c1.57-6.61 5.8-9.1 12.14-11.9 24.99-11.03 43.76 3.33 60.17 20.74 20.73 21.99 11.81 56.44-14.82 68.19-4.41 1.94-6.79-1.03-9.81-4.51-5.81-6.7-13.46-14.12-15.99-22.8-3.93-13.43 4.32-27.54-9.64-37.62q-8.22-5.93-17.99-9.08-1.84-.59-3.36-1.44z',\n },\n {\n id: 'adductors-r',\n labelKey: 'adductors',\n side: 'right',\n cx: 280.3,\n cy: 647.4,\n d: 'M280.26 647.4c11.65 10.74 22.18 21.04 31.02 34.3 15.82 23.72 27.55 49.72 34.01 77.58 1.34 5.79-6.14 20.34-12.62 20.22q-.52-.01-.72-.49-.67-1.59-1.21-3.13c-14.68-41.71-27.96-79.71-46.87-117.01-1.9-3.74-3.05-7.33-4.06-11.2a.27.27 0 01.45-.27z M331.64 898.32q-.17.57-.23-.02c-2.23-25.01-8.47-50.09-14.25-74.53q-19.4-82.1-42.46-163.69-.58-2.08.33-.13c19.88 42.53 38.94 86.51 51.64 132.07 9.49 34.06 15.59 71.67 4.97 106.3z M334.46 789.17c1.56-2.63 14.39-20.38 16.2-20.37a1.71 1.7-89.2 011.7 1.76q-1.12 34.88-7.4 68.95c-.38 2.06-1.41 4.27-2.16 6.23q-.24.62-.34-.04-3.68-25.45-8.44-50.7c-.34-1.79-.63-4 .44-5.83z',\n },\n {\n id: 'adductors-l',\n labelKey: 'adductors',\n side: 'left',\n cx: 395.5,\n cy: 779.4,\n d: 'M395.47 779.4c-5.7 1.33-11.34-11.87-12.46-15.86q-.61-2.18-.02-4.65 10.17-42.64 35.06-78.81c9.47-13.77 18.83-22.36 29.85-32.56q.55-.5.4.22-1.12 5.7-3.73 10.83c-19.44 38.38-33.3 79.2-47.77 119.65a1.84 1.83-86.4 01-1.33 1.18z M453.65 658.99q.67-1.43.23.09-26.73 93.75-48.63 189.74c-1.98 8.7-3.66 17.9-5.44 26.84q-2.19 11.05-2.78 22.43a.15.15 0 01-.3.04c-8.18-24.48-6.74-51.98-1.87-76.86 11.07-56.49 34.44-110.42 58.79-162.28z M377.91 768.67c1.49.84 1.76 1.49 2.66 2.66q6.16 8.04 12.23 16.13c1.88 2.52 1.97 4.18 1.38 7.45q-4.57 25.23-8.43 50.57-.11.71-.4.05-1.89-4.29-2.54-8.09-5.57-32.28-6.98-65.01-.09-2 .81-3.44a.95.94 30.8 011.27-.32z',\n },\n {\n id: 'quadriceps-r',\n labelKey: 'quadriceps',\n side: 'right',\n cx: 292.4,\n cy: 935.6,\n d: 'M292.42 935.6q-.95-.52-1.57-1.4-4.1-5.79-7-13.53-7.8-20.79-13.3-42.33c-9.06-35.53-19.33-71.36-25.03-107.59-5.33-33.86 4-74.19 20.7-103.37q.35-.62.53.07c14.44 55.57 39.03 107.94 41.45 165.34 1.11 26.34.66 52.96-3.6 79.03-.63 3.83-4.73 27.81-12.18 23.78z M275.11 942.93q-2.42-2.18-3.57-5.24c-3.98-10.61-7.68-21.02-12.81-31.32-7.85-15.76-10.77-34.56-13.2-51.46-2.11-14.63-2.31-31.47-3.93-47.18-.22-2.16-1.04-12.78.46-13.79q1.36-.92 2.08.55c1.5 3.08 3.12 6.12 3.66 9.58q8.21 52.38 26.36 102.15c2.87 7.87 9.98 30.5 1.85 36.74a.71.7-42.5 01-.9-.03z M322.69 945.72c-3.73 6.14-10.77-2.43-12.6-5.6-3.16-5.47-2.62-14.93-1.78-20.81 4.03-28.09 5.6-52.81 3.48-80.78q-.06-.79.28-.08 15.77 32.83 14.26 68.9c-.4 9.54-2.94 22.48-2.91 34.13q.01 3.02-.73 4.24z',\n },\n {\n id: 'quadriceps-l',\n labelKey: 'quadriceps',\n side: 'left',\n cx: 437.8,\n cy: 933.5,\n d: 'M437.82 933.52c-8.9 14.18-15.15-26.74-15.46-29.25q-5.26-43.04-1.19-86.08c4.9-51.8 26.91-99.32 40.38-150.92q.18-.66.5-.06c17.25 31.67 25.39 68.28 20.54 104.36q-2.29 17.02-8.71 42.76-7.56 30.25-15.2 60.47-6.13 24.25-15.06 47.61-1.83 4.79-5.8 11.11z M451.79 942.6c-9.95-10.01 4.97-42.91 8.94-55.41q12.55-39.53 19.27-80.47c.49-2.97 2.64-12.34 5.41-13.28a.83.83 0 011.09.64q.74 4 .45 7.92c-1.99 26.52-3.37 58.99-11.01 87.73q-2.53 9.5-7.46 18.8c-4.38 8.24-6.97 16.72-10.08 25.27q-1.66 4.54-4.55 8.63a1.35 1.35 0 01-2.06.17z M406.69 946.81c-3.24-2.77-1.48-10.64-2.01-14.71q-2.23-17.18-2.57-22.16c-1.75-25.07 3.61-49.11 13.98-71.92q.23-.51.2.05c-1.2 19.15-1.28 38.18.83 57.38q1.68 15.4 3.39 30.8c.43 3.92-.31 9.71-2.09 13.33-1.62 3.28-7.58 10.77-11.73 7.23z',\n },\n {\n id: 'knees-r',\n labelKey: 'knee',\n side: 'right',\n cx: 297.7,\n cy: 1008.4,\n d: 'M297.69 1008.37c-7.27 7.29-16.34 3.42-19.64-5.18q-6.18-16.11-9.57-30.68c-1.99-8.6-2.24-19.68 9.72-19.91q13.12-.24 26.05 2.15 1.71.32 3.29 1.02a1.17 1.15 4.2 01.63.72c3.17 10.27 2.5 23.36.05 33.69q-2.37 10.01-10.53 18.19z M288.03 1059.54c-6.99-5.81 13.75-46.43 17.3-53.91q7.3-15.38 10.9-32.01c.74-3.42 2-6.31 4.18-8.64a1.36 1.35 54.7 012.23.39c3.97 9.09 1.66 13.86-1.67 24.65q-10.23 33.19-27.2 63.57-1.8 3.23-4.2 5.84a1.13 1.12-49 01-1.54.11z',\n },\n {\n id: 'knees-l',\n labelKey: 'knee',\n side: 'left',\n cx: 430.4,\n cy: 1008.3,\n d: 'M430.44 1008.31c-12.92-12.62-14.34-33.49-10.92-50.31.31-1.53 1.09-2.53 2.73-2.86q11.44-2.25 23.08-2.59c14.13-.42 17.31 5.67 14.54 18.63q-3.13 14.69-9.12 30.37c-3.45 9.03-11.63 15.25-20.31 6.76z M438.96 1059.52q-2.25-1.89-3.8-4.64-20.15-35.92-31.06-75.66-2.11-7.68 1.95-14.16a1.16 1.16 0 011.91-.08c2.26 3.06 3.4 5.4 4.26 9.37 3.98 18.54 10.94 32.53 20.07 51.09 3.51 7.14 11.38 26.16 8.5 33.61a1.16 1.16 0 01-1.83.47z',\n },\n {\n id: 'tibialis-r',\n labelKey: 'tibialisAnterior',\n side: 'right',\n cx: 263.5,\n cy: 973.6,\n d: 'M263.52 973.59a.6.6 0 011.09-.14q1.38 2.22 1.83 5.06c7.87 49.97 18.01 99.59 25 149.68q4.63 33.19 4.31 67.55-.04 3.45-2.15 5.76-.4.44-.75-.03-1.89-2.58-3.08-5.51c-11.63-28.6-20.46-58.12-24.26-88.68q-4.96-39.97-5.72-69.53c-.13-5.27-.17-12.59.35-18.98q1.7-20.77 2.52-41.6c.04-1.16.52-2.43.86-3.58z',\n },\n {\n id: 'tibialis-l',\n labelKey: 'tibialisAnterior',\n side: 'left',\n cx: 463.4,\n cy: 973.7,\n d: 'M463.39 973.68a.7.7 0 011.25-.1c.27.46.64 1.34.68 1.93q1.26 20.88 2.53 41.76.66 10.82.39 19.98-1.23 40.77-7.51 82.25c-3.91 25.87-12.19 51.55-21.96 75.76q-1.13 2.79-3.27 6.13-.29.44-.71.12c-2.68-2.06-2.32-6.7-2.29-10.32.26-31.03 2.71-55.52 8.76-91.4q9.27-55.06 18.94-110.05c.8-4.5.99-10.52 3.19-16.06z',\n },\n {\n id: 'calves-r',\n labelKey: 'gastrocnemius',\n side: 'right',\n cx: 252.1,\n cy: 1032.6,\n d: 'M252.09 1032.57c.24-3.71 2.14-22.17 4.63-24.18a1.03 1.02-17.9 011.67.85c-.45 7.89-1.27 16-1.49 23.45q-.57 18.93-.66 37.88-.02 3.63.34 6.85c2.08 18.76 5.56 37.32 9.3 55.8 3.82 18.84 9.13 37.64 13.11 56.63q2.44 11.68 2.08 17.95c-.32 5.7-3.08 20.49-8.51 23.92a.62.62 0 01-.84-.16q-1.2-1.65-.95-3.55c.92-7.26 1.45-14.15-.3-21.52q-8.25-34.74-13.62-59.06c-1.86-8.44-3.17-17.18-3.93-26.3q-3.69-44.24-.83-88.56z M315.01 1025.17a.16.16 0 01.32.02c4.06 25.75 8.98 52.72 8.71 77.81q-.13 12.06-5.74 26.31c-7.2 18.3-8.93 38.57-15.95 56.93q-.18.48-.21-.03c-1.87-34.47-5.67-65.91-8.56-103.28q-.97-12.49 4.44-23.14 7.47-14.69 15.14-29.29c.81-1.55 1.35-3.62 1.85-5.33z',\n },\n {\n id: 'calves-l',\n labelKey: 'gastrocnemius',\n side: 'left',\n cx: 455.5,\n cy: 1231.7,\n d: 'M455.5 1231.67c-7.13-5.81-9.23-24.34-8.2-31.86 1.41-10.32 4.63-23.14 7.98-36.33q9.54-37.46 15.15-75.74c2.86-19.5 1.53-40.15.75-59.8-.22-5.67-.98-12.51-1.23-18.75a.97.97 0 011.87-.4c.35.86.92 1.76 1.12 2.68q2.96 14.31 3.31 20.53 2.37 43.28-.49 84.75-1.21 17.42-5.43 35.77-6.33 27.51-12.84 54.98-2.01 8.49-.11 18.36c.36 1.9.11 3.95-.68 5.55a.79.79 0 01-1.2.26z M412.77 1025.44a.14.14 0 01.27-.04c4.88 11.62 10.93 22.01 17.28 34.78 4.07 8.19 4.71 14.41 4.1 24.25-2.13 34.3-6.27 68.85-8.45 101.59q-.05.69-.31.05-1.48-3.67-2.28-6.75c-4.34-16.75-8.78-38.38-16.39-57.57q-1.4-3.55-2.2-10.11c-1.78-14.73-.2-31.24 2.04-45.88q3.06-20.02 5.94-40.32z',\n },\n {\n id: 'forearm-r',\n labelKey: 'forearmFlexors',\n side: 'right',\n cx: 127.2,\n cy: 683.0,\n d: 'M127.23 683.05c-4.07-2.12 1.27-27.07 2.25-31.57 4.98-23.03 9.17-46.17 13.91-69.25q1.53-7.47 2.13-15.13c.93-12.09.81-22.15 6.23-31.59 7.1-12.33 13.54-29.16 26.1-36.73a1.98 1.97 62.7 012.84.91c1.92 4.48 1.93 8.28 2.06 14.15.44 19.77-1.3 41.04-8.72 59.67-11 27.62-22.22 55.21-32.62 82.91-4.04 10.76-7.56 20.66-12.82 26.39q-.59.65-1.36.24z M201.5 527.4a.84.84 0 01.67.65c3.98 17.15-2.93 39.36-10.95 54.41-4.6 8.63-13.06 20.43-18.21 31.33q-13.21 27.92-24.58 56.64-2.51 6.35-6.61 11.02a1.43 1.43 0 01-2.5-.81q-.36-3.78.84-7.17 10.31-29.18 21.57-57.99c6.32-16.18 14.55-31.65 20.66-47.87 3.69-9.82 5.36-22.36 7.32-30.62 1.49-6.27 4.19-11.06 11.79-9.59z M207.33 540.4a.6.59-63.1 011.03-.34l5.38 6.02q.4.45.33 1.06-.52 4.1-1.29 5.84-6.91 15.65-13.69 31.35c-5.41 12.53-16.33 28.4-23.51 44.89-8.3 19.08-16.03 39.32-26.75 57.16a.36.36 0 01-.62 0l-.19-.32q-.17-.28-.06-.59 10.08-29.91 23.05-58.65 2.9-6.42 5.47-11.21c4.62-8.59 10.86-16.17 14.62-23.02q13.23-24.13 16.23-52.19z',\n },\n {\n id: 'forearm-l',\n labelKey: 'forearmFlexors',\n side: 'left',\n cx: 600.1,\n cy: 683.0,\n d: 'M600.08 683.04c-5-4.14-8.97-15.46-11.29-21.56-5.82-15.25-11.38-30.55-17.58-45.7q-9.15-22.39-18.02-44.89c-5.58-14.19-7.32-31.42-7.99-46.57-.29-6.44-.68-19.43 2.67-25.02a1.71 1.71 0 012.25-.63c6.72 3.52 11.29 9.96 14.87 16.5q6.25 11.38 12.68 22.66c1.97 3.45 2.93 7.66 3.41 12.06 1.16 10.6 1.55 21.29 3.66 31.65 3.93 19.29 7.38 38.63 11.47 57.92 1.5 7.07 9.3 39.08 5.12 43.5a.91.91 0 01-1.25.08z M586.58 681.46q-4.35-4.47-6.75-10.61-11.35-28.91-24.59-57.01c-5.72-12.13-14.32-22.86-19.97-35.1-7.1-15.36-12.9-33.32-9.27-50.31a1.44 1.43-87.1 011.23-1.12c7.47-.88 9.29 2.88 11.02 9.2 3.39 12.42 4.76 25.91 9.75 36.7 15.55 33.65 27.61 64.94 39.31 98.42 1.13 3.24 2.05 5.47 1.62 9.04a1.38 1.37 26.3 01-2.35.79z M579.58 686.43q-3.92-5.77-6.87-12.13-8.05-17.34-19.75-44.5-2.68-6.24-6.46-13.62c-5.14-10.05-13.15-22.36-17.34-31.85q-9.55-21.68-13.66-31.36-1.09-2.58-1.33-5.87-.04-.61.37-1.07l5.24-5.85a.69.69 0 011.2.4q2.74 27.05 15.49 50.75 1.7 3.17 8.26 12.86 7.02 10.39 12.18 21.88 8.71 19.41 20.19 50.1 2.22 5.92 3.13 9.98a.36.36 0 01-.65.28z',\n },\n {\n id: 'hands-r',\n labelKey: 'hand',\n side: 'right',\n cx: 101.0,\n cy: 745.9,\n d: 'M100.98 745.85c-9.03-6.62-15.78-13.18-13.3-24.59 2.67-12.29 15.01-20.6 25.37-26.21 7.76-4.21 18.22-1.68 26.15.97 7.14 2.39 11.11 6.16 11.1 13.86q-.04 18.51-4.75 36.37c-5.47 20.76-34.48 6.99-44.57-.4z M53.81 746.32a.91.91 0 01-.74-.95c.14-2.49-.23-6.34 2.25-7.8 4.66-2.71 11.37-5.53 14.15-10.3q6.32-10.86 16.56-20.3 1.27-1.17.64.44c-1.45 3.73-2.86 7.21-3.87 11.59-2.76 11.9-14.62 30-28.99 27.32z M87.21 745.05c1.44.46 8.14 2.66 8.61 4.55 1.26 5.12-4.42 8.54-7 12.25-7.73 11.1-15.12 23.38-24.25 33.28a1.22 1.22 0 01-2.11-.86c.11-3.93.38-7.1 2.43-10.65q10.27-17.71 19.31-36.11.32-.65 2.13-2.27.38-.35.88-.19z M108.11 758.12a2.16 2.16 0 011.07 2.87q-10.49 22.55-19.92 45.81c-1.45 3.56-4.37 5.15-7.82 6.04a1.35 1.34-8.1 01-1.69-1.26c-.11-3.05.37-5.87 1.58-8.9q8.1-20.28 15.15-40.96c.41-1.2.62-3.33 1.69-4.85a1.21 1.21 0 01.91-.49q4.72-.21 9.03 1.74z M134.09 799.9q-1.16-1.7-1.41-3.73-2.1-17.07-1.18-34.29.03-.6.61-.75l6.93-1.85q.68-.19.65.52-.51 10.9-.85 21.71c-.28 8.58.1 12.65-4.17 18.4a.36.36 0 01-.58-.01z M108.13 814.65a1.48 1.48 0 01-1.62-1.47c-.02-2.83-.14-5.66.32-8.53q2.9-17.79 5.4-35.65.53-3.84 1.58-7.56a.66.66 0 01.76-.48l7.26 1.24a.97.97 0 01.78 1.14q-4.76 23.96-9.1 46.26-.9 4.64-5.38 5.05z',\n },\n {\n id: 'hands-l',\n labelKey: 'hand',\n side: 'left',\n cx: 591.3,\n cy: 756.0,\n d: 'M591.31 755.99c-8.06-2.93-8.66-9.76-10.28-17.06q-3.22-14.42-3.1-29.3.04-4.06 1.46-6.55c4.34-7.57 18.16-9.91 25.63-10.35 8.75-.51 18.37 6.96 24.99 12.27q8.92 7.17 10.74 17.52c2.45 13.89-12.11 23.41-22.7 29.04-6.95 3.69-18.63 7.39-26.74 4.43z M641.97 706.78q10.85 9.65 17.61 21.91c1.63 2.97 9.74 6.76 12.87 8.59 2.9 1.7 3.03 4.81 2.55 8.5q-.06.42-.48.49c-8.16 1.32-11.99-1.93-17.72-7.23-10.35-9.58-10.5-20.33-15.33-31.9q-.54-1.29.5-.36z M638 760.07c-2.54-3.42-7.52-6.03-5.44-11.11q.18-.44.61-.63l7.41-3.3q1.29-.58 2.05.62 3.33 5.23 5.69 10.04 6.84 13.94 14.71 27.33c1.35 2.29 4.28 10.16 2.25 12.11a1.22 1.22 0 01-1.77-.08c-9.43-10.98-16.85-23.36-25.51-34.98z M647.83 812.68c-4 .24-7.71-2.87-9.11-6.38q-9.28-23.27-19.74-45.33a2.05 2.05 0 01.92-2.71q4.5-2.28 9.62-1.7a1.09 1.07 83.8 01.89.73q7.5 23.06 16.57 45.5 1.8 4.46 1.5 9.24a.7.7 0 01-.65.65z M596.17 761.18a.84.84 0 01.62.81c-.01 4.86.95 35.3-2.71 37.67q-.49.32-.82-.17-3.41-5.21-3.51-8.49-.45-15.62-1.16-31.23-.03-.72.66-.52l6.92 1.93z M621.09 814.28c-4.35 1.91-5.92-3.77-6.5-6.56q-4.52-21.91-8.88-43.95a1.41 1.41 0 011.14-1.66l6.8-1.18a.92.92 0 011.06.76q2.79 16.32 5.09 32.91c.85 6.17 2.2 12.25 1.8 18.95q-.03.52-.51.73z',\n },\n {\n id: 'ankles-r',\n labelKey: 'ankle',\n side: 'right',\n cx: 291.9,\n cy: 1208.1,\n d: 'M291.88 1208.11c5.48-1.03 11.85 5.55 13.38 10.37q2.45 7.74 1.47 16.83-.09.83-.45.08c-4.31-9.05-8-16.99-15.39-23.88a1.98 1.98 0 01.99-3.4z M275.88 1270.94c-4.41-3.87-7.4-7.17-4.91-13.37q4.78-11.92 5.49-21.32.62-8.27 6.22-12.84c9-7.33 20.8 15 23.1 22.1 2.55 7.91 4.83 16.36 4.49 24.5-.31 7.14-2.02 17.4-6.49 23.1q-.3.38-.53-.05c-5.67-10.74-18.6-14.41-27.37-22.12z',\n },\n {\n id: 'ankles-l',\n labelKey: 'ankle',\n side: 'left',\n cx: 430.9,\n cy: 1209.1,\n d: 'M430.92 1209.12c2.24-1.35 10.54-2.02 6.02 2.65q-9.99 10.32-14.82 23.8a.28.28 0 01-.55-.08c-.52-10.27-.48-20.45 9.35-26.37z M445.01 1223.26c8.45 6.56 6.46 16.66 9.35 25.59q1.76 5.43 3.47 10.88c3.84 12.26-27.75 21.49-32.21 32.42q-1.02 2.51-2.17.05c-6.91-14.82-6.79-29.36-1.78-44.58q2.82-8.57 8.02-16.04c3.02-4.35 9.61-12.76 15.32-8.32z',\n },\n {\n id: 'feet-r',\n labelKey: 'foot',\n side: 'right',\n cx: 277.7,\n cy: 1312.2,\n d: 'M264.5 1334.5c-3.98-.34-18.59-4.25-19.04-9.44a1.4 1.4 0 01.27-.94c9.66-13.03 20.9-25.49 28.65-39.78q.25-.47.78-.37 9.76 1.78 17.73 7.65a1.19 1.18 43 01.07 1.86c-1.32 1.11-1.65 2.62-1.06 4.35 2.96 8.57-.92 16.55-4.81 25.34-1.79 4.06-1.76 8.99-2.81 13.62a1.56 1.56 0 01-1.99 1.14q-8.36-2.64-17.79-3.43z M291.87 1340.12c-2.25-2.64-2.07-5.93-.78-9.35q3.34-8.88 4.02-18.35.43-6.02 1.25-8.74 1.32-4.37 3.45-8.22a.66.65 53.7 011.21.19q1.97 9.26 6.28 17.3c2.59 4.85-.82 11.49-2.92 16.14a1.81 1.78-35.8 00-.16.94q.42 4.3-1.9 7.94-.22.33-.61.43l-8.79 2.06a1.06 1.06 0 01-1.05-.34z',\n },\n {\n id: 'feet-l',\n labelKey: 'foot',\n side: 'left',\n cx: 450.2,\n cy: 1312.1,\n d: 'M444.66 1337.65q-1.08-1.3-1.28-3.09c-.52-4.48-.73-8.39-2.77-12.64-3.51-7.31-7.06-16.37-4.43-23.19.77-1.99.92-3.79-.76-5.13a1.29 1.28 46.4 01.04-2.04q7.96-5.76 17.59-7.64.46-.1.69.32c7.25 13.1 17.21 24.83 26.45 36.56q1.11 1.41 2.51 3.8a1.17 1.14-51 01.09.95c-1.75 5.01-12.93 7.89-17.77 8.55q-9.87 1.36-19.54 3.82a.82.8-26.2 01-.82-.27z M426.94 1338.55c-2.01-.34-2.96-5.48-3-7.12-.15-6.02-6.29-11.65-3.12-17.89q4.35-8.53 6.34-17.75a.78.78 0 011.47-.17c2.12 4.52 4.18 9.08 4.35 14.33q.35 10.43 3.97 20.24c1.19 3.22 1.52 5.83.39 8.78a2.32 2.31 19.3 01-2.87 1.38q-3.44-1.09-7.53-1.8z',\n },\n ],\n};\n\nexport const MUSCLE_MALE_BACK: MuscleFigureArt = {\n viewBox: '724 0 724 1448',\n silhouette:\n 'M1028.14 166.45c1.03 5.06 1.36 9.61 6.41 11.53 13.06 4.95 16.74 15.51 23.52 27.48 1.387 2.447 3.863 3.623 7.43 3.53a910.025 910.025 0 0136.94-.25c6.23.09 9.27-7.55 11.48-12.3 4.31-9.27 10.37-15.83 20.28-18.94.333-.1.603-.287.81-.56 1.92-2.58 3.043-5.43 3.37-8.55l2.31-1.51a.977.977 0 01.99-.08c11.92 5.42-3.35 35.31-8.21 42.45-.761 1.11-2.423 1.028-3.06-.15l-1.26-2.32c-.133-.253-.32-.297-.56-.13-.34.24-.48.61-.42 1.11.86 7.64.75 16.87-2.96 23.31-.173.3.839.041-3.7 4.71-3.34 3.436-74.18 3.78-75.48-1.38a1.465 1.465 0 00-.55-.82c-4.15-2.97-6.07-7.95-6.16-12.39-.03-1.68.18-14.28-.53-14.63-.207-.1-.33-.037-.37.19-.3 1.553-1.183 2.597-2.65 3.13a.951.951 0 01-1.07-.32c-7.29-9.56-12.32-22.18-12.97-33.54-.34-6.04 1.797-9.23 6.41-9.57zm29.95 61.71c.173 14.187 18.967 14.703 19.1-1.37.03-4.05-.38-6.54-4.68-7.3-4.2-.75-11.87-1.47-13.85 2.91-.413.92-.603 2.84-.57 5.76zm31.71-3.35c.36 19.647 18.59 14.82 18.87 5.94.13-3.9 1.32-9.43-2.88-10.79-4.25-1.38-16.12-2.54-15.99 4.85z M1138.38 168.39q-.49 4.68-3.37 8.55-.31.41-.81.56c-9.91 3.11-15.97 9.67-20.28 18.94-2.21 4.75-5.25 12.39-11.48 12.3q-18.46-.25-36.94.25-5.35.14-7.43-3.53c-6.78-11.97-10.46-22.53-23.52-27.48-5.05-1.92-5.38-6.47-6.41-11.53q-6.64-26.16 4.43-48.88c8.13-16.7 34.61-21.41 51.58-21.04 4.89.11 9.69-.11 14.42.85 18.79 3.8 33.17 8.5 39.34 28.66q6.38 20.88.47 42.35z',\n outline:\n 'M 1028.14 166.45 Q 1021.22 166.96 1021.73 176.02 C 1022.38 187.38 1027.41 200.00 1034.70 209.56 A 0.95 0.95 0.0 0 0 1035.77 209.88 Q 1037.97 209.08 1038.42 206.75 Q 1038.48 206.41 1038.79 206.56 C 1039.50 206.91 1039.29 219.51 1039.32 221.19 C 1039.41 225.63 1041.33 230.61 1045.48 233.58 A 1.48 1.46 -79.2 0 1 1046.03 234.40 C 1047.33 239.56 1046.14 264.59 1042.52 268.26 Q 1027.38 283.59 1008.53 293.99 C 997.30 300.18 985.80 298.88 972.00 298.05 C 960.16 297.34 951.79 300.13 941.86 307.09 C 927.96 316.83 911.37 335.39 909.24 353.00 C 906.85 372.86 908.46 396.71 910.58 417.97 Q 910.78 420.04 909.97 421.91 C 907.17 428.36 903.51 435.29 901.56 441.28 Q 895.91 458.72 896.11 477.26 Q 896.15 480.50 895.88 486.15 Q 895.86 486.66 895.55 487.06 C 879.06 508.02 866.67 530.27 860.84 556.43 Q 859.72 561.44 857.62 576.15 C 853.15 607.45 846.97 639.64 837.96 670.48 C 835.37 679.35 832.82 690.15 824.31 693.38 Q 811.21 698.35 799.91 706.70 C 793.05 711.77 790.22 717.94 785.68 726.75 C 782.37 733.16 764.38 739.29 769.45 747.77 C 771.01 750.37 774.09 750.14 776.79 749.81 Q 787.25 748.51 793.13 740.83 C 795.42 737.84 797.13 736.50 800.36 735.31 A 0.63 0.63 0.0 0 1 801.16 735.68 C 803.48 741.92 802.81 745.80 799.51 751.90 Q 789.51 770.39 779.78 789.01 C 775.87 796.49 784.57 802.15 789.55 794.51 C 796.72 783.50 802.47 773.20 812.06 762.59 Q 812.62 761.98 812.43 762.79 Q 807.49 783.70 798.01 804.03 Q 795.79 808.79 797.53 813.47 C 798.35 815.65 800.88 816.85 802.95 815.95 C 807.95 813.78 812.74 805.60 815.08 800.58 Q 820.51 788.92 825.23 776.95 Q 827.37 771.52 829.06 768.26 A 0.34 0.34 0.0 0 1 829.69 768.47 C 828.65 774.94 819.92 813.84 825.80 817.66 C 829.47 820.04 832.91 815.52 833.80 812.51 Q 838.73 795.91 842.08 776.75 C 842.69 773.31 843.62 770.03 844.54 766.92 A 1.49 1.49 0.0 0 1 847.45 767.13 C 849.06 778.16 848.17 788.91 850.91 799.85 C 851.57 802.48 854.41 806.12 856.99 802.69 C 861.32 796.92 861.47 780.19 861.98 770.25 C 862.50 760.22 866.62 750.03 868.70 741.28 C 871.57 729.16 876.10 714.64 875.42 700.50 C 874.79 687.46 876.48 676.40 882.00 664.53 Q 899.81 626.31 920.51 587.27 C 928.60 572.01 933.68 558.17 937.01 542.00 Q 938.40 535.24 940.57 511.31 C 941.06 506.01 943.33 501.94 947.04 497.29 C 957.02 484.77 962.25 465.95 965.86 450.00 Q 965.97 449.54 966.40 449.37 L 969.87 447.93 Q 970.39 447.72 970.44 448.27 C 972.08 465.19 974.18 483.97 982.58 498.42 Q 985.25 503.01 985.69 509.45 C 985.76 510.51 986.43 511.70 986.49 512.50 C 986.89 517.68 987.09 525.23 986.82 531.50 Q 985.00 573.11 980.47 614.52 C 978.98 628.13 972.65 640.33 969.66 653.60 C 966.01 669.78 963.02 685.46 961.19 702.45 C 959.24 720.52 956.19 739.39 955.83 756.75 C 954.96 797.57 955.28 842.51 962.96 884.21 C 965.15 896.11 968.33 907.72 975.37 917.40 A 1.48 1.46 27.9 0 1 975.65 918.29 C 975.42 926.20 976.32 934.21 975.03 942.01 C 971.89 960.94 969.95 978.86 973.41 997.96 C 973.70 999.53 973.58 1001.87 973.23 1003.42 C 959.26 1065.20 965.77 1130.76 981.86 1191.82 C 985.51 1205.68 986.32 1220.46 984.96 1234.92 C 984.02 1244.98 982.27 1255.20 983.30 1265.30 C 984.08 1272.87 988.23 1284.18 983.14 1291.21 C 978.75 1297.25 969.45 1303.98 963.07 1312.35 C 960.11 1316.25 952.52 1335.31 964.02 1333.54 Q 964.55 1333.46 964.42 1333.98 C 962.73 1340.59 969.52 1340.54 974.36 1340.95 Q 974.88 1341.00 975.24 1341.37 C 978.64 1344.83 981.89 1347.54 986.66 1344.41 Q 987.11 1344.12 987.46 1344.52 C 992.32 1350.09 997.09 1350.27 1003.06 1346.11 Q 1003.50 1345.80 1003.93 1346.12 C 1005.34 1347.18 1006.20 1348.82 1007.59 1349.58 Q 1011.98 1351.98 1017.08 1351.27 A 1.56 1.56 0.0 0 0 1017.93 1350.86 Q 1024.28 1344.70 1027.72 1339.46 C 1032.14 1332.71 1030.13 1325.67 1029.71 1317.92 C 1029.27 1309.96 1031.28 1302.44 1033.52 1294.97 C 1034.58 1291.42 1034.05 1286.50 1033.60 1282.59 Q 1032.89 1276.40 1034.01 1270.28 C 1034.95 1265.11 1035.75 1261.39 1034.60 1257.67 Q 1029.90 1242.46 1029.51 1227.25 Q 1028.64 1193.94 1033.40 1159.73 C 1035.13 1147.30 1038.92 1136.76 1043.43 1124.47 Q 1045.16 1119.75 1045.73 1115.31 C 1050.32 1079.07 1044.60 1044.51 1039.86 1008.73 C 1038.66 999.61 1043.98 993.60 1045.54 987.51 C 1048.41 976.36 1049.80 959.10 1047.93 945.66 C 1046.88 938.09 1047.48 931.84 1049.21 924.99 C 1053.15 909.35 1056.75 892.75 1059.78 880.01 Q 1066.27 852.63 1072.60 825.22 Q 1075.98 810.55 1076.49 805.75 Q 1077.50 796.31 1077.72 775.82 Q 1077.85 764.16 1076.54 752.58 Q 1076.32 750.58 1075.99 749.61 Q 1075.45 748.03 1076.95 748.78 L 1083.35 752.00 A 1.10 1.08 44.4 0 0 1084.32 752.00 L 1091.50 748.31 A 0.24 0.24 0.0 0 1 1091.84 748.59 Q 1090.49 753.63 1090.36 758.75 C 1089.82 779.99 1089.54 802.24 1094.28 822.45 Q 1101.55 853.47 1108.92 884.46 C 1111.25 894.25 1114.60 910.13 1117.95 922.87 C 1119.13 927.36 1119.75 931.95 1120.50 936.49 C 1121.14 940.42 1119.45 945.92 1119.24 949.53 Q 1118.26 966.73 1121.38 983.68 C 1121.98 986.96 1123.21 991.52 1124.54 993.96 C 1128.10 1000.50 1128.52 1004.24 1127.36 1012.10 C 1122.34 1046.29 1118.51 1078.84 1121.48 1113.50 C 1121.72 1116.32 1122.66 1120.49 1123.91 1123.73 C 1131.43 1143.10 1134.58 1156.98 1136.42 1177.99 C 1138.35 1200.12 1139.52 1222.20 1136.35 1244.60 Q 1135.88 1247.88 1134.29 1252.69 C 1132.00 1259.62 1132.37 1264.14 1133.83 1271.98 C 1135.50 1280.93 1132.17 1288.45 1134.90 1297.66 C 1136.88 1304.36 1138.19 1310.69 1137.87 1317.88 C 1137.58 1324.48 1135.49 1332.56 1139.15 1338.36 Q 1142.72 1344.04 1149.63 1350.84 Q 1149.97 1351.18 1150.46 1351.25 Q 1158.71 1352.49 1163.67 1346.15 A 0.64 0.64 0.0 0 1 1164.58 1346.04 Q 1173.02 1352.85 1180.03 1344.60 Q 1180.37 1344.20 1180.83 1344.46 Q 1186.12 1347.40 1190.08 1343.66 Q 1192.28 1341.58 1193.29 1341.22 C 1197.87 1339.60 1204.81 1341.71 1203.29 1333.67 A 0.39 0.39 0.0 0 1 1203.82 1333.23 L 1204.86 1333.62 Q 1205.25 1333.77 1205.65 1333.71 C 1212.46 1332.65 1209.17 1324.33 1208.00 1319.87 C 1205.32 1309.62 1192.63 1299.79 1185.30 1292.30 C 1180.77 1287.68 1182.22 1274.71 1183.62 1269.06 C 1186.76 1256.35 1182.79 1239.97 1182.29 1230.50 C 1181.63 1217.80 1182.70 1204.60 1185.99 1191.35 C 1200.90 1131.35 1208.58 1067.26 1194.98 1006.22 C 1193.56 999.84 1194.88 994.32 1195.73 987.24 C 1197.46 972.87 1195.00 955.62 1192.39 940.62 C 1191.27 934.14 1192.32 927.30 1192.25 920.69 Q 1192.25 920.23 1192.09 919.80 L 1191.79 918.97 Q 1191.59 918.45 1191.92 918.00 C 1199.57 907.39 1203.42 893.36 1205.50 881.25 C 1212.13 842.49 1212.38 800.86 1211.97 761.04 C 1211.76 739.76 1208.12 718.12 1205.90 696.81 Q 1204.13 679.89 1197.85 652.94 C 1194.73 639.58 1188.50 627.37 1187.05 613.69 Q 1183.04 575.93 1181.17 542.06 Q 1180.56 530.97 1180.85 518.01 C 1180.96 512.91 1182.20 504.08 1184.51 499.52 C 1186.81 494.98 1189.81 490.71 1191.01 485.74 Q 1195.45 467.32 1197.09 448.35 A 0.55 0.55 0.0 0 1 1197.86 447.90 L 1201.25 449.41 Q 1201.74 449.63 1201.86 450.16 C 1205.49 466.08 1210.60 484.96 1221.09 497.82 C 1229.48 508.13 1227.82 523.50 1229.73 535.92 C 1232.46 553.65 1237.66 569.19 1246.25 585.54 Q 1262.47 616.39 1284.56 662.22 Q 1292.50 678.70 1292.52 695.41 Q 1292.52 695.47 1292.20 701.94 C 1291.63 713.32 1294.91 723.91 1297.35 734.87 C 1300.01 746.89 1305.13 759.34 1305.74 772.33 C 1305.98 777.24 1306.66 804.29 1313.58 804.01 A 1.29 1.29 0.0 0 0 1314.41 803.66 C 1321.43 797.06 1316.55 769.02 1321.52 766.22 A 1.20 1.19 -21.2 0 1 1323.27 766.99 C 1326.58 781.35 1329.25 795.81 1332.92 809.99 C 1334.01 814.20 1338.07 821.55 1342.84 816.86 Q 1343.20 816.50 1343.28 816.00 Q 1344.28 809.42 1343.76 805.00 Q 1341.60 786.63 1337.95 768.42 A 0.48 0.48 0.0 0 1 1338.86 768.15 C 1342.31 776.96 1355.85 815.37 1366.03 816.16 C 1370.51 816.50 1371.54 810.41 1370.44 807.06 C 1367.79 798.97 1363.64 790.62 1361.28 783.45 Q 1357.86 773.08 1355.02 762.60 A 0.28 0.28 0.0 0 1 1355.50 762.34 Q 1359.72 767.36 1363.75 772.57 C 1368.83 779.14 1373.25 787.32 1378.17 794.66 Q 1379.99 797.36 1381.66 797.98 C 1384.30 798.97 1389.15 796.58 1388.99 793.50 Q 1388.85 790.72 1386.66 786.58 Q 1378.13 770.40 1369.24 754.42 C 1365.36 747.45 1364.08 743.12 1366.68 735.63 Q 1366.81 735.24 1367.20 735.38 Q 1371.90 736.99 1372.91 738.60 Q 1379.67 749.28 1393.03 749.97 C 1401.07 750.38 1400.13 741.50 1395.34 738.12 C 1390.41 734.62 1384.54 731.36 1381.93 726.55 C 1378.04 719.37 1374.79 711.78 1368.18 706.82 Q 1357.23 698.60 1343.50 693.43 C 1335.51 690.42 1332.54 680.64 1330.25 672.50 C 1321.70 642.22 1315.13 611.45 1310.75 580.29 Q 1308.97 567.62 1308.28 563.74 C 1302.89 533.66 1289.99 510.94 1272.05 486.75 Q 1271.76 486.36 1271.76 485.88 C 1271.89 470.59 1270.82 455.36 1265.92 440.80 C 1263.95 434.94 1260.59 428.46 1257.79 422.38 Q 1256.94 420.52 1257.10 418.48 C 1258.73 398.21 1260.25 378.73 1258.88 358.36 C 1257.39 336.36 1241.06 316.98 1223.33 305.40 C 1213.33 298.87 1205.11 297.32 1193.06 298.08 C 1179.40 298.94 1169.27 299.86 1157.52 293.24 Q 1139.58 283.12 1124.50 267.54 Q 1124.15 267.19 1124.04 266.70 Q 1121.33 254.82 1121.08 242.66 C 1120.97 237.52 1120.38 234.21 1124.51 231.78 Q 1124.95 231.52 1125.21 231.07 C 1128.92 224.63 1129.03 215.40 1128.17 207.76 Q 1128.08 207.01 1128.59 206.65 Q 1128.95 206.40 1129.15 206.78 L 1130.41 209.10 A 1.80 1.79 -42.1 0 0 1133.47 209.25 C 1138.33 202.11 1153.60 172.22 1141.68 166.80 Q 1141.16 166.57 1140.69 166.88 L 1138.38 168.39',\n muscles: [\n {\n id: 'neck-r',\n labelKey: 'neck',\n side: 'right',\n cx: 1022.7,\n cy: 290.6,\n d: 'M1022.74 290.63a.62.61 25.9 01-.36-1.03q1.71-1.83 4.11-3.11c8.19-4.35 19.4-8.3 23.38-17.48q8.48-19.57 8.22-40.85-.05-4.38.57-5.76c1.98-4.38 9.65-3.66 13.85-2.91 4.3.76 4.71 3.25 4.68 7.3q-.2 24.11-.88 48.2c-.12 4.25 1.6 15.84-4.88 16.32-14.57 1.08-32.6 1.81-48.69-.68z',\n },\n {\n id: 'neck-l',\n labelKey: 'neck',\n side: 'left',\n cx: 1095.8,\n cy: 291.5,\n d: 'M1095.75 291.46c-4.3-.25-4.9-3.99-4.95-7.71q-.46-29.47-1-58.94c-.13-7.39 11.74-6.23 15.99-4.85 4.2 1.36 3.01 6.89 2.88 10.79-.28 8.88 5.15 41.1 15.32 46.78q8.6 4.81 17.27 9.51 1.97 1.07 3.26 2.36a.8.79 63.6 01-.45 1.35c-16.12 2.17-33.78 1.56-48.32.71z',\n },\n {\n id: 'trapezius-r',\n labelKey: 'trapezius',\n side: 'right',\n cx: 1071.1,\n cy: 308.9,\n d: 'M1071.06 308.94c5.6 4.92 6.96 17.83 7.43 24.88q1.5 22.3.93 44.68-1.2 46.76-5.66 94a.57.56 3.7 01-.59.51q-.68-.03-.94-1.01-4.29-15.9-9.79-25.19c-10.24-17.31-18.8-31.84-25.59-49.4-10.19-26.38-15.6-54.28-26.46-80.58q-3.07-7.43-7.61-14.07-.3-.43.2-.6 12.47-4.28 25.48-4.85c5.54-.25 12.15.86 18.32 1.41 9.7.87 16.77 3.6 24.28 10.22z',\n },\n {\n id: 'trapezius-l',\n labelKey: 'trapezius',\n side: 'left',\n cx: 1164.0,\n cy: 302.1,\n d: 'M1163.98 302.12a.43.43 0 01.22.65q-7.08 10.77-11.41 23.37c-10.53 30.61-17.8 62.94-31.3 91.07-5.11 10.64-15.17 25.22-20.12 36.26q-4.08 9.08-6.59 18.83a.77.77 0 01-1.51-.12q-4.27-45.15-5.52-90.99c-.56-20.28-.74-39.92 2.75-60.43 1.04-6.13 2.77-9.98 7.85-13.85 9.8-7.48 18.02-7.73 30.1-9.11 12.02-1.39 23.92.4 35.53 4.32z',\n },\n {\n id: 'deltoids-r',\n labelKey: 'deltoid',\n side: 'right',\n cx: 980.7,\n cy: 319.6,\n d: 'M980.66 319.58c.19.14.55.19.65.32a.8.8 0 01-.16 1.15c-6.78 4.75-15.26 9.77-20.03 15.58-6.41 7.78-8.76 16.96-9.44 27.04-.39 5.92-1.68 9.5-5.59 13.43-10.02 10.08-19.04 16.47-31.14 20.41q-.75.25-.75-.55.19-18.4-.09-36.3-.14-9.4 1.07-14.22c4.04-16.07 22.8-33.85 39.68-35.64 9.99-1.06 17.34 2.46 25.8 8.78z',\n },\n {\n id: 'deltoids-l',\n labelKey: 'deltoid',\n side: 'left',\n cx: 1227.3,\n cy: 316.4,\n d: 'M1227.3 316.44c14.62 9.44 25.48 21.03 25.46 39.51q-.02 20.56-.01 41.37a.37.37 0 01-.51.35c-5.08-2.06-10.41-3.98-14.9-6.97-7.84-5.24-21.14-14.95-21.77-24.95-.69-10.75-2.81-20.85-9.76-29.25-4.68-5.65-12.96-10.58-19.6-15.26q-1.23-.87.01-1.71c4.6-3.13 9.91-6.78 15.25-7.98q13.58-3.03 25.83 4.89z',\n },\n {\n id: 'upper-back-r',\n labelKey: 'upperBack',\n side: 'right',\n cx: 987.1,\n cy: 381.4,\n d: 'M987.06 381.44c-8.48-5.06-14.14-13.28-18.82-22.92q-5.3-10.92-6.46-14.04c-1.49-4.01 35.14-19.22 39.61-20.97q2.75-1.08 4.33-.72c4.33.96 6.61 9.96 7.46 13.7q5.43 23.89 14.65 55.74.78 2.7-.88 4.39c-5.37 5.5-34.69-12.08-39.89-15.18z M1017.44 583.31q-9.11-9.57-16.97-22.03-2.28-3.62-2.91-7.25c-3.28-18.82-5.77-38.04-10.52-56.55-3.53-13.73-4.74-25.19-6.61-41.43-.85-7.35-5.67-13.34-8.22-18.75q-4.93-10.47-6.44-22.88-.33-2.72 1.89-1.11c7.25 5.27 16.36 6.16 26.91 7.56 8.86 1.19 23.41-3.18 28.94-10.76 3.34-4.58 4.7-6.5 8.86-8.77a.67.66-26.4 01.92.3q10.02 21.8 19.93 43.78c2.56 5.69 12.11 15.88 10.77 21.83-3.65 16.09-9.88 31.96-16.24 47.13-9.72 23.21-18.61 46.72-27.2 70.36q-.24.67-.88.35-1.03-.52-2.23-1.78z M1017.71 404.73c-23.86 13.25-54.31 7.11-60.45-22.75-1.2-5.81-2.5-15.84.64-20.55 3.63-5.44 7.17 4.18 8.17 6.14 7.71 15.14 31.62 29.16 48.2 31.13q1.84.21 5.26 2.06.4.21.26.64-.86 2.65-2.08 3.33z',\n },\n {\n id: 'upper-back-l',\n labelKey: 'upperBack',\n side: 'left',\n cx: 1141.5,\n cy: 397.6,\n d: 'M1141.45 397.63a2.17 2.14-3.6 01-1.88-1.64q-.71-2.97.18-5.95 8.74-29.19 11.75-43.29c1.73-8.11 3.07-16.77 6.94-22.08 1.92-2.62 4.28-2.27 7.19-1.15q20.52 7.9 39.09 18.77a1.37 1.36 25.9 01.58 1.67c-6.05 15.46-12.98 30.84-28.43 39.45-9.45 5.26-25.83 15.17-35.42 14.22z M1149.69 404.8q-2.04-1.15-2.45-3.5-.09-.53.41-.75c4.64-2.04 9.78-2.51 14.63-3.87 11.01-3.1 22.03-10.83 30.34-18.57q6.33-5.89 7.58-8.93c1.02-2.49 3.79-9.5 7-9.46q.52.01.87.39 2.71 3.01 2.81 7.2c.33 13.77-2.24 26.93-13.26 35.95-13.88 11.36-33.12 9.94-47.93 1.54z M1161.19 419.98c6.1 1.57 11.6.99 17.75.06 8.36-1.27 14.83-2.76 21.34-7.27a.54.53 74.1 01.84.47q-.64 11.88-5.76 22.85c-2.42 5.2-6.64 10.84-8.04 16.67q-1.02 4.24-1.43 8.92-1.64 18.72-6.34 37.47c-4.73 18.91-7.13 38.67-10.8 57.85q-.24 1.24-2.2 4.3c-4.57 7.14-12.22 19.43-19.34 23.88a.44.43-25.6 01-.64-.22c-8.26-22.57-16.6-45.11-25.91-67.23-6.67-15.85-13.27-32.14-17.27-48.42q-1.58-6.41 2.91-12.01 5.21-6.51 8.57-14.14 9.25-21 19.01-41.64a.47.47 0 01.65-.21q6.17 3.37 9.51 9.64c2.45 4.6 12.22 7.75 17.15 9.03z',\n },\n {\n id: 'triceps-r',\n labelKey: 'triceps',\n side: 'right',\n cx: 931.0,\n cy: 442.3,\n d: 'M931.03 442.29c-2.01 2.57-6.52 9.71-10.12 9.17q-.52-.08-.8-.52-1.35-2.09-1.84-4.44c-2.25-10.87-3.28-22.88 1.35-33.38 5.45-12.33 18.27-23.68 29.61-31.2a.47.46 68.7 01.71.32l6.42 38.52q.09.54-.26.97c-.47.58-1.12 1.52-1.71 1.94q-9.11 6.58-18.08 13.36-2.9 2.2-5.28 5.26z M958.15 427.11a.41.41 0 01.55.27q4.44 16.16-2.23 31.41-3.37 7.73-5.91 19.98c-1.51 7.28-8.93 12.21-11.81 18.82-2.42 5.56-2.41 12.5-3.51 16.66-2.14 8.06-8.51 14.15-13.91 20.13a.93.93 0 01-1.54-.25q-.57-1.3-.75-2.89c-1.93-16.91 2.52-33.52 5.71-49.99 2.16-11.21-1.54-24.15 9.68-34.59q9.54-8.86 19.55-17.23c1.3-1.08 2.7-1.72 4.17-2.32z M903.57 519.67a1.84 1.82-5.4 01-1.12-.92q-3.54-6.97-3.68-15.19c-.37-21.2 3.8-42.53 9.5-63.44q.33-1.23.92-.1 4.64 8.78 8.6 18.67c2.88 7.21 4.19 12.98 1.88 20.57q-6.07 19.96-14.02 39.23-.65 1.58-2.08 1.18z',\n },\n {\n id: 'triceps-l',\n labelKey: 'triceps',\n side: 'left',\n cx: 1213.9,\n cy: 424.6,\n d: 'M1213.94 424.56q-2.02-1.5-3.08-3.02-.31-.46-.22-1 3.32-19.22 6.42-38.46.09-.56.56-.25 14.9 9.82 24.8 22.71c9.8 12.75 9.72 30.37 5.41 45.13a2.62 2.62 0 01-3.76 1.57c-3.26-1.77-6.22-6.71-8.62-9.67-5.24-6.46-14.75-12-21.51-17.01z M1246.2 534.5q-.95-.3-1.75-1.22c-4.65-5.4-9.13-9.88-11.46-15.51-2.96-7.13-1.37-15.5-5.64-22.09-4.06-6.26-8.72-9.91-10.89-17.58-1.62-5.68-2.81-11.46-4.97-17.02-4.56-11.69-6.45-20.86-3.33-33.56a.59.58-74 01.75-.42q1.69.56 3.22 1.79 11.23 9.08 21.54 19.18c5.39 5.28 6.92 10.13 7.24 18.16.9 22.52 10.62 44.97 6.59 67.49a1.01 1 13.9 01-1.3.78z M1258.43 439.96q2.01 5.38 3.1 10.68c3.58 17.36 7.13 34.77 6.89 52.61q-.11 8.3-3.94 15.61a1.61 1.6 33.4 01-2.44.5c-1.45-1.19-1.9-3.58-2.43-4.94q-9.23-23.41-13.19-38.15c-2.63-9.81 6.82-27.63 11.53-36.35q.28-.5.48.04z',\n },\n {\n id: 'lower-back-r',\n labelKey: 'lowerBack',\n side: 'right',\n cx: 986.8,\n cy: 627.1,\n d: 'M986.76 627.1c-3.13-13.13-7.31-49.77 7.27-58.07 2.4-1.37 4.8-.82 6.7 1.29 6.15 6.8 16.22 18.56 18.77 28.15a1.35 1.3 52.6 01-.11.98c-2.51 4.53-9.96 8.09-15.83 11.36q-5.47 3.06-11.33 10.52c-1.23 1.56-2.6 4.3-4.5 6.06a.59.58-28.2 01-.97-.29z M1023.15 607.96a2.06 2.04-74.3 01-.94-1.69c-.17-10.98 5.04-24.58 8.79-34.9q15.61-42.83 36-83.59a1.11 1.1-62.5 011.51-.48c1.25.66 3.21 12.98 3.46 15.08q6.94 59.25 2.82 116.88-.62 8.66-3.1 19.37-.13.53-.59.24l-47.95-30.91z',\n },\n {\n id: 'lower-back-l',\n labelKey: 'lowerBack',\n side: 'left',\n cx: 1090.8,\n cy: 581.8,\n d: 'M1090.76 581.75q.62-5.16 0-10.27.22-29.79 3.05-59.5 1.1-11.58 3.91-22.88.31-1.27.44-1.43 1.08-1.43 1.88.17 23.38 46.97 40.14 96.18c1.8 5.28 5.84 16.69 4.38 22.96a1.64 1.64 0 01-.71 1.01l-47.63 30.72q-1.12.72-1.34-.6-4.54-28-4.12-56.36z M1151.19 603.31q-5.39-3.38-2.19-9.05 8.03-14.22 17.88-24.62c3.49-3.69 9.04.89 10.97 3.99q2.92 4.66 3.8 10.14 3.5 21.77-1.21 43.02a.96.96 0 01-1.77.28c-6.92-11.85-16.03-16.56-27.48-23.76z',\n },\n {\n id: 'forearm-r',\n labelKey: 'forearmFlexors',\n side: 'right',\n cx: 878.4,\n cy: 534.4,\n d: 'M878.44 534.38a.15.15 0 01.18-.13c.47.12 6.68 15.77 7.07 17.22q6.66 24.73 5.52 50.29c-.4 8.9-3.45 17.35-6.64 25.55-7.94 20.38-17.41 41.88-29.59 60.09a1.04 1.02-54.2 01-1.49.25c-.34-.26.37-1.45.47-1.83q5.58-20.8 8.97-42.08 8.65-54.15 15.51-109.36z M893 518.93a.39.38 24.6 01.69-.25q5.97 7.83 13.11 15.27c8.08 8.4 1.41 28.73-5.88 37.12a1.05 1.05 0 01-1.63-.05c-6.09-7.93-5.41-18.74-4.97-28.44.36-8.12-.76-15.7-1.32-23.65z M869.06 547.19c2.16.36 1.67 6.21 1.57 7.8q-2.54 38.84-9.11 77.16c-3.04 17.71-8.47 41.3-22.09 54.09a.38.38 0 01-.62-.41c14.51-40.44 19-84.26 26.8-126.31q.9-4.88 1.48-10.82.18-1.81 1.97-1.51z M864.24 682.58q15.09-28.18 25.12-58.55c8.14-24.63 13.67-42.4 20.79-60.35q3.31-8.37 12.08-9.63c1.35-.2 3.68-.75 4.86.21q1.13.93.61 2.3-5.8 15.45-12.04 29.88c-5.79 13.39-14.92 28.68-20.32 40.14-6.12 13-28.07 59.18-31.64 56.64a.21.21 0 01.03-.36q.15-.07.34-.13.12-.04.17-.15z',\n },\n {\n id: 'forearm-l',\n labelKey: 'forearmFlexors',\n side: 'left',\n cx: 1273.0,\n cy: 519.4,\n d: 'M1272.99 519.43c.27-.33.33-.75.75-1.05a.32.32 0 01.5.29c-.7 7.22-1.77 14.33-1.66 21.54.13 8.94 2.13 24-5.35 31.17q-.37.35-.73 0c-7.63-7.55-14.2-28.29-6.52-36.92q6.6-7.41 13.01-15.03z M1312.82 688.04c-4.78-6.01-7.2-10.8-11.76-19.56q-12.39-23.79-21.03-47.53c-4.86-13.36-5.22-26.17-3.83-40.19q1.13-11.5 2.69-19.53 2.72-13.98 9.59-26.79a.17.17 0 01.32.06q7.26 63.12 17.22 120.49 2.43 14.04 7.03 30.55c.22.79.74 1.33.36 2.4a.34.34 0 01-.59.1z M1296.52 558.51c-.22-2.94-1.44-10.25 2-12.04a.62.61-18.4 01.89.44q6.25 35.69 12.21 71.07c3.88 23 8.77 46.2 16.73 68.19a.29.29 0 01-.47.31c-11.67-10.67-18.09-31.15-20.89-45.98q-7.27-38.55-10.47-81.99z M1303.5 683.6c-2.89-.66-10.16-13.21-12.11-17.02-8.8-17.21-16.92-34.81-25.84-51.89-5.36-10.27-10.98-20.49-15.39-30.95q-5.86-13.86-11.07-27.8a1.63 1.62 79.5 011.5-2.2c13.02-.16 15.5 7.18 19.65 18.81q9.04 25.33 17.43 50.89 9.65 29.37 23.82 56.84.87 1.69 2.13 3.12.24.28-.12.2z',\n },\n {\n id: 'gluteal-r',\n labelKey: 'gluteusMaximus',\n side: 'right',\n cx: 1045.1,\n cy: 626.2,\n d: 'M1045.06 626.19q1.42.61 4.11 4.4.27.39-.19.52c-14.47 4.12-26.13 7.4-38.13 15.77q-15.37 10.71-30.53 21.6a.55.54 74.9 01-.86-.5c1.19-13.13 10.35-35.23 20.46-45.06 9.14-8.88 34.99-1.11 45.14 3.27z M1007.94 762.81c-16.94-16.64-29.37-37.66-31.47-61-2.06-22.84 15.63-34.95 32.18-45.71 8.2-5.33 46.51-27.32 54.37-17.65 5.92 7.29 13.38 15.84 15.44 25.21q3.01 13.63 2.44 27.6-.94 22.59-6.27 44.49c-2.43 9.96-2.9 17.16-2.59 26.75.47 14.83-18.52 17.18-29.12 14.07-6.38-1.87-13.79-4.83-21.35-6.25q-7.39-1.38-13.63-7.51z',\n },\n {\n id: 'gluteal-l',\n labelKey: 'gluteusMaximus',\n side: 'left',\n cx: 1139.6,\n cy: 698.8,\n d: 'M1117.94 631.04q-.13-.03-.27-.06-.12-.02-.06-.13 2.58-4.2 7.05-5.92 12.71-4.87 26.13-5.81c12.93-.91 17.1 3.08 23.28 13.06 5.71 9.22 13.32 24.7 13.44 36.06q.01.76-.61.32-16.65-11.74-33.2-23.51c-10.03-7.14-23.72-10.58-35.76-14.01z M1124.12 776.61c-9.28 2.74-26.75 1.29-28.86-10.88-1.05-6.03.27-14.88-1.3-23.27q-.54-2.94-2.15-9.35c-3.2-12.81-4.02-23.33-5.08-35.27-1.07-12.03-.57-22 1.64-33.17q1.1-5.6 4.19-10.41 8.74-13.58 11.87-16.59c4.96-4.77 15.84.18 21.19 2.11q19.7 7.12 40.17 21.43c9.59 6.7 19.29 14.31 22.93 25.17 4.81 14.37-.65 33.88-7.42 46.87q-7.79 14.97-21.39 28.9-6.74 6.9-15.26 8.36c-7.07 1.21-13.68 4.08-20.53 6.1z',\n },\n {\n id: 'adductors-r',\n labelKey: 'adductors',\n side: 'right',\n cx: 1070.1,\n cy: 785.2,\n d: 'M1070.06 785.19c2.95 1.36 1.8 10.43 1.49 13.04q-3.98 33.27-14.66 64.61a.39.39 0 01-.76-.17c.9-7.05 2.31-14.29 2.16-20.92q-.68-30.14-18.71-54.52-.29-.39.18-.49c7.42-1.52 23.53-4.69 30.3-1.55z',\n },\n {\n id: 'adductors-l',\n labelKey: 'adductors',\n side: 'left',\n cx: 1127.2,\n cy: 787.7,\n d: 'M1127.24 787.66c-15.99 21.49-22.3 48.51-16.08 74.83a.47.46-63.2 01-.88.29q-1.99-4.69-3.65-10.24-8.29-27.75-11.6-56.54c-.65-5.71-1.1-11.77 6.87-11.9q13-.19 25.68 2.83a.31.24 41.2 01.1.53q-.12.01-.27.07-.1.04-.17.13z',\n },\n {\n id: 'hamstring-r',\n labelKey: 'hamstrings',\n side: 'right',\n cx: 963.3,\n cy: 741.5,\n d: 'M963.27 741.53a.71.7 31.7 011.19-.28q1.51 1.62 2.47 3.99c4.6 11.41 8.93 22.66 11.07 34.72 3.38 19.14 4.84 38.23 3.12 57.74q-1.68 19.06-2.99 38.15c-.51 7.55-.88 15.71.07 23.18q1.08 8.54 1.39 17.57a.52.52 0 01-.98.25q-1.03-2.07-1.8-4.62-5.13-16.92-7.25-34.49-5.01-41.45-6.86-83.17-1.09-24.75-.07-49.51.06-1.59.64-3.53z M1030.2 791.53q.17-.36.38-.03c5.26 8.11 9.94 16.15 12.47 25.64 3.12 11.72 5.87 24.36 4.31 36.24q-.5 3.8-3.57 14.02c-10.75 35.81-12.83 74.2-18.5 111.1q-.82 5.4-2.55 10.55-.23.68-.59.07c-4.72-8.07-5.18-25.09-5.34-34.81-.7-43.69 1.92-87.82 6.38-131.28 1.41-13.74 1.99-21.15 7.01-31.5z M998.81 761.94q14.07 14.17 20.1 33.62c.98 3.15-.78 9.61-.93 12.91q-1.3 27.63-2.3 55.27c-.55 15.31-1.54 30.27-5.12 45.26q-8.62 36.18-22.76 68.73-3.65 8.41-10.15 17.19-.45.61-.41-.14c.11-1.93.82-4.15.99-5.71q2.45-22.72 6.08-45.26c2.83-17.66 4.18-35.95 4.33-52.37.33-36.43-.75-73.34 1.47-109.68.33-5.32 1.07-16.16 4.7-20.25q.33-.36.81-.45 1.95-.37 3.19.88z M1052.52 855.62a.04.04 0 01.08.01q1.07 9.9 2.17 19.87.33 3.04-2.37 14.18c-3.83 15.8-8.15 31.11-8.9 47.47-.99 21.61-3.11 45.66-9.92 66.3q-1.49 4.52-.87-.2 3.38-25.36 3.7-51.99c.05-3.74-.4-10.32.2-15.58 2.19-19.2 7.39-38.25 11.75-57.05 1.78-7.64 2.93-15.21 4.16-23.01z',\n },\n {\n id: 'hamstring-l',\n labelKey: 'hamstrings',\n side: 'left',\n cx: 1183.2,\n cy: 947.5,\n d: 'M1183.25 947.53c2.57 14.85 4.32 31.11 6.22 46.14q.35 2.74-1.11.39c-14.67-23.67-23.34-52.15-30.55-79.32q-5.08-19.14-5.97-39.05-1.36-30.37-2.44-60.74c-.22-6.09-2.56-15.63-.55-21.57q5.87-17.35 18.96-31.07c10.77-11.28 10.17 46.55 10.16 48.97-.13 41.09-.45 74.18 1.91 110.07.57 8.75 1.88 17.53 3.37 26.18z M1136.43 791.52q.27-.42.49.03c3.12 6.46 4.84 12.26 5.68 19.83 5.07 45.8 8.05 94.61 7.56 140.76-.13 11.8-.46 26.22-5.13 37.08a.44.44 0 01-.83-.06q-2.51-9.14-3.69-18.41-3.54-27.64-7.36-55.24c-2.49-18-5.47-35.67-11.09-52.26q-4.35-12.82-2.08-26.75c1.76-10.77 3.58-21.61 8.46-31.16q3.58-6.99 7.99-13.82z M1115.03 856.73c2.03 18.72 7.11 37.44 11.47 55.77 2.25 9.46 3.94 19.51 3.95 30.11q.02 31.7 4.08 63.16.16 1.26-.29.07-2.7-7.15-4.19-14.6c-4.44-22.21-5.71-40.52-6.87-61.23-.24-4.24-1.19-9.64-2.23-13.92q-3.94-16.25-7.7-32.55c-2.09-9.04.08-18.69 1.6-27.66q.07-.38.32-.09.16.19.01.4-.19.24-.15.54z M1202.61 741.08a.44.44 0 01.72.03c.52.82.9 1.86.95 2.91q.73 15.98.37 31.97-1.16 52.95-7.85 105.49-1.88 14.74-5.97 29.04-1 3.52-1.92 4.95-1.57 2.47-1.39-.37c.58-9.44 1.83-19.17 1.71-28.16-.32-24.52-4.94-49.11-3.95-72.75.69-16.54 2.5-33.51 7.54-49.38q2.99-9.4 6.61-18.6.74-1.88 3.18-5.13z',\n },\n {\n id: 'calves-r',\n labelKey: 'gastrocnemius',\n side: 'right',\n cx: 982.7,\n cy: 1149.3,\n d: 'M982.69 1149.31c-3.07-2.23-3.98-6.24-5.24-11.03-7.19-27.14-7.88-53.18-6.67-82.78q1.03-25.29 9.23-47.45c4.77-12.89 15.33-24.77 23.79-36q.82-1.09.74.27c-1.37 22.86-2.72 45.67-3.11 68.49-.52 30.56-1.51 61.11-.42 91.68.24 6.83-2.77 16.29-10.08 18.37q-4.39 1.25-8.24-1.55z M983.99 1163.56c7.15-5.59 16.16-.63 17 8.23q4.31 45.02 5.22 90.26c.16 8.25-.8 15.79-2.19 23.65q-.45 2.52-1.43 3.66-.95 1.11-1.22-.33c-5.03-26.7-8.28-53.49-11.87-80.36q-1.68-12.52-3.24-18.71-2.04-8.12-5.53-18.24c-1.03-3 .8-6.25 3.26-8.16z M1013.69 1150.31c-4.8-2.61-4.66-16.17-4.36-20.75 2.34-36.49 3.44-73.94 1.04-110.45-1.03-15.55.02-31.49.62-47.06q.03-.66.25-.03c2.28 6.45 4.52 12.88 7.39 19.11 5.12 11.14 11.5 22.91 14.83 33.92q2.34 7.74 3.97 16.46 5.3 28.43 5.62 56.09c.2 18.32-7.9 40-22.63 51.79q-3.42 2.73-6.73.92z M1014.14 1164.37c7-1.83 14.1 2.2 14.11 9.95q.06 29.04-5.62 57.41c-3.87 19.28-6.24 38.23-8.43 57.48a.37.37 0 01-.74-.01q-3.12-43.48-3.58-86.64-.15-14.16.76-28.3c.18-2.83.02-8.98 3.5-9.89z',\n },\n {\n id: 'calves-l',\n labelKey: 'gastrocnemius',\n side: 'left',\n cx: 1172.9,\n cy: 1149.3,\n d: 'M1172.94 1149.31c-6.06-4.56-6.94-11.4-6.8-19.4.96-52.67-.49-105.31-3.54-157.9q-.04-.72.41-.16 7.96 10.07 15.43 20.44c9.11 12.64 13.61 28.98 15.78 44.21 4.96 34.71 3.75 72.94-5.97 106.5-1.97 6.82-9.18 10.93-15.31 6.31z M1144.41 1147.33q-17.19-17.37-20.08-40.86-.89-7.22-.13-19.97 1.18-20.06 4.69-41.33c2.33-14.1 5.8-25.22 12.41-38.61q8.19-16.59 14.35-34.15a.14.13-37.7 01.26.03q1.01 15.71 1.26 31.44c.18 11.61-1.34 24.91-1.58 36.43-.72 34.7 1.22 62.05 2.06 93.19.17 6.32-1.1 26.1-13.24 13.83z M1173.74 1161.73c6.88-2 14.34 3.23 11.98 10.91-2.24 7.3-4.78 14.44-5.99 21.96-5.07 31.52-8.04 63.18-14.13 94.6a.72.71-61.9 01-1.21.37c-.14-.14-.35-.39-.4-.59q-3.53-13.58-3.19-28.23 1.04-44.67 5.06-87.04c.58-6.1 1.93-10.25 7.88-11.98z M1154.32 1165a1.58 1.57-84.6 01.97 1.18c.79 4.42 1.42 8.78 1.57 13.4.96 29.17-.47 62.66-2.04 90.23q-.78 13.79-1.39 19.52a.23.23 0 01-.45 0c-2.79-21.25-5.41-41.99-9.64-63.03-3.44-17.08-4.29-34.91-4.68-52.3-.19-8.37 8.99-11.61 15.66-9z',\n },\n {\n id: 'ankles-r',\n labelKey: 'ankle',\n side: 'right',\n cx: 998.2,\n cy: 1320.5,\n d: 'M998.25 1320.52c-4.62.24-8.17-1.08-8.78-6.28-1.6-13.81-.75-28.85-2.16-42.41q-.39-3.74.24-7.03a.69.69 0 011.23-.28c2.35 3.15 4.22 5.75 5.14 9.66 1.54 6.57 1.91 22.57 9.97 24.09q13.33 2.5 15.93-10.47c.92-4.57 1-12.33 5.05-17.25q.42-.51.42.15c.11 14.39.4 30.86-3.08 44.54-.79 3.13-3.31 4.23-6.51 4.4q-8.73.45-17.45.88z',\n },\n {\n id: 'ankles-l',\n labelKey: 'ankle',\n side: 'left',\n cx: 1149.5,\n cy: 1319.5,\n d: 'M1149.5 1319.51c-6.93-.63-6.82-18.08-7.14-23.7q-.73-12.53-.59-25.09.01-.71.45-.15 2.74 3.49 3.29 7.17c1.67 11.25 3.21 25.34 19.7 19.99 4.87-1.58 7.03-18.57 7.89-23.21.79-4.2 2.74-7 5.28-10.13a.56.56 0 01.98.22c1.12 4.6.04 12.39-.37 17.26-.92 10.77-.32 21.48-1.52 32.37q-.7 6.23-7.01 6.18-12.13-.11-20.96-.91z',\n },\n {\n id: 'feet-r',\n labelKey: 'foot',\n side: 'right',\n cx: 994.8,\n cy: 1332.9,\n d: 'M962.87 1327.38q-.62-.51-.05-1.07l1.99-1.99q.39-.39.93-.41 25.66-.82 51.26 1 1.34.1 4.43 1.47.46.2.69.64 1.84 3.5 2.87 7.23c2.32 8.38-6.63 7.24-12.23 6.68q-15.37-1.53-30.5-4.56c-8.21-1.65-13.33-3.95-19.39-8.99z',\n },\n {\n id: 'feet-l',\n labelKey: 'foot',\n side: 'left',\n cx: 1173.5,\n cy: 1333.1,\n d: 'M1154.35 1341.35c-12.48 1.36-13.27-3.88-8.67-13.37 1.82-3.76 12.72-3.65 16.39-3.77q19.44-.63 38.9-.44c2.41.02 3.31 1 4.61 2.76q.32.44-.09.79c-5.43 4.67-10.52 7.17-17.95 8.74q-16.46 3.47-33.19 5.29z',\n },\n {\n id: 'hands-r',\n labelKey: 'hand',\n side: 'right',\n cx: 789.4,\n cy: 726.8,\n d: 'M789.41 726.84c3.98-6.79 9.89-14.6 16.56-20.14a.31.31 0 01.48.35c-4.39 11.06-5.38 21.94-14.02 30.72-5.82 5.93-10.7 9.81-19.04 8.57q-.55-.08-.59-.63c-.24-3.07-.26-7.29 3.1-8.85 4.82-2.26 10.72-5.28 13.51-10.02z M807.27 745.31c17.61 3.49 2.75 13.52-.73 18.99q-10.05 15.82-21.86 30.37-1.56 1.92-2.52-.58a2.41 2.33-55.4 01-.16-.96q.2-5.26 2.75-9.71c6.94-12.09 13.12-24.52 19.72-36.79q.91-1.7 2.8-1.32z M819.3 744.82c-7.79-6.06-14.51-12.4-11.88-23.38 3.07-12.83 14.66-20.7 25.14-26.38 9.57-5.18 37.61-.75 37.6 13.68q-.01 16.24-3.67 31.99c-2.38 10.26-4.49 16.44-16.87 16.3-10.71-.13-21.93-5.7-30.32-12.21z M827.99 758.27a2.08 2.07 26.6 01.91 2.73q-10.47 22.03-19.66 45.04-2.25 5.63-8.23 6.74a1.45 1.44 84.3 01-1.7-1.4q-.1-4.29 1.51-8.31 7.3-18.34 13.86-36.96c.74-2.1 1.53-6.08 2.97-8.96q.26-.5.82-.57 5.05-.64 9.52 1.69z M841.68 762.32a.76.75-79.1 01.6.89q-4.51 23.14-9.28 45.87c-.73 3.49-2.09 5.73-5.85 5.43q-.52-.04-.61-.56-.74-4.54-.32-7.21 2.89-18.57 5.59-37.18.38-2.65 1.67-8.22.13-.54.68-.44l7.52 1.42z M854.75 799.53a.78.78 0 01-1.37-.02q-.91-1.75-1.15-4.29-1.62-16.58-1.2-33.25a.84.84 0 01.61-.78l7.09-1.93q.59-.16.56.45-.58 14.77-1.12 29.56c-.14 4.06-1.54 6.86-3.42 10.26z',\n },\n {\n id: 'hands-l',\n labelKey: 'hand',\n side: 'left',\n cx: 1336.4,\n cy: 752.0,\n d: 'M1336.39 751.96c-8.72 4.49-29.38 10.28-33.61-3.6q-5.68-18.65-5.83-38.24c-.06-7.59 4.01-11.75 11.09-14.08 8.85-2.92 19.02-5.3 27.54-.35 8.74 5.09 18.39 11.28 22.45 21.01 3.05 7.3 3.34 13.66-1.78 20.01-5.21 6.47-12.49 11.45-19.86 15.25z M1374.32 737.5c-8.05-8.14-9.61-19.67-13.85-30.75a.22.22 0 01.35-.24q10.3 8.96 17.1 20.77c2.57 4.47 9.08 7.59 13.57 9.79 3.11 1.52 2.96 5.9 2.71 8.73q-.05.52-.57.59c-8.87 1.17-13.48-2.98-19.31-8.89z M1383.76 795.45c-.59-.21-.96-.17-1.39-.68-8.84-10.3-15.85-21.5-23.44-32.41-2.81-4.02-8.81-7.64-7.45-13.14q.15-.6.7-.84l7.85-3.44q.66-.29 1.13.25 2.36 2.73 4.17 6.49 7.36 15.23 16.89 31.47c2.33 3.96 3.04 7.59 2.32 11.85a.58.58 0 01-.78.45z M1365.79 812.62c-2.7-.28-6.42-2.66-7.49-5.33q-8.74-21.76-19.85-45.74c-2.12-4.58 6.55-5.17 9.12-5.21 1.8-.03 1.93.71 2.38 2.18q5.72 18.34 15.35 42.12c.74 1.84 4.81 12.43.49 11.98z M1308.16 759.17l7.44 2.1q.23.07.24.31.75 16.26-.86 32.41-.3 3-1.25 5.48a.79.79 0 01-1.42.12q-3.9-6.58-3.82-13.9.16-13.07-.83-26.11-.05-.57.5-.41z M1340.07 814.35c-2.7.82-4.99-1.16-5.54-3.71q-5.06-23.49-9.82-47.47a.77.76-10.7 01.62-.9l7.52-1.38q.59-.11.73.47c2.08 8.53 3.26 19.85 4.22 25.75q2.09 12.92 3.19 21.14.34 2.54-.33 5.46a.86.84 88.4 01-.59.64z',\n },\n ],\n};\n\nexport const MUSCLE_FEMALE_FRONT: MuscleFigureArt = {\n viewBox: '-50 -40 734 1538',\n silhouette:\n 'M 274.27,0 h 7.5 q 18.53,1.85 32.68,8.03 c 12.49,5.46 24.03,14.94 27.55,28.42 a 2.51,2.49 89.9 0 0 1.78,1.79 c 62.05,16.11 59.99,92.38 46.77,140.06 q -2.56,9.24 -6.49,17.96 c -2.53,5.64 -4.61,7.93 -10.53,9.62 l -0.26,-0.1 q -0.2,-0.09 -0.11,-0.29 3.73,-8.25 6.16,-16.1 a 1.18,1.17 -83.3 0 1 1.03,-0.82 c 9.73,-0.81 11.84,-26.25 11.81,-33.17 q 0,-2.26 -1.89,-3.46 -0.54,-0.35 -1.17,-0.24 -2.13,0.37 -4.08,0.23 c -5.7,-0.39 -8.68,-13.45 -9.55,-17.9 q -2.57,-13.24 -5.09,-28.6 -0.65,-3.97 -2.37,-7.72 a 2.7,2.65 86.8 0 0 -1.54,-1.4 C 357.04,93.05 347.03,89.65 337,88.5 q -7.76,-0.88 -14.28,3.52 c -7.75,5.24 -15.65,10.37 -23.95,14.33 q -15.27,7.3 -31.5,12.13 a 1.86,1.85 -0.3 0 0 -1.25,1.26 c -2.08,7.3 -3.02,14.59 -4.33,22.04 -0.77,4.35 -2.6,10.1 -8.02,10.27 q -1.4,0.05 -2.82,-0.07 -0.58,-0.04 -0.95,0.42 -1.31,1.64 -1.26,3.95 0.23,12.21 3.9,23.14 c 1.3,3.87 3.66,8.51 8.11,9.16 a 1.22,1.22 0 0 1 0.99,0.84 q 5.67,17.91 15.65,33.72 0.59,0.93 0.76,2 0.62,15.66 -0.31,31.34 -0.33,0.59 -0.86,1.05 -10.81,9.38 -25.26,12.16 -3.21,-0.66 -6.4,-1 -2.96,-0.31 -6.35,-1.14 -4.1,-0.99 -8.5,-0.85 -19.12,0.63 -38.2,1.5 -7.58,0.35 -14.57,-0.86 a 1.74,1.73 -87.9 0 1 -1.44,-1.56 c -0.81,-8.45 2.45,-17.97 5.45,-25.54 7.91,-19.94 16.52,-39.52 21.72,-59.8 q 3.8,-14.84 3.36,-29.24 -0.62,-20.32 -5.16,-56.52 -0.99,-7.83 -0.58,-13.57 1.97,-27.81 13.7,-48.73 C 220.38,22.24 229.09,15.56 238.9,9.81 Q 254.97,0.39 274.27,0 Z m 61.27,35.35 c -9.93,-7.61 -23.32,-7.23 -32.78,1.35 q -1.11,1.01 0.36,0.73 c 10.93,-2.09 20.77,-2.59 31.88,-0.82 q 2.75,0.43 0.54,-1.26 z M 302.76,36.7 c 9.46,-8.58 22.85,-8.96 32.78,-1.35 q 2.21,1.69 -0.54,1.26 c -11.11,-1.77 -20.95,-1.27 -31.88,0.82 q -1.47,0.28 -0.36,-0.73 z M 333.98559,84.905706 c 18.21278,1.634629 31.69605,8.136487 37.2945,12.907787 5.05164,4.305277 7.19576,45.031667 12.65256,51.693107 1.8636,2.27501 8.59028,-1.54865 8.92968,2.02054 0.963,10.12704 -1.13955,23.87461 -5.01774,34.09876 -2.76635,7.29296 -5.63968,2.08994 -7.32662,6.61326 -4.20041,11.26291 -13.37526,37.43537 -39.7435,47.10729 -18.23028,5.87857 -27.73171,4.95957 -42.38166,-0.61061 -10.53425,-7.41801 -26.32238,-15.61151 -35.48901,-45.82179 -2.15595,-7.10532 -5.07953,-2.63217 -8.24698,-7.1806 -8.2816,-11.89228 -6.24233,-24.37427 -6.11257,-33.09312 1.24002,-3.08768 8.39807,0.42491 9.86574,-4.98496 1.75809,-6.48033 5.74751,-21.52642 6.67934,-30.11758 42.80886,-10.2119 49.53647,-34.194904 68.89626,-32.632084 z',\n outline:\n 'm 373.53,205.88 c -0.45333,0.42667 -0.81,0.91667 -1.07,1.47 -3.29333,7.06 -7.28,13.70667 -11.96,19.94 -2.14,2.84667 -4.41,5.19333 -6.81,7.04 -0.36158,0.27621 -0.53584,0.73316 -0.45,1.18 0.43333,2.3 0.96,4.58667 1.58,6.86 7,25.46 37.78,29.15 59.68,31.39 6.10667,0.62 12.19667,1.61 18.27,2.97 7.96,1.77333 14.17,3.97667 18.63,6.61 14.63,8.62 23.15,23.99 26.24,40.5 3.70667,19.74 5.03,39.49 3.97,59.25 -0.0526,0.96072 0.11501,1.92175 0.49,2.81 1.62,3.77333 3.20667,7.65 4.76,11.63 6.18,15.8 10.13333,32.57333 11.86,50.32 1.18,12.12 1.68,23.92667 1.5,35.42 -0.02,1.29333 0.40333,2.43333 1.27,3.42 17.89,20.25 33.57,44.36 41.14,69.73 2.5,8.36667 5.17333,17.90333 8.02,28.61 4.34,16.3 12.18,33.04 22.68,47.08 3.98,5.31333 7.70667,10.38667 11.18,15.22 0.59333,0.83333 1.35333,1.58333 2.28,2.25 0.28,0.2 0.59,0.3 0.93,0.3 4.22667,-0.0133 8.26333,1.50667 12.11,4.56 6.02,4.78 12.17,10.11667 18.45,16.01 1.51,1.42 3.29,2.63 5.25,3.29 9.2,3.11 19.48,8.17 17.09,19.99 -0.32,1.61 -1.49,2.31 -3.05,2.48 -4.18667,0.46 -8.50667,-0.5 -12.96,-2.88 -4.75333,-2.53333 -8.58667,-4.99667 -11.5,-7.39 -0.55333,-0.45333 -1.12667,-0.48 -1.72,-0.08 l -0.24,0.16 c -0.30375,0.208 -0.35544,0.63562 -0.11,0.91 5.52667,6.25333 9.60333,12.61667 12.23,19.09 4.1,10.08667 7.07333,20.87333 8.92,32.36 0.56667,3.52 0.71667,7.10333 0.45,10.75 -0.34667,4.75333 -3.07,6.62333 -8.17,5.61 -0.77333,-0.16 -1.02333,0.13 -0.75,0.87 0.75333,2.03333 1.44333,4.07 2.07,6.11 1.56,5.04667 -0.2,8.07 -5.28,9.07 -3.49,0.69 -5.42,-2.17 -7.04,-4.75 -0.35421,-0.55015 -1.1808,-0.475 -1.43,0.13 -1.26667,3.16 -3.75333,4.66 -7.46,4.5 -2.69,-0.11 -4.64,-2.56 -5.81,-4.72 -1.54,-2.84667 -3.06,-5.96667 -4.56,-9.36 -0.72,-1.63333 -1.17,-1.56 -1.35,0.22 -0.04,0.44667 -0.04,0.88667 0,1.32 0.0506,0.45209 -0.0911,0.90266 -0.39,1.24 -6.1,6.88 -17.12,-14.55 -18.83,-18.14 -5.52,-11.58 -10.07333,-23.92333 -13.66,-37.03 -2.86,-10.44 -5.67667,-21.13333 -8.45,-32.08 -1.38,-5.43 -3.45,-10.62 -6.82,-15.28 -15.64,-21.66 -32.51,-41.59 -48.94,-62.08 -10.83333,-13.5 -19.95333,-26.60333 -27.36,-39.31 -4.35333,-7.44667 -7.92667,-14.98 -10.72,-22.6 -2.62,-7.14 -4.03667,-14.75667 -4.25,-22.85 -0.06,-2.17 -1.76,-6 -3.08,-8.08 -1.58667,-2.49333 -2.99,-5.05667 -4.21,-7.69 -7.74667,-16.80667 -13.65,-34.53333 -17.71,-53.18 -1.79333,-8.22 -2.94,-15.92 -3.44,-23.1 -0.02,-0.26 -0.0933,-0.50333 -0.22,-0.73 -0.27333,-0.50667 -0.47333,-0.48 -0.6,0.08 -1.26667,5.63333 -3.42667,10.71333 -6.48,15.24 -1.95,2.89 -4.68,5.3 -7.05,7.94 -1.00667,1.12667 -1.63667,2.41333 -1.89,3.86 -0.28667,1.63333 -0.44,3.18667 -0.46,4.66 -0.32667,32.01333 -1.04333,63.59667 -2.15,94.75 -0.1,2.86 0.11,5.76 0.63,8.7 0.94,5.33 4.48,9.32 7.59,13.42 28.13,37.13 39.68,83.8 42.02,130.13 1.55333,30.82667 0.26333,61.91 -3.87,93.25 -3.72667,28.26 -8.91333,56.45333 -15.56,84.58 -6.84667,28.98667 -14.71333,57.40667 -23.6,85.26 -1.72,5.39333 -3.00667,10.55333 -3.86,15.48 -2.69333,15.53333 -4.80333,30.7733 -6.33,45.72 -0.42667,4.1533 -0.60333,7.9733 -0.53,11.46 0.0667,3.3133 0.56667,6.8767 1.5,10.69 5.34,21.8067 9.62333,42.4733 12.85,62 1.64667,9.9467 2.82333,20.4633 3.53,31.55 1.09333,17.08 -0.91667,33.71 -6.03,49.89 -4.02,12.69 -10.84,31.49 -15.29,47.24 -5.78,20.44 -10.58667,41.91 -14.42,64.41 -0.91333,5.3467 -1.38,10.3533 -1.4,15.02 -0.0267,5.0533 -0.14333,10.22 -0.35,15.5 -0.12,3.09 0.5,6 1.74,8.88 2.88,6.73 5.31,15.28 2.81,22.38 -2.82,8 4.32,16.54 8.4,22.9 3.28,5.1067 5.71,10.0833 7.29,14.93 1.9,5.85 8.39,13.01 13.6,16.02 5.4,3.11 7.35,6.81 7,13.31 -0.24,4.33 -3.01,4.97 -6.62,5.27 -7.24,0.5933 -14.49333,1.0133 -21.76,1.26 h -26.32 c -6.06667,-0.1867 -12.12,-0.4867 -18.16,-0.9 -3.61333,-0.2533 -5.87,-0.5367 -6.77,-0.85 -6.82,-2.36 -6.74,-17.36 -6.44,-23.15 0.40667,-8.0133 1.49333,-15.8467 3.26,-23.5 1.32,-5.74 2.15,-11.64 2.97,-17.44 0.64,-4.61 0.34,-9.01 0.02,-13.63 -0.32667,-4.6333 -0.007,-9.1933 0.96,-13.68 0.27333,-1.26 0.40667,-2.6733 0.4,-4.24 -0.12,-20.3133 -0.66333,-40.95 -1.63,-61.91 -0.51333,-11.08 -1.24333,-21.3933 -2.19,-30.94 -0.24667,-2.4467 -0.48333,-4.12 -0.71,-5.02 -2.64,-10.4267 -4.75,-19.4267 -6.33,-27 -5.83,-28 -8.22,-56.65 -5.12,-86.07 0.81,-7.69 2.63,-17.18 3.77,-25.59 0.82,-6.0933 1.79667,-12.4767 2.93,-19.15 1.72667,-10.1533 2.95333,-19.9667 3.68,-29.44 0.24667,-3.2667 0.18667,-7.8433 -0.18,-13.73 -0.8,-12.77 -0.72,-25.5 -0.94,-38.64 -0.08,-4.77 0.66,-9.26 -0.1,-14.08 -1.01,-6.35 -1.99,-12.68 -2.63,-19.09 -1.76,-17.5 -3.09333,-31.96333 -4,-43.39 -2.92,-36.9 -4.94333,-71.84333 -6.07,-104.83 -0.62,-18.13333 -0.83,-32.25333 -0.63,-42.36 0.23,-11.76 0.52,-22.64 2.96,-33.39 0.3,-1.31 1.07,-2.44 1.58,-3.7 0.21633,-0.51724 -0.21543,-1.07235 -0.77,-0.99 -5.92,0.89333 -11.68667,0.89 -17.3,-0.01 -0.50066,-0.0855 -0.88038,0.44258 -0.64,0.89 1.22,2.32667 2.01,4.64 2.37,6.94 0.99333,6.25333 1.60667,12.63 1.84,19.13 0.87,24.2 0.11,49.22 -1.04,73.76 -1.77333,37.8 -4.43667,76.32667 -7.99,115.58 -0.87333,9.67333 -2.03333,19.13333 -3.48,28.38 -0.55333,3.52667 -0.79667,7.11333 -0.73,10.76 0.2,11.4933 0.0733,23.2633 -0.38,35.31 -0.37,9.95 -1.13,19.25 -0.15,28.95 0.70667,7.04 1.66,14.1833 2.86,21.43 1.86,11.23 3.05,20.33 4.64,30.47 1.44,9.1533 2.34667,15.75 2.72,19.79 1.86,19.88 1.4,39.8167 -1.38,59.81 -2,14.42 -4.83333,28.62 -8.5,42.6 -1.35333,5.1667 -2.25667,9.95 -2.71,14.35 -0.58,5.6133 -1.02,11.07 -1.32,16.37 -1.40667,25.2467 -2.17333,50.6367 -2.3,76.17 -0.007,1.0667 0.1,2.0967 0.32,3.09 0.94,4.1867 1.30667,7.6833 1.1,10.49 -0.4,5.5 -0.49667,10.37 -0.29,14.61 0.18,3.78 1.45333,11.2467 3.82,22.4 2.32,10.94 3.14,21.2167 2.46,30.83 -0.23,3.23 -0.99,6.23 -2.37,9.18 -1.12,2.4067 -3.07,3.7633 -5.85,4.07 -6.41333,0.72 -12.86333,1.1733 -19.35,1.36 h -32.5 c -6.38667,-0.3133 -12.76333,-0.75 -19.13,-1.31 -2.99,-0.26 -5.8,-0.23 -6.38,-3.95 -0.89,-5.79 0.46,-11.19 5.65,-14.03 3.87333,-2.1133 7.71,-5.6967 11.51,-10.75 1.39333,-1.8467 2.39,-3.6933 2.99,-5.54 2.15,-6.58 6.15,-14.18 10.8,-20.3 3.01333,-3.9733 4.75333,-8.46 5.22,-13.46 0.14667,-1.5867 -0.03,-3.33 -0.53,-5.23 -2.08,-7.87 0.88,-16.6 4.1,-23.94 0.75,-1.74 0.92,-4.92 0.84,-6.79 -0.22,-5.6333 -0.35667,-11.2933 -0.41,-16.98 -0.0333,-4.0267 -0.50667,-8.5367 -1.42,-13.53 -4.55,-24.93 -9.62,-49.15 -17.21,-73.21 -3.40667,-10.7933 -7.04667,-21.86 -10.92,-33.2 -6.66667,-19.4867 -9.09333,-39.4767 -7.28,-59.97 1.06667,-11.9667 2.67667,-23.9133 4.83,-35.84 3.06667,-17.02 6.78333,-34.3733 11.15,-52.06 1.02,-4.14 1.58,-7.7567 1.68,-10.85 0.11333,-3.6133 -0.0567,-7.4867 -0.51,-11.62 -1.76667,-16.2533 -4.03333,-32.40667 -6.8,-48.46 -0.41333,-2.42 -0.96667,-4.71 -1.66,-6.87 -9.93333,-30.95333 -19.14,-64.33 -27.62,-100.13 -1.60667,-6.76 -3.05667,-13.43 -4.35,-20.01 -3.02667,-15.4 -5.79667,-32.35667 -8.31,-50.87 -4.47333,-32.97333 -6.08,-64.13333 -4.82,-93.48 1.96,-45.94 12.04,-90.97 37.47,-128.29 2.24,-3.3 4.7,-6.4 7.12,-9.46 4.15,-5.26 5.95,-10.32 5.77,-16.87 -0.93333,-32.91333 -1.63667,-65.25667 -2.11,-97.03 -0.03,-1.94 -0.52,-3.58 -0.98,-5.42 -0.33333,-1.32 -0.91,-2.49333 -1.73,-3.52 -2.11,-2.64 -4.96,-4.81 -6.7,-7.55 -2.83333,-4.43333 -4.92333,-9.26 -6.27,-14.48 -0.44667,-1.74 -0.80333,-1.72333 -1.07,0.05 -0.21,1.4 -0.01,2.99 -0.19,4.42 -3.26,25.04 -10.27667,49.07667 -21.05,72.11 -2.51,5.36 -6.73,10.25 -7.04,16.61 -0.88,17.8 -8.25,33.44 -17.63,48.71 -6.92667,11.28 -14.61,22.25333 -23.05,32.92 -2.86667,3.61333 -5.78667,7.31667 -8.76,11.11 -0.48667,0.62 -1.03,1.17667 -1.63,1.67 -0.61333,0.50667 -1.13,1.1 -1.55,1.78 -0.54667,0.9 -1.16333,1.77 -1.85,2.61 -12.59,15.4 -25.29,30.72 -36.86,46.89 -5.45,7.62 -7.87,18.03 -9.84,26.83 -3.593333,16.11333 -8.14,31.19333 -13.64,45.24 -2.493333,6.38667 -5.346667,12.43 -8.56,18.13 -1.8,3.2 -10.72,18.37 -15.54,12.26 -0.68,-0.86 -0.25,-2.07 -0.49,-3.02 -0.326667,-1.25333 -0.753333,-1.28667 -1.28,-0.1 -1.83,4.14 -5.34,14.31 -10.67,14.48 -3.546667,0.10667 -5.953333,-1.43333 -7.22,-4.62 -0.209662,-0.51969 -0.897493,-0.62508 -1.24,-0.19 -0.76,0.94667 -1.49,1.90333 -2.19,2.87 -2.2,3.05 -6.34,2.41 -9.1,0.4 -3.57,-2.59 -0.63,-10.37 0.9,-13.45 0.236418,-0.45407 -0.157897,-0.97982 -0.66,-0.88 -2.81,0.51 -6.84,0.27 -7.75,-3 -1.3,-4.73 -0.81,-9.94 0.05,-14.85 1.773333,-10.17333 4.316667,-19.64333 7.63,-28.41 3.18,-8.41333 7.573333,-15.49667 13.18,-21.25 0.322884,-0.3286 0.340328,-0.84758 0.04,-1.19 -0.293333,-0.34 -0.703333,-0.50667 -1.23,-0.5 -0.278815,6e-5 -0.546543,0.0916 -0.76,0.26 -4.246667,3.34667 -9.05,6.25667 -14.41,8.73 -1.546667,0.70667 -3.236667,1.18333 -5.07,1.43 -3.24,0.44 -7.32,1.02 -8.34,-3.06 v -5.04 c 1.89,-8.36 10.71,-11.9 18.05,-14.48 1.214197,-0.42225 2.32994,-1.08557 3.28,-1.95 4.853333,-4.38 9.59,-8.60667 14.21,-12.68 4.72,-4.16 11.45,-9.69 17.55,-8.89 0.42,0.0533 0.796667,-0.0467 1.13,-0.3 0.92,-0.7 1.69,-1.49333 2.31,-2.38 2.833333,-4.10667 5.91,-8.36 9.23,-12.76 3.766667,-4.99333 6.703333,-9.25 8.81,-12.77 6.546667,-10.92667 11.606667,-22.59667 15.18,-35.01 2.026667,-7.06667 3.946667,-14.08667 5.76,-21.06 5.72,-22.05333 15.62667,-42.48333 29.72,-61.29 4.66,-6.22 9.65667,-12.45667 14.99,-18.71 0.39308,-0.46353 0.60294,-1.054 0.59,-1.66 -0.28,-12.94667 0.27,-25.82667 1.65,-38.64 2.22667,-20.61333 7.64667,-40.31667 16.26,-59.11 0.53333,-1.15333 0.76,-2.34333 0.68,-3.57 -1.06,-16.84667 -0.0433,-35.03667 3.05,-54.57 3.2,-20.24 13.06,-40.07 33.4,-47.77 5.15333,-1.95333 10.72667,-3.49333 16.72,-4.62 1.53333,-0.28667 7.27,-1.04667 17.21,-2.28 7.33333,-0.90667 14.61333,-2.13667 21.84,-3.69 9.63333,-1.85333 18.05333,-5.90667 25.26,-12.16 0.35333,-0.30667 0.64,-0.65667 0.86,-1.05 0.61333,-0.13333 1.14,-0.47333 1.58,-1.02 4.60667,-5.78667 7.37667,-12.60667 8.31,-20.46 0.0467,-0.42667 -0.10333,-0.76 -0.45,-1 -3.21333,-2.21333 -6.00333,-5.19 -8.37,-8.93 -0.12667,-0.20667 -0.29667,-0.25333 -0.51,-0.14 -0.12,0.0667 -0.20333,0.13667 -0.25,0.21 -0.11333,-0.71333 -0.36667,-1.38 -0.76,-2 -6.65333,-10.54 -11.87,-21.78 -15.65,-33.72 -0.14124,-0.44693 -0.52604,-0.77342 -0.99,-0.84 -4.45,-0.65 -6.81,-5.29 -8.11,-9.16 -2.44667,-7.28667 -3.74667,-15 -3.9,-23.14 -0.0333,-1.54 0.38667,-2.85667 1.26,-3.95 0.24667,-0.30667 0.56333,-0.44667 0.95,-0.42 0.94667,0.08 1.88667,0.10333 2.82,0.07 5.42,-0.17 7.25,-5.92 8.02,-10.27 1.31,-7.45 2.25,-14.74 4.33,-22.04 0.17452,-0.60386 0.64526,-1.07836 1.25,-1.26 10.82,-3.22 21.32,-7.26333 31.5,-12.13 8.3,-3.96 16.2,-9.09 23.95,-14.33 4.34667,-2.933333 9.10667,-4.106667 14.28,-3.52 10.03,1.15 20.04,4.55 29.47,7.81 0.67736,0.236152 1.23278,0.741083 1.54,1.4 1.14667,2.5 1.93667,5.07333 2.37,7.72 1.68,10.24 3.37667,19.77333 5.09,28.6 0.87,4.45 3.85,17.51 9.55,17.9 1.3,0.0933 2.66,0.0167 4.08,-0.23 0.42,-0.0733 0.81,0.007 1.17,0.24 1.26,0.8 1.89,1.95333 1.89,3.46 0.03,6.92 -2.08,32.36 -11.81,33.17 -0.47681,0.0359 -0.88461,0.36051 -1.03,0.82 -1.62,5.23333 -3.67333,10.6 -6.16,16.1 -0.06,0.13333 -0.0233,0.23 0.11,0.29 z',\n muscles: [\n {\n id: 'neck',\n labelKey: 'neck',\n side: 'midline',\n cx: 320.6,\n cy: 273.4,\n d: 'M 332.05,262.18 c -0.78,8.99 -5.96,18.06 -11.27,26.44 a 0.35,0.35 0 0 1 -0.59,0.01 q -6.05,-9.29 -9.58,-18.59 -1.68,-4.42 -1.62,-8.04 0.06,-3.36 4.03,-3.55 6.44,-0.31 14.09,-0.13 c 2.41,0.05 5.19,0.99 4.94,3.86 z',\n },\n {\n id: 'neck-r',\n labelKey: 'neck',\n side: 'right',\n cx: 299.8,\n cy: 286.0,\n d: 'M 290.15,290.93 c 3.28,4.65 5.62,9.8 7.15,15.32 0.7,2.53 -1.37,5.04 -3.97,5.05 q -6.56,0.04 -11.88,-2.03 a 2.07,2.06 14.4 0 1 -1.3,-2.18 c 0.77,-5.99 4.87,-11.91 8.89,-16.23 a 0.72,0.71 -41.3 0 1 1.11,0.07 z M 301.06,294.13 c -3.51,-6.07 -6.56,-12.38 -9.23,-18.87 q -1.42,-3.46 -1.56,-6.85 -0.36,-8.56 0.86,-17.74 a 0.44,0.44 0 0 1 0.53,-0.37 q 0.46,0.1 0.79,0.48 4.65,5.35 7.86,11.31 c 6.42,11.93 11.65,25.19 18.44,37.61 a 5.28,5.26 30.8 0 1 0.66,2.59 L 319.3,321 a 0.79,0.79 0 0 1 -0.79,0.79 c -1.83,0 -3.44,-1.1 -4.21,-2.73 q -5.68,-11.89 -13.24,-24.93 z',\n },\n {\n id: 'neck-l',\n labelKey: 'neck',\n side: 'left',\n cx: 341.2,\n cy: 286.1,\n d: 'M 328.11,315.98 c -1.39,2.8 -1.85,5.31 -5.45,5.84 a 0.92,0.91 85.6 0 1 -1.04,-0.9 q -0.09,-9.72 -0.08,-18.23 0,-1.57 0.75,-3.05 6.71,-13.16 12.25,-25.58 c 3.49,-7.85 8.12,-17.17 14.42,-23.56 q 0.19,-0.18 0.45,-0.19 a 0.43,0.42 -3.6 0 1 0.44,0.38 q 0.95,7.84 0.93,15.61 -0.02,4.3 -1.34,7.91 -3.03,8.27 -7.56,16.2 -8.05,14.11 -13.77,25.57 z M 343.58,306.54 c 1.42,-5.58 3.9,-10.86 7.19,-15.57 a 0.69,0.68 -50.1 0 1 1.04,-0.1 c 3.9,3.84 9.01,11.14 8.89,17.13 a 1.07,1.06 79.1 0 1 -0.65,0.97 q -5.44,2.34 -12.5,2.38 c -2.39,0.01 -4.57,-2.43 -3.97,-4.81 z',\n },\n {\n id: 'trapezius-r',\n labelKey: 'trapezius',\n side: 'right',\n cx: 263.4,\n cy: 286.9,\n d: 'M 241.01,294.28 c 12.76,-8.28 25.21,-16.07 39.54,-21.44 2.58,-0.96 6.02,0.04 5.63,3.51 q -0.44,3.92 -1.62,5.3 c -6.48,7.58 -12.74,12.81 -19.24,19.14 -1.03,1.01 -1.87,1.15 -3.25,1.03 q -8.13,-0.69 -18.79,-2.97 -2.99,-0.65 -2.7,-3.86 0.05,-0.46 0.43,-0.71 z',\n },\n {\n id: 'trapezius-l',\n labelKey: 'trapezius',\n side: 'left',\n cx: 377.5,\n cy: 286.3,\n d: 'M 366.31,275.29 c 12,4.97 22.67,11.96 33.55,18.94 q 0.51,0.33 0.54,0.94 c 0.08,1.63 -0.71,3.2 -2.44,3.59 q -9.65,2.18 -18.62,2.99 c -1.26,0.11 -2.4,0.24 -3.39,-0.7 q -5.03,-4.78 -10.97,-10.25 -6.53,-6.01 -8.56,-9.16 -1.87,-2.89 -1.63,-6.77 0.03,-0.49 0.35,-0.85 c 3.04,-3.4 7.94,-0.07 11.17,1.27 z',\n },\n {\n id: 'deltoids-r',\n labelKey: 'deltoid',\n side: 'right',\n cx: 202.5,\n cy: 327.4,\n d: 'M 215.94,289.45 c -21.5,15.97 -35.81,41.69 -45.18,66.64 a 0.54,0.54 0 0 1 -0.75,0.3 c -1.36,-0.68 -2.91,-1.32 -2.88,-3.16 q 0.36,-18.38 4.6,-33.36 c 4.12,-14.55 12.32,-23.54 25.35,-31.51 5.06,-3.09 15.01,-5.79 18.99,0.41 a 0.51,0.51 0 0 1 -0.13,0.68 z M 233,326.79 c -5.53,27.66 -26.78,45.52 -55.22,43.68 a 0.54,0.54 0 0 1 -0.5,-0.61 c 4.48,-32.74 28.09,-58.38 54.53,-76.41 q 2.3,-1.57 4.86,-0.86 a 1.61,1.61 0 0 1 1.18,1.72 Q 236,311.81 233,326.79 Z',\n },\n {\n id: 'deltoids-l',\n labelKey: 'deltoid',\n side: 'left',\n cx: 438.6,\n cy: 327.1,\n d: 'M 470.13,355.96 C 463.5,338.45 454.92,322.09 443.6,307.63 q -8.16,-10.43 -18.47,-18.02 a 0.95,0.94 33.2 0 1 -0.26,-1.22 c 3.34,-5.94 13.06,-3.27 17.74,-0.68 13.57,7.5 23.02,17.38 27.32,32.28 q 3.99,13.8 4.29,33.5 0.02,0.68 -0.47,1.17 -1.06,1.07 -2.71,1.71 a 0.71,0.71 0 0 1 -0.91,-0.41 z M 463.02,370.48 c -23.85,1.37 -44.22,-11.24 -52.35,-33.91 q -2.31,-6.45 -3.64,-14.34 -2.64,-15.63 -3.89,-27.26 -0.28,-2.56 2.36,-2.63 1.96,-0.05 4.36,1.61 c 25.95,18.03 49.33,43.22 53.78,75.78 q 0.1,0.71 -0.62,0.75 z',\n },\n {\n id: 'chest-r',\n labelKey: 'pectoralis',\n side: 'right',\n cx: 266.5,\n cy: 376.1,\n d: 'M 215.31,402.8 c 3.26,-19.61 9.28,-38.69 19.81,-54.85 q 13.83,-21.23 37.68,-27.16 c 4.19,-1.04 8.16,-1.75 12.65,-1.52 q 12.07,0.63 26.16,3.99 1.78,0.43 1.87,2.25 1.29,25.82 3.16,54.8 0.99,15.38 0.3,27.45 -0.37,6.41 -1.94,10.48 c -1.58,4.08 -6.16,7.97 -9.72,10.84 -4.33,3.5 -10.61,4.16 -16,3.9 q -10.92,-0.53 -23.26,-4.83 c -17.71,-6.16 -33.56,-14.26 -50.09,-24.02 a 1.31,1.29 20.5 0 1 -0.62,-1.33 z',\n },\n {\n id: 'chest-l',\n labelKey: 'pectoralis',\n side: 'left',\n cx: 374.6,\n cy: 376.7,\n d: 'M 363.91,319.81 c 13.87,2.63 26.6,9.35 35.84,20.13 14.46,16.89 22.21,40.73 25.93,63.05 q 0.11,0.67 -0.48,1.03 -23.28,13.86 -44.52,22.12 c -11.73,4.57 -25.54,8.27 -37.94,6.2 -5.84,-0.97 -14.69,-8.68 -16.85,-14.18 q -1.62,-4.13 -2.04,-13.18 -0.45,-9.71 0.29,-21.75 1.69,-27.64 3.41,-58.27 a 1.18,1.16 -22 0 1 0.33,-0.76 q 0.76,-0.78 1.88,-1.05 11.52,-2.78 22.73,-3.71 6.58,-0.54 11.42,0.37 z',\n },\n {\n id: 'biceps-r',\n labelKey: 'biceps',\n side: 'right',\n cx: 181.2,\n cy: 430.0,\n d: 'M 155.35,437.19 c 0.88,-13.89 5.09,-26.01 11.66,-38.24 4.28,-7.95 13.01,-13.06 21.68,-14.64 q 5.04,-0.91 8.47,-1.31 c 3.81,-0.44 9.89,1.7 10.16,6.4 q 0.6,10.54 -0.27,19.31 c -1.87,18.75 -10.06,34.69 -22.69,48.75 q -8.64,9.63 -17.84,18.84 a 1.95,1.9 16.8 0 1 -0.98,0.51 q -3.19,0.6 -7.01,-0.16 c -1.52,-0.3 -2.45,-1.78 -2.7,-3.22 -0.63,-3.64 -1.32,-7.25 -1.31,-10.96 q 0.05,-12.9 0.83,-25.28 z',\n },\n {\n id: 'biceps-l',\n labelKey: 'biceps',\n side: 'left',\n cx: 459.5,\n cy: 430.0,\n d: 'M 478.52,408.27 q 5.57,13 6.67,24.56 1.21,12.62 1.22,28.51 0,5.95 -1.27,12.12 c -0.81,3.98 -5.47,3.81 -8.54,3.62 q -1.7,-0.11 -3.27,-1.75 c -13.93,-14.57 -28.48,-28.44 -35.35,-48.06 -4.33,-12.36 -5.34,-25.85 -4.21,-39.01 q 0.06,-0.73 0.51,-1.3 c 2.72,-3.44 6.57,-4.44 11.44,-3.76 q 7.25,1.01 11.78,2.52 9.47,3.16 14.86,10.89 3.02,4.33 6.16,11.66 z',\n },\n {\n id: 'triceps-r',\n labelKey: 'triceps',\n side: 'right',\n cx: 186.2,\n cy: 464.1,\n d: 'M 203.67,452.99 c -7.1,14.55 -18.61,30.01 -32.29,39.49 q -2.32,1.61 -4.85,0.35 l -0.31,-0.15 q -2.42,-1.22 -0.37,-2.98 c 17.2,-14.83 28.72,-32 37.23,-52.62 q 0.8,-1.93 2.34,-3.04 a 1.28,1.28 0 0 1 1.8,0.31 q 1.35,1.95 0.97,4.41 -1.1,7.22 -4.52,14.23 z',\n },\n {\n id: 'triceps-l',\n labelKey: 'triceps',\n side: 'left',\n cx: 454.5,\n cy: 463.1,\n d: 'M 442.12,446.42 q 12.14,25.77 33.26,43.55 1.47,1.24 -0.14,2.3 l -0.63,0.42 a 4.39,4.37 45.8 0 1 -4.92,-0.08 q -8.08,-5.68 -15.21,-13.9 c -9.9,-11.44 -19.12,-25.17 -21.69,-39.38 q -0.62,-3.4 1.39,-5.43 0.44,-0.44 0.99,-0.15 1.54,0.81 2.17,2.22 2.35,5.31 4.78,10.45 z',\n },\n {\n id: 'obliques-r',\n labelKey: 'externalOblique',\n side: 'right',\n cx: 243.3,\n cy: 514.9,\n d: 'M 234.32,446.92 c -0.55,-2.95 -0.73,-5.84 -1.94,-8.63 q -4.84,-11.24 -8.61,-21.89 -1.12,-3.17 1.19,-0.73 c 6.09,6.44 10.93,13.52 16.12,20.74 a 1.71,1.68 28.7 0 1 0.33,1.09 q -0.53,11.15 -1.88,22.64 -0.27,2.38 -1.24,0.18 -2.52,-5.75 -3.97,-13.4 z M 242.67,456.5 c 3.65,1.14 7.61,3.78 10.54,6.08 q 2.32,1.82 2.25,4.78 l -0.21,8.13 q -0.04,1.79 -1.45,0.68 -5.7,-4.52 -10.18,-10.21 c -1.95,-2.48 -2.49,-5.57 -2.19,-8.64 a 0.96,0.96 0 0 1 1.24,-0.82 z M 246.6,490.48 c -6.03,-4.05 -7.7,-15.15 -7.34,-21.92 a 0.29,0.29 0 0 1 0.5,-0.19 c 4.79,4.87 9.23,10.01 14.82,13.93 a 1.71,1.7 17.7 0 1 0.72,1.39 l -0.03,11.84 a 0.6,0.6 0 0 1 -0.96,0.47 q -4.04,-3.05 -7.71,-5.52 z M 252.02,456.3 c -3.08,-1.43 -6.59,-6.27 -8.84,-9.51 q -1.03,-1.49 -0.89,-3.31 a 1.39,1.38 -88.2 0 1 1.35,-1.28 q 2.27,-0.04 4.18,0.73 4.36,1.77 9.23,3.14 0.54,0.15 0.58,0.71 0.4,6.12 -1.21,11.67 a 0.35,0.35 0 0 1 -0.56,0.18 q -1.73,-1.34 -3.84,-2.33 z M 257.8,616.66 c -4.79,-0.24 -10.33,-3.88 -14.25,-6.47 -3.22,-2.12 -4.01,-14.52 -4.21,-18.14 q -0.65,-12.12 -0.53,-21.74 0.32,-25.23 0.51,-50.71 c 0.03,-4.43 0.42,-8.84 0.73,-13.1 q 0.3,-4 1.6,-7.53 0.76,-2.05 2.82,-1.27 c 12.29,4.68 12.69,15.09 12.12,26.28 q -0.16,3.03 0.13,5.86 2.02,19.75 1.8,41.33 -0.05,4.7 0.76,9.52 1.4,8.43 2.19,17.36 0.85,9.42 -2.51,17.86 a 1.18,1.17 -77.7 0 1 -1.16,0.75 z M 259.53,441.27 c -6.09,-0.94 -15.24,-7.47 -17.83,-12.96 a 1.96,1.95 -46.6 0 1 -0.04,-1.54 c 0.68,-1.67 2.51,-1.45 3.82,-0.88 q 8.66,3.77 17.36,6.42 a 0.45,0.45 0 0 1 0.31,0.35 q 0.79,4.96 -2.71,8.32 -0.38,0.37 -0.91,0.29 z',\n },\n {\n id: 'obliques-l',\n labelKey: 'externalOblique',\n side: 'left',\n cx: 397.2,\n cy: 515.5,\n d: 'M 384.22,445.83 c 4.32,-0.61 8.05,-3.04 12.37,-3.63 q 1.44,-0.19 1.87,1.19 0.52,1.66 -0.54,3.18 c -4.17,5.96 -7.23,9.14 -12.91,11.89 a 0.38,0.38 0 0 1 -0.53,-0.24 q -1.53,-5.28 -1.13,-11.45 a 1.03,1.01 88.3 0 1 0.87,-0.94 z M 393.51,426.7 q 1.7,-0.72 3.57,-1.16 a 1.83,1.83 0 0 1 1.91,0.73 c 0.66,0.94 0.41,2.29 -0.25,3.15 q -6.32,8.23 -15.71,11.52 -3.03,1.06 -4.1,-1.97 -1.12,-3.14 -1.26,-3.53 -1.02,-2.87 1.9,-3.71 6.45,-1.87 13.94,-5.03 z M 397.15,610.37 c -3.94,2.47 -9.2,6.06 -13.86,6.26 a 1.49,1.48 77.9 0 1 -1.43,-0.93 q -3.33,-8.47 -2.36,-18.41 0.73,-7.6 1.89,-14.77 1,-6.17 0.99,-11.23 c -0.02,-13.26 0.27,-26.67 1.74,-39.85 q 0.47,-4.28 0.19,-8.9 c -0.66,-10.78 0.81,-21.31 12.66,-24.94 a 1.78,1.77 69.5 0 1 2.14,0.98 q 1,2.27 1.34,4.92 1.19,9.27 1.26,20.24 0.16,23.43 0.38,48.3 c 0.09,11.08 -0.18,22.85 -2.37,33.89 -0.34,1.72 -0.99,3.45 -2.57,4.44 z M 398.41,456.38 a 0.8,0.8 0 0 1 1.09,0.63 c 0.86,5.62 -1.96,9.16 -5.73,13.05 q -3.65,3.78 -7.3,6.56 a 0.41,0.41 0 0 1 -0.66,-0.3 q -0.29,-4.61 -0.24,-8.98 0.03,-3.34 2.9,-5.44 4.69,-3.42 9.94,-5.52 z M 401.76,469.17 c 0.19,6.21 -1.1,14.25 -5.22,19.11 -2.62,3.1 -6.7,5.34 -10.07,7.78 q -0.73,0.53 -0.74,-0.38 l -0.07,-12.12 q 0,-0.59 0.46,-0.96 8.07,-6.31 14.53,-13.82 1.06,-1.24 1.11,0.39 z M 417.44,415.21 c -2.14,7.47 -5.47,14.6 -8.52,22.06 q -1.36,3.31 -1.79,6.59 -1.11,8.53 -4.58,16.68 -0.79,1.86 -1.07,-0.14 -1.42,-10.38 -1.9,-22.98 a 1.58,1.57 -28.9 0 1 0.29,-1 q 6.57,-9.46 12.8,-17.21 1.87,-2.32 4.3,-4.31 0.73,-0.59 0.47,0.31 z',\n },\n {\n id: 'abs-r',\n labelKey: 'rectusAbdominis',\n side: 'right',\n cx: 284.1,\n cy: 559.6,\n d: 'M 261.73,482.62 c 0.12,-10.88 -0.33,-22.8 7.93,-31.04 10.43,-10.39 25.75,-12.91 39.95,-10.63 q 0.47,0.08 0.45,0.54 l -0.87,24.33 a 0.96,0.95 88.3 0 1 -0.86,0.92 q -8.51,0.88 -17.53,2.35 c -11.22,1.83 -20.06,5.16 -28.09,13.92 q -1,1.08 -0.98,-0.39 z M 263.89,560.38 c 18.37,-2.6 32.63,0.35 44.32,15.16 q 0.72,0.91 0.91,2.02 0.98,5.72 1.19,10.92 2.01,48.7 2.07,81.21 0.01,2.91 -2.63,5.03 c -2.77,2.21 -10.61,5.88 -13.52,2.38 -6.1,-7.32 -10.49,-16.08 -14.05,-25.36 q -14.5,-37.75 -18.65,-78.2 -0.6,-5.83 -0.33,-12.39 0.03,-0.68 0.69,-0.77 z M 283.92,476.78 q 12.55,-5.43 25.84,-3.32 0.36,0.06 0.36,0.42 0.41,19.6 -0.86,38.86 a 0.91,0.91 0 0 1 -1,0.85 c -13.44,-1.32 -28.43,-1.82 -41.54,1.88 q -1.32,0.37 -1.93,-0.86 c -9,-18.41 3.35,-31 19.13,-37.83 z M 300.31,556.68 q -4.15,-2.21 -8.98,-2.91 -13.66,-2 -27.37,-1.31 a 0.95,0.95 0 0 1 -0.97,-0.72 q -2.73,-10.93 -1.37,-23.2 0.2,-1.78 1.77,-2.92 c 6.36,-4.65 14.69,-8.3 22.33,-8.94 q 12.38,-1.05 23.44,4.26 a 2.06,2.06 0 0 1 1.17,1.89 q -0.3,18.75 -1.38,35.86 -0.03,0.52 -0.55,0.61 c -2.7,0.45 -5.69,-1.34 -8.09,-2.62 z',\n },\n {\n id: 'abs-l',\n labelKey: 'rectusAbdominis',\n side: 'left',\n cx: 357.5,\n cy: 558.6,\n d: 'M 349.65,553.77 c -5.34,0.78 -9.22,3.16 -13.94,5.24 q -1.59,0.69 -3.28,0.24 a 0.64,0.63 -83.8 0 1 -0.47,-0.59 q -1.23,-19.64 -1.28,-36.09 a 1.7,1.68 -13.4 0 1 0.95,-1.53 c 15.64,-7.64 31.83,-5.42 45.86,4.48 0.94,0.67 1.65,1.44 1.78,2.61 q 1.39,12.16 -1.2,23.23 -0.25,1.07 -1.34,1.03 -13.86,-0.54 -27.08,1.38 z M 354.08,475.63 c 16.7,6.15 32.39,19.94 21.71,39.55 a 0.9,0.9 0 0 1 -1.05,0.43 c -13.38,-3.92 -27.7,-3.22 -41.96,-2.05 a 0.9,0.9 0 0 1 -0.97,-0.78 c -1.62,-12.74 -1.1,-26.27 -1.03,-38.85 a 0.48,0.47 86.4 0 1 0.4,-0.46 q 11.86,-1.91 22.9,2.16 z M 362.23,642.32 c -4.21,12.26 -9.35,24.52 -17.49,34.79 q -0.9,1.12 -2.2,1.22 -6.54,0.54 -11.69,-3.91 c -1.34,-1.16 -2.37,-2.61 -2.35,-4.44 q 0.27,-32.33 1.7,-73.01 0.36,-10.37 1.51,-19.31 0.12,-0.89 0.67,-1.6 c 11.52,-15 26.64,-18.71 44.72,-15.65 a 0.85,0.84 -86 0 1 0.71,0.83 q 0.06,12.43 -1.93,25.22 -4.56,29.34 -13.65,55.86 z M 378.34,483.09 c -8.04,-8.87 -17.3,-12.26 -29.19,-14.16 q -8.48,-1.35 -16.49,-2.17 a 1.05,1.04 2.2 0 1 -0.93,-1 l -0.83,-24.24 q -0.02,-0.53 0.51,-0.61 18.35,-2.62 31.52,4.43 14.18,7.59 15.53,22.29 0.76,8.32 0.7,15.15 -0.01,1.2 -0.82,0.31 z',\n },\n {\n id: 'forearm-r',\n labelKey: 'forearmFlexors',\n side: 'right',\n cx: 126.3,\n cy: 566.5,\n d: 'M 80.93,647.88 c 14.1,-28.26 32.44,-54.05 52.98,-78.01 6.28,-7.32 12.52,-13.04 22.3,-14.76 a 0.44,0.44 0 0 1 0.44,0.67 q -33.59,51.14 -75.12,92.53 -1.62,1.61 -0.6,-0.43 z M 85.85,647.42 q 11.51,-11.53 23.19,-23.33 6.63,-6.71 16.74,-19.55 c 13.51,-17.18 26.63,-37.24 39.52,-56.02 a 1.08,1.08 0 0 1 1.85,0.11 q 0.51,0.96 0.26,2.09 c -1.73,8.15 -5.44,14.39 -10.55,22.73 q -11.14,18.18 -25.7,34.1 -18.98,20.74 -39.21,37.61 -2.7,2.25 -6.02,3.82 -0.28,0.13 -0.57,0.24 -1.42,0.54 -1.26,-0.09 0.03,-0.14 0.14,-0.23 0.8,-0.67 1.61,-1.48 z M 158.49,493 c -4.72,28.27 -19.05,55.5 -36.58,78.04 q -10.8,13.89 -20.36,28.46 -4.33,6.6 -7.59,13.38 c -5.52,11.5 -11.24,22.8 -19.41,32.11 q -1.49,1.7 -0.81,-0.46 c 3.77,-11.82 9.38,-23.48 14.74,-35.02 3.82,-8.21 7.5,-17.64 10.42,-26.75 7.62,-23.71 16.99,-47.77 29.34,-68.38 7.41,-12.37 17.14,-24.67 29.9,-31.38 a 0.72,0.71 -14.7 0 1 1.05,0.61 q 0.12,4.42 -0.7,9.39 z M 176.77,536.74 c -5.58,2.64 -11.34,4.68 -16.45,7.91 -5.83,3.68 -11.93,7.82 -18.84,8.99 a 1.21,1.21 0 0 1 -1.41,-1.13 c -0.29,-5.42 4.57,-12.34 7.66,-16.52 q 10.15,-13.75 23.71,-26.94 c 1.35,-1.32 3.26,-2.11 5.16,-1.83 a 1.02,1.02 0 0 1 0.86,0.86 q 2.03,13.42 -0.05,27.79 a 1.12,1.12 0 0 1 -0.64,0.87 z',\n },\n {\n id: 'forearm-l',\n labelKey: 'forearmFlexors',\n side: 'left',\n cx: 514.8,\n cy: 566.2,\n d: 'M 478.46,543.49 c -4.04,-2.35 -8.89,-4.3 -13.28,-6.25 -2.13,-0.95 -1.9,-3.18 -2.11,-5.15 q -1.32,-12.65 0.43,-23.9 a 1.38,1.38 0 0 1 1.54,-1.16 c 1.68,0.21 3.26,0.93 4.5,2.12 q 12.39,11.96 22.31,25.05 c 2.67,3.51 10.26,13.94 8.99,18.38 a 1.51,1.51 0 0 1 -1.8,1.06 q -5.3,-1.25 -8.83,-3.31 -5.39,-3.14 -11.75,-6.84 z M 480.72,568.04 c -3.26,-5.55 -5.96,-11.12 -7.24,-17.31 q -0.33,-1.61 0.58,-2.51 a 1.03,1.03 0 0 1 1.57,0.16 c 13.24,19.66 27,40.11 41.05,58.18 11.56,14.88 25.47,28 38.8,41.13 q 0.56,0.55 1.06,1.21 0.78,1.05 -0.44,0.58 -3.39,-1.29 -6.75,-4.08 -19.67,-16.3 -37.87,-35.97 -17.53,-18.94 -30.76,-41.39 z M 484.61,555.07 c 11.21,1.91 17.39,8.95 24.45,17.26 18.64,21.97 34.4,44.56 47.76,69.37 q 1.9,3.52 3.32,6.62 0.61,1.33 -0.43,0.3 -42.24,-42.1 -75.48,-92.97 -0.48,-0.73 0.38,-0.58 z M 540.63,578.72 c 5.89,18.68 13.76,35.38 21.55,52.65 q 2.61,5.79 4.88,12.9 0.81,2.52 -0.89,0.5 c -7.48,-8.88 -12.5,-17.92 -17.97,-29.24 q -6.73,-13.92 -15.23,-25.62 -8.17,-11.25 -17.48,-23.63 c -15.23,-20.26 -27.78,-45.5 -32.6,-70.62 q -1.21,-6.31 -1.13,-11.97 0.01,-1.19 1.06,-0.64 c 10.4,5.42 18.51,14.3 25.31,24.31 13.82,20.33 24.84,47.05 32.5,71.36 z',\n },\n {\n id: 'hands-r',\n labelKey: 'hand',\n side: 'right',\n cx: 43.8,\n cy: 710.2,\n d: 'M 76.9,699.46 c -1.68,6.93 -4.86,14.23 -9.75,19.73 -3.68,4.16 -10.21,-0.6 -12.84,-3.77 q -4.85,-5.86 -10.18,-10.8 c -2.03,-1.88 -9.58,-5.18 -8.37,-9.02 2,-6.4 4.37,-11.1 8.21,-16.74 q 5.74,-8.42 12.12,-17.03 2.99,-4.03 5.79,-6.44 1.65,-1.41 4.25,-0.76 7.51,1.87 13.62,4.2 a 0.47,0.47 0 0 1 0.29,0.4 q 1.61,20.71 -3.14,40.23 z M 22.64,686.61 q -4.35,2.68 -8.97,5.43 -2,1.2 -3.76,0.73 -2.04,-0.55 -3.53,-1.72 a 1.59,1.59 0 0 1 -0.52,-1.77 q 0.73,-2.04 2.74,-3 5.14,-2.46 10.34,-5.1 a 13.93,13.75 -80.7 0 0 3.47,-2.53 c 3.04,-3.03 6.28,-5.7 9.81,-8.15 q 6.86,-4.77 13.58,-9.74 c 1.68,-1.24 2.71,-1.36 4.54,-0.38 4.66,2.47 -4.59,11.2 -6.57,12.67 -6.61,4.92 -13.95,9.14 -21.13,13.56 z M 32.82,715.26 q -5.43,14.93 -12.06,27.84 -1.98,3.85 -4.71,6.75 a 1.67,1.66 51.8 0 1 -2.66,-0.32 c -2.02,-3.56 1,-13.05 2.6,-16.84 q 6.53,-15.37 13.87,-30.34 1.12,-2.28 2.93,-0.51 l 2.38,2.35 q 1.73,1.69 0.66,3.87 -1.5,3.03 -3.01,7.2 z M 32.18,751.27 q -3.61,7.78 -7.04,13.77 -0.8,1.41 -2.48,1.29 a 2.04,2.04 0 0 1 -1.82,-1.48 q -0.59,-2.11 -0.16,-4.36 1.46,-7.75 4.24,-15.75 5.55,-15.95 13.53,-31.52 a 0.92,0.91 -74.1 0 1 0.89,-0.5 c 2.55,0.22 5.63,1.06 5.19,4.36 q -0.48,3.64 -1.61,7.19 -3.97,12.44 -10.74,27 z M 54.56,726.38 c -4.87,12.51 -10.55,24.74 -16.83,36.91 q -1.47,2.85 -4.02,0.9 -0.2,-0.16 -0.33,-0.36 -1.89,-2.86 -0.7,-5.81 c 4.9,-12.05 9.63,-24.27 15.68,-36.05 q 0.94,-1.84 2.66,-0.68 l 2.47,1.68 q 1.89,1.28 1.07,3.41 z M 53.04,752.14 c 1.93,-10.58 3.66,-20.18 11.74,-27.88 a 0.88,0.88 0 0 1 1.43,0.33 q 0.18,0.48 0.07,0.95 -3.65,14.78 -9.97,27.42 -0.75,1.49 -1.97,2.17 a 1.06,1.06 0 0 1 -1.57,-1.02 q 0.09,-0.98 0.27,-1.97 z',\n },\n {\n id: 'hands-l',\n labelKey: 'hand',\n side: 'left',\n cx: 597.1,\n cy: 710.7,\n d: 'M 572.57,717.95 c -4.99,-6.62 -7.75,-14.53 -9.42,-22.45 q -3.74,-17.75 -2.3,-36.07 0.04,-0.54 0.55,-0.72 6.91,-2.55 14.55,-4.31 a 3.01,2.98 -33.7 0 1 2.4,0.47 q 2.39,1.67 4.36,4.26 11.12,14.61 17.14,24.22 2.19,3.48 3.91,8.26 c 1.42,3.93 2.9,6.43 -1.05,8.84 -6.91,4.23 -11.6,9.71 -16.7,15.64 q -2.2,2.56 -5.58,4.02 -4.71,2.02 -7.86,-2.16 z M 629.7,692.91 q -0.88,0.05 -1.63,-0.39 -16.99,-9.79 -30.39,-19.09 -5.44,-3.78 -8.34,-10.22 a 1.71,1.66 45.9 0 1 0,-1.38 c 0.82,-1.77 3.4,-2.74 5.14,-1.47 6.84,4.98 13.95,9.43 20.22,14.76 2.49,2.13 4.62,4.61 7.54,6.13 q 5.16,2.68 10.13,5.06 1.59,0.76 2.51,2.34 a 1.98,1.97 56.7 0 1 -0.53,2.58 q -2.03,1.52 -4.65,1.68 z M 619.38,741.59 c -5.55,-10.95 -9.91,-22.4 -14.42,-34.16 q -0.76,-1.97 0.82,-3.38 1.39,-1.24 2.48,-2.21 1.76,-1.58 2.8,0.54 8.21,16.69 14.65,32.42 2.73,6.68 2.32,13.6 -0.1,1.72 -1.83,1.98 a 1.61,1.58 -24.2 0 1 -1.45,-0.54 q -2.91,-3.38 -5.37,-8.25 z M 615.42,764.65 c -7.37,-14.18 -14.47,-29.6 -18.64,-45 q -0.59,-2.21 -0.29,-4.52 0.07,-0.54 0.54,-0.83 1.9,-1.18 4.13,-1.51 1,-0.15 1.46,0.75 7.03,13.62 12.86,29.78 3.2,8.87 4.64,16.66 0.36,1.96 0.12,4.04 c -0.34,2.92 -3.74,2.72 -4.82,0.63 z M 603.2,763.32 C 597.32,751.95 590.92,738.6 586.42,726.4 q -0.8,-2.15 1.08,-3.48 l 2.22,-1.57 q 1.83,-1.29 2.86,0.69 c 6.13,11.73 10.79,24.28 15.74,36.17 q 1.16,2.78 -0.76,5.72 -0.12,0.18 -0.3,0.32 -2.58,1.93 -4.06,-0.93 z M 585.43,754.04 c -5.15,-8.61 -8.65,-19.26 -10.81,-28.78 q -0.46,-2.03 1.32,-0.96 1.2,0.73 2.2,1.88 c 6.71,7.78 8.51,18.11 10.03,28.15 a 0.6,0.59 -12.9 0 1 -0.42,0.66 q -1.5,0.43 -2.32,-0.95 z',\n },\n {\n id: 'adductors-r',\n labelKey: 'adductors',\n side: 'right',\n cx: 264.4,\n cy: 742.1,\n d: 'M 286.21,731.89 c 5.1,-12.47 11.15,-24.68 16.82,-36.79 a 1.17,1.17 0 0 1 1.84,-0.38 q 0.8,0.71 0.75,1.93 c -0.46,12.38 -1.19,24.44 -2.76,37.71 -1.13,9.56 -1.91,19.14 -3.49,28.56 -0.69,4.17 -2.41,8.04 -4.32,11.69 a 2.22,2.21 29.3 0 1 -3.12,0.87 q -1.32,-0.8 -1.28,-2.41 0.2,-8.82 0.13,-17.67 -0.01,-1.4 -0.62,-2.66 c -2.16,-4.44 -4.98,-9.87 -5.17,-14.91 q -0.11,-2.7 1.22,-5.94 z M 292.87,682.52 c -3.12,14.57 -9.61,27.39 -18.76,39.63 q -0.68,0.91 -1.28,-0.05 c -2.93,-4.74 -4.21,-9.67 -4.63,-15.36 q -0.45,-5.9 -1.09,-8.14 -1.89,-6.56 -4.75,-13.01 c -2.76,-6.23 -4.28,-13.06 -7.14,-19.37 -7.35,-16.19 -16.26,-33.86 -22.42,-51.48 q -0.08,-0.21 -0.01,-0.42 a 0.26,0.26 0 0 1 0.46,-0.06 q 10.77,14.73 21.98,28.77 11.5,14.4 17.6,19.88 7.55,6.77 14.86,13.4 2.74,2.48 4.97,5.3 a 1.11,1.09 32.6 0 1 0.21,0.91 z M 300.1,836.83 q 1.64,19.12 2.22,36.73 0.11,3.47 -0.89,0.14 -2.42,-8.03 -4.58,-16.34 c -4.22,-16.26 -9.63,-31.97 -14.75,-48.34 q -2.58,-8.25 -6.48,-18.58 -14.03,-37.14 -28.05,-75.59 -3.75,-10.3 -6.6,-19.52 -5.15,-16.64 -9.78,-32.48 c -4.96,-16.95 -8.01,-35.46 -8.1,-52.91 q -0.02,-2.71 0.71,-0.1 9.47,34.09 24.55,65.57 c 6.56,13.69 13.54,27.25 19.02,40.89 q 15.49,38.57 24.83,67.42 2.41,7.47 3.31,17.16 c 1.12,12.19 3.56,24.02 4.59,35.95 z',\n },\n {\n id: 'adductors-l',\n labelKey: 'adductors',\n side: 'left',\n cx: 376.6,\n cy: 741.7,\n d: 'M 338.67,872.66 c 0.73,-20.39 1.92,-38.3 4.91,-57.16 1.83,-11.53 2.14,-23.33 6.03,-34.79 q 10.93,-32.22 23.86,-64.19 c 5.7,-14.09 12.7,-27.77 19.13,-41.2 q 15.32,-32.04 24.53,-65.61 0.65,-2.39 0.64,0.08 c -0.12,28.68 -7.98,55.21 -17.34,83.63 -1.78,5.41 -3.2,10.88 -5.19,16.32 -10.25,27.99 -20.2,55.76 -30.81,83.12 q -2.8,7.2 -4.91,13.95 -5.59,17.81 -11.19,35.6 c -3.34,10.63 -5.96,21.88 -9.13,32.74 q -0.27,0.92 -0.4,-0.03 -0.18,-1.22 -0.13,-2.46 z M 394.37,647.3 c -4.46,9.4 -9.38,19.33 -12.44,29.17 q -1.3,4.17 -2.83,7.95 c -2.26,5.61 -4.97,10.94 -5.74,16.89 -0.99,7.53 -1.06,14.75 -5.53,21.2 a 0.5,0.5 0 0 1 -0.83,0.01 q -4.34,-6.22 -7.72,-11.72 -7.96,-12.97 -11.16,-28.21 a 1.61,1.61 0 0 1 0.35,-1.37 q 2.44,-2.82 5.14,-5.21 c 9.88,-8.72 18.7,-16.83 27.48,-27.39 q 13.43,-16.14 25.97,-33.56 0.32,-0.44 0.43,-0.49 0.87,-0.39 0.54,0.51 -5.81,15.68 -13.66,32.22 z M 352.83,748.3 c -2.02,3.67 -2.95,6.58 -2.78,11.03 q 0.26,6.53 0.21,13.72 c -0.01,1.58 -1.13,2.86 -2.75,2.9 q -0.58,0.01 -0.9,-0.48 C 342.49,769 341.27,763.08 340.41,755 q -1.04,-9.79 -2.26,-19.97 c -1.6,-13.31 -2.43,-25.65 -2.79,-38.57 q -0.03,-1.03 0.53,-1.68 a 1.21,1.2 52.6 0 1 2.01,0.27 q 6.87,14.67 13.39,28.8 2.2,4.77 3.93,9.5 1.07,2.92 0.68,5.46 -0.83,5.42 -3.07,9.49 z',\n },\n {\n id: 'quadriceps-r',\n labelKey: 'quadriceps',\n side: 'right',\n cx: 247.7,\n cy: 795.8,\n d: 'M 250.69,888.3 q -16.76,-40.15 -28.04,-78.67 -9.66,-32.96 -14.75,-66.84 c -6.22,-41.38 -6.25,-81.5 4.58,-120.54 q 0.12,-0.43 0.43,-0.11 0.42,0.42 0.59,0.99 22.71,76.86 50.06,155.88 0.82,2.37 1.12,4.78 4.02,31.91 4.89,65.81 c 0.88,34.39 -0.14,66.83 -3.55,99.57 -0.42,4.08 -1.48,7.64 -3.4,11.1 a 1.74,1.74 0 0 1 -1.36,0.9 c -3.47,0.33 -9.58,0.21 -9.46,-4.63 q 0.8,-32.72 -0.01,-63.12 -0.07,-2.67 -1.1,-5.12 z M 237.75,955.7 c -18.56,-47.89 -33.57,-96.23 -39.84,-146.62 -3.58,-28.72 -3.69,-58.65 1.76,-86.95 q 0.62,-3.18 0.81,0.06 0.5,8.53 1.83,17.04 3.42,21.88 10.35,47.5 6.6,24.41 13.5,49.26 2.72,9.81 5.92,19.09 4.05,11.74 7.55,25.02 1.76,6.7 2.16,12.33 2,28.5 1.14,55.08 c -0.12,3.52 -0.98,6.35 -3.98,8.55 a 0.79,0.79 0 0 1 -1.2,-0.36 z M 301.11,919.16 c -0.02,16.26 -1.13,34.39 -10.87,47.81 -1.99,2.73 -6.98,1.8 -10.02,1.14 -1.09,-0.24 -1.35,-1.1 -1.62,-2.04 -3.49,-11.83 -3.03,-24.65 -1.79,-37.03 q 1.41,-14.09 3.35,-26.37 1.6,-10.13 1.54,-18.61 -0.09,-12.6 -1.48,-24.36 c -1.65,-13.85 -3.88,-27.85 -2.4,-41.77 a 0.32,0.32 0 0 1 0.4,-0.28 q 0.4,0.1 0.57,0.48 c 14.17,32.12 22.37,65.88 22.32,101.03 z',\n },\n {\n id: 'quadriceps-l',\n labelKey: 'quadriceps',\n side: 'left',\n cx: 393.2,\n cy: 795.6,\n d: 'M 390.96,886.41 q -1.98,4.65 -2.04,9.09 -0.45,33.06 0.22,61.74 c 0.09,3.94 -6.78,4.21 -9.43,3.95 a 1.8,1.79 -10.8 0 1 -1.44,-0.97 c -1.51,-2.91 -2.67,-5.71 -3.07,-9.04 q -1.93,-16.27 -2.84,-32.46 c -2.55,-44.99 -1.64,-90.5 3.77,-134.26 q 0.37,-2.95 1.26,-5.54 26.45,-76.29 50.24,-156.54 a 0.39,0.38 21.6 0 1 0.55,-0.23 q 0.31,0.16 0.41,0.51 c 10.18,37.82 10.57,76.54 5.14,115.55 q -4.46,32.04 -13.33,63.85 -12.28,44.03 -29.44,84.35 z M 441.32,723.15 q 5.4,27.88 3.91,59.43 c -1.5,31.66 -7.16,62.78 -15.56,93.66 q -10.93,40.18 -26.56,79.46 a 0.8,0.8 0 0 1 -1.23,0.34 c -4.09,-3.18 -3.84,-7.55 -3.96,-12.09 q -0.59,-24.2 1.07,-50.23 0.42,-6.4 2.05,-12.77 3.38,-13.22 8.06,-26.98 3.21,-9.44 5.93,-19.09 c 7.96,-28.15 15.34,-53.97 20.99,-81.11 q 3.3,-15.87 4.53,-32.62 0.01,-0.1 0.11,-0.14 l 0.25,-0.09 q 0.11,-0.04 0.12,0.07 0.06,0.98 0.29,2.16 z M 350.02,966.12 c -9.24,-14.15 -10.21,-31.4 -10.24,-48.19 -0.07,-33.99 8.51,-69.02 22.57,-100.06 a 0.51,0.49 -76.6 0 1 0.45,-0.29 q 0.28,0 0.31,0.28 c 0.83,7.48 0.62,15.88 -0.25,23.21 -1.72,14.59 -3.74,28.99 -3.61,44.11 q 0.06,8 1.44,16.9 1.82,11.87 3.26,24.93 c 1.49,13.54 2.18,28.24 -1.97,40.04 a 1.57,1.55 2.7 0 1 -1.11,1 q -3.84,0.9 -7.13,0.61 -2.19,-0.19 -3.72,-2.54 z',\n },\n {\n id: 'knees-r',\n labelKey: 'knee',\n side: 'right',\n cx: 265.3,\n cy: 1023.1,\n d: 'M 258.39,1012.52 q -5.64,-13.48 -7.66,-29.52 -0.05,-0.4 0.28,-0.64 10.7,-7.7 22.82,-4.11 c 5.29,1.57 4.59,5.57 4.3,9.79 -0.9,12.75 -3.27,25.99 -10.59,36.26 a 1.05,1.05 0 0 1 -1.64,0.09 q -4.73,-5.21 -7.51,-11.87 z M 258.71,1030.63 c 3.61,6.97 7.98,15.68 6.95,23.65 a 0.48,0.48 0 0 1 -0.72,0.35 l -18.34,-11.02 q -0.38,-0.23 -0.55,-0.64 -1,-2.44 -1.32,-4.76 -3.61,-26.35 -4.29,-51.87 -0.06,-2.2 0.39,-0.04 c 3.24,15.52 10.35,29.77 17.88,44.33 z M 288.4,985.22 q 1.73,22.58 1.26,41.7 -0.04,1.47 -0.76,3.07 -4.6,10.16 -10.25,24.15 c -2.27,5.6 -3.1,11.54 -5.89,17 q -0.2,0.39 -0.5,0.07 -0.38,-0.42 -0.45,-1 c -1.47,-12.75 1.68,-26.74 4.89,-38.94 4.36,-16.65 9.53,-33.85 10.59,-51.47 q 0.01,-0.22 0.19,-0.33 0.05,-0.02 0.1,-0.02 0.14,0.02 0.16,0.16 0.44,2.76 0.66,5.61 z',\n },\n {\n id: 'knees-l',\n labelKey: 'knee',\n side: 'left',\n cx: 375.8,\n cy: 1024.0,\n d: 'M 367.17,978.19 c 7.47,-2.33 16.25,-0.86 22.63,4.13 q 0.45,0.35 0.38,0.92 -1.87,15.08 -7.33,28.55 -2.94,7.24 -7.89,12.74 a 0.87,0.87 0 0 1 -1.34,-0.05 c -8.34,-10.84 -10.82,-27.73 -10.91,-41.25 -0.01,-2.65 2.18,-4.32 4.46,-5.04 z M 369.06,1070.47 q -0.22,1.65 -1.01,0.18 c -2.79,-5.17 -3.42,-10.89 -5.57,-16.11 q -5.2,-12.65 -10.53,-24.91 c -0.38,-0.88 -0.8,-1.93 -0.81,-2.92 q -0.26,-23.13 1.85,-46.89 a 0.27,0.26 -77 0 1 0.36,-0.23 l 0.25,0.11 q 0.13,0.05 0.14,0.19 0.36,9.87 2.31,18.26 4.17,17.95 9.24,37.46 c 3.02,11.63 5.3,23.46 3.77,34.86 z M 378.49,1038.47 q 5.25,-11 11.25,-23 6.8,-13.59 10.56,-29.93 0.03,-0.15 0.18,-0.19 0.05,-0.01 0.1,0 0.1,0.01 0.09,0.11 -0.84,19 -2.62,37.31 -1.13,11.63 -2.64,19.1 -0.25,1.26 -1.49,1.99 -10.01,5.93 -17.84,10.76 a 0.53,0.53 0 0 1 -0.8,-0.37 c -0.79,-5.16 1.07,-11.29 3.21,-15.78 z',\n },\n {\n id: 'tibialis-r',\n labelKey: 'tibialisAnterior',\n side: 'right',\n cx: 258.2,\n cy: 1176.1,\n d: 'M 260.21,1135.29 c 4.48,29.68 7.59,58.82 9.36,87.72 0.53,8.66 1.47,17.39 2.79,25.97 q 1.84,11.96 7.34,33.23 0.5,1.94 1.04,7.01 0.48,4.54 -2.34,7.74 a 0.6,0.6 0 0 1 -0.99,-0.15 q -1.61,-3.47 -2.33,-7.07 -5.47,-27.17 -8.25,-45.03 -4.18,-26.84 -7.6,-47.71 -0.97,-5.95 -2.27,-12 -7.08,-33.02 -14.69,-65.86 -1.12,-4.84 -2.44,-9.69 -1.98,-7.22 -2.28,-9.76 -2.41,-20.6 1.44,-43.08 0.25,-1.46 0.73,-0.06 7.12,20.57 13.32,44.54 4.83,18.73 7.17,34.2 z',\n },\n {\n id: 'tibialis-l',\n labelKey: 'tibialisAnterior',\n side: 'left',\n cx: 382.2,\n cy: 1175.7,\n d: 'M 367.02,1257.45 q 3.27,-15.94 4.47,-35.75 2.4,-39.61 7.94,-77.98 2.44,-16.87 5.47,-30.17 6.3,-27.69 16.13,-56.67 0.69,-2.03 1.04,0.08 2.43,14.55 2.2,31.01 -0.15,10.91 -2.78,20.08 -1.29,4.53 -2.34,9.1 -7.34,31.94 -13.88,61.81 -2.12,9.66 -3.56,18.43 c -4.93,29.99 -9.41,60.77 -15.76,91.85 q -0.74,3.61 -2.23,7.21 a 0.86,0.86 0 0 1 -1.48,0.19 q -2.35,-3.11 -2.05,-7.14 0.36,-4.83 1.56,-9.43 3.01,-11.58 5.27,-22.62 z',\n },\n {\n id: 'calves-r',\n labelKey: 'gastrocnemius',\n side: 'right',\n cx: 265.2,\n cy: 1172.0,\n d: 'M 273.89,1099.95 c 3.37,-15.16 7.39,-30.47 12.61,-44.88 q 0.67,-1.85 1.28,0.01 4.41,13.38 7.29,29.13 3.29,18.03 6.8,44.66 2.68,20.36 2.76,35.74 0.04,6.36 -1.26,13.77 -3.67,20.9 -7.39,37.94 -6.52,29.95 -12.99,57.95 -0.31,1.31 -0.67,0.01 -3.32,-11.98 -5.27,-24.29 -5.82,-36.85 -4.93,-74.51 c 0.46,-19.33 0.09,-35.61 0.04,-57.98 q -0.03,-9.65 1.73,-17.55 z M 272.32,1289.43 q 0.14,1.3 -0.7,0.3 -1.96,-2.32 -3.31,-4.94 -4.85,-9.47 -8.79,-20.24 -9.58,-26.21 -15.83,-53.09 -1,-4.3 -2.77,-8.19 c -8,-17.6 -12.77,-36.6 -13.83,-55.89 q -1.45,-26.23 4.89,-54.26 0.41,-1.85 1,-0.05 1.2,3.7 2.35,7.92 c 6.05,22.14 11.41,47.6 16.75,71.19 q 2.42,10.71 3.46,19.48 2.54,21.38 5.09,39.58 c 2.14,15.29 4.57,31.52 9.27,46.7 q 1.76,5.67 2.42,11.49 z',\n },\n {\n id: 'calves-l',\n labelKey: 'gastrocnemius',\n side: 'left',\n cx: 376.8,\n cy: 1172.4,\n d: 'M 351.12,1061.47 q 0.86,-3.24 2.27,-6.95 a 0.37,0.37 0 0 1 0.67,-0.04 q 0.6,1.15 1.07,2.55 4.5,13.38 8.77,29.36 3.17,11.88 4.35,21.44 0.65,5.26 0.58,16.16 c -0.12,17.19 -0.49,33.53 -0.01,50.26 q 0.96,33.46 -3.97,69.04 -2.3,16.62 -6.18,31.23 -0.05,0.18 -0.19,0.29 a 0.25,0.25 0 0 1 -0.39,-0.14 c -7.63,-32.4 -14.66,-63.57 -20.38,-95.86 q -1.46,-8.28 -1.39,-15.2 0.13,-12.7 1.63,-25.36 c 2.86,-24.12 6.38,-51.37 13.17,-76.78 z M 400.56,1202.06 c -1.03,2.29 -2.11,4.68 -2.7,7.11 -5.58,23.36 -12.43,46.15 -21.19,67.15 q -3.13,7.49 -7.08,13.12 -0.19,0.27 -0.47,0.44 -0.68,0.4 -0.57,-0.38 0.79,-5.61 2.43,-11.29 5.47,-18.91 8.27,-39.41 3.36,-24.7 6.32,-48.64 1.04,-8.33 3.58,-19.59 5.82,-25.8 11.4,-49.84 3.49,-14.99 7.21,-27.24 0.18,-0.58 0.63,-1.01 0.33,-0.31 0.43,0.13 c 8.56,36.96 7.32,74.95 -8.26,109.45 z',\n },\n {\n id: 'ankles-r',\n labelKey: 'ankle',\n side: 'right',\n cx: 274.8,\n cy: 1350.4,\n d: 'M 279.42,1326.07 q -2.66,-6.02 -11.2,-17.08 -1.56,-2.02 -1.72,-4 c -0.22,-2.73 1.78,-5.75 4.12,-7.13 q 0.49,-0.29 0.97,0.02 8.39,5.34 14.89,11.86 1.95,1.97 2.11,4.51 0.86,13.41 -1.46,27.53 a 0.31,0.31 0 0 1 -0.45,0.22 q -0.14,-0.08 -0.27,-0.19 -0.12,-0.1 -0.18,-0.24 -3.39,-7.76 -6.81,-15.5 z M 284.58,1349.02 q 5.05,11.98 7,21.38 3.39,16.32 -0.69,32.76 a 0.43,0.43 0 0 1 -0.76,0.16 c -10.12,-13.11 -21.17,-25.72 -34.11,-35.39 a 1.63,1.62 16.1 0 1 -0.65,-1.17 q -0.75,-8.89 2.46,-14.38 0.98,-1.67 1.18,-3.55 1.38,-12.95 2.87,-26.6 a 0.7,0.7 0 0 1 0.91,-0.59 c 11.21,3.6 17.28,16.67 21.79,27.38 z',\n },\n {\n id: 'ankles-l',\n labelKey: 'ankle',\n side: 'left',\n cx: 365.4,\n cy: 1350.4,\n d: 'M 353.36,1339.65 q -1.77,-13.46 -1.06,-24.75 0.06,-0.96 0.22,-1.92 c 0.7,-4.2 12.74,-12.42 16.33,-14.86 q 1.07,-0.72 2.08,0.08 c 3.24,2.56 4.92,6.49 2.19,10.15 -5.11,6.84 -9.99,13.59 -13.3,21.5 q -2.27,5.41 -5.06,11.31 -0.76,1.62 -1.15,-0.12 -0.15,-0.68 -0.25,-1.39 z M 379.01,1322.5 c 1.17,9.01 1.97,18.19 3.1,26.72 0.13,0.98 0.26,1.92 0.78,2.79 q 3.21,5.33 2.84,13.44 -0.1,2.05 -1.78,3.29 c -12.07,8.93 -22.71,21.31 -32.45,33.67 q -0.48,0.61 -1.15,0.95 a 0.24,0.24 0 0 1 -0.34,-0.16 q -5.23,-21.38 1.99,-42.64 2.82,-8.31 6.7,-16.77 c 4.2,-9.17 9.45,-18.49 19,-22.07 a 0.98,0.97 -14.1 0 1 1.31,0.78 z',\n },\n {\n id: 'feet-r',\n labelKey: 'foot',\n side: 'right',\n cx: 260.5,\n cy: 1406.1,\n d: 'M 268.26,1427.94 c -13.55,0.97 -28,-0.1 -40.94,-5.21 a 0.76,0.76 0 0 1 -0.35,-1.14 c 8.83,-12.76 18.97,-25.24 27.65,-37.39 q 0.72,-1 1.89,-0.61 11.12,3.76 18.81,14.19 c 1.66,2.25 0.2,9.63 -0.4,12.23 q -2.17,9.25 -5.67,17.23 a 1.19,1.17 -79.8 0 1 -0.99,0.7 z M 279.15,1427.43 c -2.43,-4.43 -2.1,-22.42 2.82,-25.6 q 0.48,-0.31 0.93,0.02 c 4.5,3.21 11.09,10.03 10.33,15.88 q -0.43,3.39 -0.54,7.02 a 3.3,3.3 0 0 1 -3.32,3.21 l -9.41,-0.05 q -0.55,0 -0.81,-0.48 z',\n },\n {\n id: 'feet-l',\n labelKey: 'foot',\n side: 'left',\n cx: 380.5,\n cy: 1406.2,\n d: 'M 382.04,1384.42 q 1.51,-0.66 3.03,-0.87 0.57,-0.07 0.91,0.39 l 27.73,37.1 a 1.23,1.22 61 0 1 -0.53,1.87 c -12.37,4.87 -27.24,6.04 -40.29,5.05 a 1.5,1.49 81 0 1 -1.27,-0.93 c -3.14,-7.8 -6.11,-16.5 -6.82,-25.44 q -0.2,-2.47 0.96,-4.02 6.68,-8.97 16.28,-13.15 z M 347.64,1416.45 c -0.34,-4.76 6.41,-11.73 10.12,-14.46 a 1.41,1.4 -37.2 0 1 1.94,0.26 c 2.44,3.09 2.86,7.16 3.19,10.93 q 0.6,6.77 -0.53,13.21 a 1.96,1.95 5.2 0 1 -1.95,1.62 l -9.39,-0.1 a 2.74,2.74 0 0 1 -2.7,-2.53 q -0.35,-4.33 -0.68,-8.93 z',\n },\n ],\n};\n\nexport const MUSCLE_FEMALE_BACK: MuscleFigureArt = {\n viewBox: '756 0 774 1448',\n silhouette:\n 'M 1096.04,0 h 7.79 c 22.49,2.45 53.18,10.99 60.21,36.27 q 0.46,1.66 2,2.05 c 64.38,16.44 60.01,99.49 44.24,147.61 q -2.62,7.99 -6.55,14.81 -0.51,0.89 -1.22,1.68 -0.97,1.07 -1.52,1.32 -3.63,1.58 -6.55,2.8 -14.77,6.1 -29.14,11 -0.74,0.26 -0.59,1.19 -0.52,-0.76 -1.47,-0.46 -4.4,1.42 -10.86,2.97 -3.97,1 -6.62,1.12 -5.28,0.24 -12.66,-0.36 -5.76,-0.52 -11.15,-2.21 -0.54,-0.17 -0.85,-0.03 -0.45,0.2 -0.58,0.77 0.26,-1.02 -0.52,-1.24 -9.76,-2.78 -19.21,-7.04 a 0.46,0.46 0 0 0 -0.65,0.43 l 0.39,12.23 q 0.49,15.83 -0.42,30.63 l -0.91,9.16 a 2.42,2.42 0 0 1 -1.99,2.15 q -11.5,2.06 -22.86,2.63 -5.84,0.05 -10.69,-1.12 -4.96,-1.19 -7,-1.31 -3.7,-0.23 -7.48,-0.12 -17.27,0.5 -33.97,1.33 -7.72,0.38 -15.15,-0.74 a 2.13,2.12 0.2 0 1 -1.78,-1.78 c -1,-6.77 1.75,-15.8 4.22,-22.15 q 5.88,-15.15 12.89,-32.55 c 7.85,-19.49 14.27,-41.02 13.35,-61.3 q -1.03,-22.68 -5.37,-57.36 -0.67,-5.33 -0.4,-10.31 0.98,-18.63 7.84,-37.04 5.87,-15.78 15.35,-24.54 c 7.92,-7.32 19.98,-14.55 31.09,-17.67 q 9.1,-2.55 18.79,-2.82 z m 40.66,79.56 c 15.08,3.29 29.45,-7.8 30.48,-23.26 q 0.15,-2.22 -0.63,-0.14 -6.61,17.62 -24.72,17.97 c -5.78,0.12 -11.81,-2.36 -16.39,-6.42 -1.53,-1.35 -3.74,-3.16 -5.84,-2.98 a 0.62,0.62 0 0 0 -0.5,0.9 q 5.86,11.37 17.6,13.93 z M 1167.18,56.3 c -1.03,15.46 -15.4,26.55 -30.48,23.26 Q 1124.96,77 1119.1,65.63 a 0.62,0.62 0 0 1 0.5,-0.9 c 2.1,-0.18 4.31,1.63 5.84,2.98 4.58,4.06 10.61,6.54 16.39,6.42 q 18.11,-0.35 24.72,-17.97 0.78,-2.08 0.63,0.14 z',\n outline:\n 'm 1194.44,206.54 c -3.1933,7.99333 -7.4233,15.23333 -12.69,21.72 -1.88,2.31333 -3.8467,4.26333 -5.9,5.85 -0.3221,0.24773 -0.4893,0.65057 -0.44,1.06 3.86,33.54 38.8,35.87 65.04,39.05 5.0133,0.60667 10.6067,1.62667 16.78,3.06 6.38,1.47333 11.8067,3.52333 16.28,6.15 14.57,8.53 23.01,23.61 26.16,40.09 3.7067,19.35333 5.04,39.21333 4,59.58 -0.05,0.96 0.16,2.23 0.57,3.12 9.9467,21.58667 15.71,44.73333 17.29,69.44 0.68,10.58667 0.91,19.95333 0.69,28.1 -0.02,0.86667 0.24,1.61 0.78,2.23 20.32,23.24 35.91,47.88 43.7,77 2.9133,10.89333 5.7433,20.80667 8.49,29.74 0.66,2.16667 1.44,4.27667 2.34,6.33 1.21,2.76 2.01,5.57 3.3,8.27 4.7267,9.88 8.63,16.84333 11.71,20.89 4.8733,6.39333 9.5,12.74333 13.88,19.05 0.6933,1 1.65,1.84 2.87,2.52 0.3,0.16667 0.6233,0.22667 0.97,0.18 4.82,-0.67 9.68,2.86 13.34,5.7 5.3867,4.2 10.4167,8.55 15.09,13.05 0.97,0.94 1.8,2.19 2.81,3.29 0.3867,0.42 0.87,0.71333 1.45,0.88 5.7467,1.69333 10.6367,3.94333 14.67,6.75 2.88,2.01333 4.6733,4.89667 5.38,8.65 v 5.01 c -0.52,1.79333 -1.6,2.74667 -3.24,2.86 -8.83,0.63 -17.91,-4.96 -24.24,-10.42 -0.64,-0.55333 -1.33,-0.62333 -2.07,-0.21 -0.28,0.15333 -0.45,0.41667 -0.51,0.79 -0.057,0.35981 0.054,0.72465 0.3,0.99 5.3933,5.72667 9.5833,12.27333 12.57,19.64 4.7133,11.63333 7.6733,23.37333 8.88,35.22 0.3333,3.31333 0.1933,6.36 -0.42,9.14 -0.83,3.72 -5.18,3.88 -8.31,3.66 -0.52,-0.0333 -0.6533,0.18 -0.4,0.64 1.5,2.73 4.15,9.73 2.03,12.51 -1,1.30667 -2.52,2.16 -4.56,2.56 -4.54,0.9 -5.48,-2.28 -7.85,-5.13 -0.3467,-0.42 -0.6133,-0.37 -0.8,0.15 -1.2067,3.36667 -3.7533,5.02 -7.64,4.96 -5.04,-0.09 -8.71,-10.14 -10.3,-14.11 -0.1733,-0.44667 -0.48,-0.77667 -0.92,-0.99 -0.4333,-0.20667 -0.6367,-0.07 -0.61,0.41 0.05,0.96 0.3,2.27 -0.22,3.1 -2.45,4 -7.21,0.07 -9.25,-2.45 -6.33,-7.84 -10.51,-16.48 -14.43,-25.97 -7.25,-17.58 -11.84,-37.32 -16.85,-56.41 -1.8,-6.87333 -3.2867,-11.19667 -4.46,-12.97 -6.3,-9.52 -14.4333,-20.36333 -24.4,-32.53 -15.11,-18.44 -29.91,-36.58 -44.05,-56.48 -8.8867,-12.51333 -15.8167,-24.99667 -20.79,-37.45 -2.9,-7.26667 -4.54,-15.05333 -4.92,-23.36 -0.09,-2.06 -0.75,-5.35 -1.64,-6.88 -5.3667,-9.18 -10.0867,-19.62333 -14.16,-31.33 -5.5933,-16.06667 -9.42,-30.98 -11.48,-44.74 -0.5467,-3.64 -0.91,-7.31333 -1.09,-11.02 -0.02,-0.32082 -0.3917,-0.48585 -0.63,-0.28 -0.1467,0.12 -0.2433,0.27667 -0.29,0.47 -1.2067,4.74 -3,9.11667 -5.38,13.13 -2.37,4.01 -6.03,7.14 -9.19,10.5 -0.7933,0.84667 -1.1967,1.84 -1.21,2.98 -0.38,33.86 -1.11,67.63667 -2.19,101.33 -0.1067,3.46667 0.3633,6.71667 1.41,9.75 1.67,4.83 5.75,8.89 8.75,13.05 19.15,26.59 30.52,57.65 35.84,89.85 6.62,39.99 5.98,81.18 1.39,121.55 -3.84,33.71333 -10.1567,68.23667 -18.95,103.57 -6.83,27.43 -13.74,52.3 -21.61,77.01 -1.6733,5.24 -3.05,11.17 -4.13,17.79 -2.6533,16.18 -4.6633,31.1133 -6.03,44.8 -0.51,5.14 -0.61,10.65 0.59,15.86 5.77,24.99 11.41,49.88 14.89,74.82 3.08,22 3.85,44.08 -1.95,65.56 -1.4733,5.4533 -3.1167,10.8133 -4.93,16.08 -7.4333,21.5733 -13.27,40.8667 -17.51,57.88 -3.1933,12.82 -6.2867,27.8233 -9.28,45.01 -0.8533,4.9 -1.2833,9.47 -1.29,13.71 0,5.1267 -0.1567,10.5767 -0.47,16.35 -0.11,2.14 0.27,4.76 1.1,6.78 2.72,6.61 5.78,14.73 4.14,21.82 -0.7333,3.1933 -1.0333,5.4033 -0.9,6.63 0.5,4.5133 1.6433,8.1033 3.43,10.77 4.73,7.07 9.6,13.97 12.12,21.89 0.82,2.56 1.88,4.7267 3.18,6.5 3.39,4.64 7.22,8.38 11.93,11.17 4.9267,2.9133 6.7967,7.6333 5.61,14.16 -0.18,0.9867 -0.6533,1.7833 -1.42,2.39 -0.8133,0.6467 -1.7933,1.0233 -2.94,1.13 -7.8467,0.7333 -15.72,1.2367 -23.62,1.51 h -29.64 c -6.9533,-0.1733 -13.86,-0.7167 -20.72,-1.63 -11.07,-1.47 -6.82,-32.77 -5.45,-39.86 1.26,-6.5067 2.58,-13.45 3.96,-20.83 1.32,-7.07 0.48,-13.46 0.26,-20.34 -0.1,-3.0067 0.2633,-6.4067 1.09,-10.2 0.26,-1.1733 0.3833,-2.57 0.37,-4.19 -0.1667,-20.2733 -0.7433,-42.1 -1.73,-65.48 -0.36,-8.34 -1.49,-16.99 -2.01,-25.27 -0.24,-3.7667 -0.8367,-7.5333 -1.79,-11.3 -2.8933,-11.5067 -5.1867,-21.89 -6.88,-31.15 -5.23,-28.74 -6.77,-58.03 -2.4,-86.44 2.09,-13.61 3.96,-27.35 6.27,-41.17 1.75,-10.47 3.26,-21.86 2.95,-33.05 -0.14,-4.9733 -0.3267,-10.2533 -0.56,-15.84 -0.4933,-11.92 -0.62,-23.23 -0.38,-33.93 0.087,-3.87333 -0.1633,-7.57667 -0.75,-11.11 -1,-6.06 -1.7367,-11.46667 -2.21,-16.22 -3.42,-34.68 -6.0767,-69.28 -7.97,-103.8 0,-0.0533 -0.38,-6.34667 -1.14,-18.88 -0.4333,-7.26 -0.7467,-14.53 -0.94,-21.81 -0.63,-23.97 -1.5,-48.33 0.89,-71.9 0.4533,-4.42 1.46,-8.21 3.02,-11.37 0.36,-0.73333 0.1367,-1.04333 -0.67,-0.93 -5.8,0.84667 -11.6067,0.83667 -17.42,-0.03 -0.5299,-0.077 -0.9242,0.47626 -0.67,0.94 1.1333,2.14 1.9167,4.39667 2.35,6.77 1.12,6.10667 1.78,12.78 1.98,20.02 0.52,19.33333 0.3867,38.51 -0.4,57.53 -2.02,49.02667 -5.3733,97.3 -10.06,144.82 -0.52,5.35 -1.42,10.71 -2.3,15.99 -0.5267,3.13333 -0.71,6.57 -0.55,10.31 0.22,4.96 0.2333,11.2 0.04,18.72 -0.24,9.2533 -0.53,18.5133 -0.87,27.78 -0.2,5.5333 -0.1433,10.4367 0.17,14.71 0.97,13.22 3.44,26.19 5.52,39.19 0.95,5.97 1.46,11.9 2.57,17.8 0.8133,4.32 1.46,8.6767 1.94,13.07 1.96,18.0733 2.0133,35.9033 0.16,53.49 -1.8,17.0067 -5.0233,34.5367 -9.67,52.59 -2.95,11.44 -3.63,22.52 -4.25,34.04 -1.2133,22.8933 -1.9,46.4567 -2.06,70.69 -0.013,2.6333 0.2133,5.2833 0.68,7.95 0.7533,4.2333 0.8467,9.2767 0.28,15.13 -0.34,3.5667 -0.2167,7.1567 0.37,10.77 1.0467,6.4333 2.1533,12.37 3.32,17.81 2.22,10.4 3.1733,20.2067 2.86,29.42 -0.14,4 -1.31,13.61 -5.91,15.24 -1.0133,0.3533 -2.0233,0.5833 -3.03,0.69 -6.26,0.6667 -12.55,1.0867 -18.87,1.26 H 1067 c -7.78,-0.2333 -15.53,-0.7367 -23.25,-1.51 -1.86,-0.19 -3.74,-1.13 -4.17,-3.14 -1.18,-5.57 0.09,-11.6 5.24,-14.4 4.46,-2.4267 8.6867,-6.4067 12.68,-11.94 1.1067,-1.54 1.9233,-3.2267 2.45,-5.06 1.3933,-4.8133 3.7333,-9.6767 7.02,-14.59 4.27,-6.37 10.95,-15.11 8.31,-23.7 -2.33,-7.59 0.58,-16.42 3.66,-23.53 0.8467,-1.9533 1.2233,-4.17 1.13,-6.65 -0.2467,-6.8467 -0.4367,-13.7033 -0.57,-20.57 -0.033,-1.8667 -0.22,-3.81 -0.56,-5.83 -0.53,-3.2 -0.78,-6.73 -1.93,-9.76 -0.57,-1.5 -0.46,-3.15 -0.75,-4.77 -4.4733,-25.64 -10.98,-51.18 -19.52,-76.62 -3.36,-10.0067 -6.23,-18.8433 -8.61,-26.51 -7.77,-24.97 -6.7,-50.73 -2.58,-76.67 3.0467,-19.1533 6.7333,-37.8133 11.06,-55.98 1.1133,-4.6733 2.1367,-9.5867 3.07,-14.74 0.7,-3.8333 0.7667,-8.9667 0.2,-15.4 -1.2667,-14.4467 -3.38,-29.87333 -6.34,-46.28 -1,-5.51333 -2.38,-11.08667 -4.14,-16.72 -8.6467,-27.59333 -16.36,-55.65333 -23.14,-84.18 -8.5133,-35.84 -14.49,-70.90333 -17.93,-105.19 -0.4067,-4.04 -0.95,-11.70667 -1.63,-23 -1.22,-20.12 -1.02,-40.2 0.6,-60.24 3.52,-43.7 15.84,-88.99 43.59,-123.06 4.52,-5.55 6.08,-10.55 5.88,-17.54 -1.0333,-36.71333 -1.7333,-70.39333 -2.1,-101.04 -0.013,-1.10667 -0.4167,-2.11333 -1.21,-3.02 -2.98,-3.41 -6.55,-6.22 -9.01,-10.18 -2.5267,-4.07333 -4.3433,-8.49 -5.45,-13.25 -0.027,-0.10667 -0.07,-0.20667 -0.13,-0.3 -0.073,-0.10667 -0.1467,-0.21 -0.22,-0.31 -0.38,-0.51333 -0.5867,-0.45333 -0.62,0.18 -0.1867,3.36 -0.5267,6.65667 -1.02,9.89 -3.18,20.91333 -9.0933,41.41667 -17.74,61.51 -2.1133,4.92 -4.57,9.73 -7.37,14.43 -1.38,2.31 -2.25,5.72 -2.35,8.5 -0.38,9.91333 -3.2067,20.34667 -8.48,31.3 -7.4,15.34 -17.09,29.69 -27.13,42.67 -11.44,14.81333 -24.26,30.94 -38.46,48.38 -8.59333,10.55333 -14.80667,18.88 -18.64,24.98 -2.16,3.44 -3.79333,7.21667 -4.9,11.33 -2.61333,9.71333 -5.20667,19.74667 -7.78,30.1 -1.21,4.83 -2.87,9.61 -4.37,14.42 -3.3,10.52667 -7.59333,20.83 -12.88,30.91 -1.67,3.2 -10.9,19.01 -16.08,13.75 -1.3,-1.32 -0.2,-2.61 -0.65,-3.85 -0.0533,-0.14 -0.15333,-0.22667 -0.3,-0.26 -0.33012,-0.0685 -0.66217,0.10802 -0.79,0.42 -1.68,3.98 -3.62333,7.83333 -5.83,11.56 -0.94,1.58 -2.4,2.82 -4.28,3.05 -3.94,0.48 -6.68,-1.13 -8.22,-4.83 -0.16296,-0.39045 -0.6952,-0.44195 -0.93,-0.09 -1.99,2.98 -3.89,6.12 -8.16,5 -2.69,-0.7 -5.36,-2.74 -4.91,-5.86 0.48,-3.3 1.34667,-6.37 2.6,-9.21 0.18054,-0.42201 -0.17743,-0.87656 -0.63,-0.8 -5.15,0.91 -8.19,-0.82 -8.39,-6.31 -0.14667,-4.06667 0.12333,-8.13667 0.81,-12.21 1.31333,-7.76667 3.32,-15.66 6.02,-23.68 3.48667,-10.37333 8.34,-18.76333 14.56,-25.17 0.38644,-0.4062 0.40798,-1.03511 0.05,-1.46 l -0.17,-0.21 c -0.54667,-0.65333 -1.14333,-0.70333 -1.79,-0.15 -4.04667,3.45333 -8.69333,6.37333 -13.94,8.76 -3.02,1.37333 -6.48333,1.99333 -10.39,1.86 -3.46,-0.12 -3.45,-3.61 -3.44,-6.16 0.02,-4.34667 1.84333,-7.82667 5.47,-10.44 3.33333,-2.40667 6.65333,-4.09333 9.96,-5.06 1.32,-0.38 2.59,-0.92333 3.81,-1.63 1.28,-0.73333 2.43,-1.57 3.45,-2.51 6.56667,-6.04 12.46,-11.28 17.68,-15.72 3.81333,-3.24 8.22333,-4.90333 13.23,-4.99 0.32334,-0.007 0.63475,-0.1269 0.88,-0.34 1.22,-1.1 2.23,-2.23 3.03,-3.39 2.92667,-4.25333 5.90333,-8.36333 8.93,-12.33 11.3,-14.82 19.21,-31.53 23.99,-49.16 2.43333,-8.99333 4.79667,-17.43667 7.09,-25.33 5.16667,-17.75333 13.26,-34.42 24.28,-50 5.38667,-7.60667 11.22333,-15.08 17.51,-22.42 0.78,-0.91 1.44,-1.79 1.43,-3.05 -0.04,-7.18667 0.15333,-15.32333 0.58,-24.41 1.2,-25.27333 6.98,-49.66 17.34,-73.16 0.47,-1.06 0.82,-2.02 0.74,-3.23 -1.05333,-16.56667 -0.03,-34.73667 3.07,-54.51 2.8,-17.8 10.26,-34.46 25.25,-43.96 4.9733,-3.16 11.2333,-5.6 18.78,-7.32 9.1267,-2.08667 18.7767,-3.55 28.95,-4.39 4.42,-0.36667 10.0367,-1.44667 16.85,-3.24 10.1122,-2.54586 26.2145,-13.0245 27.26,-14.15 4.52,-6.03333 7.2267,-12.83 8.12,-20.39 0.031,-0.22254 -0.061,-0.44444 -0.24,-0.58 -3.2333,-2.39333 -6.22,-5.54333 -8.96,-9.45 l -0.39,-12.23 c -0.01,-0.33918 0.3411,-0.57024 0.65,-0.43 15.8831,7.16 15.9397,7.22024 19.73,8.28 4.4042,0.92173 8.3867,0.98 12.58,1.47 4.92,0.4 9.14,0.52 12.66,0.36 1.7667,-0.08 3.9733,-0.45333 6.62,-1.12 l 12.92,-3.7 c 9.58,-3.26667 19.2933,-6.93333 29.14,-11 z',\n muscles: [\n {\n id: 'neck-r',\n labelKey: 'neck',\n side: 'right',\n cx: 542.0,\n cy: 109.8,\n d: 'M 1133.1,222 l -1.89,61.8 q -0.02,0.66 -0.62,0.4 -22.28,-9.35 -45.91,-9.91 a 0.77,0.77 0 0 1 -0.6,-1.22 q 1.38,-1.89 3.31,-2.48 c 6.78,-2.07 12.31,-3.9 18.36,-8.33 q 5.08,-3.71 7.66,-8.78 c 5.15,-10.11 6.3,-21.91 7.11,-32.95 q 0.13,-0.57 0.58,-0.77 0.31,-0.14 0.85,0.03 5.39,1.69 11.15,2.21 z',\n },\n {\n id: 'neck-l',\n labelKey: 'neck',\n side: 'left',\n cx: 1176.9,\n cy: 251.1,\n d: 'M 1164.71,218.73 c 1.42,12.25 1.86,24.62 7.81,35.59 3.46,6.38 11.4,11.41 17.38,13.62 q 4.31,1.6 8.68,2.96 1.85,0.58 2.75,2.35 a 0.65,0.65 0 0 1 -0.56,0.94 q -23.87,0.79 -45.98,10.03 a 0.34,0.34 0 0 1 -0.47,-0.3 l -1.94,-62.68 q 6.46,-1.55 10.86,-2.97 0.95,-0.3 1.47,0.46 z',\n },\n {\n id: 'trapezius-r',\n labelKey: 'trapezius',\n side: 'right',\n cx: 1086.2,\n cy: 343.0,\n d: 'M 1135.46,406.92 c -18.92,-8.6 -32.13,-23.67 -41.02,-42.55 q -5.92,-12.58 -12.01,-29.57 c -8.17,-22.8 -18.79,-46.58 -45.58,-51.11 q -2.73,-0.46 -0.13,-1.41 4.88,-1.81 11.29,-2.14 31.93,-1.68 62.2,8.18 c 8.7,2.84 17.39,6.76 24.41,12.87 q 2.26,1.96 2.37,4.56 c 1.34,31.32 1.02,63.51 1.17,95.68 q 0.01,2.48 -0.9,4.77 -0.52,1.31 -1.8,0.72 z',\n },\n {\n id: 'trapezius-l',\n labelKey: 'trapezius',\n side: 'left',\n cx: 1199.1,\n cy: 342.9,\n d: 'M 1207.43,323.66 c -6.47,16.09 -12.05,33.31 -20.26,48.12 q -13.47,24.27 -37.07,35.13 a 1.54,1.53 -20.3 0 1 -2.12,-0.97 q -0.48,-1.66 -0.5,-3.37 -0.3,-43.8 0.71,-95.35 c 0.05,-2.69 0.7,-4.25 2.8,-6.09 q 6.04,-5.32 13.64,-8.64 c 21.78,-9.51 47.77,-13.62 71.23,-12.54 4.41,0.2 9.17,0.92 13.49,2.46 q 1.76,0.62 -0.05,1.06 c -2.97,0.73 -5.89,1.25 -8.8,2.31 -17.14,6.22 -26.43,21.36 -33.07,37.88 z',\n },\n {\n id: 'deltoids-r',\n labelKey: 'deltoid',\n side: 'right',\n cx: 1024.1,\n cy: 327.8,\n d: 'M 1015.26,291.32 c 13.82,-8.28 31.54,1.05 42.43,10.31 a 0.79,0.78 46.2 0 1 -0.02,1.22 c -24.49,19.25 -48.03,41.91 -64.52,68.41 q -0.81,1.29 -0.91,-0.22 c -0.55,-8.02 -1.66,-16.16 -1.47,-24.04 q 0.34,-14.94 4.17,-28.72 4.91,-17.72 20.32,-26.96 z',\n },\n {\n id: 'deltoids-l',\n labelKey: 'deltoid',\n side: 'left',\n cx: 1262.2,\n cy: 329.7,\n d: 'M 1269.98,290.8 c 13.79,8.38 20.48,19.55 22.26,34.89 1.11,9.5 1.29,18.77 0.46,28.54 q -0.73,8.56 -1.29,17.08 -0.08,1.29 -0.8,0.22 c -16.86,-25.21 -37.38,-47.58 -59.38,-68.88 q -0.46,-0.45 0,-0.88 c 9.46,-8.91 18.65,-15.05 32.34,-13.43 2.34,0.28 4.42,1.25 6.41,2.46 z',\n },\n {\n id: 'upper-back-r',\n labelKey: 'upperBack',\n side: 'right',\n cx: 1085.3,\n cy: 427.9,\n d: 'M 1076.09,338.19 q 6.08,14 8.04,30.55 0.06,0.58 -0.52,0.57 -11.77,-0.05 -23.32,-2.12 -15.59,-2.79 -31.04,-5.99 a 1.37,1.36 12.9 0 1 -1.05,-1.66 c 4.67,-18.66 16.53,-35.54 33.45,-45.02 a 0.84,0.83 59.5 0 1 1.11,0.29 c 4.8,7.66 9.75,15.13 13.33,23.38 z M 1136.59,472.49 c -4.61,16.03 -15.02,30.53 -26.92,42.6 q -13.41,13.6 -29.37,25.62 -0.65,0.5 -0.73,-0.32 -5.92,-63.46 -22.92,-123.09 -4.96,-17.4 -9.99,-34.68 a 0.7,0.7 0 0 1 0.74,-0.89 q 8.92,0.83 16.32,1.52 10.81,1.01 19.97,-4.41 0.54,-0.32 1,0.1 1.78,1.59 3.48,3.41 22.52,24.07 30.7,32.06 7.98,7.79 16.19,14.02 0.79,0.6 1.05,1.52 6.33,22.2 0.48,42.54 z',\n },\n {\n id: 'upper-back-l',\n labelKey: 'upperBack',\n side: 'left',\n cx: 1200.3,\n cy: 427.7,\n d: 'M 1208.41,340.35 c 3.56,-8.92 9.08,-17.44 14.24,-25.41 a 0.92,0.91 29.5 0 1 1.18,-0.32 c 16.77,8.66 28.69,26.73 33.4,44.65 q 0.44,1.67 -1.25,2 c -18.03,3.6 -36.04,7.81 -54.02,8.1 q -0.68,0.01 -0.6,-0.67 1.86,-15.33 7.05,-28.35 z M 1238.86,382.59 c -6.36,21.96 -12.97,44.37 -18.07,65.96 q -10.8,45.75 -14.79,91.85 a 0.46,0.46 0 0 1 -0.74,0.33 Q 1184.28,525.02 1169.34,508 c -8.23,-9.38 -15.46,-20.54 -19.54,-32.61 q -6.78,-20.06 -1.17,-43.01 c 0.49,-1.99 0.83,-3.24 2.53,-4.57 17.75,-13.89 33.26,-32.01 49.33,-48.67 q 0.64,-0.67 1.43,-0.19 9.01,5.38 20.51,4.24 7.75,-0.76 15.78,-1.39 a 0.62,0.62 0 0 1 0.65,0.79 z',\n },\n {\n id: 'lower-back-r',\n labelKey: 'lowerBack',\n side: 'right',\n cx: 1097.5,\n cy: 561.9,\n d: 'M 1068.62,544.21 c 7.96,11.18 10.18,25.23 10.98,38.79 a 1.16,1.16 0 0 1 -0.56,1.06 l -18.13,10.62 a 0.4,0.39 -13.5 0 1 -0.6,-0.36 q 1.04,-16.62 2.69,-32.09 0.79,-7.45 2.8,-14.26 0.6,-2.03 1.74,-3.74 a 0.66,0.65 -45.9 0 1 1.08,-0.02 z M 1133.23,596.5 c -0.34,6.54 -1.25,13 -1.82,19.57 q -0.07,0.85 -0.6,0.17 -3.62,-4.73 -6.59,-7.98 -9.72,-10.63 -18.63,-20.4 -12.89,-14.11 -23.33,-31.15 a 0.57,0.57 0 0 1 0.2,-0.78 q 7.87,-4.59 14.81,-11.15 c 12.33,-11.64 23.63,-24.56 35.33,-36.99 q 0.87,-0.93 0.88,0.34 c 0.19,29.32 1.27,58.9 -0.25,88.37 z',\n },\n {\n id: 'lower-back-l',\n labelKey: 'lowerBack',\n side: 'left',\n cx: 1188.3,\n cy: 561.9,\n d: 'M 1199.62,562.36 c -10.91,16.62 -23.7,30.13 -37.46,44.84 q -3.74,4 -7.34,8.9 -0.68,0.93 -0.82,-0.22 c -1.8,-15.45 -2.6,-31.26 -2.53,-47.01 q 0.14,-30.97 0.58,-60.87 0.02,-1.16 0.8,-0.31 13.63,14.85 25.73,27.71 7.18,7.63 15.56,14.48 4.25,3.47 8.77,5.95 0.51,0.27 0.23,0.78 -1.61,2.85 -3.52,5.75 z M 1205.91,583.12 c 0.67,-13.86 3,-27.66 11.11,-39.08 a 0.57,0.57 0 0 1 0.96,0.06 q 1.93,3.49 2.75,7.64 c 2.78,13.99 3.44,28.55 4.52,42.69 a 0.37,0.36 13.1 0 1 -0.55,0.34 l -18.27,-10.7 a 1.05,1.04 16.6 0 1 -0.52,-0.95 z',\n },\n {\n id: 'triceps-r',\n labelKey: 'triceps',\n side: 'right',\n cx: 1002.3,\n cy: 423.5,\n d: 'M 976.72,479.34 q -0.46,-17.73 -0.59,-32.11 c -0.22,-24.28 5.62,-47.43 19.17,-67.7 q 0.38,-0.55 0.24,0.1 -9.84,49.08 -17.78,99.12 a 0.83,0.82 -4 0 1 -0.58,0.66 l -0.25,0.08 q -0.21,0.06 -0.21,-0.15 z M 990.45,481.03 c -2.39,-3.13 -3.03,-8.64 -3.15,-12.61 q -0.81,-26.18 5.96,-50.71 a 0.37,0.37 0 0 1 0.61,-0.17 q 0.16,0.15 0.19,0.37 c 2.18,16.06 4.1,31.34 3.14,46.56 -0.33,5.2 -1.01,12.19 -4.17,16.53 a 1.61,1.61 0 0 1 -2.58,0.03 z M 1028.38,422.24 c 0.27,25.48 -7.52,49.09 -23.37,68.41 q -1.16,1.41 -0.93,-0.4 0.44,-3.53 0.41,-7.83 -0.06,-10.3 -1.3,-22.14 -2.2,-20.98 -3.39,-41.99 -0.61,-10.99 0.7,-23.78 c 1.65,-15.98 6.95,-30.6 19.9,-39.63 a 0.42,0.41 73.8 0 1 0.65,0.36 q -0.32,8.22 1.06,16.55 c 2.81,16.86 6.09,33.63 6.27,50.45 z',\n },\n {\n id: 'triceps-l',\n labelKey: 'triceps',\n side: 'left',\n cx: 1283.4,\n cy: 423.3,\n d: 'M 1281,491.32 c -15.93,-19.27 -23.98,-42.53 -23.89,-67.9 q 0.04,-11.8 1.5,-21.9 2.13,-14.76 4.78,-30.03 1.39,-8.03 1.05,-16.2 a 0.44,0.44 0 0 1 0.7,-0.38 c 15.59,11.17 19.78,29.71 20.57,48.58 q 0.43,10.46 -0.35,21.17 -1.37,18.51 -3.48,40.31 -1.27,13.12 -0.53,26.21 0.03,0.6 -0.35,0.14 z M 1290.47,379.83 c 11.24,17.52 17.33,36.08 18.47,57.41 0.75,14.09 0.07,27.95 0.05,41.97 a 0.28,0.28 0 0 1 -0.41,0.24 l -0.26,-0.14 q -0.65,-0.34 -0.76,-1.06 -7.8,-49.99 -17.59,-98.21 -0.29,-1.43 0.5,-0.21 z M 1291.39,418.15 q 0.03,-0.24 0.18,-0.46 0.48,-0.71 0.7,0.12 6.89,26.33 5.89,50.76 c -0.16,3.99 -0.69,8.84 -2.91,12.24 a 1.69,1.68 -51.8 0 1 -2.56,0.31 c -2.76,-2.6 -3.77,-9.43 -4.13,-13.42 -1.44,-16.19 0.36,-32.39 2.83,-49.55 z',\n },\n {\n id: 'forearm-r',\n labelKey: 'forearmFlexors',\n side: 'right',\n cx: 949.7,\n cy: 565.6,\n d: 'M 930.6,575.85 q 12.51,-34.52 28.14,-65.44 0.43,-0.86 0.47,0.1 c 0.49,12.97 -1.54,25.43 -3.91,38.74 -2.51,14.09 -8.58,26.84 -13.42,40.42 q -1.72,4.85 -6.72,12.65 -6.65,10.39 -13.96,19.24 -0.97,1.19 -0.94,-0.34 0.15,-6.74 1.54,-13.78 3.2,-16.15 8.8,-31.59 z M 941.59,538.06 c -10.38,28.73 -19.89,57.37 -27.03,86.93 q -2.23,9.27 -3.43,18.85 -0.08,0.65 -0.71,0.78 -2.96,0.63 -5.97,-0.23 c -6.64,-1.91 -6.12,-8.24 -4.18,-13.33 q 16.12,-42.22 33.46,-84.93 5.37,-13.2 12.03,-26.13 2.79,-5.42 6.2,-10.06 1.45,-1.95 0.5,0.29 -5.71,13.57 -10.87,27.83 z M 975.21,499.01 c 1.84,-4.34 5.3,-10.94 10.55,-11.69 3.15,-0.45 8.93,-1.45 11.43,0.58 q 3.23,2.63 1.33,6.34 -3.58,7.04 -8.39,12.41 -7.93,8.86 -17.96,19.2 a 0.33,0.32 -34.8 0 1 -0.53,-0.09 q -1.15,-2.76 -1.06,-6.04 0.31,-10.51 4.63,-20.71 z M 999.09,525.32 q -17.79,35.36 -41.48,67.79 c -7.52,10.28 -15.96,20.81 -26,28.74 a 0.38,0.38 0 0 1 -0.53,-0.06 q -0.12,-0.14 -0.06,-0.3 11.88,-29.53 23.3,-54.73 6.13,-13.51 13.08,-26.59 3.39,-6.37 7.64,-12.19 c 1.13,-1.54 2.35,-1.94 4.17,-1.93 q 4.02,0.02 8.07,0.22 c 3.63,0.18 9.88,-4.42 13.11,-6.8 0.2,-0.14 0.64,-0.23 0.88,-0.2 a 0.39,0.39 0 0 1 0.32,0.53 q -1.15,2.82 -2.5,5.52 z',\n },\n {\n id: 'forearm-l',\n labelKey: 'forearmFlexors',\n side: 'left',\n cx: 1335.5,\n cy: 566.0,\n d: 'M 1287.36,495.1 q -0.66,-1.22 -1,-2.61 c -0.91,-3.66 3.19,-5.9 6.21,-5.78 q 4.25,0.16 7.87,0.8 c 8.25,1.44 13.07,19.85 14.04,26.73 q 0.78,5.48 -0.26,11.26 a 0.58,0.57 -61.9 0 1 -0.98,0.3 q -8.13,-8.44 -16.02,-16.95 -5.71,-6.16 -9.86,-13.75 z M 1374.91,644.61 a 0.63,0.62 -88.1 0 1 -0.49,-0.53 q -1.21,-9.55 -3.48,-19.07 c -6.9,-28.95 -17.02,-59.28 -27.49,-88.05 q -4.81,-13.23 -10.53,-26.85 -0.87,-2.08 0.48,-0.27 2.91,3.89 5.26,8.23 6.11,11.31 10.9,22.92 19.34,46.92 36.37,92.34 1.24,3.29 0.04,6.8 c -1.45,4.24 -7.09,5.35 -11.06,4.48 z M 1326.82,510.35 c 12.89,26.28 24.62,53.47 32.98,80.83 q 4.59,15.02 5.5,30.08 0.09,1.54 -0.91,0.36 -9.8,-11.56 -17.28,-24.72 -2.96,-5.2 -5.36,-12.12 -2.76,-7.98 -6.01,-15.96 c -4.29,-10.55 -5.9,-21.36 -7.75,-32.59 q -2.18,-13.15 -1.71,-25.77 0.04,-1.12 0.54,-0.11 z M 1354.08,620.73 q 0.96,2.42 -1,0.71 -9.65,-8.41 -17.52,-18.38 -24.99,-31.7 -45.4,-70.39 -3.25,-6.15 -6.17,-12.68 -0.09,-0.2 -0.03,-0.4 a 0.51,0.51 0 0 1 0.78,-0.29 c 4.23,2.88 9.9,7.54 15.41,6.95 q 3.07,-0.34 6.17,-0.24 c 1.9,0.05 3.28,0.57 4.42,2.2 7.5,10.74 13.36,23.21 18.79,35.06 q 12.91,28.18 24.55,57.46 z',\n },\n {\n id: 'hands-r',\n labelKey: 'hand',\n side: 'right',\n cx: 865.4,\n cy: 705.3,\n d: 'M 848.29,759.36 c -5.06,1.08 -7.66,-1.55 -5.81,-6.56 6.01,-16.27 11.17,-30.37 18.43,-44.8 q 1.12,-2.22 3.5,-1.5 l 0.45,0.14 a 3.88,3.87 16.7 0 1 2.59,4.81 c -4.79,16.16 -11.42,31.25 -18.02,46.96 a 1.59,1.57 -84.6 0 1 -1.14,0.95 z M 847.54,670.63 q 10.11,-7.1 20.43,-14.71 c 1.82,-1.34 3.93,-1.24 5.61,0.25 q 1.28,1.14 0.18,2.44 -14.63,17.34 -36.12,26.57 -2.85,1.23 -6.59,0.27 -0.66,-0.17 -1.22,-0.56 -2.78,-1.93 0.1,-3.71 c 5.74,-3.54 11.89,-6.53 17.61,-10.55 z M 857.95,703.24 c -4.4,13.3 -9.63,25.8 -16.79,37.33 q -1.72,2.78 -4.23,4.64 a 1.09,1.09 0 0 1 -1.74,-0.77 c -1.48,-16.04 8.92,-33.06 16.88,-46.35 q 0.57,-0.95 1.66,-0.8 c 2.95,0.39 5.23,2.88 4.22,5.95 z M 875.79,722.55 c -4.07,11.58 -8.41,22.82 -15.01,33 q -1.32,2.03 -3.6,3.48 -0.5,0.32 -0.97,-0.05 c -2.61,-2.08 -1.53,-6.69 -0.45,-9.36 q 5.27,-13.01 10.45,-25.43 1.81,-4.36 4.29,-8.03 0.62,-0.92 1.74,-0.88 c 4.7,0.15 4.82,3.66 3.55,7.27 z M 887.56,727.64 q -3.99,9.72 -9.96,19.13 -0.8,1.27 -2.1,1.97 a 0.74,0.74 0 0 1 -1.08,-0.76 q 1.91,-12.47 8.14,-23.5 2.02,-3.58 4.82,-5.9 a 0.94,0.94 0 0 1 1.47,0.36 c 1.15,2.7 -0.24,6.15 -1.29,8.7 z M 902.05,654.63 c 1.72,20.81 -0.74,43.2 -13.83,59.63 -1.5,1.87 -3.8,1.35 -5.78,0.55 q -7.06,-2.82 -10.22,-9.71 c -0.79,-1.73 -2.34,-3.24 -3.92,-4.25 q -5.99,-3.87 -10.35,-8.32 a 2.19,2.18 28.4 0 1 -0.59,-1.97 q 1.69,-8.62 7.46,-16.29 7.41,-9.85 18.48,-23.61 0.37,-0.46 0.96,-0.45 8.59,0.19 16.75,3.06 a 1.58,1.57 -82.5 0 1 1.04,1.36 z',\n },\n {\n id: 'hands-l',\n labelKey: 'hand',\n side: 'left',\n cx: 1420.2,\n cy: 705.5,\n d: 'M 1390.47,703.5 c -7.03,-15.23 -8.6,-32.38 -6.98,-49.44 a 0.84,0.84 0 0 1 0.55,-0.71 q 8.24,-2.9 16.94,-3.13 a 1.84,1.82 -19.6 0 1 1.51,0.71 q 7.66,9.84 15.58,19.76 7.56,9.46 9.92,18.85 c 0.44,1.72 -0.22,3.09 -1.51,4.23 q -4.73,4.18 -10.02,7.65 -2.13,1.39 -3.17,3.63 c -2.09,4.49 -5.23,7.65 -10.01,9.66 q -2.32,0.97 -4.45,0.69 -0.49,-0.06 -0.83,-0.42 -4.41,-4.73 -7.53,-11.48 z M 1434.6,668.37 q 8.2,5.82 20.84,12.66 3.02,1.63 0.3,3.74 -0.49,0.38 -1.08,0.56 -3.68,1.1 -6.72,-0.17 -21.61,-9.06 -36.36,-26.82 -0.91,-1.09 0.16,-2.02 c 2.56,-2.23 4.17,-1.59 6.69,0.28 q 8.2,6.11 16.17,11.77 z M 1440.18,733.51 c -5.02,-9.9 -10.12,-20.82 -13.01,-31.69 q -0.15,-0.58 0.1,-1.13 1.52,-3.24 4.84,-3.48 0.7,-0.05 1.06,0.55 c 8.34,13.8 18.29,30.28 17.05,46.84 a 0.97,0.97 0 0 1 -1.49,0.74 c -3.56,-2.27 -6.64,-8.06 -8.55,-11.83 z M 1431.61,747.81 q -8.05,-18.9 -13.4,-35.42 -0.77,-2.34 0.9,-4.93 0.26,-0.41 0.73,-0.64 3.35,-1.63 4.67,0.91 3.49,6.76 6.36,13.86 6.23,15.39 12.52,32.24 c 1.04,2.81 0.09,4.43 -2.57,5.47 q -3.87,1.52 -5.42,-2.33 -1.86,-4.6 -3.79,-9.16 z M 1409.03,720.33 c -1.15,-3.85 4.48,-7.35 6.5,-3.44 1.02,1.99 2.25,3.91 3.11,5.95 q 5.89,13.98 11.33,27.6 1.3,3.26 0.57,7.15 a 1.77,1.77 0 0 1 -2.76,1.12 c -3.33,-2.36 -6.22,-7.81 -8.08,-11.63 -4.21,-8.63 -7.92,-17.55 -10.67,-26.75 z M 1407.92,746.8 c -4.19,-6.47 -7.65,-13.37 -10.63,-20.61 q -1.4,-3.4 -0.83,-7.06 a 0.95,0.94 -66.3 0 1 1.52,-0.6 q 2.67,2.14 4.37,5.02 6.61,11.16 8.73,24.5 a 0.6,0.6 0 0 1 -0.81,0.65 q -1.51,-0.6 -2.35,-1.9 z',\n },\n {\n id: 'gluteal-r',\n labelKey: 'gluteusMaximus',\n side: 'right',\n cx: 1073.1,\n cy: 695.7,\n d: 'M 1031.34,630.56 q 8.17,-17.96 22.15,-29.52 0.57,-0.47 1.35,-0.78 c 0.63,-0.25 1.17,-0.54 1.88,-0.51 14.27,0.79 25.72,4.26 35.26,15.37 q 6.45,7.51 12.43,13.9 a 0.36,0.36 0 0 1 -0.21,0.6 c -34.24,5.14 -63.6,20.7 -83.41,49.12 q -0.77,1.1 -0.69,-0.24 1.54,-26.6 11.24,-47.94 z M 1092.12,758.09 q -11.32,3.91 -20.99,7.71 c -12.16,4.78 -21.24,13.16 -25.53,25.74 a 0.48,0.48 0 0 1 -0.84,0.14 c -13.74,-17.9 -25.37,-38.01 -28.48,-60.45 -4.82,-34.78 16.06,-62.1 45.13,-78.08 q 32.39,-17.79 71.37,-20.24 0.77,-0.05 0.81,0.72 0.34,5.98 0.51,12.21 0.73,27.38 0.54,74.62 0,0.87 -0.42,1.68 -13.36,26.01 -42.1,35.95 z',\n },\n {\n id: 'gluteal-l',\n labelKey: 'gluteusMaximus',\n side: 'left',\n cx: 1215.6,\n cy: 695.6,\n d: 'M 1186.16,755.14 q -22.34,-9.6 -34.37,-32.01 -0.93,-1.73 -0.95,-3.5 -0.44,-43.95 0.95,-86.05 a 0.58,0.58 0 0 1 0.61,-0.56 q 41.96,2.14 76.79,23.16 c 13.08,7.9 25.57,19.74 32.87,33.53 18.71,35.37 0.74,73.49 -21.32,101.95 a 0.51,0.51 0 0 1 -0.88,-0.15 c -5.18,-15.06 -16.82,-23.21 -31.43,-28.03 q -12.38,-4.09 -22.27,-8.34 z M 1264.84,679.01 c -19.47,-28.27 -49.51,-44.62 -83.31,-49.28 a 0.48,0.48 0 0 1 -0.29,-0.79 q 6.39,-7.08 11.97,-13.48 c 9.56,-10.98 20.54,-14.92 34.76,-15.73 q 2.05,-0.11 3.56,1.07 c 22.85,17.9 32.44,49.93 33.85,78.03 q 0.06,1.04 -0.54,0.18 z',\n },\n {\n id: 'adductors-r',\n labelKey: 'adductors',\n side: 'right',\n cx: 1112.7,\n cy: 886.5,\n d: 'M 1105.13,759.58 c 5.8,-4.09 12.22,-8.33 18.77,-11.59 a 0.54,0.54 0 0 1 0.76,0.34 q 6.8,24.08 7.01,48.83 0.14,15.6 -0.3,31.35 -0.18,6.57 -1.58,13.23 -3.79,18 -7.08,34.37 -5.52,27.39 -7.25,53.63 -0.01,0.2 -0.21,0.19 h -0.01 q -0.21,0 -0.21,-0.21 0.06,-11.05 -1.13,-21.98 -3.47,-31.95 -10.99,-67.96 c -3.17,-15.15 -5.96,-29.39 -7.82,-44.53 q -1.41,-11.59 -0.64,-23.56 c 0.24,-3.74 7.85,-10.11 10.68,-12.11 z M 1103.25,880.79 q 0.13,-2.03 0.52,-4.03 0.12,-0.59 0.23,0 6.54,34.5 9.4,71 1.16,14.9 0.83,30.46 c -0.35,16.42 -2.06,31.59 -8.52,45.43 q -0.65,1.38 -0.93,-0.12 -1.07,-5.81 -1.74,-12.63 c -4.13,-42 -2.61,-84.7 0.21,-130.11 z',\n },\n {\n id: 'adductors-l',\n labelKey: 'adductors',\n side: 'left',\n cx: 1172.5,\n cy: 886.8,\n d: 'M 1170.31,929.79 q -0.01,0.14 -0.14,0.14 h -0.01 q -0.15,0 -0.16,-0.15 c -1.65,-27.23 -6.7,-52.91 -12.71,-80.29 q -1.04,-4.77 -2.03,-9.9 -0.97,-5.04 -1.11,-10.04 -0.71,-25 0,-41.29 0.88,-20.1 6.78,-40.2 a 0.39,0.39 0 0 1 0.58,-0.23 c 9.66,5.72 22.47,11.93 28.7,21.66 q 0.95,1.49 1.03,4.47 c 0.23,9.46 -0.26,19.48 -1.78,29.2 q -3.09,19.91 -8.67,45.97 -4.33,20.25 -8.36,50.7 c -1.32,9.97 -1.83,19.78 -2.12,29.96 z M 1182.66,888.38 c 3.02,46.17 3.96,90.2 -1.62,134.34 q -0.38,3.02 -1.62,0.24 -5.13,-11.5 -6.75,-24.8 -2.53,-20.86 -1.07,-43.33 2.55,-39.34 9.73,-77.33 0.48,-2.54 0.64,0.04 0.36,5.65 0.69,10.84 z',\n },\n {\n id: 'hamstring-r',\n labelKey: 'hamstrings',\n side: 'right',\n cx: 1057.5,\n cy: 880.4,\n d: 'M 1016.46,760.39 c 9.44,12.24 16.13,25.63 21.41,40.04 q 0.82,2.23 0.84,4.98 0.07,11.27 -2.12,20.02 -2.75,11.03 -6.86,22.65 -0.52,1.46 -0.85,-0.05 -5.74,-25.82 -9.75,-52.59 -2.71,-18.1 -3.52,-34.73 -0.08,-1.52 0.85,-0.32 z M 1070.52,797.23 c -11.68,27.55 -15.75,60.62 -14.27,91.04 q 0.39,8.01 2.12,18.82 4.13,25.86 6.66,45.29 c 2.03,15.61 1.65,31.91 -2.1,47.3 q -0.46,1.88 -0.63,-0.05 -1.63,-18.54 -5.82,-37.03 c -4.65,-20.57 -11.75,-43.58 -16.62,-63.37 -3.73,-15.15 -6.46,-30.31 -6.22,-45.8 q 0.49,-31.41 19.87,-55.13 c 2.88,-3.51 6.39,-5.98 9.88,-8.87 q 4.53,-3.74 10.3,-2.59 a 1.34,1.33 19.9 0 1 0.91,1.94 q -2.27,4.18 -4.08,8.45 z M 1098.11,859.08 c 1.35,28.16 0.76,58.11 -0.79,88.31 q -0.29,5.81 -1.41,12.09 -3.22,18.13 0.59,38.78 0.25,1.36 -0.6,0.27 c -20.01,-25.52 -30.66,-57.27 -32.98,-89.64 -3.21,-44.66 6.94,-89.32 20.75,-132.24 q 0.55,-1.71 1.12,0 4.19,12.73 6.41,24.46 5.53,29.26 6.91,57.97 z',\n },\n {\n id: 'hamstring-l',\n labelKey: 'hamstrings',\n side: 'left',\n cx: 1228.0,\n cy: 880.4,\n d: 'M 1219.83,958.26 c 1.6,-16.19 4.52,-34.12 7.27,-51.04 q 1.66,-10.21 2.07,-18.85 1.54,-32.19 -5.11,-62.59 -4.38,-20.02 -13.16,-37.05 -0.74,-1.43 0.83,-1.82 c 6.74,-1.68 10.82,2.92 15.54,6.72 q 2.63,2.11 4.95,4.97 22.46,27.73 19.33,65.93 c -1.28,15.6 -4.64,30.53 -8.67,45.57 q -4.34,16.19 -8.51,30.94 -8.04,28.43 -11.39,59.02 -0.17,1.55 -0.51,0.03 -4.7,-20.89 -2.64,-41.83 z M 1222.33,911.18 c -2.52,31.89 -13.09,61.94 -32.73,87.27 q -0.72,0.94 -0.52,-0.23 2.27,-12.72 1.81,-27.27 -0.2,-6.27 -1.31,-11.44 -1.06,-4.94 -1.37,-9.68 -2.26,-34.73 -1.33,-78.46 0.82,-38.23 7.92,-73.18 2.24,-11.02 6.07,-21.84 0.39,-1.11 0.77,0.01 c 14.36,43.28 24.25,89.74 20.69,134.82 z M 1252.18,789.16 c 4.38,-10.33 10.1,-20.26 17.11,-29.06 q 0.66,-0.83 0.64,0.22 -0.05,2.47 -0.26,5.11 c -2.25,28.2 -7.17,55.27 -13.07,82.76 q -0.28,1.33 -0.76,0.06 -5.28,-13.81 -7.95,-27.73 c -1.27,-6.66 -2.21,-15.94 0.54,-22.48 q 1.91,-4.56 3.75,-8.88 z',\n },\n {\n id: 'calves-r',\n labelKey: 'gastrocnemius',\n side: 'right',\n cx: 1088.8,\n cy: 1175.4,\n d: 'M 1058.29,1085.75 c 6.08,-36.26 10.83,-64.98 13.27,-97.84 a 0.64,0.63 12.9 0 1 0.87,-0.54 c 4.34,1.73 9.74,5.17 11.34,9.62 q 0.48,1.32 0.33,3.57 c -2.18,33.02 -2.33,66.33 -2.21,98.92 q 0.04,10.61 0.89,19.22 2.51,25.4 2.71,52.08 c 0.09,12.28 -0.31,25.64 -3.38,37.51 q -0.44,1.7 -1.2,3.04 a 1.46,1.45 41.5 0 1 -2.43,0.15 c -11.56,-15.48 -22.57,-30.58 -27.04,-49.16 -1.94,-8.07 -1.22,-16.06 -0.32,-24.08 q 3.25,-29.05 7.17,-52.49 z M 1065.65,1205.72 q 0.18,-0.49 0.65,-0.28 0.57,0.24 0.99,0.74 c 7.66,9.08 12.41,22.27 15.49,34.01 q 4.92,18.73 7.73,38.56 5.06,35.68 6.15,72.03 0.14,4.75 0.25,9.3 0.09,3.29 -3.11,2.5 -0.29,-0.07 -0.59,-0.13 -3.27,-0.66 -3.31,-4 c -0.46,-33.25 -5.05,-66.1 -13.91,-98.69 q -4.29,-15.78 -9.2,-30.12 c -2.89,-8.45 -4,-15.96 -1.14,-23.92 z M 1092.9,1005.49 c 6.21,14.55 10.89,30.05 15.1,45.29 q 10.42,37.71 15.89,75.17 c 2.5,17.09 4.13,34.52 2.57,51.57 -0.69,7.55 -2.44,16.36 -7.25,22.3 a 0.72,0.71 31.3 0 1 -0.84,0.2 q -15.39,-6.63 -22.38,-22.48 -0.37,-0.84 -0.47,-1.77 -7.84,-73.34 -8.63,-146.47 -0.15,-13.23 1,-26.05 0.18,-2.03 0.73,-4.04 a 0.43,0.43 0 0 1 0.78,-0.13 q 2.25,3.5 3.5,6.41 z M 1105.01,1296.15 c 0.31,-3.79 0.81,-7.66 0.78,-11.4 -0.13,-20.92 -0.61,-43.07 2,-63.38 0.83,-6.47 2.37,-14.24 6.84,-19.26 a 0.48,0.48 0 0 1 0.83,0.26 q 2,15.5 0.91,32.56 -1.2,18.89 -3.49,38.19 -1.15,9.79 -1.38,19.57 -0.5,21.82 -2.41,44.66 -0.8,9.48 -2.65,18.21 a 0.62,0.61 -66.5 0 1 -0.96,0.38 q -3.82,-2.71 -4.14,-6.62 -0.59,-7.27 0.39,-17.04 1.85,-18.46 3.28,-36.13 z',\n },\n {\n id: 'calves-l',\n labelKey: 'gastrocnemius',\n side: 'left',\n cx: 1196.5,\n cy: 1175.1,\n d: 'M 1195.51,999.93 q 1.11,-2 1.54,0.25 0.83,4.43 1.06,9.07 0.79,16.08 0.37,32.68 -1.79,71.08 -8.41,133.14 c -0.54,5.01 -5.87,11.84 -9.39,15.76 -3.68,4.08 -8.74,6.74 -13.52,9.33 q -0.36,0.2 -0.63,-0.11 c -4.85,-5.52 -6.81,-14.78 -7.44,-21.9 -1.74,-19.58 0.51,-41.13 3.73,-60.68 q 6.55,-39.63 18.22,-79.21 3.88,-13.17 8.74,-26 2.41,-6.37 5.73,-12.33 z M 1170.98,1202.22 q 2.43,2.66 3.69,6.26 c 3.13,8.93 4.01,18.89 4.48,28.32 q 1.05,21.18 0.46,40.21 -0.29,9.19 0.45,16.73 1.84,18.75 3.59,37.51 0.69,7.41 0.77,15.52 0.06,5.8 -4.1,9 a 0.89,0.89 0 0 1 -1.42,-0.54 q -2.23,-11.91 -3.17,-25.71 -1.35,-19.53 -1.75,-36.62 -0.22,-9.41 -1.32,-18.68 -2.7,-22.94 -3.76,-42.69 -0.78,-14.6 1.04,-28.98 a 0.6,0.6 0 0 1 1.04,-0.33 z M 1209.54,1220.37 q 3.46,-8.19 9.41,-14.95 a 0.5,0.49 56.8 0 1 0.84,0.18 q 1.93,5.91 1.63,12.13 -0.21,4.19 -2.73,11.81 -8.63,26.04 -13.9,49.21 -8.52,37.45 -9.27,80.13 -0.04,2.72 -2.68,3.4 -0.94,0.24 -1.91,0.38 -2.41,0.33 -2.37,-2.1 0.65,-35.68 4.84,-70.31 c 2.84,-23.48 7.15,-48.63 16.14,-69.88 z M 1234.23,1161.52 c -4.22,19.14 -15.78,34.23 -26.98,49.71 a 1.72,1.72 0 0 1 -3.01,-0.42 q -1.93,-5.29 -2.63,-11.11 -1.51,-12.55 -1.6,-22.65 -0.27,-28.3 2.59,-57.1 0.96,-9.64 1.02,-20.11 0.27,-52.48 -2.22,-101.41 c -0.04,-0.76 0.35,-1.89 0.76,-2.54 q 3.68,-5.85 11.13,-8.53 0.53,-0.19 0.58,0.37 2.93,37.23 10.25,79.5 c 4.59,26.56 9.04,54.75 11.1,81.03 q 0.51,6.47 -0.99,13.26 z',\n },\n {\n id: 'ankles-r',\n labelKey: 'ankle',\n side: 'right',\n cx: 1090.6,\n cy: 1394.5,\n d: 'M 1081.0 1360.8 C 1075.1 1373.0 1073.5 1391.2 1074.5 1405.3 C 1075.6 1416.8 1080.4 1427.6 1088.5 1428.3 C 1095.4 1428.3 1101.3 1422.2 1104.5 1409.4 C 1107.7 1396.6 1107.7 1381.1 1102.4 1368.9 C 1099.2 1363.5 1097.0 1360.8 1093.8 1360.8 Z',\n },\n {\n id: 'ankles-l',\n labelKey: 'ankle',\n side: 'left',\n cx: 1194.8,\n cy: 1395.4,\n d: 'M 1204.4 1361.3 C 1210.3 1373.6 1211.9 1392.0 1210.8 1406.2 C 1209.8 1417.8 1204.9 1428.7 1196.9 1429.4 C 1189.9 1429.4 1184.0 1423.2 1180.8 1410.3 C 1177.6 1397.4 1177.6 1381.7 1183.0 1369.5 C 1186.2 1364.1 1188.3 1361.3 1191.5 1361.3 Z',\n },\n {\n id: 'feet-r',\n labelKey: 'foot',\n side: 'right',\n cx: 1089.5,\n cy: 1443.0,\n d: 'M 1079.17,1372.43 q 2.14,-5.13 4.33,-10.15 0.64,-1.46 0.77,0.13 0.19,2.38 0.04,5.19 -0.48,8.92 -1.17,17.73 c -0.55,6.98 -0.51,14.62 0.97,21.25 q 0.81,3.6 3.17,7.55 2.42,4.04 6.98,2.53 2.09,-0.69 2.69,-2.94 c 5.05,-18.81 8.53,-32.57 10.08,-47.69 q 0.17,-1.71 0.65,-0.06 c 4.88,16.71 7.77,34.11 9.71,51.52 a 2.81,2.81 0 0 1 -0.55,2.02 c -5.24,7.01 -14.76,8.75 -23.07,8.71 -8.31,-0.03 -16.89,-1.11 -24.67,-3.97 -3.23,-1.19 -5.27,-5.26 -4.38,-8.25 4.42,-14.8 8.65,-29.67 14.45,-43.57 z',\n },\n {\n id: 'feet-l',\n labelKey: 'foot',\n side: 'left',\n cx: 1192.5,\n cy: 1443.0,\n d: 'M 1206.8,1373.7 q 8.72,22.21 13.81,42.33 0.94,3.7 -1.71,6.53 -1.44,1.54 -5.28,2.63 -14.71,4.18 -29.01,2.49 -9.46,-1.11 -14.96,-6.81 -1.68,-1.75 -1.46,-3.83 2.75,-26.35 9.42,-50.74 0.68,-2.5 0.89,0.09 0.63,7.86 2.59,16.87 2.96,13.59 7.32,30.23 0.79,2.98 3.86,3.47 3.52,0.56 5.1,-1.58 c 2.84,-3.86 4.42,-8.89 4.83,-13.69 0.96,-11.15 -0.35,-22.32 -1,-33 q -0.2,-3.25 0.17,-6.56 0.09,-0.79 0.42,-0.07 2.74,5.83 5.01,11.64 z',\n },\n ],\n};\n","/* ------------------------------------------------------------------ */\n/* AUTO-GENERATED by scripts/anatomy-art/build-muscle-fibres.mjs. */\n/* */\n/* Muscle-fibre strokes for MuscleScheme's muscle figures, in each */\n/* figure's own coordinates (muscle-paths.ts). For every muscle and */\n/* sub-path: the outline is sampled, its long axis found (PCA, or the */\n/* anatomical fibre angle for the pectoralis, obliques, latissimus, */\n/* erector spinae, rectus abdominis and gluteus maximus), and fibres */\n/* follow the outline end to end, converging where the muscle narrows */\n/* to its tendon. Fibres are clipped to the outline. Decorative only. */\n/* ------------------------------------------------------------------ */\n\nexport type MuscleFibreSet =\n | 'male-front'\n | 'male-back'\n | 'female-front'\n | 'female-back';\n\nexport const MUSCLE_FIBRES: Record<MuscleFibreSet, Record<string, string>> = {\n 'male-front': {\n 'chest-r':\n 'M267 338L285 331 301 330 316 331 331 333 344 341 353 360 356 394M266 342L282 341 297 343 311 345 326 347 339 355 349 370 354 399M264 347L278 351 292 356 306 359 321 362 334 368 345 381 353 403M262 352L274 361 287 368 301 373 316 376 329 381 341 391 351 407M260 357L271 371 283 381 296 387 311 390 325 395 338 402 350 411M259 361L267 381 278 393 291 401 305 404 320 408 334 412 348 416M257 366L263 391 274 406 286 414 300 419 315 422 330 423 347 420',\n 'chest-l':\n 'M471 366L465 392 455 406 442 415 428 419 413 422 398 423 382 420M469 361L461 382 450 393 437 401 423 405 409 408 394 412 380 415M468 357L458 371 445 381 432 387 418 390 404 395 391 402 378 411M466 352L454 361 441 368 427 373 412 376 399 381 387 391 377 407M464 347L450 351 436 356 422 359 407 362 394 368 383 380 375 402M463 342L446 341 432 343 417 345 402 348 389 355 379 370 374 398M461 338L443 331 427 330 412 331 397 333 384 341 375 359 372 394',\n 'obliques-r':\n 'M261 419L265 425 270 430 276 434 284 438 289 443M260 420L262 427 267 432 273 436 281 440 288 444M257 435L260 441 265 446 271 450 277 453 279 460M257 435L258 442 262 448 266 453 271 457 275 463M296 453L295 461 296 468 297 474 298 480 300 486M293 456L289 465 291 471 294 476 296 481 299 486M289 458L284 469 287 474 290 478 294 483 298 487M258 458L261 463 264 469 267 475 268 481 268 490M257 458L259 465 261 471 263 477 266 483 267 490M277 480L281 487 287 492 293 497 297 503 299 511M276 481L276 490 282 495 288 500 294 505 298 511M272 499L277 508 284 515 293 522 297 531 299 542M271 500L273 510 279 519 287 526 293 534 298 543M273 528L279 536 286 544 293 552 297 562 299 573M273 528L276 538 281 547 288 555 294 564 298 573M272 529L274 540 277 551 284 558 290 566 298 574M274 563L284 575 294 587 297 604 300 621 303 637 308 653M273 564L280 578 289 591 291 608 296 623 300 639 307 653M272 564L277 580 283 594 286 612 292 626 298 641 306 654M271 565L274 582 278 598 280 616 288 629 295 643 305 655M271 566L271 584 273 602 274 620 283 632 292 645 304 656',\n 'obliques-l':\n 'M468 419L466 426 462 432 455 436 448 440 441 444M467 419L463 425 458 430 452 434 445 438 439 443M472 434L470 442 466 447 462 452 457 457 454 463M471 434L468 440 464 445 458 449 452 453 449 460M439 458L444 469 441 474 438 478 434 483 430 487M435 456L439 465 437 471 435 476 432 481 430 487M432 453L434 461 433 468 431 474 430 480 429 486M471 458L469 465 467 471 465 477 463 483 461 490M470 458L468 464 465 469 461 475 460 482 461 490M453 481L453 490 447 495 440 499 435 505 430 511M452 480L448 487 442 492 436 496 432 503 429 510M457 500L455 510 449 519 441 525 435 533 430 542M456 499L451 508 444 515 436 522 431 531 429 541M456 527L455 539 452 550 445 558 438 566 431 574M456 527L452 537 448 547 440 555 435 564 430 573M455 527L450 536 443 544 435 551 431 561 429 573M458 566L457 585 456 603 454 620 445 633 436 645 424 656M457 566L454 583 450 599 448 616 440 630 433 643 423 655M456 565L451 580 445 595 442 612 436 627 430 641 422 654M455 564L447 578 439 591 437 608 432 624 428 640 421 654M454 564L444 576 433 587 431 604 428 621 425 638 420 653',\n 'abs-r':\n 'M357 485L356 494 353 504 352 513 352 522 349 531M355 485L351 494 346 504 344 513 344 522 342 531M354 485L346 494 339 504 336 513 336 522 334 531M352 485L341 494 332 504 328 513 327 522 326 531M351 485L337 494 325 504 320 513 319 522 319 531M356 538L354 546 354 554 354 561 353 569 353 577M353 538L346 546 346 554 346 561 346 569 347 577M349 538L339 546 339 554 339 561 339 569 340 577M346 538L332 546 331 554 331 561 332 569 334 577M342 538L325 546 324 554 324 561 325 569 328 577M339 538L317 546 317 554 317 561 318 569 322 577M354 431L353 444 352 457 351 470 336 483 318 495M352 431L347 444 345 457 344 470 331 483 316 495M350 431L341 444 337 457 336 470 326 483 315 495M349 431L335 444 329 457 329 470 322 483 314 495M347 431L329 444 322 457 321 470 317 483 313 495M345 431L323 444 314 457 314 470 312 483 312 495M352 589L353 604 353 619 354 634 354 650 355 665 355 680 356 695 357 710M343 589L345 604 345 619 346 634 347 650 348 665 349 680 351 695 355 710M335 589L337 604 338 619 339 634 340 650 342 665 344 680 347 695 353 710M327 589L329 604 330 619 331 634 333 650 335 665 338 680 342 695 350 710M319 589L320 604 322 619 324 634 326 650 329 665 333 680 338 695 348 710',\n 'abs-l':\n 'M384 432L406 445 414 457 415 470 416 483 417 496M382 432L400 445 406 457 407 470 412 483 416 496M380 432L394 445 399 457 400 470 407 483 415 496M378 432L387 445 391 457 392 470 403 483 414 496M376 432L381 445 384 457 385 470 398 483 413 496M374 432L375 445 376 457 377 470 394 483 412 496M377 485L391 494 404 504 408 513 409 522 409 531M376 485L387 494 396 504 400 513 401 522 401 531M374 485L382 494 389 504 392 513 393 522 394 531M373 485L377 494 382 504 384 513 384 522 386 531M371 485L373 494 375 504 376 513 376 522 379 531M389 538L411 546 411 554 411 561 411 569 406 577M386 538L404 546 404 554 404 561 403 569 400 577M382 538L396 546 397 554 397 561 396 569 394 577M379 538L389 546 389 554 389 561 389 569 388 577M375 538L382 546 382 554 382 561 382 569 382 577M372 538L374 546 374 554 375 561 375 569 376 577M409 589L408 604 406 619 405 634 402 650 399 665 396 680 390 695 380 711M401 589L400 604 399 619 397 634 395 650 393 665 390 680 386 695 378 711M393 589L392 604 391 619 390 634 388 650 387 665 385 680 381 695 375 711M385 589L384 604 383 619 382 634 381 650 380 665 379 680 377 695 373 711M377 589L375 604 375 619 375 634 374 650 374 665 373 680 373 695 371 711',\n 'biceps-r':\n 'M184 488L187 472 190 455 194 439 201 424 210 409M186 489L192 473 196 457 201 441 207 425 212 410M189 490L197 475 202 459 207 443 212 427 214 410M191 491L203 477 209 461 214 445 217 429 217 411',\n 'biceps-l':\n 'M519 409L527 424 534 439 538 455 541 472 544 489M516 410L522 426 527 441 532 457 536 474 542 489M514 411L516 427 521 443 526 459 531 475 540 490M511 411L511 429 515 445 519 461 526 477 538 491',\n 'triceps-r':\n 'M205 508L211 494 218 480 224 466 230 452 235 437 240 422 242 407 243 391M208 509L216 496 224 482 230 468 235 454 241 439 245 424 247 409 245 392',\n 'triceps-l':\n 'M485 391L486 407 489 422 493 437 498 451 504 466 510 480 517 494 524 508M483 391L482 408 483 424 488 439 493 453 498 468 505 482 512 496 520 509',\n neck: 'M379 247L375 255 373 264 370 272 368 281 366 289M372 247L370 255 368 264 367 272 366 281 365 289M364 255L364 264 364 272 364 281 364 289M358 247L359 256 360 264 361 272 362 281 363 289M350 247L353 256 356 264 358 272 360 281 363 289',\n 'neck-r':\n 'M332 243L338 256 342 270 348 283 353 297 355 311M331 243L334 258 338 271 343 285 349 298 354 312M330 280L331 288 334 295 336 302 340 308 345 315M329 280L330 288 331 296 333 303 338 309 344 315',\n 'neck-l':\n 'M373 311L376 297 380 284 386 270 390 257 396 243M375 312L380 299 385 285 390 272 394 258 397 244M384 314L388 308 392 301 395 295 397 288 398 280M385 314L391 309 395 303 398 296 399 288 399 281',\n 'trapezius-r':\n 'M287 306L295 304 304 301 312 298 318 291 323 282M287 307L297 307 307 306 316 304 321 296 324 284',\n 'trapezius-l':\n 'M406 282L411 291 417 298 425 301 433 304 442 306M405 284L408 296 413 304 422 306 431 307 441 307',\n 'deltoids-r':\n 'M205 381L201 360 205 344 213 331 223 319 237 310 258 306M208 383L207 364 212 349 219 335 228 322 241 313 262 308M212 386L213 368 219 353 225 339 232 325 246 316 265 310M216 388L219 372 226 358 230 343 237 329 250 319 268 313M219 391L225 376 232 363 236 347 241 332 254 322 272 315M223 393L231 380 239 367 242 350 246 335 258 325 275 317',\n 'deltoids-l':\n 'M469 306L491 310 505 319 515 331 523 344 527 360 523 381M466 308L487 313 501 322 509 335 516 349 521 364 520 384M463 310L483 316 496 325 504 339 510 353 515 368 516 386M460 313L478 319 491 329 498 343 503 358 509 372 513 389M457 315L474 322 487 332 492 347 496 363 503 376 509 391M453 317L470 324 482 335 486 351 489 367 497 380 505 393',\n 'adductors-r':\n 'M284 652L294 665 304 679 312 693 319 708 326 723 332 738 337 754 339 771M283 653L291 667 300 681 307 696 314 710 320 726 326 741 331 756 335 773M279 669L287 690 295 711 303 733 310 754 316 776 322 797 328 819 332 842 334 864 333 888M278 669L285 691 292 712 299 734 305 755 311 777 317 799 322 821 327 843 330 865 332 888M343 843L342 828 341 814 340 800 342 786 349 772M343 843L344 829 345 814 345 800 347 786 351 772',\n 'adductors-l':\n 'M390 771L391 754 396 739 402 723 409 708 416 694 424 680 433 666 444 653M394 773L397 757 403 741 408 726 414 711 421 696 428 682 436 667 445 654M395 886L395 863 397 840 401 818 406 796 412 775 419 753 426 732 434 710 442 689 450 668M396 887L398 864 402 842 406 820 412 798 417 776 423 754 430 733 436 711 443 690 451 668M379 772L386 785 388 799 387 814 386 828 386 842M378 772L381 786 383 800 383 814 384 828 385 842',\n 'quadriceps-r':\n 'M268 678L273 702 279 726 285 751 291 775 297 799 300 824 302 849 303 873 302 899 300 924M267 678L269 703 273 727 278 752 284 776 289 800 293 825 296 849 298 874 298 899 297 924M266 678L266 703 268 728 272 753 277 777 282 801 286 826 290 850 292 875 294 900 295 925M264 678L262 704 262 729 265 753 269 778 274 802 279 827 283 851 287 876 290 900 293 925M263 678L258 704 256 730 258 754 262 779 267 803 272 828 277 852 281 877 286 901 291 925M262 679L254 705 251 730 251 755 255 780 260 804 265 829 271 853 276 877 282 902 288 926M245 800L247 815 249 831 252 846 255 861 259 876 264 891 269 906 274 921 277 936M243 800L245 816 246 831 248 847 251 862 254 878 259 893 264 907 270 922 274 937M314 844L318 860 320 877 321 893 321 910 319 927 320 943M313 844L315 860 316 877 316 894 315 910 313 927 316 943',\n 'quadriceps-l':\n 'M429 924L426 899 425 874 426 849 428 824 431 799 437 775 443 751 449 726 455 702 460 678M431 925L430 899 431 874 432 850 435 825 439 800 444 776 450 752 455 727 459 703 461 678M433 925L434 900 436 875 439 850 442 826 446 801 451 777 457 753 460 728 463 703 463 678M435 925L438 901 441 876 445 851 449 827 454 802 459 778 463 753 466 729 466 704 464 678M438 926L442 901 447 877 451 852 456 828 461 803 466 779 470 754 472 730 470 704 465 678M440 926L447 902 452 877 458 853 463 829 469 804 474 780 477 755 477 730 474 705 467 679M451 936L454 921 459 906 465 891 469 876 473 861 476 846 479 830 481 815 484 799M454 937L458 922 464 907 470 892 474 877 477 862 480 847 482 831 484 815 485 800M409 943L409 927 408 910 407 893 408 877 410 860 414 843M412 943L415 927 413 910 412 893 412 877 413 860 415 843',\n 'knees-r':\n 'M291 954L303 964 304 975 303 986 301 998 295 1009M287 954L296 965 297 976 297 987 296 998 292 1010M283 955L289 965 290 976 291 987 291 998 290 1010M279 955L282 966 283 977 285 988 286 999 288 1010M275 955L275 966 277 977 279 988 282 999 286 1010M288 1055L293 1041 299 1027 306 1013 312 998 317 984 320 969M290 1056L296 1042 303 1028 309 1014 315 999 320 985 322 969',\n 'knees-l':\n 'M434 1010L428 998 425 986 425 975 426 964 436 954M436 1010L432 998 431 987 431 976 433 965 441 954M438 1010L437 999 437 987 438 976 440 965 445 955M440 1010L442 999 443 988 445 977 447 966 449 955M442 1010L447 999 449 989 452 978 454 967 454 955M408 969L412 984 416 998 422 1012 429 1026 435 1040 440 1055M406 970L409 985 414 999 419 1014 425 1028 432 1042 438 1056',\n 'tibialis-r':\n 'M266 983L268 1003 271 1024 273 1045 276 1066 280 1087 283 1108 286 1129 289 1150 292 1171 294 1192M265 983L266 1004 267 1025 269 1046 271 1067 274 1088 277 1109 280 1129 284 1150 288 1171 292 1192M264 983L264 1004 263 1025 265 1047 266 1068 269 1088 271 1109 275 1130 279 1151 284 1172 290 1192',\n 'tibialis-l':\n 'M435 1192L438 1171 441 1150 444 1130 447 1109 450 1088 454 1067 456 1046 459 1025 461 1004 463 983M437 1193L443 1172 447 1151 451 1131 455 1110 458 1089 460 1068 462 1047 464 1026 464 1004 464 983',\n 'calves-r':\n 'M256 1018L255 1039 255 1059 255 1080 257 1100 260 1121 264 1141 268 1161 273 1181 277 1201 276 1222M255 1018L253 1039 253 1060 253 1080 254 1101 256 1121 260 1141 264 1161 269 1182 273 1202 274 1222M302 1179L303 1163 303 1146 303 1130 303 1113 302 1097 301 1080 303 1064 308 1048 314 1032M303 1179L305 1163 306 1146 308 1130 309 1114 309 1097 308 1081 309 1064 312 1048 315 1032M304 1179L307 1163 309 1147 313 1130 316 1114 317 1098 316 1081 315 1065 315 1048 315 1032',\n 'calves-l':\n 'M452 1222L451 1201 455 1181 460 1161 465 1141 468 1121 471 1100 473 1080 474 1059 473 1038 472 1017M455 1223L455 1202 459 1182 464 1162 469 1141 472 1121 474 1100 475 1080 476 1059 475 1038 473 1018M415 1032L420 1048 426 1064 427 1080 426 1097 426 1113 426 1130 426 1146 426 1163 426 1179M414 1032L417 1048 419 1064 420 1081 419 1097 419 1114 421 1130 422 1146 424 1163 425 1179M413 1032L413 1048 413 1065 412 1081 411 1098 412 1114 415 1130 419 1147 421 1163 424 1179',\n 'forearm-r':\n 'M127 675L131 658 135 641 139 623 143 606 147 589 151 572 153 554 158 537 165 521 173 505M129 675L133 658 138 641 142 624 147 607 152 590 156 573 159 556 164 539 169 522 176 506M130 676L135 659 141 642 146 625 151 608 156 592 161 575 166 558 170 540 174 523 178 506M131 676L138 660 143 643 149 626 155 610 161 593 167 576 172 559 175 542 178 525 180 507M142 675L147 661 153 647 158 632 164 618 170 604 177 591 184 577 189 563 193 547 196 532M144 676L149 662 155 648 161 633 167 619 173 606 181 592 188 579 194 564 197 549 200 534M150 681L157 666 163 651 169 636 176 621 183 607 192 593 199 579 205 564 209 548M151 681L158 666 164 651 171 637 177 622 185 608 193 594 200 579 206 564 211 549',\n 'forearm-l':\n 'M555 505L563 521 571 538 575 554 578 572 581 589 585 606 589 623 593 641 598 658 601 675M553 506L559 523 565 539 569 556 572 574 577 591 581 607 586 624 591 641 595 658 600 675M550 507L554 524 559 541 563 558 567 575 572 592 577 609 583 625 588 642 593 659 598 676M548 507L550 525 553 542 556 560 561 576 567 593 573 610 579 626 585 643 591 660 597 676M532 532L536 548 539 563 545 577 551 590 558 604 564 618 570 632 575 646 581 660 586 675M529 534L531 550 535 564 540 579 547 592 555 605 561 619 567 633 573 647 579 661 584 675M519 548L524 564 529 579 536 593 545 607 553 621 559 636 565 651 572 665 578 680M517 549L522 564 528 579 535 594 543 608 551 622 558 636 564 651 570 666 577 681',\n 'hands-r':\n 'M103 746L94 730 97 719 103 709 113 700 128 694M107 748L101 733 104 722 110 712 118 703 131 695M111 749L109 736 111 725 116 714 123 705 134 696M115 751L116 739 118 727 123 717 129 707 137 698M119 752L123 742 126 730 130 720 134 709 139 699M123 754L130 744 133 733 136 722 139 711 142 700M127 756L137 747 140 736 143 725 145 713 145 701M55 744L62 738 69 732 75 724 80 716 85 708M56 745L65 740 72 734 77 726 81 717 86 709M64 793L68 783 73 774 79 765 84 756 89 748M65 793L70 785 76 776 81 767 87 758 93 750M82 810L86 800 90 789 94 779 98 769 102 758M83 811L88 801 93 791 97 780 101 770 106 760M134 798L134 791 134 783 134 776 134 769 135 761M135 798L136 791 136 784 136 776 137 769 137 761M108 812L110 803 111 793 113 783 115 773 116 763M110 813L112 803 114 793 116 784 118 774 119 764',\n 'hands-l':\n 'M598 694L614 700 624 708 631 717 634 729 628 744M595 696L609 702 617 711 624 721 627 732 624 746M593 697L604 704 611 714 617 724 620 735 620 748M590 698L599 707 605 717 610 727 613 738 616 750M587 699L594 709 598 720 603 731 606 742 612 751M585 701L588 712 592 723 595 734 599 745 609 753M582 702L583 714 586 726 588 737 592 748 605 755M643 709L648 716 653 724 659 732 667 738 674 744M643 709L647 718 651 726 656 734 664 740 672 745M639 748L644 756 650 765 655 774 660 783 665 793M636 750L641 758 647 767 653 776 658 785 664 793M626 758L630 769 634 779 639 790 643 800 647 810M623 760L627 770 631 780 636 791 640 801 645 811M593 761L594 768 594 776 594 783 594 790 594 798M591 761L592 768 592 776 592 783 592 790 593 798M612 763L614 773 615 783 617 793 619 802 620 812M609 764L611 774 613 783 614 793 616 803 618 813',\n 'ankles-r':\n 'M293 1209L298 1212 302 1217 304 1222 306 1228 306 1234M292 1210L296 1214 300 1218 302 1223 304 1228 306 1234M289 1224L296 1236 299 1249 303 1262 306 1276 305 1290M286 1225L291 1238 292 1251 296 1264 302 1277 304 1290M284 1226L286 1239 285 1253 289 1266 298 1278 303 1290M282 1226L281 1241 278 1255 282 1268 294 1279 303 1290',\n 'ankles-l':\n 'M422 1234L423 1228 424 1222 427 1217 430 1212 435 1209M422 1234L424 1228 426 1223 429 1218 432 1214 437 1210M423 1290L423 1275 426 1262 429 1249 433 1236 439 1224M424 1290L427 1277 433 1264 436 1251 438 1238 442 1225M425 1290L431 1278 439 1266 443 1253 443 1239 444 1226M426 1290L435 1279 446 1268 450 1255 448 1241 446 1226',\n 'feet-r':\n 'M249 1327L258 1320 264 1312 269 1303 275 1295 280 1286M252 1328L265 1324 269 1315 275 1307 279 1297 283 1288M255 1330L271 1328 275 1319 280 1310 284 1300 286 1290M258 1332L278 1332 281 1322 285 1313 288 1303 290 1292M293 1338L296 1330 298 1322 299 1314 299 1305 300 1297M296 1339L300 1331 303 1323 304 1314 301 1306 301 1297',\n 'feet-l':\n 'M448 1286L454 1295 459 1303 465 1312 470 1320 480 1326M445 1288L449 1298 454 1307 459 1315 464 1324 477 1328M442 1290L445 1300 449 1310 453 1319 457 1329 474 1330M439 1292L440 1303 443 1313 448 1322 451 1333 471 1332M428 1297L430 1306 429 1314 430 1322 433 1331 435 1339M428 1297L427 1306 425 1315 426 1323 428 1331 433 1339',\n },\n 'male-back': {\n 'neck-r':\n 'M1026 289L1048 281 1056 267 1060 252 1062 235 1067 220M1028 289L1053 283 1061 270 1064 254 1066 237 1069 222M1030 290L1059 286 1066 272 1068 256 1069 239 1072 223M1032 291L1065 289 1071 274 1073 258 1073 241 1074 224',\n 'neck-l':\n 'M1100 220L1105 236 1107 252 1111 267 1119 281 1140 289M1098 222L1101 237 1103 254 1106 270 1113 283 1139 289M1095 223L1098 239 1099 256 1101 272 1107 286 1137 290M1092 224L1094 241 1095 257 1096 274 1101 289 1135 291',\n 'trapezius-r':\n 'M1041 300L1064 311 1070 327 1072 344 1073 361 1074 378 1074 395 1074 413 1074 430 1074 447 1074 465M1036 301L1057 313 1063 329 1065 346 1067 363 1068 380 1069 397 1070 414 1072 431 1073 448 1073 465M1031 302L1050 315 1055 331 1058 347 1060 364 1062 381 1064 398 1066 415 1069 431 1072 448 1073 465M1026 304L1042 317 1048 333 1051 349 1054 366 1056 382 1059 399 1063 416 1066 432 1070 448 1072 465M1021 305L1035 319 1041 334 1044 351 1048 367 1051 384 1054 400 1059 417 1064 433 1069 449 1072 465M1016 306L1028 320 1033 336 1037 353 1041 369 1045 385 1049 402 1055 418 1061 433 1067 449 1071 465M1011 307L1021 322 1026 338 1031 354 1035 371 1039 387 1045 403 1051 419 1058 434 1066 450 1071 465',\n 'trapezius-l':\n 'M1093 465L1093 448 1093 430 1093 413 1093 396 1093 378 1094 361 1095 344 1097 327 1103 311 1126 300M1094 465L1094 448 1095 431 1097 414 1098 397 1099 380 1100 363 1102 346 1104 329 1110 313 1131 301M1094 465L1096 448 1098 432 1101 415 1103 398 1105 381 1107 364 1109 347 1112 331 1117 315 1136 302M1095 465L1097 449 1101 432 1105 416 1108 399 1110 383 1113 366 1116 349 1119 333 1125 317 1141 304M1095 466L1099 449 1103 433 1108 417 1113 401 1116 384 1119 368 1123 351 1126 335 1132 319 1146 305M1096 466L1100 449 1106 434 1112 418 1117 402 1122 386 1126 369 1129 353 1134 336 1139 320 1151 306M1096 466L1101 450 1109 434 1116 419 1122 403 1127 387 1132 371 1136 354 1141 338 1146 322 1156 307',\n 'deltoids-r':\n 'M915 393L918 376 921 360 925 344 933 330 944 320 963 313M917 393L923 379 927 364 931 348 938 334 950 323 967 315M918 394L927 382 934 368 938 352 944 338 955 326 971 318M919 395L931 384 940 372 945 357 950 341 960 329 975 320',\n 'deltoids-l':\n 'M1204 313L1222 320 1234 330 1242 344 1246 359 1249 376 1252 392M1200 316L1217 323 1229 334 1236 348 1240 363 1244 379 1250 393M1196 318L1212 326 1223 338 1229 352 1233 367 1240 381 1249 394M1192 320L1207 329 1217 341 1222 356 1226 372 1236 384 1248 395',\n 'upper-back-r':\n 'M973 337L1002 329 1009 345 1014 361 1020 377 1027 392M971 339L997 335 1004 350 1011 365 1018 379 1026 393M970 340L992 340 999 355 1007 369 1015 382 1025 394M968 342L986 346 994 360 1003 372 1013 384 1024 395M966 344L981 351 989 365 999 376 1010 387 1023 396M965 345L975 356 984 370 995 380 1008 389 1022 397M972 417L989 423 1026 409 1033 425 1040 441 1047 457 1055 472 1049 501 1036 537 1025 571M971 418L987 425 1020 415 1026 432 1032 448 1039 465 1046 481 1041 509 1031 541 1023 573M970 418L984 427 1013 422 1019 439 1025 456 1031 473 1037 489 1034 516 1027 546 1022 574M970 419L982 430 1006 428 1012 446 1017 464 1023 481 1029 498 1027 523 1023 550 1021 575M969 420L980 432 1000 435 1004 453 1009 472 1015 489 1020 507 1019 531 1018 555 1019 577M968 420L978 434 993 442 997 461 1002 479 1007 497 1011 515 1012 538 1014 559 1018 578M968 421L975 436 987 448 990 468 994 487 999 505 1003 524 1005 545 1009 564 1016 579M961 363L967 376 975 386 986 394 1000 400 1016 402M959 364L964 379 971 390 982 398 996 404 1014 404M958 366L961 382 968 394 978 402 992 407 1012 406',\n 'upper-back-l':\n 'M1203 345L1192 356 1183 369 1172 380 1159 389 1145 396M1201 344L1187 351 1178 364 1168 376 1157 387 1144 396M1200 342L1181 345 1173 359 1165 372 1154 384 1143 395M1199 341L1176 340 1168 354 1161 368 1152 382 1142 394M1197 339L1170 334 1163 349 1157 365 1149 379 1141 393M1196 338L1165 329 1158 344 1153 361 1147 377 1140 392M1209 366L1206 382 1199 394 1189 402 1175 407 1155 406M1208 364L1203 379 1196 390 1185 398 1172 404 1153 404M1206 363L1201 376 1192 386 1181 394 1168 400 1151 402M1199 421L1192 436 1180 448 1177 468 1173 486 1168 505 1164 524 1162 545 1158 563 1151 579M1199 420L1190 434 1174 441 1170 460 1165 479 1160 497 1156 515 1155 537 1153 559 1149 578M1198 419L1187 432 1167 435 1163 453 1158 471 1152 489 1147 506 1148 530 1149 554 1148 576M1197 419L1185 429 1161 428 1156 446 1150 463 1144 481 1138 498 1140 523 1144 550 1147 575M1197 418L1183 427 1154 422 1148 439 1142 456 1136 473 1130 489 1133 515 1140 545 1145 573M1196 417L1181 425 1148 415 1141 431 1135 448 1128 465 1121 480 1126 508 1135 541 1144 572M1195 417L1178 423 1141 408 1134 424 1127 440 1120 457 1112 472 1118 501 1131 536 1142 571',\n 'triceps-r':\n 'M920 448L920 432 924 419 931 407 938 396 947 385M921 448L923 434 929 422 937 410 942 397 948 385M922 449L927 436 935 424 944 413 946 399 949 386M923 449L930 437 941 427 950 416 950 401 950 386M920 529L923 514 925 499 929 485 932 470 936 456 945 443 955 431M922 529L927 515 929 501 934 487 938 472 942 458 950 445 956 431M923 530L930 517 933 502 939 488 945 474 949 460 955 446 958 432M903 516L903 502 905 487 908 473 909 458 909 443M905 517L907 502 911 488 914 473 913 459 910 443',\n 'triceps-l':\n 'M1220 384L1229 395 1236 407 1243 419 1247 432 1247 447M1219 384L1225 397 1230 410 1237 422 1244 434 1246 448M1218 385L1221 399 1223 413 1232 424 1240 436 1245 449M1217 385L1217 400 1217 416 1226 427 1237 437 1243 449M1212 431L1222 443 1232 456 1235 471 1238 485 1242 500 1244 515 1247 530M1211 431L1217 445 1225 458 1229 473 1233 487 1238 501 1241 516 1245 530M1209 432L1212 447 1219 460 1222 475 1228 489 1234 502 1237 517 1244 530M1258 443L1258 458 1259 473 1262 487 1264 502 1264 516M1257 443L1254 458 1253 473 1256 488 1259 502 1262 516',\n 'lower-back-r':\n 'M999 571L1005 581 1010 592 1010 603 996 614 989 625M997 571L1000 581 1004 592 1003 603 993 614 988 625M996 571L996 581 997 592 997 603 990 614 988 625M994 571L991 581 991 592 990 603 987 614 987 625M1070 494L1070 509 1071 525 1071 540 1070 556 1070 571 1069 586 1068 602 1070 617 1071 633M1069 494L1068 509 1067 525 1066 540 1065 556 1063 571 1062 586 1061 602 1064 617 1070 633M1068 494L1066 509 1064 525 1061 540 1059 556 1057 571 1055 586 1053 602 1059 617 1068 633M1067 494L1064 509 1060 525 1057 540 1054 556 1050 571 1047 586 1045 602 1054 617 1066 633M1066 494L1061 509 1057 525 1052 540 1048 556 1044 571 1040 586 1038 602 1048 617 1065 633M1065 494L1059 509 1053 525 1048 540 1043 556 1038 571 1033 586 1030 602 1043 617 1063 633',\n 'lower-back-l':\n 'M1102 493L1108 509 1113 524 1119 539 1124 555 1129 570 1134 586 1137 601 1125 617 1104 632M1101 493L1105 509 1110 524 1114 539 1119 555 1123 570 1127 586 1129 601 1119 617 1103 632M1100 493L1103 509 1107 524 1110 539 1113 555 1116 570 1119 586 1122 601 1114 617 1101 632M1099 493L1101 509 1103 524 1105 539 1108 555 1110 570 1112 586 1114 601 1108 617 1099 632M1098 493L1099 509 1100 524 1101 539 1102 555 1104 570 1105 586 1106 601 1103 617 1097 632M1098 493L1096 509 1096 524 1096 539 1097 555 1097 570 1098 586 1099 601 1098 617 1096 632M1173 571L1176 581 1176 592 1177 603 1179 614 1180 624M1171 571L1172 581 1170 592 1170 603 1176 614 1179 624M1170 571L1167 581 1163 592 1164 603 1173 614 1179 624M1168 571L1162 581 1157 592 1157 603 1170 614 1178 624',\n 'forearm-r':\n 'M856 682L861 667 866 651 870 636 873 620 876 605 878 589 879 573 880 557 879 541M857 682L864 667 870 652 875 637 880 621 883 606 885 590 885 574 883 558 880 541M895 521L900 530 905 539 905 549 903 559 901 569M894 521L897 530 899 540 899 550 899 559 900 569M842 681L848 665 852 650 856 634 858 618 861 601 863 585 866 569 868 553M843 681L850 666 855 650 858 634 861 618 864 602 866 586 868 569 869 553M867 678L875 663 882 648 888 633 894 618 900 602 906 587 912 572 920 557M868 678L876 664 883 649 890 634 896 619 903 604 910 589 916 574 923 559',\n 'forearm-l':\n 'M1266 569L1263 559 1262 549 1263 540 1267 531 1272 521M1267 569L1268 560 1268 550 1268 540 1270 531 1273 522M1288 541L1287 558 1288 574 1289 589 1291 605 1294 621 1297 636 1301 652 1306 667 1311 682M1286 542L1283 558 1282 575 1282 591 1284 606 1287 622 1292 637 1297 652 1303 667 1310 682M1299 553L1301 569 1304 585 1306 601 1309 617 1311 633 1315 649 1319 665 1325 681M1298 553L1299 569 1301 585 1304 602 1306 618 1309 634 1312 650 1317 666 1324 681M1247 557L1255 572 1261 587 1267 603 1273 618 1279 634 1286 649 1292 664 1300 679M1244 559L1251 574 1257 589 1264 604 1271 619 1278 634 1284 649 1291 664 1300 679',\n 'gluteal-r':\n 'M1045 630L1027 632 1013 638 1002 646 992 656 982 666M1043 628L1023 628 1009 633 999 643 990 653 982 665M1041 626L1018 623 1004 628 995 639 987 651 981 664M1074 657L1075 682 1072 702 1067 721 1062 739 1059 759 1044 768 1018 766M1071 654L1070 676 1065 694 1058 712 1052 729 1048 748 1034 758 1014 761M1068 651L1064 670 1057 687 1049 703 1042 719 1036 737 1025 749 1009 757M1065 648L1058 665 1050 679 1041 694 1032 709 1025 726 1015 739 1005 752M1062 645L1053 659 1042 672 1032 685 1022 699 1014 715 1005 729 1000 748M1060 642L1047 653 1035 665 1023 676 1012 689 1003 704 996 720 995 743M1057 639L1041 648 1027 657 1014 667 1002 679 992 692 986 710 991 738',\n 'gluteal-l':\n 'M1127 626L1149 623 1163 629 1172 639 1180 651 1186 665M1125 628L1144 628 1159 633 1169 643 1178 654 1186 666M1123 630L1140 632 1154 638 1165 647 1175 656 1185 666M1110 639L1125 648 1140 657 1153 667 1165 679 1175 692 1181 710 1176 739M1108 642L1120 653 1132 664 1144 676 1155 689 1164 703 1171 720 1172 743M1105 645L1114 659 1125 672 1135 685 1145 699 1153 715 1162 730 1167 748M1102 648L1109 664 1117 679 1126 694 1135 709 1142 726 1152 739 1163 752M1099 651L1103 670 1110 687 1118 703 1125 719 1131 737 1142 749 1158 757M1096 654L1097 676 1103 694 1109 712 1115 729 1119 748 1133 758 1153 761M1093 656L1092 681 1095 701 1100 720 1105 739 1108 759 1123 768 1149 766',\n 'adductors-r':\n 'M1063 787L1066 801 1065 816 1064 830 1061 845 1058 860M1056 787L1060 802 1062 816 1062 830 1060 845 1057 860M1048 788L1054 802 1058 816 1060 830 1059 845 1057 860',\n 'adductors-l':\n 'M1109 859L1105 844 1103 830 1102 816 1101 801 1104 787M1110 859L1107 844 1105 830 1105 816 1107 802 1111 787M1110 859L1108 844 1107 830 1109 816 1113 802 1119 788',\n 'hamstring-r':\n 'M966 748L970 764 973 781 975 797 976 813 976 829 976 845 975 862 975 878 976 894 978 910M964 749L966 765 968 781 969 797 970 813 970 829 971 846 972 862 972 878 974 894 977 910M1021 981L1020 962 1020 944 1021 926 1022 908 1023 890 1025 872 1027 854 1028 836 1029 818 1029 799M1022 981L1022 963 1023 944 1024 926 1026 908 1028 890 1031 872 1034 854 1035 836 1034 818 1031 800M1023 981L1025 963 1026 945 1028 927 1030 909 1033 891 1036 873 1040 855 1041 837 1039 818 1034 800M980 986L984 964 988 943 992 922 994 900 995 879 995 857 996 835 996 814 997 792 995 770M981 986L987 965 993 943 997 922 1000 901 1002 879 1002 858 1003 836 1003 814 1004 793 999 771M982 986L990 965 997 944 1002 923 1006 901 1008 880 1009 858 1010 837 1010 815 1011 793 1003 771M1034 999L1036 983 1038 968 1038 953 1039 937 1041 922 1044 907 1047 892 1051 877 1052 862M1034 999L1037 984 1039 968 1040 953 1041 938 1043 922 1046 907 1050 892 1053 877 1053 862',\n 'hamstring-l':\n 'M1172 770L1170 792 1171 814 1171 835 1171 857 1172 879 1173 900 1175 922 1178 943 1183 964 1187 986M1168 771L1163 793 1164 814 1164 836 1165 858 1165 879 1167 901 1170 922 1174 943 1180 965 1186 986M1164 771L1156 793 1157 815 1157 837 1158 858 1159 880 1161 901 1165 923 1170 944 1177 965 1185 986M1138 799L1138 818 1139 836 1140 854 1142 872 1144 890 1145 908 1146 927 1147 945 1147 963 1146 981M1136 800L1133 818 1132 836 1133 854 1137 873 1139 891 1141 909 1142 927 1144 945 1145 963 1145 981M1134 800L1128 818 1126 837 1127 855 1131 873 1134 891 1137 909 1139 927 1140 945 1142 963 1144 982M1115 863L1116 878 1120 893 1123 908 1127 923 1128 938 1129 953 1130 969 1131 984 1133 999M1114 863L1114 878 1118 893 1121 908 1124 923 1126 938 1127 954 1128 969 1130 984 1133 999M1189 909L1191 893 1192 877 1192 860 1191 844 1191 828 1191 812 1192 796 1194 780 1197 764 1201 748M1190 909L1193 893 1195 877 1195 861 1196 845 1196 828 1197 812 1198 796 1199 780 1201 764 1203 748',\n 'calves-r':\n 'M984 1144L981 1127 979 1110 978 1094 978 1077 978 1061 979 1044 981 1027 985 1011 991 995 1000 979M989 1144L988 1127 986 1111 986 1094 986 1078 986 1061 987 1044 988 1028 991 1011 995 995 1001 979M993 1144L994 1128 993 1111 993 1095 993 1078 993 1061 994 1045 995 1028 997 1012 999 995 1003 979M993 1166L996 1181 998 1195 999 1210 1000 1225 1002 1239 1003 1254 1003 1269 1003 1284M987 1167L990 1181 993 1196 995 1210 996 1225 998 1240 999 1254 1001 1269 1002 1284M1013 979L1019 995 1025 1012 1030 1028 1033 1044 1035 1061 1036 1077 1037 1093 1036 1110 1032 1127 1023 1144M1013 979L1016 996 1021 1012 1025 1028 1027 1044 1029 1061 1030 1077 1030 1094 1029 1110 1026 1127 1020 1144M1012 979L1014 996 1017 1012 1020 1028 1022 1045 1023 1061 1024 1078 1024 1094 1023 1111 1021 1127 1017 1144M1011 979L1012 996 1014 1012 1016 1029 1017 1045 1017 1061 1018 1078 1017 1094 1017 1111 1015 1127 1014 1144M1014 1284L1014 1267 1014 1251 1014 1234 1015 1218 1016 1202 1016 1185 1017 1169M1014 1284L1015 1267 1017 1251 1018 1235 1020 1218 1021 1202 1022 1186 1022 1169',\n 'calves-l':\n 'M1167 979L1176 995 1182 1011 1186 1027 1188 1044 1189 1060 1189 1077 1189 1094 1188 1110 1186 1127 1183 1144M1166 979L1172 995 1176 1011 1179 1028 1180 1044 1181 1061 1182 1077 1181 1094 1181 1111 1179 1127 1178 1144M1164 979L1168 995 1170 1012 1172 1028 1173 1045 1174 1061 1174 1078 1174 1095 1174 1111 1173 1128 1174 1144M1144 1144L1135 1127 1131 1110 1130 1094 1131 1077 1132 1061 1134 1045 1137 1028 1142 1012 1148 996 1154 980M1147 1144L1141 1127 1138 1110 1137 1094 1137 1078 1138 1061 1140 1045 1142 1028 1146 1012 1151 996 1154 980M1150 1144L1146 1127 1144 1111 1143 1094 1143 1078 1144 1061 1145 1045 1147 1029 1150 1012 1153 996 1155 980M1153 1144L1152 1128 1150 1111 1150 1095 1150 1078 1150 1062 1150 1045 1151 1029 1153 1013 1155 996 1156 980M1164 1284L1164 1269 1164 1254 1165 1240 1167 1225 1168 1210 1169 1195 1171 1181 1174 1166M1165 1284L1166 1269 1168 1255 1169 1240 1171 1225 1172 1211 1174 1196 1177 1181 1180 1167M1150 1169L1151 1186 1151 1202 1152 1218 1153 1235 1153 1251 1153 1268 1153 1284M1145 1169L1145 1186 1146 1202 1147 1219 1149 1235 1150 1251 1152 1268 1153 1284',\n 'ankles-r':\n 'M990 1267L993 1277M1017 1305L1019 1316M989 1267L992 1278M1010 1307L1016 1317M988 1267L990 1278M1003 1310L1014 1318M988 1267L989 1279 996 1288 996 1300 996 1312 1011 1319',\n 'ankles-l':\n 'M1148 1316L1150 1305 1149 1293M1174 1277L1177 1267M1151 1317L1157 1307M1175 1278L1178 1267M1154 1318L1164 1310M1177 1278L1179 1267M1156 1319L1170 1312 1171 1300 1171 1288 1178 1279 1179 1267',\n 'feet-r':\n 'M966 1326L977 1327 989 1328 1000 1329 1012 1330 1023 1334M965 1328L977 1331 988 1333 1000 1334 1011 1335 1023 1337',\n 'feet-l':\n 'M1145 1333L1157 1330 1168 1329 1180 1328 1191 1327 1202 1326M1146 1337L1157 1335 1169 1334 1180 1333 1192 1331 1203 1328',\n 'hands-r':\n 'M774 744L781 738 789 732 795 724 799 716 805 708M776 745L784 740 792 734 797 726 801 717 805 709M783 792L788 783 793 774 798 765 804 756 809 748M784 793L790 784 796 776 801 767 807 758 812 750M818 743L814 727 818 716 825 707 835 699 852 695M822 745L821 731 825 720 832 710 840 702 854 696M826 747L828 734 832 724 838 714 845 704 856 697M830 749L835 738 839 727 844 717 850 707 859 699M833 751L841 742 846 731 850 720 855 710 861 700M837 753L848 745 852 734 856 723 860 712 864 701M841 755L855 749 859 738 862 727 865 715 866 702M801 810L805 800 809 789 814 779 818 769 822 758M803 811L808 801 812 790 817 780 821 770 825 760M828 812L829 803 831 793 833 783 834 773 836 763M829 813L832 803 834 793 835 784 837 774 839 764M854 798L854 790 854 783 854 776 854 768 855 761M855 798L856 791 856 783 856 776 856 768 857 761',\n 'hands-l':\n 'M1316 694L1333 699 1342 708 1350 717 1353 728 1347 744M1314 696L1328 702 1336 711 1343 720 1346 732 1344 746M1311 697L1323 704 1330 714 1336 724 1339 735 1340 748M1309 698L1318 707 1324 717 1329 727 1332 738 1336 749M1306 699L1312 709 1317 720 1322 731 1325 742 1332 751M1304 701L1307 712 1311 723 1315 734 1318 745 1328 753M1301 702L1302 714 1305 726 1308 737 1311 748 1324 755M1362 709L1368 716 1373 724 1378 732 1385 738 1393 744M1362 709L1366 718 1370 726 1375 734 1383 740 1391 745M1358 748L1364 756 1369 765 1374 774 1379 783 1384 793M1355 750L1360 758 1366 767 1372 776 1377 785 1383 793M1345 758L1349 769 1353 779 1358 789 1362 800 1366 810M1342 760L1346 770 1350 780 1355 790 1359 801 1364 811M1312 761L1313 768 1314 776 1313 783 1313 791 1313 798M1310 761L1311 768 1311 776 1311 783 1311 791 1312 798M1331 763L1333 773 1334 783 1336 793 1338 803 1339 812M1328 764L1330 774 1332 783 1333 793 1335 803 1338 813',\n },\n 'female-front': {\n neck: 'M320 287L319 282 318 276 317 271 317 265 317 259M321 287L322 282 323 276 324 271 324 265 324 259',\n 'neck-r':\n 'M290 292L290 295 291 299 291 303 292 307 292 310M289 292L288 296 287 299 286 303 286 307 289 311M293 254L298 267 304 279 310 292 316 304 318 319M292 254L294 268 299 281 306 294 312 306 316 319',\n 'neck-l':\n 'M323 319L325 305 331 292 337 279 343 267 348 254M324 319L329 306 335 294 341 281 347 268 349 254M348 311L349 307 350 303 350 299 351 296 351 292M351 311L355 307 355 303 354 299 353 296 352 292',\n 'trapezius-r':\n 'M242 296L251 293 260 289 268 284 276 279 284 275M243 297L254 297 263 295 270 289 278 283 285 276',\n 'trapezius-l':\n 'M357 275L365 279 373 284 381 289 389 293 398 296M356 276L363 283 370 289 378 295 387 297 398 297',\n 'deltoids-r':\n 'M169 352L172 336 176 321 184 307 194 296 208 287M170 353L175 338 181 323 188 310 198 299 211 289M179 367L187 354 195 341 203 329 212 317 222 306 232 295M181 368L191 357 200 345 209 333 217 321 225 308 234 296M182 369L195 360 206 349 215 337 222 324 229 310 235 297M183 370L200 363 211 353 220 341 227 328 232 313 236 297',\n 'deltoids-l':\n 'M432 287L447 296 457 307 465 320 470 336 473 352M429 289L442 298 453 310 460 323 466 338 471 353M409 295L419 306 429 317 438 329 446 341 454 354 462 367M407 296L416 308 424 321 432 333 441 345 450 357 460 368M406 297L412 310 419 324 426 337 435 349 446 360 459 369M405 298L409 313 414 328 420 341 429 353 441 363 458 370',\n 'chest-r':\n 'M235 352L257 336 275 332 292 333 307 337 312 369 316 404M232 359L253 347 271 344 287 347 302 350 309 378 315 407M230 367L250 357 266 357 282 360 297 364 305 387 313 410M227 374L246 368 262 369 277 373 292 377 302 396 312 414M224 381L242 379 257 382 272 386 288 390 299 405 311 417M221 389L238 390 253 394 268 399 283 404 295 415 310 421M219 396L234 401 248 407 263 412 278 417 292 424 309 424',\n 'chest-l':\n 'M422 396L407 401 393 407 378 412 363 417 349 424 332 424M420 389L403 390 388 394 373 399 358 404 346 415 331 421M417 382L399 379 384 382 369 386 353 390 342 405 330 417M414 374L395 368 379 369 364 373 349 377 339 396 329 414M411 367L391 357 375 357 359 360 344 364 336 387 327 410M409 359L387 347 370 344 354 347 339 350 332 378 326 407M406 352L384 336 365 332 349 333 334 337 329 369 325 403',\n 'biceps-r':\n 'M157 472L159 455 161 439 165 424 170 409 178 395 194 385M159 472L163 457 167 441 172 426 177 412 184 397 197 386M161 473L167 458 173 444 178 429 184 415 190 400 200 387M163 474L171 460 178 446 185 432 191 417 195 402 202 388M165 475L175 462 184 449 192 435 197 420 201 405 205 389',\n 'biceps-l':\n 'M447 385L463 395 471 409 476 424 480 439 482 455 484 472M444 386L457 397 464 412 469 426 474 441 478 457 482 472M441 387L451 400 457 415 463 429 468 444 474 458 480 473M439 388L445 402 450 417 456 432 463 446 470 460 478 474M436 389L440 405 443 420 449 435 457 449 466 462 476 475',\n 'triceps-r':\n 'M168 490L178 481 186 471 194 461 200 449 205 437M170 491L180 483 188 473 196 462 202 450 207 438',\n 'triceps-l':\n 'M436 437L441 449 447 461 454 471 463 481 473 490M434 438L439 450 445 462 453 473 461 483 471 491',\n 'obliques-r':\n 'M225 417L230 424 234 431 238 439 239 449 239 459M225 417L228 425 232 432 236 440 237 450 239 459M243 457L246 460 249 463 252 467 254 471 255 475M242 458L244 462 247 465 250 468 252 472 254 476M240 470L243 475 246 479 250 483 253 488 254 494M240 470L242 476 244 481 247 486 251 490 254 494M244 443L248 445 251 447 255 449 256 453 256 457M243 444L246 446 249 449 252 451 253 454 256 458M246 501L252 516 253 536 253 555 254 575 256 593 259 611M244 502L248 519 248 539 249 558 249 578 251 597 257 612M242 503L244 522 244 542 244 562 244 582 246 600 255 614M244 426L247 429 251 431 256 433 260 435 261 439M243 427L246 430 249 433 253 435 257 437 260 440',\n 'obliques-l':\n 'M398 443L395 446 392 449 389 451 387 454 385 458M397 443L393 445 390 447 386 449 385 453 385 457M398 427L395 430 392 433 388 435 384 437 381 440M398 426L394 429 390 431 385 433 381 435 380 439M399 503L397 522 397 542 397 562 397 581 395 600 387 614M397 502L393 519 393 539 392 558 392 578 390 596 384 612M395 501L389 516 388 536 388 555 387 574 385 593 382 610M399 458L397 462 394 465 391 468 389 472 387 476M398 457L395 460 392 463 389 467 387 471 386 475M401 470L400 476 397 481 394 486 390 490 387 495M401 470L398 475 395 479 391 483 388 488 386 494M416 417L413 424 409 432 405 440 404 450 402 459M416 416L411 424 407 431 403 438 402 448 402 458',\n 'abs-r':\n 'M306 442L303 450 302 457 301 465 274 473 264 481M302 442L297 450 295 457 293 465 272 473 264 481M298 442L291 450 287 457 286 465 269 473 263 481M294 442L284 450 280 457 278 465 267 473 263 481M291 442L278 450 273 457 270 465 264 473 262 481M290 564L302 580 303 596 304 611 305 627 307 642 308 658 308 674M285 564L294 580 296 596 297 611 299 627 301 642 303 658 305 674M279 564L287 580 289 596 290 611 293 627 295 642 299 658 302 674M274 564L279 580 281 596 284 611 286 627 290 642 294 658 299 674M268 564L272 580 274 596 277 611 280 627 284 642 289 658 296 674M307 475L304 482 303 490 302 498 302 506 274 514M303 475L298 482 295 490 294 498 294 506 272 514M300 475L292 482 288 490 286 498 286 506 270 514M297 475L286 482 281 490 278 498 278 506 268 514M293 475L280 482 273 490 270 498 270 506 266 514M298 518L302 526 302 534 302 542 302 550 308 557M294 518L295 526 294 534 294 542 294 550 307 557M290 518L287 526 286 534 286 542 286 550 305 557M286 518L279 526 278 534 278 542 278 550 304 557M282 518L271 526 269 534 269 542 270 550 303 557',\n 'abs-l':\n 'M359 518L370 526 372 534 371 542 371 550 338 558M355 518L362 526 363 534 363 542 363 550 337 558M351 518L354 526 355 534 355 542 355 550 335 558M347 518L346 526 347 534 347 542 347 550 334 558M343 518L339 526 339 534 339 542 339 550 333 558M347 475L361 482 368 490 371 498 371 506 375 514M344 475L355 482 360 490 363 498 363 506 373 514M341 475L349 482 353 490 355 498 355 506 371 514M337 475L343 482 345 490 347 498 347 506 370 514M334 475L337 482 338 490 339 498 339 506 368 514M372 564L369 580 367 595 364 611 361 627 357 642 352 658 344 674M367 564L362 580 360 595 357 611 355 627 351 642 347 658 342 674M362 564L354 580 352 595 350 611 348 627 346 642 342 658 339 674M357 564L347 580 345 595 344 611 342 627 340 642 338 658 336 674M351 564L339 580 338 595 337 611 336 627 334 642 333 658 333 674M350 442L363 450 368 458 370 466 377 473 379 481M347 442L357 450 361 458 363 466 374 473 378 481M343 442L350 450 354 458 355 466 372 473 378 481M339 442L344 450 346 458 347 466 370 473 377 481M335 442L338 450 339 458 339 466 368 473 377 481',\n 'forearm-r':\n 'M84 644L92 631 102 618 111 605 120 593 130 580 140 568 152 558M84 644L94 632 104 620 114 608 123 595 133 583 143 570 153 559M88 646L99 636 110 625 120 614 130 603 139 591 148 578 156 566 164 553M89 646L100 636 111 626 122 615 132 604 141 592 150 580 158 567 165 554M76 639L84 624 91 608 98 593 104 578 111 562 118 547 126 532 134 517 142 502 153 489M77 639L85 624 92 609 100 594 107 579 115 564 123 550 131 535 139 520 146 505 155 490M78 640L86 625 94 610 102 595 110 581 119 566 128 552 137 537 144 522 151 507 157 491M142 550L149 542 156 535 164 528 170 518 175 509M143 552L152 545 160 538 170 532 174 522 177 510',\n 'forearm-l':\n 'M466 509L471 519 477 528 485 535 493 543 499 551M464 510L467 522 471 533 481 539 490 545 498 552M477 553L485 566 493 578 502 590 511 602 520 614 530 625 541 635 552 645M476 554L483 567 491 580 500 592 509 604 519 615 529 626 540 636 551 646M489 558L501 568 511 581 521 593 530 606 540 618 549 631 557 644M488 559L498 570 508 583 518 595 527 608 537 620 547 633 557 645M488 489L499 502 507 517 515 532 523 547 530 562 537 577 543 593 550 608 557 623 564 639M486 490L495 505 502 520 510 535 518 549 526 564 533 579 541 594 549 609 556 624 564 639M484 491L490 507 497 522 504 537 513 552 521 566 530 581 539 595 547 610 554 625 563 639',\n 'hands-r':\n 'M57 717L44 701 47 689 52 678 58 668 65 657M60 717L52 703 54 691 59 680 64 669 69 658M62 718L59 705 62 693 66 682 69 670 73 659M65 719L66 707 70 695 73 684 75 672 76 660M8 689L17 685 25 679 33 674 41 668 49 662M9 691L18 687 26 681 35 676 43 670 50 663M14 747L17 738 21 730 24 721 28 712 32 704M16 748L19 739 23 731 27 722 31 713 34 705M22 764L25 754 29 744 32 734 36 725 40 715M24 764L28 755 32 745 35 735 39 726 42 716M34 762L37 754 40 747 44 739 47 731 50 723M36 763L39 755 43 748 46 740 49 732 52 724M54 754L55 748 57 742 59 736 62 731 65 725M54 754L57 748 59 743 61 737 63 731 65 725',\n 'hands-l':\n 'M576 657L583 668 589 678 594 689 597 701 584 717M572 658L577 669 582 680 587 691 589 703 581 717M568 659L572 670 575 682 579 693 582 705 579 718M565 660L566 672 568 684 571 695 575 707 576 718M592 662L600 668 608 673 616 679 624 685 633 689M591 663L598 670 606 676 614 682 623 687 632 691M609 704L613 712 617 721 620 730 624 739 627 748M607 704L610 713 614 722 618 731 622 740 625 749M601 715L605 725 609 734 612 744 616 754 619 764M599 716L602 726 605 735 609 745 613 754 617 764M591 723L594 731 597 739 601 746 604 754 607 762M589 724L591 732 595 740 598 747 602 755 605 763M576 725L579 730 582 736 584 742 586 748 587 754M575 725L578 731 580 737 582 743 584 748 587 754',\n 'adductors-r':\n 'M292 772L294 757 291 742 294 727 298 712 303 698M294 772L297 757 296 742 299 727 302 713 304 698M236 619L244 631 253 644 262 656 272 668 282 680 285 695 277 715M235 619L243 632 251 645 259 658 267 670 276 683 279 698 275 717M235 619L242 633 249 646 256 659 263 672 270 686 273 701 273 718M226 620L232 645 241 669 251 692 261 716 270 740 279 764 287 788 293 813 297 838 301 864M225 620L230 646 237 670 246 694 255 718 264 742 273 766 282 790 288 814 295 839 300 864',\n 'adductors-l':\n 'M340 864L344 838 348 813 354 788 362 764 371 740 380 716 390 693 400 669 408 645 415 621M341 864L346 839 353 814 359 790 368 766 377 742 386 718 395 694 404 670 411 646 416 621M364 716L356 695 359 680 369 668 379 656 388 644 397 631 405 618M366 717L362 698 365 683 374 670 382 658 390 645 398 632 406 619M368 718L368 701 371 686 378 672 385 659 392 646 399 632 406 619M338 698L343 712 347 727 350 742 347 757 349 772M337 698L339 713 342 728 345 743 344 758 347 773',\n 'quadriceps-r':\n 'M216 636L223 667 231 698 239 728 249 758 257 789 261 820 264 851 266 883 266 914 264 947M215 637L219 668 225 698 233 729 241 759 250 790 255 821 259 852 263 883 263 915 262 947M213 637L215 668 220 699 226 730 234 761 242 791 248 822 254 853 260 884 260 915 259 948M212 637L212 669 215 700 220 731 226 762 234 793 241 823 248 854 256 884 258 916 257 948M210 637L208 670 209 701 213 732 219 763 226 794 234 824 243 855 253 885 255 916 254 948M200 731L202 753 206 775 210 796 215 817 221 838 227 859 233 880 237 902 239 924 241 945M200 731L200 754 202 775 206 797 210 818 215 840 221 861 226 882 231 903 235 924 239 946M199 732L198 754 199 776 201 798 205 819 209 841 214 862 220 883 225 904 231 925 236 946M280 824L285 839 289 854 292 870 294 885 295 900 295 916 295 931 293 947 289 963M279 824L282 839 286 854 288 870 290 885 290 901 290 916 289 932 287 947 285 963M278 824L280 839 283 855 285 870 286 885 285 901 284 916 283 932 282 947 282 963',\n 'quadriceps-l':\n 'M377 947L375 914 374 882 377 851 380 819 384 788 392 758 402 728 410 697 418 667 425 636M379 947L378 915 378 883 382 852 386 821 391 790 400 759 408 729 416 698 422 667 426 636M382 947L380 915 381 884 387 853 393 822 399 791 407 760 415 730 421 699 425 668 428 636M384 948L383 916 385 884 393 854 400 823 407 792 415 762 421 731 426 700 429 669 429 637M387 948L386 916 388 885 398 855 407 824 415 794 422 763 428 732 432 701 433 669 431 637M400 946L402 924 404 902 408 881 414 859 420 838 426 817 431 796 435 775 438 753 440 731M402 946L406 925 410 903 414 882 420 861 426 840 431 818 435 797 438 775 441 753 441 731M404 947L410 926 415 904 421 883 427 862 432 841 436 819 440 798 442 776 443 754 442 731M352 963L348 947 346 932 346 916 346 901 347 885 349 870 352 855 356 839 361 824M356 963L354 947 352 932 351 916 351 901 351 885 352 870 355 855 358 840 362 824M359 963L359 947 358 932 357 917 356 901 355 886 356 870 358 855 361 840 363 824',\n 'knees-r':\n 'M270 979L272 988 271 996 271 1005 270 1014 268 1023M265 979L265 988 265 997 266 1005 266 1014 267 1023M261 979L258 988 259 997 261 1006 263 1014 266 1023M241 989L244 1002 248 1015 252 1027 257 1040 264 1051M241 989L243 1003 245 1016 248 1029 252 1041 263 1052M272 1067L275 1050 280 1034 284 1017 286 1000 287 983M273 1067L277 1051 283 1035 287 1018 288 1001 288 983',\n 'knees-l':\n 'M373 1022L371 1014 370 1005 370 996 369 987 371 979M374 1023L375 1014 375 1005 376 996 376 988 376 979M375 1023L378 1014 380 1005 382 997 383 988 380 979M354 983L355 1000 357 1017 361 1034 366 1050 368 1067M353 983L353 1001 354 1018 358 1034 363 1051 367 1067M377 1051L384 1040 389 1027 393 1015 397 1002 400 989M378 1052L389 1042 393 1029 396 1016 398 1003 400 989',\n 'tibialis-r':\n 'M241 1066L245 1088 250 1110 255 1132 259 1154 262 1176 265 1198 267 1220 270 1243 274 1265 278 1287M239 1066L241 1089 245 1111 250 1133 255 1155 259 1177 262 1199 265 1221 268 1243 272 1265 277 1287',\n 'tibialis-l':\n 'M362 1287L367 1265 371 1243 374 1220 376 1198 379 1176 382 1154 386 1132 391 1110 396 1088 400 1066M364 1287L369 1265 373 1243 376 1221 379 1199 382 1177 386 1155 391 1133 396 1111 400 1089 402 1066',\n 'calves-r':\n 'M281 1266L279 1245 278 1225 278 1205 278 1184 279 1164 279 1144 278 1124 278 1103 281 1083 285 1063M282 1266L282 1245 282 1225 283 1205 284 1185 285 1164 285 1144 284 1124 283 1103 285 1083 286 1063M283 1266L284 1245 286 1225 288 1205 290 1185 292 1164 291 1144 290 1124 288 1104 288 1083 288 1063M284 1266L287 1246 290 1225 293 1205 296 1185 298 1165 297 1144 295 1124 293 1104 292 1083 289 1063M233 1100L236 1119 238 1137 241 1155 245 1173 249 1191 253 1210 256 1228 260 1246 264 1264 270 1282M232 1101L232 1120 233 1138 235 1157 238 1175 243 1193 248 1211 252 1229 257 1247 262 1264 268 1282',\n 'calves-l':\n 'M356 1064L360 1084 363 1104 363 1124 362 1144 362 1164 363 1184 363 1205 363 1225 362 1245 360 1265M355 1064L356 1084 358 1104 357 1124 356 1144 356 1165 357 1185 358 1205 359 1225 359 1245 359 1265M353 1064L353 1084 353 1104 351 1124 350 1145 349 1165 351 1185 353 1205 355 1225 357 1245 358 1265M352 1064L349 1084 347 1104 345 1124 344 1145 343 1165 345 1185 348 1205 351 1225 354 1245 357 1265M371 1282L377 1264 381 1246 385 1228 388 1210 392 1192 396 1174 399 1156 403 1138 405 1119 407 1101M373 1282L379 1264 384 1247 389 1229 393 1211 398 1193 402 1175 406 1157 408 1139 409 1120 409 1101',\n 'ankles-r':\n 'M271 1300L277 1307 283 1313 285 1322 286 1331 287 1340M269 1301L273 1308 279 1315 282 1323 284 1332 286 1340M266 1324L275 1338 279 1353 285 1367 290 1382 291 1399M265 1324L271 1339 273 1355 280 1369 286 1384 290 1399M264 1325L267 1340 267 1357 275 1371 283 1385 289 1399M263 1325L263 1342 261 1359 270 1373 280 1386 288 1400',\n 'ankles-l':\n 'M354 1339L355 1330 356 1321 358 1313 364 1306 370 1300M355 1340L357 1331 359 1323 362 1315 368 1308 372 1300M350 1400L351 1383 355 1368 361 1353 366 1338 374 1325M351 1400L354 1384 361 1370 368 1356 370 1340 376 1325M351 1400L357 1386 366 1372 374 1358 374 1341 377 1325M352 1400L361 1387 371 1374 380 1360 378 1342 378 1326',\n 'feet-r':\n 'M229 1421L236 1415 244 1409 251 1402 256 1393 265 1389M229 1422L239 1418 248 1414 256 1408 261 1399 268 1392M230 1423L242 1421 252 1419 260 1413 265 1404 271 1395M231 1423L245 1424 257 1423 265 1419 269 1409 273 1399M283 1403L285 1408 287 1412 288 1417 288 1422 288 1427M282 1403L282 1408 283 1413 283 1418 283 1423 285 1427',\n 'feet-l':\n 'M376 1389L385 1393 390 1402 397 1409 404 1415 412 1421M373 1392L380 1398 385 1407 392 1414 401 1418 411 1422M370 1395L376 1403 380 1413 388 1419 398 1421 410 1423M368 1398L371 1409 375 1419 384 1423 396 1425 409 1424M353 1427L353 1422 353 1417 354 1412 356 1408 358 1403M356 1427L358 1423 358 1418 358 1413 359 1408 359 1403',\n },\n 'female-back': {\n 'neck-r':\n 'M1087 272L1107 268 1116 258 1120 247 1122 234 1126 221M1088 273L1113 271 1120 261 1123 248 1125 235 1127 222M1089 273L1119 274 1124 263 1126 250 1127 236 1129 223M1091 274L1125 277 1128 265 1129 251 1130 238 1131 224',\n 'neck-l':\n 'M1162 220L1163 233 1166 246 1170 258 1178 268 1198 272M1160 221L1161 234 1162 247 1166 260 1172 271 1196 273M1157 222L1158 236 1159 249 1162 262 1166 273 1195 273M1155 223L1156 237 1156 250 1158 264 1160 276 1194 274',\n 'trapezius-r':\n 'M1051 281L1077 283 1098 289 1116 296 1129 307 1131 325 1133 343 1134 362 1135 380 1137 398M1050 281L1075 285 1094 291 1111 300 1123 311 1125 329 1127 347 1130 365 1132 382 1136 399M1049 282L1072 286 1090 294 1105 304 1116 316 1119 333 1122 350 1125 367 1129 384 1135 400M1048 283L1070 288 1086 297 1099 307 1110 320 1113 337 1117 354 1121 370 1127 386 1134 401M1047 283L1067 290 1082 299 1094 311 1103 324 1107 341 1112 357 1117 373 1124 388 1132 401M1046 284L1064 291 1078 302 1088 314 1096 328 1101 344 1106 360 1113 376 1121 390 1131 402M1045 285L1062 293 1074 304 1083 318 1090 333 1095 348 1101 364 1108 378 1118 391 1130 403',\n 'trapezius-l':\n 'M1149 399L1150 381 1152 362 1153 344 1154 325 1156 307 1169 296 1187 289 1209 283 1235 281M1150 400L1153 383 1156 365 1158 347 1160 329 1163 311 1175 300 1191 291 1211 285 1236 281M1151 400L1156 384 1160 368 1163 351 1166 333 1169 316 1181 304 1195 294 1214 286 1237 282M1152 401L1159 386 1164 370 1169 354 1172 337 1176 320 1186 307 1199 296 1216 288 1238 283M1153 402L1162 388 1168 373 1174 357 1178 341 1182 324 1192 311 1204 299 1219 289 1239 283M1154 402L1164 390 1173 376 1179 361 1184 345 1189 328 1197 314 1208 302 1221 291 1240 284M1155 403L1167 392 1177 379 1184 364 1190 349 1196 333 1203 318 1212 304 1224 293 1241 285',\n 'deltoids-r':\n 'M992 366L993 349 996 333 1001 318 1009 306 1020 296 1039 292M993 367L996 350 1001 336 1007 322 1015 311 1026 301 1043 295M994 367L998 352 1005 339 1012 326 1021 315 1032 305 1047 298M994 368L1001 354 1009 342 1017 330 1027 319 1038 310 1051 301',\n 'deltoids-l':\n 'M1251 291L1270 299 1281 313 1287 329 1290 347 1291 367M1247 294L1264 304 1275 317 1282 332 1287 349 1290 367M1242 298L1257 308 1269 321 1278 335 1284 351 1290 368M1237 301L1251 312 1263 325 1273 338 1281 353 1289 368',\n 'upper-back-r':\n 'M1057 319L1062 328 1069 337 1074 346 1079 356 1083 366M1054 322L1057 334 1064 341 1071 349 1077 358 1083 367M1050 326L1051 339 1060 346 1068 353 1075 360 1082 367M1047 329L1046 345 1055 350 1064 356 1073 362 1082 368M1043 333L1041 350 1051 355 1061 359 1071 364 1081 368M1040 336L1035 356 1046 359 1057 363 1069 366 1081 369M1055 383L1076 384 1090 393 1100 405 1110 418 1120 429 1129 443 1132 463 1125 492M1054 384L1073 387 1085 397 1094 411 1104 424 1113 436 1122 451 1124 471 1118 499M1053 385L1070 391 1081 402 1089 416 1098 430 1106 443 1114 458 1116 479 1112 505M1052 386L1066 394 1076 406 1084 421 1092 436 1099 451 1106 466 1108 486 1105 512M1051 387L1063 397 1072 411 1079 426 1086 442 1092 458 1098 474 1100 494 1099 518M1050 388L1060 400 1067 415 1074 431 1079 448 1085 465 1090 482 1093 502 1092 525M1049 388L1057 403 1063 420 1068 437 1073 454 1078 472 1082 490 1085 510 1086 531',\n 'upper-back-l':\n 'M1245 336L1250 356 1239 359 1228 363 1216 366 1204 369M1242 332L1245 350 1235 355 1225 359 1214 364 1204 368M1239 329L1239 345 1230 350 1221 356 1212 362 1203 368M1235 326L1234 339 1226 346 1218 353 1210 360 1203 368M1232 322L1229 334 1221 341 1214 349 1208 358 1203 367M1228 319L1223 328 1217 337 1211 346 1206 356 1202 367M1236 388L1229 403 1223 419 1217 436 1212 454 1207 471 1203 490 1201 510 1200 531M1236 387L1226 400 1218 415 1212 431 1206 448 1200 464 1195 482 1193 502 1193 525M1235 386L1223 397 1214 410 1207 426 1200 442 1193 457 1188 474 1185 494 1187 518M1234 386L1220 394 1209 406 1202 421 1194 435 1186 450 1180 466 1177 486 1180 512M1233 385L1217 391 1205 402 1196 415 1188 429 1179 443 1172 458 1169 478 1174 505M1232 384L1214 388 1201 397 1191 410 1182 423 1172 436 1164 450 1162 471 1167 498M1232 383L1211 385 1196 393 1186 405 1176 417 1165 429 1156 442 1154 463 1161 492',\n 'lower-back-r':\n 'M1069 546L1071 555 1072 565 1073 574 1073 583 1063 592M1068 546L1068 555 1068 565 1068 574 1067 583 1062 592M1133 512L1130 529 1128 545 1126 562 1128 579 1130 595 1131 612M1132 512L1127 529 1121 545 1118 562 1122 579 1126 595 1130 612M1131 512L1123 529 1115 545 1110 562 1116 579 1123 595 1130 612M1130 512L1120 529 1109 545 1102 562 1110 579 1119 595 1129 612M1129 512L1117 529 1103 545 1094 562 1104 579 1116 595 1128 612',\n 'lower-back-l':\n 'M1156 512L1169 528 1182 545 1192 561 1182 578 1170 594 1158 611M1155 512L1165 528 1176 545 1184 561 1176 578 1167 594 1157 611M1154 512L1162 528 1170 545 1176 561 1170 578 1163 594 1156 611M1153 512L1158 528 1164 545 1168 561 1164 578 1159 594 1155 611M1153 512L1155 528 1158 545 1160 561 1158 578 1156 594 1154 611M1218 546L1218 555 1218 564 1218 574 1218 583 1223 592M1217 546L1215 555 1213 564 1212 574 1212 583 1222 592',\n 'triceps-r':\n 'M977 475L978 460 979 444 980 429 983 413 987 399 993 384M978 475L979 460 981 445 983 429 986 414 990 399 994 384M991 479L991 467 991 456 991 444 992 433 993 421M993 479L994 467 994 456 994 444 994 433 994 421M1006 485L1007 470 1008 454 1008 439 1007 423 1007 407 1007 392 1009 376 1016 361M1007 486L1011 470 1013 455 1014 439 1014 423 1014 408 1013 392 1014 376 1017 361M1008 486L1014 470 1019 455 1021 439 1021 424 1021 408 1019 392 1018 376 1019 361',\n 'triceps-l':\n 'M1270 361L1276 376 1278 392 1279 407 1278 423 1278 439 1278 455 1278 470 1280 486M1268 361L1272 376 1272 392 1272 408 1271 424 1271 439 1272 455 1275 470 1279 486M1266 361L1267 377 1266 392 1265 408 1264 424 1265 440 1267 455 1271 471 1278 486M1292 384L1298 398 1302 413 1305 428 1307 444 1308 459 1308 474M1291 384L1296 399 1299 414 1302 429 1304 444 1306 459 1308 475M1292 421L1293 432 1294 444 1295 455 1295 467 1295 479M1292 421L1292 432 1291 444 1291 456 1292 467 1293 479',\n 'forearm-r':\n 'M922 617L927 602 932 588 937 573 943 559 948 544 953 529 958 515M923 618L930 604 937 590 942 575 947 560 952 546 955 530 958 515M903 638L908 622 913 607 919 591 924 576 930 560 936 545 942 530 949 515M907 639L911 623 916 608 921 592 926 576 932 561 937 546 943 530 950 515M972 523L974 515 977 507 981 500 986 493 994 488M973 524L977 517 981 510 986 503 991 496 997 490M934 617L942 603 950 588 957 574 965 560 972 545 981 532 997 523M935 617L945 604 954 591 962 577 970 563 978 549 986 535 998 524',\n 'forearm-l':\n 'M1291 488L1299 493 1304 500 1308 507 1312 515 1314 523M1289 490L1295 496 1299 503 1304 510 1309 517 1313 524M1336 515L1343 530 1350 545 1355 560 1361 576 1367 591 1372 607 1378 622 1382 638M1336 515L1342 530 1348 545 1354 561 1359 576 1365 592 1370 608 1374 623 1378 639M1328 515L1333 530 1338 544 1343 559 1348 573 1353 587 1359 602 1364 616M1327 515L1330 530 1334 545 1338 560 1343 575 1349 589 1355 603 1362 617M1288 523L1305 532 1313 546 1321 560 1328 574 1336 588 1343 603 1351 617M1287 524L1299 535 1307 549 1315 563 1323 577 1332 591 1341 604 1350 617',\n 'hands-r':\n 'M844 757L848 747 852 737 855 728 859 718 863 709M847 758L851 748 854 738 858 729 862 719 865 709M831 683L839 679 848 674 856 668 863 662 871 657M832 684L841 681 849 676 857 671 865 664 872 658M836 743L839 734 842 725 846 716 850 708 854 699M837 743L841 735 845 726 849 718 853 709 856 700M856 757L859 749 862 741 866 733 869 725 872 717M857 757L861 750 865 742 868 734 872 726 874 718M875 747L877 741 879 736 882 730 884 725 887 720M876 747L879 742 881 737 884 731 886 726 888 720M878 711L866 695 868 684 874 673 881 662 887 652M881 712L873 697 876 686 881 675 886 664 891 653M883 712L881 699 884 688 888 677 892 665 895 654M886 713L888 701 891 690 895 679 897 667 898 655',\n 'hands-l':\n 'M1398 652L1405 662 1411 673 1417 684 1419 695 1407 711M1394 653L1399 664 1405 675 1410 686 1412 697 1405 712M1391 654L1394 665 1398 677 1402 688 1405 699 1402 712M1387 655L1388 667 1391 679 1394 690 1398 701 1400 713M1414 656L1422 662 1430 668 1437 674 1446 679 1454 683M1413 658L1421 664 1428 671 1436 676 1444 681 1453 684M1431 699L1436 708 1440 716 1444 725 1447 734 1449 743M1429 700L1433 709 1437 718 1440 726 1444 735 1448 744M1422 708L1426 718 1430 728 1434 737 1438 747 1441 757M1420 709L1423 719 1427 729 1431 738 1435 748 1439 758M1413 717L1416 725 1420 733 1423 741 1426 749 1429 757M1411 718L1414 726 1417 734 1420 742 1424 750 1428 757M1398 720L1401 725 1404 730 1406 736 1408 741 1410 747M1397 720L1399 726 1402 731 1404 737 1407 742 1410 747',\n 'gluteal-r':\n 'M1097 626L1079 629 1065 635 1052 643 1041 652 1031 663 1022 675M1093 621L1074 623 1060 630 1048 639 1038 650 1029 662 1022 675M1088 617L1069 618 1056 626 1045 636 1036 647 1028 660 1022 675M1084 612L1063 612 1051 621 1041 632 1033 644 1026 659 1021 674M1079 608L1058 607 1047 617 1038 628 1030 642 1025 657 1021 674M1133 643L1131 663 1129 684 1127 705 1120 721 1109 733 1097 743 1082 750 1066 758 1053 767 1046 782M1131 642L1127 660 1123 678 1119 697 1111 712 1100 723 1087 733 1073 742 1059 751 1048 762 1043 780M1130 640L1123 656 1117 672 1111 689 1102 703 1090 714 1078 724 1065 734 1052 744 1043 757 1040 777M1129 639L1119 652 1111 666 1103 681 1093 693 1081 704 1069 715 1056 725 1045 737 1037 751 1038 774M1128 638L1116 648 1105 660 1095 673 1083 684 1071 695 1059 705 1048 717 1038 729 1032 746 1035 771M1126 636L1112 645 1099 654 1087 665 1074 675 1062 685 1050 696 1040 708 1031 722 1027 741 1032 769M1125 635L1108 641 1093 648 1079 657 1065 666 1052 676 1041 687 1031 700 1024 715 1021 736 1029 766',\n 'gluteal-l':\n 'M1160 635L1177 641 1193 648 1207 656 1220 666 1233 676 1245 687 1254 700 1262 715 1264 736 1256 767M1159 636L1174 644 1187 654 1199 665 1211 675 1224 685 1235 696 1246 708 1255 722 1259 741 1253 769M1158 637L1170 648 1181 660 1191 673 1202 684 1214 695 1226 705 1238 717 1247 730 1253 746 1250 772M1156 639L1166 652 1175 666 1183 681 1193 693 1205 704 1217 715 1229 725 1240 737 1248 752 1248 775M1155 640L1162 656 1169 672 1175 689 1184 702 1195 714 1208 724 1221 734 1233 744 1243 757 1245 777M1154 641L1158 659 1163 678 1167 697 1174 712 1186 723 1198 733 1212 742 1226 751 1237 762 1242 780M1153 642L1155 663 1157 684 1159 705 1165 721 1176 733 1189 743 1204 750 1219 758 1232 768 1240 783M1206 607L1227 607 1239 617 1248 628 1255 642 1261 657 1265 674M1202 612L1222 613 1234 621 1244 632 1253 644 1259 658 1264 674M1197 617L1217 618 1230 626 1241 636 1250 647 1258 660 1264 675M1193 621L1212 623 1225 630 1237 639 1247 650 1256 662 1263 675M1188 626L1206 628 1221 635 1233 643 1245 652 1255 663 1263 675',\n 'adductors-r':\n 'M1123 756L1123 772 1124 789 1125 806 1125 822 1125 839 1123 856 1121 873 1119 889 1117 906 1116 923M1120 756L1116 773 1117 789 1118 806 1119 823 1119 839 1119 856 1118 873 1117 889 1116 906 1116 923M1117 756L1109 773 1109 789 1111 806 1112 823 1114 839 1114 856 1115 873 1115 889 1115 906 1115 923M1114 756L1102 773 1102 789 1104 806 1106 823 1108 839 1110 856 1112 873 1113 889 1115 906 1115 923M1105 884L1106 899 1107 913 1108 928 1109 943 1110 958 1110 973 1110 988 1109 1003 1107 1018M1104 884L1104 899 1104 913 1104 928 1105 943 1105 958 1105 973 1105 988 1106 1003 1105 1018',\n 'adductors-l':\n 'M1170 923L1168 906 1167 889 1165 872 1163 856 1161 839 1160 822 1161 806 1161 789 1163 772 1162 755M1170 923L1169 906 1169 889 1168 872 1167 856 1166 839 1167 822 1168 806 1169 789 1170 772 1165 756M1170 923L1170 906 1170 889 1171 872 1171 856 1172 839 1173 822 1175 806 1176 789 1177 772 1168 756M1170 923L1171 906 1172 889 1174 872 1175 856 1177 839 1180 822 1182 806 1184 789 1184 772 1172 756M1179 1018L1177 1003 1176 987 1176 972 1176 957 1177 942 1178 927 1179 912 1180 897 1181 882M1180 1018L1180 1003 1180 988 1180 973 1181 957 1181 942 1181 927 1181 912 1181 897 1182 882',\n 'hamstring-r':\n 'M1018 764L1025 779 1030 795 1033 811 1032 827 1030 844M1017 764L1021 780 1025 796 1027 812 1029 828 1029 844M1068 795L1059 815 1054 835 1051 855 1051 874 1052 894 1055 913 1059 933 1062 952 1064 972 1064 992M1064 795L1053 815 1048 835 1045 855 1045 874 1048 894 1051 913 1056 933 1060 952 1062 972 1063 992M1060 795L1048 815 1042 835 1039 855 1040 875 1043 894 1048 914 1052 933 1057 952 1060 972 1062 992M1086 785L1089 806 1090 826 1091 847 1091 867 1092 888 1092 908 1092 928 1092 949 1091 969 1094 990M1085 785L1085 806 1085 826 1085 847 1084 867 1084 888 1084 908 1085 929 1087 949 1088 970 1093 990M1084 785L1082 806 1080 826 1079 847 1077 867 1077 888 1077 908 1079 929 1081 949 1085 970 1092 990M1082 785L1078 806 1075 827 1072 847 1070 868 1070 888 1070 909 1072 929 1076 949 1082 970 1091 990',\n 'hamstring-l':\n 'M1222 991L1221 972 1223 952 1226 933 1230 913 1233 894 1235 874 1234 855 1232 835 1227 815 1218 795M1222 991L1223 972 1226 952 1230 933 1234 913 1238 894 1240 874 1240 855 1238 835 1232 815 1222 795M1223 992L1225 972 1229 952 1233 933 1238 914 1242 894 1245 875 1246 855 1244 835 1238 816 1226 796M1191 989L1194 969 1194 949 1194 928 1194 908 1194 887 1194 867 1194 846 1195 826 1197 805 1199 785M1193 989L1197 969 1199 949 1200 928 1201 908 1201 887 1201 867 1201 846 1200 826 1200 805 1201 785M1194 989L1201 969 1204 949 1207 928 1208 908 1208 887 1208 867 1207 846 1205 826 1204 805 1202 785M1195 990L1204 969 1210 949 1213 929 1215 908 1216 888 1215 867 1213 847 1210 826 1207 805 1203 785M1255 844L1253 827 1252 811 1255 795 1261 779 1268 764M1256 844L1257 828 1258 812 1261 796 1265 780 1269 764',\n 'calves-r':\n 'M1074 1203L1064 1182 1058 1161 1058 1141 1059 1120 1061 1100 1064 1079 1067 1059 1069 1038 1072 1017 1073 997M1077 1203L1070 1182 1065 1162 1064 1141 1065 1120 1066 1100 1068 1079 1070 1059 1073 1038 1074 1018 1076 997M1079 1203L1075 1182 1072 1162 1071 1141 1071 1120 1072 1100 1073 1079 1074 1059 1076 1038 1077 1018 1079 997M1081 1203L1080 1182 1079 1162 1078 1141 1077 1121 1077 1100 1077 1079 1078 1059 1079 1038 1080 1018 1081 997M1069 1212L1074 1227 1079 1243 1083 1259 1087 1275 1089 1291 1091 1307 1093 1323 1094 1340 1094 1356M1066 1212L1070 1228 1075 1244 1080 1259 1083 1275 1086 1291 1089 1307 1090 1324 1092 1340 1092 1356M1092 1008L1098 1026 1102 1044 1106 1062 1110 1080 1113 1099 1116 1117 1118 1135 1120 1154 1121 1173 1121 1191M1091 1008L1095 1026 1098 1044 1102 1063 1105 1081 1107 1099 1110 1118 1112 1136 1114 1155 1114 1174 1117 1192M1090 1008L1092 1026 1095 1045 1097 1063 1099 1082 1101 1100 1103 1119 1105 1137 1107 1156 1108 1174 1114 1192M1089 1008L1090 1027 1091 1045 1092 1064 1094 1082 1095 1101 1097 1119 1099 1138 1100 1157 1102 1175 1111 1193M1103 1349L1104 1333 1106 1318 1107 1302 1108 1286 1108 1271 1109 1255 1110 1239 1111 1224 1113 1208M1106 1349L1107 1333 1108 1318 1109 1302 1110 1286 1111 1271 1112 1255 1113 1239 1114 1224 1114 1208',\n 'calves-l':\n 'M1165 1192L1165 1173 1165 1154 1167 1136 1169 1117 1172 1099 1176 1081 1179 1062 1183 1044 1188 1026 1193 1008M1168 1192L1171 1174 1172 1155 1174 1137 1176 1118 1178 1100 1181 1081 1184 1063 1187 1045 1190 1026 1194 1008M1171 1193L1177 1175 1179 1156 1180 1137 1182 1119 1184 1100 1186 1082 1188 1063 1191 1045 1193 1027 1196 1008M1175 1193L1184 1175 1185 1157 1187 1138 1188 1120 1190 1101 1192 1083 1193 1064 1195 1045 1196 1027 1197 1008M1173 1208L1175 1224 1176 1240 1177 1255 1177 1271 1178 1287 1179 1302 1180 1318 1181 1334 1182 1349M1171 1208L1172 1224 1173 1240 1174 1255 1175 1271 1176 1287 1176 1303 1177 1318 1179 1334 1180 1350M1191 1356L1192 1340 1193 1323 1194 1307 1196 1291 1199 1275 1202 1259 1206 1243 1211 1227 1217 1211M1193 1357L1194 1340 1195 1324 1197 1307 1199 1291 1202 1275 1206 1259 1210 1243 1215 1228 1219 1212M1212 996L1214 1017 1216 1038 1219 1058 1222 1079 1224 1099 1226 1120 1228 1140 1228 1161 1221 1182 1211 1202M1209 997L1211 1017 1213 1038 1215 1058 1217 1079 1219 1099 1220 1120 1221 1140 1221 1161 1216 1182 1209 1202M1207 997L1208 1017 1210 1038 1211 1058 1213 1079 1214 1099 1214 1120 1214 1141 1214 1161 1211 1182 1207 1203M1204 997L1205 1017 1206 1038 1207 1058 1208 1079 1209 1100 1209 1120 1208 1141 1207 1161 1205 1182 1204 1203',\n 'ankles-r':\n 'M1085 1426L1081 1413 1081 1401 1081 1388 1082 1376 1084 1363M1088 1426L1087 1413 1087 1401 1087 1388 1088 1376 1087 1363M1090 1426L1092 1413 1093 1401 1094 1388 1093 1376 1091 1363M1093 1426L1098 1413 1100 1401 1100 1388 1099 1376 1095 1364',\n 'ankles-l':\n 'M1202 1364L1203 1376 1204 1389 1205 1402 1204 1414 1200 1427M1198 1364L1198 1377 1198 1389 1198 1402 1198 1414 1198 1427M1194 1364L1192 1377 1192 1389 1192 1402 1193 1414 1195 1427M1190 1364L1186 1377 1185 1389 1186 1402 1187 1414 1192 1427',\n 'feet-r':\n 'M1072 1424L1074 1412 1076 1400 1079 1388 1083 1376M1077 1424L1081 1412 1083 1401M1093 1426L1103 1415 1103 1403M1098 1427L1110 1416 1109 1404 1108 1392 1106 1379',\n 'feet-l':\n 'M1203 1377L1206 1388 1209 1400 1212 1412 1213 1423M1203 1401L1205 1413 1208 1424M1183 1403L1183 1415 1193 1426M1179 1380L1177 1392 1176 1404 1175 1416 1188 1427',\n },\n};\n","/* ------------------------------------------------------------------ */\n/* AUTO-GENERATED by scripts/anatomy-art/build-body-outlines.mjs. */\n/* */\n/* Smoothed body outlines for MuscleScheme's muscle figures, in each */\n/* figure's own coordinates. Derived from the contours in */\n/* muscle-paths.ts (react-native-body-highlighter, MIT, (c) 2022 */\n/* ELABBASSI Hicham): resampled, Gaussian-smoothed and simplified, so */\n/* the jagged toes and stepped edges become smooth curves. */\n/* ------------------------------------------------------------------ */\n\nexport type MuscleOutlineSet =\n | 'male-front'\n | 'male-back'\n | 'female-front'\n | 'female-back'\n | 'child-front'\n | 'child-back';\n\n/**\n * The child's proportions, in the male figure's coordinates: legs scaled by\n * `legScale` about the soles, everything above `hip` (and the arms, further\n * than `armReach` from the midline) moved down by `drop` to meet them.\n */\nexport const CHILD_PROPORTIONS = {\n legScale: 0.86,\n hip: 645,\n sole: 1340,\n armReach: 140,\n midline: {\n front: 364,\n back: 1084,\n },\n drop: 97.3,\n};\n\nexport const MUSCLE_OUTLINES: Record<MuscleOutlineSet, string> = {\n 'male-front':\n 'M 354 168 C 338 168 320 168 312 168 C 304 168 306 169 305 170 C 303 170 303 170 303 172 C 303 174 302 178 303 181 C 303 184 304 187 305 191 C 307 195 311 203 313 205 C 314 208 314 207 315 208 C 316 209 318 207 319 209 C 320 212 319 220 320 224 C 322 229 326 231 327 238 C 327 244 326 256 325 261 C 324 267 324 266 321 270 C 317 274 308 281 302 286 C 296 290 289 294 284 296 C 279 298 278 298 271 299 C 264 299 251 298 244 298 C 237 299 234 300 228 303 C 223 306 215 312 210 318 C 204 324 198 332 195 337 C 192 342 191 345 190 350 C 189 354 189 357 189 363 C 188 369 188 376 189 385 C 189 395 192 409 191 420 C 189 431 182 440 179 451 C 177 461 180 473 176 485 C 172 496 160 509 155 519 C 150 529 147 538 144 545 C 142 552 143 546 141 560 C 138 573 133 607 129 626 C 125 646 119 669 116 679 C 113 689 114 683 113 685 C 111 687 112 688 108 691 C 104 694 93 698 88 701 C 83 704 81 705 77 709 C 73 714 68 724 64 729 C 60 734 54 737 52 740 C 49 742 50 743 50 745 C 50 746 51 748 53 749 C 54 750 57 750 59 749 C 62 749 65 748 68 746 C 71 744 75 739 78 737 C 80 736 80 737 81 737 C 81 737 82 738 82 739 C 82 740 82 743 82 744 C 82 746 84 743 81 750 C 77 757 66 778 62 785 C 59 791 60 790 60 791 C 60 793 60 794 61 795 C 61 796 62 796 63 797 C 63 797 64 797 65 797 C 66 797 65 800 69 795 C 72 791 82 776 86 771 C 89 766 91 763 92 765 C 92 766 90 773 88 780 C 86 787 80 800 78 805 C 77 811 78 810 78 811 C 78 813 79 814 80 814 C 80 815 81 815 82 815 C 83 815 84 815 86 814 C 87 812 88 814 91 807 C 95 800 107 770 109 770 C 111 770 105 797 104 804 C 104 812 105 814 106 816 C 107 818 108 818 110 817 C 111 816 111 820 114 812 C 117 804 123 775 125 768 C 128 761 127 768 127 769 C 128 770 128 768 128 773 C 129 778 130 794 131 799 C 133 804 134 802 135 803 C 136 803 137 803 138 801 C 139 799 139 799 140 793 C 141 786 141 776 143 763 C 146 750 153 727 155 715 C 157 702 155 695 156 688 C 156 681 156 682 158 675 C 161 667 164 660 173 643 C 181 626 201 589 208 572 C 215 556 214 556 216 545 C 219 534 219 517 222 507 C 226 496 232 491 236 482 C 240 473 244 458 246 452 C 248 447 248 450 248 450 C 249 449 249 445 251 450 C 252 456 254 474 257 484 C 259 493 264 500 266 509 C 268 518 268 520 267 539 C 266 557 263 597 260 618 C 257 639 251 648 248 664 C 244 680 242 700 240 714 C 238 729 237 739 236 752 C 236 765 236 776 236 791 C 236 806 237 830 238 843 C 239 857 240 863 241 872 C 242 880 244 888 246 897 C 248 905 254 914 256 921 C 257 928 257 929 256 938 C 255 947 252 964 252 975 C 251 986 254 990 253 1002 C 253 1013 249 1030 247 1043 C 246 1057 245 1068 246 1084 C 247 1099 248 1115 251 1136 C 254 1157 262 1193 265 1208 C 267 1223 266 1219 266 1228 C 265 1236 263 1250 263 1259 C 263 1268 265 1277 266 1281 C 266 1286 265 1285 265 1287 C 264 1289 266 1288 262 1292 C 258 1297 246 1309 242 1314 C 238 1319 240 1320 239 1323 C 239 1325 237 1326 239 1329 C 240 1331 243 1336 247 1339 C 250 1341 255 1343 260 1344 C 265 1346 272 1348 276 1348 C 280 1349 281 1347 284 1347 C 287 1348 292 1351 294 1351 C 297 1351 297 1351 298 1350 C 300 1349 301 1348 303 1346 C 304 1344 307 1341 308 1339 C 309 1337 310 1338 310 1334 C 311 1329 310 1320 310 1313 C 311 1306 314 1299 314 1291 C 315 1282 316 1273 315 1262 C 314 1252 311 1240 310 1228 C 309 1216 310 1201 311 1189 C 311 1177 312 1169 314 1157 C 317 1145 323 1128 326 1118 C 328 1108 327 1105 328 1095 C 328 1086 328 1076 327 1061 C 325 1046 320 1017 320 1004 C 320 992 325 991 326 986 C 327 981 328 982 328 973 C 329 963 324 957 329 929 C 333 902 352 831 356 808 C 361 784 358 798 358 789 C 358 779 357 758 357 752 C 357 745 357 750 359 750 C 360 750 363 751 365 751 C 367 751 369 750 370 750 C 371 750 371 748 371 753 C 371 758 370 770 370 780 C 371 789 367 786 372 811 C 377 836 395 904 400 931 C 405 958 400 963 400 973 C 400 982 401 981 402 986 C 404 991 408 992 408 1004 C 408 1017 403 1044 402 1059 C 401 1075 401 1086 401 1095 C 401 1105 401 1108 403 1118 C 405 1128 411 1144 414 1157 C 417 1169 417 1179 418 1191 C 419 1203 419 1218 418 1230 C 418 1242 414 1252 413 1262 C 413 1273 414 1284 414 1292 C 415 1301 418 1306 418 1313 C 419 1319 417 1326 418 1331 C 418 1335 419 1336 420 1338 C 421 1340 422 1342 424 1344 C 425 1346 427 1348 429 1349 C 431 1350 431 1351 434 1351 C 437 1351 441 1348 444 1347 C 448 1347 450 1349 454 1348 C 457 1348 462 1346 467 1345 C 471 1344 476 1342 480 1340 C 484 1337 487 1333 489 1331 C 490 1329 490 1331 490 1328 C 489 1325 490 1320 486 1314 C 482 1308 469 1297 465 1292 C 462 1286 463 1286 463 1280 C 463 1275 465 1267 465 1258 C 465 1249 463 1236 462 1228 C 462 1220 460 1227 463 1212 C 465 1196 474 1158 477 1137 C 481 1115 482 1100 482 1084 C 483 1069 482 1057 481 1044 C 480 1030 476 1014 475 1002 C 474 990 477 983 477 972 C 476 962 473 948 473 940 C 472 931 471 927 473 920 C 474 913 479 906 482 898 C 484 891 485 887 486 878 C 488 869 489 856 490 844 C 491 831 492 816 492 802 C 492 787 493 770 492 757 C 492 743 491 736 489 721 C 487 706 485 685 481 668 C 478 650 471 637 468 615 C 464 594 462 556 461 538 C 460 520 461 517 462 508 C 464 499 469 492 472 483 C 475 473 476 456 478 451 C 479 445 479 449 480 450 C 481 450 480 446 482 452 C 484 458 489 475 493 484 C 497 493 503 496 506 506 C 509 517 510 535 512 546 C 514 557 512 553 519 571 C 527 588 550 631 558 648 C 567 665 567 666 569 673 C 572 680 572 680 572 688 C 573 695 572 703 574 716 C 576 728 582 750 585 763 C 587 775 587 785 588 791 C 589 797 589 799 591 801 C 592 803 593 803 594 802 C 595 802 596 803 597 798 C 598 793 599 777 600 772 C 601 767 600 761 603 768 C 605 775 612 803 614 811 C 617 820 617 816 618 817 C 620 818 622 817 622 816 C 623 815 624 814 624 812 C 624 810 625 812 624 805 C 623 798 617 770 619 770 C 621 771 633 801 638 808 C 642 816 642 814 644 815 C 645 816 647 815 648 815 C 650 814 650 813 651 811 C 651 810 652 811 650 806 C 649 801 643 789 641 782 C 639 775 636 765 636 764 C 637 763 641 768 645 773 C 649 779 657 792 660 796 C 663 800 662 797 663 797 C 664 798 665 797 666 797 C 666 797 667 796 668 795 C 668 794 672 799 668 792 C 665 784 652 758 648 750 C 644 742 646 746 646 745 C 646 743 646 740 646 739 C 647 738 647 737 648 737 C 648 737 648 736 651 737 C 653 739 657 744 661 746 C 664 748 667 749 670 749 C 673 750 675 749 677 748 C 678 747 679 745 679 744 C 678 742 679 741 676 739 C 674 736 668 733 664 728 C 660 723 655 714 651 709 C 648 705 646 705 641 702 C 635 699 625 694 621 691 C 617 689 617 688 616 686 C 614 684 615 688 613 679 C 610 670 605 653 600 631 C 596 609 589 564 584 546 C 580 527 579 529 573 519 C 568 509 557 496 553 485 C 548 474 551 462 549 451 C 546 440 539 431 538 420 C 536 409 540 394 540 384 C 540 374 540 366 539 360 C 539 354 538 351 537 347 C 536 343 535 340 532 335 C 529 330 523 322 518 317 C 513 312 506 307 500 303 C 495 300 492 299 485 298 C 477 297 463 299 456 298 C 449 298 450 298 444 296 C 439 294 431 290 425 285 C 419 280 410 273 406 268 C 402 264 403 262 403 257 C 402 252 401 243 402 238 C 403 232 407 229 408 225 C 409 220 408 212 409 209 C 410 206 413 209 416 206 C 418 203 422 195 423 190 C 425 186 426 182 426 178 C 426 175 426 173 425 171 C 423 170 421 170 418 169 C 415 169 420 169 409 168 C 398 168 371 168 354 168 Z',\n 'male-back':\n 'M 1073 167 C 1057 167 1038 168 1030 169 C 1023 169 1027 169 1026 170 C 1024 170 1023 170 1023 172 C 1022 174 1022 177 1022 181 C 1023 184 1024 188 1025 192 C 1027 197 1031 203 1032 206 C 1034 208 1034 208 1035 208 C 1036 209 1038 206 1039 209 C 1039 212 1039 220 1040 224 C 1041 229 1045 231 1046 237 C 1047 243 1046 255 1045 260 C 1045 264 1044 264 1044 265 C 1043 267 1044 267 1040 270 C 1037 274 1028 281 1022 286 C 1016 290 1009 294 1004 296 C 999 298 998 298 991 299 C 984 299 969 298 962 298 C 955 299 954 300 948 303 C 943 306 935 312 929 318 C 924 323 918 332 915 337 C 912 342 911 344 910 348 C 909 352 908 351 908 363 C 908 375 912 405 910 420 C 908 435 901 441 899 452 C 896 463 900 474 896 485 C 892 496 880 509 875 519 C 869 529 866 538 864 545 C 861 552 863 546 860 560 C 858 574 852 609 848 629 C 844 649 838 669 835 679 C 833 688 833 685 832 687 C 830 689 832 689 828 691 C 824 694 813 698 808 701 C 803 704 801 705 797 709 C 793 714 789 723 785 728 C 780 733 774 737 771 740 C 769 743 769 743 769 745 C 770 746 770 748 772 749 C 774 750 777 750 779 749 C 782 749 784 748 787 746 C 790 744 795 739 797 737 C 799 736 800 737 800 737 C 801 737 801 738 802 739 C 802 740 802 743 802 744 C 802 746 804 742 800 750 C 797 758 783 784 780 791 C 776 799 780 794 780 795 C 781 796 781 796 782 797 C 783 797 784 797 785 797 C 786 797 785 800 788 795 C 792 791 801 776 805 771 C 809 766 811 763 811 765 C 812 766 810 773 807 780 C 805 787 799 800 798 805 C 796 811 797 810 797 811 C 798 813 799 814 799 814 C 800 815 801 815 802 815 C 803 815 804 815 805 814 C 807 813 807 815 811 807 C 815 800 827 771 829 770 C 831 770 825 798 824 805 C 823 812 824 811 824 812 C 824 814 825 815 826 816 C 827 817 829 818 830 817 C 831 816 832 818 834 811 C 836 804 841 780 843 773 C 845 766 845 768 845 768 C 846 768 847 766 848 772 C 849 777 850 793 851 798 C 852 803 852 802 854 802 C 855 803 856 803 857 801 C 859 799 859 798 860 791 C 861 785 861 774 863 761 C 866 749 872 730 874 718 C 876 705 875 695 876 688 C 876 680 876 681 879 673 C 881 666 884 660 892 643 C 900 626 921 587 928 571 C 936 554 934 554 937 543 C 939 533 939 517 942 506 C 945 496 952 491 956 482 C 960 473 964 458 966 452 C 968 447 967 450 968 450 C 969 449 969 445 970 451 C 971 456 973 471 976 481 C 978 490 984 499 985 508 C 987 516 988 515 987 533 C 986 551 984 594 980 617 C 977 639 970 650 966 669 C 963 687 960 714 958 728 C 956 743 956 743 956 755 C 955 767 955 787 956 802 C 956 816 957 829 958 842 C 959 855 960 868 962 878 C 963 887 964 891 966 898 C 969 906 974 915 976 922 C 977 928 976 930 975 938 C 975 946 972 962 972 972 C 971 983 974 990 973 1002 C 972 1014 968 1030 967 1044 C 966 1058 965 1070 966 1086 C 966 1102 968 1119 971 1139 C 974 1160 983 1195 985 1210 C 987 1225 986 1220 985 1228 C 985 1236 983 1250 983 1259 C 983 1268 985 1277 985 1281 C 986 1286 985 1285 985 1287 C 984 1289 986 1288 982 1292 C 978 1297 966 1310 962 1315 C 958 1320 959 1321 959 1323 C 958 1325 957 1326 958 1329 C 960 1331 964 1336 967 1339 C 971 1342 976 1343 980 1345 C 985 1346 991 1348 995 1348 C 999 1349 1001 1347 1004 1348 C 1007 1348 1011 1350 1013 1351 C 1015 1351 1016 1351 1017 1350 C 1019 1350 1020 1349 1022 1347 C 1023 1345 1026 1342 1027 1340 C 1029 1338 1029 1339 1030 1334 C 1030 1330 1029 1319 1030 1312 C 1031 1305 1033 1297 1034 1291 C 1034 1286 1033 1281 1033 1276 C 1034 1272 1036 1271 1035 1263 C 1034 1255 1030 1243 1030 1231 C 1029 1218 1030 1200 1030 1187 C 1031 1175 1032 1167 1034 1156 C 1036 1145 1043 1129 1045 1119 C 1047 1108 1047 1104 1047 1095 C 1048 1086 1048 1078 1046 1063 C 1045 1048 1040 1016 1040 1004 C 1040 991 1044 992 1046 987 C 1047 982 1047 983 1048 973 C 1048 964 1044 956 1048 929 C 1053 901 1071 832 1076 807 C 1081 782 1078 787 1078 777 C 1078 768 1077 756 1077 751 C 1077 747 1077 750 1078 750 C 1079 750 1082 751 1084 751 C 1086 751 1089 750 1090 750 C 1091 750 1091 746 1091 752 C 1091 757 1090 774 1090 784 C 1090 794 1087 787 1092 811 C 1097 835 1115 908 1119 930 C 1124 951 1120 934 1120 938 C 1120 943 1119 950 1119 956 C 1119 962 1120 969 1120 974 C 1120 979 1121 981 1122 986 C 1123 991 1128 992 1128 1005 C 1128 1017 1123 1046 1122 1061 C 1120 1077 1120 1088 1121 1097 C 1121 1107 1120 1108 1122 1118 C 1125 1128 1131 1145 1134 1157 C 1136 1168 1137 1176 1137 1188 C 1138 1200 1139 1216 1138 1229 C 1137 1241 1133 1252 1133 1262 C 1132 1273 1133 1284 1134 1292 C 1135 1301 1137 1307 1138 1313 C 1138 1319 1137 1327 1137 1331 C 1138 1335 1138 1336 1139 1338 C 1140 1340 1142 1342 1143 1344 C 1145 1346 1147 1348 1149 1349 C 1150 1350 1151 1351 1154 1351 C 1156 1351 1161 1348 1164 1347 C 1167 1347 1168 1349 1172 1349 C 1176 1348 1183 1346 1188 1344 C 1193 1343 1198 1341 1201 1339 C 1204 1337 1206 1334 1208 1332 C 1209 1330 1209 1330 1209 1328 C 1209 1327 1209 1323 1208 1321 C 1208 1319 1209 1319 1205 1314 C 1202 1309 1189 1297 1186 1292 C 1182 1287 1184 1289 1183 1287 C 1183 1285 1182 1286 1182 1281 C 1183 1276 1185 1266 1185 1257 C 1185 1248 1183 1236 1182 1229 C 1182 1221 1180 1226 1183 1211 C 1185 1195 1194 1157 1197 1136 C 1200 1114 1201 1099 1202 1083 C 1202 1068 1202 1057 1201 1043 C 1199 1029 1195 1013 1195 1001 C 1194 990 1197 984 1196 973 C 1196 962 1193 946 1192 937 C 1191 929 1191 928 1192 921 C 1194 914 1199 905 1202 898 C 1204 891 1204 888 1206 879 C 1207 870 1209 856 1210 843 C 1211 830 1212 817 1212 803 C 1212 788 1212 769 1212 756 C 1211 743 1211 739 1209 725 C 1207 710 1205 688 1202 670 C 1198 652 1191 638 1187 616 C 1184 594 1182 556 1181 539 C 1180 521 1180 518 1182 509 C 1184 500 1189 495 1191 485 C 1194 475 1196 457 1197 451 C 1198 445 1198 449 1199 449 C 1200 450 1200 447 1202 452 C 1204 458 1207 472 1211 481 C 1215 490 1222 496 1226 507 C 1229 518 1229 535 1231 545 C 1234 556 1231 552 1239 571 C 1248 590 1274 640 1282 657 C 1290 674 1287 668 1289 674 C 1291 679 1291 681 1292 688 C 1293 695 1291 704 1293 717 C 1295 729 1302 750 1304 762 C 1307 774 1306 784 1307 790 C 1308 797 1309 798 1310 800 C 1311 802 1312 803 1314 802 C 1315 802 1316 804 1317 799 C 1318 794 1319 777 1320 772 C 1320 767 1321 768 1322 768 C 1323 768 1322 765 1324 772 C 1326 779 1331 804 1333 811 C 1336 819 1336 816 1338 817 C 1339 818 1341 817 1342 816 C 1343 816 1343 815 1343 813 C 1344 811 1344 812 1344 805 C 1343 798 1337 770 1339 770 C 1341 770 1352 799 1356 807 C 1360 814 1360 812 1362 813 C 1363 815 1364 815 1365 815 C 1366 815 1367 815 1368 815 C 1369 814 1370 813 1370 812 C 1370 810 1371 811 1370 806 C 1368 801 1363 788 1360 781 C 1358 774 1356 766 1356 764 C 1357 763 1360 767 1364 773 C 1368 778 1377 792 1380 796 C 1383 800 1382 797 1383 797 C 1384 797 1385 797 1386 797 C 1387 796 1388 794 1388 792 C 1388 791 1390 793 1386 786 C 1383 778 1371 757 1367 750 C 1364 743 1366 746 1366 744 C 1366 742 1366 740 1366 739 C 1367 737 1367 737 1368 737 C 1368 737 1369 736 1371 738 C 1373 739 1378 744 1381 746 C 1384 748 1386 749 1389 749 C 1392 750 1394 749 1396 749 C 1397 748 1398 746 1398 744 C 1398 743 1399 742 1396 739 C 1394 737 1388 734 1384 729 C 1380 724 1375 714 1370 709 C 1366 704 1365 704 1360 701 C 1354 698 1344 693 1340 691 C 1336 688 1337 689 1336 686 C 1335 684 1335 688 1332 678 C 1329 668 1323 647 1319 627 C 1315 608 1311 576 1308 562 C 1305 549 1306 552 1304 545 C 1301 538 1298 529 1293 519 C 1287 509 1276 497 1272 486 C 1268 474 1271 461 1268 450 C 1266 439 1259 434 1257 419 C 1256 404 1259 373 1259 361 C 1259 349 1258 352 1257 348 C 1256 343 1255 340 1252 335 C 1249 330 1244 323 1238 317 C 1233 312 1225 306 1219 303 C 1214 300 1212 299 1205 298 C 1198 298 1183 299 1176 299 C 1170 298 1169 298 1163 296 C 1158 293 1149 288 1143 284 C 1136 279 1129 272 1125 268 C 1122 263 1123 260 1122 255 C 1121 250 1121 242 1122 237 C 1122 232 1126 230 1127 225 C 1129 221 1128 212 1129 209 C 1130 206 1132 209 1133 208 C 1134 208 1134 209 1136 206 C 1137 202 1142 193 1144 188 C 1145 183 1146 179 1146 176 C 1146 173 1147 172 1144 171 C 1141 169 1140 169 1128 168 C 1116 167 1089 167 1073 167 Z',\n 'female-front':\n 'M 373 206 C 371 211 369 215 365 220 C 362 225 356 231 354 236 C 353 240 355 243 357 247 C 358 250 360 254 363 257 C 366 259 369 262 373 264 C 376 266 376 267 385 269 C 395 271 419 274 429 276 C 440 278 442 279 447 281 C 452 283 456 287 460 290 C 464 294 468 299 470 303 C 473 308 474 312 476 317 C 477 322 478 327 479 333 C 480 340 481 347 482 356 C 482 364 481 376 482 385 C 484 395 489 403 491 411 C 494 419 495 420 497 433 C 498 445 498 473 502 486 C 506 499 516 504 521 512 C 527 520 531 528 534 534 C 537 541 538 542 541 553 C 545 563 551 587 556 600 C 560 612 565 620 570 628 C 575 636 581 643 586 648 C 590 652 593 650 599 654 C 604 658 613 667 619 671 C 626 676 633 678 636 681 C 640 683 639 684 640 685 C 640 687 641 689 640 691 C 640 693 639 694 638 695 C 637 696 635 696 632 696 C 630 696 628 695 625 694 C 622 692 616 688 614 687 C 612 686 611 684 613 688 C 614 691 621 700 624 709 C 628 717 631 731 632 738 C 633 745 632 747 632 750 C 632 752 631 752 630 753 C 629 754 626 754 625 756 C 625 758 626 763 626 765 C 625 767 625 768 624 768 C 623 769 621 770 619 770 C 617 770 615 768 613 768 C 610 767 606 770 604 770 C 602 770 601 769 600 767 C 598 765 596 759 594 758 C 592 757 591 760 589 760 C 587 759 586 759 583 756 C 581 754 578 749 575 744 C 572 739 571 738 567 726 C 563 714 554 681 551 670 C 547 659 558 675 547 660 C 536 645 497 596 484 580 C 472 563 475 567 472 561 C 468 555 465 550 462 544 C 460 538 458 533 456 527 C 454 521 455 514 452 507 C 450 500 445 493 442 485 C 439 477 437 472 434 461 C 431 450 427 425 425 420 C 422 415 421 428 418 432 C 416 435 412 439 410 442 C 408 445 409 433 408 451 C 408 469 407 533 407 551 C 407 569 407 555 410 560 C 413 564 419 572 423 578 C 426 584 428 585 432 594 C 435 602 441 615 445 627 C 449 639 452 654 454 668 C 456 683 457 698 457 714 C 457 731 457 748 455 767 C 453 785 451 804 447 825 C 443 845 439 867 433 891 C 427 915 415 948 410 970 C 405 992 404 1011 403 1022 C 402 1034 402 1028 403 1039 C 405 1049 411 1071 413 1084 C 416 1097 418 1108 419 1118 C 420 1128 421 1135 421 1142 C 421 1149 421 1155 420 1161 C 419 1168 420 1167 416 1182 C 411 1197 399 1236 394 1254 C 389 1271 388 1280 386 1289 C 385 1298 384 1303 384 1310 C 383 1316 382 1323 383 1329 C 384 1336 387 1343 388 1349 C 389 1356 385 1360 388 1368 C 391 1377 401 1394 406 1403 C 412 1411 419 1414 422 1418 C 425 1422 424 1425 423 1427 C 423 1429 422 1430 420 1431 C 418 1432 423 1432 411 1432 C 400 1432 362 1432 351 1432 C 340 1432 347 1432 346 1431 C 344 1431 343 1431 342 1429 C 341 1427 339 1424 338 1420 C 338 1415 337 1410 338 1400 C 339 1391 343 1375 344 1363 C 345 1352 345 1344 345 1332 C 345 1319 345 1301 344 1287 C 344 1272 344 1259 342 1243 C 339 1227 333 1206 331 1190 C 329 1175 328 1161 328 1150 C 328 1139 328 1140 330 1123 C 332 1107 338 1074 340 1052 C 341 1030 340 1011 339 989 C 338 967 334 946 332 920 C 330 894 328 857 326 832 C 325 807 325 788 325 772 C 326 756 328 744 328 739 C 329 733 328 737 326 737 C 324 737 319 737 316 737 C 314 737 314 737 313 737 C 312 738 312 734 312 739 C 313 744 315 754 315 768 C 316 783 316 802 315 827 C 314 851 312 888 309 915 C 307 942 303 967 302 990 C 301 1013 300 1030 301 1053 C 303 1075 309 1107 311 1124 C 313 1140 313 1140 313 1151 C 313 1162 312 1174 310 1190 C 308 1205 301 1228 299 1244 C 297 1260 297 1273 297 1287 C 296 1302 296 1320 296 1332 C 296 1345 296 1353 297 1364 C 298 1375 301 1390 302 1399 C 303 1408 303 1414 303 1419 C 302 1424 301 1426 299 1428 C 298 1430 298 1431 293 1432 C 289 1432 282 1433 271 1433 C 260 1433 234 1432 226 1432 C 218 1432 223 1432 222 1431 C 220 1431 219 1430 219 1429 C 218 1427 218 1423 218 1421 C 218 1418 218 1419 221 1416 C 224 1413 230 1410 235 1402 C 240 1394 249 1378 252 1369 C 255 1360 252 1355 253 1349 C 254 1342 257 1337 258 1330 C 258 1323 259 1321 257 1307 C 255 1294 251 1271 246 1250 C 241 1229 230 1197 225 1183 C 221 1168 222 1169 221 1162 C 220 1155 220 1148 220 1141 C 220 1134 221 1128 222 1119 C 223 1109 225 1098 227 1085 C 230 1071 236 1048 238 1038 C 239 1027 239 1034 238 1023 C 237 1011 235 991 230 969 C 226 948 215 917 209 894 C 203 871 199 852 195 831 C 191 811 188 789 186 771 C 185 752 184 735 184 718 C 184 701 185 685 187 670 C 189 655 192 640 196 628 C 200 615 205 603 209 594 C 213 586 215 583 219 577 C 222 571 229 563 231 559 C 234 554 234 568 234 550 C 234 533 233 471 233 453 C 232 435 234 450 231 444 C 229 439 220 416 216 419 C 212 422 210 451 207 462 C 204 472 202 477 199 484 C 196 492 191 499 189 506 C 187 513 187 520 185 526 C 183 533 182 538 179 543 C 176 549 173 554 170 560 C 166 567 168 565 155 582 C 143 598 106 645 95 660 C 84 675 92 665 89 672 C 87 679 84 695 81 704 C 79 713 76 720 74 727 C 71 733 68 739 66 744 C 63 749 59 754 57 757 C 55 759 54 759 53 760 C 51 760 48 757 47 758 C 45 759 43 764 42 766 C 40 768 39 769 38 770 C 36 770 35 770 34 770 C 32 769 30 767 28 767 C 26 768 23 770 21 770 C 19 770 18 769 17 768 C 16 767 15 766 15 764 C 15 762 17 759 16 757 C 15 755 12 754 10 753 C 9 751 9 751 9 749 C 8 747 8 745 9 739 C 10 732 13 718 16 710 C 20 701 30 690 28 688 C 27 685 12 695 8 696 C 3 697 3 695 2 694 C 0 693 0 691 0 689 C 1 687 1 685 2 683 C 3 682 3 681 6 679 C 9 677 15 676 21 672 C 27 667 37 657 43 653 C 49 649 51 652 56 648 C 61 643 66 635 71 627 C 76 619 81 611 85 599 C 90 587 95 566 99 555 C 102 544 104 541 107 534 C 111 527 114 521 119 513 C 124 505 136 496 140 486 C 143 475 141 458 142 449 C 143 439 144 436 145 429 C 146 423 147 418 150 410 C 152 403 157 393 159 384 C 161 374 159 363 160 354 C 160 344 162 334 163 327 C 164 320 165 317 167 312 C 168 308 170 303 173 299 C 176 295 180 290 184 287 C 188 284 193 282 197 280 C 202 278 203 278 212 276 C 221 274 242 272 250 270 C 259 268 260 268 265 265 C 269 263 274 260 277 257 C 280 254 282 251 284 248 C 286 245 286 243 286 241 C 287 239 289 239 287 235 C 284 231 278 224 273 217 C 269 209 265 197 262 191 C 258 185 256 187 254 182 C 252 178 250 170 249 165 C 249 161 248 158 249 155 C 251 152 257 153 260 147 C 263 141 260 127 267 120 C 273 113 289 111 299 106 C 310 101 323 92 329 89 C 335 86 334 89 337 89 C 339 89 341 89 346 90 C 350 91 362 95 366 97 C 370 99 368 96 370 103 C 372 111 376 137 379 144 C 381 152 381 149 383 150 C 385 152 389 152 390 153 C 392 155 392 155 392 158 C 392 161 391 166 391 170 C 390 174 390 176 388 180 C 386 183 382 187 379 191 C 377 195 375 201 373 206 Z',\n 'female-back':\n 'M 1193 208 C 1197 208 1192 213 1189 217 C 1186 222 1178 231 1176 237 C 1175 242 1177 244 1179 248 C 1181 251 1183 255 1186 257 C 1189 260 1191 262 1194 264 C 1198 265 1197 266 1207 269 C 1216 271 1241 274 1251 276 C 1262 278 1263 279 1268 281 C 1274 283 1278 286 1282 290 C 1286 294 1290 299 1292 303 C 1295 307 1296 312 1298 317 C 1300 322 1301 328 1301 334 C 1302 341 1303 347 1304 355 C 1304 364 1303 376 1304 385 C 1306 394 1311 402 1313 410 C 1316 419 1317 421 1319 434 C 1321 446 1319 473 1324 486 C 1328 499 1338 504 1343 512 C 1349 520 1352 527 1356 534 C 1359 541 1360 543 1364 554 C 1367 564 1373 586 1377 598 C 1382 610 1386 618 1391 626 C 1396 634 1402 643 1407 648 C 1412 652 1415 649 1420 654 C 1426 658 1436 667 1442 672 C 1448 676 1454 678 1458 680 C 1461 683 1461 684 1462 686 C 1463 688 1463 690 1463 692 C 1462 693 1461 695 1460 695 C 1458 696 1458 697 1454 696 C 1450 694 1436 685 1435 687 C 1434 690 1444 702 1447 710 C 1450 719 1453 731 1454 738 C 1455 744 1455 747 1454 750 C 1454 752 1453 752 1452 753 C 1451 754 1448 754 1447 756 C 1447 758 1448 763 1448 765 C 1448 767 1447 768 1446 768 C 1445 769 1443 770 1441 770 C 1439 770 1437 767 1435 767 C 1433 767 1431 769 1429 770 C 1428 770 1427 770 1425 770 C 1424 769 1423 768 1421 766 C 1420 764 1418 759 1416 758 C 1415 757 1412 760 1410 760 C 1409 759 1408 759 1406 757 C 1404 754 1400 749 1397 744 C 1395 739 1394 741 1389 727 C 1385 713 1383 686 1369 661 C 1355 636 1317 593 1304 576 C 1292 560 1296 565 1293 559 C 1289 554 1287 548 1284 543 C 1282 538 1280 534 1278 528 C 1277 522 1277 513 1274 506 C 1272 498 1266 490 1263 483 C 1260 475 1258 471 1256 460 C 1253 450 1249 427 1247 420 C 1245 413 1247 418 1246 420 C 1245 422 1243 428 1240 431 C 1238 435 1234 439 1232 442 C 1230 445 1231 431 1230 449 C 1230 467 1229 532 1229 551 C 1229 569 1229 555 1232 559 C 1234 564 1241 572 1245 577 C 1248 583 1250 586 1254 594 C 1258 603 1263 614 1267 626 C 1270 639 1274 653 1276 667 C 1278 682 1279 699 1279 715 C 1279 732 1279 749 1277 768 C 1275 786 1273 806 1269 826 C 1265 846 1261 865 1255 889 C 1249 913 1238 947 1233 970 C 1228 992 1226 1012 1225 1023 C 1224 1034 1224 1028 1225 1038 C 1227 1048 1233 1071 1236 1085 C 1238 1098 1240 1109 1241 1119 C 1242 1128 1243 1134 1243 1141 C 1243 1149 1243 1155 1242 1162 C 1241 1169 1242 1167 1237 1183 C 1233 1198 1221 1233 1216 1255 C 1210 1276 1207 1296 1206 1309 C 1204 1322 1204 1323 1205 1330 C 1206 1337 1209 1343 1210 1349 C 1211 1354 1210 1360 1210 1364 C 1210 1367 1208 1363 1211 1369 C 1214 1376 1223 1394 1228 1402 C 1234 1410 1241 1414 1244 1418 C 1247 1422 1246 1424 1245 1426 C 1245 1428 1244 1430 1242 1430 C 1241 1431 1246 1432 1235 1432 C 1225 1432 1190 1433 1178 1432 C 1167 1432 1168 1431 1166 1430 C 1163 1429 1163 1427 1162 1426 C 1161 1424 1161 1424 1160 1420 C 1160 1416 1160 1410 1161 1401 C 1162 1391 1165 1375 1166 1364 C 1168 1352 1167 1346 1167 1332 C 1167 1318 1167 1295 1166 1280 C 1165 1265 1166 1257 1163 1241 C 1161 1225 1155 1200 1152 1185 C 1150 1170 1150 1161 1150 1151 C 1150 1140 1150 1140 1152 1124 C 1154 1108 1160 1076 1162 1054 C 1163 1031 1162 1012 1161 989 C 1160 967 1156 944 1154 918 C 1152 891 1149 854 1148 829 C 1147 805 1147 788 1147 772 C 1148 757 1150 745 1151 739 C 1151 733 1151 737 1149 737 C 1147 737 1140 737 1138 737 C 1135 737 1135 737 1135 738 C 1134 738 1134 734 1134 740 C 1135 745 1137 754 1138 770 C 1138 787 1137 812 1136 838 C 1135 863 1133 898 1131 923 C 1129 948 1126 967 1124 987 C 1123 1007 1123 1031 1123 1044 C 1123 1057 1123 1051 1125 1065 C 1126 1079 1132 1110 1134 1126 C 1135 1142 1135 1149 1135 1160 C 1134 1172 1134 1180 1131 1195 C 1129 1209 1123 1228 1121 1248 C 1119 1268 1118 1296 1118 1315 C 1118 1334 1118 1350 1119 1364 C 1120 1379 1123 1391 1124 1400 C 1126 1409 1125 1415 1125 1419 C 1124 1424 1123 1427 1121 1429 C 1120 1431 1120 1431 1115 1432 C 1110 1432 1102 1433 1091 1433 C 1080 1433 1055 1432 1048 1432 C 1040 1431 1044 1431 1043 1431 C 1042 1430 1041 1430 1040 1428 C 1040 1426 1040 1422 1040 1420 C 1041 1418 1041 1418 1043 1416 C 1044 1414 1049 1411 1052 1409 C 1054 1406 1053 1409 1057 1402 C 1061 1395 1072 1376 1075 1367 C 1078 1358 1074 1354 1075 1348 C 1076 1342 1079 1336 1080 1329 C 1081 1323 1081 1320 1079 1307 C 1078 1294 1074 1273 1069 1253 C 1064 1232 1052 1197 1048 1182 C 1043 1167 1044 1170 1044 1163 C 1043 1157 1042 1151 1042 1144 C 1042 1137 1043 1131 1044 1121 C 1045 1112 1047 1100 1049 1086 C 1052 1072 1058 1048 1060 1037 C 1061 1026 1061 1032 1060 1021 C 1059 1010 1057 992 1053 970 C 1048 949 1036 915 1030 891 C 1024 867 1020 847 1016 827 C 1013 806 1010 787 1008 769 C 1007 750 1006 734 1006 718 C 1006 701 1007 685 1009 670 C 1011 655 1014 640 1018 627 C 1022 615 1027 602 1031 594 C 1035 586 1036 584 1040 578 C 1044 572 1050 564 1053 560 C 1056 555 1056 571 1056 552 C 1056 532 1056 464 1054 444 C 1052 424 1047 435 1044 431 C 1042 427 1041 415 1038 420 C 1036 425 1032 450 1030 461 C 1027 471 1024 477 1021 485 C 1018 492 1013 499 1011 506 C 1009 513 1009 521 1007 527 C 1006 533 1004 537 1001 542 C 999 548 996 554 992 559 C 989 565 993 560 981 577 C 968 594 928 645 916 660 C 905 675 916 659 912 670 C 909 681 900 713 896 726 C 892 738 890 740 887 745 C 885 750 882 754 880 756 C 878 758 876 759 874 760 C 872 760 871 757 869 758 C 867 759 865 764 864 766 C 862 768 862 770 859 770 C 857 770 853 767 850 767 C 847 767 845 770 843 770 C 841 770 839 769 839 768 C 838 767 837 766 837 764 C 837 762 839 758 838 756 C 837 755 834 754 833 753 C 832 752 831 753 831 750 C 831 747 830 744 831 737 C 832 730 835 717 838 709 C 842 701 852 689 850 687 C 849 685 834 695 830 696 C 825 697 825 695 824 694 C 822 693 822 691 822 689 C 823 687 823 685 824 684 C 825 682 825 681 828 679 C 831 677 837 676 843 672 C 849 667 859 657 865 653 C 870 649 873 652 878 648 C 882 643 888 634 892 629 C 896 623 898 619 901 614 C 903 610 904 610 908 599 C 911 589 918 564 921 553 C 925 543 926 541 929 534 C 933 527 936 521 941 513 C 947 505 957 499 962 486 C 966 472 965 443 967 431 C 968 418 969 418 972 410 C 974 402 979 393 981 384 C 983 374 981 363 982 354 C 982 344 984 333 985 325 C 987 318 988 313 990 308 C 992 303 995 299 998 295 C 1001 292 1004 289 1008 286 C 1011 283 1015 282 1020 280 C 1024 278 1026 277 1035 276 C 1045 274 1065 271 1074 270 C 1082 268 1082 267 1086 265 C 1091 262 1096 259 1099 257 C 1102 254 1104 252 1106 249 C 1107 245 1109 240 1109 238 C 1109 235 1109 236 1108 234 C 1107 232 1102 227 1101 224 C 1100 222 1100 219 1100 217 C 1101 216 1098 213 1102 214 C 1106 214 1115 219 1122 221 C 1129 222 1138 223 1145 222 C 1151 222 1153 221 1161 219 C 1169 217 1188 208 1193 208 Z',\n 'child-front':\n 'M 354 265 C 338 265 320 265 312 265 C 304 266 306 266 305 267 C 303 268 303 267 303 269 C 303 271 302 275 303 278 C 303 281 304 284 305 288 C 307 292 311 300 313 303 C 314 306 314 305 315 305 C 316 306 318 304 319 307 C 320 309 319 317 320 322 C 322 326 326 329 327 335 C 327 341 326 353 325 359 C 324 364 324 364 321 368 C 317 372 308 379 302 383 C 296 387 289 391 284 393 C 279 395 278 396 271 396 C 264 396 251 395 244 396 C 237 396 234 397 228 400 C 223 404 215 410 210 415 C 204 421 198 429 195 434 C 192 440 191 443 190 447 C 189 451 189 454 189 460 C 188 466 188 473 189 483 C 189 492 192 506 191 517 C 189 528 182 537 179 548 C 177 559 180 571 176 582 C 172 593 160 606 155 616 C 150 626 147 636 144 643 C 142 649 143 644 141 657 C 138 671 133 704 129 724 C 125 743 119 766 116 776 C 113 786 114 781 113 783 C 111 785 112 786 108 788 C 104 791 93 796 88 799 C 83 802 81 802 77 807 C 73 811 68 821 64 826 C 60 831 54 834 52 837 C 49 840 50 841 50 842 C 50 844 51 845 53 846 C 54 847 57 847 59 847 C 62 846 65 845 68 843 C 71 841 75 836 78 835 C 80 833 80 834 81 834 C 81 835 82 835 82 836 C 82 837 82 840 82 842 C 82 844 84 841 81 847 C 77 854 66 875 62 882 C 59 889 60 887 60 889 C 60 890 60 892 61 893 C 61 893 62 894 63 894 C 63 894 64 895 65 895 C 66 894 65 897 69 893 C 72 888 82 873 86 868 C 89 863 91 860 92 862 C 92 864 90 871 88 878 C 86 884 80 898 78 903 C 77 908 78 907 78 908 C 78 910 79 911 80 912 C 80 912 81 912 82 912 C 83 912 84 912 86 911 C 87 910 88 912 91 904 C 95 897 107 868 109 867 C 111 867 105 894 104 902 C 104 909 105 911 106 913 C 107 915 108 915 110 914 C 111 914 111 917 114 909 C 117 901 123 873 125 865 C 128 858 127 865 127 866 C 128 867 128 865 128 870 C 129 875 130 892 131 897 C 133 902 134 900 135 900 C 136 900 137 900 138 898 C 139 897 139 896 140 890 C 141 884 141 873 143 860 C 146 847 153 825 155 812 C 157 800 155 792 156 785 C 156 779 156 779 158 772 C 161 765 164 758 173 741 C 181 723 201 686 208 669 C 215 653 214 653 216 642 C 219 631 219 614 222 604 C 226 593 232 588 236 579 C 240 570 244 555 246 549 C 248 544 248 547 248 547 C 249 547 249 542 251 548 C 252 553 254 571 257 581 C 259 591 264 597 266 606 C 268 615 267 623 267 636 C 267 648 265 667 264 681 C 263 694 263 703 260 717 C 257 730 250 748 247 764 C 243 780 240 799 239 811 C 237 823 237 827 236 837 C 236 846 236 855 236 868 C 236 880 237 901 238 913 C 239 924 240 930 241 937 C 242 945 244 952 246 959 C 248 966 254 974 256 980 C 257 986 257 986 256 994 C 255 1002 252 1017 252 1026 C 251 1035 254 1039 253 1049 C 253 1059 249 1073 247 1085 C 246 1097 245 1106 246 1120 C 247 1133 248 1147 251 1165 C 254 1182 262 1213 265 1227 C 267 1240 266 1236 266 1243 C 265 1251 263 1263 263 1270 C 263 1278 265 1285 266 1289 C 266 1293 265 1293 265 1294 C 264 1296 266 1295 262 1299 C 258 1303 246 1314 242 1318 C 238 1322 240 1323 239 1325 C 239 1327 237 1328 239 1330 C 240 1332 243 1337 247 1339 C 250 1341 255 1342 260 1344 C 265 1345 272 1347 276 1347 C 280 1348 281 1346 284 1346 C 287 1347 292 1349 294 1349 C 297 1350 297 1349 298 1349 C 300 1348 301 1347 303 1345 C 304 1344 307 1341 308 1339 C 309 1337 310 1338 310 1334 C 311 1331 310 1323 310 1317 C 311 1310 314 1305 314 1298 C 315 1290 316 1282 315 1273 C 314 1264 311 1254 310 1244 C 309 1233 310 1221 311 1210 C 311 1200 312 1193 314 1182 C 317 1172 323 1158 326 1149 C 328 1140 327 1138 328 1130 C 328 1121 328 1113 327 1100 C 325 1087 320 1062 320 1051 C 320 1041 325 1040 326 1035 C 327 1031 328 1032 328 1024 C 329 1016 324 1010 329 987 C 333 963 352 903 356 882 C 361 862 358 874 358 866 C 358 858 357 839 357 834 C 357 828 357 833 359 833 C 361 832 368 832 370 833 C 372 833 371 831 371 835 C 371 839 370 850 370 858 C 371 866 367 863 372 885 C 377 907 395 965 400 988 C 405 1011 400 1016 400 1024 C 400 1032 401 1031 402 1035 C 404 1040 408 1041 408 1051 C 408 1062 403 1086 402 1099 C 401 1112 401 1121 401 1130 C 401 1138 401 1140 403 1149 C 405 1158 411 1172 414 1182 C 417 1193 417 1201 418 1212 C 419 1222 419 1235 418 1245 C 418 1255 414 1264 413 1273 C 413 1282 414 1292 414 1299 C 415 1306 418 1311 418 1317 C 419 1322 417 1328 418 1332 C 418 1336 418 1336 420 1338 C 421 1340 423 1343 425 1344 C 426 1346 428 1348 430 1349 C 432 1349 433 1350 435 1349 C 438 1349 441 1347 444 1346 C 448 1346 449 1348 455 1347 C 461 1346 474 1342 480 1340 C 485 1337 487 1334 489 1333 C 490 1331 490 1332 490 1329 C 489 1327 490 1322 486 1317 C 482 1312 469 1303 465 1298 C 462 1294 463 1293 463 1289 C 463 1284 465 1277 465 1269 C 465 1262 463 1250 462 1244 C 462 1237 460 1243 463 1230 C 465 1216 474 1183 477 1165 C 481 1147 482 1133 482 1120 C 483 1107 482 1097 481 1085 C 480 1074 476 1060 475 1050 C 474 1039 477 1033 477 1024 C 476 1015 473 1003 473 996 C 472 988 471 985 473 979 C 474 973 479 967 482 960 C 484 954 485 950 487 941 C 488 933 489 923 490 912 C 491 901 492 888 492 876 C 492 864 492 849 492 838 C 492 828 491 825 490 813 C 488 801 486 783 482 767 C 479 750 472 736 468 714 C 465 692 462 654 461 636 C 460 619 460 616 462 607 C 464 597 470 588 472 579 C 475 569 477 553 478 548 C 479 543 479 547 480 547 C 481 547 480 543 482 549 C 484 555 489 573 493 582 C 497 591 503 593 506 604 C 509 614 510 633 512 643 C 514 654 512 651 519 668 C 527 685 550 728 558 746 C 567 763 567 764 569 770 C 572 777 572 778 572 785 C 573 792 572 801 574 813 C 576 826 582 847 585 860 C 587 872 587 882 588 888 C 589 895 589 896 591 898 C 592 900 593 900 594 900 C 595 899 596 901 597 896 C 598 890 599 874 600 869 C 601 864 600 859 603 865 C 605 872 612 901 614 909 C 617 917 617 913 618 914 C 620 915 622 914 622 913 C 623 913 624 911 624 910 C 624 908 625 909 624 902 C 623 895 617 867 619 868 C 621 868 633 898 638 906 C 642 913 642 911 644 912 C 645 913 647 912 648 912 C 650 911 650 910 651 909 C 651 907 652 908 650 903 C 649 898 643 886 641 879 C 639 872 636 863 636 861 C 637 860 641 865 645 871 C 649 876 657 889 660 893 C 663 897 662 894 663 895 C 664 895 665 895 666 894 C 666 894 667 893 668 893 C 668 892 672 896 668 889 C 665 881 652 855 648 848 C 644 840 646 844 646 842 C 646 840 646 838 646 836 C 647 835 647 835 648 834 C 648 834 648 833 651 835 C 653 836 657 841 661 843 C 664 845 667 846 670 847 C 673 847 675 846 677 845 C 678 844 679 842 679 841 C 678 839 679 839 676 836 C 674 833 668 830 664 825 C 660 821 655 811 651 807 C 648 802 646 802 641 799 C 635 796 625 791 621 789 C 617 786 617 785 616 783 C 614 781 615 785 613 776 C 610 767 605 751 600 728 C 596 706 589 662 584 643 C 580 624 579 627 573 617 C 568 607 557 594 553 582 C 548 571 551 559 549 548 C 546 537 539 528 538 517 C 536 506 540 491 540 482 C 540 472 540 464 539 458 C 539 451 538 449 537 444 C 536 440 535 437 532 432 C 529 427 523 419 518 414 C 513 409 506 404 500 401 C 495 398 492 396 485 396 C 477 395 463 396 456 396 C 449 395 450 396 444 393 C 439 391 431 387 425 382 C 419 378 410 370 406 366 C 402 361 403 359 403 354 C 402 349 401 340 402 335 C 403 330 407 327 408 322 C 409 317 408 310 409 307 C 410 304 413 307 416 303 C 418 300 422 292 423 287 C 425 283 426 279 426 276 C 426 273 426 270 425 269 C 423 267 421 267 418 266 C 415 266 420 266 409 266 C 398 266 371 265 354 265 Z',\n 'child-back':\n 'M 1073 265 C 1057 265 1038 266 1030 266 C 1023 266 1027 266 1026 267 C 1024 268 1023 268 1023 269 C 1022 271 1022 275 1022 278 C 1023 282 1024 286 1025 290 C 1027 294 1031 300 1032 303 C 1034 306 1034 305 1035 305 C 1036 306 1038 304 1039 306 C 1039 309 1039 317 1040 322 C 1041 326 1045 329 1046 335 C 1047 341 1046 352 1045 357 C 1045 362 1044 361 1044 363 C 1043 364 1044 364 1040 368 C 1037 371 1028 379 1022 383 C 1016 387 1009 391 1004 393 C 999 395 998 395 991 396 C 984 396 969 395 962 396 C 955 397 954 397 948 401 C 943 404 935 410 929 415 C 924 421 918 429 915 434 C 912 439 911 441 910 445 C 909 450 908 448 908 460 C 908 472 912 502 910 517 C 908 532 901 538 899 549 C 896 560 900 571 896 582 C 892 593 880 606 875 616 C 869 626 866 636 864 643 C 861 649 863 643 860 657 C 858 671 852 707 848 727 C 844 746 838 766 835 776 C 833 785 833 782 832 784 C 830 786 832 786 828 788 C 824 791 813 796 808 799 C 803 802 801 802 797 807 C 793 811 789 820 785 825 C 780 830 774 834 771 837 C 769 840 769 841 769 842 C 770 844 770 845 772 846 C 774 847 777 847 779 847 C 782 846 784 845 787 843 C 790 841 795 836 797 835 C 799 833 800 834 800 834 C 801 835 801 835 802 836 C 802 837 802 840 802 842 C 802 844 804 839 800 847 C 797 855 783 881 780 889 C 776 896 780 892 780 892 C 781 893 781 894 782 894 C 783 894 784 895 785 894 C 786 894 785 897 788 893 C 792 888 801 873 805 868 C 809 863 811 860 811 862 C 812 864 810 871 807 878 C 805 884 799 898 798 903 C 796 908 797 907 797 908 C 798 910 799 911 799 912 C 800 912 801 913 802 913 C 803 912 804 913 805 911 C 807 910 807 912 811 905 C 815 897 827 868 829 868 C 831 867 825 895 824 902 C 823 909 824 908 824 910 C 824 912 825 913 826 913 C 827 914 829 915 830 914 C 831 913 832 916 834 908 C 836 901 841 878 843 871 C 845 863 845 865 845 865 C 846 865 847 864 848 869 C 849 874 850 890 851 896 C 852 901 852 899 854 900 C 855 900 856 900 857 898 C 859 896 859 895 860 889 C 861 882 861 871 863 859 C 866 846 872 827 874 815 C 876 803 875 793 876 785 C 876 778 876 778 879 770 C 881 763 884 758 892 740 C 900 723 921 685 928 668 C 936 651 934 651 937 641 C 939 630 939 614 942 604 C 945 593 952 588 956 579 C 960 570 964 555 966 549 C 968 544 967 547 968 547 C 969 547 968 542 970 547 C 971 552 973 569 976 578 C 978 588 984 596 985 605 C 987 614 988 614 987 632 C 986 650 984 691 980 714 C 977 737 969 751 965 768 C 962 785 959 806 958 818 C 956 829 956 828 956 838 C 956 848 955 865 956 877 C 956 889 957 901 958 912 C 959 923 960 934 962 942 C 963 951 964 954 966 960 C 969 966 974 974 976 980 C 977 986 976 987 975 994 C 975 1002 972 1015 972 1024 C 971 1033 974 1039 973 1049 C 972 1060 968 1073 967 1085 C 966 1097 965 1107 966 1121 C 966 1135 968 1150 971 1167 C 974 1185 983 1215 985 1228 C 987 1241 986 1236 985 1243 C 985 1251 983 1263 983 1270 C 983 1278 985 1286 985 1290 C 986 1294 985 1293 985 1295 C 984 1296 986 1295 982 1299 C 978 1303 966 1314 962 1318 C 958 1323 959 1323 959 1325 C 958 1327 957 1328 958 1330 C 960 1333 964 1337 967 1339 C 971 1341 976 1343 980 1344 C 985 1345 991 1347 995 1347 C 999 1348 1001 1346 1004 1346 C 1007 1347 1011 1349 1013 1349 C 1015 1350 1016 1349 1017 1349 C 1019 1348 1020 1348 1022 1346 C 1024 1344 1028 1340 1030 1335 C 1031 1330 1029 1322 1030 1316 C 1031 1310 1033 1303 1034 1298 C 1034 1293 1033 1289 1033 1285 C 1034 1281 1036 1280 1035 1274 C 1034 1267 1030 1257 1030 1246 C 1029 1235 1030 1219 1030 1209 C 1031 1198 1032 1192 1034 1182 C 1036 1172 1043 1158 1045 1150 C 1047 1141 1047 1137 1047 1129 C 1048 1121 1048 1115 1046 1102 C 1045 1089 1040 1062 1040 1051 C 1040 1040 1044 1041 1046 1036 C 1047 1032 1047 1033 1048 1025 C 1048 1016 1044 1010 1048 986 C 1053 962 1071 904 1076 882 C 1081 860 1078 864 1078 856 C 1078 848 1075 838 1077 834 C 1079 830 1087 832 1090 833 C 1092 833 1091 829 1091 834 C 1091 839 1090 854 1090 862 C 1090 871 1087 864 1092 885 C 1097 906 1115 969 1119 987 C 1124 1005 1120 991 1120 995 C 1120 998 1119 1005 1119 1010 C 1119 1015 1120 1021 1120 1025 C 1120 1030 1121 1031 1122 1036 C 1123 1040 1128 1041 1128 1052 C 1128 1062 1123 1087 1122 1100 C 1120 1113 1120 1123 1121 1131 C 1121 1139 1120 1141 1122 1149 C 1125 1158 1131 1172 1134 1182 C 1136 1192 1137 1199 1137 1209 C 1138 1220 1139 1233 1138 1244 C 1137 1255 1133 1264 1133 1273 C 1132 1282 1133 1292 1134 1299 C 1135 1306 1137 1311 1138 1317 C 1138 1322 1137 1329 1137 1332 C 1138 1336 1138 1336 1139 1338 C 1141 1340 1144 1344 1145 1345 C 1147 1347 1148 1348 1150 1349 C 1151 1349 1153 1350 1155 1349 C 1158 1349 1161 1347 1164 1346 C 1167 1346 1168 1348 1172 1347 C 1176 1347 1183 1345 1188 1344 C 1193 1342 1198 1341 1201 1339 C 1204 1337 1206 1334 1208 1333 C 1209 1332 1209 1332 1209 1330 C 1209 1328 1209 1326 1208 1324 C 1208 1322 1209 1322 1205 1318 C 1202 1314 1189 1303 1186 1299 C 1182 1295 1184 1296 1183 1294 C 1183 1293 1182 1293 1182 1289 C 1183 1285 1185 1276 1185 1269 C 1185 1261 1183 1251 1182 1244 C 1182 1238 1180 1242 1183 1229 C 1185 1216 1194 1183 1197 1164 C 1200 1146 1201 1133 1202 1119 C 1202 1106 1202 1096 1201 1085 C 1199 1073 1195 1059 1195 1049 C 1194 1039 1197 1034 1196 1024 C 1196 1015 1193 1001 1192 994 C 1191 986 1191 985 1192 980 C 1194 974 1199 966 1202 960 C 1204 954 1204 951 1206 943 C 1207 936 1209 924 1210 913 C 1211 902 1212 890 1212 878 C 1212 866 1212 849 1212 839 C 1212 829 1211 828 1210 816 C 1208 804 1206 786 1203 769 C 1199 752 1191 735 1187 714 C 1184 692 1182 655 1181 637 C 1180 619 1180 615 1182 606 C 1184 597 1188 592 1191 582 C 1194 573 1196 554 1198 548 C 1199 542 1199 547 1200 547 C 1201 547 1200 545 1202 550 C 1204 555 1207 569 1211 578 C 1215 587 1222 593 1226 604 C 1229 615 1229 632 1231 643 C 1234 653 1231 650 1239 668 C 1248 687 1274 737 1282 754 C 1290 771 1287 766 1289 771 C 1291 776 1291 778 1292 786 C 1293 793 1291 802 1293 814 C 1295 826 1302 847 1304 859 C 1307 871 1306 881 1307 887 C 1308 894 1309 895 1310 897 C 1311 899 1312 900 1314 900 C 1315 900 1316 901 1317 896 C 1318 891 1319 875 1320 870 C 1320 864 1321 865 1322 865 C 1323 865 1322 862 1324 869 C 1326 876 1331 901 1333 908 C 1336 916 1336 913 1338 914 C 1339 915 1341 914 1342 914 C 1343 913 1343 912 1343 910 C 1344 908 1344 910 1344 903 C 1343 896 1337 867 1339 868 C 1341 868 1352 897 1356 904 C 1360 911 1360 909 1362 911 C 1363 912 1364 912 1365 912 C 1366 913 1367 913 1368 912 C 1369 911 1370 910 1370 909 C 1370 908 1371 909 1370 903 C 1368 898 1363 885 1360 878 C 1358 871 1356 863 1356 862 C 1357 860 1360 865 1364 870 C 1368 875 1377 889 1380 893 C 1383 897 1382 894 1383 895 C 1384 895 1385 895 1386 894 C 1387 893 1388 892 1388 890 C 1388 888 1390 890 1386 883 C 1383 876 1371 854 1367 847 C 1364 840 1366 843 1366 841 C 1366 840 1366 837 1366 836 C 1367 835 1367 835 1368 834 C 1368 834 1369 833 1371 835 C 1373 836 1378 841 1381 843 C 1384 845 1386 846 1389 847 C 1392 847 1394 847 1396 846 C 1397 845 1398 843 1398 842 C 1398 840 1399 839 1396 837 C 1394 834 1388 831 1384 826 C 1380 821 1375 811 1370 806 C 1366 802 1365 801 1360 798 C 1354 795 1344 791 1340 788 C 1336 786 1337 786 1336 784 C 1335 782 1335 785 1332 776 C 1329 766 1323 744 1319 725 C 1315 705 1311 673 1308 660 C 1305 646 1306 650 1304 642 C 1301 635 1298 626 1293 616 C 1287 606 1276 594 1272 583 C 1268 572 1271 559 1268 547 C 1266 536 1259 531 1257 517 C 1256 502 1259 470 1259 458 C 1259 446 1258 449 1257 445 C 1256 441 1255 438 1252 433 C 1249 427 1244 420 1238 415 C 1233 409 1225 403 1219 400 C 1214 397 1212 396 1205 396 C 1198 395 1183 396 1176 396 C 1170 395 1169 396 1163 393 C 1158 391 1149 386 1143 381 C 1136 376 1129 370 1125 365 C 1122 360 1123 357 1122 352 C 1121 347 1121 339 1122 334 C 1122 329 1126 327 1127 323 C 1129 318 1128 309 1129 306 C 1130 303 1132 306 1133 306 C 1134 305 1134 306 1136 303 C 1137 300 1142 290 1144 285 C 1145 280 1146 277 1146 274 C 1146 271 1147 269 1144 268 C 1141 267 1140 266 1128 265 C 1116 265 1089 264 1073 265 Z',\n};\n","/* ------------------------------------------------------------------ */\n/* MuscleScheme — data model + muscle figure datasets. */\n/* */\n/* The kit's body chart. A \"view\" is a labelled SVG: a muscle figure */\n/* (front / back · adult-male / adult-female / child) or an adult */\n/* pelvic organ diagram, carrying clickable REGIONS. Findings are */\n/* recorded against a region id and surfaced with the shared */\n/* AnnotationMarker glyph (shape-not-colour, WCAG 1.4.1). */\n/* */\n/* Muscle art comes from react-native-body-highlighter (MIT) via */\n/* `muscle-paths.ts`; the data module is the swap seam — a realistic */\n/* illustration drops in via `illustrationBaseUrl` without touching */\n/* the component. Region *ids and labels* are the stable contract. */\n/* ------------------------------------------------------------------ */\n\nimport type { MarkerShape, MarkerTone } from '../annotation-marker';\nimport { FEMALE_PELVIS } from './reproductive-female';\nimport { MALE_PELVIS } from './reproductive-male';\nimport {\n MUSCLE_MALE_FRONT,\n MUSCLE_MALE_BACK,\n MUSCLE_FEMALE_FRONT,\n MUSCLE_FEMALE_BACK,\n type MuscleFigureArt,\n} from './muscle-paths';\nimport { MUSCLE_FIBRES, type MuscleFibreSet } from './muscle-fibres';\nimport { MUSCLE_OUTLINES, CHILD_PROPORTIONS } from './muscle-outlines';\n\n/* ------------------------------------------------------------------ */\n/* Core vocabulary */\n/* ------------------------------------------------------------------ */\n\n/** Muscle figure variant. `child` is the adult-male map scaled down. */\nexport type FigureVariant = 'adult-male' | 'adult-female' | 'child';\n\nexport type MuscleViewId = string;\n/** What a view depicts. */\nexport type MuscleViewKind = 'front' | 'back' | 'pelvis';\nexport type MuscleSchemeMode = 'interactive' | 'display';\nexport type RegionSide = 'left' | 'right' | 'midline';\n\n/**\n * Generic, specialty-agnostic finding type. Each maps to a distinct\n * AnnotationMarker SHAPE so the chart never relies on colour alone; the tone is\n * decorative reinforcement. Consumers label these per specialty (a \"lesion\" is\n * a derm lesion, an ortho strain, a trigger point, …).\n */\nexport type FindingType =\n | 'observation'\n | 'lesion'\n | 'pain'\n | 'treatment'\n | 'note';\n\nexport const FINDING_TYPES: FindingType[] = [\n 'observation',\n 'lesion',\n 'pain',\n 'treatment',\n 'note',\n];\n\nexport const FINDING_MARKER: Record<\n FindingType,\n { shape: MarkerShape; tone: MarkerTone }\n> = {\n observation: { shape: 'circle', tone: 'info' },\n lesion: { shape: 'triangle', tone: 'warning' },\n pain: { shape: 'cross', tone: 'error' },\n treatment: { shape: 'square', tone: 'success' },\n note: { shape: 'diamond', tone: 'neutral' },\n};\n\nexport interface MuscleFinding {\n type: FindingType;\n /** Optional free-text clinical note. PHI — never bundle real notes in stories. */\n note?: string;\n /**\n * Host presentation overrides, for a practice-configured finding such as a\n * platform diagnosis type. `shape` replaces the type's marker shape (the\n * platform's circle / square / triangle symbol), `color` its tone (a CSS\n * colour or `var(--token)`; the practice's configured colour) and `label`\n * its translated name in the region's accessible name and tooltip (the\n * diagnosis name). A practice has only three symbols, so two of its\n * diagnoses can share a shape; the `label` in the region's accessible name\n * and tooltip is what always tells them apart.\n */\n shape?: MarkerShape;\n color?: string;\n label?: string;\n}\n\n/** Findings keyed by region id. */\nexport type MuscleChart = Record<string, MuscleFinding[]>;\n\n/* ------------------------------------------------------------------ */\n/* Geometry primitives */\n/* ------------------------------------------------------------------ */\n\nexport type RegionShape =\n | { kind: 'ellipse'; cx: number; cy: number; rx: number; ry: number }\n | { kind: 'rect'; x: number; y: number; w: number; h: number; r?: number }\n | { kind: 'polygon'; points: Array<[number, number]> }\n | { kind: 'path'; d: string; fillRule?: 'evenodd'; transform?: string };\n\n/**\n * What a region is made of. Picks its illustration paint from the\n * `--anatomy-*` tokens: red skeletal muscle and ivory tendon for the muscle\n * figures; rose smooth muscle, pink mucosa, peach gland, cream gonad and\n * duct, amber urinary tract, red erectile tissue and the one neutral skin\n * tone for the organs.\n */\nexport type AnatomyTissue =\n | 'skeletal'\n | 'tendon'\n | 'muscle'\n | 'mucosa'\n | 'gland'\n | 'gonad'\n | 'duct'\n | 'urinary'\n | 'erectile'\n | 'skin';\n\n/**\n * Paint for a decorative layer of the art. A tissue fills like an organ;\n * `cavity` / `opening` are lumens, `membrane` / `fascia` / `ligament` thin\n * connective layers, `follicle` / `trigone` small landmarks. The line paints\n * stroke only: `fibre` a muscle's striations, `ink` an anatomical contour,\n * `fine` texture (folds, rugae), `crease` a skin fold, `lumen` a canal, `hidden` a structure behind\n * another (dashed, the illustrators' convention), `context` a body outline,\n * `line` the muscle figure's own stroke (the default).\n */\nexport type AnatomyPaint =\n | AnatomyTissue\n | 'fibre'\n | 'cavity'\n | 'opening'\n | 'membrane'\n | 'fascia'\n | 'ligament'\n | 'follicle'\n | 'trigone'\n | 'line'\n | 'ink'\n | 'fine'\n | 'crease'\n | 'lumen'\n | 'hidden'\n | 'context';\n\n/** A decorative, non-interactive layer of a region or view. */\nexport type AnatomyDetail = RegionShape & { paint?: AnatomyPaint };\n\nexport interface MuscleRegion {\n /** Stable id, unique within a view — the finding key + `data-region`. */\n id: string;\n /** i18n key suffix under `muscleScheme.region.*`. */\n labelKey: string;\n shape: RegionShape;\n /**\n * The tissue the region is drawn in: every built-in muscle, joint, breast\n * and pelvic organ has one, and renders as shaded anatomical illustration.\n * A region without one draws as neutral line art.\n */\n tissue?: AnatomyTissue;\n /** Non-interactive anatomical detail (cavities, linings, folds), drawn inside the region. */\n details?: AnatomyDetail[];\n /** Wider transparent pointer target for a thin structure (a duct, the urethra), in the same coordinates. */\n hitShape?: RegionShape;\n /** Bilateral side, where meaningful (drives \"left/right\" in the label). */\n side?: RegionSide;\n /** Optional grouping (e.g. 'upper-limb'). */\n group?: string;\n /** Marker anchor; defaults to the shape centroid. */\n marker?: { x: number; y: number };\n}\n\nexport interface MuscleView {\n id: MuscleViewId;\n /** i18n key suffix under `muscleScheme.view.*`. */\n labelKey: string;\n /** Which muscle figure this view is drawn on. */\n figure: FigureVariant;\n /**\n * What the view depicts: the body from the front or the back, or the\n * pelvic organs. Map it to the host's own sub-area (the platform's\n * `body_front` / `body_back`), never parse the view id.\n */\n kind: MuscleViewKind;\n viewBox: string;\n /** Pelvic diagrams use a wider canvas than full-body figures. */\n presentation?: 'organs';\n /** Non-interactive context drawn BENEATH the regions (ureters, ligaments, landmarks). */\n backdrop?: AnatomyDetail[];\n /** Non-interactive detail drawn ABOVE the regions, e.g. a hidden duct's dashed course. */\n details?: AnatomyDetail[];\n /** Panels behind separate diagrams of one view, in view coordinates. */\n plates?: Array<{ x: number; y: number; w: number; h: number }>;\n /** Labels for separate diagrams; suffixes under muscleScheme.section.*. */\n sections?: Array<{ labelKey: string; x: number; y: number }>;\n /** Decorative head silhouette drawn behind the regions (`aria-hidden`). */\n silhouette?: string;\n /**\n * The head as separately painted pieces (face and ears, hair, a hair tie),\n * drawn in order over the body and under the regions. Replaces the\n * one-colour `silhouette` when set.\n */\n head?: HeadPiece[];\n /** Optional SVG transform applied to the regions group (and the silhouette,\n * unless `silhouetteTransform` overrides it). */\n transform?: string;\n /** Optional separate transform for the silhouette (head) group — lets the\n * child figure carry a proportionally larger head than its scaled-down body. */\n silhouetteTransform?: string;\n /** Stroke-only body contour drawn in the regions (body) group so it scales\n * with the body `transform`, not the `silhouetteTransform` — this is what lets\n * the child carry an enlarged head while its body stays scaled down. */\n bodyDetail?: string;\n /** When true, the view's muscle regions render as transparent click hotspots (tinting\n * only on hover / focus / finding) rather than filled shapes — implied when a\n * realistic illustration is loaded over the figure. */\n hotspotZones?: boolean;\n regions: MuscleRegion[];\n}\n\n/** One painted piece of a figure's head. */\nexport interface HeadPiece {\n part: 'face' | 'hair' | 'tie';\n d: string;\n}\n\n/** The art of an organ-only view, as the reproductive-* modules export it. */\nexport type OrganArt = Pick<\n MuscleView,\n 'viewBox' | 'regions' | 'backdrop' | 'details' | 'plates' | 'sections'\n>;\n\n/* ------------------------------------------------------------------ */\n/* Centroid helper (marker anchor fallback) */\n/* ------------------------------------------------------------------ */\n\nexport function regionCentroid(region: MuscleRegion): {\n x: number;\n y: number;\n} {\n if (region.marker) return region.marker;\n const s = region.shape;\n if (s.kind === 'ellipse') return { x: s.cx, y: s.cy };\n if (s.kind === 'rect') return { x: s.x + s.w / 2, y: s.y + s.h / 2 };\n // A path has no cheap centroid: every path region sets its marker anchor.\n if (s.kind === 'path') return { x: 0, y: 0 };\n const n = s.points.length;\n const sum = s.points.reduce(\n (acc, [x, y]) => ({ x: acc.x + x, y: acc.y + y }),\n { x: 0, y: 0 },\n );\n return { x: sum.x / n, y: sum.y / n };\n}\n\n/* ------------------------------------------------------------------ */\n/* Muscular — real per-muscle art (body-highlighter, MIT) */\n/* ------------------------------------------------------------------ */\n\n// The library draws each head as separate sub-paths, in this order. Paint\n// each as what it is, so the hairline is the library's own, not a flat cut.\nconst HEAD_PARTS: Record<MuscleFibreSet, HeadPiece['part'][]> = {\n 'male-front': ['face', 'hair'],\n 'male-back': ['face', 'hair'],\n 'female-front': ['hair', 'tie', 'face'],\n 'female-back': ['hair', 'tie'],\n};\n\nfunction headPieces(art: MuscleFigureArt, set: MuscleFibreSet): HeadPiece[] {\n return art.silhouette\n .split(/(?=M)/)\n .filter((d) => d.trim().length > 0)\n .map((d, index) => ({ part: HEAD_PARTS[set][index] ?? 'hair', d }));\n}\n\n// Joints, hands and feet read as tendon and retinaculum, not muscle belly.\nconst TENDON_SLUGS = new Set(['knees', 'ankles', 'hands', 'feet']);\n\nfunction oppositeSide(side: RegionSide): RegionSide {\n if (side === 'midline') return side;\n return side === 'left' ? 'right' : 'left';\n}\n\n/**\n * Build clickable per-muscle regions from a generated muscle figure. Every\n * bilateral muscle is two regions (`<slug>-l` / `<slug>-r`) so left and right\n * are independently selectable — matching the platform body map, where each\n * side is always its own target.\n *\n * Sides are the patient's. The generated art turns the library's viewer sides\n * into patient sides by swapping them, which is right for a front view only:\n * seen from behind, the viewer's left is the patient's left. So a back view\n * swaps them back, and `deltoids-r` is the right shoulder in both views.\n */\nfunction muscleRegions(\n art: MuscleFigureArt,\n fibreSet: MuscleFibreSet,\n): MuscleRegion[] {\n const back = fibreSet.endsWith('-back');\n const sided = (id: string, side: RegionSide) =>\n back ? id.replace(/-[lr]$/, side === 'left' ? '-l' : '-r') : id;\n const carved: MuscleRegion[] = [];\n const muscles = art.muscles.map((m): MuscleRegion => {\n // fibres are keyed by the generated id\n const fibres = MUSCLE_FIBRES[fibreSet][m.id];\n const side = back ? oppositeSide(m.side) : m.side;\n const carve = CARVE[fibreSet][m.id];\n const pieces = m.d.split(/(?=M)/).filter((piece) => piece.trim());\n const kept = carve\n ? pieces.filter((_, index) => !carve.pieces.includes(index)).join('')\n : m.d;\n if (carve) {\n const slug = m.id.replace(/-[lr]$/, '');\n carved.push({\n id: sided(m.id.replace(slug, carve.slug), side),\n labelKey: carve.labelKey,\n side,\n tissue: 'skeletal',\n shape: {\n kind: 'path',\n d: pieces.filter((_, i) => carve.pieces.includes(i)).join(''),\n },\n marker: carve.marker,\n });\n }\n return {\n id: sided(m.id, side),\n labelKey: m.labelKey,\n side,\n tissue: TENDON_SLUGS.has(m.id.replace(/-[lr]$/, ''))\n ? 'tendon'\n : 'skeletal',\n shape: {\n kind: 'path',\n d: kept,\n ...(m.fillRule ? { fillRule: m.fillRule } : {}),\n } as const,\n ...(fibres\n ? { details: [{ kind: 'path', d: fibres, paint: 'fibre' } as const] }\n : {}),\n marker: carve ? carve.keep : { x: m.cx, y: m.cy },\n };\n });\n // Zones are drawn after the muscles, so a zone over a muscle's edge takes\n // the click; the head goes first, so the neck stays on top of the jaw.\n const [head, ...zones] = extraZones(art, fibreSet);\n return [head, ...muscles, ...carved, ...zones];\n}\n\n/* ------------------------------------------------------------------ */\n/* Zones the muscle library does not draw */\n/* ------------------------------------------------------------------ */\n\n// The platform's body map has zones a muscle map lacks: head, spine, ribs,\n// hip, elbow, wrist, scapula and the back of the knee. A body chart that\n// replaces it must keep every one of them, so the kit adds them here.\n//\n// Ribs and scapula are carved out of the muscles drawn over them: the upper\n// slats of the external oblique (the serratus over the ribs) and the small\n// pieces of the upper back over the shoulder blade. Piece indices count the\n// library path's sub-paths; markers are in the figure's own coordinates and\n// move the muscle's marker onto the part it keeps.\ninterface Carve {\n pieces: number[];\n slug: string;\n labelKey: string;\n marker: { x: number; y: number };\n keep: { x: number; y: number };\n}\n\nconst ribs = (pieces: number[], x: number, keepX: number, keepY: number) => ({\n pieces,\n slug: 'ribs',\n labelKey: 'ribs',\n marker: { x, y: 455 },\n keep: { x: keepX, y: keepY },\n});\n\nconst scapula = (\n pieces: number[],\n x: number,\n y: number,\n keep: { x: number; y: number },\n) => ({ pieces, slug: 'scapula', labelKey: 'scapula', marker: { x, y }, keep });\n\nconst CARVE: Record<MuscleFibreSet, Record<string, Carve>> = {\n 'male-front': {\n 'obliques-r': ribs([0, 1, 2, 3], 278, 288, 560),\n 'obliques-l': ribs([0, 1, 2, 3], 450, 440, 560),\n },\n 'male-back': {\n 'upper-back-r': scapula([0, 2], 992, 368, { x: 1015, y: 493 }),\n 'upper-back-l': scapula([0, 1], 1175, 368, { x: 1152, y: 493 }),\n },\n 'female-front': {\n 'obliques-r': ribs([0, 1, 2, 3, 5], 249, 250, 556),\n 'obliques-l': ribs([0, 1, 3, 4, 5], 391, 390, 557),\n },\n 'female-back': {\n 'upper-back-r': scapula([0], 1056, 342, { x: 1093, y: 460 }),\n 'upper-back-l': scapula([0], 1229, 342, { x: 1192, y: 460 }),\n },\n};\n\n// Joints, in VIEW coordinates (the 724 × 1448 chart) for the joint on the\n// viewer's left: the patient's right from the front, left from behind. The\n// other side mirrors about the midline, x = 362.\ninterface Joint {\n slug: string;\n labelKey: string;\n x: number;\n y: number;\n rx: number;\n ry: number;\n}\n\nconst joint = (\n slug: string,\n x: number,\n y: number,\n rx: number,\n ry: number,\n labelKey = slug,\n): Joint => ({ slug, labelKey, x, y, rx, ry });\n\nconst JOINTS: Record<MuscleFibreSet, Joint[]> = {\n 'male-front': [\n joint('elbow', 178, 485, 13, 10),\n joint('wrist', 118, 686, 18, 7),\n joint('hip', 245, 655, 13, 11),\n ],\n 'male-back': [\n joint('elbow', 172, 513, 12, 9),\n joint('wrist', 114, 687, 18, 7),\n joint('knee-back', 280, 1000, 11, 12, 'kneeBack'),\n ],\n 'female-front': [\n joint('elbow', 210, 514, 10, 8),\n joint('wrist', 140, 664, 14, 7),\n joint('hip', 262, 614, 10, 10),\n ],\n 'female-back': [\n joint('elbow', 222, 510, 11, 9),\n joint('wrist', 138, 659, 13, 7),\n joint('knee-back', 309, 988, 10, 11, 'kneeBack'),\n ],\n};\n\n// The spine runs down the gap between the paired back muscles; the head zone\n// is the head the library draws, with its marker on the face or the crown.\nconst SPINE_TOP: Record<MuscleFibreSet, number> = {\n 'male-front': 0,\n 'male-back': 210,\n 'female-front': 0,\n 'female-back': 262,\n};\n\nconst HEAD_MARKER: Record<MuscleFibreSet, { x: number; y: number }> = {\n 'male-front': { x: 362, y: 130 },\n 'male-back': { x: 362, y: 125 },\n 'female-front': { x: 362, y: 180 },\n 'female-back': { x: 350, y: 165 },\n};\n\nconst round = (n: number) => Math.round(n * 100) / 100;\n\n/** A view-coordinate measure in the figure's own coordinates. */\nfunction toArt(set: MuscleFibreSet) {\n const [tx, ty, s] = (MUSCLE_NORMALISE[set].match(/-?\\d+(\\.\\d+)?/g) ?? []).map(\n Number,\n );\n return {\n x: (x: number) => round((x - tx) / s),\n y: (y: number) => round((y - ty) / s),\n len: (l: number) => round(l / s),\n };\n}\n\nconst ellipsePath = (cx: number, cy: number, rx: number, ry: number) =>\n `M${round(cx - rx)} ${cy}a${rx} ${ry} 0 1 0 ${round(2 * rx)} 0a${rx} ${ry} 0 1 0 ${round(-2 * rx)} 0Z`;\n\nfunction extraZones(art: MuscleFigureArt, set: MuscleFibreSet): MuscleRegion[] {\n const back = set.endsWith('-back');\n const at = toArt(set);\n const joints = JOINTS[set].flatMap((j) =>\n (['left', 'right'] as const).map((side): MuscleRegion => {\n const viewerLeft = back ? side === 'left' : side === 'right';\n const x = at.x(viewerLeft ? j.x : 724 - j.x);\n const y = at.y(j.y);\n return {\n id: `${j.slug}-${side === 'left' ? 'l' : 'r'}`,\n labelKey: j.labelKey,\n side,\n tissue: 'tendon',\n shape: {\n kind: 'path',\n d: ellipsePath(x, y, at.len(j.rx), at.len(j.ry)),\n },\n marker: { x, y },\n };\n }),\n );\n const head: MuscleRegion = {\n id: 'head',\n labelKey: 'head',\n side: 'midline',\n shape: { kind: 'path', d: art.silhouette },\n marker: { x: at.x(HEAD_MARKER[set].x), y: at.y(HEAD_MARKER[set].y) },\n };\n if (!back) return [head, ...joints];\n const [x0, x1, y0, y1] = [\n at.x(357),\n at.x(367),\n at.y(SPINE_TOP[set]),\n at.y(630),\n ];\n const r = round((x1 - x0) / 2);\n const spine: MuscleRegion = {\n id: 'spine',\n labelKey: 'spine',\n side: 'midline',\n tissue: 'tendon',\n shape: {\n kind: 'path',\n d: `M${x0} ${round(y0 + r)}a${r} ${r} 0 0 1 ${round(2 * r)} 0V${round(y1 - r)}a${r} ${r} 0 0 1 ${round(-2 * r)} 0Z`,\n },\n marker: { x: round((x0 + x1) / 2), y: at.y(450) },\n };\n return [head, spine, ...joints];\n}\n\n/* ------------------------------------------------------------------ */\n/* Adult reproductive organs */\n/* ------------------------------------------------------------------ */\n\n// Breasts sit on the adult female body figure, in its own coordinates; the\n// pelvic organs are separate views (reproductive-*.ts), so no muscle target\n// can hide an organ. Each breast is the mammary gland drawn over the lower\n// pectoral, from the axillary tail round the inframammary fold, with areola\n// and nipple. Its upper edge stays below the pectoral's own marker anchor, so\n// a saved pectoral finding keeps its place and its target. Anatomical left is\n// viewer right; children never inherit organ regions.\nconst BREAST_R = {\n d: 'M 224 376 C 240 383.5 270 386 290 391 C 304 395 312.5 405 312.5 418.5 C 312.5 436.5 296 450.5 268.5 450.5 C 242.5 450.5 221.5 438 215.5 418.5 C 211.5 402.5 213.5 386.5 224 376 Z',\n areola: { cx: 262, cy: 419 },\n};\nconst FIGURE_MIDLINE = 320.5;\nconst mirrorX = (x: number): number => 2 * FIGURE_MIDLINE - x;\n\nfunction mirrorPath(d: string): string {\n // The breast path uses absolute M / C / Z commands only.\n let index = 0;\n return d.replace(/-?\\d+(?:\\.\\d+)?/g, (value) =>\n String(\n index++ % 2 === 0 ? Math.round(mirrorX(Number(value)) * 10) / 10 : value,\n ),\n );\n}\n\nfunction breastRegion(side: 'left' | 'right'): MuscleRegion {\n const left = side === 'left';\n const cx = left ? mirrorX(BREAST_R.areola.cx) : BREAST_R.areola.cx;\n const cy = BREAST_R.areola.cy;\n return {\n id: `breast-${left ? 'l' : 'r'}`,\n labelKey: 'breast',\n side,\n group: 'reproductive',\n tissue: 'gland',\n shape: { kind: 'path', d: left ? mirrorPath(BREAST_R.d) : BREAST_R.d },\n details: [\n { kind: 'ellipse', cx, cy, rx: 9.5, ry: 9, paint: 'mucosa' },\n { kind: 'ellipse', cx, cy, rx: 3.2, ry: 3.2, paint: 'erectile' },\n ],\n marker: { x: cx, y: cy },\n };\n}\n\nconst FEMALE_BREASTS = [breastRegion('right'), breastRegion('left')];\n\n/* ------------------------------------------------------------------ */\n/* View registry */\n/* ------------------------------------------------------------------ */\n\n// The four pristine muscle figures ship at different native sizes + viewBoxes\n// (the library draws its female front/back larger and at a different aspect than\n// the male). Rendered each at `w-full h-auto` that makes front read taller than\n// back side-by-side. We normalise every figure into ONE common viewBox at a\n// uniform body height (adults centred, child feet-aligned and scaled down) via a\n// per-figure `view.transform` — presentation only (scale + translate, applied to\n// silhouette, body contour and regions alike). Geometry stays pristine; numbers\n// are measured from each figure's rendered bounding box (getBBox) → scale =\n// TARGET_BODY_H / bboxHeight. Re-derive if the source art ever changes.\nconst MUSCLE_VIEWBOX = '0 0 724 1448';\nconst MUSCLE_NORMALISE = {\n 'male-front': 'translate(-26.91 -49.02) scale(1.0678)',\n 'male-back': 'translate(-795.24 -49.05) scale(1.0678)',\n 'female-front': 'translate(62.31 54) scale(0.9351)',\n 'female-back': 'translate(-706.38 54) scale(0.9351)',\n // Child: the androgynous adult-MALE map, body scaled to ~0.78 of the adult body\n // height and FEET-ALIGNED to the adult baseline (so it stands on the same ground,\n // reading as shorter rather than floating). There is no openly-licensed child\n // muscle map — see MUSCLE-ASSETS.md. The body transform drives the regions +\n // body contour; the head gets a separate `…-head` transform below.\n // childRegions() then shortens the legs, so the child stands at about 0.74\n // of the adult height.\n 'child-front': 'translate(58.65 268.45) scale(0.8328)',\n 'child-back': 'translate(-540.65 268.42) scale(0.8329)',\n} as const;\n// Child head transform = body transform ∘ scaleAbout(neck, 1.18). Scaling the head\n// up about the neck pivot keeps it joined to the body while giving the child the\n// larger head of a child's proportions. Applied via `silhouetteTransform`.\n// The child's body is shorter in the leg (below), so its head moves down by\n// the same drop before it is enlarged about the neck.\n// The head's enlargement in the figure's own coordinates (after the drop).\nconst CHILD_HEAD_SCALE = {\n front: { tx: -65.54, ty: -45.66, s: 1.18 },\n back: { tx: -195.1, ty: -42.99, s: 1.18 },\n} as const;\nconst childHead = (side: keyof typeof CHILD_HEAD_SCALE) => {\n const { tx, ty, s } = CHILD_HEAD_SCALE[side];\n return `translate(0 ${CHILD_PROPORTIONS.drop}) translate(${tx} ${ty}) scale(${s})`;\n};\nconst MUSCLE_CHILD_HEAD = {\n front: `translate(58.65 268.45) scale(0.8328) ${childHead('front')}`,\n back: `translate(-540.65 268.42) scale(0.8329) ${childHead('back')}`,\n} as const;\n\n// Child proportions on the adult-male map: the legs (and the gluteal muscles,\n// which travel with them) shorten about the soles, so the feet stay on the\n// ground line, and every other region moves down to meet them. One affine\n// transform per region keeps the library paths untouched; the outline in\n// muscle-outlines.ts is warped the same way.\nconst CHILD_LEG_SLUGS = new Set([\n 'adductors',\n 'quadriceps',\n 'hamstring',\n 'knees',\n 'tibialis',\n 'calves',\n 'ankles',\n 'feet',\n 'gluteal',\n 'knee-back',\n]);\n\nfunction childRegions(\n regions: MuscleRegion[],\n side: keyof typeof CHILD_HEAD_SCALE,\n): MuscleRegion[] {\n const { legScale, sole, drop } = CHILD_PROPORTIONS;\n const head = CHILD_HEAD_SCALE[side];\n return regions.map((region) => {\n const leg = CHILD_LEG_SLUGS.has(region.id.replace(/-[lr]$/, ''));\n // The head zone grows with the child's enlarged head.\n const isHead = region.id === 'head';\n const transform = isHead\n ? childHead(side)\n : leg\n ? `matrix(1 0 0 ${legScale} 0 ${Math.round(sole * (1 - legScale) * 100) / 100})`\n : `translate(0 ${drop})`;\n const move = (point: { x: number; y: number }) =>\n isHead\n ? {\n x: point.x * head.s + head.tx,\n y: point.y * head.s + head.ty + drop,\n }\n : {\n x: point.x,\n y: leg ? sole - (sole - point.y) * legScale : point.y + drop,\n };\n const withTransform = <T extends RegionShape>(shape: T): T =>\n shape.kind === 'path' ? { ...shape, transform } : shape;\n return {\n ...region,\n shape: withTransform(region.shape),\n details: region.details?.map(withTransform),\n marker: region.marker && move(region.marker),\n };\n });\n}\n\nexport const MUSCLE_VIEWS: Record<MuscleViewId, MuscleView> = {\n // --- Adult male (the reference figure) ---\n 'muscular-front': {\n id: 'muscular-front',\n labelKey: 'muscularFront',\n figure: 'adult-male',\n kind: 'front',\n viewBox: MUSCLE_VIEWBOX,\n transform: MUSCLE_NORMALISE['male-front'],\n silhouette: MUSCLE_MALE_FRONT.silhouette,\n head: headPieces(MUSCLE_MALE_FRONT, 'male-front'),\n bodyDetail: MUSCLE_OUTLINES['male-front'],\n regions: muscleRegions(MUSCLE_MALE_FRONT, 'male-front'),\n },\n 'muscular-back': {\n id: 'muscular-back',\n labelKey: 'muscularBack',\n figure: 'adult-male',\n kind: 'back',\n viewBox: MUSCLE_VIEWBOX,\n transform: MUSCLE_NORMALISE['male-back'],\n silhouette: MUSCLE_MALE_BACK.silhouette,\n head: headPieces(MUSCLE_MALE_BACK, 'male-back'),\n bodyDetail: MUSCLE_OUTLINES['male-back'],\n regions: muscleRegions(MUSCLE_MALE_BACK, 'male-back'),\n },\n // Organ-only anatomy: a frontal cutaway with no muscle geometry, silhouette\n // or body outline (reproductive-male.ts).\n 'reproductive-male': {\n id: 'reproductive-male',\n labelKey: 'reproductiveMale',\n figure: 'adult-male',\n kind: 'pelvis',\n presentation: 'organs',\n ...MALE_PELVIS,\n },\n // --- Adult female (the library's genuine female map) ---\n // Normalised into the same common viewBox + uniform body height as the man\n // (see MUSCLE_NORMALISE) so front/back and male/female align head-to-feet.\n 'muscular-front-female': {\n id: 'muscular-front-female',\n labelKey: 'muscularFront',\n figure: 'adult-female',\n kind: 'front',\n viewBox: MUSCLE_VIEWBOX,\n transform: MUSCLE_NORMALISE['female-front'],\n silhouette: MUSCLE_FEMALE_FRONT.silhouette,\n head: headPieces(MUSCLE_FEMALE_FRONT, 'female-front'),\n bodyDetail: MUSCLE_OUTLINES['female-front'],\n regions: [\n ...muscleRegions(MUSCLE_FEMALE_FRONT, 'female-front'),\n ...FEMALE_BREASTS,\n ],\n },\n 'muscular-back-female': {\n id: 'muscular-back-female',\n labelKey: 'muscularBack',\n figure: 'adult-female',\n kind: 'back',\n viewBox: MUSCLE_VIEWBOX,\n transform: MUSCLE_NORMALISE['female-back'],\n silhouette: MUSCLE_FEMALE_BACK.silhouette,\n head: headPieces(MUSCLE_FEMALE_BACK, 'female-back'),\n bodyDetail: MUSCLE_OUTLINES['female-back'],\n regions: muscleRegions(MUSCLE_FEMALE_BACK, 'female-back'),\n },\n // Coronal internal organs, the vulva and the bladder in three labelled\n // panels (reproductive-female.ts).\n 'reproductive-female': {\n id: 'reproductive-female',\n labelKey: 'reproductiveFemale',\n figure: 'adult-female',\n kind: 'pelvis',\n presentation: 'organs',\n ...FEMALE_PELVIS,\n },\n // --- Child (the adult-MALE map, body scaled down + feet-aligned, with a\n // proportionally larger head via silhouetteTransform). Interim: no\n // openly-licensed child muscle map exists — see MUSCLE-ASSETS.md.\n 'muscular-front-child': {\n id: 'muscular-front-child',\n labelKey: 'muscularFront',\n figure: 'child',\n kind: 'front',\n viewBox: MUSCLE_VIEWBOX,\n transform: MUSCLE_NORMALISE['child-front'],\n silhouetteTransform: MUSCLE_CHILD_HEAD.front,\n silhouette: MUSCLE_MALE_FRONT.silhouette,\n head: headPieces(MUSCLE_MALE_FRONT, 'male-front'),\n bodyDetail: MUSCLE_OUTLINES['child-front'],\n regions: childRegions(\n muscleRegions(MUSCLE_MALE_FRONT, 'male-front'),\n 'front',\n ),\n },\n 'muscular-back-child': {\n id: 'muscular-back-child',\n labelKey: 'muscularBack',\n figure: 'child',\n kind: 'back',\n viewBox: MUSCLE_VIEWBOX,\n transform: MUSCLE_NORMALISE['child-back'],\n silhouetteTransform: MUSCLE_CHILD_HEAD.back,\n silhouette: MUSCLE_MALE_BACK.silhouette,\n head: headPieces(MUSCLE_MALE_BACK, 'male-back'),\n bodyDetail: MUSCLE_OUTLINES['child-back'],\n regions: childRegions(muscleRegions(MUSCLE_MALE_BACK, 'male-back'), 'back'),\n },\n};\n\n/* ------------------------------------------------------------------ */\n/* Lookups + figure mapping */\n/* ------------------------------------------------------------------ */\n\nexport function getView(id: MuscleViewId): MuscleView | undefined {\n return MUSCLE_VIEWS[id];\n}\n\n/** Muscle front/back, followed by the organ-only view for adults. */\nexport function viewsForFigure(figure: FigureVariant): MuscleView[] {\n return Object.values(MUSCLE_VIEWS).filter((v) => v.figure === figure);\n}\n\nexport function getRegion(\n viewId: MuscleViewId,\n regionId: string,\n): MuscleRegion | undefined {\n return MUSCLE_VIEWS[viewId]?.regions.find((r) => r.id === regionId);\n}\n\n/**\n * The view that carries a region for a figure: where a host sends the chart\n * when the clinician opens a saved finding from a list. Falls back to any view\n * when the figure has none (a male region on a female patient's record).\n * A region drawn on both the front and back views (each figure shares 25 ids\n * between them, the head and the elbows and wrists among them) resolves to the\n * front view.\n */\nexport function findRegionView(\n regionId: string,\n figure?: FigureVariant,\n): MuscleView | undefined {\n const views = Object.values(MUSCLE_VIEWS);\n const has = (view: MuscleView) =>\n view.regions.some((region) => region.id === regionId);\n return (\n views.find(\n (view) => view.figure === (figure ?? 'adult-male') && has(view),\n ) ?? views.find(has)\n );\n}\n\n/** Default view shown when no explicit `views` are given. */\nexport const DEFAULT_MUSCLE_VIEW: MuscleViewId = 'muscular-front';\n\n/**\n * Pick a muscle figure from patient demographics — mirrors the platform's\n * `getDefaultFigureVariant(gender, age)`. Pure heuristic; the host can override\n * with the explicit `figure` prop. Patients under 12 resolve to the (scaled-down)\n * `child` figure regardless of sex; otherwise the figure follows sex.\n */\nexport function figureFromPatient(\n sex: 'm' | 'f' | 'x' | undefined,\n ageYears: number | undefined,\n): FigureVariant {\n if (ageYears != null && ageYears < 12) return 'child';\n return sex === 'f' ? 'adult-female' : 'adult-male';\n}\n\nexport function emptyChart(): MuscleChart {\n return {};\n}\n","/* ------------------------------------------------------------------ */\n/* MuscleScheme — the kit's body chart. */\n/* */\n/* A figure resolves to muscle front/back views and, for adults, an */\n/* organ-only pelvic view. Each view carries selectable regions. */\n/* Findings use stable region ids and are surfaced with the shared */\n/* AnnotationMarker glyph — the SHAPE carries the finding type, never */\n/* colour alone. */\n/* */\n/* The muscle art is real per-muscle paths (react-native-body- */\n/* highlighter, MIT), drawn as neutral line art. The pelvic organs are */\n/* original kit illustrations in tissue paints (`--anatomy-*`). The */\n/* data module is the swap seam (hosted art drops in via */\n/* `illustrationBaseUrl`); region ids and labels are the contract. */\n/* ------------------------------------------------------------------ */\n\nimport {\n forwardRef,\n useCallback,\n useEffect,\n useId,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n type CSSProperties,\n type KeyboardEvent,\n type ReactElement,\n} from 'react';\nimport * as RadixTooltip from '@radix-ui/react-tooltip';\nimport { Check } from 'lucide-react';\nimport { cva } from 'class-variance-authority';\nimport { useTranslation } from 'react-i18next';\nimport { useAgentRegistration } from '../../agent/registry';\nimport {\n AnnotationMarker,\n markerPath,\n type MarkerShape,\n type MarkerTone,\n} from '../annotation-marker';\nimport { Tabs } from '../tabs';\nimport { Button } from '../button';\nimport { muscleSchemeAgent } from './muscle-scheme.agent';\nimport {\n MUSCLE_VIEWS,\n DEFAULT_MUSCLE_VIEW,\n FINDING_MARKER,\n FINDING_TYPES,\n findRegionView,\n regionCentroid,\n viewsForFigure,\n type AnatomyPaint,\n type AnatomyTissue,\n type MuscleChart,\n type MuscleFinding,\n type MuscleSchemeMode,\n type MuscleRegion,\n type MuscleView,\n type MuscleViewId,\n type FigureVariant,\n type FindingType,\n type RegionShape,\n} from './muscle-scheme-data';\n\n/* ------------------------------------------------------------------ */\n/* Public types */\n/* ------------------------------------------------------------------ */\n\nexport interface MuscleSchemeProps {\n /** Opaque instance id — emitted as `data-component-id` for the agent registry. */\n id?: string;\n /** Muscle figure variant. Default `'adult-male'`. */\n figure?: FigureVariant;\n /**\n * Explicit view ids to expose. When more than one, they render as tabs.\n * Defaults to muscle front/back and the organ-only view for adults.\n * Children expose only muscle front/back.\n */\n views?: MuscleViewId[];\n /**\n * Controlled active view. Pair with `onViewChange`; the host keeps its own\n * sub-area (the platform's `body_front` / `body_back`) in step through\n * each view's `kind`.\n */\n view?: MuscleViewId;\n /** Uncontrolled initial view. Defaults to the first resolved view. */\n defaultView?: MuscleViewId;\n /** Fired when the clinician (or an agent) switches view. */\n onViewChange?: (viewId: MuscleViewId) => void;\n /** `'interactive'` enables region selection + finding edits; `'display'` is read-only. */\n mode?: MuscleSchemeMode;\n /** Controlled findings — `Record<regionId, MuscleFinding[]>`. */\n value?: MuscleChart;\n /** Uncontrolled initial findings. */\n defaultValue?: MuscleChart;\n /** Fired whenever the chart changes. */\n onChange?: (next: MuscleChart) => void;\n /** Fired when a region is activated (click / Enter / Space / focus-select). */\n onSelectRegion?: (regionId: string, viewId: MuscleViewId) => void;\n /**\n * Host-owned selection: the region ids to show as selected. Passing it puts\n * the chart in selection mode — each region reports `aria-pressed` for its\n * selection, not its findings. One id for a \"pick a region, then add a\n * finding\" flow (the platform's diagnosis tab); several for a multi-select\n * (the diagnosis configuration's element picker). The host updates it from\n * `onSelectRegion`.\n */\n selectedRegions?: string[];\n /**\n * The finding type a region-click applies in interactive mode (the selected\n * tool in a finding picker). Clicking a region toggles this finding.\n */\n activeFinding?: FindingType;\n /** Show the finding-type legend below the figure. Default `false`. */\n legend?: boolean;\n /**\n * Show the labelled organ targets below an organ view (`--min-target-size`\n * controls naming every organ). Default `true` whenever regions are\n * selectable. Turn it off only when the host already lists the regions with\n * targets of at least `--min-target-size`: a narrow organ (the urethra, a\n * vas deferens) is no larger target on the figure itself.\n */\n regionList?: boolean;\n /**\n * Base URL for realistic muscle illustrations, served per-view as\n * `${illustrationBaseUrl}/${viewId}.svg` (e.g. `…/muscular-front.svg`).\n * When set, each view renders that illustration as the figure and its muscle\n * regions become transparent CLICK HOTSPOTS. Organ art stays visible.\n * When unset, the kit's\n * built-in muscle art is the fallback. The art is NOT bundled in the kit — host\n * it (CDN) and pass the base here, mirroring `ToothScheme`'s `assetBaseUrl`.\n * Trusted developer-controlled value, interpolated into an SVG `<image href>`\n * (which cannot execute scripts). Sourcing + licensing live in `MUSCLE-ASSETS.md`.\n */\n illustrationBaseUrl?: string;\n /** Accessible label override for the chart region. */\n ariaLabel?: string;\n /** Extra class names on the wrapper. */\n className?: string;\n}\n\nexport interface MuscleSchemeHandle {\n /** Programmatically focus a region by id (in the active view). */\n focusRegion: (regionId: string) => void;\n /** Read the current chart state. */\n getChart: () => MuscleChart;\n /** Read the findings recorded on one region (empty array if none). */\n getRegion: (regionId: string) => MuscleFinding[];\n /** Read the region ids carrying a given finding type. */\n regionsWith: (type: FindingType) => string[];\n /** Add a finding to a region (no-op if already present). */\n setFinding: (regionId: string, type: FindingType, note?: string) => void;\n /** Remove a finding type from a region (no-op if absent). */\n removeFinding: (regionId: string, type: FindingType) => void;\n /** Clear every finding from a region. */\n clearRegion: (regionId: string) => void;\n /** Switch the active view. */\n setView: (viewId: MuscleViewId) => void;\n /** Read the active view id. */\n getView: () => MuscleViewId;\n}\n\n/* ------------------------------------------------------------------ */\n/* Region labels — shared by the chart and by host lists */\n/* ------------------------------------------------------------------ */\n\n/**\n * A region's name, translated. A paired region has its own full name per side\n * (\"Left ovary\", \"Ovaio sinistro\", \"Linker Eierstock\"), because word order and\n * agreement differ by language; side and name are only joined as a fallback.\n */\nfunction useRegionName(): (region: MuscleRegion) => string {\n const { t } = useTranslation('ui');\n return useCallback(\n (region: MuscleRegion) => {\n const name = t(`muscleScheme.region.${region.labelKey}`);\n if (region.side !== 'left' && region.side !== 'right') return name;\n return t(`muscleScheme.sided.${region.labelKey}.${region.side}`, {\n defaultValue: `${t(`muscleScheme.side.${region.side}`)} ${name}`,\n });\n },\n [t],\n );\n}\n\n/**\n * Translated region names for host surfaces outside the chart: the selected\n * element summary, a findings list, a configuration picker. Returns\n * `(regionId, figure?) => \"Left ovary\"`, in the kit's own translations, or the\n * id itself for an unknown region (never an empty string).\n */\nexport function useMuscleRegionLabel(): (\n regionId: string,\n figure?: FigureVariant,\n) => string {\n const regionName = useRegionName();\n return useCallback(\n (regionId: string, figure?: FigureVariant) => {\n const region = findRegionView(regionId, figure)?.regions.find(\n (entry) => entry.id === regionId,\n );\n return region ? regionName(region) : regionId;\n },\n [regionName],\n );\n}\n\n/* ------------------------------------------------------------------ */\n/* Tone → fill class (no inline styles; tokens only) */\n/* ------------------------------------------------------------------ */\n\n// Every marker carries a halo in the page colour so it stays legible over\n// tissue paint, a muscle tint or hosted artwork.\nconst markerHalo =\n 'ds:[stroke:var(--background)] ds:[stroke-width:3] ds:[paint-order:stroke] ds:[stroke-linejoin:round] ds:[vector-effect:non-scaling-stroke]';\n\nconst markerToneFill: Record<MarkerTone, string> = {\n neutral: 'ds:[fill:var(--muted-foreground)]',\n info: 'ds:[fill:var(--info)]',\n success: 'ds:[fill:var(--success)]',\n warning: 'ds:[fill:var(--warning-readable)]',\n error: 'ds:[fill:var(--destructive)]',\n accent: 'ds:[fill:var(--accent)]',\n};\n\n// A host's colour for a finding (a practice's configured diagnosis colour)\n// arrives as a CSS custom property; this class consumes it.\nconst hostColourFill = 'ds:[fill:var(--muscle-finding-color)]';\n\n/**\n * The custom-property setter for a host finding colour, or nothing when the\n * finding has none or it is not a CSS colour (an invalid value would paint the\n * marker black). Inline style: permitted per 23-constraints §Runtime-computed\n * dimensions and custom properties (a custom-property setter; the fill rule\n * lives in `hostColourFill`).\n */\nfunction hostColourStyle(color: string | undefined): CSSProperties | undefined {\n if (!color) return undefined;\n if (typeof CSS !== 'undefined' && !CSS.supports('color', color))\n return undefined;\n return { '--muscle-finding-color': color } as CSSProperties;\n}\n\n/** The marker's fill: the host colour when it is valid, else the type's tone. */\nfunction markerFill(finding: MuscleFinding): {\n className: string;\n style: CSSProperties | undefined;\n} {\n const style = hostColourStyle(finding.color);\n return {\n className: style\n ? hostColourFill\n : markerToneFill[FINDING_MARKER[finding.type].tone],\n style,\n };\n}\n\n/**\n * The finding glyph in an organ target: the figure's own marker geometry\n * (`markerPath`), so a host shape or colour reads the same in both places.\n */\nfunction FindingGlyph({ finding }: { finding: MuscleFinding }): ReactElement {\n const marker = FINDING_MARKER[finding.type];\n const fill = markerFill(finding);\n return (\n <svg\n viewBox=\"0 0 24 24\"\n aria-hidden=\"true\"\n focusable=\"false\"\n data-finding={finding.type}\n className=\"ds:block ds:size-3 ds:shrink-0\"\n >\n <path\n d={markerPath(finding.shape ?? marker.shape, 12, 12, 10)}\n className={fill.className}\n // eslint-disable-next-line react/forbid-dom-props -- caller-supplied practice colour injected via a CSS variable (23-constraints §custom properties)\n style={fill.style}\n />\n </svg>\n );\n}\n\n/* ------------------------------------------------------------------ */\n/* Anatomy paints */\n/* ------------------------------------------------------------------ */\n\n// The organ palette, read once on an organ <svg> with each token's light-theme\n// value as the fallback, so an older host tokens sheet never paints organs\n// black. Everything inside reads the short `--am-*` aliases.\nconst anatomyPalette = [\n 'ds:[--am-ink:var(--anatomy-ink,color-mix(in_oklab,var(--color-red-900)_62%,var(--color-grey-900)))]',\n 'ds:[--am-skeletal:var(--anatomy-skeletal,color-mix(in_oklab,var(--color-red-400)_60%,color-mix(in_oklab,var(--color-grey-800)_70%,var(--color-red-700))))]',\n 'ds:[--am-tendon:var(--anatomy-tendon,color-mix(in_oklab,var(--color-yellow-50)_60%,var(--color-grey-600)))]',\n 'ds:[--am-muscle:var(--anatomy-muscle,color-mix(in_oklab,var(--color-red-200)_60%,var(--color-grey-600)))]',\n 'ds:[--am-mucosa:var(--anatomy-mucosa,color-mix(in_oklab,var(--color-red-300)_72%,var(--color-grey-700)))]',\n 'ds:[--am-cavity:var(--anatomy-cavity,color-mix(in_oklab,var(--color-red-700)_62%,var(--color-red-300)))]',\n 'ds:[--am-gland:var(--anatomy-gland,color-mix(in_oklab,var(--color-orange-200)_55%,color-mix(in_oklab,var(--color-red-200)_70%,var(--color-grey-700))))]',\n 'ds:[--am-gonad:var(--anatomy-gonad,color-mix(in_oklab,var(--color-orange-50)_55%,var(--color-red-100)))]',\n 'ds:[--am-duct:var(--anatomy-duct,color-mix(in_oklab,var(--color-yellow-100)_55%,var(--color-orange-100)))]',\n 'ds:[--am-urinary:var(--anatomy-urinary,color-mix(in_oklab,var(--color-yellow-200)_58%,var(--color-orange-100)))]',\n 'ds:[--am-erectile:var(--anatomy-erectile,color-mix(in_oklab,var(--color-red-400)_62%,var(--color-grey-800)))]',\n 'ds:[--am-skin:var(--anatomy-skin,color-mix(in_oklab,var(--color-orange-300)_50%,color-mix(in_oklab,var(--color-grey-800)_85%,var(--color-red-700))))]',\n 'ds:[--am-membrane:var(--anatomy-membrane,color-mix(in_oklab,var(--color-red-100)_40%,var(--color-grey-500)))]',\n 'ds:[--am-fascia:var(--anatomy-fascia,color-mix(in_oklab,var(--color-orange-100)_55%,var(--color-red-100)))]',\n 'ds:[--am-highlight:var(--anatomy-highlight,var(--color-grey-50))]',\n].join(' ');\n\n// A filled tissue: its paint, edged with the paint mixed into the ink.\nconst edge =\n 'ds:[stroke-width:1.1] ds:[stroke-linejoin:round] ds:[vector-effect:non-scaling-stroke]';\nconst paintClass: Record<AnatomyPaint, string> = {\n skeletal: `ds:[fill:var(--am-skeletal)] ds:[stroke:color-mix(in_oklab,var(--am-skeletal)_45%,var(--am-ink))] ${edge}`,\n tendon: `ds:[fill:var(--am-tendon)] ds:[stroke:color-mix(in_oklab,var(--am-tendon)_40%,var(--am-ink))] ${edge}`,\n fibre:\n 'ds:[fill:none] ds:[stroke:var(--am-ink)] ds:[stroke-opacity:0.3] ds:[stroke-width:0.75] ds:[stroke-linecap:round] ds:[stroke-linejoin:round] ds:[vector-effect:non-scaling-stroke]',\n muscle: `ds:[fill:var(--am-muscle)] ds:[stroke:color-mix(in_oklab,var(--am-muscle)_32%,var(--am-ink))] ${edge}`,\n mucosa: `ds:[fill:var(--am-mucosa)] ds:[stroke:color-mix(in_oklab,var(--am-mucosa)_32%,var(--am-ink))] ${edge}`,\n gland: `ds:[fill:var(--am-gland)] ds:[stroke:color-mix(in_oklab,var(--am-gland)_32%,var(--am-ink))] ${edge}`,\n gonad: `ds:[fill:var(--am-gonad)] ds:[stroke:color-mix(in_oklab,var(--am-gonad)_32%,var(--am-ink))] ${edge}`,\n duct: `ds:[fill:var(--am-duct)] ds:[stroke:color-mix(in_oklab,var(--am-duct)_32%,var(--am-ink))] ${edge}`,\n urinary: `ds:[fill:var(--am-urinary)] ds:[stroke:color-mix(in_oklab,var(--am-urinary)_32%,var(--am-ink))] ${edge}`,\n erectile: `ds:[fill:var(--am-erectile)] ds:[stroke:color-mix(in_oklab,var(--am-erectile)_32%,var(--am-ink))] ${edge}`,\n skin: `ds:[fill:var(--am-skin)] ds:[stroke:color-mix(in_oklab,var(--am-skin)_32%,var(--am-ink))] ${edge}`,\n cavity: `ds:[fill:var(--am-cavity)] ds:[stroke:color-mix(in_oklab,var(--am-cavity)_32%,var(--am-ink))] ${edge}`,\n opening: `ds:[fill:color-mix(in_oklab,var(--am-cavity)_72%,var(--am-mucosa))] ds:[stroke:color-mix(in_oklab,var(--am-cavity)_50%,var(--am-ink))] ${edge}`,\n fascia: `ds:[fill:var(--am-fascia)] ds:[stroke:color-mix(in_oklab,var(--am-fascia)_32%,var(--am-ink))] ${edge}`,\n membrane: `ds:[fill:var(--am-membrane)] ds:[fill-opacity:0.55] ds:[stroke:color-mix(in_oklab,var(--am-membrane)_40%,var(--am-ink))] ds:[stroke-opacity:0.45] ${edge}`,\n ligament: `ds:[fill:var(--am-membrane)] ds:[stroke:color-mix(in_oklab,var(--am-membrane)_40%,var(--am-ink))] ds:[stroke-width:0.8] ds:[vector-effect:non-scaling-stroke]`,\n follicle:\n 'ds:[fill:var(--am-highlight)] ds:[fill-opacity:0.6] ds:[stroke:color-mix(in_oklab,var(--am-gonad)_45%,var(--am-ink))] ds:[stroke-opacity:0.65] ds:[stroke-width:0.7] ds:[vector-effect:non-scaling-stroke]',\n trigone: 'ds:[fill:var(--am-muscle)] ds:[fill-opacity:0.55] ds:[stroke:none]',\n line: 'ds:[fill:none] ds:[stroke:var(--muted-foreground)] ds:[stroke-width:1] ds:[stroke-linecap:round] ds:[stroke-linejoin:round] ds:[vector-effect:non-scaling-stroke]',\n ink: 'ds:[fill:none] ds:[stroke:var(--am-ink)] ds:[stroke-opacity:0.7] ds:[stroke-width:1] ds:[stroke-linecap:round] ds:[vector-effect:non-scaling-stroke]',\n fine: 'ds:[fill:none] ds:[stroke:var(--am-ink)] ds:[stroke-opacity:0.38] ds:[stroke-width:0.8] ds:[stroke-linecap:round] ds:[vector-effect:non-scaling-stroke]',\n crease:\n 'ds:[fill:none] ds:[stroke:var(--am-ink)] ds:[stroke-opacity:0.55] ds:[stroke-width:1.2] ds:[stroke-linecap:round] ds:[vector-effect:non-scaling-stroke]',\n lumen:\n 'ds:[fill:none] ds:[stroke:var(--am-cavity)] ds:[stroke-opacity:0.75] ds:[stroke-width:1.4] ds:[stroke-linecap:round] ds:[vector-effect:non-scaling-stroke]',\n hidden:\n 'ds:[fill:none] ds:[stroke:var(--am-ink)] ds:[stroke-opacity:0.55] ds:[stroke-width:1.2] ds:[stroke-dasharray:4_3] ds:[vector-effect:non-scaling-stroke]',\n // Body context drawn on the panel, not on tissue: the page's muted ink, so\n // it holds up on a dark panel too.\n context:\n 'ds:[fill:none] ds:[stroke:var(--muted-foreground)] ds:[stroke-opacity:0.55] ds:[stroke-width:1] ds:[stroke-linecap:round] ds:[vector-effect:non-scaling-stroke]',\n};\n\nconst tissueRegionClass: Record<AnatomyTissue, string> = {\n skeletal: paintClass.skeletal,\n tendon: paintClass.tendon,\n muscle: paintClass.muscle,\n mucosa: paintClass.mucosa,\n gland: paintClass.gland,\n gonad: paintClass.gonad,\n duct: paintClass.duct,\n urinary: paintClass.urinary,\n erectile: paintClass.erectile,\n skin: paintClass.skin,\n};\n\n// Fill/stroke is resolved through compoundVariants so every region carries\n// exactly ONE fill declaration — no competing arbitrary `[fill:…]` classes\n// whose winner would depend on stylesheet source order. `schematic` paints a\n// region with no tissue as neutral line art; `hotspot` is transparent over a\n// hosted illustration and only reveals on hover/focus/marked. Tissue art takes\n// its paint from `tissueRegionClass` and its states from the overlay.\nconst regionVariants = cva(\n [\n 'ds:transition-[fill-opacity] ds:[transition-duration:var(--animation-duration)]',\n // Stroke width is authored in view coordinates; keep it constant px so the\n // figure-scaling transform (woman / child) doesn't thin or thicken outlines.\n 'ds:[vector-effect:non-scaling-stroke]',\n ].join(' '),\n {\n variants: {\n appearance: { schematic: '', hotspot: '' },\n interactive: { true: 'ds:cursor-pointer', false: '' },\n marked: { true: '', false: '' },\n },\n compoundVariants: [\n {\n appearance: 'schematic',\n marked: false,\n class:\n 'ds:[fill:var(--muted)] ds:[fill-opacity:0.5] ds:[stroke:var(--muted-foreground)] ds:[stroke-width:1]',\n },\n {\n appearance: 'schematic',\n marked: false,\n interactive: true,\n class: 'ds:hover:[fill:var(--accent)] ds:hover:[fill-opacity:0.3]',\n },\n {\n appearance: 'hotspot',\n marked: false,\n class: 'ds:[fill:transparent] ds:[stroke:transparent]',\n },\n {\n appearance: 'hotspot',\n marked: false,\n interactive: true,\n class: 'ds:hover:[fill:var(--accent)] ds:hover:[fill-opacity:0.12]',\n },\n {\n appearance: ['schematic', 'hotspot'],\n marked: true,\n class:\n 'ds:[fill:var(--accent)] ds:[fill-opacity:0.55] ds:[stroke:var(--accent)] ds:[stroke-width:1.5]',\n },\n ],\n defaultVariants: {\n appearance: 'schematic',\n interactive: false,\n marked: false,\n },\n },\n);\n\n// State layer above a region's art: a tint on hover, a tint and an accent edge\n// when it holds findings, a stronger tint when the host selects it (its\n// outline is drawn in the selection layer above). The anatomy stays readable\n// underneath; the markers carry the findings.\nconst stateOverlayVariants = cva(\n 'ds:pointer-events-none ds:[fill-opacity:0] ds:[stroke:none] ds:transition-[fill-opacity] ds:[transition-duration:var(--animation-duration)] ds:[vector-effect:non-scaling-stroke]',\n {\n variants: {\n hoverable: { true: 'ds:group-hover:[fill-opacity:0.14]', false: '' },\n marked: {\n true: 'ds:[fill-opacity:0.22] ds:[stroke:var(--accent)] ds:[stroke-width:2]',\n false: '',\n },\n // A selection tints in the brand colour; a finding, hover or nothing\n // in the accent, so the two never read as the same state.\n selected: {\n true: 'ds:[fill:var(--primary)] ds:[fill-opacity:0.4] ds:group-hover:[fill-opacity:0.4]',\n false: 'ds:[fill:var(--accent)]',\n },\n },\n defaultVariants: { hoverable: false, marked: false, selected: false },\n },\n);\n\n// The figure's head: the face in the body's neutral, the hair a mid-tone and\n// the tie a darker one, each with the body's contour.\nconst headContour =\n 'ds:[stroke:var(--muted-foreground)] ds:[stroke-width:1.25] ds:[stroke-linejoin:round] ds:[vector-effect:non-scaling-stroke]';\nconst headPaint = {\n face: `ds:[fill:var(--muted)] ${headContour}`,\n hair: `ds:[fill:color-mix(in_oklab,var(--muted-foreground)_38%,var(--muted))] ${headContour}`,\n tie: 'ds:[fill:color-mix(in_oklab,var(--muted-foreground)_70%,var(--muted))] ds:[stroke:none]',\n} as const;\n\n// Selection and focus are drawn above every region, each over a halo in the\n// page colour, so they keep their contrast over any tissue and never hide\n// under a neighbouring organ. Selection is a brand-colour outline over a brand\n// tint; focus is a wider ring with no tint, so the two never look alike, and a\n// finding (accent) never reads as a selection.\nconst outlineHalo =\n 'ds:[fill:none] ds:[stroke:var(--background)] ds:[stroke-linejoin:round] ds:[vector-effect:non-scaling-stroke]';\nconst selectionHalo = `${outlineHalo} ds:[stroke-width:6]`;\nconst selectionOutline =\n 'ds:[fill:none] ds:[stroke:var(--primary)] ds:[stroke-width:2.5] ds:[stroke-linejoin:round] ds:[vector-effect:non-scaling-stroke] ds:forced-colors:[stroke:Highlight]';\nconst focusHalo = `${outlineHalo} ds:[stroke-width:calc(var(--focus-ring-width)_+_4px)]`;\n\nconst figureVariants = cva('ds:mx-auto ds:block ds:h-auto ds:w-full', {\n variants: {\n presentation: {\n body: 'ds:max-w-[20rem]',\n organs: 'ds:max-w-[34rem]',\n },\n },\n defaultVariants: { presentation: 'body' },\n});\n\n/* ------------------------------------------------------------------ */\n/* Shape renderer */\n/* ------------------------------------------------------------------ */\n\nfunction RegionShapeEl({\n shape,\n className,\n fill,\n}: {\n shape: RegionShape;\n className: string;\n /** Presentation attribute, for a gradient reference (`url(#…)`) only. */\n fill?: string;\n}): ReactElement {\n if (shape.kind === 'ellipse') {\n return (\n <ellipse\n cx={shape.cx}\n cy={shape.cy}\n rx={shape.rx}\n ry={shape.ry}\n fill={fill}\n className={className}\n />\n );\n }\n if (shape.kind === 'rect') {\n return (\n <rect\n x={shape.x}\n y={shape.y}\n width={shape.w}\n height={shape.h}\n rx={shape.r ?? 0}\n fill={fill}\n className={className}\n />\n );\n }\n if (shape.kind === 'path') {\n return (\n <path\n d={shape.d}\n fillRule={shape.fillRule}\n transform={shape.transform}\n fill={fill}\n className={className}\n />\n );\n }\n return (\n <polygon\n points={shape.points.map(([x, y]) => `${x},${y}`).join(' ')}\n fill={fill}\n className={className}\n />\n );\n}\n\n/* ------------------------------------------------------------------ */\n/* Resolution helpers */\n/* ------------------------------------------------------------------ */\n\nfunction resolveViews(\n figure: FigureVariant | undefined,\n explicit: MuscleViewId[] | undefined,\n): MuscleView[] {\n if (explicit && explicit.length > 0) {\n return explicit\n .map((id) => MUSCLE_VIEWS[id])\n .filter(Boolean) as MuscleView[];\n }\n return viewsForFigure(figure ?? 'adult-male');\n}\n\n/* ------------------------------------------------------------------ */\n/* MuscleScheme */\n/* ------------------------------------------------------------------ */\n\nexport const MuscleScheme = forwardRef<MuscleSchemeHandle, MuscleSchemeProps>(\n (\n {\n id,\n figure,\n views: explicitViews,\n view: controlledView,\n defaultView,\n onViewChange,\n mode = 'interactive',\n value,\n defaultValue,\n onChange,\n onSelectRegion,\n selectedRegions,\n activeFinding,\n legend = false,\n regionList = true,\n illustrationBaseUrl,\n ariaLabel,\n className,\n },\n ref,\n ) => {\n const { t } = useTranslation('ui');\n const reactId = useId();\n const instanceId = id ?? reactId;\n // Gradient ids must be valid in `url(#…)`; React's ids carry colons.\n const shadeId = `muscle-scheme-shade-${reactId.replace(/[^a-zA-Z0-9_-]/g, '')}`;\n const rootRef = useRef<HTMLDivElement>(null);\n\n const resolvedViews = useMemo(\n () => resolveViews(figure, explicitViews),\n [figure, explicitViews],\n );\n const interactive = mode === 'interactive';\n const selectable = interactive || Boolean(onSelectRegion);\n const selectionMode = selectedRegions !== undefined;\n const selectedSet = useMemo(\n () => new Set(selectedRegions ?? []),\n [selectedRegions],\n );\n const [focusedRegionId, setFocusedRegionId] = useState<string>();\n const [hoveredOrganId, setHoveredOrganId] = useState<string>();\n const highlightedRegionId = focusedRegionId ?? hoveredOrganId;\n\n const [innerViewId, setInnerViewId] = useState<MuscleViewId>(\n () => defaultView ?? resolvedViews[0]?.id ?? DEFAULT_MUSCLE_VIEW,\n );\n const activeViewId = controlledView ?? innerViewId;\n // Keep the active view valid when the resolved set changes.\n const activeView =\n resolvedViews.find((v) => v.id === activeViewId) ?? resolvedViews[0];\n const activeViewRef = useRef(activeView?.id);\n activeViewRef.current = activeView?.id;\n // Host callbacks and the resolved views are read through refs so the\n // imperative handle keeps one identity; an inline host handler must not\n // re-register the agent adapter on every render.\n const latest = useRef({\n onChange,\n onViewChange,\n controlledView,\n resolvedViews,\n });\n latest.current = { onChange, onViewChange, controlledView, resolvedViews };\n\n const changeView = useCallback((next: MuscleViewId) => {\n const {\n onViewChange: notify,\n controlledView: held,\n resolvedViews: all,\n } = latest.current;\n // Only a view this chart renders can become active.\n if (!all.some((view) => view.id === next)) return;\n if (held === undefined) setInnerViewId(next);\n if (next !== activeViewRef.current) notify?.(next);\n }, []);\n\n // A controlled view this chart cannot show (the host switched figure, so\n // `reproductive-female` left the set) falls back to the first view; tell\n // the host, so its sub-area follows what the clinician sees.\n const fallbackViewId = activeView?.id;\n useEffect(() => {\n if (\n controlledView !== undefined &&\n fallbackViewId !== undefined &&\n controlledView !== fallbackViewId\n )\n latest.current.onViewChange?.(fallbackViewId);\n }, [controlledView, fallbackViewId]);\n\n const isControlled = value !== undefined;\n const [internal, setInternal] = useState<MuscleChart>(defaultValue ?? {});\n const chart = isControlled ? value : internal;\n const chartRef = useRef<MuscleChart>(chart);\n chartRef.current = chart;\n\n const commit = useCallback(\n (next: MuscleChart) => {\n if (!isControlled) setInternal(next);\n latest.current.onChange?.(next);\n },\n [isControlled],\n );\n\n const addFinding = useCallback(\n (regionId: string, type: FindingType, note?: string) => {\n const current = chartRef.current[regionId] ?? [];\n if (current.some((f) => f.type === type)) return;\n commit({\n ...chartRef.current,\n [regionId]: [...current, { type, note }],\n });\n },\n [commit],\n );\n\n const removeFindingFn = useCallback(\n (regionId: string, type: FindingType) => {\n const current = chartRef.current[regionId] ?? [];\n const next = current.filter((f) => f.type !== type);\n const copy = { ...chartRef.current };\n if (next.length > 0) copy[regionId] = next;\n else delete copy[regionId];\n commit(copy);\n },\n [commit],\n );\n\n const toggleFinding = useCallback(\n (regionId: string, type: FindingType) => {\n const has = (chartRef.current[regionId] ?? []).some(\n (f) => f.type === type,\n );\n if (has) removeFindingFn(regionId, type);\n else addFinding(regionId, type);\n },\n [addFinding, removeFindingFn],\n );\n\n const focusRegionEl = useCallback((regionId: string) => {\n // The id can come from an agent: match it by value, never splice it into\n // a selector.\n [\n ...(rootRef.current?.querySelectorAll<SVGGElement>('[data-region]') ??\n []),\n ]\n .find((element) => element.dataset.region === regionId)\n ?.focus();\n }, []);\n\n const handleActivate = useCallback(\n (region: MuscleRegion) => {\n onSelectRegion?.(region.id, activeView.id);\n if (interactive && activeFinding)\n toggleFinding(region.id, activeFinding);\n },\n [\n interactive,\n activeFinding,\n toggleFinding,\n onSelectRegion,\n activeView.id,\n ],\n );\n\n /**\n * The region's pressed state: its selection, or the active finding it\n * holds. Only a selectable region is a button; a read-only one is an image\n * and carries no pressed state.\n */\n const pressedState = useCallback(\n (regionId: string, findings: MuscleFinding[]): boolean | undefined => {\n if (!selectable) return undefined;\n if (selectionMode) return selectedSet.has(regionId);\n if (interactive && activeFinding)\n return findings.some((f) => f.type === activeFinding);\n return undefined;\n },\n [selectable, selectionMode, selectedSet, interactive, activeFinding],\n );\n\n /* ---- Imperative handle + agent registration ---- */\n const handle = useMemo<MuscleSchemeHandle>(\n () => ({\n focusRegion: focusRegionEl,\n getChart: () => chartRef.current,\n getRegion: (regionId) => chartRef.current[regionId] ?? [],\n regionsWith: (type) =>\n Object.entries(chartRef.current)\n .filter(([, findings]) => findings.some((f) => f.type === type))\n .map(([regionId]) => regionId),\n setFinding: addFinding,\n removeFinding: removeFindingFn,\n clearRegion: (regionId) => {\n if (!chartRef.current[regionId]) return;\n const copy = { ...chartRef.current };\n delete copy[regionId];\n commit(copy);\n },\n setView: changeView,\n getView: () => activeViewRef.current ?? DEFAULT_MUSCLE_VIEW,\n }),\n [focusRegionEl, addFinding, removeFindingFn, commit, changeView],\n );\n\n useImperativeHandle(ref, () => handle, [handle]);\n useAgentRegistration(muscleSchemeAgent, handle, instanceId);\n\n /* ---- Region label ---- */\n const findingName = useCallback(\n (finding: MuscleFinding) =>\n finding.label ?? t(`muscleScheme.finding.${finding.type}`),\n [t],\n );\n const regionName = useRegionName();\n const regionLabel = useCallback(\n (region: MuscleRegion, includeFindings = true): string => {\n const base = regionName(region);\n const findings = includeFindings\n ? (chartRef.current[region.id] ?? [])\n : [];\n if (findings.length === 0) return base;\n return t('muscleScheme.regionWithFindings', {\n region: base,\n findings: findings.map(findingName).join(', '),\n });\n },\n [t, regionName, findingName],\n );\n\n /* ---- Figure renderer ---- */\n const renderFigure = useCallback(\n (view: MuscleView): ReactElement => {\n // Hosted art replaces the muscles. Organ art stays visible so existing\n // provider assets do not silently lose the reproductive map.\n const illustrationHref = illustrationBaseUrl\n ? `${illustrationBaseUrl}/${view.id}.svg`\n : undefined;\n const appearance =\n illustrationHref || view.hotspotZones ? 'hotspot' : 'schematic';\n const organView = view.presentation === 'organs';\n const [vbX, vbY, vbW, vbH] = view.viewBox.split(' ').map(Number);\n // Organ targets: bilateral pairs first (right then left), then midline.\n const viewOrgans = view.regions\n .filter((region) => region.group === 'reproductive')\n .sort(\n (a, b) =>\n Number(a.side === 'midline') - Number(b.side === 'midline'),\n );\n const regionGroupLabel =\n view.kind === 'pelvis'\n ? t('muscleScheme.pelvicOrgans')\n : t('muscleScheme.breasts');\n return (\n <RadixTooltip.Provider delayDuration={200}>\n <div className=\"ds:flex ds:flex-col ds:gap-[var(--spacing-md)]\">\n <svg\n viewBox={view.viewBox}\n role=\"group\"\n aria-label={t(`muscleScheme.view.${view.labelKey}`)}\n className={[\n figureVariants({ presentation: view.presentation }),\n anatomyPalette,\n ].join(' ')}\n data-view={view.id}\n data-view-kind={view.kind}\n >\n <defs>\n {/* One soft volume for every tissue region: a highlight\n top-left, a shadow at the far edge, in objectBoundingBox\n units so it follows each region's own bounds. */}\n <radialGradient id={shadeId} cx=\"36%\" cy=\"30%\" r=\"78%\">\n <stop\n offset=\"0\"\n className=\"ds:[stop-color:var(--am-highlight)] ds:[stop-opacity:0.42]\"\n />\n <stop\n offset=\"0.42\"\n className=\"ds:[stop-color:var(--am-highlight)] ds:[stop-opacity:0]\"\n />\n <stop\n offset=\"0.78\"\n className=\"ds:[stop-color:var(--am-ink)] ds:[stop-opacity:0.04]\"\n />\n <stop\n offset=\"1\"\n className=\"ds:[stop-color:var(--am-ink)] ds:[stop-opacity:0.26]\"\n />\n </radialGradient>\n </defs>\n {view.plates && (\n <g\n data-plate=\"\"\n aria-hidden=\"true\"\n className=\"ds:pointer-events-none\"\n >\n {view.plates.map((plate) => (\n <rect\n key={`${plate.x}-${plate.y}`}\n x={plate.x}\n y={plate.y}\n width={plate.w}\n height={plate.h}\n rx={14}\n className=\"ds:[fill:var(--muted)] ds:[fill-opacity:0.55]\"\n />\n ))}\n </g>\n )}\n {illustrationHref && (\n <image\n href={illustrationHref}\n x={vbX}\n y={vbY}\n width={vbW}\n height={vbH}\n preserveAspectRatio=\"xMidYMid meet\"\n aria-hidden=\"true\"\n />\n )}\n {view.backdrop && (\n <g\n transform={view.transform}\n data-anatomy-detail=\"\"\n aria-hidden=\"true\"\n className=\"ds:pointer-events-none\"\n >\n {view.backdrop.map((detail, index) => (\n <RegionShapeEl\n key={index}\n shape={detail}\n className={paintClass[detail.paint ?? 'line']}\n />\n ))}\n </g>\n )}\n {view.bodyDetail && (\n // Body contour, scaled with the body (not the head), so the\n // child's enlarged head stays joined to a body-scaled outline.\n <g transform={view.transform}>\n {illustrationHref ? (\n <path\n d={view.bodyDetail}\n aria-hidden=\"true\"\n className=\"ds:[fill:none] ds:[stroke:var(--muted-foreground)] ds:[stroke-width:1] ds:[stroke-linecap:round] ds:[stroke-linejoin:round] ds:[vector-effect:non-scaling-stroke]\"\n />\n ) : (\n // The body itself: a solid neutral silhouette under the\n // muscles (race-neutral by construction, no skin tone),\n // with the same soft volume as the tissue and a crisp\n // contour, so the gaps between muscles read as body.\n <g data-body=\"\" aria-hidden=\"true\">\n <path\n d={view.bodyDetail}\n className=\"ds:[fill:var(--muted)] ds:[stroke:none]\"\n />\n <path\n d={view.bodyDetail}\n fill={`url(#${shadeId})`}\n className=\"ds:[fill-opacity:0.6]\"\n />\n <path\n d={view.bodyDetail}\n className=\"ds:[fill:none] ds:[stroke:var(--muted-foreground)] ds:[stroke-width:1.25] ds:[stroke-linecap:round] ds:[stroke-linejoin:round] ds:[vector-effect:non-scaling-stroke]\"\n />\n </g>\n )}\n </g>\n )}\n {!illustrationHref && (view.head || view.silhouette) && (\n // The head, over the body and under the muscles: the face\n // and ears in the body's neutral, the hair a mid-tone, so\n // the hairline is drawn, never cut.\n <g\n transform={view.silhouetteTransform ?? view.transform}\n data-head=\"\"\n aria-hidden=\"true\"\n >\n {(\n view.head ?? [\n { part: 'hair' as const, d: view.silhouette! },\n ]\n ).map((piece, index) => (\n <path\n key={index}\n d={piece.d}\n data-head-part={piece.part}\n className={headPaint[piece.part]}\n />\n ))}\n </g>\n )}\n <g transform={view.transform}>\n {view.regions.map((region) => {\n const findings = chart[region.id] ?? [];\n const marked = findings.length > 0;\n // A read-only chart cannot convey selection to assistive\n // tech, so it does not paint one either.\n const selected = selectable && selectedSet.has(region.id);\n const organ = region.group === 'reproductive';\n // Hosted art replaces the muscle drawing (its regions turn\n // into transparent hotspots); organ art always draws.\n const tissue =\n organ || appearance !== 'hotspot'\n ? region.tissue\n : undefined;\n const baseClass = tissue\n ? `${tissueRegionClass[tissue]} ${selectable ? 'ds:cursor-pointer' : ''}`\n : regionVariants({\n appearance,\n interactive: selectable,\n marked,\n });\n return (\n <RadixTooltip.Root key={region.id}>\n <RadixTooltip.Trigger asChild>\n <g\n data-region={region.id}\n data-side={region.side}\n data-group={region.group}\n data-tissue={tissue}\n data-selected={selected || undefined}\n data-highlighted={\n highlightedRegionId === region.id || undefined\n }\n role={selectable ? 'button' : 'img'}\n aria-label={regionLabel(region)}\n aria-pressed={pressedState(region.id, findings)}\n // Suppress the UA focus rectangle on the <g> and draw\n // the ring on the region shape itself (the first child)\n // so keyboard focus traces the muscle, not a box round it.\n // forced-colors: re-assert a system-palette stroke since\n // var(--ring) is overridden in High-Contrast mode.\n className=\"ds:group ds:outline-none ds:[&:focus-visible>*:first-child]:[stroke:var(--ring)] ds:[&:focus-visible>*:first-child]:[stroke-width:var(--focus-ring-width)] ds:data-[highlighted=true]:[&>*:first-child]:[stroke:var(--ring)] ds:data-[highlighted=true]:[&>*:first-child]:[stroke-width:var(--focus-ring-width)] ds:forced-colors:[&:focus-visible>*:first-child]:[stroke:CanvasText] ds:forced-colors:data-[highlighted=true]:[&>*:first-child]:[stroke:CanvasText]\"\n tabIndex={selectable ? 0 : -1}\n onFocus={() => setFocusedRegionId(region.id)}\n onBlur={() => setFocusedRegionId(undefined)}\n onClick={() => handleActivate(region)}\n onKeyDown={(e: KeyboardEvent<SVGGElement>) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n handleActivate(region);\n }\n }}\n >\n <RegionShapeEl\n shape={region.shape}\n className={baseClass}\n />\n {tissue && region.details && (\n <g\n data-anatomy-detail=\"\"\n aria-hidden=\"true\"\n className=\"ds:pointer-events-none\"\n >\n {region.details.map((detail, index) => (\n <RegionShapeEl\n key={index}\n shape={detail}\n className={\n paintClass[detail.paint ?? 'line']\n }\n />\n ))}\n </g>\n )}\n {tissue && (\n <RegionShapeEl\n shape={region.shape}\n fill={`url(#${shadeId})`}\n className=\"ds:pointer-events-none\"\n />\n )}\n {(tissue || selected) && (\n <RegionShapeEl\n shape={region.shape}\n className={stateOverlayVariants({\n hoverable: Boolean(tissue) && selectable,\n marked: Boolean(tissue) && marked,\n selected,\n })}\n />\n )}\n {region.hitShape && (\n <RegionShapeEl\n shape={region.hitShape}\n className=\"ds:[fill:transparent] ds:[stroke:none]\"\n />\n )}\n </g>\n </RadixTooltip.Trigger>\n <RadixTooltip.Portal>\n <RadixTooltip.Content\n sideOffset={4}\n className=\"ds:z-[var(--z-tooltip)] ds:rounded-[var(--radius-sm)] ds:bg-[var(--popover)] ds:px-2 ds:py-1 ds:text-[length:var(--font-size-xs)] ds:text-[var(--popover-foreground)] ds:shadow-[var(--shadow-md)]\"\n >\n {regionLabel(region)}\n {selected && (\n <span className=\"ds:block ds:text-[var(--muted-foreground)]\">\n {t('muscleScheme.deselectHint')}\n </span>\n )}\n <RadixTooltip.Arrow className=\"ds:[fill:var(--popover)]\" />\n </RadixTooltip.Content>\n </RadixTooltip.Portal>\n </RadixTooltip.Root>\n );\n })}\n </g>\n {view.details && (\n <g\n transform={view.transform}\n data-anatomy-detail=\"\"\n aria-hidden=\"true\"\n className=\"ds:pointer-events-none\"\n >\n {view.details.map((detail, index) => (\n <RegionShapeEl\n key={index}\n shape={detail}\n className={paintClass[detail.paint ?? 'line']}\n />\n ))}\n </g>\n )}\n {selectable && selectedSet.size > 0 && (\n <g\n transform={view.transform}\n aria-hidden=\"true\"\n data-selection-layer=\"\"\n className=\"ds:pointer-events-none\"\n >\n {view.regions\n .filter((region) => selectedSet.has(region.id))\n .map((region) => (\n <g key={region.id} data-region-selected={region.id}>\n <RegionShapeEl\n shape={region.shape}\n className={selectionHalo}\n />\n <RegionShapeEl\n shape={region.shape}\n className={selectionOutline}\n />\n </g>\n ))}\n </g>\n )}\n <g\n transform={view.transform}\n aria-hidden=\"true\"\n className=\"ds:pointer-events-none\"\n >\n {view.regions.flatMap((region) => {\n const findings = chart[region.id] ?? [];\n const anchor = regionCentroid(region);\n const organ = region.group === 'reproductive';\n const largeCoordinates = region.shape.kind === 'path';\n // Narrow organs need compact columns so neighbouring\n // structures keep distinct finding clusters. Body-region\n // placement stays unchanged for saved muscle findings.\n const organRadius = organView ? 6 : vbW / 60;\n const organGap = organView ? 14 : vbW / 24;\n const r = organ ? organRadius : largeCoordinates ? 20 : 4.5;\n const gap = organ ? organGap : largeCoordinates ? 44 : 11;\n const columns = organView ? 2 : 3;\n const rows = organ\n ? Math.ceil(findings.length / columns)\n : 1;\n return findings.map((finding, index) => {\n const marker = FINDING_MARKER[finding.type];\n const shape: MarkerShape = finding.shape ?? marker.shape;\n const row = organ ? Math.floor(index / columns) : 0;\n const rowLength = organ\n ? Math.min(columns, findings.length - row * columns)\n : findings.length;\n const column = organ ? index % columns : index;\n const offset = (column - (rowLength - 1) / 2) * gap;\n // Breast findings start at their own lower anchor and\n // wrap down, clear of the saved pectoral markers above.\n const verticalOffset =\n organ && !organView\n ? row * gap\n : (row - (rows - 1) / 2) * gap;\n const fill = markerFill(finding);\n return (\n <path\n key={`${region.id}-${finding.type}-${index}`}\n data-region-finding={region.id}\n data-finding={finding.type}\n d={markerPath(\n shape,\n anchor.x + offset,\n anchor.y + verticalOffset,\n r,\n )}\n className={`${fill.className} ${markerHalo}`}\n // eslint-disable-next-line react/forbid-dom-props -- caller-supplied practice colour injected via a CSS variable (23-constraints §custom properties)\n style={fill.style}\n />\n );\n });\n })}\n </g>\n {/* Focus is the top layer: a finding marker must never cover\n the outline of a small organ such as the cervix or testis. */}\n <g\n transform={view.transform}\n aria-hidden=\"true\"\n className=\"ds:pointer-events-none\"\n >\n {view.regions\n .filter((region) => region.id === highlightedRegionId)\n .map((region) => (\n <g key={region.id} data-region-focus={region.id}>\n <RegionShapeEl\n shape={region.shape}\n className={focusHalo}\n />\n <RegionShapeEl\n shape={region.shape}\n className=\"ds:[fill:none] ds:[stroke:var(--ring)] ds:[stroke-width:var(--focus-ring-width)] ds:[vector-effect:non-scaling-stroke] ds:forced-colors:[stroke:CanvasText]\"\n />\n </g>\n ))}\n </g>\n {view.sections?.map((section) => (\n <text\n key={section.labelKey}\n x={section.x}\n y={section.y}\n textAnchor=\"middle\"\n className=\"ds:pointer-events-none ds:font-sans ds:font-medium ds:text-[length:var(--font-size-sm)] ds:[fill:var(--muted-foreground)]\"\n >\n {t(`muscleScheme.section.${section.labelKey}`)}\n </text>\n ))}\n </svg>\n {selectable && regionList && viewOrgans.length > 0 && (\n <div\n className=\"ds:flex ds:flex-col ds:gap-[var(--spacing-xs)]\"\n role=\"group\"\n aria-labelledby={`${shadeId}-${view.id}-targets`}\n >\n <p\n id={`${shadeId}-${view.id}-targets`}\n className=\"ds:m-0 ds:font-medium ds:text-[length:var(--font-size-sm)] ds:text-[var(--muted-foreground)]\"\n >\n {regionGroupLabel}\n </p>\n <div className=\"ds:flex ds:flex-wrap ds:gap-[var(--spacing-xs)]\">\n {viewOrgans.map((region) => {\n const findings = chart[region.id] ?? [];\n const pressed = pressedState(region.id, findings);\n return (\n <Button\n key={region.id}\n intent=\"outline\"\n data-organ-target={region.id}\n aria-label={regionLabel(region)}\n aria-pressed={pressed}\n className=\"ds:min-h-[var(--min-target-size)] ds:min-w-[var(--min-target-size)] ds:rounded-full ds:aria-pressed:border-[color:var(--accent)] ds:aria-pressed:bg-[var(--accent)]/10\"\n onClick={() => handleActivate(region)}\n onFocus={() => setFocusedRegionId(region.id)}\n onBlur={() => setFocusedRegionId(undefined)}\n onPointerEnter={() => setHoveredOrganId(region.id)}\n onPointerLeave={() => setHoveredOrganId(undefined)}\n >\n <span className=\"ds:flex ds:flex-wrap ds:items-center ds:justify-center ds:gap-[var(--spacing-xs)]\">\n {/* Pressed reads by shape too, not by colour alone. */}\n {pressed && (\n <Check\n aria-hidden=\"true\"\n className=\"ds:size-4 ds:shrink-0\"\n />\n )}\n <span>{regionLabel(region, false)}</span>\n {findings.map((finding, index) => (\n <FindingGlyph\n key={`${finding.type}-${index}`}\n finding={finding}\n />\n ))}\n </span>\n </Button>\n );\n })}\n </div>\n </div>\n )}\n </div>\n </RadixTooltip.Provider>\n );\n },\n [\n chart,\n highlightedRegionId,\n selectable,\n selectedSet,\n pressedState,\n regionList,\n illustrationBaseUrl,\n shadeId,\n t,\n regionLabel,\n handleActivate,\n ],\n );\n\n const multi = resolvedViews.length > 1;\n const oneFigure =\n new Set(resolvedViews.map((view) => view.figure)).size === 1;\n\n return (\n <div\n ref={rootRef}\n data-component=\"muscle-scheme\"\n data-component-id={instanceId}\n data-view={activeView?.id}\n data-view-kind={activeView?.kind}\n className={['ds:flex ds:flex-col ds:gap-3', className]\n .filter(Boolean)\n .join(' ')}\n role=\"group\"\n aria-label={ariaLabel ?? t('muscleScheme.ariaLabel')}\n >\n {multi ? (\n <Tabs value={activeView.id} onValueChange={changeView}>\n <Tabs.List aria-label={t('muscleScheme.viewListLabel')}>\n {resolvedViews.map((v) => (\n <Tabs.Trigger key={v.id} value={v.id}>\n {/* One figure (a host's patient chart): Front / Back / Pelvis\n fit a narrow column. Mixed figures keep the full names. */}\n {oneFigure\n ? t(`muscleScheme.viewShort.${v.kind}`)\n : t(`muscleScheme.view.${v.labelKey}`)}\n </Tabs.Trigger>\n ))}\n </Tabs.List>\n {resolvedViews.map((v) => (\n <Tabs.Content key={v.id} value={v.id}>\n {renderFigure(v)}\n </Tabs.Content>\n ))}\n </Tabs>\n ) : (\n activeView && renderFigure(activeView)\n )}\n\n {legend && (\n <ul\n aria-label={t('muscleScheme.legendLabel')}\n className=\"ds:flex ds:flex-wrap ds:gap-x-4 ds:gap-y-1 ds:p-0 ds:text-[length:var(--font-size-xs)] ds:text-[var(--muted-foreground)]\"\n >\n {FINDING_TYPES.map((type) => {\n const m = FINDING_MARKER[type];\n return (\n <li key={type} className=\"ds:flex ds:list-none ds:items-center\">\n <AnnotationMarker\n shape={m.shape}\n tone={m.tone}\n size=\"sm\"\n label={t(`muscleScheme.finding.${type}`)}\n />\n </li>\n );\n })}\n </ul>\n )}\n </div>\n );\n },\n);\n\nMuscleScheme.displayName = 'MuscleScheme';\n"],"names":["REGION_SCHEMA","FINDING_SCHEMA","VIEW_SCHEMA","muscleSchemeAgent","handle","id","findings","f","args","FEMALE_PELVIS","MALE_PELVIS","MUSCLE_MALE_FRONT","MUSCLE_MALE_BACK","MUSCLE_FEMALE_FRONT","MUSCLE_FEMALE_BACK","MUSCLE_FIBRES","CHILD_PROPORTIONS","MUSCLE_OUTLINES","FINDING_TYPES","FINDING_MARKER","regionCentroid","region","s","n","sum","acc","x","y","HEAD_PARTS","headPieces","art","set","d","index","TENDON_SLUGS","oppositeSide","side","muscleRegions","fibreSet","back","sided","carved","muscles","m","fibres","carve","CARVE","pieces","piece","kept","_","slug","i","head","zones","extraZones","ribs","keepX","keepY","scapula","keep","joint","rx","ry","labelKey","JOINTS","SPINE_TOP","HEAD_MARKER","round","toArt","tx","ty","MUSCLE_NORMALISE","l","ellipsePath","cx","cy","at","joints","j","viewerLeft","x0","x1","y0","y1","r","spine","BREAST_R","FIGURE_MIDLINE","mirrorX","mirrorPath","value","breastRegion","left","FEMALE_BREASTS","MUSCLE_VIEWBOX","CHILD_HEAD_SCALE","childHead","MUSCLE_CHILD_HEAD","CHILD_LEG_SLUGS","childRegions","regions","legScale","sole","drop","leg","isHead","transform","move","point","withTransform","shape","_a","MUSCLE_VIEWS","getView","viewsForFigure","figure","v","getRegion","viewId","regionId","findRegionView","views","has","view","DEFAULT_MUSCLE_VIEW","figureFromPatient","sex","ageYears","emptyChart","useRegionName","t","useTranslation","useCallback","name","useMuscleRegionLabel","regionName","entry","markerHalo","markerToneFill","hostColourFill","hostColourStyle","color","markerFill","finding","style","FindingGlyph","marker","fill","jsx","markerPath","anatomyPalette","edge","paintClass","tissueRegionClass","regionVariants","cva","stateOverlayVariants","headContour","headPaint","outlineHalo","selectionHalo","selectionOutline","focusHalo","figureVariants","RegionShapeEl","className","resolveViews","explicit","MuscleScheme","forwardRef","explicitViews","controlledView","defaultView","onViewChange","mode","defaultValue","onChange","onSelectRegion","selectedRegions","activeFinding","legend","regionList","illustrationBaseUrl","ariaLabel","ref","reactId","useId","instanceId","shadeId","rootRef","useRef","resolvedViews","useMemo","interactive","selectable","selectionMode","selectedSet","focusedRegionId","setFocusedRegionId","useState","hoveredOrganId","setHoveredOrganId","highlightedRegionId","innerViewId","setInnerViewId","activeViewId","activeView","activeViewRef","latest","changeView","next","notify","held","all","fallbackViewId","useEffect","_b","isControlled","internal","setInternal","chart","chartRef","commit","addFinding","type","note","current","removeFindingFn","copy","toggleFinding","focusRegionEl","element","handleActivate","pressedState","useImperativeHandle","useAgentRegistration","findingName","regionLabel","includeFindings","base","renderFigure","illustrationHref","appearance","organView","vbX","vbY","vbW","vbH","viewOrgans","a","b","regionGroupLabel","RadixTooltip","jsxs","plate","detail","marked","selected","tissue","baseClass","e","anchor","organ","largeCoordinates","organRadius","organGap","gap","columns","rows","row","rowLength","offset","verticalOffset","section","pressed","Button","Check","multi","oneFigure","Tabs","AnnotationMarker"],"mappings":"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ACV,MAAM;AAAA,MACN,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,GAAG;AAAA,IAAA;AAAA,EACL;AAEJ,GChiCaC,KAAgE;AAAA,EAC3E,cAAc;AAAA,IACZ,WACE;AAAA,IACF,WACE;AAAA,IACF,cACE;AAAA,IACF,cACE;AAAA,IACF,SACE;AAAA,IACF,SACE;AAAA,IACF,YACE;AAAA,IACF,YACE;AAAA,IACF,aACE;AAAA,IACF,aACE;AAAA,IACF,MAAM;AAAA,IACN,UACE;AAAA,IACF,UACE;AAAA,IACF,eACE;AAAA,IACF,eACE;AAAA,IACF,cACE;AAAA,IACF,cACE;AAAA,IACF,eACE;AAAA,IACF,eACE;AAAA,IACF,gBACE;AAAA,IACF,gBACE;AAAA,IACF,WACE;AAAA,IACF,WACE;AAAA,IACF,cACE;AAAA,IACF,cACE;AAAA,IACF,YACE;AAAA,IACF,YACE;AAAA,IACF,aACE;AAAA,IACF,aACE;AAAA,IACF,WACE;AAAA,IACF,WACE;AAAA,IACF,YACE;AAAA,IACF,YACE;AAAA,IACF,UACE;AAAA,IACF,UACE;AAAA,EAAA;AAAA,EAEJ,aAAa;AAAA,IACX,UACE;AAAA,IACF,UACE;AAAA,IACF,eACE;AAAA,IACF,eACE;AAAA,IACF,cACE;AAAA,IACF,cACE;AAAA,IACF,gBACE;AAAA,IACF,gBACE;AAAA,IACF,aACE;AAAA,IACF,aACE;AAAA,IACF,gBACE;AAAA,IACF,gBACE;AAAA,IACF,aACE;AAAA,IACF,aACE;AAAA,IACF,aACE;AAAA,IACF,aACE;AAAA,IACF,eACE;AAAA,IACF,eACE;AAAA,IACF,eACE;AAAA,IACF,eACE;AAAA,IACF,YACE;AAAA,IACF,YACE;AAAA,IACF,YACE;AAAA,IACF,YACE;AAAA,IACF,UACE;AAAA,IACF,UACE;AAAA,IACF,WACE;AAAA,IACF,WACE;AAAA,EAAA;AAAA,EAEJ,gBAAgB;AAAA,IACd,MAAM;AAAA,IACN,UACE;AAAA,IACF,UACE;AAAA,IACF,eACE;AAAA,IACF,eACE;AAAA,IACF,cACE;AAAA,IACF,cACE;AAAA,IACF,WACE;AAAA,IACF,WACE;AAAA,IACF,YACE;AAAA,IACF,YACE;AAAA,IACF,aACE;AAAA,IACF,aACE;AAAA,IACF,cACE;AAAA,IACF,cACE;AAAA,IACF,SACE;AAAA,IACF,SACE;AAAA,IACF,aACE;AAAA,IACF,aACE;AAAA,IACF,WACE;AAAA,IACF,WACE;AAAA,IACF,eACE;AAAA,IACF,eACE;AAAA,IACF,gBACE;AAAA,IACF,gBACE;AAAA,IACF,WACE;AAAA,IACF,WACE;AAAA,IACF,cACE;AAAA,IACF,cACE;AAAA,IACF,YACE;AAAA,IACF,YACE;AAAA,IACF,YACE;AAAA,IACF,YACE;AAAA,IACF,UACE;AAAA,IACF,UACE;AAAA,EAAA;AAAA,EAEJ,eAAe;AAAA,IACb,UACE;AAAA,IACF,UACE;AAAA,IACF,eACE;AAAA,IACF,eACE;AAAA,IACF,cACE;AAAA,IACF,cACE;AAAA,IACF,gBACE;AAAA,IACF,gBACE;AAAA,IACF,gBACE;AAAA,IACF,gBACE;AAAA,IACF,aACE;AAAA,IACF,aACE;AAAA,IACF,aACE;AAAA,IACF,aACE;AAAA,IACF,WACE;AAAA,IACF,WACE;AAAA,IACF,aACE;AAAA,IACF,aACE;AAAA,IACF,eACE;AAAA,IACF,eACE;AAAA,IACF,eACE;AAAA,IACF,eACE;AAAA,IACF,YACE;AAAA,IACF,YACE;AAAA,IACF,YACE;AAAA,IACF,YACE;AAAA,IACF,UACE;AAAA,IACF,UACE;AAAA,EAAA;AAEN,GC9PaC,KAAoB;AAAA,EAC/B,UAAU;AAAA,EAEV,MAAM;AAAA,EAMN,MAAM;AACR,GAEaC,IAAoD;AAAA,EAC/D,cACE;AAAA,EACF,aACE;AAAA,EACF,gBACE;AAAA,EACF,eACE;AAAA,EACF,eACE;AAAA,EACF,cACE;AACJ,GCMaC,KAA+B;AAAA,EAC1C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAEaC,KAGT;AAAA,EACF,aAAa,EAAE,OAAO,UAAU,MAAM,OAAA;AAAA,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"}
|