GET https://test.fitmetrics.ch/fr/exercices/equipement/2-kettlebells?page=5

Components

15 Twig Components
127 Render Count
366 ms Render Time
74.5 MiB Memory Usage

Components

Name Metadata Render Count Render Time
media:icon
"App\Twig\Components\Media\Icon"
components/media/icon.html.twig
64 3.86ms
ui:badge
"App\Twig\Components\Ui\Badge"
components/ui/badge.html.twig
18 2.84ms
card:exercise-h
"App\Twig\Components\Card\ExerciseCardH"
components/card/exercise-h.html.twig
10 323.23ms
training:exercise:image
"App\Twig\Components\Training\Exercise\ExerciseImage"
components/training/exercise/image.html.twig
10 42.49ms
training:difficulty-badge
"App\Twig\Components\Training\DifficultyBadge"
components/training/difficulity-badge.html.twig
10 1.72ms
utils:theme-switcher
[Anonymous]
components/utils/theme-switcher.html.twig
3 1.62ms
ad:horizontal:fluid
"App\Twig\Components\Ad\AdHorizontalFluid"
components/ad/horizontal-fluid.html.twig
3 1.35ms
app:lang-selector
"App\Twig\Components\App\LangSelector"
components/app/lang-selector.html.twig
2 0.54ms
menu:main
"App\Twig\Components\Menu\MainMenu"
components/menu/main.html.twig
1 33.78ms
menu:connexion-menu
"App\Twig\Components\Menu\ConnexionMenu"
components/menu/user-menu.html.twig
1 8.75ms
menu:breadcrumb
"App\Twig\Components\Menu\Breadcrumb"
components/menu/breadcrumb.html.twig
1 0.57ms
media:image
"App\Twig\Components\Media\Image"
components/media/image.html.twig
1 0.91ms
ui:accordion
"App\Twig\Components\Ui\Accordion"
components/ui/accordion.html.twig
1 0.90ms
app:page-sharer
"App\Twig\Components\App\PageSharer"
components/app/page-sharer.html.twig
1 3.31ms
ad:wide-skyscraper
"App\Twig\Components\Ad\AdWideSkyscraper"
components/ad/wide-skyscraper.html.twig
1 0.70ms

Render calls

