openstackdocstheme-1.18.1/0000775000175100017510000000000013227214134015510 5ustar zuulzuul00000000000000openstackdocstheme-1.18.1/HACKING.rst0000666000175100017510000000050113227213640017305 0ustar zuulzuul00000000000000OpenStack Docs Theme Style Commandments ======================================= - Step 1: Read the OpenStack Style Commandments https://docs.openstack.org/hacking/latest/ - Step 2: Read on Our Specific Commandments --------------------------------- Refer to https://wiki.openstack.org/wiki/Documentation/Conventions openstackdocstheme-1.18.1/test-requirements.txt0000666000175100017510000000047713227213640021764 0ustar zuulzuul00000000000000# The order of packages is significant, because pip processes them in the order # of appearance. Changing the order has an impact on the overall integration # process, which may cause wedges in the gate later. hacking!=0.13.0,<0.14,>=0.12.0 # Apache-2.0 # this is required for the docs build jobs sphinx>=1.6.2 # BSD openstackdocstheme-1.18.1/CONTRIBUTING.rst0000666000175100017510000000105213227213640020152 0ustar zuulzuul00000000000000If you would like to contribute to the development of OpenStack, you must follow the steps in this page: https://docs.openstack.org/infra/manual/developers.html Once those steps have been completed, changes to OpenStack should be submitted for review via the Gerrit tool, following the workflow documented at: https://docs.openstack.org/infra/manual/developers.html#development-workflow Pull requests submitted through GitHub will be ignored. Bugs should be filed on Launchpad, using a theme tag: https://launchpad.net/openstack-doc-tools openstackdocstheme-1.18.1/ChangeLog0000664000175100017510000002601113227214133017261 0ustar zuulzuul00000000000000CHANGES ======= 1.18.1 ------ * Fix giturl parsing 1.18.0 ------ * Replace the http links with the right ones in docs * Attempt to guess valid Git URLs * Revert "Fix the incorrect git source url" * trivial: Remove use of 'Application.{warn,info}' * Fix the incorrect git source url * Do not print the release if empty * Adds -p option in mkdir for buildpdf tox env * bindep: Add dependencies for PDFs on Fedora * gitignore: Ignore more files * Updated from global requirements * Remove -U from pip install * Avoid tox\_install.sh for constraints support * Remove setting of version/release from releasenotes * Add zuulv3 native job * Adds Turkish landing page to sidebartoc\_menu * No red with double backticks markup 1.17.0 ------ * Updated from global requirements * Fix link to openstackdays * [www] Fix link to COA * Add support for sphinx sidebar role * Remove stray characters from demo * Update the configuration of generating a PDF document * Updated from global requirements * Sync language list with openstack-manuals repo * Bring back local search * Cleanup setup.cfg * Updated from global requirements * Break cycle dependency with reno * Updated from global requirements * Break cycle dependency with os-api-ref * Remove navigation.html * Update links in README * Updated from global requirements * Documents how to set conf.py for PDF generation * show release series names not version tags * Link to latest version 1.16.1 ------ * fix alignment of toc tree items in sidebar 1.16.0 ------ * Fix a logic issue in the JS * move the localtoc for the page into the sidebar * Serve minified CSS 1.15.0 ------ * Remove rules linked to a "Status" ID * Update 2 documentation URLs according to doc migration * Move from 3rd party fonts to native font stack * Fix Added / Changed / Deprecated notices * Standardise header styling * Add spaces in demo for deprecation notices * remove smooth scrolling 1.14.0 ------ * add a comment to all output HTML pages showing the input file * CSS: Add margin-left to
* Add support for versionadded and deprecated * show the current project name and version in navigation link * Declare parallel reading safe 1.13.0 ------ * Strip tags from navigation prev, next titles * Cleanup conf.py * Allow using openstackdocstheme without git installed * Fix sorting of git versions * Add note for show\_other\_versions * Do not display title string of page local TOC 1.12.0 ------ * Increase admonition.important contrast * Adds docs for release versions dropdown menu * Adds list of versions in the "Updated" bar * Update docs * Change name of checkbuild testenv to buildpdf for clarity * Require bug\_project setting * Adding octavia api-ref * Minimal support for storyboard * move documentation from readme to sphinx tree * Updated from global requirements * Updates "Contents" to "Project home page" to better match existing * Working on integrating options from oslosphinx theme 1.11.0 ------ * switch release notes build to use openstackdocs instead of oslosphinx * automate some of the extension setup * Enable some off-by-default checks 1.10.0 ------ * Update Site Search * Updated from global requirements * PDF build support >= Sphinx 1.6.1 * README: Update configuration of openstackdocstheme 1.9.0 ----- * Updated from global requirements * Fix links in drop-down menu under Join; add https 1.8.0 ----- * Use new OpenStack logo and header * Updated from global requirements 1.7.0 ----- * Clarify search title * Fix search.html page script errors * Add alignment styling for figures and images * PDF support for sample document with font * Add tox env for PDF building * Update css markups for newer Sphinx * Adds LaTeX style file for building PDF documents * Add warning-is-error * Updated from global requirements * Updated from global requirements * Update hacking to current version * Adjust 'docs-toc a' display value * Remove getJSON function and doc-characters file * Update Launchpad info * Updated from global requirements * Use https instead of http for git.openstack.org * Update bootstrap and jquery files * Remove duplicate search field from the left sidebar * Add note in README about Python 3 changes * Fix missing role\_id 1.6.1 ----- * Includes checklist when filing a bug for osmanuals * Add trove classifiers for Python 1.6.0 ----- * Add Constraints support * Show team and repo badges on README * Removed minimized files * Allow to build docs without git command * [www] update page header links * Updated from global requirements * Updated from global requirements * Enable release notes translation * Update test API Ref * Fix typo: remove redundant 'the' * Updated from global requirements * Updated from global requirements * Update requirements * Fix tox setup * Install required packages * Updated from global requirements 1.5.0 ----- * API References dropdown menu * Allow automatic toc to be disabled 1.4.0 ----- * Update Release Notes * Adds release notes items for next release * Make \`\`something\`\` more highlighted * Allow the bug title to be customisable * Broken Link * Updated from global requirements * Increase indent level of doc top contents * Updated from global requirements * Actually include custom JS files * Release note for new sidebar feature * Use HTTPS for external deps * Set side bar content to be configurable * Create empty folder for custom font files * Fix text font-family of admonitions * Allow for inclusion of custom JS files * Updated from global requirements * Change summit video URL * Updated from global requirements * Update the Administrator Guide link * Clarify uses for this theme * Allow cssfiles added by sphinx extensions 1.3.0 ----- * Make theme version independent * Add appropriate order list styles * Shorted margin and padding for top page menu * Use pep8 instead of linters * Fix a spell typos * Rename pep8 to linters test 1.2.7 ----- * Update the contribute link at the footer * Update links in the OpenStack column in the footer * Remove feedback formular from the footer * Hide duplicate titles and empty tocs in generated content * Updated from global requirements * Sync header with www.openstack.org * Replace deprecated library function os.popen() with subprocess * Drop python classifiers from setup.cfg file * Updated from global requirements * Fix sidebar for developer.openstack.org * Deprecated tox -downloadcache option removed * Drop py26 from setup.cfg 1.2.6 ----- * Make Google Analytics tracking optional * Add bug report project definition feature * Fix the url of "How to contribute" 1.2.5 ----- * Add -W to sphinx invocation for release-notes build * Table caption: use a bold font * release note entry for sidebar link to a top page * Add link for a top page of document to "Contents" in sidebar * Add Google Analytics JavaScript tracking snippet code * Add reno for release-notes * Add padding css property for td and th * Remove the original-design directory 1.2.4 ----- * Update RELEASENOTES for 1.2.4 release * Fix the broken anchor tags * Remove unused files * Add table padding to openstackdocstheme CSS * Update releases in the left sidebar 1.2.3 ----- * Update log-a-bug comments * Extend release notes for 1.2.3 * Decrease the indent of TOC entries on the 2nd level * Set the width of the highlight table to 100% * Add padding to the left table of contents * Remove executable flags from js/css files * Add RELEASENOTES for 1.2.3 * Add support for Firstapp 1.2.2 ----- * Add release notes for version 1.2.2 * Fix syntax of RELEASENOTES * Cleanup HTML files * Remove last release details from header/footer * Fix links/texts in the license footer * Move listed guides in the sidebar into the dropdown menu * Remove the 'Sign in' link in the top bar * Fix links/add missing links in the top bar * Fix link to the OpenStack summit and remove Paris related CSS * Link the Apache 2.0 license note in the footer * Remove 'suggest edits' link from layout * Remove duplicate ask.openstack.org link from the footer 1.2.1 ----- * Fix "Docs Home" link * On hover don't change the background color of the sidebar TOC * Fix link to Cloud Admin Guide * Remove jquery subdir * Javascript cleanup * Remove unused images * Fix inclusion of metatags 1.2.0 ----- * Next release is 1.2.0 * Update RELEASENOTES.rst * Add next, previous, report a bug buttons at bottom * Fix for RST enumerated list, loweralpha * Add sidebar dynamic TOC of content * Fixed Korean typo on sidebartoc 1.1.0 ----- * Next release is 1.1.0 * Adds release notes entries for 1.0.8 and 1.0.9 * Adds original design files including CSS and JS * Move/improve the previous/next links in the left sidebar * Cleanup css/styles.css * LogABug: Publish URL of current page * Use os.getcwd() instead of shelling out to run pwd * "Report a bug" link in HTML manuals automatically fills in bug's tag * Adds CSS for glossary definitions to be indented * Update hacking to fix pep8 failure 1.0.8 ----- * Make the navigation links bigger * Remove /trunk, it does not exist anymore * Kilo is current release * Document conf.py variables * Openstackdocstheme: log-a-bug prefills wrong source file * Ignore tox directory 1.0.7 ----- * Adds release notes for 1.0.7 * "log a bug" link added to Sphinx-based documentation * Fix typo in ini block section 1.0.6 ----- * Adds release notes for 1.0.6 * Add the output from pygmentize * Adds links in sidebar nav that go to docs landing page 1.0.5 ----- * Adds release notes for 1.0.5 * Adds a non-breaking space before NEXT for better spacing around pipe * Adds Google Custom Search Engine rather than generic form * Updates for cc-by licensing * Adds next and previous links 1.0.4 ----- * Adds release notes for 1.0.3 and 1.0.4 * Rendering admonitions with Font Awesome icons * Fix for unwanted plus sign in sublists * Comments out non-working docs actions for now 1.0.3 ----- * Add instructions to the README * Removed literal carriage returns from license.txt * Move the license information into a separate file * Adds Release Notes * Updates sample to include linenos for Sphinx line numbering * add a .gitreview file 1.0.1 ----- * Theme needs a setup function to be used from package 1.0.2 ----- * Modifies combined.css to match classes for admonition * Adds correct :ref: for cross linking * Adds correct rst markup for image insertion * Adds more rst for testing * Updates combined.css to hide para symbol until user hovers over it * Moves CSS change from bootstrap to combined.css * Updates
 so that you can see white text on dark grey background
* Adds another sample RST file for testing
* Adds section for testing purposes
* fix path to jquery
* fix rst syntax
* Use pathto() to compute relative paths to static files
* Rename \_static to static
* Clean up get\_html\_theme\_path
* Don't force-inject the theme
* Move theme files into correct formation
* Update flake8 commands
* Update .gitignore
* Removes redundant static files and template files
* Removes uneeded files
* Adds rearranged files for rename to openstackdocstheme
* Adds working links to navigation dropdown and column
* Templates now support divs correctly
* Adds title row, button row, updated rows, and sidebar
* Starting point for Sphinx theme for docs.openstack.org content
openstackdocstheme-1.18.1/requirements.txt0000666000175100017510000000042013227213640020773 0ustar  zuulzuul00000000000000# The order of packages is significant, because pip processes them in the order
# of appearance. Changing the order has an impact on the overall integration
# process, which may cause wedges in the gate later.

pbr!=2.1.0,>=2.0.0 # Apache-2.0
dulwich>=0.15.0 # Apache-2.0
openstackdocstheme-1.18.1/LICENSE0000666000175100017510000002363713227213640016533 0ustar  zuulzuul00000000000000
                                 Apache License
                           Version 2.0, January 2004
                        http://www.apache.org/licenses/

   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION

   1. Definitions.

      "License" shall mean the terms and conditions for use, reproduction,
      and distribution as defined by Sections 1 through 9 of this document.

      "Licensor" shall mean the copyright owner or entity authorized by
      the copyright owner that is granting the License.

      "Legal Entity" shall mean the union of the acting entity and all
      other entities that control, are controlled by, or are under common
      control with that entity. For the purposes of this definition,
      "control" means (i) the power, direct or indirect, to cause the
      direction or management of such entity, whether by contract or
      otherwise, or (ii) ownership of fifty percent (50%) or more of the
      outstanding shares, or (iii) beneficial ownership of such entity.

      "You" (or "Your") shall mean an individual or Legal Entity
      exercising permissions granted by this License.

      "Source" form shall mean the preferred form for making modifications,
      including but not limited to software source code, documentation
      source, and configuration files.

      "Object" form shall mean any form resulting from mechanical
      transformation or translation of a Source form, including but
      not limited to compiled object code, generated documentation,
      and conversions to other media types.

      "Work" shall mean the work of authorship, whether in Source or
      Object form, made available under the License, as indicated by a
      copyright notice that is included in or attached to the work
      (an example is provided in the Appendix below).

      "Derivative Works" shall mean any work, whether in Source or Object
      form, that is based on (or derived from) the Work and for which the
      editorial revisions, annotations, elaborations, or other modifications
      represent, as a whole, an original work of authorship. For the purposes
      of this License, Derivative Works shall not include works that remain
      separable from, or merely link (or bind by name) to the interfaces of,
      the Work and Derivative Works thereof.

      "Contribution" shall mean any work of authorship, including
      the original version of the Work and any modifications or additions
      to that Work or Derivative Works thereof, that is intentionally
      submitted to Licensor for inclusion in the Work by the copyright owner
      or by an individual or Legal Entity authorized to submit on behalf of
      the copyright owner. For the purposes of this definition, "submitted"
      means any form of electronic, verbal, or written communication sent
      to the Licensor or its representatives, including but not limited to
      communication on electronic mailing lists, source code control systems,
      and issue tracking systems that are managed by, or on behalf of, the
      Licensor for the purpose of discussing and improving the Work, but
      excluding communication that is conspicuously marked or otherwise
      designated in writing by the copyright owner as "Not a Contribution."

      "Contributor" shall mean Licensor and any individual or Legal Entity
      on behalf of whom a Contribution has been received by Licensor and
      subsequently incorporated within the Work.

   2. Grant of Copyright License. Subject to the terms and conditions of
      this License, each Contributor hereby grants to You a perpetual,
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
      copyright license to reproduce, prepare Derivative Works of,
      publicly display, publicly perform, sublicense, and distribute the
      Work and such Derivative Works in Source or Object form.

   3. Grant of Patent License. Subject to the terms and conditions of
      this License, each Contributor hereby grants to You a perpetual,
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
      (except as stated in this section) patent license to make, have made,
      use, offer to sell, sell, import, and otherwise transfer the Work,
      where such license applies only to those patent claims licensable
      by such Contributor that are necessarily infringed by their
      Contribution(s) alone or by combination of their Contribution(s)
      with the Work to which such Contribution(s) was submitted. If You
      institute patent litigation against any entity (including a
      cross-claim or counterclaim in a lawsuit) alleging that the Work
      or a Contribution incorporated within the Work constitutes direct
      or contributory patent infringement, then any patent licenses
      granted to You under this License for that Work shall terminate
      as of the date such litigation is filed.

   4. Redistribution. You may reproduce and distribute copies of the
      Work or Derivative Works thereof in any medium, with or without
      modifications, and in Source or Object form, provided that You
      meet the following conditions:

      (a) You must give any other recipients of the Work or
          Derivative Works a copy of this License; and

      (b) You must cause any modified files to carry prominent notices
          stating that You changed the files; and

      (c) You must retain, in the Source form of any Derivative Works
          that You distribute, all copyright, patent, trademark, and
          attribution notices from the Source form of the Work,
          excluding those notices that do not pertain to any part of
          the Derivative Works; and

      (d) If the Work includes a "NOTICE" text file as part of its
          distribution, then any Derivative Works that You distribute must
          include a readable copy of the attribution notices contained
          within such NOTICE file, excluding those notices that do not
          pertain to any part of the Derivative Works, in at least one
          of the following places: within a NOTICE text file distributed
          as part of the Derivative Works; within the Source form or
          documentation, if provided along with the Derivative Works; or,
          within a display generated by the Derivative Works, if and
          wherever such third-party notices normally appear. The contents
          of the NOTICE file are for informational purposes only and
          do not modify the License. You may add Your own attribution
          notices within Derivative Works that You distribute, alongside
          or as an addendum to the NOTICE text from the Work, provided
          that such additional attribution notices cannot be construed
          as modifying the License.

      You may add Your own copyright statement to Your modifications and
      may provide additional or different license terms and conditions
      for use, reproduction, or distribution of Your modifications, or
      for any such Derivative Works as a whole, provided Your use,
      reproduction, and distribution of the Work otherwise complies with
      the conditions stated in this License.

   5. Submission of Contributions. Unless You explicitly state otherwise,
      any Contribution intentionally submitted for inclusion in the Work
      by You to the Licensor shall be under the terms and conditions of
      this License, without any additional terms or conditions.
      Notwithstanding the above, nothing herein shall supersede or modify
      the terms of any separate license agreement you may have executed
      with Licensor regarding such Contributions.

   6. Trademarks. This License does not grant permission to use the trade
      names, trademarks, service marks, or product names of the Licensor,
      except as required for reasonable and customary use in describing the
      origin of the Work and reproducing the content of the NOTICE file.

   7. Disclaimer of Warranty. Unless required by applicable law or
      agreed to in writing, Licensor provides the Work (and each
      Contributor provides its Contributions) on an "AS IS" BASIS,
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
      implied, including, without limitation, any warranties or conditions
      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
      PARTICULAR PURPOSE. You are solely responsible for determining the
      appropriateness of using or redistributing the Work and assume any
      risks associated with Your exercise of permissions under this License.

   8. Limitation of Liability. In no event and under no legal theory,
      whether in tort (including negligence), contract, or otherwise,
      unless required by applicable law (such as deliberate and grossly
      negligent acts) or agreed to in writing, shall any Contributor be
      liable to You for damages, including any direct, indirect, special,
      incidental, or consequential damages of any character arising as a
      result of this License or out of the use or inability to use the
      Work (including but not limited to damages for loss of goodwill,
      work stoppage, computer failure or malfunction, or any and all
      other commercial damages or losses), even if such Contributor
      has been advised of the possibility of such damages.

   9. Accepting Warranty or Additional Liability. While redistributing
      the Work or Derivative Works thereof, You may choose to offer,
      and charge a fee for, acceptance of support, warranty, indemnity,
      or other liability obligations and/or rights consistent with this
      License. However, in accepting such obligations, You may act only
      on Your own behalf and on Your sole responsibility, not on behalf
      of any other Contributor, and only if You agree to indemnify,
      defend, and hold each Contributor harmless for any liability
      incurred by, or claims asserted against, such Contributor by reason
      of your accepting any such warranty or additional liability.

openstackdocstheme-1.18.1/openstackdocstheme.egg-info/0000775000175100017510000000000013227214134023065 5ustar  zuulzuul00000000000000openstackdocstheme-1.18.1/openstackdocstheme.egg-info/requires.txt0000664000175100017510000000004313227214133025461 0ustar  zuulzuul00000000000000pbr!=2.1.0,>=2.0.0
dulwich>=0.15.0
openstackdocstheme-1.18.1/openstackdocstheme.egg-info/SOURCES.txt0000664000175100017510000001535413227214134024761 0ustar  zuulzuul00000000000000.zuul.yaml
AUTHORS
CONTRIBUTING.rst
ChangeLog
HACKING.rst
LICENSE
Makefile
README.rst
bindep.txt
index.rst
requirements.txt
setup.cfg
setup.py
test-requirements.txt
tox.ini
api-ref/source/conf.py
api-ref/source/image.inc
api-ref/source/index.rst
api-ref/source/parameters.yaml
api-ref/source/service.inc
api-ref/source/status.yaml
api-ref/source/update-server-resp.json
api-ref/source/_static/css/README.md
doc/requirements.txt
doc/source/conf.py
doc/source/index.rst
doc/source/_static/css/.placeholder
doc/source/demo/configure_access_and_security_for_instances.rst
doc/source/demo/create_and_manage_databases.rst
doc/source/demo/create_and_manage_networks.rst
doc/source/demo/dashboard_demo.rst
doc/source/demo/index.rst
doc/source/demo/launch-instance.rst
doc/source/demo/section_dashboard_access_and_security.rst
doc/source/demo/figures/dashboard-project-tab.png
doc/source/demo/figures/dashboard_admin_project_tab.png
doc/source/demo/figures/doc-logo-fox.jpg
openstackdocstheme/__init__.py
openstackdocstheme/version.py
openstackdocstheme.egg-info/PKG-INFO
openstackdocstheme.egg-info/SOURCES.txt
openstackdocstheme.egg-info/dependency_links.txt
openstackdocstheme.egg-info/not-zip-safe
openstackdocstheme.egg-info/pbr.json
openstackdocstheme.egg-info/requires.txt
openstackdocstheme.egg-info/top_level.txt
openstackdocstheme/theme/openstackdocs/css.html
openstackdocstheme/theme/openstackdocs/footer.html
openstackdocstheme/theme/openstackdocs/header.html
openstackdocstheme/theme/openstackdocs/layout.html
openstackdocstheme/theme/openstackdocs/license_cc.html
openstackdocstheme/theme/openstackdocs/localtoc.html
openstackdocstheme/theme/openstackdocs/script_footer.html
openstackdocstheme/theme/openstackdocs/script_search.html
openstackdocstheme/theme/openstackdocs/search.html
openstackdocstheme/theme/openstackdocs/sidebartoc.html
openstackdocstheme/theme/openstackdocs/sidebartoc_menu.html
openstackdocstheme/theme/openstackdocs/sidebartoc_menu_apiref.html
openstackdocstheme/theme/openstackdocs/swiftype_search.html
openstackdocstheme/theme/openstackdocs/swiftype_search_install.html
openstackdocstheme/theme/openstackdocs/swiftype_search_mobile.html
openstackdocstheme/theme/openstackdocs/theme.conf
openstackdocstheme/theme/openstackdocs/titlerow.html
openstackdocstheme/theme/openstackdocs/static/favicon.ico
openstackdocstheme/theme/openstackdocs/static/css/bootstrap.css
openstackdocstheme/theme/openstackdocs/static/css/bootstrap.min.css
openstackdocstheme/theme/openstackdocs/static/css/combined.css
openstackdocstheme/theme/openstackdocs/static/css/font-awesome.css
openstackdocstheme/theme/openstackdocs/static/css/font-awesome.min.css
openstackdocstheme/theme/openstackdocs/static/css/native.css
openstackdocstheme/theme/openstackdocs/static/fonts/.gitkeep
openstackdocstheme/theme/openstackdocs/static/fonts/FontAwesome.otf
openstackdocstheme/theme/openstackdocs/static/fonts/fontawesome-webfont.eot
openstackdocstheme/theme/openstackdocs/static/fonts/fontawesome-webfont.svg
openstackdocstheme/theme/openstackdocs/static/fonts/fontawesome-webfont.ttf
openstackdocstheme/theme/openstackdocs/static/fonts/fontawesome-webfont.woff
openstackdocstheme/theme/openstackdocs/static/fonts/fontawesome-webfont.woff2
openstackdocstheme/theme/openstackdocs/static/fonts/glyphicons-halflings-regular.eot
openstackdocstheme/theme/openstackdocs/static/fonts/glyphicons-halflings-regular.svg
openstackdocstheme/theme/openstackdocs/static/fonts/glyphicons-halflings-regular.ttf
openstackdocstheme/theme/openstackdocs/static/fonts/glyphicons-halflings-regular.woff
openstackdocstheme/theme/openstackdocs/static/fonts/glyphicons-halflings-regular.woff2
openstackdocstheme/theme/openstackdocs/static/images/footer-facebook-hover.png
openstackdocstheme/theme/openstackdocs/static/images/footer-facebook.png
openstackdocstheme/theme/openstackdocs/static/images/footer-linkedin-hover.png
openstackdocstheme/theme/openstackdocs/static/images/footer-linkedin.png
openstackdocstheme/theme/openstackdocs/static/images/footer-twitter-hover.png
openstackdocstheme/theme/openstackdocs/static/images/footer-twitter.png
openstackdocstheme/theme/openstackdocs/static/images/footer-youtube-hover.png
openstackdocstheme/theme/openstackdocs/static/images/footer-youtube.png
openstackdocstheme/theme/openstackdocs/static/images/loading.gif
openstackdocstheme/theme/openstackdocs/static/images/openstack-logo-full.png
openstackdocstheme/theme/openstackdocs/static/images/openstack-logo-vert.png
openstackdocstheme/theme/openstackdocs/static/images/search-icon.png
openstackdocstheme/theme/openstackdocs/static/images/docs/license.png
openstackdocstheme/theme/openstackdocs/static/images/docs/superuser1.png
openstackdocstheme/theme/openstackdocs/static/images/docs/superuser2.png
openstackdocstheme/theme/openstackdocs/static/images/docs/superuser3.png
openstackdocstheme/theme/openstackdocs/static/images/docs/superuser4.png
openstackdocstheme/theme/openstackdocs/static/js/bootstrap.js
openstackdocstheme/theme/openstackdocs/static/js/bootstrap.min.js
openstackdocstheme/theme/openstackdocs/static/js/docs.js
openstackdocstheme/theme/openstackdocs/static/js/jquery-3.2.1.js
openstackdocstheme/theme/openstackdocs/static/js/jquery-3.2.1.min.js
openstackdocstheme/theme/openstackdocs/static/js/navigation.js
openstackdocstheme/theme/openstackdocs/static/js/webui-popover.js
openstackdocstheme/theme/openstackdocs_pdf/openstack-logo-full.png
openstackdocstheme/theme/openstackdocs_pdf/pdftheme.sty
releasenotes/notes/add-reno-8da9bd3ccb7bbeab.yaml
releasenotes/notes/allow-disabling-toc-in-body-d98d3a6e633fa28e.yaml
releasenotes/notes/bug-project-e9ff50f6149d2be1.yaml
releasenotes/notes/bug-title-fdbefea0408e2cbf.yaml
releasenotes/notes/bug_project-d26160cfe5324694.yaml
releasenotes/notes/custom-bug-link-ec64bdf9ce357d16.yaml
releasenotes/notes/disable_analytics-45d98d6fab71d2b1.yaml
releasenotes/notes/do-not-display-local-toc-title-without-subtitles-4e1fc48705d66289.yaml
releasenotes/notes/doc-bug-template-7234e7f00e0ff599.yaml
releasenotes/notes/double-backticks-not-red-5ce6dbc828221929.yaml
releasenotes/notes/local-project-search-e6f00a84f2eed0a6.yaml
releasenotes/notes/lp1516819-b4bb7b0f10004cef.yaml
releasenotes/notes/norelease-ccd7722c078a73a2.yaml
releasenotes/notes/side-bar-config-d7e66388e252cadf.yaml
releasenotes/notes/sidebar-top-page-link-252532ddf42a5acf.yaml
releasenotes/notes/sidebar_dropdown_apiref-993b4dba4c0369f6.yaml
releasenotes/notes/sidebarlinks-db0a8463f32ab95d.yaml
releasenotes/notes/storyboard-5f67da8941aec6ae.yaml
releasenotes/notes/strip-html-tags-from-navigation-titles-929c92a339413015.yaml
releasenotes/notes/version-dropdown-1aa39974f524dd75.yaml
releasenotes/source/conf.py
releasenotes/source/current.rst
releasenotes/source/historic.rst
releasenotes/source/index.rst
releasenotes/source/_static/.placeholder
releasenotes/source/_templates/.placeholderopenstackdocstheme-1.18.1/openstackdocstheme.egg-info/pbr.json0000664000175100017510000000005613227214133024543 0ustar  zuulzuul00000000000000{"git_version": "93f7174", "is_release": true}openstackdocstheme-1.18.1/openstackdocstheme.egg-info/dependency_links.txt0000664000175100017510000000000113227214133027132 0ustar  zuulzuul00000000000000
openstackdocstheme-1.18.1/openstackdocstheme.egg-info/not-zip-safe0000664000175100017510000000000113227214072025314 0ustar  zuulzuul00000000000000
openstackdocstheme-1.18.1/openstackdocstheme.egg-info/PKG-INFO0000664000175100017510000000375213227214133024170 0ustar  zuulzuul00000000000000Metadata-Version: 1.1
Name: openstackdocstheme
Version: 1.18.1
Summary: OpenStack Docs Theme
Home-page: https://docs.openstack.org/openstackdocstheme/latest/
Author: OpenStack
Author-email: openstack-dev@lists.openstack.org
License: UNKNOWN
Description-Content-Type: UNKNOWN
Description: ========================
        Team and repository tags
        ========================
        
        .. image:: https://governance.openstack.org/tc/badges/openstackdocstheme.svg
            :target: https://governance.openstack.org/tc/reference/tags/index.html
        
        .. Change things from this point on
        
        OpenStack docs.openstack.org Sphinx Theme
        =========================================
        
        Theme and extension support for Sphinx documentation that is published to
        docs.openstack.org and developer.openstack.org.
        
        Intended for use by OpenStack `projects governed by the Technical Committee`_.
        
        .. _`projects governed by the Technical Committee`: https://governance.openstack.org/tc/reference/projects/index.html
        
        * Free software: Apache License, Version 2.0
        * Documentation: https://docs.openstack.org/openstackdocstheme/latest/
        * Release notes: https://docs.openstack.org/releasenotes/openstackdocstheme/
        * Source: https://git.openstack.org/cgit/openstack/openstackdocstheme
        * Bugs: https://launchpad.net/openstack-doc-tools
        
        
Platform: UNKNOWN
Classifier: Environment :: OpenStack
Classifier: Intended Audience :: Information Technology
Classifier: Intended Audience :: System Administrators
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.5
Classifier: Topic :: Documentation
openstackdocstheme-1.18.1/openstackdocstheme.egg-info/top_level.txt0000664000175100017510000000002313227214133025611 0ustar  zuulzuul00000000000000openstackdocstheme
openstackdocstheme-1.18.1/AUTHORS0000664000175100017510000000361313227214133016562 0ustar  zuulzuul00000000000000Akihiro Motoki 
Akihiro Motoki 
Alexandra Settle 
Andreas Jaeger 
Andreas Jaeger 
Anne Gentle 
Anne Gentle 
Anne Gentle 
Bernd 
Bernd Bausch 
Brian Moss 
Christian Berendt 
Christian Berendt 
Cory Benfield 
Dave Walker (Daviey) 
Doug Hellmann 
Flavio Percoco 
Gauvain Pocentek 
Graham Hayes 
Hangdong Zhang 
Harshada Mangesh Kakad 
Ian Y. Choi 
James E. Blair 
Jesse Pretorius 
KATO Tomoyuki 
Karen Bradshaw 
Leif Madsen 
Luong Anh Tuan 
Major Hayden 
Nick Chase 
Ondřej Nový 
Peter Tran 
Petronio Carlos Bezerra 
Rob Cresswell 
Ruby Loo 
Ryan Selden 
Sean Dague 
Sean M. Collins 
Sebastian Marcet 
SeongSoo Cho 
Stephen Finucane 
Thomas Bechtold 
Tony Breeds 
Zuul 
blue55 
chenxing 
chenxing 
gecong1973 
johnsom 
shangxiaobj 
venkatamahesh 
zhangdebo1987 
openstackdocstheme-1.18.1/api-ref/0000775000175100017510000000000013227214134017033 5ustar  zuulzuul00000000000000openstackdocstheme-1.18.1/api-ref/source/0000775000175100017510000000000013227214134020333 5ustar  zuulzuul00000000000000openstackdocstheme-1.18.1/api-ref/source/conf.py0000666000175100017510000001257113227213640021643 0ustar  zuulzuul00000000000000# -*- coding: utf-8 -*-
#
# This file is execfile()d with the current directory set to its
# containing dir.
#
# Note that not all possible configuration values are present in this
# autogenerated file.
#
# All configuration values have a default; values that are commented out
# serve to show the default.

import sys
import os

# If extensions (or modules to document with autodoc) are in another directory,
# add these directories to sys.path here. If the directory is relative to the
# documentation root, use os.path.abspath to make it absolute, like shown here.
#sys.path.insert(0, os.path.abspath('.'))

# -- General configuration ------------------------------------------------

# If your documentation needs a minimal Sphinx version, state it here.
#needs_sphinx = '1.0'

# Add any Sphinx extension module names here, as strings. They can be
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
# ones.

extensions = [
    'os_api_ref',
    'openstackdocstheme'
]


# Add any paths that contain templates here, relative to this directory.
# templates_path = ['_templates']

# The suffix of source filenames.
source_suffix = '.rst'

# The encoding of source files.
#source_encoding = 'utf-8-sig'

# The master toctree document.
master_doc = 'index'

# "project" contains the name of the book, such as
# 'security guide' or 'network guide'
# It's used by the "log-a-bug" button on each page
# and should ultimately be set automatically by the build process
project = u'Test API Reference'
copyright = u'2016, OpenStack Contributors'

# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the
# built documents.
#
# "version" and "release" are used by the "log-a-bug" feature
#
# The short X.Y version.
version = '1.0'
# The full version, including alpha/beta/rc tags.
release = '1.0'

# A few variables have to be set for the log-a-bug feature.
bug_tag = "doc-builds"
bug_project = 'openstack-doc-tools'

# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
#language = None

# There are two options for replacing |today|: either, you set today to some
# non-false value, then it is used:
#today = ''
# Else, today_fmt is used as the format for a strftime call.
#today_fmt = '%B %d, %Y'

# List of patterns, relative to source directory, that match files and
# directories to ignore when looking for source files.
exclude_patterns = ['_build']

# The reST default role (used for this markup: `text`) to use for all
# documents.
#default_role = None

# If true, '()' will be appended to :func: etc. cross-reference text.
#add_function_parentheses = True

# If true, the current module name will be prepended to all description
# unit titles (such as .. function::).
#add_module_names = True

# If true, sectionauthor and moduleauthor directives will be shown in the
# output. They are ignored by default.
#show_authors = False

# The name of the Pygments (syntax highlighting) style to use.
pygments_style = 'sphinx'

# A list of ignored prefixes for module index sorting.
#modindex_common_prefix = []

# If true, keep warnings as "system message" paragraphs in the built documents.
#keep_warnings = False


# -- Options for HTML output ----------------------------------------------

# The theme to use for HTML and HTML Help pages.  See the documentation for
# a list of builtin themes.
html_theme = 'openstackdocs'

# Theme options are theme-specific and customize the look and feel of a theme
# further.  For a list of options available for each theme, see the
# documentation.

# To use the API Reference sidebar dropdown menu,
# uncomment the html_theme_options parameter.  The theme
# variable, sidebar_dropdown, should be set to `api_ref`.
# Otherwise, the list of links for the User and Ops docs
# appear in the sidebar dropdown menu.
html_theme_options = {"sidebar_dropdown": "api_ref",
                      "sidebar_mode": "toc"}

# Add any paths that contain custom themes here, relative to this directory.
# html_theme_path = []

# The name for this set of Sphinx documents.  If None, it defaults to
# " v documentation".
#html_title = None

# A shorter title for the navigation bar.  Default is the same as html_title.
#html_short_title = None

# The name of an image file (relative to this directory) to place at the top
# of the sidebar.
#html_logo = None

# The name of an image file (within the static path) to use as favicon of the
# docs.  This file should be a Windows icon file (.ico) being 16x16 or 32x32
# pixels large.
#html_favicon = None

# Add any paths that contain custom static files (such as style sheets) here,
# relative to this directory. They are copied after the builtin static files,
# so a file named "default.css" will overwrite the builtin "default.css".
# html_static_path = ['_static/css']

# Add any extra paths that contain custom files (such as robots.txt or
# .htaccess) here, relative to this directory. These files are copied
# directly to the root of the documentation.
#html_extra_path = []

# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
# using the given strftime format.
#html_last_updated_fmt = '%b %d, %Y'

# So that we can enable "log-a-bug" links from each output HTML page, this
# variable must be set to a format that includes year, month, day, hours and
# minutes.
html_last_updated_fmt = '%Y-%m-%d %H:%M'
openstackdocstheme-1.18.1/api-ref/source/update-server-resp.json0000666000175100017510000000006413227213640024766 0ustar  zuulzuul00000000000000{
    "server": {
        "name": "server1"
    }
}
openstackdocstheme-1.18.1/api-ref/source/parameters.yaml0000666000175100017510000000121713227213640023366 0ustar  zuulzuul00000000000000id:
  in: path
  required: true
  type: string
  description: |
    The id of the service.
image_id:
  in: path
  required: true
  type: string
  description: |
    The id for the image.
host:
  in: body
  required: true
  type: string
  description: |
    The host name.
name:
  in: body
  required: true
  type: string
  description: |
    The name of the service.
role_id:
  in: body
  required: true
  type: string
  description: |
    The unique identifier for the role, which enables defining role assignments
    for multiple users in multiple projects.
server.obj:
  in: body
  required: true
  type: object
  description: |
    The server object.openstackdocstheme-1.18.1/api-ref/source/service.inc0000666000175100017510000000607413227213640022500 0ustar  zuulzuul00000000000000.. -*- rst -*-

=========
 Service
=========

**Introductory Concepts**

When you create a server, you can specify a password through the
optional adminPass attribute. The password must meet the complexity
requirements set by your OpenStack Compute provider. The server might
enter an ``ERROR`` state if the complexity requirements are not met. In
this case, a client might issue a change password action to reset the
server password.

If you do not specify a password, the API generates and assigns a random
password that it returns in the response object. This password meets the
security requirements set by the compute provider. For security reasons,
subsequent GET calls do not require this password.

Follow these guidelines when you inject files:

-  The maximum size of the file path data is 255 bytes.

-  Encode the file contents as a Base64 string. The compute provider
   determines the maximum size of the file contents. The image that you
   use to create the server determines this value.

   .. note::

       The maximum limit refers to the number of bytes in the decoded
       data and not to the number of characters in the encoded data.

-  The ``maxPersonality`` absolute limit defines the maximum number of
   file path and content pairs that you can supply. The compute provider
   determines this value.

-  The ``maxPersonalitySize`` absolute limit is a byte limit that
   applies to all images in the deployment. Providers can set additional
   per-image personality limits.

The file injection might not occur until after the server builds and
boots.

After file injection, only system administrators can access personality
files. For example, on Linux, all files have root as the owner and the
root group as the group owner, and allow only user and group read access
(``chmod 440``).


List the Servers
================

.. rest_method:: GET /v3/servers/{role_id}/role

Short explanation about this GET method.

HTTP Status codes
-----------------

.. rest_status_code:: success status.yaml

   - 200
   - 201

.. rest_status_code:: error status.yaml

   - 400
   - 500

Response
--------

.. rest_parameters:: parameters.yaml

   - host: host
   - name: name
   - role_id: role_id


Copy the Server
===============

.. rest_method:: COPY /v3/servers/{role_id}

Short explanation about this COPY method.


Response
--------

.. rest_parameters:: parameters.yaml

   - host: host
   - name: name
   - role_id: role_id


Change or Update the Servers
============================

.. rest_method:: PUT /servers

Explantory text about this PUT method.

List of information:

- Item 1
- Item 2
- Item 3


Request
-------

.. rest_parameters:: parameters.yaml

   - name: name

Response
--------

.. rest_parameters:: parameters.yaml

   - server: server.obj
   - name: name

**Example List Servers:**

.. literalinclude:: update-server-resp.json
   :language: javascript


Delete a Server
===============

.. rest_method:: DELETE /servers/{id}

Explain what the DELETE method does here.


Request
-------

.. rest_parameters:: parameters.yaml

   - id: id

Response
--------

No content in body of response.
openstackdocstheme-1.18.1/api-ref/source/image.inc0000666000175100017510000000452013227213640022114 0ustar  zuulzuul00000000000000.. -*- rst -*-

=======
 Image
=======

**Introductory Concepts**

When you create a server, you can specify a password through the
optional adminPass attribute. The password must meet the complexity
requirements set by your OpenStack Compute provider. The server might
enter an ``ERROR`` state if the complexity requirements are not met. In
this case, a client might issue a change password action to reset the
server password.

List the Images
===============

.. rest_method:: GET /v3/images/{role_id}/role/{id}/role/{image_id}

Short explanation about this GET method.

HTTP Status codes
-----------------

.. rest_status_code:: success status.yaml

   - 200
   - 201

.. rest_status_code:: error status.yaml

   - 400
   - 500

Response
--------

.. rest_parameters:: parameters.yaml

   - host: host
   - id: id
   - image_id: image_id
   - name: name
   - role_id: role_id

Create an Image
===============

.. rest_method:: POST /images

Explantory text about this POST method.

List of information:

- Item 1
- Item 2
- Item 3


Request
-------

.. rest_parameters:: parameters.yaml

   - name: name

Response
--------

.. rest_parameters:: parameters.yaml

   - server: server.obj
   - name: name

**Example List Servers:**

.. literalinclude:: update-server-resp.json
   :language: javascript


Change or Update the Images
===========================

.. rest_method:: PATCH /servers

Explantory text about this PATCH method.

List of information:

- Item 1
- Item 2
- Item 3


Request
-------

.. rest_parameters:: parameters.yaml

   - name: name

Response
--------

.. rest_parameters:: parameters.yaml

   - server: server.obj
   - name: name

**Example List Servers:**

.. literalinclude:: update-server-resp.json
   :language: javascript


Change or Update the Images
===========================

.. rest_method:: PUT /images

Explantory text about this PUT method.

Request
-------

.. rest_parameters:: parameters.yaml

   - name: name

Response
--------

.. rest_parameters:: parameters.yaml

   - server: server.obj
   - name: name

**Example List Servers:**

.. literalinclude:: update-server-resp.json
   :language: javascript


Delete an Image
===============

.. rest_method:: DELETE /image/{id}

Explain what the DELETE method does here.


Request
-------

.. rest_parameters:: parameters.yaml

   - id: id

Response
--------

No content in body of response.
openstackdocstheme-1.18.1/api-ref/source/_static/0000775000175100017510000000000013227214134021761 5ustar  zuulzuul00000000000000openstackdocstheme-1.18.1/api-ref/source/_static/css/0000775000175100017510000000000013227214134022551 5ustar  zuulzuul00000000000000openstackdocstheme-1.18.1/api-ref/source/_static/css/README.md0000666000175100017510000000024013227213640024027 0ustar  zuulzuul00000000000000openstackdocstheme-1.18.1/api-ref/source/status.yaml0000666000175100017510000000056213227213640022550 0ustar  zuulzuul00000000000000200:
  default: |
    Request was successful.
201:
  default: |
    Resource was created and is ready to use.
400:
  default: |
    Some content in the request was invalid
  another_400_error: |
    Sample message for 400 error response.
401:
  default: |
    User must authenticate before making a request
500:
  default: |
    Something went wrong inside the service.
openstackdocstheme-1.18.1/api-ref/source/index.rst0000666000175100017510000000012413227213640022174 0ustar  zuulzuul00000000000000:tocdepth: 2

.. rest_expand_all::

.. include:: service.inc
.. include:: image.inc
openstackdocstheme-1.18.1/PKG-INFO0000664000175100017510000000375213227214134016614 0ustar  zuulzuul00000000000000Metadata-Version: 1.1
Name: openstackdocstheme
Version: 1.18.1
Summary: OpenStack Docs Theme
Home-page: https://docs.openstack.org/openstackdocstheme/latest/
Author: OpenStack
Author-email: openstack-dev@lists.openstack.org
License: UNKNOWN
Description-Content-Type: UNKNOWN
Description: ========================
        Team and repository tags
        ========================
        
        .. image:: https://governance.openstack.org/tc/badges/openstackdocstheme.svg
            :target: https://governance.openstack.org/tc/reference/tags/index.html
        
        .. Change things from this point on
        
        OpenStack docs.openstack.org Sphinx Theme
        =========================================
        
        Theme and extension support for Sphinx documentation that is published to
        docs.openstack.org and developer.openstack.org.
        
        Intended for use by OpenStack `projects governed by the Technical Committee`_.
        
        .. _`projects governed by the Technical Committee`: https://governance.openstack.org/tc/reference/projects/index.html
        
        * Free software: Apache License, Version 2.0
        * Documentation: https://docs.openstack.org/openstackdocstheme/latest/
        * Release notes: https://docs.openstack.org/releasenotes/openstackdocstheme/
        * Source: https://git.openstack.org/cgit/openstack/openstackdocstheme
        * Bugs: https://launchpad.net/openstack-doc-tools
        
        
Platform: UNKNOWN
Classifier: Environment :: OpenStack
Classifier: Intended Audience :: Information Technology
Classifier: Intended Audience :: System Administrators
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.5
Classifier: Topic :: Documentation
openstackdocstheme-1.18.1/.zuul.yaml0000666000175100017510000000051113227213640017451 0ustar  zuulzuul00000000000000
# parent job is defined in openstack-manuals
- job:
    name: build-tox-manuals-buildpdf
    parent: build-tox-manuals
    vars:
      tox_envlist: buildpdf


- project:
    name: openstack/openstackdocstheme
    check:
      jobs:
        - build-tox-manuals-buildpdf
    gate:
      jobs:
        - build-tox-manuals-buildpdf
openstackdocstheme-1.18.1/Makefile0000666000175100017510000001517613227213640017165 0ustar  zuulzuul00000000000000# Makefile for Sphinx documentation
#

# You can set these variables from the command line.
SPHINXOPTS    =
SPHINXBUILD   = sphinx-build
PAPER         =
BUILDDIR      = _build

# User-friendly check for sphinx-build
ifeq ($(shell which $(SPHINXBUILD) >/dev/null 2>&1; echo $$?), 1)
$(error The '$(SPHINXBUILD)' command was not found. Make sure you have Sphinx installed, then set the SPHINXBUILD environment variable to point to the full path of the '$(SPHINXBUILD)' executable. Alternatively you can add the directory with the executable to your PATH. If you don't have Sphinx installed, grab it from http://sphinx-doc.org/)
endif

# Internal variables.
PAPEROPT_a4     = -D latex_paper_size=a4
PAPEROPT_letter = -D latex_paper_size=letter
ALLSPHINXOPTS   = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
# the i18n builder cannot share the environment and doctrees with the others
I18NSPHINXOPTS  = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .

.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext

help:
	@echo "Please use \`make ' where  is one of"
	@echo "  html       to make standalone HTML files"
	@echo "  dirhtml    to make HTML files named index.html in directories"
	@echo "  singlehtml to make a single large HTML file"
	@echo "  pickle     to make pickle files"
	@echo "  json       to make JSON files"
	@echo "  htmlhelp   to make HTML files and a HTML help project"
	@echo "  qthelp     to make HTML files and a qthelp project"
	@echo "  devhelp    to make HTML files and a Devhelp project"
	@echo "  epub       to make an epub"
	@echo "  latex      to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
	@echo "  latexpdf   to make LaTeX files and run them through pdflatex"
	@echo "  latexpdfja to make LaTeX files and run them through platex/dvipdfmx"
	@echo "  text       to make text files"
	@echo "  man        to make manual pages"
	@echo "  texinfo    to make Texinfo files"
	@echo "  info       to make Texinfo files and run them through makeinfo"
	@echo "  gettext    to make PO message catalogs"
	@echo "  changes    to make an overview of all changed/added/deprecated items"
	@echo "  xml        to make Docutils-native XML files"
	@echo "  pseudoxml  to make pseudoxml-XML files for display purposes"
	@echo "  linkcheck  to check all external links for integrity"
	@echo "  doctest    to run all doctests embedded in the documentation (if enabled)"

clean:
	rm -rf $(BUILDDIR)/*

html:
	$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
	@echo
	@echo "Build finished. The HTML pages are in $(BUILDDIR)/html."

dirhtml:
	$(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
	@echo
	@echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."

singlehtml:
	$(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml
	@echo
	@echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml."

pickle:
	$(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle
	@echo
	@echo "Build finished; now you can process the pickle files."

json:
	$(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json
	@echo
	@echo "Build finished; now you can process the JSON files."

htmlhelp:
	$(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp
	@echo
	@echo "Build finished; now you can run HTML Help Workshop with the" \
	      ".hhp project file in $(BUILDDIR)/htmlhelp."

qthelp:
	$(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp
	@echo
	@echo "Build finished; now you can run "qcollectiongenerator" with the" \
	      ".qhcp project file in $(BUILDDIR)/qthelp, like this:"
	@echo "# qcollectiongenerator $(BUILDDIR)/qthelp/os-doc-demo.qhcp"
	@echo "To view the help file:"
	@echo "# assistant -collectionFile $(BUILDDIR)/qthelp/os-doc-demo.qhc"

devhelp:
	$(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp
	@echo
	@echo "Build finished."
	@echo "To view the help file:"
	@echo "# mkdir -p $$HOME/.local/share/devhelp/os-doc-demo"
	@echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/os-doc-demo"
	@echo "# devhelp"

epub:
	$(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub
	@echo
	@echo "Build finished. The epub file is in $(BUILDDIR)/epub."

latex:
	$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
	@echo
	@echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex."
	@echo "Run \`make' in that directory to run these through (pdf)latex" \
	      "(use \`make latexpdf' here to do that automatically)."

latexpdf:
	$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
	@echo "Running LaTeX files through pdflatex..."
	$(MAKE) -C $(BUILDDIR)/latex all-pdf
	@echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."

latexpdfja:
	$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
	@echo "Running LaTeX files through platex and dvipdfmx..."
	$(MAKE) -C $(BUILDDIR)/latex all-pdf-ja
	@echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."

text:
	$(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text
	@echo
	@echo "Build finished. The text files are in $(BUILDDIR)/text."

man:
	$(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man
	@echo
	@echo "Build finished. The manual pages are in $(BUILDDIR)/man."

texinfo:
	$(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
	@echo
	@echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo."
	@echo "Run \`make' in that directory to run these through makeinfo" \
	      "(use \`make info' here to do that automatically)."

info:
	$(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
	@echo "Running Texinfo files through makeinfo..."
	make -C $(BUILDDIR)/texinfo info
	@echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo."

gettext:
	$(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale
	@echo
	@echo "Build finished. The message catalogs are in $(BUILDDIR)/locale."

changes:
	$(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes
	@echo
	@echo "The overview file is in $(BUILDDIR)/changes."

linkcheck:
	$(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck
	@echo
	@echo "Link check complete; look for any errors in the above output " \
	      "or in $(BUILDDIR)/linkcheck/output.txt."

doctest:
	$(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest
	@echo "Testing of doctests in the sources finished, look at the " \
	      "results in $(BUILDDIR)/doctest/output.txt."

xml:
	$(SPHINXBUILD) -b xml $(ALLSPHINXOPTS) $(BUILDDIR)/xml
	@echo
	@echo "Build finished. The XML files are in $(BUILDDIR)/xml."

pseudoxml:
	$(SPHINXBUILD) -b pseudoxml $(ALLSPHINXOPTS) $(BUILDDIR)/pseudoxml
	@echo
	@echo "Build finished. The pseudo-XML files are in $(BUILDDIR)/pseudoxml."
openstackdocstheme-1.18.1/tox.ini0000666000175100017510000000404013227213640017024 0ustar  zuulzuul00000000000000[tox]
minversion = 2.0
envlist = pep8

[testenv]
usedevelop = False
install_command = pip install {opts} {packages}
deps =
    -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt}
    -r{toxinidir}/test-requirements.txt
    -r{toxinidir}/requirements.txt
    -r{toxinidir}/doc/requirements.txt
sitepackages = False
whitelist_externals =
  rm
  make

[testenv:pep8]
commands =
    flake8 openstackdocstheme

[testenv:venv]
commands = {posargs}

[testenv:docs]
commands =
  rm -rf doc/build api-ref/build
  python setup.py build_sphinx
  sphinx-build -a -E -W -d doc/build/doctrees -b latex doc/source doc/build/pdf
  make -C doc/build/pdf
  sphinx-build -a -E -W -d api-ref/build/doctrees -b html api-ref/source api-ref/build/html

[testenv:html]
commands =
  rm -rf doc/build api-ref/build
  python setup.py build_sphinx
  sphinx-build -a -E -W -d api-ref/build/doctrees -b html api-ref/source api-ref/build/html

[testenv:releasenotes]
commands =
  rm -rf releasenotes/build
  sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html

[testenv:api-ref]
commands =
  rm -rf api-ref/build
  sphinx-build -a -E -W -d api-ref/build/doctrees -b html api-ref/source api-ref/build/html


[testenv:buildpdf]
# Only build PDF and push it to publish-docs folder so that OpenStack
# CI jobs will publish it.
whitelist_externals =
  make
  cp
  mkdir
commands =
  sphinx-build -a -E -W -d doc/build/doctrees -b latex doc/source doc/build/pdf
  make -C doc/build/pdf
  mkdir -p publish-docs
  cp doc/build/pdf/os-doc-demo.pdf publish-docs

[testenv:bindep]
# Do not install any requirements. We want this to be fast and work even if
# system dependencies are missing, since it's used to tell you what system
# dependencies are missing! This also means that bindep must be installed
# separately, outside of the requirements files.
deps = bindep
commands = bindep test

[flake8]
exclude=.venv,.git,.tox,dist,doc,*lib/python*,*egg,tools
show-source = True
enable-extensions = H203,H106
openstackdocstheme-1.18.1/releasenotes/0000775000175100017510000000000013227214134020201 5ustar  zuulzuul00000000000000openstackdocstheme-1.18.1/releasenotes/source/0000775000175100017510000000000013227214134021501 5ustar  zuulzuul00000000000000openstackdocstheme-1.18.1/releasenotes/source/conf.py0000666000175100017510000002137113227213640023007 0ustar  zuulzuul00000000000000# -*- coding: utf-8 -*-
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#    http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
# implied.
# See the License for the specific language governing permissions and
# limitations under the License.

# This file is execfile()d with the current directory set to its
# containing dir.
#
# Note that not all possible configuration values are present in this
# autogenerated file.
#
# All configuration values have a default; values that are commented out
# serve to show the default.

# If extensions (or modules to document with autodoc) are in another directory,
# add these directories to sys.path here. If the directory is relative to the
# documentation root, use os.path.abspath to make it absolute, like shown here.
# sys.path.insert(0, os.path.abspath('.'))

# -- General configuration ------------------------------------------------

# If your documentation needs a minimal Sphinx version, state it here.
# needs_sphinx = '1.0'

# Add any Sphinx extension module names here, as strings. They can be
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
# ones.
extensions = [
    'reno.sphinxext',
    'openstackdocstheme',
]

# Add any paths that contain templates here, relative to this directory.
# templates_path = ['_templates']

# The suffix of source filenames.
source_suffix = '.rst'

# The encoding of source files.
# source_encoding = 'utf-8-sig'

# The master toctree document.
master_doc = 'index'

# General information about the project.
project = u'OpenStackdocstheme Release Notes'
copyright = u'2017, OpenStack Documentation team'

# Release notes are version independent.
# The full version, including alpha/beta/rc tags.
release = ''
# The short X.Y version.
version = ''

# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
# language = None

# There are two options for replacing |today|: either, you set today to some
# non-false value, then it is used:
# today = ''
# Else, today_fmt is used as the format for a strftime call.
# today_fmt = '%B %d, %Y'

# List of patterns, relative to source directory, that match files and
# directories to ignore when looking for source files.
exclude_patterns = []

# The reST default role (used for this markup: `text`) to use for all
# documents.
# default_role = None

# If true, '()' will be appended to :func: etc. cross-reference text.
# add_function_parentheses = True

# If true, the current module name will be prepended to all description
# unit titles (such as .. function::).
# add_module_names = True

# If true, sectionauthor and moduleauthor directives will be shown in the
# output. They are ignored by default.
# show_authors = False

# The name of the Pygments (syntax highlighting) style to use.
pygments_style = 'sphinx'

# A list of ignored prefixes for module index sorting.
# modindex_common_prefix = []

# If true, keep warnings as "system message" paragraphs in the built documents.
# keep_warnings = False


# -- Options for HTML output ----------------------------------------------

# The theme to use for HTML and HTML Help pages.  See the documentation for
# a list of builtin themes.
html_theme = 'openstackdocs'

# Theme options are theme-specific and customize the look and feel of a theme
# further.  For a list of options available for each theme, see the
# documentation.
# html_theme_options = {}

# Add any paths that contain custom themes here, relative to this directory.
# html_theme_path = []

# The name for this set of Sphinx documents.  If None, it defaults to
# " v documentation".
# html_title = None

# A shorter title for the navigation bar.  Default is the same as html_title.
# html_short_title = None

# The name of an image file (relative to this directory) to place at the top
# of the sidebar.
# html_logo = None

# The name of an image file (within the static path) to use as favicon of the
# docs.  This file should be a Windows icon file (.ico) being 16x16 or 32x32
# pixels large.
# html_favicon = None

# Add any paths that contain custom static files (such as style sheets) here,
# relative to this directory. They are copied after the builtin static files,
# so a file named "default.css" will overwrite the builtin "default.css".
html_static_path = ['_static']

# Add any extra paths that contain custom files (such as robots.txt or
# .htaccess) here, relative to this directory. These files are copied
# directly to the root of the documentation.
# html_extra_path = []

# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
# using the given strftime format.
# html_last_updated_fmt = '%b %d, %Y'
html_last_updated_fmt = '%Y-%m-%d %H:%M'

# If true, SmartyPants will be used to convert quotes and dashes to
# typographically correct entities.
# html_use_smartypants = True

# Custom sidebar templates, maps document names to template names.
# html_sidebars = {}

# Additional templates that should be rendered to pages, maps page names to
# template names.
# html_additional_pages = {}

# If false, no module index is generated.
# html_domain_indices = True

# If false, no index is generated.
# html_use_index = True

# If true, the index is split into individual pages for each letter.
# html_split_index = False

# If true, links to the reST sources are added to the pages.
# html_show_sourcelink = True

# If true, "Created using Sphinx" is shown in the HTML footer. Default is True.
# html_show_sphinx = True

# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True.
# html_show_copyright = True

# If true, an OpenSearch description file will be output, and all pages will
# contain a  tag referring to it.  The value of this option must be the
# base URL from which the finished HTML is served.
# html_use_opensearch = ''

# This is the file name suffix for HTML files (e.g. ".xhtml").
# html_file_suffix = None

# Output file base name for HTML help builder.
htmlhelp_basename = 'OpenStackDocsThemeReleaseNotesdoc'


# -- Options for LaTeX output ---------------------------------------------

latex_elements = {
    # The paper size ('letterpaper' or 'a4paper').
    # 'papersize': 'letterpaper',

    # The font size ('10pt', '11pt' or '12pt').
    # 'pointsize': '10pt',

    # Additional stuff for the LaTeX preamble.
    # 'preamble': '',
}

# Grouping the document tree into LaTeX files. List of tuples
# (source start file, target name, title,
#  author, documentclass [howto, manual, or own class]).
latex_documents = [
    ('index', 'OpenStackdocstheme-ReleaseNotes.tex',
     u'OpenStackdocstheme Release Notes Documentation',
     u'Documentation Team', 'manual'),
]

# The name of an image file (relative to this directory) to place at the top of
# the title page.
# latex_logo = None

# For "manual" documents, if this is true, then toplevel headings are parts,
# not chapters.
# latex_use_parts = False

# If true, show page references after internal links.
# latex_show_pagerefs = False

# If true, show URL addresses after external links.
# latex_show_urls = False

# Documents to append as an appendix to all manuals.
# latex_appendices = []

# If false, no module index is generated.
# latex_domain_indices = True


# -- Options for manual page output ---------------------------------------

# One entry per manual page. List of tuples
# (source start file, name, description, authors, manual section).
man_pages = [
    ('index', 'openstackdocstheme-releasenotes',
     u'OpenStackdocstheme Release Notes Documentation',
     [u'Documentation team'], 1)
]

# If true, show URL addresses after external links.
# man_show_urls = False


# -- Options for Texinfo output -------------------------------------------

# Grouping the document tree into Texinfo files. List of tuples
# (source start file, target name, title, author,
#  dir menu entry, description, category)
texinfo_documents = [
    ('index', 'OpenStackDocsTheme-ReleaseNotes',
     u'OpenStackDocsTheme Release Notes Documentation',
     u'Documentation Team', 'OpenStackDocsTheme-ReleaseNotes',
     'One line description of project.',
     'Miscellaneous'),
]

# Documents to append as an appendix to all manuals.
# texinfo_appendices = []

# If false, no module index is generated.
# texinfo_domain_indices = True

# How to display URL addresses: 'footnote', 'no', or 'inline'.
# texinfo_show_urls = 'footnote'

# If true, do not generate a @detailmenu in the "Top" node's menu.
# texinfo_no_detailmenu = False

# -- Options for Internationalization output ------------------------------
locale_dirs = ['locale/']
openstackdocstheme-1.18.1/releasenotes/source/_static/0000775000175100017510000000000013227214134023127 5ustar  zuulzuul00000000000000openstackdocstheme-1.18.1/releasenotes/source/_static/.placeholder0000666000175100017510000000000013227213640025403 0ustar  zuulzuul00000000000000openstackdocstheme-1.18.1/releasenotes/source/historic.rst0000666000175100017510000000624713227213640024073 0ustar  zuulzuul00000000000000================================
Release Notes for older versions
================================

These are release notes for version up to 1.2.4. With 1.2.5, the
handling of release notes has changed.

1.2.4
-----

* Add links for Liberty.
* Fix the broken anchor tags.
* Remove unused files.
* Fix table padding.
  https://bugs.launchpad.net/bugs/1439918

1.2.3
-----

* Add padding to the left table of contents
* Decrease the indent of TOC entries on the 2nd level
* Fix broken links for firstapp and other repos.
  https://bugs.launchpad.net/bugs/1461185
* Remove executable flags from js/css files
* Set the width of the highlight table to 100%

1.2.2
-----

* Cleanup of HTML template files and CSS files
* Fix link to the OpenStack summit
* Fix links/texts in the license footer
* Link the Apache 2.0 license note in the footer
* Move listed guides in the sidebar into the dropdown menu
* On hover don't change the background color of the sidebar TOC
* Remove 'suggest edits' link from layout
* Remove duplicate ask.openstack.org link from the footer
* Remove last release details from header/footer
* Remove the 'Sign in' link in the top bar

1.2.1
-----

* Fix inclusion of metatags.
* Remove unused images and javascript files.
* Fix "Docs Home" link.

1.2.0
-----

* Add next/previous buttons and report a bug link also at bottom of
  the page.
* Add dynamic table of content to sidebar.
  https://bugs.launchpad.net/openstack-manuals/+bug/1422454
* Fixed Korean typo on sidebartoc.
  https://bugs.launchpad.net/openstack-manuals/+bug/1474452
* Add loweralpha list-style for enumerated lists.
  https://bugs.launchpad.net/openstack-manuals/+bug/1476084

1.1.0
-----

* Make indentation on glossary definitions.
* Adds original CSS/JS files to repository.
* Improve navigation links.

1.0.8
-----

* Enhancement to "Report a bug" link by adding URL to current page reported
  from.

1.0.7
-----

* Adds "Report a bug" link with pre-filled information for Launchpad:
  https://bugs.launchpad.net/openstack-manuals/+bug/1421799

1.0.6
-----

* Adds CSS styling for code using "native" pygments style.
* Bug fix for Table of Contents links:
  https://bugs.launchpad.net/openstack-manuals/+bug/1422454

1.0.5
-----

* Bug fix for license text, CC-by rather than CC-by-sa:
  https://bugs.launchpad.net/openstack-manuals/+bug/1436515
* Adds next and previous links on every page:
  https://bugs.launchpad.net/openstack-manuals/+bug/1423064
* Adds Google Custom Search Engine rather than generic search form.
  https://bugs.launchpad.net/openstack-manuals/+bug/1431024

1.0.4
-----

* Bug fix for admonitions styling:
  https://bugs.launchpad.net/openstack-manuals/+bug/1416572
* Bug fix for a plus sign appearing when numbered list followed by bulleted
  list:
  https://bugs.launchpad.net/openstack-manuals/+bug/1417291

1.0.3
-----

Release was built from incorrect branch; revise again to fix line numbers.

1.0.2
-----

* Bug fix for added line number for code samples by removing function from
  docs.js and using Sphinx ``:linenos:`` markup instead:
  https://bugs.launchpad.net/openstack-manuals/+bug/1416570

1.0.1
-----

* Updated to ensure the app configuration works with global OpenStack

1.0.0
-----

* Initial release
openstackdocstheme-1.18.1/releasenotes/source/index.rst0000666000175100017510000000024213227213640023343 0ustar  zuulzuul00000000000000===================================
 OpenStack Docs Theme Release Notes
===================================

.. toctree::
   :maxdepth: 1

   current
   historic
openstackdocstheme-1.18.1/releasenotes/source/_templates/0000775000175100017510000000000013227214134023636 5ustar  zuulzuul00000000000000openstackdocstheme-1.18.1/releasenotes/source/_templates/.placeholder0000666000175100017510000000000013227213640026112 0ustar  zuulzuul00000000000000openstackdocstheme-1.18.1/releasenotes/source/current.rst0000666000175100017510000000005413227213640023717 0ustar  zuulzuul00000000000000=======
Changes
=======

.. release-notes::
openstackdocstheme-1.18.1/releasenotes/notes/0000775000175100017510000000000013227214134021331 5ustar  zuulzuul00000000000000openstackdocstheme-1.18.1/releasenotes/notes/disable_analytics-45d98d6fab71d2b1.yaml0000666000175100017510000000025713227213640030175 0ustar  zuulzuul00000000000000---
features:
  - Google Analytics tracking may now be controlled by
    setting the ``analytics_tracking_code`` option, or
    removed entirely by leaving that option blank.
././@LongLink0000000000000000000000000000016400000000000011216 Lustar  00000000000000openstackdocstheme-1.18.1/releasenotes/notes/do-not-display-local-toc-title-without-subtitles-4e1fc48705d66289.yamlopenstackdocstheme-1.18.1/releasenotes/notes/do-not-display-local-toc-title-without-subtitles-4e1fc40000666000175100017510000000016613227213640033620 0ustar  zuulzuul00000000000000---
fixes:
  - |
    The title "Contents" of the page local TOC is now displayed
    only when a page has sub-titles.
openstackdocstheme-1.18.1/releasenotes/notes/lp1516819-b4bb7b0f10004cef.yaml0000666000175100017510000000015413227213640025743 0ustar  zuulzuul00000000000000---
fixes:
  - Add Google Analytics JavaScript tracking snippet code to resolve
    Launchpad bug #1516819.
openstackdocstheme-1.18.1/releasenotes/notes/bug_project-d26160cfe5324694.yaml0000666000175100017510000000014513227213640026602 0ustar  zuulzuul00000000000000---
fixes:
  - If ``bug_project`` is not set, the "Report a bug" links are not
    displayed at all.
openstackdocstheme-1.18.1/releasenotes/notes/sidebar_dropdown_apiref-993b4dba4c0369f6.yaml0000666000175100017510000000135213227213640031320 0ustar  zuulzuul00000000000000---
prelude: >
    Adds a theme variable, ``sidebar_dropdown`` to configure
    the display of the new API sidebar dropdown menu.
features:
  - |
    Adds the option to configure the display of a sidebar dropdown
    menu for published API References and Guides.
    In conf.py, set the theme variable, ``html_theme_options`` to
    include the parameter, ``sidebar_dropdown`` as ``api_ref``. For
    example:

    ::

      html_theme_options = {
           "sidebar_dropdown": "api_ref",
        }

    The extensions parameter should include the sphinx extension,
    ``os_api_ref``.

    ::

      extensions = [
          'os_api_ref',
      ]

  - Publishes an API Reference demo which is integrated with the
    API sidebar dropdown menu.
openstackdocstheme-1.18.1/releasenotes/notes/add-reno-8da9bd3ccb7bbeab.yaml0000666000175100017510000000006513227213640026561 0ustar  zuulzuul00000000000000---
other:
  - Use reno for release note management.
openstackdocstheme-1.18.1/releasenotes/notes/doc-bug-template-7234e7f00e0ff599.yaml0000666000175100017510000000041513227213640027520 0ustar  zuulzuul00000000000000---
features:
  - Adds additional information to the doc bug template
    used on Launchpad when a reader clicks the doc bug
    icon to report a bug.
other:
  - Implemented intially to guide people to better ways
    to get end-user support rather than log a doc bug.
openstackdocstheme-1.18.1/releasenotes/notes/sidebar-top-page-link-252532ddf42a5acf.yaml0000666000175100017510000000030413227213640030557 0ustar  zuulzuul00000000000000---
features:
  - Contents in the sidebar TOC is now a link to a top page of a document
    which contains a toc of the document. Now readers can easily move back
    to a full toc of a document.
openstackdocstheme-1.18.1/releasenotes/notes/side-bar-config-d7e66388e252cadf.yaml0000666000175100017510000000055513227213640027466 0ustar  zuulzuul00000000000000---
features:
  - |
    The sidebar Table of Contents can now be set to the full ``toc`` directive,
    or remain as the ``toctree`` directive.

    This can be set by setting ``"sidebar_mode"`` to ``"toc"`` in the
    ``html_theme_options`` option in ``conf.py``.

    For example:

    ::

      html_theme_options = {
           "sidebar_mode": "toc",
        }
openstackdocstheme-1.18.1/releasenotes/notes/bug-project-e9ff50f6149d2be1.yaml0000666000175100017510000000031213227213640026741 0ustar  zuulzuul00000000000000---
features:
  - Some teams use openstackdocstheme which have each launchpad project.
    To report a bug to the appropriate project directly,
    enable each project to define the bug report project.
openstackdocstheme-1.18.1/releasenotes/notes/custom-bug-link-ec64bdf9ce357d16.yaml0000666000175100017510000000132013227213640027622 0ustar  zuulzuul00000000000000---
prelude: >
    In preparation for releasing updated API reference
    documentation using this theme, we have a collection
    of new features and fixes.
features:
  - Ensure Javascript and CSS files are pulled in programmatically to
    enable custom Javascript and CSS files.
  - CSS adjustments to ``inline`` markup and contents indentation.
  - Enable custom bug title link.
  - Adds sidebar_mode for table of contents as an option for html_theme_options
    in conf.py.
fixes:
  - Use HTTPS for external dependencies.
  - Replace deprecated library function os.popen()
    with subprocess. (1529836)
  - Update contribute link in footer. (1421814)
  - Hide duplicate titles and empty tocs in generated content.
openstackdocstheme-1.18.1/releasenotes/notes/storyboard-5f67da8941aec6ae.yaml0000666000175100017510000000022413227213640026773 0ustar  zuulzuul00000000000000---
features:
  - Initial integration of storyboard.openstack.org for report a bug,
    set ``bug_project`` to the number of the project to use it.
././@LongLink0000000000000000000000000000015200000000000011213 Lustar  00000000000000openstackdocstheme-1.18.1/releasenotes/notes/strip-html-tags-from-navigation-titles-929c92a339413015.yamlopenstackdocstheme-1.18.1/releasenotes/notes/strip-html-tags-from-navigation-titles-929c92a3394130150000666000175100017510000000022113227213640032626 0ustar  zuulzuul00000000000000---
fixes:
  - |
    The navigation links now correctly strip HTML from titles, allowing for
    use of markup like literal backticks in titles.
openstackdocstheme-1.18.1/releasenotes/notes/version-dropdown-1aa39974f524dd75.yaml0000666000175100017510000000164313227213640027710 0ustar  zuulzuul00000000000000---
prelude: >
    Adds ability to show up to the last five versions of the documentation,
    based on the available git tags for the repository. Use the theme variable,
    ``show_other_versions`` to chose to display the available versions in a
    dropdown menu.
features:
  - |
    Adds the option to configure the display of a version selector dropdown
    menu for the most recent five git tags used as release indicators for the repository.
    By default, in ``theme.conf``, the ``show_other_versions`` value is set to
    False.
    In ``conf.py``, set the theme variable, ``html_theme_options`` to
    include the parameter, ``show_other_versions`` as ``True``. For
    example:

    ::

      html_theme_options = {'show_other_versions': True}

  - Publishes a version dropdown menu in the "Updated" date row, on both mobile
    and desktop views, where the version list is imported from git tags on the
    repository.
openstackdocstheme-1.18.1/releasenotes/notes/sidebarlinks-db0a8463f32ab95d.yaml0000666000175100017510000000017513227213640027166 0ustar  zuulzuul00000000000000---
fixes:
  - Fix links on sidebar to go to docs.openstack.org instead of
    non-existing places (Launchpad bug #1521698).
openstackdocstheme-1.18.1/releasenotes/notes/local-project-search-e6f00a84f2eed0a6.yaml0000666000175100017510000000074113227213640030573 0ustar  zuulzuul00000000000000---
prelude: >
    Adds scoped search so that readers can search within project documentation
    only.
features:
  - |
    Adds ability to use the Sphinx search implementation only for the content
    for the project, such as nova or keystone. The default settings set the
    search scope to within the built version and only for .html files.

  - Readers access the search functionality through a link to Search from the
    top-most landing page for the project documentation.
openstackdocstheme-1.18.1/releasenotes/notes/norelease-ccd7722c078a73a2.yaml0000666000175100017510000000014413227213640026405 0ustar  zuulzuul00000000000000---
other:
  - The sidebar is not version dependent anymore, it always links to
    the main page.

openstackdocstheme-1.18.1/releasenotes/notes/double-backticks-not-red-5ce6dbc828221929.yaml0000666000175100017510000000025413227213640031141 0ustar  zuulzuul00000000000000---
fixes:
  - |
    The double backticks (``) markup caused text to be displayed in red with
    a pinkish background colour. The text is now displayed in black and bold.
openstackdocstheme-1.18.1/releasenotes/notes/allow-disabling-toc-in-body-d98d3a6e633fa28e.yaml0000666000175100017510000000052013227213640031716 0ustar  zuulzuul00000000000000---
features:
  - |
    The automatic table of contents that appears in the body of the
    documentation can be disabled by setting ``display_toc`` to ``False`` in
    the ``html_theme_options`` option in ``conf.py``.

    For example:

    .. code-block:: python

      html_theme_options = {
           "display_toc": False,
      }
openstackdocstheme-1.18.1/releasenotes/notes/bug-title-fdbefea0408e2cbf.yaml0000666000175100017510000000051113227213640026701 0ustar  zuulzuul00000000000000---
features:
  - |
    The ability to customise the bug title for the 'Report a Bug'
    link is now available. To customise the bug title used add
    the ``bug_title`` key with a value to ``html_context`` in the
    Sphinx configuration.

    For example:

    ::

      html_context = {"bug_title": 'Documentation bug', ...}
openstackdocstheme-1.18.1/openstackdocstheme/0000775000175100017510000000000013227214134021373 5ustar  zuulzuul00000000000000openstackdocstheme-1.18.1/openstackdocstheme/__init__.py0000666000175100017510000001237713227213663023526 0ustar  zuulzuul00000000000000# Copyright 2015 Rackspace US, Inc.
#
#    Licensed under the Apache License, Version 2.0 (the "License"); you may
#    not use this file except in compliance with the License. You may obtain
#    a copy of the License at
#
#         http://www.apache.org/licenses/LICENSE-2.0
#
#    Unless required by applicable law or agreed to in writing, software
#    distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
#    WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
#    License for the specific language governing permissions and limitations
#    under the License.

import os
import subprocess

import dulwich.repo
from sphinx.util import logging

_giturl = 'https://git.openstack.org/cgit/{}/tree/{}'
_html_context_data = None
logger = logging.getLogger(__name__)


def _get_other_versions(app):
    if not app.config.html_theme_options.get('show_other_versions', False):
        return []

    all_series = []
    try:
        repo = dulwich.repo.Repo.discover()
    except dulwich.repo.NotGitRepository:
        return []

    refs = repo.get_refs()
    for ref in refs.keys():
        ref = ref.decode('utf-8')
        if ref.startswith('refs/remotes/origin/stable'):
            series = ref.rpartition('/')[-1]
            all_series.append(series)
        elif ref.startswith('refs/tags/') and ref.endswith('-eol'):
            series = ref.rpartition('/')[-1][:-4]
            all_series.append(series)
    all_series.sort()

    # NOTE(dhellmann): Given when this feature was implemented, we
    # assume that the earliest version we can link to is for
    # mitaka. Projects that have older docs online can set the option
    # to indicate another start point. Projects that come later should
    # automatically include everything they actually have available
    # because the start point is not present in the list.
    earliest_desired = app.config.html_theme_options.get(
        'earliest_published_series', 'mitaka')
    if earliest_desired and earliest_desired in all_series:
        interesting_series = all_series[all_series.index(earliest_desired):]
    else:
        interesting_series = all_series

    # Reverse the list because we want the most recent to appear at
    # the top of the dropdown. The "latest" release is added to the
    # front of the list by the theme so we do not need to add it
    # here.
    interesting_series.reverse()
    return interesting_series


def _get_doc_path(app):
    # Handle 'doc/{docType}/source' paths
    doc_parts = os.path.abspath(app.srcdir).split(os.sep)[-3:]
    if doc_parts[0] == 'doc' and doc_parts[2] == 'source':
        return '/'.join(doc_parts)

    # Handle '{docType}/source' paths
    doc_parts = os.path.abspath(app.srcdir).split(os.sep)[-2:]
    if doc_parts[1] == 'source':
        return '/'.join(doc_parts)

    logger.info('Cannot identify project\'s root directory.')
    return


def builder_inited(app):
    theme_dir = os.path.join(os.path.dirname(__file__), 'theme')
    logger.info('Using openstackdocstheme Sphinx theme from %s' % theme_dir)


def get_pkg_path():
    return os.path.abspath(os.path.dirname(__file__))


def get_html_theme_path():
    """Return the directory containing HTML theme for local builds."""
    return os.path.join(get_pkg_path(), 'theme')


def get_pdf_theme_path():
    """Return the directory containing PDF theme for local builds."""
    args = ['theme', 'openstackdocs_pdf', 'pdftheme']
    return os.path.join(get_pkg_path(), *args)


def get_openstack_logo_path():
    """Return the directory containing openstack logo for local builds."""
    args = ['theme', 'openstackdocs_pdf', 'openstack-logo-full.png']
    return os.path.join(get_pkg_path(), *args)


def _html_page_context(app, pagename, templatename, context, doctree):
    global _html_context_data
    if _html_context_data is None:
        _html_context_data = {}
        try:
            _html_context_data['gitsha'] = subprocess.check_output(
                ['git', 'rev-parse', 'HEAD'],
            ).decode('utf-8').strip()
        except Exception:
            logger.warn('Cannot get gitsha from git repository.')
            _html_context_data['gitsha'] = 'unknown'

        doc_path = _get_doc_path(app)
        repo_name = app.config.repository_name
        if repo_name and doc_path:
            _html_context_data['giturl'] = _giturl.format(repo_name, doc_path)
        bug_project = app.config.bug_project
        if bug_project:
            _html_context_data['bug_project'] = bug_project
        if bug_project and bug_project.isdigit():
            _html_context_data['use_storyboard'] = True
        bug_tag = app.config.bug_tag
        if bug_tag:
            _html_context_data['bug_tag'] = bug_tag

    context.update(_html_context_data)
    context['other_versions'] = _get_other_versions(app)


def setup(app):
    logger.info('connecting events for openstackdocstheme')
    app.connect('builder-inited', builder_inited)
    app.connect('html-page-context', _html_page_context)
    app.add_config_value('repository_name', '', 'env')
    app.add_config_value('bug_project', '', 'env')
    app.add_config_value('bug_tag', '', 'env')
    app.add_html_theme(
        'openstackdocs',
        os.path.abspath(os.path.dirname(__file__)) + '/theme/openstackdocs',
    )
    return {
        'parallel_read_safe': True,
    }
openstackdocstheme-1.18.1/openstackdocstheme/version.py0000666000175100017510000000127013227213640023435 0ustar  zuulzuul00000000000000#    Copyright 2015 OpenStack Foundation
#
#    Licensed under the Apache License, Version 2.0 (the "License"); you may
#    not use this file except in compliance with the License. You may obtain
#    a copy of the License at
#
#         http://www.apache.org/licenses/LICENSE-2.0
#
#    Unless required by applicable law or agreed to in writing, software
#    distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
#    WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
#    License for the specific language governing permissions and limitations
#    under the License.

import pbr.version

version_info = pbr.version.VersionInfo('openstackdoctheme')
openstackdocstheme-1.18.1/openstackdocstheme/theme/0000775000175100017510000000000013227214134022475 5ustar  zuulzuul00000000000000openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/0000775000175100017510000000000013227214134025335 5ustar  zuulzuul00000000000000openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/script_search.html0000666000175100017510000000167713227213640031072 0ustar  zuulzuul00000000000000

openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/static/0000775000175100017510000000000013227214134026624 5ustar  zuulzuul00000000000000openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/static/images/0000775000175100017510000000000013227214134030071 5ustar  zuulzuul00000000000000openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/static/images/loading.gif0000666000175100017510000000133113227213640032176 0ustar  zuulzuul00000000000000GIF89azzz͂ެ!NETSCAPE2.0!	,LI5lC`id‘	S8
6@mF!NGIZQp3X- qnO"!	,bIy8KX0@y@KpK@6a'@Adv0%P :)4TIh_p@(kARЮ#@a!(
w!	,Z9+Pd0!Q Oѭwx
X*S2(G@$,)cHeWL)[3X#!	,NI/1hBgJA*R3ᓆ61baV	JР``46q[	h'r&!	,ZI8]	ǕEXB8,, 0<8C(%Ba20tUaY$cpBx̒tZ4S"!,ZIXV0(OqA``)B̜@B -G51(4cC!
ɠXhhGǐheN	
ffϷD;openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/static/images/search-icon.png0000666000175100017510000000042613227213640032777 0ustar  zuulzuul00000000000000PNG


IHDRG\tEXtSoftwareAdobe ImageReadyqe<IDATxb?`dddHHH2D?XȊ-b1
} 
㳙	9qmrЀb4;ha@lOP"}8A͠Yt4f3P5u=TJfFX
@cⅠhUP 	lD(!|S7<IENDB`openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/static/images/footer-twitter.png0000666000175100017510000000240013227213640033574 0ustar  zuulzuul00000000000000PNG


IHDR((mtEXtSoftwareAdobe ImageReadyqe<IDATxę[lTUL
jj0}JLM4V

*dD}Dm}0*/B""
!01
/z2>Kg朳evs	X^4bc\MbX'z񬎪2+fNmW-}8R<%fStn+~pLq
bxD<,'Doe/)fz-'&G{s)I4`qQ=L]فEΛ6A鶕v}۴iӵq%.='!&Ơrٖ&q8*nۂ6|ws7_ឋ%iVgbipm)b{ğyhMCÈKz9қXu\1j%C?YJĭƐAFHϿ_Ӕwkh24l0NY3b)\d8l䛬(X\Ň1iϓM|ِw14߱ysiMܤ<~)ۨ9fkIڬΆm4_l+q=쏔N*6AhYlX}v\=;F),Oxg $ؒr'<]mmJ՝L`_.Iyz}NK	/R'WilSTVͻ'=ˡl	B֫=2YIaqG0M=ybGVN0	S{3	s!lȧu0W{8H\)WOA?*I'p\i=+pj\
4Cܘq.F&8Hn&4>l]Q;l'5,儵7^Dxey,o[)dqqD&a*gEV^۷xOj*p2UpPRѹܻ\Wp[IENDB`openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/static/images/footer-facebook.png0000666000175100017510000000211113227213640033642 0ustar  zuulzuul00000000000000PNG


IHDR((mtEXtSoftwareAdobe ImageReadyqe<IDATx̙[Hag̬,3.RAbK"((%K+*]Ҟ"´ 
o]tkiSaYggfwsg}3wΧD`v2AHx^4Zr(LƂ)`>XϿ}yh1[P
A !p\ǀ+7S9DwYLy^4c!Kz/ҁe͆9QC0+0'[4+[3}w>cE(8L@v1V&|Yct3f/N&.78FVc윑hZPd8)o夭&&$ܤG݀r~2{
vp8Yx7᧐SӰ] R=_i\Q"@A?-wè@aodk8aYɮf%O4}l=d՜FۆE,SfE<3hwǵŮ]91I&jH3vMZbU%Q8'8l_Lޯjs*P4f0ÉÏ5ӹ&{y aOL<Lxߎ('e4]X<]"'BHMмGb&;j-٨EV>g,ukjLhg{C@`!iPjsu8'zZI;!Qx7B+YFA\zp[Ҍbs-&}`m퇸i=֦,	eɌ˘{l}YW1x2#mtwq+Qk'}q1
o
p▖{]%4>&}Y%[\̊?[u,%Mg&2}sr[DV_!RτՈ?ũH9l屓WMtEFa~Y,[XhGidvs)d=-IENDB`././@LongLink0000000000000000000000000000014700000000000011217 Lustar  00000000000000openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/static/images/openstack-logo-full.pngopenstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/static/images/openstack-logo-full.p0000666000175100017510000000165113227213640034145 0ustar  zuulzuul00000000000000PNG


IHDR#jpIDATx[ˍ0|%@.%uTKp	 p	*,x %;O;IQ
BP(
ūO}'@qקv1Q&GP}!F8\RHiVr(9J>&2!Gv?kMrw	.ad=viomnkiL0Q9nk}Gў8G_*
ef0
B@+fMic	1uSHȴ
XA[<wGƂp'9c|+/Ŀ77B֒29X
nb83sFs:gv?NwpLi\-3е 9ClC
+'QVG!G@l
vS̜P9{'17y	9Zw*!}9fnG@lԘL	v΂P25	i+gJaP0zް9@T!GŎfQs`XLI*ȑ.CT3z:*̝IHJ/Is<=30'SA1<ٜc.TiiQaCHroL%3gN=Hi\8O9܁:T"y=GFaeFjJ	3,sBle
qWBZabMrp2a
#%F)UHKzG5%ҾGO[~C8;bA2ap`w/`0ԃ;$Gw̦I=+%Bɡ$9ɑir!~\Q$ߊBP(
BgIENDB`././@LongLink0000000000000000000000000000015000000000000011211 Lustar  00000000000000openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/static/images/footer-youtube-hover.pngopenstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/static/images/footer-youtube-hover.0000666000175100017510000000202513227213640034205 0ustar  zuulzuul00000000000000PNG


IHDR((mtEXtSoftwareAdobe ImageReadyqe<IDATx̙KTAv2#,/]IA+9oЅ z!4z.[ADemNߑaqϬ{>Μ}wf~kٶK"A%l|>
>0Sؒh@!cycBn+U008
z@+:$̲Vyh7Ǿ©xL%p3yԂ>a4"TDؗL=e$0eT
s}۴V5w+@6l_@$eeYqS4m7t$X(WlIZ>(`Q`95S/@wMZ׀N m3-D<
f^;}Ry>qhk*S>\|.4
/-EӶwSSRyX"RǚN604
rB,e敦rCQPZMR*03fI;ڿҔK-B`3SCl24RK{eCVշߩVSr!0W#A;+L	i*/[plqnISB03J`ҔK-B3fj5']:$ԔK-C~^Ejмz	{B@jj-t]t7;xpP^M>B0mgL(}g7rg,j249k(~Sv/X-ƶFAtkC]ǹG
WE8zOOIENDB`././@LongLink0000000000000000000000000000015000000000000011211 Lustar  00000000000000openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/static/images/footer-twitter-hover.pngopenstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/static/images/footer-twitter-hover.0000666000175100017510000000237513227213640034223 0ustar  zuulzuul00000000000000PNG


IHDR((mtEXtSoftwareAdobe ImageReadyqe<IDATxڼil
Q罔PkU%Q%4b'K*>5j&"H$(	-Bb/
-B%
mS13ez_t̻νsιֈ L$T6(uWG0 ނ`(D
MKpG
{@`8{
`;Xjb!pu{Na#z>0џ%AHƁ|0חЈzr!*Bwng/91gpF>FP"w5F7Nqf{8cgXv`ƀdždž=TOuh=UZf"a*
F6,`hV[_9Uo&oDN=tý2y	8 i~%
YYM{kY>H-T,S)|8
9Fͽ @?@⟫i+qufj Ni\"gJE4sagmD纁Q^Y_"6XEˀLO%,ehl^:WZ2Vg[2-Us`)iѱK\nZ,]#/7,FuP5}cKlZck>5Kt'[UZYKI?ʝ5`ݝTOL=aSz:ۂ?>E^dRs`(n`}eJm?7>/vq|oB-QX,XuSSl1i?PSN\d#T'M޿1yeNG5R^СaUP>`i8;
f-UfIvv]q\E6ZֱGg
%>-k8k6A)Dw6[+uoO:\"n	ڕBEћŽ,t|^cqH3Q5B.@
$pd!s#~<<+"xM0B\t8K@zB@F&S`cbP-`'{[! eDh;VEX0fK9-0IWfH0Q){`##xFW<+*x<$9E[-qWW.(I+6aa@.y24x6_-"bbϫp@t~,/;m%h^uf@Wp~<5j>{-]cK'Xto(hw?G%fIq^D$.Tʳ?D*A,`6B$BB
dr`)B(Ͱ*`/@4Qhp.U=pa(	Aa!ڈbX#!H$ ɈQ"K5H1RT UH=r9\F;2G1Q=C7Fdt1r=6Ыhڏ>C03l0.B8,	c˱"VcϱwE	6wB aAHXLXNH $4	7	Q'"K&b21XH,#/{C7$C2'ITFnR#,4H#dk9, +ȅ3![
b@qS(RjJ4e2AURݨT5ZBRQ4u9̓IKhhitݕNWGw
Ljg(gwLӋT071oUX**|
J&*/TުUUT^S}FU3S	ԖUPSSg;goT?~YYLOCQ_ cx,!k
u5&|v*=9C3J3WRf?qtN	(~))4L1e\kXHQG6EYAJ'\'GgSSݧ
M=:.kDwn^Loy}/TmGX$<5qo</QC]@Caaᄑ.ȽJtq]zۯ6iܟ4)Y3sCQ?0k߬~OCOg#/c/Wװwa>>r><72Y_7ȷOo_C#dz%gA[z|!?:eAAA!h쐭!ΑiP~aa~'W?pX15wCsDDDޛg1O9-J5*>.j<74?.fYXXIlK9.*6nl{/]py.,:@LN8A*%w%
yg"/6шC\*NH*Mz쑼5y$3,幄'L
Lݛ:v m2=:1qB!Mggfvˬen/kY-
BTZ(*geWf͉9+̳ې7ᒶKW-X潬j9(xoʿܔĹdff-[n
ڴ
VE/(ۻCɾUUMfeI?m]Nmq#׹=TR+Gw-
6
U#pDy	
:v{vg/jBFS[b[O>zG499?rCd&ˮ/~јѡ򗓿m|x31^VwwO| (hSЧc3-gAMA|Q cHRMz%u0`:o_FIDATx_lǿGAS
MKdc,{ٲ$"?
1HV-J.öX"-Ev") I5>ɵۇn$Oe;ci3N<(w3F!iD)%qx99p! Ŀ
((CPf۶ݣcö8RfXIH?~'pyw3wuG1D:44D"'2@vAͼ>"wth40<|mö-Xme3o佪l4d$Àx"(`+`@6(Beb1*64M
k++2~5K~0,˂iY,eMll竟#3*dYFTB,ir4
H2|;BpEQD6E&([^PUUr9:O>2a&SOyFt333陠TU8.]x9=,<>\IPב緅tV
fk![1tNmnф,{㍇OӐeFn&8|QCp+Jp.J ky9dwӤ}kTB6R{]*.^)2P333Uv=_ڃK<<.d;ȍFdG###lbdqp
--dY½$QRq-`q!om"v6OUU7-ojT*N&at](HRHR(
[MOO읯ʝJ@]@ȣ=
BZX躎T*:t]G&(=uKKKl6eV+X!t2Nw>B;z(kjZl;hsrUNOC<i=Vp5MC<K\-A1h|5!
-uKǾ>įC$PfnPӈD"͌ood025,--|#GB:0z_k02JaPx.קw4
A$HQ:M?=l޾{.:…Y
(6(trrv:-v::99IEQdN:I>6袱@_Gg?ˊApx
=o.M²,ܽ[k?bw3ԍf"y"?*AFh4J˿/SA.?7PJ-}i
S^+lBTqcƶgH&^
LMe*'a"N47"x'iqiyN|ck*-훷+iSJ%|Ł(Lz
IENDB`openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/static/images/docs/superuser1.png0000666000175100017510000004427013227213640033657 0ustar  zuulzuul00000000000000PNG


IHDRo?]tEXtSoftwareAdobe ImageReadyqe<HZIDATx}#W*9LyHW@Tl^UIQ˫HEzf,"y5Z3-8-FyۅtD$s좦J.l!ރD$Bl˺hHSl/ nF:aO}F$M$OLcB2bIGnnzբԸ^ö.lErH7ڭvh}8ƺnl'u>$BWTDbE'<k0CAǥr}Sb Z?M_4_Gܼib<#MLyLr"TIU;$9۞B""U3UHF9+<3[IV+*$M0c%gHɈHBg/D?)DмAJhr%"%kv{n8XUZ
A$Z,7݇_4dbɫ/`[ƞ{D,np;1h2ŕymIcۃeHw!I
asZ
ic +
2Xd$	
DRtn"4y7p8ZGUUE~O<ׇ|a"2ؖxz]3B1	a)0Ί%$<fp#*/o	"P29JbT8Xd!k	a<J'##(>g lr;~(`g͕WyuhEuXk	SYGPy(E"@:la5) DaGp"`8Ja(~sOB&]v|`8yX3h&4o7Hi͢lۘ‰!?AMa A	G2TYRؼ,؞"""ptUUߣۓęf8ظTL Ƃpj"GUZPRIL8M8@0K/JkϺאKt|htY႕-ZK
Ltr
k<'&Cp::H"W?PԮ	ߤ+FGCxX>ZD%Y+(@mVXK[\r|,qN
#:q_c' *aF$h/X25܍|=%"p^^FOg' v֓0t:jS?
|z1ߋ@"ɨOa,8iS~ED"L?=gNy_(o_pܰ}qGF
h᡾QCE=BO$^-,:Ӧ*1IpHѨ
aAN+,Wn|Y4vѤd5t6ص]b2^'7v
Z]vPu}JE%i_8V]~nq3ċH 2?a
Emv59aU448D8oE֦;$؀:BZ'rF1ང<>TxK&UEHyriOP\LiB
m˛5,0Z]Zk5"x] 8箨AD2	UUq1v٪wYL}yFhRziͿ#"n^q߂{`늅pц[չ1:pM
#06钉eHDƓ&@Ch&GD3rR4z]Hq0wI&ض_[6q^ޏJT~&&%"S6UQ3Jdٰ:;\Nͱ%exn`Dk}Z>tX8o?A$a,DZb)Rd9*^>MD~Ȣ\L|pgѿ`ՄN;,hmni[̈́HB1v߀PZͻxd)#qH`hFӹh&aynjœvj8Ho5
H wD#߆DlDki+|jy)7:{uʷ_%TSqc=}BpXt:}QB88ѦzZ}&FZU kvY";.}{lv/[_+Oh EB@Pj*Huu.nޞFhDƥi(VcfcUk[_{>ƒh
˜ؾb!\~),jDxWфc$*rHo6?tF秳0[TX8x7܇
{V{\[.ٰZ_d8I(Yq:k*IU+ h4;3"
XgI!uBSTw²+>3?'`_ L-paYZNXwqgLJ$%	"+ iO{W{~lZTHI.U&a{쐜$G42;rx%/\?S)8!,	z|dD38A0(-_~TDB݊{KxB ܘR`)9|@x
|eԅ*
}&{T&ݑ]Lnf
E(?ŦW3&" ۽3~"+LΚzyTIUUQ} ztuf'y
MK)8(F8ⳳQOc{k;L(cGcdxS	IUH
4HPxџkC<)pv"F"fbQ3(%"ժotlPl
"{҆N^P웄e*OC˳`CxxEpٚv!{L@_T"E]9RYWb$fO&p4TiQI1c8CLB8q|Ͱeik>r*8.Uwíͻ6cQrC<
Wln3Օ4.odE?uiH_:RZ#P5- !Sz;lG['HJa
(Zfmm l`aQV!Sc:;N];v|^ "Պ}ה`K{62+b G ǣ H^DsN_3ejgh`a>%Όt_N3o'"ՔkULsڅCUڰELwxexf޾L访BW]$ؤ=Gǂ0RZj%nKp8)s
нWGu:vX,P9WϗG)RvjZHβIeɫ~[W'Bei$ҎN&SgN
I`cgvF Ф7+yJ\A+9#xnJ失T׬]H-^m Ӈ]X{ucsn"xv\ݟVG@LcqR$]u4Xۗo]N	Vozgv%I(abO@`|T+̊5L&*t+[`z-%
k/IA9Fʖ,bC9ɤKk iAvuWڱyMWt4“0EfT\t݊ze]P܏*qlƬ`4[	?
4jٱ<,<>Wy:oT՟"T>2@Zl:98~qŪ{ʖ1|3Ǯ?H	utǐL,^9ܫB:6ML@:ȣs {]{_"$2oҗ~>46#e4+"In=/{-6E((d*Aj`+d)R.i)NQ߉M5j	-D$3pW2'тP+f*$8")$ݽĪ*"'z!	96=AZ\6-;`B|,G}zBH[gTE%16{mKMUy&$Rz(=*\+[gЇ	L?Sg'{/H}/nG^ZF$HŒaȃmsL`{'ja{شz&A_a>5;a˒&bn[3Bz"3b?G"'ݏ]ny
ǂnkMHI0]fa-+x nH`LVխXꂍ@,EhҤ;IT
X
ɧ?@2eE{-`x@)w\lm^dY\Bu$W'J%Jyr$vp &75XXs;pfpUkf_8Tܠ#sj虴?ve+%1K0=b3==o"mŭM5߼69?D$"E*"]O
ӽ,fv6YQу=[ƂHɉz,ghD?kfx]JϑD@T.Qen[ij`gk %ocS3fӛO /nNVm}1lw`c	5/{y	e(g!_6WƴmϨFg'Ӯ\f9 ZqbIn`GQ/ŊDeR_HtjF/YqC/ȷ_|;!~d%?sIwӯO]YrPn)#L	(r76#HćK	x}ܫc{LS!4_iIʥFqOe4gݎqSgS{'"$9Vυ?ʩFl	
|[y?|ŵ>Ϟ9}s}/Ǽ_Fc"t	Hγ׎[Hd8TĻ2]wZc
%O‘8X-j6rX!rD응l0aix@}."@PfC:U x`%)-%=ѿs?wM$Iӎrn`8E^Ӧp "kTp)$T)Rjtn=mHHfI?@هI§]pbk0~,:L,آl/:ɴz	̀M\[]{ؘlB(R_4"M)J3/`3O] ]vi2}C>ISHwP!EʧF[q"rcgؓhJ\d?*,ze7a"AU"d{8Ow,(wh2
47_Ioh|qSl=HNTeHHĺpCy] qQfCEOLa,H1YDr7	HDp903HA
k7JccwX(CD#7Ob|I$>Bp>3א{iHwҴbt"I~حX若r!%IMrt$E.DDB@R?@d{Cwbⱱ9H,BE#ͤ=M9㢎 q'Q%8D	҈	Obx؄ĢQR.#lj:D$HǦu23VP/hWFRHxj!D 8@,p
vbeލ|->ŏpD/hRGɮMiز,R_!ܜFY-+LTNPϡII5kD3X1-
KͽH5!]-.[oTXѓQT͔qK;amT`GSԈ
:~K2S
liơX^;q'fK5S$Z,
hjh?HD \MGpp`I[8mǦflEjEc55|gh+&3Arf/76䄞V(iF{t(G.) <)p$L0郤ܳCӂ`n>f}gge_kCS.z$R]Gbɥݐ	_e{2kl+~>S
(мKj5gms􎖱lp:!7q
Hk(݃fUXf?tP'Xz'DBˌsl=>(I<ѷB˜2.z"nbV=U#)hM0fN"ѪR64
:p.6>n%"՞Y%nl9K
P8&LC=[ܓyLTll+U+HLln2ht_
r\p	88
ɲRq"M [x%ԈK)X|v};R8
'33CվuD1DP+z=]uA "*>}(3l
L,4BɘYt75߱>UJL;_(g1Htֲ
'JHmþɮľ$ rxƇsZYErEOTf#ȍ&v5UTs"άuۧ@(s3BռC=wqlӎR}X,>m\i6\$aYN6DZ/,kɝ*7|e*ICcҌH#>cH7C$H)$eב{!WO]f$p128>XO-$˒40ʚ~q|P2:XK*d胜38͵E~/X[H5dMuq4_s`{]V0dˇe%TɆn^R}'M۫/r7DFޔ$yLM1ߊ&6#EbIپƁ}yԔUah)A*@6/kEuJ4l>~F~D*XfD[b(}	,׎#`Ud 4xx$Uq̑ZDDa.gd>35aT Nvl|sdf6$M^"4v1'rQކ$|1Nj>b<_
HRQ"i'YEL;iLDgz3&O^&>ޝj"fV+W殾$?y,j>)#]w@)q[@"Ru(\.Aqff*CJ	8HO`ym7۬;75
=H;=#9DU#emg;&v_nvG	> IdkY
4l]y9t6>"R&(Y$6s?.1Hˑ;h3fy*lHPDfvкsr~iEbHqVAm
'vHjE?e "UY1\nZ+ޜBU.*[eKe˨CV{Nk+
j"e9]CU8OD>|uJY'9Q֣RDaZFg4ɕ#"%|=~^XOD>\X%vދ~rпV2fEs>:PّܪͥE:sLXGD>`f]U}>uߗPatSs-j8xrIG+J7s) 1u'*P~"wsN*<9gIE "ULgeO(1L$!YadQb;+Ya8=?~STK2r9 8UAp_Uvq^`("dߩGG+OUJyH"R@uA3f7xY}'ԢNؗ,G|1+ &3Y\AU%o$/0JD"䂮"MFObUXѫ_?eT6@D"r;9DSs4	X;AԜ'〓$sƦHڝل,YRrל9Su]RUnID"HZ2QvSTf}'ퟘ4#ef7>o=$˨0\l)?Iw1M$&M"`dmWRͻ<]É98ϔ`"NphhOL( ؐ>pkĬD&
kr=nhEH)F7w|@SUE$dRFC%^@D"!gxvc6JSɫS_,EcUeڡ"
H]]#5nn9Ig,i=0'BM;˺sDH+řh$Ʌ$یgmhӛd ؿWۯDH:D$*J)]zrܥ:N+H'uH=lf'i&xpYs.c+Hׄc>n."!l36/aՔE=ƒX|X*bhYdqd3H˸Hz\;B}Y21)'zw?1YB΢}Xa\;k}`Po@yiG(LT1$
0asvP4t|<:6G.F`DBt!efMW]#iMzXӖynJ1>HI|';"_RgHt`a+8Y65A>5#YnADjznhZyhHE
FXthrkȦ_c5)8X\-\K3ᒦnmY`ND[v^PKyfSїӃ`llpEN+O#&0x<۸cA#b`*_`8gh(jۼ֜_q|\Z1ϳF<A(ߥdKn,UHС")fH"R[uzSXwL%.ϭ֠CHDs&4\oFFmRhbAXӼ˸HtSXvholN*R|Z,пmy\K4=j'HDHuo>Ԫ!H$t*#Q.U:걕UHuϦǡol$E(N+RƟpy!`WHuQ7a}E*eZŴ)V17QƖ4Vͧ~$0vU6˖I	B`QD0=Q&EwGf],f݌*4B|jAMFhEC5u`~:T4T m]ͭjUE>XT=}D|lTkmhdj"vx3"Ѹ.!S^l>>e*aeEN8Hu4FYȉէ	bXOtr*/Vw|rY]Š$xfx~?tj%F6(jYx܆]k_ʒVɈ^q*kHubMB!9	.ADx8ڤU♡nu7G*Tc;H_9xH\a=oIv| ro"Eg"qoi[$9n9jsTOlYObAbs;`tu'!4\	?)ЏJeWgē\X܆'D:ő%_c٤L9%dvh?͓Xxي6'X{[JǸe
hDj9`HK[9pUɃaK&UE?. iU.hޭ@4^"^m84<=z01Ǝ6hZ"'Db<7*OV\S:gLhUd
,eS!IctR@ѼͻkR!HIߓG1D?7-|qj&OcFg*5>q3eSemmlm'Q
6Kwk
;:Jqc:huD|"S.F|`C2
DB'5S`8Mb

8CƢ	sIG'\(fߌd#""U?Īu$V/,B$	
f΅Pm0\9F@m	j	-0Z@N&a##{vg)0(
n`G
6ot+8*h͓k\b,v	_bd)
j4JRhd8"wGgsM?֢wB?tE6ETG8cx(
/jFUHɲ"S8HF9E%HzFlwL%e=7@S`U'pv$
	@0>LqJw&4>,3E4'nD}#MftapdǁTt_)6
8K~{lv45
7%,tmڳS#/1 YFjO4
զH8%3nXqƯ#JTa"z?<
.Av3q\q>QG7WB\qIxrarl0	km(We~N"RPW"*fە+4V'CD""UGe3D$"RB5.R`TgC>Rĕg@V-K"E""U=#e2AHD]w0@I^"i~_86ݼtD#TQIK"cNfb~J"R%;Z_kI)H~P:+|dS
DY2$tPTqMy&"*\ǿ)I84Q%ɬ=UT2HѮ:uvl "Մ"+|HD RDDop
3VC+O""*ǀuG#*.Ic%*Cɩ9\'ADD4R%A4
2HG*UQZ9D$"R1YbG""U;DQ;"|ġois1PO;d%Hp"%(CCmU?""U
%(Rf^ێj5HQZ	L;"R-҃HA6Lv
<)jPļHYq$":Wiߑ
>TD̉H2txy?2HsQ*MiJ
Q<7"ɤU!vDy]2L։U`jlR*9"|;j)%:U2HUR"oeVDD.LQ^?""Μ:VTR[IHՃCH	o/*d,vl%#H,wQH#r\1A DHU DDo.WV@FeM31+ӏ(HDC13]^#ӎ4G$DD"S$%aL>P)>#H?PLԮ:"RBnC~?BD""JW	9g
{?""kPrq|')mb(DȐbLI",YHD$BmQC`i^[vJ"l|$R$"RwnTGi?vo$"E̘:<~'TP2ViG>J/":u_åz
DEZ#)@D
4*e^G?J;WYR#"RU#m~sJD""}r,LD""մe`o1HU
_F`
iGD"hNWP$]wĉHD$A%"iD>i~)RHGDD+')易T+>i`KP<^uf#O|`@]jkўO!ڜ!IUeΥWmjI-
C`UO"0
i7[Rg[mq-o)dLow[oBN_se}ǖ5/9z>+i
A>l{{Dc?z~e"RYoh?3owIfsw[>x%yDQxȾ#pUp
ڽʠ N˲or%t'[<.xÅkT1î}VD,`=*Ϛabp0/Q%= 0DbajK
ߧ#}pMIIȊ
-[K:Zзjƛ/~A_&d\}={5B24۬J9~>wPԮFGtW3_?Qx; j4Ş>z
w 6@HmЂ[t,[hr=I&:vnxhHUD@M	Db:CxƢQr'O}X4ckzUs{`q]NsmvAm BIߡ ^DbVaI'z47͂)+lySL ٵ""R])w%zYn&*h^4M/(0ecmVx~/dXCD,"/Sh,nv̇]_b
q׶Oۈ8ch4Gݻ0ܿ8,X8t[|\5S͞,f&f^wD͝>ӗ:$F|qʛ+JY:v8sWU1676AǽK\#;-*]ˊ!ߴ)ډ$]ivZ-a0\6
a#)
V(|lɲ
_Pe1EpK[vta
sb	x.&d16xc5DuMy0nX?[?U76	IڀM
.%@ @ @ @ @ @ @ `#hnIENDB`openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/static/images/docs/superuser2.png0000666000175100017510000003404413227213640033656 0ustar  zuulzuul00000000000000PNG


IHDRo?]tEXtSoftwareAdobe ImageReadyqe<7IDATx	y1'9,(ұK9eJFHav\cڸ]v*^T:d:+ҌJv#yeʱEmI,RZiq0'ftht_wY f0w@"H$D"H$D"H$D"H$D"H$D"H$D"H$i$)>|!v7,ܚY#
K 0{0Zn-nZ@"34#0
HFZUT񞁕%HQf؀fq?ᯛ1z[""APFz{K3ԦP=ncHh	Ȑ:rPv"PR B#DS#Q󍔶X;"0\ԝSҶusRwp|1HFXqaAu5)GoG~Zπz@"pFN}eZlLM82F^{V[X0s	$_m2@KMª$<|v1(~#ak) u'Xqջ'߁UYo8;r(~d"wg[=QLR4
$uo]=QY$EK2UTnH${T$.UZi~o$*iot٭@䀒wGNnݙ>hyOޜ`覵+ۖ'2HN$9LvByЖ@"Un6y\ )|=͉YK^$Y=Po0!b1Pz@uwG00ow@"U%٩	֋XeA\Up߳6{LRC7Tdy~8IXY,4|Y/X޽CCuf
1nDSp%W=]ֽ2NϔB7l P}P)ϬQ /bS#5D%B0[N-Vpn  :ՅBfDgls'.</:GT{WnȡHL$:UTy57{Bew}kt$ V+bZ7~JܝXy[/||x0سjA[{(+e	Ve:0
~3#CU3tv޼0CgxuLGrZx4
(NVQ4{$d21Fr3͘Y8Y촴Mqk{4SasCxJp߷;2,R#[@
cAbwO¤D%7&E7˴f%7B܉	,nr:68;c@Ye ?Q.UC٦ͨ+T<,nV/8GiE0mufyrM40׮:'4E uFDm&=	֡oUAq^*[	t
x@"ΈW=jDS&@|h.JHh1W5Ҙ@`e"m!abbA;f=)r,R<+$'M%߳jP,,>R@HR	q(R\MLոD7AG.Fgd'
<\bb94?W*,+'sTH]-[`M2sp"Zb'fk`.Ei9^$?@YX(߬Zq0YI{WŒ]QG!/9H/^Q.he'W}#cq`&;U"\: %B\FCf~7<P&Hw몖$.v≂RItEd"AdVQ\nnjLIf-^9GCkn32Pђ׈Scz{ЛG|"Ja%|=ooOnO>0=R8IS,6<5S]V':3\5~uy]LCRuCbfPQN0v۲Ʃǫ7-PʰNR7%{Mܦ((WwMXד}"S(&>¸NI{2KBkv|.^1=MJm{mveJa-WPY3-KDm9@͆g)~fbamwfΌ8ٳvf6Ѝ-Vʈ]F @R+^ntmPVwEHݺ^CEn(LCW1<R<{ ;O?TW2\cQ&j4L@e߾ζ!$F
Z'%]~co@uw0qU%"HF}$[fU"Xٸ0=f"(FHvd+Ms0xX3g:5c}
YY&i'n@b19R5bk Z߅qp>U2D E*iKJ)a0@j-T|}6lȶMwHtF,`vzg.hY,i&aoơ%	~.LzwAf2 A7ӕ{t[Nv\8jk'NDょ
6D;z;-DcF
-Z/pP=7-zbPMf!54,ZEFי1!D{4Yj1~L^CtPQbȱE)΁ ~_9	^hLtˍGV	c#7֫AfD[!B
{7,`e
B6pl%{hH {Z\Fn
E#VCeivH¸
`RrLC~R@C솝^	9(_Z֨Ҁ8~卌I+ATg=;Ў0	ݸCX#P05@/W!1\1Bd6tIX} MT:H,6¬BB3ɄȚp;Tjea1Ślr5⧽dA@1#l7_4_n
Z!kj[2hfTN<	S+h30+vYעK8buHxÕT85#L`Fp.3Lj&+Ǧ4o(L@z]7L*0+;ɰ4`jYXc"(o9Tvz9~zls.Mi^j𙮜u 8d
O
5H%anHsHi=GMus(A}z΁ԯxzɕn8Okr3->?01-´p0k7ae#BY#Lܻ*ItNnսB;鍳q×`PM̚E>_f>?Q%Btvx!XQE}MpũfeBߌ}ϛ/Al̨̍wB.o$UtTˉ2Cp%#Yvh5GN$9H/@:;Uוsv^Y;5PԐA׀񥬑t j&A
>_oA#P|gӕY&lX1+ԮUi;e@>EC9[X&AzW`.g픕p0VmH 33{nxd$e+4;8XV)y"bo6ƎS%D|TLUG-tLk4nVaM>cyq'F$(dwS%01j u.#(xqtTzS`5$|爺vcZ@i,, ԉ0{?Gk!eK/1ް5GV:dZrCqc,*
Хc=H8Z!KҬ$UE[ژEU,X9QpdAk`oB:q6L]	%$K8]9n_?!_UC2
HWY(]\t0K1ܑ%PsHNM1KZoA-s_]*օdE+ÈW}vKr_}u%5kr#9kCXeM`V1L,mݷQnBǀ_6*iT4paN+bɬ7y솭D._ɆQ3@t	^T5CӘH8'||ɣ[ƶ	38ѥe@t2tbQU4C{cAB񎫬%h[-Dȭr40HNBP^g*,?dY92D!:ٺtZjŘzp4z8H5t:R,RΘ	:zःӚ
ʪ^nZyRuA$
iD$n&#.W	cتrT6
*Xצ+b߻IniTFhKC4-X>t5[8(Žܺ!{oob߮] kD43cH lx?"#-qҐQ@
rH >rtX]0ktd4+qvI|=1=#	*azn^#FJS|
CspNɅ`%!
̥vv*!(zw\(8@6}?tc@2>4+^7 cJqK6Qi3z&[32:[׊Dâ+ZE`<ȭ-xDtד[Z'U=LJkR${5~M^ϬQ_|DH
t+nxcp?2pz'G
\uOV
J-7,G9.®H5'~zzqU(2T+/|5V&$8f^NKIu]ݔ`0+܋DT[
5B[ǔ<vto#t-/>ܫEvy)7Ο誁بGKԈUX4t#v1Kl/nI㐗bgy?e;SP+'`f
%??z%$f׷J^grQ&HAtelJ%a$:2,3`.܁B>kw0 .m+Ui}=æiT4Y7o41#xUC4>޷nw	`
Z1rw͟ڵCNK<V]50*fЊʶYԬHk7$EsN-&z㤒qjhV'`Q<[WDXnGdnzQ-(X?:("]2\]Kp?X30SVj0H>TAbzh4Gv/ҲL-$
A`0ZJ)J}Nre8Ǿ\U3i`_1ZgXU~q#KCUru6)pk*whFpR(C^fUolt%
UreΩ2}%c1%	V?gY1dنs$Z&N>(z7sL'm*	Q$5B%}~3O:Ju7VuLDY$t}* u+;Hm#@Nkށ<b3~Nr	ixa;@ͱ{_pYDN&%big{^d.G|"OrHDDL
1%=
TEM`́X	KNM`5̬:0+0{62+`f	3a@	imAƔs4t<ƒTh{L$>@w7㩃~}[
faaT.**AR&SaXa1PNVNӘPDp
;YvQ4X;GA2RTX#R`)㤏?C3zfֳHnA?05~zNaV+۲ԉ#^J|,%`vMT@mT1Ei`YGLtDjeөE
~kLfs=J;llZ00=DV["sz<8ՍGOԢQG#[%{ _/)`Ud?X9U^Aέ`/>)-\K2⿺Z%ReAj|.YyýJ[iwf;S[aV$;>Y%Ll}ʉ
%Y;`,_mUps1MSRx
~gIJEcLtoj,`,oM,ae-J%wvWN
QZ~XA+-R,Pl	eBZXQYئLM>RsS\{{UhǂYS"Y5H!xErxX`Q9AbZ$gU(K}e$g!4nܭJf1YhR4tFc
5#""#H;v]"K-i.W`03KPrrSomĄӚm&E"-Y,:an'ոzjʃ*߉@"53H3cI(8%@pDoTrHT?f	'̨m5$8,k!@ EZoE;\=sUYE1@ uH$Rg͗-kf blRԷ0DǔLg0V$ˇ
P!DUC@UٲF
iMf봬Fn:D [حM.)X¾]`l'Ko$WM4g֟E_yp0! kG
ԃÜ҅]z9jAIcJHHN]EY`B_].C$R3@r`O-XˬϘlRɵ#uw4<~-\Qw0_ARbUJ]]&|^QSnOB*I6Kٚ)>VH]5}mofo]T"({M4_V֥;(k
8HU5rn5l^ɀ .i HY#׬)	츨wz#;
_\#x}:dԉ)~Gm&J5I u6:je-P}i
nK)xAE:G "Vu6 3}vN'p]ꔽ=*5Ԋ	8K u52]93lUєdے
\? 8RkzWVHNh:l,hi+wv"svAU/
ITsZǪtd@8-5.mIf.T}^bVH4e˻XҢ5%֍/?5{͵?N6zyKT5
mBu_9͚X*ZuwV|M	^ĊZDc-' a':~R ,ՇS$k%x%Yx&a{ sO}/k1e]zqjYt+.$Hm>~v
M[s,S%Z톒Ej$㷔Ԓv~>但U<,d{@"9,	z??%]s51r=ȜH6X3F};nukV7GpH_C,׾gS[vNXT(1+d|EHݩ+>nr%x'[E5]8zl~3Kڙ"acq)Йjdo}>[I/ހ"_w{o~nr
qAq($8`nyd%,RO߿pŗs :ij?ɿ[O^9VS?3yASA@xz(/4IH]YnB	.Ynᕣo!
q`}w{͘:hSsۡUA׌--	!]7\#cOIFH"Y Ͷ~rO/hma]  j9P%b1!BK$owPˀz6lّ%KFâ4_\^<*myo)]vG uN}/v3{CI?Nx,2TGVDoRS5owX:EnO?:L 踃h|NyHh&"sвdW3[s۝9IJ|6n%
R땡S֡G#-ԝruCtl#[׭0.K AZj@
}uV(DjFX[7⫉~@",8uDZTyv	YO?:B uF41Yn]9>ձHND7r5[:	*Hl2D`DG*H>Ku,c.Iaf}Rol.dKDjnd齶F u]Krr[ag(R	ԅlEj#xZv܊o!KbqC Ӫ:;IuÖ<\a,ViW+\;jm![.k$~k";6P3`E`"^=#t	䢳@ H$%ՊVe_$R48IDnPH5H,DnP1	$@"wV*I H-T@"$MuNDt
$YXD"D"QU6d	$R+r"$Rx
) ]4E :Iv	$D "K Z.ɥC5#rBxe$R$@"-t
$R\;5h@"R#D"uw@ E%H$D@"5\A۝#	$R(B@HHH	$	$RE
ʴ$1k%H:N H$S4՜@"/k4Dj$@&5*MH]Fv[,D"D"(itDW@j; H	HVND"H
D HaEod핥S@ B)%D8##H$x֌ H.
Z*FD
DԈ	$RH\'HD"H$)H)C H5$#t
$R)ȋNH$@"5WI RuOt$RxHRGPNA49?bw?ŦOTիkr}nw?1%Ax[ʱ?
o>cN5wwr_f/Z fևO+׾gno5t`>F6KVpno/e<ڱ@"җK=bJzϮ`Q~?!zO_x	~!ן0_PN7[|u5@sn*S5Rc?fȯ[~4DҺ9r#>ia|ie귿롫`0af58nhPPoUa#}dIbo.l;ؐFϾ+s[n܅	
A -<2o=w~m|Rw@.0k#Q\nZ'<
7"lNqpuFiӛ5[EBXŻ]9+VWT:J<\،qYaǗ#:]V+c>
c칙a]
j:s=}_ZUf)1)ljccύ^sNq O!XckOtz{|֭e|.+$?%-nݕU?y*~Z\R~y8̄ 2 B
4E낰88=:-a2zVHNVn}D#8xoB֮"O's+R:z#PH]*kCjpϻݍk[g&+d\[?0'ɚ!H9${uxݬ#)ŢYҾBlX RͮPpH7G"Lu`u{SVI$D"H$D"H$D"H$D"H$D"H$D`l$S>IENDB`openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/static/images/docs/superuser3.png0000666000175100017510000003016313227213640033655 0ustar  zuulzuul00000000000000PNG


IHDRo?]tEXtSoftwareAdobe ImageReadyqe<0IDATx{}o{K -FJ^ vx?֒adw1l#)^|֖M!^""d#%ƚ
5ܲlV 
=Vrj{Wdܷ-W̹r^AI[H4ϳ%1:ܝN$5E\T--=}`1[,.f;|	,P*cɱ'ISZ?*jlϱ3lѳFOÏ`R-!o6(fỌnADCBk?[%ٖy`HYnBM`hS/v]9)JtRqG-!j
ٺY:~Ə"xL?PQmK*q>֨FzQK>rWoi)j3C u6Y,P|K"
Y
B{(R
O|ojS#(-—Zl	X(~x

V"م*CrbDwa,9>bs.ilT7?|zńD[b 넥"*$WĂ,d`3
\cѻc2!99@Vpw(.GW9D7[G;_}O4ﴙÄd@҅J{|!uvŦX[1 Je$BQ&4>4,q?Jy='@
];e\^/Layn][#m(h=Qz}{+Je[Ն!RZ+HA	բ
Q=Sy@:ynɝ2wAr'BDŧ@̧i6N	\Fd`i^uǞ',yI4Y-Y"~~)whjfU.9:"`R2t4\fnKy\\_rW
0MR	F	0#abed(6.z¥s#qBRL'%񑦊sV!ܮ|CrWr;d#ZErq(.Jţ.b)]:K)ڳu腓ۀIĭuޯDX$OKkYI.DdjڮD~ioT&SPIMY#'jJDȰ1T!u-=G˖!#j$/Qc$e))>Һu`Ă<iR5AKCq#t,eEH+HRf#M*:Zhx&bw[S{9&^"7PLD4Ykv].^'J} jn`!!H(c*D6`%KG9ݿQ.#k0Z,du
,V 9"Q(deT<[%9['\B"J0^27s*kknUӲNivLz9:i,$rEN*SI.Z2v@v&jso
ы_XכD%&ThǗu+>0,MslDt.r:jh=Eҗ.nv0YowlN,uwUggpt~FI,y&$ԁCQ[/WVoSK&F\;q?z[uonO	pW9%gP%D8J+ Y'~
vep].yf]:I9kꨒAelzOdt2[gcdhisuSL$-%dG.|]?Vk&h1H.geJ.XYd" >hĽULlpeG.%n	"%	|2
Z$1k2\pfY<|Avc+ս#wE1
@p
uf>&:zd|Cc	#1HLcr(jne|&0E@dVnN9qtly‰7D;I	N)dXh G#DO*RD\>^6-~
5LSŤMɂZ%Qco׮̸iF{S؉&X/%@Q*Z6[cњPy<:o!]s,oKKlMUuA
yC.i+Eus$J2I,Y/msZʦ.Z"n8wΝ)
(Ȫ-LHUF[
)-y%ߥd=SlKIu)ae(1؊~GV:jCDz1eZ8;RQK{*3(6reN~?KR\e<]-}^r*0KsYXVHV d,O)?AU]iNaP`a/J@![/NtY:o9(F@jfYI:MwJ^u,1iω=UR3@2aAU 7&g<
*zOheՃ'1ק[n84	HBz!.rH!;rӳJ"'wvvN)Hźsȉ 9Hɲ*`*<Jeskj+;R)[!Jta2 !^ĂADJOdXI޶%7k+*F8];""Vע!jv>
!ExImFOv]7oPY%'iU9LFR*߻\|)HTDI*ǭU=PC `hX:b#V~A6ԠXIL2qďIMͬ$j6}J,6p*Qlc%%Lo@$t(bn zGL_PLh	v]s
mq`BQ@>z|˺M+r{"~ImEև怶#
Dګ#vywFC^p,3d׍HlPe,>pMLkJJKB{RAj@[(4T#uvn#y!\$(	]Gś\rev?xDp(vfR(F:7hHSkLRy0qˤ,'EqP'NJ[GKɭ*t&(vJxɠƺ^2u}"	(	,a!Jgd}Uh)q]ڡ+F%A^҆,Souq|Eht!^{Ä=,-f0^ bV&[[x%LmU%8(7ߩjqx>maV<0_[cKo`RY0y_Tcе:r\?4Y$\=Ζ?}@*&~LJɂroS9c~uRҦE;<"
.w%džŠf%9XT.(]džv}3M>xay}syTnuVR$"Lq[w<#{IFcɱqmu+NNR:2maH}d2b0Sus $=MWo	Hv<1DuV$2\:)xhQ5rH˴I*%.WrWL+N;!*yz"$qZ0J&|k%-5pw0E=UAq }
w/	lm+%.t{}dbYMv-ph5	HF"#[8wy/-E`9Kq C։Nَ&rUEE2Ȧ:J0=#"k5>r67*Ҏʞ:웸uHqڭsNIF۔{qql\sVܢMzdy9$U; b+RPY#O1 u8H${ADR⢿w|ۿbFYl[8Zsc*p2Y#% E.#Y؝kAg
KW"ݺT)TwqWV
F=媆{7< `iƋ@.;p$AeH1u&IGZ`qJҹ.wU5(kT*ťܰEp狌b?uNIb7CzMzS/W$nFSZ-b۬FuQnyE̝3#;$>8=WX<N9TO/{'&su'+V\d,@XT""Wʹ(>ʹ Q|l(Y@V@~*HWNk7PB}xB696Ѡ[׮HE/o!ˠ] o*dXt$1DdCnq[AdN
ܺT Ad%Eu=.w0x$:Q%t
Jb-Z=bl<["u3E""B:E+X5)nQ݅eԖ#ֳL	i~Tjeqk$ym,rԭέT$},Qeش$ɽS,{NE$!+eu
}dC6*uIǎC!
1E{RDB;}'F~*-X8@f`-Lj
RmG-E-nXܩ6rtK,+P[GIEuY]E$&I`TxlvJ
nT94h[(ͽMލ-i1᠔UA(dԭsxoĸI[O'cJt4伹2}]];3."Mr]E	(nPtpeL!,SwyP̭URr9$iiDWq4>EN:&%'.BFU9Fc,՛[(Q-EOZU\TQیtZ˱y|׵ZHBEEzV,%l"!v2P[$e]	WUߺ3Tjr%@⢞j[Dth]:.BFz-@*8wr+| I%@EE}EfT({G.,됦i$6.%u.rH0SEtU^[؞dYeF0)!тb~}g
ui=a-d=EER\T֠D Hhٌ:DRB<3-R)q FXV(CWAI0y8$4/hdqQѝ(Pm{B5֭KC"D}zP>Yhw+W6t11	fjbr1Ru RuU:CQYAd)[nH	ɆbJdERq}3RV&/(U*CUdCvLȫlע	bIj$
V*W$bfn]01U4>R12)$i;
n2	*1H5*tIuC|u
|6$¾w$w%)bCH:.Sft5
kO>ŭl-kyG}"Ūa-mzuTEF89'
H@%ܽ;.d3.zdDz5F }֗{Q2u8`cɮ7_sk*t6~yvy$],hEp߄E"N
jsyl#O=qN
H	$%}i	;s,Z3~^f}LNR/S=2qOWۜzGxB]`
uxJclZDo:A\'י5gK[< ۀD{+f]5$̗H3s^߄/rݱ(2c8<Vu;bCƨK~l!Kٞcdk;>oƠc*W61WĽ8)\&V?7lle?b>Ys,A
pHcR	2}.s;}9^^<=hKR/3Ydue,tHF,Q2Sj^
FٸfNakX,]R컟i:&n]RI36ɯVI
n)66LK-|3sNklRIG->?w?l6zև뭒>@]d:뒪p(
NТDc<?,]!'>v74jNԼ`[$ٽdE/P~xn@&A;L!~ʼn^d
w)r(^44VQr4ETֹmpEKNJHy%*9`J'kA4L
фWsT	(JI ;wZ!W:.g@e$'B:,@DZ ʽ|H"]rNZA񗛃T̎]WܻSLuVu=ar=${H@DOM3tLZL;-:kf,ZNnrRiؾnCC )ݻ%L:T+p$H&qNRztDíC i̽	9q*yuPdw++BH)*0yM~ܻc-JI@	O/&VE씬IX$d+wH8_-f{"m,ܚZL4նPmڵ!3[.+4+a…&%D1qQ+``jޑEw!,TM*!,MҜM
wK1کݻ|Q2H&cNmd?It`M"\vDKmUHnuHA8UqT )+uܻRy:۪̽+5`%.e] I{WkvԽVkܻR'f$Č\EIu:,[&WU}X%d-V,KW
Jq_xYF:zwdwxh\Ҽhc-
lLoν]=Eϑ7ؙHP}p6ivP$eB`mB	Wٺfɒ2=ջm
dKtwl\X(NdHHVܻ\~b*o;}=Gjke	SmlA]+QwcSG@]-ҹ'#I`Կk Y]mpe[\`%"IMK-g}G	 Y%Dӑ@j?aGA;<^sd9 $ u󛝙O.X@]-%>٥y !P(ݽ^$))r~BpU1ަ83'vƻh!kno((>'9nE*2m7[r]=?\qW.Rb_}eMf6%
Ybw"7X_fw,KWK/c?/,+,ӟ=]ߊ{WaR`ܼp'?  :8d}cYD`/o)DfVBx~Fڗ{tY;	 U&(-dh:UGqלּouzlާbmp%ڿI6?>"d0r~,=2g%&ʥr͜|k0KYiޏ@^_٢u,ҹ,a:cٔ729@	ɆkGE?Sب'%L_Ev
'}Vk#$d'cEB#Y#,6vD,RA̚]|˗2ws{gGٲf /0R dE;qpH?>cn*ADTg7j[BM˔~OTˈdľR#Ac4bɤ8t0	RáHHV~N$ȚFeYqt/b$T8ܲՉKVǂ",sByQYX'.3\M#H@ Y#
AW$A|# !Fb 9B'p
 A	>A	W|H`2Zqt/,M)P|>=
,v6\/,-&a*mN7C'z洊v?NG)vd[{+;>[2i	[|uog-N M$'R)ݞՍx8vZob;|mxw
ou&F0o4#s/DĐRa"Q?рJ搽N='HU'*%}dI1 ZhAAAAAAAAAAA`+X4IENDB`openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/static/images/docs/superuser4.png0000666000175100017510000002671713227213640033670 0ustar  zuulzuul00000000000000PNG


IHDRo?]tEXtSoftwareAdobe ImageReadyqe<-qIDATxy}_sbq,QIX(1BG	+.WrqlTTKUPXKQvTee2]m.ń,A\P"A{yݳ3==33=/1svy^3AAAAAAAAAAAAAAAAAIh?7oC/S{'jX?ШkOqRT\:3@a5jJ$2$~_f5%.KP*5;[9Li*-Mύ#xb,[)L3ؑsizLr͌
8.,Ҳhэ#˓L:<+)2UQpcBl܂8]^`N46S(M=اM$6/:ٍ;br"ZP幻WU۟>Ubz@b>
<Hd^Ƒk	Kc*-MP`1ab"."psyٯz0`ktÅq(2F
WnDx\$h1YxLmA,j]>]	7H&DddeG19DOwDHGwOjAD
ADqB.o˼1ADZ4􏣻!v4Xeuxh>=#Dj{ADFwk%
9NUT=v:"`[	 Q&_`1E%zKT0vϴb"X%(D+!"XhSdKG8A[#1MzluVj7<@YC@H
*qȴF:D,HɷNZ!8%nTKj@dF` "$?yQ8WXYLw\6DqT"?!O*WL!H DTC B%c(;Q!zδTr*	JTH\;_(m~USΣNN0( ({W9G5!έϮ1ROoOJ"P 1c7LsEF=O7{U7[g`NO̗bh2)v}&ޟ͔6ϡ߻q=kwk]ocMYYgcvy3/4z+7s"lu a]/U~"Aۣ+>;ω/y:
Il6Sx?jP-gdjn.^%D&@g߿w|tFm[?^qƯz{+8AI[D|mMZ+"$hYoIS^0GIZ)ir"r>:~~{ﰁ^ϗmm%z6x
DnwܱOwg/6
ݨxH(J'$F'[Hב9?[t#uudKL"o6V9?DqY5g;Ϫ@qYo'c  pP-kD[*a/T:=J;HQgQ:/AD"0hT4(T4$g9=_dzNR1{a+ABcENY+rȵ"gOS߾}`8
BkO-nɥHzIwE\mDlKcsY$7.q eb9_Jn,p.["NzdZ=[g]dhk%(di,?P"25qõhK:N){p@ټNfYIՙ||SX*nE{KҘI\V}`c}e4+;m)FK/GpHnza@,HC޵22;W%޲}lx45b9,Mm-ַƤ@RBWNG L9fJP}#؍,٪ͬjo`S~05ٰED¡IEHGj+3n)fI\$~s-_3iəÓ\߼e5RxǠTۨkT^"d>ni}SLWx\X]N$hkBJ
`MػB4-mϏa@jclͭ>/~VnfvzяUϑlp2ΙkmK:*nx(O`gKpԀF,0vul:IɷwCE,+lqn#o,@rTWNt훬!NHXq~s~TJ6(\;L>mZx3{-dOhM fXvvfeEMQDRyc	
Uw"ޤv$)cqY/C 0GXc.	Vn0 rI=ZUrՆPÑꤶA17ٻ	ǤC.L=H$N<,$+N:-YٽK3KмnKqEWC@ חsX)S-
{C1&%_LZb{$cR3r*$Y#
&=qN쌷U4[VY-`*n|,88<1n)PnB1vF@1@
EWuPT;/3?Yz ws|
ϙCQx<$	Hu!~*UE07<& :rz>_eF&1pib`y	IgUiz
@
"*o>Ua˧V^\k/A-{JIZsv.^UG4)!	:/JJt9~QMrW?
|	^POAH*SfؿeIy<&D#EV%ɵ=12ۈI?`R!~$YkQ3~LKY7Yl/,RxGY]E|rj4ηPP3/ͯ1)J[Qf_9M3TYFgbXno2MYgdW}JeIOwhQV*V4,R7B?v

y'AR%E{&7rmȪJc{|ш+e]͗N/XFOETzwɔՎu(ƕqz0F?}m
EU
Rpd`;c,Fn\iAT0ԴF&f\Cx26[!m qhz8a^Vo74r>Q\s;3\j"M1sWR[
q%Z-ƭR1޳R7*.S%Ht&JL8f51Xi#?lۓDgk@ꞣxwAZc?&.hX~#KeKlS71
pKHaJ"œKgwjbN$f&Ow9mJX_dvۙ`R4@+AY?%%6kЀIO>"7&#>4'\cInzSyaו,> Hb} uEr:
RA֑S!w5C)H10\):06~H|6R EɀJŌӅ~5u,	,?5;mgg'Oc7AQ
ȝ-'WdG1^'+C`|xVI:t5dY_Jp0Uw -T;pwmAj:%m9!ԙs}?uK5x9:S[G(5
kei\}NJ>XtriZ9LΔUPAkU
o]Ȱm`҄('@Z%h>̤CVI>jQZS^@dC1܉LI%TFZ߶
Pc0QLS2dCӄw^UiLY':,2sg*052[N@jfdtju|C	ƁlH.Ȏr1mת:X˷`a#nPV9Hav4wԪ+[(EJtw
ƚZSΰ+InʴR\='VLEH-j2}+̈́ntԒ)%["`[LY[ɈRSr_	eL)Q(2@ZG,YsP67Ka*H;LqtL$:B!̋9oNqTo1x
!a
ꑗ!FHU
kj@ӫ¸vbclYdx)+sn\;6|gIԚ5@H-$E]eB"& d\*ÜGtڡEjLӡb[%El7,Y$s0ٺΟ7 {.`]\j,sGv߹[0.AOp@	brdpBgY%:-X#Vq@ҥyɼ^-5S\+2NT2\;]bGTIQe")~,'h|Rvw"lmA1(
T2ei&ҭWOǁDأ)9S:QE>^3,%p/>fE"9LJzFmݙo{&;؆YYdEoI&9,	ԴJI&UrІ3gSL9/(	bj%ŋViEVn0?]ÎLuR U&0

c k
}%3,Y-&$@3KRpíJpiK2Rj JLd
YqQUxGlR(R0ynol'ƠhJ@$rzK(nYbWI
O5_17H/,nog=bo6`/bH]!ѭj#RdifJ.[4i$"n]X" 3"CnY#/πH,BY1X~ߡq"-ЌѹJ4SvH39t|S察lkRHd=Ȋ"QF8ʫfev&ݫ]ʧ>)n	~멧Ϯ-~|@VdӹY>">.ck\鵛/,=hmj!6\AH-Mj% |cFcO%it}6_5
O|Ƭv]'&هff-*{'Ϻ֊-]]3s)kv A ߚq߯\!6%5ȶͱ߾̳{!LӴ]<@ZΪ;b_k7iThձ@%	_	*{	5HaX@HS.@˪

)4%@f	&$c-uor3@%B)rjA*Hi*NH[tA	HQ18$ aA)*T
 %;	@!wR'@
@N$y]F$HP H;wg+"S) A)"	j>Nj"p-RtAjw7P"4 Afm  u0HL!¤D4/<g)ZfW6R2!uC2 u:)N;	 	k	 nw#R.	j:NA* AܦR  $)
4+H1
gxeiYRCbd
RwjK)
{ϠR_G+$(	+$(ZM)R¾$yM`_A	RTnhE%BH6$ȪFA)ʚ+@x A
@(a*@$	V AMK$-7rs	j#,$IT* m槧$5V~?d%.e'4Ma]X_ u
4CfgBC[mٟūʗ{a-9N_uRXЌl1nG"rhCƶoGc22#_+3dۀf˚a8K04@igf4N9tca$Qk6\~Bt$/^)z:x"HcJ]{*V	@"5+xϲ?Xr_1EoHw\ȄzLI"LQi5ג޳T0)0" "RT|վ4#ø{vؙ{s{9k0;pAX냠tˎl`?XP_UPz-N0߽͠
/^[`%Kx!0O!	΁'
޳M~67FF*Pfg6J:6dfQIAfil#fMQzPM.%@K{ +Rp,0pc.6ЎD0\箠jM2(`/w#<âEZ3~v=* xcdQhr
[N3yZ2dVŶ癮5]v+^`
X^*4m4,/x~9#Cx;l?F̢ӇtniItpo'T'=
n5M/Y<|I>v.>et-]"aZ:L5P+hia4jMv
Xl.3ǃ5sX
:؏Rdr!^5{=朤vP2
ǽ%MW2_R
#Wy*$dGnj# fTY(c"+\#}R<7(OWq{VdlN%mg{ nr༦^LKh,`qFK,GkSKL%Lk9Y1	"~rKւPD6w]̩%mMhCMFDt3_C`mMYIENDB`././@LongLink0000000000000000000000000000014700000000000011217 Lustar  00000000000000openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/static/images/openstack-logo-vert.pngopenstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/static/images/openstack-logo-vert.p0000666000175100017510000000122213227213640034155 0ustar  zuulzuul00000000000000PNG


IHDR;6ymYIDATxYˉ0M	-%{]\Ap	n @

!{`=3ArNbJFy3INV+%ev
`/uJV
V>qrvs|KE7'V[nY`]"=KT,纨/`0,`?䟼͍3xRRRRz%}~dIϙQ{X===W~,HeyDd=SNI`KLrM%X!@=KΘYHl)O'm9ylGl d8b-O4f\erE*[`P%
qɑU#9=$`+яpp9ԳHZshc̀,Q T5PM^u,t~Mx|׈-	Bf:+76!!+*+[VZ30>޳"Cٷ<^*VB1bLyd*hl5lSX%Rb;z
pò?"t46d+9ؠjxd\,`JJˠtteIENDB`openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/static/images/footer-linkedin.png0000666000175100017510000000217013227213640033673 0ustar  zuulzuul00000000000000PNG


IHDR((mtEXtSoftwareAdobe ImageReadyqe<IDATx̙YHQlJ6)+R^Z4{h4mշl"|(B)h})܂2|Tp
0̽wYsΙs\WAA
sDX0/4Ǡ<]:
 dQ~"$ހsxk(}x%yo `ƀ`+8
v򭇲΃ྟ2l}o=X'+qU첌'[:uT
V`rwiXWΡm|vlvvu{ܬ%=v,
$pXAs+}g{YKn03e%Z[	nkO%\:9IG,2VS7z?smiw{d8\5؁.Q4UT"
PWъcZDSLJs_v	`x""ci
Oj,["s
1@3:,85N5ɺU!(^(g%fa `''LF'=.Դn,_,uIWA+;|3a-a'MZkwX
!ve\&AL.\465݊#;2me">pN67/^sIENDB`openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/static/images/footer-youtube.png0000666000175100017510000000227113227213640033574 0ustar  zuulzuul00000000000000PNG


IHDR((mtEXtSoftwareAdobe ImageReadyqe<[IDATxęiHTQߌSY4T
ڈ/Ӿ!+RO)($0S*)lBhU`Sb5?ު?y={sdff*M0/Hc0tmWP۠NA7Z80䵷4v%%ŠT3kz$A/l'.Yu{NYp0y&@r<`$G_[l]2
RNqz#=mB9?ΞJmb~+PzSpFsmv
FRO`W(Y}g`9NJ{xMֻBE`{m5#<˦4 zF8d&C}/U-OD~I3)lxສ嶗EPu1Ld!-uk]Xs-ZD-/k|y /~MN
55C6+~yg3%ݑ@4SǍW/vdQ|d>_g$*+P*Úw@+r_2ܛO7HLdi[ʝ@4+QAqSa
ŅL޸# .bXٝ:YgmZΒ-K\c#"<IW裈>vOYyp;㦚aIl+eAqKq=)Lyے6G<
Vsz|MoMFkX}dIM3{J/"){~m0|e).+#۸2gާLJ&eIENDB`././@LongLink0000000000000000000000000000015100000000000011212 Lustar  00000000000000openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/static/images/footer-linkedin-hover.pngopenstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/static/images/footer-linkedin-hover0000666000175100017510000000213713227213640034234 0ustar  zuulzuul00000000000000PNG


IHDR((mtEXtSoftwareAdobe ImageReadyqe<IDATx̙[Hqg7E^,%z(E0LʇȊ}(KZ[7/=ҍ$)(Ԡ*3о4f=Ýfη9-$
 
$xwݠv0QxxGG?.@.Xrh(
f7	W=ssAH ,Qp~#fWGqsѳՌ~Hp@`d@1x-}BmvW
)nD~)H7@{3#888k%r7@<&`{I;GZNĩ:XzUKť)6
JLp_!ݹtmn=,ἋƓtg鎝.ZOǿ"KSZD@UKM2ʐ-""5%B-^'@k`9;lةZD6O)_e%R_+/
|_IJ7)^ʼnî~eS(q)VXrKi$@\}*6Y(n>;}ؗd>:ݒ1f.,Pr݈|{U}[!njٜO0Sj@\x#(##V6Ry,$Zk#K4c`:R=VCrNB7oqIENDB`openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/static/css/0000775000175100017510000000000013227214134027414 5ustar  zuulzuul00000000000000openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/static/css/font-awesome.min.css0000666000175100017510000007443013227213640033327 0ustar  zuulzuul00000000000000/*!
 *  Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome
 *  License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
 */@font-face{font-family:'FontAwesome';src:url('../fonts/fontawesome-webfont.eot?v=4.7.0');src:url('../fonts/fontawesome-webfont.eot?#iefix&v=4.7.0') format('embedded-opentype'),url('../fonts/fontawesome-webfont.woff2?v=4.7.0') format('woff2'),url('../fonts/fontawesome-webfont.woff?v=4.7.0') format('woff'),url('../fonts/fontawesome-webfont.ttf?v=4.7.0') format('truetype'),url('../fonts/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular') format('svg');font-weight:normal;font-style:normal}.fa{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-lg{font-size:1.33333333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.28571429em;text-align:center}.fa-ul{padding-left:0;margin-left:2.14285714em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.14285714em;width:2.14285714em;top:.14285714em;text-align:center}.fa-li.fa-lg{left:-1.85714286em}.fa-border{padding:.2em .25em .15em;border:solid .08em #eee;border-radius:.1em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left{margin-right:.3em}.fa.fa-pull-right{margin-left:.3em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.fa-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scale(-1, 1);-ms-transform:scale(-1, 1);transform:scale(-1, 1)}.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";-webkit-transform:scale(1, -1);-ms-transform:scale(1, -1);transform:scale(1, -1)}:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-flip-horizontal,:root .fa-flip-vertical{filter:none}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:"\f000"}.fa-music:before{content:"\f001"}.fa-search:before{content:"\f002"}.fa-envelope-o:before{content:"\f003"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-star-o:before{content:"\f006"}.fa-user:before{content:"\f007"}.fa-film:before{content:"\f008"}.fa-th-large:before{content:"\f009"}.fa-th:before{content:"\f00a"}.fa-th-list:before{content:"\f00b"}.fa-check:before{content:"\f00c"}.fa-remove:before,.fa-close:before,.fa-times:before{content:"\f00d"}.fa-search-plus:before{content:"\f00e"}.fa-search-minus:before{content:"\f010"}.fa-power-off:before{content:"\f011"}.fa-signal:before{content:"\f012"}.fa-gear:before,.fa-cog:before{content:"\f013"}.fa-trash-o:before{content:"\f014"}.fa-home:before{content:"\f015"}.fa-file-o:before{content:"\f016"}.fa-clock-o:before{content:"\f017"}.fa-road:before{content:"\f018"}.fa-download:before{content:"\f019"}.fa-arrow-circle-o-down:before{content:"\f01a"}.fa-arrow-circle-o-up:before{content:"\f01b"}.fa-inbox:before{content:"\f01c"}.fa-play-circle-o:before{content:"\f01d"}.fa-rotate-right:before,.fa-repeat:before{content:"\f01e"}.fa-refresh:before{content:"\f021"}.fa-list-alt:before{content:"\f022"}.fa-lock:before{content:"\f023"}.fa-flag:before{content:"\f024"}.fa-headphones:before{content:"\f025"}.fa-volume-off:before{content:"\f026"}.fa-volume-down:before{content:"\f027"}.fa-volume-up:before{content:"\f028"}.fa-qrcode:before{content:"\f029"}.fa-barcode:before{content:"\f02a"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-print:before{content:"\f02f"}.fa-camera:before{content:"\f030"}.fa-font:before{content:"\f031"}.fa-bold:before{content:"\f032"}.fa-italic:before{content:"\f033"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-align-left:before{content:"\f036"}.fa-align-center:before{content:"\f037"}.fa-align-right:before{content:"\f038"}.fa-align-justify:before{content:"\f039"}.fa-list:before{content:"\f03a"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-indent:before{content:"\f03c"}.fa-video-camera:before{content:"\f03d"}.fa-photo:before,.fa-image:before,.fa-picture-o:before{content:"\f03e"}.fa-pencil:before{content:"\f040"}.fa-map-marker:before{content:"\f041"}.fa-adjust:before{content:"\f042"}.fa-tint:before{content:"\f043"}.fa-edit:before,.fa-pencil-square-o:before{content:"\f044"}.fa-share-square-o:before{content:"\f045"}.fa-check-square-o:before{content:"\f046"}.fa-arrows:before{content:"\f047"}.fa-step-backward:before{content:"\f048"}.fa-fast-backward:before{content:"\f049"}.fa-backward:before{content:"\f04a"}.fa-play:before{content:"\f04b"}.fa-pause:before{content:"\f04c"}.fa-stop:before{content:"\f04d"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before{content:"\f050"}.fa-step-forward:before{content:"\f051"}.fa-eject:before{content:"\f052"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-plus-circle:before{content:"\f055"}.fa-minus-circle:before{content:"\f056"}.fa-times-circle:before{content:"\f057"}.fa-check-circle:before{content:"\f058"}.fa-question-circle:before{content:"\f059"}.fa-info-circle:before{content:"\f05a"}.fa-crosshairs:before{content:"\f05b"}.fa-times-circle-o:before{content:"\f05c"}.fa-check-circle-o:before{content:"\f05d"}.fa-ban:before{content:"\f05e"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-down:before{content:"\f063"}.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-expand:before{content:"\f065"}.fa-compress:before{content:"\f066"}.fa-plus:before{content:"\f067"}.fa-minus:before{content:"\f068"}.fa-asterisk:before{content:"\f069"}.fa-exclamation-circle:before{content:"\f06a"}.fa-gift:before{content:"\f06b"}.fa-leaf:before{content:"\f06c"}.fa-fire:before{content:"\f06d"}.fa-eye:before{content:"\f06e"}.fa-eye-slash:before{content:"\f070"}.fa-warning:before,.fa-exclamation-triangle:before{content:"\f071"}.fa-plane:before{content:"\f072"}.fa-calendar:before{content:"\f073"}.fa-random:before{content:"\f074"}.fa-comment:before{content:"\f075"}.fa-magnet:before{content:"\f076"}.fa-chevron-up:before{content:"\f077"}.fa-chevron-down:before{content:"\f078"}.fa-retweet:before{content:"\f079"}.fa-shopping-cart:before{content:"\f07a"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-arrows-v:before{content:"\f07d"}.fa-arrows-h:before{content:"\f07e"}.fa-bar-chart-o:before,.fa-bar-chart:before{content:"\f080"}.fa-twitter-square:before{content:"\f081"}.fa-facebook-square:before{content:"\f082"}.fa-camera-retro:before{content:"\f083"}.fa-key:before{content:"\f084"}.fa-gears:before,.fa-cogs:before{content:"\f085"}.fa-comments:before{content:"\f086"}.fa-thumbs-o-up:before{content:"\f087"}.fa-thumbs-o-down:before{content:"\f088"}.fa-star-half:before{content:"\f089"}.fa-heart-o:before{content:"\f08a"}.fa-sign-out:before{content:"\f08b"}.fa-linkedin-square:before{content:"\f08c"}.fa-thumb-tack:before{content:"\f08d"}.fa-external-link:before{content:"\f08e"}.fa-sign-in:before{content:"\f090"}.fa-trophy:before{content:"\f091"}.fa-github-square:before{content:"\f092"}.fa-upload:before{content:"\f093"}.fa-lemon-o:before{content:"\f094"}.fa-phone:before{content:"\f095"}.fa-square-o:before{content:"\f096"}.fa-bookmark-o:before{content:"\f097"}.fa-phone-square:before{content:"\f098"}.fa-twitter:before{content:"\f099"}.fa-facebook-f:before,.fa-facebook:before{content:"\f09a"}.fa-github:before{content:"\f09b"}.fa-unlock:before{content:"\f09c"}.fa-credit-card:before{content:"\f09d"}.fa-feed:before,.fa-rss:before{content:"\f09e"}.fa-hdd-o:before{content:"\f0a0"}.fa-bullhorn:before{content:"\f0a1"}.fa-bell:before{content:"\f0f3"}.fa-certificate:before{content:"\f0a3"}.fa-hand-o-right:before{content:"\f0a4"}.fa-hand-o-left:before{content:"\f0a5"}.fa-hand-o-up:before{content:"\f0a6"}.fa-hand-o-down:before{content:"\f0a7"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-globe:before{content:"\f0ac"}.fa-wrench:before{content:"\f0ad"}.fa-tasks:before{content:"\f0ae"}.fa-filter:before{content:"\f0b0"}.fa-briefcase:before{content:"\f0b1"}.fa-arrows-alt:before{content:"\f0b2"}.fa-group:before,.fa-users:before{content:"\f0c0"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-cloud:before{content:"\f0c2"}.fa-flask:before{content:"\f0c3"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-copy:before,.fa-files-o:before{content:"\f0c5"}.fa-paperclip:before{content:"\f0c6"}.fa-save:before,.fa-floppy-o:before{content:"\f0c7"}.fa-square:before{content:"\f0c8"}.fa-navicon:before,.fa-reorder:before,.fa-bars:before{content:"\f0c9"}.fa-list-ul:before{content:"\f0ca"}.fa-list-ol:before{content:"\f0cb"}.fa-strikethrough:before{content:"\f0cc"}.fa-underline:before{content:"\f0cd"}.fa-table:before{content:"\f0ce"}.fa-magic:before{content:"\f0d0"}.fa-truck:before{content:"\f0d1"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-square:before{content:"\f0d3"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-plus:before{content:"\f0d5"}.fa-money:before{content:"\f0d6"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-up:before{content:"\f0d8"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-columns:before{content:"\f0db"}.fa-unsorted:before,.fa-sort:before{content:"\f0dc"}.fa-sort-down:before,.fa-sort-desc:before{content:"\f0dd"}.fa-sort-up:before,.fa-sort-asc:before{content:"\f0de"}.fa-envelope:before{content:"\f0e0"}.fa-linkedin:before{content:"\f0e1"}.fa-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-legal:before,.fa-gavel:before{content:"\f0e3"}.fa-dashboard:before,.fa-tachometer:before{content:"\f0e4"}.fa-comment-o:before{content:"\f0e5"}.fa-comments-o:before{content:"\f0e6"}.fa-flash:before,.fa-bolt:before{content:"\f0e7"}.fa-sitemap:before{content:"\f0e8"}.fa-umbrella:before{content:"\f0e9"}.fa-paste:before,.fa-clipboard:before{content:"\f0ea"}.fa-lightbulb-o:before{content:"\f0eb"}.fa-exchange:before{content:"\f0ec"}.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-upload:before{content:"\f0ee"}.fa-user-md:before{content:"\f0f0"}.fa-stethoscope:before{content:"\f0f1"}.fa-suitcase:before{content:"\f0f2"}.fa-bell-o:before{content:"\f0a2"}.fa-coffee:before{content:"\f0f4"}.fa-cutlery:before{content:"\f0f5"}.fa-file-text-o:before{content:"\f0f6"}.fa-building-o:before{content:"\f0f7"}.fa-hospital-o:before{content:"\f0f8"}.fa-ambulance:before{content:"\f0f9"}.fa-medkit:before{content:"\f0fa"}.fa-fighter-jet:before{content:"\f0fb"}.fa-beer:before{content:"\f0fc"}.fa-h-square:before{content:"\f0fd"}.fa-plus-square:before{content:"\f0fe"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-down:before{content:"\f107"}.fa-desktop:before{content:"\f108"}.fa-laptop:before{content:"\f109"}.fa-tablet:before{content:"\f10a"}.fa-mobile-phone:before,.fa-mobile:before{content:"\f10b"}.fa-circle-o:before{content:"\f10c"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-spinner:before{content:"\f110"}.fa-circle:before{content:"\f111"}.fa-mail-reply:before,.fa-reply:before{content:"\f112"}.fa-github-alt:before{content:"\f113"}.fa-folder-o:before{content:"\f114"}.fa-folder-open-o:before{content:"\f115"}.fa-smile-o:before{content:"\f118"}.fa-frown-o:before{content:"\f119"}.fa-meh-o:before{content:"\f11a"}.fa-gamepad:before{content:"\f11b"}.fa-keyboard-o:before{content:"\f11c"}.fa-flag-o:before{content:"\f11d"}.fa-flag-checkered:before{content:"\f11e"}.fa-terminal:before{content:"\f120"}.fa-code:before{content:"\f121"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"\f123"}.fa-location-arrow:before{content:"\f124"}.fa-crop:before{content:"\f125"}.fa-code-fork:before{content:"\f126"}.fa-unlink:before,.fa-chain-broken:before{content:"\f127"}.fa-question:before{content:"\f128"}.fa-info:before{content:"\f129"}.fa-exclamation:before{content:"\f12a"}.fa-superscript:before{content:"\f12b"}.fa-subscript:before{content:"\f12c"}.fa-eraser:before{content:"\f12d"}.fa-puzzle-piece:before{content:"\f12e"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-shield:before{content:"\f132"}.fa-calendar-o:before{content:"\f133"}.fa-fire-extinguisher:before{content:"\f134"}.fa-rocket:before{content:"\f135"}.fa-maxcdn:before{content:"\f136"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-html5:before{content:"\f13b"}.fa-css3:before{content:"\f13c"}.fa-anchor:before{content:"\f13d"}.fa-unlock-alt:before{content:"\f13e"}.fa-bullseye:before{content:"\f140"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-rss-square:before{content:"\f143"}.fa-play-circle:before{content:"\f144"}.fa-ticket:before{content:"\f145"}.fa-minus-square:before{content:"\f146"}.fa-minus-square-o:before{content:"\f147"}.fa-level-up:before{content:"\f148"}.fa-level-down:before{content:"\f149"}.fa-check-square:before{content:"\f14a"}.fa-pencil-square:before{content:"\f14b"}.fa-external-link-square:before{content:"\f14c"}.fa-share-square:before{content:"\f14d"}.fa-compass:before{content:"\f14e"}.fa-toggle-down:before,.fa-caret-square-o-down:before{content:"\f150"}.fa-toggle-up:before,.fa-caret-square-o-up:before{content:"\f151"}.fa-toggle-right:before,.fa-caret-square-o-right:before{content:"\f152"}.fa-euro:before,.fa-eur:before{content:"\f153"}.fa-gbp:before{content:"\f154"}.fa-dollar:before,.fa-usd:before{content:"\f155"}.fa-rupee:before,.fa-inr:before{content:"\f156"}.fa-cny:before,.fa-rmb:before,.fa-yen:before,.fa-jpy:before{content:"\f157"}.fa-ruble:before,.fa-rouble:before,.fa-rub:before{content:"\f158"}.fa-won:before,.fa-krw:before{content:"\f159"}.fa-bitcoin:before,.fa-btc:before{content:"\f15a"}.fa-file:before{content:"\f15b"}.fa-file-text:before{content:"\f15c"}.fa-sort-alpha-asc:before{content:"\f15d"}.fa-sort-alpha-desc:before{content:"\f15e"}.fa-sort-amount-asc:before{content:"\f160"}.fa-sort-amount-desc:before{content:"\f161"}.fa-sort-numeric-asc:before{content:"\f162"}.fa-sort-numeric-desc:before{content:"\f163"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbs-down:before{content:"\f165"}.fa-youtube-square:before{content:"\f166"}.fa-youtube:before{content:"\f167"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-youtube-play:before{content:"\f16a"}.fa-dropbox:before{content:"\f16b"}.fa-stack-overflow:before{content:"\f16c"}.fa-instagram:before{content:"\f16d"}.fa-flickr:before{content:"\f16e"}.fa-adn:before{content:"\f170"}.fa-bitbucket:before{content:"\f171"}.fa-bitbucket-square:before{content:"\f172"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-long-arrow-down:before{content:"\f175"}.fa-long-arrow-up:before{content:"\f176"}.fa-long-arrow-left:before{content:"\f177"}.fa-long-arrow-right:before{content:"\f178"}.fa-apple:before{content:"\f179"}.fa-windows:before{content:"\f17a"}.fa-android:before{content:"\f17b"}.fa-linux:before{content:"\f17c"}.fa-dribbble:before{content:"\f17d"}.fa-skype:before{content:"\f17e"}.fa-foursquare:before{content:"\f180"}.fa-trello:before{content:"\f181"}.fa-female:before{content:"\f182"}.fa-male:before{content:"\f183"}.fa-gittip:before,.fa-gratipay:before{content:"\f184"}.fa-sun-o:before{content:"\f185"}.fa-moon-o:before{content:"\f186"}.fa-archive:before{content:"\f187"}.fa-bug:before{content:"\f188"}.fa-vk:before{content:"\f189"}.fa-weibo:before{content:"\f18a"}.fa-renren:before{content:"\f18b"}.fa-pagelines:before{content:"\f18c"}.fa-stack-exchange:before{content:"\f18d"}.fa-arrow-circle-o-right:before{content:"\f18e"}.fa-arrow-circle-o-left:before{content:"\f190"}.fa-toggle-left:before,.fa-caret-square-o-left:before{content:"\f191"}.fa-dot-circle-o:before{content:"\f192"}.fa-wheelchair:before{content:"\f193"}.fa-vimeo-square:before{content:"\f194"}.fa-turkish-lira:before,.fa-try:before{content:"\f195"}.fa-plus-square-o:before{content:"\f196"}.fa-space-shuttle:before{content:"\f197"}.fa-slack:before{content:"\f198"}.fa-envelope-square:before{content:"\f199"}.fa-wordpress:before{content:"\f19a"}.fa-openid:before{content:"\f19b"}.fa-institution:before,.fa-bank:before,.fa-university:before{content:"\f19c"}.fa-mortar-board:before,.fa-graduation-cap:before{content:"\f19d"}.fa-yahoo:before{content:"\f19e"}.fa-google:before{content:"\f1a0"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-square:before{content:"\f1a2"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-stumbleupon:before{content:"\f1a4"}.fa-delicious:before{content:"\f1a5"}.fa-digg:before{content:"\f1a6"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-drupal:before{content:"\f1a9"}.fa-joomla:before{content:"\f1aa"}.fa-language:before{content:"\f1ab"}.fa-fax:before{content:"\f1ac"}.fa-building:before{content:"\f1ad"}.fa-child:before{content:"\f1ae"}.fa-paw:before{content:"\f1b0"}.fa-spoon:before{content:"\f1b1"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-recycle:before{content:"\f1b8"}.fa-automobile:before,.fa-car:before{content:"\f1b9"}.fa-cab:before,.fa-taxi:before{content:"\f1ba"}.fa-tree:before{content:"\f1bb"}.fa-spotify:before{content:"\f1bc"}.fa-deviantart:before{content:"\f1bd"}.fa-soundcloud:before{content:"\f1be"}.fa-database:before{content:"\f1c0"}.fa-file-pdf-o:before{content:"\f1c1"}.fa-file-word-o:before{content:"\f1c2"}.fa-file-excel-o:before{content:"\f1c3"}.fa-file-powerpoint-o:before{content:"\f1c4"}.fa-file-photo-o:before,.fa-file-picture-o:before,.fa-file-image-o:before{content:"\f1c5"}.fa-file-zip-o:before,.fa-file-archive-o:before{content:"\f1c6"}.fa-file-sound-o:before,.fa-file-audio-o:before{content:"\f1c7"}.fa-file-movie-o:before,.fa-file-video-o:before{content:"\f1c8"}.fa-file-code-o:before{content:"\f1c9"}.fa-vine:before{content:"\f1ca"}.fa-codepen:before{content:"\f1cb"}.fa-jsfiddle:before{content:"\f1cc"}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-saver:before,.fa-support:before,.fa-life-ring:before{content:"\f1cd"}.fa-circle-o-notch:before{content:"\f1ce"}.fa-ra:before,.fa-resistance:before,.fa-rebel:before{content:"\f1d0"}.fa-ge:before,.fa-empire:before{content:"\f1d1"}.fa-git-square:before{content:"\f1d2"}.fa-git:before{content:"\f1d3"}.fa-y-combinator-square:before,.fa-yc-square:before,.fa-hacker-news:before{content:"\f1d4"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-qq:before{content:"\f1d6"}.fa-wechat:before,.fa-weixin:before{content:"\f1d7"}.fa-send:before,.fa-paper-plane:before{content:"\f1d8"}.fa-send-o:before,.fa-paper-plane-o:before{content:"\f1d9"}.fa-history:before{content:"\f1da"}.fa-circle-thin:before{content:"\f1db"}.fa-header:before{content:"\f1dc"}.fa-paragraph:before{content:"\f1dd"}.fa-sliders:before{content:"\f1de"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-bomb:before{content:"\f1e2"}.fa-soccer-ball-o:before,.fa-futbol-o:before{content:"\f1e3"}.fa-tty:before{content:"\f1e4"}.fa-binoculars:before{content:"\f1e5"}.fa-plug:before{content:"\f1e6"}.fa-slideshare:before{content:"\f1e7"}.fa-twitch:before{content:"\f1e8"}.fa-yelp:before{content:"\f1e9"}.fa-newspaper-o:before{content:"\f1ea"}.fa-wifi:before{content:"\f1eb"}.fa-calculator:before{content:"\f1ec"}.fa-paypal:before{content:"\f1ed"}.fa-google-wallet:before{content:"\f1ee"}.fa-cc-visa:before{content:"\f1f0"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-bell-slash:before{content:"\f1f6"}.fa-bell-slash-o:before{content:"\f1f7"}.fa-trash:before{content:"\f1f8"}.fa-copyright:before{content:"\f1f9"}.fa-at:before{content:"\f1fa"}.fa-eyedropper:before{content:"\f1fb"}.fa-paint-brush:before{content:"\f1fc"}.fa-birthday-cake:before{content:"\f1fd"}.fa-area-chart:before{content:"\f1fe"}.fa-pie-chart:before{content:"\f200"}.fa-line-chart:before{content:"\f201"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-bicycle:before{content:"\f206"}.fa-bus:before{content:"\f207"}.fa-ioxhost:before{content:"\f208"}.fa-angellist:before{content:"\f209"}.fa-cc:before{content:"\f20a"}.fa-shekel:before,.fa-sheqel:before,.fa-ils:before{content:"\f20b"}.fa-meanpath:before{content:"\f20c"}.fa-buysellads:before{content:"\f20d"}.fa-connectdevelop:before{content:"\f20e"}.fa-dashcube:before{content:"\f210"}.fa-forumbee:before{content:"\f211"}.fa-leanpub:before{content:"\f212"}.fa-sellsy:before{content:"\f213"}.fa-shirtsinbulk:before{content:"\f214"}.fa-simplybuilt:before{content:"\f215"}.fa-skyatlas:before{content:"\f216"}.fa-cart-plus:before{content:"\f217"}.fa-cart-arrow-down:before{content:"\f218"}.fa-diamond:before{content:"\f219"}.fa-ship:before{content:"\f21a"}.fa-user-secret:before{content:"\f21b"}.fa-motorcycle:before{content:"\f21c"}.fa-street-view:before{content:"\f21d"}.fa-heartbeat:before{content:"\f21e"}.fa-venus:before{content:"\f221"}.fa-mars:before{content:"\f222"}.fa-mercury:before{content:"\f223"}.fa-intersex:before,.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-venus-double:before{content:"\f226"}.fa-mars-double:before{content:"\f227"}.fa-venus-mars:before{content:"\f228"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-neuter:before{content:"\f22c"}.fa-genderless:before{content:"\f22d"}.fa-facebook-official:before{content:"\f230"}.fa-pinterest-p:before{content:"\f231"}.fa-whatsapp:before{content:"\f232"}.fa-server:before{content:"\f233"}.fa-user-plus:before{content:"\f234"}.fa-user-times:before{content:"\f235"}.fa-hotel:before,.fa-bed:before{content:"\f236"}.fa-viacoin:before{content:"\f237"}.fa-train:before{content:"\f238"}.fa-subway:before{content:"\f239"}.fa-medium:before{content:"\f23a"}.fa-yc:before,.fa-y-combinator:before{content:"\f23b"}.fa-optin-monster:before{content:"\f23c"}.fa-opencart:before{content:"\f23d"}.fa-expeditedssl:before{content:"\f23e"}.fa-battery-4:before,.fa-battery:before,.fa-battery-full:before{content:"\f240"}.fa-battery-3:before,.fa-battery-three-quarters:before{content:"\f241"}.fa-battery-2:before,.fa-battery-half:before{content:"\f242"}.fa-battery-1:before,.fa-battery-quarter:before{content:"\f243"}.fa-battery-0:before,.fa-battery-empty:before{content:"\f244"}.fa-mouse-pointer:before{content:"\f245"}.fa-i-cursor:before{content:"\f246"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-sticky-note:before{content:"\f249"}.fa-sticky-note-o:before{content:"\f24a"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-diners-club:before{content:"\f24c"}.fa-clone:before{content:"\f24d"}.fa-balance-scale:before{content:"\f24e"}.fa-hourglass-o:before{content:"\f250"}.fa-hourglass-1:before,.fa-hourglass-start:before{content:"\f251"}.fa-hourglass-2:before,.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-3:before,.fa-hourglass-end:before{content:"\f253"}.fa-hourglass:before{content:"\f254"}.fa-hand-grab-o:before,.fa-hand-rock-o:before{content:"\f255"}.fa-hand-stop-o:before,.fa-hand-paper-o:before{content:"\f256"}.fa-hand-scissors-o:before{content:"\f257"}.fa-hand-lizard-o:before{content:"\f258"}.fa-hand-spock-o:before{content:"\f259"}.fa-hand-pointer-o:before{content:"\f25a"}.fa-hand-peace-o:before{content:"\f25b"}.fa-trademark:before{content:"\f25c"}.fa-registered:before{content:"\f25d"}.fa-creative-commons:before{content:"\f25e"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-tripadvisor:before{content:"\f262"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-get-pocket:before{content:"\f265"}.fa-wikipedia-w:before{content:"\f266"}.fa-safari:before{content:"\f267"}.fa-chrome:before{content:"\f268"}.fa-firefox:before{content:"\f269"}.fa-opera:before{content:"\f26a"}.fa-internet-explorer:before{content:"\f26b"}.fa-tv:before,.fa-television:before{content:"\f26c"}.fa-contao:before{content:"\f26d"}.fa-500px:before{content:"\f26e"}.fa-amazon:before{content:"\f270"}.fa-calendar-plus-o:before{content:"\f271"}.fa-calendar-minus-o:before{content:"\f272"}.fa-calendar-times-o:before{content:"\f273"}.fa-calendar-check-o:before{content:"\f274"}.fa-industry:before{content:"\f275"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-map-o:before{content:"\f278"}.fa-map:before{content:"\f279"}.fa-commenting:before{content:"\f27a"}.fa-commenting-o:before{content:"\f27b"}.fa-houzz:before{content:"\f27c"}.fa-vimeo:before{content:"\f27d"}.fa-black-tie:before{content:"\f27e"}.fa-fonticons:before{content:"\f280"}.fa-reddit-alien:before{content:"\f281"}.fa-edge:before{content:"\f282"}.fa-credit-card-alt:before{content:"\f283"}.fa-codiepie:before{content:"\f284"}.fa-modx:before{content:"\f285"}.fa-fort-awesome:before{content:"\f286"}.fa-usb:before{content:"\f287"}.fa-product-hunt:before{content:"\f288"}.fa-mixcloud:before{content:"\f289"}.fa-scribd:before{content:"\f28a"}.fa-pause-circle:before{content:"\f28b"}.fa-pause-circle-o:before{content:"\f28c"}.fa-stop-circle:before{content:"\f28d"}.fa-stop-circle-o:before{content:"\f28e"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-hashtag:before{content:"\f292"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-percent:before{content:"\f295"}.fa-gitlab:before{content:"\f296"}.fa-wpbeginner:before{content:"\f297"}.fa-wpforms:before{content:"\f298"}.fa-envira:before{content:"\f299"}.fa-universal-access:before{content:"\f29a"}.fa-wheelchair-alt:before{content:"\f29b"}.fa-question-circle-o:before{content:"\f29c"}.fa-blind:before{content:"\f29d"}.fa-audio-description:before{content:"\f29e"}.fa-volume-control-phone:before{content:"\f2a0"}.fa-braille:before{content:"\f2a1"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asl-interpreting:before,.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-deafness:before,.fa-hard-of-hearing:before,.fa-deaf:before{content:"\f2a4"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-signing:before,.fa-sign-language:before{content:"\f2a7"}.fa-low-vision:before{content:"\f2a8"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-pied-piper:before{content:"\f2ae"}.fa-first-order:before{content:"\f2b0"}.fa-yoast:before{content:"\f2b1"}.fa-themeisle:before{content:"\f2b2"}.fa-google-plus-circle:before,.fa-google-plus-official:before{content:"\f2b3"}.fa-fa:before,.fa-font-awesome:before{content:"\f2b4"}.fa-handshake-o:before{content:"\f2b5"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-open-o:before{content:"\f2b7"}.fa-linode:before{content:"\f2b8"}.fa-address-book:before{content:"\f2b9"}.fa-address-book-o:before{content:"\f2ba"}.fa-vcard:before,.fa-address-card:before{content:"\f2bb"}.fa-vcard-o:before,.fa-address-card-o:before{content:"\f2bc"}.fa-user-circle:before{content:"\f2bd"}.fa-user-circle-o:before{content:"\f2be"}.fa-user-o:before{content:"\f2c0"}.fa-id-badge:before{content:"\f2c1"}.fa-drivers-license:before,.fa-id-card:before{content:"\f2c2"}.fa-drivers-license-o:before,.fa-id-card-o:before{content:"\f2c3"}.fa-quora:before{content:"\f2c4"}.fa-free-code-camp:before{content:"\f2c5"}.fa-telegram:before{content:"\f2c6"}.fa-thermometer-4:before,.fa-thermometer:before,.fa-thermometer-full:before{content:"\f2c7"}.fa-thermometer-3:before,.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-thermometer-2:before,.fa-thermometer-half:before{content:"\f2c9"}.fa-thermometer-1:before,.fa-thermometer-quarter:before{content:"\f2ca"}.fa-thermometer-0:before,.fa-thermometer-empty:before{content:"\f2cb"}.fa-shower:before{content:"\f2cc"}.fa-bathtub:before,.fa-s15:before,.fa-bath:before{content:"\f2cd"}.fa-podcast:before{content:"\f2ce"}.fa-window-maximize:before{content:"\f2d0"}.fa-window-minimize:before{content:"\f2d1"}.fa-window-restore:before{content:"\f2d2"}.fa-times-rectangle:before,.fa-window-close:before{content:"\f2d3"}.fa-times-rectangle-o:before,.fa-window-close-o:before{content:"\f2d4"}.fa-bandcamp:before{content:"\f2d5"}.fa-grav:before{content:"\f2d6"}.fa-etsy:before{content:"\f2d7"}.fa-imdb:before{content:"\f2d8"}.fa-ravelry:before{content:"\f2d9"}.fa-eercast:before{content:"\f2da"}.fa-microchip:before{content:"\f2db"}.fa-snowflake-o:before{content:"\f2dc"}.fa-superpowers:before{content:"\f2dd"}.fa-wpexplorer:before{content:"\f2de"}.fa-meetup:before{content:"\f2e0"}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}
openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/static/css/font-awesome.css0000666000175100017510000011104613227213640032540 0ustar  zuulzuul00000000000000/*!
 *  Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome
 *  License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
 */
/* FONT PATH
 * -------------------------- */
@font-face {
  font-family: 'FontAwesome';
  src: url('../fonts/fontawesome-webfont.eot?v=4.7.0');
  src: url('../fonts/fontawesome-webfont.eot?#iefix&v=4.7.0') format('embedded-opentype'), url('../fonts/fontawesome-webfont.woff2?v=4.7.0') format('woff2'), url('../fonts/fontawesome-webfont.woff?v=4.7.0') format('woff'), url('../fonts/fontawesome-webfont.ttf?v=4.7.0') format('truetype'), url('../fonts/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular') format('svg');
  font-weight: normal;
  font-style: normal;
}
.fa {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
/* makes the font 33% larger relative to the icon container */
.fa-lg {
  font-size: 1.33333333em;
  line-height: 0.75em;
  vertical-align: -15%;
}
.fa-2x {
  font-size: 2em;
}
.fa-3x {
  font-size: 3em;
}
.fa-4x {
  font-size: 4em;
}
.fa-5x {
  font-size: 5em;
}
.fa-fw {
  width: 1.28571429em;
  text-align: center;
}
.fa-ul {
  padding-left: 0;
  margin-left: 2.14285714em;
  list-style-type: none;
}
.fa-ul > li {
  position: relative;
}
.fa-li {
  position: absolute;
  left: -2.14285714em;
  width: 2.14285714em;
  top: 0.14285714em;
  text-align: center;
}
.fa-li.fa-lg {
  left: -1.85714286em;
}
.fa-border {
  padding: .2em .25em .15em;
  border: solid 0.08em #eeeeee;
  border-radius: .1em;
}
.fa-pull-left {
  float: left;
}
.fa-pull-right {
  float: right;
}
.fa.fa-pull-left {
  margin-right: .3em;
}
.fa.fa-pull-right {
  margin-left: .3em;
}
/* Deprecated as of 4.4.0 */
.pull-right {
  float: right;
}
.pull-left {
  float: left;
}
.fa.pull-left {
  margin-right: .3em;
}
.fa.pull-right {
  margin-left: .3em;
}
.fa-spin {
  -webkit-animation: fa-spin 2s infinite linear;
  animation: fa-spin 2s infinite linear;
}
.fa-pulse {
  -webkit-animation: fa-spin 1s infinite steps(8);
  animation: fa-spin 1s infinite steps(8);
}
@-webkit-keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
@keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
.fa-rotate-90 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}
.fa-rotate-180 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}
.fa-rotate-270 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
  -webkit-transform: rotate(270deg);
  -ms-transform: rotate(270deg);
  transform: rotate(270deg);
}
.fa-flip-horizontal {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
  -webkit-transform: scale(-1, 1);
  -ms-transform: scale(-1, 1);
  transform: scale(-1, 1);
}
.fa-flip-vertical {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
  -webkit-transform: scale(1, -1);
  -ms-transform: scale(1, -1);
  transform: scale(1, -1);
}
:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical {
  filter: none;
}
.fa-stack {
  position: relative;
  display: inline-block;
  width: 2em;
  height: 2em;
  line-height: 2em;
  vertical-align: middle;
}
.fa-stack-1x,
.fa-stack-2x {
  position: absolute;
  left: 0;
  width: 100%;
  text-align: center;
}
.fa-stack-1x {
  line-height: inherit;
}
.fa-stack-2x {
  font-size: 2em;
}
.fa-inverse {
  color: #ffffff;
}
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
   readers do not read off random characters that represent icons */
.fa-glass:before {
  content: "\f000";
}
.fa-music:before {
  content: "\f001";
}
.fa-search:before {
  content: "\f002";
}
.fa-envelope-o:before {
  content: "\f003";
}
.fa-heart:before {
  content: "\f004";
}
.fa-star:before {
  content: "\f005";
}
.fa-star-o:before {
  content: "\f006";
}
.fa-user:before {
  content: "\f007";
}
.fa-film:before {
  content: "\f008";
}
.fa-th-large:before {
  content: "\f009";
}
.fa-th:before {
  content: "\f00a";
}
.fa-th-list:before {
  content: "\f00b";
}
.fa-check:before {
  content: "\f00c";
}
.fa-remove:before,
.fa-close:before,
.fa-times:before {
  content: "\f00d";
}
.fa-search-plus:before {
  content: "\f00e";
}
.fa-search-minus:before {
  content: "\f010";
}
.fa-power-off:before {
  content: "\f011";
}
.fa-signal:before {
  content: "\f012";
}
.fa-gear:before,
.fa-cog:before {
  content: "\f013";
}
.fa-trash-o:before {
  content: "\f014";
}
.fa-home:before {
  content: "\f015";
}
.fa-file-o:before {
  content: "\f016";
}
.fa-clock-o:before {
  content: "\f017";
}
.fa-road:before {
  content: "\f018";
}
.fa-download:before {
  content: "\f019";
}
.fa-arrow-circle-o-down:before {
  content: "\f01a";
}
.fa-arrow-circle-o-up:before {
  content: "\f01b";
}
.fa-inbox:before {
  content: "\f01c";
}
.fa-play-circle-o:before {
  content: "\f01d";
}
.fa-rotate-right:before,
.fa-repeat:before {
  content: "\f01e";
}
.fa-refresh:before {
  content: "\f021";
}
.fa-list-alt:before {
  content: "\f022";
}
.fa-lock:before {
  content: "\f023";
}
.fa-flag:before {
  content: "\f024";
}
.fa-headphones:before {
  content: "\f025";
}
.fa-volume-off:before {
  content: "\f026";
}
.fa-volume-down:before {
  content: "\f027";
}
.fa-volume-up:before {
  content: "\f028";
}
.fa-qrcode:before {
  content: "\f029";
}
.fa-barcode:before {
  content: "\f02a";
}
.fa-tag:before {
  content: "\f02b";
}
.fa-tags:before {
  content: "\f02c";
}
.fa-book:before {
  content: "\f02d";
}
.fa-bookmark:before {
  content: "\f02e";
}
.fa-print:before {
  content: "\f02f";
}
.fa-camera:before {
  content: "\f030";
}
.fa-font:before {
  content: "\f031";
}
.fa-bold:before {
  content: "\f032";
}
.fa-italic:before {
  content: "\f033";
}
.fa-text-height:before {
  content: "\f034";
}
.fa-text-width:before {
  content: "\f035";
}
.fa-align-left:before {
  content: "\f036";
}
.fa-align-center:before {
  content: "\f037";
}
.fa-align-right:before {
  content: "\f038";
}
.fa-align-justify:before {
  content: "\f039";
}
.fa-list:before {
  content: "\f03a";
}
.fa-dedent:before,
.fa-outdent:before {
  content: "\f03b";
}
.fa-indent:before {
  content: "\f03c";
}
.fa-video-camera:before {
  content: "\f03d";
}
.fa-photo:before,
.fa-image:before,
.fa-picture-o:before {
  content: "\f03e";
}
.fa-pencil:before {
  content: "\f040";
}
.fa-map-marker:before {
  content: "\f041";
}
.fa-adjust:before {
  content: "\f042";
}
.fa-tint:before {
  content: "\f043";
}
.fa-edit:before,
.fa-pencil-square-o:before {
  content: "\f044";
}
.fa-share-square-o:before {
  content: "\f045";
}
.fa-check-square-o:before {
  content: "\f046";
}
.fa-arrows:before {
  content: "\f047";
}
.fa-step-backward:before {
  content: "\f048";
}
.fa-fast-backward:before {
  content: "\f049";
}
.fa-backward:before {
  content: "\f04a";
}
.fa-play:before {
  content: "\f04b";
}
.fa-pause:before {
  content: "\f04c";
}
.fa-stop:before {
  content: "\f04d";
}
.fa-forward:before {
  content: "\f04e";
}
.fa-fast-forward:before {
  content: "\f050";
}
.fa-step-forward:before {
  content: "\f051";
}
.fa-eject:before {
  content: "\f052";
}
.fa-chevron-left:before {
  content: "\f053";
}
.fa-chevron-right:before {
  content: "\f054";
}
.fa-plus-circle:before {
  content: "\f055";
}
.fa-minus-circle:before {
  content: "\f056";
}
.fa-times-circle:before {
  content: "\f057";
}
.fa-check-circle:before {
  content: "\f058";
}
.fa-question-circle:before {
  content: "\f059";
}
.fa-info-circle:before {
  content: "\f05a";
}
.fa-crosshairs:before {
  content: "\f05b";
}
.fa-times-circle-o:before {
  content: "\f05c";
}
.fa-check-circle-o:before {
  content: "\f05d";
}
.fa-ban:before {
  content: "\f05e";
}
.fa-arrow-left:before {
  content: "\f060";
}
.fa-arrow-right:before {
  content: "\f061";
}
.fa-arrow-up:before {
  content: "\f062";
}
.fa-arrow-down:before {
  content: "\f063";
}
.fa-mail-forward:before,
.fa-share:before {
  content: "\f064";
}
.fa-expand:before {
  content: "\f065";
}
.fa-compress:before {
  content: "\f066";
}
.fa-plus:before {
  content: "\f067";
}
.fa-minus:before {
  content: "\f068";
}
.fa-asterisk:before {
  content: "\f069";
}
.fa-exclamation-circle:before {
  content: "\f06a";
}
.fa-gift:before {
  content: "\f06b";
}
.fa-leaf:before {
  content: "\f06c";
}
.fa-fire:before {
  content: "\f06d";
}
.fa-eye:before {
  content: "\f06e";
}
.fa-eye-slash:before {
  content: "\f070";
}
.fa-warning:before,
.fa-exclamation-triangle:before {
  content: "\f071";
}
.fa-plane:before {
  content: "\f072";
}
.fa-calendar:before {
  content: "\f073";
}
.fa-random:before {
  content: "\f074";
}
.fa-comment:before {
  content: "\f075";
}
.fa-magnet:before {
  content: "\f076";
}
.fa-chevron-up:before {
  content: "\f077";
}
.fa-chevron-down:before {
  content: "\f078";
}
.fa-retweet:before {
  content: "\f079";
}
.fa-shopping-cart:before {
  content: "\f07a";
}
.fa-folder:before {
  content: "\f07b";
}
.fa-folder-open:before {
  content: "\f07c";
}
.fa-arrows-v:before {
  content: "\f07d";
}
.fa-arrows-h:before {
  content: "\f07e";
}
.fa-bar-chart-o:before,
.fa-bar-chart:before {
  content: "\f080";
}
.fa-twitter-square:before {
  content: "\f081";
}
.fa-facebook-square:before {
  content: "\f082";
}
.fa-camera-retro:before {
  content: "\f083";
}
.fa-key:before {
  content: "\f084";
}
.fa-gears:before,
.fa-cogs:before {
  content: "\f085";
}
.fa-comments:before {
  content: "\f086";
}
.fa-thumbs-o-up:before {
  content: "\f087";
}
.fa-thumbs-o-down:before {
  content: "\f088";
}
.fa-star-half:before {
  content: "\f089";
}
.fa-heart-o:before {
  content: "\f08a";
}
.fa-sign-out:before {
  content: "\f08b";
}
.fa-linkedin-square:before {
  content: "\f08c";
}
.fa-thumb-tack:before {
  content: "\f08d";
}
.fa-external-link:before {
  content: "\f08e";
}
.fa-sign-in:before {
  content: "\f090";
}
.fa-trophy:before {
  content: "\f091";
}
.fa-github-square:before {
  content: "\f092";
}
.fa-upload:before {
  content: "\f093";
}
.fa-lemon-o:before {
  content: "\f094";
}
.fa-phone:before {
  content: "\f095";
}
.fa-square-o:before {
  content: "\f096";
}
.fa-bookmark-o:before {
  content: "\f097";
}
.fa-phone-square:before {
  content: "\f098";
}
.fa-twitter:before {
  content: "\f099";
}
.fa-facebook-f:before,
.fa-facebook:before {
  content: "\f09a";
}
.fa-github:before {
  content: "\f09b";
}
.fa-unlock:before {
  content: "\f09c";
}
.fa-credit-card:before {
  content: "\f09d";
}
.fa-feed:before,
.fa-rss:before {
  content: "\f09e";
}
.fa-hdd-o:before {
  content: "\f0a0";
}
.fa-bullhorn:before {
  content: "\f0a1";
}
.fa-bell:before {
  content: "\f0f3";
}
.fa-certificate:before {
  content: "\f0a3";
}
.fa-hand-o-right:before {
  content: "\f0a4";
}
.fa-hand-o-left:before {
  content: "\f0a5";
}
.fa-hand-o-up:before {
  content: "\f0a6";
}
.fa-hand-o-down:before {
  content: "\f0a7";
}
.fa-arrow-circle-left:before {
  content: "\f0a8";
}
.fa-arrow-circle-right:before {
  content: "\f0a9";
}
.fa-arrow-circle-up:before {
  content: "\f0aa";
}
.fa-arrow-circle-down:before {
  content: "\f0ab";
}
.fa-globe:before {
  content: "\f0ac";
}
.fa-wrench:before {
  content: "\f0ad";
}
.fa-tasks:before {
  content: "\f0ae";
}
.fa-filter:before {
  content: "\f0b0";
}
.fa-briefcase:before {
  content: "\f0b1";
}
.fa-arrows-alt:before {
  content: "\f0b2";
}
.fa-group:before,
.fa-users:before {
  content: "\f0c0";
}
.fa-chain:before,
.fa-link:before {
  content: "\f0c1";
}
.fa-cloud:before {
  content: "\f0c2";
}
.fa-flask:before {
  content: "\f0c3";
}
.fa-cut:before,
.fa-scissors:before {
  content: "\f0c4";
}
.fa-copy:before,
.fa-files-o:before {
  content: "\f0c5";
}
.fa-paperclip:before {
  content: "\f0c6";
}
.fa-save:before,
.fa-floppy-o:before {
  content: "\f0c7";
}
.fa-square:before {
  content: "\f0c8";
}
.fa-navicon:before,
.fa-reorder:before,
.fa-bars:before {
  content: "\f0c9";
}
.fa-list-ul:before {
  content: "\f0ca";
}
.fa-list-ol:before {
  content: "\f0cb";
}
.fa-strikethrough:before {
  content: "\f0cc";
}
.fa-underline:before {
  content: "\f0cd";
}
.fa-table:before {
  content: "\f0ce";
}
.fa-magic:before {
  content: "\f0d0";
}
.fa-truck:before {
  content: "\f0d1";
}
.fa-pinterest:before {
  content: "\f0d2";
}
.fa-pinterest-square:before {
  content: "\f0d3";
}
.fa-google-plus-square:before {
  content: "\f0d4";
}
.fa-google-plus:before {
  content: "\f0d5";
}
.fa-money:before {
  content: "\f0d6";
}
.fa-caret-down:before {
  content: "\f0d7";
}
.fa-caret-up:before {
  content: "\f0d8";
}
.fa-caret-left:before {
  content: "\f0d9";
}
.fa-caret-right:before {
  content: "\f0da";
}
.fa-columns:before {
  content: "\f0db";
}
.fa-unsorted:before,
.fa-sort:before {
  content: "\f0dc";
}
.fa-sort-down:before,
.fa-sort-desc:before {
  content: "\f0dd";
}
.fa-sort-up:before,
.fa-sort-asc:before {
  content: "\f0de";
}
.fa-envelope:before {
  content: "\f0e0";
}
.fa-linkedin:before {
  content: "\f0e1";
}
.fa-rotate-left:before,
.fa-undo:before {
  content: "\f0e2";
}
.fa-legal:before,
.fa-gavel:before {
  content: "\f0e3";
}
.fa-dashboard:before,
.fa-tachometer:before {
  content: "\f0e4";
}
.fa-comment-o:before {
  content: "\f0e5";
}
.fa-comments-o:before {
  content: "\f0e6";
}
.fa-flash:before,
.fa-bolt:before {
  content: "\f0e7";
}
.fa-sitemap:before {
  content: "\f0e8";
}
.fa-umbrella:before {
  content: "\f0e9";
}
.fa-paste:before,
.fa-clipboard:before {
  content: "\f0ea";
}
.fa-lightbulb-o:before {
  content: "\f0eb";
}
.fa-exchange:before {
  content: "\f0ec";
}
.fa-cloud-download:before {
  content: "\f0ed";
}
.fa-cloud-upload:before {
  content: "\f0ee";
}
.fa-user-md:before {
  content: "\f0f0";
}
.fa-stethoscope:before {
  content: "\f0f1";
}
.fa-suitcase:before {
  content: "\f0f2";
}
.fa-bell-o:before {
  content: "\f0a2";
}
.fa-coffee:before {
  content: "\f0f4";
}
.fa-cutlery:before {
  content: "\f0f5";
}
.fa-file-text-o:before {
  content: "\f0f6";
}
.fa-building-o:before {
  content: "\f0f7";
}
.fa-hospital-o:before {
  content: "\f0f8";
}
.fa-ambulance:before {
  content: "\f0f9";
}
.fa-medkit:before {
  content: "\f0fa";
}
.fa-fighter-jet:before {
  content: "\f0fb";
}
.fa-beer:before {
  content: "\f0fc";
}
.fa-h-square:before {
  content: "\f0fd";
}
.fa-plus-square:before {
  content: "\f0fe";
}
.fa-angle-double-left:before {
  content: "\f100";
}
.fa-angle-double-right:before {
  content: "\f101";
}
.fa-angle-double-up:before {
  content: "\f102";
}
.fa-angle-double-down:before {
  content: "\f103";
}
.fa-angle-left:before {
  content: "\f104";
}
.fa-angle-right:before {
  content: "\f105";
}
.fa-angle-up:before {
  content: "\f106";
}
.fa-angle-down:before {
  content: "\f107";
}
.fa-desktop:before {
  content: "\f108";
}
.fa-laptop:before {
  content: "\f109";
}
.fa-tablet:before {
  content: "\f10a";
}
.fa-mobile-phone:before,
.fa-mobile:before {
  content: "\f10b";
}
.fa-circle-o:before {
  content: "\f10c";
}
.fa-quote-left:before {
  content: "\f10d";
}
.fa-quote-right:before {
  content: "\f10e";
}
.fa-spinner:before {
  content: "\f110";
}
.fa-circle:before {
  content: "\f111";
}
.fa-mail-reply:before,
.fa-reply:before {
  content: "\f112";
}
.fa-github-alt:before {
  content: "\f113";
}
.fa-folder-o:before {
  content: "\f114";
}
.fa-folder-open-o:before {
  content: "\f115";
}
.fa-smile-o:before {
  content: "\f118";
}
.fa-frown-o:before {
  content: "\f119";
}
.fa-meh-o:before {
  content: "\f11a";
}
.fa-gamepad:before {
  content: "\f11b";
}
.fa-keyboard-o:before {
  content: "\f11c";
}
.fa-flag-o:before {
  content: "\f11d";
}
.fa-flag-checkered:before {
  content: "\f11e";
}
.fa-terminal:before {
  content: "\f120";
}
.fa-code:before {
  content: "\f121";
}
.fa-mail-reply-all:before,
.fa-reply-all:before {
  content: "\f122";
}
.fa-star-half-empty:before,
.fa-star-half-full:before,
.fa-star-half-o:before {
  content: "\f123";
}
.fa-location-arrow:before {
  content: "\f124";
}
.fa-crop:before {
  content: "\f125";
}
.fa-code-fork:before {
  content: "\f126";
}
.fa-unlink:before,
.fa-chain-broken:before {
  content: "\f127";
}
.fa-question:before {
  content: "\f128";
}
.fa-info:before {
  content: "\f129";
}
.fa-exclamation:before {
  content: "\f12a";
}
.fa-superscript:before {
  content: "\f12b";
}
.fa-subscript:before {
  content: "\f12c";
}
.fa-eraser:before {
  content: "\f12d";
}
.fa-puzzle-piece:before {
  content: "\f12e";
}
.fa-microphone:before {
  content: "\f130";
}
.fa-microphone-slash:before {
  content: "\f131";
}
.fa-shield:before {
  content: "\f132";
}
.fa-calendar-o:before {
  content: "\f133";
}
.fa-fire-extinguisher:before {
  content: "\f134";
}
.fa-rocket:before {
  content: "\f135";
}
.fa-maxcdn:before {
  content: "\f136";
}
.fa-chevron-circle-left:before {
  content: "\f137";
}
.fa-chevron-circle-right:before {
  content: "\f138";
}
.fa-chevron-circle-up:before {
  content: "\f139";
}
.fa-chevron-circle-down:before {
  content: "\f13a";
}
.fa-html5:before {
  content: "\f13b";
}
.fa-css3:before {
  content: "\f13c";
}
.fa-anchor:before {
  content: "\f13d";
}
.fa-unlock-alt:before {
  content: "\f13e";
}
.fa-bullseye:before {
  content: "\f140";
}
.fa-ellipsis-h:before {
  content: "\f141";
}
.fa-ellipsis-v:before {
  content: "\f142";
}
.fa-rss-square:before {
  content: "\f143";
}
.fa-play-circle:before {
  content: "\f144";
}
.fa-ticket:before {
  content: "\f145";
}
.fa-minus-square:before {
  content: "\f146";
}
.fa-minus-square-o:before {
  content: "\f147";
}
.fa-level-up:before {
  content: "\f148";
}
.fa-level-down:before {
  content: "\f149";
}
.fa-check-square:before {
  content: "\f14a";
}
.fa-pencil-square:before {
  content: "\f14b";
}
.fa-external-link-square:before {
  content: "\f14c";
}
.fa-share-square:before {
  content: "\f14d";
}
.fa-compass:before {
  content: "\f14e";
}
.fa-toggle-down:before,
.fa-caret-square-o-down:before {
  content: "\f150";
}
.fa-toggle-up:before,
.fa-caret-square-o-up:before {
  content: "\f151";
}
.fa-toggle-right:before,
.fa-caret-square-o-right:before {
  content: "\f152";
}
.fa-euro:before,
.fa-eur:before {
  content: "\f153";
}
.fa-gbp:before {
  content: "\f154";
}
.fa-dollar:before,
.fa-usd:before {
  content: "\f155";
}
.fa-rupee:before,
.fa-inr:before {
  content: "\f156";
}
.fa-cny:before,
.fa-rmb:before,
.fa-yen:before,
.fa-jpy:before {
  content: "\f157";
}
.fa-ruble:before,
.fa-rouble:before,
.fa-rub:before {
  content: "\f158";
}
.fa-won:before,
.fa-krw:before {
  content: "\f159";
}
.fa-bitcoin:before,
.fa-btc:before {
  content: "\f15a";
}
.fa-file:before {
  content: "\f15b";
}
.fa-file-text:before {
  content: "\f15c";
}
.fa-sort-alpha-asc:before {
  content: "\f15d";
}
.fa-sort-alpha-desc:before {
  content: "\f15e";
}
.fa-sort-amount-asc:before {
  content: "\f160";
}
.fa-sort-amount-desc:before {
  content: "\f161";
}
.fa-sort-numeric-asc:before {
  content: "\f162";
}
.fa-sort-numeric-desc:before {
  content: "\f163";
}
.fa-thumbs-up:before {
  content: "\f164";
}
.fa-thumbs-down:before {
  content: "\f165";
}
.fa-youtube-square:before {
  content: "\f166";
}
.fa-youtube:before {
  content: "\f167";
}
.fa-xing:before {
  content: "\f168";
}
.fa-xing-square:before {
  content: "\f169";
}
.fa-youtube-play:before {
  content: "\f16a";
}
.fa-dropbox:before {
  content: "\f16b";
}
.fa-stack-overflow:before {
  content: "\f16c";
}
.fa-instagram:before {
  content: "\f16d";
}
.fa-flickr:before {
  content: "\f16e";
}
.fa-adn:before {
  content: "\f170";
}
.fa-bitbucket:before {
  content: "\f171";
}
.fa-bitbucket-square:before {
  content: "\f172";
}
.fa-tumblr:before {
  content: "\f173";
}
.fa-tumblr-square:before {
  content: "\f174";
}
.fa-long-arrow-down:before {
  content: "\f175";
}
.fa-long-arrow-up:before {
  content: "\f176";
}
.fa-long-arrow-left:before {
  content: "\f177";
}
.fa-long-arrow-right:before {
  content: "\f178";
}
.fa-apple:before {
  content: "\f179";
}
.fa-windows:before {
  content: "\f17a";
}
.fa-android:before {
  content: "\f17b";
}
.fa-linux:before {
  content: "\f17c";
}
.fa-dribbble:before {
  content: "\f17d";
}
.fa-skype:before {
  content: "\f17e";
}
.fa-foursquare:before {
  content: "\f180";
}
.fa-trello:before {
  content: "\f181";
}
.fa-female:before {
  content: "\f182";
}
.fa-male:before {
  content: "\f183";
}
.fa-gittip:before,
.fa-gratipay:before {
  content: "\f184";
}
.fa-sun-o:before {
  content: "\f185";
}
.fa-moon-o:before {
  content: "\f186";
}
.fa-archive:before {
  content: "\f187";
}
.fa-bug:before {
  content: "\f188";
}
.fa-vk:before {
  content: "\f189";
}
.fa-weibo:before {
  content: "\f18a";
}
.fa-renren:before {
  content: "\f18b";
}
.fa-pagelines:before {
  content: "\f18c";
}
.fa-stack-exchange:before {
  content: "\f18d";
}
.fa-arrow-circle-o-right:before {
  content: "\f18e";
}
.fa-arrow-circle-o-left:before {
  content: "\f190";
}
.fa-toggle-left:before,
.fa-caret-square-o-left:before {
  content: "\f191";
}
.fa-dot-circle-o:before {
  content: "\f192";
}
.fa-wheelchair:before {
  content: "\f193";
}
.fa-vimeo-square:before {
  content: "\f194";
}
.fa-turkish-lira:before,
.fa-try:before {
  content: "\f195";
}
.fa-plus-square-o:before {
  content: "\f196";
}
.fa-space-shuttle:before {
  content: "\f197";
}
.fa-slack:before {
  content: "\f198";
}
.fa-envelope-square:before {
  content: "\f199";
}
.fa-wordpress:before {
  content: "\f19a";
}
.fa-openid:before {
  content: "\f19b";
}
.fa-institution:before,
.fa-bank:before,
.fa-university:before {
  content: "\f19c";
}
.fa-mortar-board:before,
.fa-graduation-cap:before {
  content: "\f19d";
}
.fa-yahoo:before {
  content: "\f19e";
}
.fa-google:before {
  content: "\f1a0";
}
.fa-reddit:before {
  content: "\f1a1";
}
.fa-reddit-square:before {
  content: "\f1a2";
}
.fa-stumbleupon-circle:before {
  content: "\f1a3";
}
.fa-stumbleupon:before {
  content: "\f1a4";
}
.fa-delicious:before {
  content: "\f1a5";
}
.fa-digg:before {
  content: "\f1a6";
}
.fa-pied-piper-pp:before {
  content: "\f1a7";
}
.fa-pied-piper-alt:before {
  content: "\f1a8";
}
.fa-drupal:before {
  content: "\f1a9";
}
.fa-joomla:before {
  content: "\f1aa";
}
.fa-language:before {
  content: "\f1ab";
}
.fa-fax:before {
  content: "\f1ac";
}
.fa-building:before {
  content: "\f1ad";
}
.fa-child:before {
  content: "\f1ae";
}
.fa-paw:before {
  content: "\f1b0";
}
.fa-spoon:before {
  content: "\f1b1";
}
.fa-cube:before {
  content: "\f1b2";
}
.fa-cubes:before {
  content: "\f1b3";
}
.fa-behance:before {
  content: "\f1b4";
}
.fa-behance-square:before {
  content: "\f1b5";
}
.fa-steam:before {
  content: "\f1b6";
}
.fa-steam-square:before {
  content: "\f1b7";
}
.fa-recycle:before {
  content: "\f1b8";
}
.fa-automobile:before,
.fa-car:before {
  content: "\f1b9";
}
.fa-cab:before,
.fa-taxi:before {
  content: "\f1ba";
}
.fa-tree:before {
  content: "\f1bb";
}
.fa-spotify:before {
  content: "\f1bc";
}
.fa-deviantart:before {
  content: "\f1bd";
}
.fa-soundcloud:before {
  content: "\f1be";
}
.fa-database:before {
  content: "\f1c0";
}
.fa-file-pdf-o:before {
  content: "\f1c1";
}
.fa-file-word-o:before {
  content: "\f1c2";
}
.fa-file-excel-o:before {
  content: "\f1c3";
}
.fa-file-powerpoint-o:before {
  content: "\f1c4";
}
.fa-file-photo-o:before,
.fa-file-picture-o:before,
.fa-file-image-o:before {
  content: "\f1c5";
}
.fa-file-zip-o:before,
.fa-file-archive-o:before {
  content: "\f1c6";
}
.fa-file-sound-o:before,
.fa-file-audio-o:before {
  content: "\f1c7";
}
.fa-file-movie-o:before,
.fa-file-video-o:before {
  content: "\f1c8";
}
.fa-file-code-o:before {
  content: "\f1c9";
}
.fa-vine:before {
  content: "\f1ca";
}
.fa-codepen:before {
  content: "\f1cb";
}
.fa-jsfiddle:before {
  content: "\f1cc";
}
.fa-life-bouy:before,
.fa-life-buoy:before,
.fa-life-saver:before,
.fa-support:before,
.fa-life-ring:before {
  content: "\f1cd";
}
.fa-circle-o-notch:before {
  content: "\f1ce";
}
.fa-ra:before,
.fa-resistance:before,
.fa-rebel:before {
  content: "\f1d0";
}
.fa-ge:before,
.fa-empire:before {
  content: "\f1d1";
}
.fa-git-square:before {
  content: "\f1d2";
}
.fa-git:before {
  content: "\f1d3";
}
.fa-y-combinator-square:before,
.fa-yc-square:before,
.fa-hacker-news:before {
  content: "\f1d4";
}
.fa-tencent-weibo:before {
  content: "\f1d5";
}
.fa-qq:before {
  content: "\f1d6";
}
.fa-wechat:before,
.fa-weixin:before {
  content: "\f1d7";
}
.fa-send:before,
.fa-paper-plane:before {
  content: "\f1d8";
}
.fa-send-o:before,
.fa-paper-plane-o:before {
  content: "\f1d9";
}
.fa-history:before {
  content: "\f1da";
}
.fa-circle-thin:before {
  content: "\f1db";
}
.fa-header:before {
  content: "\f1dc";
}
.fa-paragraph:before {
  content: "\f1dd";
}
.fa-sliders:before {
  content: "\f1de";
}
.fa-share-alt:before {
  content: "\f1e0";
}
.fa-share-alt-square:before {
  content: "\f1e1";
}
.fa-bomb:before {
  content: "\f1e2";
}
.fa-soccer-ball-o:before,
.fa-futbol-o:before {
  content: "\f1e3";
}
.fa-tty:before {
  content: "\f1e4";
}
.fa-binoculars:before {
  content: "\f1e5";
}
.fa-plug:before {
  content: "\f1e6";
}
.fa-slideshare:before {
  content: "\f1e7";
}
.fa-twitch:before {
  content: "\f1e8";
}
.fa-yelp:before {
  content: "\f1e9";
}
.fa-newspaper-o:before {
  content: "\f1ea";
}
.fa-wifi:before {
  content: "\f1eb";
}
.fa-calculator:before {
  content: "\f1ec";
}
.fa-paypal:before {
  content: "\f1ed";
}
.fa-google-wallet:before {
  content: "\f1ee";
}
.fa-cc-visa:before {
  content: "\f1f0";
}
.fa-cc-mastercard:before {
  content: "\f1f1";
}
.fa-cc-discover:before {
  content: "\f1f2";
}
.fa-cc-amex:before {
  content: "\f1f3";
}
.fa-cc-paypal:before {
  content: "\f1f4";
}
.fa-cc-stripe:before {
  content: "\f1f5";
}
.fa-bell-slash:before {
  content: "\f1f6";
}
.fa-bell-slash-o:before {
  content: "\f1f7";
}
.fa-trash:before {
  content: "\f1f8";
}
.fa-copyright:before {
  content: "\f1f9";
}
.fa-at:before {
  content: "\f1fa";
}
.fa-eyedropper:before {
  content: "\f1fb";
}
.fa-paint-brush:before {
  content: "\f1fc";
}
.fa-birthday-cake:before {
  content: "\f1fd";
}
.fa-area-chart:before {
  content: "\f1fe";
}
.fa-pie-chart:before {
  content: "\f200";
}
.fa-line-chart:before {
  content: "\f201";
}
.fa-lastfm:before {
  content: "\f202";
}
.fa-lastfm-square:before {
  content: "\f203";
}
.fa-toggle-off:before {
  content: "\f204";
}
.fa-toggle-on:before {
  content: "\f205";
}
.fa-bicycle:before {
  content: "\f206";
}
.fa-bus:before {
  content: "\f207";
}
.fa-ioxhost:before {
  content: "\f208";
}
.fa-angellist:before {
  content: "\f209";
}
.fa-cc:before {
  content: "\f20a";
}
.fa-shekel:before,
.fa-sheqel:before,
.fa-ils:before {
  content: "\f20b";
}
.fa-meanpath:before {
  content: "\f20c";
}
.fa-buysellads:before {
  content: "\f20d";
}
.fa-connectdevelop:before {
  content: "\f20e";
}
.fa-dashcube:before {
  content: "\f210";
}
.fa-forumbee:before {
  content: "\f211";
}
.fa-leanpub:before {
  content: "\f212";
}
.fa-sellsy:before {
  content: "\f213";
}
.fa-shirtsinbulk:before {
  content: "\f214";
}
.fa-simplybuilt:before {
  content: "\f215";
}
.fa-skyatlas:before {
  content: "\f216";
}
.fa-cart-plus:before {
  content: "\f217";
}
.fa-cart-arrow-down:before {
  content: "\f218";
}
.fa-diamond:before {
  content: "\f219";
}
.fa-ship:before {
  content: "\f21a";
}
.fa-user-secret:before {
  content: "\f21b";
}
.fa-motorcycle:before {
  content: "\f21c";
}
.fa-street-view:before {
  content: "\f21d";
}
.fa-heartbeat:before {
  content: "\f21e";
}
.fa-venus:before {
  content: "\f221";
}
.fa-mars:before {
  content: "\f222";
}
.fa-mercury:before {
  content: "\f223";
}
.fa-intersex:before,
.fa-transgender:before {
  content: "\f224";
}
.fa-transgender-alt:before {
  content: "\f225";
}
.fa-venus-double:before {
  content: "\f226";
}
.fa-mars-double:before {
  content: "\f227";
}
.fa-venus-mars:before {
  content: "\f228";
}
.fa-mars-stroke:before {
  content: "\f229";
}
.fa-mars-stroke-v:before {
  content: "\f22a";
}
.fa-mars-stroke-h:before {
  content: "\f22b";
}
.fa-neuter:before {
  content: "\f22c";
}
.fa-genderless:before {
  content: "\f22d";
}
.fa-facebook-official:before {
  content: "\f230";
}
.fa-pinterest-p:before {
  content: "\f231";
}
.fa-whatsapp:before {
  content: "\f232";
}
.fa-server:before {
  content: "\f233";
}
.fa-user-plus:before {
  content: "\f234";
}
.fa-user-times:before {
  content: "\f235";
}
.fa-hotel:before,
.fa-bed:before {
  content: "\f236";
}
.fa-viacoin:before {
  content: "\f237";
}
.fa-train:before {
  content: "\f238";
}
.fa-subway:before {
  content: "\f239";
}
.fa-medium:before {
  content: "\f23a";
}
.fa-yc:before,
.fa-y-combinator:before {
  content: "\f23b";
}
.fa-optin-monster:before {
  content: "\f23c";
}
.fa-opencart:before {
  content: "\f23d";
}
.fa-expeditedssl:before {
  content: "\f23e";
}
.fa-battery-4:before,
.fa-battery:before,
.fa-battery-full:before {
  content: "\f240";
}
.fa-battery-3:before,
.fa-battery-three-quarters:before {
  content: "\f241";
}
.fa-battery-2:before,
.fa-battery-half:before {
  content: "\f242";
}
.fa-battery-1:before,
.fa-battery-quarter:before {
  content: "\f243";
}
.fa-battery-0:before,
.fa-battery-empty:before {
  content: "\f244";
}
.fa-mouse-pointer:before {
  content: "\f245";
}
.fa-i-cursor:before {
  content: "\f246";
}
.fa-object-group:before {
  content: "\f247";
}
.fa-object-ungroup:before {
  content: "\f248";
}
.fa-sticky-note:before {
  content: "\f249";
}
.fa-sticky-note-o:before {
  content: "\f24a";
}
.fa-cc-jcb:before {
  content: "\f24b";
}
.fa-cc-diners-club:before {
  content: "\f24c";
}
.fa-clone:before {
  content: "\f24d";
}
.fa-balance-scale:before {
  content: "\f24e";
}
.fa-hourglass-o:before {
  content: "\f250";
}
.fa-hourglass-1:before,
.fa-hourglass-start:before {
  content: "\f251";
}
.fa-hourglass-2:before,
.fa-hourglass-half:before {
  content: "\f252";
}
.fa-hourglass-3:before,
.fa-hourglass-end:before {
  content: "\f253";
}
.fa-hourglass:before {
  content: "\f254";
}
.fa-hand-grab-o:before,
.fa-hand-rock-o:before {
  content: "\f255";
}
.fa-hand-stop-o:before,
.fa-hand-paper-o:before {
  content: "\f256";
}
.fa-hand-scissors-o:before {
  content: "\f257";
}
.fa-hand-lizard-o:before {
  content: "\f258";
}
.fa-hand-spock-o:before {
  content: "\f259";
}
.fa-hand-pointer-o:before {
  content: "\f25a";
}
.fa-hand-peace-o:before {
  content: "\f25b";
}
.fa-trademark:before {
  content: "\f25c";
}
.fa-registered:before {
  content: "\f25d";
}
.fa-creative-commons:before {
  content: "\f25e";
}
.fa-gg:before {
  content: "\f260";
}
.fa-gg-circle:before {
  content: "\f261";
}
.fa-tripadvisor:before {
  content: "\f262";
}
.fa-odnoklassniki:before {
  content: "\f263";
}
.fa-odnoklassniki-square:before {
  content: "\f264";
}
.fa-get-pocket:before {
  content: "\f265";
}
.fa-wikipedia-w:before {
  content: "\f266";
}
.fa-safari:before {
  content: "\f267";
}
.fa-chrome:before {
  content: "\f268";
}
.fa-firefox:before {
  content: "\f269";
}
.fa-opera:before {
  content: "\f26a";
}
.fa-internet-explorer:before {
  content: "\f26b";
}
.fa-tv:before,
.fa-television:before {
  content: "\f26c";
}
.fa-contao:before {
  content: "\f26d";
}
.fa-500px:before {
  content: "\f26e";
}
.fa-amazon:before {
  content: "\f270";
}
.fa-calendar-plus-o:before {
  content: "\f271";
}
.fa-calendar-minus-o:before {
  content: "\f272";
}
.fa-calendar-times-o:before {
  content: "\f273";
}
.fa-calendar-check-o:before {
  content: "\f274";
}
.fa-industry:before {
  content: "\f275";
}
.fa-map-pin:before {
  content: "\f276";
}
.fa-map-signs:before {
  content: "\f277";
}
.fa-map-o:before {
  content: "\f278";
}
.fa-map:before {
  content: "\f279";
}
.fa-commenting:before {
  content: "\f27a";
}
.fa-commenting-o:before {
  content: "\f27b";
}
.fa-houzz:before {
  content: "\f27c";
}
.fa-vimeo:before {
  content: "\f27d";
}
.fa-black-tie:before {
  content: "\f27e";
}
.fa-fonticons:before {
  content: "\f280";
}
.fa-reddit-alien:before {
  content: "\f281";
}
.fa-edge:before {
  content: "\f282";
}
.fa-credit-card-alt:before {
  content: "\f283";
}
.fa-codiepie:before {
  content: "\f284";
}
.fa-modx:before {
  content: "\f285";
}
.fa-fort-awesome:before {
  content: "\f286";
}
.fa-usb:before {
  content: "\f287";
}
.fa-product-hunt:before {
  content: "\f288";
}
.fa-mixcloud:before {
  content: "\f289";
}
.fa-scribd:before {
  content: "\f28a";
}
.fa-pause-circle:before {
  content: "\f28b";
}
.fa-pause-circle-o:before {
  content: "\f28c";
}
.fa-stop-circle:before {
  content: "\f28d";
}
.fa-stop-circle-o:before {
  content: "\f28e";
}
.fa-shopping-bag:before {
  content: "\f290";
}
.fa-shopping-basket:before {
  content: "\f291";
}
.fa-hashtag:before {
  content: "\f292";
}
.fa-bluetooth:before {
  content: "\f293";
}
.fa-bluetooth-b:before {
  content: "\f294";
}
.fa-percent:before {
  content: "\f295";
}
.fa-gitlab:before {
  content: "\f296";
}
.fa-wpbeginner:before {
  content: "\f297";
}
.fa-wpforms:before {
  content: "\f298";
}
.fa-envira:before {
  content: "\f299";
}
.fa-universal-access:before {
  content: "\f29a";
}
.fa-wheelchair-alt:before {
  content: "\f29b";
}
.fa-question-circle-o:before {
  content: "\f29c";
}
.fa-blind:before {
  content: "\f29d";
}
.fa-audio-description:before {
  content: "\f29e";
}
.fa-volume-control-phone:before {
  content: "\f2a0";
}
.fa-braille:before {
  content: "\f2a1";
}
.fa-assistive-listening-systems:before {
  content: "\f2a2";
}
.fa-asl-interpreting:before,
.fa-american-sign-language-interpreting:before {
  content: "\f2a3";
}
.fa-deafness:before,
.fa-hard-of-hearing:before,
.fa-deaf:before {
  content: "\f2a4";
}
.fa-glide:before {
  content: "\f2a5";
}
.fa-glide-g:before {
  content: "\f2a6";
}
.fa-signing:before,
.fa-sign-language:before {
  content: "\f2a7";
}
.fa-low-vision:before {
  content: "\f2a8";
}
.fa-viadeo:before {
  content: "\f2a9";
}
.fa-viadeo-square:before {
  content: "\f2aa";
}
.fa-snapchat:before {
  content: "\f2ab";
}
.fa-snapchat-ghost:before {
  content: "\f2ac";
}
.fa-snapchat-square:before {
  content: "\f2ad";
}
.fa-pied-piper:before {
  content: "\f2ae";
}
.fa-first-order:before {
  content: "\f2b0";
}
.fa-yoast:before {
  content: "\f2b1";
}
.fa-themeisle:before {
  content: "\f2b2";
}
.fa-google-plus-circle:before,
.fa-google-plus-official:before {
  content: "\f2b3";
}
.fa-fa:before,
.fa-font-awesome:before {
  content: "\f2b4";
}
.fa-handshake-o:before {
  content: "\f2b5";
}
.fa-envelope-open:before {
  content: "\f2b6";
}
.fa-envelope-open-o:before {
  content: "\f2b7";
}
.fa-linode:before {
  content: "\f2b8";
}
.fa-address-book:before {
  content: "\f2b9";
}
.fa-address-book-o:before {
  content: "\f2ba";
}
.fa-vcard:before,
.fa-address-card:before {
  content: "\f2bb";
}
.fa-vcard-o:before,
.fa-address-card-o:before {
  content: "\f2bc";
}
.fa-user-circle:before {
  content: "\f2bd";
}
.fa-user-circle-o:before {
  content: "\f2be";
}
.fa-user-o:before {
  content: "\f2c0";
}
.fa-id-badge:before {
  content: "\f2c1";
}
.fa-drivers-license:before,
.fa-id-card:before {
  content: "\f2c2";
}
.fa-drivers-license-o:before,
.fa-id-card-o:before {
  content: "\f2c3";
}
.fa-quora:before {
  content: "\f2c4";
}
.fa-free-code-camp:before {
  content: "\f2c5";
}
.fa-telegram:before {
  content: "\f2c6";
}
.fa-thermometer-4:before,
.fa-thermometer:before,
.fa-thermometer-full:before {
  content: "\f2c7";
}
.fa-thermometer-3:before,
.fa-thermometer-three-quarters:before {
  content: "\f2c8";
}
.fa-thermometer-2:before,
.fa-thermometer-half:before {
  content: "\f2c9";
}
.fa-thermometer-1:before,
.fa-thermometer-quarter:before {
  content: "\f2ca";
}
.fa-thermometer-0:before,
.fa-thermometer-empty:before {
  content: "\f2cb";
}
.fa-shower:before {
  content: "\f2cc";
}
.fa-bathtub:before,
.fa-s15:before,
.fa-bath:before {
  content: "\f2cd";
}
.fa-podcast:before {
  content: "\f2ce";
}
.fa-window-maximize:before {
  content: "\f2d0";
}
.fa-window-minimize:before {
  content: "\f2d1";
}
.fa-window-restore:before {
  content: "\f2d2";
}
.fa-times-rectangle:before,
.fa-window-close:before {
  content: "\f2d3";
}
.fa-times-rectangle-o:before,
.fa-window-close-o:before {
  content: "\f2d4";
}
.fa-bandcamp:before {
  content: "\f2d5";
}
.fa-grav:before {
  content: "\f2d6";
}
.fa-etsy:before {
  content: "\f2d7";
}
.fa-imdb:before {
  content: "\f2d8";
}
.fa-ravelry:before {
  content: "\f2d9";
}
.fa-eercast:before {
  content: "\f2da";
}
.fa-microchip:before {
  content: "\f2db";
}
.fa-snowflake-o:before {
  content: "\f2dc";
}
.fa-superpowers:before {
  content: "\f2dd";
}
.fa-wpexplorer:before {
  content: "\f2de";
}
.fa-meetup:before {
  content: "\f2e0";
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
.sr-only-focusable:active,
.sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip: auto;
}
openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/static/css/combined.css0000666000175100017510000027124613227213640031725 0ustar  zuulzuul00000000000000html {
  overflow-y: scroll; }

/* pad after a table.
 * bug 1439918 */
table {
  margin-bottom: 10px; }

table.docutils th {
  padding: 2px; }

table.docutils td {
  padding: 2px; }

table.docutils caption {
  font-weight: bold; }

hr {
  height: 1px !important; }

a, a:visited {
  color: #bc1518;
  text-decoration: none; }

a:hover {
  text-decoration: underline; }

ol.arabic ol {
  list-style-type: lower-alpha; }

ol.arabic ol ol {
  list-style-type: upper-alpha; }

dd { margin-left: 2em; }

div.docs-body code.literal {
  color: #000;
}

div.docs-body table code.literal {
  color: #000;
}

div.docs-body span.guilabel, div.docs-body span.menuselection {
  color: #c7254e;
  background-color: #e1e4e5;
  padding: 1px 3px;
  border-radius: 4px;
}

/* @group Navigation */
#navigation {
  display: block;
  background: url('../images/header-line.gif') repeat-x 0 bottom;
  padding-bottom: 1px; }

#navigation * {
  padding: 0;
  margin: 0; }

#navigation ul {
  display: block;
  margin: 0 auto; }

#navigation li {
  display: block;
  float: left;
  margin-right: 20px; }

#navigation li a {
  display: block;
  font-weight: normal;
  text-decoration: none;
  background-position: 50% 0;
  padding: 20px 0 5px;
  color: #353535;
  font-size: 14px; }

#navigation li a.current, #navigation li a.section {
  border-bottom: 3px solid #cf2f19;
  color: #cf2f19; }

/* @group Auto-clearing */
#navigation:after, #navigation ul:after, #header:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden; }

#navigation, #navigation ul, #header:after {
  display: inline-block; }

/* Hides from IE-mac \*/
* html #navigation, * html #navigation ul {
  height: 1%; }

#navigation, #navigation ul, #header:after {
  display: block; }

/* End hide from IE-mac */
/* @end */
#logo a {
  display: block;
  margin-top: 8px;
  text-indent: -1000em;
  background: url('../images/open-stack-cloud-computing-logo-2.png') no-repeat left center;
  height: 54px;
  width: 177px;
  margin-left: -10px; }

#header {
  margin-bottom: 0px;
  margin-top: 20px; }

/* @end */
/* @group Tabs */
.tabContentHidden {
  display: none; }

.tabTops {
  border: 1px solid black;
  border-bottom: none; }

#subnav li {
  list-style-type: none;
  margin-bottom: 5px;
  padding: 0; }

#subnav ul {
  padding-left: 0px;
  margin-right: 0px; }

#subnav ul.overviewNav li a {
  display: block;
  padding: 10px 20px 10px 42px;
  text-decoration: none;
  color: black;
  background-color: #e9e9e9;
  background-image: none;
  text-align: right;
  margin-right: 40px; }

#subnav ul.overviewNav li a:hover {
  background-color: #d6d6d6;
  -webkit-transition: background-color 1s ease-out; }

ul.subsectionNav li.current a {
  background-color: #c4e0e9;
  -webkit-transition: background-color 1s ease-out; }

.subsectionNav a[href*="/essex/"] {
  background-color: #E9E9E9 !important; }

.subsectionNav a[href*="/start/"] {
  background-color: #D5EFD4 !important;
  margin-top: 30px; }

.subsectionNav a[href*="/marketplace/training/"] {
  margin-top: 30px; }

.overviewNav li.active, .subsectionNav li.active {
  background: url('../images/pointer-arrow.gif') no-repeat right center; }

#subnav ul li {
  text-align: right; }

ul.subsectionNav li a {
  display: block;
  padding: 10px 20px 10px 42px;
  text-decoration: none;
  color: black;
  background: #e2ecef none no-repeat 5px center;
  margin-right: 40px; }

ul.subsectionNav li a:hover {
  background-color: #c4e0e9;
  -webkit-transition: background-color 1s ease-out; }

ul.tabs {
  padding: 0 2px 0 0;
  white-space: nowrap;
  list-style-type: none;
  display: block;
  zoom: 1;
  margin-right: 0px;
  clear: both;
  border-bottom: 1px solid #d8d8d8;
  background-color: #ececec; }

.tabSet {
  margin: auto;
  background-color: #f5f5f5;
  -webkit-border-radius: 3px;
  border: 1px solid #d8d8d8;
  border-top: 1px solid #bcbcbc; }

#home .tabSet {
  margin-top: 45px; }

.featureHeader {
  margin-left: 20px;
  margin-top: 20px; }

.tabs li {
  cursor: pointer;
  display: inline;
  margin-right: -3px;
  padding: 0px; }

.tabs li a {
  margin: 0px;
  display: inline-block;
  text-align: left;
  color: #41728d;
  font-size: 13px;
  font-family: 'PT Sans', serif;
  padding: 6px 14px;
  text-shadow: #fff 0px 1px 1px;
  border-right: 1px solid #d8d8d8;
  width: 160px;
  text-align: center; }

.tabs li a:hover {
  background-color: #eee;
  text-decoration: none; }

.tabs li.active a {
  cursor: default;
  text-decoration: none;
  position: relative;
  color: black;
  background-color: #f5f5f5;
  border-bottom: 1px solid #f5f5f5;
  margin-bottom: -1px;
  border-top: 1px white solid;
  font-weight: bold; }

.tabs li#showcode a {
  background: #6b90da;
  padding-bottom: 6px;
  font-weight: bold;
  color: #fff; }

/* @end */
/* @group Buttons */
a.button {
  font-family: 'PT Sans', serif;
  border: 1px solid #ccc;
  padding: 3px 30px;
  color: #525252;
  text-decoration: none;
  font-size: 14px;
  line-height: 3em;
  background: #ddd;
  box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
  -webkit-box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
  -moz-box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
  text-shadow: #fff 0px 1px 1px;
  background: -webkit-gradient(linear, left top, left bottom, from(#eeeeee), to(#bebebe));
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eeeeee', endColorstr='#bebebe'); }

a.button:hover {
  color: black;
  -webkit-transition: color 1s ease-out; }

a.button:active {
  background: #ababab;
  box-shadow: none;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  border-color: #ababab;
  border-top-color: #636363;
  background: -webkit-gradient(linear, left top, left bottom, from(#bebebe), to(#dddddd));
  -webkit-transition: none;
  padding: 4px 29px 2px 31px !important; }

/* @end */
/* @group Rounded Buttons */
.roundedButton, input.action {
  font-family: 'PT Sans', serif;
  border: 1px solid #e2e2e2;
  padding: 4px 15px;
  color: black !important;
  text-decoration: none !important;
  font-size: 12.5px;
  line-height: 3em;
  background: #FFFFFF;
  /* old browsers */
  /* firefox */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #FFFFFF), color-stop(50%, #F3F3F3), color-stop(100%, #EBEBEB));
  /* webkit */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#FFFFFF', endColorstr='#EBEBEB',GradientType=0 );
  /* ie */
  box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.5);
  -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.2);
  text-shadow: #fff 0px 1px 1px;
  border-radius: 3px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-bottom-color: #a0a0a0;
  border-right-color: #bababa;
  border-left-color: #bababa; }

.roundedButton:hover, input.action:hover {
  color: black;
  -webkit-transition: color 1s ease-out;
  cursor: pointer; }

a.roundedButton:active, input.action:active {
  background: #ababab;
  box-shadow: none;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  border-color: #ababab;
  border-top-color: #636363;
  background: -webkit-gradient(linear, left top, left bottom, from(#bebebe), to(#dddddd));
  -webkit-transition: none;
  padding: 4px 15px; }

input.action {
  line-height: 1.2em !important; }

/* @end */
.subhead {
  color: #cf2f19;
  font-size: 16px;
  border-bottom: 1px dotted;
  padding-bottom: 5px;
  border-color: #c5e2ea;
  margin-bottom: 20px; }

/* @group projects page */
.projectsPage h1, .communityPage h1, #blog h1 {
  color: #264d69;
  font-size: 24px; }

.projectsPage h2 {
  color: #264d69;
  font-size: 17px; }

#subnav {
  padding-top: 38px; }

.note {
  color: #33730a;
  background: #e2f4dc url('../images/side-note-pointer.gif') no-repeat left center; }

.note a {
  color: #33730a;
  text-decoration: underline; }

/* BB: Removed because it looks ugly
.note p {
  margin-left: 8px;
  padding: 10px;
  margin-bottom: 0px;
  border-bottom: 1px solid #b5c8a8; }
*/

a#CitrixVideo {
  display: block;
  padding-top: 93px;
  background: url('../images/citrix-video-thumbnail.jpg') no-repeat;
  color: #aeaeae;
  text-decoration: none;
  margin-top: 3px; }

h3.videoHeader {
  color: #939393;
  font-size: 14px; }

a.downloadLink {
  text-decoration: none;
  color: white;
  font-family: helvetica, arial;
  font-weight: bold;
  display: block;
  width: 250px;
  text-align: center;
  position: relative;
  padding: 3px;
  margin-bottom: 5px;
  margin-top: 5px;
  /* BORDER RADIUS */
  border-radius: 5px;
  background-color: #989996;
  border: 2px solid white; }

/* @end */
#footer {
  margin-top: 30px; }

/* @group compute */
.projectVitals {
  border-top: 1px solid #c5e2ea;
  padding-top: 10px; }

.projectVitals h3 {
  font-size: 16px;
  color: #264d69; }

#availability {
  line-height: 1.4em;
  padding: 12px;
  color: #747474;
  background-color: #f6f8f8;
  border: 1px solid #d4d5d5;
  margin-bottom: 10px;
  height: 9em; }

.projectVitals h4 {
  font-size: 14px;
  color: #797979;
  margin-bottom: 4px; }

#availability p {
  margin: 0px; }

#parallax {
  background: #2f3134;
  position: relative;
  overflow: hidden;
  width: 60em;
  height: 300px;
  margin: 1.5em 0; }

/* @group FAQ */
.faqs .span-5 {
  font-size: 14px;
  color: #707070;
  font-weight: bold; }

.faqs hr {
  padding: 0px; }

.faqs div {
  margin-bottom: 20px; }

/* @end */
/* @end */
/* @group community page */
.communityBox {
  height: 213px;
  background: #f8f8f8 url('../images/community-box-headers.png') no-repeat 0 0; }

#userResources {
  background-position: -200px 0; }

#devCenter {
  background-position: -400px 0; }

.communityBox p, .communityBox h2 {
  margin: 15px; }

.communityBox, .communityBox a, .communityBox a.visited {
  color: #6b6b6b; }

.communityBox a {
  text-decoration: underline; }

.communityBox h2 {
  color: black;
  font-size: 17px;
  margin-top: 60px; }

.participants h2, .communityResources h2 {
  font-size: 16px;
  color: #264d69;
  margin-top: 30px;
  padding-top: 10px;
  border-top: 1px dotted #c5e2ea; }

#designSummit h2 {
  text-indent: -1000px;
  height: 222px;
  margin-top: -9px;
  margin-bottom: 10px;
  background: url('../images/openstack-design-summit-community.jpg') no-repeat 0 0; }

#designSummit {
  color: #6b6b6b; }

#designSummit strong {
  color: black;
  font-weight: normal; }

/* @end */
/* @group blog */
#blog h2 {
  color: #5189a0;
  font-size: 15px;
  margin-bottom: 0px; }

#blog h2 a {
  background-color: #eaeaea;
  text-align: center;
  padding: 1px;
  padding-left: 7px;
  padding-right: 7px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  color: #757575;
  font-size: 0.7em;
  text-decoration: none; }

div.byline {
  border-bottom: 1px dotted #c5e2ea;
  border-top: 1px dotted #c5e2ea;
  margin-bottom: 10px;
  padding: 2px 0; }

div.byline p {
  margin: 0px; }

div.byline .postDate {
  text-align: right; }

div.byline p.name a, div.byline p.name a:visited {
  color: #cf2f19;
  text-decoration: none; }

div.socialMedia {
  background-color: #eef3f5;
  margin-bottom: 20px; }

div.socialMedia div {
  padding: 10px; }

div.socialMedia h4 {
  margin-bottom: 2px; }

div.socialMedia p {
  margin-bottom: 0px; }

div.socialMedia div.twitter {
  border-bottom: 1px dotted #c5e2ea; }

#blog h3 {
  margin-bottom: 5px;
  font-size: 12px; }

/* @end */
/* @group Brand */
div.termsBox {
  border: 1px solid #c6e2ea;
  padding: 10px;
  height: 300px;
  overflow: scroll;
  margin-bottom: 10px; }

.termsBox h3, #openstack-trademark-policy h3 {
  font-size: 100%;
  font-weight: bold; }

.termsBox a {
  color: inherit;
  text-decoration: underline; }

/* @end */
/* @group quotes */
ul#quotes {
  margin-left: 0px;
  padding-left: 0px;
  margin-top: 10px; }

ul#quotes li {
  list-style-type: none; }

ul#quotes li p {
  line-height: 1.4em; }

ul#quotes p {
  font-size: 16px;
  font-family: 'PT Sans', serif;
  margin-bottom: 0px;
  color: black;
  line-height: 1.2em;
  padding: 10px;
  padding-bottom: 0px; }

ul#quotes p.name {
  margin-top: 10px;
  font-size: 14px;
  text-transform: uppercase;
  color: #9b9b9b;
  text-indent: 0px; }

ul#quotes p.name strong {
  font-weight: normal;
  color: #494949; }

/* @end */
.tooltip {
  background: black;
  background: rgba(0, 0, 0, 0.8);
  padding: 1px 8px;
  color: white;
  border-radius: 4px;
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px; }

a.Datasheet {
  padding-top: 110px;
  display: block;
  background: url('../images/openstack-product-pdf.jpg') no-repeat center top;
  margin-left: 20px;
  margin-top: 30px; }

a.Datasheet:hover {
  text-decoration: none;
  color: #bc1518; }

a#DemoVideo {
  display: block;
  padding-top: 103px;
  margin-left: 18px;
  background: url('../images/demo-video-thumbnail.jpg') no-repeat;
  text-decoration: none;
  margin-top: 50px; }

/* @group Tables */
.tabContent table {
  margin: 20px;
  width: 670px; }

.tabContent table td {
  border-bottom: 1px solid #d8d8d8;
  vertical-align: top;
  padding: 10px 10px 20px 0; }

.tabContent table td p {
  margin: 0px; }

.tabContent table tr:last-child td {
  border-bottom: none; }

.tabContent table th {
  font-family: 'PT Sans', serif;
  font-style: normal;
  font-weight: normal;
  font-size: 18px;
  letter-spacing: -0.076em;
  line-height: 1em;
  color: #264d69;
  padding-left: 0px; }

.tabContent table a:active, .tabContent table a:visited, .tabContent table a {
  color: inherit;
  text-decoration: underline; }

p.fnote {
  margin-left: 20px; }

/* @end */
h2.user-story-quote {
  line-height: 1.5em;
  color: grey !important; }

.user-story-quote-author {
  text-transform: uppercase; }

ul.user-project-list {
  margin: 0px;
  padding: 0px;
  overflow: hidden;
  margin-bottom: 20px; }

ul.user-project-list li {
  display: block;
  margin-right: 5px;
  background-color: #e2f1f5;
  border: 1px solid #89c6d6;
  -webkit-border-radius: 3px;
  padding: 2px 8px;
  margin-bottom: 5px;
  color: #1a4b6b;
  font-size: 95%;
  width: 170px;
  float: left; }

#footer ul {
  margin: 10px 0px 20px;
  padding: 0px;
  list-style: none; }

#footer a, #footer a:visited, #footer a:active {
  color: black; }

#footer h3 {
  color: #de0000;
  font: 130% 'PT Sans', serif; }

#footer textarea {
  width: 260px;
  height: 60px;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #EBEBEB), color-stop(5%, #FFFFFF));
  /* webkit */ }

#footer form {
  margin-top: 8px;
  margin-bottom: 20px; }

.user-links li {
  padding-left: 20px;
  background: url('../images/link.png') no-repeat left center;
  margin-left: -20px;
  list-style: none; }

.user-objectives {
  background-color: #ecedec;
  padding: 20px;
  margin-bottom: 15px; }

.user-objectives p {
  margin-bottom: 0px; }

.user-name {
  padding-top: 10px; }

.user-photo img {
  border: 5px solid white;
  -webkit-box-shadow: 3px 2px 2px rgba(0, 0, 0, 0.3); }

.siteMessage {
  -webkit-border-radius: 4px;
  border: 1px solid;
  margin-bottom: 10px;
  margin-top: 20px; }

.siteMessage p {
  margin: 8px; }

#InfoMessage {
  color: black;
  background-color: #DBEAEE;
  border-color: #B5D8E2;
  font-size: 120%;
  padding: 10px; }

#SuccessMessage {
  color: #3E933A;
  background-color: #E2F7D8;
  border-color: #9FDE9C; }

#ErrorMessage {
  color: #DA1D1D;
  background-color: #FFDFDF;
  border-color: #FFBBBB; }

p.message.bad {
  color: #DA1D1D;
  background-color: #FFDFDF;
  border-color: #FFBBBB;
  padding: 15px;
  border: 1px solid #DA1D1D; }

.topMessage {
  background: #E4EEF1;
  border-bottom: 1px solid white;
  padding: 5px;
  font-size: 1.3em;
  color: #255E6E;
  font-family: 'PT Sans', serif;
  text-shadow: #fff 0px 1px 1px;
  box-shadow: 1px 1px 1px 1px #ccc; }

.topMessage p {
  margin-bottom: 0px; }

#header {
  margin-top: 40px; }

span.message {
  font-weight: bold;
  color: #CE332C; }

.gsc-control-cse {
  padding: 0px !important; }

#gcse {
  width: 80%;
  height: 60px; }

input.gsc-search-button, input.gsc-search-button:hover, input.gsc-search-button:focus {
  background: #C43422 !important;
  border: none !important; }

.gsc-input-box {
  border-color: #D3E9EF !important; }

.gs-visibleUrl, .gs-visibleUrl-long {
  color: #A5A5A5 !important; }

.roundedButton-margin {
  margin-left: 5px; }

/*!
 * Start Bootstrap - Landing Page Bootstrap Theme (http://startbootstrap.com)
 * Code licensed under the Apache License v2.0.
 * For details, see http://www.apache.org/licenses/LICENSE-2.0.
 */
body, html {
  width: 100%;
  height: 100%; }

body {
  font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;
}

h1, h2, h3, h4, h5 {
  color: #2A4E68;
  font-weight: lighter;
}

a, a:visited {
  color: #30739C; }

.lead {
  font-size: 18px;
  font-weight: 400; }

/*Header Navigation*/
.brand-wrapper {
  margin: 10px 0;
  padding-right: 20px;
  float: left;
  border-right: 1px solid #eee;
  min-width: 135px; }

a.navbar-brand {
  background: url('https://www.openstack.org/themes/openstack/images/openstack-logo-full.svg') left no-repeat;
  height: 35px;
  width: 135px; }

@media (min-width: 768px) and (max-width: 1025px) {
  .brand-wrapper {
    width: 75px;
    min-width: 75px;
    margin-top: 0; }
  a.navbar-brand {
    background: url('https://www.openstack.org/themes/openstack/images/openstack-logo-vert.svg') left no-repeat;
    margin-left: 0px !important;
    height: 54px;
    width: 59px; } }

@media (max-width: 767px) {
  a.navbar-brand {
    margin-left: 15px; } }

.navbar-default {
  border: none;
  border-radius: 0px;
  background: #fff;
  margin-bottom: 0;
  padding: 20px 0; }

.navbar-default .container {
  background-color: white; }

@media (min-width: 768px) and (max-width: 1200px) {
  .navbar-default .container {
    width: 98%; } }

ul.navbar-main {
  display: none;
  float: right; }

@media (min-width: 768px) and (max-width: 1097px) {
  ul.navbar-main {
    display: block; } }

@media (max-width: 767px) {
  ul.navbar-main {
    display: block;
    margin-right: 30px;
    width: 90%; } }

.navbar-default ul.navbar-main > li > a {
  color: #8a959e;
  font-size: 12px;
  font-weight: 400;
  text-transform: uppercase; }

@media (min-width: 768px) and (max-width: 1025px) {
  ul.navbar-main {
    margin-top: 1px; }
  .navbar-default ul.navbar-main > li > a {
    font-size: 11px;
    padding: 15px 8px; } }

.navbar-default .navbar-nav > .open > a, .navbar-default .navbar-nav > .open > a:hover, .navbar-default .navbar-nav > .open > a:focus {
  background: #fff; }

.navbar-nav > li > .dropdown-menu {
  margin-top: 10px;
  padding: 10px 0;
  min-width: 230px;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px; }

.navbar-nav > li > .dropdown-menu:after, .navbar-nav > li > .dropdown-menu:before {
  bottom: 100%;
  left: 25%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none; }

.navbar-nav > li > .dropdown-menu:after {
  border-color: rgba(255, 255, 255, 0);
  border-bottom-color: #ffffff;
  border-width: 15px;
  margin-left: -15px; }

.navbar-nav > li > .dropdown-menu:before {
  border-color: rgba(170, 170, 170, 0);
  border-bottom-color: #aaaaaa;
  border-width: 16px;
  margin-left: -16px; }

@media (max-width: 767px) {
  .navbar-nav > li > .dropdown-menu:after, .navbar-nav > li > .dropdown-menu:before {
    display: none; }
  .navbar-nav > li > .dropdown-menu:after {
    display: none; }
  .navbar-nav > li > .dropdown-menu:before {
    display: none; } }

i.fa-caret-right {
  margin-left: 8px; }

.navbar-nav > li > .dropdown-menu li a {
  text-transform: uppercase;
  padding: 13px 20px;
  font-size: 12px;
  color: #8a959e; }

.navbar-nav > li > .dropdown-menu li a:hover {
  color: #333; }

.navbar-nav > li > .dropdown-menu li a:focus {
  outline: none; }

@media (max-width: 767px) {
  .navbar-default ul.navbar-main > li > a i.fa-caret-down {
    display: none; } }

.navbar-default .navbar-toggle {
  border: none; }

.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {
  background: transparent; }

.navbar-default .navbar-toggle .icon-bar {
  background-color: #5A5A5A;
  height: 3px;
  border-radius: 3px; }

.search-container {
  position: relative;
  display: none;
  float: left;
  width: 84%; }

@media (min-width: 768px) and (max-width: 1200px) {
    .search-container
    {
      width: 80%;
    }
}

@media (max-width: 767px), only screen and (max-device-width: 1024px) {
  .search-container
  {
    display: none;
  }
}

.search-icon {
  display: none;
  padding: 17px 20px 16px;
  float: left;
  text-transform: uppercase;
  color: #8a959e;
  font-size: 12px;
  font-weight: 400;
}

.search-icon:hover {
  cursor: pointer;
  color: #8a959e;
}

.search-icon i {
  margin-right: 5px;
  color: #8a959e;
}

@media (max-width: 767px), only screen and (max-device-width: 1024px) {
  .search-icon
  {
    display: none !important;
  }
}

@media (max-width: 1040px) {
  .header-search-text
  {
    display: none;
  }
}

@media (max-width: 767px), only screen and (max-device-width: 1024px) {
  .header-search-form
  {
    display: none;
  }
  .custom-search-box
  {
    position: relative !important;
    left: 0px !important;;
  }
}

.custom-search-box {
  color: #30739C !important;
  font-size: 12px !important;
  text-transform: lowercase !important;
  font-weight: 400 !important;
  width: 100% !important;
  position: relative;
    top: 15px;
}

.custom-search-box-mobile
{
  display: none !important;
  position: relative;
  width: 100% !important;
}

@media (max-width: 767px), only screen and (max-device-width: 1024px) {
  .custom-search-box-mobile
  {
    display: block !important;
  }
  .custom-search-box {
    display: none !important;
  }
}

.header-search, .custom-search-box, .custom-search-box-mobile {
  border: 2px solid #dae5ee !important;
  border-radius: 4px !important;
  height: 37px !important;
  margin: 7px 0 0 0 !important;
  padding: 0 !important;
  padding-left: 10px !important;
  background: #fff !important;
  width: 100% !important;
  -webkit-transition: width 4s !important;
  transition: width 4s !important;
  -webkit-border-horizontal-spacing: 0 !important;
  -webkit-border-vertical-spacing: 0 !important;
}

.header-search contenteditable .custom-search-box-mobile:hover, .custom-search-box-mobile:focus, .custom-search-box:hover, .custom-search-box:focus {
  box-shadow: none !important;
}

.header-search::-webkit-input-placeholder, .custom-search-box::-webkit-input-placeholder,custom-search-box-mobile::-webkit-input-placeholder {
  color: #C0CDDB;
  font-size: 12px;
  text-transform: lowercase;
  font-weight: 400;
}

.header-search:-moz-placeholder, .custom-search-box-mobile:-moz-placeholder, custom-search-box:-moz-placeholder {
  /* Firefox 18- */
  color: #C0CDDB;
  font-size: 12px;
  text-transform: lowercase;
  font-weight: 400;
}

.header-search::-moz-placeholder, .custom-search-box::-moz-placeholder, custom-search-box-mobile::-moz-placeholder {
  /* Firefox 19+ */
  color: #C0CDDB;
  font-size: 12px;
  text-transform: lowercase;
  font-weight: 400; }

.header-search:-ms-input-placeholder, .custom-search-box:-ms-input-placeholder, custom-search-box-mobile:-ms-input-placeholder {
  color: #C0CDDB;
  font-size: 12px;
  text-transform: lowercase;
  font-weight: 400; }

.header-search:focus, .custom-search-box:focus, .custom-search-box-mobile:focus {
  border-radius: 4px;
  outline: none;
  border: 2px solid #30739C !important;
  box-shadow: none;
}

.close-search {
  position: absolute;
  top: 15px;
  right: 10px;
  color: #dae5ee;
  z-index: 1001;
  font-size: 16px;
}

.close-search:hover
{
  color: #30739C;
  cursor: pointer;
}

@media (max-width: 767px), only screen and (max-device-width: 1024px) {
  .close-search
  {
    display: none !important;
  }
}

.show
{
  display: block;
}

@media (max-width: 767px), only screen and (max-device-width: 1024px) {
  .show
  {
    display: none;
  }
}

/*End Header Navigation*/
/*Hero*/
.intro-header {
  padding-top: 0px;
  padding-bottom: 0;
  text-align: center;
  color: #f8f8f8;
  background: url('../images/hero-bkgd1.jpg') no-repeat center center;
  background-size: cover;
  position: relative; }

.intro-header h1 {
  color: #f8f8f8; }

.intro-message {
  position: relative;
  padding-top: 110px;
  padding-bottom: 110px; }

@media (max-width: 1199px) {
  .intro-message {
    padding-bottom: 50px; } }

.intro-message > h1 {
  margin: 0;
  font-size: 3em;
  font-weight: 300;
  text-align: center;
  width: 100%; }

@media (max-width: 767px) {
  .intro-message > h1 {
    font-size: 3em; } }

.intro-divider {
  width: 400px;
  border-top: 1px solid #f8f8f8;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2); }

.intro-message > h3 {
  text-shadow: none;
  text-align: left;
  font-weight: 300;
  font-size: 24px;
  margin-top: 10px; }

.hero-credit {
  position: absolute;
  bottom: 30px;
  right: 30px;
  color: #fff;
  opacity: 0.5; }

.hero-credit:hover {
  opacity: 1; }

/*Hero Promo, add .featured to .intro-header*/
.intro-header.featured {
  text-align: center;
  background: url('../images/summit-promo-bkgd1.jpg') no-repeat center center;
  min-height: 420px;
  background-size: cover;
  position: relative; }

.intro-header.featured .intro-message {
  padding-bottom: 50px; }

a.promo-btn {
  color: #fff;
  font-size: 24px;
  font-weight: 300;
  background: transparent;
  border: 2px solid #fff;
  border-radius: 4px;
  padding: 20px 35px;
  margin: 0 auto;
  text-align: center;
  min-width: 370px;
  display: inline-block; }

a.promo-btn:hover {
  text-decoration: none;
  background: rgba(255, 255, 255, 0.2); }

a.promo-btn i.fa-chevron-right {
  background: transparent;
  border: 2px solid #fff;
  border-radius: 100px;
  padding: 0;
  font-size: 14px;
  margin-left: 10px;
  width: 30px;
  height: 30px;
  line-height: 2.1; }

p.promo-dates {
  display: inline-block;
  margin-top: 10px;
  font-weight: 400; }

/*End Hero*/
/*Overview Section*/
.overview-section {
  padding: 80px 0; }

@media (max-width: 767px) {
  .overview-section {
    padding-top: 40px; } }

.overview-section h2 {
  color: #2A4E68;
  font-size: 34px;
  font-weight: 300;
  margin-bottom: 25px; }

.overview-section p {
  color: #888;
  font-size: 16px;
  font-weight: 300px;
  line-height: 1.4; }

.overview-section a {
  color: #30739C;
  text-decoration: underline; }

.btn-wrapper {
  float: left;
  width: 100%;
  text-align: center; }

@media (max-width: 980px) {
  .overview-left {
    margin-bottom: 50px; } }

a.overview-btn {
  float: left;
  background: #30739C;
  color: #fff;
  text-transform: uppercase;
  border-radius: 4px;
  padding: 15px 25px;
  text-decoration: none;
  margin-top: 5px;
  margin-bottom: 5px; }

a.overview-btn:hover {
  background: #2A4E68; }

a.overview-btn.left-btn {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border-right: 1px solid #3387C9;
  margin-right: 0; }

a.overview-btn.left-btn:hover {
  border-right-color: #1B486B; }

a.overview-btn.right-btn {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-left: 1px solid #1B486B;
  margin-left: 0; }

.release-text {
  display: block;
  text-align: left;
  color: #636568;
  font-size: 13px; }

.overview-section .img-responsive {
  max-width: 550px; }

.overview-right {
  text-align: center; }

.control-cloud-graphic {
  max-width: 600px;
  margin: 0 auto 15px; }

a.demo-link {
  font-size: 13px;
  font-weight: 400;
  text-decoration: none;
  color: #34789A;
  background: #F0F9FE;
  padding: 10px 25px;
  border-radius: 4px; }

a.demo-link:hover {
  color: #34789A;
  background: #CDD9E2; }

a.demo-link i {
  margin-left: 5px;
  font-size: 14px; }

/*When Featured, Add Class .featured to .overview-section*/
.overview-section.featured .overview-right {
  background: #E8EEF5;
  border-radius: 4px;
  text-align: center;
  padding: 20px;
  margin-top: 50px; }

@media (max-width: 1200px) {
  .overview-section.featured .overview-right {
    margin-top: 50px; } }

.overview-section.featured .overview-right h3 {
  color: #30739C;
  text-align: center; }

.overview-section.featured .overview-right p {
  color: #333;
  font-size: 13px; }

.overview-section.featured .overview-right img.promo-graphic {
  max-width: 350px;
  margin: 20px auto; }

/*End Overview Section*/
/*Customers Section*/
.customers-row {
  padding: 80px 0;
  text-align: center;
  background: #edf2f7; }

.customers-row h2 {
  text-transform: capitalize;
  margin-bottom: 0;
  text-align: center; }

.customer-logos-wrapper {
  margin: 35px 0 25px; }

.customer-logos-wrapper ul {
  padding: 0; }

li.customer-logos {
  position: relative;
  padding: 20px 1%;
  width: 16%;
  list-style: none;
  display: inline-block; }

@media (max-width: 767px) {
  li.customer-logos {
    position: relative;
    padding: 20px 0;
    width: 80%;
    margin: 0 auto;
    display: block; } }

li.customer-logos img {
  max-width: 100%; }

.logo-hover {
  background: #dee2e8;
  border-radius: 3px; }

.logo-hover:after {
  content: ' ';
  height: 0;
  position: absolute;
  width: 0;
  border: 10px solid transparent;
  border-top-color: #dee2e8;
  top: 100%;
  left: 50%;
  margin-left: -10px; }

.customers-description {
  margin: 40px 0;
  color: #2A4E68;
  text-align: center; }

.customers-description p {
  padding: 20px 50px;
  border-top: 1px solid #dee2e8;
  border-bottom: 1px solid #dee2e8;
  display: inline; }

@media (max-width: 767px) {
  .customers-description p {
    display: block; } }

.customers-action {
  margin-top: 40px;
  text-align: center; }

a.customer-btn {
  background: #2A4E68;
  color: #fff;
  text-transform: uppercase;
  border-radius: 4px;
  padding: 15px 25px;
  text-decoration: none;
  border-style: none; }

a.customer-btn:hover {
  background: #173D5B;
  color: #fff; }

/*When Featured, Add Class .featured to .customers-row*/
.customers-row.featured .customer-logos-wrapper {
  width: 50%;
  max-width: 1000px;
  margin: 40px 25% 0;
  border-top: 1px solid #DDE3E8;
  padding-top: 20px; }

.customers-row.featured .customer-logos-wrapper hr {
  color: #333; }

.customers-row.featured .customer-logos img {
  width: 90%;
  max-width: 100px; }

.customers-row.featured .customer-logos:hover {
  background: none; }

.customers-row.featured .customer-logos:hover:after {
  display: none; }

.customers-row.featured .customers-action {
  margin-top: 0; }

.customers-row.featured button.customer-btn {
  background: none;
  border-radius: 0;
  padding: 0;
  text-decoration: underline;
  color: #2A4E68;
  text-transform: capitalize; }

.featured-description {
  width: 85%;
  margin: 40px auto; }

@media (max-width: 767px) {
  iframe {
    width: 90%; } }

/*End Customers Section*/
/*Community Section*/
.community-section {
  padding: 75px 0;
  background: url('../images/community-bkgd.jpg') no-repeat center center;
  background-size: cover;
  min-height: 350px; }

.community-section.featured {
  background: url('../images/community-bkgd2.jpg') no-repeat center center;
  background-size: cover; }

.community-graphic {
  max-width: 650px;
  margin: 0 auto; }

@media (max-width: 1200px) {
  .community-graphic {
    margin-bottom: 20px; } }

.community-section h2 {
  color: #fff; }

.community-section p {
  color: #fff; }

@media (max-width: 1200px) {
  .community-section h2 {
    text-align: center; }
  .community-section p {
    text-align: center; } }

a.community-btn {
  font-size: 16px;
  font-weight: 400;
  background: transparent;
  border: 1px solid #fff;
  border-radius: 3px;
  margin-top: 10px;
  padding: 8px 30px 8px 40px;
  color: white;
  float: left; }

a.community-btn i {
  margin-left: 10px; }

a.community-btn:hover {
  text-decoration: none;
  background: rgba(255, 255, 255, 0.2); }

/*When Featured, add .featured to .community-section*/
.community-section.featured h3 {
  color: #fff; }

@media (max-width: 1200px) {
  .community-section.featured h3 {
    text-align: center; } }

.designate-logo {
  max-width: 302px;
  margin: 50px 0 20px; }

@media (max-width: 1200px) {
  .designate-logo {
    margin: 50px auto 20px; } }

.default-community {
  background-color: rgba(5, 54, 86, 0.7);
  border-radius: 4px;
  padding: 30px;
  text-align: center; }

@media (max-width: 1200px) {
  .default-community {
    margin-top: 50px; } }

.default-community h2 {
  margin-top: 0; }

.community-graphic.small {
  max-width: 450px;
  margin: 20px auto; }

a.featured-link {
  display: block;
  background: #DA422F;
  padding: 10px 20px;
  border-radius: 2px;
  width: 80%;
  text-decoration: none;
  margin: 10px auto 0;
  color: #fff;
  font-weight: 600; }

a.featured-link:hover {
  text-decoration: none;
  background: #831917; }

/*End Community Section*/
/*News and Events Section*/
.news-section {
  padding: 70px 0; }

.news-section h2 a {
  font-size: 14px;
  color: #30739C;
  font-weight: 400;
  margin-left: 30px; }

.news-section h2 a:hover {
  color: #28709a;
  text-decoration: none; }

.event-ad, .news-ad {
  width: 100%;
  max-width: 560px;
  margin-bottom: 20px; }

.event-ad-lrg {
  width: 100%;
  height: 113px;
  max-height: 113px;
  max-width: 1140px;
  margin-bottom: 20px;
  background-image: url('../images/paris-summit-lrg.jpg');
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-position: center center; }

@media (max-width: 767px) {
  .event-ad-lrg {
    max-width: 766px;
    background-image: url('../images/paris-summit-sm.jpg');
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: center center; } }

.news-section .news-wrapper ul {
  margin: 30px 0;
  padding-start: 0;
  -webkit-padding-start: 0; }

.news-section .news-wrapper ul li {
  list-style: none; }

.single-event {
  float: left;
  width: 100%;
  padding: 15px 10px;
  border-bottom: 1px solid #ebeff4; }

.single-event:hover {
  background: #edf2f7; }

.single-event.last {
  border-bottom: none; }

.left-event {
  float: left;
  width: 25%; }

@media (min-width: 768px) and (max-width: 981px) {
  .left-event {
    width: 25%; } }

@media (max-width: 767px) {
  .left-event {
    width: 25%; } }

.event-details {
  float: left;
  margin-left: 3%;
  width: 62%; }

@media (min-width: 768px) and (max-width: 981px) {
  .event-details {
    width: 72%; } }

.right-event {
  float: right;
  width: 10%; }

@media (min-width: 768px) and (max-width: 981px) {
  .right-event {
    display: none; } }

.date, .news-type, .planet-type {
  background: #fff;
  border: 2px solid #DA422F;
  border-radius: 4px;
  padding: 5px 15px;
  color: #DA422F;
  font-size: 10px;
  width: 100%;
  text-align: center;
  float: left;
  margin-top: 5px; }

.event-name, .news-title {
  display: block;
  font-size: 14px;
  font-weight: 600;
  color: #333;
  width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; }

.location, .news-date {
  display: block;
  float: left;
  font-style: italic;
  color: #333;
  font-weight: 300; }

.right-arrow {
  float: right;
  background: #d9dfe5;
  border-radius: 100px;
  width: 30px;
  height: 30px;
  padding: 6px 10px;
  color: #fff;
  margin-right: 10px;
  margin-top: 5px;
  display: none; }

.single-event:hover .right-arrow {
  display: block; }

.news-type {
  border: 2px solid #2A4E68;
  color: #2A4E68; }

.planet-type {
  border: 2px solid #68C8C3;
  color: #68C8C3; }

.see-more-bottom {
  width: 100%;
  float: left;
  text-align: center;
  margin-top: 40px; }

.see-more-bottom a {
  color: #2A4E68;
  text-decoration: none;
  padding: 5px 15px;
  border-radius: 4px;
  font-size: 12px;
  font-weight: 400;
  border: 2px solid #2A4E68; }

.see-more-bottom a i {
  margin-left: 10px;
  font-size: 11px; }

/*End News and Events Section*/
/*Photo Row*/
.photo-row-wrapper {
  width: 100%;
  color: #eee;
  max-height: 240px;
  margin-bottom: 10px;
  overflow: hidden;
  margin-top: 60px; }

@media (max-width: 765px) {
  .photo-row-wrapper {
    display: none; } }

.photo-container {
  width: 4000px;
  max-height: 240px;
  margin-left: -30px; }

.photo-container img {
  margin: 0 10px 0 0;
  max-width: 22%;
  max-height: 240px; }

/*End Photo Row*/
/*Footer*/
footer {
  background: #333333;
  padding: 70px 0; }

.footer-links h3 {
  color: #fff;
  font-size: 14px;
}

.footer-links ul {
  margin-left: 0;
  padding-start: 0;
  padding: 0;
  -webkit-padding-start: 0; }

.footer-links ul li a {
  color: #aaa;
  font-size: 12px;
  font-weight: 400;
  list-style: none;
  margin-left: 0; }

.social-icons {
  width: 40px;
  min-height: 40px;
  display: inline-block;
  margin-right: 10px; }

.footer-twitter {
  background: url('../images/footer-twitter.png') no-repeat; }

.footer-twitter:hover {
  background: url('../images/footer-twitter-hover.png') no-repeat; }

.footer-facebook {
  background: url('../images/footer-facebook.png') no-repeat; }

.footer-facebook:hover {
  background: url('../images/footer-facebook-hover.png') no-repeat; }

.footer-linkedin {
  background: url('../images/footer-linkedin.png') no-repeat; }

.footer-linkedin:hover {
  background: url('../images/footer-linkedin-hover.png') no-repeat; }

.footer-youtube {
  background: url('../images/footer-youtube.png') no-repeat; }

.footer-youtube:hover {
  background: url('../images/footer-youtube-hover.png') no-repeat; }

.newsletter-form {
  margin: 10px 0 30px;
  width: 100%; }

.newsletter-form label {
  color: #aaa;
  font-size: 12px;
  font-weight: 300;
  display: block; }

.newsletter-input {
  display: inline-block;
  background: transparent;
  border: 2px solid #888;
  border-radius: 4px;
  color: #888;
  font-size: 12px;
  font-weight: 400;
  padding: 10px 15px;
  width: 70%; }

@media (max-width: 767px) {
  .newsletter-input {
    width: 70%; } }

.newsletter-input::-webkit-input-placeholder {
  color: #888;
  font-size: 12px;
  font-weight: 400;
  text-transform: uppercase; }

.newsletter-input:-moz-placeholder {
  /* Firefox 18- */
  color: #888;
  font-size: 12px;
  font-weight: 400;
  text-transform: uppercase; }

.newsletter-input::-moz-placeholder {
  /* Firefox 19+ */
  color: #888;
  font-size: 12px;
  font-weight: 400;
  text-transform: uppercase; }

.newsletter-input:-ms-input-placeholder {
  color: #888;
  font-size: 12px;
  font-weight: 400;
  text-transform: uppercase; }

.newsletter-input:focus {
  outline: none;
  border: 2px solid #666; }

.newsletter-btn {
  margin-left: 1%;
  display: inline-block;
  background: transparent;
  border: 2px solid #30739C;
  border-radius: 4px;
  color: #30739C;
  font-size: 12px;
  font-weight: 400;
  padding: 10px 15px;
  text-transform: uppercase;
  width: 27%; }

@media (max-width: 767px) {
  .newsletter-btn {
    width: 18%;
    margin-left: 2%;
    padding: 10px; } }

.newsletter-btn:hover {
  border: 2px solid #888;
  color: #999; }

.fine-print {
  margin-top: 20px;
  color: #aaa;
  font-size: 12px; }

.fine-print a {
  color: #aaa;
  text-decoration: underline; }

.fine-print a:hover {
  color: #fff; }

.footer-bottom {
  background: #222;
  padding: 15px 0;
  text-align: center;
  width: 100%; }

.feedback-input {
  display: inline-block;
  background: #222;
  border: 2px solid #444;
  border-radius: 4px;
  color: #777;
  font-size: 12px;
  font-weight: 400;
  padding: 10px 20px;
  width: 310px; }

@media (max-width: 767px) {
  .feedback-input {
    width: 70%; } }

.feedback-input::-webkit-input-placeholder {
  color: #555;
  font-size: 12px;
  font-weight: 400; }

.feedback-input:-moz-placeholder {
  /* Firefox 18- */
  color: #555;
  font-size: 12px;
  font-weight: 400; }

.feedback-input::-moz-placeholder {
  /* Firefox 19+ */
  color: #555;
  font-size: 12px;
  font-weight: 400; }

.feedback-input:-ms-input-placeholder {
  color: #555;
  font-size: 12px;
  font-weight: 400; }

.feedback-input:focus {
  outline: none;
  border: 2px solid #666; }

.feedback-btn {
  margin-left: 11px;
  display: inline-block;
  background: #222;
  border: 2px solid #666;
  border-radius: 4px;
  color: #777;
  font-size: 12px;
  font-weight: 400;
  padding: 10px 30px; }

@media (max-width: 767px) {
  .feedback-btn {
    width: 18%;
    margin-left: 2%;
    padding: 10px; } }

.feedback-btn:hover {
  border: 2px solid #888;
  color: #999; }

/*End Footer*/
/* Line below navigation */
.navbar-default {
  border-bottom: 1px solid #ddd; }

#home.navbar-default {
  border-bottom: none; }

/*End General Inner Page Styles*/
/*Events Page*/
.eventsBanner {
  height: 150px;
  padding: 20px; }

.eventsPhotoCaption {
  background: rgba(0, 0, 0, 0.3);
  border-radius: 4px;
  padding: 10px;
  color: white; }

.news-section.full {
  padding: 20px 0; }

.eventTitleArea {
  text-align: center;
  margin: 40px 0; }

.eventTitleArea h1 {
  font-weight: 300; }

.postEvent {
  float: left;
  width: 100%;
  height: 130px;
  padding: 30px 5%;
  background: #F4F5F8;
  margin: 20px 0 10px;
  text-align: center; }

.postEvent p {
  margin-bottom: 20px; }

.postEvent a {
  background: #2A4E68;
  padding: 10px 25px;
  border-radius: 4px;
  color: #fff; }

.eventBlock {
  float: left;
  width: 100%; }

.eventBlock.summit .date {
  border-color: #2A4E68;
  color: #2A4E68; }

.eventBlock.past h2 {
  margin-top: 50px; }

.eventBlock.past .date {
  border-color: #68C8C3;
  color: #68C8C3; }

/*End Events Page*/
/*Community Page*/
.communityBoxes {
  margin: 30px 0 10px;
  font-size: 13px; }

.communityBoxes h2 {
  font-size: 20px;
  font-weight: 400;
  margin-bottom: 15px; }

.communityBoxes h2 a {
  color: #DA422F; }

.developersRow {
  border-top: 1px solid #eee;
  border-bottom: 1px solid #eee;
  padding: 20px 30px;
  margin-bottom: 30px; }

.devLabel {
  float: left;
  margin-right: 30px;
  font-weight: 700; }

ul#developerActivity {
  float: left;
  padding-left: 0;
  margin: 0; }

ul#developerActivity li {
  list-style: none;
  display: inline-block; }

ul#developerActivity li a {
  font-weight: 700;
  color: #222; }

ul#developerActivity li span {
  background: #E8EEF5;
  padding: 5px 10px;
  border-radius: 4px;
  margin-right: 5px;
  color: #2A4E68;
  font-size: 11px;
  font-weight: 400; }

/*End Community Page*/
/*Software Page*/
.software {
  margin-top: 30px; }

.software-top {
  text-align: center; }

.software-top h1 {
  margin: 5px 0 10px; }

p.icon {
  text-align: center;
  margin: 40px 0 0; }

p.software-description {
  text-transform: uppercase;
  font-size: 13px;
  color: #777; }

.openstack-diagram {
  margin-bottom: 3em; }

div.screenshots {
  padding: 30px 0 20px;
  margin: 30px 0;
  border-top: 1px solid #edf2f7;
  border-bottom: 1px solid #edf2f7;
  width: 100%; }

.screenshots ul {
  padding: 0;
  margin: 0;
  text-align: center; }

.screenshots ul li {
  list-style: none;
  display: inline-block; }

@media (max-width: 767px) {
  .screenshots ul li {
    margin-bottom: 30px; } }

.screenshots ul li a img {
  width: 100%;
  border: 4px solid #edf2f7; }

.screenshots ul li a img:hover {
  border-color: #30739C; }

.screenshots ul li p {
  margin: 10px 0 0;
  font-size: 12px;
  color: #30739C;
  text-align: center; }

.newSubNav li#start a.current, .newSubNav li#start a.current:hover {
  color: #488613;
  background-color: #DDFFE2; }

ul.slides h3 {
  text-align: center;
  margin: 0 0 30px; }

.tabSet {
  background: #edf2f7;
  border: 1px solid #30739C;
  margin: 30px 0;
  padding-top: 20px;
  padding-bottom: 20px; }

.tabContent table {
  width: 100%;
  margin: 0;
  table-layout: fixed;
  word-wrap: break-word; }

.get-started-wrapper h3 {
  text-align: center;
  margin: 40px 0; }

a.start-btn {
  background: #30739C;
  color: #fff;
  text-transform: capitalize;
  font-size: 12px;
  border-radius: 2px;
  padding: 10px 15px;
  text-decoration: none;
  border-style: none;
  display: inline-block; }

img.deploy-powered {
  margin-top: 40px; }

@media (max-width: 767px) {
  img.deploy-powered {
    margin: 10px 0 30px; } }

img.deploy-compatible {
  margin-top: 30px; }

@media (max-width: 767px) {
  img.deploy-compatible {
    margin: 10px 0 30px; } }

img.icehouse-video {
  max-width: 100%; }

.documentation {
  margin-top: 50px;
  text-align: center;
  background: #edf2f7;
  border-radius: 4px;
  padding: 30px 0; }

.documentation a {
  padding: 7px 20px;
  background: #30739C;
  color: #edf2f7;
  margin: 0 8px;
  border-radius: 4px; }

.documentation a:hover {
  text-decoration: none;
  background: #2A4E68; }

@media (max-width: 767px) {
  .documentation a {
    padding: 5px 10px;
    margin: 0 5px;
    font-size: 12px; } }

/*End Sofware Page*/
/*Marketplace Page*/
h2.marketplace-header {
  border-left: 3px solid #DA422F;
  line-height: 1.2em;
  margin: 30px 20px;
  padding-left: 15px;
  font-size: 1.5em; }

.build-use-box {
  background: #edf2f7;
  border-radius: 4px;
  margin-bottom: 30px;
  min-height: 25em;
  padding: 20px; }

.build-use-box h3 {
  margin-bottom: 20px; }

.build-use-box ul {
  padding-left: 20px; }

.marketplace-description {
  margin-top: 50px; }

.video {
  width: 100%; }

.video iframe {
  width: 100%;
  height: 225px; }

.program-logos {
  border-top: 1px solid #eee;
  margin-top: 60px;
  padding-top: 60px; }

.ecosystem-wrapper {
  padding-left: 30px;
  border-left: 1px solid #eee; }

.marketplace-top-wrapper {
  padding: 20px 0 0; }

.marketplace-brand {
  margin-top: 20px;
  padding-left: 30px; }

h2.marketplace {
  margin-bottom: -7px;
  margin-top: 0;
  font-size: 18px;
  font-style: normal;
  letter-spacing: -0.076em;
  line-height: 1em; }

h2.marketplace a, h2.marketplace a:hover {
  color: #5B83A0;
  text-decoration: none; }

h1.marketplace {
  font-size: 24pt;
  margin-top: 5px;
  text-align: left; }

h1.marketplace:hover {
  text-decoration: none; }

h1.marketplace a, h1.marketplace a.visited {
  color: #264D69;
  font-style: normal;
  letter-spacing: -0.076em;
  line-height: 1em; }

.grey-bar {
  background-color: #edf2f7;
  margin-bottom: 40px;
  margin-top: 0;
  padding-bottom: 10px;
  padding-top: 10px; }

ul.marketplace-nav {
  padding: 0;
  margin: 0; }

ul.marketplace-nav li {
  border-right: 1px solid #e8e8e8;
  display: inline-block;
  padding-left: 0.5em;
  padding-right: 0.5em;
  text-transform: uppercase;
  width: 130px;
  height: 96px;
  vertical-align: top;
  text-align: center; }

ul.marketplace-nav li:last-child {
  border-right: none; }

@media (min-width: 680px) and (max-width: 1000px) {
  ul.marketplace-nav li {
    width: 100px;
    height: 110px; }
  ul.marketplace-nav li a {
    font-size: 10px; } }

@media (max-width: 680px) {
  ul.marketplace-nav li {
    display: block;
    float: left;
    border-right: none;
    text-align: left;
    border-bottom: 1px solid #e8e8e8;
    width: 100%;
    height: auto;
    padding: 5px 10px;
    vertical-align: middle; } }

ul.marketplace-nav li a {
  color: #848575;
  text-decoration: none;
  font-size: 12px;
  vertical-align: middle;
  width: 115px;
  text-align: center; }

@media (max-width: 680px) {
  ul.marketplace-nav li a {
    padding: 0;
    vertical-align: middle;
    float: left;
    width: 100%;
    text-align: left; } }

ul.marketplace-nav a:hover {
  color: #DA422F; }

ul.marketplace-nav a span {
  background: url("http://openstack.org/marketplace/code/ui/frontend/images/marketplace-icons.png") no-repeat scroll 0 0 rgba(0, 0, 0, 0);
  display: block;
  height: 50px;
  margin: auto;
  width: 40px;
  text-align: center; }

@media (max-width: 680px) {
  ul.marketplace-nav a span {
    display: table-cell;
    vertical-align: middle;
    float: left; } }

ul.marketplace-nav #training a span {
  background-position: 0 0; }

ul.marketplace-nav #distros a span {
  background-position: -50px 0; }

ul.marketplace-nav #public-clouds a span {
  background-position: -150px 0; }

ul.marketplace-nav #private-clouds a span {
  background-position: -250px 0; }

ul.marketplace-nav #consulting a span {
  background-position: -100px 0; }

ul.marketplace-nav #drivers a span {
  background-position: -200px 0; }

ul.marketplace-nav .current a {
  color: #DA422F; }

/*End Marketplace Page*/
/*Marketplace Listing Page*/
.product-box {
  border: 1px solid #E8E8E8;
  margin-bottom: 30px;
  padding: 30px 20px;
  border-radius: 4px;
  min-height: 200px;
  border-left: 3px solid #DA422F; }

.logo-area {
  padding-top: 20%;
  padding-left: 10px; }

@media (max-width: 767px) {
  .logo-area {
    padding-top: 0;
    padding-left: 0; } }

.company-details-area h4 {
  text-transform: uppercase;
  font-weight: 300; }

.details-button {
  background: url("http://openstack.org/marketplace/code/ui/frontend/images/register-arrow.png") no-repeat scroll 85% center #000000;
  color: #FFFFFF !important;
  display: inline-block;
  margin-right: -10px;
  padding: 10px 2%;
  text-align: left;
  text-transform: uppercase;
  width: 100px;
  font-size: 12px;
  border-radius: 4px; }

.filter-label {
  background: url("/images/images/marketplace-search-icon.png") no-repeat scroll left 7px rgba(0, 0, 0, 0);
  color: #30739C;
  float: left;
  margin-bottom: 0;
  margin-top: 5px;
  padding-left: 25px;
  padding-right: 20px;
  padding-top: 8px;
  text-transform: uppercase;
  font-size: 12px; }

input#name-term {
  height: 40px;
  width: 250px;
  font-size: 12px;
  padding: 5px 10px;
  border: 1px solid #e8e8e8;
  color: #30739C;
  border-radius: 4px; }

input#name-term::-webkit-input-placeholder {
  color: #30739C;
  font-size: 12px; }

select#service-term {
  height: 40px;
  width: 200px;
  padding: 5px 10px;
  position: relative;
  border-radius: 4px;
  color: #30739C;
  background: #fff;
  border: 1px solid #e8e8e8;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: inline-block;
  cursor: pointer;
  font-size: 12px;
  font-weight: 400; }

label#service-label {
  position: relative; }

label#service-label:after {
  content: '>';
  color: #30739C;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
  right: 14px;
  top: 6px;
  padding: 0 0 6px;
  border-bottom: 1px solid #e8e8e8;
  position: absolute;
  pointer-events: none;
  font-size: 14px;
  font-weight: 400; }

label#service-label:before {
  content: '';
  right: 6px;
  top: 0px;
  width: 20px;
  height: 20px;
  background: #f8f8f8;
  position: absolute;
  pointer-events: none;
  display: block; }

@media (max-width: 767px) {
  .filter-label {
    width: 100%;
    margin-bottom: 10px; }
  input#name-term {
    display: block;
    width: 100%;
    margin-bottom: 10px; }
  select#service-term {
    min-width: 400px; } }

ul.resource-links {
  padding: 0;
  margin: 0 0 30px; }

ul.resource-links li {
  list-style: none;
  display: block; }

ul.resource-links li a {
  background-image: url('../images/resource-link-icon.png');
  background-repeat: no-repeat;
  background-position: 93% 50%;
  background-color: #edf2f7;
  padding: 15px 15px;
  margin: 0 0 5px;
  display: block;
  border-radius: 4px; }

ul.resource-links li a:hover {
  text-decoration: none;
  background-color: #DAE1EB; }

.add-your-course {
  border-radius: 4px;
  border: 1px solid #30739C;
  background: #fff;
  padding: 20px;
  font-size: 13px; }

/*404 Page*/
.four-o-four-wrapper {
  text-align: center;
  margin: 50px auto; }

.four-o-four-wrapper img {
  width: 100%;
  max-width: 650px;
  margin: 50px 0 70px; }

.four-o-four-wrapper p {
  color: #8a959e; }

.four-o-four-wrapper a {
  color: #30739C;
  text-decoration: none; }

.four-o-four-links {
  margin-top: 50px; }

.four-o-four-links a {
  color: #30739C;
  padding: 0 10px;
  text-decoration: none; }

@media (max-width: 767px) {
  .four-o-four-links a {
    padding: 0 5px; } }

/*End 404 Page*/
/*Blog Page*/
.blog-title {
  width: 100%;
  background: url(/images/images/summit-promo-bkgd1.jpg) no-repeat center center;
  background-size: cover;
  padding: 50px 0;
  text-align: center; }

.blog-o {
  max-width: 80px;
  opacity: 0.9; }

.blog-title h1 {
  color: white;
  font-weight: 400;
  font-size: 45px;
  margin: 10px 0; }

.blog-title h1 span {
  font-size: 16px;
  display: block;
  padding-top: 10px;
  color: white;
  font-weight: 300; }

.container.blog {
  margin-top: 30px; }

.post {
  margin-bottom: 60px; }

.post-byline {
  border-bottom: 1px dotted #c5e2ea;
  border-top: 1px dotted #c5e2ea;
  margin-bottom: 15px;
  padding: 12px 0;
  font-size: 12px; }

.post-byline p {
  margin-bottom: 0; }

.post-byline .name a {
  color: #DA422F; }

.post-byline .postDate {
  text-align: right;
  color: #2A4E68; }

.entry h1 {
  font-size: 24px; }

.entry h2 {
  font-size: 20px; }

.entry h3 {
  font-size: 18px; }

.entry h3 a {
  text-decoration: underline; }

#sidebar {
  background: #edf2f7;
  padding: 15px;
  border-radius: 4px;
  margin-top: 0; }

#sidebar ul {
  margin: 0; }

#sidebar ul li {
  font-size: 12px; }

.creative-commons {
  text-align: center;
  margin-top: 40px;
  font-size: 12px; }

.creative-commons img {
  margin-bottom: 10px; }

.navigation a {
  background: #30739C;
  padding: 5px 10px;
  border-radius: 4px;
  color: white; }

/*End Blog Page*/
/*Vancouver Summit Landing Page*/
.summit-landing-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  text-align: center;
  padding: 70px 0;
  background: url('../images/summit-vancouver-bkgd.jpg') no-repeat 0 0;
  background-size: cover; }

img.summit-landing-logo {
  max-width: 200px;
  margin-bottom: 40px; }

.save-the-date {
  color: white;
  margin-bottom: 0px;
  font-size: 16px;
  font-weight: 400;
  text-transform: capitalize; }

.summit-landing-wrapper h1 {
  color: white;
  font-weight: 300;
  font-size: 20px;
  margin: 8px 0 10px;
  text-transform: uppercase; }

.summit-landing-wrapper p {
  color: white; }

.summit-landing-wrapper .summit-location {
  display: block;
  font-weight: 400;
  font-size: 60px;
  color: white;
  text-align: center;
  text-transform: uppercase;
  position: relative;
  display: inline-block;
  -webkit-margin-before: 0;
  -webkit-margin-after: 0; }

.summit-landing-wrapper .summit-location::before {
  content: "";
  border-top: 1px solid #edf2f7;
  width: 150px;
  height: 5px;
  position: absolute;
  margin-right: 15px;
  top: 50%;
  right: 100%; }

.summit-landing-wrapper .summit-location::after {
  content: "";
  border-top: 1px solid #edf2f7;
  width: 150px;
  height: 5px;
  position: absolute;
  margin-left: 15px;
  top: 50%;
  left: 100%; }

@media (max-width: 767px) {
  .summit-landing-wrapper h1 {
    font-size: 15px; }
  .summit-landing-wrapper .summit-location {
    font-size: 40px; }
  .summit-landing-wrapper .summit-location::before {
    width: 75px; }
  .summit-landing-wrapper .summit-location::after {
    width: 75px; } }

.summit-date {
  background: none;
  font-size: 25px;
  margin-top: 30px;
  color: white; }

.summit-date span {
  display: block;
  margin-top: 20px;
  font-size: 12px;
  font-weight: 300;
  text-transform: uppercase; }

.landing-social {
  margin-top: 40px; }

.landing-social .social-icons {
  width: 25px;
  min-height: 25px;
  display: inline-block;
  margin: 0 10px; }

.landing-twitter {
  background: url('../images/landing-twitter.png') no-repeat;
  opacity: 0.8; }

.landing-twitter:hover {
  opacity: 1; }

.landing-facebook {
  background: url('../images/landing-facebook.png') no-repeat;
  opacity: 0.8; }

.landing-facebook:hover {
  opacity: 1; }

.landing-linkedin {
  background: url('../images/landing-linkedin.png') no-repeat;
  opacity: 0.8; }

.landing-linkedin:hover {
  opacity: 1; }

.summit-landing-bottom {
  position: absolute;
  bottom: 0;
  left: 50%; }

.summit-landing-bottom p {
  color: white; }

.landing-footer {
  position: relative;
  left: -50%; }

.landing-footer a {
  width: 150px;
  padding: 5px 0 0;
  display: inline-block;
  background: #DA422F;
  text-align: center;
  color: white;
  border-top-left-radius: 2px;
  border-top-right-radius: 2px; }

.landing-footer a:hover {
  background: #BD2723; }

.landing-footer a img {
  position: relative;
  margin: 0;
  padding: 0;
  max-width: 100px; }

.summit-landing-wrapper a i {
  color: #edf2f7; }

.summit-landing-wrapper a i:hover {
  color: white; }

/*End Vancouver Summit Landing Page*/
/* site banner */
.top-site-banner {
  background-color: #F0F9FE;
  color: #4D96C7;
  padding-top: 10px; }

.top-site-banner-button {
  border-radius: 5px;
  border: 1px solid #C6E5FC;
  font-size: 90%;
  padding: 0px 10px;
  background-color: white;
  display: inline-block;
  color: #4D96C7;
  text-transform: uppercase; }

.top-site-banner-button:hover {
  text-decoration: none;
  background-color: #F0F9FE; }

/* end of site banner */

/*News page*/
.grey-bar.news {
  margin-bottom: 0;
  padding: 20px;
  text-align: right; }

.grey-bar.news a {
  font-size: 12px;
  text-transform: uppercase;
  color: #30739C; }

.grey-bar.news a:hover {
  color: #2A4E68;
  text-decoration: none; }

.grey-bar.news a i {
  margin-right: 5px; }

.grey-bar.news a.manage-news-link {
  color: #889E2F;
  margin-right: 20px; }

.grey-bar.news a.manage-news-link:hover {
  color: #5A6E1D; }

.carousel {
  height: 350px; }

.carousel-inner {
  height: 350px; }

.carousel-inner img {
  min-height: 350px;
  height: 100%;
  min-width: 100%;
  max-width: none;
  width: auto;
  opacity: 0.6; }

.carousel-inner > .item > img, .carousel-inner > .item > a > img {
  min-width: 100%;
  max-width: none;
  width: 100%; }

@media (max-width: 767px) {
  .carousel-inner > .item > img, .carousel-inner > .item > a > img {
    width: auto; } }

.carousel-inner .item {
  height: 350px;
  background: #2A4E68; }

.carousel-control {
  text-shadow: none; }

.carousel-control i {
  position: absolute;
  top: 50%;
  z-index: 5;
  display: inline-block; }

.carousel-control.right i {
  right: 50%;
  margin-top: -15px;
  margin-right: -15px; }

.carousel-control.left i {
  left: 50%;
  margin-top: -15px;
  margin-left: -15px; }

.carousel-caption {
  text-shadow: none;
  bottom: 60px; }

.carousel-caption h3 {
  color: white; }

.carousel-caption a.more-btn {
  display: block;
  color: white;
  background: #DA422F;
  border-radius: 4px;
  padding: 5px 10px;
  margin: 0 auto 20px;
  max-width: 150px;
  text-transform: uppercase;
  font-size: 12px; }

.carousel-caption a.more-btn:hover {
  text-decoration: none;
  background: #B92623; }

.newsFeatured {
  margin: 40px 0 60px;
  float: left;
  text-align: left;
  padding-bottom: 10px;
  border-bottom: 1px solid #edf2f7; }

.featuredImage {
  position: relative;
  width: 100%;
  height: 180px;
  overflow: hidden;
  margin-bottom: 10px;
  background: #30739C; }

.featuredImage img {
  width: 100%;
  /*    width: auto;*/ }

.featuredHeadline {
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.6);
  padding: 15px 10px;
  font-weight: 400;
  color: white; }

.featuredHeadline .more {
  display: none;
  text-align: center;
  margin: 30px auto 20px;
  text-transform: uppercase;
  font-weight: 600;
  background: white;
  border-radius: 2px;
  padding: 10px;
  width: 150px;
  color: #333; }

.featuredHeadline .more i {
  margin-left: 8px; }

.featuredHeadline .more:hover {
  background: #eee; }

.featuredImage:hover .featuredHeadline, .open .featuredHeadline {
  top: 0; }

.featuredImage:hover .more, .open .more {
  display: block; }

.featuredImage:hover .featuredDate {
  display: none; }

.featuredDate {
  font-size: 12px;
  position: absolute;
  top: 5px;
  left: 10px;
  color: white; }

.featuredSummary {
  font-size: 12px;
  color: #555; }

ul.featured {
  padding: 0;
  margin: 0; }

ul.featured li {
  list-style: none;
  margin-bottom: 30px;
  border-radius: 4px; }

@media (max-width: 767px) {
  ul.featured li {
    margin-bottom: 20px; } }

.recentBox {
  margin-bottom: 30px; }

.itemTimeStamp {
  font-size: 12px;
  color: #999;
  margin-left: 10px;
  padding-left: 10px;
  border-left: 1px solid #aaa; }

.news-sidebar {
  background: #edf2f7;
  padding: 15px;
  border-radius: 4px;
  margin-top: 0; }

.see-all-events {
  float: right; }

.see-all-events a {
  font-size: 12px; }

.eventBlock {
  padding-left: 15px;
  font-size: 12px; }

.eventBlock h3 {
  margin-bottom: 15px; }

.eventBlock .event {
  margin-bottom: 20px; }

.eventBlock .event.top {
  margin-top: 20px; }

/*End News page*/
/*Single News Page*/
.newsHome {
  margin: 20px 0 30px; }

.newsHome a {
  text-transform: uppercase;
  font-size: 12px; }

.newsHome i {
  margin-right: 10px; }

.news-single h1 {
  margin-bottom: 60px; }

.news-summary {
  background: #edf2f7;
  color: #30739C;
  padding: 30px;
  text-align: center;
  width: 80%;
  margin: -10px 10% 60px;
  border-radius: 4px; }

.news-byline {
  border-bottom: 1px dotted #c5e2ea;
  border-top: 1px dotted #c5e2ea;
  margin: 40px 0 15px;
  padding: 18px 0 10px;
  font-size: 12px; }

.news-byline a.link {
  color: #DA422F; }

.news-byline p.postDate {
  color: #2A4E68;
  text-align: right; }

/*End Single News Page*/
/*Videos Home Page*/
.main-video-wrapper {
  width: 100%;
  background: #222;
  height: auto;
  margin: 0 0 30px;
  text-align: center;
  -moz-box-sizing: border-box;
       box-sizing: border-box; }

a.main-video {
  position: relative;
  display: block;
  max-width: 617px;
  margin: 0 auto;
  border-left: 1px solid #eee;
  border-right: 1px solid #eee; }

a.main-video .video-description-wrapper {
  position: absolute;
  display: block;
  background: rgba(0, 0, 0, 0.7);
  bottom: 0;
  left: 0;
  right: 0;
  top: 230px;
  text-align: left;
  z-index: 1000;
  padding: 20px; }

@media (max-width: 767px) {
  a.main-video .video-description-wrapper {
    top: 60%; } }

@media (max-width: 480px) {
  a.main-video .video-description-wrapper {
    top: 50%; } }

a.main-video .video-description-wrapper .video-description {
  width: 80%;
  float: left; }

a.main-video .video-description-wrapper .video-description h3 {
  color: white;
  font-size: 22px;
  font-weight: 600;
  width: 100%;
  height: 25px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis; }

a.main-video .video-description-wrapper .video-description p {
  color: white;
  font-size: 13px;
  line-height: 1.2;
  font-weight: 400;
  padding: 0;
  display: block;
  width: 100%;
  height: 15px;
  margin: 0 auto;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; }

a.main-video:hover .video-description-wrapper {
  top: 0; }

a.main-video:hover .video-description-wrapper .video-description h3 {
  height: 10%;
  white-space: normal; }

a.main-video:hover .video-description-wrapper .video-description p {
  height: 90%;
  white-space: normal; }

@media (max-width: 480px) {
  a.main-video:hover .video-description-wrapper {
    top: 50%; }
  a.main-video:hover .video-description-wrapper .video-description h3 {
    height: 25px;
    white-space: nowrap; }
  a.main-video:hover .video-description-wrapper .video-description p {
    height: 15px;
    white-space: nowrap; } }

.main-video img {
  margin: 0 auto;
  width: 100%;
  max-width: 615px;
  max-height: 100%;
  display: block;
  position: relative;
  z-index: 1; }

.play-btn {
  float: right;
  color: white;
  font-size: 40px;
  width: 20%;
  margin-top: 5px;
  text-align: center; }

.play-btn img#play {
  max-width: 70px;
  max-height: 70px; }

.featured-row {
  width: 100%;
  background: #2A4E68;
  padding: 0;
  position: relative;
  display: block;
  margin-bottom: 50px; }

.featured-row h2 {
  color: white;
  font-weight: 400;
  font-size: 24px; }

.featured-row h2 span {
  font-weight: 400;
  font-size: 12px;
  color: #edf2f7;
  margin-left: 20px; }

.featured-row:after {
  top: 100%;
  left: 10%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
  border-color: rgba(42, 78, 104, 0);
  border-top-color: #2A4E68;
  border-width: 15px;
  margin-left: -15px; }

.daily-recap-wrapper .video-thumb-title {
  text-align: center; }

.video-thumb {
  /*background: $lightblue;*/
  text-align: center;
  width: 100%;
  height: 0;
  position: relative;
  display: table;
  overflow: hidden;
  margin-bottom: 20px;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

.thumb-play {
  display: none;
  background-image: url("//www.openstack.org/themes/openstack/images/landing-pages/auto/play-button.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-color: rgba(0, 0, 0, 0.3);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0; }

.video-thumb:hover .thumb-play {
  display: block; }

@media (max-width: 767px) {
  .video-thumb .thumb-play {
    display: block;
    background-color: transparent; } }

.video-thumb img.video-thumb-img {
  max-width: 100%;
  width: 100%; }

.video-thumb p {
  color: #C6CDD6;
  font-size: 14px;
  font-weight: 700;
  display: table-cell;
  vertical-align: middle; }

.sort-row {
  background: #edf2f7;
  width: 100%;
  min-height: 50px;
  padding: 25px 0;
  position: relative;
  display: block;
  margin: 50px 0;
  color: #2A4E68; }

.sort-left {
  float: left; }

.sort-left i {
  color: #b4c5d6;
  line-height: 1;
  margin-right: 10px; }

.sort-left i:hover {
  color: #2A4E68;
  cursor: pointer; }

.sort-left i.active {
  color: #2A4E68; }

.sort-right {
  float: right;
  font-size: 12px;
  text-transform: uppercase;
  font-weight: 600; }

.sort-right i {
  margin-left: 10px;
  font-weight: 700;
  font-size: 14px; }

.video-thumb-title {
  margin: -10px 0 0;
  color: #2A4E68;
  font-size: 12px;
  font-weight: 400;
  width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; }

.video-thumb-speaker {
  color: #2A4E68;
  font-size: 12px;
  font-weight: 600;
  margin-bottom: 40px;
  width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; }

@media (max-width: 767px) {
  .daily-recap-wrapper .video-thumb-title {
    margin-bottom: 40px; }
  .video-thumb-title, .video-thumb-speaker {
    text-align: center; } }

.video-thumb-description {
  display: none; }

.video-dropdown > .dropdown-menu {
  margin: 20px -20px 0;
  padding: 10px 0;
  min-width: 230px;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  left: -99%;
  right: 100%;
  background-color: #edf2f7;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0);
  box-shadow: none; }

/*.video-dropdown>.dropdown-menu:after, .video-dropdown>.dropdown-menu:before {
    bottom: 100%;
    right: 25%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
}
.video-dropdown>.dropdown-menu:after {
    border-color: rgba(255, 255, 255, 0);
    border-bottom-color: #fff;
    border-width: 15px;
    margin-left: -15px;
}
.video-dropdown>.dropdown-menu:before {
    border-color: rgba(170, 170, 170, 0);
    border-bottom-color: #aaaaaa;
    border-width: 15px;
    margin-left: -16px;
}*/
.video-dropdown > .dropdown-menu li a {
  text-transform: uppercase;
  padding: 13px 20px;
  font-size: 12px;
  color: #2A4E68; }

.video-dropdown > .dropdown-menu li a:hover {
  color: white;
  background: #2A4E68; }

.video-dropdown > .dropdown-menu li a:focus {
  outline: none; }

/*End Videos Home Page*/
/* Change Video Gallery View */
@media (min-width: 768px) {
  .video-list .col-lg-3, .video-list .col-md-3, .video-list .col-sm-3 {
    width: 100%; }
  .video-list .video-thumb {
    max-width: 270px;
    width: 24%;
    float: left;
    margin-right: 1%; }
  .video-list .video-details {
    margin: 10px 0 0 1%;
    float: left;
    width: 74%; } }

.video-list .video-thumb-speaker {
  margin-bottom: 20px; }

.video-list .video-details, .video-list .video-thumb-title, .video-list .video-thumb-speaker {
  text-align: left; }

.video-list .video-thumb-title {
  font-size: 14px;
  font-weight: 600; }

.video-list .video-thumb-description {
  color: #2A4E68;
  font-size: 12px;
  display: block;
  overflow: hidden; }

@media (min-width: 1180px) {
  .video-list .video-thumb-description {
    max-height: 130px; } }

@media (min-width: 991px) and (max-width: 1179px) {
  .video-list .video-thumb-description {
    max-height: 100px; } }

@media (min-width: 768px) and (max-width: 990px) {
  .video-list .video-thumb-description {
    max-height: 70px; } }

/* End Change Video Gallery View */
/*Video Inner Page*/
.single-video-details {
  margin: 60px auto; }

.single-video-details h3 {
  text-align: left; }

.single-video-details strong {
  color: #2A4E68; }

.video-share {
  text-align: right;
  float: right; }

.video-share a i {
  font-size: 22px;
  margin-left: 20px;
  vertical-align: middle;
  color: #759bb7; }

.video-share a i:hover {
  color: #2A4E68; }

@media (max-width: 767px) {
  .video-share {
    float: none;
    text-align: center;
    margin: -20px 0 20px;
    padding-top: 20px;
    padding-bottom: 20px;
    border-top: 1px solid #eee;
    border-bottom: 1px solid #eee; }
  .video-share a i {
    margin: 0 10px; } }

.video-share a i.fa-twitter {
  font-size: 24px;
  margin-bottom: -1px; }

p.single-video-description {
  margin: 10px 0 40px; }

.video-categories a {
  margin-left: 10px;
  text-decoration: underline; }

.video-tags {
  margin-top: 15px; }

.video-tags a {
  background: #edf2f7;
  font-size: 10px;
  font-weight: 600;
  border-radius: 3px;
  margin-left: 10px;
  padding: 5px 10px; }

.video-speakers {
  margin-top: 15px;
  display: block; }

.video-speakers p a {
  margin-left: 0;
  text-decoration: underline; }

.video-speakers .twitter-follow-button {
  margin-left: 10px; }

.video-media-title {
  margin: 0 0 10px;
  display: block; }

@media (max-width: 767px) {
  .video-media-wrapper {
    margin-top: 30px; } }

.media-btn-wrapper {
  float: left;
  margin-top: 10px; }

a.media-btn {
  background: #2A4E68;
  color: white;
  padding: 10px 20px;
  border-radius: 4px;
  border: 0; }

a.media-btn:hover {
  text-decoration: none;
  background: #16283A; }

a.media-btn i {
  margin-right: 10px; }

a.media-btn.right {
  border-top-left-radius: 0px;
  border-bottom-left-radius: 0px;
  margin-left: -2px;
  border-left: 1px solid #3E71A4; }

a.media-btn.left {
  border-top-right-radius: 0px;
  border-bottom-right-radius: 0px;
  margin-right: -2px;
  border-right: 1px solid #122231; }

/*End Video Inner Page*/
/*Docs Main*/
.top-docs-wrapper {
  width: 100%;
  background: #edf2f7;
  padding: 60px 0; }

.top-docs-wrapper h1 {
  text-align: left; }

.top-docs-wrapper p {
  color: #2A4E68; }

.top-docs-wrapper hr {
  border-color: #b1c9da;
  margin: 40px 0; }

a.overview-btn.docs-btn {
  border-radius: 2px;
  text-transform: capitalize;
  margin-right: 2%;
  width: 31.33333%;
  text-align: center;
  line-height: 50px;
  height: 50px;
  padding: 0 10px; }

a.overview-btn.docs-btn i {
  font-size: 25px;
  display: inline-block;
  color: white;
  margin-left: 5px;
  height: 50px;
  line-height: 50px;
  vertical-align: middle; }

.docs-main-search-form {
  width: 98%;
  margin-top: -20px;
  float: left;
  position: relative; }

i.docs-search-icon {
  position: absolute;
  top: 17px;
  left: 15px;
  color: #C0CDDB; }

.docs-main-search {
  border: 2px solid #D5DDE7 !important;
  border-radius: 2px;
  height: 37px !important;
  margin: 7px 0 0 0;
  padding-left: 35px;
  background: #fff !important;
  width: 100%;
  -webkit-transition: width 4s;
  transition: width 4s;
  -webkit-border-horizontal-spacing: 0 !important;
  -webkit-border-vertical-spacing: 0 !important; }

.docs-main-search:focus {
  outline: none; }

input.docs-main-search::-webkit-input-placeholder {
  color: #C0CDDB;
  font-size: 12px;
  font-weight: 400; }

input.docs-main-search:-moz-placeholder {
  /* Firefox 18- */
  color: #C0CDDB;
  font-size: 12px;
  font-weight: 400; }

input.docs-main-search::-moz-placeholder {
  /* Firefox 19+ */
  color: #C0CDDB;
  font-size: 12px;
  font-weight: 400; }

input.docs-main-search:-ms-input-placeholder {
  color: #C0CDDB;
  font-size: 12px;
  text-transform: lowercase;
  font-weight: 400; }

.superuser-wrapper {
  text-align: center; }

@media (max-width: 767px) {
  .superuser-wrapper {
    display: none; } }

.superuser-wrapper p {
  margin-top: 10px;
  font-size: 14px;
  font-weight: 300; }

.superuser-wrapper p strong {
  display: block;
  font-size: 12px;
  font-weight: 600; }

.mid-docs-wrapper {
  background: white;
  padding: 30px 0 25px;
  border-top: 1px solid #edf2f7;
  border-bottom: 1px solid #edf2f7; }

.mid-docs-wrapper h2 {
  color: #2A4E68;
  margin: 0 0 5px; }

.mid-docs-wrapper p {
  color: #30739C;
  font-weight: 300; }

.docs-dropdown > a {
  background: #2A4E68;
  padding: 20px 5px;
  text-align: center;
  font-size: 13px;
  color: white; }

.docs-dropdown a {
  width: 100%;
  display: block;
  border-radius: 4px; }

@media (max-width: 767px) {
  .docs-dropdown {
    margin: 30px 0 10px; } }

.docs-dropdown > a:hover, .docs-dropdown > a:focus {
  text-decoration: none;
  color: white;
  background: #30739C; }

.docs-dropdown i {
  margin-left: 10px;
  font-size: 18px; }

.docs-dropdown .dropdown-menu {
  width: 100%;
  margin-top: 10px; }

.docs-dropdown > .dropdown-menu:after, .docs-dropdown > .dropdown-menu:before, .docs-sidebar-dropdown:before, .docs-sidebar-dropdown:after {
  bottom: 100%;
  left: 50%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none; }

.docs-dropdown > .dropdown-menu:after, .docs-sidebar-dropdown:after {
  border-color: rgba(255, 255, 255, 0);
  border-bottom-color: #ffffff;
  border-width: 15px;
  margin-left: -15px; }

.docs-dropdown > .dropdown-menu:before, .docs-sidebar-dropdown:before {
  border-color: rgba(170, 170, 170, 0);
  border-bottom-color: #aaaaaa;
  border-width: 16px;
  margin-left: -16px; }

.docs-dropdown > .dropdown-menu > li.dropdown-header, .docs-sidebar-dropdown > li.dropdown-header {
  text-align: left;
  padding: 10px 20px;
  margin: 10px 0;
  border-bottom: 1px solid #edf2f7;
  text-transform: uppercase;
  color: #333;
  font-weight: 400; }

.docs-dropdown > .dropdown-menu > li.dropdown-header:first-child {
  margin-top: 0; }

.docs-dropdown > .dropdown-menu > li > a, .docs-sidebar-dropdown > li > a {
  padding: 10px 25px;
  text-align: left;
  font-size: 13px;
  color: #2A4E68; }

.docs-toc {
  background: white;
  padding-top: 80px;
  padding-bottom: 20px; }

.docs-toc h3 i {
  font-size: 25px;
  margin-right: 10px; }

.docs-toc a {
  font-size: 1.1em;
  line-height: 1.3;
  font-weight: 400;
  color: #4c97c3;
  display: inline-block;
  padding: 10px; }

.docs-toc a:hover {
  background: #edf2f7;
  text-decoration: none; }

.docs-link-sections {
  margin: 0 0 10px; }

.docs-contribute-wrapper {
  padding-bottom: 10px;
  text-align: center; }

a.overview-btn.contribute-btn {
  background: #DA422F;
  color: white;
  padding: 10px 0;
  display: block;
  float: none;
  text-transform: capitalize;
  width: 250px;
  margin: 20px auto; }

a.overview-btn.contribute-btn:hover {
  background: #B52522; }

a.overview-btn.contribute-btn i {
  margin-left: 10px; }

/*------------------------------------*\
  Docs Version Dropdown
\*------------------------------------*/

.version-dropdown {
    position: relative;
    float: right;
    display: inline-block;
    border: solid 1px;
    padding: 5px;
}

.version-dropdown-content {
    display: none;
    position: absolute;
    background-color: #f9f9f9;
    min-width: 160px;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
    padding: 12px 16px;
    top: 25px;
    right: 5px;
    z-index: 1;
}

.version-dropdown:hover .version-dropdown-content {
    display: block;
}

/*End Docs Main*/
/*Docs Book View*/
.docs-book-wrapper, .docs-search-wrapper {
  margin-top: 40px;
  margin-bottom: 40px; }

@media (max-width: 767px) {
  .docs-sidebar {
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid #edf2f7; } }

.docs-sidebar-search {
  display: block; }

.btn-group .btn + .btn, .btn-group .btn + .btn-group, .btn-group .btn-group + .btn, .btn-group .btn-group + .btn-group {
  margin-left: 0; }

.docs-sidebar-releases {
  float: left;
  margin: 20px 0 0;
  width: 100%; }

.docs-sidebar-releases button {
  background: #2A4E68;
  color: #edf2f7;
  display: inline-block;
  text-align: center;
  padding: 20px 0;
  height: 60px;
  border-radius: 0; }

.docs-sidebar-releases button:hover, .docs-sidebar-releases button:focus {
  color: white;
  background: #1D354D; }

.docs-sidebar-releases button.docs-sidebar-home {
  width: 25%;
  border-right: 1px solid #1c3b53; }

.docs-sidebar-releases button.docs-sidebar-home i {
  font-size: 20px;
  line-height: 1; }

.docs-sidebar-releases button.docs-sidebar-release-select {
  font-size: 11px;
  width: 75%;
  border-left: 1px solid #496e8a; }

.docs-sidebar-releases button.docs-sidebar-release-select i {
  margin-left: 10px; }

.docs-sidebar-dropdown {
  right: 0; }

.docs-sidebar-toc {
  background: #edf2f7;
  float: left;
  padding: 0;
  color: #2A4E68;
  width: 100%;
  border-top: 1px solid #edf2f7; }

.docs-sidebar-section {
  border-bottom: 1px solid #c8d8e5;
  cursor: pointer; }

.docs-sidebar-section:hover {
  background: #BCCFDE; }

#table-of-contents.docs-sidebar-section {
  background-color: transparent;
  padding: 10px;
  padding-left: 0px;
}

/* we are not going to show bullets for the local-table-of-contents,
   so disable bullet points for table-of-contents too for consistency
   */
#table-of-contents ul {
	list-style: none;
}

/* shift the first level of list in the toc left to account for the
   fact that there are no bullets */
#table-of-contents.docs-sidebar-section ul  {
	padding-left: 20px;
}

/* do not change the background color of the section when the user
   moves the mouse into it */
#local-table-of-contents.docs-sidebar-section {
  background-color: transparent;
}

/* do not show the first link, since it only points back to this page */
#local-table-of-contents a[href="#"] {
	display: none;
}

/* we are not going to show the top level entries in the nested list
   so disable bullet points for the list entries to avoid having the
   others look weird */
#local-table-of-contents ul {
	list-style: none;
}

/* shift the first list in the local toc left to account for the fact
   that we don't show its LI elements and that there are no bullets */
#local-table-of-contents.docs-sidebar-section ul:first-of-type {
	padding-left: 0;
}

.docs-sidebar-section.active {
  background: #D8E0EA;
  padding: 0;
  cursor: default; }

.docs-sidebar-section-title {
  display: block;
  width: 100%;
  padding: 10px 20px;
  color: #2A4E68; }

a.docs-sidebar-section-title:hover {
  text-decoration: #BCCFDE; }

.docs-sidebar-section.active a.docs-sidebar-section-title:hover {
  cursor: default; }

.docs-sidebar-section.active ol {
  list-style: none;
  max-height: 2000px;
  -webkit-transition: max-height 2s ease;
  transition: max-height 2s ease; }

.docs-sidebar-section ol {
  counter-reset: section;
  display: block;
  max-height: 0;
  margin: 0;
  padding: 0 20px;
  width: 100%;
  list-style-position: inside;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-transition: max-height 0s ease;
  transition: max-height 0s ease; }

.docs-sidebar-section.active > ol:last-child {
  margin-bottom: 30px; }

.docs-sidebar-section ol a {
  color: #2A4E68; }

.docs-sidebar-section ol lh {
  font-weight: 700;
  font-size: 12px;
  padding-bottom: 10px;
  width: 100%; }

.docs-sidebar-section ol > li {
  max-height: 0;
  margin-left: 0;
  font-size: 12px;
  line-height: 2;
  width: 97%;
  list-style-position: inside;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-transition: max-height 0s ease;
  transition: max-height 0s ease; }

.docs-sidebar-section ol.active > li:last-child {
  margin-bottom: 20px;
  max-height: 2000px;
  -webkit-transition: max-height 2s ease;
  transition: max-height 2s ease; }

.docs-sidebar-section ol.active li > ul {
  max-height: 0; }

.docs-sidebar-section ol.active li, .docs-sidebar-section ol.active li.active > ul, .docs-sidebar-section ol.active li.active, .docs-sidebar-section ol.active li.active ul, .docs-sidebar-section ol.active li.active ul li {
  display: list-item;
  max-height: 2000px;
  -webkit-transition: max-height 2s ease;
  transition: max-height 2s ease; }

.docs-sidebar-section ol li ul {
  padding: 0;
  margin: 0;
  list-style: none;
  counter-increment: none; }

.docs-sidebar-section ol li ul li:before {
  content: " "; }

.docs-sidebar-section ol li > ul > li {
  list-style: none;
  margin-left: 20px;
  counter-increment: none; }

li.docs-has-sub > a {
  font-weight: 700; }

li.docs-has-sub:before {
  content: "+";
  padding: 0 5px;
  margin-right: 5px;
  background: #C2CAD8;
  border-radius: 4px; }

li.docs-has-sub.open:before {
  content: "-";
  padding: 0 6px; }

.docs-header {
  position: relative; }

.docs-actions {
  text-align: right;
  margin-top: 35px; }

.docs-actions i {
  margin-left: 0;
  padding: 0 5px;
  font-size: 20px;
  color: #999999; }

.docs-actions i:hover {
  color: #333; }

.docs-actions i.fa-rss {
  color: #FA600A; }

.docs-actions i.fa-cloud-download {
  color: #30739C; }

.docs-actions .fa-info-circle {
  border-left: 1px solid #dae5ee;
  color: #5bb449;
  padding: 0 10px; }

.docs-actions .fa-info-circle:hover {
  color: #36782A; }

.docs-actions .fa-info-circle.docs-info-off {
  color: #999; }

.docs-actions .fa-bug {
  border-left: 1px solid #dae5ee;
  color: #DA422F;
  padding: 0 10px; }

.docs-actions .fa-bug:hover {
  color: #9A201D; }

.docs-actions .fa-angle-double-left {
  border-left: 1px solid #dae5ee;
  color: #DA422F;
  padding: 0 10px; }

.docs-actions .fa-angle-double-left:hover {
  color: #9A201D; }

.docs-actions .fa-angle-double-right {
  border-left: 1px solid #dae5ee;
  color: #DA422F;
  padding: 0 10px; }

.docs-actions .fa-angle-double-right:hover {
  color: #9A201D; }

.tooltip {
  background: none;
  white-space: nowrap; }

.docs-byline {
  border-top: 1px solid #edf2f7;
  border-bottom: 1px solid #edf2f7;
  padding: 10px;
  font-size: 10px;
  color: #9eb5c3;
  text-transform: uppercase; }

.docs-browse {
  float: right;
  font-size: 14px;
  color: #6f91a6;
  text-transform: uppercase; }

.docs-updated {
  float: left;
  padding: 5px; }

.docs-versioned {
  float: right;
  padding: 5px; }

a.docs-edit {
  float: right;
  color: #9eb5c3; }

a.docs-edit:hover {
  color: #2A4E68;
  text-decoration: none; }

a.docs-edit i {
  margin-right: 5px; }

.docs-body a {
  text-decoration: underline;
  color: #30739C; }

a.headerlink {
  color: #fff; }

a.headerlink:hover {
  color: #30739C; }

a.gloss {
  background: #edf2f7;
  color: #2A4E68;
  padding: 2px 5px;
  text-decoration: none; }

a.gloss:hover {
  background: #D4DCE6; }

a.gloss:focus {
  outline: none; }

a.gloss.off {
  background: transparent;
  padding: 0;
  color: #333;
  cursor: default; }

pre {
  background-color: #333;
  color: #fff;
  overflow: auto;
  margin: 0 0 10px;
  padding: 20px 30px; }

pre code, pre .line-number {
  font-family: "Courier New", Courier, Monospace;
  font-weight: normal;
  font-size: 14px;
  color: white;
  display: block; }

pre .line-number {
  float: left;
  margin: 0 1em 0 -1em;
  border-right: 3px solid #5bb449;
  text-align: right; }

pre .line-number span {
  display: block;
  padding: 0 0.5em 0 1em; }

pre .cl {
  display: block;
  clear: both; }

.popover {
  color: #2A4E68; }

div.sidebar {
    margin: 0 0 0.5em 1em;
    border: 1px solid #ddb;
    padding: 7px 7px 0 7px;
    background-color: #ffe;
    width: 40%;
    float: right;
}

p.sidebar-title {
    font-weight: bold;
}

.admonition {
  background: #eee;
  border-left: 4px solid;
  border-radius: 4px;
  padding: 15px;
  margin: 15px 0; }

.admonition > .last {
  margin: 0;
}

.admonition h3 {
  font-size: 18px;
  font-weight: 600; }

.admonition h3 i {
  margin-right: 5px;
  font-size: 22px; }

.admonition.note {
  background: #edf2f7;
  border-color: #2A4E68;
  color: #2A4E68; }

.admonition.note a {
  color: #2A4E68; }

/* BB: The following eight rules, four "important" and four "warning",
   originally had names "docs-important" and "docs-warning" */

.admonition.important {
  background: #feffd6;
  border-color: #2A4E68;
  color: #2A4E68; }

.admonition.important a {
  color: #cca50a; }

.admonition.important h3 {
  color: #cca50a; }

.admonition.important h3 i {
  color: #cca50a; }

.admonition.warning {
  background: #FED3D9;
  border-color: #DA422F;
  color: #DA422F; }

.admonition.warning h3 {
  color: #DA422F; }

.admonition.warning h3 i {
  color: #DA422F; }

.admonition.warning a {
  color: #DA422F; }

/* BB: added the adminition-title rule to bolden the adminition title */
.admonition-title {
  font-weight: 600;
}

.versionadded {
  color: #3C763D;
}

.versionchanged {
  color: #31708f;
}

.deprecated {
  color: #DA422F;
}

.docs-tags {
  width: 100%;
  margin-bottom: 30px; }

a.docs-tag {
  background: #edf2f7;
  padding: 3px 6px;
  border-radius: 4px;
  display: inline-block;
  margin: 0 5px 0 0;
  font-size: 12px;
  color: #30739C; }

.docs-byline.bottom {
  margin-bottom: 30px; }

.docs-license {
  /* margin-top: 30px; */
  color: #555;
  font-size: 12px;
  border-right: 1px solid #edf2f7; }

@media (max-width: 767px) {
  .docs-license {
    border-right: 0;
    border-bottom: 1px solid #edf2f7;
    padding-bottom: 20px;
    margin-bottom: 20px; } }

.docs-license a {
  color: #555;
  font-size: 12px;
  text-decoration: underline; }

.docs-license a:hover {
  color: #222; }

.docs-license img {
  float: left;
  margin: 5px 15px 20px 0; }

.docs-actions-wrapper {
  margin-top: 10px; }

a.docs-footer-actions {
  display: block;
  color: #555;
  text-transform: uppercase;
  font-size: 11px;
  margin-bottom: 15px; }

a.docs-footer-actions i {
  font-size: 18px;
  margin-right: 10px; }

a.docs-footer-actions:hover {
  color: #222; }

/*End Docs Book View*/
/*Docs Search View*/
.docs-search-wrapper h2 {
  text-align: center; }

.docs-search-count {
  text-align: right;
  font-size: 11px;
  font-weight: 600;
  color: #2A4E68;
  border-bottom: 1px solid #edf2f7;
  margin: 20px 0;
  padding-bottom: 15px; }

.docs-result {
  margin: 20px 0;
  padding: 20px 0;
  border-bottom: 1px solid #edf2f7; }

.docs-result h3 a {
  font-size: 16px;
  font-weight: 600;
  text-decoration: underline;
  color: #30739C; }

.docs-result h3 a:hover {
  color: #2A4E68; }

.docs-result p {
  font-size: 14px; }

.docs-result p span {
  font-style: italic; }

.docs-result p span:after {
  content: "...";
  margin-left: 5px;
  margin-right: 5px; }

.docs-result .docs-search-link {
  font-size: 12px;
  color: #666;
  text-decoration: none; }

.docs-result .docs-search-link:hover {
  color: #333; }

.docs-pagination {
  text-align: center; }

ul.pagination li a {
  margin: 0 3px;
  border-radius: 4px;
  border: 3px solid #edf2f7;
  color: #30739C;
  font-weight: 400;
  font-size: 14px; }

ul.pagination li.active a, ul.pagination li.active a:hover {
  border-color: #30739C;
  color: #2A4E68;
  background: white; }

ul.pagination li a:hover {
  border-color: #C2CAD8;
  background: white; }

/*End Docs Search View*/
/*webui Popover styles*/
.webui-popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: none;
  width: 276px;
  min-height: 50px;
  padding: 1px;
  text-align: left;
  white-space: normal;
  background-color: #ffffff;
  background-clip: padding-box;
  border: 1px solid #cccccc;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 6px;
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); }

.webui-popover.top, .webui-popover.top-left, .webui-popover.top-right {
  margin-top: -10px; }

.webui-popover.right, .webui-popover.right-top, .webui-popover.right-bottom {
  margin-left: 10px; }

.webui-popover.bottom, .webui-popover.bottom-left, .webui-popover.bottom-right {
  margin-top: 10px; }

.webui-popover.left, .webui-popover.left-top, .webui-popover.left-bottom {
  margin-left: -10px; }

.webui-popover-inner .close {
  font-family: arial;
  margin: 5px 10px 0 0;
  float: right;
  font-size: 20px;
  font-weight: bold;
  line-height: 20px;
  color: #000000;
  text-shadow: 0 1px 0 #fff;
  opacity: 0.2;
  filter: alpha(opacity=20);
  text-decoration: none; }

.webui-popover-inner .close:hover, .webui-popover-inner .close:focus {
  opacity: 0.5;
  filter: alpha(opacity=50); }

.webui-popover-title {
  padding: 8px 14px;
  margin: 0;
  font-size: 14px;
  font-weight: normal;
  line-height: 18px;
  background-color: #f7f7f7;
  border-bottom: 1px solid #ebebeb;
  border-radius: 5px 5px 0 0; }

.webui-popover-content {
  padding: 9px 14px;
  overflow: auto; }

.webui-popover-inverse {
  background-color: #333333;
  color: #eeeeee; }

.webui-popover-inverse .webui-popover-title {
  background: #3b3b3b;
  border-bottom: none;
  color: #eeeeee; }

.webui-no-padding .webui-popover-content {
  padding: 0; }

.webui-no-padding .list-group-item {
  border-right: none;
  border-left: none; }

.webui-no-padding .list-group-item:first-child {
  border-top: 0; }

.webui-no-padding .list-group-item:last-child {
  border-bottom: 0; }

.webui-popover > .arrow, .webui-popover > .arrow:after {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid; }

.webui-popover > .arrow {
  border-width: 11px; }

.webui-popover > .arrow:after {
  border-width: 10px;
  content: ""; }

.webui-popover.top > .arrow, .webui-popover.top-right > .arrow, .webui-popover.top-left > .arrow {
  bottom: -11px;
  left: 50%;
  margin-left: -11px;
  border-top-color: #999999;
  border-top-color: rgba(0, 0, 0, 0.25);
  border-bottom-width: 0; }

.webui-popover.top > .arrow:after, .webui-popover.top-right > .arrow:after, .webui-popover.top-left > .arrow:after {
  content: " ";
  bottom: 1px;
  margin-left: -10px;
  border-top-color: #ffffff;
  border-bottom-width: 0; }

.webui-popover.right > .arrow, .webui-popover.right-top > .arrow, .webui-popover.right-bottom > .arrow {
  top: 50%;
  left: -11px;
  margin-top: -11px;
  border-left-width: 0;
  border-right-color: #999999;
  border-right-color: rgba(0, 0, 0, 0.25); }

.webui-popover.right > .arrow:after, .webui-popover.right-top > .arrow:after, .webui-popover.right-bottom > .arrow:after {
  content: " ";
  left: 1px;
  bottom: -10px;
  border-left-width: 0;
  border-right-color: #ffffff; }

.webui-popover.bottom > .arrow, .webui-popover.bottom-right > .arrow, .webui-popover.bottom-left > .arrow {
  top: -11px;
  left: 50%;
  margin-left: -11px;
  border-bottom-color: #999999;
  border-bottom-color: rgba(0, 0, 0, 0.25);
  border-top-width: 0; }

.webui-popover.bottom > .arrow:after, .webui-popover.bottom-right > .arrow:after, .webui-popover.bottom-left > .arrow:after {
  content: " ";
  top: 1px;
  margin-left: -10px;
  border-bottom-color: #ffffff;
  border-top-width: 0; }

.webui-popover.left > .arrow, .webui-popover.left-top > .arrow, .webui-popover.left-bottom > .arrow {
  top: 50%;
  right: -11px;
  margin-top: -11px;
  border-right-width: 0;
  border-left-color: #999999;
  border-left-color: rgba(0, 0, 0, 0.25); }

.webui-popover.left > .arrow:after, .webui-popover.left-top > .arrow:after, .webui-popover.left-bottom > .arrow:after {
  content: " ";
  right: 1px;
  border-right-width: 0;
  border-left-color: #ffffff;
  bottom: -10px; }

.webui-popover-inverse.top > .arrow, .webui-popover-inverse.top-left > .arrow, .webui-popover-inverse.top-right > .arrow, .webui-popover-inverse.top > .arrow:after, .webui-popover-inverse.top-left > .arrow:after, .webui-popover-inverse.top-right > .arrow:after {
  border-top-color: #333333; }

.webui-popover-inverse.right > .arrow, .webui-popover-inverse.right-top > .arrow, .webui-popover-inverse.right-bottom > .arrow, .webui-popover-inverse.right > .arrow:after, .webui-popover-inverse.right-top > .arrow:after, .webui-popover-inverse.right-bottom > .arrow:after {
  border-right-color: #333333; }

.webui-popover-inverse.bottom > .arrow, .webui-popover-inverse.bottom-left > .arrow, .webui-popover-inverse.bottom-right > .arrow, .webui-popover-inverse.bottom > .arrow:after, .webui-popover-inverse.bottom-left > .arrow:after, .webui-popover-inverse.bottom-right > .arrow:after {
  border-bottom-color: #333333; }

.webui-popover-inverse.left > .arrow, .webui-popover-inverse.left-top > .arrow, .webui-popover-inverse.left-bottom > .arrow, .webui-popover-inverse.left > .arrow:after, .webui-popover-inverse.left-top > .arrow:after, .webui-popover-inverse.left-bottom > .arrow:after {
  border-left-color: #333333; }

.webui-popover i.icon-refresh {
  display: block;
  width: 30px;
  height: 30px;
  font-size: 20px;
  top: 50%;
  left: 50%;
  position: absolute;
  background: url(../img/loading.gif) no-repeat; }

@-webkit-keyframes rotate {
  100% {
    -webkit-transform: rotate(360deg); } }

@keyframes rotate {
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

.newSubNav {
  width: 85%; }

.newSubNav ul {
  padding: 0px;
  margin-top: 30px;
  margin-left: -10px; }

.newSubNav ul:nth-child(2) {
  border-top: 1px solid #E8E8E8;
  padding-top: 30px; }

.newSubNav li {
  list-style: none; }

.newSubNav a {
  color: #8A959E;
  text-transform: uppercase;
  font-size: 12px;
  padding: 15px 20px;
  display: block; }

.newSubNav a.current, .newSubNav a.current:hover {
  background-color: #EDF2F7;
  font-weight: bold;
  color: #2D709B; }

.newSubNav a:hover {
  text-decoration: none;
  color: black; }

.newSubNav .fa-chevron-right {
  float: right;
  margin-top: 2px;
  color: #C6D8E4; }

li#start a {
  color: #75C320; }

li#openstack-shared-services {
  padding-bottom: 20px;
  border-bottom: 1px solid #E8E8E8; }

li#start {
  margin-top: 20px; }

fieldset {
  border: 1px solid #CCCCCC;
  padding: 20px 17px 20px 17px;
  margin-bottom: 20px; }

fieldset ul {
  list-style: none; }

input[type="radio"] {
  margin-left: 0px; }

input[type="checkbox"] {
  margin-left: 0px !important; }

input[type="checkbox"], input[type="radio"] {
  display: inline-block; }

div.tooltip-inner {
    max-width: 350px;
}

table.highlighttable {
  width: 100%;
}

.docs-sidebar-section ul ul {
  padding-left: 0px;
  margin-left: 20px;
}

.docs-body .section h1 {
  display: none;
}

img.align-left, .figure.align-left {
  display: table;
  margin-left: 0;
  margin-right: auto;
}

img.align-center, .figure.align-center {
  display: table;
  margin: auto;
}

img.align-right, .figure.align-right {
  display: table;
  margin-left: auto;
  margin-right: 0;
}

/* for search result highlighting */
span.highlighted {
    background-color: #fbe54e;
}

/*img.align-left {*/
/*  display: table;*/
/*  margin-left: 0;*/
/*  margin-right: auto;*/
/*}*/
/**/
/*img.align-center {*/
/*  display: table;*/
/*  margin: auto;*/
/*}*/
/**/
/*img.align-right {*/
/*  display: table;*/
/*  margin-left: auto;*/
/*  margin-right: 0;*/
/*}*/
openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/static/css/bootstrap.css0000666000175100017510000043506413227213640032162 0ustar  zuulzuul00000000000000/*!
 * Bootstrap v3.3.7 (http://getbootstrap.com)
 * Copyright 2011-2016 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
html {
  font-family: sans-serif;
  -webkit-text-size-adjust: 100%;
      -ms-text-size-adjust: 100%;
}
body {
  margin: 0;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}
audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline;
}
audio:not([controls]) {
  display: none;
  height: 0;
}
[hidden],
template {
  display: none;
}
a {
  background-color: transparent;
}
a:active,
a:hover {
  outline: 0;
}
abbr[title] {
  border-bottom: 1px dotted;
}
b,
strong {
  font-weight: bold;
}
dfn {
  font-style: italic;
}
h1 {
  margin: .67em 0;
  font-size: 2em;
}
mark {
  color: #000;
  background: #ff0;
}
small {
  font-size: 80%;
}
sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}
sup {
  top: -.5em;
}
sub {
  bottom: -.25em;
}
img {
  border: 0;
}
svg:not(:root) {
  overflow: hidden;
}
figure {
  margin: 1em 40px;
}
hr {
  height: 0;
  -webkit-box-sizing: content-box;
     -moz-box-sizing: content-box;
          box-sizing: content-box;
}
pre {
  overflow: auto;
}
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}
button,
input,
optgroup,
select,
textarea {
  margin: 0;
  font: inherit;
  color: inherit;
}
button {
  overflow: visible;
}
button,
select {
  text-transform: none;
}
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
}
button[disabled],
html input[disabled] {
  cursor: default;
}
button::-moz-focus-inner,
input::-moz-focus-inner {
  padding: 0;
  border: 0;
}
input {
  line-height: normal;
}
input[type="checkbox"],
input[type="radio"] {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0;
}
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}
input[type="search"] {
  -webkit-box-sizing: content-box;
     -moz-box-sizing: content-box;
          box-sizing: content-box;
  -webkit-appearance: textfield;
}
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
fieldset {
  padding: .35em .625em .75em;
  margin: 0 2px;
  border: 1px solid #c0c0c0;
}
legend {
  padding: 0;
  border: 0;
}
textarea {
  overflow: auto;
}
optgroup {
  font-weight: bold;
}
table {
  border-spacing: 0;
  border-collapse: collapse;
}
td,
th {
  padding: 0;
}
/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */
@media print {
  *,
  *:before,
  *:after {
    color: #000 !important;
    text-shadow: none !important;
    background: transparent !important;
    -webkit-box-shadow: none !important;
            box-shadow: none !important;
  }
  a,
  a:visited {
    text-decoration: underline;
  }
  a[href]:after {
    content: " (" attr(href) ")";
  }
  abbr[title]:after {
    content: " (" attr(title) ")";
  }
  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: "";
  }
  pre,
  blockquote {
    border: 1px solid #999;

    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  img {
    max-width: 100% !important;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
  .navbar {
    display: none;
  }
  .btn > .caret,
  .dropup > .btn > .caret {
    border-top-color: #000 !important;
  }
  .label {
    border: 1px solid #000;
  }
  .table {
    border-collapse: collapse !important;
  }
  .table td,
  .table th {
    background-color: #fff !important;
  }
  .table-bordered th,
  .table-bordered td {
    border: 1px solid #ddd !important;
  }
}
@font-face {
  font-family: 'Glyphicons Halflings';

  src: url('../fonts/glyphicons-halflings-regular.eot');
  src: url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/glyphicons-halflings-regular.woff2') format('woff2'), url('../fonts/glyphicons-halflings-regular.woff') format('woff'), url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg');
}
.glyphicon {
  position: relative;
  top: 1px;
  display: inline-block;
  font-family: 'Glyphicons Halflings';
  font-style: normal;
  font-weight: normal;
  line-height: 1;

  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.glyphicon-asterisk:before {
  content: "\002a";
}
.glyphicon-plus:before {
  content: "\002b";
}
.glyphicon-euro:before,
.glyphicon-eur:before {
  content: "\20ac";
}
.glyphicon-minus:before {
  content: "\2212";
}
.glyphicon-cloud:before {
  content: "\2601";
}
.glyphicon-envelope:before {
  content: "\2709";
}
.glyphicon-pencil:before {
  content: "\270f";
}
.glyphicon-glass:before {
  content: "\e001";
}
.glyphicon-music:before {
  content: "\e002";
}
.glyphicon-search:before {
  content: "\e003";
}
.glyphicon-heart:before {
  content: "\e005";
}
.glyphicon-star:before {
  content: "\e006";
}
.glyphicon-star-empty:before {
  content: "\e007";
}
.glyphicon-user:before {
  content: "\e008";
}
.glyphicon-film:before {
  content: "\e009";
}
.glyphicon-th-large:before {
  content: "\e010";
}
.glyphicon-th:before {
  content: "\e011";
}
.glyphicon-th-list:before {
  content: "\e012";
}
.glyphicon-ok:before {
  content: "\e013";
}
.glyphicon-remove:before {
  content: "\e014";
}
.glyphicon-zoom-in:before {
  content: "\e015";
}
.glyphicon-zoom-out:before {
  content: "\e016";
}
.glyphicon-off:before {
  content: "\e017";
}
.glyphicon-signal:before {
  content: "\e018";
}
.glyphicon-cog:before {
  content: "\e019";
}
.glyphicon-trash:before {
  content: "\e020";
}
.glyphicon-home:before {
  content: "\e021";
}
.glyphicon-file:before {
  content: "\e022";
}
.glyphicon-time:before {
  content: "\e023";
}
.glyphicon-road:before {
  content: "\e024";
}
.glyphicon-download-alt:before {
  content: "\e025";
}
.glyphicon-download:before {
  content: "\e026";
}
.glyphicon-upload:before {
  content: "\e027";
}
.glyphicon-inbox:before {
  content: "\e028";
}
.glyphicon-play-circle:before {
  content: "\e029";
}
.glyphicon-repeat:before {
  content: "\e030";
}
.glyphicon-refresh:before {
  content: "\e031";
}
.glyphicon-list-alt:before {
  content: "\e032";
}
.glyphicon-lock:before {
  content: "\e033";
}
.glyphicon-flag:before {
  content: "\e034";
}
.glyphicon-headphones:before {
  content: "\e035";
}
.glyphicon-volume-off:before {
  content: "\e036";
}
.glyphicon-volume-down:before {
  content: "\e037";
}
.glyphicon-volume-up:before {
  content: "\e038";
}
.glyphicon-qrcode:before {
  content: "\e039";
}
.glyphicon-barcode:before {
  content: "\e040";
}
.glyphicon-tag:before {
  content: "\e041";
}
.glyphicon-tags:before {
  content: "\e042";
}
.glyphicon-book:before {
  content: "\e043";
}
.glyphicon-bookmark:before {
  content: "\e044";
}
.glyphicon-print:before {
  content: "\e045";
}
.glyphicon-camera:before {
  content: "\e046";
}
.glyphicon-font:before {
  content: "\e047";
}
.glyphicon-bold:before {
  content: "\e048";
}
.glyphicon-italic:before {
  content: "\e049";
}
.glyphicon-text-height:before {
  content: "\e050";
}
.glyphicon-text-width:before {
  content: "\e051";
}
.glyphicon-align-left:before {
  content: "\e052";
}
.glyphicon-align-center:before {
  content: "\e053";
}
.glyphicon-align-right:before {
  content: "\e054";
}
.glyphicon-align-justify:before {
  content: "\e055";
}
.glyphicon-list:before {
  content: "\e056";
}
.glyphicon-indent-left:before {
  content: "\e057";
}
.glyphicon-indent-right:before {
  content: "\e058";
}
.glyphicon-facetime-video:before {
  content: "\e059";
}
.glyphicon-picture:before {
  content: "\e060";
}
.glyphicon-map-marker:before {
  content: "\e062";
}
.glyphicon-adjust:before {
  content: "\e063";
}
.glyphicon-tint:before {
  content: "\e064";
}
.glyphicon-edit:before {
  content: "\e065";
}
.glyphicon-share:before {
  content: "\e066";
}
.glyphicon-check:before {
  content: "\e067";
}
.glyphicon-move:before {
  content: "\e068";
}
.glyphicon-step-backward:before {
  content: "\e069";
}
.glyphicon-fast-backward:before {
  content: "\e070";
}
.glyphicon-backward:before {
  content: "\e071";
}
.glyphicon-play:before {
  content: "\e072";
}
.glyphicon-pause:before {
  content: "\e073";
}
.glyphicon-stop:before {
  content: "\e074";
}
.glyphicon-forward:before {
  content: "\e075";
}
.glyphicon-fast-forward:before {
  content: "\e076";
}
.glyphicon-step-forward:before {
  content: "\e077";
}
.glyphicon-eject:before {
  content: "\e078";
}
.glyphicon-chevron-left:before {
  content: "\e079";
}
.glyphicon-chevron-right:before {
  content: "\e080";
}
.glyphicon-plus-sign:before {
  content: "\e081";
}
.glyphicon-minus-sign:before {
  content: "\e082";
}
.glyphicon-remove-sign:before {
  content: "\e083";
}
.glyphicon-ok-sign:before {
  content: "\e084";
}
.glyphicon-question-sign:before {
  content: "\e085";
}
.glyphicon-info-sign:before {
  content: "\e086";
}
.glyphicon-screenshot:before {
  content: "\e087";
}
.glyphicon-remove-circle:before {
  content: "\e088";
}
.glyphicon-ok-circle:before {
  content: "\e089";
}
.glyphicon-ban-circle:before {
  content: "\e090";
}
.glyphicon-arrow-left:before {
  content: "\e091";
}
.glyphicon-arrow-right:before {
  content: "\e092";
}
.glyphicon-arrow-up:before {
  content: "\e093";
}
.glyphicon-arrow-down:before {
  content: "\e094";
}
.glyphicon-share-alt:before {
  content: "\e095";
}
.glyphicon-resize-full:before {
  content: "\e096";
}
.glyphicon-resize-small:before {
  content: "\e097";
}
.glyphicon-exclamation-sign:before {
  content: "\e101";
}
.glyphicon-gift:before {
  content: "\e102";
}
.glyphicon-leaf:before {
  content: "\e103";
}
.glyphicon-fire:before {
  content: "\e104";
}
.glyphicon-eye-open:before {
  content: "\e105";
}
.glyphicon-eye-close:before {
  content: "\e106";
}
.glyphicon-warning-sign:before {
  content: "\e107";
}
.glyphicon-plane:before {
  content: "\e108";
}
.glyphicon-calendar:before {
  content: "\e109";
}
.glyphicon-random:before {
  content: "\e110";
}
.glyphicon-comment:before {
  content: "\e111";
}
.glyphicon-magnet:before {
  content: "\e112";
}
.glyphicon-chevron-up:before {
  content: "\e113";
}
.glyphicon-chevron-down:before {
  content: "\e114";
}
.glyphicon-retweet:before {
  content: "\e115";
}
.glyphicon-shopping-cart:before {
  content: "\e116";
}
.glyphicon-folder-close:before {
  content: "\e117";
}
.glyphicon-folder-open:before {
  content: "\e118";
}
.glyphicon-resize-vertical:before {
  content: "\e119";
}
.glyphicon-resize-horizontal:before {
  content: "\e120";
}
.glyphicon-hdd:before {
  content: "\e121";
}
.glyphicon-bullhorn:before {
  content: "\e122";
}
.glyphicon-bell:before {
  content: "\e123";
}
.glyphicon-certificate:before {
  content: "\e124";
}
.glyphicon-thumbs-up:before {
  content: "\e125";
}
.glyphicon-thumbs-down:before {
  content: "\e126";
}
.glyphicon-hand-right:before {
  content: "\e127";
}
.glyphicon-hand-left:before {
  content: "\e128";
}
.glyphicon-hand-up:before {
  content: "\e129";
}
.glyphicon-hand-down:before {
  content: "\e130";
}
.glyphicon-circle-arrow-right:before {
  content: "\e131";
}
.glyphicon-circle-arrow-left:before {
  content: "\e132";
}
.glyphicon-circle-arrow-up:before {
  content: "\e133";
}
.glyphicon-circle-arrow-down:before {
  content: "\e134";
}
.glyphicon-globe:before {
  content: "\e135";
}
.glyphicon-wrench:before {
  content: "\e136";
}
.glyphicon-tasks:before {
  content: "\e137";
}
.glyphicon-filter:before {
  content: "\e138";
}
.glyphicon-briefcase:before {
  content: "\e139";
}
.glyphicon-fullscreen:before {
  content: "\e140";
}
.glyphicon-dashboard:before {
  content: "\e141";
}
.glyphicon-paperclip:before {
  content: "\e142";
}
.glyphicon-heart-empty:before {
  content: "\e143";
}
.glyphicon-link:before {
  content: "\e144";
}
.glyphicon-phone:before {
  content: "\e145";
}
.glyphicon-pushpin:before {
  content: "\e146";
}
.glyphicon-usd:before {
  content: "\e148";
}
.glyphicon-gbp:before {
  content: "\e149";
}
.glyphicon-sort:before {
  content: "\e150";
}
.glyphicon-sort-by-alphabet:before {
  content: "\e151";
}
.glyphicon-sort-by-alphabet-alt:before {
  content: "\e152";
}
.glyphicon-sort-by-order:before {
  content: "\e153";
}
.glyphicon-sort-by-order-alt:before {
  content: "\e154";
}
.glyphicon-sort-by-attributes:before {
  content: "\e155";
}
.glyphicon-sort-by-attributes-alt:before {
  content: "\e156";
}
.glyphicon-unchecked:before {
  content: "\e157";
}
.glyphicon-expand:before {
  content: "\e158";
}
.glyphicon-collapse-down:before {
  content: "\e159";
}
.glyphicon-collapse-up:before {
  content: "\e160";
}
.glyphicon-log-in:before {
  content: "\e161";
}
.glyphicon-flash:before {
  content: "\e162";
}
.glyphicon-log-out:before {
  content: "\e163";
}
.glyphicon-new-window:before {
  content: "\e164";
}
.glyphicon-record:before {
  content: "\e165";
}
.glyphicon-save:before {
  content: "\e166";
}
.glyphicon-open:before {
  content: "\e167";
}
.glyphicon-saved:before {
  content: "\e168";
}
.glyphicon-import:before {
  content: "\e169";
}
.glyphicon-export:before {
  content: "\e170";
}
.glyphicon-send:before {
  content: "\e171";
}
.glyphicon-floppy-disk:before {
  content: "\e172";
}
.glyphicon-floppy-saved:before {
  content: "\e173";
}
.glyphicon-floppy-remove:before {
  content: "\e174";
}
.glyphicon-floppy-save:before {
  content: "\e175";
}
.glyphicon-floppy-open:before {
  content: "\e176";
}
.glyphicon-credit-card:before {
  content: "\e177";
}
.glyphicon-transfer:before {
  content: "\e178";
}
.glyphicon-cutlery:before {
  content: "\e179";
}
.glyphicon-header:before {
  content: "\e180";
}
.glyphicon-compressed:before {
  content: "\e181";
}
.glyphicon-earphone:before {
  content: "\e182";
}
.glyphicon-phone-alt:before {
  content: "\e183";
}
.glyphicon-tower:before {
  content: "\e184";
}
.glyphicon-stats:before {
  content: "\e185";
}
.glyphicon-sd-video:before {
  content: "\e186";
}
.glyphicon-hd-video:before {
  content: "\e187";
}
.glyphicon-subtitles:before {
  content: "\e188";
}
.glyphicon-sound-stereo:before {
  content: "\e189";
}
.glyphicon-sound-dolby:before {
  content: "\e190";
}
.glyphicon-sound-5-1:before {
  content: "\e191";
}
.glyphicon-sound-6-1:before {
  content: "\e192";
}
.glyphicon-sound-7-1:before {
  content: "\e193";
}
.glyphicon-copyright-mark:before {
  content: "\e194";
}
.glyphicon-registration-mark:before {
  content: "\e195";
}
.glyphicon-cloud-download:before {
  content: "\e197";
}
.glyphicon-cloud-upload:before {
  content: "\e198";
}
.glyphicon-tree-conifer:before {
  content: "\e199";
}
.glyphicon-tree-deciduous:before {
  content: "\e200";
}
.glyphicon-cd:before {
  content: "\e201";
}
.glyphicon-save-file:before {
  content: "\e202";
}
.glyphicon-open-file:before {
  content: "\e203";
}
.glyphicon-level-up:before {
  content: "\e204";
}
.glyphicon-copy:before {
  content: "\e205";
}
.glyphicon-paste:before {
  content: "\e206";
}
.glyphicon-alert:before {
  content: "\e209";
}
.glyphicon-equalizer:before {
  content: "\e210";
}
.glyphicon-king:before {
  content: "\e211";
}
.glyphicon-queen:before {
  content: "\e212";
}
.glyphicon-pawn:before {
  content: "\e213";
}
.glyphicon-bishop:before {
  content: "\e214";
}
.glyphicon-knight:before {
  content: "\e215";
}
.glyphicon-baby-formula:before {
  content: "\e216";
}
.glyphicon-tent:before {
  content: "\26fa";
}
.glyphicon-blackboard:before {
  content: "\e218";
}
.glyphicon-bed:before {
  content: "\e219";
}
.glyphicon-apple:before {
  content: "\f8ff";
}
.glyphicon-erase:before {
  content: "\e221";
}
.glyphicon-hourglass:before {
  content: "\231b";
}
.glyphicon-lamp:before {
  content: "\e223";
}
.glyphicon-duplicate:before {
  content: "\e224";
}
.glyphicon-piggy-bank:before {
  content: "\e225";
}
.glyphicon-scissors:before {
  content: "\e226";
}
.glyphicon-bitcoin:before {
  content: "\e227";
}
.glyphicon-btc:before {
  content: "\e227";
}
.glyphicon-xbt:before {
  content: "\e227";
}
.glyphicon-yen:before {
  content: "\00a5";
}
.glyphicon-jpy:before {
  content: "\00a5";
}
.glyphicon-ruble:before {
  content: "\20bd";
}
.glyphicon-rub:before {
  content: "\20bd";
}
.glyphicon-scale:before {
  content: "\e230";
}
.glyphicon-ice-lolly:before {
  content: "\e231";
}
.glyphicon-ice-lolly-tasted:before {
  content: "\e232";
}
.glyphicon-education:before {
  content: "\e233";
}
.glyphicon-option-horizontal:before {
  content: "\e234";
}
.glyphicon-option-vertical:before {
  content: "\e235";
}
.glyphicon-menu-hamburger:before {
  content: "\e236";
}
.glyphicon-modal-window:before {
  content: "\e237";
}
.glyphicon-oil:before {
  content: "\e238";
}
.glyphicon-grain:before {
  content: "\e239";
}
.glyphicon-sunglasses:before {
  content: "\e240";
}
.glyphicon-text-size:before {
  content: "\e241";
}
.glyphicon-text-color:before {
  content: "\e242";
}
.glyphicon-text-background:before {
  content: "\e243";
}
.glyphicon-object-align-top:before {
  content: "\e244";
}
.glyphicon-object-align-bottom:before {
  content: "\e245";
}
.glyphicon-object-align-horizontal:before {
  content: "\e246";
}
.glyphicon-object-align-left:before {
  content: "\e247";
}
.glyphicon-object-align-vertical:before {
  content: "\e248";
}
.glyphicon-object-align-right:before {
  content: "\e249";
}
.glyphicon-triangle-right:before {
  content: "\e250";
}
.glyphicon-triangle-left:before {
  content: "\e251";
}
.glyphicon-triangle-bottom:before {
  content: "\e252";
}
.glyphicon-triangle-top:before {
  content: "\e253";
}
.glyphicon-console:before {
  content: "\e254";
}
.glyphicon-superscript:before {
  content: "\e255";
}
.glyphicon-subscript:before {
  content: "\e256";
}
.glyphicon-menu-left:before {
  content: "\e257";
}
.glyphicon-menu-right:before {
  content: "\e258";
}
.glyphicon-menu-down:before {
  content: "\e259";
}
.glyphicon-menu-up:before {
  content: "\e260";
}
* {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}
*:before,
*:after {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}
html {
  font-size: 10px;

  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
body {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.42857143;
  color: #333;
  background-color: #fff;
}
input,
button,
select,
textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}
a {
  color: #337ab7;
  text-decoration: none;
}
a:hover,
a:focus {
  color: #23527c;
  text-decoration: underline;
}
a:focus {
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}
figure {
  margin: 0;
}
img {
  vertical-align: middle;
}
.img-responsive,
.thumbnail > img,
.thumbnail a > img,
.carousel-inner > .item > img,
.carousel-inner > .item > a > img {
  display: block;
  max-width: 100%;
  height: auto;
}
.img-rounded {
  border-radius: 6px;
}
.img-thumbnail {
  display: inline-block;
  max-width: 100%;
  height: auto;
  padding: 4px;
  line-height: 1.42857143;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 4px;
  -webkit-transition: all .2s ease-in-out;
       -o-transition: all .2s ease-in-out;
          transition: all .2s ease-in-out;
}
.img-circle {
  border-radius: 50%;
}
hr {
  margin-top: 20px;
  margin-bottom: 20px;
  border: 0;
  border-top: 1px solid #eee;
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
.sr-only-focusable:active,
.sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip: auto;
}
[role="button"] {
  cursor: pointer;
}
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  font-family: inherit;
  font-weight: 500;
  line-height: 1.1;
  color: inherit;
}
h1 small,
h2 small,
h3 small,
h4 small,
h5 small,
h6 small,
.h1 small,
.h2 small,
.h3 small,
.h4 small,
.h5 small,
.h6 small,
h1 .small,
h2 .small,
h3 .small,
h4 .small,
h5 .small,
h6 .small,
.h1 .small,
.h2 .small,
.h3 .small,
.h4 .small,
.h5 .small,
.h6 .small {
  font-weight: normal;
  line-height: 1;
  color: #777;
}
h1,
.h1,
h2,
.h2,
h3,
.h3 {
  margin-top: 20px;
  margin-bottom: 10px;
}
h1 small,
.h1 small,
h2 small,
.h2 small,
h3 small,
.h3 small,
h1 .small,
.h1 .small,
h2 .small,
.h2 .small,
h3 .small,
.h3 .small {
  font-size: 65%;
}
h4,
.h4,
h5,
.h5,
h6,
.h6 {
  margin-top: 10px;
  margin-bottom: 10px;
}
h4 small,
.h4 small,
h5 small,
.h5 small,
h6 small,
.h6 small,
h4 .small,
.h4 .small,
h5 .small,
.h5 .small,
h6 .small,
.h6 .small {
  font-size: 75%;
}
h1,
.h1 {
  font-size: 36px;
}
h2,
.h2 {
  font-size: 30px;
}
h3,
.h3 {
  font-size: 24px;
}
h4,
.h4 {
  font-size: 18px;
}
h5,
.h5 {
  font-size: 14px;
}
h6,
.h6 {
  font-size: 12px;
}
p {
  margin: 0 0 10px;
}
.lead {
  margin-bottom: 20px;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.4;
}
@media (min-width: 768px) {
  .lead {
    font-size: 21px;
  }
}
small,
.small {
  font-size: 85%;
}
mark,
.mark {
  padding: .2em;
  background-color: #fcf8e3;
}
.text-left {
  text-align: left;
}
.text-right {
  text-align: right;
}
.text-center {
  text-align: center;
}
.text-justify {
  text-align: justify;
}
.text-nowrap {
  white-space: nowrap;
}
.text-lowercase {
  text-transform: lowercase;
}
.text-uppercase {
  text-transform: uppercase;
}
.text-capitalize {
  text-transform: capitalize;
}
.text-muted {
  color: #777;
}
.text-primary {
  color: #337ab7;
}
a.text-primary:hover,
a.text-primary:focus {
  color: #286090;
}
.text-success {
  color: #3c763d;
}
a.text-success:hover,
a.text-success:focus {
  color: #2b542c;
}
.text-info {
  color: #31708f;
}
a.text-info:hover,
a.text-info:focus {
  color: #245269;
}
.text-warning {
  color: #8a6d3b;
}
a.text-warning:hover,
a.text-warning:focus {
  color: #66512c;
}
.text-danger {
  color: #a94442;
}
a.text-danger:hover,
a.text-danger:focus {
  color: #843534;
}
.bg-primary {
  color: #fff;
  background-color: #337ab7;
}
a.bg-primary:hover,
a.bg-primary:focus {
  background-color: #286090;
}
.bg-success {
  background-color: #dff0d8;
}
a.bg-success:hover,
a.bg-success:focus {
  background-color: #c1e2b3;
}
.bg-info {
  background-color: #d9edf7;
}
a.bg-info:hover,
a.bg-info:focus {
  background-color: #afd9ee;
}
.bg-warning {
  background-color: #fcf8e3;
}
a.bg-warning:hover,
a.bg-warning:focus {
  background-color: #f7ecb5;
}
.bg-danger {
  background-color: #f2dede;
}
a.bg-danger:hover,
a.bg-danger:focus {
  background-color: #e4b9b9;
}
.page-header {
  padding-bottom: 9px;
  margin: 40px 0 20px;
  border-bottom: 1px solid #eee;
}
ul,
ol {
  margin-top: 0;
  margin-bottom: 10px;
}
ul ul,
ol ul,
ul ol,
ol ol {
  margin-bottom: 0;
}
.list-unstyled {
  padding-left: 0;
  list-style: none;
}
.list-inline {
  padding-left: 0;
  margin-left: -5px;
  list-style: none;
}
.list-inline > li {
  display: inline-block;
  padding-right: 5px;
  padding-left: 5px;
}
dl {
  margin-top: 0;
  margin-bottom: 20px;
}
dt,
dd {
  line-height: 1.42857143;
}
dt {
  font-weight: bold;
}
dd {
  margin-left: 0;
}
@media (min-width: 768px) {
  .dl-horizontal dt {
    float: left;
    width: 160px;
    overflow: hidden;
    clear: left;
    text-align: right;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .dl-horizontal dd {
    margin-left: 180px;
  }
}
abbr[title],
abbr[data-original-title] {
  cursor: help;
  border-bottom: 1px dotted #777;
}
.initialism {
  font-size: 90%;
  text-transform: uppercase;
}
blockquote {
  padding: 10px 20px;
  margin: 0 0 20px;
  font-size: 17.5px;
  border-left: 5px solid #eee;
}
blockquote p:last-child,
blockquote ul:last-child,
blockquote ol:last-child {
  margin-bottom: 0;
}
blockquote footer,
blockquote small,
blockquote .small {
  display: block;
  font-size: 80%;
  line-height: 1.42857143;
  color: #777;
}
blockquote footer:before,
blockquote small:before,
blockquote .small:before {
  content: '\2014 \00A0';
}
.blockquote-reverse,
blockquote.pull-right {
  padding-right: 15px;
  padding-left: 0;
  text-align: right;
  border-right: 5px solid #eee;
  border-left: 0;
}
.blockquote-reverse footer:before,
blockquote.pull-right footer:before,
.blockquote-reverse small:before,
blockquote.pull-right small:before,
.blockquote-reverse .small:before,
blockquote.pull-right .small:before {
  content: '';
}
.blockquote-reverse footer:after,
blockquote.pull-right footer:after,
.blockquote-reverse small:after,
blockquote.pull-right small:after,
.blockquote-reverse .small:after,
blockquote.pull-right .small:after {
  content: '\00A0 \2014';
}
address {
  margin-bottom: 20px;
  font-style: normal;
  line-height: 1.42857143;
}
code,
kbd,
pre,
samp {
  font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
}
code {
  padding: 0;
  font-size: 100%;
  font-weight: bold;
  color: #000;
}
kbd {
  padding: 2px 4px;
  font-size: 90%;
  color: #fff;
  background-color: #333;
  border-radius: 3px;
  -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .25);
          box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .25);
}
kbd kbd {
  padding: 0;
  font-size: 100%;
  font-weight: bold;
  -webkit-box-shadow: none;
          box-shadow: none;
}
pre {
  display: block;
  padding: 9.5px;
  margin: 0 0 10px;
  font-size: 13px;
  line-height: 1.42857143;
  color: #333;
  word-break: break-all;
  word-wrap: break-word;
  background-color: #f5f5f5;
  border: 1px solid #ccc;
  border-radius: 4px;
}
pre code {
  padding: 0;
  font-size: inherit;
  color: inherit;
  white-space: pre-wrap;
  background-color: transparent;
  border-radius: 0;
}
.pre-scrollable {
  max-height: 340px;
  overflow-y: scroll;
}
.container {
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 768px) {
  .container {
    width: 750px;
  }
}
@media (min-width: 992px) {
  .container {
    width: 970px;
  }
}
@media (min-width: 1200px) {
  .container {
    width: 1170px;
  }
}
.container-fluid {
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}
.row {
  margin-right: -15px;
  margin-left: -15px;
}
.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
  position: relative;
  min-height: 1px;
  padding-right: 15px;
  padding-left: 15px;
}
.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {
  float: left;
}
.col-xs-12 {
  width: 100%;
}
.col-xs-11 {
  width: 91.66666667%;
}
.col-xs-10 {
  width: 83.33333333%;
}
.col-xs-9 {
  width: 75%;
}
.col-xs-8 {
  width: 66.66666667%;
}
.col-xs-7 {
  width: 58.33333333%;
}
.col-xs-6 {
  width: 50%;
}
.col-xs-5 {
  width: 41.66666667%;
}
.col-xs-4 {
  width: 33.33333333%;
}
.col-xs-3 {
  width: 25%;
}
.col-xs-2 {
  width: 16.66666667%;
}
.col-xs-1 {
  width: 8.33333333%;
}
.col-xs-pull-12 {
  right: 100%;
}
.col-xs-pull-11 {
  right: 91.66666667%;
}
.col-xs-pull-10 {
  right: 83.33333333%;
}
.col-xs-pull-9 {
  right: 75%;
}
.col-xs-pull-8 {
  right: 66.66666667%;
}
.col-xs-pull-7 {
  right: 58.33333333%;
}
.col-xs-pull-6 {
  right: 50%;
}
.col-xs-pull-5 {
  right: 41.66666667%;
}
.col-xs-pull-4 {
  right: 33.33333333%;
}
.col-xs-pull-3 {
  right: 25%;
}
.col-xs-pull-2 {
  right: 16.66666667%;
}
.col-xs-pull-1 {
  right: 8.33333333%;
}
.col-xs-pull-0 {
  right: auto;
}
.col-xs-push-12 {
  left: 100%;
}
.col-xs-push-11 {
  left: 91.66666667%;
}
.col-xs-push-10 {
  left: 83.33333333%;
}
.col-xs-push-9 {
  left: 75%;
}
.col-xs-push-8 {
  left: 66.66666667%;
}
.col-xs-push-7 {
  left: 58.33333333%;
}
.col-xs-push-6 {
  left: 50%;
}
.col-xs-push-5 {
  left: 41.66666667%;
}
.col-xs-push-4 {
  left: 33.33333333%;
}
.col-xs-push-3 {
  left: 25%;
}
.col-xs-push-2 {
  left: 16.66666667%;
}
.col-xs-push-1 {
  left: 8.33333333%;
}
.col-xs-push-0 {
  left: auto;
}
.col-xs-offset-12 {
  margin-left: 100%;
}
.col-xs-offset-11 {
  margin-left: 91.66666667%;
}
.col-xs-offset-10 {
  margin-left: 83.33333333%;
}
.col-xs-offset-9 {
  margin-left: 75%;
}
.col-xs-offset-8 {
  margin-left: 66.66666667%;
}
.col-xs-offset-7 {
  margin-left: 58.33333333%;
}
.col-xs-offset-6 {
  margin-left: 50%;
}
.col-xs-offset-5 {
  margin-left: 41.66666667%;
}
.col-xs-offset-4 {
  margin-left: 33.33333333%;
}
.col-xs-offset-3 {
  margin-left: 25%;
}
.col-xs-offset-2 {
  margin-left: 16.66666667%;
}
.col-xs-offset-1 {
  margin-left: 8.33333333%;
}
.col-xs-offset-0 {
  margin-left: 0;
}
@media (min-width: 768px) {
  .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
    float: left;
  }
  .col-sm-12 {
    width: 100%;
  }
  .col-sm-11 {
    width: 91.66666667%;
  }
  .col-sm-10 {
    width: 83.33333333%;
  }
  .col-sm-9 {
    width: 75%;
  }
  .col-sm-8 {
    width: 66.66666667%;
  }
  .col-sm-7 {
    width: 58.33333333%;
  }
  .col-sm-6 {
    width: 50%;
  }
  .col-sm-5 {
    width: 41.66666667%;
  }
  .col-sm-4 {
    width: 33.33333333%;
  }
  .col-sm-3 {
    width: 25%;
  }
  .col-sm-2 {
    width: 16.66666667%;
  }
  .col-sm-1 {
    width: 8.33333333%;
  }
  .col-sm-pull-12 {
    right: 100%;
  }
  .col-sm-pull-11 {
    right: 91.66666667%;
  }
  .col-sm-pull-10 {
    right: 83.33333333%;
  }
  .col-sm-pull-9 {
    right: 75%;
  }
  .col-sm-pull-8 {
    right: 66.66666667%;
  }
  .col-sm-pull-7 {
    right: 58.33333333%;
  }
  .col-sm-pull-6 {
    right: 50%;
  }
  .col-sm-pull-5 {
    right: 41.66666667%;
  }
  .col-sm-pull-4 {
    right: 33.33333333%;
  }
  .col-sm-pull-3 {
    right: 25%;
  }
  .col-sm-pull-2 {
    right: 16.66666667%;
  }
  .col-sm-pull-1 {
    right: 8.33333333%;
  }
  .col-sm-pull-0 {
    right: auto;
  }
  .col-sm-push-12 {
    left: 100%;
  }
  .col-sm-push-11 {
    left: 91.66666667%;
  }
  .col-sm-push-10 {
    left: 83.33333333%;
  }
  .col-sm-push-9 {
    left: 75%;
  }
  .col-sm-push-8 {
    left: 66.66666667%;
  }
  .col-sm-push-7 {
    left: 58.33333333%;
  }
  .col-sm-push-6 {
    left: 50%;
  }
  .col-sm-push-5 {
    left: 41.66666667%;
  }
  .col-sm-push-4 {
    left: 33.33333333%;
  }
  .col-sm-push-3 {
    left: 25%;
  }
  .col-sm-push-2 {
    left: 16.66666667%;
  }
  .col-sm-push-1 {
    left: 8.33333333%;
  }
  .col-sm-push-0 {
    left: auto;
  }
  .col-sm-offset-12 {
    margin-left: 100%;
  }
  .col-sm-offset-11 {
    margin-left: 91.66666667%;
  }
  .col-sm-offset-10 {
    margin-left: 83.33333333%;
  }
  .col-sm-offset-9 {
    margin-left: 75%;
  }
  .col-sm-offset-8 {
    margin-left: 66.66666667%;
  }
  .col-sm-offset-7 {
    margin-left: 58.33333333%;
  }
  .col-sm-offset-6 {
    margin-left: 50%;
  }
  .col-sm-offset-5 {
    margin-left: 41.66666667%;
  }
  .col-sm-offset-4 {
    margin-left: 33.33333333%;
  }
  .col-sm-offset-3 {
    margin-left: 25%;
  }
  .col-sm-offset-2 {
    margin-left: 16.66666667%;
  }
  .col-sm-offset-1 {
    margin-left: 8.33333333%;
  }
  .col-sm-offset-0 {
    margin-left: 0;
  }
}
@media (min-width: 992px) {
  .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {
    float: left;
  }
  .col-md-12 {
    width: 100%;
  }
  .col-md-11 {
    width: 91.66666667%;
  }
  .col-md-10 {
    width: 83.33333333%;
  }
  .col-md-9 {
    width: 75%;
  }
  .col-md-8 {
    width: 66.66666667%;
  }
  .col-md-7 {
    width: 58.33333333%;
  }
  .col-md-6 {
    width: 50%;
  }
  .col-md-5 {
    width: 41.66666667%;
  }
  .col-md-4 {
    width: 33.33333333%;
  }
  .col-md-3 {
    width: 25%;
  }
  .col-md-2 {
    width: 16.66666667%;
  }
  .col-md-1 {
    width: 8.33333333%;
  }
  .col-md-pull-12 {
    right: 100%;
  }
  .col-md-pull-11 {
    right: 91.66666667%;
  }
  .col-md-pull-10 {
    right: 83.33333333%;
  }
  .col-md-pull-9 {
    right: 75%;
  }
  .col-md-pull-8 {
    right: 66.66666667%;
  }
  .col-md-pull-7 {
    right: 58.33333333%;
  }
  .col-md-pull-6 {
    right: 50%;
  }
  .col-md-pull-5 {
    right: 41.66666667%;
  }
  .col-md-pull-4 {
    right: 33.33333333%;
  }
  .col-md-pull-3 {
    right: 25%;
  }
  .col-md-pull-2 {
    right: 16.66666667%;
  }
  .col-md-pull-1 {
    right: 8.33333333%;
  }
  .col-md-pull-0 {
    right: auto;
  }
  .col-md-push-12 {
    left: 100%;
  }
  .col-md-push-11 {
    left: 91.66666667%;
  }
  .col-md-push-10 {
    left: 83.33333333%;
  }
  .col-md-push-9 {
    left: 75%;
  }
  .col-md-push-8 {
    left: 66.66666667%;
  }
  .col-md-push-7 {
    left: 58.33333333%;
  }
  .col-md-push-6 {
    left: 50%;
  }
  .col-md-push-5 {
    left: 41.66666667%;
  }
  .col-md-push-4 {
    left: 33.33333333%;
  }
  .col-md-push-3 {
    left: 25%;
  }
  .col-md-push-2 {
    left: 16.66666667%;
  }
  .col-md-push-1 {
    left: 8.33333333%;
  }
  .col-md-push-0 {
    left: auto;
  }
  .col-md-offset-12 {
    margin-left: 100%;
  }
  .col-md-offset-11 {
    margin-left: 91.66666667%;
  }
  .col-md-offset-10 {
    margin-left: 83.33333333%;
  }
  .col-md-offset-9 {
    margin-left: 75%;
  }
  .col-md-offset-8 {
    margin-left: 66.66666667%;
  }
  .col-md-offset-7 {
    margin-left: 58.33333333%;
  }
  .col-md-offset-6 {
    margin-left: 50%;
  }
  .col-md-offset-5 {
    margin-left: 41.66666667%;
  }
  .col-md-offset-4 {
    margin-left: 33.33333333%;
  }
  .col-md-offset-3 {
    margin-left: 25%;
  }
  .col-md-offset-2 {
    margin-left: 16.66666667%;
  }
  .col-md-offset-1 {
    margin-left: 8.33333333%;
  }
  .col-md-offset-0 {
    margin-left: 0;
  }
}
@media (min-width: 1200px) {
  .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {
    float: left;
  }
  .col-lg-12 {
    width: 100%;
  }
  .col-lg-11 {
    width: 91.66666667%;
  }
  .col-lg-10 {
    width: 83.33333333%;
  }
  .col-lg-9 {
    width: 75%;
  }
  .col-lg-8 {
    width: 66.66666667%;
  }
  .col-lg-7 {
    width: 58.33333333%;
  }
  .col-lg-6 {
    width: 50%;
  }
  .col-lg-5 {
    width: 41.66666667%;
  }
  .col-lg-4 {
    width: 33.33333333%;
  }
  .col-lg-3 {
    width: 25%;
  }
  .col-lg-2 {
    width: 16.66666667%;
  }
  .col-lg-1 {
    width: 8.33333333%;
  }
  .col-lg-pull-12 {
    right: 100%;
  }
  .col-lg-pull-11 {
    right: 91.66666667%;
  }
  .col-lg-pull-10 {
    right: 83.33333333%;
  }
  .col-lg-pull-9 {
    right: 75%;
  }
  .col-lg-pull-8 {
    right: 66.66666667%;
  }
  .col-lg-pull-7 {
    right: 58.33333333%;
  }
  .col-lg-pull-6 {
    right: 50%;
  }
  .col-lg-pull-5 {
    right: 41.66666667%;
  }
  .col-lg-pull-4 {
    right: 33.33333333%;
  }
  .col-lg-pull-3 {
    right: 25%;
  }
  .col-lg-pull-2 {
    right: 16.66666667%;
  }
  .col-lg-pull-1 {
    right: 8.33333333%;
  }
  .col-lg-pull-0 {
    right: auto;
  }
  .col-lg-push-12 {
    left: 100%;
  }
  .col-lg-push-11 {
    left: 91.66666667%;
  }
  .col-lg-push-10 {
    left: 83.33333333%;
  }
  .col-lg-push-9 {
    left: 75%;
  }
  .col-lg-push-8 {
    left: 66.66666667%;
  }
  .col-lg-push-7 {
    left: 58.33333333%;
  }
  .col-lg-push-6 {
    left: 50%;
  }
  .col-lg-push-5 {
    left: 41.66666667%;
  }
  .col-lg-push-4 {
    left: 33.33333333%;
  }
  .col-lg-push-3 {
    left: 25%;
  }
  .col-lg-push-2 {
    left: 16.66666667%;
  }
  .col-lg-push-1 {
    left: 8.33333333%;
  }
  .col-lg-push-0 {
    left: auto;
  }
  .col-lg-offset-12 {
    margin-left: 100%;
  }
  .col-lg-offset-11 {
    margin-left: 91.66666667%;
  }
  .col-lg-offset-10 {
    margin-left: 83.33333333%;
  }
  .col-lg-offset-9 {
    margin-left: 75%;
  }
  .col-lg-offset-8 {
    margin-left: 66.66666667%;
  }
  .col-lg-offset-7 {
    margin-left: 58.33333333%;
  }
  .col-lg-offset-6 {
    margin-left: 50%;
  }
  .col-lg-offset-5 {
    margin-left: 41.66666667%;
  }
  .col-lg-offset-4 {
    margin-left: 33.33333333%;
  }
  .col-lg-offset-3 {
    margin-left: 25%;
  }
  .col-lg-offset-2 {
    margin-left: 16.66666667%;
  }
  .col-lg-offset-1 {
    margin-left: 8.33333333%;
  }
  .col-lg-offset-0 {
    margin-left: 0;
  }
}
table {
  background-color: transparent;
}
caption {
  padding-top: 8px;
  padding-bottom: 8px;
  color: #777;
  text-align: left;
}
th {
  text-align: left;
}
.table {
  width: 100%;
  max-width: 100%;
  margin-bottom: 20px;
}
.table > thead > tr > th,
.table > tbody > tr > th,
.table > tfoot > tr > th,
.table > thead > tr > td,
.table > tbody > tr > td,
.table > tfoot > tr > td {
  padding: 8px;
  line-height: 1.42857143;
  vertical-align: top;
  border-top: 1px solid #ddd;
}
.table > thead > tr > th {
  vertical-align: bottom;
  border-bottom: 2px solid #ddd;
}
.table > caption + thead > tr:first-child > th,
.table > colgroup + thead > tr:first-child > th,
.table > thead:first-child > tr:first-child > th,
.table > caption + thead > tr:first-child > td,
.table > colgroup + thead > tr:first-child > td,
.table > thead:first-child > tr:first-child > td {
  border-top: 0;
}
.table > tbody + tbody {
  border-top: 2px solid #ddd;
}
.table .table {
  background-color: #fff;
}
.table-condensed > thead > tr > th,
.table-condensed > tbody > tr > th,
.table-condensed > tfoot > tr > th,
.table-condensed > thead > tr > td,
.table-condensed > tbody > tr > td,
.table-condensed > tfoot > tr > td {
  padding: 5px;
}
.table-bordered {
  border: 1px solid #ddd;
}
.table-bordered > thead > tr > th,
.table-bordered > tbody > tr > th,
.table-bordered > tfoot > tr > th,
.table-bordered > thead > tr > td,
.table-bordered > tbody > tr > td,
.table-bordered > tfoot > tr > td {
  border: 1px solid #ddd;
}
.table-bordered > thead > tr > th,
.table-bordered > thead > tr > td {
  border-bottom-width: 2px;
}
.table-striped > tbody > tr:nth-of-type(odd) {
  background-color: #f9f9f9;
}
.table-hover > tbody > tr:hover {
  background-color: #f5f5f5;
}
table col[class*="col-"] {
  position: static;
  display: table-column;
  float: none;
}
table td[class*="col-"],
table th[class*="col-"] {
  position: static;
  display: table-cell;
  float: none;
}
.table > thead > tr > td.active,
.table > tbody > tr > td.active,
.table > tfoot > tr > td.active,
.table > thead > tr > th.active,
.table > tbody > tr > th.active,
.table > tfoot > tr > th.active,
.table > thead > tr.active > td,
.table > tbody > tr.active > td,
.table > tfoot > tr.active > td,
.table > thead > tr.active > th,
.table > tbody > tr.active > th,
.table > tfoot > tr.active > th {
  background-color: #f5f5f5;
}
.table-hover > tbody > tr > td.active:hover,
.table-hover > tbody > tr > th.active:hover,
.table-hover > tbody > tr.active:hover > td,
.table-hover > tbody > tr:hover > .active,
.table-hover > tbody > tr.active:hover > th {
  background-color: #e8e8e8;
}
.table > thead > tr > td.success,
.table > tbody > tr > td.success,
.table > tfoot > tr > td.success,
.table > thead > tr > th.success,
.table > tbody > tr > th.success,
.table > tfoot > tr > th.success,
.table > thead > tr.success > td,
.table > tbody > tr.success > td,
.table > tfoot > tr.success > td,
.table > thead > tr.success > th,
.table > tbody > tr.success > th,
.table > tfoot > tr.success > th {
  background-color: #dff0d8;
}
.table-hover > tbody > tr > td.success:hover,
.table-hover > tbody > tr > th.success:hover,
.table-hover > tbody > tr.success:hover > td,
.table-hover > tbody > tr:hover > .success,
.table-hover > tbody > tr.success:hover > th {
  background-color: #d0e9c6;
}
.table > thead > tr > td.info,
.table > tbody > tr > td.info,
.table > tfoot > tr > td.info,
.table > thead > tr > th.info,
.table > tbody > tr > th.info,
.table > tfoot > tr > th.info,
.table > thead > tr.info > td,
.table > tbody > tr.info > td,
.table > tfoot > tr.info > td,
.table > thead > tr.info > th,
.table > tbody > tr.info > th,
.table > tfoot > tr.info > th {
  background-color: #d9edf7;
}
.table-hover > tbody > tr > td.info:hover,
.table-hover > tbody > tr > th.info:hover,
.table-hover > tbody > tr.info:hover > td,
.table-hover > tbody > tr:hover > .info,
.table-hover > tbody > tr.info:hover > th {
  background-color: #c4e3f3;
}
.table > thead > tr > td.warning,
.table > tbody > tr > td.warning,
.table > tfoot > tr > td.warning,
.table > thead > tr > th.warning,
.table > tbody > tr > th.warning,
.table > tfoot > tr > th.warning,
.table > thead > tr.warning > td,
.table > tbody > tr.warning > td,
.table > tfoot > tr.warning > td,
.table > thead > tr.warning > th,
.table > tbody > tr.warning > th,
.table > tfoot > tr.warning > th {
  background-color: #fcf8e3;
}
.table-hover > tbody > tr > td.warning:hover,
.table-hover > tbody > tr > th.warning:hover,
.table-hover > tbody > tr.warning:hover > td,
.table-hover > tbody > tr:hover > .warning,
.table-hover > tbody > tr.warning:hover > th {
  background-color: #faf2cc;
}
.table > thead > tr > td.danger,
.table > tbody > tr > td.danger,
.table > tfoot > tr > td.danger,
.table > thead > tr > th.danger,
.table > tbody > tr > th.danger,
.table > tfoot > tr > th.danger,
.table > thead > tr.danger > td,
.table > tbody > tr.danger > td,
.table > tfoot > tr.danger > td,
.table > thead > tr.danger > th,
.table > tbody > tr.danger > th,
.table > tfoot > tr.danger > th {
  background-color: #f2dede;
}
.table-hover > tbody > tr > td.danger:hover,
.table-hover > tbody > tr > th.danger:hover,
.table-hover > tbody > tr.danger:hover > td,
.table-hover > tbody > tr:hover > .danger,
.table-hover > tbody > tr.danger:hover > th {
  background-color: #ebcccc;
}
.table-responsive {
  min-height: .01%;
  overflow-x: auto;
}
@media screen and (max-width: 767px) {
  .table-responsive {
    width: 100%;
    margin-bottom: 15px;
    overflow-y: hidden;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    border: 1px solid #ddd;
  }
  .table-responsive > .table {
    margin-bottom: 0;
  }
  .table-responsive > .table > thead > tr > th,
  .table-responsive > .table > tbody > tr > th,
  .table-responsive > .table > tfoot > tr > th,
  .table-responsive > .table > thead > tr > td,
  .table-responsive > .table > tbody > tr > td,
  .table-responsive > .table > tfoot > tr > td {
    white-space: nowrap;
  }
  .table-responsive > .table-bordered {
    border: 0;
  }
  .table-responsive > .table-bordered > thead > tr > th:first-child,
  .table-responsive > .table-bordered > tbody > tr > th:first-child,
  .table-responsive > .table-bordered > tfoot > tr > th:first-child,
  .table-responsive > .table-bordered > thead > tr > td:first-child,
  .table-responsive > .table-bordered > tbody > tr > td:first-child,
  .table-responsive > .table-bordered > tfoot > tr > td:first-child {
    border-left: 0;
  }
  .table-responsive > .table-bordered > thead > tr > th:last-child,
  .table-responsive > .table-bordered > tbody > tr > th:last-child,
  .table-responsive > .table-bordered > tfoot > tr > th:last-child,
  .table-responsive > .table-bordered > thead > tr > td:last-child,
  .table-responsive > .table-bordered > tbody > tr > td:last-child,
  .table-responsive > .table-bordered > tfoot > tr > td:last-child {
    border-right: 0;
  }
  .table-responsive > .table-bordered > tbody > tr:last-child > th,
  .table-responsive > .table-bordered > tfoot > tr:last-child > th,
  .table-responsive > .table-bordered > tbody > tr:last-child > td,
  .table-responsive > .table-bordered > tfoot > tr:last-child > td {
    border-bottom: 0;
  }
}
fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}
legend {
  display: block;
  width: 100%;
  padding: 0;
  margin-bottom: 20px;
  font-size: 21px;
  line-height: inherit;
  color: #333;
  border: 0;
  border-bottom: 1px solid #e5e5e5;
}
label {
  display: inline-block;
  max-width: 100%;
  margin-bottom: 5px;
  font-weight: bold;
}
input[type="search"] {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}
input[type="radio"],
input[type="checkbox"] {
  margin: 4px 0 0;
  margin-top: 1px \9;
  line-height: normal;
}
input[type="file"] {
  display: block;
}
input[type="range"] {
  display: block;
  width: 100%;
}
select[multiple],
select[size] {
  height: auto;
}
input[type="file"]:focus,
input[type="radio"]:focus,
input[type="checkbox"]:focus {
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}
output {
  display: block;
  padding-top: 7px;
  font-size: 14px;
  line-height: 1.42857143;
  color: #555;
}
.form-control {
  display: block;
  width: 100%;
  height: 34px;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.42857143;
  color: #555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
          box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
  -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
       -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
          transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
}
.form-control:focus {
  border-color: #66afe9;
  outline: 0;
  -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, .6);
          box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, .6);
}
.form-control::-moz-placeholder {
  color: #999;
  opacity: 1;
}
.form-control:-ms-input-placeholder {
  color: #999;
}
.form-control::-webkit-input-placeholder {
  color: #999;
}
.form-control::-ms-expand {
  background-color: transparent;
  border: 0;
}
.form-control[disabled],
.form-control[readonly],
fieldset[disabled] .form-control {
  background-color: #eee;
  opacity: 1;
}
.form-control[disabled],
fieldset[disabled] .form-control {
  cursor: not-allowed;
}
textarea.form-control {
  height: auto;
}
input[type="search"] {
  -webkit-appearance: none;
}
@media screen and (-webkit-min-device-pixel-ratio: 0) {
  input[type="date"].form-control,
  input[type="time"].form-control,
  input[type="datetime-local"].form-control,
  input[type="month"].form-control {
    line-height: 34px;
  }
  input[type="date"].input-sm,
  input[type="time"].input-sm,
  input[type="datetime-local"].input-sm,
  input[type="month"].input-sm,
  .input-group-sm input[type="date"],
  .input-group-sm input[type="time"],
  .input-group-sm input[type="datetime-local"],
  .input-group-sm input[type="month"] {
    line-height: 30px;
  }
  input[type="date"].input-lg,
  input[type="time"].input-lg,
  input[type="datetime-local"].input-lg,
  input[type="month"].input-lg,
  .input-group-lg input[type="date"],
  .input-group-lg input[type="time"],
  .input-group-lg input[type="datetime-local"],
  .input-group-lg input[type="month"] {
    line-height: 46px;
  }
}
.form-group {
  margin-bottom: 15px;
}
.radio,
.checkbox {
  position: relative;
  display: block;
  margin-top: 10px;
  margin-bottom: 10px;
}
.radio label,
.checkbox label {
  min-height: 20px;
  padding-left: 20px;
  margin-bottom: 0;
  font-weight: normal;
  cursor: pointer;
}
.radio input[type="radio"],
.radio-inline input[type="radio"],
.checkbox input[type="checkbox"],
.checkbox-inline input[type="checkbox"] {
  position: absolute;
  margin-top: 4px \9;
  margin-left: -20px;
}
.radio + .radio,
.checkbox + .checkbox {
  margin-top: -5px;
}
.radio-inline,
.checkbox-inline {
  position: relative;
  display: inline-block;
  padding-left: 20px;
  margin-bottom: 0;
  font-weight: normal;
  vertical-align: middle;
  cursor: pointer;
}
.radio-inline + .radio-inline,
.checkbox-inline + .checkbox-inline {
  margin-top: 0;
  margin-left: 10px;
}
input[type="radio"][disabled],
input[type="checkbox"][disabled],
input[type="radio"].disabled,
input[type="checkbox"].disabled,
fieldset[disabled] input[type="radio"],
fieldset[disabled] input[type="checkbox"] {
  cursor: not-allowed;
}
.radio-inline.disabled,
.checkbox-inline.disabled,
fieldset[disabled] .radio-inline,
fieldset[disabled] .checkbox-inline {
  cursor: not-allowed;
}
.radio.disabled label,
.checkbox.disabled label,
fieldset[disabled] .radio label,
fieldset[disabled] .checkbox label {
  cursor: not-allowed;
}
.form-control-static {
  min-height: 34px;
  padding-top: 7px;
  padding-bottom: 7px;
  margin-bottom: 0;
}
.form-control-static.input-lg,
.form-control-static.input-sm {
  padding-right: 0;
  padding-left: 0;
}
.input-sm {
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}
select.input-sm {
  height: 30px;
  line-height: 30px;
}
textarea.input-sm,
select[multiple].input-sm {
  height: auto;
}
.form-group-sm .form-control {
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}
.form-group-sm select.form-control {
  height: 30px;
  line-height: 30px;
}
.form-group-sm textarea.form-control,
.form-group-sm select[multiple].form-control {
  height: auto;
}
.form-group-sm .form-control-static {
  height: 30px;
  min-height: 32px;
  padding: 6px 10px;
  font-size: 12px;
  line-height: 1.5;
}
.input-lg {
  height: 46px;
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.3333333;
  border-radius: 6px;
}
select.input-lg {
  height: 46px;
  line-height: 46px;
}
textarea.input-lg,
select[multiple].input-lg {
  height: auto;
}
.form-group-lg .form-control {
  height: 46px;
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.3333333;
  border-radius: 6px;
}
.form-group-lg select.form-control {
  height: 46px;
  line-height: 46px;
}
.form-group-lg textarea.form-control,
.form-group-lg select[multiple].form-control {
  height: auto;
}
.form-group-lg .form-control-static {
  height: 46px;
  min-height: 38px;
  padding: 11px 16px;
  font-size: 18px;
  line-height: 1.3333333;
}
.has-feedback {
  position: relative;
}
.has-feedback .form-control {
  padding-right: 42.5px;
}
.form-control-feedback {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  display: block;
  width: 34px;
  height: 34px;
  line-height: 34px;
  text-align: center;
  pointer-events: none;
}
.input-lg + .form-control-feedback,
.input-group-lg + .form-control-feedback,
.form-group-lg .form-control + .form-control-feedback {
  width: 46px;
  height: 46px;
  line-height: 46px;
}
.input-sm + .form-control-feedback,
.input-group-sm + .form-control-feedback,
.form-group-sm .form-control + .form-control-feedback {
  width: 30px;
  height: 30px;
  line-height: 30px;
}
.has-success .help-block,
.has-success .control-label,
.has-success .radio,
.has-success .checkbox,
.has-success .radio-inline,
.has-success .checkbox-inline,
.has-success.radio label,
.has-success.checkbox label,
.has-success.radio-inline label,
.has-success.checkbox-inline label {
  color: #3c763d;
}
.has-success .form-control {
  border-color: #3c763d;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
          box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
}
.has-success .form-control:focus {
  border-color: #2b542c;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #67b168;
          box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #67b168;
}
.has-success .input-group-addon {
  color: #3c763d;
  background-color: #dff0d8;
  border-color: #3c763d;
}
.has-success .form-control-feedback {
  color: #3c763d;
}
.has-warning .help-block,
.has-warning .control-label,
.has-warning .radio,
.has-warning .checkbox,
.has-warning .radio-inline,
.has-warning .checkbox-inline,
.has-warning.radio label,
.has-warning.checkbox label,
.has-warning.radio-inline label,
.has-warning.checkbox-inline label {
  color: #8a6d3b;
}
.has-warning .form-control {
  border-color: #8a6d3b;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
          box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
}
.has-warning .form-control:focus {
  border-color: #66512c;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #c0a16b;
          box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #c0a16b;
}
.has-warning .input-group-addon {
  color: #8a6d3b;
  background-color: #fcf8e3;
  border-color: #8a6d3b;
}
.has-warning .form-control-feedback {
  color: #8a6d3b;
}
.has-error .help-block,
.has-error .control-label,
.has-error .radio,
.has-error .checkbox,
.has-error .radio-inline,
.has-error .checkbox-inline,
.has-error.radio label,
.has-error.checkbox label,
.has-error.radio-inline label,
.has-error.checkbox-inline label {
  color: #a94442;
}
.has-error .form-control {
  border-color: #a94442;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
          box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
}
.has-error .form-control:focus {
  border-color: #843534;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #ce8483;
          box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #ce8483;
}
.has-error .input-group-addon {
  color: #a94442;
  background-color: #f2dede;
  border-color: #a94442;
}
.has-error .form-control-feedback {
  color: #a94442;
}
.has-feedback label ~ .form-control-feedback {
  top: 25px;
}
.has-feedback label.sr-only ~ .form-control-feedback {
  top: 0;
}
.help-block {
  display: block;
  margin-top: 5px;
  margin-bottom: 10px;
  color: #737373;
}
@media (min-width: 768px) {
  .form-inline .form-group {
    display: inline-block;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .form-inline .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle;
  }
  .form-inline .form-control-static {
    display: inline-block;
  }
  .form-inline .input-group {
    display: inline-table;
    vertical-align: middle;
  }
  .form-inline .input-group .input-group-addon,
  .form-inline .input-group .input-group-btn,
  .form-inline .input-group .form-control {
    width: auto;
  }
  .form-inline .input-group > .form-control {
    width: 100%;
  }
  .form-inline .control-label {
    margin-bottom: 0;
    vertical-align: middle;
  }
  .form-inline .radio,
  .form-inline .checkbox {
    display: inline-block;
    margin-top: 0;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .form-inline .radio label,
  .form-inline .checkbox label {
    padding-left: 0;
  }
  .form-inline .radio input[type="radio"],
  .form-inline .checkbox input[type="checkbox"] {
    position: relative;
    margin-left: 0;
  }
  .form-inline .has-feedback .form-control-feedback {
    top: 0;
  }
}
.form-horizontal .radio,
.form-horizontal .checkbox,
.form-horizontal .radio-inline,
.form-horizontal .checkbox-inline {
  padding-top: 7px;
  margin-top: 0;
  margin-bottom: 0;
}
.form-horizontal .radio,
.form-horizontal .checkbox {
  min-height: 27px;
}
.form-horizontal .form-group {
  margin-right: -15px;
  margin-left: -15px;
}
@media (min-width: 768px) {
  .form-horizontal .control-label {
    padding-top: 7px;
    margin-bottom: 0;
    text-align: right;
  }
}
.form-horizontal .has-feedback .form-control-feedback {
  right: 15px;
}
@media (min-width: 768px) {
  .form-horizontal .form-group-lg .control-label {
    padding-top: 11px;
    font-size: 18px;
  }
}
@media (min-width: 768px) {
  .form-horizontal .form-group-sm .control-label {
    padding-top: 6px;
    font-size: 12px;
  }
}
.btn {
  display: inline-block;
  padding: 6px 12px;
  margin-bottom: 0;
  font-size: 14px;
  font-weight: normal;
  line-height: 1.42857143;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  -ms-touch-action: manipulation;
      touch-action: manipulation;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  background-image: none;
  border: 1px solid transparent;
  border-radius: 4px;
}
.btn:focus,
.btn:active:focus,
.btn.active:focus,
.btn.focus,
.btn:active.focus,
.btn.active.focus {
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}
.btn:hover,
.btn:focus,
.btn.focus {
  color: #333;
  text-decoration: none;
}
.btn:active,
.btn.active {
  background-image: none;
  outline: 0;
  -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);
          box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);
}
.btn.disabled,
.btn[disabled],
fieldset[disabled] .btn {
  cursor: not-allowed;
  filter: alpha(opacity=65);
  -webkit-box-shadow: none;
          box-shadow: none;
  opacity: .65;
}
a.btn.disabled,
fieldset[disabled] a.btn {
  pointer-events: none;
}
.btn-default {
  color: #333;
  background-color: #fff;
  border-color: #ccc;
}
.btn-default:focus,
.btn-default.focus {
  color: #333;
  background-color: #e6e6e6;
  border-color: #8c8c8c;
}
.btn-default:hover {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad;
}
.btn-default:active,
.btn-default.active,
.open > .dropdown-toggle.btn-default {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad;
}
.btn-default:active:hover,
.btn-default.active:hover,
.open > .dropdown-toggle.btn-default:hover,
.btn-default:active:focus,
.btn-default.active:focus,
.open > .dropdown-toggle.btn-default:focus,
.btn-default:active.focus,
.btn-default.active.focus,
.open > .dropdown-toggle.btn-default.focus {
  color: #333;
  background-color: #d4d4d4;
  border-color: #8c8c8c;
}
.btn-default:active,
.btn-default.active,
.open > .dropdown-toggle.btn-default {
  background-image: none;
}
.btn-default.disabled:hover,
.btn-default[disabled]:hover,
fieldset[disabled] .btn-default:hover,
.btn-default.disabled:focus,
.btn-default[disabled]:focus,
fieldset[disabled] .btn-default:focus,
.btn-default.disabled.focus,
.btn-default[disabled].focus,
fieldset[disabled] .btn-default.focus {
  background-color: #fff;
  border-color: #ccc;
}
.btn-default .badge {
  color: #fff;
  background-color: #333;
}
.btn-primary {
  color: #fff;
  background-color: #337ab7;
  border-color: #2e6da4;
}
.btn-primary:focus,
.btn-primary.focus {
  color: #fff;
  background-color: #286090;
  border-color: #122b40;
}
.btn-primary:hover {
  color: #fff;
  background-color: #286090;
  border-color: #204d74;
}
.btn-primary:active,
.btn-primary.active,
.open > .dropdown-toggle.btn-primary {
  color: #fff;
  background-color: #286090;
  border-color: #204d74;
}
.btn-primary:active:hover,
.btn-primary.active:hover,
.open > .dropdown-toggle.btn-primary:hover,
.btn-primary:active:focus,
.btn-primary.active:focus,
.open > .dropdown-toggle.btn-primary:focus,
.btn-primary:active.focus,
.btn-primary.active.focus,
.open > .dropdown-toggle.btn-primary.focus {
  color: #fff;
  background-color: #204d74;
  border-color: #122b40;
}
.btn-primary:active,
.btn-primary.active,
.open > .dropdown-toggle.btn-primary {
  background-image: none;
}
.btn-primary.disabled:hover,
.btn-primary[disabled]:hover,
fieldset[disabled] .btn-primary:hover,
.btn-primary.disabled:focus,
.btn-primary[disabled]:focus,
fieldset[disabled] .btn-primary:focus,
.btn-primary.disabled.focus,
.btn-primary[disabled].focus,
fieldset[disabled] .btn-primary.focus {
  background-color: #337ab7;
  border-color: #2e6da4;
}
.btn-primary .badge {
  color: #337ab7;
  background-color: #fff;
}
.btn-success {
  color: #fff;
  background-color: #5cb85c;
  border-color: #4cae4c;
}
.btn-success:focus,
.btn-success.focus {
  color: #fff;
  background-color: #449d44;
  border-color: #255625;
}
.btn-success:hover {
  color: #fff;
  background-color: #449d44;
  border-color: #398439;
}
.btn-success:active,
.btn-success.active,
.open > .dropdown-toggle.btn-success {
  color: #fff;
  background-color: #449d44;
  border-color: #398439;
}
.btn-success:active:hover,
.btn-success.active:hover,
.open > .dropdown-toggle.btn-success:hover,
.btn-success:active:focus,
.btn-success.active:focus,
.open > .dropdown-toggle.btn-success:focus,
.btn-success:active.focus,
.btn-success.active.focus,
.open > .dropdown-toggle.btn-success.focus {
  color: #fff;
  background-color: #398439;
  border-color: #255625;
}
.btn-success:active,
.btn-success.active,
.open > .dropdown-toggle.btn-success {
  background-image: none;
}
.btn-success.disabled:hover,
.btn-success[disabled]:hover,
fieldset[disabled] .btn-success:hover,
.btn-success.disabled:focus,
.btn-success[disabled]:focus,
fieldset[disabled] .btn-success:focus,
.btn-success.disabled.focus,
.btn-success[disabled].focus,
fieldset[disabled] .btn-success.focus {
  background-color: #5cb85c;
  border-color: #4cae4c;
}
.btn-success .badge {
  color: #5cb85c;
  background-color: #fff;
}
.btn-info {
  color: #fff;
  background-color: #5bc0de;
  border-color: #46b8da;
}
.btn-info:focus,
.btn-info.focus {
  color: #fff;
  background-color: #31b0d5;
  border-color: #1b6d85;
}
.btn-info:hover {
  color: #fff;
  background-color: #31b0d5;
  border-color: #269abc;
}
.btn-info:active,
.btn-info.active,
.open > .dropdown-toggle.btn-info {
  color: #fff;
  background-color: #31b0d5;
  border-color: #269abc;
}
.btn-info:active:hover,
.btn-info.active:hover,
.open > .dropdown-toggle.btn-info:hover,
.btn-info:active:focus,
.btn-info.active:focus,
.open > .dropdown-toggle.btn-info:focus,
.btn-info:active.focus,
.btn-info.active.focus,
.open > .dropdown-toggle.btn-info.focus {
  color: #fff;
  background-color: #269abc;
  border-color: #1b6d85;
}
.btn-info:active,
.btn-info.active,
.open > .dropdown-toggle.btn-info {
  background-image: none;
}
.btn-info.disabled:hover,
.btn-info[disabled]:hover,
fieldset[disabled] .btn-info:hover,
.btn-info.disabled:focus,
.btn-info[disabled]:focus,
fieldset[disabled] .btn-info:focus,
.btn-info.disabled.focus,
.btn-info[disabled].focus,
fieldset[disabled] .btn-info.focus {
  background-color: #5bc0de;
  border-color: #46b8da;
}
.btn-info .badge {
  color: #5bc0de;
  background-color: #fff;
}
.btn-warning {
  color: #fff;
  background-color: #f0ad4e;
  border-color: #eea236;
}
.btn-warning:focus,
.btn-warning.focus {
  color: #fff;
  background-color: #ec971f;
  border-color: #985f0d;
}
.btn-warning:hover {
  color: #fff;
  background-color: #ec971f;
  border-color: #d58512;
}
.btn-warning:active,
.btn-warning.active,
.open > .dropdown-toggle.btn-warning {
  color: #fff;
  background-color: #ec971f;
  border-color: #d58512;
}
.btn-warning:active:hover,
.btn-warning.active:hover,
.open > .dropdown-toggle.btn-warning:hover,
.btn-warning:active:focus,
.btn-warning.active:focus,
.open > .dropdown-toggle.btn-warning:focus,
.btn-warning:active.focus,
.btn-warning.active.focus,
.open > .dropdown-toggle.btn-warning.focus {
  color: #fff;
  background-color: #d58512;
  border-color: #985f0d;
}
.btn-warning:active,
.btn-warning.active,
.open > .dropdown-toggle.btn-warning {
  background-image: none;
}
.btn-warning.disabled:hover,
.btn-warning[disabled]:hover,
fieldset[disabled] .btn-warning:hover,
.btn-warning.disabled:focus,
.btn-warning[disabled]:focus,
fieldset[disabled] .btn-warning:focus,
.btn-warning.disabled.focus,
.btn-warning[disabled].focus,
fieldset[disabled] .btn-warning.focus {
  background-color: #f0ad4e;
  border-color: #eea236;
}
.btn-warning .badge {
  color: #f0ad4e;
  background-color: #fff;
}
.btn-danger {
  color: #fff;
  background-color: #d9534f;
  border-color: #d43f3a;
}
.btn-danger:focus,
.btn-danger.focus {
  color: #fff;
  background-color: #c9302c;
  border-color: #761c19;
}
.btn-danger:hover {
  color: #fff;
  background-color: #c9302c;
  border-color: #ac2925;
}
.btn-danger:active,
.btn-danger.active,
.open > .dropdown-toggle.btn-danger {
  color: #fff;
  background-color: #c9302c;
  border-color: #ac2925;
}
.btn-danger:active:hover,
.btn-danger.active:hover,
.open > .dropdown-toggle.btn-danger:hover,
.btn-danger:active:focus,
.btn-danger.active:focus,
.open > .dropdown-toggle.btn-danger:focus,
.btn-danger:active.focus,
.btn-danger.active.focus,
.open > .dropdown-toggle.btn-danger.focus {
  color: #fff;
  background-color: #ac2925;
  border-color: #761c19;
}
.btn-danger:active,
.btn-danger.active,
.open > .dropdown-toggle.btn-danger {
  background-image: none;
}
.btn-danger.disabled:hover,
.btn-danger[disabled]:hover,
fieldset[disabled] .btn-danger:hover,
.btn-danger.disabled:focus,
.btn-danger[disabled]:focus,
fieldset[disabled] .btn-danger:focus,
.btn-danger.disabled.focus,
.btn-danger[disabled].focus,
fieldset[disabled] .btn-danger.focus {
  background-color: #d9534f;
  border-color: #d43f3a;
}
.btn-danger .badge {
  color: #d9534f;
  background-color: #fff;
}
.btn-link {
  font-weight: normal;
  color: #337ab7;
  border-radius: 0;
}
.btn-link,
.btn-link:active,
.btn-link.active,
.btn-link[disabled],
fieldset[disabled] .btn-link {
  background-color: transparent;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.btn-link,
.btn-link:hover,
.btn-link:focus,
.btn-link:active {
  border-color: transparent;
}
.btn-link:hover,
.btn-link:focus {
  color: #23527c;
  text-decoration: underline;
  background-color: transparent;
}
.btn-link[disabled]:hover,
fieldset[disabled] .btn-link:hover,
.btn-link[disabled]:focus,
fieldset[disabled] .btn-link:focus {
  color: #777;
  text-decoration: none;
}
.btn-lg,
.btn-group-lg > .btn {
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.3333333;
  border-radius: 6px;
}
.btn-sm,
.btn-group-sm > .btn {
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}
.btn-xs,
.btn-group-xs > .btn {
  padding: 1px 5px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}
.btn-block {
  display: block;
  width: 100%;
}
.btn-block + .btn-block {
  margin-top: 5px;
}
input[type="submit"].btn-block,
input[type="reset"].btn-block,
input[type="button"].btn-block {
  width: 100%;
}
.fade {
  opacity: 0;
  -webkit-transition: opacity .15s linear;
       -o-transition: opacity .15s linear;
          transition: opacity .15s linear;
}
.fade.in {
  opacity: 1;
}
.collapse {
  display: none;
}
.collapse.in {
  display: block;
}
tr.collapse.in {
  display: table-row;
}
tbody.collapse.in {
  display: table-row-group;
}
.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  -webkit-transition-timing-function: ease;
       -o-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-duration: .35s;
       -o-transition-duration: .35s;
          transition-duration: .35s;
  -webkit-transition-property: height, visibility;
       -o-transition-property: height, visibility;
          transition-property: height, visibility;
}
.caret {
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: 2px;
  vertical-align: middle;
  border-top: 4px dashed;
  border-top: 4px solid \9;
  border-right: 4px solid transparent;
  border-left: 4px solid transparent;
}
.dropup,
.dropdown {
  position: relative;
}
.dropdown-toggle:focus {
  outline: 0;
}
.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 160px;
  padding: 5px 0;
  margin: 2px 0 0;
  font-size: 14px;
  text-align: left;
  list-style: none;
  background-color: #fff;
  -webkit-background-clip: padding-box;
          background-clip: padding-box;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, .15);
  border-radius: 4px;
  -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
          box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
}
.dropdown-menu.pull-right {
  right: 0;
  left: auto;
}
.dropdown-menu .divider {
  height: 1px;
  margin: 9px 0;
  overflow: hidden;
  background-color: #e5e5e5;
}
.dropdown-menu > li > a {
  display: block;
  padding: 3px 20px;
  clear: both;
  font-weight: normal;
  line-height: 1.42857143;
  color: #333;
  white-space: nowrap;
}
.dropdown-menu > li > a:hover,
.dropdown-menu > li > a:focus {
  color: #262626;
  text-decoration: none;
  background-color: #f5f5f5;
}
.dropdown-menu > .active > a,
.dropdown-menu > .active > a:hover,
.dropdown-menu > .active > a:focus {
  color: #fff;
  text-decoration: none;
  background-color: #337ab7;
  outline: 0;
}
.dropdown-menu > .disabled > a,
.dropdown-menu > .disabled > a:hover,
.dropdown-menu > .disabled > a:focus {
  color: #777;
}
.dropdown-menu > .disabled > a:hover,
.dropdown-menu > .disabled > a:focus {
  text-decoration: none;
  cursor: not-allowed;
  background-color: transparent;
  background-image: none;
  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
}
.open > .dropdown-menu {
  display: block;
}
.open > a {
  outline: 0;
}
.dropdown-menu-right {
  right: 0;
  left: auto;
}
.dropdown-menu-left {
  right: auto;
  left: 0;
}
.dropdown-header {
  display: block;
  padding: 3px 20px;
  font-size: 12px;
  line-height: 1.42857143;
  color: #777;
  white-space: nowrap;
}
.dropdown-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 990;
}
.pull-right > .dropdown-menu {
  right: 0;
  left: auto;
}
.dropup .caret,
.navbar-fixed-bottom .dropdown .caret {
  content: "";
  border-top: 0;
  border-bottom: 4px dashed;
  border-bottom: 4px solid \9;
}
.dropup .dropdown-menu,
.navbar-fixed-bottom .dropdown .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-bottom: 2px;
}
@media (min-width: 768px) {
  .navbar-right .dropdown-menu {
    right: 0;
    left: auto;
  }
  .navbar-right .dropdown-menu-left {
    right: auto;
    left: 0;
  }
}
.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-block;
  vertical-align: middle;
}
.btn-group > .btn,
.btn-group-vertical > .btn {
  position: relative;
  float: left;
}
.btn-group > .btn:hover,
.btn-group-vertical > .btn:hover,
.btn-group > .btn:focus,
.btn-group-vertical > .btn:focus,
.btn-group > .btn:active,
.btn-group-vertical > .btn:active,
.btn-group > .btn.active,
.btn-group-vertical > .btn.active {
  z-index: 2;
}
.btn-group .btn + .btn,
.btn-group .btn + .btn-group,
.btn-group .btn-group + .btn,
.btn-group .btn-group + .btn-group {
  margin-left: -1px;
}
.btn-toolbar {
  margin-left: -5px;
}
.btn-toolbar .btn,
.btn-toolbar .btn-group,
.btn-toolbar .input-group {
  float: left;
}
.btn-toolbar > .btn,
.btn-toolbar > .btn-group,
.btn-toolbar > .input-group {
  margin-left: 5px;
}
.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {
  border-radius: 0;
}
.btn-group > .btn:first-child {
  margin-left: 0;
}
.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.btn-group > .btn:last-child:not(:first-child),
.btn-group > .dropdown-toggle:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.btn-group > .btn-group {
  float: left;
}
.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {
  border-radius: 0;
}
.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.btn-group .dropdown-toggle:active,
.btn-group.open .dropdown-toggle {
  outline: 0;
}
.btn-group > .btn + .dropdown-toggle {
  padding-right: 8px;
  padding-left: 8px;
}
.btn-group > .btn-lg + .dropdown-toggle {
  padding-right: 12px;
  padding-left: 12px;
}
.btn-group.open .dropdown-toggle {
  -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);
          box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);
}
.btn-group.open .dropdown-toggle.btn-link {
  -webkit-box-shadow: none;
          box-shadow: none;
}
.btn .caret {
  margin-left: 0;
}
.btn-lg .caret {
  border-width: 5px 5px 0;
  border-bottom-width: 0;
}
.dropup .btn-lg .caret {
  border-width: 0 5px 5px;
}
.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group,
.btn-group-vertical > .btn-group > .btn {
  display: block;
  float: none;
  width: 100%;
  max-width: 100%;
}
.btn-group-vertical > .btn-group > .btn {
  float: none;
}
.btn-group-vertical > .btn + .btn,
.btn-group-vertical > .btn + .btn-group,
.btn-group-vertical > .btn-group + .btn,
.btn-group-vertical > .btn-group + .btn-group {
  margin-top: -1px;
  margin-left: 0;
}
.btn-group-vertical > .btn:not(:first-child):not(:last-child) {
  border-radius: 0;
}
.btn-group-vertical > .btn:first-child:not(:last-child) {
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.btn-group-vertical > .btn:last-child:not(:first-child) {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  border-bottom-right-radius: 4px;
  border-bottom-left-radius: 4px;
}
.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {
  border-radius: 0;
}
.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.btn-group-justified {
  display: table;
  width: 100%;
  table-layout: fixed;
  border-collapse: separate;
}
.btn-group-justified > .btn,
.btn-group-justified > .btn-group {
  display: table-cell;
  float: none;
  width: 1%;
}
.btn-group-justified > .btn-group .btn {
  width: 100%;
}
.btn-group-justified > .btn-group .dropdown-menu {
  left: auto;
}
[data-toggle="buttons"] > .btn input[type="radio"],
[data-toggle="buttons"] > .btn-group > .btn input[type="radio"],
[data-toggle="buttons"] > .btn input[type="checkbox"],
[data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"] {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none;
}
.input-group {
  position: relative;
  display: table;
  border-collapse: separate;
}
.input-group[class*="col-"] {
  float: none;
  padding-right: 0;
  padding-left: 0;
}
.input-group .form-control {
  position: relative;
  z-index: 2;
  float: left;
  width: 100%;
  margin-bottom: 0;
}
.input-group .form-control:focus {
  z-index: 3;
}
.input-group-lg > .form-control,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .btn {
  height: 46px;
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.3333333;
  border-radius: 6px;
}
select.input-group-lg > .form-control,
select.input-group-lg > .input-group-addon,
select.input-group-lg > .input-group-btn > .btn {
  height: 46px;
  line-height: 46px;
}
textarea.input-group-lg > .form-control,
textarea.input-group-lg > .input-group-addon,
textarea.input-group-lg > .input-group-btn > .btn,
select[multiple].input-group-lg > .form-control,
select[multiple].input-group-lg > .input-group-addon,
select[multiple].input-group-lg > .input-group-btn > .btn {
  height: auto;
}
.input-group-sm > .form-control,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .btn {
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}
select.input-group-sm > .form-control,
select.input-group-sm > .input-group-addon,
select.input-group-sm > .input-group-btn > .btn {
  height: 30px;
  line-height: 30px;
}
textarea.input-group-sm > .form-control,
textarea.input-group-sm > .input-group-addon,
textarea.input-group-sm > .input-group-btn > .btn,
select[multiple].input-group-sm > .form-control,
select[multiple].input-group-sm > .input-group-addon,
select[multiple].input-group-sm > .input-group-btn > .btn {
  height: auto;
}
.input-group-addon,
.input-group-btn,
.input-group .form-control {
  display: table-cell;
}
.input-group-addon:not(:first-child):not(:last-child),
.input-group-btn:not(:first-child):not(:last-child),
.input-group .form-control:not(:first-child):not(:last-child) {
  border-radius: 0;
}
.input-group-addon,
.input-group-btn {
  width: 1%;
  white-space: nowrap;
  vertical-align: middle;
}
.input-group-addon {
  padding: 6px 12px;
  font-size: 14px;
  font-weight: normal;
  line-height: 1;
  color: #555;
  text-align: center;
  background-color: #eee;
  border: 1px solid #ccc;
  border-radius: 4px;
}
.input-group-addon.input-sm {
  padding: 5px 10px;
  font-size: 12px;
  border-radius: 3px;
}
.input-group-addon.input-lg {
  padding: 10px 16px;
  font-size: 18px;
  border-radius: 6px;
}
.input-group-addon input[type="radio"],
.input-group-addon input[type="checkbox"] {
  margin-top: 0;
}
.input-group .form-control:first-child,
.input-group-addon:first-child,
.input-group-btn:first-child > .btn,
.input-group-btn:first-child > .btn-group > .btn,
.input-group-btn:first-child > .dropdown-toggle,
.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.input-group-addon:first-child {
  border-right: 0;
}
.input-group .form-control:last-child,
.input-group-addon:last-child,
.input-group-btn:last-child > .btn,
.input-group-btn:last-child > .btn-group > .btn,
.input-group-btn:last-child > .dropdown-toggle,
.input-group-btn:first-child > .btn:not(:first-child),
.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.input-group-addon:last-child {
  border-left: 0;
}
.input-group-btn {
  position: relative;
  font-size: 0;
  white-space: nowrap;
}
.input-group-btn > .btn {
  position: relative;
}
.input-group-btn > .btn + .btn {
  margin-left: -1px;
}
.input-group-btn > .btn:hover,
.input-group-btn > .btn:focus,
.input-group-btn > .btn:active {
  z-index: 2;
}
.input-group-btn:first-child > .btn,
.input-group-btn:first-child > .btn-group {
  margin-right: -1px;
}
.input-group-btn:last-child > .btn,
.input-group-btn:last-child > .btn-group {
  z-index: 2;
  margin-left: -1px;
}
.nav {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}
.nav > li {
  position: relative;
  display: block;
}
.nav > li > a {
  position: relative;
  display: block;
  padding: 10px 15px;
}
.nav > li > a:hover,
.nav > li > a:focus {
  text-decoration: none;
  background-color: #eee;
}
.nav > li.disabled > a {
  color: #777;
}
.nav > li.disabled > a:hover,
.nav > li.disabled > a:focus {
  color: #777;
  text-decoration: none;
  cursor: not-allowed;
  background-color: transparent;
}
.nav .open > a,
.nav .open > a:hover,
.nav .open > a:focus {
  background-color: #eee;
  border-color: #337ab7;
}
.nav .nav-divider {
  height: 1px;
  margin: 9px 0;
  overflow: hidden;
  background-color: #e5e5e5;
}
.nav > li > a > img {
  max-width: none;
}
.nav-tabs {
  border-bottom: 1px solid #ddd;
}
.nav-tabs > li {
  float: left;
  margin-bottom: -1px;
}
.nav-tabs > li > a {
  margin-right: 2px;
  line-height: 1.42857143;
  border: 1px solid transparent;
  border-radius: 4px 4px 0 0;
}
.nav-tabs > li > a:hover {
  border-color: #eee #eee #ddd;
}
.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover,
.nav-tabs > li.active > a:focus {
  color: #555;
  cursor: default;
  background-color: #fff;
  border: 1px solid #ddd;
  border-bottom-color: transparent;
}
.nav-tabs.nav-justified {
  width: 100%;
  border-bottom: 0;
}
.nav-tabs.nav-justified > li {
  float: none;
}
.nav-tabs.nav-justified > li > a {
  margin-bottom: 5px;
  text-align: center;
}
.nav-tabs.nav-justified > .dropdown .dropdown-menu {
  top: auto;
  left: auto;
}
@media (min-width: 768px) {
  .nav-tabs.nav-justified > li {
    display: table-cell;
    width: 1%;
  }
  .nav-tabs.nav-justified > li > a {
    margin-bottom: 0;
  }
}
.nav-tabs.nav-justified > li > a {
  margin-right: 0;
  border-radius: 4px;
}
.nav-tabs.nav-justified > .active > a,
.nav-tabs.nav-justified > .active > a:hover,
.nav-tabs.nav-justified > .active > a:focus {
  border: 1px solid #ddd;
}
@media (min-width: 768px) {
  .nav-tabs.nav-justified > li > a {
    border-bottom: 1px solid #ddd;
    border-radius: 4px 4px 0 0;
  }
  .nav-tabs.nav-justified > .active > a,
  .nav-tabs.nav-justified > .active > a:hover,
  .nav-tabs.nav-justified > .active > a:focus {
    border-bottom-color: #fff;
  }
}
.nav-pills > li {
  float: left;
}
.nav-pills > li > a {
  border-radius: 4px;
}
.nav-pills > li + li {
  margin-left: 2px;
}
.nav-pills > li.active > a,
.nav-pills > li.active > a:hover,
.nav-pills > li.active > a:focus {
  color: #fff;
  background-color: #337ab7;
}
.nav-stacked > li {
  float: none;
}
.nav-stacked > li + li {
  margin-top: 2px;
  margin-left: 0;
}
.nav-justified {
  width: 100%;
}
.nav-justified > li {
  float: none;
}
.nav-justified > li > a {
  margin-bottom: 5px;
  text-align: center;
}
.nav-justified > .dropdown .dropdown-menu {
  top: auto;
  left: auto;
}
@media (min-width: 768px) {
  .nav-justified > li {
    display: table-cell;
    width: 1%;
  }
  .nav-justified > li > a {
    margin-bottom: 0;
  }
}
.nav-tabs-justified {
  border-bottom: 0;
}
.nav-tabs-justified > li > a {
  margin-right: 0;
  border-radius: 4px;
}
.nav-tabs-justified > .active > a,
.nav-tabs-justified > .active > a:hover,
.nav-tabs-justified > .active > a:focus {
  border: 1px solid #ddd;
}
@media (min-width: 768px) {
  .nav-tabs-justified > li > a {
    border-bottom: 1px solid #ddd;
    border-radius: 4px 4px 0 0;
  }
  .nav-tabs-justified > .active > a,
  .nav-tabs-justified > .active > a:hover,
  .nav-tabs-justified > .active > a:focus {
    border-bottom-color: #fff;
  }
}
.tab-content > .tab-pane {
  display: none;
}
.tab-content > .active {
  display: block;
}
.nav-tabs .dropdown-menu {
  margin-top: -1px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.navbar {
  position: relative;
  min-height: 50px;
  margin-bottom: 20px;
  border: 1px solid transparent;
}
@media (min-width: 768px) {
  .navbar {
    border-radius: 4px;
  }
}
@media (min-width: 768px) {
  .navbar-header {
    float: left;
  }
}
.navbar-collapse {
  padding-right: 15px;
  padding-left: 15px;
  overflow-x: visible;
  -webkit-overflow-scrolling: touch;
  border-top: 1px solid transparent;
  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1);
          box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1);
}
.navbar-collapse.in {
  overflow-y: auto;
}
@media (min-width: 768px) {
  .navbar-collapse {
    width: auto;
    border-top: 0;
    -webkit-box-shadow: none;
            box-shadow: none;
  }
  .navbar-collapse.collapse {
    display: block !important;
    height: auto !important;
    padding-bottom: 0;
    overflow: visible !important;
  }
  .navbar-collapse.in {
    overflow-y: visible;
  }
  .navbar-fixed-top .navbar-collapse,
  .navbar-static-top .navbar-collapse,
  .navbar-fixed-bottom .navbar-collapse {
    padding-right: 0;
    padding-left: 0;
  }
}
.navbar-fixed-top .navbar-collapse,
.navbar-fixed-bottom .navbar-collapse {
  max-height: 340px;
}
@media (max-device-width: 480px) and (orientation: landscape) {
  .navbar-fixed-top .navbar-collapse,
  .navbar-fixed-bottom .navbar-collapse {
    max-height: 200px;
  }
}
.container > .navbar-header,
.container-fluid > .navbar-header,
.container > .navbar-collapse,
.container-fluid > .navbar-collapse {
  margin-right: -15px;
  margin-left: -15px;
}
@media (min-width: 768px) {
  .container > .navbar-header,
  .container-fluid > .navbar-header,
  .container > .navbar-collapse,
  .container-fluid > .navbar-collapse {
    margin-right: 0;
    margin-left: 0;
  }
}
.navbar-static-top {
  z-index: 1000;
  border-width: 0 0 1px;
}
@media (min-width: 768px) {
  .navbar-static-top {
    border-radius: 0;
  }
}
.navbar-fixed-top,
.navbar-fixed-bottom {
  position: fixed;
  right: 0;
  left: 0;
  z-index: 1030;
}
@media (min-width: 768px) {
  .navbar-fixed-top,
  .navbar-fixed-bottom {
    border-radius: 0;
  }
}
.navbar-fixed-top {
  top: 0;
  border-width: 0 0 1px;
}
.navbar-fixed-bottom {
  bottom: 0;
  margin-bottom: 0;
  border-width: 1px 0 0;
}
.navbar-brand {
  float: left;
  height: 50px;
  padding: 15px 15px;
  font-size: 18px;
  line-height: 20px;
}
.navbar-brand:hover,
.navbar-brand:focus {
  text-decoration: none;
}
.navbar-brand > img {
  display: block;
}
@media (min-width: 768px) {
  .navbar > .container .navbar-brand,
  .navbar > .container-fluid .navbar-brand {
    margin-left: -15px;
  }
}
.navbar-toggle {
  position: relative;
  float: right;
  padding: 9px 10px;
  margin-top: 8px;
  margin-right: 15px;
  margin-bottom: 8px;
  background-color: transparent;
  background-image: none;
  border: 1px solid transparent;
  border-radius: 4px;
}
.navbar-toggle:focus {
  outline: 0;
}
.navbar-toggle .icon-bar {
  display: block;
  width: 22px;
  height: 2px;
  border-radius: 1px;
}
.navbar-toggle .icon-bar + .icon-bar {
  margin-top: 4px;
}
@media (min-width: 768px) {
  .navbar-toggle {
    display: none;
  }
}
.navbar-nav {
  margin: 7.5px -15px;
}
.navbar-nav > li > a {
  padding-top: 10px;
  padding-bottom: 10px;
  line-height: 20px;
}
@media (max-width: 767px) {
  .navbar-nav .open .dropdown-menu {
    position: static;
    float: none;
    width: auto;
    margin-top: 0;
    background-color: transparent;
    border: 0;
    -webkit-box-shadow: none;
            box-shadow: none;
  }
  .navbar-nav .open .dropdown-menu > li > a,
  .navbar-nav .open .dropdown-menu .dropdown-header {
    padding: 5px 15px 5px 25px;
  }
  .navbar-nav .open .dropdown-menu > li > a {
    line-height: 20px;
  }
  .navbar-nav .open .dropdown-menu > li > a:hover,
  .navbar-nav .open .dropdown-menu > li > a:focus {
    background-image: none;
  }
}
@media (min-width: 768px) {
  .navbar-nav {
    float: left;
    margin: 0;
  }
  .navbar-nav > li {
    float: left;
  }
  .navbar-nav > li > a {
    padding-top: 15px;
    padding-bottom: 15px;
  }
}
.navbar-form {
  padding: 10px 15px;
  margin-top: 8px;
  margin-right: -15px;
  margin-bottom: 8px;
  margin-left: -15px;
  border-top: 1px solid transparent;
  border-bottom: 1px solid transparent;
  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 1px 0 rgba(255, 255, 255, .1);
          box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 1px 0 rgba(255, 255, 255, .1);
}
@media (min-width: 768px) {
  .navbar-form .form-group {
    display: inline-block;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .navbar-form .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle;
  }
  .navbar-form .form-control-static {
    display: inline-block;
  }
  .navbar-form .input-group {
    display: inline-table;
    vertical-align: middle;
  }
  .navbar-form .input-group .input-group-addon,
  .navbar-form .input-group .input-group-btn,
  .navbar-form .input-group .form-control {
    width: auto;
  }
  .navbar-form .input-group > .form-control {
    width: 100%;
  }
  .navbar-form .control-label {
    margin-bottom: 0;
    vertical-align: middle;
  }
  .navbar-form .radio,
  .navbar-form .checkbox {
    display: inline-block;
    margin-top: 0;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .navbar-form .radio label,
  .navbar-form .checkbox label {
    padding-left: 0;
  }
  .navbar-form .radio input[type="radio"],
  .navbar-form .checkbox input[type="checkbox"] {
    position: relative;
    margin-left: 0;
  }
  .navbar-form .has-feedback .form-control-feedback {
    top: 0;
  }
}
@media (max-width: 767px) {
  .navbar-form .form-group {
    margin-bottom: 5px;
  }
  .navbar-form .form-group:last-child {
    margin-bottom: 0;
  }
}
@media (min-width: 768px) {
  .navbar-form {
    width: auto;
    padding-top: 0;
    padding-bottom: 0;
    margin-right: 0;
    margin-left: 0;
    border: 0;
    -webkit-box-shadow: none;
            box-shadow: none;
  }
}
.navbar-nav > li > .dropdown-menu {
  margin-top: 0;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {
  margin-bottom: 0;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.navbar-btn {
  margin-top: 8px;
  margin-bottom: 8px;
}
.navbar-btn.btn-sm {
  margin-top: 10px;
  margin-bottom: 10px;
}
.navbar-btn.btn-xs {
  margin-top: 14px;
  margin-bottom: 14px;
}
.navbar-text {
  margin-top: 15px;
  margin-bottom: 15px;
}
@media (min-width: 768px) {
  .navbar-text {
    float: left;
    margin-right: 15px;
    margin-left: 15px;
  }
}
@media (min-width: 768px) {
  .navbar-left {
    float: left !important;
  }
  .navbar-right {
    float: right !important;
    margin-right: -15px;
  }
  .navbar-right ~ .navbar-right {
    margin-right: 0;
  }
}
.navbar-default {
  background-color: #f8f8f8;
  border-color: #e7e7e7;
}
.navbar-default .navbar-brand {
  color: #777;
}
.navbar-default .navbar-brand:hover,
.navbar-default .navbar-brand:focus {
  color: #5e5e5e;
  background-color: transparent;
}
.navbar-default .navbar-text {
  color: #777;
}
.navbar-default .navbar-nav > li > a {
  color: #777;
}
.navbar-default .navbar-nav > li > a:hover,
.navbar-default .navbar-nav > li > a:focus {
  color: #333;
  background-color: transparent;
}
.navbar-default .navbar-nav > .active > a,
.navbar-default .navbar-nav > .active > a:hover,
.navbar-default .navbar-nav > .active > a:focus {
  color: #555;
  background-color: #e7e7e7;
}
.navbar-default .navbar-nav > .disabled > a,
.navbar-default .navbar-nav > .disabled > a:hover,
.navbar-default .navbar-nav > .disabled > a:focus {
  color: #ccc;
  background-color: transparent;
}
.navbar-default .navbar-toggle {
  border-color: #ddd;
}
.navbar-default .navbar-toggle:hover,
.navbar-default .navbar-toggle:focus {
  background-color: #ddd;
}
.navbar-default .navbar-toggle .icon-bar {
  background-color: #888;
}
.navbar-default .navbar-collapse,
.navbar-default .navbar-form {
  border-color: #e7e7e7;
}
.navbar-default .navbar-nav > .open > a,
.navbar-default .navbar-nav > .open > a:hover,
.navbar-default .navbar-nav > .open > a:focus {
  color: #555;
  background-color: #e7e7e7;
}
@media (max-width: 767px) {
  .navbar-default .navbar-nav .open .dropdown-menu > li > a {
    color: #777;
  }
  .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover,
  .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {
    color: #333;
    background-color: transparent;
  }
  .navbar-default .navbar-nav .open .dropdown-menu > .active > a,
  .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover,
  .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {
    color: #555;
    background-color: #e7e7e7;
  }
  .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a,
  .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover,
  .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus {
    color: #ccc;
    background-color: transparent;
  }
}
.navbar-default .navbar-link {
  color: #777;
}
.navbar-default .navbar-link:hover {
  color: #333;
}
.navbar-default .btn-link {
  color: #777;
}
.navbar-default .btn-link:hover,
.navbar-default .btn-link:focus {
  color: #333;
}
.navbar-default .btn-link[disabled]:hover,
fieldset[disabled] .navbar-default .btn-link:hover,
.navbar-default .btn-link[disabled]:focus,
fieldset[disabled] .navbar-default .btn-link:focus {
  color: #ccc;
}
.navbar-inverse {
  background-color: #222;
  border-color: #080808;
}
.navbar-inverse .navbar-brand {
  color: #9d9d9d;
}
.navbar-inverse .navbar-brand:hover,
.navbar-inverse .navbar-brand:focus {
  color: #fff;
  background-color: transparent;
}
.navbar-inverse .navbar-text {
  color: #9d9d9d;
}
.navbar-inverse .navbar-nav > li > a {
  color: #9d9d9d;
}
.navbar-inverse .navbar-nav > li > a:hover,
.navbar-inverse .navbar-nav > li > a:focus {
  color: #fff;
  background-color: transparent;
}
.navbar-inverse .navbar-nav > .active > a,
.navbar-inverse .navbar-nav > .active > a:hover,
.navbar-inverse .navbar-nav > .active > a:focus {
  color: #fff;
  background-color: #080808;
}
.navbar-inverse .navbar-nav > .disabled > a,
.navbar-inverse .navbar-nav > .disabled > a:hover,
.navbar-inverse .navbar-nav > .disabled > a:focus {
  color: #444;
  background-color: transparent;
}
.navbar-inverse .navbar-toggle {
  border-color: #333;
}
.navbar-inverse .navbar-toggle:hover,
.navbar-inverse .navbar-toggle:focus {
  background-color: #333;
}
.navbar-inverse .navbar-toggle .icon-bar {
  background-color: #fff;
}
.navbar-inverse .navbar-collapse,
.navbar-inverse .navbar-form {
  border-color: #101010;
}
.navbar-inverse .navbar-nav > .open > a,
.navbar-inverse .navbar-nav > .open > a:hover,
.navbar-inverse .navbar-nav > .open > a:focus {
  color: #fff;
  background-color: #080808;
}
@media (max-width: 767px) {
  .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header {
    border-color: #080808;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu .divider {
    background-color: #080808;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu > li > a {
    color: #9d9d9d;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover,
  .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus {
    color: #fff;
    background-color: transparent;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a,
  .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover,
  .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus {
    color: #fff;
    background-color: #080808;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a,
  .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover,
  .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus {
    color: #444;
    background-color: transparent;
  }
}
.navbar-inverse .navbar-link {
  color: #9d9d9d;
}
.navbar-inverse .navbar-link:hover {
  color: #fff;
}
.navbar-inverse .btn-link {
  color: #9d9d9d;
}
.navbar-inverse .btn-link:hover,
.navbar-inverse .btn-link:focus {
  color: #fff;
}
.navbar-inverse .btn-link[disabled]:hover,
fieldset[disabled] .navbar-inverse .btn-link:hover,
.navbar-inverse .btn-link[disabled]:focus,
fieldset[disabled] .navbar-inverse .btn-link:focus {
  color: #444;
}
.breadcrumb {
  padding: 8px 15px;
  margin-bottom: 20px;
  list-style: none;
  background-color: #f5f5f5;
  border-radius: 4px;
}
.breadcrumb > li {
  display: inline-block;
}
.breadcrumb > li + li:before {
  padding: 0 5px;
  color: #ccc;
  content: "/\00a0";
}
.breadcrumb > .active {
  color: #777;
}
.pagination {
  display: inline-block;
  padding-left: 0;
  margin: 20px 0;
  border-radius: 4px;
}
.pagination > li {
  display: inline;
}
.pagination > li > a,
.pagination > li > span {
  position: relative;
  float: left;
  padding: 6px 12px;
  margin-left: -1px;
  line-height: 1.42857143;
  color: #337ab7;
  text-decoration: none;
  background-color: #fff;
  border: 1px solid #ddd;
}
.pagination > li:first-child > a,
.pagination > li:first-child > span {
  margin-left: 0;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
}
.pagination > li:last-child > a,
.pagination > li:last-child > span {
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
}
.pagination > li > a:hover,
.pagination > li > span:hover,
.pagination > li > a:focus,
.pagination > li > span:focus {
  z-index: 2;
  color: #23527c;
  background-color: #eee;
  border-color: #ddd;
}
.pagination > .active > a,
.pagination > .active > span,
.pagination > .active > a:hover,
.pagination > .active > span:hover,
.pagination > .active > a:focus,
.pagination > .active > span:focus {
  z-index: 3;
  color: #fff;
  cursor: default;
  background-color: #337ab7;
  border-color: #337ab7;
}
.pagination > .disabled > span,
.pagination > .disabled > span:hover,
.pagination > .disabled > span:focus,
.pagination > .disabled > a,
.pagination > .disabled > a:hover,
.pagination > .disabled > a:focus {
  color: #777;
  cursor: not-allowed;
  background-color: #fff;
  border-color: #ddd;
}
.pagination-lg > li > a,
.pagination-lg > li > span {
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.3333333;
}
.pagination-lg > li:first-child > a,
.pagination-lg > li:first-child > span {
  border-top-left-radius: 6px;
  border-bottom-left-radius: 6px;
}
.pagination-lg > li:last-child > a,
.pagination-lg > li:last-child > span {
  border-top-right-radius: 6px;
  border-bottom-right-radius: 6px;
}
.pagination-sm > li > a,
.pagination-sm > li > span {
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
}
.pagination-sm > li:first-child > a,
.pagination-sm > li:first-child > span {
  border-top-left-radius: 3px;
  border-bottom-left-radius: 3px;
}
.pagination-sm > li:last-child > a,
.pagination-sm > li:last-child > span {
  border-top-right-radius: 3px;
  border-bottom-right-radius: 3px;
}
.pager {
  padding-left: 0;
  margin: 20px 0;
  text-align: center;
  list-style: none;
}
.pager li {
  display: inline;
}
.pager li > a,
.pager li > span {
  display: inline-block;
  padding: 5px 14px;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 15px;
}
.pager li > a:hover,
.pager li > a:focus {
  text-decoration: none;
  background-color: #eee;
}
.pager .next > a,
.pager .next > span {
  float: right;
}
.pager .previous > a,
.pager .previous > span {
  float: left;
}
.pager .disabled > a,
.pager .disabled > a:hover,
.pager .disabled > a:focus,
.pager .disabled > span {
  color: #777;
  cursor: not-allowed;
  background-color: #fff;
}
.label {
  display: inline;
  padding: .2em .6em .3em;
  font-size: 75%;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: .25em;
}
a.label:hover,
a.label:focus {
  color: #fff;
  text-decoration: none;
  cursor: pointer;
}
.label:empty {
  display: none;
}
.btn .label {
  position: relative;
  top: -1px;
}
.label-default {
  background-color: #777;
}
.label-default[href]:hover,
.label-default[href]:focus {
  background-color: #5e5e5e;
}
.label-primary {
  background-color: #337ab7;
}
.label-primary[href]:hover,
.label-primary[href]:focus {
  background-color: #286090;
}
.label-success {
  background-color: #5cb85c;
}
.label-success[href]:hover,
.label-success[href]:focus {
  background-color: #449d44;
}
.label-info {
  background-color: #5bc0de;
}
.label-info[href]:hover,
.label-info[href]:focus {
  background-color: #31b0d5;
}
.label-warning {
  background-color: #f0ad4e;
}
.label-warning[href]:hover,
.label-warning[href]:focus {
  background-color: #ec971f;
}
.label-danger {
  background-color: #d9534f;
}
.label-danger[href]:hover,
.label-danger[href]:focus {
  background-color: #c9302c;
}
.badge {
  display: inline-block;
  min-width: 10px;
  padding: 3px 7px;
  font-size: 12px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  background-color: #777;
  border-radius: 10px;
}
.badge:empty {
  display: none;
}
.btn .badge {
  position: relative;
  top: -1px;
}
.btn-xs .badge,
.btn-group-xs > .btn .badge {
  top: 0;
  padding: 1px 5px;
}
a.badge:hover,
a.badge:focus {
  color: #fff;
  text-decoration: none;
  cursor: pointer;
}
.list-group-item.active > .badge,
.nav-pills > .active > a > .badge {
  color: #337ab7;
  background-color: #fff;
}
.list-group-item > .badge {
  float: right;
}
.list-group-item > .badge + .badge {
  margin-right: 5px;
}
.nav-pills > li > a > .badge {
  margin-left: 3px;
}
.jumbotron {
  padding-top: 30px;
  padding-bottom: 30px;
  margin-bottom: 30px;
  color: inherit;
  background-color: #eee;
}
.jumbotron h1,
.jumbotron .h1 {
  color: inherit;
}
.jumbotron p {
  margin-bottom: 15px;
  font-size: 21px;
  font-weight: 200;
}
.jumbotron > hr {
  border-top-color: #d5d5d5;
}
.container .jumbotron,
.container-fluid .jumbotron {
  padding-right: 15px;
  padding-left: 15px;
  border-radius: 6px;
}
.jumbotron .container {
  max-width: 100%;
}
@media screen and (min-width: 768px) {
  .jumbotron {
    padding-top: 48px;
    padding-bottom: 48px;
  }
  .container .jumbotron,
  .container-fluid .jumbotron {
    padding-right: 60px;
    padding-left: 60px;
  }
  .jumbotron h1,
  .jumbotron .h1 {
    font-size: 63px;
  }
}
.thumbnail {
  display: block;
  padding: 4px;
  margin-bottom: 20px;
  line-height: 1.42857143;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 4px;
  -webkit-transition: border .2s ease-in-out;
       -o-transition: border .2s ease-in-out;
          transition: border .2s ease-in-out;
}
.thumbnail > img,
.thumbnail a > img {
  margin-right: auto;
  margin-left: auto;
}
a.thumbnail:hover,
a.thumbnail:focus,
a.thumbnail.active {
  border-color: #337ab7;
}
.thumbnail .caption {
  padding: 9px;
  color: #333;
}
.alert {
  padding: 15px;
  margin-bottom: 20px;
  border: 1px solid transparent;
  border-radius: 4px;
}
.alert h4 {
  margin-top: 0;
  color: inherit;
}
.alert .alert-link {
  font-weight: bold;
}
.alert > p,
.alert > ul {
  margin-bottom: 0;
}
.alert > p + p {
  margin-top: 5px;
}
.alert-dismissable,
.alert-dismissible {
  padding-right: 35px;
}
.alert-dismissable .close,
.alert-dismissible .close {
  position: relative;
  top: -2px;
  right: -21px;
  color: inherit;
}
.alert-success {
  color: #3c763d;
  background-color: #dff0d8;
  border-color: #d6e9c6;
}
.alert-success hr {
  border-top-color: #c9e2b3;
}
.alert-success .alert-link {
  color: #2b542c;
}
.alert-info {
  color: #31708f;
  background-color: #d9edf7;
  border-color: #bce8f1;
}
.alert-info hr {
  border-top-color: #a6e1ec;
}
.alert-info .alert-link {
  color: #245269;
}
.alert-warning {
  color: #8a6d3b;
  background-color: #fcf8e3;
  border-color: #faebcc;
}
.alert-warning hr {
  border-top-color: #f7e1b5;
}
.alert-warning .alert-link {
  color: #66512c;
}
.alert-danger {
  color: #a94442;
  background-color: #f2dede;
  border-color: #ebccd1;
}
.alert-danger hr {
  border-top-color: #e4b9c0;
}
.alert-danger .alert-link {
  color: #843534;
}
@-webkit-keyframes progress-bar-stripes {
  from {
    background-position: 40px 0;
  }
  to {
    background-position: 0 0;
  }
}
@-o-keyframes progress-bar-stripes {
  from {
    background-position: 40px 0;
  }
  to {
    background-position: 0 0;
  }
}
@keyframes progress-bar-stripes {
  from {
    background-position: 40px 0;
  }
  to {
    background-position: 0 0;
  }
}
.progress {
  height: 20px;
  margin-bottom: 20px;
  overflow: hidden;
  background-color: #f5f5f5;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1);
          box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1);
}
.progress-bar {
  float: left;
  width: 0;
  height: 100%;
  font-size: 12px;
  line-height: 20px;
  color: #fff;
  text-align: center;
  background-color: #337ab7;
  -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .15);
          box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .15);
  -webkit-transition: width .6s ease;
       -o-transition: width .6s ease;
          transition: width .6s ease;
}
.progress-striped .progress-bar,
.progress-bar-striped {
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
  background-image:      -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
  background-image:         linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
  -webkit-background-size: 40px 40px;
          background-size: 40px 40px;
}
.progress.active .progress-bar,
.progress-bar.active {
  -webkit-animation: progress-bar-stripes 2s linear infinite;
       -o-animation: progress-bar-stripes 2s linear infinite;
          animation: progress-bar-stripes 2s linear infinite;
}
.progress-bar-success {
  background-color: #5cb85c;
}
.progress-striped .progress-bar-success {
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
  background-image:      -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
  background-image:         linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
}
.progress-bar-info {
  background-color: #5bc0de;
}
.progress-striped .progress-bar-info {
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
  background-image:      -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
  background-image:         linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
}
.progress-bar-warning {
  background-color: #f0ad4e;
}
.progress-striped .progress-bar-warning {
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
  background-image:      -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
  background-image:         linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
}
.progress-bar-danger {
  background-color: #d9534f;
}
.progress-striped .progress-bar-danger {
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
  background-image:      -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
  background-image:         linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
}
.media {
  margin-top: 15px;
}
.media:first-child {
  margin-top: 0;
}
.media,
.media-body {
  overflow: hidden;
  zoom: 1;
}
.media-body {
  width: 10000px;
}
.media-object {
  display: block;
}
.media-object.img-thumbnail {
  max-width: none;
}
.media-right,
.media > .pull-right {
  padding-left: 10px;
}
.media-left,
.media > .pull-left {
  padding-right: 10px;
}
.media-left,
.media-right,
.media-body {
  display: table-cell;
  vertical-align: top;
}
.media-middle {
  vertical-align: middle;
}
.media-bottom {
  vertical-align: bottom;
}
.media-heading {
  margin-top: 0;
  margin-bottom: 5px;
}
.media-list {
  padding-left: 0;
  list-style: none;
}
.list-group {
  padding-left: 0;
  margin-bottom: 20px;
}
.list-group-item {
  position: relative;
  display: block;
  padding: 10px 15px;
  margin-bottom: -1px;
  background-color: #fff;
  border: 1px solid #ddd;
}
.list-group-item:first-child {
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
}
.list-group-item:last-child {
  margin-bottom: 0;
  border-bottom-right-radius: 4px;
  border-bottom-left-radius: 4px;
}
a.list-group-item,
button.list-group-item {
  color: #555;
}
a.list-group-item .list-group-item-heading,
button.list-group-item .list-group-item-heading {
  color: #333;
}
a.list-group-item:hover,
button.list-group-item:hover,
a.list-group-item:focus,
button.list-group-item:focus {
  color: #555;
  text-decoration: none;
  background-color: #f5f5f5;
}
button.list-group-item {
  width: 100%;
  text-align: left;
}
.list-group-item.disabled,
.list-group-item.disabled:hover,
.list-group-item.disabled:focus {
  color: #777;
  cursor: not-allowed;
  background-color: #eee;
}
.list-group-item.disabled .list-group-item-heading,
.list-group-item.disabled:hover .list-group-item-heading,
.list-group-item.disabled:focus .list-group-item-heading {
  color: inherit;
}
.list-group-item.disabled .list-group-item-text,
.list-group-item.disabled:hover .list-group-item-text,
.list-group-item.disabled:focus .list-group-item-text {
  color: #777;
}
.list-group-item.active,
.list-group-item.active:hover,
.list-group-item.active:focus {
  z-index: 2;
  color: #fff;
  background-color: #337ab7;
  border-color: #337ab7;
}
.list-group-item.active .list-group-item-heading,
.list-group-item.active:hover .list-group-item-heading,
.list-group-item.active:focus .list-group-item-heading,
.list-group-item.active .list-group-item-heading > small,
.list-group-item.active:hover .list-group-item-heading > small,
.list-group-item.active:focus .list-group-item-heading > small,
.list-group-item.active .list-group-item-heading > .small,
.list-group-item.active:hover .list-group-item-heading > .small,
.list-group-item.active:focus .list-group-item-heading > .small {
  color: inherit;
}
.list-group-item.active .list-group-item-text,
.list-group-item.active:hover .list-group-item-text,
.list-group-item.active:focus .list-group-item-text {
  color: #c7ddef;
}
.list-group-item-success {
  color: #3c763d;
  background-color: #dff0d8;
}
a.list-group-item-success,
button.list-group-item-success {
  color: #3c763d;
}
a.list-group-item-success .list-group-item-heading,
button.list-group-item-success .list-group-item-heading {
  color: inherit;
}
a.list-group-item-success:hover,
button.list-group-item-success:hover,
a.list-group-item-success:focus,
button.list-group-item-success:focus {
  color: #3c763d;
  background-color: #d0e9c6;
}
a.list-group-item-success.active,
button.list-group-item-success.active,
a.list-group-item-success.active:hover,
button.list-group-item-success.active:hover,
a.list-group-item-success.active:focus,
button.list-group-item-success.active:focus {
  color: #fff;
  background-color: #3c763d;
  border-color: #3c763d;
}
.list-group-item-info {
  color: #31708f;
  background-color: #d9edf7;
}
a.list-group-item-info,
button.list-group-item-info {
  color: #31708f;
}
a.list-group-item-info .list-group-item-heading,
button.list-group-item-info .list-group-item-heading {
  color: inherit;
}
a.list-group-item-info:hover,
button.list-group-item-info:hover,
a.list-group-item-info:focus,
button.list-group-item-info:focus {
  color: #31708f;
  background-color: #c4e3f3;
}
a.list-group-item-info.active,
button.list-group-item-info.active,
a.list-group-item-info.active:hover,
button.list-group-item-info.active:hover,
a.list-group-item-info.active:focus,
button.list-group-item-info.active:focus {
  color: #fff;
  background-color: #31708f;
  border-color: #31708f;
}
.list-group-item-warning {
  color: #8a6d3b;
  background-color: #fcf8e3;
}
a.list-group-item-warning,
button.list-group-item-warning {
  color: #8a6d3b;
}
a.list-group-item-warning .list-group-item-heading,
button.list-group-item-warning .list-group-item-heading {
  color: inherit;
}
a.list-group-item-warning:hover,
button.list-group-item-warning:hover,
a.list-group-item-warning:focus,
button.list-group-item-warning:focus {
  color: #8a6d3b;
  background-color: #faf2cc;
}
a.list-group-item-warning.active,
button.list-group-item-warning.active,
a.list-group-item-warning.active:hover,
button.list-group-item-warning.active:hover,
a.list-group-item-warning.active:focus,
button.list-group-item-warning.active:focus {
  color: #fff;
  background-color: #8a6d3b;
  border-color: #8a6d3b;
}
.list-group-item-danger {
  color: #a94442;
  background-color: #f2dede;
}
a.list-group-item-danger,
button.list-group-item-danger {
  color: #a94442;
}
a.list-group-item-danger .list-group-item-heading,
button.list-group-item-danger .list-group-item-heading {
  color: inherit;
}
a.list-group-item-danger:hover,
button.list-group-item-danger:hover,
a.list-group-item-danger:focus,
button.list-group-item-danger:focus {
  color: #a94442;
  background-color: #ebcccc;
}
a.list-group-item-danger.active,
button.list-group-item-danger.active,
a.list-group-item-danger.active:hover,
button.list-group-item-danger.active:hover,
a.list-group-item-danger.active:focus,
button.list-group-item-danger.active:focus {
  color: #fff;
  background-color: #a94442;
  border-color: #a94442;
}
.list-group-item-heading {
  margin-top: 0;
  margin-bottom: 5px;
}
.list-group-item-text {
  margin-bottom: 0;
  line-height: 1.3;
}
.panel {
  margin-bottom: 20px;
  background-color: #fff;
  border: 1px solid transparent;
  border-radius: 4px;
  -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .05);
          box-shadow: 0 1px 1px rgba(0, 0, 0, .05);
}
.panel-body {
  padding: 15px;
}
.panel-heading {
  padding: 10px 15px;
  border-bottom: 1px solid transparent;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
}
.panel-heading > .dropdown .dropdown-toggle {
  color: inherit;
}
.panel-title {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 16px;
  color: inherit;
}
.panel-title > a,
.panel-title > small,
.panel-title > .small,
.panel-title > small > a,
.panel-title > .small > a {
  color: inherit;
}
.panel-footer {
  padding: 10px 15px;
  background-color: #f5f5f5;
  border-top: 1px solid #ddd;
  border-bottom-right-radius: 3px;
  border-bottom-left-radius: 3px;
}
.panel > .list-group,
.panel > .panel-collapse > .list-group {
  margin-bottom: 0;
}
.panel > .list-group .list-group-item,
.panel > .panel-collapse > .list-group .list-group-item {
  border-width: 1px 0;
  border-radius: 0;
}
.panel > .list-group:first-child .list-group-item:first-child,
.panel > .panel-collapse > .list-group:first-child .list-group-item:first-child {
  border-top: 0;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
}
.panel > .list-group:last-child .list-group-item:last-child,
.panel > .panel-collapse > .list-group:last-child .list-group-item:last-child {
  border-bottom: 0;
  border-bottom-right-radius: 3px;
  border-bottom-left-radius: 3px;
}
.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.panel-heading + .list-group .list-group-item:first-child {
  border-top-width: 0;
}
.list-group + .panel-footer {
  border-top-width: 0;
}
.panel > .table,
.panel > .table-responsive > .table,
.panel > .panel-collapse > .table {
  margin-bottom: 0;
}
.panel > .table caption,
.panel > .table-responsive > .table caption,
.panel > .panel-collapse > .table caption {
  padding-right: 15px;
  padding-left: 15px;
}
.panel > .table:first-child,
.panel > .table-responsive:first-child > .table:first-child {
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
}
.panel > .table:first-child > thead:first-child > tr:first-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child,
.panel > .table:first-child > tbody:first-child > tr:first-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child {
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
}
.panel > .table:first-child > thead:first-child > tr:first-child td:first-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child,
.panel > .table:first-child > tbody:first-child > tr:first-child td:first-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child,
.panel > .table:first-child > thead:first-child > tr:first-child th:first-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child,
.panel > .table:first-child > tbody:first-child > tr:first-child th:first-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child {
  border-top-left-radius: 3px;
}
.panel > .table:first-child > thead:first-child > tr:first-child td:last-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child,
.panel > .table:first-child > tbody:first-child > tr:first-child td:last-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child,
.panel > .table:first-child > thead:first-child > tr:first-child th:last-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child,
.panel > .table:first-child > tbody:first-child > tr:first-child th:last-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child {
  border-top-right-radius: 3px;
}
.panel > .table:last-child,
.panel > .table-responsive:last-child > .table:last-child {
  border-bottom-right-radius: 3px;
  border-bottom-left-radius: 3px;
}
.panel > .table:last-child > tbody:last-child > tr:last-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child {
  border-bottom-right-radius: 3px;
  border-bottom-left-radius: 3px;
}
.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child {
  border-bottom-left-radius: 3px;
}
.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child {
  border-bottom-right-radius: 3px;
}
.panel > .panel-body + .table,
.panel > .panel-body + .table-responsive,
.panel > .table + .panel-body,
.panel > .table-responsive + .panel-body {
  border-top: 1px solid #ddd;
}
.panel > .table > tbody:first-child > tr:first-child th,
.panel > .table > tbody:first-child > tr:first-child td {
  border-top: 0;
}
.panel > .table-bordered,
.panel > .table-responsive > .table-bordered {
  border: 0;
}
.panel > .table-bordered > thead > tr > th:first-child,
.panel > .table-responsive > .table-bordered > thead > tr > th:first-child,
.panel > .table-bordered > tbody > tr > th:first-child,
.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child,
.panel > .table-bordered > tfoot > tr > th:first-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child,
.panel > .table-bordered > thead > tr > td:first-child,
.panel > .table-responsive > .table-bordered > thead > tr > td:first-child,
.panel > .table-bordered > tbody > tr > td:first-child,
.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child,
.panel > .table-bordered > tfoot > tr > td:first-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child {
  border-left: 0;
}
.panel > .table-bordered > thead > tr > th:last-child,
.panel > .table-responsive > .table-bordered > thead > tr > th:last-child,
.panel > .table-bordered > tbody > tr > th:last-child,
.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child,
.panel > .table-bordered > tfoot > tr > th:last-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child,
.panel > .table-bordered > thead > tr > td:last-child,
.panel > .table-responsive > .table-bordered > thead > tr > td:last-child,
.panel > .table-bordered > tbody > tr > td:last-child,
.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child,
.panel > .table-bordered > tfoot > tr > td:last-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child {
  border-right: 0;
}
.panel > .table-bordered > thead > tr:first-child > td,
.panel > .table-responsive > .table-bordered > thead > tr:first-child > td,
.panel > .table-bordered > tbody > tr:first-child > td,
.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td,
.panel > .table-bordered > thead > tr:first-child > th,
.panel > .table-responsive > .table-bordered > thead > tr:first-child > th,
.panel > .table-bordered > tbody > tr:first-child > th,
.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th {
  border-bottom: 0;
}
.panel > .table-bordered > tbody > tr:last-child > td,
.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td,
.panel > .table-bordered > tfoot > tr:last-child > td,
.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td,
.panel > .table-bordered > tbody > tr:last-child > th,
.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th,
.panel > .table-bordered > tfoot > tr:last-child > th,
.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th {
  border-bottom: 0;
}
.panel > .table-responsive {
  margin-bottom: 0;
  border: 0;
}
.panel-group {
  margin-bottom: 20px;
}
.panel-group .panel {
  margin-bottom: 0;
  border-radius: 4px;
}
.panel-group .panel + .panel {
  margin-top: 5px;
}
.panel-group .panel-heading {
  border-bottom: 0;
}
.panel-group .panel-heading + .panel-collapse > .panel-body,
.panel-group .panel-heading + .panel-collapse > .list-group {
  border-top: 1px solid #ddd;
}
.panel-group .panel-footer {
  border-top: 0;
}
.panel-group .panel-footer + .panel-collapse .panel-body {
  border-bottom: 1px solid #ddd;
}
.panel-default {
  border-color: #ddd;
}
.panel-default > .panel-heading {
  color: #333;
  background-color: #f5f5f5;
  border-color: #ddd;
}
.panel-default > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #ddd;
}
.panel-default > .panel-heading .badge {
  color: #f5f5f5;
  background-color: #333;
}
.panel-default > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #ddd;
}
.panel-primary {
  border-color: #337ab7;
}
.panel-primary > .panel-heading {
  color: #fff;
  background-color: #337ab7;
  border-color: #337ab7;
}
.panel-primary > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #337ab7;
}
.panel-primary > .panel-heading .badge {
  color: #337ab7;
  background-color: #fff;
}
.panel-primary > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #337ab7;
}
.panel-success {
  border-color: #d6e9c6;
}
.panel-success > .panel-heading {
  color: #3c763d;
  background-color: #dff0d8;
  border-color: #d6e9c6;
}
.panel-success > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #d6e9c6;
}
.panel-success > .panel-heading .badge {
  color: #dff0d8;
  background-color: #3c763d;
}
.panel-success > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #d6e9c6;
}
.panel-info {
  border-color: #bce8f1;
}
.panel-info > .panel-heading {
  color: #31708f;
  background-color: #d9edf7;
  border-color: #bce8f1;
}
.panel-info > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #bce8f1;
}
.panel-info > .panel-heading .badge {
  color: #d9edf7;
  background-color: #31708f;
}
.panel-info > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #bce8f1;
}
.panel-warning {
  border-color: #faebcc;
}
.panel-warning > .panel-heading {
  color: #8a6d3b;
  background-color: #fcf8e3;
  border-color: #faebcc;
}
.panel-warning > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #faebcc;
}
.panel-warning > .panel-heading .badge {
  color: #fcf8e3;
  background-color: #8a6d3b;
}
.panel-warning > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #faebcc;
}
.panel-danger {
  border-color: #ebccd1;
}
.panel-danger > .panel-heading {
  color: #a94442;
  background-color: #f2dede;
  border-color: #ebccd1;
}
.panel-danger > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #ebccd1;
}
.panel-danger > .panel-heading .badge {
  color: #f2dede;
  background-color: #a94442;
}
.panel-danger > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #ebccd1;
}
.embed-responsive {
  position: relative;
  display: block;
  height: 0;
  padding: 0;
  overflow: hidden;
}
.embed-responsive .embed-responsive-item,
.embed-responsive iframe,
.embed-responsive embed,
.embed-responsive object,
.embed-responsive video {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
.embed-responsive-16by9 {
  padding-bottom: 56.25%;
}
.embed-responsive-4by3 {
  padding-bottom: 75%;
}
.well {
  min-height: 20px;
  padding: 19px;
  margin-bottom: 20px;
  background-color: #f5f5f5;
  border: 1px solid #e3e3e3;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05);
          box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05);
}
.well blockquote {
  border-color: #ddd;
  border-color: rgba(0, 0, 0, .15);
}
.well-lg {
  padding: 24px;
  border-radius: 6px;
}
.well-sm {
  padding: 9px;
  border-radius: 3px;
}
.close {
  float: right;
  font-size: 21px;
  font-weight: bold;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  filter: alpha(opacity=20);
  opacity: .2;
}
.close:hover,
.close:focus {
  color: #000;
  text-decoration: none;
  cursor: pointer;
  filter: alpha(opacity=50);
  opacity: .5;
}
button.close {
  -webkit-appearance: none;
  padding: 0;
  cursor: pointer;
  background: transparent;
  border: 0;
}
.modal-open {
  overflow: hidden;
}
.modal {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1050;
  display: none;
  overflow: hidden;
  -webkit-overflow-scrolling: touch;
  outline: 0;
}
.modal.fade .modal-dialog {
  -webkit-transition: -webkit-transform .3s ease-out;
       -o-transition:      -o-transform .3s ease-out;
          transition:         transform .3s ease-out;
  -webkit-transform: translate(0, -25%);
      -ms-transform: translate(0, -25%);
       -o-transform: translate(0, -25%);
          transform: translate(0, -25%);
}
.modal.in .modal-dialog {
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
       -o-transform: translate(0, 0);
          transform: translate(0, 0);
}
.modal-open .modal {
  overflow-x: hidden;
  overflow-y: auto;
}
.modal-dialog {
  position: relative;
  width: auto;
  margin: 10px;
}
.modal-content {
  position: relative;
  background-color: #fff;
  -webkit-background-clip: padding-box;
          background-clip: padding-box;
  border: 1px solid #999;
  border: 1px solid rgba(0, 0, 0, .2);
  border-radius: 6px;
  outline: 0;
  -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, .5);
          box-shadow: 0 3px 9px rgba(0, 0, 0, .5);
}
.modal-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1040;
  background-color: #000;
}
.modal-backdrop.fade {
  filter: alpha(opacity=0);
  opacity: 0;
}
.modal-backdrop.in {
  filter: alpha(opacity=50);
  opacity: .5;
}
.modal-header {
  padding: 15px;
  border-bottom: 1px solid #e5e5e5;
}
.modal-header .close {
  margin-top: -2px;
}
.modal-title {
  margin: 0;
  line-height: 1.42857143;
}
.modal-body {
  position: relative;
  padding: 15px;
}
.modal-footer {
  padding: 15px;
  text-align: right;
  border-top: 1px solid #e5e5e5;
}
.modal-footer .btn + .btn {
  margin-bottom: 0;
  margin-left: 5px;
}
.modal-footer .btn-group .btn + .btn {
  margin-left: -1px;
}
.modal-footer .btn-block + .btn-block {
  margin-left: 0;
}
.modal-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll;
}
@media (min-width: 768px) {
  .modal-dialog {
    width: 600px;
    margin: 30px auto;
  }
  .modal-content {
    -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, .5);
            box-shadow: 0 5px 15px rgba(0, 0, 0, .5);
  }
  .modal-sm {
    width: 300px;
  }
}
@media (min-width: 992px) {
  .modal-lg {
    width: 900px;
  }
}
.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 12px;
  font-style: normal;
  font-weight: normal;
  line-height: 1.42857143;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  word-wrap: normal;
  white-space: normal;
  filter: alpha(opacity=0);
  opacity: 0;

  line-break: auto;
}
.tooltip.in {
  filter: alpha(opacity=90);
  opacity: .9;
}
.tooltip.top {
  padding: 5px 0;
  margin-top: -3px;
}
.tooltip.right {
  padding: 0 5px;
  margin-left: 3px;
}
.tooltip.bottom {
  padding: 5px 0;
  margin-top: 3px;
}
.tooltip.left {
  padding: 0 5px;
  margin-left: -3px;
}
.tooltip-inner {
  max-width: 200px;
  padding: 3px 8px;
  color: #fff;
  text-align: center;
  background-color: #000;
  border-radius: 4px;
}
.tooltip-arrow {
  position: absolute;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
}
.tooltip.top .tooltip-arrow {
  bottom: 0;
  left: 50%;
  margin-left: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000;
}
.tooltip.top-left .tooltip-arrow {
  right: 5px;
  bottom: 0;
  margin-bottom: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000;
}
.tooltip.top-right .tooltip-arrow {
  bottom: 0;
  left: 5px;
  margin-bottom: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000;
}
.tooltip.right .tooltip-arrow {
  top: 50%;
  left: 0;
  margin-top: -5px;
  border-width: 5px 5px 5px 0;
  border-right-color: #000;
}
.tooltip.left .tooltip-arrow {
  top: 50%;
  right: 0;
  margin-top: -5px;
  border-width: 5px 0 5px 5px;
  border-left-color: #000;
}
.tooltip.bottom .tooltip-arrow {
  top: 0;
  left: 50%;
  margin-left: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000;
}
.tooltip.bottom-left .tooltip-arrow {
  top: 0;
  right: 5px;
  margin-top: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000;
}
.tooltip.bottom-right .tooltip-arrow {
  top: 0;
  left: 5px;
  margin-top: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000;
}
.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: none;
  max-width: 276px;
  padding: 1px;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 14px;
  font-style: normal;
  font-weight: normal;
  line-height: 1.42857143;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  word-wrap: normal;
  white-space: normal;
  background-color: #fff;
  -webkit-background-clip: padding-box;
          background-clip: padding-box;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, .2);
  border-radius: 6px;
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, .2);
          box-shadow: 0 5px 10px rgba(0, 0, 0, .2);

  line-break: auto;
}
.popover.top {
  margin-top: -10px;
}
.popover.right {
  margin-left: 10px;
}
.popover.bottom {
  margin-top: 10px;
}
.popover.left {
  margin-left: -10px;
}
.popover-title {
  padding: 8px 14px;
  margin: 0;
  font-size: 14px;
  background-color: #f7f7f7;
  border-bottom: 1px solid #ebebeb;
  border-radius: 5px 5px 0 0;
}
.popover-content {
  padding: 9px 14px;
}
.popover > .arrow,
.popover > .arrow:after {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
}
.popover > .arrow {
  border-width: 11px;
}
.popover > .arrow:after {
  content: "";
  border-width: 10px;
}
.popover.top > .arrow {
  bottom: -11px;
  left: 50%;
  margin-left: -11px;
  border-top-color: #999;
  border-top-color: rgba(0, 0, 0, .25);
  border-bottom-width: 0;
}
.popover.top > .arrow:after {
  bottom: 1px;
  margin-left: -10px;
  content: " ";
  border-top-color: #fff;
  border-bottom-width: 0;
}
.popover.right > .arrow {
  top: 50%;
  left: -11px;
  margin-top: -11px;
  border-right-color: #999;
  border-right-color: rgba(0, 0, 0, .25);
  border-left-width: 0;
}
.popover.right > .arrow:after {
  bottom: -10px;
  left: 1px;
  content: " ";
  border-right-color: #fff;
  border-left-width: 0;
}
.popover.bottom > .arrow {
  top: -11px;
  left: 50%;
  margin-left: -11px;
  border-top-width: 0;
  border-bottom-color: #999;
  border-bottom-color: rgba(0, 0, 0, .25);
}
.popover.bottom > .arrow:after {
  top: 1px;
  margin-left: -10px;
  content: " ";
  border-top-width: 0;
  border-bottom-color: #fff;
}
.popover.left > .arrow {
  top: 50%;
  right: -11px;
  margin-top: -11px;
  border-right-width: 0;
  border-left-color: #999;
  border-left-color: rgba(0, 0, 0, .25);
}
.popover.left > .arrow:after {
  right: 1px;
  bottom: -10px;
  content: " ";
  border-right-width: 0;
  border-left-color: #fff;
}
.carousel {
  position: relative;
}
.carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.carousel-inner > .item {
  position: relative;
  display: none;
  -webkit-transition: .6s ease-in-out left;
       -o-transition: .6s ease-in-out left;
          transition: .6s ease-in-out left;
}
.carousel-inner > .item > img,
.carousel-inner > .item > a > img {
  line-height: 1;
}
@media all and (transform-3d), (-webkit-transform-3d) {
  .carousel-inner > .item {
    -webkit-transition: -webkit-transform .6s ease-in-out;
         -o-transition:      -o-transform .6s ease-in-out;
            transition:         transform .6s ease-in-out;

    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    -webkit-perspective: 1000px;
            perspective: 1000px;
  }
  .carousel-inner > .item.next,
  .carousel-inner > .item.active.right {
    left: 0;
    -webkit-transform: translate3d(100%, 0, 0);
            transform: translate3d(100%, 0, 0);
  }
  .carousel-inner > .item.prev,
  .carousel-inner > .item.active.left {
    left: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0);
  }
  .carousel-inner > .item.next.left,
  .carousel-inner > .item.prev.right,
  .carousel-inner > .item.active {
    left: 0;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
}
.carousel-inner > .active,
.carousel-inner > .next,
.carousel-inner > .prev {
  display: block;
}
.carousel-inner > .active {
  left: 0;
}
.carousel-inner > .next,
.carousel-inner > .prev {
  position: absolute;
  top: 0;
  width: 100%;
}
.carousel-inner > .next {
  left: 100%;
}
.carousel-inner > .prev {
  left: -100%;
}
.carousel-inner > .next.left,
.carousel-inner > .prev.right {
  left: 0;
}
.carousel-inner > .active.left {
  left: -100%;
}
.carousel-inner > .active.right {
  left: 100%;
}
.carousel-control {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 15%;
  font-size: 20px;
  color: #fff;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, .6);
  background-color: rgba(0, 0, 0, 0);
  filter: alpha(opacity=50);
  opacity: .5;
}
.carousel-control.left {
  background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%);
  background-image:      -o-linear-gradient(left, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%);
  background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, .5)), to(rgba(0, 0, 0, .0001)));
  background-image:         linear-gradient(to right, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);
  background-repeat: repeat-x;
}
.carousel-control.right {
  right: 0;
  left: auto;
  background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%);
  background-image:      -o-linear-gradient(left, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%);
  background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, .0001)), to(rgba(0, 0, 0, .5)));
  background-image:         linear-gradient(to right, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);
  background-repeat: repeat-x;
}
.carousel-control:hover,
.carousel-control:focus {
  color: #fff;
  text-decoration: none;
  filter: alpha(opacity=90);
  outline: 0;
  opacity: .9;
}
.carousel-control .icon-prev,
.carousel-control .icon-next,
.carousel-control .glyphicon-chevron-left,
.carousel-control .glyphicon-chevron-right {
  position: absolute;
  top: 50%;
  z-index: 5;
  display: inline-block;
  margin-top: -10px;
}
.carousel-control .icon-prev,
.carousel-control .glyphicon-chevron-left {
  left: 50%;
  margin-left: -10px;
}
.carousel-control .icon-next,
.carousel-control .glyphicon-chevron-right {
  right: 50%;
  margin-right: -10px;
}
.carousel-control .icon-prev,
.carousel-control .icon-next {
  width: 20px;
  height: 20px;
  font-family: serif;
  line-height: 1;
}
.carousel-control .icon-prev:before {
  content: '\2039';
}
.carousel-control .icon-next:before {
  content: '\203a';
}
.carousel-indicators {
  position: absolute;
  bottom: 10px;
  left: 50%;
  z-index: 15;
  width: 60%;
  padding-left: 0;
  margin-left: -30%;
  text-align: center;
  list-style: none;
}
.carousel-indicators li {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 1px;
  text-indent: -999px;
  cursor: pointer;
  background-color: #000 \9;
  background-color: rgba(0, 0, 0, 0);
  border: 1px solid #fff;
  border-radius: 10px;
}
.carousel-indicators .active {
  width: 12px;
  height: 12px;
  margin: 0;
  background-color: #fff;
}
.carousel-caption {
  position: absolute;
  right: 15%;
  bottom: 20px;
  left: 15%;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: #fff;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, .6);
}
.carousel-caption .btn {
  text-shadow: none;
}
@media screen and (min-width: 768px) {
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .glyphicon-chevron-right,
  .carousel-control .icon-prev,
  .carousel-control .icon-next {
    width: 30px;
    height: 30px;
    margin-top: -10px;
    font-size: 30px;
  }
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .icon-prev {
    margin-left: -10px;
  }
  .carousel-control .glyphicon-chevron-right,
  .carousel-control .icon-next {
    margin-right: -10px;
  }
  .carousel-caption {
    right: 20%;
    left: 20%;
    padding-bottom: 30px;
  }
  .carousel-indicators {
    bottom: 20px;
  }
}
.clearfix:before,
.clearfix:after,
.dl-horizontal dd:before,
.dl-horizontal dd:after,
.container:before,
.container:after,
.container-fluid:before,
.container-fluid:after,
.row:before,
.row:after,
.form-horizontal .form-group:before,
.form-horizontal .form-group:after,
.btn-toolbar:before,
.btn-toolbar:after,
.btn-group-vertical > .btn-group:before,
.btn-group-vertical > .btn-group:after,
.nav:before,
.nav:after,
.navbar:before,
.navbar:after,
.navbar-header:before,
.navbar-header:after,
.navbar-collapse:before,
.navbar-collapse:after,
.pager:before,
.pager:after,
.panel-body:before,
.panel-body:after,
.modal-header:before,
.modal-header:after,
.modal-footer:before,
.modal-footer:after {
  display: table;
  content: " ";
}
.clearfix:after,
.dl-horizontal dd:after,
.container:after,
.container-fluid:after,
.row:after,
.form-horizontal .form-group:after,
.btn-toolbar:after,
.btn-group-vertical > .btn-group:after,
.nav:after,
.navbar:after,
.navbar-header:after,
.navbar-collapse:after,
.pager:after,
.panel-body:after,
.modal-header:after,
.modal-footer:after {
  clear: both;
}
.center-block {
  display: block;
  margin-right: auto;
  margin-left: auto;
}
.pull-right {
  float: right !important;
}
.pull-left {
  float: left !important;
}
.hide {
  display: none !important;
}
.show {
  display: block !important;
}
.invisible {
  visibility: hidden;
}
.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}
.hidden {
  display: none !important;
}
.affix {
  position: fixed;
}
@-ms-viewport {
  width: device-width;
}
.visible-xs,
.visible-sm,
.visible-md,
.visible-lg {
  display: none !important;
}
.visible-xs-block,
.visible-xs-inline,
.visible-xs-inline-block,
.visible-sm-block,
.visible-sm-inline,
.visible-sm-inline-block,
.visible-md-block,
.visible-md-inline,
.visible-md-inline-block,
.visible-lg-block,
.visible-lg-inline,
.visible-lg-inline-block {
  display: none !important;
}
@media (max-width: 767px) {
  .visible-xs {
    display: block !important;
  }
  table.visible-xs {
    display: table !important;
  }
  tr.visible-xs {
    display: table-row !important;
  }
  th.visible-xs,
  td.visible-xs {
    display: table-cell !important;
  }
}
@media (max-width: 767px) {
  .visible-xs-block {
    display: block !important;
  }
}
@media (max-width: 767px) {
  .visible-xs-inline {
    display: inline !important;
  }
}
@media (max-width: 767px) {
  .visible-xs-inline-block {
    display: inline-block !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm {
    display: block !important;
  }
  table.visible-sm {
    display: table !important;
  }
  tr.visible-sm {
    display: table-row !important;
  }
  th.visible-sm,
  td.visible-sm {
    display: table-cell !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-block {
    display: block !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline {
    display: inline !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline-block {
    display: inline-block !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md {
    display: block !important;
  }
  table.visible-md {
    display: table !important;
  }
  tr.visible-md {
    display: table-row !important;
  }
  th.visible-md,
  td.visible-md {
    display: table-cell !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-block {
    display: block !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline {
    display: inline !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline-block {
    display: inline-block !important;
  }
}
@media (min-width: 1200px) {
  .visible-lg {
    display: block !important;
  }
  table.visible-lg {
    display: table !important;
  }
  tr.visible-lg {
    display: table-row !important;
  }
  th.visible-lg,
  td.visible-lg {
    display: table-cell !important;
  }
}
@media (min-width: 1200px) {
  .visible-lg-block {
    display: block !important;
  }
}
@media (min-width: 1200px) {
  .visible-lg-inline {
    display: inline !important;
  }
}
@media (min-width: 1200px) {
  .visible-lg-inline-block {
    display: inline-block !important;
  }
}
@media (max-width: 767px) {
  .hidden-xs {
    display: none !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .hidden-sm {
    display: none !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .hidden-md {
    display: none !important;
  }
}
@media (min-width: 1200px) {
  .hidden-lg {
    display: none !important;
  }
}
.visible-print {
  display: none !important;
}
@media print {
  .visible-print {
    display: block !important;
  }
  table.visible-print {
    display: table !important;
  }
  tr.visible-print {
    display: table-row !important;
  }
  th.visible-print,
  td.visible-print {
    display: table-cell !important;
  }
}
.visible-print-block {
  display: none !important;
}
@media print {
  .visible-print-block {
    display: block !important;
  }
}
.visible-print-inline {
  display: none !important;
}
@media print {
  .visible-print-inline {
    display: inline !important;
  }
}
.visible-print-inline-block {
  display: none !important;
}
@media print {
  .visible-print-inline-block {
    display: inline-block !important;
  }
}
@media print {
  .hidden-print {
    display: none !important;
  }
}
/*# sourceMappingURL=bootstrap.css.map */
openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/static/css/native.css0000666000175100017510000000670613227213640031430 0ustar  zuulzuul00000000000000.hll { background-color: #404040 }
.c { color: #999999; font-style: italic } /* Comment */
.err { color: #a61717; background-color: #e3d2d2 } /* Error */
.g { color: #d0d0d0 } /* Generic */
.k { color: #6ab825; font-weight: bold } /* Keyword */
.l { color: #d0d0d0 } /* Literal */
.n { color: #d0d0d0 } /* Name */
.o { color: #d0d0d0 } /* Operator */
.x { color: #d0d0d0 } /* Other */
.p { color: #d0d0d0 } /* Punctuation */
.cm { color: #999999; font-style: italic } /* Comment.Multiline */
.cp { color: #cd2828; font-weight: bold } /* Comment.Preproc */
.c1 { color: #999999; font-style: italic } /* Comment.Single */
.cs { color: #e50808; font-weight: bold; background-color: #520000 } /* Comment.Special */
.gd { color: #d22323 } /* Generic.Deleted */
.ge { color: #d0d0d0; font-style: italic } /* Generic.Emph */
.gr { color: #d22323 } /* Generic.Error */
.gh { color: #ffffff; font-weight: bold } /* Generic.Heading */
.gi { color: #589819 } /* Generic.Inserted */
.go { color: #cccccc } /* Generic.Output */
.gp { color: #aaaaaa } /* Generic.Prompt */
.gs { color: #d0d0d0; font-weight: bold } /* Generic.Strong */
.gu { color: #ffffff; text-decoration: underline } /* Generic.Subheading */
.gt { color: #d22323 } /* Generic.Traceback */
.kc { color: #6ab825; font-weight: bold } /* Keyword.Constant */
.kd { color: #6ab825; font-weight: bold } /* Keyword.Declaration */
.kn { color: #6ab825; font-weight: bold } /* Keyword.Namespace */
.kp { color: #6ab825 } /* Keyword.Pseudo */
.kr { color: #6ab825; font-weight: bold } /* Keyword.Reserved */
.kt { color: #6ab825; font-weight: bold } /* Keyword.Type */
.ld { color: #d0d0d0 } /* Literal.Date */
.m { color: #3677a9 } /* Literal.Number */
.s { color: #ed9d13 } /* Literal.String */
.na { color: #bbbbbb } /* Name.Attribute */
.nb { color: #24909d } /* Name.Builtin */
.nc { color: #447fcf; text-decoration: underline } /* Name.Class */
.no { color: #40ffff } /* Name.Constant */
.nd { color: #ffa500 } /* Name.Decorator */
.ni { color: #d0d0d0 } /* Name.Entity */
.ne { color: #bbbbbb } /* Name.Exception */
.nf { color: #447fcf } /* Name.Function */
.nl { color: #d0d0d0 } /* Name.Label */
.nn { color: #447fcf; text-decoration: underline } /* Name.Namespace */
.nx { color: #d0d0d0 } /* Name.Other */
.py { color: #d0d0d0 } /* Name.Property */
.nt { color: #6ab825; font-weight: bold } /* Name.Tag */
.nv { color: #40ffff } /* Name.Variable */
.ow { color: #6ab825; font-weight: bold } /* Operator.Word */
.w { color: #666666 } /* Text.Whitespace */
.mf { color: #3677a9 } /* Literal.Number.Float */
.mh { color: #3677a9 } /* Literal.Number.Hex */
.mi { color: #3677a9 } /* Literal.Number.Integer */
.mo { color: #3677a9 } /* Literal.Number.Oct */
.sb { color: #ed9d13 } /* Literal.String.Backtick */
.sc { color: #ed9d13 } /* Literal.String.Char */
.sd { color: #ed9d13 } /* Literal.String.Doc */
.s2 { color: #ed9d13 } /* Literal.String.Double */
.se { color: #ed9d13 } /* Literal.String.Escape */
.sh { color: #ed9d13 } /* Literal.String.Heredoc */
.si { color: #ed9d13 } /* Literal.String.Interpol */
.sx { color: #ffa500 } /* Literal.String.Other */
.sr { color: #ed9d13 } /* Literal.String.Regex */
.s1 { color: #ed9d13 } /* Literal.String.Single */
.ss { color: #ed9d13 } /* Literal.String.Symbol */
.bp { color: #24909d } /* Name.Builtin.Pseudo */
.vc { color: #40ffff } /* Name.Variable.Class */
.vg { color: #40ffff } /* Name.Variable.Global */
.vi { color: #40ffff } /* Name.Variable.Instance */
.il { color: #3677a9 } /* Literal.Number.Integer.Long */
openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/static/favicon.ico0000666000175100017510000000052213227213640030747 0ustar  zuulzuul00000000000000PNG


IHDR  DWPLTE22222222222222222222222222222(tRNS"0=XZlmnpqst&WIDATxڵ D}CqNMxw@G@=0&&c0&&b-1 in a)}var x=function(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u="sizzle"+1*new Date,v=a.document,w=0,x=0,y=ha(),z=ha(),A=ha(),B=function(a,b){return a===b&&(l=!0),0},C={}.hasOwnProperty,D=[],E=D.pop,F=D.push,G=D.push,H=D.slice,I=function(a,b){for(var c=0,d=a.length;c+~]|"+K+")"+K+"*"),S=new RegExp("="+K+"*([^\\]'\"]*?)"+K+"*\\]","g"),T=new RegExp(N),U=new RegExp("^"+L+"$"),V={ID:new RegExp("^#("+L+")"),CLASS:new RegExp("^\\.("+L+")"),TAG:new RegExp("^("+L+"|[*])"),ATTR:new RegExp("^"+M),PSEUDO:new RegExp("^"+N),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+K+"*(even|odd|(([+-]|)(\\d*)n|)"+K+"*(?:([+-]|)"+K+"*(\\d+)|))"+K+"*\\)|)","i"),bool:new RegExp("^(?:"+J+")$","i"),needsContext:new RegExp("^"+K+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+K+"*((?:-\\d)?\\d*)"+K+"*\\)|)(?=[^-]|$)","i")},W=/^(?:input|select|textarea|button)$/i,X=/^h\d$/i,Y=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,$=/[+~]/,_=new RegExp("\\\\([\\da-f]{1,6}"+K+"?|("+K+")|.)","ig"),aa=function(a,b,c){var d="0x"+b-65536;return d!==d||c?b:d<0?String.fromCharCode(d+65536):String.fromCharCode(d>>10|55296,1023&d|56320)},ba=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ca=function(a,b){return b?"\0"===a?"\ufffd":a.slice(0,-1)+"\\"+a.charCodeAt(a.length-1).toString(16)+" ":"\\"+a},da=function(){m()},ea=ta(function(a){return a.disabled===!0&&("form"in a||"label"in a)},{dir:"parentNode",next:"legend"});try{G.apply(D=H.call(v.childNodes),v.childNodes),D[v.childNodes.length].nodeType}catch(fa){G={apply:D.length?function(a,b){F.apply(a,H.call(b))}:function(a,b){var c=a.length,d=0;while(a[c++]=b[d++]);a.length=c-1}}}function ga(a,b,d,e){var f,h,j,k,l,o,r,s=b&&b.ownerDocument,w=b?b.nodeType:9;if(d=d||[],"string"!=typeof a||!a||1!==w&&9!==w&&11!==w)return d;if(!e&&((b?b.ownerDocument||b:v)!==n&&m(b),b=b||n,p)){if(11!==w&&(l=Z.exec(a)))if(f=l[1]){if(9===w){if(!(j=b.getElementById(f)))return d;if(j.id===f)return d.push(j),d}else if(s&&(j=s.getElementById(f))&&t(b,j)&&j.id===f)return d.push(j),d}else{if(l[2])return G.apply(d,b.getElementsByTagName(a)),d;if((f=l[3])&&c.getElementsByClassName&&b.getElementsByClassName)return G.apply(d,b.getElementsByClassName(f)),d}if(c.qsa&&!A[a+" "]&&(!q||!q.test(a))){if(1!==w)s=b,r=a;else if("object"!==b.nodeName.toLowerCase()){(k=b.getAttribute("id"))?k=k.replace(ba,ca):b.setAttribute("id",k=u),o=g(a),h=o.length;while(h--)o[h]="#"+k+" "+sa(o[h]);r=o.join(","),s=$.test(a)&&qa(b.parentNode)||b}if(r)try{return G.apply(d,s.querySelectorAll(r)),d}catch(x){}finally{k===u&&b.removeAttribute("id")}}}return i(a.replace(P,"$1"),b,d,e)}function ha(){var a=[];function b(c,e){return a.push(c+" ")>d.cacheLength&&delete b[a.shift()],b[c+" "]=e}return b}function ia(a){return a[u]=!0,a}function ja(a){var b=n.createElement("fieldset");try{return!!a(b)}catch(c){return!1}finally{b.parentNode&&b.parentNode.removeChild(b),b=null}}function ka(a,b){var c=a.split("|"),e=c.length;while(e--)d.attrHandle[c[e]]=b}function la(a,b){var c=b&&a,d=c&&1===a.nodeType&&1===b.nodeType&&a.sourceIndex-b.sourceIndex;if(d)return d;if(c)while(c=c.nextSibling)if(c===b)return-1;return a?1:-1}function ma(a){return function(b){var c=b.nodeName.toLowerCase();return"input"===c&&b.type===a}}function na(a){return function(b){var c=b.nodeName.toLowerCase();return("input"===c||"button"===c)&&b.type===a}}function oa(a){return function(b){return"form"in b?b.parentNode&&b.disabled===!1?"label"in b?"label"in b.parentNode?b.parentNode.disabled===a:b.disabled===a:b.isDisabled===a||b.isDisabled!==!a&&ea(b)===a:b.disabled===a:"label"in b&&b.disabled===a}}function pa(a){return ia(function(b){return b=+b,ia(function(c,d){var e,f=a([],c.length,b),g=f.length;while(g--)c[e=f[g]]&&(c[e]=!(d[e]=c[e]))})})}function qa(a){return a&&"undefined"!=typeof a.getElementsByTagName&&a}c=ga.support={},f=ga.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return!!b&&"HTML"!==b.nodeName},m=ga.setDocument=function(a){var b,e,g=a?a.ownerDocument||a:v;return g!==n&&9===g.nodeType&&g.documentElement?(n=g,o=n.documentElement,p=!f(n),v!==n&&(e=n.defaultView)&&e.top!==e&&(e.addEventListener?e.addEventListener("unload",da,!1):e.attachEvent&&e.attachEvent("onunload",da)),c.attributes=ja(function(a){return a.className="i",!a.getAttribute("className")}),c.getElementsByTagName=ja(function(a){return a.appendChild(n.createComment("")),!a.getElementsByTagName("*").length}),c.getElementsByClassName=Y.test(n.getElementsByClassName),c.getById=ja(function(a){return o.appendChild(a).id=u,!n.getElementsByName||!n.getElementsByName(u).length}),c.getById?(d.filter.ID=function(a){var b=a.replace(_,aa);return function(a){return a.getAttribute("id")===b}},d.find.ID=function(a,b){if("undefined"!=typeof b.getElementById&&p){var c=b.getElementById(a);return c?[c]:[]}}):(d.filter.ID=function(a){var b=a.replace(_,aa);return function(a){var c="undefined"!=typeof a.getAttributeNode&&a.getAttributeNode("id");return c&&c.value===b}},d.find.ID=function(a,b){if("undefined"!=typeof b.getElementById&&p){var c,d,e,f=b.getElementById(a);if(f){if(c=f.getAttributeNode("id"),c&&c.value===a)return[f];e=b.getElementsByName(a),d=0;while(f=e[d++])if(c=f.getAttributeNode("id"),c&&c.value===a)return[f]}return[]}}),d.find.TAG=c.getElementsByTagName?function(a,b){return"undefined"!=typeof b.getElementsByTagName?b.getElementsByTagName(a):c.qsa?b.querySelectorAll(a):void 0}:function(a,b){var c,d=[],e=0,f=b.getElementsByTagName(a);if("*"===a){while(c=f[e++])1===c.nodeType&&d.push(c);return d}return f},d.find.CLASS=c.getElementsByClassName&&function(a,b){if("undefined"!=typeof b.getElementsByClassName&&p)return b.getElementsByClassName(a)},r=[],q=[],(c.qsa=Y.test(n.querySelectorAll))&&(ja(function(a){o.appendChild(a).innerHTML="",a.querySelectorAll("[msallowcapture^='']").length&&q.push("[*^$]="+K+"*(?:''|\"\")"),a.querySelectorAll("[selected]").length||q.push("\\["+K+"*(?:value|"+J+")"),a.querySelectorAll("[id~="+u+"-]").length||q.push("~="),a.querySelectorAll(":checked").length||q.push(":checked"),a.querySelectorAll("a#"+u+"+*").length||q.push(".#.+[+~]")}),ja(function(a){a.innerHTML="";var b=n.createElement("input");b.setAttribute("type","hidden"),a.appendChild(b).setAttribute("name","D"),a.querySelectorAll("[name=d]").length&&q.push("name"+K+"*[*^$|!~]?="),2!==a.querySelectorAll(":enabled").length&&q.push(":enabled",":disabled"),o.appendChild(a).disabled=!0,2!==a.querySelectorAll(":disabled").length&&q.push(":enabled",":disabled"),a.querySelectorAll("*,:x"),q.push(",.*:")})),(c.matchesSelector=Y.test(s=o.matches||o.webkitMatchesSelector||o.mozMatchesSelector||o.oMatchesSelector||o.msMatchesSelector))&&ja(function(a){c.disconnectedMatch=s.call(a,"*"),s.call(a,"[s!='']:x"),r.push("!=",N)}),q=q.length&&new RegExp(q.join("|")),r=r.length&&new RegExp(r.join("|")),b=Y.test(o.compareDocumentPosition),t=b||Y.test(o.contains)?function(a,b){var c=9===a.nodeType?a.documentElement:a,d=b&&b.parentNode;return a===d||!(!d||1!==d.nodeType||!(c.contains?c.contains(d):a.compareDocumentPosition&&16&a.compareDocumentPosition(d)))}:function(a,b){if(b)while(b=b.parentNode)if(b===a)return!0;return!1},B=b?function(a,b){if(a===b)return l=!0,0;var d=!a.compareDocumentPosition-!b.compareDocumentPosition;return d?d:(d=(a.ownerDocument||a)===(b.ownerDocument||b)?a.compareDocumentPosition(b):1,1&d||!c.sortDetached&&b.compareDocumentPosition(a)===d?a===n||a.ownerDocument===v&&t(v,a)?-1:b===n||b.ownerDocument===v&&t(v,b)?1:k?I(k,a)-I(k,b):0:4&d?-1:1)}:function(a,b){if(a===b)return l=!0,0;var c,d=0,e=a.parentNode,f=b.parentNode,g=[a],h=[b];if(!e||!f)return a===n?-1:b===n?1:e?-1:f?1:k?I(k,a)-I(k,b):0;if(e===f)return la(a,b);c=a;while(c=c.parentNode)g.unshift(c);c=b;while(c=c.parentNode)h.unshift(c);while(g[d]===h[d])d++;return d?la(g[d],h[d]):g[d]===v?-1:h[d]===v?1:0},n):n},ga.matches=function(a,b){return ga(a,null,null,b)},ga.matchesSelector=function(a,b){if((a.ownerDocument||a)!==n&&m(a),b=b.replace(S,"='$1']"),c.matchesSelector&&p&&!A[b+" "]&&(!r||!r.test(b))&&(!q||!q.test(b)))try{var d=s.call(a,b);if(d||c.disconnectedMatch||a.document&&11!==a.document.nodeType)return d}catch(e){}return ga(b,n,null,[a]).length>0},ga.contains=function(a,b){return(a.ownerDocument||a)!==n&&m(a),t(a,b)},ga.attr=function(a,b){(a.ownerDocument||a)!==n&&m(a);var e=d.attrHandle[b.toLowerCase()],f=e&&C.call(d.attrHandle,b.toLowerCase())?e(a,b,!p):void 0;return void 0!==f?f:c.attributes||!p?a.getAttribute(b):(f=a.getAttributeNode(b))&&f.specified?f.value:null},ga.escape=function(a){return(a+"").replace(ba,ca)},ga.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)},ga.uniqueSort=function(a){var b,d=[],e=0,f=0;if(l=!c.detectDuplicates,k=!c.sortStable&&a.slice(0),a.sort(B),l){while(b=a[f++])b===a[f]&&(e=d.push(f));while(e--)a.splice(d[e],1)}return k=null,a},e=ga.getText=function(a){var b,c="",d=0,f=a.nodeType;if(f){if(1===f||9===f||11===f){if("string"==typeof a.textContent)return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=e(a)}else if(3===f||4===f)return a.nodeValue}else while(b=a[d++])c+=e(b);return c},d=ga.selectors={cacheLength:50,createPseudo:ia,match:V,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(_,aa),a[3]=(a[3]||a[4]||a[5]||"").replace(_,aa),"~="===a[2]&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),"nth"===a[1].slice(0,3)?(a[3]||ga.error(a[0]),a[4]=+(a[4]?a[5]+(a[6]||1):2*("even"===a[3]||"odd"===a[3])),a[5]=+(a[7]+a[8]||"odd"===a[3])):a[3]&&ga.error(a[0]),a},PSEUDO:function(a){var b,c=!a[6]&&a[2];return V.CHILD.test(a[0])?null:(a[3]?a[2]=a[4]||a[5]||"":c&&T.test(c)&&(b=g(c,!0))&&(b=c.indexOf(")",c.length-b)-c.length)&&(a[0]=a[0].slice(0,b),a[2]=c.slice(0,b)),a.slice(0,3))}},filter:{TAG:function(a){var b=a.replace(_,aa).toLowerCase();return"*"===a?function(){return!0}:function(a){return a.nodeName&&a.nodeName.toLowerCase()===b}},CLASS:function(a){var b=y[a+" "];return b||(b=new RegExp("(^|"+K+")"+a+"("+K+"|$)"))&&y(a,function(a){return b.test("string"==typeof a.className&&a.className||"undefined"!=typeof a.getAttribute&&a.getAttribute("class")||"")})},ATTR:function(a,b,c){return function(d){var e=ga.attr(d,a);return null==e?"!="===b:!b||(e+="","="===b?e===c:"!="===b?e!==c:"^="===b?c&&0===e.indexOf(c):"*="===b?c&&e.indexOf(c)>-1:"$="===b?c&&e.slice(-c.length)===c:"~="===b?(" "+e.replace(O," ")+" ").indexOf(c)>-1:"|="===b&&(e===c||e.slice(0,c.length+1)===c+"-"))}},CHILD:function(a,b,c,d,e){var f="nth"!==a.slice(0,3),g="last"!==a.slice(-4),h="of-type"===b;return 1===d&&0===e?function(a){return!!a.parentNode}:function(b,c,i){var j,k,l,m,n,o,p=f!==g?"nextSibling":"previousSibling",q=b.parentNode,r=h&&b.nodeName.toLowerCase(),s=!i&&!h,t=!1;if(q){if(f){while(p){m=b;while(m=m[p])if(h?m.nodeName.toLowerCase()===r:1===m.nodeType)return!1;o=p="only"===a&&!o&&"nextSibling"}return!0}if(o=[g?q.firstChild:q.lastChild],g&&s){m=q,l=m[u]||(m[u]={}),k=l[m.uniqueID]||(l[m.uniqueID]={}),j=k[a]||[],n=j[0]===w&&j[1],t=n&&j[2],m=n&&q.childNodes[n];while(m=++n&&m&&m[p]||(t=n=0)||o.pop())if(1===m.nodeType&&++t&&m===b){k[a]=[w,n,t];break}}else if(s&&(m=b,l=m[u]||(m[u]={}),k=l[m.uniqueID]||(l[m.uniqueID]={}),j=k[a]||[],n=j[0]===w&&j[1],t=n),t===!1)while(m=++n&&m&&m[p]||(t=n=0)||o.pop())if((h?m.nodeName.toLowerCase()===r:1===m.nodeType)&&++t&&(s&&(l=m[u]||(m[u]={}),k=l[m.uniqueID]||(l[m.uniqueID]={}),k[a]=[w,t]),m===b))break;return t-=e,t===d||t%d===0&&t/d>=0}}},PSEUDO:function(a,b){var c,e=d.pseudos[a]||d.setFilters[a.toLowerCase()]||ga.error("unsupported pseudo: "+a);return e[u]?e(b):e.length>1?(c=[a,a,"",b],d.setFilters.hasOwnProperty(a.toLowerCase())?ia(function(a,c){var d,f=e(a,b),g=f.length;while(g--)d=I(a,f[g]),a[d]=!(c[d]=f[g])}):function(a){return e(a,0,c)}):e}},pseudos:{not:ia(function(a){var b=[],c=[],d=h(a.replace(P,"$1"));return d[u]?ia(function(a,b,c,e){var f,g=d(a,null,e,[]),h=a.length;while(h--)(f=g[h])&&(a[h]=!(b[h]=f))}):function(a,e,f){return b[0]=a,d(b,null,f,c),b[0]=null,!c.pop()}}),has:ia(function(a){return function(b){return ga(a,b).length>0}}),contains:ia(function(a){return a=a.replace(_,aa),function(b){return(b.textContent||b.innerText||e(b)).indexOf(a)>-1}}),lang:ia(function(a){return U.test(a||"")||ga.error("unsupported lang: "+a),a=a.replace(_,aa).toLowerCase(),function(b){var c;do if(c=p?b.lang:b.getAttribute("xml:lang")||b.getAttribute("lang"))return c=c.toLowerCase(),c===a||0===c.indexOf(a+"-");while((b=b.parentNode)&&1===b.nodeType);return!1}}),target:function(b){var c=a.location&&a.location.hash;return c&&c.slice(1)===b.id},root:function(a){return a===o},focus:function(a){return a===n.activeElement&&(!n.hasFocus||n.hasFocus())&&!!(a.type||a.href||~a.tabIndex)},enabled:oa(!1),disabled:oa(!0),checked:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&!!a.checked||"option"===b&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,a.selected===!0},empty:function(a){for(a=a.firstChild;a;a=a.nextSibling)if(a.nodeType<6)return!1;return!0},parent:function(a){return!d.pseudos.empty(a)},header:function(a){return X.test(a.nodeName)},input:function(a){return W.test(a.nodeName)},button:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&"button"===a.type||"button"===b},text:function(a){var b;return"input"===a.nodeName.toLowerCase()&&"text"===a.type&&(null==(b=a.getAttribute("type"))||"text"===b.toLowerCase())},first:pa(function(){return[0]}),last:pa(function(a,b){return[b-1]}),eq:pa(function(a,b,c){return[c<0?c+b:c]}),even:pa(function(a,b){for(var c=0;c=0;)a.push(d);return a}),gt:pa(function(a,b,c){for(var d=c<0?c+b:c;++d1?function(b,c,d){var e=a.length;while(e--)if(!a[e](b,c,d))return!1;return!0}:a[0]}function va(a,b,c){for(var d=0,e=b.length;d-1&&(f[j]=!(g[j]=l))}}else r=wa(r===g?r.splice(o,r.length):r),e?e(null,g,r,i):G.apply(g,r)})}function ya(a){for(var b,c,e,f=a.length,g=d.relative[a[0].type],h=g||d.relative[" "],i=g?1:0,k=ta(function(a){return a===b},h,!0),l=ta(function(a){return I(b,a)>-1},h,!0),m=[function(a,c,d){var e=!g&&(d||c!==j)||((b=c).nodeType?k(a,c,d):l(a,c,d));return b=null,e}];i1&&ua(m),i>1&&sa(a.slice(0,i-1).concat({value:" "===a[i-2].type?"*":""})).replace(P,"$1"),c,i0,e=a.length>0,f=function(f,g,h,i,k){var l,o,q,r=0,s="0",t=f&&[],u=[],v=j,x=f||e&&d.find.TAG("*",k),y=w+=null==v?1:Math.random()||.1,z=x.length;for(k&&(j=g===n||g||k);s!==z&&null!=(l=x[s]);s++){if(e&&l){o=0,g||l.ownerDocument===n||(m(l),h=!p);while(q=a[o++])if(q(l,g||n,h)){i.push(l);break}k&&(w=y)}c&&((l=!q&&l)&&r--,f&&t.push(l))}if(r+=s,c&&s!==r){o=0;while(q=b[o++])q(t,u,g,h);if(f){if(r>0)while(s--)t[s]||u[s]||(u[s]=E.call(i));u=wa(u)}G.apply(i,u),k&&!f&&u.length>0&&r+b.length>1&&ga.uniqueSort(i)}return k&&(w=y,j=v),t};return c?ia(f):f}return h=ga.compile=function(a,b){var c,d=[],e=[],f=A[a+" "];if(!f){b||(b=g(a)),c=b.length;while(c--)f=ya(b[c]),f[u]?d.push(f):e.push(f);f=A(a,za(e,d)),f.selector=a}return f},i=ga.select=function(a,b,c,e){var f,i,j,k,l,m="function"==typeof a&&a,n=!e&&g(a=m.selector||a);if(c=c||[],1===n.length){if(i=n[0]=n[0].slice(0),i.length>2&&"ID"===(j=i[0]).type&&9===b.nodeType&&p&&d.relative[i[1].type]){if(b=(d.find.ID(j.matches[0].replace(_,aa),b)||[])[0],!b)return c;m&&(b=b.parentNode),a=a.slice(i.shift().value.length)}f=V.needsContext.test(a)?0:i.length;while(f--){if(j=i[f],d.relative[k=j.type])break;if((l=d.find[k])&&(e=l(j.matches[0].replace(_,aa),$.test(i[0].type)&&qa(b.parentNode)||b))){if(i.splice(f,1),a=e.length&&sa(i),!a)return G.apply(c,e),c;break}}}return(m||h(a,n))(e,b,!p,c,!b||$.test(a)&&qa(b.parentNode)||b),c},c.sortStable=u.split("").sort(B).join("")===u,c.detectDuplicates=!!l,m(),c.sortDetached=ja(function(a){return 1&a.compareDocumentPosition(n.createElement("fieldset"))}),ja(function(a){return a.innerHTML="","#"===a.firstChild.getAttribute("href")})||ka("type|href|height|width",function(a,b,c){if(!c)return a.getAttribute(b,"type"===b.toLowerCase()?1:2)}),c.attributes&&ja(function(a){return a.innerHTML="",a.firstChild.setAttribute("value",""),""===a.firstChild.getAttribute("value")})||ka("value",function(a,b,c){if(!c&&"input"===a.nodeName.toLowerCase())return a.defaultValue}),ja(function(a){return null==a.getAttribute("disabled")})||ka(J,function(a,b,c){var d;if(!c)return a[b]===!0?b.toLowerCase():(d=a.getAttributeNode(b))&&d.specified?d.value:null}),ga}(a);r.find=x,r.expr=x.selectors,r.expr[":"]=r.expr.pseudos,r.uniqueSort=r.unique=x.uniqueSort,r.text=x.getText,r.isXMLDoc=x.isXML,r.contains=x.contains,r.escapeSelector=x.escape;var y=function(a,b,c){var d=[],e=void 0!==c;while((a=a[b])&&9!==a.nodeType)if(1===a.nodeType){if(e&&r(a).is(c))break;d.push(a)}return d},z=function(a,b){for(var c=[];a;a=a.nextSibling)1===a.nodeType&&a!==b&&c.push(a);return c},A=r.expr.match.needsContext;function B(a,b){return a.nodeName&&a.nodeName.toLowerCase()===b.toLowerCase()}var C=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i,D=/^.[^:#\[\.,]*$/;function E(a,b,c){return r.isFunction(b)?r.grep(a,function(a,d){return!!b.call(a,d,a)!==c}):b.nodeType?r.grep(a,function(a){return a===b!==c}):"string"!=typeof b?r.grep(a,function(a){return i.call(b,a)>-1!==c}):D.test(b)?r.filter(b,a,c):(b=r.filter(b,a),r.grep(a,function(a){return i.call(b,a)>-1!==c&&1===a.nodeType}))}r.filter=function(a,b,c){var d=b[0];return c&&(a=":not("+a+")"),1===b.length&&1===d.nodeType?r.find.matchesSelector(d,a)?[d]:[]:r.find.matches(a,r.grep(b,function(a){return 1===a.nodeType}))},r.fn.extend({find:function(a){var b,c,d=this.length,e=this;if("string"!=typeof a)return this.pushStack(r(a).filter(function(){for(b=0;b1?r.uniqueSort(c):c},filter:function(a){return this.pushStack(E(this,a||[],!1))},not:function(a){return this.pushStack(E(this,a||[],!0))},is:function(a){return!!E(this,"string"==typeof a&&A.test(a)?r(a):a||[],!1).length}});var F,G=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/,H=r.fn.init=function(a,b,c){var e,f;if(!a)return this;if(c=c||F,"string"==typeof a){if(e="<"===a[0]&&">"===a[a.length-1]&&a.length>=3?[null,a,null]:G.exec(a),!e||!e[1]&&b)return!b||b.jquery?(b||c).find(a):this.constructor(b).find(a);if(e[1]){if(b=b instanceof r?b[0]:b,r.merge(this,r.parseHTML(e[1],b&&b.nodeType?b.ownerDocument||b:d,!0)),C.test(e[1])&&r.isPlainObject(b))for(e in b)r.isFunction(this[e])?this[e](b[e]):this.attr(e,b[e]);return this}return f=d.getElementById(e[2]),f&&(this[0]=f,this.length=1),this}return a.nodeType?(this[0]=a,this.length=1,this):r.isFunction(a)?void 0!==c.ready?c.ready(a):a(r):r.makeArray(a,this)};H.prototype=r.fn,F=r(d);var I=/^(?:parents|prev(?:Until|All))/,J={children:!0,contents:!0,next:!0,prev:!0};r.fn.extend({has:function(a){var b=r(a,this),c=b.length;return this.filter(function(){for(var a=0;a-1:1===c.nodeType&&r.find.matchesSelector(c,a))){f.push(c);break}return this.pushStack(f.length>1?r.uniqueSort(f):f)},index:function(a){return a?"string"==typeof a?i.call(r(a),this[0]):i.call(this,a.jquery?a[0]:a):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(a,b){return this.pushStack(r.uniqueSort(r.merge(this.get(),r(a,b))))},addBack:function(a){return this.add(null==a?this.prevObject:this.prevObject.filter(a))}});function K(a,b){while((a=a[b])&&1!==a.nodeType);return a}r.each({parent:function(a){var b=a.parentNode;return b&&11!==b.nodeType?b:null},parents:function(a){return y(a,"parentNode")},parentsUntil:function(a,b,c){return y(a,"parentNode",c)},next:function(a){return K(a,"nextSibling")},prev:function(a){return K(a,"previousSibling")},nextAll:function(a){return y(a,"nextSibling")},prevAll:function(a){return y(a,"previousSibling")},nextUntil:function(a,b,c){return y(a,"nextSibling",c)},prevUntil:function(a,b,c){return y(a,"previousSibling",c)},siblings:function(a){return z((a.parentNode||{}).firstChild,a)},children:function(a){return z(a.firstChild)},contents:function(a){return B(a,"iframe")?a.contentDocument:(B(a,"template")&&(a=a.content||a),r.merge([],a.childNodes))}},function(a,b){r.fn[a]=function(c,d){var e=r.map(this,b,c);return"Until"!==a.slice(-5)&&(d=c),d&&"string"==typeof d&&(e=r.filter(d,e)),this.length>1&&(J[a]||r.uniqueSort(e),I.test(a)&&e.reverse()),this.pushStack(e)}});var L=/[^\x20\t\r\n\f]+/g;function M(a){var b={};return r.each(a.match(L)||[],function(a,c){b[c]=!0}),b}r.Callbacks=function(a){a="string"==typeof a?M(a):r.extend({},a);var b,c,d,e,f=[],g=[],h=-1,i=function(){for(e=e||a.once,d=b=!0;g.length;h=-1){c=g.shift();while(++h-1)f.splice(c,1),c<=h&&h--}),this},has:function(a){return a?r.inArray(a,f)>-1:f.length>0},empty:function(){return f&&(f=[]),this},disable:function(){return e=g=[],f=c="",this},disabled:function(){return!f},lock:function(){return e=g=[],c||b||(f=c=""),this},locked:function(){return!!e},fireWith:function(a,c){return e||(c=c||[],c=[a,c.slice?c.slice():c],g.push(c),b||i()),this},fire:function(){return j.fireWith(this,arguments),this},fired:function(){return!!d}};return j};function N(a){return a}function O(a){throw a}function P(a,b,c,d){var e;try{a&&r.isFunction(e=a.promise)?e.call(a).done(b).fail(c):a&&r.isFunction(e=a.then)?e.call(a,b,c):b.apply(void 0,[a].slice(d))}catch(a){c.apply(void 0,[a])}}r.extend({Deferred:function(b){var c=[["notify","progress",r.Callbacks("memory"),r.Callbacks("memory"),2],["resolve","done",r.Callbacks("once memory"),r.Callbacks("once memory"),0,"resolved"],["reject","fail",r.Callbacks("once memory"),r.Callbacks("once memory"),1,"rejected"]],d="pending",e={state:function(){return d},always:function(){return f.done(arguments).fail(arguments),this},"catch":function(a){return e.then(null,a)},pipe:function(){var a=arguments;return r.Deferred(function(b){r.each(c,function(c,d){var e=r.isFunction(a[d[4]])&&a[d[4]];f[d[1]](function(){var a=e&&e.apply(this,arguments);a&&r.isFunction(a.promise)?a.promise().progress(b.notify).done(b.resolve).fail(b.reject):b[d[0]+"With"](this,e?[a]:arguments)})}),a=null}).promise()},then:function(b,d,e){var f=0;function g(b,c,d,e){return function(){var h=this,i=arguments,j=function(){var a,j;if(!(b=f&&(d!==O&&(h=void 0,i=[a]),c.rejectWith(h,i))}};b?k():(r.Deferred.getStackHook&&(k.stackTrace=r.Deferred.getStackHook()),a.setTimeout(k))}}return r.Deferred(function(a){c[0][3].add(g(0,a,r.isFunction(e)?e:N,a.notifyWith)),c[1][3].add(g(0,a,r.isFunction(b)?b:N)),c[2][3].add(g(0,a,r.isFunction(d)?d:O))}).promise()},promise:function(a){return null!=a?r.extend(a,e):e}},f={};return r.each(c,function(a,b){var g=b[2],h=b[5];e[b[1]]=g.add,h&&g.add(function(){d=h},c[3-a][2].disable,c[0][2].lock),g.add(b[3].fire),f[b[0]]=function(){return f[b[0]+"With"](this===f?void 0:this,arguments),this},f[b[0]+"With"]=g.fireWith}),e.promise(f),b&&b.call(f,f),f},when:function(a){var b=arguments.length,c=b,d=Array(c),e=f.call(arguments),g=r.Deferred(),h=function(a){return function(c){d[a]=this,e[a]=arguments.length>1?f.call(arguments):c,--b||g.resolveWith(d,e)}};if(b<=1&&(P(a,g.done(h(c)).resolve,g.reject,!b),"pending"===g.state()||r.isFunction(e[c]&&e[c].then)))return g.then();while(c--)P(e[c],h(c),g.reject);return g.promise()}});var Q=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;r.Deferred.exceptionHook=function(b,c){a.console&&a.console.warn&&b&&Q.test(b.name)&&a.console.warn("jQuery.Deferred exception: "+b.message,b.stack,c)},r.readyException=function(b){a.setTimeout(function(){throw b})};var R=r.Deferred();r.fn.ready=function(a){return R.then(a)["catch"](function(a){r.readyException(a)}),this},r.extend({isReady:!1,readyWait:1,ready:function(a){(a===!0?--r.readyWait:r.isReady)||(r.isReady=!0,a!==!0&&--r.readyWait>0||R.resolveWith(d,[r]))}}),r.ready.then=R.then;function S(){d.removeEventListener("DOMContentLoaded",S),
a.removeEventListener("load",S),r.ready()}"complete"===d.readyState||"loading"!==d.readyState&&!d.documentElement.doScroll?a.setTimeout(r.ready):(d.addEventListener("DOMContentLoaded",S),a.addEventListener("load",S));var T=function(a,b,c,d,e,f,g){var h=0,i=a.length,j=null==c;if("object"===r.type(c)){e=!0;for(h in c)T(a,b,h,c[h],!0,f,g)}else if(void 0!==d&&(e=!0,r.isFunction(d)||(g=!0),j&&(g?(b.call(a,d),b=null):(j=b,b=function(a,b,c){return j.call(r(a),c)})),b))for(;h1,null,!0)},removeData:function(a){return this.each(function(){X.remove(this,a)})}}),r.extend({queue:function(a,b,c){var d;if(a)return b=(b||"fx")+"queue",d=W.get(a,b),c&&(!d||Array.isArray(c)?d=W.access(a,b,r.makeArray(c)):d.push(c)),d||[]},dequeue:function(a,b){b=b||"fx";var c=r.queue(a,b),d=c.length,e=c.shift(),f=r._queueHooks(a,b),g=function(){r.dequeue(a,b)};"inprogress"===e&&(e=c.shift(),d--),e&&("fx"===b&&c.unshift("inprogress"),delete f.stop,e.call(a,g,f)),!d&&f&&f.empty.fire()},_queueHooks:function(a,b){var c=b+"queueHooks";return W.get(a,c)||W.access(a,c,{empty:r.Callbacks("once memory").add(function(){W.remove(a,[b+"queue",c])})})}}),r.fn.extend({queue:function(a,b){var c=2;return"string"!=typeof a&&(b=a,a="fx",c--),arguments.length\x20\t\r\n\f]+)/i,la=/^$|\/(?:java|ecma)script/i,ma={option:[1,""],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};ma.optgroup=ma.option,ma.tbody=ma.tfoot=ma.colgroup=ma.caption=ma.thead,ma.th=ma.td;function na(a,b){var c;return c="undefined"!=typeof a.getElementsByTagName?a.getElementsByTagName(b||"*"):"undefined"!=typeof a.querySelectorAll?a.querySelectorAll(b||"*"):[],void 0===b||b&&B(a,b)?r.merge([a],c):c}function oa(a,b){for(var c=0,d=a.length;c-1)e&&e.push(f);else if(j=r.contains(f.ownerDocument,f),g=na(l.appendChild(f),"script"),j&&oa(g),c){k=0;while(f=g[k++])la.test(f.type||"")&&c.push(f)}return l}!function(){var a=d.createDocumentFragment(),b=a.appendChild(d.createElement("div")),c=d.createElement("input");c.setAttribute("type","radio"),c.setAttribute("checked","checked"),c.setAttribute("name","t"),b.appendChild(c),o.checkClone=b.cloneNode(!0).cloneNode(!0).lastChild.checked,b.innerHTML="",o.noCloneChecked=!!b.cloneNode(!0).lastChild.defaultValue}();var ra=d.documentElement,sa=/^key/,ta=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,ua=/^([^.]*)(?:\.(.+)|)/;function va(){return!0}function wa(){return!1}function xa(){try{return d.activeElement}catch(a){}}function ya(a,b,c,d,e,f){var g,h;if("object"==typeof b){"string"!=typeof c&&(d=d||c,c=void 0);for(h in b)ya(a,h,c,d,b[h],f);return a}if(null==d&&null==e?(e=c,d=c=void 0):null==e&&("string"==typeof c?(e=d,d=void 0):(e=d,d=c,c=void 0)),e===!1)e=wa;else if(!e)return a;return 1===f&&(g=e,e=function(a){return r().off(a),g.apply(this,arguments)},e.guid=g.guid||(g.guid=r.guid++)),a.each(function(){r.event.add(this,b,e,d,c)})}r.event={global:{},add:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,n,o,p,q=W.get(a);if(q){c.handler&&(f=c,c=f.handler,e=f.selector),e&&r.find.matchesSelector(ra,e),c.guid||(c.guid=r.guid++),(i=q.events)||(i=q.events={}),(g=q.handle)||(g=q.handle=function(b){return"undefined"!=typeof r&&r.event.triggered!==b.type?r.event.dispatch.apply(a,arguments):void 0}),b=(b||"").match(L)||[""],j=b.length;while(j--)h=ua.exec(b[j])||[],n=p=h[1],o=(h[2]||"").split(".").sort(),n&&(l=r.event.special[n]||{},n=(e?l.delegateType:l.bindType)||n,l=r.event.special[n]||{},k=r.extend({type:n,origType:p,data:d,handler:c,guid:c.guid,selector:e,needsContext:e&&r.expr.match.needsContext.test(e),namespace:o.join(".")},f),(m=i[n])||(m=i[n]=[],m.delegateCount=0,l.setup&&l.setup.call(a,d,o,g)!==!1||a.addEventListener&&a.addEventListener(n,g)),l.add&&(l.add.call(a,k),k.handler.guid||(k.handler.guid=c.guid)),e?m.splice(m.delegateCount++,0,k):m.push(k),r.event.global[n]=!0)}},remove:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,n,o,p,q=W.hasData(a)&&W.get(a);if(q&&(i=q.events)){b=(b||"").match(L)||[""],j=b.length;while(j--)if(h=ua.exec(b[j])||[],n=p=h[1],o=(h[2]||"").split(".").sort(),n){l=r.event.special[n]||{},n=(d?l.delegateType:l.bindType)||n,m=i[n]||[],h=h[2]&&new RegExp("(^|\\.)"+o.join("\\.(?:.*\\.|)")+"(\\.|$)"),g=f=m.length;while(f--)k=m[f],!e&&p!==k.origType||c&&c.guid!==k.guid||h&&!h.test(k.namespace)||d&&d!==k.selector&&("**"!==d||!k.selector)||(m.splice(f,1),k.selector&&m.delegateCount--,l.remove&&l.remove.call(a,k));g&&!m.length&&(l.teardown&&l.teardown.call(a,o,q.handle)!==!1||r.removeEvent(a,n,q.handle),delete i[n])}else for(n in i)r.event.remove(a,n+b[j],c,d,!0);r.isEmptyObject(i)&&W.remove(a,"handle events")}},dispatch:function(a){var b=r.event.fix(a),c,d,e,f,g,h,i=new Array(arguments.length),j=(W.get(this,"events")||{})[b.type]||[],k=r.event.special[b.type]||{};for(i[0]=b,c=1;c=1))for(;j!==this;j=j.parentNode||this)if(1===j.nodeType&&("click"!==a.type||j.disabled!==!0)){for(f=[],g={},c=0;c-1:r.find(e,this,null,[j]).length),g[e]&&f.push(d);f.length&&h.push({elem:j,handlers:f})}return j=this,i\x20\t\r\n\f]*)[^>]*)\/>/gi,Aa=/\s*$/g;function Ea(a,b){return B(a,"table")&&B(11!==b.nodeType?b:b.firstChild,"tr")?r(">tbody",a)[0]||a:a}function Fa(a){return a.type=(null!==a.getAttribute("type"))+"/"+a.type,a}function Ga(a){var b=Ca.exec(a.type);return b?a.type=b[1]:a.removeAttribute("type"),a}function Ha(a,b){var c,d,e,f,g,h,i,j;if(1===b.nodeType){if(W.hasData(a)&&(f=W.access(a),g=W.set(b,f),j=f.events)){delete g.handle,g.events={};for(e in j)for(c=0,d=j[e].length;c1&&"string"==typeof q&&!o.checkClone&&Ba.test(q))return a.each(function(e){var f=a.eq(e);s&&(b[0]=q.call(this,e,f.html())),Ja(f,b,c,d)});if(m&&(e=qa(b,a[0].ownerDocument,!1,a,d),f=e.firstChild,1===e.childNodes.length&&(e=f),f||d)){for(h=r.map(na(e,"script"),Fa),i=h.length;l")},clone:function(a,b,c){var d,e,f,g,h=a.cloneNode(!0),i=r.contains(a.ownerDocument,a);if(!(o.noCloneChecked||1!==a.nodeType&&11!==a.nodeType||r.isXMLDoc(a)))for(g=na(h),f=na(a),d=0,e=f.length;d0&&oa(g,!i&&na(a,"script")),h},cleanData:function(a){for(var b,c,d,e=r.event.special,f=0;void 0!==(c=a[f]);f++)if(U(c)){if(b=c[W.expando]){if(b.events)for(d in b.events)e[d]?r.event.remove(c,d):r.removeEvent(c,d,b.handle);c[W.expando]=void 0}c[X.expando]&&(c[X.expando]=void 0)}}}),r.fn.extend({detach:function(a){return Ka(this,a,!0)},remove:function(a){return Ka(this,a)},text:function(a){return T(this,function(a){return void 0===a?r.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=a)})},null,a,arguments.length)},append:function(){return Ja(this,arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=Ea(this,a);b.appendChild(a)}})},prepend:function(){return Ja(this,arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=Ea(this,a);b.insertBefore(a,b.firstChild)}})},before:function(){return Ja(this,arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this)})},after:function(){return Ja(this,arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this.nextSibling)})},empty:function(){for(var a,b=0;null!=(a=this[b]);b++)1===a.nodeType&&(r.cleanData(na(a,!1)),a.textContent="");return this},clone:function(a,b){return a=null!=a&&a,b=null==b?a:b,this.map(function(){return r.clone(this,a,b)})},html:function(a){return T(this,function(a){var b=this[0]||{},c=0,d=this.length;if(void 0===a&&1===b.nodeType)return b.innerHTML;if("string"==typeof a&&!Aa.test(a)&&!ma[(ka.exec(a)||["",""])[1].toLowerCase()]){a=r.htmlPrefilter(a);try{for(;c1)}});function _a(a,b,c,d,e){return new _a.prototype.init(a,b,c,d,e)}r.Tween=_a,_a.prototype={constructor:_a,init:function(a,b,c,d,e,f){this.elem=a,this.prop=c,this.easing=e||r.easing._default,this.options=b,this.start=this.now=this.cur(),this.end=d,this.unit=f||(r.cssNumber[c]?"":"px")},cur:function(){var a=_a.propHooks[this.prop];return a&&a.get?a.get(this):_a.propHooks._default.get(this)},run:function(a){var b,c=_a.propHooks[this.prop];return this.options.duration?this.pos=b=r.easing[this.easing](a,this.options.duration*a,0,1,this.options.duration):this.pos=b=a,this.now=(this.end-this.start)*b+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),c&&c.set?c.set(this):_a.propHooks._default.set(this),this}},_a.prototype.init.prototype=_a.prototype,_a.propHooks={_default:{get:function(a){var b;return 1!==a.elem.nodeType||null!=a.elem[a.prop]&&null==a.elem.style[a.prop]?a.elem[a.prop]:(b=r.css(a.elem,a.prop,""),b&&"auto"!==b?b:0)},set:function(a){r.fx.step[a.prop]?r.fx.step[a.prop](a):1!==a.elem.nodeType||null==a.elem.style[r.cssProps[a.prop]]&&!r.cssHooks[a.prop]?a.elem[a.prop]=a.now:r.style(a.elem,a.prop,a.now+a.unit)}}},_a.propHooks.scrollTop=_a.propHooks.scrollLeft={set:function(a){a.elem.nodeType&&a.elem.parentNode&&(a.elem[a.prop]=a.now)}},r.easing={linear:function(a){return a},swing:function(a){return.5-Math.cos(a*Math.PI)/2},_default:"swing"},r.fx=_a.prototype.init,r.fx.step={};var ab,bb,cb=/^(?:toggle|show|hide)$/,db=/queueHooks$/;function eb(){bb&&(d.hidden===!1&&a.requestAnimationFrame?a.requestAnimationFrame(eb):a.setTimeout(eb,r.fx.interval),r.fx.tick())}function fb(){return a.setTimeout(function(){ab=void 0}),ab=r.now()}function gb(a,b){var c,d=0,e={height:a};for(b=b?1:0;d<4;d+=2-b)c=ca[d],e["margin"+c]=e["padding"+c]=a;return b&&(e.opacity=e.width=a),e}function hb(a,b,c){for(var d,e=(kb.tweeners[b]||[]).concat(kb.tweeners["*"]),f=0,g=e.length;f1)},removeAttr:function(a){return this.each(function(){r.removeAttr(this,a)})}}),r.extend({attr:function(a,b,c){var d,e,f=a.nodeType;if(3!==f&&8!==f&&2!==f)return"undefined"==typeof a.getAttribute?r.prop(a,b,c):(1===f&&r.isXMLDoc(a)||(e=r.attrHooks[b.toLowerCase()]||(r.expr.match.bool.test(b)?lb:void 0)),void 0!==c?null===c?void r.removeAttr(a,b):e&&"set"in e&&void 0!==(d=e.set(a,c,b))?d:(a.setAttribute(b,c+""),c):e&&"get"in e&&null!==(d=e.get(a,b))?d:(d=r.find.attr(a,b), null==d?void 0:d))},attrHooks:{type:{set:function(a,b){if(!o.radioValue&&"radio"===b&&B(a,"input")){var c=a.value;return a.setAttribute("type",b),c&&(a.value=c),b}}}},removeAttr:function(a,b){var c,d=0,e=b&&b.match(L);if(e&&1===a.nodeType)while(c=e[d++])a.removeAttribute(c)}}),lb={set:function(a,b,c){return b===!1?r.removeAttr(a,c):a.setAttribute(c,c),c}},r.each(r.expr.match.bool.source.match(/\w+/g),function(a,b){var c=mb[b]||r.find.attr;mb[b]=function(a,b,d){var e,f,g=b.toLowerCase();return d||(f=mb[g],mb[g]=e,e=null!=c(a,b,d)?g:null,mb[g]=f),e}});var nb=/^(?:input|select|textarea|button)$/i,ob=/^(?:a|area)$/i;r.fn.extend({prop:function(a,b){return T(this,r.prop,a,b,arguments.length>1)},removeProp:function(a){return this.each(function(){delete this[r.propFix[a]||a]})}}),r.extend({prop:function(a,b,c){var d,e,f=a.nodeType;if(3!==f&&8!==f&&2!==f)return 1===f&&r.isXMLDoc(a)||(b=r.propFix[b]||b,e=r.propHooks[b]),void 0!==c?e&&"set"in e&&void 0!==(d=e.set(a,c,b))?d:a[b]=c:e&&"get"in e&&null!==(d=e.get(a,b))?d:a[b]},propHooks:{tabIndex:{get:function(a){var b=r.find.attr(a,"tabindex");return b?parseInt(b,10):nb.test(a.nodeName)||ob.test(a.nodeName)&&a.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}}),o.optSelected||(r.propHooks.selected={get:function(a){var b=a.parentNode;return b&&b.parentNode&&b.parentNode.selectedIndex,null},set:function(a){var b=a.parentNode;b&&(b.selectedIndex,b.parentNode&&b.parentNode.selectedIndex)}}),r.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){r.propFix[this.toLowerCase()]=this});function pb(a){var b=a.match(L)||[];return b.join(" ")}function qb(a){return a.getAttribute&&a.getAttribute("class")||""}r.fn.extend({addClass:function(a){var b,c,d,e,f,g,h,i=0;if(r.isFunction(a))return this.each(function(b){r(this).addClass(a.call(this,b,qb(this)))});if("string"==typeof a&&a){b=a.match(L)||[];while(c=this[i++])if(e=qb(c),d=1===c.nodeType&&" "+pb(e)+" "){g=0;while(f=b[g++])d.indexOf(" "+f+" ")<0&&(d+=f+" ");h=pb(d),e!==h&&c.setAttribute("class",h)}}return this},removeClass:function(a){var b,c,d,e,f,g,h,i=0;if(r.isFunction(a))return this.each(function(b){r(this).removeClass(a.call(this,b,qb(this)))});if(!arguments.length)return this.attr("class","");if("string"==typeof a&&a){b=a.match(L)||[];while(c=this[i++])if(e=qb(c),d=1===c.nodeType&&" "+pb(e)+" "){g=0;while(f=b[g++])while(d.indexOf(" "+f+" ")>-1)d=d.replace(" "+f+" "," ");h=pb(d),e!==h&&c.setAttribute("class",h)}}return this},toggleClass:function(a,b){var c=typeof a;return"boolean"==typeof b&&"string"===c?b?this.addClass(a):this.removeClass(a):r.isFunction(a)?this.each(function(c){r(this).toggleClass(a.call(this,c,qb(this),b),b)}):this.each(function(){var b,d,e,f;if("string"===c){d=0,e=r(this),f=a.match(L)||[];while(b=f[d++])e.hasClass(b)?e.removeClass(b):e.addClass(b)}else void 0!==a&&"boolean"!==c||(b=qb(this),b&&W.set(this,"__className__",b),this.setAttribute&&this.setAttribute("class",b||a===!1?"":W.get(this,"__className__")||""))})},hasClass:function(a){var b,c,d=0;b=" "+a+" ";while(c=this[d++])if(1===c.nodeType&&(" "+pb(qb(c))+" ").indexOf(b)>-1)return!0;return!1}});var rb=/\r/g;r.fn.extend({val:function(a){var b,c,d,e=this[0];{if(arguments.length)return d=r.isFunction(a),this.each(function(c){var e;1===this.nodeType&&(e=d?a.call(this,c,r(this).val()):a,null==e?e="":"number"==typeof e?e+="":Array.isArray(e)&&(e=r.map(e,function(a){return null==a?"":a+""})),b=r.valHooks[this.type]||r.valHooks[this.nodeName.toLowerCase()],b&&"set"in b&&void 0!==b.set(this,e,"value")||(this.value=e))});if(e)return b=r.valHooks[e.type]||r.valHooks[e.nodeName.toLowerCase()],b&&"get"in b&&void 0!==(c=b.get(e,"value"))?c:(c=e.value,"string"==typeof c?c.replace(rb,""):null==c?"":c)}}}),r.extend({valHooks:{option:{get:function(a){var b=r.find.attr(a,"value");return null!=b?b:pb(r.text(a))}},select:{get:function(a){var b,c,d,e=a.options,f=a.selectedIndex,g="select-one"===a.type,h=g?null:[],i=g?f+1:e.length;for(d=f<0?i:g?f:0;d-1)&&(c=!0);return c||(a.selectedIndex=-1),f}}}}),r.each(["radio","checkbox"],function(){r.valHooks[this]={set:function(a,b){if(Array.isArray(b))return a.checked=r.inArray(r(a).val(),b)>-1}},o.checkOn||(r.valHooks[this].get=function(a){return null===a.getAttribute("value")?"on":a.value})});var sb=/^(?:focusinfocus|focusoutblur)$/;r.extend(r.event,{trigger:function(b,c,e,f){var g,h,i,j,k,m,n,o=[e||d],p=l.call(b,"type")?b.type:b,q=l.call(b,"namespace")?b.namespace.split("."):[];if(h=i=e=e||d,3!==e.nodeType&&8!==e.nodeType&&!sb.test(p+r.event.triggered)&&(p.indexOf(".")>-1&&(q=p.split("."),p=q.shift(),q.sort()),k=p.indexOf(":")<0&&"on"+p,b=b[r.expando]?b:new r.Event(p,"object"==typeof b&&b),b.isTrigger=f?2:3,b.namespace=q.join("."),b.rnamespace=b.namespace?new RegExp("(^|\\.)"+q.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,b.result=void 0,b.target||(b.target=e),c=null==c?[b]:r.makeArray(c,[b]),n=r.event.special[p]||{},f||!n.trigger||n.trigger.apply(e,c)!==!1)){if(!f&&!n.noBubble&&!r.isWindow(e)){for(j=n.delegateType||p,sb.test(j+p)||(h=h.parentNode);h;h=h.parentNode)o.push(h),i=h;i===(e.ownerDocument||d)&&o.push(i.defaultView||i.parentWindow||a)}g=0;while((h=o[g++])&&!b.isPropagationStopped())b.type=g>1?j:n.bindType||p,m=(W.get(h,"events")||{})[b.type]&&W.get(h,"handle"),m&&m.apply(h,c),m=k&&h[k],m&&m.apply&&U(h)&&(b.result=m.apply(h,c),b.result===!1&&b.preventDefault());return b.type=p,f||b.isDefaultPrevented()||n._default&&n._default.apply(o.pop(),c)!==!1||!U(e)||k&&r.isFunction(e[p])&&!r.isWindow(e)&&(i=e[k],i&&(e[k]=null),r.event.triggered=p,e[p](),r.event.triggered=void 0,i&&(e[k]=i)),b.result}},simulate:function(a,b,c){var d=r.extend(new r.Event,c,{type:a,isSimulated:!0});r.event.trigger(d,null,b)}}),r.fn.extend({trigger:function(a,b){return this.each(function(){r.event.trigger(a,b,this)})},triggerHandler:function(a,b){var c=this[0];if(c)return r.event.trigger(a,b,c,!0)}}),r.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(a,b){r.fn[b]=function(a,c){return arguments.length>0?this.on(b,null,a,c):this.trigger(b)}}),r.fn.extend({hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}}),o.focusin="onfocusin"in a,o.focusin||r.each({focus:"focusin",blur:"focusout"},function(a,b){var c=function(a){r.event.simulate(b,a.target,r.event.fix(a))};r.event.special[b]={setup:function(){var d=this.ownerDocument||this,e=W.access(d,b);e||d.addEventListener(a,c,!0),W.access(d,b,(e||0)+1)},teardown:function(){var d=this.ownerDocument||this,e=W.access(d,b)-1;e?W.access(d,b,e):(d.removeEventListener(a,c,!0),W.remove(d,b))}}});var tb=a.location,ub=r.now(),vb=/\?/;r.parseXML=function(b){var c;if(!b||"string"!=typeof b)return null;try{c=(new a.DOMParser).parseFromString(b,"text/xml")}catch(d){c=void 0}return c&&!c.getElementsByTagName("parsererror").length||r.error("Invalid XML: "+b),c};var wb=/\[\]$/,xb=/\r?\n/g,yb=/^(?:submit|button|image|reset|file)$/i,zb=/^(?:input|select|textarea|keygen)/i;function Ab(a,b,c,d){var e;if(Array.isArray(b))r.each(b,function(b,e){c||wb.test(a)?d(a,e):Ab(a+"["+("object"==typeof e&&null!=e?b:"")+"]",e,c,d)});else if(c||"object"!==r.type(b))d(a,b);else for(e in b)Ab(a+"["+e+"]",b[e],c,d)}r.param=function(a,b){var c,d=[],e=function(a,b){var c=r.isFunction(b)?b():b;d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(null==c?"":c)};if(Array.isArray(a)||a.jquery&&!r.isPlainObject(a))r.each(a,function(){e(this.name,this.value)});else for(c in a)Ab(c,a[c],b,e);return d.join("&")},r.fn.extend({serialize:function(){return r.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var a=r.prop(this,"elements");return a?r.makeArray(a):this}).filter(function(){var a=this.type;return this.name&&!r(this).is(":disabled")&&zb.test(this.nodeName)&&!yb.test(a)&&(this.checked||!ja.test(a))}).map(function(a,b){var c=r(this).val();return null==c?null:Array.isArray(c)?r.map(c,function(a){return{name:b.name,value:a.replace(xb,"\r\n")}}):{name:b.name,value:c.replace(xb,"\r\n")}}).get()}});var Bb=/%20/g,Cb=/#.*$/,Db=/([?&])_=[^&]*/,Eb=/^(.*?):[ \t]*([^\r\n]*)$/gm,Fb=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,Gb=/^(?:GET|HEAD)$/,Hb=/^\/\//,Ib={},Jb={},Kb="*/".concat("*"),Lb=d.createElement("a");Lb.href=tb.href;function Mb(a){return function(b,c){"string"!=typeof b&&(c=b,b="*");var d,e=0,f=b.toLowerCase().match(L)||[];if(r.isFunction(c))while(d=f[e++])"+"===d[0]?(d=d.slice(1)||"*",(a[d]=a[d]||[]).unshift(c)):(a[d]=a[d]||[]).push(c)}}function Nb(a,b,c,d){var e={},f=a===Jb;function g(h){var i;return e[h]=!0,r.each(a[h]||[],function(a,h){var j=h(b,c,d);return"string"!=typeof j||f||e[j]?f?!(i=j):void 0:(b.dataTypes.unshift(j),g(j),!1)}),i}return g(b.dataTypes[0])||!e["*"]&&g("*")}function Ob(a,b){var c,d,e=r.ajaxSettings.flatOptions||{};for(c in b)void 0!==b[c]&&((e[c]?a:d||(d={}))[c]=b[c]);return d&&r.extend(!0,a,d),a}function Pb(a,b,c){var d,e,f,g,h=a.contents,i=a.dataTypes;while("*"===i[0])i.shift(),void 0===d&&(d=a.mimeType||b.getResponseHeader("Content-Type"));if(d)for(e in h)if(h[e]&&h[e].test(d)){i.unshift(e);break}if(i[0]in c)f=i[0];else{for(e in c){if(!i[0]||a.converters[e+" "+i[0]]){f=e;break}g||(g=e)}f=f||g}if(f)return f!==i[0]&&i.unshift(f),c[f]}function Qb(a,b,c,d){var e,f,g,h,i,j={},k=a.dataTypes.slice();if(k[1])for(g in a.converters)j[g.toLowerCase()]=a.converters[g];f=k.shift();while(f)if(a.responseFields[f]&&(c[a.responseFields[f]]=b),!i&&d&&a.dataFilter&&(b=a.dataFilter(b,a.dataType)),i=f,f=k.shift())if("*"===f)f=i;else if("*"!==i&&i!==f){if(g=j[i+" "+f]||j["* "+f],!g)for(e in j)if(h=e.split(" "),h[1]===f&&(g=j[i+" "+h[0]]||j["* "+h[0]])){g===!0?g=j[e]:j[e]!==!0&&(f=h[0],k.unshift(h[1]));break}if(g!==!0)if(g&&a["throws"])b=g(b);else try{b=g(b)}catch(l){return{state:"parsererror",error:g?l:"No conversion from "+i+" to "+f}}}return{state:"success",data:b}}r.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:tb.href,type:"GET",isLocal:Fb.test(tb.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Kb,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":r.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(a,b){return b?Ob(Ob(a,r.ajaxSettings),b):Ob(r.ajaxSettings,a)},ajaxPrefilter:Mb(Ib),ajaxTransport:Mb(Jb),ajax:function(b,c){"object"==typeof b&&(c=b,b=void 0),c=c||{};var e,f,g,h,i,j,k,l,m,n,o=r.ajaxSetup({},c),p=o.context||o,q=o.context&&(p.nodeType||p.jquery)?r(p):r.event,s=r.Deferred(),t=r.Callbacks("once memory"),u=o.statusCode||{},v={},w={},x="canceled",y={readyState:0,getResponseHeader:function(a){var b;if(k){if(!h){h={};while(b=Eb.exec(g))h[b[1].toLowerCase()]=b[2]}b=h[a.toLowerCase()]}return null==b?null:b},getAllResponseHeaders:function(){return k?g:null},setRequestHeader:function(a,b){return null==k&&(a=w[a.toLowerCase()]=w[a.toLowerCase()]||a,v[a]=b),this},overrideMimeType:function(a){return null==k&&(o.mimeType=a),this},statusCode:function(a){var b;if(a)if(k)y.always(a[y.status]);else for(b in a)u[b]=[u[b],a[b]];return this},abort:function(a){var b=a||x;return e&&e.abort(b),A(0,b),this}};if(s.promise(y),o.url=((b||o.url||tb.href)+"").replace(Hb,tb.protocol+"//"),o.type=c.method||c.type||o.method||o.type,o.dataTypes=(o.dataType||"*").toLowerCase().match(L)||[""],null==o.crossDomain){j=d.createElement("a");try{j.href=o.url,j.href=j.href,o.crossDomain=Lb.protocol+"//"+Lb.host!=j.protocol+"//"+j.host}catch(z){o.crossDomain=!0}}if(o.data&&o.processData&&"string"!=typeof o.data&&(o.data=r.param(o.data,o.traditional)),Nb(Ib,o,c,y),k)return y;l=r.event&&o.global,l&&0===r.active++&&r.event.trigger("ajaxStart"),o.type=o.type.toUpperCase(),o.hasContent=!Gb.test(o.type),f=o.url.replace(Cb,""),o.hasContent?o.data&&o.processData&&0===(o.contentType||"").indexOf("application/x-www-form-urlencoded")&&(o.data=o.data.replace(Bb,"+")):(n=o.url.slice(f.length),o.data&&(f+=(vb.test(f)?"&":"?")+o.data,delete o.data),o.cache===!1&&(f=f.replace(Db,"$1"),n=(vb.test(f)?"&":"?")+"_="+ub++ +n),o.url=f+n),o.ifModified&&(r.lastModified[f]&&y.setRequestHeader("If-Modified-Since",r.lastModified[f]),r.etag[f]&&y.setRequestHeader("If-None-Match",r.etag[f])),(o.data&&o.hasContent&&o.contentType!==!1||c.contentType)&&y.setRequestHeader("Content-Type",o.contentType),y.setRequestHeader("Accept",o.dataTypes[0]&&o.accepts[o.dataTypes[0]]?o.accepts[o.dataTypes[0]]+("*"!==o.dataTypes[0]?", "+Kb+"; q=0.01":""):o.accepts["*"]);for(m in o.headers)y.setRequestHeader(m,o.headers[m]);if(o.beforeSend&&(o.beforeSend.call(p,y,o)===!1||k))return y.abort();if(x="abort",t.add(o.complete),y.done(o.success),y.fail(o.error),e=Nb(Jb,o,c,y)){if(y.readyState=1,l&&q.trigger("ajaxSend",[y,o]),k)return y;o.async&&o.timeout>0&&(i=a.setTimeout(function(){y.abort("timeout")},o.timeout));try{k=!1,e.send(v,A)}catch(z){if(k)throw z;A(-1,z)}}else A(-1,"No Transport");function A(b,c,d,h){var j,m,n,v,w,x=c;k||(k=!0,i&&a.clearTimeout(i),e=void 0,g=h||"",y.readyState=b>0?4:0,j=b>=200&&b<300||304===b,d&&(v=Pb(o,y,d)),v=Qb(o,v,y,j),j?(o.ifModified&&(w=y.getResponseHeader("Last-Modified"),w&&(r.lastModified[f]=w),w=y.getResponseHeader("etag"),w&&(r.etag[f]=w)),204===b||"HEAD"===o.type?x="nocontent":304===b?x="notmodified":(x=v.state,m=v.data,n=v.error,j=!n)):(n=x,!b&&x||(x="error",b<0&&(b=0))),y.status=b,y.statusText=(c||x)+"",j?s.resolveWith(p,[m,x,y]):s.rejectWith(p,[y,x,n]),y.statusCode(u),u=void 0,l&&q.trigger(j?"ajaxSuccess":"ajaxError",[y,o,j?m:n]),t.fireWith(p,[y,x]),l&&(q.trigger("ajaxComplete",[y,o]),--r.active||r.event.trigger("ajaxStop")))}return y},getJSON:function(a,b,c){return r.get(a,b,c,"json")},getScript:function(a,b){return r.get(a,void 0,b,"script")}}),r.each(["get","post"],function(a,b){r[b]=function(a,c,d,e){return r.isFunction(c)&&(e=e||d,d=c,c=void 0),r.ajax(r.extend({url:a,type:b,dataType:e,data:c,success:d},r.isPlainObject(a)&&a))}}),r._evalUrl=function(a){return r.ajax({url:a,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,"throws":!0})},r.fn.extend({wrapAll:function(a){var b;return this[0]&&(r.isFunction(a)&&(a=a.call(this[0])),b=r(a,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstElementChild)a=a.firstElementChild;return a}).append(this)),this},wrapInner:function(a){return r.isFunction(a)?this.each(function(b){r(this).wrapInner(a.call(this,b))}):this.each(function(){var b=r(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=r.isFunction(a);return this.each(function(c){r(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(a){return this.parent(a).not("body").each(function(){r(this).replaceWith(this.childNodes)}),this}}),r.expr.pseudos.hidden=function(a){return!r.expr.pseudos.visible(a)},r.expr.pseudos.visible=function(a){return!!(a.offsetWidth||a.offsetHeight||a.getClientRects().length)},r.ajaxSettings.xhr=function(){try{return new a.XMLHttpRequest}catch(b){}};var Rb={0:200,1223:204},Sb=r.ajaxSettings.xhr();o.cors=!!Sb&&"withCredentials"in Sb,o.ajax=Sb=!!Sb,r.ajaxTransport(function(b){var c,d;if(o.cors||Sb&&!b.crossDomain)return{send:function(e,f){var g,h=b.xhr();if(h.open(b.type,b.url,b.async,b.username,b.password),b.xhrFields)for(g in b.xhrFields)h[g]=b.xhrFields[g];b.mimeType&&h.overrideMimeType&&h.overrideMimeType(b.mimeType),b.crossDomain||e["X-Requested-With"]||(e["X-Requested-With"]="XMLHttpRequest");for(g in e)h.setRequestHeader(g,e[g]);c=function(a){return function(){c&&(c=d=h.onload=h.onerror=h.onabort=h.onreadystatechange=null,"abort"===a?h.abort():"error"===a?"number"!=typeof h.status?f(0,"error"):f(h.status,h.statusText):f(Rb[h.status]||h.status,h.statusText,"text"!==(h.responseType||"text")||"string"!=typeof h.responseText?{binary:h.response}:{text:h.responseText},h.getAllResponseHeaders()))}},h.onload=c(),d=h.onerror=c("error"),void 0!==h.onabort?h.onabort=d:h.onreadystatechange=function(){4===h.readyState&&a.setTimeout(function(){c&&d()})},c=c("abort");try{h.send(b.hasContent&&b.data||null)}catch(i){if(c)throw i}},abort:function(){c&&c()}}}),r.ajaxPrefilter(function(a){a.crossDomain&&(a.contents.script=!1)}),r.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(a){return r.globalEval(a),a}}}),r.ajaxPrefilter("script",function(a){void 0===a.cache&&(a.cache=!1),a.crossDomain&&(a.type="GET")}),r.ajaxTransport("script",function(a){if(a.crossDomain){var b,c;return{send:function(e,f){b=r(" openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/search.html0000666000175100017510000000226313227213640027476 0ustar zuulzuul00000000000000{# basic/search.html ~~~~~~~~~~~~~~~~~ Template for the search page. :copyright: Copyright 2007-2016 by the Sphinx team, see AUTHORS. :license: BSD, see LICENSE for details. #} {% extends "layout.html" %} {% set title = _('Search') %} {% block extrahead %} {{ super() }} {% endblock %} {% block body %}

{% trans %}Please activate JavaScript to enable the search functionality.{% endtrans %}

{% trans %}To search the documentation for {{ project }}, type your query into the box below and press Enter.{% endtrans %}

{% endblock %} {% block script_footer %} {% endblock %} openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/layout.html0000666000175100017510000001021013227213640027535 0ustar zuulzuul00000000000000 {% block header %}{% endblock %} OpenStack Docs: {{ title }} {{ metatags }} {% include 'css.html' %} {%- for cssfile in css_files %} {%- endfor %} {# FAVICON #} {% if favicon %} {% endif %} {% if theme_analytics_tracking_code %} {% endif %} {% include 'header.html' %}
{% include 'titlerow.html' %}
{% block body %}{% endblock %}
{% if prev %} {% endif %} {% if next %} {% endif %} {%- if bug_project %} {% endif %}
{% include 'license_cc.html' %}
{%- if bug_project %} found an error? report a bug {%- endif %} questions?
{% include 'sidebartoc.html' %}
{% include 'footer.html' %} {% include 'script_footer.html' %} {% block script_footer %}{% endblock %} openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/sidebartoc.html0000666000175100017510000000162213227213640030346 0ustar zuulzuul00000000000000
{%- if theme_sidebar_dropdown == 'api_ref' %} {% include 'sidebartoc_menu_apiref.html' %} {%- else %} {% include 'sidebartoc_menu.html' %} {%- endif %}

{{project}} {{version}}

{%- if theme_sidebar_mode == 'toc' %} {{ toc }} {%- elif theme_sidebar_mode == 'toctree' %} {{ toctree(maxdepth=2) }} {%- endif %}
{% include 'localtoc.html' %}
openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/swiftype_search.html0000666000175100017510000000022513227213640031424 0ustar zuulzuul00000000000000
openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/localtoc.html0000666000175100017510000000044613227213640030032 0ustar zuulzuul00000000000000{%- if theme_sidebar_mode == 'toctree' and theme_display_toc and display_toc %}

Page Contents

{{ toc }}
{%- endif %} openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/header.html0000666000175100017510000002145113227213640027461 0ustar zuulzuul00000000000000{% if page_source_suffix %}{# an input file was read #} {% else %}{# a template was rendered directly #} {% endif %} {% include 'swiftype_search_install.html' %} openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/sidebartoc_menu.html0000666000175100017510000000470413227213640031376 0ustar zuulzuul00000000000000 openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/theme.conf0000666000175100017510000000040113227213640027304 0ustar zuulzuul00000000000000[theme] inherit = basic stylesheet = css/basic.css pygments_style = native [options] analytics_tracking_code = UA-17511903-1 sidebar_mode = toctree display_toc = True sidebar_dropdown = os_docs show_other_versions = False earliest_published_series = mitakaopenstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/swiftype_search_mobile.html0000666000175100017510000000017213227213640032754 0ustar zuulzuul00000000000000
  • openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/sidebartoc_menu_apiref.html0000666000175100017510000000514713227213640032726 0ustar zuulzuul00000000000000 openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/titlerow.html0000666000175100017510000000156213227213640030103 0ustar zuulzuul00000000000000
    {%- if theme_sidebar_dropdown == 'os_docs' %}

    {{ title }}

    {% else %}

    OpenStack API Documentation

    {%- endif %}
    {% if prev %} {% endif %} {% if next %} {% endif %} {%- if bug_project %} {% endif %}
    openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/script_footer.html0000666000175100017510000000604213227213640031112 0ustar zuulzuul00000000000000 openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs/license_cc.html0000666000175100017510000000065413227213640030322 0ustar zuulzuul00000000000000 Creative Commons Attribution 3.0 License

    Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.

    openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs_pdf/0000775000175100017510000000000013227214134026166 5ustar zuulzuul00000000000000openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs_pdf/pdftheme.sty0000666000175100017510000000341713227213640030533 0ustar zuulzuul00000000000000\makeatletter % Do not print release information if empty % Note: Sphinx does support version variable in conf.py to latex yet \def \ifempty#1{\def\temp{#1} \ifx\temp\empty } \renewcommand{\release}[1]{ \ifempty{#1} \newcommand{\osreleasetitle}{} \newcommand{\osreleaseheader}{} \else \newcommand{\osreleasetitle}{\LARGE Release Version: #1\newline} \newcommand{\osreleaseheader}{\space\small\nouppercase{(Release Version: #1)}} \fi } % Defines title page \renewcommand{\maketitle}{ \begin{titlepage} \begin{flushleft} \includegraphics[width=3.5cm, height=0.8cm]{\openstacklogo} \end{flushleft} \vskip 6em% \begin{center} % Document title {\Huge \textbf \@title} \end{center} \begin{flushright} % Expect align right but center \vskip 2em% % RELEASE VERSION {\osreleasetitle} \end{flushright} \vskip 6em% \begin{flushright} % Author {\LARGE \@author} \vskip 20em% % Creation date {\Large \@date} \end{flushright} \end{titlepage} } % Customizes page header & footer for OpenStack \fancypagestyle{normal}{ \fancyhf{} \fancyfoot[LE,RO]{{\py@HeaderFamily\thepage}} \fancyfoot[RE,LO]{{\py@HeaderFamily\nouppercase\rightmark}} \fancyhead[LE,RO]{{\py@HeaderFamily\@title\osreleaseheader}} \fancyhead[RE,LO]{{\py@HeaderFamily\includegraphics[width=3.5cm, height=0.8cm]{\openstacklogo}}} } % Customizes colors \definecolor{VerbatimColor}{rgb}{.95,.95,.95} % Do not use chapter and section number \setcounter{secnumdepth}{-1} % Font selection (English) \usepackage{fontspec} \defaultfontfeatures{Scale=MatchLowercase} \setmainfont{Liberation Serif} \setsansfont{Liberation Sans} \setmonofont[SmallCapsFont={Liberation Mono}]{Liberation Mono} openstackdocstheme-1.18.1/openstackdocstheme/theme/openstackdocs_pdf/openstack-logo-full.png0000666000175100017510000000165113227213640032567 0ustar zuulzuul00000000000000PNG  IHDR#jpIDATx[ˍ0 |%@.%uTKp p *,x %;O;IQ BP( ūO} '@qקv1Q&GP}!F8\RHiVr(9J>&2!Gv?kMrw .a d=viomnkiL0Q9nk}Gў8G_* ef0 B@+fMic 1uSHȴ XA[<wGƂ p'9c|+/Ŀ77B֒29X nb83sFs:gv?NwpLi\- 3е 9ClC +'QVG!G@l vS̜P9{'17y 9Zw*!}9fnG@lԘL v΂P25 i+gJaP0zް9@T!GŎfQs`XLI*ȑ.CT3z:*̝IHJ/Is<=30'SA1<ٜc.TiiQaCHr oL%3gN=Hi\8O 9܁:T"y=GFaeFjJ 3,sBle qWBZabMrp2a #%F)UHKzG5%ҾGO[~C8;bA2ap`w/`0ԃ;$Gw̦I=+%Bɡ$9ɑir!~\Q$ߊBP( BgIENDB`openstackdocstheme-1.18.1/README.rst0000666000175100017510000000173213227213640017205 0ustar zuulzuul00000000000000======================== Team and repository tags ======================== .. image:: https://governance.openstack.org/tc/badges/openstackdocstheme.svg :target: https://governance.openstack.org/tc/reference/tags/index.html .. Change things from this point on OpenStack docs.openstack.org Sphinx Theme ========================================= Theme and extension support for Sphinx documentation that is published to docs.openstack.org and developer.openstack.org. Intended for use by OpenStack `projects governed by the Technical Committee`_. .. _`projects governed by the Technical Committee`: https://governance.openstack.org/tc/reference/projects/index.html * Free software: Apache License, Version 2.0 * Documentation: https://docs.openstack.org/openstackdocstheme/latest/ * Release notes: https://docs.openstack.org/releasenotes/openstackdocstheme/ * Source: https://git.openstack.org/cgit/openstack/openstackdocstheme * Bugs: https://launchpad.net/openstack-doc-tools openstackdocstheme-1.18.1/index.rst0000666000175100017510000000154013227213640017354 0ustar zuulzuul00000000000000.. os-doc-demo documentation master file, created by sphinx-quickstart on Tue Jan 20 08:22:27 2015. You can adapt this file completely to your liking, but it should at least contain the root `toctree` directive. Demo documentation ================== The project is an open source cloud computing platform that supports all types of cloud environments. The project aims for simple implementation, massive scalability, and a rich set of features. Cloud computing experts from around the world contribute to the project. Here's an example configuration:: [DEFAULT] ... my_ip = 10.0.0.31 vnc_enabled = True vncserver_listen = 0.0.0.0 vncserver_proxyclient_address = 10.0.0.31 novncproxy_base_url = http://controller:6080/vnc_auto.html ..note:: Here's an example note. Developer Guide =============== Information on Nova's lower level programming APIs. openstackdocstheme-1.18.1/bindep.txt0000666000175100017510000000215013227213663017520 0ustar zuulzuul00000000000000# This is a cross-platform list tracking distribution packages needed by tests; # see https://docs.openstack.org/infra/bindep/ for additional information. fonts-lmodern [platform:dpkg] fonts-liberation [platform:dpkg] libxml2-dev [platform:dpkg] libxml2-devel [platform:rpm] libxml2-utils [platform:dpkg] libxslt-devel [platform:rpm] libxslt1-dev [platform:dpkg] python-dev [platform:dpkg] python3-all [platform:dpkg !platform:ubuntu-precise] python3-all-dev [platform:dpkg !platform:ubuntu-precise] python3-devel [platform:fedora] python34-devel [platform:centos] zlib-devel [platform:rpm] zlib1g-dev [platform:dpkg] inkscape texlive-latex-base [platform:dpkg] texlive-latex-extra [platform:dpkg] texlive-xetex [platform:dpkg] texlive-fonts-recommended [platform:dpkg] latexmk [platform:dpkg] texlive [platform:rpm] texlive-fncychap [platform:rpm] texlive-titlesec [platform:rpm] texlive-tabulary [platform:rpm] texlive-framed [platform:rpm] texlive-wrapfig [platform:rpm] texlive-upquote [platform:rpm] texlive-capt-of [platform:rpm] texlive-needspace [platform:rpm] texlive-polyglossia [platform:rpm] latexmk [platform:rpm] openstackdocstheme-1.18.1/doc/0000775000175100017510000000000013227214134016255 5ustar zuulzuul00000000000000openstackdocstheme-1.18.1/doc/requirements.txt0000666000175100017510000000075113227213640021547 0ustar zuulzuul00000000000000# The order of packages is significant, because pip processes them in the order # of appearance. Changing the order has an impact on the overall integration # process, which may cause wedges in the gate later. # Notes: # reno needs openstackdocstheme which needs reno (cycle dep). # os-api-ref needs openstackdocstheme which needs os-api-ref (cycle dep). # Put them in here will make it clear that those are only needed for # docs. os-api-ref>=1.4.0 # Apache-2.0 reno>=2.5.0 # Apache-2.0 openstackdocstheme-1.18.1/doc/source/0000775000175100017510000000000013227214134017555 5ustar zuulzuul00000000000000openstackdocstheme-1.18.1/doc/source/conf.py0000666000175100017510000002343413227213640021065 0ustar zuulzuul00000000000000# -*- coding: utf-8 -*- # # os-doc-demo documentation build configuration file, created by # sphinx-quickstart on Tue Jan 20 08:22:27 2015. # # This file is execfile()d with the current directory set to its # containing dir. # # Note that not all possible configuration values are present in this # autogenerated file. # # All configuration values have a default; values that are commented out # serve to show the default. # import os import openstackdocstheme # If extensions (or modules to document with autodoc) are in another directory, # add these directories to sys.path here. If the directory is relative to the # documentation root, use os.path.abspath to make it absolute, like shown here. #sys.path.insert(0, os.path.abspath('.')) # Release name for PDF documents latex_custom_template = r""" \usepackage{""" + openstackdocstheme.get_pdf_theme_path() + """} \\newcommand{\openstacklogo}{""" + openstackdocstheme.get_openstack_logo_path() + """} """ # -- General configuration ------------------------------------------------ # If your documentation needs a minimal Sphinx version, state it here. #needs_sphinx = '1.0' # Add any Sphinx extension module names here, as strings. They can be # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom # ones. extensions = ['openstackdocstheme'] # openstackdocstheme options repository_name = 'openstack/openstackdocstheme' bug_project = 'openstack-doc-tools' bug_tag = 'openstackdocstheme' # Add any paths that contain templates here, relative to this directory. # templates_path = ['_templates'] # The suffix of source filenames. source_suffix = '.rst' # The encoding of source files. #source_encoding = 'utf-8-sig' # The master toctree document. master_doc = 'index' # "project" contains the name of the book, such as # 'security guide' or 'network guide' # It's used by the "log-a-bug" button on each page # and should ultimately be set automatically by the build process project = u'OpenStack Documentation Theme' copyright = u'2015-2017, OpenStack Contributors' # The version info for the project you're documenting, acts as replacement for # |version| and |release|, also used in various other places throughout the # built documents. # # "version" and "release" are used by the "log-a-bug" feature # # The short X.Y version. #version = '1.0' # The full version, including alpha/beta/rc tags. #release = '1.0' # The version info for the project you're documenting, acts as replacement for # |version| and |release|, also used in various other places throughout the # built documents. # from openstackdocstheme.version import version_info # The full version, including alpha/beta/rc tags. release = version_info.release_string() # The short X.Y version. version = version_info.version_string() # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. #language = None # There are two options for replacing |today|: either, you set today to some # non-false value, then it is used: #today = '' # Else, today_fmt is used as the format for a strftime call. #today_fmt = '%B %d, %Y' # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. exclude_patterns = ['_build'] # The reST default role (used for this markup: `text`) to use for all # documents. #default_role = None # If true, '()' will be appended to :func: etc. cross-reference text. #add_function_parentheses = True # If true, the current module name will be prepended to all description # unit titles (such as .. function::). #add_module_names = True # If true, sectionauthor and moduleauthor directives will be shown in the # output. They are ignored by default. #show_authors = False # The name of the Pygments (syntax highlighting) style to use. pygments_style = 'sphinx' # A list of ignored prefixes for module index sorting. #modindex_common_prefix = [] # If true, keep warnings as "system message" paragraphs in the built documents. #keep_warnings = False # -- Options for HTML output ---------------------------------------------- # The theme to use for HTML and HTML Help pages. See the documentation for # a list of builtin themes. html_theme = 'openstackdocs' # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the # documentation. # To use the API Reference sidebar dropdown menu, # uncomment the html_theme_options parameter. The theme # variable, sidebar_dropdown, should be set to `api_ref`. # Otherwise, the list of links for the User and Ops docs # appear in the sidebar dropdown menu. #html_theme_options = {"sidebar_dropdown": "api_ref"} html_theme_options = {'show_other_versions': True} # Add any paths that contain custom themes here, relative to this directory. # html_theme_path = [] # The name for this set of Sphinx documents. If None, it defaults to # " v documentation". #html_title = None # A shorter title for the navigation bar. Default is the same as html_title. #html_short_title = None # The name of an image file (relative to this directory) to place at the top # of the sidebar. #html_logo = None # The name of an image file (within the static path) to use as favicon of the # docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 # pixels large. #html_favicon = None # Add any paths that contain custom static files (such as style sheets) here, # relative to this directory. They are copied after the builtin static files, # so a file named "default.css" will overwrite the builtin "default.css". html_static_path = ['_static/css'] # Add any extra paths that contain custom files (such as robots.txt or # .htaccess) here, relative to this directory. These files are copied # directly to the root of the documentation. #html_extra_path = [] # If not '', a 'Last updated on:' timestamp is inserted at every page bottom, # using the given strftime format. #html_last_updated_fmt = '%b %d, %Y' # So that we can enable "log-a-bug" links from each output HTML page, this # variable must be set to a format that includes year, month, day, hours and # minutes. html_last_updated_fmt = '%Y-%m-%d %H:%M' # If true, SmartyPants will be used to convert quotes and dashes to # typographically correct entities. #html_use_smartypants = True # Custom sidebar templates, maps document names to template names. #html_sidebars = {} # Additional templates that should be rendered to pages, maps page names to # template names. #html_additional_pages = {} # If false, no module index is generated. #html_domain_indices = True # If false, no index is generated. #html_use_index = True # If true, the index is split into individual pages for each letter. #html_split_index = False # If true, links to the reST sources are added to the pages. #html_show_sourcelink = True # If true, "Created using Sphinx" is shown in the HTML footer. Default is True. #html_show_sphinx = True # If true, "(C) Copyright ..." is shown in the HTML footer. Default is True. #html_show_copyright = True # If true, an OpenSearch description file will be output, and all pages will # contain a tag referring to it. The value of this option must be the # base URL from which the finished HTML is served. #html_use_opensearch = '' # This is the file name suffix for HTML files (e.g. ".xhtml"). #html_file_suffix = None # Output file base name for HTML help builder. htmlhelp_basename = 'os-doc-demodoc' # -- Options for LaTeX output --------------------------------------------- latex_engine = 'xelatex' latex_elements = { # The paper size ('letterpaper' or 'a4paper'). 'papersize': 'a4paper', # The font size ('10pt', '11pt' or '12pt'). 'pointsize': '11pt', #Default figure align 'figure_align': 'H', # Not to generate blank page after chapter 'classoptions': ',openany', # Additional stuff for the LaTeX preamble. 'preamble': latex_custom_template, } # Grouping the document tree into LaTeX files. List of tuples # (source start file, target name, title, # author, documentclass [howto, manual, or own class]). latex_documents = [ ('index', 'os-doc-demo.tex', u'os-doc-demo Documentation', u'OpenStack Contributors', 'manual'), ] # The name of an image file (relative to this directory) to place at the top of # the title page. #latex_logo = None # For "manual" documents, if this is true, then toplevel headings are parts, # not chapters. #latex_use_parts = False # If true, show page references after internal links. #latex_show_pagerefs = False # If true, show URL addresses after external links. #latex_show_urls = False # Documents to append as an appendix to all manuals. #latex_appendices = [] # If false, no module index is generated. #latex_domain_indices = True # -- Options for manual page output --------------------------------------- # One entry per manual page. List of tuples # (source start file, name, description, authors, manual section). man_pages = [ ('index', 'os-doc-demo', u'os-doc-demo Documentation', [u'OpenStack Contributors'], 1) ] # If true, show URL addresses after external links. #man_show_urls = False # -- Options for Texinfo output ------------------------------------------- # Grouping the document tree into Texinfo files. List of tuples # (source start file, target name, title, author, # dir menu entry, description, category) texinfo_documents = [ ('index', 'os-doc-demo', u'os-doc-demo Documentation', u'OpenStack Contributors', 'os-doc-demo', 'One line description of project.', 'Miscellaneous'), ] # Documents to append as an appendix to all manuals. #texinfo_appendices = [] # If false, no module index is generated. #texinfo_domain_indices = True # How to display URL addresses: 'footnote', 'no', or 'inline'. #texinfo_show_urls = 'footnote' # If true, do not generate a @detailmenu in the "Top" node's menu. #texinfo_no_detailmenu = False openstackdocstheme-1.18.1/doc/source/demo/0000775000175100017510000000000013227214134020501 5ustar zuulzuul00000000000000openstackdocstheme-1.18.1/doc/source/demo/section_dashboard_access_and_security.rst0000666000175100017510000001551313227213640031010 0ustar zuulzuul00000000000000Configure access and security for instances =========================================== Before you launch an instance, you should add security group rules to enable users to ping and use SSH to connect to the instance. Security groups are sets of IP filter rules that define networking access and are applied to all instances within a project. To do so, you either `add rules to the default security group <#add-a-rule-to-the-default-security-group>`__ or add a new security group with rules. Key pairs are SSH credentials that are injected into an instance when it is launched. To use key pair injection, the image that the instance is based on must contain the ``cloud-init`` package. Each project should have at least one key pair. For more information, see `import a key pair <#import-a-key-pair>`__. If you have generated a key pair with an external tool, you can import it into OpenStack. The key pair can be used for multiple instances that belong to a project. For more information, see ? (TODO!). When an instance is created in OpenStack, it is automatically assigned a fixed IP address in the network to which the instance is assigned. This IP address is permanently associated with the instance until the instance is terminated. However, in addition to the fixed IP address, a floating IP address can also be attached to an instance. Unlike fixed IP addresses, floating IP addresses are able to have their associations modified at any time, regardless of the state of the instances involved. Add a rule to the default security group ---------------------------------------- This procedure enables SSH and ICMP (ping) access to instances. The rules apply to all instances within a given project, and should be set for every project unless there is a reason to prohibit SSH or ICMP access to the instances. This procedure can be adjusted as necessary to add additional security group rules to a project, if your cloud requires them. .. note:: When adding a rule, you must specify the protocol used with the destination port or source port. #. Log in to the dashboard, choose a project, and click :guilabel:`Access & Security`. The :guilabel:`Security Groups` tab shows the security groups that are available for this project. #. Select the default security group and click :guilabel:`Edit Rules`. #. To allow SSH access, click :guilabel:`Add Rule`. #. In the :guilabel:`Add Rule` dialog box, enter the following values: +----------+-----------------+ | Rule | ``SSH`` | +----------+-----------------+ | Remote | ``CIDR`` | +----------+-----------------+ | CIDR | ``0.0.0.0/0`` | +----------+-----------------+ .. note:: To accept requests from a particular range of IP addresses, specify the IP address block in the CIDR box. #. Click :guilabel:`Add`. Instances will now have SSH port 22 open for requests from any IP address. #. To add an ICMP rule, click :guilabel:`Add Rule`. #. In the :guilabel:`Add Rule` dialog box, enter the following values: +-------------+-----------------+ | Rule | ``All ICMP`` | +-------------+-----------------+ | Direction | ``Ingress`` | +-------------+-----------------+ | Remote | ``CIDR`` | +-------------+-----------------+ | CIDR | ``0.0.0.0/0`` | +-------------+-----------------+ #. Click :guilabel:`Add`. Instances will now accept all incoming ICMP packets. Add a key pair -------------- Create at least one key pair for each project. #. Log in to the dashboard, choose a project, and click :guilabel:`Access & Security`. #. Click the :guilabel:`Keypairs` tab, which shows the key pairs that are available for this project. #. Click :guilabel:`Create Keypair`. #. In the :guilabel:`Create Keypair` dialog box, enter a name for your key pair, and click :guilabel:`Create Keypair`. #. Respond to the prompt to download the key pair. Import a key pair ----------------- #. Log in to the dashboard, choose a project, and click :guilabel:`Access & Security`. #. Click the :guilabel:`Keypairs` tab, which shows the key pairs that are available for this project. #. Click :guilabel:`Import Keypair`. #. In the :guilabel:`Import Keypair` dialog box, enter the name of your key pair, copy the public key into the :guilabel:`Public Key` box, and then click :guilabel:`Import Keypair`. #. Save the ``*.pem`` file locally. #. To change its permissions so that only you can read and write to the file, run the following command:: $ chmod 0600 yourPrivateKey.pem .. note:: If you are using the dashboard from a Windows computer, use PuTTYgen to load the ``*.pem`` file and convert and save it as ``*.ppk``. For more information see the `WinSCP web page for PuTTYgen `__. #. To make the key pair known to SSH, run the ``ssh-add`` command:: $ ssh-add yourPrivateKey.pem The Compute database registers the public key of the key pair. The dashboard lists the key pair on the :guilabel:`Access & Security` tab. Allocate a floating IP address to an instance --------------------------------------------- When an instance is created in OpenStack, it is automatically assigned a fixed IP address in the network to which the instance is assigned. This IP address is permanently associated with the instance until the instance is terminated. However, in addition to the fixed IP address, a floating IP address can also be attached to an instance. Unlike fixed IP addresses, floating IP addresses can have their associations modified at any time, regardless of the state of the instances involved. This procedure details the reservation of a floating IP address from an existing pool of addresses and the association of that address with a specific instance. #. Log in to the dashboard, choose a project, and click :guilabel:`Access & Security`. #. Click the :guilabel:`Floating IPs` tab, which shows the floating IP addresses allocated to instances. #. Click :guilabel:`Allocate IP to Project`. #. Choose the pool from which to pick the IP address. #. Click :guilabel:`Allocate IP`. #. In the :guilabel:`Floating IPs` list, click :guilabel:`Associate`. #. In the :guilabel:`Manage Floating IP Associations` dialog box, choose the following options: * The :guilabel:`IP Address field` is filled automatically, but you can add a new IP address by clicking the :guilabel:`+` button. * In the :guilabel:`Ports to be associated` field, select a port from the list. The list shows all the instances with their fixed IP addresses. #. Click :guilabel:`Associate`. .. note:: To disassociate an IP address from an instance, click the :guilabel:`Disassociate` button. To release the floating IP address back into the pool of addresses, click the :guilabel:`More` button and select the :guilabel:`Release Floating IP` option. openstackdocstheme-1.18.1/doc/source/demo/figures/0000775000175100017510000000000013227214134022145 5ustar zuulzuul00000000000000openstackdocstheme-1.18.1/doc/source/demo/figures/dashboard-project-tab.png0000666000175100017510000022173213227213640027024 0ustar zuulzuul00000000000000PNG  IHDR4JSsBITO pHYs+ IDATxwt}8{n `'E$2E˒,ӱlIѳc;Nl%bEI(")@l6?."\T~?"vggwN0qn#d;p'A!BF}aGgss`4Ml7vCD4m[qƘan\NA M#JTL(ш iJjɄ(9T%c1}Y-ò~!h4a!vwt7zF3訪m=;Ab/Ӿ#o'[ Y"4EM$hDD\K0B4~#Nn",.Y^Vt:~22lܸ/) P* VuBH$1 Fq̎P(ih#$Ix<''gg:L&NHGyLX6;%.1YaAuwt:~R@H-8jsEs4(Nzڳcl0ɤ^_Bj;A5M4m<%AߒT:c1 ˲c faa3 ˲ 0 a-/;] ߇rsY$Fi-DJOir$:LX] <`̩cL)C#vBHiiiaat8v"RTGGG(+++5SUUeN7!I ) DU䤢$S;& htBxL!t2B -Dֹ2aGYczx'B~ ƍ7;#6ȍ n$gZ BHgggCCi˗/i Ν"\|YQ00pG/dڄ bre$;65)r㐦UE m6[2Dc{{{E).."!$ ˲L"ɘzjQCPcc$Iz㸜J՚Cїth4IL fwiJ*),b>[XGFNOҩK-4-(iE`,oWӴf۽yfUU9rJ|>닋ϝ;XZZjۻ-Znݺ'O655 0$I9996m$ɓ^wppi^ '!doEĩGv? LaopݝniN^ׯ]ŢH5LvctX3jp+-3>2ZபcǺ2.FGG_yŖ-[yw}aecn$)J=Ӣ(ɲ\XX/cl6KUU #!VQV:!2[wʸkԻ{{{sssiK/_~Vz~htҦMJxG\L@\qa*C#EQz}IQ{,[_=YV2,8h4[X,Fa&beϯ_^G"M6h4*B wTEQvJsO.pO hZZQ<*y+|c0!$LD05ET1dp2I&˖-+++#644twwWTTe ڵkfn~z |fڵkڂ2<<DN'Bŋ/ZHQ+Wb1Ȋχ*řs1[0Y+)E Cjx(ulyh@GI=ˬe󤸼DY&ϟq}+)EpJ3 ^xP{{K&.\ؼy3BhŊk֬>wuuO:Xn]NNL1͕]=};EԴ欻eY^bx`` G"כ[TTT]]ѱdɒp8(JooC=IJ;3Yԧ>HU՝;w1<ϗBFᲒ"~86.oBl6͛;::Bo`&mt=zT$QWZeX N8aheqc-Ɓ~^iɄ"oƸw;0F3i"n*| ӦC tҴh,,,H$JeYy>NGQ:w(vj,K!a.NWKb6!D#l˽ݪgDBBIM6mW/QF_3Rsvn0s;=KwlfIx7 v>n2 LA[-U!'l"7`9N?aE B<{ޢN4<}: _l׿\t3mYLeVbۏ;Ƅ|q5Lꩻ\=3#0#H"h0h|kEAc>lIӴLXt̀Qsss3e %EBgzs ӱM$ɰ1evȍ@7;ۄzqæų 0`?zn(2҈tEˬŵwr}>^ i=SO=zz}QQBh۶mGܹ3''b}Ob"B(_xrjY?: ]v]L]Cx4BXc!wbջ\~f1e5pID"ݲ,ʲ 7weY: Bb<=#H{?sQ1WRcG\Qq $zS&ajW8g1̍|>)l2?#Z8E#eIT[ZmviZ4xu U;hýp "P[XmRGW3YnvAp9`?e;hMqg{tLN4żEoDD\bR^"HִHZ&HV1c fQ v B, }>z`08N^v31?H"I:E0/)k$f9sHH8$W&q[0Ϗ:0vCi"Z8^j0g:i֍Ќ 0E} DwBQg$68T4 !yGjOd2QU-!9KyF,cQPk*rEb̸y9+++kooommgKyyytjLѣG󇆆tmmf/[ynw2Z5552cIJ?"^g ՞nmd_;l!I:I)qjl:t$[#i [^!lؔz`HW ܸ 4&7_AL{-d\uDB8F4GZ!$HЛR-X|.Y0T6c'#Y&˲H$ҩURIHD[ahs4j 42FXYvkt!'(ef~~u._|uq^^ކ l7o81vݪjV]]|r:&xÆ }}}}}}Lr8.3qu8UUYo(a.TOw%!dF@eKVq x!fxNMoja 1<ϰ<"D) bXf )(u[|p81v\VF׮];vXqqի鬑tR面(pt:a24M l6NGbhl6M&-R{{x "WZeBDUaZ$tk8vc(H(Z(9/`r5$l^>6[$iC$d\nfLqDْv lDs!P7=B5 :. *"81#BKT]X$ti( RB`MER) BH>O17I6>r=bYp0Lfr^BtQڸX9aB08X.\FC-(Fy))ڙo,0=9~ق1;#DcɄwfe9h0j75aTd1tHB0"HR>Z!?:6g !<9Ȓ%UUT, V̒wOHxaj;wa8N&1%U]Ukgtߦ~aހV7` 8r'L ˵p'sKW/]J?Ӑ!d0a ۝ȕtq1"CؐшaD Lzl>'T*5<`QDݍH E#߸]*ᶶn#L0[ p`lŹ\n!fv+T0Gyw<F,˳v(tА$IVbVzׯ3Yxl`Arĉ~;1 ò,Νg?7+ B1v t+W7t?A΅  {9Q*!eYȸ;:s 'Xz5sss|II.]:bYv7 0n{</"0Vl6=yyYQQq)[VVGq\555c`0_ҥK===K.D"Nl6l,3g"?q!544AAjkk+**8Ck׮\@ PVVյbŊ GGGϟ?[WWuڵ;vt:T*ݍ[vN#\v{n;{e-[df[[[ggUf`"nGׯ/]TӴOw5M#|/ggaM3%q (BHcǎL̈W_}uŊ4j?}}!6-{;vؽ{7˲X_wݪvuuUUUÇ'O<~_744|[lȯ~~˥|+:th4nݺ5ewEQ~a7n8^ݱTF=裄^{kxm۶twuuLxv~Q !ϟFk֬E㸕+W^~!>#4S/VU-NJ,62q̈́AMB(ן?gŊUׯ_4!x}]#N׿>wʕ+KKKm6Wjav755ٳGP:niilFwxh۝N BAK4-HR)FUn{0w1FydziXSWWn:PoooUUU}}}IIɯkEQp0okk!(a͚5F"Z^XX5c*K ƅyyr:TYY{'|@ # IDAT裏(*H8::(d0k׮=uԥK0׮]tɤ^+O&OF9u]vիq$]dI4mmm-//v}w M&ӳ>bYVLʓF`,aA2 C-Yp8j*bEEEõ `DQ,-*9\:3nSLzW_}ǭZjK/\eY7iHl6_r`l8H?$I4^TTD|Pׯ/[lddK,z`;z K,ٿkŖ,Y -KIIIKKH شiSaa_d2p8Ato[&cJ 119a+2 !Q6EEEmmmNsl;ׯ_o6iˢErq@ׯXb'Hl޼.sƻիTv׻\.j]dɉ'B=u'>q̙ݻw_z!TWWS`}p8hIXyyyO<`su֮h4f͚?q\UU(5MOSy 8777 ͎BBBv/Z3q6Ƙ"<08ph4e˖iaaTU]hђ%Knڵk?fsUUU:xbwwwKKKee";JxE㼼Lep{{ѕ wYm,0[n/O?ϲl"xɓ'm6[MMMfI֭[aF^ZEWYf]*f+\bX.]j$… VbY6 :uETVV?^:JJJnoFwؑ0SO}*S:?!th4]N~S+.Z'?PUuxxX%NWX__Dvy <DžB!裏(B(._^yclX***Ο?v+++yW̄&Nh4~=seY67n\hѸAnzqR O?r._!ŋlR^^Yc|kMUUҥK.]:qKnذSN"n>q}thݺu]]]/[0n!fMUeq6.0)4޺֠*!9Ƕc|EeЅ'CfE' f"i)}N+wZd o]`o `t#0@<,GGG5`:8 ޲YE4X,aNQnWyQ)`L!pWUu:Z#窆ymʲ<ۭ_r 6Nl7|6[ >`ywlָB!!z`AZ(˗O:Dy䑒osV+3%KL}>_mm- `jV*ȑ={^7 {t:=88z5MC B!GH&x<>88[ZZE!B~{-?NK4O<9񖖖hnn<~?t*ª^~~K_ׯO L2---eee=˲% ,n޼y͚5t!TPP/“O>Y\\ꫯ  xG.]/ٳg]]]G4pJ$͛7^~.IKЈ!\Z\;!ӏ<ȸ/^o~zRk۾}{MMM&Iӟm|}}=!z~[X`|:w~:qBOO>l2P~~;^|E})..FYG9uҥKǮaݻw_x7͇J$+W9{EVk|$0Bqz܇~xy_z. wcbA% T$kl,]VWWDn`(..㴦tZ,Q].by>SQZZ*bYYٸZKA+pdY2!DVA{{}cŋm67mڴw^,~o|c˖-ۻw/=kz饗o^WW7]Kjܗ,Y~垞Ç_|YUU=44xZZZl6[&WZZZn7BH@ ޞYV8ݻwXdS øBeuCpMQi>rʝ;w{ٓ'Ogej˖-&Ğ={]ZA]|>H& w*jll:+((سgO{{w;vսK ]U8o{̙;wXb߾}?Fݻ5M~A?::t:}_|q߾}a~oT*{:u pZƽbǏO$nZuuu/^G&^?X,=BԩS/_ˣ=z4//oÆ ~f0mFӺ-e\NGyi`ZJI>h>[_ٳgl2t駟~WjkkvO>Ko_޶mN{K***TU]z'?I^~ J3g$(ػw/˲g}6>S͛7]cq,taMDQ4LgEɬ9[od溜:naKJJ$IB9ƕ9MDiiOwywo߾뿮Kj!(%%%/^ fDI/F鳩T˲z=͸ɫV=q3n¼4!`'w8v~0Mrf"777>|ڱcnя~zo =ӧO]n@ pT&jvttJ53#4Mzz^1c_{NDB7o.//Zlhݺucǎ]re׮]Sps(栆Ljav?Ot.$=sX{^4]v-qW^=s̗eZ4vW_}__ :::V5kҪ87 bT*e2n]m۶빹eeeYo ^{GIu;;ݻ}>EQ|!ho򗿔e{G{|oF~~eUU9Hȱ.Y_~G}+_w:mkmv[Bgjnddeۦ? f,TW^uZz YXֻY p/T{EQ8n_| ]0uΝ{뭷?#vsMM8`p\t0%Ըg]* Ú=$<:et`fT p`yw p`Z٩iBe绗\pf%%I&v[tZ~̙}APSSӕ+Wn]fpp_`iĩ!o` -IOl$'OʲL$Ȳ|̙7xŋdܹs~… 筷x<o=tP$I&O>x`kkDb߾}.\l@ Riipxd`pH!0e3p_bE{{{GGSUC544ӧO8qy(uvvvvv^pOŃ^rEӴW_}M+Whvxxxyyyv=dYTUunj=ultD/ 555bkvuu-_\4544KJJ@ii)0O?tYYimmm]vҭ=z+W,/I! e3pY>xKJh!a/nݺ`0giD0Lt|ի'n֭[RŒS,˸"HS,tp3!DQƁ` xolâ8hЙf3q5x ڵkɒ%t:[]]m67o|!;Bc\^Zvu|+EQd4MR!AAtk*:~:+c1 (}bUN:W,p9LUUd""&)t9U ǨZT-K\n2 p;iL&cX"4~$G{\>t:Y`0L&8eR)ˊ^64q4WUU`0zy7F~2BH*x\eAx7 Ƙ7*S餂r[ƍr 'jY,722²dɢ9Ż\E|o0l6 6mk(b z9u%_ͮȌ]Ź\NwLMEQp4t:An˩Tcڭ+1 ČrcBSYt3JsX, B^XiI!/-O( 3D._|6D0`0hF{YgU #?/ǿ<8[4MD"~_9MlX[(hnn.UBH,|$KV: F"P(vF# qߏePO kSCO.w:C/CBH"c˕şkȑXz:LA&]r8qyT%x y3Uksrs\O"g.unGUU>+Fȭ'<ݬpR!r/HSb!e1qv=J|h4vFQߟL&iA8*_5?{ze8Wgw+s G B~ftiVRn~D"g6z}*>=Zڹ.:6qhhHӹ\i.^E18}c顡!z9eR&K#3Fd}bQE¾$>(P(ə_8O\j͌GӴ@ r;j(M&{zzĸ9AB^Ȉ鼗~ <&z5b4 ===X zyi@ NOAdzyttT46ÇipxtttjnS#+NhGGGg1[ UU8X,$wDz7/B'-m˜Ӂnv}dd2D4כJl6۽מyk\Nf Hzy:B~,*A6Ӂ^Qu:1tNTl1=G<| !pw`XK!HCw,53YFdffdbUVƔ2czx{zWޣz^`Ym: ˲@`2afG%M|YG=ςɩA Z$# UY?Ht,FdEq&{9@,3 c6tSFFfC{1l`P4L&t+lbT SN# 2ϐb6.r~䌓cJ5oZAT*@&ݕ))$)\:TW&y^9_ Лf:٬TX,a)4Y,w,c X5^w2_ixf #{TlЙ?:m>a6gw*xI) a&{ӫ o-jD"zLeH!#۔悼-јL&DVx_\:|N'2$IEQtxf2<$&#ȴ6lf@I? ^=bZb:9 r2TÝɲ\\\k.Q8PZZ9Ktٚmmjjٻ𨪼qN3iJI@( ȊRVUT^Z^wEkm]QATD)R 2I&gr~gɃLf枙39{imm]pawuiB!h+믺ꪾ :[QjWr+Q 8@3Q4.Qq.PT,CA&mi{lkZxU0DGv;H/No+-AAZJS$) Z,1@<0Eq*9ZYYy̙ &%%9O? Ç )›22 SXXhA(++ǎÆ ×^zȑ#n֭[9zϞ=O:Ғ0̆  [[['Oz?z " q\SK+Ai,;ж+Ey^HfIr18.ʳvd Ds\+g*%[Ȳ,<˺&ׯ7ֳ4MƂ8zieY%_s~J@w# 2X!IJF,x9rdNN`=ztEEӾ}ƍϜ9#ӧAhnnDQzwmFĶmߏ\(ݻ}yegg,yk. 6o|A ;7tttpnݺZa֯__VVWdBF7Qwu)z p8B(a:ǫ*3 #Ͷz?$ɄCӇHNQ9N(BL@SIYNը{S(]O]#{'k}> !x !p#-ezB^YˢJYu(J{!G5p(jȑ<"ʳ졊!VeYR)KA$$QWVǦ0YT_/MEQD%I^B.j$Ip5Mќv)_4+i➱e?*kF,gC2?OƧ2ɚ$V`AHIdrl7{^=u+׋IE,*t~kwJcLjFRGDѠ gP=_I /2}.hԪ- d%>~h$iZe2 wHߧ.BZg=!fd݉BZ;@A\iZ J!p Jz= <7֥%2.: *mxO ;!A`C|{YM \&{ņ |WTEQ{**}9&qD8yᝪS?A@t$P(xLȿ\˱.E/Eg @Tnɽ]f299~r$$(^Xhzy^ot$T*9㶚!IdG ˲2ݖ!$m_ITʷ{7;Zq\KAsFg2E2VuA.$IRi'#ƞRr< 7FF r@aYwIP4/6 i4q JcEaR ݳ9rqs?(Nf7!pT*<\zAd:?! t:4=YK!ET*d7C$If8֓P 4M(uA.($A3C4MzEQQdw.O2b] ;z:=A$eyuB~h4ʺ!p2`0㫃`{=g6&"aV+(pXv̲,,)s8M\vGc]cp8c@  v` BӴCA^ 0jZF ^dY4hcaB$5q$҃Aaz pDzĄdQ jj.$i4eG!  $IZV'Aw ^8N.s$IfYݳ EQ9ydeeeO466^!GOq:::Ξ={A< R.mL&eq$v'&&ex.Kx^*S ȥ}>h飏aV+[+!ǣaB,+1@ Vr}pe˖7ܹ/ꫯ;RZZzȑ :ʇ~yާ}GA8q!GU5u^l6z|@B!BfEQfY @Qfs  }*[L$i6` { x*q.K M&ezٲe=y(WgϞݻwyLw^_*4KKK=-Kuu5ތ$IL&Q>|ĉ@ d:u%Ilhh8ySkjjР***=*Bfff( B!q:ŢT*ʪ\.ÇB=iB'O rVV*AA"(X d&"$r%%%M,x(i:nOIINgRR a~$I,m-#\.llaP(à`Qޡ( !T*U~Jr`}6^^^>raÆ !C3[n{ٵk _|k:}tGG۷lrAwܹ{/B3gl޼/Ё6ñ{pgڍ7FFdWWWUUA}hhh㏽^oSSӎ;N:t:?󎎎*OBUY]xc]~DtBBXۭa hNIIq\<T*r$y86 4m4c]™xVus1kYxN~! lQ}<}DPDܧM6k, Ξ=;q/|ѢEAdffΟ?sٳ>y^ȑ#'O\TTDdQQ^d2-X ''jΝ;nSF0LiXCCF+ϟqMZZڂ ~߇BxBolDvZVVg쎓EQ4ͱ.)xΛ8. &$$ĺ Ʋlv\Y<{<$[4t:㳇&IHHZ-HLLLzYxYBB€Y~)))UUU@@p8\^^o(z=JRB :t]vل RSS͛gXwСsz0 rv|JJ/$zYEEU*| c0iz _(JHHp8{QRRR`Hk6fNdY6'Hx, $F$It:ZSF#BvZ`0a?B)J0`}=!v/Bcǎ=9999۹s{WSSs_ZmFFFgg9|hkk۶mFILLēi,YC$P(x'!}=--mٲeӦMjJ"#=55%y0 c].W\~ũVM~?v@uuuFXOP m)hۭP(;)(QjWGMj#Ib0 W=4M`TBqKNN;w.Nhnn.(()))(3fx6CFFAMMM8E> eggFRY[[k0NjIy T*EQn!pXaÆiVegΜiټ^BG˓i!LOۓ s00&vG4˲NSTCGsZ%M*!0Lbbb<$5Mgg'M0X3~uEQj$ɟmsJQT ZN393x]钒:;;cz!j?J255vpW&7z$ n@ V93oxv{zv]E!EQqg?P$ItZZKG5w|zzːo@渟fd !x8KIIm`#B[[[("6ɰb4fs gZah$D'= nj2`fy:;;FcxWW`iw} ;骝jZyɜVi \p8JNNxT*p e8v8E~p8x Ebbb<,1i[[ڥ?2B n[DkkkE`0Ӊ&NINNI}$;>wggg0TjX$I K4m`=ȊŵW$I r,jھJbxX,zRbHEɲFw@86LFqB> =" \.ϧVZ-d_Bx*R4͐5'"ɸj" s/jW4eaf@cOx<,z"Zƻ\T IDAT\.a"サbdIC(8A'\y `4f󠚝7w 7RT(Vy^8˘hZ k'Q=$ WBISCp-j7^v R\xL8DQTT&I@-!<0Z[|Srs8wS(=ӂτB!xW(&ip1#[[[{< 8V5-LS3 QEQ0=\,$IEQE? hZF@hB*Ǒ$IQM4M㛧$IC(Jh k9 DZVTB-?ܣx3, p2 ӽB1+6IR /2n B2>#ՇOHEVR!"VȦXDl˚aAx7AaaXeYxEo-4Բ|s.#2qjX䊍^ˑaIOd\xH\xe22Rf34`2@w6QT.=2.d        EP(R)9u)@?*9z.}뮻袋f?_fٳS*>^{m֬Y$I_/))ijjz7~Ǐ~cZSSS? VX Ozرcw?Ӎ7rWPP@QT8;;i$BQZZz9sUVYf቉Q(ׯ_g}g`0r-sU(O?o)))3~n5j_|o޼e!CP \Ruu5ky;vLazn=F9v>mڴ_znݺʬ,NGd+_+Pw~J$II$I Pqҽ{N81#X`0Ȳ  0 _PP4 ! â(4P($233jkkٓqK/fϞ}e˖}GEEEEEE۷o_fkjj~aÆ!x(Bzmmm<Bĉk׮]p!EQǏ?y^?{رc@ee$`0$I- Ayyy''믿/Ç'<߿o|G233EYggn7 F0aj}w%I7멧JLL|G_xᅯ{7?M6v;P(t}|ꩧ> 6̘1#K/-++(FIt>}7˗/w}С'xb۶m{}'/袓'O?_DlܸԩS>opݱ܃`(..>rN(jԨQ ")) |5g[|~˫`0z@/tuu]s5!w饗,zС;Seƍwy'A СCAźjJG)ʷ~/x/|˖-۶m~W\\\UU5bĈm۶E^xǿ=PmmM|}졷o^VVxOn4{Nw7~A~/?Z_~M/^zqmٲEW^yeͧOZ?}Qg̘4MII'Nаy把ҥKFF Xv͛EQC0`;(^;srry景://%Ir…^{ /pAQkkk5W֧ pMVVֈ# l޼yÆ 4MwO4Qqj Aƍw.Pgggyݻw+ B JJJ:::;3tИ|X@_n:LT*z=IÆ khhx7p WRR2n8N7|p -x %"˲FZhѾ}:;;X2kZgIN:iӦ/ B'O$#Flܸ!`OmmmÇOII)**OHljj+ D^PcZg3`0XPPvw[hBh4W\qM6l Iri)))UUU>_~nJӴJypgeex$I=z Hۊls4;eڴi|_m2rrr"gdd9rd…ӦMa(A7n̘1MMM]]]cǎX,iiimmm8p?jz̘14Mz=iҤ kKC{Ç@g}HQ=s̷~;{:믾*Mӻw~Wm6رcZZZKKKOW__z3gr-AXb„ Ǐz6 ÇwM0᭷*//okk>|x}}SMߞ:u*fB0aAiiiz8޲eKQQѴiA۷o2e AFZz5I#Fu7nܺu4ݻǏ_QQQ]]=zhiXprKKKCC/l6k֬礦v9rϜ9s s\v̙3pZYY9k,anl.,,ijWYf1" i$Q;M555cƌ/n-Z>㉉$V^yС˗+ a^z饪țիW3 t:ӧew͇UeQQQ1mڴP(ښ:lذa_ve&ɓ'7777eaÆYֺ3g4x%ѣG$ywWTTYfegg'%%9Ç_wu** ?%$$\r%Ja0bĈ{l6׏1nG^UTThjjj,mVPP`XBɓ'333oF~M  ABVWW{^F0RׅrՑjM OYb9zݗf'iCCI@$׻\.Rɲl(:sL[[[[[Tx=n0B---555$֦&a|]]]GGGp}}}KKKT[[p8{U$~yyybb"A Z,^$y?uj|$455) |,Ajkkn`˅nhkkST*tՉjz!tI,++cY %9SտƖDkmm[  ZvYZdɈ#|=EQ=]k677/_?o }(?W_}5g|E_ <^zM&Ӱa^Vr8ƍ#wٵk%\׾[{zW^;l۶a#GDQ\vիǎL_|7:.??<̖-[89r$|AA)A'O׾x9goy/8x૯:x V㏷nzى'677x۷o߲e͛رcoڵkײeˬV+.$I?^~[nٲe---=_]QQQ\\}W?7|CdAAA8~7_y 6ܹS 6W__nڴiǎ)))C m߱9s殻 p\W]uUW]j{ڮŋ_}ՑO<͛ƍKtw^_o۶m˖-Ç7L˗/Ov=a,͛7k,Jmݖ|C CEs AǙ3gTUVaÆB7x_߱cGZZZFFoE`EѣUUU6mĉѣDՆ< pǽ;k֬ٸq#޻ AN:U^^4~?0L@l6QZZ믟9sf̘1A?S>ùsFK.Gh4ǏOLLt:Ó&My'Nhhhp_Դ}>???UUU8qBPL:̙3>I-u>\n?ë3gNdv!Iٳg[qqbikk;x Bhԩ& !t!p555,--T֭[Foʕ}qq+2yk={JB'NӟtM7EBÎ~A.H=>tNݑu:{w}?cG6m~[,gyfܹںuʕ+srrlٲ}b G}{ロ9sftyy{[e=!tњC5a˵o߾~#FXt?|).A@`߾}n;???33p: Dn.^xĈEEE7o[~[ 8p)11q ;vjN0AV0 #B?~7(++g_D8>~xmmmzzzaaoY^^7]C[eee$Q[[k׮^zoYn]III4?~ z񞩍sysrr:::>|o߾W_innٳgO:eYәy|Ν/#jkk=_|ŋqtHDAAs=Bt}!@_q8=XFFq{}'VZJۗ-[ٹbŊ*hZZ?O>akGl6;4wY~'srrn'x`0w{駟.++̌n/[_ 6`0uq`xG뤤+WF` f}{"۷/!!aŊO=ԡC<V)Jh4]APݝSM+B9r„ OQ,qnkk۽{ȑ#WX} z h?|#g$I?rwtt_zg>s%Kp ]vހ?XSSS[[|~$ɓ'Ofe#,#<Ν;9GI l9tK/SO5441lذ%KxIIIeee}M9@Q^2eJJJʎ;\. ;w ;wӟ"P(m۶{wʕEEE;wđfҥKyUV577WWWG~Hp:!FZ$i0aB^^ށZZZ/Ў;ϟlٲs0[nW\p­[%vV0dd2x2-'|2vXF3rHQip8 񱮮~:))駟sI4n`OJbDypL&SUU2[nafǎ~˳liii*/"b IDAT+VDR?#ߏCs`B!$qxEs׮]YYY$n7448-V5%%%$$,[\\zK.dƌ^xajj̙3y?vǯ>GP('O?~h44=}Ç744lذn<4f̘d|6ӻ@Ei8 ~߾})))$IRGKK/{d2V _|B;0 ^z;NA⊟n]YYuVnz몫zw?sFk^)JII~M</))=ztAA (,,sٶm=ٙ+o~7˗\r ΦHLL2el^{͛7tXW\A(s̉t<EQ&MڳgO ?4M_{z~ܹ+WsssGk׮W_]xo-ziNQYӟ߹dff#^cҥ?V*!55uoƎ;8ەJ… }YOwb~w5*2mQ,Yd $oWj/_NE]4|p7mt=hZ>q˲'N9rdEEŇ~HQT(ݵk׎;ٳI?5kz{rk^۷o ry9y|eٻ7#Ϲu,p8T*UVV^$ph4C*JРT*VA B!Itnii'bϏh42ecǎ&$$t/ӧF#ٳgU*Uvv.t.Bp455$SZڝ 2d2I zɲBzKKKq-,=ǿarssjuUUEQr9sPR]tEp&È;A$sa222, ~QTfggzACG`#q9Rș+I>=u:fxr VUU!233-hmm-,,E*JI333ԈB xd(+-)))APeXaP 8 F'ߟ)IRmml JF>~H( Gqf =:qHWWWA{|$i4JEtQf`( CB!!FQտ^Bp `0V+y pB( !FB7Ea͆>|spA`{{{86L}$I l6C-+No0Je "Ax<4Ml6ZN.ǣJe8QJVa@BfB{!~?z.:p6Kkk+Iᷤ?pǹnb2`@<Bl6+ʨWөh;!p8zFqEQbnC-9܁!G 0LQ^!x<A0 l_$Ir\]]]% HnYȕ$I`G1) y>-- bzf9V0Bͻ:9 qU1Hij$AU1*z%"$u:JjnnZC|n(IZaVQc[!v].Wlfx @fB>8Y=+@3Nv Hh4,:Ib]Q\= mmm&)r)2>Ǻ,eWW Bn;e0ADŖ^WFfkmm8.e7PkkJÙ$If c]@N<$I%I4Mk4NH.Z6k at:Ze{fZ6 ALp8|RZ-@4o@wx%ZͲlk(2 0kna8$I+&܁<}) $}>_ "?(z<N난M @-&܁ T*U{zC*^^^?$N~h4;pn^.ZV"0> ZZCd2-$;;;5H$9o$ `0`@8=jNE x:"IjvvvJ$L}`0T*#B&InS rVx@6MRY,tN$y>$I8n4|zX SZVIޱzk.L&H$Ja BE:Nh4@@&slG<`6BX,f85 azHd<Kggfc\./bTl6t:z̲?hHbqܿtM&lF B*2p p3 |e^oi4Ng0 F9h=©unh<O,\Oz`X,]f2t:b8nv;xz궶yՍȑ#ǏT[[;eʔLO|ĉFȑ#j}}}FFBhԩޅ ãF*FGG BPfff{{;FJ&M2IIIZ622288.%}={7.##u|򉫫ŋKKK'O|頠gΝ;O?--}ܸq[l!gyii)8|#ry_W)P8jԨ3̋/FEEļv{y$:xM6M<9 66622RVtttwtt$jzĉe2Y!f'NSXXH=J$umذs8M6t:=66kkk+//oiimjj~zGGU7ވ>|x~~~H$FcXA_~Z nݺYf?$ֆ|rhhڵkRW^mmmvZA xh'~w 2206ىx{{;r0bhfA&fL&Ţ~l$IdٳgzЄ &OxpGgƍS*~!a,b . t$aj{(acXq\.$M)Ruuu_~oSOyzz{8$IE !$\\\.\fǧNfh4#4mȑ!!!uuu}s@*7nϞ=T">{=S,kժU}&i…Rγ0lѢEUWW9s!HWhhNGM2ŋK.E=R%ȑ#-Z{ G=lذSN}mWHH[oeX|˽M&ѣGgϞb âFؕHPر$IOOOrJ:p@9s;vs}!Cĭ[b1dLFp8 N, frm6Z6mmm6MPT* ;::4 uwwg2&IRl6\.J!DHlii!ӓZֆa'immZV,k4ƦA@āR?  NحV+ IRT \n4U*a<h4l6RIllV(EEEiii~~~ SN}嗩2v]&/޺ukssccc Ew*';Nޜ Rnn.r+W8.b$")׮]"[޸q͍En2\)Ho=гX, ŋbq\,++K*lW$+**tP(T՗/_WBڲ{ ^^^<+Wp\8j\\\B6ڰTƍ!wuutuuwzIbup8QT*<VEn;pJK. Amڴb6lr!!!ԯf˖-iiiaaaTIFqƍ3f̠fիWwAİa,˞={㳲 _|qѢEԕy= IDAT&Lq?쳓&Mr___nݺK.7w-//IOOojj8qb sM6dCVwNEv~Ϟ=/^1cB(99mjj h4k׮KOO?~}tWWI~bJ㏿ۑ~BBCCCJeY,\.g'N(**9{ŋ===|[oEjX4V#;/Ǐ}9sOd2lvWWhlݫrqq1L*{Lf5 IƱn8\.yY%tX,.((0ͅfQQQ$I=s̙0aBfkZN5p YRt:wwwȑ#\QQ:ujmmٳgNJ-%ϐ!Cxy <ϙ3瞳? e6M&Sgg'awXPܺu^(|BڪR  ݯ3L*JR) WWW__߽{b /d2GÇH-w?7ReSZj󣢢&N믿j4 I&%&&?~$h&9͛7uj̘1K.\fŋn:g6z?풫3n_x'OhGx%KBs 1>s_}.\-Ν;tҁN6fϘ17D111e˖}G<Uw"Oϟ/ 3gDYf%\N ZjL#MղlOOO&jj5d88nd2T*uFDrܑBD{{{gg'swwg07oޔԦ~|>_.#Vkcc#г---FPן & BSj0 N7`>*$IRWE"tuu566"0 n.njjھ};CM766BRi6b+BHն2 www>0ui4B`* G9h4Rvd2yyyQ;]RÑdĹdjnnp8ԆUUULFh4RPtttX,T]\\tOOO>A_lݺuȐ!@ũ8p p @';Nw8p p @';N($O>6pϝ;]l5554?,,}7Fd`Ob1Ftcǎ}f?z"IbX,PHUVFFFzzzLLLDDFDNwp,KAA1 0a4LYYYuuul6;<<<44iZ?3\*+++**2C =z4VaaaHH#<" B 񧌌 :>a p_"""j7***JKKe2ٴiv{VVV[[ۈ# Bڵk8_pAV; cT[f933xSЅ [j1 KMMrJHH͛7CBB.\¨njk׮mݺu֭}vwܣk׮^zڴi8+@ԩS. :}t@uVDR^^i&RI Ñ#G&Mk'''L#%**Juuu!\.FsssC%IR xHRI}tFbPmtLd2BEEE!͖1uT&y_/?]`'G9a„M6?~#FP(A\|y޽6yzzRbq{{;lxT> AIII{...X,4FuV|||\\\kkƍrm+Bn\.$IǯX,$2L:N#`޽UUU6绻ږP(:ujFFٳKJJl6رcﲟ0&i44AX,_fMTTTRRҞ={tڵk=< XPQ]]mXwLbbbfΜ).L&s?sJJJmf;qAaaa\.....88*pԩ4oo7oX,*scl6;''G$uttTUUYVjtw\Tڽ3v]ѤOAVZEEsνr _رcǎ[YY阀C+__ߙ3g>}:))]eeF1 QɓO>=zhD׮>mLnjhhqP,S)I͵A P+5M&SIIh*,, }J0WWذ0*=n{yyܾ AnjllZR488;T*+**|~hhhkkb2da!p1cPOuuuFrW\;v@ @UVVvttSb8$$ SPP@NTRxRRRB}}}l6}v믿߾%=3gH$٩jW\Pȑ#/_fXz~ƍ ʀ>BdMM͵k:;;bQ|||S֜cww'p#p p @';Nw8p p @';Nyx$\ZZZ^^HӅB!a*++4h_jfY, hxFnwuuL)oKKKLD"qX,VNsuuu){!Id2`0~m]cccff&ŒH$8f$tz pn^[;w.;;;===33oܸɓ˖-K;wn۶mwRbbbHJrժUɓ'iᒒM6edd 4(((q|Ν;w:ul~뭷,ԩSy&inݚ0a߯Okjj~m:lذ:كի Z>pݻbq=By${-pqFSQQH^I\?a|GnnnwnzzD J/O2{ɦ &J?#\~7M=qB&QWO[~^kq톇G9rj۫.'vz922rڴiB!wyҲwL$L|rWWWljA2g7oT~m~~h\bEMMW_}?8Uf;}|رcyHhwIOO_dN?pBW__?^tF͜9^dO>bYt3gVZk׮'4$ɜTVV̚5g&_~9z(u2 ܼyu޼yBp8K. MMMEݻnj_9rdyyyMMMӧO|xݺuKII9rHmmŋOaXaaa[[۴iӘL8B"XO>9}4B_vqqﲲ-Z4gΜ2>3W\_[5jܹ~X, DvO"~ݻM&Ӓ%K x{1e\?fgg۷.^x̙O޳g1NwI ˛B*j---ϗH$ONNFdܸqٷ{֭-[tvvΟ?_ ڵ+33}Ȑ! ???G@jԨQ\.Z-k^^ިQr3gƎ뛞^YY_իWر#//qlȑ#B2lmmm۶m;wB8vدƝ;w^xqܸqw8޽;%%駟?~nnW_}e٨>|X"L#iiiǎNJJ6lXPPPBBUCqq7|#J׬Y#>R$>L? eƍ0,11?^j֭[kjjrsslVX, #55U9N,))y&S*l6j;w-+++$$֬Y/<g}6<88ðEx1 p8!jbʌq<;;1Vfs8S]R(΀*B8pNV[,NP?DFFX,*K*99977qHD}.\ښz)X<ѣGY>lJJ{d2G~z!ʶ0`ul6[ssq\\\tzxxsBMMM6… :U*n111111BpԨQ.] t:}ĉ,---f (... 㭷ޚ8qfkllH$2L"h4  =j̙C#./--=vأ>r+WjBQ[[k=<<?::W__ So7I7o:tR4Ԍ[uuuCCC@@@uu#jkk`]#63zhŢT*r9ǻ$IrN߼ysҤImmm:Gx<@ hhh0!Gv uYz=IV!$LQ6mDJ2L>iu FP(9ΠAzE$Il6^z7KKKH4ff60***::9!!!%%9s={;hZj^NbFjRDuօFJd2- A֪p ^bWWT^l4E"c=v֭ׯ_x D77HljÆ .\ UUU?Y"""ww]v=z… ð#F8V8Nĭ[.\@bݻ_2eOPPPIIInndJLL|]wOn qjjiӢ\ʕ+i߾}8ΰa^!,,,::͛'N z}1_~Q*˖-9~x ***q[޷g$In2v;FcTFIJp8l60VL&N4 6F|:Nfz&˥"`0v>bZV`08NWWFD(<&&&===!!So%Ij0.b0 @IR㝝l6%h4l6: ZzC",^=b\ǻB<b B`6E"4A lͦ\.=et\%b2L@ d2QhrSfuܹsfSF V+uqu:fdg w}744?챾p4r9U3AL&x>6dX,^O] ǩ Fxv`Pd={fQ8pɓ7o1cd2DQJ}^oT;jh{ʄaXHrY4$Gl6fSRc0=6$$St:#Gb9"Ot|#7ea22=J@=#!0w{|Jq (=6OHH쌊}>= H$Nt\[FR???Px ooo*ňNaNA;p2O<{] E"ߩD1k֬9\ЉX=aV/s5f+Qaf{8_ڂ{]6V"]#Dŋ駴욚?6-55500qnM֙3g\ɱ… nnn,OOd=eddPMIIioo`25558L'N||rr2ArOvvVO<9lذ{.6;?1cƌ5k֬Yf,oݺuĉłxnnnff3gJKK{ѣaaa|>?55l6'&&]v!T__wޒ)!>>{=ٳF*,,lnn޺uСC9rJUUUCCϹsBV5'''##O/F{֬YF] wwwPYYى' /_5w\8p ٳOOORYQQh4?SzzvcG$w֭Z>xF^RV>|8$$D"tvv:E ϦjN cȤG8LzkC&#2Ɉtjd!jC8RGFP׆lر0 h")˻īWivRjr!}嚚*dr'O4Ǐ_fsjj*㡡.]yf[[[fff'{ӽێy祻Re(--&>jjjΞ=xرF3cƌ;w+]]]c=vQjfd2Zj HHH0b888ð:___P8~K.Q X, 2 B\paԨQ=Zq#<"JB4MPp{2ׯ_OHHHOOq|̘14R>|#Gk׮!fsxxx@@@VVVpp05jTZZU$+Wнjb>,,ݽ$00l6'$$>RyiЬYB0G*cښvrgcGTd: B]!dw&C|$W4;/fGxxfc6o,UNZh$2g{~GL&d2 ~IT.ZH"?~#""bʔ)4MřL&WWWЩS]&{챢Ϝ9""11ʕ+_X,qqq---==rbZ>|8Al6Xz+B}b͛7p@͛7tٳgLfmm9s4`D7{lP8mڴ:99Y&" t+V0 ={̝;ױgvvvYYY{{Bt6>SOOOJQWW7sL#u:^wX83[FFU E"XB$%ޯ5ĚXE$m6Hwi lp5FB~=>>왙3ews=ngg744VXXh4SRR.]t9&p½{ BKKKVP(\\\z{{\ի:tu\л= Z`28N2uTjjjTTT^^~WjZRbOEDHH鉌$*555??ڴiâ䂂x[[[ &Ld2E Ajz```xx瞫Zx1Z~G\… ʌFɓ'===y//W25kք#%%%ٳgxiӦ $$$?-[V[[|rB .T(AAAo-WN6m3 `Q,,,pWl6n|iŋeee>>>J( 6}Sa$bqAAAccc}}ÁB8Sh4X+WՑ$9mڴr-,,H/L&&Wi麺X0 $u:m T*UvvvsssiiiDDDFFEQqqqAP  |~dԩ4Mé==V r,_.ܜ=HiɄjɲ>ʭtF$:ߨQz W5}jS 2!D!ʈHn]߄bvttL7nTUUY[[ B|L>] UTTuvv JKK{zz,,,\.8gΜnooo6HQTBB^8g(x %D"xϟooo7 pssٿ>4iRww7 ]]]qTO?ߏ˟={?=,~K$P,(ήy7Jrww>MQT*UUUNNNxcE"ޓ--- d>|qqqw(yȑs: GՍ|c2-t* 7"ZYYX!RjjjJeSSSppʕ+)RT</<<<,, !tՊsd|ͥK,X:zhzzW,>T*UBuvvy{{ߺYfjPkkqB˗/o򺺺 •+WL*geeekk0Μ9.juOOӧ_zf?9kQhTRDr,Tw!m8ity`.ƋҩOdB\d"U*{g .H$<199y׮]$;::e]]]Ǎd/^(Z-:ˏptt R|džxÇs\555effvttL2IժT[M}w)7yrf͚27ߙի8/{zzo*|RXK===E3Z-6A2N|9!deeegg|EXXXpp0tttDP(trrOYXX7*SWWWQQ\^^>00l2N:%"##C566THBBB@B_ⰰ0# E"Ѭ%b˗ꢢpƳٝ{13oBz</&&ˋ #p/1#{.\hkk+//onn`gΜjSLy>`@ D"mҤI!\<ә3gHDF,;99ƍQQQ _'z2畈}AcaãbG蛢>e=kPiMFd_+ ڶK9veӖo4:qzpx U3BWDqwUc_3ʊ| RɌw<A`` rqq74p{9Bd2M4X[[[ںx%]\\¥Rirr2^)BO$yyy3qƅ㎫.y<];;g r#ˏl rxƑKR|+!$qNᑑE+ KKK|&H$JxE"͍`$&&x@ @ȕ3vH@ `?ht#8nܸ?`|t^ IDATwOIs۫/ zȩ!Dגl?xQ2[4&;4r;p;n `A6h96 CFed$IQ-piZ>؞. d>^IQd2ws+1ULtt#&|hD-^eCӴR4fU*R,Di$싊׷ohC}F`2D6s- b <`tA4MS?{k7wEC?w(~3v@P@{rp+ p` 1w p` 1w p` 1w p$I0v@JρqѮ#i1qww@ii={/\sK~W\ŋ틏ך߇7n۷b[eee}?~3VVVn۶mʔ)W\ٻwo\\]qڵ'O󳰰(v B[̙3yyy}p@@MKdaX:xٳg}}}9M[[[BԳU޼yejkknݚt%nܸ1''@.X_Z]QQя?8iҤ_* ׯ_;55JJJmd2\_$yԈbPcǎ{\|Y$}!WWWw}닗YYY}Ds5RSS }x8P^^Dn///R8PZZq~|\]]7lo>6n8؍߿nݺf> #UVVܹ3!! Zvݺu#qx{$f׭[sYNd2q'"^zj\>'Ruڵd2ݽo߾Zooo6`-8qٳ-$O}鼼755ݺl///XZZjll\b܎?~k}e=E"QXXϯ ?~F92APT%%%xK322N:u깤hhh4׮]bgΜill$I@V3/bW_U(UUU$IN0a``?I /ռ̾+Wøw}(**H$gΜ1O4LǏꪭEs\;;;*,,aaa$IFs ptOOϟ~)33UA.**F$iĉ>AޡC6مDʼBuooȷlOOOteā'Ovvv"rssB.]zuۺx TgΝ;777W&999|'uuunnnk֬dz`0TVVoٲO?d7nܶm[{{;ZmbbҥKoj}wI\~WYY_|144j*LnܸgffƸUVtoSN---MJJzBO޽{7Miii-駟>l4͛#(?P&I_sA<32===aJӧOϝ;7++e``࣏>uqqye2`P(L&?umݺ端h4+VrϜ93((hhhʕ+E!jkkoܸ1k֬t|Sã244 'H'|988zXH$B999ޭ[[NT~W[n}'曞@j* &,Yᑝ]__tRPuu5EQŋVXT*q?>|XM2eɒ%z,kҥZAPl߾e3fHMMh4׮]itǎAAAk֬믝2V^߻wF^b`oovY;;k׮-]ܹsj~jBaaa˖-rkh4<9/{9 111sY~}xx̙3SRR}>^(^:,,СCZZZ.]J7|c^hd&L eeeAAAO>$ܽ{ҥK\Tww7B/|rbb5kBNڳgFZr%>[ r8Ρ;w^rg \hQXXJ-++e2իΝ;c| ,--׬Yr/^}vJzj[[[`طoO?FDRRZ3:;;{zzZYY]~|.a@TUU)۶mRt̙{챶3g΁h^p9s\nJJkoovqmٲxiJr…Z'O=<<||| E{{q͛ߏo Zm4]TT$Op9333 ڵkY,˗gϞmgg7}t$z}pppCCÅ Hܵk׸qf̘qIܢ}d^rVVVKKT77ӧO4 .裏vuu577bOT*݋KNN6Lz`0|'k׮mll<~;p'BH$#222ReT*U?~GGG_v;66VժT*___&icc/zzz"rrr֭[e˖hs2H===rEFQM,F x,-[6<<7M|ͫWFFF={`,kǎx:;;SRR ^GmݺU"_g&髯 xsaǏg_T୓$InٲeϞ=gϞo=z/o|\.ommqBHPCBT*]~7p>44w~7 äIN:O8;;OVZZڝ?P!Ʉ}\.ލC-6t:ӧq nKKKkii 8q"9@ }d2YQQ1qɓ'رcbOg2-2liiYrc ,+ ロ4iҙ3gx ޴ʀ;wd2sGQQB7n1cFmmmiic=0aȺ߿WΚ5+&&_'ܹsnrHHHffD"9~xHHBɓ#[uuuT˗?~ܹsӦMxbwwٳq1 .0L[zzz,--l6M---/^'gqq1ǻ){>>>111wy捼>{嗛m<8<<`0|||o.oV]]7455G-,,,Xm۶VSYYip\.dVVV}win=PYYYIII8c>##㦻( \.w?Cii QxX|ڵ.;::\\\D"QggBRիWoܸ_ʀtww_v5k^y啐YfUWW Bwww &L/b /חd8BgFEEuww$&&{zzխ\N X,???&iaa`0boꫯz{{Zܹs"(((`8qbܸqsA7>>ʕ+#3pss;W_ mmm1cFBBB^^^@@@zzWHHHee5n 666/P^^y'x<| e2YRRkf͚gyѱG"DGG{xxL0!܌ϟ?rppزe N»+W4G\.wBhٱǎS!!!Aཁ+f׮]`0g͚5sLkk_~}eC\\\CCCAAq0 f͚i.χ9s͛7;88J$u[xqZZکSVZbl6Ų5!pcǎ>z dռub /FFcbbkjjpD555Jf'&&fff2LTYYyk/F惂b7}R\.EMMMs5紘˛6eʔٳg;vLPBVVVx;0|K/jnA(::Z&N6 b0+Wlll~>o48pҥK 1Db>jg}I [j0}QPKKM7nTII EQb822o7n@BB¥KryTTx#PhVT5kZ3YYY9Ѯ '90@ c0@;c0@;c0Fd2zF.*  B&y4Muc  $hȑ#"++ѣbXT>gΜo{zz^z饚ׯoڴ?G}D4Aϟ߱ccww/~8//oٲefh4ׯ_]]]߿a mr}]{{O?T,3/wժU?kee5ڛU6 SwNIIiooDyzzvvv1mڴJ>8444888ś9rdU  IDATĉ~~~'N<|p\\o?(p*x`Z- DSN@مX[[(J^OkRRR FddT*iZVr\>o4IBpcIuuu%%%Ad̡dDr|֭%%%E2ĉ'O.))駟}<ƍ6o\[[[PPrϝ;c׮]CjZ\JQTBBœ9s js=w)X&H*++&NhpJJN{sss%B8~8Bرc իoL&ۻwK;&VUU8q"///##M68pٳE}w To2򴋈o޽{5 BVz.]g!h4$IC<4MdFF… ӦMMnd2UTT$];4m7)FԤ,\`0幸&Yf)JkmmB...K,!I'trrjvvvJ$IFc2x饗f̘sssǏ/H~c2ʀE0L#'?Y,B_Wffvꫯ$khhhĉƍj!|*???..ѱϜ>|V=<<&LöR777kN.P(===o7.L'e2YDDDiiiaaL& B0,,ѣ+Vr :i1r \.ѣ^^^uuuՋ-jkk {111[n:sԩS ƅ rrrRSS H$(***o]h%^MW\9~8% "Ir׮]);6 DscVVVDD q9!J~͛7`}$ƍR_`8y򤵵udd9>۪ C__͊+CCCZ]]]RJ1c@ jΎpR,z) Xggٳgwvv988MDooobbYhrSNMJJiZ XiӦ s/S(IIISND8::YXXH$www^?i$Jkmm-T*UTT`pwwOLLutt4iMZg7k4PhhK0-[F>(**ZfMDDŒd}G}dooV\Bx¢7m/ĨT/r``ï{!!!bw +WXzj>֕+W Yp,J񔮮2\ B;;͛7!anz#Re[)[C[\̜)[x/M)SbFtZZV/wMHHX`ݙL=*^lYss{f I6mi?Sْ]\\\]]?C4YUUVq~5>d2lj Dw566ִ47;k1G</!!nf1O=b-]͔N|cJJ$UVy{{VVr׍FsllT*5_7WUU ĸ!z{{sssjuttgFFFzz:[a;wT*gĉo+ҥK'{-MMM1MRwh2}}}j?NMM]j< "s#688T04=00b$H$D)Ѯ'<@,{;$I~ׯ_ +VdQg)x źReiZӝ?l``.99900w`tG6^WWW@`u.Ay(%Nh`G+!d2dhA]?b{m_p ~?0@;cЫ =ѨjVxw3*nC l<4QyAi BVj6H_$%!p#<qW0@;ciZ #7@3=A[ogϞ_-6<<Wr7|h4"6lp7CV۶m(`0\r޽&K,;w :::ڒSSSg̘ /ٳg%'' e^:%%eK,9tMӗ.]z'n-'|'cSSSSSSSRR{NI[l6mڅ pŋ]z!;f222֮]_,Z2Ei4T\p~a-iVTrfhhI PӣT*y<=I۷oʕ+u:@ pttd2<ORq\Lϟ twwct+`RWWW]zٳQQQ ( _XSSfa_eҠiŃ|>ȑ#4M8p`ժUIII\.dz!J vrrb07n RS#ܛWn޼ӳG}gZZZ>cZMEBŸi+&Lk4֭[sҥ۷z{{^{kΝ![oښo߾P_PP@u_|E???\nggr[[[;vdkVVV_A {v횷CnnnXX#< d K P(|WƏpɩܹs/Ҟ={Ο?z饗B&~hnnNHHںXZZZZZ|Pcc7x≂7n888 |}}_>ʕ֮]caaK/退 /_}d4 ƛod2 d2_u2 6,^ŋޔ9s@PHHH$JKK{'z}}}=7<<|E!<߆uww>|X,O2ETfgg\iBBB``ݻZ-Baz{{q n߾nşyeeekkkVVwlllmm˗ã,::RRD"EkHHF-^xŝɷ]ԵkׄB bcc,ap8\.WVzyy-Y_}>}zɒ%p6o/]TQ]655iZooѭ߇9rL ٶmݻmllZZZ=Jdjj*Iǎ;gRT"{p/V*'Oehnll,++cX|sϫmll <<<<88FeXK,iooAYYYlͲ?^===2lܸqp8 <<qѢE8(qvv67988xyybXPxҪ*{{{p~?'NrB`0vSNL&V$8qď?8--vnK$988;իW[YY;v!r}}} V^P(FtAAAǎmii:}t<رcW^X`B9sfΜ9G:_DDDG ƍGgxx[Eyxx888X[[4- %H$ ={6wvvp8)))AAA!!!bxܸq4M{{{KR|}}%D"A͛7o„ !!!1>!!!$$AQ^T*NJJb2qqqNNN$I|CCC\.AQQQ&M"IL6aJC4I~B!MLLtrrB 86-HΝ`0lvXX 0r---ϟp<<ooooeepWnv*"##9P(LKKKNNf0[t)ONNNJJbX...Ǐg2aaal6ё(OOO{{{|P$Vb2&enFI$Iz?v_wa؟|G>|`0= ˃ 'Oge=p*X-xAV@ImjM/i&Mz64!1m5#FmcEZ.Ӌig";_J!a?Q}9ǏZ{ƍvZJa2jjjWw<^7P{iii6---}ׄNsƍE9ʢE5k֬XHTUUvUjkk^o (IRMMd2o`p& uuu|>oX0gLj\/s:/{>m6Ifb|ڵk7mڴ`/{CKfh"͞:u?>~xJ#G`liZ'xtuu]|yddp477!h4ݿٳgoܸb !D8~ŋz-IN<ZZZRh$Ydɝ;wNgwwwk˷lb0^q_f45M>{D122rʦg*lvǎCCCšP(J v۷[[[c@4ݳg7JITTTTYY#eݻw*++kkk3gѨj۶m[8B?}ZY"D"uuuz~||Z~NSZ5FB  O!矇̓'ODCCC}}}sssuuua_!D(Ztr^1_'L>"d2E"d2t:fzVullr]rb8Nru|III8޹sFQ* X,fXnrĊ[n566+JWF^SSJtKK*--56(e[zuYYY!LMMlk4,/h"<(**C?wޙ)N:ujvtt<ÞǏwww;9@띹i9'?Xrhd2=*r<qIIngv1GswNTq+`a2w1 V,O!gwLb(_Yb`Ȳ,r:Z/,TLCL&L&wWZfLUKe *@pTP;w@  *@pTP;w@ I <ΆIENDB`openstackdocstheme-1.18.1/doc/source/demo/figures/dashboard_admin_project_tab.png0000666000175100017510000021600113227213640030331 0ustar zuulzuul00000000000000PNG  IHDR0q$iCCPICC Profile8UoT>oR? XGůUS[IJ*$:7鶪O{7@Hkk?<kktq݋m6nƶد-mR;`zv x#=\% oYRڱ#&?>ҹЪn_;j;$}*}+(}'}/LtY"$].9⦅%{_a݊]hk5'SN{<_ t jM{-4%TńtY۟R6#v\喊x:'HO3^&0::m,L%3:qVE t]~Iv6Wٯ) |ʸ2]G4(6w‹$"AEv m[D;Vh[}چN|3HS:KtxU'D;77;_"e?Yqxl+ pHYsgR@IDATx}`\ŵUZ,r{7H!?$/!@!$@;fbcpKz\iծ,[̙Sfoڢ4 hmmCRRK:%  `Xd?,A@A@A@'FA@A@ !'    O8qsc}vZ`]+S!#tȿ   @8~wa>ϫDWc'Ϥa p:?XW}rGlX:ʷAL_5%Tv{02I5G(!Ae( &e ӡ+G mG>-4 ܈Pc1 :@ylnBcDA@AF]*U`ęOwkS*LY9[PN"[}I=E\'ـ_/G=iu`1{"us4[~{p9N S`rɶDD8~ա8imT ;m *rR  'm䶶-04,\GH8 INmlHߎWZUgm&@0HN$3b DmУR{w"<&L<66zȕZj Bj(a 'N=YwE.}.D^"L3z.j5kH^SBtt ފ`g;NO$(=|ҷ'kw~Nq˭5B39.¦ A'5p LЏh",]eX19cq% Ɂ@mmhQڰv":."r3Ѱ =3cF %"Q:|, Rظ KF0ˆ O!2a;![[]0 S'9$S{`BjF!xk~chQ ׇ1yCaټu(6C2mXn Z;Ԡ轾tHzRDG湐Gl8ՎB"SJbtszs=8kX2(ZT d4uBhwѸa vW"{vu""!]Ҩ6sb?R*gL#LnJbIЏ#\ĴL!isD"z(Cۆi4DdHC4"q:Mĩ=(9\4t§f f2f^ZE}KC>ꇟSil<Aˎ#20 wW8iV pN۫XI6H4?=26cR"8gg?W73OږNTw1zXeD$4hͫVG9وd(SadB|g:Xuɩy)nm&Q9BU!\+Eyl_:|Qkq Wr Eq 4"􇥖2d\pڲOuMHN%rH?c4r/5gwYzA, Ʉ-BEAtʸ6ZGJz3Fh/V:mա'Z_yA"”IIhl"=;VD$20l(kk+"lFRvDKяP2(N!NAdHI3rr`'r ;I6~HRlDAA>"B<lZK܇[!DGwHqn}x:o!Dh[#&b2B(N"v:Xgj2^_؎kRXz-#[7|sƗ,"9e .zS׀bެI3b7s 7`-;<9 :}:oDA@В-nCʆvv`٨ۿ+V@KfL[EgidMĤ񹴜0rWEN ,$ӻrH{Ρ}@^^;p(Fl 2cdz)F cwiykCP<"j)(I75i騋M~[[3tT.?]tr1hma ͥe4Dq\Ijxf+ͤԓdG:6mލZ3$cx Q1>/qDj=؁\7ΪH&ܻ#4D<Wzx:1'e8XBol;J",Bcc,Tt`J)bQwo}ԡJAe$HtZHX zKQav"5KK,! /2y%f^G [O(Ħi2e6F0q}Npbk IlEp3`6<#3'Ǟ3?} CG<5޻h"GHiލzc&qE?4P>c`uxp7wZ-IA@zc#a%agو8m-f?YE%EHY;ܨQ]Fqdr| MaLYĉ))ӛ3cRO;H"QtO^pDL0IkJߙӲs?xns)7N[}JR0>̜tLt"0$vcpCI|QF2h4Lʡ<6nP$sj)9ىOOƕSN-9Dq9iD ~ψ?;,!之`S[I8uDFӾPmo)ic>yY$jT qt`BB tJus;0Iթ{QM: ;U[u"lsg5kQRk0z|@gv|زsΞu6J3њ:?հѬ؃fR{[pg K?yƖuQ:n>~o ܲ 7+l^_jYb2ukoA$iz8p괱4-;+A@s%G ޙO{&;P(QԴPLSݣi~]ڤdfaɨٷUسm-\2u,3C4cxGp߿E=-k/GNPL[Mkנ&"]{v+b=iU_}K IA@AΜn-{T~&D&2cg[WzӍ]SҺphBHC H_(354y^,7^;a*jrzh験6pӰlͣx/ti-D ]tcNF {.cJnV\fґ1a:8'vZ6j щ|]!ڠ*?$5:Ъk@)Jw ͵I7.pRŌ30Yx_J$d4M#a>-SDВx;rFJ8)Rmk>vHttRQoJ'upUTkչ?b7}6Igt gx)FI惖Z|-udҩd=M   GD B@xf NEu&[6a(%o7JHA*L."tK;9yRRhPw(L rgY{R"mxbr%Q[g.GG|?qYI9c)}A@A@A!0 !_8,Ս|v :!L$ёR%iB4~]>UçU,   52QEt #VjKEA   @? 0 ! h(emiV;e'˔`h    ~bl|Wa6yʑPN,CA@A@AC B蠓F/xt:eW ]1AsƼgP   'bh.O+(ԋ.ŲsKhM)_8Kʻo/hE嶭G\p;^ʉ 5|=ʼnxkpYN'&A@A@6-!{۪4ԝv nǼNDЉKv َNhnOmݰYt_;H١ǻ/RsfF.Q7A jǐjQ{]A@A@A@EBd]>4TV" i'D]ax6%sG jJi&Qc%6[hv//u d !@OD$Q$A@A@A@NV!L] EK7P&yLL RZY{8DmHtrv^ZJr>Bgl"LD~f~EA˸A@A@A@0"p!zR1l(^?ZiFgTbb+C9N"%| 2=Q)qOQ   !T=DE(t2p~t(C 4~#yLM=$2Q3A@A@A`0 տ¬,8C?u):iƯH<ӧȠ" ii,"Q^F jH(p$'J좕    083 *‚|%hPVC H%=3c)|Fz495d$N[Rv=% Ό,$@U_GdAxdhRA@A@AĤphY.gMص-~ Ѯj~L? dHF3{vH̀#3 r wND)peIL6Z!4A@A@A@81P;nFHl;;8Y>G*sgrv׈CF>p{6*@CV:tNj ,$A@A@A@ EfP?B#r*GyLHZ.>A@A@A@@`@B^>]+C`ǥbiFA   D`@uI1+)!+ ӽ%Լv5EBrԏ?QHpo!Loxr P_NѴ ߽xU,m騭Ak[֮i>` G᡻[~#Btk  MmZ[sC=ڻZ#LM igȇ/ijG}CsO(cD҄.WեRuA@A@A B&v6mو[JF.Dߡ67{aj3Y\y#?{#S6?ߎ'-^Zcw5~ֺpނQڌ YCxgQYI{7]WӆhB7aE/YE~qe*.9񻻟-ԉ-!LX=x_cv>̢Qqyy>W?"nt~QLw!~ ~@-$G oމ|ά_  qG:ieRR2'á]D|&'ιzsdALN:SSqDZ֟k|K@5]WWb{a[j ;b:CNLEfW;N[pJһ(3A@A@NF !UVVRi.@{^hooʕ+ bҥŋocԨQx7l2nlڴ / w^ɥCqP4cʇ[/Dt=mHB>q2sOMç'_ꍸa=Bdxth+n]X|Q7f̝ǿ 2G `x~yi6.˯0DU}wG?6l߉Vڟ];_;oC!>@ ~mߡztxy_aN> ƖOq´7t!;%YW^G^Tq.J.  B[|FZm?96n܈mi?i~Zۚ5kpghdg >ΝO:]wF0s6d8?D8DgͅÿsAژqɋh}[ ?ޏO^wܫ3 MYWu K_E_C6dwgٷۍg|ZٱU+zrL9є1UW)?1柢xx}~8B$m~ O<Oѣ%<6jEMﱗK6<'7ӱ܍+7sǤ1((s!f#1fpYcB8NCapDQvFZiⴹNC^hJӏI(/LCc,̞R4OA@A@83B3yyy=Na q[N%L>L3D>]>|}3EE/q٧ݷ/}M'U(ZziF^^ }-\E<>q4!24X9807 L3W'JJ,M3npێ ^=a\_-?5GDzt"M?sHzwwy#WwyԥKonvUiZ1Ռ]w=6UqタdҐ\A@A@8&3{ y kh_ߐyWϬUw;SOUHݒ  cr 1c~ܹ^Z9b2POXWW>iO:t(dxi)!dI *`C؇`K iPk|U|C!2jkES89% A8Lv(F龻!%(hz{ Z׭N#    cByFg0{l$+\b~_k3 ,Ю˴oq뭷j:| 4 y_Vfn_v%Ș2`믹A"9;[{ɗf"W^_ Ut(w Qxpy7{>ډڌd7aG'.~qڷlt5(;.tuR"=5Osf"!=oaCFܿm~7aڏEO_Ĕ1X_q yQWFP݇1~lxzs'~;q-C˖=߿<4Wk# h:;V_ ?]^ /75mHDkA f1 }5-A8}+aZ,~:J]olȊpGڱm^cp{]3a,-hji@0䯫0BńHqa߮30vd)ġl=.-#  B@,!ΘѽK(mL Q&v~u9!AN,gr3sO+͢S@Y7mTNzR4Nt \-4O$_|7aJH-=&u:C|w!|N_܍$g7[݂spެ"t_ҷQon\8Ьٸ ƶ>!Cp~ #y&bc?]A]J9(*S_Z^{ڥ?ħ 7oG3*({e̜7aŲ$EK# #޻objqތt9|7Q"aZj?Nk}x-[1v\L!?<[k?㜋0{L1=C"D"wlڍY XP<ͻ{Ÿ)"@wC)-DKU747u /ǃ={_>wśo/EUq9Xe֟tGeJGoe46Tt8d3S#;QHvhކ-GhYSk)4lܽ# mCMMQaI  1%FXw]!vF='@nLWi?/45!Uc|tPaÙ\_•;43?sgu`3n_C+ơ(7X{bwt>UO?gN=\q'̝GOŲWVcּ8p{oDkgB:vC+Zwv9.?_EmǓ2"tnF׉3&fYnsIӦ>Z꠼Wv\?8;."t INd ް1S6+^+a)oDk.TLnŞ.I&   lmmm?s_;Ą;P=J{iBf}TfZ[[Yyi,ou4a-paƔqhk7WHFc7i36lڅDh!/oZKr0e#avaׁFL6xQ҅!EG}!{m@K ӧ@;10Zq9mb!qڐ̌ddEd+;?D`NA ~75Ќ' á: Zk'ap}8P]d~@sg{[wAQh1;'3Ufv^!\02k8"i]3q2ضa56e<ߎ5mp"$  ,:frE> `b2>uKLRYΉ &ȇ-9&lBx&FcG7@Lj<]H}^G?WjKi;l\4c]sbYpj\~d6+^ub(s뱿Dt1)ʕD9+Q˲YXIu1+Q_moGkW_~crpLfk%W>S'f2+]\sj{eWo8+QaHQ7+P^? A?%1=Ҿ?_WD˃ߍɀJ!&CB]QT}Z=]^%-dѽ'ދw{՗B}2苍o}>W-º?+?'{>WI*N`dWlQr?/61-n_`nG{v}x~[}7X·|i<B%gP;i׺{LT7ҲtmvMx'$1vŤñ577O /'+f hjmCK{FVU$Tu0-UUܞJ4#䵆)$DkG' 3I4! $A@A@A@#JB'!tЯ5m^ ȦB&rNPZO{> vD|# zH^>ХvۻLKW!0jˠ,וl\Pf2*+?F%Wv]/7T]+_z;%S7Svrhl233ǶvK/c;%W>T^n-7|ƒ+֏')_z;%S79뱎WfeUre|:F骺^ǪleNˍ2UW6r3?s]Mئ|mL٪JOʕ/LdzX1Fɕelz˕/)[KtMoS2ez+=c]}]ReQrrLՕM\1(UzQʦ\)Umɕ+_F%g[զɕY<շ+_z)rLՕMo/u3\~lD ,Cg_5Vʞtdq{gc׏UcZG~YXɕ/}ޛULe,ҷjKTnu+J׬L/3]fx|O tT=U[rK[`Dxl#V\2f2c,}=U[orx㲞3>lC阵ۛ~18y,][P}3k7r+ٙɔXqr[e/+^G_Gߨc?3>N_Fƺi%W}>e/+^'Ѳѧd1}JJcfFYU{_rO}YJI/X:WMmƺ571֕D*73֕\%74٧,Xmƺo%WFƺg%W}>e/+^G_Gߨc?3>U9^gU@IDATXW>=XW䪽/ާe%$Z64֕?+je1!t_d<Ѥ,_4KmVzF;g<:f1de{}lek7c%7ǫg3zJfpάlY 3Y"q^[ٚMǧ^}{elWGߪH\l|ǒ+[?Wr^JhcUW?eenY+)]O%3uJhgVW)[3ɔ(^gc+x|u؟KlNXDⲝ>lVɍ~3ڙU O%3uJhgVWG,,ll&Sþz>:Ƹ1)[xVBHNNFSS-:BO=/`ӏx?^O ks7tcz8x k#񈩞=߰$glĒ~cmE?^.icGGWQp JNN63zBA@A@EIann.2332Bx—KA@A@A X&   0xB8xLA@A@! 4    0xB8xLA@A@! 4    0xB8xLA@A@! 4    0xB8xLA@A@!  (k ~@nȑY /xVK]6E}SZJztv ^ ,g4D:h/7סp ڊh$_keGA@A@8~rDf#bG(BRRRSSRU7?u)~ c .8Dv* p8 (N+y0uPX*~[t)(+LbOfGwqwoAV4*ăwXr;3=2r&aDif߸o5hT`!Z6  SR_,^X O=x &F^tB֎nՑ<*C}'n0O"$°; qTa?~7^xX'_Ztg 8|<yS4„$   "v;|e#qa|mĢW|)D]g2ofkxr*4WmƜ: wy(n[Ap!L*]xoŪ 8KQQ쬮Ew0}t>HÔhM;WRFw5lB]߸zd{jN:?71 ~?{6ietK!SơRsfmGZf.M;/r/3/Eg%^4Չ,Gs.)3a=[ӅfAY?}Oرb|5X}4Ɗmoħ/cgVb[ٰ<^V>jlZLhl+'bɬtcŴ HKKCvvQ/SB=b--- #I g$G}^B-N- +4N˺ >1BtE}fF(ݙ+y?F܌::l%dSA@A@,`ɟڹ#bk|LSN{((BK(nt#: .:mqɧw"jte[/g!/M83ʍO.ICg?wF1StSl";*1|8R<` cdqE>|>kΉ?33xH"SK| |oсo=֟ !{v;"^od3Xn!' J4w0otHZ`"*Ă aՒEjaԱxH%A' Ḻ ^:Mۈ6{ZŘ,>/]TrK6 p ;: sL qvVs\p:"J[=F[K~rVPcf&c{UL3_J}e\V+>{clgd\/[dlcV1LnVWr҉%S+^W/NoLL~bm(뭮|F[3Q>r}]_60+pYɕ:X%3eՕ/htuu*77Q[*/kik1֕/JLnV7dFDz{}Y؇Q[=Ѹf1d*1veGF\W)V,c9sc !+d\GQܴ veXx!RI8]iʱ}<=H ΞʺvQFJW ɣN\Nl_E'T`}DsgY\'\SH|jדV_ܪn_RnWF]%eVu/p]rYL_Ɍ:/+;%3W2+]%7ꩺϕ*T]Fɬtuʷ17e1TF9XT5JOJWɍz|sedVJ7ʬʷ>az}dVu/UWvUs%Urӗ>e*sdVJnSu/UV6nr9ו[Օo}lL٪ʕJ_Q>Sr3}%UrӗO\6CUqYPƺJGɔ\Y?\XϪ|s,#C)^9W2+]%7ꩺޗ*+Ue+[c]JGɔ\Y?\XϪ|s3_FOns]E)]cL_ɬtܨʷ>W6Jfz}̪|s+[^ndX7Ru^9W2+]%g=}Yܦ|L !+=_ZzU?ghduAM.vIiK! q7QQZ !:P:dAFݴKqjIK070r3kkm0/;A>z_QVVr3Jf1֕VmVrl1{l>lzan%7dFc]SŲQ:hcڬz[chc}N_VܪzXe/c]okf%Fc]of%Fc7}v}ZoˇU_fXXYƲX612vfeK1֍6V,W>6VuX>ʧ\Fc]oc2Cȳp.v˓|$fXNcx}u"ڻ׭{x']B,}!> 2!>ea' ʘr8 Z@vBEOբ]_!2@`HA@}|]ǕѶdf)$)v [J!M7٦ݤW6rh 8Ԡ3۲d1>cιc_{l>43u4$ 1F~P]]P- dܴ3z]9,LԧI,{v#N%2D61 DF-%СP8iʦ91=E?,g*wD}-4(t3X3:S kxQrrrz Y2zwk򄜚 DTXl]2"0zD[<[y Na8Jj&tEb@&CZ򃶺gd0    xfKWU#: OSAIsSAK   0V8! !xᦥRAre0Xxa    !',!x11Ա$RA@A@A` # 5ÓA@A@A@=A@A@A` # ~x   A@'   a$!>"NcԎڋ8Xl"Ѻt P8&7 h4P(px#&F3Xq1%:OFe,HنJF )}A3Kb8 Ccc1%   0nmQ7BHdee!///%Ág0u_g^ށ&/SBŹɷ& ϡAmu }_º1mtd{\m??'&bbU6nkC㾷Գ/aݺ eaʤqN6'^xm;c\q?{)\]&M+ُٲ?a\XZ8Ï>&T^Y7<[ t߀{{Xjl޶P$A1,2$6Ʉ,n$4߈WoF{;*QYMq8NS00s:Catf 'pIDz+uk7Sqط 嘽x!p=Q<]xG}6   0쑄pQs&[>h#h֬]%l%9غivhGuu[fpO ~} 6@gl]< {7} %`_Н¾+O4ぇǻ?!х&k|( ø)ǻ>?3%eUڷГS/Xbxm_ŊsX-߂/< _ 'z^^_ފ yGW̜Y3jfƫO݇p-.=wai [` W_4(;wC<ƆG4؍uغq*0چuooCV^ ^X ^7 w~]@NlVq]HZ[ yg#Ҵ=; qP܆n6ZBq0>ů?]yVbLA@A@8{/ $)#MBHxq8xY:C Iwv+i6vYha}d}-۞lʥWbˎy(+ɞEyhط~7fDbf%:y-?V݇.z5`bIObʌr|;qU9]xzG:36ד|#q/x!T̺.}!ZڙEދ7X.E߆_^0H:zqO+$PT>}Ս~?ʜD0BiY6#W~~d!׮B_4 ,E}] h䃴0AKGn~V,˰܏`ڜ8}xoHF  B<;E{ h\r?Rzh a鸹p8|˟D"?9ě߆5tqͥ5޹ks)u[[q |4%^qE ߊ-]R7֯^ZqelËX︅]gO֡shv+N\xՔH%E%xͿӒ&֡o|Y]Puxg |_C%X0ʈ/7+睉DZ\vhbv^scx{) 5c޸~w]xW\v3G%ٴfg?)W|/, _;^oK/ESϡ'/Z)q-.(.g{?~q7peS/l؍I8{I-:y 7$t#h&  0''p(p>\;%K9z0]mPPXa+1Ǯ]ᡄhԉ`OAT"4FoC{&f?@3y(B~gTv#,Cb~,@7-,(ȃDn%L@w"TIvon&Ֆ26w5+3~_'b[r%"rM]wgϤrB}F&OGQn򐘞N燇@/YaxV;!<;Q]Y'eE4^T݄I rRRĝ "r߮n L6fQV]z$u*= 46v q5F;˅lJ(F)  #L‘5e&R]: Ӹց`Iă<b陼 pIJ /GU ó$rRr 8%4FW+?A8ɾϰE|1h'lA4H@WA2tllWq"c18]tj,)eFnن*G٣h8I[S[:R5c$ ,(&֣8TZA@A@=ej*0%.:9+Owѯ/J/vbjӯ?_w[2љʉ7/7|7OVh0aoa,`HN6NPWWG$F|8SP Ll8wHbiOl(Un'Sgb#Ongb#5'ݡ*vKǎKGG% ~}>1+ҵ)f79L|g#LtƲLXz |2=S=sF&:f 3D,^O"''E~BH?/mO#A*N7sP8BZ /d;ie4@zA4 ]6 'Tî&Jhf,>Й%,/F3NnմfWZ{0^塘V;kE)-t+1iKuOOqoaqq3.Z%D;s5[v}n~ 3=MWDb}?Kx>Qc5=^t/&_ᖑ%/NԘO7lgfs"O٥(z{{imzx h[7"?l"jx˸|zu!mfx\]C3vA5Q-I\Fv~G>{]uuawGXN2`jkw5SBEuE)j10ȁmtc73`]702hD` X;;e㬟/bATv#|4b76;He;'kJo};p|X:#Ѷhl_F'P>tvWxWx{vtq 8حfEq*;v>Jo};ph?cχ%~Ҟ!ҵ}A.Ww$kw6xx !!N G,;cKofu~h`ʔ2~Et G”X4?AtFڛFȝ1 nbJ/ДzJODyyy 1c93v_*K9?pˬFUV/KVMg]JFQ6U=exdt+~쩾U_57r[R:<nQ~MWvtVʏʦN>(ˤVM e,cT}9ʎ9NWES};ZʦtVfe?ffLbPM7Q4%]G#Yū(t+pjsLkJ<ʗ곮NST%(tVʏʦN>(ˤ6Io&>t/5gYVvtõ++;:]_լV(i'.ZwZJG ”ey= }0oč3U`J\;DL]e.c.5ol܉WH(),{5yX 98VhB00w܁7vٔxfy4+恧vDgOK獧!FPhi_5v|P2V|+Z*NCřcUdx#A1X\v:vte\%kǷ[̾`vtOPV|+Z*Td|XRe;|*>zv?Lގ.]2v6XƎ.Ol Ʒӱ+[z=ϊnE}SrV6hvf_涝 %cŷw(t}ɫqdx#Ab[цNSVzV4eǪLގ.}8fE̖Y'?ex,>:?59he5ey0/ QB h8LWYgI(])v"BqJ4z̡c;M!8HҢcbidq ~ӕ|fӲSI,б8^~9o׎nU[+-+m/e+lN>JʖxU>RA1(lhvvҥ1i0JkN&~a'۴xJnk( /kոlg.}(V|=9^~h=cmUe;8ʖnGy r >36[|l?;9޳DžLq(|⧢SDzjE'QT[䥩σd c(WtR2ʇH(~؝|ez터(J^(=BXE̶4>8s'ʷ=GX˻5(L>O|O$'n|>a´%Fɟ*©/  prL%9*jsrDž;\@EPF}D(4WUCIIq}^%Lg'?=O'+XTO߉}S4 _D[R 8U/w>Q~dkd#3NCrג.7w&|fy΅sLhD8D0s+f2Λ\LBi̐IJ$mnnZen#))SAu'%Jh^Ű~^b),DD(s~A[0}^î>[/(.0'LLn_ྦྷW#79xױ30] -?_~zo5悟é3^xPsc &dts8C.))   i-L\tqUUظ(󣊖J~I #W|WBXp;cu*ETCA@A@N NT{P{?cm^3K]t*EQ~.fO*+!+P7-!,Aq.] q2 qj0%L.X́j~ȥ;=) |D>VN%nbrg(d)   /=N./%~|PLI>Öq|7(s'Ÿ\tt!+7" " L)dt8ZW   >Teeecޔ\:53 "a]V*:O 0fWI .Y2S>AO.)/ Da??^^g| YE|Ư`ņFt¬=Q4|_MX?w'k_^و]+o2^xs!}}Z|&&2 #># Y|뺌m9(m6\o'ۉo a9Eam7|5XoCCd3N]Ba7H 1X8Uct`RL$b({xA@A@3NZ gbFhLF"~54ltu+¤9,=wYW-7ײ~jeO?%Gmkxe!ߎgذ 6;1yk0?^y9OW'g$,i?%+goAmq+B唅8k~ 9qwqW~u? 5~z'}X4 [V/s: 0ʁ</ŵgᗘz{UIק4nāV8@¿"_ÿ|SX̟`μC^2*I|A@A@F˄}jQgtS7WGv

    fL0⭞u.f/xGK[Ɇ^6YM˗c:]tf!-ZLa%dwVÔ30k ,&zi\   0Fpn _{^G&-'E#F}smgF3KÙ#bȐ8k 9@eee!///6׭GVt/dȇ/!GQXL+׼.F-%3fLG p[}4:1nLx"nK#>`ь*80o)D{jg/矍o/{"Ϡ(׍`k_4Κ70.:4f*>x90cBc|L)558¥E((g.ܩ5mAÇ?t" zquFYQ.aBUy>$,| qkΡwW^s lߊ 3qιga*_2.J睱fZx> !O1m^\`cOሐ   p 8vΐپ~9p%WjQ1y1X44dţr EN"H)CitDKs D4_$؋MkW9Xx,#>%u㵌d'9e$`FLd::=q8X&MǧPH;Frq&@'F}((,DE'1']jA@A@A@8=0&(/3e{:l{k/M.lٸ 'ōm[v<̚7OBD/~:균0wl߼= M3[ڇɳa qع\u[7`]<[7+잉M=FQ\ZvL([҉`(i΄3ЀDۋ(!Cn߆0f,\b$NC"tfkk+a.MA@A@A@8PEⰬ2!dl,nfdG:P^M=6'4D (7 mu-Epƭk^@ڱSLՈ:~ẏ} EYt/]s3:sÔ)3Dv+_:%v.@ ظ~%hEeA_tc jcرs7 hWn"VcF:}xC%cb0͗O QHӒ   Outtvl3:ql_v5&ӾݿsZLsy0o`8Z2JSRɫĂмf|tf C"|-3@IDATˣ;}]p{,GNf^x VP Հ}-?̓u[(scⴅUsϭB0O )ݗGEA QXM ;697%N+**W $!M@n6;EvQٿf-TcWt]%7DطWchӇd٦L㶢_nG糎]Mn3VV4C~Vt6T_ٲu]%3}$-q{0fY2C+y+C*Y+NlYպIr(zm%oEc=nۺ]ц곎]u] Wj]WɤBeeW[[X_շieK6dulYvVt6Tʟ液3Xm%oEc:}~~|Xю_Hen K)y+zӍBcM}Hh#|;1M}HNLU;*Hgѓgj3u_z0YLG赮v<;YWo:z(ygΆ]\vtU}ώnۺ7+̘(fֳkʆlΏN72u9V6MJk;ݬu?YєNUʦ=SH`Jl*%TxVtQ2*帯}cGW|+[f}%oGW|U5TmqUt3MTXGV2f_涕onz_TdtylGVtmr_etz_L翝auYdu*2N׎nTpQ:MrV4oSikGԯmu,3)53bR)ՇHH"phf&KKKЀc~kKA@A@A`#'O5!G RC }1+Uݜ2%-Tm   M4!%l؃Cv|Ou$>ꁧ/r   p#0hBDӧhA@A@A@8]jRA@A@A@NG$!<YA@A@B@By A@A@A@8M4}2lA@A@A@&qD 7H NHA@A@A@81 yʨmX̵܇) ? ɫ+Rp!p w;ɵ㌓L`7A@A@A@QG ¾z|#*k'+@gH|>BFut# Œ" Fƃ@/E1twuuOw7":JÄqam:gs*Xpơk66z ~iZ ̜5IE\`'۰E< _gAz=2'LBn6MTS~KC!-CLJ{vbZ3j*gR .<+_>jm3($xǁBͬ(q=0MA@A4B`O a_G:X[X{:P;{Cva=j rD?MΙ6/F{S#*jh +Jo^xivecyP;w;\C&7V$VQS3iw ^~AfOǹ o-;W5\1K_{9и{41,{ W(ʦ?$DXUlӌ@yp[p_ uQQA_peOU@7u#?\G|uwݥp}8ց{| / 3.‚jcQ:T9@p+EoX`" }7?=g^q^z??{ O~t/y5ᢿ^4Fc{9N?vm"4k ކ{{H8r~>%o؃͛n/EYqV-j6qfױk3rb +/;qغmW# V`z0~|vo\ww bl\w& ˓LG-+  c=!?mx+WmEEl,UGys\hs{Zx QAfer#3E9hډ,HNq f͙q޹X|j'׌ Oz:ˋ,owh v;pl<חጇ}e 茖sw.0Jpm4wb+(_q^t&]֖ dyɁg%^y!,RZO! _rVoyqgr 3q_'bm.l~xg1笳훮ǿ~G{);~m8-]N'>6ַ•Lb4Ђ^ێw"s [XPHK ۉ-Y\ ~g%r аs^yYtv4YW kV'n Ͼ6hKдc9~}z8( 䔣ɏ_lc_@bݨwǶ^+;p|"j Џ]6nX;i8 1~qcD>'?e5Kزmvi0^{?mG  i@Ƌ1ŸʫP*[r]<2\bby/<ŋ3Ϧdqy/҉XyÍ|A@A@8M8!d|FJ'%@AJ  QJG5 r(QhD_EI]5% !lENn. h)tJlęO{ҒI^rQ4h"dӲhg<@iy%P U:[b,N$^%\7*G{ WZv5=i4+؂ʚɴ&٭2cAm~ڳ:^:hq*:eN!"8t"f|fNdSarJ?L3]l@if%sT6Jj ܀Q3"}C.xqU5t!J=hjj$9С>db`\i8ٞpv;g4X^VH3u4 TRl, io?K~_􇝚p=<i  ,}6OU:>Q墓BS&]4 Gb|UatI:|"%dmiPX4i2d$Of$>>b1ڃ #`N.YOόMQطL ;,ƺCⶃ$Iq6Gβӹb^:ms<:OOlbV:6^˴blpmӹyܷ򊞊 mݎ}gjP6'hvvte\Rr`lOe]ҵ\|XdusC2˲͡Skgk(v=.f~ұjwxO"VRB3>~+>999(**2z*:"sP3߳x<^3>^Hs t~kc<=ٞh<^^=yB___ !M ~tvvvbFVѕY(((8\f}+V4H|0]$)eʞ]<*ޑ|XF—ن;Yw8m;vu|Xt|XцG׷aEgJoe7|XO*V>GblVq(}+:t9+Ь쳞=Xj/U9;vT%ggߊδz=+C!]+ZvaG^|;vT"gÊ-;7m@7!tH܁f;BE"0***RN9~x??pK骯}j|):MS=l;ƛ_ }WKV~TtVʏʦN>(ˤVM e,cT}9f;V)CtWLej\X芦nm>ʏp}nSm 6/Qqp۬t6Kَh+yݦH÷ڍYFʖس.\eT[vrnt2Y^o~Ίnmvr,}+Gtuek;]j+Y3cjGWvTrnJWm~r,} .X]V+;sE6>YєNUʦ}4@f,!f@! (É_yK0LbcFȂ   p !`vXe !`7{1m$880A_g쳫p:(q休GnqZJ>N6MrC'*1LKQA@A@AA 턐sHG a*+'hoj_.+BYQ0x(0~B |M DP5nrs]l6C*  qC Ј޷֣/桵}h*C{[/J.D,Z[݁)hۋqس+q~':}8hl؏fd!`Z$(Q"   0}Ly.}慨*ˆיbDCxsJh^:5 ۉ~? J SŋQ؆ӃDTVO?'i<A@A@A 2!tLQq!D d~Q1]OBCt!Bxi@)2lA@A@A@er tMqRhdh*uVET2l64IOG-A@A@N2Z2ʁrwjE2w &JWLkkA@A@A@!2>TfA@A@A@$'xq+  F@F"ytZk$W$F4X7d=ڈP1>h1r!:D!;㔾  鉀$s$d7p-ꞇH xycxvؼ}/{K<-FGW]-{G/jDغc%x[WGԷq6};ރ  cỊJ=POnϕ>>??f袙 ]£O' R?*3Z4C:=(Nw> nzt%I/5f)~#An4&h&vdx2:}NW7B4պ_̍xݴ 8#辒C%?>u9ߟM;9fMhTDu jGi&I'gb$Y_I_rR([w߁octB4kDW?]bNl9Mօ1b"< a}ԎF GKb֓Ĝ0gr1cL_A@A@O=a;GkESog,<_G0g -uo;~M{0i֙_Fvn)Tע<7,E;7Pk7.xϿn4r{=yIQd79#,’sΠ9pwzwޝ?3g1DA%]va9yzwpE@Pgo_Wm~-"JL6{ ƿO$D csmHHLD֭ߋ%2zJO>ڽ_y '4?|e9o~?5 K B.FqV,#vbXyoUb ' u<׿̿}aڍ@cb,ݰWߋDg_Dq};d2-; HL/ =q?x9,!rm0翑os/K X8N8N.MBx{`d:n=E+qc惈K Ż/>-mڙ8u1x $xUR+uxϠGEY)7`pf"B#1kd&Ԗd$-w  ?[{lGdHVcUZ+`շ ~Kg4*0:aɗߐX&GZb,20kZoW_>fK=MF{QC ң S3/%\n.L7RʹsU_H""ꢐDmk;FM S°(*ϡX|,qD \Ʀ:r N78E}c;$g cʝ˧AJ EbǰqUSIdĦlRK,P6%bHbFXu@<,]&"r-+CHd/̜2cC"ns`FZ(N'?ĀaN8N8K̵ܻ{_)e.h 8:FG"o*b : #@\}HF怡;YcqwaٖlȔR4VaŦGWDN~;nfɅu>,&[uq.ZF+Nkh{@ .\_,ߊ8D]T CFMy@!3/CAI 4T)PvU">&[ +V.vS{@U=*) ̛| &D=][f̴~/<2z?%c#:&I~ ]6{6Yp= Q I5T/ n ؖVEH!gR|1o!ZmN ؛WWކ}m&|(jrnpx$} B_wEXz,<B~Y+&O {K9=j5pP;u*<(c員SuJ=Ȇ¢ðb{fulGr wCޅG'XwJbw#ZҎ={hٷ܃)~X1|5/91q2"8]l9 ׀ jjAΡ*:.(Rj2?ć(q:\y8 ^Ոhl1'w?.DGaˠUch10;1cbivv!tOPUZPIh2+K ֬]ry]Qv`0| Dh;8N8N ?Kȁ|x B١\1ѓ%D C} Z: A(j^FؗG"L8&ؾm9`~ySek''n߂e Ojʽ>כ߽{8N8N dV+~؂^8uAr׎`[kN FMxkRhMdmqB EGM IGz(P4^P2Anq'# `22Z,i3S":WFn/Y'}S, k ۅϓԏuCLf@vٵzosM6?<19=[#=֗poq' p'p^"{i甩@ ͫa1E@ LõWԾp*ꃶ* j)& SoNsPzw,<&ٹȵEhhjjps ϳs>UE`A 3esFmr' pG!]x1$J"w:mö2=(6+M["%*uO"=PIT٭5BihQJQ%[.aAAA'\'xO4Bl"""J~F?? i3)JA9bB60i4aۅ~eۼ-N8N~=2wN4L*2Oho2R xHR@J-`9ݼr j2}%)Z@䆖P ^Β~h=\23,cߝ?وLv/>Q}|'c<߿(CGG暾0Ɋﻰ?g= 8N8Na(= (۰¾3H5>H;HI R_J:sNl0@Jy8<&K] UyBtl68YYY6m r/YUAx1oCh(n,$286̶NWƮU)8vnӦM;/[+L?f=,Z4_RcbzE>=ǺV;cݏ&8N8N8 ASvTuǻuo.wvn }YD O < .$VX4"}C $2:uZ=[^m rvf{gNd5h)' O`eWY[/* ^=E^O‚FɃ^pݬ˙`Œ͏ONKvxרl0 8\1~y:|{qFNs]% )Aj[#i6@!CZF2!#uVBm p' pY =Xߙ(?&%y:"`XVFenZϩPkĉqrБZAmF#9z噏b? ?K,ARR^xSbFVD{>6pƷsBni/߿-05@X<${Júh+yիW###O?Q+8dbB&R9Lmc܄U/[֯<@ͯB$(؍J؋O!5BM_w䟜' p' O4|-AqA1\^; ҕ1h,h)Pai ˎP'E݇{)1"9-}4`e/L>'IN6>'WwTcL:\4A}(MJ֭ʏzf0bQygAvM[,#GmY.jJK ݀ܽPEk@5~m%G{!8)kzA \?ȬD9N8N8 <4/ж-(w"#5 }3R{{V;KJFؚ4LEXa>ZL05 Jv#UP?3YO?3f8z{ғ`I^> LEfx((`nWnsKXL28l\@IDAT!/K i̘1'e9yZpAa0{f2؍ذHCLI(_`WA94~6@iwZ6d p' poAsF r2xDkN8N ۧ|kk###$$䔚bIYDKTʞ ˱H< s"OSiRS]]Mk͖YR {7Lk1SPUU%$!g,A F_{ @{WHR__/9ﯻEJfn'YŐR(oUDAjH8̢Ζ:"d Oza_/mmmRΔ"/' p' ?`{4~&zBM t6J)!? DjE=;---Abta4x?6gEa67q iX= U:wBtdVI&Ya}Ba8N8L |t0C'{<բ\w9TEd'*,םyb,q'/@NTV Ԙu͑fS>owcQ}"Wr' p'p>'A<燦&0k9H9CE/H  bahBpDrj*D]ndC{m-D,H [Pfb~~}' p' p'p)8mA("M\$jU 8&r1hoDGk3Fj:(]~Ahn:@m@8"BaT:*DĆ8o/HHjؿsPY`464,*@Br,G M r 6MU;PWSI2{AF6A %޹Fpx0 ¯8N8N.^2cuCP# ">?TJ,&WOS{=T juhLZ##@&-VA6|)vbuۈ|E_;Ds-u MB;BUhͫBaёrm4  _ (db%](8N8N8N$pFB-SPtD,R!|J$l&x] .&GK5vl*EY(| D /%U ԣ8m0$06P{ DN;"(eR6x4vm ް a0իPI4ƪ#ؼXQQU& bM7s^/' p' p'p15Y`r@2E$Iy"X-&p)ֆ$)P, ARM&BB5\f"R2$OE2%djt9II%$ S"b7TTJ0UR )#^j Z Ѹ'%jB'#'[8)Rkk##tz=BBB~9N8N8N!/`>};¢cRPHϮd^wIztMm-1\@5a|Ǻ!Gc,]z1Ic|Cq' p' p Ug2Kx */0dE\^Ϸxر~L"W@KC$!][>Rw  2+Ol;BF֓/MZ)Љ^/Y_':UWNsi!(YdCdu&S1%9zz fAppLOݽ~圍SFVoVŚL󟠓";2I+{l3+:뀹R%ңs]N L*tP*)I͵x]6v}wȊ\it:&{ǞFH);[ͣ,G9yE")/&oJLa\}~ܳw.x {;V|'_}NS*##󠐞wӻAə^`,cE½L?Aw5EU>}~.0t p' p7ɣ䓿%2E2z@tYBFCy8NM xoCLsb"RIkS[5x[֡Gb4=jPD=0ziZLuY)ޅy 77ǎ1&wa$XQ:#E uݮ:=|cnzdǘHaccm cjD2o;V)rٸ*Ɂ܍(j#.''I 3Jxs*B޴> tHƪ=e20[W/#`hL|.k>{-X [d f(-ڍu+%!7|&Ɛرv X=/ `B]#shv[ߜʁm%O.b'-]T(sv\Һޤmt(ܽU!%1~1V݄]?$Y/|~*2_|:$Zl).K_Yawo.Ă QhBrj"$Ĺ_}5 +LkW`՚C0]sen'ں[(ȯ1GBwhQTc Јwyr>k`tAر 7_rv!s%]=04bcV!RSzg] >{CIi=l[XFw _8bYU?^A8l<=I~/{hVoS w_t|UXbdˏzwwXb$pMbޗ((Ebjȥ?9^8N8N P ‹osv/^C3' Ama[E}Qk륹HMNfT!V /'n5c3 JIk)(^CF>+<-F֎mV_{`ٽ)M?J rw}}[cO.Cc nwl@NA9QQ\ ƟrI2 EE|;MXxyPGD9eÏ -Y|n%MQ9Щش~]D%cRL4 >z6ŃxeR\=s(>[f]o~ ߉'ڎx&r|ZZ^V˗"D(,ZVu;WQdC҃!",σ+XS_o<+oؐ*Px, ÁRPv6ƍ7`Z)jn}=,7"<*ġ{6~M}b@o5(CInxY%9]Ӈ>zO*ϡkm9 [AGk i=Lj&vU(,(EA" 4T^|+2 {|_uI(ٿF lCz+VĄC`hAI!|˶@1C BkM1h-?]AFNpWOoŌ)؟:=;7 缼(*l#4( +nU&Tj|  ?l@C t㒷{k0cTx>l_t=F9{l*rba3V/|BɦX/ukQPފؘP=ޟ~09l**k`1cUMv ڥC{! ݲm7umxoJBq]Y0 p' p@1:w^'.@A|.Cݡ,țw_xʀߝ>QV%Z͋,Ɣg8[r>2aNCÜ(-/?w +@U\O , elkކАlw:[V %[y5YN#7afte DxY[F)ffa#t:j,|eR҂hٷ5Ƅk-m{rҋX0~/:<miBR\$BcRCmt?f*JPS^ ʼn U娬o^*H\x?X_u8v@q/`Ǘ#0}>k1`"P)2h0$ %9 %L]BFDK5 ꇫ{AN~y 9;z |?' p'pq8⪋/jb$WF_<ѿO"㒑.{G7c`>>))15w"|9IM}\6udm8urTWLH rtUBCk$!-NK9$wA3C b8)%ˡɢ@rd}1[%#*dY;Wڀ²z&Tb)TI; =3)!6ፏEcQUTĒChK>R ÅҜdC+Yv[I1e! 5T؁&̬[7 r_Xv+[u[&Y mf2h|4Uh7ڄ.L6Fr$<̃0ԣ =3FTàީ0TJ\}_0eDdѼi}z!#=`-(ӐHÅ+1l DsUjf|,YX=Mã,Mf)Bcs+R6b7 kn8"2~fPOɃ]g:kn!Dv47:'#z'1{$r75Ɋn8ZGdݣ]V;[A6t~~d43 hi=ߔlH7.HȢgc"E ܅jɖO: MqE:a*r'v+ĐɷkG#G3&Ep|oAP 7 z/X̸|4Yh{"G4I4\A= };6c#tI9d &lߔE77SWCiw[qWރ.O#/C1M`p0G Ӡ & +(w= NIp@\.ZpvvXRZ-EͱHkF)4/' p'pQ"ރ;4x |ik5[3 qW~0?SfMYL>fΆl-7O$\@CSJ WP,jN `"\EPX4ƶpR  7 \O0Ҍ4C AZdy"a?ubAcwdmk_}WMVJoJnہz;B0e+&b”i$IG'̲U#g_̹FL 7x\oAޝplH%xeXHnMײuuE(Dix? <,Čz-YG)&cC%]k@ ;S0INC 9i7ֹCK"uVGlXs:)FKBB..2 "Wګቘ@2Mԉ+k@OQj߾ߏHx} 3H0 AU6|p(@h Rhh}]5^{c.:,$DO_}kљI$&[cGt{sVpa?E$6zla@ZIe(Q5E$fDX%=YOǎ^=`؁+cqI !j#VtF"M{YT;3񈡢83[ށ/н|r1h8̺0~`U7spz\dlZ:/?kG^GA:ZO/U?6.u;:Q n/sϿQc%6(WBc &٭4 Gr' pEJWI;q:EϕgvJXNn$.tld.$ƢPCz(VZfrRHF.sQ7MIdI%^+i kSEkk`ohi$}DhU$̂ۥ͔$ {QW] N?J4l'P zXב; fS1!J#z^jEu@@% Q-v"Zы* AEi6LiXimSj~nGm:9ZdRʗ\M椳]c1*jWF7dabA.7S(W/q%T#d vDDC?tT+l7EDFa~U$;`6)R!kN@DϸPQU_4Uuv,$i}鏲Nv*s0w:44u㥀hl#2ʩI(8 77+ՒkRԘI A6W5UP @'%~V:B "ìcl${U=熑R]F|Hp2H/7YTih3IQD:`Zl{\`~ZK53$rbԆF߉~ZRښZk SW.jHQQ9BD_a1rf%j gF8]em7obOnN\ɽj"68'k:ÊDS禗 r m{XB/JB;#1ON8N:y/:L 8N8N8U꿫Qr' p' p' =.Ϟ!o8N8N8%l9-"1u͊(9Eal-,i' p' p' p83$\6޼JdB‹p(w8m{iU |~ cB4 {&P"*`5ؾ9R (0kX_N<vQN; -A;)?acc8N8N8K%-+DeE)Ԕ+ #BR$G7S65lSH| bFT"Rp=J(qI mODM,_W{9{#*@ȉ0RfʇF6!,:ݹQ^Z.4PtK)i{Ʉ;ar#O2E=BSu AP+%R~~ݜ' p' p'p)8}AHV5ӆj);PR҂p@%LHBMI!Jp(@%3P:kDpFS)4z;TZ DE~  q*&^8N8N~K쏗S# HHw)8v)&鯠c7DY r1񥀗[-6Z+i=ڶ`S@.fV($Jg$PB;=+ɔEk$RhB}FVR!}+dҹL1U`x4Jr=m40xp ^kkm]#$$+' p' p'+ѳcc#\Q]2f:)ydηTY[svw_aY^6sw ]mK8x!C>WdDJI~]dd(nd!ZFNk8N8N}`.MMMd ((}1qV21n'u9U>zݘΫtfOui|t=fMHU/|x-ln1zdw߄@N9o8N8NwO N'&m1!΄o jdb}g͈z C֏m:?)VW|mt;>Otx}yپ _]vW {gg'=;2y) VZ{)KT ,zgڅv\+k0;]UNi-$,9eWߌǞ| 'F%BCnȠVɅ`@: :dߋI>T`'79*SzȤafqPUGL0Q"3SШ6{=L"AlƥbW^8N8N.(L0>_KK 6n܈#G"AXec;hʞ ~uHM9Pqs$rbY\3XL L9vm{>666&dCYKw!绾fg>ڽm_rx.}rz‚XD]Nk;pZOP9 => W5p.,Lƭ݊XJ e7زP|F^vn> E~ΣP#z_y\3J =v[:Sكe+JCU8.;PKxN1 \6kB4{*ʿ/W? cG#'j;oXp?5RF oCCPPp48"ÎT1~ػ/!)dDG mz`VM$ǣrc=~,*r?^rTuI1אX 7tqC :,&lY& ׂm7~'TU#1}e{}ʈO\<z ? +e-(Y)dLޞ3p}7Y{m{1$ގU@MK:>Q렱`Y\Q9 aI0Wb5h3XXg/rbۚXn+FǥɃL޶t?8N8N 0'Xh(Xz}Æ h`` YܔY-hzށh2+eGPRm꧄`(_y[} SIhbB[Jt:Va<(\dC9y{yP_Eiapch[ `ۡz]= c}>\c@ $dU~J'y ێGOFHաƠEL {#ϮBQ#ɰ)OuƸ |݋? EʇJ.7Z Ӆ^&n $}xxBzۧ[;h, 6V,k7$P 3ndL:B-Vr Nh4^ʓ`g~uJX͊'{f2\9c"^j -_d:p' p' \X|28o^4\ع;M vDE䇬œ977a͐VBlexſ C}|1C$D= ޣ̣^ُkm jb"hL[ %hnnA;x]ID_g!c o7}tcg"Ϸۨݍ;⶿iC{IB0leP};w<Y9?' p' p=E`0%gGsssQ[[}3AϚ"SfFy]܌Q2QMv ʍ= Zo.aD#T6pTh#BT\Ol(n~ ‚ޣfzxB<ذi'<1|hR׆H?)N7{80t`BM cH?? (MS$<" H.$tk)nY1}0dp*$RqAK.p8+Pʊ0hL  08N;0 nij)G~lU rp?1z +a0nwxRԖ|6_x4W *}EAY?߾0G W6ZP)D /)蠬8,")+rJeT&u$b$x~c G  JTaHǪuH/C.^8N8N.PLz<#k,fttHaf`1IEOAba' b K4j2v 1U{H!NMvQ Z<$(JE$$i'ޡ$򆳾\jdpXli0.ALu)b>44@Ϣ^ cgP۝uή/:AzXOv6DZE;OX/Ɍ%d1T'-N j,lHS]z>4z* Cv+ðCi$u$sxrzKҡg8a4N8N8sM zETIFV|@ ';~lP1c,N8N8NjÿNfB8N8N8sM@ʵƹFzQYY u\o8N8N}8Q0iPP.QdӺbr92' p'p2 d~clG \hRhr,+/U(t_\WʯNƒ79^`w&qUϼѮHb-Y&L rғ&ݷ4i9MiNSNO4%)$m\0;ؘ`cllkdFh4{ƃYrhzo}{-w/A5*@ п?@atÜ{^o$RUzz~]M g(j㜙uqDE< !@AP*sg}O'bN$Hf@>5Ƚ=\N @v(kk̵m\kÑg@$_c$!pyП۲u7nMFE+QG_OSlHL0O3<(0M#+ fQ Z{D-&x?'j`FRm %v$K Y#Q}30'd51]]BsإIi31:B-C}jY?xL4u3(!Do/ƽ~hxgXzqnP/y `KK%Xp:GE)`$=kU߉HKIs>F\숷9*jn ;e@/ dY8Q}HQkgJCݒ*Ll˅B& v_=?o(CQNԄR=C'.$ロ=EEUHx7`0ˋCCHx]i& ~W=Q&͂z<7a<F<To!t( PĐeϣC+ii{Aj $@3K@5SDŹL{{7}'~1]|?xr;<g #mGl&Ǜpݛ̿ G[ͫKᖉ*Uk!kƦ ')eC!?<Ǡ? AW+^?ZukWkB^݆bڥ(3)޳|k8_s^Ǐqnj7Tb^8UF=Y|/^M߮աo1uzbDώUe{ -,x;̳;hMǾEf^F鞗6&|>? r9985XݪU瓜4p0Vk|B Y=8[8{_:E({s#5g츂#6q~ӄH+cxq.ZyU*С}q#w$ ąAaSIDAT݋+8wG=7_Gcs7F<> _y$ *FאU .{+~$:F|iO^SAX{d{wYh xIV&~{^3xr'd4b$[}aLFs"(];.RŴQT^>Y=vi8v ׿ _3++:*R&H'\0C (Yr=NlC8yh?|ېmÞvDeÕ~Xl}XmmO_-,|ݹacA;h't0?LDW{l-,*%hoi&D[{`6)0f,]*\?%&f eELOLF1Eϑh8 6|Ww#\./06"-I/d^#eyjě|!`9(*-]LsxT ;؀G| WsϾ;0`*ƃ_xǰ/bラps\ B# u14.2! sZ8M;`N#7K`P|=r\W 2P斀YE_@IϜً>Ow~9r ܎ѮZ]RG&6 yZs ? reф4k`ʹK[+QZ2OT$nXWURi-KM2733 EH_N}l_C(/kDQI Rl(/sć"tHn9zn{ YaO5|Ȉ@2F.úb;>K/ޏ^ C|=()# z]S(ʹ@K HMOCie%m6-RC%,-"&@Ldc8Yy%0yLHVquO=%(IÇ1g m2Z_''(N(.&qܢL:WnI&s>BM.`(IG5xO 1eO'T@W^DRYVb4E?F.s*uzď {SLyg $L@FFF(l8$HR<4-$VrJY5VԳD9ťWq}W!t01Q$X,qrM'!5\F \ E     ICXuMoPHX      Nen&!     X XEHH"8TP'O.D$.[1#<}~YZ4$ 5P\ @ B "ւ!=zTs=d^/">R9z*4e'}%":rB$jP"4P$I䷊7b櫢vB8.IHMFC  "`01ՌR }-qFMġ3PShmBwWMI/]T~AQhJb4 ~'$]X JҋgGk[ .^l]͇uylgKQ'yU Jz*T o_  &@Aܑ xlѰ}=v0HbMFcY<  "F|FJ+rgp{G8&+N xȱ.r ZZ80~esII%Z".9݃}5^t4dWT3DSe:  >8ڍ=OKGcG'GE5aQu[/chARB,SHOM+p:mXZZCpmHNOI`m4Vn{A'g @40dt5/!8NS,THH-rl?Ύ$_߈(.ԝtYP g bERq@J}C~M 9܅ (Xƥ^Zwi"&eaOk=޿Ԃ$[6gctďqW;eoR<_Cڻgϓs桷Xza&roO/0y &itQgnHH~`&xp"Y d1HbԩLtUTӤNddD?6j=d2//qM:'( ]ե+I8r :EC/qFX 6ʹ9UB>i(枒/uS\[ހ(h?ӔF9 6V# YˤIH`PB4 Bq:Ĭf A^" @TNhTW3G$@$@G@5nq1C-x#D# '@2Q_E7AN 9n<HHHHbt#XR&5dJ"X$@$@$@$@$@SP`:m@A8[}SP Nn0$@$@$@$@$@t]B! =) HHHHH ԽIOBA0 HTCjHHHHHh2{PM7݅Nɠs~SwٹHHHHH`. pp.i۹ haP)@r|VXr"KY,ԨA>^>tj)NK\8(5)騤dUc4J*T/V#>v&g=HHHHH`fP (NE1+ r JQd"/*fJ؅Gf 5YEY "" A3.//A BP HI`o yy%+nu94dR߳ QuGJPuՍ\  Y=*}pc'G~ j PYU.#^ 0.4 .w`L͚̂%{:Ce/V_%oFil޸o#yE%N9n|kiXsJ(ŏ5M0%*W.mz:t=     UZʥ0lz/a0hChjAv(pgy`(6b׋Q4 -W@j.ab"4plټ#T?r/=/8^xP[YF KQs*ktck'"p& WIHHHH`vD&NL5 `L|{t ? i(@_F2/G%E[00҉`8֭_j[EZ`̚naH4g&㽃9.ϖLّcBr(ڈŹ2G12pKJ$@$@$@$@I@w)@}|Bh0H[x @QFYt>m*GaW`/)UL5}2Z>=a2x#jO˒ʒ|}xAP1i!c1*U"r54$-'ʻKJKzY2rjqA$@$@$@$@3F@m64_ #F֯7.c!1UBqr0JQ rM&yDe10o     y!0 Sy?G AB';eN 9WP {R~2 @P,TɁp2&*2J2 ,PFBA׆Ydffʜ=c, tG851<^2SEcaHHHHHfF30!     n]?  YC˄IHHHHH 9YdHHHHHHf ' IENDB`openstackdocstheme-1.18.1/doc/source/demo/figures/doc-logo-fox.jpg0000666000175100017510000012350513227213640025155 0ustar zuulzuul00000000000000JFIFDICC_PROFILE4mntrRGB XYZ +8acsp- descybkptxwtptcprtrXYZgXYZbXYZrTRC@gTRC@bTRC@descsRGB IEC61966-2-1 black scaledXYZ 3XYZ -textDropbox, Inc.XYZ o8XYZ bXYZ $curvbk @Q4!)2;FQv]kpz|i~7C   %# , #&')*)-0-(0%()(C   (((((((((((((((((((((((((((((((((((((((((((((((((((I" }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3Rbr $4%&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz ?((((((((((((((((((((((((((((((((((((((((((yD%gv Ԛ? K i{Uq)dcEysv͝ox@Ԓ;v lWJMEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPE'j/Ǹ'|$s.RmG#J|kkڂ3_<}t޾r#jM$H& #ן~?Z BQPf$9gsIFcwiMuu)E v>ri\ c^K3n&gV]{?g_jk۷8ɱx ]og]'A>~[Y.U4HbW0>n3ޕt|_Hm䯛?Y\->* ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ($7#zxyW8_+5ׅ<+rV 6CĄǿN4W~_?*xj74 9)_3㨈6Z~;|I1ݜ~`+("V8B(P8¦J7p u\#qLh;0WߴW~0.]kmcQvQW-s~ nQ(O{T-+h#( @DGEP0%6Ms4pHUG'+ w 2hF>O?0k|U_xM .93mO.~K|Lt9l|U9_#YӏsҾZxUR֯%夐@p+6_3RС?5̃?Xԭ Qr썩QYrSWfNZvz|FI¾|5 x1$b0doaSxg=3s$}I_fr>Hi̻-Xe=eMBm |vOʼIVI;WԷ֐_ku T |_ kQ1i,$>8a}W&[y'{?'~,MFTm>؀}ox~#~jYeu ͤAq Hث#A }^<ҍlTp.נa؟CIGQE ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( (hOd7>O1Dcn94ƏH;_cdv9;#d[[QI"7=Z𤹪;# ՗-5vrUީ<^,}`?זiw=!vx8?ʽ?&_ k}QgTQEYQEQEQEQEQEQEQEQEJQX=f?ha*A +:]?G\V_i, .Ҏ2 Ƭ%-oJJCMK;v4,!]VS%ᶟdqƑ XQG@_/W?%jqK#htpie .8b0Q"U NjzӠN6(s`kXKg؊ET&5g7qU%l}U|1xk^LWCdkz;-7RYO :U+GՂ( (((((((((((((((((((((((((((((((((((((((((((((((>/V_.2{zp FMM*xdUW7V~^~P,Hj-[*O"_ɨrKr.{?hkuӍsO_Lu<&O]z<:dg4{z ؚt`77YAjׂ$[hoܭX@QFQo v0"(UE @*Jn:x HrVg^%U6^ F^EqrfsB`>&_p[J4~#r>QEnsQ@Q@Q@Q@Q@Q@Q@Q@'Z!>"۹ߍ8k'{[n!8'Y_n>'gy N"'`;ⅸ湕.MP 9xE^k_^tJK'я*?eq??tQEQEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPF*渑"w`ԓҼ|#$:lϮ_/-wP_<%}*mޤnS[g'?ھ5>!5Y7]>AU}V<*hcǘN0*+ȴ+nnvcO}kǫš_U%j;>-ҼDl&eQQ?5WP_Mp:/>_L gxItuGb劦֫FQEyg|Wn}ֺٳT]3ސ$mݬ}Q?ti1yl_p]fif.meIoFR?0UZh|.:8gE zӵ/!Yv7FSAVwEPEPEPEPEPEPEPEP ? ռ lpSꧏz_'ӟdW[+?Ɏ>RhiWDԮ4NͶ nø>q_GxwYtoqByFWwW:~nc'*Z =׆u:m&z^>ij{f?3*k:tw!OpGb*|dd拺k&s3 *ƣ6?tݪuas34aEWQVgxwSPӪ=5-&$3:/n؞#<_%՟dxc2 ^"?'2>*Š((((((((((((((((((((((((((((((((((((((((((((+!oˬ OC?ۜwh^G5[[#*?+ߴ1 ]|XHW:3qv'rO<ܵw|Gًg+vĿDQk¾M}n+>8|qpT jnr1f??_VNQP*MK !A*j((((((((!YGI;t±nTtG=~j67ZmWIowEè"JkڟZ,b X.}׎AI;|=<NBNq_AS`PE|^YmC)[37=J_jV>#ķ'B^7s$4(-+h}(`㻑kMEˠ{8DyDl?3>A2fOUʲy}%{ܰfS*45G o[{TWFfĶ:((((((((((((((((((((((((((((((((((((((((((((((x–EA{8| .~ʸkƾj>y^2_F{vZ*,2zv&}d け{'~?|Ey8&~?#fjyDw C|Pn9kCB5F[Dfв#F?!cӫh;JP|Vg\(YmB?5_k~k+K} ֿO&\fr5u\9Os|? ֿO&).o3Z߹??s|?Qp>k_'SY-mrhWQp?G{HtVc? /Mi4#wfGSpA5O ,ķ3'pB(OG 䟳 VcT<x#I>u۸QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEyF:Ʃq-մ ]㵟d{RUg/W^E+g/WU5ٯiwˏ>?o{uMOu h8)<˫E#MQuivĂe);᧵c1Ks&5Ok0qm8Y0i<”w>M[)eK=k GO rZzWĪ\cG+̫\\mZzv}U K$N2 PjJ~1Kv<}W:} WִDH{;v]S{,ž)Yi.(ӼFAXz@ҭ nQZBDB~//9qj/Ujby?/Wx{]K֮?1?p=y®WsEx}C8oUj?Wx{ O>E7*z^G7­3)k]c_m0ȏ$ԾLdo<3|1dF,J255dFI]` +צy/uj3__ޏ|`< z>[1Da]lZH68Pz)f3uu}~9m|8pU=տHK(ckQGW-(((((((((((((((((((((((((((((((((((((((((((((((((w#?]r$ɴ  *O)}+g\|z WC}ƴ?=+O_)E7+gFhddd+ # {7Qm^x~??~*Ӄ c~Eaj?lvԕU FU¼9)FepU t:/KiizFec#1A)LԂ9"O~[A5{Tgl^Gy}E%R=OЖY'GW;$V#&mHHH<1O@OLV*Эߺ9GMo#:tlg،ۛlDi§ ڏVrcҟi$qyg*07JO*3r#5#U@UU¤dQ@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@~ >j;Y&n 8XCy&}qrmY#a؃_}M}<}ܕI\y*a}2FnJCfYqwG%;kKǜyO S=yCï>_k.]!=GFG}[eu7V(xCz[E# Go4wdakiKiRxEj&n7GvIԤO=뱶+0x8ظ{g.27ۓ;}3 W6QlZ8N~x$^}jiZİ8qy2p{= )ꩭPm6-GO9t/ЏV+eϹQE# ( ( ( ( ( (1a gw[s#FZ?+WUu|Qe]RF; ?H1_OI|yI{Wgm|Cd؟} :W_}-o,f\m+2(b ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ޓ$ ֤Zc);\Fe+z|<=ݾ[x^U֦3Ƽ$)vyQFz77X4Y%-=Y=G9\E$c;cRAQTApARз v>5 MR+>;YrH ڴog|SkOW}N}k.Lr{}oz8Yj'i;Ia7ϵm'(8ߎzU~^ MWNlz+=@=?h>.մcs<̟4+K)M3FK[N#FksZEokI OxVq_\J"PXHs|S$`/xƱ;> ѣi[ 5e] uRfuWtk+U"IG5?UZ关џK .QMrqj~W7(ErZ5լ[3`{2zé|'2G*ZY?4W˵f} (@-|%vVO5-5r0'9s!w_MgcxHS YZeƧ{fI@=O4Z+;pԟ@+ڼ-<9hb=ۏJG'{W3:}?S2c'+w!<%}dxf-=gʽͮ{gv>Y?uW^oi2~:}=Mxg^nh=zqaΤtE^/2jzZnn1f'?> T7"[}ho|fڹΫ~`laT}ZW_7DݎFyrףq|vwq+yj4B -PT0x_:Q\(_=h$'/0xG`btuG迴=i{}Ҋ?Cd=+ZmM\#V#ךEzxz>ƚ{qVukE|ֵ;J*\Gm? tnF*xY:7N^^GwMWX]w{M C{W}v| 7 m C{Qdg C{ 7 m}/EAv| 7 m|O Sf;,0c;+_^3 ՘#ɴfo0X_]\Kws5̍,9II&*7" xQɓOl~x_՟ N\K1|Iރk;[o[*9WnPQK=4\$WN,.&?!>v`z޾RX7a'z~;kݬFT+Yxc~k,n{9`*++aݪFߗ{1TW8ω ݶ~JQ-vߗ<9ѣvGR+Aԭdx^ZQ^ƷyyW[KoA]ykc3C} K>Ea_=׽|!} _K"Zs|:~kg;Wk<֦G@c_5?%]s_}'+?v>o)7j0j yz~o>QEuaEPE忴' D˳W[Z1ǻ %5{)wi:Ih!~Y$˞6mn(5zOM^z837]QCxѦw:Ab\w?7G}vm+g#L?Һxhwl/vx$I^f_s*|diꔾ~K 8]FŚ[YȡқA36 zkS_k0YI'B+b<^G9Xϫ.\mԐ?pob:ƾ xe_EERڏ?^/4[pJ{Px&pR\WEB]x7=i<,9OW5_ p,:6)h m;TF>OYBuhmvj*'gA-I,L0O|WMm/^YQ[n}=? +|5:ѴϔJV08 s U[I?<㬺֡"pq#c^U}O?i3+6h((((((((((((((((((((((((((((((((((((((((((((((((((((鶚Ɨu0w12y>*x"~,Ү7Ij{i9b$GB=G+G|})-cTMZ3Xa}{RhiBk;xn!s#Vׁ%x^Ja3H$)9,>Y?t8^FY.}=RGԁ_xW;naSe$©+¸o Pl +[>nj"b)?_e_]:xu{?χ+ΕN^?aQ27⓿yf&ֵ ?q#~lkڿcwxXsLeN"WwТ+s(iRdWT;I>2xs{EGC%' V9cjÚ|u U ;|dm*[.+A%[{(x27^n]kd :`oᆈ,4ԮWlCq>ֵ&- wo׍Uupu{1f9$^;xx?ggٟ@EQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQE>M~-ksŸ́Kʯjs <i$7Ly{}rOcE+ESVGGu12daZ ^}h~jW&.qjAb'NҼ+"g^S|$kO&I?-|_L.?)?ҷV1>*̂REo5-BQM4{( _2֞9#cg@ҹ<=ߌ'di@7/Uz+6kzG_k&~0uq, _^oEz/@>БXС+'F/S.yG~˟ >j1֡JHӣqq Vr*(HcXUDPUFq7p(QEvj /ʻc`q8='HgiI%AI;;xWRGt$G :<7Mz}7@r3ގlz QT@QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEǂ//٨@%r8E*N?տ%j)Xwg8ڷ]hRH$I@ùbEP 6 ]}cV/EImMA=zM+ jM{5;<[WI4 hPi:%g-,z+zvŠ(((xSJ&BZmdqєGk®LW ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( (wStlOivwc|3":2 4Q\,_סtG,_סt@Uo zG5r`!Xcs )CTB)QEQEQEQ\>#GÒz,8hcc,}2G+ ڐ?((>ɨY_$ѼA Dm/ P~hb(((hD4gv zzW |a.Ljm ?Z!?/CcN?kgG=Mio!u ր=ewm}jW+,.[GEVsm)sagb7.ᴰqu3(љϠ((.'Yb%. I'X Cƀ:+?jkwMkkzmR+kpNG@Q\Ǐ%oq,>&Ѣ&(V":+?ix7 'dFN=h((y xFot{R<b7ꨮ^xJtM#DKf'NkUEr|C^^U״+3"8d U?h_X Cƺ((uiv!n%TEyNvnV=J ?|<#k@Eqǥxn)X}PEPExÚ=Zjet1= o\,_סtN' o+23&:( (-cž.Ůi7%C.R6szphvb7?b7ꨢ((((((((;W_ۿ_o?h,"'hQEnx{Ś%W,RSW=XhY}>Ҋ΍Yk:|]Wvs.割?۵hW%_YSI[=?^oiwڦm}a*iqєA%(V^uRO.3#G'S@;MG[v(PfI;zGo$A zI[Kg GӁ\?>7)%mxQOs\$QE=ͅw67[\rO#PQ@C|*M76 /#>_Mymͬ4x䍃+GQ_o4MV Sүmi{+Ȝ4 QE 򿋟6˕ =B:z`sSrEZvyґ20;;f)kkHۙ؜Os@:^02ڔG?kQEnSŚoցOf[)'!_UaO/L,5|"s=>7xO-a#\Um9^Ia+o-kostsiX  p <?ğѭ@]*~q|3z(PI_^:_ѭ__;x750A E% OǍ|o%ԁ[,[^yf9G>+HWJŵynU! #ڼ㷍ǂq%u[Y򤏚OWֽU%rI_ q񯍮n--v(/<6XE}`:Ww|7}/X%RUW[8dFR2h'_X5oV_X5oVGQE ((+_J/^1U%~>`j_+kտi+pEJGJ֯ґҁ0n& &"5.I$5|JMRg9]:ٶJ|Y}A+~Se/EI@#ƨ~@B((((((((|AGe;Ե AB#}XEag/Ygb>P}<~ſcIa`d8R\6y_|<9nˌe5g-:[%ڌ+ 'IN-,5U6@粏_3>M~K0WL0󿯲÷ԒzX8u/gEYwUORM]vOO \֯оIa+0k1%O6/T1_:}(QA&H?SW~xD:E5~y4W۟^/^%Mlt ~yxGoFF~//֠Hâ(WؿG?%E= ,Y' 1|u]WOknhZBx}{p(W9)Jzh6s}O|s]g__nUm,\S>'@ (g9h?oDJGZůҁ3B^7WεW!/  +Zwt CPЄחV04jw;($8JQG%庺Uށ37??G<q.RږkWhyB]Za ꩩZ8EdYEįF tRO=NAh^s2~ͫ#(W/L<4tJm֘$,y.'?_VO{Yk:k~xʇ!#ڀ?BW&!C$Ѝ~x[\&cQ\SЩ 7ğH^0\ӿ,וWW4?4 4+#UG"' r:ry3޽dQA'?x|o?- OgH:d}I WzO[Y1ZBaBUGC7G6<?^&{Oz7)?@~+Shn<3Ƥcu$֊ >14%dpfKf==x<>I_kh׺^kwC"qQ_ 5GK_epqԫq F}}${ \|7V(?z?:h>9u5mfCl8T@ݫڏJzڏJz$y-Q@½a/͍:jxs?G=MxM*F G(_?St_~ QbkO =e/}៵%GQE )P(((((((((_~Y|EnO}ھ *5BFh_?P3lQ@C|,>+x flYs}ھ:|\+ƪQ@=u8hWЃqKv ?@~cs8l&8bI$޿G5d2W/x]G⦿8 n/h cieV'#yzo2D p$Y\J}(QA!\KE'[.:c-uc(ah))k)>VE{?SpaW"~s좼SW  i3a=B?ˏ@QE k8Qg{2$r8[F5?:\C!̬k ( (Ia+ڿ=<#߉?%sZ/T1_:k1%OgaxD:E5~ygH?SWA^%MluW۟@ϰ{W痎vn?kWoj"j:օy-E4.Α- )Ǿ+*Cf; +?h'n 4U,T94!Q/ݦi C$ZW~ҵQ >vҲkѿh,>#~yl#G-b_A :P&|cKBJ־%q%|@QEQEW۟gqWu$k@D ڿ6_^s2ʬ!FXg$Skg-.ZnNT==hWO~ ]yD;#hvAPfƗH >KhG{=F$ 6@_g?HGMo2`8~^{f}&d'#a(_5I]nS8'Or>B~heٶkRxϪ~׌#|dϺHŃ|x׳PHW/KI?u)5gSPQAG~ǿ61kҾRmbգaEP#{J\ b[?X)R:W~ o _k_mԎF:_LmS. .WF Ywß fM@G!1|F2+;oqE"?8(ohwYF7~V`5@fGtۗ 8jE}:Wݭ֗1\[HO # 9PE}V> -~ 7^@ 1ߦh=jH \7(kқ丿䱶pvǶzP#$O&w?q<ǯ}sN+_KKXta4~||G1A]RV~6c]VR#ux:O~ s]oKyd '*IZK$G,,RH2(L(?IMևnqZhݙ 0aՔwS#py@:[xijJp~ۊ?ivWn`/^&ܰvd dvZnl/"z\?Yb^'_H~zSGbI%~O΁L//֯Ea u7 藯/PhD>x6HGk+9;OӨ>w֓^YD#E,mN?.U_C:,ArD7GݓI?@`$x.\ڕFkVwf8 ;V:- &e yY`v < \ xaߤG (|9Cakѿh,>#~yFς?rF-~ы_g?1\n?$kB^7Wδ }w5/z]X,3>]I6>1`f)гg}?G)гg}?]O ? @ҡtTw ŏ_rMiQ@jڹ?οI{W|t ׯ~ʿUSkk׿e_*^S Ϗ_Q0u<4u_,q|N쎥YN#'_'~?s*iAS?Q@QE _كJ\'fW` Y ($;WEf;WEfh*(> GD?Zc7E`k[O/ğZXŃS;X~ν$϶VڶOA!Wå~oisiזRU'r++:t^U 0܌P&k/KI?u)5gSP#(?cu_h_)~ǿ61kҁ0(g=%sR^S^O\Կ,WR )+ZJGJϕl16.-ܟxܷ?K /S!{-9(?f&\9CT~+9ܺU@JïKPH>뢱5+ĺb_w[84mʟFTkUQK9@$A#e"䑂":_uOzbw?8Ot Ү3[o!l'xbz8#:|'m'L@I#YU_U̺Meb838*϶>+ڏJzڏJz$y-Y%i]BZ ~xD{jqw=8 /^t]D~$XqGr;WWj/#&>bݭi^ T E ()P(((((((((_~Y|EnO}ھ *5(QEQEzgς&tM5iZQ ,?N{)_ ^3 DL)$1v>8M}xSvZ6mn۫9'&x?a3\I̓-q|wHU.Ge?U3rA&*(Z^sav*èƏ;;?DVR0 :$|_̪U*F# ?i5ۙMA{/=Gl4Ϟ(H+#+ }2^\ .fX$!*EWUuԴanm'OC}oAm滸'F ƥ[Ʊ wЩ{m5f>PR]_ER C:7 ᇭxge//F^Kk )Uď} U`$d1 B($ߢs/CsZ42xy`7=ލ:  C" r)ʲ}j_0\뚤r2qXPE$< DE,O@h"cYrUFI'3C<( ?0b]"xɇnL'עy8@v//֯Ea0?fo,?s/^_^3`z}+3Z=i:ywq^=ǡ ӢJ.kiVv%$ ~'ޯE|9Cakѿh,>#~y#g9h?oDJGZůҁ3B^7WεW!/  +Z((vWף~X|9"J~m\̿_j>e|:׿e_*^S5߲T)Z}+3EZb[;R/=8 V~}|@QEja`lja`l %EP3G(Zجȣ׌-kbOk}@=KMf(>ŎzǏK3W?ؠ#lybۏ^AH+|>I־l o/3j!N9Ƽ;ͭ~k Ob~96?O][Dƾ? (>v]_e[k,j_+kտi+pE A_#~kWH@UC# FAxRx跬e꿨+ |[\Z͸QG vu=A"#Ί/ ]K,[W/a {^{AE>N-&$FF]ԼMy:Cˋ$_ɉ(χuojiV3^]7Qh^\#4׵}}W[u0&8~`+1VmdɶI!S#OU(G%b`kG%b`hy-Y%i]BZ ~ (OiO{LnL'9${v!4kuBGT=U8#_× OlD<4 QE?JEQA!EPEPEPEPEPEPEPEP^QoJVfH 0 Gzz(<%AM{Cƨh5r<4~:-n5 tP)ῇ۬6cfd$G|]]PEPEPY> ;t{sY;O} kQ@/ٯhz9~65\~Z?l}^C P>bӿf >&uZ',1| oI洗V^C߰t0`ת@ċa#PUz (((_ tΕ#kS~,> "Xlٴo\BJ*2if=Wvv!=Ef_ٓMk^ ^-X o+|Qso<9?:\0L py퓏a]]P (FAkYK$w_M~LydLצ@5jN/d ҳb3_QnYqF(Ϟ4oًMj"^mnbʽc<1 i0ss$nG`W_E ( mWw𾧪^jZu331bc{MU_>o2V]U.$ܥN@@zZZ(((i/Þ,-]].IAQޱ<%AM{Cƫܨg_ 麕4ֳ$X}8j~%/> a.w@JtPCNw+tW / k5^Exo3G)UTP4xKQ / k5^Exo3G)l+_<'[-sN庴,Q'2r9ǽzW?7vckc(<%AM{Cƫ}g@?XүIDMˉ#)xTbKj'L?<%AM{Cƫܨ&_ xKvݕީsukƗ2FɒrB9㞵4Q@Q@x?g zޡO{5;Vcc''{T?f 4rëk$lXM G!@$Y:]˺A}o%$dJҢ<7_׿?jf S^*((~7w=<1]:09j/Tq^E|è~7*&E=CUVcٿ|Ec +Qs|96xrE\ԯF^ ½@4؋= N>zrkZQE=+MgTax2F 0>ר@ / k5Om3*zd`b?ν(+BSwoulkFUgCܭHf S^?<%AM{Cƫܨ(((((((((((((((((((((((((2=Ep (zN7j ! rkƩ%5H]IAs\knhЕ[odvTj_;r#v6GqmќPyb#U٦Lu(JRiE)2=E-tdz p (4Qp NOꚯt6P6v;?֘".^0f~fWog {Z\&?jk4ZDmśp>!/z|W1wv \OROT|%jwMgO*ɖ I'54ԋ{E~%խM5^t+?$dvk፲EI>>yd9>À?]Ewv[HX{45 -vG"H }뺼\1Q$RkE{?' )F-)6_2o+`{I?j?Z6 1/`;}kB-QuXuH-Wjq?S}ktO<#G?pc)*IElߪ:]:iۓ/FL_\g$0l*@On?0S{:l0Û(3IF2Fx''~M+4mlΝu4}ۥFi+{#"D >ql]͜C:Ȍ0v9'ް|kͥcn."bZ-sn1QFuYi̸prd~UtJj>Vݕȓzt䒻/W:˙.9kVjo/+{:$Ǩ@Ld9z{S-/u Ag6lI`8x?CNklm̉Pd~gjcuӲa֪J^]z[yw9åEx[1,.e%x=fkx=a4)5ż"iv5bp3Si7joE"9X'׊}SR{K}otCFUJI8Q[MZKK*%5(WZkmgVӤKޕmԎPCwcwPhvJīHq8:Ȍ3{P啲 'ƹU^KNN)?7Ú9E ̷/i[; j~ uĒ6rvWjG(uMJ-XY[p'N0ƩC2nd&vp@PlD{h;#fտW{[{%{±KqH&Sۥ̩},0,(9#'nkZ=%Ir=3NJv*t'(U[R~ӕ=ZK 5ݭoo0|c[ j2f(">9dyiCBCK)8du'FoۭQ Y…pI蚅φma\ y77.psҪTfd&5b-oīq{.e'Ijޕܯ,aIK7n$ 尾`UMoDյHQnSj%0h:N m5W5\+Uq%N3Sd좒9C]ɷ寡:LYFW n^wjmlI6:kCLЮm|qbtb}3Ӡ:vkb 0#"B;ٛ%q,5 >dgk"ׄjZw_A$~<򡸒c GR1'mڏإlViyArBU56kȞL3N$dڸ'Rӵ{ɩYZ%: 9'JO(9]W_jU~h]GMV Zƌ6yW3%fv \ K4]` ~fk6u.' E'nYk,5ơ<EWj^ǥ#"=qȪGziq2 jyT9'ƧNWQ޿\VB]O{-C@𝅴N>Qws n{YtKpÎqf<_^jV/jkC g>SK0 a@znM$왚jj6rk`d{}rÚ] K*K;!+۠:V/B}kOQ@'Vmw3IdV%PcWkB(K]LUVc._>ކQ^Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@ \׃..YnLŷy 9+EeR*cJugIb ;t5 NQZ$3mvQE0 ( ( ( ( ( ( ( ( ( ( ( ( ( ( (2uYX|YN eX/]'o` QX<=9K_4j*z (((t*z\>u4"9tFQ9Ok£R4Y5kEVaEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPopenstackdocstheme-1.18.1/doc/source/demo/configure_access_and_security_for_instances.rst0000666000175100017510000001575213227213640032240 0ustar zuulzuul00000000000000=========================================== Configure access and security for instances =========================================== Before you launch an instance, you should add security group rules to enable users to ping and use SSH to connect to the instance. Security groups are sets of IP filter rules that define networking access and are applied to all instances within a project. To do so, you either add rules to the default security group :ref:`security_groups_add_rule` or add a new security group with rules. Key pairs are SSH credentials that are injected into an instance when it is launched. To use key pair injection, the image that the instance is based on must contain the ``cloud-init`` package. Each project should have at least one key pair. For more information, see the section :ref:`keypair_add`. If you have generated a key pair with an external tool, you can import it into OpenStack. The key pair can be used for multiple instances that belong to a project. For more information, see the section :ref:`dashboard_import_keypair`. When an instance is created in OpenStack, it is automatically assigned a fixed IP address in the network to which the instance is assigned. This IP address is permanently associated with the instance until the instance is terminated. However, in addition to the fixed IP address, a floating IP address can also be attached to an instance. Unlike fixed IP addresses, floating IP addresses are able to have their associations modified at any time, regardless of the state of the instances involved. .. _security_groups_add_rule: Add a rule to the default security group ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ This procedure enables SSH and ICMP (ping) access to instances. The rules apply to all instances within a given project, and should be set for every project unless there is a reason to prohibit SSH or ICMP access to the instances. This procedure can be adjusted as necessary to add additional security group rules to a project, if your cloud requires them. .. note:: When adding a rule, you must specify the protocol used with the destination port or source port. #. Log in to the dashboard, choose a project, and click :guilabel:`Access & Security`. The :guilabel:`Security Groups` tab shows the security groups that are available for this project. #. Select the default security group and click :guilabel:`Edit Rules`. #. To allow SSH access, click :guilabel:`Add Rule`. #. In the :guilabel:`Add Rule` dialog box, enter the following values: +--------------------------------------+--------------------------------------+ | Rule | Remote | +--------------------------------------+--------------------------------------+ | ``SSH`` | ``CIDR`` | +--------------------------------------+--------------------------------------+ .. note:: To accept requests from a particular range of IP addresses, specify the IP address block in the CIDR box. #. Click :guilabel:`Add`. Instances will now have SSH port 22 open for requests from any IP address. #. To add an ICMP rule, click :guilabel:`Add Rule`. #. In the :guilabel:`Add Rule` dialog box, enter the following values: +--------------------------------------+--------------------------------------+ | Rule | Direction | +--------------------------------------+--------------------------------------+ | ``All ICMP`` | ``Ingress`` | +--------------------------------------+--------------------------------------+ #. Click :guilabel:`Add`. Instances will now accept all incoming ICMP packets. .. _keypair_add: Add a key pair ~~~~~~~~~~~~~~ Create at least one key pair for each project. #. Log in to the dashboard, choose a project, and click Access & Security. #. Click the Keypairs tab, which shows the key pairs that are available for this project. #. Click Create Keypair. #. In the Create Keypair dialog box, enter a name for your key pair, and click Create Keypair. #. Respond to the prompt to download the key pair. .. _dashboard_import_keypair: Import a key pair ~~~~~~~~~~~~~~~~~ #. Log in to the dashboard, choose a project, and click Access & Security. #. Click the Keypairs tab, which shows the key pairs that are available for this project. #. Click Import Keypair. #. In the Import Keypair dialog box, enter the name of your key pair, copy the public key into the Public Key box, and then click Import Keypair. #. Save the ``*.pem`` file locally. #. To change its permissions so that only you can read and write to the file, run the following command: .. code:: bash $ chmod 0600 yourPrivateKey.pem .. note:: If you are using the dashboard from a Windows computer, use PuTTYgen to load the ``*.pem`` file and convert and save it as ``*.ppk``. For more information see the `WinSCP web page for PuTTYgen `__. #. To make the key pair known to SSH, run the **ssh-add** command. .. code:: bash $ ssh-add yourPrivateKey.pem The Compute database registers the public key of the key pair. The dashboard lists the key pair on the Access & Security tab. Allocate a floating IP address to an instance ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ When an instance is created in OpenStack, it is automatically assigned a fixed IP address in the network to which the instance is assigned. This IP address is permanently associated with the instance until the instance is terminated. However, in addition to the fixed IP address, a floating IP address can also be attached to an instance. Unlike fixed IP addresses, floating IP addresses can have their associations modified at any time, regardless of the state of the instances involved. This procedure details the reservation of a floating IP address from an existing pool of addresses and the association of that address with a specific instance. #. Log in to the dashboard, choose a project, and click Access & Security. #. Click the Floating IPs tab, which shows the floating IP addresses allocated to instances. #. Click Allocate IP to Project. #. Choose the pool from which to pick the IP address. #. Click Allocate IP. #. In the Floating IPs list, click Associate. #. In the Manage Floating IP Associations dialog box, choose the following options: #. The IP Address field is filled automatically, but you can add a new IP address by clicking the + button. #. In the Ports to be associated field, select a port from the list. The list shows all the instances with their fixed IP addresses. #. Click Associate. .. note:: To disassociate an IP address from an instance, click the :guilabel:`Disassociate` button. To release the floating IP address back into the pool of addresses, click the :guilabel:`More` button and select the :guilabel:`Release Floating IP` option. openstackdocstheme-1.18.1/doc/source/demo/create_and_manage_databases.rst0000666000175100017510000001144113227213640026643 0ustar zuulzuul00000000000000=========================== Create and manage databases =========================== The Database service provides scalable and reliable cloud provisioning functionality for both relational and non-relational database engines. Users can quickly and easily use database features without the burden of handling complex administrative tasks. .. _dashboard_create_db_instance: Create a database instance ~~~~~~~~~~~~~~~~~~~~~~~~~~ **Prerequisites.** Before you create a database instance, you need to configure a default datastore and make sure you have an appropriate flavor for the type of database instance you want. #. **Configure a default datastore.** Because the dashboard does not let you choose a specific datastore to use with an instance, you need to configure a default datastore. The dashboard then uses the default datastore to create the instance. #. Add the following line to ``/etc/trove/trove.conf``: .. code:: ini default_datastore = DATASTORE_NAME Replace *``DATASTORE_NAME``* with the name that the administrative user set when issuing the **trove-manage** command to create the datastore. You can use the trove **datastore-list** command to display the datastores that are available in your environment. For example, if your MySQL datastore name is set to ``mysql``, your entry would look like this: .. code:: ini default_datastore = mysql #. Restart Database services on the controller node: .. code:: bash # service trove-api restart # service trove-taskmanager restart # service trove-conductor restart #. **Verify flavor.** Make sure an appropriate flavor exists for the type of database instance you want. **Create database instance.** Once you have configured a default datastore and verified that you have an appropriate flavor, you can create a database instance. #. Log in to the dashboard, choose a project, and click :guilabel:`Databases`. #. Click :guilabel:`Database Instances`. This lists the instances that already exist in your environment. #. Click :guilabel:`Launch Instance`. #. In the :guilabel:`Launch Database` dialog box, specify the following values. Details :guilabel:`Database Name`: Specify a name for the database instance. :guilabel:`Flavor`: Select an appropriate flavor for the instance. :guilabel:`Volume Size`: Select a volume size. Volume size is expressed in GB. :guilabel:`Initialize Databases`: Initial Database Optionally provide a comma separated list of databases to create, for example: ``database1``, ``database2``, ``database3`` :guilabel:`Initial Admin User`: Create an initial admin user. This user will have access to all the databases you create. :guilabel:`Password`: Specify a password associated with the initial admin user you just named. :guilabel:`Host`: Optionally, allow the user to connect only from this host. If you do not specify a host, this user will be allowed to connect from anywhere. #. Click the :guilabel:`Launch button`. The new database instance appears in the databases list. Backup and restore a database ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ You can use Database services to backup a database and store the backup artifact in the Object Storage module. Later on, if the original database is damaged, you can use the backup artifact to restore the database. The restore process creates a database instance. This example shows you how to back up and restore a MySQL database. To backup the database instance ------------------------------- #. Log in to the dashboard, choose a project, and click :guilabel:`Databases`. #. Click :guilabel:`Database Instances`. This displays the existing instances in your system. #. Click :guilabel:`Create Backup`. #. In the :guilabel:`Backup Database` dialog box, specify the following values: Name Specify a name for the backup. Database Instance Select the instance you want to back up. #. Click Backup. The new backup appears in the backup list. To restore a database instance ------------------------------ Now assume that your original database instance is damaged and you need to restore it. You do the restore by using your backup to create a new database instance. #. Log in to the dashboard, choose a project, and click :guilabel:`Databases`. #. Click :guilabel:`Database Backups`. This lists the available backups. #. Check the backup you want to use and click :guilabel:`Restore Backup`. #. In the :guilabel:`Launch Database` dialog box, specify the values you want for the new database instance. #. Click the :guilabel:`Restore From Database` tab and make sure that this new instance is based on the correct backup. #. Click :guilabel:`Launch`. The new instance appears in the database instances list. openstackdocstheme-1.18.1/doc/source/demo/create_and_manage_networks.rst0000666000175100017510000000636513227213640026601 0ustar zuulzuul00000000000000========================== Create and manage networks ========================== The OpenStack Networking service provides a scalable system for managing the network connectivity within an OpenStack cloud deployment. It can easily and quickly react to changing network needs (for example, creating and assigning new IP addresses). Networking in OpenStack is complex. This section provides the basic instructions for creating a network and a router. For detailed information about managing networks, refer to the `OpenStack Administrator Guide `__. Create a network ~~~~~~~~~~~~~~~~ #. Log in to the dashboard, choose a project, and click Networks. #. Click Create Network. #. In the Create Network dialog box, specify the following values. :guilabel:`Network` tab :guilabel:`Network Name`: Specify a name to identify the network. :guilabel:`Subnet` tab :guilabel:`Create Subnet`: Select this check box to create a subnet You do not have to specify a subnet when you create a network, but if you do not specify a subnet, any attached instance receives an Error status. :guilabel:`Subnet Name`: Specify a name for the subnet. :guilabel:`Network Address`: Specify the IP address for the subnet. :guilabel:`IP Version`: Select IPv4 or IPv6. :guilabel:`Gateway IP`: Specify an IP address for a specific gateway. This parameter is optional. :guilabel:`Disable Gateway`: Select this check box to disable a gateway IP address. :guilabel:`Subnet Detail` tab :guilabel:`Enable DHCP`: Select this check box to enable DHCP. :guilabel:`Allocation Pools` Specify IP address pools. :guilabel:`DNS Name Servers`: Specify a name for the DNS server. :guilabel:`Host Routes`: Specify the IP address of host routes. #. Click :guilabel:`Create`. The dashboard shows the network on the :guilabel:`Networks` tab. Create a router ~~~~~~~~~~~~~~~ #. Log in to the dashboard, choose a project, and click :guilabel:`Routers`. #. Click :guilabel:`Create Router`. #. In the :guilabel:`Create Router` dialog box, specify a name for the router and click :guilabel:`Create Router`. The new router is now displayed in the :guilabel:`Routers` tab. #. Click the new router's :guilabel:`Set Gateway` button. #. In the :guilabel:`External Network` field, specify the network to which the router will connect, and then click :guilabel:`Set Gateway`. Connect a router ~~~~~~~~~~~~~~~~ #. To connect a private network to the newly created router, on the :guilabel:`Routers` tab, click the name of the router. #. On the :guilabel:`Router Details` page, click :guilabel:`Add Interface`. #. In the :guilabel:`Add Interface` dialog box, select a :guilabel:`Subnet`. #. Optionally, in the :guilabel:`Add Interface` dialog box, set an :guilabel:`IP Address` for the router interface for the selected subnet. If you choose not to set the :guilabel:`IP Address` value, then by default OpenStack Networking uses the first host IP address in the subnet. The :guilabel:`Router Name` and :guilabel:`Router ID` fields are automatically updated. #. Click :guilabel:`Add Interface`. You have successfully created the router. You can view the new topology from the :guilabel:`Network Topology` tab. openstackdocstheme-1.18.1/doc/source/demo/launch-instance.rst0000666000175100017510000000534413227213640024320 0ustar zuulzuul00000000000000================== Launch an instance ================== To access your instance remotely ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1. Add rules to the ``default`` security group: a. Permit ``ICMP`` (ping): .. code-block:: console $ nova secgroup-add-rule default icmp -1 -1 0.0.0.0/0 +-------------+-----------+---------+-----------+--------------+ | IP Protocol | From Port | To Port | IP Range | Source Group | +-------------+-----------+---------+-----------+--------------+ | icmp | -1 | -1 | 0.0.0.0/0 | | +-------------+-----------+---------+-----------+--------------+ b. Permit secure shell (SSH) access: .. code-block:: console $ nova secgroup-add-rule default tcp 22 22 0.0.0.0/0 +-------------+-----------+---------+-----------+--------------+ | IP Protocol | From Port | To Port | IP Range | Source Group | +-------------+-----------+---------+-----------+--------------+ | tcp | 22 | 22 | 0.0.0.0/0 | | +-------------+-----------+---------+-----------+--------------+ 2. Create a ``floating IP address`` on the ``ext-net`` external network: .. code-block:: console $ neutron floatingip-create ext-net Created a new floatingip: +---------------------+--------------------------------------+ | Field | Value | +---------------------+--------------------------------------+ | fixed_ip_address | | | floating_ip_address | 203.0.113.102 | | floating_network_id | 9bce64a3-a963-4c05-bfcd-161f708042d1 | | id | 05e36754-e7f3-46bb-9eaa-3521623b3722 | | port_id | | | router_id | | | status | DOWN | | tenant_id | 7cf50047f8df4824bc76c2fdf66d11ec | +---------------------+--------------------------------------+ Testing ordered lists and auto-numbering ---------------------------------------- #. Item 1 #. Item 1, Item 1 #. Item 2, Item 1 #. Item 2 #. Item 2, Item 1 #. Item 2, Item 2 #. Item 2, Item 2, Item 1 #. Item 2, Item 2, Item 2 Testing ordered lists and auto-numbering w/ note directive ---------------------------------------------------------- .. note:: #. Item 1 #. Item 1, nested under 1 .. note:: #. Item 1, nested in note under Item 1 #. Item 2, nested in note under Item 1 #. Item 2, nested under 1 #. Item 2 openstackdocstheme-1.18.1/doc/source/demo/index.rst0000666000175100017510000001017713227213640022353 0ustar zuulzuul00000000000000.. highlight: python :linenothreshold: 5 .. figure:: figures/doc-logo-fox.jpg :alt: Documentation Logo :scale: 30% :align: center Demo documentation ================== The demo documentation provides example markup for looking at the expected output. .. sidebar:: Sidebar This is a sidebar which may be used to provide related or reference material. It is displayed in proximity to, but outside the main text. The project aims for simple implementation, massive scalability, and a rich set of features. Cloud computing experts from around the world contribute to the project. Glossary ~~~~~~~~ Here's an example glossary: Cactus An OpenStack grouped release of projects that came out in the spring of 2011. It included Compute (nova), Object Storage (swift), and the Image service (glance). Cactus is a city in Texas, US and is the code name for the third release of OpenStack. When OpenStack releases went from three to six months long, the code name of the release changed to match a geography nearest the previous summit. CADF Cloud Auditing Data Federation (CADF) is a specification for audit event data. CADF is supported by OpenStack Identity. CALL One of the RPC primitives used by the OpenStack message queue software. Sends a message and waits for a response. Literal Blocks ~~~~~~~~~~~~~~ Here's an example configuration:: [DEFAULT] ... my_ip = 10.0.0.31 vnc_enabled = True vncserver_listen = 0.0.0.0 vncserver_proxyclient_address = 10.0.0.31 novncproxy_base_url = http://controller:6080/vnc_auto.html Code Blocks ~~~~~~~~~~~ Here's another example that's python code: .. code-block:: python :linenos: def builder_inited(app): theme_dir = os.path.join(os.path.dirname(__file__), 'theme') app.info('Using openstack theme from %s' % theme_dir) # Insert our theme directory at the front of the search path and # force the theme setting to use the one in the package. This is # done here, instead of in setup(), because conf.py is read after # setup() runs, so if the conf contains these values the user # values overwrite these. That's not bad for the theme, but it # breaks the search path. app.config.html_theme_path.insert(0, theme_dir) # Set the theme name app.config.html_theme = 'openstack' # Re-initialize the builder, if it has the method for setting up # the templates and theme. if hasattr(app.builder, 'init_templates'): app.builder.init_templates() Here's the same example but with ..code-block: ini to test the pygments lexer: .. code-block:: ini [DEFAULT] ... my_ip = 10.0.0.31 vnc_enabled = True vncserver_listen = 0.0.0.0 vncserver_proxyclient_address = 10.0.0.31 novncproxy_base_url = http://controller:6080/vnc_auto.html Notices ~~~~~~~ Notices take these forms. note ++++ .. note:: A comment with additional information that explains a part of the text. important +++++++++ .. important:: Something you must be aware of before proceeding. tip +++ .. tip:: An extra but helpful piece of practical advice. caution +++++++ .. caution:: Helpful information that prevents the user from making mistakes. seealso +++++++ .. seealso:: A reference to another piece of related information, like a related setting or upstream documentation warning +++++++ .. warning:: Critical information about the risk of data loss or security issues. Configuration addition and deprecation notices ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. versionadded:: 9.0.0-Mitaka .. versionadded:: 10.0.0-Newton .. versionchanged:: 10.0.0-Newton Added support for new tags! .. versionchanged:: 11.0.0-Ocata Showing that multiple notices work! .. deprecated:: 11.0.0-Ocata Use `Notices`_ instead. .. deprecated:: 12.0.0-Pike A second deprecation notice .. toctree:: :maxdepth: 1 section_dashboard_access_and_security dashboard_demo configure_access_and_security_for_instances create_and_manage_databases create_and_manage_networks launch-instance Search ~~~~~~ * :ref:`search` openstackdocstheme-1.18.1/doc/source/demo/dashboard_demo.rst0000666000175100017510000001453213227213640024176 0ustar zuulzuul00000000000000=================== OpenStack dashboard =================== As a cloud end user, you can use the OpenStack dashboard to provision your own resources within the limits set by administrators. You can modify the examples provided in this section to create other types and sizes of server instances. Log in to the dashboard ----------------------- The dashboard is available on the node with the ``nova-dashboard`` server role. #. Ask the cloud operator for the host name or public IP address from which you can access the dashboard, and for your user name and password. #. Open a web browser that has JavaScript and cookies enabled. .. note:: To use the Virtual Network Computing (VNC) client for the dashboard, your browser must support HTML5 Canvas and HTML5 WebSockets. The VNC client is based on noVNC. For details, see `noVNC: HTML5 VNC Client `__. For a list of supported browsers, see `Browser support `__. #. In the address bar, enter the host name or IP address for the dashboard. .. code:: https://ipAddressOrHostName/ .. note:: If a certificate warning appears when you try to access the URL for the first time, a self-signed certificate is in use, which is not considered trustworthy by default. Verify the certificate or add an exception in the browser to bypass the warning. #. On the Log In page, enter your user name and password, and click Sign In. The top of the window displays your user name. You can also access Settings or sign out of the dashboard. The visible tabs and functions in the dashboard depend on the access permissions, or roles, of the user you are logged in as. * If you are logged in as an end user, the :guilabel:`Project` tab is displayed. * If you are logged in as an administrator, the :guilabel:`Project` tab (:ref:`dashboard-project-tab`) and :guilabel:`Admin` tab (:ref:`dashboard-admin-tab`) are displayed. .. _dashboard-project-tab: OpenStack dashboard—Project tab ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Projects are organizational units in the cloud, and are also known as tenants or accounts. Each user is a member of one or more projects. Within a project, a user creates and manages instances. From the Project tab, you can view and manage the resources in a selected project, including instances and images. You select the project from the CURRENT PROJECT list at the top of the tab. **Figure: Project tab** .. image:: figures/dashboard-project-tab.png Project tab ----------- From the :guilabel:`Project` tab, you can access the following tabs: :guilabel:`Compute` tab ----------------------- :guilabel:`Overview`: View reports for the project. :guilabel:`Instances`: View, launch, create a snapshot from, stop, pause, or reboot instances, or connect to them through VNC. :guilabel:`Volumes`: Use the following tabs to complete these tasks: * :guilabel:`Volumes`: View, create, edit, and delete volumes. * :guilabel:`Volume Snapshots`: View, create, edit, and delete volume snapshots. * :guilabel:`Images`: View images and instance snapshots created by project users, plus any images that are publicly available. Create, edit, and delete images, and launch instances from images and snapshots. :guilabel:`Access & Security`: Use the following tabs to complete these tasks: * :guilabel:`Security Groups`: View, create, edit, and delete security groups and security group rules. * :guilabel:`Key Pairs`: View, create, edit, import, and delete key pairs. * :guilabel:`Floating IPs`: Allocate an IP address to or release it from a project. * :guilabel:`API Access`: View API endpoints. :guilabel:`Network` tab ----------------------- :guilabel:`Network Topology`: View the network topology. :guilabel:`Networks`: Create and manage public and private networks. :guilabel:`Routers`: Create and manage subnets. :guilabel:`Object Store` tab ---------------------------- :guilabel:`Containers`: Create and manage containers and objects. :guilabel:`Orchestration` tab ----------------------------- :guilabel:`Stacks`: Use the REST API to orchestrate multiple composite cloud applications. .. _dashboard-admin-tab: OpenStack dashboard—Admin tab ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Administrative users can use the :guilabel:`Admin tab` to view usage and to manage instances, volumes, flavors, images, projects, users, services, and quotas. **Figure: Admin tab** .. image:: figures/dashboard_admin_project_tab.png Admin tab --------- Access the following categories to complete these tasks: :guilabel:`System Panel` tab ---------------------------- :guilabel:`Overview`: View basic reports. :guilabel:`Resource Usage`: Use the following tabs to view the following usages: :guilabel:`Daily Report`: View the daily report. :guilabel:`Stats`: View the statistics of all resources. :guilabel:`Hypervisors`: View the hypervisor summary. :guilabel:`Host Aggregates`: View, create, and edit host aggregates. View the list of availability zones. :guilabel:`Instances`: View, pause, resume, suspend, migrate, soft or hard reboot, and delete running instances that belong to users of some, but not all, projects. Also, view the log for an instance or access an instance through VNC. :guilabel:`Volumes`: View, create, edit, and delete volumes and volume types. :guilabel:`Flavors`: View, create, edit, view extra specifications for, and delete flavors. A flavor is size of an instance. :guilabel:`Images`: View, create, edit properties for, and delete custom images. :guilabel:`Networks`: View, create, edit properties for, and delete networks. :guilabel:`Routers`: View, create, edit properties for, and delete routers. :guilabel:`System Info`: Use the following tabs to view the service information: * :guilabel:`Services`: View a list of the services. * :guilabel:`Compute Services`: View a list of all Compute services. :guilabel:`Network Agents`: View the network agents. :guilabel:`Default Quotas`: View default quota values. Quotas are hard-coded in OpenStack Compute and define the maximum allowable size and number of resources. :guilabel:`Identity Panel` tab ------------------------------ :guilabel:`Projects`: View, create, assign users to, remove users from, and delete projects. :guilabel:`Users`: View, create, enable, disable, and delete users. openstackdocstheme-1.18.1/doc/source/_static/0000775000175100017510000000000013227214134021203 5ustar zuulzuul00000000000000openstackdocstheme-1.18.1/doc/source/_static/css/0000775000175100017510000000000013227214134021773 5ustar zuulzuul00000000000000openstackdocstheme-1.18.1/doc/source/_static/css/.placeholder0000666000175100017510000000000013227213640024247 0ustar zuulzuul00000000000000openstackdocstheme-1.18.1/doc/source/index.rst0000666000175100017510000001203513227213640021422 0ustar zuulzuul00000000000000=========================================== OpenStack docs.openstack.org Sphinx theme =========================================== ``openstackdocstheme`` is a theme and extension support for Sphinx documentation that is published to docs.openstack.org and developer.openstack.org. It is intended for use by OpenStack `projects governed by the Technical Committee`_. .. _`projects governed by the Technical Committee`: https://governance.openstack.org/reference/projects/index.html Using the theme =============== .. note:: Prior to using this theme, ensure your project can use the OpenStack brand by referring to the brand guidelines at https://www.openstack.org/brand. .. note:: Some of the settings below are included in the file generated by Sphinx when you initialize a project, so they may already have values that need to be changed. #. Update the requirements list for your project to include ``openstackdocstheme`` (usually in test-requirements.txt). #. If your project previously used the oslosphinx theme (without modifying the header navigation), remove ``oslosphinx`` from your requirements list, and then in your ``conf.py`` you can remove the import statement and extension listing for oslosphinx. #. Then modify your Sphinx settings in ``conf.py`` to include:: html_theme = 'openstackdocs' #. and to add ``'openstackdocstheme'`` to the list of extensions Sphinx needs to initialize:: extensions = [ # ... 'openstackdocstheme', # ... ] #. Set the options to link to the git repository and bug tracker. ``repository_name`` The prefix and repo name. For example, ``'openstack/python-glanceclient'``. ``bug_project`` The project name or ID. For launchpad, it's a string like ``python-glanceclient``. If your project uses ``storyboard.openstack.org``, use the project number instead like ``901``. If unspecified, the "Report a bug" links are not shown. ``bug_tag`` Launchpad bug tag. If unspecified, no tag is set. The default is empty. One example for a project using launchpad:: # openstackdocstheme options repository_name = 'openstack/python-glanceclient' bug_project = 'python-glanceclient' bug_tag = '' One example for a project using storyboard:: # openstackdocstheme options repository_name = 'openstack-infra/infra-manual' bug_project = '721' bug_tag = '' #. Enable the "last-updated" information by setting the format for the timestamp:: # Must set this variable to include year, month, day, hours, and minutes. html_last_updated_fmt = '%Y-%m-%d %H:%M' #. If you are using this theme for API reference documentation, set the sidebar navigation in the `html_theme_options` in the `conf.py` file:: # To use the API Reference sidebar dropdown menu, # uncomment the html_theme_options parameter. The theme # variable, sidebar_dropdown, should be set to `api_ref`. # Otherwise, the list of links for the User and Ops docs # appear in the sidebar dropdown menu. html_theme_options = {"sidebar_dropdown": "api_ref", "sidebar_mode": "toc"} #. If you are using this theme for documentation you want to release based on git tags on your repository, set the release dropdown menu option in the `html_theme_options` in the `conf.py` file. By default it is set to False.:: html_theme_options = {"show_other_versions": "True"} #. If you are using this theme for a project with published documentation that predates the mitaka release cycle, set the ``earliest_published_series`` theme option to the name of the first series with documentation available.:: html_theme_options = { # ... "earliest_published_series": "grizzly", # ... } .. warning:: Do not use this for release-notes as they are always published as one document with internal versioning. #. To generate a PDF document using ``openstackdocstheme``, add a latex preamble to properly use OpenStack logo image and a font file, and make sure that release, title, and author information is correctly set in the `conf.py` file:: pdf_theme_path = openstackdocstheme.get_pdf_theme_path() openstack_logo = openstackdocstheme.get_openstack_logo_path() latex_custom_template = r""" \newcommand{\openstacklogo}{%s} \usepackage{%s} """ % (openstack_logo, pdf_theme_path) latex_elements = { # ... # Additional stuff for the LaTeX preamble. 'preamble': latex_custom_template, } release = '15.0.0' latex_documents = [ ('index', '[Output_filename].tex', u'[Title]', u'OpenStack contributors', 'manual'), ] latex_engine = 'xelatex' Demonstration example ===================== The demo documentation provides example output to ensure it matches what's expected. The link below points to the example output when using the theme for all documentation that is not API reference. .. toctree:: :maxdepth: 1 demo/index openstackdocstheme-1.18.1/setup.cfg0000666000175100017510000000164313227214134017337 0ustar zuulzuul00000000000000[metadata] name = openstackdocstheme summary = OpenStack Docs Theme description-file = README.rst author = OpenStack author-email = openstack-dev@lists.openstack.org home-page = https://docs.openstack.org/openstackdocstheme/latest/ classifier = Environment :: OpenStack Intended Audience :: Information Technology Intended Audience :: System Administrators License :: OSI Approved :: Apache Software License Operating System :: POSIX :: Linux Programming Language :: Python Programming Language :: Python :: 2 Programming Language :: Python :: 2.7 Programming Language :: Python :: 3 Programming Language :: Python :: 3.5 Topic :: Documentation [global] setup-hooks = pbr.hooks.setup_hook [files] packages = openstackdocstheme [build_sphinx] all_files = 1 build-dir = doc/build source-dir = doc/source warning-is-error = 1 [wheel] universal = 1 [pbr] warnerrors = True [egg_info] tag_build = tag_date = 0 openstackdocstheme-1.18.1/setup.py0000666000175100017510000000200613227213640017223 0ustar zuulzuul00000000000000# Copyright (c) 2013 Hewlett-Packard Development Company, L.P. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or # implied. # See the License for the specific language governing permissions and # limitations under the License. # THIS FILE IS MANAGED BY THE GLOBAL REQUIREMENTS REPO - DO NOT EDIT import setuptools # In python < 2.7.4, a lazy loading of package `pbr` will break # setuptools if some other modules registered functions in `atexit`. # solution from: http://bugs.python.org/issue15881#msg170215 try: import multiprocessing # noqa except ImportError: pass setuptools.setup( setup_requires=['pbr>=2.0.0'], pbr=True)