code: def load_page_navigation_bindings() -> KeyBindingsBase:
      """
      Load both the Vi and Emacs bindings for page navigation.
      """
      # Only enable when a `Buffer` is focused, otherwise, we would catch keys
      # when another widget is focused (like for instance `c-d` in a
      # ptterm.Terminal).
      return ConditionalKeyBindings(
          merge_key_bindings(
              [
                  load_emacs_page_navigation_bindings(),
                  load_vi_page_navigation_bindings(),
              ]
          ),
          buffer_has_focus,
      )
  
imports: from __future__ import annotations
  from prompt_toolkit.filters import buffer_has_focus, emacs_mode, vi_mode
  from prompt_toolkit.key_binding.key_bindings import ConditionalKeyBindings, KeyBindings, KeyBindingsBase, merge_key_bindings
  from .scroll import scroll_backward, scroll_forward, scroll_half_page_down, scroll_half_page_up, scroll_one_line_down, scroll_one_line_up, scroll_page_down, scroll_page_up
label_desc: Use image node_id 1 for calling a global function with example usage: load_page_navigation_bindings() and returns: ConditionalKeyBindings