menu:main App\Twig\Components\Menu\MainMenu 68.5 MiB 33.78 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\Menu\MainMenu {#5111
  -routingManager: App\BusinessLogic\Training\Exercise\Url\ExerciseRoutingManager {#216 …}
  -em: Doctrine\ORM\EntityManager {#550 …}
  -cache: Symfony\Component\Cache\Adapter\TraceableAdapter {#2167 …}
  -kernel: App\Kernel {#14 …}
  -mediaManager: App\BusinessLogic\Media\Manager\MediaManager {#1233 …}
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.42 ms
Input props
[
  "name" => "fitmetrics-biceps"
  "class" => "header--logo-dark header--logo dark:hidden h-[80px] w-[130px] max-w-[130px]"
  "data-front--header-target" => "logoDark"
]
Attributes
[
  "class" => "header--logo-dark header--logo dark:hidden h-[80px] w-[130px] max-w-[130px]"
  "data-front--header-target" => "logoDark"
]
Component
App\Twig\Components\Media\Icon {#5158
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.04 ms
Input props
[
  "name" => "fitmetrics-white-biceps"
  "class" => "header--logo-white header--logo hidden dark:block h-[80px] w-[130px] max-w-[130px]"
  "data-front--header-target" => "logoWhite"
]
Attributes
[
  "class" => "header--logo-white header--logo hidden dark:block h-[80px] w-[130px] max-w-[130px]"
  "data-front--header-target" => "logoWhite"
]
Component
App\Twig\Components\Media\Icon {#5169
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
utils:theme-switcher
[Anonymous]
64.5 MiB 1.28 ms
Input props
[
  "class" => "max-w-fit"
]
Attributes
[
  "class" => "max-w-fit"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#5220
  -props: [
    "class" => "max-w-fit"
  ]
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.04 ms
Input props
[
  "name" => "fitmetrics-biceps"
  "class" => "block header--logo-dark header--logo w-full dark:hidden h-[50px] scale-150"
  "data-front--header-target" => "logoDark"
]
Attributes
[
  "class" => "block header--logo-dark header--logo w-full dark:hidden h-[50px] scale-150"
  "data-front--header-target" => "logoDark"
]
Component
App\Twig\Components\Media\Icon {#5235
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.03 ms
Input props
[
  "name" => "fitmetrics-white-biceps"
  "class" => "hidden header--logo-white header--logo w-full dark:block h-[50px] scale-150"
  "data-front--header-target" => "logoWhite"
]
Attributes
[
  "class" => "hidden header--logo-white header--logo w-full dark:block h-[50px] scale-150"
  "data-front--header-target" => "logoWhite"
]
Component
App\Twig\Components\Media\Icon {#5286
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.04 ms
Input props
[
  "name" => "search"
  "class" => "h-7 w-7 mr-4 fill-current"
]
Attributes
[
  "class" => "h-7 w-7 mr-4 fill-current"
]
Component
App\Twig\Components\Media\Icon {#5314
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "search"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.03 ms
Input props
[
  "name" => "flexed-biceps"
  "class" => "h-7 w-7 mr-4 fill-current"
]
Attributes
[
  "class" => "h-7 w-7 mr-4 fill-current"
]
Component
App\Twig\Components\Media\Icon {#5330
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "flexed-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.03 ms
Input props
[
  "name" => "barbell"
  "class" => "h-8 w-8 mr-3 fill-current"
]
Attributes
[
  "class" => "h-8 w-8 mr-3 fill-current"
]
Component
App\Twig\Components\Media\Icon {#5354
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "barbell"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.03 ms
Input props
[
  "name" => "category"
  "class" => "h-8 w-8 mr-3 fill-current"
]
Attributes
[
  "class" => "h-8 w-8 mr-3 fill-current"
]
Component
App\Twig\Components\Media\Icon {#5378
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "category"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.03 ms
Input props
[
  "name" => "fire"
  "class" => "h-8 w-8 mr-3 fill-current"
]
Attributes
[
  "class" => "h-8 w-8 mr-3 fill-current"
]
Component
App\Twig\Components\Media\Icon {#5402
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "fire"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.03 ms
Input props
[
  "name" => "discipline "
  "class" => "h-8 w-8 mr-3 fill-current"
]
Attributes
[
  "class" => "h-8 w-8 mr-3 fill-current"
]
Component
App\Twig\Components\Media\Icon {#5426
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "discipline "
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.03 ms
Input props
[
  "name" => "stats-chart"
  "class" => "h-8 w-8 mr-3 fill-current"
]
Attributes
[
  "class" => "h-8 w-8 mr-3 fill-current"
]
Component
App\Twig\Components\Media\Icon {#5450
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "stats-chart"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.03 ms
Input props
[
  "name" => "latest"
  "class" => "h-7 w-7 mr-4 fill-current"
]
Attributes
[
  "class" => "h-7 w-7 mr-4 fill-current"
]
Component
App\Twig\Components\Media\Icon {#5474
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "latest"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.03 ms
Input props
[
  "name" => "random"
  "class" => "h-8 w-8 mr-3 fill-current"
]
Attributes
[
  "class" => "h-8 w-8 mr-3 fill-current"
]
Component
App\Twig\Components\Media\Icon {#5498
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "random"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.04 ms
Input props
[
  "name" => "chevron-down"
  "class" => "w-7 h-7 fill-black dark:fill-white transition group-hover:rotate-180"
]
Attributes
[
  "class" => "w-7 h-7 fill-black dark:fill-white transition group-hover:rotate-180"
]
Component
App\Twig\Components\Media\Icon {#6014
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "chevron-down"
  +title: null
  +symbolDefsName: null
}
utils:theme-switcher
[Anonymous]
64.5 MiB 0.10 ms
Input props
[
  "class" => "max-w-fit"
]
Attributes
[
  "class" => "max-w-fit"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#6061
  -props: [
    "class" => "max-w-fit"
  ]
}
menu:connexion-menu App\Twig\Components\Menu\ConnexionMenu 68.5 MiB 8.75 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\Menu\ConnexionMenu {#6094
  -authenticationUtils: Symfony\Component\Security\Http\Authentication\AuthenticationUtils {#6107 …}
  -formFactory: Symfony\Component\Form\FormFactory {#3071 …}
}
media:icon App\Twig\Components\Media\Icon 66.5 MiB 0.05 ms
Input props
[
  "name" => "close"
  "class" => "w-[26px] h-[26px] md:w-[15px] md:h-[15px] cursor-pointer"
]
Attributes
[
  "class" => "w-[26px] h-[26px] md:w-[15px] md:h-[15px] cursor-pointer"
]
Component
App\Twig\Components\Media\Icon {#6229
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "close"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 66.5 MiB 0.04 ms
Input props
[
  "name" => "fitmetrics-white-biceps"
  "class" => "hidden dark:block h-[80px] w-[300px]"
]
Attributes
[
  "class" => "hidden dark:block h-[80px] w-[300px]"
]
Component
App\Twig\Components\Media\Icon {#6245
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 66.5 MiB 0.03 ms
Input props
[
  "name" => "fitmetrics-biceps"
  "class" => "block dark:hidden h-[80px] w-[300px]"
]
Attributes
[
  "class" => "block dark:hidden h-[80px] w-[300px]"
]
Component
App\Twig\Components\Media\Icon {#6275
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 66.5 MiB 0.04 ms
Input props
[
  "name" => "google"
  "class" => "h-[24px] w-[20px]"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "h-[24px] w-[20px]"
]
Component
App\Twig\Components\Media\Icon {#6307
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "google"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 66.5 MiB 0.03 ms
Input props
[
  "name" => "apple"
  "class" => "h-[24px] w-[20px] fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "h-[24px] w-[20px] fill-white"
]
Component
App\Twig\Components\Media\Icon {#6326
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "apple"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.04 ms
Input props
[
  "name" => "fitmetrics-white-biceps"
  "class" => "h-[80px] w-[300px]"
]
Attributes
[
  "class" => "h-[80px] w-[300px]"
]
Component
App\Twig\Components\Media\Icon {#6436
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.04 ms
Input props
[
  "name" => "chevron-down"
  "class" => "fill-white w-[20px] h-[20px]"
]
Attributes
[
  "class" => "fill-white w-[20px] h-[20px]"
]
Component
App\Twig\Components\Media\Icon {#6470
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "chevron-down"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.03 ms
Input props
[
  "name" => "flexed-biceps"
  "class" => "h-5 w-5 mr-2 fill-current"
]
Attributes
[
  "class" => "h-5 w-5 mr-2 fill-current"
]
Component
App\Twig\Components\Media\Icon {#6486
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "flexed-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.03 ms
Input props
[
  "name" => "fire"
  "class" => "h-5 w-5 mr-2 fill-current"
]
Attributes
[
  "class" => "h-5 w-5 mr-2 fill-current"
]
Component
App\Twig\Components\Media\Icon {#6510
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "fire"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.04 ms
Input props
[
  "name" => "category"
  "class" => "h-5 w-5 mr-2 fill-current"
]
Attributes
[
  "class" => "h-5 w-5 mr-2 fill-current"
]
Component
App\Twig\Components\Media\Icon {#6534
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "category"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.03 ms
Input props
[
  "name" => "barbell"
  "class" => "h-5 w-5 mr-2 fill-current"
]
Attributes
[
  "class" => "h-5 w-5 mr-2 fill-current"
]
Component
App\Twig\Components\Media\Icon {#6558
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "barbell"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.03 ms
Input props
[
  "name" => "discipline"
  "class" => "h-5 w-5 mr-2 fill-current"
]
Attributes
[
  "class" => "h-5 w-5 mr-2 fill-current"
]
Component
App\Twig\Components\Media\Icon {#6582
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "discipline"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.03 ms
Input props
[
  "name" => "stats-chart"
  "class" => "h-5 w-5 mr-2 fill-current"
]
Attributes
[
  "class" => "h-5 w-5 mr-2 fill-current"
]
Component
App\Twig\Components\Media\Icon {#6606
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "stats-chart"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.03 ms
Input props
[
  "name" => "latest"
  "class" => "h-5 w-5 mr-2 fill-current"
]
Attributes
[
  "class" => "h-5 w-5 mr-2 fill-current"
]
Component
App\Twig\Components\Media\Icon {#6630
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "latest"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.03 ms
Input props
[
  "name" => "random"
  "class" => "h-5 w-5 mr-2 fill-current"
]
Attributes
[
  "class" => "h-5 w-5 mr-2 fill-current"
]
Component
App\Twig\Components\Media\Icon {#6654
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "random"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.03 ms
Input props
[
  "name" => "favorites"
  "class" => "h-5 w-5 mr-2 fill-current"
]
Attributes
[
  "class" => "h-5 w-5 mr-2 fill-current"
]
Component
App\Twig\Components\Media\Icon {#6678
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.03 ms
Input props
[
  "name" => "more"
  "class" => "h-5 w-5 mr-2 fill-current"
]
Attributes
[
  "class" => "h-5 w-5 mr-2 fill-current"
]
Component
App\Twig\Components\Media\Icon {#6702
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "more"
  +title: null
  +symbolDefsName: null
}
app:lang-selector App\Twig\Components\App\LangSelector 68.5 MiB 0.45 ms
Input props
[
  "defaultOpenLeft" => true
]
Attributes
[]
Component
App\Twig\Components\App\LangSelector {#6747
  +routeName: null
  +params: null
  +withQuery: true
  +defaultOpenLeft: true
  -seoPage: App\BusinessLogic\App\Seo\SeoPage {#206 …}
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#865 …}
  -router: Symfony\Bundle\FrameworkBundle\Routing\Router {#681 …}
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.04 ms
Input props
[
  "name" => "close"
  "class" => "w-[26px] h-[26px] md:w-[15px] md:h-[15px] cursor-pointer text-white"
]
Attributes
[
  "class" => "w-[26px] h-[26px] md:w-[15px] md:h-[15px] cursor-pointer text-white"
]
Component
App\Twig\Components\Media\Icon {#6737
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "close"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.03 ms
Input props
[
  "name" => "fitmetrics-biceps"
  "class" => "h-16 w-full"
]
Attributes
[
  "class" => "h-16 w-full"
]
Component
App\Twig\Components\Media\Icon {#6378
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
menu:breadcrumb App\Twig\Components\Menu\Breadcrumb 68.5 MiB 0.57 ms
Input props
[
  "builder" => App\BusinessLogic\App\Menu\BreadcrumbBuilder {#3184
    -items: [
      [
        "label" => "menu.home"
        "url" => "/fr/"
      ]
      [
        "label" => "menu.exercises"
        "url" => "/fr/exercices"
      ]
      [
        "label" => "label.materials"
        "url" => "/fr/exercices/equipements"
      ]
      [
        "label" => "Kettlebells"
        "url" => null
      ]
    ]
  }
]
Attributes
[]
Component
App\Twig\Components\Menu\Breadcrumb {#6830
  +items: [
    [
      "label" => "menu.home"
      "url" => "/fr/"
    ]
    [
      "label" => "menu.exercises"
      "url" => "/fr/exercices"
    ]
    [
      "label" => "label.materials"
      "url" => "/fr/exercices/equipements"
    ]
    [
      "label" => "Kettlebells"
      "url" => null
    ]
  ]
  +builder: App\BusinessLogic\App\Menu\BreadcrumbBuilder {#3184
    -items: [
      [
        "label" => "menu.home"
        "url" => "/fr/"
      ]
      [
        "label" => "menu.exercises"
        "url" => "/fr/exercices"
      ]
      [
        "label" => "label.materials"
        "url" => "/fr/exercices/equipements"
      ]
      [
        "label" => "Kettlebells"
        "url" => null
      ]
    ]
  }
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.04 ms
Input props
[
  "name" => "chevron-right"
  "class" => "w-[10px] h-[10px] fill-black dark:fill-white"
]
Attributes
[
  "class" => "w-[10px] h-[10px] fill-black dark:fill-white"
]
Component
App\Twig\Components\Media\Icon {#6860
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "chevron-right"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.03 ms
Input props
[
  "name" => "chevron-right"
  "class" => "w-[10px] h-[10px] fill-black dark:fill-white"
]
Attributes
[
  "class" => "w-[10px] h-[10px] fill-black dark:fill-white"
]
Component
App\Twig\Components\Media\Icon {#6882
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "chevron-right"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.03 ms
Input props
[
  "name" => "chevron-right"
  "class" => "w-[10px] h-[10px] fill-black dark:fill-white"
]
Attributes
[
  "class" => "w-[10px] h-[10px] fill-black dark:fill-white"
]
Component
App\Twig\Components\Media\Icon {#6905
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "chevron-right"
  +title: null
  +symbolDefsName: null
}
media:image App\Twig\Components\Media\Image 68.5 MiB 0.91 ms
Input props
[
  "media" => App\Entity\Media\MediaImage {#3174
    #uploadedFile: Symfony\Component\HttpFoundation\File\File {#3309 …}
    #file: Vich\UploaderBundle\Entity\File {#3172 …}
    #credits: Doctrine\ORM\PersistentCollection {#3173 …}
    -source: null
    -zone: null
    -urlExternal: null
    #id: 2388
    -notes: null
    #translations: Doctrine\ORM\PersistentCollection {#3282 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -tiersId: null
    -tiersName: null
    #createdAt: DateTimeImmutable @1745221648 {#3158
      date: 2025-04-21 09:47:28.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1777204327 {#3290
      date: 2026-04-26 13:52:07.638382 Europe/Zurich (+02:00)
    }
    #createdBy: null
    #updatedBy: App\Entity\User {#3170 …}
  }
  "class" => "rounded-xl object-cover aspect-square w-[150px] md:w-[250px]"
  "alt" => "Meilleurs exercices avec kettlebells"
  "smWidth" => 250
  "smHeight" => 250
  "lgWidth" => 250
  "lgHeight" => 250
]
Attributes
[
  "class" => "rounded-xl object-cover aspect-square w-[150px] md:w-[250px]"
]
Component
App\Twig\Components\Media\Image {#6928
  #cacheManager: Liip\ImagineBundle\Imagine\Cache\CacheManager {#1213 …}
  +fileSrc: null
  +placeholderSrc: null
  +alt: "Meilleurs exercices avec kettlebells"
  +pictureClass: null
  +smWidth: 250
  +smHeight: 250
  +lgWidth: 250
  +lgHeight: 250
  +defaultSize: 350
  +crop: true
  +fetchPriority: "auto"
  +sizeScalingFactor: 1.5
  +referrerPolicy: "same-origin"
  +media: App\Entity\Media\MediaImage {#3174
    #uploadedFile: Symfony\Component\HttpFoundation\File\File {#3309 …}
    #file: Vich\UploaderBundle\Entity\File {#3172 …}
    #credits: Doctrine\ORM\PersistentCollection {#3173 …}
    -source: null
    -zone: null
    -urlExternal: null
    #id: 2388
    -notes: null
    #translations: Doctrine\ORM\PersistentCollection {#3282 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -tiersId: null
    -tiersName: null
    #createdAt: DateTimeImmutable @1745221648 {#3158
      date: 2025-04-21 09:47:28.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1777204327 {#3290
      date: 2026-04-26 13:52:07.638382 Europe/Zurich (+02:00)
    }
    #createdBy: null
    #updatedBy: App\Entity\User {#3170 …}
  }
  #mediaManager: App\BusinessLogic\Media\Manager\MediaManager {#1233 …}
}
ui:accordion App\Twig\Components\Ui\Accordion 68.5 MiB 0.90 ms
Input props
[
  "type" => "medium"
  "class" => "animate-fadeIn mt-2"
  "textClass" => "text-yellow"
  "summaryClass" => "text-yellow"
  "defaultOpen" => false
  "chevronClass" => "w-[20px] h-[20px] text-yellow"
]
Attributes
[
  "class" => "animate-fadeIn mt-2"
]
Component
App\Twig\Components\Ui\Accordion {#6974
  +stimulusTarget: null
  +stimulusAction: null
  +title: null
  +content: ""
  +defaultOpen: false
  +type: "medium"
  +chevronClass: "w-[20px] h-[20px] text-yellow"
  +contentContainerClass: null
  +summaryClass: "text-yellow"
  +textClass: "text-yellow"
  +titleSpacebetween: false
  +groupName: "accordion"
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.04 ms
Input props
[
  "name" => "chevron-up-circle"
  "class" => "w-[20px] h-[20px] text-yellow"
]
Attributes
[
  "class" => "w-[20px] h-[20px] text-yellow"
]
Component
App\Twig\Components\Media\Icon {#7062
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "chevron-up-circle"
  +title: null
  +symbolDefsName: null
}
card:exercise-h App\Twig\Components\Card\ExerciseCardH 70.5 MiB 94.39 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#3687
    #id: 796
    #token: "6733d717984c9"
    -images: Doctrine\ORM\PersistentCollection {#3672 …}
    -videos: Doctrine\ORM\PersistentCollection {#3731 …}
    -muscles: Doctrine\ORM\PersistentCollection {#3729 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#3733 …}
    -categories: Doctrine\ORM\PersistentCollection {#3955 …}
    -materials: Doctrine\ORM\PersistentCollection {#3953 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: null
    -executionType: "unilateral"
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4013 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#3977 …}
    -mainExercise: App\Entity\Training\Exercise {#4022 …}
    -variants: Doctrine\ORM\PersistentCollection {#4023 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4032 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4044 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4060 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4136 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4220 …}
    -side: true
    #createdAt: DateTimeImmutable @1731450647 {#3727
      date: 2024-11-12 23:30:47.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769273616 {#3641
      date: 2026-01-24 17:53:36.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4240 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1750873821 {#3737
      date: 2025-06-25 19:50:21.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 85
    -tiersId: 23521
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "kettlebell lateral lunge"
    -metaphoneName: "KTLBLLTRLLNJ"
  }
  "shortName" => false
  "id" => "exercise-card-6733d717984c9"
]
Attributes
[
  "id" => "exercise-card-6733d717984c9"
]
Component
App\Twig\Components\Card\ExerciseCardH {#7111
  +exercise: App\Entity\Training\Exercise {#3687
    #id: 796
    #token: "6733d717984c9"
    -images: Doctrine\ORM\PersistentCollection {#3672 …}
    -videos: Doctrine\ORM\PersistentCollection {#3731 …}
    -muscles: Doctrine\ORM\PersistentCollection {#3729 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#3733 …}
    -categories: Doctrine\ORM\PersistentCollection {#3955 …}
    -materials: Doctrine\ORM\PersistentCollection {#3953 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: null
    -executionType: "unilateral"
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4013 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#3977 …}
    -mainExercise: App\Entity\Training\Exercise {#4022 …}
    -variants: Doctrine\ORM\PersistentCollection {#4023 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4032 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4044 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4060 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4136 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4220 …}
    -side: true
    #createdAt: DateTimeImmutable @1731450647 {#3727
      date: 2024-11-12 23:30:47.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769273616 {#3641
      date: 2026-01-24 17:53:36.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4240 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1750873821 {#3737
      date: 2025-06-25 19:50:21.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 85
    -tiersId: 23521
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "kettlebell lateral lunge"
    -metaphoneName: "KTLBLLTRLLNJ"
  }
  +title: ? string
  +shortName: false
  +hasOverEffect: true
}
training:exercise:image App\Twig\Components\Training\Exercise\ExerciseImage 70.5 MiB 4.65 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#3687
    #id: 796
    #token: "6733d717984c9"
    -images: Doctrine\ORM\PersistentCollection {#3672 …}
    -videos: Doctrine\ORM\PersistentCollection {#3731 …}
    -muscles: Doctrine\ORM\PersistentCollection {#3729 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#3733 …}
    -categories: Doctrine\ORM\PersistentCollection {#3955 …}
    -materials: Doctrine\ORM\PersistentCollection {#3953 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: null
    -executionType: "unilateral"
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4013 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#3977 …}
    -mainExercise: App\Entity\Training\Exercise {#4022 …}
    -variants: Doctrine\ORM\PersistentCollection {#4023 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4032 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4044 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4060 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4136 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4220 …}
    -side: true
    #createdAt: DateTimeImmutable @1731450647 {#3727
      date: 2024-11-12 23:30:47.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769273616 {#3641
      date: 2026-01-24 17:53:36.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4240 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1750873821 {#3737
      date: 2025-06-25 19:50:21.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 85
    -tiersId: 23521
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "kettlebell lateral lunge"
    -metaphoneName: "KTLBLLTRLLNJ"
  }
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
  "alt" => "Image Fente latérale avec kettlebell"
  "smWidth" => 320
  "smHeight" => 180
  "lgWidth" => 250
  "lgHeight" => 140
  "pictureClass" => "md:max-w-min"
]
Attributes
[
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
]
Component
App\Twig\Components\Training\Exercise\ExerciseImage {#7144
  #cacheManager: Liip\ImagineBundle\Imagine\Cache\CacheManager {#1213 …}
  +fileSrc: null
  +placeholderSrc: null
  +alt: "Image Fente latérale avec kettlebell"
  +pictureClass: "md:max-w-min"
  +smWidth: 320
  +smHeight: 180
  +lgWidth: 250
  +lgHeight: 140
  +defaultSize: 350
  +crop: true
  +fetchPriority: "auto"
  +sizeScalingFactor: 1.5
  +referrerPolicy: "same-origin"
  +media: null
  #mediaManager: App\BusinessLogic\Media\Manager\MediaManager {#1233 …}
  +exercise: App\Entity\Training\Exercise {#3687
    #id: 796
    #token: "6733d717984c9"
    -images: Doctrine\ORM\PersistentCollection {#3672 …}
    -videos: Doctrine\ORM\PersistentCollection {#3731 …}
    -muscles: Doctrine\ORM\PersistentCollection {#3729 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#3733 …}
    -categories: Doctrine\ORM\PersistentCollection {#3955 …}
    -materials: Doctrine\ORM\PersistentCollection {#3953 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: null
    -executionType: "unilateral"
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4013 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#3977 …}
    -mainExercise: App\Entity\Training\Exercise {#4022 …}
    -variants: Doctrine\ORM\PersistentCollection {#4023 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4032 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4044 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4060 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4136 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4220 …}
    -side: true
    #createdAt: DateTimeImmutable @1731450647 {#3727
      date: 2024-11-12 23:30:47.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769273616 {#3641
      date: 2026-01-24 17:53:36.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4240 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1750873821 {#3737
      date: 2025-06-25 19:50:21.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 85
    -tiersId: 23521
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "kettlebell lateral lunge"
    -metaphoneName: "KTLBLLTRLLNJ"
  }
  #exerciseMediaManager: App\BusinessLogic\Training\Exercise\Manager\ExerciseMediaManager {#7167 …}
}
ui:badge App\Twig\Components\Ui\Badge 70.5 MiB 0.70 ms
Input props
[
  "name" => "Quadriceps"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#7353
  +name: "Quadriceps"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 70.5 MiB 0.12 ms
Input props
[
  "name" => "Fessiers"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#7416
  +name: "Fessiers"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 70.5 MiB 0.11 ms
Input props
[
  "name" => "Adducteurs"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#7451
  +name: "Adducteurs"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
training:difficulty-badge App\Twig\Components\Training\DifficultyBadge 70.5 MiB 0.67 ms
Input props
[
  "difficulty" => "intermediate"
  "small" => true
  "link" => false
]
Attributes
[]
Component
App\Twig\Components\Training\DifficultyBadge {#7435
  +difficulty: "intermediate"
  +small: true
  +link: false
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.13 ms
Input props
[
  "name" => "favorites"
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Attributes
[
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Component
App\Twig\Components\Media\Icon {#7263
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
card:exercise-h App\Twig\Components\Card\ExerciseCardH 70.5 MiB 60.17 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4243
    #id: 797
    #token: "6733d7179cea8"
    -images: Doctrine\ORM\PersistentCollection {#4244 …}
    -videos: Doctrine\ORM\PersistentCollection {#4246 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4248 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4250 …}
    -categories: Doctrine\ORM\PersistentCollection {#4252 …}
    -materials: Doctrine\ORM\PersistentCollection {#4254 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "compound"
    -executionType: "unilateral"
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4256 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4258 …}
    -mainExercise: App\Entity\Training\Exercise {#4261 …}
    -variants: Doctrine\ORM\PersistentCollection {#4262 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4032 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4264 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4266 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4268 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4270 …}
    -side: true
    #createdAt: DateTimeImmutable @1731450647 {#4238
      date: 2024-11-12 23:30:47.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769425996 {#4241
      date: 2026-01-26 12:13:16.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4272 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1752648370 {#4242
      date: 2025-07-16 08:46:10.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 37
    -tiersId: 23764
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "kettlebell lateral lunge overhead"
    -metaphoneName: "KTLBLLTRLLNJFRHT"
  }
  "shortName" => false
  "id" => "exercise-card-6733d7179cea8"
]
Attributes
[
  "id" => "exercise-card-6733d7179cea8"
]
Component
App\Twig\Components\Card\ExerciseCardH {#7147
  +exercise: App\Entity\Training\Exercise {#4243
    #id: 797
    #token: "6733d7179cea8"
    -images: Doctrine\ORM\PersistentCollection {#4244 …}
    -videos: Doctrine\ORM\PersistentCollection {#4246 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4248 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4250 …}
    -categories: Doctrine\ORM\PersistentCollection {#4252 …}
    -materials: Doctrine\ORM\PersistentCollection {#4254 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "compound"
    -executionType: "unilateral"
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4256 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4258 …}
    -mainExercise: App\Entity\Training\Exercise {#4261 …}
    -variants: Doctrine\ORM\PersistentCollection {#4262 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4032 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4264 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4266 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4268 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4270 …}
    -side: true
    #createdAt: DateTimeImmutable @1731450647 {#4238
      date: 2024-11-12 23:30:47.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769425996 {#4241
      date: 2026-01-26 12:13:16.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4272 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1752648370 {#4242
      date: 2025-07-16 08:46:10.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 37
    -tiersId: 23764
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "kettlebell lateral lunge overhead"
    -metaphoneName: "KTLBLLTRLLNJFRHT"
  }
  +title: ? string
  +shortName: false
  +hasOverEffect: true
}
training:exercise:image App\Twig\Components\Training\Exercise\ExerciseImage 70.5 MiB 4.01 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4243
    #id: 797
    #token: "6733d7179cea8"
    -images: Doctrine\ORM\PersistentCollection {#4244 …}
    -videos: Doctrine\ORM\PersistentCollection {#4246 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4248 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4250 …}
    -categories: Doctrine\ORM\PersistentCollection {#4252 …}
    -materials: Doctrine\ORM\PersistentCollection {#4254 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "compound"
    -executionType: "unilateral"
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4256 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4258 …}
    -mainExercise: App\Entity\Training\Exercise {#4261 …}
    -variants: Doctrine\ORM\PersistentCollection {#4262 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4032 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4264 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4266 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4268 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4270 …}
    -side: true
    #createdAt: DateTimeImmutable @1731450647 {#4238
      date: 2024-11-12 23:30:47.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769425996 {#4241
      date: 2026-01-26 12:13:16.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4272 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1752648370 {#4242
      date: 2025-07-16 08:46:10.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 37
    -tiersId: 23764
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "kettlebell lateral lunge overhead"
    -metaphoneName: "KTLBLLTRLLNJFRHT"
  }
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
  "alt" => "Image Fente latérale avec kettlebell en overhead"
  "smWidth" => 320
  "smHeight" => 180
  "lgWidth" => 250
  "lgHeight" => 140
  "pictureClass" => "md:max-w-min"
]
Attributes
[
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
]
Component
App\Twig\Components\Training\Exercise\ExerciseImage {#7555
  #cacheManager: Liip\ImagineBundle\Imagine\Cache\CacheManager {#1213 …}
  +fileSrc: null
  +placeholderSrc: null
  +alt: "Image Fente latérale avec kettlebell en overhead"
  +pictureClass: "md:max-w-min"
  +smWidth: 320
  +smHeight: 180
  +lgWidth: 250
  +lgHeight: 140
  +defaultSize: 350
  +crop: true
  +fetchPriority: "auto"
  +sizeScalingFactor: 1.5
  +referrerPolicy: "same-origin"
  +media: null
  #mediaManager: App\BusinessLogic\Media\Manager\MediaManager {#1233 …}
  +exercise: App\Entity\Training\Exercise {#4243
    #id: 797
    #token: "6733d7179cea8"
    -images: Doctrine\ORM\PersistentCollection {#4244 …}
    -videos: Doctrine\ORM\PersistentCollection {#4246 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4248 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4250 …}
    -categories: Doctrine\ORM\PersistentCollection {#4252 …}
    -materials: Doctrine\ORM\PersistentCollection {#4254 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "compound"
    -executionType: "unilateral"
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4256 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4258 …}
    -mainExercise: App\Entity\Training\Exercise {#4261 …}
    -variants: Doctrine\ORM\PersistentCollection {#4262 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4032 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4264 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4266 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4268 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4270 …}
    -side: true
    #createdAt: DateTimeImmutable @1731450647 {#4238
      date: 2024-11-12 23:30:47.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769425996 {#4241
      date: 2026-01-26 12:13:16.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4272 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1752648370 {#4242
      date: 2025-07-16 08:46:10.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 37
    -tiersId: 23764
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "kettlebell lateral lunge overhead"
    -metaphoneName: "KTLBLLTRLLNJFRHT"
  }
  #exerciseMediaManager: App\BusinessLogic\Training\Exercise\Manager\ExerciseMediaManager {#7167 …}
}
ui:badge App\Twig\Components\Ui\Badge 70.5 MiB 0.14 ms
Input props
[
  "name" => "Quadriceps"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#7669
  +name: "Quadriceps"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 70.5 MiB 0.10 ms
Input props
[
  "name" => "Fessiers"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#7693
  +name: "Fessiers"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
training:difficulty-badge App\Twig\Components\Training\DifficultyBadge 70.5 MiB 0.13 ms
Input props
[
  "difficulty" => "intermediate"
  "small" => true
  "link" => false
]
Attributes
[]
Component
App\Twig\Components\Training\DifficultyBadge {#7675
  +difficulty: "intermediate"
  +small: true
  +link: false
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.10 ms
Input props
[
  "name" => "favorites"
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Attributes
[
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Component
App\Twig\Components\Media\Icon {#7580
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
card:exercise-h App\Twig\Components\Card\ExerciseCardH 70.5 MiB 83.47 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4277
    #id: 798
    #token: "6733d7179d7c0"
    -images: Doctrine\ORM\PersistentCollection {#4278 …}
    -videos: Doctrine\ORM\PersistentCollection {#4280 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4282 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4284 …}
    -categories: Doctrine\ORM\PersistentCollection {#4286 …}
    -materials: Doctrine\ORM\PersistentCollection {#4288 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "compound"
    -executionType: "unilateral"
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4290 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4292 …}
    -mainExercise: App\Entity\Training\Exercise {#4295 …}
    -variants: Doctrine\ORM\PersistentCollection {#4296 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4032 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4298 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4300 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4302 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4304 …}
    -side: true
    #createdAt: DateTimeImmutable @1731450647 {#4274
      date: 2024-11-12 23:30:47.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769211475 {#4275
      date: 2026-01-24 00:37:55.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4306 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1752648469 {#4276
      date: 2025-07-16 08:47:49.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 68
    -tiersId: 23501
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "goblet kettlebell lateral lunge"
    -metaphoneName: "KBLTKTLBLLTRLLNJ"
  }
  "shortName" => false
  "id" => "exercise-card-6733d7179d7c0"
]
Attributes
[
  "id" => "exercise-card-6733d7179d7c0"
]
Component
App\Twig\Components\Card\ExerciseCardH {#7739
  +exercise: App\Entity\Training\Exercise {#4277
    #id: 798
    #token: "6733d7179d7c0"
    -images: Doctrine\ORM\PersistentCollection {#4278 …}
    -videos: Doctrine\ORM\PersistentCollection {#4280 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4282 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4284 …}
    -categories: Doctrine\ORM\PersistentCollection {#4286 …}
    -materials: Doctrine\ORM\PersistentCollection {#4288 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "compound"
    -executionType: "unilateral"
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4290 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4292 …}
    -mainExercise: App\Entity\Training\Exercise {#4295 …}
    -variants: Doctrine\ORM\PersistentCollection {#4296 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4032 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4298 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4300 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4302 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4304 …}
    -side: true
    #createdAt: DateTimeImmutable @1731450647 {#4274
      date: 2024-11-12 23:30:47.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769211475 {#4275
      date: 2026-01-24 00:37:55.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4306 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1752648469 {#4276
      date: 2025-07-16 08:47:49.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 68
    -tiersId: 23501
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "goblet kettlebell lateral lunge"
    -metaphoneName: "KBLTKTLBLLTRLLNJ"
  }
  +title: ? string
  +shortName: false
  +hasOverEffect: true
}
training:exercise:image App\Twig\Components\Training\Exercise\ExerciseImage 70.5 MiB 4.21 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4277
    #id: 798
    #token: "6733d7179d7c0"
    -images: Doctrine\ORM\PersistentCollection {#4278 …}
    -videos: Doctrine\ORM\PersistentCollection {#4280 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4282 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4284 …}
    -categories: Doctrine\ORM\PersistentCollection {#4286 …}
    -materials: Doctrine\ORM\PersistentCollection {#4288 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "compound"
    -executionType: "unilateral"
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4290 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4292 …}
    -mainExercise: App\Entity\Training\Exercise {#4295 …}
    -variants: Doctrine\ORM\PersistentCollection {#4296 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4032 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4298 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4300 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4302 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4304 …}
    -side: true
    #createdAt: DateTimeImmutable @1731450647 {#4274
      date: 2024-11-12 23:30:47.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769211475 {#4275
      date: 2026-01-24 00:37:55.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4306 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1752648469 {#4276
      date: 2025-07-16 08:47:49.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 68
    -tiersId: 23501
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "goblet kettlebell lateral lunge"
    -metaphoneName: "KBLTKTLBLLTRLLNJ"
  }
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
  "alt" => "Image Fente latérale en gobelet avec kettlebell"
  "smWidth" => 320
  "smHeight" => 180
  "lgWidth" => 250
  "lgHeight" => 140
  "pictureClass" => "md:max-w-min"
]
Attributes
[
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
]
Component
App\Twig\Components\Training\Exercise\ExerciseImage {#7778
  #cacheManager: Liip\ImagineBundle\Imagine\Cache\CacheManager {#1213 …}
  +fileSrc: null
  +placeholderSrc: null
  +alt: "Image Fente latérale en gobelet avec kettlebell"
  +pictureClass: "md:max-w-min"
  +smWidth: 320
  +smHeight: 180
  +lgWidth: 250
  +lgHeight: 140
  +defaultSize: 350
  +crop: true
  +fetchPriority: "auto"
  +sizeScalingFactor: 1.5
  +referrerPolicy: "same-origin"
  +media: null
  #mediaManager: App\BusinessLogic\Media\Manager\MediaManager {#1233 …}
  +exercise: App\Entity\Training\Exercise {#4277
    #id: 798
    #token: "6733d7179d7c0"
    -images: Doctrine\ORM\PersistentCollection {#4278 …}
    -videos: Doctrine\ORM\PersistentCollection {#4280 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4282 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4284 …}
    -categories: Doctrine\ORM\PersistentCollection {#4286 …}
    -materials: Doctrine\ORM\PersistentCollection {#4288 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "compound"
    -executionType: "unilateral"
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4290 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4292 …}
    -mainExercise: App\Entity\Training\Exercise {#4295 …}
    -variants: Doctrine\ORM\PersistentCollection {#4296 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4032 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4298 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4300 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4302 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4304 …}
    -side: true
    #createdAt: DateTimeImmutable @1731450647 {#4274
      date: 2024-11-12 23:30:47.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769211475 {#4275
      date: 2026-01-24 00:37:55.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4306 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1752648469 {#4276
      date: 2025-07-16 08:47:49.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 68
    -tiersId: 23501
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "goblet kettlebell lateral lunge"
    -metaphoneName: "KBLTKTLBLLTRLLNJ"
  }
  #exerciseMediaManager: App\BusinessLogic\Training\Exercise\Manager\ExerciseMediaManager {#7167 …}
}
ui:badge App\Twig\Components\Ui\Badge 70.5 MiB 0.12 ms
Input props
[
  "name" => "Quadriceps"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#7892
  +name: "Quadriceps"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 70.5 MiB 0.11 ms
Input props
[
  "name" => "Fessiers"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#7916
  +name: "Fessiers"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 70.5 MiB 0.09 ms
Input props
[
  "name" => "Adducteurs"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#7940
  +name: "Adducteurs"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
training:difficulty-badge App\Twig\Components\Training\DifficultyBadge 70.5 MiB 0.12 ms
Input props
[
  "difficulty" => "intermediate"
  "small" => true
  "link" => false
]
Attributes
[]
Component
App\Twig\Components\Training\DifficultyBadge {#7922
  +difficulty: "intermediate"
  +small: true
  +link: false
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.10 ms
Input props
[
  "name" => "favorites"
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Attributes
[
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Component
App\Twig\Components\Media\Icon {#7803
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
card:exercise-h App\Twig\Components\Card\ExerciseCardH 72.5 MiB 14.27 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4311
    #id: 811
    #token: "6733d718993bf"
    -images: Doctrine\ORM\PersistentCollection {#4312 …}
    -videos: Doctrine\ORM\PersistentCollection {#4314 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4316 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4318 …}
    -categories: Doctrine\ORM\PersistentCollection {#4320 …}
    -materials: Doctrine\ORM\PersistentCollection {#4322 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "compound"
    -executionType: "unilateral"
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4324 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4326 …}
    -mainExercise: App\Entity\Training\Exercise {#4329 …}
    -variants: Doctrine\ORM\PersistentCollection {#4330 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4333 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4334 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4336 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4338 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4340 …}
    -side: true
    #createdAt: DateTimeImmutable @1731450648 {#4308
      date: 2024-11-12 23:30:48.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769177205 {#4309
      date: 2026-01-23 15:06:45.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4342 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1752182881 {#4310
      date: 2025-07-10 23:28:01.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 31
    -tiersId: 23333
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "kettlebell windmill"
    -metaphoneName: "KTLBLWNTML"
  }
  "shortName" => false
  "id" => "exercise-card-6733d718993bf"
]
Attributes
[
  "id" => "exercise-card-6733d718993bf"
]
Component
App\Twig\Components\Card\ExerciseCardH {#7986
  +exercise: App\Entity\Training\Exercise {#4311
    #id: 811
    #token: "6733d718993bf"
    -images: Doctrine\ORM\PersistentCollection {#4312 …}
    -videos: Doctrine\ORM\PersistentCollection {#4314 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4316 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4318 …}
    -categories: Doctrine\ORM\PersistentCollection {#4320 …}
    -materials: Doctrine\ORM\PersistentCollection {#4322 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "compound"
    -executionType: "unilateral"
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4324 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4326 …}
    -mainExercise: App\Entity\Training\Exercise {#4329 …}
    -variants: Doctrine\ORM\PersistentCollection {#4330 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4333 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4334 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4336 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4338 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4340 …}
    -side: true
    #createdAt: DateTimeImmutable @1731450648 {#4308
      date: 2024-11-12 23:30:48.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769177205 {#4309
      date: 2026-01-23 15:06:45.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4342 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1752182881 {#4310
      date: 2025-07-10 23:28:01.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 31
    -tiersId: 23333
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "kettlebell windmill"
    -metaphoneName: "KTLBLWNTML"
  }
  +title: ? string
  +shortName: false
  +hasOverEffect: true
}
training:exercise:image App\Twig\Components\Training\Exercise\ExerciseImage 70.5 MiB 4.23 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4311
    #id: 811
    #token: "6733d718993bf"
    -images: Doctrine\ORM\PersistentCollection {#4312 …}
    -videos: Doctrine\ORM\PersistentCollection {#4314 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4316 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4318 …}
    -categories: Doctrine\ORM\PersistentCollection {#4320 …}
    -materials: Doctrine\ORM\PersistentCollection {#4322 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "compound"
    -executionType: "unilateral"
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4324 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4326 …}
    -mainExercise: App\Entity\Training\Exercise {#4329 …}
    -variants: Doctrine\ORM\PersistentCollection {#4330 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4333 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4334 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4336 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4338 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4340 …}
    -side: true
    #createdAt: DateTimeImmutable @1731450648 {#4308
      date: 2024-11-12 23:30:48.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769177205 {#4309
      date: 2026-01-23 15:06:45.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4342 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1752182881 {#4310
      date: 2025-07-10 23:28:01.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 31
    -tiersId: 23333
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "kettlebell windmill"
    -metaphoneName: "KTLBLWNTML"
  }
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
  "alt" => "Image Moulinet avec kettlebell"
  "smWidth" => 320
  "smHeight" => 180
  "lgWidth" => 250
  "lgHeight" => 140
  "pictureClass" => "md:max-w-min"
]
Attributes
[
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
]
Component
App\Twig\Components\Training\Exercise\ExerciseImage {#8025
  #cacheManager: Liip\ImagineBundle\Imagine\Cache\CacheManager {#1213 …}
  +fileSrc: null
  +placeholderSrc: null
  +alt: "Image Moulinet avec kettlebell"
  +pictureClass: "md:max-w-min"
  +smWidth: 320
  +smHeight: 180
  +lgWidth: 250
  +lgHeight: 140
  +defaultSize: 350
  +crop: true
  +fetchPriority: "auto"
  +sizeScalingFactor: 1.5
  +referrerPolicy: "same-origin"
  +media: null
  #mediaManager: App\BusinessLogic\Media\Manager\MediaManager {#1233 …}
  +exercise: App\Entity\Training\Exercise {#4311
    #id: 811
    #token: "6733d718993bf"
    -images: Doctrine\ORM\PersistentCollection {#4312 …}
    -videos: Doctrine\ORM\PersistentCollection {#4314 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4316 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4318 …}
    -categories: Doctrine\ORM\PersistentCollection {#4320 …}
    -materials: Doctrine\ORM\PersistentCollection {#4322 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "compound"
    -executionType: "unilateral"
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4324 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4326 …}
    -mainExercise: App\Entity\Training\Exercise {#4329 …}
    -variants: Doctrine\ORM\PersistentCollection {#4330 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4333 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4334 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4336 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4338 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4340 …}
    -side: true
    #createdAt: DateTimeImmutable @1731450648 {#4308
      date: 2024-11-12 23:30:48.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769177205 {#4309
      date: 2026-01-23 15:06:45.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4342 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1752182881 {#4310
      date: 2025-07-10 23:28:01.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 31
    -tiersId: 23333
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "kettlebell windmill"
    -metaphoneName: "KTLBLWNTML"
  }
  #exerciseMediaManager: App\BusinessLogic\Training\Exercise\Manager\ExerciseMediaManager {#7167 …}
}
ui:badge App\Twig\Components\Ui\Badge 70.5 MiB 0.12 ms
Input props
[
  "name" => "Abdominaux"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#8155
  +name: "Abdominaux"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 72.5 MiB 0.28 ms
Input props
[
  "name" => "Dos"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#8191
  +name: "Dos"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 72.5 MiB 0.11 ms
Input props
[
  "name" => "Épaules"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#8229
  +name: "Épaules"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
training:difficulty-badge App\Twig\Components\Training\DifficultyBadge 72.5 MiB 0.11 ms
Input props
[
  "difficulty" => "intermediate"
  "small" => true
  "link" => false
]
Attributes
[]
Component
App\Twig\Components\Training\DifficultyBadge {#8211
  +difficulty: "intermediate"
  +small: true
  +link: false
}
media:icon App\Twig\Components\Media\Icon 72.5 MiB 0.09 ms
Input props
[
  "name" => "favorites"
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Attributes
[
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Component
App\Twig\Components\Media\Icon {#8050
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
ad:horizontal:fluid App\Twig\Components\Ad\AdHorizontalFluid 72.5 MiB 1.13 ms
Input props
[
  "class" => "ad-listing max-w-[343.33px] md:max-w-none"
]
Attributes
[
  "class" => "ad-listing max-w-[343.33px] md:max-w-none"
]
Component
App\Twig\Components\Ad\AdHorizontalFluid {#8282
  +includeScript: true
  +labelClass: null
  +containerClass: ""
  +adClass: null
  +showBgColor: true
  #kernel: App\Kernel {#14 …}
  #accountManager: App\BusinessLogic\User\Manager\AccountManager {#159 …}
  #parameterBag: Symfony\Component\DependencyInjection\ParameterBag\ContainerBag {#686 …}
  #seoPage: App\BusinessLogic\App\Seo\SeoPage {#206 …}
}
card:exercise-h App\Twig\Components\Card\ExerciseCardH 72.5 MiB 11.64 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4347
    #id: 823
    #token: "6733d7191df80"
    -images: Doctrine\ORM\PersistentCollection {#4348 …}
    -videos: Doctrine\ORM\PersistentCollection {#4350 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4352 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4354 …}
    -categories: Doctrine\ORM\PersistentCollection {#4356 …}
    -materials: Doctrine\ORM\PersistentCollection {#4358 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4360 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4362 …}
    -mainExercise: App\Entity\Training\Exercise {#4365 …}
    -variants: Doctrine\ORM\PersistentCollection {#4366 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4369 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4370 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4372 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4374 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4376 …}
    -side: true
    #createdAt: DateTimeImmutable @1731450649 {#4344
      date: 2024-11-12 23:30:49.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769228080 {#4345
      date: 2026-01-24 05:14:40.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4378 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1752041270 {#4346
      date: 2025-07-09 08:07:50.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 61
    -tiersId: 23759
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "fly kettlebell lever long reverse"
    -metaphoneName: "FLKTLBLLFRLNKRFRS"
  }
  "shortName" => false
  "id" => "exercise-card-6733d7191df80"
]
Attributes
[
  "id" => "exercise-card-6733d7191df80"
]
Component
App\Twig\Components\Card\ExerciseCardH {#8275
  +exercise: App\Entity\Training\Exercise {#4347
    #id: 823
    #token: "6733d7191df80"
    -images: Doctrine\ORM\PersistentCollection {#4348 …}
    -videos: Doctrine\ORM\PersistentCollection {#4350 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4352 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4354 …}
    -categories: Doctrine\ORM\PersistentCollection {#4356 …}
    -materials: Doctrine\ORM\PersistentCollection {#4358 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4360 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4362 …}
    -mainExercise: App\Entity\Training\Exercise {#4365 …}
    -variants: Doctrine\ORM\PersistentCollection {#4366 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4369 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4370 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4372 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4374 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4376 …}
    -side: true
    #createdAt: DateTimeImmutable @1731450649 {#4344
      date: 2024-11-12 23:30:49.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769228080 {#4345
      date: 2026-01-24 05:14:40.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4378 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1752041270 {#4346
      date: 2025-07-09 08:07:50.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 61
    -tiersId: 23759
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "fly kettlebell lever long reverse"
    -metaphoneName: "FLKTLBLLFRLNKRFRS"
  }
  +title: ? string
  +shortName: false
  +hasOverEffect: true
}
training:exercise:image App\Twig\Components\Training\Exercise\ExerciseImage 72.5 MiB 4.46 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4347
    #id: 823
    #token: "6733d7191df80"
    -images: Doctrine\ORM\PersistentCollection {#4348 …}
    -videos: Doctrine\ORM\PersistentCollection {#4350 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4352 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4354 …}
    -categories: Doctrine\ORM\PersistentCollection {#4356 …}
    -materials: Doctrine\ORM\PersistentCollection {#4358 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4360 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4362 …}
    -mainExercise: App\Entity\Training\Exercise {#4365 …}
    -variants: Doctrine\ORM\PersistentCollection {#4366 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4369 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4370 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4372 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4374 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4376 …}
    -side: true
    #createdAt: DateTimeImmutable @1731450649 {#4344
      date: 2024-11-12 23:30:49.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769228080 {#4345
      date: 2026-01-24 05:14:40.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4378 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1752041270 {#4346
      date: 2025-07-09 08:07:50.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 61
    -tiersId: 23759
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "fly kettlebell lever long reverse"
    -metaphoneName: "FLKTLBLLFRLNKRFRS"
  }
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
  "alt" => "Image Écarté inversé avec kettlebell bras tendus"
  "smWidth" => 320
  "smHeight" => 180
  "lgWidth" => 250
  "lgHeight" => 140
  "pictureClass" => "md:max-w-min"
]
Attributes
[
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
]
Component
App\Twig\Components\Training\Exercise\ExerciseImage {#8349
  #cacheManager: Liip\ImagineBundle\Imagine\Cache\CacheManager {#1213 …}
  +fileSrc: null
  +placeholderSrc: null
  +alt: "Image Écarté inversé avec kettlebell bras tendus"
  +pictureClass: "md:max-w-min"
  +smWidth: 320
  +smHeight: 180
  +lgWidth: 250
  +lgHeight: 140
  +defaultSize: 350
  +crop: true
  +fetchPriority: "auto"
  +sizeScalingFactor: 1.5
  +referrerPolicy: "same-origin"
  +media: null
  #mediaManager: App\BusinessLogic\Media\Manager\MediaManager {#1233 …}
  +exercise: App\Entity\Training\Exercise {#4347
    #id: 823
    #token: "6733d7191df80"
    -images: Doctrine\ORM\PersistentCollection {#4348 …}
    -videos: Doctrine\ORM\PersistentCollection {#4350 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4352 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4354 …}
    -categories: Doctrine\ORM\PersistentCollection {#4356 …}
    -materials: Doctrine\ORM\PersistentCollection {#4358 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4360 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4362 …}
    -mainExercise: App\Entity\Training\Exercise {#4365 …}
    -variants: Doctrine\ORM\PersistentCollection {#4366 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4369 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4370 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4372 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4374 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4376 …}
    -side: true
    #createdAt: DateTimeImmutable @1731450649 {#4344
      date: 2024-11-12 23:30:49.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769228080 {#4345
      date: 2026-01-24 05:14:40.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4378 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1752041270 {#4346
      date: 2025-07-09 08:07:50.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 61
    -tiersId: 23759
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "fly kettlebell lever long reverse"
    -metaphoneName: "FLKTLBLLFRLNKRFRS"
  }
  #exerciseMediaManager: App\BusinessLogic\Training\Exercise\Manager\ExerciseMediaManager {#7167 …}
}
ui:badge App\Twig\Components\Ui\Badge 72.5 MiB 0.12 ms
Input props
[
  "name" => "Dos"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#8458
  +name: "Dos"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 72.5 MiB 0.10 ms
Input props
[
  "name" => "Épaules"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#8482
  +name: "Épaules"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
training:difficulty-badge App\Twig\Components\Training\DifficultyBadge 72.5 MiB 0.12 ms
Input props
[
  "difficulty" => "intermediate"
  "small" => true
  "link" => false
]
Attributes
[]
Component
App\Twig\Components\Training\DifficultyBadge {#8464
  +difficulty: "intermediate"
  +small: true
  +link: false
}
media:icon App\Twig\Components\Media\Icon 72.5 MiB 0.10 ms
Input props
[
  "name" => "favorites"
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Attributes
[
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Component
App\Twig\Components\Media\Icon {#8374
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
card:exercise-h App\Twig\Components\Card\ExerciseCardH 72.5 MiB 11.39 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4383
    #id: 828
    #token: "6733d7195ddbf"
    -images: Doctrine\ORM\PersistentCollection {#4384 …}
    -videos: Doctrine\ORM\PersistentCollection {#4386 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4388 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4390 …}
    -categories: Doctrine\ORM\PersistentCollection {#4392 …}
    -materials: Doctrine\ORM\PersistentCollection {#4394 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4396 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4398 …}
    -mainExercise: App\Entity\Training\Exercise {#4401 …}
    -variants: Doctrine\ORM\PersistentCollection {#4402 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4405 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4406 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4408 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4410 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4412 …}
    -side: false
    #createdAt: DateTimeImmutable @1731450649 {#4380
      date: 2024-11-12 23:30:49.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769204265 {#4381
      date: 2026-01-23 22:37:45.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4414 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1752061505 {#4382
      date: 2025-07-09 13:45:05.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 30
    -tiersId: 24979
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "delt fly kettlebell"
    -metaphoneName: "TLTFLKTLBL"
  }
  "shortName" => false
  "id" => "exercise-card-6733d7195ddbf"
]
Attributes
[
  "id" => "exercise-card-6733d7195ddbf"
]
Component
App\Twig\Components\Card\ExerciseCardH {#8528
  +exercise: App\Entity\Training\Exercise {#4383
    #id: 828
    #token: "6733d7195ddbf"
    -images: Doctrine\ORM\PersistentCollection {#4384 …}
    -videos: Doctrine\ORM\PersistentCollection {#4386 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4388 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4390 …}
    -categories: Doctrine\ORM\PersistentCollection {#4392 …}
    -materials: Doctrine\ORM\PersistentCollection {#4394 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4396 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4398 …}
    -mainExercise: App\Entity\Training\Exercise {#4401 …}
    -variants: Doctrine\ORM\PersistentCollection {#4402 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4405 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4406 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4408 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4410 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4412 …}
    -side: false
    #createdAt: DateTimeImmutable @1731450649 {#4380
      date: 2024-11-12 23:30:49.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769204265 {#4381
      date: 2026-01-23 22:37:45.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4414 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1752061505 {#4382
      date: 2025-07-09 13:45:05.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 30
    -tiersId: 24979
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "delt fly kettlebell"
    -metaphoneName: "TLTFLKTLBL"
  }
  +title: ? string
  +shortName: false
  +hasOverEffect: true
}
training:exercise:image App\Twig\Components\Training\Exercise\ExerciseImage 72.5 MiB 4.41 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4383
    #id: 828
    #token: "6733d7195ddbf"
    -images: Doctrine\ORM\PersistentCollection {#4384 …}
    -videos: Doctrine\ORM\PersistentCollection {#4386 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4388 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4390 …}
    -categories: Doctrine\ORM\PersistentCollection {#4392 …}
    -materials: Doctrine\ORM\PersistentCollection {#4394 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4396 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4398 …}
    -mainExercise: App\Entity\Training\Exercise {#4401 …}
    -variants: Doctrine\ORM\PersistentCollection {#4402 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4405 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4406 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4408 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4410 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4412 …}
    -side: false
    #createdAt: DateTimeImmutable @1731450649 {#4380
      date: 2024-11-12 23:30:49.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769204265 {#4381
      date: 2026-01-23 22:37:45.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4414 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1752061505 {#4382
      date: 2025-07-09 13:45:05.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 30
    -tiersId: 24979
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "delt fly kettlebell"
    -metaphoneName: "TLTFLKTLBL"
  }
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
  "alt" => "Image Élévations postérieures avec kettlebells"
  "smWidth" => 320
  "smHeight" => 180
  "lgWidth" => 250
  "lgHeight" => 140
  "pictureClass" => "md:max-w-min"
]
Attributes
[
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
]
Component
App\Twig\Components\Training\Exercise\ExerciseImage {#8567
  #cacheManager: Liip\ImagineBundle\Imagine\Cache\CacheManager {#1213 …}
  +fileSrc: null
  +placeholderSrc: null
  +alt: "Image Élévations postérieures avec kettlebells"
  +pictureClass: "md:max-w-min"
  +smWidth: 320
  +smHeight: 180
  +lgWidth: 250
  +lgHeight: 140
  +defaultSize: 350
  +crop: true
  +fetchPriority: "auto"
  +sizeScalingFactor: 1.5
  +referrerPolicy: "same-origin"
  +media: null
  #mediaManager: App\BusinessLogic\Media\Manager\MediaManager {#1233 …}
  +exercise: App\Entity\Training\Exercise {#4383
    #id: 828
    #token: "6733d7195ddbf"
    -images: Doctrine\ORM\PersistentCollection {#4384 …}
    -videos: Doctrine\ORM\PersistentCollection {#4386 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4388 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4390 …}
    -categories: Doctrine\ORM\PersistentCollection {#4392 …}
    -materials: Doctrine\ORM\PersistentCollection {#4394 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4396 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4398 …}
    -mainExercise: App\Entity\Training\Exercise {#4401 …}
    -variants: Doctrine\ORM\PersistentCollection {#4402 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4405 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4406 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4408 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4410 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4412 …}
    -side: false
    #createdAt: DateTimeImmutable @1731450649 {#4380
      date: 2024-11-12 23:30:49.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769204265 {#4381
      date: 2026-01-23 22:37:45.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4414 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1752061505 {#4382
      date: 2025-07-09 13:45:05.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 30
    -tiersId: 24979
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "delt fly kettlebell"
    -metaphoneName: "TLTFLKTLBL"
  }
  #exerciseMediaManager: App\BusinessLogic\Training\Exercise\Manager\ExerciseMediaManager {#7167 …}
}
ui:badge App\Twig\Components\Ui\Badge 72.5 MiB 0.12 ms
Input props
[
  "name" => "Épaules"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#8676
  +name: "Épaules"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
training:difficulty-badge App\Twig\Components\Training\DifficultyBadge 72.5 MiB 0.11 ms
Input props
[
  "difficulty" => "intermediate"
  "small" => true
  "link" => false
]
Attributes
[]
Component
App\Twig\Components\Training\DifficultyBadge {#8649
  +difficulty: "intermediate"
  +small: true
  +link: false
}
media:icon App\Twig\Components\Media\Icon 72.5 MiB 0.10 ms
Input props
[
  "name" => "favorites"
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Attributes
[
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Component
App\Twig\Components\Media\Icon {#8592
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
card:exercise-h App\Twig\Components\Card\ExerciseCardH 72.5 MiB 10.80 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4419
    #id: 829
    #token: "6733d7195e664"
    -images: Doctrine\ORM\PersistentCollection {#4420 …}
    -videos: Doctrine\ORM\PersistentCollection {#4422 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4424 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4426 …}
    -categories: Doctrine\ORM\PersistentCollection {#4428 …}
    -materials: Doctrine\ORM\PersistentCollection {#4430 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4432 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4434 …}
    -mainExercise: App\Entity\Training\Exercise {#4401 …}
    -variants: Doctrine\ORM\PersistentCollection {#4436 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4439 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4440 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4442 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4444 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4446 …}
    -side: false
    #createdAt: DateTimeImmutable @1731450649 {#4416
      date: 2024-11-12 23:30:49.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769245484 {#4417
      date: 2026-01-24 10:04:44.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4448 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1752044218 {#4418
      date: 2025-07-09 08:56:58.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 81
    -tiersId: 24846
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "front kettlebell raise"
    -metaphoneName: "FRNTKTLBLRS"
  }
  "shortName" => false
  "id" => "exercise-card-6733d7195e664"
]
Attributes
[
  "id" => "exercise-card-6733d7195e664"
]
Component
App\Twig\Components\Card\ExerciseCardH {#8722
  +exercise: App\Entity\Training\Exercise {#4419
    #id: 829
    #token: "6733d7195e664"
    -images: Doctrine\ORM\PersistentCollection {#4420 …}
    -videos: Doctrine\ORM\PersistentCollection {#4422 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4424 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4426 …}
    -categories: Doctrine\ORM\PersistentCollection {#4428 …}
    -materials: Doctrine\ORM\PersistentCollection {#4430 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4432 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4434 …}
    -mainExercise: App\Entity\Training\Exercise {#4401 …}
    -variants: Doctrine\ORM\PersistentCollection {#4436 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4439 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4440 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4442 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4444 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4446 …}
    -side: false
    #createdAt: DateTimeImmutable @1731450649 {#4416
      date: 2024-11-12 23:30:49.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769245484 {#4417
      date: 2026-01-24 10:04:44.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4448 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1752044218 {#4418
      date: 2025-07-09 08:56:58.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 81
    -tiersId: 24846
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "front kettlebell raise"
    -metaphoneName: "FRNTKTLBLRS"
  }
  +title: ? string
  +shortName: false
  +hasOverEffect: true
}
training:exercise:image App\Twig\Components\Training\Exercise\ExerciseImage 72.5 MiB 4.04 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4419
    #id: 829
    #token: "6733d7195e664"
    -images: Doctrine\ORM\PersistentCollection {#4420 …}
    -videos: Doctrine\ORM\PersistentCollection {#4422 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4424 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4426 …}
    -categories: Doctrine\ORM\PersistentCollection {#4428 …}
    -materials: Doctrine\ORM\PersistentCollection {#4430 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4432 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4434 …}
    -mainExercise: App\Entity\Training\Exercise {#4401 …}
    -variants: Doctrine\ORM\PersistentCollection {#4436 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4439 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4440 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4442 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4444 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4446 …}
    -side: false
    #createdAt: DateTimeImmutable @1731450649 {#4416
      date: 2024-11-12 23:30:49.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769245484 {#4417
      date: 2026-01-24 10:04:44.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4448 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1752044218 {#4418
      date: 2025-07-09 08:56:58.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 81
    -tiersId: 24846
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "front kettlebell raise"
    -metaphoneName: "FRNTKTLBLRS"
  }
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
  "alt" => "Image Élévation frontale avec kettlebell"
  "smWidth" => 320
  "smHeight" => 180
  "lgWidth" => 250
  "lgHeight" => 140
  "pictureClass" => "md:max-w-min"
]
Attributes
[
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
]
Component
App\Twig\Components\Training\Exercise\ExerciseImage {#8761
  #cacheManager: Liip\ImagineBundle\Imagine\Cache\CacheManager {#1213 …}
  +fileSrc: null
  +placeholderSrc: null
  +alt: "Image Élévation frontale avec kettlebell"
  +pictureClass: "md:max-w-min"
  +smWidth: 320
  +smHeight: 180
  +lgWidth: 250
  +lgHeight: 140
  +defaultSize: 350
  +crop: true
  +fetchPriority: "auto"
  +sizeScalingFactor: 1.5
  +referrerPolicy: "same-origin"
  +media: null
  #mediaManager: App\BusinessLogic\Media\Manager\MediaManager {#1233 …}
  +exercise: App\Entity\Training\Exercise {#4419
    #id: 829
    #token: "6733d7195e664"
    -images: Doctrine\ORM\PersistentCollection {#4420 …}
    -videos: Doctrine\ORM\PersistentCollection {#4422 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4424 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4426 …}
    -categories: Doctrine\ORM\PersistentCollection {#4428 …}
    -materials: Doctrine\ORM\PersistentCollection {#4430 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4432 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4434 …}
    -mainExercise: App\Entity\Training\Exercise {#4401 …}
    -variants: Doctrine\ORM\PersistentCollection {#4436 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4439 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4440 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4442 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4444 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4446 …}
    -side: false
    #createdAt: DateTimeImmutable @1731450649 {#4416
      date: 2024-11-12 23:30:49.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769245484 {#4417
      date: 2026-01-24 10:04:44.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4448 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1752044218 {#4418
      date: 2025-07-09 08:56:58.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 81
    -tiersId: 24846
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "front kettlebell raise"
    -metaphoneName: "FRNTKTLBLRS"
  }
  #exerciseMediaManager: App\BusinessLogic\Training\Exercise\Manager\ExerciseMediaManager {#7167 …}
}
ui:badge App\Twig\Components\Ui\Badge 72.5 MiB 0.12 ms
Input props
[
  "name" => "Épaules"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#8870
  +name: "Épaules"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
training:difficulty-badge App\Twig\Components\Training\DifficultyBadge 72.5 MiB 0.11 ms
Input props
[
  "difficulty" => "beginner"
  "small" => true
  "link" => false
]
Attributes
[]
Component
App\Twig\Components\Training\DifficultyBadge {#8843
  +difficulty: "beginner"
  +small: true
  +link: false
}
media:icon App\Twig\Components\Media\Icon 72.5 MiB 0.10 ms
Input props
[
  "name" => "favorites"
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Attributes
[
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Component
App\Twig\Components\Media\Icon {#8786
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
card:exercise-h App\Twig\Components\Card\ExerciseCardH 74.5 MiB 15.24 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4453
    #id: 831
    #token: "6733d71961a61"
    -images: Doctrine\ORM\PersistentCollection {#4454 …}
    -videos: Doctrine\ORM\PersistentCollection {#4456 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4458 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4460 …}
    -categories: Doctrine\ORM\PersistentCollection {#4462 …}
    -materials: Doctrine\ORM\PersistentCollection {#4464 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "compound"
    -executionType: "unilateral"
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4466 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4468 …}
    -mainExercise: App\Entity\Training\Exercise {#4401 …}
    -variants: Doctrine\ORM\PersistentCollection {#4470 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4473 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4474 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4476 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4478 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4480 …}
    -side: true
    #createdAt: DateTimeImmutable @1731450649 {#4450
      date: 2024-11-12 23:30:49.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769272717 {#4451
      date: 2026-01-24 17:38:37.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4482 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1752065214 {#4452
      date: 2025-07-09 14:46:54.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 77
    -tiersId: 24686
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "arm kettlebell neutral row single"
    -metaphoneName: "ARMKTLBLNTRLRSNKL"
  }
  "shortName" => false
  "id" => "exercise-card-6733d71961a61"
]
Attributes
[
  "id" => "exercise-card-6733d71961a61"
]
Component
App\Twig\Components\Card\ExerciseCardH {#8916
  +exercise: App\Entity\Training\Exercise {#4453
    #id: 831
    #token: "6733d71961a61"
    -images: Doctrine\ORM\PersistentCollection {#4454 …}
    -videos: Doctrine\ORM\PersistentCollection {#4456 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4458 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4460 …}
    -categories: Doctrine\ORM\PersistentCollection {#4462 …}
    -materials: Doctrine\ORM\PersistentCollection {#4464 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "compound"
    -executionType: "unilateral"
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4466 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4468 …}
    -mainExercise: App\Entity\Training\Exercise {#4401 …}
    -variants: Doctrine\ORM\PersistentCollection {#4470 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4473 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4474 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4476 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4478 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4480 …}
    -side: true
    #createdAt: DateTimeImmutable @1731450649 {#4450
      date: 2024-11-12 23:30:49.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769272717 {#4451
      date: 2026-01-24 17:38:37.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4482 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1752065214 {#4452
      date: 2025-07-09 14:46:54.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 77
    -tiersId: 24686
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "arm kettlebell neutral row single"
    -metaphoneName: "ARMKTLBLNTRLRSNKL"
  }
  +title: ? string
  +shortName: false
  +hasOverEffect: true
}
training:exercise:image App\Twig\Components\Training\Exercise\ExerciseImage 72.5 MiB 4.22 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4453
    #id: 831
    #token: "6733d71961a61"
    -images: Doctrine\ORM\PersistentCollection {#4454 …}
    -videos: Doctrine\ORM\PersistentCollection {#4456 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4458 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4460 …}
    -categories: Doctrine\ORM\PersistentCollection {#4462 …}
    -materials: Doctrine\ORM\PersistentCollection {#4464 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "compound"
    -executionType: "unilateral"
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4466 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4468 …}
    -mainExercise: App\Entity\Training\Exercise {#4401 …}
    -variants: Doctrine\ORM\PersistentCollection {#4470 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4473 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4474 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4476 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4478 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4480 …}
    -side: true
    #createdAt: DateTimeImmutable @1731450649 {#4450
      date: 2024-11-12 23:30:49.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769272717 {#4451
      date: 2026-01-24 17:38:37.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4482 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1752065214 {#4452
      date: 2025-07-09 14:46:54.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 77
    -tiersId: 24686
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "arm kettlebell neutral row single"
    -metaphoneName: "ARMKTLBLNTRLRSNKL"
  }
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
  "alt" => "Image Rowing unilatéral à la kettlebell en prise neutre"
  "smWidth" => 320
  "smHeight" => 180
  "lgWidth" => 250
  "lgHeight" => 140
  "pictureClass" => "md:max-w-min"
]
Attributes
[
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
]
Component
App\Twig\Components\Training\Exercise\ExerciseImage {#8955
  #cacheManager: Liip\ImagineBundle\Imagine\Cache\CacheManager {#1213 …}
  +fileSrc: null
  +placeholderSrc: null
  +alt: "Image Rowing unilatéral à la kettlebell en prise neutre"
  +pictureClass: "md:max-w-min"
  +smWidth: 320
  +smHeight: 180
  +lgWidth: 250
  +lgHeight: 140
  +defaultSize: 350
  +crop: true
  +fetchPriority: "auto"
  +sizeScalingFactor: 1.5
  +referrerPolicy: "same-origin"
  +media: null
  #mediaManager: App\BusinessLogic\Media\Manager\MediaManager {#1233 …}
  +exercise: App\Entity\Training\Exercise {#4453
    #id: 831
    #token: "6733d71961a61"
    -images: Doctrine\ORM\PersistentCollection {#4454 …}
    -videos: Doctrine\ORM\PersistentCollection {#4456 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4458 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4460 …}
    -categories: Doctrine\ORM\PersistentCollection {#4462 …}
    -materials: Doctrine\ORM\PersistentCollection {#4464 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "compound"
    -executionType: "unilateral"
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4466 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4468 …}
    -mainExercise: App\Entity\Training\Exercise {#4401 …}
    -variants: Doctrine\ORM\PersistentCollection {#4470 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4473 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4474 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4476 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4478 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4480 …}
    -side: true
    #createdAt: DateTimeImmutable @1731450649 {#4450
      date: 2024-11-12 23:30:49.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769272717 {#4451
      date: 2026-01-24 17:38:37.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4482 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1752065214 {#4452
      date: 2025-07-09 14:46:54.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 77
    -tiersId: 24686
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "arm kettlebell neutral row single"
    -metaphoneName: "ARMKTLBLNTRLRSNKL"
  }
  #exerciseMediaManager: App\BusinessLogic\Training\Exercise\Manager\ExerciseMediaManager {#7167 …}
}
ui:badge App\Twig\Components\Ui\Badge 74.5 MiB 0.13 ms
Input props
[
  "name" => "Dos"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#5376
  +name: "Dos"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
training:difficulty-badge App\Twig\Components\Training\DifficultyBadge 74.5 MiB 0.12 ms
Input props
[
  "difficulty" => "intermediate"
  "small" => true
  "link" => false
]
Attributes
[]
Component
App\Twig\Components\Training\DifficultyBadge {#9043
  +difficulty: "intermediate"
  +small: true
  +link: false
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.10 ms
Input props
[
  "name" => "favorites"
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Attributes
[
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Component
App\Twig\Components\Media\Icon {#8980
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
ad:horizontal:fluid App\Twig\Components\Ad\AdHorizontalFluid 74.5 MiB 0.10 ms
Input props
[
  "class" => "ad-listing max-w-[343.33px] md:max-w-none"
]
Attributes
[
  "class" => "ad-listing max-w-[343.33px] md:max-w-none"
]
Component
App\Twig\Components\Ad\AdHorizontalFluid {#7578
  +includeScript: true
  +labelClass: null
  +containerClass: ""
  +adClass: null
  +showBgColor: true
  #kernel: App\Kernel {#14 …}
  #accountManager: App\BusinessLogic\User\Manager\AccountManager {#159 …}
  #parameterBag: Symfony\Component\DependencyInjection\ParameterBag\ContainerBag {#686 …}
  #seoPage: App\BusinessLogic\App\Seo\SeoPage {#206 …}
}
card:exercise-h App\Twig\Components\Card\ExerciseCardH 74.5 MiB 10.90 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4487
    #id: 832
    #token: "6733d71962074"
    -images: Doctrine\ORM\PersistentCollection {#4488 …}
    -videos: Doctrine\ORM\PersistentCollection {#4490 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4492 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4494 …}
    -categories: Doctrine\ORM\PersistentCollection {#4496 …}
    -materials: Doctrine\ORM\PersistentCollection {#4498 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "isolation"
    -executionType: "unilateral"
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4500 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4502 …}
    -mainExercise: App\Entity\Training\Exercise {#4401 …}
    -variants: Doctrine\ORM\PersistentCollection {#4504 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4507 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4508 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4510 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4512 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4514 …}
    -side: true
    #createdAt: DateTimeImmutable @1731450649 {#4484
      date: 2024-11-12 23:30:49.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769275288 {#4485
      date: 2026-01-24 18:21:28.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4516 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1752066249 {#4486
      date: 2025-07-09 15:04:09.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 36
    -tiersId: 24681
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "arm extension kettlebell shoulder single"
    -metaphoneName: "ARMKSTNXNKTLBLXLTRSNKL"
  }
  "shortName" => false
  "id" => "exercise-card-6733d71962074"
]
Attributes
[
  "id" => "exercise-card-6733d71962074"
]
Component
App\Twig\Components\Card\ExerciseCardH {#6983
  +exercise: App\Entity\Training\Exercise {#4487
    #id: 832
    #token: "6733d71962074"
    -images: Doctrine\ORM\PersistentCollection {#4488 …}
    -videos: Doctrine\ORM\PersistentCollection {#4490 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4492 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4494 …}
    -categories: Doctrine\ORM\PersistentCollection {#4496 …}
    -materials: Doctrine\ORM\PersistentCollection {#4498 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "isolation"
    -executionType: "unilateral"
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4500 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4502 …}
    -mainExercise: App\Entity\Training\Exercise {#4401 …}
    -variants: Doctrine\ORM\PersistentCollection {#4504 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4507 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4508 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4510 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4512 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4514 …}
    -side: true
    #createdAt: DateTimeImmutable @1731450649 {#4484
      date: 2024-11-12 23:30:49.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769275288 {#4485
      date: 2026-01-24 18:21:28.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4516 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1752066249 {#4486
      date: 2025-07-09 15:04:09.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 36
    -tiersId: 24681
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "arm extension kettlebell shoulder single"
    -metaphoneName: "ARMKSTNXNKTLBLXLTRSNKL"
  }
  +title: ? string
  +shortName: false
  +hasOverEffect: true
}
training:exercise:image App\Twig\Components\Training\Exercise\ExerciseImage 74.5 MiB 4.15 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4487
    #id: 832
    #token: "6733d71962074"
    -images: Doctrine\ORM\PersistentCollection {#4488 …}
    -videos: Doctrine\ORM\PersistentCollection {#4490 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4492 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4494 …}
    -categories: Doctrine\ORM\PersistentCollection {#4496 …}
    -materials: Doctrine\ORM\PersistentCollection {#4498 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "isolation"
    -executionType: "unilateral"
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4500 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4502 …}
    -mainExercise: App\Entity\Training\Exercise {#4401 …}
    -variants: Doctrine\ORM\PersistentCollection {#4504 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4507 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4508 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4510 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4512 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4514 …}
    -side: true
    #createdAt: DateTimeImmutable @1731450649 {#4484
      date: 2024-11-12 23:30:49.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769275288 {#4485
      date: 2026-01-24 18:21:28.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4516 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1752066249 {#4486
      date: 2025-07-09 15:04:09.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 36
    -tiersId: 24681
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "arm extension kettlebell shoulder single"
    -metaphoneName: "ARMKSTNXNKTLBLXLTRSNKL"
  }
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
  "alt" => "Image Extension de l'épaule à un bras avec kettlebell"
  "smWidth" => 320
  "smHeight" => 180
  "lgWidth" => 250
  "lgHeight" => 140
  "pictureClass" => "md:max-w-min"
]
Attributes
[
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
]
Component
App\Twig\Components\Training\Exercise\ExerciseImage {#9086
  #cacheManager: Liip\ImagineBundle\Imagine\Cache\CacheManager {#1213 …}
  +fileSrc: null
  +placeholderSrc: null
  +alt: "Image Extension de l'épaule à un bras avec kettlebell"
  +pictureClass: "md:max-w-min"
  +smWidth: 320
  +smHeight: 180
  +lgWidth: 250
  +lgHeight: 140
  +defaultSize: 350
  +crop: true
  +fetchPriority: "auto"
  +sizeScalingFactor: 1.5
  +referrerPolicy: "same-origin"
  +media: null
  #mediaManager: App\BusinessLogic\Media\Manager\MediaManager {#1233 …}
  +exercise: App\Entity\Training\Exercise {#4487
    #id: 832
    #token: "6733d71962074"
    -images: Doctrine\ORM\PersistentCollection {#4488 …}
    -videos: Doctrine\ORM\PersistentCollection {#4490 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4492 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4494 …}
    -categories: Doctrine\ORM\PersistentCollection {#4496 …}
    -materials: Doctrine\ORM\PersistentCollection {#4498 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "isolation"
    -executionType: "unilateral"
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4500 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4502 …}
    -mainExercise: App\Entity\Training\Exercise {#4401 …}
    -variants: Doctrine\ORM\PersistentCollection {#4504 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4507 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4508 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4510 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4512 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4514 …}
    -side: true
    #createdAt: DateTimeImmutable @1731450649 {#4484
      date: 2024-11-12 23:30:49.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769275288 {#4485
      date: 2026-01-24 18:21:28.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4516 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1752066249 {#4486
      date: 2025-07-09 15:04:09.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 36
    -tiersId: 24681
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "arm extension kettlebell shoulder single"
    -metaphoneName: "ARMKSTNXNKTLBLXLTRSNKL"
  }
  #exerciseMediaManager: App\BusinessLogic\Training\Exercise\Manager\ExerciseMediaManager {#7167 …}
}
ui:badge App\Twig\Components\Ui\Badge 74.5 MiB 0.14 ms
Input props
[
  "name" => "Épaules"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#9195
  +name: "Épaules"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
training:difficulty-badge App\Twig\Components\Training\DifficultyBadge 74.5 MiB 0.12 ms
Input props
[
  "difficulty" => "intermediate"
  "small" => true
  "link" => false
]
Attributes
[]
Component
App\Twig\Components\Training\DifficultyBadge {#9168
  +difficulty: "intermediate"
  +small: true
  +link: false
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.09 ms
Input props
[
  "name" => "favorites"
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Attributes
[
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Component
App\Twig\Components\Media\Icon {#9111
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
card:exercise-h App\Twig\Components\Card\ExerciseCardH 74.5 MiB 10.96 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4521
    #id: 833
    #token: "6733d719626e8"
    -images: Doctrine\ORM\PersistentCollection {#4522 …}
    -videos: Doctrine\ORM\PersistentCollection {#4524 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4526 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4528 …}
    -categories: Doctrine\ORM\PersistentCollection {#4530 …}
    -materials: Doctrine\ORM\PersistentCollection {#4532 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "isolation"
    -executionType: "unilateral"
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4534 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4536 …}
    -mainExercise: App\Entity\Training\Exercise {#4401 …}
    -variants: Doctrine\ORM\PersistentCollection {#4538 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4541 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4542 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4544 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4546 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4548 …}
    -side: true
    #createdAt: DateTimeImmutable @1731450649 {#4518
      date: 2024-11-12 23:30:49.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769179189 {#4519
      date: 2026-01-23 15:39:49.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4550 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1752070524 {#4520
      date: 2025-07-09 16:15:24.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 40
    -tiersId: 24679
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "arm delt fly kettlebell rear single"
    -metaphoneName: "ARMTLTFLKTLBLRRSNKL"
  }
  "shortName" => false
  "id" => "exercise-card-6733d719626e8"
]
Attributes
[
  "id" => "exercise-card-6733d719626e8"
]
Component
App\Twig\Components\Card\ExerciseCardH {#9241
  +exercise: App\Entity\Training\Exercise {#4521
    #id: 833
    #token: "6733d719626e8"
    -images: Doctrine\ORM\PersistentCollection {#4522 …}
    -videos: Doctrine\ORM\PersistentCollection {#4524 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4526 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4528 …}
    -categories: Doctrine\ORM\PersistentCollection {#4530 …}
    -materials: Doctrine\ORM\PersistentCollection {#4532 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "isolation"
    -executionType: "unilateral"
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4534 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4536 …}
    -mainExercise: App\Entity\Training\Exercise {#4401 …}
    -variants: Doctrine\ORM\PersistentCollection {#4538 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4541 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4542 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4544 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4546 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4548 …}
    -side: true
    #createdAt: DateTimeImmutable @1731450649 {#4518
      date: 2024-11-12 23:30:49.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769179189 {#4519
      date: 2026-01-23 15:39:49.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4550 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1752070524 {#4520
      date: 2025-07-09 16:15:24.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 40
    -tiersId: 24679
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "arm delt fly kettlebell rear single"
    -metaphoneName: "ARMTLTFLKTLBLRRSNKL"
  }
  +title: ? string
  +shortName: false
  +hasOverEffect: true
}
training:exercise:image App\Twig\Components\Training\Exercise\ExerciseImage 74.5 MiB 4.12 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4521
    #id: 833
    #token: "6733d719626e8"
    -images: Doctrine\ORM\PersistentCollection {#4522 …}
    -videos: Doctrine\ORM\PersistentCollection {#4524 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4526 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4528 …}
    -categories: Doctrine\ORM\PersistentCollection {#4530 …}
    -materials: Doctrine\ORM\PersistentCollection {#4532 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "isolation"
    -executionType: "unilateral"
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4534 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4536 …}
    -mainExercise: App\Entity\Training\Exercise {#4401 …}
    -variants: Doctrine\ORM\PersistentCollection {#4538 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4541 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4542 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4544 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4546 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4548 …}
    -side: true
    #createdAt: DateTimeImmutable @1731450649 {#4518
      date: 2024-11-12 23:30:49.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769179189 {#4519
      date: 2026-01-23 15:39:49.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4550 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1752070524 {#4520
      date: 2025-07-09 16:15:24.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 40
    -tiersId: 24679
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "arm delt fly kettlebell rear single"
    -metaphoneName: "ARMTLTFLKTLBLRRSNKL"
  }
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
  "alt" => "Image Élévation postérieure unilatérale avec kettlebell"
  "smWidth" => 320
  "smHeight" => 180
  "lgWidth" => 250
  "lgHeight" => 140
  "pictureClass" => "md:max-w-min"
]
Attributes
[
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
]
Component
App\Twig\Components\Training\Exercise\ExerciseImage {#9280
  #cacheManager: Liip\ImagineBundle\Imagine\Cache\CacheManager {#1213 …}
  +fileSrc: null
  +placeholderSrc: null
  +alt: "Image Élévation postérieure unilatérale avec kettlebell"
  +pictureClass: "md:max-w-min"
  +smWidth: 320
  +smHeight: 180
  +lgWidth: 250
  +lgHeight: 140
  +defaultSize: 350
  +crop: true
  +fetchPriority: "auto"
  +sizeScalingFactor: 1.5
  +referrerPolicy: "same-origin"
  +media: null
  #mediaManager: App\BusinessLogic\Media\Manager\MediaManager {#1233 …}
  +exercise: App\Entity\Training\Exercise {#4521
    #id: 833
    #token: "6733d719626e8"
    -images: Doctrine\ORM\PersistentCollection {#4522 …}
    -videos: Doctrine\ORM\PersistentCollection {#4524 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4526 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4528 …}
    -categories: Doctrine\ORM\PersistentCollection {#4530 …}
    -materials: Doctrine\ORM\PersistentCollection {#4532 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "isolation"
    -executionType: "unilateral"
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4534 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4536 …}
    -mainExercise: App\Entity\Training\Exercise {#4401 …}
    -variants: Doctrine\ORM\PersistentCollection {#4538 …}
    -isAvatarDefaultBackView: true
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4541 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4542 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4544 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4546 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4548 …}
    -side: true
    #createdAt: DateTimeImmutable @1731450649 {#4518
      date: 2024-11-12 23:30:49.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1769179189 {#4519
      date: 2026-01-23 15:39:49.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4550 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1752070524 {#4520
      date: 2025-07-09 16:15:24.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 40
    -tiersId: 24679
    -tiersName: "azeoo"
    -source: "openai"
    -sourceModel: null
    -normalizedName: "arm delt fly kettlebell rear single"
    -metaphoneName: "ARMTLTFLKTLBLRRSNKL"
  }
  #exerciseMediaManager: App\BusinessLogic\Training\Exercise\Manager\ExerciseMediaManager {#7167 …}
}
ui:badge App\Twig\Components\Ui\Badge 74.5 MiB 0.13 ms
Input props
[
  "name" => "Épaules"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#9389
  +name: "Épaules"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
training:difficulty-badge App\Twig\Components\Training\DifficultyBadge 74.5 MiB 0.11 ms
Input props
[
  "difficulty" => "intermediate"
  "small" => true
  "link" => false
]
Attributes
[]
Component
App\Twig\Components\Training\DifficultyBadge {#9362
  +difficulty: "intermediate"
  +small: true
  +link: false
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.09 ms
Input props
[
  "name" => "favorites"
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Attributes
[
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Component
App\Twig\Components\Media\Icon {#9305
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
app:page-sharer App\Twig\Components\App\PageSharer 74.5 MiB 3.31 ms
Input props
[
  "class" => "mx-auto max-w-3xl p-4"
]
Attributes
[
  "class" => "mx-auto max-w-3xl p-4"
]
Component
App\Twig\Components\App\PageSharer {#719
  +shareUrl: "https://test.fitmetrics.ch/fr/exercices/equipement/2-kettlebells?page=5"
  +title: "Exercices - Kettlebells - FitMetrics"
  +description: "Kettlebells Bodysport"
  +quote: null
  +hashtags: [
    "fitmetrics"
  ]
  +alignMobileLeft: false
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#865 …}
  -seoPage: App\BusinessLogic\App\Seo\SeoPage {#206 …}
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.10 ms
Input props
[
  "name" => "check"
  "class" => "w-5 h-5 text-white fill-white"
]
Attributes
[
  "class" => "w-5 h-5 text-white fill-white"
]
Component
App\Twig\Components\Media\Icon {#9478
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "check"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.09 ms
Input props
[
  "name" => "reddit"
  "class" => "w-6 h-6 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-6 h-6 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#9506
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "reddit"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.08 ms
Input props
[
  "name" => "twitter"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#9531
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "twitter"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.07 ms
Input props
[
  "name" => "threads"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#9554
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "threads"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.07 ms
Input props
[
  "name" => "facebook"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#9577
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "facebook"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.07 ms
Input props
[
  "name" => "linkedin"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#9600
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "linkedin"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.07 ms
Input props
[
  "name" => "whatsapp"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#9623
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "whatsapp"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.07 ms
Input props
[
  "name" => "email"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#9646
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "email"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
ad:wide-skyscraper App\Twig\Components\Ad\AdWideSkyscraper 74.5 MiB 0.70 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\Ad\AdWideSkyscraper {#9482
  +includeScript: true
  +labelClass: null
  +containerClass: ""
  +adClass: null
  +showBgColor: false
  #kernel: App\Kernel {#14 …}
  #accountManager: App\BusinessLogic\User\Manager\AccountManager {#159 …}
  #parameterBag: Symfony\Component\DependencyInjection\ParameterBag\ContainerBag {#686 …}
  #seoPage: App\BusinessLogic\App\Seo\SeoPage {#206 …}
  +right: true
  +left: true
}
ad:horizontal:fluid App\Twig\Components\Ad\AdHorizontalFluid 74.5 MiB 0.12 ms
Input props
[
  "containerClass" => "content-container my-4"
]
Attributes
[]
Component
App\Twig\Components\Ad\AdHorizontalFluid {#9699
  +includeScript: true
  +labelClass: null
  +containerClass: "content-container my-4"
  +adClass: null
  +showBgColor: true
  #kernel: App\Kernel {#14 …}
  #accountManager: App\BusinessLogic\User\Manager\AccountManager {#159 …}
  #parameterBag: Symfony\Component\DependencyInjection\ParameterBag\ContainerBag {#686 …}
  #seoPage: App\BusinessLogic\App\Seo\SeoPage {#206 …}
}
app:lang-selector App\Twig\Components\App\LangSelector 74.5 MiB 0.09 ms
Input props
[
  "defaultOpenLeft" => false
]
Attributes
[]
Component
App\Twig\Components\App\LangSelector {#9744
  +routeName: null
  +params: null
  +withQuery: true
  +defaultOpenLeft: false
  -seoPage: App\BusinessLogic\App\Seo\SeoPage {#206 …}
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#865 …}
  -router: Symfony\Bundle\FrameworkBundle\Routing\Router {#681 …}
}
utils:theme-switcher
[Anonymous]
74.5 MiB 0.24 ms
Input props
[
  "class" => "max-w-fit"
]
Attributes
[
  "class" => "max-w-fit"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#9736
  -props: [
    "class" => "max-w-fit"
  ]
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.09 ms
Input props
[
  "name" => "fitmetrics-biceps"
  "class" => "h-12 sm:h-16 max-w-[116px] mr-3 dark:hidden"
]
Attributes
[
  "class" => "h-12 sm:h-16 max-w-[116px] mr-3 dark:hidden"
]
Component
App\Twig\Components\Media\Icon {#9778
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.07 ms
Input props
[
  "name" => "fitmetrics-white-biceps"
  "class" => "h-12 sm:h-16 max-w-[116px] mr-3 hidden dark:block"
]
Attributes
[
  "class" => "h-12 sm:h-16 max-w-[116px] mr-3 hidden dark:block"
]
Component
App\Twig\Components\Media\Icon {#9810
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.07 ms
Input props
[
  "name" => "heart"
  "class" => "heart h-5 w-5 text-[#eb2a2a]"
]
Attributes
[
  "class" => "heart h-5 w-5 text-[#eb2a2a]"
]
Component
App\Twig\Components\Media\Icon {#9833
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "heart"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.07 ms
Input props
[
  "name" => "whatsapp"
  "class" => "w-[28px] h-[28px]"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-[28px] h-[28px]"
]
Component
App\Twig\Components\Media\Icon {#9856
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "whatsapp"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.07 ms
Input props
[
  "name" => "instagram"
  "class" => "w-[28px] h-[28px]"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-[28px] h-[28px]"
]
Component
App\Twig\Components\Media\Icon {#9879
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "instagram"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.07 ms
Input props
[
  "name" => "threads"
  "class" => "w-[28px] h-[28px]"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-[28px] h-[28px]"
]
Component
App\Twig\Components\Media\Icon {#9902
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "threads"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.06 ms
Input props
[
  "name" => "tiktok"
  "class" => "w-[29px] h-[29px]"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-[29px] h-[29px]"
]
Component
App\Twig\Components\Media\Icon {#9925
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "tiktok"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.06 ms
Input props
[
  "name" => "facebook"
  "class" => "w-[19px] h-[28px]"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-[19px] h-[28px]"
]
Component
App\Twig\Components\Media\Icon {#9948
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "facebook"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.06 ms
Input props
[
  "name" => "youtube"
  "class" => "w-[28px] h-[24px]"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-[28px] h-[24px]"
]
Component
App\Twig\Components\Media\Icon {#9971
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5161 …}
  +name: "youtube"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}