To initialize the navigable navigable navigable, given a document state documentState and an optional navigable-or-null parent (default null):

  1. Assert: documentState's document is non-null.

  2. Let entry be a new session history entry, with

    URL
    documentState's document's URL
    document state
    documentState

    The caller of this algorithm is responsible for initializing entry's step; it will be left as "pending" until that is complete.

  3. Set navigable's current session history entry to entry.

  4. Set navigable's active session history entry to entry.

  5. Set navigable's parent to parent.

  6. Set the initial visibility state of documentState's document to navigable's traversable navigable's system visibility state.