js-site-favicon, logged-out env-production page-responsive, position-relative js-header-wrapper , px-2 py-4 color-bg-info-inverse color-text-white show-on-focus js-skip-to-content, progress-pjax-loader js-pjax-loader-bar Progress position-fixed width-full, Progress-item progress-pjax-loader-bar color-bg-info-inverse, Header-old header-logged-out js-details-container Details position-relative f4 py-2, container-xl d-lg-flex flex-items-center p-responsive, d-flex flex-justify-between flex-items-center, mr-4, octicon octicon-mark-github color-text-white, d-lg-none css-truncate css-truncate-target width-fit p-2, d-flex flex-items-center, d-inline-block d-lg-none f5 color-text-white no-underline border color-border-default rounded-2 px-2 py-1 mr-3 mr-sm-5, js-details-target btn-link d-lg-none mt-1, octicon octicon-three-bars color-text-white, HeaderMenu HeaderMenu--logged-out position-fixed top-0 right-0 bottom-0 height-fit position-lg-relative d-lg-flex flex-justify-between flex-items-center flex-auto, d-flex d-lg-none flex-justify-end border-bottom color-bg-subtle p-3, js-details-target btn-link, octicon octicon-x color-icon-secondary, mt-0 px-3 px-lg-0 mb-5 mb-lg-0, d-lg-flex list-style-none, d-block d-lg-flex flex-lg-nowrap flex-lg-items-center border-bottom border-lg-bottom-0 mr-0 mr-lg-3 edge-item-fix position-relative flex-wrap flex-justify-between d-flex flex-items-center , HeaderMenu-details details-overlay details-reset width-full, HeaderMenu-summary HeaderMenu-link px-0 py-3 border-0 no-wrap d-block d-lg-inline-block, icon-chevon-down-mktg position-absolute position-lg-relative, dropdown-menu flex-auto rounded px-0 mt-0 pb-4 p-lg-4 position-relative position-lg-absolute left-0 left-lg-n4, py-2 lh-condensed-ultra d-block Link--primary no-underline h5 Bump-link--hover, Bump-link-symbol float-right text-normal color-fg-muted pr-3, list-style-none f5 pb-3, edge-item-fix, py-2 lh-condensed-ultra d-block Link--secondary no-underline f5 Bump-link--hover, list-style-none mb-0 border-lg-top pt-lg-3, py-2 lh-condensed-ultra d-block no-underline Link--primary no-underline h5 Bump-link--hover, border-bottom border-lg-bottom-0 mr-0 mr-lg-3, HeaderMenu-link no-underline py-3 d-block d-lg-inline-block, dropdown-menu flex-auto rounded px-0 pt-2 pb-0 mt-0 pb-4 p-lg-4 position-relative position-lg-absolute left-0 left-lg-n4, list-style-none mb-3, color-fg-muted text-normal text-mono f5 mb-2 border-lg-top pt-lg-3, list-style-none mb-0, py-2 pb-0 lh-condensed-ultra d-block Link--secondary no-underline f5 Bump-link--hover, dropdown-menu flex-auto rounded px-0 pt-2 pb-4 mt-0 p-lg-4 position-relative position-lg-absolute left-0 left-lg-n4, pb-2 lh-condensed-ultra d-block Link--primary no-underline h5 Bump-link--hover, py-2 pb-0 lh-condensed-ultra d-block no-underline Link--primary no-underline h5 Bump-link--hover, d-lg-flex flex-items-center px-3 px-lg-0 text-center text-lg-left, d-lg-flex min-width-0 mb-3 mb-lg-0, header-search flex-auto js-site-search position-relative flex-self-stretch flex-md-self-auto mb-3 mb-md-0 mr-0 mr-md-3 scoped-search site-scoped-search js-jump-to, position-relative, js-site-search-form, form-control input-sm header-search-wrapper p-0 js-chromeless-input-container header-search-wrapper-jump-to position-relative d-flex flex-justify-between flex-items-center, form-control input-sm header-search-input jump-to-field js-jump-to-field js-site-search-focus js-site-search-field is-clearable, js-data-jump-to-suggestions-path-csrf, js-site-search-type-field, mr-1 header-search-key-slash, Box position-absolute overflow-hidden d-none jump-to-suggestions js-jump-to-suggestions-container, d-none js-jump-to-suggestions-template-container, d-flex flex-justify-start flex-items-center p-0 f5 navigation-item js-navigation-item js-jump-to-suggestion, no-underline d-flex flex-auto flex-items-center jump-to-suggestions-path js-jump-to-suggestion-path js-navigation-open p-2, jump-to-octicon js-jump-to-octicon flex-shrink-0 mr-2 text-center d-none, octicon octicon-repo js-jump-to-octicon-repo d-none flex-shrink-0, octicon octicon-project js-jump-to-octicon-project d-none flex-shrink-0, octicon octicon-search js-jump-to-octicon-search d-none flex-shrink-0, avatar mr-2 flex-shrink-0 js-jump-to-suggestion-avatar d-none, jump-to-suggestion-name js-jump-to-suggestion-name flex-auto overflow-hidden text-left no-wrap css-truncate css-truncate-target, border rounded-1 flex-shrink-0 color-bg-tertiary px-1 color-text-tertiary ml-1 f6 d-none js-jump-to-badge-search, js-jump-to-badge-search-text-default d-none, js-jump-to-badge-search-text-global d-none, d-inline-block ml-1 v-align-middle, border rounded-1 flex-shrink-0 color-bg-tertiary px-1 color-text-tertiary ml-1 f6 d-none d-on-nav-focus js-jump-to-badge-jump, d-none js-jump-to-no-results-template-container, d-flex flex-justify-center flex-items-center f5 d-none js-jump-to-suggestion p-2, color-text-secondary, p-0 m-0 js-navigation-container jump-to-suggestions-results-container js-jump-to-suggestions-results-container, d-flex flex-justify-start flex-items-center p-0 f5 navigation-item js-navigation-item js-jump-to-scoped-search d-none, d-flex flex-justify-start flex-items-center p-0 f5 navigation-item js-navigation-item js-jump-to-owner-scoped-search d-none, d-flex flex-justify-start flex-items-center p-0 f5 navigation-item js-navigation-item js-jump-to-global-search d-none, position-relative mr-3 mb-4 mb-lg-0 d-inline-block, HeaderMenu-link flex-shrink-0 no-underline, HeaderMenu-link flex-shrink-0 d-inline-block no-underline border color-border-default rounded px-2 py-1, show-on-focus, js-flash-template, flash flash-full {{ className }}, px-2, flash-close js-flash-close, octicon octicon-x, js-notification-shelf-include-fragment, application-main , , flash flash-warn flash-full border-top-0 text-center text-bold py-2, pt-3 hide-full-screen mb-5, d-flex mb-3 px-3 px-md-4 px-lg-5, flex-auto min-width-0 width-fit mr-3, d-flex flex-wrap flex-items-center wb-break-word f3 text-normal, octicon octicon-repo color-icon-secondary mr-2, author flex-self-stretch, url fn, mx-1 flex-self-stretch color-fg-muted, mr-2 flex-self-stretch, Label Label--secondary v-align-middle mr-1, pagehead-actions flex-shrink-0 d-none d-md-inline, tooltipped tooltipped-s btn-sm btn, octicon octicon-bell, tooltipped tooltipped-s btn-with-count btn-sm btn, octicon octicon-star v-align-text-bottom mr-1, social-count js-social-count, octicon octicon-repo-forked, social-count, d-block d-md-none mb-2 px-3 px-md-4 px-lg-5, f4 mb-3, mb-2 d-flex flex-items-center, octicon octicon-link flex-shrink-0 mr-2, flex-auto min-width-0 css-truncate css-truncate-target width-fit, text-bold, mb-2, Link--muted, octicon octicon-law mr-1, mb-3, Link--secondary no-underline mr-3, octicon octicon-star mr-1, Link--secondary no-underline, octicon octicon-repo-forked mr-1, d-flex, flex-1 mr-2, tooltipped tooltipped-s btn-sm btn btn-block, flex-1, js-repo-nav js-sidenav-container-pjax js-responsive-underlinenav overflow-hidden UnderlineNav px-3 px-md-4 px-lg-5, UnderlineNav-body list-style-none, d-inline-flex, UnderlineNav-item hx_underlinenav-item no-wrap js-responsive-underlinenav-item js-selected-navigation-item selected, octicon octicon-code UnderlineNav-octicon d-none d-sm-inline, Counter, UnderlineNav-item hx_underlinenav-item no-wrap js-responsive-underlinenav-item js-selected-navigation-item, octicon octicon-issue-opened UnderlineNav-octicon d-none d-sm-inline, octicon octicon-git-pull-request UnderlineNav-octicon d-none d-sm-inline, octicon octicon-play UnderlineNav-octicon d-none d-sm-inline, octicon octicon-project UnderlineNav-octicon d-none d-sm-inline, octicon octicon-shield UnderlineNav-octicon d-none d-sm-inline, octicon octicon-graph UnderlineNav-octicon d-none d-sm-inline, UnderlineNav-actions js-responsive-underlinenav-overflow position-absolute pr-3 pr-md-4 pr-lg-5 right-0, details-overlay details-reset position-relative, UnderlineNav-item mr-0 border-0, octicon octicon-kebab-horizontal, sr-only, dropdown-menu dropdown-menu-sw, js-selected-navigation-item selected dropdown-item, js-selected-navigation-item dropdown-item, clearfix new-discussion-timeline container-xl px-3 px-md-4 px-lg-5, repository-content , d-none d-lg-block mt-6 mr-3 Popover top-0 right-0 color-shadow-medium col-3, Layout Layout--flowRow-until-md Layout--sidebarPosition-end Layout--sidebarPosition-flowRow-end, Layout-main, file-navigation mb-3 d-flex flex-items-start, details-reset details-overlay mr-0 mb-0 , btn css-truncate, octicon octicon-git-branch, css-truncate-target, dropdown-caret, SelectMenu, SelectMenu-modal, SelectMenu-header, SelectMenu-title, SelectMenu-closeButton, d-flex flex-column js-branches-tags-tabs, SelectMenu-filter, SelectMenu-input form-control, SelectMenu-tabs, SelectMenu-tab, d-flex flex-column flex-auto overflow-auto, SelectMenu-message, SelectMenu-list , SelectMenu-loading pt-3 pb-0, anim-rotate, SelectMenu-item, octicon octicon-check SelectMenu-icon SelectMenu-icon--check, flex-1 css-truncate css-truncate-overflow {{ isFilteringClass }}, Label Label--secondary flex-self-start, SelectMenu-footer, SelectMenu-list, flex-self-center ml-3 flex-self-stretch d-none d-lg-flex flex-items-center lh-condensed-ultra, Link--primary no-underline, color-fg-muted, ml-3 Link--primary no-underline, octicon octicon-tag, flex-auto, d-none d-md-flex ml-2, position-relative details-overlay details-reset, btn-primary btn, dropdown-menu dropdown-menu-sw p-0, Box mb-3, Box-header position-relative, js-details-container Details d-flex rounded-top-1 flex-items-center flex-wrap, d-flex flex-auto flex-items-center, Skeleton avatar avatar-user flex-shrink-0 ml-n1 mr-n1 mt-n1 mb-n1, Skeleton Skeleton--text col-5 ml-3, flex-shrink-0, list-style-none d-flex, ml-0 ml-md-3, pl-3 pr-3 py-3 p-md-0 mt-n3 mb-n3 mr-n3 m-md-0 Link--primary no-underline no-wrap, octicon octicon-history, d-none d-sm-inline, color-fg-muted d-none d-lg-inline, d-none js-permalink-shortcut, include-fragment-error flash flash-error flash-full py-2, octicon octicon-alert, js-details-container Details, Details-content--hidden-not-important js-navigation-container js-active-navigation-container d-md-block, d-none d-md-block, Box-row Box-row--focus-gray py-2 d-flex position-relative js-navigation-item , mr-3 flex-shrink-0, octicon octicon-file-directory hx_color-icon-directory, flex-auto min-width-0 col-md-2 mr-3, css-truncate css-truncate-target d-block width-fit, js-navigation-open Link--primary, flex-auto min-width-0 d-none d-md-block col-5 mr-3, Skeleton Skeleton--text col-7, color-fg-muted text-right, Skeleton Skeleton--text, octicon octicon-file color-icon-tertiary, Details-content--shown Box-footer d-md-none p-0, js-details-target btn-link d-block width-full px-3 py-2, Box creole js-code-block-container Box--responsive, d-flex js-sticky js-position-sticky top-0 border-top-0 border-bottom p-2 flex-items-center flex-justify-between color-bg-default rounded-top-2, dropdown details-reset details-overlay, btn btn-octicon m-0 mr-2 p-2, octicon octicon-list-unordered, SelectMenu-modal rounded-3 mt-1, SelectMenu-input form-control js-filterable-field, SelectMenu-list SelectMenu-list--borderless p-2, filter-item SelectMenu-item py-1 text-emphasized, filter-item SelectMenu-item py-1 , Box-title, Link--primary, Box-body px-5 pb-5, markdown-body entry-content container-lg, anchor, octicon octicon-link, Layout-sidebar, BorderGrid BorderGrid--spacious, BorderGrid-row hide-sm hide-md, BorderGrid-cell, mb-3 h4, f4 mt-3, mt-3 d-flex flex-items-center, mt-3, f6, topic-tag topic-tag-link, octicon octicon-book mr-2, octicon octicon-law mr-2, BorderGrid-row, h4 mb-3, text-small color-fg-muted, list-style-none , mb-2 d-flex, mr-2, avatar circle, flex-self-center flex-auto min-width-0 css-truncate css-truncate-overflow width-fit, Link--primary no-underline flex-self-center, avatar, Progress, Progress-item color-bg-success-inverse, list-style-none, d-inline, d-inline-flex flex-items-center flex-nowrap Link--secondary no-underline text-small mr-3, octicon octicon-dot-fill mr-2, color-fg-default text-bold mr-1, footer container-xl width-full p-responsive, position-relative d-flex flex-row-reverse flex-lg-row flex-wrap flex-lg-nowrap flex-justify-center flex-lg-justify-between pt-6 pb-2 mt-6 f6 color-fg-muted border-top color-border-muted , list-style-none d-flex flex-wrap col-12 col-lg-5 flex-justify-center flex-lg-justify-between mb-2 mb-lg-0, mr-3 mr-lg-0, footer-octicon d-none d-lg-block mx-lg-4, octicon octicon-mark-github, d-flex flex-justify-center pb-6, f6 color-fg-muted, ajax-error-message flash flash-error, flash-close js-ajax-error-dismiss, js-stale-session-flash flash flash-warn flash-banner, js-stale-session-flash-signed-in, js-stale-session-flash-signed-out, details-reset details-overlay details-overlay-dark lh-default color-fg-default hx_rsm, Box Box--overlay d-flex flex-column anim-fade-in fast hx_rsm-dialog hx_rsm-modal, Box-btn-octicon m-0 btn-octicon position-absolute right-0 top-0, octocat-spinner my-6 js-details-dialog-spinner, Popover js-hovercard-content position-absolute, Popover-message Popover-message--bottom-left Popover-message--large Box color-shadow-large, zeroclipboard-container position-absolute right-0 top-0, ClipboardButton btn js-clipboard-copy m-2 p-0 tooltipped-no-delay, octicon octicon-copy js-clipboard-copy-icon m-2, octicon octicon-check js-clipboard-check-icon color-text-success d-none m-2,