Redirect 301 redirect from GET @training_exercise_detail_videos (2f3e15)

GET http://test.fitmetrics.ch/fr/exercice/6733d70f82238-etirement-open-book?alias=11978

Components

20 Twig Components
116 Render Count
558 ms Render Time
88.5 MiB Memory Usage

Components

Name Metadata Render Count Render Time
media:icon
"App\Twig\Components\Media\Icon"
components/media/icon.html.twig
67 2.87ms
ui:badge
"App\Twig\Components\Ui\Badge"
components/ui/badge.html.twig
15 1.13ms
faq
"App\Twig\Components\Ui\FaqComponent"
components/ui/faq.html.twig
5 1.29ms
raw-faq
"App\Twig\Components\Ui\RawFaqComponent"
components/ui/raw-faq.html.twig
5 0.41ms
utils:theme-switcher
[Anonymous]
components/utils/theme-switcher.html.twig
3 1.41ms
ad:square:fluid
"App\Twig\Components\Ad\AdSquareFluid"
components/ad/square-fluid.html.twig
3 0.36ms
app:lang-selector
"App\Twig\Components\App\LangSelector"
components/app/lang-selector.html.twig
2 0.51ms
app:page-sharer
"App\Twig\Components\App\PageSharer"
components/app/page-sharer.html.twig
2 2.62ms
ui:editor-render
"App\Twig\Components\Ui\Editor\EditorRender"
components/ui/editor/render.html.twig
2 0.93ms
app:loading_spinner
"App\Twig\Components\App\LoadingSpinner"
components/app/loading-spinner.html.twig
2 0.34ms
menu:main
"App\Twig\Components\Menu\MainMenu"
components/menu/main.html.twig
1 38.22ms
menu:connexion-menu
"App\Twig\Components\Menu\ConnexionMenu"
components/menu/user-menu.html.twig
1 9.09ms
menu:breadcrumb
"App\Twig\Components\Menu\Breadcrumb"
components/menu/breadcrumb.html.twig
1 0.57ms
ad:banner
"App\Twig\Components\Ad\AdBanner"
components/ad/banner.html.twig
1 0.43ms
media:video
"App\Twig\Components\Media\Video"
components/media/video.html.twig
1 0.40ms
anatomy:avatar
"App\Twig\Components\Anatomy\Avatar"
components/anatomy/avatar.html.twig
1 500.37ms
training:difficulty-badge
"App\Twig\Components\Training\DifficultyBadge"
components/training/difficulity-badge.html.twig
1 0.33ms
ui:widget-embed
"App\Twig\Components\Ui\WidgetEmbed"
components/ui/widget_embed.html.twig
1 0.96ms
ad:wide-skyscraper
"App\Twig\Components\Ad\AdWideSkyscraper"
components/ad/wide-skyscraper.html.twig
1 8.95ms
ad:horizontal:fluid
"App\Twig\Components\Ad\AdHorizontalFluid"
components/ad/horizontal-fluid.html.twig
1 0.45ms

Render calls

menu:main App\Twig\Components\Menu\MainMenu 78.5 MiB 38.22 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\Menu\MainMenu {#7510
  -routingManager: App\BusinessLogic\Training\Exercise\Url\ExerciseRoutingManager {#208 …}
  -em: Doctrine\ORM\EntityManager {#550 …}
  -cache: Symfony\Component\Cache\Adapter\TraceableAdapter {#205 …}
  -kernel: App\Kernel {#14 …}
  -mediaManager: App\BusinessLogic\Media\Manager\MediaManager {#214 …}
}
media:icon App\Twig\Components\Media\Icon 72.5 MiB 0.44 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 {#7557
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 72.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 {#7568
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
utils:theme-switcher
[Anonymous]
72.5 MiB 1.10 ms
Input props
[
  "class" => "max-w-fit"
]
Attributes
[
  "class" => "max-w-fit"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#7619
  -props: [
    "class" => "max-w-fit"
  ]
}
media:icon App\Twig\Components\Media\Icon 72.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 {#7634
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 72.5 MiB 0.05 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 {#7684
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 72.5 MiB 0.03 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 {#7712
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "search"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 72.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 {#7728
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "flexed-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 72.5 MiB 0.04 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 {#7752
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "barbell"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 72.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 {#7776
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "category"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 72.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 {#7800
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "fire"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 72.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 {#7824
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "discipline "
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 72.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 {#7848
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "stats-chart"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 72.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 {#7872
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "latest"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 72.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 {#7896
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "random"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 72.5 MiB 0.05 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 {#8189
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "chevron-down"
  +title: null
  +symbolDefsName: null
}
utils:theme-switcher
[Anonymous]
72.5 MiB 0.13 ms
Input props
[
  "class" => "max-w-fit"
]
Attributes
[
  "class" => "max-w-fit"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#8176
  -props: [
    "class" => "max-w-fit"
  ]
}
menu:connexion-menu App\Twig\Components\Menu\ConnexionMenu 78.5 MiB 9.09 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\Menu\ConnexionMenu {#8267
  -authenticationUtils: Symfony\Component\Security\Http\Authentication\AuthenticationUtils {#8268 …}
  -formFactory: Symfony\Component\Form\FormFactory {#8266 …}
}
media:icon App\Twig\Components\Media\Icon 76.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 {#8419
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "close"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 76.5 MiB 0.03 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 {#8454
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 76.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 {#8484
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 76.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 {#8516
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "google"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 76.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 {#8535
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "apple"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 78.5 MiB 0.05 ms
Input props
[
  "name" => "fitmetrics-white-biceps"
  "class" => "h-[80px] w-[300px]"
]
Attributes
[
  "class" => "h-[80px] w-[300px]"
]
Component
App\Twig\Components\Media\Icon {#8645
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 78.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 {#8679
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "chevron-down"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 78.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 {#8695
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "flexed-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 78.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 {#8719
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "fire"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 78.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 {#8743
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "category"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 78.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 {#8767
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "barbell"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 78.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 {#8791
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "discipline"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 78.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 {#8815
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "stats-chart"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 78.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 {#8839
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "latest"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 78.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 {#8863
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "random"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 78.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 {#8887
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 78.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 {#8911
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "more"
  +title: null
  +symbolDefsName: null
}
app:lang-selector App\Twig\Components\App\LangSelector 78.5 MiB 0.46 ms
Input props
[
  "defaultOpenLeft" => true
]
Attributes
[]
Component
App\Twig\Components\App\LangSelector {#8956
  +routeName: null
  +params: null
  +withQuery: true
  +defaultOpenLeft: true
  -seoPage: App\BusinessLogic\App\Seo\SeoPage {#210 …}
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#865 …}
  -router: Symfony\Bundle\FrameworkBundle\Routing\Router {#681 …}
}
media:icon App\Twig\Components\Media\Icon 78.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 {#8946
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "close"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 78.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 {#8587
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
menu:breadcrumb App\Twig\Components\Menu\Breadcrumb 78.5 MiB 0.57 ms
Input props
[
  "builder" => App\BusinessLogic\App\Menu\BreadcrumbBuilder {#4567
    -items: [
      [
        "label" => "menu.home"
        "url" => "/fr/"
      ]
      [
        "label" => "menu.exercises"
        "url" => "/fr/exercices"
      ]
      [
        "label" => "Étirement"
        "url" => "/fr/exercices/groupe/114-etirement"
      ]
      [
        "label" => "Étirement du requin"
        "url" => null
      ]
    ]
  }
]
Attributes
[]
Component
App\Twig\Components\Menu\Breadcrumb {#9039
  +items: [
    [
      "label" => "menu.home"
      "url" => "/fr/"
    ]
    [
      "label" => "menu.exercises"
      "url" => "/fr/exercices"
    ]
    [
      "label" => "Étirement"
      "url" => "/fr/exercices/groupe/114-etirement"
    ]
    [
      "label" => "Étirement du requin"
      "url" => null
    ]
  ]
  +builder: App\BusinessLogic\App\Menu\BreadcrumbBuilder {#4567
    -items: [
      [
        "label" => "menu.home"
        "url" => "/fr/"
      ]
      [
        "label" => "menu.exercises"
        "url" => "/fr/exercices"
      ]
      [
        "label" => "Étirement"
        "url" => "/fr/exercices/groupe/114-etirement"
      ]
      [
        "label" => "Étirement du requin"
        "url" => null
      ]
    ]
  }
}
media:icon App\Twig\Components\Media\Icon 78.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 {#9069
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "chevron-right"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 78.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 {#9091
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "chevron-right"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 78.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 {#9114
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "chevron-right"
  +title: null
  +symbolDefsName: null
}
ad:banner App\Twig\Components\Ad\AdBanner 78.5 MiB 0.43 ms
Input props
[
  "containerClass" => "my-4"
]
Attributes
[]
Component
App\Twig\Components\Ad\AdBanner {#9157
  +includeScript: true
  +labelClass: null
  +containerClass: "my-4"
  +adClass: null
  +showBgColor: true
  #kernel: App\Kernel {#14 …}
  #accountManager: App\BusinessLogic\User\Manager\AccountManager {#2927 …}
  #parameterBag: Symfony\Component\DependencyInjection\ParameterBag\ContainerBag {#686 …}
  #seoPage: App\BusinessLogic\App\Seo\SeoPage {#210 …}
}
media:video App\Twig\Components\Media\Video 78.5 MiB 0.40 ms
Input props
[
  "media" => App\Entity\Media\MediaVideo {#4498
    #uploadedFile: null
    #file: Vich\UploaderBundle\Entity\File {#4500 …}
    #credits: Doctrine\ORM\PersistentCollection {#4502 …}
    -source: null
    -zone: null
    -urlExternal: "https://www.youtube.com/watch?v=tFKhgIgVkYw"
    #id: 856
    -notes: null
    #translations: Doctrine\ORM\PersistentCollection {#4549 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -tiersId: null
    -tiersName: "azeoo"
    #createdAt: DateTimeImmutable @1731450639 {#4536
      date: 2024-11-12 23:30:39.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1731450639 {#4488
      date: 2024-11-12 23:30:39.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    -duration: null
    -format: null
    -startTime: null
    -endTime: null
    -youtubeId: "tFKhgIgVkYw"
  }
  "title" => "Étirement Open Book"
  "showCredits" => false
]
Attributes
[]
Component
App\Twig\Components\Media\Video {#9244
  +media: App\Entity\Media\MediaVideo {#4498
    #uploadedFile: null
    #file: Vich\UploaderBundle\Entity\File {#4500 …}
    #credits: Doctrine\ORM\PersistentCollection {#4502 …}
    -source: null
    -zone: null
    -urlExternal: "https://www.youtube.com/watch?v=tFKhgIgVkYw"
    #id: 856
    -notes: null
    #translations: Doctrine\ORM\PersistentCollection {#4549 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -tiersId: null
    -tiersName: "azeoo"
    #createdAt: DateTimeImmutable @1731450639 {#4536
      date: 2024-11-12 23:30:39.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1731450639 {#4488
      date: 2024-11-12 23:30:39.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    -duration: null
    -format: null
    -startTime: null
    -endTime: null
    -youtubeId: "tFKhgIgVkYw"
  }
  +title: "Étirement Open Book"
  +posterSm: null
  +posterLg: null
  +hasPipButton: true
  +loop: false
  +mute: false
  +showCredits: false
  +creditsTitle: "label.media_video.credits"
  -mediaManager: App\BusinessLogic\Media\Manager\MediaManager {#214 …}
  -appManager: App\BusinessLogic\App\Manager\AppManager {#152 …}
}
media:icon App\Twig\Components\Media\Icon 78.5 MiB 0.04 ms
Input props
[
  "name" => "favorites"
  "class" => "h-4 w-4 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Attributes
[
  "class" => "h-4 w-4 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Component
App\Twig\Components\Media\Icon {#9260
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 78.5 MiB 0.03 ms
Input props
[
  "name" => "program"
  "class" => "w-5 h-5 text-white inline-flex"
]
Attributes
[
  "class" => "w-5 h-5 text-white inline-flex"
]
Component
App\Twig\Components\Media\Icon {#9293
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "program"
  +title: null
  +symbolDefsName: null
}
app:page-sharer App\Twig\Components\App\PageSharer 78.5 MiB 1.40 ms
Input props
[
  "class" => "mt-2 md:m-0"
]
Attributes
[
  "class" => "mt-2 md:m-0"
]
Component
App\Twig\Components\App\PageSharer {#9317
  +shareUrl: "http://test.fitmetrics.ch/fr/exercice/6733d70f82238-etirement-open-book?alias=11978"
  +title: "Étirement du requin - Exercice - FitMetrics"
  +description: "L’étirement Open Book est un exercice de mobilité ciblé visant à améliorer la rotation de la colonne thoracique et à favoriser la flexibilité du haut du corps. Très utilisé en rééducation, en Pilates et lors des échauffements, il se réalise en position allongée sur le côté avec une ouverture du bras supérieur simulant l’ouverture d’un livre. Ce mouvement doux est particulièrement efficace pour contrer la raideur posturale liée à la position assise prolongée ou au manque de mobilité dans la partie supérieure du dos. En focalisant la rotation sur la région thoracique sans solliciter excessivement les lombaires, il contribue à une meilleure posture et à une réduction des tensions dans les épaules et la cage thoracique. Accessible et sans matériel, cet exercice est adapté aux débutants comme aux pratiquants confirmés et constitue un outil précieux dans tout programme de mobilité ou de préparation physique."
  +quote: null
  +hashtags: [
    "fitmetrics"
  ]
  +alignMobileLeft: false
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#865 …}
  -seoPage: App\BusinessLogic\App\Seo\SeoPage {#210 …}
}
media:icon App\Twig\Components\Media\Icon 78.5 MiB 0.04 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 {#9347
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "check"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 78.5 MiB 0.04 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 {#9375
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "reddit"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 78.5 MiB 0.03 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 {#9400
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "twitter"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 78.5 MiB 0.03 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 {#9423
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "threads"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 78.5 MiB 0.03 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 {#9446
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "facebook"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 78.5 MiB 0.03 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 {#9469
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "linkedin"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 78.5 MiB 0.03 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 {#9492
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "whatsapp"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 78.5 MiB 0.04 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 {#9515
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "email"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 78.5 MiB 0.04 ms
Input props
[
  "name" => "program"
  "class" => "w-6 h-6 mr-3 !text-white"
]
Attributes
[
  "class" => "w-6 h-6 mr-3 !text-white"
]
Component
App\Twig\Components\Media\Icon {#9546
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "program"
  +title: null
  +symbolDefsName: null
}
ui:editor-render App\Twig\Components\Ui\Editor\EditorRender 78.5 MiB 0.83 ms
Input props
[
  "data" => [
    "time" => 1753787981
    "version" => "2.31.0-rc.7"
    "blocks" => [
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Instructions"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "ordered"
          "items" => [
            [
              "content" => "Allongez-vous sur le côté, les genoux pliés à 90 degrés et les bras tendus devant vous."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Gardez les genoux serrés et en contact avec le sol tout au long du mouvement."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Faites pivoter lentement le bras supérieur et le torse vers l’extérieur en ouvrant la poitrine vers le plafond."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Laissez la tête suivre le mouvement du bras pour atteindre une rotation thoracique complète."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Maintenez la position finale pendant la durée souhaitée, puis revenez lentement à la position de départ."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Répétez pendant la durée prévue, puis changez de côté."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Conseils techniques"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Concentrez-vous sur la rotation de la colonne thoracique, sans impliquer le bas du dos."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Gardez les hanches et les genoux fermement ancrés au sol pour isoler le haut du dos."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Effectuez le mouvement lentement et de manière contrôlée, sans à-coups."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Conseils de respiration"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Inspirez profondément avant de commencer la rotation."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Expirez lentement pendant la rotation pour favoriser l’amplitude et la détente."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Respirez de manière régulière en maintenant l’étirement."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
    ]
  ]
]
Attributes
[]
Component
App\Twig\Components\Ui\Editor\EditorRender {#9595
  +title: null
  +data: [
    "time" => 1753787981
    "version" => "2.31.0-rc.7"
    "blocks" => [
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Instructions"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "ordered"
          "items" => [
            [
              "content" => "Allongez-vous sur le côté, les genoux pliés à 90 degrés et les bras tendus devant vous."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Gardez les genoux serrés et en contact avec le sol tout au long du mouvement."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Faites pivoter lentement le bras supérieur et le torse vers l’extérieur en ouvrant la poitrine vers le plafond."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Laissez la tête suivre le mouvement du bras pour atteindre une rotation thoracique complète."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Maintenez la position finale pendant la durée souhaitée, puis revenez lentement à la position de départ."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Répétez pendant la durée prévue, puis changez de côté."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Conseils techniques"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Concentrez-vous sur la rotation de la colonne thoracique, sans impliquer le bas du dos."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Gardez les hanches et les genoux fermement ancrés au sol pour isoler le haut du dos."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Effectuez le mouvement lentement et de manière contrôlée, sans à-coups."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Conseils de respiration"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Inspirez profondément avant de commencer la rotation."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Expirez lentement pendant la rotation pour favoriser l’amplitude et la détente."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Respirez de manière régulière en maintenant l’étirement."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
    ]
  ]
  +spacing: 4
  +adsInterval: 5
  +withAds: true
  +withMarketingBanner: false
  +marketingBannerPosition: 8
  -host: "http://test.fitmetrics.ch"
  #requestStack: Symfony\Component\HttpFoundation\RequestStack {#865 …}
  #parameterBag: Symfony\Component\DependencyInjection\ParameterBag\ContainerBag {#686 …}
}
ui:editor-render App\Twig\Components\Ui\Editor\EditorRender 78.5 MiB 0.10 ms
Input props
[
  "data" => [
    "time" => 1753787981
    "version" => "2.31.0-rc.7"
    "blocks" => [
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Conflit sous-acromial sévère"
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Chirurgie récente de la colonne vertébrale"
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Douleur aiguë au bas du dos"
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Déchirures de la coiffe des rotateurs"
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
    ]
  ]
]
Attributes
[]
Component
App\Twig\Components\Ui\Editor\EditorRender {#9656
  +title: null
  +data: [
    "time" => 1753787981
    "version" => "2.31.0-rc.7"
    "blocks" => [
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Conflit sous-acromial sévère"
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Chirurgie récente de la colonne vertébrale"
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Douleur aiguë au bas du dos"
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Déchirures de la coiffe des rotateurs"
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
    ]
  ]
  +spacing: 4
  +adsInterval: 5
  +withAds: true
  +withMarketingBanner: false
  +marketingBannerPosition: 8
  -host: "http://test.fitmetrics.ch"
  #requestStack: Symfony\Component\HttpFoundation\RequestStack {#865 …}
  #parameterBag: Symfony\Component\DependencyInjection\ParameterBag\ContainerBag {#686 …}
}
ad:square:fluid App\Twig\Components\Ad\AdSquareFluid 78.5 MiB 0.23 ms
Input props
[
  "containerClass" => "mt-6"
]
Attributes
[]
Component
App\Twig\Components\Ad\AdSquareFluid {#9643
  +includeScript: true
  +labelClass: null
  +containerClass: "mt-6"
  +adClass: null
  +showBgColor: true
  #kernel: App\Kernel {#14 …}
  #accountManager: App\BusinessLogic\User\Manager\AccountManager {#2927 …}
  #parameterBag: Symfony\Component\DependencyInjection\ParameterBag\ContainerBag {#686 …}
  #seoPage: App\BusinessLogic\App\Seo\SeoPage {#210 …}
}
faq App\Twig\Components\Ui\FaqComponent 78.5 MiB 0.65 ms
Input props
[
  "faq" => App\Entity\Faq {#6881
    -news: Doctrine\ORM\PersistentCollection {#6898 …}
    -exercises: Doctrine\ORM\PersistentCollection {#6896 …}
    #id: 4845
    #createdAt: DateTimeImmutable @1753392427 {#6886
      date: 2025-07-24 23:27:07.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1753392427 {#6911
      date: 2025-07-24 23:27:07.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#6848 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
]
Attributes
[]
Component
App\Twig\Components\Ui\FaqComponent {#9700
  +faq: App\Entity\Faq {#6881
    -news: Doctrine\ORM\PersistentCollection {#6898 …}
    -exercises: Doctrine\ORM\PersistentCollection {#6896 …}
    #id: 4845
    #createdAt: DateTimeImmutable @1753392427 {#6886
      date: 2025-07-24 23:27:07.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1753392427 {#6911
      date: 2025-07-24 23:27:07.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#6848 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
}
raw-faq App\Twig\Components\Ui\RawFaqComponent 78.5 MiB 0.23 ms
Input props
[
  "question" => "À quoi sert l’étirement Open Book ?"
  "answer" => "L’étirement Open Book permet d’améliorer la mobilité de la colonne thoracique, de réduire les raideurs du haut du dos et d’optimiser la posture grâce à un mouvement rotatif contrôlé."
]
Attributes
[]
Component
App\Twig\Components\Ui\RawFaqComponent {#9728
  +question: "À quoi sert l’étirement Open Book ?"
  +answer: "L’étirement Open Book permet d’améliorer la mobilité de la colonne thoracique, de réduire les raideurs du haut du dos et d’optimiser la posture grâce à un mouvement rotatif contrôlé."
}
faq App\Twig\Components\Ui\FaqComponent 78.5 MiB 0.19 ms
Input props
[
  "faq" => App\Entity\Faq {#6850
    -news: Doctrine\ORM\PersistentCollection {#6851 …}
    -exercises: Doctrine\ORM\PersistentCollection {#6853 …}
    #id: 4846
    #createdAt: DateTimeImmutable @1753392427 {#6846
      date: 2025-07-24 23:27:07.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1753392427 {#6849
      date: 2025-07-24 23:27:07.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#6855 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
]
Attributes
[]
Component
App\Twig\Components\Ui\FaqComponent {#9759
  +faq: App\Entity\Faq {#6850
    -news: Doctrine\ORM\PersistentCollection {#6851 …}
    -exercises: Doctrine\ORM\PersistentCollection {#6853 …}
    #id: 4846
    #createdAt: DateTimeImmutable @1753392427 {#6846
      date: 2025-07-24 23:27:07.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1753392427 {#6849
      date: 2025-07-24 23:27:07.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#6855 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
}
raw-faq App\Twig\Components\Ui\RawFaqComponent 78.5 MiB 0.05 ms
Input props
[
  "question" => "Puis-je faire l’étirement Open Book tous les jours ?"
  "answer" => "Oui, cet étirement doux peut être pratiqué quotidiennement en échauffement, en récupération ou comme routine de mobilité pour maintenir la souplesse de la colonne vertébrale."
]
Attributes
[]
Component
App\Twig\Components\Ui\RawFaqComponent {#9804
  +question: "Puis-je faire l’étirement Open Book tous les jours ?"
  +answer: "Oui, cet étirement doux peut être pratiqué quotidiennement en échauffement, en récupération ou comme routine de mobilité pour maintenir la souplesse de la colonne vertébrale."
}
faq App\Twig\Components\Ui\FaqComponent 78.5 MiB 0.16 ms
Input props
[
  "faq" => App\Entity\Faq {#6859
    -news: Doctrine\ORM\PersistentCollection {#6860 …}
    -exercises: Doctrine\ORM\PersistentCollection {#6862 …}
    #id: 4847
    #createdAt: DateTimeImmutable @1753392427 {#6857
      date: 2025-07-24 23:27:07.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1753392427 {#6858
      date: 2025-07-24 23:27:07.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#6864 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
]
Attributes
[]
Component
App\Twig\Components\Ui\FaqComponent {#9807
  +faq: App\Entity\Faq {#6859
    -news: Doctrine\ORM\PersistentCollection {#6860 …}
    -exercises: Doctrine\ORM\PersistentCollection {#6862 …}
    #id: 4847
    #createdAt: DateTimeImmutable @1753392427 {#6857
      date: 2025-07-24 23:27:07.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1753392427 {#6858
      date: 2025-07-24 23:27:07.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#6864 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
}
raw-faq App\Twig\Components\Ui\RawFaqComponent 78.5 MiB 0.04 ms
Input props
[
  "question" => "L’étirement Open Book est-il adapté aux débutants ?"
  "answer" => "Absolument, cet exercice sans équipement est facile à exécuter et convient parfaitement aux débutants comme aux personnes en rééducation."
]
Attributes
[]
Component
App\Twig\Components\Ui\RawFaqComponent {#9851
  +question: "L’étirement Open Book est-il adapté aux débutants ?"
  +answer: "Absolument, cet exercice sans équipement est facile à exécuter et convient parfaitement aux débutants comme aux personnes en rééducation."
}
faq App\Twig\Components\Ui\FaqComponent 78.5 MiB 0.15 ms
Input props
[
  "faq" => App\Entity\Faq {#6868
    -news: Doctrine\ORM\PersistentCollection {#6869 …}
    -exercises: Doctrine\ORM\PersistentCollection {#6871 …}
    #id: 4848
    #createdAt: DateTimeImmutable @1753392427 {#6866
      date: 2025-07-24 23:27:07.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1753392427 {#6867
      date: 2025-07-24 23:27:07.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#6873 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
]
Attributes
[]
Component
App\Twig\Components\Ui\FaqComponent {#9854
  +faq: App\Entity\Faq {#6868
    -news: Doctrine\ORM\PersistentCollection {#6869 …}
    -exercises: Doctrine\ORM\PersistentCollection {#6871 …}
    #id: 4848
    #createdAt: DateTimeImmutable @1753392427 {#6866
      date: 2025-07-24 23:27:07.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1753392427 {#6867
      date: 2025-07-24 23:27:07.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#6873 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
}
raw-faq App\Twig\Components\Ui\RawFaqComponent 78.5 MiB 0.04 ms
Input props
[
  "question" => "L’étirement Open Book peut-il soulager les douleurs dorsales ?"
  "answer" => "Oui, il peut atténuer les inconforts dans le haut du dos en favorisant la mobilité thoracique, mais il doit être évité en cas de douleur aiguë ou de blessure vertébrale."
]
Attributes
[]
Component
App\Twig\Components\Ui\RawFaqComponent {#9898
  +question: "L’étirement Open Book peut-il soulager les douleurs dorsales ?"
  +answer: "Oui, il peut atténuer les inconforts dans le haut du dos en favorisant la mobilité thoracique, mais il doit être évité en cas de douleur aiguë ou de blessure vertébrale."
}
faq App\Twig\Components\Ui\FaqComponent 78.5 MiB 0.14 ms
Input props
[
  "faq" => App\Entity\Faq {#6921
    -news: Doctrine\ORM\PersistentCollection {#6922 …}
    -exercises: Doctrine\ORM\PersistentCollection {#6924 …}
    #id: 4849
    #createdAt: DateTimeImmutable @1753392427 {#6919
      date: 2025-07-24 23:27:07.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1753392427 {#6920
      date: 2025-07-24 23:27:07.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#6926 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
]
Attributes
[]
Component
App\Twig\Components\Ui\FaqComponent {#9901
  +faq: App\Entity\Faq {#6921
    -news: Doctrine\ORM\PersistentCollection {#6922 …}
    -exercises: Doctrine\ORM\PersistentCollection {#6924 …}
    #id: 4849
    #createdAt: DateTimeImmutable @1753392427 {#6919
      date: 2025-07-24 23:27:07.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1753392427 {#6920
      date: 2025-07-24 23:27:07.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#6926 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
}
raw-faq App\Twig\Components\Ui\RawFaqComponent 78.5 MiB 0.04 ms
Input props
[
  "question" => "Quels muscles sont sollicités pendant l’étirement Open Book ?"
  "answer" => "Cet étirement cible principalement les muscles du haut du dos, notamment la colonne thoracique, avec une activation secondaire des obliques externes, des rhomboïdes et des fessiers pour la stabilisation."
]
Attributes
[]
Component
App\Twig\Components\Ui\RawFaqComponent {#9945
  +question: "Quels muscles sont sollicités pendant l’étirement Open Book ?"
  +answer: "Cet étirement cible principalement les muscles du haut du dos, notamment la colonne thoracique, avec une activation secondaire des obliques externes, des rhomboïdes et des fessiers pour la stabilisation."
}
anatomy:avatar App\Twig\Components\Anatomy\Avatar 88.5 MiB 500.37 ms
Input props
[
  "class" => "relative"
  "primaryMuscles" => [
    12
  ]
  "secondaryMuscles" => [
    3
    15
    26
  ]
  "displayFront" => false
]
Attributes
[
  "class" => "relative"
]
Component
App\Twig\Components\Anatomy\Avatar {#9873
  #container: Symfony\Component\DependencyInjection\Argument\ServiceLocator {#9956 …}
  +primaryMuscles: [
    12
  ]
  +secondaryMuscles: [
    3
    15
    26
  ]
  +type: "url"
  +urlReferenceType: 2
  +displayFront: false
  +selectedMuscles: []
  +displayTagMuscles: false
  +hoverMuscleDefaultText: "-"
  #entityManager: Doctrine\ORM\EntityManager {#550 …}
  #localeSwitcher: Symfony\Component\Translation\LocaleSwitcher {#1600 …}
  #avatarData: App\BusinessLogic\Anatomy\AvatarData {#9954 …}
  -liveResponder: Symfony\UX\LiveComponent\LiveResponder {#9955 …}
}
ui:badge App\Twig\Components\Ui\Badge 88.5 MiB 0.41 ms
Input props
[
  "name" => "Dos"
  "url" => "/fr/exercices/muscle/12-dos"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#11266
  +name: "Dos"
  +url: "/fr/exercices/muscle/12-dos"
  +color: "primary"
  +small: false
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 88.5 MiB 0.07 ms
Input props
[
  "name" => "Fessiers"
  "url" => "/fr/exercices/muscle/3-fessiers"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#11318
  +name: "Fessiers"
  +url: "/fr/exercices/muscle/3-fessiers"
  +color: "primary"
  +small: false
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 88.5 MiB 0.06 ms
Input props
[
  "name" => "Obliques"
  "url" => "/fr/exercices/muscle/15-obliques"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#11342
  +name: "Obliques"
  +url: "/fr/exercices/muscle/15-obliques"
  +color: "primary"
  +small: false
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 88.5 MiB 0.05 ms
Input props
[
  "name" => "Rhomboïde"
  "url" => "/fr/exercices/muscle/26-rhombo%C3%AFde"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#11366
  +name: "Rhomboïde"
  +url: "/fr/exercices/muscle/26-rhombo%C3%AFde"
  +color: "primary"
  +small: false
  +selected: false
}
ad:square:fluid App\Twig\Components\Ad\AdSquareFluid 88.5 MiB 0.07 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\Ad\AdSquareFluid {#11254
  +includeScript: true
  +labelClass: null
  +containerClass: "max-h-[300px] max-w-[300px]"
  +adClass: null
  +showBgColor: true
  #kernel: App\Kernel {#14 …}
  #accountManager: App\BusinessLogic\User\Manager\AccountManager {#2927 …}
  #parameterBag: Symfony\Component\DependencyInjection\ParameterBag\ContainerBag {#686 …}
  #seoPage: App\BusinessLogic\App\Seo\SeoPage {#210 …}
}
training:difficulty-badge App\Twig\Components\Training\DifficultyBadge 88.5 MiB 0.33 ms
Input props
[
  "difficulty" => "beginner"
]
Attributes
[]
Component
App\Twig\Components\Training\DifficultyBadge {#11399
  +difficulty: "beginner"
  +small: false
  +link: true
}
ui:badge App\Twig\Components\Ui\Badge 88.5 MiB 0.06 ms
Input props
[
  "name" => "Isolation"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#11430
  +name: "Isolation"
  +url: null
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 88.5 MiB 0.05 ms
Input props
[
  "name" => "Tapis de sol"
  "url" => "/fr/exercices/equipement/17-tapis-de-sol"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#11470
  +name: "Tapis de sol"
  +url: "/fr/exercices/equipement/17-tapis-de-sol"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 88.5 MiB 0.05 ms
Input props
[
  "name" => "Sans matériel"
  "url" => "/fr/exercices/equipement/29-sans-mat%C3%A9riel"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#11494
  +name: "Sans matériel"
  +url: "/fr/exercices/equipement/29-sans-mat%C3%A9riel"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 88.5 MiB 0.06 ms
Input props
[
  "name" => "Fitness"
  "url" => "/fr/exercices/sport/5-fitness"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#11518
  +name: "Fitness"
  +url: "/fr/exercices/sport/5-fitness"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 88.5 MiB 0.05 ms
Input props
[
  "name" => "Yoga"
  "url" => "/fr/exercices/sport/8-yoga"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#11542
  +name: "Yoga"
  +url: "/fr/exercices/sport/8-yoga"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 88.5 MiB 0.05 ms
Input props
[
  "name" => "Pilates"
  "url" => "/fr/exercices/sport/9-pilates"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#11566
  +name: "Pilates"
  +url: "/fr/exercices/sport/9-pilates"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 88.5 MiB 0.05 ms
Input props
[
  "name" => "Étirement"
  "url" => "/fr/exercices/categorie/56-etirement"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#11590
  +name: "Étirement"
  +url: "/fr/exercices/categorie/56-etirement"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 88.5 MiB 0.05 ms
Input props
[
  "name" => "Mobilité"
  "url" => "/fr/exercices/categorie/59-mobilite"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#11614
  +name: "Mobilité"
  +url: "/fr/exercices/categorie/59-mobilite"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 88.5 MiB 0.05 ms
Input props
[
  "name" => "Échauffement"
  "url" => "/fr/exercices/categorie/62-echauffement"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#11638
  +name: "Échauffement"
  +url: "/fr/exercices/categorie/62-echauffement"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 88.5 MiB 0.05 ms
Input props
[
  "name" => "Haut du corps"
  "url" => "/fr/exercices/categorie/67-haut-du-corps"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#11662
  +name: "Haut du corps"
  +url: "/fr/exercices/categorie/67-haut-du-corps"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 88.5 MiB 0.05 ms
Input props
[
  "name" => "Récupération et relaxation"
  "url" => "/fr/exercices/categorie/75-recuperation-et-relaxation"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#11686
  +name: "Récupération et relaxation"
  +url: "/fr/exercices/categorie/75-recuperation-et-relaxation"
  +color: "gray"
  +small: true
  +selected: false
}
ad:square:fluid App\Twig\Components\Ad\AdSquareFluid 88.5 MiB 0.06 ms
Input props
[
  "containerClass" => "hidden lg:flex items-center justify-center my-6"
]
Attributes
[]
Component
App\Twig\Components\Ad\AdSquareFluid {#11380
  +includeScript: true
  +labelClass: null
  +containerClass: "hidden lg:flex items-center justify-center my-6"
  +adClass: null
  +showBgColor: true
  #kernel: App\Kernel {#14 …}
  #accountManager: App\BusinessLogic\User\Manager\AccountManager {#2927 …}
  #parameterBag: Symfony\Component\DependencyInjection\ParameterBag\ContainerBag {#686 …}
  #seoPage: App\BusinessLogic\App\Seo\SeoPage {#210 …}
}
app:loading_spinner App\Twig\Components\App\LoadingSpinner 88.5 MiB 0.29 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\App\LoadingSpinner {#9582
  +color: "fill-primary"
  +size: 8
  +centered: true
  +inline: false
}
app:loading_spinner App\Twig\Components\App\LoadingSpinner 88.5 MiB 0.06 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\App\LoadingSpinner {#11743
  +color: "fill-primary"
  +size: 8
  +centered: true
  +inline: false
}
media:icon App\Twig\Components\Media\Icon 88.5 MiB 0.05 ms
Input props
[
  "name" => "program"
  "class" => "w-6 h-6 mr-3 !text-white"
]
Attributes
[
  "class" => "w-6 h-6 mr-3 !text-white"
]
Component
App\Twig\Components\Media\Icon {#11781
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "program"
  +title: null
  +symbolDefsName: null
}
ui:widget-embed App\Twig\Components\Ui\WidgetEmbed 88.5 MiB 0.96 ms
Input props
[
  "class" => "hidden md:block"
  "route" => "http://test.fitmetrics.ch/fr/widgets/exercise/preview-6733d70f82238?video=1"
  "parameters" => [
    [
      "name" => "orientation"
      "description" => "Change the layout: horizontal (side by side) or vertical (stacked)"
      "example" => "?orientation=vertical"
      "values" => [
        "horizontal"
        "vertical"
      ]
    ]
    [
      "name" => "video"
      "description" => "Show the exercise video (if available): yes"
      "example" => "?video=1"
      "values" => [
        "0"
        "1"
        "true"
        "false"
      ]
    ]
  ]
  "defaultWidth" => 350
  "defaultHeight" => 700
]
Attributes
[
  "class" => "hidden md:block"
]
Component
App\Twig\Components\Ui\WidgetEmbed {#11817
  +route: "http://test.fitmetrics.ch/fr/widgets/exercise/preview-6733d70f82238?video=1"
  +parameters: [
    [
      "name" => "orientation"
      "description" => "Change the layout: horizontal (side by side) or vertical (stacked)"
      "example" => "?orientation=vertical"
      "values" => [
        "horizontal"
        "vertical"
      ]
    ]
    [
      "name" => "video"
      "description" => "Show the exercise video (if available): yes"
      "example" => "?video=1"
      "values" => [
        "0"
        "1"
        "true"
        "false"
      ]
    ]
  ]
  +defaultWidth: 350
  +defaultHeight: 700
}
media:icon App\Twig\Components\Media\Icon 88.5 MiB 0.06 ms
Input props
[
  "name" => "check"
  "class" => "me-1"
  "style" => "width: 20px; height: 20px;"
]
Attributes
[
  "class" => "me-1"
  "style" => "width: 20px; height: 20px;"
]
Component
App\Twig\Components\Media\Icon {#11855
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "check"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 88.5 MiB 0.05 ms
Input props
[
  "name" => "close"
  "class" => "w-[26px] h-[26px] cursor-pointer text-black dark:text-white"
]
Attributes
[
  "class" => "w-[26px] h-[26px] cursor-pointer text-black dark:text-white"
]
Component
App\Twig\Components\Media\Icon {#11888
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "close"
  +title: null
  +symbolDefsName: null
}
app:page-sharer App\Twig\Components\App\PageSharer 88.5 MiB 1.22 ms
Input props
[
  "class" => "content-container"
  "title" => "Étirement Open Book"
  "description" => "L’étirement Open Book est un exercice de mobilité ciblé visant à améliorer la rotation de la colonne thoracique et à favoriser la flexibilité du haut du corps. Très utilisé en rééducation, en Pilates et lors des échauffements, il se réalise en position allongée sur le côté avec une ouverture du bras supérieur simulant l’ouverture d’un livre. Ce mouvement doux est particulièrement efficace pour contrer la raideur posturale liée à la position assise prolongée ou au manque de mobilité dans la partie supérieure du dos. En focalisant la rotation sur la région thoracique sans solliciter excessivement les lombaires, il contribue à une meilleure posture et à une réduction des tensions dans les épaules et la cage thoracique. Accessible et sans matériel, cet exercice est adapté aux débutants comme aux pratiquants confirmés et constitue un outil précieux dans tout programme de mobilité ou de préparation physique."
]
Attributes
[
  "class" => "content-container"
]
Component
App\Twig\Components\App\PageSharer {#11928
  +shareUrl: "http://test.fitmetrics.ch/fr/exercice/6733d70f82238-etirement-open-book?alias=11978"
  +title: "Étirement Open Book"
  +description: "L’étirement Open Book est un exercice de mobilité ciblé visant à améliorer la rotation de la colonne thoracique et à favoriser la flexibilité du haut du corps. Très utilisé en rééducation, en Pilates et lors des échauffements, il se réalise en position allongée sur le côté avec une ouverture du bras supérieur simulant l’ouverture d’un livre. Ce mouvement doux est particulièrement efficace pour contrer la raideur posturale liée à la position assise prolongée ou au manque de mobilité dans la partie supérieure du dos. En focalisant la rotation sur la région thoracique sans solliciter excessivement les lombaires, il contribue à une meilleure posture et à une réduction des tensions dans les épaules et la cage thoracique. Accessible et sans matériel, cet exercice est adapté aux débutants comme aux pratiquants confirmés et constitue un outil précieux dans tout programme de mobilité ou de préparation physique."
  +quote: null
  +hashtags: [
    "fitmetrics"
  ]
  +alignMobileLeft: false
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#865 …}
  -seoPage: App\BusinessLogic\App\Seo\SeoPage {#210 …}
}
media:icon App\Twig\Components\Media\Icon 88.5 MiB 0.04 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 {#11936
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "check"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 88.5 MiB 0.04 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 {#11958
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "reddit"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 88.5 MiB 0.04 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 {#11982
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "twitter"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 88.5 MiB 0.04 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 {#12005
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "threads"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 88.5 MiB 0.04 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 {#12028
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "facebook"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 88.5 MiB 0.04 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 {#12051
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "linkedin"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 88.5 MiB 0.04 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 {#12074
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "whatsapp"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 88.5 MiB 0.04 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 {#12097
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "email"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
ad:wide-skyscraper App\Twig\Components\Ad\AdWideSkyscraper 88.5 MiB 8.95 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\Ad\AdWideSkyscraper {#719
  +includeScript: true
  +labelClass: null
  +containerClass: ""
  +adClass: null
  +showBgColor: false
  #kernel: App\Kernel {#14 …}
  #accountManager: App\BusinessLogic\User\Manager\AccountManager {#2927 …}
  #parameterBag: Symfony\Component\DependencyInjection\ParameterBag\ContainerBag {#686 …}
  #seoPage: App\BusinessLogic\App\Seo\SeoPage {#210 …}
  +right: true
  +left: true
}
ad:horizontal:fluid App\Twig\Components\Ad\AdHorizontalFluid 88.5 MiB 0.45 ms
Input props
[
  "containerClass" => "content-container my-4"
]
Attributes
[]
Component
App\Twig\Components\Ad\AdHorizontalFluid {#4481
  +includeScript: true
  +labelClass: null
  +containerClass: "content-container my-4"
  +adClass: null
  +showBgColor: true
  #kernel: App\Kernel {#14 …}
  #accountManager: App\BusinessLogic\User\Manager\AccountManager {#2927 …}
  #parameterBag: Symfony\Component\DependencyInjection\ParameterBag\ContainerBag {#686 …}
  #seoPage: App\BusinessLogic\App\Seo\SeoPage {#210 …}
}
app:lang-selector App\Twig\Components\App\LangSelector 88.5 MiB 0.05 ms
Input props
[
  "defaultOpenLeft" => false
]
Attributes
[]
Component
App\Twig\Components\App\LangSelector {#6801
  +routeName: null
  +params: null
  +withQuery: true
  +defaultOpenLeft: false
  -seoPage: App\BusinessLogic\App\Seo\SeoPage {#210 …}
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#865 …}
  -router: Symfony\Bundle\FrameworkBundle\Routing\Router {#681 …}
}
utils:theme-switcher
[Anonymous]
88.5 MiB 0.18 ms
Input props
[
  "class" => "max-w-fit"
]
Attributes
[
  "class" => "max-w-fit"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#6649
  -props: [
    "class" => "max-w-fit"
  ]
}
media:icon App\Twig\Components\Media\Icon 88.5 MiB 0.05 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 {#8517
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 88.5 MiB 0.04 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 {#10304
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 88.5 MiB 0.04 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 {#11055
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "heart"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 88.5 MiB 0.04 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 {#11751
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "whatsapp"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 88.5 MiB 0.04 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 {#12160
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "instagram"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 88.5 MiB 0.04 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 {#12183
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "threads"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 88.5 MiB 0.04 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 {#12206
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "tiktok"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 88.5 MiB 0.04 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 {#12229
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "facebook"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 88.5 MiB 0.04 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 {#12252
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#7560 …}
  +name: "youtube"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}