diff --git a/.gitignore b/.gitignore index 4a58ee3ab56..2ee172f13d2 100644 --- a/.gitignore +++ b/.gitignore @@ -3,6 +3,8 @@ config.codekit # config.toml # This is a dangerous file, but we need it not in here. /min +dist +staging .DS_Store .AppleDouble .LSOverride diff --git a/.mention-bot b/.mention-bot index 9c1897a8b23..09f16eacd26 100644 --- a/.mention-bot +++ b/.mention-bot @@ -6,12 +6,22 @@ "alwaysNotifyForPaths": [ { "name": "mattstratton", - "files": [".gitignore","config.toml","config-windows.toml", "gulpfile.js", "themes/**/*", "content/page/**/*", "static/_redirects"], + "files": [".gitignore","config.toml","config-windows.toml", "gulpfile.js", "utilities/**/*", "themes/**/*", "content/page/**/*", "static/_redirects"], "skipTeamPrs": false + }, + { + "name": "MikeRosTX", + "files": [".gitignore","config.toml","config-windows.toml", "utilities/**/*", "themes/**/*", "content/page/**/*"], + "skipTeamPrs": true + }, + { + "name": "phrawzty", + "files": [".gitignore","config.toml","config-windows.toml", "utilities/**/*", "themes/**/*", "content/page/**/*"], + "skipTeamPrs": true }, { "name": "bridgetkromhout", - "files": ["utilities/**/*", "themes/**/*", "content/page/**/*"], + "files": [".gitignore","config.toml","config-windows.toml", "utilities/**/*", "themes/**/*", "content/page/**/*"], "skipTeamPrs": false } ], diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index f0db35b1986..187859216f0 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,6 +1,8 @@ # Contributing to devopsdays-web -The technical details on how to set up [Hugo](https://gohugo.io/) (to see your local edits), and prepare a Pull Request for inclusion on the [Devopsdays](http://www.devopsdays.org/) website. +This document contains the technical details on how to set up [Hugo](https://gohugo.io/) (to see your edits locally before pushing them to GitHub), and how to prepare a Pull Request for inclusion on the [devopsdays](http://www.devopsdays.org/) website. + +If you'd like to assist in contributing to the code of the website, please see [devopsdays/devopsdays-theme](https://github.com/devopsdays/devopsdays-theme). ## Setup @@ -24,7 +26,7 @@ If you are running Windows, change the command to hugo server -w --baseUrl="http://localhost:1313" --config config-windows.toml ``` -Now open `baseURL` in a browser and navigate to the content that you're editing - voilà! +Now open `http://localhost:1313` in a browser and navigate to the content that you're editing - voilà! ## Pull requests @@ -48,27 +50,34 @@ Now open `baseURL` in a browser and navigate to the content that you're editing ### Guidelines -1. Code changes that affect the overall site will be reviewed only if they are in a separate pull request from any event-specific content. In short, don't add "giant template change" in the same PR as "here are some more sponsors" - if it affects *anything other than your event*, it should be in its own PR. -1. We use [github issues](https://github.com/devopsdays/devopsdays-web/issues) to track work, so feel free to create new issues if you like (or read/comment on existing ones). -1. If you are proposing a change that affects the overall site, and is not tied to an existing issue, please open a [new issue](https://github.com/devopsdays/devopsdays-web/issues) so that it can be discussed by the team, prior to submitting a pull request. +1. Code changes that affect the overall site will be merged only in the [devopsdays-theme](https://github.com/devopsdays/devopsdays-theme) repo. Theme changes should be made there, and when released, will be used in this repo. +1. We use [github issues](https://github.com/devopsdays/devopsdays-theme/issues) to track work, so feel free to create new issues if you like (or read/comment on existing ones). +1. If you are proposing a change that affects the overall site, and is not tied to an existing issue, please open a [new issue](https://github.com/devopsdays/devopsdays-theme/issues) so that it can be discussed by the team, prior to submitting a pull request. +### Only make changes to event content files +"Content" means anything inside the `/content/...`, `/data/...`, or `/static/...` directories. -## Advanced -If you are going to be making changes to the overall functionality of the site, please keep the following in mind: +Changes to event-specific content should be submitted in a separate PR from changes to more general content for the whole site. -### Changes to content should be separate from overall functionality -"Content" means anything inside the `/content/...`, `/data/...`, or `/static/...` directories. -Changes to content should be submitted as a separate PR from changes to site functionality. It would be additionally delightful if you label PR's for site functionality (such as `bug` or `enhancement`), but that's not required. +## Maintainer Guidelines + +If you have permissions to merge PRs on this repo, here are a few guidelines to consider: + +1. Is the requestor authorized to make changes for that event? They need to appear on the contact list for the year and city they're editing. +1. Do not allow any PRs that change files outside of the above-mentioned "content" directories. Especially watch out for `.gitignore`, `config.toml`, `config-windows.toml`, and anything in the `themes` directory. Our bot will notify maintainers for any changes to non-content files and assign the PR's to the maintainers, so that should help. +1. Check to see if the tests pass, but use your judgement on merging something that fails (see "PR Tests" below for guidance) +1. If you are unsure about merging a PR, please use the "request a review" button on the PR to request one from other maintainers. +1. If you're reviewing all the details of a PR before merging or are communicating with the *Submitter*, add yourself to *Assignees* so that others know someone is waiting on a response or reviewing all the details of the PR thoroughly. Be sure to also add a comment into the PR that you are reviewing it, and if you need a change from the *Submitter* prior to merge, be sure to label the PR as `do-not-merge`. -### CSS changes are done with LESS -Please do NOT make changes to any of the files in the `/themes/devopsdays-responsive/static/css` directory. These are files that are compiled via [LESS](http://lesscss.org/), and while your changes in there might work, they will be blown away by the LESS compiler at some point. +### PR Tests -If you want to make changes to CSS, you will need a LESS compiler on your system. [@mattstratton](https://github.com/mattstratton) uses [CodeKit](https://incident57.com/codekit/), but that is OS X only, and is not free. Here's a list of other possible LESS compilers (note - Matt has not tested any of these): -- [SimpleLess](http://wearekiss.com/simpless) - all platforms, free. -- [Less.js](http://lesscss.org/) - node application, free. +The following tests run when a PR is submitted: -The only place to make changes to the LESS files is in `/themes/devopsdays-responsive/static/site_variables.less` and `/themes/devopsdays-responsive/static/site.less`. Make sure your LESS compiler is compiling the output into `/themes/devopsdays-responsive/static/css/`. *DO NOT* make any changes to any other LESS file (do not directly modify the bootstrap LESS files, for example). +1. [Travis](https://travis-ci.org/devopsdays/devopsdays-web/) - this is a basic test that confirms that the site can be built with Hugo on linux, and it runs an `html-min` gulp task which will identify if there is any invalid HTML in the site. This protects the final build, so if the Travis tests fail, please take a look as to why they failed. +1. [Appveyor](https://ci.appveyor.com/project/DevOpsDays/devopsdays-web) - this again is a small test that builds Hugo on Windows, to ensure that no Windows-incompatible files have been included. If Appveyor tests fail, merge at your own discretion, based upon the failure reason. +1. [Gitmagic](https://gitmagic.io/) - This is a bot that makes sure our pull requests are fashioned cleanly. See [contributing.json](https://github.com/devopsdays/devopsdays-web/blob/master/contributing.json) for a list of rules that we enforce. +1. [Netlify](https://app.netlify.com/sites/devopsdays-web) - This is a very useful test. It builds the site, and hosts an ephemeral preview version of it (viewable by clicking on the "details" link next to the test once it has turned green). It's pretty important to view this "deploy preview" if the PR has changed anything significant (adding a sponsor, etc, probably not...but changing content in a large way? Yes.) ## Credits diff --git a/README.md b/README.md index 46f2c9bb977..fc66b8cebab 100644 --- a/README.md +++ b/README.md @@ -1,12 +1,13 @@ -[![Stories in Ready](https://badge.waffle.io/devopsdays/devopsdays-web.svg?label=ready&title=Ready)](http://waffle.io/devopsdays/devopsdays-web) [![Stories in Progress](https://badge.waffle.io/devopsdays/devopsdays-web.svg?label=ready&title=In%20Progress)](http://waffle.io/mattstratton/devopsdays-web) [![Build Status](https://travis-ci.org/devopsdays/devopsdays-web.svg?branch=master)](https://travis-ci.org/devopsdays/devopsdays-web) - -You can see progress on tasks at http://waffle.io/devopsdays/devopsdays-web - -[![Throughput Graph](https://graphs.waffle.io/devopsdays/devopsdays-web/throughput.svg)](https://waffle.io/devopsdays/devopsdays-web/metrics) +[![Build Status](https://travis-ci.org/devopsdays/devopsdays-web.svg?branch=master)](https://travis-ci.org/devopsdays/devopsdays-web) [![Build status](https://ci.appveyor.com/api/projects/status/3lobrrssphdb20xd?svg=true)](https://ci.appveyor.com/project/DevOpsDays/devopsdays-web) +[![license](https://img.shields.io/github/license/devopsdays/devopsdays-theme.svg)](https://github.com/devopsdays/devopsdays-web/blob/master/LICENSE) # devopsdays-web This is the repo for managing [devopsdays.org](http://www.devopsdays.org). +## Reporting issues + +If you discover an issue with the theme, please open an issue in the [devopsdays-theme repo](https://github.com/devopsdays/devopsdays-theme/issues/new). + ## Contributing The technical details and guidelines for contributing to this repository are outlined in [CONTRIBUTING.md](CONTRIBUTING.md). If you intend to contribute (and we sure hope you do!), please take a moment to review that document. @@ -23,3 +24,13 @@ Generally speaking, you should avoid storing any files other than logos or small * Small, web images are fine (logos, etc). If you have high-resolution versions of your logo to share with others, please do not host them on the devopsdays-web repo. * It is acceptable to add in a single PDF for your sponsor prospectus if you desire (in `static/events/YYYY-city`), but please keep this file under 3 MB. It is better to host it on Google Drive or something similar, and then link to it from your site. * OPTIONAL - you can host your PDF's for prospectus, etc, in the repo at [devopsdays/devopsdays-assets](https://github.com/devopsdays/devopsdays-assets) and then link to them from there. Files in that repo are presented under their relative URL at https://assets.devopsdays.org. For example, the file located at `static/events/2016/chicago/devopsdays-chicago-2016-prospectus.pdf` in the `devopsdays/devopsdays-assets` repo will be presented at `https://assets.devopsdays.org/events/2016/chicago/devopsdays-chicago-2016-prospectus.pdf` + +## Feature Requests +If there is a feature in the theme that you would like to see, please visit our [ideas portal](https://www.devopsdays.org/ideas) and suggest it. On that same page, you can upvote existing feedback that you would like to see. + +If you'd like to see what we have planned, check out our [roadmap](https://www.devopsdays.org/roadmap). + +Please only use [GitHub issues](https://www.github.com/devopsdays/devopsdays-theme) for reporting defects/bugs. + +## Contributing +See [CONTRIBUTING.md](https://github.com/devopsdays/devopsdays-theme/blob/master/CONTRIBUTING.md) for details on our workflow, dev setup, and how to release new versions of the theme. diff --git a/appveyor.yml b/appveyor.yml index 7cab9ba4f63..eb86bf10f27 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -6,21 +6,21 @@ install: hugo version -# Change the Path seperator to a Windows version (backslash) -- ps: >- - $buildRoot = $ENV:APPVEYOR_BUILD_FOLDER - - $content = (Get-Content ($buildRoot + '\config.toml')) -join "`n" - - $content = $content -replace 'PathSeperator = "/"','PathSeperator = "\\"' - - Write-Output "config.toml content changed to:`n----`n$($content)" - - $content | Set-Content ($buildRoot + '\config.toml') +# Change the Path seperator to a Windows version (backslash) +# - ps: >- +# $buildRoot = $ENV:APPVEYOR_BUILD_FOLDER +# +# $content = (Get-Content ($buildRoot + '\config.toml')) -join "`n" +# +# $content = $content -replace 'PathSeperator = "/"','PathSeperator = "\\"' +# +# Write-Output "config.toml content changed to:`n----`n$($content)" +# +# $content | Set-Content ($buildRoot + '\config.toml') build_script: # Build the devopsdays-web site once - cmd: >- - hugo --verbose + hugo --verbose --config config-windows.toml test: off diff --git a/bin/netlify-production.sh b/bin/netlify-production.sh new file mode 100755 index 00000000000..d8466c57136 --- /dev/null +++ b/bin/netlify-production.sh @@ -0,0 +1,2 @@ +hugo_0.18 --theme=devopsdays-theme --buildDrafts=false --baseURL="/" +gulp diff --git a/bin/netlify.sh b/bin/netlify.sh new file mode 100755 index 00000000000..13921f06908 --- /dev/null +++ b/bin/netlify.sh @@ -0,0 +1 @@ +hugo_0.18 --theme=devopsdays-theme --buildDrafts=false --baseURL="/" diff --git a/config-windows.toml b/config-windows.toml index 10a0dfc451f..095f79c7152 100644 --- a/config-windows.toml +++ b/config-windows.toml @@ -1,4 +1,4 @@ -theme = "devopsdays-responsive" +theme = "devopsdays-theme" baseurl = "https://www.devopsdays.org/" # baseurl = "http://localhost:1313/" languageCode = "en-us" @@ -47,7 +47,7 @@ buildDrafts = false # Set to "/" on *nix and Mac, "\\" on Windows # Refer to https://github.com/spf13/hugo/issues/2394 for more information - # Do not change this setting in the file directly. Instead run hugo with the --config flag if using Windows. + # Do not change this setting in the file directly. Instead run hugo with the --config flag if using Windows. # See CONTRIBUTING.md on devopsdays/devopsdays-web for more details PathSeperator = "\\" # this will be deprecated with devopsdays-theme pathSeparator = "\\" diff --git a/config.toml b/config.toml index 3eccdbb49dd..8f5d7154af2 100644 --- a/config.toml +++ b/config.toml @@ -1,4 +1,4 @@ -theme = "devopsdays-responsive" +theme = "devopsdays-theme" baseurl = "https://www.devopsdays.org/" # baseurl = "http://localhost:1313/" languageCode = "en-us" @@ -38,6 +38,8 @@ buildDrafts = false [permalinks] page = "/:filename/" blog = "/blog/:year/:month/:day/:title/" + speaking = "/:filename/" + [params] Facebook = "//www.facebook.com/group.php?gid=106761636771" diff --git a/content/events/2017-amsterdam/welcome.md b/content/events/2017-amsterdam/welcome.md index eacc7dbf72b..1964a1aea86 100644 --- a/content/events/2017-amsterdam/welcome.md +++ b/content/events/2017-amsterdam/welcome.md @@ -90,4 +90,4 @@ heading = "devopsdays Amsterdam - Welcome" -{{< event_twitter devopsams >}} +{{< event_twitter >}} diff --git a/content/events/2017-atlanta/program.md b/content/events/2017-atlanta/program.md index f7ef83e16b5..a52cd39f878 100644 --- a/content/events/2017-atlanta/program.md +++ b/content/events/2017-atlanta/program.md @@ -50,7 +50,12 @@ type = "event"
-   + Opening Keynote +
+ NoOps +
+ by Kelsey Hightower +
@@ -68,7 +73,10 @@ type = "event"
-   + Tales of test-driven infrastructure as told by a windows-toucher +
+ by Chris Evett +
@@ -86,7 +94,10 @@ type = "event"
-   + Best practices for leveraging UX in an agile enterprise development process +
+ by Angel Banks +
@@ -104,7 +115,11 @@ type = "event"
-   + Closing Keynote + Cloud Native Java +
+ by Josh Long +
@@ -123,6 +138,17 @@ type = "event"
Ignites +

+ Unconventional Wisdom: What Non-Techies Can Teach Us About Technology
Josh Lohrman +

+ You Will NEVER Be "Done"
Mykel Alvis +

+ Becoming a Plumber: Building Deployment Pipelines
Daniel Barker +

+ Introduction to Azure Functions
Tobbias Wright +

+ Your goat antifragiled my snowflake!: Demystifying DevOps Jargon
Clinton Wolfe +
@@ -220,7 +246,10 @@ type = "event"
-   + The Five Dirty Words of CI +
+ by J Paul Reed +
@@ -238,7 +267,10 @@ type = "event"
-   + Fear of the Bus: devOps and Docs +
+ by Heidi Waterhouse +
@@ -256,7 +288,10 @@ type = "event"
-   + AppSec in a DevOps World +
+ by Pete Chesna +
@@ -274,7 +309,10 @@ type = "event"
-   + DevOps is NOT a Strategy +
+ by Cat Swetel +
@@ -292,7 +330,18 @@ type = "event"
- Ignites + Ignites +

+ Gamifying that Work/Life Balance
Marc Ferguson +

+ Is it too late to learn how to program? How I become a developer later in life
Alicia V Carr +

+ Lessons Learned from Eventbrite's VPC Migration
Brian Pitts +

+ In Depth Monitoring
Eldon Stegall +

+ Marriage of UX and DevOps
Virginia Cagwin +
diff --git a/content/events/2017-atlanta/welcome.md b/content/events/2017-atlanta/welcome.md index 2265fcaebc1..129afe113fc 100644 --- a/content/events/2017-atlanta/welcome.md +++ b/content/events/2017-atlanta/welcome.md @@ -88,7 +88,6 @@ aliases = ["/events/2017-atlanta"] - diff --git a/content/events/2017-austin/welcome.md b/content/events/2017-austin/welcome.md index d7c639f8c26..04c66ba7a54 100644 --- a/content/events/2017-austin/welcome.md +++ b/content/events/2017-austin/welcome.md @@ -10,7 +10,7 @@ aliases = ["/events/2017-austin"]

{{< event_start >}} - {{< event_end >}}

-{{< event_twitter dodaustin >}} +{{< event_twitter >}} Watch [www.devopsdaysaustin.com](http://www.devopsdaysaustin.com) for more up to date information as it becomes available. diff --git a/content/events/2017-baltimore/location.md b/content/events/2017-baltimore/location.md index f57760bb2eb..154a1681882 100644 --- a/content/events/2017-baltimore/location.md +++ b/content/events/2017-baltimore/location.md @@ -11,7 +11,19 @@ aliases = [ DevOpsDays Baltimore will be held at UMBC's Columbus Center. -701 E Pratt St. -Baltimore, MD 21202 +UMBC Columbus Center + +701 E Pratt St. +Baltimore, MD 21202 +410-385-6324 +[Directions to the Columbus Center](https://www.google.com/maps/dir//701+E+Pratt+St,+Baltimore,+MD+21202/@39.285949,-76.6076957,17z/data=!3m1!4b1!4m8!4m7!1m0!1m5!1m1!1s0x89c8037d43f98447:0x49a330493ee84d88!2m2!1d-76.605507!2d39.285949). + +### Parking + +Parking is available at [Pier V Garage](http://www.pierfivegarage.com/) which is next to the IMET. DevOpsDays will provide parking vouchers that reduce the price to $10 per day. + +Pier V Parking + +[Directions to Pier V Parking](https://www.google.com/maps/dir//Pier+V+Parking,+711+E+Pratt+St,+Baltimore,+MD+21202/@39.2860835,-76.6072156,17z/data=!4m15!1m6!3m5!1s0x89c8037d6b47cf85:0xebc3f167b16a987a!2sPier+V+Parking!8m2!3d39.2860794!4d-76.6050269!4m7!1m0!1m5!1m1!1s0x89c8037d6b47cf85:0xebc3f167b16a987a!2m2!1d-76.6050269!2d39.2860794) diff --git a/content/events/2017-baltimore/stream.md b/content/events/2017-baltimore/stream.md new file mode 100644 index 00000000000..705de4a44cf --- /dev/null +++ b/content/events/2017-baltimore/stream.md @@ -0,0 +1,16 @@ ++++ +date = "2016-05-20T09:31:15-04:00" +title = "stream" +type = "event" +aliases = [ + "/events/2017-baltimore/stream", + "/events/2016-baltimore/stream" +] + ++++ + +# Live stream the event! + +The day of the events, we will be live streaming the keynotes and the ignite sessions. Due to the organized chaos of Open Spaces, we will be unable to stream those. + +DevOpsDays Baltimore YouTube Channel diff --git a/content/events/2017-baltimore/welcome.md b/content/events/2017-baltimore/welcome.md index ed1bbc02625..7cff378ff6c 100644 --- a/content/events/2017-baltimore/welcome.md +++ b/content/events/2017-baltimore/welcome.md @@ -29,47 +29,6 @@ aliases = [ -
-
-

Keynotes & Plenary Session Talks Announced

-

Keynotes

- -

Plenary Sessions

- -

- Full schedule details. -

-
-
-

Conference Details

@@ -90,25 +49,8 @@ aliases = [ Location
- {{< event_location >}} -
-
- -
-
- Register -
-
- Register to attend the conference! -
-
- -
-
- Propose -
-
- Propose a talk! + UMBC's Columbus Center, 701 E Pratt St., + Baltimore, MD 21202
@@ -122,25 +64,26 @@ aliases = [ - +
- Sponsors + Streaming
- {{< event_link page="sponsor" text="Sponsor the event!" >}} It's a great way to attract new talent and promote your organization. + {{< event_link page="stream" text="Stream the event!" >}} The days of the + event, we will be live streaming all the keynote and ignite sessions.
-
Contact @@ -149,13 +92,54 @@ aliases = [
+
+
+

Keynotes & Plenary Session Talks Announced

+

Keynotes

+ +

Plenary Sessions

+ +

+ Full schedule details. +

+
+
+
 

- {{< event_twitter devopsdaysbmore >}} + {{< event_twitter >}}

diff --git a/content/events/2017-beijing/welcome.md b/content/events/2017-beijing/welcome.md index 0ff43bd4a6b..6a4c7450edc 100644 --- a/content/events/2017-beijing/welcome.md +++ b/content/events/2017-beijing/welcome.md @@ -93,7 +93,6 @@ aliases = ["/events/2017-beijing"] - diff --git a/utilities/examples/sample-event/conduct.md b/content/events/2017-boise/conduct.md similarity index 98% rename from utilities/examples/sample-event/conduct.md rename to content/events/2017-boise/conduct.md index 41689ed7809..c04995bdf25 100644 --- a/utilities/examples/sample-event/conduct.md +++ b/content/events/2017-boise/conduct.md @@ -1,8 +1,7 @@ +++ -date = "2000-01-01T01:01:01-06:00" +date = "2017-03-14T16:25:12-07:00" title = "conduct" type = "event" -draft = true +++ diff --git a/utilities/examples/sample-event/contact.md b/content/events/2017-boise/contact.md similarity index 81% rename from utilities/examples/sample-event/contact.md rename to content/events/2017-boise/contact.md index d6fc715f175..8060c2705c6 100644 --- a/utilities/examples/sample-event/contact.md +++ b/content/events/2017-boise/contact.md @@ -1,8 +1,7 @@ +++ -date = "2000-01-01T01:01:01-06:00" +date = "2017-03-14T16:25:12-07:00" title = "contact" type = "event" -draft = true +++ diff --git a/utilities/examples/sample-event/location.md b/content/events/2017-boise/location.md similarity index 79% rename from utilities/examples/sample-event/location.md rename to content/events/2017-boise/location.md index 1533593efe4..575296c6b6a 100644 --- a/utilities/examples/sample-event/location.md +++ b/content/events/2017-boise/location.md @@ -1,8 +1,7 @@ +++ -date = "2000-01-01T01:01:01-06:00" +date = "2017-03-14T16:25:12-07:00" title = "location" type = "event" -draft = true +++ diff --git a/utilities/examples/sample-event/program.md b/content/events/2017-boise/program.md similarity index 100% rename from utilities/examples/sample-event/program.md rename to content/events/2017-boise/program.md diff --git a/utilities/examples/sample-event/propose.md b/content/events/2017-boise/propose.md similarity index 98% rename from utilities/examples/sample-event/propose.md rename to content/events/2017-boise/propose.md index e065eaaabd4..15ac3e02d9f 100644 --- a/utilities/examples/sample-event/propose.md +++ b/content/events/2017-boise/propose.md @@ -1,8 +1,7 @@ +++ -date = "2000-01-01T01:01:01-06:00" +date = "2017-03-14T16:25:12-07:00" title = "propose" type = "event" -draft = true +++ {{< cfp_dates >}} diff --git a/utilities/examples/sample-event/registration.md b/content/events/2017-boise/registration.md similarity index 75% rename from utilities/examples/sample-event/registration.md rename to content/events/2017-boise/registration.md index 9e12f87a388..49640ddf96f 100644 --- a/utilities/examples/sample-event/registration.md +++ b/content/events/2017-boise/registration.md @@ -1,8 +1,7 @@ +++ -date = "2000-01-01T01:01:01-06:00" +date = "2017-03-14T16:25:12-07:00" title = "registration" type = "event" -draft = true +++ diff --git a/utilities/examples/sample-event/sponsor.md b/content/events/2017-boise/sponsor.md similarity index 98% rename from utilities/examples/sample-event/sponsor.md rename to content/events/2017-boise/sponsor.md index a312301e96b..49bf080a990 100644 --- a/utilities/examples/sample-event/sponsor.md +++ b/content/events/2017-boise/sponsor.md @@ -1,8 +1,7 @@ +++ -date = "2000-01-01T01:01:01-06:00" +date = "2017-03-14T16:25:12-07:00" title = "sponsor" type = "event" -draft = true +++ diff --git a/utilities/examples/sample-event/welcome.md b/content/events/2017-boise/welcome.md similarity index 88% rename from utilities/examples/sample-event/welcome.md rename to content/events/2017-boise/welcome.md index ac1b9d3da17..d28842040fb 100644 --- a/utilities/examples/sample-event/welcome.md +++ b/content/events/2017-boise/welcome.md @@ -1,16 +1,15 @@ +++ -date = "2000-01-01T01:01:01-06:00" +date = "2017-03-14T16:25:12-07:00" title = "welcome" type = "event" -aliases = ["/events/YYYY-city"] -draft = true +aliases = ["/events/2017-boise"] +++

{{< event_start >}} - {{< event_end >}}

-**devopsdays is coming to {{< event_location >}}!** +**devopsdays is returning to {{< event_location >}}!** diff --git a/content/events/2017-cape-town/welcome.md b/content/events/2017-cape-town/welcome.md index 6fed900e980..a6246d507e0 100644 --- a/content/events/2017-cape-town/welcome.md +++ b/content/events/2017-cape-town/welcome.md @@ -87,6 +87,4 @@ aliases = ["/events/2017-cape-town"] - - -{{< event_twitter devopsdayscpt >}} +{{< event_twitter >}} diff --git a/content/events/2017-charlotte/welcome.md b/content/events/2017-charlotte/welcome.md index a834897fda8..233ef3c32a8 100644 --- a/content/events/2017-charlotte/welcome.md +++ b/content/events/2017-charlotte/welcome.md @@ -101,10 +101,9 @@ DevOpsDays is at the forefront of shared knowledge, collaboration, culture and i
- -{{< event_twitter devopsdays_clt >}} +{{< event_twitter >}}

Featured speaker

Charity Majors

-

Charity MajorsCharity Majors is the cofounder and CTO of Honeycomb, a new startup focused on mining machine data. Previously, Charity ran infrastructure at Parse and was an engineering manager at Facebook. She also worked with the RocksDB team to build and deploy the world’s first Mongo + Rocks in production. Charity likes single malt scotch.

\ No newline at end of file +

Charity MajorsCharity Majors is the cofounder and CTO of Honeycomb, a new startup focused on mining machine data. Previously, Charity ran infrastructure at Parse and was an engineering manager at Facebook. She also worked with the RocksDB team to build and deploy the world’s first Mongo + Rocks in production. Charity likes single malt scotch.

diff --git a/content/events/2017-chicago/welcome.md b/content/events/2017-chicago/welcome.md index 883af651fd1..d1f396c2b24 100644 --- a/content/events/2017-chicago/welcome.md +++ b/content/events/2017-chicago/welcome.md @@ -87,6 +87,5 @@ Welcome! The group that brought you DevOpsDays Chicago 2014-2016 is back togeth - -{{< event_twitter devopsdayschi >}} +{{< event_twitter >}} diff --git a/content/events/2017-dallas/location.md b/content/events/2017-dallas/location.md index fe050a2716c..07337495826 100644 --- a/content/events/2017-dallas/location.md +++ b/content/events/2017-dallas/location.md @@ -5,10 +5,17 @@ type = "event" +++ -Information about the venue including address, map/direction, parking/transit, and any hotel group discount codes. +Here we will provide you with information about the venue including address, map/direction, parking/transit, and any hotel group discount codes. - +### Conference location: +### Capital One Conference Center
+[8036 Dominion Pkwy, Plano, TX 75024](https://goo.gl/maps/CKsBtq3ojbL2) + + + +
+If you are traveling to attend this event, the Capital One Conference Center is approximately a 30 minute drive from the DFW Airport. Here is a list of hotels and their distance from the hotel to the Capital One Conference Center for your convenience: **[More information about Hotels](http://www.hotels-for-everyone.com/area/Plano,+TX+75024,+USA/33.0787152/-96.8083063?spec=1&checkIn=08/28/2017&checkOut=08/30/2017&adults_1=1&c=USD&l=eng&i=3&sort=7)**

diff --git a/content/events/2017-dallas/welcome.md b/content/events/2017-dallas/welcome.md index f895b30640d..6fa6c1fc884 100644 --- a/content/events/2017-dallas/welcome.md +++ b/content/events/2017-dallas/welcome.md @@ -6,16 +6,18 @@ aliases = ["/events/2017-dallas"] +++ - +

{{< event_start >}} - {{< event_end >}}

-**DevOpsDays was a huge success that it is returning to {{< event_location >}} in 2017!** +**DevOpsDays was a huge success last year and is back in {{< event_location >}} for our second year in 2017!**
+Come join us and share on August 29 & 30 for a 2 day conference of presentations, talks and experiences from other DevOps practitioners and keep the C.A.M.S. principles AWESOME!!! +**NOTE:** On August 28th, we will be having a Leadership Summit. **(BY INVITATION ONLY)**
+We're still working out all the details, more to come.
{{< event_logo >}}
-We're still working out all the details. If you'd like to help out, email us!
@@ -26,14 +28,14 @@ We're still working out all the details. If you'd like to help out, email us!
- + - diff --git a/content/events/2017-denver/welcome.md b/content/events/2017-denver/welcome.md index 882069673c3..a6effde4475 100644 --- a/content/events/2017-denver/welcome.md +++ b/content/events/2017-denver/welcome.md @@ -49,5 +49,5 @@ DevOpsDays is back for its 3rd anual event in the Rocky Mountains {{< event_star {{< event_link page="contact" text="Get in touch with the organizers" >}} - -{{< event_twitter devopsdaysrox >}} + +{{< event_twitter >}} diff --git a/content/events/2017-detroit/welcome.md b/content/events/2017-detroit/welcome.md index 389722e10d6..7d05819fb4e 100644 --- a/content/events/2017-detroit/welcome.md +++ b/content/events/2017-detroit/welcome.md @@ -87,4 +87,4 @@ aliases = ["/events/2017-detroit"] -{{< event_twitter devopsdaysdet >}} +{{< event_twitter >}} diff --git a/content/events/2017-edinburgh/welcome.md b/content/events/2017-edinburgh/welcome.md index 18b904f48d5..e3dc4fe8efe 100644 --- a/content/events/2017-edinburgh/welcome.md +++ b/content/events/2017-edinburgh/welcome.md @@ -88,7 +88,6 @@ aliases = ["/events/2017-edinburgh"] - diff --git a/content/events/2017-hartford/location.md b/content/events/2017-hartford/location.md index 22dfba367f3..c6ddcb1bc6a 100644 --- a/content/events/2017-hartford/location.md +++ b/content/events/2017-hartford/location.md @@ -5,6 +5,12 @@ type = "event" +++ -Information about the venue including address, map/direction, parking/transit, and any hotel group discount codes. +## Conference Location + +The inaugural DevOpsDays Hartford will be held in the center of Hartford at The Society Room. + +The Society Room, 31 Pratt St, Hartford, CT 06103 + + diff --git a/content/events/2017-hartford/welcome.md b/content/events/2017-hartford/welcome.md index 7dc973bbaa6..9c205f647cb 100644 --- a/content/events/2017-hartford/welcome.md +++ b/content/events/2017-hartford/welcome.md @@ -87,5 +87,4 @@ aliases = ["/events/2017-hartford"] - -{{< event_twitter devopsdayshfd >}} +{{< event_twitter >}} diff --git a/content/events/2017-indianapolis/welcome.md b/content/events/2017-indianapolis/welcome.md index 4cb8a6a7d3c..0dfa226d7fd 100644 --- a/content/events/2017-indianapolis/welcome.md +++ b/content/events/2017-indianapolis/welcome.md @@ -87,7 +87,6 @@ aliases = ["/events/2017-indianapolis"] - diff --git a/content/events/2017-istanbul/welcome.md b/content/events/2017-istanbul/welcome.md index 96c4196e29a..d133798dddc 100644 --- a/content/events/2017-istanbul/welcome.md +++ b/content/events/2017-istanbul/welcome.md @@ -88,4 +88,4 @@ aliases = ["/events/2017-istanbul"] -{{< event_twitter devopsdaysist >}} +{{< event_twitter >}} diff --git a/content/events/2017-kansascity/welcome.md b/content/events/2017-kansascity/welcome.md index 789ea6e4e68..9af5bc3b37a 100644 --- a/content/events/2017-kansascity/welcome.md +++ b/content/events/2017-kansascity/welcome.md @@ -95,4 +95,4 @@ Where large enterprise software companies and a growing startup community are fu -{{< event_twitter devopsdayskc >}} +{{< event_twitter >}} diff --git a/content/events/2017-london/welcome.md b/content/events/2017-london/welcome.md index 0ee3c8ec030..8af173f9548 100644 --- a/content/events/2017-london/welcome.md +++ b/content/events/2017-london/welcome.md @@ -87,7 +87,6 @@ aliases = ["/events/2017-london"] - diff --git a/content/events/2017-los-angeles/welcome.md b/content/events/2017-los-angeles/welcome.md index a4b46d1d562..e5592c512d0 100644 --- a/content/events/2017-los-angeles/welcome.md +++ b/content/events/2017-los-angeles/welcome.md @@ -83,7 +83,6 @@ DevOps Day LA is a single day event held annually in Southern California. This v - diff --git a/content/events/2017-madison/welcome.md b/content/events/2017-madison/welcome.md index 27ae5f8084e..1d33208ab89 100644 --- a/content/events/2017-madison/welcome.md +++ b/content/events/2017-madison/welcome.md @@ -87,5 +87,4 @@ aliases = ["/events/2017-madison"] - -{{< event_twitter devopsdaysmsn >}} +{{< event_twitter >}} diff --git a/content/events/2017-minneapolis/welcome.md b/content/events/2017-minneapolis/welcome.md index 8a6d128c755..6786f5f1acf 100644 --- a/content/events/2017-minneapolis/welcome.md +++ b/content/events/2017-minneapolis/welcome.md @@ -81,5 +81,5 @@ aliases = ["/events/2017-minneapolis"] -{{< event_twitter devopsdaysmsp >}} +{{< event_twitter >}} diff --git a/content/events/2017-moscow/program.md b/content/events/2017-moscow/program.md index 7b0009a6706..e017fc4efe9 100644 --- a/content/events/2017-moscow/program.md +++ b/content/events/2017-moscow/program.md @@ -157,15 +157,7 @@ type = "event"
- -
-
- Dinner
(Обед) -
-
-
-
- +
Константин Назаров (Tarantool), Как сделать PaaS при помощи Docker, Consul и обвязки на Python @@ -178,15 +170,23 @@ type = "event"
+
+
+ +
+
+ Dinner
(Обед) +
+
- Антон Вайс (Отомато), Как измерить поток? + Александр Дубовин (SuperJob), Готовим тестовое окружение или сколько тестовых инстансов вам нужно
- Сергей Егоров (ZeroTurnaround), Как перестать быть DevOps инженером + Dinner (Обед продолжение)
@@ -197,10 +197,10 @@ type = "event"
- Leon Fayer, BizOps and You + Антон Вайс (Отомато), Как измерить поток?
- Владимир Ярцев (Cloud Castle), С какими проблемами я столкнулся при создании очередного Docker PaaS + Сергей Егоров (ZeroTurnaround), Как перестать быть DevOps инженером
@@ -208,27 +208,21 @@ type = "event"
- +
-
- Iginte
-Солдатов (Ethcore) TBD

-Iginte
Илья Шеер (Beame), Lower your TCO with custom solutions and NGS + -
- -
-
- + -
- Coffee-break
(Кофе-брейк) +
+
-
- +
Michaił Kołcow (Grand Parade), Automate yourself out of running your applications with Apache Mesoss @@ -241,16 +235,37 @@ Iginte
Илья Шеер (Beame), Lower your TCO with custom solutions and NG
+
+
+ +
+
+ Iginte
+Солдатов Денис (Parity Technologies) Особенности кросскомпиляции или почему мы отказались от Travis CI

+Iginte
Илья Шер (Beame.io), Lower your TCO with custom solutions and NGS +
+
- + +
+
+ Coffee-break
(Кофе-брейк) +
+
+ + + +
+
+
-Доклад 18 + Coffee-break(Кофе-брейк)
@@ -265,11 +280,11 @@ Iginte
Илья Шеер (Beame), Lower your TCO with custom solutions and NG Open Space Session
- TBD +
Konstantin Suvorov, Расширение возможностей Ansible
- Ринат Кхабибиев + Ринат Кхабибиев, Несколько интересных кейсов продвинутого использования Fabricio
Мастер-класс 4
@@ -307,4 +322,13 @@ Open Space Session
VIP-part
(VIP-часть )
-
\ No newline at end of file +
+
+
+ +
+
+ Трансфер зарубежных докладчиков +
+
+ diff --git a/content/events/2017-moscow/program/ilyasher.md b/content/events/2017-moscow/program/ilyasher.md new file mode 100644 index 00000000000..09fbc3a794e --- /dev/null +++ b/content/events/2017-moscow/program/ilyasher.md @@ -0,0 +1,42 @@ ++++ +date = "2016-12-16T14:40:46+03:00" +linktitle = "ilyasher" +title = "Ilya Sher" +type = "talk" + ++++ + +
+
+

Title: +Lower your TCO with custom solutions and NGS +

+ +

Description:

+ +

+I will share with the audience why I prefer custom solutions to ready-made
+tools for many systems engineering tasks. Imagine all the time you will have to
+really work on your system while not upgrading a "turnkey" module to the next
+version, which might include "breaking changes between minor versions." Imagine
+the peaceful feeling of looking at two screens of your own script instead of
+figuring out what went wrong somewhere between the 2000+ lines of the code
+written by someone else. Imagine finishing your working day early and going
+home to your loved ones instead of fixing a state file of a tool that you hoped
+would make your infrastructure-as-code dream come true (except it's not code,
+it's more a configuration format and therefore you have to generate it
+somehow). Imagine yourself acquiring skills that make your future brighter, not
+a specific vendor richer.
+
+
+ +

+ + +
+
+ diff --git a/content/events/2017-moscow/program/nistratov.md b/content/events/2017-moscow/program/nistratov.md new file mode 100644 index 00000000000..742b366f812 --- /dev/null +++ b/content/events/2017-moscow/program/nistratov.md @@ -0,0 +1,39 @@ ++++ +date = "2016-12-16T14:40:46+03:00" +linktitle = "nistratov" +title = "Artem Nistratov" +type = "talk" + ++++ + +
+
+

Title: +Настройка окружения проекта в docker compose +

+ +

Description:

+ +

+Развертывание окружения для запуска проекта на локальной машине всегда боль.
+Данный процесс замедляет вхождение новых людей в разработку проекта, порождает
+забавные и не очень проблемы с различием версий использующихся зависимостей.
+Передача знаний о том, что все таки требуется проекту, чтобы он работал довольно часто сводится
+к фразе "спроси у %developername%", что весьма неэффективно.
+Vagrant решил часть проблем, но VM - это медленно и громоздко, а прогресс не стоит на месте.
+Облака спешно контейнезируются, что очень наруку разработчикам.
+Поэтому мы рассмотрим шаг за шагом упаковку проекта в docker и связку разнообразных компонентов
+инфраструктуры с помощью docker-compose.
+
+
+ +

+ + +
+
+ diff --git a/content/events/2017-moscow/welcome.md b/content/events/2017-moscow/welcome.md index 9ecc2465f51..2ab4a16554c 100644 --- a/content/events/2017-moscow/welcome.md +++ b/content/events/2017-moscow/welcome.md @@ -96,8 +96,8 @@ aliases = ["/events/2017-moscow"]
- + diff --git a/content/events/2017-ohio/welcome.md b/content/events/2017-ohio/welcome.md index 19de6bc5582..6ffbff167b9 100644 --- a/content/events/2017-ohio/welcome.md +++ b/content/events/2017-ohio/welcome.md @@ -93,6 +93,6 @@ In the mean time, check out the 2016 Program
-{{< event_twitter DevOpsDaysOhio >}} +{{< event_twitter >}} Tweets by DevOpsDaysOhio diff --git a/content/events/2017-oslo/propose.md b/content/events/2017-oslo/propose.md index 9126cd0be6e..f2205c704ad 100644 --- a/content/events/2017-oslo/propose.md +++ b/content/events/2017-oslo/propose.md @@ -7,7 +7,7 @@ type = "event" {{< cfp_dates >}}
-There are four ways to propose a session: +There are three ways to propose a session:
  1. A proposal for a talk/panel during the conference part : these are 30 minute slots that will have the full attention of all attendees, as everybody will be in that one room.
  2. An Ignite talk that will be presented during the Ignite sessions. These are 5 minutes slots with slides changing every 15 seconds (20 slides total) which are also presented to all attendees in one room
  3. diff --git a/content/events/2017-oslo/sponsor.md b/content/events/2017-oslo/sponsor.md index 630ac3d6c8a..c31c2c47e16 100644 --- a/content/events/2017-oslo/sponsor.md +++ b/content/events/2017-oslo/sponsor.md @@ -10,10 +10,10 @@ We greatly value sponsors for this open event. If you are interested in sponsori -

    Why sponsor DevopsDays?

    -Sponsoring DevopsDays will give you the opportunity to network and build relationships with developers, IT executives, Ops, DevOps, and managers within the burgeoning Scandinavian DevOps community. +

    Why sponsor DevOpsDays?

    +By sponsoring DevOpsDays you'll get the opportunity to network and build relationships with highly motivated developers, sysadmins, IT executives and managers within the burgeoning Scandinavian DevOps community. -Our sponsorship package are constructed to offer our sponsors lead generation, networking, branding, and talent recruitment. +Our sponsorship packages are constructed to offer our sponsors lead generation, networking, branding, and talent recruitment.

    Practical Information

    - +### Sponsor packages + +Click here for full prospectus. + + + +### Add-ons +If you have bought one of the sponsor packages we can also offer some add-ons. + + +
    diff --git a/content/events/2017-oslo/welcome.md b/content/events/2017-oslo/welcome.md index 378eb45383d..28dbd544aa5 100644 --- a/content/events/2017-oslo/welcome.md +++ b/content/events/2017-oslo/welcome.md @@ -12,7 +12,9 @@ aliases = ["/events/2017-oslo"]
    -

    {{< event_link page="registration" text="Blind bird registration is open!" >}}

    +{{< event_logo >}} + +

    {{< event_link page="registration" text="Blind bird registration is open!" >}}

    Be quick! Only 20 amazingly cheap tickets available.

    diff --git a/content/events/2017-paris/welcome.md b/content/events/2017-paris/welcome.md index bec762f97d7..8f35c810213 100644 --- a/content/events/2017-paris/welcome.md +++ b/content/events/2017-paris/welcome.md @@ -109,5 +109,5 @@ discussions from industry practitioners and taste-makers.

    - -{{< event_twitter devopsrex >}} + +{{< event_twitter >}} diff --git a/content/events/2017-philadelphia/welcome.md b/content/events/2017-philadelphia/welcome.md index 08eeb30aab3..9a3a84301c2 100644 --- a/content/events/2017-philadelphia/welcome.md +++ b/content/events/2017-philadelphia/welcome.md @@ -72,4 +72,4 @@ aliases = ["/events/2017-philadelphia"] -{{< event_twitter devopsdaysphl >}} +{{< event_twitter >}} diff --git a/content/events/2017-portland/welcome.md b/content/events/2017-portland/welcome.md index 764bf801351..f62bdd1bf72 100644 --- a/content/events/2017-portland/welcome.md +++ b/content/events/2017-portland/welcome.md @@ -15,8 +15,6 @@ aliases = ["/events/2017-portland"] {{< event_logo >}} -We're still working out all the details. If you'd like to help out, email us! - Our event will be August 1st and 2nd. However, keep an eye out for a special follow-on event on the 3rd! More details to follow in this space soon.
    @@ -91,7 +89,7 @@ Our event will be August 1st and 2nd. However, keep an eye out for a special fol
    - + diff --git a/content/events/2017-raleigh/welcome.md b/content/events/2017-raleigh/welcome.md index 71885651501..8f94a66497c 100644 --- a/content/events/2017-raleigh/welcome.md +++ b/content/events/2017-raleigh/welcome.md @@ -81,4 +81,4 @@ aliases = ["/events/2017-raleigh"]
    -{{< event_twitter devopsdaysrdu >}} +{{< event_twitter >}} diff --git a/content/events/2017-salt-lake-city/welcome.md b/content/events/2017-salt-lake-city/welcome.md index a0052ceefc5..908d59a6963 100644 --- a/content/events/2017-salt-lake-city/welcome.md +++ b/content/events/2017-salt-lake-city/welcome.md @@ -99,5 +99,4 @@ The beauty of a Continuous Delivery pipeline and all of its components is knowin - -{{< event_twitter devopsdaysslc >}} +{{< event_twitter >}} diff --git a/content/events/2017-seattle/conduct.md b/content/events/2017-seattle/conduct.md index 7d2e98a4c57..0e992e5d393 100644 --- a/content/events/2017-seattle/conduct.md +++ b/content/events/2017-seattle/conduct.md @@ -1,6 +1,6 @@ +++ date = "2016-09-20T21:46:51+01:00" -title = "DevOpsDays Seattle 2017 Code of Conduct" +title = "Code of Conduct" type = "event" +++ diff --git a/content/events/2017-seattle/contact.md b/content/events/2017-seattle/contact.md index a36ff29a412..5a402f4c216 100644 --- a/content/events/2017-seattle/contact.md +++ b/content/events/2017-seattle/contact.md @@ -1,6 +1,6 @@ +++ date = "2016-09-20T21:46:51+01:00" -title = "DevOpsDays Seattle 2017 Contact Information" +title = "Contact Information" type = "event" @@ -15,4 +15,3 @@ If you'd like to contact us by email - {{< email_organizers >}} **The core devopsdays organizer group** {{< list_core >}} - diff --git a/content/events/2017-seattle/location.md b/content/events/2017-seattle/location.md index 631008c2a69..b49c2c3bec1 100644 --- a/content/events/2017-seattle/location.md +++ b/content/events/2017-seattle/location.md @@ -1,23 +1,24 @@ +++ date = "2016-09-20T21:46:51+01:00" -title = "DevOpsDays Seattle 2017 Location" +title = "Location" type = "event" +++ - + -___[Marion Oliver McCaw Hall](https://www.mccawhall.com/plan-your-event/event-spaces/nesholm-family-lecture-hall) at Seattle Center is the region’s premier performance venue.___ +[Marion Oliver McCaw Hall](https://www.mccawhall.com/plan-your-event/event-spaces/nesholm-family-lecture-hall) at Seattle Center is the region’s premier performance venue. +---- McCaw Hall opened in June 2003 as a $127 million renovation of the Seattle Opera House, made possible by a partnership between the Hall’s two world-class resident performing arts tenants, Pacific Northwest Ballet and Seattle Opera, along with Seattle Center and the Seattle Center Foundation. This partnership secured $55 million in public funds and over $72 million in private philanthropic gifts to make the Hall a reality. The Hall is owned by the City of Seattle and operated by Seattle Center, in accordance with a unique 25-year Operating Agreement with its resident tenants, which provides them with on-going oversight and shared responsibility for its operations and budget. - + McCaw Hall encompasses the state-of-the-art 2,900-seat Susan Brotman Auditorium, the 380-seat Nesholm Family Lecture Hall, Prelude Café, elegant lobbies fronted by a luminous five-story serpentine glass wall, two beautiful donor/special function rooms, and a 17,800-square-foot public plaza (the Kreielsheimer Promenade) that serves as an entry into McCaw Hall and the Seattle Center campus. Designed by local architectural firm LMN, the Hall’s design emphasizes elegance balanced with flexibility and functionality. Its open, airy lobbies strive to minimize the separation between exterior and interior, inviting the community to view and join the anticipation of audiences prior to a performance. As well, the Hall incorporates a number of environmentally sustainable design features which minimize its use of resources, waste generation and carbon footprint. - + Each year the Ballet and Opera present approximately 150 performances in McCaw Hall. In addition, the Hall hosts two productions of the Seattle Men’s Chorus annually, as well as a wide range of popular music concerts, lectures, corporate meetings, receptions, weddings, festival performances, community, and non-profit events. diff --git a/content/events/2017-seattle/program.md b/content/events/2017-seattle/program.md index 561455676c4..485ca31103f 100644 --- a/content/events/2017-seattle/program.md +++ b/content/events/2017-seattle/program.md @@ -1,6 +1,6 @@ +++ date = "2016-03-06T21:28:07-06:00" -title = "DevOpsDays Seattle 2017 Program" +title = "Program" type = "event" +++ diff --git a/content/events/2017-seattle/propose.md b/content/events/2017-seattle/propose.md index 94fafa76c39..3d1f17a825d 100644 --- a/content/events/2017-seattle/propose.md +++ b/content/events/2017-seattle/propose.md @@ -1,6 +1,6 @@ +++ date = "2016-09-20T21:46:51+01:00" -title = "DevOpsDays Seattle 2017 Call for Proposals" +title = "Call for Proposals" type = "event" +++ {{< cfp_dates >}} diff --git a/content/events/2017-seattle/registration.md b/content/events/2017-seattle/registration.md index 0e8b2da151c..3b4088d28c9 100644 --- a/content/events/2017-seattle/registration.md +++ b/content/events/2017-seattle/registration.md @@ -1,6 +1,6 @@ +++ date = "2016-09-20T21:46:51+01:00" -title = "DevOpsDays Seattle 2017 Registration" +title = "Registration" type = "event" diff --git a/content/events/2017-seattle/sponsor-info.md b/content/events/2017-seattle/sponsor-info.md index be6d492ed25..367052ac522 100644 --- a/content/events/2017-seattle/sponsor-info.md +++ b/content/events/2017-seattle/sponsor-info.md @@ -72,6 +72,10 @@ The sponsor area will be set up to encourage people to hang out and enjoy coffee +### A/V Rental + +Monitors are available for rental from "Meeting Tomorrow". Please download this form for more information. + ### Lead Collection We don’t share attendee information with sponsors. diff --git a/content/events/2017-seattle/sponsor.md b/content/events/2017-seattle/sponsor.md index bc60de8b900..30d5a6a706c 100644 --- a/content/events/2017-seattle/sponsor.md +++ b/content/events/2017-seattle/sponsor.md @@ -1,6 +1,6 @@ +++ date = "2016-09-20T21:46:51+01:00" -title = "DevOpsDays Seattle 2017 Sponsorship Info" +title = "Sponsorship Info" type = "event" @@ -65,12 +65,7 @@ We greatly value sponsors for this open event. If you are interested in sponsor -
    - - - - -
    + Sold Out Included tickets @@ -119,4 +114,3 @@ We greatly value sponsors for this open event. If you are interested in sponsor
    - diff --git a/content/events/2017-seattle/welcome.md b/content/events/2017-seattle/welcome.md index edbebed47ad..1492bfaacc2 100644 --- a/content/events/2017-seattle/welcome.md +++ b/content/events/2017-seattle/welcome.md @@ -97,7 +97,6 @@ will be great for both speakers and attendees. - diff --git a/content/events/2017-stockholm/propose.md b/content/events/2017-stockholm/propose.md index d25d22f11d0..221149510c3 100644 --- a/content/events/2017-stockholm/propose.md +++ b/content/events/2017-stockholm/propose.md @@ -10,7 +10,7 @@ type = "event" --- -Submit your talk today! The submission form can be found [Here](https://devopsdayssthlm.typeform.com/to/eMaXqd) + CFP is now closed --- There are three ways to propose a session: @@ -27,7 +27,7 @@ Our main criteria to make it to the top selection are: - _no vendor pitches_: as much as we value vendors and sponsors, we just don't think this is the right forum. You can demo at your table or during Open Space. -How to submit a proposal: [Fill out our handy form](https://devopsdayssthlm.typeform.com/to/eMaXqd) with the following information +How to submit a proposal: Fill out our handy form with the following information
    1. Proposal working title (can be changed later)
    2. Type (presentation, panel discussion, moderated general discussion, debate, etc.,ignite)
    3. diff --git a/content/events/2017-stockholm/registration.md b/content/events/2017-stockholm/registration.md index 23e22c83269..e6d9fa582b4 100644 --- a/content/events/2017-stockholm/registration.md +++ b/content/events/2017-stockholm/registration.md @@ -8,6 +8,5 @@ type = "event"
      -Embed registration iframe/link/etc. -
      +
      Powered by Eventbrite
      diff --git a/content/events/2017-stockholm/welcome.md b/content/events/2017-stockholm/welcome.md index f72846ff4ce..1d9f196df9e 100644 --- a/content/events/2017-stockholm/welcome.md +++ b/content/events/2017-stockholm/welcome.md @@ -6,7 +6,7 @@ aliases = ["/events/2017-stockholm"] +++ -{{< event_twitter devopsdayssthlm >}} +{{< event_twitter >}} **devopsdays is coming to {{}}!** @@ -87,7 +87,3 @@ aliases = ["/events/2017-stockholm"] - - diff --git a/content/events/2017-tokyo/welcome.md b/content/events/2017-tokyo/welcome.md index 2cdc73605ed..5067054a75c 100644 --- a/content/events/2017-tokyo/welcome.md +++ b/content/events/2017-tokyo/welcome.md @@ -114,7 +114,6 @@ While English is becoming the de-facto language of software development, we will - diff --git a/content/events/2017-toronto/program.md b/content/events/2017-toronto/program.md new file mode 100644 index 00000000000..1d20b59ccbd --- /dev/null +++ b/content/events/2017-toronto/program.md @@ -0,0 +1,337 @@ ++++ +date = "2016-03-06T21:28:07-06:00" +title = "program" +type = "event" + ++++ + +
      +

      DevOpsDays is a grass-roots event taking place in cities all around the world. It is organized entirely by volunteers and enthusiasts of DevOps philosophies, processes, and tools who are excited to be a part of the movement.

      + +

      Each day has four primary speakers presenting 30 minute talks. Presentations range from cultural ideas to specific details and experiences implementing and managing a broad spectrum of DevOps and Agile related issues. Additionally, there is a 30 minute block of IGNITE style talks (5 minute auto-advancing slides) providing a good mix of content delivered quickly and on point.

      + +

      The last part of each event consists of "Open Spaces". These self-suggested and self-run discussions provide an open forum for participants to engage in deeper and meaningful conversations with their peers, presenters, and vendors. Discussions are often extensions of points and ideas brought up in early presentations, but can be about any subject interesting to a participant. If you are new to the Open Space concept you can learn more about the format here.

      + +

      Also remember that some of the best learning moments can happen when you least expect them. Whether it's hallway conversations or over lunch be ready to share and learn with your fellow attendees, speakers and sponsors.

      + +

      While you're at the conference remember that learning and understanding DevOps and the ideas and methodologies that it brings is a spiral path. You will hear ideas and concepts repeated over and over and over. Each time at a different level. There's no such thing as being "done with DevOps". Frustration and rewards are found along each level on the path.

      + +
      + +
      +
      +

      The Schedule

      +
      +
      + +
      +
      +
      +
      +

      Day 1 - Thursday, May 25th

      +
      +
      + +
      +
      + +
      +
      + Registration, Breakfast, and Sponsor Booths Open +
      +
      + +
      +
      + +
      +
      + Opening Welcome +
      +
      + + + +
      +
      + +
      +
      + Break +
      +
      + + + + + +
      +
      + +
      +
      + Lunch (catered) +
      +
      + + + + + +
      +
      + +
      +
      + Open Space Opening
      +
      +
      + +
      +
      + +
      +
      + Attendee-suggested breakout discussions
      + Open Space #1 +
      +
      + +
      +
      + +
      +
      + Break +
      +
      + +
      +
      + +
      +
      + Attendee-suggested breakout discussions
      + Open Space #2 +
      +
      + +
      +
      + +
      +
      + Break +
      +
      + +
      +
      + +
      +
      + Attendee-suggested breakout discussions
      + Open Space #3 +
      +
      + +
      +
      + +
      +
      + Happy Hour +
      +
      +
      + + + +
      +
      +
      +

      Day 2 - Friday, May 26th

      +
      +
      + +
      +
      + +
      +
      + Registration, Breakfast, and Sponsor Booths Open +
      +
      + +
      +
      + +
      +
      + Opening Welcome +
      +
      + + + +
      +
      + +
      +
      + Break +
      +
      + + + + + +
      +
      + +
      +
      + Lunch (catered) +
      +
      + + + + + +
      +
      + +
      +
      + Open Space Opening
      +
      + Sponsor giveaways +
      +
      + +
      +
      + +
      +
      + Attendee-suggested breakout discussions
      + Open Space #1 +
      +
      + +
      +
      + +
      +
      + Break +
      +
      + +
      +
      + +
      +
      + Attendee-suggested breakout discussions
      + Open Space #2 +
      +
      + +
      +
      + +
      +
      + Break +
      +
      + +
      +
      + +
      +
      + Attendee-suggested breakout discussions
      + Open Space #3 +
      +
      +
      +
      diff --git a/content/events/2017-toronto/program/aaron-aldrich.md b/content/events/2017-toronto/program/aaron-aldrich.md new file mode 100644 index 00000000000..4c5caa432a6 --- /dev/null +++ b/content/events/2017-toronto/program/aaron-aldrich.md @@ -0,0 +1,19 @@ ++++ +date = "2017-03-05T12:02:53-05:00" +linktitle = "aaron-aldrich" +title = "Aaron Aldrich" +type = "talk" + ++++ + +
      +
      +

      Managing Fires: The Role of Leadership in Crisis

      + +

      When all preventative measures fail, sometimes Really Big Problems occur. Your crisis team needs to respond and act accordingly to resolve issues efficiently. Any highly functional team will need a leader. It's not optional, especially in crisis. Decisions need to be made quickly and someone needs to coordinate efforts rather than getting knee-deep in technical issues.

      + +

      This talk will explore exactly that role. When should you choose a leader, and when everyone is busy putting out the big fire, what should the leader actually be doing? I'll answer these questions and give you real ideas to bring back to your teams and improve your crisis response.

      + +
      +
      + diff --git a/content/events/2017-toronto/program/adam-lefkowitz.md b/content/events/2017-toronto/program/adam-lefkowitz.md new file mode 100644 index 00000000000..675ec3a3575 --- /dev/null +++ b/content/events/2017-toronto/program/adam-lefkowitz.md @@ -0,0 +1,19 @@ ++++ +date = "2017-03-06T20:32:39-05:00" +linktitle = "adam-lefkowitz" +title = "Adam Lefkowitz" +type = "talk" + ++++ + +
      +
      +

      Automate all the things, including your brain.

      + +

      Our brains take in a lot of information on a daily basis and have created shortcuts to automate simple tasks like walking, taking a drink, or sitting down. These tasks hit the fast parts of our brain that includes memory, reflex and emotion before making it to our logical, analytical, and problem-solving (slow) systems. This leads to unintended and sometimes counterproductive processing which impacts everything we do.

      + +

      This is part of cognitive bias and can lead to incorrect diagnostics during a firefight or major outage - our experiences can lead us to a decision that is based more on emotion than fact. Cognitive biases can be dangerous but are impossible to avoid. You can’t always spot your own biases but you can spot them in others. Recognizing these biases is the key to mitigating them and reducing mental lapses that can increase the time it takes to resolve incidents.

      + +
      +
      + diff --git a/content/events/2017-toronto/program/andreas-grabner.md b/content/events/2017-toronto/program/andreas-grabner.md new file mode 100644 index 00000000000..7833afa67c9 --- /dev/null +++ b/content/events/2017-toronto/program/andreas-grabner.md @@ -0,0 +1,25 @@ ++++ +date = "2017-03-05T12:01:03-05:00" +linktitle = "andreas-grabner" +title = "Andreas Grabner" +type = "talk" + ++++ + +
      +
      +

      From 6 Month Waterfall to 1h Code Deploys

      + +

      In 2011 we delivered 2 major releases of our on premise enterprise software. Market, technology and customer requirements forced us to change that in order to remain competitive.

      + +

      Now – in 2017 - we are deploying and providing feature releases every 2 weeks for both our on premise and SaaS-based offering. We deploy 170 SaaS production changes per day and have a DevOps pipeline that allows us to deploy a code change within 1h if necessary.

      + +

      To increase quality, we built and provide a DevOps pipeline that currently executes 31000 Unit & Integration Tests per Hour as well as 60h UI Tests per Build. Our application teams are responsible end-to-end for their features and use production monitoring to validate their deployments which allows them to find 93% of bugs in production before it impacts our end users.

      + +

      In this session I explain how this transformation worked from both "Top Down" as well as "Bottom Up" in our organization. A key component was the 4 people strong DevOps Team who developed and "sell" their DevOps Pipeline to the globally distributed application teams. I will give insights into how our pipeline enables application teams to design, code, test and run a new feature for our user base.

      + +

      I will also talk about the “dark moments” as change is never without friction. Both internally as well as with our customers who also had to get used to more rapid changes.

      + +
      +
      + diff --git a/content/events/2017-toronto/program/arthur-maltson-roderick-randolph.md b/content/events/2017-toronto/program/arthur-maltson-roderick-randolph.md new file mode 100644 index 00000000000..4982d2be207 --- /dev/null +++ b/content/events/2017-toronto/program/arthur-maltson-roderick-randolph.md @@ -0,0 +1,19 @@ ++++ +date = "2017-03-05T12:01:52-05:00" +linktitle = "arthur-maltson, roderick-randolph" +title = "Arthur Maltson, Roderick Randolph" +type = "talk" + ++++ + +
      +
      +

      Deep Work: A New Working Model For Ops Teams in a DevOps Environment

      + +

      You come into the office and before you've had your morning coffee, someone's at your desk looking for help with an issue. You spend the day trying to focus on that new tool you're building for the developers, it's going to make their lives so much easier, but you find that you're firefighting all day. The day ends and you wonder "what did I even do today?". In our roles as DevOps practitioners, we live an interrupt driven life, but how do we make progress on that new internal tool or investigate that new OSS project? It's not hopeless!

      + +

      This session will introduce the concept of Deep Work and a new way to structure your team to optimize for Deep Work, while at the same time meeting your customers' (i.e. Developers, QA, etc) needs. At the end of the talk you will have learnt from our experience implementing the new team structure in two different organizations, ways to promote the concept, how to visualize people's availability, and how to find success in an interrupt driven world.

      + +
      +
      + diff --git a/content/events/2017-toronto/program/arthur-maltson.md b/content/events/2017-toronto/program/arthur-maltson.md new file mode 100644 index 00000000000..4982d2be207 --- /dev/null +++ b/content/events/2017-toronto/program/arthur-maltson.md @@ -0,0 +1,19 @@ ++++ +date = "2017-03-05T12:01:52-05:00" +linktitle = "arthur-maltson, roderick-randolph" +title = "Arthur Maltson, Roderick Randolph" +type = "talk" + ++++ + +
      +
      +

      Deep Work: A New Working Model For Ops Teams in a DevOps Environment

      + +

      You come into the office and before you've had your morning coffee, someone's at your desk looking for help with an issue. You spend the day trying to focus on that new tool you're building for the developers, it's going to make their lives so much easier, but you find that you're firefighting all day. The day ends and you wonder "what did I even do today?". In our roles as DevOps practitioners, we live an interrupt driven life, but how do we make progress on that new internal tool or investigate that new OSS project? It's not hopeless!

      + +

      This session will introduce the concept of Deep Work and a new way to structure your team to optimize for Deep Work, while at the same time meeting your customers' (i.e. Developers, QA, etc) needs. At the end of the talk you will have learnt from our experience implementing the new team structure in two different organizations, ways to promote the concept, how to visualize people's availability, and how to find success in an interrupt driven world.

      + +
      +
      + diff --git a/content/events/2017-toronto/program/augusto-rosa.md b/content/events/2017-toronto/program/augusto-rosa.md new file mode 100644 index 00000000000..41a17621f28 --- /dev/null +++ b/content/events/2017-toronto/program/augusto-rosa.md @@ -0,0 +1,17 @@ ++++ +date = "2000-01-01T01:01:01-06:00" +linktitle = "augusto-rosa" +title = "Augosto Rosa" +type = "talk" + ++++ + +
      +
      +

      Shomi Stories: A Cloud Migration, Team Building and Having Fun in between

      + +

      Join us to hear how Shomi.com, now defunct over the top video service, migrated their production workload (700+ EC2 instances) to AWS in two months with no downtime, while building a DevOps culture of transparency, and having a lot of fun as they learned. We will tell you what worked and what didn't and where Shomi was going when it was finally shut down. Learn the behind story about a technical and people transformation race to the finish line.

      + +
      +
      + diff --git a/content/events/2017-toronto/program/bridget-kromhout.md b/content/events/2017-toronto/program/bridget-kromhout.md new file mode 100644 index 00000000000..6798ad38ee3 --- /dev/null +++ b/content/events/2017-toronto/program/bridget-kromhout.md @@ -0,0 +1,21 @@ ++++ +date = "2000-01-01T01:01:01-06:00" +linktitle = "bridget-kromhout" +title = "Bridget Kromhout" +type = "talk" + ++++ + +
      +
      +

      Computers are easy; people are hard

      + +

      Designing distributed systems means considering failure scenarios—both likely and less so. Will the network let you down? (Almost assuredly.) Will some portion of your IaaS misbehave? (Have you met computers?) We build in graceful degradation for much of our automation but often neglect the (just-as-essential) human interactions.

      + +

      The classic “hard problems” of cache invalidation and naming things revolve around our understanding of what’s correct and true and our agreements with one another on scope and relevance. Communication is essential for making context-dependent decisions.

      + +

      Whether we’re attempting to determine the current state of reality or distinguish logical boundaries, democratized observability is key to answering our questions. As the fractal complexity of our distributed systems grows, we need to mindfully choose practices that work with our tooling. You can’t buy a silver bullet, but you can forge one from the collaborative efforts of your team.

      + +
      +
      + diff --git a/content/events/2017-toronto/program/chris-van-tuin.md b/content/events/2017-toronto/program/chris-van-tuin.md new file mode 100644 index 00000000000..208d3eaacf9 --- /dev/null +++ b/content/events/2017-toronto/program/chris-van-tuin.md @@ -0,0 +1,29 @@ ++++ +date = "2017-03-04T15:13:16-05:00" +linktitle = "chris-van-tuin" +title = "Chris Van Tuin" +type = "talk" + ++++ + +
      +
      +

      A Security State of Mind: Continuous Security for DevOps with Kubernetes

      + +

      With the rise of DevOps, containers are at the brink of becoming a pervasive technology in Enterprise IT to accelerate application delivery for the business. When it comes to adopting containers in the enterprise, Security is the highest adoption barrier. Is your organization ready to address the security risks with containers in a DevOps environment?

      + +

      In this presentation, you'll learn about:

      + +
        +
      • An understanding of the underlying technologies for Containers and how they enable DevOps
      • +
      • The security risks with deploying containers in the enterprise
      • +
      • The dangers of untrusted content and importance of maintaining container images
      • +
      • How to make your Container workflow more secure using Kubernetes without slowing down DevOps
      • +
      • Automating vulnerability management, security management, and compliance checking for container images in a Kubernetes environment
      • +
      + +

      Join, Chris Van Tuin, Chief Technologist, West at Red Hat, as he walks through an overview of the underlying Container technologies, the security risks with deploying containers, and how to address these security challenges in a DevOps environment with Kubernetes.

      + +
      +
      + diff --git a/content/events/2017-toronto/program/david-numan.md b/content/events/2017-toronto/program/david-numan.md new file mode 100644 index 00000000000..1f3a5f6e97c --- /dev/null +++ b/content/events/2017-toronto/program/david-numan.md @@ -0,0 +1,21 @@ ++++ +date = "2017-03-05T12:02:53-05:00" +linktitle = "david-numan" +title = "David Numan" +type = "talk" + ++++ + +
      +
      +

      Automating Quality, and Learning to Contain Ourselves

      + +

      This ignite talk will share case study learnings on using free and open source tools to automate the development, testing, QA, and deployment of a complex US government web site.

      + +

      Operations people want stability. Developers want change.

      + +

      Using docker, gitlab, and other supporting tools, we achieve consistently stable deployments as developers continue to improve the product. Running automated tests on every merge request ensures that broken code is never pushed to production. Today's tools make it possible to unify the infrastructure for the dev team, QA sites, automated testing, and deployment.

      + +
      +
      + diff --git a/content/events/2017-toronto/program/ernest-kugel.md b/content/events/2017-toronto/program/ernest-kugel.md new file mode 100644 index 00000000000..53ffec15fff --- /dev/null +++ b/content/events/2017-toronto/program/ernest-kugel.md @@ -0,0 +1,25 @@ ++++ +date = "2017-03-05T12:02:53-05:00" +linktitle = "ernest-kugel" +title = "Ernest Kugel" +type = "talk" + ++++ + +
      +
      +

      A Case Study in Error Budgeting

      + +

      We were looking for a better way to represent the experience of our clients and the reliability of our site. We found that the traditional uptime metrics did not work well for us, since they did not account for the satisfaction of our client base. Traditional uptime was also vaguely defined, with no consensus over which component should be broken in which way for which duration of time, in order to qualify as downtime. We did some research and decided to adopt the error budgeting model. This talk will be about our journey to implement it for our engineering team here at GroupBy.

      + +

      We will discuss:

      +
        +
      • The pitfalls of relying on strictly on traditional uptime calculations.
      • +
      • The basic principals of error budgeting that had been agreed upon at GroupBy.
      • +
      • The simpler technical means to calculate error budgeting reliably.
      • +
      • How using error budgeting changed GroupBy engineering.
      • +
      + +
      +
      + diff --git a/content/events/2017-toronto/program/fawzy-manaa.md b/content/events/2017-toronto/program/fawzy-manaa.md new file mode 100644 index 00000000000..d68c837c2b3 --- /dev/null +++ b/content/events/2017-toronto/program/fawzy-manaa.md @@ -0,0 +1,17 @@ ++++ +date = "2017-03-06T20:26:44-05:00" +linktitle = "fawzy-manaa" +title = "Fawzy Manaa" +type = "talk" + ++++ + +
      +
      +

      Top 5 Ways to Fail at DevOps

      + +

      The session will cover common ways people and organizations fail at DevOps, inspired by true stories. The aim is for the audience to learn from the failures of others in this space.

      + +
      +
      + diff --git a/content/events/2017-toronto/program/jason-hand.md b/content/events/2017-toronto/program/jason-hand.md new file mode 100644 index 00000000000..c789ae1cbdf --- /dev/null +++ b/content/events/2017-toronto/program/jason-hand.md @@ -0,0 +1,37 @@ ++++ +date = "2017-03-05T12:02:13-05:00" +linktitle = "jason-hand" +title = "Jason Hand" +type = "talk" + ++++ + +
      +
      +

      Beyond the Mean Time To Repair

      + +

      Mean time to Repair (MTTR) has long been the defacto metric for those tapped with the responsibility of up-time. It’s the cornerstone measurement of how well teams respond to service disruptions and a key performance metric that nearly all in IT should aim to consistently improve. Swift recovery provides far more benefits than attempts to engineer failure from complex systems.

      + +

      As important as MTTR has become, the mean time to repair is no more than an average of how long it took to manage individual incidents (from acknowledgement to resolve) over the course of time. The number of data points during that time can vary greatly depending on the complexity and scale of systems. Furthermore, averages assume there is a normal event or that your data is a normal distribution. Anyone who has been on-call can attest that some incidents require longer to resolve than others and that variance is something you shouldn’t ignore.

      + +

      Within any time-series dataset there are in fact high and low values hidden within the data. These outliers may indicate that while we think the time it takes to recover from failure is good, bad, or otherwise, many high values in our average distort or hide lower values and vice versa. We may believe that our efforts to reduce the time it takes to recover from failure is in fact working when the truth is it’s not.

      + +

      In this talk, we’ll discuss the metric of Mean Time To Repair as well as additional methods of understanding data related to building and maintaining reliable systems at scale. MTTR must be made a priority for any IT team that habitually follows old-view approaches to incident response however; a deeper understanding of the data provides much higher fidelity regarding the true health of your systems and the teams that support them.

      + +

      Audience takeaways:

      + +
        +
      • Clear understanding of MTTR and why it has become a significant metric for modern DevOps/Operations teams
      • +
      • The Law of Averages
      • +
      • Additional metrics to provide deeper understanding of incident response
      • +
          +
        • Mean Time to Identify
        • +
        • Median
        • +
        • Standard Deviation
        • +
        • Percentiles
        • +
        +
      + +
      +
      + diff --git a/content/events/2017-toronto/program/mia-henderson.md b/content/events/2017-toronto/program/mia-henderson.md new file mode 100644 index 00000000000..cd0e3e6df22 --- /dev/null +++ b/content/events/2017-toronto/program/mia-henderson.md @@ -0,0 +1,21 @@ ++++ +date = "2017-03-05T12:01:25-05:00" +linktitle = "mia-henderson" +title = "Mia Henderson" +type = "talk" + ++++ + +
      +
      +

      A year of containers: the agony and the ecstasy

      + +

      Docker Docker Docker! is the driving call these days, but what's it like to actually roll out containers in production with existing applications and infrastructure? How do you get buy-in from development teams? How does docker mix with existing legacy code and infrastructure? What’s the operational experience like for developers who are on-call?

      + +

      In this talk I'll discuss how PagerDuty migrated a number of existing applications to containerized infrastructure in production, simplifying build and deploy along the way. I will go over the issues we ran into (IPSec + Docker = sad), the tools we created to help, and the benefits we're experiencing, as well as our current work using a container scheduling platform. I’ll also talk about selling docker in an environment where developers are on call for their applications that are now running in containers.

      + +

      Attendees to this talk will leave with ideas on how to kick-start migration to containers in their organization, as well as the tools they will need to build or find along the way.

      + +
      +
      + diff --git a/content/events/2017-toronto/program/philippe-tremblay.md b/content/events/2017-toronto/program/philippe-tremblay.md new file mode 100644 index 00000000000..7d3d8668d8b --- /dev/null +++ b/content/events/2017-toronto/program/philippe-tremblay.md @@ -0,0 +1,31 @@ ++++ +date = "2017-03-06T20:35:51-05:00" +linktitle = "philippe-tremblay" +title = "Philippe Tremblay" +type = "talk" + ++++ + +
      +
      +

      Cloud First or DevOpsing with Governance, Legal and InfoSec

      + +

      In enterprises banking on agility and pushing for Cloud first. Beware of some of the implications. Learn about some of the remedies.

      + +

      SaaS first, PaaS second, IaaS third so goes the mantra... That's all fine and dandy but the thing they don't tell you is how much you'll depend on Governance, Vendor Management, Legal, InfoSec. There's nothing like it to really bog down your hyper-versatile Top Gun DevOps teams.

      + +

      To be successfully, you'll need them to work on a level and agile playing field. So, welcome to the world of:

      +
        +
      • Vendor Risk Assessment Backlogs
      • +
      • Legacy contract review Backlogs
      • +
      • Strategizing about Cloud Service contract
      • +
      • MVPs going Prop over and over.
      • +
      + +

      Also beware of being the first to have an eager legal department. What happens when your legal department becomes more cloud-savvy than the legal tzar of your powerhouse ERP company whose marketing their software in a public cloud partnership without his knowledge.

      + +

      Lot's of fun to be had.

      + +
      +
      + diff --git a/content/events/2017-toronto/program/roderick-randolph.md b/content/events/2017-toronto/program/roderick-randolph.md new file mode 100644 index 00000000000..4982d2be207 --- /dev/null +++ b/content/events/2017-toronto/program/roderick-randolph.md @@ -0,0 +1,19 @@ ++++ +date = "2017-03-05T12:01:52-05:00" +linktitle = "arthur-maltson, roderick-randolph" +title = "Arthur Maltson, Roderick Randolph" +type = "talk" + ++++ + +
      +
      +

      Deep Work: A New Working Model For Ops Teams in a DevOps Environment

      + +

      You come into the office and before you've had your morning coffee, someone's at your desk looking for help with an issue. You spend the day trying to focus on that new tool you're building for the developers, it's going to make their lives so much easier, but you find that you're firefighting all day. The day ends and you wonder "what did I even do today?". In our roles as DevOps practitioners, we live an interrupt driven life, but how do we make progress on that new internal tool or investigate that new OSS project? It's not hopeless!

      + +

      This session will introduce the concept of Deep Work and a new way to structure your team to optimize for Deep Work, while at the same time meeting your customers' (i.e. Developers, QA, etc) needs. At the end of the talk you will have learnt from our experience implementing the new team structure in two different organizations, ways to promote the concept, how to visualize people's availability, and how to find success in an interrupt driven world.

      + +
      +
      + diff --git a/content/events/2017-toronto/propose.md b/content/events/2017-toronto/propose.md index a9b9153464e..cb24117c99f 100644 --- a/content/events/2017-toronto/propose.md +++ b/content/events/2017-toronto/propose.md @@ -10,6 +10,8 @@ type = "event"
      +__We're still looking for a few more ignites to round out our program. Submit your idea on OpenCFP today.__ + ### Equal Opportunity DevOpsDays Toronto is committed to creating a diverse environment and is proud to invite people of all backgrounds and profiles to submit presentation proposals. All potential speakers will receive consideration without regard to race, colour, religion, gender, gender identity or expression, sexual orientation, national origin, genetics, ability or age. @@ -35,7 +37,7 @@ Choosing talks is part art, part science; here are some factors we consider when ### Submit -To submit a talk create an account on our OpenCFP and click the _Submit a talk_ button. +To submit a talk create an account on our OpenCFP and click the _Submit a talk_ button. - Be specific... we aren't mind readers (a description of about 20 lines is about right) - Detail is good... but not as important as explaining why your proposal would be interesting diff --git a/utilities/examples/speakers/speakers.md b/content/events/2017-toronto/speakers.md similarity index 56% rename from utilities/examples/speakers/speakers.md rename to content/events/2017-toronto/speakers.md index 142f93480cf..4386eb992b8 100644 --- a/utilities/examples/speakers/speakers.md +++ b/content/events/2017-toronto/speakers.md @@ -1,5 +1,5 @@ +++ -date = "2000-01-01T01:01:01-06:00" +date = "2017-03-05T12:00:42-05:00" title = "speakers" type = "speakers" diff --git a/content/events/2017-toronto/welcome.md b/content/events/2017-toronto/welcome.md index 547dd7ede03..4ef76d8354b 100644 --- a/content/events/2017-toronto/welcome.md +++ b/content/events/2017-toronto/welcome.md @@ -46,27 +46,27 @@ aliases = ["/events/2017-toronto"] Propose
      - {{< event_link page="propose" text="Propose a talk!" >}} + We're still looking for a few more ignite proposals. {{< event_link page="propose" text="Submit your idea today!" >}}
      - + - +
      @@ -86,10 +86,9 @@ aliases = ["/events/2017-toronto"]
      -

      - {{< event_twitter DevOpsDaysTO >}} + {{< event_twitter >}}
      @@ -111,4 +110,4 @@ aliases = ["/events/2017-toronto"] - \ No newline at end of file + diff --git a/content/events/2017-vancouver/program.md b/content/events/2017-vancouver/program.md index f7ef83e16b5..f57b169b8c3 100644 --- a/content/events/2017-vancouver/program.md +++ b/content/events/2017-vancouver/program.md @@ -20,329 +20,362 @@ type = "event"
      -
      +

      Day 1

      - -
      + +
      - +
      - Registration, Breakfast, and Sponsor Booths Open + Registration opens
      -
      - -
      +
      +
      - +
      - Opening Welcome + Day 1 Opening Introduction
      -
      - -
      +
      +
      - +
      -   + Talk 1 - Chris Van Tuin: "A Security State of Mind: Continuous Security with Kubernetes"
      -
      - -
      +
      +
      - +
      - Sponsors + Talk 2 - Dmytro Dyachuk, Gordon Klok, Roman Lisagor: "Modern Infrastructure"
      -
      - -
      +
      +
      - +
      -   + Message from Gold Sponsors: Deis, Pivitol, Salesforce, SauceLabs, Automic
      -
      - -
      +
      +
      - +
      - Break + Talk 3 - Nell Shamrell-Harrington: "Open Source Governance - The Hard Parts"
      -
      - -
      +
      +
      - +
      -   + Talk 4 - Bill Weiss: "Moving to the Left: Lessons from the State of DevOps Report"
      -
      - -
      +
      +
      - +
      - Sponsors + Open Space Introduction
      -
      - -
      +
      +
      - +
      -   + Open Space Proposals
      -
      - -
      +
      +
      - +
      - Lunch (catered) + Lunch (voting during)
      -
      - -
      +
      +
      - +
      - Ignites + Ignite Opening
      -
      - -
      +
      +
      - +
      - Open Space
      - Open Space Opening + Ignite 1 - Adam Lefkowitz: "Don't listen to me, I'm a fraud."
      -
      - -
      +
      +
      - +
      - Open Space
      - Open Space #1 + Ignite 2 - Jan Ulrich: "Compliance with Continuous Delivery"
      -
      - -
      +
      +
      - +
      - Open Space
      - Open Space #2 + Ignite 3 - Holly Burton: "Getting a Promotion: The Checklist"
      -
      - -
      +
      +
      - +
      - Open Space
      - Open Space #3 + Ignite 4 - Dmitry Vinnik: "Companies Which Need DevOps But Don't Know About It"
      -
      - -
      +
      +
      - +
      - Close Day & Logistics + Ignite 5 - Matthew Fisher: "Remote Friendly: Making it Happen"
      -
      - -
      +
      +
      - +
      - Evening Event + Open Space Slot 1
      -
      - - - - - - -
      -
      +
      +
      +
      + +
      +
      + ... +
      +
      +
      +
      + +
      +
      + Open Space Slot 2 +
      +
      +
      +
      + +
      +
      + Open Space Slot 3 +
      +
      +
      +
      + +
      +
      + Day 1 Closing Comments +
      +
      +
      +
      + +
      +
      + Party at Tavern Starts +
      +
      +
      +

      Day 2

      - -
      +
      - +
      - Registration, Breakfast, and Sponsor Booths Open + Registration opens
      -
      - -
      +
      +
      - +
      - Opening Welcome + Day 2 Opening Introduction
      -
      - -
      +
      +
      - +
      -   + Talk 5 - Jef King: "Zombies at Braains.io"
      -
      - -
      +
      +
      - +
      - Sponsors + Talk 6 - Holly Burton: "Am I the Crazy One? Gaslighting and Gender in the Workplace."
      -
      - -
      +
      +
      - +
      -   + Message from Gold Sponsors: Boeing Aeroinfo, Demonware, VictorOps, Trinimbus, Sumologic
      -
      - -
      +
      +
      - +
      - Break + Talk 7 - David Aldurien: "Machine Actionable Intelligence (or How I Learned to Stop Worrying and Trust the Watchdog)"
      -
      - -
      +
      +
      - +
      -   + Talk 8 - Adam Arsenault: "Exploring Microservice Graphs in Real Time"
      -
      - -
      +
      +
      - +
      - Sponsors + Open Space Introduction
      -
      - -
      +
      +
      - +
      -   + Open Space Proposals
      -
      - -
      +
      +
      - +
      - Lunch (catered) + Lunch (voting during)
      -
      - -
      +
      +
      - +
      - Ignites + Ignite Opening
      -
      - -
      +
      +
      - +
      - Open Space
      - Open Space Opening + Ignite 6 - Victor Yang: "Event Driven Architecture "
      -
      - -
      +
      +
      - +
      - Open Space
      - Open Space #1 + Ignite 7 - Jason Yee: "Third-wave DevOps"
      -
      - -
      +
      +
      - +
      - Open Space
      - Open Space #2 + Ignite 8 - Michael Greenwell: "Big Game Hunting with ELK"
      -
      - -
      +
      +
      - +
      - Open Space
      - Open Space #3 + Ignite 9 - David Danzilio: "How I Learned to Stop Worrying and Contribute to Open Source"
      -
      - -
      +
      +
      - +
      - Close Day & Farewell + Ignite 10 - : TBD
      -
      -
      -
      +
      +
      +
      + +
      +
      + Talk 9 - Oriol Martinez Pou & Solmaz Abbaspoursani: "Best Buy Canada's Holiday Survival Kit: Performance Strategy and real-time APM" +
      +
      +
      +
      + +
      +
      + Talk 10 - Jason Hand: "Beyond Mean Time to Repair" +
      +
      +
      +
      + +
      +
      + Open Space Slot 5 +
      +
      +
      +
      + +
      +
      + Open Space Slot 6 +
      +
      +
      +
      + +
      +
      + Day 2 Closing Comments +
      +
      +
      diff --git a/content/events/2017-vancouver/sponsor.md b/content/events/2017-vancouver/sponsor.md index f8227133c28..f9c7170a13a 100644 --- a/content/events/2017-vancouver/sponsor.md +++ b/content/events/2017-vancouver/sponsor.md @@ -6,10 +6,4 @@ type = "event" Sponsorship prospectus -_We greatly value sponsors for this open event. If you are interested in sponsoring, please drop us an email at [{{< email_organizers >}}]._ - -DevOpsDays is a self-organizing conference for practitioners that depends on sponsorships. We do not have vendor booths, sell product presentations, or distribute attendee contact lists. Sponsors have the opportunity to have short elevator pitches during the program and will get recognition on the website and social media before, during and after the event. Sponsors are encouraged to represent themselves by actively participating and engaging with the attendees as peers. Any attendee also has the opportunity to demo products/projects as part of an open space session. - -Gold sponsors get a full table and Silver sponsors a shared table where they can interact with those interested to come visit during breaks. All attendees are welcome to propose any subject they want during the open spaces, but this is a community-focused conference, so heavy marketing will probably work against you when trying to make a good impression on the attendees. - -The best thing to do is send engineers to interact with the experts at DevOpsDays on their own terms. +Sponsorship for 2017 is now closed. We thank all of our sponsors for their support. diff --git a/content/events/2017-washington-dc/welcome.md b/content/events/2017-washington-dc/welcome.md index d3c44e4307d..56d95d82695 100644 --- a/content/events/2017-washington-dc/welcome.md +++ b/content/events/2017-washington-dc/welcome.md @@ -88,14 +88,10 @@ aliases = ["/events/2017-washington-dc"]

      - {{< event_twitter devopsdaysdc >}} + {{< event_twitter >}}

      - - diff --git a/content/events/2017-zurich/program.md b/content/events/2017-zurich/program.md index 232e8240540..ea270ae9ed4 100644 --- a/content/events/2017-zurich/program.md +++ b/content/events/2017-zurich/program.md @@ -1,363 +1,7 @@ +++ -date = "2016-03-06T21:28:07-06:00" -title = "program" -type = "event" - -+++ - -
      -
      -
      - If you are new to the Open Space concept you may want to read some more details. -
      -
      -
      - -
      -
      -

      The Schedule

      -
      -
      - -
      -
      -
      -
      -

      Day 1

      -
      -
      - -
      -
      - -
      -
      - Registration Breakfast -
      -
      - -
      -
      - -
      -
      - Opening Welcome -
      -
      - - - - - - - -
      -
      - -
      -
      - Break -
      -
      - -
      -
      - -
      -
      - Sponsors -
      -
      - - - - - -
      -
      - -
      -
      - Lunch -
      -
      - - - -
      -
      - -
      -
      - Open Space
      - Open Space Opening -
      -
      - -
      -
      - -
      -
      - Open Space
      - Open Space #1 -
      -
      - -
      -
      - -
      -
      - Open Space
      - Open Space #2 -
      -
      - -
      -
      - -
      -
      - Open Space
      - Open Space #3 -
      -
      - -
      -
      - -
      -
      - Close Day & Logistics -
      -
      - -
      -
      - -
      -
      - Evening Event -
      -
      - - - - - - -
      -
      -
      -
      -

      Day 2

      -
      -
      - -
      -
      - -
      -
      - Registration Breakfast -
      -
      - -
      -
      - -
      -
      - Opening Welcome -
      -
      - - - - - - - -
      -
      - -
      -
      - Break -
      -
      - -
      -
      - -
      -
      - Sponsors -
      -
      - -
      -
      - -
      - -
      - - - -
      -
      - -
      -
      - Lunch -
      -
      - - - -
      -
      - -
      -
      - Open Space
      - Open Space Opening -
      -
      - -
      -
      - -
      -
      - Open Space
      - Open Space #1 -
      -
      - -
      -
      - -
      -
      - Open Space
      - Open Space #2 -
      -
      - -
      -
      - -
      -
      - Open Space
      - Open Space #3 -
      -
      - -
      -
      - -
      -
      - Close Day & Farewell -
      -
      -
      -
      +City = "Zürich" +Year = "2017" +date = "2017-03-15T20:37:34+01:00" +title = "Zürich 2017 Program" +type = "program" ++++ \ No newline at end of file diff --git a/content/events/2017-zurich/program/alex-lichtenberger.md b/content/events/2017-zurich/program/alex-lichtenberger.md index a37ea35f6f7..da2633484cb 100644 --- a/content/events/2017-zurich/program/alex-lichtenberger.md +++ b/content/events/2017-zurich/program/alex-lichtenberger.md @@ -5,7 +5,7 @@ date = "2017-02-27T15:10:56+01:00" talk_date = "" talk_start_time = "" talk_end_time = "" -title = "DevOps and Holacracy (or alternatively: Are you a manager or a leader?)" +title = "DevOps and Holacracy (a.k.a.: Are You a Manager or a Leader?)" type = "talk" speakers = ["alex-lichtenberger"] youtube = "" @@ -15,8 +15,7 @@ slideshare = "" slides = "" +++ -In a short ignite talk, I would like to give some inspiration what it means to work together in a devops environment: +Having the right cultural environment is key for DevOps success. In this short ignite talk, I would like to give some inspiration what it means to work together in a devops environment and the typical challenges: * Away from tradtitional management (command & control) -* Towards Devops leadership: The Coach, asking the right question, creating the right environment and the self-organizing team, with a strong improvement culture towards a common vision -* Enriched with some funny anecdotes from my past experience +* Towards Devops leadership: The coach, asking the right question, creating the right environment and the self-organizing team, with a strong improvement culture towards a common vision diff --git a/content/events/2017-zurich/program/beat-stutz.md b/content/events/2017-zurich/program/beat-stutz.md index 869094c170f..47215bf6747 100644 --- a/content/events/2017-zurich/program/beat-stutz.md +++ b/content/events/2017-zurich/program/beat-stutz.md @@ -5,7 +5,7 @@ date = "2017-02-21T21:20:19+01:00" talk_date = "" talk_start_time = "" talk_end_time = "" -title = "Improving Time to Market: The new speed of DevOps in a corporate environment" +title = "Improving Time to Market: The New Speed of DevOps in a Corporate Environment" type = "talk" speakers = ["beat-stutz"] youtube = "" @@ -15,14 +15,14 @@ slideshare = "" slides = "" +++ -SIX has started the transformation to DevOps in 2015, being one of the first larger -businesses in the Swiss financial sector to do so. The presentation will show the journey -of one of the DevOps teams – the approach, the results and the learnings on the way from -traditional “silo’ed” organization with waterfall methods to a new cross-functional, +SIX has started the transformation to DevOps in 2015, being one of the first larger +businesses in the Swiss financial sector to do so. The presentation will show the journey +of one of the DevOps teams – the approach, the results and the learnings on the way from +traditional “silo’ed” organization with waterfall methods to a new cross-functional, agile team, with a focus on improving speed by eliminating waste and through automation. - + About our Company: -SIX operates a competitive infrastructure for the Swiss financial center, catering to a -broad, international client base. Its four business areas provide a comprehensive range -of services in the areas of securities transactions, financial information processing and +SIX operates a competitive infrastructure for the Swiss financial center, catering to a +broad, international client base. Its four business areas provide a comprehensive range +of services in the areas of securities transactions, financial information processing and cashless payment transactions. diff --git a/content/events/2017-zurich/program/charity-majors.md b/content/events/2017-zurich/program/charity-majors.md index 7b1f863e515..30830ccf288 100644 --- a/content/events/2017-zurich/program/charity-majors.md +++ b/content/events/2017-zurich/program/charity-majors.md @@ -5,7 +5,7 @@ date = "2017-02-10T16:58:32+01:00" talk_date = "" talk_start_time = "" talk_end_time = "" -title = "To Be Announced" +title = "A Young Lady’s Illustrated Primer to Technical Decison-Making" type = "talk" speakers = ["charity-majors"] youtube = "" @@ -14,3 +14,13 @@ speakerdeck = "" slideshare = "" slides = "" +++ + +Over the last few years we’ve seen an explosion of complexity, in everything from polyglot +storage to composable infrastructure, containerization and microservices, config management +vs immutable infrastructure. Until recently there was a set of widely accepted best +practices for running in the cloud. But now every element of your stack is a never-ending +rabbit hole of possibilities and questions. What's an engineer or architect or manager to +do? Solid technical judgment is more important than ever. You can’t anticipate every +problem, but you can identify and head off many of them in advance. We'll talk about how +to identify and prioritize where to be boring and where to innovate … and how to correct +course when you've made a wrong call. diff --git a/content/events/2017-zurich/program/cyrill-ruettimann.md b/content/events/2017-zurich/program/cyrill-ruettimann.md index 38e00f037f1..b0b9ed5571a 100644 --- a/content/events/2017-zurich/program/cyrill-ruettimann.md +++ b/content/events/2017-zurich/program/cyrill-ruettimann.md @@ -5,7 +5,7 @@ date = "2017-02-21T21:22:02+01:00" talk_date = "" talk_start_time = "" talk_end_time = "" -title = "New ways to effectively develop a DevOps culture" +title = "New Ways to Effectively Develop a DevOps Culture" type = "talk" speakers = ["cyrill-ruettimann"] youtube = "" @@ -15,18 +15,18 @@ slideshare = "" slides = "" +++ -I was working in agile projects for more than 10 years now. But I have never been in a -team reaching the hyper performance phase. Nor while working as number 2 in a start up -nor in a small team embodied in a multinational global player. With DevOps, new -specialists joining the team. The diversity grows and that will it not make easier to -develop such a culture. Kaikaku, that’s the Japanese word for breaking off, doing -experiments and implement disruptive changes if needed. That’s the recipe to develop a -highly performing team or to find new ways. I had the chance to learn and implement three -different methods which support such a culture. The results while applying those methods -where stunning – positively. My hands-on experience with Lego Serious Play, Complex -Problem Solving and Foursight have clearly shown, that it is worth to think outside the -box and to left behind traditional management instruments. Culture is more important than -before. To build bridges and solutions as a team is a core competence in a DevOps team. -Those three methods will enrich your way to develop a DevOps culture. In my presentation, -I will introduce the three methods based on real-life applications and will show you, how +I was working in agile projects for more than 10 years now. But I have never been in a +team reaching the hyper performance phase. Nor while working as number 2 in a start up +nor in a small team embodied in a multinational global player. With DevOps, new +specialists joining the team. The diversity grows and that will it not make easier to +develop such a culture. Kaikaku, that’s the Japanese word for breaking off, doing +experiments and implement disruptive changes if needed. That’s the recipe to develop a +highly performing team or to find new ways. I had the chance to learn and implement three +different methods which support such a culture. The results while applying those methods +where stunning – positively. My hands-on experience with Lego Serious Play, Complex +Problem Solving and Foursight have clearly shown, that it is worth to think outside the +box and to left behind traditional management instruments. Culture is more important than +before. To build bridges and solutions as a team is a core competence in a DevOps team. +Those three methods will enrich your way to develop a DevOps culture. In my presentation, +I will introduce the three methods based on real-life applications and will show you, how they can help to build bridges. diff --git a/content/events/2017-zurich/program/dave-halter.md b/content/events/2017-zurich/program/dave-halter.md index c4169a47d8e..17eb19a20f6 100644 --- a/content/events/2017-zurich/program/dave-halter.md +++ b/content/events/2017-zurich/program/dave-halter.md @@ -1,24 +1,31 @@ +++ +City = "Zurich" +Year = "2017" date = "2017-03-03T14:40:54+01:00" -linktitle = "dave-halter" -title = "Dave Halter" +talk_date = "" +talk_start_time = "" +talk_end_time = "" +title = "Beautiful Deployment Code" type = "talk" - +speakers = ["dave-halter"] +youtube = "" +vimeo = "" +speakerdeck = "" +slideshare = "" +slides = "" +++ -
      -
      -

      Title: - -

      - -

      Description:

      - -

      +We all know that DevOps is not (only) about deploying the latest WordPress anymore. There +is a growing number of projects that have huge deployment scripts - think OpenStack or +OpenShift. In this context it is extremely important to keep deployment code readable and +maintainable. -

      -

      +This talk will not try to give you a best practice overview, but show you how Ansible as a +whole could be improved. Ansible has a very rich set of features, its YAML files however +are often a stumbling block and understanding a big YAML project is not a task for +bystanders. In a simple RFC [1] there is a proposal on how Ansible could look like in the +future. -

      -
      +[1] https://github.com/davidhalter/pysible +[2] https://github.com/davidhalter/jedi" diff --git a/content/events/2017-zurich/program/dirk-lehmann.md b/content/events/2017-zurich/program/dirk-lehmann.md index b0aaaf8842b..ba2d39cdd3a 100644 --- a/content/events/2017-zurich/program/dirk-lehmann.md +++ b/content/events/2017-zurich/program/dirk-lehmann.md @@ -5,7 +5,7 @@ date = "2017-02-27T15:11:58+01:00" talk_date = "" talk_start_time = "" talk_end_time = "" -title = "Trust as the foundation of DevOps" +title = "Trust as the Foundation of DevOps" type = "talk" speakers = ["dirk-lehmann"] youtube = "" @@ -18,22 +18,22 @@ slides = "" The why: In DevOps we talk about a cultural change. We aim to tear down silos and create small cross-functional, autonomous and empowered -teams. So why not only let management do the next big re-org thing, "the DevOps re-org", -and all is going to be fine, right!? No, because its about people. Interacting people. -And for really changing a companies culture, the way people interact together, we need to -establish, recreate and foster trust. If you drill down deeper into many of what makes up +teams. So why not only let management do the next big re-org thing, "the DevOps re-org", +and all is going to be fine, right!? No, because its about people. Interacting people. +And for really changing a companies culture, the way people interact together, we need to +establish, recreate and foster trust. If you drill down deeper into many of what makes up DevOps, you can find that trust plays a significant (if not crucial) role in -establishing a DevOps culture. But what is trust? Does it really help on a DevOps journey? +establishing a DevOps culture. But what is trust? Does it really help on a DevOps journey? How can it be created or strengthened? The how: I'll first show the problem of missing trust in an (siloed) organization. -Then I aim to give a definition of trust in general and which basic elements make up trust -among people. I will outline which role trust plays in creating a DevOps culture, based on -my very own experience within my team at SAP, as well as many examples provided by -literature, blogs, etc. (e.g. "The 5 dysfunctions of a Team" - Lencioni ; -"The speed of trust" - Covery). Last I will give ideas and shared experiences on how trust -can be created and fostered within teams. (e.g. tell about the importance of team sizes +Then I aim to give a definition of trust in general and which basic elements make up trust +among people. I will outline which role trust plays in creating a DevOps culture, based on +my very own experience within my team at SAP, as well as many examples provided by +literature, blogs, etc. (e.g. "The 5 dysfunctions of a Team" - Lencioni ; +"The speed of trust" - Covery). Last I will give ideas and shared experiences on how trust +can be created and fostered within teams. (e.g. tell about the importance of team sizes ("The mytical man-month" (Brooks) as well as findings by Mr. Robin Dunbar "Dunbars number"), -"Perception of competance", "Perception of intensions", "Capacity of trusting", the +"Perception of competance", "Perception of intensions", "Capacity of trusting", the importance of failure tolerance, openness, common shared goals, respect, diversity, ...) diff --git a/content/events/2017-zurich/program/emanuel-kleindienst.md b/content/events/2017-zurich/program/emanuel-kleindienst.md index 4969868b64a..30ea679c165 100644 --- a/content/events/2017-zurich/program/emanuel-kleindienst.md +++ b/content/events/2017-zurich/program/emanuel-kleindienst.md @@ -5,7 +5,7 @@ date = "2017-02-27T15:07:48+01:00" talk_date = "" talk_start_time = "" talk_end_time = "" -title = "Hacking your boss for DevOps - how to convince your manager to support DevOps" +title = "Hacking Your Boss for DevOps - How to Convince Your Manager to Support DevOps" type = "talk" speakers = ["emanuel-kleindienst"] youtube = "" @@ -15,8 +15,8 @@ slideshare = "" slides = "" +++ -As a developer, you know you need to collaborate with the Ops-people to bring agility and -DevOps to your project. But how do you explain this to your boss ? What are the other -benefits your manager understands and can relate to ? Emanuel will show you different -strategies to convince the bean counters in your company and brief you on the words and +As a developer, you know you need to collaborate with the Ops-people to bring agility and +DevOps to your project. But how do you explain this to your boss ? What are the other +benefits your manager understands and can relate to ? Emanuel will show you different +strategies to convince the bean counters in your company and brief you on the words and language they understand. diff --git a/content/events/2017-zurich/program/hannah-foxwell.md b/content/events/2017-zurich/program/hannah-foxwell.md index 9f91e4f12f8..06f2ebf9e59 100644 --- a/content/events/2017-zurich/program/hannah-foxwell.md +++ b/content/events/2017-zurich/program/hannah-foxwell.md @@ -5,7 +5,7 @@ date = "2017-02-10T16:59:11+01:00" talk_date = "" talk_start_time = "" talk_end_time = "" -title = "To Be Announced" +title = "Tech is easy. Humans are hard." type = "talk" speakers = ["hannah-foxwell"] youtube = "" @@ -14,3 +14,10 @@ speakerdeck = "" slideshare = "" slides = "" +++ + +The health of your culture is a product of the ideas, beliefs and behaviour of your human +colleagues. The health of your platform includes the health of the humans that build and +support it. + +In this talk Hannah will discuss the very human aspects of DevOps and why we need to take +a more Human approach to DevOps transformation. [@HumanOps](https://twitter.com/humanops) diff --git a/content/events/2017-zurich/program/henri-dubois-ferriere.md b/content/events/2017-zurich/program/henri-dubois-ferriere.md index c32b4f5b2f8..3e75aa1365f 100644 --- a/content/events/2017-zurich/program/henri-dubois-ferriere.md +++ b/content/events/2017-zurich/program/henri-dubois-ferriere.md @@ -5,7 +5,7 @@ date = "2017-02-27T15:11:17+01:00" talk_date = "" talk_start_time = "" talk_end_time = "" -title = "Cloudy with a chance of syscalls" +title = "Cloudy with a Chance of Syscalls" type = "talk" speakers = ["henri-dubois-ferriere"] youtube = "" @@ -15,29 +15,25 @@ slideshare = "" slides = "" +++ -Please find my proposal below. As background, I'm an independent developer who is back in -CH after spending most of my career in San Francisco. I'm not affiliated with any vendor -or product! - -TLDR; The Linux system call interface is becoming an increasingly useful instrumentation -point for monitoring, troubleshooting, and security. This talk covers why that is happening, +TLDR; The Linux system call interface is becoming an increasingly useful instrumentation +point for monitoring, troubleshooting, and security. This talk covers why that is happening, what you can get from it, and how it will make your life better. -Once upon a time, you could use packet capture to answer questions like: How many outbound -TCP connections in the past hour? Top HTTP requests? Did the latest SQL injection attack +Once upon a time, you could use packet capture to answer questions like: How many outbound +TCP connections in the past hour? Top HTTP requests? Did the latest SQL injection attack happen to my database? -But then the cloud happened, we lost access to a span port, and no longer had a good place -to capture traffic. And then containers and their orchestration happened (hello k8s!), +But then the cloud happened, we lost access to a span port, and no longer had a good place +to capture traffic. And then containers and their orchestration happened (hello k8s!), and we lost the straightforward mapping between network tuples and applications. -But there's good news! There's another instrumentation point which is still largely -overlooked, but is even richer in the detail it provides: system calls. By tapping syscalls, -you can get pretty much anything you can get from tapping the network, and a lot more. -And we're now getting good support (both kernel and associated tooling) to tap into this -instrumentation point. +But there's good news! There's another instrumentation point which is still largely +overlooked, but is even richer in the detail it provides: system calls. By tapping syscalls, +you can get pretty much anything you can get from tapping the network, and a lot more. +And we're now getting good support (both kernel and associated tooling) to tap into this +instrumentation point. -We'll give highlights of some of those open-source tools, such as go-audit, sysdig, -falco, and maybe even a taste of ebpf. Most importantly, we'll cover practical examples of -using system calls to answer analytics, security, and monitoring questions on realistic +We'll give highlights of some of those open-source tools, such as go-audit, sysdig, +falco, and maybe even a taste of ebpf. Most importantly, we'll cover practical examples of +using system calls to answer analytics, security, and monitoring questions on realistic environments. diff --git a/content/events/2017-zurich/program/jorge-salamero-sanz.md b/content/events/2017-zurich/program/jorge-salamero-sanz.md index ddc54f996ba..2d4999bc970 100644 --- a/content/events/2017-zurich/program/jorge-salamero-sanz.md +++ b/content/events/2017-zurich/program/jorge-salamero-sanz.md @@ -5,7 +5,7 @@ date = "2017-02-21T21:20:35+01:00" talk_date = "" talk_start_time = "" talk_end_time = "" -title = "You’re monitoring containers wrong" +title = "You’re Monitoring Containers Wrong" type = "talk" speakers = ["jorge-salamero-sanz"] youtube = "" @@ -15,12 +15,12 @@ slideshare = "" slides = "" +++ -I hate to say it, but there’s a lot of bad advice out there on how to monitor your -containers in production. In this talk I hope to add some much-needed clarity on how to -best monitor containers to manage the health of your applications. +I hate to say it, but there’s a lot of bad advice out there on how to monitor your +containers in production. In this talk I hope to add some much-needed clarity on how to +best monitor containers to manage the health of your applications. -My advice is built off our experience creating container monitoring solutions, and the -information we’ve gotten from working with hundreds of customers deploying Docker. +My advice is built off our experience creating container monitoring solutions, and the +information we’ve gotten from working with hundreds of customers deploying Docker. I’ll cover key questions like: * Why is it so hard to get visibility into Docker containers? @@ -29,6 +29,6 @@ I’ll cover key questions like: * How does Kubernetes improve monitoring? How does it get in the way? * What open source tools can help with these challenges? -In addition to this theory, I’ll get into some real examples that will ground our -discussion. You’ll walk away with a new appreciation of what it takes to monitor your +In addition to this theory, I’ll get into some real examples that will ground our +discussion. You’ll walk away with a new appreciation of what it takes to monitor your environment right, as well as a few ideas that you can put into practice right away. diff --git a/content/events/2017-zurich/program/maik-wojcieszak.md b/content/events/2017-zurich/program/maik-wojcieszak.md index 78ebd6354da..007077eb19b 100644 --- a/content/events/2017-zurich/program/maik-wojcieszak.md +++ b/content/events/2017-zurich/program/maik-wojcieszak.md @@ -5,7 +5,7 @@ date = "2017-02-27T15:13:49+01:00" talk_date = "" talk_start_time = "" talk_end_time = "" -title = "Industrial DevOps - cross organizational automation in production" +title = "Industrial DevOps - Cross Organizational Automation in Production" type = "talk" speakers = ["maik-wojcieszak"] youtube = "" @@ -15,14 +15,14 @@ slideshare = "" slides = "" +++ -Fast response to changing markets, flexible automation and cross organizational integration -are the key features for the industrial landscape of the future. +Fast response to changing markets, flexible automation and cross organizational integration +are the key features for the industrial landscape of the future. -I've first learned about DevOps about 2 years ago. With my background of industrial -automation I felt somehow as a stranger while attending my first DevOps conference. After -a while it dawned on me that DevOps can solve many problems in my working area. +I've first learned about DevOps about 2 years ago. With my background of industrial +automation I felt somehow as a stranger while attending my first DevOps conference. After +a while it dawned on me that DevOps can solve many problems in my working area. -This talk is about what I've learned from DevOps. I will describe common problems and -pitfalls that arise from cross organizational scaling of automation and give a short -overview of the requirements for a software to support agile management of production +This talk is about what I've learned from DevOps. I will describe common problems and +pitfalls that arise from cross organizational scaling of automation and give a short +overview of the requirements for a software to support agile management of production environments. diff --git a/content/events/2017-zurich/program/tharmes-siva.md b/content/events/2017-zurich/program/tharmes-siva.md index 67c1c1cc557..7b01d245f81 100644 --- a/content/events/2017-zurich/program/tharmes-siva.md +++ b/content/events/2017-zurich/program/tharmes-siva.md @@ -5,7 +5,7 @@ date = "2017-02-21T21:21:08+01:00" talk_date = "" talk_start_time = "" talk_end_time = "" -title = "Continuous Performance Delivery: Find and fix the things that matter" +title = "Continuous Performance Delivery: Find and Fix the Things That Matter" type = "talk" speakers = ["tharmes-siva"] youtube = "" @@ -16,19 +16,19 @@ slides = "" +++ Businesses want to ensure that their end users are happy so they can maximize productivity, -loyalty, and profits. But poor performing applications cause serious business issues. -In today’s DevOps organizations and agile environments, it is essential to ensure application -performance management throughout the full application lifecycle from the End User to +loyalty, and profits. But poor performing applications cause serious business issues. +In today’s DevOps organizations and agile environments, it is essential to ensure application +performance management throughout the full application lifecycle from the End User to Infrastructure. To achieve this, modern application performance management faces a challenge: * on one hand, it has to be extremely flexible and agile -* on the other hand has to provide all necessary information on all transactions end-to-end +* on the other hand has to provide all necessary information on all transactions end-to-end -in production as well as development and test environments so that people are talking the -same language. - -Because DevOps is about speed and iterations, we will share in this presentation a performance -management philosophy which will maximize the value of DevOps for high performing applications. -It allows you to find and fix the things that really matter instead of hunting ghost performance +in production as well as development and test environments so that people are talking the +same language. + +Because DevOps is about speed and iterations, we will share in this presentation a performance +management philosophy which will maximize the value of DevOps for high performing applications. +It allows you to find and fix the things that really matter instead of hunting ghost performance problems with your DevOps groups. diff --git a/content/events/2017-zurich/program/thomas-philipona.md b/content/events/2017-zurich/program/thomas-philipona.md index 017cd223db1..4ea8fe3e7ef 100644 --- a/content/events/2017-zurich/program/thomas-philipona.md +++ b/content/events/2017-zurich/program/thomas-philipona.md @@ -5,7 +5,7 @@ date = "2017-02-27T15:08:14+01:00" talk_date = "" talk_start_time = "" talk_end_time = "" -title = "What devs should consider, when coding applications" +title = "What Devs Should Consider, When Coding Applications" type = "talk" speakers = ["thomas-philipona"] youtube = "" @@ -15,26 +15,26 @@ slideshare = "" slides = "" +++ -The third generation of OpenShift is built around applications running in Docker containers -and makes use of Kubernetes when it comes to orchestration and management. Accurately -exposing the underlying Docker concepts and, hence, facilitating the composition of +The third generation of OpenShift is built around applications running in Docker containers +and makes use of Kubernetes when it comes to orchestration and management. Accurately +exposing the underlying Docker concepts and, hence, facilitating the composition of applications, OpenShift v3 opens up new prospects for both operations and development. -First of all, we want to discuss challenges of Docker in a production environment and +First of all, we want to discuss challenges of Docker in a production environment and brush-up how deployment and network configuration works. -Secondly, we show how OpenShift v3 integrates with Docker and how it eases much of the -burden developers used to struggle with in former PaaS environments. These alleviations -allow developers to turn toward higher-level tasks like deployment automation or container +Secondly, we show how OpenShift v3 integrates with Docker and how it eases much of the +burden developers used to struggle with in former PaaS environments. These alleviations +allow developers to turn toward higher-level tasks like deployment automation or container building. -Next, we examine different approaches to implement Continuous Delivery and showcase our -CI/CD environment at Puzzle ITC with a particular focus on Jenkins, database migrations, +Next, we examine different approaches to implement Continuous Delivery and showcase our +CI/CD environment at Puzzle ITC with a particular focus on Jenkins, database migrations, and integration testing. -Finally, we explain what it actually means to develop cloud-ready applications. There are -some rules and best practices to be followed in order for applications to leverage the -PaaS layer. One of the perspectives of the presentation is to cause awareness for this -ruleset and to demonstrate how to avoid the most common design pitfalls which will imply -collisions with PaaS concepts. We are going to talk about persistent storage, environment +Finally, we explain what it actually means to develop cloud-ready applications. There are +some rules and best practices to be followed in order for applications to leverage the +PaaS layer. One of the perspectives of the presentation is to cause awareness for this +ruleset and to demonstrate how to avoid the most common design pitfalls which will imply +collisions with PaaS concepts. We are going to talk about persistent storage, environment configuration, logging, monitoring, and some other aspects of a Twelve-Factor app. diff --git a/content/events/2017-zurich/speakers.md b/content/events/2017-zurich/speakers.md index 735e4bd8a29..ded65e856c4 100644 --- a/content/events/2017-zurich/speakers.md +++ b/content/events/2017-zurich/speakers.md @@ -1,6 +1,5 @@ +++ -date = "2017-03-03T14:40:40+01:00" -title = "speakers" +Title = "Speakers for DevOpsDays Zürich" +date = "2016-12-08T20:55:58-06:00" type = "speakers" - -+++ ++++ \ No newline at end of file diff --git a/content/events/2017-zurich/speakers/alex-lichtenberger.md b/content/events/2017-zurich/speakers/alex-lichtenberger.md new file mode 100644 index 00000000000..73f83e5fbd5 --- /dev/null +++ b/content/events/2017-zurich/speakers/alex-lichtenberger.md @@ -0,0 +1,15 @@ ++++ +Website = "" +Title = "Alex Lichtenberger" +Twitter = "a_lichtenberger" +Github = "" +date = 2017-03-15T20:37:34+01:00 +type = "speaker" +image = "alex-lichtenberger.jpg" ++++ + +Alex Lichtenberger is a DevOps enthusiast at Pontine and constantly building bridges +between Dev, Ops and business. Alex has almost 20 years of professional experience in +various areas, starting in software engineering, then moving to operations, +project management and organizational coaching. As a passionate Agile, Lean & DevOps +blogger he recently created the community platform devops.ch. diff --git a/content/events/2017-zurich/speakers/alvaro-videla.md b/content/events/2017-zurich/speakers/alvaro-videla.md new file mode 100644 index 00000000000..377661a179c --- /dev/null +++ b/content/events/2017-zurich/speakers/alvaro-videla.md @@ -0,0 +1,16 @@ ++++ +Website = "" +Title = "Alvaro Videla" +Twitter = "old_sound" +Github = "videlalvaro" +date = 2017-03-15T20:37:34+01:00 +type = "speaker" +image = "alvaro-videla.jpg" ++++ + +Alvaro Videla works as a Distributed Systems Engineer and previously was a Core Developer +for RabbitMQ. Before moving to Europe he used to work in Shanghai where he helped building +one of Germany's biggest dating websites. He co-authored the book “RabbitMQ in Action” +for Manning Publishing. Some of his open source projects can be found here: +http://github.com/videlalvaro. Apart from code related stuff he likes traveling with his +wife, listening/playing music and reading books. diff --git a/content/events/2017-zurich/speakers/beat-stutz.md b/content/events/2017-zurich/speakers/beat-stutz.md new file mode 100644 index 00000000000..85256cb84db --- /dev/null +++ b/content/events/2017-zurich/speakers/beat-stutz.md @@ -0,0 +1,10 @@ ++++ +Website = "" +Title = "Beat Stutz" +Twitter = "" +Github = "" +date = 2017-03-15T20:37:34+01:00 +type = "speaker" +image = "beat-stutz.jpg" ++++ + diff --git a/content/events/2017-zurich/speakers/charity-majors.md b/content/events/2017-zurich/speakers/charity-majors.md new file mode 100644 index 00000000000..c797aa82bed --- /dev/null +++ b/content/events/2017-zurich/speakers/charity-majors.md @@ -0,0 +1,14 @@ ++++ +Website = "" +Title = "Charity Majors" +Twitter = "mipsytipsy" +Github = "" +date = 2017-03-15T20:37:34+01:00 +type = "speaker" +image = "charity-majors.jpg" ++++ + +Charity Majors is the cofounder and CEO of honeycomb.io, a startup that helps you debug +complex systems. (“It's like strace for systems!”) Previously, Charity ran infrastructure +at Parse and was an engineering manager at Facebook. She also worked with the RocksDB team +to build and deploy the world’s first Mongo + Rocks in production. She likes single malt scotch. diff --git a/content/events/2017-zurich/speakers/chris-van-tuin.md b/content/events/2017-zurich/speakers/chris-van-tuin.md new file mode 100644 index 00000000000..68640998cf6 --- /dev/null +++ b/content/events/2017-zurich/speakers/chris-van-tuin.md @@ -0,0 +1,15 @@ ++++ +Website = "" +Title = "Chris Van Tuin" +Twitter = "" +Github = "" +date = 2017-03-15T20:37:34+01:00 +type = "speaker" +image = "chris-van-tuin.jpg" ++++ + +Chris Van Tuin, Chief Technologist at Red Hat, has over 20 years of experience in IT and +Software. + +Since joining Red Hat in 2005, Chris has been architecting solutions for strategic +customers and partners with a focus on emerging technologies. diff --git a/content/events/2017-zurich/speakers/cyrill-ruettimann.md b/content/events/2017-zurich/speakers/cyrill-ruettimann.md new file mode 100644 index 00000000000..6884e489905 --- /dev/null +++ b/content/events/2017-zurich/speakers/cyrill-ruettimann.md @@ -0,0 +1,9 @@ ++++ +Website = "" +Title = "Cyrill Rüttimann" +Twitter = "" +Github = "" +date = 2017-03-15T20:37:34+01:00 +type = "speaker" +image = "cyrill-ruettimann.jpg" ++++ diff --git a/content/events/2017-zurich/speakers/dan-reif.md b/content/events/2017-zurich/speakers/dan-reif.md new file mode 100644 index 00000000000..b91fa51a0ac --- /dev/null +++ b/content/events/2017-zurich/speakers/dan-reif.md @@ -0,0 +1,9 @@ ++++ +Website = "" +Title = "Dan Reif" +Twitter = "" +Github = "" +date = 2017-03-15T20:37:34+01:00 +type = "speaker" +image = "dan-reif.jpg" ++++ diff --git a/content/events/2017-zurich/speakers/dave-halter.md b/content/events/2017-zurich/speakers/dave-halter.md new file mode 100644 index 00000000000..29e553d4e91 --- /dev/null +++ b/content/events/2017-zurich/speakers/dave-halter.md @@ -0,0 +1,9 @@ ++++ +Website = "" +Title = "Dave Halter" +Twitter = "" +Github = "" +date = 2017-03-15T20:37:34+01:00 +type = "speaker" +image = "" ++++ diff --git a/content/events/2017-zurich/speakers/dirk-lehmann.md b/content/events/2017-zurich/speakers/dirk-lehmann.md new file mode 100644 index 00000000000..25667ad7b1c --- /dev/null +++ b/content/events/2017-zurich/speakers/dirk-lehmann.md @@ -0,0 +1,16 @@ ++++ +Website = "" +Title = "Dirk Lehmann" +Twitter = "doergn" +Github = "" +date = 2017-03-15T20:37:34+01:00 +type = "speaker" +image = "dirk-lehmann.jpg" ++++ + +I'm doing the technical operations of SAPs cloud based ride sharing solution “TwoGo by SAP”. + +I give external talks and presentations (e.g. DevOpsDays Paris 2015, Entwicklertag Karlsruhe, +Beyond Borders MeetUp -DevOps Amsterdam, Continuous Lifecycle 2015, Delivery of Things World 2016) +on Continuous Delivery and DevOps (with focus on large enterprises), as well as SAP +internal workshops on these subjects. diff --git a/content/events/2017-zurich/speakers/emanuel-kleindienst.md b/content/events/2017-zurich/speakers/emanuel-kleindienst.md new file mode 100644 index 00000000000..f22c3eb3789 --- /dev/null +++ b/content/events/2017-zurich/speakers/emanuel-kleindienst.md @@ -0,0 +1,15 @@ ++++ +Website = "" +Title = "Emanuel Kleindienst" +Twitter = "" +Github = "" +date = 2017-03-15T20:37:34+01:00 +type = "speaker" +image = "emanuel-kleindienst.jpg" ++++ + +Emanuel Kleindienst is CCO at VSHN AG. He holds an Master of Arts degree in Management and +eMBA @UCIrvine. He spent 20+ years in Swiss and international IT industry with stations +at Honeywell (Intermec), Cisco Systems, Init7 (AS13030) and Brocade Communications. +At VSHN, an Zurich based Start-up focused on managed services, DevOps and automation, +he's currently building the Sales und Marketing department. diff --git a/content/events/2017-zurich/speakers/eric-maxwell.md b/content/events/2017-zurich/speakers/eric-maxwell.md new file mode 100644 index 00000000000..91744eb4221 --- /dev/null +++ b/content/events/2017-zurich/speakers/eric-maxwell.md @@ -0,0 +1,17 @@ ++++ +Website = "" +Title = "Eric Maxwell" +Twitter = "iamericmaxwell" +Github = "" +date = 2017-03-15T20:37:34+01:00 +type = "speaker" +image = "eric-maxwell.jpg" ++++ + +Eric Maxwell is a Solutions Engineer at Chef Software and is focused on making companies +more awesome by helping them “do the DevOps” and enabling them to ship at velocity. Eric +has helped dozens of the world’s top companies adopt Chef tools and DevOps methodologies +while assisting with their DevOps transformation. Based in Portland, Oregon, USA, Eric +runs the Chef PDX meetup and is active on the speaker circuit spreading the love of DevOps. +In past lives, Eric was a back-end C# engineer, a big-data engineer, and a professional +social engineer. diff --git a/content/events/2017-zurich/speakers/hannah-foxwell.md b/content/events/2017-zurich/speakers/hannah-foxwell.md new file mode 100644 index 00000000000..896aa22214c --- /dev/null +++ b/content/events/2017-zurich/speakers/hannah-foxwell.md @@ -0,0 +1,14 @@ ++++ +Website = "" +Title = "Hannah Foxwell" +Twitter = "HannahFoxwell" +Github = "" +date = 2017-03-15T20:37:34+01:00 +type = "speaker" +image = "hannah-foxwell.jpg" ++++ + +Hannah is Product Manager at Server Density, [HumanOps](https://twitter.com/humanops) +champion, HugOps evangelist and recovering DevOps consultant. Hannah believes that the +health of your infrastructure is not just about hardware, software, automation and +uptime - It also includes the health and wellbeing of your team. diff --git a/content/events/2017-zurich/speakers/henri-dubois-ferriere.md b/content/events/2017-zurich/speakers/henri-dubois-ferriere.md new file mode 100644 index 00000000000..49b6484701d --- /dev/null +++ b/content/events/2017-zurich/speakers/henri-dubois-ferriere.md @@ -0,0 +1,13 @@ ++++ +Website = "" +Title = "Henri Dubois-Ferriere" +Twitter = "henridf" +Github = "" +date = 2017-03-15T20:37:34+01:00 +type = "speaker" +image = "henri-dubois-ferriere.jpg" ++++ + +Henri is an engineer and entrepreneur focused on infrastructure tech and products. +He is currently the founder of 12th Ave Labs, working on products for the new world of +container-defined operations. diff --git a/content/events/2017-zurich/speakers/jorge-salamero-sanz.md b/content/events/2017-zurich/speakers/jorge-salamero-sanz.md new file mode 100644 index 00000000000..a069389ca60 --- /dev/null +++ b/content/events/2017-zurich/speakers/jorge-salamero-sanz.md @@ -0,0 +1,19 @@ ++++ +Website = "" +Title = "Jorge Salamero Sanz" +Twitter = "" +Github = "" +date = 2017-03-15T20:37:34+01:00 +type = "speaker" +image = "jorge-salamero-sanz.jpg" ++++ + +Jorge co-founded Zentyal, a successful open source Exchange protocol interoperability +company. He now drives Server Density evangelism, showing potential customers and +community members best practices adopting DevOps practices and monitoring their +infrastructure. + +He enjoys monitoring all the things, writing sensors plugins and DIY projects with +Raspberry PI and Arduino. All automated with either Puppet cookbooks or Ansible playbooks. +When he is away from computers, you will find him walking with his 2 dogs across the +countryside. diff --git a/content/events/2017-zurich/speakers/maik-wojcieszak.md b/content/events/2017-zurich/speakers/maik-wojcieszak.md new file mode 100644 index 00000000000..a044065fc0d --- /dev/null +++ b/content/events/2017-zurich/speakers/maik-wojcieszak.md @@ -0,0 +1,16 @@ ++++ +Website = "" +Title = "Maik Wojcieszak" +Twitter = "" +Github = "" +date = 2017-03-15T20:37:34+01:00 +type = "speaker" +image = "maik-wojcieszak.jpg" ++++ + +Maik is writing code since he got his first computer in 1982. As co-founder and development +lead of wobe-systems, Maik and his team are inventing strategies and software for +industrial automation. To address topics like team communication, agile development, lean +management and innovation, Maik founded getNext IT as a consulting firm and works as a +lecturer at the University of Applied Sciences of Kiel. He is passionate about Lean Agile, +publishes articles and speaks at conferences about technical and organizational topics. diff --git a/content/events/2017-zurich/speakers/manuel-schweizer.md b/content/events/2017-zurich/speakers/manuel-schweizer.md new file mode 100644 index 00000000000..8cfea7aa283 --- /dev/null +++ b/content/events/2017-zurich/speakers/manuel-schweizer.md @@ -0,0 +1,12 @@ ++++ +Website = "" +Title = "Manuel Schweizer" +Twitter = "geitguet" +Github = "" +date = 2017-03-15T20:37:34+01:00 +type = "speaker" +image = "manuel-schweizer.jpg" ++++ + +Manuel Schweizer is the founder of cloudscale.ch and a member of the board at the +SwissIX Internet Exchange. diff --git a/content/events/2017-zurich/speakers/suzie-prince.md b/content/events/2017-zurich/speakers/suzie-prince.md new file mode 100644 index 00000000000..f3da09786e6 --- /dev/null +++ b/content/events/2017-zurich/speakers/suzie-prince.md @@ -0,0 +1,13 @@ ++++ +Website = "" +Title = "Suzie Prince" +Twitter = "pm_suzie" +Github = "" +date = 2017-03-15T20:37:34+01:00 +type = "speaker" +image = "suzie-prince.jpg" ++++ + +Suzie is Head of Product, ThoughtWorks Products and has over ten years of experience in +designing, building, and delivering software for large and small organizations in a +variety of domains. diff --git a/content/events/2017-zurich/speakers/tharmes-siva.md b/content/events/2017-zurich/speakers/tharmes-siva.md new file mode 100644 index 00000000000..7b9b2093c8c --- /dev/null +++ b/content/events/2017-zurich/speakers/tharmes-siva.md @@ -0,0 +1,16 @@ ++++ +Website = "" +Title = "Tharmes Siva" +Twitter = "" +Github = "" +date = 2017-03-15T20:37:34+01:00 +type = "speaker" +image = "tharmes-siva.jpg" ++++ + +Tharmes Siva is a Solutions Engineer at Riverbed the Application Performance Company. +Throughout his career in the IT for over 12 years(HPE, Dell EMC, Credit Suisse, Medi24) +he is clear about one topic, being key for success “Application Performance = Business Performance”. + +Devops is a team sport and part of it. In the free time, he enjoys discovering the World +and doing sports. diff --git a/content/events/2017-zurich/speakers/thomas-philipona.md b/content/events/2017-zurich/speakers/thomas-philipona.md new file mode 100644 index 00000000000..31cfa8e3ff7 --- /dev/null +++ b/content/events/2017-zurich/speakers/thomas-philipona.md @@ -0,0 +1,13 @@ ++++ +Website = "" +Title = "Thomas Philipona" +Twitter = "" +Github = "" +date = 2017-03-15T20:37:34+01:00 +type = "speaker" +image = "thomas-philipona.jpg" ++++ + +Thomas Philipona is CTO and Head of Middleware & APPUiO at Puzzle ITC. He is amongst +others responsible for the continuous integration and delivery processes at Puzzle as +well for the composition of a Swiss Container Platform. diff --git a/content/events/2017-zurich/talks.md b/content/events/2017-zurich/talks.md deleted file mode 100644 index 0824528416f..00000000000 --- a/content/events/2017-zurich/talks.md +++ /dev/null @@ -1,183 +0,0 @@ -+++ -date = "2016-03-06T21:28:07-06:00" -title = "talks" -type = "event" - -+++ - -
      -
      -
      -
      Our list of already confirmed talks. More to come :)
      - A detailed agenda will be published soon...
      -
      -
      -
      - -
      -
      -

      Confirmed talks

      -
      -
      - - - - -
      -
      - - -
      -
      -
      -

      Improving Time to Market: The new speed of DevOps in a corporate environment

      - Beat Stutz - SIX -

      SIX has started the transformation to DevOps in 2015, being one of the first larger businesses in the Swiss financial sector to do so. The presentation will show the journey of one of the DevOps teams – the approach, the results and the learnings on the way from traditional “silo’ed” organization with waterfall methods to a new cross-functional, agile team, with a focus on improving speed by eliminating waste and through automation.

      -

      About our Company:
      - SIX operates a competitive infrastructure for the Swiss financial center, catering to a broad, international client base. Its four business areas provide a comprehensive range of services in the areas of securities transactions, financial information processing and cashless payment transactions."

      -
      -
      - -
      -
      -
      -

      You’re monitoring containers wrong

      - Jorge Salamero Sanz - Sysdic -

      I hate to say it, but there’s a lot of bad advice out there on how to monitor your containers in production. In this talk I hope to add some much-needed clarity on how to best monitor containers to manage the health of your applications.

      -

      My advice is built off our experience creating container monitoring solutions, and the information we’ve gotten from working with hundreds of customers deploying Docker. I’ll cover key questions like:

      -
        -
      • Why is it so hard to get visibility into Docker containers?
      • -
      • How far can you get with the Docker stats API?
      • -
      • What metrics really matter for your containerized applications?
      • -
      • How does Kubernetes improve monitoring? How does it get in the way?
      • -
      • What open source tools can help with these challenges?
      • -
      -

      In addition to this theory, I’ll get into some real examples that will ground our discussion. You’ll walk away with a new appreciation of what it takes to monitor your environment right, as well as a few ideas that you can put into practice right away.

      -
      -
      - -
      -
      -
      -

      Continuous Performance Delivery: Find and fix the things that matter

      - Tharmes Siva - Riverbed -

      Businesses want to ensure that their end users are happy so they can maximize productivity, loyalty, and profits. But poor performing applications cause serious business issues. In today’s DevOps organizations and agile environments, it is essential to ensure application performance management throughout the full application lifecycle from the End User to Infrastructure.

      -

      To achieve this, modern application performance management faces a challenge:

      -
        -
      • On one hand, it has to be extremely flexible and agile
      • -
      • On the other hand has to provide all necessary information on all transactions end-to-end in production as well as development and test environments so that people are talking the same language.
      • -
      -

      Because DevOps is about speed and iterations, we will share in this presentation a performance management philosophy which will maximize the value of Devops for high performing applications. It allows you to find and fix the things that really matter instead of hunting ghost performance problems with your DevOps groups.

      -

      Presenter:
      - Tharmes Siva Solutions Engineer, over 12 years in IT (Medi24, Credit Suisse, EMC now Riverbed)

      -

      About Tharmes:
      - I love working with leading edge technology. My specialties are in cloud computing, virtualization, focusing on technology/application integration and of course to ensure applications perform as expected, data is always available when needed. Currently, I'm with Riverbed as Solutions Engineer for Enterprise Customers in Switzerland.

      -
      -
      - -
      -
      -
      -

      Our Continuous Delivery Journey

      - Suzie Prince - Thoughtworks -

      The journey to continuous delivery (CD) is long, winding and always evolving. We thought we had achieved all we could with continuous delivery and then… something changed. We soon realized that we weren’t doing all we could to continuously deliver. Come learn from my experiences at ThoughtWorks as I talk about the lessons we have learned on our CD journey.

      -

      Attendees will leave with a set of tips to act as a guide on their journey to continuous delivery. I will start at the beginning and define CD, talk about the underlying practices and cultures you need to get started and share some tips to take home.

      -

      About Suzie Prince:
      - Suzie Prince is Head of Product for ThoughtWorks Studios building pioneering tools for software development teams. She has over ten years experience as a business analyst and product manager designing and delivering software that is valuable, usable, feasible, and desirable. On weekends, you'll find her either eating in San Francisco's Mission district or hiking in California's National Parks.

      -
      -
      - -
      -
      -
      -

      A Security State of Mind: Compliance and Vulnerability Audits for Containers

      - Chris Van Tuin - Red Hat -

      Data breaches are on the rise and placing increased pressure on Enterprise IT to protect the business. With the rise of DevOps and as hackers takes advantage of known vulnerabilities on unpatched or misconfigured systems, Enterprise IT increasingly needs to automate vulnerability management, security management, and compliance checking. OpenSCAP is an opensource tool for automatically verifying the presence of patches, checking system security configuration settings, and examining systems for signs of compromise.

      -

      In this presentation, you'll learn about:

      -
        -
      • How Containers enable DevOps, Container Technology, and the security risks with deploying containers in the enterprise
      • -
      • Security vulnerability (CVEs) and Configuration issues (CCEs) notifications and checks
      • -
      • Automating vulnerability management, security management, and compliance checking with OpenSCAP
      • -
      • Scanning online and offline Containers and Virtual Machines with OpenSCAP
      • -
      • Generating and understanding OpenSCAP audit reports
      • -
      • Customizing OpenSCAP profiles
      • -
      -

      Join Chris Van Tuin, Chief Technologist, West at Red Hat, as he walks through the inherent security risks of deploying containers in the enterprise and how OpenSCAP can help protect and secure the business.

      -
      -
      - -
      -
      -
      -

      New ways to effectively develop a DevOps culture

      - Cyrill Ruetimann - IPT -

      I was working in agile projects for more than 10 years now. But I have never been in a team reaching the hyper performance phase. Nor while working as number 2 in a start up nor in a small team embodied in a multinational global player. With DevOps, new specialists joining the team. The diversity grows and that will it not make easier to develop such a culture. Kaikaku, that’s the Japanese word for breaking off, doing experiments and implement distruptive changes if needed. That’s the recipe to develop a highly performing team or to find new ways. I had the chance to learn and implement three different methods which support such a culture. The results while applying those methods where stunning – positively. My hands-on experience with Lego Serious Play, Complex Problem Solving and Foursight have clearly shown, that it is worth to think outside the box and to left behind traditional management instruments. Culture is more important than before. To build bridges and solutions as a team is a core competence in a DevOps team. Those three methods will enrich your way to develop a DevOps culture. In my presentation, I will introduce the three methods based on real-life applications and will show you, how they can help to build bridges.

      -
      -
      - -
      -
      -
      -

      Hacking your boss for DevOps - how to convince your manager to support DevOps

      - Emanuel Kleindienst - VSHN -

      As a developer, you know you need to collaborate with the Ops-people to bring agility and DevOps to your project. But how do you explain this to your boss ? What are the other benefits your manager understands and can relate to ? Emanuel will show you different strategies to convince the bean counters in your company and brief you on the words and language they understand

      -

      About Emanuel Kleindienst:
      - Emanuel Kleindienst is CCO at VSHN AG. He holds an Master of Arts degree in Management and eMBA @UCIrvine. He spent 20+ years in Swiss and international IT industry with stations at Honeywell (Intermec), Cisco Systems, Init7 (AS13030) and Brocade Communications. At VSHN, an Zurich based Start-up focused on managed services, DevOps and automation, he's currently building the Sales und Marketing department."

      -
      -
      - -
      -
      -
      -

      DevOps and Holacracy (or alternatively: Are you a manager or a leader?)

      - Alex Lichtenberger - Pontine -

      Description: In a short ignite talk, I would like to give some inspiration what it means to work together in a devops environment:

      -
        -
      • Away from tradtitional management (command and control)
      • -
      • Towards Devops leadership: The Coach, asking the right question, creating the right environment and the self-organizing team, with a strong improvement culture towards a common vision
      • -
      • Enriched with some funny anecdotes from my past experience
      • -
      -
      -
      - -
      -
      -
      -

      Dissecting the Role-Cookbook Pattern

      - Eric Maxwell - Chef -

      Have you heard about Roles in Chef Server?
      Have you heard that “best practice” says not to use them because they’re not versionable?
      Have you been warned not to store attributes in Roles?
      What if we could have it all?
      What if we could use Roles that were versionable and were safe to store attributes in?

      -

      Well, you’re in luck — we can! Join me as we dive into the Role-Cookbook Pattern and learn that we can, indeed, have our cake and eat it too!

      -

      This is a fun and quick talk that introduces people to the role-cookbook pattern.

      -
      -
      - -
      -
      -
      -

      What We Talk About When We Talk About Distributed Systems

      - Alvaro Videla -

      Distributed Systems are a complex topic. There's abundant research about it but sometimes it is hard for a beginner to know where to start. I would like to outline the main concepts of distributed systems, so the interested person can have a clear path on how to start their own research as well. In this talk I will review the different models: asynchronous vs. synchronous distributed systems; message passing vs shared memory communication; failure detectors and leader election problems; consensus and different kinds of replication.

      -

      I will also review a series of books on distributed systems in order to recommend the best one according to the topics we would like to learn about, or the problems we would like to solve. The goal of the talk is to set a good foundation for people interested in learning more about distributed systems.

      -

      Talk objectives:

      -

      When learning about Distributed Systems there are lot of books and papers to chose from, with many of them having titles that are hard to understand. It's difficult then to judge their relevance to our interests if we don't know the topic already. The goal of the talk is to lay a common ground for Distributed Systems so everyone can benefit from the current research on the topic.

      -

      Target audience:

      -

      Engineers interested in getting started with Distributed Systems.

      -

      Bio:
      Alvaro Videla works as a Distributed Systems Engineer and previously was a Core Developer for RabbitMQ. Before moving to Europe he used to work in Shanghai where he helped building one of Germany biggest dating websites. He co-authored the book ""RabbitMQ in Action"" for Manning Publishing. Some of his open source projects can be found here: http://github.com/videlalvaro. Apart from code related stuff he likes traveling with his wife, listening/playing music and reading books. You can find him on Twitter as @old_sound.

      -
      -
      - -
      -
      -
      -

      Massively Distributed Backups at Facebook Scale

      - Dan Reif - Facebook -

      MySQL is at the core of Facebook's persistent storage. The graph itself, including every like, comment, post and status, is stored in MySQL, along with many other things. This data is the company's most important asset, and we take great care to make sure everything is properly backed up. Yes, even the lolcats and puppy picture posts. Everything!

      -

      As you can imagine, backing up this behemoth of a dataset is quite a challenge. The backup system Facebook runs for MySQL is multi-tiered and massively distributed. We employ binary log, full, and differential backups and clever hacks to balance speed, space and reliability.

      -

      In this talk you'll learn how we backup Facebook, every single day. We'll go over the design, engineering and operational challenges we've had to overcome, and wrap up with some fun war stories.

      -

      DevOps Relevance: At the core of DevOps is monitoring and orchestration. The talk is not built as a polished set-piece, but instead as a series of improvements (and snags we hit along the way). The overall theme is one of managing complexity via code rather than with more humans.

      -
      -
      - - -
      -
      diff --git a/content/events/2017-zurich/welcome.md b/content/events/2017-zurich/welcome.md index 36f66e50a0a..99e7098e09b 100644 --- a/content/events/2017-zurich/welcome.md +++ b/content/events/2017-zurich/welcome.md @@ -83,6 +83,6 @@ aliases = ["/events/2017-zurich"]
      {{< event_link page="contact" text="Get in touch with the organizers" >}}
      - {{< event_twitter devopszh >}} + {{< event_twitter >}}
      diff --git a/content/page/events.md b/content/page/events.md index dbb3ad2ba47..5f28f8d2321 100644 --- a/content/page/events.md +++ b/content/page/events.md @@ -1,8 +1,8 @@ +++ date = "2015-11-29T00:00:00-06:00" title = "devopsdays events" -type = "events-list" -aliases = ["/calendar", "/events/calendar", "/devops-calendar", "/presentations"] +type = "events" +aliases = ["/calendar", "/events/calendar", "/devops-calendar", "/presentations", "/past"] +++ diff --git a/content/page/organizing.md b/content/page/organizing.md index 09ce5c5eaef..d9e6c7882b3 100644 --- a/content/page/organizing.md +++ b/content/page/organizing.md @@ -26,7 +26,7 @@ In the devops spirit of collaboration, find people in your region that want to h - Tweet that you'd be interested in running one in your region. (Use the #devopsdays hashtag.) - [Email the global core organizers](mailto:info@devopsdays.org) and we'll try to connect you to other people in your region -You're going to need people from different organizations on your local organizing team, so you have a broader base of support and involvement from the community. +You're going to need people from different organizations on your local organizing team, so you have a broader base of support and involvement from the community. We aren't going to green-light events put on by just one company, and you'll want the organizers from the relevant local meetups on board. Make sure everyone understands this is not about lead generation; organizers cannot use contact info from the event for their own companies. --- diff --git a/content/page/speaking/speaking.md b/content/speaking/speaking.md similarity index 95% rename from content/page/speaking/speaking.md rename to content/speaking/speaking.md index 80412346d9b..7f0a600d338 100644 --- a/content/page/speaking/speaking.md +++ b/content/speaking/speaking.md @@ -4,7 +4,7 @@ Description = "" Tags = [] Date = "2017-01-31T13:04:25-05:00" Title = "Speaking at devopsdays" -type = "cfp" +type = "speaking" +++ diff --git a/data/events/2010-brazil.yml b/data/events/2010-brazil.yml index a0f17d91af4..1857596b53d 100644 --- a/data/events/2010-brazil.yml +++ b/data/events/2010-brazil.yml @@ -19,7 +19,7 @@ location: "brazil" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: location - name: contact diff --git a/data/events/2010-europe.yml b/data/events/2010-europe.yml index 8d266f8bed8..e3dfaf608b8 100644 --- a/data/events/2010-europe.yml +++ b/data/events/2010-europe.yml @@ -19,7 +19,7 @@ location: "europe" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: lightning talks url: events/2010-europe/lightning-talks # The url setting is optional, and only if you want the navigation to link off-site diff --git a/data/events/2010-sydney.yml b/data/events/2010-sydney.yml index 1128373e4a6..cf78fd774e7 100644 --- a/data/events/2010-sydney.yml +++ b/data/events/2010-sydney.yml @@ -19,7 +19,7 @@ location: "Sydney" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + # - name: program # - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site diff --git a/data/events/2010-us.yml b/data/events/2010-us.yml index a8fddcc2cc8..725b02c1777 100644 --- a/data/events/2010-us.yml +++ b/data/events/2010-us.yml @@ -19,7 +19,7 @@ location: "us" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: lightning talks url: events/2010-us/lightning-talks diff --git a/data/events/2011-bangalore.yml b/data/events/2011-bangalore.yml index 7d98ed4be7f..c71c40e7b5b 100644 --- a/data/events/2011-bangalore.yml +++ b/data/events/2011-bangalore.yml @@ -19,7 +19,7 @@ location: "Bangalore" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: location - name: contact diff --git a/data/events/2011-boston.yml b/data/events/2011-boston.yml index be513410058..0dc6abb5f85 100644 --- a/data/events/2011-boston.yml +++ b/data/events/2011-boston.yml @@ -19,7 +19,7 @@ location: "Boston" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program # - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site diff --git a/data/events/2011-goteborg.yml b/data/events/2011-goteborg.yml index 2defa1573b3..beef618aed4 100644 --- a/data/events/2011-goteborg.yml +++ b/data/events/2011-goteborg.yml @@ -19,7 +19,7 @@ location: "goteborg" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program # - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site diff --git a/data/events/2011-manila.yml b/data/events/2011-manila.yml index 241e341b029..ad340765f0c 100644 --- a/data/events/2011-manila.yml +++ b/data/events/2011-manila.yml @@ -19,7 +19,7 @@ location: "Manila" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program # - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site diff --git a/data/events/2011-melbourne.yml b/data/events/2011-melbourne.yml index 62820bfb91c..a49f7d2f8ec 100644 --- a/data/events/2011-melbourne.yml +++ b/data/events/2011-melbourne.yml @@ -19,7 +19,7 @@ location: "Melbourne" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + # - name: program # - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site diff --git a/data/events/2011-mountainview.yml b/data/events/2011-mountainview.yml index 3f0e7a3f7d4..b9ef8d9bc57 100644 --- a/data/events/2011-mountainview.yml +++ b/data/events/2011-mountainview.yml @@ -19,7 +19,7 @@ location: "mountainview" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program # - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site diff --git a/data/events/2012-austin.yml b/data/events/2012-austin.yml index 54e17d90411..5b1da4ce3fa 100644 --- a/data/events/2012-austin.yml +++ b/data/events/2012-austin.yml @@ -19,7 +19,7 @@ location: "Austin" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program # - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site diff --git a/data/events/2012-india.yml b/data/events/2012-india.yml index bfdf96b2b06..083d4e1f13c 100644 --- a/data/events/2012-india.yml +++ b/data/events/2012-india.yml @@ -19,7 +19,7 @@ location: "india" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program # - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site diff --git a/data/events/2012-italy.yml b/data/events/2012-italy.yml index e8fe7b1a368..c7409e3218a 100644 --- a/data/events/2012-italy.yml +++ b/data/events/2012-italy.yml @@ -19,7 +19,7 @@ location: "italy" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program # - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site diff --git a/data/events/2012-mountainview.yml b/data/events/2012-mountainview.yml index e16fba742a3..37879312575 100644 --- a/data/events/2012-mountainview.yml +++ b/data/events/2012-mountainview.yml @@ -19,7 +19,7 @@ location: "mountainview" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program # - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site diff --git a/data/events/2012-newyork.yml b/data/events/2012-newyork.yml index 0ca9e8415fa..188a030e652 100644 --- a/data/events/2012-newyork.yml +++ b/data/events/2012-newyork.yml @@ -19,7 +19,7 @@ location: "newyork" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program # - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site diff --git a/data/events/2012-tokyo.yml b/data/events/2012-tokyo.yml index d12fdc236ad..eefea90be7c 100644 --- a/data/events/2012-tokyo.yml +++ b/data/events/2012-tokyo.yml @@ -19,7 +19,7 @@ location: "Tokyo" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program # - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site diff --git a/data/events/2013-amsterdam.yml b/data/events/2013-amsterdam.yml index 4ac0fdc6f95..36277b05107 100644 --- a/data/events/2013-amsterdam.yml +++ b/data/events/2013-amsterdam.yml @@ -19,7 +19,7 @@ location: "Amsterdam" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program # - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site diff --git a/data/events/2013-atlanta.yml b/data/events/2013-atlanta.yml index 555f317c7e8..acc0ddcc3ab 100644 --- a/data/events/2013-atlanta.yml +++ b/data/events/2013-atlanta.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2013-austin.yml b/data/events/2013-austin.yml index 7700323f14f..2cfe49feb40 100644 --- a/data/events/2013-austin.yml +++ b/data/events/2013-austin.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2013-barcelona.yml b/data/events/2013-barcelona.yml index 4dcdf76235b..31748ad0f36 100644 --- a/data/events/2013-barcelona.yml +++ b/data/events/2013-barcelona.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2013-berlin.yml b/data/events/2013-berlin.yml index a1a878d0c41..2f18d5fa0cc 100644 --- a/data/events/2013-berlin.yml +++ b/data/events/2013-berlin.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2013-downunder.yml b/data/events/2013-downunder.yml index 4751387ac79..bc028464d81 100644 --- a/data/events/2013-downunder.yml +++ b/data/events/2013-downunder.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2013-india.yml b/data/events/2013-india.yml index 4aac4a291ac..1c127cc689b 100644 --- a/data/events/2013-india.yml +++ b/data/events/2013-india.yml @@ -19,7 +19,7 @@ location: "Bangalore" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program # - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site diff --git a/data/events/2013-london-spring.yml b/data/events/2013-london-spring.yml index 033be1ff558..f5100ec97ff 100644 --- a/data/events/2013-london-spring.yml +++ b/data/events/2013-london-spring.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2013-london.yml b/data/events/2013-london.yml index 5b00f2f4674..48f63c2a9d8 100644 --- a/data/events/2013-london.yml +++ b/data/events/2013-london.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2013-mountainview.yml b/data/events/2013-mountainview.yml index c491adc63d8..f092ac6998b 100644 --- a/data/events/2013-mountainview.yml +++ b/data/events/2013-mountainview.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2013-newyork.yml b/data/events/2013-newyork.yml index 8e8d6e009d7..9cbc474901d 100644 --- a/data/events/2013-newyork.yml +++ b/data/events/2013-newyork.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2013-newzealand.yml b/data/events/2013-newzealand.yml index c7c8f56578c..68cd77329e0 100644 --- a/data/events/2013-newzealand.yml +++ b/data/events/2013-newzealand.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2013-paris.yml b/data/events/2013-paris.yml index 7c18a3ea2ac..031afb81c1e 100644 --- a/data/events/2013-paris.yml +++ b/data/events/2013-paris.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2013-portland.yml b/data/events/2013-portland.yml index 2d03ed983e9..4ea2abf8b76 100644 --- a/data/events/2013-portland.yml +++ b/data/events/2013-portland.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2013-telaviv.yml b/data/events/2013-telaviv.yml index 85acf7b258f..5d28ac2481f 100644 --- a/data/events/2013-telaviv.yml +++ b/data/events/2013-telaviv.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2013-tokyo.yml b/data/events/2013-tokyo.yml index 647b5b674cd..7b6c060d1f3 100644 --- a/data/events/2013-tokyo.yml +++ b/data/events/2013-tokyo.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2013-vancouver.yml b/data/events/2013-vancouver.yml index 0ec54f87765..8a74806aa9e 100644 --- a/data/events/2013-vancouver.yml +++ b/data/events/2013-vancouver.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2014-amsterdam.yml b/data/events/2014-amsterdam.yml index 6bf0e681c49..cf3857c92b4 100644 --- a/data/events/2014-amsterdam.yml +++ b/data/events/2014-amsterdam.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2014-austin.yml b/data/events/2014-austin.yml index ca156f8561e..51f20e464f8 100644 --- a/data/events/2014-austin.yml +++ b/data/events/2014-austin.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2014-bangalore.yml b/data/events/2014-bangalore.yml index 15f41445b70..485b0da0d53 100644 --- a/data/events/2014-bangalore.yml +++ b/data/events/2014-bangalore.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2014-belgium.yml b/data/events/2014-belgium.yml index 62c127cf66b..8588fffaba9 100644 --- a/data/events/2014-belgium.yml +++ b/data/events/2014-belgium.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2014-berlin.yml b/data/events/2014-berlin.yml index 8b4c6cbdfa4..293b0baf94f 100644 --- a/data/events/2014-berlin.yml +++ b/data/events/2014-berlin.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2014-boston.yml b/data/events/2014-boston.yml index d4df081b820..4972d617867 100644 --- a/data/events/2014-boston.yml +++ b/data/events/2014-boston.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2014-brisbane.yml b/data/events/2014-brisbane.yml index 551e694fdfc..4616907d51f 100644 --- a/data/events/2014-brisbane.yml +++ b/data/events/2014-brisbane.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2014-chicago.yml b/data/events/2014-chicago.yml index 518aefea7c6..e11514bb093 100644 --- a/data/events/2014-chicago.yml +++ b/data/events/2014-chicago.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2014-helsinki.yml b/data/events/2014-helsinki.yml index d2941ea201a..471f498b547 100644 --- a/data/events/2014-helsinki.yml +++ b/data/events/2014-helsinki.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2014-ljubljana.yml b/data/events/2014-ljubljana.yml index 417591c8f0e..41ec7073f51 100644 --- a/data/events/2014-ljubljana.yml +++ b/data/events/2014-ljubljana.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2014-minneapolis.yml b/data/events/2014-minneapolis.yml index 9cd5ee826d5..bd4b45ddc8d 100644 --- a/data/events/2014-minneapolis.yml +++ b/data/events/2014-minneapolis.yml @@ -19,7 +19,7 @@ location: "Minneapolis" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: location - name: registration diff --git a/data/events/2014-nairobi.yml b/data/events/2014-nairobi.yml index 3173e0cf9e0..d1c38f162c3 100644 --- a/data/events/2014-nairobi.yml +++ b/data/events/2014-nairobi.yml @@ -19,7 +19,7 @@ location: "Nairobi" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + # - name: program # - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site diff --git a/data/events/2014-newyork.yml b/data/events/2014-newyork.yml index aa6f9ec8ee0..c0617899909 100644 --- a/data/events/2014-newyork.yml +++ b/data/events/2014-newyork.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2014-pittsburgh.yml b/data/events/2014-pittsburgh.yml index 20d4aec56d6..b9dc72ccf54 100644 --- a/data/events/2014-pittsburgh.yml +++ b/data/events/2014-pittsburgh.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2014-siliconvalley.yml b/data/events/2014-siliconvalley.yml index 1db8570ba30..383a94b39aa 100644 --- a/data/events/2014-siliconvalley.yml +++ b/data/events/2014-siliconvalley.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2014-telaviv.yml b/data/events/2014-telaviv.yml index 413fd6fc3d6..70c7471a968 100644 --- a/data/events/2014-telaviv.yml +++ b/data/events/2014-telaviv.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2014-toronto.yml b/data/events/2014-toronto.yml index f36d93bf126..9c8950937bd 100644 --- a/data/events/2014-toronto.yml +++ b/data/events/2014-toronto.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2014-vancouver.yml b/data/events/2014-vancouver.yml index e387f4f21b9..6052538f4e2 100644 --- a/data/events/2014-vancouver.yml +++ b/data/events/2014-vancouver.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2014-warsaw.yml b/data/events/2014-warsaw.yml index 21cae8e6de5..0e535f5e46b 100644 --- a/data/events/2014-warsaw.yml +++ b/data/events/2014-warsaw.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2015-amsterdam.yml b/data/events/2015-amsterdam.yml index a6df7c596d4..3980a12dae3 100644 --- a/data/events/2015-amsterdam.yml +++ b/data/events/2015-amsterdam.yml @@ -19,7 +19,7 @@ location: "Amsterdam" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program # - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site diff --git a/data/events/2015-austin.yml b/data/events/2015-austin.yml index 7e9d52a1055..8de030673d5 100644 --- a/data/events/2015-austin.yml +++ b/data/events/2015-austin.yml @@ -19,7 +19,7 @@ location: "Austin" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program # - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site diff --git a/data/events/2015-bangalore.yml b/data/events/2015-bangalore.yml index 1c801843c89..ab05985470c 100644 --- a/data/events/2015-bangalore.yml +++ b/data/events/2015-bangalore.yml @@ -19,7 +19,7 @@ location: "Bangalore" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program # - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site diff --git a/data/events/2015-berlin.yml b/data/events/2015-berlin.yml index 2aa04571f9d..8fc633bb5ad 100644 --- a/data/events/2015-berlin.yml +++ b/data/events/2015-berlin.yml @@ -19,7 +19,7 @@ location: "Berlin" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site diff --git a/data/events/2015-boston.yml b/data/events/2015-boston.yml index efe9c4824ef..696460dea90 100644 --- a/data/events/2015-boston.yml +++ b/data/events/2015-boston.yml @@ -19,7 +19,7 @@ location: "Boston" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program # - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site diff --git a/data/events/2015-charlotte.yml b/data/events/2015-charlotte.yml index 252c5f2cbeb..f5d88612efb 100644 --- a/data/events/2015-charlotte.yml +++ b/data/events/2015-charlotte.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2015-chicago.yml b/data/events/2015-chicago.yml index 8afde9afa43..9c54bccfb5e 100644 --- a/data/events/2015-chicago.yml +++ b/data/events/2015-chicago.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2015-denver.yml b/data/events/2015-denver.yml index 1122b44ec91..82153effd89 100644 --- a/data/events/2015-denver.yml +++ b/data/events/2015-denver.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2015-detroit.yml b/data/events/2015-detroit.yml index 6448c1528dc..7343375f7d5 100644 --- a/data/events/2015-detroit.yml +++ b/data/events/2015-detroit.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2015-ljubljana.yml b/data/events/2015-ljubljana.yml index c6dd8c878b2..86e4cb3e6ae 100644 --- a/data/events/2015-ljubljana.yml +++ b/data/events/2015-ljubljana.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2015-melbourne.yml b/data/events/2015-melbourne.yml index dc0e32b6c9b..e988e3b5660 100644 --- a/data/events/2015-melbourne.yml +++ b/data/events/2015-melbourne.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2015-minneapolis.yml b/data/events/2015-minneapolis.yml index bfb3fdf9962..c6fa942883a 100644 --- a/data/events/2015-minneapolis.yml +++ b/data/events/2015-minneapolis.yml @@ -19,7 +19,7 @@ location: "Minneapolis" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: location - name: registration diff --git a/data/events/2015-newyork.yml b/data/events/2015-newyork.yml index 7c734568ed3..104632cfda3 100644 --- a/data/events/2015-newyork.yml +++ b/data/events/2015-newyork.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2015-ohio.yml b/data/events/2015-ohio.yml index 6af191c43e2..583a344ccbe 100644 --- a/data/events/2015-ohio.yml +++ b/data/events/2015-ohio.yml @@ -19,7 +19,7 @@ location: "Ohio" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: location - name: sponsor - name: program diff --git a/data/events/2015-paris.yml b/data/events/2015-paris.yml index 98d6ac4d3f9..5415d40fc5e 100644 --- a/data/events/2015-paris.yml +++ b/data/events/2015-paris.yml @@ -19,7 +19,7 @@ location: "Paris" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + # - name: program # - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site diff --git a/data/events/2015-pittsburgh.yml b/data/events/2015-pittsburgh.yml index fda2610de1f..511a9dde125 100644 --- a/data/events/2015-pittsburgh.yml +++ b/data/events/2015-pittsburgh.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2015-siliconvalley.yml b/data/events/2015-siliconvalley.yml index 9f8156b9c27..9a9e9bad0fe 100644 --- a/data/events/2015-siliconvalley.yml +++ b/data/events/2015-siliconvalley.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2015-singapore.yml b/data/events/2015-singapore.yml index db7d84436e5..a0c049902e0 100644 --- a/data/events/2015-singapore.yml +++ b/data/events/2015-singapore.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2015-telaviv.yml b/data/events/2015-telaviv.yml index b8bb84c6d0f..966b14febde 100644 --- a/data/events/2015-telaviv.yml +++ b/data/events/2015-telaviv.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2015-toronto.yml b/data/events/2015-toronto.yml index f0da3254bdb..2b46897e35b 100644 --- a/data/events/2015-toronto.yml +++ b/data/events/2015-toronto.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2015-warsaw.yml b/data/events/2015-warsaw.yml index 410729d4b80..e8219da6c70 100644 --- a/data/events/2015-warsaw.yml +++ b/data/events/2015-warsaw.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2015-washington-dc.yml b/data/events/2015-washington-dc.yml index 8c0f8d4c900..1bf40771611 100644 --- a/data/events/2015-washington-dc.yml +++ b/data/events/2015-washington-dc.yml @@ -19,7 +19,7 @@ location: "yourlocation" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2016-amsterdam.yml b/data/events/2016-amsterdam.yml index d09e01b4a78..e8c6153affc 100644 --- a/data/events/2016-amsterdam.yml +++ b/data/events/2016-amsterdam.yml @@ -112,7 +112,7 @@ sponsor_levels: label: Community nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: workshops # - name: propose diff --git a/data/events/2016-atlanta.yml b/data/events/2016-atlanta.yml index 65cd88b4a40..21ec6cd4ab8 100644 --- a/data/events/2016-atlanta.yml +++ b/data/events/2016-atlanta.yml @@ -13,7 +13,7 @@ location: "Georgia Tech Historic Academy of Medicine" # The name of your locatio nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: location - name: program - name: registration diff --git a/data/events/2016-austin.yml b/data/events/2016-austin.yml index 98720ade8b2..43e4f0b212b 100644 --- a/data/events/2016-austin.yml +++ b/data/events/2016-austin.yml @@ -12,7 +12,7 @@ coordinates: "30.2500, -97.7500" # The corrodinates of your venue. Get Latitude location: "Austin" # The name of your location nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: sponsor - name: contact - name: conduct diff --git a/data/events/2016-bangalore.yml b/data/events/2016-bangalore.yml index 0195a4433a3..41965ec21db 100644 --- a/data/events/2016-bangalore.yml +++ b/data/events/2016-bangalore.yml @@ -19,7 +19,7 @@ location: "Bangalore" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: propose # - name: program - name: devopsdaysindia.org diff --git a/data/events/2016-berlin.yml b/data/events/2016-berlin.yml index b6810f93e6d..16aef947645 100644 --- a/data/events/2016-berlin.yml +++ b/data/events/2016-berlin.yml @@ -12,7 +12,7 @@ coordinates: "52.524332,13.389849" # The corrodinates of your venue. Get Latitud location: "Kalkscheune Berlin" # The name of your location nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: speakers - name: program - name: location diff --git a/data/events/2016-boise.yml b/data/events/2016-boise.yml index 4f9c92af479..83969a0f277 100644 --- a/data/events/2016-boise.yml +++ b/data/events/2016-boise.yml @@ -19,7 +19,7 @@ location: "Boise Centre" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program # - name: propose - name: speakers diff --git a/data/events/2016-boston.yml b/data/events/2016-boston.yml index 0cc8a813bf9..a82dbe16da7 100644 --- a/data/events/2016-boston.yml +++ b/data/events/2016-boston.yml @@ -19,7 +19,7 @@ location: "Boston Park Plaza" # Defaults to city, but you can make it the venue # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + # - name: propose - name: program - name: speakers diff --git a/data/events/2016-brasilia.yml b/data/events/2016-brasilia.yml index 5855500bcf0..5f62ed1c01c 100644 --- a/data/events/2016-brasilia.yml +++ b/data/events/2016-brasilia.yml @@ -20,7 +20,7 @@ location: "Brasília/DF, Brazil" # Defaults to city, but you can make it the ven # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: speakers # - name: propose diff --git a/data/events/2016-capetown.yml b/data/events/2016-capetown.yml index b4ea619f2c6..9c100cf11ac 100644 --- a/data/events/2016-capetown.yml +++ b/data/events/2016-capetown.yml @@ -19,7 +19,7 @@ location: "Hilton Doubletree, Woodstock, Cape Town" # Defaults to city, but you # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: speakers - name: propose diff --git a/data/events/2016-chicago.yml b/data/events/2016-chicago.yml index a44299fee19..97aec85cd38 100644 --- a/data/events/2016-chicago.yml +++ b/data/events/2016-chicago.yml @@ -13,7 +13,7 @@ location: "Summit West" newnav: "yes" # navigationelements: ["welcome", "contact", "location", "program", "propose", "proposals", "conduct", "sponsor"] nav_elements: - - name: welcome + # - name: propose # url: http://cfp.devopsdayschi.org - name: program diff --git a/data/events/2016-cuba.yml b/data/events/2016-cuba.yml index 9c592864969..533e07f2b95 100644 --- a/data/events/2016-cuba.yml +++ b/data/events/2016-cuba.yml @@ -19,7 +19,7 @@ location: "Universidad de las Ciencias Informáticas" # Defaults to city, but yo # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + # - name: offical website # url: https://devopsdayscuba.eventos.uci.cu/ # - name: program diff --git a/data/events/2016-dallas.yml b/data/events/2016-dallas.yml index 237be3b7e69..cd541a32a90 100644 --- a/data/events/2016-dallas.yml +++ b/data/events/2016-dallas.yml @@ -12,7 +12,7 @@ coordinates: "32.7767, -96.7970" # The corrodinates of your venue. Get Latitude location: "Grapevine Convention Center, 1209 S. Main Street, Grapevine, TX 76051" # The name of your location nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: contact - name: location - name: program diff --git a/data/events/2016-denver.yml b/data/events/2016-denver.yml index d09e4cca130..a4011669f9b 100644 --- a/data/events/2016-denver.yml +++ b/data/events/2016-denver.yml @@ -12,7 +12,7 @@ coordinates: "39.739236, -104.990251" # The corrodinates of your venue. Get Lati location: "Denver" # The name of your location nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: contact - name: sponsor - name: speakers diff --git a/data/events/2016-detroit.yml b/data/events/2016-detroit.yml index 63750d6dd70..6669d880adc 100644 --- a/data/events/2016-detroit.yml +++ b/data/events/2016-detroit.yml @@ -12,7 +12,7 @@ coordinates: "42.331034, -83.046382" # The corrodinates of your venue. Get Latit location: " A. Alfred Taubman Center for Design Education, College for Creative Studies" # The name of your location nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: contact - name: location - name: registration diff --git a/data/events/2016-ghent.yml b/data/events/2016-ghent.yml index b6263678c99..a570918bcf4 100644 --- a/data/events/2016-ghent.yml +++ b/data/events/2016-ghent.yml @@ -19,7 +19,7 @@ location: "Zebrastraat" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program # - name: propose - name: speakers diff --git a/data/events/2016-istanbul.yml b/data/events/2016-istanbul.yml index 0cf7ad59aa1..dd3511d0777 100644 --- a/data/events/2016-istanbul.yml +++ b/data/events/2016-istanbul.yml @@ -12,7 +12,7 @@ coordinates: "41.110065,29.041329" # The corrodinates of your venue. Get Latitud location: "Borsa İstanbul Conference Room" # The name of your location nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: location - name: program - name: propose diff --git a/data/events/2016-kansascity.yml b/data/events/2016-kansascity.yml index 603363053fb..63cdd3f5bd8 100644 --- a/data/events/2016-kansascity.yml +++ b/data/events/2016-kansascity.yml @@ -19,7 +19,7 @@ location: "Musical Theater Heritage" # Defaults to city, but you can make it the # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: speakers - name: location diff --git a/data/events/2016-kiel.yml b/data/events/2016-kiel.yml index 642d0b63f28..aafd2c01cac 100644 --- a/data/events/2016-kiel.yml +++ b/data/events/2016-kiel.yml @@ -8,7 +8,7 @@ enddate: 2016-05-13 coordinates: "54.3233, 10.1228" nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: location - name: registration diff --git a/data/events/2016-london.yml b/data/events/2016-london.yml index 43456aeb76d..ab7056b7bec 100644 --- a/data/events/2016-london.yml +++ b/data/events/2016-london.yml @@ -13,7 +13,7 @@ location: "location" # The name of your location nav_elements: - - name: welcome + - name: program - name: hackathon - name: presenters diff --git a/data/events/2016-losangeles-1day.yml b/data/events/2016-losangeles-1day.yml index 897a407c652..2fbfae8cbe6 100644 --- a/data/events/2016-losangeles-1day.yml +++ b/data/events/2016-losangeles-1day.yml @@ -19,7 +19,7 @@ location: "Los Angeles" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: propose - name: program - name: location diff --git a/data/events/2016-madison.yml b/data/events/2016-madison.yml index b86946403f4..5ca779013bf 100644 --- a/data/events/2016-madison.yml +++ b/data/events/2016-madison.yml @@ -19,7 +19,7 @@ location: "Overture Center for the Arts" # Defaults to city, but you can make it # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: speakers # - name: propose diff --git a/data/events/2016-minneapolis.yml b/data/events/2016-minneapolis.yml index 0a3b3d8e1e9..e09bf63fd4b 100644 --- a/data/events/2016-minneapolis.yml +++ b/data/events/2016-minneapolis.yml @@ -12,7 +12,7 @@ coordinates: "44.972610,-93.272960" # The corrodinates of your venue. Get Latitu location: "Downtown Minneapolis Hilton" # The name of your location nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: speakers - name: location diff --git a/data/events/2016-nashville.yml b/data/events/2016-nashville.yml index e6456cacbe3..cd8ae99c8b1 100644 --- a/data/events/2016-nashville.yml +++ b/data/events/2016-nashville.yml @@ -12,7 +12,7 @@ coordinates: "36.160606, -86.7746752" # The corrodinates of your venue. Get Lati location: "aVenue" # The name of your location nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: registration url: https://www.eventbrite.com/e/devopsdays-nashville-2016-tickets-23942633060 - name: location diff --git a/data/events/2016-newyork.yml b/data/events/2016-newyork.yml index a9baa36eee8..aa15229fd20 100644 --- a/data/events/2016-newyork.yml +++ b/data/events/2016-newyork.yml @@ -12,7 +12,7 @@ coordinates: "40.7127, -74.0059" # The coordinates of your venue. Get Latitude a location: "Microsoft Technology Center" # The name of your location nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: contact - name: location - name: speakers diff --git a/data/events/2016-newzealand.yml b/data/events/2016-newzealand.yml index e2d1f1ef632..2b2735d2c49 100644 --- a/data/events/2016-newzealand.yml +++ b/data/events/2016-newzealand.yml @@ -19,7 +19,7 @@ location: "BNZ Harbour Quays, 60 Waterloo Quay, Wellington" # Defaults to city, # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + # - name: propose # url: https://www.papercall.io/devopsdays-wellington # The url setting is optional, and only if you want the navigation to link off-site - name: location diff --git a/data/events/2016-ohio.yml b/data/events/2016-ohio.yml index dcabbf6d13d..d65c266d477 100644 --- a/data/events/2016-ohio.yml +++ b/data/events/2016-ohio.yml @@ -12,7 +12,7 @@ coordinates: "40.038877, -82.874830" # The corrodinates of your venue. Get Latit location: "Shadow Box" # The name of your location #navigationelements: ["welcome", "contact", "location", "program", "propose", "proposals", "registration", "conduct", "sponsor"] # List of pages you want to show up in the navigation of your page. Remove any that aren't relevent yet. nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: videos url: "https://www.youtube.com/channel/UCUOAwmKgK1frEKoa-KOrYxg" - name: contact diff --git a/data/events/2016-oslo.yml b/data/events/2016-oslo.yml index 81d0a87d64b..05ffb5d940f 100644 --- a/data/events/2016-oslo.yml +++ b/data/events/2016-oslo.yml @@ -19,7 +19,7 @@ location: "Gamle Museet / The Old Museum" # Defaults to city, but you can make i # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: speakers - name: propose diff --git a/data/events/2016-paris.yml b/data/events/2016-paris.yml index 46aa309c0ed..74ade7dca5d 100644 --- a/data/events/2016-paris.yml +++ b/data/events/2016-paris.yml @@ -18,7 +18,7 @@ location: "Le Grand Rex" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + # - name: program # - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site diff --git a/data/events/2016-philadelphia.yml b/data/events/2016-philadelphia.yml index 6443763c71c..531a28e2c19 100644 --- a/data/events/2016-philadelphia.yml +++ b/data/events/2016-philadelphia.yml @@ -12,7 +12,7 @@ coordinates: "39.9500, -75.1667" # The corrodinates of your venue. Get Latitude location: "Chemical Heritage Foundation" # The name of your location nav_elements: - - name: welcome + - name: contact - name: program - name: speakers diff --git a/data/events/2016-portland.yml b/data/events/2016-portland.yml index 0e76293fa65..355f1c3d57e 100644 --- a/data/events/2016-portland.yml +++ b/data/events/2016-portland.yml @@ -11,7 +11,7 @@ cfp_date_announce: 2016-07-01 coordinates: "45.528562, -122.663028" # The corrodinates of your venue. Get Latitude and Longitude of a Point: http://itouchmap.com/latlong.html location: "The Oregon Convention Center" # The name of your location nav_elements: - - name: welcome + - name: location - name: registration url: https://devopsdayspdx2016.busyconf.com/bookings/new diff --git a/data/events/2016-raleigh.yml b/data/events/2016-raleigh.yml index 6be75815ec8..036b058ad16 100644 --- a/data/events/2016-raleigh.yml +++ b/data/events/2016-raleigh.yml @@ -11,7 +11,7 @@ cfp_date_announce: 2016-07-15 coordinates: "35.779590,-78.638179" # The corrodinates of your venue. Get Latitude and Longitude of a Point: http://itouchmap.com/latlong.html location: "McKimmon Conference & Training Center" nav_elements: # List of pages you want to show up in the navigation of your page. Remove any that aren't relevent yet. - - name: welcome + - name: program - name: speakers - name: sponsor diff --git a/data/events/2016-saltlakecity.yml b/data/events/2016-saltlakecity.yml index 67a3d8b871b..5564cddef4c 100644 --- a/data/events/2016-saltlakecity.yml +++ b/data/events/2016-saltlakecity.yml @@ -12,7 +12,7 @@ coordinates: "40.7631, -111.8828" # The corrodinates of your venue. Get Latitude location: "Church and State" # The name of your location newnav: "yes" nav_elements: - - name: welcome + - name: sponsor url: http://slcdevopsdays.org/our-sponsors/ - name: contact diff --git a/data/events/2016-seattle.yml b/data/events/2016-seattle.yml index 48559a33c72..d3983b10409 100644 --- a/data/events/2016-seattle.yml +++ b/data/events/2016-seattle.yml @@ -54,7 +54,7 @@ sponsors: # List all of your sponsors here along with what level of sponsorship level: gold - id: 2016-platform9 level: silver - - id: 2016-concur + - id: concur level: silver - id: rei level: bronze @@ -80,7 +80,7 @@ sponsor_levels: # In this section, list the level of sponsorships and the label label: Community nav_elements: # List of pages you want to show up in the navigation of your page. Remove any that aren't relevent yet. - - name: welcome + - name: contact - name: location - name: program diff --git a/data/events/2016-siliconvalley.yml b/data/events/2016-siliconvalley.yml index 10b784c2afe..e350d5e2926 100644 --- a/data/events/2016-siliconvalley.yml +++ b/data/events/2016-siliconvalley.yml @@ -85,7 +85,7 @@ sponsor_levels: # In this section, list the level of sponsorships and the label label: Community nav_elements: # List of pages you want to show up in the navigation of your page. Remove any that aren't relevent yet. - - name: welcome + - name: contact - name: location - name: registration diff --git a/data/events/2016-singapore.yml b/data/events/2016-singapore.yml index b62a1ec0b82..312adefd435 100644 --- a/data/events/2016-singapore.yml +++ b/data/events/2016-singapore.yml @@ -13,7 +13,7 @@ location: "Raffles City Convention Centre, Singapore" # The name of your locatio # List of pages you want to show up in the navigation of your page. Remove any that aren't relevent yet. newnav: "yes" nav_elements: - - name: welcome + - name: speakers - name: program - name: location diff --git a/data/events/2016-sydney.yml b/data/events/2016-sydney.yml index d236cc65e8e..2f6223ff60a 100644 --- a/data/events/2016-sydney.yml +++ b/data/events/2016-sydney.yml @@ -17,7 +17,7 @@ location: "Sydney" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: speakers #- name: propose diff --git a/data/events/2016-telaviv.yml b/data/events/2016-telaviv.yml index 5e077121365..fa313eb1c49 100644 --- a/data/events/2016-telaviv.yml +++ b/data/events/2016-telaviv.yml @@ -19,7 +19,7 @@ location: "Tel Aviv Convention Center" # Defaults to city, but you can make it t # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose # url: http://goo.gl/forms/UBAWiffHptWZENGK2 # The url setting is optional, and only if you want the navigation to link off-site diff --git a/data/events/2016-toronto.yml b/data/events/2016-toronto.yml index fc91b7f998b..d162659e364 100644 --- a/data/events/2016-toronto.yml +++ b/data/events/2016-toronto.yml @@ -12,7 +12,7 @@ coordinates: "43.7000, -79.4000" # The corrodinates of your venue. Get Latitude location: "Glenn Gould Studio" # The name of your location nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: propose - name: program - name: location diff --git a/data/events/2016-vancouver.yml b/data/events/2016-vancouver.yml index 1c8a93ce1c9..a2e4c09a6f9 100644 --- a/data/events/2016-vancouver.yml +++ b/data/events/2016-vancouver.yml @@ -12,7 +12,7 @@ coordinates: "49.2827, -123.1207" # The corrodinates of your venue. Get Latitude location: "location" # The name of your location nav_elements: - - name: welcome + - name: program - name: location - name: livestream diff --git a/data/events/2016-warsaw.yml b/data/events/2016-warsaw.yml index 18650cd0023..67ef5e3f710 100644 --- a/data/events/2016-warsaw.yml +++ b/data/events/2016-warsaw.yml @@ -18,7 +18,7 @@ location: "Warsaw" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + # - name: program - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site diff --git a/data/events/2016-washington-dc.yml b/data/events/2016-washington-dc.yml index ae04470fc73..8b6bf6579da 100644 --- a/data/events/2016-washington-dc.yml +++ b/data/events/2016-washington-dc.yml @@ -12,7 +12,7 @@ coordinates: "38.8011545,-77.0659376" # The corrodinates of your venue. Get Lati location: "US Patent and Trademark Office" # The name of your location nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: register url: https://devopsdaysdc2016.busyconf.com/bookings/new # - name: propose diff --git a/data/events/2017-amsterdam.yml b/data/events/2017-amsterdam.yml index 94f218c5550..0f226fd2efe 100644 --- a/data/events/2017-amsterdam.yml +++ b/data/events/2017-amsterdam.yml @@ -25,7 +25,7 @@ organizer_email: "organizers-amsterdam-2017@devopsdays.org" # Put your organizer proposal_email: "organizers-amsterdam-2017@devopsdays.org" # Put your proposal email address here nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + # - name: program - name: propose url: https://devopsdays.typeform.com/to/hbkd2j @@ -43,7 +43,13 @@ sponsors: level: gold - id: elastic level: gold + - id: chef + level: gold # silver + - id: linkit + level: silver + - id: valtech + level: silver # bronze - id: devoteam level: bronze diff --git a/data/events/2017-atlanta.yml b/data/events/2017-atlanta.yml index ed74dc0abf1..a982fd2fbfa 100644 --- a/data/events/2017-atlanta.yml +++ b/data/events/2017-atlanta.yml @@ -14,15 +14,15 @@ cfp_date_announce: 2017-03-01 # Location # -coordinates: "41.882219, -87.640530" # The coordinates of your city. Get Latitude and Longitude of a Point: http://itouchmap.com/latlong.html +coordinates: "33.778376, -84.386701" # The coordinates of your city. Get Latitude and Longitude of a Point: http://itouchmap.com/latlong.html location: "Atlanta" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome -# - name: program - - name: propose - url: https://www.papercall.io/devopsdaysatl2017 # The url setting is optional, and only if you want the navigation to link off-site + + - name: program +# - name: propose +# url: https://www.papercall.io/devopsdaysatl2017 # The url setting is optional, and only if you want the navigation to link off-site - name: location - name: registration url: https://www.eventbrite.com/e/devopsdaysatl-2017-tickets-30968684168 @@ -58,6 +58,8 @@ sponsors: level: gold - id: chef level: gold + - id: googlecloud + level: gold - id: victorops level: silver - id: sonatype diff --git a/data/events/2017-austin.yml b/data/events/2017-austin.yml index c9fd6f99cb2..ac9d6c9281d 100644 --- a/data/events/2017-austin.yml +++ b/data/events/2017-austin.yml @@ -18,7 +18,7 @@ location: "Austin" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: sponsor - name: contact - name: conduct @@ -76,6 +76,10 @@ sponsors: level: gold - id: chef level: gold + - id: servicenow + level: gold + - id: signalsciences + level: gold - id: duo level: silver diff --git a/data/events/2017-baltimore.yml b/data/events/2017-baltimore.yml index 7430b159822..56341294f92 100644 --- a/data/events/2017-baltimore.yml +++ b/data/events/2017-baltimore.yml @@ -17,17 +17,18 @@ coordinates: "39.286400, -76.605606" # The coordinates of your city. Get Latitud location: "Baltimore" # Defaults to city, but you can make it the venue name. nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program url: http://devopsdaysbaltimore2017.busyconf.com/schedule - - name: propose - url: https://devopsdaysbaltimore2017.busyconf.com/proposals/new + #- name: propose + #url: https://devopsdaysbaltimore2017.busyconf.com/proposals/new - name: location - name: registration url: https://devopsdaysbaltimore2017.busyconf.com/bookings/new - name: sponsor - name: contact - name: conduct + - name: stream # These are the same people you have on the mailing list and Slack channel. team_members: # Name is the only required field for team members. diff --git a/data/events/2017-beijing.yml b/data/events/2017-beijing.yml index 67f152dec91..2d0e60bf628 100644 --- a/data/events/2017-beijing.yml +++ b/data/events/2017-beijing.yml @@ -19,7 +19,7 @@ location: "Sofitel Wanda Beijing hotel" # Defaults to city, but you can make it # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + # - name: program # - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site diff --git a/utilities/examples/yyyy-city.yml b/data/events/2017-boise.yml similarity index 64% rename from utilities/examples/yyyy-city.yml rename to data/events/2017-boise.yml index f07e74e9d86..5c9f61aabf2 100644 --- a/utilities/examples/yyyy-city.yml +++ b/data/events/2017-boise.yml @@ -1,10 +1,10 @@ -name: "yyyy-city" # The name of the event. Four digit year with the city name in lower-case, with no spaces. -year: "YYYY" # The year of the event. Make sure it is in quotes. -city: "City" # The displayed city name of the event. Capitalize it. +name: "2017-boise" # The name of the event. Four digit year with the city name in lower-case, with no spaces. +year: "2017" # The year of the event. Make sure it is in quotes. +city: "Boise" # The displayed city name of the event. Capitalize it. event_twitter: "devopsdayscityabbr" # The twitter handle for your event, which is often devopsdays and then an abbreviation for the city description: # A short blurb of text to describe your event, defaults to common DevOpsDays description -# All dates are in unquoted YYYY-MM-DD, like this: variable: 2016-01-05 +# All dates are in unquoted 2017-MM-DD, like this: variable: 2016-01-05 startdate: # The start date of your event. Leave blank if you don't have a venue reserved yet. enddate: # The end date of your event. Leave blank if you don't have a venue reserved yet. # Leave CFP dates blank if you don't know yet, or set all three at once. @@ -15,39 +15,44 @@ cfp_date_announce: # inform proposers of status # Location # coordinates: "41.882219, -87.640530" # The coordinates of your city. Get Latitude and Longitude of a Point: http://itouchmap.com/latlong.html -location: "yourlocation" # Defaults to city, but you can make it the venue name. +location: "Boise" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + # - name: program # - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site # - name: location # - name: registration - - name: sponsor +# - name: sponsor - name: contact - name: conduct # These are the same people you have on the mailing list and Slack channel. team_members: # Name is the only required field for team members. - - name: "John Doe" - - name: "Jane Smith" - twitter: "devopsdays" - - name: "Sally Fields" - employer: "Acme Anvil Co." -organizer_email: "organizers-city-year@devopsdays.org" # Put your organizer email address here -proposal_email: "proposals-city-year@devopsdays.org" # Put your proposal email address here + - name: "Julie Gunderson" + employer: "Taos" + twitter: "Julie_Gund" + - name: "Stephen Spector" + twitter: "SpectorID" + employer: "Hewlett Packard Enterprise" + - name: "Brian Hartvigsen" + employer: "Cisco" + twitter: "tresni" + - name: "Robert Meyer" + employer: "Halbreck Technical Solutions" + twitter: "BDArcholite" + - name: "Paul Remeis" + employer: "In Time Tec" +organizer_email: "organizers-boise-2017@devopsdays.org" # Put your organizer email address here +proposal_email: "proposals-boise-2017@devopsdays.org" # Put your proposal email address here # List all of your sponsors here along with what level of sponsorship they have. # Check data/sponsors/ to use sponsors already added by others. sponsors: - - id: samplesponsorname - level: gold - - id: arresteddevops - level: community -sponsors_accepted : "yes" # Whether you want "Become a XXX Sponsor!" link +sponsors_accepted : "no" # Whether you want "Become a XXX Sponsor!" link # In this section, list the level of sponsorships and the label to use. # You may optionally include a "max" attribute to limit the number of sponsors per level. For @@ -56,10 +61,8 @@ sponsors_accepted : "yes" # Whether you want "Become a XXX Sponsor!" link sponsor_levels: - id: gold label: Gold - max: 10 - id: silver label: Silver - max: 0 # This is the same as omitting the max limit. - id: bronze label: Bronze - id: community diff --git a/data/events/2017-cape-town.yml b/data/events/2017-cape-town.yml index 52c3cf20cf6..187ac2da623 100644 --- a/data/events/2017-cape-town.yml +++ b/data/events/2017-cape-town.yml @@ -19,7 +19,7 @@ location: "Hilton Doubletree, Woodstock, Cape Town" # Defaults to city, but you # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + # - name: program # - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site diff --git a/data/events/2017-charlotte.yml b/data/events/2017-charlotte.yml index 555579d4a6a..69389f9e049 100644 --- a/data/events/2017-charlotte.yml +++ b/data/events/2017-charlotte.yml @@ -19,7 +19,7 @@ location: "Mint Museum Uptown" # Defaults to city, but you can make it the venue # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose url: https://www.papercall.io/dod-clt diff --git a/data/events/2017-chicago.yml b/data/events/2017-chicago.yml index dd1afd039e1..de4644e64b1 100644 --- a/data/events/2017-chicago.yml +++ b/data/events/2017-chicago.yml @@ -23,7 +23,7 @@ location: "Holiday Inn Mart Plaza" # Defaults to city, but you can make it the v # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + # - name: program # - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site @@ -55,7 +55,7 @@ team_members: website: "https://kevinreedy.net" linkedin: "https://www.linkedin.com/in/kevinreedy" github: "kevinreedy" - bio: "Kevin Reedy is an infrastructure developer from Chicago that currently works for Chef as a Customer Architect. In his free time, he enjoys brewing beer, snowboarding, DJing, and promising that he'll update my blog more often." + bio: "Kevin Reedy is an infrastructure developer from Chicago that currently works for Chef as a Customer Architect. In his free time, he enjoys brewing beer, snowboarding, DJing, and promising that he'll update his blog more often." - name: "Sasha Rosenbaum" image: "sasha-rosenbaum.jpg" employer: "Microsoft" @@ -73,6 +73,12 @@ team_members: linkedin: "https://www.linkedin.com/in/mattstratton" github: "mattstratton" bio: "Matt Stratton is a customer architect at Chef, where he demonstrates how Chef’s automation platform provides speed and flexibility to clients’ infrastructure. He is devoted to concepts like Continuous Delivery and Infrastructure as Code, and his license plate actually says \"DevOps\". He lives in the Chicagoland area with his wife Andrea, and his three kids, Henry, Joey, and Sophia. He also has an unhealthy obsession with *Doctor Who*, *Firefly*, and *Game of Thrones*. And whiskey." + - name: "Allie Richards" + image: "allie-richards.jpg" + twitter: "hpuxgirl" + employer: "Centro" + linkedin: "https://www.linkedin.com/in/alexandra-richards-88b54a36/" + bio: "Allie Richards has been ops-ing since before the terms \"DevOps\" and \"Operations Engineering\" existed. She is passionate about command lines, automation and performance at scale. When not at work she can usually be found trying to read with a cat on her lap." organizer_email: "organizers-chicago-2017@devopsdays.org" proposal_email: "cfp@devopsdayschi.org" diff --git a/data/events/2017-dallas.yml b/data/events/2017-dallas.yml index 1d3a9d2ea6d..712b260d54f 100644 --- a/data/events/2017-dallas.yml +++ b/data/events/2017-dallas.yml @@ -7,25 +7,32 @@ status: "current" # Options are "past" or "current". Use "current" for upcoming. description: # A short blurb of text to describe your event, defaults to common DevOpsDays description # All dates are in unquoted YYYY-MM-DD, like this: variable: 2016-01-05 -startdate: # The start date of your event. Leave blank if you don't have a venue reserved yet. -enddate: # The end date of your event. Leave blank if you don't have a venue reserved yet. +startdate: 2017-08-28 # The start date of your event. Leave blank if you don't have a venue reserved yet. +enddate: 2017-08-30 # The end date of your event. Leave blank if you don't have a venue reserved yet. # Leave CFP dates blank if you don't know yet, or set all three at once. cfp_date_start: # start accepting talk proposals. cfp_date_end: # close your call for proposals. cfp_date_announce: # inform proposers of status +cfp_open: "false" +cfp_link: "" + +registration_open: "false" +registration_link: "" + +event_logo: "logo.jpg" + # Location # -coordinates: "41.882219, -87.640530" # The coordinates of your city. Get Latitude and Longitude of a Point: http://itouchmap.com/latlong.html +coordinates: "33.08412347956714, -96.80671317624937" # The coordinates of your city. Get Latitude and Longitude of a Point: http://itouchmap.com/latlong.html location: "Dallas / Ft. Worth" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome # - name: program # - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site -# - name: location + - name: location # - name: registration - name: sponsor - name: contact @@ -33,34 +40,106 @@ nav_elements: # List of pages you want to show up in the navigation of your page # These are the same people you have on the mailing list and Slack channel. team_members: # Name is the only required field for team members. - - name: "Mike Rosado" - twitter: "MikeRosTX" - - name: "Michael Hedgpeth" - twitter: "michaelhedgpeth" - employer: "NCR" - name: "Annie Hedgpeth" - twitter: "anniehedgie" employer: "10th Magnitude" + bio: "Annie will be our Speaker Liaison and MC for this year’s event. After a major career change in 2016, Annie became a cloud automation engineer at 10th Magnitude, a leading Azure cloud consultancy. Being involved in the DevOps community, she seeks to bring attention to technologies that lower the barrier to entry for others seeking a career change into technology." + twitter: "anniehedgie" + linkedin: "https://www.linkedin.com/in/annie-hedgpeth-203393112/" +# facebook: "" + website: "http://www.anniehedgie.com/" + github: "anniehedgpeth" + image: "annie.jpg" - name: "Ben Johnson" - twitter: "benjohnson77" employer: "Particle41" - - name: "Mark Saum" - twitter: "msaum" - employer: "Fidelis Consulting" - - name: "Jack Teoh" - twitter: "jaxteoh" - employer: "Alkami Technology" +# bio: + twitter: "benjohnson77" + linkedin: "https://www.linkedin.com/in/benjaminrjohnson/" +# facebook: +# website: "" +# github: "" + image: "ben.jpg" + - name: "Cory Forsythe" + employer: "Capital One" +# bio: "" + twitter: "CoryForsythe" + linkedin: "https://www.linkedin.com/in/123123214cf/" +# facebook: "" +# website: "" +# github: "" + image: "cory.jpg" - name: "Gokul Sridharan" - twitter: "ConsultGokul_CA" employer: "CA Technologies" +# bio: "" + twitter: "ConsultGokul_CA" + linkedin: "https://www.linkedin.com/in/gokul-sridharan-98a12323/" +# facebook: "" +# website: "" +# github: "" + image: "gokul.jpg" + - name: "Jack Teoh" + employer: "Alkami Technology" +# bio: "" + twitter: "jaxteoh" + linkedin: "https://www.linkedin.com/in/jackteoh/" +# facebook: "" +# website: "" +# github: "" + image: "jack.jpg" + - name: "Lee Herrin" + employer: "Six Sents" +# bio: "" + twitter: "TechnologicaLee" + linkedin: "https://www.linkedin.com/in/wtleeherrin/" +# facebook: "" +# website: "" +# github: "" + image: "lee.jpg" + - name: "Mark Saum" + employer: "Fidelis Consulting" +# bio: + twitter: "msaum" + linkedin: "https://www.linkedin.com/in/marksaum/" +# facebook: +# website: +# github: + image: "mark.jpg" + - name: "Megan Bohl" +# employer: +# bio: + twitter: "MeganBohl" + linkedin: "https://www.linkedin.com/in/megan-bohl-gardner-60932310/" +# facebook: +# website: +# github: + image: "megan.jpg" + - name: "Michael Hedgpeth" + employer: "NCR" +# bio: + twitter: "michaelhedgpeth" + linkedin: "https://www.linkedin.com/in/michael-hedgpeth/" +# facebook: +# website: +# github: + image: "michael.jpg" + - name: "Mike Rosado" + employer: "Independent Consultant" + bio: "Mike who is a DevOps Enthusiast and Technical Evangelist works as an Independent Consultant with customers in the United States and throughout Latin America. Mike enjoys sharing his views as it relates to the cultural movement of DevOps and technologies that contribute to the continuous improvement. He enjoys it so much, that he became one of the integral local organizers of DevOpsDays Dallas, [DevOps Live Meetup](https://www.meetup.com/DevOpsLive/), and active Global Core Organizer of [devopsday.org](https://www.devopsdays.org/about).

      +As a recognized leader in the DevOps space with exemplary recommendations in the LinkedIn community groups, Mike’s passion in this field shines as he mentors others and enjoys tackling challenges. Mike's vast experience in helping Enterprise customers for 22+ years at Microsoft in various capacity serves as a base as he continues to evolve in this DevOps journey. " + twitter: "MikeRosTX" + linkedin: "https://www.linkedin.com/in/mikerostx/" +# facebook: +# website: + github: "mikerostx" + image: "mike.jpg" + organizer_email: "organizers-dallas-2017@devopsdays.org" # Put your organizer email address here proposal_email: "proposals-dallas-2017@devopsdays.org" # Put your proposal email address here # List all of your sponsors here along with what level of sponsorship they have. # Check data/sponsors/ to use sponsors already added by others. sponsors: - - id: samplesponsorname - level: gold + - id: capitalone + level: location_and_platinum - id: arresteddevops level: community @@ -71,6 +150,9 @@ sponsors_accepted : "yes" # Whether you want "Become a XXX Sponsor!" link # unlimitted sponsors, omit the max attribute or set it to 0. If you want to prevent all # sponsorship for a specific level, it is best to remove the level. sponsor_levels: + - id: location_and_platinum + label: Location & Platinum + max: 1 - id: platinum label: Platinum max: 4 diff --git a/data/events/2017-denver.yml b/data/events/2017-denver.yml index 59154335f91..0131017ad17 100644 --- a/data/events/2017-denver.yml +++ b/data/events/2017-denver.yml @@ -13,7 +13,7 @@ coordinates: "39.739236, -104.990251" # The corrodinates of your venue. Get Lati location: "Denver" # The name of your location nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: sponsor - name: speakers - name: contact @@ -51,8 +51,18 @@ sponsors: # List all of your sponsors here along with what level of sponsorship level: gold - id: sumologic level: gold + - id: chef + level: gold + - id: scalyr + level: gold + - id: mesosphere + level: gold + - id: redhat + level: gold - id: software-freedom-school - level: bronze + level: lanyard + - id: asg + level: lanyard - id: aspe level: bronze - id: signalsciences diff --git a/data/events/2017-detroit.yml b/data/events/2017-detroit.yml index 67e18d6e2b9..ab282644cb4 100644 --- a/data/events/2017-detroit.yml +++ b/data/events/2017-detroit.yml @@ -20,7 +20,7 @@ location: "A. Alfred Taubman Center for Design Education, College for Creative S # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + # - name: program # - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site @@ -44,6 +44,8 @@ team_members: # Name is the only required field for team members. - name: "Allison Green" - name: "Dave Barnett" employer: JSTOR + - name: "Zach Zeid" + employer: AHEAD organizer_email: "organizers-detroit-2017@devopsdays.org" # Put your organizer email address here proposal_email: "proposals-detroit-2017@devopsdays.org" # Put your proposal email address here diff --git a/data/events/2017-edinburgh.yml b/data/events/2017-edinburgh.yml index 84ac450ec2f..cdd8f2796ea 100644 --- a/data/events/2017-edinburgh.yml +++ b/data/events/2017-edinburgh.yml @@ -19,7 +19,7 @@ location: "Edinburgh" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + # - name: program # - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site diff --git a/data/events/2017-hartford.yml b/data/events/2017-hartford.yml index f0ae9bcc5b6..2ca1e163ffc 100644 --- a/data/events/2017-hartford.yml +++ b/data/events/2017-hartford.yml @@ -5,8 +5,8 @@ event_twitter: "devopsdayshfd" description: # A short blurb of text to describe your event, defaults to common DevOpsDays description # All dates are in unquoted 2016-MM-DD, like this: variable: 2016-01-05 -startdate: # The start date of your event. Leave blank if you don't have a venue reserved yet. -enddate: # The end date of your event. Leave blank if you don't have a venue reserved yet. +startdate: 2017-10-10 # The start date of your event. Leave blank if you don't have a venue reserved yet. +enddate: 2017-10-11 # The end date of your event. Leave blank if you don't have a venue reserved yet. # Leave CFP dates blank if you don't know yet, or set all three at once. cfp_date_start: # start accepting talk proposals. cfp_date_end: # close your call for proposals. @@ -14,16 +14,16 @@ cfp_date_announce: # inform proposers of status # Location # -coordinates: "41.763711, -72.685093" # The coordinates of your city. Get Latitude and Longitude of a Point: http://itouchmap.com/latlong.html -location: "Hartford" # Defaults to city, but you can make it the venue name. +coordinates: "41.767352, -72.673939" # The coordinates of your city. Get Latitude and Longitude of a Point: http://itouchmap.com/latlong.html +location: "The Society Room" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + # - name: program # - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site -# - name: location + - name: location # - name: registration - name: sponsor - name: contact @@ -66,10 +66,8 @@ sponsors_accepted : "yes" # Whether you want "Become a XXX Sponsor!" link sponsor_levels: - id: gold label: Gold - max: 10 - id: silver label: Silver - max: 0 # This is the same as omitting the max limit. - id: bronze label: Bronze - id: community diff --git a/data/events/2017-indianapolis.yml b/data/events/2017-indianapolis.yml index e0f1b2f3b6c..113629f3071 100644 --- a/data/events/2017-indianapolis.yml +++ b/data/events/2017-indianapolis.yml @@ -19,7 +19,7 @@ location: "Indianapolis" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + # - name: program # - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site diff --git a/data/events/2017-istanbul.yml b/data/events/2017-istanbul.yml index 73fd4bfae55..a1c374bec62 100644 --- a/data/events/2017-istanbul.yml +++ b/data/events/2017-istanbul.yml @@ -19,7 +19,7 @@ location: "Dedeman Bostanci Istanbul" # Defaults to city, but you can make it th # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + # - name: program - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site diff --git a/data/events/2017-kansascity.yml b/data/events/2017-kansascity.yml index e8efbaacf5f..bebbe6acd6e 100644 --- a/data/events/2017-kansascity.yml +++ b/data/events/2017-kansascity.yml @@ -1,8 +1,8 @@ name: "2017-kansascity" # The name of the event. Four digit year with the city name in lower-case, with no spaces. year: "2017" # The year of the event. Make sure it is in quotes. city: "Kansas City" # The city name of the event. Capitalize it. -friendly: "2017-kansascity" # Four digit year and the city name in lower-case. Don't forget the dash! -status: "current" # Options are "past" or "current". Use "current" for upcoming. +description: # A short blurb of text to describe your event, defaults to common DevOpsDays description +event_twitter: "devopsdayskc" # All dates are in unquoted 2016-MM-DD, like this: variable: 2016-01-05 #startdate: 2016-10-20 # The start date of your event. Leave blank if you don't have a venue reserved yet. @@ -18,7 +18,7 @@ coordinates: "39.082920, -94.582451" # The coordinates of your city. Get Latitud #location: "Musical Theater Heritage" # Defaults to city, but you can make it the venue name. nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + # - name: program # - name: speakers # - name: location diff --git a/data/events/2017-london.yml b/data/events/2017-london.yml index 68ab15239dd..da7269a8cb1 100644 --- a/data/events/2017-london.yml +++ b/data/events/2017-london.yml @@ -19,7 +19,7 @@ location: "London" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + # - name: program # - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site diff --git a/data/events/2017-los-angeles.yml b/data/events/2017-los-angeles.yml index 1f1ce07aaba..70e77c845c6 100644 --- a/data/events/2017-los-angeles.yml +++ b/data/events/2017-los-angeles.yml @@ -18,7 +18,7 @@ location: "Pasadena Convention Center" # Defaults to city, but you can make it t # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: location diff --git a/data/events/2017-madison.yml b/data/events/2017-madison.yml index 40958076a57..523b005b019 100644 --- a/data/events/2017-madison.yml +++ b/data/events/2017-madison.yml @@ -2,6 +2,7 @@ name: "2017-madison" # The name of the event. Four digit year with the city name year: "2017" # The year of the event. Make sure it is in quotes. city: "Madison" # The displayed city name of the event. Capitalize it. description: # A short blurb of text to describe your event, defaults to common DevOpsDays description +event_twitter: "devopsdaysmsn" # All dates are in unquoted 2017-MM-DD, like this: variable: 2016-01-05 startdate: # The start date of your event. Leave blank if you don't have a venue reserved yet. @@ -18,7 +19,7 @@ location: "Madison" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + # - name: program # - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site diff --git a/data/events/2017-minneapolis.yml b/data/events/2017-minneapolis.yml index aaa1bcf56ea..45236999d1b 100644 --- a/data/events/2017-minneapolis.yml +++ b/data/events/2017-minneapolis.yml @@ -15,7 +15,7 @@ coordinates: "44.972610,-93.272960" location: "Minneapolis" nav_elements: - - name: welcome + # - name: program # - name: speakers - name: propose @@ -67,13 +67,19 @@ sponsors: level: gold - id: veritas level: silver + - id: thoughtworks-products + level: platinum + - id: mesosphere + level: silver + - id: redhat + level: gold sponsors_accepted : "yes" sponsor_levels: - id: platinum label: Platinum - max: 3 + max: 5 - id: gold label: Gold - id: silver diff --git a/data/events/2017-moscow.yml b/data/events/2017-moscow.yml index b03ed94ffc7..4733df168df 100644 --- a/data/events/2017-moscow.yml +++ b/data/events/2017-moscow.yml @@ -19,7 +19,7 @@ location: "Moscow" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose - name: speakers @@ -107,6 +107,8 @@ sponsors: level: media - id: hotelmilan level: accommodation + - id: croc + level: bronze sponsors_accepted : "yes" # Whether you want "Become a XXX Sponsor!" link @@ -123,6 +125,8 @@ sponsor_levels: - id: silver label: Silver max: 0 # This is the same as omitting the max limit. + - id: bronze + label: Bronze - id: internet label: General Internet - id: Networking diff --git a/data/events/2017-ohio.yml b/data/events/2017-ohio.yml index 2fc9f4aa533..c94bab07aef 100644 --- a/data/events/2017-ohio.yml +++ b/data/events/2017-ohio.yml @@ -2,8 +2,7 @@ name: "2017-ohio" # The name of the event. Four digit year with the city name in year: 2017 # The year of the event. Make sure it is in quotes. city: "Ohio" # The city name of the event. Capitalize it. event_twitter: "DevOpsDaysOhio" -friendly: "2017-ohio" # Four digit year and the city name in lower-case. Don't forget the dash! -status: "past" # Options are "past" or "current". + startdate: "" # The start date of your event, in YYYY-MM-DD format. Leave blank if you don't have a date yet. enddate: "" # The end date of your event, in YYYY-MM-DD format. Leave blank if you don't have a date yet. cfp_date_start: "" @@ -12,7 +11,7 @@ cfp_date_announce: "" coordinates: "40.038877, -82.874830" # The corrodinates of your venue. Get Latitude and Longitude of a Point: http://itouchmap.com/latlong.html location: "" # The name of your location nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: contact - name: conduct - name: sponsor diff --git a/data/events/2017-oslo.yml b/data/events/2017-oslo.yml index 962c4dc6223..7255666304d 100644 --- a/data/events/2017-oslo.yml +++ b/data/events/2017-oslo.yml @@ -25,7 +25,7 @@ location: "Gamle Museet / The Old Museum" # Defaults to city, but you can make i # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + # - name: program # - name: speakers - name: propose @@ -82,6 +82,12 @@ team_members: # Name is the only required field for team members. # employer: "" - name: "Jessica Perez" # twitter: "" +# employer: "" + - name: "Victoria Wiese" +# twitter: "" +# employer: "" + - name: "Siri-May Sivertsen" +# twitter: "" # employer: "" organizer_email: "organizers-oslo-2017@devopsdays.org" # Put your organizer email address here @@ -114,10 +120,12 @@ sponsors: # level: gold sponsor_levels: # In this section, list the level of sponsorships and the label to use. + - id: platinum + label: Platinum - id: gold label: Gold - - id: student - label: Student + - id: community + label: Community - id: exclusive label: Exclusive diff --git a/data/events/2017-paris.yml b/data/events/2017-paris.yml index 95c1c4e1745..3d6c50f70d0 100644 --- a/data/events/2017-paris.yml +++ b/data/events/2017-paris.yml @@ -19,7 +19,7 @@ location: "Paris" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + # - name: program # - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site diff --git a/data/events/2017-philadelphia.yml b/data/events/2017-philadelphia.yml index 8aa54c8b194..0e4db00a8ce 100644 --- a/data/events/2017-philadelphia.yml +++ b/data/events/2017-philadelphia.yml @@ -19,7 +19,7 @@ location: "Chemical Heritage Foundation" # The name of your location # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + # - name: program # - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site diff --git a/data/events/2017-portland.yml b/data/events/2017-portland.yml index 853a0e48591..9a576e58ca2 100644 --- a/data/events/2017-portland.yml +++ b/data/events/2017-portland.yml @@ -8,9 +8,11 @@ friendly: "2017-portland" startdate: 2017-08-01 # The start date of your event. Leave blank if you don't have a venue reserved yet. enddate: 2017-08-02 # The end date of your event. Leave blank if you don't have a venue reserved yet. # Leave CFP dates blank if you don't know yet, or set all three at once. -cfp_date_start: # start accepting talk proposals. -cfp_date_end: # close your call for proposals. -cfp_date_announce: # inform proposers of status +cfp_date_start: 2017-03-04 # start accepting talk proposals. +cfp_date_end: 2017-05-10 # close your call for proposals. +cfp_date_announce: 2017-06-01 # inform proposers of status +cfp_open: "true" +cfp_link: "https://devopsdayspdx2017.busyconf.com/proposals/new" # Location # @@ -19,10 +21,10 @@ location: "Portland" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + # - name: program -# - name: propose -# url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site + - name: propose + url: https://devopsdayspdx2017.busyconf.com/proposals/new - name: location # - name: registration - name: sponsor @@ -80,6 +82,8 @@ sponsors: level: community - id: chef level: gold + - id: influxdata + level: gold sponsors_accepted : "yes" # Whether you want "Become a XXX Sponsor!" link diff --git a/data/events/2017-raleigh.yml b/data/events/2017-raleigh.yml index a4a38fb57e1..93d59232534 100644 --- a/data/events/2017-raleigh.yml +++ b/data/events/2017-raleigh.yml @@ -19,7 +19,7 @@ location: "McKimmon Conference & Training Center" # Defaults to city, but you ca # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + # - name: program # - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site diff --git a/data/events/2017-saint-louis.yml b/data/events/2017-saint-louis.yml index 9f65465f087..726f7321d82 100644 --- a/data/events/2017-saint-louis.yml +++ b/data/events/2017-saint-louis.yml @@ -19,7 +19,7 @@ location: "Saint Louis" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + # - name: program # - name: propose # url: https://trello.com/b/qtP2nsVm/presentations # The url setting is optional, and only if you want the navigation to link off-site diff --git a/data/events/2017-salt-lake-city.yml b/data/events/2017-salt-lake-city.yml index 5e15151d91e..15bd48c6ccb 100644 --- a/data/events/2017-salt-lake-city.yml +++ b/data/events/2017-salt-lake-city.yml @@ -19,7 +19,7 @@ location: "Noah's Event Venue" # Defaults to city, but you can make it the venue # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + # - name: program - name: propose url: https://www.papercall.io/slc-dev-ops-days @@ -83,6 +83,12 @@ sponsors: level: blackdiamond - id: pivotal level: blackdiamond + - id: cloudpassage + level: blackdiamond + - id: opsgenie + level: bluesquare + - id: pure-storage + level: bluesquare sponsors_accepted : "yes" # Whether you want "Become a XXX Sponsor!" link # In this section, list the level of sponsorships and the label to use. diff --git a/data/events/2017-seattle.yml b/data/events/2017-seattle.yml index 38ff1902f72..09854f3d5dd 100644 --- a/data/events/2017-seattle.yml +++ b/data/events/2017-seattle.yml @@ -19,7 +19,7 @@ location: "Seattle" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome +# - name: program # - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site @@ -33,18 +33,30 @@ nav_elements: # List of pages you want to show up in the navigation of your page team_members: # Name is the only required field for team members. - name: "Rob Cummings" twitter: "opsrob" + image: "rob-cummings.jpg" - name: "Dominica DeGrandis" twitter: "dominicad" + image: "dominica-degrandis.jpg" - name: "Dan Dicamillo" twitter: "criticalthinker" + image: "dan-dicamillo.jpg" - name: "Jeremy Dyche" + twitter: "JD892011" + image: "jeremy-dyche.jpg" - name: "Michael Goetz" twitter: "michaelpgoetz" + image: "michael-goetz.jpg" - name: "Ken Mugrage" twitter: "kmugrage" + image: "ken-mugrage.jpg" + bio: "Ken promotes DevOps and Continuous Delivery for ThoughtWorks. He'll be the guy with dog hair on his clothes." + linkedin: "https://www.linkedin.com/in/kmugrage/" - name: "Michael Towbin" twitter: "MichaelTowbin" + image: "michael-towbin.jpg" - name: "Todd Wilson" + twitter: "t1wilson" + image: "todd-wilson.jpg" organizer_email: "organizers-seattle-2017@devopsdays.org" # Put your organizer email address here proposal_email: "proposals-seattle-2017@devopsdays.org" # Put your proposal email address here @@ -90,6 +102,8 @@ sponsors: level: gold - id: getty-images level: gold + - id: dellemc + level: gold - id: victorops level: silver - id: netapp @@ -98,6 +112,8 @@ sponsors: level: silver - id: spoken level: bronze + - id: concur + level: bronze - id: seattle-devops-meetup level: community - id: seattle-coffeeops @@ -112,7 +128,7 @@ sponsors_accepted : "yes" # Whether you want "Become a XXX Sponsor!" link sponsor_levels: - id: gold label: Gold - max: 20 + max: 15 - id: silver label: Silver max: 0 # This is the same as omitting the max limit. diff --git a/data/events/2017-stockholm.yml b/data/events/2017-stockholm.yml index 2c9670abfc2..99b3396a076 100644 --- a/data/events/2017-stockholm.yml +++ b/data/events/2017-stockholm.yml @@ -19,12 +19,12 @@ location: "Stockholm, Ballroom 12" # Defaults to city, but you can make it the v # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + # - name: program - name: propose #url: https://devopsdayssthlm.typeform.com/to/eMaXqd - name: location -# - name: registration + - name: registration - name: sponsor - name: contact - name: conduct @@ -51,10 +51,22 @@ proposal_email: "proposals-stockholm-2017@devopsdays.org" # Put your proposal em # List all of your sponsors here along with what level of sponsorship they have. # Check data/sponsors/ to use sponsors already added by others. sponsors: - - id: praqma - level: silver - id: chef level: gold + - id: pivotal + level: gold + - id: gocd + level: gold + - id: opsgenie + level: gold + - id: stackstate + level: gold + - id: praqma + level: silver + - id: elastic + level: silver + - id: basefarm + level: bronze - id: arresteddevops level: community @@ -67,11 +79,12 @@ sponsors_accepted : "yes" # Whether you want "Become a XXX Sponsor!" link sponsor_levels: - id: gold label: Gold - max: 8 + max: 6 - id: silver label: Silver - max: 0 # This is the same as omitting the max limit. + max: 4 # This is the same as omitting the max limit. - id: bronze label: Bronze + max: 4 - id: community label: Community diff --git a/data/events/2017-tokyo.yml b/data/events/2017-tokyo.yml index d64123d2ba9..07bec093d29 100644 --- a/data/events/2017-tokyo.yml +++ b/data/events/2017-tokyo.yml @@ -18,7 +18,7 @@ location: "大崎ブライトコアホール" # Defaults to city, but you can ma # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + # - name: program - name: propose url: https://confengine.com/devopsdays-tokyo-2017 @@ -37,7 +37,7 @@ team_members: # Name is the only required field for team members. twitter: "apapadimoulis" - name: "Yasunobu Kawaguchi" employer: "Rakuten" - - name: "Ryutaro Toshiba" + - name: "Ryutaro Yoshiba" employer: "Ryuzee.com" - name: "Minoru Tsuka" employer: "Yahoo! Japan" @@ -56,10 +56,20 @@ proposal_email: "proposals-tokyo-2017@devopsdays.org" # Put your proposal email # List all of your sponsors here along with what level of sponsorship they have. # Check data/sponsors/ to use sponsors already added by others. sponsors: -# - id: samplesponsorname -# level: gold -# - id: arresteddevops -# level: community + - id: opsgenie + level: bronze + - id: agilergo-consulting + level: silver + - id: creationline + level: silver + - id: chef + level: gold + - id: github + level: gold + - id: inedo + level: gold + - id: microsoft + level: gold sponsors_accepted : "yes" # Whether you want "Become a XXX Sponsor!" link @@ -70,9 +80,9 @@ sponsors_accepted : "yes" # Whether you want "Become a XXX Sponsor!" link sponsor_levels: - id: gold label: Gold - max: 2 + max: 4 - id: silver label: Silver - max: 5 + max: 3 - id: bronze label: Bronze diff --git a/data/events/2017-toronto.yml b/data/events/2017-toronto.yml index b12f16511cc..8b3625f0741 100644 --- a/data/events/2017-toronto.yml +++ b/data/events/2017-toronto.yml @@ -19,8 +19,9 @@ location: "Glenn Gould Studio" # The name of your location # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome -# - name: program + + - name: program + - name: speakers - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site - name: location @@ -62,6 +63,10 @@ sponsors: level: gold - id: blendedperspectives level: gold + - id: loyaltyone + level: gold + - id: cloudops + level: gold - id: sourcedgroup level: lunch - id: dealer-fx diff --git a/data/events/2017-vancouver.yml b/data/events/2017-vancouver.yml index 9de0ab8e1e7..53fd57294e9 100644 --- a/data/events/2017-vancouver.yml +++ b/data/events/2017-vancouver.yml @@ -20,7 +20,7 @@ location: "Vancouver" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: program - name: propose # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site @@ -56,44 +56,56 @@ proposal_email: "proposals-vancouver-2017@devopsdays.org" # Put your proposal em # List all of your sponsors here along with what level of sponsorship they have. # Check data/sponsors/ to use sponsors already added by others. sponsors: - - id: ay-tech - level: friends - - id: pearlfisher-adaptech - level: friends + + - id: automic-vancouver + level: gold + - id: boeing-vancouver + level: gold - id: deis level: gold - - id: sourcedgroup - level: bronze + - id: demonware + level: gold - id: pivotal level: gold - - id: statsearchanalytics - level: bronze - - id: itglue - level: bronze - - id: samsung-rd - level: bronze - id: salesforce level: gold - id: saucelabs level: gold -# - id: netapp -# level: silver - - id: automic-vancouver + - id: sumologic level: gold -# - id: boeing-aeroinfo -# level: gold - - id: ea - level: coffee - - id: demonware + - id: trinimbus level: gold - - id: scalar - level: silver - id: victorops level: gold -# - id: opsgenie -# level: bronze - - id: trinimbus - level: gold + + - id: chef + level: silver + - id: netapp + level: silver + - id: scalar + level: silver + - id: unbounce + level: silver + + - id: itglue + level: bronze + - id: opsgenie + level: bronze + - id: samsung-rd + level: bronze + - id: statsearchanalytics + level: bronze + - id: sourcedgroup + level: bronze + + - id: ea + level: coffee + + - id: ay-tech + level: friends + - id: pearlfisher-adaptech + level: friends + sponsors_accepted : "yes" # Whether you want "Become a XXX Sponsor!" link @@ -107,10 +119,15 @@ sponsor_levels: max: 10 - id: silver label: Silver - max: 0 # This is the same as omitting the max limit. + max: 4 - id: bronze label: Bronze + max: 5 - id: coffee label: Coffee + max: 1 + - id: party + label: Happy Hour - id: friends label: Friends + max: 2 diff --git a/data/events/2017-washington-dc.yml b/data/events/2017-washington-dc.yml index 4cf178f588d..87c5b49cb96 100644 --- a/data/events/2017-washington-dc.yml +++ b/data/events/2017-washington-dc.yml @@ -9,23 +9,24 @@ description: # A short blurb of text to describe your event, defaults to common startdate: 2017-07-17 enddate: 2017-07-18 # Leave CFP dates blank if you don't know yet, or set all three at once. -cfp_date_start: # start accepting talk proposals. -cfp_date_end: # close your call for proposals. -cfp_date_announce: # inform proposers of status +cfp_date_start: 2017-03-07 +cfp_date_end: 2017-05-04 +cfp_date_announce: 2017-06-04 # Location # -coordinates: "41.882219, -87.640530" # The coordinates of your city. Get Latitude and Longitude of a Point: http://itouchmap.com/latlong.html +coordinates: "38.925970, -77.212138" # The coordinates of your city. Get Latitude and Longitude of a Point: http://itouchmap.com/latlong.html location: "Washington, DC" # Defaults to city, but you can make it the venue name. # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + # - name: program -# - name: propose -# url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site + - name: propose + url: https://devopsdaysdc2017.busyconf.com/proposals/new - name: location -# - name: registration + - name: registration + url: https://devopsdaysdc2017.busyconf.com/bookings/new - name: sponsor - name: contact - name: conduct diff --git a/data/events/2017-zurich.yml b/data/events/2017-zurich.yml index 10c590afcb1..eda541d9a87 100644 --- a/data/events/2017-zurich.yml +++ b/data/events/2017-zurich.yml @@ -1,8 +1,7 @@ name: "2017-zurich" # The name of the event. Four digit year with the city name in lower-case, with no spaces. year: "2017" # The year of the event. Make sure it is in quotes. city: "Zürich" # The city name of the event. Capitalize it. -event_twitter: "devopszh" -friendly: "2017-zurich" # Four digit year and the city name in lower-case. Don't forget the dash! +event_twitter: "DevOpsZH" # All dates are in unquoted 2017-MM-DD, like this: variable: 2016-01-05 startdate: 2017-05-03 @@ -19,7 +18,7 @@ location: "Zürich Winterthur" # Defaults to city, but you can make it the venue # nav_elements: # List of pages you want to show up in the navigation of your page. - - name: welcome + - name: speakers - name: program # - name: propose @@ -35,27 +34,88 @@ team_members: # Name is the only required field for team members. - name: "Martin Thalmann" twitter: "martin_thalmann" employer: "Swisscom AG" - - name: "Marcel Wolf" - twitter: "_marcelwolf" - employer: "codecentric AG" + bio: "I’m a passionate DevOps Enthusiast who strongly believes in the power of this movement. I’m currently helping a Swiss telco operator in adapting DevOps principles in a large enterprise. Beside that I’m co-organizer of the [DevOps Enthusiast Meetup in Zurich](https://www.meetup.com/DevOps-Meetup-Zurich/). I do have a background as a Software Engineer and experience in several Line- and Project-Management positions." + github: "" + facebook: "" + linkedin: "https://www.linkedin.com/in/martinthalmann/" + website: "" + image: "martin-thalmann.jpg" - name: "Roderick Jonsson" twitter: "" - employer: "tba" - - name: "Marcelo Ancelmo" - twitter: "marceloancelmo" - employer: "tba" + employer: "" + bio: "Linux System Engineer by profession and some times developer (symfony or java).

      Working with CoreOS, Kubernetes, Openstack and Docker.

      Loves tech trend spotting.

      If you are passionate about DevOps technologies and finding out how they will influence the coming digital economy, then chat me up ;)" + github: "" + facebook: "" + linkedin: "https://www.linkedin.com/in/roderick-jonsson-b299ba88/" + website: "" + image: "roderick-jonsson.jpg" - name: "Bastian Widmer" twitter: "dasrecht" employer: "amazee.io" + bio: "Bastian takes care of systems since nearly 15 years. He is also an avid speaker and conference organizer.

      +The nature of his internet-centric position makes him very aware that we need to safeguard the openness and neutrality of the internet on a global scale. This is also why he engages in several groups in Switzerland to work on issues related to net neutrality, security, and surveillance.

      +Outside of his job, Bastian dedicates much of his time to organizing various conferences and gatherings such as TEDxBern, DrupalCons. Bastian is passionate about Architecture, Circular Economy, the future of work, digital revolution and the impact on society itself." + github: "dasrecht" + facebook: "" + linkedin: "http://ch.linkedin.com/in/bastianwidmer" + website: "https://bastianwidmer.ch" + image: "bastian-widmer.jpg" - name: "Margo Cronin" + twitter: "MargoCronin" + employer: "" + bio: "I am a cloud architect, Irish, living in Switzerland for 12 years. My background is in both program management and architecture. I fell upon DevOps while struggling to get Scrum adopted and working in large financial enterprises, DevOps saved us and its been love ever since.

      In my spare time I like to dance, hike, ski and affectionately tease the Swiss." + github: "" + facebook: "" + linkedin: "https://www.linkedin.com/in/margo-cronin-478407/" + website: "" + image: "margo-cronin.jpg" - name: "Tobias Brunner" twitter: "tobruzh" employer: "VSHN AG" + bio: "Tobias (aka tobru) is a DevOps Engineer at VSHN. He loves Open Source and everything about modern technologies like Docker, Kubernetes, OpenShift and the like. In his day job he leads the DevOps team at VSHN, does some sort of project management and works on APPUiO - The Swiss Container Platform." + github: "tobru" + facebook: "" + linkedin: "" + website: "https://tobrunet.ch/" + image: "tobias-brunner.jpg" - name: "Vittorio Boccone" twitter: "drbokko" employer: "Dectris Ltd." + bio: "Vittorio grew up in the a world where hardware and software are in perfect equilibrium. At 8 he started customizing and modifying anything with an engine or a CPU. Curious about the nature of things he later became a detector and accelerator physicist. After 13 years at CERN, he's now often seen at Dectris happily writing beautiful code for Dectris X-ray detectors. He's comfortable with any lab equipment, programming language or particle accelerator. He's also a DevOps enthusiast, a Ham Radio operator, a tech-explorer, a geek, a hacker, a biker, not to mention a father and a husband." + github: "https://github.com/drbokko" + facebook: "" + linkedin: "https://www.linkedin.com/in/vittorio-boccone-1998a94/" + website: "" + image: "vittorio-boccone.jpg" - name: "Matías E. Fernández" twitter: "matiasfrndz" + employer: "ERNI Consulting AG" + bio: "DevOps evangelist, Kanban practitioner, Lean Startup advocate, Linux and OSS afficionado.

      +Keen learner and challenger of the status quo.

      +Enabling organisations to achieve outstanding and sustainable results that exceed customers’ expectations is his passion." + github: "matiasfrndz" + facebook: "" + linkedin: "https://www.linkedin.com/in/matiasfrndz/" + website: "https://matiasfrndz.ch/" + image: "matias-e-fernandez.jpg" + - name: "Marcelo Ancelmo" + twitter: "marceloancelmo" + employer: "" + bio: "" + github: "" + facebook: "" + linkedin: "" + website: "" + image: "" + - name: "Marcel Wolf" + twitter: "_marcelwolf" + employer: "codecentric AG" + bio: "" + github: "" + facebook: "" + linkedin: "" + website: "" + image: "" organizer_email: "organizers-zuerich-2017@devopsdays.org" # Put your organizer email address here proposal_email: "proposals-zuerich-2017@devopsdays.org" # Put your proposal email address here @@ -109,3 +169,181 @@ sponsor_levels: # In this section, list the level of sponsorships and the label label: Silver - id: bronze label: Bronze + +program: + - title: "Regisitration and Welcome Coffee" + type: custom + date: 2017-05-03 + start_time: "08:00" + end_time: "09:00" + - title: "Opening Welcome" + type: custom + date: 2017-05-03 + start_time: "09:00" + end_time: "09:10" + - title: "hannah-foxwell" + type: talk + date: 2017-05-03 + start_time: "09:10" + end_time: "09:40" + - title: "thomas-philipona" + type: talk + date: 2017-05-03 + start_time: "09:40" + end_time: "10:10" + - title: "alvaro-videla" + type: talk + date: 2017-05-03 + start_time: "10:10" + end_time: "10:40" + - title: "Break" + type: custom + date: 2017-05-03 + start_time: "10:40" + end_time: "11:10" + - title: "chris-van-tuin" + type: talk + date: 2017-05-03 + start_time: "11:15" + end_time: "11:45" + - title: "emanuel-kleindienst" + type: talk + date: 2017-05-03 + start_time: "11:45" + end_time: "12:15" + - title: "Lunch (catered)" + type: custom + date: 2017-05-03 + start_time: "12:15" + end_time: "13:15" + - title: "Ignites" + type: custom + date: 2017-05-03 + start_time: "13:30" + end_time: "14:00" + - title: "Open Space Opening" + type: custom + date: 2017-05-03 + start_time: "14:00" + end_time: "14:15" + - title: "Open Space #1" + type: custom + date: 2017-05-03 + start_time: "14:20" + end_time: "15:05" + - title: "Open Space #2" + type: custom + date: 2017-05-03 + start_time: "15:15" + end_time: "16:00" + - title: "Open Space #3" + type: custom + date: 2017-05-03 + start_time: "16:10" + end_time: "16:55" + - title: "Close Day & Logistics" + type: custom + date: 2017-05-03 + start_time: "16:55" + end_time: "17:00" + - title: "Evening Event" + type: custom + date: 2017-05-03 + start_time: "18:30" + end_time: "24:00" + comments: "tba" + - title: "Registration and Welcome Coffee" + type: custom + date: 2017-05-04 + start_time: "08:00" + end_time: "09:00" + - title: "Opening Welcome" + type: custom + date: 2017-05-04 + start_time: "09:00" + end_time: "09:10" + - title: "charity-majors" + type: talk + date: 2017-05-04 + start_time: "09:10" + end_time: "09:40" + - title: "jorge-salamero-sanz" + type: talk + date: 2017-05-04 + start_time: "09:40" + end_time: "10:10" + - title: "tharmes-siva" + type: talk + date: 2017-05-04 + start_time: "10:10" + end_time: "10:40" + - title: "Break" + type: custom + date: 2017-05-04 + start_time: "10:40" + end_time: "11:10" + - title: "suzie-prince" + type: talk + date: 2017-05-04 + start_time: "11:15" + end_time: "11:45" + - title: "beat-stutz" + type: talk + date: 2017-05-04 + start_time: "11:45" + end_time: "12:15" + - title: "Lunch (catered)" + type: custom + date: 2017-05-04 + start_time: "12:15" + end_time: "13:15" + - title: "Ignites" + type: custom + date: 2017-05-04 + start_time: "13:30" + end_time: "14:00" + - title: "Open Space Opening" + type: custom + date: 2017-05-04 + start_time: "14:00" + end_time: "14:15" + - title: "Open Space #1" + type: custom + date: 2017-05-04 + start_time: "14:20" + end_time: "15:05" + - title: "Open Space #2" + type: custom + date: 2017-05-04 + start_time: "15:15" + end_time: "16:00" + - title: "Open Space #3" + type: custom + date: 2017-05-04 + start_time: "16:10" + end_time: "16:55" + - title: "Close Day & Farewell" + type: custom + date: 2017-05-04 + start_time: "16:55" + end_time: "17:15" + +ignites: + - title: "dan-reif" + date: 2017-05-03 + - title: "eric-maxwell" + date: 2017-05-03 + - title: "henri-dubois-ferriere" + date: 2017-05-03 + - title: "dirk-lehmann" + date: 2017-05-03 + - title: "manuel-schweizer" + date: 2017-05-03 + - title: "alex-lichtenberger" + date: 2017-05-04 + - title: "cyrill-ruettimann" + date: 2017-05-04 + - title: "maik-wojcieszak" + date: 2017-05-04 + - title: "dave-halter" + date: 2017-05-04 diff --git a/data/speakers/2017/moscow/ilyasher.yml b/data/speakers/2017/moscow/ilyasher.yml new file mode 100644 index 00000000000..847cb339d73 --- /dev/null +++ b/data/speakers/2017/moscow/ilyasher.yml @@ -0,0 +1,3 @@ +name: "Ilya Sher" +twitter: "" +bio: "Ilya, currently CTO at Beame.io, has more than 15 years of systems and software engineering experience. As a consultant, Ilya was exposed to a wide range of solutions, good and bad. Ilya likes to share his views, based on his experience. Ilya has been working on the Next Generation Shell (NGS) since 2013 and believes it will soon become the solution of choice for systems engineering tasks." diff --git a/data/speakers/2017/moscow/nistratov.yml b/data/speakers/2017/moscow/nistratov.yml new file mode 100644 index 00000000000..334d78f4f9e --- /dev/null +++ b/data/speakers/2017/moscow/nistratov.yml @@ -0,0 +1,3 @@ +name: "Artem Nistratov" +twitter: "" +bio: "Ведущий разработчик в ООО 'Нейрон', пишу go & ruby, участвую в разработке крупных медиапорталов" diff --git a/data/speakers/2017/toronto/aaron-aldrich.yml b/data/speakers/2017/toronto/aaron-aldrich.yml new file mode 100644 index 00000000000..a9b0af1814e --- /dev/null +++ b/data/speakers/2017/toronto/aaron-aldrich.yml @@ -0,0 +1,3 @@ +name: "Aaron Aldrich" +twitter: "crayzeigh" +bio: "Aaron Aldrich is the Director of Support Services and DevOps Evangelist at Cage Data and a founding organizer of the DevOps CT meetup. Following a career that's been user-facing and operationally focused has given him an empathetic view of technology's role in our lives. His writing can occasionally be found on http://cagedata.com/blog if it's greater than 140 characters or on twitter @crayzeigh if fewer." diff --git a/data/speakers/2017/toronto/adam-lefkowitz.yml b/data/speakers/2017/toronto/adam-lefkowitz.yml new file mode 100644 index 00000000000..02c592e15c7 --- /dev/null +++ b/data/speakers/2017/toronto/adam-lefkowitz.yml @@ -0,0 +1,3 @@ +name: "Adam Lefkowitz" +twitter: "luckylefky" +bio: "I'm an avid DevOps advocate and love learning from others in the space. When not trying to get over my fear of public speaking in Toronto, I'm busy enjoying craft brew, street art and my family." diff --git a/data/speakers/2017/toronto/andreas-grabner.yml b/data/speakers/2017/toronto/andreas-grabner.yml new file mode 100644 index 00000000000..3af178274d7 --- /dev/null +++ b/data/speakers/2017/toronto/andreas-grabner.yml @@ -0,0 +1,3 @@ +name: "Andreas Grabner" +twitter: "grabnerandi" +bio: "Andreas Grabner has been a developer, tester, architect, and product evangelist for the past 18 years for CRM, eGovernment, testing and monitoring vendors. In his current role he helps companies injecting metrics into the end-to-end delivery pipeline to make better decisions on feature and code changes and with that also closing the feedback loops between Ops, Biz and AppDev.

      Andreas has been speaking at meetups, user groups, and international conferences to share experiences and stories around architecture, agile transformation, automated testing, CI/CD and DevOps. In his spare time you can find him on the salsa dance floors :-)" diff --git a/data/speakers/2017/toronto/arthur-maltson.yml b/data/speakers/2017/toronto/arthur-maltson.yml new file mode 100644 index 00000000000..cfca3aca20a --- /dev/null +++ b/data/speakers/2017/toronto/arthur-maltson.yml @@ -0,0 +1,3 @@ +name: "Arthur Maltson" +twitter: "amaltson" +bio: "Arthur Maltson is a Software Developer who's 70% Dev and 30% Ops. He's currently practicing DevOps during the day and, as a husband and father he's also doing DadOps at night. Arthur embodies the Full Stack developer with his passion for infrastructure automation, API crafting, front end development and making work fun by introducing and/or building new tools.

      In his spare time Arthur spends far too much time trying to keep up with the latest tech. He also occasionally blogs, Tweets and commits to OSS." diff --git a/data/speakers/2017/toronto/augusto-rosa.yml b/data/speakers/2017/toronto/augusto-rosa.yml new file mode 100644 index 00000000000..295a6daaf48 --- /dev/null +++ b/data/speakers/2017/toronto/augusto-rosa.yml @@ -0,0 +1,3 @@ +name: "Augusto Rosa" +twitter: "kiniama" +bio: "Augusto Rosa is dealer-fx.com Vice President of IT, Cloud and Quality Assurance. An accomplished technical engineer with an effective management style that built and maintain highly functioning agile teams. Recently joined Dealer-fx to help deliver a growing roadmap. The two years before, Augusto was at shomi.com, where he repositioned shomi operational teams into agile team running devops methodologies. He has helped migrate, design and build shomi_ highly scalable cloud infrastructure leveraging Akamai and Amazon AWS." diff --git a/data/speakers/2017/toronto/bridget-kromhout.yml b/data/speakers/2017/toronto/bridget-kromhout.yml new file mode 100644 index 00000000000..de137882495 --- /dev/null +++ b/data/speakers/2017/toronto/bridget-kromhout.yml @@ -0,0 +1,3 @@ +name: "Bridget Kromhout" +twitter: "bridgetkromhout" +bio: "Bridget Kromhout is a Principal Technologist for Cloud Foundry at Pivotal. Her CS degree emphasis was in theory, but she now deals with the concrete (if ‘cloud’ can be considered tangible). After years as an operations engineer (most recently at DramaFever), she traded in oncall for more travel. A frequent speaker at tech conferences, she helps organize tech meetups at home in Minneapolis, serves on the program committee for Velocity, and acts as a global core organizer for devopsdays. She podcasts at Arrested DevOps, occasionally blogs at bridgetkromhout.com, and is active in a Twitterverse near you." diff --git a/data/speakers/2017/toronto/chris-van-tuin.yml b/data/speakers/2017/toronto/chris-van-tuin.yml new file mode 100644 index 00000000000..af5bba0111e --- /dev/null +++ b/data/speakers/2017/toronto/chris-van-tuin.yml @@ -0,0 +1,3 @@ +name: "Chris Van Tuin" +twitter: "" +bio: "Chris Van Tuin, Chief Technologist for the Western US at Red Hat, has over 20 years of experience in IT and Software. Since joining Red Hat in 2005, Chris has been architecting solutions for strategic customers and partners with a focus on emerging technologies including IaaS, PaaS, and DevOps. He started his career at Intel in IT and Managed Hosting followed by leadership roles in services and sales engineering at Loudcloud and Linux startups. Chris holds a Bachelors of Electrical Engineering from Georgia Institute of Technology." diff --git a/data/speakers/2017/toronto/david-numan.yml b/data/speakers/2017/toronto/david-numan.yml new file mode 100644 index 00000000000..87dbf54ef27 --- /dev/null +++ b/data/speakers/2017/toronto/david-numan.yml @@ -0,0 +1,3 @@ +name: "David Numan" +twitter: "dnuman" +bio: "David Numan, CivicActions engineer/sysadmin, is the creator of the Docker based Bowline project." diff --git a/data/speakers/2017/toronto/ernest-kugel.yml b/data/speakers/2017/toronto/ernest-kugel.yml new file mode 100644 index 00000000000..02a5e549206 --- /dev/null +++ b/data/speakers/2017/toronto/ernest-kugel.yml @@ -0,0 +1,3 @@ +name: "Ernest Kugel" +twitter: "erikkugel" +bio: "Close to 10 years of experience in the Sysadmin/DevOps world. Passionate about the cloud, security, and uptime." diff --git a/data/speakers/2017/toronto/fawzy-manaa.yml b/data/speakers/2017/toronto/fawzy-manaa.yml new file mode 100644 index 00000000000..60b693d4457 --- /dev/null +++ b/data/speakers/2017/toronto/fawzy-manaa.yml @@ -0,0 +1,3 @@ +name: "Fawzy Manaa" +twitter: "FawzyManaa" +bio: "Fawzy has been working in IT, both sides of development and operations since the start of his career. He spent time working in the industry as well as consulting where he worked as a technical prime on large software development projects, led DevOps transformation initiatives, and helped enterprise clients in their DevOps adoption journeys, … He currently works at Deloitte as a senior consultant where he serves clients as a subject matter expert in IT operations, cloud strategy, DevOps, Production Operations, etc." diff --git a/data/speakers/2017/toronto/jason-hand.yml b/data/speakers/2017/toronto/jason-hand.yml new file mode 100644 index 00000000000..b6ffcdfd9c7 --- /dev/null +++ b/data/speakers/2017/toronto/jason-hand.yml @@ -0,0 +1,3 @@ +name: "Jason Hand" +twitter: "jasonhand" +bio: "DevOps Evangelist at VictorOps, organizer of DevOpsDays - Rockies, author of \"ChatOps for Dummies\", co-host of \"Community Pulse\" (a podcast on building Community within Tech), and host of a number of DevOps related events in the Denver/Boulder area. Jason has spent the last 20 months presenting and building content on a number of DevOps topics such as Blameless Post-mortems, ChatOps, and the value of context within incident management. A frequent speaker at DevOps events around the country, Jason enjoys talking to audiences large and small on a variety of technical and non-technical subjects." diff --git a/data/speakers/2017/toronto/mia-henderson.yml b/data/speakers/2017/toronto/mia-henderson.yml new file mode 100644 index 00000000000..d1add577a88 --- /dev/null +++ b/data/speakers/2017/toronto/mia-henderson.yml @@ -0,0 +1,3 @@ +name: "Mia Henderson" +twitter: "smackmiaround" +bio: "Mia Henderson is a Site Reliability Engineer at PagerDuty. She loves nights without pages and cycling around Toronto. Mia used to play roller derby, which is why she has the weird twitter handle @smackmiaround (it's her old derby name)." diff --git a/data/speakers/2017/toronto/philippe-tremblay.yml b/data/speakers/2017/toronto/philippe-tremblay.yml new file mode 100644 index 00000000000..7c11973fed6 --- /dev/null +++ b/data/speakers/2017/toronto/philippe-tremblay.yml @@ -0,0 +1,3 @@ +name: "Philippe Tremblay" +twitter: "philtrem2000" +bio: "DevOpsDays Toronto Co-organizer, DevOps Lead at the Healthcare of Ontario Pension Plan" diff --git a/data/speakers/2017/toronto/roderick-randolph.yml b/data/speakers/2017/toronto/roderick-randolph.yml new file mode 100644 index 00000000000..155f0de8755 --- /dev/null +++ b/data/speakers/2017/toronto/roderick-randolph.yml @@ -0,0 +1,3 @@ +name: "Roderick Randolph" +twitter: "" +bio: "Roderick is a Lead Software Engineer at Capital One where he leads all things DevOps for the Capital One Canada business including building, automating, and migrating infrastructure to the cloud. He currently lives in Toronto but is originally from a small town in the State of Virginia." diff --git a/data/speakers/2017/zurich/alex-lichtenberger.yml b/data/speakers/2017/zurich/alex-lichtenberger.yml deleted file mode 100644 index a65825b547e..00000000000 --- a/data/speakers/2017/zurich/alex-lichtenberger.yml +++ /dev/null @@ -1,3 +0,0 @@ -name: "Alex Lichtenberger" -twitter: "" -bio: "" diff --git a/data/speakers/2017/zurich/alvaro-videla.yml b/data/speakers/2017/zurich/alvaro-videla.yml deleted file mode 100644 index ee6fddde0b0..00000000000 --- a/data/speakers/2017/zurich/alvaro-videla.yml +++ /dev/null @@ -1,3 +0,0 @@ -name: "Alvaro Videla" -twitter: "old_sound" -bio: "Alvaro Videla works as a Distributed Systems Engineer and previously was a Core Developer for RabbitMQ. Before moving to Europe he used to work in Shanghai where he helped building one of Germany's biggest dating websites. He co-authored the book \"RabbitMQ in Action\" for Manning Publishing. Some of his open source projects can be found here: http://github.com/videlalvaro. Apart from code related stuff he likes traveling with his wife, listening/playing music and reading books." diff --git a/data/speakers/2017/zurich/beat-stutz.yml b/data/speakers/2017/zurich/beat-stutz.yml deleted file mode 100644 index d8c60258022..00000000000 --- a/data/speakers/2017/zurich/beat-stutz.yml +++ /dev/null @@ -1,3 +0,0 @@ -name: "Beat Stutz" -twitter: "" -bio: "" diff --git a/data/speakers/2017/zurich/charity-majors.yml b/data/speakers/2017/zurich/charity-majors.yml deleted file mode 100644 index be9e258b390..00000000000 --- a/data/speakers/2017/zurich/charity-majors.yml +++ /dev/null @@ -1,3 +0,0 @@ -name: "Charity Majors" -twitter: "mipsytipsy" -bio: "Charity Majors is the cofounder and CTO of Honeycomb, a new startup focused on mining machine data. Previously, Charity ran infrastructure at Parse and was an engineering manager at Facebook. She also worked with the RocksDB team to build and deploy the world’s first Mongo + Rocks in production. Charity likes single malt scotch." diff --git a/data/speakers/2017/zurich/chris-van-tuin.yml b/data/speakers/2017/zurich/chris-van-tuin.yml deleted file mode 100644 index aa0e6b5c276..00000000000 --- a/data/speakers/2017/zurich/chris-van-tuin.yml +++ /dev/null @@ -1,3 +0,0 @@ -name: "Chris Van Tuin" -twitter: "" -bio: "Chris Van Tuin, Chief Technologist at Red Hat, has over 20 years of experience in IT and Software. Since joining Red Hat in 2005, Chris has been architecting solutions for strategic customers and partners with a focus on emerging technologies" diff --git a/data/speakers/2017/zurich/cyrill-ruettimann.yml b/data/speakers/2017/zurich/cyrill-ruettimann.yml deleted file mode 100644 index c404fb41ddc..00000000000 --- a/data/speakers/2017/zurich/cyrill-ruettimann.yml +++ /dev/null @@ -1,3 +0,0 @@ -name: "Cyrill Rüttimann" -twitter: "" -bio: "" diff --git a/data/speakers/2017/zurich/dan-reif.yml b/data/speakers/2017/zurich/dan-reif.yml deleted file mode 100644 index 414a5720bda..00000000000 --- a/data/speakers/2017/zurich/dan-reif.yml +++ /dev/null @@ -1,3 +0,0 @@ -name: "Dan Reif" -twitter: "" -bio: "" diff --git a/data/speakers/2017/zurich/dave-halter.yml b/data/speakers/2017/zurich/dave-halter.yml deleted file mode 100644 index 365898fee79..00000000000 --- a/data/speakers/2017/zurich/dave-halter.yml +++ /dev/null @@ -1,3 +0,0 @@ -name: "Dave Halter" -twitter: "" -bio: "" diff --git a/data/speakers/2017/zurich/dirk-lehmann.yml b/data/speakers/2017/zurich/dirk-lehmann.yml deleted file mode 100644 index d9486fcc8ec..00000000000 --- a/data/speakers/2017/zurich/dirk-lehmann.yml +++ /dev/null @@ -1,4 +0,0 @@ -name: "Dirk Lehmann" -twitter: "doergn" -bio: "I'm doing the technical operations of SAPs cloud based ride sharing solution \"TwoGo by SAP\". -I give external talks and presentations (e.g. DevOpsDays Paris 2015, Entwicklertag Karlsruhe, Beyond Borders MeetUp -DevOps Amsterdam, Continuous Lifecycle 2015, Delivery of Things World 2016) on Continuous Delivery and DevOps (with focus on large enterprises), as well as SAP internal workshops on these subjects." diff --git a/data/speakers/2017/zurich/emanuel-kleindienst.yml b/data/speakers/2017/zurich/emanuel-kleindienst.yml deleted file mode 100644 index 1c23cd46c31..00000000000 --- a/data/speakers/2017/zurich/emanuel-kleindienst.yml +++ /dev/null @@ -1,3 +0,0 @@ -name: "Emanuel Kleindienst" -twitter: "" -bio: "" diff --git a/data/speakers/2017/zurich/eric-maxwell.yml b/data/speakers/2017/zurich/eric-maxwell.yml deleted file mode 100644 index 2c1e32f7c3d..00000000000 --- a/data/speakers/2017/zurich/eric-maxwell.yml +++ /dev/null @@ -1,3 +0,0 @@ -name: "Eric Maxwell" -twitter: "iamericmaxwell" -bio: "Eric Maxwell is a Solutions Engineer at Chef Software and is focused on making companies more awesome by helping them \"do the DevOps\" and enabling them to ship at velocity. Eric has helped dozens of the world’s top companies adopt Chef tools and DevOps methodologies while assisting with their DevOps transformation. Based in Portland, Oregon, USA, Eric runs the Chef PDX meetup and is active on the speaker circuit spreading the love of DevOps. In past lives, Eric was a back-end C# engineer, a big-data engineer, and a professional social engineer." diff --git a/data/speakers/2017/zurich/hannah-foxwell.yml b/data/speakers/2017/zurich/hannah-foxwell.yml deleted file mode 100644 index 5eb6d883a17..00000000000 --- a/data/speakers/2017/zurich/hannah-foxwell.yml +++ /dev/null @@ -1,3 +0,0 @@ -name: "Hannah Foxwell" -twitter: "HannahFoxwell" -bio: "Hannah is Product Manager at Server Density, HumanOps champion, HugOps evangelist and recovering DevOps consultant. Hannah believes that the health of your infrastructure is not just about hardware, software, automation and uptime - It also includes the health and wellbeing of your team." diff --git a/data/speakers/2017/zurich/henri-dubois-ferriere.yml b/data/speakers/2017/zurich/henri-dubois-ferriere.yml deleted file mode 100644 index cf66e49bcf7..00000000000 --- a/data/speakers/2017/zurich/henri-dubois-ferriere.yml +++ /dev/null @@ -1,3 +0,0 @@ -name: "Henri Dubois-Ferriere" -twitter: "" -bio: "" diff --git a/data/speakers/2017/zurich/jorge-salamero-sanz.yml b/data/speakers/2017/zurich/jorge-salamero-sanz.yml deleted file mode 100644 index 812dc635048..00000000000 --- a/data/speakers/2017/zurich/jorge-salamero-sanz.yml +++ /dev/null @@ -1,3 +0,0 @@ -name: "Jorge Salamero Sanz" -twitter: "" -bio: "" diff --git a/data/speakers/2017/zurich/maik-wojcieszak.yml b/data/speakers/2017/zurich/maik-wojcieszak.yml deleted file mode 100644 index c31e538ea05..00000000000 --- a/data/speakers/2017/zurich/maik-wojcieszak.yml +++ /dev/null @@ -1,3 +0,0 @@ -name: "Maik Wojcieszak" -twitter: "" -bio: "Maik is writing code since he got his first computer in 1982. As co-founder and development lead of wobe-systems, Maik and his team are inventing strategies and software for industrial automation. To address topics like team communication, agile development, lean management and innovation, Maik founded getNext IT as a consulting firm and works as a lecturer at the University of Applied Sciences of Kiel. He is passionate about Lean Agile, publishes articles and speaks at conferences about technical and organizational topics." diff --git a/data/speakers/2017/zurich/manuel-schweizer.yml b/data/speakers/2017/zurich/manuel-schweizer.yml deleted file mode 100644 index 2eb00d5d8df..00000000000 --- a/data/speakers/2017/zurich/manuel-schweizer.yml +++ /dev/null @@ -1,3 +0,0 @@ -name: "Manuel Schweizer" -twitter: "geitguet" -bio: "Manuel Schweizer is the founder of cloudscale.ch and a member of the board at the SwissIX Internet Exchange" diff --git a/data/speakers/2017/zurich/suzie-prince.yml b/data/speakers/2017/zurich/suzie-prince.yml deleted file mode 100644 index 1ef86089d5e..00000000000 --- a/data/speakers/2017/zurich/suzie-prince.yml +++ /dev/null @@ -1,3 +0,0 @@ -name: "Suzie Prince" -twitter: "pm_suzie" -bio: "Suzie is Head of Product, ThoughtWorks Products and has over ten years of experience in designing, building, and delivering software for large and small organizations in a variety of domains." diff --git a/data/speakers/2017/zurich/tharmes-siva.yml b/data/speakers/2017/zurich/tharmes-siva.yml deleted file mode 100644 index 6ea637b0a63..00000000000 --- a/data/speakers/2017/zurich/tharmes-siva.yml +++ /dev/null @@ -1,3 +0,0 @@ -name: "Tharmes Siva" -twitter: "" -bio: "Tharmes Siva is a Solutions Engineer at Riverbed the Application Performance Company. Throughout his career in the IT for over 12 years(HPE, Dell EMC, Credit Suisse, Medi24) he is clear about one topic, being key for success \"Application Performance = Business Performance\". Devops is a team sport and part of it. In the free time, he enjoys discovering the World and doing sports." diff --git a/data/speakers/2017/zurich/thomas-philipona.yml b/data/speakers/2017/zurich/thomas-philipona.yml deleted file mode 100644 index 72d7ee23cc5..00000000000 --- a/data/speakers/2017/zurich/thomas-philipona.yml +++ /dev/null @@ -1,3 +0,0 @@ -name: "Thomas Philipona" -twitter: "" -bio: "Thomas Philipona is CTO and Head of Middleware & APPUiO at Puzzle ITC. He is amongst others responsible for the continuous integration and delivery processes at Puzzle as well for the composition of a Swiss Container Platform." diff --git a/data/sponsors/agilergo.yml b/data/sponsors/agilergo.yml new file mode 100644 index 00000000000..9480ed37fbc --- /dev/null +++ b/data/sponsors/agilergo.yml @@ -0,0 +1,2 @@ +name: "Agilergo" +url: "http://www.jp.agilergo.com/" diff --git a/data/sponsors/asg.yml b/data/sponsors/asg.yml new file mode 100644 index 00000000000..16dd3c05f09 --- /dev/null +++ b/data/sponsors/asg.yml @@ -0,0 +1,3 @@ +name: "Advanced Systems Group" +url: "https://www.virtual.com" +twitter: "Virtual_com" diff --git a/data/sponsors/basefarm.yml b/data/sponsors/basefarm.yml new file mode 100644 index 00000000000..671ef05b46c --- /dev/null +++ b/data/sponsors/basefarm.yml @@ -0,0 +1,2 @@ +name: "Basefarm" +url: "http://www.basefarm.com" diff --git a/data/sponsors/boeing-vancouver.yml b/data/sponsors/boeing-vancouver.yml new file mode 100644 index 00000000000..a5a4dd43cd2 --- /dev/null +++ b/data/sponsors/boeing-vancouver.yml @@ -0,0 +1,2 @@ +name: "Boeing Vancouver" +url: "http://www.boeingvancouver.com/" diff --git a/data/sponsors/cloudops.yml b/data/sponsors/cloudops.yml new file mode 100644 index 00000000000..51980b7e189 --- /dev/null +++ b/data/sponsors/cloudops.yml @@ -0,0 +1,3 @@ +name: "CloudOps" +url: "http://www.cloudops.com/" +twitter: "CloudOps_" diff --git a/data/sponsors/2016-concur.yml b/data/sponsors/concur.yml similarity index 100% rename from data/sponsors/2016-concur.yml rename to data/sponsors/concur.yml diff --git a/data/sponsors/creationline.yml b/data/sponsors/creationline.yml new file mode 100644 index 00000000000..7e7fe21ca60 --- /dev/null +++ b/data/sponsors/creationline.yml @@ -0,0 +1,2 @@ +name: "Creationline" +url: "https://www.creationline.com" diff --git a/data/sponsors/croc.yml b/data/sponsors/croc.yml new file mode 100644 index 00000000000..ff1f77137f5 --- /dev/null +++ b/data/sponsors/croc.yml @@ -0,0 +1,2 @@ +name: "Croc" +url: "http://www.croc.ru/" diff --git a/data/sponsors/googlecloud.yml b/data/sponsors/googlecloud.yml new file mode 100644 index 00000000000..9cc7eab6df4 --- /dev/null +++ b/data/sponsors/googlecloud.yml @@ -0,0 +1,3 @@ + +name: "Google Cloud" +url: "https://cloud.google.com" diff --git a/data/sponsors/inedo.yml b/data/sponsors/inedo.yml new file mode 100644 index 00000000000..58f06fef12f --- /dev/null +++ b/data/sponsors/inedo.yml @@ -0,0 +1,3 @@ +name: "Inedo" +url: "http://inedo.com" +twitter: inedo diff --git a/data/sponsors/loyaltyone.yml b/data/sponsors/loyaltyone.yml new file mode 100644 index 00000000000..3af171672cd --- /dev/null +++ b/data/sponsors/loyaltyone.yml @@ -0,0 +1,3 @@ +name: "LoyaltyOne" +url: "http://www.loyalty.com/" +twitter: "LoyaltyOne" \ No newline at end of file diff --git a/data/sponsors/mesosphere.yml b/data/sponsors/mesosphere.yml new file mode 100644 index 00000000000..855409f1cd4 --- /dev/null +++ b/data/sponsors/mesosphere.yml @@ -0,0 +1,3 @@ +name: "Mesosphere" +url: "https://mesosphere.com/" +twitter: "mesosphere" diff --git a/data/sponsors/scalyr.yml b/data/sponsors/scalyr.yml new file mode 100644 index 00000000000..94e68aef4b9 --- /dev/null +++ b/data/sponsors/scalyr.yml @@ -0,0 +1,3 @@ +name: "Scalyr" +url: "https://www.scalyr.com" +twitter: "scalyr" diff --git a/data/sponsors/unbounce.yml b/data/sponsors/unbounce.yml new file mode 100644 index 00000000000..46378c674f5 --- /dev/null +++ b/data/sponsors/unbounce.yml @@ -0,0 +1,2 @@ +name: "Unbounce" +url: "http://careers.unbounce.com/" diff --git a/data/sponsors/valtech.yml b/data/sponsors/valtech.yml new file mode 100644 index 00000000000..014a9ec48d2 --- /dev/null +++ b/data/sponsors/valtech.yml @@ -0,0 +1,2 @@ +name: "Valtech" +url: "https://www.valtech.nl/" diff --git a/gulp/config.js b/gulp/config.js new file mode 100644 index 00000000000..a42fd45c813 --- /dev/null +++ b/gulp/config.js @@ -0,0 +1,35 @@ +var src = '.'; +var build = 'build'; +var development = 'build/development'; +var production = 'build/production'; +var srcAssets = '../static/'; +var developmentAssets = 'build/development'; +var productionAssets = 'build/production/static'; + +module.exports = { + browsersync: { + development: { + server: { + baseDir: [development, build, src] + }, + port: 9999, + files: [ + developmentAssets + '/css/*.css', + developmentAssets + '/js/*.js', + developmentAssets + '/img/**', + developmentAssets + '/fonts/*' + ] + } + }, + delete: { + src: [developmentAssets] + }, + + hugo: { + development: { + src: src, + dest: development, + config: 'config.toml' + } + } +}; diff --git a/gulp/tasks/build.js b/gulp/tasks/build.js new file mode 100644 index 00000000000..ce0241145cc --- /dev/null +++ b/gulp/tasks/build.js @@ -0,0 +1,11 @@ +var gulp = require('gulp'), + runSequence = require('run-sequence'); +/** + * Run all tasks needed for a build in defined order + */ +gulp.task('build', function(callback) { + runSequence('delete', [ + 'hugo' + ], + callback); +}); diff --git a/gulp/tasks/copy-css.js b/gulp/tasks/copy-css.js new file mode 100644 index 00000000000..a27353caa21 --- /dev/null +++ b/gulp/tasks/copy-css.js @@ -0,0 +1,6 @@ +var gulp = require('gulp'); + +gulp.task('copy-css', function(){ + return gulp.src('public/css/*.css') + .pipe(gulp.dest('staging/css')) +}) diff --git a/gulp/tasks/copy-js.js b/gulp/tasks/copy-js.js new file mode 100644 index 00000000000..8466f4dde56 --- /dev/null +++ b/gulp/tasks/copy-js.js @@ -0,0 +1,6 @@ +var gulp = require('gulp'); + +gulp.task('copy-js', function(){ + return gulp.src('public/js/*min.js') + .pipe(gulp.dest('staging/js')) +}) diff --git a/gulp/tasks/copy-static-files.js b/gulp/tasks/copy-static-files.js new file mode 100644 index 00000000000..f5d474a87a5 --- /dev/null +++ b/gulp/tasks/copy-static-files.js @@ -0,0 +1,33 @@ +var gulp = require('gulp'), + runSequence = require('run-sequence'); + +gulp.task('copy-misc-files', function() { + return gulp.src(['public/sitemap.xml', 'public/**/index.xml', 'public/tags/**/*.xml', 'public/**/sharing.jpg', 'public/favicon*', 'public/apple-icon*', 'public/android-icon*', 'public/ms-icon*', 'public/manifest.json', 'public/browserconfig.xml', 'public/**/*.pdf','public/_redirects', 'public/robots.txt']) + .pipe(gulp.dest('dist')); +}); + +gulp.task('copy-fonts', function() { + return gulp.src('public/fonts/**/*.*') + .pipe(gulp.dest('dist/fonts')); +}) + +gulp.task('copy-css-maps', function() { + return gulp.src('public/css/**/*.map') + .pipe(gulp.dest('dist/css')); +}) + +// gulp.task('copy-static-files', function(callback) { +// runSequence('copy-misc-files', 'copy-fonts', 'copy-css-maps', +// callback +// ) +// }) + +gulp.task('copy-static-files', ['copy-misc-files', 'copy-fonts', 'copy-css-maps']) + + +// gulp.task('copy-images', function(callback) { +// return gulp.src(['public/**/*.png', 'public/**/*.jpg', +// '!public/favicon*', '!public/apple-icon*', '!public/android-icon*', '!public/ms-icon*','!public/img/sponsors/*.png', '!public/img/sponsors/*.jpg','!public/events/**/logo-square.*' +// ]) +// .pipe(gulp.dest('staging')); +// }) diff --git a/gulp/tasks/default.js b/gulp/tasks/default.js new file mode 100644 index 00000000000..2a505bb1c44 --- /dev/null +++ b/gulp/tasks/default.js @@ -0,0 +1,24 @@ +var gulp = require('gulp'), + runSequence = require('run-sequence'); + +// gulp.task('default', function (callback) { +// runSequence('copy-js', 'copy-css', 'copy-images', 'copy-html', 'revision', 'revision-update', 'copy-static-files', +// callback +// ) +// }) + +gulp.task('default', function (callback) { + runSequence('responsive-images', 'copy-static-files', 'copy-js', 'copy-css', 'process-html', 'revision', 'revision-update') +}) + +// removing optimize-images from the sequence as it causes netlify to timeout + +// first retina-ready all non-icon images and copy to the staging directory * +// optimize all images in the staging directory (try to use cache) * (maybe do this first?) +// copy all assets that are not already in the staging directory (javascript and CSS files) +// process html files to minify and use retina images +// apply cache-busting to all non-icon images, javascript files, and css files and output them to the dist directory +// update html/css/xml files to use the new references (take them from the public folder and put them in the dist directory) +// copy fonts from public to dist +// copy all icon images to the dist directory +// copy pdf and sitemap files from the public folder to the dist directory diff --git a/gulp/tasks/delete.js b/gulp/tasks/delete.js new file mode 100644 index 00000000000..3bb92ef4815 --- /dev/null +++ b/gulp/tasks/delete.js @@ -0,0 +1,7 @@ +var gulp = require('gulp'), + del = require('del'); + + +gulp.task('delete', function() { + return del.sync(['public/', 'staging/', 'dist/']); +}) diff --git a/gulp/tasks/development/local-imagemin.js b/gulp/tasks/development/local-imagemin.js new file mode 100644 index 00000000000..43cb034433f --- /dev/null +++ b/gulp/tasks/development/local-imagemin.js @@ -0,0 +1,25 @@ +var gulp = require('gulp'), + imagemin = require('gulp-imagemin'), + cache = require('gulp-cache'); +runSequence = require('run-sequence'); + + + +gulp.task('optimize-local-content-images', function() { + return gulp.src(['static/**/*.+(png|jpg|gif|svg)']) + .pipe(cache(imagemin())) + .pipe(gulp.dest('./static/')) +}); + +gulp.task('optimize-local-theme-images', function() { + return gulp.src(['../static/**/*.+(png|jpg|gif|svg)','!public/favicon*', '!public/apple-icon*', '!public/android-icon*', '!public/ms-icon*']) + .pipe(cache(imagemin())) + .pipe(gulp.dest('../static')) +}); + + +gulp.task('optimize-local-images', function(callback) { + runSequence('optimize-local-content-images', 'optimize-local-theme-images', + callback + ) +}) diff --git a/gulp/tasks/hugo.js b/gulp/tasks/hugo.js new file mode 100644 index 00000000000..d28c41bb93f --- /dev/null +++ b/gulp/tasks/hugo.js @@ -0,0 +1,11 @@ +var gulp = require('gulp'), + cp = require('child_process'); + + /** + * Build the Hugo Site + */ + gulp.task('hugo', function(done) { + + return cp.spawn('hugo', ['-v', '--destination=' + 'public/', '--config=' + 'config.toml'], { stdio: 'inherit' }) + .on('close', done); + }); diff --git a/gulp/tasks/optimize-images.js b/gulp/tasks/optimize-images.js new file mode 100644 index 00000000000..45a36132cc7 --- /dev/null +++ b/gulp/tasks/optimize-images.js @@ -0,0 +1,11 @@ +var gulp = require('gulp'), + imagemin = require('gulp-imagemin'), + cache = require('gulp-cache'); + + gulp.task('optimize-images', function(){ + return gulp.src(['public/**/*.+(png|jpg|gif|svg)','!public/favicon*', '!public/apple-icon*', '!public/android-icon*', '!public/ms-icon*']) + .pipe(cache(imagemin())) + .pipe(gulp.dest('public')) + }); + +// this takes 11 minutes on Matt's MacBook diff --git a/gulp/tasks/preprod.js b/gulp/tasks/preprod.js new file mode 100644 index 00000000000..29d89cfb2a1 --- /dev/null +++ b/gulp/tasks/preprod.js @@ -0,0 +1,18 @@ +var gulp = require('gulp'), + runSequence = require('run-sequence'); + +gulp.task('preprod', function (callback) { + runSequence('responsive-images', 'copy-js', 'copy-css', 'process-html', 'revision', 'revision-update', 'copy-static-files', + callback + ) +}) + +// first retina-ready all non-icon images and copy to the staging directory * +// optimize all images in the staging directory (try to use cache) * (maybe do this first?) +// copy all assets that are not already in the staging directory (javascript and CSS files) +// process html files to minify and use retina images +// apply cache-busting to all non-icon images, javascript files, and css files and output them to the dist directory +// update html/css/xml files to use the new references (take them from the public folder and put them in the dist directory) +// copy fonts from public to dist +// copy all icon images to the dist directory +// copy pdf and sitemap files from the public folder to the dist directory diff --git a/gulp/tasks/process-html.js b/gulp/tasks/process-html.js new file mode 100644 index 00000000000..c260260a879 --- /dev/null +++ b/gulp/tasks/process-html.js @@ -0,0 +1,37 @@ +var gulp = require('gulp'), + htmlmin = require('gulp-htmlmin'), + imgRetina = require('gulp-img-retina'), + runSequence = require('run-sequence'); + +gulp.task('process-html', function(callback) { + runSequence('min-html', 'retina-html', + callback + ) +}) + +gulp.task('copy-html', function(){ + return gulp.src('public/**/*.html') + .pipe(gulp.dest('staging')) +}) + +var retinaOpts = { + // Your options here. +}; + +gulp.task('min-html', function() { + return gulp.src('public/**/*.html') + .pipe(htmlmin({ + collapseWhitespace: true + })) + .pipe(gulp.dest('staging')); +}) +// min-html was taking forever + +gulp.task('retina-html', function() { + return gulp.src(['staging/**/*.html']) + .pipe(imgRetina(retinaOpts)) + .on('error', function(e) { + console.log(e.message); + }) + .pipe(gulp.dest('staging')); +}) diff --git a/gulp/tasks/responsive-images.js b/gulp/tasks/responsive-images.js new file mode 100644 index 00000000000..353a03fded8 --- /dev/null +++ b/gulp/tasks/responsive-images.js @@ -0,0 +1,165 @@ +var gulp = require('gulp'), + responsive = require('gulp-responsive'); +runSequence = require('run-sequence'); + +// gulp.task('responsive-images', function(callback) { +// runSequence('responsive-images-logos','responsive-sponsor-images', +// callback +// ) +// }); + +gulp.task('responsive-images', ['responsive-images-logos', 'responsive-sponsor-images', 'responsive-organizer-images', 'responsive-images-remaining']) + + + +gulp.task('responsive-images-logos', function() { + return gulp.src('public/**/*logo-square.jpg') + .pipe(responsive({ + // produce multiple images from one source + + '**/*logo-square.jpg': [{ + width: 250, + height: 250, + }, { + width: 500, + height: 500, + rename: { + suffix: '@2x' + } + }, { + width: 1500, + height: 1500, + rename: { + suffix: '@3x' + } + }], + }, { + // global configuration + quality: 80, + errorOnEnlargement: false, + withoutEnlargement: false, + progressive: true, + silent: true, + withMetadata: false, + ignoreAspectRatio: true, + })) + .pipe(gulp.dest('staging')); +}); + +gulp.task('responsive-organizer-images', function() { + return gulp.src('public/**/organizers/*.jpg') + .pipe(responsive({ + '**/*.jpg': [{ + width: 300, + height: 300, + }, { + width: 600, + height: 600, + rename: { + suffix: '@2x' + } + }, { + width: 900, + height: 900, + rename: { + suffix: '@3x' + } + }], + }, { + // global configuration + quality: 80, + errorOnEnlargement: false, + withoutEnlargement: false, + progressive: true, + silent: true, + withMetadata: false, + ignoreAspectRatio: true, + })) + .pipe(gulp.dest('staging')); +}); + +gulp.task('responsive-sponsor-images', function() { + return gulp.src(['public/img/sponsors/*.png', 'public/img/sponsors/*.jpg']) + .pipe(responsive({ + '*.png': [{ + width: 200 + }, { + width: 400, + rename: { + suffix: '@2x' + } + }, { + width: 600, + rename: { + suffix: '@3x' + } + }], + '*.jpg': [{ + width: 200 + }, { + width: 400, + rename: { + suffix: '@2x' + } + }, { + width: 600, + rename: { + suffix: '@3x' + } + }] + }, { + // global configuration + quality: 80, + errorOnEnlargement: false, + withoutEnlargement: false, + progressive: true, + silent: true, + withMetadata: false, + })) + .pipe(gulp.dest('staging/img/sponsors')); +}); + + +gulp.task('responsive-images-remaining', function() { + return gulp.src(['public/**/*.png', 'public/**/*.jpg', + '!public/favicon*', '!public/apple-icon*', '!public/android-icon*', '!public/ms-icon*', '!public/**/sharing.jpg', '!**/logo-square.*', '!public/img/sponsor/*.*', '!public/**/organizers/*.jpg', + ]) + .pipe(responsive({ + // produce multiple images from one source + '**/*.png': [{ + width: '100%' + }, { + width: '100%', + rename: { + suffix: '@2x' + } + }, { + width: '100%', + rename: { + suffix: '@3x' + } + }], + '**/*.jpg': [{ + width: '100%' + }, { + width: '100%', + rename: { + suffix: '@2x' + } + }, { + width: '100%', + rename: { + suffix: '@3x' + } + }] + }, { + // global configuration + quality: 80, + errorOnEnlargement: false, + withoutEnlargement: false, + progressive: true, + silent: true, + withMetadata: false, + })) + .pipe(gulp.dest('staging')); +}); diff --git a/gulp/tasks/revision.js b/gulp/tasks/revision.js new file mode 100644 index 00000000000..795f527d9a3 --- /dev/null +++ b/gulp/tasks/revision.js @@ -0,0 +1,20 @@ +var gulp = require('gulp'), + rev = require('gulp-rev'), + revReplace = require('gulp-rev-replace'); + + +gulp.task('revision', function(){ + return gulp.src(['staging/**/*.+(png|jpg|gif|svg|js|css)','!staging/favicon*', '!staging/apple-icon*', '!staging/android-icon*', '!staging/ms-icon*', '!staging/**/sharing.jpg']) + .pipe(rev()) + .pipe(gulp.dest('dist')) + .pipe(rev.manifest()) + .pipe(gulp.dest('dist')) +}); + +gulp.task('revision-update', function(){ + var manifest = gulp.src('dist/rev-manifest.json'); + + return gulp.src(['staging/**/*.html', 'staging/**/*.xml', 'staging/**/*.css']) + .pipe(revReplace({manifest: manifest, replaceInExtensions: ['.html', '.xml', '.css']})) + .pipe(gulp.dest('dist')); +}); diff --git a/gulpfile.js b/gulpfile.js index 048acc756d6..a6455a7e871 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -1,8 +1,4 @@ -var gulp = require('gulp'), - htmlmin = require('gulp-htmlmin'); +var requireDir = require('require-dir'); -gulp.task('min-html', function(){ - return gulp.src('public/**/*.html') - .pipe(htmlmin({collapseWhitespace: true})) - .pipe(gulp.dest('public')); -}); +// Require all tasks in gulp/tasks, including subfolders +requireDir('./gulp/tasks', { recurse: true }); diff --git a/netlify.toml b/netlify.toml new file mode 100644 index 00000000000..407d33e549b --- /dev/null +++ b/netlify.toml @@ -0,0 +1,21 @@ +# Production context: All deploys to the main +# repository branch will inherit these settings. +[context.production] + #command = "bin/netlify.sh" + #publish = "public/" + command = "bin/netlify-production.sh" + publish = "dist/" + +# Deploy Preview context: All Deploy Previews +# will inherit these settings. +[context.deploy-preview] + publish = "public/" + command = "bin/netlify.sh" + +[context.test] + command = "bin/netlify-production.sh" + publish = "dist/" + +[context.updates-for-new-theme] + command = "bin/netlify-production.sh" + publish = "dist/" diff --git a/package.json b/package.json index dfbb4f4607d..b29a88f1466 100644 --- a/package.json +++ b/package.json @@ -8,7 +8,7 @@ }, "repository": { "type": "git", - "url": "git+https://github.com/devopsdays/devopsdays-web.git" + "url": "https://github.com/devopsdays/devopsdays-web.git" }, "author": "Matt Stratton", "license": "MIT", @@ -17,7 +17,17 @@ }, "homepage": "https://github.com/devopsdays/devopsdays-web#readme", "devDependencies": { + "del": "^2.2.2", "gulp": "^3.9.1", - "gulp-htmlmin": "^3.0.0" + "gulp-cache": "^0.4.5", + "gulp-htmlmin": "^3.0.0", + "gulp-imagemin": "^3.1.1", + "gulp-img-retina": "0.0.4", + "gulp-responsive": "^2.7.0", + "gulp-rev": "^7.1.2", + "gulp-rev-replace": "^0.4.3", + "gulp-useref": "^3.1.2", + "require-dir": "^0.3.0", + "run-sequence": "^1.2.2" } } diff --git a/static/events/2017-atlanta/logo-square.jpg b/static/events/2017-atlanta/logo-square.jpg new file mode 100644 index 00000000000..e5066a63629 Binary files /dev/null and b/static/events/2017-atlanta/logo-square.jpg differ diff --git a/static/events/2017-chicago/organizers/allie-richards.jpg b/static/events/2017-chicago/organizers/allie-richards.jpg new file mode 100644 index 00000000000..412dacffa89 Binary files /dev/null and b/static/events/2017-chicago/organizers/allie-richards.jpg differ diff --git a/static/events/2017-dallas/logo-square.jpg b/static/events/2017-dallas/logo-square.jpg index 89aff094aca..945464118e7 100644 Binary files a/static/events/2017-dallas/logo-square.jpg and b/static/events/2017-dallas/logo-square.jpg differ diff --git a/static/events/2017-dallas/logo.png b/static/events/2017-dallas/logo.png index 29d31e4f14a..1cf85586245 100644 Binary files a/static/events/2017-dallas/logo.png and b/static/events/2017-dallas/logo.png differ diff --git a/static/events/2017-dallas/organizers/annie.jpg b/static/events/2017-dallas/organizers/annie.jpg new file mode 100644 index 00000000000..38d88bd15d7 Binary files /dev/null and b/static/events/2017-dallas/organizers/annie.jpg differ diff --git a/static/events/2017-dallas/organizers/ben.jpg b/static/events/2017-dallas/organizers/ben.jpg new file mode 100644 index 00000000000..b3e8d8d47c3 Binary files /dev/null and b/static/events/2017-dallas/organizers/ben.jpg differ diff --git a/static/events/2017-dallas/organizers/cory.jpg b/static/events/2017-dallas/organizers/cory.jpg new file mode 100644 index 00000000000..a15ff2b72b7 Binary files /dev/null and b/static/events/2017-dallas/organizers/cory.jpg differ diff --git a/static/events/2017-dallas/organizers/gokul.jpg b/static/events/2017-dallas/organizers/gokul.jpg new file mode 100644 index 00000000000..6068c688d18 Binary files /dev/null and b/static/events/2017-dallas/organizers/gokul.jpg differ diff --git a/static/events/2017-dallas/organizers/jack.jpg b/static/events/2017-dallas/organizers/jack.jpg new file mode 100644 index 00000000000..dc5ceacfcaa Binary files /dev/null and b/static/events/2017-dallas/organizers/jack.jpg differ diff --git a/static/events/2017-dallas/organizers/lee.jpg b/static/events/2017-dallas/organizers/lee.jpg new file mode 100644 index 00000000000..c3fcc187267 Binary files /dev/null and b/static/events/2017-dallas/organizers/lee.jpg differ diff --git a/static/events/2017-dallas/organizers/mark.jpg b/static/events/2017-dallas/organizers/mark.jpg new file mode 100644 index 00000000000..b218f20026e Binary files /dev/null and b/static/events/2017-dallas/organizers/mark.jpg differ diff --git a/static/events/2017-dallas/organizers/megan.jpg b/static/events/2017-dallas/organizers/megan.jpg new file mode 100644 index 00000000000..4bc643a73b4 Binary files /dev/null and b/static/events/2017-dallas/organizers/megan.jpg differ diff --git a/static/events/2017-dallas/organizers/michael.jpg b/static/events/2017-dallas/organizers/michael.jpg new file mode 100644 index 00000000000..a63b5119690 Binary files /dev/null and b/static/events/2017-dallas/organizers/michael.jpg differ diff --git a/static/events/2017-dallas/organizers/mike.jpg b/static/events/2017-dallas/organizers/mike.jpg new file mode 100644 index 00000000000..43bda3f46c3 Binary files /dev/null and b/static/events/2017-dallas/organizers/mike.jpg differ diff --git a/static/events/2017-moscow/speakers/ilyasher.jpg b/static/events/2017-moscow/speakers/ilyasher.jpg new file mode 100644 index 00000000000..f8e9c175404 Binary files /dev/null and b/static/events/2017-moscow/speakers/ilyasher.jpg differ diff --git a/static/events/2017-moscow/speakers/nistratov.jpg b/static/events/2017-moscow/speakers/nistratov.jpg new file mode 100644 index 00000000000..d4f340abdf3 Binary files /dev/null and b/static/events/2017-moscow/speakers/nistratov.jpg differ diff --git a/static/events/2017-oslo/DevOpsdays17_partnership_prospectus.pdf b/static/events/2017-oslo/DevOpsdays17_partnership_prospectus.pdf new file mode 100644 index 00000000000..56c5f9c2cf8 Binary files /dev/null and b/static/events/2017-oslo/DevOpsdays17_partnership_prospectus.pdf differ diff --git a/static/events/2017-oslo/logo-square.jpg b/static/events/2017-oslo/logo-square.jpg index 136bd174b92..47f6e8ed4fa 100644 Binary files a/static/events/2017-oslo/logo-square.jpg and b/static/events/2017-oslo/logo-square.jpg differ diff --git a/static/events/2017-oslo/logo.png b/static/events/2017-oslo/logo.png index 4b3fb5743e3..e248d798654 100644 Binary files a/static/events/2017-oslo/logo.png and b/static/events/2017-oslo/logo.png differ diff --git a/static/events/2017-oslo/sponsorship-exclusive-packages.png b/static/events/2017-oslo/sponsorship-exclusive-packages.png new file mode 100644 index 00000000000..f12a3936b0c Binary files /dev/null and b/static/events/2017-oslo/sponsorship-exclusive-packages.png differ diff --git a/static/events/2017-oslo/sponsorship-packages.png b/static/events/2017-oslo/sponsorship-packages.png new file mode 100644 index 00000000000..30b7940b9d2 Binary files /dev/null and b/static/events/2017-oslo/sponsorship-packages.png differ diff --git a/static/events/2017-paris/logo-square.jpg b/static/events/2017-paris/logo-square.jpg new file mode 100644 index 00000000000..f283d2a66a8 Binary files /dev/null and b/static/events/2017-paris/logo-square.jpg differ diff --git a/static/events/2017-philadelphia/logo-square.jpg b/static/events/2017-philadelphia/logo-square.jpg new file mode 100644 index 00000000000..3bf88debc37 Binary files /dev/null and b/static/events/2017-philadelphia/logo-square.jpg differ diff --git a/static/events/2017-seattle/organizers/dan-dicamillo.jpg b/static/events/2017-seattle/organizers/dan-dicamillo.jpg new file mode 100644 index 00000000000..b111bf09fde Binary files /dev/null and b/static/events/2017-seattle/organizers/dan-dicamillo.jpg differ diff --git a/static/events/2017-seattle/organizers/dominica-degrandis.jpg b/static/events/2017-seattle/organizers/dominica-degrandis.jpg new file mode 100644 index 00000000000..45b23c8e2f9 Binary files /dev/null and b/static/events/2017-seattle/organizers/dominica-degrandis.jpg differ diff --git a/static/events/2017-seattle/organizers/jeremy-dyche.jpg b/static/events/2017-seattle/organizers/jeremy-dyche.jpg new file mode 100644 index 00000000000..847c73bd4c4 Binary files /dev/null and b/static/events/2017-seattle/organizers/jeremy-dyche.jpg differ diff --git a/static/events/2017-seattle/organizers/ken-mugrage.jpg b/static/events/2017-seattle/organizers/ken-mugrage.jpg new file mode 100644 index 00000000000..65da58ad016 Binary files /dev/null and b/static/events/2017-seattle/organizers/ken-mugrage.jpg differ diff --git a/static/events/2017-seattle/organizers/michael-goetz.jpg b/static/events/2017-seattle/organizers/michael-goetz.jpg new file mode 100644 index 00000000000..0fb0f7642d6 Binary files /dev/null and b/static/events/2017-seattle/organizers/michael-goetz.jpg differ diff --git a/static/events/2017-seattle/organizers/michael-towbin.jpg b/static/events/2017-seattle/organizers/michael-towbin.jpg new file mode 100644 index 00000000000..572572185ed Binary files /dev/null and b/static/events/2017-seattle/organizers/michael-towbin.jpg differ diff --git a/static/events/2017-seattle/organizers/rob-cummings.jpg b/static/events/2017-seattle/organizers/rob-cummings.jpg new file mode 100644 index 00000000000..8369c81eeac Binary files /dev/null and b/static/events/2017-seattle/organizers/rob-cummings.jpg differ diff --git a/static/events/2017-seattle/organizers/todd-wilson.jpg b/static/events/2017-seattle/organizers/todd-wilson.jpg new file mode 100644 index 00000000000..ea9b5b1a4a7 Binary files /dev/null and b/static/events/2017-seattle/organizers/todd-wilson.jpg differ diff --git a/static/events/2017-toronto/speakers/aaron-aldrich.jpg b/static/events/2017-toronto/speakers/aaron-aldrich.jpg new file mode 100644 index 00000000000..34ff225a2c4 Binary files /dev/null and b/static/events/2017-toronto/speakers/aaron-aldrich.jpg differ diff --git a/static/events/2017-toronto/speakers/adam-lefkowitz.jpg b/static/events/2017-toronto/speakers/adam-lefkowitz.jpg new file mode 100644 index 00000000000..c9290bce42e Binary files /dev/null and b/static/events/2017-toronto/speakers/adam-lefkowitz.jpg differ diff --git a/static/events/2017-toronto/speakers/andreas-grabner.jpg b/static/events/2017-toronto/speakers/andreas-grabner.jpg new file mode 100644 index 00000000000..ec073a19ef9 Binary files /dev/null and b/static/events/2017-toronto/speakers/andreas-grabner.jpg differ diff --git a/static/events/2017-toronto/speakers/arthur-maltson.jpg b/static/events/2017-toronto/speakers/arthur-maltson.jpg new file mode 100644 index 00000000000..b7f83b14409 Binary files /dev/null and b/static/events/2017-toronto/speakers/arthur-maltson.jpg differ diff --git a/static/events/2017-toronto/speakers/augusto-rosa.jpg b/static/events/2017-toronto/speakers/augusto-rosa.jpg new file mode 100644 index 00000000000..7b87a1ce019 Binary files /dev/null and b/static/events/2017-toronto/speakers/augusto-rosa.jpg differ diff --git a/static/events/2017-toronto/speakers/bridget-kromhout.jpg b/static/events/2017-toronto/speakers/bridget-kromhout.jpg new file mode 100644 index 00000000000..941a5085110 Binary files /dev/null and b/static/events/2017-toronto/speakers/bridget-kromhout.jpg differ diff --git a/static/events/2017-toronto/speakers/chris-van-tuin.jpg b/static/events/2017-toronto/speakers/chris-van-tuin.jpg new file mode 100644 index 00000000000..a8f9769abeb Binary files /dev/null and b/static/events/2017-toronto/speakers/chris-van-tuin.jpg differ diff --git a/static/events/2017-toronto/speakers/david-numan.jpg b/static/events/2017-toronto/speakers/david-numan.jpg new file mode 100644 index 00000000000..3cf8834398a Binary files /dev/null and b/static/events/2017-toronto/speakers/david-numan.jpg differ diff --git a/static/events/2017-toronto/speakers/ernest-kugel.jpg b/static/events/2017-toronto/speakers/ernest-kugel.jpg new file mode 100644 index 00000000000..7197d28bb7f Binary files /dev/null and b/static/events/2017-toronto/speakers/ernest-kugel.jpg differ diff --git a/static/events/2017-toronto/speakers/fawzy-manaa.jpg b/static/events/2017-toronto/speakers/fawzy-manaa.jpg new file mode 100644 index 00000000000..b051d8238e2 Binary files /dev/null and b/static/events/2017-toronto/speakers/fawzy-manaa.jpg differ diff --git a/static/events/2017-toronto/speakers/jason-hand.jpg b/static/events/2017-toronto/speakers/jason-hand.jpg new file mode 100644 index 00000000000..537ed8267e7 Binary files /dev/null and b/static/events/2017-toronto/speakers/jason-hand.jpg differ diff --git a/static/events/2017-toronto/speakers/mia-henderson.jpg b/static/events/2017-toronto/speakers/mia-henderson.jpg new file mode 100644 index 00000000000..d1cc1b777b7 Binary files /dev/null and b/static/events/2017-toronto/speakers/mia-henderson.jpg differ diff --git a/utilities/examples/speakers/speaker-full-name.jpg b/static/events/2017-toronto/speakers/philippe-tremblay.jpg similarity index 100% rename from utilities/examples/speakers/speaker-full-name.jpg rename to static/events/2017-toronto/speakers/philippe-tremblay.jpg diff --git a/static/events/2017-toronto/speakers/roderick-randolph.jpg b/static/events/2017-toronto/speakers/roderick-randolph.jpg new file mode 100644 index 00000000000..eab5eb93dc5 Binary files /dev/null and b/static/events/2017-toronto/speakers/roderick-randolph.jpg differ diff --git a/static/events/2017-washington-dc/logo-square.jpg b/static/events/2017-washington-dc/logo-square.jpg new file mode 100644 index 00000000000..37018c52011 Binary files /dev/null and b/static/events/2017-washington-dc/logo-square.jpg differ diff --git a/static/events/2017-zurich/organizers/bastian-widmer.jpg b/static/events/2017-zurich/organizers/bastian-widmer.jpg new file mode 100644 index 00000000000..fb0d8dfd989 Binary files /dev/null and b/static/events/2017-zurich/organizers/bastian-widmer.jpg differ diff --git a/static/events/2017-zurich/organizers/margo-cronin.jpg b/static/events/2017-zurich/organizers/margo-cronin.jpg new file mode 100644 index 00000000000..796cdcecd14 Binary files /dev/null and b/static/events/2017-zurich/organizers/margo-cronin.jpg differ diff --git a/static/events/2017-zurich/organizers/martin-thalmann.jpg b/static/events/2017-zurich/organizers/martin-thalmann.jpg new file mode 100644 index 00000000000..3141c1a97ff Binary files /dev/null and b/static/events/2017-zurich/organizers/martin-thalmann.jpg differ diff --git a/static/events/2017-zurich/organizers/matias-e-fernandez.jpg b/static/events/2017-zurich/organizers/matias-e-fernandez.jpg new file mode 100644 index 00000000000..92463b16f77 Binary files /dev/null and b/static/events/2017-zurich/organizers/matias-e-fernandez.jpg differ diff --git a/static/events/2017-zurich/organizers/roderick-jonsson.jpg b/static/events/2017-zurich/organizers/roderick-jonsson.jpg new file mode 100644 index 00000000000..7188d250473 Binary files /dev/null and b/static/events/2017-zurich/organizers/roderick-jonsson.jpg differ diff --git a/static/events/2017-zurich/organizers/tobias-brunner.jpg b/static/events/2017-zurich/organizers/tobias-brunner.jpg new file mode 100644 index 00000000000..f3e6e9a209e Binary files /dev/null and b/static/events/2017-zurich/organizers/tobias-brunner.jpg differ diff --git a/static/events/2017-zurich/organizers/vittorio-boccone.jpg b/static/events/2017-zurich/organizers/vittorio-boccone.jpg new file mode 100644 index 00000000000..b38f6748ac7 Binary files /dev/null and b/static/events/2017-zurich/organizers/vittorio-boccone.jpg differ diff --git a/static/events/2017-zurich/speakers/alex-lichtenberger.jpg b/static/events/2017-zurich/speakers/alex-lichtenberger.jpg index 7c70726fe37..20d1265da55 100644 Binary files a/static/events/2017-zurich/speakers/alex-lichtenberger.jpg and b/static/events/2017-zurich/speakers/alex-lichtenberger.jpg differ diff --git a/static/img/imet.jpg b/static/img/imet.jpg new file mode 100644 index 00000000000..24d1fab5a0b Binary files /dev/null and b/static/img/imet.jpg differ diff --git a/static/img/pier_v_parking.jpg b/static/img/pier_v_parking.jpg new file mode 100644 index 00000000000..1c21059ad22 Binary files /dev/null and b/static/img/pier_v_parking.jpg differ diff --git a/static/img/sponsors/agilergo.png b/static/img/sponsors/agilergo.png new file mode 100644 index 00000000000..006e34d0c02 Binary files /dev/null and b/static/img/sponsors/agilergo.png differ diff --git a/static/img/sponsors/asg.png b/static/img/sponsors/asg.png new file mode 100644 index 00000000000..ae2d5cd75b9 Binary files /dev/null and b/static/img/sponsors/asg.png differ diff --git a/static/img/sponsors/automic-vancouver.png b/static/img/sponsors/automic-vancouver.png index d28e935a740..ebc26910601 100644 Binary files a/static/img/sponsors/automic-vancouver.png and b/static/img/sponsors/automic-vancouver.png differ diff --git a/static/img/sponsors/ay-tech.png b/static/img/sponsors/ay-tech.png index 1a4d65bdf6c..d5333e2b1ab 100644 Binary files a/static/img/sponsors/ay-tech.png and b/static/img/sponsors/ay-tech.png differ diff --git a/static/img/sponsors/basefarm.png b/static/img/sponsors/basefarm.png new file mode 100644 index 00000000000..fb95d2fa7d5 Binary files /dev/null and b/static/img/sponsors/basefarm.png differ diff --git a/static/img/sponsors/boeing-vancouver.png b/static/img/sponsors/boeing-vancouver.png new file mode 100644 index 00000000000..a80327735b9 Binary files /dev/null and b/static/img/sponsors/boeing-vancouver.png differ diff --git a/static/img/sponsors/chef.png b/static/img/sponsors/chef.png index 39675f62c7f..db2569a85e4 100644 Binary files a/static/img/sponsors/chef.png and b/static/img/sponsors/chef.png differ diff --git a/static/img/sponsors/cloudops.png b/static/img/sponsors/cloudops.png new file mode 100644 index 00000000000..a8b617e97a4 Binary files /dev/null and b/static/img/sponsors/cloudops.png differ diff --git a/static/img/sponsors/2016-concur.png b/static/img/sponsors/concur.png similarity index 100% rename from static/img/sponsors/2016-concur.png rename to static/img/sponsors/concur.png diff --git a/static/img/sponsors/creationline.png b/static/img/sponsors/creationline.png new file mode 100644 index 00000000000..ba2033eeb6f Binary files /dev/null and b/static/img/sponsors/creationline.png differ diff --git a/static/img/sponsors/croc.png b/static/img/sponsors/croc.png new file mode 100644 index 00000000000..5be5351a584 Binary files /dev/null and b/static/img/sponsors/croc.png differ diff --git a/static/img/sponsors/deis.png b/static/img/sponsors/deis.png index 78b52f79af6..384811e425b 100644 Binary files a/static/img/sponsors/deis.png and b/static/img/sponsors/deis.png differ diff --git a/static/img/sponsors/demonware.png b/static/img/sponsors/demonware.png index 8830595746b..ffa9e75163d 100644 Binary files a/static/img/sponsors/demonware.png and b/static/img/sponsors/demonware.png differ diff --git a/static/img/sponsors/ea.png b/static/img/sponsors/ea.png index 5a89c50750c..f0b5333bef5 100644 Binary files a/static/img/sponsors/ea.png and b/static/img/sponsors/ea.png differ diff --git a/static/img/sponsors/googlecloud.png b/static/img/sponsors/googlecloud.png new file mode 100644 index 00000000000..f3b81d01f06 Binary files /dev/null and b/static/img/sponsors/googlecloud.png differ diff --git a/static/img/sponsors/inedo.png b/static/img/sponsors/inedo.png new file mode 100644 index 00000000000..89067cf2781 Binary files /dev/null and b/static/img/sponsors/inedo.png differ diff --git a/static/img/sponsors/itglue.png b/static/img/sponsors/itglue.png index 9d216a2fadd..65766d3c88d 100644 Binary files a/static/img/sponsors/itglue.png and b/static/img/sponsors/itglue.png differ diff --git a/static/img/sponsors/loyaltyone.png b/static/img/sponsors/loyaltyone.png new file mode 100644 index 00000000000..538ac50e428 Binary files /dev/null and b/static/img/sponsors/loyaltyone.png differ diff --git a/static/img/sponsors/mesosphere.png b/static/img/sponsors/mesosphere.png new file mode 100644 index 00000000000..b30c08c19e2 Binary files /dev/null and b/static/img/sponsors/mesosphere.png differ diff --git a/static/img/sponsors/netapp.png b/static/img/sponsors/netapp.png index d3c2acf83fa..92549d9af63 100644 Binary files a/static/img/sponsors/netapp.png and b/static/img/sponsors/netapp.png differ diff --git a/static/img/sponsors/northeastern-university.png b/static/img/sponsors/northeastern-university.png index e90e80f4c29..6fae75c1605 100644 Binary files a/static/img/sponsors/northeastern-university.png and b/static/img/sponsors/northeastern-university.png differ diff --git a/static/img/sponsors/opsgenie.png b/static/img/sponsors/opsgenie.png index 4352229b270..ca33c4b7f1c 100644 Binary files a/static/img/sponsors/opsgenie.png and b/static/img/sponsors/opsgenie.png differ diff --git a/static/img/sponsors/pearlfisher-adaptech.png b/static/img/sponsors/pearlfisher-adaptech.png index 837931b1049..7b58787e12f 100644 Binary files a/static/img/sponsors/pearlfisher-adaptech.png and b/static/img/sponsors/pearlfisher-adaptech.png differ diff --git a/static/img/sponsors/pivotal.png b/static/img/sponsors/pivotal.png index b16a14fdc61..1677c843d7d 100644 Binary files a/static/img/sponsors/pivotal.png and b/static/img/sponsors/pivotal.png differ diff --git a/static/img/sponsors/salesforce.png b/static/img/sponsors/salesforce.png index 7466b59c3b4..68ab925d1ab 100644 Binary files a/static/img/sponsors/salesforce.png and b/static/img/sponsors/salesforce.png differ diff --git a/static/img/sponsors/samsung-rd.png b/static/img/sponsors/samsung-rd.png index 478a8e90bef..fcae41240a6 100644 Binary files a/static/img/sponsors/samsung-rd.png and b/static/img/sponsors/samsung-rd.png differ diff --git a/static/img/sponsors/saucelabs.png b/static/img/sponsors/saucelabs.png index a4a55a1c838..543a942f8f6 100644 Binary files a/static/img/sponsors/saucelabs.png and b/static/img/sponsors/saucelabs.png differ diff --git a/static/img/sponsors/scalar.png b/static/img/sponsors/scalar.png index f33380ba7df..6693f868986 100644 Binary files a/static/img/sponsors/scalar.png and b/static/img/sponsors/scalar.png differ diff --git a/static/img/sponsors/scalyr.png b/static/img/sponsors/scalyr.png new file mode 100644 index 00000000000..56f266d67fa Binary files /dev/null and b/static/img/sponsors/scalyr.png differ diff --git a/static/img/sponsors/software-freedom-school.png b/static/img/sponsors/software-freedom-school.png index 17a7d05ba4f..6da3b7c64dc 100644 Binary files a/static/img/sponsors/software-freedom-school.png and b/static/img/sponsors/software-freedom-school.png differ diff --git a/static/img/sponsors/sourcedgroup.png b/static/img/sponsors/sourcedgroup.png index 65c27c1d9f8..74940197c52 100644 Binary files a/static/img/sponsors/sourcedgroup.png and b/static/img/sponsors/sourcedgroup.png differ diff --git a/static/img/sponsors/statsearchanalytics.png b/static/img/sponsors/statsearchanalytics.png index 59c8935500f..39184192718 100644 Binary files a/static/img/sponsors/statsearchanalytics.png and b/static/img/sponsors/statsearchanalytics.png differ diff --git a/static/img/sponsors/sumologic.png b/static/img/sponsors/sumologic.png index e9cfa3beb79..0c7db8c2f81 100644 Binary files a/static/img/sponsors/sumologic.png and b/static/img/sponsors/sumologic.png differ diff --git a/static/img/sponsors/trinimbus.png b/static/img/sponsors/trinimbus.png index 6534706472f..55132ee7a87 100644 Binary files a/static/img/sponsors/trinimbus.png and b/static/img/sponsors/trinimbus.png differ diff --git a/static/img/sponsors/unbounce.png b/static/img/sponsors/unbounce.png new file mode 100644 index 00000000000..eef0ab43aaf Binary files /dev/null and b/static/img/sponsors/unbounce.png differ diff --git a/static/img/sponsors/valtech.png b/static/img/sponsors/valtech.png new file mode 100644 index 00000000000..a8835fef540 Binary files /dev/null and b/static/img/sponsors/valtech.png differ diff --git a/static/img/sponsors/victorops.png b/static/img/sponsors/victorops.png index c658705ab88..e17c5af138d 100644 Binary files a/static/img/sponsors/victorops.png and b/static/img/sponsors/victorops.png differ diff --git a/themes/devopsdays-responsive/LICENSE.md b/themes/devopsdays-responsive/LICENSE.md deleted file mode 100644 index e1265aaba37..00000000000 --- a/themes/devopsdays-responsive/LICENSE.md +++ /dev/null @@ -1,20 +0,0 @@ -The MIT License (MIT) - -Copyright (c) 2016 YOUR_NAME_HERE - -Permission is hereby granted, free of charge, to any person obtaining a copy of -this software and associated documentation files (the "Software"), to deal in -the Software without restriction, including without limitation the rights to -use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software is furnished to do so, -subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS -FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR -COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/themes/devopsdays-responsive/archetypes/default.md b/themes/devopsdays-responsive/archetypes/default.md deleted file mode 100644 index ac36e062277..00000000000 --- a/themes/devopsdays-responsive/archetypes/default.md +++ /dev/null @@ -1,2 +0,0 @@ -+++ -+++ diff --git a/themes/devopsdays-responsive/layouts/_default/single.html b/themes/devopsdays-responsive/layouts/_default/single.html deleted file mode 100644 index a358190d4ae..00000000000 --- a/themes/devopsdays-responsive/layouts/_default/single.html +++ /dev/null @@ -1,5 +0,0 @@ -{{ partial "header.html" . }} -

      {{ .Title }}

      -{{ .Content }} - -{{ partial "footer.html" . }} diff --git a/themes/devopsdays-responsive/layouts/blog/summary.html b/themes/devopsdays-responsive/layouts/blog/summary.html deleted file mode 100644 index f11206c4a0b..00000000000 --- a/themes/devopsdays-responsive/layouts/blog/summary.html +++ /dev/null @@ -1,7 +0,0 @@ -
      -

      {{ .Title }}

      -
      -{{ .Summary }} - diff --git a/themes/devopsdays-responsive/layouts/cfp/single.html b/themes/devopsdays-responsive/layouts/cfp/single.html deleted file mode 100644 index d1c8da8b8db..00000000000 --- a/themes/devopsdays-responsive/layouts/cfp/single.html +++ /dev/null @@ -1,9 +0,0 @@ -{{ partial "header.html" . }} - -
      - {{ .Content }} -
      - -{{ partial "cfp.html" . }} - -{{ partial "footer.html" . }} diff --git a/themes/devopsdays-responsive/layouts/event/single.html b/themes/devopsdays-responsive/layouts/event/single.html deleted file mode 100644 index 36170fe3f73..00000000000 --- a/themes/devopsdays-responsive/layouts/event/single.html +++ /dev/null @@ -1,10 +0,0 @@ -{{ partial "event_header.html" . }} -
      - {{ .Content }} -
      - -{{ partial "sponsors.html" . }} - -{{- partial "event_metadata.html" . -}} - -{{ partial "footer.html" . }} diff --git a/themes/devopsdays-responsive/layouts/events-list/single.html b/themes/devopsdays-responsive/layouts/events-list/single.html deleted file mode 100644 index 984df84e860..00000000000 --- a/themes/devopsdays-responsive/layouts/events-list/single.html +++ /dev/null @@ -1,10 +0,0 @@ -{{ partial "header.html" . }} - -
      - {{ .Content }} -
      - -{{ partial "future.html" . }} -{{ partial "past.html" . }} - -{{ partial "footer.html" . }} diff --git a/themes/devopsdays-responsive/layouts/index.html b/themes/devopsdays-responsive/layouts/index.html deleted file mode 100644 index 079b8e9b695..00000000000 --- a/themes/devopsdays-responsive/layouts/index.html +++ /dev/null @@ -1,23 +0,0 @@ -{{ partial "header.html" . }} - -
      -
      -

      Upcoming devopsdays events

      - {{ partial "upcoming_headline.html" . }} - {{ partial "map.html" .}} -
      -
      -

      Tweets from devopsdays events

      -
      - - - -
      -
      - -
      - -{{ partial "footer.html" . }} diff --git a/themes/devopsdays-responsive/layouts/partials/about.html b/themes/devopsdays-responsive/layouts/partials/about.html deleted file mode 100644 index b0be3c59cdf..00000000000 --- a/themes/devopsdays-responsive/layouts/partials/about.html +++ /dev/null @@ -1,53 +0,0 @@ - - - -
      -
      -

      Future

      -
      - -
      - -
      -
      diff --git a/themes/devopsdays-responsive/layouts/partials/event_header.html b/themes/devopsdays-responsive/layouts/partials/event_header.html deleted file mode 100644 index 796386826b4..00000000000 --- a/themes/devopsdays-responsive/layouts/partials/event_header.html +++ /dev/null @@ -1,37 +0,0 @@ -{{ partial "header.html" . }} - - - -{{/* - This section is what creates the query to get at all the site data. If you need this somewhere, you can just copy - it and paste it. Need to figure out if a partial would expose the variables/elements/array created herein. It could be done in a partial (need to include the trailing .) but I don't think it would work in shortcodes, which is where we need it the most - mattstratton -*/}} - -{{ $path := split $.Source.File.Path .Site.Params.PathSeperator }} -{{ $event_slug := index $path 1 }} -{{ $e := (index $.Site.Data.events $event_slug) }} -{{ $.Scratch.Add "citydisplay" $e.city }} - -{{/* end site data query */}} - -
      -
      -

      {{ $.Scratch.Get "citydisplay" }} {{ $e.year }} - {{ title .Title }}

      - -
      -

      - {{ if $e.nav_elements }} - {{ range $e.nav_elements }} - {{ if .url }} - {{ .name }}  - {{ else }} - {{ .name }}  - {{ end }} - {{ end }} - {{ else }} - {{ range $navigation := $e.navigationelements}} - {{ $navigation }}  - {{ end }} - {{ end }} -

      -
      diff --git a/themes/devopsdays-responsive/layouts/partials/event_metadata.html b/themes/devopsdays-responsive/layouts/partials/event_metadata.html deleted file mode 100644 index 4955ec13904..00000000000 --- a/themes/devopsdays-responsive/layouts/partials/event_metadata.html +++ /dev/null @@ -1,31 +0,0 @@ -{{/* site data query copypasta from event/single.html, per mattstratton's note - esigler */}} -{{ $path := split $.Source.File.Path .Site.Params.PathSeperator }} -{{ $event_slug := index $path 1 }} -{{ $e := (index $.Site.Data.events $event_slug) }} -{{/* end site data query */}} - - diff --git a/themes/devopsdays-responsive/layouts/partials/footer.html b/themes/devopsdays-responsive/layouts/partials/footer.html deleted file mode 100644 index d48d4b0c0e9..00000000000 --- a/themes/devopsdays-responsive/layouts/partials/footer.html +++ /dev/null @@ -1,14 +0,0 @@ -
      - - {{ partial "footer_scripts" . }} -
      - - diff --git a/themes/devopsdays-responsive/layouts/partials/footer_scripts.html b/themes/devopsdays-responsive/layouts/partials/footer_scripts.html deleted file mode 100644 index 120c2aa6301..00000000000 --- a/themes/devopsdays-responsive/layouts/partials/footer_scripts.html +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - diff --git a/themes/devopsdays-responsive/layouts/partials/future.html b/themes/devopsdays-responsive/layouts/partials/future.html deleted file mode 100644 index 2800597359e..00000000000 --- a/themes/devopsdays-responsive/layouts/partials/future.html +++ /dev/null @@ -1,53 +0,0 @@ - - - -
      -
      -

      Future

      -
      - -
      - -
      -
      diff --git a/themes/devopsdays-responsive/layouts/partials/googleanalytics.html b/themes/devopsdays-responsive/layouts/partials/googleanalytics.html deleted file mode 100644 index b2b5607a898..00000000000 --- a/themes/devopsdays-responsive/layouts/partials/googleanalytics.html +++ /dev/null @@ -1,31 +0,0 @@ - diff --git a/themes/devopsdays-responsive/layouts/partials/head.html b/themes/devopsdays-responsive/layouts/partials/head.html deleted file mode 100644 index 406c9bc7c6b..00000000000 --- a/themes/devopsdays-responsive/layouts/partials/head.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - -{{ partial "meta.html" . }} -{{ partial "head/seo.html" . }} -{{ .Hugo.Generator }} - -{{ $url := replace .Permalink ( printf "%s" .Site.BaseURL) "" }} -{{ if eq $url "/" }} - {{ .Site.Title }} -{{ else }} - {{ if .Params.heading }} {{ .Params.heading }} - {{ else }} {{ .Title }} - {{ end }} -{{ end }} - - -{{ partial "head_includes.html" . }} - diff --git a/themes/devopsdays-responsive/layouts/partials/head/seo.html b/themes/devopsdays-responsive/layouts/partials/head/seo.html deleted file mode 100644 index 4e3ae562a1b..00000000000 --- a/themes/devopsdays-responsive/layouts/partials/head/seo.html +++ /dev/null @@ -1,2 +0,0 @@ -{{ partial "head/seo/open_graph.html" . }} -{{ partial "head/seo/schema.html" . }} diff --git a/themes/devopsdays-responsive/layouts/partials/head/seo/open_graph.html b/themes/devopsdays-responsive/layouts/partials/head/seo/open_graph.html deleted file mode 100644 index 3d63152cf50..00000000000 --- a/themes/devopsdays-responsive/layouts/partials/head/seo/open_graph.html +++ /dev/null @@ -1,45 +0,0 @@ - - - - - -{{ with .Params.images }}{{ range first 1 . }} - -{{ end }}{{ end }} - - - -{{ with .Params.audio }}{{ end }} -{{ with .Params.locale }}{{ end }} -{{ with .Site.Params.title }}{{ end }} -{{ with .Params.videos }}{{ range . }} - -{{ end }}{{ end }} - - -{{ $permalink := .Permalink }} -{{ $siteSeries := .Site.Taxonomies.series }} -{{ with .Params.series }}{{ range $name := . }} - {{ $series := index $siteSeries $name }} - {{ range $page := first 6 $series.Pages }} - {{ if ne $page.Permalink $permalink }}{{ end }} - {{ end }} -{{ end }}{{ end }} - -{{ if and (isset .Site.Params "authors") (isset .Params "author") }} - -{{ $author := index .Site.Params.authors .Params.author }} - -{{ end }} - -{{if .IsPage}} - -{{ end }} - - -{{ with .Params.tags }}{{ range first 6 . }} - -{{ end }}{{ end }} - - -{{ with .Site.Params.social.facebook_admin }}{{ end }} diff --git a/themes/devopsdays-responsive/layouts/partials/head/seo/schema.html b/themes/devopsdays-responsive/layouts/partials/head/seo/schema.html deleted file mode 100644 index e348834170c..00000000000 --- a/themes/devopsdays-responsive/layouts/partials/head/seo/schema.html +++ /dev/null @@ -1,15 +0,0 @@ - - - - - -{{ with .Params.images }}{{ range first 6 . }} - -{{ end }}{{ end }} - - - - -{{if .IsPage}} - -{{ end }} \ No newline at end of file diff --git a/themes/devopsdays-responsive/layouts/partials/head_includes.html b/themes/devopsdays-responsive/layouts/partials/head_includes.html deleted file mode 100644 index bc342b73afe..00000000000 --- a/themes/devopsdays-responsive/layouts/partials/head_includes.html +++ /dev/null @@ -1,34 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -{{ partial "googleanalytics" . }} diff --git a/themes/devopsdays-responsive/layouts/partials/header.html b/themes/devopsdays-responsive/layouts/partials/header.html deleted file mode 100644 index 2fb6deb29c3..00000000000 --- a/themes/devopsdays-responsive/layouts/partials/header.html +++ /dev/null @@ -1,49 +0,0 @@ - - -{{ partial "head.html" . }} - - -
      -
      - - - - - - diff --git a/themes/devopsdays-responsive/layouts/partials/sponsors.html b/themes/devopsdays-responsive/layouts/partials/sponsors.html deleted file mode 100644 index 1b68ff8be7a..00000000000 --- a/themes/devopsdays-responsive/layouts/partials/sponsors.html +++ /dev/null @@ -1,39 +0,0 @@ -{{ $path := split $.Source.File.Path .Site.Params.PathSeperator }} -{{ $event_slug := index $path 1 }} -{{ $e := (index $.Site.Data.events $event_slug) }} - -
      - {{ if $e.sponsors }} - {{ range $index, $level := $e.sponsor_levels }} - {{ $.Scratch.Set $level.id 0 }} -
      - -
      -

      {{ $level.label }} Sponsors

      - {{ range where $e.sponsors "level" $level.id }} - {{ $s := (index $.Site.Data.sponsors .id) }} - {{ if isset $.Site.Data.sponsors .id }} - {{ $.Scratch.Add $level.id 1 }} - - {{ end }} - {{ end }} -
      - - {{ if $e.startdate }} - {{ if ge (dateFormat "2006-01-02" $e.startdate) (dateFormat "2006-01-02" ($.Now.Format "2006-01-02")) }} - {{ if ne $e.sponsors_accepted "no" }} - {{ if or (not $level.max) (lt ($.Scratch.Get $level.id) $level.max) }} - - {{ end }} - {{ end }} - {{ end }} - {{ end }} - -
      - {{ end }} - {{ end }} -
      diff --git a/themes/devopsdays-responsive/layouts/partials/upcoming_headline.html b/themes/devopsdays-responsive/layouts/partials/upcoming_headline.html deleted file mode 100644 index e42a1e2b15a..00000000000 --- a/themes/devopsdays-responsive/layouts/partials/upcoming_headline.html +++ /dev/null @@ -1,17 +0,0 @@ -
      -

      - {{ range sort $.Site.Data.events "startdate" }} - {{ if .startdate }} - {{ if ge (dateFormat "2006-01-02" .startdate) (dateFormat "2006-01-02" ($.Now.Format "2006-01-02")) }} - {{ $.Scratch.Add "events" "" }} - {{ $.Scratch.Add "events" .city }} - {{ $.Scratch.Add "events" " - " }} - - {{ end }} - {{ end }} - {{ end }} - {{ substr ($.Scratch.Get "events") 0 -3 | safeHTML }} -

      -
      diff --git a/themes/devopsdays-responsive/layouts/shortcodes/event_logo.html b/themes/devopsdays-responsive/layouts/shortcodes/event_logo.html deleted file mode 100644 index fd237ed98c1..00000000000 --- a/themes/devopsdays-responsive/layouts/shortcodes/event_logo.html +++ /dev/null @@ -1,5 +0,0 @@ -{{ $path := split .Page.Source.File.Path .Site.Params.PathSeperator }} -{{ $event_slug := index $path 1 }} -{{ $e := (index .Page.Site.Data.events $event_slug) }} - -DevOpsDays {{ $e.city }} {{ $e.year }} diff --git a/themes/devopsdays-responsive/layouts/shortcodes/event_twitter.html b/themes/devopsdays-responsive/layouts/shortcodes/event_twitter.html deleted file mode 100644 index 36e68d03a33..00000000000 --- a/themes/devopsdays-responsive/layouts/shortcodes/event_twitter.html +++ /dev/null @@ -1,2 +0,0 @@ - - diff --git a/themes/devopsdays-responsive/layouts/shortcodes/list_organizers.html b/themes/devopsdays-responsive/layouts/shortcodes/list_organizers.html deleted file mode 100644 index 34631bc3265..00000000000 --- a/themes/devopsdays-responsive/layouts/shortcodes/list_organizers.html +++ /dev/null @@ -1,24 +0,0 @@ -{{ $path := split .Page.Source.File.Path .Site.Params.PathSeperator }} -{{ $event_slug := index $path 1 }} -{{ $e := (index .Page.Site.Data.events $event_slug) }} - -
        - {{ if $e.team_members }} - {{ range $e.team_members }} -
      • - {{ .name }} - {{ if .twitter }} - {{ $twitter := replace .twitter "@" "" }} - - @{{ $twitter }} - {{ end }} - {{ if .employer }} - - {{ .employer }} - {{ end}} -
      • - {{ end }} - {{ else }} - {{ range $event_organizers := $e.team }} -
      • {{ $event_organizers }}
      • - {{ end }} - {{ end }} -
      diff --git a/themes/devopsdays-responsive/layouts/speakers/single.html b/themes/devopsdays-responsive/layouts/speakers/single.html deleted file mode 100644 index 86a37ae5b50..00000000000 --- a/themes/devopsdays-responsive/layouts/speakers/single.html +++ /dev/null @@ -1,43 +0,0 @@ -{{ partial "event_header.html" . }} - -{{ $path := split $.Source.File.Path .Site.Params.PathSeperator }} -{{ $event_slug := index $path 1 }} -{{ $e := (index $.Site.Data.events $event_slug) }} -{{ $city_slug := substr $e.name 5 }} - - - -
      - {{ .Content }} -
      - - - - - - {{ range $fname, $s := index .Site.Data.speakers (print (chomp $e.year)) $city_slug }} -
      -
      - {{ $s.name }} -
      -
      -

      {{ $s.name }}

      - {{ if $s.twitter }} @{{ $s.twitter }}
      {{ end }} - {{ if $s.website }}Website: {{ $s.website }}
      {{ end }} - {{ if $s.pronouns }}Pronouns: {{ $s.pronouns }}{{ end }} -
      - {{ $s.bio | markdownify }} -
      -
      -
      - - {{ end }} - - - - -
      -{{ partial "sponsors.html" . }} -
      - -{{ partial "footer.html" . }} diff --git a/themes/devopsdays-responsive/layouts/talk/single.html b/themes/devopsdays-responsive/layouts/talk/single.html deleted file mode 100644 index 940e5bfb4a1..00000000000 --- a/themes/devopsdays-responsive/layouts/talk/single.html +++ /dev/null @@ -1,47 +0,0 @@ -{{ partial "event_header.html" . }} - -{{ $path := split $.Source.File.Path .Site.Params.PathSeperator }} -{{ $event_slug := index $path 1 }} -{{ $e := (index $.Site.Data.events $event_slug) }} -{{ $city_slug := substr $e.name 5 }} - - -
      - {{ .Content }} -
      - - - - {{/* - For future reference, this range listed below is going to be a key element for when we refactor the data directory - Notice how you pass the variables, etc. So the new code would probably be something like this: - .Site.Data.events $e.year "speakers" (printf "%s" (lower $e.city)) - and to get at the meta.yml for the city it will be - .Site.Data.events $e.year (printf "%s" (lower $e.city)) - - mattstratton - */}} - {{ range $fname, $s := index .Site.Data.speakers (print (chomp $e.year)) $city_slug }} - {{ if in ($.LinkTitle | urlize) $fname }} -
      -
      -
      - {{ $s.name }} -
      -
      -

      {{ $s.name }}

      - {{ if $s.twitter }} @{{ $s.twitter }}
      {{ end }} -
      - {{ $s.bio | markdownify }} -
      -
      - {{ end }} - {{ end }} - - - - - -{{ partial "sponsors.html" . }} - - -{{ partial "footer.html" . }} diff --git a/themes/devopsdays-responsive/static/android-icon-144x144.png b/themes/devopsdays-responsive/static/android-icon-144x144.png deleted file mode 100644 index 8c01ffadaef..00000000000 Binary files a/themes/devopsdays-responsive/static/android-icon-144x144.png and /dev/null differ diff --git a/themes/devopsdays-responsive/static/android-icon-192x192.png b/themes/devopsdays-responsive/static/android-icon-192x192.png deleted file mode 100644 index 95e8eb1e12b..00000000000 Binary files a/themes/devopsdays-responsive/static/android-icon-192x192.png and /dev/null differ diff --git a/themes/devopsdays-responsive/static/android-icon-36x36.png b/themes/devopsdays-responsive/static/android-icon-36x36.png deleted file mode 100644 index a73d50bb03e..00000000000 Binary files a/themes/devopsdays-responsive/static/android-icon-36x36.png and /dev/null differ diff --git a/themes/devopsdays-responsive/static/android-icon-48x48.png b/themes/devopsdays-responsive/static/android-icon-48x48.png deleted file mode 100644 index 97e8a634a35..00000000000 Binary files a/themes/devopsdays-responsive/static/android-icon-48x48.png and /dev/null differ diff --git a/themes/devopsdays-responsive/static/android-icon-72x72.png b/themes/devopsdays-responsive/static/android-icon-72x72.png deleted file mode 100644 index f6a767c4b1f..00000000000 Binary files a/themes/devopsdays-responsive/static/android-icon-72x72.png and /dev/null differ diff --git a/themes/devopsdays-responsive/static/apple-icon-144x144.png b/themes/devopsdays-responsive/static/apple-icon-144x144.png deleted file mode 100644 index 8c01ffadaef..00000000000 Binary files a/themes/devopsdays-responsive/static/apple-icon-144x144.png and /dev/null differ diff --git a/themes/devopsdays-responsive/static/apple-icon-152x152.png b/themes/devopsdays-responsive/static/apple-icon-152x152.png deleted file mode 100644 index d1586d7283f..00000000000 Binary files a/themes/devopsdays-responsive/static/apple-icon-152x152.png and /dev/null differ diff --git a/themes/devopsdays-responsive/static/apple-icon-57x57.png b/themes/devopsdays-responsive/static/apple-icon-57x57.png deleted file mode 100644 index e291cde6c60..00000000000 Binary files a/themes/devopsdays-responsive/static/apple-icon-57x57.png and /dev/null differ diff --git a/themes/devopsdays-responsive/static/apple-icon-60x60.png b/themes/devopsdays-responsive/static/apple-icon-60x60.png deleted file mode 100644 index 2e99bf9ac21..00000000000 Binary files a/themes/devopsdays-responsive/static/apple-icon-60x60.png and /dev/null differ diff --git a/themes/devopsdays-responsive/static/apple-icon-72x72.png b/themes/devopsdays-responsive/static/apple-icon-72x72.png deleted file mode 100644 index f6a767c4b1f..00000000000 Binary files a/themes/devopsdays-responsive/static/apple-icon-72x72.png and /dev/null differ diff --git a/themes/devopsdays-responsive/static/apple-icon-76x76.png b/themes/devopsdays-responsive/static/apple-icon-76x76.png deleted file mode 100644 index aeda2a1bd99..00000000000 Binary files a/themes/devopsdays-responsive/static/apple-icon-76x76.png and /dev/null differ diff --git a/themes/devopsdays-responsive/static/apple-icon-precomposed.png b/themes/devopsdays-responsive/static/apple-icon-precomposed.png deleted file mode 100644 index 750d0adcc4e..00000000000 Binary files a/themes/devopsdays-responsive/static/apple-icon-precomposed.png and /dev/null differ diff --git a/themes/devopsdays-responsive/static/apple-icon.png b/themes/devopsdays-responsive/static/apple-icon.png deleted file mode 100644 index 750d0adcc4e..00000000000 Binary files a/themes/devopsdays-responsive/static/apple-icon.png and /dev/null differ diff --git a/themes/devopsdays-responsive/static/css/bootstrap-sortable.css b/themes/devopsdays-responsive/static/css/bootstrap-sortable.css deleted file mode 100644 index aed89cd62e8..00000000000 --- a/themes/devopsdays-responsive/static/css/bootstrap-sortable.css +++ /dev/null @@ -1,110 +0,0 @@ -/** - * adding sorting ability to HTML tables with Bootstrap styling - * @summary HTML tables sorting ability - * @version 2.0.0 - * @requires tinysort, moment.js, jQuery - * @license MIT - * @author Matus Brlit (drvic10k) - * @copyright Matus Brlit (drvic10k), bootstrap-sortable contributors - */ - -table.sortable span.sign { - display: block; - position: absolute; - top: 50%; - right: 5px; - font-size: 12px; - margin-top: -10px; - color: #bfbfc1; -} - -table.sortable th:after { - display: block; - position: absolute; - top: 50%; - right: 5px; - font-size: 12px; - margin-top: -10px; - color: #bfbfc1; -} - -table.sortable th.arrow:after { - content: ''; -} - -table.sortable span.arrow, span.reversed, th.arrow.down:after, th.reversedarrow.down:after, th.arrow.up:after, th.reversedarrow.up:after { - border-style: solid; - border-width: 5px; - font-size: 0; - border-color: #ccc transparent transparent transparent; - line-height: 0; - height: 0; - width: 0; - margin-top: -2px; -} - - table.sortable span.arrow.up, th.arrow.up:after { - border-color: transparent transparent #ccc transparent; - margin-top: -7px; - } - -table.sortable span.reversed, th.reversedarrow.down:after { - border-color: transparent transparent #ccc transparent; - margin-top: -7px; -} - - table.sortable span.reversed.up, th.reversedarrow.up:after { - border-color: #ccc transparent transparent transparent; - margin-top: -2px; - } - -table.sortable span.az:before, th.az.down:after { - content: "a .. z"; -} - -table.sortable span.az.up:before, th.az.up:after { - content: "z .. a"; -} - -table.sortable th.az.nosort:after, th.AZ.nosort:after, th._19.nosort:after, th.month.nosort:after { - content: ".."; -} - -table.sortable span.AZ:before, th.AZ.down:after { - content: "A .. Z"; -} - -table.sortable span.AZ.up:before, th.AZ.up:after { - content: "Z .. A"; -} - -table.sortable span._19:before, th._19.down:after { - content: "1 .. 9"; -} - -table.sortable span._19.up:before, th._19.up:after { - content: "9 .. 1"; -} - -table.sortable span.month:before, th.month.down:after { - content: "jan .. dec"; -} - -table.sortable span.month.up:before, th.month.up:after { - content: "dec .. jan"; -} - -table.sortable>thead th:not([data-defaultsort=disabled]) { - cursor: pointer; - position: relative; - top: 0; - left: 0; -} - -table.sortable>thead th:hover:not([data-defaultsort=disabled]) { - background: #efefef; -} - -table.sortable>thead th div.mozilla { - position: relative; -} diff --git a/themes/devopsdays-responsive/static/css/bootstrap.css b/themes/devopsdays-responsive/static/css/bootstrap.css deleted file mode 100644 index 3f724040353..00000000000 --- a/themes/devopsdays-responsive/static/css/bootstrap.css +++ /dev/null @@ -1,5 +0,0 @@ -/*! - * Bootstrap v3.3.6 (http://getbootstrap.com) - * Copyright 2011-2015 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;-ms-text-size-adjust:100%;-webkit-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:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}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{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{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-appearance:textfield;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */@media print{*,:after,:before{background:0 0!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="javascript:"]:after,a[href^="#"]:after{content:""}blockquote,pre{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}img{max-width:100%!important}h2,h3,p{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 td,.table-bordered th{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:400;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.glyphicon-asterisk:before{content:"\002a"}.glyphicon-plus:before{content:"\002b"}.glyphicon-eur:before,.glyphicon-euro: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}:after,:before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:10px;-webkit-tap-highlight-color:transparent}body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.42857143;color:#333;background-color:#fff}button,input,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#337ab7;text-decoration:none}a:focus,a:hover{color:#23527c;text-decoration:underline}a:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}figure{margin:0}img{vertical-align:middle}.carousel-inner>.item>a>img,.carousel-inner>.item>img,.img-responsive,.thumbnail a>img,.thumbnail>img{display:block;max-width:100%;height:auto}.img-rounded{border-radius:6px}.img-thumbnail{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;display:inline-block;max-width:100%;height:auto}.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;margin:-1px;padding:0;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:#1581AB}.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small,.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small,h1 .small,h1 small,h2 .small,h2 small,h3 .small,h3 small,h4 .small,h4 small,h5 .small,h5 small,h6 .small,h6 small{font-weight:400;line-height:1;color:#777}.h1,.h2,.h3,h1,h2,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,.h5,.h6,h4,h5,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{background-color:#fcf8e3;padding:.2em}.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:focus,a.text-primary:hover{color:#286090}.text-success{color:#3c763d}a.text-success:focus,a.text-success:hover{color:#2b542c}.text-info{color:#31708f}a.text-info:focus,a.text-info:hover{color:#245269}.text-warning{color:#8a6d3b}a.text-warning:focus,a.text-warning:hover{color:#66512c}.text-danger{color:#a94442}a.text-danger:focus,a.text-danger:hover{color:#843534}.bg-primary{color:#fff;background-color:#337ab7}a.bg-primary:focus,a.bg-primary:hover{background-color:#286090}.bg-success{background-color:#dff0d8}a.bg-success:focus,a.bg-success:hover{background-color:#c1e2b3}.bg-info{background-color:#d9edf7}a.bg-info:focus,a.bg-info:hover{background-color:#afd9ee}.bg-warning{background-color:#fcf8e3}a.bg-warning:focus,a.bg-warning:hover{background-color:#f7ecb5}.bg-danger{background-color:#f2dede}a.bg-danger:focus,a.bg-danger:hover{background-color:#e4b9b9}.page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}ol,ul{margin-top:0;margin-bottom:10px}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none;margin-left:-5px}.list-inline>li{display:inline-block;padding-left:5px;padding-right:5px}dl{margin-top:0;margin-bottom:20px}dd,dt{line-height:1.42857143}dt{font-weight:700}dd{margin-left:0}@media (min-width:768px){.dl-horizontal dt{float:left;width:160px;clear:left;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}}abbr[data-original-title],abbr[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 ol:last-child,blockquote p:last-child,blockquote ul:last-child{margin-bottom:0}blockquote .small,blockquote footer,blockquote small{display:block;font-size:80%;line-height:1.42857143;color:#777}blockquote .small:before,blockquote footer:before,blockquote small:before{content:'\2014 \00A0'}.blockquote-reverse,blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0;text-align:right}.blockquote-reverse .small:before,.blockquote-reverse footer:before,.blockquote-reverse small:before,blockquote.pull-right .small:before,blockquote.pull-right footer:before,blockquote.pull-right small:before{content:''}.blockquote-reverse .small:after,.blockquote-reverse footer:after,.blockquote-reverse small:after,blockquote.pull-right .small:after,blockquote.pull-right footer: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:2px 4px;font-size:90%;color:#c7254e;background-color:#f9f2f4;border-radius:4px}kbd{padding:2px 4px;font-size:90%;color:#fff;background-color:#333;border-radius:3px;box-shadow:inset 0 -1px 0 rgba(0,0,0,.25)}kbd kbd{padding:0;font-size:100%;font-weight:700;box-shadow:none}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.42857143;word-break:break-all;word-wrap:break-word;color:#333;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{margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}@media (min-width:768px){.container{width:750px}}@media (min-width:992px){.container{width:970px}}@media (min-width:1200px){.container{width:1170px}}.container-fluid{margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}.row{margin-left:-15px;margin-right:-15px}.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.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-md-1,.col-md-10,.col-md-11,.col-md-12,.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-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.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-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9{position:relative;min-height:1px;padding-left:15px;padding-right:15px}.col-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9{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-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9{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-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9{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-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9{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>tbody>tr>td,.table>tbody>tr>th,.table>tfoot>tr>td,.table>tfoot>tr>th,.table>thead>tr>td,.table>thead>tr>th{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>td,.table>caption+thead>tr:first-child>th,.table>colgroup+thead>tr:first-child>td,.table>colgroup+thead>tr:first-child>th,.table>thead:first-child>tr:first-child>td,.table>thead:first-child>tr:first-child>th{border-top:0}.table>tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed>tbody>tr>td,.table-condensed>tbody>tr>th,.table-condensed>tfoot>tr>td,.table-condensed>tfoot>tr>th,.table-condensed>thead>tr>td,.table-condensed>thead>tr>th{padding:5px}.table-bordered{border:1px solid #ddd}.table-bordered>tbody>tr>td,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>td,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>thead>tr>th{border:1px solid #ddd}.table-bordered>thead>tr>td,.table-bordered>thead>tr>th{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;float:none;display:table-column}table td[class*=col-],table th[class*=col-]{position:static;float:none;display:table-cell}.table>tbody>tr.active>td,.table>tbody>tr.active>th,.table>tbody>tr>td.active,.table>tbody>tr>th.active,.table>tfoot>tr.active>td,.table>tfoot>tr.active>th,.table>tfoot>tr>td.active,.table>tfoot>tr>th.active,.table>thead>tr.active>td,.table>thead>tr.active>th,.table>thead>tr>td.active,.table>thead>tr>th.active{background-color:#f5f5f5}.table-hover>tbody>tr.active:hover>td,.table-hover>tbody>tr.active:hover>th,.table-hover>tbody>tr:hover>.active,.table-hover>tbody>tr>td.active:hover,.table-hover>tbody>tr>th.active:hover{background-color:#e8e8e8}.table>tbody>tr.success>td,.table>tbody>tr.success>th,.table>tbody>tr>td.success,.table>tbody>tr>th.success,.table>tfoot>tr.success>td,.table>tfoot>tr.success>th,.table>tfoot>tr>td.success,.table>tfoot>tr>th.success,.table>thead>tr.success>td,.table>thead>tr.success>th,.table>thead>tr>td.success,.table>thead>tr>th.success{background-color:#dff0d8}.table-hover>tbody>tr.success:hover>td,.table-hover>tbody>tr.success:hover>th,.table-hover>tbody>tr:hover>.success,.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover{background-color:#d0e9c6}.table>tbody>tr.info>td,.table>tbody>tr.info>th,.table>tbody>tr>td.info,.table>tbody>tr>th.info,.table>tfoot>tr.info>td,.table>tfoot>tr.info>th,.table>tfoot>tr>td.info,.table>tfoot>tr>th.info,.table>thead>tr.info>td,.table>thead>tr.info>th,.table>thead>tr>td.info,.table>thead>tr>th.info{background-color:#d9edf7}.table-hover>tbody>tr.info:hover>td,.table-hover>tbody>tr.info:hover>th,.table-hover>tbody>tr:hover>.info,.table-hover>tbody>tr>td.info:hover,.table-hover>tbody>tr>th.info:hover{background-color:#c4e3f3}.table>tbody>tr.warning>td,.table>tbody>tr.warning>th,.table>tbody>tr>td.warning,.table>tbody>tr>th.warning,.table>tfoot>tr.warning>td,.table>tfoot>tr.warning>th,.table>tfoot>tr>td.warning,.table>tfoot>tr>th.warning,.table>thead>tr.warning>td,.table>thead>tr.warning>th,.table>thead>tr>td.warning,.table>thead>tr>th.warning{background-color:#fcf8e3}.table-hover>tbody>tr.warning:hover>td,.table-hover>tbody>tr.warning:hover>th,.table-hover>tbody>tr:hover>.warning,.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover{background-color:#faf2cc}.table>tbody>tr.danger>td,.table>tbody>tr.danger>th,.table>tbody>tr>td.danger,.table>tbody>tr>th.danger,.table>tfoot>tr.danger>td,.table>tfoot>tr.danger>th,.table>tfoot>tr>td.danger,.table>tfoot>tr>th.danger,.table>thead>tr.danger>td,.table>thead>tr.danger>th,.table>thead>tr>td.danger,.table>thead>tr>th.danger{background-color:#f2dede}.table-hover>tbody>tr.danger:hover>td,.table-hover>tbody>tr.danger:hover>th,.table-hover>tbody>tr:hover>.danger,.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover{background-color:#ebcccc}.table-responsive{overflow-x:auto;min-height:.01%}@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>tbody>tr>td,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>td,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>thead>tr>th{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}}fieldset{padding:0;margin:0;border:0;min-width: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:700}input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type=checkbox],input[type=radio]{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=checkbox]:focus,input[type=radio]:focus{outline:thin dotted;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,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{border:0;background-color:transparent}.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-group-sm input[type=date],.input-group-sm input[type=time],.input-group-sm input[type=datetime-local],.input-group-sm input[type=month],input[type=date].input-sm,input[type=time].input-sm,input[type=datetime-local].input-sm,input[type=month].input-sm{line-height:30px}.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],input[type=date].input-lg,input[type=time].input-lg,input[type=datetime-local].input-lg,input[type=month].input-lg{line-height:46px}}.form-group{margin-bottom:15px}.checkbox,.radio{position:relative;display:block;margin-top:10px;margin-bottom:10px}.checkbox label,.radio label{min-height:20px;padding-left:20px;margin-bottom:0;font-weight:400;cursor:pointer}.checkbox input[type=checkbox],.checkbox-inline input[type=checkbox],.radio input[type=radio],.radio-inline input[type=radio]{position:absolute;margin-left:-20px;margin-top:4px\9}.checkbox+.checkbox,.radio+.radio{margin-top:-5px}.checkbox-inline,.radio-inline{position:relative;display:inline-block;padding-left:20px;margin-bottom:0;vertical-align:middle;font-weight:400;cursor:pointer}.checkbox-inline+.checkbox-inline,.radio-inline+.radio-inline{margin-top:0;margin-left:10px}fieldset[disabled] input[type=checkbox],fieldset[disabled] input[type=radio],input[type=checkbox].disabled,input[type=checkbox][disabled],input[type=radio].disabled,input[type=radio][disabled]{cursor:not-allowed}.checkbox-inline.disabled,.radio-inline.disabled,fieldset[disabled] .checkbox-inline,fieldset[disabled] .radio-inline{cursor:not-allowed}.checkbox.disabled label,.radio.disabled label,fieldset[disabled] .checkbox label,fieldset[disabled] .radio label{cursor:not-allowed}.form-control-static{padding-top:7px;padding-bottom:7px;margin-bottom:0;min-height:34px}.form-control-static.input-lg,.form-control-static.input-sm{padding-left:0;padding-right: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}select[multiple].input-sm,textarea.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 select[multiple].form-control,.form-group-sm textarea.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}select[multiple].input-lg,textarea.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 select[multiple].form-control,.form-group-lg textarea.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}.form-group-lg .form-control+.form-control-feedback,.input-group-lg+.form-control-feedback,.input-lg+.form-control-feedback{width:46px;height:46px;line-height:46px}.form-group-sm .form-control+.form-control-feedback,.input-group-sm+.form-control-feedback,.input-sm+.form-control-feedback{width:30px;height:30px;line-height:30px}.has-success .checkbox,.has-success .checkbox-inline,.has-success .control-label,.has-success .help-block,.has-success .radio,.has-success .radio-inline,.has-success.checkbox label,.has-success.checkbox-inline label,.has-success.radio label,.has-success.radio-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;border-color:#3c763d;background-color:#dff0d8}.has-success .form-control-feedback{color:#3c763d}.has-warning .checkbox,.has-warning .checkbox-inline,.has-warning .control-label,.has-warning .help-block,.has-warning .radio,.has-warning .radio-inline,.has-warning.checkbox label,.has-warning.checkbox-inline label,.has-warning.radio label,.has-warning.radio-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;border-color:#8a6d3b;background-color:#fcf8e3}.has-warning .form-control-feedback{color:#8a6d3b}.has-error .checkbox,.has-error .checkbox-inline,.has-error .control-label,.has-error .help-block,.has-error .radio,.has-error .radio-inline,.has-error.checkbox label,.has-error.checkbox-inline label,.has-error.radio label,.has-error.radio-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;border-color:#a94442;background-color:#f2dede}.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 .form-control,.form-inline .input-group .input-group-addon,.form-inline .input-group .input-group-btn{width:auto}.form-inline .input-group>.form-control{width:100%}.form-inline .control-label{margin-bottom:0;vertical-align:middle}.form-inline .checkbox,.form-inline .radio{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.form-inline .checkbox label,.form-inline .radio label{padding-left:0}.form-inline .checkbox input[type=checkbox],.form-inline .radio input[type=radio]{position:relative;margin-left:0}.form-inline .has-feedback .form-control-feedback{top:0}}.form-horizontal .checkbox,.form-horizontal .checkbox-inline,.form-horizontal .radio,.form-horizontal .radio-inline{margin-top:0;margin-bottom:0;padding-top:7px}.form-horizontal .checkbox,.form-horizontal .radio{min-height:27px}.form-horizontal .form-group{margin-left:-15px;margin-right:-15px}@media (min-width:768px){.form-horizontal .control-label{text-align:right;margin-bottom:0;padding-top:7px}}.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;margin-bottom:0;font-weight:400;text-align:center;vertical-align:middle;touch-action:manipulation;cursor:pointer;background-image:none;border:1px solid transparent;white-space:nowrap;padding:6px 12px;font-size:14px;line-height:1.42857143;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.btn.active.focus,.btn.active:focus,.btn.focus,.btn:active.focus,.btn:active:focus,.btn:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn.focus,.btn:focus,.btn:hover{color:#333;text-decoration:none}.btn.active,.btn:active{outline:0;background-image:none;-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;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}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.focus,.btn-default.active:focus,.btn-default.active:hover,.btn-default:active.focus,.btn-default:active:focus,.btn-default:active:hover,.open>.dropdown-toggle.btn-default.focus,.open>.dropdown-toggle.btn-default:focus,.open>.dropdown-toggle.btn-default:hover{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.focus,.btn-default.disabled:focus,.btn-default.disabled:hover,.btn-default[disabled].focus,.btn-default[disabled]:focus,.btn-default[disabled]:hover,fieldset[disabled] .btn-default.focus,fieldset[disabled] .btn-default:focus,fieldset[disabled] .btn-default:hover{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.focus,.btn-primary.active:focus,.btn-primary.active:hover,.btn-primary:active.focus,.btn-primary:active:focus,.btn-primary:active:hover,.open>.dropdown-toggle.btn-primary.focus,.open>.dropdown-toggle.btn-primary:focus,.open>.dropdown-toggle.btn-primary:hover{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.focus,.btn-primary.disabled:focus,.btn-primary.disabled:hover,.btn-primary[disabled].focus,.btn-primary[disabled]:focus,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary.focus,fieldset[disabled] .btn-primary:focus,fieldset[disabled] .btn-primary:hover{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.focus,.btn-success.active:focus,.btn-success.active:hover,.btn-success:active.focus,.btn-success:active:focus,.btn-success:active:hover,.open>.dropdown-toggle.btn-success.focus,.open>.dropdown-toggle.btn-success:focus,.open>.dropdown-toggle.btn-success:hover{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.focus,.btn-success.disabled:focus,.btn-success.disabled:hover,.btn-success[disabled].focus,.btn-success[disabled]:focus,.btn-success[disabled]:hover,fieldset[disabled] .btn-success.focus,fieldset[disabled] .btn-success:focus,fieldset[disabled] .btn-success:hover{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.focus,.btn-info.active:focus,.btn-info.active:hover,.btn-info:active.focus,.btn-info:active:focus,.btn-info:active:hover,.open>.dropdown-toggle.btn-info.focus,.open>.dropdown-toggle.btn-info:focus,.open>.dropdown-toggle.btn-info:hover{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.focus,.btn-info.disabled:focus,.btn-info.disabled:hover,.btn-info[disabled].focus,.btn-info[disabled]:focus,.btn-info[disabled]:hover,fieldset[disabled] .btn-info.focus,fieldset[disabled] .btn-info:focus,fieldset[disabled] .btn-info:hover{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.focus,.btn-warning.active:focus,.btn-warning.active:hover,.btn-warning:active.focus,.btn-warning:active:focus,.btn-warning:active:hover,.open>.dropdown-toggle.btn-warning.focus,.open>.dropdown-toggle.btn-warning:focus,.open>.dropdown-toggle.btn-warning:hover{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.focus,.btn-warning.disabled:focus,.btn-warning.disabled:hover,.btn-warning[disabled].focus,.btn-warning[disabled]:focus,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning.focus,fieldset[disabled] .btn-warning:focus,fieldset[disabled] .btn-warning:hover{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.focus,.btn-danger.active:focus,.btn-danger.active:hover,.btn-danger:active.focus,.btn-danger:active:focus,.btn-danger:active:hover,.open>.dropdown-toggle.btn-danger.focus,.open>.dropdown-toggle.btn-danger:focus,.open>.dropdown-toggle.btn-danger:hover{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.focus,.btn-danger.disabled:focus,.btn-danger.disabled:hover,.btn-danger[disabled].focus,.btn-danger[disabled]:focus,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger.focus,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger:hover{background-color:#d9534f;border-color:#d43f3a}.btn-danger .badge{color:#d9534f;background-color:#fff}.btn-link{color:#337ab7;font-weight:400;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:active,.btn-link:focus,.btn-link:hover{border-color:transparent}.btn-link:focus,.btn-link:hover{color:#23527c;text-decoration:underline;background-color:transparent}.btn-link[disabled]:focus,.btn-link[disabled]:hover,fieldset[disabled] .btn-link:focus,fieldset[disabled] .btn-link:hover{color:#777;text-decoration:none}.btn-group-lg>.btn,.btn-lg{padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}.btn-group-sm>.btn,.btn-sm{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-group-xs>.btn,.btn-xs{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=button].btn-block,input[type=reset].btn-block,input[type=submit].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-property:height,visibility;transition-property:height,visibility;-webkit-transition-duration:.35s;transition-duration:.35s;-webkit-transition-timing-function:ease;transition-timing-function:ease}.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}.dropdown,.dropup{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;list-style:none;font-size:14px;text-align:left;background-color:#fff;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);background-clip:padding-box}.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:400;line-height:1.42857143;color:#333;white-space:nowrap}.dropdown-menu>li>a:focus,.dropdown-menu>li>a:hover{text-decoration:none;color:#262626;background-color:#f5f5f5}.dropdown-menu>.active>a,.dropdown-menu>.active>a:focus,.dropdown-menu>.active>a:hover{color:#fff;text-decoration:none;outline:0;background-color:#337ab7}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:focus,.dropdown-menu>.disabled>a:hover{color:#777}.dropdown-menu>.disabled>a:focus,.dropdown-menu>.disabled>a:hover{text-decoration:none;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);cursor:not-allowed}.open>.dropdown-menu{display:block}.open>a{outline:0}.dropdown-menu-right{left:auto;right:0}.dropdown-menu-left{left:0;right:auto}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.42857143;color:#777;white-space:nowrap}.dropdown-backdrop{position:fixed;left:0;right:0;bottom:0;top:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px dashed;border-bottom:4px solid\9;content:""}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:2px}@media (min-width:768px){.navbar-right .dropdown-menu{left:auto;right:0}.navbar-right .dropdown-menu-left{left:0;right:auto}}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;float:left}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{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-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-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-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn-group:last-child:not(:first-child)>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{padding-left:8px;padding-right:8px}.btn-group>.btn-lg+.dropdown-toggle{padding-left:12px;padding-right: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-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-top-right-radius:0;border-top-left-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-right-radius:0;border-top-left-radius:0}.btn-group-justified{display:table;width:100%;table-layout:fixed;border-collapse:separate}.btn-group-justified>.btn,.btn-group-justified>.btn-group{float:none;display:table-cell;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=checkbox],[data-toggle=buttons]>.btn input[type=radio],[data-toggle=buttons]>.btn-group>.btn input[type=checkbox],[data-toggle=buttons]>.btn-group>.btn input[type=radio]{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-left:0;padding-right: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}select[multiple].input-group-lg>.form-control,select[multiple].input-group-lg>.input-group-addon,select[multiple].input-group-lg>.input-group-btn>.btn,textarea.input-group-lg>.form-control,textarea.input-group-lg>.input-group-addon,textarea.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}select[multiple].input-group-sm>.form-control,select[multiple].input-group-sm>.input-group-addon,select[multiple].input-group-sm>.input-group-btn>.btn,textarea.input-group-sm>.form-control,textarea.input-group-sm>.input-group-addon,textarea.input-group-sm>.input-group-btn>.btn{height:auto}.input-group .form-control,.input-group-addon,.input-group-btn{display:table-cell}.input-group .form-control:not(:first-child):not(:last-child),.input-group-addon:not(:first-child):not(:last-child),.input-group-btn: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:400;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=checkbox],.input-group-addon input[type=radio]{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-group:not(:last-child)>.btn,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-top-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:first-child>.btn-group:not(:first-child)>.btn,.input-group-btn:first-child>.btn:not(:first-child),.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group>.btn,.input-group-btn:last-child>.dropdown-toggle{border-bottom-left-radius:0;border-top-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:active,.input-group-btn>.btn:focus,.input-group-btn>.btn:hover{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{margin-bottom:0;padding-left:0;list-style:none}.nav>li{position:relative;display:block}.nav>li>a{position:relative;display:block;padding:10px 15px}.nav>li>a:focus,.nav>li>a:hover{text-decoration:none;background-color:#eee}.nav>li.disabled>a{color:#777}.nav>li.disabled>a:focus,.nav>li.disabled>a:hover{color:#777;text-decoration:none;background-color:transparent;cursor:not-allowed}.nav .open>a,.nav .open>a:focus,.nav .open>a:hover{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:focus,.nav-tabs>li.active>a:hover{color:#555;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent;cursor:default}.nav-tabs.nav-justified{width:100%;border-bottom:0}.nav-tabs.nav-justified>li{float:none}.nav-tabs.nav-justified>li>a{text-align:center;margin-bottom:5px}.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:focus,.nav-tabs.nav-justified>.active>a:hover{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:focus,.nav-tabs.nav-justified>.active>a:hover{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:focus,.nav-pills>li.active>a:hover{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{text-align:center;margin-bottom:5px}.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:focus,.nav-tabs-justified>.active>a:hover{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:focus,.nav-tabs-justified>.active>a:hover{border-bottom-color:#fff}}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-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{overflow-x:visible;padding-right:20px;padding-left:20px;border-top:1px solid transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,.1);-webkit-overflow-scrolling:touch}.navbar-collapse.in{overflow-y:auto}@media (min-width:768px){.navbar-collapse{width:auto;border-top:0;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-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse,.navbar-static-top .navbar-collapse{padding-left:0;padding-right:0}}.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse{max-height:340px}@media (max-device-width:480px) and (orientation:landscape){.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse{max-height:200px}}.container-fluid>.navbar-collapse,.container-fluid>.navbar-header,.container>.navbar-collapse,.container>.navbar-header{margin-right:-20px;margin-left:-20px}@media (min-width:768px){.container-fluid>.navbar-collapse,.container-fluid>.navbar-header,.container>.navbar-collapse,.container>.navbar-header{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-bottom,.navbar-fixed-top{position:fixed;right:0;left:0;z-index:1030}@media (min-width:768px){.navbar-fixed-bottom,.navbar-fixed-top{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;padding:15px 20px;font-size:18px;line-height:20px;height:50px}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-brand>img{display:block}@media (min-width:768px){.navbar>.container .navbar-brand,.navbar>.container-fluid .navbar-brand{margin-left:-20px}}.navbar-toggle{position:relative;float:right;margin-right:20px;padding:9px 10px;margin-top:8px;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 -20px}.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;box-shadow:none}.navbar-nav .open .dropdown-menu .dropdown-header,.navbar-nav .open .dropdown-menu>li>a{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:focus,.navbar-nav .open .dropdown-menu>li>a:hover{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{margin-left:-20px;margin-right:-20px;padding:10px 20px;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);margin-top:8px;margin-bottom:8px}@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 .form-control,.navbar-form .input-group .input-group-addon,.navbar-form .input-group .input-group-btn{width:auto}.navbar-form .input-group>.form-control{width:100%}.navbar-form .control-label{margin-bottom:0;vertical-align:middle}.navbar-form .checkbox,.navbar-form .radio{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.navbar-form .checkbox label,.navbar-form .radio label{padding-left:0}.navbar-form .checkbox input[type=checkbox],.navbar-form .radio input[type=radio]{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;border:0;margin-left:0;margin-right:0;padding-top:0;padding-bottom:0;-webkit-box-shadow:none;box-shadow:none}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{margin-bottom:0;border-top-right-radius:4px;border-top-left-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-left:20px;margin-right:20px}}@media (min-width:768px){.navbar-left{float:left!important}.navbar-right{float:right!important;margin-right:20px}.navbar-right~.navbar-right{margin-right:0}}.navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.navbar-default .navbar-brand{color:#1581AB}.navbar-default .navbar-brand:focus,.navbar-default .navbar-brand:hover{color:#0f5f7e;background-color:transparent}.navbar-default .navbar-text{color:#777}.navbar-default .navbar-nav>li>a{color:#1581AB}.navbar-default .navbar-nav>li>a:focus,.navbar-default .navbar-nav>li>a:hover{color:#333;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:focus,.navbar-default .navbar-nav>.active>a:hover{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:focus,.navbar-default .navbar-nav>.disabled>a:hover{color:#ccc;background-color:transparent}.navbar-default .navbar-toggle{border-color:#ddd}.navbar-default .navbar-toggle:focus,.navbar-default .navbar-toggle:hover{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:focus,.navbar-default .navbar-nav>.open>a:hover{background-color:#e7e7e7;color:#555}@media (max-width:767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#1581AB}.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#ccc;background-color:transparent}}.navbar-default .navbar-link{color:#1581AB}.navbar-default .navbar-link:hover{color:#333}.navbar-default .btn-link{color:#1581AB}.navbar-default .btn-link:focus,.navbar-default .btn-link:hover{color:#333}.navbar-default .btn-link[disabled]:focus,.navbar-default .btn-link[disabled]:hover,fieldset[disabled] .navbar-default .btn-link:focus,fieldset[disabled] .navbar-default .btn-link:hover{color:#ccc}.navbar-inverse{background-color:#222;border-color:#080808}.navbar-inverse .navbar-brand{color:#9d9d9d}.navbar-inverse .navbar-brand:focus,.navbar-inverse .navbar-brand:hover{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:focus,.navbar-inverse .navbar-nav>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:focus,.navbar-inverse .navbar-nav>.active>a:hover{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:focus,.navbar-inverse .navbar-nav>.disabled>a:hover{color:#444;background-color:transparent}.navbar-inverse .navbar-toggle{border-color:#333}.navbar-inverse .navbar-toggle:focus,.navbar-inverse .navbar-toggle:hover{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:focus,.navbar-inverse .navbar-nav>.open>a:hover{background-color:#080808;color:#fff}@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:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover{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:focus,.navbar-inverse .btn-link:hover{color:#fff}.navbar-inverse .btn-link[disabled]:focus,.navbar-inverse .btn-link[disabled]:hover,fieldset[disabled] .navbar-inverse .btn-link:focus,fieldset[disabled] .navbar-inverse .btn-link:hover{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{content:"/\00a0";padding:0 5px;color:#ccc}.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;line-height:1.42857143;text-decoration:none;color:#337ab7;background-color:#fff;border:1px solid #ddd;margin-left:-1px}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:4px;border-top-left-radius:4px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-bottom-right-radius:4px;border-top-right-radius:4px}.pagination>li>a:focus,.pagination>li>a:hover,.pagination>li>span:focus,.pagination>li>span:hover{z-index:2;color:#23527c;background-color:#eee;border-color:#ddd}.pagination>.active>a,.pagination>.active>a:focus,.pagination>.active>a:hover,.pagination>.active>span,.pagination>.active>span:focus,.pagination>.active>span:hover{z-index:3;color:#fff;background-color:#337ab7;border-color:#337ab7;cursor:default}.pagination>.disabled>a,.pagination>.disabled>a:focus,.pagination>.disabled>a:hover,.pagination>.disabled>span,.pagination>.disabled>span:focus,.pagination>.disabled>span:hover{color:#777;background-color:#fff;border-color:#ddd;cursor:not-allowed}.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-bottom-left-radius:6px;border-top-left-radius:6px}.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span{border-bottom-right-radius:6px;border-top-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-bottom-left-radius:3px;border-top-left-radius:3px}.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-bottom-right-radius:3px;border-top-right-radius:3px}.pager{padding-left:0;margin:20px 0;list-style:none;text-align:center}.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:focus,.pager li>a:hover{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:focus,.pager .disabled>a:hover,.pager .disabled>span{color:#777;background-color:#fff;cursor:not-allowed}.label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}a.label:focus,a.label:hover{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]:focus,.label-default[href]:hover{background-color:#5e5e5e}.label-primary{background-color:#337ab7}.label-primary[href]:focus,.label-primary[href]:hover{background-color:#286090}.label-success{background-color:#5cb85c}.label-success[href]:focus,.label-success[href]:hover{background-color:#449d44}.label-info{background-color:#5bc0de}.label-info[href]:focus,.label-info[href]:hover{background-color:#31b0d5}.label-warning{background-color:#f0ad4e}.label-warning[href]:focus,.label-warning[href]:hover{background-color:#ec971f}.label-danger{background-color:#d9534f}.label-danger[href]:focus,.label-danger[href]:hover{background-color:#c9302c}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:700;color:#fff;line-height:1;vertical-align:middle;white-space:nowrap;text-align:center;background-color:#777;border-radius:10px}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.btn-group-xs>.btn .badge,.btn-xs .badge{top:0;padding:1px 5px}a.badge:focus,a.badge:hover{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{border-radius:6px;padding-left:15px;padding-right:15px}.jumbotron .container{max-width:100%}@media screen and (min-width:768px){.jumbotron{padding-top:48px;padding-bottom:48px}.container .jumbotron,.container-fluid .jumbotron{padding-left:60px;padding-right: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 a>img,.thumbnail>img{margin-left:auto;margin-right:auto}a.thumbnail.active,a.thumbnail:focus,a.thumbnail:hover{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:700}.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{background-color:#dff0d8;border-color:#d6e9c6;color:#3c763d}.alert-success hr{border-top-color:#c9e2b3}.alert-success .alert-link{color:#2b542c}.alert-info{background-color:#d9edf7;border-color:#bce8f1;color:#31708f}.alert-info hr{border-top-color:#a6e1ec}.alert-info .alert-link{color:#245269}.alert-warning{background-color:#fcf8e3;border-color:#faebcc;color:#8a6d3b}.alert-warning hr{border-top-color:#f7e1b5}.alert-warning .alert-link{color:#66512c}.alert-danger{background-color:#f2dede;border-color:#ebccd1;color:#a94442}.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}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{overflow:hidden;height:20px;margin-bottom:20px;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-bar-striped,.progress-striped .progress-bar{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);background-size:40px 40px}.progress-bar.active,.progress.active .progress-bar{-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{zoom:1;overflow:hidden}.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-body,.media-left,.media-right{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{margin-bottom:20px;padding-left:0}.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-right-radius:4px;border-top-left-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:focus,a.list-group-item:hover,button.list-group-item:focus,button.list-group-item:hover{text-decoration:none;color:#555;background-color:#f5f5f5}button.list-group-item{width:100%;text-align:left}.list-group-item.disabled,.list-group-item.disabled:focus,.list-group-item.disabled:hover{background-color:#eee;color:#777;cursor:not-allowed}.list-group-item.disabled .list-group-item-heading,.list-group-item.disabled:focus .list-group-item-heading,.list-group-item.disabled:hover .list-group-item-heading{color:inherit}.list-group-item.disabled .list-group-item-text,.list-group-item.disabled:focus .list-group-item-text,.list-group-item.disabled:hover .list-group-item-text{color:#777}.list-group-item.active,.list-group-item.active:focus,.list-group-item.active:hover{z-index:2;color:#fff;background-color:#337ab7;border-color:#337ab7}.list-group-item.active .list-group-item-heading,.list-group-item.active .list-group-item-heading>.small,.list-group-item.active .list-group-item-heading>small,.list-group-item.active:focus .list-group-item-heading,.list-group-item.active:focus .list-group-item-heading>.small,.list-group-item.active:focus .list-group-item-heading>small,.list-group-item.active:hover .list-group-item-heading,.list-group-item.active:hover .list-group-item-heading>.small,.list-group-item.active:hover .list-group-item-heading>small{color:inherit}.list-group-item.active .list-group-item-text,.list-group-item.active:focus .list-group-item-text,.list-group-item.active:hover .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:focus,a.list-group-item-success:hover,button.list-group-item-success:focus,button.list-group-item-success:hover{color:#3c763d;background-color:#d0e9c6}a.list-group-item-success.active,a.list-group-item-success.active:focus,a.list-group-item-success.active:hover,button.list-group-item-success.active,button.list-group-item-success.active:focus,button.list-group-item-success.active:hover{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:focus,a.list-group-item-info:hover,button.list-group-item-info:focus,button.list-group-item-info:hover{color:#31708f;background-color:#c4e3f3}a.list-group-item-info.active,a.list-group-item-info.active:focus,a.list-group-item-info.active:hover,button.list-group-item-info.active,button.list-group-item-info.active:focus,button.list-group-item-info.active:hover{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:focus,a.list-group-item-warning:hover,button.list-group-item-warning:focus,button.list-group-item-warning:hover{color:#8a6d3b;background-color:#faf2cc}a.list-group-item-warning.active,a.list-group-item-warning.active:focus,a.list-group-item-warning.active:hover,button.list-group-item-warning.active,button.list-group-item-warning.active:focus,button.list-group-item-warning.active:hover{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:focus,a.list-group-item-danger:hover,button.list-group-item-danger:focus,button.list-group-item-danger:hover{color:#a94442;background-color:#ebcccc}a.list-group-item-danger.active,a.list-group-item-danger.active:focus,a.list-group-item-danger.active:hover,button.list-group-item-danger.active,button.list-group-item-danger.active:focus,button.list-group-item-danger.active:hover{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-right-radius:3px;border-top-left-radius:3px}.panel-heading>.dropdown .dropdown-toggle{color:inherit}.panel-title{margin-top:0;margin-bottom:0;font-size:16px;color:inherit}.panel-title>.small,.panel-title>.small>a,.panel-title>a,.panel-title>small,.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-right-radius:3px;border-top-left-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-right-radius:0;border-top-left-radius:0}.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.list-group+.panel-footer{border-top-width:0}.panel>.panel-collapse>.table,.panel>.table,.panel>.table-responsive>.table{margin-bottom:0}.panel>.panel-collapse>.table caption,.panel>.table caption,.panel>.table-responsive>.table caption{padding-left:15px;padding-right:15px}.panel>.table-responsive:first-child>.table:first-child,.panel>.table:first-child{border-top-right-radius:3px;border-top-left-radius:3px}.panel>.table-responsive:first-child>.table:first-child>tbody: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:first-child>thead:first-child>tr:first-child{border-top-left-radius:3px;border-top-right-radius:3px}.panel>.table-responsive:first-child>.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 th:first-child,.panel>.table-responsive:first-child>.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 th:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table:first-child>thead:first-child>tr:first-child th:first-child{border-top-left-radius:3px}.panel>.table-responsive:first-child>.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 th:last-child,.panel>.table-responsive:first-child>.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 th:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table:first-child>thead:first-child>tr:first-child th:last-child{border-top-right-radius:3px}.panel>.table-responsive:last-child>.table:last-child,.panel>.table:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child{border-bottom-left-radius:3px;border-bottom-right-radius:3px}.panel>.table-responsive:last-child>.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 th:first-child,.panel>.table-responsive:last-child>.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 th:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child{border-bottom-left-radius:3px}.panel>.table-responsive:last-child>.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 th:last-child,.panel>.table-responsive:last-child>.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 th:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.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 td,.panel>.table>tbody:first-child>tr:first-child th{border-top:0}.panel>.table-bordered,.panel>.table-responsive>.table-bordered{border:0}.panel>.table-bordered>tbody>tr>td:first-child,.panel>.table-bordered>tbody>tr>th:first-child,.panel>.table-bordered>tfoot>tr>td:first-child,.panel>.table-bordered>tfoot>tr>th:first-child,.panel>.table-bordered>thead>tr>td:first-child,.panel>.table-bordered>thead>tr>th:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.panel>.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.panel>.table-bordered>tbody>tr>td:last-child,.panel>.table-bordered>tbody>tr>th:last-child,.panel>.table-bordered>tfoot>tr>td:last-child,.panel>.table-bordered>tfoot>tr>th:last-child,.panel>.table-bordered>thead>tr>td:last-child,.panel>.table-bordered>thead>tr>th:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.panel>.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.panel>.table-bordered>tbody>tr:first-child>td,.panel>.table-bordered>tbody>tr:first-child>th,.panel>.table-bordered>thead>tr:first-child>td,.panel>.table-bordered>thead>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>th,.panel>.table-responsive>.table-bordered>thead>tr:first-child>td,.panel>.table-responsive>.table-bordered>thead>tr:first-child>th{border-bottom:0}.panel>.table-bordered>tbody>tr:last-child>td,.panel>.table-bordered>tbody>tr:last-child>th,.panel>.table-bordered>tfoot>tr:last-child>td,.panel>.table-bordered>tfoot>tr:last-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}.panel>.table-responsive{border:0;margin-bottom: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>.list-group,.panel-group .panel-heading+.panel-collapse>.panel-body{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 embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;left:0;bottom:0;height:100%;width: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:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:focus,.close:hover{color:#000;text-decoration:none;cursor:pointer;opacity:.5;filter:alpha(opacity=50)}button.close{padding:0;cursor:pointer;background:0 0;border:0;-webkit-appearance:none}.modal-open{overflow:hidden}.modal{display:none;overflow:hidden;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;-webkit-overflow-scrolling:touch;outline:0}.modal.fade .modal-dialog{-webkit-transform:translate(0,-25%);-ms-transform:translate(0,-25%);-o-transform:translate(0,-25%);transform:translate(0,-25%);-webkit-transition:-webkit-transform .3s ease-out;-moz-transition:-moz-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out}.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;border:1px solid #999;border:1px solid rgba(0,0,0,.2);border-radius:6px;-webkit-box-shadow:0 3px 9px rgba(0,0,0,.5);box-shadow:0 3px 9px rgba(0,0,0,.5);background-clip:padding-box;outline:0}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.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-left:5px;margin-bottom:0}.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-style:normal;font-weight:400;letter-spacing:normal;line-break:auto;line-height:1.42857143;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;white-space:normal;word-break:normal;word-spacing:normal;word-wrap:normal;font-size:12px;opacity:0;filter:alpha(opacity=0)}.tooltip.in{opacity:.9;filter:alpha(opacity=90)}.tooltip.top{margin-top:-3px;padding:5px 0}.tooltip.right{margin-left:3px;padding:0 5px}.tooltip.bottom{margin-top:3px;padding:5px 0}.tooltip.left{margin-left:-3px;padding:0 5px}.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{bottom:0;right:5px;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-style:normal;font-weight:400;letter-spacing:normal;line-break:auto;line-height:1.42857143;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;white-space:normal;word-break:normal;word-spacing:normal;word-wrap:normal;font-size:14px;background-color:#fff;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)}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{margin:0;padding:8px 14px;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{border-width:10px;content:""}.popover.top>.arrow{left:50%;margin-left:-11px;border-bottom-width:0;border-top-color:#999;border-top-color:rgba(0,0,0,.25);bottom:-11px}.popover.top>.arrow:after{content:" ";bottom:1px;margin-left:-10px;border-bottom-width:0;border-top-color:#fff}.popover.right>.arrow{top:50%;left:-11px;margin-top:-11px;border-left-width:0;border-right-color:#999;border-right-color:rgba(0,0,0,.25)}.popover.right>.arrow:after{content:" ";left:1px;bottom:-10px;border-left-width:0;border-right-color:#fff}.popover.bottom>.arrow{left:50%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,.25);top:-11px}.popover.bottom>.arrow:after{content:" ";top:1px;margin-left:-10px;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{content:" ";right:1px;border-right-width:0;border-left-color:#fff;bottom:-10px}.carousel{position:relative}.carousel-inner{position:relative;overflow:hidden;width:100%}.carousel-inner>.item{display:none;position:relative;-webkit-transition:.6s ease-in-out left;-o-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel-inner>.item>a>img,.carousel-inner>.item>img{line-height:1}@media all and (transform-3d),(-webkit-transform-3d){.carousel-inner>.item{-webkit-transition:-webkit-transform .6s ease-in-out;-moz-transition:-moz-transform .6s ease-in-out;-o-transition:-o-transform .6s ease-in-out;transition:transform .6s ease-in-out;-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;backface-visibility:hidden;-webkit-perspective:1000px;-moz-perspective:1000px;perspective:1000px}.carousel-inner>.item.active.right,.carousel-inner>.item.next{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0);left:0}.carousel-inner>.item.active.left,.carousel-inner>.item.prev{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0);left:0}.carousel-inner>.item.active,.carousel-inner>.item.next.left,.carousel-inner>.item.prev.right{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);left: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;left:0;bottom:0;width:15%;opacity:.5;filter:alpha(opacity=50);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)}.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:linear-gradient(to right,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1)}.carousel-control.right{left:auto;right:0;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:linear-gradient(to right,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1)}.carousel-control:focus,.carousel-control:hover{outline:0;color:#fff;text-decoration:none;opacity:.9;filter:alpha(opacity=90)}.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next,.carousel-control .icon-prev{position:absolute;top:50%;margin-top:-10px;z-index:5;display:inline-block}.carousel-control .glyphicon-chevron-left,.carousel-control .icon-prev{left:50%;margin-left:-10px}.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next{right:50%;margin-right:-10px}.carousel-control .icon-next,.carousel-control .icon-prev{width:20px;height:20px;line-height:1;font-family:serif}.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%;margin-left:-30%;padding-left:0;list-style:none;text-align:center}.carousel-indicators li{display:inline-block;width:10px;height:10px;margin:1px;text-indent:-999px;border:1px solid #fff;border-radius:10px;cursor:pointer;background-color:#000\9;background-color:rgba(0,0,0,0)}.carousel-indicators .active{margin:0;width:12px;height:12px;background-color:#fff}.carousel-caption{position:absolute;left:15%;right:15%;bottom:20px;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-next,.carousel-control .icon-prev{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{left:20%;right:20%;padding-bottom:30px}.carousel-indicators{bottom:20px}}.btn-group-vertical>.btn-group:after,.btn-group-vertical>.btn-group:before,.btn-toolbar:after,.btn-toolbar:before,.clearfix:after,.clearfix:before,.container-fluid:after,.container-fluid:before,.container:after,.container:before,.dl-horizontal dd:after,.dl-horizontal dd:before,.form-horizontal .form-group:after,.form-horizontal .form-group:before,.modal-footer:after,.modal-footer:before,.modal-header:after,.modal-header:before,.nav:after,.nav:before,.navbar-collapse:after,.navbar-collapse:before,.navbar-header:after,.navbar-header:before,.navbar:after,.navbar:before,.pager:after,.pager:before,.panel-body:after,.panel-body:before,.row:after,.row:before{content:" ";display:table}.btn-group-vertical>.btn-group:after,.btn-toolbar:after,.clearfix:after,.container-fluid:after,.container:after,.dl-horizontal dd:after,.form-horizontal .form-group:after,.modal-footer:after,.modal-header:after,.nav:after,.navbar-collapse:after,.navbar-header:after,.navbar:after,.pager:after,.panel-body:after,.row:after{clear:both}.center-block{display:block;margin-left:auto;margin-right: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-lg,.visible-md,.visible-sm,.visible-xs{display:none!important}.visible-lg-block,.visible-lg-inline,.visible-lg-inline-block,.visible-md-block,.visible-md-inline,.visible-md-inline-block,.visible-sm-block,.visible-sm-inline,.visible-sm-inline-block,.visible-xs-block,.visible-xs-inline,.visible-xs-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}td.visible-xs,th.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}td.visible-sm,th.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}td.visible-md,th.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}td.visible-lg,th.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}td.visible-print,th.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 */ \ No newline at end of file diff --git a/themes/devopsdays-responsive/static/css/bootstrap.css.map b/themes/devopsdays-responsive/static/css/bootstrap.css.map deleted file mode 100644 index fcf00e130a7..00000000000 --- a/themes/devopsdays-responsive/static/css/bootstrap.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../less/normalize.less","../less/print.less","../less/glyphicons.less","../less/scaffolding.less","../less/mixins/vendor-prefixes.less","../less/variables.less","../less/mixins/tab-focus.less","../less/carousel.less","../less/thumbnails.less","../less/mixins/image.less","../less/type.less","../less/mixins/text-emphasis.less","../less/mixins/background-variant.less","../less/mixins/text-overflow.less","../less/code.less","../less/grid.less","../less/mixins/grid.less","../less/mixins/grid-framework.less","../less/tables.less","../less/mixins/table-row.less","../less/forms.less","../less/mixins/forms.less","../less/buttons.less","../less/mixins/buttons.less","../less/mixins/opacity.less","../less/button-groups.less","../less/component-animations.less","../less/dropdowns.less","../less/mixins/nav-divider.less","../less/mixins/reset-filter.less","../less/mixins/border-radius.less","../less/input-groups.less","../less/navs.less","../less/navbar.less","../less/mixins/nav-vertical-align.less","../less/utilities.less","../less/breadcrumbs.less","../less/pagination.less","../less/mixins/pagination.less","../less/pager.less","../less/labels.less","../less/mixins/labels.less","../less/badges.less","../less/jumbotron.less","../less/alerts.less","../less/mixins/alerts.less","../less/progress-bars.less","../less/mixins/gradients.less","../less/mixins/progress-bar.less","../less/media.less","../less/list-group.less","../less/mixins/list-group.less","../less/panels.less","../less/mixins/panels.less","../less/responsive-embed.less","../less/wells.less","../less/close.less","../less/modals.less","../less/tooltip.less","../less/mixins/reset-text.less","../less/popovers.less","../less/mixins/clearfix.less","../less/mixins/center-block.less","../less/mixins/hide-text.less","../less/responsive-utilities.less","../less/mixins/responsive-visibility.less"],"names":[],"mappings":";;;;4EAQA,KACE,YAAA,WACA,qBAAA,KACA,yBAAA,KAOF,KACE,OAAA,EAaF,QACA,MACA,QACA,WACA,OACA,OACA,OACA,OACA,KACA,KACA,IACA,QACA,QACE,QAAA,MAQF,MACA,OACA,SACA,MACE,QAAA,aACA,eAAA,SAQO,sBACP,QAAA,KACA,OAAA,EAQF,SACA,SACE,QAAA,KAUF,EACE,iBAAA,YAQD,SACA,QACC,QAAA,EAUE,YACF,cAAA,IAAA,OAOF,EACA,OACE,YAAA,IAOF,IACE,WAAA,OAQF,GACE,UAAA,IACA,OAAA,MAAA,EAOF,KACE,WAAA,KACA,MAAA,KAOF,MACE,UAAA,IAOF,IACA,IACE,UAAA,IACA,YAAA,EACA,SAAA,SACA,eAAA,SAGF,IACE,IAAA,MAGF,IACE,OAAA,OAUF,IACE,OAAA,EAOK,eACL,SAAA,OAUF,OACE,OAAA,IAAA,KAOF,GACE,WAAA,YACA,OAAA,EAOF,IACE,SAAA,KAOF,KACA,IACA,IACA,KACE,YAAA,UAAA,UACA,UAAA,IAkBF,OACA,MACA,SACA,OACA,SACE,MAAA,QACA,KAAA,QACA,OAAA,EAOF,OACE,SAAA,QAUF,OACA,OACE,eAAA,KAWF,OACU,wBACL,kBACA,mBACH,mBAAA,OACA,OAAA,QAOI,iBACI,qBACR,OAAA,QAOI,yBACD,wBACH,OAAA,EACA,QAAA,EAQF,MACE,YAAA,OAWG,qBACA,kBACH,WAAA,WACA,QAAA,EASkB,8CACA,8CAClB,OAAA,KAQG,mBACH,mBAAA,UACA,WAAA,YASkB,iDACA,8CAClB,mBAAA,KAOF,SACE,OAAA,IAAA,MAAA,OACA,OAAA,EAAA,IACA,QAAA,MAAA,OAAA,MAQF,OACE,OAAA,EACA,QAAA,EAOF,SACE,SAAA,KAQF,SACE,YAAA,IAUF,MACE,gBAAA,SACA,eAAA,EAGF,GACA,GACE,QAAA,uFCjUF,aA7FI,EAEC,OADA,QAEG,WAAA,cACA,MAAA,eACA,WAAA,eACA,YAAA,eAGJ,EACC,UACG,gBAAA,UAGG,cACH,QAAA,KAAc,WAAd,IAGO,kBACP,QAAA,KAAc,YAAd,IAMkB,6BADV,mBAER,QAAA,GAIJ,WADA,IAEI,OAAA,IAAA,MAAA,KACA,kBAAA,MAGJ,MACI,QAAA,mBAIJ,IADA,GAEI,kBAAA,MAGJ,IACI,UAAA,eAIJ,GACA,GAFA,EAGI,QAAA,EACA,OAAA,EAGJ,GACA,GACI,iBAAA,MAMJ,QACI,QAAA,KAIA,YAAA,oBACI,iBAAA,eAGR,OACI,OAAA,IAAA,MAAA,KAGJ,OACI,gBAAA,mBAEA,UACA,UACI,iBAAA,eAKJ,mBADA,mBAEI,OAAA,IAAA,MAAA,gBCrFZ,WACE,YAAA,uBACA,IAAS,+CACT,IAAS,sDACA,4BAAA,iDACA,gBAAA,gDACA,eAAA,+CACA,mBAAA,2EAJT,cAQF,WACE,SAAA,SACA,IAAA,IACA,QAAA,aACA,YAAA,uBACA,WAAA,OACA,YAAA,IACA,YAAA,EACA,uBAAA,YACA,wBAAA,UAImC,2BAAU,QAAA,QACV,uBAAU,QAAA,QAEV,sBAAA,uBAAU,QAAA,QACV,wBAAU,QAAA,QACV,wBAAU,QAAA,QACV,2BAAU,QAAA,QACV,yBAAU,QAAA,QACV,wBAAU,QAAA,QACV,wBAAU,QAAA,QACV,yBAAU,QAAA,QACV,wBAAU,QAAA,QACV,uBAAU,QAAA,QACV,6BAAU,QAAA,QACV,uBAAU,QAAA,QACV,uBAAU,QAAA,QACV,2BAAU,QAAA,QACV,qBAAU,QAAA,QACV,0BAAU,QAAA,QACV,qBAAU,QAAA,QACV,yBAAU,QAAA,QACV,0BAAU,QAAA,QACV,2BAAU,QAAA,QACV,sBAAU,QAAA,QACV,yBAAU,QAAA,QACV,sBAAU,QAAA,QACV,wBAAU,QAAA,QACV,uBAAU,QAAA,QACV,uBAAU,QAAA,QACV,uBAAU,QAAA,QACV,uBAAU,QAAA,QACV,+BAAU,QAAA,QACV,2BAAU,QAAA,QACV,yBAAU,QAAA,QACV,wBAAU,QAAA,QACV,8BAAU,QAAA,QACV,yBAAU,QAAA,QACV,0BAAU,QAAA,QACV,2BAAU,QAAA,QACV,uBAAU,QAAA,QACV,uBAAU,QAAA,QACV,6BAAU,QAAA,QACV,6BAAU,QAAA,QACV,8BAAU,QAAA,QACV,4BAAU,QAAA,QACV,yBAAU,QAAA,QACV,0BAAU,QAAA,QACV,sBAAU,QAAA,QACV,uBAAU,QAAA,QACV,uBAAU,QAAA,QACV,2BAAU,QAAA,QACV,wBAAU,QAAA,QACV,yBAAU,QAAA,QACV,uBAAU,QAAA,QACV,uBAAU,QAAA,QACV,yBAAU,QAAA,QACV,8BAAU,QAAA,QACV,6BAAU,QAAA,QACV,6BAAU,QAAA,QACV,+BAAU,QAAA,QACV,8BAAU,QAAA,QACV,gCAAU,QAAA,QACV,uBAAU,QAAA,QACV,8BAAU,QAAA,QACV,+BAAU,QAAA,QACV,iCAAU,QAAA,QACV,0BAAU,QAAA,QACV,6BAAU,QAAA,QACV,yBAAU,QAAA,QACV,uBAAU,QAAA,QACV,uBAAU,QAAA,QACV,wBAAU,QAAA,QACV,wBAAU,QAAA,QACV,uBAAU,QAAA,QACV,gCAAU,QAAA,QACV,gCAAU,QAAA,QACV,2BAAU,QAAA,QACV,uBAAU,QAAA,QACV,wBAAU,QAAA,QACV,uBAAU,QAAA,QACV,0BAAU,QAAA,QACV,+BAAU,QAAA,QACV,+BAAU,QAAA,QACV,wBAAU,QAAA,QACV,+BAAU,QAAA,QACV,gCAAU,QAAA,QACV,4BAAU,QAAA,QACV,6BAAU,QAAA,QACV,8BAAU,QAAA,QACV,0BAAU,QAAA,QACV,gCAAU,QAAA,QACV,4BAAU,QAAA,QACV,6BAAU,QAAA,QACV,gCAAU,QAAA,QACV,4BAAU,QAAA,QACV,6BAAU,QAAA,QACV,6BAAU,QAAA,QACV,8BAAU,QAAA,QACV,2BAAU,QAAA,QACV,6BAAU,QAAA,QACV,4BAAU,QAAA,QACV,8BAAU,QAAA,QACV,+BAAU,QAAA,QACV,mCAAU,QAAA,QACV,uBAAU,QAAA,QACV,uBAAU,QAAA,QACV,uBAAU,QAAA,QACV,2BAAU,QAAA,QACV,4BAAU,QAAA,QACV,+BAAU,QAAA,QACV,wBAAU,QAAA,QACV,2BAAU,QAAA,QACV,yBAAU,QAAA,QACV,0BAAU,QAAA,QACV,yBAAU,QAAA,QACV,6BAAU,QAAA,QACV,+BAAU,QAAA,QACV,0BAAU,QAAA,QACV,gCAAU,QAAA,QACV,+BAAU,QAAA,QACV,8BAAU,QAAA,QACV,kCAAU,QAAA,QACV,oCAAU,QAAA,QACV,sBAAU,QAAA,QACV,2BAAU,QAAA,QACV,uBAAU,QAAA,QACV,8BAAU,QAAA,QACV,4BAAU,QAAA,QACV,8BAAU,QAAA,QACV,6BAAU,QAAA,QACV,4BAAU,QAAA,QACV,0BAAU,QAAA,QACV,4BAAU,QAAA,QACV,qCAAU,QAAA,QACV,oCAAU,QAAA,QACV,kCAAU,QAAA,QACV,oCAAU,QAAA,QACV,wBAAU,QAAA,QACV,yBAAU,QAAA,QACV,wBAAU,QAAA,QACV,yBAAU,QAAA,QACV,4BAAU,QAAA,QACV,6BAAU,QAAA,QACV,4BAAU,QAAA,QACV,4BAAU,QAAA,QACV,8BAAU,QAAA,QACV,uBAAU,QAAA,QACV,wBAAU,QAAA,QACV,0BAAU,QAAA,QACV,sBAAU,QAAA,QACV,sBAAU,QAAA,QACV,uBAAU,QAAA,QACV,mCAAU,QAAA,QACV,uCAAU,QAAA,QACV,gCAAU,QAAA,QACV,oCAAU,QAAA,QACV,qCAAU,QAAA,QACV,yCAAU,QAAA,QACV,4BAAU,QAAA,QACV,yBAAU,QAAA,QACV,gCAAU,QAAA,QACV,8BAAU,QAAA,QACV,yBAAU,QAAA,QACV,wBAAU,QAAA,QACV,0BAAU,QAAA,QACV,6BAAU,QAAA,QACV,yBAAU,QAAA,QACV,uBAAU,QAAA,QACV,uBAAU,QAAA,QACV,wBAAU,QAAA,QACV,yBAAU,QAAA,QACV,yBAAU,QAAA,QACV,uBAAU,QAAA,QACV,8BAAU,QAAA,QACV,+BAAU,QAAA,QACV,gCAAU,QAAA,QACV,8BAAU,QAAA,QACV,8BAAU,QAAA,QACV,8BAAU,QAAA,QACV,2BAAU,QAAA,QACV,0BAAU,QAAA,QACV,yBAAU,QAAA,QACV,6BAAU,QAAA,QACV,2BAAU,QAAA,QACV,4BAAU,QAAA,QACV,wBAAU,QAAA,QACV,wBAAU,QAAA,QACV,2BAAU,QAAA,QACV,2BAAU,QAAA,QACV,4BAAU,QAAA,QACV,+BAAU,QAAA,QACV,8BAAU,QAAA,QACV,4BAAU,QAAA,QACV,4BAAU,QAAA,QACV,4BAAU,QAAA,QACV,iCAAU,QAAA,QACV,oCAAU,QAAA,QACV,iCAAU,QAAA,QACV,+BAAU,QAAA,QACV,+BAAU,QAAA,QACV,iCAAU,QAAA,QACV,qBAAU,QAAA,QACV,4BAAU,QAAA,QACV,4BAAU,QAAA,QACV,2BAAU,QAAA,QACV,uBAAU,QAAA,QACV,wBAAU,QAAA,QASV,wBAAU,QAAA,QACV,4BAAU,QAAA,QACV,uBAAU,QAAA,QACV,wBAAU,QAAA,QACV,uBAAU,QAAA,QACV,yBAAU,QAAA,QACV,yBAAU,QAAA,QACV,+BAAU,QAAA,QACV,uBAAU,QAAA,QACV,6BAAU,QAAA,QACV,sBAAU,QAAA,QACV,wBAAU,QAAA,QACV,wBAAU,QAAA,QACV,4BAAU,QAAA,QACV,uBAAU,QAAA,QACV,4BAAU,QAAA,QACV,6BAAU,QAAA,QACV,2BAAU,QAAA,QACV,0BAAU,QAAA,QACV,sBAAU,QAAA,QACV,sBAAU,QAAA,QACV,sBAAU,QAAA,QACV,sBAAU,QAAA,QACV,wBAAU,QAAA,QACV,sBAAU,QAAA,QACV,wBAAU,QAAA,QACV,4BAAU,QAAA,QACV,mCAAU,QAAA,QACV,4BAAU,QAAA,QACV,oCAAU,QAAA,QACV,kCAAU,QAAA,QACV,iCAAU,QAAA,QACV,+BAAU,QAAA,QACV,sBAAU,QAAA,QACV,wBAAU,QAAA,QACV,6BAAU,QAAA,QACV,4BAAU,QAAA,QACV,6BAAU,QAAA,QACV,kCAAU,QAAA,QACV,mCAAU,QAAA,QACV,sCAAU,QAAA,QACV,0CAAU,QAAA,QACV,oCAAU,QAAA,QACV,wCAAU,QAAA,QACV,qCAAU,QAAA,QACV,iCAAU,QAAA,QACV,gCAAU,QAAA,QACV,kCAAU,QAAA,QACV,+BAAU,QAAA,QACV,0BAAU,QAAA,QACV,8BAAU,QAAA,QACV,4BAAU,QAAA,QACV,4BAAU,QAAA,QACV,6BAAU,QAAA,QACV,4BAAU,QAAA,QACV,0BAAU,QAAA,QCtS/C,ECgEE,mBAAA,WACG,gBAAA,WACK,WAAA,WD9DT,OADA,QC6DC,mBAAA,WACG,gBAAA,WACK,WAAA,WDvDV,KACE,UAAA,KACA,4BAAA,YAGF,KACE,YEiBwB,iBAAA,UAAA,MAAA,WFhBxB,UAAA,KACA,YAAA,WACA,MAAA,KACA,iBAAA,KAKF,OADA,MAEA,OACA,SACE,YAAA,QACA,UAAA,QACA,YAAA,QAMF,EACE,MAAA,QACA,gBAAA,KAGC,QADA,QAEC,MAAA,QACA,gBAAA,UAGD,QGrDD,QAAA,KAAA,OAEA,QAAA,IAAA,KAAA,yBACA,eAAA,KH6DF,OACE,OAAA,EAMF,IACE,eAAA,OItDM,4BADJ,0BJ2DJ,gBK/DI,iBADF,eCPA,QAAA,MACA,UAAA,KACA,OAAA,KN0EF,aACE,cAAA,IAMF,eACE,QAAA,IACA,YAAA,WACA,iBAAA,KACA,OAAA,IAAA,MAAA,KACA,cAAA,IC6FA,mBAAA,IAAA,IAAA,YACK,cAAA,IAAA,IAAA,YACG,WAAA,IAAA,IAAA,YKvLR,QAAA,aACA,UAAA,KACA,OAAA,KN8FF,YACE,cAAA,IAMF,GACE,WAAA,KACA,cAAA,KACA,OAAA,EACA,WAAA,IAAA,MAAA,KAQF,SACE,SAAA,SACA,MAAA,IACA,OAAA,IACA,OAAA,KACA,QAAA,EACA,SAAA,OACA,KAAM,cACN,OAAA,EAQC,0BACA,yBACC,SAAA,OACA,MAAA,KACA,OAAA,KACA,OAAA,EACA,SAAA,QACA,KAAA,KAWJ,cACE,OAAA,QOtJF,IAAK,IAAK,IAAK,IAAK,IAAK,IADzB,GAAI,GAAI,GAAI,GAAI,GAAI,GAElB,YAAA,QACA,YAAA,IACA,YAAA,IACA,MAAA,QAGA,WADA,UACA,WADA,UACA,WADA,UACA,WADA,UACA,WADA,UACA,WADA,UACA,UADA,SACA,UADA,SACA,UADA,SACA,UADA,SACA,UADA,SACA,UADA,SAEE,YAAA,IACA,YAAA,EACA,MAAA,KAIA,IACA,IACA,IAFJ,GACA,GACA,GACE,WAAA,KACA,cAAA,KAGA,WADA,UACA,WADA,UACA,WADA,UACA,UADA,SACA,UADA,SACA,UADA,SAEE,UAAA,IAGA,IACA,IACA,IAFJ,GACA,GACA,GACE,WAAA,KACA,cAAA,KAGA,WADA,UACA,WADA,UACA,WADA,UACA,UADA,SACA,UADA,SACA,UADA,SAEE,UAAA,IAIA,IAAJ,GAAU,UAAA,KACN,IAAJ,GAAU,UAAA,KACN,IAAJ,GAAU,UAAA,KACN,IAAJ,GAAU,UAAA,KACN,IAAJ,GAAU,UAAA,KACN,IAAJ,GAAU,UAAA,KAMV,EACE,OAAA,EAAA,EAAA,KAGF,MACE,cAAA,KACA,UAAA,KACA,YAAA,IACA,YAAA,IAEmC,yBA2OnC,MA1OE,UAAA,MAUJ,OADA,MAEE,UAAA,IAIF,MADA,KAEE,iBAAA,QACA,QAAA,KAIF,WAAuB,WAAA,KACvB,YAAuB,WAAA,MACvB,aAAuB,WAAA,OACvB,cAAuB,WAAA,QACvB,aAAuB,YAAA,OAGvB,gBAAuB,eAAA,UACvB,gBAAuB,eAAA,UACvB,iBAAuB,eAAA,WAGvB,YACE,MAAA,KAEF,cCrGE,MAAA,QAEE,qBADA,qBAEA,MAAA,QDqGJ,cCxGE,MAAA,QAEE,qBADA,qBAEA,MAAA,QDwGJ,WC3GE,MAAA,QAEE,kBADA,kBAEA,MAAA,QD2GJ,cC9GE,MAAA,QAEE,qBADA,qBAEA,MAAA,QD8GJ,aCjHE,MAAA,QAEE,oBADA,oBAEA,MAAA,QDqHJ,YAGE,MAAA,KE3HA,iBAAA,QAEE,mBADA,mBAEA,iBAAA,QF2HJ,YE9HE,iBAAA,QAEE,mBADA,mBAEA,iBAAA,QF8HJ,SEjIE,iBAAA,QAEE,gBADA,gBAEA,iBAAA,QFiIJ,YEpIE,iBAAA,QAEE,mBADA,mBAEA,iBAAA,QFoIJ,WEvIE,iBAAA,QAEE,kBADA,kBAEA,iBAAA,QF4IJ,aACE,eAAA,IACA,OAAA,KAAA,EAAA,KACA,cAAA,IAAA,MAAA,KASF,GADA,GAEE,WAAA,EACA,cAAA,KAEA,MADA,MACA,MADA,MAEE,cAAA,EAOJ,eACE,aAAA,EACA,WAAA,KAIF,aALE,aAAA,EACA,WAAA,KAMA,YAAA,KAEA,gBACE,QAAA,aACA,aAAA,IACA,cAAA,IAKJ,GACE,WAAA,EACA,cAAA,KAGF,GADA,GAEE,YAAA,WAEF,GACE,YAAA,IAEF,GACE,YAAA,EAa8C,yBAC5C,kBACE,MAAA,KACA,MAAA,MACA,MAAA,KACA,WAAA,MGtNJ,SAAA,OACA,cAAA,SACA,YAAA,OHuNE,kBACE,YAAA,OAYF,0BAFA,YAGF,OAAA,KACA,cAAA,IAAA,OAAA,KAEF,YACE,UAAA,IA9IqB,eAAA,UAmJvB,WACE,QAAA,KAAA,KACA,OAAA,EAAA,EAAA,KACA,UAAA,OACA,YAAA,IAAA,MAAA,KAKG,yBAAA,wBAAA,yBACC,cAAA,EAQJ,kBAFA,kBACA,iBAEE,QAAA,MACA,UAAA,IACA,YAAA,WACA,MAAA,KAEC,yBAAA,yBAAA,wBACC,QAAA,cAQN,oBACU,sBACR,cAAA,KACA,aAAA,EACA,aAAA,IAAA,MAAA,KACA,YAAA,EACA,WAAA,MAMG,kCAAA,kCAAA,iCAAA,oCAAA,oCAAA,mCAAU,QAAA,GACV,iCAAA,iCAAA,gCAAA,mCAAA,mCAAA,kCACC,QAAA,cAMN,QACE,cAAA,KACA,WAAA,OACA,YAAA,WItSF,KACA,IACA,IACA,KACE,YAAA,MAAA,OAAA,SAAA,cTqCiD,USjCnD,KACE,QAAA,IAAA,IACA,UAAA,IACA,MAAA,QACA,iBAAA,QACA,cAAA,IAIF,IACE,QAAA,IAAA,IACA,UAAA,IACA,MAAA,KACA,iBAAA,KACA,cAAA,IACA,WAAA,MAAA,EAAA,KAAA,EAAA,gBAEA,QACE,QAAA,EACA,UAAA,KACA,YAAA,IACA,WAAA,KAKJ,IACE,QAAA,MACA,QAAA,MACA,OAAA,EAAA,EAAA,KACA,UAAA,KACA,YAAA,WACA,WAAA,UACA,UAAA,WACA,MAAA,KACA,iBAAA,QACA,OAAA,IAAA,MAAA,KACA,cAAA,IAGA,SACE,QAAA,EACA,UAAA,QACA,MAAA,QACA,YAAA,SACA,iBAAA,YACA,cAAA,EAKJ,gBACE,WAAA,MACA,WAAA,OC1DF,WCHE,aAAA,KACA,YAAA,KACA,aAAA,KACA,cAAA,KDGmC,yBAwEnC,WAvEE,MAAA,OAEiC,yBAqEnC,WApEE,MAAA,OAEiC,0BAkEnC,WAjEE,MAAA,QAUJ,iBCvBE,aAAA,KACA,YAAA,KACA,aAAA,KACA,cAAA,KD6BF,KCvBE,YAAA,MACA,aAAA,MCAE,UAAA,WAAA,WAAA,WAAA,UAAA,UAAA,UAAA,UAAA,UAAA,UAAA,UAAA,UAAA,UAAA,WAAA,WAAA,WAAA,UAAA,UAAA,UAAA,UAAA,UAAA,UAAA,UAAA,UAAA,UAAA,WAAA,WAAA,WAAA,UAAA,UAAA,UAAA,UAAA,UAAA,UAAA,UAAA,UAAA,UAAA,WAAA,WAAA,WAAA,UAAA,UAAA,UAAA,UAAA,UAAA,UAAA,UAAA,UACE,SAAA,SAEA,WAAA,IAEA,aAAA,KACA,cAAA,KAgBF,UAAA,WAAA,WAAA,WAAA,UAAA,UAAA,UAAA,UAAA,UAAA,UAAA,UAAA,UACE,MAAA,KAOU,WACZ,MAAA,KADY,WACZ,MAAA,aADY,WACZ,MAAA,aADY,UACZ,MAAA,IADY,UACZ,MAAA,aADY,UACZ,MAAA,aADY,UACZ,MAAA,IADY,UACZ,MAAA,aADY,UACZ,MAAA,aADY,UACZ,MAAA,IADY,UACZ,MAAA,aADY,UACZ,MAAA,YAciB,gBACjB,MAAA,KADiB,gBACjB,MAAA,aADiB,gBACjB,MAAA,aADiB,eACjB,MAAA,IADiB,eACjB,MAAA,aADiB,eACjB,MAAA,aADiB,eACjB,MAAA,IADiB,eACjB,MAAA,aADiB,eACjB,MAAA,aADiB,eACjB,MAAA,IADiB,eACjB,MAAA,aADiB,eACjB,MAAA,YAIW,eACX,MAAA,KAhBiB,gBACjB,KAAA,KADiB,gBACjB,KAAA,aADiB,gBACjB,KAAA,aADiB,eACjB,KAAA,IADiB,eACjB,KAAA,aADiB,eACjB,KAAA,aADiB,eACjB,KAAA,IADiB,eACjB,KAAA,aADiB,eACjB,KAAA,aADiB,eACjB,KAAA,IADiB,eACjB,KAAA,aADiB,eACjB,KAAA,YAIW,eACX,KAAA,KAcmB,kBACnB,YAAA,KADmB,kBACnB,YAAA,aADmB,kBACnB,YAAA,aADmB,iBACnB,YAAA,IADmB,iBACnB,YAAA,aADmB,iBACnB,YAAA,aADmB,iBACnB,YAAA,IADmB,iBACnB,YAAA,aADmB,iBACnB,YAAA,aADmB,iBACnB,YAAA,IADmB,iBACnB,YAAA,aADmB,iBACnB,YAAA,YADmB,iBACnB,YAAA,EFT+B,yBEzB/B,UAAA,WAAA,WAAA,WAAA,UAAA,UAAA,UAAA,UAAA,UAAA,UAAA,UAAA,UACE,MAAA,KAOU,WACZ,MAAA,KADY,WACZ,MAAA,aADY,WACZ,MAAA,aADY,UACZ,MAAA,IADY,UACZ,MAAA,aADY,UACZ,MAAA,aADY,UACZ,MAAA,IADY,UACZ,MAAA,aADY,UACZ,MAAA,aADY,UACZ,MAAA,IADY,UACZ,MAAA,aADY,UACZ,MAAA,YAciB,gBACjB,MAAA,KADiB,gBACjB,MAAA,aADiB,gBACjB,MAAA,aADiB,eACjB,MAAA,IADiB,eACjB,MAAA,aADiB,eACjB,MAAA,aADiB,eACjB,MAAA,IADiB,eACjB,MAAA,aADiB,eACjB,MAAA,aADiB,eACjB,MAAA,IADiB,eACjB,MAAA,aADiB,eACjB,MAAA,YAIW,eACX,MAAA,KAhBiB,gBACjB,KAAA,KADiB,gBACjB,KAAA,aADiB,gBACjB,KAAA,aADiB,eACjB,KAAA,IADiB,eACjB,KAAA,aADiB,eACjB,KAAA,aADiB,eACjB,KAAA,IADiB,eACjB,KAAA,aADiB,eACjB,KAAA,aADiB,eACjB,KAAA,IADiB,eACjB,KAAA,aADiB,eACjB,KAAA,YAIW,eACX,KAAA,KAcmB,kBACnB,YAAA,KADmB,kBACnB,YAAA,aADmB,kBACnB,YAAA,aADmB,iBACnB,YAAA,IADmB,iBACnB,YAAA,aADmB,iBACnB,YAAA,aADmB,iBACnB,YAAA,IADmB,iBACnB,YAAA,aADmB,iBACnB,YAAA,aADmB,iBACnB,YAAA,IADmB,iBACnB,YAAA,aADmB,iBACnB,YAAA,YADmB,iBACnB,YAAA,GFA+B,yBElC/B,UAAA,WAAA,WAAA,WAAA,UAAA,UAAA,UAAA,UAAA,UAAA,UAAA,UAAA,UACE,MAAA,KAOU,WACZ,MAAA,KADY,WACZ,MAAA,aADY,WACZ,MAAA,aADY,UACZ,MAAA,IADY,UACZ,MAAA,aADY,UACZ,MAAA,aADY,UACZ,MAAA,IADY,UACZ,MAAA,aADY,UACZ,MAAA,aADY,UACZ,MAAA,IADY,UACZ,MAAA,aADY,UACZ,MAAA,YAciB,gBACjB,MAAA,KADiB,gBACjB,MAAA,aADiB,gBACjB,MAAA,aADiB,eACjB,MAAA,IADiB,eACjB,MAAA,aADiB,eACjB,MAAA,aADiB,eACjB,MAAA,IADiB,eACjB,MAAA,aADiB,eACjB,MAAA,aADiB,eACjB,MAAA,IADiB,eACjB,MAAA,aADiB,eACjB,MAAA,YAIW,eACX,MAAA,KAhBiB,gBACjB,KAAA,KADiB,gBACjB,KAAA,aADiB,gBACjB,KAAA,aADiB,eACjB,KAAA,IADiB,eACjB,KAAA,aADiB,eACjB,KAAA,aADiB,eACjB,KAAA,IADiB,eACjB,KAAA,aADiB,eACjB,KAAA,aADiB,eACjB,KAAA,IADiB,eACjB,KAAA,aADiB,eACjB,KAAA,YAIW,eACX,KAAA,KAcmB,kBACnB,YAAA,KADmB,kBACnB,YAAA,aADmB,kBACnB,YAAA,aADmB,iBACnB,YAAA,IADmB,iBACnB,YAAA,aADmB,iBACnB,YAAA,aADmB,iBACnB,YAAA,IADmB,iBACnB,YAAA,aADmB,iBACnB,YAAA,aADmB,iBACnB,YAAA,IADmB,iBACnB,YAAA,aADmB,iBACnB,YAAA,YADmB,iBACnB,YAAA,GFS+B,0BE3C/B,UAAA,WAAA,WAAA,WAAA,UAAA,UAAA,UAAA,UAAA,UAAA,UAAA,UAAA,UACE,MAAA,KAOU,WACZ,MAAA,KADY,WACZ,MAAA,aADY,WACZ,MAAA,aADY,UACZ,MAAA,IADY,UACZ,MAAA,aADY,UACZ,MAAA,aADY,UACZ,MAAA,IADY,UACZ,MAAA,aADY,UACZ,MAAA,aADY,UACZ,MAAA,IADY,UACZ,MAAA,aADY,UACZ,MAAA,YAciB,gBACjB,MAAA,KADiB,gBACjB,MAAA,aADiB,gBACjB,MAAA,aADiB,eACjB,MAAA,IADiB,eACjB,MAAA,aADiB,eACjB,MAAA,aADiB,eACjB,MAAA,IADiB,eACjB,MAAA,aADiB,eACjB,MAAA,aADiB,eACjB,MAAA,IADiB,eACjB,MAAA,aADiB,eACjB,MAAA,YAIW,eACX,MAAA,KAhBiB,gBACjB,KAAA,KADiB,gBACjB,KAAA,aADi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"} \ No newline at end of file diff --git a/themes/devopsdays-responsive/static/css/site.css b/themes/devopsdays-responsive/static/css/site.css deleted file mode 100644 index e58224fe95c..00000000000 --- a/themes/devopsdays-responsive/static/css/site.css +++ /dev/null @@ -1 +0,0 @@ -.upcoming-headline h3{color:#333;font-weight:700;background-color:#D7D7D7;padding:10px;font-size:19px;text-align:center;text-decoration:none}.upcoming-headline a{color:#333}.upcoming-headline a:hover{text-decoration:underline}.main-title{font-family:'Crete Round',serif;font-weight:400;color:#1581AB;font-size:36px}.event-navigation h3{color:#333;font-weight:700;background-color:#D7D7D7;padding:10px;font-size:19px;text-align:center;text-decoration:none}.event-navigation a{color:#333}.event-navigation a:hover{color:#333;text-decoration:underline}.company-logo{display:inline-block;float:left;height:100px;width:100px;border:1px solid #18b;padding:2px!important;margin:2px}.dropdown-submenu{position:relative}.dropdown-submenu>.dropdown-menu{top:0;left:100%;margin-top:-6px;margin-left:-1px;-webkit-border-radius:0 6px 6px 6px;-moz-border-radius:0 6px 6px;border-radius:0 6px 6px 6px}.dropdown-submenu:hover>.dropdown-menu{display:block}.dropdown-submenu>a:after{display:block;content:" ";float:right;width:0;height:0;border-color:transparent;border-style:solid;border-width:5px 0 5px 5px;border-left-color:#ccc;margin-top:5px;margin-right:-10px}.dropdown-submenu:hover>a:after{border-left-color:#fff}.dropdown-submenu.pull-left{float:none}.dropdown-submenu.pull-left>.dropdown-menu{left:-100%;margin-left:10px;-webkit-border-radius:6px 0 6px 6px;-moz-border-radius:6px 0 6px 6px;border-radius:6px 0 6px 6px}.footer,.push{height:50px;background-color:#1581AB;text-align:center;padding-top:10px;color:#fff;margin-top:10px}.navbar-nav li a{text-align:center}.social-links{color:#fff;margin-top:25px;margin-left:25px;margin-right:25px}.box{padding:1.5em;margin-bottom:1.5em;background:#E5ECF9}/*# sourceMappingURL=site.css.map */ \ No newline at end of file diff --git a/themes/devopsdays-responsive/static/css/site.css.map b/themes/devopsdays-responsive/static/css/site.css.map deleted file mode 100644 index 4c47fb81282..00000000000 --- a/themes/devopsdays-responsive/static/css/site.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../site.less"],"names":[],"mappings":"AAGmB,sBAClB,MAAA,KACA,YAAA,IACA,iBAAA,QACA,QAAA,KACA,UAAA,KACA,WAAA,OACA,gBAAA,KAGkB,qBAClB,MAAA,KAGmB,2BACnB,gBAAA,UAGD,YACC,YAAA,cAAa,MACb,YAAA,IACA,MAAA,QACA,UAAA,KAIiB,qBACjB,MAAA,KACA,YAAA,IACA,iBAAA,QACA,QAAA,KACA,UAAA,KACA,WAAA,OACA,gBAAA,KAGiB,oBACjB,MAAA,KAGkB,0BAClB,MAAA,KACA,gBAAA,UAGD,cACE,QAAA,aACD,MAAA,KACA,OAAA,MACA,MAAA,MACA,OAAA,IAAA,MAAA,KACA,QAAA,cACA,OAAA,IAID,kBACI,SAAA,SAGa,iCACb,IAAA,EACA,KAAA,KACA,WAAA,KACA,YAAA,KACA,sBAAA,EAAA,IAAA,IAAA,IACA,mBAAA,EAAA,IAAA,IACA,cAAA,EAAA,IAAA,IAAA,IAGmB,uCACnB,QAAA,MAGe,0BACf,QAAA,MACA,QAAA,IACA,MAAA,MACA,MAAA,EACA,OAAA,EACA,aAAA,YACA,aAAA,MACA,aAAA,IAAA,EAAA,IAAA,IACA,kBAAA,KACA,WAAA,IACA,aAAA,MAGqB,gCACrB,kBAAA,KAGa,4BACb,MAAA,KAGuB,2CACvB,KAAA,MACA,YAAA,KACA,sBAAA,IAAA,EAAA,IAAA,IACA,mBAAA,IAAA,EAAA,IAAA,IACA,cAAA,IAAA,EAAA,IAAA,IAGJ,QAAS,MACL,OAAA,KACF,iBAAA,QACA,WAAA,OACA,YAAA,KACA,MAAA,KACA,WAAA,KAGa,iBACX,WAAA,OAGJ,cACE,MAAA,KACA,WAAA,KACA,YAAA,KACA,aAAA,KAGF,KACE,QAAA,MACA,cAAA,MACA,WAAA"} \ No newline at end of file diff --git a/themes/devopsdays-responsive/static/css/theme.css b/themes/devopsdays-responsive/static/css/theme.css deleted file mode 100644 index 73100d4828c..00000000000 --- a/themes/devopsdays-responsive/static/css/theme.css +++ /dev/null @@ -1,5 +0,0 @@ -/*! - * Bootstrap v3.3.6 (http://getbootstrap.com) - * Copyright 2011-2015 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - */.btn-danger,.btn-default,.btn-info,.btn-primary,.btn-success,.btn-warning{text-shadow:0 -1px 0 rgba(0,0,0,.2);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075)}.btn-danger.active,.btn-danger:active,.btn-default.active,.btn-default:active,.btn-info.active,.btn-info:active,.btn-primary.active,.btn-primary:active,.btn-success.active,.btn-success:active,.btn-warning.active,.btn-warning:active{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn-danger.disabled,.btn-danger[disabled],.btn-default.disabled,.btn-default[disabled],.btn-info.disabled,.btn-info[disabled],.btn-primary.disabled,.btn-primary[disabled],.btn-success.disabled,.btn-success[disabled],.btn-warning.disabled,.btn-warning[disabled],fieldset[disabled] .btn-danger,fieldset[disabled] .btn-default,fieldset[disabled] .btn-info,fieldset[disabled] .btn-primary,fieldset[disabled] .btn-success,fieldset[disabled] .btn-warning{-webkit-box-shadow:none;box-shadow:none}.btn-danger .badge,.btn-default .badge,.btn-info .badge,.btn-primary .badge,.btn-success .badge,.btn-warning .badge{text-shadow:none}.btn.active,.btn:active{background-image:none}.btn-default{background-image:-webkit-linear-gradient(top,#fff 0,#e0e0e0 100%);background-image:-o-linear-gradient(top,#fff 0,#e0e0e0 100%);background-image:linear-gradient(to bottom,#fff 0,#e0e0e0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#dbdbdb;text-shadow:0 1px 0 #fff;border-color:#ccc}.btn-default:focus,.btn-default:hover{background-color:#e0e0e0;background-position:0 -15px}.btn-default.active,.btn-default:active{background-color:#e0e0e0;border-color:#dbdbdb}.btn-default.disabled,.btn-default.disabled.active,.btn-default.disabled.focus,.btn-default.disabled:active,.btn-default.disabled:focus,.btn-default.disabled:hover,.btn-default[disabled],.btn-default[disabled].active,.btn-default[disabled].focus,.btn-default[disabled]:active,.btn-default[disabled]:focus,.btn-default[disabled]:hover,fieldset[disabled] .btn-default,fieldset[disabled] .btn-default.active,fieldset[disabled] .btn-default.focus,fieldset[disabled] .btn-default:active,fieldset[disabled] .btn-default:focus,fieldset[disabled] .btn-default:hover{background-color:#e0e0e0;background-image:none}.btn-primary{background-image:-webkit-linear-gradient(top,#337ab7 0,#265a88 100%);background-image:-o-linear-gradient(top,#337ab7 0,#265a88 100%);background-image:linear-gradient(to bottom,#337ab7 0,#265a88 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff265a88', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#245580}.btn-primary:focus,.btn-primary:hover{background-color:#265a88;background-position:0 -15px}.btn-primary.active,.btn-primary:active{background-color:#265a88;border-color:#245580}.btn-primary.disabled,.btn-primary.disabled.active,.btn-primary.disabled.focus,.btn-primary.disabled:active,.btn-primary.disabled:focus,.btn-primary.disabled:hover,.btn-primary[disabled],.btn-primary[disabled].active,.btn-primary[disabled].focus,.btn-primary[disabled]:active,.btn-primary[disabled]:focus,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary,fieldset[disabled] .btn-primary.active,fieldset[disabled] .btn-primary.focus,fieldset[disabled] .btn-primary:active,fieldset[disabled] .btn-primary:focus,fieldset[disabled] .btn-primary:hover{background-color:#265a88;background-image:none}.btn-success{background-image:-webkit-linear-gradient(top,#5cb85c 0,#419641 100%);background-image:-o-linear-gradient(top,#5cb85c 0,#419641 100%);background-image:linear-gradient(to bottom,#5cb85c 0,#419641 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#3e8f3e}.btn-success:focus,.btn-success:hover{background-color:#419641;background-position:0 -15px}.btn-success.active,.btn-success:active{background-color:#419641;border-color:#3e8f3e}.btn-success.disabled,.btn-success.disabled.active,.btn-success.disabled.focus,.btn-success.disabled:active,.btn-success.disabled:focus,.btn-success.disabled:hover,.btn-success[disabled],.btn-success[disabled].active,.btn-success[disabled].focus,.btn-success[disabled]:active,.btn-success[disabled]:focus,.btn-success[disabled]:hover,fieldset[disabled] .btn-success,fieldset[disabled] .btn-success.active,fieldset[disabled] .btn-success.focus,fieldset[disabled] .btn-success:active,fieldset[disabled] .btn-success:focus,fieldset[disabled] .btn-success:hover{background-color:#419641;background-image:none}.btn-info{background-image:-webkit-linear-gradient(top,#5bc0de 0,#2aabd2 100%);background-image:-o-linear-gradient(top,#5bc0de 0,#2aabd2 100%);background-image:linear-gradient(to bottom,#5bc0de 0,#2aabd2 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#28a4c9}.btn-info:focus,.btn-info:hover{background-color:#2aabd2;background-position:0 -15px}.btn-info.active,.btn-info:active{background-color:#2aabd2;border-color:#28a4c9}.btn-info.disabled,.btn-info.disabled.active,.btn-info.disabled.focus,.btn-info.disabled:active,.btn-info.disabled:focus,.btn-info.disabled:hover,.btn-info[disabled],.btn-info[disabled].active,.btn-info[disabled].focus,.btn-info[disabled]:active,.btn-info[disabled]:focus,.btn-info[disabled]:hover,fieldset[disabled] .btn-info,fieldset[disabled] .btn-info.active,fieldset[disabled] .btn-info.focus,fieldset[disabled] .btn-info:active,fieldset[disabled] .btn-info:focus,fieldset[disabled] .btn-info:hover{background-color:#2aabd2;background-image:none}.btn-warning{background-image:-webkit-linear-gradient(top,#f0ad4e 0,#eb9316 100%);background-image:-o-linear-gradient(top,#f0ad4e 0,#eb9316 100%);background-image:linear-gradient(to bottom,#f0ad4e 0,#eb9316 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#e38d13}.btn-warning:focus,.btn-warning:hover{background-color:#eb9316;background-position:0 -15px}.btn-warning.active,.btn-warning:active{background-color:#eb9316;border-color:#e38d13}.btn-warning.disabled,.btn-warning.disabled.active,.btn-warning.disabled.focus,.btn-warning.disabled:active,.btn-warning.disabled:focus,.btn-warning.disabled:hover,.btn-warning[disabled],.btn-warning[disabled].active,.btn-warning[disabled].focus,.btn-warning[disabled]:active,.btn-warning[disabled]:focus,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning,fieldset[disabled] .btn-warning.active,fieldset[disabled] .btn-warning.focus,fieldset[disabled] .btn-warning:active,fieldset[disabled] .btn-warning:focus,fieldset[disabled] .btn-warning:hover{background-color:#eb9316;background-image:none}.btn-danger{background-image:-webkit-linear-gradient(top,#d9534f 0,#c12e2a 100%);background-image:-o-linear-gradient(top,#d9534f 0,#c12e2a 100%);background-image:linear-gradient(to bottom,#d9534f 0,#c12e2a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#b92c28}.btn-danger:focus,.btn-danger:hover{background-color:#c12e2a;background-position:0 -15px}.btn-danger.active,.btn-danger:active{background-color:#c12e2a;border-color:#b92c28}.btn-danger.disabled,.btn-danger.disabled.active,.btn-danger.disabled.focus,.btn-danger.disabled:active,.btn-danger.disabled:focus,.btn-danger.disabled:hover,.btn-danger[disabled],.btn-danger[disabled].active,.btn-danger[disabled].focus,.btn-danger[disabled]:active,.btn-danger[disabled]:focus,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger,fieldset[disabled] .btn-danger.active,fieldset[disabled] .btn-danger.focus,fieldset[disabled] .btn-danger:active,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger:hover{background-color:#c12e2a;background-image:none}.img-thumbnail,.thumbnail{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.dropdown-menu>li>a:focus,.dropdown-menu>li>a:hover{background-image:-webkit-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-o-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:linear-gradient(to bottom,#f5f5f5 0,#e8e8e8 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);background-color:#e8e8e8}.dropdown-menu>.active>a,.dropdown-menu>.active>a:focus,.dropdown-menu>.active>a:hover{background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);background-color:#2e6da4}.navbar-default{background-image:-webkit-linear-gradient(top,#fff 0,#f8f8f8 100%);background-image:-o-linear-gradient(top,#fff 0,#f8f8f8 100%);background-image:linear-gradient(to bottom,#fff 0,#f8f8f8 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);border-radius:4px;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 5px rgba(0,0,0,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 5px rgba(0,0,0,.075)}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.open>a{background-image:-webkit-linear-gradient(top,#dbdbdb 0,#e2e2e2 100%);background-image:-o-linear-gradient(top,#dbdbdb 0,#e2e2e2 100%);background-image:linear-gradient(to bottom,#dbdbdb 0,#e2e2e2 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0);-webkit-box-shadow:inset 0 3px 9px rgba(0,0,0,.075);box-shadow:inset 0 3px 9px rgba(0,0,0,.075)}.navbar-brand,.navbar-nav>li>a{text-shadow:0 1px 0 rgba(255,255,255,.25)}.navbar-inverse{background-image:-webkit-linear-gradient(top,#3c3c3c 0,#222 100%);background-image:-o-linear-gradient(top,#3c3c3c 0,#222 100%);background-image:linear-gradient(to bottom,#3c3c3c 0,#222 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);border-radius:4px}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.open>a{background-image:-webkit-linear-gradient(top,#080808 0,#0f0f0f 100%);background-image:-o-linear-gradient(top,#080808 0,#0f0f0f 100%);background-image:linear-gradient(to bottom,#080808 0,#0f0f0f 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0);-webkit-box-shadow:inset 0 3px 9px rgba(0,0,0,.25);box-shadow:inset 0 3px 9px rgba(0,0,0,.25)}.navbar-inverse .navbar-brand,.navbar-inverse .navbar-nav>li>a{text-shadow:0 -1px 0 rgba(0,0,0,.25)}.navbar-fixed-bottom,.navbar-fixed-top,.navbar-static-top{border-radius:0}@media (max-width:767px){.navbar .navbar-nav .open .dropdown-menu>.active>a,.navbar .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar .navbar-nav .open .dropdown-menu>.active>a:hover{color:#fff;background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0)}}.alert{text-shadow:0 1px 0 rgba(255,255,255,.2);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05)}.alert-success{background-image:-webkit-linear-gradient(top,#dff0d8 0,#c8e5bc 100%);background-image:-o-linear-gradient(top,#dff0d8 0,#c8e5bc 100%);background-image:linear-gradient(to bottom,#dff0d8 0,#c8e5bc 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0);border-color:#b2dba1}.alert-info{background-image:-webkit-linear-gradient(top,#d9edf7 0,#b9def0 100%);background-image:-o-linear-gradient(top,#d9edf7 0,#b9def0 100%);background-image:linear-gradient(to bottom,#d9edf7 0,#b9def0 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0);border-color:#9acfea}.alert-warning{background-image:-webkit-linear-gradient(top,#fcf8e3 0,#f8efc0 100%);background-image:-o-linear-gradient(top,#fcf8e3 0,#f8efc0 100%);background-image:linear-gradient(to bottom,#fcf8e3 0,#f8efc0 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0);border-color:#f5e79e}.alert-danger{background-image:-webkit-linear-gradient(top,#f2dede 0,#e7c3c3 100%);background-image:-o-linear-gradient(top,#f2dede 0,#e7c3c3 100%);background-image:linear-gradient(to bottom,#f2dede 0,#e7c3c3 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0);border-color:#dca7a7}.progress{background-image:-webkit-linear-gradient(top,#ebebeb 0,#f5f5f5 100%);background-image:-o-linear-gradient(top,#ebebeb 0,#f5f5f5 100%);background-image:linear-gradient(to bottom,#ebebeb 0,#f5f5f5 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0)}.progress-bar{background-image:-webkit-linear-gradient(top,#337ab7 0,#286090 100%);background-image:-o-linear-gradient(top,#337ab7 0,#286090 100%);background-image:linear-gradient(to bottom,#337ab7 0,#286090 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff286090', GradientType=0)}.progress-bar-success{background-image:-webkit-linear-gradient(top,#5cb85c 0,#449d44 100%);background-image:-o-linear-gradient(top,#5cb85c 0,#449d44 100%);background-image:linear-gradient(to bottom,#5cb85c 0,#449d44 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0)}.progress-bar-info{background-image:-webkit-linear-gradient(top,#5bc0de 0,#31b0d5 100%);background-image:-o-linear-gradient(top,#5bc0de 0,#31b0d5 100%);background-image:linear-gradient(to bottom,#5bc0de 0,#31b0d5 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0)}.progress-bar-warning{background-image:-webkit-linear-gradient(top,#f0ad4e 0,#ec971f 100%);background-image:-o-linear-gradient(top,#f0ad4e 0,#ec971f 100%);background-image:linear-gradient(to bottom,#f0ad4e 0,#ec971f 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0)}.progress-bar-danger{background-image:-webkit-linear-gradient(top,#d9534f 0,#c9302c 100%);background-image:-o-linear-gradient(top,#d9534f 0,#c9302c 100%);background-image:linear-gradient(to bottom,#d9534f 0,#c9302c 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0)}.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)}.list-group{border-radius:4px;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.list-group-item.active,.list-group-item.active:focus,.list-group-item.active:hover{text-shadow:0 -1px 0 #286090;background-image:-webkit-linear-gradient(top,#337ab7 0,#2b669a 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2b669a 100%);background-image:linear-gradient(to bottom,#337ab7 0,#2b669a 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2b669a', GradientType=0);border-color:#2b669a}.list-group-item.active .badge,.list-group-item.active:focus .badge,.list-group-item.active:hover .badge{text-shadow:none}.panel{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.05);box-shadow:0 1px 2px rgba(0,0,0,.05)}.panel-default>.panel-heading{background-image:-webkit-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-o-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:linear-gradient(to bottom,#f5f5f5 0,#e8e8e8 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0)}.panel-primary>.panel-heading{background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0)}.panel-success>.panel-heading{background-image:-webkit-linear-gradient(top,#dff0d8 0,#d0e9c6 100%);background-image:-o-linear-gradient(top,#dff0d8 0,#d0e9c6 100%);background-image:linear-gradient(to bottom,#dff0d8 0,#d0e9c6 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0)}.panel-info>.panel-heading{background-image:-webkit-linear-gradient(top,#d9edf7 0,#c4e3f3 100%);background-image:-o-linear-gradient(top,#d9edf7 0,#c4e3f3 100%);background-image:linear-gradient(to bottom,#d9edf7 0,#c4e3f3 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0)}.panel-warning>.panel-heading{background-image:-webkit-linear-gradient(top,#fcf8e3 0,#faf2cc 100%);background-image:-o-linear-gradient(top,#fcf8e3 0,#faf2cc 100%);background-image:linear-gradient(to bottom,#fcf8e3 0,#faf2cc 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0)}.panel-danger>.panel-heading{background-image:-webkit-linear-gradient(top,#f2dede 0,#ebcccc 100%);background-image:-o-linear-gradient(top,#f2dede 0,#ebcccc 100%);background-image:linear-gradient(to bottom,#f2dede 0,#ebcccc 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0)}.well{background-image:-webkit-linear-gradient(top,#e8e8e8 0,#f5f5f5 100%);background-image:-o-linear-gradient(top,#e8e8e8 0,#f5f5f5 100%);background-image:linear-gradient(to bottom,#e8e8e8 0,#f5f5f5 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0);border-color:#dcdcdc;-webkit-box-shadow:inset 0 1px 3px rgba(0,0,0,.05),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 3px rgba(0,0,0,.05),0 1px 0 rgba(255,255,255,.1)}/*# sourceMappingURL=theme.css.map */ \ No newline at end of file diff --git a/themes/devopsdays-responsive/static/css/theme.css.map b/themes/devopsdays-responsive/static/css/theme.css.map deleted file mode 100644 index 7f9ea56895a..00000000000 --- a/themes/devopsdays-responsive/static/css/theme.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../less/theme.less","../less/mixins/vendor-prefixes.less","../less/mixins/gradients.less","../less/mixins/reset-filter.less"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/themes/devopsdays-responsive/static/favicon-16x16.png b/themes/devopsdays-responsive/static/favicon-16x16.png deleted file mode 100644 index 3ed0e5a444f..00000000000 Binary files a/themes/devopsdays-responsive/static/favicon-16x16.png and /dev/null differ diff --git a/themes/devopsdays-responsive/static/favicon-32x32.png b/themes/devopsdays-responsive/static/favicon-32x32.png deleted file mode 100644 index 131fe80b740..00000000000 Binary files a/themes/devopsdays-responsive/static/favicon-32x32.png and /dev/null differ diff --git a/themes/devopsdays-responsive/static/font-awesome/HELP-US-OUT.txt b/themes/devopsdays-responsive/static/font-awesome/HELP-US-OUT.txt deleted file mode 100644 index cfd9d9f3cea..00000000000 --- a/themes/devopsdays-responsive/static/font-awesome/HELP-US-OUT.txt +++ /dev/null @@ -1,7 +0,0 @@ -I hope you love Font Awesome. If you've found it useful, please do me a favor and check out my latest project, -Fonticons (https://fonticons.com). It makes it easy to put the perfect icons on your website. Choose from our awesome, -comprehensive icon sets or copy and paste your own. - -Please. Check it out. - --Dave Gandy diff --git a/themes/devopsdays-responsive/static/font-awesome/css/font-awesome.css b/themes/devopsdays-responsive/static/font-awesome/css/font-awesome.css deleted file mode 100644 index 880eb825032..00000000000 --- a/themes/devopsdays-responsive/static/font-awesome/css/font-awesome.css +++ /dev/null @@ -1,2026 +0,0 @@ -/*! - * Font Awesome 4.4.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.4.0'); - src: url('../fonts/fontawesome-webfont.eot?#iefix&v=4.4.0') format('embedded-opentype'), url('../fonts/fontawesome-webfont.woff2?v=4.4.0') format('woff2'), url('../fonts/fontawesome-webfont.woff?v=4.4.0') format('woff'), url('../fonts/fontawesome-webfont.ttf?v=4.4.0') format('truetype'), url('../fonts/fontawesome-webfont.svg?v=4.4.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 { - filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1); - -webkit-transform: rotate(90deg); - -ms-transform: rotate(90deg); - transform: rotate(90deg); -} -.fa-rotate-180 { - filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2); - -webkit-transform: rotate(180deg); - -ms-transform: rotate(180deg); - transform: rotate(180deg); -} -.fa-rotate-270 { - filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3); - -webkit-transform: rotate(270deg); - -ms-transform: rotate(270deg); - transform: rotate(270deg); -} -.fa-flip-horizontal { - 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 { - 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: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-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-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"; -} diff --git a/themes/devopsdays-responsive/static/font-awesome/css/font-awesome.min.css b/themes/devopsdays-responsive/static/font-awesome/css/font-awesome.min.css deleted file mode 100644 index ee4e9782bf8..00000000000 --- a/themes/devopsdays-responsive/static/font-awesome/css/font-awesome.min.css +++ /dev/null @@ -1,4 +0,0 @@ -/*! - * Font Awesome 4.4.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.4.0');src:url('../fonts/fontawesome-webfont.eot?#iefix&v=4.4.0') format('embedded-opentype'),url('../fonts/fontawesome-webfont.woff2?v=4.4.0') format('woff2'),url('../fonts/fontawesome-webfont.woff?v=4.4.0') format('woff'),url('../fonts/fontawesome-webfont.ttf?v=4.4.0') format('truetype'),url('../fonts/fontawesome-webfont.svg?v=4.4.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{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{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{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: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-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-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"} diff --git a/themes/devopsdays-responsive/static/font-awesome/fonts/FontAwesome.otf b/themes/devopsdays-responsive/static/font-awesome/fonts/FontAwesome.otf deleted file mode 100644 index 681bdd4d4c8..00000000000 Binary files a/themes/devopsdays-responsive/static/font-awesome/fonts/FontAwesome.otf and /dev/null differ diff --git a/themes/devopsdays-responsive/static/font-awesome/fonts/fontawesome-webfont.eot b/themes/devopsdays-responsive/static/font-awesome/fonts/fontawesome-webfont.eot deleted file mode 100644 index a30335d748c..00000000000 Binary files a/themes/devopsdays-responsive/static/font-awesome/fonts/fontawesome-webfont.eot and /dev/null differ diff --git a/themes/devopsdays-responsive/static/font-awesome/fonts/fontawesome-webfont.svg b/themes/devopsdays-responsive/static/font-awesome/fonts/fontawesome-webfont.svg deleted file mode 100644 index 6fd19abcb9e..00000000000 --- a/themes/devopsdays-responsive/static/font-awesome/fonts/fontawesome-webfont.svg +++ /dev/null @@ -1,640 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/themes/devopsdays-responsive/static/font-awesome/fonts/fontawesome-webfont.woff b/themes/devopsdays-responsive/static/font-awesome/fonts/fontawesome-webfont.woff deleted file mode 100644 index 6fd4ede0f30..00000000000 Binary files a/themes/devopsdays-responsive/static/font-awesome/fonts/fontawesome-webfont.woff and /dev/null differ diff --git a/themes/devopsdays-responsive/static/font-awesome/fonts/fontawesome-webfont.woff2 b/themes/devopsdays-responsive/static/font-awesome/fonts/fontawesome-webfont.woff2 deleted file mode 100644 index 5560193ccc5..00000000000 Binary files a/themes/devopsdays-responsive/static/font-awesome/fonts/fontawesome-webfont.woff2 and /dev/null differ diff --git a/themes/devopsdays-responsive/static/font-awesome/less/animated.less b/themes/devopsdays-responsive/static/font-awesome/less/animated.less deleted file mode 100644 index 66ad52a5ba0..00000000000 --- a/themes/devopsdays-responsive/static/font-awesome/less/animated.less +++ /dev/null @@ -1,34 +0,0 @@ -// Animated Icons -// -------------------------- - -.@{fa-css-prefix}-spin { - -webkit-animation: fa-spin 2s infinite linear; - animation: fa-spin 2s infinite linear; -} - -.@{fa-css-prefix}-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); - } -} diff --git a/themes/devopsdays-responsive/static/font-awesome/less/bordered-pulled.less b/themes/devopsdays-responsive/static/font-awesome/less/bordered-pulled.less deleted file mode 100644 index f1c8ad75f52..00000000000 --- a/themes/devopsdays-responsive/static/font-awesome/less/bordered-pulled.less +++ /dev/null @@ -1,25 +0,0 @@ -// Bordered & Pulled -// ------------------------- - -.@{fa-css-prefix}-border { - padding: .2em .25em .15em; - border: solid .08em @fa-border-color; - border-radius: .1em; -} - -.@{fa-css-prefix}-pull-left { float: left; } -.@{fa-css-prefix}-pull-right { float: right; } - -.@{fa-css-prefix} { - &.@{fa-css-prefix}-pull-left { margin-right: .3em; } - &.@{fa-css-prefix}-pull-right { margin-left: .3em; } -} - -/* Deprecated as of 4.4.0 */ -.pull-right { float: right; } -.pull-left { float: left; } - -.@{fa-css-prefix} { - &.pull-left { margin-right: .3em; } - &.pull-right { margin-left: .3em; } -} diff --git a/themes/devopsdays-responsive/static/font-awesome/less/core.less b/themes/devopsdays-responsive/static/font-awesome/less/core.less deleted file mode 100644 index c577ac84a6a..00000000000 --- a/themes/devopsdays-responsive/static/font-awesome/less/core.less +++ /dev/null @@ -1,12 +0,0 @@ -// Base Class Definition -// ------------------------- - -.@{fa-css-prefix} { - display: inline-block; - font: normal normal normal @fa-font-size-base/@fa-line-height-base FontAwesome; // shortening font declaration - font-size: inherit; // can't have font-size inherit on line above, so need to override - text-rendering: auto; // optimizelegibility throws things off #1094 - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; - -} diff --git a/themes/devopsdays-responsive/static/font-awesome/less/fixed-width.less b/themes/devopsdays-responsive/static/font-awesome/less/fixed-width.less deleted file mode 100644 index 110289f2f4b..00000000000 --- a/themes/devopsdays-responsive/static/font-awesome/less/fixed-width.less +++ /dev/null @@ -1,6 +0,0 @@ -// Fixed Width Icons -// ------------------------- -.@{fa-css-prefix}-fw { - width: (18em / 14); - text-align: center; -} diff --git a/themes/devopsdays-responsive/static/font-awesome/less/font-awesome.less b/themes/devopsdays-responsive/static/font-awesome/less/font-awesome.less deleted file mode 100644 index e3f89c8f6c9..00000000000 --- a/themes/devopsdays-responsive/static/font-awesome/less/font-awesome.less +++ /dev/null @@ -1,17 +0,0 @@ -/*! - * Font Awesome 4.4.0 by @davegandy - http://fontawesome.io - @fontawesome - * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) - */ - -@import "variables.less"; -@import "mixins.less"; -@import "path.less"; -@import "core.less"; -@import "larger.less"; -@import "fixed-width.less"; -@import "list.less"; -@import "bordered-pulled.less"; -@import "animated.less"; -@import "rotated-flipped.less"; -@import "stacked.less"; -@import "icons.less"; diff --git a/themes/devopsdays-responsive/static/font-awesome/less/icons.less b/themes/devopsdays-responsive/static/font-awesome/less/icons.less deleted file mode 100644 index 6ebe9669e82..00000000000 --- a/themes/devopsdays-responsive/static/font-awesome/less/icons.less +++ /dev/null @@ -1,677 +0,0 @@ -/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen - readers do not read off random characters that represent icons */ - -.@{fa-css-prefix}-glass:before { content: @fa-var-glass; } -.@{fa-css-prefix}-music:before { content: @fa-var-music; } -.@{fa-css-prefix}-search:before { content: @fa-var-search; } -.@{fa-css-prefix}-envelope-o:before { content: @fa-var-envelope-o; } -.@{fa-css-prefix}-heart:before { content: @fa-var-heart; } -.@{fa-css-prefix}-star:before { content: @fa-var-star; } -.@{fa-css-prefix}-star-o:before { content: @fa-var-star-o; } -.@{fa-css-prefix}-user:before { content: @fa-var-user; } -.@{fa-css-prefix}-film:before { content: @fa-var-film; } -.@{fa-css-prefix}-th-large:before { content: @fa-var-th-large; } -.@{fa-css-prefix}-th:before { content: @fa-var-th; } -.@{fa-css-prefix}-th-list:before { content: @fa-var-th-list; } -.@{fa-css-prefix}-check:before { content: @fa-var-check; } -.@{fa-css-prefix}-remove:before, -.@{fa-css-prefix}-close:before, -.@{fa-css-prefix}-times:before { content: @fa-var-times; } -.@{fa-css-prefix}-search-plus:before { content: @fa-var-search-plus; } -.@{fa-css-prefix}-search-minus:before { content: @fa-var-search-minus; } -.@{fa-css-prefix}-power-off:before { content: @fa-var-power-off; } -.@{fa-css-prefix}-signal:before { content: @fa-var-signal; } -.@{fa-css-prefix}-gear:before, -.@{fa-css-prefix}-cog:before { content: @fa-var-cog; } -.@{fa-css-prefix}-trash-o:before { content: @fa-var-trash-o; } -.@{fa-css-prefix}-home:before { content: @fa-var-home; } -.@{fa-css-prefix}-file-o:before { content: @fa-var-file-o; } -.@{fa-css-prefix}-clock-o:before { content: @fa-var-clock-o; } -.@{fa-css-prefix}-road:before { content: @fa-var-road; } -.@{fa-css-prefix}-download:before { content: @fa-var-download; } -.@{fa-css-prefix}-arrow-circle-o-down:before { content: @fa-var-arrow-circle-o-down; } -.@{fa-css-prefix}-arrow-circle-o-up:before { content: @fa-var-arrow-circle-o-up; } -.@{fa-css-prefix}-inbox:before { content: @fa-var-inbox; } -.@{fa-css-prefix}-play-circle-o:before { content: @fa-var-play-circle-o; } -.@{fa-css-prefix}-rotate-right:before, -.@{fa-css-prefix}-repeat:before { content: @fa-var-repeat; } -.@{fa-css-prefix}-refresh:before { content: @fa-var-refresh; } -.@{fa-css-prefix}-list-alt:before { content: @fa-var-list-alt; } -.@{fa-css-prefix}-lock:before { content: @fa-var-lock; } -.@{fa-css-prefix}-flag:before { content: @fa-var-flag; } -.@{fa-css-prefix}-headphones:before { content: @fa-var-headphones; } -.@{fa-css-prefix}-volume-off:before { content: @fa-var-volume-off; } -.@{fa-css-prefix}-volume-down:before { content: @fa-var-volume-down; } -.@{fa-css-prefix}-volume-up:before { content: @fa-var-volume-up; } -.@{fa-css-prefix}-qrcode:before { content: @fa-var-qrcode; } -.@{fa-css-prefix}-barcode:before { content: @fa-var-barcode; } -.@{fa-css-prefix}-tag:before { content: @fa-var-tag; } -.@{fa-css-prefix}-tags:before { content: @fa-var-tags; } -.@{fa-css-prefix}-book:before { content: @fa-var-book; } -.@{fa-css-prefix}-bookmark:before { content: @fa-var-bookmark; } -.@{fa-css-prefix}-print:before { content: @fa-var-print; } -.@{fa-css-prefix}-camera:before { content: @fa-var-camera; } -.@{fa-css-prefix}-font:before { content: @fa-var-font; } -.@{fa-css-prefix}-bold:before { content: @fa-var-bold; } -.@{fa-css-prefix}-italic:before { content: @fa-var-italic; } -.@{fa-css-prefix}-text-height:before { content: @fa-var-text-height; } -.@{fa-css-prefix}-text-width:before { content: @fa-var-text-width; } -.@{fa-css-prefix}-align-left:before { content: @fa-var-align-left; } -.@{fa-css-prefix}-align-center:before { content: @fa-var-align-center; } -.@{fa-css-prefix}-align-right:before { content: @fa-var-align-right; } -.@{fa-css-prefix}-align-justify:before { content: @fa-var-align-justify; } -.@{fa-css-prefix}-list:before { content: @fa-var-list; } -.@{fa-css-prefix}-dedent:before, -.@{fa-css-prefix}-outdent:before { content: @fa-var-outdent; } -.@{fa-css-prefix}-indent:before { content: @fa-var-indent; } -.@{fa-css-prefix}-video-camera:before { content: @fa-var-video-camera; } -.@{fa-css-prefix}-photo:before, -.@{fa-css-prefix}-image:before, -.@{fa-css-prefix}-picture-o:before { content: @fa-var-picture-o; } -.@{fa-css-prefix}-pencil:before { content: @fa-var-pencil; } -.@{fa-css-prefix}-map-marker:before { content: @fa-var-map-marker; } -.@{fa-css-prefix}-adjust:before { content: @fa-var-adjust; } -.@{fa-css-prefix}-tint:before { content: @fa-var-tint; } -.@{fa-css-prefix}-edit:before, -.@{fa-css-prefix}-pencil-square-o:before { content: @fa-var-pencil-square-o; } -.@{fa-css-prefix}-share-square-o:before { content: @fa-var-share-square-o; } -.@{fa-css-prefix}-check-square-o:before { content: @fa-var-check-square-o; } -.@{fa-css-prefix}-arrows:before { content: @fa-var-arrows; } -.@{fa-css-prefix}-step-backward:before { content: @fa-var-step-backward; } -.@{fa-css-prefix}-fast-backward:before { content: @fa-var-fast-backward; } -.@{fa-css-prefix}-backward:before { content: @fa-var-backward; } -.@{fa-css-prefix}-play:before { content: @fa-var-play; } -.@{fa-css-prefix}-pause:before { content: @fa-var-pause; } -.@{fa-css-prefix}-stop:before { content: @fa-var-stop; } -.@{fa-css-prefix}-forward:before { content: @fa-var-forward; } -.@{fa-css-prefix}-fast-forward:before { content: @fa-var-fast-forward; } -.@{fa-css-prefix}-step-forward:before { content: @fa-var-step-forward; } -.@{fa-css-prefix}-eject:before { content: @fa-var-eject; } -.@{fa-css-prefix}-chevron-left:before { content: @fa-var-chevron-left; } -.@{fa-css-prefix}-chevron-right:before { content: @fa-var-chevron-right; } -.@{fa-css-prefix}-plus-circle:before { content: @fa-var-plus-circle; } -.@{fa-css-prefix}-minus-circle:before { content: @fa-var-minus-circle; } -.@{fa-css-prefix}-times-circle:before { content: @fa-var-times-circle; } -.@{fa-css-prefix}-check-circle:before { content: @fa-var-check-circle; } -.@{fa-css-prefix}-question-circle:before { content: @fa-var-question-circle; } -.@{fa-css-prefix}-info-circle:before { content: @fa-var-info-circle; } -.@{fa-css-prefix}-crosshairs:before { content: @fa-var-crosshairs; } -.@{fa-css-prefix}-times-circle-o:before { content: @fa-var-times-circle-o; } -.@{fa-css-prefix}-check-circle-o:before { content: @fa-var-check-circle-o; } -.@{fa-css-prefix}-ban:before { content: @fa-var-ban; } -.@{fa-css-prefix}-arrow-left:before { content: @fa-var-arrow-left; } -.@{fa-css-prefix}-arrow-right:before { content: @fa-var-arrow-right; } -.@{fa-css-prefix}-arrow-up:before { content: @fa-var-arrow-up; } -.@{fa-css-prefix}-arrow-down:before { content: @fa-var-arrow-down; } -.@{fa-css-prefix}-mail-forward:before, -.@{fa-css-prefix}-share:before { content: @fa-var-share; } -.@{fa-css-prefix}-expand:before { content: @fa-var-expand; } -.@{fa-css-prefix}-compress:before { content: @fa-var-compress; } -.@{fa-css-prefix}-plus:before { content: @fa-var-plus; } -.@{fa-css-prefix}-minus:before { content: @fa-var-minus; } -.@{fa-css-prefix}-asterisk:before { content: @fa-var-asterisk; } -.@{fa-css-prefix}-exclamation-circle:before { content: @fa-var-exclamation-circle; } -.@{fa-css-prefix}-gift:before { content: @fa-var-gift; } -.@{fa-css-prefix}-leaf:before { content: @fa-var-leaf; } -.@{fa-css-prefix}-fire:before { content: @fa-var-fire; } -.@{fa-css-prefix}-eye:before { content: @fa-var-eye; } -.@{fa-css-prefix}-eye-slash:before { content: @fa-var-eye-slash; } -.@{fa-css-prefix}-warning:before, -.@{fa-css-prefix}-exclamation-triangle:before { content: @fa-var-exclamation-triangle; } -.@{fa-css-prefix}-plane:before { content: @fa-var-plane; } -.@{fa-css-prefix}-calendar:before { content: @fa-var-calendar; } -.@{fa-css-prefix}-random:before { content: @fa-var-random; } -.@{fa-css-prefix}-comment:before { content: @fa-var-comment; } -.@{fa-css-prefix}-magnet:before { content: @fa-var-magnet; } -.@{fa-css-prefix}-chevron-up:before { content: @fa-var-chevron-up; } -.@{fa-css-prefix}-chevron-down:before { content: @fa-var-chevron-down; } -.@{fa-css-prefix}-retweet:before { content: @fa-var-retweet; } -.@{fa-css-prefix}-shopping-cart:before { content: @fa-var-shopping-cart; } -.@{fa-css-prefix}-folder:before { content: @fa-var-folder; } -.@{fa-css-prefix}-folder-open:before { content: @fa-var-folder-open; } -.@{fa-css-prefix}-arrows-v:before { content: @fa-var-arrows-v; } -.@{fa-css-prefix}-arrows-h:before { content: @fa-var-arrows-h; } -.@{fa-css-prefix}-bar-chart-o:before, -.@{fa-css-prefix}-bar-chart:before { content: @fa-var-bar-chart; } -.@{fa-css-prefix}-twitter-square:before { content: @fa-var-twitter-square; } -.@{fa-css-prefix}-facebook-square:before { content: @fa-var-facebook-square; } -.@{fa-css-prefix}-camera-retro:before { content: @fa-var-camera-retro; } -.@{fa-css-prefix}-key:before { content: @fa-var-key; } -.@{fa-css-prefix}-gears:before, -.@{fa-css-prefix}-cogs:before { content: @fa-var-cogs; } -.@{fa-css-prefix}-comments:before { content: @fa-var-comments; } -.@{fa-css-prefix}-thumbs-o-up:before { content: @fa-var-thumbs-o-up; } -.@{fa-css-prefix}-thumbs-o-down:before { content: @fa-var-thumbs-o-down; } -.@{fa-css-prefix}-star-half:before { content: @fa-var-star-half; } -.@{fa-css-prefix}-heart-o:before { content: @fa-var-heart-o; } -.@{fa-css-prefix}-sign-out:before { content: @fa-var-sign-out; } -.@{fa-css-prefix}-linkedin-square:before { content: @fa-var-linkedin-square; } -.@{fa-css-prefix}-thumb-tack:before { content: @fa-var-thumb-tack; } -.@{fa-css-prefix}-external-link:before { content: @fa-var-external-link; } -.@{fa-css-prefix}-sign-in:before { content: @fa-var-sign-in; } -.@{fa-css-prefix}-trophy:before { content: @fa-var-trophy; } -.@{fa-css-prefix}-github-square:before { content: @fa-var-github-square; } -.@{fa-css-prefix}-upload:before { content: @fa-var-upload; } -.@{fa-css-prefix}-lemon-o:before { content: @fa-var-lemon-o; } -.@{fa-css-prefix}-phone:before { content: @fa-var-phone; } -.@{fa-css-prefix}-square-o:before { content: @fa-var-square-o; } -.@{fa-css-prefix}-bookmark-o:before { content: @fa-var-bookmark-o; } -.@{fa-css-prefix}-phone-square:before { content: @fa-var-phone-square; } -.@{fa-css-prefix}-twitter:before { content: @fa-var-twitter; } -.@{fa-css-prefix}-facebook-f:before, -.@{fa-css-prefix}-facebook:before { content: @fa-var-facebook; } -.@{fa-css-prefix}-github:before { content: @fa-var-github; } -.@{fa-css-prefix}-unlock:before { content: @fa-var-unlock; } -.@{fa-css-prefix}-credit-card:before { content: @fa-var-credit-card; } -.@{fa-css-prefix}-feed:before, -.@{fa-css-prefix}-rss:before { content: @fa-var-rss; } -.@{fa-css-prefix}-hdd-o:before { content: @fa-var-hdd-o; } -.@{fa-css-prefix}-bullhorn:before { content: @fa-var-bullhorn; } -.@{fa-css-prefix}-bell:before { content: @fa-var-bell; } -.@{fa-css-prefix}-certificate:before { content: @fa-var-certificate; } -.@{fa-css-prefix}-hand-o-right:before { content: @fa-var-hand-o-right; } -.@{fa-css-prefix}-hand-o-left:before { content: @fa-var-hand-o-left; } -.@{fa-css-prefix}-hand-o-up:before { content: @fa-var-hand-o-up; } -.@{fa-css-prefix}-hand-o-down:before { content: @fa-var-hand-o-down; } -.@{fa-css-prefix}-arrow-circle-left:before { content: @fa-var-arrow-circle-left; } -.@{fa-css-prefix}-arrow-circle-right:before { content: @fa-var-arrow-circle-right; } -.@{fa-css-prefix}-arrow-circle-up:before { content: @fa-var-arrow-circle-up; } -.@{fa-css-prefix}-arrow-circle-down:before { content: @fa-var-arrow-circle-down; } -.@{fa-css-prefix}-globe:before { content: @fa-var-globe; } -.@{fa-css-prefix}-wrench:before { content: @fa-var-wrench; } -.@{fa-css-prefix}-tasks:before { content: @fa-var-tasks; } -.@{fa-css-prefix}-filter:before { content: @fa-var-filter; } -.@{fa-css-prefix}-briefcase:before { content: @fa-var-briefcase; } -.@{fa-css-prefix}-arrows-alt:before { content: @fa-var-arrows-alt; } -.@{fa-css-prefix}-group:before, -.@{fa-css-prefix}-users:before { content: @fa-var-users; } -.@{fa-css-prefix}-chain:before, -.@{fa-css-prefix}-link:before { content: @fa-var-link; } -.@{fa-css-prefix}-cloud:before { content: @fa-var-cloud; } -.@{fa-css-prefix}-flask:before { content: @fa-var-flask; } -.@{fa-css-prefix}-cut:before, -.@{fa-css-prefix}-scissors:before { content: @fa-var-scissors; } -.@{fa-css-prefix}-copy:before, -.@{fa-css-prefix}-files-o:before { content: @fa-var-files-o; } -.@{fa-css-prefix}-paperclip:before { content: @fa-var-paperclip; } -.@{fa-css-prefix}-save:before, -.@{fa-css-prefix}-floppy-o:before { content: @fa-var-floppy-o; } -.@{fa-css-prefix}-square:before { content: @fa-var-square; } -.@{fa-css-prefix}-navicon:before, -.@{fa-css-prefix}-reorder:before, -.@{fa-css-prefix}-bars:before { content: @fa-var-bars; } -.@{fa-css-prefix}-list-ul:before { content: @fa-var-list-ul; } -.@{fa-css-prefix}-list-ol:before { content: @fa-var-list-ol; } -.@{fa-css-prefix}-strikethrough:before { content: @fa-var-strikethrough; } -.@{fa-css-prefix}-underline:before { content: @fa-var-underline; } -.@{fa-css-prefix}-table:before { content: @fa-var-table; } -.@{fa-css-prefix}-magic:before { content: @fa-var-magic; } -.@{fa-css-prefix}-truck:before { content: @fa-var-truck; } -.@{fa-css-prefix}-pinterest:before { content: @fa-var-pinterest; } -.@{fa-css-prefix}-pinterest-square:before { content: @fa-var-pinterest-square; } -.@{fa-css-prefix}-google-plus-square:before { content: @fa-var-google-plus-square; } -.@{fa-css-prefix}-google-plus:before { content: @fa-var-google-plus; } -.@{fa-css-prefix}-money:before { content: @fa-var-money; } -.@{fa-css-prefix}-caret-down:before { content: @fa-var-caret-down; } -.@{fa-css-prefix}-caret-up:before { content: @fa-var-caret-up; } -.@{fa-css-prefix}-caret-left:before { content: @fa-var-caret-left; } -.@{fa-css-prefix}-caret-right:before { content: @fa-var-caret-right; } -.@{fa-css-prefix}-columns:before { content: @fa-var-columns; } -.@{fa-css-prefix}-unsorted:before, -.@{fa-css-prefix}-sort:before { content: @fa-var-sort; } -.@{fa-css-prefix}-sort-down:before, -.@{fa-css-prefix}-sort-desc:before { content: @fa-var-sort-desc; } -.@{fa-css-prefix}-sort-up:before, -.@{fa-css-prefix}-sort-asc:before { content: @fa-var-sort-asc; } -.@{fa-css-prefix}-envelope:before { content: @fa-var-envelope; } -.@{fa-css-prefix}-linkedin:before { content: @fa-var-linkedin; } -.@{fa-css-prefix}-rotate-left:before, -.@{fa-css-prefix}-undo:before { content: @fa-var-undo; } -.@{fa-css-prefix}-legal:before, -.@{fa-css-prefix}-gavel:before { content: @fa-var-gavel; } -.@{fa-css-prefix}-dashboard:before, -.@{fa-css-prefix}-tachometer:before { content: @fa-var-tachometer; } -.@{fa-css-prefix}-comment-o:before { content: @fa-var-comment-o; } -.@{fa-css-prefix}-comments-o:before { content: @fa-var-comments-o; } -.@{fa-css-prefix}-flash:before, -.@{fa-css-prefix}-bolt:before { content: @fa-var-bolt; } -.@{fa-css-prefix}-sitemap:before { content: @fa-var-sitemap; } -.@{fa-css-prefix}-umbrella:before { content: @fa-var-umbrella; } -.@{fa-css-prefix}-paste:before, -.@{fa-css-prefix}-clipboard:before { content: @fa-var-clipboard; } -.@{fa-css-prefix}-lightbulb-o:before { content: @fa-var-lightbulb-o; } -.@{fa-css-prefix}-exchange:before { content: @fa-var-exchange; } -.@{fa-css-prefix}-cloud-download:before { content: @fa-var-cloud-download; } -.@{fa-css-prefix}-cloud-upload:before { content: @fa-var-cloud-upload; } -.@{fa-css-prefix}-user-md:before { content: @fa-var-user-md; } -.@{fa-css-prefix}-stethoscope:before { content: @fa-var-stethoscope; } -.@{fa-css-prefix}-suitcase:before { content: @fa-var-suitcase; } -.@{fa-css-prefix}-bell-o:before { content: @fa-var-bell-o; } -.@{fa-css-prefix}-coffee:before { content: @fa-var-coffee; } -.@{fa-css-prefix}-cutlery:before { content: @fa-var-cutlery; } -.@{fa-css-prefix}-file-text-o:before { content: @fa-var-file-text-o; } -.@{fa-css-prefix}-building-o:before { content: @fa-var-building-o; } -.@{fa-css-prefix}-hospital-o:before { content: @fa-var-hospital-o; } -.@{fa-css-prefix}-ambulance:before { content: @fa-var-ambulance; } -.@{fa-css-prefix}-medkit:before { content: @fa-var-medkit; } -.@{fa-css-prefix}-fighter-jet:before { content: @fa-var-fighter-jet; } -.@{fa-css-prefix}-beer:before { content: @fa-var-beer; } -.@{fa-css-prefix}-h-square:before { content: @fa-var-h-square; } -.@{fa-css-prefix}-plus-square:before { content: @fa-var-plus-square; } -.@{fa-css-prefix}-angle-double-left:before { content: @fa-var-angle-double-left; } -.@{fa-css-prefix}-angle-double-right:before { content: @fa-var-angle-double-right; } -.@{fa-css-prefix}-angle-double-up:before { content: @fa-var-angle-double-up; } -.@{fa-css-prefix}-angle-double-down:before { content: @fa-var-angle-double-down; } -.@{fa-css-prefix}-angle-left:before { content: @fa-var-angle-left; } -.@{fa-css-prefix}-angle-right:before { content: @fa-var-angle-right; } -.@{fa-css-prefix}-angle-up:before { content: @fa-var-angle-up; } -.@{fa-css-prefix}-angle-down:before { content: @fa-var-angle-down; } -.@{fa-css-prefix}-desktop:before { content: @fa-var-desktop; } -.@{fa-css-prefix}-laptop:before { content: @fa-var-laptop; } -.@{fa-css-prefix}-tablet:before { content: @fa-var-tablet; } -.@{fa-css-prefix}-mobile-phone:before, -.@{fa-css-prefix}-mobile:before { content: @fa-var-mobile; } -.@{fa-css-prefix}-circle-o:before { content: @fa-var-circle-o; } -.@{fa-css-prefix}-quote-left:before { content: @fa-var-quote-left; } -.@{fa-css-prefix}-quote-right:before { content: @fa-var-quote-right; } -.@{fa-css-prefix}-spinner:before { content: @fa-var-spinner; } -.@{fa-css-prefix}-circle:before { content: @fa-var-circle; } -.@{fa-css-prefix}-mail-reply:before, -.@{fa-css-prefix}-reply:before { content: @fa-var-reply; } -.@{fa-css-prefix}-github-alt:before { content: @fa-var-github-alt; } -.@{fa-css-prefix}-folder-o:before { content: @fa-var-folder-o; } -.@{fa-css-prefix}-folder-open-o:before { content: @fa-var-folder-open-o; } -.@{fa-css-prefix}-smile-o:before { content: @fa-var-smile-o; } -.@{fa-css-prefix}-frown-o:before { content: @fa-var-frown-o; } -.@{fa-css-prefix}-meh-o:before { content: @fa-var-meh-o; } -.@{fa-css-prefix}-gamepad:before { content: @fa-var-gamepad; } -.@{fa-css-prefix}-keyboard-o:before { content: @fa-var-keyboard-o; } -.@{fa-css-prefix}-flag-o:before { content: @fa-var-flag-o; } -.@{fa-css-prefix}-flag-checkered:before { content: @fa-var-flag-checkered; } -.@{fa-css-prefix}-terminal:before { content: @fa-var-terminal; } -.@{fa-css-prefix}-code:before { content: @fa-var-code; } -.@{fa-css-prefix}-mail-reply-all:before, -.@{fa-css-prefix}-reply-all:before { content: @fa-var-reply-all; } -.@{fa-css-prefix}-star-half-empty:before, -.@{fa-css-prefix}-star-half-full:before, -.@{fa-css-prefix}-star-half-o:before { content: @fa-var-star-half-o; } -.@{fa-css-prefix}-location-arrow:before { content: @fa-var-location-arrow; } -.@{fa-css-prefix}-crop:before { content: @fa-var-crop; } -.@{fa-css-prefix}-code-fork:before { content: @fa-var-code-fork; } -.@{fa-css-prefix}-unlink:before, -.@{fa-css-prefix}-chain-broken:before { content: @fa-var-chain-broken; } -.@{fa-css-prefix}-question:before { content: @fa-var-question; } -.@{fa-css-prefix}-info:before { content: @fa-var-info; } -.@{fa-css-prefix}-exclamation:before { content: @fa-var-exclamation; } -.@{fa-css-prefix}-superscript:before { content: @fa-var-superscript; } -.@{fa-css-prefix}-subscript:before { content: @fa-var-subscript; } -.@{fa-css-prefix}-eraser:before { content: @fa-var-eraser; } -.@{fa-css-prefix}-puzzle-piece:before { content: @fa-var-puzzle-piece; } -.@{fa-css-prefix}-microphone:before { content: @fa-var-microphone; } -.@{fa-css-prefix}-microphone-slash:before { content: @fa-var-microphone-slash; } -.@{fa-css-prefix}-shield:before { content: @fa-var-shield; } -.@{fa-css-prefix}-calendar-o:before { content: @fa-var-calendar-o; } -.@{fa-css-prefix}-fire-extinguisher:before { content: @fa-var-fire-extinguisher; } -.@{fa-css-prefix}-rocket:before { content: @fa-var-rocket; } -.@{fa-css-prefix}-maxcdn:before { content: @fa-var-maxcdn; } -.@{fa-css-prefix}-chevron-circle-left:before { content: @fa-var-chevron-circle-left; } -.@{fa-css-prefix}-chevron-circle-right:before { content: @fa-var-chevron-circle-right; } -.@{fa-css-prefix}-chevron-circle-up:before { content: @fa-var-chevron-circle-up; } -.@{fa-css-prefix}-chevron-circle-down:before { content: @fa-var-chevron-circle-down; } -.@{fa-css-prefix}-html5:before { content: @fa-var-html5; } -.@{fa-css-prefix}-css3:before { content: @fa-var-css3; } -.@{fa-css-prefix}-anchor:before { content: @fa-var-anchor; } -.@{fa-css-prefix}-unlock-alt:before { content: @fa-var-unlock-alt; } -.@{fa-css-prefix}-bullseye:before { content: @fa-var-bullseye; } -.@{fa-css-prefix}-ellipsis-h:before { content: @fa-var-ellipsis-h; } -.@{fa-css-prefix}-ellipsis-v:before { content: @fa-var-ellipsis-v; } -.@{fa-css-prefix}-rss-square:before { content: @fa-var-rss-square; } -.@{fa-css-prefix}-play-circle:before { content: @fa-var-play-circle; } -.@{fa-css-prefix}-ticket:before { content: @fa-var-ticket; } -.@{fa-css-prefix}-minus-square:before { content: @fa-var-minus-square; } -.@{fa-css-prefix}-minus-square-o:before { content: @fa-var-minus-square-o; } -.@{fa-css-prefix}-level-up:before { content: @fa-var-level-up; } -.@{fa-css-prefix}-level-down:before { content: @fa-var-level-down; } -.@{fa-css-prefix}-check-square:before { content: @fa-var-check-square; } -.@{fa-css-prefix}-pencil-square:before { content: @fa-var-pencil-square; } -.@{fa-css-prefix}-external-link-square:before { content: @fa-var-external-link-square; } -.@{fa-css-prefix}-share-square:before { content: @fa-var-share-square; } -.@{fa-css-prefix}-compass:before { content: @fa-var-compass; } -.@{fa-css-prefix}-toggle-down:before, -.@{fa-css-prefix}-caret-square-o-down:before { content: @fa-var-caret-square-o-down; } -.@{fa-css-prefix}-toggle-up:before, -.@{fa-css-prefix}-caret-square-o-up:before { content: @fa-var-caret-square-o-up; } -.@{fa-css-prefix}-toggle-right:before, -.@{fa-css-prefix}-caret-square-o-right:before { content: @fa-var-caret-square-o-right; } -.@{fa-css-prefix}-euro:before, -.@{fa-css-prefix}-eur:before { content: @fa-var-eur; } -.@{fa-css-prefix}-gbp:before { content: @fa-var-gbp; } -.@{fa-css-prefix}-dollar:before, -.@{fa-css-prefix}-usd:before { content: @fa-var-usd; } -.@{fa-css-prefix}-rupee:before, -.@{fa-css-prefix}-inr:before { content: @fa-var-inr; } -.@{fa-css-prefix}-cny:before, -.@{fa-css-prefix}-rmb:before, -.@{fa-css-prefix}-yen:before, -.@{fa-css-prefix}-jpy:before { content: @fa-var-jpy; } -.@{fa-css-prefix}-ruble:before, -.@{fa-css-prefix}-rouble:before, -.@{fa-css-prefix}-rub:before { content: @fa-var-rub; } -.@{fa-css-prefix}-won:before, -.@{fa-css-prefix}-krw:before { content: @fa-var-krw; } -.@{fa-css-prefix}-bitcoin:before, -.@{fa-css-prefix}-btc:before { content: @fa-var-btc; } -.@{fa-css-prefix}-file:before { content: @fa-var-file; } -.@{fa-css-prefix}-file-text:before { content: @fa-var-file-text; } -.@{fa-css-prefix}-sort-alpha-asc:before { content: @fa-var-sort-alpha-asc; } -.@{fa-css-prefix}-sort-alpha-desc:before { content: @fa-var-sort-alpha-desc; } -.@{fa-css-prefix}-sort-amount-asc:before { content: @fa-var-sort-amount-asc; } -.@{fa-css-prefix}-sort-amount-desc:before { content: @fa-var-sort-amount-desc; } -.@{fa-css-prefix}-sort-numeric-asc:before { content: @fa-var-sort-numeric-asc; } -.@{fa-css-prefix}-sort-numeric-desc:before { content: @fa-var-sort-numeric-desc; } -.@{fa-css-prefix}-thumbs-up:before { content: @fa-var-thumbs-up; } -.@{fa-css-prefix}-thumbs-down:before { content: @fa-var-thumbs-down; } -.@{fa-css-prefix}-youtube-square:before { content: @fa-var-youtube-square; } -.@{fa-css-prefix}-youtube:before { content: @fa-var-youtube; } -.@{fa-css-prefix}-xing:before { content: @fa-var-xing; } -.@{fa-css-prefix}-xing-square:before { content: @fa-var-xing-square; } -.@{fa-css-prefix}-youtube-play:before { content: @fa-var-youtube-play; } -.@{fa-css-prefix}-dropbox:before { content: @fa-var-dropbox; } -.@{fa-css-prefix}-stack-overflow:before { content: @fa-var-stack-overflow; } -.@{fa-css-prefix}-instagram:before { content: @fa-var-instagram; } -.@{fa-css-prefix}-flickr:before { content: @fa-var-flickr; } -.@{fa-css-prefix}-adn:before { content: @fa-var-adn; } -.@{fa-css-prefix}-bitbucket:before { content: @fa-var-bitbucket; } -.@{fa-css-prefix}-bitbucket-square:before { content: @fa-var-bitbucket-square; } -.@{fa-css-prefix}-tumblr:before { content: @fa-var-tumblr; } -.@{fa-css-prefix}-tumblr-square:before { content: @fa-var-tumblr-square; } -.@{fa-css-prefix}-long-arrow-down:before { content: @fa-var-long-arrow-down; } -.@{fa-css-prefix}-long-arrow-up:before { content: @fa-var-long-arrow-up; } -.@{fa-css-prefix}-long-arrow-left:before { content: @fa-var-long-arrow-left; } -.@{fa-css-prefix}-long-arrow-right:before { content: @fa-var-long-arrow-right; } -.@{fa-css-prefix}-apple:before { content: @fa-var-apple; } -.@{fa-css-prefix}-windows:before { content: @fa-var-windows; } -.@{fa-css-prefix}-android:before { content: @fa-var-android; } -.@{fa-css-prefix}-linux:before { content: @fa-var-linux; } -.@{fa-css-prefix}-dribbble:before { content: @fa-var-dribbble; } -.@{fa-css-prefix}-skype:before { content: @fa-var-skype; } -.@{fa-css-prefix}-foursquare:before { content: @fa-var-foursquare; } -.@{fa-css-prefix}-trello:before { content: @fa-var-trello; } -.@{fa-css-prefix}-female:before { content: @fa-var-female; } -.@{fa-css-prefix}-male:before { content: @fa-var-male; } -.@{fa-css-prefix}-gittip:before, -.@{fa-css-prefix}-gratipay:before { content: @fa-var-gratipay; } -.@{fa-css-prefix}-sun-o:before { content: @fa-var-sun-o; } -.@{fa-css-prefix}-moon-o:before { content: @fa-var-moon-o; } -.@{fa-css-prefix}-archive:before { content: @fa-var-archive; } -.@{fa-css-prefix}-bug:before { content: @fa-var-bug; } -.@{fa-css-prefix}-vk:before { content: @fa-var-vk; } -.@{fa-css-prefix}-weibo:before { content: @fa-var-weibo; } -.@{fa-css-prefix}-renren:before { content: @fa-var-renren; } -.@{fa-css-prefix}-pagelines:before { content: @fa-var-pagelines; } -.@{fa-css-prefix}-stack-exchange:before { content: @fa-var-stack-exchange; } -.@{fa-css-prefix}-arrow-circle-o-right:before { content: @fa-var-arrow-circle-o-right; } -.@{fa-css-prefix}-arrow-circle-o-left:before { content: @fa-var-arrow-circle-o-left; } -.@{fa-css-prefix}-toggle-left:before, -.@{fa-css-prefix}-caret-square-o-left:before { content: @fa-var-caret-square-o-left; } -.@{fa-css-prefix}-dot-circle-o:before { content: @fa-var-dot-circle-o; } -.@{fa-css-prefix}-wheelchair:before { content: @fa-var-wheelchair; } -.@{fa-css-prefix}-vimeo-square:before { content: @fa-var-vimeo-square; } -.@{fa-css-prefix}-turkish-lira:before, -.@{fa-css-prefix}-try:before { content: @fa-var-try; } -.@{fa-css-prefix}-plus-square-o:before { content: @fa-var-plus-square-o; } -.@{fa-css-prefix}-space-shuttle:before { content: @fa-var-space-shuttle; } -.@{fa-css-prefix}-slack:before { content: @fa-var-slack; } -.@{fa-css-prefix}-envelope-square:before { content: @fa-var-envelope-square; } -.@{fa-css-prefix}-wordpress:before { content: @fa-var-wordpress; } -.@{fa-css-prefix}-openid:before { content: @fa-var-openid; } -.@{fa-css-prefix}-institution:before, -.@{fa-css-prefix}-bank:before, -.@{fa-css-prefix}-university:before { content: @fa-var-university; } -.@{fa-css-prefix}-mortar-board:before, -.@{fa-css-prefix}-graduation-cap:before { content: @fa-var-graduation-cap; } -.@{fa-css-prefix}-yahoo:before { content: @fa-var-yahoo; } -.@{fa-css-prefix}-google:before { content: @fa-var-google; } -.@{fa-css-prefix}-reddit:before { content: @fa-var-reddit; } -.@{fa-css-prefix}-reddit-square:before { content: @fa-var-reddit-square; } -.@{fa-css-prefix}-stumbleupon-circle:before { content: @fa-var-stumbleupon-circle; } -.@{fa-css-prefix}-stumbleupon:before { content: @fa-var-stumbleupon; } -.@{fa-css-prefix}-delicious:before { content: @fa-var-delicious; } -.@{fa-css-prefix}-digg:before { content: @fa-var-digg; } -.@{fa-css-prefix}-pied-piper:before { content: @fa-var-pied-piper; } -.@{fa-css-prefix}-pied-piper-alt:before { content: @fa-var-pied-piper-alt; } -.@{fa-css-prefix}-drupal:before { content: @fa-var-drupal; } -.@{fa-css-prefix}-joomla:before { content: @fa-var-joomla; } -.@{fa-css-prefix}-language:before { content: @fa-var-language; } -.@{fa-css-prefix}-fax:before { content: @fa-var-fax; } -.@{fa-css-prefix}-building:before { content: @fa-var-building; } -.@{fa-css-prefix}-child:before { content: @fa-var-child; } -.@{fa-css-prefix}-paw:before { content: @fa-var-paw; } -.@{fa-css-prefix}-spoon:before { content: @fa-var-spoon; } -.@{fa-css-prefix}-cube:before { content: @fa-var-cube; } -.@{fa-css-prefix}-cubes:before { content: @fa-var-cubes; } -.@{fa-css-prefix}-behance:before { content: @fa-var-behance; } -.@{fa-css-prefix}-behance-square:before { content: @fa-var-behance-square; } -.@{fa-css-prefix}-steam:before { content: @fa-var-steam; } -.@{fa-css-prefix}-steam-square:before { content: @fa-var-steam-square; } -.@{fa-css-prefix}-recycle:before { content: @fa-var-recycle; } -.@{fa-css-prefix}-automobile:before, -.@{fa-css-prefix}-car:before { content: @fa-var-car; } -.@{fa-css-prefix}-cab:before, -.@{fa-css-prefix}-taxi:before { content: @fa-var-taxi; } -.@{fa-css-prefix}-tree:before { content: @fa-var-tree; } -.@{fa-css-prefix}-spotify:before { content: @fa-var-spotify; } -.@{fa-css-prefix}-deviantart:before { content: @fa-var-deviantart; } -.@{fa-css-prefix}-soundcloud:before { content: @fa-var-soundcloud; } -.@{fa-css-prefix}-database:before { content: @fa-var-database; } -.@{fa-css-prefix}-file-pdf-o:before { content: @fa-var-file-pdf-o; } -.@{fa-css-prefix}-file-word-o:before { content: @fa-var-file-word-o; } -.@{fa-css-prefix}-file-excel-o:before { content: @fa-var-file-excel-o; } -.@{fa-css-prefix}-file-powerpoint-o:before { content: @fa-var-file-powerpoint-o; } -.@{fa-css-prefix}-file-photo-o:before, -.@{fa-css-prefix}-file-picture-o:before, -.@{fa-css-prefix}-file-image-o:before { content: @fa-var-file-image-o; } -.@{fa-css-prefix}-file-zip-o:before, -.@{fa-css-prefix}-file-archive-o:before { content: @fa-var-file-archive-o; } -.@{fa-css-prefix}-file-sound-o:before, -.@{fa-css-prefix}-file-audio-o:before { content: @fa-var-file-audio-o; } -.@{fa-css-prefix}-file-movie-o:before, -.@{fa-css-prefix}-file-video-o:before { content: @fa-var-file-video-o; } -.@{fa-css-prefix}-file-code-o:before { content: @fa-var-file-code-o; } -.@{fa-css-prefix}-vine:before { content: @fa-var-vine; } -.@{fa-css-prefix}-codepen:before { content: @fa-var-codepen; } -.@{fa-css-prefix}-jsfiddle:before { content: @fa-var-jsfiddle; } -.@{fa-css-prefix}-life-bouy:before, -.@{fa-css-prefix}-life-buoy:before, -.@{fa-css-prefix}-life-saver:before, -.@{fa-css-prefix}-support:before, -.@{fa-css-prefix}-life-ring:before { content: @fa-var-life-ring; } -.@{fa-css-prefix}-circle-o-notch:before { content: @fa-var-circle-o-notch; } -.@{fa-css-prefix}-ra:before, -.@{fa-css-prefix}-rebel:before { content: @fa-var-rebel; } -.@{fa-css-prefix}-ge:before, -.@{fa-css-prefix}-empire:before { content: @fa-var-empire; } -.@{fa-css-prefix}-git-square:before { content: @fa-var-git-square; } -.@{fa-css-prefix}-git:before { content: @fa-var-git; } -.@{fa-css-prefix}-y-combinator-square:before, -.@{fa-css-prefix}-yc-square:before, -.@{fa-css-prefix}-hacker-news:before { content: @fa-var-hacker-news; } -.@{fa-css-prefix}-tencent-weibo:before { content: @fa-var-tencent-weibo; } -.@{fa-css-prefix}-qq:before { content: @fa-var-qq; } -.@{fa-css-prefix}-wechat:before, -.@{fa-css-prefix}-weixin:before { content: @fa-var-weixin; } -.@{fa-css-prefix}-send:before, -.@{fa-css-prefix}-paper-plane:before { content: @fa-var-paper-plane; } -.@{fa-css-prefix}-send-o:before, -.@{fa-css-prefix}-paper-plane-o:before { content: @fa-var-paper-plane-o; } -.@{fa-css-prefix}-history:before { content: @fa-var-history; } -.@{fa-css-prefix}-circle-thin:before { content: @fa-var-circle-thin; } -.@{fa-css-prefix}-header:before { content: @fa-var-header; } -.@{fa-css-prefix}-paragraph:before { content: @fa-var-paragraph; } -.@{fa-css-prefix}-sliders:before { content: @fa-var-sliders; } -.@{fa-css-prefix}-share-alt:before { content: @fa-var-share-alt; } -.@{fa-css-prefix}-share-alt-square:before { content: @fa-var-share-alt-square; } -.@{fa-css-prefix}-bomb:before { content: @fa-var-bomb; } -.@{fa-css-prefix}-soccer-ball-o:before, -.@{fa-css-prefix}-futbol-o:before { content: @fa-var-futbol-o; } -.@{fa-css-prefix}-tty:before { content: @fa-var-tty; } -.@{fa-css-prefix}-binoculars:before { content: @fa-var-binoculars; } -.@{fa-css-prefix}-plug:before { content: @fa-var-plug; } -.@{fa-css-prefix}-slideshare:before { content: @fa-var-slideshare; } -.@{fa-css-prefix}-twitch:before { content: @fa-var-twitch; } -.@{fa-css-prefix}-yelp:before { content: @fa-var-yelp; } -.@{fa-css-prefix}-newspaper-o:before { content: @fa-var-newspaper-o; } -.@{fa-css-prefix}-wifi:before { content: @fa-var-wifi; } -.@{fa-css-prefix}-calculator:before { content: @fa-var-calculator; } -.@{fa-css-prefix}-paypal:before { content: @fa-var-paypal; } -.@{fa-css-prefix}-google-wallet:before { content: @fa-var-google-wallet; } -.@{fa-css-prefix}-cc-visa:before { content: @fa-var-cc-visa; } -.@{fa-css-prefix}-cc-mastercard:before { content: @fa-var-cc-mastercard; } -.@{fa-css-prefix}-cc-discover:before { content: @fa-var-cc-discover; } -.@{fa-css-prefix}-cc-amex:before { content: @fa-var-cc-amex; } -.@{fa-css-prefix}-cc-paypal:before { content: @fa-var-cc-paypal; } -.@{fa-css-prefix}-cc-stripe:before { content: @fa-var-cc-stripe; } -.@{fa-css-prefix}-bell-slash:before { content: @fa-var-bell-slash; } -.@{fa-css-prefix}-bell-slash-o:before { content: @fa-var-bell-slash-o; } -.@{fa-css-prefix}-trash:before { content: @fa-var-trash; } -.@{fa-css-prefix}-copyright:before { content: @fa-var-copyright; } -.@{fa-css-prefix}-at:before { content: @fa-var-at; } -.@{fa-css-prefix}-eyedropper:before { content: @fa-var-eyedropper; } -.@{fa-css-prefix}-paint-brush:before { content: @fa-var-paint-brush; } -.@{fa-css-prefix}-birthday-cake:before { content: @fa-var-birthday-cake; } -.@{fa-css-prefix}-area-chart:before { content: @fa-var-area-chart; } -.@{fa-css-prefix}-pie-chart:before { content: @fa-var-pie-chart; } -.@{fa-css-prefix}-line-chart:before { content: @fa-var-line-chart; } -.@{fa-css-prefix}-lastfm:before { content: @fa-var-lastfm; } -.@{fa-css-prefix}-lastfm-square:before { content: @fa-var-lastfm-square; } -.@{fa-css-prefix}-toggle-off:before { content: @fa-var-toggle-off; } -.@{fa-css-prefix}-toggle-on:before { content: @fa-var-toggle-on; } -.@{fa-css-prefix}-bicycle:before { content: @fa-var-bicycle; } -.@{fa-css-prefix}-bus:before { content: @fa-var-bus; } -.@{fa-css-prefix}-ioxhost:before { content: @fa-var-ioxhost; } -.@{fa-css-prefix}-angellist:before { content: @fa-var-angellist; } -.@{fa-css-prefix}-cc:before { content: @fa-var-cc; } -.@{fa-css-prefix}-shekel:before, -.@{fa-css-prefix}-sheqel:before, -.@{fa-css-prefix}-ils:before { content: @fa-var-ils; } -.@{fa-css-prefix}-meanpath:before { content: @fa-var-meanpath; } -.@{fa-css-prefix}-buysellads:before { content: @fa-var-buysellads; } -.@{fa-css-prefix}-connectdevelop:before { content: @fa-var-connectdevelop; } -.@{fa-css-prefix}-dashcube:before { content: @fa-var-dashcube; } -.@{fa-css-prefix}-forumbee:before { content: @fa-var-forumbee; } -.@{fa-css-prefix}-leanpub:before { content: @fa-var-leanpub; } -.@{fa-css-prefix}-sellsy:before { content: @fa-var-sellsy; } -.@{fa-css-prefix}-shirtsinbulk:before { content: @fa-var-shirtsinbulk; } -.@{fa-css-prefix}-simplybuilt:before { content: @fa-var-simplybuilt; } -.@{fa-css-prefix}-skyatlas:before { content: @fa-var-skyatlas; } -.@{fa-css-prefix}-cart-plus:before { content: @fa-var-cart-plus; } -.@{fa-css-prefix}-cart-arrow-down:before { content: @fa-var-cart-arrow-down; } -.@{fa-css-prefix}-diamond:before { content: @fa-var-diamond; } -.@{fa-css-prefix}-ship:before { content: @fa-var-ship; } -.@{fa-css-prefix}-user-secret:before { content: @fa-var-user-secret; } -.@{fa-css-prefix}-motorcycle:before { content: @fa-var-motorcycle; } -.@{fa-css-prefix}-street-view:before { content: @fa-var-street-view; } -.@{fa-css-prefix}-heartbeat:before { content: @fa-var-heartbeat; } -.@{fa-css-prefix}-venus:before { content: @fa-var-venus; } -.@{fa-css-prefix}-mars:before { content: @fa-var-mars; } -.@{fa-css-prefix}-mercury:before { content: @fa-var-mercury; } -.@{fa-css-prefix}-intersex:before, -.@{fa-css-prefix}-transgender:before { content: @fa-var-transgender; } -.@{fa-css-prefix}-transgender-alt:before { content: @fa-var-transgender-alt; } -.@{fa-css-prefix}-venus-double:before { content: @fa-var-venus-double; } -.@{fa-css-prefix}-mars-double:before { content: @fa-var-mars-double; } -.@{fa-css-prefix}-venus-mars:before { content: @fa-var-venus-mars; } -.@{fa-css-prefix}-mars-stroke:before { content: @fa-var-mars-stroke; } -.@{fa-css-prefix}-mars-stroke-v:before { content: @fa-var-mars-stroke-v; } -.@{fa-css-prefix}-mars-stroke-h:before { content: @fa-var-mars-stroke-h; } -.@{fa-css-prefix}-neuter:before { content: @fa-var-neuter; } -.@{fa-css-prefix}-genderless:before { content: @fa-var-genderless; } -.@{fa-css-prefix}-facebook-official:before { content: @fa-var-facebook-official; } -.@{fa-css-prefix}-pinterest-p:before { content: @fa-var-pinterest-p; } -.@{fa-css-prefix}-whatsapp:before { content: @fa-var-whatsapp; } -.@{fa-css-prefix}-server:before { content: @fa-var-server; } -.@{fa-css-prefix}-user-plus:before { content: @fa-var-user-plus; } -.@{fa-css-prefix}-user-times:before { content: @fa-var-user-times; } -.@{fa-css-prefix}-hotel:before, -.@{fa-css-prefix}-bed:before { content: @fa-var-bed; } -.@{fa-css-prefix}-viacoin:before { content: @fa-var-viacoin; } -.@{fa-css-prefix}-train:before { content: @fa-var-train; } -.@{fa-css-prefix}-subway:before { content: @fa-var-subway; } -.@{fa-css-prefix}-medium:before { content: @fa-var-medium; } -.@{fa-css-prefix}-yc:before, -.@{fa-css-prefix}-y-combinator:before { content: @fa-var-y-combinator; } -.@{fa-css-prefix}-optin-monster:before { content: @fa-var-optin-monster; } -.@{fa-css-prefix}-opencart:before { content: @fa-var-opencart; } -.@{fa-css-prefix}-expeditedssl:before { content: @fa-var-expeditedssl; } -.@{fa-css-prefix}-battery-4:before, -.@{fa-css-prefix}-battery-full:before { content: @fa-var-battery-full; } -.@{fa-css-prefix}-battery-3:before, -.@{fa-css-prefix}-battery-three-quarters:before { content: @fa-var-battery-three-quarters; } -.@{fa-css-prefix}-battery-2:before, -.@{fa-css-prefix}-battery-half:before { content: @fa-var-battery-half; } -.@{fa-css-prefix}-battery-1:before, -.@{fa-css-prefix}-battery-quarter:before { content: @fa-var-battery-quarter; } -.@{fa-css-prefix}-battery-0:before, -.@{fa-css-prefix}-battery-empty:before { content: @fa-var-battery-empty; } -.@{fa-css-prefix}-mouse-pointer:before { content: @fa-var-mouse-pointer; } -.@{fa-css-prefix}-i-cursor:before { content: @fa-var-i-cursor; } -.@{fa-css-prefix}-object-group:before { content: @fa-var-object-group; } -.@{fa-css-prefix}-object-ungroup:before { content: @fa-var-object-ungroup; } -.@{fa-css-prefix}-sticky-note:before { content: @fa-var-sticky-note; } -.@{fa-css-prefix}-sticky-note-o:before { content: @fa-var-sticky-note-o; } -.@{fa-css-prefix}-cc-jcb:before { content: @fa-var-cc-jcb; } -.@{fa-css-prefix}-cc-diners-club:before { content: @fa-var-cc-diners-club; } -.@{fa-css-prefix}-clone:before { content: @fa-var-clone; } -.@{fa-css-prefix}-balance-scale:before { content: @fa-var-balance-scale; } -.@{fa-css-prefix}-hourglass-o:before { content: @fa-var-hourglass-o; } -.@{fa-css-prefix}-hourglass-1:before, -.@{fa-css-prefix}-hourglass-start:before { content: @fa-var-hourglass-start; } -.@{fa-css-prefix}-hourglass-2:before, -.@{fa-css-prefix}-hourglass-half:before { content: @fa-var-hourglass-half; } -.@{fa-css-prefix}-hourglass-3:before, -.@{fa-css-prefix}-hourglass-end:before { content: @fa-var-hourglass-end; } -.@{fa-css-prefix}-hourglass:before { content: @fa-var-hourglass; } -.@{fa-css-prefix}-hand-grab-o:before, -.@{fa-css-prefix}-hand-rock-o:before { content: @fa-var-hand-rock-o; } -.@{fa-css-prefix}-hand-stop-o:before, -.@{fa-css-prefix}-hand-paper-o:before { content: @fa-var-hand-paper-o; } -.@{fa-css-prefix}-hand-scissors-o:before { content: @fa-var-hand-scissors-o; } -.@{fa-css-prefix}-hand-lizard-o:before { content: @fa-var-hand-lizard-o; } -.@{fa-css-prefix}-hand-spock-o:before { content: @fa-var-hand-spock-o; } -.@{fa-css-prefix}-hand-pointer-o:before { content: @fa-var-hand-pointer-o; } -.@{fa-css-prefix}-hand-peace-o:before { content: @fa-var-hand-peace-o; } -.@{fa-css-prefix}-trademark:before { content: @fa-var-trademark; } -.@{fa-css-prefix}-registered:before { content: @fa-var-registered; } -.@{fa-css-prefix}-creative-commons:before { content: @fa-var-creative-commons; } -.@{fa-css-prefix}-gg:before { content: @fa-var-gg; } -.@{fa-css-prefix}-gg-circle:before { content: @fa-var-gg-circle; } -.@{fa-css-prefix}-tripadvisor:before { content: @fa-var-tripadvisor; } -.@{fa-css-prefix}-odnoklassniki:before { content: @fa-var-odnoklassniki; } -.@{fa-css-prefix}-odnoklassniki-square:before { content: @fa-var-odnoklassniki-square; } -.@{fa-css-prefix}-get-pocket:before { content: @fa-var-get-pocket; } -.@{fa-css-prefix}-wikipedia-w:before { content: @fa-var-wikipedia-w; } -.@{fa-css-prefix}-safari:before { content: @fa-var-safari; } -.@{fa-css-prefix}-chrome:before { content: @fa-var-chrome; } -.@{fa-css-prefix}-firefox:before { content: @fa-var-firefox; } -.@{fa-css-prefix}-opera:before { content: @fa-var-opera; } -.@{fa-css-prefix}-internet-explorer:before { content: @fa-var-internet-explorer; } -.@{fa-css-prefix}-tv:before, -.@{fa-css-prefix}-television:before { content: @fa-var-television; } -.@{fa-css-prefix}-contao:before { content: @fa-var-contao; } -.@{fa-css-prefix}-500px:before { content: @fa-var-500px; } -.@{fa-css-prefix}-amazon:before { content: @fa-var-amazon; } -.@{fa-css-prefix}-calendar-plus-o:before { content: @fa-var-calendar-plus-o; } -.@{fa-css-prefix}-calendar-minus-o:before { content: @fa-var-calendar-minus-o; } -.@{fa-css-prefix}-calendar-times-o:before { content: @fa-var-calendar-times-o; } -.@{fa-css-prefix}-calendar-check-o:before { content: @fa-var-calendar-check-o; } -.@{fa-css-prefix}-industry:before { content: @fa-var-industry; } -.@{fa-css-prefix}-map-pin:before { content: @fa-var-map-pin; } -.@{fa-css-prefix}-map-signs:before { content: @fa-var-map-signs; } -.@{fa-css-prefix}-map-o:before { content: @fa-var-map-o; } -.@{fa-css-prefix}-map:before { content: @fa-var-map; } -.@{fa-css-prefix}-commenting:before { content: @fa-var-commenting; } -.@{fa-css-prefix}-commenting-o:before { content: @fa-var-commenting-o; } -.@{fa-css-prefix}-houzz:before { content: @fa-var-houzz; } -.@{fa-css-prefix}-vimeo:before { content: @fa-var-vimeo; } -.@{fa-css-prefix}-black-tie:before { content: @fa-var-black-tie; } -.@{fa-css-prefix}-fonticons:before { content: @fa-var-fonticons; } diff --git a/themes/devopsdays-responsive/static/font-awesome/less/larger.less b/themes/devopsdays-responsive/static/font-awesome/less/larger.less deleted file mode 100644 index c9d646770e2..00000000000 --- a/themes/devopsdays-responsive/static/font-awesome/less/larger.less +++ /dev/null @@ -1,13 +0,0 @@ -// Icon Sizes -// ------------------------- - -/* makes the font 33% larger relative to the icon container */ -.@{fa-css-prefix}-lg { - font-size: (4em / 3); - line-height: (3em / 4); - vertical-align: -15%; -} -.@{fa-css-prefix}-2x { font-size: 2em; } -.@{fa-css-prefix}-3x { font-size: 3em; } -.@{fa-css-prefix}-4x { font-size: 4em; } -.@{fa-css-prefix}-5x { font-size: 5em; } diff --git a/themes/devopsdays-responsive/static/font-awesome/less/list.less b/themes/devopsdays-responsive/static/font-awesome/less/list.less deleted file mode 100644 index 0b440382f61..00000000000 --- a/themes/devopsdays-responsive/static/font-awesome/less/list.less +++ /dev/null @@ -1,19 +0,0 @@ -// List Icons -// ------------------------- - -.@{fa-css-prefix}-ul { - padding-left: 0; - margin-left: @fa-li-width; - list-style-type: none; - > li { position: relative; } -} -.@{fa-css-prefix}-li { - position: absolute; - left: -@fa-li-width; - width: @fa-li-width; - top: (2em / 14); - text-align: center; - &.@{fa-css-prefix}-lg { - left: (-@fa-li-width + (4em / 14)); - } -} diff --git a/themes/devopsdays-responsive/static/font-awesome/less/mixins.less b/themes/devopsdays-responsive/static/font-awesome/less/mixins.less deleted file mode 100644 index d5a43a145a7..00000000000 --- a/themes/devopsdays-responsive/static/font-awesome/less/mixins.less +++ /dev/null @@ -1,26 +0,0 @@ -// Mixins -// -------------------------- - -.fa-icon() { - display: inline-block; - font: normal normal normal @fa-font-size-base/@fa-line-height-base FontAwesome; // shortening font declaration - font-size: inherit; // can't have font-size inherit on line above, so need to override - text-rendering: auto; // optimizelegibility throws things off #1094 - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; - -} - -.fa-icon-rotate(@degrees, @rotation) { - filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=@rotation); - -webkit-transform: rotate(@degrees); - -ms-transform: rotate(@degrees); - transform: rotate(@degrees); -} - -.fa-icon-flip(@horiz, @vert, @rotation) { - filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=@rotation, mirror=1); - -webkit-transform: scale(@horiz, @vert); - -ms-transform: scale(@horiz, @vert); - transform: scale(@horiz, @vert); -} diff --git a/themes/devopsdays-responsive/static/font-awesome/less/path.less b/themes/devopsdays-responsive/static/font-awesome/less/path.less deleted file mode 100644 index 9211e66597a..00000000000 --- a/themes/devopsdays-responsive/static/font-awesome/less/path.less +++ /dev/null @@ -1,15 +0,0 @@ -/* FONT PATH - * -------------------------- */ - -@font-face { - font-family: 'FontAwesome'; - src: url('@{fa-font-path}/fontawesome-webfont.eot?v=@{fa-version}'); - src: url('@{fa-font-path}/fontawesome-webfont.eot?#iefix&v=@{fa-version}') format('embedded-opentype'), - url('@{fa-font-path}/fontawesome-webfont.woff2?v=@{fa-version}') format('woff2'), - url('@{fa-font-path}/fontawesome-webfont.woff?v=@{fa-version}') format('woff'), - url('@{fa-font-path}/fontawesome-webfont.ttf?v=@{fa-version}') format('truetype'), - url('@{fa-font-path}/fontawesome-webfont.svg?v=@{fa-version}#fontawesomeregular') format('svg'); -// src: url('@{fa-font-path}/FontAwesome.otf') format('opentype'); // used when developing fonts - font-weight: normal; - font-style: normal; -} diff --git a/themes/devopsdays-responsive/static/font-awesome/less/rotated-flipped.less b/themes/devopsdays-responsive/static/font-awesome/less/rotated-flipped.less deleted file mode 100644 index f6ba81475b9..00000000000 --- a/themes/devopsdays-responsive/static/font-awesome/less/rotated-flipped.less +++ /dev/null @@ -1,20 +0,0 @@ -// Rotated & Flipped Icons -// ------------------------- - -.@{fa-css-prefix}-rotate-90 { .fa-icon-rotate(90deg, 1); } -.@{fa-css-prefix}-rotate-180 { .fa-icon-rotate(180deg, 2); } -.@{fa-css-prefix}-rotate-270 { .fa-icon-rotate(270deg, 3); } - -.@{fa-css-prefix}-flip-horizontal { .fa-icon-flip(-1, 1, 0); } -.@{fa-css-prefix}-flip-vertical { .fa-icon-flip(1, -1, 2); } - -// Hook for IE8-9 -// ------------------------- - -:root .@{fa-css-prefix}-rotate-90, -:root .@{fa-css-prefix}-rotate-180, -:root .@{fa-css-prefix}-rotate-270, -:root .@{fa-css-prefix}-flip-horizontal, -:root .@{fa-css-prefix}-flip-vertical { - filter: none; -} diff --git a/themes/devopsdays-responsive/static/font-awesome/less/stacked.less b/themes/devopsdays-responsive/static/font-awesome/less/stacked.less deleted file mode 100644 index fc53fb0e7ab..00000000000 --- a/themes/devopsdays-responsive/static/font-awesome/less/stacked.less +++ /dev/null @@ -1,20 +0,0 @@ -// Stacked Icons -// ------------------------- - -.@{fa-css-prefix}-stack { - position: relative; - display: inline-block; - width: 2em; - height: 2em; - line-height: 2em; - vertical-align: middle; -} -.@{fa-css-prefix}-stack-1x, .@{fa-css-prefix}-stack-2x { - position: absolute; - left: 0; - width: 100%; - text-align: center; -} -.@{fa-css-prefix}-stack-1x { line-height: inherit; } -.@{fa-css-prefix}-stack-2x { font-size: 2em; } -.@{fa-css-prefix}-inverse { color: @fa-inverse; } diff --git a/themes/devopsdays-responsive/static/font-awesome/less/variables.less b/themes/devopsdays-responsive/static/font-awesome/less/variables.less deleted file mode 100644 index 00418e75796..00000000000 --- a/themes/devopsdays-responsive/static/font-awesome/less/variables.less +++ /dev/null @@ -1,688 +0,0 @@ -// Variables -// -------------------------- - -@fa-font-path: "../fonts"; -@fa-font-size-base: 14px; -@fa-line-height-base: 1; -//@fa-font-path: "//netdna.bootstrapcdn.com/font-awesome/4.4.0/fonts"; // for referencing Bootstrap CDN font files directly -@fa-css-prefix: fa; -@fa-version: "4.4.0"; -@fa-border-color: #eee; -@fa-inverse: #fff; -@fa-li-width: (30em / 14); - -@fa-var-500px: "\f26e"; -@fa-var-adjust: "\f042"; -@fa-var-adn: "\f170"; -@fa-var-align-center: "\f037"; -@fa-var-align-justify: "\f039"; -@fa-var-align-left: "\f036"; -@fa-var-align-right: "\f038"; -@fa-var-amazon: "\f270"; -@fa-var-ambulance: "\f0f9"; -@fa-var-anchor: "\f13d"; -@fa-var-android: "\f17b"; -@fa-var-angellist: "\f209"; -@fa-var-angle-double-down: "\f103"; -@fa-var-angle-double-left: "\f100"; -@fa-var-angle-double-right: "\f101"; -@fa-var-angle-double-up: "\f102"; -@fa-var-angle-down: "\f107"; -@fa-var-angle-left: "\f104"; -@fa-var-angle-right: "\f105"; -@fa-var-angle-up: "\f106"; -@fa-var-apple: "\f179"; -@fa-var-archive: "\f187"; -@fa-var-area-chart: "\f1fe"; -@fa-var-arrow-circle-down: "\f0ab"; -@fa-var-arrow-circle-left: "\f0a8"; -@fa-var-arrow-circle-o-down: "\f01a"; -@fa-var-arrow-circle-o-left: "\f190"; -@fa-var-arrow-circle-o-right: "\f18e"; -@fa-var-arrow-circle-o-up: "\f01b"; -@fa-var-arrow-circle-right: "\f0a9"; -@fa-var-arrow-circle-up: "\f0aa"; -@fa-var-arrow-down: "\f063"; -@fa-var-arrow-left: "\f060"; -@fa-var-arrow-right: "\f061"; -@fa-var-arrow-up: "\f062"; -@fa-var-arrows: "\f047"; -@fa-var-arrows-alt: "\f0b2"; -@fa-var-arrows-h: "\f07e"; -@fa-var-arrows-v: "\f07d"; -@fa-var-asterisk: "\f069"; -@fa-var-at: "\f1fa"; -@fa-var-automobile: "\f1b9"; -@fa-var-backward: "\f04a"; -@fa-var-balance-scale: "\f24e"; -@fa-var-ban: "\f05e"; -@fa-var-bank: "\f19c"; -@fa-var-bar-chart: "\f080"; -@fa-var-bar-chart-o: "\f080"; -@fa-var-barcode: "\f02a"; -@fa-var-bars: "\f0c9"; -@fa-var-battery-0: "\f244"; -@fa-var-battery-1: "\f243"; -@fa-var-battery-2: "\f242"; -@fa-var-battery-3: "\f241"; -@fa-var-battery-4: "\f240"; -@fa-var-battery-empty: "\f244"; -@fa-var-battery-full: "\f240"; -@fa-var-battery-half: "\f242"; -@fa-var-battery-quarter: "\f243"; -@fa-var-battery-three-quarters: "\f241"; -@fa-var-bed: "\f236"; -@fa-var-beer: "\f0fc"; -@fa-var-behance: "\f1b4"; -@fa-var-behance-square: "\f1b5"; -@fa-var-bell: "\f0f3"; -@fa-var-bell-o: "\f0a2"; -@fa-var-bell-slash: "\f1f6"; -@fa-var-bell-slash-o: "\f1f7"; -@fa-var-bicycle: "\f206"; -@fa-var-binoculars: "\f1e5"; -@fa-var-birthday-cake: "\f1fd"; -@fa-var-bitbucket: "\f171"; -@fa-var-bitbucket-square: "\f172"; -@fa-var-bitcoin: "\f15a"; -@fa-var-black-tie: "\f27e"; -@fa-var-bold: "\f032"; -@fa-var-bolt: "\f0e7"; -@fa-var-bomb: "\f1e2"; -@fa-var-book: "\f02d"; -@fa-var-bookmark: "\f02e"; -@fa-var-bookmark-o: "\f097"; -@fa-var-briefcase: "\f0b1"; -@fa-var-btc: "\f15a"; -@fa-var-bug: "\f188"; -@fa-var-building: "\f1ad"; -@fa-var-building-o: "\f0f7"; -@fa-var-bullhorn: "\f0a1"; -@fa-var-bullseye: "\f140"; -@fa-var-bus: "\f207"; -@fa-var-buysellads: "\f20d"; -@fa-var-cab: "\f1ba"; -@fa-var-calculator: "\f1ec"; -@fa-var-calendar: "\f073"; -@fa-var-calendar-check-o: "\f274"; -@fa-var-calendar-minus-o: "\f272"; -@fa-var-calendar-o: "\f133"; -@fa-var-calendar-plus-o: "\f271"; -@fa-var-calendar-times-o: "\f273"; -@fa-var-camera: "\f030"; -@fa-var-camera-retro: "\f083"; -@fa-var-car: "\f1b9"; -@fa-var-caret-down: "\f0d7"; -@fa-var-caret-left: "\f0d9"; -@fa-var-caret-right: "\f0da"; -@fa-var-caret-square-o-down: "\f150"; -@fa-var-caret-square-o-left: "\f191"; -@fa-var-caret-square-o-right: "\f152"; -@fa-var-caret-square-o-up: "\f151"; -@fa-var-caret-up: "\f0d8"; -@fa-var-cart-arrow-down: "\f218"; -@fa-var-cart-plus: "\f217"; -@fa-var-cc: "\f20a"; -@fa-var-cc-amex: "\f1f3"; -@fa-var-cc-diners-club: "\f24c"; -@fa-var-cc-discover: "\f1f2"; -@fa-var-cc-jcb: "\f24b"; -@fa-var-cc-mastercard: "\f1f1"; -@fa-var-cc-paypal: "\f1f4"; -@fa-var-cc-stripe: "\f1f5"; -@fa-var-cc-visa: "\f1f0"; -@fa-var-certificate: "\f0a3"; -@fa-var-chain: "\f0c1"; -@fa-var-chain-broken: "\f127"; -@fa-var-check: "\f00c"; -@fa-var-check-circle: "\f058"; -@fa-var-check-circle-o: "\f05d"; -@fa-var-check-square: "\f14a"; -@fa-var-check-square-o: "\f046"; -@fa-var-chevron-circle-down: "\f13a"; -@fa-var-chevron-circle-left: "\f137"; -@fa-var-chevron-circle-right: "\f138"; -@fa-var-chevron-circle-up: "\f139"; -@fa-var-chevron-down: "\f078"; -@fa-var-chevron-left: "\f053"; -@fa-var-chevron-right: "\f054"; -@fa-var-chevron-up: "\f077"; -@fa-var-child: "\f1ae"; -@fa-var-chrome: "\f268"; -@fa-var-circle: "\f111"; -@fa-var-circle-o: "\f10c"; -@fa-var-circle-o-notch: "\f1ce"; -@fa-var-circle-thin: "\f1db"; -@fa-var-clipboard: "\f0ea"; -@fa-var-clock-o: "\f017"; -@fa-var-clone: "\f24d"; -@fa-var-close: "\f00d"; -@fa-var-cloud: "\f0c2"; -@fa-var-cloud-download: "\f0ed"; -@fa-var-cloud-upload: "\f0ee"; -@fa-var-cny: "\f157"; -@fa-var-code: "\f121"; -@fa-var-code-fork: "\f126"; -@fa-var-codepen: "\f1cb"; -@fa-var-coffee: "\f0f4"; -@fa-var-cog: "\f013"; -@fa-var-cogs: "\f085"; -@fa-var-columns: "\f0db"; -@fa-var-comment: "\f075"; -@fa-var-comment-o: "\f0e5"; -@fa-var-commenting: "\f27a"; -@fa-var-commenting-o: "\f27b"; -@fa-var-comments: "\f086"; -@fa-var-comments-o: "\f0e6"; -@fa-var-compass: "\f14e"; -@fa-var-compress: "\f066"; -@fa-var-connectdevelop: "\f20e"; -@fa-var-contao: "\f26d"; -@fa-var-copy: "\f0c5"; -@fa-var-copyright: "\f1f9"; -@fa-var-creative-commons: "\f25e"; -@fa-var-credit-card: "\f09d"; -@fa-var-crop: "\f125"; -@fa-var-crosshairs: "\f05b"; -@fa-var-css3: "\f13c"; -@fa-var-cube: "\f1b2"; -@fa-var-cubes: "\f1b3"; -@fa-var-cut: "\f0c4"; -@fa-var-cutlery: "\f0f5"; -@fa-var-dashboard: "\f0e4"; -@fa-var-dashcube: "\f210"; -@fa-var-database: "\f1c0"; -@fa-var-dedent: "\f03b"; -@fa-var-delicious: "\f1a5"; -@fa-var-desktop: "\f108"; -@fa-var-deviantart: "\f1bd"; -@fa-var-diamond: "\f219"; -@fa-var-digg: "\f1a6"; -@fa-var-dollar: "\f155"; -@fa-var-dot-circle-o: "\f192"; -@fa-var-download: "\f019"; -@fa-var-dribbble: "\f17d"; -@fa-var-dropbox: "\f16b"; -@fa-var-drupal: "\f1a9"; -@fa-var-edit: "\f044"; -@fa-var-eject: "\f052"; -@fa-var-ellipsis-h: "\f141"; -@fa-var-ellipsis-v: "\f142"; -@fa-var-empire: "\f1d1"; -@fa-var-envelope: "\f0e0"; -@fa-var-envelope-o: "\f003"; -@fa-var-envelope-square: "\f199"; -@fa-var-eraser: "\f12d"; -@fa-var-eur: "\f153"; -@fa-var-euro: "\f153"; -@fa-var-exchange: "\f0ec"; -@fa-var-exclamation: "\f12a"; -@fa-var-exclamation-circle: "\f06a"; -@fa-var-exclamation-triangle: "\f071"; -@fa-var-expand: "\f065"; -@fa-var-expeditedssl: "\f23e"; -@fa-var-external-link: "\f08e"; -@fa-var-external-link-square: "\f14c"; -@fa-var-eye: "\f06e"; -@fa-var-eye-slash: "\f070"; -@fa-var-eyedropper: "\f1fb"; -@fa-var-facebook: "\f09a"; -@fa-var-facebook-f: "\f09a"; -@fa-var-facebook-official: "\f230"; -@fa-var-facebook-square: "\f082"; -@fa-var-fast-backward: "\f049"; -@fa-var-fast-forward: "\f050"; -@fa-var-fax: "\f1ac"; -@fa-var-feed: "\f09e"; -@fa-var-female: "\f182"; -@fa-var-fighter-jet: "\f0fb"; -@fa-var-file: "\f15b"; -@fa-var-file-archive-o: "\f1c6"; -@fa-var-file-audio-o: "\f1c7"; -@fa-var-file-code-o: "\f1c9"; -@fa-var-file-excel-o: "\f1c3"; -@fa-var-file-image-o: "\f1c5"; -@fa-var-file-movie-o: "\f1c8"; -@fa-var-file-o: "\f016"; -@fa-var-file-pdf-o: "\f1c1"; -@fa-var-file-photo-o: "\f1c5"; -@fa-var-file-picture-o: "\f1c5"; -@fa-var-file-powerpoint-o: "\f1c4"; -@fa-var-file-sound-o: "\f1c7"; -@fa-var-file-text: "\f15c"; -@fa-var-file-text-o: "\f0f6"; -@fa-var-file-video-o: "\f1c8"; -@fa-var-file-word-o: "\f1c2"; -@fa-var-file-zip-o: "\f1c6"; -@fa-var-files-o: "\f0c5"; -@fa-var-film: "\f008"; -@fa-var-filter: "\f0b0"; -@fa-var-fire: "\f06d"; -@fa-var-fire-extinguisher: "\f134"; -@fa-var-firefox: "\f269"; -@fa-var-flag: "\f024"; -@fa-var-flag-checkered: "\f11e"; -@fa-var-flag-o: "\f11d"; -@fa-var-flash: "\f0e7"; -@fa-var-flask: "\f0c3"; -@fa-var-flickr: "\f16e"; -@fa-var-floppy-o: "\f0c7"; -@fa-var-folder: "\f07b"; -@fa-var-folder-o: "\f114"; -@fa-var-folder-open: "\f07c"; -@fa-var-folder-open-o: "\f115"; -@fa-var-font: "\f031"; -@fa-var-fonticons: "\f280"; -@fa-var-forumbee: "\f211"; -@fa-var-forward: "\f04e"; -@fa-var-foursquare: "\f180"; -@fa-var-frown-o: "\f119"; -@fa-var-futbol-o: "\f1e3"; -@fa-var-gamepad: "\f11b"; -@fa-var-gavel: "\f0e3"; -@fa-var-gbp: "\f154"; -@fa-var-ge: "\f1d1"; -@fa-var-gear: "\f013"; -@fa-var-gears: "\f085"; -@fa-var-genderless: "\f22d"; -@fa-var-get-pocket: "\f265"; -@fa-var-gg: "\f260"; -@fa-var-gg-circle: "\f261"; -@fa-var-gift: "\f06b"; -@fa-var-git: "\f1d3"; -@fa-var-git-square: "\f1d2"; -@fa-var-github: "\f09b"; -@fa-var-github-alt: "\f113"; -@fa-var-github-square: "\f092"; -@fa-var-gittip: "\f184"; -@fa-var-glass: "\f000"; -@fa-var-globe: "\f0ac"; -@fa-var-google: "\f1a0"; -@fa-var-google-plus: "\f0d5"; -@fa-var-google-plus-square: "\f0d4"; -@fa-var-google-wallet: "\f1ee"; -@fa-var-graduation-cap: "\f19d"; -@fa-var-gratipay: "\f184"; -@fa-var-group: "\f0c0"; -@fa-var-h-square: "\f0fd"; -@fa-var-hacker-news: "\f1d4"; -@fa-var-hand-grab-o: "\f255"; -@fa-var-hand-lizard-o: "\f258"; -@fa-var-hand-o-down: "\f0a7"; -@fa-var-hand-o-left: "\f0a5"; -@fa-var-hand-o-right: "\f0a4"; -@fa-var-hand-o-up: "\f0a6"; -@fa-var-hand-paper-o: "\f256"; -@fa-var-hand-peace-o: "\f25b"; -@fa-var-hand-pointer-o: "\f25a"; -@fa-var-hand-rock-o: "\f255"; -@fa-var-hand-scissors-o: "\f257"; -@fa-var-hand-spock-o: "\f259"; -@fa-var-hand-stop-o: "\f256"; -@fa-var-hdd-o: "\f0a0"; -@fa-var-header: "\f1dc"; -@fa-var-headphones: "\f025"; -@fa-var-heart: "\f004"; -@fa-var-heart-o: "\f08a"; -@fa-var-heartbeat: "\f21e"; -@fa-var-history: "\f1da"; -@fa-var-home: "\f015"; -@fa-var-hospital-o: "\f0f8"; -@fa-var-hotel: "\f236"; -@fa-var-hourglass: "\f254"; -@fa-var-hourglass-1: "\f251"; -@fa-var-hourglass-2: "\f252"; -@fa-var-hourglass-3: "\f253"; -@fa-var-hourglass-end: "\f253"; -@fa-var-hourglass-half: "\f252"; -@fa-var-hourglass-o: "\f250"; -@fa-var-hourglass-start: "\f251"; -@fa-var-houzz: "\f27c"; -@fa-var-html5: "\f13b"; -@fa-var-i-cursor: "\f246"; -@fa-var-ils: "\f20b"; -@fa-var-image: "\f03e"; -@fa-var-inbox: "\f01c"; -@fa-var-indent: "\f03c"; -@fa-var-industry: "\f275"; -@fa-var-info: "\f129"; -@fa-var-info-circle: "\f05a"; -@fa-var-inr: "\f156"; -@fa-var-instagram: "\f16d"; -@fa-var-institution: "\f19c"; -@fa-var-internet-explorer: "\f26b"; -@fa-var-intersex: "\f224"; -@fa-var-ioxhost: "\f208"; -@fa-var-italic: "\f033"; -@fa-var-joomla: "\f1aa"; -@fa-var-jpy: "\f157"; -@fa-var-jsfiddle: "\f1cc"; -@fa-var-key: "\f084"; -@fa-var-keyboard-o: "\f11c"; -@fa-var-krw: "\f159"; -@fa-var-language: "\f1ab"; -@fa-var-laptop: "\f109"; -@fa-var-lastfm: "\f202"; -@fa-var-lastfm-square: "\f203"; -@fa-var-leaf: "\f06c"; -@fa-var-leanpub: "\f212"; -@fa-var-legal: "\f0e3"; -@fa-var-lemon-o: "\f094"; -@fa-var-level-down: "\f149"; -@fa-var-level-up: "\f148"; -@fa-var-life-bouy: "\f1cd"; -@fa-var-life-buoy: "\f1cd"; -@fa-var-life-ring: "\f1cd"; -@fa-var-life-saver: "\f1cd"; -@fa-var-lightbulb-o: "\f0eb"; -@fa-var-line-chart: "\f201"; -@fa-var-link: "\f0c1"; -@fa-var-linkedin: "\f0e1"; -@fa-var-linkedin-square: "\f08c"; -@fa-var-linux: "\f17c"; -@fa-var-list: "\f03a"; -@fa-var-list-alt: "\f022"; -@fa-var-list-ol: "\f0cb"; -@fa-var-list-ul: "\f0ca"; -@fa-var-location-arrow: "\f124"; -@fa-var-lock: "\f023"; -@fa-var-long-arrow-down: "\f175"; -@fa-var-long-arrow-left: "\f177"; -@fa-var-long-arrow-right: "\f178"; -@fa-var-long-arrow-up: "\f176"; -@fa-var-magic: "\f0d0"; -@fa-var-magnet: "\f076"; -@fa-var-mail-forward: "\f064"; -@fa-var-mail-reply: "\f112"; -@fa-var-mail-reply-all: "\f122"; -@fa-var-male: "\f183"; -@fa-var-map: "\f279"; -@fa-var-map-marker: "\f041"; -@fa-var-map-o: "\f278"; -@fa-var-map-pin: "\f276"; -@fa-var-map-signs: "\f277"; -@fa-var-mars: "\f222"; -@fa-var-mars-double: "\f227"; -@fa-var-mars-stroke: "\f229"; -@fa-var-mars-stroke-h: "\f22b"; -@fa-var-mars-stroke-v: "\f22a"; -@fa-var-maxcdn: "\f136"; -@fa-var-meanpath: "\f20c"; -@fa-var-medium: "\f23a"; -@fa-var-medkit: "\f0fa"; -@fa-var-meh-o: "\f11a"; -@fa-var-mercury: "\f223"; -@fa-var-microphone: "\f130"; -@fa-var-microphone-slash: "\f131"; -@fa-var-minus: "\f068"; -@fa-var-minus-circle: "\f056"; -@fa-var-minus-square: "\f146"; -@fa-var-minus-square-o: "\f147"; -@fa-var-mobile: "\f10b"; -@fa-var-mobile-phone: "\f10b"; -@fa-var-money: "\f0d6"; -@fa-var-moon-o: "\f186"; -@fa-var-mortar-board: "\f19d"; -@fa-var-motorcycle: "\f21c"; -@fa-var-mouse-pointer: "\f245"; -@fa-var-music: "\f001"; -@fa-var-navicon: "\f0c9"; -@fa-var-neuter: "\f22c"; -@fa-var-newspaper-o: "\f1ea"; -@fa-var-object-group: "\f247"; -@fa-var-object-ungroup: "\f248"; -@fa-var-odnoklassniki: "\f263"; -@fa-var-odnoklassniki-square: "\f264"; -@fa-var-opencart: "\f23d"; -@fa-var-openid: "\f19b"; -@fa-var-opera: "\f26a"; -@fa-var-optin-monster: "\f23c"; -@fa-var-outdent: "\f03b"; -@fa-var-pagelines: "\f18c"; -@fa-var-paint-brush: "\f1fc"; -@fa-var-paper-plane: "\f1d8"; -@fa-var-paper-plane-o: "\f1d9"; -@fa-var-paperclip: "\f0c6"; -@fa-var-paragraph: "\f1dd"; -@fa-var-paste: "\f0ea"; -@fa-var-pause: "\f04c"; -@fa-var-paw: "\f1b0"; -@fa-var-paypal: "\f1ed"; -@fa-var-pencil: "\f040"; -@fa-var-pencil-square: "\f14b"; -@fa-var-pencil-square-o: "\f044"; -@fa-var-phone: "\f095"; -@fa-var-phone-square: "\f098"; -@fa-var-photo: "\f03e"; -@fa-var-picture-o: "\f03e"; -@fa-var-pie-chart: "\f200"; -@fa-var-pied-piper: "\f1a7"; -@fa-var-pied-piper-alt: "\f1a8"; -@fa-var-pinterest: "\f0d2"; -@fa-var-pinterest-p: "\f231"; -@fa-var-pinterest-square: "\f0d3"; -@fa-var-plane: "\f072"; -@fa-var-play: "\f04b"; -@fa-var-play-circle: "\f144"; -@fa-var-play-circle-o: "\f01d"; -@fa-var-plug: "\f1e6"; -@fa-var-plus: "\f067"; -@fa-var-plus-circle: "\f055"; -@fa-var-plus-square: "\f0fe"; -@fa-var-plus-square-o: "\f196"; -@fa-var-power-off: "\f011"; -@fa-var-print: "\f02f"; -@fa-var-puzzle-piece: "\f12e"; -@fa-var-qq: "\f1d6"; -@fa-var-qrcode: "\f029"; -@fa-var-question: "\f128"; -@fa-var-question-circle: "\f059"; -@fa-var-quote-left: "\f10d"; -@fa-var-quote-right: "\f10e"; -@fa-var-ra: "\f1d0"; -@fa-var-random: "\f074"; -@fa-var-rebel: "\f1d0"; -@fa-var-recycle: "\f1b8"; -@fa-var-reddit: "\f1a1"; -@fa-var-reddit-square: "\f1a2"; -@fa-var-refresh: "\f021"; -@fa-var-registered: "\f25d"; -@fa-var-remove: "\f00d"; -@fa-var-renren: "\f18b"; -@fa-var-reorder: "\f0c9"; -@fa-var-repeat: "\f01e"; -@fa-var-reply: "\f112"; -@fa-var-reply-all: "\f122"; -@fa-var-retweet: "\f079"; -@fa-var-rmb: "\f157"; -@fa-var-road: "\f018"; -@fa-var-rocket: "\f135"; -@fa-var-rotate-left: "\f0e2"; -@fa-var-rotate-right: "\f01e"; -@fa-var-rouble: "\f158"; -@fa-var-rss: "\f09e"; -@fa-var-rss-square: "\f143"; -@fa-var-rub: "\f158"; -@fa-var-ruble: "\f158"; -@fa-var-rupee: "\f156"; -@fa-var-safari: "\f267"; -@fa-var-save: "\f0c7"; -@fa-var-scissors: "\f0c4"; -@fa-var-search: "\f002"; -@fa-var-search-minus: "\f010"; -@fa-var-search-plus: "\f00e"; -@fa-var-sellsy: "\f213"; -@fa-var-send: "\f1d8"; -@fa-var-send-o: "\f1d9"; -@fa-var-server: "\f233"; -@fa-var-share: "\f064"; -@fa-var-share-alt: "\f1e0"; -@fa-var-share-alt-square: "\f1e1"; -@fa-var-share-square: "\f14d"; -@fa-var-share-square-o: "\f045"; -@fa-var-shekel: "\f20b"; -@fa-var-sheqel: "\f20b"; -@fa-var-shield: "\f132"; -@fa-var-ship: "\f21a"; -@fa-var-shirtsinbulk: "\f214"; -@fa-var-shopping-cart: "\f07a"; -@fa-var-sign-in: "\f090"; -@fa-var-sign-out: "\f08b"; -@fa-var-signal: "\f012"; -@fa-var-simplybuilt: "\f215"; -@fa-var-sitemap: "\f0e8"; -@fa-var-skyatlas: "\f216"; -@fa-var-skype: "\f17e"; -@fa-var-slack: "\f198"; -@fa-var-sliders: "\f1de"; -@fa-var-slideshare: "\f1e7"; -@fa-var-smile-o: "\f118"; -@fa-var-soccer-ball-o: "\f1e3"; -@fa-var-sort: "\f0dc"; -@fa-var-sort-alpha-asc: "\f15d"; -@fa-var-sort-alpha-desc: "\f15e"; -@fa-var-sort-amount-asc: "\f160"; -@fa-var-sort-amount-desc: "\f161"; -@fa-var-sort-asc: "\f0de"; -@fa-var-sort-desc: "\f0dd"; -@fa-var-sort-down: "\f0dd"; -@fa-var-sort-numeric-asc: "\f162"; -@fa-var-sort-numeric-desc: "\f163"; -@fa-var-sort-up: "\f0de"; -@fa-var-soundcloud: "\f1be"; -@fa-var-space-shuttle: "\f197"; -@fa-var-spinner: "\f110"; -@fa-var-spoon: "\f1b1"; -@fa-var-spotify: "\f1bc"; -@fa-var-square: "\f0c8"; -@fa-var-square-o: "\f096"; -@fa-var-stack-exchange: "\f18d"; -@fa-var-stack-overflow: "\f16c"; -@fa-var-star: "\f005"; -@fa-var-star-half: "\f089"; -@fa-var-star-half-empty: "\f123"; -@fa-var-star-half-full: "\f123"; -@fa-var-star-half-o: "\f123"; -@fa-var-star-o: "\f006"; -@fa-var-steam: "\f1b6"; -@fa-var-steam-square: "\f1b7"; -@fa-var-step-backward: "\f048"; -@fa-var-step-forward: "\f051"; -@fa-var-stethoscope: "\f0f1"; -@fa-var-sticky-note: "\f249"; -@fa-var-sticky-note-o: "\f24a"; -@fa-var-stop: "\f04d"; -@fa-var-street-view: "\f21d"; -@fa-var-strikethrough: "\f0cc"; -@fa-var-stumbleupon: "\f1a4"; -@fa-var-stumbleupon-circle: "\f1a3"; -@fa-var-subscript: "\f12c"; -@fa-var-subway: "\f239"; -@fa-var-suitcase: "\f0f2"; -@fa-var-sun-o: "\f185"; -@fa-var-superscript: "\f12b"; -@fa-var-support: "\f1cd"; -@fa-var-table: "\f0ce"; -@fa-var-tablet: "\f10a"; -@fa-var-tachometer: "\f0e4"; -@fa-var-tag: "\f02b"; -@fa-var-tags: "\f02c"; -@fa-var-tasks: "\f0ae"; -@fa-var-taxi: "\f1ba"; -@fa-var-television: "\f26c"; -@fa-var-tencent-weibo: "\f1d5"; -@fa-var-terminal: "\f120"; -@fa-var-text-height: "\f034"; -@fa-var-text-width: "\f035"; -@fa-var-th: "\f00a"; -@fa-var-th-large: "\f009"; -@fa-var-th-list: "\f00b"; -@fa-var-thumb-tack: "\f08d"; -@fa-var-thumbs-down: "\f165"; -@fa-var-thumbs-o-down: "\f088"; -@fa-var-thumbs-o-up: "\f087"; -@fa-var-thumbs-up: "\f164"; -@fa-var-ticket: "\f145"; -@fa-var-times: "\f00d"; -@fa-var-times-circle: "\f057"; -@fa-var-times-circle-o: "\f05c"; -@fa-var-tint: "\f043"; -@fa-var-toggle-down: "\f150"; -@fa-var-toggle-left: "\f191"; -@fa-var-toggle-off: "\f204"; -@fa-var-toggle-on: "\f205"; -@fa-var-toggle-right: "\f152"; -@fa-var-toggle-up: "\f151"; -@fa-var-trademark: "\f25c"; -@fa-var-train: "\f238"; -@fa-var-transgender: "\f224"; -@fa-var-transgender-alt: "\f225"; -@fa-var-trash: "\f1f8"; -@fa-var-trash-o: "\f014"; -@fa-var-tree: "\f1bb"; -@fa-var-trello: "\f181"; -@fa-var-tripadvisor: "\f262"; -@fa-var-trophy: "\f091"; -@fa-var-truck: "\f0d1"; -@fa-var-try: "\f195"; -@fa-var-tty: "\f1e4"; -@fa-var-tumblr: "\f173"; -@fa-var-tumblr-square: "\f174"; -@fa-var-turkish-lira: "\f195"; -@fa-var-tv: "\f26c"; -@fa-var-twitch: "\f1e8"; -@fa-var-twitter: "\f099"; -@fa-var-twitter-square: "\f081"; -@fa-var-umbrella: "\f0e9"; -@fa-var-underline: "\f0cd"; -@fa-var-undo: "\f0e2"; -@fa-var-university: "\f19c"; -@fa-var-unlink: "\f127"; -@fa-var-unlock: "\f09c"; -@fa-var-unlock-alt: "\f13e"; -@fa-var-unsorted: "\f0dc"; -@fa-var-upload: "\f093"; -@fa-var-usd: "\f155"; -@fa-var-user: "\f007"; -@fa-var-user-md: "\f0f0"; -@fa-var-user-plus: "\f234"; -@fa-var-user-secret: "\f21b"; -@fa-var-user-times: "\f235"; -@fa-var-users: "\f0c0"; -@fa-var-venus: "\f221"; -@fa-var-venus-double: "\f226"; -@fa-var-venus-mars: "\f228"; -@fa-var-viacoin: "\f237"; -@fa-var-video-camera: "\f03d"; -@fa-var-vimeo: "\f27d"; -@fa-var-vimeo-square: "\f194"; -@fa-var-vine: "\f1ca"; -@fa-var-vk: "\f189"; -@fa-var-volume-down: "\f027"; -@fa-var-volume-off: "\f026"; -@fa-var-volume-up: "\f028"; -@fa-var-warning: "\f071"; -@fa-var-wechat: "\f1d7"; -@fa-var-weibo: "\f18a"; -@fa-var-weixin: "\f1d7"; -@fa-var-whatsapp: "\f232"; -@fa-var-wheelchair: "\f193"; -@fa-var-wifi: "\f1eb"; -@fa-var-wikipedia-w: "\f266"; -@fa-var-windows: "\f17a"; -@fa-var-won: "\f159"; -@fa-var-wordpress: "\f19a"; -@fa-var-wrench: "\f0ad"; -@fa-var-xing: "\f168"; -@fa-var-xing-square: "\f169"; -@fa-var-y-combinator: "\f23b"; -@fa-var-y-combinator-square: "\f1d4"; -@fa-var-yahoo: "\f19e"; -@fa-var-yc: "\f23b"; -@fa-var-yc-square: "\f1d4"; -@fa-var-yelp: "\f1e9"; -@fa-var-yen: "\f157"; -@fa-var-youtube: "\f167"; -@fa-var-youtube-play: "\f16a"; -@fa-var-youtube-square: "\f166"; - diff --git a/themes/devopsdays-responsive/static/font-awesome/scss/_animated.scss b/themes/devopsdays-responsive/static/font-awesome/scss/_animated.scss deleted file mode 100644 index 8a020dbfff7..00000000000 --- a/themes/devopsdays-responsive/static/font-awesome/scss/_animated.scss +++ /dev/null @@ -1,34 +0,0 @@ -// Spinning Icons -// -------------------------- - -.#{$fa-css-prefix}-spin { - -webkit-animation: fa-spin 2s infinite linear; - animation: fa-spin 2s infinite linear; -} - -.#{$fa-css-prefix}-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); - } -} diff --git a/themes/devopsdays-responsive/static/font-awesome/scss/_bordered-pulled.scss b/themes/devopsdays-responsive/static/font-awesome/scss/_bordered-pulled.scss deleted file mode 100644 index d4b85a02f24..00000000000 --- a/themes/devopsdays-responsive/static/font-awesome/scss/_bordered-pulled.scss +++ /dev/null @@ -1,25 +0,0 @@ -// Bordered & Pulled -// ------------------------- - -.#{$fa-css-prefix}-border { - padding: .2em .25em .15em; - border: solid .08em $fa-border-color; - border-radius: .1em; -} - -.#{$fa-css-prefix}-pull-left { float: left; } -.#{$fa-css-prefix}-pull-right { float: right; } - -.#{$fa-css-prefix} { - &.#{$fa-css-prefix}-pull-left { margin-right: .3em; } - &.#{$fa-css-prefix}-pull-right { margin-left: .3em; } -} - -/* Deprecated as of 4.4.0 */ -.pull-right { float: right; } -.pull-left { float: left; } - -.#{$fa-css-prefix} { - &.pull-left { margin-right: .3em; } - &.pull-right { margin-left: .3em; } -} diff --git a/themes/devopsdays-responsive/static/font-awesome/scss/_core.scss b/themes/devopsdays-responsive/static/font-awesome/scss/_core.scss deleted file mode 100644 index 7425ef85fc8..00000000000 --- a/themes/devopsdays-responsive/static/font-awesome/scss/_core.scss +++ /dev/null @@ -1,12 +0,0 @@ -// Base Class Definition -// ------------------------- - -.#{$fa-css-prefix} { - display: inline-block; - font: normal normal normal #{$fa-font-size-base}/#{$fa-line-height-base} FontAwesome; // shortening font declaration - font-size: inherit; // can't have font-size inherit on line above, so need to override - text-rendering: auto; // optimizelegibility throws things off #1094 - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; - -} diff --git a/themes/devopsdays-responsive/static/font-awesome/scss/_fixed-width.scss b/themes/devopsdays-responsive/static/font-awesome/scss/_fixed-width.scss deleted file mode 100644 index b221c98133a..00000000000 --- a/themes/devopsdays-responsive/static/font-awesome/scss/_fixed-width.scss +++ /dev/null @@ -1,6 +0,0 @@ -// Fixed Width Icons -// ------------------------- -.#{$fa-css-prefix}-fw { - width: (18em / 14); - text-align: center; -} diff --git a/themes/devopsdays-responsive/static/font-awesome/scss/_icons.scss b/themes/devopsdays-responsive/static/font-awesome/scss/_icons.scss deleted file mode 100644 index 62d97677c94..00000000000 --- a/themes/devopsdays-responsive/static/font-awesome/scss/_icons.scss +++ /dev/null @@ -1,677 +0,0 @@ -/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen - readers do not read off random characters that represent icons */ - -.#{$fa-css-prefix}-glass:before { content: $fa-var-glass; } -.#{$fa-css-prefix}-music:before { content: $fa-var-music; } -.#{$fa-css-prefix}-search:before { content: $fa-var-search; } -.#{$fa-css-prefix}-envelope-o:before { content: $fa-var-envelope-o; } -.#{$fa-css-prefix}-heart:before { content: $fa-var-heart; } -.#{$fa-css-prefix}-star:before { content: $fa-var-star; } -.#{$fa-css-prefix}-star-o:before { content: $fa-var-star-o; } -.#{$fa-css-prefix}-user:before { content: $fa-var-user; } -.#{$fa-css-prefix}-film:before { content: $fa-var-film; } -.#{$fa-css-prefix}-th-large:before { content: $fa-var-th-large; } -.#{$fa-css-prefix}-th:before { content: $fa-var-th; } -.#{$fa-css-prefix}-th-list:before { content: $fa-var-th-list; } -.#{$fa-css-prefix}-check:before { content: $fa-var-check; } -.#{$fa-css-prefix}-remove:before, -.#{$fa-css-prefix}-close:before, -.#{$fa-css-prefix}-times:before { content: $fa-var-times; } -.#{$fa-css-prefix}-search-plus:before { content: $fa-var-search-plus; } -.#{$fa-css-prefix}-search-minus:before { content: $fa-var-search-minus; } -.#{$fa-css-prefix}-power-off:before { content: $fa-var-power-off; } -.#{$fa-css-prefix}-signal:before { content: $fa-var-signal; } -.#{$fa-css-prefix}-gear:before, -.#{$fa-css-prefix}-cog:before { content: $fa-var-cog; } -.#{$fa-css-prefix}-trash-o:before { content: $fa-var-trash-o; } -.#{$fa-css-prefix}-home:before { content: $fa-var-home; } -.#{$fa-css-prefix}-file-o:before { content: $fa-var-file-o; } -.#{$fa-css-prefix}-clock-o:before { content: $fa-var-clock-o; } -.#{$fa-css-prefix}-road:before { content: $fa-var-road; } -.#{$fa-css-prefix}-download:before { content: $fa-var-download; } -.#{$fa-css-prefix}-arrow-circle-o-down:before { content: $fa-var-arrow-circle-o-down; } -.#{$fa-css-prefix}-arrow-circle-o-up:before { content: $fa-var-arrow-circle-o-up; } -.#{$fa-css-prefix}-inbox:before { content: $fa-var-inbox; } -.#{$fa-css-prefix}-play-circle-o:before { content: $fa-var-play-circle-o; } -.#{$fa-css-prefix}-rotate-right:before, -.#{$fa-css-prefix}-repeat:before { content: $fa-var-repeat; } -.#{$fa-css-prefix}-refresh:before { content: $fa-var-refresh; } -.#{$fa-css-prefix}-list-alt:before { content: $fa-var-list-alt; } -.#{$fa-css-prefix}-lock:before { content: $fa-var-lock; } -.#{$fa-css-prefix}-flag:before { content: $fa-var-flag; } -.#{$fa-css-prefix}-headphones:before { content: $fa-var-headphones; } -.#{$fa-css-prefix}-volume-off:before { content: $fa-var-volume-off; } -.#{$fa-css-prefix}-volume-down:before { content: $fa-var-volume-down; } -.#{$fa-css-prefix}-volume-up:before { content: $fa-var-volume-up; } -.#{$fa-css-prefix}-qrcode:before { content: $fa-var-qrcode; } -.#{$fa-css-prefix}-barcode:before { content: $fa-var-barcode; } -.#{$fa-css-prefix}-tag:before { content: $fa-var-tag; } -.#{$fa-css-prefix}-tags:before { content: $fa-var-tags; } -.#{$fa-css-prefix}-book:before { content: $fa-var-book; } -.#{$fa-css-prefix}-bookmark:before { content: $fa-var-bookmark; } -.#{$fa-css-prefix}-print:before { content: $fa-var-print; } -.#{$fa-css-prefix}-camera:before { content: $fa-var-camera; } -.#{$fa-css-prefix}-font:before { content: $fa-var-font; } -.#{$fa-css-prefix}-bold:before { content: $fa-var-bold; } -.#{$fa-css-prefix}-italic:before { content: $fa-var-italic; } -.#{$fa-css-prefix}-text-height:before { content: $fa-var-text-height; } -.#{$fa-css-prefix}-text-width:before { content: $fa-var-text-width; } -.#{$fa-css-prefix}-align-left:before { content: $fa-var-align-left; } -.#{$fa-css-prefix}-align-center:before { content: $fa-var-align-center; } -.#{$fa-css-prefix}-align-right:before { content: $fa-var-align-right; } -.#{$fa-css-prefix}-align-justify:before { content: $fa-var-align-justify; } -.#{$fa-css-prefix}-list:before { content: $fa-var-list; } -.#{$fa-css-prefix}-dedent:before, -.#{$fa-css-prefix}-outdent:before { content: $fa-var-outdent; } -.#{$fa-css-prefix}-indent:before { content: $fa-var-indent; } -.#{$fa-css-prefix}-video-camera:before { content: $fa-var-video-camera; } -.#{$fa-css-prefix}-photo:before, -.#{$fa-css-prefix}-image:before, -.#{$fa-css-prefix}-picture-o:before { content: $fa-var-picture-o; } -.#{$fa-css-prefix}-pencil:before { content: $fa-var-pencil; } -.#{$fa-css-prefix}-map-marker:before { content: $fa-var-map-marker; } -.#{$fa-css-prefix}-adjust:before { content: $fa-var-adjust; } -.#{$fa-css-prefix}-tint:before { content: $fa-var-tint; } -.#{$fa-css-prefix}-edit:before, -.#{$fa-css-prefix}-pencil-square-o:before { content: $fa-var-pencil-square-o; } -.#{$fa-css-prefix}-share-square-o:before { content: $fa-var-share-square-o; } -.#{$fa-css-prefix}-check-square-o:before { content: $fa-var-check-square-o; } -.#{$fa-css-prefix}-arrows:before { content: $fa-var-arrows; } -.#{$fa-css-prefix}-step-backward:before { content: $fa-var-step-backward; } -.#{$fa-css-prefix}-fast-backward:before { content: $fa-var-fast-backward; } -.#{$fa-css-prefix}-backward:before { content: $fa-var-backward; } -.#{$fa-css-prefix}-play:before { content: $fa-var-play; } -.#{$fa-css-prefix}-pause:before { content: $fa-var-pause; } -.#{$fa-css-prefix}-stop:before { content: $fa-var-stop; } -.#{$fa-css-prefix}-forward:before { content: $fa-var-forward; } -.#{$fa-css-prefix}-fast-forward:before { content: $fa-var-fast-forward; } -.#{$fa-css-prefix}-step-forward:before { content: $fa-var-step-forward; } -.#{$fa-css-prefix}-eject:before { content: $fa-var-eject; } -.#{$fa-css-prefix}-chevron-left:before { content: $fa-var-chevron-left; } -.#{$fa-css-prefix}-chevron-right:before { content: $fa-var-chevron-right; } -.#{$fa-css-prefix}-plus-circle:before { content: $fa-var-plus-circle; } -.#{$fa-css-prefix}-minus-circle:before { content: $fa-var-minus-circle; } -.#{$fa-css-prefix}-times-circle:before { content: $fa-var-times-circle; } -.#{$fa-css-prefix}-check-circle:before { content: $fa-var-check-circle; } -.#{$fa-css-prefix}-question-circle:before { content: $fa-var-question-circle; } -.#{$fa-css-prefix}-info-circle:before { content: $fa-var-info-circle; } -.#{$fa-css-prefix}-crosshairs:before { content: $fa-var-crosshairs; } -.#{$fa-css-prefix}-times-circle-o:before { content: $fa-var-times-circle-o; } -.#{$fa-css-prefix}-check-circle-o:before { content: $fa-var-check-circle-o; } -.#{$fa-css-prefix}-ban:before { content: $fa-var-ban; } -.#{$fa-css-prefix}-arrow-left:before { content: $fa-var-arrow-left; } -.#{$fa-css-prefix}-arrow-right:before { content: $fa-var-arrow-right; } -.#{$fa-css-prefix}-arrow-up:before { content: $fa-var-arrow-up; } -.#{$fa-css-prefix}-arrow-down:before { content: $fa-var-arrow-down; } -.#{$fa-css-prefix}-mail-forward:before, -.#{$fa-css-prefix}-share:before { content: $fa-var-share; } -.#{$fa-css-prefix}-expand:before { content: $fa-var-expand; } -.#{$fa-css-prefix}-compress:before { content: $fa-var-compress; } -.#{$fa-css-prefix}-plus:before { content: $fa-var-plus; } -.#{$fa-css-prefix}-minus:before { content: $fa-var-minus; } -.#{$fa-css-prefix}-asterisk:before { content: $fa-var-asterisk; } -.#{$fa-css-prefix}-exclamation-circle:before { content: $fa-var-exclamation-circle; } -.#{$fa-css-prefix}-gift:before { content: $fa-var-gift; } -.#{$fa-css-prefix}-leaf:before { content: $fa-var-leaf; } -.#{$fa-css-prefix}-fire:before { content: $fa-var-fire; } -.#{$fa-css-prefix}-eye:before { content: $fa-var-eye; } -.#{$fa-css-prefix}-eye-slash:before { content: $fa-var-eye-slash; } -.#{$fa-css-prefix}-warning:before, -.#{$fa-css-prefix}-exclamation-triangle:before { content: $fa-var-exclamation-triangle; } -.#{$fa-css-prefix}-plane:before { content: $fa-var-plane; } -.#{$fa-css-prefix}-calendar:before { content: $fa-var-calendar; } -.#{$fa-css-prefix}-random:before { content: $fa-var-random; } -.#{$fa-css-prefix}-comment:before { content: $fa-var-comment; } -.#{$fa-css-prefix}-magnet:before { content: $fa-var-magnet; } -.#{$fa-css-prefix}-chevron-up:before { content: $fa-var-chevron-up; } -.#{$fa-css-prefix}-chevron-down:before { content: $fa-var-chevron-down; } -.#{$fa-css-prefix}-retweet:before { content: $fa-var-retweet; } -.#{$fa-css-prefix}-shopping-cart:before { content: $fa-var-shopping-cart; } -.#{$fa-css-prefix}-folder:before { content: $fa-var-folder; } -.#{$fa-css-prefix}-folder-open:before { content: $fa-var-folder-open; } -.#{$fa-css-prefix}-arrows-v:before { content: $fa-var-arrows-v; } -.#{$fa-css-prefix}-arrows-h:before { content: $fa-var-arrows-h; } -.#{$fa-css-prefix}-bar-chart-o:before, -.#{$fa-css-prefix}-bar-chart:before { content: $fa-var-bar-chart; } -.#{$fa-css-prefix}-twitter-square:before { content: $fa-var-twitter-square; } -.#{$fa-css-prefix}-facebook-square:before { content: $fa-var-facebook-square; } -.#{$fa-css-prefix}-camera-retro:before { content: $fa-var-camera-retro; } -.#{$fa-css-prefix}-key:before { content: $fa-var-key; } -.#{$fa-css-prefix}-gears:before, -.#{$fa-css-prefix}-cogs:before { content: $fa-var-cogs; } -.#{$fa-css-prefix}-comments:before { content: $fa-var-comments; } -.#{$fa-css-prefix}-thumbs-o-up:before { content: $fa-var-thumbs-o-up; } -.#{$fa-css-prefix}-thumbs-o-down:before { content: $fa-var-thumbs-o-down; } -.#{$fa-css-prefix}-star-half:before { content: $fa-var-star-half; } -.#{$fa-css-prefix}-heart-o:before { content: $fa-var-heart-o; } -.#{$fa-css-prefix}-sign-out:before { content: $fa-var-sign-out; } -.#{$fa-css-prefix}-linkedin-square:before { content: $fa-var-linkedin-square; } -.#{$fa-css-prefix}-thumb-tack:before { content: $fa-var-thumb-tack; } -.#{$fa-css-prefix}-external-link:before { content: $fa-var-external-link; } -.#{$fa-css-prefix}-sign-in:before { content: $fa-var-sign-in; } -.#{$fa-css-prefix}-trophy:before { content: $fa-var-trophy; } -.#{$fa-css-prefix}-github-square:before { content: $fa-var-github-square; } -.#{$fa-css-prefix}-upload:before { content: $fa-var-upload; } -.#{$fa-css-prefix}-lemon-o:before { content: $fa-var-lemon-o; } -.#{$fa-css-prefix}-phone:before { content: $fa-var-phone; } -.#{$fa-css-prefix}-square-o:before { content: $fa-var-square-o; } -.#{$fa-css-prefix}-bookmark-o:before { content: $fa-var-bookmark-o; } -.#{$fa-css-prefix}-phone-square:before { content: $fa-var-phone-square; } -.#{$fa-css-prefix}-twitter:before { content: $fa-var-twitter; } -.#{$fa-css-prefix}-facebook-f:before, -.#{$fa-css-prefix}-facebook:before { content: $fa-var-facebook; } -.#{$fa-css-prefix}-github:before { content: $fa-var-github; } -.#{$fa-css-prefix}-unlock:before { content: $fa-var-unlock; } -.#{$fa-css-prefix}-credit-card:before { content: $fa-var-credit-card; } -.#{$fa-css-prefix}-feed:before, -.#{$fa-css-prefix}-rss:before { content: $fa-var-rss; } -.#{$fa-css-prefix}-hdd-o:before { content: $fa-var-hdd-o; } -.#{$fa-css-prefix}-bullhorn:before { content: $fa-var-bullhorn; } -.#{$fa-css-prefix}-bell:before { content: $fa-var-bell; } -.#{$fa-css-prefix}-certificate:before { content: $fa-var-certificate; } -.#{$fa-css-prefix}-hand-o-right:before { content: $fa-var-hand-o-right; } -.#{$fa-css-prefix}-hand-o-left:before { content: $fa-var-hand-o-left; } -.#{$fa-css-prefix}-hand-o-up:before { content: $fa-var-hand-o-up; } -.#{$fa-css-prefix}-hand-o-down:before { content: $fa-var-hand-o-down; } -.#{$fa-css-prefix}-arrow-circle-left:before { content: $fa-var-arrow-circle-left; } -.#{$fa-css-prefix}-arrow-circle-right:before { content: $fa-var-arrow-circle-right; } -.#{$fa-css-prefix}-arrow-circle-up:before { content: $fa-var-arrow-circle-up; } -.#{$fa-css-prefix}-arrow-circle-down:before { content: $fa-var-arrow-circle-down; } -.#{$fa-css-prefix}-globe:before { content: $fa-var-globe; } -.#{$fa-css-prefix}-wrench:before { content: $fa-var-wrench; } -.#{$fa-css-prefix}-tasks:before { content: $fa-var-tasks; } -.#{$fa-css-prefix}-filter:before { content: $fa-var-filter; } -.#{$fa-css-prefix}-briefcase:before { content: $fa-var-briefcase; } -.#{$fa-css-prefix}-arrows-alt:before { content: $fa-var-arrows-alt; } -.#{$fa-css-prefix}-group:before, -.#{$fa-css-prefix}-users:before { content: $fa-var-users; } -.#{$fa-css-prefix}-chain:before, -.#{$fa-css-prefix}-link:before { content: $fa-var-link; } -.#{$fa-css-prefix}-cloud:before { content: $fa-var-cloud; } -.#{$fa-css-prefix}-flask:before { content: $fa-var-flask; } -.#{$fa-css-prefix}-cut:before, -.#{$fa-css-prefix}-scissors:before { content: $fa-var-scissors; } -.#{$fa-css-prefix}-copy:before, -.#{$fa-css-prefix}-files-o:before { content: $fa-var-files-o; } -.#{$fa-css-prefix}-paperclip:before { content: $fa-var-paperclip; } -.#{$fa-css-prefix}-save:before, -.#{$fa-css-prefix}-floppy-o:before { content: $fa-var-floppy-o; } -.#{$fa-css-prefix}-square:before { content: $fa-var-square; } -.#{$fa-css-prefix}-navicon:before, -.#{$fa-css-prefix}-reorder:before, -.#{$fa-css-prefix}-bars:before { content: $fa-var-bars; } -.#{$fa-css-prefix}-list-ul:before { content: $fa-var-list-ul; } -.#{$fa-css-prefix}-list-ol:before { content: $fa-var-list-ol; } -.#{$fa-css-prefix}-strikethrough:before { content: $fa-var-strikethrough; } -.#{$fa-css-prefix}-underline:before { content: $fa-var-underline; } -.#{$fa-css-prefix}-table:before { content: $fa-var-table; } -.#{$fa-css-prefix}-magic:before { content: $fa-var-magic; } -.#{$fa-css-prefix}-truck:before { content: $fa-var-truck; } -.#{$fa-css-prefix}-pinterest:before { content: $fa-var-pinterest; } -.#{$fa-css-prefix}-pinterest-square:before { content: $fa-var-pinterest-square; } -.#{$fa-css-prefix}-google-plus-square:before { content: $fa-var-google-plus-square; } -.#{$fa-css-prefix}-google-plus:before { content: $fa-var-google-plus; } -.#{$fa-css-prefix}-money:before { content: $fa-var-money; } -.#{$fa-css-prefix}-caret-down:before { content: $fa-var-caret-down; } -.#{$fa-css-prefix}-caret-up:before { content: $fa-var-caret-up; } -.#{$fa-css-prefix}-caret-left:before { content: $fa-var-caret-left; } -.#{$fa-css-prefix}-caret-right:before { content: $fa-var-caret-right; } -.#{$fa-css-prefix}-columns:before { content: $fa-var-columns; } -.#{$fa-css-prefix}-unsorted:before, -.#{$fa-css-prefix}-sort:before { content: $fa-var-sort; } -.#{$fa-css-prefix}-sort-down:before, -.#{$fa-css-prefix}-sort-desc:before { content: $fa-var-sort-desc; } -.#{$fa-css-prefix}-sort-up:before, -.#{$fa-css-prefix}-sort-asc:before { content: $fa-var-sort-asc; } -.#{$fa-css-prefix}-envelope:before { content: $fa-var-envelope; } -.#{$fa-css-prefix}-linkedin:before { content: $fa-var-linkedin; } -.#{$fa-css-prefix}-rotate-left:before, -.#{$fa-css-prefix}-undo:before { content: $fa-var-undo; } -.#{$fa-css-prefix}-legal:before, -.#{$fa-css-prefix}-gavel:before { content: $fa-var-gavel; } -.#{$fa-css-prefix}-dashboard:before, -.#{$fa-css-prefix}-tachometer:before { content: $fa-var-tachometer; } -.#{$fa-css-prefix}-comment-o:before { content: $fa-var-comment-o; } -.#{$fa-css-prefix}-comments-o:before { content: $fa-var-comments-o; } -.#{$fa-css-prefix}-flash:before, -.#{$fa-css-prefix}-bolt:before { content: $fa-var-bolt; } -.#{$fa-css-prefix}-sitemap:before { content: $fa-var-sitemap; } -.#{$fa-css-prefix}-umbrella:before { content: $fa-var-umbrella; } -.#{$fa-css-prefix}-paste:before, -.#{$fa-css-prefix}-clipboard:before { content: $fa-var-clipboard; } -.#{$fa-css-prefix}-lightbulb-o:before { content: $fa-var-lightbulb-o; } -.#{$fa-css-prefix}-exchange:before { content: $fa-var-exchange; } -.#{$fa-css-prefix}-cloud-download:before { content: $fa-var-cloud-download; } -.#{$fa-css-prefix}-cloud-upload:before { content: $fa-var-cloud-upload; } -.#{$fa-css-prefix}-user-md:before { content: $fa-var-user-md; } -.#{$fa-css-prefix}-stethoscope:before { content: $fa-var-stethoscope; } -.#{$fa-css-prefix}-suitcase:before { content: $fa-var-suitcase; } -.#{$fa-css-prefix}-bell-o:before { content: $fa-var-bell-o; } -.#{$fa-css-prefix}-coffee:before { content: $fa-var-coffee; } -.#{$fa-css-prefix}-cutlery:before { content: $fa-var-cutlery; } -.#{$fa-css-prefix}-file-text-o:before { content: $fa-var-file-text-o; } -.#{$fa-css-prefix}-building-o:before { content: $fa-var-building-o; } -.#{$fa-css-prefix}-hospital-o:before { content: $fa-var-hospital-o; } -.#{$fa-css-prefix}-ambulance:before { content: $fa-var-ambulance; } -.#{$fa-css-prefix}-medkit:before { content: $fa-var-medkit; } -.#{$fa-css-prefix}-fighter-jet:before { content: $fa-var-fighter-jet; } -.#{$fa-css-prefix}-beer:before { content: $fa-var-beer; } -.#{$fa-css-prefix}-h-square:before { content: $fa-var-h-square; } -.#{$fa-css-prefix}-plus-square:before { content: $fa-var-plus-square; } -.#{$fa-css-prefix}-angle-double-left:before { content: $fa-var-angle-double-left; } -.#{$fa-css-prefix}-angle-double-right:before { content: $fa-var-angle-double-right; } -.#{$fa-css-prefix}-angle-double-up:before { content: $fa-var-angle-double-up; } -.#{$fa-css-prefix}-angle-double-down:before { content: $fa-var-angle-double-down; } -.#{$fa-css-prefix}-angle-left:before { content: $fa-var-angle-left; } -.#{$fa-css-prefix}-angle-right:before { content: $fa-var-angle-right; } -.#{$fa-css-prefix}-angle-up:before { content: $fa-var-angle-up; } -.#{$fa-css-prefix}-angle-down:before { content: $fa-var-angle-down; } -.#{$fa-css-prefix}-desktop:before { content: $fa-var-desktop; } -.#{$fa-css-prefix}-laptop:before { content: $fa-var-laptop; } -.#{$fa-css-prefix}-tablet:before { content: $fa-var-tablet; } -.#{$fa-css-prefix}-mobile-phone:before, -.#{$fa-css-prefix}-mobile:before { content: $fa-var-mobile; } -.#{$fa-css-prefix}-circle-o:before { content: $fa-var-circle-o; } -.#{$fa-css-prefix}-quote-left:before { content: $fa-var-quote-left; } -.#{$fa-css-prefix}-quote-right:before { content: $fa-var-quote-right; } -.#{$fa-css-prefix}-spinner:before { content: $fa-var-spinner; } -.#{$fa-css-prefix}-circle:before { content: $fa-var-circle; } -.#{$fa-css-prefix}-mail-reply:before, -.#{$fa-css-prefix}-reply:before { content: $fa-var-reply; } -.#{$fa-css-prefix}-github-alt:before { content: $fa-var-github-alt; } -.#{$fa-css-prefix}-folder-o:before { content: $fa-var-folder-o; } -.#{$fa-css-prefix}-folder-open-o:before { content: $fa-var-folder-open-o; } -.#{$fa-css-prefix}-smile-o:before { content: $fa-var-smile-o; } -.#{$fa-css-prefix}-frown-o:before { content: $fa-var-frown-o; } -.#{$fa-css-prefix}-meh-o:before { content: $fa-var-meh-o; } -.#{$fa-css-prefix}-gamepad:before { content: $fa-var-gamepad; } -.#{$fa-css-prefix}-keyboard-o:before { content: $fa-var-keyboard-o; } -.#{$fa-css-prefix}-flag-o:before { content: $fa-var-flag-o; } -.#{$fa-css-prefix}-flag-checkered:before { content: $fa-var-flag-checkered; } -.#{$fa-css-prefix}-terminal:before { content: $fa-var-terminal; } -.#{$fa-css-prefix}-code:before { content: $fa-var-code; } -.#{$fa-css-prefix}-mail-reply-all:before, -.#{$fa-css-prefix}-reply-all:before { content: $fa-var-reply-all; } -.#{$fa-css-prefix}-star-half-empty:before, -.#{$fa-css-prefix}-star-half-full:before, -.#{$fa-css-prefix}-star-half-o:before { content: $fa-var-star-half-o; } -.#{$fa-css-prefix}-location-arrow:before { content: $fa-var-location-arrow; } -.#{$fa-css-prefix}-crop:before { content: $fa-var-crop; } -.#{$fa-css-prefix}-code-fork:before { content: $fa-var-code-fork; } -.#{$fa-css-prefix}-unlink:before, -.#{$fa-css-prefix}-chain-broken:before { content: $fa-var-chain-broken; } -.#{$fa-css-prefix}-question:before { content: $fa-var-question; } -.#{$fa-css-prefix}-info:before { content: $fa-var-info; } -.#{$fa-css-prefix}-exclamation:before { content: $fa-var-exclamation; } -.#{$fa-css-prefix}-superscript:before { content: $fa-var-superscript; } -.#{$fa-css-prefix}-subscript:before { content: $fa-var-subscript; } -.#{$fa-css-prefix}-eraser:before { content: $fa-var-eraser; } -.#{$fa-css-prefix}-puzzle-piece:before { content: $fa-var-puzzle-piece; } -.#{$fa-css-prefix}-microphone:before { content: $fa-var-microphone; } -.#{$fa-css-prefix}-microphone-slash:before { content: $fa-var-microphone-slash; } -.#{$fa-css-prefix}-shield:before { content: $fa-var-shield; } -.#{$fa-css-prefix}-calendar-o:before { content: $fa-var-calendar-o; } -.#{$fa-css-prefix}-fire-extinguisher:before { content: $fa-var-fire-extinguisher; } -.#{$fa-css-prefix}-rocket:before { content: $fa-var-rocket; } -.#{$fa-css-prefix}-maxcdn:before { content: $fa-var-maxcdn; } -.#{$fa-css-prefix}-chevron-circle-left:before { content: $fa-var-chevron-circle-left; } -.#{$fa-css-prefix}-chevron-circle-right:before { content: $fa-var-chevron-circle-right; } -.#{$fa-css-prefix}-chevron-circle-up:before { content: $fa-var-chevron-circle-up; } -.#{$fa-css-prefix}-chevron-circle-down:before { content: $fa-var-chevron-circle-down; } -.#{$fa-css-prefix}-html5:before { content: $fa-var-html5; } -.#{$fa-css-prefix}-css3:before { content: $fa-var-css3; } -.#{$fa-css-prefix}-anchor:before { content: $fa-var-anchor; } -.#{$fa-css-prefix}-unlock-alt:before { content: $fa-var-unlock-alt; } -.#{$fa-css-prefix}-bullseye:before { content: $fa-var-bullseye; } -.#{$fa-css-prefix}-ellipsis-h:before { content: $fa-var-ellipsis-h; } -.#{$fa-css-prefix}-ellipsis-v:before { content: $fa-var-ellipsis-v; } -.#{$fa-css-prefix}-rss-square:before { content: $fa-var-rss-square; } -.#{$fa-css-prefix}-play-circle:before { content: $fa-var-play-circle; } -.#{$fa-css-prefix}-ticket:before { content: $fa-var-ticket; } -.#{$fa-css-prefix}-minus-square:before { content: $fa-var-minus-square; } -.#{$fa-css-prefix}-minus-square-o:before { content: $fa-var-minus-square-o; } -.#{$fa-css-prefix}-level-up:before { content: $fa-var-level-up; } -.#{$fa-css-prefix}-level-down:before { content: $fa-var-level-down; } -.#{$fa-css-prefix}-check-square:before { content: $fa-var-check-square; } -.#{$fa-css-prefix}-pencil-square:before { content: $fa-var-pencil-square; } -.#{$fa-css-prefix}-external-link-square:before { content: $fa-var-external-link-square; } -.#{$fa-css-prefix}-share-square:before { content: $fa-var-share-square; } -.#{$fa-css-prefix}-compass:before { content: $fa-var-compass; } -.#{$fa-css-prefix}-toggle-down:before, -.#{$fa-css-prefix}-caret-square-o-down:before { content: $fa-var-caret-square-o-down; } -.#{$fa-css-prefix}-toggle-up:before, -.#{$fa-css-prefix}-caret-square-o-up:before { content: $fa-var-caret-square-o-up; } -.#{$fa-css-prefix}-toggle-right:before, -.#{$fa-css-prefix}-caret-square-o-right:before { content: $fa-var-caret-square-o-right; } -.#{$fa-css-prefix}-euro:before, -.#{$fa-css-prefix}-eur:before { content: $fa-var-eur; } -.#{$fa-css-prefix}-gbp:before { content: $fa-var-gbp; } -.#{$fa-css-prefix}-dollar:before, -.#{$fa-css-prefix}-usd:before { content: $fa-var-usd; } -.#{$fa-css-prefix}-rupee:before, -.#{$fa-css-prefix}-inr:before { content: $fa-var-inr; } -.#{$fa-css-prefix}-cny:before, -.#{$fa-css-prefix}-rmb:before, -.#{$fa-css-prefix}-yen:before, -.#{$fa-css-prefix}-jpy:before { content: $fa-var-jpy; } -.#{$fa-css-prefix}-ruble:before, -.#{$fa-css-prefix}-rouble:before, -.#{$fa-css-prefix}-rub:before { content: $fa-var-rub; } -.#{$fa-css-prefix}-won:before, -.#{$fa-css-prefix}-krw:before { content: $fa-var-krw; } -.#{$fa-css-prefix}-bitcoin:before, -.#{$fa-css-prefix}-btc:before { content: $fa-var-btc; } -.#{$fa-css-prefix}-file:before { content: $fa-var-file; } -.#{$fa-css-prefix}-file-text:before { content: $fa-var-file-text; } -.#{$fa-css-prefix}-sort-alpha-asc:before { content: $fa-var-sort-alpha-asc; } -.#{$fa-css-prefix}-sort-alpha-desc:before { content: $fa-var-sort-alpha-desc; } -.#{$fa-css-prefix}-sort-amount-asc:before { content: $fa-var-sort-amount-asc; } -.#{$fa-css-prefix}-sort-amount-desc:before { content: $fa-var-sort-amount-desc; } -.#{$fa-css-prefix}-sort-numeric-asc:before { content: $fa-var-sort-numeric-asc; } -.#{$fa-css-prefix}-sort-numeric-desc:before { content: $fa-var-sort-numeric-desc; } -.#{$fa-css-prefix}-thumbs-up:before { content: $fa-var-thumbs-up; } -.#{$fa-css-prefix}-thumbs-down:before { content: $fa-var-thumbs-down; } -.#{$fa-css-prefix}-youtube-square:before { content: $fa-var-youtube-square; } -.#{$fa-css-prefix}-youtube:before { content: $fa-var-youtube; } -.#{$fa-css-prefix}-xing:before { content: $fa-var-xing; } -.#{$fa-css-prefix}-xing-square:before { content: $fa-var-xing-square; } -.#{$fa-css-prefix}-youtube-play:before { content: $fa-var-youtube-play; } -.#{$fa-css-prefix}-dropbox:before { content: $fa-var-dropbox; } -.#{$fa-css-prefix}-stack-overflow:before { content: $fa-var-stack-overflow; } -.#{$fa-css-prefix}-instagram:before { content: $fa-var-instagram; } -.#{$fa-css-prefix}-flickr:before { content: $fa-var-flickr; } -.#{$fa-css-prefix}-adn:before { content: $fa-var-adn; } -.#{$fa-css-prefix}-bitbucket:before { content: $fa-var-bitbucket; } -.#{$fa-css-prefix}-bitbucket-square:before { content: $fa-var-bitbucket-square; } -.#{$fa-css-prefix}-tumblr:before { content: $fa-var-tumblr; } -.#{$fa-css-prefix}-tumblr-square:before { content: $fa-var-tumblr-square; } -.#{$fa-css-prefix}-long-arrow-down:before { content: $fa-var-long-arrow-down; } -.#{$fa-css-prefix}-long-arrow-up:before { content: $fa-var-long-arrow-up; } -.#{$fa-css-prefix}-long-arrow-left:before { content: $fa-var-long-arrow-left; } -.#{$fa-css-prefix}-long-arrow-right:before { content: $fa-var-long-arrow-right; } -.#{$fa-css-prefix}-apple:before { content: $fa-var-apple; } -.#{$fa-css-prefix}-windows:before { content: $fa-var-windows; } -.#{$fa-css-prefix}-android:before { content: $fa-var-android; } -.#{$fa-css-prefix}-linux:before { content: $fa-var-linux; } -.#{$fa-css-prefix}-dribbble:before { content: $fa-var-dribbble; } -.#{$fa-css-prefix}-skype:before { content: $fa-var-skype; } -.#{$fa-css-prefix}-foursquare:before { content: $fa-var-foursquare; } -.#{$fa-css-prefix}-trello:before { content: $fa-var-trello; } -.#{$fa-css-prefix}-female:before { content: $fa-var-female; } -.#{$fa-css-prefix}-male:before { content: $fa-var-male; } -.#{$fa-css-prefix}-gittip:before, -.#{$fa-css-prefix}-gratipay:before { content: $fa-var-gratipay; } -.#{$fa-css-prefix}-sun-o:before { content: $fa-var-sun-o; } -.#{$fa-css-prefix}-moon-o:before { content: $fa-var-moon-o; } -.#{$fa-css-prefix}-archive:before { content: $fa-var-archive; } -.#{$fa-css-prefix}-bug:before { content: $fa-var-bug; } -.#{$fa-css-prefix}-vk:before { content: $fa-var-vk; } -.#{$fa-css-prefix}-weibo:before { content: $fa-var-weibo; } -.#{$fa-css-prefix}-renren:before { content: $fa-var-renren; } -.#{$fa-css-prefix}-pagelines:before { content: $fa-var-pagelines; } -.#{$fa-css-prefix}-stack-exchange:before { content: $fa-var-stack-exchange; } -.#{$fa-css-prefix}-arrow-circle-o-right:before { content: $fa-var-arrow-circle-o-right; } -.#{$fa-css-prefix}-arrow-circle-o-left:before { content: $fa-var-arrow-circle-o-left; } -.#{$fa-css-prefix}-toggle-left:before, -.#{$fa-css-prefix}-caret-square-o-left:before { content: $fa-var-caret-square-o-left; } -.#{$fa-css-prefix}-dot-circle-o:before { content: $fa-var-dot-circle-o; } -.#{$fa-css-prefix}-wheelchair:before { content: $fa-var-wheelchair; } -.#{$fa-css-prefix}-vimeo-square:before { content: $fa-var-vimeo-square; } -.#{$fa-css-prefix}-turkish-lira:before, -.#{$fa-css-prefix}-try:before { content: $fa-var-try; } -.#{$fa-css-prefix}-plus-square-o:before { content: $fa-var-plus-square-o; } -.#{$fa-css-prefix}-space-shuttle:before { content: $fa-var-space-shuttle; } -.#{$fa-css-prefix}-slack:before { content: $fa-var-slack; } -.#{$fa-css-prefix}-envelope-square:before { content: $fa-var-envelope-square; } -.#{$fa-css-prefix}-wordpress:before { content: $fa-var-wordpress; } -.#{$fa-css-prefix}-openid:before { content: $fa-var-openid; } -.#{$fa-css-prefix}-institution:before, -.#{$fa-css-prefix}-bank:before, -.#{$fa-css-prefix}-university:before { content: $fa-var-university; } -.#{$fa-css-prefix}-mortar-board:before, -.#{$fa-css-prefix}-graduation-cap:before { content: $fa-var-graduation-cap; } -.#{$fa-css-prefix}-yahoo:before { content: $fa-var-yahoo; } -.#{$fa-css-prefix}-google:before { content: $fa-var-google; } -.#{$fa-css-prefix}-reddit:before { content: $fa-var-reddit; } -.#{$fa-css-prefix}-reddit-square:before { content: $fa-var-reddit-square; } -.#{$fa-css-prefix}-stumbleupon-circle:before { content: $fa-var-stumbleupon-circle; } -.#{$fa-css-prefix}-stumbleupon:before { content: $fa-var-stumbleupon; } -.#{$fa-css-prefix}-delicious:before { content: $fa-var-delicious; } -.#{$fa-css-prefix}-digg:before { content: $fa-var-digg; } -.#{$fa-css-prefix}-pied-piper:before { content: $fa-var-pied-piper; } -.#{$fa-css-prefix}-pied-piper-alt:before { content: $fa-var-pied-piper-alt; } -.#{$fa-css-prefix}-drupal:before { content: $fa-var-drupal; } -.#{$fa-css-prefix}-joomla:before { content: $fa-var-joomla; } -.#{$fa-css-prefix}-language:before { content: $fa-var-language; } -.#{$fa-css-prefix}-fax:before { content: $fa-var-fax; } -.#{$fa-css-prefix}-building:before { content: $fa-var-building; } -.#{$fa-css-prefix}-child:before { content: $fa-var-child; } -.#{$fa-css-prefix}-paw:before { content: $fa-var-paw; } -.#{$fa-css-prefix}-spoon:before { content: $fa-var-spoon; } -.#{$fa-css-prefix}-cube:before { content: $fa-var-cube; } -.#{$fa-css-prefix}-cubes:before { content: $fa-var-cubes; } -.#{$fa-css-prefix}-behance:before { content: $fa-var-behance; } -.#{$fa-css-prefix}-behance-square:before { content: $fa-var-behance-square; } -.#{$fa-css-prefix}-steam:before { content: $fa-var-steam; } -.#{$fa-css-prefix}-steam-square:before { content: $fa-var-steam-square; } -.#{$fa-css-prefix}-recycle:before { content: $fa-var-recycle; } -.#{$fa-css-prefix}-automobile:before, -.#{$fa-css-prefix}-car:before { content: $fa-var-car; } -.#{$fa-css-prefix}-cab:before, -.#{$fa-css-prefix}-taxi:before { content: $fa-var-taxi; } -.#{$fa-css-prefix}-tree:before { content: $fa-var-tree; } -.#{$fa-css-prefix}-spotify:before { content: $fa-var-spotify; } -.#{$fa-css-prefix}-deviantart:before { content: $fa-var-deviantart; } -.#{$fa-css-prefix}-soundcloud:before { content: $fa-var-soundcloud; } -.#{$fa-css-prefix}-database:before { content: $fa-var-database; } -.#{$fa-css-prefix}-file-pdf-o:before { content: $fa-var-file-pdf-o; } -.#{$fa-css-prefix}-file-word-o:before { content: $fa-var-file-word-o; } -.#{$fa-css-prefix}-file-excel-o:before { content: $fa-var-file-excel-o; } -.#{$fa-css-prefix}-file-powerpoint-o:before { content: $fa-var-file-powerpoint-o; } -.#{$fa-css-prefix}-file-photo-o:before, -.#{$fa-css-prefix}-file-picture-o:before, -.#{$fa-css-prefix}-file-image-o:before { content: $fa-var-file-image-o; } -.#{$fa-css-prefix}-file-zip-o:before, -.#{$fa-css-prefix}-file-archive-o:before { content: $fa-var-file-archive-o; } -.#{$fa-css-prefix}-file-sound-o:before, -.#{$fa-css-prefix}-file-audio-o:before { content: $fa-var-file-audio-o; } -.#{$fa-css-prefix}-file-movie-o:before, -.#{$fa-css-prefix}-file-video-o:before { content: $fa-var-file-video-o; } -.#{$fa-css-prefix}-file-code-o:before { content: $fa-var-file-code-o; } -.#{$fa-css-prefix}-vine:before { content: $fa-var-vine; } -.#{$fa-css-prefix}-codepen:before { content: $fa-var-codepen; } -.#{$fa-css-prefix}-jsfiddle:before { content: $fa-var-jsfiddle; } -.#{$fa-css-prefix}-life-bouy:before, -.#{$fa-css-prefix}-life-buoy:before, -.#{$fa-css-prefix}-life-saver:before, -.#{$fa-css-prefix}-support:before, -.#{$fa-css-prefix}-life-ring:before { content: $fa-var-life-ring; } -.#{$fa-css-prefix}-circle-o-notch:before { content: $fa-var-circle-o-notch; } -.#{$fa-css-prefix}-ra:before, -.#{$fa-css-prefix}-rebel:before { content: $fa-var-rebel; } -.#{$fa-css-prefix}-ge:before, -.#{$fa-css-prefix}-empire:before { content: $fa-var-empire; } -.#{$fa-css-prefix}-git-square:before { content: $fa-var-git-square; } -.#{$fa-css-prefix}-git:before { content: $fa-var-git; } -.#{$fa-css-prefix}-y-combinator-square:before, -.#{$fa-css-prefix}-yc-square:before, -.#{$fa-css-prefix}-hacker-news:before { content: $fa-var-hacker-news; } -.#{$fa-css-prefix}-tencent-weibo:before { content: $fa-var-tencent-weibo; } -.#{$fa-css-prefix}-qq:before { content: $fa-var-qq; } -.#{$fa-css-prefix}-wechat:before, -.#{$fa-css-prefix}-weixin:before { content: $fa-var-weixin; } -.#{$fa-css-prefix}-send:before, -.#{$fa-css-prefix}-paper-plane:before { content: $fa-var-paper-plane; } -.#{$fa-css-prefix}-send-o:before, -.#{$fa-css-prefix}-paper-plane-o:before { content: $fa-var-paper-plane-o; } -.#{$fa-css-prefix}-history:before { content: $fa-var-history; } -.#{$fa-css-prefix}-circle-thin:before { content: $fa-var-circle-thin; } -.#{$fa-css-prefix}-header:before { content: $fa-var-header; } -.#{$fa-css-prefix}-paragraph:before { content: $fa-var-paragraph; } -.#{$fa-css-prefix}-sliders:before { content: $fa-var-sliders; } -.#{$fa-css-prefix}-share-alt:before { content: $fa-var-share-alt; } -.#{$fa-css-prefix}-share-alt-square:before { content: $fa-var-share-alt-square; } -.#{$fa-css-prefix}-bomb:before { content: $fa-var-bomb; } -.#{$fa-css-prefix}-soccer-ball-o:before, -.#{$fa-css-prefix}-futbol-o:before { content: $fa-var-futbol-o; } -.#{$fa-css-prefix}-tty:before { content: $fa-var-tty; } -.#{$fa-css-prefix}-binoculars:before { content: $fa-var-binoculars; } -.#{$fa-css-prefix}-plug:before { content: $fa-var-plug; } -.#{$fa-css-prefix}-slideshare:before { content: $fa-var-slideshare; } -.#{$fa-css-prefix}-twitch:before { content: $fa-var-twitch; } -.#{$fa-css-prefix}-yelp:before { content: $fa-var-yelp; } -.#{$fa-css-prefix}-newspaper-o:before { content: $fa-var-newspaper-o; } -.#{$fa-css-prefix}-wifi:before { content: $fa-var-wifi; } -.#{$fa-css-prefix}-calculator:before { content: $fa-var-calculator; } -.#{$fa-css-prefix}-paypal:before { content: $fa-var-paypal; } -.#{$fa-css-prefix}-google-wallet:before { content: $fa-var-google-wallet; } -.#{$fa-css-prefix}-cc-visa:before { content: $fa-var-cc-visa; } -.#{$fa-css-prefix}-cc-mastercard:before { content: $fa-var-cc-mastercard; } -.#{$fa-css-prefix}-cc-discover:before { content: $fa-var-cc-discover; } -.#{$fa-css-prefix}-cc-amex:before { content: $fa-var-cc-amex; } -.#{$fa-css-prefix}-cc-paypal:before { content: $fa-var-cc-paypal; } -.#{$fa-css-prefix}-cc-stripe:before { content: $fa-var-cc-stripe; } -.#{$fa-css-prefix}-bell-slash:before { content: $fa-var-bell-slash; } -.#{$fa-css-prefix}-bell-slash-o:before { content: $fa-var-bell-slash-o; } -.#{$fa-css-prefix}-trash:before { content: $fa-var-trash; } -.#{$fa-css-prefix}-copyright:before { content: $fa-var-copyright; } -.#{$fa-css-prefix}-at:before { content: $fa-var-at; } -.#{$fa-css-prefix}-eyedropper:before { content: $fa-var-eyedropper; } -.#{$fa-css-prefix}-paint-brush:before { content: $fa-var-paint-brush; } -.#{$fa-css-prefix}-birthday-cake:before { content: $fa-var-birthday-cake; } -.#{$fa-css-prefix}-area-chart:before { content: $fa-var-area-chart; } -.#{$fa-css-prefix}-pie-chart:before { content: $fa-var-pie-chart; } -.#{$fa-css-prefix}-line-chart:before { content: $fa-var-line-chart; } -.#{$fa-css-prefix}-lastfm:before { content: $fa-var-lastfm; } -.#{$fa-css-prefix}-lastfm-square:before { content: $fa-var-lastfm-square; } -.#{$fa-css-prefix}-toggle-off:before { content: $fa-var-toggle-off; } -.#{$fa-css-prefix}-toggle-on:before { content: $fa-var-toggle-on; } -.#{$fa-css-prefix}-bicycle:before { content: $fa-var-bicycle; } -.#{$fa-css-prefix}-bus:before { content: $fa-var-bus; } -.#{$fa-css-prefix}-ioxhost:before { content: $fa-var-ioxhost; } -.#{$fa-css-prefix}-angellist:before { content: $fa-var-angellist; } -.#{$fa-css-prefix}-cc:before { content: $fa-var-cc; } -.#{$fa-css-prefix}-shekel:before, -.#{$fa-css-prefix}-sheqel:before, -.#{$fa-css-prefix}-ils:before { content: $fa-var-ils; } -.#{$fa-css-prefix}-meanpath:before { content: $fa-var-meanpath; } -.#{$fa-css-prefix}-buysellads:before { content: $fa-var-buysellads; } -.#{$fa-css-prefix}-connectdevelop:before { content: $fa-var-connectdevelop; } -.#{$fa-css-prefix}-dashcube:before { content: $fa-var-dashcube; } -.#{$fa-css-prefix}-forumbee:before { content: $fa-var-forumbee; } -.#{$fa-css-prefix}-leanpub:before { content: $fa-var-leanpub; } -.#{$fa-css-prefix}-sellsy:before { content: $fa-var-sellsy; } -.#{$fa-css-prefix}-shirtsinbulk:before { content: $fa-var-shirtsinbulk; } -.#{$fa-css-prefix}-simplybuilt:before { content: $fa-var-simplybuilt; } -.#{$fa-css-prefix}-skyatlas:before { content: $fa-var-skyatlas; } -.#{$fa-css-prefix}-cart-plus:before { content: $fa-var-cart-plus; } -.#{$fa-css-prefix}-cart-arrow-down:before { content: $fa-var-cart-arrow-down; } -.#{$fa-css-prefix}-diamond:before { content: $fa-var-diamond; } -.#{$fa-css-prefix}-ship:before { content: $fa-var-ship; } -.#{$fa-css-prefix}-user-secret:before { content: $fa-var-user-secret; } -.#{$fa-css-prefix}-motorcycle:before { content: $fa-var-motorcycle; } -.#{$fa-css-prefix}-street-view:before { content: $fa-var-street-view; } -.#{$fa-css-prefix}-heartbeat:before { content: $fa-var-heartbeat; } -.#{$fa-css-prefix}-venus:before { content: $fa-var-venus; } -.#{$fa-css-prefix}-mars:before { content: $fa-var-mars; } -.#{$fa-css-prefix}-mercury:before { content: $fa-var-mercury; } -.#{$fa-css-prefix}-intersex:before, -.#{$fa-css-prefix}-transgender:before { content: $fa-var-transgender; } -.#{$fa-css-prefix}-transgender-alt:before { content: $fa-var-transgender-alt; } -.#{$fa-css-prefix}-venus-double:before { content: $fa-var-venus-double; } -.#{$fa-css-prefix}-mars-double:before { content: $fa-var-mars-double; } -.#{$fa-css-prefix}-venus-mars:before { content: $fa-var-venus-mars; } -.#{$fa-css-prefix}-mars-stroke:before { content: $fa-var-mars-stroke; } -.#{$fa-css-prefix}-mars-stroke-v:before { content: $fa-var-mars-stroke-v; } -.#{$fa-css-prefix}-mars-stroke-h:before { content: $fa-var-mars-stroke-h; } -.#{$fa-css-prefix}-neuter:before { content: $fa-var-neuter; } -.#{$fa-css-prefix}-genderless:before { content: $fa-var-genderless; } -.#{$fa-css-prefix}-facebook-official:before { content: $fa-var-facebook-official; } -.#{$fa-css-prefix}-pinterest-p:before { content: $fa-var-pinterest-p; } -.#{$fa-css-prefix}-whatsapp:before { content: $fa-var-whatsapp; } -.#{$fa-css-prefix}-server:before { content: $fa-var-server; } -.#{$fa-css-prefix}-user-plus:before { content: $fa-var-user-plus; } -.#{$fa-css-prefix}-user-times:before { content: $fa-var-user-times; } -.#{$fa-css-prefix}-hotel:before, -.#{$fa-css-prefix}-bed:before { content: $fa-var-bed; } -.#{$fa-css-prefix}-viacoin:before { content: $fa-var-viacoin; } -.#{$fa-css-prefix}-train:before { content: $fa-var-train; } -.#{$fa-css-prefix}-subway:before { content: $fa-var-subway; } -.#{$fa-css-prefix}-medium:before { content: $fa-var-medium; } -.#{$fa-css-prefix}-yc:before, -.#{$fa-css-prefix}-y-combinator:before { content: $fa-var-y-combinator; } -.#{$fa-css-prefix}-optin-monster:before { content: $fa-var-optin-monster; } -.#{$fa-css-prefix}-opencart:before { content: $fa-var-opencart; } -.#{$fa-css-prefix}-expeditedssl:before { content: $fa-var-expeditedssl; } -.#{$fa-css-prefix}-battery-4:before, -.#{$fa-css-prefix}-battery-full:before { content: $fa-var-battery-full; } -.#{$fa-css-prefix}-battery-3:before, -.#{$fa-css-prefix}-battery-three-quarters:before { content: $fa-var-battery-three-quarters; } -.#{$fa-css-prefix}-battery-2:before, -.#{$fa-css-prefix}-battery-half:before { content: $fa-var-battery-half; } -.#{$fa-css-prefix}-battery-1:before, -.#{$fa-css-prefix}-battery-quarter:before { content: $fa-var-battery-quarter; } -.#{$fa-css-prefix}-battery-0:before, -.#{$fa-css-prefix}-battery-empty:before { content: $fa-var-battery-empty; } -.#{$fa-css-prefix}-mouse-pointer:before { content: $fa-var-mouse-pointer; } -.#{$fa-css-prefix}-i-cursor:before { content: $fa-var-i-cursor; } -.#{$fa-css-prefix}-object-group:before { content: $fa-var-object-group; } -.#{$fa-css-prefix}-object-ungroup:before { content: $fa-var-object-ungroup; } -.#{$fa-css-prefix}-sticky-note:before { content: $fa-var-sticky-note; } -.#{$fa-css-prefix}-sticky-note-o:before { content: $fa-var-sticky-note-o; } -.#{$fa-css-prefix}-cc-jcb:before { content: $fa-var-cc-jcb; } -.#{$fa-css-prefix}-cc-diners-club:before { content: $fa-var-cc-diners-club; } -.#{$fa-css-prefix}-clone:before { content: $fa-var-clone; } -.#{$fa-css-prefix}-balance-scale:before { content: $fa-var-balance-scale; } -.#{$fa-css-prefix}-hourglass-o:before { content: $fa-var-hourglass-o; } -.#{$fa-css-prefix}-hourglass-1:before, -.#{$fa-css-prefix}-hourglass-start:before { content: $fa-var-hourglass-start; } -.#{$fa-css-prefix}-hourglass-2:before, -.#{$fa-css-prefix}-hourglass-half:before { content: $fa-var-hourglass-half; } -.#{$fa-css-prefix}-hourglass-3:before, -.#{$fa-css-prefix}-hourglass-end:before { content: $fa-var-hourglass-end; } -.#{$fa-css-prefix}-hourglass:before { content: $fa-var-hourglass; } -.#{$fa-css-prefix}-hand-grab-o:before, -.#{$fa-css-prefix}-hand-rock-o:before { content: $fa-var-hand-rock-o; } -.#{$fa-css-prefix}-hand-stop-o:before, -.#{$fa-css-prefix}-hand-paper-o:before { content: $fa-var-hand-paper-o; } -.#{$fa-css-prefix}-hand-scissors-o:before { content: $fa-var-hand-scissors-o; } -.#{$fa-css-prefix}-hand-lizard-o:before { content: $fa-var-hand-lizard-o; } -.#{$fa-css-prefix}-hand-spock-o:before { content: $fa-var-hand-spock-o; } -.#{$fa-css-prefix}-hand-pointer-o:before { content: $fa-var-hand-pointer-o; } -.#{$fa-css-prefix}-hand-peace-o:before { content: $fa-var-hand-peace-o; } -.#{$fa-css-prefix}-trademark:before { content: $fa-var-trademark; } -.#{$fa-css-prefix}-registered:before { content: $fa-var-registered; } -.#{$fa-css-prefix}-creative-commons:before { content: $fa-var-creative-commons; } -.#{$fa-css-prefix}-gg:before { content: $fa-var-gg; } -.#{$fa-css-prefix}-gg-circle:before { content: $fa-var-gg-circle; } -.#{$fa-css-prefix}-tripadvisor:before { content: $fa-var-tripadvisor; } -.#{$fa-css-prefix}-odnoklassniki:before { content: $fa-var-odnoklassniki; } -.#{$fa-css-prefix}-odnoklassniki-square:before { content: $fa-var-odnoklassniki-square; } -.#{$fa-css-prefix}-get-pocket:before { content: $fa-var-get-pocket; } -.#{$fa-css-prefix}-wikipedia-w:before { content: $fa-var-wikipedia-w; } -.#{$fa-css-prefix}-safari:before { content: $fa-var-safari; } -.#{$fa-css-prefix}-chrome:before { content: $fa-var-chrome; } -.#{$fa-css-prefix}-firefox:before { content: $fa-var-firefox; } -.#{$fa-css-prefix}-opera:before { content: $fa-var-opera; } -.#{$fa-css-prefix}-internet-explorer:before { content: $fa-var-internet-explorer; } -.#{$fa-css-prefix}-tv:before, -.#{$fa-css-prefix}-television:before { content: $fa-var-television; } -.#{$fa-css-prefix}-contao:before { content: $fa-var-contao; } -.#{$fa-css-prefix}-500px:before { content: $fa-var-500px; } -.#{$fa-css-prefix}-amazon:before { content: $fa-var-amazon; } -.#{$fa-css-prefix}-calendar-plus-o:before { content: $fa-var-calendar-plus-o; } -.#{$fa-css-prefix}-calendar-minus-o:before { content: $fa-var-calendar-minus-o; } -.#{$fa-css-prefix}-calendar-times-o:before { content: $fa-var-calendar-times-o; } -.#{$fa-css-prefix}-calendar-check-o:before { content: $fa-var-calendar-check-o; } -.#{$fa-css-prefix}-industry:before { content: $fa-var-industry; } -.#{$fa-css-prefix}-map-pin:before { content: $fa-var-map-pin; } -.#{$fa-css-prefix}-map-signs:before { content: $fa-var-map-signs; } -.#{$fa-css-prefix}-map-o:before { content: $fa-var-map-o; } -.#{$fa-css-prefix}-map:before { content: $fa-var-map; } -.#{$fa-css-prefix}-commenting:before { content: $fa-var-commenting; } -.#{$fa-css-prefix}-commenting-o:before { content: $fa-var-commenting-o; } -.#{$fa-css-prefix}-houzz:before { content: $fa-var-houzz; } -.#{$fa-css-prefix}-vimeo:before { content: $fa-var-vimeo; } -.#{$fa-css-prefix}-black-tie:before { content: $fa-var-black-tie; } -.#{$fa-css-prefix}-fonticons:before { content: $fa-var-fonticons; } diff --git a/themes/devopsdays-responsive/static/font-awesome/scss/_larger.scss b/themes/devopsdays-responsive/static/font-awesome/scss/_larger.scss deleted file mode 100644 index 41e9a8184aa..00000000000 --- a/themes/devopsdays-responsive/static/font-awesome/scss/_larger.scss +++ /dev/null @@ -1,13 +0,0 @@ -// Icon Sizes -// ------------------------- - -/* makes the font 33% larger relative to the icon container */ -.#{$fa-css-prefix}-lg { - font-size: (4em / 3); - line-height: (3em / 4); - vertical-align: -15%; -} -.#{$fa-css-prefix}-2x { font-size: 2em; } -.#{$fa-css-prefix}-3x { font-size: 3em; } -.#{$fa-css-prefix}-4x { font-size: 4em; } -.#{$fa-css-prefix}-5x { font-size: 5em; } diff --git a/themes/devopsdays-responsive/static/font-awesome/scss/_list.scss b/themes/devopsdays-responsive/static/font-awesome/scss/_list.scss deleted file mode 100644 index 7d1e4d54d6c..00000000000 --- a/themes/devopsdays-responsive/static/font-awesome/scss/_list.scss +++ /dev/null @@ -1,19 +0,0 @@ -// List Icons -// ------------------------- - -.#{$fa-css-prefix}-ul { - padding-left: 0; - margin-left: $fa-li-width; - list-style-type: none; - > li { position: relative; } -} -.#{$fa-css-prefix}-li { - position: absolute; - left: -$fa-li-width; - width: $fa-li-width; - top: (2em / 14); - text-align: center; - &.#{$fa-css-prefix}-lg { - left: -$fa-li-width + (4em / 14); - } -} diff --git a/themes/devopsdays-responsive/static/font-awesome/scss/_mixins.scss b/themes/devopsdays-responsive/static/font-awesome/scss/_mixins.scss deleted file mode 100644 index f96719b6a03..00000000000 --- a/themes/devopsdays-responsive/static/font-awesome/scss/_mixins.scss +++ /dev/null @@ -1,26 +0,0 @@ -// Mixins -// -------------------------- - -@mixin fa-icon() { - display: inline-block; - font: normal normal normal #{$fa-font-size-base}/#{$fa-line-height-base} FontAwesome; // shortening font declaration - font-size: inherit; // can't have font-size inherit on line above, so need to override - text-rendering: auto; // optimizelegibility throws things off #1094 - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; - -} - -@mixin fa-icon-rotate($degrees, $rotation) { - filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation}); - -webkit-transform: rotate($degrees); - -ms-transform: rotate($degrees); - transform: rotate($degrees); -} - -@mixin fa-icon-flip($horiz, $vert, $rotation) { - filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation}); - -webkit-transform: scale($horiz, $vert); - -ms-transform: scale($horiz, $vert); - transform: scale($horiz, $vert); -} diff --git a/themes/devopsdays-responsive/static/font-awesome/scss/_path.scss b/themes/devopsdays-responsive/static/font-awesome/scss/_path.scss deleted file mode 100644 index bb457c23a8e..00000000000 --- a/themes/devopsdays-responsive/static/font-awesome/scss/_path.scss +++ /dev/null @@ -1,15 +0,0 @@ -/* FONT PATH - * -------------------------- */ - -@font-face { - font-family: 'FontAwesome'; - src: url('#{$fa-font-path}/fontawesome-webfont.eot?v=#{$fa-version}'); - src: url('#{$fa-font-path}/fontawesome-webfont.eot?#iefix&v=#{$fa-version}') format('embedded-opentype'), - url('#{$fa-font-path}/fontawesome-webfont.woff2?v=#{$fa-version}') format('woff2'), - url('#{$fa-font-path}/fontawesome-webfont.woff?v=#{$fa-version}') format('woff'), - url('#{$fa-font-path}/fontawesome-webfont.ttf?v=#{$fa-version}') format('truetype'), - url('#{$fa-font-path}/fontawesome-webfont.svg?v=#{$fa-version}#fontawesomeregular') format('svg'); -// src: url('#{$fa-font-path}/FontAwesome.otf') format('opentype'); // used when developing fonts - font-weight: normal; - font-style: normal; -} diff --git a/themes/devopsdays-responsive/static/font-awesome/scss/_rotated-flipped.scss b/themes/devopsdays-responsive/static/font-awesome/scss/_rotated-flipped.scss deleted file mode 100644 index a3558fd09ca..00000000000 --- a/themes/devopsdays-responsive/static/font-awesome/scss/_rotated-flipped.scss +++ /dev/null @@ -1,20 +0,0 @@ -// Rotated & Flipped Icons -// ------------------------- - -.#{$fa-css-prefix}-rotate-90 { @include fa-icon-rotate(90deg, 1); } -.#{$fa-css-prefix}-rotate-180 { @include fa-icon-rotate(180deg, 2); } -.#{$fa-css-prefix}-rotate-270 { @include fa-icon-rotate(270deg, 3); } - -.#{$fa-css-prefix}-flip-horizontal { @include fa-icon-flip(-1, 1, 0); } -.#{$fa-css-prefix}-flip-vertical { @include fa-icon-flip(1, -1, 2); } - -// Hook for IE8-9 -// ------------------------- - -:root .#{$fa-css-prefix}-rotate-90, -:root .#{$fa-css-prefix}-rotate-180, -:root .#{$fa-css-prefix}-rotate-270, -:root .#{$fa-css-prefix}-flip-horizontal, -:root .#{$fa-css-prefix}-flip-vertical { - filter: none; -} diff --git a/themes/devopsdays-responsive/static/font-awesome/scss/_stacked.scss b/themes/devopsdays-responsive/static/font-awesome/scss/_stacked.scss deleted file mode 100644 index aef7403660c..00000000000 --- a/themes/devopsdays-responsive/static/font-awesome/scss/_stacked.scss +++ /dev/null @@ -1,20 +0,0 @@ -// Stacked Icons -// ------------------------- - -.#{$fa-css-prefix}-stack { - position: relative; - display: inline-block; - width: 2em; - height: 2em; - line-height: 2em; - vertical-align: middle; -} -.#{$fa-css-prefix}-stack-1x, .#{$fa-css-prefix}-stack-2x { - position: absolute; - left: 0; - width: 100%; - text-align: center; -} -.#{$fa-css-prefix}-stack-1x { line-height: inherit; } -.#{$fa-css-prefix}-stack-2x { font-size: 2em; } -.#{$fa-css-prefix}-inverse { color: $fa-inverse; } diff --git a/themes/devopsdays-responsive/static/font-awesome/scss/_variables.scss b/themes/devopsdays-responsive/static/font-awesome/scss/_variables.scss deleted file mode 100644 index c10cd47f734..00000000000 --- a/themes/devopsdays-responsive/static/font-awesome/scss/_variables.scss +++ /dev/null @@ -1,688 +0,0 @@ -// Variables -// -------------------------- - -$fa-font-path: "../fonts" !default; -$fa-font-size-base: 14px !default; -$fa-line-height-base: 1 !default; -//$fa-font-path: "//netdna.bootstrapcdn.com/font-awesome/4.4.0/fonts" !default; // for referencing Bootstrap CDN font files directly -$fa-css-prefix: fa !default; -$fa-version: "4.4.0" !default; -$fa-border-color: #eee !default; -$fa-inverse: #fff !default; -$fa-li-width: (30em / 14) !default; - -$fa-var-500px: "\f26e"; -$fa-var-adjust: "\f042"; -$fa-var-adn: "\f170"; -$fa-var-align-center: "\f037"; -$fa-var-align-justify: "\f039"; -$fa-var-align-left: "\f036"; -$fa-var-align-right: "\f038"; -$fa-var-amazon: "\f270"; -$fa-var-ambulance: "\f0f9"; -$fa-var-anchor: "\f13d"; -$fa-var-android: "\f17b"; -$fa-var-angellist: "\f209"; -$fa-var-angle-double-down: "\f103"; -$fa-var-angle-double-left: "\f100"; -$fa-var-angle-double-right: "\f101"; -$fa-var-angle-double-up: "\f102"; -$fa-var-angle-down: "\f107"; -$fa-var-angle-left: "\f104"; -$fa-var-angle-right: "\f105"; -$fa-var-angle-up: "\f106"; -$fa-var-apple: "\f179"; -$fa-var-archive: "\f187"; -$fa-var-area-chart: "\f1fe"; -$fa-var-arrow-circle-down: "\f0ab"; -$fa-var-arrow-circle-left: "\f0a8"; -$fa-var-arrow-circle-o-down: "\f01a"; -$fa-var-arrow-circle-o-left: "\f190"; -$fa-var-arrow-circle-o-right: "\f18e"; -$fa-var-arrow-circle-o-up: "\f01b"; -$fa-var-arrow-circle-right: "\f0a9"; -$fa-var-arrow-circle-up: "\f0aa"; -$fa-var-arrow-down: "\f063"; -$fa-var-arrow-left: "\f060"; -$fa-var-arrow-right: "\f061"; -$fa-var-arrow-up: "\f062"; -$fa-var-arrows: "\f047"; -$fa-var-arrows-alt: "\f0b2"; -$fa-var-arrows-h: "\f07e"; -$fa-var-arrows-v: "\f07d"; -$fa-var-asterisk: "\f069"; -$fa-var-at: "\f1fa"; -$fa-var-automobile: "\f1b9"; -$fa-var-backward: "\f04a"; -$fa-var-balance-scale: "\f24e"; -$fa-var-ban: "\f05e"; -$fa-var-bank: "\f19c"; -$fa-var-bar-chart: "\f080"; -$fa-var-bar-chart-o: "\f080"; -$fa-var-barcode: "\f02a"; -$fa-var-bars: "\f0c9"; -$fa-var-battery-0: "\f244"; -$fa-var-battery-1: "\f243"; -$fa-var-battery-2: "\f242"; -$fa-var-battery-3: "\f241"; -$fa-var-battery-4: "\f240"; -$fa-var-battery-empty: "\f244"; -$fa-var-battery-full: "\f240"; -$fa-var-battery-half: "\f242"; -$fa-var-battery-quarter: "\f243"; -$fa-var-battery-three-quarters: "\f241"; -$fa-var-bed: "\f236"; -$fa-var-beer: "\f0fc"; -$fa-var-behance: "\f1b4"; -$fa-var-behance-square: "\f1b5"; -$fa-var-bell: "\f0f3"; -$fa-var-bell-o: "\f0a2"; -$fa-var-bell-slash: "\f1f6"; -$fa-var-bell-slash-o: "\f1f7"; -$fa-var-bicycle: "\f206"; -$fa-var-binoculars: "\f1e5"; -$fa-var-birthday-cake: "\f1fd"; -$fa-var-bitbucket: "\f171"; -$fa-var-bitbucket-square: "\f172"; -$fa-var-bitcoin: "\f15a"; -$fa-var-black-tie: "\f27e"; -$fa-var-bold: "\f032"; -$fa-var-bolt: "\f0e7"; -$fa-var-bomb: "\f1e2"; -$fa-var-book: "\f02d"; -$fa-var-bookmark: "\f02e"; -$fa-var-bookmark-o: "\f097"; -$fa-var-briefcase: "\f0b1"; -$fa-var-btc: "\f15a"; -$fa-var-bug: "\f188"; -$fa-var-building: "\f1ad"; -$fa-var-building-o: "\f0f7"; -$fa-var-bullhorn: "\f0a1"; -$fa-var-bullseye: "\f140"; -$fa-var-bus: "\f207"; -$fa-var-buysellads: "\f20d"; -$fa-var-cab: "\f1ba"; -$fa-var-calculator: "\f1ec"; -$fa-var-calendar: "\f073"; -$fa-var-calendar-check-o: "\f274"; -$fa-var-calendar-minus-o: "\f272"; -$fa-var-calendar-o: "\f133"; -$fa-var-calendar-plus-o: "\f271"; -$fa-var-calendar-times-o: "\f273"; -$fa-var-camera: "\f030"; -$fa-var-camera-retro: "\f083"; -$fa-var-car: "\f1b9"; -$fa-var-caret-down: "\f0d7"; -$fa-var-caret-left: "\f0d9"; -$fa-var-caret-right: "\f0da"; -$fa-var-caret-square-o-down: "\f150"; -$fa-var-caret-square-o-left: "\f191"; -$fa-var-caret-square-o-right: "\f152"; -$fa-var-caret-square-o-up: "\f151"; -$fa-var-caret-up: "\f0d8"; -$fa-var-cart-arrow-down: "\f218"; -$fa-var-cart-plus: "\f217"; -$fa-var-cc: "\f20a"; -$fa-var-cc-amex: "\f1f3"; -$fa-var-cc-diners-club: "\f24c"; -$fa-var-cc-discover: "\f1f2"; -$fa-var-cc-jcb: "\f24b"; -$fa-var-cc-mastercard: "\f1f1"; -$fa-var-cc-paypal: "\f1f4"; -$fa-var-cc-stripe: "\f1f5"; -$fa-var-cc-visa: "\f1f0"; -$fa-var-certificate: "\f0a3"; -$fa-var-chain: "\f0c1"; -$fa-var-chain-broken: "\f127"; -$fa-var-check: "\f00c"; -$fa-var-check-circle: "\f058"; -$fa-var-check-circle-o: "\f05d"; -$fa-var-check-square: "\f14a"; -$fa-var-check-square-o: "\f046"; -$fa-var-chevron-circle-down: "\f13a"; -$fa-var-chevron-circle-left: "\f137"; -$fa-var-chevron-circle-right: "\f138"; -$fa-var-chevron-circle-up: "\f139"; -$fa-var-chevron-down: "\f078"; -$fa-var-chevron-left: "\f053"; -$fa-var-chevron-right: "\f054"; -$fa-var-chevron-up: "\f077"; -$fa-var-child: "\f1ae"; -$fa-var-chrome: "\f268"; -$fa-var-circle: "\f111"; -$fa-var-circle-o: "\f10c"; -$fa-var-circle-o-notch: "\f1ce"; -$fa-var-circle-thin: "\f1db"; -$fa-var-clipboard: "\f0ea"; -$fa-var-clock-o: "\f017"; -$fa-var-clone: "\f24d"; -$fa-var-close: "\f00d"; -$fa-var-cloud: "\f0c2"; -$fa-var-cloud-download: "\f0ed"; -$fa-var-cloud-upload: "\f0ee"; -$fa-var-cny: "\f157"; -$fa-var-code: "\f121"; -$fa-var-code-fork: "\f126"; -$fa-var-codepen: "\f1cb"; -$fa-var-coffee: "\f0f4"; -$fa-var-cog: "\f013"; -$fa-var-cogs: "\f085"; -$fa-var-columns: "\f0db"; -$fa-var-comment: "\f075"; -$fa-var-comment-o: "\f0e5"; -$fa-var-commenting: "\f27a"; -$fa-var-commenting-o: "\f27b"; -$fa-var-comments: "\f086"; -$fa-var-comments-o: "\f0e6"; -$fa-var-compass: "\f14e"; -$fa-var-compress: "\f066"; -$fa-var-connectdevelop: "\f20e"; -$fa-var-contao: "\f26d"; -$fa-var-copy: "\f0c5"; -$fa-var-copyright: "\f1f9"; -$fa-var-creative-commons: "\f25e"; -$fa-var-credit-card: "\f09d"; -$fa-var-crop: "\f125"; -$fa-var-crosshairs: "\f05b"; -$fa-var-css3: "\f13c"; -$fa-var-cube: "\f1b2"; -$fa-var-cubes: "\f1b3"; -$fa-var-cut: "\f0c4"; -$fa-var-cutlery: "\f0f5"; -$fa-var-dashboard: "\f0e4"; -$fa-var-dashcube: "\f210"; -$fa-var-database: "\f1c0"; -$fa-var-dedent: "\f03b"; -$fa-var-delicious: "\f1a5"; -$fa-var-desktop: "\f108"; -$fa-var-deviantart: "\f1bd"; -$fa-var-diamond: "\f219"; -$fa-var-digg: "\f1a6"; -$fa-var-dollar: "\f155"; -$fa-var-dot-circle-o: "\f192"; -$fa-var-download: "\f019"; -$fa-var-dribbble: "\f17d"; -$fa-var-dropbox: "\f16b"; -$fa-var-drupal: "\f1a9"; -$fa-var-edit: "\f044"; -$fa-var-eject: "\f052"; -$fa-var-ellipsis-h: "\f141"; -$fa-var-ellipsis-v: "\f142"; -$fa-var-empire: "\f1d1"; -$fa-var-envelope: "\f0e0"; -$fa-var-envelope-o: "\f003"; -$fa-var-envelope-square: "\f199"; -$fa-var-eraser: "\f12d"; -$fa-var-eur: "\f153"; -$fa-var-euro: "\f153"; -$fa-var-exchange: "\f0ec"; -$fa-var-exclamation: "\f12a"; -$fa-var-exclamation-circle: "\f06a"; -$fa-var-exclamation-triangle: "\f071"; -$fa-var-expand: "\f065"; -$fa-var-expeditedssl: "\f23e"; -$fa-var-external-link: "\f08e"; -$fa-var-external-link-square: "\f14c"; -$fa-var-eye: "\f06e"; -$fa-var-eye-slash: "\f070"; -$fa-var-eyedropper: "\f1fb"; -$fa-var-facebook: "\f09a"; -$fa-var-facebook-f: "\f09a"; -$fa-var-facebook-official: "\f230"; -$fa-var-facebook-square: "\f082"; -$fa-var-fast-backward: "\f049"; -$fa-var-fast-forward: "\f050"; -$fa-var-fax: "\f1ac"; -$fa-var-feed: "\f09e"; -$fa-var-female: "\f182"; -$fa-var-fighter-jet: "\f0fb"; -$fa-var-file: "\f15b"; -$fa-var-file-archive-o: "\f1c6"; -$fa-var-file-audio-o: "\f1c7"; -$fa-var-file-code-o: "\f1c9"; -$fa-var-file-excel-o: "\f1c3"; -$fa-var-file-image-o: "\f1c5"; -$fa-var-file-movie-o: "\f1c8"; -$fa-var-file-o: "\f016"; -$fa-var-file-pdf-o: "\f1c1"; -$fa-var-file-photo-o: "\f1c5"; -$fa-var-file-picture-o: "\f1c5"; -$fa-var-file-powerpoint-o: "\f1c4"; -$fa-var-file-sound-o: "\f1c7"; -$fa-var-file-text: "\f15c"; -$fa-var-file-text-o: "\f0f6"; -$fa-var-file-video-o: "\f1c8"; -$fa-var-file-word-o: "\f1c2"; -$fa-var-file-zip-o: "\f1c6"; -$fa-var-files-o: "\f0c5"; -$fa-var-film: "\f008"; -$fa-var-filter: "\f0b0"; -$fa-var-fire: "\f06d"; -$fa-var-fire-extinguisher: "\f134"; -$fa-var-firefox: "\f269"; -$fa-var-flag: "\f024"; -$fa-var-flag-checkered: "\f11e"; -$fa-var-flag-o: "\f11d"; -$fa-var-flash: "\f0e7"; -$fa-var-flask: "\f0c3"; -$fa-var-flickr: "\f16e"; -$fa-var-floppy-o: "\f0c7"; -$fa-var-folder: "\f07b"; -$fa-var-folder-o: "\f114"; -$fa-var-folder-open: "\f07c"; -$fa-var-folder-open-o: "\f115"; -$fa-var-font: "\f031"; -$fa-var-fonticons: "\f280"; -$fa-var-forumbee: "\f211"; -$fa-var-forward: "\f04e"; -$fa-var-foursquare: "\f180"; -$fa-var-frown-o: "\f119"; -$fa-var-futbol-o: "\f1e3"; -$fa-var-gamepad: "\f11b"; -$fa-var-gavel: "\f0e3"; -$fa-var-gbp: "\f154"; -$fa-var-ge: "\f1d1"; -$fa-var-gear: "\f013"; -$fa-var-gears: "\f085"; -$fa-var-genderless: "\f22d"; -$fa-var-get-pocket: "\f265"; -$fa-var-gg: "\f260"; -$fa-var-gg-circle: "\f261"; -$fa-var-gift: "\f06b"; -$fa-var-git: "\f1d3"; -$fa-var-git-square: "\f1d2"; -$fa-var-github: "\f09b"; -$fa-var-github-alt: "\f113"; -$fa-var-github-square: "\f092"; -$fa-var-gittip: "\f184"; -$fa-var-glass: "\f000"; -$fa-var-globe: "\f0ac"; -$fa-var-google: "\f1a0"; -$fa-var-google-plus: "\f0d5"; -$fa-var-google-plus-square: "\f0d4"; -$fa-var-google-wallet: "\f1ee"; -$fa-var-graduation-cap: "\f19d"; -$fa-var-gratipay: "\f184"; -$fa-var-group: "\f0c0"; -$fa-var-h-square: "\f0fd"; -$fa-var-hacker-news: "\f1d4"; -$fa-var-hand-grab-o: "\f255"; -$fa-var-hand-lizard-o: "\f258"; -$fa-var-hand-o-down: "\f0a7"; -$fa-var-hand-o-left: "\f0a5"; -$fa-var-hand-o-right: "\f0a4"; -$fa-var-hand-o-up: "\f0a6"; -$fa-var-hand-paper-o: "\f256"; -$fa-var-hand-peace-o: "\f25b"; -$fa-var-hand-pointer-o: "\f25a"; -$fa-var-hand-rock-o: "\f255"; -$fa-var-hand-scissors-o: "\f257"; -$fa-var-hand-spock-o: "\f259"; -$fa-var-hand-stop-o: "\f256"; -$fa-var-hdd-o: "\f0a0"; -$fa-var-header: "\f1dc"; -$fa-var-headphones: "\f025"; -$fa-var-heart: "\f004"; -$fa-var-heart-o: "\f08a"; -$fa-var-heartbeat: "\f21e"; -$fa-var-history: "\f1da"; -$fa-var-home: "\f015"; -$fa-var-hospital-o: "\f0f8"; -$fa-var-hotel: "\f236"; -$fa-var-hourglass: "\f254"; -$fa-var-hourglass-1: "\f251"; -$fa-var-hourglass-2: "\f252"; -$fa-var-hourglass-3: "\f253"; -$fa-var-hourglass-end: "\f253"; -$fa-var-hourglass-half: "\f252"; -$fa-var-hourglass-o: "\f250"; -$fa-var-hourglass-start: "\f251"; -$fa-var-houzz: "\f27c"; -$fa-var-html5: "\f13b"; -$fa-var-i-cursor: "\f246"; -$fa-var-ils: "\f20b"; -$fa-var-image: "\f03e"; -$fa-var-inbox: "\f01c"; -$fa-var-indent: "\f03c"; -$fa-var-industry: "\f275"; -$fa-var-info: "\f129"; -$fa-var-info-circle: "\f05a"; -$fa-var-inr: "\f156"; -$fa-var-instagram: "\f16d"; -$fa-var-institution: "\f19c"; -$fa-var-internet-explorer: "\f26b"; -$fa-var-intersex: "\f224"; -$fa-var-ioxhost: "\f208"; -$fa-var-italic: "\f033"; -$fa-var-joomla: "\f1aa"; -$fa-var-jpy: "\f157"; -$fa-var-jsfiddle: "\f1cc"; -$fa-var-key: "\f084"; -$fa-var-keyboard-o: "\f11c"; -$fa-var-krw: "\f159"; -$fa-var-language: "\f1ab"; -$fa-var-laptop: "\f109"; -$fa-var-lastfm: "\f202"; -$fa-var-lastfm-square: "\f203"; -$fa-var-leaf: "\f06c"; -$fa-var-leanpub: "\f212"; -$fa-var-legal: "\f0e3"; -$fa-var-lemon-o: "\f094"; -$fa-var-level-down: "\f149"; -$fa-var-level-up: "\f148"; -$fa-var-life-bouy: "\f1cd"; -$fa-var-life-buoy: "\f1cd"; -$fa-var-life-ring: "\f1cd"; -$fa-var-life-saver: "\f1cd"; -$fa-var-lightbulb-o: "\f0eb"; -$fa-var-line-chart: "\f201"; -$fa-var-link: "\f0c1"; -$fa-var-linkedin: "\f0e1"; -$fa-var-linkedin-square: "\f08c"; -$fa-var-linux: "\f17c"; -$fa-var-list: "\f03a"; -$fa-var-list-alt: "\f022"; -$fa-var-list-ol: "\f0cb"; -$fa-var-list-ul: "\f0ca"; -$fa-var-location-arrow: "\f124"; -$fa-var-lock: "\f023"; -$fa-var-long-arrow-down: "\f175"; -$fa-var-long-arrow-left: "\f177"; -$fa-var-long-arrow-right: "\f178"; -$fa-var-long-arrow-up: "\f176"; -$fa-var-magic: "\f0d0"; -$fa-var-magnet: "\f076"; -$fa-var-mail-forward: "\f064"; -$fa-var-mail-reply: "\f112"; -$fa-var-mail-reply-all: "\f122"; -$fa-var-male: "\f183"; -$fa-var-map: "\f279"; -$fa-var-map-marker: "\f041"; -$fa-var-map-o: "\f278"; -$fa-var-map-pin: "\f276"; -$fa-var-map-signs: "\f277"; -$fa-var-mars: "\f222"; -$fa-var-mars-double: "\f227"; -$fa-var-mars-stroke: "\f229"; -$fa-var-mars-stroke-h: "\f22b"; -$fa-var-mars-stroke-v: "\f22a"; -$fa-var-maxcdn: "\f136"; -$fa-var-meanpath: "\f20c"; -$fa-var-medium: "\f23a"; -$fa-var-medkit: "\f0fa"; -$fa-var-meh-o: "\f11a"; -$fa-var-mercury: "\f223"; -$fa-var-microphone: "\f130"; -$fa-var-microphone-slash: "\f131"; -$fa-var-minus: "\f068"; -$fa-var-minus-circle: "\f056"; -$fa-var-minus-square: "\f146"; -$fa-var-minus-square-o: "\f147"; -$fa-var-mobile: "\f10b"; -$fa-var-mobile-phone: "\f10b"; -$fa-var-money: "\f0d6"; -$fa-var-moon-o: "\f186"; -$fa-var-mortar-board: "\f19d"; -$fa-var-motorcycle: "\f21c"; -$fa-var-mouse-pointer: "\f245"; -$fa-var-music: "\f001"; -$fa-var-navicon: "\f0c9"; -$fa-var-neuter: "\f22c"; -$fa-var-newspaper-o: "\f1ea"; -$fa-var-object-group: "\f247"; -$fa-var-object-ungroup: "\f248"; -$fa-var-odnoklassniki: "\f263"; -$fa-var-odnoklassniki-square: "\f264"; -$fa-var-opencart: "\f23d"; -$fa-var-openid: "\f19b"; -$fa-var-opera: "\f26a"; -$fa-var-optin-monster: "\f23c"; -$fa-var-outdent: "\f03b"; -$fa-var-pagelines: "\f18c"; -$fa-var-paint-brush: "\f1fc"; -$fa-var-paper-plane: "\f1d8"; -$fa-var-paper-plane-o: "\f1d9"; -$fa-var-paperclip: "\f0c6"; -$fa-var-paragraph: "\f1dd"; -$fa-var-paste: "\f0ea"; -$fa-var-pause: "\f04c"; -$fa-var-paw: "\f1b0"; -$fa-var-paypal: "\f1ed"; -$fa-var-pencil: "\f040"; -$fa-var-pencil-square: "\f14b"; -$fa-var-pencil-square-o: "\f044"; -$fa-var-phone: "\f095"; -$fa-var-phone-square: "\f098"; -$fa-var-photo: "\f03e"; -$fa-var-picture-o: "\f03e"; -$fa-var-pie-chart: "\f200"; -$fa-var-pied-piper: "\f1a7"; -$fa-var-pied-piper-alt: "\f1a8"; -$fa-var-pinterest: "\f0d2"; -$fa-var-pinterest-p: "\f231"; -$fa-var-pinterest-square: "\f0d3"; -$fa-var-plane: "\f072"; -$fa-var-play: "\f04b"; -$fa-var-play-circle: "\f144"; -$fa-var-play-circle-o: "\f01d"; -$fa-var-plug: "\f1e6"; -$fa-var-plus: "\f067"; -$fa-var-plus-circle: "\f055"; -$fa-var-plus-square: "\f0fe"; -$fa-var-plus-square-o: "\f196"; -$fa-var-power-off: "\f011"; -$fa-var-print: "\f02f"; -$fa-var-puzzle-piece: "\f12e"; -$fa-var-qq: "\f1d6"; -$fa-var-qrcode: "\f029"; -$fa-var-question: "\f128"; -$fa-var-question-circle: "\f059"; -$fa-var-quote-left: "\f10d"; -$fa-var-quote-right: "\f10e"; -$fa-var-ra: "\f1d0"; -$fa-var-random: "\f074"; -$fa-var-rebel: "\f1d0"; -$fa-var-recycle: "\f1b8"; -$fa-var-reddit: "\f1a1"; -$fa-var-reddit-square: "\f1a2"; -$fa-var-refresh: "\f021"; -$fa-var-registered: "\f25d"; -$fa-var-remove: "\f00d"; -$fa-var-renren: "\f18b"; -$fa-var-reorder: "\f0c9"; -$fa-var-repeat: "\f01e"; -$fa-var-reply: "\f112"; -$fa-var-reply-all: "\f122"; -$fa-var-retweet: "\f079"; -$fa-var-rmb: "\f157"; -$fa-var-road: "\f018"; -$fa-var-rocket: "\f135"; -$fa-var-rotate-left: "\f0e2"; -$fa-var-rotate-right: "\f01e"; -$fa-var-rouble: "\f158"; -$fa-var-rss: "\f09e"; -$fa-var-rss-square: "\f143"; -$fa-var-rub: "\f158"; -$fa-var-ruble: "\f158"; -$fa-var-rupee: "\f156"; -$fa-var-safari: "\f267"; -$fa-var-save: "\f0c7"; -$fa-var-scissors: "\f0c4"; -$fa-var-search: "\f002"; -$fa-var-search-minus: "\f010"; -$fa-var-search-plus: "\f00e"; -$fa-var-sellsy: "\f213"; -$fa-var-send: "\f1d8"; -$fa-var-send-o: "\f1d9"; -$fa-var-server: "\f233"; -$fa-var-share: "\f064"; -$fa-var-share-alt: "\f1e0"; -$fa-var-share-alt-square: "\f1e1"; -$fa-var-share-square: "\f14d"; -$fa-var-share-square-o: "\f045"; -$fa-var-shekel: "\f20b"; -$fa-var-sheqel: "\f20b"; -$fa-var-shield: "\f132"; -$fa-var-ship: "\f21a"; -$fa-var-shirtsinbulk: "\f214"; -$fa-var-shopping-cart: "\f07a"; -$fa-var-sign-in: "\f090"; -$fa-var-sign-out: "\f08b"; -$fa-var-signal: "\f012"; -$fa-var-simplybuilt: "\f215"; -$fa-var-sitemap: "\f0e8"; -$fa-var-skyatlas: "\f216"; -$fa-var-skype: "\f17e"; -$fa-var-slack: "\f198"; -$fa-var-sliders: "\f1de"; -$fa-var-slideshare: "\f1e7"; -$fa-var-smile-o: "\f118"; -$fa-var-soccer-ball-o: "\f1e3"; -$fa-var-sort: "\f0dc"; -$fa-var-sort-alpha-asc: "\f15d"; -$fa-var-sort-alpha-desc: "\f15e"; -$fa-var-sort-amount-asc: "\f160"; -$fa-var-sort-amount-desc: "\f161"; -$fa-var-sort-asc: "\f0de"; -$fa-var-sort-desc: "\f0dd"; -$fa-var-sort-down: "\f0dd"; -$fa-var-sort-numeric-asc: "\f162"; -$fa-var-sort-numeric-desc: "\f163"; -$fa-var-sort-up: "\f0de"; -$fa-var-soundcloud: "\f1be"; -$fa-var-space-shuttle: "\f197"; -$fa-var-spinner: "\f110"; -$fa-var-spoon: "\f1b1"; -$fa-var-spotify: "\f1bc"; -$fa-var-square: "\f0c8"; -$fa-var-square-o: "\f096"; -$fa-var-stack-exchange: "\f18d"; -$fa-var-stack-overflow: "\f16c"; -$fa-var-star: "\f005"; -$fa-var-star-half: "\f089"; -$fa-var-star-half-empty: "\f123"; -$fa-var-star-half-full: "\f123"; -$fa-var-star-half-o: "\f123"; -$fa-var-star-o: "\f006"; -$fa-var-steam: "\f1b6"; -$fa-var-steam-square: "\f1b7"; -$fa-var-step-backward: "\f048"; -$fa-var-step-forward: "\f051"; -$fa-var-stethoscope: "\f0f1"; -$fa-var-sticky-note: "\f249"; -$fa-var-sticky-note-o: "\f24a"; -$fa-var-stop: "\f04d"; -$fa-var-street-view: "\f21d"; -$fa-var-strikethrough: "\f0cc"; -$fa-var-stumbleupon: "\f1a4"; -$fa-var-stumbleupon-circle: "\f1a3"; -$fa-var-subscript: "\f12c"; -$fa-var-subway: "\f239"; -$fa-var-suitcase: "\f0f2"; -$fa-var-sun-o: "\f185"; -$fa-var-superscript: "\f12b"; -$fa-var-support: "\f1cd"; -$fa-var-table: "\f0ce"; -$fa-var-tablet: "\f10a"; -$fa-var-tachometer: "\f0e4"; -$fa-var-tag: "\f02b"; -$fa-var-tags: "\f02c"; -$fa-var-tasks: "\f0ae"; -$fa-var-taxi: "\f1ba"; -$fa-var-television: "\f26c"; -$fa-var-tencent-weibo: "\f1d5"; -$fa-var-terminal: "\f120"; -$fa-var-text-height: "\f034"; -$fa-var-text-width: "\f035"; -$fa-var-th: "\f00a"; -$fa-var-th-large: "\f009"; -$fa-var-th-list: "\f00b"; -$fa-var-thumb-tack: "\f08d"; -$fa-var-thumbs-down: "\f165"; -$fa-var-thumbs-o-down: "\f088"; -$fa-var-thumbs-o-up: "\f087"; -$fa-var-thumbs-up: "\f164"; -$fa-var-ticket: "\f145"; -$fa-var-times: "\f00d"; -$fa-var-times-circle: "\f057"; -$fa-var-times-circle-o: "\f05c"; -$fa-var-tint: "\f043"; -$fa-var-toggle-down: "\f150"; -$fa-var-toggle-left: "\f191"; -$fa-var-toggle-off: "\f204"; -$fa-var-toggle-on: "\f205"; -$fa-var-toggle-right: "\f152"; -$fa-var-toggle-up: "\f151"; -$fa-var-trademark: "\f25c"; -$fa-var-train: "\f238"; -$fa-var-transgender: "\f224"; -$fa-var-transgender-alt: "\f225"; -$fa-var-trash: "\f1f8"; -$fa-var-trash-o: "\f014"; -$fa-var-tree: "\f1bb"; -$fa-var-trello: "\f181"; -$fa-var-tripadvisor: "\f262"; -$fa-var-trophy: "\f091"; -$fa-var-truck: "\f0d1"; -$fa-var-try: "\f195"; -$fa-var-tty: "\f1e4"; -$fa-var-tumblr: "\f173"; -$fa-var-tumblr-square: "\f174"; -$fa-var-turkish-lira: "\f195"; -$fa-var-tv: "\f26c"; -$fa-var-twitch: "\f1e8"; -$fa-var-twitter: "\f099"; -$fa-var-twitter-square: "\f081"; -$fa-var-umbrella: "\f0e9"; -$fa-var-underline: "\f0cd"; -$fa-var-undo: "\f0e2"; -$fa-var-university: "\f19c"; -$fa-var-unlink: "\f127"; -$fa-var-unlock: "\f09c"; -$fa-var-unlock-alt: "\f13e"; -$fa-var-unsorted: "\f0dc"; -$fa-var-upload: "\f093"; -$fa-var-usd: "\f155"; -$fa-var-user: "\f007"; -$fa-var-user-md: "\f0f0"; -$fa-var-user-plus: "\f234"; -$fa-var-user-secret: "\f21b"; -$fa-var-user-times: "\f235"; -$fa-var-users: "\f0c0"; -$fa-var-venus: "\f221"; -$fa-var-venus-double: "\f226"; -$fa-var-venus-mars: "\f228"; -$fa-var-viacoin: "\f237"; -$fa-var-video-camera: "\f03d"; -$fa-var-vimeo: "\f27d"; -$fa-var-vimeo-square: "\f194"; -$fa-var-vine: "\f1ca"; -$fa-var-vk: "\f189"; -$fa-var-volume-down: "\f027"; -$fa-var-volume-off: "\f026"; -$fa-var-volume-up: "\f028"; -$fa-var-warning: "\f071"; -$fa-var-wechat: "\f1d7"; -$fa-var-weibo: "\f18a"; -$fa-var-weixin: "\f1d7"; -$fa-var-whatsapp: "\f232"; -$fa-var-wheelchair: "\f193"; -$fa-var-wifi: "\f1eb"; -$fa-var-wikipedia-w: "\f266"; -$fa-var-windows: "\f17a"; -$fa-var-won: "\f159"; -$fa-var-wordpress: "\f19a"; -$fa-var-wrench: "\f0ad"; -$fa-var-xing: "\f168"; -$fa-var-xing-square: "\f169"; -$fa-var-y-combinator: "\f23b"; -$fa-var-y-combinator-square: "\f1d4"; -$fa-var-yahoo: "\f19e"; -$fa-var-yc: "\f23b"; -$fa-var-yc-square: "\f1d4"; -$fa-var-yelp: "\f1e9"; -$fa-var-yen: "\f157"; -$fa-var-youtube: "\f167"; -$fa-var-youtube-play: "\f16a"; -$fa-var-youtube-square: "\f166"; - diff --git a/themes/devopsdays-responsive/static/font-awesome/scss/font-awesome.scss b/themes/devopsdays-responsive/static/font-awesome/scss/font-awesome.scss deleted file mode 100644 index ebd9646ccac..00000000000 --- a/themes/devopsdays-responsive/static/font-awesome/scss/font-awesome.scss +++ /dev/null @@ -1,17 +0,0 @@ -/*! - * Font Awesome 4.4.0 by @davegandy - http://fontawesome.io - @fontawesome - * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) - */ - -@import "variables"; -@import "mixins"; -@import "path"; -@import "core"; -@import "larger"; -@import "fixed-width"; -@import "list"; -@import "bordered-pulled"; -@import "animated"; -@import "rotated-flipped"; -@import "stacked"; -@import "icons"; diff --git a/themes/devopsdays-responsive/static/fonts/glyphicons-halflings-regular.svg b/themes/devopsdays-responsive/static/fonts/glyphicons-halflings-regular.svg deleted file mode 100755 index 94fb5490a2e..00000000000 --- a/themes/devopsdays-responsive/static/fonts/glyphicons-halflings-regular.svg +++ /dev/null @@ -1,288 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/themes/devopsdays-responsive/static/images/devopsdays-brain.png b/themes/devopsdays-responsive/static/images/devopsdays-brain.png deleted file mode 100644 index 37376bfdabb..00000000000 Binary files a/themes/devopsdays-responsive/static/images/devopsdays-brain.png and /dev/null differ diff --git a/themes/devopsdays-responsive/static/images/events.png b/themes/devopsdays-responsive/static/images/events.png deleted file mode 100644 index 700bdfba493..00000000000 Binary files a/themes/devopsdays-responsive/static/images/events.png and /dev/null differ diff --git a/themes/devopsdays-responsive/static/js/bootstrap-sortable.js b/themes/devopsdays-responsive/static/js/bootstrap-sortable.js deleted file mode 100644 index de795f83f21..00000000000 --- a/themes/devopsdays-responsive/static/js/bootstrap-sortable.js +++ /dev/null @@ -1,289 +0,0 @@ -/** - * adding sorting ability to HTML tables with Bootstrap styling - * @summary HTML tables sorting ability - * @version 2.0.0 - * @requires tinysort, moment.js, jQuery - * @license MIT - * @author Matus Brlit (drvic10k) - * @copyright Matus Brlit (drvic10k), bootstrap-sortable contributors - */ - -/** - * TinySort is a small script that sorts HTML elements. It sorts by text- or attribute value, or by that of one of it's children. - * @summary A nodeElement sorting script. - * @version 2.2.0 - * @license MIT/GPL - * @author Ron Valstar - * @copyright Ron Valstar - * @namespace tinysort - */ -!function (a, b) { "use strict"; function c() { return b } "function" == typeof define && define.amd ? define("tinysort", c) : a.tinysort = b }(this, function () { "use strict"; function a(a, f) { function j() { 0 === arguments.length ? s({}) : d(arguments, function (a) { s(c(a) ? { selector: a } : a) }), p = D.length } function s(a) { var b = !!a.selector, c = b && ":" === a.selector[0], d = e(a || {}, r); D.push(e({ hasSelector: b, hasAttr: !(d.attr === i || "" === d.attr), hasData: d.data !== i, hasFilter: c, sortReturnNumber: "asc" === d.order ? 1 : -1 }, d)) } function t() { d(a, function (a, b) { y ? y !== a.parentNode && (E = !1) : y = a.parentNode; var c = D[0], d = c.hasFilter, e = c.selector, f = !e || d && a.matchesSelector(e) || e && a.querySelector(e), g = f ? B : C, h = { elm: a, pos: b, posn: g.length }; A.push(h), g.push(h) }), x = B.slice(0) } function u() { B.sort(v) } function v(a, e) { var f = 0; for (0 !== q && (q = 0) ; 0 === f && p > q;) { var i = D[q], j = i.ignoreDashes ? n : m; if (d(o, function (a) { var b = a.prepare; b && b(i) }), i.sortFunction) f = i.sortFunction(a, e); else if ("rand" == i.order) f = Math.random() < .5 ? 1 : -1; else { var k = h, r = b(a, i), s = b(e, i), t = "" === r || r === g, u = "" === s || s === g; if (r === s) f = 0; else if (i.emptyEnd && (t || u)) f = t && u ? 0 : t ? 1 : -1; else { if (!i.forceStrings) { var v = c(r) ? r && r.match(j) : h, w = c(s) ? s && s.match(j) : h; if (v && w) { var x = r.substr(0, r.length - v[0].length), y = s.substr(0, s.length - w[0].length); x == y && (k = !h, r = l(v[0]), s = l(w[0])) } } f = r === g || s === g ? 0 : s > r ? -1 : r > s ? 1 : 0 } } d(o, function (a) { var b = a.sort; b && (f = b(i, k, r, s, f)) }), f *= i.sortReturnNumber, 0 === f && q++ } return 0 === f && (f = a.pos > e.pos ? 1 : -1), f } function w() { var a = B.length === A.length; E && a ? F ? B.forEach(function (a, b) { a.elm.style.order = b }) : (B.forEach(function (a) { z.appendChild(a.elm) }), y.appendChild(z)) : (B.forEach(function (a) { var b = a.elm, c = k.createElement("div"); a.ghost = c, b.parentNode.insertBefore(c, b) }), B.forEach(function (a, b) { var c = x[b].ghost; c.parentNode.insertBefore(a.elm, c), c.parentNode.removeChild(c) })) } c(a) && (a = k.querySelectorAll(a)), 0 === a.length && console.warn("No elements to sort"); var x, y, z = k.createDocumentFragment(), A = [], B = [], C = [], D = [], E = !0, F = a.length && (f === g || f.useFlex !== !1) && -1 !== getComputedStyle(a[0].parentNode, null).display.indexOf("flex"); return j.apply(i, Array.prototype.slice.call(arguments, 1)), t(), u(), w(), B.map(function (a) { return a.elm }) } function b(a, b) { var d, e = a.elm; return b.selector && (b.hasFilter ? e.matchesSelector(b.selector) || (e = i) : e = e.querySelector(b.selector)), b.hasAttr ? d = e.getAttribute(b.attr) : b.useVal ? d = e.value || e.getAttribute("value") : b.hasData ? d = e.getAttribute("data-" + b.data) : e && (d = e.textContent), c(d) && (b.cases || (d = d.toLowerCase()), d = d.replace(/\s+/g, " ")), d } function c(a) { return "string" == typeof a } function d(a, b) { for (var c, d = a.length, e = d; e--;) c = d - e - 1, b(a[c], c) } function e(a, b, c) { for (var d in b) (c || a[d] === g) && (a[d] = b[d]); return a } function f(a, b, c) { o.push({ prepare: a, sort: b, sortBy: c }) } var g, h = !1, i = null, j = window, k = j.document, l = parseFloat, m = /(-?\d+\.?\d*)\s*$/g, n = /(\d+\.?\d*)\s*$/g, o = [], p = 0, q = 0, r = { selector: i, order: "asc", attr: i, data: i, useVal: h, place: "start", returns: h, cases: h, forceStrings: h, ignoreDashes: h, sortFunction: i, useFlex: h, emptyEnd: h }; return j.Element && function (a) { a.matchesSelector = a.matchesSelector || a.mozMatchesSelector || a.msMatchesSelector || a.oMatchesSelector || a.webkitMatchesSelector || function (a) { for (var b = this, c = (b.parentNode || b.document).querySelectorAll(a), d = -1; c[++d] && c[d] != b;); return !!c[d] } }(Element.prototype), e(f, { loop: d }), e(a, { plugin: f, defaults: r }) }()); - -(function ($) { - - var $document = $(document), - signClass, - sortEngine, - emptyEnd; - - $.bootstrapSortable = function (options) { - if (options == undefined) { - initialize({}); - } - else if (options.constructor === Boolean) { - initialize({ applyLast: options }); - } - else if (options.sortingHeader !== undefined) { - sortByColumn(options.sortingHeader); - } - else { - initialize(options); - } - }; - - function initialize(options) { - // Check if moment.js is available - var momentJsAvailable = (typeof moment !== 'undefined'); - - // Set class based on sign parameter - signClass = !options.sign ? "arrow" : options.sign; - - // Set sorting algorithm - if (options.customSort == 'default') - options.customSort = defaultSortEngine; - sortEngine = options.customSort || sortEngine || defaultSortEngine; - - emptyEnd = options.emptyEnd; - - // Set attributes needed for sorting - $('table.sortable').each(function () { - var $this = $(this); - var applyLast = (options.applyLast === true); - $this.find('span.sign').remove(); - - // Add placeholder cells for colspans - $this.find('thead [colspan]').each(function () { - var colspan = parseFloat($(this).attr('colspan')); - for (var i = 1; i < colspan; i++) { - $(this).after(''); - } - }); - - // Add placeholder cells for rowspans - $this.find('thead [rowspan]').each(function () { - var $cell = $(this); - var rowspan = parseFloat($cell.attr('rowspan')); - for (var i = 1; i < rowspan; i++) { - var parentRow = $cell.parent('tr'); - var nextRow = parentRow.next('tr'); - var index = parentRow.children().index($cell); - nextRow.children().eq(index).before(''); - } - }); - - // Set indexes to header cells - $this.find('thead tr').each(function (rowIndex) { - $(this).find('th').each(function (columnIndex) { - var $header = $(this); - $header.addClass('nosort').removeClass('up down'); - $header.attr('data-sortcolumn', columnIndex); - $header.attr('data-sortkey', columnIndex + '-' + rowIndex); - }); - }); - - // Cleanup placeholder cells - $this.find('thead .rowspan-compensate, .colspan-compensate').remove(); - - // Initialize sorting values specified in header - $this.find('th').each(function () { - var $header = $(this); - if ($header.attr('data-dateformat') !== undefined && momentJsAvailable) { - var colNumber = parseFloat($header.attr('data-sortcolumn')); - $this.find('td:nth-child(' + (colNumber + 1) + ')').each(function () { - var $cell = $(this); - $cell.attr('data-value', moment($cell.text(), $header.attr('data-dateformat')).format('YYYY/MM/DD/HH/mm/ss')); - }); - } - else if ($header.attr('data-valueprovider') !== undefined) { - var colNumber = parseFloat($header.attr('data-sortcolumn')); - $this.find('td:nth-child(' + (colNumber + 1) + ')').each(function () { - var $cell = $(this); - $cell.attr('data-value', new RegExp($header.attr('data-valueprovider')).exec($cell.text())[0]); - }); - } - }); - - // Initialize sorting values - $this.find('td').each(function () { - var $cell = $(this); - if ($cell.attr('data-dateformat') !== undefined && momentJsAvailable) { - $cell.attr('data-value', moment($cell.text(), $cell.attr('data-dateformat')).format('YYYY/MM/DD/HH/mm/ss')); - } - else if ($cell.attr('data-valueprovider') !== undefined) { - $cell.attr('data-value', new RegExp($cell.attr('data-valueprovider')).exec($cell.text())[0]); - } - else { - $cell.attr('data-value') === undefined && $cell.attr('data-value', $cell.text()); - } - }); - - var context = lookupSortContext($this), - bsSort = context.bsSort; - - $this.find('thead th[data-defaultsort!="disabled"]').each(function (index) { - var $header = $(this); - var $sortTable = $header.closest('table.sortable'); - $header.data('sortTable', $sortTable); - var sortKey = $header.attr('data-sortkey'); - var thisLastSort = applyLast ? context.lastSort : -1; - bsSort[sortKey] = applyLast ? bsSort[sortKey] : $header.attr('data-defaultsort'); - if (bsSort[sortKey] !== undefined && (applyLast === (sortKey === thisLastSort))) { - bsSort[sortKey] = bsSort[sortKey] === 'asc' ? 'desc' : 'asc'; - doSort($header, $sortTable); - } - }); - $this.trigger('sorted'); - }); - } - - // Add click event to table header - $document.on('click', 'table.sortable>thead th[data-defaultsort!="disabled"]', function (e) { - sortByColumn(this); - }); - - // element is the header of the column to sort (the clicked header) - function sortByColumn(element) { - var $this = $(element), $table = $this.data('sortTable') || $this.closest('table.sortable'); - $table.trigger('before-sort'); - doSort($this, $table); - $table.trigger('sorted'); - } - - // Look up sorting data appropriate for the specified table (jQuery element). - // This allows multiple tables on one page without collisions. - function lookupSortContext($table) { - var context = $table.data("bootstrap-sortable-context"); - if (context === undefined) { - context = { bsSort: [], lastSort: undefined }; - $table.find('thead th[data-defaultsort!="disabled"]').each(function (index) { - var $this = $(this); - var sortKey = $this.attr('data-sortkey'); - context.bsSort[sortKey] = $this.attr('data-defaultsort'); - if (context.bsSort[sortKey] !== undefined) { - context.lastSort = sortKey; - } - }); - $table.data("bootstrap-sortable-context", context); - } - return context; - } - - function defaultSortEngine(rows, sortingParams) { - tinysort(rows, sortingParams); - } - - // Sorting mechanism separated - function doSort($this, $table) { - var sortColumn = parseFloat($this.attr('data-sortcolumn')), - context = lookupSortContext($table), - bsSort = context.bsSort; - - var colspan = $this.attr('colspan'); - if (colspan) { - var mainSort = parseFloat($this.data('mainsort')) || 0; - var rowIndex = parseFloat($this.data('sortkey').split('-').pop()); - - // If there is one more row in header, delve deeper - if ($table.find('thead tr').length - 1 > rowIndex) { - doSort($table.find('[data-sortkey="' + (sortColumn + mainSort) + '-' + (rowIndex + 1) + '"]'), $table); - return; - } - // Otherwise, just adjust the sortColumn - sortColumn = sortColumn + mainSort; - } - - var localSignClass = $this.attr('data-defaultsign') || signClass; - - // update arrow icon - $table.find('th').each(function () { - $(this).removeClass('up').removeClass('down').addClass('nosort'); - }); - - if ($.browser.mozilla) { - var moz_arrow = $table.find('div.mozilla'); - if (moz_arrow !== undefined) { - moz_arrow.find('.sign').remove(); - moz_arrow.parent().html(moz_arrow.html()); - } - $this.wrapInner('
      '); - $this.children().eq(0).append(''); - } - else { - $table.find('span.sign').remove(); - $this.append(''); - } - - // sort direction - var sortKey = $this.attr('data-sortkey'); - var initialDirection = $this.attr('data-firstsort') !== 'desc' ? 'desc' : 'asc'; - - var newDirection = (bsSort[sortKey] || initialDirection); - if (context.lastSort === sortKey || bsSort[sortKey] === undefined) { - newDirection = newDirection === 'asc' ? 'desc' : 'asc'; - } - bsSort[sortKey] = newDirection; - context.lastSort = sortKey; - - if (bsSort[sortKey] === 'desc') { - $this.find('span.sign').addClass('up'); - $this.addClass('up').removeClass('down nosort'); - } else { - $this.addClass('down').removeClass('up nosort'); - } - - // remove rows that should not be sorted - var rows = $table.children('tbody').children('tr'); - var fixedRows = []; - $(rows.filter('[data-disablesort="true"]').get().reverse()).each(function (index, fixedRow) { - var $fixedRow = $(fixedRow); - fixedRows.push({ index: rows.index($fixedRow), row: $fixedRow }); - $fixedRow.remove(); - }); - - // sort rows - var rowsToSort = rows.not('[data-disablesort="true"]'); - if (rowsToSort.length != 0) { - var emptySorting = bsSort[sortKey] === 'asc' ? emptyEnd : false; - sortEngine(rowsToSort, { emptyEnd: emptySorting, selector: 'td:nth-child(' + (sortColumn + 1) + ')', order: bsSort[sortKey], data: 'value' }); - } - - // add back the fixed rows - $(fixedRows.reverse()).each(function (index, row) { - if (row.index === 0) { - $table.children('tbody').prepend(row.row); - } else { - $table.children('tbody').children('tr').eq(row.index - 1).after(row.row); - } - }); - - // add class to sorted column cells - $table.find('td.sorted, th.sorted').removeClass('sorted'); - rowsToSort.find('td:eq(' + sortColumn + ')').addClass('sorted'); - $this.addClass('sorted'); - } - - // jQuery 1.9 removed this object - if (!$.browser) { - $.browser = { chrome: false, mozilla: false, opera: false, msie: false, safari: false }; - var ua = navigator.userAgent; - $.each($.browser, function (c) { - $.browser[c] = ((new RegExp(c, 'i').test(ua))) ? true : false; - if ($.browser.mozilla && c === 'mozilla') { $.browser.mozilla = ((new RegExp('firefox', 'i').test(ua))) ? true : false; } - if ($.browser.chrome && c === 'safari') { $.browser.safari = false; } - }); - } - - // Initialise on DOM ready - $($.bootstrapSortable); - -}(jQuery)); diff --git a/themes/devopsdays-responsive/static/js/bootstrap.js b/themes/devopsdays-responsive/static/js/bootstrap.js deleted file mode 100755 index 01fbbcbaa9f..00000000000 --- a/themes/devopsdays-responsive/static/js/bootstrap.js +++ /dev/null @@ -1,2363 +0,0 @@ -/*! - * Bootstrap v3.3.6 (http://getbootstrap.com) - * Copyright 2011-2015 Twitter, Inc. - * Licensed under the MIT license - */ - -if (typeof jQuery === 'undefined') { - throw new Error('Bootstrap\'s JavaScript requires jQuery') -} - -+function ($) { - 'use strict'; - var version = $.fn.jquery.split(' ')[0].split('.') - if ((version[0] < 2 && version[1] < 9) || (version[0] == 1 && version[1] == 9 && version[2] < 1) || (version[0] > 2)) { - throw new Error('Bootstrap\'s JavaScript requires jQuery version 1.9.1 or higher, but lower than version 3') - } -}(jQuery); - -/* ======================================================================== - * Bootstrap: transition.js v3.3.6 - * http://getbootstrap.com/javascript/#transitions - * ======================================================================== - * Copyright 2011-2015 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - * ======================================================================== */ - - -+function ($) { - 'use strict'; - - // CSS TRANSITION SUPPORT (Shoutout: http://www.modernizr.com/) - // ============================================================ - - function transitionEnd() { - var el = document.createElement('bootstrap') - - var transEndEventNames = { - WebkitTransition : 'webkitTransitionEnd', - MozTransition : 'transitionend', - OTransition : 'oTransitionEnd otransitionend', - transition : 'transitionend' - } - - for (var name in transEndEventNames) { - if (el.style[name] !== undefined) { - return { end: transEndEventNames[name] } - } - } - - return false // explicit for ie8 ( ._.) - } - - // http://blog.alexmaccaw.com/css-transitions - $.fn.emulateTransitionEnd = function (duration) { - var called = false - var $el = this - $(this).one('bsTransitionEnd', function () { called = true }) - var callback = function () { if (!called) $($el).trigger($.support.transition.end) } - setTimeout(callback, duration) - return this - } - - $(function () { - $.support.transition = transitionEnd() - - if (!$.support.transition) return - - $.event.special.bsTransitionEnd = { - bindType: $.support.transition.end, - delegateType: $.support.transition.end, - handle: function (e) { - if ($(e.target).is(this)) return e.handleObj.handler.apply(this, arguments) - } - } - }) - -}(jQuery); - -/* ======================================================================== - * Bootstrap: alert.js v3.3.6 - * http://getbootstrap.com/javascript/#alerts - * ======================================================================== - * Copyright 2011-2015 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - * ======================================================================== */ - - -+function ($) { - 'use strict'; - - // ALERT CLASS DEFINITION - // ====================== - - var dismiss = '[data-dismiss="alert"]' - var Alert = function (el) { - $(el).on('click', dismiss, this.close) - } - - Alert.VERSION = '3.3.6' - - Alert.TRANSITION_DURATION = 150 - - Alert.prototype.close = function (e) { - var $this = $(this) - var selector = $this.attr('data-target') - - if (!selector) { - selector = $this.attr('href') - selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7 - } - - var $parent = $(selector) - - if (e) e.preventDefault() - - if (!$parent.length) { - $parent = $this.closest('.alert') - } - - $parent.trigger(e = $.Event('close.bs.alert')) - - if (e.isDefaultPrevented()) return - - $parent.removeClass('in') - - function removeElement() { - // detach from parent, fire event then clean up data - $parent.detach().trigger('closed.bs.alert').remove() - } - - $.support.transition && $parent.hasClass('fade') ? - $parent - .one('bsTransitionEnd', removeElement) - .emulateTransitionEnd(Alert.TRANSITION_DURATION) : - removeElement() - } - - - // ALERT PLUGIN DEFINITION - // ======================= - - function Plugin(option) { - return this.each(function () { - var $this = $(this) - var data = $this.data('bs.alert') - - if (!data) $this.data('bs.alert', (data = new Alert(this))) - if (typeof option == 'string') data[option].call($this) - }) - } - - var old = $.fn.alert - - $.fn.alert = Plugin - $.fn.alert.Constructor = Alert - - - // ALERT NO CONFLICT - // ================= - - $.fn.alert.noConflict = function () { - $.fn.alert = old - return this - } - - - // ALERT DATA-API - // ============== - - $(document).on('click.bs.alert.data-api', dismiss, Alert.prototype.close) - -}(jQuery); - -/* ======================================================================== - * Bootstrap: button.js v3.3.6 - * http://getbootstrap.com/javascript/#buttons - * ======================================================================== - * Copyright 2011-2015 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - * ======================================================================== */ - - -+function ($) { - 'use strict'; - - // BUTTON PUBLIC CLASS DEFINITION - // ============================== - - var Button = function (element, options) { - this.$element = $(element) - this.options = $.extend({}, Button.DEFAULTS, options) - this.isLoading = false - } - - Button.VERSION = '3.3.6' - - Button.DEFAULTS = { - loadingText: 'loading...' - } - - Button.prototype.setState = function (state) { - var d = 'disabled' - var $el = this.$element - var val = $el.is('input') ? 'val' : 'html' - var data = $el.data() - - state += 'Text' - - if (data.resetText == null) $el.data('resetText', $el[val]()) - - // push to event loop to allow forms to submit - setTimeout($.proxy(function () { - $el[val](data[state] == null ? this.options[state] : data[state]) - - if (state == 'loadingText') { - this.isLoading = true - $el.addClass(d).attr(d, d) - } else if (this.isLoading) { - this.isLoading = false - $el.removeClass(d).removeAttr(d) - } - }, this), 0) - } - - Button.prototype.toggle = function () { - var changed = true - var $parent = this.$element.closest('[data-toggle="buttons"]') - - if ($parent.length) { - var $input = this.$element.find('input') - if ($input.prop('type') == 'radio') { - if ($input.prop('checked')) changed = false - $parent.find('.active').removeClass('active') - this.$element.addClass('active') - } else if ($input.prop('type') == 'checkbox') { - if (($input.prop('checked')) !== this.$element.hasClass('active')) changed = false - this.$element.toggleClass('active') - } - $input.prop('checked', this.$element.hasClass('active')) - if (changed) $input.trigger('change') - } else { - this.$element.attr('aria-pressed', !this.$element.hasClass('active')) - this.$element.toggleClass('active') - } - } - - - // BUTTON PLUGIN DEFINITION - // ======================== - - function Plugin(option) { - return this.each(function () { - var $this = $(this) - var data = $this.data('bs.button') - var options = typeof option == 'object' && option - - if (!data) $this.data('bs.button', (data = new Button(this, options))) - - if (option == 'toggle') data.toggle() - else if (option) data.setState(option) - }) - } - - var old = $.fn.button - - $.fn.button = Plugin - $.fn.button.Constructor = Button - - - // BUTTON NO CONFLICT - // ================== - - $.fn.button.noConflict = function () { - $.fn.button = old - return this - } - - - // BUTTON DATA-API - // =============== - - $(document) - .on('click.bs.button.data-api', '[data-toggle^="button"]', function (e) { - var $btn = $(e.target) - if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn') - Plugin.call($btn, 'toggle') - if (!($(e.target).is('input[type="radio"]') || $(e.target).is('input[type="checkbox"]'))) e.preventDefault() - }) - .on('focus.bs.button.data-api blur.bs.button.data-api', '[data-toggle^="button"]', function (e) { - $(e.target).closest('.btn').toggleClass('focus', /^focus(in)?$/.test(e.type)) - }) - -}(jQuery); - -/* ======================================================================== - * Bootstrap: carousel.js v3.3.6 - * http://getbootstrap.com/javascript/#carousel - * ======================================================================== - * Copyright 2011-2015 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - * ======================================================================== */ - - -+function ($) { - 'use strict'; - - // CAROUSEL CLASS DEFINITION - // ========================= - - var Carousel = function (element, options) { - this.$element = $(element) - this.$indicators = this.$element.find('.carousel-indicators') - this.options = options - this.paused = null - this.sliding = null - this.interval = null - this.$active = null - this.$items = null - - this.options.keyboard && this.$element.on('keydown.bs.carousel', $.proxy(this.keydown, this)) - - this.options.pause == 'hover' && !('ontouchstart' in document.documentElement) && this.$element - .on('mouseenter.bs.carousel', $.proxy(this.pause, this)) - .on('mouseleave.bs.carousel', $.proxy(this.cycle, this)) - } - - Carousel.VERSION = '3.3.6' - - Carousel.TRANSITION_DURATION = 600 - - Carousel.DEFAULTS = { - interval: 5000, - pause: 'hover', - wrap: true, - keyboard: true - } - - Carousel.prototype.keydown = function (e) { - if (/input|textarea/i.test(e.target.tagName)) return - switch (e.which) { - case 37: this.prev(); break - case 39: this.next(); break - default: return - } - - e.preventDefault() - } - - Carousel.prototype.cycle = function (e) { - e || (this.paused = false) - - this.interval && clearInterval(this.interval) - - this.options.interval - && !this.paused - && (this.interval = setInterval($.proxy(this.next, this), this.options.interval)) - - return this - } - - Carousel.prototype.getItemIndex = function (item) { - this.$items = item.parent().children('.item') - return this.$items.index(item || this.$active) - } - - Carousel.prototype.getItemForDirection = function (direction, active) { - var activeIndex = this.getItemIndex(active) - var willWrap = (direction == 'prev' && activeIndex === 0) - || (direction == 'next' && activeIndex == (this.$items.length - 1)) - if (willWrap && !this.options.wrap) return active - var delta = direction == 'prev' ? -1 : 1 - var itemIndex = (activeIndex + delta) % this.$items.length - return this.$items.eq(itemIndex) - } - - Carousel.prototype.to = function (pos) { - var that = this - var activeIndex = this.getItemIndex(this.$active = this.$element.find('.item.active')) - - if (pos > (this.$items.length - 1) || pos < 0) return - - if (this.sliding) return this.$element.one('slid.bs.carousel', function () { that.to(pos) }) // yes, "slid" - if (activeIndex == pos) return this.pause().cycle() - - return this.slide(pos > activeIndex ? 'next' : 'prev', this.$items.eq(pos)) - } - - Carousel.prototype.pause = function (e) { - e || (this.paused = true) - - if (this.$element.find('.next, .prev').length && $.support.transition) { - this.$element.trigger($.support.transition.end) - this.cycle(true) - } - - this.interval = clearInterval(this.interval) - - return this - } - - Carousel.prototype.next = function () { - if (this.sliding) return - return this.slide('next') - } - - Carousel.prototype.prev = function () { - if (this.sliding) return - return this.slide('prev') - } - - Carousel.prototype.slide = function (type, next) { - var $active = this.$element.find('.item.active') - var $next = next || this.getItemForDirection(type, $active) - var isCycling = this.interval - var direction = type == 'next' ? 'left' : 'right' - var that = this - - if ($next.hasClass('active')) return (this.sliding = false) - - var relatedTarget = $next[0] - var slideEvent = $.Event('slide.bs.carousel', { - relatedTarget: relatedTarget, - direction: direction - }) - this.$element.trigger(slideEvent) - if (slideEvent.isDefaultPrevented()) return - - this.sliding = true - - isCycling && this.pause() - - if (this.$indicators.length) { - this.$indicators.find('.active').removeClass('active') - var $nextIndicator = $(this.$indicators.children()[this.getItemIndex($next)]) - $nextIndicator && $nextIndicator.addClass('active') - } - - var slidEvent = $.Event('slid.bs.carousel', { relatedTarget: relatedTarget, direction: direction }) // yes, "slid" - if ($.support.transition && this.$element.hasClass('slide')) { - $next.addClass(type) - $next[0].offsetWidth // force reflow - $active.addClass(direction) - $next.addClass(direction) - $active - .one('bsTransitionEnd', function () { - $next.removeClass([type, direction].join(' ')).addClass('active') - $active.removeClass(['active', direction].join(' ')) - that.sliding = false - setTimeout(function () { - that.$element.trigger(slidEvent) - }, 0) - }) - .emulateTransitionEnd(Carousel.TRANSITION_DURATION) - } else { - $active.removeClass('active') - $next.addClass('active') - this.sliding = false - this.$element.trigger(slidEvent) - } - - isCycling && this.cycle() - - return this - } - - - // CAROUSEL PLUGIN DEFINITION - // ========================== - - function Plugin(option) { - return this.each(function () { - var $this = $(this) - var data = $this.data('bs.carousel') - var options = $.extend({}, Carousel.DEFAULTS, $this.data(), typeof option == 'object' && option) - var action = typeof option == 'string' ? option : options.slide - - if (!data) $this.data('bs.carousel', (data = new Carousel(this, options))) - if (typeof option == 'number') data.to(option) - else if (action) data[action]() - else if (options.interval) data.pause().cycle() - }) - } - - var old = $.fn.carousel - - $.fn.carousel = Plugin - $.fn.carousel.Constructor = Carousel - - - // CAROUSEL NO CONFLICT - // ==================== - - $.fn.carousel.noConflict = function () { - $.fn.carousel = old - return this - } - - - // CAROUSEL DATA-API - // ================= - - var clickHandler = function (e) { - var href - var $this = $(this) - var $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) // strip for ie7 - if (!$target.hasClass('carousel')) return - var options = $.extend({}, $target.data(), $this.data()) - var slideIndex = $this.attr('data-slide-to') - if (slideIndex) options.interval = false - - Plugin.call($target, options) - - if (slideIndex) { - $target.data('bs.carousel').to(slideIndex) - } - - e.preventDefault() - } - - $(document) - .on('click.bs.carousel.data-api', '[data-slide]', clickHandler) - .on('click.bs.carousel.data-api', '[data-slide-to]', clickHandler) - - $(window).on('load', function () { - $('[data-ride="carousel"]').each(function () { - var $carousel = $(this) - Plugin.call($carousel, $carousel.data()) - }) - }) - -}(jQuery); - -/* ======================================================================== - * Bootstrap: collapse.js v3.3.6 - * http://getbootstrap.com/javascript/#collapse - * ======================================================================== - * Copyright 2011-2015 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - * ======================================================================== */ - - -+function ($) { - 'use strict'; - - // COLLAPSE PUBLIC CLASS DEFINITION - // ================================ - - var Collapse = function (element, options) { - this.$element = $(element) - this.options = $.extend({}, Collapse.DEFAULTS, options) - this.$trigger = $('[data-toggle="collapse"][href="#' + element.id + '"],' + - '[data-toggle="collapse"][data-target="#' + element.id + '"]') - this.transitioning = null - - if (this.options.parent) { - this.$parent = this.getParent() - } else { - this.addAriaAndCollapsedClass(this.$element, this.$trigger) - } - - if (this.options.toggle) this.toggle() - } - - Collapse.VERSION = '3.3.6' - - Collapse.TRANSITION_DURATION = 350 - - Collapse.DEFAULTS = { - toggle: true - } - - Collapse.prototype.dimension = function () { - var hasWidth = this.$element.hasClass('width') - return hasWidth ? 'width' : 'height' - } - - Collapse.prototype.show = function () { - if (this.transitioning || this.$element.hasClass('in')) return - - var activesData - var actives = this.$parent && this.$parent.children('.panel').children('.in, .collapsing') - - if (actives && actives.length) { - activesData = actives.data('bs.collapse') - if (activesData && activesData.transitioning) return - } - - var startEvent = $.Event('show.bs.collapse') - this.$element.trigger(startEvent) - if (startEvent.isDefaultPrevented()) return - - if (actives && actives.length) { - Plugin.call(actives, 'hide') - activesData || actives.data('bs.collapse', null) - } - - var dimension = this.dimension() - - this.$element - .removeClass('collapse') - .addClass('collapsing')[dimension](0) - .attr('aria-expanded', true) - - this.$trigger - .removeClass('collapsed') - .attr('aria-expanded', true) - - this.transitioning = 1 - - var complete = function () { - this.$element - .removeClass('collapsing') - .addClass('collapse in')[dimension]('') - this.transitioning = 0 - this.$element - .trigger('shown.bs.collapse') - } - - if (!$.support.transition) return complete.call(this) - - var scrollSize = $.camelCase(['scroll', dimension].join('-')) - - this.$element - .one('bsTransitionEnd', $.proxy(complete, this)) - .emulateTransitionEnd(Collapse.TRANSITION_DURATION)[dimension](this.$element[0][scrollSize]) - } - - Collapse.prototype.hide = function () { - if (this.transitioning || !this.$element.hasClass('in')) return - - var startEvent = $.Event('hide.bs.collapse') - this.$element.trigger(startEvent) - if (startEvent.isDefaultPrevented()) return - - var dimension = this.dimension() - - this.$element[dimension](this.$element[dimension]())[0].offsetHeight - - this.$element - .addClass('collapsing') - .removeClass('collapse in') - .attr('aria-expanded', false) - - this.$trigger - .addClass('collapsed') - .attr('aria-expanded', false) - - this.transitioning = 1 - - var complete = function () { - this.transitioning = 0 - this.$element - .removeClass('collapsing') - .addClass('collapse') - .trigger('hidden.bs.collapse') - } - - if (!$.support.transition) return complete.call(this) - - this.$element - [dimension](0) - .one('bsTransitionEnd', $.proxy(complete, this)) - .emulateTransitionEnd(Collapse.TRANSITION_DURATION) - } - - Collapse.prototype.toggle = function () { - this[this.$element.hasClass('in') ? 'hide' : 'show']() - } - - Collapse.prototype.getParent = function () { - return $(this.options.parent) - .find('[data-toggle="collapse"][data-parent="' + this.options.parent + '"]') - .each($.proxy(function (i, element) { - var $element = $(element) - this.addAriaAndCollapsedClass(getTargetFromTrigger($element), $element) - }, this)) - .end() - } - - Collapse.prototype.addAriaAndCollapsedClass = function ($element, $trigger) { - var isOpen = $element.hasClass('in') - - $element.attr('aria-expanded', isOpen) - $trigger - .toggleClass('collapsed', !isOpen) - .attr('aria-expanded', isOpen) - } - - function getTargetFromTrigger($trigger) { - var href - var target = $trigger.attr('data-target') - || (href = $trigger.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') // strip for ie7 - - return $(target) - } - - - // COLLAPSE PLUGIN DEFINITION - // ========================== - - function Plugin(option) { - return this.each(function () { - var $this = $(this) - var data = $this.data('bs.collapse') - var options = $.extend({}, Collapse.DEFAULTS, $this.data(), typeof option == 'object' && option) - - if (!data && options.toggle && /show|hide/.test(option)) options.toggle = false - if (!data) $this.data('bs.collapse', (data = new Collapse(this, options))) - if (typeof option == 'string') data[option]() - }) - } - - var old = $.fn.collapse - - $.fn.collapse = Plugin - $.fn.collapse.Constructor = Collapse - - - // COLLAPSE NO CONFLICT - // ==================== - - $.fn.collapse.noConflict = function () { - $.fn.collapse = old - return this - } - - - // COLLAPSE DATA-API - // ================= - - $(document).on('click.bs.collapse.data-api', '[data-toggle="collapse"]', function (e) { - var $this = $(this) - - if (!$this.attr('data-target')) e.preventDefault() - - var $target = getTargetFromTrigger($this) - var data = $target.data('bs.collapse') - var option = data ? 'toggle' : $this.data() - - Plugin.call($target, option) - }) - -}(jQuery); - -/* ======================================================================== - * Bootstrap: dropdown.js v3.3.6 - * http://getbootstrap.com/javascript/#dropdowns - * ======================================================================== - * Copyright 2011-2015 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - * ======================================================================== */ - - -+function ($) { - 'use strict'; - - // DROPDOWN CLASS DEFINITION - // ========================= - - var backdrop = '.dropdown-backdrop' - var toggle = '[data-toggle="dropdown"]' - var Dropdown = function (element) { - $(element).on('click.bs.dropdown', this.toggle) - } - - Dropdown.VERSION = '3.3.6' - - function getParent($this) { - var selector = $this.attr('data-target') - - if (!selector) { - selector = $this.attr('href') - selector = selector && /#[A-Za-z]/.test(selector) && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7 - } - - var $parent = selector && $(selector) - - return $parent && $parent.length ? $parent : $this.parent() - } - - function clearMenus(e) { - if (e && e.which === 3) return - $(backdrop).remove() - $(toggle).each(function () { - var $this = $(this) - var $parent = getParent($this) - var relatedTarget = { relatedTarget: this } - - if (!$parent.hasClass('open')) return - - if (e && e.type == 'click' && /input|textarea/i.test(e.target.tagName) && $.contains($parent[0], e.target)) return - - $parent.trigger(e = $.Event('hide.bs.dropdown', relatedTarget)) - - if (e.isDefaultPrevented()) return - - $this.attr('aria-expanded', 'false') - $parent.removeClass('open').trigger($.Event('hidden.bs.dropdown', relatedTarget)) - }) - } - - Dropdown.prototype.toggle = function (e) { - var $this = $(this) - - if ($this.is('.disabled, :disabled')) return - - var $parent = getParent($this) - var isActive = $parent.hasClass('open') - - clearMenus() - - if (!isActive) { - if ('ontouchstart' in document.documentElement && !$parent.closest('.navbar-nav').length) { - // if mobile we use a backdrop because click events don't delegate - $(document.createElement('div')) - .addClass('dropdown-backdrop') - .insertAfter($(this)) - .on('click', clearMenus) - } - - var relatedTarget = { relatedTarget: this } - $parent.trigger(e = $.Event('show.bs.dropdown', relatedTarget)) - - if (e.isDefaultPrevented()) return - - $this - .trigger('focus') - .attr('aria-expanded', 'true') - - $parent - .toggleClass('open') - .trigger($.Event('shown.bs.dropdown', relatedTarget)) - } - - return false - } - - Dropdown.prototype.keydown = function (e) { - if (!/(38|40|27|32)/.test(e.which) || /input|textarea/i.test(e.target.tagName)) return - - var $this = $(this) - - e.preventDefault() - e.stopPropagation() - - if ($this.is('.disabled, :disabled')) return - - var $parent = getParent($this) - var isActive = $parent.hasClass('open') - - if (!isActive && e.which != 27 || isActive && e.which == 27) { - if (e.which == 27) $parent.find(toggle).trigger('focus') - return $this.trigger('click') - } - - var desc = ' li:not(.disabled):visible a' - var $items = $parent.find('.dropdown-menu' + desc) - - if (!$items.length) return - - var index = $items.index(e.target) - - if (e.which == 38 && index > 0) index-- // up - if (e.which == 40 && index < $items.length - 1) index++ // down - if (!~index) index = 0 - - $items.eq(index).trigger('focus') - } - - - // DROPDOWN PLUGIN DEFINITION - // ========================== - - function Plugin(option) { - return this.each(function () { - var $this = $(this) - var data = $this.data('bs.dropdown') - - if (!data) $this.data('bs.dropdown', (data = new Dropdown(this))) - if (typeof option == 'string') data[option].call($this) - }) - } - - var old = $.fn.dropdown - - $.fn.dropdown = Plugin - $.fn.dropdown.Constructor = Dropdown - - - // DROPDOWN NO CONFLICT - // ==================== - - $.fn.dropdown.noConflict = function () { - $.fn.dropdown = old - return this - } - - - // APPLY TO STANDARD DROPDOWN ELEMENTS - // =================================== - - $(document) - .on('click.bs.dropdown.data-api', clearMenus) - .on('click.bs.dropdown.data-api', '.dropdown form', function (e) { e.stopPropagation() }) - .on('click.bs.dropdown.data-api', toggle, Dropdown.prototype.toggle) - .on('keydown.bs.dropdown.data-api', toggle, Dropdown.prototype.keydown) - .on('keydown.bs.dropdown.data-api', '.dropdown-menu', Dropdown.prototype.keydown) - -}(jQuery); - -/* ======================================================================== - * Bootstrap: modal.js v3.3.6 - * http://getbootstrap.com/javascript/#modals - * ======================================================================== - * Copyright 2011-2015 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - * ======================================================================== */ - - -+function ($) { - 'use strict'; - - // MODAL CLASS DEFINITION - // ====================== - - var Modal = function (element, options) { - this.options = options - this.$body = $(document.body) - this.$element = $(element) - this.$dialog = this.$element.find('.modal-dialog') - this.$backdrop = null - this.isShown = null - this.originalBodyPad = null - this.scrollbarWidth = 0 - this.ignoreBackdropClick = false - - if (this.options.remote) { - this.$element - .find('.modal-content') - .load(this.options.remote, $.proxy(function () { - this.$element.trigger('loaded.bs.modal') - }, this)) - } - } - - Modal.VERSION = '3.3.6' - - Modal.TRANSITION_DURATION = 300 - Modal.BACKDROP_TRANSITION_DURATION = 150 - - Modal.DEFAULTS = { - backdrop: true, - keyboard: true, - show: true - } - - Modal.prototype.toggle = function (_relatedTarget) { - return this.isShown ? this.hide() : this.show(_relatedTarget) - } - - Modal.prototype.show = function (_relatedTarget) { - var that = this - var e = $.Event('show.bs.modal', { relatedTarget: _relatedTarget }) - - this.$element.trigger(e) - - if (this.isShown || e.isDefaultPrevented()) return - - this.isShown = true - - this.checkScrollbar() - this.setScrollbar() - this.$body.addClass('modal-open') - - this.escape() - this.resize() - - this.$element.on('click.dismiss.bs.modal', '[data-dismiss="modal"]', $.proxy(this.hide, this)) - - this.$dialog.on('mousedown.dismiss.bs.modal', function () { - that.$element.one('mouseup.dismiss.bs.modal', function (e) { - if ($(e.target).is(that.$element)) that.ignoreBackdropClick = true - }) - }) - - this.backdrop(function () { - var transition = $.support.transition && that.$element.hasClass('fade') - - if (!that.$element.parent().length) { - that.$element.appendTo(that.$body) // don't move modals dom position - } - - that.$element - .show() - .scrollTop(0) - - that.adjustDialog() - - if (transition) { - that.$element[0].offsetWidth // force reflow - } - - that.$element.addClass('in') - - that.enforceFocus() - - var e = $.Event('shown.bs.modal', { relatedTarget: _relatedTarget }) - - transition ? - that.$dialog // wait for modal to slide in - .one('bsTransitionEnd', function () { - that.$element.trigger('focus').trigger(e) - }) - .emulateTransitionEnd(Modal.TRANSITION_DURATION) : - that.$element.trigger('focus').trigger(e) - }) - } - - Modal.prototype.hide = function (e) { - if (e) e.preventDefault() - - e = $.Event('hide.bs.modal') - - this.$element.trigger(e) - - if (!this.isShown || e.isDefaultPrevented()) return - - this.isShown = false - - this.escape() - this.resize() - - $(document).off('focusin.bs.modal') - - this.$element - .removeClass('in') - .off('click.dismiss.bs.modal') - .off('mouseup.dismiss.bs.modal') - - this.$dialog.off('mousedown.dismiss.bs.modal') - - $.support.transition && this.$element.hasClass('fade') ? - this.$element - .one('bsTransitionEnd', $.proxy(this.hideModal, this)) - .emulateTransitionEnd(Modal.TRANSITION_DURATION) : - this.hideModal() - } - - Modal.prototype.enforceFocus = function () { - $(document) - .off('focusin.bs.modal') // guard against infinite focus loop - .on('focusin.bs.modal', $.proxy(function (e) { - if (this.$element[0] !== e.target && !this.$element.has(e.target).length) { - this.$element.trigger('focus') - } - }, this)) - } - - Modal.prototype.escape = function () { - if (this.isShown && this.options.keyboard) { - this.$element.on('keydown.dismiss.bs.modal', $.proxy(function (e) { - e.which == 27 && this.hide() - }, this)) - } else if (!this.isShown) { - this.$element.off('keydown.dismiss.bs.modal') - } - } - - Modal.prototype.resize = function () { - if (this.isShown) { - $(window).on('resize.bs.modal', $.proxy(this.handleUpdate, this)) - } else { - $(window).off('resize.bs.modal') - } - } - - Modal.prototype.hideModal = function () { - var that = this - this.$element.hide() - this.backdrop(function () { - that.$body.removeClass('modal-open') - that.resetAdjustments() - that.resetScrollbar() - that.$element.trigger('hidden.bs.modal') - }) - } - - Modal.prototype.removeBackdrop = function () { - this.$backdrop && this.$backdrop.remove() - this.$backdrop = null - } - - Modal.prototype.backdrop = function (callback) { - var that = this - var animate = this.$element.hasClass('fade') ? 'fade' : '' - - if (this.isShown && this.options.backdrop) { - var doAnimate = $.support.transition && animate - - this.$backdrop = $(document.createElement('div')) - .addClass('modal-backdrop ' + animate) - .appendTo(this.$body) - - this.$element.on('click.dismiss.bs.modal', $.proxy(function (e) { - if (this.ignoreBackdropClick) { - this.ignoreBackdropClick = false - return - } - if (e.target !== e.currentTarget) return - this.options.backdrop == 'static' - ? this.$element[0].focus() - : this.hide() - }, this)) - - if (doAnimate) this.$backdrop[0].offsetWidth // force reflow - - this.$backdrop.addClass('in') - - if (!callback) return - - doAnimate ? - this.$backdrop - .one('bsTransitionEnd', callback) - .emulateTransitionEnd(Modal.BACKDROP_TRANSITION_DURATION) : - callback() - - } else if (!this.isShown && this.$backdrop) { - this.$backdrop.removeClass('in') - - var callbackRemove = function () { - that.removeBackdrop() - callback && callback() - } - $.support.transition && this.$element.hasClass('fade') ? - this.$backdrop - .one('bsTransitionEnd', callbackRemove) - .emulateTransitionEnd(Modal.BACKDROP_TRANSITION_DURATION) : - callbackRemove() - - } else if (callback) { - callback() - } - } - - // these following methods are used to handle overflowing modals - - Modal.prototype.handleUpdate = function () { - this.adjustDialog() - } - - Modal.prototype.adjustDialog = function () { - var modalIsOverflowing = this.$element[0].scrollHeight > document.documentElement.clientHeight - - this.$element.css({ - paddingLeft: !this.bodyIsOverflowing && modalIsOverflowing ? this.scrollbarWidth : '', - paddingRight: this.bodyIsOverflowing && !modalIsOverflowing ? this.scrollbarWidth : '' - }) - } - - Modal.prototype.resetAdjustments = function () { - this.$element.css({ - paddingLeft: '', - paddingRight: '' - }) - } - - Modal.prototype.checkScrollbar = function () { - var fullWindowWidth = window.innerWidth - if (!fullWindowWidth) { // workaround for missing window.innerWidth in IE8 - var documentElementRect = document.documentElement.getBoundingClientRect() - fullWindowWidth = documentElementRect.right - Math.abs(documentElementRect.left) - } - this.bodyIsOverflowing = document.body.clientWidth < fullWindowWidth - this.scrollbarWidth = this.measureScrollbar() - } - - Modal.prototype.setScrollbar = function () { - var bodyPad = parseInt((this.$body.css('padding-right') || 0), 10) - this.originalBodyPad = document.body.style.paddingRight || '' - if (this.bodyIsOverflowing) this.$body.css('padding-right', bodyPad + this.scrollbarWidth) - } - - Modal.prototype.resetScrollbar = function () { - this.$body.css('padding-right', this.originalBodyPad) - } - - Modal.prototype.measureScrollbar = function () { // thx walsh - var scrollDiv = document.createElement('div') - scrollDiv.className = 'modal-scrollbar-measure' - this.$body.append(scrollDiv) - var scrollbarWidth = scrollDiv.offsetWidth - scrollDiv.clientWidth - this.$body[0].removeChild(scrollDiv) - return scrollbarWidth - } - - - // MODAL PLUGIN DEFINITION - // ======================= - - function Plugin(option, _relatedTarget) { - return this.each(function () { - var $this = $(this) - var data = $this.data('bs.modal') - var options = $.extend({}, Modal.DEFAULTS, $this.data(), typeof option == 'object' && option) - - if (!data) $this.data('bs.modal', (data = new Modal(this, options))) - if (typeof option == 'string') data[option](_relatedTarget) - else if (options.show) data.show(_relatedTarget) - }) - } - - var old = $.fn.modal - - $.fn.modal = Plugin - $.fn.modal.Constructor = Modal - - - // MODAL NO CONFLICT - // ================= - - $.fn.modal.noConflict = function () { - $.fn.modal = old - return this - } - - - // MODAL DATA-API - // ============== - - $(document).on('click.bs.modal.data-api', '[data-toggle="modal"]', function (e) { - var $this = $(this) - var href = $this.attr('href') - var $target = $($this.attr('data-target') || (href && href.replace(/.*(?=#[^\s]+$)/, ''))) // strip for ie7 - var option = $target.data('bs.modal') ? 'toggle' : $.extend({ remote: !/#/.test(href) && href }, $target.data(), $this.data()) - - if ($this.is('a')) e.preventDefault() - - $target.one('show.bs.modal', function (showEvent) { - if (showEvent.isDefaultPrevented()) return // only register focus restorer if modal will actually get shown - $target.one('hidden.bs.modal', function () { - $this.is(':visible') && $this.trigger('focus') - }) - }) - Plugin.call($target, option, this) - }) - -}(jQuery); - -/* ======================================================================== - * Bootstrap: tooltip.js v3.3.6 - * http://getbootstrap.com/javascript/#tooltip - * Inspired by the original jQuery.tipsy by Jason Frame - * ======================================================================== - * Copyright 2011-2015 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - * ======================================================================== */ - - -+function ($) { - 'use strict'; - - // TOOLTIP PUBLIC CLASS DEFINITION - // =============================== - - var Tooltip = function (element, options) { - this.type = null - this.options = null - this.enabled = null - this.timeout = null - this.hoverState = null - this.$element = null - this.inState = null - - this.init('tooltip', element, options) - } - - Tooltip.VERSION = '3.3.6' - - Tooltip.TRANSITION_DURATION = 150 - - Tooltip.DEFAULTS = { - animation: true, - placement: 'top', - selector: false, - template: '', - trigger: 'hover focus', - title: '', - delay: 0, - html: false, - container: false, - viewport: { - selector: 'body', - padding: 0 - } - } - - Tooltip.prototype.init = function (type, element, options) { - this.enabled = true - this.type = type - this.$element = $(element) - this.options = this.getOptions(options) - this.$viewport = this.options.viewport && $($.isFunction(this.options.viewport) ? this.options.viewport.call(this, this.$element) : (this.options.viewport.selector || this.options.viewport)) - this.inState = { click: false, hover: false, focus: false } - - if (this.$element[0] instanceof document.constructor && !this.options.selector) { - throw new Error('`selector` option must be specified when initializing ' + this.type + ' on the window.document object!') - } - - var triggers = this.options.trigger.split(' ') - - for (var i = triggers.length; i--;) { - var trigger = triggers[i] - - if (trigger == 'click') { - this.$element.on('click.' + this.type, this.options.selector, $.proxy(this.toggle, this)) - } else if (trigger != 'manual') { - var eventIn = trigger == 'hover' ? 'mouseenter' : 'focusin' - var eventOut = trigger == 'hover' ? 'mouseleave' : 'focusout' - - this.$element.on(eventIn + '.' + this.type, this.options.selector, $.proxy(this.enter, this)) - this.$element.on(eventOut + '.' + this.type, this.options.selector, $.proxy(this.leave, this)) - } - } - - this.options.selector ? - (this._options = $.extend({}, this.options, { trigger: 'manual', selector: '' })) : - this.fixTitle() - } - - Tooltip.prototype.getDefaults = function () { - return Tooltip.DEFAULTS - } - - Tooltip.prototype.getOptions = function (options) { - options = $.extend({}, this.getDefaults(), this.$element.data(), options) - - if (options.delay && typeof options.delay == 'number') { - options.delay = { - show: options.delay, - hide: options.delay - } - } - - return options - } - - Tooltip.prototype.getDelegateOptions = function () { - var options = {} - var defaults = this.getDefaults() - - this._options && $.each(this._options, function (key, value) { - if (defaults[key] != value) options[key] = value - }) - - return options - } - - Tooltip.prototype.enter = function (obj) { - var self = obj instanceof this.constructor ? - obj : $(obj.currentTarget).data('bs.' + this.type) - - if (!self) { - self = new this.constructor(obj.currentTarget, this.getDelegateOptions()) - $(obj.currentTarget).data('bs.' + this.type, self) - } - - if (obj instanceof $.Event) { - self.inState[obj.type == 'focusin' ? 'focus' : 'hover'] = true - } - - if (self.tip().hasClass('in') || self.hoverState == 'in') { - self.hoverState = 'in' - return - } - - clearTimeout(self.timeout) - - self.hoverState = 'in' - - if (!self.options.delay || !self.options.delay.show) return self.show() - - self.timeout = setTimeout(function () { - if (self.hoverState == 'in') self.show() - }, self.options.delay.show) - } - - Tooltip.prototype.isInStateTrue = function () { - for (var key in this.inState) { - if (this.inState[key]) return true - } - - return false - } - - Tooltip.prototype.leave = function (obj) { - var self = obj instanceof this.constructor ? - obj : $(obj.currentTarget).data('bs.' + this.type) - - if (!self) { - self = new this.constructor(obj.currentTarget, this.getDelegateOptions()) - $(obj.currentTarget).data('bs.' + this.type, self) - } - - if (obj instanceof $.Event) { - self.inState[obj.type == 'focusout' ? 'focus' : 'hover'] = false - } - - if (self.isInStateTrue()) return - - clearTimeout(self.timeout) - - self.hoverState = 'out' - - if (!self.options.delay || !self.options.delay.hide) return self.hide() - - self.timeout = setTimeout(function () { - if (self.hoverState == 'out') self.hide() - }, self.options.delay.hide) - } - - Tooltip.prototype.show = function () { - var e = $.Event('show.bs.' + this.type) - - if (this.hasContent() && this.enabled) { - this.$element.trigger(e) - - var inDom = $.contains(this.$element[0].ownerDocument.documentElement, this.$element[0]) - if (e.isDefaultPrevented() || !inDom) return - var that = this - - var $tip = this.tip() - - var tipId = this.getUID(this.type) - - this.setContent() - $tip.attr('id', tipId) - this.$element.attr('aria-describedby', tipId) - - if (this.options.animation) $tip.addClass('fade') - - var placement = typeof this.options.placement == 'function' ? - this.options.placement.call(this, $tip[0], this.$element[0]) : - this.options.placement - - var autoToken = /\s?auto?\s?/i - var autoPlace = autoToken.test(placement) - if (autoPlace) placement = placement.replace(autoToken, '') || 'top' - - $tip - .detach() - .css({ top: 0, left: 0, display: 'block' }) - .addClass(placement) - .data('bs.' + this.type, this) - - this.options.container ? $tip.appendTo(this.options.container) : $tip.insertAfter(this.$element) - this.$element.trigger('inserted.bs.' + this.type) - - var pos = this.getPosition() - var actualWidth = $tip[0].offsetWidth - var actualHeight = $tip[0].offsetHeight - - if (autoPlace) { - var orgPlacement = placement - var viewportDim = this.getPosition(this.$viewport) - - placement = placement == 'bottom' && pos.bottom + actualHeight > viewportDim.bottom ? 'top' : - placement == 'top' && pos.top - actualHeight < viewportDim.top ? 'bottom' : - placement == 'right' && pos.right + actualWidth > viewportDim.width ? 'left' : - placement == 'left' && pos.left - actualWidth < viewportDim.left ? 'right' : - placement - - $tip - .removeClass(orgPlacement) - .addClass(placement) - } - - var calculatedOffset = this.getCalculatedOffset(placement, pos, actualWidth, actualHeight) - - this.applyPlacement(calculatedOffset, placement) - - var complete = function () { - var prevHoverState = that.hoverState - that.$element.trigger('shown.bs.' + that.type) - that.hoverState = null - - if (prevHoverState == 'out') that.leave(that) - } - - $.support.transition && this.$tip.hasClass('fade') ? - $tip - .one('bsTransitionEnd', complete) - .emulateTransitionEnd(Tooltip.TRANSITION_DURATION) : - complete() - } - } - - Tooltip.prototype.applyPlacement = function (offset, placement) { - var $tip = this.tip() - var width = $tip[0].offsetWidth - var height = $tip[0].offsetHeight - - // manually read margins because getBoundingClientRect includes difference - var marginTop = parseInt($tip.css('margin-top'), 10) - var marginLeft = parseInt($tip.css('margin-left'), 10) - - // we must check for NaN for ie 8/9 - if (isNaN(marginTop)) marginTop = 0 - if (isNaN(marginLeft)) marginLeft = 0 - - offset.top += marginTop - offset.left += marginLeft - - // $.fn.offset doesn't round pixel values - // so we use setOffset directly with our own function B-0 - $.offset.setOffset($tip[0], $.extend({ - using: function (props) { - $tip.css({ - top: Math.round(props.top), - left: Math.round(props.left) - }) - } - }, offset), 0) - - $tip.addClass('in') - - // check to see if placing tip in new offset caused the tip to resize itself - var actualWidth = $tip[0].offsetWidth - var actualHeight = $tip[0].offsetHeight - - if (placement == 'top' && actualHeight != height) { - offset.top = offset.top + height - actualHeight - } - - var delta = this.getViewportAdjustedDelta(placement, offset, actualWidth, actualHeight) - - if (delta.left) offset.left += delta.left - else offset.top += delta.top - - var isVertical = /top|bottom/.test(placement) - var arrowDelta = isVertical ? delta.left * 2 - width + actualWidth : delta.top * 2 - height + actualHeight - var arrowOffsetPosition = isVertical ? 'offsetWidth' : 'offsetHeight' - - $tip.offset(offset) - this.replaceArrow(arrowDelta, $tip[0][arrowOffsetPosition], isVertical) - } - - Tooltip.prototype.replaceArrow = function (delta, dimension, isVertical) { - this.arrow() - .css(isVertical ? 'left' : 'top', 50 * (1 - delta / dimension) + '%') - .css(isVertical ? 'top' : 'left', '') - } - - Tooltip.prototype.setContent = function () { - var $tip = this.tip() - var title = this.getTitle() - - $tip.find('.tooltip-inner')[this.options.html ? 'html' : 'text'](title) - $tip.removeClass('fade in top bottom left right') - } - - Tooltip.prototype.hide = function (callback) { - var that = this - var $tip = $(this.$tip) - var e = $.Event('hide.bs.' + this.type) - - function complete() { - if (that.hoverState != 'in') $tip.detach() - that.$element - .removeAttr('aria-describedby') - .trigger('hidden.bs.' + that.type) - callback && callback() - } - - this.$element.trigger(e) - - if (e.isDefaultPrevented()) return - - $tip.removeClass('in') - - $.support.transition && $tip.hasClass('fade') ? - $tip - .one('bsTransitionEnd', complete) - .emulateTransitionEnd(Tooltip.TRANSITION_DURATION) : - complete() - - this.hoverState = null - - return this - } - - Tooltip.prototype.fixTitle = function () { - var $e = this.$element - if ($e.attr('title') || typeof $e.attr('data-original-title') != 'string') { - $e.attr('data-original-title', $e.attr('title') || '').attr('title', '') - } - } - - Tooltip.prototype.hasContent = function () { - return this.getTitle() - } - - Tooltip.prototype.getPosition = function ($element) { - $element = $element || this.$element - - var el = $element[0] - var isBody = el.tagName == 'BODY' - - var elRect = el.getBoundingClientRect() - if (elRect.width == null) { - // width and height are missing in IE8, so compute them manually; see https://github.com/twbs/bootstrap/issues/14093 - elRect = $.extend({}, elRect, { width: elRect.right - elRect.left, height: elRect.bottom - elRect.top }) - } - var elOffset = isBody ? { top: 0, left: 0 } : $element.offset() - var scroll = { scroll: isBody ? document.documentElement.scrollTop || document.body.scrollTop : $element.scrollTop() } - var outerDims = isBody ? { width: $(window).width(), height: $(window).height() } : null - - return $.extend({}, elRect, scroll, outerDims, elOffset) - } - - Tooltip.prototype.getCalculatedOffset = function (placement, pos, actualWidth, actualHeight) { - return placement == 'bottom' ? { top: pos.top + pos.height, left: pos.left + pos.width / 2 - actualWidth / 2 } : - placement == 'top' ? { top: pos.top - actualHeight, left: pos.left + pos.width / 2 - actualWidth / 2 } : - placement == 'left' ? { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth } : - /* placement == 'right' */ { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width } - - } - - Tooltip.prototype.getViewportAdjustedDelta = function (placement, pos, actualWidth, actualHeight) { - var delta = { top: 0, left: 0 } - if (!this.$viewport) return delta - - var viewportPadding = this.options.viewport && this.options.viewport.padding || 0 - var viewportDimensions = this.getPosition(this.$viewport) - - if (/right|left/.test(placement)) { - var topEdgeOffset = pos.top - viewportPadding - viewportDimensions.scroll - var bottomEdgeOffset = pos.top + viewportPadding - viewportDimensions.scroll + actualHeight - if (topEdgeOffset < viewportDimensions.top) { // top overflow - delta.top = viewportDimensions.top - topEdgeOffset - } else if (bottomEdgeOffset > viewportDimensions.top + viewportDimensions.height) { // bottom overflow - delta.top = viewportDimensions.top + viewportDimensions.height - bottomEdgeOffset - } - } else { - var leftEdgeOffset = pos.left - viewportPadding - var rightEdgeOffset = pos.left + viewportPadding + actualWidth - if (leftEdgeOffset < viewportDimensions.left) { // left overflow - delta.left = viewportDimensions.left - leftEdgeOffset - } else if (rightEdgeOffset > viewportDimensions.right) { // right overflow - delta.left = viewportDimensions.left + viewportDimensions.width - rightEdgeOffset - } - } - - return delta - } - - Tooltip.prototype.getTitle = function () { - var title - var $e = this.$element - var o = this.options - - title = $e.attr('data-original-title') - || (typeof o.title == 'function' ? o.title.call($e[0]) : o.title) - - return title - } - - Tooltip.prototype.getUID = function (prefix) { - do prefix += ~~(Math.random() * 1000000) - while (document.getElementById(prefix)) - return prefix - } - - Tooltip.prototype.tip = function () { - if (!this.$tip) { - this.$tip = $(this.options.template) - if (this.$tip.length != 1) { - throw new Error(this.type + ' `template` option must consist of exactly 1 top-level element!') - } - } - return this.$tip - } - - Tooltip.prototype.arrow = function () { - return (this.$arrow = this.$arrow || this.tip().find('.tooltip-arrow')) - } - - Tooltip.prototype.enable = function () { - this.enabled = true - } - - Tooltip.prototype.disable = function () { - this.enabled = false - } - - Tooltip.prototype.toggleEnabled = function () { - this.enabled = !this.enabled - } - - Tooltip.prototype.toggle = function (e) { - var self = this - if (e) { - self = $(e.currentTarget).data('bs.' + this.type) - if (!self) { - self = new this.constructor(e.currentTarget, this.getDelegateOptions()) - $(e.currentTarget).data('bs.' + this.type, self) - } - } - - if (e) { - self.inState.click = !self.inState.click - if (self.isInStateTrue()) self.enter(self) - else self.leave(self) - } else { - self.tip().hasClass('in') ? self.leave(self) : self.enter(self) - } - } - - Tooltip.prototype.destroy = function () { - var that = this - clearTimeout(this.timeout) - this.hide(function () { - that.$element.off('.' + that.type).removeData('bs.' + that.type) - if (that.$tip) { - that.$tip.detach() - } - that.$tip = null - that.$arrow = null - that.$viewport = null - }) - } - - - // TOOLTIP PLUGIN DEFINITION - // ========================= - - function Plugin(option) { - return this.each(function () { - var $this = $(this) - var data = $this.data('bs.tooltip') - var options = typeof option == 'object' && option - - if (!data && /destroy|hide/.test(option)) return - if (!data) $this.data('bs.tooltip', (data = new Tooltip(this, options))) - if (typeof option == 'string') data[option]() - }) - } - - var old = $.fn.tooltip - - $.fn.tooltip = Plugin - $.fn.tooltip.Constructor = Tooltip - - - // TOOLTIP NO CONFLICT - // =================== - - $.fn.tooltip.noConflict = function () { - $.fn.tooltip = old - return this - } - -}(jQuery); - -/* ======================================================================== - * Bootstrap: popover.js v3.3.6 - * http://getbootstrap.com/javascript/#popovers - * ======================================================================== - * Copyright 2011-2015 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - * ======================================================================== */ - - -+function ($) { - 'use strict'; - - // POPOVER PUBLIC CLASS DEFINITION - // =============================== - - var Popover = function (element, options) { - this.init('popover', element, options) - } - - if (!$.fn.tooltip) throw new Error('Popover requires tooltip.js') - - Popover.VERSION = '3.3.6' - - Popover.DEFAULTS = $.extend({}, $.fn.tooltip.Constructor.DEFAULTS, { - placement: 'right', - trigger: 'click', - content: '', - template: '' - }) - - - // NOTE: POPOVER EXTENDS tooltip.js - // ================================ - - Popover.prototype = $.extend({}, $.fn.tooltip.Constructor.prototype) - - Popover.prototype.constructor = Popover - - Popover.prototype.getDefaults = function () { - return Popover.DEFAULTS - } - - Popover.prototype.setContent = function () { - var $tip = this.tip() - var title = this.getTitle() - var content = this.getContent() - - $tip.find('.popover-title')[this.options.html ? 'html' : 'text'](title) - $tip.find('.popover-content').children().detach().end()[ // we use append for html objects to maintain js events - this.options.html ? (typeof content == 'string' ? 'html' : 'append') : 'text' - ](content) - - $tip.removeClass('fade top bottom left right in') - - // IE8 doesn't accept hiding via the `:empty` pseudo selector, we have to do - // this manually by checking the contents. - if (!$tip.find('.popover-title').html()) $tip.find('.popover-title').hide() - } - - Popover.prototype.hasContent = function () { - return this.getTitle() || this.getContent() - } - - Popover.prototype.getContent = function () { - var $e = this.$element - var o = this.options - - return $e.attr('data-content') - || (typeof o.content == 'function' ? - o.content.call($e[0]) : - o.content) - } - - Popover.prototype.arrow = function () { - return (this.$arrow = this.$arrow || this.tip().find('.arrow')) - } - - - // POPOVER PLUGIN DEFINITION - // ========================= - - function Plugin(option) { - return this.each(function () { - var $this = $(this) - var data = $this.data('bs.popover') - var options = typeof option == 'object' && option - - if (!data && /destroy|hide/.test(option)) return - if (!data) $this.data('bs.popover', (data = new Popover(this, options))) - if (typeof option == 'string') data[option]() - }) - } - - var old = $.fn.popover - - $.fn.popover = Plugin - $.fn.popover.Constructor = Popover - - - // POPOVER NO CONFLICT - // =================== - - $.fn.popover.noConflict = function () { - $.fn.popover = old - return this - } - -}(jQuery); - -/* ======================================================================== - * Bootstrap: scrollspy.js v3.3.6 - * http://getbootstrap.com/javascript/#scrollspy - * ======================================================================== - * Copyright 2011-2015 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - * ======================================================================== */ - - -+function ($) { - 'use strict'; - - // SCROLLSPY CLASS DEFINITION - // ========================== - - function ScrollSpy(element, options) { - this.$body = $(document.body) - this.$scrollElement = $(element).is(document.body) ? $(window) : $(element) - this.options = $.extend({}, ScrollSpy.DEFAULTS, options) - this.selector = (this.options.target || '') + ' .nav li > a' - this.offsets = [] - this.targets = [] - this.activeTarget = null - this.scrollHeight = 0 - - this.$scrollElement.on('scroll.bs.scrollspy', $.proxy(this.process, this)) - this.refresh() - this.process() - } - - ScrollSpy.VERSION = '3.3.6' - - ScrollSpy.DEFAULTS = { - offset: 10 - } - - ScrollSpy.prototype.getScrollHeight = function () { - return this.$scrollElement[0].scrollHeight || Math.max(this.$body[0].scrollHeight, document.documentElement.scrollHeight) - } - - ScrollSpy.prototype.refresh = function () { - var that = this - var offsetMethod = 'offset' - var offsetBase = 0 - - this.offsets = [] - this.targets = [] - this.scrollHeight = this.getScrollHeight() - - if (!$.isWindow(this.$scrollElement[0])) { - offsetMethod = 'position' - offsetBase = this.$scrollElement.scrollTop() - } - - this.$body - .find(this.selector) - .map(function () { - var $el = $(this) - var href = $el.data('target') || $el.attr('href') - var $href = /^#./.test(href) && $(href) - - return ($href - && $href.length - && $href.is(':visible') - && [[$href[offsetMethod]().top + offsetBase, href]]) || null - }) - .sort(function (a, b) { return a[0] - b[0] }) - .each(function () { - that.offsets.push(this[0]) - that.targets.push(this[1]) - }) - } - - ScrollSpy.prototype.process = function () { - var scrollTop = this.$scrollElement.scrollTop() + this.options.offset - var scrollHeight = this.getScrollHeight() - var maxScroll = this.options.offset + scrollHeight - this.$scrollElement.height() - var offsets = this.offsets - var targets = this.targets - var activeTarget = this.activeTarget - var i - - if (this.scrollHeight != scrollHeight) { - this.refresh() - } - - if (scrollTop >= maxScroll) { - return activeTarget != (i = targets[targets.length - 1]) && this.activate(i) - } - - if (activeTarget && scrollTop < offsets[0]) { - this.activeTarget = null - return this.clear() - } - - for (i = offsets.length; i--;) { - activeTarget != targets[i] - && scrollTop >= offsets[i] - && (offsets[i + 1] === undefined || scrollTop < offsets[i + 1]) - && this.activate(targets[i]) - } - } - - ScrollSpy.prototype.activate = function (target) { - this.activeTarget = target - - this.clear() - - var selector = this.selector + - '[data-target="' + target + '"],' + - this.selector + '[href="' + target + '"]' - - var active = $(selector) - .parents('li') - .addClass('active') - - if (active.parent('.dropdown-menu').length) { - active = active - .closest('li.dropdown') - .addClass('active') - } - - active.trigger('activate.bs.scrollspy') - } - - ScrollSpy.prototype.clear = function () { - $(this.selector) - .parentsUntil(this.options.target, '.active') - .removeClass('active') - } - - - // SCROLLSPY PLUGIN DEFINITION - // =========================== - - function Plugin(option) { - return this.each(function () { - var $this = $(this) - var data = $this.data('bs.scrollspy') - var options = typeof option == 'object' && option - - if (!data) $this.data('bs.scrollspy', (data = new ScrollSpy(this, options))) - if (typeof option == 'string') data[option]() - }) - } - - var old = $.fn.scrollspy - - $.fn.scrollspy = Plugin - $.fn.scrollspy.Constructor = ScrollSpy - - - // SCROLLSPY NO CONFLICT - // ===================== - - $.fn.scrollspy.noConflict = function () { - $.fn.scrollspy = old - return this - } - - - // SCROLLSPY DATA-API - // ================== - - $(window).on('load.bs.scrollspy.data-api', function () { - $('[data-spy="scroll"]').each(function () { - var $spy = $(this) - Plugin.call($spy, $spy.data()) - }) - }) - -}(jQuery); - -/* ======================================================================== - * Bootstrap: tab.js v3.3.6 - * http://getbootstrap.com/javascript/#tabs - * ======================================================================== - * Copyright 2011-2015 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - * ======================================================================== */ - - -+function ($) { - 'use strict'; - - // TAB CLASS DEFINITION - // ==================== - - var Tab = function (element) { - // jscs:disable requireDollarBeforejQueryAssignment - this.element = $(element) - // jscs:enable requireDollarBeforejQueryAssignment - } - - Tab.VERSION = '3.3.6' - - Tab.TRANSITION_DURATION = 150 - - Tab.prototype.show = function () { - var $this = this.element - var $ul = $this.closest('ul:not(.dropdown-menu)') - var selector = $this.data('target') - - if (!selector) { - selector = $this.attr('href') - selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7 - } - - if ($this.parent('li').hasClass('active')) return - - var $previous = $ul.find('.active:last a') - var hideEvent = $.Event('hide.bs.tab', { - relatedTarget: $this[0] - }) - var showEvent = $.Event('show.bs.tab', { - relatedTarget: $previous[0] - }) - - $previous.trigger(hideEvent) - $this.trigger(showEvent) - - if (showEvent.isDefaultPrevented() || hideEvent.isDefaultPrevented()) return - - var $target = $(selector) - - this.activate($this.closest('li'), $ul) - this.activate($target, $target.parent(), function () { - $previous.trigger({ - type: 'hidden.bs.tab', - relatedTarget: $this[0] - }) - $this.trigger({ - type: 'shown.bs.tab', - relatedTarget: $previous[0] - }) - }) - } - - Tab.prototype.activate = function (element, container, callback) { - var $active = container.find('> .active') - var transition = callback - && $.support.transition - && ($active.length && $active.hasClass('fade') || !!container.find('> .fade').length) - - function next() { - $active - .removeClass('active') - .find('> .dropdown-menu > .active') - .removeClass('active') - .end() - .find('[data-toggle="tab"]') - .attr('aria-expanded', false) - - element - .addClass('active') - .find('[data-toggle="tab"]') - .attr('aria-expanded', true) - - if (transition) { - element[0].offsetWidth // reflow for transition - element.addClass('in') - } else { - element.removeClass('fade') - } - - if (element.parent('.dropdown-menu').length) { - element - .closest('li.dropdown') - .addClass('active') - .end() - .find('[data-toggle="tab"]') - .attr('aria-expanded', true) - } - - callback && callback() - } - - $active.length && transition ? - $active - .one('bsTransitionEnd', next) - .emulateTransitionEnd(Tab.TRANSITION_DURATION) : - next() - - $active.removeClass('in') - } - - - // TAB PLUGIN DEFINITION - // ===================== - - function Plugin(option) { - return this.each(function () { - var $this = $(this) - var data = $this.data('bs.tab') - - if (!data) $this.data('bs.tab', (data = new Tab(this))) - if (typeof option == 'string') data[option]() - }) - } - - var old = $.fn.tab - - $.fn.tab = Plugin - $.fn.tab.Constructor = Tab - - - // TAB NO CONFLICT - // =============== - - $.fn.tab.noConflict = function () { - $.fn.tab = old - return this - } - - - // TAB DATA-API - // ============ - - var clickHandler = function (e) { - e.preventDefault() - Plugin.call($(this), 'show') - } - - $(document) - .on('click.bs.tab.data-api', '[data-toggle="tab"]', clickHandler) - .on('click.bs.tab.data-api', '[data-toggle="pill"]', clickHandler) - -}(jQuery); - -/* ======================================================================== - * Bootstrap: affix.js v3.3.6 - * http://getbootstrap.com/javascript/#affix - * ======================================================================== - * Copyright 2011-2015 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - * ======================================================================== */ - - -+function ($) { - 'use strict'; - - // AFFIX CLASS DEFINITION - // ====================== - - var Affix = function (element, options) { - this.options = $.extend({}, Affix.DEFAULTS, options) - - this.$target = $(this.options.target) - .on('scroll.bs.affix.data-api', $.proxy(this.checkPosition, this)) - .on('click.bs.affix.data-api', $.proxy(this.checkPositionWithEventLoop, this)) - - this.$element = $(element) - this.affixed = null - this.unpin = null - this.pinnedOffset = null - - this.checkPosition() - } - - Affix.VERSION = '3.3.6' - - Affix.RESET = 'affix affix-top affix-bottom' - - Affix.DEFAULTS = { - offset: 0, - target: window - } - - Affix.prototype.getState = function (scrollHeight, height, offsetTop, offsetBottom) { - var scrollTop = this.$target.scrollTop() - var position = this.$element.offset() - var targetHeight = this.$target.height() - - if (offsetTop != null && this.affixed == 'top') return scrollTop < offsetTop ? 'top' : false - - if (this.affixed == 'bottom') { - if (offsetTop != null) return (scrollTop + this.unpin <= position.top) ? false : 'bottom' - return (scrollTop + targetHeight <= scrollHeight - offsetBottom) ? false : 'bottom' - } - - var initializing = this.affixed == null - var colliderTop = initializing ? scrollTop : position.top - var colliderHeight = initializing ? targetHeight : height - - if (offsetTop != null && scrollTop <= offsetTop) return 'top' - if (offsetBottom != null && (colliderTop + colliderHeight >= scrollHeight - offsetBottom)) return 'bottom' - - return false - } - - Affix.prototype.getPinnedOffset = function () { - if (this.pinnedOffset) return this.pinnedOffset - this.$element.removeClass(Affix.RESET).addClass('affix') - var scrollTop = this.$target.scrollTop() - var position = this.$element.offset() - return (this.pinnedOffset = position.top - scrollTop) - } - - Affix.prototype.checkPositionWithEventLoop = function () { - setTimeout($.proxy(this.checkPosition, this), 1) - } - - Affix.prototype.checkPosition = function () { - if (!this.$element.is(':visible')) return - - var height = this.$element.height() - var offset = this.options.offset - var offsetTop = offset.top - var offsetBottom = offset.bottom - var scrollHeight = Math.max($(document).height(), $(document.body).height()) - - if (typeof offset != 'object') offsetBottom = offsetTop = offset - if (typeof offsetTop == 'function') offsetTop = offset.top(this.$element) - if (typeof offsetBottom == 'function') offsetBottom = offset.bottom(this.$element) - - var affix = this.getState(scrollHeight, height, offsetTop, offsetBottom) - - if (this.affixed != affix) { - if (this.unpin != null) this.$element.css('top', '') - - var affixType = 'affix' + (affix ? '-' + affix : '') - var e = $.Event(affixType + '.bs.affix') - - this.$element.trigger(e) - - if (e.isDefaultPrevented()) return - - this.affixed = affix - this.unpin = affix == 'bottom' ? this.getPinnedOffset() : null - - this.$element - .removeClass(Affix.RESET) - .addClass(affixType) - .trigger(affixType.replace('affix', 'affixed') + '.bs.affix') - } - - if (affix == 'bottom') { - this.$element.offset({ - top: scrollHeight - height - offsetBottom - }) - } - } - - - // AFFIX PLUGIN DEFINITION - // ======================= - - function Plugin(option) { - return this.each(function () { - var $this = $(this) - var data = $this.data('bs.affix') - var options = typeof option == 'object' && option - - if (!data) $this.data('bs.affix', (data = new Affix(this, options))) - if (typeof option == 'string') data[option]() - }) - } - - var old = $.fn.affix - - $.fn.affix = Plugin - $.fn.affix.Constructor = Affix - - - // AFFIX NO CONFLICT - // ================= - - $.fn.affix.noConflict = function () { - $.fn.affix = old - return this - } - - - // AFFIX DATA-API - // ============== - - $(window).on('load', function () { - $('[data-spy="affix"]').each(function () { - var $spy = $(this) - var data = $spy.data() - - data.offset = data.offset || {} - - if (data.offsetBottom != null) data.offset.bottom = data.offsetBottom - if (data.offsetTop != null) data.offset.top = data.offsetTop - - Plugin.call($spy, data) - }) - }) - -}(jQuery); diff --git a/themes/devopsdays-responsive/static/js/bootstrap.min.js b/themes/devopsdays-responsive/static/js/bootstrap.min.js deleted file mode 100755 index e79c065134f..00000000000 --- a/themes/devopsdays-responsive/static/js/bootstrap.min.js +++ /dev/null @@ -1,7 +0,0 @@ -/*! - * Bootstrap v3.3.6 (http://getbootstrap.com) - * Copyright 2011-2015 Twitter, Inc. - * Licensed under the MIT license - */ -if("undefined"==typeof jQuery)throw new Error("Bootstrap's JavaScript requires jQuery");+function(a){"use strict";var b=a.fn.jquery.split(" ")[0].split(".");if(b[0]<2&&b[1]<9||1==b[0]&&9==b[1]&&b[2]<1||b[0]>2)throw new Error("Bootstrap's JavaScript requires jQuery version 1.9.1 or higher, but lower than version 3")}(jQuery),+function(a){"use strict";function b(){var a=document.createElement("bootstrap"),b={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};for(var c in b)if(void 0!==a.style[c])return{end:b[c]};return!1}a.fn.emulateTransitionEnd=function(b){var c=!1,d=this;a(this).one("bsTransitionEnd",function(){c=!0});var e=function(){c||a(d).trigger(a.support.transition.end)};return setTimeout(e,b),this},a(function(){a.support.transition=b(),a.support.transition&&(a.event.special.bsTransitionEnd={bindType:a.support.transition.end,delegateType:a.support.transition.end,handle:function(b){return a(b.target).is(this)?b.handleObj.handler.apply(this,arguments):void 0}})})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var c=a(this),e=c.data("bs.alert");e||c.data("bs.alert",e=new d(this)),"string"==typeof b&&e[b].call(c)})}var c='[data-dismiss="alert"]',d=function(b){a(b).on("click",c,this.close)};d.VERSION="3.3.6",d.TRANSITION_DURATION=150,d.prototype.close=function(b){function c(){g.detach().trigger("closed.bs.alert").remove()}var e=a(this),f=e.attr("data-target");f||(f=e.attr("href"),f=f&&f.replace(/.*(?=#[^\s]*$)/,""));var g=a(f);b&&b.preventDefault(),g.length||(g=e.closest(".alert")),g.trigger(b=a.Event("close.bs.alert")),b.isDefaultPrevented()||(g.removeClass("in"),a.support.transition&&g.hasClass("fade")?g.one("bsTransitionEnd",c).emulateTransitionEnd(d.TRANSITION_DURATION):c())};var e=a.fn.alert;a.fn.alert=b,a.fn.alert.Constructor=d,a.fn.alert.noConflict=function(){return a.fn.alert=e,this},a(document).on("click.bs.alert.data-api",c,d.prototype.close)}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.button"),f="object"==typeof b&&b;e||d.data("bs.button",e=new c(this,f)),"toggle"==b?e.toggle():b&&e.setState(b)})}var c=function(b,d){this.$element=a(b),this.options=a.extend({},c.DEFAULTS,d),this.isLoading=!1};c.VERSION="3.3.6",c.DEFAULTS={loadingText:"loading..."},c.prototype.setState=function(b){var c="disabled",d=this.$element,e=d.is("input")?"val":"html",f=d.data();b+="Text",null==f.resetText&&d.data("resetText",d[e]()),setTimeout(a.proxy(function(){d[e](null==f[b]?this.options[b]:f[b]),"loadingText"==b?(this.isLoading=!0,d.addClass(c).attr(c,c)):this.isLoading&&(this.isLoading=!1,d.removeClass(c).removeAttr(c))},this),0)},c.prototype.toggle=function(){var a=!0,b=this.$element.closest('[data-toggle="buttons"]');if(b.length){var c=this.$element.find("input");"radio"==c.prop("type")?(c.prop("checked")&&(a=!1),b.find(".active").removeClass("active"),this.$element.addClass("active")):"checkbox"==c.prop("type")&&(c.prop("checked")!==this.$element.hasClass("active")&&(a=!1),this.$element.toggleClass("active")),c.prop("checked",this.$element.hasClass("active")),a&&c.trigger("change")}else this.$element.attr("aria-pressed",!this.$element.hasClass("active")),this.$element.toggleClass("active")};var d=a.fn.button;a.fn.button=b,a.fn.button.Constructor=c,a.fn.button.noConflict=function(){return a.fn.button=d,this},a(document).on("click.bs.button.data-api",'[data-toggle^="button"]',function(c){var d=a(c.target);d.hasClass("btn")||(d=d.closest(".btn")),b.call(d,"toggle"),a(c.target).is('input[type="radio"]')||a(c.target).is('input[type="checkbox"]')||c.preventDefault()}).on("focus.bs.button.data-api blur.bs.button.data-api",'[data-toggle^="button"]',function(b){a(b.target).closest(".btn").toggleClass("focus",/^focus(in)?$/.test(b.type))})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.carousel"),f=a.extend({},c.DEFAULTS,d.data(),"object"==typeof b&&b),g="string"==typeof b?b:f.slide;e||d.data("bs.carousel",e=new c(this,f)),"number"==typeof b?e.to(b):g?e[g]():f.interval&&e.pause().cycle()})}var c=function(b,c){this.$element=a(b),this.$indicators=this.$element.find(".carousel-indicators"),this.options=c,this.paused=null,this.sliding=null,this.interval=null,this.$active=null,this.$items=null,this.options.keyboard&&this.$element.on("keydown.bs.carousel",a.proxy(this.keydown,this)),"hover"==this.options.pause&&!("ontouchstart"in document.documentElement)&&this.$element.on("mouseenter.bs.carousel",a.proxy(this.pause,this)).on("mouseleave.bs.carousel",a.proxy(this.cycle,this))};c.VERSION="3.3.6",c.TRANSITION_DURATION=600,c.DEFAULTS={interval:5e3,pause:"hover",wrap:!0,keyboard:!0},c.prototype.keydown=function(a){if(!/input|textarea/i.test(a.target.tagName)){switch(a.which){case 37:this.prev();break;case 39:this.next();break;default:return}a.preventDefault()}},c.prototype.cycle=function(b){return b||(this.paused=!1),this.interval&&clearInterval(this.interval),this.options.interval&&!this.paused&&(this.interval=setInterval(a.proxy(this.next,this),this.options.interval)),this},c.prototype.getItemIndex=function(a){return this.$items=a.parent().children(".item"),this.$items.index(a||this.$active)},c.prototype.getItemForDirection=function(a,b){var c=this.getItemIndex(b),d="prev"==a&&0===c||"next"==a&&c==this.$items.length-1;if(d&&!this.options.wrap)return b;var e="prev"==a?-1:1,f=(c+e)%this.$items.length;return this.$items.eq(f)},c.prototype.to=function(a){var b=this,c=this.getItemIndex(this.$active=this.$element.find(".item.active"));return a>this.$items.length-1||0>a?void 0:this.sliding?this.$element.one("slid.bs.carousel",function(){b.to(a)}):c==a?this.pause().cycle():this.slide(a>c?"next":"prev",this.$items.eq(a))},c.prototype.pause=function(b){return b||(this.paused=!0),this.$element.find(".next, .prev").length&&a.support.transition&&(this.$element.trigger(a.support.transition.end),this.cycle(!0)),this.interval=clearInterval(this.interval),this},c.prototype.next=function(){return this.sliding?void 0:this.slide("next")},c.prototype.prev=function(){return this.sliding?void 0:this.slide("prev")},c.prototype.slide=function(b,d){var e=this.$element.find(".item.active"),f=d||this.getItemForDirection(b,e),g=this.interval,h="next"==b?"left":"right",i=this;if(f.hasClass("active"))return this.sliding=!1;var j=f[0],k=a.Event("slide.bs.carousel",{relatedTarget:j,direction:h});if(this.$element.trigger(k),!k.isDefaultPrevented()){if(this.sliding=!0,g&&this.pause(),this.$indicators.length){this.$indicators.find(".active").removeClass("active");var l=a(this.$indicators.children()[this.getItemIndex(f)]);l&&l.addClass("active")}var m=a.Event("slid.bs.carousel",{relatedTarget:j,direction:h});return a.support.transition&&this.$element.hasClass("slide")?(f.addClass(b),f[0].offsetWidth,e.addClass(h),f.addClass(h),e.one("bsTransitionEnd",function(){f.removeClass([b,h].join(" ")).addClass("active"),e.removeClass(["active",h].join(" ")),i.sliding=!1,setTimeout(function(){i.$element.trigger(m)},0)}).emulateTransitionEnd(c.TRANSITION_DURATION)):(e.removeClass("active"),f.addClass("active"),this.sliding=!1,this.$element.trigger(m)),g&&this.cycle(),this}};var d=a.fn.carousel;a.fn.carousel=b,a.fn.carousel.Constructor=c,a.fn.carousel.noConflict=function(){return a.fn.carousel=d,this};var e=function(c){var d,e=a(this),f=a(e.attr("data-target")||(d=e.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,""));if(f.hasClass("carousel")){var g=a.extend({},f.data(),e.data()),h=e.attr("data-slide-to");h&&(g.interval=!1),b.call(f,g),h&&f.data("bs.carousel").to(h),c.preventDefault()}};a(document).on("click.bs.carousel.data-api","[data-slide]",e).on("click.bs.carousel.data-api","[data-slide-to]",e),a(window).on("load",function(){a('[data-ride="carousel"]').each(function(){var c=a(this);b.call(c,c.data())})})}(jQuery),+function(a){"use strict";function b(b){var c,d=b.attr("data-target")||(c=b.attr("href"))&&c.replace(/.*(?=#[^\s]+$)/,"");return a(d)}function c(b){return this.each(function(){var c=a(this),e=c.data("bs.collapse"),f=a.extend({},d.DEFAULTS,c.data(),"object"==typeof b&&b);!e&&f.toggle&&/show|hide/.test(b)&&(f.toggle=!1),e||c.data("bs.collapse",e=new d(this,f)),"string"==typeof b&&e[b]()})}var d=function(b,c){this.$element=a(b),this.options=a.extend({},d.DEFAULTS,c),this.$trigger=a('[data-toggle="collapse"][href="#'+b.id+'"],[data-toggle="collapse"][data-target="#'+b.id+'"]'),this.transitioning=null,this.options.parent?this.$parent=this.getParent():this.addAriaAndCollapsedClass(this.$element,this.$trigger),this.options.toggle&&this.toggle()};d.VERSION="3.3.6",d.TRANSITION_DURATION=350,d.DEFAULTS={toggle:!0},d.prototype.dimension=function(){var a=this.$element.hasClass("width");return a?"width":"height"},d.prototype.show=function(){if(!this.transitioning&&!this.$element.hasClass("in")){var b,e=this.$parent&&this.$parent.children(".panel").children(".in, .collapsing");if(!(e&&e.length&&(b=e.data("bs.collapse"),b&&b.transitioning))){var f=a.Event("show.bs.collapse");if(this.$element.trigger(f),!f.isDefaultPrevented()){e&&e.length&&(c.call(e,"hide"),b||e.data("bs.collapse",null));var g=this.dimension();this.$element.removeClass("collapse").addClass("collapsing")[g](0).attr("aria-expanded",!0),this.$trigger.removeClass("collapsed").attr("aria-expanded",!0),this.transitioning=1;var h=function(){this.$element.removeClass("collapsing").addClass("collapse in")[g](""),this.transitioning=0,this.$element.trigger("shown.bs.collapse")};if(!a.support.transition)return h.call(this);var i=a.camelCase(["scroll",g].join("-"));this.$element.one("bsTransitionEnd",a.proxy(h,this)).emulateTransitionEnd(d.TRANSITION_DURATION)[g](this.$element[0][i])}}}},d.prototype.hide=function(){if(!this.transitioning&&this.$element.hasClass("in")){var b=a.Event("hide.bs.collapse");if(this.$element.trigger(b),!b.isDefaultPrevented()){var c=this.dimension();this.$element[c](this.$element[c]())[0].offsetHeight,this.$element.addClass("collapsing").removeClass("collapse in").attr("aria-expanded",!1),this.$trigger.addClass("collapsed").attr("aria-expanded",!1),this.transitioning=1;var e=function(){this.transitioning=0,this.$element.removeClass("collapsing").addClass("collapse").trigger("hidden.bs.collapse")};return a.support.transition?void this.$element[c](0).one("bsTransitionEnd",a.proxy(e,this)).emulateTransitionEnd(d.TRANSITION_DURATION):e.call(this)}}},d.prototype.toggle=function(){this[this.$element.hasClass("in")?"hide":"show"]()},d.prototype.getParent=function(){return a(this.options.parent).find('[data-toggle="collapse"][data-parent="'+this.options.parent+'"]').each(a.proxy(function(c,d){var e=a(d);this.addAriaAndCollapsedClass(b(e),e)},this)).end()},d.prototype.addAriaAndCollapsedClass=function(a,b){var c=a.hasClass("in");a.attr("aria-expanded",c),b.toggleClass("collapsed",!c).attr("aria-expanded",c)};var e=a.fn.collapse;a.fn.collapse=c,a.fn.collapse.Constructor=d,a.fn.collapse.noConflict=function(){return a.fn.collapse=e,this},a(document).on("click.bs.collapse.data-api",'[data-toggle="collapse"]',function(d){var e=a(this);e.attr("data-target")||d.preventDefault();var f=b(e),g=f.data("bs.collapse"),h=g?"toggle":e.data();c.call(f,h)})}(jQuery),+function(a){"use strict";function b(b){var c=b.attr("data-target");c||(c=b.attr("href"),c=c&&/#[A-Za-z]/.test(c)&&c.replace(/.*(?=#[^\s]*$)/,""));var d=c&&a(c);return d&&d.length?d:b.parent()}function c(c){c&&3===c.which||(a(e).remove(),a(f).each(function(){var d=a(this),e=b(d),f={relatedTarget:this};e.hasClass("open")&&(c&&"click"==c.type&&/input|textarea/i.test(c.target.tagName)&&a.contains(e[0],c.target)||(e.trigger(c=a.Event("hide.bs.dropdown",f)),c.isDefaultPrevented()||(d.attr("aria-expanded","false"),e.removeClass("open").trigger(a.Event("hidden.bs.dropdown",f)))))}))}function d(b){return this.each(function(){var c=a(this),d=c.data("bs.dropdown");d||c.data("bs.dropdown",d=new g(this)),"string"==typeof b&&d[b].call(c)})}var e=".dropdown-backdrop",f='[data-toggle="dropdown"]',g=function(b){a(b).on("click.bs.dropdown",this.toggle)};g.VERSION="3.3.6",g.prototype.toggle=function(d){var e=a(this);if(!e.is(".disabled, :disabled")){var f=b(e),g=f.hasClass("open");if(c(),!g){"ontouchstart"in document.documentElement&&!f.closest(".navbar-nav").length&&a(document.createElement("div")).addClass("dropdown-backdrop").insertAfter(a(this)).on("click",c);var h={relatedTarget:this};if(f.trigger(d=a.Event("show.bs.dropdown",h)),d.isDefaultPrevented())return;e.trigger("focus").attr("aria-expanded","true"),f.toggleClass("open").trigger(a.Event("shown.bs.dropdown",h))}return!1}},g.prototype.keydown=function(c){if(/(38|40|27|32)/.test(c.which)&&!/input|textarea/i.test(c.target.tagName)){var d=a(this);if(c.preventDefault(),c.stopPropagation(),!d.is(".disabled, :disabled")){var e=b(d),g=e.hasClass("open");if(!g&&27!=c.which||g&&27==c.which)return 27==c.which&&e.find(f).trigger("focus"),d.trigger("click");var h=" li:not(.disabled):visible a",i=e.find(".dropdown-menu"+h);if(i.length){var j=i.index(c.target);38==c.which&&j>0&&j--,40==c.which&&jdocument.documentElement.clientHeight;this.$element.css({paddingLeft:!this.bodyIsOverflowing&&a?this.scrollbarWidth:"",paddingRight:this.bodyIsOverflowing&&!a?this.scrollbarWidth:""})},c.prototype.resetAdjustments=function(){this.$element.css({paddingLeft:"",paddingRight:""})},c.prototype.checkScrollbar=function(){var a=window.innerWidth;if(!a){var b=document.documentElement.getBoundingClientRect();a=b.right-Math.abs(b.left)}this.bodyIsOverflowing=document.body.clientWidth
      ',trigger:"hover focus",title:"",delay:0,html:!1,container:!1,viewport:{selector:"body",padding:0}},c.prototype.init=function(b,c,d){if(this.enabled=!0,this.type=b,this.$element=a(c),this.options=this.getOptions(d),this.$viewport=this.options.viewport&&a(a.isFunction(this.options.viewport)?this.options.viewport.call(this,this.$element):this.options.viewport.selector||this.options.viewport),this.inState={click:!1,hover:!1,focus:!1},this.$element[0]instanceof document.constructor&&!this.options.selector)throw new Error("`selector` option must be specified when initializing "+this.type+" on the window.document object!");for(var e=this.options.trigger.split(" "),f=e.length;f--;){var g=e[f];if("click"==g)this.$element.on("click."+this.type,this.options.selector,a.proxy(this.toggle,this));else if("manual"!=g){var h="hover"==g?"mouseenter":"focusin",i="hover"==g?"mouseleave":"focusout";this.$element.on(h+"."+this.type,this.options.selector,a.proxy(this.enter,this)),this.$element.on(i+"."+this.type,this.options.selector,a.proxy(this.leave,this))}}this.options.selector?this._options=a.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},c.prototype.getDefaults=function(){return c.DEFAULTS},c.prototype.getOptions=function(b){return b=a.extend({},this.getDefaults(),this.$element.data(),b),b.delay&&"number"==typeof b.delay&&(b.delay={show:b.delay,hide:b.delay}),b},c.prototype.getDelegateOptions=function(){var b={},c=this.getDefaults();return this._options&&a.each(this._options,function(a,d){c[a]!=d&&(b[a]=d)}),b},c.prototype.enter=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget).data("bs."+this.type);return c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c)),b instanceof a.Event&&(c.inState["focusin"==b.type?"focus":"hover"]=!0),c.tip().hasClass("in")||"in"==c.hoverState?void(c.hoverState="in"):(clearTimeout(c.timeout),c.hoverState="in",c.options.delay&&c.options.delay.show?void(c.timeout=setTimeout(function(){"in"==c.hoverState&&c.show()},c.options.delay.show)):c.show())},c.prototype.isInStateTrue=function(){for(var a in this.inState)if(this.inState[a])return!0;return!1},c.prototype.leave=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget).data("bs."+this.type);return c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c)),b instanceof a.Event&&(c.inState["focusout"==b.type?"focus":"hover"]=!1),c.isInStateTrue()?void 0:(clearTimeout(c.timeout),c.hoverState="out",c.options.delay&&c.options.delay.hide?void(c.timeout=setTimeout(function(){"out"==c.hoverState&&c.hide()},c.options.delay.hide)):c.hide())},c.prototype.show=function(){var b=a.Event("show.bs."+this.type);if(this.hasContent()&&this.enabled){this.$element.trigger(b);var d=a.contains(this.$element[0].ownerDocument.documentElement,this.$element[0]);if(b.isDefaultPrevented()||!d)return;var e=this,f=this.tip(),g=this.getUID(this.type);this.setContent(),f.attr("id",g),this.$element.attr("aria-describedby",g),this.options.animation&&f.addClass("fade");var h="function"==typeof this.options.placement?this.options.placement.call(this,f[0],this.$element[0]):this.options.placement,i=/\s?auto?\s?/i,j=i.test(h);j&&(h=h.replace(i,"")||"top"),f.detach().css({top:0,left:0,display:"block"}).addClass(h).data("bs."+this.type,this),this.options.container?f.appendTo(this.options.container):f.insertAfter(this.$element),this.$element.trigger("inserted.bs."+this.type);var k=this.getPosition(),l=f[0].offsetWidth,m=f[0].offsetHeight;if(j){var n=h,o=this.getPosition(this.$viewport);h="bottom"==h&&k.bottom+m>o.bottom?"top":"top"==h&&k.top-mo.width?"left":"left"==h&&k.left-lg.top+g.height&&(e.top=g.top+g.height-i)}else{var j=b.left-f,k=b.left+f+c;jg.right&&(e.left=g.left+g.width-k)}return e},c.prototype.getTitle=function(){var a,b=this.$element,c=this.options;return a=b.attr("data-original-title")||("function"==typeof c.title?c.title.call(b[0]):c.title)},c.prototype.getUID=function(a){do a+=~~(1e6*Math.random());while(document.getElementById(a));return a},c.prototype.tip=function(){if(!this.$tip&&(this.$tip=a(this.options.template),1!=this.$tip.length))throw new Error(this.type+" `template` option must consist of exactly 1 top-level element!");return this.$tip},c.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".tooltip-arrow")},c.prototype.enable=function(){this.enabled=!0},c.prototype.disable=function(){this.enabled=!1},c.prototype.toggleEnabled=function(){this.enabled=!this.enabled},c.prototype.toggle=function(b){var c=this;b&&(c=a(b.currentTarget).data("bs."+this.type),c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c))),b?(c.inState.click=!c.inState.click,c.isInStateTrue()?c.enter(c):c.leave(c)):c.tip().hasClass("in")?c.leave(c):c.enter(c)},c.prototype.destroy=function(){var a=this;clearTimeout(this.timeout),this.hide(function(){a.$element.off("."+a.type).removeData("bs."+a.type),a.$tip&&a.$tip.detach(),a.$tip=null,a.$arrow=null,a.$viewport=null})};var d=a.fn.tooltip;a.fn.tooltip=b,a.fn.tooltip.Constructor=c,a.fn.tooltip.noConflict=function(){return a.fn.tooltip=d,this}}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.popover"),f="object"==typeof b&&b;(e||!/destroy|hide/.test(b))&&(e||d.data("bs.popover",e=new c(this,f)),"string"==typeof b&&e[b]())})}var c=function(a,b){this.init("popover",a,b)};if(!a.fn.tooltip)throw new Error("Popover requires tooltip.js");c.VERSION="3.3.6",c.DEFAULTS=a.extend({},a.fn.tooltip.Constructor.DEFAULTS,{placement:"right",trigger:"click",content:"",template:''}),c.prototype=a.extend({},a.fn.tooltip.Constructor.prototype),c.prototype.constructor=c,c.prototype.getDefaults=function(){return c.DEFAULTS},c.prototype.setContent=function(){var a=this.tip(),b=this.getTitle(),c=this.getContent();a.find(".popover-title")[this.options.html?"html":"text"](b),a.find(".popover-content").children().detach().end()[this.options.html?"string"==typeof c?"html":"append":"text"](c),a.removeClass("fade top bottom left right in"),a.find(".popover-title").html()||a.find(".popover-title").hide()},c.prototype.hasContent=function(){return this.getTitle()||this.getContent()},c.prototype.getContent=function(){var a=this.$element,b=this.options;return a.attr("data-content")||("function"==typeof b.content?b.content.call(a[0]):b.content)},c.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".arrow")};var d=a.fn.popover;a.fn.popover=b,a.fn.popover.Constructor=c,a.fn.popover.noConflict=function(){return a.fn.popover=d,this}}(jQuery),+function(a){"use strict";function b(c,d){this.$body=a(document.body),this.$scrollElement=a(a(c).is(document.body)?window:c),this.options=a.extend({},b.DEFAULTS,d),this.selector=(this.options.target||"")+" .nav li > a",this.offsets=[],this.targets=[],this.activeTarget=null,this.scrollHeight=0,this.$scrollElement.on("scroll.bs.scrollspy",a.proxy(this.process,this)),this.refresh(),this.process()}function c(c){return this.each(function(){var d=a(this),e=d.data("bs.scrollspy"),f="object"==typeof c&&c;e||d.data("bs.scrollspy",e=new b(this,f)),"string"==typeof c&&e[c]()})}b.VERSION="3.3.6",b.DEFAULTS={offset:10},b.prototype.getScrollHeight=function(){return this.$scrollElement[0].scrollHeight||Math.max(this.$body[0].scrollHeight,document.documentElement.scrollHeight)},b.prototype.refresh=function(){var b=this,c="offset",d=0;this.offsets=[],this.targets=[],this.scrollHeight=this.getScrollHeight(),a.isWindow(this.$scrollElement[0])||(c="position",d=this.$scrollElement.scrollTop()),this.$body.find(this.selector).map(function(){var b=a(this),e=b.data("target")||b.attr("href"),f=/^#./.test(e)&&a(e);return f&&f.length&&f.is(":visible")&&[[f[c]().top+d,e]]||null}).sort(function(a,b){return a[0]-b[0]}).each(function(){b.offsets.push(this[0]),b.targets.push(this[1])})},b.prototype.process=function(){var a,b=this.$scrollElement.scrollTop()+this.options.offset,c=this.getScrollHeight(),d=this.options.offset+c-this.$scrollElement.height(),e=this.offsets,f=this.targets,g=this.activeTarget;if(this.scrollHeight!=c&&this.refresh(),b>=d)return g!=(a=f[f.length-1])&&this.activate(a);if(g&&b=e[a]&&(void 0===e[a+1]||b .dropdown-menu > .active").removeClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!1),b.addClass("active").find('[data-toggle="tab"]').attr("aria-expanded",!0),h?(b[0].offsetWidth,b.addClass("in")):b.removeClass("fade"),b.parent(".dropdown-menu").length&&b.closest("li.dropdown").addClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!0),e&&e()}var g=d.find("> .active"),h=e&&a.support.transition&&(g.length&&g.hasClass("fade")||!!d.find("> .fade").length);g.length&&h?g.one("bsTransitionEnd",f).emulateTransitionEnd(c.TRANSITION_DURATION):f(),g.removeClass("in")};var d=a.fn.tab;a.fn.tab=b,a.fn.tab.Constructor=c,a.fn.tab.noConflict=function(){return a.fn.tab=d,this};var e=function(c){c.preventDefault(),b.call(a(this),"show")};a(document).on("click.bs.tab.data-api",'[data-toggle="tab"]',e).on("click.bs.tab.data-api",'[data-toggle="pill"]',e)}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.affix"),f="object"==typeof b&&b;e||d.data("bs.affix",e=new c(this,f)),"string"==typeof b&&e[b]()})}var c=function(b,d){this.options=a.extend({},c.DEFAULTS,d),this.$target=a(this.options.target).on("scroll.bs.affix.data-api",a.proxy(this.checkPosition,this)).on("click.bs.affix.data-api",a.proxy(this.checkPositionWithEventLoop,this)),this.$element=a(b),this.affixed=null,this.unpin=null,this.pinnedOffset=null,this.checkPosition()};c.VERSION="3.3.6",c.RESET="affix affix-top affix-bottom",c.DEFAULTS={offset:0,target:window},c.prototype.getState=function(a,b,c,d){var e=this.$target.scrollTop(),f=this.$element.offset(),g=this.$target.height();if(null!=c&&"top"==this.affixed)return c>e?"top":!1;if("bottom"==this.affixed)return null!=c?e+this.unpin<=f.top?!1:"bottom":a-d>=e+g?!1:"bottom";var h=null==this.affixed,i=h?e:f.top,j=h?g:b;return null!=c&&c>=e?"top":null!=d&&i+j>=a-d?"bottom":!1},c.prototype.getPinnedOffset=function(){if(this.pinnedOffset)return this.pinnedOffset;this.$element.removeClass(c.RESET).addClass("affix");var a=this.$target.scrollTop(),b=this.$element.offset();return this.pinnedOffset=b.top-a},c.prototype.checkPositionWithEventLoop=function(){setTimeout(a.proxy(this.checkPosition,this),1)},c.prototype.checkPosition=function(){if(this.$element.is(":visible")){var b=this.$element.height(),d=this.options.offset,e=d.top,f=d.bottom,g=Math.max(a(document).height(),a(document.body).height());"object"!=typeof d&&(f=e=d),"function"==typeof e&&(e=d.top(this.$element)),"function"==typeof f&&(f=d.bottom(this.$element));var h=this.getState(g,b,e,f);if(this.affixed!=h){null!=this.unpin&&this.$element.css("top","");var i="affix"+(h?"-"+h:""),j=a.Event(i+".bs.affix");if(this.$element.trigger(j),j.isDefaultPrevented())return;this.affixed=h,this.unpin="bottom"==h?this.getPinnedOffset():null,this.$element.removeClass(c.RESET).addClass(i).trigger(i.replace("affix","affixed")+".bs.affix")}"bottom"==h&&this.$element.offset({top:g-b-f})}};var d=a.fn.affix;a.fn.affix=b,a.fn.affix.Constructor=c,a.fn.affix.noConflict=function(){return a.fn.affix=d,this},a(window).on("load",function(){a('[data-spy="affix"]').each(function(){var c=a(this),d=c.data();d.offset=d.offset||{},null!=d.offsetBottom&&(d.offset.bottom=d.offsetBottom),null!=d.offsetTop&&(d.offset.top=d.offsetTop),b.call(c,d)})})}(jQuery); \ No newline at end of file diff --git a/themes/devopsdays-responsive/static/js/googlemaps_label.js b/themes/devopsdays-responsive/static/js/googlemaps_label.js deleted file mode 100644 index 37954520394..00000000000 --- a/themes/devopsdays-responsive/static/js/googlemaps_label.js +++ /dev/null @@ -1,2 +0,0 @@ - -eval(function(p,a,c,k,e,r){e=function(c){return(c35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('8 t(a){2.3=a;2.6=X.1v("1V");2.6.4.L="R: 1g; 15: 1A;";2.p=X.1v("1V");2.p.4.L=2.6.4.L;2.p.23("2L","1Q w;");2.p.23("2w","1Q w;");2.v=X.1v("2o");2.v.4.L="R: 1g; z-2l: 2g; I: 16;";2.v.4.1b="-2a";2.v.4.1w="-2Y";2.v.2V="22://5.1X.1T/1R/1P/1M/2x.2v"}t.s=W 7.5.2n();t.s.2m=8(){r g=2;r l=w;r c=w;r o;r f;r i,12;r n;r d;r m=20;r h="29(22://5.1X.1T/1R/1P/1M/28.27)";r j=8(e){9(e.24){e.24()}e.2R=G;9(e.1Z){e.1Z()}};r k=8(){g.3.1W(2J)};2.1n().1S.S(2.6);2.1n().2D.S(2.p);2.1n().1S.S(2.v);2.1p=[7.5.q.M(2.p,"1N",8(e){9(g.3.N()||g.3.U()){2.4.19="1Y";7.5.q.B(g.3,"1N",e)}}),7.5.q.M(2.p,"1U",8(e){9((g.3.N()||g.3.U())&&!c){2.4.19=g.3.2r();7.5.q.B(g.3,"1U",e)}}),7.5.q.M(2.p,"1J",8(e){i=0;12=0;c=w;9(g.3.N()){l=G;2.4.19=h}9(g.3.N()||g.3.U()){7.5.q.B(g.3,"1J",e)}j(e)}),7.5.q.M(X,"1G",8(a){r b;9(l){l=w;g.p.4.19="1Y";7.5.q.B(g.3,"1G",a)}9(c){a.E=o;n=G;9(d){b=g.Q().1i(g.3.11());b.y+=m;g.3.J(g.Q().1E(b));2k{g.3.1W(7.5.2j.2i);2h(k,2f)}2e(e){}g.v.4.I="16"}g.3.T(f);c=w;7.5.q.B(g.3,"1D",a)}}),7.5.q.u(g.3.2d(),"2c",8(a){r b;9(l){a.E=W 7.5.2b(a.E.1d()-i,a.E.1c()-12);9(c){o=a.E;b=g.Q().1i(a.E);9(d){g.v.4.Y=b.x+"A";g.v.4.P=b.y+"A";g.v.4.I="";b.y-=m}g.3.J(g.Q().1E(b));9(d){g.p.4.P=(b.y+m)+"A"}7.5.q.B(g.3,"1C",a)}V{i=a.E.1d()-g.3.11().1d();12=a.E.1c()-g.3.11().1c();f=g.3.1a();g.3.T(1B);d=g.3.D("14");c=G;7.5.q.B(g.3,"1z",a)}}}),7.5.q.M(2.p,"1y",8(e){9(g.3.N()||g.3.U()){9(n){n=w}V{7.5.q.B(g.3,"1y",e);j(e)}}}),7.5.q.M(2.p,"1x",8(e){9(g.3.N()||g.3.U()){7.5.q.B(g.3,"1x",e);j(e)}}),7.5.q.u(2.3,"1z",8(a){9(!c){d=2.D("14")}}),7.5.q.u(2.3,"1C",8(a){9(!c){9(d){g.J(m);g.6.4.K=1B+(2.D("18")?-1:+1)}}}),7.5.q.u(2.3,"1D",8(a){9(!c){9(d){g.J(0)}}}),7.5.q.u(2.3,"2X",8(){g.J()}),7.5.q.u(2.3,"2W",8(){g.T()}),7.5.q.u(2.3,"2U",8(){g.17()}),7.5.q.u(2.3,"2T",8(){g.17()}),7.5.q.u(2.3,"2S",8(){g.1t()}),7.5.q.u(2.3,"2Q",8(){g.1f()}),7.5.q.u(2.3,"2P",8(){g.1e()}),7.5.q.u(2.3,"2O",8(){g.Z()}),7.5.q.u(2.3,"2M",8(){g.Z()})]};t.s.2K=8(){r i;2.6.1r.1h(2.6);2.p.1r.1h(2.p);2.v.1r.1h(2.v);26(i=0;i<2.1p.2I;i++){7.5.q.2G(2.1p[i])}};t.s.2F=8(){2.1f();2.1t();2.Z()};t.s.1f=8(){r a=2.3.D("1j");9(F a.2E==="H"){2.6.13=a;2.p.13=2.6.13}V{2.6.13="";2.6.S(a);a=a.2C(G);2.p.S(a)}};t.s.1t=8(){2.p.2B=2.3.2A()||""};t.s.Z=8(){r i,C;2.6.1o=2.3.D("1m");2.p.1o=2.6.1o;2.6.4.L="";2.p.4.L="";C=2.3.D("C");26(i 2z C){9(C.2y(i)){2.6.4[i]=C[i];2.p.4[i]=C[i]}}2.1L()};t.s.1L=8(){2.6.4.R="1g";2.6.4.15="1A";9(F 2.6.4.O!=="H"&&2.6.4.O!==""){2.6.4.1K="1O(O="+(2.6.4.O*2u)+")"}2.p.4.R=2.6.4.R;2.p.4.15=2.6.4.15;2.p.4.O=0.2H;2.p.4.1K="1O(O=1)";2.1e();2.J();2.17()};t.s.1e=8(){r a=2.3.D("1q");2.6.4.1b=-a.x+"A";2.6.4.1w=-a.y+"A";2.p.4.1b=-a.x+"A";2.p.4.1w=-a.y+"A"};t.s.J=8(a){r b=2.Q().1i(2.3.11());9(F a==="H"){a=0}2.6.4.Y=b.x+"A";2.6.4.P=(b.y-a)+"A";2.p.4.Y=2.6.4.Y;2.p.4.P=2.6.4.P;2.T()};t.s.T=8(){r a=(2.3.D("18")?-1:+1);9(F 2.3.1a()==="H"){2.6.4.K=2t(2.6.4.P,10)+a;2.p.4.K=2.6.4.K}V{2.6.4.K=2.3.1a()+a;2.p.4.K=2.6.4.K}};t.s.17=8(){9(2.3.D("1l")){2.6.4.I=2.3.2s()?"2N":"16"}V{2.6.4.I="16"}2.p.4.I=2.6.4.I};8 1k(a){a=a||{};a.1j=a.1j||"";a.1q=a.1q||W 7.5.2q(0,0);a.1m=a.1m||"2p";a.C=a.C||{};a.18=a.18||w;9(F a.1l==="H"){a.1l=G}9(F a.14==="H"){a.14=G}9(F a.21==="H"){a.21=G}9(F a.1I==="H"){a.1I=w}2.1H=W t(2);7.5.1s.25(2,1F)}1k.s=W 7.5.1s();1k.s.1u=8(a){7.5.1s.s.1u.25(2,1F);2.1H.1u(a)};',62,185,'||this|marker_|style|maps|labelDiv_|google|function|if||||||||||||||||eventDiv_|event|var|prototype|MarkerLabel_|addListener|crossDiv_|false||||px|trigger|labelStyle|get|latLng|typeof|true|undefined|display|setPosition|zIndex|cssText|addDomListener|getDraggable|opacity|top|getProjection|position|appendChild|setZIndex|getClickable|else|new|document|left|setStyles||getPosition|cLngOffset|innerHTML|raiseOnDrag|overflow|none|setVisible|labelInBackground|cursor|getZIndex|marginLeft|lng|lat|setAnchor|setContent|absolute|removeChild|fromLatLngToDivPixel|labelContent|MarkerWithLabel|labelVisible|labelClass|getPanes|className|listeners_|labelAnchor|parentNode|Marker|setTitle|setMap|createElement|marginTop|dblclick|click|dragstart|hidden|1000000|drag|dragend|fromDivPixelToLatLng|arguments|mouseup|label|draggable|mousedown|filter|setMandatoryStyles|mapfiles|mouseover|alpha|en_us|return|intl|overlayImage|com|mouseout|div|setAnimation|gstatic|pointer|stopPropagation||clickable|https|setAttribute|preventDefault|apply|for|cur|closedhand_8_8|url|8px|LatLng|mousemove|getMap|catch|1406|1000002|setTimeout|BOUNCE|Animation|try|index|onAdd|OverlayView|img|markerLabels|Point|getCursor|getVisible|parseInt|100|png|ondragstart|drag_cross_67_16|hasOwnProperty|in|getTitle|title|cloneNode|overlayMouseTarget|nodeType|draw|removeListener|01|length|null|onRemove|onselectstart|labelstyle_changed|block|labelclass_changed|labelanchor_changed|labelcontent_changed|cancelBubble|title_changed|labelvisible_changed|visible_changed|src|zindex_changed|position_changed|9px'.split('|'),0,{})) diff --git a/themes/devopsdays-responsive/static/js/moment.min.js b/themes/devopsdays-responsive/static/js/moment.min.js deleted file mode 100644 index 8e6aaa325a9..00000000000 --- a/themes/devopsdays-responsive/static/js/moment.min.js +++ /dev/null @@ -1,6 +0,0 @@ -//! moment.js -//! version : 2.3.1 -//! authors : Tim Wood, Iskren Chernev, Moment.js contributors -//! license : MIT -//! momentjs.com -(function(a){function b(a,b){return function(c){return i(a.call(this,c),b)}}function c(a,b){return function(c){return this.lang().ordinal(a.call(this,c),b)}}function d(){}function e(a){u(a),g(this,a)}function f(a){var b=o(a),c=b.year||0,d=b.month||0,e=b.week||0,f=b.day||0,g=b.hour||0,h=b.minute||0,i=b.second||0,j=b.millisecond||0;this._input=a,this._milliseconds=+j+1e3*i+6e4*h+36e5*g,this._days=+f+7*e,this._months=+d+12*c,this._data={},this._bubble()}function g(a,b){for(var c in b)b.hasOwnProperty(c)&&(a[c]=b[c]);return b.hasOwnProperty("toString")&&(a.toString=b.toString),b.hasOwnProperty("valueOf")&&(a.valueOf=b.valueOf),a}function h(a){return 0>a?Math.ceil(a):Math.floor(a)}function i(a,b){for(var c=a+"";c.lengthd;d++)(c&&a[d]!==b[d]||!c&&q(a[d])!==q(b[d]))&&g++;return g+f}function n(a){if(a){var b=a.toLowerCase().replace(/(.)s$/,"$1");a=Jb[a]||Kb[b]||b}return a}function o(a){var b,c,d={};for(c in a)a.hasOwnProperty(c)&&(b=n(c),b&&(d[b]=a[c]));return d}function p(b){var c,d;if(0===b.indexOf("week"))c=7,d="day";else{if(0!==b.indexOf("month"))return;c=12,d="month"}bb[b]=function(e,f){var g,h,i=bb.fn._lang[b],j=[];if("number"==typeof e&&(f=e,e=a),h=function(a){var b=bb().utc().set(d,a);return i.call(bb.fn._lang,b,e||"")},null!=f)return h(f);for(g=0;c>g;g++)j.push(h(g));return j}}function q(a){var b=+a,c=0;return 0!==b&&isFinite(b)&&(c=b>=0?Math.floor(b):Math.ceil(b)),c}function r(a,b){return new Date(Date.UTC(a,b+1,0)).getUTCDate()}function s(a){return t(a)?366:365}function t(a){return 0===a%4&&0!==a%100||0===a%400}function u(a){var b;a._a&&-2===a._pf.overflow&&(b=a._a[gb]<0||a._a[gb]>11?gb:a._a[hb]<1||a._a[hb]>r(a._a[fb],a._a[gb])?hb:a._a[ib]<0||a._a[ib]>23?ib:a._a[jb]<0||a._a[jb]>59?jb:a._a[kb]<0||a._a[kb]>59?kb:a._a[lb]<0||a._a[lb]>999?lb:-1,a._pf._overflowDayOfYear&&(fb>b||b>hb)&&(b=hb),a._pf.overflow=b)}function v(a){a._pf={empty:!1,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:!1,invalidMonth:null,invalidFormat:!1,userInvalidated:!1}}function w(a){return null==a._isValid&&(a._isValid=!isNaN(a._d.getTime())&&a._pf.overflow<0&&!a._pf.empty&&!a._pf.invalidMonth&&!a._pf.nullInput&&!a._pf.invalidFormat&&!a._pf.userInvalidated,a._strict&&(a._isValid=a._isValid&&0===a._pf.charsLeftOver&&0===a._pf.unusedTokens.length)),a._isValid}function x(a){return a?a.toLowerCase().replace("_","-"):a}function y(a,b){return b.abbr=a,mb[a]||(mb[a]=new d),mb[a].set(b),mb[a]}function z(a){delete mb[a]}function A(a){var b,c,d,e,f=0,g=function(a){if(!mb[a]&&nb)try{require("./lang/"+a)}catch(b){}return mb[a]};if(!a)return bb.fn._lang;if(!k(a)){if(c=g(a))return c;a=[a]}for(;f0;){if(c=g(e.slice(0,b).join("-")))return c;if(d&&d.length>=b&&m(e,d,!0)>=b-1)break;b--}f++}return bb.fn._lang}function B(a){return a.match(/\[[\s\S]/)?a.replace(/^\[|\]$/g,""):a.replace(/\\/g,"")}function C(a){var b,c,d=a.match(rb);for(b=0,c=d.length;c>b;b++)d[b]=Ob[d[b]]?Ob[d[b]]:B(d[b]);return function(e){var f="";for(b=0;c>b;b++)f+=d[b]instanceof Function?d[b].call(e,a):d[b];return f}}function D(a,b){return a.isValid()?(b=E(b,a.lang()),Lb[b]||(Lb[b]=C(b)),Lb[b](a)):a.lang().invalidDate()}function E(a,b){function c(a){return b.longDateFormat(a)||a}var d=5;for(sb.lastIndex=0;d>=0&&sb.test(a);)a=a.replace(sb,c),sb.lastIndex=0,d-=1;return a}function F(a,b){var c;switch(a){case"DDDD":return vb;case"YYYY":case"GGGG":case"gggg":return wb;case"YYYYY":case"GGGGG":case"ggggg":return xb;case"S":case"SS":case"SSS":case"DDD":return ub;case"MMM":case"MMMM":case"dd":case"ddd":case"dddd":return yb;case"a":case"A":return A(b._l)._meridiemParse;case"X":return Bb;case"Z":case"ZZ":return zb;case"T":return Ab;case"MM":case"DD":case"YY":case"GG":case"gg":case"HH":case"hh":case"mm":case"ss":case"M":case"D":case"d":case"H":case"h":case"m":case"s":case"w":case"ww":case"W":case"WW":case"e":case"E":return tb;default:return c=new RegExp(N(M(a.replace("\\","")),"i"))}}function G(a){var b=(zb.exec(a)||[])[0],c=(b+"").match(Gb)||["-",0,0],d=+(60*c[1])+q(c[2]);return"+"===c[0]?-d:d}function H(a,b,c){var d,e=c._a;switch(a){case"M":case"MM":null!=b&&(e[gb]=q(b)-1);break;case"MMM":case"MMMM":d=A(c._l).monthsParse(b),null!=d?e[gb]=d:c._pf.invalidMonth=b;break;case"D":case"DD":null!=b&&(e[hb]=q(b));break;case"DDD":case"DDDD":null!=b&&(c._dayOfYear=q(b));break;case"YY":e[fb]=q(b)+(q(b)>68?1900:2e3);break;case"YYYY":case"YYYYY":e[fb]=q(b);break;case"a":case"A":c._isPm=A(c._l).isPM(b);break;case"H":case"HH":case"h":case"hh":e[ib]=q(b);break;case"m":case"mm":e[jb]=q(b);break;case"s":case"ss":e[kb]=q(b);break;case"S":case"SS":case"SSS":e[lb]=q(1e3*("0."+b));break;case"X":c._d=new Date(1e3*parseFloat(b));break;case"Z":case"ZZ":c._useUTC=!0,c._tzm=G(b);break;case"w":case"ww":case"W":case"WW":case"d":case"dd":case"ddd":case"dddd":case"e":case"E":a=a.substr(0,1);case"gg":case"gggg":case"GG":case"GGGG":case"GGGGG":a=a.substr(0,2),b&&(c._w=c._w||{},c._w[a]=b)}}function I(a){var b,c,d,e,f,g,h,i,j,k,l=[];if(!a._d){for(d=K(a),a._w&&null==a._a[hb]&&null==a._a[gb]&&(f=function(b){return b?b.length<3?parseInt(b,10)>68?"19"+b:"20"+b:b:null==a._a[fb]?bb().weekYear():a._a[fb]},g=a._w,null!=g.GG||null!=g.W||null!=g.E?h=X(f(g.GG),g.W||1,g.E,4,1):(i=A(a._l),j=null!=g.d?T(g.d,i):null!=g.e?parseInt(g.e,10)+i._week.dow:0,k=parseInt(g.w,10)||1,null!=g.d&&js(e)&&(a._pf._overflowDayOfYear=!0),c=S(e,0,a._dayOfYear),a._a[gb]=c.getUTCMonth(),a._a[hb]=c.getUTCDate()),b=0;3>b&&null==a._a[b];++b)a._a[b]=l[b]=d[b];for(;7>b;b++)a._a[b]=l[b]=null==a._a[b]?2===b?1:0:a._a[b];l[ib]+=q((a._tzm||0)/60),l[jb]+=q((a._tzm||0)%60),a._d=(a._useUTC?S:R).apply(null,l)}}function J(a){var b;a._d||(b=o(a._i),a._a=[b.year,b.month,b.day,b.hour,b.minute,b.second,b.millisecond],I(a))}function K(a){var b=new Date;return a._useUTC?[b.getUTCFullYear(),b.getUTCMonth(),b.getUTCDate()]:[b.getFullYear(),b.getMonth(),b.getDate()]}function L(a){a._a=[],a._pf.empty=!0;var b,c,d,e,f,g=A(a._l),h=""+a._i,i=h.length,j=0;for(d=E(a._f,g).match(rb)||[],b=0;b0&&a._pf.unusedInput.push(f),h=h.slice(h.indexOf(c)+c.length),j+=c.length),Ob[e]?(c?a._pf.empty=!1:a._pf.unusedTokens.push(e),H(e,c,a)):a._strict&&!c&&a._pf.unusedTokens.push(e);a._pf.charsLeftOver=i-j,h.length>0&&a._pf.unusedInput.push(h),a._isPm&&a._a[ib]<12&&(a._a[ib]+=12),a._isPm===!1&&12===a._a[ib]&&(a._a[ib]=0),I(a),u(a)}function M(a){return a.replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(a,b,c,d,e){return b||c||d||e})}function N(a){return a.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function O(a){var b,c,d,e,f;if(0===a._f.length)return a._pf.invalidFormat=!0,a._d=new Date(0/0),void 0;for(e=0;ef)&&(d=f,c=b));g(a,c||b)}function P(a){var b,c=a._i,d=Cb.exec(c);if(d){for(b=4;b>0;b--)if(d[b]){a._f=Eb[b-1]+(d[6]||" ");break}for(b=0;4>b;b++)if(Fb[b][1].exec(c)){a._f+=Fb[b][0];break}zb.exec(c)&&(a._f+=" Z"),L(a)}else a._d=new Date(c)}function Q(b){var c=b._i,d=ob.exec(c);c===a?b._d=new Date:d?b._d=new Date(+d[1]):"string"==typeof c?P(b):k(c)?(b._a=c.slice(0),I(b)):l(c)?b._d=new Date(+c):"object"==typeof c?J(b):b._d=new Date(c)}function R(a,b,c,d,e,f,g){var h=new Date(a,b,c,d,e,f,g);return 1970>a&&h.setFullYear(a),h}function S(a){var b=new Date(Date.UTC.apply(null,arguments));return 1970>a&&b.setUTCFullYear(a),b}function T(a,b){if("string"==typeof a)if(isNaN(a)){if(a=b.weekdaysParse(a),"number"!=typeof a)return null}else a=parseInt(a,10);return a}function U(a,b,c,d,e){return e.relativeTime(b||1,!!c,a,d)}function V(a,b,c){var d=eb(Math.abs(a)/1e3),e=eb(d/60),f=eb(e/60),g=eb(f/24),h=eb(g/365),i=45>d&&["s",d]||1===e&&["m"]||45>e&&["mm",e]||1===f&&["h"]||22>f&&["hh",f]||1===g&&["d"]||25>=g&&["dd",g]||45>=g&&["M"]||345>g&&["MM",eb(g/30)]||1===h&&["y"]||["yy",h];return i[2]=b,i[3]=a>0,i[4]=c,U.apply({},i)}function W(a,b,c){var d,e=c-b,f=c-a.day();return f>e&&(f-=7),e-7>f&&(f+=7),d=bb(a).add("d",f),{week:Math.ceil(d.dayOfYear()/7),year:d.year()}}function X(a,b,c,d,e){var f,g,h=new Date(Date.UTC(a,0)).getUTCDay();return c=null!=c?c:e,f=e-h+(h>d?7:0),g=7*(b-1)+(c-e)+f+1,{year:g>0?a:a-1,dayOfYear:g>0?g:s(a-1)+g}}function Y(a){var b=a._i,c=a._f;return"undefined"==typeof a._pf&&v(a),null===b?bb.invalid({nullInput:!0}):("string"==typeof b&&(a._i=b=A().preparse(b)),bb.isMoment(b)?(a=g({},b),a._d=new Date(+b._d)):c?k(c)?O(a):L(a):Q(a),new e(a))}function Z(a,b){bb.fn[a]=bb.fn[a+"s"]=function(a){var c=this._isUTC?"UTC":"";return null!=a?(this._d["set"+c+b](a),bb.updateOffset(this),this):this._d["get"+c+b]()}}function $(a){bb.duration.fn[a]=function(){return this._data[a]}}function _(a,b){bb.duration.fn["as"+a]=function(){return+this/b}}function ab(){"undefined"==typeof ender&&(this.moment=bb)}for(var bb,cb,db="2.3.1",eb=Math.round,fb=0,gb=1,hb=2,ib=3,jb=4,kb=5,lb=6,mb={},nb="undefined"!=typeof module&&module.exports,ob=/^\/?Date\((\-?\d+)/i,pb=/(\-)?(?:(\d*)\.)?(\d+)\:(\d+)(?:\:(\d+)\.?(\d{3})?)?/,qb=/^(-)?P(?:(?:([0-9,.]*)Y)?(?:([0-9,.]*)M)?(?:([0-9,.]*)D)?(?:T(?:([0-9,.]*)H)?(?:([0-9,.]*)M)?(?:([0-9,.]*)S)?)?|([0-9,.]*)W)$/,rb=/(\[[^\[]*\])|(\\)?(Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|mm?|ss?|SS?S?|X|zz?|ZZ?|.)/g,sb=/(\[[^\[]*\])|(\\)?(LT|LL?L?L?|l{1,4})/g,tb=/\d\d?/,ub=/\d{1,3}/,vb=/\d{3}/,wb=/\d{1,4}/,xb=/[+\-]?\d{1,6}/,yb=/[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i,zb=/Z|[\+\-]\d\d:?\d\d/i,Ab=/T/i,Bb=/[\+\-]?\d+(\.\d{1,3})?/,Cb=/^\s*\d{4}-(?:(\d\d-\d\d)|(W\d\d$)|(W\d\d-\d)|(\d\d\d))((T| )(\d\d(:\d\d(:\d\d(\.\d\d?\d?)?)?)?)?([\+\-]\d\d:?\d\d)?)?$/,Db="YYYY-MM-DDTHH:mm:ssZ",Eb=["YYYY-MM-DD","GGGG-[W]WW","GGGG-[W]WW-E","YYYY-DDD"],Fb=[["HH:mm:ss.S",/(T| )\d\d:\d\d:\d\d\.\d{1,3}/],["HH:mm:ss",/(T| )\d\d:\d\d:\d\d/],["HH:mm",/(T| )\d\d:\d\d/],["HH",/(T| )\d\d/]],Gb=/([\+\-]|\d\d)/gi,Hb="Date|Hours|Minutes|Seconds|Milliseconds".split("|"),Ib={Milliseconds:1,Seconds:1e3,Minutes:6e4,Hours:36e5,Days:864e5,Months:2592e6,Years:31536e6},Jb={ms:"millisecond",s:"second",m:"minute",h:"hour",d:"day",D:"date",w:"week",W:"isoWeek",M:"month",y:"year",DDD:"dayOfYear",e:"weekday",E:"isoWeekday",gg:"weekYear",GG:"isoWeekYear"},Kb={dayofyear:"dayOfYear",isoweekday:"isoWeekday",isoweek:"isoWeek",weekyear:"weekYear",isoweekyear:"isoWeekYear"},Lb={},Mb="DDD w W M D d".split(" "),Nb="M D H h m s w W".split(" "),Ob={M:function(){return this.month()+1},MMM:function(a){return this.lang().monthsShort(this,a)},MMMM:function(a){return this.lang().months(this,a)},D:function(){return this.date()},DDD:function(){return this.dayOfYear()},d:function(){return this.day()},dd:function(a){return this.lang().weekdaysMin(this,a)},ddd:function(a){return this.lang().weekdaysShort(this,a)},dddd:function(a){return this.lang().weekdays(this,a)},w:function(){return this.week()},W:function(){return this.isoWeek()},YY:function(){return i(this.year()%100,2)},YYYY:function(){return i(this.year(),4)},YYYYY:function(){return i(this.year(),5)},gg:function(){return i(this.weekYear()%100,2)},gggg:function(){return this.weekYear()},ggggg:function(){return i(this.weekYear(),5)},GG:function(){return i(this.isoWeekYear()%100,2)},GGGG:function(){return this.isoWeekYear()},GGGGG:function(){return i(this.isoWeekYear(),5)},e:function(){return this.weekday()},E:function(){return this.isoWeekday()},a:function(){return this.lang().meridiem(this.hours(),this.minutes(),!0)},A:function(){return this.lang().meridiem(this.hours(),this.minutes(),!1)},H:function(){return this.hours()},h:function(){return this.hours()%12||12},m:function(){return this.minutes()},s:function(){return this.seconds()},S:function(){return q(this.milliseconds()/100)},SS:function(){return i(q(this.milliseconds()/10),2)},SSS:function(){return i(this.milliseconds(),3)},Z:function(){var a=-this.zone(),b="+";return 0>a&&(a=-a,b="-"),b+i(q(a/60),2)+":"+i(q(a)%60,2)},ZZ:function(){var a=-this.zone(),b="+";return 0>a&&(a=-a,b="-"),b+i(q(10*a/6),4)},z:function(){return this.zoneAbbr()},zz:function(){return this.zoneName()},X:function(){return this.unix()}},Pb=["months","monthsShort","weekdays","weekdaysShort","weekdaysMin"];Mb.length;)cb=Mb.pop(),Ob[cb+"o"]=c(Ob[cb],cb);for(;Nb.length;)cb=Nb.pop(),Ob[cb+cb]=b(Ob[cb],2);for(Ob.DDDD=b(Ob.DDD,3),g(d.prototype,{set:function(a){var b,c;for(c in a)b=a[c],"function"==typeof b?this[c]=b:this["_"+c]=b},_months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),months:function(a){return this._months[a.month()]},_monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),monthsShort:function(a){return this._monthsShort[a.month()]},monthsParse:function(a){var b,c,d;for(this._monthsParse||(this._monthsParse=[]),b=0;12>b;b++)if(this._monthsParse[b]||(c=bb.utc([2e3,b]),d="^"+this.months(c,"")+"|^"+this.monthsShort(c,""),this._monthsParse[b]=new RegExp(d.replace(".",""),"i")),this._monthsParse[b].test(a))return b},_weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdays:function(a){return this._weekdays[a.day()]},_weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysShort:function(a){return this._weekdaysShort[a.day()]},_weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),weekdaysMin:function(a){return this._weekdaysMin[a.day()]},weekdaysParse:function(a){var b,c,d;for(this._weekdaysParse||(this._weekdaysParse=[]),b=0;7>b;b++)if(this._weekdaysParse[b]||(c=bb([2e3,1]).day(b),d="^"+this.weekdays(c,"")+"|^"+this.weekdaysShort(c,"")+"|^"+this.weekdaysMin(c,""),this._weekdaysParse[b]=new RegExp(d.replace(".",""),"i")),this._weekdaysParse[b].test(a))return b},_longDateFormat:{LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D YYYY",LLL:"MMMM D YYYY LT",LLLL:"dddd, MMMM D YYYY LT"},longDateFormat:function(a){var b=this._longDateFormat[a];return!b&&this._longDateFormat[a.toUpperCase()]&&(b=this._longDateFormat[a.toUpperCase()].replace(/MMMM|MM|DD|dddd/g,function(a){return a.slice(1)}),this._longDateFormat[a]=b),b},isPM:function(a){return"p"===(a+"").toLowerCase().charAt(0)},_meridiemParse:/[ap]\.?m?\.?/i,meridiem:function(a,b,c){return a>11?c?"pm":"PM":c?"am":"AM"},_calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},calendar:function(a,b){var c=this._calendar[a];return"function"==typeof c?c.apply(b):c},_relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},relativeTime:function(a,b,c,d){var e=this._relativeTime[c];return"function"==typeof e?e(a,b,c,d):e.replace(/%d/i,a)},pastFuture:function(a,b){var c=this._relativeTime[a>0?"future":"past"];return"function"==typeof c?c(b):c.replace(/%s/i,b)},ordinal:function(a){return this._ordinal.replace("%d",a)},_ordinal:"%d",preparse:function(a){return a},postformat:function(a){return a},week:function(a){return W(a,this._week.dow,this._week.doy).week},_week:{dow:0,doy:6},_invalidDate:"Invalid date",invalidDate:function(){return this._invalidDate}}),bb=function(b,c,d,e){return"boolean"==typeof d&&(e=d,d=a),Y({_i:b,_f:c,_l:d,_strict:e,_isUTC:!1})},bb.utc=function(b,c,d,e){var f;return"boolean"==typeof d&&(e=d,d=a),f=Y({_useUTC:!0,_isUTC:!0,_l:d,_i:b,_f:c,_strict:e}).utc()},bb.unix=function(a){return bb(1e3*a)},bb.duration=function(a,b){var c,d,e,g=bb.isDuration(a),h="number"==typeof a,i=g?a._input:h?{}:a,j=null;return h?b?i[b]=a:i.milliseconds=a:(j=pb.exec(a))?(c="-"===j[1]?-1:1,i={y:0,d:q(j[hb])*c,h:q(j[ib])*c,m:q(j[jb])*c,s:q(j[kb])*c,ms:q(j[lb])*c}):(j=qb.exec(a))&&(c="-"===j[1]?-1:1,e=function(a){var b=a&&parseFloat(a.replace(",","."));return(isNaN(b)?0:b)*c},i={y:e(j[2]),M:e(j[3]),d:e(j[4]),h:e(j[5]),m:e(j[6]),s:e(j[7]),w:e(j[8])}),d=new f(i),g&&a.hasOwnProperty("_lang")&&(d._lang=a._lang),d},bb.version=db,bb.defaultFormat=Db,bb.updateOffset=function(){},bb.lang=function(a,b){var c;return a?(b?y(x(a),b):null===b?(z(a),a="en"):mb[a]||A(a),c=bb.duration.fn._lang=bb.fn._lang=A(a),c._abbr):bb.fn._lang._abbr},bb.langData=function(a){return a&&a._lang&&a._lang._abbr&&(a=a._lang._abbr),A(a)},bb.isMoment=function(a){return a instanceof e},bb.isDuration=function(a){return a instanceof f},cb=Pb.length-1;cb>=0;--cb)p(Pb[cb]);for(bb.normalizeUnits=function(a){return n(a)},bb.invalid=function(a){var b=bb.utc(0/0);return null!=a?g(b._pf,a):b._pf.userInvalidated=!0,b},bb.parseZone=function(a){return bb(a).parseZone()},g(bb.fn=e.prototype,{clone:function(){return bb(this)},valueOf:function(){return+this._d+6e4*(this._offset||0)},unix:function(){return Math.floor(+this/1e3)},toString:function(){return this.clone().lang("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")},toDate:function(){return this._offset?new Date(+this):this._d},toISOString:function(){return D(bb(this).utc(),"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]")},toArray:function(){var a=this;return[a.year(),a.month(),a.date(),a.hours(),a.minutes(),a.seconds(),a.milliseconds()]},isValid:function(){return w(this)},isDSTShifted:function(){return this._a?this.isValid()&&m(this._a,(this._isUTC?bb.utc(this._a):bb(this._a)).toArray())>0:!1},parsingFlags:function(){return g({},this._pf)},invalidAt:function(){return this._pf.overflow},utc:function(){return this.zone(0)},local:function(){return this.zone(0),this._isUTC=!1,this},format:function(a){var b=D(this,a||bb.defaultFormat);return this.lang().postformat(b)},add:function(a,b){var c;return c="string"==typeof a?bb.duration(+b,a):bb.duration(a,b),j(this,c,1),this},subtract:function(a,b){var c;return c="string"==typeof a?bb.duration(+b,a):bb.duration(a,b),j(this,c,-1),this},diff:function(a,b,c){var d,e,f=this._isUTC?bb(a).zone(this._offset||0):bb(a).local(),g=6e4*(this.zone()-f.zone());return b=n(b),"year"===b||"month"===b?(d=432e5*(this.daysInMonth()+f.daysInMonth()),e=12*(this.year()-f.year())+(this.month()-f.month()),e+=(this-bb(this).startOf("month")-(f-bb(f).startOf("month")))/d,e-=6e4*(this.zone()-bb(this).startOf("month").zone()-(f.zone()-bb(f).startOf("month").zone()))/d,"year"===b&&(e/=12)):(d=this-f,e="second"===b?d/1e3:"minute"===b?d/6e4:"hour"===b?d/36e5:"day"===b?(d-g)/864e5:"week"===b?(d-g)/6048e5:d),c?e:h(e)},from:function(a,b){return bb.duration(this.diff(a)).lang(this.lang()._abbr).humanize(!b)},fromNow:function(a){return this.from(bb(),a)},calendar:function(){var a=this.diff(bb().zone(this.zone()).startOf("day"),"days",!0),b=-6>a?"sameElse":-1>a?"lastWeek":0>a?"lastDay":1>a?"sameDay":2>a?"nextDay":7>a?"nextWeek":"sameElse";return this.format(this.lang().calendar(b,this))},isLeapYear:function(){return t(this.year())},isDST:function(){return this.zone()+bb(a).startOf(b)},isBefore:function(a,b){return b="undefined"!=typeof b?b:"millisecond",+this.clone().startOf(b)<+bb(a).startOf(b)},isSame:function(a,b){return b="undefined"!=typeof b?b:"millisecond",+this.clone().startOf(b)===+bb(a).startOf(b)},min:function(a){return a=bb.apply(null,arguments),this>a?this:a},max:function(a){return a=bb.apply(null,arguments),a>this?this:a},zone:function(a){var b=this._offset||0;return null==a?this._isUTC?b:this._d.getTimezoneOffset():("string"==typeof a&&(a=G(a)),Math.abs(a)<16&&(a=60*a),this._offset=a,this._isUTC=!0,b!==a&&j(this,bb.duration(b-a,"m"),1,!0),this)},zoneAbbr:function(){return this._isUTC?"UTC":""},zoneName:function(){return this._isUTC?"Coordinated Universal Time":""},parseZone:function(){return"string"==typeof this._i&&this.zone(this._i),this},hasAlignedHourOffset:function(a){return a=a?bb(a).zone():0,0===(this.zone()-a)%60},daysInMonth:function(){return r(this.year(),this.month())},dayOfYear:function(a){var b=eb((bb(this).startOf("day")-bb(this).startOf("year"))/864e5)+1;return null==a?b:this.add("d",a-b)},weekYear:function(a){var b=W(this,this.lang()._week.dow,this.lang()._week.doy).year;return null==a?b:this.add("y",a-b)},isoWeekYear:function(a){var b=W(this,1,4).year;return null==a?b:this.add("y",a-b)},week:function(a){var b=this.lang().week(this);return null==a?b:this.add("d",7*(a-b))},isoWeek:function(a){var b=W(this,1,4).week;return null==a?b:this.add("d",7*(a-b))},weekday:function(a){var b=(this.day()+7-this.lang()._week.dow)%7;return null==a?b:this.add("d",a-b)},isoWeekday:function(a){return null==a?this.day()||7:this.day(this.day()%7?a:a-7)},get:function(a){return a=n(a),this[a]()},set:function(a,b){return a=n(a),"function"==typeof this[a]&&this[a](b),this},lang:function(b){return b===a?this._lang:(this._lang=A(b),this)}}),cb=0;cb p, - > ul { - margin-bottom: 0; - } - - > p + p { - margin-top: 5px; - } -} - -// Dismissible alerts -// -// Expand the right padding and account for the close button's positioning. - -.alert-dismissable, // The misspelled .alert-dismissable was deprecated in 3.2.0. -.alert-dismissible { - padding-right: (@alert-padding + 20); - - // Adjust close link position - .close { - position: relative; - top: -2px; - right: -21px; - color: inherit; - } -} - -// Alternate styles -// -// Generate contextual modifier classes for colorizing the alert. - -.alert-success { - .alert-variant(@alert-success-bg; @alert-success-border; @alert-success-text); -} - -.alert-info { - .alert-variant(@alert-info-bg; @alert-info-border; @alert-info-text); -} - -.alert-warning { - .alert-variant(@alert-warning-bg; @alert-warning-border; @alert-warning-text); -} - -.alert-danger { - .alert-variant(@alert-danger-bg; @alert-danger-border; @alert-danger-text); -} diff --git a/themes/devopsdays-responsive/static/less/badges.less b/themes/devopsdays-responsive/static/less/badges.less deleted file mode 100755 index 6ee16dca413..00000000000 --- a/themes/devopsdays-responsive/static/less/badges.less +++ /dev/null @@ -1,66 +0,0 @@ -// -// Badges -// -------------------------------------------------- - - -// Base class -.badge { - display: inline-block; - min-width: 10px; - padding: 3px 7px; - font-size: @font-size-small; - font-weight: @badge-font-weight; - color: @badge-color; - line-height: @badge-line-height; - vertical-align: middle; - white-space: nowrap; - text-align: center; - background-color: @badge-bg; - border-radius: @badge-border-radius; - - // Empty badges collapse automatically (not available in IE8) - &:empty { - display: none; - } - - // Quick fix for badges in buttons - .btn & { - position: relative; - top: -1px; - } - - .btn-xs &, - .btn-group-xs > .btn & { - top: 0; - padding: 1px 5px; - } - - // Hover state, but only for links - a& { - &:hover, - &:focus { - color: @badge-link-hover-color; - text-decoration: none; - cursor: pointer; - } - } - - // Account for badges in navs - .list-group-item.active > &, - .nav-pills > .active > a > & { - color: @badge-active-color; - background-color: @badge-active-bg; - } - - .list-group-item > & { - float: right; - } - - .list-group-item > & + & { - margin-right: 5px; - } - - .nav-pills > li > a > & { - margin-left: 3px; - } -} diff --git a/themes/devopsdays-responsive/static/less/bootstrap.less b/themes/devopsdays-responsive/static/less/bootstrap.less deleted file mode 100755 index 14107a33484..00000000000 --- a/themes/devopsdays-responsive/static/less/bootstrap.less +++ /dev/null @@ -1,57 +0,0 @@ -/*! - * Bootstrap v3.3.6 (http://getbootstrap.com) - * Copyright 2011-2015 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - */ - -// Core variables and mixins -@import "variables.less"; -@import "../site_variables.less"; //customizations -@import "mixins.less"; - -// Reset and dependencies -@import "normalize.less"; -@import "print.less"; -@import "glyphicons.less"; - -// Core CSS -@import "scaffolding.less"; -@import "type.less"; -@import "code.less"; -@import "grid.less"; -@import "tables.less"; -@import "forms.less"; -@import "buttons.less"; - -// Components -@import "component-animations.less"; -@import "dropdowns.less"; -@import "button-groups.less"; -@import "input-groups.less"; -@import "navs.less"; -@import "navbar.less"; -@import "breadcrumbs.less"; -@import "pagination.less"; -@import "pager.less"; -@import "labels.less"; -@import "badges.less"; -@import "jumbotron.less"; -@import "thumbnails.less"; -@import "alerts.less"; -@import "progress-bars.less"; -@import "media.less"; -@import "list-group.less"; -@import "panels.less"; -@import "responsive-embed.less"; -@import "wells.less"; -@import "close.less"; - -// Components w/ JavaScript -@import "modals.less"; -@import "tooltip.less"; -@import "popovers.less"; -@import "carousel.less"; - -// Utility classes -@import "utilities.less"; -@import "responsive-utilities.less"; diff --git a/themes/devopsdays-responsive/static/less/breadcrumbs.less b/themes/devopsdays-responsive/static/less/breadcrumbs.less deleted file mode 100755 index cb01d503fbe..00000000000 --- a/themes/devopsdays-responsive/static/less/breadcrumbs.less +++ /dev/null @@ -1,26 +0,0 @@ -// -// Breadcrumbs -// -------------------------------------------------- - - -.breadcrumb { - padding: @breadcrumb-padding-vertical @breadcrumb-padding-horizontal; - margin-bottom: @line-height-computed; - list-style: none; - background-color: @breadcrumb-bg; - border-radius: @border-radius-base; - - > li { - display: inline-block; - - + li:before { - content: "@{breadcrumb-separator}\00a0"; // Unicode space added since inline-block means non-collapsing white-space - padding: 0 5px; - color: @breadcrumb-color; - } - } - - > .active { - color: @breadcrumb-active-color; - } -} diff --git a/themes/devopsdays-responsive/static/less/button-groups.less b/themes/devopsdays-responsive/static/less/button-groups.less deleted file mode 100755 index 293245a6503..00000000000 --- a/themes/devopsdays-responsive/static/less/button-groups.less +++ /dev/null @@ -1,244 +0,0 @@ -// -// Button groups -// -------------------------------------------------- - -// Make the div behave like a button -.btn-group, -.btn-group-vertical { - position: relative; - display: inline-block; - vertical-align: middle; // match .btn alignment given font-size hack above - > .btn { - position: relative; - float: left; - // Bring the "active" button to the front - &:hover, - &:focus, - &:active, - &.active { - z-index: 2; - } - } -} - -// Prevent double borders when buttons are next to each other -.btn-group { - .btn + .btn, - .btn + .btn-group, - .btn-group + .btn, - .btn-group + .btn-group { - margin-left: -1px; - } -} - -// Optional: Group multiple button groups together for a toolbar -.btn-toolbar { - margin-left: -5px; // Offset the first child's margin - &:extend(.clearfix all); - - .btn, - .btn-group, - .input-group { - float: left; - } - > .btn, - > .btn-group, - > .input-group { - margin-left: 5px; - } -} - -.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) { - border-radius: 0; -} - -// Set corners individual because sometimes a single button can be in a .btn-group and we need :first-child and :last-child to both match -.btn-group > .btn:first-child { - margin-left: 0; - &:not(:last-child):not(.dropdown-toggle) { - .border-right-radius(0); - } -} -// Need .dropdown-toggle since :last-child doesn't apply given a .dropdown-menu immediately after it -.btn-group > .btn:last-child:not(:first-child), -.btn-group > .dropdown-toggle:not(:first-child) { - .border-left-radius(0); -} - -// Custom edits for including btn-groups within btn-groups (useful for including dropdown buttons within a btn-group) -.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, - > .dropdown-toggle { - .border-right-radius(0); - } -} -.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child { - .border-left-radius(0); -} - -// On active and open, don't show outline -.btn-group .dropdown-toggle:active, -.btn-group.open .dropdown-toggle { - outline: 0; -} - - -// Sizing -// -// Remix the default button sizing classes into new ones for easier manipulation. - -.btn-group-xs > .btn { &:extend(.btn-xs); } -.btn-group-sm > .btn { &:extend(.btn-sm); } -.btn-group-lg > .btn { &:extend(.btn-lg); } - - -// Split button dropdowns -// ---------------------- - -// Give the line between buttons some depth -.btn-group > .btn + .dropdown-toggle { - padding-left: 8px; - padding-right: 8px; -} -.btn-group > .btn-lg + .dropdown-toggle { - padding-left: 12px; - padding-right: 12px; -} - -// The clickable button for toggling the menu -// Remove the gradient and set the same inset shadow as the :active state -.btn-group.open .dropdown-toggle { - .box-shadow(inset 0 3px 5px rgba(0,0,0,.125)); - - // Show no shadow for `.btn-link` since it has no other button styles. - &.btn-link { - .box-shadow(none); - } -} - - -// Reposition the caret -.btn .caret { - margin-left: 0; -} -// Carets in other button sizes -.btn-lg .caret { - border-width: @caret-width-large @caret-width-large 0; - border-bottom-width: 0; -} -// Upside down carets for .dropup -.dropup .btn-lg .caret { - border-width: 0 @caret-width-large @caret-width-large; -} - - -// Vertical button groups -// ---------------------- - -.btn-group-vertical { - > .btn, - > .btn-group, - > .btn-group > .btn { - display: block; - float: none; - width: 100%; - max-width: 100%; - } - - // Clear floats so dropdown menus can be properly placed - > .btn-group { - &:extend(.clearfix all); - > .btn { - float: none; - } - } - - > .btn + .btn, - > .btn + .btn-group, - > .btn-group + .btn, - > .btn-group + .btn-group { - margin-top: -1px; - margin-left: 0; - } -} - -.btn-group-vertical > .btn { - &:not(:first-child):not(:last-child) { - border-radius: 0; - } - &:first-child:not(:last-child) { - .border-top-radius(@btn-border-radius-base); - .border-bottom-radius(0); - } - &:last-child:not(:first-child) { - .border-top-radius(0); - .border-bottom-radius(@btn-border-radius-base); - } -} -.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, - > .dropdown-toggle { - .border-bottom-radius(0); - } -} -.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child { - .border-top-radius(0); -} - - -// Justified button groups -// ---------------------- - -.btn-group-justified { - display: table; - width: 100%; - table-layout: fixed; - border-collapse: separate; - > .btn, - > .btn-group { - float: none; - display: table-cell; - width: 1%; - } - > .btn-group .btn { - width: 100%; - } - - > .btn-group .dropdown-menu { - left: auto; - } -} - - -// Checkbox and radio options -// -// In order to support the browser's form validation feedback, powered by the -// `required` attribute, we have to "hide" the inputs via `clip`. We cannot use -// `display: none;` or `visibility: hidden;` as that also hides the popover. -// Simply visually hiding the inputs via `opacity` would leave them clickable in -// certain cases which is prevented by using `clip` and `pointer-events`. -// This way, we ensure a DOM element is visible to position the popover from. -// -// See https://github.com/twbs/bootstrap/pull/12794 and -// https://github.com/twbs/bootstrap/pull/14559 for more information. - -[data-toggle="buttons"] { - > .btn, - > .btn-group > .btn { - input[type="radio"], - input[type="checkbox"] { - position: absolute; - clip: rect(0,0,0,0); - pointer-events: none; - } - } -} diff --git a/themes/devopsdays-responsive/static/less/buttons.less b/themes/devopsdays-responsive/static/less/buttons.less deleted file mode 100755 index 9cbb8f416fa..00000000000 --- a/themes/devopsdays-responsive/static/less/buttons.less +++ /dev/null @@ -1,166 +0,0 @@ -// -// Buttons -// -------------------------------------------------- - - -// Base styles -// -------------------------------------------------- - -.btn { - display: inline-block; - margin-bottom: 0; // For input.btn - font-weight: @btn-font-weight; - text-align: center; - vertical-align: middle; - touch-action: manipulation; - cursor: pointer; - background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214 - border: 1px solid transparent; - white-space: nowrap; - .button-size(@padding-base-vertical; @padding-base-horizontal; @font-size-base; @line-height-base; @btn-border-radius-base); - .user-select(none); - - &, - &:active, - &.active { - &:focus, - &.focus { - .tab-focus(); - } - } - - &:hover, - &:focus, - &.focus { - color: @btn-default-color; - text-decoration: none; - } - - &:active, - &.active { - outline: 0; - background-image: none; - .box-shadow(inset 0 3px 5px rgba(0,0,0,.125)); - } - - &.disabled, - &[disabled], - fieldset[disabled] & { - cursor: @cursor-disabled; - .opacity(.65); - .box-shadow(none); - } - - a& { - &.disabled, - fieldset[disabled] & { - pointer-events: none; // Future-proof disabling of clicks on `` elements - } - } -} - - -// Alternate buttons -// -------------------------------------------------- - -.btn-default { - .button-variant(@btn-default-color; @btn-default-bg; @btn-default-border); -} -.btn-primary { - .button-variant(@btn-primary-color; @btn-primary-bg; @btn-primary-border); -} -// Success appears as green -.btn-success { - .button-variant(@btn-success-color; @btn-success-bg; @btn-success-border); -} -// Info appears as blue-green -.btn-info { - .button-variant(@btn-info-color; @btn-info-bg; @btn-info-border); -} -// Warning appears as orange -.btn-warning { - .button-variant(@btn-warning-color; @btn-warning-bg; @btn-warning-border); -} -// Danger and error appear as red -.btn-danger { - .button-variant(@btn-danger-color; @btn-danger-bg; @btn-danger-border); -} - - -// Link buttons -// ------------------------- - -// Make a button look and behave like a link -.btn-link { - color: @link-color; - font-weight: normal; - border-radius: 0; - - &, - &:active, - &.active, - &[disabled], - fieldset[disabled] & { - background-color: transparent; - .box-shadow(none); - } - &, - &:hover, - &:focus, - &:active { - border-color: transparent; - } - &:hover, - &:focus { - color: @link-hover-color; - text-decoration: @link-hover-decoration; - background-color: transparent; - } - &[disabled], - fieldset[disabled] & { - &:hover, - &:focus { - color: @btn-link-disabled-color; - text-decoration: none; - } - } -} - - -// Button Sizes -// -------------------------------------------------- - -.btn-lg { - // line-height: ensure even-numbered height of button next to large input - .button-size(@padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @btn-border-radius-large); -} -.btn-sm { - // line-height: ensure proper height of button next to small input - .button-size(@padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @btn-border-radius-small); -} -.btn-xs { - .button-size(@padding-xs-vertical; @padding-xs-horizontal; @font-size-small; @line-height-small; @btn-border-radius-small); -} - - -// Block button -// -------------------------------------------------- - -.btn-block { - display: block; - width: 100%; -} - -// Vertically space out multiple block buttons -.btn-block + .btn-block { - margin-top: 5px; -} - -// Specificity overrides -input[type="submit"], -input[type="reset"], -input[type="button"] { - &.btn-block { - width: 100%; - } -} diff --git a/themes/devopsdays-responsive/static/less/carousel.less b/themes/devopsdays-responsive/static/less/carousel.less deleted file mode 100755 index 252011e9e25..00000000000 --- a/themes/devopsdays-responsive/static/less/carousel.less +++ /dev/null @@ -1,270 +0,0 @@ -// -// Carousel -// -------------------------------------------------- - - -// Wrapper for the slide container and indicators -.carousel { - position: relative; -} - -.carousel-inner { - position: relative; - overflow: hidden; - width: 100%; - - > .item { - display: none; - position: relative; - .transition(.6s ease-in-out left); - - // Account for jankitude on images - > img, - > a > img { - &:extend(.img-responsive); - line-height: 1; - } - - // WebKit CSS3 transforms for supported devices - @media all and (transform-3d), (-webkit-transform-3d) { - .transition-transform(~'0.6s ease-in-out'); - .backface-visibility(~'hidden'); - .perspective(1000px); - - &.next, - &.active.right { - .translate3d(100%, 0, 0); - left: 0; - } - &.prev, - &.active.left { - .translate3d(-100%, 0, 0); - left: 0; - } - &.next.left, - &.prev.right, - &.active { - .translate3d(0, 0, 0); - left: 0; - } - } - } - - > .active, - > .next, - > .prev { - display: block; - } - - > .active { - left: 0; - } - - > .next, - > .prev { - position: absolute; - top: 0; - width: 100%; - } - - > .next { - left: 100%; - } - > .prev { - left: -100%; - } - > .next.left, - > .prev.right { - left: 0; - } - - > .active.left { - left: -100%; - } - > .active.right { - left: 100%; - } - -} - -// Left/right controls for nav -// --------------------------- - -.carousel-control { - position: absolute; - top: 0; - left: 0; - bottom: 0; - width: @carousel-control-width; - .opacity(@carousel-control-opacity); - font-size: @carousel-control-font-size; - color: @carousel-control-color; - text-align: center; - text-shadow: @carousel-text-shadow; - background-color: rgba(0, 0, 0, 0); // Fix IE9 click-thru bug - // We can't have this transition here because WebKit cancels the carousel - // animation if you trip this while in the middle of another animation. - - // Set gradients for backgrounds - &.left { - #gradient > .horizontal(@start-color: rgba(0,0,0,.5); @end-color: rgba(0,0,0,.0001)); - } - &.right { - left: auto; - right: 0; - #gradient > .horizontal(@start-color: rgba(0,0,0,.0001); @end-color: rgba(0,0,0,.5)); - } - - // Hover/focus state - &:hover, - &:focus { - outline: 0; - color: @carousel-control-color; - text-decoration: none; - .opacity(.9); - } - - // Toggles - .icon-prev, - .icon-next, - .glyphicon-chevron-left, - .glyphicon-chevron-right { - position: absolute; - top: 50%; - margin-top: -10px; - z-index: 5; - display: inline-block; - } - .icon-prev, - .glyphicon-chevron-left { - left: 50%; - margin-left: -10px; - } - .icon-next, - .glyphicon-chevron-right { - right: 50%; - margin-right: -10px; - } - .icon-prev, - .icon-next { - width: 20px; - height: 20px; - line-height: 1; - font-family: serif; - } - - - .icon-prev { - &:before { - content: '\2039';// SINGLE LEFT-POINTING ANGLE QUOTATION MARK (U+2039) - } - } - .icon-next { - &:before { - content: '\203a';// SINGLE RIGHT-POINTING ANGLE QUOTATION MARK (U+203A) - } - } -} - -// Optional indicator pips -// -// Add an unordered list with the following class and add a list item for each -// slide your carousel holds. - -.carousel-indicators { - position: absolute; - bottom: 10px; - left: 50%; - z-index: 15; - width: 60%; - margin-left: -30%; - padding-left: 0; - list-style: none; - text-align: center; - - li { - display: inline-block; - width: 10px; - height: 10px; - margin: 1px; - text-indent: -999px; - border: 1px solid @carousel-indicator-border-color; - border-radius: 10px; - cursor: pointer; - - // IE8-9 hack for event handling - // - // Internet Explorer 8-9 does not support clicks on elements without a set - // `background-color`. We cannot use `filter` since that's not viewed as a - // background color by the browser. Thus, a hack is needed. - // See https://developer.mozilla.org/en-US/docs/Web/Events/click#Internet_Explorer - // - // For IE8, we set solid black as it doesn't support `rgba()`. For IE9, we - // set alpha transparency for the best results possible. - background-color: #000 \9; // IE8 - background-color: rgba(0,0,0,0); // IE9 - } - .active { - margin: 0; - width: 12px; - height: 12px; - background-color: @carousel-indicator-active-bg; - } -} - -// Optional captions -// ----------------------------- -// Hidden by default for smaller viewports -.carousel-caption { - position: absolute; - left: 15%; - right: 15%; - bottom: 20px; - z-index: 10; - padding-top: 20px; - padding-bottom: 20px; - color: @carousel-caption-color; - text-align: center; - text-shadow: @carousel-text-shadow; - & .btn { - text-shadow: none; // No shadow for button elements in carousel-caption - } -} - - -// Scale up controls for tablets and up -@media screen and (min-width: @screen-sm-min) { - - // Scale up the controls a smidge - .carousel-control { - .glyphicon-chevron-left, - .glyphicon-chevron-right, - .icon-prev, - .icon-next { - width: (@carousel-control-font-size * 1.5); - height: (@carousel-control-font-size * 1.5); - margin-top: (@carousel-control-font-size / -2); - font-size: (@carousel-control-font-size * 1.5); - } - .glyphicon-chevron-left, - .icon-prev { - margin-left: (@carousel-control-font-size / -2); - } - .glyphicon-chevron-right, - .icon-next { - margin-right: (@carousel-control-font-size / -2); - } - } - - // Show and left align the captions - .carousel-caption { - left: 20%; - right: 20%; - padding-bottom: 30px; - } - - // Move up the indicators - .carousel-indicators { - bottom: 20px; - } -} diff --git a/themes/devopsdays-responsive/static/less/close.less b/themes/devopsdays-responsive/static/less/close.less deleted file mode 100755 index 6d5bfe087ae..00000000000 --- a/themes/devopsdays-responsive/static/less/close.less +++ /dev/null @@ -1,34 +0,0 @@ -// -// Close icons -// -------------------------------------------------- - - -.close { - float: right; - font-size: (@font-size-base * 1.5); - font-weight: @close-font-weight; - line-height: 1; - color: @close-color; - text-shadow: @close-text-shadow; - .opacity(.2); - - &:hover, - &:focus { - color: @close-color; - text-decoration: none; - cursor: pointer; - .opacity(.5); - } - - // Additional properties for button version - // iOS requires the button element instead of an anchor tag. - // If you want the anchor version, it requires `href="#"`. - // See https://developer.mozilla.org/en-US/docs/Web/Events/click#Safari_Mobile - button& { - padding: 0; - cursor: pointer; - background: transparent; - border: 0; - -webkit-appearance: none; - } -} diff --git a/themes/devopsdays-responsive/static/less/code.less b/themes/devopsdays-responsive/static/less/code.less deleted file mode 100755 index a08b4d48c4c..00000000000 --- a/themes/devopsdays-responsive/static/less/code.less +++ /dev/null @@ -1,69 +0,0 @@ -// -// Code (inline and block) -// -------------------------------------------------- - - -// Inline and block code styles -code, -kbd, -pre, -samp { - font-family: @font-family-monospace; -} - -// Inline code -code { - padding: 2px 4px; - font-size: 90%; - color: @code-color; - background-color: @code-bg; - border-radius: @border-radius-base; -} - -// User input typically entered via keyboard -kbd { - padding: 2px 4px; - font-size: 90%; - color: @kbd-color; - background-color: @kbd-bg; - border-radius: @border-radius-small; - box-shadow: inset 0 -1px 0 rgba(0,0,0,.25); - - kbd { - padding: 0; - font-size: 100%; - font-weight: bold; - box-shadow: none; - } -} - -// Blocks of code -pre { - display: block; - padding: ((@line-height-computed - 1) / 2); - margin: 0 0 (@line-height-computed / 2); - font-size: (@font-size-base - 1); // 14px to 13px - line-height: @line-height-base; - word-break: break-all; - word-wrap: break-word; - color: @pre-color; - background-color: @pre-bg; - border: 1px solid @pre-border-color; - border-radius: @border-radius-base; - - // Account for some code outputs that place code tags in pre tags - code { - padding: 0; - font-size: inherit; - color: inherit; - white-space: pre-wrap; - background-color: transparent; - border-radius: 0; - } -} - -// Enable scrollable blocks of code -.pre-scrollable { - max-height: @pre-scrollable-max-height; - overflow-y: scroll; -} diff --git a/themes/devopsdays-responsive/static/less/component-animations.less b/themes/devopsdays-responsive/static/less/component-animations.less deleted file mode 100755 index 0bcee910ac5..00000000000 --- a/themes/devopsdays-responsive/static/less/component-animations.less +++ /dev/null @@ -1,33 +0,0 @@ -// -// Component animations -// -------------------------------------------------- - -// Heads up! -// -// We don't use the `.opacity()` mixin here since it causes a bug with text -// fields in IE7-8. Source: https://github.com/twbs/bootstrap/pull/3552. - -.fade { - opacity: 0; - .transition(opacity .15s linear); - &.in { - opacity: 1; - } -} - -.collapse { - display: none; - - &.in { display: block; } - tr&.in { display: table-row; } - tbody&.in { display: table-row-group; } -} - -.collapsing { - position: relative; - height: 0; - overflow: hidden; - .transition-property(~"height, visibility"); - .transition-duration(.35s); - .transition-timing-function(ease); -} diff --git a/themes/devopsdays-responsive/static/less/dropdowns.less b/themes/devopsdays-responsive/static/less/dropdowns.less deleted file mode 100755 index f6876c1a9b2..00000000000 --- a/themes/devopsdays-responsive/static/less/dropdowns.less +++ /dev/null @@ -1,216 +0,0 @@ -// -// Dropdown menus -// -------------------------------------------------- - - -// Dropdown arrow/caret -.caret { - display: inline-block; - width: 0; - height: 0; - margin-left: 2px; - vertical-align: middle; - border-top: @caret-width-base dashed; - border-top: @caret-width-base solid ~"\9"; // IE8 - border-right: @caret-width-base solid transparent; - border-left: @caret-width-base solid transparent; -} - -// The dropdown wrapper (div) -.dropup, -.dropdown { - position: relative; -} - -// Prevent the focus on the dropdown toggle when closing dropdowns -.dropdown-toggle:focus { - outline: 0; -} - -// The dropdown menu (ul) -.dropdown-menu { - position: absolute; - top: 100%; - left: 0; - z-index: @zindex-dropdown; - display: none; // none by default, but block on "open" of the menu - float: left; - min-width: 160px; - padding: 5px 0; - margin: 2px 0 0; // override default ul - list-style: none; - font-size: @font-size-base; - text-align: left; // Ensures proper alignment if parent has it changed (e.g., modal footer) - background-color: @dropdown-bg; - border: 1px solid @dropdown-fallback-border; // IE8 fallback - border: 1px solid @dropdown-border; - border-radius: @border-radius-base; - .box-shadow(0 6px 12px rgba(0,0,0,.175)); - background-clip: padding-box; - - // Aligns the dropdown menu to right - // - // Deprecated as of 3.1.0 in favor of `.dropdown-menu-[dir]` - &.pull-right { - right: 0; - left: auto; - } - - // Dividers (basically an hr) within the dropdown - .divider { - .nav-divider(@dropdown-divider-bg); - } - - // Links within the dropdown menu - > li > a { - display: block; - padding: 3px 20px; - clear: both; - font-weight: normal; - line-height: @line-height-base; - color: @dropdown-link-color; - white-space: nowrap; // prevent links from randomly breaking onto new lines - } -} - -// Hover/Focus state -.dropdown-menu > li > a { - &:hover, - &:focus { - text-decoration: none; - color: @dropdown-link-hover-color; - background-color: @dropdown-link-hover-bg; - } -} - -// Active state -.dropdown-menu > .active > a { - &, - &:hover, - &:focus { - color: @dropdown-link-active-color; - text-decoration: none; - outline: 0; - background-color: @dropdown-link-active-bg; - } -} - -// Disabled state -// -// Gray out text and ensure the hover/focus state remains gray - -.dropdown-menu > .disabled > a { - &, - &:hover, - &:focus { - color: @dropdown-link-disabled-color; - } - - // Nuke hover/focus effects - &:hover, - &:focus { - text-decoration: none; - background-color: transparent; - background-image: none; // Remove CSS gradient - .reset-filter(); - cursor: @cursor-disabled; - } -} - -// Open state for the dropdown -.open { - // Show the menu - > .dropdown-menu { - display: block; - } - - // Remove the outline when :focus is triggered - > a { - outline: 0; - } -} - -// Menu positioning -// -// Add extra class to `.dropdown-menu` to flip the alignment of the dropdown -// menu with the parent. -.dropdown-menu-right { - left: auto; // Reset the default from `.dropdown-menu` - right: 0; -} -// With v3, we enabled auto-flipping if you have a dropdown within a right -// aligned nav component. To enable the undoing of that, we provide an override -// to restore the default dropdown menu alignment. -// -// This is only for left-aligning a dropdown menu within a `.navbar-right` or -// `.pull-right` nav component. -.dropdown-menu-left { - left: 0; - right: auto; -} - -// Dropdown section headers -.dropdown-header { - display: block; - padding: 3px 20px; - font-size: @font-size-small; - line-height: @line-height-base; - color: @dropdown-header-color; - white-space: nowrap; // as with > li > a -} - -// Backdrop to catch body clicks on mobile, etc. -.dropdown-backdrop { - position: fixed; - left: 0; - right: 0; - bottom: 0; - top: 0; - z-index: (@zindex-dropdown - 10); -} - -// Right aligned dropdowns -.pull-right > .dropdown-menu { - right: 0; - left: auto; -} - -// Allow for dropdowns to go bottom up (aka, dropup-menu) -// -// Just add .dropup after the standard .dropdown class and you're set, bro. -// TODO: abstract this so that the navbar fixed styles are not placed here? - -.dropup, -.navbar-fixed-bottom .dropdown { - // Reverse the caret - .caret { - border-top: 0; - border-bottom: @caret-width-base dashed; - border-bottom: @caret-width-base solid ~"\9"; // IE8 - content: ""; - } - // Different positioning for bottom up menu - .dropdown-menu { - top: auto; - bottom: 100%; - margin-bottom: 2px; - } -} - - -// Component alignment -// -// Reiterate per navbar.less and the modified component alignment there. - -@media (min-width: @grid-float-breakpoint) { - .navbar-right { - .dropdown-menu { - .dropdown-menu-right(); - } - // Necessary for overrides of the default right aligned menu. - // Will remove come v4 in all likelihood. - .dropdown-menu-left { - .dropdown-menu-left(); - } - } -} diff --git a/themes/devopsdays-responsive/static/less/forms.less b/themes/devopsdays-responsive/static/less/forms.less deleted file mode 100755 index e8b071a138e..00000000000 --- a/themes/devopsdays-responsive/static/less/forms.less +++ /dev/null @@ -1,613 +0,0 @@ -// -// Forms -// -------------------------------------------------- - - -// Normalize non-controls -// -// Restyle and baseline non-control form elements. - -fieldset { - padding: 0; - margin: 0; - border: 0; - // Chrome and Firefox set a `min-width: min-content;` on fieldsets, - // so we reset that to ensure it behaves more like a standard block element. - // See https://github.com/twbs/bootstrap/issues/12359. - min-width: 0; -} - -legend { - display: block; - width: 100%; - padding: 0; - margin-bottom: @line-height-computed; - font-size: (@font-size-base * 1.5); - line-height: inherit; - color: @legend-color; - border: 0; - border-bottom: 1px solid @legend-border-color; -} - -label { - display: inline-block; - max-width: 100%; // Force IE8 to wrap long content (see https://github.com/twbs/bootstrap/issues/13141) - margin-bottom: 5px; - font-weight: bold; -} - - -// Normalize form controls -// -// While most of our form styles require extra classes, some basic normalization -// is required to ensure optimum display with or without those classes to better -// address browser inconsistencies. - -// Override content-box in Normalize (* isn't specific enough) -input[type="search"] { - .box-sizing(border-box); -} - -// Position radios and checkboxes better -input[type="radio"], -input[type="checkbox"] { - margin: 4px 0 0; - margin-top: 1px \9; // IE8-9 - line-height: normal; -} - -input[type="file"] { - display: block; -} - -// Make range inputs behave like textual form controls -input[type="range"] { - display: block; - width: 100%; -} - -// Make multiple select elements height not fixed -select[multiple], -select[size] { - height: auto; -} - -// Focus for file, radio, and checkbox -input[type="file"]:focus, -input[type="radio"]:focus, -input[type="checkbox"]:focus { - .tab-focus(); -} - -// Adjust output element -output { - display: block; - padding-top: (@padding-base-vertical + 1); - font-size: @font-size-base; - line-height: @line-height-base; - color: @input-color; -} - - -// Common form controls -// -// Shared size and type resets for form controls. Apply `.form-control` to any -// of the following form controls: -// -// select -// textarea -// input[type="text"] -// input[type="password"] -// input[type="datetime"] -// input[type="datetime-local"] -// input[type="date"] -// input[type="month"] -// input[type="time"] -// input[type="week"] -// input[type="number"] -// input[type="email"] -// input[type="url"] -// input[type="search"] -// input[type="tel"] -// input[type="color"] - -.form-control { - display: block; - width: 100%; - height: @input-height-base; // Make inputs at least the height of their button counterpart (base line-height + padding + border) - padding: @padding-base-vertical @padding-base-horizontal; - font-size: @font-size-base; - line-height: @line-height-base; - color: @input-color; - background-color: @input-bg; - background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214 - border: 1px solid @input-border; - border-radius: @input-border-radius; // Note: This has no effect on s in CSS. - .box-shadow(inset 0 1px 1px rgba(0,0,0,.075)); - .transition(~"border-color ease-in-out .15s, box-shadow ease-in-out .15s"); - - // Customize the `:focus` state to imitate native WebKit styles. - .form-control-focus(); - - // Placeholder - .placeholder(); - - // Unstyle the caret on `` -// element gets special love because it's special, and that's a fact! -.input-size(@input-height; @padding-vertical; @padding-horizontal; @font-size; @line-height; @border-radius) { - height: @input-height; - padding: @padding-vertical @padding-horizontal; - font-size: @font-size; - line-height: @line-height; - border-radius: @border-radius; - - select& { - height: @input-height; - line-height: @input-height; - } - - textarea&, - select[multiple]& { - height: auto; - } -} diff --git a/themes/devopsdays-responsive/static/less/mixins/gradients.less b/themes/devopsdays-responsive/static/less/mixins/gradients.less deleted file mode 100755 index 0b88a89cc56..00000000000 --- a/themes/devopsdays-responsive/static/less/mixins/gradients.less +++ /dev/null @@ -1,59 +0,0 @@ -// Gradients - -#gradient { - - // Horizontal gradient, from left to right - // - // Creates two color stops, start and end, by specifying a color and position for each color stop. - // Color stops are not available in IE9 and below. - .horizontal(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) { - background-image: -webkit-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+ - background-image: -o-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Opera 12 - background-image: linear-gradient(to right, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+ - background-repeat: repeat-x; - filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)",argb(@start-color),argb(@end-color))); // IE9 and down - } - - // Vertical gradient, from top to bottom - // - // Creates two color stops, start and end, by specifying a color and position for each color stop. - // Color stops are not available in IE9 and below. - .vertical(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) { - background-image: -webkit-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+ - background-image: -o-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Opera 12 - background-image: linear-gradient(to bottom, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+ - background-repeat: repeat-x; - filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",argb(@start-color),argb(@end-color))); // IE9 and down - } - - .directional(@start-color: #555; @end-color: #333; @deg: 45deg) { - background-repeat: repeat-x; - background-image: -webkit-linear-gradient(@deg, @start-color, @end-color); // Safari 5.1-6, Chrome 10+ - background-image: -o-linear-gradient(@deg, @start-color, @end-color); // Opera 12 - background-image: linear-gradient(@deg, @start-color, @end-color); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+ - } - .horizontal-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) { - background-image: -webkit-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color); - background-image: -o-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color); - background-image: linear-gradient(to right, @start-color, @mid-color @color-stop, @end-color); - background-repeat: no-repeat; - filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback - } - .vertical-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) { - background-image: -webkit-linear-gradient(@start-color, @mid-color @color-stop, @end-color); - background-image: -o-linear-gradient(@start-color, @mid-color @color-stop, @end-color); - background-image: linear-gradient(@start-color, @mid-color @color-stop, @end-color); - background-repeat: no-repeat; - filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback - } - .radial(@inner-color: #555; @outer-color: #333) { - background-image: -webkit-radial-gradient(circle, @inner-color, @outer-color); - background-image: radial-gradient(circle, @inner-color, @outer-color); - background-repeat: no-repeat; - } - .striped(@color: rgba(255,255,255,.15); @angle: 45deg) { - background-image: -webkit-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent); - background-image: -o-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent); - background-image: linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent); - } -} diff --git a/themes/devopsdays-responsive/static/less/mixins/grid-framework.less b/themes/devopsdays-responsive/static/less/mixins/grid-framework.less deleted file mode 100755 index 8c23eed24e6..00000000000 --- a/themes/devopsdays-responsive/static/less/mixins/grid-framework.less +++ /dev/null @@ -1,91 +0,0 @@ -// Framework grid generation -// -// Used only by Bootstrap to generate the correct number of grid classes given -// any value of `@grid-columns`. - -.make-grid-columns() { - // Common styles for all sizes of grid columns, widths 1-12 - .col(@index) { // initial - @item: ~".col-xs-@{index}, .col-sm-@{index}, .col-md-@{index}, .col-lg-@{index}"; - .col((@index + 1), @item); - } - .col(@index, @list) when (@index =< @grid-columns) { // general; "=<" isn't a typo - @item: ~".col-xs-@{index}, .col-sm-@{index}, .col-md-@{index}, .col-lg-@{index}"; - .col((@index + 1), ~"@{list}, @{item}"); - } - .col(@index, @list) when (@index > @grid-columns) { // terminal - @{list} { - position: relative; - // Prevent columns from collapsing when empty - min-height: 1px; - // Inner gutter via padding - padding-left: ceil((@grid-gutter-width / 2)); - padding-right: floor((@grid-gutter-width / 2)); - } - } - .col(1); // kickstart it -} - -.float-grid-columns(@class) { - .col(@index) { // initial - @item: ~".col-@{class}-@{index}"; - .col((@index + 1), @item); - } - .col(@index, @list) when (@index =< @grid-columns) { // general - @item: ~".col-@{class}-@{index}"; - .col((@index + 1), ~"@{list}, @{item}"); - } - .col(@index, @list) when (@index > @grid-columns) { // terminal - @{list} { - float: left; - } - } - .col(1); // kickstart it -} - -.calc-grid-column(@index, @class, @type) when (@type = width) and (@index > 0) { - .col-@{class}-@{index} { - width: percentage((@index / @grid-columns)); - } -} -.calc-grid-column(@index, @class, @type) when (@type = push) and (@index > 0) { - .col-@{class}-push-@{index} { - left: percentage((@index / @grid-columns)); - } -} -.calc-grid-column(@index, @class, @type) when (@type = push) and (@index = 0) { - .col-@{class}-push-0 { - left: auto; - } -} -.calc-grid-column(@index, @class, @type) when (@type = pull) and (@index > 0) { - .col-@{class}-pull-@{index} { - right: percentage((@index / @grid-columns)); - } -} -.calc-grid-column(@index, @class, @type) when (@type = pull) and (@index = 0) { - .col-@{class}-pull-0 { - right: auto; - } -} -.calc-grid-column(@index, @class, @type) when (@type = offset) { - .col-@{class}-offset-@{index} { - margin-left: percentage((@index / @grid-columns)); - } -} - -// Basic looping in LESS -.loop-grid-columns(@index, @class, @type) when (@index >= 0) { - .calc-grid-column(@index, @class, @type); - // next iteration - .loop-grid-columns((@index - 1), @class, @type); -} - -// Create grid for specific class -.make-grid(@class) { - .float-grid-columns(@class); - .loop-grid-columns(@grid-columns, @class, width); - .loop-grid-columns(@grid-columns, @class, pull); - .loop-grid-columns(@grid-columns, @class, push); - .loop-grid-columns(@grid-columns, @class, offset); -} diff --git a/themes/devopsdays-responsive/static/less/mixins/grid.less b/themes/devopsdays-responsive/static/less/mixins/grid.less deleted file mode 100755 index df496d0b3c1..00000000000 --- a/themes/devopsdays-responsive/static/less/mixins/grid.less +++ /dev/null @@ -1,122 +0,0 @@ -// Grid system -// -// Generate semantic grid columns with these mixins. - -// Centered container element -.container-fixed(@gutter: @grid-gutter-width) { - margin-right: auto; - margin-left: auto; - padding-left: floor((@gutter / 2)); - padding-right: ceil((@gutter / 2)); - &:extend(.clearfix all); -} - -// Creates a wrapper for a series of columns -.make-row(@gutter: @grid-gutter-width) { - margin-left: ceil((@gutter / -2)); - margin-right: floor((@gutter / -2)); - &:extend(.clearfix all); -} - -// Generate the extra small columns -.make-xs-column(@columns; @gutter: @grid-gutter-width) { - position: relative; - float: left; - width: percentage((@columns / @grid-columns)); - min-height: 1px; - padding-left: (@gutter / 2); - padding-right: (@gutter / 2); -} -.make-xs-column-offset(@columns) { - margin-left: percentage((@columns / @grid-columns)); -} -.make-xs-column-push(@columns) { - left: percentage((@columns / @grid-columns)); -} -.make-xs-column-pull(@columns) { - right: percentage((@columns / @grid-columns)); -} - -// Generate the small columns -.make-sm-column(@columns; @gutter: @grid-gutter-width) { - position: relative; - min-height: 1px; - padding-left: (@gutter / 2); - padding-right: (@gutter / 2); - - @media (min-width: @screen-sm-min) { - float: left; - width: percentage((@columns / @grid-columns)); - } -} -.make-sm-column-offset(@columns) { - @media (min-width: @screen-sm-min) { - margin-left: percentage((@columns / @grid-columns)); - } -} -.make-sm-column-push(@columns) { - @media (min-width: @screen-sm-min) { - left: percentage((@columns / @grid-columns)); - } -} -.make-sm-column-pull(@columns) { - @media (min-width: @screen-sm-min) { - right: percentage((@columns / @grid-columns)); - } -} - -// Generate the medium columns -.make-md-column(@columns; @gutter: @grid-gutter-width) { - position: relative; - min-height: 1px; - padding-left: (@gutter / 2); - padding-right: (@gutter / 2); - - @media (min-width: @screen-md-min) { - float: left; - width: percentage((@columns / @grid-columns)); - } -} -.make-md-column-offset(@columns) { - @media (min-width: @screen-md-min) { - margin-left: percentage((@columns / @grid-columns)); - } -} -.make-md-column-push(@columns) { - @media (min-width: @screen-md-min) { - left: percentage((@columns / @grid-columns)); - } -} -.make-md-column-pull(@columns) { - @media (min-width: @screen-md-min) { - right: percentage((@columns / @grid-columns)); - } -} - -// Generate the large columns -.make-lg-column(@columns; @gutter: @grid-gutter-width) { - position: relative; - min-height: 1px; - padding-left: (@gutter / 2); - padding-right: (@gutter / 2); - - @media (min-width: @screen-lg-min) { - float: left; - width: percentage((@columns / @grid-columns)); - } -} -.make-lg-column-offset(@columns) { - @media (min-width: @screen-lg-min) { - margin-left: percentage((@columns / @grid-columns)); - } -} -.make-lg-column-push(@columns) { - @media (min-width: @screen-lg-min) { - left: percentage((@columns / @grid-columns)); - } -} -.make-lg-column-pull(@columns) { - @media (min-width: @screen-lg-min) { - right: percentage((@columns / @grid-columns)); - } -} diff --git a/themes/devopsdays-responsive/static/less/mixins/hide-text.less b/themes/devopsdays-responsive/static/less/mixins/hide-text.less deleted file mode 100755 index 2bb84a3b444..00000000000 --- a/themes/devopsdays-responsive/static/less/mixins/hide-text.less +++ /dev/null @@ -1,21 +0,0 @@ -// CSS image replacement -// -// Heads up! v3 launched with only `.hide-text()`, but per our pattern for -// mixins being reused as classes with the same name, this doesn't hold up. As -// of v3.0.1 we have added `.text-hide()` and deprecated `.hide-text()`. -// -// Source: https://github.com/h5bp/html5-boilerplate/commit/aa0396eae757 - -// Deprecated as of v3.0.1 (has been removed in v4) -.hide-text() { - font: ~"0/0" a; - color: transparent; - text-shadow: none; - background-color: transparent; - border: 0; -} - -// New mixin to use as of v3.0.1 -.text-hide() { - .hide-text(); -} diff --git a/themes/devopsdays-responsive/static/less/mixins/image.less b/themes/devopsdays-responsive/static/less/mixins/image.less deleted file mode 100755 index f233cb3e199..00000000000 --- a/themes/devopsdays-responsive/static/less/mixins/image.less +++ /dev/null @@ -1,33 +0,0 @@ -// Image Mixins -// - Responsive image -// - Retina image - - -// Responsive image -// -// Keep images from scaling beyond the width of their parents. -.img-responsive(@display: block) { - display: @display; - max-width: 100%; // Part 1: Set a maximum relative to the parent - height: auto; // Part 2: Scale the height according to the width, otherwise you get stretching -} - - -// Retina image -// -// Short retina mixin for setting background-image and -size. Note that the -// spelling of `min--moz-device-pixel-ratio` is intentional. -.img-retina(@file-1x; @file-2x; @width-1x; @height-1x) { - background-image: url("@{file-1x}"); - - @media - only screen and (-webkit-min-device-pixel-ratio: 2), - only screen and ( min--moz-device-pixel-ratio: 2), - only screen and ( -o-min-device-pixel-ratio: 2/1), - only screen and ( min-device-pixel-ratio: 2), - only screen and ( min-resolution: 192dpi), - only screen and ( min-resolution: 2dppx) { - background-image: url("@{file-2x}"); - background-size: @width-1x @height-1x; - } -} diff --git a/themes/devopsdays-responsive/static/less/mixins/labels.less b/themes/devopsdays-responsive/static/less/mixins/labels.less deleted file mode 100755 index 9f7a67ee3d0..00000000000 --- a/themes/devopsdays-responsive/static/less/mixins/labels.less +++ /dev/null @@ -1,12 +0,0 @@ -// Labels - -.label-variant(@color) { - background-color: @color; - - &[href] { - &:hover, - &:focus { - background-color: darken(@color, 10%); - } - } -} diff --git a/themes/devopsdays-responsive/static/less/mixins/list-group.less b/themes/devopsdays-responsive/static/less/mixins/list-group.less deleted file mode 100755 index 03aa19069d9..00000000000 --- a/themes/devopsdays-responsive/static/less/mixins/list-group.less +++ /dev/null @@ -1,30 +0,0 @@ -// List Groups - -.list-group-item-variant(@state; @background; @color) { - .list-group-item-@{state} { - color: @color; - background-color: @background; - - a&, - button& { - color: @color; - - .list-group-item-heading { - color: inherit; - } - - &:hover, - &:focus { - color: @color; - background-color: darken(@background, 5%); - } - &.active, - &.active:hover, - &.active:focus { - color: #fff; - background-color: @color; - border-color: @color; - } - } - } -} diff --git a/themes/devopsdays-responsive/static/less/mixins/nav-divider.less b/themes/devopsdays-responsive/static/less/mixins/nav-divider.less deleted file mode 100755 index feb1e9ed0da..00000000000 --- a/themes/devopsdays-responsive/static/less/mixins/nav-divider.less +++ /dev/null @@ -1,10 +0,0 @@ -// Horizontal dividers -// -// Dividers (basically an hr) within dropdowns and nav lists - -.nav-divider(@color: #e5e5e5) { - height: 1px; - margin: ((@line-height-computed / 2) - 1) 0; - overflow: hidden; - background-color: @color; -} diff --git a/themes/devopsdays-responsive/static/less/mixins/nav-vertical-align.less b/themes/devopsdays-responsive/static/less/mixins/nav-vertical-align.less deleted file mode 100755 index d458c78613e..00000000000 --- a/themes/devopsdays-responsive/static/less/mixins/nav-vertical-align.less +++ /dev/null @@ -1,9 +0,0 @@ -// Navbar vertical align -// -// Vertically center elements in the navbar. -// Example: an element has a height of 30px, so write out `.navbar-vertical-align(30px);` to calculate the appropriate top margin. - -.navbar-vertical-align(@element-height) { - margin-top: ((@navbar-height - @element-height) / 2); - margin-bottom: ((@navbar-height - @element-height) / 2); -} diff --git a/themes/devopsdays-responsive/static/less/mixins/opacity.less b/themes/devopsdays-responsive/static/less/mixins/opacity.less deleted file mode 100755 index 33ed25ce676..00000000000 --- a/themes/devopsdays-responsive/static/less/mixins/opacity.less +++ /dev/null @@ -1,8 +0,0 @@ -// Opacity - -.opacity(@opacity) { - opacity: @opacity; - // IE8 filter - @opacity-ie: (@opacity * 100); - filter: ~"alpha(opacity=@{opacity-ie})"; -} diff --git a/themes/devopsdays-responsive/static/less/mixins/pagination.less b/themes/devopsdays-responsive/static/less/mixins/pagination.less deleted file mode 100755 index 618804f2dee..00000000000 --- a/themes/devopsdays-responsive/static/less/mixins/pagination.less +++ /dev/null @@ -1,24 +0,0 @@ -// Pagination - -.pagination-size(@padding-vertical; @padding-horizontal; @font-size; @line-height; @border-radius) { - > li { - > a, - > span { - padding: @padding-vertical @padding-horizontal; - font-size: @font-size; - line-height: @line-height; - } - &:first-child { - > a, - > span { - .border-left-radius(@border-radius); - } - } - &:last-child { - > a, - > span { - .border-right-radius(@border-radius); - } - } - } -} diff --git a/themes/devopsdays-responsive/static/less/mixins/panels.less b/themes/devopsdays-responsive/static/less/mixins/panels.less deleted file mode 100755 index 49ee10d4ad3..00000000000 --- a/themes/devopsdays-responsive/static/less/mixins/panels.less +++ /dev/null @@ -1,24 +0,0 @@ -// Panels - -.panel-variant(@border; @heading-text-color; @heading-bg-color; @heading-border) { - border-color: @border; - - & > .panel-heading { - color: @heading-text-color; - background-color: @heading-bg-color; - border-color: @heading-border; - - + .panel-collapse > .panel-body { - border-top-color: @border; - } - .badge { - color: @heading-bg-color; - background-color: @heading-text-color; - } - } - & > .panel-footer { - + .panel-collapse > .panel-body { - border-bottom-color: @border; - } - } -} diff --git a/themes/devopsdays-responsive/static/less/mixins/progress-bar.less b/themes/devopsdays-responsive/static/less/mixins/progress-bar.less deleted file mode 100755 index f07996a34db..00000000000 --- a/themes/devopsdays-responsive/static/less/mixins/progress-bar.less +++ /dev/null @@ -1,10 +0,0 @@ -// Progress bars - -.progress-bar-variant(@color) { - background-color: @color; - - // Deprecated parent class requirement as of v3.2.0 - .progress-striped & { - #gradient > .striped(); - } -} diff --git a/themes/devopsdays-responsive/static/less/mixins/reset-filter.less b/themes/devopsdays-responsive/static/less/mixins/reset-filter.less deleted file mode 100755 index 68cdb5e1860..00000000000 --- a/themes/devopsdays-responsive/static/less/mixins/reset-filter.less +++ /dev/null @@ -1,8 +0,0 @@ -// Reset filters for IE -// -// When you need to remove a gradient background, do not forget to use this to reset -// the IE filter for IE9 and below. - -.reset-filter() { - filter: e(%("progid:DXImageTransform.Microsoft.gradient(enabled = false)")); -} diff --git a/themes/devopsdays-responsive/static/less/mixins/reset-text.less b/themes/devopsdays-responsive/static/less/mixins/reset-text.less deleted file mode 100755 index 58dd4d19b4d..00000000000 --- a/themes/devopsdays-responsive/static/less/mixins/reset-text.less +++ /dev/null @@ -1,18 +0,0 @@ -.reset-text() { - font-family: @font-family-base; - // We deliberately do NOT reset font-size. - font-style: normal; - font-weight: normal; - letter-spacing: normal; - line-break: auto; - line-height: @line-height-base; - text-align: left; // Fallback for where `start` is not supported - text-align: start; - text-decoration: none; - text-shadow: none; - text-transform: none; - white-space: normal; - word-break: normal; - word-spacing: normal; - word-wrap: normal; -} diff --git a/themes/devopsdays-responsive/static/less/mixins/resize.less b/themes/devopsdays-responsive/static/less/mixins/resize.less deleted file mode 100755 index 3acd3afdbac..00000000000 --- a/themes/devopsdays-responsive/static/less/mixins/resize.less +++ /dev/null @@ -1,6 +0,0 @@ -// Resize anything - -.resizable(@direction) { - resize: @direction; // Options: horizontal, vertical, both - overflow: auto; // Per CSS3 UI, `resize` only applies when `overflow` isn't `visible` -} diff --git a/themes/devopsdays-responsive/static/less/mixins/responsive-visibility.less b/themes/devopsdays-responsive/static/less/mixins/responsive-visibility.less deleted file mode 100755 index ecf1e979fd2..00000000000 --- a/themes/devopsdays-responsive/static/less/mixins/responsive-visibility.less +++ /dev/null @@ -1,15 +0,0 @@ -// Responsive utilities - -// -// More easily include all the states for responsive-utilities.less. -.responsive-visibility() { - display: block !important; - table& { display: table !important; } - tr& { display: table-row !important; } - th&, - td& { display: table-cell !important; } -} - -.responsive-invisibility() { - display: none !important; -} diff --git a/themes/devopsdays-responsive/static/less/mixins/size.less b/themes/devopsdays-responsive/static/less/mixins/size.less deleted file mode 100755 index a8be6508960..00000000000 --- a/themes/devopsdays-responsive/static/less/mixins/size.less +++ /dev/null @@ -1,10 +0,0 @@ -// Sizing shortcuts - -.size(@width; @height) { - width: @width; - height: @height; -} - -.square(@size) { - .size(@size; @size); -} diff --git a/themes/devopsdays-responsive/static/less/mixins/tab-focus.less b/themes/devopsdays-responsive/static/less/mixins/tab-focus.less deleted file mode 100755 index 1f1f05ab054..00000000000 --- a/themes/devopsdays-responsive/static/less/mixins/tab-focus.less +++ /dev/null @@ -1,9 +0,0 @@ -// WebKit-style focus - -.tab-focus() { - // Default - outline: thin dotted; - // WebKit - outline: 5px auto -webkit-focus-ring-color; - outline-offset: -2px; -} diff --git a/themes/devopsdays-responsive/static/less/mixins/table-row.less b/themes/devopsdays-responsive/static/less/mixins/table-row.less deleted file mode 100755 index 0f287f1a8bd..00000000000 --- a/themes/devopsdays-responsive/static/less/mixins/table-row.less +++ /dev/null @@ -1,28 +0,0 @@ -// Tables - -.table-row-variant(@state; @background) { - // Exact selectors below required to override `.table-striped` and prevent - // inheritance to nested tables. - .table > thead > tr, - .table > tbody > tr, - .table > tfoot > tr { - > td.@{state}, - > th.@{state}, - &.@{state} > td, - &.@{state} > th { - background-color: @background; - } - } - - // Hover states for `.table-hover` - // Note: this is not available for cells or rows within `thead` or `tfoot`. - .table-hover > tbody > tr { - > td.@{state}:hover, - > th.@{state}:hover, - &.@{state}:hover > td, - &:hover > .@{state}, - &.@{state}:hover > th { - background-color: darken(@background, 5%); - } - } -} diff --git a/themes/devopsdays-responsive/static/less/mixins/text-emphasis.less b/themes/devopsdays-responsive/static/less/mixins/text-emphasis.less deleted file mode 100755 index 9e8a77a6985..00000000000 --- a/themes/devopsdays-responsive/static/less/mixins/text-emphasis.less +++ /dev/null @@ -1,9 +0,0 @@ -// Typography - -.text-emphasis-variant(@color) { - color: @color; - a&:hover, - a&:focus { - color: darken(@color, 10%); - } -} diff --git a/themes/devopsdays-responsive/static/less/mixins/text-overflow.less b/themes/devopsdays-responsive/static/less/mixins/text-overflow.less deleted file mode 100755 index c11ad2fb747..00000000000 --- a/themes/devopsdays-responsive/static/less/mixins/text-overflow.less +++ /dev/null @@ -1,8 +0,0 @@ -// Text overflow -// Requires inline-block or block for proper styling - -.text-overflow() { - overflow: hidden; - text-overflow: ellipsis; - white-space: nowrap; -} diff --git a/themes/devopsdays-responsive/static/less/mixins/vendor-prefixes.less b/themes/devopsdays-responsive/static/less/mixins/vendor-prefixes.less deleted file mode 100755 index 2b5e74b99ed..00000000000 --- a/themes/devopsdays-responsive/static/less/mixins/vendor-prefixes.less +++ /dev/null @@ -1,227 +0,0 @@ -// Vendor Prefixes -// -// All vendor mixins are deprecated as of v3.2.0 due to the introduction of -// Autoprefixer in our Gruntfile. They have been removed in v4. - -// - Animations -// - Backface visibility -// - Box shadow -// - Box sizing -// - Content columns -// - Hyphens -// - Placeholder text -// - Transformations -// - Transitions -// - User Select - - -// Animations -.animation(@animation) { - -webkit-animation: @animation; - -o-animation: @animation; - animation: @animation; -} -.animation-name(@name) { - -webkit-animation-name: @name; - animation-name: @name; -} -.animation-duration(@duration) { - -webkit-animation-duration: @duration; - animation-duration: @duration; -} -.animation-timing-function(@timing-function) { - -webkit-animation-timing-function: @timing-function; - animation-timing-function: @timing-function; -} -.animation-delay(@delay) { - -webkit-animation-delay: @delay; - animation-delay: @delay; -} -.animation-iteration-count(@iteration-count) { - -webkit-animation-iteration-count: @iteration-count; - animation-iteration-count: @iteration-count; -} -.animation-direction(@direction) { - -webkit-animation-direction: @direction; - animation-direction: @direction; -} -.animation-fill-mode(@fill-mode) { - -webkit-animation-fill-mode: @fill-mode; - animation-fill-mode: @fill-mode; -} - -// Backface visibility -// Prevent browsers from flickering when using CSS 3D transforms. -// Default value is `visible`, but can be changed to `hidden` - -.backface-visibility(@visibility) { - -webkit-backface-visibility: @visibility; - -moz-backface-visibility: @visibility; - backface-visibility: @visibility; -} - -// Drop shadows -// -// Note: Deprecated `.box-shadow()` as of v3.1.0 since all of Bootstrap's -// supported browsers that have box shadow capabilities now support it. - -.box-shadow(@shadow) { - -webkit-box-shadow: @shadow; // iOS <4.3 & Android <4.1 - box-shadow: @shadow; -} - -// Box sizing -.box-sizing(@boxmodel) { - -webkit-box-sizing: @boxmodel; - -moz-box-sizing: @boxmodel; - box-sizing: @boxmodel; -} - -// CSS3 Content Columns -.content-columns(@column-count; @column-gap: @grid-gutter-width) { - -webkit-column-count: @column-count; - -moz-column-count: @column-count; - column-count: @column-count; - -webkit-column-gap: @column-gap; - -moz-column-gap: @column-gap; - column-gap: @column-gap; -} - -// Optional hyphenation -.hyphens(@mode: auto) { - word-wrap: break-word; - -webkit-hyphens: @mode; - -moz-hyphens: @mode; - -ms-hyphens: @mode; // IE10+ - -o-hyphens: @mode; - hyphens: @mode; -} - -// Placeholder text -.placeholder(@color: @input-color-placeholder) { - // Firefox - &::-moz-placeholder { - color: @color; - opacity: 1; // Override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526 - } - &:-ms-input-placeholder { color: @color; } // Internet Explorer 10+ - &::-webkit-input-placeholder { color: @color; } // Safari and Chrome -} - -// Transformations -.scale(@ratio) { - -webkit-transform: scale(@ratio); - -ms-transform: scale(@ratio); // IE9 only - -o-transform: scale(@ratio); - transform: scale(@ratio); -} -.scale(@ratioX; @ratioY) { - -webkit-transform: scale(@ratioX, @ratioY); - -ms-transform: scale(@ratioX, @ratioY); // IE9 only - -o-transform: scale(@ratioX, @ratioY); - transform: scale(@ratioX, @ratioY); -} -.scaleX(@ratio) { - -webkit-transform: scaleX(@ratio); - -ms-transform: scaleX(@ratio); // IE9 only - -o-transform: scaleX(@ratio); - transform: scaleX(@ratio); -} -.scaleY(@ratio) { - -webkit-transform: scaleY(@ratio); - -ms-transform: scaleY(@ratio); // IE9 only - -o-transform: scaleY(@ratio); - transform: scaleY(@ratio); -} -.skew(@x; @y) { - -webkit-transform: skewX(@x) skewY(@y); - -ms-transform: skewX(@x) skewY(@y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+ - -o-transform: skewX(@x) skewY(@y); - transform: skewX(@x) skewY(@y); -} -.translate(@x; @y) { - -webkit-transform: translate(@x, @y); - -ms-transform: translate(@x, @y); // IE9 only - -o-transform: translate(@x, @y); - transform: translate(@x, @y); -} -.translate3d(@x; @y; @z) { - -webkit-transform: translate3d(@x, @y, @z); - transform: translate3d(@x, @y, @z); -} -.rotate(@degrees) { - -webkit-transform: rotate(@degrees); - -ms-transform: rotate(@degrees); // IE9 only - -o-transform: rotate(@degrees); - transform: rotate(@degrees); -} -.rotateX(@degrees) { - -webkit-transform: rotateX(@degrees); - -ms-transform: rotateX(@degrees); // IE9 only - -o-transform: rotateX(@degrees); - transform: rotateX(@degrees); -} -.rotateY(@degrees) { - -webkit-transform: rotateY(@degrees); - -ms-transform: rotateY(@degrees); // IE9 only - -o-transform: rotateY(@degrees); - transform: rotateY(@degrees); -} -.perspective(@perspective) { - -webkit-perspective: @perspective; - -moz-perspective: @perspective; - perspective: @perspective; -} -.perspective-origin(@perspective) { - -webkit-perspective-origin: @perspective; - -moz-perspective-origin: @perspective; - perspective-origin: @perspective; -} -.transform-origin(@origin) { - -webkit-transform-origin: @origin; - -moz-transform-origin: @origin; - -ms-transform-origin: @origin; // IE9 only - transform-origin: @origin; -} - - -// Transitions - -.transition(@transition) { - -webkit-transition: @transition; - -o-transition: @transition; - transition: @transition; -} -.transition-property(@transition-property) { - -webkit-transition-property: @transition-property; - transition-property: @transition-property; -} -.transition-delay(@transition-delay) { - -webkit-transition-delay: @transition-delay; - transition-delay: @transition-delay; -} -.transition-duration(@transition-duration) { - -webkit-transition-duration: @transition-duration; - transition-duration: @transition-duration; -} -.transition-timing-function(@timing-function) { - -webkit-transition-timing-function: @timing-function; - transition-timing-function: @timing-function; -} -.transition-transform(@transition) { - -webkit-transition: -webkit-transform @transition; - -moz-transition: -moz-transform @transition; - -o-transition: -o-transform @transition; - transition: transform @transition; -} - - -// User select -// For selecting text on the page - -.user-select(@select) { - -webkit-user-select: @select; - -moz-user-select: @select; - -ms-user-select: @select; // IE10+ - user-select: @select; -} diff --git a/themes/devopsdays-responsive/static/less/modals.less b/themes/devopsdays-responsive/static/less/modals.less deleted file mode 100755 index 767ce36ba37..00000000000 --- a/themes/devopsdays-responsive/static/less/modals.less +++ /dev/null @@ -1,150 +0,0 @@ -// -// Modals -// -------------------------------------------------- - -// .modal-open - body class for killing the scroll -// .modal - container to scroll within -// .modal-dialog - positioning shell for the actual modal -// .modal-content - actual modal w/ bg and corners and shit - -// Kill the scroll on the body -.modal-open { - overflow: hidden; -} - -// Container that the modal scrolls within -.modal { - display: none; - overflow: hidden; - position: fixed; - top: 0; - right: 0; - bottom: 0; - left: 0; - z-index: @zindex-modal; - -webkit-overflow-scrolling: touch; - - // Prevent Chrome on Windows from adding a focus outline. For details, see - // https://github.com/twbs/bootstrap/pull/10951. - outline: 0; - - // When fading in the modal, animate it to slide down - &.fade .modal-dialog { - .translate(0, -25%); - .transition-transform(~"0.3s ease-out"); - } - &.in .modal-dialog { .translate(0, 0) } -} -.modal-open .modal { - overflow-x: hidden; - overflow-y: auto; -} - -// Shell div to position the modal with bottom padding -.modal-dialog { - position: relative; - width: auto; - margin: 10px; -} - -// Actual modal -.modal-content { - position: relative; - background-color: @modal-content-bg; - border: 1px solid @modal-content-fallback-border-color; //old browsers fallback (ie8 etc) - border: 1px solid @modal-content-border-color; - border-radius: @border-radius-large; - .box-shadow(0 3px 9px rgba(0,0,0,.5)); - background-clip: padding-box; - // Remove focus outline from opened modal - outline: 0; -} - -// Modal background -.modal-backdrop { - position: fixed; - top: 0; - right: 0; - bottom: 0; - left: 0; - z-index: @zindex-modal-background; - background-color: @modal-backdrop-bg; - // Fade for backdrop - &.fade { .opacity(0); } - &.in { .opacity(@modal-backdrop-opacity); } -} - -// Modal header -// Top section of the modal w/ title and dismiss -.modal-header { - padding: @modal-title-padding; - border-bottom: 1px solid @modal-header-border-color; - &:extend(.clearfix all); -} -// Close icon -.modal-header .close { - margin-top: -2px; -} - -// Title text within header -.modal-title { - margin: 0; - line-height: @modal-title-line-height; -} - -// Modal body -// Where all modal content resides (sibling of .modal-header and .modal-footer) -.modal-body { - position: relative; - padding: @modal-inner-padding; -} - -// Footer (for actions) -.modal-footer { - padding: @modal-inner-padding; - text-align: right; // right align buttons - border-top: 1px solid @modal-footer-border-color; - &:extend(.clearfix all); // clear it in case folks use .pull-* classes on buttons - - // Properly space out buttons - .btn + .btn { - margin-left: 5px; - margin-bottom: 0; // account for input[type="submit"] which gets the bottom margin like all other inputs - } - // but override that for button groups - .btn-group .btn + .btn { - margin-left: -1px; - } - // and override it for block buttons as well - .btn-block + .btn-block { - margin-left: 0; - } -} - -// Measure scrollbar width for padding body during modal show/hide -.modal-scrollbar-measure { - position: absolute; - top: -9999px; - width: 50px; - height: 50px; - overflow: scroll; -} - -// Scale up the modal -@media (min-width: @screen-sm-min) { - // Automatically set modal's width for larger viewports - .modal-dialog { - width: @modal-md; - margin: 30px auto; - } - .modal-content { - .box-shadow(0 5px 15px rgba(0,0,0,.5)); - } - - // Modal sizes - .modal-sm { width: @modal-sm; } -} - -@media (min-width: @screen-md-min) { - .modal-lg { width: @modal-lg; } -} diff --git a/themes/devopsdays-responsive/static/less/navbar.less b/themes/devopsdays-responsive/static/less/navbar.less deleted file mode 100755 index 286f3687afe..00000000000 --- a/themes/devopsdays-responsive/static/less/navbar.less +++ /dev/null @@ -1,660 +0,0 @@ -// -// Navbars -// -------------------------------------------------- - - -// Wrapper and base class -// -// Provide a static navbar from which we expand to create full-width, fixed, and -// other navbar variations. - -.navbar { - position: relative; - min-height: @navbar-height; // Ensure a navbar always shows (e.g., without a .navbar-brand in collapsed mode) - margin-bottom: @navbar-margin-bottom; - border: 1px solid transparent; - - // Prevent floats from breaking the navbar - &:extend(.clearfix all); - - @media (min-width: @grid-float-breakpoint) { - border-radius: @navbar-border-radius; - } -} - - -// Navbar heading -// -// Groups `.navbar-brand` and `.navbar-toggle` into a single component for easy -// styling of responsive aspects. - -.navbar-header { - &:extend(.clearfix all); - - @media (min-width: @grid-float-breakpoint) { - float: left; - } -} - - -// Navbar collapse (body) -// -// Group your navbar content into this for easy collapsing and expanding across -// various device sizes. By default, this content is collapsed when <768px, but -// will expand past that for a horizontal display. -// -// To start (on mobile devices) the navbar links, forms, and buttons are stacked -// vertically and include a `max-height` to overflow in case you have too much -// content for the user's viewport. - -.navbar-collapse { - overflow-x: visible; - padding-right: @navbar-padding-horizontal; - padding-left: @navbar-padding-horizontal; - border-top: 1px solid transparent; - box-shadow: inset 0 1px 0 rgba(255,255,255,.1); - &:extend(.clearfix all); - -webkit-overflow-scrolling: touch; - - &.in { - overflow-y: auto; - } - - @media (min-width: @grid-float-breakpoint) { - width: auto; - border-top: 0; - box-shadow: none; - - &.collapse { - display: block !important; - height: auto !important; - padding-bottom: 0; // Override default setting - overflow: visible !important; - } - - &.in { - overflow-y: visible; - } - - // Undo the collapse side padding for navbars with containers to ensure - // alignment of right-aligned contents. - .navbar-fixed-top &, - .navbar-static-top &, - .navbar-fixed-bottom & { - padding-left: 0; - padding-right: 0; - } - } -} - -.navbar-fixed-top, -.navbar-fixed-bottom { - .navbar-collapse { - max-height: @navbar-collapse-max-height; - - @media (max-device-width: @screen-xs-min) and (orientation: landscape) { - max-height: 200px; - } - } -} - - -// Both navbar header and collapse -// -// When a container is present, change the behavior of the header and collapse. - -.container, -.container-fluid { - > .navbar-header, - > .navbar-collapse { - margin-right: -@navbar-padding-horizontal; - margin-left: -@navbar-padding-horizontal; - - @media (min-width: @grid-float-breakpoint) { - margin-right: 0; - margin-left: 0; - } - } -} - - -// -// Navbar alignment options -// -// Display the navbar across the entirety of the page or fixed it to the top or -// bottom of the page. - -// Static top (unfixed, but 100% wide) navbar -.navbar-static-top { - z-index: @zindex-navbar; - border-width: 0 0 1px; - - @media (min-width: @grid-float-breakpoint) { - border-radius: 0; - } -} - -// Fix the top/bottom navbars when screen real estate supports it -.navbar-fixed-top, -.navbar-fixed-bottom { - position: fixed; - right: 0; - left: 0; - z-index: @zindex-navbar-fixed; - - // Undo the rounded corners - @media (min-width: @grid-float-breakpoint) { - border-radius: 0; - } -} -.navbar-fixed-top { - top: 0; - border-width: 0 0 1px; -} -.navbar-fixed-bottom { - bottom: 0; - margin-bottom: 0; // override .navbar defaults - border-width: 1px 0 0; -} - - -// Brand/project name - -.navbar-brand { - float: left; - padding: @navbar-padding-vertical @navbar-padding-horizontal; - font-size: @font-size-large; - line-height: @line-height-computed; - height: @navbar-height; - - &:hover, - &:focus { - text-decoration: none; - } - - > img { - display: block; - } - - @media (min-width: @grid-float-breakpoint) { - .navbar > .container &, - .navbar > .container-fluid & { - margin-left: -@navbar-padding-horizontal; - } - } -} - - -// Navbar toggle -// -// Custom button for toggling the `.navbar-collapse`, powered by the collapse -// JavaScript plugin. - -.navbar-toggle { - position: relative; - float: right; - margin-right: @navbar-padding-horizontal; - padding: 9px 10px; - .navbar-vertical-align(34px); - background-color: transparent; - background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214 - border: 1px solid transparent; - border-radius: @border-radius-base; - - // We remove the `outline` here, but later compensate by attaching `:hover` - // styles to `:focus`. - &:focus { - outline: 0; - } - - // Bars - .icon-bar { - display: block; - width: 22px; - height: 2px; - border-radius: 1px; - } - .icon-bar + .icon-bar { - margin-top: 4px; - } - - @media (min-width: @grid-float-breakpoint) { - display: none; - } -} - - -// Navbar nav links -// -// Builds on top of the `.nav` components with its own modifier class to make -// the nav the full height of the horizontal nav (above 768px). - -.navbar-nav { - margin: (@navbar-padding-vertical / 2) -@navbar-padding-horizontal; - - > li > a { - padding-top: 10px; - padding-bottom: 10px; - line-height: @line-height-computed; - } - - @media (max-width: @grid-float-breakpoint-max) { - // Dropdowns get custom display when collapsed - .open .dropdown-menu { - position: static; - float: none; - width: auto; - margin-top: 0; - background-color: transparent; - border: 0; - box-shadow: none; - > li > a, - .dropdown-header { - padding: 5px 15px 5px 25px; - } - > li > a { - line-height: @line-height-computed; - &:hover, - &:focus { - background-image: none; - } - } - } - } - - // Uncollapse the nav - @media (min-width: @grid-float-breakpoint) { - float: left; - margin: 0; - - > li { - float: left; - > a { - padding-top: @navbar-padding-vertical; - padding-bottom: @navbar-padding-vertical; - } - } - } -} - - -// Navbar form -// -// Extension of the `.form-inline` with some extra flavor for optimum display in -// our navbars. - -.navbar-form { - margin-left: -@navbar-padding-horizontal; - margin-right: -@navbar-padding-horizontal; - padding: 10px @navbar-padding-horizontal; - border-top: 1px solid transparent; - border-bottom: 1px solid transparent; - @shadow: inset 0 1px 0 rgba(255,255,255,.1), 0 1px 0 rgba(255,255,255,.1); - .box-shadow(@shadow); - - // Mixin behavior for optimum display - .form-inline(); - - .form-group { - @media (max-width: @grid-float-breakpoint-max) { - margin-bottom: 5px; - - &:last-child { - margin-bottom: 0; - } - } - } - - // Vertically center in expanded, horizontal navbar - .navbar-vertical-align(@input-height-base); - - // Undo 100% width for pull classes - @media (min-width: @grid-float-breakpoint) { - width: auto; - border: 0; - margin-left: 0; - margin-right: 0; - padding-top: 0; - padding-bottom: 0; - .box-shadow(none); - } -} - - -// Dropdown menus - -// Menu position and menu carets -.navbar-nav > li > .dropdown-menu { - margin-top: 0; - .border-top-radius(0); -} -// Menu position and menu caret support for dropups via extra dropup class -.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu { - margin-bottom: 0; - .border-top-radius(@navbar-border-radius); - .border-bottom-radius(0); -} - - -// Buttons in navbars -// -// Vertically center a button within a navbar (when *not* in a form). - -.navbar-btn { - .navbar-vertical-align(@input-height-base); - - &.btn-sm { - .navbar-vertical-align(@input-height-small); - } - &.btn-xs { - .navbar-vertical-align(22); - } -} - - -// Text in navbars -// -// Add a class to make any element properly align itself vertically within the navbars. - -.navbar-text { - .navbar-vertical-align(@line-height-computed); - - @media (min-width: @grid-float-breakpoint) { - float: left; - margin-left: @navbar-padding-horizontal; - margin-right: @navbar-padding-horizontal; - } -} - - -// Component alignment -// -// Repurpose the pull utilities as their own navbar utilities to avoid specificity -// issues with parents and chaining. Only do this when the navbar is uncollapsed -// though so that navbar contents properly stack and align in mobile. -// -// Declared after the navbar components to ensure more specificity on the margins. - -@media (min-width: @grid-float-breakpoint) { - .navbar-left { .pull-left(); } - .navbar-right { - .pull-right(); - margin-right: @navbar-padding-horizontal; - - ~ .navbar-right { - margin-right: 0; - } - } -} - - -// Alternate navbars -// -------------------------------------------------- - -// Default navbar -.navbar-default { - background-color: @navbar-default-bg; - border-color: @navbar-default-border; - - .navbar-brand { - color: @navbar-default-brand-color; - &:hover, - &:focus { - color: @navbar-default-brand-hover-color; - background-color: @navbar-default-brand-hover-bg; - } - } - - .navbar-text { - color: @navbar-default-color; - } - - .navbar-nav { - > li > a { - color: @navbar-default-link-color; - - &:hover, - &:focus { - color: @navbar-default-link-hover-color; - background-color: @navbar-default-link-hover-bg; - } - } - > .active > a { - &, - &:hover, - &:focus { - color: @navbar-default-link-active-color; - background-color: @navbar-default-link-active-bg; - } - } - > .disabled > a { - &, - &:hover, - &:focus { - color: @navbar-default-link-disabled-color; - background-color: @navbar-default-link-disabled-bg; - } - } - } - - .navbar-toggle { - border-color: @navbar-default-toggle-border-color; - &:hover, - &:focus { - background-color: @navbar-default-toggle-hover-bg; - } - .icon-bar { - background-color: @navbar-default-toggle-icon-bar-bg; - } - } - - .navbar-collapse, - .navbar-form { - border-color: @navbar-default-border; - } - - // Dropdown menu items - .navbar-nav { - // Remove background color from open dropdown - > .open > a { - &, - &:hover, - &:focus { - background-color: @navbar-default-link-active-bg; - color: @navbar-default-link-active-color; - } - } - - @media (max-width: @grid-float-breakpoint-max) { - // Dropdowns get custom display when collapsed - .open .dropdown-menu { - > li > a { - color: @navbar-default-link-color; - &:hover, - &:focus { - color: @navbar-default-link-hover-color; - background-color: @navbar-default-link-hover-bg; - } - } - > .active > a { - &, - &:hover, - &:focus { - color: @navbar-default-link-active-color; - background-color: @navbar-default-link-active-bg; - } - } - > .disabled > a { - &, - &:hover, - &:focus { - color: @navbar-default-link-disabled-color; - background-color: @navbar-default-link-disabled-bg; - } - } - } - } - } - - - // Links in navbars - // - // Add a class to ensure links outside the navbar nav are colored correctly. - - .navbar-link { - color: @navbar-default-link-color; - &:hover { - color: @navbar-default-link-hover-color; - } - } - - .btn-link { - color: @navbar-default-link-color; - &:hover, - &:focus { - color: @navbar-default-link-hover-color; - } - &[disabled], - fieldset[disabled] & { - &:hover, - &:focus { - color: @navbar-default-link-disabled-color; - } - } - } -} - -// Inverse navbar - -.navbar-inverse { - background-color: @navbar-inverse-bg; - border-color: @navbar-inverse-border; - - .navbar-brand { - color: @navbar-inverse-brand-color; - &:hover, - &:focus { - color: @navbar-inverse-brand-hover-color; - background-color: @navbar-inverse-brand-hover-bg; - } - } - - .navbar-text { - color: @navbar-inverse-color; - } - - .navbar-nav { - > li > a { - color: @navbar-inverse-link-color; - - &:hover, - &:focus { - color: @navbar-inverse-link-hover-color; - background-color: @navbar-inverse-link-hover-bg; - } - } - > .active > a { - &, - &:hover, - &:focus { - color: @navbar-inverse-link-active-color; - background-color: @navbar-inverse-link-active-bg; - } - } - > .disabled > a { - &, - &:hover, - &:focus { - color: @navbar-inverse-link-disabled-color; - background-color: @navbar-inverse-link-disabled-bg; - } - } - } - - // Darken the responsive nav toggle - .navbar-toggle { - border-color: @navbar-inverse-toggle-border-color; - &:hover, - &:focus { - background-color: @navbar-inverse-toggle-hover-bg; - } - .icon-bar { - background-color: @navbar-inverse-toggle-icon-bar-bg; - } - } - - .navbar-collapse, - .navbar-form { - border-color: darken(@navbar-inverse-bg, 7%); - } - - // Dropdowns - .navbar-nav { - > .open > a { - &, - &:hover, - &:focus { - background-color: @navbar-inverse-link-active-bg; - color: @navbar-inverse-link-active-color; - } - } - - @media (max-width: @grid-float-breakpoint-max) { - // Dropdowns get custom display - .open .dropdown-menu { - > .dropdown-header { - border-color: @navbar-inverse-border; - } - .divider { - background-color: @navbar-inverse-border; - } - > li > a { - color: @navbar-inverse-link-color; - &:hover, - &:focus { - color: @navbar-inverse-link-hover-color; - background-color: @navbar-inverse-link-hover-bg; - } - } - > .active > a { - &, - &:hover, - &:focus { - color: @navbar-inverse-link-active-color; - background-color: @navbar-inverse-link-active-bg; - } - } - > .disabled > a { - &, - &:hover, - &:focus { - color: @navbar-inverse-link-disabled-color; - background-color: @navbar-inverse-link-disabled-bg; - } - } - } - } - } - - .navbar-link { - color: @navbar-inverse-link-color; - &:hover { - color: @navbar-inverse-link-hover-color; - } - } - - .btn-link { - color: @navbar-inverse-link-color; - &:hover, - &:focus { - color: @navbar-inverse-link-hover-color; - } - &[disabled], - fieldset[disabled] & { - &:hover, - &:focus { - color: @navbar-inverse-link-disabled-color; - } - } - } -} diff --git a/themes/devopsdays-responsive/static/less/navs.less b/themes/devopsdays-responsive/static/less/navs.less deleted file mode 100755 index a3d11b13621..00000000000 --- a/themes/devopsdays-responsive/static/less/navs.less +++ /dev/null @@ -1,242 +0,0 @@ -// -// Navs -// -------------------------------------------------- - - -// Base class -// -------------------------------------------------- - -.nav { - margin-bottom: 0; - padding-left: 0; // Override default ul/ol - list-style: none; - &:extend(.clearfix all); - - > li { - position: relative; - display: block; - - > a { - position: relative; - display: block; - padding: @nav-link-padding; - &:hover, - &:focus { - text-decoration: none; - background-color: @nav-link-hover-bg; - } - } - - // Disabled state sets text to gray and nukes hover/tab effects - &.disabled > a { - color: @nav-disabled-link-color; - - &:hover, - &:focus { - color: @nav-disabled-link-hover-color; - text-decoration: none; - background-color: transparent; - cursor: @cursor-disabled; - } - } - } - - // Open dropdowns - .open > a { - &, - &:hover, - &:focus { - background-color: @nav-link-hover-bg; - border-color: @link-color; - } - } - - // Nav dividers (deprecated with v3.0.1) - // - // This should have been removed in v3 with the dropping of `.nav-list`, but - // we missed it. We don't currently support this anywhere, but in the interest - // of maintaining backward compatibility in case you use it, it's deprecated. - .nav-divider { - .nav-divider(); - } - - // Prevent IE8 from misplacing imgs - // - // See https://github.com/h5bp/html5-boilerplate/issues/984#issuecomment-3985989 - > li > a > img { - max-width: none; - } -} - - -// Tabs -// ------------------------- - -// Give the tabs something to sit on -.nav-tabs { - border-bottom: 1px solid @nav-tabs-border-color; - > li { - float: left; - // Make the list-items overlay the bottom border - margin-bottom: -1px; - - // Actual tabs (as links) - > a { - margin-right: 2px; - line-height: @line-height-base; - border: 1px solid transparent; - border-radius: @border-radius-base @border-radius-base 0 0; - &:hover { - border-color: @nav-tabs-link-hover-border-color @nav-tabs-link-hover-border-color @nav-tabs-border-color; - } - } - - // Active state, and its :hover to override normal :hover - &.active > a { - &, - &:hover, - &:focus { - color: @nav-tabs-active-link-hover-color; - background-color: @nav-tabs-active-link-hover-bg; - border: 1px solid @nav-tabs-active-link-hover-border-color; - border-bottom-color: transparent; - cursor: default; - } - } - } - // pulling this in mainly for less shorthand - &.nav-justified { - .nav-justified(); - .nav-tabs-justified(); - } -} - - -// Pills -// ------------------------- -.nav-pills { - > li { - float: left; - - // Links rendered as pills - > a { - border-radius: @nav-pills-border-radius; - } - + li { - margin-left: 2px; - } - - // Active state - &.active > a { - &, - &:hover, - &:focus { - color: @nav-pills-active-link-hover-color; - background-color: @nav-pills-active-link-hover-bg; - } - } - } -} - - -// Stacked pills -.nav-stacked { - > li { - float: none; - + li { - margin-top: 2px; - margin-left: 0; // no need for this gap between nav items - } - } -} - - -// Nav variations -// -------------------------------------------------- - -// Justified nav links -// ------------------------- - -.nav-justified { - width: 100%; - - > li { - float: none; - > a { - text-align: center; - margin-bottom: 5px; - } - } - - > .dropdown .dropdown-menu { - top: auto; - left: auto; - } - - @media (min-width: @screen-sm-min) { - > li { - display: table-cell; - width: 1%; - > a { - margin-bottom: 0; - } - } - } -} - -// Move borders to anchors instead of bottom of list -// -// Mixin for adding on top the shared `.nav-justified` styles for our tabs -.nav-tabs-justified { - border-bottom: 0; - - > li > a { - // Override margin from .nav-tabs - margin-right: 0; - border-radius: @border-radius-base; - } - - > .active > a, - > .active > a:hover, - > .active > a:focus { - border: 1px solid @nav-tabs-justified-link-border-color; - } - - @media (min-width: @screen-sm-min) { - > li > a { - border-bottom: 1px solid @nav-tabs-justified-link-border-color; - border-radius: @border-radius-base @border-radius-base 0 0; - } - > .active > a, - > .active > a:hover, - > .active > a:focus { - border-bottom-color: @nav-tabs-justified-active-link-border-color; - } - } -} - - -// Tabbable tabs -// ------------------------- - -// Hide tabbable panes to start, show them when `.active` -.tab-content { - > .tab-pane { - display: none; - } - > .active { - display: block; - } -} - - -// Dropdowns -// ------------------------- - -// Specific dropdowns -.nav-tabs .dropdown-menu { - // make dropdown border overlap tab border - margin-top: -1px; - // Remove the top rounded corners here since there is a hard edge above the menu - .border-top-radius(0); -} diff --git a/themes/devopsdays-responsive/static/less/normalize.less b/themes/devopsdays-responsive/static/less/normalize.less deleted file mode 100755 index 9dddf73ad29..00000000000 --- a/themes/devopsdays-responsive/static/less/normalize.less +++ /dev/null @@ -1,424 +0,0 @@ -/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */ - -// -// 1. Set default font family to sans-serif. -// 2. Prevent iOS and IE text size adjust after device orientation change, -// without disabling user zoom. -// - -html { - font-family: sans-serif; // 1 - -ms-text-size-adjust: 100%; // 2 - -webkit-text-size-adjust: 100%; // 2 -} - -// -// Remove default margin. -// - -body { - margin: 0; -} - -// HTML5 display definitions -// ========================================================================== - -// -// Correct `block` display not defined for any HTML5 element in IE 8/9. -// Correct `block` display not defined for `details` or `summary` in IE 10/11 -// and Firefox. -// Correct `block` display not defined for `main` in IE 11. -// - -article, -aside, -details, -figcaption, -figure, -footer, -header, -hgroup, -main, -menu, -nav, -section, -summary { - display: block; -} - -// -// 1. Correct `inline-block` display not defined in IE 8/9. -// 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera. -// - -audio, -canvas, -progress, -video { - display: inline-block; // 1 - vertical-align: baseline; // 2 -} - -// -// Prevent modern browsers from displaying `audio` without controls. -// Remove excess height in iOS 5 devices. -// - -audio:not([controls]) { - display: none; - height: 0; -} - -// -// Address `[hidden]` styling not present in IE 8/9/10. -// Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22. -// - -[hidden], -template { - display: none; -} - -// Links -// ========================================================================== - -// -// Remove the gray background color from active links in IE 10. -// - -a { - background-color: transparent; -} - -// -// Improve readability of focused elements when they are also in an -// active/hover state. -// - -a:active, -a:hover { - outline: 0; -} - -// Text-level semantics -// ========================================================================== - -// -// Address styling not present in IE 8/9/10/11, Safari, and Chrome. -// - -abbr[title] { - border-bottom: 1px dotted; -} - -// -// Address style set to `bolder` in Firefox 4+, Safari, and Chrome. -// - -b, -strong { - font-weight: bold; -} - -// -// Address styling not present in Safari and Chrome. -// - -dfn { - font-style: italic; -} - -// -// Address variable `h1` font-size and margin within `section` and `article` -// contexts in Firefox 4+, Safari, and Chrome. -// - -h1 { - font-size: 2em; - margin: 0.67em 0; -} - -// -// Address styling not present in IE 8/9. -// - -mark { - background: #ff0; - color: #000; -} - -// -// Address inconsistent and variable font size in all browsers. -// - -small { - font-size: 80%; -} - -// -// Prevent `sub` and `sup` affecting `line-height` in all browsers. -// - -sub, -sup { - font-size: 75%; - line-height: 0; - position: relative; - vertical-align: baseline; -} - -sup { - top: -0.5em; -} - -sub { - bottom: -0.25em; -} - -// Embedded content -// ========================================================================== - -// -// Remove border when inside `a` element in IE 8/9/10. -// - -img { - border: 0; -} - -// -// Correct overflow not hidden in IE 9/10/11. -// - -svg:not(:root) { - overflow: hidden; -} - -// Grouping content -// ========================================================================== - -// -// Address margin not present in IE 8/9 and Safari. -// - -figure { - margin: 1em 40px; -} - -// -// Address differences between Firefox and other browsers. -// - -hr { - box-sizing: content-box; - height: 0; -} - -// -// Contain overflow in all browsers. -// - -pre { - overflow: auto; -} - -// -// Address odd `em`-unit font size rendering in all browsers. -// - -code, -kbd, -pre, -samp { - font-family: monospace, monospace; - font-size: 1em; -} - -// Forms -// ========================================================================== - -// -// Known limitation: by default, Chrome and Safari on OS X allow very limited -// styling of `select`, unless a `border` property is set. -// - -// -// 1. Correct color not being inherited. -// Known issue: affects color of disabled elements. -// 2. Correct font properties not being inherited. -// 3. Address margins set differently in Firefox 4+, Safari, and Chrome. -// - -button, -input, -optgroup, -select, -textarea { - color: inherit; // 1 - font: inherit; // 2 - margin: 0; // 3 -} - -// -// Address `overflow` set to `hidden` in IE 8/9/10/11. -// - -button { - overflow: visible; -} - -// -// Address inconsistent `text-transform` inheritance for `button` and `select`. -// All other form control elements do not inherit `text-transform` values. -// Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera. -// Correct `select` style inheritance in Firefox. -// - -button, -select { - text-transform: none; -} - -// -// 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` -// and `video` controls. -// 2. Correct inability to style clickable `input` types in iOS. -// 3. Improve usability and consistency of cursor style between image-type -// `input` and others. -// - -button, -html input[type="button"], // 1 -input[type="reset"], -input[type="submit"] { - -webkit-appearance: button; // 2 - cursor: pointer; // 3 -} - -// -// Re-set default cursor for disabled elements. -// - -button[disabled], -html input[disabled] { - cursor: default; -} - -// -// Remove inner padding and border in Firefox 4+. -// - -button::-moz-focus-inner, -input::-moz-focus-inner { - border: 0; - padding: 0; -} - -// -// Address Firefox 4+ setting `line-height` on `input` using `!important` in -// the UA stylesheet. -// - -input { - line-height: normal; -} - -// -// It's recommended that you don't attempt to style these elements. -// Firefox's implementation doesn't respect box-sizing, padding, or width. -// -// 1. Address box sizing set to `content-box` in IE 8/9/10. -// 2. Remove excess padding in IE 8/9/10. -// - -input[type="checkbox"], -input[type="radio"] { - box-sizing: border-box; // 1 - padding: 0; // 2 -} - -// -// Fix the cursor style for Chrome's increment/decrement buttons. For certain -// `font-size` values of the `input`, it causes the cursor style of the -// decrement button to change from `default` to `text`. -// - -input[type="number"]::-webkit-inner-spin-button, -input[type="number"]::-webkit-outer-spin-button { - height: auto; -} - -// -// 1. Address `appearance` set to `searchfield` in Safari and Chrome. -// 2. Address `box-sizing` set to `border-box` in Safari and Chrome. -// - -input[type="search"] { - -webkit-appearance: textfield; // 1 - box-sizing: content-box; //2 -} - -// -// Remove inner padding and search cancel button in Safari and Chrome on OS X. -// Safari (but not Chrome) clips the cancel button when the search input has -// padding (and `textfield` appearance). -// - -input[type="search"]::-webkit-search-cancel-button, -input[type="search"]::-webkit-search-decoration { - -webkit-appearance: none; -} - -// -// Define consistent border, margin, and padding. -// - -fieldset { - border: 1px solid #c0c0c0; - margin: 0 2px; - padding: 0.35em 0.625em 0.75em; -} - -// -// 1. Correct `color` not being inherited in IE 8/9/10/11. -// 2. Remove padding so people aren't caught out if they zero out fieldsets. -// - -legend { - border: 0; // 1 - padding: 0; // 2 -} - -// -// Remove default vertical scrollbar in IE 8/9/10/11. -// - -textarea { - overflow: auto; -} - -// -// Don't inherit the `font-weight` (applied by a rule above). -// NOTE: the default cannot safely be changed in Chrome and Safari on OS X. -// - -optgroup { - font-weight: bold; -} - -// Tables -// ========================================================================== - -// -// Remove most spacing between table cells. -// - -table { - border-collapse: collapse; - border-spacing: 0; -} - -td, -th { - padding: 0; -} diff --git a/themes/devopsdays-responsive/static/less/pager.less b/themes/devopsdays-responsive/static/less/pager.less deleted file mode 100755 index 41abaaadc5d..00000000000 --- a/themes/devopsdays-responsive/static/less/pager.less +++ /dev/null @@ -1,54 +0,0 @@ -// -// Pager pagination -// -------------------------------------------------- - - -.pager { - padding-left: 0; - margin: @line-height-computed 0; - list-style: none; - text-align: center; - &:extend(.clearfix all); - li { - display: inline; - > a, - > span { - display: inline-block; - padding: 5px 14px; - background-color: @pager-bg; - border: 1px solid @pager-border; - border-radius: @pager-border-radius; - } - - > a:hover, - > a:focus { - text-decoration: none; - background-color: @pager-hover-bg; - } - } - - .next { - > a, - > span { - float: right; - } - } - - .previous { - > a, - > span { - float: left; - } - } - - .disabled { - > a, - > a:hover, - > a:focus, - > span { - color: @pager-disabled-color; - background-color: @pager-bg; - cursor: @cursor-disabled; - } - } -} diff --git a/themes/devopsdays-responsive/static/less/pagination.less b/themes/devopsdays-responsive/static/less/pagination.less deleted file mode 100755 index 31f77aae4ed..00000000000 --- a/themes/devopsdays-responsive/static/less/pagination.less +++ /dev/null @@ -1,89 +0,0 @@ -// -// Pagination (multiple pages) -// -------------------------------------------------- -.pagination { - display: inline-block; - padding-left: 0; - margin: @line-height-computed 0; - border-radius: @border-radius-base; - - > li { - display: inline; // Remove list-style and block-level defaults - > a, - > span { - position: relative; - float: left; // Collapse white-space - padding: @padding-base-vertical @padding-base-horizontal; - line-height: @line-height-base; - text-decoration: none; - color: @pagination-color; - background-color: @pagination-bg; - border: 1px solid @pagination-border; - margin-left: -1px; - } - &:first-child { - > a, - > span { - margin-left: 0; - .border-left-radius(@border-radius-base); - } - } - &:last-child { - > a, - > span { - .border-right-radius(@border-radius-base); - } - } - } - - > li > a, - > li > span { - &:hover, - &:focus { - z-index: 2; - color: @pagination-hover-color; - background-color: @pagination-hover-bg; - border-color: @pagination-hover-border; - } - } - - > .active > a, - > .active > span { - &, - &:hover, - &:focus { - z-index: 3; - color: @pagination-active-color; - background-color: @pagination-active-bg; - border-color: @pagination-active-border; - cursor: default; - } - } - - > .disabled { - > span, - > span:hover, - > span:focus, - > a, - > a:hover, - > a:focus { - color: @pagination-disabled-color; - background-color: @pagination-disabled-bg; - border-color: @pagination-disabled-border; - cursor: @cursor-disabled; - } - } -} - -// Sizing -// -------------------------------------------------- - -// Large -.pagination-lg { - .pagination-size(@padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @border-radius-large); -} - -// Small -.pagination-sm { - .pagination-size(@padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @border-radius-small); -} diff --git a/themes/devopsdays-responsive/static/less/panels.less b/themes/devopsdays-responsive/static/less/panels.less deleted file mode 100755 index 425eb5e642c..00000000000 --- a/themes/devopsdays-responsive/static/less/panels.less +++ /dev/null @@ -1,271 +0,0 @@ -// -// Panels -// -------------------------------------------------- - - -// Base class -.panel { - margin-bottom: @line-height-computed; - background-color: @panel-bg; - border: 1px solid transparent; - border-radius: @panel-border-radius; - .box-shadow(0 1px 1px rgba(0,0,0,.05)); -} - -// Panel contents -.panel-body { - padding: @panel-body-padding; - &:extend(.clearfix all); -} - -// Optional heading -.panel-heading { - padding: @panel-heading-padding; - border-bottom: 1px solid transparent; - .border-top-radius((@panel-border-radius - 1)); - - > .dropdown .dropdown-toggle { - color: inherit; - } -} - -// Within heading, strip any `h*` tag of its default margins for spacing. -.panel-title { - margin-top: 0; - margin-bottom: 0; - font-size: ceil((@font-size-base * 1.125)); - color: inherit; - - > a, - > small, - > .small, - > small > a, - > .small > a { - color: inherit; - } -} - -// Optional footer (stays gray in every modifier class) -.panel-footer { - padding: @panel-footer-padding; - background-color: @panel-footer-bg; - border-top: 1px solid @panel-inner-border; - .border-bottom-radius((@panel-border-radius - 1)); -} - - -// List groups in panels -// -// By default, space out list group content from panel headings to account for -// any kind of custom content between the two. - -.panel { - > .list-group, - > .panel-collapse > .list-group { - margin-bottom: 0; - - .list-group-item { - border-width: 1px 0; - border-radius: 0; - } - - // Add border top radius for first one - &:first-child { - .list-group-item:first-child { - border-top: 0; - .border-top-radius((@panel-border-radius - 1)); - } - } - - // Add border bottom radius for last one - &:last-child { - .list-group-item:last-child { - border-bottom: 0; - .border-bottom-radius((@panel-border-radius - 1)); - } - } - } - > .panel-heading + .panel-collapse > .list-group { - .list-group-item:first-child { - .border-top-radius(0); - } - } -} -// Collapse space between when there's no additional content. -.panel-heading + .list-group { - .list-group-item:first-child { - border-top-width: 0; - } -} -.list-group + .panel-footer { - border-top-width: 0; -} - -// Tables in panels -// -// Place a non-bordered `.table` within a panel (not within a `.panel-body`) and -// watch it go full width. - -.panel { - > .table, - > .table-responsive > .table, - > .panel-collapse > .table { - margin-bottom: 0; - - caption { - padding-left: @panel-body-padding; - padding-right: @panel-body-padding; - } - } - // Add border top radius for first one - > .table:first-child, - > .table-responsive:first-child > .table:first-child { - .border-top-radius((@panel-border-radius - 1)); - - > thead:first-child, - > tbody:first-child { - > tr:first-child { - border-top-left-radius: (@panel-border-radius - 1); - border-top-right-radius: (@panel-border-radius - 1); - - td:first-child, - th:first-child { - border-top-left-radius: (@panel-border-radius - 1); - } - td:last-child, - th:last-child { - border-top-right-radius: (@panel-border-radius - 1); - } - } - } - } - // Add border bottom radius for last one - > .table:last-child, - > .table-responsive:last-child > .table:last-child { - .border-bottom-radius((@panel-border-radius - 1)); - - > tbody:last-child, - > tfoot:last-child { - > tr:last-child { - border-bottom-left-radius: (@panel-border-radius - 1); - border-bottom-right-radius: (@panel-border-radius - 1); - - td:first-child, - th:first-child { - border-bottom-left-radius: (@panel-border-radius - 1); - } - td:last-child, - th:last-child { - border-bottom-right-radius: (@panel-border-radius - 1); - } - } - } - } - > .panel-body + .table, - > .panel-body + .table-responsive, - > .table + .panel-body, - > .table-responsive + .panel-body { - border-top: 1px solid @table-border-color; - } - > .table > tbody:first-child > tr:first-child th, - > .table > tbody:first-child > tr:first-child td { - border-top: 0; - } - > .table-bordered, - > .table-responsive > .table-bordered { - border: 0; - > thead, - > tbody, - > tfoot { - > tr { - > th:first-child, - > td:first-child { - border-left: 0; - } - > th:last-child, - > td:last-child { - border-right: 0; - } - } - } - > thead, - > tbody { - > tr:first-child { - > td, - > th { - border-bottom: 0; - } - } - } - > tbody, - > tfoot { - > tr:last-child { - > td, - > th { - border-bottom: 0; - } - } - } - } - > .table-responsive { - border: 0; - margin-bottom: 0; - } -} - - -// Collapsable panels (aka, accordion) -// -// Wrap a series of panels in `.panel-group` to turn them into an accordion with -// the help of our collapse JavaScript plugin. - -.panel-group { - margin-bottom: @line-height-computed; - - // Tighten up margin so it's only between panels - .panel { - margin-bottom: 0; - border-radius: @panel-border-radius; - - + .panel { - margin-top: 5px; - } - } - - .panel-heading { - border-bottom: 0; - - + .panel-collapse > .panel-body, - + .panel-collapse > .list-group { - border-top: 1px solid @panel-inner-border; - } - } - - .panel-footer { - border-top: 0; - + .panel-collapse .panel-body { - border-bottom: 1px solid @panel-inner-border; - } - } -} - - -// Contextual variations -.panel-default { - .panel-variant(@panel-default-border; @panel-default-text; @panel-default-heading-bg; @panel-default-border); -} -.panel-primary { - .panel-variant(@panel-primary-border; @panel-primary-text; @panel-primary-heading-bg; @panel-primary-border); -} -.panel-success { - .panel-variant(@panel-success-border; @panel-success-text; @panel-success-heading-bg; @panel-success-border); -} -.panel-info { - .panel-variant(@panel-info-border; @panel-info-text; @panel-info-heading-bg; @panel-info-border); -} -.panel-warning { - .panel-variant(@panel-warning-border; @panel-warning-text; @panel-warning-heading-bg; @panel-warning-border); -} -.panel-danger { - .panel-variant(@panel-danger-border; @panel-danger-text; @panel-danger-heading-bg; @panel-danger-border); -} diff --git a/themes/devopsdays-responsive/static/less/popovers.less b/themes/devopsdays-responsive/static/less/popovers.less deleted file mode 100755 index 3a62a6455ac..00000000000 --- a/themes/devopsdays-responsive/static/less/popovers.less +++ /dev/null @@ -1,131 +0,0 @@ -// -// Popovers -// -------------------------------------------------- - - -.popover { - position: absolute; - top: 0; - left: 0; - z-index: @zindex-popover; - display: none; - max-width: @popover-max-width; - padding: 1px; - // Our parent element can be arbitrary since popovers are by default inserted as a sibling of their target element. - // So reset our font and text properties to avoid inheriting weird values. - .reset-text(); - font-size: @font-size-base; - - background-color: @popover-bg; - background-clip: padding-box; - border: 1px solid @popover-fallback-border-color; - border: 1px solid @popover-border-color; - border-radius: @border-radius-large; - .box-shadow(0 5px 10px rgba(0,0,0,.2)); - - // Offset the popover to account for the popover arrow - &.top { margin-top: -@popover-arrow-width; } - &.right { margin-left: @popover-arrow-width; } - &.bottom { margin-top: @popover-arrow-width; } - &.left { margin-left: -@popover-arrow-width; } -} - -.popover-title { - margin: 0; // reset heading margin - padding: 8px 14px; - font-size: @font-size-base; - background-color: @popover-title-bg; - border-bottom: 1px solid darken(@popover-title-bg, 5%); - border-radius: (@border-radius-large - 1) (@border-radius-large - 1) 0 0; -} - -.popover-content { - padding: 9px 14px; -} - -// Arrows -// -// .arrow is outer, .arrow:after is inner - -.popover > .arrow { - &, - &:after { - position: absolute; - display: block; - width: 0; - height: 0; - border-color: transparent; - border-style: solid; - } -} -.popover > .arrow { - border-width: @popover-arrow-outer-width; -} -.popover > .arrow:after { - border-width: @popover-arrow-width; - content: ""; -} - -.popover { - &.top > .arrow { - left: 50%; - margin-left: -@popover-arrow-outer-width; - border-bottom-width: 0; - border-top-color: @popover-arrow-outer-fallback-color; // IE8 fallback - border-top-color: @popover-arrow-outer-color; - bottom: -@popover-arrow-outer-width; - &:after { - content: " "; - bottom: 1px; - margin-left: -@popover-arrow-width; - border-bottom-width: 0; - border-top-color: @popover-arrow-color; - } - } - &.right > .arrow { - top: 50%; - left: -@popover-arrow-outer-width; - margin-top: -@popover-arrow-outer-width; - border-left-width: 0; - border-right-color: @popover-arrow-outer-fallback-color; // IE8 fallback - border-right-color: @popover-arrow-outer-color; - &:after { - content: " "; - left: 1px; - bottom: -@popover-arrow-width; - border-left-width: 0; - border-right-color: @popover-arrow-color; - } - } - &.bottom > .arrow { - left: 50%; - margin-left: -@popover-arrow-outer-width; - border-top-width: 0; - border-bottom-color: @popover-arrow-outer-fallback-color; // IE8 fallback - border-bottom-color: @popover-arrow-outer-color; - top: -@popover-arrow-outer-width; - &:after { - content: " "; - top: 1px; - margin-left: -@popover-arrow-width; - border-top-width: 0; - border-bottom-color: @popover-arrow-color; - } - } - - &.left > .arrow { - top: 50%; - right: -@popover-arrow-outer-width; - margin-top: -@popover-arrow-outer-width; - border-right-width: 0; - border-left-color: @popover-arrow-outer-fallback-color; // IE8 fallback - border-left-color: @popover-arrow-outer-color; - &:after { - content: " "; - right: 1px; - border-right-width: 0; - border-left-color: @popover-arrow-color; - bottom: -@popover-arrow-width; - } - } -} diff --git a/themes/devopsdays-responsive/static/less/print.less b/themes/devopsdays-responsive/static/less/print.less deleted file mode 100755 index 66e54ab489e..00000000000 --- a/themes/devopsdays-responsive/static/less/print.less +++ /dev/null @@ -1,101 +0,0 @@ -/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */ - -// ========================================================================== -// Print styles. -// Inlined to avoid the additional HTTP request: h5bp.com/r -// ========================================================================== - -@media print { - *, - *:before, - *:after { - background: transparent !important; - color: #000 !important; // Black prints faster: h5bp.com/s - box-shadow: none !important; - text-shadow: none !important; - } - - a, - a:visited { - text-decoration: underline; - } - - a[href]:after { - content: " (" attr(href) ")"; - } - - abbr[title]:after { - content: " (" attr(title) ")"; - } - - // Don't show links that are fragment identifiers, - // or use the `javascript:` pseudo protocol - a[href^="#"]:after, - a[href^="javascript:"]:after { - content: ""; - } - - pre, - blockquote { - border: 1px solid #999; - page-break-inside: avoid; - } - - thead { - display: table-header-group; // h5bp.com/t - } - - tr, - img { - page-break-inside: avoid; - } - - img { - max-width: 100% !important; - } - - p, - h2, - h3 { - orphans: 3; - widows: 3; - } - - h2, - h3 { - page-break-after: avoid; - } - - // Bootstrap specific changes start - - // Bootstrap components - .navbar { - display: none; - } - .btn, - .dropup > .btn { - > .caret { - border-top-color: #000 !important; - } - } - .label { - border: 1px solid #000; - } - - .table { - border-collapse: collapse !important; - - td, - th { - background-color: #fff !important; - } - } - .table-bordered { - th, - td { - border: 1px solid #ddd !important; - } - } - - // Bootstrap specific changes end -} diff --git a/themes/devopsdays-responsive/static/less/progress-bars.less b/themes/devopsdays-responsive/static/less/progress-bars.less deleted file mode 100755 index 8868a1feef0..00000000000 --- a/themes/devopsdays-responsive/static/less/progress-bars.less +++ /dev/null @@ -1,87 +0,0 @@ -// -// Progress bars -// -------------------------------------------------- - - -// Bar animations -// ------------------------- - -// WebKit -@-webkit-keyframes progress-bar-stripes { - from { background-position: 40px 0; } - to { background-position: 0 0; } -} - -// Spec and IE10+ -@keyframes progress-bar-stripes { - from { background-position: 40px 0; } - to { background-position: 0 0; } -} - - -// Bar itself -// ------------------------- - -// Outer container -.progress { - overflow: hidden; - height: @line-height-computed; - margin-bottom: @line-height-computed; - background-color: @progress-bg; - border-radius: @progress-border-radius; - .box-shadow(inset 0 1px 2px rgba(0,0,0,.1)); -} - -// Bar of progress -.progress-bar { - float: left; - width: 0%; - height: 100%; - font-size: @font-size-small; - line-height: @line-height-computed; - color: @progress-bar-color; - text-align: center; - background-color: @progress-bar-bg; - .box-shadow(inset 0 -1px 0 rgba(0,0,0,.15)); - .transition(width .6s ease); -} - -// Striped bars -// -// `.progress-striped .progress-bar` is deprecated as of v3.2.0 in favor of the -// `.progress-bar-striped` class, which you just add to an existing -// `.progress-bar`. -.progress-striped .progress-bar, -.progress-bar-striped { - #gradient > .striped(); - background-size: 40px 40px; -} - -// Call animation for the active one -// -// `.progress.active .progress-bar` is deprecated as of v3.2.0 in favor of the -// `.progress-bar.active` approach. -.progress.active .progress-bar, -.progress-bar.active { - .animation(progress-bar-stripes 2s linear infinite); -} - - -// Variations -// ------------------------- - -.progress-bar-success { - .progress-bar-variant(@progress-bar-success-bg); -} - -.progress-bar-info { - .progress-bar-variant(@progress-bar-info-bg); -} - -.progress-bar-warning { - .progress-bar-variant(@progress-bar-warning-bg); -} - -.progress-bar-danger { - .progress-bar-variant(@progress-bar-danger-bg); -} diff --git a/themes/devopsdays-responsive/static/less/responsive-embed.less b/themes/devopsdays-responsive/static/less/responsive-embed.less deleted file mode 100755 index 080a5118fe9..00000000000 --- a/themes/devopsdays-responsive/static/less/responsive-embed.less +++ /dev/null @@ -1,35 +0,0 @@ -// Embeds responsive -// -// Credit: Nicolas Gallagher and SUIT CSS. - -.embed-responsive { - position: relative; - display: block; - height: 0; - padding: 0; - overflow: hidden; - - .embed-responsive-item, - iframe, - embed, - object, - video { - position: absolute; - top: 0; - left: 0; - bottom: 0; - height: 100%; - width: 100%; - border: 0; - } -} - -// Modifier class for 16:9 aspect ratio -.embed-responsive-16by9 { - padding-bottom: 56.25%; -} - -// Modifier class for 4:3 aspect ratio -.embed-responsive-4by3 { - padding-bottom: 75%; -} diff --git a/themes/devopsdays-responsive/static/less/responsive-utilities.less b/themes/devopsdays-responsive/static/less/responsive-utilities.less deleted file mode 100755 index b1db31d7bfc..00000000000 --- a/themes/devopsdays-responsive/static/less/responsive-utilities.less +++ /dev/null @@ -1,194 +0,0 @@ -// -// Responsive: Utility classes -// -------------------------------------------------- - - -// IE10 in Windows (Phone) 8 -// -// Support for responsive views via media queries is kind of borked in IE10, for -// Surface/desktop in split view and for Windows Phone 8. This particular fix -// must be accompanied by a snippet of JavaScript to sniff the user agent and -// apply some conditional CSS to *only* the Surface/desktop Windows 8. Look at -// our Getting Started page for more information on this bug. -// -// For more information, see the following: -// -// Issue: https://github.com/twbs/bootstrap/issues/10497 -// Docs: http://getbootstrap.com/getting-started/#support-ie10-width -// Source: http://timkadlec.com/2013/01/windows-phone-8-and-device-width/ -// Source: http://timkadlec.com/2012/10/ie10-snap-mode-and-responsive-design/ - -@-ms-viewport { - width: device-width; -} - - -// Visibility utilities -// Note: Deprecated .visible-xs, .visible-sm, .visible-md, and .visible-lg as of v3.2.0 -.visible-xs, -.visible-sm, -.visible-md, -.visible-lg { - .responsive-invisibility(); -} - -.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; -} - -.visible-xs { - @media (max-width: @screen-xs-max) { - .responsive-visibility(); - } -} -.visible-xs-block { - @media (max-width: @screen-xs-max) { - display: block !important; - } -} -.visible-xs-inline { - @media (max-width: @screen-xs-max) { - display: inline !important; - } -} -.visible-xs-inline-block { - @media (max-width: @screen-xs-max) { - display: inline-block !important; - } -} - -.visible-sm { - @media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) { - .responsive-visibility(); - } -} -.visible-sm-block { - @media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) { - display: block !important; - } -} -.visible-sm-inline { - @media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) { - display: inline !important; - } -} -.visible-sm-inline-block { - @media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) { - display: inline-block !important; - } -} - -.visible-md { - @media (min-width: @screen-md-min) and (max-width: @screen-md-max) { - .responsive-visibility(); - } -} -.visible-md-block { - @media (min-width: @screen-md-min) and (max-width: @screen-md-max) { - display: block !important; - } -} -.visible-md-inline { - @media (min-width: @screen-md-min) and (max-width: @screen-md-max) { - display: inline !important; - } -} -.visible-md-inline-block { - @media (min-width: @screen-md-min) and (max-width: @screen-md-max) { - display: inline-block !important; - } -} - -.visible-lg { - @media (min-width: @screen-lg-min) { - .responsive-visibility(); - } -} -.visible-lg-block { - @media (min-width: @screen-lg-min) { - display: block !important; - } -} -.visible-lg-inline { - @media (min-width: @screen-lg-min) { - display: inline !important; - } -} -.visible-lg-inline-block { - @media (min-width: @screen-lg-min) { - display: inline-block !important; - } -} - -.hidden-xs { - @media (max-width: @screen-xs-max) { - .responsive-invisibility(); - } -} -.hidden-sm { - @media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) { - .responsive-invisibility(); - } -} -.hidden-md { - @media (min-width: @screen-md-min) and (max-width: @screen-md-max) { - .responsive-invisibility(); - } -} -.hidden-lg { - @media (min-width: @screen-lg-min) { - .responsive-invisibility(); - } -} - - -// Print utilities -// -// Media queries are placed on the inside to be mixin-friendly. - -// Note: Deprecated .visible-print as of v3.2.0 -.visible-print { - .responsive-invisibility(); - - @media print { - .responsive-visibility(); - } -} -.visible-print-block { - display: none !important; - - @media print { - display: block !important; - } -} -.visible-print-inline { - display: none !important; - - @media print { - display: inline !important; - } -} -.visible-print-inline-block { - display: none !important; - - @media print { - display: inline-block !important; - } -} - -.hidden-print { - @media print { - .responsive-invisibility(); - } -} diff --git a/themes/devopsdays-responsive/static/less/scaffolding.less b/themes/devopsdays-responsive/static/less/scaffolding.less deleted file mode 100755 index 1929bfc5cfa..00000000000 --- a/themes/devopsdays-responsive/static/less/scaffolding.less +++ /dev/null @@ -1,161 +0,0 @@ -// -// Scaffolding -// -------------------------------------------------- - - -// Reset the box-sizing -// -// Heads up! This reset may cause conflicts with some third-party widgets. -// For recommendations on resolving such conflicts, see -// http://getbootstrap.com/getting-started/#third-box-sizing -* { - .box-sizing(border-box); -} -*:before, -*:after { - .box-sizing(border-box); -} - - -// Body reset - -html { - font-size: 10px; - -webkit-tap-highlight-color: rgba(0,0,0,0); -} - -body { - font-family: @font-family-base; - font-size: @font-size-base; - line-height: @line-height-base; - color: @text-color; - background-color: @body-bg; -} - -// Reset fonts for relevant elements -input, -button, -select, -textarea { - font-family: inherit; - font-size: inherit; - line-height: inherit; -} - - -// Links - -a { - color: @link-color; - text-decoration: none; - - &:hover, - &:focus { - color: @link-hover-color; - text-decoration: @link-hover-decoration; - } - - &:focus { - .tab-focus(); - } -} - - -// Figures -// -// We reset this here because previously Normalize had no `figure` margins. This -// ensures we don't break anyone's use of the element. - -figure { - margin: 0; -} - - -// Images - -img { - vertical-align: middle; -} - -// Responsive images (ensure images don't scale beyond their parents) -.img-responsive { - .img-responsive(); -} - -// Rounded corners -.img-rounded { - border-radius: @border-radius-large; -} - -// Image thumbnails -// -// Heads up! This is mixin-ed into thumbnails.less for `.thumbnail`. -.img-thumbnail { - padding: @thumbnail-padding; - line-height: @line-height-base; - background-color: @thumbnail-bg; - border: 1px solid @thumbnail-border; - border-radius: @thumbnail-border-radius; - .transition(all .2s ease-in-out); - - // Keep them at most 100% wide - .img-responsive(inline-block); -} - -// Perfect circle -.img-circle { - border-radius: 50%; // set radius in percents -} - - -// Horizontal rules - -hr { - margin-top: @line-height-computed; - margin-bottom: @line-height-computed; - border: 0; - border-top: 1px solid @hr-border; -} - - -// Only display content to screen readers -// -// See: http://a11yproject.com/posts/how-to-hide-content/ - -.sr-only { - position: absolute; - width: 1px; - height: 1px; - margin: -1px; - padding: 0; - overflow: hidden; - clip: rect(0,0,0,0); - border: 0; -} - -// Use in conjunction with .sr-only to only display content when it's focused. -// Useful for "Skip to main content" links; see http://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1 -// Credit: HTML5 Boilerplate - -.sr-only-focusable { - &:active, - &:focus { - position: static; - width: auto; - height: auto; - margin: 0; - overflow: visible; - clip: auto; - } -} - - -// iOS "clickable elements" fix for role="button" -// -// Fixes "clickability" issue (and more generally, the firing of events such as focus as well) -// for traditionally non-focusable elements with role="button" -// see https://developer.mozilla.org/en-US/docs/Web/Events/click#Safari_Mobile - -[role="button"] { - cursor: pointer; -} diff --git a/themes/devopsdays-responsive/static/less/tables.less b/themes/devopsdays-responsive/static/less/tables.less deleted file mode 100755 index 2242c036868..00000000000 --- a/themes/devopsdays-responsive/static/less/tables.less +++ /dev/null @@ -1,234 +0,0 @@ -// -// Tables -// -------------------------------------------------- - - -table { - background-color: @table-bg; -} -caption { - padding-top: @table-cell-padding; - padding-bottom: @table-cell-padding; - color: @text-muted; - text-align: left; -} -th { - text-align: left; -} - - -// Baseline styles - -.table { - width: 100%; - max-width: 100%; - margin-bottom: @line-height-computed; - // Cells - > thead, - > tbody, - > tfoot { - > tr { - > th, - > td { - padding: @table-cell-padding; - line-height: @line-height-base; - vertical-align: top; - border-top: 1px solid @table-border-color; - } - } - } - // Bottom align for column headings - > thead > tr > th { - vertical-align: bottom; - border-bottom: 2px solid @table-border-color; - } - // Remove top border from thead by default - > caption + thead, - > colgroup + thead, - > thead:first-child { - > tr:first-child { - > th, - > td { - border-top: 0; - } - } - } - // Account for multiple tbody instances - > tbody + tbody { - border-top: 2px solid @table-border-color; - } - - // Nesting - .table { - background-color: @body-bg; - } -} - - -// Condensed table w/ half padding - -.table-condensed { - > thead, - > tbody, - > tfoot { - > tr { - > th, - > td { - padding: @table-condensed-cell-padding; - } - } - } -} - - -// Bordered version -// -// Add borders all around the table and between all the columns. - -.table-bordered { - border: 1px solid @table-border-color; - > thead, - > tbody, - > tfoot { - > tr { - > th, - > td { - border: 1px solid @table-border-color; - } - } - } - > thead > tr { - > th, - > td { - border-bottom-width: 2px; - } - } -} - - -// Zebra-striping -// -// Default zebra-stripe styles (alternating gray and transparent backgrounds) - -.table-striped { - > tbody > tr:nth-of-type(odd) { - background-color: @table-bg-accent; - } -} - - -// Hover effect -// -// Placed here since it has to come after the potential zebra striping - -.table-hover { - > tbody > tr:hover { - background-color: @table-bg-hover; - } -} - - -// Table cell sizing -// -// Reset default table behavior - -table col[class*="col-"] { - position: static; // Prevent border hiding in Firefox and IE9-11 (see https://github.com/twbs/bootstrap/issues/11623) - float: none; - display: table-column; -} -table { - td, - th { - &[class*="col-"] { - position: static; // Prevent border hiding in Firefox and IE9-11 (see https://github.com/twbs/bootstrap/issues/11623) - float: none; - display: table-cell; - } - } -} - - -// Table backgrounds -// -// Exact selectors below required to override `.table-striped` and prevent -// inheritance to nested tables. - -// Generate the contextual variants -.table-row-variant(active; @table-bg-active); -.table-row-variant(success; @state-success-bg); -.table-row-variant(info; @state-info-bg); -.table-row-variant(warning; @state-warning-bg); -.table-row-variant(danger; @state-danger-bg); - - -// Responsive tables -// -// Wrap your tables in `.table-responsive` and we'll make them mobile friendly -// by enabling horizontal scrolling. Only applies <768px. Everything above that -// will display normally. - -.table-responsive { - overflow-x: auto; - min-height: 0.01%; // Workaround for IE9 bug (see https://github.com/twbs/bootstrap/issues/14837) - - @media screen and (max-width: @screen-xs-max) { - width: 100%; - margin-bottom: (@line-height-computed * 0.75); - overflow-y: hidden; - -ms-overflow-style: -ms-autohiding-scrollbar; - border: 1px solid @table-border-color; - - // Tighten up spacing - > .table { - margin-bottom: 0; - - // Ensure the content doesn't wrap - > thead, - > tbody, - > tfoot { - > tr { - > th, - > td { - white-space: nowrap; - } - } - } - } - - // Special overrides for the bordered tables - > .table-bordered { - border: 0; - - // Nuke the appropriate borders so that the parent can handle them - > thead, - > tbody, - > tfoot { - > tr { - > th:first-child, - > td:first-child { - border-left: 0; - } - > th:last-child, - > td:last-child { - border-right: 0; - } - } - } - - // Only nuke the last row's bottom-border in `tbody` and `tfoot` since - // chances are there will be only one `tr` in a `thead` and that would - // remove the border altogether. - > tbody, - > tfoot { - > tr:last-child { - > th, - > td { - border-bottom: 0; - } - } - } - - } - } -} diff --git a/themes/devopsdays-responsive/static/less/theme.less b/themes/devopsdays-responsive/static/less/theme.less deleted file mode 100755 index 8f51d913dc9..00000000000 --- a/themes/devopsdays-responsive/static/less/theme.less +++ /dev/null @@ -1,291 +0,0 @@ -/*! - * Bootstrap v3.3.6 (http://getbootstrap.com) - * Copyright 2011-2015 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - */ - -// -// Load core variables and mixins -// -------------------------------------------------- - -@import "variables.less"; -@import "mixins.less"; - - -// -// Buttons -// -------------------------------------------------- - -// Common styles -.btn-default, -.btn-primary, -.btn-success, -.btn-info, -.btn-warning, -.btn-danger { - text-shadow: 0 -1px 0 rgba(0,0,0,.2); - @shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 1px rgba(0,0,0,.075); - .box-shadow(@shadow); - - // Reset the shadow - &:active, - &.active { - .box-shadow(inset 0 3px 5px rgba(0,0,0,.125)); - } - - &.disabled, - &[disabled], - fieldset[disabled] & { - .box-shadow(none); - } - - .badge { - text-shadow: none; - } -} - -// Mixin for generating new styles -.btn-styles(@btn-color: #555) { - #gradient > .vertical(@start-color: @btn-color; @end-color: darken(@btn-color, 12%)); - .reset-filter(); // Disable gradients for IE9 because filter bleeds through rounded corners; see https://github.com/twbs/bootstrap/issues/10620 - background-repeat: repeat-x; - border-color: darken(@btn-color, 14%); - - &:hover, - &:focus { - background-color: darken(@btn-color, 12%); - background-position: 0 -15px; - } - - &:active, - &.active { - background-color: darken(@btn-color, 12%); - border-color: darken(@btn-color, 14%); - } - - &.disabled, - &[disabled], - fieldset[disabled] & { - &, - &:hover, - &:focus, - &.focus, - &:active, - &.active { - background-color: darken(@btn-color, 12%); - background-image: none; - } - } -} - -// Common styles -.btn { - // Remove the gradient for the pressed/active state - &:active, - &.active { - background-image: none; - } -} - -// Apply the mixin to the buttons -.btn-default { .btn-styles(@btn-default-bg); text-shadow: 0 1px 0 #fff; border-color: #ccc; } -.btn-primary { .btn-styles(@btn-primary-bg); } -.btn-success { .btn-styles(@btn-success-bg); } -.btn-info { .btn-styles(@btn-info-bg); } -.btn-warning { .btn-styles(@btn-warning-bg); } -.btn-danger { .btn-styles(@btn-danger-bg); } - - -// -// Images -// -------------------------------------------------- - -.thumbnail, -.img-thumbnail { - .box-shadow(0 1px 2px rgba(0,0,0,.075)); -} - - -// -// Dropdowns -// -------------------------------------------------- - -.dropdown-menu > li > a:hover, -.dropdown-menu > li > a:focus { - #gradient > .vertical(@start-color: @dropdown-link-hover-bg; @end-color: darken(@dropdown-link-hover-bg, 5%)); - background-color: darken(@dropdown-link-hover-bg, 5%); -} -.dropdown-menu > .active > a, -.dropdown-menu > .active > a:hover, -.dropdown-menu > .active > a:focus { - #gradient > .vertical(@start-color: @dropdown-link-active-bg; @end-color: darken(@dropdown-link-active-bg, 5%)); - background-color: darken(@dropdown-link-active-bg, 5%); -} - - -// -// Navbar -// -------------------------------------------------- - -// Default navbar -.navbar-default { - #gradient > .vertical(@start-color: lighten(@navbar-default-bg, 10%); @end-color: @navbar-default-bg); - .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered - border-radius: @navbar-border-radius; - @shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 5px rgba(0,0,0,.075); - .box-shadow(@shadow); - - .navbar-nav > .open > a, - .navbar-nav > .active > a { - #gradient > .vertical(@start-color: darken(@navbar-default-link-active-bg, 5%); @end-color: darken(@navbar-default-link-active-bg, 2%)); - .box-shadow(inset 0 3px 9px rgba(0,0,0,.075)); - } -} -.navbar-brand, -.navbar-nav > li > a { - text-shadow: 0 1px 0 rgba(255,255,255,.25); -} - -// Inverted navbar -.navbar-inverse { - #gradient > .vertical(@start-color: lighten(@navbar-inverse-bg, 10%); @end-color: @navbar-inverse-bg); - .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered; see https://github.com/twbs/bootstrap/issues/10257 - border-radius: @navbar-border-radius; - .navbar-nav > .open > a, - .navbar-nav > .active > a { - #gradient > .vertical(@start-color: @navbar-inverse-link-active-bg; @end-color: lighten(@navbar-inverse-link-active-bg, 2.5%)); - .box-shadow(inset 0 3px 9px rgba(0,0,0,.25)); - } - - .navbar-brand, - .navbar-nav > li > a { - text-shadow: 0 -1px 0 rgba(0,0,0,.25); - } -} - -// Undo rounded corners in static and fixed navbars -.navbar-static-top, -.navbar-fixed-top, -.navbar-fixed-bottom { - border-radius: 0; -} - -// Fix active state of dropdown items in collapsed mode -@media (max-width: @grid-float-breakpoint-max) { - .navbar .navbar-nav .open .dropdown-menu > .active > a { - &, - &:hover, - &:focus { - color: #fff; - #gradient > .vertical(@start-color: @dropdown-link-active-bg; @end-color: darken(@dropdown-link-active-bg, 5%)); - } - } -} - - -// -// Alerts -// -------------------------------------------------- - -// Common styles -.alert { - text-shadow: 0 1px 0 rgba(255,255,255,.2); - @shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 1px 2px rgba(0,0,0,.05); - .box-shadow(@shadow); -} - -// Mixin for generating new styles -.alert-styles(@color) { - #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 7.5%)); - border-color: darken(@color, 15%); -} - -// Apply the mixin to the alerts -.alert-success { .alert-styles(@alert-success-bg); } -.alert-info { .alert-styles(@alert-info-bg); } -.alert-warning { .alert-styles(@alert-warning-bg); } -.alert-danger { .alert-styles(@alert-danger-bg); } - - -// -// Progress bars -// -------------------------------------------------- - -// Give the progress background some depth -.progress { - #gradient > .vertical(@start-color: darken(@progress-bg, 4%); @end-color: @progress-bg) -} - -// Mixin for generating new styles -.progress-bar-styles(@color) { - #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 10%)); -} - -// Apply the mixin to the progress bars -.progress-bar { .progress-bar-styles(@progress-bar-bg); } -.progress-bar-success { .progress-bar-styles(@progress-bar-success-bg); } -.progress-bar-info { .progress-bar-styles(@progress-bar-info-bg); } -.progress-bar-warning { .progress-bar-styles(@progress-bar-warning-bg); } -.progress-bar-danger { .progress-bar-styles(@progress-bar-danger-bg); } - -// Reset the striped class because our mixins don't do multiple gradients and -// the above custom styles override the new `.progress-bar-striped` in v3.2.0. -.progress-bar-striped { - #gradient > .striped(); -} - - -// -// List groups -// -------------------------------------------------- - -.list-group { - border-radius: @border-radius-base; - .box-shadow(0 1px 2px rgba(0,0,0,.075)); -} -.list-group-item.active, -.list-group-item.active:hover, -.list-group-item.active:focus { - text-shadow: 0 -1px 0 darken(@list-group-active-bg, 10%); - #gradient > .vertical(@start-color: @list-group-active-bg; @end-color: darken(@list-group-active-bg, 7.5%)); - border-color: darken(@list-group-active-border, 7.5%); - - .badge { - text-shadow: none; - } -} - - -// -// Panels -// -------------------------------------------------- - -// Common styles -.panel { - .box-shadow(0 1px 2px rgba(0,0,0,.05)); -} - -// Mixin for generating new styles -.panel-heading-styles(@color) { - #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 5%)); -} - -// Apply the mixin to the panel headings only -.panel-default > .panel-heading { .panel-heading-styles(@panel-default-heading-bg); } -.panel-primary > .panel-heading { .panel-heading-styles(@panel-primary-heading-bg); } -.panel-success > .panel-heading { .panel-heading-styles(@panel-success-heading-bg); } -.panel-info > .panel-heading { .panel-heading-styles(@panel-info-heading-bg); } -.panel-warning > .panel-heading { .panel-heading-styles(@panel-warning-heading-bg); } -.panel-danger > .panel-heading { .panel-heading-styles(@panel-danger-heading-bg); } - - -// -// Wells -// -------------------------------------------------- - -.well { - #gradient > .vertical(@start-color: darken(@well-bg, 5%); @end-color: @well-bg); - border-color: darken(@well-bg, 10%); - @shadow: inset 0 1px 3px rgba(0,0,0,.05), 0 1px 0 rgba(255,255,255,.1); - .box-shadow(@shadow); -} diff --git a/themes/devopsdays-responsive/static/less/thumbnails.less b/themes/devopsdays-responsive/static/less/thumbnails.less deleted file mode 100755 index 0713e67d006..00000000000 --- a/themes/devopsdays-responsive/static/less/thumbnails.less +++ /dev/null @@ -1,36 +0,0 @@ -// -// Thumbnails -// -------------------------------------------------- - - -// Mixin and adjust the regular image class -.thumbnail { - display: block; - padding: @thumbnail-padding; - margin-bottom: @line-height-computed; - line-height: @line-height-base; - background-color: @thumbnail-bg; - border: 1px solid @thumbnail-border; - border-radius: @thumbnail-border-radius; - .transition(border .2s ease-in-out); - - > img, - a > img { - &:extend(.img-responsive); - margin-left: auto; - margin-right: auto; - } - - // Add a hover state for linked versions only - a&:hover, - a&:focus, - a&.active { - border-color: @link-color; - } - - // Image captions - .caption { - padding: @thumbnail-caption-padding; - color: @thumbnail-caption-color; - } -} diff --git a/themes/devopsdays-responsive/static/less/tooltip.less b/themes/devopsdays-responsive/static/less/tooltip.less deleted file mode 100755 index b48d63e07ad..00000000000 --- a/themes/devopsdays-responsive/static/less/tooltip.less +++ /dev/null @@ -1,101 +0,0 @@ -// -// Tooltips -// -------------------------------------------------- - - -// Base class -.tooltip { - position: absolute; - z-index: @zindex-tooltip; - display: block; - // Our parent element can be arbitrary since tooltips are by default inserted as a sibling of their target element. - // So reset our font and text properties to avoid inheriting weird values. - .reset-text(); - font-size: @font-size-small; - - .opacity(0); - - &.in { .opacity(@tooltip-opacity); } - &.top { margin-top: -3px; padding: @tooltip-arrow-width 0; } - &.right { margin-left: 3px; padding: 0 @tooltip-arrow-width; } - &.bottom { margin-top: 3px; padding: @tooltip-arrow-width 0; } - &.left { margin-left: -3px; padding: 0 @tooltip-arrow-width; } -} - -// Wrapper for the tooltip content -.tooltip-inner { - max-width: @tooltip-max-width; - padding: 3px 8px; - color: @tooltip-color; - text-align: center; - background-color: @tooltip-bg; - border-radius: @border-radius-base; -} - -// Arrows -.tooltip-arrow { - position: absolute; - width: 0; - height: 0; - border-color: transparent; - border-style: solid; -} -// Note: Deprecated .top-left, .top-right, .bottom-left, and .bottom-right as of v3.3.1 -.tooltip { - &.top .tooltip-arrow { - bottom: 0; - left: 50%; - margin-left: -@tooltip-arrow-width; - border-width: @tooltip-arrow-width @tooltip-arrow-width 0; - border-top-color: @tooltip-arrow-color; - } - &.top-left .tooltip-arrow { - bottom: 0; - right: @tooltip-arrow-width; - margin-bottom: -@tooltip-arrow-width; - border-width: @tooltip-arrow-width @tooltip-arrow-width 0; - border-top-color: @tooltip-arrow-color; - } - &.top-right .tooltip-arrow { - bottom: 0; - left: @tooltip-arrow-width; - margin-bottom: -@tooltip-arrow-width; - border-width: @tooltip-arrow-width @tooltip-arrow-width 0; - border-top-color: @tooltip-arrow-color; - } - &.right .tooltip-arrow { - top: 50%; - left: 0; - margin-top: -@tooltip-arrow-width; - border-width: @tooltip-arrow-width @tooltip-arrow-width @tooltip-arrow-width 0; - border-right-color: @tooltip-arrow-color; - } - &.left .tooltip-arrow { - top: 50%; - right: 0; - margin-top: -@tooltip-arrow-width; - border-width: @tooltip-arrow-width 0 @tooltip-arrow-width @tooltip-arrow-width; - border-left-color: @tooltip-arrow-color; - } - &.bottom .tooltip-arrow { - top: 0; - left: 50%; - margin-left: -@tooltip-arrow-width; - border-width: 0 @tooltip-arrow-width @tooltip-arrow-width; - border-bottom-color: @tooltip-arrow-color; - } - &.bottom-left .tooltip-arrow { - top: 0; - right: @tooltip-arrow-width; - margin-top: -@tooltip-arrow-width; - border-width: 0 @tooltip-arrow-width @tooltip-arrow-width; - border-bottom-color: @tooltip-arrow-color; - } - &.bottom-right .tooltip-arrow { - top: 0; - left: @tooltip-arrow-width; - margin-top: -@tooltip-arrow-width; - border-width: 0 @tooltip-arrow-width @tooltip-arrow-width; - border-bottom-color: @tooltip-arrow-color; - } -} diff --git a/themes/devopsdays-responsive/static/less/type.less b/themes/devopsdays-responsive/static/less/type.less deleted file mode 100755 index 0d4fee48486..00000000000 --- a/themes/devopsdays-responsive/static/less/type.less +++ /dev/null @@ -1,302 +0,0 @@ -// -// Typography -// -------------------------------------------------- - - -// Headings -// ------------------------- - -h1, h2, h3, h4, h5, h6, -.h1, .h2, .h3, .h4, .h5, .h6 { - font-family: @headings-font-family; - font-weight: @headings-font-weight; - line-height: @headings-line-height; - color: @headings-color; - - small, - .small { - font-weight: normal; - line-height: 1; - color: @headings-small-color; - } -} - -h1, .h1, -h2, .h2, -h3, .h3 { - margin-top: @line-height-computed; - margin-bottom: (@line-height-computed / 2); - - small, - .small { - font-size: 65%; - } -} -h4, .h4, -h5, .h5, -h6, .h6 { - margin-top: (@line-height-computed / 2); - margin-bottom: (@line-height-computed / 2); - - small, - .small { - font-size: 75%; - } -} - -h1, .h1 { font-size: @font-size-h1; } -h2, .h2 { font-size: @font-size-h2; } -h3, .h3 { font-size: @font-size-h3; } -h4, .h4 { font-size: @font-size-h4; } -h5, .h5 { font-size: @font-size-h5; } -h6, .h6 { font-size: @font-size-h6; } - - -// Body text -// ------------------------- - -p { - margin: 0 0 (@line-height-computed / 2); -} - -.lead { - margin-bottom: @line-height-computed; - font-size: floor((@font-size-base * 1.15)); - font-weight: 300; - line-height: 1.4; - - @media (min-width: @screen-sm-min) { - font-size: (@font-size-base * 1.5); - } -} - - -// Emphasis & misc -// ------------------------- - -// Ex: (12px small font / 14px base font) * 100% = about 85% -small, -.small { - font-size: floor((100% * @font-size-small / @font-size-base)); -} - -mark, -.mark { - background-color: @state-warning-bg; - padding: .2em; -} - -// Alignment -.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; } - -// Transformation -.text-lowercase { text-transform: lowercase; } -.text-uppercase { text-transform: uppercase; } -.text-capitalize { text-transform: capitalize; } - -// Contextual colors -.text-muted { - color: @text-muted; -} -.text-primary { - .text-emphasis-variant(@brand-primary); -} -.text-success { - .text-emphasis-variant(@state-success-text); -} -.text-info { - .text-emphasis-variant(@state-info-text); -} -.text-warning { - .text-emphasis-variant(@state-warning-text); -} -.text-danger { - .text-emphasis-variant(@state-danger-text); -} - -// Contextual backgrounds -// For now we'll leave these alongside the text classes until v4 when we can -// safely shift things around (per SemVer rules). -.bg-primary { - // Given the contrast here, this is the only class to have its color inverted - // automatically. - color: #fff; - .bg-variant(@brand-primary); -} -.bg-success { - .bg-variant(@state-success-bg); -} -.bg-info { - .bg-variant(@state-info-bg); -} -.bg-warning { - .bg-variant(@state-warning-bg); -} -.bg-danger { - .bg-variant(@state-danger-bg); -} - - -// Page header -// ------------------------- - -.page-header { - padding-bottom: ((@line-height-computed / 2) - 1); - margin: (@line-height-computed * 2) 0 @line-height-computed; - border-bottom: 1px solid @page-header-border-color; -} - - -// Lists -// ------------------------- - -// Unordered and Ordered lists -ul, -ol { - margin-top: 0; - margin-bottom: (@line-height-computed / 2); - ul, - ol { - margin-bottom: 0; - } -} - -// List options - -// Unstyled keeps list items block level, just removes default browser padding and list-style -.list-unstyled { - padding-left: 0; - list-style: none; -} - -// Inline turns list items into inline-block -.list-inline { - .list-unstyled(); - margin-left: -5px; - - > li { - display: inline-block; - padding-left: 5px; - padding-right: 5px; - } -} - -// Description Lists -dl { - margin-top: 0; // Remove browser default - margin-bottom: @line-height-computed; -} -dt, -dd { - line-height: @line-height-base; -} -dt { - font-weight: bold; -} -dd { - margin-left: 0; // Undo browser default -} - -// Horizontal description lists -// -// Defaults to being stacked without any of the below styles applied, until the -// grid breakpoint is reached (default of ~768px). - -.dl-horizontal { - dd { - &:extend(.clearfix all); // Clear the floated `dt` if an empty `dd` is present - } - - @media (min-width: @dl-horizontal-breakpoint) { - dt { - float: left; - width: (@dl-horizontal-offset - 20); - clear: left; - text-align: right; - .text-overflow(); - } - dd { - margin-left: @dl-horizontal-offset; - } - } -} - - -// Misc -// ------------------------- - -// Abbreviations and acronyms -abbr[title], -// Add data-* attribute to help out our tooltip plugin, per https://github.com/twbs/bootstrap/issues/5257 -abbr[data-original-title] { - cursor: help; - border-bottom: 1px dotted @abbr-border-color; -} -.initialism { - font-size: 90%; - .text-uppercase(); -} - -// Blockquotes -blockquote { - padding: (@line-height-computed / 2) @line-height-computed; - margin: 0 0 @line-height-computed; - font-size: @blockquote-font-size; - border-left: 5px solid @blockquote-border-color; - - p, - ul, - ol { - &:last-child { - margin-bottom: 0; - } - } - - // Note: Deprecated small and .small as of v3.1.0 - // Context: https://github.com/twbs/bootstrap/issues/11660 - footer, - small, - .small { - display: block; - font-size: 80%; // back to default font-size - line-height: @line-height-base; - color: @blockquote-small-color; - - &:before { - content: '\2014 \00A0'; // em dash, nbsp - } - } -} - -// Opposite alignment of blockquote -// -// Heads up: `blockquote.pull-right` has been deprecated as of v3.1.0. -.blockquote-reverse, -blockquote.pull-right { - padding-right: 15px; - padding-left: 0; - border-right: 5px solid @blockquote-border-color; - border-left: 0; - text-align: right; - - // Account for citation - footer, - small, - .small { - &:before { content: ''; } - &:after { - content: '\00A0 \2014'; // nbsp, em dash - } - } -} - -// Addresses -address { - margin-bottom: @line-height-computed; - font-style: normal; - line-height: @line-height-base; -} diff --git a/themes/devopsdays-responsive/static/less/utilities.less b/themes/devopsdays-responsive/static/less/utilities.less deleted file mode 100755 index 7a8ca27a8ff..00000000000 --- a/themes/devopsdays-responsive/static/less/utilities.less +++ /dev/null @@ -1,55 +0,0 @@ -// -// Utility classes -// -------------------------------------------------- - - -// Floats -// ------------------------- - -.clearfix { - .clearfix(); -} -.center-block { - .center-block(); -} -.pull-right { - float: right !important; -} -.pull-left { - float: left !important; -} - - -// Toggling content -// ------------------------- - -// Note: Deprecated .hide in favor of .hidden or .sr-only (as appropriate) in v3.0.1 -.hide { - display: none !important; -} -.show { - display: block !important; -} -.invisible { - visibility: hidden; -} -.text-hide { - .text-hide(); -} - - -// Hide from screenreaders and browsers -// -// Credit: HTML5 Boilerplate - -.hidden { - display: none !important; -} - - -// For Affix plugin -// ------------------------- - -.affix { - position: fixed; -} diff --git a/themes/devopsdays-responsive/static/less/variables.less b/themes/devopsdays-responsive/static/less/variables.less deleted file mode 100755 index b057ef5bf90..00000000000 --- a/themes/devopsdays-responsive/static/less/variables.less +++ /dev/null @@ -1,869 +0,0 @@ -// -// Variables -// -------------------------------------------------- - - -//== Colors -// -//## Gray and brand colors for use across Bootstrap. - -@gray-base: #000; -@gray-darker: lighten(@gray-base, 13.5%); // #222 -@gray-dark: lighten(@gray-base, 20%); // #333 -@gray: lighten(@gray-base, 33.5%); // #555 -@gray-light: lighten(@gray-base, 46.7%); // #777 -@gray-lighter: lighten(@gray-base, 93.5%); // #eee - -@brand-primary: darken(#428bca, 6.5%); // #337ab7 -@brand-success: #5cb85c; -@brand-info: #5bc0de; -@brand-warning: #f0ad4e; -@brand-danger: #d9534f; - - -//== Scaffolding -// -//## Settings for some of the most global styles. - -//** Background color for ``. -@body-bg: #fff; -//** Global text color on ``. -@text-color: @gray-dark; - -//** Global textual link color. -@link-color: @brand-primary; -//** Link hover color set via `darken()` function. -@link-hover-color: darken(@link-color, 15%); -//** Link hover decoration. -@link-hover-decoration: underline; - - -//== Typography -// -//## Font, line-height, and color for body text, headings, and more. - -@font-family-sans-serif: "Helvetica Neue", Helvetica, Arial, sans-serif; -@font-family-serif: Georgia, "Times New Roman", Times, serif; -//** Default monospace fonts for ``, ``, and `
      `.
      -@font-family-monospace:   Menlo, Monaco, Consolas, "Courier New", monospace;
      -@font-family-base:        @font-family-sans-serif;
      -
      -@font-size-base:          14px;
      -@font-size-large:         ceil((@font-size-base * 1.25)); // ~18px
      -@font-size-small:         ceil((@font-size-base * 0.85)); // ~12px
      -
      -@font-size-h1:            floor((@font-size-base * 2.6)); // ~36px
      -@font-size-h2:            floor((@font-size-base * 2.15)); // ~30px
      -@font-size-h3:            ceil((@font-size-base * 1.7)); // ~24px
      -@font-size-h4:            ceil((@font-size-base * 1.25)); // ~18px
      -@font-size-h5:            @font-size-base;
      -@font-size-h6:            ceil((@font-size-base * 0.85)); // ~12px
      -
      -//** Unit-less `line-height` for use in components like buttons.
      -@line-height-base:        1.428571429; // 20/14
      -//** Computed "line-height" (`font-size` * `line-height`) for use with `margin`, `padding`, etc.
      -@line-height-computed:    floor((@font-size-base * @line-height-base)); // ~20px
      -
      -//** By default, this inherits from the ``.
      -@headings-font-family:    inherit;
      -@headings-font-weight:    500;
      -@headings-line-height:    1.1;
      -@headings-color:          inherit;
      -
      -
      -//== Iconography
      -//
      -//## Specify custom location and filename of the included Glyphicons icon font. Useful for those including Bootstrap via Bower.
      -
      -//** Load fonts from this directory.
      -@icon-font-path:          "../fonts/";
      -//** File name for all font files.
      -@icon-font-name:          "glyphicons-halflings-regular";
      -//** Element ID within SVG icon file.
      -@icon-font-svg-id:        "glyphicons_halflingsregular";
      -
      -
      -//== Components
      -//
      -//## Define common padding and border radius sizes and more. Values based on 14px text and 1.428 line-height (~20px to start).
      -
      -@padding-base-vertical:     6px;
      -@padding-base-horizontal:   12px;
      -
      -@padding-large-vertical:    10px;
      -@padding-large-horizontal:  16px;
      -
      -@padding-small-vertical:    5px;
      -@padding-small-horizontal:  10px;
      -
      -@padding-xs-vertical:       1px;
      -@padding-xs-horizontal:     5px;
      -
      -@line-height-large:         1.3333333; // extra decimals for Win 8.1 Chrome
      -@line-height-small:         1.5;
      -
      -@border-radius-base:        4px;
      -@border-radius-large:       6px;
      -@border-radius-small:       3px;
      -
      -//** Global color for active items (e.g., navs or dropdowns).
      -@component-active-color:    #fff;
      -//** Global background color for active items (e.g., navs or dropdowns).
      -@component-active-bg:       @brand-primary;
      -
      -//** Width of the `border` for generating carets that indicator dropdowns.
      -@caret-width-base:          4px;
      -//** Carets increase slightly in size for larger components.
      -@caret-width-large:         5px;
      -
      -
      -//== Tables
      -//
      -//## Customizes the `.table` component with basic values, each used across all table variations.
      -
      -//** Padding for ``s and ``s.
      -@table-cell-padding:            8px;
      -//** Padding for cells in `.table-condensed`.
      -@table-condensed-cell-padding:  5px;
      -
      -//** Default background color used for all tables.
      -@table-bg:                      transparent;
      -//** Background color used for `.table-striped`.
      -@table-bg-accent:               #f9f9f9;
      -//** Background color used for `.table-hover`.
      -@table-bg-hover:                #f5f5f5;
      -@table-bg-active:               @table-bg-hover;
      -
      -//** Border color for table and cell borders.
      -@table-border-color:            #ddd;
      -
      -
      -//== Buttons
      -//
      -//## For each of Bootstrap's buttons, define text, background and border color.
      -
      -@btn-font-weight:                normal;
      -
      -@btn-default-color:              #333;
      -@btn-default-bg:                 #fff;
      -@btn-default-border:             #ccc;
      -
      -@btn-primary-color:              #fff;
      -@btn-primary-bg:                 @brand-primary;
      -@btn-primary-border:             darken(@btn-primary-bg, 5%);
      -
      -@btn-success-color:              #fff;
      -@btn-success-bg:                 @brand-success;
      -@btn-success-border:             darken(@btn-success-bg, 5%);
      -
      -@btn-info-color:                 #fff;
      -@btn-info-bg:                    @brand-info;
      -@btn-info-border:                darken(@btn-info-bg, 5%);
      -
      -@btn-warning-color:              #fff;
      -@btn-warning-bg:                 @brand-warning;
      -@btn-warning-border:             darken(@btn-warning-bg, 5%);
      -
      -@btn-danger-color:               #fff;
      -@btn-danger-bg:                  @brand-danger;
      -@btn-danger-border:              darken(@btn-danger-bg, 5%);
      -
      -@btn-link-disabled-color:        @gray-light;
      -
      -// Allows for customizing button radius independently from global border radius
      -@btn-border-radius-base:         @border-radius-base;
      -@btn-border-radius-large:        @border-radius-large;
      -@btn-border-radius-small:        @border-radius-small;
      -
      -
      -//== Forms
      -//
      -//##
      -
      -//** `` background color
      -@input-bg:                       #fff;
      -//** `` background color
      -@input-bg-disabled:              @gray-lighter;
      -
      -//** Text color for ``s
      -@input-color:                    @gray;
      -//** `` border color
      -@input-border:                   #ccc;
      -
      -// TODO: Rename `@input-border-radius` to `@input-border-radius-base` in v4
      -//** Default `.form-control` border radius
      -// This has no effect on ``s in CSS.
      -@input-border-radius:            @border-radius-base;
      -//** Large `.form-control` border radius
      -@input-border-radius-large:      @border-radius-large;
      -//** Small `.form-control` border radius
      -@input-border-radius-small:      @border-radius-small;
      -
      -//** Border color for inputs on focus
      -@input-border-focus:             #66afe9;
      -
      -//** Placeholder text color
      -@input-color-placeholder:        #999;
      -
      -//** Default `.form-control` height
      -@input-height-base:              (@line-height-computed + (@padding-base-vertical * 2) + 2);
      -//** Large `.form-control` height
      -@input-height-large:             (ceil(@font-size-large * @line-height-large) + (@padding-large-vertical * 2) + 2);
      -//** Small `.form-control` height
      -@input-height-small:             (floor(@font-size-small * @line-height-small) + (@padding-small-vertical * 2) + 2);
      -
      -//** `.form-group` margin
      -@form-group-margin-bottom:       15px;
      -
      -@legend-color:                   @gray-dark;
      -@legend-border-color:            #e5e5e5;
      -
      -//** Background color for textual input addons
      -@input-group-addon-bg:           @gray-lighter;
      -//** Border color for textual input addons
      -@input-group-addon-border-color: @input-border;
      -
      -//** Disabled cursor for form controls and buttons.
      -@cursor-disabled:                not-allowed;
      -
      -
      -//== Dropdowns
      -//
      -//## Dropdown menu container and contents.
      -
      -//** Background for the dropdown menu.
      -@dropdown-bg:                    #fff;
      -//** Dropdown menu `border-color`.
      -@dropdown-border:                rgba(0,0,0,.15);
      -//** Dropdown menu `border-color` **for IE8**.
      -@dropdown-fallback-border:       #ccc;
      -//** Divider color for between dropdown items.
      -@dropdown-divider-bg:            #e5e5e5;
      -
      -//** Dropdown link text color.
      -@dropdown-link-color:            @gray-dark;
      -//** Hover color for dropdown links.
      -@dropdown-link-hover-color:      darken(@gray-dark, 5%);
      -//** Hover background for dropdown links.
      -@dropdown-link-hover-bg:         #f5f5f5;
      -
      -//** Active dropdown menu item text color.
      -@dropdown-link-active-color:     @component-active-color;
      -//** Active dropdown menu item background color.
      -@dropdown-link-active-bg:        @component-active-bg;
      -
      -//** Disabled dropdown menu item background color.
      -@dropdown-link-disabled-color:   @gray-light;
      -
      -//** Text color for headers within dropdown menus.
      -@dropdown-header-color:          @gray-light;
      -
      -//** Deprecated `@dropdown-caret-color` as of v3.1.0
      -@dropdown-caret-color:           #000;
      -
      -
      -//-- Z-index master list
      -//
      -// Warning: Avoid customizing these values. They're used for a bird's eye view
      -// of components dependent on the z-axis and are designed to all work together.
      -//
      -// Note: These variables are not generated into the Customizer.
      -
      -@zindex-navbar:            1000;
      -@zindex-dropdown:          1000;
      -@zindex-popover:           1060;
      -@zindex-tooltip:           1070;
      -@zindex-navbar-fixed:      1030;
      -@zindex-modal-background:  1040;
      -@zindex-modal:             1050;
      -
      -
      -//== Media queries breakpoints
      -//
      -//## Define the breakpoints at which your layout will change, adapting to different screen sizes.
      -
      -// Extra small screen / phone
      -//** Deprecated `@screen-xs` as of v3.0.1
      -@screen-xs:                  480px;
      -//** Deprecated `@screen-xs-min` as of v3.2.0
      -@screen-xs-min:              @screen-xs;
      -//** Deprecated `@screen-phone` as of v3.0.1
      -@screen-phone:               @screen-xs-min;
      -
      -// Small screen / tablet
      -//** Deprecated `@screen-sm` as of v3.0.1
      -@screen-sm:                  768px;
      -@screen-sm-min:              @screen-sm;
      -//** Deprecated `@screen-tablet` as of v3.0.1
      -@screen-tablet:              @screen-sm-min;
      -
      -// Medium screen / desktop
      -//** Deprecated `@screen-md` as of v3.0.1
      -@screen-md:                  992px;
      -@screen-md-min:              @screen-md;
      -//** Deprecated `@screen-desktop` as of v3.0.1
      -@screen-desktop:             @screen-md-min;
      -
      -// Large screen / wide desktop
      -//** Deprecated `@screen-lg` as of v3.0.1
      -@screen-lg:                  1200px;
      -@screen-lg-min:              @screen-lg;
      -//** Deprecated `@screen-lg-desktop` as of v3.0.1
      -@screen-lg-desktop:          @screen-lg-min;
      -
      -// So media queries don't overlap when required, provide a maximum
      -@screen-xs-max:              (@screen-sm-min - 1);
      -@screen-sm-max:              (@screen-md-min - 1);
      -@screen-md-max:              (@screen-lg-min - 1);
      -
      -
      -//== Grid system
      -//
      -//## Define your custom responsive grid.
      -
      -//** Number of columns in the grid.
      -@grid-columns:              12;
      -//** Padding between columns. Gets divided in half for the left and right.
      -@grid-gutter-width:         30px;
      -// Navbar collapse
      -//** Point at which the navbar becomes uncollapsed.
      -@grid-float-breakpoint:     @screen-sm-min;
      -//** Point at which the navbar begins collapsing.
      -@grid-float-breakpoint-max: (@grid-float-breakpoint - 1);
      -
      -
      -//== Container sizes
      -//
      -//## Define the maximum width of `.container` for different screen sizes.
      -
      -// Small screen / tablet
      -@container-tablet:             (720px + @grid-gutter-width);
      -//** For `@screen-sm-min` and up.
      -@container-sm:                 @container-tablet;
      -
      -// Medium screen / desktop
      -@container-desktop:            (940px + @grid-gutter-width);
      -//** For `@screen-md-min` and up.
      -@container-md:                 @container-desktop;
      -
      -// Large screen / wide desktop
      -@container-large-desktop:      (1140px + @grid-gutter-width);
      -//** For `@screen-lg-min` and up.
      -@container-lg:                 @container-large-desktop;
      -
      -
      -//== Navbar
      -//
      -//##
      -
      -// Basics of a navbar
      -@navbar-height:                    50px;
      -@navbar-margin-bottom:             @line-height-computed;
      -@navbar-border-radius:             @border-radius-base;
      -@navbar-padding-horizontal:        floor((@grid-gutter-width / 2));
      -@navbar-padding-vertical:          ((@navbar-height - @line-height-computed) / 2);
      -@navbar-collapse-max-height:       340px;
      -
      -@navbar-default-color:             #777;
      -@navbar-default-bg:                #f8f8f8;
      -@navbar-default-border:            darken(@navbar-default-bg, 6.5%);
      -
      -// Navbar links
      -@navbar-default-link-color:                #777;
      -@navbar-default-link-hover-color:          #333;
      -@navbar-default-link-hover-bg:             transparent;
      -@navbar-default-link-active-color:         #555;
      -@navbar-default-link-active-bg:            darken(@navbar-default-bg, 6.5%);
      -@navbar-default-link-disabled-color:       #ccc;
      -@navbar-default-link-disabled-bg:          transparent;
      -
      -// Navbar brand label
      -@navbar-default-brand-color:               @navbar-default-link-color;
      -@navbar-default-brand-hover-color:         darken(@navbar-default-brand-color, 10%);
      -@navbar-default-brand-hover-bg:            transparent;
      -
      -// Navbar toggle
      -@navbar-default-toggle-hover-bg:           #ddd;
      -@navbar-default-toggle-icon-bar-bg:        #888;
      -@navbar-default-toggle-border-color:       #ddd;
      -
      -
      -//=== Inverted navbar
      -// Reset inverted navbar basics
      -@navbar-inverse-color:                      lighten(@gray-light, 15%);
      -@navbar-inverse-bg:                         #222;
      -@navbar-inverse-border:                     darken(@navbar-inverse-bg, 10%);
      -
      -// Inverted navbar links
      -@navbar-inverse-link-color:                 lighten(@gray-light, 15%);
      -@navbar-inverse-link-hover-color:           #fff;
      -@navbar-inverse-link-hover-bg:              transparent;
      -@navbar-inverse-link-active-color:          @navbar-inverse-link-hover-color;
      -@navbar-inverse-link-active-bg:             darken(@navbar-inverse-bg, 10%);
      -@navbar-inverse-link-disabled-color:        #444;
      -@navbar-inverse-link-disabled-bg:           transparent;
      -
      -// Inverted navbar brand label
      -@navbar-inverse-brand-color:                @navbar-inverse-link-color;
      -@navbar-inverse-brand-hover-color:          #fff;
      -@navbar-inverse-brand-hover-bg:             transparent;
      -
      -// Inverted navbar toggle
      -@navbar-inverse-toggle-hover-bg:            #333;
      -@navbar-inverse-toggle-icon-bar-bg:         #fff;
      -@navbar-inverse-toggle-border-color:        #333;
      -
      -
      -//== Navs
      -//
      -//##
      -
      -//=== Shared nav styles
      -@nav-link-padding:                          10px 15px;
      -@nav-link-hover-bg:                         @gray-lighter;
      -
      -@nav-disabled-link-color:                   @gray-light;
      -@nav-disabled-link-hover-color:             @gray-light;
      -
      -//== Tabs
      -@nav-tabs-border-color:                     #ddd;
      -
      -@nav-tabs-link-hover-border-color:          @gray-lighter;
      -
      -@nav-tabs-active-link-hover-bg:             @body-bg;
      -@nav-tabs-active-link-hover-color:          @gray;
      -@nav-tabs-active-link-hover-border-color:   #ddd;
      -
      -@nav-tabs-justified-link-border-color:            #ddd;
      -@nav-tabs-justified-active-link-border-color:     @body-bg;
      -
      -//== Pills
      -@nav-pills-border-radius:                   @border-radius-base;
      -@nav-pills-active-link-hover-bg:            @component-active-bg;
      -@nav-pills-active-link-hover-color:         @component-active-color;
      -
      -
      -//== Pagination
      -//
      -//##
      -
      -@pagination-color:                     @link-color;
      -@pagination-bg:                        #fff;
      -@pagination-border:                    #ddd;
      -
      -@pagination-hover-color:               @link-hover-color;
      -@pagination-hover-bg:                  @gray-lighter;
      -@pagination-hover-border:              #ddd;
      -
      -@pagination-active-color:              #fff;
      -@pagination-active-bg:                 @brand-primary;
      -@pagination-active-border:             @brand-primary;
      -
      -@pagination-disabled-color:            @gray-light;
      -@pagination-disabled-bg:               #fff;
      -@pagination-disabled-border:           #ddd;
      -
      -
      -//== Pager
      -//
      -//##
      -
      -@pager-bg:                             @pagination-bg;
      -@pager-border:                         @pagination-border;
      -@pager-border-radius:                  15px;
      -
      -@pager-hover-bg:                       @pagination-hover-bg;
      -
      -@pager-active-bg:                      @pagination-active-bg;
      -@pager-active-color:                   @pagination-active-color;
      -
      -@pager-disabled-color:                 @pagination-disabled-color;
      -
      -
      -//== Jumbotron
      -//
      -//##
      -
      -@jumbotron-padding:              30px;
      -@jumbotron-color:                inherit;
      -@jumbotron-bg:                   @gray-lighter;
      -@jumbotron-heading-color:        inherit;
      -@jumbotron-font-size:            ceil((@font-size-base * 1.5));
      -@jumbotron-heading-font-size:    ceil((@font-size-base * 4.5));
      -
      -
      -//== Form states and alerts
      -//
      -//## Define colors for form feedback states and, by default, alerts.
      -
      -@state-success-text:             #3c763d;
      -@state-success-bg:               #dff0d8;
      -@state-success-border:           darken(spin(@state-success-bg, -10), 5%);
      -
      -@state-info-text:                #31708f;
      -@state-info-bg:                  #d9edf7;
      -@state-info-border:              darken(spin(@state-info-bg, -10), 7%);
      -
      -@state-warning-text:             #8a6d3b;
      -@state-warning-bg:               #fcf8e3;
      -@state-warning-border:           darken(spin(@state-warning-bg, -10), 5%);
      -
      -@state-danger-text:              #a94442;
      -@state-danger-bg:                #f2dede;
      -@state-danger-border:            darken(spin(@state-danger-bg, -10), 5%);
      -
      -
      -//== Tooltips
      -//
      -//##
      -
      -//** Tooltip max width
      -@tooltip-max-width:           200px;
      -//** Tooltip text color
      -@tooltip-color:               #fff;
      -//** Tooltip background color
      -@tooltip-bg:                  #000;
      -@tooltip-opacity:             .9;
      -
      -//** Tooltip arrow width
      -@tooltip-arrow-width:         5px;
      -//** Tooltip arrow color
      -@tooltip-arrow-color:         @tooltip-bg;
      -
      -
      -//== Popovers
      -//
      -//##
      -
      -//** Popover body background color
      -@popover-bg:                          #fff;
      -//** Popover maximum width
      -@popover-max-width:                   276px;
      -//** Popover border color
      -@popover-border-color:                rgba(0,0,0,.2);
      -//** Popover fallback border color
      -@popover-fallback-border-color:       #ccc;
      -
      -//** Popover title background color
      -@popover-title-bg:                    darken(@popover-bg, 3%);
      -
      -//** Popover arrow width
      -@popover-arrow-width:                 10px;
      -//** Popover arrow color
      -@popover-arrow-color:                 @popover-bg;
      -
      -//** Popover outer arrow width
      -@popover-arrow-outer-width:           (@popover-arrow-width + 1);
      -//** Popover outer arrow color
      -@popover-arrow-outer-color:           fadein(@popover-border-color, 5%);
      -//** Popover outer arrow fallback color
      -@popover-arrow-outer-fallback-color:  darken(@popover-fallback-border-color, 20%);
      -
      -
      -//== Labels
      -//
      -//##
      -
      -//** Default label background color
      -@label-default-bg:            @gray-light;
      -//** Primary label background color
      -@label-primary-bg:            @brand-primary;
      -//** Success label background color
      -@label-success-bg:            @brand-success;
      -//** Info label background color
      -@label-info-bg:               @brand-info;
      -//** Warning label background color
      -@label-warning-bg:            @brand-warning;
      -//** Danger label background color
      -@label-danger-bg:             @brand-danger;
      -
      -//** Default label text color
      -@label-color:                 #fff;
      -//** Default text color of a linked label
      -@label-link-hover-color:      #fff;
      -
      -
      -//== Modals
      -//
      -//##
      -
      -//** Padding applied to the modal body
      -@modal-inner-padding:         15px;
      -
      -//** Padding applied to the modal title
      -@modal-title-padding:         15px;
      -//** Modal title line-height
      -@modal-title-line-height:     @line-height-base;
      -
      -//** Background color of modal content area
      -@modal-content-bg:                             #fff;
      -//** Modal content border color
      -@modal-content-border-color:                   rgba(0,0,0,.2);
      -//** Modal content border color **for IE8**
      -@modal-content-fallback-border-color:          #999;
      -
      -//** Modal backdrop background color
      -@modal-backdrop-bg:           #000;
      -//** Modal backdrop opacity
      -@modal-backdrop-opacity:      .5;
      -//** Modal header border color
      -@modal-header-border-color:   #e5e5e5;
      -//** Modal footer border color
      -@modal-footer-border-color:   @modal-header-border-color;
      -
      -@modal-lg:                    900px;
      -@modal-md:                    600px;
      -@modal-sm:                    300px;
      -
      -
      -//== Alerts
      -//
      -//## Define alert colors, border radius, and padding.
      -
      -@alert-padding:               15px;
      -@alert-border-radius:         @border-radius-base;
      -@alert-link-font-weight:      bold;
      -
      -@alert-success-bg:            @state-success-bg;
      -@alert-success-text:          @state-success-text;
      -@alert-success-border:        @state-success-border;
      -
      -@alert-info-bg:               @state-info-bg;
      -@alert-info-text:             @state-info-text;
      -@alert-info-border:           @state-info-border;
      -
      -@alert-warning-bg:            @state-warning-bg;
      -@alert-warning-text:          @state-warning-text;
      -@alert-warning-border:        @state-warning-border;
      -
      -@alert-danger-bg:             @state-danger-bg;
      -@alert-danger-text:           @state-danger-text;
      -@alert-danger-border:         @state-danger-border;
      -
      -
      -//== Progress bars
      -//
      -//##
      -
      -//** Background color of the whole progress component
      -@progress-bg:                 #f5f5f5;
      -//** Progress bar text color
      -@progress-bar-color:          #fff;
      -//** Variable for setting rounded corners on progress bar.
      -@progress-border-radius:      @border-radius-base;
      -
      -//** Default progress bar color
      -@progress-bar-bg:             @brand-primary;
      -//** Success progress bar color
      -@progress-bar-success-bg:     @brand-success;
      -//** Warning progress bar color
      -@progress-bar-warning-bg:     @brand-warning;
      -//** Danger progress bar color
      -@progress-bar-danger-bg:      @brand-danger;
      -//** Info progress bar color
      -@progress-bar-info-bg:        @brand-info;
      -
      -
      -//== List group
      -//
      -//##
      -
      -//** Background color on `.list-group-item`
      -@list-group-bg:                 #fff;
      -//** `.list-group-item` border color
      -@list-group-border:             #ddd;
      -//** List group border radius
      -@list-group-border-radius:      @border-radius-base;
      -
      -//** Background color of single list items on hover
      -@list-group-hover-bg:           #f5f5f5;
      -//** Text color of active list items
      -@list-group-active-color:       @component-active-color;
      -//** Background color of active list items
      -@list-group-active-bg:          @component-active-bg;
      -//** Border color of active list elements
      -@list-group-active-border:      @list-group-active-bg;
      -//** Text color for content within active list items
      -@list-group-active-text-color:  lighten(@list-group-active-bg, 40%);
      -
      -//** Text color of disabled list items
      -@list-group-disabled-color:      @gray-light;
      -//** Background color of disabled list items
      -@list-group-disabled-bg:         @gray-lighter;
      -//** Text color for content within disabled list items
      -@list-group-disabled-text-color: @list-group-disabled-color;
      -
      -@list-group-link-color:         #555;
      -@list-group-link-hover-color:   @list-group-link-color;
      -@list-group-link-heading-color: #333;
      -
      -
      -//== Panels
      -//
      -//##
      -
      -@panel-bg:                    #fff;
      -@panel-body-padding:          15px;
      -@panel-heading-padding:       10px 15px;
      -@panel-footer-padding:        @panel-heading-padding;
      -@panel-border-radius:         @border-radius-base;
      -
      -//** Border color for elements within panels
      -@panel-inner-border:          #ddd;
      -@panel-footer-bg:             #f5f5f5;
      -
      -@panel-default-text:          @gray-dark;
      -@panel-default-border:        #ddd;
      -@panel-default-heading-bg:    #f5f5f5;
      -
      -@panel-primary-text:          #fff;
      -@panel-primary-border:        @brand-primary;
      -@panel-primary-heading-bg:    @brand-primary;
      -
      -@panel-success-text:          @state-success-text;
      -@panel-success-border:        @state-success-border;
      -@panel-success-heading-bg:    @state-success-bg;
      -
      -@panel-info-text:             @state-info-text;
      -@panel-info-border:           @state-info-border;
      -@panel-info-heading-bg:       @state-info-bg;
      -
      -@panel-warning-text:          @state-warning-text;
      -@panel-warning-border:        @state-warning-border;
      -@panel-warning-heading-bg:    @state-warning-bg;
      -
      -@panel-danger-text:           @state-danger-text;
      -@panel-danger-border:         @state-danger-border;
      -@panel-danger-heading-bg:     @state-danger-bg;
      -
      -
      -//== Thumbnails
      -//
      -//##
      -
      -//** Padding around the thumbnail image
      -@thumbnail-padding:           4px;
      -//** Thumbnail background color
      -@thumbnail-bg:                @body-bg;
      -//** Thumbnail border color
      -@thumbnail-border:            #ddd;
      -//** Thumbnail border radius
      -@thumbnail-border-radius:     @border-radius-base;
      -
      -//** Custom text color for thumbnail captions
      -@thumbnail-caption-color:     @text-color;
      -//** Padding around the thumbnail caption
      -@thumbnail-caption-padding:   9px;
      -
      -
      -//== Wells
      -//
      -//##
      -
      -@well-bg:                     #f5f5f5;
      -@well-border:                 darken(@well-bg, 7%);
      -
      -
      -//== Badges
      -//
      -//##
      -
      -@badge-color:                 #fff;
      -//** Linked badge text color on hover
      -@badge-link-hover-color:      #fff;
      -@badge-bg:                    @gray-light;
      -
      -//** Badge text color in active nav link
      -@badge-active-color:          @link-color;
      -//** Badge background color in active nav link
      -@badge-active-bg:             #fff;
      -
      -@badge-font-weight:           bold;
      -@badge-line-height:           1;
      -@badge-border-radius:         10px;
      -
      -
      -//== Breadcrumbs
      -//
      -//##
      -
      -@breadcrumb-padding-vertical:   8px;
      -@breadcrumb-padding-horizontal: 15px;
      -//** Breadcrumb background color
      -@breadcrumb-bg:                 #f5f5f5;
      -//** Breadcrumb text color
      -@breadcrumb-color:              #ccc;
      -//** Text color of current page in the breadcrumb
      -@breadcrumb-active-color:       @gray-light;
      -//** Textual separator for between breadcrumb elements
      -@breadcrumb-separator:          "/";
      -
      -
      -//== Carousel
      -//
      -//##
      -
      -@carousel-text-shadow:                        0 1px 2px rgba(0,0,0,.6);
      -
      -@carousel-control-color:                      #fff;
      -@carousel-control-width:                      15%;
      -@carousel-control-opacity:                    .5;
      -@carousel-control-font-size:                  20px;
      -
      -@carousel-indicator-active-bg:                #fff;
      -@carousel-indicator-border-color:             #fff;
      -
      -@carousel-caption-color:                      #fff;
      -
      -
      -//== Close
      -//
      -//##
      -
      -@close-font-weight:           bold;
      -@close-color:                 #000;
      -@close-text-shadow:           0 1px 0 #fff;
      -
      -
      -//== Code
      -//
      -//##
      -
      -@code-color:                  #c7254e;
      -@code-bg:                     #f9f2f4;
      -
      -@kbd-color:                   #fff;
      -@kbd-bg:                      #333;
      -
      -@pre-bg:                      #f5f5f5;
      -@pre-color:                   @gray-dark;
      -@pre-border-color:            #ccc;
      -@pre-scrollable-max-height:   340px;
      -
      -
      -//== Type
      -//
      -//##
      -
      -//** Horizontal offset for forms and lists.
      -@component-offset-horizontal: 180px;
      -//** Text muted color
      -@text-muted:                  @gray-light;
      -//** Abbreviations and acronyms border color
      -@abbr-border-color:           @gray-light;
      -//** Headings small color
      -@headings-small-color:        @gray-light;
      -//** Blockquote small color
      -@blockquote-small-color:      @gray-light;
      -//** Blockquote font size
      -@blockquote-font-size:        (@font-size-base * 1.25);
      -//** Blockquote border color
      -@blockquote-border-color:     @gray-lighter;
      -//** Page header border color
      -@page-header-border-color:    @gray-lighter;
      -//** Width of horizontal description list titles
      -@dl-horizontal-offset:        @component-offset-horizontal;
      -//** Point at which .dl-horizontal becomes horizontal
      -@dl-horizontal-breakpoint:    @grid-float-breakpoint;
      -//** Horizontal line color.
      -@hr-border:                   @gray-lighter;
      diff --git a/themes/devopsdays-responsive/static/less/wells.less b/themes/devopsdays-responsive/static/less/wells.less
      deleted file mode 100755
      index 15d072b0cd0..00000000000
      --- a/themes/devopsdays-responsive/static/less/wells.less
      +++ /dev/null
      @@ -1,29 +0,0 @@
      -//
      -// Wells
      -// --------------------------------------------------
      -
      -
      -// Base class
      -.well {
      -  min-height: 20px;
      -  padding: 19px;
      -  margin-bottom: 20px;
      -  background-color: @well-bg;
      -  border: 1px solid @well-border;
      -  border-radius: @border-radius-base;
      -  .box-shadow(inset 0 1px 1px rgba(0,0,0,.05));
      -  blockquote {
      -    border-color: #ddd;
      -    border-color: rgba(0,0,0,.15);
      -  }
      -}
      -
      -// Sizes
      -.well-lg {
      -  padding: 24px;
      -  border-radius: @border-radius-large;
      -}
      -.well-sm {
      -  padding: 9px;
      -  border-radius: @border-radius-small;
      -}
      diff --git a/themes/devopsdays-responsive/static/ms-icon-144x144.png b/themes/devopsdays-responsive/static/ms-icon-144x144.png
      deleted file mode 100644
      index 8c01ffadaef..00000000000
      Binary files a/themes/devopsdays-responsive/static/ms-icon-144x144.png and /dev/null differ
      diff --git a/themes/devopsdays-responsive/static/ms-icon-150x150.png b/themes/devopsdays-responsive/static/ms-icon-150x150.png
      deleted file mode 100644
      index 253046d0e43..00000000000
      Binary files a/themes/devopsdays-responsive/static/ms-icon-150x150.png and /dev/null differ
      diff --git a/themes/devopsdays-responsive/static/ms-icon-310x310.png b/themes/devopsdays-responsive/static/ms-icon-310x310.png
      deleted file mode 100644
      index b7c8ce59455..00000000000
      Binary files a/themes/devopsdays-responsive/static/ms-icon-310x310.png and /dev/null differ
      diff --git a/themes/devopsdays-responsive/static/ms-icon-70x70.png b/themes/devopsdays-responsive/static/ms-icon-70x70.png
      deleted file mode 100644
      index af1c134a153..00000000000
      Binary files a/themes/devopsdays-responsive/static/ms-icon-70x70.png and /dev/null differ
      diff --git a/themes/devopsdays-responsive/static/site.less b/themes/devopsdays-responsive/static/site.less
      deleted file mode 100644
      index ef993f7d024..00000000000
      --- a/themes/devopsdays-responsive/static/site.less
      +++ /dev/null
      @@ -1,132 +0,0 @@
      -@import "site_variables.less"; //customizations
      -@import "less/variables.less";
      -
      -.upcoming-headline h3 {
      -	color: #333333;
      -	font-weight: bold;
      -	background-color: #D7D7D7;
      -	padding: 10px;
      -	font-size: 19px;
      -	text-align: center;
      -	text-decoration: none;
      -}
      -
      -.upcoming-headline a {
      -	color: #333333;
      -}
      -
      -.upcoming-headline a:hover {
      -	text-decoration: underline;
      -}
      -
      -.main-title {
      -	font-family: 'Crete Round', serif;
      -	font-weight: 400;
      -	color: @devopsdays-blue;
      -	font-size: @font-size-h1;
      -
      -}
      -
      -.event-navigation h3 {
      -	color: #333333;
      -	font-weight: bold;
      -	background-color: #D7D7D7;
      -	padding: 10px;
      -	font-size: 19px;
      -	text-align: center;
      -	text-decoration: none;
      -}
      -
      -.event-navigation a {
      -	color: #333333;
      -}
      -
      -.event-navigation a:hover {
      -	color: #333333;
      -	text-decoration: underline;
      -}
      -
      -.company-logo {
      -  display:inline-block;
      -	float:left;
      -	height:100px;
      -	width:100px;
      -	border: 1px solid #18b;
      -	padding: 2px !important;
      -	margin: 2px;
      -}
      -
      -
      -.dropdown-submenu {
      -    position: relative;
      -}
      -
      -.dropdown-submenu>.dropdown-menu {
      -    top: 0;
      -    left: 100%;
      -    margin-top: -6px;
      -    margin-left: -1px;
      -    -webkit-border-radius: 0 6px 6px 6px;
      -    -moz-border-radius: 0 6px 6px;
      -    border-radius: 0 6px 6px 6px;
      -}
      -
      -.dropdown-submenu:hover>.dropdown-menu {
      -    display: block;
      -}
      -
      -.dropdown-submenu>a:after {
      -    display: block;
      -    content: " ";
      -    float: right;
      -    width: 0;
      -    height: 0;
      -    border-color: transparent;
      -    border-style: solid;
      -    border-width: 5px 0 5px 5px;
      -    border-left-color: #ccc;
      -    margin-top: 5px;
      -    margin-right: -10px;
      -}
      -
      -.dropdown-submenu:hover>a:after {
      -    border-left-color: #fff;
      -}
      -
      -.dropdown-submenu.pull-left {
      -    float: none;
      -}
      -
      -.dropdown-submenu.pull-left>.dropdown-menu {
      -    left: -100%;
      -    margin-left: 10px;
      -    -webkit-border-radius: 6px 0 6px 6px;
      -    -moz-border-radius: 6px 0 6px 6px;
      -    border-radius: 6px 0 6px 6px;
      -}
      -
      -.footer, .push {
      -    height: 50px; /* .push must be the same height as .footer */
      -		background-color: #1581AB;
      -		text-align: center;
      -		padding-top: 10px;
      -		color: #fff;
      -		margin-top: 10px;
      -}
      -
      -.navbar-nav li a {
      -    text-align: center;
      -  }
      -
      -.social-links {
      -  color: #fff;
      -  margin-top: 25px;
      -  margin-left: 25px;
      -  margin-right: 25px;
      -}
      -
      -.box {
      -  padding:1.5em;
      -  margin-bottom:1.5em;
      -  background:#E5ECF9;
      -}
      diff --git a/themes/devopsdays-responsive/static/site_variables.less b/themes/devopsdays-responsive/static/site_variables.less
      deleted file mode 100644
      index feafd4d3f8d..00000000000
      --- a/themes/devopsdays-responsive/static/site_variables.less
      +++ /dev/null
      @@ -1,6 +0,0 @@
      -
      -//== Custom devopsdays variables
      -@devopsdays-blue:              #1581AB;
      -@navbar-padding-horizontal:    20px;
      -@navbar-default-link-color:    @devopsdays-blue;
      -@headings-color:               @devopsdays-blue;
      diff --git a/themes/devopsdays-responsive/theme.toml b/themes/devopsdays-responsive/theme.toml
      deleted file mode 100644
      index f7fc75d2ae4..00000000000
      --- a/themes/devopsdays-responsive/theme.toml
      +++ /dev/null
      @@ -1,21 +0,0 @@
      -# theme.toml template for a Hugo theme
      -# See https://github.com/spf13/hugoThemes#themetoml for an example
      -
      -name = "Devopsdays Responsive"
      -license = "MIT"
      -licenselink = "https://github.com/yourname/yourtheme/blob/master/LICENSE.md"
      -description = ""
      -homepage = "http://siteforthistheme.com/"
      -tags = ["", ""]
      -features = ["", ""]
      -min_version = 0.14
      -
      -[author]
      -  name = ""
      -  homepage = ""
      -
      -# If porting an existing theme
      -[original]
      -  name = ""
      -  homepage = ""
      -  repo = ""
      diff --git a/themes/devopsdays-theme/.travis.yml b/themes/devopsdays-theme/.travis.yml
      new file mode 100644
      index 00000000000..dd1589a6740
      --- /dev/null
      +++ b/themes/devopsdays-theme/.travis.yml
      @@ -0,0 +1,37 @@
      +sudo: false
      +language: node_js
      +node_js:
      +  - "6"
      +env:
      +  - CXX=g++-4.8
      +addons:
      +  apt:
      +    sources:
      +      - ubuntu-toolchain-r-test
      +    packages:
      +      - g++-4.8
      +before_script:
      +- npm install -g gulp
      +- npm install
      +- cd exampleSite
      +
      +script:
      +- "$TRAVIS_BUILD_DIR/bin/hugo version"
      +- "$TRAVIS_BUILD_DIR/bin/hugo"
      +- gulp min-html --cwd .
      +
      +
      +before_deploy:
      +- cd $TRAVIS_BUILD_DIR
      +- mkdir -p release
      +- zip -r release/devopsdays-theme-$TRAVIS_TAG.zip . -x \*.git\* \*exampleSite\* appveyor.yml \*.travis.ci\* \*tests\* \*bin\* \*build\* \*release\* config.codekit3 \*bower_components\* bower.json gulpfile.js netlify.toml package.json STYLE.md *\node_modules\*
      +
      +deploy:
      +  provider: releases
      +  skip_cleanup: true
      +  api_key:
      +    secure: wXshcH1JIjlfxm95YXaZqHCMTDIB6DIkO48+h5AmnCDJh0G8ktgeWRyj4CSH6+AHDu5wljtCOonmEOF9Aj7GOtZT4eNch01A731Dtlc5taoPXHvEEdocGnCJOHRqzFdXhS/UziDV5QxCApeVDLLLGeC3nABANGBRPBiE+Gz+S16ba9oYXgHiRc3nYrJ/5BHcVrpI+S5LpgsdFiuusA1C9OdIIIcxoJvcovHqFZCGsmzUIBMKbgo/IeoZ8EqmyW+E+cwbYxA5ZVv9zeMZQy+VL/XNyhbfeZZh2dQAmBOTzcbjol22zsnOIx+5DxULMU3/YclN73ImDMPB8fPI9AgZkU3kLuGu5E0TRmvcGaOEkRM8x7Bhca3luTo9YwtIQ3nhj4fS65FMzw79vbH3qyZvYxlFZzVMakZT98ov3YUimk8U14IZqvk3jf3ffmSnixVc7kELrlnEHByMffihhdQ1vggecSxGImUA5QqdSU7mVv5fOgSMSYzelVBA4RN241bdyvDLHRwSLih9yD7biIjfog1wP+luoap3nQQLtU7Zv8CmxmZrDLMwdLmrKHVHXKGoFLnMzN121iTceMuCwPHdmCmZuSMSuXBPG+yTVY/tzSZV84tphiIS4iJvPD2yv9VBs79Yhlqs/3CVQ+FWPAUGgfCfVF2NdB41xar7Ik9wn/I=
      +  file: 'release/devopsdays-theme-$TRAVIS_TAG.zip'
      +  on:
      +    repo: devopsdays/devopsdays-theme
      +    tags: true
      diff --git a/themes/devopsdays-theme/CHANGELOG.md b/themes/devopsdays-theme/CHANGELOG.md
      new file mode 100644
      index 00000000000..b7e6259c0b2
      --- /dev/null
      +++ b/themes/devopsdays-theme/CHANGELOG.md
      @@ -0,0 +1,313 @@
      +# Change Log
      +
      +## [1.0.2](https://github.com/devopsdays/devopsdays-theme/tree/1.0.2) (2017-03-16)
      +[Full Changelog](https://github.com/devopsdays/devopsdays-theme/compare/1.0.1...1.0.2)
      +
      +**Closed issues:**
      +
      +- Logo images are not constrained on small viewports  [\#384](https://github.com/devopsdays/devopsdays-theme/issues/384)
      +- data cleanup for event\_twitter shortcode change [\#214](https://github.com/devopsdays/devopsdays-theme/issues/214)
      +- Add regression testing to current site [\#55](https://github.com/devopsdays/devopsdays-theme/issues/55)
      +
      +## [1.0.1](https://github.com/devopsdays/devopsdays-theme/tree/1.0.1) (2017-03-15)
      +[Full Changelog](https://github.com/devopsdays/devopsdays-theme/compare/1.0.0...1.0.1)
      +
      +**Fixed bugs:**
      +
      +- Text set to bold in content pages does not display bold in Windows browsers [\#382](https://github.com/devopsdays/devopsdays-theme/issues/382)
      +
      +**Closed issues:**
      +
      +- Track clicks on CTA buttons into Google Analytics [\#381](https://github.com/devopsdays/devopsdays-theme/issues/381)
      +- Track clicks on CTA buttons into Google Analytics [\#380](https://github.com/devopsdays/devopsdays-theme/issues/380)
      +
      +## [1.0.0](https://github.com/devopsdays/devopsdays-theme/tree/1.0.0) (2017-03-14)
      +[Full Changelog](https://github.com/devopsdays/devopsdays-theme/compare/0.9.2...1.0.0)
      +
      +## [0.9.2](https://github.com/devopsdays/devopsdays-theme/tree/0.9.2) (2017-03-07)
      +[Full Changelog](https://github.com/devopsdays/devopsdays-theme/compare/0.9.1...0.9.2)
      +
      +**Implemented enhancements:**
      +
      +- Display of sponsor rows could be more delightful [\#366](https://github.com/devopsdays/devopsdays-theme/issues/366)
      +- Add optional address field in YAML file [\#241](https://github.com/devopsdays/devopsdays-theme/issues/241)
      +
      +## [0.9.1](https://github.com/devopsdays/devopsdays-theme/tree/0.9.1) (2017-03-02)
      +[Full Changelog](https://github.com/devopsdays/devopsdays-theme/compare/0.9.0...0.9.1)
      +
      +**Implemented enhancements:**
      +
      +- Create RSS feeds for events and CFP's [\#15](https://github.com/devopsdays/devopsdays-theme/issues/15)
      +
      +**Fixed bugs:**
      +
      +- Legacy program pages are missing styling [\#363](https://github.com/devopsdays/devopsdays-theme/issues/363)
      +- Some static files are not copied to dist folder [\#354](https://github.com/devopsdays/devopsdays-theme/issues/354)
      +- Alignment tweaks to navbars [\#344](https://github.com/devopsdays/devopsdays-theme/issues/344)
      +
      +## [0.9.0](https://github.com/devopsdays/devopsdays-theme/tree/0.9.0) (2017-02-27)
      +[Full Changelog](https://github.com/devopsdays/devopsdays-theme/compare/0.8.0...0.9.0)
      +
      +**Implemented enhancements:**
      +
      +- Events in map are not clickable [\#316](https://github.com/devopsdays/devopsdays-theme/issues/316)
      +- Suggestion on sponsor images size being displayed [\#310](https://github.com/devopsdays/devopsdays-theme/issues/310)
      +- Update sample event stuff to include descriptions [\#293](https://github.com/devopsdays/devopsdays-theme/issues/293)
      +- Make CTA buttons styled better [\#167](https://github.com/devopsdays/devopsdays-theme/issues/167)
      +
      +**Fixed bugs:**
      +
      +- Event CTA buttons don't line up on tablets properly [\#349](https://github.com/devopsdays/devopsdays-theme/issues/349)
      +- Fix gap on Ignite sessions [\#336](https://github.com/devopsdays/devopsdays-theme/issues/336)
      +- Speakers page needs to be backwards-compatible [\#313](https://github.com/devopsdays/devopsdays-theme/issues/313)
      +- Default homepage grid image is too small on mobile [\#311](https://github.com/devopsdays/devopsdays-theme/issues/311)
      +- contacts all squashed together in IE11 on new theme [\#300](https://github.com/devopsdays/devopsdays-theme/issues/300)
      +- Homepage images missing ALT tags [\#297](https://github.com/devopsdays/devopsdays-theme/issues/297)
      +- Event sharing image path still wrong [\#296](https://github.com/devopsdays/devopsdays-theme/issues/296)
      +- Fix aspect ratio issue on local event contact page [\#266](https://github.com/devopsdays/devopsdays-theme/issues/266)
      +- debug facebook OG tags [\#246](https://github.com/devopsdays/devopsdays-theme/issues/246)
      +
      +**Closed issues:**
      +
      +- Calm the bot down about case [\#324](https://github.com/devopsdays/devopsdays-theme/issues/324)
      +- Standardize input image sizes  [\#318](https://github.com/devopsdays/devopsdays-theme/issues/318)
      +- Test issue [\#304](https://github.com/devopsdays/devopsdays-theme/issues/304)
      +- Add contributing guidelines file [\#303](https://github.com/devopsdays/devopsdays-theme/issues/303)
      +- Create simple "Here's what an event needs" doc [\#181](https://github.com/devopsdays/devopsdays-theme/issues/181)
      +
      +## [0.8.0](https://github.com/devopsdays/devopsdays-theme/tree/0.8.0) (2017-02-22)
      +[Full Changelog](https://github.com/devopsdays/devopsdays-theme/compare/0.7.0...0.8.0)
      +
      +**Implemented enhancements:**
      +
      +- Add github account parameter for speakers and organizers [\#279](https://github.com/devopsdays/devopsdays-theme/issues/279)
      +- Change homepage to use hard-coded file names [\#255](https://github.com/devopsdays/devopsdays-theme/issues/255)
      +- Update image processing in gulp [\#252](https://github.com/devopsdays/devopsdays-theme/issues/252)
      +- Make contact shortcodes display in a prettier manner [\#231](https://github.com/devopsdays/devopsdays-theme/issues/231)
      +- Event home page needs more styling [\#227](https://github.com/devopsdays/devopsdays-theme/issues/227)
      +- Style footer so it looks different than rest of page [\#141](https://github.com/devopsdays/devopsdays-theme/issues/141)
      +- Make sponsor layout look pretty [\#137](https://github.com/devopsdays/devopsdays-theme/issues/137)
      +- Add social sharing images [\#123](https://github.com/devopsdays/devopsdays-theme/issues/123)
      +- Add styling to blog page list [\#48](https://github.com/devopsdays/devopsdays-theme/issues/48)
      +- Create properly-styled blog post page [\#45](https://github.com/devopsdays/devopsdays-theme/issues/45)
      +
      +**Fixed bugs:**
      +
      +- Make events page look pretty [\#289](https://github.com/devopsdays/devopsdays-theme/issues/289)
      +- Path to sharing image is not correct on sub-pages [\#280](https://github.com/devopsdays/devopsdays-theme/issues/280)
      +- event pages need titles [\#243](https://github.com/devopsdays/devopsdays-theme/issues/243)
      +- Structured metadata returns invalid info [\#236](https://github.com/devopsdays/devopsdays-theme/issues/236)
      +- Structured metadata cannot pull from event description with special characters [\#234](https://github.com/devopsdays/devopsdays-theme/issues/234)
      +- Add privacy policy to footer [\#218](https://github.com/devopsdays/devopsdays-theme/issues/218)
      +- Ensure structured metadata only shows with items with startdate [\#212](https://github.com/devopsdays/devopsdays-theme/issues/212)
      +- Refactor event nav on small devices [\#185](https://github.com/devopsdays/devopsdays-theme/issues/185)
      +- Consider processing sponsor image sizes in gulp [\#153](https://github.com/devopsdays/devopsdays-theme/issues/153)
      +- Text alignment of events on homepage is weird [\#134](https://github.com/devopsdays/devopsdays-theme/issues/134)
      +
      +**Closed issues:**
      +
      +- determine contents of footer [\#263](https://github.com/devopsdays/devopsdays-theme/issues/263)
      +
      +## [0.7.0](https://github.com/devopsdays/devopsdays-theme/tree/0.7.0) (2017-02-16)
      +[Full Changelog](https://github.com/devopsdays/devopsdays-theme/compare/0.6.1...0.7.0)
      +
      +**Implemented enhancements:**
      +
      +- Add jssocials to license file [\#195](https://github.com/devopsdays/devopsdays-theme/issues/195)
      +- Speaker image should be clickable on talk page [\#194](https://github.com/devopsdays/devopsdays-theme/issues/194)
      +- Change from png to jpg for images as much as possible [\#150](https://github.com/devopsdays/devopsdays-theme/issues/150)
      +- Move "past events" from top of sidebar to bottom [\#142](https://github.com/devopsdays/devopsdays-theme/issues/142)
      +- Add styling to talk page [\#58](https://github.com/devopsdays/devopsdays-theme/issues/58)
      +- Add styling to individual speaker page [\#57](https://github.com/devopsdays/devopsdays-theme/issues/57)
      +- Add styling to speakers page [\#56](https://github.com/devopsdays/devopsdays-theme/issues/56)
      +
      +**Fixed bugs:**
      +
      +- Update image references with alt tags for accessiblity [\#217](https://github.com/devopsdays/devopsdays-theme/issues/217)
      +- Speaker images are way too big on speaker page [\#193](https://github.com/devopsdays/devopsdays-theme/issues/193)
      +- Default speaker image is broken on speaker page [\#192](https://github.com/devopsdays/devopsdays-theme/issues/192)
      +- Speakerdeck embed is throwing errors [\#96](https://github.com/devopsdays/devopsdays-theme/issues/96)
      +
      +**Closed issues:**
      +
      +- Provide a robots.txt [\#210](https://github.com/devopsdays/devopsdays-theme/issues/210)
      +- prevent events from disappearing from main page after their first day [\#203](https://github.com/devopsdays/devopsdays-theme/issues/203)
      +- adjust event page layout [\#179](https://github.com/devopsdays/devopsdays-theme/issues/179)
      +
      +## [0.6.1](https://github.com/devopsdays/devopsdays-theme/tree/0.6.1) (2017-02-05)
      +[Full Changelog](https://github.com/devopsdays/devopsdays-theme/compare/0.6.0...0.6.1)
      +
      +**Implemented enhancements:**
      +
      +- Add google analytics support [\#136](https://github.com/devopsdays/devopsdays-theme/issues/136)
      +
      +**Fixed bugs:**
      +
      +- events with the same dates don't show on main site sidebar [\#140](https://github.com/devopsdays/devopsdays-theme/issues/140)
      +
      +## [0.6.0](https://github.com/devopsdays/devopsdays-theme/tree/0.6.0) (2017-02-03)
      +[Full Changelog](https://github.com/devopsdays/devopsdays-theme/compare/0.5.1...0.6.0)
      +
      +**Implemented enhancements:**
      +
      +- Add dynamic CTA buttons to event hompages [\#162](https://github.com/devopsdays/devopsdays-theme/issues/162)
      +- consolidate JS & CSS from speaking page [\#158](https://github.com/devopsdays/devopsdays-theme/issues/158)
      +- Allow for non-square sponsor images [\#139](https://github.com/devopsdays/devopsdays-theme/issues/139)
      +- Add social sharing buttons for pages [\#138](https://github.com/devopsdays/devopsdays-theme/issues/138)
      +- Add event twitter handle to data file [\#132](https://github.com/devopsdays/devopsdays-theme/issues/132)
      +- Optimize social graph data in headers [\#128](https://github.com/devopsdays/devopsdays-theme/issues/128)
      +- Update speaking page [\#117](https://github.com/devopsdays/devopsdays-theme/issues/117)
      +- Create events page [\#116](https://github.com/devopsdays/devopsdays-theme/issues/116)
      +- Create sponsor info page [\#74](https://github.com/devopsdays/devopsdays-theme/issues/74)
      +- Add structured metadata for events [\#69](https://github.com/devopsdays/devopsdays-theme/issues/69)
      +- Remove dependency on "welcome.md" [\#63](https://github.com/devopsdays/devopsdays-theme/issues/63)
      +- add a description element to the frontmatter for a blog post [\#54](https://github.com/devopsdays/devopsdays-theme/issues/54)
      +- Make program page template dynamic [\#37](https://github.com/devopsdays/devopsdays-theme/issues/37)
      +- Refactor homepage event grid [\#31](https://github.com/devopsdays/devopsdays-theme/issues/31)
      +
      +**Fixed bugs:**
      +
      +- fix aspect ratio for brain in header [\#177](https://github.com/devopsdays/devopsdays-theme/issues/177)
      +- Add support for ignites in data file [\#171](https://github.com/devopsdays/devopsdays-theme/issues/171)
      +- Event images don't center on mobile devices  [\#154](https://github.com/devopsdays/devopsdays-theme/issues/154)
      +- Make homepage grid depend upon value in data file [\#149](https://github.com/devopsdays/devopsdays-theme/issues/149)
      +- Event level nav menu doesn't collapse [\#146](https://github.com/devopsdays/devopsdays-theme/issues/146)
      +- single-day events don't display properly [\#135](https://github.com/devopsdays/devopsdays-theme/issues/135)
      +- process-html gulp task takes a really long time [\#130](https://github.com/devopsdays/devopsdays-theme/issues/130)
      +- Need bottom padding on all navs [\#106](https://github.com/devopsdays/devopsdays-theme/issues/106)
      +
      +**Closed issues:**
      +
      +- Consider adding bower\_component to .gitignore [\#172](https://github.com/devopsdays/devopsdays-theme/issues/172)
      +- make city name as well as image linkable on front page [\#133](https://github.com/devopsdays/devopsdays-theme/issues/133)
      +- Have global nav driven from config.toml menu [\#126](https://github.com/devopsdays/devopsdays-theme/issues/126)
      +- Add Travis build step [\#17](https://github.com/devopsdays/devopsdays-theme/issues/17)
      +
      +## [0.5.1](https://github.com/devopsdays/devopsdays-theme/tree/0.5.1) (2017-01-30)
      +[Full Changelog](https://github.com/devopsdays/devopsdays-theme/compare/0.4.1...0.5.1)
      +
      +**Implemented enhancements:**
      +
      +- Add social graph data [\#68](https://github.com/devopsdays/devopsdays-theme/issues/68)
      +
      +**Fixed bugs:**
      +
      +- Move google maps javascript to the footer [\#121](https://github.com/devopsdays/devopsdays-theme/issues/121)
      +- Retina workflow blows up if no alt set [\#115](https://github.com/devopsdays/devopsdays-theme/issues/115)
      +
      +**Closed issues:**
      +
      +- remove node\_modules from released code [\#110](https://github.com/devopsdays/devopsdays-theme/issues/110)
      +
      +## [0.4.1](https://github.com/devopsdays/devopsdays-theme/tree/0.4.1) (2017-01-18)
      +[Full Changelog](https://github.com/devopsdays/devopsdays-theme/compare/0.4.0...0.4.1)
      +
      +**Fixed bugs:**
      +
      +- Incomplete template errors on current content [\#112](https://github.com/devopsdays/devopsdays-theme/issues/112)
      +- program\_entry shortcode needed [\#111](https://github.com/devopsdays/devopsdays-theme/issues/111)
      +- Weird breakpoint on event page [\#8](https://github.com/devopsdays/devopsdays-theme/issues/8)
      +
      +**Closed issues:**
      +
      +- Authentication errors on the google maps api [\#109](https://github.com/devopsdays/devopsdays-theme/issues/109)
      +
      +## [0.4.0](https://github.com/devopsdays/devopsdays-theme/tree/0.4.0) (2017-01-17)
      +[Full Changelog](https://github.com/devopsdays/devopsdays-theme/compare/0.3.1...0.4.0)
      +
      +**Implemented enhancements:**
      +
      +- Add critical to gulp workflow to optmize css [\#103](https://github.com/devopsdays/devopsdays-theme/issues/103)
      +- Standardize speaker and talk frontmatter [\#95](https://github.com/devopsdays/devopsdays-theme/issues/95)
      +
      +**Fixed bugs:**
      +
      +- Show "past events in CITY" displays blank if there were none [\#53](https://github.com/devopsdays/devopsdays-theme/issues/53)
      +
      +## [0.3.1](https://github.com/devopsdays/devopsdays-theme/tree/0.3.1) (2017-01-12)
      +[Full Changelog](https://github.com/devopsdays/devopsdays-theme/compare/0.3.0...0.3.1)
      +
      +## [0.3.0](https://github.com/devopsdays/devopsdays-theme/tree/0.3.0) (2017-01-12)
      +[Full Changelog](https://github.com/devopsdays/devopsdays-theme/compare/0.2.7...0.3.0)
      +
      +**Implemented enhancements:**
      +
      +- Refactor common code into partials [\#86](https://github.com/devopsdays/devopsdays-theme/issues/86)
      +- Make map actually load from data [\#83](https://github.com/devopsdays/devopsdays-theme/issues/83)
      +- Move random footer javascript into javascript files [\#80](https://github.com/devopsdays/devopsdays-theme/issues/80)
      +- Make current month highlighted [\#78](https://github.com/devopsdays/devopsdays-theme/issues/78)
      +- Content of welcome page should show up somewhere [\#75](https://github.com/devopsdays/devopsdays-theme/issues/75)
      +- Make gutters between sponsors smaller [\#73](https://github.com/devopsdays/devopsdays-theme/issues/73)
      +- Add TBD events to event list sidebar [\#67](https://github.com/devopsdays/devopsdays-theme/issues/67)
      +- Add styling to Upcoming Events sidebar [\#43](https://github.com/devopsdays/devopsdays-theme/issues/43)
      +- Test out just using img-responsive with various existing logos [\#26](https://github.com/devopsdays/devopsdays-theme/issues/26)
      +
      +**Fixed bugs:**
      +
      +- Javascript error on non-map pages [\#94](https://github.com/devopsdays/devopsdays-theme/issues/94)
      +- Import font-awesome LESS into main less file [\#92](https://github.com/devopsdays/devopsdays-theme/issues/92)
      +- Fonts not copied in gulpfile [\#91](https://github.com/devopsdays/devopsdays-theme/issues/91)
      +- Accordion on program page doesn't work anymore [\#90](https://github.com/devopsdays/devopsdays-theme/issues/90)
      +
      +**Closed issues:**
      +
      +- Add gulp workflow for optimizations [\#11](https://github.com/devopsdays/devopsdays-theme/issues/11)
      +- Configure workflow to make retina-ready images [\#10](https://github.com/devopsdays/devopsdays-theme/issues/10)
      +
      +## [0.2.7](https://github.com/devopsdays/devopsdays-theme/tree/0.2.7) (2016-12-09)
      +[Full Changelog](https://github.com/devopsdays/devopsdays-theme/compare/0.2.6...0.2.7)
      +
      +**Implemented enhancements:**
      +
      +- Create sponsors partial [\#64](https://github.com/devopsdays/devopsdays-theme/issues/64)
      +- Change "bio" to "speaker\[s\]" on the talk page [\#60](https://github.com/devopsdays/devopsdays-theme/issues/60)
      +
      +**Fixed bugs:**
      +
      +- Handle left event nav sidebar on small displays [\#46](https://github.com/devopsdays/devopsdays-theme/issues/46)
      +- Sponsors should be two across on small screens [\#30](https://github.com/devopsdays/devopsdays-theme/issues/30)
      +
      +## [0.2.6](https://github.com/devopsdays/devopsdays-theme/tree/0.2.6) (2016-12-09)
      +[Full Changelog](https://github.com/devopsdays/devopsdays-theme/compare/0.2.5...0.2.6)
      +
      +**Implemented enhancements:**
      +
      +- Create template for individual speakers [\#52](https://github.com/devopsdays/devopsdays-theme/issues/52)
      +- Create speakers page template [\#51](https://github.com/devopsdays/devopsdays-theme/issues/51)
      +- Speaker bio should display default if none is specified [\#44](https://github.com/devopsdays/devopsdays-theme/issues/44)
      +- Add latest blog to footer [\#34](https://github.com/devopsdays/devopsdays-theme/issues/34)
      +- Create left sidebar for event dates [\#32](https://github.com/devopsdays/devopsdays-theme/issues/32)
      +- Create skeleton blog template [\#25](https://github.com/devopsdays/devopsdays-theme/issues/25)
      +- Speaker images need a thumbnail [\#7](https://github.com/devopsdays/devopsdays-theme/issues/7)
      +- Add speaker info to the frontmatter on the talk page [\#5](https://github.com/devopsdays/devopsdays-theme/issues/5)
      +
      +**Fixed bugs:**
      +
      +- Add publishdate to archetypes [\#12](https://github.com/devopsdays/devopsdays-theme/issues/12)
      +
      +**Closed issues:**
      +
      +- Create actual sample content [\#41](https://github.com/devopsdays/devopsdays-theme/issues/41)
      +
      +## [0.2.5](https://github.com/devopsdays/devopsdays-theme/tree/0.2.5) (2016-12-08)
      +**Implemented enhancements:**
      +
      +- Create skeleton program page template  [\#24](https://github.com/devopsdays/devopsdays-theme/issues/24)
      +
      +**Fixed bugs:**
      +
      +- Some cities don't work with the "previous events" on welcome.html [\#29](https://github.com/devopsdays/devopsdays-theme/issues/29)
      +- Refactor event page image logic to use path separator key [\#28](https://github.com/devopsdays/devopsdays-theme/issues/28)
      +- Using container-fluid makes everything huge on a huge viewport [\#23](https://github.com/devopsdays/devopsdays-theme/issues/23)
      +
      +**Closed issues:**
      +
      +- Create instructions for releasing thieme [\#40](https://github.com/devopsdays/devopsdays-theme/issues/40)
      +- Transfer Google Doc to README [\#39](https://github.com/devopsdays/devopsdays-theme/issues/39)
      +- test issue [\#36](https://github.com/devopsdays/devopsdays-theme/issues/36)
      +- Populate exampleSite with sample data [\#19](https://github.com/devopsdays/devopsdays-theme/issues/19)
      +- Optimize codekit settings [\#14](https://github.com/devopsdays/devopsdays-theme/issues/14)
      +
      +
      +
      +\* *This Change Log was automatically generated by [github_changelog_generator](https://github.com/skywinder/Github-Changelog-Generator)*
      \ No newline at end of file
      diff --git a/themes/devopsdays-theme/CONTRIBUTING.md b/themes/devopsdays-theme/CONTRIBUTING.md
      new file mode 100644
      index 00000000000..b51a98a82ea
      --- /dev/null
      +++ b/themes/devopsdays-theme/CONTRIBUTING.md
      @@ -0,0 +1,95 @@
      +# Contributing to devopsdays-theme
      +
      +The technical details on how to set up your local development environment for making changes to the `devopsdays-theme` [Hugo](https://gohugo.io/) theme for the [Devopsdays](http://www.devopsdays.org/) website.
      +
      +## Dev Setup
      +
      +Working with a Hugo theme outside of a content-based repo has a few challenges. The `devopsdays-theme` repo contains a directory called `exampleSite`, which is what is used for testing theme development. The `config.toml` for the `exampleSite` contains the following value:
      +
      +```
      +themesdir = "../.."
      +```
      +
      +This tells Hugo where to look for its theme directories. This requires Hugo 0.18 or later.
      +
      +You will need to run your watch command from the `exampleSite` directory; use something like this:
      +
      +```
      +hugo server -w --baseUrl="http://localhost:1313"
      +```
      +
      +NOTE: If you also load the existing `devopsdays-web` project, it is highly suggested that you use the `-p` flag on `hugo server` to load this theme on a different port. This will prevent your browser from caching assets like stylesheets, etc, from the other instance.
      +
      +## Design Principles
      +
      +### Blocks
      +All page templates should make use of the `layouts/_default/baseof.html` file. This file contains all wrappers for the content. Anything within the `{{- block "main" . }} {{- end -}}` section is what will be displayed on a sub-template. Include a `{{ define "main" }}` block in your template to include what should be rendered.
      +
      +### CSS and SCSS
      +All CSS must be generated with SCSS. The SCSS files are located in `static/scss`.
      +
      +#### `site.scss`
      +This is the file that imports all the other SCSS files, including Bootstrap, font-awesome (TBD; it seems that BS 4 brings this in for us), and the jquery oembed. It also imports our custom variables and any other customizations.
      +
      +#### `custom-variables.scss`
      +Use this to set any SCSS variables, or to over-ride any variables used by Bootstrap.
      +
      +#### `custom.scss`
      +This is the only place you should declare custom SCSS or CSS code.
      +
      +### Colors and Layout
      +The design and layout can be found in [here](https://drive.google.com/file/d/0BzljU_vIF4BoOHhLV2Yzd2xicEk/view?usp=sharing). Please refer to the [Style Guide](https://github.com/devopsdays/devopsdays-theme/blob/master/STYLE.md) for all colors, fonts, and sizes of text elements, etc.
      +
      +## Continuous Integration
      +The `devopsdays-theme` repo has hooks into Travis, Appveyor, and Netlify. Currently, the Travis build doesn’t do very much (the intent is to add some testing using Casper.js for web testing, but no tests have been written). The Appveyor tests ensure that the site can build with Windows.
      +
      +All changes are built by Netlify to https://dev.devopsdays.org
      +
      +### Asset Pipeline
      +Peruse the `gulpfile.js` to see what is processed for the asset pipeline. Gulp is only called when changes are merged to master. Pull requests, and local changes will not trigger gulp.
      +
      +
      +## Workflow
      +
      +Our workflow is inspired by [Ian Bickering's guide to using GitHub Issues](http://www.ianbicking.org/blog/2014/03/use-github-issues-to-organize-a-project.html).
      +
      +### Milestones
      +
      +**Stuff we are doing right now:** this is the “main” milestone. We give it a minor SemVer name (like 1.2 or 2.3). We create a new milestone when we have released a new minor version.
      +
      +**Stuff we’ll probably do soon:** this is the standing [“Next Tasks” milestone](https://github.com/devopsdays/devopsdays-theme/milestone/3). We never change or rename this milestone.
      +
      +**Stuff we probably won’t do soon:** this is the standing [“Blue Sky” milestone](https://github.com/devopsdays/devopsdays-theme/milestone/4). We refer to these tickets and sometimes look through them, but they are easy to ignore, somewhat intentionally ignored.
      +
      +**What aren’t we sure about?:** issues with no milestone.
      +
      +We use the permanent “Next Tasks” milestone (as opposed to renaming it to “Alpha 3” or actual-next-iteration milestone) because we don’t want to presume or default to including something in the real next iteration. When we’re ready to start planning the next iteration we’ll create a new milestone, and only deliberately move things into that milestone.
      +
      +### Issues
      +
      +All changes should be driven by issues (this is because our changelog generator is issue-driven). So before you implement a bugfix or an enhancement, you should make sure an issue has been created and properly tagged. These are the issue labels that really matter:
      +
      +**Bug:** Something is broken in the theme and needs fixing.
      +
      +**Enhancement:** Adding new functionality to the theme.
      +
      +TODO: list the other label types and how they are used by github_changelog_generator
      +
      +#### Collection of issues
      +
      +Sometimes we have a collection of work that has to go together. This could be a release checklist, or perhaps a more complicated feature. In this case, create a "master" issue which links in its description to the sub-issues. We like to use the [checklist feature](https://github.com/blog/1375-task-lists-in-gfm-issues-pulls-comments) of GH issues for this; checking them off as the issues are closed.
      +
      +### Pull Requests
      +
      +Please submit your proposed changes as a Pull Request against this repository. If the PR will resolve an issue, please add `Fixes #123` to the PR.
      +
      +## Releasing
      +
      +To cut a new release, a tag must be created. This will trigger Travis to deploy a new release. Follow these steps:
      +
      +1. Update the `theme_version` key in `theme.toml` to the new version.
      +1. Make sure you have the [`github_changelog_generator`](https://github.com/skywinder/github-changelog-generator) gem installed on your system.
      +1. Inside the repository, run `github_changelog_generator --future-release "x.x.x`.
      +1. Run `git add CHANGELOG.md theme.toml`
      +1. Add the appropriate tag to the latest commit. The tags are named by the SemVer version number of the theme, with only numbers (that is, `1.1.31` vs `v1.1.31`)
      +1. Push to `origin master`, including tags (if you don't know how to do this, ask!)
      diff --git a/themes/devopsdays-theme/LICENSE b/themes/devopsdays-theme/LICENSE
      new file mode 100644
      index 00000000000..3792610a667
      --- /dev/null
      +++ b/themes/devopsdays-theme/LICENSE
      @@ -0,0 +1,43 @@
      +The MIT License (MIT)
      +
      +Copyright (c) 2016-2017 devopsdays
      +
      +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
      +
      +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
      +
      +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
      +
      +This project includes bootstrap, which is available under a 'MIT' License.
      +For details, see:
      +/LICENSES/BOOTSTRAP-MIT-LICENSE
      +
      +This project includes bootstrap-sortable, which is available under a 'MIT' License.
      +For details, see:
      +/LICENSES/BOOTSTRAP-SORTABLE-LICENSE
      +
      +This project includes hugo-snippets, which is available under a 'MIT' License.
      +For details, see:
      +/LICENSES/HUGO-SNIPPETS-MIT-LICENSE
      +
      +This project includes moment, which is available under a 'MIT' License.
      +For details, see:
      +/LICENSES/MOMENT-MIT-LICENSE
      +
      +This project includes jssocials, which is available under a 'MIT' License.
      +For details, see:
      +/LICENSES/JSSOCIALS-MIT-LICENSE
      +
      +This project includes fonts from Font Awesome, which are available under a 'SIL OFL 1.1' license.
      +For details, see http://fontawesome.io/license/
      +
      +This project includes font-awesome, which is available under a 'MIT' license.
      +For details, see http://fontawesome.io/license/
      +
      +This project includes jquery, which is available under a 'MIT' license.
      +For details, see
      +/LICENSES/JQUERY-MIT-LICENSE
      +
      +This project includes portions of the v3-utility-library for Google Maps, which is available under a 'Apache 2' license.
      +For details, see
      +/LICENSES/V3-UTILITY-LIBRARY-APACHE-LICENSE
      diff --git a/themes/devopsdays-theme/LICENSES/BOOSTRAP-SORTABLE-MIT-LICENSE b/themes/devopsdays-theme/LICENSES/BOOSTRAP-SORTABLE-MIT-LICENSE
      new file mode 100644
      index 00000000000..41a83523d70
      --- /dev/null
      +++ b/themes/devopsdays-theme/LICENSES/BOOSTRAP-SORTABLE-MIT-LICENSE
      @@ -0,0 +1,9 @@
      +Copyright (c) 2016 Matúš Brliť (drvic10k), bootstrap-sortable contributors
      +
      +Copyright (c) 2011-2013 Tim Wood, Iskren Chernev, Moment.js contributors
      +
      +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
      +
      +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
      +
      +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
      diff --git a/themes/devopsdays-theme/LICENSES/BOOTSTRAP-MIT-LICENSE b/themes/devopsdays-theme/LICENSES/BOOTSTRAP-MIT-LICENSE
      new file mode 100644
      index 00000000000..7a300022c3e
      --- /dev/null
      +++ b/themes/devopsdays-theme/LICENSES/BOOTSTRAP-MIT-LICENSE
      @@ -0,0 +1,21 @@
      +The MIT License (MIT)
      +
      +Copyright (c) 2011-2016 Twitter, Inc.
      +
      +Permission is hereby granted, free of charge, to any person obtaining a copy
      +of this software and associated documentation files (the "Software"), to deal
      +in the Software without restriction, including without limitation the rights
      +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
      +copies of the Software, and to permit persons to whom the Software is
      +furnished to do so, subject to the following conditions:
      +
      +The above copyright notice and this permission notice shall be included in
      +all copies or substantial portions of the Software.
      +
      +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
      +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
      +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
      +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
      +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
      +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
      +THE SOFTWARE.
      diff --git a/themes/devopsdays-theme/LICENSES/HUGO-SNIPPETS-MIT-LICENSE b/themes/devopsdays-theme/LICENSES/HUGO-SNIPPETS-MIT-LICENSE
      new file mode 100644
      index 00000000000..9a2dafeb7a9
      --- /dev/null
      +++ b/themes/devopsdays-theme/LICENSES/HUGO-SNIPPETS-MIT-LICENSE
      @@ -0,0 +1,21 @@
      +The MIT License (MIT)
      +
      +Copyright (c) 2014 Nozzle
      +
      +Permission is hereby granted, free of charge, to any person obtaining a copy
      +of this software and associated documentation files (the "Software"), to deal
      +in the Software without restriction, including without limitation the rights
      +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
      +copies of the Software, and to permit persons to whom the Software is
      +furnished to do so, subject to the following conditions:
      +
      +The above copyright notice and this permission notice shall be included in all
      +copies or substantial portions of the Software.
      +
      +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
      +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
      +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
      +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
      +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
      +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
      +SOFTWARE.
      diff --git a/themes/devopsdays-theme/LICENSES/JQUERY-MIT-LICENSE b/themes/devopsdays-theme/LICENSES/JQUERY-MIT-LICENSE
      new file mode 100644
      index 00000000000..e4e5e00ef0a
      --- /dev/null
      +++ b/themes/devopsdays-theme/LICENSES/JQUERY-MIT-LICENSE
      @@ -0,0 +1,36 @@
      +Copyright JS Foundation and other contributors, https://js.foundation/
      +
      +This software consists of voluntary contributions made by many
      +individuals. For exact contribution history, see the revision history
      +available at https://github.com/jquery/jquery
      +
      +The following license applies to all parts of this software except as
      +documented below:
      +
      +====
      +
      +Permission is hereby granted, free of charge, to any person obtaining
      +a copy of this software and associated documentation files (the
      +"Software"), to deal in the Software without restriction, including
      +without limitation the rights to use, copy, modify, merge, publish,
      +distribute, sublicense, and/or sell copies of the Software, and to
      +permit persons to whom the Software is furnished to do so, subject to
      +the following conditions:
      +
      +The above copyright notice and this permission notice shall be
      +included in all copies or substantial portions of the Software.
      +
      +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
      +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
      +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
      +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
      +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
      +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
      +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
      +
      +====
      +
      +All files located in the node_modules and external directories are
      +externally maintained libraries used by this software which have their
      +own licenses; we recommend you read them, as their terms may differ from
      +the terms above.
      diff --git a/themes/devopsdays-theme/LICENSES/JSSOCIALS-MIT-LICENSE b/themes/devopsdays-theme/LICENSES/JSSOCIALS-MIT-LICENSE
      new file mode 100644
      index 00000000000..86f1063286d
      --- /dev/null
      +++ b/themes/devopsdays-theme/LICENSES/JSSOCIALS-MIT-LICENSE
      @@ -0,0 +1,21 @@
      +The MIT License (MIT)
      +
      +Copyright (c) 2015 Artem Tabalin
      +
      +Permission is hereby granted, free of charge, to any person obtaining a copy
      +of this software and associated documentation files (the "Software"), to deal
      +in the Software without restriction, including without limitation the rights
      +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
      +copies of the Software, and to permit persons to whom the Software is
      +furnished to do so, subject to the following conditions:
      +
      +The above copyright notice and this permission notice shall be included in all
      +copies or substantial portions of the Software.
      +
      +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
      +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
      +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
      +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
      +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
      +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
      +SOFTWARE.
      diff --git a/themes/devopsdays-theme/LICENSES/MOMENT-MIT-LICENSE b/themes/devopsdays-theme/LICENSES/MOMENT-MIT-LICENSE
      new file mode 100644
      index 00000000000..9ee537448a3
      --- /dev/null
      +++ b/themes/devopsdays-theme/LICENSES/MOMENT-MIT-LICENSE
      @@ -0,0 +1,22 @@
      +Copyright (c) 2011-2016 Tim Wood, Iskren Chernev, Moment.js contributors
      +
      +Permission is hereby granted, free of charge, to any person
      +obtaining a copy of this software and associated documentation
      +files (the "Software"), to deal in the Software without
      +restriction, including without limitation the rights to use,
      +copy, modify, merge, publish, distribute, sublicense, and/or sell
      +copies of the Software, and to permit persons to whom the
      +Software is furnished to do so, subject to the following
      +conditions:
      +
      +The above copyright notice and this permission notice shall be
      +included in all copies or substantial portions of the Software.
      +
      +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
      +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
      +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
      +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
      +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
      +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
      +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
      +OTHER DEALINGS IN THE SOFTWARE.
      diff --git a/themes/devopsdays-theme/LICENSES/V3-UTILITY-LIBRARY-APACHE-LICENSE b/themes/devopsdays-theme/LICENSES/V3-UTILITY-LIBRARY-APACHE-LICENSE
      new file mode 100644
      index 00000000000..b7c9ed18598
      --- /dev/null
      +++ b/themes/devopsdays-theme/LICENSES/V3-UTILITY-LIBRARY-APACHE-LICENSE
      @@ -0,0 +1,202 @@
      +
      +                                 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.
      +
      +   END OF TERMS AND CONDITIONS
      +
      +   APPENDIX: How to apply the Apache License to your work.
      +
      +      To apply the Apache License to your work, attach the following
      +      boilerplate notice, with the fields enclosed by brackets "[]"
      +      replaced with your own identifying information. (Don't include
      +      the brackets!)  The text should be enclosed in the appropriate
      +      comment syntax for the file format. We also recommend that a
      +      file or class name and description of purpose be included on the
      +      same "printed page" as the copyright notice for easier
      +      identification within third-party archives.
      +
      +   Copyright 2013 Google 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.
      diff --git a/themes/devopsdays-theme/README.md b/themes/devopsdays-theme/README.md
      new file mode 100644
      index 00000000000..c9013e78bbf
      --- /dev/null
      +++ b/themes/devopsdays-theme/README.md
      @@ -0,0 +1,105 @@
      +[![Build status](https://ci.appveyor.com/api/projects/status/2cemxawbx0vtrt8e/branch/master?svg=true)](https://ci.appveyor.com/project/DevOpsDays/devopsdays-theme/branch/master)
      +[![Build Status](https://travis-ci.org/devopsdays/devopsdays-theme.svg?branch=master)](https://travis-ci.org/devopsdays/devopsdays-theme)
      +[![GitHub release](https://img.shields.io/github/release/devopsdays/devopsdays-theme.svg)](https://github.com/qubyte/rubidium/releases)
      +[![license](https://img.shields.io/github/license/devopsdays/devopsdays-theme.svg)]()
      +[![Greenkeeper badge](https://badges.greenkeeper.io/devopsdays/devopsdays-theme.svg)](https://greenkeeper.io/)
      +[![Greenkeeper badge](https://img.shields.io/badge/roadmap-available-blue.svg)](https://www.devopsdays.org/roadmap)
      +[![Greenkeeper badge](https://img.shields.io/badge/feedback-welcome-blue.svg)](https://www.devopsdays.org/ideas)
      +
      +[![Stories in Ready](https://badge.waffle.io/devopsdays/devopsdays-theme.svg?label=ready&title=Ready)](http://waffle.io/devopsdays/devopsdays-theme) [![Stories in Progress](https://badge.waffle.io/devopsdays/devopsdays-theme.svg?label=in%progress&title=In%20Progress)](http://waffle.io/devopsdays/devopsdays-theme) [![Needs Review](https://badge.waffle.io/devopsdays/devopsdays-theme.svg?label=needs-review&title=Needs%20Review)](http://waffle.io/devopsdays/devopsdays-theme)
      +
      +You can see progress on tasks at http://waffle.io/devopsdays/devopsdays-theme
      +
      +[![Throughput Graph](https://graphs.waffle.io/devopsdays/devopsdays-theme/throughput.svg)](https://waffle.io/devopsdays/devopsdays-theme/metrics)
      +
      +# devopsdays-theme
      +
      +devopsdays-theme is the Hugo theme for the [devopsdays](https://www.devopsdays.org) website.
      +
      +## QA Testing the New Theme
      +While we are in development, your help is appreciated in identifying outstanding issues or defects. Please browse through the example site at https://dev.devopsdays.org, and if you idenfity something that is broken or missing, please [log an issue](https://github.com/devopsdays/devopsdays-theme/issues). We may mark it as a duplicate, etc, but log anything you find that seems wrong or broken.
      +
      +## Theme Layout
      +Bear in mind that this theme lives in a separate repo from the main [devopsdays-web repo](https://github.com/devopsdays/devopsdays-web). No changes should be made to the `themes/devopsdays-theme` directory in `devopsdays-web`. If changes need to be made to the theme, they should be made in this repo, and a new version released, and the theme installed into `devopsdays-web`.
      +
      +## New Features
      +
      +### Frontpage Logo
      +
      +On the new homepage, upcoming events are listed with a square thumbnail. The image must be square and named `logo-square.jpg` in the `static/events/YYYY-CITY/` directory. If this file does not exist, then the default logo is displayed instead.
      +
      +### Event Menu Icons
      +
      +When on a smaller screen, the event menu collapses to icons. These icons are named from ones available at [Font Awesome](http://fontawesome.io/icons/) and custom ones can be added as optional parameters to the list of event nav elements for the event in its data file. The common menu items have default icons for each type.
      +
      +Example:
      +
      +```
      +nav_elements:
      +  - name: program
      +  - name: speakers
      +  - name: registration
      +  - name: sponsor
      +  - name: stuff
      +    icon: "smile-o"
      +  - name: location
      +  - name: contact
      +  - name: conduct
      +```
      +
      +### Improved Organizer List Page
      + New elements are available via the `list_organizers` shortcode. These include a bio, a photo, and Facebook, Linkedin, GitHub, and website links (in addition to the existing Twitter links). Example usage:
      + ```
      + team_members:
      +  - name: "George Michael Bluth"
      +    employer: "Fakeblock"
      +    website: "http://www.fakebook.com"
      +    image: "george-michael-bluth.jpg"
      +    github: "fakeblock"
      +    twitter: "thegeorgemichaelbluth"
      +    bio: "At high school, George Michael is hardly known by any other students but gets good grades. He is paid to tutor Maeby, but instead, she plagiarizes from him. He briefly develops a crush on his teacher Beth Baerly because she paid attention to him. (\"Shock and Aww\") He lost the student council election, receiving only 3% of the votes. (\"The Immaculate Election\")

      + George Michael's good grades continue through college. To get into Julliard, George Michael develops a fake woodblock app with his roommate P-Hound called [Fakeblock](http://arresteddevelopment.wikia.com/wiki/Fakeblock). One small lie causes the app to get blown out of proportion by Maeby who thinks it is privacy software." +``` +Please note that quotation marks in the bio need to be escaped. The image is relative to the `static/events/YYYY-CITY/organizers/` directory, and must be in jpg format. + +### Program Page +A new template has been created to generate a program page. An example can be seen at https://dev.devopsdays.org/events/2017-ponyville/program + +This is an opt-in feature; the page will need to be set for the type of `program` in order to generate it. + +### Social Sharing Images +An event can create a sharing image for use on social media (when the url is shared on Facebook, for instance). This image must be named `sharing.jpg` and located in the `static/events/YYYY-CITY/` directory. It should be a minimum 1200 x 630px, and use ratio: 1.91:1. + +### Blog +Blog posts now support setting an "author" name in the frontmatter; for example, like this: + +``` ++++ +Title = "Minneapolis 2016 in review" +Date = "2016-08-08T15:59:27-05:00" +Tags = ["2016"] +Author = "Bridget Kromhout" ++++ +``` + +If an author is not specified, attempts to display it are ignored. + +## Feature Requests +If there is a feature in the theme that you would like to see, please visit our [ideas portal](https://www.devopsdays.org/ideas) and suggest it. On that same page, you can upvote existing feedback that you would like to see. + +If you'd like to see what we have planned, check out our [roadmap](https://www.devopsdays.org/roadmap). + +Please only use [GitHub issues](https://www.github.com/devopsdays/devopsdays-theme) for reporting defects/bugs. + +## Contributing +See [CONTRIBUTING.md](https://github.com/devopsdays/devopsdays-theme/blob/master/CONTRIBUTING.md) for details on our workflow, dev setup, and how to release new versions of the theme. + + +## dev examples +This is just a list of some POC urls to see examples: +- [Home Page](https://dev.devopsdays.org/) +- [Event Page](https://dev.devopsdays.org/events/2017-ponyville/welcome/) +- [Talk Page with Single Speaker](https://dev.devopsdays.org/events/2017-hoofington/program/twilight-sparkle/) +- [Talk Page With Multiple Speakers](https://dev.devopsdays.org/events/2017-ponyville/program/rainbow-dash/) +- [Speaker Page](https://dev.devopsdays.org/events/2017-ponyville/speakers/fluttershy/) +- [Program Page](https://dev.devopsdays.org/events/2017-ponyville/program/) diff --git a/themes/devopsdays-theme/archetypes/blog.md b/themes/devopsdays-theme/archetypes/blog.md new file mode 100644 index 00000000000..063919ffe00 --- /dev/null +++ b/themes/devopsdays-theme/archetypes/blog.md @@ -0,0 +1,6 @@ ++++ +Description = "" +title = "" +Author = "" + ++++ diff --git a/themes/devopsdays-theme/archetypes/event.md b/themes/devopsdays-theme/archetypes/event.md new file mode 100644 index 00000000000..60d1d084614 --- /dev/null +++ b/themes/devopsdays-theme/archetypes/event.md @@ -0,0 +1,5 @@ ++++ +Description = "" +Title = "" +Type = "event" ++++ diff --git a/themes/devopsdays-theme/archetypes/program.md b/themes/devopsdays-theme/archetypes/program.md new file mode 100644 index 00000000000..9ca3d468ee3 --- /dev/null +++ b/themes/devopsdays-theme/archetypes/program.md @@ -0,0 +1,6 @@ ++++ +City = "" +Year = "" +Title = "" +Type = "program" ++++ diff --git a/themes/devopsdays-theme/archetypes/speaker.md b/themes/devopsdays-theme/archetypes/speaker.md new file mode 100644 index 00000000000..8ee651e66ca --- /dev/null +++ b/themes/devopsdays-theme/archetypes/speaker.md @@ -0,0 +1,10 @@ ++++ +Title = "" +Twitter = "" +Website = "" +Facebook = "" +Linkedin = "" +Pronouns = "" +Image = "" +Type = "speaker" ++++ diff --git a/themes/devopsdays-theme/archetypes/talk.md b/themes/devopsdays-theme/archetypes/talk.md new file mode 100644 index 00000000000..ed3748ef3e2 --- /dev/null +++ b/themes/devopsdays-theme/archetypes/talk.md @@ -0,0 +1,15 @@ ++++ +Description = "" +City = "" +Year = "" +Title = "" +Speaker = "" +Talk_date = "" +Talk_start_time = "" +Talk_end_time = "" +Youtube = "" +Vimeo = "" +Slideshare = "" +Slides = "" +Type = "talk" ++++ diff --git a/themes/devopsdays-theme/archetypes/welcome.md b/themes/devopsdays-theme/archetypes/welcome.md new file mode 100644 index 00000000000..7ed6231e3d7 --- /dev/null +++ b/themes/devopsdays-theme/archetypes/welcome.md @@ -0,0 +1,6 @@ ++++ +Description = "" +Title = "" +Type = "welcome" +Aliases = [""] ++++ diff --git a/themes/devopsdays-responsive/layouts/404.html b/themes/devopsdays-theme/layouts/404.html similarity index 100% rename from themes/devopsdays-responsive/layouts/404.html rename to themes/devopsdays-theme/layouts/404.html diff --git a/themes/devopsdays-theme/layouts/_default/baseof.html b/themes/devopsdays-theme/layouts/_default/baseof.html new file mode 100644 index 00000000000..8f102686e77 --- /dev/null +++ b/themes/devopsdays-theme/layouts/_default/baseof.html @@ -0,0 +1,54 @@ + + + + + {{- partial "head.html" . -}} + + + + + {{- partial "global_navbar.html" . -}} + {{ $path := split $.Source.File.Path .Site.Params.PathSeparator }} + {{ if or (eq (index $path 0) "events") (eq .Type "events") }} + {{- partial "events/event_navbar.html" . -}} + {{ end }} +

      + + {{- partial "footer.html" . -}} + {{- partial "footer_scripts.html" . -}} + + + + diff --git a/themes/devopsdays-responsive/layouts/_default/list.html b/themes/devopsdays-theme/layouts/_default/list.html similarity index 100% rename from themes/devopsdays-responsive/layouts/_default/list.html rename to themes/devopsdays-theme/layouts/_default/list.html diff --git a/themes/devopsdays-theme/layouts/_default/single.html b/themes/devopsdays-theme/layouts/_default/single.html new file mode 100644 index 00000000000..bef12d3ffcd --- /dev/null +++ b/themes/devopsdays-theme/layouts/_default/single.html @@ -0,0 +1,6 @@ +{{ define "main" }} +

      {{ .Title }}

      + {{ .Content }} +
      + +{{ end }} diff --git a/themes/devopsdays-responsive/layouts/about/single.html b/themes/devopsdays-theme/layouts/about/single.html similarity index 52% rename from themes/devopsdays-responsive/layouts/about/single.html rename to themes/devopsdays-theme/layouts/about/single.html index e42ab222994..042a0982b24 100644 --- a/themes/devopsdays-responsive/layouts/about/single.html +++ b/themes/devopsdays-theme/layouts/about/single.html @@ -1,4 +1,6 @@ -{{ partial "header.html" . }} +{{ define "main" }} + +

      {{ .Title }}

      {{ .Content }} @@ -6,4 +8,4 @@ {{ partial "about.html" . }} -{{ partial "footer.html" . }} +{{ end }} diff --git a/themes/devopsdays-theme/layouts/blog/summary.html b/themes/devopsdays-theme/layouts/blog/summary.html new file mode 100644 index 00000000000..6824e73156a --- /dev/null +++ b/themes/devopsdays-theme/layouts/blog/summary.html @@ -0,0 +1,13 @@ +
      +

      {{ .Title }}

      +
      +{{ if isset .Params "description" }} + {{ if ne .Params.descripton "" }} + {{ .Params.description | markdownify }} + {{ end }} +{{ else }} + {{ .Summary }} +{{ end }} + diff --git a/themes/devopsdays-theme/layouts/event/single.html b/themes/devopsdays-theme/layouts/event/single.html new file mode 100644 index 00000000000..1a1abc32cc1 --- /dev/null +++ b/themes/devopsdays-theme/layouts/event/single.html @@ -0,0 +1,32 @@ +{{ define "main" }} + +{{/* site data query copypasta */}} +{{ $path := split $.Source.File.Path .Site.Params.PathSeparator }} +{{ $event_slug := index $path 1 }} +{{ $e := (index $.Site.Data.events $event_slug) }} +{{/* end site data query */}} + + +
      + +
      + + {{ if eq .File.BaseFileName "welcome"}} + {{- partial "welcome.html" . -}} + {{ else }} +

      devopsdays {{$e.city}} - {{.Title}}

      + {{ .Content }} + {{ end }} +
      + + {{ partial "sponsors.html" . }} + + +
      {{ "" | safeHTML }} + + +
      {{ "" | safeHTML }} + + + +{{ end }} diff --git a/themes/devopsdays-theme/layouts/events/single.html b/themes/devopsdays-theme/layouts/events/single.html new file mode 100644 index 00000000000..1df252193c1 --- /dev/null +++ b/themes/devopsdays-theme/layouts/events/single.html @@ -0,0 +1,65 @@ +{{ define "main" }} + +
      + {{ .Content }} +
      + +
      +
      +

      Future

      +
      +
      + +
      + {{ $.Scratch.Set "close-tag" "false" }} +{{- range sort $.Site.Data.events "startdate" -}} + {{- if .startdate -}} + {{- if ge (dateFormat "2006-01-02" .enddate) (dateFormat "2006-01-02" ($.Now.Format "2006-01-02")) -}} + {{- if ne ($.Scratch.Get "year") (dateFormat "2006" .startdate) -}} + {{- $.Scratch.Set "year" (dateFormat "2006" .startdate) -}} + {{- $.Scratch.Set "year-displayed" "false" -}} + {{- end -}} + {{- if ne ($.Scratch.Get "month") (dateFormat "January" .startdate ) -}} + {{- $.Scratch.Set "month" (dateFormat "January" .startdate ) -}} + {{- $.Scratch.Set "month-displayed" "false" -}} + {{- end -}} + + + {{- if ne ($.Scratch.Get "month-displayed") "true" -}} + {{- if eq ($.Scratch.Get "close-tag") "true"}} +
      + {{ end }} +
      +

      {{ dateFormat "January" .startdate }}

      + {{- $.Scratch.Set "month-displayed" "true" -}} + {{ $.Scratch.Set "close-tag" "true" }} + {{- end -}} + {{- if ne .startdate .enddate }} + + {{ dateFormat "Jan 2" .startdate }} - {{ dateFormat "Jan 2" .enddate }} + {{ .city }} +
      + {{- else -}} + + {{ dateFormat "Jan 2" .startdate }} + {{ .city }} +
      + {{- end -}} + {{- end -}} + {{- end -}} +{{- end -}} +
      +
      +

      TBD

      +{{- range $.Site.Data.events -}} + {{- if not .startdate -}} + {{ .city }}
      + {{- end -}} +{{- end -}} +
      +
      + + +{{ partial "past.html" . }} + +{{ end }} diff --git a/themes/devopsdays-theme/layouts/index.html b/themes/devopsdays-theme/layouts/index.html new file mode 100644 index 00000000000..91c73e26254 --- /dev/null +++ b/themes/devopsdays-theme/layouts/index.html @@ -0,0 +1,52 @@ +{{ define "main" }} + +
      +
      +
      +
      +
      +
      +
      + + {{ $.Scratch.Add "i" 1 }} +
      + {{- range sort $.Site.Data.events "startdate" -}} + {{- if .startdate -}} + {{- if ge (dateFormat "2006-01-02" .enddate) (dateFormat "2006-01-02" ($.Now.Format "2006-01-02")) -}} + {{ $.Scratch.Set "city" .city }} + {{ $.Scratch.Set "year" .year }} + {{ $.Scratch.Set "logo" "unset" }} +
      + {{ $.Scratch.Set "subdir" .name }} + {{ $.Scratch.Set "contentdir" (printf "static/events/%s/" ($.Scratch.Get "subdir")) }} + {{ if (where (readDir "static/events") "Name" ($.Scratch.Get "subdir"))}} + {{if (where (readDir ($.Scratch.Get "contentdir")) "Name" "logo-square.jpg") }} + devopsdays {{ .city }} + {{ $.Scratch.Set "logo" "set" }} + {{ end }} + {{ end }} + {{ if ne ($.Scratch.Get "logo") "set" }} + devopsdays {{ .city }} + {{- end -}} +
      + + {{- dateFormat "Jan 2" .startdate -}} +  -  + {{- dateFormat "Jan 2, 2006" .enddate -}}
      +
      + + {{ .city }} + +
      + {{- if modBool ($.Scratch.Get "i") 4 -}} +
      +
      + {{- end -}} + {{ $.Scratch.Add "i" 1 }} + {{- end -}} + {{- end -}} + {{- end -}} +
      + + +{{- end -}} diff --git a/themes/devopsdays-theme/layouts/partials/about.html b/themes/devopsdays-theme/layouts/partials/about.html new file mode 100644 index 00000000000..18f7b999f30 --- /dev/null +++ b/themes/devopsdays-theme/layouts/partials/about.html @@ -0,0 +1,40 @@ +{{- range sort $.Site.Data.events "startdate" -}} + {{- if .startdate -}} + {{- if ge (dateFormat "2006-01-02" .enddate) (dateFormat "2006-01-02" ($.Now.Format "2006-01-02")) -}} + {{- if ne ($.Scratch.Get "year") (dateFormat "2006" .startdate) -}} + {{- $.Scratch.Set "year" (dateFormat "2006" .startdate) -}} + {{- $.Scratch.Set "year-displayed" "false" -}} + {{- end -}} + {{- if ne ($.Scratch.Get "month") (dateFormat "January" .startdate ) -}} + {{- $.Scratch.Set "month" (dateFormat "January" .startdate ) -}} + {{- $.Scratch.Set "month-displayed" "false" -}} +
      + {{- end -}} + {{- if ne ($.Scratch.Get "year-displayed") "true" -}} +

      {{ dateFormat "2006" .startdate }}

      + {{- $.Scratch.Set "year-displayed" "true" -}} + {{- end -}} + {{- if ne ($.Scratch.Get "month-displayed") "true" -}} +

      {{ dateFormat "January" .startdate }}

      + {{- $.Scratch.Set "month-displayed" "true" -}} + {{- end -}} + {{- if ne .startdate .enddate }} + + {{ dateFormat "Jan 2" .startdate }} - {{ dateFormat "Jan 2" .enddate }}: + Contact {{ .city }} organizers +
      + {{- else -}} + + {{ dateFormat "Jan 2" .startdate }}: + Contact {{ .city }} organizers +
      + {{- end -}} + {{- end -}} + {{- end -}} +{{- end -}} +

      TBD

      +{{- range $.Site.Data.events -}} + {{- if not .startdate -}} + Contact {{ .city }} organizers
      + {{- end -}} +{{- end -}} diff --git a/themes/devopsdays-responsive/layouts/partials/blog_pagination.html b/themes/devopsdays-theme/layouts/partials/blog_pagination.html similarity index 100% rename from themes/devopsdays-responsive/layouts/partials/blog_pagination.html rename to themes/devopsdays-theme/layouts/partials/blog_pagination.html diff --git a/themes/devopsdays-theme/layouts/partials/events/cta.html b/themes/devopsdays-theme/layouts/partials/events/cta.html new file mode 100644 index 00000000000..e7f1e7b8a7e --- /dev/null +++ b/themes/devopsdays-theme/layouts/partials/events/cta.html @@ -0,0 +1,79 @@ +{{/* site data query copypasta */}} +{{ $path := split $.Source.File.Path .Site.Params.PathSeparator }} +{{ $event_slug := index $path 1 }} +{{ $e := (index $.Site.Data.events $event_slug) }} +{{/* end site data query */}} + + +
      + + + {{ if $e.registration_open }} + {{ if eq $e.registration_open "true" }} + {{ if $e.registration_link }} + {{ if eq $e.registration_link "" }} + {{ $.Scratch.Set "registration_link" (printf "/events/%s/register" $event_slug)}} + {{ else }} + {{ $.Scratch.Set "registration_link" $e.registration_link }} + {{ end }} + {{ else }} + {{ $.Scratch.Set "registration_link" (printf "/events/%s/register" $event_slug)}} + + {{ end }} +
      + Register +
      + {{ end }} + {{ end }} + + + + + + {{ if $e.cfp_open }} + {{ if eq $e.cfp_open "true" }} + {{ if $e.cfp_link }} + {{ if eq $e.cfp_link "" }} + {{ $.Scratch.Set "cfp_link" (printf "/events/%s/propose" $event_slug)}} + {{ else }} + {{ $.Scratch.Set "cfp_link" $e.cfp_link }} + {{ end }} + {{ else }} + {{ $.Scratch.Set "cfp_link" (printf "/events/%s/propose" $event_slug)}} + + {{ end }} +
      + Propose +
      + {{ end }} + {{ end }} + + + + + {{ if $e.event_twitter }} + {{ if ne $e.event.twitter "" }} +
      + Follow +
      + {{ end }} + {{ end }} + + +
      + +
      +
      +
      +
      + +
      diff --git a/themes/devopsdays-theme/layouts/partials/events/event_metadata.html b/themes/devopsdays-theme/layouts/partials/events/event_metadata.html new file mode 100644 index 00000000000..43032d07381 --- /dev/null +++ b/themes/devopsdays-theme/layouts/partials/events/event_metadata.html @@ -0,0 +1,50 @@ +{{ $path := split $.Source.File.Path .Site.Params.PathSeparator }} +{{ $event_slug := index $path 1 }} +{{ $e := (index $.Site.Data.events $event_slug) }} +{{/* end site data query */}} + +{{ $.Scratch.Add "url" $.Site.Params.weburl }} +{{ $.Scratch.Add "url" "/events/"}} +{{ $.Scratch.Add "url" $event_slug }} + + + +{{- if $e.startdate -}} + + + {{ $url := $.Scratch.Get "url" }} + {{ $.Scratch.Add "image_url" $url }} + {{ $.Scratch.Add "image_url" "/logo.png" }} + {{ $image_url := $.Scratch.Get "image_url" }} + +{{- end -}} diff --git a/themes/devopsdays-theme/layouts/partials/events/event_navbar.html b/themes/devopsdays-theme/layouts/partials/events/event_navbar.html new file mode 100644 index 00000000000..77f17b6ac28 --- /dev/null +++ b/themes/devopsdays-theme/layouts/partials/events/event_navbar.html @@ -0,0 +1,70 @@ +{{/* site data query copypasta */}} +{{ $path := split $.Source.File.Path .Site.Params.PathSeparator }} +{{ $event_slug := index $path 1 }} +{{ $e := (index $.Site.Data.events $event_slug) }} +{{/* end site data query */}} + + + + + + diff --git a/themes/devopsdays-theme/layouts/partials/footer.html b/themes/devopsdays-theme/layouts/partials/footer.html new file mode 100644 index 00000000000..5193a94e4e9 --- /dev/null +++ b/themes/devopsdays-theme/layouts/partials/footer.html @@ -0,0 +1,69 @@ + + diff --git a/themes/devopsdays-theme/layouts/partials/footer_scripts.html b/themes/devopsdays-theme/layouts/partials/footer_scripts.html new file mode 100644 index 00000000000..e3fd0227bcb --- /dev/null +++ b/themes/devopsdays-theme/layouts/partials/footer_scripts.html @@ -0,0 +1,68 @@ +{{ if .IsHome }} + {{ partial "map.html" . }} + {{ $.Scratch.Set "twitter_handle" "devopsdays" }} + {{ $.Scratch.Set "sharing_title" "devopsdays" }} +{{ end }} + + +{{ if .IsPage }} + {{ if or (eq .Type "welcome") (eq .Type "event") }} + {{ partial "events/event_metadata.html" . }} + {{ end }} +{{ end }} + + + +{{ if .IsPage }} + + {{ $my_path := split $.Source.File.Path .Site.Params.PathSeparator }} + {{ if eq (index $my_path 0) "events" }} + {{/* site data query copypasta */}} + {{ $path := split $.Source.File.Path .Site.Params.PathSeparator }} + {{ $event_slug := index $path 1 }} + {{ $e := (index $.Site.Data.events $event_slug) }} + {{/* end site data query */}} + {{- if $e.event_twitter -}} + {{- if ne $e.event_twitter "" -}} + {{ $.Scratch.Set "twitter_handle" $e.event_twitter -}} + {{- end -}} + {{- end -}} + {{- if isset .Params "Title" -}} + {{ if ne .Params.Title "" }} + {{- $.Scratch.Set "sharing_title" .Params.Title -}} + {{- end -}} + {{- else -}} + {{ $sharing_title := (printf "devopsdays %s - %s" $e.city $e.year)}} + {{- $.Scratch.Set "sharing_title" $sharing_title -}} + {{- end -}} + {{ else }} + {{ $.Scratch.Set "twitter_handle" "devopsdays" }} + {{- if isset .Params "Title" -}} + {{ if ne .Params.Title "" }} + {{- $.Scratch.Set "sharing_title" .Params.Title -}} + {{- end -}} + {{- else -}} + {{- $.Scratch.Set "sharing_title" "devopsdays" -}} + {{- end -}} + {{ end }} +{{ end }} + + + diff --git a/themes/devopsdays-theme/layouts/partials/future.html b/themes/devopsdays-theme/layouts/partials/future.html new file mode 100644 index 00000000000..7ce86f6876c --- /dev/null +++ b/themes/devopsdays-theme/layouts/partials/future.html @@ -0,0 +1,40 @@ +{{- range sort $.Site.Data.events "startdate" -}} + {{- if .startdate -}} + {{- if ge (dateFormat "2006-01-02" .enddate) (dateFormat "2006-01-02" ($.Now.Format "2006-01-02")) -}} + {{- if ne ($.Scratch.Get "year") (dateFormat "2006" .startdate) -}} + {{- $.Scratch.Set "year" (dateFormat "2006" .startdate) -}} + {{- $.Scratch.Set "year-displayed" "false" -}} + {{- end -}} + {{- if ne ($.Scratch.Get "month") (dateFormat "January" .startdate ) -}} + {{- $.Scratch.Set "month" (dateFormat "January" .startdate ) -}} + {{- $.Scratch.Set "month-displayed" "false" -}} +
      + {{- end -}} + {{- if ne ($.Scratch.Get "year-displayed") "true" -}} +

      {{ dateFormat "2006" .startdate }}

      + {{- $.Scratch.Set "year-displayed" "true" -}} + {{- end -}} + {{- if ne ($.Scratch.Get "month-displayed") "true" -}} +

      {{ dateFormat "January" .startdate }}

      + {{- $.Scratch.Set "month-displayed" "true" -}} + {{- end -}} + {{- if ne .startdate .enddate }} + + {{ dateFormat "Jan 2" .startdate }} - {{ dateFormat "Jan 2" .enddate }} + {{ .city }} +
      + {{- else -}} + + {{ dateFormat "Jan 2" .startdate }} + {{ .city }} +
      + {{- end -}} + {{- end -}} + {{- end -}} +{{- end -}} +

      TBD

      +{{- range $.Site.Data.events -}} + {{- if not .startdate -}} + {{ .city }}
      + {{- end -}} +{{- end -}} diff --git a/themes/devopsdays-theme/layouts/partials/global_navbar.html b/themes/devopsdays-theme/layouts/partials/global_navbar.html new file mode 100644 index 00000000000..f4cc46a3c0f --- /dev/null +++ b/themes/devopsdays-theme/layouts/partials/global_navbar.html @@ -0,0 +1,22 @@ + + + diff --git a/themes/devopsdays-theme/layouts/partials/head.html b/themes/devopsdays-theme/layouts/partials/head.html new file mode 100644 index 00000000000..abb5ba52d44 --- /dev/null +++ b/themes/devopsdays-theme/layouts/partials/head.html @@ -0,0 +1,20 @@ + + +{{ .Hugo.Generator }} +{{ partial "meta.html" . }} +{{ partial "head/seo.html" . }} + + + {{- $url := replace .Permalink ( printf "%s" .Site.BaseURL) "" -}} + {{- if eq $url "/" -}} + {{ .Site.Title }} + {{- else -}} + {{- if .Params.Heading -}} + {{ .Params.Heading }} + {{- else -}} + {{ .Title }} + {{- end -}} + {{- end -}} + + +{{ partial "head_includes.html" . }} diff --git a/themes/devopsdays-theme/layouts/partials/head/seo.html b/themes/devopsdays-theme/layouts/partials/head/seo.html new file mode 100644 index 00000000000..1c128b92a31 --- /dev/null +++ b/themes/devopsdays-theme/layouts/partials/head/seo.html @@ -0,0 +1,2 @@ +{{- partial "head/seo/open_graph.html" . -}} +{{- partial "head/seo/schema.html" . -}} diff --git a/themes/devopsdays-responsive/layouts/partials/head/seo/google_news.html b/themes/devopsdays-theme/layouts/partials/head/seo/google_news.html similarity index 100% rename from themes/devopsdays-responsive/layouts/partials/head/seo/google_news.html rename to themes/devopsdays-theme/layouts/partials/head/seo/google_news.html diff --git a/themes/devopsdays-theme/layouts/partials/head/seo/open_graph.html b/themes/devopsdays-theme/layouts/partials/head/seo/open_graph.html new file mode 100644 index 00000000000..35e001346d5 --- /dev/null +++ b/themes/devopsdays-theme/layouts/partials/head/seo/open_graph.html @@ -0,0 +1,21 @@ + + +{{ if .IsHome }} + +{{ else }} + +{{ end }} + + +{{ if or (eq .Type "welcome") (eq .Type "event") (eq .Type "speaker") (eq .Type "speakers") (eq .Type "talk") (eq .Type "program")}} + {{ $path := split ( .Permalink | relURL) "/" }} + {{ $event_slug := index $path 2 }} + +{{ else }} + +{{- end -}} + + + +{{- with .Params.locale -}}{{- end -}} +{{- with .Site.Params.title -}}{{- end -}} diff --git a/themes/devopsdays-theme/layouts/partials/head/seo/schema.html b/themes/devopsdays-theme/layouts/partials/head/seo/schema.html new file mode 100644 index 00000000000..5322db1ba51 --- /dev/null +++ b/themes/devopsdays-theme/layouts/partials/head/seo/schema.html @@ -0,0 +1,20 @@ + + +{{ if .IsHome }} + +{{ else }} + +{{ end }} + +{{ if or (eq .Type "welcome") (eq .Type "event") (eq .Type "speaker") (eq .Type "speakers") (eq .Type "talk") (eq .Type "program")}} + {{ $path := split ( .Permalink | relURL) "/" }} + {{ $event_slug := index $path 2 }} + +{{ else }} + +{{ end }} + + +{{ if .IsPage }} + +{{ end }} diff --git a/themes/devopsdays-responsive/layouts/partials/head/seo/twitter_cards.html b/themes/devopsdays-theme/layouts/partials/head/seo/twitter_cards.html similarity index 100% rename from themes/devopsdays-responsive/layouts/partials/head/seo/twitter_cards.html rename to themes/devopsdays-theme/layouts/partials/head/seo/twitter_cards.html diff --git a/themes/devopsdays-theme/layouts/partials/head_includes.html b/themes/devopsdays-theme/layouts/partials/head_includes.html new file mode 100644 index 00000000000..5e6ed0431cd --- /dev/null +++ b/themes/devopsdays-theme/layouts/partials/head_includes.html @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + + + +{{ if .IsPage }} + {{ if eq .Type "blog" }} + + + {{ else }} + {{ if eq .Type "speaking" }} + + + {{ else }} + + + {{ end }} + {{ end }} +{{ else }} + + +{{ end }} + + + +{{ template "_internal/google_analytics_async.html" . }} diff --git a/themes/devopsdays-responsive/layouts/partials/map.html b/themes/devopsdays-theme/layouts/partials/map.html similarity index 79% rename from themes/devopsdays-responsive/layouts/partials/map.html rename to themes/devopsdays-theme/layouts/partials/map.html index 1861e359e61..a8913d57dd5 100644 --- a/themes/devopsdays-responsive/layouts/partials/map.html +++ b/themes/devopsdays-theme/layouts/partials/map.html @@ -5,7 +5,8 @@ - http://code.google.com/apis/maps/documentation/javascript/maptypes.html#StyledMaps - http://google-maps-utility-library-v3.googlecode.com/svn/tags/markerwithlabel/1.1/examples/basic.html --> - + + - - -
      -
      -
      + diff --git a/themes/devopsdays-responsive/layouts/partials/meta.html b/themes/devopsdays-theme/layouts/partials/meta.html similarity index 63% rename from themes/devopsdays-responsive/layouts/partials/meta.html rename to themes/devopsdays-theme/layouts/partials/meta.html index 5e63decdde9..9e984eca485 100644 --- a/themes/devopsdays-responsive/layouts/partials/meta.html +++ b/themes/devopsdays-theme/layouts/partials/meta.html @@ -2,5 +2,5 @@ - -{{ if .Site.Params.Description }}{{ end }} + +{{- if .Site.Params.Description -}}{{- end -}} diff --git a/themes/devopsdays-responsive/layouts/partials/past.html b/themes/devopsdays-theme/layouts/partials/past.html similarity index 78% rename from themes/devopsdays-responsive/layouts/partials/past.html rename to themes/devopsdays-theme/layouts/partials/past.html index 69e5f2f5dac..be91f04c853 100644 --- a/themes/devopsdays-responsive/layouts/partials/past.html +++ b/themes/devopsdays-theme/layouts/partials/past.html @@ -10,10 +10,10 @@ {{ $r_year := . }} {{ range $.Site.Data.events }} {{ if .startdate }} - {{ $my_year := string ((dateFormat "2006" .startdate ))}} - {{ if and (eq $my_year (string $r_year)) ( lt (dateFormat "2006-01-02" .startdate) (dateFormat "2006-01-02" ($.Now.Format "2006-01-02"))) }} + {{ $my_year := string ((dateFormat "2006" .enddate ))}} + {{ if and (eq $my_year (string $r_year)) ( lt (dateFormat "2006-01-02" .enddate) (dateFormat "2006-01-02" ($.Now.Format "2006-01-02"))) }} {{ $.Scratch.SetInMap "active_years" (print (chomp $my_year)) (print (chomp $my_year)) }} - {{ $.Scratch.SetInMap (print (chomp $my_year)) .startdate (.name) }} + {{ $.Scratch.SetInMap (print (chomp $my_year)) .enddate (.name) }} {{ end }} {{ end }} {{ end }} @@ -27,15 +27,15 @@

      Past

      {{ range ($.Scratch.GetSortedMapValues "active_years") }} -
      - {{ . }} +
      +

      {{ . }}


      {{ range ($.Scratch.GetSortedMapValues (print (chomp .))) }} {{ $.Scratch.Set "citydisplay" (index $.Site.Data.events . "city") }} {{ $friendly := (index $.Site.Data.events . "name") }} - {{ $.Scratch.Get "citydisplay" }} + {{ $.Scratch.Get "citydisplay" }}
      {{ end }}
      diff --git a/themes/devopsdays-theme/layouts/partials/search_modal.html b/themes/devopsdays-theme/layouts/partials/search_modal.html new file mode 100644 index 00000000000..93d06cdbc00 --- /dev/null +++ b/themes/devopsdays-theme/layouts/partials/search_modal.html @@ -0,0 +1,52 @@ + + diff --git a/themes/devopsdays-responsive/layouts/partials/cfp.html b/themes/devopsdays-theme/layouts/partials/speaking.html similarity index 94% rename from themes/devopsdays-responsive/layouts/partials/cfp.html rename to themes/devopsdays-theme/layouts/partials/speaking.html index b6d98650ef3..3df0649cdda 100644 --- a/themes/devopsdays-responsive/layouts/partials/cfp.html +++ b/themes/devopsdays-theme/layouts/partials/speaking.html @@ -9,7 +9,7 @@ {{ if ge (dateFormat "2006-01-02" .cfp_date_end) (dateFormat "2006-01-02" ($.Now.Format "2006-01-02")) }} {{ $.Scratch.Add "events" "" }} + {{ $.Scratch.Add "events" "/' class = 'speaking'>" }} {{ $.Scratch.Add "events" .city }} {{ $.Scratch.Add "events" "  " }} {{ $.Scratch.Add "events" .cfp_date_end}} @@ -24,3 +24,4 @@ {{ $.Scratch.Get "events" | safeHTML}} + diff --git a/themes/devopsdays-theme/layouts/partials/sponsors.html b/themes/devopsdays-theme/layouts/partials/sponsors.html new file mode 100644 index 00000000000..2df67a627c7 --- /dev/null +++ b/themes/devopsdays-theme/layouts/partials/sponsors.html @@ -0,0 +1,43 @@ +{{ $path := split $.Source.File.Path .Site.Params.PathSeparator }} +{{ $event_slug := index $path 1 }} +{{ $e := (index $.Site.Data.events $event_slug) }} + + {{- if $e.sponsor_levels -}} + {{- range $index, $level := $e.sponsor_levels -}} + {{ $.Scratch.Set $level.id 0 }} + +
      + +
      + + {{- if ( $e.startdate) or (ge (dateFormat "2006-01-02" $e.startdate) (dateFormat "2006-01-02" ($.Now.Format "2006-01-02"))) -}} + {{- if ne $e.sponsors_accepted "no" -}} + {{- if or (not $level.max) (lt ($.Scratch.Get $level.id) $level.max) -}} + + {{ $.Scratch.Add $level.id 1 }} + {{- end -}} + {{- end -}} + {{- end -}} +
      {{ "" | safeHTML}} +
      {{ "" | safeHTML}} + {{- if $e.sponsors -}} + {{ "" | safeHTML}} + + + {{- end -}} +{{- end -}} +{{- end -}} +
      diff --git a/themes/devopsdays-theme/layouts/partials/welcome.html b/themes/devopsdays-theme/layouts/partials/welcome.html new file mode 100644 index 00000000000..85578fb14bb --- /dev/null +++ b/themes/devopsdays-theme/layouts/partials/welcome.html @@ -0,0 +1,70 @@ +{{/* site data query copypasta */}} +{{ $path := split $.Source.File.Path .Site.Params.PathSeparator }} +{{ $event_slug := index $path 1 }} +{{ $e := (index $.Site.Data.events $event_slug) }} +{{/* end site data query */}} + +
      +
      + + +
      +
      +

      devopsdays {{$e.city}}

      + + {{ if $e.startdate }} + {{- if ne $e.startdate $e.enddate }} + {{- dateFormat "January 2" $e.startdate -}} - {{- dateFormat "2, 2006" $e.enddate -}} + {{- else }} + {{- dateFormat "January 2" $e.startdate -}} + {{- end }} + {{ end }} + +
      + + {{if $e.location }} + {{- $e.location -}} +
      + {{ if $e.location_address }} + {{ $e.location_address }} +
      + {{ end }} + {{ end }} + + {{ if $e.description }} + {{ $e.description | markdownify }} +

      + {{ end }} + + {{if $e.city }} + {{- $.Scratch.Set "past-counter" 0 -}} + {{- range sort $.Site.Data.events "startdate" -}} + {{- if .startdate -}} + {{- if eq (lower .city) (lower $e.city) -}} + {{- if and (ne .startdate $e.startdate) (ne ($.Scratch.Get "past-counter") 1 ) -}} + Past {{ $e.city }} Events
      + {{- $.Scratch.Set "past-counter" 1 -}} + {{- end -}} + {{- if eq (lower .city) (lower $e.city)}} + {{- if ne .startdate $e.startdate -}} + {{ dateFormat "2006" .startdate }}    + {{- end -}} + {{- end -}} + {{- end -}} + {{- end -}} + {{- end -}} +

      + {{ end }} +
      + +
      + {{ partial "events/cta.html" . }} +
      +
      +
      +
      +
      +
      + {{ .Content }} +
      +
      diff --git a/themes/devopsdays-theme/layouts/program/single.html b/themes/devopsdays-theme/layouts/program/single.html new file mode 100644 index 00000000000..e16ea5e3286 --- /dev/null +++ b/themes/devopsdays-theme/layouts/program/single.html @@ -0,0 +1,249 @@ +{{ define "main" }} + +

      Program

      + +{{ $path := split $.Source.File.Path .Site.Params.PathSeparator }} +{{ $event_slug := index $path 1 }} +{{ $e := (index $.Site.Data.events $event_slug) }} + + +
      + +
      + + +{{- range where $.Site.Pages "Type" "talk" -}} + {{- $talk_path := split .File.Path .Site.Params.PathSeparator -}} + {{- $talk_slug := index $talk_path 1 -}} + {{- if eq $talk_slug $event_slug -}} + {{- $.Scratch.Set "base_file_name" .File.BaseFileName }} + {{- $.Scratch.Set .File.BaseFileName .Title -}} + {{ if isset .Params "speakers" }} + {{ if ne .Params.speakers ""}} + {{ $.Scratch.Set "speaker_len" (.Params.speakers | len) }} + {{ $.Scratch.Set "speaker_count" 0 }} + {{ end }} + {{ end }} + {{- range .Params.speakers -}} + {{ $.Scratch.Set "speaker_count" (add ($.Scratch.Get "speaker_count") 1)}} + {{ $.Scratch.Set "speakername" . }} + {{- range where $.Site.Pages "Type" "speaker" -}} + {{- $speaker_path := split .File.Path .Site.Params.PathSeparator -}} + {{- $speaker_slug := index $speaker_path 1 -}} + {{- if eq $speaker_slug $event_slug -}} + {{ if eq .File.BaseFileName ($.Scratch.Get "speakername") }} + {{- $.Scratch.Add (printf "%s-speaker" ($.Scratch.Get "base_file_name")) .Title -}} + {{- if ne ($.Scratch.Get "speaker_count") ($.Scratch.Get "speaker_len") -}} + {{- $.Scratch.Add (printf "%s-speaker" ($.Scratch.Get "base_file_name")) ", " -}} + {{- end -}} + {{ end }} + {{- end -}} + {{- end -}} + {{- end -}} + + {{- end -}} +{{- end -}} + + +
      + +
      + + +
      +
      +
      +
      + {{ with $e }} + {{ if .program }} + {{ $program := (where .program "date" $e.startdate) }} + {{ $program_len := (len $program) }} + {{- $.Scratch.Set "program_len" $program_len -}} + {{- $.Scratch.Set "program_counter" 0 -}} + {{- range where .program "date" $e.startdate -}} + {{- $.Scratch.Set "program_counter" (add ($.Scratch.Get "program_counter") 1) }} +
      +
      + {{ .start_time }} - {{ .end_time }} +
      +
      + {{ if eq .type "custom" }} + {{ .title }}
      + {{ if .comments }} + {{ .comments | markdownify }}
      + {{ end }} + {{ else }} + + {{ $.Scratch.Get (printf "%s-speaker" .title) }} - + {{ $.Scratch.Get .title }} +
      + {{ end }} +
      +
      + {{- if eq (div ($.Scratch.Get "program_len") 2) ($.Scratch.Get "program_counter") }} +
      +
      + {{- end -}} + {{ end }} + {{ end }} + {{ end }} +
      +
      +
      + +
      +
      + + {{ if ne $e.startdate $e.enddate}} +
      + + +
      +
      +
      +
      + {{ with $e }} + {{ if .program }} + {{ $program := (where .program "date" $e.enddate) }} + {{ $program_len := (len $program) }} + {{- $.Scratch.Set "program_len" $program_len -}} + {{- $.Scratch.Set "program_counter" 0 -}} + {{- range where .program "date" $e.enddate -}} + {{- $.Scratch.Set "program_counter" (add ($.Scratch.Get "program_counter") 1) }} +
      +
      + {{ .start_time }} - {{ .end_time }} +
      +
      + {{ if eq .type "custom" }} + {{ .title }}
      + {{ else }} + + {{ $.Scratch.Get (printf "%s-speaker" .title) }} - + {{ $.Scratch.Get .title }} +
      + {{ end }} +
      +
      + {{- if eq (div ($.Scratch.Get "program_len") 2) ($.Scratch.Get "program_counter") }} +
      +
      + {{- end -}} + {{ end }} + {{ end }} + {{ end }} +
      +
      +
      + +
      +
      + +
      +
      +
      + +{{ end }} + + +{{ with $e }} + {{ if .ignites }} +
      +
      +

      Ignite Sessions

      +
      +
      +
      +
      +

      {{- dateFormat "January 2, 2006" $e.startdate -}}

      +
      +
      +
        + {{ $ignites := (where .ignites "date" $e.startdate) }} + {{ $ignites_len := (len $ignites) }} + {{- $.Scratch.Set "ignites_len" $ignites_len -}} + {{- $.Scratch.Set "ignites_counter" 0 -}} + {{- range where .ignites "date" $e.startdate -}} + {{- $.Scratch.Set "ignites_counter" (add ($.Scratch.Get "ignites_counter") 1) }} + + {{ if ($.Scratch.Get .title) }} +
      • + {{ $.Scratch.Get (printf "%s-speaker" .title) }} - + {{ $.Scratch.Get .title }} +
      • + {{ else }} +
      • + {{.title}} +
      • + {{ end }} + {{- end -}} +
      +
      +
      + {{- if eq (div ($.Scratch.Get "ignites_len") 2) ($.Scratch.Get "ignites_counter") }} +
      +
      + {{- end -}} +
      + + + + {{ if ne $e.startdate $e.enddate}} +
      +

      {{- dateFormat "January 2, 2006" $e.enddate -}}

      +
      +
      +
        + {{ $ignites := (where .ignites "date" $e.enddate) }} + {{ $ignites_len := (len $ignites) }} + {{- $.Scratch.Set "ignites_len" $ignites_len -}} + {{- $.Scratch.Set "ignites_counter" 0 -}} + {{- range where .ignites "date" $e.enddate -}} + {{- $.Scratch.Set "ignites_counter" (add ($.Scratch.Get "ignites_counter") 1) }} + + {{ if ($.Scratch.Get .title) }} +
      • + {{ $.Scratch.Get (printf "%s-speaker" .title) }} - + {{ $.Scratch.Get .title }} +
      • + {{ else }} +
      • + {{.title}} +
      • + {{- end -}} + {{- end -}} +
      +
      +
      + {{- if eq (div ($.Scratch.Get "ignites_len") 2) ($.Scratch.Get "ignites_counter") }} +
      +
      + {{- end -}} +
      + {{ end }} + +
      + + + {{- end -}} +{{- end -}} + +
      {{ "" | safeHTML }} + + +
      {{ "" | safeHTML }} + + +{{ end }} diff --git a/themes/devopsdays-responsive/layouts/section/blog.html b/themes/devopsdays-theme/layouts/section/blog.html similarity index 79% rename from themes/devopsdays-responsive/layouts/section/blog.html rename to themes/devopsdays-theme/layouts/section/blog.html index bc24adb241d..f1b6371f3a5 100644 --- a/themes/devopsdays-responsive/layouts/section/blog.html +++ b/themes/devopsdays-theme/layouts/section/blog.html @@ -1,4 +1,4 @@ -{{ partial "header.html" . }} +{{ define "main" }}
      @@ -12,5 +12,4 @@

      Blog Posts

      - -{{ partial "footer.html" . }} +{{ end }} diff --git a/themes/devopsdays-theme/layouts/section/blog.rss.xml b/themes/devopsdays-theme/layouts/section/blog.rss.xml new file mode 100644 index 00000000000..759b9c67f4e --- /dev/null +++ b/themes/devopsdays-theme/layouts/section/blog.rss.xml @@ -0,0 +1,24 @@ + + + {{ if eq .Title .Site.Title }}{{ .Site.Title }}{{ else }}{{ with .Title }}{{.}} on {{ end }}{{ .Site.Title }}{{ end }} + {{ $.Site.Params.weburl }}{{ .Permalink | relURL }} + Recent blogs {{ if ne .Title .Site.Title }}{{ with .Title }}in {{.}} {{ end }}{{ end }}on {{ .Site.Title }} + Hugo -- gohugo.io{{ with .Site.LanguageCode }} + {{.}}{{end}}{{ with .Site.Author.email }} + {{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}{{end}}{{ with .Site.Author.email }} + {{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}{{end}}{{ with .Site.Copyright }} + {{.}}{{end}}{{ if not .Date.IsZero }} + {{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}{{ end }} + + {{ range .Data.Pages }} + + {{ .Title }} + {{ $.Site.Params.weburl }}{{ .Permalink | relURL }} + {{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }} + {{ with .Site.Author.email }}{{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}{{end}} + {{ $.Site.Params.weburl }}{{ .Permalink | relURL }} + {{ .Summary | htmlEscape }} + + {{ end }} + + diff --git a/themes/devopsdays-theme/layouts/section/events.rss.xml b/themes/devopsdays-theme/layouts/section/events.rss.xml new file mode 100644 index 00000000000..17a1b3550fc --- /dev/null +++ b/themes/devopsdays-theme/layouts/section/events.rss.xml @@ -0,0 +1,46 @@ + + +Upcoming devopsdays events + +{{ $.Site.Params.weburl }} + Upcoming devopsdays events +{{ dateFormat "Mon, 2 Jan 2006 15:04:05 -0700" .Now }} +hourly +1 +en-us +Copyright 2016-2017 devopsdays +Hugo -- gohugo.io +{{- range sort $.Site.Data.events "startdate" -}} + {{- if .startdate -}} + {{- if ge (dateFormat "2006-01-02" .enddate) (dateFormat "2006-01-02" ($.Now.Format "2006-01-02")) -}} + + devopsdays {{ .city }} {{ .year }} + {{ $.Site.Params.weburl }}/events/{{ .name}} + {{ $.Site.Params.weburl }}/events/{{ .name}} + {{ dateFormat "Mon, 2 Jan 2006 15:04:05 -0700" $.Now }} + {{ if .description }} + {{.description | markdownify | htmlEscape}} + {{ else }} + {{ if eq .startdate .enddate }} + devopsdays {{ .city }} {{ .year }} will be taking place {{ dateFormat "Mon, 2 Jan 2006" .startdate }}. + {{ else }} + devopsdays {{ .city }} {{ .year }} will be taking place {{ dateFormat "Mon, 2 Jan 2006" .startdate }} through {{ dateFormat "Mon, 2 Jan 2006" .enddate }}. + {{ end }} + {{ end }} + + {{ end }} + {{ end }} +{{ end }} + + + + + diff --git a/themes/devopsdays-theme/layouts/section/speaking.rss.xml b/themes/devopsdays-theme/layouts/section/speaking.rss.xml new file mode 100644 index 00000000000..16d2516129f --- /dev/null +++ b/themes/devopsdays-theme/layouts/section/speaking.rss.xml @@ -0,0 +1,51 @@ + + +devopsdays events with open CFP's + +{{ $.Site.Params.weburl }} + devopsdays events with open CFP's +{{ dateFormat "Mon, 2 Jan 2006 15:04:05 -0700" .Now }} +hourly +1 +en-us +Copyright 2016-2017 devopsdays +Hugo -- gohugo.io +{{- range sort $.Site.Data.events "startdate" -}} + {{- if .startdate -}} + {{- if ge (dateFormat "2006-01-02" .enddate) (dateFormat "2006-01-02" ($.Now.Format "2006-01-02")) -}} + {{ if .cfp_date_end }} + {{ if ge (dateFormat "2006-01-02" .cfp_date_end) (dateFormat "2006-01-02" ($.Now.Format "2006-01-02")) }} + + devopsdays {{ .city }} {{ .year }} + {{ $.Site.Params.weburl }}/events/{{ .name}} + {{ $.Site.Params.weburl }}/events/{{ .name}} + {{ dateFormat "Mon, 2 Jan 2006 15:04:05 -0700" $.Now }} + {{ if .description }} + {{.description }} + {{ else }} + {{ if eq .startdate .enddate }} + devopsdays {{ .city }} {{ .year }} will be taking place {{ dateFormat "Mon, 2 Jan 2006" .startdate }}. + {{ else }} + devopsdays {{ .city }} {{ .year }} will be taking place {{ dateFormat "Mon, 2 Jan 2006" .startdate }} through {{ dateFormat "Mon, 2 Jan 2006" .enddate }}. + {{ end }} + {{ end }} + + + {{ end }} + {{ end }} + {{ end }} + {{ end }} +{{ end }} + + + + + diff --git a/themes/devopsdays-responsive/layouts/shortcodes/cfp_dates.html b/themes/devopsdays-theme/layouts/shortcodes/cfp_dates.html similarity index 91% rename from themes/devopsdays-responsive/layouts/shortcodes/cfp_dates.html rename to themes/devopsdays-theme/layouts/shortcodes/cfp_dates.html index c3235637c0d..2f387109073 100644 --- a/themes/devopsdays-responsive/layouts/shortcodes/cfp_dates.html +++ b/themes/devopsdays-theme/layouts/shortcodes/cfp_dates.html @@ -1,4 +1,4 @@ -{{ $path := split .Page.Source.File.Path .Site.Params.PathSeperator }} +{{ $path := split .Page.Source.File.Path .Site.Params.PathSeparator }} {{ $event_slug := index $path 1 }} {{ $e := (index .Page.Site.Data.events $event_slug) }} diff --git a/themes/devopsdays-responsive/layouts/shortcodes/email_organizers.html b/themes/devopsdays-theme/layouts/shortcodes/email_organizers.html similarity index 75% rename from themes/devopsdays-responsive/layouts/shortcodes/email_organizers.html rename to themes/devopsdays-theme/layouts/shortcodes/email_organizers.html index 7fc933866e5..13904a14e48 100644 --- a/themes/devopsdays-responsive/layouts/shortcodes/email_organizers.html +++ b/themes/devopsdays-theme/layouts/shortcodes/email_organizers.html @@ -1,4 +1,4 @@ -{{ $path := split .Page.Source.File.Path .Site.Params.PathSeperator }} +{{ $path := split .Page.Source.File.Path .Site.Params.PathSeparator }} {{ $event_slug := index $path 1 }} {{ $e := (index .Page.Site.Data.events $event_slug) }} {{ $e.organizer_email }} diff --git a/themes/devopsdays-responsive/layouts/shortcodes/email_proposals.html b/themes/devopsdays-theme/layouts/shortcodes/email_proposals.html similarity index 75% rename from themes/devopsdays-responsive/layouts/shortcodes/email_proposals.html rename to themes/devopsdays-theme/layouts/shortcodes/email_proposals.html index 1691e05c777..0ffadf1fe19 100644 --- a/themes/devopsdays-responsive/layouts/shortcodes/email_proposals.html +++ b/themes/devopsdays-theme/layouts/shortcodes/email_proposals.html @@ -1,4 +1,4 @@ -{{ $path := split .Page.Source.File.Path .Site.Params.PathSeperator }} +{{ $path := split .Page.Source.File.Path .Site.Params.PathSeparator }} {{ $event_slug := index $path 1 }} {{ $e := (index .Page.Site.Data.events $event_slug) }} diff --git a/themes/devopsdays-responsive/layouts/shortcodes/event_end.html b/themes/devopsdays-theme/layouts/shortcodes/event_end.html similarity index 79% rename from themes/devopsdays-responsive/layouts/shortcodes/event_end.html rename to themes/devopsdays-theme/layouts/shortcodes/event_end.html index 7130d6901b9..33f29d0de57 100644 --- a/themes/devopsdays-responsive/layouts/shortcodes/event_end.html +++ b/themes/devopsdays-theme/layouts/shortcodes/event_end.html @@ -1,4 +1,4 @@ -{{ $path := split .Page.Source.File.Path .Site.Params.PathSeperator }} +{{ $path := split .Page.Source.File.Path .Site.Params.PathSeparator }} {{ $event_slug := index $path 1 }} {{ $e := (index .Page.Site.Data.events $event_slug) }} {{ $enddate := $e.enddate}} diff --git a/themes/devopsdays-responsive/layouts/shortcodes/event_link.html b/themes/devopsdays-theme/layouts/shortcodes/event_link.html similarity index 65% rename from themes/devopsdays-responsive/layouts/shortcodes/event_link.html rename to themes/devopsdays-theme/layouts/shortcodes/event_link.html index a8e408f5508..bbd32d06b0f 100644 --- a/themes/devopsdays-responsive/layouts/shortcodes/event_link.html +++ b/themes/devopsdays-theme/layouts/shortcodes/event_link.html @@ -1,4 +1,4 @@ -{{ $path := split .Page.Source.File.Path .Site.Params.PathSeperator }} +{{ $path := split .Page.Source.File.Path .Site.Params.PathSeparator }} {{ $event_slug := index $path 1 }} {{ .Get "text" }} diff --git a/themes/devopsdays-responsive/layouts/shortcodes/event_location.html b/themes/devopsdays-theme/layouts/shortcodes/event_location.html similarity index 72% rename from themes/devopsdays-responsive/layouts/shortcodes/event_location.html rename to themes/devopsdays-theme/layouts/shortcodes/event_location.html index cae54929d13..6e53fd8bcd8 100644 --- a/themes/devopsdays-responsive/layouts/shortcodes/event_location.html +++ b/themes/devopsdays-theme/layouts/shortcodes/event_location.html @@ -1,4 +1,4 @@ -{{ $path := split .Page.Source.File.Path .Site.Params.PathSeperator }} +{{ $path := split .Page.Source.File.Path .Site.Params.PathSeparator }} {{ $event_slug := index $path 1 }} {{ $e := (index .Page.Site.Data.events $event_slug) }} {{ $e.location }} diff --git a/themes/devopsdays-theme/layouts/shortcodes/event_logo.html b/themes/devopsdays-theme/layouts/shortcodes/event_logo.html new file mode 100644 index 00000000000..f6896f1406a --- /dev/null +++ b/themes/devopsdays-theme/layouts/shortcodes/event_logo.html @@ -0,0 +1,5 @@ +{{ $path := split .Page.Source.File.Path .Site.Params.PathSeparator }} +{{ $event_slug := index $path 1 }} +{{ $e := (index .Page.Site.Data.events $event_slug) }} + + diff --git a/themes/devopsdays-responsive/layouts/shortcodes/event_map.html b/themes/devopsdays-theme/layouts/shortcodes/event_map.html similarity index 72% rename from themes/devopsdays-responsive/layouts/shortcodes/event_map.html rename to themes/devopsdays-theme/layouts/shortcodes/event_map.html index 38c54163d81..64a6c151e12 100644 --- a/themes/devopsdays-responsive/layouts/shortcodes/event_map.html +++ b/themes/devopsdays-theme/layouts/shortcodes/event_map.html @@ -1,4 +1,4 @@ -{{ $path := split .Page.Source.File.Path .Site.Params.PathSeperator }} +{{ $path := split .Page.Source.File.Path .Site.Params.PathSeparator }} {{ $event_slug := index $path 1 }} {{ $e := (index .Page.Site.Data.events $event_slug) }} @@ -6,14 +6,18 @@ {{ $lat := index $coords 0 }} {{ $lng := index $coords 1 }} - +lat is {{ $lat }} +long is {{ $lng }} + + +
      diff --git a/themes/devopsdays-responsive/layouts/shortcodes/event_start.html b/themes/devopsdays-theme/layouts/shortcodes/event_start.html similarity index 80% rename from themes/devopsdays-responsive/layouts/shortcodes/event_start.html rename to themes/devopsdays-theme/layouts/shortcodes/event_start.html index 6bba70af799..49232909f76 100644 --- a/themes/devopsdays-responsive/layouts/shortcodes/event_start.html +++ b/themes/devopsdays-theme/layouts/shortcodes/event_start.html @@ -1,4 +1,4 @@ -{{ $path := split .Page.Source.File.Path .Site.Params.PathSeperator }} +{{ $path := split .Page.Source.File.Path .Site.Params.PathSeparator }} {{ $event_slug := index $path 1 }} {{ $e := (index .Page.Site.Data.events $event_slug) }} {{ $startdate := $e.startdate}} diff --git a/themes/devopsdays-theme/layouts/shortcodes/event_twitter.html b/themes/devopsdays-theme/layouts/shortcodes/event_twitter.html new file mode 100644 index 00000000000..6e35762c8b7 --- /dev/null +++ b/themes/devopsdays-theme/layouts/shortcodes/event_twitter.html @@ -0,0 +1,6 @@ +{{ $path := split .Page.Source.File.Path .Site.Params.PathSeparator }} +{{ $event_slug := index $path 1 }} +{{ $e := (index .Page.Site.Data.events $event_slug) }} + + + diff --git a/themes/devopsdays-responsive/layouts/shortcodes/list_core.html b/themes/devopsdays-theme/layouts/shortcodes/list_core.html similarity index 100% rename from themes/devopsdays-responsive/layouts/shortcodes/list_core.html rename to themes/devopsdays-theme/layouts/shortcodes/list_core.html diff --git a/themes/devopsdays-theme/layouts/shortcodes/list_organizers.html b/themes/devopsdays-theme/layouts/shortcodes/list_organizers.html new file mode 100644 index 00000000000..049c5681403 --- /dev/null +++ b/themes/devopsdays-theme/layouts/shortcodes/list_organizers.html @@ -0,0 +1,68 @@ +{{ $path := split .Page.Source.File.Path .Site.Params.PathSeparator }} +{{ $event_slug := index $path 1 }} +{{ $e := (index .Page.Site.Data.events $event_slug) }} + + {{ if $e.team_members }} + + +
      + + + {{ range $e.team_members }} +
      +
      +

      {{ .name }}

      + {{ if .image }} + Card image cap + {{ end }} +
      + {{ if .employer }} +
      {{ .employer }}
      + {{ end }} +

      + {{ if .bio }} + {{ .bio | markdownify }} + {{ end }} +

      + {{ if .twitter }} + {{ $twitter := replace .twitter "@" "" }} +   + {{ end }} + {{- if .website -}} +   + {{- end -}} + {{- if .facebook -}} +   + {{- end -}} + {{- if .linkedin -}} +   + {{- end -}} + {{- if .github -}} +   + {{- end -}} +
      +
      +
      + {{ end }} + +
      + + {{ else }} +
        + + {{ range $event_organizers := $e.team }} +
      • {{ $event_organizers }}
      • + {{ end }} + {{ end }} +
      + + diff --git a/themes/devopsdays-responsive/layouts/shortcodes/privacy_policy.html b/themes/devopsdays-theme/layouts/shortcodes/privacy_policy.html similarity index 100% rename from themes/devopsdays-responsive/layouts/shortcodes/privacy_policy.html rename to themes/devopsdays-theme/layouts/shortcodes/privacy_policy.html diff --git a/themes/devopsdays-responsive/layouts/shortcodes/program_entry.html b/themes/devopsdays-theme/layouts/shortcodes/program_entry.html similarity index 90% rename from themes/devopsdays-responsive/layouts/shortcodes/program_entry.html rename to themes/devopsdays-theme/layouts/shortcodes/program_entry.html index 829ba665f56..4e877a01772 100644 --- a/themes/devopsdays-responsive/layouts/shortcodes/program_entry.html +++ b/themes/devopsdays-theme/layouts/shortcodes/program_entry.html @@ -1,5 +1,5 @@ -{{ $path := split .Page.Source.File.Path .Site.Params.PathSeperator }} +{{ $path := split .Page.Source.File.Path .Site.Params.PathSeparator }} {{ $event_slug := index $path 1 }} {{ $e := (index $.Site.Data.events $event_slug) }} {{ $city_slug := substr $e.name 5 }} diff --git a/themes/devopsdays-responsive/layouts/shortcodes/program_link.html b/themes/devopsdays-theme/layouts/shortcodes/program_link.html similarity index 100% rename from themes/devopsdays-responsive/layouts/shortcodes/program_link.html rename to themes/devopsdays-theme/layouts/shortcodes/program_link.html diff --git a/themes/devopsdays-theme/layouts/speaker/single.html b/themes/devopsdays-theme/layouts/speaker/single.html new file mode 100644 index 00000000000..e49ae160028 --- /dev/null +++ b/themes/devopsdays-theme/layouts/speaker/single.html @@ -0,0 +1,96 @@ +{{ define "main" }} + +{{ $path := split $.Source.File.Path .Site.Params.PathSeparator }} +{{ $event_slug := index $path 1 }} +{{ $e := (index $.Site.Data.events $event_slug) }} +{{ $city_slug := substr $e.name 5 }} + +
      +
      +

      {{ .Title }}

      +
      +
      +
      +
      + + {{ .Content }} + {{- if isset .Params "pronouns" -}} + {{- if ne .Params.pronouns "" -}} + My pronouns are {{ .Params.pronouns }}
      + {{- end -}} + {{- end -}} + {{- if isset .Params "twitter" -}} + {{- if ne .Params.twitter "" -}} +   + {{- end -}} + {{- end -}} + {{- if isset .Params "website" -}} + {{- if ne .Params.website "" -}} +   + {{- end -}} + {{- end -}} + {{- if isset .Params "facebook" -}} + {{- if ne .Params.facebook "" -}} +   + {{- end -}} + {{- end -}} + {{- if isset .Params "linkedin" -}} + {{- if ne .Params.linkedin "" -}} +   + {{- end -}} + {{- end -}} + {{- if isset .Params "github" -}} + {{- if ne .Params.github "" -}} +   + {{- end -}} + {{- end -}} +
      + +
      + + +

      Talks by {{ .Title }}

      +
        + {{ $.Scratch.Set "speaker" .File.BaseFileName }} + {{- range where $.Site.Pages "Type" "talk" -}} + {{- $talk_path := split .File.Path .Site.Params.PathSeparator -}} + {{- $talk_slug := index $talk_path 1 -}} + {{- if eq $talk_slug $event_slug -}} + + {{ range .Params.speakers }} + {{ if eq . ($.Scratch.Get "speaker") }} + {{ $.Scratch.Set "display" "true" }} + {{ end }} + {{ end }} + {{ if eq ($.Scratch.Get "display") "true" }} +
      • + {{ .Title }} +
      • + {{ $.Scratch.Set "display" "false" }} + {{ end }} + {{- end -}} + {{- end -}} +
      +
      + +
      +
      + {{ if isset .Params "image" }} + {{ if ne .Params.image "" }} + {{ .Title }}
      + {{ end }} + {{ else }} + {{ .Title }}
      + {{ end }} + +
      +
      + + +{{ partial "sponsors.html" . }} + + + +{{ end }} diff --git a/themes/devopsdays-theme/layouts/speakers/single.html b/themes/devopsdays-theme/layouts/speakers/single.html new file mode 100644 index 00000000000..ab16afc5723 --- /dev/null +++ b/themes/devopsdays-theme/layouts/speakers/single.html @@ -0,0 +1,98 @@ +{{ define "main" }} + + +{{- $path := split $.Source.File.Path .Site.Params.PathSeparator -}} +{{- $event_slug := index $path 1 -}} +{{- $e := (index $.Site.Data.events $event_slug) -}} +{{- $city_slug := substr $e.name 5 -}} +{{ $.Scratch.Set "i" 1 }} + + +
      + +{{- range where $.Site.Pages "Type" "speaker" -}} + {{- $speaker_path := split .File.Path .Site.Params.PathSeparator -}} + {{- $speaker_slug := index $speaker_path 1 -}} + {{- if eq $speaker_slug $event_slug -}} + {{ $.Scratch.Set "speakers-exist" "true" }} + + {{ $bio := .Content }} + {{ $subStr := split $bio " "}} + {{ $subStrLen := len $subStr }} + {{ if ge $subStrLen 51 }} + {{ $subStrTrim := first 51 $subStr }} + {{ $.Scratch.Set "bio" (delimit ($subStrTrim) " ") }} + {{ $.Scratch.Add "bio" "..." }} + {{ else }} + {{ $.Scratch.Set "bio" .Content }} + {{ end }} + + + + {{ if modBool ($.Scratch.Get "i") 4 }} +
      +
      + {{ end }} + {{ $.Scratch.Add "i" 1 }} + {{- end -}} +{{- end -}} + +
      + + +{{ if ne ($.Scratch.Get "speakers-exist") "true" }} + {{ .Content }} + + {{ range $fname, $s := index .Site.Data.speakers (print (chomp $e.year)) $city_slug }} +
      +
      + {{ $s.name }} +
      +
      +

      {{ $s.name }}

      + {{ if $s.twitter }} @{{ $s.twitter }}
      {{ end }} + {{ if $s.website }}Website: {{ $s.website }}
      {{ end }} + {{ if $s.pronouns }}Pronouns: {{ $s.pronouns }}{{ end }} +
      + {{ $s.bio | markdownify }} +
      +
      +
      + +{{ end }} + + + +{{ end }} + + + +{{ partial "sponsors.html" . }} + +{{ end }} diff --git a/themes/devopsdays-theme/layouts/speaking/single.html b/themes/devopsdays-theme/layouts/speaking/single.html new file mode 100644 index 00000000000..52a6c5e0a7f --- /dev/null +++ b/themes/devopsdays-theme/layouts/speaking/single.html @@ -0,0 +1,11 @@ +{{ define "main" }} + +

      {{ .Title }}

      + +
      + {{ .Content }} +
      + +{{ partial "speaking.html" . }} + +{{ end }} diff --git a/themes/devopsdays-theme/layouts/talk/single.html b/themes/devopsdays-theme/layouts/talk/single.html new file mode 100644 index 00000000000..36b7f2075ae --- /dev/null +++ b/themes/devopsdays-theme/layouts/talk/single.html @@ -0,0 +1,112 @@ +{{ define "main" }} + +{{ $path := split $.Source.File.Path .Site.Params.PathSeparator }} +{{ $event_slug := index $path 1 }} +{{ $e := (index $.Site.Data.events $event_slug) }} +{{ $city_slug := substr $e.name 5 }} + + +
      +
      +

      {{ .Title }}

      + + {{ if isset .Params "youtube" }} + {{ if ne .Params.youtube "" }} +
      +
      +
      + +
      +
      +
      + {{ end }} + {{ end }} +
      +

      Talk Abstract

      + + + {{ .Content }} + + + {{ if isset .Params "slideshare" }} + {{ if ne .Params.slideshare ""}} +
      +

      Slideshare

      + +
      + {{ end }} + {{ end }} + + {{ if isset .Params "slides" }} + {{ if ne .Params.slides ""}} +
      +

      Slides

      + Link to Slides +
      + {{ end }} + {{ end }} + +
      +
      + {{- if isset .Params "speakers" -}} + {{- if ne .Params.speakers "" -}} + {{- if gt (.Params.speakers | len) 1 -}} +

      Speakers

      + {{- else -}} +

      Speaker

      + {{- end -}} + {{- end -}} + + + {{ range .Params.speakers }} + {{ $.Scratch.Set "speakername" . }} + {{- range where $.Site.Pages "Type" "speaker" -}} + {{- $talk_path := split .File.Path .Site.Params.PathSeparator -}} + {{- $talk_slug := index $talk_path 1 -}} + {{- if eq $talk_slug $event_slug -}} + {{ if eq .File.BaseFileName ($.Scratch.Get "speakername") }} + + {{ if isset .Params "image" }} + {{ if ne .Params.image "" }} + {{ $.Scratch.Get
      + {{ end }} + {{ else }} + {{ $.Scratch.Get
      + {{ end }} +

      + {{ .Title }} +

      + {{ .Content }} + {{ end }} + + {{- end -}} + {{- end -}} + {{ end }} + {{ else }} +

      Speaker

      + {{ range $fname, $s := index .Site.Data.speakers (print (chomp $e.year)) $city_slug }} + {{ if in ($.LinkTitle | urlize) $fname }} +
      +
      + {{ $s.name }} +
      +
      +
      +
      +

      {{ $s.name }}

      + {{ if $s.twitter }} @{{ $s.twitter }}
      {{ end }} +
      + {{ $s.bio | markdownify }} +
      +
      + {{ end }} +{{ end }} +{{- end -}} +
      +
      + +{{ partial "sponsors.html" . }} + + +{{ end }} diff --git a/themes/devopsdays-theme/layouts/welcome/single.html b/themes/devopsdays-theme/layouts/welcome/single.html new file mode 100644 index 00000000000..63ffd4d7f9a --- /dev/null +++ b/themes/devopsdays-theme/layouts/welcome/single.html @@ -0,0 +1,25 @@ +{{ define "main" }} + +{{/* site data query copypasta */}} +{{ $path := split $.Source.File.Path .Site.Params.PathSeparator }} +{{ $event_slug := index $path 1 }} +{{ $e := (index $.Site.Data.events $event_slug) }} +{{/* end site data query */}} + +
      + +
      + + {{- partial "welcome.html" . -}} + + {{ partial "sponsors.html" . }} + + +
      {{ "" | safeHTML }} + + +
      {{ "" | safeHTML }} + + + +{{ end }} diff --git a/themes/devopsdays-theme/static/android-icon-144x144.png b/themes/devopsdays-theme/static/android-icon-144x144.png new file mode 100644 index 00000000000..84f00f8aec7 Binary files /dev/null and b/themes/devopsdays-theme/static/android-icon-144x144.png differ diff --git a/themes/devopsdays-theme/static/android-icon-192x192.png b/themes/devopsdays-theme/static/android-icon-192x192.png new file mode 100644 index 00000000000..0f3b38043fd Binary files /dev/null and b/themes/devopsdays-theme/static/android-icon-192x192.png differ diff --git a/themes/devopsdays-theme/static/android-icon-36x36.png b/themes/devopsdays-theme/static/android-icon-36x36.png new file mode 100644 index 00000000000..1552806b991 Binary files /dev/null and b/themes/devopsdays-theme/static/android-icon-36x36.png differ diff --git a/themes/devopsdays-theme/static/android-icon-48x48.png b/themes/devopsdays-theme/static/android-icon-48x48.png new file mode 100644 index 00000000000..432c1eabcd5 Binary files /dev/null and b/themes/devopsdays-theme/static/android-icon-48x48.png differ diff --git a/themes/devopsdays-theme/static/android-icon-72x72.png b/themes/devopsdays-theme/static/android-icon-72x72.png new file mode 100644 index 00000000000..7ee9b4350d4 Binary files /dev/null and b/themes/devopsdays-theme/static/android-icon-72x72.png differ diff --git a/themes/devopsdays-responsive/static/android-icon-96x96.png b/themes/devopsdays-theme/static/android-icon-96x96.png similarity index 97% rename from themes/devopsdays-responsive/static/android-icon-96x96.png rename to themes/devopsdays-theme/static/android-icon-96x96.png index c06818138b7..9991c542647 100644 Binary files a/themes/devopsdays-responsive/static/android-icon-96x96.png and b/themes/devopsdays-theme/static/android-icon-96x96.png differ diff --git a/themes/devopsdays-responsive/static/apple-icon-114x114.png b/themes/devopsdays-theme/static/apple-icon-114x114.png similarity index 98% rename from themes/devopsdays-responsive/static/apple-icon-114x114.png rename to themes/devopsdays-theme/static/apple-icon-114x114.png index 81f5255cfcb..578c819f14b 100644 Binary files a/themes/devopsdays-responsive/static/apple-icon-114x114.png and b/themes/devopsdays-theme/static/apple-icon-114x114.png differ diff --git a/themes/devopsdays-responsive/static/apple-icon-120x120.png b/themes/devopsdays-theme/static/apple-icon-120x120.png similarity index 97% rename from themes/devopsdays-responsive/static/apple-icon-120x120.png rename to themes/devopsdays-theme/static/apple-icon-120x120.png index da7c9e33de0..ef42e1f16ed 100644 Binary files a/themes/devopsdays-responsive/static/apple-icon-120x120.png and b/themes/devopsdays-theme/static/apple-icon-120x120.png differ diff --git a/themes/devopsdays-theme/static/apple-icon-144x144.png b/themes/devopsdays-theme/static/apple-icon-144x144.png new file mode 100644 index 00000000000..84f00f8aec7 Binary files /dev/null and b/themes/devopsdays-theme/static/apple-icon-144x144.png differ diff --git a/themes/devopsdays-theme/static/apple-icon-152x152.png b/themes/devopsdays-theme/static/apple-icon-152x152.png new file mode 100644 index 00000000000..7a44f434e6f Binary files /dev/null and b/themes/devopsdays-theme/static/apple-icon-152x152.png differ diff --git a/themes/devopsdays-responsive/static/apple-icon-180x180.png b/themes/devopsdays-theme/static/apple-icon-180x180.png similarity index 98% rename from themes/devopsdays-responsive/static/apple-icon-180x180.png rename to themes/devopsdays-theme/static/apple-icon-180x180.png index 49b217bc17b..ac750ccdd96 100644 Binary files a/themes/devopsdays-responsive/static/apple-icon-180x180.png and b/themes/devopsdays-theme/static/apple-icon-180x180.png differ diff --git a/themes/devopsdays-theme/static/apple-icon-57x57.png b/themes/devopsdays-theme/static/apple-icon-57x57.png new file mode 100644 index 00000000000..f47f0edf7b3 Binary files /dev/null and b/themes/devopsdays-theme/static/apple-icon-57x57.png differ diff --git a/themes/devopsdays-theme/static/apple-icon-60x60.png b/themes/devopsdays-theme/static/apple-icon-60x60.png new file mode 100644 index 00000000000..5d9960a895d Binary files /dev/null and b/themes/devopsdays-theme/static/apple-icon-60x60.png differ diff --git a/themes/devopsdays-theme/static/apple-icon-72x72.png b/themes/devopsdays-theme/static/apple-icon-72x72.png new file mode 100644 index 00000000000..7ee9b4350d4 Binary files /dev/null and b/themes/devopsdays-theme/static/apple-icon-72x72.png differ diff --git a/themes/devopsdays-theme/static/apple-icon-76x76.png b/themes/devopsdays-theme/static/apple-icon-76x76.png new file mode 100644 index 00000000000..5a0dab1fcc2 Binary files /dev/null and b/themes/devopsdays-theme/static/apple-icon-76x76.png differ diff --git a/themes/devopsdays-theme/static/apple-icon-precomposed.png b/themes/devopsdays-theme/static/apple-icon-precomposed.png new file mode 100644 index 00000000000..0f3b38043fd Binary files /dev/null and b/themes/devopsdays-theme/static/apple-icon-precomposed.png differ diff --git a/themes/devopsdays-theme/static/apple-icon.png b/themes/devopsdays-theme/static/apple-icon.png new file mode 100644 index 00000000000..0f3b38043fd Binary files /dev/null and b/themes/devopsdays-theme/static/apple-icon.png differ diff --git a/themes/devopsdays-responsive/static/browserconfig.xml b/themes/devopsdays-theme/static/browserconfig.xml similarity index 100% rename from themes/devopsdays-responsive/static/browserconfig.xml rename to themes/devopsdays-theme/static/browserconfig.xml diff --git a/themes/devopsdays-responsive/static/css/googlemaps.css b/themes/devopsdays-theme/static/css/googlemaps.css similarity index 100% rename from themes/devopsdays-responsive/static/css/googlemaps.css rename to themes/devopsdays-theme/static/css/googlemaps.css diff --git a/themes/devopsdays-theme/static/css/site.css b/themes/devopsdays-theme/static/css/site.css new file mode 100644 index 00000000000..809c6b31686 --- /dev/null +++ b/themes/devopsdays-theme/static/css/site.css @@ -0,0 +1,10 @@ +/*! + * Bootstrap v4.0.0-alpha.6 (https://getbootstrap.com) + * Copyright 2011-2017 The Bootstrap Authors + * Copyright 2011-2017 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + *//*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:0.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace, monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,html [type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:0.35em 0.625em 0.75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}[type="search"]::-webkit-search-cancel-button,[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}@media print{*,*::before,*::after,p::first-letter,div::first-letter,blockquote::first-letter,li::first-letter,p::first-line,div::first-line,blockquote::first-line,li::first-line{text-shadow:none !important;box-shadow:none !important}a,a:visited{text-decoration:underline}abbr[title]::after{content:" (" attr(title) ")"}pre{white-space:pre-wrap !important}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}.navbar{display:none}.badge{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}}html{box-sizing:border-box}*,*::before,*::after{box-sizing:inherit}@-ms-viewport{width:device-width}html{-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:transparent}body{font-family:-apple-system,system-ui,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-size:1rem;font-weight:normal;line-height:1.5;color:#292b2c;background-color:#fff}[tabindex="-1"]:focus{outline:none !important}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem}p{margin-top:0;margin-bottom:1rem}abbr[title],abbr[data-original-title]{cursor:help}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul,dl{margin-top:0;margin-bottom:1rem}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:bold}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}a{color:#0275d8;text-decoration:none}a:focus,a:hover{color:#014c8c;text-decoration:underline}a:not([href]):not([tabindex]){color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus,a:not([href]):not([tabindex]):hover{color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus{outline:0}pre{margin-top:0;margin-bottom:1rem;overflow:auto}figure{margin:0 0 1rem}img{vertical-align:middle}[role="button"]{cursor:pointer}a,area,button,[role="button"],input,label,select,summary,textarea{-ms-touch-action:manipulation;touch-action:manipulation}table{border-collapse:collapse;background-color:transparent}caption{padding-top:.75rem;padding-bottom:.75rem;color:#636c72;text-align:left;caption-side:bottom}th{text-align:left}label{display:inline-block;margin-bottom:.5rem}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}input,button,select,textarea{line-height:inherit}input[type="radio"]:disabled,input[type="checkbox"]:disabled{cursor:not-allowed}input[type="date"],input[type="time"],input[type="datetime-local"],input[type="month"]{-webkit-appearance:listbox}textarea{resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit}input[type="search"]{-webkit-appearance:none}output{display:inline-block}[hidden]{display:none !important}h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{margin-bottom:.5rem;font-family:inherit;font-weight:500;line-height:1.1;color:inherit}h1,.h1{font-size:2.5rem}h2,.h2{font-size:2rem}h3,.h3{font-size:1.75rem}h4,.h4{font-size:1.5rem}h5,.h5{font-size:1.25rem}h6,.h6{font-size:1rem}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:6rem;font-weight:300;line-height:1.1}.display-2{font-size:5.5rem;font-weight:300;line-height:1.1}.display-3{font-size:4.5rem;font-weight:300;line-height:1.1}.display-4{font-size:3.5rem;font-weight:300;line-height:1.1}hr{margin-top:1rem;margin-bottom:1rem;border:0;border-top:1px solid rgba(0,0,0,0.1)}small,.small{font-size:80%;font-weight:normal}mark,.mark{padding:.2em;background-color:#fcf8e3}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:5px}.initialism{font-size:90%;text-transform:uppercase}.blockquote{padding:.5rem 1rem;margin-bottom:1rem;font-size:1.25rem;border-left:.25rem solid #eceeef}.blockquote-footer{display:block;font-size:80%;color:#636c72}.blockquote-footer::before{content:"\2014 \00A0"}.blockquote-reverse{padding-right:1rem;padding-left:0;text-align:right;border-right:.25rem solid #eceeef;border-left:0}.blockquote-reverse .blockquote-footer::before{content:""}.blockquote-reverse .blockquote-footer::after{content:"\00A0 \2014"}.img-fluid{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:#fff;border:1px solid #ddd;border-radius:.25rem;-webkit-transition:all 0.2s ease-in-out;transition:all 0.2s ease-in-out;max-width:100%;height:auto}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:90%;color:#636c72}code,kbd,pre,samp{font-family:Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}code{padding:.2rem .4rem;font-size:90%;color:#bd4147;background-color:#f7f7f9;border-radius:.25rem}a>code{padding:0;color:inherit;background-color:inherit}kbd{padding:.2rem .4rem;font-size:90%;color:#fff;background-color:#292b2c;border-radius:.2rem}kbd kbd{padding:0;font-size:100%;font-weight:bold}pre{display:block;margin-top:0;margin-bottom:1rem;font-size:90%;color:#292b2c}pre code{padding:0;font-size:inherit;color:inherit;background-color:transparent;border-radius:0}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{position:relative;margin-left:auto;margin-right:auto;padding-right:15px;padding-left:15px}@media (min-width: 576px){.container{padding-right:15px;padding-left:15px}}@media (min-width: 768px){.container{padding-right:15px;padding-left:15px}}@media (min-width: 992px){.container{padding-right:15px;padding-left:15px}}@media (min-width: 1200px){.container{padding-right:15px;padding-left:15px}}@media (min-width: 576px){.container{width:540px;max-width:100%}}@media (min-width: 768px){.container{width:720px;max-width:100%}}@media (min-width: 992px){.container{width:960px;max-width:100%}}@media (min-width: 1200px){.container{width:1140px;max-width:100%}}.container-fluid{position:relative;margin-left:auto;margin-right:auto;padding-right:15px;padding-left:15px}@media (min-width: 576px){.container-fluid{padding-right:15px;padding-left:15px}}@media (min-width: 768px){.container-fluid{padding-right:15px;padding-left:15px}}@media (min-width: 992px){.container-fluid{padding-right:15px;padding-left:15px}}@media (min-width: 1200px){.container-fluid{padding-right:15px;padding-left:15px}}.row{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}@media (min-width: 576px){.row{margin-right:-15px;margin-left:-15px}}@media (min-width: 768px){.row{margin-right:-15px;margin-left:-15px}}@media (min-width: 992px){.row{margin-right:-15px;margin-left:-15px}}@media (min-width: 1200px){.row{margin-right:-15px;margin-left:-15px}}.no-gutters{margin-right:0;margin-left:0}.no-gutters>.col,.no-gutters>[class*="col-"]{padding-right:0;padding-left:0}.col-1,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-10,.col-11,.col-12,.col,.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,.col-sm,.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,.col-md,.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,.col-lg,.col-xl-1,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl{position:relative;width:100%;min-height:1px;padding-right:15px;padding-left:15px}@media (min-width: 576px){.col-1,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-10,.col-11,.col-12,.col,.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,.col-sm,.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,.col-md,.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,.col-lg,.col-xl-1,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl{padding-right:15px;padding-left:15px}}@media (min-width: 768px){.col-1,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-10,.col-11,.col-12,.col,.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,.col-sm,.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,.col-md,.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,.col-lg,.col-xl-1,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl{padding-right:15px;padding-left:15px}}@media (min-width: 992px){.col-1,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-10,.col-11,.col-12,.col,.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,.col-sm,.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,.col-md,.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,.col-lg,.col-xl-1,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl{padding-right:15px;padding-left:15px}}@media (min-width: 1200px){.col-1,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-10,.col-11,.col-12,.col,.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,.col-sm,.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,.col-md,.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,.col-lg,.col-xl-1,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl{padding-right:15px;padding-left:15px}}.col{-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-auto{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.col-1{-webkit-box-flex:0;-ms-flex:0 0 8.3333333333%;flex:0 0 8.3333333333%;max-width:8.3333333333%}.col-2{-webkit-box-flex:0;-ms-flex:0 0 16.6666666667%;flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-3{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-4{-webkit-box-flex:0;-ms-flex:0 0 33.3333333333%;flex:0 0 33.3333333333%;max-width:33.3333333333%}.col-5{-webkit-box-flex:0;-ms-flex:0 0 41.6666666667%;flex:0 0 41.6666666667%;max-width:41.6666666667%}.col-6{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-7{-webkit-box-flex:0;-ms-flex:0 0 58.3333333333%;flex:0 0 58.3333333333%;max-width:58.3333333333%}.col-8{-webkit-box-flex:0;-ms-flex:0 0 66.6666666667%;flex:0 0 66.6666666667%;max-width:66.6666666667%}.col-9{-webkit-box-flex:0;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-10{-webkit-box-flex:0;-ms-flex:0 0 83.3333333333%;flex:0 0 83.3333333333%;max-width:83.3333333333%}.col-11{-webkit-box-flex:0;-ms-flex:0 0 91.6666666667%;flex:0 0 91.6666666667%;max-width:91.6666666667%}.col-12{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.pull-0{right:auto}.pull-1{right:8.3333333333%}.pull-2{right:16.6666666667%}.pull-3{right:25%}.pull-4{right:33.3333333333%}.pull-5{right:41.6666666667%}.pull-6{right:50%}.pull-7{right:58.3333333333%}.pull-8{right:66.6666666667%}.pull-9{right:75%}.pull-10{right:83.3333333333%}.pull-11{right:91.6666666667%}.pull-12{right:100%}.push-0{left:auto}.push-1{left:8.3333333333%}.push-2{left:16.6666666667%}.push-3{left:25%}.push-4{left:33.3333333333%}.push-5{left:41.6666666667%}.push-6{left:50%}.push-7{left:58.3333333333%}.push-8{left:66.6666666667%}.push-9{left:75%}.push-10{left:83.3333333333%}.push-11{left:91.6666666667%}.push-12{left:100%}.offset-1{margin-left:8.3333333333%}.offset-2{margin-left:16.6666666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.3333333333%}.offset-5{margin-left:41.6666666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.3333333333%}.offset-8{margin-left:66.6666666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.3333333333%}.offset-11{margin-left:91.6666666667%}@media (min-width: 576px){.col-sm{-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-sm-auto{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.col-sm-1{-webkit-box-flex:0;-ms-flex:0 0 8.3333333333%;flex:0 0 8.3333333333%;max-width:8.3333333333%}.col-sm-2{-webkit-box-flex:0;-ms-flex:0 0 16.6666666667%;flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-sm-3{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-sm-4{-webkit-box-flex:0;-ms-flex:0 0 33.3333333333%;flex:0 0 33.3333333333%;max-width:33.3333333333%}.col-sm-5{-webkit-box-flex:0;-ms-flex:0 0 41.6666666667%;flex:0 0 41.6666666667%;max-width:41.6666666667%}.col-sm-6{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-sm-7{-webkit-box-flex:0;-ms-flex:0 0 58.3333333333%;flex:0 0 58.3333333333%;max-width:58.3333333333%}.col-sm-8{-webkit-box-flex:0;-ms-flex:0 0 66.6666666667%;flex:0 0 66.6666666667%;max-width:66.6666666667%}.col-sm-9{-webkit-box-flex:0;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-sm-10{-webkit-box-flex:0;-ms-flex:0 0 83.3333333333%;flex:0 0 83.3333333333%;max-width:83.3333333333%}.col-sm-11{-webkit-box-flex:0;-ms-flex:0 0 91.6666666667%;flex:0 0 91.6666666667%;max-width:91.6666666667%}.col-sm-12{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.pull-sm-0{right:auto}.pull-sm-1{right:8.3333333333%}.pull-sm-2{right:16.6666666667%}.pull-sm-3{right:25%}.pull-sm-4{right:33.3333333333%}.pull-sm-5{right:41.6666666667%}.pull-sm-6{right:50%}.pull-sm-7{right:58.3333333333%}.pull-sm-8{right:66.6666666667%}.pull-sm-9{right:75%}.pull-sm-10{right:83.3333333333%}.pull-sm-11{right:91.6666666667%}.pull-sm-12{right:100%}.push-sm-0{left:auto}.push-sm-1{left:8.3333333333%}.push-sm-2{left:16.6666666667%}.push-sm-3{left:25%}.push-sm-4{left:33.3333333333%}.push-sm-5{left:41.6666666667%}.push-sm-6{left:50%}.push-sm-7{left:58.3333333333%}.push-sm-8{left:66.6666666667%}.push-sm-9{left:75%}.push-sm-10{left:83.3333333333%}.push-sm-11{left:91.6666666667%}.push-sm-12{left:100%}.offset-sm-0{margin-left:0%}.offset-sm-1{margin-left:8.3333333333%}.offset-sm-2{margin-left:16.6666666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.3333333333%}.offset-sm-5{margin-left:41.6666666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.3333333333%}.offset-sm-8{margin-left:66.6666666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.3333333333%}.offset-sm-11{margin-left:91.6666666667%}}@media (min-width: 768px){.col-md{-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-md-auto{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.col-md-1{-webkit-box-flex:0;-ms-flex:0 0 8.3333333333%;flex:0 0 8.3333333333%;max-width:8.3333333333%}.col-md-2{-webkit-box-flex:0;-ms-flex:0 0 16.6666666667%;flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-md-3{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-md-4{-webkit-box-flex:0;-ms-flex:0 0 33.3333333333%;flex:0 0 33.3333333333%;max-width:33.3333333333%}.col-md-5{-webkit-box-flex:0;-ms-flex:0 0 41.6666666667%;flex:0 0 41.6666666667%;max-width:41.6666666667%}.col-md-6{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-md-7{-webkit-box-flex:0;-ms-flex:0 0 58.3333333333%;flex:0 0 58.3333333333%;max-width:58.3333333333%}.col-md-8{-webkit-box-flex:0;-ms-flex:0 0 66.6666666667%;flex:0 0 66.6666666667%;max-width:66.6666666667%}.col-md-9{-webkit-box-flex:0;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-md-10{-webkit-box-flex:0;-ms-flex:0 0 83.3333333333%;flex:0 0 83.3333333333%;max-width:83.3333333333%}.col-md-11{-webkit-box-flex:0;-ms-flex:0 0 91.6666666667%;flex:0 0 91.6666666667%;max-width:91.6666666667%}.col-md-12{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.pull-md-0{right:auto}.pull-md-1{right:8.3333333333%}.pull-md-2{right:16.6666666667%}.pull-md-3{right:25%}.pull-md-4{right:33.3333333333%}.pull-md-5{right:41.6666666667%}.pull-md-6{right:50%}.pull-md-7{right:58.3333333333%}.pull-md-8{right:66.6666666667%}.pull-md-9{right:75%}.pull-md-10{right:83.3333333333%}.pull-md-11{right:91.6666666667%}.pull-md-12{right:100%}.push-md-0{left:auto}.push-md-1{left:8.3333333333%}.push-md-2{left:16.6666666667%}.push-md-3{left:25%}.push-md-4{left:33.3333333333%}.push-md-5{left:41.6666666667%}.push-md-6{left:50%}.push-md-7{left:58.3333333333%}.push-md-8{left:66.6666666667%}.push-md-9{left:75%}.push-md-10{left:83.3333333333%}.push-md-11{left:91.6666666667%}.push-md-12{left:100%}.offset-md-0{margin-left:0%}.offset-md-1{margin-left:8.3333333333%}.offset-md-2{margin-left:16.6666666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.3333333333%}.offset-md-5{margin-left:41.6666666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.3333333333%}.offset-md-8{margin-left:66.6666666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.3333333333%}.offset-md-11{margin-left:91.6666666667%}}@media (min-width: 992px){.col-lg{-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-lg-auto{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.col-lg-1{-webkit-box-flex:0;-ms-flex:0 0 8.3333333333%;flex:0 0 8.3333333333%;max-width:8.3333333333%}.col-lg-2{-webkit-box-flex:0;-ms-flex:0 0 16.6666666667%;flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-lg-3{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-lg-4{-webkit-box-flex:0;-ms-flex:0 0 33.3333333333%;flex:0 0 33.3333333333%;max-width:33.3333333333%}.col-lg-5{-webkit-box-flex:0;-ms-flex:0 0 41.6666666667%;flex:0 0 41.6666666667%;max-width:41.6666666667%}.col-lg-6{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-lg-7{-webkit-box-flex:0;-ms-flex:0 0 58.3333333333%;flex:0 0 58.3333333333%;max-width:58.3333333333%}.col-lg-8{-webkit-box-flex:0;-ms-flex:0 0 66.6666666667%;flex:0 0 66.6666666667%;max-width:66.6666666667%}.col-lg-9{-webkit-box-flex:0;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-lg-10{-webkit-box-flex:0;-ms-flex:0 0 83.3333333333%;flex:0 0 83.3333333333%;max-width:83.3333333333%}.col-lg-11{-webkit-box-flex:0;-ms-flex:0 0 91.6666666667%;flex:0 0 91.6666666667%;max-width:91.6666666667%}.col-lg-12{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.pull-lg-0{right:auto}.pull-lg-1{right:8.3333333333%}.pull-lg-2{right:16.6666666667%}.pull-lg-3{right:25%}.pull-lg-4{right:33.3333333333%}.pull-lg-5{right:41.6666666667%}.pull-lg-6{right:50%}.pull-lg-7{right:58.3333333333%}.pull-lg-8{right:66.6666666667%}.pull-lg-9{right:75%}.pull-lg-10{right:83.3333333333%}.pull-lg-11{right:91.6666666667%}.pull-lg-12{right:100%}.push-lg-0{left:auto}.push-lg-1{left:8.3333333333%}.push-lg-2{left:16.6666666667%}.push-lg-3{left:25%}.push-lg-4{left:33.3333333333%}.push-lg-5{left:41.6666666667%}.push-lg-6{left:50%}.push-lg-7{left:58.3333333333%}.push-lg-8{left:66.6666666667%}.push-lg-9{left:75%}.push-lg-10{left:83.3333333333%}.push-lg-11{left:91.6666666667%}.push-lg-12{left:100%}.offset-lg-0{margin-left:0%}.offset-lg-1{margin-left:8.3333333333%}.offset-lg-2{margin-left:16.6666666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.3333333333%}.offset-lg-5{margin-left:41.6666666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.3333333333%}.offset-lg-8{margin-left:66.6666666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.3333333333%}.offset-lg-11{margin-left:91.6666666667%}}@media (min-width: 1200px){.col-xl{-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-xl-auto{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.col-xl-1{-webkit-box-flex:0;-ms-flex:0 0 8.3333333333%;flex:0 0 8.3333333333%;max-width:8.3333333333%}.col-xl-2{-webkit-box-flex:0;-ms-flex:0 0 16.6666666667%;flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-xl-3{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-xl-4{-webkit-box-flex:0;-ms-flex:0 0 33.3333333333%;flex:0 0 33.3333333333%;max-width:33.3333333333%}.col-xl-5{-webkit-box-flex:0;-ms-flex:0 0 41.6666666667%;flex:0 0 41.6666666667%;max-width:41.6666666667%}.col-xl-6{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-xl-7{-webkit-box-flex:0;-ms-flex:0 0 58.3333333333%;flex:0 0 58.3333333333%;max-width:58.3333333333%}.col-xl-8{-webkit-box-flex:0;-ms-flex:0 0 66.6666666667%;flex:0 0 66.6666666667%;max-width:66.6666666667%}.col-xl-9{-webkit-box-flex:0;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-xl-10{-webkit-box-flex:0;-ms-flex:0 0 83.3333333333%;flex:0 0 83.3333333333%;max-width:83.3333333333%}.col-xl-11{-webkit-box-flex:0;-ms-flex:0 0 91.6666666667%;flex:0 0 91.6666666667%;max-width:91.6666666667%}.col-xl-12{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.pull-xl-0{right:auto}.pull-xl-1{right:8.3333333333%}.pull-xl-2{right:16.6666666667%}.pull-xl-3{right:25%}.pull-xl-4{right:33.3333333333%}.pull-xl-5{right:41.6666666667%}.pull-xl-6{right:50%}.pull-xl-7{right:58.3333333333%}.pull-xl-8{right:66.6666666667%}.pull-xl-9{right:75%}.pull-xl-10{right:83.3333333333%}.pull-xl-11{right:91.6666666667%}.pull-xl-12{right:100%}.push-xl-0{left:auto}.push-xl-1{left:8.3333333333%}.push-xl-2{left:16.6666666667%}.push-xl-3{left:25%}.push-xl-4{left:33.3333333333%}.push-xl-5{left:41.6666666667%}.push-xl-6{left:50%}.push-xl-7{left:58.3333333333%}.push-xl-8{left:66.6666666667%}.push-xl-9{left:75%}.push-xl-10{left:83.3333333333%}.push-xl-11{left:91.6666666667%}.push-xl-12{left:100%}.offset-xl-0{margin-left:0%}.offset-xl-1{margin-left:8.3333333333%}.offset-xl-2{margin-left:16.6666666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.3333333333%}.offset-xl-5{margin-left:41.6666666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.3333333333%}.offset-xl-8{margin-left:66.6666666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.3333333333%}.offset-xl-11{margin-left:91.6666666667%}}.table{width:100%;max-width:100%;margin-bottom:1rem}.table th,.table td{padding:.75rem;vertical-align:top;border-top:1px solid #eceeef}.table thead th{vertical-align:bottom;border-bottom:2px solid #eceeef}.table tbody+tbody{border-top:2px solid #eceeef}.table .table{background-color:#fff}.table-sm th,.table-sm td{padding:.3rem}.table-bordered{border:1px solid #eceeef}.table-bordered th,.table-bordered td{border:1px solid #eceeef}.table-bordered thead th,.table-bordered thead td{border-bottom-width:2px}.table-striped tbody tr:nth-of-type(odd){background-color:rgba(0,0,0,0.05)}.table-hover tbody tr:hover{background-color:rgba(0,0,0,0.075)}.table-active,.table-active>th,.table-active>td{background-color:rgba(0,0,0,0.075)}.table-hover .table-active:hover{background-color:rgba(0,0,0,0.075)}.table-hover .table-active:hover>td,.table-hover .table-active:hover>th{background-color:rgba(0,0,0,0.075)}.table-success,.table-success>th,.table-success>td{background-color:#dff0d8}.table-hover .table-success:hover{background-color:#d0e9c6}.table-hover .table-success:hover>td,.table-hover .table-success:hover>th{background-color:#d0e9c6}.table-info,.table-info>th,.table-info>td{background-color:#d9edf7}.table-hover .table-info:hover{background-color:#c4e3f3}.table-hover .table-info:hover>td,.table-hover .table-info:hover>th{background-color:#c4e3f3}.table-warning,.table-warning>th,.table-warning>td{background-color:#fcf8e3}.table-hover .table-warning:hover{background-color:#faf2cc}.table-hover .table-warning:hover>td,.table-hover .table-warning:hover>th{background-color:#faf2cc}.table-danger,.table-danger>th,.table-danger>td{background-color:#f2dede}.table-hover .table-danger:hover{background-color:#ebcccc}.table-hover .table-danger:hover>td,.table-hover .table-danger:hover>th{background-color:#ebcccc}.thead-inverse th{color:#fff;background-color:#292b2c}.thead-default th{color:#464a4c;background-color:#eceeef}.table-inverse{color:#fff;background-color:#292b2c}.table-inverse th,.table-inverse td,.table-inverse thead th{border-color:#fff}.table-inverse.table-bordered{border:0}.table-responsive{display:block;width:100%;overflow-x:auto;-ms-overflow-style:-ms-autohiding-scrollbar}.table-responsive.table-bordered{border:0}.form-control{display:block;width:100%;padding:.5rem .75rem;font-size:1rem;line-height:1.25;color:#464a4c;background-color:#fff;background-image:none;background-clip:padding-box;border:1px solid rgba(0,0,0,0.15);border-radius:.25rem;-webkit-transition:border-color ease-in-out 0.15s,box-shadow ease-in-out 0.15s;transition:border-color ease-in-out 0.15s,box-shadow ease-in-out 0.15s}.form-control::-ms-expand{background-color:transparent;border:0}.form-control:focus{color:#464a4c;background-color:#fff;border-color:#5cb3fd;outline:none}.form-control::-webkit-input-placeholder{color:#636c72;opacity:1}.form-control::-moz-placeholder{color:#636c72;opacity:1}.form-control:-ms-input-placeholder{color:#636c72;opacity:1}.form-control::placeholder{color:#636c72;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#eceeef;opacity:1}.form-control:disabled{cursor:not-allowed}select.form-control:not([size]):not([multiple]){height:calc(2.25rem + 2px)}select.form-control:focus::-ms-value{color:#464a4c;background-color:#fff}.form-control-file,.form-control-range{display:block}.col-form-label{padding-top:calc(.5rem - 1px * 2);padding-bottom:calc(.5rem - 1px * 2);margin-bottom:0}.col-form-label-lg{padding-top:calc(.75rem - 1px * 2);padding-bottom:calc(.75rem - 1px * 2);font-size:1.25rem}.col-form-label-sm{padding-top:calc(.25rem - 1px * 2);padding-bottom:calc(.25rem - 1px * 2);font-size:.875rem}.col-form-legend{padding-top:.5rem;padding-bottom:.5rem;margin-bottom:0;font-size:1rem}.form-control-static{padding-top:.5rem;padding-bottom:.5rem;margin-bottom:0;line-height:1.25;border:solid transparent;border-width:1px 0}.form-control-static.form-control-sm,.input-group-sm>.form-control-static.form-control,.input-group-sm>.form-control-static.input-group-addon,.input-group-sm>.input-group-btn>.form-control-static.btn,.form-control-static.form-control-lg,.input-group-lg>.form-control-static.form-control,.input-group-lg>.form-control-static.input-group-addon,.input-group-lg>.input-group-btn>.form-control-static.btn{padding-right:0;padding-left:0}.form-control-sm,.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn{padding:.25rem .5rem;font-size:.875rem;border-radius:.2rem}select.form-control-sm:not([size]):not([multiple]),.input-group-sm>select.form-control:not([size]):not([multiple]),.input-group-sm>select.input-group-addon:not([size]):not([multiple]),.input-group-sm>.input-group-btn>select.btn:not([size]):not([multiple]){height:1.8125rem}.form-control-lg,.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{padding:.75rem 1.5rem;font-size:1.25rem;border-radius:.3rem}select.form-control-lg:not([size]):not([multiple]),.input-group-lg>select.form-control:not([size]):not([multiple]),.input-group-lg>select.input-group-addon:not([size]):not([multiple]),.input-group-lg>.input-group-btn>select.btn:not([size]):not([multiple]){height:3.1666666667rem}.form-group{margin-bottom:1rem}.form-text{display:block;margin-top:.25rem}.form-check{position:relative;display:block;margin-bottom:.5rem}.form-check.disabled .form-check-label{color:#636c72;cursor:not-allowed}.form-check-label{padding-left:1.25rem;margin-bottom:0;cursor:pointer}.form-check-input{position:absolute;margin-top:.25rem;margin-left:-1.25rem}.form-check-input:only-child{position:static}.form-check-inline{display:inline-block}.form-check-inline .form-check-label{vertical-align:middle}.form-check-inline+.form-check-inline{margin-left:.75rem}.form-control-feedback{margin-top:.25rem}.form-control-success,.form-control-warning,.form-control-danger{padding-right:2.25rem;background-repeat:no-repeat;background-position:center right .5625rem;background-size:1.125rem 1.125rem}.has-success .form-control-feedback,.has-success .form-control-label,.has-success .col-form-label,.has-success .form-check-label,.has-success .custom-control{color:#5cb85c}.has-success .form-control{border-color:#5cb85c}.has-success .input-group-addon{color:#5cb85c;border-color:#5cb85c;background-color:#eaf6ea}.has-success .form-control-success{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%235cb85c' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3E%3C/svg%3E")}.has-warning .form-control-feedback,.has-warning .form-control-label,.has-warning .col-form-label,.has-warning .form-check-label,.has-warning .custom-control{color:#f0ad4e}.has-warning .form-control{border-color:#f0ad4e}.has-warning .input-group-addon{color:#f0ad4e;border-color:#f0ad4e;background-color:#fff}.has-warning .form-control-warning{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23f0ad4e' d='M4.4 5.324h-.8v-2.46h.8zm0 1.42h-.8V5.89h.8zM3.76.63L.04 7.075c-.115.2.016.425.26.426h7.397c.242 0 .372-.226.258-.426C6.726 4.924 5.47 2.79 4.253.63c-.113-.174-.39-.174-.494 0z'/%3E%3C/svg%3E")}.has-danger .form-control-feedback,.has-danger .form-control-label,.has-danger .col-form-label,.has-danger .form-check-label,.has-danger .custom-control{color:#d9534f}.has-danger .form-control{border-color:#d9534f}.has-danger .input-group-addon{color:#d9534f;border-color:#d9534f;background-color:#fdf7f7}.has-danger .form-control-danger{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23d9534f' viewBox='-2 -2 7 7'%3E%3Cpath stroke='%23d9534f' d='M0 0l3 3m0-3L0 3'/%3E%3Ccircle r='.5'/%3E%3Ccircle cx='3' r='.5'/%3E%3Ccircle cy='3' r='.5'/%3E%3Ccircle cx='3' cy='3' r='.5'/%3E%3C/svg%3E")}.form-inline{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row wrap;flex-flow:row wrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.form-inline .form-check{width:100%}@media (min-width: 576px){.form-inline label{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;margin-bottom:0}.form-inline .form-group{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row wrap;flex-flow:row wrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:0}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-static{display:inline-block}.form-inline .input-group{width:auto}.form-inline .form-control-label{margin-bottom:0;vertical-align:middle}.form-inline .form-check{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:auto;margin-top:0;margin-bottom:0}.form-inline .form-check-label{padding-left:0}.form-inline .form-check-input{position:relative;margin-top:0;margin-right:.25rem;margin-left:0}.form-inline .custom-control{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding-left:0}.form-inline .custom-control-indicator{position:static;display:inline-block;margin-right:.25rem;vertical-align:text-bottom}.form-inline .has-feedback .form-control-feedback{top:0}}.btn{display:inline-block;font-weight:normal;line-height:1.25;text-align:center;white-space:nowrap;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border:1px solid transparent;padding:.5rem 1rem;font-size:1rem;border-radius:.25rem;-webkit-transition:all 0.2s ease-in-out;transition:all 0.2s ease-in-out}.btn:focus,.btn:hover{text-decoration:none}.btn:focus,.btn.focus{outline:0;box-shadow:0 0 0 2px rgba(2,117,216,0.25)}.btn.disabled,.btn:disabled{cursor:not-allowed;opacity:.65}.btn:active,.btn.active{background-image:none}a.btn.disabled,fieldset[disabled] a.btn{pointer-events:none}.btn-primary{color:#fff;background-color:#0275d8;border-color:#0275d8}.btn-primary:hover{color:#fff;background-color:#025aa5;border-color:#01549b}.btn-primary:focus,.btn-primary.focus{box-shadow:0 0 0 2px rgba(2,117,216,0.5)}.btn-primary.disabled,.btn-primary:disabled{background-color:#0275d8;border-color:#0275d8}.btn-primary:active,.btn-primary.active,.show>.btn-primary.dropdown-toggle{color:#fff;background-color:#025aa5;background-image:none;border-color:#01549b}.btn-secondary{color:#292b2c;background-color:#fff;border-color:#ccc}.btn-secondary:hover{color:#292b2c;background-color:#e6e5e5;border-color:#adadad}.btn-secondary:focus,.btn-secondary.focus{box-shadow:0 0 0 2px rgba(204,204,204,0.5)}.btn-secondary.disabled,.btn-secondary:disabled{background-color:#fff;border-color:#ccc}.btn-secondary:active,.btn-secondary.active,.show>.btn-secondary.dropdown-toggle{color:#292b2c;background-color:#e6e5e5;background-image:none;border-color:#adadad}.btn-info{color:#fff;background-color:#5bc0de;border-color:#5bc0de}.btn-info:hover{color:#fff;background-color:#31b0d5;border-color:#2aabd2}.btn-info:focus,.btn-info.focus{box-shadow:0 0 0 2px rgba(91,192,222,0.5)}.btn-info.disabled,.btn-info:disabled{background-color:#5bc0de;border-color:#5bc0de}.btn-info:active,.btn-info.active,.show>.btn-info.dropdown-toggle{color:#fff;background-color:#31b0d5;background-image:none;border-color:#2aabd2}.btn-success{color:#fff;background-color:#5cb85c;border-color:#5cb85c}.btn-success:hover{color:#fff;background-color:#449d44;border-color:#419641}.btn-success:focus,.btn-success.focus{box-shadow:0 0 0 2px rgba(92,184,92,0.5)}.btn-success.disabled,.btn-success:disabled{background-color:#5cb85c;border-color:#5cb85c}.btn-success:active,.btn-success.active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#449d44;background-image:none;border-color:#419641}.btn-warning{color:#fff;background-color:#f0ad4e;border-color:#f0ad4e}.btn-warning:hover{color:#fff;background-color:#ec971f;border-color:#eb9316}.btn-warning:focus,.btn-warning.focus{box-shadow:0 0 0 2px rgba(240,173,78,0.5)}.btn-warning.disabled,.btn-warning:disabled{background-color:#f0ad4e;border-color:#f0ad4e}.btn-warning:active,.btn-warning.active,.show>.btn-warning.dropdown-toggle{color:#fff;background-color:#ec971f;background-image:none;border-color:#eb9316}.btn-danger{color:#fff;background-color:#d9534f;border-color:#d9534f}.btn-danger:hover{color:#fff;background-color:#c9302c;border-color:#c12e2a}.btn-danger:focus,.btn-danger.focus{box-shadow:0 0 0 2px rgba(217,83,79,0.5)}.btn-danger.disabled,.btn-danger:disabled{background-color:#d9534f;border-color:#d9534f}.btn-danger:active,.btn-danger.active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#c9302c;background-image:none;border-color:#c12e2a}.btn-outline-primary{color:#0275d8;background-image:none;background-color:transparent;border-color:#0275d8}.btn-outline-primary:hover{color:#fff;background-color:#0275d8;border-color:#0275d8}.btn-outline-primary:focus,.btn-outline-primary.focus{box-shadow:0 0 0 2px rgba(2,117,216,0.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{color:#0275d8;background-color:transparent}.btn-outline-primary:active,.btn-outline-primary.active,.show>.btn-outline-primary.dropdown-toggle{color:#fff;background-color:#0275d8;border-color:#0275d8}.btn-outline-secondary{color:#ccc;background-image:none;background-color:transparent;border-color:#ccc}.btn-outline-secondary:hover{color:#fff;background-color:#ccc;border-color:#ccc}.btn-outline-secondary:focus,.btn-outline-secondary.focus{box-shadow:0 0 0 2px rgba(204,204,204,0.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{color:#ccc;background-color:transparent}.btn-outline-secondary:active,.btn-outline-secondary.active,.show>.btn-outline-secondary.dropdown-toggle{color:#fff;background-color:#ccc;border-color:#ccc}.btn-outline-info{color:#5bc0de;background-image:none;background-color:transparent;border-color:#5bc0de}.btn-outline-info:hover{color:#fff;background-color:#5bc0de;border-color:#5bc0de}.btn-outline-info:focus,.btn-outline-info.focus{box-shadow:0 0 0 2px rgba(91,192,222,0.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{color:#5bc0de;background-color:transparent}.btn-outline-info:active,.btn-outline-info.active,.show>.btn-outline-info.dropdown-toggle{color:#fff;background-color:#5bc0de;border-color:#5bc0de}.btn-outline-success{color:#5cb85c;background-image:none;background-color:transparent;border-color:#5cb85c}.btn-outline-success:hover{color:#fff;background-color:#5cb85c;border-color:#5cb85c}.btn-outline-success:focus,.btn-outline-success.focus{box-shadow:0 0 0 2px rgba(92,184,92,0.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{color:#5cb85c;background-color:transparent}.btn-outline-success:active,.btn-outline-success.active,.show>.btn-outline-success.dropdown-toggle{color:#fff;background-color:#5cb85c;border-color:#5cb85c}.btn-outline-warning{color:#f0ad4e;background-image:none;background-color:transparent;border-color:#f0ad4e}.btn-outline-warning:hover{color:#fff;background-color:#f0ad4e;border-color:#f0ad4e}.btn-outline-warning:focus,.btn-outline-warning.focus{box-shadow:0 0 0 2px rgba(240,173,78,0.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{color:#f0ad4e;background-color:transparent}.btn-outline-warning:active,.btn-outline-warning.active,.show>.btn-outline-warning.dropdown-toggle{color:#fff;background-color:#f0ad4e;border-color:#f0ad4e}.btn-outline-danger{color:#d9534f;background-image:none;background-color:transparent;border-color:#d9534f}.btn-outline-danger:hover{color:#fff;background-color:#d9534f;border-color:#d9534f}.btn-outline-danger:focus,.btn-outline-danger.focus{box-shadow:0 0 0 2px rgba(217,83,79,0.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{color:#d9534f;background-color:transparent}.btn-outline-danger:active,.btn-outline-danger.active,.show>.btn-outline-danger.dropdown-toggle{color:#fff;background-color:#d9534f;border-color:#d9534f}.btn-link{font-weight:normal;color:#0275d8;border-radius:0}.btn-link,.btn-link:active,.btn-link.active,.btn-link:disabled{background-color:transparent}.btn-link,.btn-link:focus,.btn-link:active{border-color:transparent}.btn-link:hover{border-color:transparent}.btn-link:focus,.btn-link:hover{color:#014c8c;text-decoration:underline;background-color:transparent}.btn-link:disabled{color:#636c72}.btn-link:disabled:focus,.btn-link:disabled:hover{text-decoration:none}.btn-lg,.btn-group-lg>.btn{padding:.75rem 1.5rem;font-size:1.25rem;border-radius:.3rem}.btn-sm,.btn-group-sm>.btn{padding:.25rem .5rem;font-size:.875rem;border-radius:.2rem}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:.5rem}input[type="submit"].btn-block,input[type="reset"].btn-block,input[type="button"].btn-block{width:100%}.fade{opacity:0;-webkit-transition:opacity 0.15s linear;transition:opacity 0.15s linear}.fade.show{opacity:1}.collapse{display:none}.collapse.show{display:block}tr.collapse.show{display:table-row}tbody.collapse.show{display:table-row-group}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition:height 0.35s ease;transition:height 0.35s ease}.dropup,.dropdown{position:relative}.dropdown-toggle::after{display:inline-block;width:0;height:0;margin-left:.3em;vertical-align:middle;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-left:.3em solid transparent}.dropdown-toggle:focus{outline:0}.dropup .dropdown-toggle::after{border-top:0;border-bottom:.3em solid}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#292b2c;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,0.15);border-radius:.25rem}.dropdown-divider{height:1px;margin:.5rem 0;overflow:hidden;background-color:#eceeef}.dropdown-item{display:block;width:100%;padding:3px 1.5rem;clear:both;font-weight:normal;color:#292b2c;text-align:inherit;white-space:nowrap;background:none;border:0}.dropdown-item:focus,.dropdown-item:hover{color:#1d1e1f;text-decoration:none;background-color:#f7f7f9}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#0275d8}.dropdown-item.disabled,.dropdown-item:disabled{color:#636c72;cursor:not-allowed;background-color:transparent}.show>.dropdown-menu{display:block}.show>a{outline:0}.dropdown-menu-right{right:0;left:auto}.dropdown-menu-left{right:auto;left:0}.dropdown-header{display:block;padding:.5rem 1.5rem;margin-bottom:0;font-size:.875rem;color:#636c72;white-space:nowrap}.dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:990}.dropup .dropdown-menu{top:auto;bottom:100%;margin-bottom:.125rem}.btn-group,.btn-group-vertical{position:relative;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.btn-group>.btn,.btn-group-vertical>.btn{position:relative;-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto}.btn-group>.btn:hover,.btn-group-vertical>.btn:hover{z-index:2}.btn-group>.btn:focus,.btn-group>.btn:active,.btn-group>.btn.active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.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,.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-left:-1px}.btn-toolbar{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.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-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-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-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn-group:last-child:not(:first-child)>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn+.dropdown-toggle-split::after{margin-left:0}.btn-sm+.dropdown-toggle-split,.btn-group-sm>.btn+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-lg+.dropdown-toggle-split,.btn-group-lg>.btn+.dropdown-toggle-split{padding-right:1.125rem;padding-left:1.125rem}.btn-group-vertical{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.btn-group-vertical .btn,.btn-group-vertical .btn-group{width:100%}.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-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-top-right-radius:0;border-top-left-radius:0}.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-right-radius:0;border-top-left-radius:0}[data-toggle="buttons"]>.btn input[type="radio"],[data-toggle="buttons"]>.btn input[type="checkbox"],[data-toggle="buttons"]>.btn-group>.btn input[type="radio"],[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:-webkit-box;display:-ms-flexbox;display:flex;width:100%}.input-group .form-control{position:relative;z-index:2;-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;width:1%;margin-bottom:0}.input-group .form-control:focus,.input-group .form-control:active,.input-group .form-control:hover{z-index:3}.input-group-addon,.input-group-btn,.input-group .form-control{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.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{white-space:nowrap;vertical-align:middle}.input-group-addon{padding:.5rem .75rem;margin-bottom:0;font-size:1rem;font-weight:normal;line-height:1.25;color:#464a4c;text-align:center;background-color:#eceeef;border:1px solid rgba(0,0,0,0.15);border-radius:.25rem}.input-group-addon.form-control-sm,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.input-group-addon.btn{padding:.25rem .5rem;font-size:.875rem;border-radius:.2rem}.input-group-addon.form-control-lg,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.input-group-addon.btn{padding:.75rem 1.5rem;font-size:1.25rem;border-radius:.3rem}.input-group-addon input[type="radio"],.input-group-addon input[type="checkbox"]{margin-top:0}.input-group .form-control:not(:last-child),.input-group-addon:not(:last-child),.input-group-btn:not(:last-child)>.btn,.input-group-btn:not(:last-child)>.btn-group>.btn,.input-group-btn:not(:last-child)>.dropdown-toggle,.input-group-btn:not(:first-child)>.btn:not(:last-child):not(.dropdown-toggle),.input-group-btn:not(:first-child)>.btn-group:not(:last-child)>.btn{border-bottom-right-radius:0;border-top-right-radius:0}.input-group-addon:not(:last-child){border-right:0}.input-group .form-control:not(:first-child),.input-group-addon:not(:first-child),.input-group-btn:not(:first-child)>.btn,.input-group-btn:not(:first-child)>.btn-group>.btn,.input-group-btn:not(:first-child)>.dropdown-toggle,.input-group-btn:not(:last-child)>.btn:not(:first-child),.input-group-btn:not(:last-child)>.btn-group:not(:first-child)>.btn{border-bottom-left-radius:0;border-top-left-radius:0}.form-control+.input-group-addon:not(:first-child){border-left:0}.input-group-btn{position:relative;font-size:0;white-space:nowrap}.input-group-btn>.btn{position:relative;-webkit-box-flex:1;-ms-flex:1;flex:1}.input-group-btn>.btn+.btn{margin-left:-1px}.input-group-btn>.btn:focus,.input-group-btn>.btn:active,.input-group-btn>.btn:hover{z-index:3}.input-group-btn:not(:last-child)>.btn,.input-group-btn:not(:last-child)>.btn-group{margin-right:-1px}.input-group-btn:not(:first-child)>.btn,.input-group-btn:not(:first-child)>.btn-group{z-index:2;margin-left:-1px}.input-group-btn:not(:first-child)>.btn:focus,.input-group-btn:not(:first-child)>.btn:active,.input-group-btn:not(:first-child)>.btn:hover,.input-group-btn:not(:first-child)>.btn-group:focus,.input-group-btn:not(:first-child)>.btn-group:active,.input-group-btn:not(:first-child)>.btn-group:hover{z-index:3}.custom-control{position:relative;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;min-height:1.5rem;padding-left:1.5rem;margin-right:1rem;cursor:pointer}.custom-control-input{position:absolute;z-index:-1;opacity:0}.custom-control-input:checked ~ .custom-control-indicator{color:#fff;background-color:#0275d8}.custom-control-input:focus ~ .custom-control-indicator{box-shadow:0 0 0 1px #fff,0 0 0 3px #0275d8}.custom-control-input:active ~ .custom-control-indicator{color:#fff;background-color:#8fcafe}.custom-control-input:disabled ~ .custom-control-indicator{cursor:not-allowed;background-color:#eceeef}.custom-control-input:disabled ~ .custom-control-description{color:#636c72;cursor:not-allowed}.custom-control-indicator{position:absolute;top:.25rem;left:0;display:block;width:1rem;height:1rem;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:#ddd;background-repeat:no-repeat;background-position:center center;background-size:50% 50%}.custom-checkbox .custom-control-indicator{border-radius:.25rem}.custom-checkbox .custom-control-input:checked ~ .custom-control-indicator{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E")}.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-indicator{background-color:#0275d8;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 4'%3E%3Cpath stroke='%23fff' d='M0 2h4'/%3E%3C/svg%3E")}.custom-radio .custom-control-indicator{border-radius:50%}.custom-radio .custom-control-input:checked ~ .custom-control-indicator{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23fff'/%3E%3C/svg%3E")}.custom-controls-stacked{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.custom-controls-stacked .custom-control{margin-bottom:.25rem}.custom-controls-stacked .custom-control+.custom-control{margin-left:0}.custom-select{display:inline-block;max-width:100%;height:calc(2.25rem + 2px);padding:.375rem 1.75rem .375rem .75rem;line-height:1.25;color:#464a4c;vertical-align:middle;background:#fff url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3E%3Cpath fill='%23333' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") no-repeat right .75rem center;background-size:8px 10px;border:1px solid rgba(0,0,0,0.15);border-radius:.25rem;-moz-appearance:none;-webkit-appearance:none}.custom-select:focus{border-color:#5cb3fd;outline:none}.custom-select:focus::-ms-value{color:#464a4c;background-color:#fff}.custom-select:disabled{color:#636c72;cursor:not-allowed;background-color:#eceeef}.custom-select::-ms-expand{opacity:0}.custom-select-sm{padding-top:.375rem;padding-bottom:.375rem;font-size:75%}.custom-file{position:relative;display:inline-block;max-width:100%;height:2.5rem;margin-bottom:0;cursor:pointer}.custom-file-input{min-width:14rem;max-width:100%;height:2.5rem;margin:0;filter:alpha(opacity=0);opacity:0}.custom-file-control{position:absolute;top:0;right:0;left:0;z-index:5;height:2.5rem;padding:.5rem 1rem;line-height:1.5;color:#464a4c;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:#fff;border:1px solid rgba(0,0,0,0.15);border-radius:.25rem}.custom-file-control:lang(en)::after{content:"Choose file..."}.custom-file-control::before{position:absolute;top:-1px;right:-1px;bottom:-1px;z-index:6;display:block;height:2.5rem;padding:.5rem 1rem;line-height:1.5;color:#464a4c;background-color:#eceeef;border:1px solid rgba(0,0,0,0.15);border-radius:0 .25rem .25rem 0}.custom-file-control:lang(en)::before{content:"Browse"}.nav{display:-webkit-box;display:-ms-flexbox;display:flex;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:0.5em 1em}.nav-link:focus,.nav-link:hover{text-decoration:none}.nav-link.disabled{color:#636c72;cursor:not-allowed}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs .nav-item{margin-bottom:-1px}.nav-tabs .nav-link{border:1px solid transparent;border-top-right-radius:.25rem;border-top-left-radius:.25rem}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{border-color:#eceeef #eceeef #ddd}.nav-tabs .nav-link.disabled{color:#636c72;background-color:transparent;border-color:transparent}.nav-tabs .nav-link.active,.nav-tabs .nav-item.show .nav-link{color:#464a4c;background-color:#fff;border-color:#ddd #ddd #fff}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.nav-pills .nav-link{border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .nav-item.show .nav-link{color:#fff;cursor:default;background-color:#0275d8}.nav-fill .nav-item{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;text-align:center}.nav-justified .nav-item{-webkit-box-flex:1;-ms-flex:1 1 100%;flex:1 1 100%;text-align:center}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding:.5rem 1rem}.navbar-brand{display:inline-block;padding-top:.25rem;padding-bottom:.25rem;margin-right:1rem;font-size:1.25rem;line-height:inherit;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-nav{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-text{display:inline-block;padding-top:.425rem;padding-bottom:.425rem}.navbar-toggler{-ms-flex-item-align:start;align-self:flex-start;padding:.25rem .75rem;font-size:1.25rem;line-height:1;background:transparent;border:1px solid transparent;border-radius:.25rem}.navbar-toggler:focus,.navbar-toggler:hover{text-decoration:none}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;content:"";background:no-repeat center center;background-size:100% 100%}.navbar-toggler-left{position:absolute;left:1rem}.navbar-toggler-right{position:absolute;right:1rem}@media (max-width: 575px){.navbar-toggleable .navbar-nav .dropdown-menu{position:static;float:none}.navbar-toggleable>.container{padding-right:0;padding-left:0}}@media (min-width: 576px){.navbar-toggleable{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.navbar-toggleable .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-toggleable .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-toggleable>.container{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.navbar-toggleable .navbar-collapse{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important;width:100%}.navbar-toggleable .navbar-toggler{display:none}}@media (max-width: 767px){.navbar-toggleable-sm .navbar-nav .dropdown-menu{position:static;float:none}.navbar-toggleable-sm>.container{padding-right:0;padding-left:0}}@media (min-width: 768px){.navbar-toggleable-sm{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.navbar-toggleable-sm .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-toggleable-sm .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-toggleable-sm>.container{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.navbar-toggleable-sm .navbar-collapse{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important;width:100%}.navbar-toggleable-sm .navbar-toggler{display:none}}@media (max-width: 991px){.navbar-toggleable-md .navbar-nav .dropdown-menu{position:static;float:none}.navbar-toggleable-md>.container{padding-right:0;padding-left:0}}@media (min-width: 992px){.navbar-toggleable-md{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.navbar-toggleable-md .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-toggleable-md .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-toggleable-md>.container{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.navbar-toggleable-md .navbar-collapse{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important;width:100%}.navbar-toggleable-md .navbar-toggler{display:none}}@media (max-width: 1199px){.navbar-toggleable-lg .navbar-nav .dropdown-menu{position:static;float:none}.navbar-toggleable-lg>.container{padding-right:0;padding-left:0}}@media (min-width: 1200px){.navbar-toggleable-lg{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.navbar-toggleable-lg .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-toggleable-lg .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-toggleable-lg>.container{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.navbar-toggleable-lg .navbar-collapse{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important;width:100%}.navbar-toggleable-lg .navbar-toggler{display:none}}.navbar-toggleable-xl{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.navbar-toggleable-xl .navbar-nav .dropdown-menu{position:static;float:none}.navbar-toggleable-xl>.container{padding-right:0;padding-left:0}.navbar-toggleable-xl .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-toggleable-xl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-toggleable-xl>.container{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.navbar-toggleable-xl .navbar-collapse{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important;width:100%}.navbar-toggleable-xl .navbar-toggler{display:none}.navbar-light .navbar-brand,.navbar-light .navbar-toggler{color:rgba(0,0,0,0.9)}.navbar-light .navbar-brand:focus,.navbar-light .navbar-brand:hover,.navbar-light .navbar-toggler:focus,.navbar-light .navbar-toggler:hover{color:rgba(0,0,0,0.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,0.5)}.navbar-light .navbar-nav .nav-link:focus,.navbar-light .navbar-nav .nav-link:hover{color:rgba(0,0,0,0.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,0.3)}.navbar-light .navbar-nav .open>.nav-link,.navbar-light .navbar-nav .active>.nav-link,.navbar-light .navbar-nav .nav-link.open,.navbar-light .navbar-nav .nav-link.active{color:rgba(0,0,0,0.9)}.navbar-light .navbar-toggler{border-color:rgba(0,0,0,0.1)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(0,0,0,0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E")}.navbar-light .navbar-text{color:rgba(0,0,0,0.5)}.navbar-inverse .navbar-brand,.navbar-inverse .navbar-toggler{color:#fff}.navbar-inverse .navbar-brand:focus,.navbar-inverse .navbar-brand:hover,.navbar-inverse .navbar-toggler:focus,.navbar-inverse .navbar-toggler:hover{color:#fff}.navbar-inverse .navbar-nav .nav-link{color:rgba(255,255,255,0.5)}.navbar-inverse .navbar-nav .nav-link:focus,.navbar-inverse .navbar-nav .nav-link:hover{color:rgba(255,255,255,0.75)}.navbar-inverse .navbar-nav .nav-link.disabled{color:rgba(255,255,255,0.25)}.navbar-inverse .navbar-nav .open>.nav-link,.navbar-inverse .navbar-nav .active>.nav-link,.navbar-inverse .navbar-nav .nav-link.open,.navbar-inverse .navbar-nav .nav-link.active{color:#fff}.navbar-inverse .navbar-toggler{border-color:rgba(255,255,255,0.1)}.navbar-inverse .navbar-toggler-icon{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255,255,255,0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E")}.navbar-inverse .navbar-text{color:rgba(255,255,255,0.5)}.card{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;background-color:#fff;border:1px solid rgba(0,0,0,0.125);border-radius:.25rem}.card-block{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;padding:1.25rem}.card-title{margin-bottom:.75rem}.card-subtitle{margin-top:-.375rem;margin-bottom:0}.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:1.25rem}.card>.list-group:first-child .list-group-item:first-child{border-top-right-radius:.25rem;border-top-left-radius:.25rem}.card>.list-group:last-child .list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.card-header{padding:.75rem 1.25rem;margin-bottom:0;background-color:#f7f7f9;border-bottom:1px solid rgba(0,0,0,0.125)}.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-footer{padding:.75rem 1.25rem;background-color:#f7f7f9;border-top:1px solid rgba(0,0,0,0.125)}.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs{margin-right:-.625rem;margin-bottom:-.75rem;margin-left:-.625rem;border-bottom:0}.card-header-pills{margin-right:-.625rem;margin-left:-.625rem}.card-primary{background-color:#0275d8;border-color:#0275d8}.card-primary .card-header,.card-primary .card-footer{background-color:transparent}.card-success{background-color:#5cb85c;border-color:#5cb85c}.card-success .card-header,.card-success .card-footer{background-color:transparent}.card-info{background-color:#5bc0de;border-color:#5bc0de}.card-info .card-header,.card-info .card-footer{background-color:transparent}.card-warning{background-color:#f0ad4e;border-color:#f0ad4e}.card-warning .card-header,.card-warning .card-footer{background-color:transparent}.card-danger{background-color:#d9534f;border-color:#d9534f}.card-danger .card-header,.card-danger .card-footer{background-color:transparent}.card-outline-primary{background-color:transparent;border-color:#0275d8}.card-outline-secondary{background-color:transparent;border-color:#ccc}.card-outline-info{background-color:transparent;border-color:#5bc0de}.card-outline-success{background-color:transparent;border-color:#5cb85c}.card-outline-warning{background-color:transparent;border-color:#f0ad4e}.card-outline-danger{background-color:transparent;border-color:#d9534f}.card-inverse{color:rgba(255,255,255,0.65)}.card-inverse .card-header,.card-inverse .card-footer{background-color:transparent;border-color:rgba(255,255,255,0.2)}.card-inverse .card-header,.card-inverse .card-footer,.card-inverse .card-title,.card-inverse .card-blockquote{color:#fff}.card-inverse .card-link,.card-inverse .card-text,.card-inverse .card-subtitle,.card-inverse .card-blockquote .blockquote-footer{color:rgba(255,255,255,0.65)}.card-inverse .card-link:focus,.card-inverse .card-link:hover{color:#fff}.card-blockquote{padding:0;margin-bottom:0;border-left:0}.card-img{border-radius:calc(.25rem - 1px)}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1.25rem}.card-img-top{border-top-right-radius:calc(.25rem - 1px);border-top-left-radius:calc(.25rem - 1px)}.card-img-bottom{border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}@media (min-width: 576px){.card-deck{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row wrap;flex-flow:row wrap}.card-deck .card{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1 0 0px;flex:1 0 0;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.card-deck .card:not(:first-child){margin-left:15px}.card-deck .card:not(:last-child){margin-right:15px}}@media (min-width: 576px){.card-group{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row wrap;flex-flow:row wrap}.card-group .card{-webkit-box-flex:1;-ms-flex:1 0 0px;flex:1 0 0}.card-group .card+.card{margin-left:0;border-left:0}.card-group .card:first-child{border-bottom-right-radius:0;border-top-right-radius:0}.card-group .card:first-child .card-img-top{border-top-right-radius:0}.card-group .card:first-child .card-img-bottom{border-bottom-right-radius:0}.card-group .card:last-child{border-bottom-left-radius:0;border-top-left-radius:0}.card-group .card:last-child .card-img-top{border-top-left-radius:0}.card-group .card:last-child .card-img-bottom{border-bottom-left-radius:0}.card-group .card:not(:first-child):not(:last-child){border-radius:0}.card-group .card:not(:first-child):not(:last-child) .card-img-top,.card-group .card:not(:first-child):not(:last-child) .card-img-bottom{border-radius:0}}@media (min-width: 576px){.card-columns{-webkit-column-count:3;-moz-column-count:3;column-count:3;-webkit-column-gap:1.25rem;-moz-column-gap:1.25rem;column-gap:1.25rem}.card-columns .card{display:inline-block;width:100%;margin-bottom:.75rem}}.breadcrumb{padding:.75rem 1rem;margin-bottom:1rem;list-style:none;background-color:#eceeef;border-radius:.25rem}.breadcrumb::after{display:block;content:"";clear:both}.breadcrumb-item{float:left}.breadcrumb-item+.breadcrumb-item::before{display:inline-block;padding-right:.5rem;padding-left:.5rem;color:#636c72;content:"/"}.breadcrumb-item+.breadcrumb-item:hover::before{text-decoration:underline}.breadcrumb-item+.breadcrumb-item:hover::before{text-decoration:none}.breadcrumb-item.active{color:#636c72}.pagination{display:-webkit-box;display:-ms-flexbox;display:flex;padding-left:0;list-style:none;border-radius:.25rem}.page-item:first-child .page-link{margin-left:0;border-bottom-left-radius:.25rem;border-top-left-radius:.25rem}.page-item:last-child .page-link{border-bottom-right-radius:.25rem;border-top-right-radius:.25rem}.page-item.active .page-link{z-index:2;color:#fff;background-color:#0275d8;border-color:#0275d8}.page-item.disabled .page-link{color:#636c72;pointer-events:none;cursor:not-allowed;background-color:#fff;border-color:#ddd}.page-link{position:relative;display:block;padding:.5rem .75rem;margin-left:-1px;line-height:1.25;color:#0275d8;background-color:#fff;border:1px solid #ddd}.page-link:focus,.page-link:hover{color:#014c8c;text-decoration:none;background-color:#eceeef;border-color:#ddd}.pagination-lg .page-link{padding:.75rem 1.5rem;font-size:1.25rem}.pagination-lg .page-item:first-child .page-link{border-bottom-left-radius:.3rem;border-top-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-bottom-right-radius:.3rem;border-top-right-radius:.3rem}.pagination-sm .page-link{padding:.25rem .5rem;font-size:.875rem}.pagination-sm .page-item:first-child .page-link{border-bottom-left-radius:.2rem;border-top-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-bottom-right-radius:.2rem;border-top-right-radius:.2rem}.badge{display:inline-block;padding:.25em .4em;font-size:75%;font-weight:bold;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25rem}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}a.badge:focus,a.badge:hover{color:#fff;text-decoration:none;cursor:pointer}.badge-pill{padding-right:.6em;padding-left:.6em;border-radius:10rem}.badge-default{background-color:#636c72}.badge-default[href]:focus,.badge-default[href]:hover{background-color:#4b5257}.badge-primary{background-color:#0275d8}.badge-primary[href]:focus,.badge-primary[href]:hover{background-color:#025aa5}.badge-success{background-color:#5cb85c}.badge-success[href]:focus,.badge-success[href]:hover{background-color:#449d44}.badge-info{background-color:#5bc0de}.badge-info[href]:focus,.badge-info[href]:hover{background-color:#31b0d5}.badge-warning{background-color:#f0ad4e}.badge-warning[href]:focus,.badge-warning[href]:hover{background-color:#ec971f}.badge-danger{background-color:#d9534f}.badge-danger[href]:focus,.badge-danger[href]:hover{background-color:#c9302c}.jumbotron{padding:2rem 1rem;margin-bottom:2rem;background-color:#eceeef;border-radius:.3rem}@media (min-width: 576px){.jumbotron{padding:4rem 2rem}}.jumbotron-hr{border-top-color:#d0d5d8}.jumbotron-fluid{padding-right:0;padding-left:0;border-radius:0}.alert{padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.alert-heading{color:inherit}.alert-link{font-weight:bold}.alert-dismissible .close{position:relative;top:-.75rem;right:-1.25rem;padding:.75rem 1.25rem;color:inherit}.alert-success{background-color:#dff0d8;border-color:#d0e9c6;color:#3c763d}.alert-success hr{border-top-color:#c1e2b3}.alert-success .alert-link{color:#2b542c}.alert-info{background-color:#d9edf7;border-color:#bcdff1;color:#31708f}.alert-info hr{border-top-color:#a6d5ec}.alert-info .alert-link{color:#245269}.alert-warning{background-color:#fcf8e3;border-color:#faf2cc;color:#8a6d3b}.alert-warning hr{border-top-color:#f7ecb5}.alert-warning .alert-link{color:#66512c}.alert-danger{background-color:#f2dede;border-color:#ebcccc;color:#a94442}.alert-danger hr{border-top-color:#e4b9b9}.alert-danger .alert-link{color:#843534}@-webkit-keyframes progress-bar-stripes{from{background-position:1rem 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:1rem 0}to{background-position:0 0}}.progress{display:-webkit-box;display:-ms-flexbox;display:flex;overflow:hidden;font-size:.75rem;line-height:1rem;text-align:center;background-color:#eceeef;border-radius:.25rem}.progress-bar{height:1rem;color:#fff;background-color:#0275d8}.progress-bar-striped{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-size:1rem 1rem}.progress-bar-animated{-webkit-animation:progress-bar-stripes 1s linear infinite;animation:progress-bar-stripes 1s linear infinite}.media{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.media-body{-webkit-box-flex:1;-ms-flex:1;flex:1}.list-group{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding-left:0;margin-bottom:0}.list-group-item-action{width:100%;color:#464a4c;text-align:inherit}.list-group-item-action .list-group-item-heading{color:#292b2c}.list-group-item-action:focus,.list-group-item-action:hover{color:#464a4c;text-decoration:none;background-color:#f7f7f9}.list-group-item-action:active{color:#292b2c;background-color:#eceeef}.list-group-item{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row wrap;flex-flow:row wrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:.75rem 1.25rem;margin-bottom:-1px;background-color:#fff;border:1px solid rgba(0,0,0,0.125)}.list-group-item:first-child{border-top-right-radius:.25rem;border-top-left-radius:.25rem}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.list-group-item:focus,.list-group-item:hover{text-decoration:none}.list-group-item.disabled,.list-group-item:disabled{color:#636c72;cursor:not-allowed;background-color:#fff}.list-group-item.disabled .list-group-item-heading,.list-group-item:disabled .list-group-item-heading{color:inherit}.list-group-item.disabled .list-group-item-text,.list-group-item:disabled .list-group-item-text{color:#636c72}.list-group-item.active{z-index:2;color:#fff;background-color:#0275d8;border-color:#0275d8}.list-group-item.active .list-group-item-heading,.list-group-item.active .list-group-item-heading>small,.list-group-item.active .list-group-item-heading>.small{color:inherit}.list-group-item.active .list-group-item-text{color:#daeeff}.list-group-flush .list-group-item{border-right:0;border-left:0;border-radius:0}.list-group-flush:first-child .list-group-item:first-child{border-top:0}.list-group-flush:last-child .list-group-item:last-child{border-bottom:0}.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:focus,a.list-group-item-success:hover,button.list-group-item-success:focus,button.list-group-item-success:hover{color:#3c763d;background-color:#d0e9c6}a.list-group-item-success.active,button.list-group-item-success.active{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:focus,a.list-group-item-info:hover,button.list-group-item-info:focus,button.list-group-item-info:hover{color:#31708f;background-color:#c4e3f3}a.list-group-item-info.active,button.list-group-item-info.active{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:focus,a.list-group-item-warning:hover,button.list-group-item-warning:focus,button.list-group-item-warning:hover{color:#8a6d3b;background-color:#faf2cc}a.list-group-item-warning.active,button.list-group-item-warning.active{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:focus,a.list-group-item-danger:hover,button.list-group-item-danger:focus,button.list-group-item-danger:hover{color:#a94442;background-color:#ebcccc}a.list-group-item-danger.active,button.list-group-item-danger.active{color:#fff;background-color:#a94442;border-color:#a94442}.embed-responsive{position:relative;display:block;width:100%;padding:0;overflow:hidden}.embed-responsive::before{display:block;content:""}.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-21by9::before{padding-top:42.8571428571%}.embed-responsive-16by9::before{padding-top:56.25%}.embed-responsive-4by3::before{padding-top:75%}.embed-responsive-1by1::before{padding-top:100%}.close{float:right;font-size:1.5rem;font-weight:bold;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.5}.close:focus,.close:hover{color:#000;text-decoration:none;cursor:pointer;opacity:.75}button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}.modal-open{overflow:hidden}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;display:none;overflow:hidden;outline:0}.modal.fade .modal-dialog{-webkit-transition:-webkit-transform 0.3s ease-out;transition:-webkit-transform 0.3s ease-out;transition:transform 0.3s ease-out;transition:transform 0.3s ease-out, -webkit-transform 0.3s ease-out;-webkit-transform:translate(0, -25%);transform:translate(0, -25%)}.modal.show .modal-dialog{-webkit-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;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,0.2);border-radius:.3rem;outline:0}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding:15px;border-bottom:1px solid #eceeef}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;padding:15px}.modal-footer{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;padding:15px;border-top:1px solid #eceeef}.modal-footer>:not(:first-child){margin-left:.25rem}.modal-footer>:not(:last-child){margin-right:.25rem}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width: 576px){.modal-dialog{max-width:500px;margin:30px auto}.modal-sm{max-width:300px}}@media (min-width: 992px){.modal-lg{max-width:800px}}.tooltip{position:absolute;z-index:1070;display:block;font-family:-apple-system,system-ui,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-style:normal;font-weight:normal;letter-spacing:normal;line-break:auto;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;white-space:normal;word-break:normal;word-spacing:normal;font-size:.875rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:.9}.tooltip.tooltip-top,.tooltip.bs-tether-element-attached-bottom{padding:5px 0;margin-top:-3px}.tooltip.tooltip-top .tooltip-inner::before,.tooltip.bs-tether-element-attached-bottom .tooltip-inner::before{bottom:0;left:50%;margin-left:-5px;content:"";border-width:5px 5px 0;border-top-color:#000}.tooltip.tooltip-right,.tooltip.bs-tether-element-attached-left{padding:0 5px;margin-left:3px}.tooltip.tooltip-right .tooltip-inner::before,.tooltip.bs-tether-element-attached-left .tooltip-inner::before{top:50%;left:0;margin-top:-5px;content:"";border-width:5px 5px 5px 0;border-right-color:#000}.tooltip.tooltip-bottom,.tooltip.bs-tether-element-attached-top{padding:5px 0;margin-top:3px}.tooltip.tooltip-bottom .tooltip-inner::before,.tooltip.bs-tether-element-attached-top .tooltip-inner::before{top:0;left:50%;margin-left:-5px;content:"";border-width:0 5px 5px;border-bottom-color:#000}.tooltip.tooltip-left,.tooltip.bs-tether-element-attached-right{padding:0 5px;margin-left:-3px}.tooltip.tooltip-left .tooltip-inner::before,.tooltip.bs-tether-element-attached-right .tooltip-inner::before{top:50%;right:0;margin-top:-5px;content:"";border-width:5px 0 5px 5px;border-left-color:#000}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.tooltip-inner::before{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.popover{position:absolute;top:0;left:0;z-index:1060;display:block;max-width:276px;padding:1px;font-family:-apple-system,system-ui,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-style:normal;font-weight:normal;letter-spacing:normal;line-break:auto;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;white-space:normal;word-break:normal;word-spacing:normal;font-size:.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,0.2);border-radius:.3rem}.popover.popover-top,.popover.bs-tether-element-attached-bottom{margin-top:-10px}.popover.popover-top::before,.popover.popover-top::after,.popover.bs-tether-element-attached-bottom::before,.popover.bs-tether-element-attached-bottom::after{left:50%;border-bottom-width:0}.popover.popover-top::before,.popover.bs-tether-element-attached-bottom::before{bottom:-11px;margin-left:-11px;border-top-color:rgba(0,0,0,0.25)}.popover.popover-top::after,.popover.bs-tether-element-attached-bottom::after{bottom:-10px;margin-left:-10px;border-top-color:#fff}.popover.popover-right,.popover.bs-tether-element-attached-left{margin-left:10px}.popover.popover-right::before,.popover.popover-right::after,.popover.bs-tether-element-attached-left::before,.popover.bs-tether-element-attached-left::after{top:50%;border-left-width:0}.popover.popover-right::before,.popover.bs-tether-element-attached-left::before{left:-11px;margin-top:-11px;border-right-color:rgba(0,0,0,0.25)}.popover.popover-right::after,.popover.bs-tether-element-attached-left::after{left:-10px;margin-top:-10px;border-right-color:#fff}.popover.popover-bottom,.popover.bs-tether-element-attached-top{margin-top:10px}.popover.popover-bottom::before,.popover.popover-bottom::after,.popover.bs-tether-element-attached-top::before,.popover.bs-tether-element-attached-top::after{left:50%;border-top-width:0}.popover.popover-bottom::before,.popover.bs-tether-element-attached-top::before{top:-11px;margin-left:-11px;border-bottom-color:rgba(0,0,0,0.25)}.popover.popover-bottom::after,.popover.bs-tether-element-attached-top::after{top:-10px;margin-left:-10px;border-bottom-color:#f7f7f7}.popover.popover-bottom .popover-title::before,.popover.bs-tether-element-attached-top .popover-title::before{position:absolute;top:0;left:50%;display:block;width:20px;margin-left:-10px;content:"";border-bottom:1px solid #f7f7f7}.popover.popover-left,.popover.bs-tether-element-attached-right{margin-left:-10px}.popover.popover-left::before,.popover.popover-left::after,.popover.bs-tether-element-attached-right::before,.popover.bs-tether-element-attached-right::after{top:50%;border-right-width:0}.popover.popover-left::before,.popover.bs-tether-element-attached-right::before{right:-11px;margin-top:-11px;border-left-color:rgba(0,0,0,0.25)}.popover.popover-left::after,.popover.bs-tether-element-attached-right::after{right:-10px;margin-top:-10px;border-left-color:#fff}.popover-title{padding:8px 14px;margin-bottom:0;font-size:1rem;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-top-right-radius:calc(.3rem - 1px);border-top-left-radius:calc(.3rem - 1px)}.popover-title:empty{display:none}.popover-content{padding:9px 14px}.popover::before,.popover::after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover::before{content:"";border-width:11px}.popover::after{content:"";border-width:10px}.carousel{position:relative}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-item{position:relative;display:none;width:100%}@media (-webkit-transform-3d){.carousel-item{-webkit-transition:-webkit-transform 0.6s ease-in-out;transition:-webkit-transform 0.6s ease-in-out;transition:transform 0.6s ease-in-out;transition:transform 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-perspective:1000px;perspective:1000px}}@supports ((-webkit-transform: translate3d(0, 0, 0)) or (transform: translate3d(0, 0, 0))){.carousel-item{-webkit-transition:-webkit-transform 0.6s ease-in-out;transition:-webkit-transform 0.6s ease-in-out;transition:transform 0.6s ease-in-out;transition:transform 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-perspective:1000px;perspective:1000px}}.carousel-item.active,.carousel-item-next,.carousel-item-prev{display:-webkit-box;display:-ms-flexbox;display:flex}.carousel-item-next,.carousel-item-prev{position:absolute;top:0}@media (-webkit-transform-3d){.carousel-item-next.carousel-item-left,.carousel-item-prev.carousel-item-right{-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0)}.carousel-item-next,.active.carousel-item-right{-webkit-transform:translate3d(100%, 0, 0);transform:translate3d(100%, 0, 0)}.carousel-item-prev,.active.carousel-item-left{-webkit-transform:translate3d(-100%, 0, 0);transform:translate3d(-100%, 0, 0)}}@supports ((-webkit-transform: translate3d(0, 0, 0)) or (transform: translate3d(0, 0, 0))){.carousel-item-next.carousel-item-left,.carousel-item-prev.carousel-item-right{-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0)}.carousel-item-next,.active.carousel-item-right{-webkit-transform:translate3d(100%, 0, 0);transform:translate3d(100%, 0, 0)}.carousel-item-prev,.active.carousel-item-left{-webkit-transform:translate3d(-100%, 0, 0);transform:translate3d(-100%, 0, 0)}}.carousel-control-prev,.carousel-control-next{position:absolute;top:0;bottom:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:15%;color:#fff;text-align:center;opacity:.5}.carousel-control-prev:focus,.carousel-control-prev:hover,.carousel-control-next:focus,.carousel-control-next:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-prev-icon,.carousel-control-next-icon{display:inline-block;width:20px;height:20px;background:transparent no-repeat center center;background-size:100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3E%3Cpath d='M4 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3E%3C/svg%3E")}.carousel-control-next-icon{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3E%3Cpath d='M1.5 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3E%3C/svg%3E")}.carousel-indicators{position:absolute;right:0;bottom:10px;left:0;z-index:15;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding-left:0;margin-right:15%;margin-left:15%;list-style:none}.carousel-indicators li{position:relative;-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto;max-width:30px;height:3px;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:rgba(255,255,255,0.5)}.carousel-indicators li::before{position:absolute;top:-10px;left:0;display:inline-block;width:100%;height:10px;content:""}.carousel-indicators li::after{position:absolute;bottom:-10px;left:0;display:inline-block;width:100%;height:10px;content:""}.carousel-indicators .active{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}.align-baseline{vertical-align:baseline !important}.align-top{vertical-align:top !important}.align-middle{vertical-align:middle !important}.align-bottom{vertical-align:bottom !important}.align-text-bottom{vertical-align:text-bottom !important}.align-text-top{vertical-align:text-top !important}.bg-faded{background-color:#f7f7f7}.bg-primary{background-color:#0275d8 !important}a.bg-primary:focus,a.bg-primary:hover{background-color:#025aa5 !important}.bg-success{background-color:#5cb85c !important}a.bg-success:focus,a.bg-success:hover{background-color:#449d44 !important}.bg-info{background-color:#5bc0de !important}a.bg-info:focus,a.bg-info:hover{background-color:#31b0d5 !important}.bg-warning{background-color:#f0ad4e !important}a.bg-warning:focus,a.bg-warning:hover{background-color:#ec971f !important}.bg-danger{background-color:#d9534f !important}a.bg-danger:focus,a.bg-danger:hover{background-color:#c9302c !important}.bg-inverse{background-color:#292b2c !important}a.bg-inverse:focus,a.bg-inverse:hover{background-color:#101112 !important}.border-0{border:0 !important}.border-top-0{border-top:0 !important}.border-right-0{border-right:0 !important}.border-bottom-0{border-bottom:0 !important}.border-left-0{border-left:0 !important}.rounded{border-radius:.25rem}.rounded-top{border-top-right-radius:.25rem;border-top-left-radius:.25rem}.rounded-right{border-bottom-right-radius:.25rem;border-top-right-radius:.25rem}.rounded-bottom{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-left{border-bottom-left-radius:.25rem;border-top-left-radius:.25rem}.rounded-circle{border-radius:50%}.rounded-0{border-radius:0}.clearfix::after{display:block;content:"";clear:both}.d-none{display:none !important}.d-inline{display:inline !important}.d-inline-block{display:inline-block !important}.d-block{display:block !important}.d-table{display:table !important}.d-table-cell{display:table-cell !important}.d-flex{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important}.d-inline-flex{display:-webkit-inline-box !important;display:-ms-inline-flexbox !important;display:inline-flex !important}@media (min-width: 576px){.d-sm-none{display:none !important}.d-sm-inline{display:inline !important}.d-sm-inline-block{display:inline-block !important}.d-sm-block{display:block !important}.d-sm-table{display:table !important}.d-sm-table-cell{display:table-cell !important}.d-sm-flex{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important}.d-sm-inline-flex{display:-webkit-inline-box !important;display:-ms-inline-flexbox !important;display:inline-flex !important}}@media (min-width: 768px){.d-md-none{display:none !important}.d-md-inline{display:inline !important}.d-md-inline-block{display:inline-block !important}.d-md-block{display:block !important}.d-md-table{display:table !important}.d-md-table-cell{display:table-cell !important}.d-md-flex{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important}.d-md-inline-flex{display:-webkit-inline-box !important;display:-ms-inline-flexbox !important;display:inline-flex !important}}@media (min-width: 992px){.d-lg-none{display:none !important}.d-lg-inline{display:inline !important}.d-lg-inline-block{display:inline-block !important}.d-lg-block{display:block !important}.d-lg-table{display:table !important}.d-lg-table-cell{display:table-cell !important}.d-lg-flex{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important}.d-lg-inline-flex{display:-webkit-inline-box !important;display:-ms-inline-flexbox !important;display:inline-flex !important}}@media (min-width: 1200px){.d-xl-none{display:none !important}.d-xl-inline{display:inline !important}.d-xl-inline-block{display:inline-block !important}.d-xl-block{display:block !important}.d-xl-table{display:table !important}.d-xl-table-cell{display:table-cell !important}.d-xl-flex{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important}.d-xl-inline-flex{display:-webkit-inline-box !important;display:-ms-inline-flexbox !important;display:inline-flex !important}}.flex-first{-webkit-box-ordinal-group:0;-ms-flex-order:-1;order:-1}.flex-last{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.flex-unordered{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.flex-row{-webkit-box-orient:horizontal !important;-webkit-box-direction:normal !important;-ms-flex-direction:row !important;flex-direction:row !important}.flex-column{-webkit-box-orient:vertical !important;-webkit-box-direction:normal !important;-ms-flex-direction:column !important;flex-direction:column !important}.flex-row-reverse{-webkit-box-orient:horizontal !important;-webkit-box-direction:reverse !important;-ms-flex-direction:row-reverse !important;flex-direction:row-reverse !important}.flex-column-reverse{-webkit-box-orient:vertical !important;-webkit-box-direction:reverse !important;-ms-flex-direction:column-reverse !important;flex-direction:column-reverse !important}.flex-wrap{-ms-flex-wrap:wrap !important;flex-wrap:wrap !important}.flex-nowrap{-ms-flex-wrap:nowrap !important;flex-wrap:nowrap !important}.flex-wrap-reverse{-ms-flex-wrap:wrap-reverse !important;flex-wrap:wrap-reverse !important}.justify-content-start{-webkit-box-pack:start !important;-ms-flex-pack:start !important;justify-content:flex-start !important}.justify-content-end{-webkit-box-pack:end !important;-ms-flex-pack:end !important;justify-content:flex-end !important}.justify-content-center{-webkit-box-pack:center !important;-ms-flex-pack:center !important;justify-content:center !important}.justify-content-between{-webkit-box-pack:justify !important;-ms-flex-pack:justify !important;justify-content:space-between !important}.justify-content-around{-ms-flex-pack:distribute !important;justify-content:space-around !important}.align-items-start{-webkit-box-align:start !important;-ms-flex-align:start !important;align-items:flex-start !important}.align-items-end{-webkit-box-align:end !important;-ms-flex-align:end !important;align-items:flex-end !important}.align-items-center{-webkit-box-align:center !important;-ms-flex-align:center !important;align-items:center !important}.align-items-baseline{-webkit-box-align:baseline !important;-ms-flex-align:baseline !important;align-items:baseline !important}.align-items-stretch{-webkit-box-align:stretch !important;-ms-flex-align:stretch !important;align-items:stretch !important}.align-content-start{-ms-flex-line-pack:start !important;align-content:flex-start !important}.align-content-end{-ms-flex-line-pack:end !important;align-content:flex-end !important}.align-content-center{-ms-flex-line-pack:center !important;align-content:center !important}.align-content-between{-ms-flex-line-pack:justify !important;align-content:space-between !important}.align-content-around{-ms-flex-line-pack:distribute !important;align-content:space-around !important}.align-content-stretch{-ms-flex-line-pack:stretch !important;align-content:stretch !important}.align-self-auto{-ms-flex-item-align:auto !important;-ms-grid-row-align:auto !important;align-self:auto !important}.align-self-start{-ms-flex-item-align:start !important;align-self:flex-start !important}.align-self-end{-ms-flex-item-align:end !important;align-self:flex-end !important}.align-self-center{-ms-flex-item-align:center !important;-ms-grid-row-align:center !important;align-self:center !important}.align-self-baseline{-ms-flex-item-align:baseline !important;align-self:baseline !important}.align-self-stretch{-ms-flex-item-align:stretch !important;-ms-grid-row-align:stretch !important;align-self:stretch !important}@media (min-width: 576px){.flex-sm-first{-webkit-box-ordinal-group:0;-ms-flex-order:-1;order:-1}.flex-sm-last{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.flex-sm-unordered{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.flex-sm-row{-webkit-box-orient:horizontal !important;-webkit-box-direction:normal !important;-ms-flex-direction:row !important;flex-direction:row !important}.flex-sm-column{-webkit-box-orient:vertical !important;-webkit-box-direction:normal !important;-ms-flex-direction:column !important;flex-direction:column !important}.flex-sm-row-reverse{-webkit-box-orient:horizontal !important;-webkit-box-direction:reverse !important;-ms-flex-direction:row-reverse !important;flex-direction:row-reverse !important}.flex-sm-column-reverse{-webkit-box-orient:vertical !important;-webkit-box-direction:reverse !important;-ms-flex-direction:column-reverse !important;flex-direction:column-reverse !important}.flex-sm-wrap{-ms-flex-wrap:wrap !important;flex-wrap:wrap !important}.flex-sm-nowrap{-ms-flex-wrap:nowrap !important;flex-wrap:nowrap !important}.flex-sm-wrap-reverse{-ms-flex-wrap:wrap-reverse !important;flex-wrap:wrap-reverse !important}.justify-content-sm-start{-webkit-box-pack:start !important;-ms-flex-pack:start !important;justify-content:flex-start !important}.justify-content-sm-end{-webkit-box-pack:end !important;-ms-flex-pack:end !important;justify-content:flex-end !important}.justify-content-sm-center{-webkit-box-pack:center !important;-ms-flex-pack:center !important;justify-content:center !important}.justify-content-sm-between{-webkit-box-pack:justify !important;-ms-flex-pack:justify !important;justify-content:space-between !important}.justify-content-sm-around{-ms-flex-pack:distribute !important;justify-content:space-around !important}.align-items-sm-start{-webkit-box-align:start !important;-ms-flex-align:start !important;align-items:flex-start !important}.align-items-sm-end{-webkit-box-align:end !important;-ms-flex-align:end !important;align-items:flex-end !important}.align-items-sm-center{-webkit-box-align:center !important;-ms-flex-align:center !important;align-items:center !important}.align-items-sm-baseline{-webkit-box-align:baseline !important;-ms-flex-align:baseline !important;align-items:baseline !important}.align-items-sm-stretch{-webkit-box-align:stretch !important;-ms-flex-align:stretch !important;align-items:stretch !important}.align-content-sm-start{-ms-flex-line-pack:start !important;align-content:flex-start !important}.align-content-sm-end{-ms-flex-line-pack:end !important;align-content:flex-end !important}.align-content-sm-center{-ms-flex-line-pack:center !important;align-content:center !important}.align-content-sm-between{-ms-flex-line-pack:justify !important;align-content:space-between !important}.align-content-sm-around{-ms-flex-line-pack:distribute !important;align-content:space-around !important}.align-content-sm-stretch{-ms-flex-line-pack:stretch !important;align-content:stretch !important}.align-self-sm-auto{-ms-flex-item-align:auto !important;-ms-grid-row-align:auto !important;align-self:auto !important}.align-self-sm-start{-ms-flex-item-align:start !important;align-self:flex-start !important}.align-self-sm-end{-ms-flex-item-align:end !important;align-self:flex-end !important}.align-self-sm-center{-ms-flex-item-align:center !important;-ms-grid-row-align:center !important;align-self:center !important}.align-self-sm-baseline{-ms-flex-item-align:baseline !important;align-self:baseline !important}.align-self-sm-stretch{-ms-flex-item-align:stretch !important;-ms-grid-row-align:stretch !important;align-self:stretch !important}}@media (min-width: 768px){.flex-md-first{-webkit-box-ordinal-group:0;-ms-flex-order:-1;order:-1}.flex-md-last{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.flex-md-unordered{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.flex-md-row{-webkit-box-orient:horizontal !important;-webkit-box-direction:normal !important;-ms-flex-direction:row !important;flex-direction:row !important}.flex-md-column{-webkit-box-orient:vertical !important;-webkit-box-direction:normal !important;-ms-flex-direction:column !important;flex-direction:column !important}.flex-md-row-reverse{-webkit-box-orient:horizontal !important;-webkit-box-direction:reverse !important;-ms-flex-direction:row-reverse !important;flex-direction:row-reverse !important}.flex-md-column-reverse{-webkit-box-orient:vertical !important;-webkit-box-direction:reverse !important;-ms-flex-direction:column-reverse !important;flex-direction:column-reverse !important}.flex-md-wrap{-ms-flex-wrap:wrap !important;flex-wrap:wrap !important}.flex-md-nowrap{-ms-flex-wrap:nowrap !important;flex-wrap:nowrap !important}.flex-md-wrap-reverse{-ms-flex-wrap:wrap-reverse !important;flex-wrap:wrap-reverse !important}.justify-content-md-start{-webkit-box-pack:start !important;-ms-flex-pack:start !important;justify-content:flex-start !important}.justify-content-md-end{-webkit-box-pack:end !important;-ms-flex-pack:end !important;justify-content:flex-end !important}.justify-content-md-center{-webkit-box-pack:center !important;-ms-flex-pack:center !important;justify-content:center !important}.justify-content-md-between{-webkit-box-pack:justify !important;-ms-flex-pack:justify !important;justify-content:space-between !important}.justify-content-md-around{-ms-flex-pack:distribute !important;justify-content:space-around !important}.align-items-md-start{-webkit-box-align:start !important;-ms-flex-align:start !important;align-items:flex-start !important}.align-items-md-end{-webkit-box-align:end !important;-ms-flex-align:end !important;align-items:flex-end !important}.align-items-md-center{-webkit-box-align:center !important;-ms-flex-align:center !important;align-items:center !important}.align-items-md-baseline{-webkit-box-align:baseline !important;-ms-flex-align:baseline !important;align-items:baseline !important}.align-items-md-stretch{-webkit-box-align:stretch !important;-ms-flex-align:stretch !important;align-items:stretch !important}.align-content-md-start{-ms-flex-line-pack:start !important;align-content:flex-start !important}.align-content-md-end{-ms-flex-line-pack:end !important;align-content:flex-end !important}.align-content-md-center{-ms-flex-line-pack:center !important;align-content:center !important}.align-content-md-between{-ms-flex-line-pack:justify !important;align-content:space-between !important}.align-content-md-around{-ms-flex-line-pack:distribute !important;align-content:space-around !important}.align-content-md-stretch{-ms-flex-line-pack:stretch !important;align-content:stretch !important}.align-self-md-auto{-ms-flex-item-align:auto !important;-ms-grid-row-align:auto !important;align-self:auto !important}.align-self-md-start{-ms-flex-item-align:start !important;align-self:flex-start !important}.align-self-md-end{-ms-flex-item-align:end !important;align-self:flex-end !important}.align-self-md-center{-ms-flex-item-align:center !important;-ms-grid-row-align:center !important;align-self:center !important}.align-self-md-baseline{-ms-flex-item-align:baseline !important;align-self:baseline !important}.align-self-md-stretch{-ms-flex-item-align:stretch !important;-ms-grid-row-align:stretch !important;align-self:stretch !important}}@media (min-width: 992px){.flex-lg-first{-webkit-box-ordinal-group:0;-ms-flex-order:-1;order:-1}.flex-lg-last{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.flex-lg-unordered{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.flex-lg-row{-webkit-box-orient:horizontal !important;-webkit-box-direction:normal !important;-ms-flex-direction:row !important;flex-direction:row !important}.flex-lg-column{-webkit-box-orient:vertical !important;-webkit-box-direction:normal !important;-ms-flex-direction:column !important;flex-direction:column !important}.flex-lg-row-reverse{-webkit-box-orient:horizontal !important;-webkit-box-direction:reverse !important;-ms-flex-direction:row-reverse !important;flex-direction:row-reverse !important}.flex-lg-column-reverse{-webkit-box-orient:vertical !important;-webkit-box-direction:reverse !important;-ms-flex-direction:column-reverse !important;flex-direction:column-reverse !important}.flex-lg-wrap{-ms-flex-wrap:wrap !important;flex-wrap:wrap !important}.flex-lg-nowrap{-ms-flex-wrap:nowrap !important;flex-wrap:nowrap !important}.flex-lg-wrap-reverse{-ms-flex-wrap:wrap-reverse !important;flex-wrap:wrap-reverse !important}.justify-content-lg-start{-webkit-box-pack:start !important;-ms-flex-pack:start !important;justify-content:flex-start !important}.justify-content-lg-end{-webkit-box-pack:end !important;-ms-flex-pack:end !important;justify-content:flex-end !important}.justify-content-lg-center{-webkit-box-pack:center !important;-ms-flex-pack:center !important;justify-content:center !important}.justify-content-lg-between{-webkit-box-pack:justify !important;-ms-flex-pack:justify !important;justify-content:space-between !important}.justify-content-lg-around{-ms-flex-pack:distribute !important;justify-content:space-around !important}.align-items-lg-start{-webkit-box-align:start !important;-ms-flex-align:start !important;align-items:flex-start !important}.align-items-lg-end{-webkit-box-align:end !important;-ms-flex-align:end !important;align-items:flex-end !important}.align-items-lg-center{-webkit-box-align:center !important;-ms-flex-align:center !important;align-items:center !important}.align-items-lg-baseline{-webkit-box-align:baseline !important;-ms-flex-align:baseline !important;align-items:baseline !important}.align-items-lg-stretch{-webkit-box-align:stretch !important;-ms-flex-align:stretch !important;align-items:stretch !important}.align-content-lg-start{-ms-flex-line-pack:start !important;align-content:flex-start !important}.align-content-lg-end{-ms-flex-line-pack:end !important;align-content:flex-end !important}.align-content-lg-center{-ms-flex-line-pack:center !important;align-content:center !important}.align-content-lg-between{-ms-flex-line-pack:justify !important;align-content:space-between !important}.align-content-lg-around{-ms-flex-line-pack:distribute !important;align-content:space-around !important}.align-content-lg-stretch{-ms-flex-line-pack:stretch !important;align-content:stretch !important}.align-self-lg-auto{-ms-flex-item-align:auto !important;-ms-grid-row-align:auto !important;align-self:auto !important}.align-self-lg-start{-ms-flex-item-align:start !important;align-self:flex-start !important}.align-self-lg-end{-ms-flex-item-align:end !important;align-self:flex-end !important}.align-self-lg-center{-ms-flex-item-align:center !important;-ms-grid-row-align:center !important;align-self:center !important}.align-self-lg-baseline{-ms-flex-item-align:baseline !important;align-self:baseline !important}.align-self-lg-stretch{-ms-flex-item-align:stretch !important;-ms-grid-row-align:stretch !important;align-self:stretch !important}}@media (min-width: 1200px){.flex-xl-first{-webkit-box-ordinal-group:0;-ms-flex-order:-1;order:-1}.flex-xl-last{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.flex-xl-unordered{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.flex-xl-row{-webkit-box-orient:horizontal !important;-webkit-box-direction:normal !important;-ms-flex-direction:row !important;flex-direction:row !important}.flex-xl-column{-webkit-box-orient:vertical !important;-webkit-box-direction:normal !important;-ms-flex-direction:column !important;flex-direction:column !important}.flex-xl-row-reverse{-webkit-box-orient:horizontal !important;-webkit-box-direction:reverse !important;-ms-flex-direction:row-reverse !important;flex-direction:row-reverse !important}.flex-xl-column-reverse{-webkit-box-orient:vertical !important;-webkit-box-direction:reverse !important;-ms-flex-direction:column-reverse !important;flex-direction:column-reverse !important}.flex-xl-wrap{-ms-flex-wrap:wrap !important;flex-wrap:wrap !important}.flex-xl-nowrap{-ms-flex-wrap:nowrap !important;flex-wrap:nowrap !important}.flex-xl-wrap-reverse{-ms-flex-wrap:wrap-reverse !important;flex-wrap:wrap-reverse !important}.justify-content-xl-start{-webkit-box-pack:start !important;-ms-flex-pack:start !important;justify-content:flex-start !important}.justify-content-xl-end{-webkit-box-pack:end !important;-ms-flex-pack:end !important;justify-content:flex-end !important}.justify-content-xl-center{-webkit-box-pack:center !important;-ms-flex-pack:center !important;justify-content:center !important}.justify-content-xl-between{-webkit-box-pack:justify !important;-ms-flex-pack:justify !important;justify-content:space-between !important}.justify-content-xl-around{-ms-flex-pack:distribute !important;justify-content:space-around !important}.align-items-xl-start{-webkit-box-align:start !important;-ms-flex-align:start !important;align-items:flex-start !important}.align-items-xl-end{-webkit-box-align:end !important;-ms-flex-align:end !important;align-items:flex-end !important}.align-items-xl-center{-webkit-box-align:center !important;-ms-flex-align:center !important;align-items:center !important}.align-items-xl-baseline{-webkit-box-align:baseline !important;-ms-flex-align:baseline !important;align-items:baseline !important}.align-items-xl-stretch{-webkit-box-align:stretch !important;-ms-flex-align:stretch !important;align-items:stretch !important}.align-content-xl-start{-ms-flex-line-pack:start !important;align-content:flex-start !important}.align-content-xl-end{-ms-flex-line-pack:end !important;align-content:flex-end !important}.align-content-xl-center{-ms-flex-line-pack:center !important;align-content:center !important}.align-content-xl-between{-ms-flex-line-pack:justify !important;align-content:space-between !important}.align-content-xl-around{-ms-flex-line-pack:distribute !important;align-content:space-around !important}.align-content-xl-stretch{-ms-flex-line-pack:stretch !important;align-content:stretch !important}.align-self-xl-auto{-ms-flex-item-align:auto !important;-ms-grid-row-align:auto !important;align-self:auto !important}.align-self-xl-start{-ms-flex-item-align:start !important;align-self:flex-start !important}.align-self-xl-end{-ms-flex-item-align:end !important;align-self:flex-end !important}.align-self-xl-center{-ms-flex-item-align:center !important;-ms-grid-row-align:center !important;align-self:center !important}.align-self-xl-baseline{-ms-flex-item-align:baseline !important;align-self:baseline !important}.align-self-xl-stretch{-ms-flex-item-align:stretch !important;-ms-grid-row-align:stretch !important;align-self:stretch !important}}.float-left{float:left !important}.float-right{float:right !important}.float-none{float:none !important}@media (min-width: 576px){.float-sm-left{float:left !important}.float-sm-right{float:right !important}.float-sm-none{float:none !important}}@media (min-width: 768px){.float-md-left{float:left !important}.float-md-right{float:right !important}.float-md-none{float:none !important}}@media (min-width: 992px){.float-lg-left{float:left !important}.float-lg-right{float:right !important}.float-lg-none{float:none !important}}@media (min-width: 1200px){.float-xl-left{float:left !important}.float-xl-right{float:right !important}.float-xl-none{float:none !important}}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}.sticky-top{position:-webkit-sticky;position:sticky;top:0;z-index:1030}.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}.w-25{width:25% !important}.w-50{width:50% !important}.w-75{width:75% !important}.w-100{width:100% !important}.h-25{height:25% !important}.h-50{height:50% !important}.h-75{height:75% !important}.h-100{height:100% !important}.mw-100{max-width:100% !important}.mh-100{max-height:100% !important}.m-0{margin:0 0 !important}.mt-0{margin-top:0 !important}.mr-0{margin-right:0 !important}.mb-0{margin-bottom:0 !important}.ml-0{margin-left:0 !important}.mx-0{margin-right:0 !important;margin-left:0 !important}.my-0{margin-top:0 !important;margin-bottom:0 !important}.m-1{margin:.25rem .25rem !important}.mt-1{margin-top:.25rem !important}.mr-1{margin-right:.25rem !important}.mb-1{margin-bottom:.25rem !important}.ml-1{margin-left:.25rem !important}.mx-1{margin-right:.25rem !important;margin-left:.25rem !important}.my-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.m-2{margin:.5rem .5rem !important}.mt-2{margin-top:.5rem !important}.mr-2{margin-right:.5rem !important}.mb-2{margin-bottom:.5rem !important}.ml-2{margin-left:.5rem !important}.mx-2{margin-right:.5rem !important;margin-left:.5rem !important}.my-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.m-3{margin:1rem 1rem !important}.mt-3{margin-top:1rem !important}.mr-3{margin-right:1rem !important}.mb-3{margin-bottom:1rem !important}.ml-3{margin-left:1rem !important}.mx-3{margin-right:1rem !important;margin-left:1rem !important}.my-3{margin-top:1rem !important;margin-bottom:1rem !important}.m-4{margin:1.5rem 1.5rem !important}.mt-4{margin-top:1.5rem !important}.mr-4{margin-right:1.5rem !important}.mb-4{margin-bottom:1.5rem !important}.ml-4{margin-left:1.5rem !important}.mx-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.my-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.m-5{margin:3rem 3rem !important}.mt-5{margin-top:3rem !important}.mr-5{margin-right:3rem !important}.mb-5{margin-bottom:3rem !important}.ml-5{margin-left:3rem !important}.mx-5{margin-right:3rem !important;margin-left:3rem !important}.my-5{margin-top:3rem !important;margin-bottom:3rem !important}.p-0{padding:0 0 !important}.pt-0{padding-top:0 !important}.pr-0{padding-right:0 !important}.pb-0{padding-bottom:0 !important}.pl-0{padding-left:0 !important}.px-0{padding-right:0 !important;padding-left:0 !important}.py-0{padding-top:0 !important;padding-bottom:0 !important}.p-1{padding:.25rem .25rem !important}.pt-1{padding-top:.25rem !important}.pr-1{padding-right:.25rem !important}.pb-1{padding-bottom:.25rem !important}.pl-1{padding-left:.25rem !important}.px-1{padding-right:.25rem !important;padding-left:.25rem !important}.py-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.p-2{padding:.5rem .5rem !important}.pt-2{padding-top:.5rem !important}.pr-2{padding-right:.5rem !important}.pb-2{padding-bottom:.5rem !important}.pl-2{padding-left:.5rem !important}.px-2{padding-right:.5rem !important;padding-left:.5rem !important}.py-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.p-3{padding:1rem 1rem !important}.pt-3{padding-top:1rem !important}.pr-3{padding-right:1rem !important}.pb-3{padding-bottom:1rem !important}.pl-3{padding-left:1rem !important}.px-3{padding-right:1rem !important;padding-left:1rem !important}.py-3{padding-top:1rem !important;padding-bottom:1rem !important}.p-4{padding:1.5rem 1.5rem !important}.pt-4{padding-top:1.5rem !important}.pr-4{padding-right:1.5rem !important}.pb-4{padding-bottom:1.5rem !important}.pl-4{padding-left:1.5rem !important}.px-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.py-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.p-5{padding:3rem 3rem !important}.pt-5{padding-top:3rem !important}.pr-5{padding-right:3rem !important}.pb-5{padding-bottom:3rem !important}.pl-5{padding-left:3rem !important}.px-5{padding-right:3rem !important;padding-left:3rem !important}.py-5{padding-top:3rem !important;padding-bottom:3rem !important}.m-auto{margin:auto !important}.mt-auto{margin-top:auto !important}.mr-auto{margin-right:auto !important}.mb-auto{margin-bottom:auto !important}.ml-auto{margin-left:auto !important}.mx-auto{margin-right:auto !important;margin-left:auto !important}.my-auto{margin-top:auto !important;margin-bottom:auto !important}@media (min-width: 576px){.m-sm-0{margin:0 0 !important}.mt-sm-0{margin-top:0 !important}.mr-sm-0{margin-right:0 !important}.mb-sm-0{margin-bottom:0 !important}.ml-sm-0{margin-left:0 !important}.mx-sm-0{margin-right:0 !important;margin-left:0 !important}.my-sm-0{margin-top:0 !important;margin-bottom:0 !important}.m-sm-1{margin:.25rem .25rem !important}.mt-sm-1{margin-top:.25rem !important}.mr-sm-1{margin-right:.25rem !important}.mb-sm-1{margin-bottom:.25rem !important}.ml-sm-1{margin-left:.25rem !important}.mx-sm-1{margin-right:.25rem !important;margin-left:.25rem !important}.my-sm-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.m-sm-2{margin:.5rem .5rem !important}.mt-sm-2{margin-top:.5rem !important}.mr-sm-2{margin-right:.5rem !important}.mb-sm-2{margin-bottom:.5rem !important}.ml-sm-2{margin-left:.5rem !important}.mx-sm-2{margin-right:.5rem !important;margin-left:.5rem !important}.my-sm-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.m-sm-3{margin:1rem 1rem !important}.mt-sm-3{margin-top:1rem !important}.mr-sm-3{margin-right:1rem !important}.mb-sm-3{margin-bottom:1rem !important}.ml-sm-3{margin-left:1rem !important}.mx-sm-3{margin-right:1rem !important;margin-left:1rem !important}.my-sm-3{margin-top:1rem !important;margin-bottom:1rem !important}.m-sm-4{margin:1.5rem 1.5rem !important}.mt-sm-4{margin-top:1.5rem !important}.mr-sm-4{margin-right:1.5rem !important}.mb-sm-4{margin-bottom:1.5rem !important}.ml-sm-4{margin-left:1.5rem !important}.mx-sm-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.my-sm-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.m-sm-5{margin:3rem 3rem !important}.mt-sm-5{margin-top:3rem !important}.mr-sm-5{margin-right:3rem !important}.mb-sm-5{margin-bottom:3rem !important}.ml-sm-5{margin-left:3rem !important}.mx-sm-5{margin-right:3rem !important;margin-left:3rem !important}.my-sm-5{margin-top:3rem !important;margin-bottom:3rem !important}.p-sm-0{padding:0 0 !important}.pt-sm-0{padding-top:0 !important}.pr-sm-0{padding-right:0 !important}.pb-sm-0{padding-bottom:0 !important}.pl-sm-0{padding-left:0 !important}.px-sm-0{padding-right:0 !important;padding-left:0 !important}.py-sm-0{padding-top:0 !important;padding-bottom:0 !important}.p-sm-1{padding:.25rem .25rem !important}.pt-sm-1{padding-top:.25rem !important}.pr-sm-1{padding-right:.25rem !important}.pb-sm-1{padding-bottom:.25rem !important}.pl-sm-1{padding-left:.25rem !important}.px-sm-1{padding-right:.25rem !important;padding-left:.25rem !important}.py-sm-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.p-sm-2{padding:.5rem .5rem !important}.pt-sm-2{padding-top:.5rem !important}.pr-sm-2{padding-right:.5rem !important}.pb-sm-2{padding-bottom:.5rem !important}.pl-sm-2{padding-left:.5rem !important}.px-sm-2{padding-right:.5rem !important;padding-left:.5rem !important}.py-sm-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.p-sm-3{padding:1rem 1rem !important}.pt-sm-3{padding-top:1rem !important}.pr-sm-3{padding-right:1rem !important}.pb-sm-3{padding-bottom:1rem !important}.pl-sm-3{padding-left:1rem !important}.px-sm-3{padding-right:1rem !important;padding-left:1rem !important}.py-sm-3{padding-top:1rem !important;padding-bottom:1rem !important}.p-sm-4{padding:1.5rem 1.5rem !important}.pt-sm-4{padding-top:1.5rem !important}.pr-sm-4{padding-right:1.5rem !important}.pb-sm-4{padding-bottom:1.5rem !important}.pl-sm-4{padding-left:1.5rem !important}.px-sm-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.py-sm-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.p-sm-5{padding:3rem 3rem !important}.pt-sm-5{padding-top:3rem !important}.pr-sm-5{padding-right:3rem !important}.pb-sm-5{padding-bottom:3rem !important}.pl-sm-5{padding-left:3rem !important}.px-sm-5{padding-right:3rem !important;padding-left:3rem !important}.py-sm-5{padding-top:3rem !important;padding-bottom:3rem !important}.m-sm-auto{margin:auto !important}.mt-sm-auto{margin-top:auto !important}.mr-sm-auto{margin-right:auto !important}.mb-sm-auto{margin-bottom:auto !important}.ml-sm-auto{margin-left:auto !important}.mx-sm-auto{margin-right:auto !important;margin-left:auto !important}.my-sm-auto{margin-top:auto !important;margin-bottom:auto !important}}@media (min-width: 768px){.m-md-0{margin:0 0 !important}.mt-md-0{margin-top:0 !important}.mr-md-0{margin-right:0 !important}.mb-md-0{margin-bottom:0 !important}.ml-md-0{margin-left:0 !important}.mx-md-0{margin-right:0 !important;margin-left:0 !important}.my-md-0{margin-top:0 !important;margin-bottom:0 !important}.m-md-1{margin:.25rem .25rem !important}.mt-md-1{margin-top:.25rem !important}.mr-md-1{margin-right:.25rem !important}.mb-md-1{margin-bottom:.25rem !important}.ml-md-1{margin-left:.25rem !important}.mx-md-1{margin-right:.25rem !important;margin-left:.25rem !important}.my-md-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.m-md-2{margin:.5rem .5rem !important}.mt-md-2{margin-top:.5rem !important}.mr-md-2{margin-right:.5rem !important}.mb-md-2{margin-bottom:.5rem !important}.ml-md-2{margin-left:.5rem !important}.mx-md-2{margin-right:.5rem !important;margin-left:.5rem !important}.my-md-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.m-md-3{margin:1rem 1rem !important}.mt-md-3{margin-top:1rem !important}.mr-md-3{margin-right:1rem !important}.mb-md-3{margin-bottom:1rem !important}.ml-md-3{margin-left:1rem !important}.mx-md-3{margin-right:1rem !important;margin-left:1rem !important}.my-md-3{margin-top:1rem !important;margin-bottom:1rem !important}.m-md-4{margin:1.5rem 1.5rem !important}.mt-md-4{margin-top:1.5rem !important}.mr-md-4{margin-right:1.5rem !important}.mb-md-4{margin-bottom:1.5rem !important}.ml-md-4{margin-left:1.5rem !important}.mx-md-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.my-md-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.m-md-5{margin:3rem 3rem !important}.mt-md-5{margin-top:3rem !important}.mr-md-5{margin-right:3rem !important}.mb-md-5{margin-bottom:3rem !important}.ml-md-5{margin-left:3rem !important}.mx-md-5{margin-right:3rem !important;margin-left:3rem !important}.my-md-5{margin-top:3rem !important;margin-bottom:3rem !important}.p-md-0{padding:0 0 !important}.pt-md-0{padding-top:0 !important}.pr-md-0{padding-right:0 !important}.pb-md-0{padding-bottom:0 !important}.pl-md-0{padding-left:0 !important}.px-md-0{padding-right:0 !important;padding-left:0 !important}.py-md-0{padding-top:0 !important;padding-bottom:0 !important}.p-md-1{padding:.25rem .25rem !important}.pt-md-1{padding-top:.25rem !important}.pr-md-1{padding-right:.25rem !important}.pb-md-1{padding-bottom:.25rem !important}.pl-md-1{padding-left:.25rem !important}.px-md-1{padding-right:.25rem !important;padding-left:.25rem !important}.py-md-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.p-md-2{padding:.5rem .5rem !important}.pt-md-2{padding-top:.5rem !important}.pr-md-2{padding-right:.5rem !important}.pb-md-2{padding-bottom:.5rem !important}.pl-md-2{padding-left:.5rem !important}.px-md-2{padding-right:.5rem !important;padding-left:.5rem !important}.py-md-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.p-md-3{padding:1rem 1rem !important}.pt-md-3{padding-top:1rem !important}.pr-md-3{padding-right:1rem !important}.pb-md-3{padding-bottom:1rem !important}.pl-md-3{padding-left:1rem !important}.px-md-3{padding-right:1rem !important;padding-left:1rem !important}.py-md-3{padding-top:1rem !important;padding-bottom:1rem !important}.p-md-4{padding:1.5rem 1.5rem !important}.pt-md-4{padding-top:1.5rem !important}.pr-md-4{padding-right:1.5rem !important}.pb-md-4{padding-bottom:1.5rem !important}.pl-md-4{padding-left:1.5rem !important}.px-md-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.py-md-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.p-md-5{padding:3rem 3rem !important}.pt-md-5{padding-top:3rem !important}.pr-md-5{padding-right:3rem !important}.pb-md-5{padding-bottom:3rem !important}.pl-md-5{padding-left:3rem !important}.px-md-5{padding-right:3rem !important;padding-left:3rem !important}.py-md-5{padding-top:3rem !important;padding-bottom:3rem !important}.m-md-auto{margin:auto !important}.mt-md-auto{margin-top:auto !important}.mr-md-auto{margin-right:auto !important}.mb-md-auto{margin-bottom:auto !important}.ml-md-auto{margin-left:auto !important}.mx-md-auto{margin-right:auto !important;margin-left:auto !important}.my-md-auto{margin-top:auto !important;margin-bottom:auto !important}}@media (min-width: 992px){.m-lg-0{margin:0 0 !important}.mt-lg-0{margin-top:0 !important}.mr-lg-0{margin-right:0 !important}.mb-lg-0{margin-bottom:0 !important}.ml-lg-0{margin-left:0 !important}.mx-lg-0{margin-right:0 !important;margin-left:0 !important}.my-lg-0{margin-top:0 !important;margin-bottom:0 !important}.m-lg-1{margin:.25rem .25rem !important}.mt-lg-1{margin-top:.25rem !important}.mr-lg-1{margin-right:.25rem !important}.mb-lg-1{margin-bottom:.25rem !important}.ml-lg-1{margin-left:.25rem !important}.mx-lg-1{margin-right:.25rem !important;margin-left:.25rem !important}.my-lg-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.m-lg-2{margin:.5rem .5rem !important}.mt-lg-2{margin-top:.5rem !important}.mr-lg-2{margin-right:.5rem !important}.mb-lg-2{margin-bottom:.5rem !important}.ml-lg-2{margin-left:.5rem !important}.mx-lg-2{margin-right:.5rem !important;margin-left:.5rem !important}.my-lg-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.m-lg-3{margin:1rem 1rem !important}.mt-lg-3{margin-top:1rem !important}.mr-lg-3{margin-right:1rem !important}.mb-lg-3{margin-bottom:1rem !important}.ml-lg-3{margin-left:1rem !important}.mx-lg-3{margin-right:1rem !important;margin-left:1rem !important}.my-lg-3{margin-top:1rem !important;margin-bottom:1rem !important}.m-lg-4{margin:1.5rem 1.5rem !important}.mt-lg-4{margin-top:1.5rem !important}.mr-lg-4{margin-right:1.5rem !important}.mb-lg-4{margin-bottom:1.5rem !important}.ml-lg-4{margin-left:1.5rem !important}.mx-lg-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.my-lg-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.m-lg-5{margin:3rem 3rem !important}.mt-lg-5{margin-top:3rem !important}.mr-lg-5{margin-right:3rem !important}.mb-lg-5{margin-bottom:3rem !important}.ml-lg-5{margin-left:3rem !important}.mx-lg-5{margin-right:3rem !important;margin-left:3rem !important}.my-lg-5{margin-top:3rem !important;margin-bottom:3rem !important}.p-lg-0{padding:0 0 !important}.pt-lg-0{padding-top:0 !important}.pr-lg-0{padding-right:0 !important}.pb-lg-0{padding-bottom:0 !important}.pl-lg-0{padding-left:0 !important}.px-lg-0{padding-right:0 !important;padding-left:0 !important}.py-lg-0{padding-top:0 !important;padding-bottom:0 !important}.p-lg-1{padding:.25rem .25rem !important}.pt-lg-1{padding-top:.25rem !important}.pr-lg-1{padding-right:.25rem !important}.pb-lg-1{padding-bottom:.25rem !important}.pl-lg-1{padding-left:.25rem !important}.px-lg-1{padding-right:.25rem !important;padding-left:.25rem !important}.py-lg-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.p-lg-2{padding:.5rem .5rem !important}.pt-lg-2{padding-top:.5rem !important}.pr-lg-2{padding-right:.5rem !important}.pb-lg-2{padding-bottom:.5rem !important}.pl-lg-2{padding-left:.5rem !important}.px-lg-2{padding-right:.5rem !important;padding-left:.5rem !important}.py-lg-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.p-lg-3{padding:1rem 1rem !important}.pt-lg-3{padding-top:1rem !important}.pr-lg-3{padding-right:1rem !important}.pb-lg-3{padding-bottom:1rem !important}.pl-lg-3{padding-left:1rem !important}.px-lg-3{padding-right:1rem !important;padding-left:1rem !important}.py-lg-3{padding-top:1rem !important;padding-bottom:1rem !important}.p-lg-4{padding:1.5rem 1.5rem !important}.pt-lg-4{padding-top:1.5rem !important}.pr-lg-4{padding-right:1.5rem !important}.pb-lg-4{padding-bottom:1.5rem !important}.pl-lg-4{padding-left:1.5rem !important}.px-lg-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.py-lg-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.p-lg-5{padding:3rem 3rem !important}.pt-lg-5{padding-top:3rem !important}.pr-lg-5{padding-right:3rem !important}.pb-lg-5{padding-bottom:3rem !important}.pl-lg-5{padding-left:3rem !important}.px-lg-5{padding-right:3rem !important;padding-left:3rem !important}.py-lg-5{padding-top:3rem !important;padding-bottom:3rem !important}.m-lg-auto{margin:auto !important}.mt-lg-auto{margin-top:auto !important}.mr-lg-auto{margin-right:auto !important}.mb-lg-auto{margin-bottom:auto !important}.ml-lg-auto{margin-left:auto !important}.mx-lg-auto{margin-right:auto !important;margin-left:auto !important}.my-lg-auto{margin-top:auto !important;margin-bottom:auto !important}}@media (min-width: 1200px){.m-xl-0{margin:0 0 !important}.mt-xl-0{margin-top:0 !important}.mr-xl-0{margin-right:0 !important}.mb-xl-0{margin-bottom:0 !important}.ml-xl-0{margin-left:0 !important}.mx-xl-0{margin-right:0 !important;margin-left:0 !important}.my-xl-0{margin-top:0 !important;margin-bottom:0 !important}.m-xl-1{margin:.25rem .25rem !important}.mt-xl-1{margin-top:.25rem !important}.mr-xl-1{margin-right:.25rem !important}.mb-xl-1{margin-bottom:.25rem !important}.ml-xl-1{margin-left:.25rem !important}.mx-xl-1{margin-right:.25rem !important;margin-left:.25rem !important}.my-xl-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.m-xl-2{margin:.5rem .5rem !important}.mt-xl-2{margin-top:.5rem !important}.mr-xl-2{margin-right:.5rem !important}.mb-xl-2{margin-bottom:.5rem !important}.ml-xl-2{margin-left:.5rem !important}.mx-xl-2{margin-right:.5rem !important;margin-left:.5rem !important}.my-xl-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.m-xl-3{margin:1rem 1rem !important}.mt-xl-3{margin-top:1rem !important}.mr-xl-3{margin-right:1rem !important}.mb-xl-3{margin-bottom:1rem !important}.ml-xl-3{margin-left:1rem !important}.mx-xl-3{margin-right:1rem !important;margin-left:1rem !important}.my-xl-3{margin-top:1rem !important;margin-bottom:1rem !important}.m-xl-4{margin:1.5rem 1.5rem !important}.mt-xl-4{margin-top:1.5rem !important}.mr-xl-4{margin-right:1.5rem !important}.mb-xl-4{margin-bottom:1.5rem !important}.ml-xl-4{margin-left:1.5rem !important}.mx-xl-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.my-xl-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.m-xl-5{margin:3rem 3rem !important}.mt-xl-5{margin-top:3rem !important}.mr-xl-5{margin-right:3rem !important}.mb-xl-5{margin-bottom:3rem !important}.ml-xl-5{margin-left:3rem !important}.mx-xl-5{margin-right:3rem !important;margin-left:3rem !important}.my-xl-5{margin-top:3rem !important;margin-bottom:3rem !important}.p-xl-0{padding:0 0 !important}.pt-xl-0{padding-top:0 !important}.pr-xl-0{padding-right:0 !important}.pb-xl-0{padding-bottom:0 !important}.pl-xl-0{padding-left:0 !important}.px-xl-0{padding-right:0 !important;padding-left:0 !important}.py-xl-0{padding-top:0 !important;padding-bottom:0 !important}.p-xl-1{padding:.25rem .25rem !important}.pt-xl-1{padding-top:.25rem !important}.pr-xl-1{padding-right:.25rem !important}.pb-xl-1{padding-bottom:.25rem !important}.pl-xl-1{padding-left:.25rem !important}.px-xl-1{padding-right:.25rem !important;padding-left:.25rem !important}.py-xl-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.p-xl-2{padding:.5rem .5rem !important}.pt-xl-2{padding-top:.5rem !important}.pr-xl-2{padding-right:.5rem !important}.pb-xl-2{padding-bottom:.5rem !important}.pl-xl-2{padding-left:.5rem !important}.px-xl-2{padding-right:.5rem !important;padding-left:.5rem !important}.py-xl-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.p-xl-3{padding:1rem 1rem !important}.pt-xl-3{padding-top:1rem !important}.pr-xl-3{padding-right:1rem !important}.pb-xl-3{padding-bottom:1rem !important}.pl-xl-3{padding-left:1rem !important}.px-xl-3{padding-right:1rem !important;padding-left:1rem !important}.py-xl-3{padding-top:1rem !important;padding-bottom:1rem !important}.p-xl-4{padding:1.5rem 1.5rem !important}.pt-xl-4{padding-top:1.5rem !important}.pr-xl-4{padding-right:1.5rem !important}.pb-xl-4{padding-bottom:1.5rem !important}.pl-xl-4{padding-left:1.5rem !important}.px-xl-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.py-xl-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.p-xl-5{padding:3rem 3rem !important}.pt-xl-5{padding-top:3rem !important}.pr-xl-5{padding-right:3rem !important}.pb-xl-5{padding-bottom:3rem !important}.pl-xl-5{padding-left:3rem !important}.px-xl-5{padding-right:3rem !important;padding-left:3rem !important}.py-xl-5{padding-top:3rem !important;padding-bottom:3rem !important}.m-xl-auto{margin:auto !important}.mt-xl-auto{margin-top:auto !important}.mr-xl-auto{margin-right:auto !important}.mb-xl-auto{margin-bottom:auto !important}.ml-xl-auto{margin-left:auto !important}.mx-xl-auto{margin-right:auto !important;margin-left:auto !important}.my-xl-auto{margin-top:auto !important;margin-bottom:auto !important}}.text-justify{text-align:justify !important}.text-nowrap{white-space:nowrap !important}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-left{text-align:left !important}.text-right{text-align:right !important}.text-center{text-align:center !important}@media (min-width: 576px){.text-sm-left{text-align:left !important}.text-sm-right{text-align:right !important}.text-sm-center{text-align:center !important}}@media (min-width: 768px){.text-md-left{text-align:left !important}.text-md-right{text-align:right !important}.text-md-center{text-align:center !important}}@media (min-width: 992px){.text-lg-left{text-align:left !important}.text-lg-right{text-align:right !important}.text-lg-center{text-align:center !important}}@media (min-width: 1200px){.text-xl-left{text-align:left !important}.text-xl-right{text-align:right !important}.text-xl-center{text-align:center !important}}.text-lowercase{text-transform:lowercase !important}.text-uppercase{text-transform:uppercase !important}.text-capitalize{text-transform:capitalize !important}.font-weight-normal{font-weight:normal}.font-weight-bold{font-weight:bold}.font-italic{font-style:italic}.text-white{color:#fff !important}.text-muted{color:#636c72 !important}a.text-muted:focus,a.text-muted:hover{color:#4b5257 !important}.text-primary{color:#0275d8 !important}a.text-primary:focus,a.text-primary:hover{color:#025aa5 !important}.text-success{color:#5cb85c !important}a.text-success:focus,a.text-success:hover{color:#449d44 !important}.text-info{color:#5bc0de !important}a.text-info:focus,a.text-info:hover{color:#31b0d5 !important}.text-warning{color:#f0ad4e !important}a.text-warning:focus,a.text-warning:hover{color:#ec971f !important}.text-danger{color:#d9534f !important}a.text-danger:focus,a.text-danger:hover{color:#c9302c !important}.text-gray-dark{color:#292b2c !important}a.text-gray-dark:focus,a.text-gray-dark:hover{color:#101112 !important}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.invisible{visibility:hidden !important}.hidden-xs-up{display:none !important}@media (max-width: 575px){.hidden-xs-down{display:none !important}}@media (min-width: 576px){.hidden-sm-up{display:none !important}}@media (max-width: 767px){.hidden-sm-down{display:none !important}}@media (min-width: 768px){.hidden-md-up{display:none !important}}@media (max-width: 991px){.hidden-md-down{display:none !important}}@media (min-width: 992px){.hidden-lg-up{display:none !important}}@media (max-width: 1199px){.hidden-lg-down{display:none !important}}@media (min-width: 1200px){.hidden-xl-up{display:none !important}}.hidden-xl-down{display:none !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}}/*! + * 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.3333333333em;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.2857142857em;text-align:center}.fa-ul{padding-left:0;margin-left:2.1428571429em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.1428571429em;width:2.1428571429em;top:.1428571429em;text-align:center}.fa-li.fa-lg{left:-1.8571428571em}.fa-border{padding:.2em .25em .15em;border:solid 0.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);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-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);transform:scale(1, -1)}:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-flip-horizontal,:root .fa-flip-vertical{-webkit-filter:none;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:""}.fa-music:before{content:""}.fa-search:before{content:""}.fa-envelope-o:before{content:""}.fa-heart:before{content:""}.fa-star:before{content:""}.fa-star-o:before{content:""}.fa-user:before{content:""}.fa-film:before{content:""}.fa-th-large:before{content:""}.fa-th:before{content:""}.fa-th-list:before{content:""}.fa-check:before{content:""}.fa-remove:before,.fa-close:before,.fa-times:before{content:""}.fa-search-plus:before{content:""}.fa-search-minus:before{content:""}.fa-power-off:before{content:""}.fa-signal:before{content:""}.fa-gear:before,.fa-cog:before{content:""}.fa-trash-o:before{content:""}.fa-home:before{content:""}.fa-file-o:before{content:""}.fa-clock-o:before{content:""}.fa-road:before{content:""}.fa-download:before{content:""}.fa-arrow-circle-o-down:before{content:""}.fa-arrow-circle-o-up:before{content:""}.fa-inbox:before{content:""}.fa-play-circle-o:before{content:""}.fa-rotate-right:before,.fa-repeat:before{content:""}.fa-refresh:before{content:""}.fa-list-alt:before{content:""}.fa-lock:before{content:""}.fa-flag:before{content:""}.fa-headphones:before{content:""}.fa-volume-off:before{content:""}.fa-volume-down:before{content:""}.fa-volume-up:before{content:""}.fa-qrcode:before{content:""}.fa-barcode:before{content:""}.fa-tag:before{content:""}.fa-tags:before{content:""}.fa-book:before{content:""}.fa-bookmark:before{content:""}.fa-print:before{content:""}.fa-camera:before{content:""}.fa-font:before{content:""}.fa-bold:before{content:""}.fa-italic:before{content:""}.fa-text-height:before{content:""}.fa-text-width:before{content:""}.fa-align-left:before{content:""}.fa-align-center:before{content:""}.fa-align-right:before{content:""}.fa-align-justify:before{content:""}.fa-list:before{content:""}.fa-dedent:before,.fa-outdent:before{content:""}.fa-indent:before{content:""}.fa-video-camera:before{content:""}.fa-photo:before,.fa-image:before,.fa-picture-o:before{content:""}.fa-pencil:before{content:""}.fa-map-marker:before{content:""}.fa-adjust:before{content:""}.fa-tint:before{content:""}.fa-edit:before,.fa-pencil-square-o:before{content:""}.fa-share-square-o:before{content:""}.fa-check-square-o:before{content:""}.fa-arrows:before{content:""}.fa-step-backward:before{content:""}.fa-fast-backward:before{content:""}.fa-backward:before{content:""}.fa-play:before{content:""}.fa-pause:before{content:""}.fa-stop:before{content:""}.fa-forward:before{content:""}.fa-fast-forward:before{content:""}.fa-step-forward:before{content:""}.fa-eject:before{content:""}.fa-chevron-left:before{content:""}.fa-chevron-right:before{content:""}.fa-plus-circle:before{content:""}.fa-minus-circle:before{content:""}.fa-times-circle:before{content:""}.fa-check-circle:before{content:""}.fa-question-circle:before{content:""}.fa-info-circle:before{content:""}.fa-crosshairs:before{content:""}.fa-times-circle-o:before{content:""}.fa-check-circle-o:before{content:""}.fa-ban:before{content:""}.fa-arrow-left:before{content:""}.fa-arrow-right:before{content:""}.fa-arrow-up:before{content:""}.fa-arrow-down:before{content:""}.fa-mail-forward:before,.fa-share:before{content:""}.fa-expand:before{content:""}.fa-compress:before{content:""}.fa-plus:before{content:""}.fa-minus:before{content:""}.fa-asterisk:before{content:""}.fa-exclamation-circle:before{content:""}.fa-gift:before{content:""}.fa-leaf:before{content:""}.fa-fire:before{content:""}.fa-eye:before{content:""}.fa-eye-slash:before{content:""}.fa-warning:before,.fa-exclamation-triangle:before{content:""}.fa-plane:before{content:""}.fa-calendar:before{content:""}.fa-random:before{content:""}.fa-comment:before{content:""}.fa-magnet:before{content:""}.fa-chevron-up:before{content:""}.fa-chevron-down:before{content:""}.fa-retweet:before{content:""}.fa-shopping-cart:before{content:""}.fa-folder:before{content:""}.fa-folder-open:before{content:""}.fa-arrows-v:before{content:""}.fa-arrows-h:before{content:""}.fa-bar-chart-o:before,.fa-bar-chart:before{content:""}.fa-twitter-square:before{content:""}.fa-facebook-square:before{content:""}.fa-camera-retro:before{content:""}.fa-key:before{content:""}.fa-gears:before,.fa-cogs:before{content:""}.fa-comments:before{content:""}.fa-thumbs-o-up:before{content:""}.fa-thumbs-o-down:before{content:""}.fa-star-half:before{content:""}.fa-heart-o:before{content:""}.fa-sign-out:before{content:""}.fa-linkedin-square:before{content:""}.fa-thumb-tack:before{content:""}.fa-external-link:before{content:""}.fa-sign-in:before{content:""}.fa-trophy:before{content:""}.fa-github-square:before{content:""}.fa-upload:before{content:""}.fa-lemon-o:before{content:""}.fa-phone:before{content:""}.fa-square-o:before{content:""}.fa-bookmark-o:before{content:""}.fa-phone-square:before{content:""}.fa-twitter:before{content:""}.fa-facebook-f:before,.fa-facebook:before{content:""}.fa-github:before{content:""}.fa-unlock:before{content:""}.fa-credit-card:before{content:""}.fa-feed:before,.fa-rss:before{content:""}.fa-hdd-o:before{content:""}.fa-bullhorn:before{content:""}.fa-bell:before{content:""}.fa-certificate:before{content:""}.fa-hand-o-right:before{content:""}.fa-hand-o-left:before{content:""}.fa-hand-o-up:before{content:""}.fa-hand-o-down:before{content:""}.fa-arrow-circle-left:before{content:""}.fa-arrow-circle-right:before{content:""}.fa-arrow-circle-up:before{content:""}.fa-arrow-circle-down:before{content:""}.fa-globe:before{content:""}.fa-wrench:before{content:""}.fa-tasks:before{content:""}.fa-filter:before{content:""}.fa-briefcase:before{content:""}.fa-arrows-alt:before{content:""}.fa-group:before,.fa-users:before{content:""}.fa-chain:before,.fa-link:before{content:""}.fa-cloud:before{content:""}.fa-flask:before{content:""}.fa-cut:before,.fa-scissors:before{content:""}.fa-copy:before,.fa-files-o:before{content:""}.fa-paperclip:before{content:""}.fa-save:before,.fa-floppy-o:before{content:""}.fa-square:before{content:""}.fa-navicon:before,.fa-reorder:before,.fa-bars:before{content:""}.fa-list-ul:before{content:""}.fa-list-ol:before{content:""}.fa-strikethrough:before{content:""}.fa-underline:before{content:""}.fa-table:before{content:""}.fa-magic:before{content:""}.fa-truck:before{content:""}.fa-pinterest:before{content:""}.fa-pinterest-square:before{content:""}.fa-google-plus-square:before{content:""}.fa-google-plus:before{content:""}.fa-money:before{content:""}.fa-caret-down:before{content:""}.fa-caret-up:before{content:""}.fa-caret-left:before{content:""}.fa-caret-right:before{content:""}.fa-columns:before{content:""}.fa-unsorted:before,.fa-sort:before{content:""}.fa-sort-down:before,.fa-sort-desc:before{content:""}.fa-sort-up:before,.fa-sort-asc:before{content:""}.fa-envelope:before{content:""}.fa-linkedin:before{content:""}.fa-rotate-left:before,.fa-undo:before{content:""}.fa-legal:before,.fa-gavel:before{content:""}.fa-dashboard:before,.fa-tachometer:before{content:""}.fa-comment-o:before{content:""}.fa-comments-o:before{content:""}.fa-flash:before,.fa-bolt:before{content:""}.fa-sitemap:before{content:""}.fa-umbrella:before{content:""}.fa-paste:before,.fa-clipboard:before{content:""}.fa-lightbulb-o:before{content:""}.fa-exchange:before{content:""}.fa-cloud-download:before{content:""}.fa-cloud-upload:before{content:""}.fa-user-md:before{content:""}.fa-stethoscope:before{content:""}.fa-suitcase:before{content:""}.fa-bell-o:before{content:""}.fa-coffee:before{content:""}.fa-cutlery:before{content:""}.fa-file-text-o:before{content:""}.fa-building-o:before{content:""}.fa-hospital-o:before{content:""}.fa-ambulance:before{content:""}.fa-medkit:before{content:""}.fa-fighter-jet:before{content:""}.fa-beer:before{content:""}.fa-h-square:before{content:""}.fa-plus-square:before{content:""}.fa-angle-double-left:before{content:""}.fa-angle-double-right:before{content:""}.fa-angle-double-up:before{content:""}.fa-angle-double-down:before{content:""}.fa-angle-left:before{content:""}.fa-angle-right:before{content:""}.fa-angle-up:before{content:""}.fa-angle-down:before{content:""}.fa-desktop:before{content:""}.fa-laptop:before{content:""}.fa-tablet:before{content:""}.fa-mobile-phone:before,.fa-mobile:before{content:""}.fa-circle-o:before{content:""}.fa-quote-left:before{content:""}.fa-quote-right:before{content:""}.fa-spinner:before{content:""}.fa-circle:before{content:""}.fa-mail-reply:before,.fa-reply:before{content:""}.fa-github-alt:before{content:""}.fa-folder-o:before{content:""}.fa-folder-open-o:before{content:""}.fa-smile-o:before{content:""}.fa-frown-o:before{content:""}.fa-meh-o:before{content:""}.fa-gamepad:before{content:""}.fa-keyboard-o:before{content:""}.fa-flag-o:before{content:""}.fa-flag-checkered:before{content:""}.fa-terminal:before{content:""}.fa-code:before{content:""}.fa-mail-reply-all:before,.fa-reply-all:before{content:""}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:""}.fa-location-arrow:before{content:""}.fa-crop:before{content:""}.fa-code-fork:before{content:""}.fa-unlink:before,.fa-chain-broken:before{content:""}.fa-question:before{content:""}.fa-info:before{content:""}.fa-exclamation:before{content:""}.fa-superscript:before{content:""}.fa-subscript:before{content:""}.fa-eraser:before{content:""}.fa-puzzle-piece:before{content:""}.fa-microphone:before{content:""}.fa-microphone-slash:before{content:""}.fa-shield:before{content:""}.fa-calendar-o:before{content:""}.fa-fire-extinguisher:before{content:""}.fa-rocket:before{content:""}.fa-maxcdn:before{content:""}.fa-chevron-circle-left:before{content:""}.fa-chevron-circle-right:before{content:""}.fa-chevron-circle-up:before{content:""}.fa-chevron-circle-down:before{content:""}.fa-html5:before{content:""}.fa-css3:before{content:""}.fa-anchor:before{content:""}.fa-unlock-alt:before{content:""}.fa-bullseye:before{content:""}.fa-ellipsis-h:before{content:""}.fa-ellipsis-v:before{content:""}.fa-rss-square:before{content:""}.fa-play-circle:before{content:""}.fa-ticket:before{content:""}.fa-minus-square:before{content:""}.fa-minus-square-o:before{content:""}.fa-level-up:before{content:""}.fa-level-down:before{content:""}.fa-check-square:before{content:""}.fa-pencil-square:before{content:""}.fa-external-link-square:before{content:""}.fa-share-square:before{content:""}.fa-compass:before{content:""}.fa-toggle-down:before,.fa-caret-square-o-down:before{content:""}.fa-toggle-up:before,.fa-caret-square-o-up:before{content:""}.fa-toggle-right:before,.fa-caret-square-o-right:before{content:""}.fa-euro:before,.fa-eur:before{content:""}.fa-gbp:before{content:""}.fa-dollar:before,.fa-usd:before{content:""}.fa-rupee:before,.fa-inr:before{content:""}.fa-cny:before,.fa-rmb:before,.fa-yen:before,.fa-jpy:before{content:""}.fa-ruble:before,.fa-rouble:before,.fa-rub:before{content:""}.fa-won:before,.fa-krw:before{content:""}.fa-bitcoin:before,.fa-btc:before{content:""}.fa-file:before{content:""}.fa-file-text:before{content:""}.fa-sort-alpha-asc:before{content:""}.fa-sort-alpha-desc:before{content:""}.fa-sort-amount-asc:before{content:""}.fa-sort-amount-desc:before{content:""}.fa-sort-numeric-asc:before{content:""}.fa-sort-numeric-desc:before{content:""}.fa-thumbs-up:before{content:""}.fa-thumbs-down:before{content:""}.fa-youtube-square:before{content:""}.fa-youtube:before{content:""}.fa-xing:before{content:""}.fa-xing-square:before{content:""}.fa-youtube-play:before{content:""}.fa-dropbox:before{content:""}.fa-stack-overflow:before{content:""}.fa-instagram:before{content:""}.fa-flickr:before{content:""}.fa-adn:before{content:""}.fa-bitbucket:before{content:""}.fa-bitbucket-square:before{content:""}.fa-tumblr:before{content:""}.fa-tumblr-square:before{content:""}.fa-long-arrow-down:before{content:""}.fa-long-arrow-up:before{content:""}.fa-long-arrow-left:before{content:""}.fa-long-arrow-right:before{content:""}.fa-apple:before{content:""}.fa-windows:before{content:""}.fa-android:before{content:""}.fa-linux:before{content:""}.fa-dribbble:before{content:""}.fa-skype:before{content:""}.fa-foursquare:before{content:""}.fa-trello:before{content:""}.fa-female:before{content:""}.fa-male:before{content:""}.fa-gittip:before,.fa-gratipay:before{content:""}.fa-sun-o:before{content:""}.fa-moon-o:before{content:""}.fa-archive:before{content:""}.fa-bug:before{content:""}.fa-vk:before{content:""}.fa-weibo:before{content:""}.fa-renren:before{content:""}.fa-pagelines:before{content:""}.fa-stack-exchange:before{content:""}.fa-arrow-circle-o-right:before{content:""}.fa-arrow-circle-o-left:before{content:""}.fa-toggle-left:before,.fa-caret-square-o-left:before{content:""}.fa-dot-circle-o:before{content:""}.fa-wheelchair:before{content:""}.fa-vimeo-square:before{content:""}.fa-turkish-lira:before,.fa-try:before{content:""}.fa-plus-square-o:before{content:""}.fa-space-shuttle:before{content:""}.fa-slack:before{content:""}.fa-envelope-square:before{content:""}.fa-wordpress:before{content:""}.fa-openid:before{content:""}.fa-institution:before,.fa-bank:before,.fa-university:before{content:""}.fa-mortar-board:before,.fa-graduation-cap:before{content:""}.fa-yahoo:before{content:""}.fa-google:before{content:""}.fa-reddit:before{content:""}.fa-reddit-square:before{content:""}.fa-stumbleupon-circle:before{content:""}.fa-stumbleupon:before{content:""}.fa-delicious:before{content:""}.fa-digg:before{content:""}.fa-pied-piper-pp:before{content:""}.fa-pied-piper-alt:before{content:""}.fa-drupal:before{content:""}.fa-joomla:before{content:""}.fa-language:before{content:""}.fa-fax:before{content:""}.fa-building:before{content:""}.fa-child:before{content:""}.fa-paw:before{content:""}.fa-spoon:before{content:""}.fa-cube:before{content:""}.fa-cubes:before{content:""}.fa-behance:before{content:""}.fa-behance-square:before{content:""}.fa-steam:before{content:""}.fa-steam-square:before{content:""}.fa-recycle:before{content:""}.fa-automobile:before,.fa-car:before{content:""}.fa-cab:before,.fa-taxi:before{content:""}.fa-tree:before{content:""}.fa-spotify:before{content:""}.fa-deviantart:before{content:""}.fa-soundcloud:before{content:""}.fa-database:before{content:""}.fa-file-pdf-o:before{content:""}.fa-file-word-o:before{content:""}.fa-file-excel-o:before{content:""}.fa-file-powerpoint-o:before{content:""}.fa-file-photo-o:before,.fa-file-picture-o:before,.fa-file-image-o:before{content:""}.fa-file-zip-o:before,.fa-file-archive-o:before{content:""}.fa-file-sound-o:before,.fa-file-audio-o:before{content:""}.fa-file-movie-o:before,.fa-file-video-o:before{content:""}.fa-file-code-o:before{content:""}.fa-vine:before{content:""}.fa-codepen:before{content:""}.fa-jsfiddle:before{content:""}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-saver:before,.fa-support:before,.fa-life-ring:before{content:""}.fa-circle-o-notch:before{content:""}.fa-ra:before,.fa-resistance:before,.fa-rebel:before{content:""}.fa-ge:before,.fa-empire:before{content:""}.fa-git-square:before{content:""}.fa-git:before{content:""}.fa-y-combinator-square:before,.fa-yc-square:before,.fa-hacker-news:before{content:""}.fa-tencent-weibo:before{content:""}.fa-qq:before{content:""}.fa-wechat:before,.fa-weixin:before{content:""}.fa-send:before,.fa-paper-plane:before{content:""}.fa-send-o:before,.fa-paper-plane-o:before{content:""}.fa-history:before{content:""}.fa-circle-thin:before{content:""}.fa-header:before{content:""}.fa-paragraph:before{content:""}.fa-sliders:before{content:""}.fa-share-alt:before{content:""}.fa-share-alt-square:before{content:""}.fa-bomb:before{content:""}.fa-soccer-ball-o:before,.fa-futbol-o:before{content:""}.fa-tty:before{content:""}.fa-binoculars:before{content:""}.fa-plug:before{content:""}.fa-slideshare:before{content:""}.fa-twitch:before{content:""}.fa-yelp:before{content:""}.fa-newspaper-o:before{content:""}.fa-wifi:before{content:""}.fa-calculator:before{content:""}.fa-paypal:before{content:""}.fa-google-wallet:before{content:""}.fa-cc-visa:before{content:""}.fa-cc-mastercard:before{content:""}.fa-cc-discover:before{content:""}.fa-cc-amex:before{content:""}.fa-cc-paypal:before{content:""}.fa-cc-stripe:before{content:""}.fa-bell-slash:before{content:""}.fa-bell-slash-o:before{content:""}.fa-trash:before{content:""}.fa-copyright:before{content:""}.fa-at:before{content:""}.fa-eyedropper:before{content:""}.fa-paint-brush:before{content:""}.fa-birthday-cake:before{content:""}.fa-area-chart:before{content:""}.fa-pie-chart:before{content:""}.fa-line-chart:before{content:""}.fa-lastfm:before{content:""}.fa-lastfm-square:before{content:""}.fa-toggle-off:before{content:""}.fa-toggle-on:before{content:""}.fa-bicycle:before{content:""}.fa-bus:before{content:""}.fa-ioxhost:before{content:""}.fa-angellist:before{content:""}.fa-cc:before{content:""}.fa-shekel:before,.fa-sheqel:before,.fa-ils:before{content:""}.fa-meanpath:before{content:""}.fa-buysellads:before{content:""}.fa-connectdevelop:before{content:""}.fa-dashcube:before{content:""}.fa-forumbee:before{content:""}.fa-leanpub:before{content:""}.fa-sellsy:before{content:""}.fa-shirtsinbulk:before{content:""}.fa-simplybuilt:before{content:""}.fa-skyatlas:before{content:""}.fa-cart-plus:before{content:""}.fa-cart-arrow-down:before{content:""}.fa-diamond:before{content:""}.fa-ship:before{content:""}.fa-user-secret:before{content:""}.fa-motorcycle:before{content:""}.fa-street-view:before{content:""}.fa-heartbeat:before{content:""}.fa-venus:before{content:""}.fa-mars:before{content:""}.fa-mercury:before{content:""}.fa-intersex:before,.fa-transgender:before{content:""}.fa-transgender-alt:before{content:""}.fa-venus-double:before{content:""}.fa-mars-double:before{content:""}.fa-venus-mars:before{content:""}.fa-mars-stroke:before{content:""}.fa-mars-stroke-v:before{content:""}.fa-mars-stroke-h:before{content:""}.fa-neuter:before{content:""}.fa-genderless:before{content:""}.fa-facebook-official:before{content:""}.fa-pinterest-p:before{content:""}.fa-whatsapp:before{content:""}.fa-server:before{content:""}.fa-user-plus:before{content:""}.fa-user-times:before{content:""}.fa-hotel:before,.fa-bed:before{content:""}.fa-viacoin:before{content:""}.fa-train:before{content:""}.fa-subway:before{content:""}.fa-medium:before{content:""}.fa-yc:before,.fa-y-combinator:before{content:""}.fa-optin-monster:before{content:""}.fa-opencart:before{content:""}.fa-expeditedssl:before{content:""}.fa-battery-4:before,.fa-battery:before,.fa-battery-full:before{content:""}.fa-battery-3:before,.fa-battery-three-quarters:before{content:""}.fa-battery-2:before,.fa-battery-half:before{content:""}.fa-battery-1:before,.fa-battery-quarter:before{content:""}.fa-battery-0:before,.fa-battery-empty:before{content:""}.fa-mouse-pointer:before{content:""}.fa-i-cursor:before{content:""}.fa-object-group:before{content:""}.fa-object-ungroup:before{content:""}.fa-sticky-note:before{content:""}.fa-sticky-note-o:before{content:""}.fa-cc-jcb:before{content:""}.fa-cc-diners-club:before{content:""}.fa-clone:before{content:""}.fa-balance-scale:before{content:""}.fa-hourglass-o:before{content:""}.fa-hourglass-1:before,.fa-hourglass-start:before{content:""}.fa-hourglass-2:before,.fa-hourglass-half:before{content:""}.fa-hourglass-3:before,.fa-hourglass-end:before{content:""}.fa-hourglass:before{content:""}.fa-hand-grab-o:before,.fa-hand-rock-o:before{content:""}.fa-hand-stop-o:before,.fa-hand-paper-o:before{content:""}.fa-hand-scissors-o:before{content:""}.fa-hand-lizard-o:before{content:""}.fa-hand-spock-o:before{content:""}.fa-hand-pointer-o:before{content:""}.fa-hand-peace-o:before{content:""}.fa-trademark:before{content:""}.fa-registered:before{content:""}.fa-creative-commons:before{content:""}.fa-gg:before{content:""}.fa-gg-circle:before{content:""}.fa-tripadvisor:before{content:""}.fa-odnoklassniki:before{content:""}.fa-odnoklassniki-square:before{content:""}.fa-get-pocket:before{content:""}.fa-wikipedia-w:before{content:""}.fa-safari:before{content:""}.fa-chrome:before{content:""}.fa-firefox:before{content:""}.fa-opera:before{content:""}.fa-internet-explorer:before{content:""}.fa-tv:before,.fa-television:before{content:""}.fa-contao:before{content:""}.fa-500px:before{content:""}.fa-amazon:before{content:""}.fa-calendar-plus-o:before{content:""}.fa-calendar-minus-o:before{content:""}.fa-calendar-times-o:before{content:""}.fa-calendar-check-o:before{content:""}.fa-industry:before{content:""}.fa-map-pin:before{content:""}.fa-map-signs:before{content:""}.fa-map-o:before{content:""}.fa-map:before{content:""}.fa-commenting:before{content:""}.fa-commenting-o:before{content:""}.fa-houzz:before{content:""}.fa-vimeo:before{content:""}.fa-black-tie:before{content:""}.fa-fonticons:before{content:""}.fa-reddit-alien:before{content:""}.fa-edge:before{content:""}.fa-credit-card-alt:before{content:""}.fa-codiepie:before{content:""}.fa-modx:before{content:""}.fa-fort-awesome:before{content:""}.fa-usb:before{content:""}.fa-product-hunt:before{content:""}.fa-mixcloud:before{content:""}.fa-scribd:before{content:""}.fa-pause-circle:before{content:""}.fa-pause-circle-o:before{content:""}.fa-stop-circle:before{content:""}.fa-stop-circle-o:before{content:""}.fa-shopping-bag:before{content:""}.fa-shopping-basket:before{content:""}.fa-hashtag:before{content:""}.fa-bluetooth:before{content:""}.fa-bluetooth-b:before{content:""}.fa-percent:before{content:""}.fa-gitlab:before{content:""}.fa-wpbeginner:before{content:""}.fa-wpforms:before{content:""}.fa-envira:before{content:""}.fa-universal-access:before{content:""}.fa-wheelchair-alt:before{content:""}.fa-question-circle-o:before{content:""}.fa-blind:before{content:""}.fa-audio-description:before{content:""}.fa-volume-control-phone:before{content:""}.fa-braille:before{content:""}.fa-assistive-listening-systems:before{content:""}.fa-asl-interpreting:before,.fa-american-sign-language-interpreting:before{content:""}.fa-deafness:before,.fa-hard-of-hearing:before,.fa-deaf:before{content:""}.fa-glide:before{content:""}.fa-glide-g:before{content:""}.fa-signing:before,.fa-sign-language:before{content:""}.fa-low-vision:before{content:""}.fa-viadeo:before{content:""}.fa-viadeo-square:before{content:""}.fa-snapchat:before{content:""}.fa-snapchat-ghost:before{content:""}.fa-snapchat-square:before{content:""}.fa-pied-piper:before{content:""}.fa-first-order:before{content:""}.fa-yoast:before{content:""}.fa-themeisle:before{content:""}.fa-google-plus-circle:before,.fa-google-plus-official:before{content:""}.fa-fa:before,.fa-font-awesome:before{content:""}.fa-handshake-o:before{content:""}.fa-envelope-open:before{content:""}.fa-envelope-open-o:before{content:""}.fa-linode:before{content:""}.fa-address-book:before{content:""}.fa-address-book-o:before{content:""}.fa-vcard:before,.fa-address-card:before{content:""}.fa-vcard-o:before,.fa-address-card-o:before{content:""}.fa-user-circle:before{content:""}.fa-user-circle-o:before{content:""}.fa-user-o:before{content:""}.fa-id-badge:before{content:""}.fa-drivers-license:before,.fa-id-card:before{content:""}.fa-drivers-license-o:before,.fa-id-card-o:before{content:""}.fa-quora:before{content:""}.fa-free-code-camp:before{content:""}.fa-telegram:before{content:""}.fa-thermometer-4:before,.fa-thermometer:before,.fa-thermometer-full:before{content:""}.fa-thermometer-3:before,.fa-thermometer-three-quarters:before{content:""}.fa-thermometer-2:before,.fa-thermometer-half:before{content:""}.fa-thermometer-1:before,.fa-thermometer-quarter:before{content:""}.fa-thermometer-0:before,.fa-thermometer-empty:before{content:""}.fa-shower:before{content:""}.fa-bathtub:before,.fa-s15:before,.fa-bath:before{content:""}.fa-podcast:before{content:""}.fa-window-maximize:before{content:""}.fa-window-minimize:before{content:""}.fa-window-restore:before{content:""}.fa-times-rectangle:before,.fa-window-close:before{content:""}.fa-times-rectangle-o:before,.fa-window-close-o:before{content:""}.fa-bandcamp:before{content:""}.fa-grav:before{content:""}.fa-etsy:before{content:""}.fa-imdb:before{content:""}.fa-ravelry:before{content:""}.fa-eercast:before{content:""}.fa-microchip:before{content:""}.fa-snowflake-o:before{content:""}.fa-superpowers:before{content:""}.fa-wpexplorer:before{content:""}.fa-meetup:before{content:""}.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}.jssocials-shares{margin:0.2em 0}.jssocials-shares *{box-sizing:border-box}.jssocials-share{display:inline-block;vertical-align:top;margin:.3em .6em .3em 0}.jssocials-share:last-child{margin-right:0}.jssocials-share-logo{width:1em;vertical-align:middle;font-size:1.5em}img.jssocials-share-logo{width:auto;height:1em}.jssocials-share-link{display:inline-block;text-align:center;text-decoration:none;line-height:1}.jssocials-share-link.jssocials-share-link-count{padding-top:.2em}.jssocials-share-link.jssocials-share-link-count .jssocials-share-count{display:block;font-size:.6em;margin:0 -.5em -.8em -.5em}.jssocials-share-link.jssocials-share-no-count{padding-top:.5em}.jssocials-share-link.jssocials-share-no-count .jssocials-share-count{height:1em}.jssocials-share-label{padding-left:.3em;vertical-align:middle}.jssocials-share-count-box{display:inline-block;height:1.5em;padding:0 .3em;line-height:1;vertical-align:middle;cursor:default}.jssocials-share-count-box.jssocials-share-no-count{display:none}.jssocials-share-count{line-height:1.5em;vertical-align:middle}.jssocials-share-link{padding:.5em .6em;border-radius:.3em;border:2px solid #acacac;color:#acacac;-webkit-transition:background 200ms ease-in-out,color 200ms ease-in-out,border-color 200ms ease-in-out;transition:background 200ms ease-in-out,color 200ms ease-in-out,border-color 200ms ease-in-out}.jssocials-share-link:hover,.jssocials-share-link:focus,.jssocials-share-link:active{border:2px solid #939292;color:#939292}.jssocials-share-count-box{position:relative;height:2.5em;padding:0 .3em;margin-left:.4em;background:#f5f5f5;border-radius:.3em;-webkit-transition:background 200ms ease-in-out,color 200ms ease-in-out,border-color 200ms ease-in-out;transition:background 200ms ease-in-out,color 200ms ease-in-out,border-color 200ms ease-in-out}.jssocials-share-count-box:hover{background:#e8e8e8}.jssocials-share-count-box:hover:after{border-color:transparent #e8e8e8 transparent transparent}.jssocials-share-count-box:after{content:"";display:block;position:absolute;top:.75em;left:-.4em;width:0;height:0;border-width:.5em .5em .5em 0;border-style:solid;border-color:transparent #f5f5f5 transparent transparent;-webkit-transform:rotate(360deg);transform:rotate(360deg);-webkit-transition:background 200ms ease-in-out,color 200ms ease-in-out,border-color 200ms ease-in-out;transition:background 200ms ease-in-out,color 200ms ease-in-out,border-color 200ms ease-in-out}.jssocials-share-count-box .jssocials-share-count{line-height:2.5em;color:#acacac}div.oembedall-githubrepos{border:1px solid #DDD;border-radius:4px 4px 4px 4px;list-style-type:none;margin:0 0 10px;padding:8px 10px 0;font:13.34px/1.4 helvetica,arial,freesans,clean,sans-serif;width:452px;background-color:#fff}div.oembedall-githubrepos .oembedall-body{background:-moz-linear-gradient(center top, #FAFAFA, #EFEFEF) repeat scroll 0 0 transparent;background:-webkit-gradient(linear, left top, left bottom, from(#FAFAFA), to(#EFEFEF));border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-top:1px solid #EEE;margin-left:-10px;margin-top:8px;padding:5px 10px;width:100%}div.oembedall-githubrepos h3{font-size:14px;margin:0;padding-left:18px;white-space:nowrap}div.oembedall-githubrepos p.oembedall-description{color:#444;font-size:12px;margin:0 0 3px}div.oembedall-githubrepos p.oembedall-updated-at{color:#888;font-size:11px;margin:0}div.oembedall-githubrepos ul.oembedall-repo-stats{border:medium none;float:right;font-size:11px;font-weight:bold;padding-left:15px;position:relative;z-index:5;margin:0}div.oembedall-githubrepos ul.oembedall-repo-stats li{border:medium none;color:#666;display:inline-block;list-style-type:none;margin:0 !important}div.oembedall-githubrepos ul.oembedall-repo-stats li a{background-color:transparent;background-position:5px -2px;border:medium none;color:#666 !important;background-position:5px -2px;background-repeat:no-repeat;border-left:1px solid #DDD;display:inline-block;height:21px;line-height:21px;padding:0 5px 0 23px}div.oembedall-githubrepos ul.oembedall-repo-stats li:first-child a{border-left:medium none;margin-right:-3px}div.oembedall-githubrepos ul.oembedall-repo-stats li a:hover{background:none no-repeat scroll 5px -27px #4183C4;color:#FFFFFF !important;text-decoration:none}div.oembedall-githubrepos ul.oembedall-repo-stats li:first-child a:hover{border-bottom-left-radius:3px;border-top-left-radius:3px}ul.oembedall-repo-stats li:last-child a:hover{border-bottom-right-radius:3px;border-top-right-radius:3px}span.oembedall-closehide{background-color:#aaa;border-radius:2px;cursor:pointer;margin-right:3px}div.oembedall-container{margin-top:5px;text-align:left}.oembedall-ljuser{font-weight:bold}.oembedall-ljuser img{vertical-align:bottom;border:0;padding-right:1px}.oembedall-stoqembed{border-bottom:1px dotted #999999;float:left;overflow:hidden;padding:11px 0;width:730px;line-height:1;background:none repeat scroll 0 0 #FFFFFF;color:#000000;font-family:Arial,Liberation Sans,DejaVu Sans,sans-serif;font-size:80%;text-align:left;margin:0;padding:0}.oembedall-stoqembed a{color:#0077CC;text-decoration:none;margin:0;padding:0}.oembedall-stoqembed a:hover{text-decoration:underline}.oembedall-stoqembed a:visited{color:#4A6B82}.oembedall-stoqembed h3{font-family:Trebuchet MS,Liberation Sans,DejaVu Sans,sans-serif;font-size:130%;font-weight:bold;margin:0;padding:0}.oembedall-stoqembed .oembedall-reputation-score{color:#444444;font-size:120%;font-weight:bold;margin-right:2px}.oembedall-stoqembed .oembedall-user-info{height:35px;width:185px}.oembedall-stoqembed .oembedall-user-info .oembedall-user-gravatar32{float:left;height:32px;width:32px}.oembedall-stoqembed .oembedall-user-info .oembedall-user-details{float:left;margin-left:5px;overflow:hidden;white-space:nowrap;width:145px}.oembedall-stoqembed .oembedall-question-hyperlink{font-weight:bold}.oembedall-stoqembed .oembedall-stats{background:none repeat scroll 0 0 #EEEEEE;margin:0 0 0 7px;padding:4px 7px 6px;width:58px}.oembedall-stoqembed .oembedall-statscontainer{float:left;margin-right:8px;width:86px}.oembedall-stoqembed .oembedall-votes{color:#555555;padding:0 0 7px;text-align:center}.oembedall-stoqembed .oembedall-vote-count-post{display:block;font-size:240%;color:#808185;display:block;font-weight:bold}.oembedall-stoqembed .oembedall-views{color:#999999;padding-top:4px;text-align:center}.oembedall-stoqembed .oembedall-status{margin-top:-3px;padding:4px 0;text-align:center;background:none repeat scroll 0 0 #75845C;color:#FFFFFF}.oembedall-stoqembed .oembedall-status strong{color:#FFFFFF;display:block;font-size:140%}.oembedall-stoqembed .oembedall-summary{float:left;width:635px}.oembedall-stoqembed .oembedall-excerpt{line-height:1.2;margin:0;padding:0 0 5px}.oembedall-stoqembed .oembedall-tags{float:left;line-height:18px}.oembedall-stoqembed .oembedall-tags a:hover{text-decoration:none}.oembedall-stoqembed .oembedall-post-tag{background-color:#E0EAF1;border-bottom:1px solid #3E6D8E;border-right:1px solid #7F9FB6;color:#3E6D8E;font-size:90%;line-height:2.4;margin:2px 2px 2px 0;padding:3px 4px;text-decoration:none;white-space:nowrap}.oembedall-stoqembed .oembedall-post-tag:hover{background-color:#3E6D8E;border-bottom:1px solid #37607D;border-right:1px solid #37607D;color:#E0EAF1}.oembedall-stoqembed .oembedall-fr{float:right}.oembedall-stoqembed .oembedall-statsarrow{background-image:url("http://cdn.sstatic.net/stackoverflow/img/sprites.png?v=3");background-repeat:no-repeat;overflow:hidden;background-position:0 -435px;float:right;height:13px;margin-top:12px;width:7px}.oembedall-facebook1{border:#1A3C6C solid 1px;padding:0px;font:13.34px/1.4 verdana;width:500px}.oembedall-facebook2{background-color:#627add}.oembedall-facebook2 a{color:#e8e8e8;text-decoration:none}.oembedall-facebookBody{background-color:#fff;vertical-align:top;padding:5px}.oembedall-facebookBody .contents{display:inline-block;width:100%}.oembedall-facebookBody div img{float:left;margin-right:5px}div.oembedall-lanyard{-webkit-box-shadow:none;-webkit-transition-delay:0s;-webkit-transition-duration:0.4000000059604645s;-webkit-transition-property:width;-webkit-transition-timing-function:cubic-bezier(0.42, 0, 0.58, 1);background-attachment:scroll;background-clip:border-box;background-color:transparent;background-image:none;background-origin:padding-box;border-bottom-width:0px;border-left-width:0px;border-right-width:0px;border-top-width:0px;box-shadow:none;color:#112644;display:block;float:left;font-family:'Trebuchet MS', Trebuchet, sans-serif;font-size:16px;height:253px;line-height:19px;margin-bottom:0px;margin-left:0px;margin-right:0px;margin-top:0px;max-width:none;min-height:0px;outline-color:#112644;outline-style:none;outline-width:0px;overflow-x:visible;overflow-y:visible;padding-bottom:0px;padding-left:0px;padding-right:0px;padding-top:0px;position:relative;text-align:left;vertical-align:baseline;width:804px}div.oembedall-lanyard .tagline{font-size:1.5em}div.oembedall-lanyard .wrapper{overflow:hidden;clear:both}div.oembedall-lanyard .split{float:left;display:inline}div.oembedall-lanyard .prominent-place .flag:link,div.oembedall-lanyard .prominent-place .flag:visited,div.oembedall-lanyard .prominent-place .flag:hover,div.oembedall-lanyard .prominent-place .flag:focus,div.oembedall-lanyard .prominent-place .flag:active{float:left;display:block;width:48px;height:48px;position:relative;top:-5px;margin-right:10px}div.oembedall-lanyard .place-context{font-size:0.889em}div.oembedall-lanyard .prominent-place .sub-place{display:block}div.oembedall-lanyard .prominent-place{font-size:1.125em;line-height:1.1em;font-weight:normal}div.oembedall-lanyard .main-date{color:#8CB4E0;font-weight:bold;line-height:1.1}div.oembedall-lanyard .first{margin-left:0;width:48.57%;margin:0 0 0 2.857%}.labels{color:black;background-color:white;font-family:"Lucida Grande", "Arial", sans-serif;font-size:8px;font-weight:bold;text-align:center;border:1px solid gray;white-space:nowrap}html{font-size:14px;line-height:1.4}body{font-size:1em;font-weight:300;color:#000000}h1{font-size:2.5em;font-weight:700;text-transform:capitalize}h2{font-size:2em;font-weight:700;text-transform:capitalize}h3{font-size:1.5em;font-weight:300;text-transform:capitalize}a{color:#0082AB}.event-logo-homepage{position:relative;padding:0;margin-bottom:20px;margin-top:10px}.container-fluid{max-width:1600px}.nav-item{font-family:'Roboto', sans-serif;color:#0082AB}.nav-link{color:#0082AB}.navbar-brand{font-family:'Roboto', sans-serif;text-transform:lowercase}.global-navigation{font-family:'Roboto', sans-serif;font-weight:900;color:#0082AB;font-size:.9em;text-transform:uppercase}.navbar>li>a{color:red}.event-navigation{font-family:'Roboto Condensed', sans-serif;font-weight:300;font-size:9pt;color:green;text-transform:uppercase}.event-navigation-icon{padding-left:5px;padding-right:5px;color:#0082AB}.navbar-light{background-color:transparent !important;border-color:transparent;background-image:none;box-shadow:none}.left-nav-navs{font-family:'Roboto', sans-serif;font-weight:300;font-size:9pt;text-transform:uppercase;color:#000000}.left-nav-months{font-family:'Roboto', sans-serif;font-weight:300;font-size:9pt;text-transform:uppercase;color:#000000}.left-nav-months.current{font-weight:900;color:#0082AB}.left-nav-year{font-family:'Roboto', sans-serif;font-weight:100;font-size:18pt;color:#000000}.left-nav-event{font-family:'Roboto', sans-serif;font-weight:100;font-size:9pt;text-transform:capitalize}.footer-nav{font-family:'Roboto', sans-serif;font-weight:900;font-size:1.3em;text-transform:uppercase;color:#0082AB;margin-bottom:1.5rem}.footer-heading{font-family:'Roboto', sans-serif;text-transform:capitalize;color:#0082AB;font-size:1.3em}h1.footer-heading{font-size:1.2em;font-weight:400}h2.footer-heading{font-size:1.1em;font-weight:300}.footer-content{font-family:'Roboto', sans-serif;font-weight:300;font-size:.9em;color:#000}a.footer-content{font-weight:300;color:#0082AB}.footer-nav-background{background-color:#f7f7f7;padding-top:20px;border-top:2px solid #0082AB;padding-left:40px;padding-right:40px}.footer-nav-col{padding-bottom:30px}.footer-nav-row{margin-top:20px}.sponsor-cta{font-family:'Roboto', sans-serif;text-transform:uppercase;color:#000000}.cta-row{background-color:#f3f3f3;padding-top:10px;padding-bottom:10px;margin-top:15px;margin-bottom:15px}a.sponsor-cta{color:#0082AB}.homepage-grid-col{padding-top:30px;padding-bottom:30px}.homepage-grid-date{font-family:'Roboto', sans-serif;font-weight:300;font-size:9pt;text-transform:uppercase;color:#000000}.homepage-grid-city{font-family:'Roboto', sans-serif;font-weight:700;font-size:2em;text-transform:capitalize;color:#000000}.homepage-grid-city a{color:#000000}.homepage-grid-desc{font-family:'Roboto', sans-serif;font-weight:300;font-size:9pt;color:#000000}button.accordion{background-color:#eee;color:#444;cursor:pointer;padding:18px;width:100%;border:none;text-align:left;outline:none;font-size:15px;-webkit-transition:0.4s;transition:0.4s}button.accordion.active,button.accordion:hover{background-color:#ddd}div.panel{padding:0 18px;background-color:white;max-height:0;overflow:hidden;-webkit-transition:max-height 0.2s ease-out;transition:max-height 0.2s ease-out}.labels{color:black;background-color:white;font-family:"Lucida Grande", "Arial", sans-serif;font-size:8px;font-weight:bold;text-align:center;border:1px solid gray;white-space:nowrap}table.sortable span.sign{display:block;position:absolute;top:50%;right:5px;font-size:12px;margin-top:-10px;color:#bfbfc1}table.sortable th:after{display:block;position:absolute;top:50%;right:5px;font-size:12px;margin-top:-10px;color:#bfbfc1}table.sortable th.arrow:after{content:''}table.sortable span.arrow,span.reversed,th.arrow.down:after,th.reversedarrow.down:after,th.arrow.up:after,th.reversedarrow.up:after{border-style:solid;border-width:5px;font-size:0;border-color:#ccc transparent transparent transparent;line-height:0;height:0;width:0;margin-top:-2px}table.sortable span.arrow.up,th.arrow.up:after{border-color:transparent transparent #ccc transparent;margin-top:-7px}table.sortable span.reversed,th.reversedarrow.down:after{border-color:transparent transparent #ccc transparent;margin-top:-7px}table.sortable span.reversed.up,th.reversedarrow.up:after{border-color:#ccc transparent transparent transparent;margin-top:-2px}table.sortable span.az:before,th.az.down:after{content:"a .. z"}table.sortable span.az.up:before,th.az.up:after{content:"z .. a"}table.sortable th.az.nosort:after,th.AZ.nosort:after,th._19.nosort:after,th.month.nosort:after{content:".."}table.sortable span.AZ:before,th.AZ.down:after{content:"A .. Z"}table.sortable span.AZ.up:before,th.AZ.up:after{content:"Z .. A"}table.sortable span._19:before,th._19.down:after{content:"1 .. 9"}table.sortable span._19.up:before,th._19.up:after{content:"9 .. 1"}table.sortable span.month:before,th.month.down:after{content:"jan .. dec"}table.sortable span.month.up:before,th.month.up:after{content:"dec .. jan"}table.sortable>thead th:not([data-defaultsort=disabled]){cursor:pointer;position:relative;top:0;left:0}table.sortable>thead th:hover:not([data-defaultsort=disabled]){background:#efefef}table.sortable>thead th div.mozilla{position:relative}.speaker-page{font-family:'Roboto', sans-serif;font-weight:300;color:#000000}h2.speaker-page{font-size:2em;font-weight:700;text-transform:capitalize}h3.speaker-page{font-size:1.5em;font-weight:300;text-transform:capitalize}.speaker-bio-talks{padding-top:15px}.speakers-page{font-family:'Roboto', sans-serif;font-weight:300;color:#000000}h2.speakers-page{font-size:2em;font-weight:700;text-transform:capitalize}h3.speakers-page{font-size:1.5em;font-weight:300;text-transform:capitalize}img.speakers-page{margin-top:20px;margin-bottom:20px}.talk-page{font-family:'Roboto', sans-serif;font-weight:300;color:#000000}h2.talk-page{font-size:2em;font-weight:700;text-transform:capitalize}h3.talk-page{font-size:1.5em;font-weight:300;text-transform:capitalize}h1.welcome-page{color:#FFF}.welcome-page-date{text-transform:uppercase}.welcome-page-masthead{background:#bfbfc1;background:-webkit-linear-gradient(#0082AB, #bfbfc1);background:linear-gradient(#0082AB, #bfbfc1);padding:20px;margin-bottom:20px;margin-top:20px}a.welcome-page-masthead-link{color:white}a:hover.welcome-page-masthead-link{color:#bfbfc1;border-color:#bfbfc1;text-decoration:none}.welecome-page-masthead-venue{font-size:1.2em}.welcome-page-cta{margin-left:5px;margin-right:5px;padding-left:0px;padding-right:0px}.welcome-page-cta:first-child{margin-left:15px;margin-right:5px}@media only screen and (min-width: 768px){.welcome-page-cta:first-child{margin-left:0px;margin-right:5px}}.welcome-page-event-logo{max-width:50%}.organizer-card{padding-bottom:20px}.event-page-nav-home{padding-left:.9rem}@media only screen and (min-width: 1024px){.event-page-nav-home{padding-left:1.25rem}}.events-page-col{padding:30px}.events-page-months{font-family:'Roboto', sans-serif;font-weight:300;font-size:14pt;text-transform:uppercase;color:#000000}.events-page-event{font-family:'Roboto', sans-serif;font-weight:100;font-size:11pt;text-transform:capitalize}.event-cta-button:first-child{margin-left:0px}.event-cta-button{margin-left:5px}h3.program-page{margin-top:8px}.program-page-desc{font-size:.85em}.box{padding:1.5em;margin-bottom:1.5em;background:#E5ECF9} +/*# sourceMappingURL=site.css.map */ \ No newline at end of file diff --git a/themes/devopsdays-theme/static/css/site.css.map b/themes/devopsdays-theme/static/css/site.css.map new file mode 100644 index 00000000000..f2545daad98 --- /dev/null +++ b/themes/devopsdays-theme/static/css/site.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["site.css","../../bower_components/bootstrap/scss/bootstrap.scss","../../bower_components/bootstrap/scss/_normalize.scss","../../bower_components/bootstrap/scss/_print.scss","../../bower_components/bootstrap/scss/_reboot.scss","../../bower_components/bootstrap/scss/_variables.scss","../../bower_components/bootstrap/scss/mixins/_hover.scss","../../bower_components/bootstrap/scss/_type.scss","../../bower_components/bootstrap/scss/mixins/_lists.scss","../../bower_components/bootstrap/scss/mixins/_image.scss","../../bower_components/bootstrap/scss/_images.scss","../../bower_components/bootstrap/scss/mixins/_border-radius.scss","../../bower_components/bootstrap/scss/_mixins.scss","../../bower_components/bootstrap/scss/_code.scss","../../bower_components/bootstrap/scss/mixins/_grid.scss","../../bower_components/bootstrap/scss/mixins/_breakpoints.scss","../../bower_components/bootstrap/scss/_grid.scss","../../bower_components/bootstrap/scss/mixins/_grid-framework.scss","../../bower_components/bootstrap/scss/_tables.scss","../../bower_components/bootstrap/scss/mixins/_table-row.scss","../../bower_components/bootstrap/scss/_forms.scss","../../bower_components/bootstrap/scss/mixins/_forms.scss","../../bower_components/bootstrap/scss/_buttons.scss","../../bower_components/bootstrap/scss/mixins/_buttons.scss","../../bower_components/bootstrap/scss/_transitions.scss","../../bower_components/bootstrap/scss/_dropdown.scss","../../bower_components/bootstrap/scss/mixins/_nav-divider.scss","../../bower_components/bootstrap/scss/_button-group.scss","../../bower_components/bootstrap/scss/_input-group.scss","../../bower_components/bootstrap/scss/_custom-forms.scss","../../bower_components/bootstrap/scss/_nav.scss","../../bower_components/bootstrap/scss/_navbar.scss","../../bower_components/bootstrap/scss/_card.scss","../../bower_components/bootstrap/scss/mixins/_cards.scss","../../bower_components/bootstrap/scss/_breadcrumb.scss","../../bower_components/bootstrap/scss/mixins/_clearfix.scss","../../bower_components/bootstrap/scss/_pagination.scss","../../bower_components/bootstrap/scss/mixins/_pagination.scss","../../bower_components/bootstrap/scss/_badge.scss","../../bower_components/bootstrap/scss/mixins/_badge.scss","../../bower_components/bootstrap/scss/_jumbotron.scss","../../bower_components/bootstrap/scss/_alert.scss","../../bower_components/bootstrap/scss/mixins/_alert.scss","../../bower_components/bootstrap/scss/_progress.scss","../../bower_components/bootstrap/scss/mixins/_gradients.scss","../../bower_components/bootstrap/scss/_media.scss","../../bower_components/bootstrap/scss/_list-group.scss","../../bower_components/bootstrap/scss/mixins/_list-group.scss","../../bower_components/bootstrap/scss/_responsive-embed.scss","../../bower_components/bootstrap/scss/_close.scss","../../bower_components/bootstrap/scss/_modal.scss","../../bower_components/bootstrap/scss/_tooltip.scss","../../bower_components/bootstrap/scss/mixins/_reset-text.scss","../../bower_components/bootstrap/scss/_popover.scss","../../bower_components/bootstrap/scss/_carousel.scss","../../bower_components/bootstrap/scss/mixins/_transforms.scss","../../bower_components/bootstrap/scss/utilities/_align.scss","../../bower_components/bootstrap/scss/utilities/_background.scss","../../bower_components/bootstrap/scss/mixins/_background-variant.scss","../../bower_components/bootstrap/scss/utilities/_borders.scss","../../bower_components/bootstrap/scss/utilities/_display.scss","../../bower_components/bootstrap/scss/utilities/_flex.scss","../../bower_components/bootstrap/scss/utilities/_float.scss","../../bower_components/bootstrap/scss/mixins/_float.scss","../../bower_components/bootstrap/scss/utilities/_position.scss","../../bower_components/bootstrap/scss/mixins/_screen-reader.scss","../../bower_components/bootstrap/scss/utilities/_sizing.scss","../../bower_components/bootstrap/scss/utilities/_spacing.scss","../../bower_components/bootstrap/scss/utilities/_text.scss","../../bower_components/bootstrap/scss/mixins/_text-truncate.scss","../../bower_components/bootstrap/scss/mixins/_text-emphasis.scss","../../bower_components/bootstrap/scss/mixins/_text-hide.scss","../../bower_components/bootstrap/scss/mixins/_visibility.scss","../../bower_components/bootstrap/scss/utilities/_visibility.scss","../../bower_components/font-awesome/scss/font-awesome.scss","../../bower_components/font-awesome/scss/_path.scss","../../bower_components/font-awesome/scss/_core.scss","../../bower_components/font-awesome/scss/_larger.scss","../../bower_components/font-awesome/scss/_fixed-width.scss","../../bower_components/font-awesome/scss/_list.scss","../../bower_components/font-awesome/scss/_bordered-pulled.scss","../../bower_components/font-awesome/scss/_animated.scss","../../bower_components/font-awesome/scss/_rotated-flipped.scss","../../bower_components/font-awesome/scss/_mixins.scss","../../bower_components/font-awesome/scss/_stacked.scss","../../bower_components/font-awesome/scss/_variables.scss","../../bower_components/font-awesome/scss/_icons.scss","../../bower_components/bootstrap/scss/utilities/_screenreaders.scss","../../bower_components/jssocials/styles/jssocials.scss","../../bower_components/jssocials/styles/jssocials-theme-plain.scss","../../bower_components/jquery-oembed-all/jquery.oembed.css","../scss/googlemaps.css","../scss/custom.scss"],"names":[],"mappings":"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C,YHuCR,oBAAiD,CGvCzC,YHuCR,UAAiD,CGvCzC,WHmCR,SAAsD,CGnC9C,WHmCR,kBAAgD,CGnCxC,WHmCR,mBAAgD,CGnCxC,WHmCR,QAAgD,CGnCxC,WHmCR,mBAAgD,CGnCxC,WHmCR,mBAAgD,CGnCxC,WHmCR,QAAgD,CGnCxC,WHmCR,mBAAgD,CGnCxC,WHmCR,mBAAgD,CGnCxC,WHmCR,QAAgD,CGnCxC,YHmCR,mBAAgD,CGnCxC,YHmCR,mBAAgD,CGnCxC,YHmCR,SAAgD,CGjCvC,aH6BT,cAAyC,CGtBjC,aHsBR,yBAAyC,CGtBjC,aHsBR,0BAAyC,CGtBjC,aHsBR,eAAyC,CGtBjC,aHsBR,0BAAyC,CGtBjC,aHsBR,0BAAyC,CGtBjC,aHsBR,eAAyC,CGtBjC,aHsBR,0BAAyC,CGtBjC,aHsBR,0BAAyC,CGtBjC,aHsBR,eAAyC,CGtBjC,cHsBR,0BAAyC,CGtBjC,cHsBR,0BAAyC,CGpBhC,Cd0CP,OehGF,WACA,eACA,kBbqIa,CaxIf,oBAOI,eACA,mBACA,4BbgG+B,CazGnC,gBAaI,sBACA,+Bb2F+B,CazGnC,mBAkBI,4BbuF+B,CazGnC,cAsBI,qBboES,CanEV,0BAWC,ab6SiC,Ca5SlC,gBASD,wBb6DiC,CFA/B,sCezDA,wBbyD+B,Ca9DnC,kDAWM,uBAA8C,CAC/C,yCAWD,iCbyBS,CaxBV,4BAWG,kCbaO,CCrFY,gDaDnB,kCdsFO,CcrFR,iCAUG,kCAJsC,CbNrB,wEacf,kCARoC,CAX5C,mDAII,wBdyqBkC,CcxqBnC,kCAUG,wBAJsC,CbNrB,0Eacf,wBARoC,CAX5C,0CAII,wBd6qBkC,Cc5qBnC,+BAUG,wBAJsC,CbNrB,oEacf,wBARoC,CAX5C,mDAII,wBdirBkC,CchrBnC,kCAUG,wBAJsC,CbNrB,0Eacf,wBARoC,CAX5C,gDAII,wBdsrBkC,CcrrBnC,iCAUG,wBAJsC,CbNrB,wEacf,wBARoC,CASrC,kBDkFL,WACA,wBbF+B,CaGhC,kBAKC,cACA,wBbN+B,CaOhC,eAID,WACA,wBbfiC,CaanC,4DAOI,iBbhCS,CayBb,8BAWI,QAAS,CACV,kBAYD,cACA,WACA,gBACA,2CAA4C,CAJ9C,iCAQI,QAAS,CACV,cEhJD,cACA,WAGA,qBACA,eACA,iBACA,cACA,sBAEA,sBACA,4BACA,kCAKE,qBRTE,+EPgbqF,AOhbrF,sEPgbqF,Cezb3F,0BA6BI,6BACA,QAAS,CCSX,oBACE,cACA,sBACA,qBACA,YAAa,CAEd,yCDPC,cAEA,SAAU,CAxCd,AC6CG,gCDPC,cAEA,SAAU,CAxCd,AC6CG,oCDPC,cAEA,SAAU,CAxCd,AC6CG,2BDPC,cAEA,SAAU,CAxCd,+CAkDI,yBAEA,SAAU,CApDd,uBAwDI,kBfkZwC,CejZzC,gDAMC,0BAAwD,CAH5D,qCAYI,cACA,qBfeS,CedV,uCAMD,aAAc,CACf,gBAUC,kCACA,qCACA,eAAgB,CACjB,mBAGC,mCACA,sCACA,iBfmJsB,CelJvB,mBAGC,mCACA,sCACA,iBf8IsB,Ce7IvB,iBAUC,kBACA,qBACA,gBACA,cf8HmB,Ce7HpB,qBASC,kBACA,qBACA,gBACA,iBACA,yBACA,kBAAuC,CANzC,gZAUI,gBACA,cAAe,CAChB,wHAaD,qBACA,kBT5JE,mBN8T0B,CehK7B,gQAIG,gBfuR4F,CetR7F,wHAID,sBACA,kBTxKE,mBN6T0B,CenJ7B,gQAIG,sBf0Q4F,CezQ7F,YAUD,kBfjDa,CekDd,WAGC,cACA,iBf+P+B,Ce9PhC,YAQC,kBACA,cACA,mBfuP+B,Ce1PjC,uCAOM,cACA,kBf8PsC,Ce7PvC,kBAKH,qBACA,gBACA,cAAe,CAChB,kBAGC,kBACA,kBACA,oBfqOiC,CexOnC,6BAMI,eAAgB,CACjB,mBAKD,oBAAqB,CADvB,qCAII,qBAAsB,CAJ1B,sCAQI,kBfyN+B,CexNhC,uBASD,iBfuM+B,CetMhC,iEAKC,sBACA,4BACA,0CACA,iCAAwD,CC5PxD,8JAKE,ahBuFY,CgBtFb,2BAIC,oBhBkFY,CgB7Eb,gCAIC,cACA,qBACA,wBAAsC,CACvC,mCD8OC,wQftMuI,CgB9DzI,8JAKE,ahBqFY,CgBpFb,2BAIC,oBhBgFY,CgB3Eb,gCAIC,cACA,qBACA,qBAAsC,CACvC,mCDsPC,iVf9MuI,CgB9DzI,yJAKE,ahBoFY,CgBnFb,0BAIC,oBhB+EY,CgB1Eb,+BAIC,cACA,qBACA,wBAAsC,CACvC,iCD8PC,kTftNuI,CeuNxI,aAcD,oBACA,AADA,oBACA,AADA,aACA,8BACA,AADA,6BACA,AADA,uBACA,AADA,mBACA,yBAAmB,AAAnB,sBAAmB,AAAnB,kBAAmB,CAHrB,yBASI,UAAW,CL1PX,0BKiPJ,mBAeM,oBACA,AADA,oBACA,AADA,aACA,yBACA,AADA,sBACA,AADA,mBACA,wBACA,AADA,qBACA,AADA,uBACA,eAAgB,CAlBtB,yBAuBM,oBACA,AADA,oBACA,AADA,aACA,mBACA,AADA,kBACA,AADA,cACA,8BACA,AADA,6BACA,AADA,uBACA,AADA,mBACA,yBACA,AADA,sBACA,AADA,mBACA,eAAgB,CA3BtB,2BAgCM,qBACA,WACA,qBAAsB,CAlC5B,kCAuCM,oBAAqB,CAvC3B,0BA2CM,UAAW,CA3CjB,iCA+CM,gBACA,qBAAsB,CAhD5B,yBAsDM,oBACA,AADA,oBACA,AADA,aACA,yBACA,AADA,sBACA,AADA,mBACA,wBACA,AADA,qBACA,AADA,uBACA,WACA,aACA,eAAgB,CA3DtB,+BA8DM,cAAe,CA9DrB,+BAiEM,kBACA,aACA,oBACA,aAAc,CApEpB,6BAyEM,oBACA,AADA,oBACA,AADA,aACA,yBACA,AADA,sBACA,AADA,mBACA,wBACA,AADA,qBACA,AADA,uBACA,cAAe,CA5ErB,uCA+EM,gBACA,qBACA,oBACA,0BAA2B,CAlFjC,kDAuFM,KAAM,CACP,CE3XL,KACE,qBACA,mBACA,iBACA,kBACA,mBACA,sBACA,yBACA,AADA,sBACA,AADA,qBACA,AADA,iBACA,6BCoEA,mBACA,eZ/EE,qBCWE,wCP0Y8C,AO1Y9C,+BP0Y8C,CCrYhD,sBgBAA,oBAAqB,ChBGpB,sBgBCD,UACA,yCjB2EY,CiB9FhB,4BAyBI,mBACA,WAAY,CA1BhB,wBAgCI,qBAAsB,CAEvB,wCAMD,mBAAoB,CACrB,aCtCC,WACA,yBACA,oBlByFc,CC1FZ,mBiBMA,WAC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CA,WACA,UACA,eAAgB,CALlB,0BAQI,cACA,UAAW,CATf,2IAiBI,kBACA,MACA,SACA,OACA,WACA,YACA,QAAS,CACV,gCAKC,0BAA+B,CAChC,gCAKC,kBAA+B,CAChC,+BAKC,eAA8B,CAC/B,+BAKC,gBAA8B,CAC/B,OCjDD,YACA,iBACA,iBACA,cACA,WACA,yBACA,UAAW,C3CaT,0B2CVA,WACA,qBACA,eACA,WAAY,C3CUX,a2CCH,UACA,eACA,uBACA,SACA,uBAAwB,CACzB,YCrBC,eAAgB,CACjB,OAIC,eACA,MACA,QACA,SACA,OACA,aACA,aACA,gBAGA,SAAU,CAXZ,0BtCGM,mDsCgBF,AtChBE,2CsCgBF,AtChBE,mCsCgBF,AtChBE,oEsCgBF,qCAA6B,AAA7B,4BAA6B,CAnBjC,0BAqByB,kCAA0B,AAA1B,yBAA0B,CAAI,mBAGrD,kBACA,eAAgB,CACjB,cAIC,kBACA,WACA,W7C6uBgC,C6C5uBjC,eAIC,kBACA,oBACA,AADA,oBACA,AADA,aACA,4BACA,AADA,6BACA,AADA,0BACA,AADA,sBACA,sBACA,4BACA,iCvClDE,oBuCsDF,SAAU,CACX,gBAIC,eACA,MACA,QACA,SACA,OACA,aACA,qB7C0BW,C6CjCb,qBAUW,SAAU,CAVrB,qBAWW,U7C4tBqB,C6C5tBe,cAM7C,oBACA,AADA,oBACA,AADA,aACA,yBACA,AADA,sBACA,AADA,mBACA,yBACA,AADA,sBACA,AADA,8BACA,aACA,+B7C0BiC,C6CzBlC,aAIC,gBACA,e7C2KoB,C6C1KrB,YAKC,kBAGA,mBACA,AADA,kBACA,AADA,cACA,Y7CorBgC,C6CnrBjC,cAIC,oBACA,AADA,oBACA,AADA,aACA,yBACA,AADA,sBACA,AADA,mBACA,qBACA,AADA,kBACA,AADA,yBACA,aACA,4B7CCiC,C6CNnC,iCAQyB,kBAAmB,CAR5C,gCASwB,mBAAoB,CAAK,yBAK/C,kBACA,YACA,WACA,YACA,eAAgB,CnCjEd,0BmCfJ,cAuFI,gBACA,gBAAyC,CAC1C,UAMW,e7CsqBqB,C6CtqBG,CnChFlC,0BmCoFF,UAAY,e7CgqBqB,C6ChqBG,CC3ItC,SACE,kBACA,aACA,cCHA,2GAEA,kBACA,mBACA,sBACA,gBACA,gBACA,gBACA,iBACA,qBACA,iBACA,oBACA,mBACA,kBACA,oBDPA,kBAEA,qBACA,SAAU,CAVZ,cAYW,U9CitBqB,C8C7tBhC,gEAgBI,cACA,e9C+sB6B,C8ChuBjC,8GAoBM,SACA,SACA,iBACA,WACA,uBACA,qB9CqEO,C8C9Fb,gEA8BI,cACA,e9CisB6B,C8ChuBjC,8GAkCM,QACA,OACA,gBACA,WACA,2BACA,uB9CuDO,C8C9Fb,gEA4CI,cACA,c9CmrB6B,C8ChuBjC,8GAgDM,MACA,SACA,iBACA,WACA,uBACA,wB9CyCO,C8C9Fb,gEA0DI,cACA,gB9CqqB6B,C8ChuBjC,8GA8DM,QACA,QACA,gBACA,WACA,2BACA,sB9C2BO,C8C1BR,eAMH,gBACA,gBACA,WACA,kBACA,sBxC3EE,oBN4T2B,C8CtP/B,uBASI,kBACA,QACA,SACA,yBACA,kBAAmB,CACpB,SEvFD,kBACA,MACA,OACA,aACA,cACA,gBACA,YDNA,2GAEA,kBACA,mBACA,sBACA,gBACA,gBACA,gBACA,iBACA,qBACA,iBACA,oBACA,mBACA,kBACA,oBCJA,kBAEA,qBACA,sBACA,4BACA,iC1CZE,mBN6T0B,CgDjU9B,gEAyBI,gBhD8tBsC,CgDvvB1C,8JA6BM,SACA,qBAAsB,CA9B5B,gFAkCM,aACA,kBACA,iChDutBmE,CgD3vBzE,8EAwCM,aACA,kBACA,qBhDoDO,CgD9Fb,gEAgDI,gBhDusBsC,CgDvvB1C,8JAoDM,QACA,mBAAoB,CArD1B,gFAyDM,WACA,iBACA,mChDgsBmE,CgD3vBzE,8EA+DM,WACA,iBACA,uBhD6BO,CgD9Fb,gEAuEI,ehDgrBsC,CgDvvB1C,8JA2EM,SACA,kBAAmB,CA5EzB,gFAgFM,UACA,kBACA,oChDyqBmE,CgD3vBzE,8EAsFM,UACA,kBACA,2BhDwpBuD,CgDhvB7D,8GA6FM,kBACA,MACA,SACA,cACA,WACA,kBACA,WACA,+BhD4oBuD,CgDhvB7D,gEA0GI,iBhD6oBsC,CgDvvB1C,8JA8GM,QACA,oBAAqB,CA/G3B,gFAmHM,YACA,iBACA,kChDsoBmE,CgD3vBzE,8EAyHM,YACA,iBACA,sBhD7BO,CgD8BR,eAOH,iBACA,gBACA,eACA,yBACA,gC1C7HE,0CACA,wC0C6HyE,CAN7E,qBAUI,YAAa,CACd,iBAID,gBhDmmBwC,CgDlmBzC,iCASC,kBACA,cACA,QACA,SACA,yBACA,kBAAmB,CACpB,iBAGC,WACA,iBhDqlBgE,CgDplBjE,gBAEC,WACA,iBhD8kBwC,CgD7kBzC,UCxKC,iBAAkB,CACnB,gBAGC,kBACA,WACA,eAAgB,CACjB,eAGC,kBACA,aACA,UAAW,CCZX,8BDSF,e1CIM,sD0CGF,A1CHE,8C0CGF,A1CHE,sC0CGF,A1CHE,0E0CGF,mCACA,AADA,2BACA,2BAAmB,AAAnB,kBAAmB,CAEtB,CCZ0C,2FDE3C,e1CIM,sD0CGF,A1CHE,8C0CGF,A1CHE,sC0CGF,A1CHE,0E0CGF,mCACA,AADA,2BACA,2BAAmB,AAAnB,kBAAmB,CAEtB,CAED,8DAGE,oBAAa,AAAb,oBAAa,AAAb,YAAa,CACd,wCAIC,kBACA,KAAM,CC9BN,8BDmCA,+EAEE,uCAA+B,AAA/B,8BAA+B,CAChC,gDAIC,0CAAkC,AAAlC,iCAAkC,CACnC,+CAIC,2CAAmC,AAAnC,kCAAmC,CACpC,CCzCwC,2FD4BzC,+EAEE,uCAA+B,AAA/B,8BAA+B,CAChC,gDAIC,0CAAkC,AAAlC,iCAAkC,CACnC,+CAIC,2CAAmC,AAAnC,kCAAmC,CACpC,CAQH,8CAEE,kBACA,MACA,SAEA,oBACA,AADA,oBACA,AADA,aACA,yBACA,AADA,sBACA,AADA,mBACA,wBACA,AADA,qBACA,AADA,uBACA,UACA,WACA,kBACA,UjDk1B8C,CCp4B5C,oHgDwDA,WACA,qBACA,UACA,UAAW,ChDxDV,uBgD4DH,MAAO,CACR,uBAEC,OAAQ,CACT,wDAKC,qBACA,WACA,YACA,+CACA,yBAA0B,CAC3B,4BAEC,4MjD9ByI,CiD+B1I,4BAEC,8MjDjCyI,CiDkC1I,qBASC,kBACA,QACA,YACA,OACA,WACA,oBACA,AADA,oBACA,AADA,aACA,wBACA,AADA,qBACA,AADA,uBACA,eAEA,iBACA,gBACA,eAAgB,CAZlB,wBAeI,kBACA,mBACA,AADA,kBACA,AADA,cACA,eACA,WACA,iBACA,gBACA,mBACA,eACA,sCjDxCS,CiDiBb,gCA2BM,kBACA,UACA,OACA,qBACA,WACA,YACA,UAAW,CAjCjB,+BAoCM,kBACA,aACA,OACA,qBACA,WACA,YACA,UAAW,CA1CjB,6BA+CI,qBjDhES,CiDiEV,kBASD,kBACA,UACA,YACA,SACA,WACA,iBACA,oBACA,WACA,iBAAkB,CACnB,gBEjLoB,kCAAmC,CAAK,WACxC,6BAA8B,CAAK,cACnC,gCAAiC,CAAK,cACtC,gCAAiC,CAAK,mBACtC,qCAAsC,CAAK,gBAC3C,kCAAmC,CAAK,UCA3D,wBAAsC,CCFtC,YACE,mCAAmC,CpDgBnC,sCoDZE,mCAAgD,CpDejD,YoDnBD,mCAAmC,CpDgBnC,sCoDZE,mCAAgD,CpDejD,SoDnBD,mCAAmC,CpDgBnC,gCoDZE,mCAAgD,CpDejD,YoDnBD,mCAAmC,CpDgBnC,sCoDZE,mCAAgD,CpDejD,WoDnBD,mCAAmC,CpDgBnC,oCoDZE,mCAAgD,CpDejD,YoDnBD,mCAAmC,CpDgBnC,sCoDZE,mCAAgD,CpDejD,UqDnBc,mBAAoB,CAAK,cACzB,uBAAwB,CAAK,gBAC7B,yBAA0B,CAAK,iBAC/B,0BAA2B,CAAK,eAChC,wBAAyB,CAAK,ShDJ7C,oBN4T2B,CsDhT9B,ahDNG,+BACA,6BNqT2B,CsD7S9B,ehDFG,kCACA,8BN8S2B,CsD1S9B,gBhDEG,kCACA,gCNuS2B,CsDvS9B,chDMG,iCACA,6BNgS2B,CsDpS9B,gBAGC,iBAAkB,CACnB,WAGC,eAAgB,CxBlChB,iBACE,cACA,WACA,UAAW,CACZ,QyBG4B,uBAAwB,CAAK,UAC7B,yBAA0B,CAAK,gBAC/B,+BAAgC,CAAK,SACrC,wBAAyB,CAAK,SAC9B,wBAAyB,CAAK,cAC9B,6BAA8B,CAAK,QACnC,+BAAwB,AAAxB,+BAAwB,AAAxB,uBAAwB,CAAK,eAC7B,sCAA+B,AAA/B,sCAA+B,AAA/B,8BAA+B,C7CyC1D,0B6ChDA,WAA2B,uBAAwB,CAAK,aAC7B,yBAA0B,CAAK,mBAC/B,+BAAgC,CAAK,YACrC,wBAAyB,CAAK,YAC9B,wBAAyB,CAAK,iBAC9B,6BAA8B,CAAK,WACnC,+BAAwB,AAAxB,+BAAwB,AAAxB,uBAAwB,CAAK,kBAC7B,sCAA+B,AAA/B,sCAA+B,AAA/B,8BAA+B,CAAK,C7CyC/D,0B6ChDA,WAA2B,uBAAwB,CAAK,aAC7B,yBAA0B,CAAK,mBAC/B,+BAAgC,CAAK,YACrC,wBAAyB,CAAK,YAC9B,wBAAyB,CAAK,iBAC9B,6BAA8B,CAAK,WACnC,+BAAwB,AAAxB,+BAAwB,AAAxB,uBAAwB,CAAK,kBAC7B,sCAA+B,AAA/B,sCAA+B,AAA/B,8BAA+B,CAAK,C7CyC/D,0B6ChDA,WAA2B,uBAAwB,CAAK,aAC7B,yBAA0B,CAAK,mBAC/B,+BAAgC,CAAK,YACrC,wBAAyB,CAAK,YAC9B,wBAAyB,CAAK,iBAC9B,6BAA8B,CAAK,WACnC,+BAAwB,AAAxB,+BAAwB,AAAxB,uBAAwB,CAAK,kBAC7B,sCAA+B,AAA/B,sCAA+B,AAA/B,8BAA+B,CAAK,C7CyC/D,2B6ChDA,WAA2B,uBAAwB,CAAK,aAC7B,yBAA0B,CAAK,mBAC/B,+BAAgC,CAAK,YACrC,wBAAyB,CAAK,YAC9B,wBAAyB,CAAK,iBAC9B,6BAA8B,CAAK,WACnC,+BAAwB,AAAxB,+BAAwB,AAAxB,uBAAwB,CAAK,kBAC7B,sCAA+B,AAA/B,sCAA+B,AAA/B,8BAA+B,CAAK,CCP/D,YAA2B,4BAAS,AAAT,kBAAS,AAAT,QAAS,CAAK,WACd,4BAAQ,AAAR,iBAAQ,AAAR,OAAQ,CAAK,gBACb,4BAAQ,AAAR,iBAAQ,AAAR,OAAQ,CAAK,UAER,yCAA8B,AAA9B,wCAA8B,AAA9B,kCAA8B,AAA9B,6BAA8B,CAAK,aACnC,uCAAiC,AAAjC,wCAAiC,AAAjC,qCAAiC,AAAjC,gCAAiC,CAAK,kBACtC,yCAAsC,AAAtC,yCAAsC,AAAtC,0CAAsC,AAAtC,qCAAsC,CAAK,qBAC3C,uCAAyC,AAAzC,yCAAyC,AAAzC,6CAAyC,AAAzC,wCAAyC,CAAK,WAEhD,8BAA0B,AAA1B,yBAA0B,CAAK,aAC/B,gCAA4B,AAA5B,2BAA4B,CAAK,mBACjC,sCAAkC,AAAlC,iCAAkC,CAAK,uBAEjC,kCAAsC,AAAtC,+BAAsC,AAAtC,qCAAsC,CAAK,qBAC3C,gCAAoC,AAApC,6BAAoC,AAApC,mCAAoC,CAAK,wBACzC,mCAAkC,AAAlC,gCAAkC,AAAlC,iCAAkC,CAAK,yBACvC,oCAAyC,AAAzC,iCAAyC,AAAzC,wCAAyC,CAAK,wBAC9C,oCAAwC,AAAxC,uCAAwC,CAAK,mBAEhD,mCAAkC,AAAlC,gCAAkC,AAAlC,iCAAkC,CAAK,iBACvC,iCAAgC,AAAhC,8BAAgC,AAAhC,+BAAgC,CAAK,oBACrC,oCAA8B,AAA9B,iCAA8B,AAA9B,6BAA8B,CAAK,sBACnC,sCAAgC,AAAhC,mCAAgC,AAAhC,+BAAgC,CAAK,qBACrC,qCAA+B,AAA/B,kCAA+B,AAA/B,8BAA+B,CAAK,qBAEnC,oCAAoC,AAApC,mCAAoC,CAAK,mBACzC,kCAAkC,AAAlC,iCAAkC,CAAK,sBACvC,qCAAgC,AAAhC,+BAAgC,CAAK,uBACrC,sCAAuC,AAAvC,sCAAuC,CAAK,sBAC5C,yCAAsC,AAAtC,qCAAsC,CAAK,uBAC3C,sCAAiC,AAAjC,gCAAiC,CAAK,iBAExC,oCAA2B,AAA3B,mCAA2B,AAA3B,0BAA2B,CAAK,kBAChC,qCAAiC,AAAjC,gCAAiC,CAAK,gBACtC,mCAA+B,AAA/B,8BAA+B,CAAK,mBACpC,sCAA6B,AAA7B,qCAA6B,AAA7B,4BAA6B,CAAK,qBAClC,wCAA+B,AAA/B,8BAA+B,CAAK,oBACpC,uCAA8B,AAA9B,sCAA8B,AAA9B,6BAA8B,C9CW9D,0B8ChDA,eAA2B,4BAAS,AAAT,kBAAS,AAAT,QAAS,CAAK,cACd,4BAAQ,AAAR,iBAAQ,AAAR,OAAQ,CAAK,mBACb,4BAAQ,AAAR,iBAAQ,AAAR,OAAQ,CAAK,aAER,yCAA8B,AAA9B,wCAA8B,AAA9B,kCAA8B,AAA9B,6BAA8B,CAAK,gBACnC,uCAAiC,AAAjC,wCAAiC,AAAjC,qCAAiC,AAAjC,gCAAiC,CAAK,qBACtC,yCAAsC,AAAtC,yCAAsC,AAAtC,0CAAsC,AAAtC,qCAAsC,CAAK,wBAC3C,uCAAyC,AAAzC,yCAAyC,AAAzC,6CAAyC,AAAzC,wCAAyC,CAAK,cAEhD,8BAA0B,AAA1B,yBAA0B,CAAK,gBAC/B,gCAA4B,AAA5B,2BAA4B,CAAK,sBACjC,sCAAkC,AAAlC,iCAAkC,CAAK,0BAEjC,kCAAsC,AAAtC,+BAAsC,AAAtC,qCAAsC,CAAK,wBAC3C,gCAAoC,AAApC,6BAAoC,AAApC,mCAAoC,CAAK,2BACzC,mCAAkC,AAAlC,gCAAkC,AAAlC,iCAAkC,CAAK,4BACvC,oCAAyC,AAAzC,iCAAyC,AAAzC,wCAAyC,CAAK,2BAC9C,oCAAwC,AAAxC,uCAAwC,CAAK,sBAEhD,mCAAkC,AAAlC,gCAAkC,AAAlC,iCAAkC,CAAK,oBACvC,iCAAgC,AAAhC,8BAAgC,AAAhC,+BAAgC,CAAK,uBACrC,oCAA8B,AAA9B,iCAA8B,AAA9B,6BAA8B,CAAK,yBACnC,sCAAgC,AAAhC,mCAAgC,AAAhC,+BAAgC,CAAK,wBACrC,qCAA+B,AAA/B,kCAA+B,AAA/B,8BAA+B,CAAK,wBAEnC,oCAAoC,AAApC,mCAAoC,CAAK,sBACzC,kCAAkC,AAAlC,iCAAkC,CAAK,yBACvC,qCAAgC,AAAhC,+BAAgC,CAAK,0BACrC,sCAAuC,AAAvC,sCAAuC,CAAK,yBAC5C,yCAAsC,AAAtC,qCAAsC,CAAK,0BAC3C,sCAAiC,AAAjC,gCAAiC,CAAK,oBAExC,oCAA2B,AAA3B,mCAA2B,AAA3B,0BAA2B,CAAK,qBAChC,qCAAiC,AAAjC,gCAAiC,CAAK,mBACtC,mCAA+B,AAA/B,8BAA+B,CAAK,sBACpC,sCAA6B,AAA7B,qCAA6B,AAA7B,4BAA6B,CAAK,wBAClC,wCAA+B,AAA/B,8BAA+B,CAAK,uBACpC,uCAA8B,AAA9B,sCAA8B,AAA9B,6BAA8B,CAAK,C9CWnE,0B8ChDA,eAA2B,4BAAS,AAAT,kBAAS,AAAT,QAAS,CAAK,cACd,4BAAQ,AAAR,iBAAQ,AAAR,OAAQ,CAAK,mBACb,4BAAQ,AAAR,iBAAQ,AAAR,OAAQ,CAAK,aAER,yCAA8B,AAA9B,wCAA8B,AAA9B,kCAA8B,AAA9B,6BAA8B,CAAK,gBACnC,uCAAiC,AAAjC,wCAAiC,AAAjC,qCAAiC,AAAjC,gCAAiC,CAAK,qBACtC,yCAAsC,AAAtC,yCAAsC,AAAtC,0CAAsC,AAAtC,qCAAsC,CAAK,wBAC3C,uCAAyC,AAAzC,yCAAyC,AAAzC,6CAAyC,AAAzC,wCAAyC,CAAK,cAEhD,8BAA0B,AAA1B,yBAA0B,CAAK,gBAC/B,gCAA4B,AAA5B,2BAA4B,CAAK,sBACjC,sCAAkC,AAAlC,iCAAkC,CAAK,0BAEjC,kCAAsC,AAAtC,+BAAsC,AAAtC,qCAAsC,CAAK,wBAC3C,gCAAoC,AAApC,6BAAoC,AAApC,mCAAoC,CAAK,2BACzC,mCAAkC,AAAlC,gCAAkC,AAAlC,iCAAkC,CAAK,4BACvC,oCAAyC,AAAzC,iCAAyC,AAAzC,wCAAyC,CAAK,2BAC9C,oCAAwC,AAAxC,uCAAwC,CAAK,sBAEhD,mCAAkC,AAAlC,gCAAkC,AAAlC,iCAAkC,CAAK,oBACvC,iCAAgC,AAAhC,8BAAgC,AAAhC,+BAAgC,CAAK,uBACrC,oCAA8B,AAA9B,iCAA8B,AAA9B,6BAA8B,CAAK,yBACnC,sCAAgC,AAAhC,mCAAgC,AAAhC,+BAAgC,CAAK,wBACrC,qCAA+B,AAA/B,kCAA+B,AAA/B,8BAA+B,CAAK,wBAEnC,oCAAoC,AAApC,mCAAoC,CAAK,sBACzC,kCAAkC,AAAlC,iCAAkC,CAAK,yBACvC,qCAAgC,AAAhC,+BAAgC,CAAK,0BACrC,sCAAuC,AAAvC,sCAAuC,CAAK,yBAC5C,yCAAsC,AAAtC,qCAAsC,CAAK,0BAC3C,sCAAiC,AAAjC,gCAAiC,CAAK,oBAExC,oCAA2B,AAA3B,mCAA2B,AAA3B,0BAA2B,CAAK,qBAChC,qCAAiC,AAAjC,gCAAiC,CAAK,mBACtC,mCAA+B,AAA/B,8BAA+B,CAAK,sBACpC,sCAA6B,AAA7B,qCAA6B,AAA7B,4BAA6B,CAAK,wBAClC,wCAA+B,AAA/B,8BAA+B,CAAK,uBACpC,uCAA8B,AAA9B,sCAA8B,AAA9B,6BAA8B,CAAK,C9CWnE,0B8ChDA,eAA2B,4BAAS,AAAT,kBAAS,AAAT,QAAS,CAAK,cACd,4BAAQ,AAAR,iBAAQ,AAAR,OAAQ,CAAK,mBACb,4BAAQ,AAAR,iBAAQ,AAAR,OAAQ,CAAK,aAER,yCAA8B,AAA9B,wCAA8B,AAA9B,kCAA8B,AAA9B,6BAA8B,CAAK,gBACnC,uCAAiC,AAAjC,wCAAiC,AAAjC,qCAAiC,AAAjC,gCAAiC,CAAK,qBACtC,yCAAsC,AAAtC,yCAAsC,AAAtC,0CAAsC,AAAtC,qCAAsC,CAAK,wBAC3C,uCAAyC,AAAzC,yCAAyC,AAAzC,6CAAyC,AAAzC,wCAAyC,CAAK,cAEhD,8BAA0B,AAA1B,yBAA0B,CAAK,gBAC/B,gCAA4B,AAA5B,2BAA4B,CAAK,sBACjC,sCAAkC,AAAlC,iCAAkC,CAAK,0BAEjC,kCAAsC,AAAtC,+BAAsC,AAAtC,qCAAsC,CAAK,wBAC3C,gCAAoC,AAApC,6BAAoC,AAApC,mCAAoC,CAAK,2BACzC,mCAAkC,AAAlC,gCAAkC,AAAlC,iCAAkC,CAAK,4BACvC,oCAAyC,AAAzC,iCAAyC,AAAzC,wCAAyC,CAAK,2BAC9C,oCAAwC,AAAxC,uCAAwC,CAAK,sBAEhD,mCAAkC,AAAlC,gCAAkC,AAAlC,iCAAkC,CAAK,oBACvC,iCAAgC,AAAhC,8BAAgC,AAAhC,+BAAgC,CAAK,uBACrC,oCAA8B,AAA9B,iCAA8B,AAA9B,6BAA8B,CAAK,yBACnC,sCAAgC,AAAhC,mCAAgC,AAAhC,+BAAgC,CAAK,wBACrC,qCAA+B,AAA/B,kCAA+B,AAA/B,8BAA+B,CAAK,wBAEnC,oCAAoC,AAApC,mCAAoC,CAAK,sBACzC,kCAAkC,AAAlC,iCAAkC,CAAK,yBACvC,qCAAgC,AAAhC,+BAAgC,CAAK,0BACrC,sCAAuC,AAAvC,sCAAuC,CAAK,yBAC5C,yCAAsC,AAAtC,qCAAsC,CAAK,0BAC3C,sCAAiC,AAAjC,gCAAiC,CAAK,oBAExC,oCAA2B,AAA3B,mCAA2B,AAA3B,0BAA2B,CAAK,qBAChC,qCAAiC,AAAjC,gCAAiC,CAAK,mBACtC,mCAA+B,AAA/B,8BAA+B,CAAK,sBACpC,sCAA6B,AAA7B,qCAA6B,AAA7B,4BAA6B,CAAK,wBAClC,wCAA+B,AAA/B,8BAA+B,CAAK,uBACpC,uCAA8B,AAA9B,sCAA8B,AAA9B,6BAA8B,CAAK,C9CWnE,2B8ChDA,eAA2B,4BAAS,AAAT,kBAAS,AAAT,QAAS,CAAK,cACd,4BAAQ,AAAR,iBAAQ,AAAR,OAAQ,CAAK,mBACb,4BAAQ,AAAR,iBAAQ,AAAR,OAAQ,CAAK,aAER,yCAA8B,AAA9B,wCAA8B,AAA9B,kCAA8B,AAA9B,6BAA8B,CAAK,gBACnC,uCAAiC,AAAjC,wCAAiC,AAAjC,qCAAiC,AAAjC,gCAAiC,CAAK,qBACtC,yCAAsC,AAAtC,yCAAsC,AAAtC,0CAAsC,AAAtC,qCAAsC,CAAK,wBAC3C,uCAAyC,AAAzC,yCAAyC,AAAzC,6CAAyC,AAAzC,wCAAyC,CAAK,cAEhD,8BAA0B,AAA1B,yBAA0B,CAAK,gBAC/B,gCAA4B,AAA5B,2BAA4B,CAAK,sBACjC,sCAAkC,AAAlC,iCAAkC,CAAK,0BAEjC,kCAAsC,AAAtC,+BAAsC,AAAtC,qCAAsC,CAAK,wBAC3C,gCAAoC,AAApC,6BAAoC,AAApC,mCAAoC,CAAK,2BACzC,mCAAkC,AAAlC,gCAAkC,AAAlC,iCAAkC,CAAK,4BACvC,oCAAyC,AAAzC,iCAAyC,AAAzC,wCAAyC,CAAK,2BAC9C,oCAAwC,AAAxC,uCAAwC,CAAK,sBAEhD,mCAAkC,AAAlC,gCAAkC,AAAlC,iCAAkC,CAAK,oBACvC,iCAAgC,AAAhC,8BAAgC,AAAhC,+BAAgC,CAAK,uBACrC,oCAA8B,AAA9B,iCAA8B,AAA9B,6BAA8B,CAAK,yBACnC,sCAAgC,AAAhC,mCAAgC,AAAhC,+BAAgC,CAAK,wBACrC,qCAA+B,AAA/B,kCAA+B,AAA/B,8BAA+B,CAAK,wBAEnC,oCAAoC,AAApC,mCAAoC,CAAK,sBACzC,kCAAkC,AAAlC,iCAAkC,CAAK,yBACvC,qCAAgC,AAAhC,+BAAgC,CAAK,0BACrC,sCAAuC,AAAvC,sCAAuC,CAAK,yBAC5C,yCAAsC,AAAtC,qCAAsC,CAAK,0BAC3C,sCAAiC,AAAjC,gCAAiC,CAAK,oBAExC,oCAA2B,AAA3B,mCAA2B,AAA3B,0BAA2B,CAAK,qBAChC,qCAAiC,AAAjC,gCAAiC,CAAK,mBACtC,mCAA+B,AAA/B,8BAA+B,CAAK,sBACpC,sCAA6B,AAA7B,qCAA6B,AAA7B,4BAA6B,CAAK,wBAClC,wCAA+B,AAA/B,8BAA+B,CAAK,uBACpC,uCAA8B,AAA9B,sCAA8B,AAA9B,6BAA8B,CAAK,CCzCnE,YCHF,qBAAsB,CDG2B,aCAjD,sBAAuB,CDC2B,YCElD,qBAAsB,ChDiDpB,0B+CpDA,eCHF,qBAAsB,CDG2B,gBCAjD,sBAAuB,CDC2B,eCElD,qBAAsB,CDD2B,C/CkD/C,0B+CpDA,eCHF,qBAAsB,CDG2B,gBCAjD,sBAAuB,CDC2B,eCElD,qBAAsB,CDD2B,C/CkD/C,0B+CpDA,eCHF,qBAAsB,CDG2B,gBCAjD,sBAAuB,CDC2B,eCElD,qBAAsB,CDD2B,C/CkD/C,2B+CpDA,eCHF,qBAAsB,CDG2B,gBCAjD,sBAAuB,CDC2B,eCElD,qBAAsB,CDD2B,CEJnD,WACE,eACA,MACA,QACA,OACA,Y3D0kB8B,C2DzkB/B,cAGC,eACA,QACA,SACA,OACA,Y3DkkB8B,C2DjkB/B,YAGC,wBACA,AADA,gBACA,MACA,Y3D6jB8B,C2D5jB/B,SCjBC,kBACA,UACA,WACA,UACA,YACA,gBACA,sBACA,QAAS,CAUT,mDAEE,gBACA,WACA,YACA,SACA,iBACA,SAAU,CACX,MC1BwB,oBAA4B,CAAnD,MAAuB,oBAA4B,CAAnD,MAAuB,oBAA4B,CAAnD,OAAuB,qBAA4B,CAAnD,MAAuB,qBAA4B,CAAnD,MAAuB,qBAA4B,CAAnD,MAAuB,qBAA4B,CAAnD,OAAuB,sBAA4B,CAAI,QAIjD,yBAA0B,CAAK,QAC/B,0BAA2B,CAAK,KCED,qBAA+C,CAAI,MACnD,uBAAyC,CAAI,MAC7C,yBAA2C,CAAI,MAC/C,0BAA4C,CAAI,MAChD,wBAA0C,CAAI,MAE7E,0BACA,wBAAyC,CAC1C,MAEC,wBACA,0BAA4C,CAX9C,KAAiC,+BAA+C,CAAI,MACnD,4BAAyC,CAAI,MAC7C,8BAA2C,CAAI,MAC/C,+BAA4C,CAAI,MAChD,6BAA0C,CAAI,MAE7E,+BACA,6BAAyC,CAC1C,MAEC,6BACA,+BAA4C,CAX9C,KAAiC,6BAA+C,CAAI,MACnD,2BAAyC,CAAI,MAC7C,6BAA2C,CAAI,MAC/C,8BAA4C,CAAI,MAChD,4BAA0C,CAAI,MAE7E,8BACA,4BAAyC,CAC1C,MAEC,4BACA,8BAA4C,CAX9C,KAAiC,2BAA+C,CAAI,MACnD,0BAAyC,CAAI,MAC7C,4BAA2C,CAAI,MAC/C,6BAA4C,CAAI,MAChD,2BAA0C,CAAI,MAE7E,6BACA,2BAAyC,CAC1C,MAEC,2BACA,6BAA4C,CAX9C,KAAiC,+BAA+C,CAAI,MACnD,4BAAyC,CAAI,MAC7C,8BAA2C,CAAI,MAC/C,+BAA4C,CAAI,MAChD,6BAA0C,CAAI,MAE7E,+BACA,6BAAyC,CAC1C,MAEC,6BACA,+BAA4C,CAX9C,KAAiC,2BAA+C,CAAI,MACnD,0BAAyC,CAAI,MAC7C,4BAA2C,CAAI,MAC/C,6BAA4C,CAAI,MAChD,2BAA0C,CAAI,MAE7E,6BACA,2BAAyC,CAC1C,MAEC,2BACA,6BAA4C,CAX9C,KAAiC,sBAA+C,CAAI,MACnD,wBAAyC,CAAI,MAC7C,0BAA2C,CAAI,MAC/C,2BAA4C,CAAI,MAChD,yBAA0C,CAAI,MAE7E,2BACA,yBAAyC,CAC1C,MAEC,yBACA,2BAA4C,CAX9C,KAAiC,gCAA+C,CAAI,MACnD,6BAAyC,CAAI,MAC7C,+BAA2C,CAAI,MAC/C,gCAA4C,CAAI,MAChD,8BAA0C,CAAI,MAE7E,gCACA,8BAAyC,CAC1C,MAEC,8BACA,gCAA4C,CAX9C,KAAiC,8BAA+C,CAAI,MACnD,4BAAyC,CAAI,MAC7C,8BAA2C,CAAI,MAC/C,+BAA4C,CAAI,MAChD,6BAA0C,CAAI,MAE7E,+BACA,6BAAyC,CAC1C,MAEC,6BACA,+BAA4C,CAX9C,KAAiC,4BAA+C,CAAI,MACnD,2BAAyC,CAAI,MAC7C,6BAA2C,CAAI,MAC/C,8BAA4C,CAAI,MAChD,4BAA0C,CAAI,MAE7E,8BACA,4BAAyC,CAC1C,MAEC,4BACA,8BAA4C,CAX9C,KAAiC,gCAA+C,CAAI,MACnD,6BAAyC,CAAI,MAC7C,+BAA2C,CAAI,MAC/C,gCAA4C,CAAI,MAChD,8BAA0C,CAAI,MAE7E,gCACA,8BAAyC,CAC1C,MAEC,8BACA,gCAA4C,CAX9C,KAAiC,4BAA+C,CAAI,MACnD,2BAAyC,CAAI,MAC7C,6BAA2C,CAAI,MAC/C,8BAA4C,CAAI,MAChD,4BAA0C,CAAI,MAE7E,8BACA,4BAAyC,CAC1C,MAEC,4BACA,8BAA4C,CAC7C,QAKe,sBAA8B,CAAK,SACnC,0BAA8B,CAAK,SACnC,4BAA8B,CAAK,SACnC,6BAA8B,CAAK,SACnC,2BAA8B,CAAK,SAErD,6BACA,2BAA6B,CAC9B,SAEC,2BACA,6BAA8B,CpDiBhC,0BoD7CI,QAAiC,qBAA+C,CAAI,SACnD,uBAAyC,CAAI,SAC7C,yBAA2C,CAAI,SAC/C,0BAA4C,CAAI,SAChD,wBAA0C,CAAI,SAE7E,0BACA,wBAAyC,CAC1C,SAEC,wBACA,0BAA4C,CAX9C,QAAiC,+BAA+C,CAAI,SACnD,4BAAyC,CAAI,SAC7C,8BAA2C,CAAI,SAC/C,+BAA4C,CAAI,SAChD,6BAA0C,CAAI,SAE7E,+BACA,6BAAyC,CAC1C,SAEC,6BACA,+BAA4C,CAX9C,QAAiC,6BAA+C,CAAI,SACnD,2BAAyC,CAAI,SAC7C,6BAA2C,CAAI,SAC/C,8BAA4C,CAAI,SAChD,4BAA0C,CAAI,SAE7E,8BACA,4BAAyC,CAC1C,SAEC,4BACA,8BAA4C,CAX9C,QAAiC,2BAA+C,CAAI,SACnD,0BAAyC,CAAI,SAC7C,4BAA2C,CAAI,SAC/C,6BAA4C,CAAI,SAChD,2BAA0C,CAAI,SAE7E,6BACA,2BAAyC,CAC1C,SAEC,2BACA,6BAA4C,CAX9C,QAAiC,+BAA+C,CAAI,SACnD,4BAAyC,CAAI,SAC7C,8BAA2C,CAAI,SAC/C,+BAA4C,CAAI,SAChD,6BAA0C,CAAI,SAE7E,+BACA,6BAAyC,CAC1C,SAEC,6BACA,+BAA4C,CAX9C,QAAiC,2BAA+C,CAAI,SACnD,0BAAyC,CAAI,SAC7C,4BAA2C,CAAI,SAC/C,6BAA4C,CAAI,SAChD,2BAA0C,CAAI,SAE7E,6BACA,2BAAyC,CAC1C,SAEC,2BACA,6BAA4C,CAX9C,QAAiC,sBAA+C,CAAI,SACnD,wBAAyC,CAAI,SAC7C,0BAA2C,CAAI,SAC/C,2BAA4C,CAAI,SAChD,yBAA0C,CAAI,SAE7E,2BACA,yBAAyC,CAC1C,SAEC,yBACA,2BAA4C,CAX9C,QAAiC,gCAA+C,CAAI,SACnD,6BAAyC,CAAI,SAC7C,+BAA2C,CAAI,SAC/C,gCAA4C,CAAI,SAChD,8BAA0C,CAAI,SAE7E,gCACA,8BAAyC,CAC1C,SAEC,8BACA,gCAA4C,CAX9C,QAAiC,8BAA+C,CAAI,SACnD,4BAAyC,CAAI,SAC7C,8BAA2C,CAAI,SAC/C,+BAA4C,CAAI,SAChD,6BAA0C,CAAI,SAE7E,+BACA,6BAAyC,CAC1C,SAEC,6BACA,+BAA4C,CAX9C,QAAiC,4BAA+C,CAAI,SACnD,2BAAyC,CAAI,SAC7C,6BAA2C,CAAI,SAC/C,8BAA4C,CAAI,SAChD,4BAA0C,CAAI,SAE7E,8BACA,4BAAyC,CAC1C,SAEC,4BACA,8BAA4C,CAX9C,QAAiC,gCAA+C,CAAI,SACnD,6BAAyC,CAAI,SAC7C,+BAA2C,CAAI,SAC/C,gCAA4C,CAAI,SAChD,8BAA0C,CAAI,SAE7E,gCACA,8BAAyC,CAC1C,SAEC,8BACA,gCAA4C,CAX9C,QAAiC,4BAA+C,CAAI,SACnD,2BAAyC,CAAI,SAC7C,6BAA2C,CAAI,SAC/C,8BAA4C,CAAI,SAChD,4BAA0C,CAAI,SAE7E,8BACA,4BAAyC,CAC1C,SAEC,4BACA,8BAA4C,CAC7C,WAKe,sBAA8B,CAAK,YACnC,0BAA8B,CAAK,YACnC,4BAA8B,CAAK,YACnC,6BAA8B,CAAK,YACnC,2BAA8B,CAAK,YAErD,6BACA,2BAA6B,CAC9B,YAEC,2BACA,6BAA8B,CAC/B,CpDgBD,0BoD7CI,QAAiC,qBAA+C,CAAI,SACnD,uBAAyC,CAAI,SAC7C,yBAA2C,CAAI,SAC/C,0BAA4C,CAAI,SAChD,wBAA0C,CAAI,SAE7E,0BACA,wBAAyC,CAC1C,SAEC,wBACA,0BAA4C,CAX9C,QAAiC,+BAA+C,CAAI,SACnD,4BAAyC,CAAI,SAC7C,8BAA2C,CAAI,SAC/C,+BAA4C,CAAI,SAChD,6BAA0C,CAAI,SAE7E,+BACA,6BAAyC,CAC1C,SAEC,6BACA,+BAA4C,CAX9C,QAAiC,6BAA+C,CAAI,SACnD,2BAAyC,CAAI,SAC7C,6BAA2C,CAAI,SAC/C,8BAA4C,CAAI,SAChD,4BAA0C,CAAI,SAE7E,8BACA,4BAAyC,CAC1C,SAEC,4BACA,8BAA4C,CAX9C,QAAiC,2BAA+C,CAAI,SACnD,0BAAyC,CAAI,SAC7C,4BAA2C,CAAI,SAC/C,6BAA4C,CAAI,SAChD,2BAA0C,CAAI,SAE7E,6BACA,2BAAyC,CAC1C,SAEC,2BACA,6BAA4C,CAX9C,QAAiC,+BAA+C,CAAI,SACnD,4BAAyC,CAAI,SAC7C,8BAA2C,CAAI,SAC/C,+BAA4C,CAAI,SAChD,6BAA0C,CAAI,SAE7E,+BACA,6BAAyC,CAC1C,SAEC,6BACA,+BAA4C,CAX9C,QAAiC,2BAA+C,CAAI,SACnD,0BAAyC,CAAI,SAC7C,4BAA2C,CAAI,SAC/C,6BAA4C,CAAI,SAChD,2BAA0C,CAAI,SAE7E,6BACA,2BAAyC,CAC1C,SAEC,2BACA,6BAA4C,CAX9C,QAAiC,sBAA+C,CAAI,SACnD,wBAAyC,CAAI,SAC7C,0BAA2C,CAAI,SAC/C,2BAA4C,CAAI,SAChD,yBAA0C,CAAI,SAE7E,2BACA,yBAAyC,CAC1C,SAEC,yBACA,2BAA4C,CAX9C,QAAiC,gCAA+C,CAAI,SACnD,6BAAyC,CAAI,SAC7C,+BAA2C,CAAI,SAC/C,gCAA4C,CAAI,SAChD,8BAA0C,CAAI,SAE7E,gCACA,8BAAyC,CAC1C,SAEC,8BACA,gCAA4C,CAX9C,QAAiC,8BAA+C,CAAI,SACnD,4BAAyC,CAAI,SAC7C,8BAA2C,CAAI,SAC/C,+BAA4C,CAAI,SAChD,6BAA0C,CAAI,SAE7E,+BACA,6BAAyC,CAC1C,SAEC,6BACA,+BAA4C,CAX9C,QAAiC,4BAA+C,CAAI,SACnD,2BAAyC,CAAI,SAC7C,6BAA2C,CAAI,SAC/C,8BAA4C,CAAI,SAChD,4BAA0C,CAAI,SAE7E,8BACA,4BAAyC,CAC1C,SAEC,4BACA,8BAA4C,CAX9C,QAAiC,gCAA+C,CAAI,SACnD,6BAAyC,CAAI,SAC7C,+BAA2C,CAAI,SAC/C,gCAA4C,CAAI,SAChD,8BAA0C,CAAI,SAE7E,gCACA,8BAAyC,CAC1C,SAEC,8BACA,gCAA4C,CAX9C,QAAiC,4BAA+C,CAAI,SACnD,2BAAyC,CAAI,SAC7C,6BAA2C,CAAI,SAC/C,8BAA4C,CAAI,SAChD,4BAA0C,CAAI,SAE7E,8BACA,4BAAyC,CAC1C,SAEC,4BACA,8BAA4C,CAC7C,WAKe,sBAA8B,CAAK,YACnC,0BAA8B,CAAK,YACnC,4BAA8B,CAAK,YACnC,6BAA8B,CAAK,YACnC,2BAA8B,CAAK,YAErD,6BACA,2BAA6B,CAC9B,YAEC,2BACA,6BAA8B,CAC/B,CpDgBD,0BoD7CI,QAAiC,qBAA+C,CAAI,SACnD,uBAAyC,CAAI,SAC7C,yBAA2C,CAAI,SAC/C,0BAA4C,CAAI,SAChD,wBAA0C,CAAI,SAE7E,0BACA,wBAAyC,CAC1C,SAEC,wBACA,0BAA4C,CAX9C,QAAiC,+BAA+C,CAAI,SACnD,4BAAyC,CAAI,SAC7C,8BAA2C,CAAI,SAC/C,+BAA4C,CAAI,SAChD,6BAA0C,CAAI,SAE7E,+BACA,6BAAyC,CAC1C,SAEC,6BACA,+BAA4C,CAX9C,QAAiC,6BAA+C,CAAI,SACnD,2BAAyC,CAAI,SAC7C,6BAA2C,CAAI,SAC/C,8BAA4C,CAAI,SAChD,4BAA0C,CAAI,SAE7E,8BACA,4BAAyC,CAC1C,SAEC,4BACA,8BAA4C,CAX9C,QAAiC,2BAA+C,CAAI,SACnD,0BAAyC,CAAI,SAC7C,4BAA2C,CAAI,SAC/C,6BAA4C,CAAI,SAChD,2BAA0C,CAAI,SAE7E,6BACA,2BAAyC,CAC1C,SAEC,2BACA,6BAA4C,CAX9C,QAAiC,+BAA+C,CAAI,SACnD,4BAAyC,CAAI,SAC7C,8BAA2C,CAAI,SAC/C,+BAA4C,CAAI,SAChD,6BAA0C,CAAI,SAE7E,+BACA,6BAAyC,CAC1C,SAEC,6BACA,+BAA4C,CAX9C,QAAiC,2BAA+C,CAAI,SACnD,0BAAyC,CAAI,SAC7C,4BAA2C,CAAI,SAC/C,6BAA4C,CAAI,SAChD,2BAA0C,CAAI,SAE7E,6BACA,2BAAyC,CAC1C,SAEC,2BACA,6BAA4C,CAX9C,QAAiC,sBAA+C,CAAI,SACnD,wBAAyC,CAAI,SAC7C,0BAA2C,CAAI,SAC/C,2BAA4C,CAAI,SAChD,yBAA0C,CAAI,SAE7E,2BACA,yBAAyC,CAC1C,SAEC,yBACA,2BAA4C,CAX9C,QAAiC,gCAA+C,CAAI,SACnD,6BAAyC,CAAI,SAC7C,+BAA2C,CAAI,SAC/C,gCAA4C,CAAI,SAChD,8BAA0C,CAAI,SAE7E,gCACA,8BAAyC,CAC1C,SAEC,8BACA,gCAA4C,CAX9C,QAAiC,8BAA+C,CAAI,SACnD,4BAAyC,CAAI,SAC7C,8BAA2C,CAAI,SAC/C,+BAA4C,CAAI,SAChD,6BAA0C,CAAI,SAE7E,+BACA,6BAAyC,CAC1C,SAEC,6BACA,+BAA4C,CAX9C,QAAiC,4BAA+C,CAAI,SACnD,2BAAyC,CAAI,SAC7C,6BAA2C,CAAI,SAC/C,8BAA4C,CAAI,SAChD,4BAA0C,CAAI,SAE7E,8BACA,4BAAyC,CAC1C,SAEC,4BACA,8BAA4C,CAX9C,QAAiC,gCAA+C,CAAI,SACnD,6BAAyC,CAAI,SAC7C,+BAA2C,CAAI,SAC/C,gCAA4C,CAAI,SAChD,8BAA0C,CAAI,SAE7E,gCACA,8BAAyC,CAC1C,SAEC,8BACA,gCAA4C,CAX9C,QAAiC,4BAA+C,CAAI,SACnD,2BAAyC,CAAI,SAC7C,6BAA2C,CAAI,SAC/C,8BAA4C,CAAI,SAChD,4BAA0C,CAAI,SAE7E,8BACA,4BAAyC,CAC1C,SAEC,4BACA,8BAA4C,CAC7C,WAKe,sBAA8B,CAAK,YACnC,0BAA8B,CAAK,YACnC,4BAA8B,CAAK,YACnC,6BAA8B,CAAK,YACnC,2BAA8B,CAAK,YAErD,6BACA,2BAA6B,CAC9B,YAEC,2BACA,6BAA8B,CAC/B,CpDgBD,2BoD7CI,QAAiC,qBAA+C,CAAI,SACnD,uBAAyC,CAAI,SAC7C,yBAA2C,CAAI,SAC/C,0BAA4C,CAAI,SAChD,wBAA0C,CAAI,SAE7E,0BACA,wBAAyC,CAC1C,SAEC,wBACA,0BAA4C,CAX9C,QAAiC,+BAA+C,CAAI,SACnD,4BAAyC,CAAI,SAC7C,8BAA2C,CAAI,SAC/C,+BAA4C,CAAI,SAChD,6BAA0C,CAAI,SAE7E,+BACA,6BAAyC,CAC1C,SAEC,6BACA,+BAA4C,CAX9C,QAAiC,6BAA+C,CAAI,SACnD,2BAAyC,CAAI,SAC7C,6BAA2C,CAAI,SAC/C,8BAA4C,CAAI,SAChD,4BAA0C,CAAI,SAE7E,8BACA,4BAAyC,CAC1C,SAEC,4BACA,8BAA4C,CAX9C,QAAiC,2BAA+C,CAAI,SACnD,0BAAyC,CAAI,SAC7C,4BAA2C,CAAI,SAC/C,6BAA4C,CAAI,SAChD,2BAA0C,CAAI,SAE7E,6BACA,2BAAyC,CAC1C,SAEC,2BACA,6BAA4C,CAX9C,QAAiC,+BAA+C,CAAI,SACnD,4BAAyC,CAAI,SAC7C,8BAA2C,CAAI,SAC/C,+BAA4C,CAAI,SAChD,6BAA0C,CAAI,SAE7E,+BACA,6BAAyC,CAC1C,SAEC,6BACA,+BAA4C,CAX9C,QAAiC,2BAA+C,CAAI,SACnD,0BAAyC,CAAI,SAC7C,4BAA2C,CAAI,SAC/C,6BAA4C,CAAI,SAChD,2BAA0C,CAAI,SAE7E,6BACA,2BAAyC,CAC1C,SAEC,2BACA,6BAA4C,CAX9C,QAAiC,sBAA+C,CAAI,SACnD,wBAAyC,CAAI,SAC7C,0BAA2C,CAAI,SAC/C,2BAA4C,CAAI,SAChD,yBAA0C,CAAI,SAE7E,2BACA,yBAAyC,CAC1C,SAEC,yBACA,2BAA4C,CAX9C,QAAiC,gCAA+C,CAAI,SACnD,6BAAyC,CAAI,SAC7C,+BAA2C,CAAI,SAC/C,gCAA4C,CAAI,SAChD,8BAA0C,CAAI,SAE7E,gCACA,8BAAyC,CAC1C,SAEC,8BACA,gCAA4C,CAX9C,QAAiC,8BAA+C,CAAI,SACnD,4BAAyC,CAAI,SAC7C,8BAA2C,CAAI,SAC/C,+BAA4C,CAAI,SAChD,6BAA0C,CAAI,SAE7E,+BACA,6BAAyC,CAC1C,SAEC,6BACA,+BAA4C,CAX9C,QAAiC,4BAA+C,CAAI,SACnD,2BAAyC,CAAI,SAC7C,6BAA2C,CAAI,SAC/C,8BAA4C,CAAI,SAChD,4BAA0C,CAAI,SAE7E,8BACA,4BAAyC,CAC1C,SAEC,4BACA,8BAA4C,CAX9C,QAAiC,gCAA+C,CAAI,SACnD,6BAAyC,CAAI,SAC7C,+BAA2C,CAAI,SAC/C,gCAA4C,CAAI,SAChD,8BAA0C,CAAI,SAE7E,gCACA,8BAAyC,CAC1C,SAEC,8BACA,gCAA4C,CAX9C,QAAiC,4BAA+C,CAAI,SACnD,2BAAyC,CAAI,SAC7C,6BAA2C,CAAI,SAC/C,8BAA4C,CAAI,SAChD,4BAA0C,CAAI,SAE7E,8BACA,4BAAyC,CAC1C,SAEC,4BACA,8BAA4C,CAC7C,WAKe,sBAA8B,CAAK,YACnC,0BAA8B,CAAK,YACnC,4BAA8B,CAAK,YACnC,6BAA8B,CAAK,YACnC,2BAA8B,CAAK,YAErD,6BACA,2BAA6B,CAC9B,YAEC,2BACA,6BAA8B,CAC/B,CClCL,cAAiB,6BAA8B,CAAK,aACnC,6BAA8B,CAAK,eCHlD,gBACA,uBACA,kBAAmB,CDEsB,WAQf,0BAA2B,CAAK,YAChC,2BAA4B,CAAK,aACjC,4BAA6B,CrDsCrD,0BqDxCA,cAAwB,0BAA2B,CAAK,eAChC,2BAA4B,CAAK,gBACjC,4BAA6B,CAAK,CrDsC1D,0BqDxCA,cAAwB,0BAA2B,CAAK,eAChC,2BAA4B,CAAK,gBACjC,4BAA6B,CAAK,CrDsC1D,0BqDxCA,cAAwB,0BAA2B,CAAK,eAChC,2BAA4B,CAAK,gBACjC,4BAA6B,CAAK,CrDsC1D,2BqDxCA,cAAwB,0BAA2B,CAAK,eAChC,2BAA4B,CAAK,gBACjC,4BAA6B,CAAK,CAM9D,gBAAmB,mCAAoC,CAAK,gBACzC,mCAAoC,CAAK,iBACzC,oCAAqC,CAAK,oBAIvC,kB/DkOK,C+DlO+B,kBACpC,gB/DkOC,C+DlOiC,aAClC,iBAAkB,CAAK,YAK3C,qBAAsB,CElCtB,YACE,wBAAwB,ChEgBxB,sCgEZE,wBAAqC,ChEetC,cgEnBD,wBAAwB,ChEgBxB,0CgEZE,wBAAqC,ChEetC,cgEnBD,wBAAwB,ChEgBxB,0CgEZE,wBAAqC,ChEetC,WgEnBD,wBAAwB,ChEgBxB,oCgEZE,wBAAqC,ChEetC,cgEnBD,wBAAwB,ChEgBxB,0CgEZE,wBAAqC,ChEetC,agEnBD,wBAAwB,ChEgBxB,wCgEZE,wBAAqC,ChEetC,gBgEnBD,wBAAwB,ChEgBxB,8CgEZE,wBAAqC,ChEetC,WiErBH,WACA,kBACA,iBACA,6BACA,QAAS,CHsDV,WIzDC,4BAA6B,CCG9B,cAOK,uBAAwB,C1DwD1B,0B0DrDF,gBAEI,uBAAwB,CAE3B,C1DoCC,0B0D7CF,cAEI,uBAAwB,CAE3B,C1DsDC,0B0DrDF,gBAEI,uBAAwB,CAE3B,C1DoCC,0B0D7CF,cAEI,uBAAwB,CAE3B,C1DsDC,0B0DrDF,gBAEI,uBAAwB,CAE3B,C1DoCC,0B0D7CF,cAEI,uBAAwB,CAE3B,C1DsDC,2B0DrDF,gBAEI,uBAAwB,CAE3B,C1DoCC,2B0D7CF,cAEI,uBAAwB,CAE3B,CACD,gBAEI,uBAAwB,CAE3B,qBASD,uBAAwB,CAExB,aAHF,qBAII,wBAAyB,CAE5B,CACD,sBACE,uBAAwB,CAExB,aAHF,sBAII,yBAA0B,CAE7B,CACD,4BACE,uBAAwB,CAExB,aAHF,4BAII,+BAAgC,CAEnC,CAGC,aADF,cAEI,uBAAwB,CAE3B,CCtDD;;;GAGG,WCCD,0BACA,oDACA,6WAMA,mBACA,iBAAkB,CCVpB,IACE,qBACA,6CACA,kBACA,oBACA,mCACA,iCAAkC,CAEnC,OCNC,yBACA,kBACA,mBAAoB,CACrB,OACuB,aAAc,CAAK,OACnB,aAAc,CAAK,OACnB,aAAc,CAAK,OACnB,aAAc,CAAK,OCTzC,qBACA,iBAAkB,CACnB,OCDC,eACA,2BACA,oBAAqB,CAHvB,UAIS,iBAAkB,CAAK,OAG9B,kBACA,qBACA,qBACA,kBACA,iBAAkB,CALpB,aAOI,oBAAgC,CACjC,WCbD,yBACA,yBACA,kBAAmB,CACpB,cAE8B,UAAW,CAAK,eACf,WAAY,CAAK,iBAGf,iBAAkB,CADpD,kBAEmC,gBAAiB,CAAK,YAI3C,WAAY,CAAK,WAClB,UAAW,CAAK,cAGb,iBAAkB,CADlC,eAEiB,gBAAiB,CAAK,SCnBrC,6CACQ,oCAAqC,CAC9C,UAGC,+CACQ,sCAAuC,CAChD,2BAGC,GACE,+BACQ,sBAAuB,CAEjC,KACE,iCACQ,wBAAyB,CAAA,CAIrC,mBACE,GACE,+BACQ,sBAAuB,CAEjC,KACE,iCACQ,wBAAyB,CAAA,CC5BrC,cCWE,sEACA,gCACI,AACI,uBAA2B,CDdiC,eCWpE,sEACA,iCACI,AACI,wBAA2B,CDbiC,eCUpE,sEACA,iCACI,AACI,wBAA2B,CDZiC,oBCgBpE,gFACA,+BACI,AACI,sBAA+B,CDjB+B,kBCctE,gFACA,+BACI,AACI,sBAA+B,CDhB+B,gHAUtE,oBAAY,AAAZ,WAAY,CACb,UEfC,kBACA,qBACA,UACA,WACA,gBACA,qBAAsB,CACvB,0BAEC,kBACA,OACA,WACA,iBAAkB,CACnB,aAC6B,mBAAoB,CAAK,aACzB,aAAc,CAAK,YACpB,UCTH,CDSyB,iBEhBjB,WDwUnB,CAAA,iBCvUN,WD2dM,CAAA,kBC1dL,WAAgC,CD0jB1B,sBCzjBF,WAAyB,CAAA,iBAC9B,WAAyB,CAAA,gBAA0B,WAC3B,CAAA,kBAAyB,WACzC,CAAkB,gBAA2B,WACtD,CAAA,gBAAkD,WAClD,CAAA,oBAAkD,WAC9C,CAAA,cDupBM,WCvpBgD,CAC5D,mBDqpBM,WCrpB0C,CAAA,iBACX,WAAqB,CAAA,oDAGhE,WACA,CAAA,uBDqqBe,WCrqB6C,CAAA,wBD+iBvC,WC9iBmD,CAAA,qBAC/B,WAAiC,CAAA,kBAC7D,WD4fM,CAAA,+BAsEH,WCjkB8C,CAAA,mBAEvD,WAAyB,CAAO,gBAAiB,WACpB,CAAA,kBAA4B,WAC/B,CAAA,mBAAyB,WACvB,CAAA,gBAA2B,WACnD,CAAA,oBAAqD,WACxD,CAAA,+BACI,WAAyB,CAAO,6BAAsB,WAClB,CAAA,iBAAwC,WAAA,CAAA,yBACJ,WAC3E,CAAA,0CACQ,WDweM,CAAA,mBCxeqD,WAE5E,CAAA,oBAAmC,WAA2B,CAAA,gBAC1B,WDggBnB,CAAA,gBC/fL,WAAyB,CAAA,sBAC7B,WD2YM,CAAA,sBC1YmB,WD4PZ,CC5PqC,uBACnB,WDoUnB,CAAO,qBCnUb,WDitBM,CAAA,kBCjtBkD,WAC9B,CAAA,mBAAgC,WAC3D,CAAO,eAAgD,WAC1D,CAAA,gBDyeM,WCze8C,CAAA,gBAC1B,WAA4B,CAAA,oBD0mBnD,WCzmB2C,CAAA,iBAChB,WAAkB,CAAA,kBAClB,WAAkB,CAAA,gBACrB,WDyDnB,CAAO,gBCxDhB,WD+dM,CAAA,kBC9dL,WAAgC,CD2E1B,uBC1EiB,WD0PnB,CAAO,sBCzPY,WAAyB,CAAA,sBAChB,WAAoB,CAAA,wBACtB,WAAgC,CAAA,uBACjC,WAA+B,CAAA,yBAC/B,WAA+B,CAAA,gBACtD,WAAgC,CDvC1B,qCAGD,WCqCmD,CAAA,kBAChD,WDxCD,CAAA,wBCyCU,WAAyB,CAAA,uDAEM,WAC7B,CAAA,kBAA2B,WAC9C,CAAA,sBAA0D,WACjE,CAAA,kBACA,WACT,CAAA,gBAAsC,WAA8B,CAAA,2CACN,WACvB,CAAA,0BAC7B,WDtDM,CAAA,0BCuDiB,WAAyB,CAAA,kBAE1D,WAAA,CAAA,yBAAgF,WAAA,CAAA,yBD+fxD,WC9fsD,CAAA,oBACnC,WAAmC,CAAA,gBAC3C,WDzBnB,CAAA,iBCyB8C,WACpB,CAAA,gBAAkC,WAAA,CAAA,mBDsLrD,WCrLqD,CAAA,wBDjB1D,WCmBV,CAAA,wBAAkD,WACjD,CAAO,iBAA4C,WACpD,CAAA,wBAAkD,WACtB,CAAA,yBAA4B,WACzC,CAAkB,uBAAiC,WAC1D,CAAA,wBAA0D,WACxC,CAAA,wBAA0B,WACrC,CAAkB,wBAAiC,WACzD,CAAA,2BAA2D,WAC7D,CAAO,uBAAkD,WACxD,CAAA,sBAA0D,WAAA,CAC1D,0BAA0D,WAAA,CAC1D,0BAA0D,WAAA,CAAA,eAC9B,WAAoC,CAAA,sBACxC,WD0SnB,CAAO,uBCzSW,WD0GnB,CAAA,oBCzGF,WAAyB,CAAA,sBAAmC,WAC5D,CAAA,yCDlCL,WCmC2C,CAAA,kBACjB,WAA+B,CAAA,oBAChD,WDnDD,CAAA,gBCoDT,WAAyB,CAAA,iBAA6B,WACpD,CAAA,oBAAwD,WAAA,CACtD,8BACkB,WAA0B,CAAA,gBACzB,WD8InB,CAAO,gBC7IX,WAAyB,CAAO,gBACpC,WAAyB,CAAA,eAAyB,WACxB,CAAA,qBAA0B,WACzC,CAAkB,mDACiB,WAAgC,CAAA,iBACrD,WAAyB,CAAA,oBD2S5C,WC1S4C,CAAA,kBD8K5C,WC7K4C,CAAA,mBD0I7C,WCzI2C,CAAA,kBAClB,WAA8B,CAAA,sBAEpE,WAAA,CAAA,wBDiI8B,WCjI4D,CAAA,mBDgZ3E,WC/Y6C,CAAA,yBDCnC,WCCf,CAAA,kBDoaM,WCpa8C,CAAA,uBDiEtC,WC/Dd,CAAA,oBD6Ta,WC7TuC,CAAA,oBDwC1C,WCvCkD,CAAA,4CAE3D,WAAyB,CAAA,0BACnB,WAAyB,CAAA,2BACP,WD0KnB,CAAA,wBCzKM,WD2KD,CAAA,eC1KT,WAAyB,CAAA,iCACA,WAA6B,CAAA,oBACnD,WACf,CAAA,uBDlEmB,WCkEiD,CAAA,yBDglB5C,WC/kBsD,CAAA,qBAClC,WD4HnB,CAAO,mBC3HhB,WAAyB,CAAA,oBAClC,WD2QM,CAAA,2BCzQb,WAAiC,CAAA,sBAAyB,WACrB,CAAA,yBAA6B,WAC1B,CAAA,mBAAgC,WACvD,CAAA,kBDoiBM,WCpiBqD,CAAA,yBD4elD,WC3e0C,CACzD,kBD8NM,WC9N+C,CAAA,mBACpB,WAAsB,CAAA,iBAC/C,WAAyB,CAAO,oBAA6B,WACzC,CAAA,sBAA+B,WACrD,CAAA,wBAA2D,WACxC,CAAA,mBAA4B,WAC/C,CAAkB,0CACO,WAAkC,CAAA,kBACzC,WDukBnB,CAAO,kBCtkBZ,WDqQM,CAAA,uBCpQiB,WDiWZ,CCjWsC,+BD4d1C,WC3dgD,CAAA,iBAC3B,WAA+B,CAAA,oBACtD,WD+VM,CAAA,gBC9VX,WAAyB,CAAA,uBACtB,WACd,CAAA,wBDgGkB,WChGgD,CAAA,uBDqKlD,WCpK8C,CAAA,qBD2jB9C,WC1jB8C,CAAA,uBDqCzC,WCpCmD,CAChE,6BACwB,WAAwB,CAAA,8BACI,WAChD,CAAA,2BACJ,WAAyB,CAAA,6BAClB,WAAgC,CDrB1B,iBCqBmD,WACxD,CAAO,kBAAmD,WAAA,CAC3D,iBDkLM,WClLmD,CAAA,kBAClC,WAA8B,CAAA,qBAC5B,WD+KnB,CAAA,sBC/KmD,WAC1B,CAAA,kCACxB,WAAyB,CAAA,iCAC5B,WDjIM,CAAA,iBCiIuD,WAC3D,CAAA,iBDzIM,WC0IlB,CAAA,mCACC,WAAgC,CD6lB1B,mCAvHD,WCre6C,CAClD,qBDyGa,WCzGuC,CAAA,oCACM,WAC7B,CAAA,kBAA+B,WAEtE,CAAA,sDAEA,WAAiC,CAAA,mBAAyB,WACxB,CAAA,mBAA0B,WAC1B,CAAA,yBACpB,WACd,CAAA,qBD6XkB,WC5XV,CAAA,iBACG,WAAyB,CAAA,iBAA4B,WACnD,CAAA,iBAAuD,WAC5D,CAAA,qBACI,WDqGM,CAAA,4BCpGiB,WAA2B,CAAA,8BAEnD,WACX,CAAQ,uBAAkD,WAC/C,CAAA,iBDsOM,WCtO+C,CAAA,sBDqO/C,WCpO+C,CAAA,oBACtB,WAAkC,CAAA,sBACtC,WAA8B,CAAA,uBDwcrD,WCvc6C,CAAA,mBD0O7C,WCzO6C,CAAA,oCACA,WACtB,CAAA,0CACO,WDoTZ,CCpTiD,uCDiItD,WChI0D,CAAA,oBAC9C,WAAgC,CAAA,oBACtC,WAA0B,CAAA,uCACU,WAC1D,CAAA,kCACE,WAAgC,CDrF1B,2CCsFoD,WAC7D,CAAA,qBAAqD,WAAA,CACpD,sBACJ,WD0YM,CAAA,iCCxYd,WAAa,CAAO,mBAAgD,WACzD,CAAA,oBACC,WD2YM,CAAA,sCAhYO,WCVyC,CAAA,uBACA,WAAA,CAAA,oBAE1D,WAAyB,CAAA,0BAEjC,WAAS,CAAA,wBAAmD,WAC/C,CAAA,mBACC,WAAyB,CAAA,uBAC1B,WAAyB,CAAA,oBAA8B,WAC7B,CAAA,kBAA+B,WACtD,CAChB,kBAAiC,WDpIZ,CCoIqC,mBACtB,WD6WnB,CAAA,uBC5WoB,WDyenB,CAAO,sBCvezB,WAAa,CAAA,sBAAuD,WAAA,CACrD,qBDqLa,WCrL4C,CAAA,kBDItD,WCHgD,CAAA,uBACvB,WAAmC,CAAA,gBAC9D,WAAyB,CAAA,oBAC9B,WAAyB,CAAA,uBAA4B,WACxB,CAAA,6BAC5B,WDyZM,CAAA,8BAtjBF,WC8J8C,CAAA,2BACA,WACnD,CAAA,6BAAqD,WACjD,CAAA,sBAAyD,WAC1D,CAAA,uBAAwD,WACxD,CAAA,oBAAwD,WAAA,CACzD,sBAAuD,WAC1D,CAAA,mBD4Ma,WC5MuC,CAAA,kBACtB,WAAgC,CAAA,kBACvC,WAAyB,CAAA,0CACQ,WAC1B,CAAA,oBAAgC,WAAA,CAAA,sBDpO7C,WCqOyD,CAAA,uBACrC,WAAuC,CAAA,mBACnE,WAAyB,CAAA,kBAAoC,WAAA,CAC3D,uCACP,WAAyB,CAAO,sBAC/B,WAAyB,CAAA,oBAAgC,WACnC,CAAA,yBAA6B,WAC3B,CAAA,mBAA+B,WAClC,CAAA,mBAA4B,WAC/C,CAAkB,iBAA2B,WACpD,CAAA,mBAAoD,WAAA,CAAA,sBAEpD,WAAyB,CAAA,kBAA2B,WACzB,CAAA,0BACvB,WAAyB,CAAA,oBAA+B,WACvD,CAAO,gBAAkD,WAC7D,CAAA,+CD7GK,WC8G8C,CAAA,4EDkD1C,WC/CkD,CAAA,0BDoBpD,WCnBgD,CAAA,gBACxB,WDoBnB,CAAO,qBCnBM,WDqUnB,CAAO,0CCpUwC,WAC9B,CAAA,oBAA0B,WACxB,CAAA,gBAA4B,WAClD,CAAA,uBAAwD,WAC5D,CAAA,uBAAoD,WAAA,CAC5C,qBDIa,WCJ+C,CAAA,kBD8X5D,WC7XgD,CAAA,wBACR,WAAA,CAAA,sBAE1D,WAAoB,CAAkB,4BAA8B,WACjD,CAAO,kBAC1B,WACA,CAAA,sBAAwC,WDsVZ,CCtV4C,6BAC7B,WAAmC,CAAA,kBAC7C,WAAyB,CAAA,kBAC7C,WDvHM,CAAA,+BCyHnB,WAAgB,CAAA,gCACJ,WAAyB,CAAO,6BACX,WAAyB,CAAA,+BDzDrC,WC0DmD,CAAA,iBAChC,WAAgC,CAAA,gBAC3D,WD4VM,CAAA,kBC3VT,WAAyB,CAAO,sBAAoB,WACrB,CAAA,oBAAiC,WAC5D,CAAO,sBAAiD,WAAA,CAAA,sBD4JrC,WC1JvB,CAAA,sBAAoD,WAAA,CAAA,uBACQ,WAAA,CAAA,kBACxB,WDxBnB,CAAO,wBCyBC,WAA2B,CAAA,0BD8I9C,WC7I8C,CAAA,oBACvC,WD9JM,CAAA,sBC8J2D,WAChE,CAAA,wBAAkE,WAAA,CAAA,yBACN,WAAA,CAAA,gCACI,WAC/E,CAAA,wBAAmD,WAC3B,CAAA,mBAAyB,WACvB,CAAA,sDACmC,WAC1D,CAAA,kDD5FQ,WC6FkD,CAAA,wDAExB,WAAwB,CAAA,+BDkM1C,WChMlB,CAAA,eD6WM,WC7W8C,CAAA,iCACY,WAAA,CAAA,gCACI,WAClE,CAAA,4DAC0D,WACtD,CAAA,kDAC0B,WAAkC,CAAA,8BAC3B,WDpFZ,CCoFqD,kCDyPpE,WCxPoD,CAAA,gBACtC,WAA4B,CAAA,qBAEhE,WAAA,CAAA,0BD/M6B,WC+M2D,CAAA,2BAExF,WAAqB,CAAA,2BAA+D,WACpE,CAAA,4BACQ,WAAyB,CAAA,4BAEjD,WAAO,CAAO,6BACA,WDhCD,CAAA,qBCkCb,WAAO,CAAA,uBAAiD,WAExD,CAAA,0BD4Ca,WC3CN,CAAA,mBACO,WACP,CAAA,gBACA,WDgDM,CAAA,uBC9Cb,WAAU,CAAA,wBACsB,WAAwB,CAAA,mBAExD,WAAgC,CAAA,0BACrB,WACJ,CAAA,qBAAiD,WAChD,CAAA,kBAAkD,WAAA,CAAA,eACpB,WAA8B,CAAA,qBAC3C,WD0PD,CAAA,4BCzPL,WD0PM,CAAA,kBC1PuD,WAC7D,CAAO,yBAAsD,WAC5D,CAAA,2BAA8D,WAAA,CAAA,yBACA,WAAA,CAAA,2BD8PvD,WC7PyD,CAAA,4BAChB,WAAA,CACrD,iBD8TM,WC9TmD,CAAA,mBAC7B,WDyanB,CAAA,mBCxab,WDsaM,CAAA,iBCraT,WD2ZM,CAAA,oBC1ZC,WAAyB,CAAA,iBAAgC,WACxD,CAAA,sBAA0D,WAC/D,CAAA,kBAAqD,WAAA,CAAA,kBACrB,WAAmC,CAAA,gBACjE,WDgBM,CAAA,sCCf2C,WACvD,CAAA,iBAAiD,WAAA,CAC3C,kBD/RM,WC+RiD,CAAA,mBACzC,WD/RD,CAAA,eCgShB,WAAyB,CAAA,cAA2B,WAC7C,CAAA,iBD+UM,WC/UqD,CAAA,kBAClD,WDgDD,CAAA,qBC/CR,WAAyB,CAAA,0BAAkC,WAChC,CAAA,gCACxB,WAAyB,CAAA,+BACX,WAA0B,CAAA,sDAExB,WAA4B,CAAA,wBDmCjD,WClC6C,CAAA,sBD3K1C,WC4KgD,CAAA,wBACN,WAAA,CAAA,uCAElD,WD4TM,CAAA,yBC3TmB,WDtIZ,CCsIuC,yBD8ChD,WC7C4C,CAAA,iBAE1D,WAAY,CAAA,2BACH,WAAyB,CAAA,qBACxB,WAAyB,CAAO,kBAC/B,WAAyB,CAAA,6DDmWxB,WCjW0C,CAAA,kDAEZ,WAAoB,CAAA,iBACxB,WDkFnB,CAAO,kBClF0C,WACzB,CAAA,kBAAmC,WAAA,CAAA,yBD9WhD,WC+W4D,CAAA,8BDhX7D,WCiX2D,CAAA,uBAExF,WAAA,CAAA,qBDzR6B,WCyR2D,CAAA,gBACjE,WDnMD,CAAA,yBCoMiB,WDiWnB,CAAA,0BChWqB,WDoVnB,CAAA,kBCnVN,WAChB,CAAA,kBAAuC,WAAiB,CAAA,oBACd,WD0GnB,CAAA,eC1GqD,WACpD,CAAkB,oBAAkC,WAC1C,CAAA,iBAA0B,WAAA,CAAA,eAChB,WAAoC,CAAA,iBACnE,WDoWM,CAAA,gBCnWT,WAAyB,CAAA,iBAA2B,WAC/C,CAAA,mBAEf,WAAA,CAAA,0BAAsE,WAAA,CAAA,iBAEtE,WAAkB,CAAA,wBAA4D,WACrE,CAAO,mBAA4C,WAClD,CAAA,qCACyB,WAA2B,CAAA,+BACb,WAA2B,CAAA,gBAAA,WAC7B,CAAA,mBAAuC,WACvE,CAAA,sBAAyD,WAC3D,CAAA,sBAAuD,WACrD,CAAkB,oBAAyB,WACzC,CAAA,sBAA2D,WAAA,CAAA,uBD0EpD,WCzEsD,CAAA,wBAChB,WACpD,CAAA,6BAAoD,WACzB,CAAA,0ED3UnB,WC8UT,CAAA,gDDuDI,WCrDJ,CAAA,gDDpPK,WCqP4C,CACjD,gDACkC,WAAqB,CAAA,uBACrB,WD7WZ,CC6W+C,gBAC9D,WD0LD,CAAA,mBCzLC,WAAyB,CAAA,oBAAiC,WACtC,CAAA,wGDmNtB,WC9MN,CAAA,0BAAkD,WAC/C,CAAA,qDAC2D,WAAA,CAAA,gCACA,WACjC,CAAA,sBAA6B,WACpD,CAAO,eAAiD,WAAA,CAAA,2EAEI,WACrD,CAAA,yBAA+D,WACpE,CAAA,cAChB,WAAkB,CAAA,oCACuB,WAAiC,CAAA,uCAExD,WAAyB,CAAO,2CAElD,WAAuB,CAAkB,mBAAiC,WAC1D,CAAA,uBACA,WAAyB,CAAA,kBAAiC,WAC3D,CAAA,qBAAyD,WACzD,CAAkB,mBAAyB,WAC/C,CAAA,qBAAqD,WACpD,CAAA,4BAAsD,WAElE,CAAA,gBAAa,WACb,CAAA,6CAEa,WAAyB,CAAA,eAA8B,WAAA,CAAA,sBD9TrC,WCgUzB,CAAA,gBACN,WACA,CAAA,sBDqDe,WCrD6C,CACtD,kBACI,WAAyB,CAAA,gBAA2B,WAChD,CAAA,uBAAwD,WACtC,CAAA,gBAAwB,WAAA,CAAA,sBAExD,WAAa,CAAA,kBACE,WAAyB,CAAA,yBAAgC,WAC9B,CAAA,mBACpC,WAAyB,CAAA,yBACd,WACP,CAAA,uBAAoD,WACtD,CAAA,mBACO,WAAyB,CAAA,qBAC9B,WACV,CAAA,qBAA0C,WAAkC,CAAA,sBACxC,WAA4B,CAAA,wBACxB,WAAgC,CAAA,iBACrC,WDjJnB,CAAA,qBCkJH,WDbM,CAAA,cCaiD,WAChC,CAAA,sBAA4B,WAC1B,CAAA,uBAA8B,WAChD,CAAA,yBAA8D,WACjD,CAAA,sBAAyB,WACzC,CAAA,qBACL,WD5MM,CAAA,sBC6Mc,WAAwB,CAAA,kBAC1C,WDxaM,CAAA,yBCyaa,WAAyB,CAAA,sBACnB,WDuFZ,CCvF2C,qBACnC,WAA2B,CAAA,mBAC7B,WAAyB,CAAA,eAC3C,WAAyB,CAAA,mBAChC,WAAyB,CAAO,qBAC1B,WAAyB,CAAA,cAA+B,WAC5D,CAAA,mDD1La,WC2LqD,CAAA,oBD3X3D,WC4X+C,CAAA,sBACtB,WAAkC,CAAA,0BACpC,WAAgC,CAAA,oBACpC,WAA4B,CAAA,oBAC1B,WDlYnB,CAAO,mBCmYb,WDlYM,CAAA,kBCkYiD,WAC7B,CAAA,wBAA+B,WAC7B,CAAA,uBAChC,WAAyB,CAAA,oBAA0B,WACtB,CAAA,qBAChC,WAAyB,CAAO,2BACxB,WD5RM,CAAA,mBC6RL,WAAyB,CAAA,gBAAgC,WACvD,CAAA,uBAA2D,WAAA,CAC9D,sBAAwD,WAAA,CAAA,uBACF,WAAA,CAAA,qBDxHhD,WCyHkD,CAAA,iBDtItD,WCuI8C,CAAA,gBAC7C,WDvIM,CAAA,mBCwIT,WAAyB,CAAA,2CD6JpB,WC5JiD,CAAA,2BACJ,WAChC,CAAA,wBACrB,WAAyB,CAAA,uBACvB,WAAyB,CAAA,sBAChC,WD7ZM,CAAA,uBC+ZZ,WAAU,CAAA,yBACsB,WAAwB,CAAA,yBDnGtC,WCoGgD,CAAA,kBAC3B,WDxbZ,CCwb2C,sBACpD,WAAgC,CD5W1B,6BC6Wa,WAA6B,CAAA,uBAC7B,WAA6B,CAAA,oBAC9B,WAA4B,CAAA,kBAC7B,WDenB,CAAO,qBCdP,WAAgC,CD2B1B,sBC1BP,WAAyB,CAAA,gCACH,WAA6B,CAAA,mBAC9C,WD5aD,CAAA,iBC4aiD,WACjD,CAAO,kBAAsD,WACrE,CAAA,kBAAqD,WACxD,CAAA,sCACO,WD8KM,CAAA,yBC7KP,WD/FM,CAAA,oBCgGL,WAAyB,CAAA,wBAC3B,WAAyB,CAAA,gED3HxB,WC6H4C,CAAA,uDAG1D,WAAe,CAAA,6CAC6B,WDkIZ,CClIgD,gDACN,WAC3D,CAAO,8CD0KF,WCzKkD,CAAA,yBDlIjD,WCmImD,CAAA,oBAC9B,WDlIZ,CCkI8C,wBACpD,WDpID,CAAA,0BCqIY,WAA2B,CAAA,uBACvB,WAA+B,CAAA,yBACjD,WD1UM,CAAA,kBC0UyD,WAC5C,CAAA,0BAC5B,WAAyB,CAAO,iBAClC,WAAyB,CAAA,yBACtB,WAAyB,CAAA,uBACxB,WAAyB,CAAA,kDD7f1B,WC+f2C,CAAA,iDAEtB,WAA0B,CAAA,gDAEzB,WD9IZ,CC8IuC,qBAE9D,WAAgB,CAAA,8CAC0B,WDjHZ,CCiH8C,+CACV,WACzB,CAAA,2BAC5B,WACb,CAAA,yBACA,WAAgB,CAAO,wBAAmD,WACtD,CACpB,0BAA0B,WAAyB,CAAA,wBACtC,WACb,CAAA,qBAAyC,WDlhBZ,CCkhB6C,sBAE1E,WAAA,CAAA,4BAAgF,WAAA,CAAA,cAEhF,WAAA,CAAiB,qBDxhBa,WCwhB8C,CAAA,uBD1IrD,WC2IqD,CAAA,yBD1O1D,WC2OgD,CAAA,gCACQ,WAAA,CAAA,sBDvIlD,WCwIsD,CAAA,uBDyBzD,WCxBmD,CAAA,kBAC9B,WDwBnB,CAAO,kBCvBb,WD/dD,CAAA,mBC+d8C,WACnB,CAAA,iBAAmC,WAC9D,CAAkB,6BAA0B,WAClB,CAAA,oCACF,WDxPnB,CAAO,kBCyPb,WACf,CAAA,iBAAmB,WAAgC,CDzP1B,kBCyPuD,WAEhF,CAAA,2BAA2C,WD7PZ,CC6P+C,4BAE9E,WAAA,CAAiB,4BAA2D,WAC/D,CAAA,4BAAuD,WAC9C,CACtB,oBAAe,WDxRM,CAAA,mBCwRmD,WAExE,CAAA,qBAAyC,WD7RnB,CAAA,iBC6RoD,WAChD,CAAkB,eAAoC,WAAA,CAAA,sBDnSzD,WCoSqD,CAAA,wBD1RtD,WC2RoD,CAAA,iBACxD,WD/RM,CAAA,iBC+RsD,WACvD,CAAkB,qBAAiC,WAC7D,CAAA,qBAAuD,WACtD,CAAA,wBAAwD,WAAA,CAAA,gBACzB,WAAqC,CAAA,2BAC5B,WACzC,CAAA,oBDtUa,WCsU0C,CAAA,gBAC5B,WAAgC,CAAA,wBAC9B,WDrKnB,CAAO,eCqK8C,WACpD,CAAA,wBAAkE,WAC5E,CAAA,oBAAwD,WAAA,CAAA,kBACvB,WAAyB,CAAA,wBDlFxD,WCmF8C,CAAA,0BACA,WACnD,CAAA,uBAAqD,WAChD,CAAkB,yBAA0B,WACvC,CAAA,wBAA+D,WAEpF,CAAA,2BAA8C,WAAwB,CAAA,mBACnC,WAA2B,CAAA,qBDxoB/C,WCyoB6C,CAAA,uBD9nB5C,WC+nB8C,CAAA,mBAClB,WD3hBnB,CAAO,kBC2hBgD,WACnC,CAAA,sBAAqC,WAC9D,CAAA,mBD5hBM,WC4hBwD,CAAA,kBACrC,WDjiBnB,CAAA,4BCkiBW,WAA6B,CAAA,0BD3NjD,WC4N+C,CAAA,6BACI,WAC3D,CAAA,iBAAmD,WACrD,CAAA,6BAAiD,WACjB,CAAA,gCACvB,WDpeM,CAAA,mBCqeb,WDtSM,CAAA,uCCuS6C,WAC/C,CAAA,2EAEG,WAAgC,CDpI1B,+DCsIsB,WDhenB,CAAA,iBCieb,WAAyB,CAAO,mBACpC,WAAgC,CDlN1B,4CCmN4D,WACnE,CAAA,sBAAiD,WACxC,CAAA,kBD3JM,WC2JoD,CAAA,yBACR,WACxD,CAAA,oBAAoD,WAAA,CAAA,0BACY,WAAA,CAAA,2BD5L3C,WC6L+C,CAAA,sBD1CzD,WC2CmD,CAAA,uBAC9B,WAAkC,CAAA,iBAC5D,WDrGM,CAAA,qBCqGoD,WAC9B,CAAA,8DAE/B,WAAyB,CAAO,sCDllBxB,WCmlBmD,CAAA,uBD9LvD,WC+L+C,CAAA,yBACF,WAAA,CAAA,2BACQ,WAC3D,CAAA,kBAAqD,WACtD,CAAA,wBAAoD,WAAA,CAAA,0BACoB,WAAA,CAAA,yCACJ,WACzD,CAAA,6CD7lBN,WC8lB6C,CAAA,uBACd,WAAsC,CAAA,yBAC5D,WAAyB,CAAA,kBAAyC,WACtD,CAAA,oBAA4B,WAAA,CAAA,8CACwC,WACpF,CAAA,kDAC4C,WD9qBnB,CAAO,iBC+qBxC,WACZ,CAAA,0BACA,WAAiC,CAAA,oBACxB,WAAyB,CAAA,4EAGlC,WAA0C,CAAA,+DAEhC,WAAgC,CDiC1B,qDChC4D,WACzD,CAAkB,wDACyC,WAAA,CAAA,sDAEvC,WAA+B,CAAA,kBACvD,WDpbM,CAAA,kDCsbR,WAAyB,CAAA,mBAA8B,WAC9C,CAAA,2BACtB,WAA+B,CAAkB,2BACpC,WACb,CAAA,0BD7a6B,WC6a6C,CAAA,mDAEhC,WDlfnB,CAAA,uDCofb,WAAyB,CAAA,oBAA2B,WACvC,CAAkB,gBAAiC,WAAA,CAAA,gBAC/B,WAAmC,CAAA,gBAE9E,WAAA,CAAA,mBDrtBsB,WCqtBoD,CAAA,mBAE1E,WAAA,CAAkB,qBDttBa,WCstB+C,CAAA,uBDHzD,WCImD,CAAA,uBACvB,WAA2B,CAAA,sBDF5D,WCG8C,CAAA,kBACzB,WAA6B,CAAA,SAAA,kBAElE,UAAW,WAAyB,UAA4B,YAAA,gBAEhE,sBAAsC,QD7WnB,CAAA,mDC8WyC,gBACjB,WAAmC,YAClE,SAAyB,iBAA6B,SAAA,CACjD,kBACjB,cACA,CAAA,oBAAoB,qBAA8D,CAAA,iBACjE,qBACjB,mBAA8B,uBAAwE,CAAA,4BAEtG,cAAoB,CAAA,sBAA8D,UAAA,sBAElF,eAAuB,CAAA,yBAAiE,WACvE,UACjB,CAAA,sBAAqB,qBAA+D,kBACjD,qBACxB,aACX,CAAA,iDAC0D,gBACf,CDlP1B,wECoPE,cDKM,eCLuD,0BDMjD,CCL+C,+CAE9D,gBDDM,CAAO,sECGiD,UAAA,CAAA,uBACZ,kBACjC,qBACzB,CAAA,2BAAkD,qBDvY5C,aCyYH,eAAgC,cAAqB,sBDxiB/C,cCyiB+C,CAAA,oDAExB,YAAgC,CAAA,uBAChC,kBAAgC,qBAC1B,CDJ1B,sBCKV,kBChxBV,mBJ6BY,yBAEF,cAER,uGlBdA,AkBcA,8FlBdA,CAAA,qFkBkCQ,yBKpDN,aACH,CAAA,2BAGa,kBACb,aAGG,eAAS,iBACT,mBACsB,mBACzB,uGASG,AATH,8FASG,CAAA,iCAGD,kBAEC,CAAM,uCAIG,wDAGT,CAAA,iCAJiB,WAAA,cAOb,kBAPR,UAAA,WAAqB,QAAA,SAAA,8BAUT,mBACA,yDAXS,iCAgBS,AAhBT,yBAgBS,uGAIZ,AAJY,8FAIZ,CAAE,kDAOhB,kBACH,aAAA,CAAA,0BAGY,sBAET,8BAEA,qBACA,gBANJ,mBAAA,2DAUK,YAID,qBACA,CAAA,0CClEO,4FAHa,uFAExB,8BAAA,+BAAA,0BARc,kBAAA,eD4Dd,iBCtCI,UAAU,CAAA,6BAED,eACT,SACA,kBACA,kBACA,CAAA,kDAtBkD,WAAC,eAA0B,cAAM,CAAA,iDAyBnE,WAVpB,eAAA,QAA0B,CAAA,kDAasC,mBAbhE,YAAA,eAA0B,iBAmBlB,kBACA,kBACK,UAtCQ,QAwCb,CAAA,qDAGA,mBACA,WAAc,qBAA0B,qBACxC,mBACA,CAAA,uDA5C+C,6BAAgC,6BAevF,mBAgCI,sBACI,6BCzDL,4BACS,2BACO,qBACf,YAAiB,iBACT,oBACC,CAAU,mEAGX,wBACS,iBAGlB,CAAA,6DACa,mDAAsE,yBACrE,oBAAA,CAAA,yEACY,8BACzB,0BACY,CAAA,8CAGH,+BAIV,2BACU,CAAE,yBAEX,sBACa,kBAGd,eAAwB,gBAAA,CAAA,wBAEd,eACD,eAGT,CAAA,kBAAwB,gBAAA,CAAA,sBAEvB,sBAID,SAAA,iBAAyB,CAAA,qBAExB,iCAEA,WACA,gBACA,eAAc,YACJ,cACV,0CAGwB,cAAA,yDAGf,cACT,gBACA,SAAQ,SACX,CACE,uBAAuB,cAAE,qBACxB,SAAA,SAAkB,CAAA,6BACG,yBAErB,CAAA,+BACA,aAAqB,CAAA,wBACF,gEAGX,eACK,iBACJ,SACZ,SAGE,CAAA,iDAAiD,cAChD,eAAa,iBACC,gBAEf,CAAA,0CAAmD,YAClD,WAAY,CAAA,qEAEZ,WACH,YACE,UAAA,CAAA,kEACC,WAA2B,gBAC3B,gBAEF,mBAAA,WAAwB,CAAA,mDAEtB,gBAAyB,CAAA,sCAY3B,0CAEQ,iBACM,oBAGb,UACF,CAAA,+CAKG,WAAa,iBAChB,UAGG,CAAA,sCAEA,cACH,gBAGG,iBAAe,CAAA,gDAGf,cACK,eACL,cACA,cAAY,gBAAA,CAAA,sCAEC,cAAA,gBAAA,iBACF,CAAA,uCAId,gBAAA,cAGU,kBACP,0CAGH,aAC2B,CACxB,8CAEgB,cAChB,cACH,cAAA,CAAA,wCAGgB,WAAA,WAAA,CAAA,wCAGb,gBACS,SACZ,eAEoB,CAAA,qCACV,WACP,gBACA,CAAA,6CAKiB,oBAAoB,CACrC,yCAEH,yBACyC,gCACjC,+BAGR,cAAA,cAEoB,gBAAqB,qBACtC,gBACA,qBACU,kBACG,CAAA,+CAII,yBACjB,gCACH,+BAGe,aAAA,CAAA,mCAEZ,WAAS,CAAA,2CAGQ,iFAMA,4BACV,gBACE,6BAEZ,YAEmB,YAAC,gBACjB,SAAS,CAAA,qBAET,yBACc,YACH,yBACd,WAGoB,CAAA,qBAEjB,wBACA,CAAA,uBACH,cAEoB,oBACjB,CAAU,wBAEV,sBACA,mBAAY,WAAA,CAAA,kCAEf,qBAEqC,UAClC,CAAA,gCAEA,WACH,gBAAA,CAGmB,sBAChB,wBAEH,4BAEoB,gDAGR,kCAGQ,kEAIA,6BACA,2BAGA,6BACjB,sBACA,8BACA,wBAA+B,sBAE/B,uBAEA,qBACA,gBACA,cAAA,cACA,WAAmB,kDAGnB,eAAkB,aAClB,iBAAe,kBACf,gBAAc,iBACP,eACV,eAGoB,eACV,sBACV,mBAEoB,kBACjB,mBAAkB,mBAAA,mBAAA,iBAClB,kBAAmB,gBACT,kBACV,gBAAqB,wBAEb,WACR,CAAU,+BAEb,eAGW,CAAA,+BAEJ,gBAAE,UACD,CAAG,6BAKR,WAAA,cACH,CAAA,iQAmBoB,WAGlB,cACH,WAAA,YACA,kBAAA,SACA,iBAAA,CAAA,qCACA,iBAAA,CAAA,kDACoC,aAAA,CAAA,uCACP,kBACZ,kBACjB,kBAAkB,CAAA,iCAElB,cAAmB,iBACnB,eACA,CAAA,6BACA,cACA,aAAA,mBACY,CAAA,QACZ,YACA,uBAEA,iDAAkD,cACvC,iBAEX,kBACA,sBACA,kBACA,CAAA,KAAc,eACF,eACD,CAAI,KACf,cACA,gBAAe,aACf,CAAA,GAAe,gBACf,gBACA,yBACY,CAAA,GACZ,cAAc,gBACd,yBAEA,CAAA,GAAA,gBACA,gBACA,yBACA,CAAA,EAAgB,aAChB,CAAK,qBAGF,kBACD,UAAW,mBAGV,eAAmB,CAAQ,iBAE5B,gBAEC,CAAA,UAAA,iCAEM,aAIN,CAAA,UAAA,aAAmB,CAAA,cAAsB,iCAA6B,wBAA+B,CAAA,mBAAG,iCACxG,gBAAG,cAAmB,eAAsB,wBAAU,CAAkB,aAAC,SAAiB,CAAK,kBACvF,2CAIX,gBACG,cACH,YACC,wBAEqB,CAAA,uBACX,iBAGR,kBAAmB,aAAiB,CAAA,cAC9B,wCAGa,yBAEtB,sBACA,eAEC,CAEE,eAAA,iCAEH,gBACA,cAEC,yBAEqB,aACpB,CAAW,iBAEb,iCClaS,gBACP,cACA,yBAAa,aAAA,CAAA,yBAEb,gBACA,aAAY,CAAA,eAEJ,iCzFIN,gB0FTF,eAAgB,aAIhB,CAAA,gBAEA,iCAKW,gBACX,cACA,yBAIA,CAAA,YACA,iCACgB,gBAGhB,gBACA,yBACgB,cAIhB,oBACD,CAAA,gBAGG,iCAEA,0B5EpBF,cAAA,e4E2BW,CAAA,kBAMX,gBAAa,eACb,CAAA,kB9DvCF,gB8D2CgB,eAId,CAAA,gBAAa,iCACG,gBACjB,eAGC,UAAa,CAAA,iBAAoB,gBACjB,aACT,CAAO,uBAEd,yBAGK,iBAEN,6BAGc,kBAAA,kBACb,CAAA,gBACA,mBAEY,CACZ,gBAAgB,eAEjB,CAAA,aAAA,iCAIc,yBAEd,aAGC,CAAA,SAAA,yBACA,iBAAa,oBACb,gBACA,kBACD,CAAA,cAKC,aAAa,CAAA,mBACb,iBACS,mBACK,CAAE,oBACT,iCAIM,gBAAA,cACb,yBAEA,aAAgB,CAAA,oBACF,iCAId,gBACO,cACR,0BAGc,aAAA,CAAoB,sBAEjC,aACA,CAAA,oBACD,iCAEc,gBACb,cACA,aACA,CAAA,iBAA0B,sBAK1B,WAAa,eACb,aAAgB,WACL,YACX,gBAAgB,aACT,eACP,wBACD,AADC,eACD,CAAA,+CAIC,qBAA0B,CAC1B,UAAO,eACI,uBAIX,aAAW,gBACE,4CAIF,AAJE,mCAIF,CAAK,QAChB,YACD,uBAGC,iDAEW,cACJ,iBAER,kBAEC,sBACD,kBAGC,CAAA,yBACA,cACA,kBAAY,QAAA,UAEZ,eACA,iBACD,aAGE,CAAA,wBACD,cAaA,kBACD,QASC,UAAA,eAAa,iBACb,aAAgB,CAAA,8BAKhB,UAAA,CAAgB,oIAehB,mBACA,iBACD,YAAA,sDAIC,cACA,SAAA,QAAgB,eACT,CAAA,+CAIM,sDAGb,eACA,CAAA,yDAKD,sDAIC,eACS,CAAE,0DAOT,sDAIA,eACA,CAAA,+CAGY,gBAGV,CAAA,gDACF,gBAGD,CAAM,+FAKO,YDxRhB,CAAA,+CC+RE,gBAAa,CAAA,gDAEb,gBACA,CAAU,iDAIX,gBAGc,CAAA,kDAIX,gBACA,CAAS,qDAKE,oBACF,CAAK,sDAKd,oBACK,CAAE,yDAON,eAAc,kBAAuB,MAAE,MAAW,CAAA,+DAA0D,kBAC7G,CAAA,oCAEA,iBACA,CAAA,cAAc,iCACd,gBACA,aAEA,CAAA,gBACH,cAEkB,gBAAiB,yBAC5B,CAAA,gBAAc,gBAAA,gBACd,yBAGM,CAAC,mBAAiB,gBAAmB,CAAA,eAC/C,iCAAc,gBACd,aACH,CAAA,iBAEsB,cAAc,gBAAgB,yBAC/B,CAAA,iBAAA,gBAAA,gBACF,yBAGD,CAAG,kBAAmB,gBAC5B,kBAGR,CAAA,WAAiB,iCACX,gBAGN,aAAY,CAAG,aAAa,cAAc,gBAAc,yBAA8B,CAAA,aAChF,gBAGN,gBAAiB,yBAClB,CAAA,gBACH,UAEa,CAAC,mBAAmB,wBACrB,CAAA,uBAGE,mBAAmB,qDAIX,AAKnB,6CAGqB,aAAc,mBACnC,eAAS,CAAA,6BAGe,WAAA,CAAA,mCAExB,cAAU,qBAKT,oBAAkB,CAAA,8BAPK,eAQxB,CAAU,kBAGT,gBAAmB,iBACpB,iBACH,iBAIC,CAAA,8BACA,iBACO,gBAEP,CAAA,0CAGA,8BAEA,gBACW,gBACX,CAAW,CAAE,yBACG,aACjB,CAAA,gBAGC,mBACD,CAAA,qBAIc,kBACb,CAAA,2CAGA,qBAEA,oBACA,CAAA,CAAA,iBACD,YACC,CAAA,oBAEA,iCACgB,gBAEf,eACD,yBACe,aAChB,CAAA,mBAKY,iCAEb,gBAGE,eACA,yBAEA,CAAA,8BAEA,eACA,CAAA,kBACA,eACA,CAAA,gBACD,cAEC,CAAa,mBAId,eAGC,CAAA,KAAA,cAAgB,oBACjB,kBAGa,CAAA","file":"site.css"} \ No newline at end of file diff --git a/themes/devopsdays-theme/static/favicon-16x16.png b/themes/devopsdays-theme/static/favicon-16x16.png new file mode 100644 index 00000000000..3bd36572dde Binary files /dev/null and b/themes/devopsdays-theme/static/favicon-16x16.png differ diff --git a/themes/devopsdays-theme/static/favicon-32x32.png b/themes/devopsdays-theme/static/favicon-32x32.png new file mode 100644 index 00000000000..68a4e4fdae5 Binary files /dev/null and b/themes/devopsdays-theme/static/favicon-32x32.png differ diff --git a/themes/devopsdays-responsive/static/favicon-96x96.png b/themes/devopsdays-theme/static/favicon-96x96.png similarity index 97% rename from themes/devopsdays-responsive/static/favicon-96x96.png rename to themes/devopsdays-theme/static/favicon-96x96.png index c06818138b7..9991c542647 100644 Binary files a/themes/devopsdays-responsive/static/favicon-96x96.png and b/themes/devopsdays-theme/static/favicon-96x96.png differ diff --git a/themes/devopsdays-responsive/static/favicon.ico b/themes/devopsdays-theme/static/favicon.ico similarity index 100% rename from themes/devopsdays-responsive/static/favicon.ico rename to themes/devopsdays-theme/static/favicon.ico diff --git a/themes/devopsdays-theme/static/fonts/FontAwesome.otf b/themes/devopsdays-theme/static/fonts/FontAwesome.otf new file mode 100644 index 00000000000..401ec0f36e4 Binary files /dev/null and b/themes/devopsdays-theme/static/fonts/FontAwesome.otf differ diff --git a/themes/devopsdays-theme/static/fonts/fontawesome-webfont.eot b/themes/devopsdays-theme/static/fonts/fontawesome-webfont.eot new file mode 100644 index 00000000000..e9f60ca953f Binary files /dev/null and b/themes/devopsdays-theme/static/fonts/fontawesome-webfont.eot differ diff --git a/themes/devopsdays-theme/static/fonts/fontawesome-webfont.svg b/themes/devopsdays-theme/static/fonts/fontawesome-webfont.svg new file mode 100644 index 00000000000..950ddbbd87f --- /dev/null +++ b/themes/devopsdays-theme/static/fonts/fontawesome-webfont.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/themes/devopsdays-responsive/static/font-awesome/fonts/fontawesome-webfont.ttf b/themes/devopsdays-theme/static/fonts/fontawesome-webfont.ttf similarity index 59% rename from themes/devopsdays-responsive/static/font-awesome/fonts/fontawesome-webfont.ttf rename to themes/devopsdays-theme/static/fonts/fontawesome-webfont.ttf index d7994e13086..35acda2fa11 100644 Binary files a/themes/devopsdays-responsive/static/font-awesome/fonts/fontawesome-webfont.ttf and b/themes/devopsdays-theme/static/fonts/fontawesome-webfont.ttf differ diff --git a/themes/devopsdays-theme/static/fonts/fontawesome-webfont.woff b/themes/devopsdays-theme/static/fonts/fontawesome-webfont.woff new file mode 100644 index 00000000000..400014a4b06 Binary files /dev/null and b/themes/devopsdays-theme/static/fonts/fontawesome-webfont.woff differ diff --git a/themes/devopsdays-theme/static/fonts/fontawesome-webfont.woff2 b/themes/devopsdays-theme/static/fonts/fontawesome-webfont.woff2 new file mode 100644 index 00000000000..4d13fc60404 Binary files /dev/null and b/themes/devopsdays-theme/static/fonts/fontawesome-webfont.woff2 differ diff --git a/themes/devopsdays-responsive/static/fonts/glyphicons-halflings-regular.eot b/themes/devopsdays-theme/static/fonts/glyphicons-halflings-regular.eot similarity index 100% rename from themes/devopsdays-responsive/static/fonts/glyphicons-halflings-regular.eot rename to themes/devopsdays-theme/static/fonts/glyphicons-halflings-regular.eot diff --git a/themes/devopsdays-theme/static/fonts/glyphicons-halflings-regular.svg b/themes/devopsdays-theme/static/fonts/glyphicons-halflings-regular.svg new file mode 100755 index 00000000000..5fda42219c4 --- /dev/null +++ b/themes/devopsdays-theme/static/fonts/glyphicons-halflings-regular.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/themes/devopsdays-responsive/static/fonts/glyphicons-halflings-regular.ttf b/themes/devopsdays-theme/static/fonts/glyphicons-halflings-regular.ttf similarity index 100% rename from themes/devopsdays-responsive/static/fonts/glyphicons-halflings-regular.ttf rename to themes/devopsdays-theme/static/fonts/glyphicons-halflings-regular.ttf diff --git a/themes/devopsdays-responsive/static/fonts/glyphicons-halflings-regular.woff b/themes/devopsdays-theme/static/fonts/glyphicons-halflings-regular.woff similarity index 100% rename from themes/devopsdays-responsive/static/fonts/glyphicons-halflings-regular.woff rename to themes/devopsdays-theme/static/fonts/glyphicons-halflings-regular.woff diff --git a/themes/devopsdays-responsive/static/fonts/glyphicons-halflings-regular.woff2 b/themes/devopsdays-theme/static/fonts/glyphicons-halflings-regular.woff2 similarity index 100% rename from themes/devopsdays-responsive/static/fonts/glyphicons-halflings-regular.woff2 rename to themes/devopsdays-theme/static/fonts/glyphicons-halflings-regular.woff2 diff --git a/themes/devopsdays-theme/static/img/devopsdays-brain.png b/themes/devopsdays-theme/static/img/devopsdays-brain.png new file mode 100644 index 00000000000..35c8db6d12f Binary files /dev/null and b/themes/devopsdays-theme/static/img/devopsdays-brain.png differ diff --git a/themes/devopsdays-theme/static/img/event-logo-square.jpg b/themes/devopsdays-theme/static/img/event-logo-square.jpg new file mode 100644 index 00000000000..cd5961fb5a6 Binary files /dev/null and b/themes/devopsdays-theme/static/img/event-logo-square.jpg differ diff --git a/themes/devopsdays-theme/static/img/sharing.jpg b/themes/devopsdays-theme/static/img/sharing.jpg new file mode 100644 index 00000000000..ff5b5c48efe Binary files /dev/null and b/themes/devopsdays-theme/static/img/sharing.jpg differ diff --git a/themes/devopsdays-theme/static/img/speaker-default.jpg b/themes/devopsdays-theme/static/img/speaker-default.jpg new file mode 100644 index 00000000000..fb6ccafce8a Binary files /dev/null and b/themes/devopsdays-theme/static/img/speaker-default.jpg differ diff --git a/themes/devopsdays-theme/static/js/devopsdays-min.js b/themes/devopsdays-theme/static/js/devopsdays-min.js new file mode 100644 index 00000000000..bbdd532b8c1 --- /dev/null +++ b/themes/devopsdays-theme/static/js/devopsdays-min.js @@ -0,0 +1,28 @@ +function getMonth(e){"use strict";var t=new Date(e),n=t.getMonth(),i=[];return i[0]="January",i[1]="February",i[2]="March",i[3]="April",i[4]="May",i[5]="June",i[6]="July",i[7]="August",i[8]="September",i[9]="October",i[10]="November",i[11]="December",i[n]}if(function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(e,t){"use strict";function n(e,t){t=t||ne;var n=t.createElement("script");n.text=e,t.head.appendChild(n).parentNode.removeChild(n)}function i(e){var t=!!e&&"length"in e&&e.length,n=me.type(e);return"function"!==n&&!me.isWindow(e)&&("array"===n||0===t||"number"==typeof t&&t>0&&t-1 in e)}function r(e,t,n){return me.isFunction(t)?me.grep(e,function(e,i){return!!t.call(e,i,e)!==n}):t.nodeType?me.grep(e,function(e){return e===t!==n}):"string"!=typeof t?me.grep(e,function(e){return se.call(t,e)>-1!==n}):Ce.test(t)?me.filter(t,e,n):(t=me.filter(t,e),me.grep(e,function(e){return se.call(t,e)>-1!==n&&1===e.nodeType}))}function o(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}function a(e){var t={};return me.each(e.match(Ie)||[],function(e,n){t[n]=!0}),t}function s(e){return e}function l(e){throw e}function u(e,t,n){var i;try{e&&me.isFunction(i=e.promise)?i.call(e).done(t).fail(n):e&&me.isFunction(i=e.then)?i.call(e,t,n):t.call(void 0,e)}catch(e){n.call(void 0,e)}}function c(){ne.removeEventListener("DOMContentLoaded",c),e.removeEventListener("load",c),me.ready()}function d(){this.expando=me.expando+d.uid++}function h(e){return"true"===e||"false"!==e&&("null"===e?null:e===+e+""?+e:He.test(e)?JSON.parse(e):e)}function f(e,t,n){var i;if(void 0===n&&1===e.nodeType)if(i="data-"+t.replace(We,"-$&").toLowerCase(),n=e.getAttribute(i),"string"==typeof n){try{n=h(n)}catch(e){}Re.set(e,t,n)}else n=void 0;return n}function p(e,t,n,i){var r,o=1,a=20,s=i?function(){return i.cur()}:function(){return me.css(e,t,"")},l=s(),u=n&&n[3]||(me.cssNumber[t]?"":"px"),c=(me.cssNumber[t]||"px"!==u&&+l)&&Ye.exec(me.css(e,t));if(c&&c[3]!==u){u=u||c[3],n=n||[],c=+l||1;do o=o||".5",c/=o,me.style(e,t,c+u);while(o!==(o=s()/l)&&1!==o&&--a)}return n&&(c=+c||+l||0,r=n[1]?c+(n[1]+1)*n[2]:+n[2],i&&(i.unit=u,i.start=c,i.end=r)),r}function m(e){var t,n=e.ownerDocument,i=e.nodeName,r=Ve[i];return r?r:(t=n.body.appendChild(n.createElement(i)),r=me.css(t,"display"),t.parentNode.removeChild(t),"none"===r&&(r="block"),Ve[i]=r,r)}function g(e,t){for(var n,i,r=[],o=0,a=e.length;o-1)r&&r.push(o);else if(u=me.contains(o.ownerDocument,o),a=v(d.appendChild(o),"script"),u&&y(a),n)for(c=0;o=a[c++];)Ge.test(o.type||"")&&n.push(o);return d}function w(){return!0}function _(){return!1}function E(){try{return ne.activeElement}catch(e){}}function x(e,t,n,i,r,o){var a,s;if("object"==typeof t){"string"!=typeof n&&(i=i||n,n=void 0);for(s in t)x(e,s,n,i,t[s],o);return e}if(null==i&&null==r?(r=n,i=n=void 0):null==r&&("string"==typeof n?(r=i,i=void 0):(r=i,i=n,n=void 0)),r===!1)r=_;else if(!r)return e;return 1===o&&(a=r,r=function(e){return me().off(e),a.apply(this,arguments)},r.guid=a.guid||(a.guid=me.guid++)),e.each(function(){me.event.add(this,t,r,i,n)})}function T(e,t){return me.nodeName(e,"table")&&me.nodeName(11!==t.nodeType?t:t.firstChild,"tr")?e.getElementsByTagName("tbody")[0]||e:e}function C(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function S(e){var t=rt.exec(e.type);return t?e.type=t[1]:e.removeAttribute("type"),e}function k(e,t){var n,i,r,o,a,s,l,u;if(1===t.nodeType){if(Me.hasData(e)&&(o=Me.access(e),a=Me.set(t,o),u=o.events)){delete a.handle,a.events={};for(r in u)for(n=0,i=u[r].length;n1&&"string"==typeof p&&!fe.checkClone&&it.test(p))return e.each(function(n){var o=e.eq(n);m&&(t[0]=p.call(this,n,o.html())),D(o,t,i,r)});if(h&&(o=b(t,e[0].ownerDocument,!1,e,r),a=o.firstChild,1===o.childNodes.length&&(o=a),a||r)){for(s=me.map(v(o,"script"),C),l=s.length;d=0&&nx.cacheLength&&delete e[t.shift()],e[n+" "]=i}var t=[];return e}function i(e){return e[F]=!0,e}function r(e){var t=N.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function o(e,t){for(var n=e.split("|"),i=n.length;i--;)x.attrHandle[n[i]]=t}function a(e,t){var n=t&&e,i=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(i)return i;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function s(e){return function(t){var n=t.nodeName.toLowerCase();return"input"===n&&t.type===e}}function l(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function u(e){return function(t){return"form"in t?t.parentNode&&t.disabled===!1?"label"in t?"label"in t.parentNode?t.parentNode.disabled===e:t.disabled===e:t.isDisabled===e||t.isDisabled!==!e&&Ce(t)===e:t.disabled===e:"label"in t&&t.disabled===e}}function c(e){return i(function(t){return t=+t,i(function(n,i){for(var r,o=e([],n.length,t),a=o.length;a--;)n[r=o[a]]&&(n[r]=!(i[r]=n[r]))})})}function d(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}function h(){}function f(e){for(var t=0,n=e.length,i="";t1?function(t,n,i){for(var r=e.length;r--;)if(!e[r](t,n,i))return!1;return!0}:e[0]}function g(e,n,i){for(var r=0,o=n.length;r-1&&(i[u]=!(a[u]=d))}}else b=v(b===a?b.splice(p,b.length):b),o?o(null,a,b,l):J.apply(a,b)})}function b(e){for(var t,n,i,r=e.length,o=x.relative[e[0].type],a=o||x.relative[" "],s=o?1:0,l=p(function(e){return e===t},a,!0),u=p(function(e){return te(t,e)>-1},a,!0),c=[function(e,n,i){var r=!o&&(i||n!==D)||((t=n).nodeType?l(e,n,i):u(e,n,i));return t=null,r}];s1&&m(c),s>1&&f(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace(le,"$1"),n,s0,o=e.length>0,a=function(i,a,s,l,u){var c,d,h,f=0,p="0",m=i&&[],g=[],y=D,b=i||o&&x.find.TAG("*",u),w=U+=null==y?1:Math.random()||.1,_=b.length;for(u&&(D=a===N||a||u);p!==_&&null!=(c=b[p]);p++){if(o&&c){for(d=0,a||c.ownerDocument===N||(P(c),s=!L);h=e[d++];)if(h(c,a||N,s)){l.push(c);break}u&&(U=w)}r&&((c=!h&&c)&&f--,i&&m.push(c))}if(f+=p,r&&p!==f){for(d=0;h=n[d++];)h(m,g,a,s);if(i){if(f>0)for(;p--;)m[p]||g[p]||(g[p]=X.call(l));g=v(g)}J.apply(l,g),u&&!i&&g.length>0&&f+n.length>1&&t.uniqueSort(l)}return u&&(U=w,D=y),m};return r?i(a):a}var _,E,x,T,C,S,k,O,D,A,I,P,N,j,L,M,R,H,W,F="sizzle"+1*new Date,Y=e.document,U=0,q=0,V=n(),z=n(),B=n(),G=function(e,t){return e===t&&(I=!0),0},Q={}.hasOwnProperty,K=[],X=K.pop,Z=K.push,J=K.push,ee=K.slice,te=function(e,t){for(var n=0,i=e.length;n+~]|"+ie+")"+ie+"*"),de=new RegExp("="+ie+"*([^\\]'\"]*?)"+ie+"*\\]","g"),he=new RegExp(ae),fe=new RegExp("^"+re+"$"),pe={ID:new RegExp("^#("+re+")"),CLASS:new RegExp("^\\.("+re+")"),TAG:new RegExp("^("+re+"|[*])"),ATTR:new RegExp("^"+oe),PSEUDO:new RegExp("^"+ae),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+ie+"*(even|odd|(([+-]|)(\\d*)n|)"+ie+"*(?:([+-]|)"+ie+"*(\\d+)|))"+ie+"*\\)|)","i"),bool:new RegExp("^(?:"+ne+")$","i"),needsContext:new RegExp("^"+ie+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+ie+"*((?:-\\d)?\\d*)"+ie+"*\\)|)(?=[^-]|$)","i")},me=/^(?:input|select|textarea|button)$/i,ge=/^h\d$/i,ve=/^[^{]+\{\s*\[native \w/,ye=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,be=/[+~]/,we=new RegExp("\\\\([\\da-f]{1,6}"+ie+"?|("+ie+")|.)","ig"),_e=function(e,t,n){var i="0x"+t-65536;return i!==i||n?t:i<0?String.fromCharCode(i+65536):String.fromCharCode(i>>10|55296,1023&i|56320)},Ee=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,xe=function(e,t){return t?"\0"===e?"�":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},Te=function(){P()},Ce=p(function(e){return e.disabled===!0&&("form"in e||"label"in e)},{dir:"parentNode",next:"legend"});try{J.apply(K=ee.call(Y.childNodes),Y.childNodes),K[Y.childNodes.length].nodeType}catch(e){J={apply:K.length?function(e,t){Z.apply(e,ee.call(t))}:function(e,t){for(var n=e.length,i=0;e[n++]=t[i++];);e.length=n-1}}}E=t.support={},C=t.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return!!t&&"HTML"!==t.nodeName},P=t.setDocument=function(e){var t,n,i=e?e.ownerDocument||e:Y;return i!==N&&9===i.nodeType&&i.documentElement?(N=i,j=N.documentElement,L=!C(N),Y!==N&&(n=N.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",Te,!1):n.attachEvent&&n.attachEvent("onunload",Te)),E.attributes=r(function(e){return e.className="i",!e.getAttribute("className")}),E.getElementsByTagName=r(function(e){return e.appendChild(N.createComment("")),!e.getElementsByTagName("*").length}),E.getElementsByClassName=ve.test(N.getElementsByClassName),E.getById=r(function(e){return j.appendChild(e).id=F,!N.getElementsByName||!N.getElementsByName(F).length}),E.getById?(x.filter.ID=function(e){var t=e.replace(we,_e);return function(e){return e.getAttribute("id")===t}},x.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&L){var n=t.getElementById(e);return n?[n]:[]}}):(x.filter.ID=function(e){var t=e.replace(we,_e);return function(e){var n="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return n&&n.value===t}},x.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&L){var n,i,r,o=t.getElementById(e);if(o){if(n=o.getAttributeNode("id"),n&&n.value===e)return[o];for(r=t.getElementsByName(e),i=0;o=r[i++];)if(n=o.getAttributeNode("id"),n&&n.value===e)return[o]}return[]}}),x.find.TAG=E.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):E.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,i=[],r=0,o=t.getElementsByTagName(e);if("*"===e){for(;n=o[r++];)1===n.nodeType&&i.push(n);return i}return o},x.find.CLASS=E.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&L)return t.getElementsByClassName(e)},R=[],M=[],(E.qsa=ve.test(N.querySelectorAll))&&(r(function(e){j.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&M.push("[*^$]="+ie+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||M.push("\\["+ie+"*(?:value|"+ne+")"),e.querySelectorAll("[id~="+F+"-]").length||M.push("~="),e.querySelectorAll(":checked").length||M.push(":checked"),e.querySelectorAll("a#"+F+"+*").length||M.push(".#.+[+~]")}),r(function(e){e.innerHTML="";var t=N.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&M.push("name"+ie+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&M.push(":enabled",":disabled"),j.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&M.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),M.push(",.*:")})),(E.matchesSelector=ve.test(H=j.matches||j.webkitMatchesSelector||j.mozMatchesSelector||j.oMatchesSelector||j.msMatchesSelector))&&r(function(e){E.disconnectedMatch=H.call(e,"*"),H.call(e,"[s!='']:x"),R.push("!=",ae)}),M=M.length&&new RegExp(M.join("|")),R=R.length&&new RegExp(R.join("|")),t=ve.test(j.compareDocumentPosition),W=t||ve.test(j.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,i=t&&t.parentNode;return e===i||!(!i||1!==i.nodeType||!(n.contains?n.contains(i):e.compareDocumentPosition&&16&e.compareDocumentPosition(i)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},G=t?function(e,t){if(e===t)return I=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n?n:(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1,1&n||!E.sortDetached&&t.compareDocumentPosition(e)===n?e===N||e.ownerDocument===Y&&W(Y,e)?-1:t===N||t.ownerDocument===Y&&W(Y,t)?1:A?te(A,e)-te(A,t):0:4&n?-1:1)}:function(e,t){if(e===t)return I=!0,0;var n,i=0,r=e.parentNode,o=t.parentNode,s=[e],l=[t];if(!r||!o)return e===N?-1:t===N?1:r?-1:o?1:A?te(A,e)-te(A,t):0;if(r===o)return a(e,t);for(n=e;n=n.parentNode;)s.unshift(n);for(n=t;n=n.parentNode;)l.unshift(n);for(;s[i]===l[i];)i++;return i?a(s[i],l[i]):s[i]===Y?-1:l[i]===Y?1:0},N):N},t.matches=function(e,n){return t(e,null,null,n)},t.matchesSelector=function(e,n){if((e.ownerDocument||e)!==N&&P(e),n=n.replace(de,"='$1']"),E.matchesSelector&&L&&!B[n+" "]&&(!R||!R.test(n))&&(!M||!M.test(n)))try{var i=H.call(e,n);if(i||E.disconnectedMatch||e.document&&11!==e.document.nodeType)return i}catch(e){}return t(n,N,null,[e]).length>0},t.contains=function(e,t){return(e.ownerDocument||e)!==N&&P(e),W(e,t)},t.attr=function(e,t){(e.ownerDocument||e)!==N&&P(e);var n=x.attrHandle[t.toLowerCase()],i=n&&Q.call(x.attrHandle,t.toLowerCase())?n(e,t,!L):void 0;return void 0!==i?i:E.attributes||!L?e.getAttribute(t):(i=e.getAttributeNode(t))&&i.specified?i.value:null},t.escape=function(e){return(e+"").replace(Ee,xe)},t.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},t.uniqueSort=function(e){var t,n=[],i=0,r=0;if(I=!E.detectDuplicates,A=!E.sortStable&&e.slice(0),e.sort(G),I){for(;t=e[r++];)t===e[r]&&(i=n.push(r));for(;i--;)e.splice(n[i],1)}return A=null,e},T=t.getText=function(e){var t,n="",i=0,r=e.nodeType;if(r){if(1===r||9===r||11===r){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=T(e)}else if(3===r||4===r)return e.nodeValue}else for(;t=e[i++];)n+=T(t);return n},x=t.selectors={cacheLength:50,createPseudo:i,match:pe,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(we,_e),e[3]=(e[3]||e[4]||e[5]||"").replace(we,_e),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||t.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&t.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return pe.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&he.test(n)&&(t=S(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(we,_e).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=V[e+" "];return t||(t=new RegExp("(^|"+ie+")"+e+"("+ie+"|$)"))&&V(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(e,n,i){return function(r){var o=t.attr(r,e);return null==o?"!="===n:!n||(o+="","="===n?o===i:"!="===n?o!==i:"^="===n?i&&0===o.indexOf(i):"*="===n?i&&o.indexOf(i)>-1:"$="===n?i&&o.slice(-i.length)===i:"~="===n?(" "+o.replace(se," ")+" ").indexOf(i)>-1:"|="===n&&(o===i||o.slice(0,i.length+1)===i+"-"))}},CHILD:function(e,t,n,i,r){var o="nth"!==e.slice(0,3),a="last"!==e.slice(-4),s="of-type"===t;return 1===i&&0===r?function(e){return!!e.parentNode}:function(t,n,l){var u,c,d,h,f,p,m=o!==a?"nextSibling":"previousSibling",g=t.parentNode,v=s&&t.nodeName.toLowerCase(),y=!l&&!s,b=!1;if(g){if(o){for(;m;){for(h=t;h=h[m];)if(s?h.nodeName.toLowerCase()===v:1===h.nodeType)return!1;p=m="only"===e&&!p&&"nextSibling"}return!0}if(p=[a?g.firstChild:g.lastChild],a&&y){for(h=g,d=h[F]||(h[F]={}),c=d[h.uniqueID]||(d[h.uniqueID]={}),u=c[e]||[],f=u[0]===U&&u[1],b=f&&u[2],h=f&&g.childNodes[f];h=++f&&h&&h[m]||(b=f=0)||p.pop();)if(1===h.nodeType&&++b&&h===t){c[e]=[U,f,b];break}}else if(y&&(h=t,d=h[F]||(h[F]={}),c=d[h.uniqueID]||(d[h.uniqueID]={}),u=c[e]||[],f=u[0]===U&&u[1],b=f),b===!1)for(;(h=++f&&h&&h[m]||(b=f=0)||p.pop())&&((s?h.nodeName.toLowerCase()!==v:1!==h.nodeType)||!++b||(y&&(d=h[F]||(h[F]={}),c=d[h.uniqueID]||(d[h.uniqueID]={}),c[e]=[U,b]),h!==t)););return b-=r,b===i||b%i===0&&b/i>=0}}},PSEUDO:function(e,n){var r,o=x.pseudos[e]||x.setFilters[e.toLowerCase()]||t.error("unsupported pseudo: "+e);return o[F]?o(n):o.length>1?(r=[e,e,"",n],x.setFilters.hasOwnProperty(e.toLowerCase())?i(function(e,t){for(var i,r=o(e,n),a=r.length;a--;)i=te(e,r[a]),e[i]=!(t[i]=r[a])}):function(e){return o(e,0,r)}):o}},pseudos:{not:i(function(e){var t=[],n=[],r=k(e.replace(le,"$1"));return r[F]?i(function(e,t,n,i){for(var o,a=r(e,null,i,[]),s=e.length;s--;)(o=a[s])&&(e[s]=!(t[s]=o))}):function(e,i,o){return t[0]=e,r(t,null,o,n),t[0]=null,!n.pop()}}),has:i(function(e){return function(n){return t(e,n).length>0}}),contains:i(function(e){return e=e.replace(we,_e),function(t){return(t.textContent||t.innerText||T(t)).indexOf(e)>-1}}),lang:i(function(e){return fe.test(e||"")||t.error("unsupported lang: "+e), +e=e.replace(we,_e).toLowerCase(),function(t){var n;do if(n=L?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return n=n.toLowerCase(),n===e||0===n.indexOf(e+"-");while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===j},focus:function(e){return e===N.activeElement&&(!N.hasFocus||N.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:u(!1),disabled:u(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,e.selected===!0},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!x.pseudos.empty(e)},header:function(e){return ge.test(e.nodeName)},input:function(e){return me.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:c(function(){return[0]}),last:c(function(e,t){return[t-1]}),eq:c(function(e,t,n){return[n<0?n+t:n]}),even:c(function(e,t){for(var n=0;n=0;)e.push(i);return e}),gt:c(function(e,t,n){for(var i=n<0?n+t:n;++i2&&"ID"===(a=o[0]).type&&9===t.nodeType&&L&&x.relative[o[1].type]){if(t=(x.find.ID(a.matches[0].replace(we,_e),t)||[])[0],!t)return n;u&&(t=t.parentNode),e=e.slice(o.shift().value.length)}for(r=pe.needsContext.test(e)?0:o.length;r--&&(a=o[r],!x.relative[s=a.type]);)if((l=x.find[s])&&(i=l(a.matches[0].replace(we,_e),be.test(o[0].type)&&d(t.parentNode)||t))){if(o.splice(r,1),e=i.length&&f(o),!e)return J.apply(n,i),n;break}}return(u||k(e,c))(i,t,!L,n,!t||be.test(e)&&d(t.parentNode)||t),n},E.sortStable=F.split("").sort(G).join("")===F,E.detectDuplicates=!!I,P(),E.sortDetached=r(function(e){return 1&e.compareDocumentPosition(N.createElement("fieldset"))}),r(function(e){return e.innerHTML="","#"===e.firstChild.getAttribute("href")})||o("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),E.attributes&&r(function(e){return e.innerHTML="",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||o("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),r(function(e){return null==e.getAttribute("disabled")})||o(ne,function(e,t,n){var i;if(!n)return e[t]===!0?t.toLowerCase():(i=e.getAttributeNode(t))&&i.specified?i.value:null}),t}(e);me.find=we,me.expr=we.selectors,me.expr[":"]=me.expr.pseudos,me.uniqueSort=me.unique=we.uniqueSort,me.text=we.getText,me.isXMLDoc=we.isXML,me.contains=we.contains,me.escapeSelector=we.escape;var _e=function(e,t,n){for(var i=[],r=void 0!==n;(e=e[t])&&9!==e.nodeType;)if(1===e.nodeType){if(r&&me(e).is(n))break;i.push(e)}return i},Ee=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},xe=me.expr.match.needsContext,Te=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i,Ce=/^.[^:#\[\.,]*$/;me.filter=function(e,t,n){var i=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===i.nodeType?me.find.matchesSelector(i,e)?[i]:[]:me.find.matches(e,me.grep(t,function(e){return 1===e.nodeType}))},me.fn.extend({find:function(e){var t,n,i=this.length,r=this;if("string"!=typeof e)return this.pushStack(me(e).filter(function(){for(t=0;t1?me.uniqueSort(n):n},filter:function(e){return this.pushStack(r(this,e||[],!1))},not:function(e){return this.pushStack(r(this,e||[],!0))},is:function(e){return!!r(this,"string"==typeof e&&xe.test(e)?me(e):e||[],!1).length}});var Se,ke=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/,Oe=me.fn.init=function(e,t,n){var i,r;if(!e)return this;if(n=n||Se,"string"==typeof e){if(i="<"===e[0]&&">"===e[e.length-1]&&e.length>=3?[null,e,null]:ke.exec(e),!i||!i[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(i[1]){if(t=t instanceof me?t[0]:t,me.merge(this,me.parseHTML(i[1],t&&t.nodeType?t.ownerDocument||t:ne,!0)),Te.test(i[1])&&me.isPlainObject(t))for(i in t)me.isFunction(this[i])?this[i](t[i]):this.attr(i,t[i]);return this}return r=ne.getElementById(i[2]),r&&(this[0]=r,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):me.isFunction(e)?void 0!==n.ready?n.ready(e):e(me):me.makeArray(e,this)};Oe.prototype=me.fn,Se=me(ne);var De=/^(?:parents|prev(?:Until|All))/,Ae={children:!0,contents:!0,next:!0,prev:!0};me.fn.extend({has:function(e){var t=me(e,this),n=t.length;return this.filter(function(){for(var e=0;e-1:1===n.nodeType&&me.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(o.length>1?me.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?se.call(me(e),this[0]):se.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(me.uniqueSort(me.merge(this.get(),me(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),me.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return _e(e,"parentNode")},parentsUntil:function(e,t,n){return _e(e,"parentNode",n)},next:function(e){return o(e,"nextSibling")},prev:function(e){return o(e,"previousSibling")},nextAll:function(e){return _e(e,"nextSibling")},prevAll:function(e){return _e(e,"previousSibling")},nextUntil:function(e,t,n){return _e(e,"nextSibling",n)},prevUntil:function(e,t,n){return _e(e,"previousSibling",n)},siblings:function(e){return Ee((e.parentNode||{}).firstChild,e)},children:function(e){return Ee(e.firstChild)},contents:function(e){return e.contentDocument||me.merge([],e.childNodes)}},function(e,t){me.fn[e]=function(n,i){var r=me.map(this,t,n);return"Until"!==e.slice(-5)&&(i=n),i&&"string"==typeof i&&(r=me.filter(i,r)),this.length>1&&(Ae[e]||me.uniqueSort(r),De.test(e)&&r.reverse()),this.pushStack(r)}});var Ie=/[^\x20\t\r\n\f]+/g;me.Callbacks=function(e){e="string"==typeof e?a(e):me.extend({},e);var t,n,i,r,o=[],s=[],l=-1,u=function(){for(r=e.once,i=t=!0;s.length;l=-1)for(n=s.shift();++l-1;)o.splice(n,1),n<=l&&l--}),this},has:function(e){return e?me.inArray(e,o)>-1:o.length>0},empty:function(){return o&&(o=[]),this},disable:function(){return r=s=[],o=n="",this},disabled:function(){return!o},lock:function(){return r=s=[],n||t||(o=n=""),this},locked:function(){return!!r},fireWith:function(e,n){return r||(n=n||[],n=[e,n.slice?n.slice():n],s.push(n),t||u()),this},fire:function(){return c.fireWith(this,arguments),this},fired:function(){return!!i}};return c},me.extend({Deferred:function(t){var n=[["notify","progress",me.Callbacks("memory"),me.Callbacks("memory"),2],["resolve","done",me.Callbacks("once memory"),me.Callbacks("once memory"),0,"resolved"],["reject","fail",me.Callbacks("once memory"),me.Callbacks("once memory"),1,"rejected"]],i="pending",r={state:function(){return i},always:function(){return o.done(arguments).fail(arguments),this},catch:function(e){return r.then(null,e)},pipe:function(){var e=arguments;return me.Deferred(function(t){me.each(n,function(n,i){var r=me.isFunction(e[i[4]])&&e[i[4]];o[i[1]](function(){var e=r&&r.apply(this,arguments);e&&me.isFunction(e.promise)?e.promise().progress(t.notify).done(t.resolve).fail(t.reject):t[i[0]+"With"](this,r?[e]:arguments)})}),e=null}).promise()},then:function(t,i,r){function o(t,n,i,r){return function(){var u=this,c=arguments,d=function(){var e,d;if(!(t=a&&(i!==l&&(u=void 0,c=[e]),n.rejectWith(u,c))}};t?h():(me.Deferred.getStackHook&&(h.stackTrace=me.Deferred.getStackHook()),e.setTimeout(h))}}var a=0;return me.Deferred(function(e){n[0][3].add(o(0,e,me.isFunction(r)?r:s,e.notifyWith)),n[1][3].add(o(0,e,me.isFunction(t)?t:s)),n[2][3].add(o(0,e,me.isFunction(i)?i:l))}).promise()},promise:function(e){return null!=e?me.extend(e,r):r}},o={};return me.each(n,function(e,t){var a=t[2],s=t[5];r[t[1]]=a.add,s&&a.add(function(){i=s},n[3-e][2].disable,n[0][2].lock),a.add(t[3].fire),o[t[0]]=function(){return o[t[0]+"With"](this===o?void 0:this,arguments),this},o[t[0]+"With"]=a.fireWith}),r.promise(o),t&&t.call(o,o),o},when:function(e){var t=arguments.length,n=t,i=Array(n),r=re.call(arguments),o=me.Deferred(),a=function(e){return function(n){i[e]=this,r[e]=arguments.length>1?re.call(arguments):n,--t||o.resolveWith(i,r)}};if(t<=1&&(u(e,o.done(a(n)).resolve,o.reject),"pending"===o.state()||me.isFunction(r[n]&&r[n].then)))return o.then();for(;n--;)u(r[n],a(n),o.reject);return o.promise()}});var Pe=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;me.Deferred.exceptionHook=function(t,n){e.console&&e.console.warn&&t&&Pe.test(t.name)&&e.console.warn("jQuery.Deferred exception: "+t.message,t.stack,n)},me.readyException=function(t){e.setTimeout(function(){throw t})};var Ne=me.Deferred();me.fn.ready=function(e){return Ne.then(e).catch(function(e){me.readyException(e)}),this},me.extend({isReady:!1,readyWait:1,holdReady:function(e){e?me.readyWait++:me.ready(!0)},ready:function(e){(e===!0?--me.readyWait:me.isReady)||(me.isReady=!0,e!==!0&&--me.readyWait>0||Ne.resolveWith(ne,[me]))}}),me.ready.then=Ne.then,"complete"===ne.readyState||"loading"!==ne.readyState&&!ne.documentElement.doScroll?e.setTimeout(me.ready):(ne.addEventListener("DOMContentLoaded",c),e.addEventListener("load",c));var je=function(e,t,n,i,r,o,a){var s=0,l=e.length,u=null==n;if("object"===me.type(n)){r=!0;for(s in n)je(e,t,s,n[s],!0,o,a)}else if(void 0!==i&&(r=!0,me.isFunction(i)||(a=!0),u&&(a?(t.call(e,i),t=null):(u=t,t=function(e,t,n){return u.call(me(e),n)})),t))for(;s1,null,!0)},removeData:function(e){return this.each(function(){Re.remove(this,e)})}}),me.extend({queue:function(e,t,n){var i;if(e)return t=(t||"fx")+"queue",i=Me.get(e,t),n&&(!i||me.isArray(n)?i=Me.access(e,t,me.makeArray(n)):i.push(n)),i||[]},dequeue:function(e,t){t=t||"fx";var n=me.queue(e,t),i=n.length,r=n.shift(),o=me._queueHooks(e,t),a=function(){me.dequeue(e,t)};"inprogress"===r&&(r=n.shift(),i--),r&&("fx"===t&&n.unshift("inprogress"),delete o.stop,r.call(e,a,o)),!i&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return Me.get(e,n)||Me.access(e,n,{empty:me.Callbacks("once memory").add(function(){Me.remove(e,[t+"queue",n])})})}}),me.fn.extend({queue:function(e,t){var n=2;return"string"!=typeof e&&(t=e,e="fx",n--),arguments.length\x20\t\r\n\f]+)/i,Ge=/^$|\/(?:java|ecma)script/i,Qe={option:[1,""],thead:[1,"","
      "],col:[2,"","
      "],tr:[2,"","
      "],td:[3,"","
      "],_default:[0,"",""]};Qe.optgroup=Qe.option,Qe.tbody=Qe.tfoot=Qe.colgroup=Qe.caption=Qe.thead,Qe.th=Qe.td;var Ke=/<|&#?\w+;/;!function(){var e=ne.createDocumentFragment(),t=e.appendChild(ne.createElement("div")),n=ne.createElement("input");n.setAttribute("type","radio"),n.setAttribute("checked","checked"),n.setAttribute("name","t"),t.appendChild(n),fe.checkClone=t.cloneNode(!0).cloneNode(!0).lastChild.checked,t.innerHTML="",fe.noCloneChecked=!!t.cloneNode(!0).lastChild.defaultValue}();var Xe=ne.documentElement,Ze=/^key/,Je=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,et=/^([^.]*)(?:\.(.+)|)/;me.event={global:{},add:function(e,t,n,i,r){var o,a,s,l,u,c,d,h,f,p,m,g=Me.get(e);if(g)for(n.handler&&(o=n,n=o.handler,r=o.selector),r&&me.find.matchesSelector(Xe,r),n.guid||(n.guid=me.guid++),(l=g.events)||(l=g.events={}),(a=g.handle)||(a=g.handle=function(t){return"undefined"!=typeof me&&me.event.triggered!==t.type?me.event.dispatch.apply(e,arguments):void 0}),t=(t||"").match(Ie)||[""],u=t.length;u--;)s=et.exec(t[u])||[],f=m=s[1],p=(s[2]||"").split(".").sort(),f&&(d=me.event.special[f]||{},f=(r?d.delegateType:d.bindType)||f,d=me.event.special[f]||{},c=me.extend({type:f,origType:m,data:i,handler:n,guid:n.guid,selector:r,needsContext:r&&me.expr.match.needsContext.test(r),namespace:p.join(".")},o),(h=l[f])||(h=l[f]=[],h.delegateCount=0,d.setup&&d.setup.call(e,i,p,a)!==!1||e.addEventListener&&e.addEventListener(f,a)),d.add&&(d.add.call(e,c),c.handler.guid||(c.handler.guid=n.guid)),r?h.splice(h.delegateCount++,0,c):h.push(c),me.event.global[f]=!0)},remove:function(e,t,n,i,r){var o,a,s,l,u,c,d,h,f,p,m,g=Me.hasData(e)&&Me.get(e);if(g&&(l=g.events)){for(t=(t||"").match(Ie)||[""],u=t.length;u--;)if(s=et.exec(t[u])||[],f=m=s[1],p=(s[2]||"").split(".").sort(),f){for(d=me.event.special[f]||{},f=(i?d.delegateType:d.bindType)||f,h=l[f]||[],s=s[2]&&new RegExp("(^|\\.)"+p.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=h.length;o--;)c=h[o],!r&&m!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||i&&i!==c.selector&&("**"!==i||!c.selector)||(h.splice(o,1),c.selector&&h.delegateCount--,d.remove&&d.remove.call(e,c));a&&!h.length&&(d.teardown&&d.teardown.call(e,p,g.handle)!==!1||me.removeEvent(e,f,g.handle),delete l[f])}else for(f in l)me.event.remove(e,f+t[u],n,i,!0);me.isEmptyObject(l)&&Me.remove(e,"handle events")}},dispatch:function(e){var t=me.event.fix(e),n,i,r,o,a,s,l=new Array(arguments.length),u=(Me.get(this,"events")||{})[t.type]||[],c=me.event.special[t.type]||{};for(l[0]=t,n=1;n=1))for(;u!==this;u=u.parentNode||this)if(1===u.nodeType&&("click"!==e.type||u.disabled!==!0)){for(o=[],a={},n=0;n-1:me.find(r,this,null,[u]).length),a[r]&&o.push(i);o.length&&s.push({elem:u,handlers:o})}return u=this,l\x20\t\r\n\f]*)[^>]*)\/>/gi,nt=/\s*$/g;me.extend({htmlPrefilter:function(e){return e.replace(tt,"<$1>")},clone:function(e,t,n){var i,r,o,a,s=e.cloneNode(!0),l=me.contains(e.ownerDocument,e);if(!(fe.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||me.isXMLDoc(e)))for(a=v(s),o=v(e),i=0,r=o.length;i0&&y(a,!l&&v(e,"script")),s},cleanData:function(e){for(var t,n,i,r=me.event.special,o=0;void 0!==(n=e[o]);o++)if(Le(n)){if(t=n[Me.expando]){if(t.events)for(i in t.events)r[i]?me.event.remove(n,i):me.removeEvent(n,i,t.handle);n[Me.expando]=void 0}n[Re.expando]&&(n[Re.expando]=void 0)}}}),me.fn.extend({detach:function(e){return A(this,e,!0)},remove:function(e){return A(this,e)},text:function(e){return je(this,function(e){return void 0===e?me.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return D(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=T(this,e);t.appendChild(e)}})},prepend:function(){return D(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=T(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return D(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return D(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(me.cleanData(v(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return me.clone(this,e,t)})},html:function(e){return je(this,function(e){var t=this[0]||{},n=0,i=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!nt.test(e)&&!Qe[(Be.exec(e)||["",""])[1].toLowerCase()]){e=me.htmlPrefilter(e);try{for(;n1)}}),me.Tween=R,R.prototype={constructor:R,init:function(e,t,n,i,r,o){this.elem=e,this.prop=n,this.easing=r||me.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=i,this.unit=o||(me.cssNumber[n]?"":"px")},cur:function(){var e=R.propHooks[this.prop];return e&&e.get?e.get(this):R.propHooks._default.get(this)},run:function(e){var t,n=R.propHooks[this.prop];return this.options.duration?this.pos=t=me.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):R.propHooks._default.set(this),this}},R.prototype.init.prototype=R.prototype,R.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=me.css(e.elem,e.prop,""),t&&"auto"!==t?t:0)},set:function(e){me.fx.step[e.prop]?me.fx.step[e.prop](e):1!==e.elem.nodeType||null==e.elem.style[me.cssProps[e.prop]]&&!me.cssHooks[e.prop]?e.elem[e.prop]=e.now:me.style(e.elem,e.prop,e.now+e.unit)}}},R.propHooks.scrollTop=R.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},me.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},me.fx=R.prototype.init,me.fx.step={};var pt,mt,gt=/^(?:toggle|show|hide)$/,vt=/queueHooks$/;me.Animation=me.extend(V,{tweeners:{"*":[function(e,t){var n=this.createTween(e,t);return p(n.elem,e,Ye.exec(t),n),n}]},tweener:function(e,t){me.isFunction(e)?(t=e,e=["*"]):e=e.match(Ie);for(var n,i=0,r=e.length;i1)},removeAttr:function(e){return this.each(function(){me.removeAttr(this,e)})}}),me.extend({attr:function(e,t,n){var i,r,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return"undefined"==typeof e.getAttribute?me.prop(e,t,n):(1===o&&me.isXMLDoc(e)||(r=me.attrHooks[t.toLowerCase()]||(me.expr.match.bool.test(t)?yt:void 0)),void 0!==n?null===n?void me.removeAttr(e,t):r&&"set"in r&&void 0!==(i=r.set(e,n,t))?i:(e.setAttribute(t,n+""),n):r&&"get"in r&&null!==(i=r.get(e,t))?i:(i=me.find.attr(e,t),null==i?void 0:i))},attrHooks:{type:{set:function(e,t){if(!fe.radioValue&&"radio"===t&&me.nodeName(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,i=0,r=t&&t.match(Ie);if(r&&1===e.nodeType)for(;n=r[i++];)e.removeAttribute(n)}}),yt={set:function(e,t,n){return t===!1?me.removeAttr(e,n):e.setAttribute(n,n),n}},me.each(me.expr.match.bool.source.match(/\w+/g),function(e,t){var n=bt[t]||me.find.attr;bt[t]=function(e,t,i){var r,o,a=t.toLowerCase();return i||(o=bt[a],bt[a]=r,r=null!=n(e,t,i)?a:null,bt[a]=o),r}});var wt=/^(?:input|select|textarea|button)$/i,_t=/^(?:a|area)$/i;me.fn.extend({prop:function(e,t){return je(this,me.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each(function(){delete this[me.propFix[e]||e]})}}),me.extend({prop:function(e,t,n){var i,r,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&me.isXMLDoc(e)||(t=me.propFix[t]||t,r=me.propHooks[t]),void 0!==n?r&&"set"in r&&void 0!==(i=r.set(e,n,t))?i:e[t]=n:r&&"get"in r&&null!==(i=r.get(e,t))?i:e[t]},propHooks:{tabIndex:{get:function(e){var t=me.find.attr(e,"tabindex");return t?parseInt(t,10):wt.test(e.nodeName)||_t.test(e.nodeName)&&e.href?0:-1}}},propFix:{for:"htmlFor",class:"className"}}),fe.optSelected||(me.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),me.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){me.propFix[this.toLowerCase()]=this}),me.fn.extend({addClass:function(e){var t,n,i,r,o,a,s,l=0;if(me.isFunction(e))return this.each(function(t){me(this).addClass(e.call(this,t,B(this)))});if("string"==typeof e&&e)for(t=e.match(Ie)||[];n=this[l++];)if(r=B(n),i=1===n.nodeType&&" "+z(r)+" "){for(a=0;o=t[a++];)i.indexOf(" "+o+" ")<0&&(i+=o+" ");s=z(i),r!==s&&n.setAttribute("class",s)}return this},removeClass:function(e){var t,n,i,r,o,a,s,l=0;if(me.isFunction(e))return this.each(function(t){me(this).removeClass(e.call(this,t,B(this)))});if(!arguments.length)return this.attr("class","");if("string"==typeof e&&e)for(t=e.match(Ie)||[];n=this[l++];)if(r=B(n),i=1===n.nodeType&&" "+z(r)+" "){for(a=0;o=t[a++];)for(;i.indexOf(" "+o+" ")>-1;)i=i.replace(" "+o+" "," ");s=z(i),r!==s&&n.setAttribute("class",s)}return this},toggleClass:function(e,t){var n=typeof e;return"boolean"==typeof t&&"string"===n?t?this.addClass(e):this.removeClass(e):me.isFunction(e)?this.each(function(n){me(this).toggleClass(e.call(this,n,B(this),t),t)}):this.each(function(){var t,i,r,o;if("string"===n)for(i=0,r=me(this),o=e.match(Ie)||[];t=o[i++];)r.hasClass(t)?r.removeClass(t):r.addClass(t);else void 0!==e&&"boolean"!==n||(t=B(this),t&&Me.set(this,"__className__",t),this.setAttribute&&this.setAttribute("class",t||e===!1?"":Me.get(this,"__className__")||""))})},hasClass:function(e){var t,n,i=0;for(t=" "+e+" ";n=this[i++];)if(1===n.nodeType&&(" "+z(B(n))+" ").indexOf(t)>-1)return!0;return!1}});var Et=/\r/g;me.fn.extend({val:function(e){var t,n,i,r=this[0];{if(arguments.length)return i=me.isFunction(e),this.each(function(n){var r;1===this.nodeType&&(r=i?e.call(this,n,me(this).val()):e,null==r?r="":"number"==typeof r?r+="":me.isArray(r)&&(r=me.map(r,function(e){return null==e?"":e+""})),t=me.valHooks[this.type]||me.valHooks[this.nodeName.toLowerCase()],t&&"set"in t&&void 0!==t.set(this,r,"value")||(this.value=r))});if(r)return t=me.valHooks[r.type]||me.valHooks[r.nodeName.toLowerCase()],t&&"get"in t&&void 0!==(n=t.get(r,"value"))?n:(n=r.value,"string"==typeof n?n.replace(Et,""):null==n?"":n)}}}),me.extend({valHooks:{option:{get:function(e){var t=me.find.attr(e,"value");return null!=t?t:z(me.text(e))}},select:{get:function(e){var t,n,i,r=e.options,o=e.selectedIndex,a="select-one"===e.type,s=a?null:[],l=a?o+1:r.length;for(i=o<0?l:a?o:0;i-1)&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),me.each(["radio","checkbox"],function(){me.valHooks[this]={set:function(e,t){if(me.isArray(t))return e.checked=me.inArray(me(e).val(),t)>-1}},fe.checkOn||(me.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})});var xt=/^(?:focusinfocus|focusoutblur)$/;me.extend(me.event,{trigger:function(t,n,i,r){var o,a,s,l,u,c,d,h=[i||ne],f=ce.call(t,"type")?t.type:t,p=ce.call(t,"namespace")?t.namespace.split("."):[];if(a=s=i=i||ne,3!==i.nodeType&&8!==i.nodeType&&!xt.test(f+me.event.triggered)&&(f.indexOf(".")>-1&&(p=f.split("."),f=p.shift(),p.sort()),u=f.indexOf(":")<0&&"on"+f,t=t[me.expando]?t:new me.Event(f,"object"==typeof t&&t),t.isTrigger=r?2:3,t.namespace=p.join("."),t.rnamespace=t.namespace?new RegExp("(^|\\.)"+p.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=void 0,t.target||(t.target=i),n=null==n?[t]:me.makeArray(n,[t]),d=me.event.special[f]||{},r||!d.trigger||d.trigger.apply(i,n)!==!1)){if(!r&&!d.noBubble&&!me.isWindow(i)){for(l=d.delegateType||f,xt.test(l+f)||(a=a.parentNode);a;a=a.parentNode)h.push(a),s=a;s===(i.ownerDocument||ne)&&h.push(s.defaultView||s.parentWindow||e)}for(o=0;(a=h[o++])&&!t.isPropagationStopped();)t.type=o>1?l:d.bindType||f,c=(Me.get(a,"events")||{})[t.type]&&Me.get(a,"handle"),c&&c.apply(a,n),c=u&&a[u],c&&c.apply&&Le(a)&&(t.result=c.apply(a,n),t.result===!1&&t.preventDefault());return t.type=f,r||t.isDefaultPrevented()||d._default&&d._default.apply(h.pop(),n)!==!1||!Le(i)||u&&me.isFunction(i[f])&&!me.isWindow(i)&&(s=i[u],s&&(i[u]=null),me.event.triggered=f,i[f](),me.event.triggered=void 0,s&&(i[u]=s)),t.result}},simulate:function(e,t,n){var i=me.extend(new me.Event,n,{type:e,isSimulated:!0});me.event.trigger(i,null,t)}}),me.fn.extend({trigger:function(e,t){return this.each(function(){me.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return me.event.trigger(e,t,n,!0)}}),me.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(e,t){me.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}),me.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),fe.focusin="onfocusin"in e,fe.focusin||me.each({focus:"focusin",blur:"focusout"},function(e,t){var n=function(e){me.event.simulate(t,e.target,me.event.fix(e))};me.event.special[t]={setup:function(){var i=this.ownerDocument||this,r=Me.access(i,t);r||i.addEventListener(e,n,!0),Me.access(i,t,(r||0)+1)},teardown:function(){var i=this.ownerDocument||this,r=Me.access(i,t)-1;r?Me.access(i,t,r):(i.removeEventListener(e,n,!0),Me.remove(i,t))}}});var Tt=e.location,Ct=me.now(),St=/\?/;me.parseXML=function(t){var n;if(!t||"string"!=typeof t)return null;try{n=(new e.DOMParser).parseFromString(t,"text/xml")}catch(e){n=void 0}return n&&!n.getElementsByTagName("parsererror").length||me.error("Invalid XML: "+t),n};var kt=/\[\]$/,Ot=/\r?\n/g,Dt=/^(?:submit|button|image|reset|file)$/i,At=/^(?:input|select|textarea|keygen)/i;me.param=function(e,t){var n,i=[],r=function(e,t){var n=me.isFunction(t)?t():t;i[i.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(me.isArray(e)||e.jquery&&!me.isPlainObject(e))me.each(e,function(){r(this.name,this.value)});else for(n in e)G(n,e[n],t,r);return i.join("&")},me.fn.extend({serialize:function(){return me.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=me.prop(this,"elements");return e?me.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!me(this).is(":disabled")&&At.test(this.nodeName)&&!Dt.test(e)&&(this.checked||!ze.test(e))}).map(function(e,t){var n=me(this).val();return null==n?null:me.isArray(n)?me.map(n,function(e){return{name:t.name,value:e.replace(Ot,"\r\n")}}):{name:t.name,value:n.replace(Ot,"\r\n")}}).get()}});var It=/%20/g,Pt=/#.*$/,Nt=/([?&])_=[^&]*/,jt=/^(.*?):[ \t]*([^\r\n]*)$/gm,Lt=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,Mt=/^(?:GET|HEAD)$/,Rt=/^\/\//,Ht={},Wt={},Ft="*/".concat("*"),Yt=ne.createElement("a");Yt.href=Tt.href,me.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:Tt.href,type:"GET",isLocal:Lt.test(Tt.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Ft,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":me.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?X(X(e,me.ajaxSettings),t):X(me.ajaxSettings,e)},ajaxPrefilter:Q(Ht),ajaxTransport:Q(Wt),ajax:function(t,n){function i(t,n,i,s){var u,h,f,w,_,E=n;c||(c=!0,l&&e.clearTimeout(l),r=void 0,a=s||"",x.readyState=t>0?4:0,u=t>=200&&t<300||304===t,i&&(w=Z(p,x,i)),w=J(p,w,x,u),u?(p.ifModified&&(_=x.getResponseHeader("Last-Modified"),_&&(me.lastModified[o]=_),_=x.getResponseHeader("etag"),_&&(me.etag[o]=_)),204===t||"HEAD"===p.type?E="nocontent":304===t?E="notmodified":(E=w.state,h=w.data,f=w.error,u=!f)):(f=E,!t&&E||(E="error",t<0&&(t=0))),x.status=t,x.statusText=(n||E)+"",u?v.resolveWith(m,[h,E,x]):v.rejectWith(m,[x,E,f]),x.statusCode(b),b=void 0,d&&g.trigger(u?"ajaxSuccess":"ajaxError",[x,p,u?h:f]),y.fireWith(m,[x,E]),d&&(g.trigger("ajaxComplete",[x,p]),--me.active||me.event.trigger("ajaxStop")))}"object"==typeof t&&(n=t,t=void 0),n=n||{};var r,o,a,s,l,u,c,d,h,f,p=me.ajaxSetup({},n),m=p.context||p,g=p.context&&(m.nodeType||m.jquery)?me(m):me.event,v=me.Deferred(),y=me.Callbacks("once memory"),b=p.statusCode||{},w={},_={},E="canceled",x={readyState:0,getResponseHeader:function(e){var t;if(c){if(!s)for(s={};t=jt.exec(a);)s[t[1].toLowerCase()]=t[2];t=s[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return c?a:null},setRequestHeader:function(e,t){return null==c&&(e=_[e.toLowerCase()]=_[e.toLowerCase()]||e,w[e]=t),this},overrideMimeType:function(e){return null==c&&(p.mimeType=e),this},statusCode:function(e){var t;if(e)if(c)x.always(e[x.status]);else for(t in e)b[t]=[b[t],e[t]];return this},abort:function(e){var t=e||E;return r&&r.abort(t),i(0,t),this}};if(v.promise(x),p.url=((t||p.url||Tt.href)+"").replace(Rt,Tt.protocol+"//"),p.type=n.method||n.type||p.method||p.type,p.dataTypes=(p.dataType||"*").toLowerCase().match(Ie)||[""],null==p.crossDomain){u=ne.createElement("a");try{u.href=p.url,u.href=u.href,p.crossDomain=Yt.protocol+"//"+Yt.host!=u.protocol+"//"+u.host}catch(e){p.crossDomain=!0}}if(p.data&&p.processData&&"string"!=typeof p.data&&(p.data=me.param(p.data,p.traditional)),K(Ht,p,n,x),c)return x;d=me.event&&p.global,d&&0===me.active++&&me.event.trigger("ajaxStart"),p.type=p.type.toUpperCase(),p.hasContent=!Mt.test(p.type),o=p.url.replace(Pt,""),p.hasContent?p.data&&p.processData&&0===(p.contentType||"").indexOf("application/x-www-form-urlencoded")&&(p.data=p.data.replace(It,"+")):(f=p.url.slice(o.length),p.data&&(o+=(St.test(o)?"&":"?")+p.data,delete p.data),p.cache===!1&&(o=o.replace(Nt,"$1"),f=(St.test(o)?"&":"?")+"_="+Ct++ +f),p.url=o+f),p.ifModified&&(me.lastModified[o]&&x.setRequestHeader("If-Modified-Since",me.lastModified[o]),me.etag[o]&&x.setRequestHeader("If-None-Match",me.etag[o])),(p.data&&p.hasContent&&p.contentType!==!1||n.contentType)&&x.setRequestHeader("Content-Type",p.contentType),x.setRequestHeader("Accept",p.dataTypes[0]&&p.accepts[p.dataTypes[0]]?p.accepts[p.dataTypes[0]]+("*"!==p.dataTypes[0]?", "+Ft+"; q=0.01":""):p.accepts["*"]);for(h in p.headers)x.setRequestHeader(h,p.headers[h]);if(p.beforeSend&&(p.beforeSend.call(m,x,p)===!1||c))return x.abort();if(E="abort",y.add(p.complete),x.done(p.success),x.fail(p.error),r=K(Wt,p,n,x)){if(x.readyState=1,d&&g.trigger("ajaxSend",[x,p]),c)return x;p.async&&p.timeout>0&&(l=e.setTimeout(function(){x.abort("timeout")},p.timeout));try{c=!1,r.send(w,i)}catch(e){if(c)throw e;i(-1,e)}}else i(-1,"No Transport");return x},getJSON:function(e,t,n){return me.get(e,t,n,"json")},getScript:function(e,t){return me.get(e,void 0,t,"script")}}),me.each(["get","post"],function(e,t){me[t]=function(e,n,i,r){return me.isFunction(n)&&(r=r||i,i=n,n=void 0),me.ajax(me.extend({url:e,type:t,dataType:r,data:n,success:i},me.isPlainObject(e)&&e))}}),me._evalUrl=function(e){return me.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,throws:!0})},me.fn.extend({wrapAll:function(e){var t;return this[0]&&(me.isFunction(e)&&(e=e.call(this[0])),t=me(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){for(var e=this;e.firstElementChild;)e=e.firstElementChild;return e}).append(this)),this},wrapInner:function(e){return me.isFunction(e)?this.each(function(t){me(this).wrapInner(e.call(this,t))}):this.each(function(){var t=me(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=me.isFunction(e);return this.each(function(n){me(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(e){return this.parent(e).not("body").each(function(){me(this).replaceWith(this.childNodes)}),this}}),me.expr.pseudos.hidden=function(e){return!me.expr.pseudos.visible(e)},me.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},me.ajaxSettings.xhr=function(){try{return new e.XMLHttpRequest}catch(e){}};var Ut={0:200,1223:204},qt=me.ajaxSettings.xhr();fe.cors=!!qt&&"withCredentials"in qt,fe.ajax=qt=!!qt,me.ajaxTransport(function(t){var n,i;if(fe.cors||qt&&!t.crossDomain)return{send:function(r,o){var a,s=t.xhr();if(s.open(t.type,t.url,t.async,t.username,t.password),t.xhrFields)for(a in t.xhrFields)s[a]=t.xhrFields[a];t.mimeType&&s.overrideMimeType&&s.overrideMimeType(t.mimeType),t.crossDomain||r["X-Requested-With"]||(r["X-Requested-With"]="XMLHttpRequest");for(a in r)s.setRequestHeader(a,r[a]);n=function(e){return function(){n&&(n=i=s.onload=s.onerror=s.onabort=s.onreadystatechange=null,"abort"===e?s.abort():"error"===e?"number"!=typeof s.status?o(0,"error"):o(s.status,s.statusText):o(Ut[s.status]||s.status,s.statusText,"text"!==(s.responseType||"text")||"string"!=typeof s.responseText?{binary:s.response}:{text:s.responseText},s.getAllResponseHeaders()))}},s.onload=n(),i=s.onerror=n("error"),void 0!==s.onabort?s.onabort=i:s.onreadystatechange=function(){4===s.readyState&&e.setTimeout(function(){n&&i()})},n=n("abort");try{s.send(t.hasContent&&t.data||null)}catch(e){if(n)throw e}},abort:function(){n&&n()}}}),me.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),me.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return me.globalEval(e),e}}}),me.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),me.ajaxTransport("script",function(e){if(e.crossDomain){var t,n;return{send:function(i,r){t=me("',nocache:1}),new $.fn.oembed.OEmbedProvider("boxofficebuz","video",["boxofficebuz\\.com\\/embed/.+"],"http://boxofficebuz.com/embed/$1/$2",{templateRegex:[/.*boxofficebuz\.com\/embed\/(\w+)\/([\w*\-*]+)/],embedtag:{tag:"iframe",width:480,height:360}}),new $.fn.oembed.OEmbedProvider("clipsyndicate","video",["clipsyndicate\\.com/video/play/.+","clipsyndicate\\.com/embed/iframe?.+"],"http://eplayer.clipsyndicate.com/embed/iframe?pf_id=1&show_title=0&va_id=$1&windows=1",{templateRegex:[/.*www\.clipsyndicate\.com\/video\/play\/(\w+)\/.*/,/.*eplayer\.clipsyndicate\.com\/embed\/iframe\?.*va_id=(\w+).*.*/],embedtag:{tag:"iframe",width:480,height:360},nocache:1}),new $.fn.oembed.OEmbedProvider("coub","video",["coub\\.com/.+"],"http://www.coub.com/embed/$1?muted=false&autostart=false&originalSize=false&hideTopBar=false&noSiteButtons=false&startWithHD=false",{templateRegex:[/.*coub\.com\/embed\/(\w+)\?*.*/,/.*coub\.com\/view\/(\w+).*/],embedtag:{tag:"iframe",width:480,height:360},nocache:1}),new $.fn.oembed.OEmbedProvider("discoverychannel","video",["snagplayer\\.video\\.dp\\.discovery\\.com/.+"],"http://snagplayer.video.dp.discovery.com/$1/snag-it-player.htm?auto=no",{templateRegex:[/.*snagplayer\.video\.dp\.discovery\/(\w+).*/],embedtag:{tag:"iframe",width:480,height:360}}),new $.fn.oembed.OEmbedProvider("telly","video",["telly\\.com/.+"],"http://www.telly.com/embed.php?guid=$1&autoplay=0",{templateRegex:[/.*telly\.com\/embed\.php\?guid=(\w+).*/,/.*telly\.com\/(\w+).*/],embedtag:{tag:"iframe",width:480,height:360}}),new $.fn.oembed.OEmbedProvider("minilogs","video",["minilogs\\.com/.+"],"http://www.minilogs.com/e/$1",{templateRegex:[/.*minilogs\.com\/e\/(\w+).*/,/.*minilogs\.com\/(\w+).*/],embedtag:{tag:"iframe",width:480,height:360},nocache:1}),new $.fn.oembed.OEmbedProvider("viddy","video",["viddy\\.com/.+"],"http://www.viddy.com/embed/video/$1",{templateRegex:[/.*viddy\.com\/embed\/video\/(\.*)/,/.*viddy\.com\/video\/(\.*)/],embedtag:{tag:"iframe",width:480,height:360},nocache:1}),new $.fn.oembed.OEmbedProvider("worldstarhiphop","video",["worldstarhiphop\\.com/embed/.+"],"http://www.worldstarhiphop.com/embed/$1",{templateRegex:/.*worldstarhiphop\.com\/embed\/(\w+).*/,embedtag:{tag:"iframe",width:480,height:360},nocache:1}),new $.fn.oembed.OEmbedProvider("zapiks","video",["zapiks\\.fr/.+"],"http://www.zapiks.fr/index.php?action=playerIframe&media_id=$1&autoStart=fals",{templateRegex:/.*zapiks\.fr\/index.php\?[\w\=\&]*media_id=(\w+).*/,embedtag:{tag:"iframe",width:480,height:360},nocache:1}),new $.fn.oembed.OEmbedProvider("official.fm","rich",["official.fm/.+"],"http://official.fm/services/oembed",{useYQL:"json"}),new $.fn.oembed.OEmbedProvider("chirbit","rich",["chirb.it/.+"],"http://chirb.it/oembed.json",{useYQL:"json"}),new $.fn.oembed.OEmbedProvider("chirbit","audio",["chirb\\.it/.+"],"http://chirb.it/wp/$1",{templateRegex:[/.*chirb\.it\/wp\/(\w+).*/,/.*chirb\.it\/(\w+).*/],embedtag:{tag:"iframe",width:480,height:360},nocache:1}),new $.fn.oembed.OEmbedProvider("Huffduffer","rich",["huffduffer.com/[-.\\w@]+/\\d+"],"http://huffduffer.com/oembed"),new $.fn.oembed.OEmbedProvider("Spotify","rich",["open.spotify.com/(track|album|user)/"],"https://embed.spotify.com/oembed/"),new $.fn.oembed.OEmbedProvider("shoudio","rich",["shoudio.com/.+","shoud.io/.+"],"http://shoudio.com/api/oembed"),new $.fn.oembed.OEmbedProvider("mixcloud","rich",["mixcloud.com/.+"],"http://www.mixcloud.com/oembed/",{useYQL:"json"}),new $.fn.oembed.OEmbedProvider("rdio.com","rich",["rd.io/.+","rdio.com"],"http://www.rdio.com/api/oembed/"),new $.fn.oembed.OEmbedProvider("Soundcloud","rich",["soundcloud.com/.+","snd.sc/.+"],"//soundcloud.com/oembed",{format:"js"}),new $.fn.oembed.OEmbedProvider("bandcamp","rich",["bandcamp\\.com/album/.+"],null,{yql:{xpath:"//meta[contains(@content, \\'EmbeddedPlayer\\')]",from:"html",datareturn:function(e){return!!e.meta&&''}}}),new $.fn.oembed.OEmbedProvider("deviantart","photo",["deviantart.com/.+","fav.me/.+","deviantart.com/.+"],"//backend.deviantart.com/oembed",{format:"jsonp"}),new $.fn.oembed.OEmbedProvider("skitch","photo",["skitch.com/.+"],null,{yql:{xpath:"json",from:"json",url:function(e){return"http://skitch.com/oembed/?format=json&url="+e},datareturn:function(e){return $.fn.oembed.getPhotoCode(e.json.url,e.json)}}}),new $.fn.oembed.OEmbedProvider("mobypicture","photo",["mobypicture.com/user/.+/view/.+","moby.to/.+"],"http://api.mobypicture.com/oEmbed"),new $.fn.oembed.OEmbedProvider("flickr","photo",["flickr\\.com/photos/.+"],"//flickr.com/services/oembed",{callbackparameter:"jsoncallback"}),new $.fn.oembed.OEmbedProvider("photobucket","photo",["photobucket\\.com/(albums|groups)/.+"],"http://photobucket.com/oembed/"),new $.fn.oembed.OEmbedProvider("instagram","photo",["instagr\\.?am(\\.com)?/.+"],"//api.instagram.com/oembed"),new $.fn.oembed.OEmbedProvider("SmugMug","photo",["smugmug.com/[-.\\w@]+/.+"],"http://api.smugmug.com/services/oembed/"),new $.fn.oembed.OEmbedProvider("dribbble","photo",["dribbble.com/shots/.+"],"http://api.dribbble.com/shots/$1?callback=?",{templateRegex:/.*shots\/([\d]+).*/,templateData:function(e){return!!e.image_teaser_url&&''}}),new $.fn.oembed.OEmbedProvider("chart.ly","photo",["chart\\.ly/[a-z0-9]{6,8}"],"http://chart.ly/uploads/large_$1.png",{templateRegex:/.*ly\/([^\/]+).*/,embedtag:{tag:"img"},nocache:1}),new $.fn.oembed.OEmbedProvider("circuitlab","photo",["circuitlab.com/circuit/.+"],"https://www.circuitlab.com/circuit/$1/screenshot/540x405/",{templateRegex:/.*circuit\/([^\/]+).*/,embedtag:{tag:"img"},nocache:1}),new $.fn.oembed.OEmbedProvider("23hq","photo",["23hq.com/[-.\\w@]+/photo/.+"],"http://www.23hq.com/23/oembed",{useYQL:"json"}),new $.fn.oembed.OEmbedProvider("img.ly","photo",["img\\.ly/.+"],"//img.ly/show/thumb/$1",{templateRegex:/.*ly\/([^\/]+).*/,embedtag:{tag:"img"},nocache:1}),new $.fn.oembed.OEmbedProvider("twitgoo.com","photo",["twitgoo\\.com/.+"],"http://twitgoo.com/show/thumb/$1",{templateRegex:/.*com\/([^\/]+).*/,embedtag:{tag:"img"},nocache:1}),new $.fn.oembed.OEmbedProvider("imgur.com","photo",["imgur\\.com/gallery/.+"],"http://imgur.com/$1l.jpg",{templateRegex:/.*gallery\/([^\/]+).*/,embedtag:{tag:"img"},nocache:1}),new $.fn.oembed.OEmbedProvider("visual.ly","rich",["visual\\.ly/.+"],null,{yql:{xpath:"//a[@id=\\'gc_article_graphic_image\\']/img",from:"htmlstring"}}),new $.fn.oembed.OEmbedProvider("achewood","photo",["achewood\\.com\\/index.php\\?date=.+"],"http://www.achewood.com/comic.php?date=$1",{templateRegex:/.*achewood\.com\/index.php\?date=(\w+).*/,embedtag:{tag:"iframe",width:480,height:360},nocache:1}),new $.fn.oembed.OEmbedProvider("fotokritik","photo",["fotokritik\\.com/.+"],"http://www.fotokritik.com/embed/$1",{templateRegex:[/.*fotokritik\.com\/embed\/(\w+).*/,/.*fotokritik\.com\/(\w+).*/],embedtag:{tag:"iframe",width:480,height:360},nocache:1}),new $.fn.oembed.OEmbedProvider("giflike","photo",["giflike\\.com/.+"],"http://www.giflike.com/embed/$1",{templateRegex:[/.*giflike\.com\/embed\/(\w+).*/,/.*giflike\.com\/a\/(\w+).*/],embedtag:{tag:"iframe",width:480,height:360},nocache:1}),new $.fn.oembed.OEmbedProvider("twitter","rich",["twitter.com/.+"],"https://api.twitter.com/1/statuses/oembed.json"),new $.fn.oembed.OEmbedProvider("gmep","rich",["gmep.imeducate.com/.*","gmep.org/.*"],"http://gmep.org/oembed.json"),new $.fn.oembed.OEmbedProvider("urtak","rich",["urtak.com/(u|clr)/.+"],"http://oembed.urtak.com/1/oembed"),new $.fn.oembed.OEmbedProvider("cacoo","rich",["cacoo.com/.+"],"http://cacoo.com/oembed.json"),new $.fn.oembed.OEmbedProvider("dailymile","rich",["dailymile.com/people/.*/entries/.*"],"http://api.dailymile.com/oembed"),new $.fn.oembed.OEmbedProvider("documentcloud","rich",["documentcloud.org/documents/.+"],"https://www.documentcloud.org/api/oembed.json"),new $.fn.oembed.OEmbedProvider("dipity","rich",["dipity.com/timeline/.+"],"http://www.dipity.com/oembed/timeline/",{useYQL:"json"}),new $.fn.oembed.OEmbedProvider("sketchfab","rich",["sketchfab.com/show/.+"],"http://sketchfab.com/oembed",{useYQL:"json"}),new $.fn.oembed.OEmbedProvider("speakerdeck","rich",["speakerdeck.com/.+"],"http://speakerdeck.com/oembed.json",{useYQL:"json"}),new $.fn.oembed.OEmbedProvider("popplet","rich",["popplet.com/app/.*"],"http://popplet.com/app/Popplet_Alpha.swf?page_id=$1&em=1",{templateRegex:/.*#\/([^\/]+).*/,embedtag:{width:460,height:460}}),new $.fn.oembed.OEmbedProvider("pearltrees","rich",["pearltrees.com/.*"],"http://cdn.pearltrees.com/s/embed/getApp?",{templateRegex:/.*N-f=1_(\d+).*N-p=(\d+).*/,embedtag:{width:460,height:460,flashvars:"lang=en_US&embedId=pt-embed-$1-693&treeId=$1&pearlId=$2&treeTitle=Diagrams%2FVisualization&site=www.pearltrees.com%2FF"}}),new $.fn.oembed.OEmbedProvider("prezi","rich",["prezi.com/.*"],"//prezi.com/bin/preziloader.swf?",{templateRegex:/.*com\/([^\/]+)\/.*/,embedtag:{width:550,height:400,flashvars:"prezi_id=$1&lock_to_path=0&color=ffffff&autoplay=no&autohide_ctrls=0"}}),new $.fn.oembed.OEmbedProvider("tourwrist","rich",["tourwrist.com/tours/.+"],null,{templateRegex:/.*tours.([\d]+).*/,template:function(e,t){return setTimeout(function(){loadEmbeds&&loadEmbeds()},2e3),"
      "}}),new $.fn.oembed.OEmbedProvider("meetup","rich",["meetup\\.(com|ps)/.+"],"http://api.meetup.com/oembed"),new $.fn.oembed.OEmbedProvider("ebay","rich",["ebay\\.*"],"http://togo.ebay.com/togo/togo.swf?2008013100",{templateRegex:/.*\/([^\/]+)\/(\d{10,13}).*/,embedtag:{width:355,height:300,flashvars:"base=http://togo.ebay.com/togo/&lang=en-us&mode=normal&itemid=$2&query=$1"}}),new $.fn.oembed.OEmbedProvider("wikipedia","rich",["wikipedia.org/wiki/.+"],"http://$1.wikipedia.org/w/api.php?action=parse&page=$2&format=json§ion=0&callback=?",{templateRegex:/.*\/\/([\w]+).*\/wiki\/([^\/]+).*/,templateData:function(e){if(!e.parse)return!1;var t=e.parse.text["*"].replace(/href="\/wiki/g,'href="http://en.wikipedia.org/wiki');return'"}}),new $.fn.oembed.OEmbedProvider("imdb","rich",["imdb.com/title/.+"],"http://www.imdbapi.com/?i=$1&callback=?",{templateRegex:/.*\/title\/([^\/]+).*/,templateData:function(e){return!!e.Title&&'

      '+e.Title+" ("+e.Year+")

      Rating: "+e.imdbRating+"
      Genre: "+e.Genre+"
      Starring: "+e.Actors+'

      '+e.Plot+"
      "}}),new $.fn.oembed.OEmbedProvider("livejournal","rich",["livejournal.com/"],"http://ljpic.seacrow.com/json/$2$4?jsonp=?",{templateRegex:/(http:\/\/(((?!users).)+)\.livejournal\.com|.*users\.livejournal\.com\/([^\/]+)).*/,templateData:function(e){return!!e.username&&'
      [info]'+e.username+"
      "+e.name+"
      "}}),new $.fn.oembed.OEmbedProvider("circuitbee","rich",["circuitbee\\.com/circuit/view/.+"],"http://c.circuitbee.com/build/r/schematic-embed.html?id=$1",{templateRegex:/.*circuit\/view\/(\d+).*/,embedtag:{tag:"iframe",width:"500",height:"350"}}),new $.fn.oembed.OEmbedProvider("googlecalendar","rich",["www.google.com/calendar/embed?.+"],"$1",{templateRegex:/(.*)/,embedtag:{tag:"iframe",width:"800",height:"600"}}),new $.fn.oembed.OEmbedProvider("jsfiddle","rich",["jsfiddle.net/[^/]+/?"],"http://jsfiddle.net/$1/embedded/result,js,resources,html,css/?",{templateRegex:/.*net\/([^\/]+).*/,embedtag:{tag:"iframe",width:"100%",height:"300"}}),new $.fn.oembed.OEmbedProvider("jsbin","rich",["jsbin.com/.+"],"http://jsbin.com/$1/?",{templateRegex:/.*com\/([^\/]+).*/,embedtag:{tag:"iframe",width:"100%",height:"300"}}),new $.fn.oembed.OEmbedProvider("jotform","rich",["form.jotform.co/form/.+"],"$1?",{templateRegex:/(.*)/,embedtag:{tag:"iframe",width:"100%",height:"507"}}),new $.fn.oembed.OEmbedProvider("reelapp","rich",["reelapp\\.com/.+"],"http://www.reelapp.com/$1/embed",{templateRegex:/.*com\/(\S{6}).*/,embedtag:{tag:"iframe",width:"400",height:"338"}}),new $.fn.oembed.OEmbedProvider("linkedin","rich",["linkedin.com/pub/.+"],"https://www.linkedin.com/cws/member/public_profile?public_profile_url=$1&format=inline&isFramed=true",{templateRegex:/(.*)/,embedtag:{tag:"iframe",width:"368px",height:"auto"}}),new $.fn.oembed.OEmbedProvider("timetoast","rich",["timetoast.com/timelines/[0-9]+"],"http://www.timetoast.com/flash/TimelineViewer.swf?passedTimelines=$1",{templateRegex:/.*timelines\/([0-9]*)/,embedtag:{width:550,height:400},nocache:1}),new $.fn.oembed.OEmbedProvider("pastebin","rich",["pastebin\\.com/[\\S]{8}"],"http://pastebin.com/embed_iframe.php?i=$1",{templateRegex:/.*\/(\S{8}).*/,embedtag:{tag:"iframe",width:"100%",height:"auto"}}),new $.fn.oembed.OEmbedProvider("mixlr","rich",["mixlr.com/.+"],"http://mixlr.com/embed/$1?autoplay=ae",{templateRegex:/.*com\/([^\/]+).*/,embedtag:{tag:"iframe",width:"100%",height:"auto"}}),new $.fn.oembed.OEmbedProvider("pastie","rich",["pastie\\.org/pastes/.+"],null,{yql:{xpath:'//pre[@class="textmate-source"]'}}),new $.fn.oembed.OEmbedProvider("github","rich",["gist.github.com/.+"],"https://github.com/api/oembed"),new $.fn.oembed.OEmbedProvider("github","rich",["github.com/[-.\\w@]+/[-.\\w@]+"],"https://api.github.com/repos/$1/$2?callback=?",{ +templateRegex:/.*\/([^\/]+)\/([^\/]+).*/,templateData:function(e){return!!e.data.html_url&&'

      '+e.data.name+'

      '+e.data.description+'

      Last updated: '+e.data.pushed_at+"

      "}}),new $.fn.oembed.OEmbedProvider("facebook","rich",["facebook.com"],null,{templateRegex:/.*\/([^\/]+)\/([^\/]+).*/,template:function(e){if(!$.fn.oembed.facebokScriptHasBeenAdded){$('
      ').appendTo("body");var t=document.createElement("script");t.type="text/javascript",t.text='(function(d, s, id) {var js, fjs = d.getElementsByTagName(s)[0];if (d.getElementById(id)) return;js = d.createElement(s); js.id = id;js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.0";fjs.parentNode.insertBefore(js, fjs);}(document, "script", "facebook-jssdk"));',document.body.appendChild(t),$.fn.oembed.facebokScriptHasBeenAdded=!0}return'
      '}}),new $.fn.oembed.OEmbedProvider("stackoverflow","rich",["stackoverflow.com/questions/[\\d]+"],"http://api.stackoverflow.com/1.1/questions/$1?body=true&jsonp=?",{templateRegex:/.*questions\/([\d]+).*/,templateData:function(e){if(!e.questions)return!1;var t=e.questions[0],n=$(t.body).text(),r='"}}),new $.fn.oembed.OEmbedProvider("wordpress","rich",["wordpress\\.com/.+","blogs\\.cnn\\.com/.+","techcrunch\\.com/.+","wp\\.me/.+"],"http://public-api.wordpress.com/oembed/1.0/?for=jquery-oembed-all"),new $.fn.oembed.OEmbedProvider("screenr","rich",["screenr.com"],"http://www.screenr.com/embed/$1",{templateRegex:/.*\/([^\/]+).*/,embedtag:{tag:"iframe",width:"650",height:396}}),new $.fn.oembed.OEmbedProvider("gigpans","rich",["gigapan\\.org/[-.\\w@]+/\\d+"],"http://gigapan.org/gigapans/$1/options/nosnapshots/iframe/flash.html",{templateRegex:/.*\/(\d+)\/?.*/,embedtag:{tag:"iframe",width:"100%",height:400}}),new $.fn.oembed.OEmbedProvider("scribd","rich",["scribd\\.com/.+"],"http://www.scribd.com/embeds/$1/content?start_page=1&view_mode=list",{templateRegex:/.*doc\/([^\/]+).*/,embedtag:{tag:"iframe",width:"100%",height:600}}),new $.fn.oembed.OEmbedProvider("kickstarter","rich",["kickstarter\\.com/projects/.+"],"$1/widget/card.html",{templateRegex:/([^\?]+).*/,embedtag:{tag:"iframe",width:"220",height:380}}),new $.fn.oembed.OEmbedProvider("amazon","rich",["amzn.com/B+","amazon.com.*/(B\\S+)($|\\/.*)"],"http://rcm.amazon.com/e/cm?t=_APIKEY_&o=1&p=8&l=as1&asins=$1&ref=qf_br_asin_til&fc1=000000&IS2=1<1=_blank&m=amazon&lc1=0000FF&bc1=000000&bg1=FFFFFF&f=ifr",{apikey:!0,templateRegex:/.*\/(B[0-9A-Z]+)($|\/.*)/,embedtag:{tag:"iframe",width:"120px",height:"240px"}}),new $.fn.oembed.OEmbedProvider("slideshare","rich",["slideshare.net"],"//www.slideshare.net/api/oembed/2",{format:"jsonp"}),new $.fn.oembed.OEmbedProvider("roomsharejp","rich",["roomshare\\.jp/(en/)?post/.*"],"http://roomshare.jp/oembed.json"),new $.fn.oembed.OEmbedProvider("lanyard","rich",["lanyrd.com/\\d+/.+"],null,{yql:{xpath:'(//div[@class="primary"])[1]',from:"htmlstring",datareturn:function(e){return!!e.result&&'
      '+e.result+"
      "}}}),new $.fn.oembed.OEmbedProvider("asciiartfarts","rich",["asciiartfarts.com/\\d+.html"],null,{yql:{xpath:"//pre/font",from:"htmlstring",datareturn:function(e){return!!e.result&&'
      '+e.result+""}}}),new $.fn.oembed.OEmbedProvider("coveritlive","rich",["coveritlive.com/"],null,{templateRegex:/(.*)/,template:''}),new $.fn.oembed.OEmbedProvider("polldaddy","rich",["polldaddy.com/"],null,{templateRegex:/(?:https?:\/\/w?w?w?.?polldaddy.com\/poll\/)([0-9]*)\//,template:'',nocache:1}),new $.fn.oembed.OEmbedProvider("360io","rich",["360\\.io/.+"],"http://360.io/$1",{templateRegex:/.*360\.io\/(\w+).*/,embedtag:{tag:"iframe",width:480,height:360},nocache:1}),new $.fn.oembed.OEmbedProvider("bubbli","rich",["on\\.bubb\\.li/.+"],"http://on.bubb.li/$1",{templateRegex:/.*on\.bubb\.li\/(\w+).*/,embedtag:{tag:"iframe",width:480,height:360},nocache:1}),new $.fn.oembed.OEmbedProvider("cloudup","rich",["cloudup\\.com/.+"],"http://cloudup.com/$1?chromeless",{templateRegex:[/.*cloudup\.com\/(\w+).*/],embedtag:{tag:"iframe",width:480,height:360}}),new $.fn.oembed.OEmbedProvider("codepen","rich",["codepen.io/.+"],"http://codepen.io/$1/embed/$2",{templateRegex:[/.*io\/(\w+)\/pen\/(\w+).*/,/.*io\/(\w+)\/full\/(\w+).*/],embedtag:{tag:"iframe",width:"100%",height:"300"},nocache:1}),new $.fn.oembed.OEmbedProvider("googleviews","rich",["(.*maps\\.google\\.com\\/maps\\?).+(output=svembed).+(cbp=(.*)).*"],"https://maps.google.com/maps?layer=c&panoid=$3&ie=UTF8&source=embed&output=svembed&cbp=$5",{templateRegex:/(.*maps\.google\.com\/maps\?).+(panoid=(\w+)&).*(cbp=(.*)).*/,embedtag:{tag:"iframe",width:480,height:360},nocache:1}),new $.fn.oembed.OEmbedProvider("googlemaps","rich",["google\\.com/maps/place/.+"],"http://maps.google.com/maps?t=m&q=$1&output=embed",{templateRegex:/.*google\.com\/maps\/place\/([\w\+]*)\/.*/,embedtag:{tag:"iframe",width:480,height:360},nocache:1}),new $.fn.oembed.OEmbedProvider("imajize","rich",["embed\\.imajize\\.com/.+"],"http://embed.imajize.com/$1",{templateRegex:/.*embed\.imajize\.com\/(.*)/,embedtag:{tag:"iframe",width:480,height:360},nocache:1}),new $.fn.oembed.OEmbedProvider("mapjam","rich",["mapjam\\.com/.+"],"http://www.mapjam.com/$1",{templateRegex:/.*mapjam\.com\/(.*)/,embedtag:{tag:"iframe",width:480,height:360},nocache:1}),new $.fn.oembed.OEmbedProvider("polar","rich",["polarb\\.com/.+"],"http://assets-polarb-com.a.ssl.fastly.net/api/v4/publishers/unknown/embedded_polls/iframe?poll_id=$1",{templateRegex:/.*polarb\.com\/polls\/(\w+).*/,embedtag:{tag:"iframe",width:480,height:360},nocache:1}),new $.fn.oembed.OEmbedProvider("ponga","rich",["ponga\\.com/.+"],"https://www.ponga.com/embedded?id=$1",{templateRegex:[/.*ponga\.com\/embedded\?id=(\w+).*/,/.*ponga\.com\/(\w+).*/],embedtag:{tag:"iframe",width:480,height:360},nocache:1}),new $.fn.oembed.OEmbedProvider("opengraph","rich",[".*"],null,{yql:{xpath:"//meta|//title|//link",from:"html",datareturn:function(e){if(!e["og:title"]&&e.title&&e.description&&(e["og:title"]=e.title),!e["og:title"]&&!e.title)return!1;var t=$("

      ");if(e["og:video"]){var n=$('');n.attr("type",e["og:video:type"]||"application/x-shockwave-flash").css("max-height",a.maxHeight||"auto").css("max-width",a.maxWidth||"auto"),e["og:video:width"]&&n.attr("width",e["og:video:width"]),e["og:video:height"]&&n.attr("height",e["og:video:height"]),t.append(n)}else if(e["og:image"]){var i=$('');i.css("max-height",a.maxHeight||"auto").css("max-width",a.maxWidth||"auto"),e["og:image:width"]&&i.attr("width",e["og:image:width"]),e["og:image:height"]&&i.attr("height",e["og:image:height"]),t.append(i)}return e["og:title"]&&t.append(""+e["og:title"]+"
      "),e["og:description"]?t.append(e["og:description"]+"
      "):e.description&&t.append(e.description+"
      "),t}}})]}(jQuery),String.prototype.md5=function(){var e=function(e,t){var n=(65535&e)+(65535&t),i=(e>>16)+(t>>16)+(n>>16);return i<<16|65535&n},t=function(e,t){return e<>>32-t},n=function(n,i,r,o,a,s){return e(t(e(e(i,n),e(o,s)),a),r)},i=function(e,t,i,r,o,a,s){return n(t&i|~t&r,e,t,o,a,s)},r=function(e,t,i,r,o,a,s){return n(t&r|i&~r,e,t,o,a,s)},o=function(e,t,i,r,o,a,s){return n(t^i^r,e,t,o,a,s)},a=function(e,t,i,r,o,a,s){return n(i^(t|~r),e,t,o,a,s)},s=function(t){var n,s,l,u,c,d=t.length,h=1732584193,f=-271733879,p=-1732584194,m=271733878;for(c=0;c>2]>>i%4*8+4&15)+t.charAt(e[i>>2]>>i%4*8&15);return n},u=function(e){var t=(e.length+8>>6)+1,n=[],i,r=16*t,o,a=e.length;for(i=0;i>2]|=(255&e.charCodeAt(o))<>2]|=128< + * @copyright Ron Valstar + * @namespace tinysort + */ +!function(e,t){"use strict";function n(){return t}"function"==typeof define&&define.amd?define("tinysort",n):e.tinysort=t}(this,function(){"use strict";function e(e,i){function s(){0===arguments.length?v({}):t(arguments,function(e){v(k(e)?{selector:e}:e)}),f=$.length}function v(e){var t=!!e.selector,i=t&&":"===e.selector[0],r=n(e||{},g);$.push(n({hasSelector:t,hasAttr:!(r.attr===a||""===r.attr),hasData:r.data!==a,hasFilter:i,sortReturnNumber:"asc"===r.order?1:-1},r))}function y(){t(e,function(e,t){D?D!==e.parentNode&&(j=!1):D=e.parentNode;var n=$[0],i=n.hasFilter,r=n.selector,o=!r||i&&e.matchesSelector(r)||r&&e.querySelector(r),a=o?P:N,s={elm:e,pos:t,posn:a.length};I.push(s),a.push(s)}),O=P.slice(0)}function b(e,t,n){for(var i=n(e.toString()),r=n(t.toString()),o=0;i[o]&&r[o];o++)if(i[o]!==r[o]){var a=Number(i[o]),s=Number(r[o]);return a==i[o]&&s==r[o]?a-s:i[o]>r[o]?1:-1}return i.length-r.length}function w(e){for(var t,n,i=[],r=0,o=-1,a=0;t=(n=e.charAt(r++)).charCodeAt(0);){var s=46==t||t>=48&&57>=t;s!==a&&(i[++o]="",a=s),i[o]+=n}return i}function _(e,n){var i=0;for(0!==p&&(p=0);0===i&&f>p;){var a=$[p],s=a.ignoreDashes?d:c;if(t(h,function(e){var t=e.prepare;t&&t(a)}),a.sortFunction)i=a.sortFunction(e,n);else if("rand"==a.order)i=Math.random()<.5?1:-1;else{var l=o,m=S(e,a),g=S(n,a),v=""===m||m===r,y=""===g||g===r;if(m===g)i=0;else if(a.emptyEnd&&(v||y))i=v&&y?0:v?1:-1;else{if(!a.forceStrings){var _=k(m)?m&&m.match(s):o,E=k(g)?g&&g.match(s):o;if(_&&E){var x=m.substr(0,m.length-_[0].length),T=g.substr(0,g.length-E[0].length);x==T&&(l=!o,m=u(_[0]),g=u(E[0]))}}i=m===r||g===r?0:a.natural&&(isNaN(m)||isNaN(g))?b(m,g,w):g>m?-1:m>g?1:0}}t(h,function(e){var t=e.sort;t&&(i=t(a,l,m,g,i))}),i*=a.sortReturnNumber,0===i&&p++}return 0===i&&(i=e.pos>n.pos?1:-1),i}function E(){var e=P.length===I.length;if(j&&e)R?P.forEach(function(e,t){e.elm.style.order=t}):D?D.appendChild(x()):console.warn("parentNode has been removed");else{var t=$[0],n=t.place,i="org"===n,r="start"===n,o="end"===n,a="first"===n,s="last"===n;if(i)P.forEach(T),P.forEach(function(e,t){C(O[t],e.elm)});else if(r||o){var l=O[r?0:O.length-1],u=l&&l.elm.parentNode,c=u&&(r&&u.firstChild||u.lastChild);c&&(c!==l.elm&&(l={elm:c}),T(l),o&&u.appendChild(l.ghost),C(l,x()))}else if(a||s){var d=O[a?0:O.length-1];C(T(d),x())}}}function x(){return P.forEach(function(e){A.appendChild(e.elm)}),A}function T(e){var t=e.elm,n=l.createElement("div");return e.ghost=n,t.parentNode.insertBefore(n,t),e}function C(e,t){var n=e.ghost,i=n.parentNode;i.insertBefore(t,n),i.removeChild(n),delete e.ghost}function S(e,t){var n,i=e.elm;return t.selector&&(t.hasFilter?i.matchesSelector(t.selector)||(i=a):i=i.querySelector(t.selector)),t.hasAttr?n=i.getAttribute(t.attr):t.useVal?n=i.value||i.getAttribute("value"):t.hasData?n=i.getAttribute("data-"+t.data):i&&(n=i.textContent),k(n)&&(t.cases||(n=n.toLowerCase()),n=n.replace(/\s+/g," ")),null===n&&(n=m),n}function k(e){return"string"==typeof e}k(e)&&(e=l.querySelectorAll(e)),0===e.length&&console.warn("No elements to sort");var O,D,A=l.createDocumentFragment(),I=[],P=[],N=[],$=[],j=!0,L=e.length&&e[0].parentNode,M=L.rootNode!==document,R=e.length&&(i===r||i.useFlex!==!1)&&!M&&-1!==getComputedStyle(L,null).display.indexOf("flex");return s.apply(a,Array.prototype.slice.call(arguments,1)),y(),P.sort(_),E(),P.map(function(e){return e.elm})}function t(e,t){for(var n,i=e.length,r=i;r--;)n=i-r-1,t(e[n],n)}function n(e,t,n){for(var i in t)(n||e[i]===r)&&(e[i]=t[i]);return e}function i(e,t,n){h.push({prepare:e,sort:t,sortBy:n})}var r,o=!1,a=null,s=window,l=s.document,u=parseFloat,c=/(-?\d+\.?\d*)\s*$/g,d=/(\d+\.?\d*)\s*$/g,h=[],f=0,p=0,m=String.fromCharCode(4095),g={selector:a,order:"asc",attr:a,data:a,useVal:o,place:"org",returns:o,cases:o,natural:o,forceStrings:o,ignoreDashes:o,sortFunction:a,useFlex:o,emptyEnd:o};return s.Element&&function(e){e.matchesSelector=e.matchesSelector||e.mozMatchesSelector||e.msMatchesSelector||e.oMatchesSelector||e.webkitMatchesSelector||function(e){for(var t=this,n=(t.parentNode||t.document).querySelectorAll(e),i=-1;n[++i]&&n[i]!=t;);return!!n[i]}}(Element.prototype),n(i,{loop:t}),n(e,{plugin:i,defaults:g})}()),function(e,t){"function"==typeof define&&define.amd?define(["jquery","tinysort","moment"],t):t(e.jQuery,e.tinysort,e.moment||void 0)}(this,function($,e,t){function n(e){var n="undefined"!=typeof t;l=e.sign?e.sign:"arrow","default"==e.customSort&&(e.customSort=o),u=e.customSort||u||o,c=e.emptyEnd,$("table.sortable").each(function(){var i=$(this),o=e.applyLast===!0;i.find("span.sign").remove(),i.find("> thead [colspan]").each(function(){for(var e=parseFloat($(this).attr("colspan")),t=1;t')}),i.find("> thead [rowspan]").each(function(){for(var e=$(this),t=parseFloat(e.attr("rowspan")),n=1;n')}}),i.find("> thead tr").each(function(e){$(this).find("th").each(function(t){var n=$(this);n.addClass("nosort").removeClass("up down"),n.attr("data-sortcolumn",t),n.attr("data-sortkey",t+"-"+e)})}),i.find("> thead .rowspan-compensate, .colspan-compensate").remove(),i.find("th").each(function(){var e=$(this);if(void 0!==e.attr("data-dateformat")&&n){var r=parseFloat(e.attr("data-sortcolumn"));i.find("td:nth-child("+(r+1)+")").each(function(){var n=$(this);n.attr("data-value",t(n.text(),e.attr("data-dateformat")).format("YYYY/MM/DD/HH/mm/ss"))})}else if(void 0!==e.attr("data-valueprovider")){var r=parseFloat(e.attr("data-sortcolumn"));i.find("td:nth-child("+(r+1)+")").each(function(){var t=$(this);t.attr("data-value",new RegExp(e.attr("data-valueprovider")).exec(t.text())[0])})}}),i.find("td").each(function(){var e=$(this);void 0!==e.attr("data-dateformat")&&n?e.attr("data-value",t(e.text(),e.attr("data-dateformat")).format("YYYY/MM/DD/HH/mm/ss")):void 0!==e.attr("data-valueprovider")?e.attr("data-value",new RegExp(e.attr("data-valueprovider")).exec(e.text())[0]):void 0===e.attr("data-value")&&e.attr("data-value",e.text())});var s=r(i),l=s.bsSort;i.find('> thead th[data-defaultsort!="disabled"]').each(function(e){var t=$(this),n=t.closest("table.sortable");t.data("sortTable",n);var i=t.attr("data-sortkey"),r=o?s.lastSort:-1;l[i]=o?l[i]:t.attr("data-defaultsort"),void 0!==l[i]&&o===(i===r)&&(l[i]="asc"===l[i]?"desc":"asc",a(t,n))})})}function i(e){var t=$(e),n=t.data("sortTable")||t.closest("table.sortable");a(t,n)}function r(e){var t=e.data("bootstrap-sortable-context");return void 0===t&&(t={bsSort:[],lastSort:void 0},e.find('> thead th[data-defaultsort!="disabled"]').each(function(e){var n=$(this),i=n.attr("data-sortkey");t.bsSort[i]=n.attr("data-defaultsort"),void 0!==t.bsSort[i]&&(t.lastSort=i)}),e.data("bootstrap-sortable-context",t)),t}function o(t,n){e(t,n)}function a(e,t){t.trigger("before-sort");var n=parseFloat(e.attr("data-sortcolumn")),i=r(t),o=i.bsSort,s=e.attr("colspan");if(s){var d=parseFloat(e.data("mainsort"))||0,h=parseFloat(e.data("sortkey").split("-").pop());if(t.find("> thead tr").length-1>h)return void a(t.find('[data-sortkey="'+(n+d)+"-"+(h+1)+'"]'),t);n+=d}var f=e.attr("data-defaultsign")||l;if(t.find("> thead th").each(function(){$(this).removeClass("up").removeClass("down").addClass("nosort")}),$.browser.mozilla){var p=t.find("> thead div.mozilla");void 0!==p&&(p.find(".sign").remove(),p.parent().html(p.html())),e.wrapInner('

      '),e.children().eq(0).append('')}else t.find("> thead span.sign").remove(),e.append('');var m=e.attr("data-sortkey"),g="desc"!==e.attr("data-firstsort")?"desc":"asc",v=o[m]||g;i.lastSort!==m&&void 0!==o[m]||(v="asc"===v?"desc":"asc"),o[m]=v,i.lastSort=m,"desc"===o[m]?(e.find("span.sign").addClass("up"),e.addClass("up").removeClass("down nosort")):e.addClass("down").removeClass("up nosort");var y=t.children("tbody").children("tr"),b=[];$(y.filter('[data-disablesort="true"]').get().reverse()).each(function(e,t){var n=$(t);b.push({index:y.index(n),row:n}),n.remove()});var w=y.not('[data-disablesort="true"]');if(0!=w.length){var _="asc"===o[m]&&c;u(w,{emptyEnd:_,selector:"td:nth-child("+(n+1)+")",order:o[m],data:"value"})}$(b.reverse()).each(function(e,n){0===n.index?t.children("tbody").prepend(n.row):t.children("tbody").children("tr").eq(n.index-1).after(n.row)}),t.find("> tbody > tr > td.sorted,> thead th.sorted").removeClass("sorted"),w.find("td:eq("+n+")").addClass("sorted"),e.addClass("sorted"),t.trigger("sorted")}var s=$(document),l,u,c;if($.bootstrapSortable=function(e){void 0==e?n({}):e.constructor===Boolean?n({applyLast:e}):void 0!==e.sortingHeader?i(e.sortingHeader):n(e)},s.on("click",'table.sortable>thead th[data-defaultsort!="disabled"]',function(e){i(this)}),!$.browser){$.browser={chrome:!1,mozilla:!1,opera:!1,msie:!1,safari:!1};var d=navigator.userAgent;$.each($.browser,function(e){$.browser[e]=!!new RegExp(e,"i").test(d),$.browser.mozilla&&"mozilla"===e&&($.browser.mozilla=!!new RegExp("firefox","i").test(d)),$.browser.chrome&&"safari"===e&&($.browser.safari=!1)})}$($.bootstrapSortable)}),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):e.moment=t()}(this,function(){"use strict";function e(){return gi.apply(null,arguments)}function t(e){gi=e}function n(e){return e instanceof Array||"[object Array]"===Object.prototype.toString.call(e)}function i(e){return null!=e&&"[object Object]"===Object.prototype.toString.call(e)}function r(e){var t;for(t in e)return!1;return!0}function o(e){return"number"==typeof e||"[object Number]"===Object.prototype.toString.call(e)}function a(e){return e instanceof Date||"[object Date]"===Object.prototype.toString.call(e)}function s(e,t){var n=[],i;for(i=0;i0)for(n in bi)i=bi[n],r=t[i],m(r)||(e[i]=r);return e}function v(t){g(this,t),this._d=new Date(null!=t._d?t._d.getTime():NaN),this.isValid()||(this._d=new Date(NaN)),wi===!1&&(wi=!0,e.updateOffset(this),wi=!1)}function y(e){return e instanceof v||null!=e&&null!=e._isAMomentObject}function b(e){return e<0?Math.ceil(e)||0:Math.floor(e)}function w(e){var t=+e,n=0;return 0!==t&&isFinite(t)&&(n=b(t)),n}function _(e,t,n){var i=Math.min(e.length,t.length),r=Math.abs(e.length-t.length),o=0,a;for(a=0;a0?"future":"past"];return C(n)?n(t):n.replace(/%s/i,t)}function L(e,t){var n=e.toLowerCase();Ai[n]=Ai[n+"s"]=Ai[t]=e}function M(e){return"string"==typeof e?Ai[e]||Ai[e.toLowerCase()]:void 0}function R(e){var t={},n,i;for(i in e)l(e,i)&&(n=M(i),n&&(t[n]=e[i]));return t}function H(e,t){Ii[e]=t}function W(e){var t=[];for(var n in e)t.push({unit:n,priority:Ii[n]});return t.sort(function(e,t){return e.priority-t.priority}),t}function F(t,n){return function(i){return null!=i?(U(this,t,i),e.updateOffset(this,n),this):Y(this,t)}}function Y(e,t){return e.isValid()?e._d["get"+(e._isUTC?"UTC":"")+t]():NaN}function U(e,t,n){e.isValid()&&e._d["set"+(e._isUTC?"UTC":"")+t](n)}function q(e){return e=M(e),C(this[e])?this[e]():this}function V(e,t){if("object"==typeof e){e=R(e);for(var n=W(e),i=0;i=0;return(o?n?"+":"":"-")+Math.pow(10,Math.max(0,r)).toString().substr(1)+i}function B(e,t,n,i){var r=i;"string"==typeof i&&(r=function(){return this[i]()}),e&&(Li[e]=r),t&&(Li[t[0]]=function(){return z(r.apply(this,arguments),t[1],t[2])}),n&&(Li[n]=function(){return this.localeData().ordinal(r.apply(this,arguments),e)})}function G(e){return e.match(/\[[\s\S]/)?e.replace(/^\[|\]$/g,""):e.replace(/\\/g,"")}function Q(e){var t=e.match(Pi),n,i;for(n=0,i=t.length;n=0&&Ni.test(e);)e=e.replace(Ni,n),Ni.lastIndex=0,i-=1;return e}function Z(e,t,n){Ji[e]=C(t)?t:function(e,i){return e&&n?n:t}}function J(e,t){return l(Ji,e)?Ji[e](t._strict,t._locale):new RegExp(ee(e))}function ee(e){return te(e.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(e,t,n,i,r){return t||n||i||r}))}function te(e){return e.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function ne(e,t){var n,i=t;for("string"==typeof e&&(e=[e]),o(t)&&(i=function(e,n){n[t]=w(e)}),n=0;n=0&&isFinite(s.getFullYear())&&s.setFullYear(e),s}function we(e){var t=new Date(Date.UTC.apply(null,arguments));return e<100&&e>=0&&isFinite(t.getUTCFullYear())&&t.setUTCFullYear(e),t}function _e(e,t,n){var i=7+t-n,r=(7+we(e,0,i).getUTCDay()-t)%7;return-r+i-1}function Ee(e,t,n,i,r){var o=(7+n-i)%7,a=_e(e,i,r),s=1+7*(t-1)+o+a,l,u;return s<=0?(l=e-1,u=ge(l)+s):s>ge(e)?(l=e+1,u=s-ge(e)):(l=e,u=s),{year:l,dayOfYear:u}}function xe(e,t,n){var i=_e(e.year(),t,n),r=Math.floor((e.dayOfYear()-i-1)/7)+1,o,a;return r<1?(a=e.year()-1,o=r+Te(a,t,n)):r>Te(e.year(),t,n)?(o=r-Te(e.year(),t,n),a=e.year()+1):(a=e.year(),o=r),{week:o,year:a}}function Te(e,t,n){var i=_e(e,t,n),r=_e(e+1,t,n);return(ge(e)-i+r)/7}function Ce(e){return xe(e,this._week.dow,this._week.doy).week}function Se(){return this._week.dow}function ke(){return this._week.doy}function Oe(e){var t=this.localeData().week(this);return null==e?t:this.add(7*(e-t),"d")}function De(e){var t=xe(this,1,4).week;return null==e?t:this.add(7*(e-t),"d")}function Ae(e,t){return"string"!=typeof e?e:isNaN(e)?(e=t.weekdaysParse(e),"number"==typeof e?e:null):parseInt(e,10)}function Ie(e,t){return"string"==typeof e?t.weekdaysParse(e)%7||7:isNaN(e)?null:e}function Pe(e,t){return e?n(this._weekdays)?this._weekdays[e.day()]:this._weekdays[this._weekdays.isFormat.test(t)?"format":"standalone"][e.day()]:this._weekdays}function Ne(e){return e?this._weekdaysShort[e.day()]:this._weekdaysShort}function je(e){return e?this._weekdaysMin[e.day()]:this._weekdaysMin}function Le(e,t,n){var i,r,o,a=e.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],i=0;i<7;++i)o=c([2e3,1]).day(i),this._minWeekdaysParse[i]=this.weekdaysMin(o,"").toLocaleLowerCase(),this._shortWeekdaysParse[i]=this.weekdaysShort(o,"").toLocaleLowerCase(),this._weekdaysParse[i]=this.weekdays(o,"").toLocaleLowerCase();return n?"dddd"===t?(r=dr.call(this._weekdaysParse,a),r!==-1?r:null):"ddd"===t?(r=dr.call(this._shortWeekdaysParse,a),r!==-1?r:null):(r=dr.call(this._minWeekdaysParse,a),r!==-1?r:null):"dddd"===t?(r=dr.call(this._weekdaysParse,a),r!==-1?r:(r=dr.call(this._shortWeekdaysParse,a),r!==-1?r:(r=dr.call(this._minWeekdaysParse,a),r!==-1?r:null))):"ddd"===t?(r=dr.call(this._shortWeekdaysParse,a),r!==-1?r:(r=dr.call(this._weekdaysParse,a),r!==-1?r:(r=dr.call(this._minWeekdaysParse,a),r!==-1?r:null))):(r=dr.call(this._minWeekdaysParse,a),r!==-1?r:(r=dr.call(this._weekdaysParse,a),r!==-1?r:(r=dr.call(this._shortWeekdaysParse,a),r!==-1?r:null)))}function Me(e,t,n){var i,r,o;if(this._weekdaysParseExact)return Le.call(this,e,t,n);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),i=0;i<7;i++){if(r=c([2e3,1]).day(i),n&&!this._fullWeekdaysParse[i]&&(this._fullWeekdaysParse[i]=new RegExp("^"+this.weekdays(r,"").replace(".",".?")+"$","i"),this._shortWeekdaysParse[i]=new RegExp("^"+this.weekdaysShort(r,"").replace(".",".?")+"$","i"),this._minWeekdaysParse[i]=new RegExp("^"+this.weekdaysMin(r,"").replace(".",".?")+"$","i")),this._weekdaysParse[i]||(o="^"+this.weekdays(r,"")+"|^"+this.weekdaysShort(r,"")+"|^"+this.weekdaysMin(r,""),this._weekdaysParse[i]=new RegExp(o.replace(".",""),"i")),n&&"dddd"===t&&this._fullWeekdaysParse[i].test(e))return i;if(n&&"ddd"===t&&this._shortWeekdaysParse[i].test(e))return i;if(n&&"dd"===t&&this._minWeekdaysParse[i].test(e))return i;if(!n&&this._weekdaysParse[i].test(e))return i}}function Re(e){if(!this.isValid())return null!=e?this:NaN;var t=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=e?(e=Ae(e,this.localeData()),this.add(e-t,"d")):t}function He(e){if(!this.isValid())return null!=e?this:NaN;var t=(this.day()+7-this.localeData()._week.dow)%7;return null==e?t:this.add(e-t,"d")}function We(e){if(!this.isValid())return null!=e?this:NaN;if(null!=e){var t=Ie(e,this.localeData());return this.day(this.day()%7?t:t-7)}return this.day()||7}function Fe(e){return this._weekdaysParseExact?(l(this,"_weekdaysRegex")||qe.call(this),e?this._weekdaysStrictRegex:this._weekdaysRegex):(l(this,"_weekdaysRegex")||(this._weekdaysRegex=Er),this._weekdaysStrictRegex&&e?this._weekdaysStrictRegex:this._weekdaysRegex)}function Ye(e){return this._weekdaysParseExact?(l(this,"_weekdaysRegex")||qe.call(this),e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(l(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=xr),this._weekdaysShortStrictRegex&&e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)}function Ue(e){return this._weekdaysParseExact?(l(this,"_weekdaysRegex")||qe.call(this),e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(l(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=Tr),this._weekdaysMinStrictRegex&&e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)}function qe(){function e(e,t){return t.length-e.length}var t=[],n=[],i=[],r=[],o,a,s,l,u;for(o=0;o<7;o++)a=c([2e3,1]).day(o),s=this.weekdaysMin(a,""),l=this.weekdaysShort(a,""),u=this.weekdays(a,""),t.push(s),n.push(l),i.push(u),r.push(s),r.push(l),r.push(u);for(t.sort(e),n.sort(e),i.sort(e),r.sort(e),o=0;o<7;o++)n[o]=te(n[o]),i[o]=te(i[o]),r[o]=te(r[o]);this._weekdaysRegex=new RegExp("^("+r.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+i.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+n.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+t.join("|")+")","i")}function $e(){return this.hours()%12||12}function Ve(){return this.hours()||24}function ze(e,t){B(e,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),t)})}function Be(e,t){return t._meridiemParse}function Ge(e){return"p"===(e+"").toLowerCase().charAt(0)}function Qe(e,t,n){return e>11?n?"pm":"PM":n?"am":"AM"}function Ke(e){return e?e.toLowerCase().replace("_","-"):e}function Xe(e){for(var t=0,n,i,r,o;t0;){if(r=Ze(o.slice(0,n).join("-")))return r;if(i&&i.length>=n&&_(o,i,!0)>=n-1)break;n--}t++}return null}function Ze(e){var t=null;if(!Or[e]&&"undefined"!=typeof module&&module&&module.exports)try{t=Ar._abbr,require("./locale/"+e),Je(t)}catch(e){}return Or[e]}function Je(e,t){var n;return e&&(n=m(t)?nt(e):et(e,t),n&&(Ar=n)),Ar._abbr}function et(e,t){if(null!==t){var n=kr;if(t.abbr=e,null!=Or[e])T("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),n=Or[e]._config;else if(null!=t.parentLocale){if(null==Or[t.parentLocale])return Dr[t.parentLocale]||(Dr[t.parentLocale]=[]),Dr[t.parentLocale].push({name:e,config:t}),null;n=Or[t.parentLocale]._config}return Or[e]=new O(k(n,t)),Dr[e]&&Dr[e].forEach(function(e){et(e.name,e.config)}),Je(e),Or[e]}return delete Or[e],null}function tt(e,t){if(null!=t){var n,i=kr;null!=Or[e]&&(i=Or[e]._config),t=k(i,t),n=new O(t),n.parentLocale=Or[e],Or[e]=n,Je(e)}else null!=Or[e]&&(null!=Or[e].parentLocale?Or[e]=Or[e].parentLocale:null!=Or[e]&&delete Or[e]);return Or[e]}function nt(e){var t;if(e&&e._locale&&e._locale._abbr&&(e=e._locale._abbr),!e)return Ar;if(!n(e)){if(t=Ze(e))return t;e=[e]}return Xe(e)}function it(){return xi(Or)}function rt(e){var t,n=e._a;return n&&h(e).overflow===-2&&(t=n[nr]<0||n[nr]>11?nr:n[ir]<1||n[ir]>oe(n[tr],n[nr])?ir:n[rr]<0||n[rr]>24||24===n[rr]&&(0!==n[or]||0!==n[ar]||0!==n[sr])?rr:n[or]<0||n[or]>59?or:n[ar]<0||n[ar]>59?ar:n[sr]<0||n[sr]>999?sr:-1,h(e)._overflowDayOfYear&&(tir)&&(t=ir),h(e)._overflowWeeks&&t===-1&&(t=lr),h(e)._overflowWeekday&&t===-1&&(t=ur),h(e).overflow=t),e}function ot(e){var t,n,i=e._i,r=Ir.exec(i)||Pr.exec(i),o,a,s,l;if(r){for(h(e).iso=!0,t=0,n=jr.length;tge(o)&&(h(e)._overflowDayOfYear=!0),n=we(o,0,e._dayOfYear),e._a[nr]=n.getUTCMonth(),e._a[ir]=n.getUTCDate()),t=0;t<3&&null==e._a[t];++t)e._a[t]=i[t]=r[t];for(;t<7;t++)e._a[t]=i[t]=null==e._a[t]?2===t?1:0:e._a[t];24===e._a[rr]&&0===e._a[or]&&0===e._a[ar]&&0===e._a[sr]&&(e._nextDay=!0,e._a[rr]=0),e._d=(e._useUTC?we:be).apply(null,i),null!=e._tzm&&e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),e._nextDay&&(e._a[rr]=24)}}function ct(e){var t,n,i,r,o,a,s,l;if(t=e._w,null!=t.GG||null!=t.W||null!=t.E)o=1,a=4,n=st(t.GG,e._a[tr],xe(bt(),1,4).year),i=st(t.W,1),r=st(t.E,1),(r<1||r>7)&&(l=!0);else{o=e._locale._week.dow,a=e._locale._week.doy;var u=xe(bt(),o,a);n=st(t.gg,e._a[tr],u.year),i=st(t.w,u.week),null!=t.d?(r=t.d,(r<0||r>6)&&(l=!0)):null!=t.e?(r=t.e+o,(t.e<0||t.e>6)&&(l=!0)):r=o}i<1||i>Te(n,o,a)?h(e)._overflowWeeks=!0:null!=l?h(e)._overflowWeekday=!0:(s=Ee(n,i,r,o,a),e._a[tr]=s.year,e._dayOfYear=s.dayOfYear)}function dt(t){if(t._f===e.ISO_8601)return void ot(t);t._a=[],h(t).empty=!0;var n=""+t._i,i,r,o,a,s,l=n.length,u=0;for(o=X(t._f,t._locale).match(Pi)||[],i=0;i0&&h(t).unusedInput.push(s),n=n.slice(n.indexOf(r)+r.length),u+=r.length),Li[a]?(r?h(t).empty=!1:h(t).unusedTokens.push(a),re(a,r,t)):t._strict&&!r&&h(t).unusedTokens.push(a);h(t).charsLeftOver=l-u,n.length>0&&h(t).unusedInput.push(n),t._a[rr]<=12&&h(t).bigHour===!0&&t._a[rr]>0&&(h(t).bigHour=void 0),h(t).parsedDateParts=t._a.slice(0),h(t).meridiem=t._meridiem,t._a[rr]=ht(t._locale,t._a[rr],t._meridiem),ut(t),rt(t)}function ht(e,t,n){var i;return null==n?t:null!=e.meridiemHour?e.meridiemHour(t,n):null!=e.isPM?(i=e.isPM(n),i&&t<12&&(t+=12),i||12!==t||(t=0),t):t}function ft(e){var t,n,i,r,o;if(0===e._f.length)return h(e).invalidFormat=!0,void(e._d=new Date(NaN));for(r=0;rthis.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function Rt(){if(!m(this._isDSTShifted))return this._isDSTShifted;var e={};if(g(e,this),e=gt(e),e._a){var t=e._isUTC?c(e._a):bt(e._a);this._isDSTShifted=this.isValid()&&_(e._a,t.toArray())>0}else this._isDSTShifted=!1;return this._isDSTShifted}function Ht(){return!!this.isValid()&&!this._isUTC}function Wt(){return!!this.isValid()&&this._isUTC}function Ft(){return!!this.isValid()&&(this._isUTC&&0===this._offset)}function Yt(e,t){var n=e,i=null,r,a,s;return Tt(e)?n={ms:e._milliseconds,d:e._days,M:e._months}:o(e)?(n={},t?n[t]=e:n.milliseconds=e):(i=Yr.exec(e))?(r="-"===i[1]?-1:1,n={y:0,d:w(i[ir])*r,h:w(i[rr])*r,m:w(i[or])*r,s:w(i[ar])*r,ms:w(Ct(1e3*i[sr]))*r}):(i=Ur.exec(e))?(r="-"===i[1]?-1:1,n={y:Ut(i[2],r),M:Ut(i[3],r),w:Ut(i[4],r),d:Ut(i[5],r),h:Ut(i[6],r),m:Ut(i[7],r),s:Ut(i[8],r)}):null==n?n={}:"object"==typeof n&&("from"in n||"to"in n)&&(s=$t(bt(n.from),bt(n.to)),n={},n.ms=s.milliseconds,n.M=s.months),a=new xt(n),Tt(e)&&l(e,"_locale")&&(a._locale=e._locale),a}function Ut(e,t){var n=e&&parseFloat(e.replace(",","."));return(isNaN(n)?0:n)*t}function qt(e,t){var n={milliseconds:0,months:0};return n.months=t.month()-e.month()+12*(t.year()-e.year()),e.clone().add(n.months,"M").isAfter(t)&&--n.months,n.milliseconds=+t-+e.clone().add(n.months,"M"),n}function $t(e,t){var n;return e.isValid()&&t.isValid()?(t=Ot(t,e),e.isBefore(t)?n=qt(e,t):(n=qt(t,e),n.milliseconds=-n.milliseconds,n.months=-n.months),n):{milliseconds:0,months:0}}function Vt(e,t){return function(n,i){var r,o;return null===i||isNaN(+i)||(T(t,"moment()."+t+"(period, number) is deprecated. Please use moment()."+t+"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."),o=n,n=i,i=o),n="string"==typeof n?+n:n,r=Yt(n,i),zt(this,r,e),this}}function zt(t,n,i,r){var o=n._milliseconds,a=Ct(n._days),s=Ct(n._months);t.isValid()&&(r=null==r||r,o&&t._d.setTime(t._d.valueOf()+o*i),a&&U(t,"Date",Y(t,"Date")+a*i),s&&ce(t,Y(t,"Month")+s*i),r&&e.updateOffset(t,a||s))}function Bt(e,t){var n=e.diff(t,"days",!0);return n<-6?"sameElse":n<-1?"lastWeek":n<0?"lastDay":n<1?"sameDay":n<2?"nextDay":n<7?"nextWeek":"sameElse"}function Gt(t,n){var i=t||bt(),r=Ot(i,this).startOf("day"),o=e.calendarFormat(this,r)||"sameElse",a=n&&(C(n[o])?n[o].call(this,i):n[o]);return this.format(a||this.localeData().calendar(o,this,bt(i)))}function Qt(){return new v(this)}function Kt(e,t){var n=y(e)?e:bt(e);return!(!this.isValid()||!n.isValid())&&(t=M(m(t)?"millisecond":t),"millisecond"===t?this.valueOf()>n.valueOf():n.valueOf()o&&(t=o),Nn.call(this,e,t,n,i,r))}function Nn(e,t,n,i,r){var o=Ee(e,t,n,i,r),a=we(o.year,0,o.dayOfYear);return this.year(a.getUTCFullYear()),this.month(a.getUTCMonth()),this.date(a.getUTCDate()),this}function jn(e){return null==e?Math.ceil((this.month()+1)/3):this.month(3*(e-1)+this.month()%3)}function Ln(e){var t=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return null==e?t:this.add(e-t,"d")}function Mn(e,t){t[sr]=w(1e3*("0."+e))}function Rn(){return this._isUTC?"UTC":""}function Hn(){return this._isUTC?"Coordinated Universal Time":""}function Wn(e){return bt(1e3*e)}function Fn(){return bt.apply(null,arguments).parseZone()}function Yn(e){return e}function Un(e,t,n,i){var r=nt(),o=c().set(i,t);return r[n](o,e)}function qn(e,t,n){if(o(e)&&(t=e,e=void 0),e=e||"",null!=t)return Un(e,t,n,"month");var i,r=[];for(i=0;i<12;i++)r[i]=Un(e,i,n,"month");return r}function $n(e,t,n,i){"boolean"==typeof e?(o(t)&&(n=t,t=void 0),t=t||""):(t=e,n=t,e=!1,o(t)&&(n=t,t=void 0),t=t||"");var r=nt(),a=e?r._week.dow:0;if(null!=n)return Un(t,(n+a)%7,i,"day");var s,l=[];for(s=0;s<7;s++)l[s]=Un(t,(s+a)%7,i,"day");return l}function Vn(e,t){return qn(e,t,"months")}function zn(e,t){return qn(e,t,"monthsShort")}function Bn(e,t,n){return $n(e,t,n,"weekdays")}function Gn(e,t,n){return $n(e,t,n,"weekdaysShort")}function Qn(e,t,n){return $n(e,t,n,"weekdaysMin")}function Kn(){var e=this._data;return this._milliseconds=Jr(this._milliseconds),this._days=Jr(this._days),this._months=Jr(this._months),e.milliseconds=Jr(e.milliseconds),e.seconds=Jr(e.seconds),e.minutes=Jr(e.minutes),e.hours=Jr(e.hours),e.months=Jr(e.months),e.years=Jr(e.years),this}function Xn(e,t,n,i){var r=Yt(t,n);return e._milliseconds+=i*r._milliseconds,e._days+=i*r._days,e._months+=i*r._months,e._bubble()}function Zn(e,t){return Xn(this,e,t,1)}function Jn(e,t){return Xn(this,e,t,-1)}function ei(e){return e<0?Math.floor(e):Math.ceil(e)}function ti(){var e=this._milliseconds,t=this._days,n=this._months,i=this._data,r,o,a,s,l;return e>=0&&t>=0&&n>=0||e<=0&&t<=0&&n<=0||(e+=864e5*ei(ii(n)+t),t=0,n=0),i.milliseconds=e%1e3,r=b(e/1e3),i.seconds=r%60,o=b(r/60),i.minutes=o%60,a=b(o/60),i.hours=a%24,t+=b(a/24),l=b(ni(t)),n+=l,t-=ei(ii(l)),s=b(n/12),n%=12,i.days=t,i.months=n,i.years=s,this}function ni(e){return 4800*e/146097}function ii(e){return 146097*e/4800}function ri(e){var t,n,i=this._milliseconds;if(e=M(e),"month"===e||"year"===e)return t=this._days+i/864e5,n=this._months+ni(t),"month"===e?n:n/12;switch(t=this._days+Math.round(ii(this._months)),e){case"week":return t/7+i/6048e5;case"day":return t+i/864e5;case"hour":return 24*t+i/36e5;case"minute":return 1440*t+i/6e4;case"second":return 86400*t+i/1e3;case"millisecond":return Math.floor(864e5*t)+i;default:throw new Error("Unknown unit "+e)}}function oi(){return this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*w(this._months/12)}function ai(e){return function(){return this.as(e)}}function si(e){return e=M(e),this[e+"s"]()}function li(e){return function(){return this._data[e]}}function ui(){return b(this.days()/7)}function ci(e,t,n,i,r){return r.relativeTime(t||1,!!n,e,i)}function di(e,t,n){var i=Yt(e).abs(),r=go(i.as("s")),o=go(i.as("m")),a=go(i.as("h")),s=go(i.as("d")),l=go(i.as("M")),u=go(i.as("y")),c=r0,c[4]=n,ci.apply(null,c)}function hi(e){return void 0===e?go:"function"==typeof e&&(go=e,!0)}function fi(e,t){return void 0!==vo[e]&&(void 0===t?vo[e]:(vo[e]=t,!0))}function pi(e){var t=this.localeData(),n=di(this,!e,t);return e&&(n=t.pastFuture(+this,n)),t.postformat(n)}function mi(){var e=yo(this._milliseconds)/1e3,t=yo(this._days),n=yo(this._months),i,r,o;i=b(e/60),r=b(i/60),e%=60,i%=60,o=b(n/12),n%=12;var a=o,s=n,l=t,u=r,c=i,d=e,h=this.asSeconds();return h?(h<0?"-":"")+"P"+(a?a+"Y":"")+(s?s+"M":"")+(l?l+"D":"")+(u||c||d?"T":"")+(u?u+"H":"")+(c?c+"M":"")+(d?d+"S":""):"P0D"}var gi,vi;vi=Array.prototype.some?Array.prototype.some:function(e){for(var t=Object(this),n=t.length>>>0,i=0;i68?1900:2e3)};var vr=F("FullYear",!0);B("w",["ww",2],"wo","week"),B("W",["WW",2],"Wo","isoWeek"),L("week","w"),L("isoWeek","W"),H("week",5),H("isoWeek",5),Z("w",Yi),Z("ww",Yi,Ri),Z("W",Yi),Z("WW",Yi,Ri),ie(["w","ww","W","WW"],function(e,t,n,i){t[i.substr(0,1)]=w(e)});var yr={dow:0,doy:6};B("d",0,"do","day"),B("dd",0,0,function(e){return this.localeData().weekdaysMin(this,e)}),B("ddd",0,0,function(e){return this.localeData().weekdaysShort(this,e)}),B("dddd",0,0,function(e){return this.localeData().weekdays(this,e)}),B("e",0,0,"weekday"),B("E",0,0,"isoWeekday"),L("day","d"),L("weekday","e"),L("isoWeekday","E"),H("day",11),H("weekday",11),H("isoWeekday",11),Z("d",Yi),Z("e",Yi),Z("E",Yi),Z("dd",function(e,t){return t.weekdaysMinRegex(e)}),Z("ddd",function(e,t){return t.weekdaysShortRegex(e)}),Z("dddd",function(e,t){return t.weekdaysRegex(e)}),ie(["dd","ddd","dddd"],function(e,t,n,i){var r=n._locale.weekdaysParse(e,i,n._strict);null!=r?t.d=r:h(n).invalidWeekday=e}),ie(["d","e","E"],function(e,t,n,i){t[i]=w(e)});var br="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),wr="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),_r="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),Er=Zi,xr=Zi,Tr=Zi;B("H",["HH",2],0,"hour"),B("h",["hh",2],0,$e),B("k",["kk",2],0,Ve),B("hmm",0,0,function(){return""+$e.apply(this)+z(this.minutes(),2)}),B("hmmss",0,0,function(){return""+$e.apply(this)+z(this.minutes(),2)+z(this.seconds(),2)}),B("Hmm",0,0,function(){return""+this.hours()+z(this.minutes(),2)}),B("Hmmss",0,0,function(){return""+this.hours()+z(this.minutes(),2)+z(this.seconds(),2)}),ze("a",!0),ze("A",!1),L("hour","h"),H("hour",13),Z("a",Be),Z("A",Be),Z("H",Yi),Z("h",Yi),Z("HH",Yi,Ri),Z("hh",Yi,Ri),Z("hmm",Ui),Z("hmmss",qi),Z("Hmm",Ui),Z("Hmmss",qi),ne(["H","HH"],rr),ne(["a","A"],function(e,t,n){n._isPm=n._locale.isPM(e),n._meridiem=e}),ne(["h","hh"],function(e,t,n){t[rr]=w(e),h(n).bigHour=!0}),ne("hmm",function(e,t,n){var i=e.length-2;t[rr]=w(e.substr(0,i)),t[or]=w(e.substr(i)),h(n).bigHour=!0}),ne("hmmss",function(e,t,n){var i=e.length-4,r=e.length-2;t[rr]=w(e.substr(0,i)),t[or]=w(e.substr(i,2)),t[ar]=w(e.substr(r)),h(n).bigHour=!0}),ne("Hmm",function(e,t,n){var i=e.length-2;t[rr]=w(e.substr(0,i)),t[or]=w(e.substr(i))}),ne("Hmmss",function(e,t,n){var i=e.length-4,r=e.length-2;t[rr]=w(e.substr(0,i)),t[or]=w(e.substr(i,2)),t[ar]=w(e.substr(r))});var Cr=/[ap]\.?m?\.?/i,Sr=F("Hours",!0),kr={calendar:Ti,longDateFormat:Ci,invalidDate:Si,ordinal:ki,ordinalParse:Oi,relativeTime:Di,months:fr,monthsShort:pr,week:yr,weekdays:br,weekdaysMin:_r,weekdaysShort:wr,meridiemParse:Cr},Or={},Dr={},Ar,Ir=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,Pr=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,Nr=/Z|[+-]\d\d(?::?\d\d)?/,jr=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/]],Lr=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],Mr=/^\/?Date\((\-?\d+)/i;e.createFromInputFallback=x("value provided is not in a recognized ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non ISO date formats are discouraged and will be removed in an upcoming major release. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.",function(e){e._d=new Date(e._i+(e._useUTC?" UTC":""))}),e.ISO_8601=function(){};var Rr=x("moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/",function(){var e=bt.apply(null,arguments);return this.isValid()&&e.isValid()?ethis?this:e:p()}),Wr=function(){return Date.now?Date.now():+new Date};St("Z",":"),St("ZZ",""),Z("Z",Ki),Z("ZZ",Ki),ne(["Z","ZZ"],function(e,t,n){n._useUTC=!0,n._tzm=kt(Ki,e)});var Fr=/([\+\-]|\d\d)/gi;e.updateOffset=function(){};var Yr=/^(\-)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)(\.\d*)?)?$/,Ur=/^(-)?P(?:(-?[0-9,.]*)Y)?(?:(-?[0-9,.]*)M)?(?:(-?[0-9,.]*)W)?(?:(-?[0-9,.]*)D)?(?:T(?:(-?[0-9,.]*)H)?(?:(-?[0-9,.]*)M)?(?:(-?[0-9,.]*)S)?)?$/;Yt.fn=xt.prototype;var qr=Vt(1,"add"),$r=Vt(-1,"subtract");e.defaultFormat="YYYY-MM-DDTHH:mm:ssZ",e.defaultFormatUtc="YYYY-MM-DDTHH:mm:ss[Z]";var Vr=x("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(e){return void 0===e?this.localeData():this.locale(e)});B(0,["gg",2],0,function(){return this.weekYear()%100}),B(0,["GG",2],0,function(){return this.isoWeekYear()%100}),kn("gggg","weekYear"),kn("ggggg","weekYear"),kn("GGGG","isoWeekYear"),kn("GGGGG","isoWeekYear"),L("weekYear","gg"),L("isoWeekYear","GG"),H("weekYear",1),H("isoWeekYear",1),Z("G",Gi),Z("g",Gi),Z("GG",Yi,Ri),Z("gg",Yi,Ri),Z("GGGG",Vi,Wi),Z("gggg",Vi,Wi),Z("GGGGG",zi,Fi),Z("ggggg",zi,Fi),ie(["gggg","ggggg","GGGG","GGGGG"],function(e,t,n,i){t[i.substr(0,2)]=w(e)}),ie(["gg","GG"],function(t,n,i,r){n[r]=e.parseTwoDigitYear(t)}),B("Q",0,"Qo","quarter"),L("quarter","Q"),H("quarter",7),Z("Q",Mi),ne("Q",function(e,t){t[nr]=3*(w(e)-1)}),B("D",["DD",2],"Do","date"),L("date","D"),H("date",9),Z("D",Yi),Z("DD",Yi,Ri),Z("Do",function(e,t){return e?t._ordinalParse:t._ordinalParseLenient}),ne(["D","DD"],ir),ne("Do",function(e,t){t[ir]=w(e.match(Yi)[0],10)});var zr=F("Date",!0);B("DDD",["DDDD",3],"DDDo","dayOfYear"),L("dayOfYear","DDD"),H("dayOfYear",4),Z("DDD",$i),Z("DDDD",Hi),ne(["DDD","DDDD"],function(e,t,n){n._dayOfYear=w(e)}),B("m",["mm",2],0,"minute"),L("minute","m"),H("minute",14),Z("m",Yi),Z("mm",Yi,Ri),ne(["m","mm"],or);var Br=F("Minutes",!1);B("s",["ss",2],0,"second"),L("second","s"),H("second",15),Z("s",Yi),Z("ss",Yi,Ri),ne(["s","ss"],ar);var Gr=F("Seconds",!1);B("S",0,0,function(){return~~(this.millisecond()/100)}),B(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),B(0,["SSS",3],0,"millisecond"),B(0,["SSSS",4],0,function(){return 10*this.millisecond()}),B(0,["SSSSS",5],0,function(){return 100*this.millisecond()}),B(0,["SSSSSS",6],0,function(){return 1e3*this.millisecond()}),B(0,["SSSSSSS",7],0,function(){return 1e4*this.millisecond()}),B(0,["SSSSSSSS",8],0,function(){return 1e5*this.millisecond()}),B(0,["SSSSSSSSS",9],0,function(){return 1e6*this.millisecond()}),L("millisecond","ms"),H("millisecond",16),Z("S",$i,Mi),Z("SS",$i,Ri),Z("SSS",$i,Hi);var Qr;for(Qr="SSSS";Qr.length<=9;Qr+="S")Z(Qr,Bi);for(Qr="S";Qr.length<=9;Qr+="S")ne(Qr,Mn);var Kr=F("Milliseconds",!1);B("z",0,0,"zoneAbbr"),B("zz",0,0,"zoneName");var Xr=v.prototype;Xr.add=qr,Xr.calendar=Gt,Xr.clone=Qt,Xr.diff=nn,Xr.endOf=gn,Xr.format=ln,Xr.from=un,Xr.fromNow=cn,Xr.to=dn,Xr.toNow=hn,Xr.get=q,Xr.invalidAt=Cn,Xr.isAfter=Kt,Xr.isBefore=Xt,Xr.isBetween=Zt,Xr.isSame=Jt,Xr.isSameOrAfter=en,Xr.isSameOrBefore=tn,Xr.isValid=xn,Xr.lang=Vr,Xr.locale=fn,Xr.localeData=pn,Xr.max=Hr,Xr.min=Rr,Xr.parsingFlags=Tn,Xr.set=V,Xr.startOf=mn,Xr.subtract=$r,Xr.toArray=wn,Xr.toObject=_n,Xr.toDate=bn,Xr.toISOString=an,Xr.inspect=sn,Xr.toJSON=En,Xr.toString=on,Xr.unix=yn,Xr.valueOf=vn,Xr.creationData=Sn,Xr.year=vr,Xr.isLeapYear=ye,Xr.weekYear=On,Xr.isoWeekYear=Dn,Xr.quarter=Xr.quarters=jn,Xr.month=de,Xr.daysInMonth=he,Xr.week=Xr.weeks=Oe,Xr.isoWeek=Xr.isoWeeks=De,Xr.weeksInYear=In,Xr.isoWeeksInYear=An,Xr.date=zr,Xr.day=Xr.days=Re,Xr.weekday=He,Xr.isoWeekday=We,Xr.dayOfYear=Ln,Xr.hour=Xr.hours=Sr,Xr.minute=Xr.minutes=Br,Xr.second=Xr.seconds=Gr,Xr.millisecond=Xr.milliseconds=Kr,Xr.utcOffset=At,Xr.utc=Pt,Xr.local=Nt,Xr.parseZone=jt,Xr.hasAlignedHourOffset=Lt,Xr.isDST=Mt,Xr.isLocal=Ht,Xr.isUtcOffset=Wt,Xr.isUtc=Ft,Xr.isUTC=Ft,Xr.zoneAbbr=Rn,Xr.zoneName=Hn,Xr.dates=x("dates accessor is deprecated. Use date instead.",zr),Xr.months=x("months accessor is deprecated. Use month instead",de),Xr.years=x("years accessor is deprecated. Use year instead",vr),Xr.zone=x("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",It),Xr.isDSTShifted=x("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",Rt);var Zr=O.prototype;Zr.calendar=D,Zr.longDateFormat=A,Zr.invalidDate=I,Zr.ordinal=P,Zr.preparse=Yn,Zr.postformat=Yn,Zr.relativeTime=N,Zr.pastFuture=j,Zr.set=S,Zr.months=ae,Zr.monthsShort=se,Zr.monthsParse=ue,Zr.monthsRegex=pe,Zr.monthsShortRegex=fe,Zr.week=Ce,Zr.firstDayOfYear=ke,Zr.firstDayOfWeek=Se,Zr.weekdays=Pe,Zr.weekdaysMin=je,Zr.weekdaysShort=Ne,Zr.weekdaysParse=Me,Zr.weekdaysRegex=Fe,Zr.weekdaysShortRegex=Ye,Zr.weekdaysMinRegex=Ue,Zr.isPM=Ge,Zr.meridiem=Qe,Je("en",{ordinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(e){var t=e%10,n=1===w(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th";return e+n}}),e.lang=x("moment.lang is deprecated. Use moment.locale instead.",Je),e.langData=x("moment.langData is deprecated. Use moment.localeData instead.",nt);var Jr=Math.abs,eo=ai("ms"),to=ai("s"),no=ai("m"),io=ai("h"),ro=ai("d"),oo=ai("w"),ao=ai("M"),so=ai("y"),lo=li("milliseconds"),uo=li("seconds"),co=li("minutes"),ho=li("hours"),fo=li("days"),po=li("months"),mo=li("years"),go=Math.round,vo={s:45,m:45,h:22,d:26,M:11},yo=Math.abs,bo=xt.prototype;return bo.abs=Kn,bo.add=Zn,bo.subtract=Jn,bo.as=ri,bo.asMilliseconds=eo,bo.asSeconds=to,bo.asMinutes=no,bo.asHours=io,bo.asDays=ro,bo.asWeeks=oo,bo.asMonths=ao,bo.asYears=so,bo.valueOf=oi,bo._bubble=ti,bo.get=si,bo.milliseconds=lo,bo.seconds=uo,bo.minutes=co,bo.hours=ho,bo.days=fo,bo.weeks=ui,bo.months=po,bo.years=mo,bo.humanize=pi,bo.toISOString=mi,bo.toString=mi,bo.toJSON=mi,bo.locale=fn,bo.localeData=pn,bo.toIsoString=x("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",mi),bo.lang=Vr,B("X",0,0,"unix"),B("x",0,0,"valueOf"),Z("x",Gi),Z("X",Xi),ne("X",function(e,t,n){n._d=new Date(1e3*parseFloat(e,10))}),ne("x",function(e,t,n){n._d=new Date(w(e))}),e.version="2.17.1",t(bt),e.fn=Xr,e.min=_t,e.max=Et,e.now=Wr,e.utc=c,e.unix=Wn,e.months=Vn,e.isDate=a,e.locale=Je,e.invalid=p,e.duration=Yt,e.isMoment=y,e.weekdays=Bn,e.parseZone=Fn,e.localeData=nt,e.isDuration=Tt,e.monthsShort=zn,e.weekdaysMin=Qn,e.defineLocale=et,e.updateLocale=tt,e.locales=it,e.weekdaysShort=Gn,e.normalizeUnits=M,e.relativeTimeRounding=hi,e.relativeTimeThreshold=fi,e.calendarFormat=Bt,e.prototype=Xr,e}),function(e,$,t){function n(e,t){var n=$(e);n.data(r,this),this._$element=n,this.shares=[],this._init(t),this._render()}var i="JSSocials",r=i,o=function(e,t){return $.isFunction(e)?e.apply(t,$.makeArray(arguments).slice(2)):e},a=/(\.(jpeg|png|gif|bmp|svg)$|^data:image\/(jpeg|png|gif|bmp|svg\+xml);base64)/i,s=/(&?[a-zA-Z0-9]+=)?\{([a-zA-Z0-9]+)\}/g,l={G:1e9,M:1e6,K:1e3},u={};n.prototype={url:"",text:"",shareIn:"blank",showLabel:function(e){return this.showCount===!1?e>this.smallScreenWidth:e>=this.largeScreenWidth},showCount:function(e){return!(e<=this.smallScreenWidth)||"inside"},smallScreenWidth:640,largeScreenWidth:1024,resizeTimeout:200,elementClass:"jssocials",sharesClass:"jssocials-shares",shareClass:"jssocials-share",shareButtonClass:"jssocials-share-button",shareLinkClass:"jssocials-share-link",shareLogoClass:"jssocials-share-logo",shareLabelClass:"jssocials-share-label",shareLinkCountClass:"jssocials-share-link-count",shareCountBoxClass:"jssocials-share-count-box",shareCountClass:"jssocials-share-count",shareZeroCountClass:"jssocials-share-no-count",_init:function(e){this._initDefaults(),$.extend(this,e),this._initShares(),this._attachWindowResizeCallback()},_initDefaults:function(){this.url=e.location.href,this.text=$.trim($("meta[name=description]").attr("content")||$("title").text())},_initShares:function(){this.shares=$.map(this.shares,$.proxy(function(e){"string"==typeof e&&(e={share:e});var t=e.share&&u[e.share];if(!t&&!e.renderer)throw Error("Share '"+e.share+"' is not found");return $.extend({url:this.url,text:this.text},t,e)},this))},_attachWindowResizeCallback:function(){$(e).on("resize",$.proxy(this._windowResizeHandler,this))},_detachWindowResizeCallback:function(){$(e).off("resize",this._windowResizeHandler)},_windowResizeHandler:function(){($.isFunction(this.showLabel)||$.isFunction(this.showCount))&&(e.clearTimeout(this._resizeTimer),this._resizeTimer=setTimeout($.proxy(this.refresh,this),this.resizeTimeout))},_render:function(){this._clear(),this._defineOptionsByScreen(),this._$element.addClass(this.elementClass),this._$shares=$("
      ").addClass(this.sharesClass).appendTo(this._$element),this._renderShares()},_defineOptionsByScreen:function(){this._screenWidth=$(e).width(),this._showLabel=o(this.showLabel,this,this._screenWidth),this._showCount=o(this.showCount,this,this._screenWidth)},_renderShares:function(){$.each(this.shares,$.proxy(function(e,t){this._renderShare(t)},this))},_renderShare:function(e){var t;t=$.isFunction(e.renderer)?$(e.renderer()):this._createShare(e),t.addClass(this.shareClass).addClass(e.share?"jssocials-share-"+e.share:"").addClass(e.css).appendTo(this._$shares)},_createShare:function(e){var t=$("
      "),n=this._createShareLink(e).appendTo(t);if(this._showCount){var i="inside"===this._showCount,r=i?n:$("
      ").addClass(this.shareCountBoxClass).appendTo(t);r.addClass(i?this.shareLinkCountClass:this.shareCountBoxClass),this._renderShareCount(e,r)}return t},_createShareLink:function(e){var t=this._getShareStrategy(e),n=t.call(e,{shareUrl:this._getShareUrl(e)});return n.addClass(this.shareLinkClass).append(this._createShareLogo(e)),this._showLabel&&n.append(this._createShareLabel(e)),$.each(this.on||{},function(t,i){$.isFunction(i)&&n.on(t,$.proxy(i,e))}),n},_getShareStrategy:function(e){var t=d[e.shareIn||this.shareIn];if(!t)throw Error("Share strategy '"+this.shareIn+"' not found");return t},_getShareUrl:function(e){var t=o(e.shareUrl,e);return this._formatShareUrl(t,e)},_createShareLogo:function(e){var t=e.logo,n=a.test(t)?$("").attr("src",e.logo):$("").addClass(t);return n.addClass(this.shareLogoClass),n},_createShareLabel:function(e){return $("").addClass(this.shareLabelClass).text(e.label)},_renderShareCount:function(e,t){var n=$("").addClass(this.shareCountClass);t.addClass(this.shareZeroCountClass).append(n),this._loadCount(e).done($.proxy(function(e){e&&(t.removeClass(this.shareZeroCountClass),n.text(e))},this))},_loadCount:function(e){var t=$.Deferred(),n=this._getCountUrl(e);if(!n)return t.resolve(0).promise();var i=$.proxy(function(n){t.resolve(this._getCountValue(n,e))},this);return $.getJSON(n).done(i).fail(function(){$.get(n).done(i).fail(function(){t.resolve(0)})}),t.promise()},_getCountUrl:function(e){var t=o(e.countUrl,e);return this._formatShareUrl(t,e)},_getCountValue:function(e,t){var n=($.isFunction(t.getCount)?t.getCount(e):e)||0;return"string"==typeof n?n:this._formatNumber(n)},_formatNumber:function(e){return $.each(l,function(t,n){if(e>=n)return e=parseFloat((e/n).toFixed(2))+t,!1}),e},_formatShareUrl:function(t,n){return t.replace(s,function(t,i,r){var o=n[r]||"";return o?(i||"")+e.encodeURIComponent(o):""})},_clear:function(){e.clearTimeout(this._resizeTimer),this._$element.empty()},_passOptionToShares:function(e,t){var n=this.shares;$.each(["url","text"],function(i,r){r===e&&$.each(n,function(n,i){i[e]=t})})},_normalizeShare:function(e){return $.isNumeric(e)?this.shares[e]:"string"==typeof e?$.grep(this.shares,function(t){return t.share===e})[0]:e},refresh:function(){this._render()},destroy:function(){this._clear(),this._detachWindowResizeCallback(),this._$element.removeClass(this.elementClass).removeData(r)},option:function(e,t){return 1===arguments.length?this[e]:(this[e]=t,this._passOptionToShares(e,t),void this.refresh())},shareOption:function(e,t,n){return e=this._normalizeShare(e),2===arguments.length?e[t]:(e[t]=n,void this.refresh())}},$.fn.jsSocials=function(e){var i=$.makeArray(arguments),o=i.slice(1),a=this;return this.each(function(){var i=$(this),s=i.data(r),l;if(s)if("string"==typeof e){if(l=s[e].apply(s,o),l!==t&&l!==s)return a=l,!1}else s._detachWindowResizeCallback(),s._init(e),s._render();else new n(i,e)}),a};var c=function(e){var t;$.isPlainObject(e)?t=n.prototype:(t=u[e], +e=arguments[1]||{}),$.extend(t,e)},d={popup:function(t){return $("").attr("href","#").on("click",function(){return e.open(t.shareUrl,null,"width=600, height=400, location=0, menubar=0, resizeable=0, scrollbars=0, status=0, titlebar=0, toolbar=0"),!1})},blank:function(e){return $("").attr({target:"_blank",href:e.shareUrl})},self:function(e){return $("").attr({target:"_self",href:e.shareUrl})}};e.jsSocials={Socials:n,shares:u,shareStrategies:d,setDefaults:c}}(window,jQuery),function(e,$,t,n){$.extend(t.shares,{email:{label:"E-mail",logo:"fa fa-at",shareUrl:"mailto:{to}?subject={text}&body={url}",countUrl:"",shareIn:"self"},twitter:{label:"Tweet",logo:"fa fa-twitter",shareUrl:"https://twitter.com/share?url={url}&text={text}&via={via}&hashtags={hashtags}",countUrl:""},facebook:{label:"Like",logo:"fa fa-facebook",shareUrl:"https://facebook.com/sharer/sharer.php?u={url}",countUrl:"https://graph.facebook.com/?id={url}",getCount:function(e){return e.share&&e.share.share_count||0}},vkontakte:{label:"Like",logo:"fa fa-vk",shareUrl:"https://vk.com/share.php?url={url}&title={title}&description={text}",countUrl:"https://vk.com/share.php?act=count&index=1&url={url}",getCount:function(e){return parseInt(e.slice(15,-2).split(", ")[1])}},googleplus:{label:"+1",logo:"fa fa-google",shareUrl:"https://plus.google.com/share?url={url}",countUrl:""},linkedin:{label:"Share",logo:"fa fa-linkedin",shareUrl:"https://www.linkedin.com/shareArticle?mini=true&url={url}",countUrl:"https://www.linkedin.com/countserv/count/share?format=jsonp&url={url}&callback=?",getCount:function(e){return e.count}},pinterest:{label:"Pin it",logo:"fa fa-pinterest",shareUrl:"https://pinterest.com/pin/create/bookmarklet/?media={media}&url={url}&description={text}",countUrl:"https://api.pinterest.com/v1/urls/count.json?&url={url}&callback=?",getCount:function(e){return e.count}},stumbleupon:{label:"Share",logo:"fa fa-stumbleupon",shareUrl:"http://www.stumbleupon.com/submit?url={url}&title={title}",countUrl:"https://cors-anywhere.herokuapp.com/https://www.stumbleupon.com/services/1.01/badge.getinfo?url={url}",getCount:function(e){return e.result.views}},telegram:{label:"Telegram",logo:"fa fa-paper-plane",shareUrl:"tg://msg?text={url} {text}",countUrl:"",shareIn:"self"},whatsapp:{label:"WhatsApp",logo:"fa fa-whatsapp",shareUrl:"whatsapp://send?text={url} {text}",countUrl:"",shareIn:"self"},line:{label:"LINE",logo:"fa fa-comment",shareUrl:"http://line.me/R/msg/text/?{text} {url}",countUrl:""},viber:{label:"Viber",logo:"fa fa-volume-control-phone",shareUrl:"viber://forward?text={url} {text}",countUrl:"",shareIn:"self"},pocket:{label:"Pocket",logo:"fa fa-get-pocket",shareUrl:"https://getpocket.com/save?url={url}&title={title}",countUrl:""},messenger:{label:"Share",logo:"fa fa-commenting",shareUrl:"fb-messenger://share?link={url}",countUrl:"",shareIn:"self"}})}(window,jQuery,window.jsSocials);var acc=document.getElementsByClassName("accordion"),i;for(i=0;i"," ","+","~","excess","unquoted","nodeNameSelector","pattern","operator","check","what","simple","forward","ofType","nodeIndex","parent","useCache","pseudo","idx","matched","has","innerText","lang","elemLang","hash","location","root","focus","hasFocus","href","tabIndex","enabled","selectedIndex","header","button","even","odd","lt","gt","radio","checkbox","file","password","image","submit","reset","filters","parseOnly","soFar","preFilters","cached","token","compiled","unique","isXMLDoc","escapeSelector","until","truncate","is","siblings","n","rneedsContext","rsingleTag","rootjQuery","parseHTML","rparentsprev","guaranteedUnique","children","targets","closest","prevAll","addBack","parents","parentsUntil","nextAll","nextUntil","prevUntil","contentDocument","reverse","Callbacks","firing","memory","fired","locked","firingIndex","once","stopOnFalse","disable","lock","fireWith","tuples","catch","pipe","fns","newDefer","tuple","returned","notify","onFulfilled","onRejected","onProgress","depth","special","that","mightThrow","maxDepth","TypeError","process","exceptionHook","stackTrace","getStackHook","stateString","when","singleValue","resolveContexts","resolveValues","master","updateFunc","rerrorNames","stack","console","warn","message","readyException","readyList","readyWait","holdReady","hold","wait","readyState","doScroll","chainable","emptyGet","raw","bulk","acceptData","owner","defineProperty","configurable","removeData","_data","_removeData","dequeue","startLength","setter","clearQueue","count","defer","pnum","source","swap","old","hide","option","thead","col","tr","td","optgroup","tbody","tfoot","colgroup","caption","th","div","cloneNode","noCloneChecked","rkeyEvent","rmouseEvent","rtypenamespace","handleObjIn","eventHandle","t","handleObj","handlers","namespaces","origType","elemData","triggered","dispatch","delegateType","bindType","namespace","delegateCount","setup","mappedTypes","origCount","teardown","removeEvent","nativeEvent","fix","handlerQueue","delegateTarget","preDispatch","isPropagationStopped","currentTarget","isImmediatePropagationStopped","rnamespace","preventDefault","stopPropagation","postDispatch","matchedHandlers","matchedSelectors","addProp","hook","Event","enumerable","originalEvent","writable","load","noBubble","trigger","blur","click","beforeunload","returnValue","isDefaultPrevented","defaultPrevented","relatedTarget","timeStamp","isSimulated","stopImmediatePropagation","altKey","bubbles","cancelable","changedTouches","ctrlKey","detail","eventPhase","metaKey","pageX","pageY","shiftKey","view","char","charCode","keyCode","buttons","clientX","clientY","offsetX","offsetY","pointerId","pointerType","screenX","screenY","targetTouches","toElement","touches","mouseenter","mouseleave","pointerenter","pointerleave","related","rxhtmlTag","rnoInnerhtml","dataAndEvents","deepDataAndEvents","srcElements","destElements","inPage","detach","append","prepend","insertBefore","before","after","replaceWith","replaceChild","appendTo","prependTo","insertAfter","replaceAll","original","insert","opener","getComputedStyle","computeStyleTests","cssText","container","divStyle","pixelPositionVal","reliableMarginLeftVal","marginLeft","boxSizingReliableVal","marginRight","pixelMarginRightVal","backgroundClip","clearCloneStyle","pixelPosition","reliableMarginLeft","rdisplayswap","cssShow","position","visibility","cssNormalTransform","letterSpacing","fontWeight","animationIterationCount","columnCount","fillOpacity","flexGrow","flexShrink","lineHeight","order","orphans","widows","zIndex","zoom","cssProps","float","origName","isFinite","left","margin","padding","border","suffix","expanded","parts","propHooks","eased","pos","step","scrollTop","scrollLeft","linear","p","swing","cos","PI","rrun","*","tweener","prefilter","speed","opt","speeds","fadeTo","to","animate","optall","doAnimation","finish","stopQueue","timers","cssFn","slideDown","slideUp","slideToggle","fadeIn","fadeOut","fadeToggle","interval","setInterval","cancelAnimationFrame","clearInterval","slow","fast","delay","time","timeout","clearTimeout","checkOn","optSelected","radioValue","boolHook","removeAttr","nType","attrHooks","attrNames","getter","lowercaseName","rfocusable","rclickable","removeProp","propFix","tabindex","parseInt","for","class","addClass","classes","curValue","clazz","finalValue","removeClass","toggleClass","stateVal","classNames","hasClass","rreturn","valHooks","optionSet","rfocusMorph","onlyHandlers","bubbleType","ontype","eventPath","isTrigger","parentWindow","simulate","triggerHandler","hover","fnOver","fnOut","focusin","attaches","nonce","rquery","parseXML","DOMParser","parseFromString","rCRLF","rsubmitterTypes","rsubmittable","param","valueOrFunction","encodeURIComponent","serialize","serializeArray","r20","rhash","rantiCache","rheaders","rlocalProtocol","rnoContent","rprotocol","allTypes","originAnchor","active","lastModified","etag","url","isLocal","protocol","processData","async","contentType","accepts","json","* text","text html","text json","text xml","ajaxSetup","settings","ajaxPrefilter","ajaxTransport","ajax","status","nativeStatusText","headers","success","modified","statusText","timeoutTimer","transport","responseHeadersString","ifModified","cacheURL","callbackContext","statusCode","fireGlobals","globalEventContext","completeDeferred","responseHeaders","urlAnchor","uncached","requestHeaders","requestHeadersNames","strAbort","getAllResponseHeaders","setRequestHeader","overrideMimeType","abort","finalText","crossDomain","host","hasContent","beforeSend","send","getJSON","getScript","wrapAll","firstElementChild","wrapInner","unwrap","visible","offsetWidth","offsetHeight","xhr","XMLHttpRequest","xhrSuccessStatus","0","1223","xhrSupported","cors","errorCallback","open","username","xhrFields","onload","onerror","onabort","onreadystatechange","responseType","responseText","binary","text script","charset","scriptCharset","evt","oldCallbacks","rjsonp","jsonp","jsonpCallback","originalSettings","callbackName","overwritten","responseContainer","jsonProp","createHTMLDocument","implementation","keepScripts","parsed","params","animated","offset","setOffset","curPosition","curLeft","curCSSTop","curTop","curOffset","curCSSLeft","calculatePosition","curElem","using","win","rect","pageYOffset","clientTop","pageXOffset","clientLeft","offsetParent","parentOffset","scrollTo","Height","Width","","defaultExtra","funcName","bind","unbind","delegate","undelegate","parseJSON","define","amd","_jQuery","_$","$","noConflict","require","Tether","_classCallCheck","instance","Constructor","getActualBoundingClientRect","boundingRect","k","_frameElement","frameElement","frameRect","bottom","right","getScrollParents","computedStyle","_style","removeUtilElements","zeroElement","getBounds","docEl","box","origin","getOrigin","scrollWidth","scrollHeight","clientWidth","clientHeight","getOffsetParent","getScrollBarSize","_scrollBarSize","inner","outer","pointerEvents","widthContained","widthScroll","out","forEach","classList","cls","regex","getClassName","setClassName","SVGAnimatedString","baseVal","updateClasses","_inherits","subClass","superClass","create","setPrototypeOf","__proto__","within","performance","addOffset","_len","offsets","_key","_ref","offsetToPx","size","getBoundingRect","tether","scrollParents","innerWidth","innerHeight","BOUNDS_FORMAT","side","substr","_createClass","defineProperties","descriptor","protoProps","staticProps","TetherBase","modules","uniqueId","zeroPosCache","flush","Evented","ctx","bindings","_bindings$event$i","Utils","_slicedToArray","sliceIterator","_arr","_n","_d","_e","_i","_s","_get","_x6","_x7","_x8","_again","property","receiver","Function","desc","getOwnPropertyDescriptor","_TetherBase$Utils","transformKey","transforms","tethers","lastCall","lastDuration","pendingTimeout","min","MIRROR_LR","center","MIRROR_TB","middle","OFFSET_MAP","autoToFixedAttachment","attachment","relativeToAttachment","attachmentToOffset","parseOffset","_value$split","_value$split2","parseAttachment","TetherClass","_Evented","_this","history","setOptions","initialize","classPrefix","_this2","defaults","targetOffset","targetAttachment","_options","element","targetModifier","querySelector","addTargetClasses","enable","getTargetBounds","bounds","hasBottomScroll","scrollBottom","borderTopWidth","borderBottomWidth","borderLeftWidth","fitAdj","pow","scrollPercentage","clearCache","_cache","_this3","_this4","destroy","_this5","updateAttachClasses","elementAttach","targetAttach","_this6","sides","_addAttachClasses","_this7","flushChanges","elementPos","lastSize","_lastSize","targetPos","targetSize","manualOffset","manualTargetOffset","_module2","scrollbarSize","page","viewport","parentElement","optimizations","moveElement","offsetPosition","offsetParentStyle","offsetParentSize","offsetBorder","move","_this8","same","found","point","transcribe","_same","_pos","hasOptimizations","gpu","yPos","xPos","matchMedia","retina","round","moved","bodyElement","offsetParentIsBody","currentNode","tagName","writeCSS","write","elVal","constraints","targetHeight","targetWidth","allClasses","constraint","outOfBoundsClass","pinnedClass","addClasses","tAttachment","eAttachment","pin","changeAttachX","changeAttachY","_attachment$split","_attachment$split2","pinned","oob","oobClass","abutted","targetPosSide","shiftTop","shiftLeft","_shift","_shift2","_possibleConstructorReturn","ReferenceError","_typeof","Util","toType","isElement","getSpecialTransitionEndEvent","transition","transitionEndTest","QUnit","TransitionEndEvent","transitionEndEmulator","called","TRANSITION_END","triggerTransitionEnd","setTransitionEndSupport","emulateTransitionEnd","supportsTransitionEnd","MAX_UID","WebkitTransition","MozTransition","OTransition","getUID","getSelectorFromElement","reflow","Boolean","typeCheckConfig","componentName","config","configTypes","expectedTypes","valueType","Alert","NAME","VERSION","DATA_KEY","EVENT_KEY","DATA_API_KEY","JQUERY_NO_CONFLICT","TRANSITION_DURATION","Selector","DISMISS","CLOSE","CLOSED","CLICK_DATA_API","ClassName","ALERT","FADE","SHOW","_element","close","rootElement","_getRootElement","customEvent","_triggerCloseEvent","_removeElement","dispose","closeEvent","_destroyElement","_jQueryInterface","$element","_handleDismiss","alertInstance","Button","ACTIVE","BUTTON","FOCUS","DATA_TOGGLE_CARROT","DATA_TOGGLE","INPUT","FOCUS_BLUR_DATA_API","triggerChangeEvent","Carousel","ARROW_LEFT_KEYCODE","ARROW_RIGHT_KEYCODE","Default","keyboard","slide","pause","DefaultType","Direction","NEXT","PREV","LEFT","RIGHT","SLIDE","SLID","KEYDOWN","MOUSEENTER","MOUSELEAVE","LOAD_DATA_API","CAROUSEL","ITEM","ACTIVE_ITEM","NEXT_PREV","INDICATORS","DATA_SLIDE","DATA_RIDE","_items","_interval","_activeElement","_isPaused","_isSliding","_config","_getConfig","_indicatorsElement","_addEventListeners","_slide","nextWhenVisible","PREVIOUS","cycle","visibilityState","activeIndex","_getItemIndex","direction","_keydown","_getItemByDirection","isNextDirection","isPrevDirection","lastItemIndex","isGoingToWrap","delta","itemIndex","_triggerSlideEvent","eventDirectionName","slideEvent","_setActiveIndicatorElement","nextIndicator","nextElement","isCycling","directionalClassName","orderClassName","slidEvent","action","_dataApiClickHandler","slideIndex","$carousel","Collapse","SHOWN","HIDE","HIDDEN","COLLAPSE","COLLAPSING","COLLAPSED","Dimension","WIDTH","HEIGHT","ACTIVES","_isTransitioning","_triggerArray","_parent","_getParent","_addAriaAndCollapsedClass","actives","activesData","startEvent","dimension","_getDimension","setTransitioning","capitalizedDimension","scrollSize","offsetDimension","isTransitioning","hasWidth","_getTargetFromElement","triggerArray","isOpen","$this","Dropdown","ESCAPE_KEYCODE","ARROW_UP_KEYCODE","ARROW_DOWN_KEYCODE","RIGHT_MOUSE_BUTTON_WHICH","CLICK","FOCUSIN_DATA_API","KEYDOWN_DATA_API","BACKDROP","DISABLED","FORM_CHILD","ROLE_MENU","ROLE_LISTBOX","NAVBAR_NAV","VISIBLE_ITEMS","_getParentFromElement","isActive","_clearMenus","dropdown","showEvent","backdrop","toggles","hideEvent","_dataApiKeydownHandler","items","Modal","BACKDROP_TRANSITION_DURATION","FOCUSIN","RESIZE","CLICK_DISMISS","KEYDOWN_DISMISS","MOUSEUP_DISMISS","MOUSEDOWN_DISMISS","SCROLLBAR_MEASURER","OPEN","DIALOG","DATA_DISMISS","FIXED_CONTENT","_dialog","_backdrop","_isShown","_isBodyOverflowing","_ignoreBackdropClick","_originalBodyPadding","_scrollbarWidth","_this9","_checkScrollbar","_setScrollbar","_setEscapeEvent","_setResizeEvent","_showBackdrop","_showElement","_this10","_hideModal","_this11","Node","ELEMENT_NODE","_enforceFocus","shownEvent","transitionComplete","_this12","_this13","_this14","_handleUpdate","_this15","_resetAdjustments","_resetScrollbar","_removeBackdrop","_this16","doAnimate","callbackRemove","_adjustDialog","isModalOverflowing","paddingLeft","paddingRight","_getScrollbarWidth","bodyPadding","scrollDiv","scrollbarWidth","_this17","$target","ScrollSpy","ACTIVATE","SCROLL","DROPDOWN_ITEM","DROPDOWN_MENU","NAV_LINK","NAV","DATA_SPY","LIST_ITEM","LI","LI_DROPDOWN","NAV_LINKS","DROPDOWN","DROPDOWN_ITEMS","DROPDOWN_TOGGLE","OffsetMethod","OFFSET","POSITION","_this18","_scrollElement","_selector","_offsets","_targets","_activeTarget","_scrollHeight","_process","refresh","_this19","autoMethod","offsetMethod","offsetBase","_getScrollTop","_getScrollHeight","targetSelector","item","_getOffsetHeight","maxScroll","_activate","_clear","isActiveTarget","queries","$link","scrollSpys","$spy","Tab","A","LIST","FADE_CHILD","ACTIVE_CHILD","DROPDOWN_ACTIVE_CHILD","_this20","previous","listElement","hiddenEvent","_this21","_transitionComplete","dropdownChild","dropdownElement","Tooltip","CLASS_PREFIX","template","title","placement","AttachmentMap","TOP","BOTTOM","HoverState","OUT","INSERTED","FOCUSOUT","TOOLTIP","TOOLTIP_INNER","Trigger","HOVER","MANUAL","_isEnabled","_timeout","_hoverState","_activeTrigger","_tether","tip","_setListeners","toggleEnabled","dataKey","_getDelegateConfig","_isWithActiveTrigger","_enter","_leave","getTipElement","cleanupTether","_this22","isWithContent","isInTheDom","tipId","setContent","_getAttachment","prevHoverState","_TRANSITION_DURATION","_this23","getTitle","$tip","setElementContent","_this24","triggers","eventIn","eventOut","_fixTitle","titleType","Popover","TITLE","CONTENT","_Tooltip","_getContent","rand","charAt","floor","getRequestUrl","provider","externalUrl","apiendpoint","qs","maxwidth","maxHeight","maxheight","callbackparameter","format","oembedData","beforeEmbed","onEmbed","afterEmbed","embedCode","embedProvider","embedtag","yql","from","query","xpath","ajaxopts","q","env","meta","link","rel","datareturn","onError","ajaxOptions","templateRegex","flashvars","nocache","apikey","apikeys","allowfullscreen","scrolling","frameborder","templateData","requestUrl","oembed","getPhotoCode","getRichCode","getGenericCode","getNormalizedParams","normalizedParams","embedAction","shortURLList","resourceURL","insertCode","embedMethod","regExp","getOEmbedProvider","fallback","onProviderNotFound","longUrlAjaxOptions","includeHandle","c","log","oembedContainer","encodedString","post_width","iframe_width_orig","iframe_height_orig","ratio","alt","author_name","provider_name","thumbnail_url","newURL","providers","urlschemes","OEmbedProvider","urlschemesarray","extraSettings","useYQL","externalurl","updateOEmbedProvider","image_teaser_url","wm","tourid","loadEmbeds","Title","imdbID","Year","imdbRating","Genre","Actors","Plot","html_url","language","watchers","forks","description","pushed_at","facebokScriptHasBeenAdded","questions","up_vote_count","down_vote_count","answer_count","view_count","question_id","substring","tags","user_id","display_name","email_hash","reputation","embed","img","md5","f","g","h","o","r","tinysort","x","hasSelector","hasAttr","hasFilter","sortReturnNumber","S","M","R","V","elm","posn","B","D","y","Number","N","C","ignoreDashes","u","prepare","sortFunction","emptyEnd","forceStrings","F","natural","O","place","E","ghost","useVal","cases","z","L","rootNode","useFlex","sortBy","returns","Element","loop","plugin","moment","momentJsAvailable","signClass","sign","customSort","defaultSortEngine","sortEngine","applyLast","colspan","$cell","rowspan","parentRow","nextRow","rowIndex","columnIndex","$header","colNumber","lookupSortContext","bsSort","$sortTable","sortKey","thisLastSort","lastSort","doSort","sortByColumn","$table","rows","sortingParams","sortColumn","mainSort","localSignClass","browser","mozilla","moz_arrow","initialDirection","newDirection","fixedRows","fixedRow","$fixedRow","row","rowsToSort","emptySorting","$document","bootstrapSortable","sortingHeader","chrome","opera","msie","safari","ua","navigator","userAgent","hookCallback","setHookCallback","isObject","isObjectEmpty","isNumber","isDate","res","hasOwnProp","valueOf","createUTC","locale","strict","createLocalOrUTC","utc","defaultParsingFlags","unusedTokens","unusedInput","charsLeftOver","nullInput","invalidMonth","invalidFormat","userInvalidated","iso","parsedDateParts","meridiem","getParsingFlags","_pf","isValid","_isValid","flags","parsedParts","some$1","isNowValid","getTime","invalidWeekday","_strict","bigHour","isFrozen","createInvalid","NaN","isUndefined","copyConfig","_isAMomentObject","_f","_l","_tzm","_isUTC","_offset","_locale","momentProperties","Moment","updateInProgress","updateOffset","isMoment","absFloor","number","ceil","toInt","argumentForCoercion","coercedNumber","compareArrays","array1","array2","dontConvert","lengthDiff","abs","diffs","suppressDeprecationWarnings","deprecate","firstTime","deprecationHandler","deprecateSimple","deprecations","_ordinalParseLenient","_ordinalParse","mergeConfigs","parentConfig","childConfig","Locale","calendar","mom","output","_calendar","longDateFormat","_longDateFormat","formatUpper","invalidDate","_invalidDate","ordinal","_ordinal","relativeTime","withoutSuffix","isFuture","_relativeTime","pastFuture","addUnitAlias","shorthand","lowerCase","aliases","normalizeUnits","units","normalizeObjectUnits","inputObject","normalizedInput","normalizedProp","addUnitPriority","priority","priorities","getPrioritizedUnits","unitsObj","makeGetSet","keepTime","set$1","stringGet","stringSet","prioritized","zeroFill","targetLength","forceSign","absNumber","zerosToFill","addFormatToken","padded","formatTokenFunctions","localeData","removeFormattingTokens","makeFormatFunction","array","formattingTokens","formatMoment","expandFormat","formatFunctions","replaceLongDateFormatTokens","localFormattingTokens","lastIndex","addRegexToken","strictRegex","regexes","isStrict","getParseRegexForToken","unescapeFormat","regexEscape","p1","p2","p3","p4","addParseToken","addWeekParseToken","_w","addTimeToArrayFromToken","_a","daysInMonth","year","UTC","getUTCDate","localeMonths","_months","isFormat","MONTHS_IN_FORMAT","localeMonthsShort","_monthsShort","handleStrictParse","monthName","ii","llc","toLocaleLowerCase","_monthsParse","_longMonthsParse","_shortMonthsParse","monthsShort","months","indexOf$1","localeMonthsParse","_monthsParseExact","setMonth","dayOfMonth","monthsParse","date","getSetMonth","getDaysInMonth","monthsShortRegex","computeMonthsParse","_monthsShortStrictRegex","_monthsShortRegex","defaultMonthsShortRegex","monthsRegex","_monthsStrictRegex","_monthsRegex","defaultMonthsRegex","cmpLenRev","shortPieces","longPieces","mixedPieces","daysInYear","isLeapYear","getIsLeapYear","createDate","ms","getFullYear","setFullYear","createUTCDate","getUTCFullYear","setUTCFullYear","firstWeekOffset","dow","doy","fwd","fwdlw","getUTCDay","dayOfYearFromWeeks","week","weekday","localWeekday","weekOffset","dayOfYear","resYear","resDayOfYear","weekOfYear","resWeek","weeksInYear","weekOffsetNext","localeWeek","_week","localeFirstDayOfWeek","localeFirstDayOfYear","getSetWeek","getSetISOWeek","parseWeekday","weekdaysParse","parseIsoWeekday","localeWeekdays","_weekdays","day","localeWeekdaysShort","_weekdaysShort","localeWeekdaysMin","_weekdaysMin","handleStrictParse$1","weekdayName","_weekdaysParse","_shortWeekdaysParse","_minWeekdaysParse","weekdaysMin","weekdaysShort","weekdays","localeWeekdaysParse","_weekdaysParseExact","_fullWeekdaysParse","getSetDayOfWeek","getDay","getSetLocaleDayOfWeek","getSetISODayOfWeek","weekdaysRegex","computeWeekdaysParse","_weekdaysStrictRegex","_weekdaysRegex","defaultWeekdaysRegex","weekdaysShortRegex","_weekdaysShortStrictRegex","_weekdaysShortRegex","defaultWeekdaysShortRegex","weekdaysMinRegex","_weekdaysMinStrictRegex","_weekdaysMinRegex","defaultWeekdaysMinRegex","minPieces","minp","shortp","longp","hFormat","hours","kFormat","lowercase","minutes","matchMeridiem","_meridiemParse","localeIsPM","localeMeridiem","isLower","normalizeLocale","chooseLocale","names","loadLocale","oldLocale","locales","globalLocale","_abbr","getSetGlobalLocale","getLocale","defineLocale","baseConfig","abbr","parentLocale","localeFamilies","updateLocale","listLocales","keys$1","checkOverflow","MONTH","DATE","YEAR","HOUR","MINUTE","SECOND","MILLISECOND","_overflowDayOfYear","_overflowWeeks","WEEK","_overflowWeekday","WEEKDAY","configFromISO","extendedIsoRegex","basicIsoRegex","allowTime","dateFormat","timeFormat","tzFormat","isoDates","isoTimes","tzRegex","configFromStringAndFormat","configFromString","aspNetJsonRegex","createFromInputFallback","currentDateArray","nowValue","_useUTC","getUTCMonth","getDate","configFromArray","currentDate","yearToUse","dayOfYearFromWeekInfo","_dayOfYear","_nextDay","setUTCMinutes","getUTCMinutes","weekYear","weekdayOverflow","GG","W","createLocal","curWeek","gg","ISO_8601","parsedInput","skipped","stringLength","totalParsedInputLength","_meridiem","meridiemFixWrap","hour","isPm","meridiemHour","isPM","configFromStringAndArray","tempConfig","bestMoment","scoreToBeat","currentScore","score","configFromObject","minute","millisecond","createFromConfig","prepareConfig","preparse","configFromInput","isUTC","pickBy","moments","Duration","years","quarters","quarter","weeks","days","seconds","milliseconds","_milliseconds","_days","_bubble","isDuration","absRound","separator","utcOffset","offsetFromString","chunk","chunkOffset","cloneWithOffset","model","setTime","local","getDateOffset","getTimezoneOffset","getSetOffset","keepLocalTime","localAdjust","matchShortOffset","_changeInProgress","addSubtract","createDuration","getSetZone","setOffsetToUTC","setOffsetToLocal","setOffsetToParsedOffset","tZone","matchOffset","hasAlignedHourOffset","isDaylightSavingTime","isDaylightSavingTimeShifted","_isDSTShifted","other","isUtcOffset","isUtc","diffRes","aspNetRegex","isoRegex","parseIso","momentsDifference","inp","positiveMomentsDifference","isAfter","isBefore","createAdder","period","dur","isAdding","getCalendarFormat","myMoment","calendar$1","formats","sod","startOf","calendarFormat","localInput","endOf","isBetween","inclusivity","isSame","inputMs","isSameOrAfter","isSameOrBefore","asFloat","zoneDelta","monthDiff","wholeMonthDiff","anchor","anchor2","adjust","toISOString","toDate","zone","datetime","inputString","defaultFormatUtc","defaultFormat","postformat","humanize","fromNow","toNow","newLocaleData","isoWeekday","unix","toObject","toJSON","isValid$1","parsingFlags","invalidAt","creationData","addWeekYearFormatToken","getSetWeekYear","getSetWeekYearHelper","getSetISOWeekYear","isoWeek","getISOWeeksInYear","getWeeksInYear","weekInfo","weeksTarget","setWeekAll","dayOfYearData","getSetQuarter","getSetDayOfYear","parseMs","getZoneAbbr","getZoneName","createUnix","createInZone","parseZone","preParsePostFormat","get$1","field","listMonthsImpl","listWeekdaysImpl","localeSorted","listMonths","listMonthsShort","listWeekdays","listWeekdaysShort","listWeekdaysMin","mathAbs","addSubtract$1","add$1","subtract$1","absCeil","bubble","monthsFromDays","monthsToDays","daysToMonths","as","valueOf$1","makeAs","alias","get$2","makeGetter","substituteTimeAgo","relativeTime$1","posNegDuration","thresholds","getSetRelativeTimeRounding","roundingFunction","getSetRelativeTimeThreshold","threshold","limit","withSuffix","toISOString$1","abs$1","Y","total","asSeconds","some","fun","defaultCalendar","sameDay","nextDay","nextWeek","lastDay","lastWeek","sameElse","defaultLongDateFormat","LTS","LT","LL","LLL","LLLL","defaultInvalidDate","defaultOrdinal","defaultOrdinalParse","defaultRelativeTime","future","past","mm","hh","dd","MM","yy","match1","match2","match3","match4","match6","match1to2","match3to4","match5to6","match1to3","match1to4","match1to6","matchUnsigned","matchSigned","matchTimestamp","matchWord","defaultLocaleMonths","defaultLocaleMonthsShort","parseTwoDigitYear","getSetYear","defaultLocaleWeek","defaultLocaleWeekdays","defaultLocaleWeekdaysShort","defaultLocaleWeekdaysMin","_isPm","pos1","pos2","defaultLocaleMeridiemParse","getSetHour","ordinalParse","meridiemParse","prototypeMin","prototypeMax","isoWeekYear","getSetDayOfMonth","getSetMinute","getSetSecond","getSetMillisecond","isoWeeks","isoWeeksInYear","isDST","zoneAbbr","zoneName","dates","isDSTShifted","proto$1","firstDayOfYear","firstDayOfWeek","langData","asMilliseconds","asMinutes","asHours","asDays","asWeeks","asMonths","asYears","proto$2","toIsoString","invalid","relativeTimeRounding","relativeTimeThreshold","Socials","JSSOCIALS_DATA_KEY","_$element","shares","_init","_render","JSSOCIALS","getOrApply","IMG_SRC_REGEX","URL_PARAMS_REGEX","MEASURES","G","K","shareIn","showLabel","screenWidth","showCount","smallScreenWidth","largeScreenWidth","resizeTimeout","elementClass","sharesClass","shareClass","shareButtonClass","shareLinkClass","shareLogoClass","shareLabelClass","shareLinkCountClass","shareCountBoxClass","shareCountClass","shareZeroCountClass","_initDefaults","_initShares","_attachWindowResizeCallback","shareConfig","share","renderer","_windowResizeHandler","_detachWindowResizeCallback","_resizeTimer","_defineOptionsByScreen","_$shares","_renderShares","_screenWidth","_showLabel","_showCount","_renderShare","$share","_createShare","$result","$shareLink","_createShareLink","isInsideCount","$countContainer","_renderShareCount","shareStrategy","_getShareStrategy","shareUrl","_getShareUrl","_createShareLogo","_createShareLabel","shareStrategies","_formatShareUrl","logo","label","$container","$count","_loadCount","countUrl","_getCountUrl","handleSuccess","_getCountValue","getCount","_formatNumber","toFixed","_passOptionToShares","optionName","_normalizeShare","shareOption","jsSocials","methodArgs","methodResult","setDefaults","component","popup","blank","email","twitter","facebook","share_count","vkontakte","googleplus","linkedin","pinterest","stumbleupon","views","telegram","whatsapp","line","viber","pocket","messenger","acc","onclick","panel","nextElementSibling","cx","gcse"],"mappings":"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","file":"devopsdays-min.js"} \ No newline at end of file diff --git a/themes/devopsdays-theme/static/js/googlemaps_label-min.js b/themes/devopsdays-theme/static/js/googlemaps_label-min.js new file mode 100644 index 00000000000..ca545bbe0c6 --- /dev/null +++ b/themes/devopsdays-theme/static/js/googlemaps_label-min.js @@ -0,0 +1,3 @@ +eval(function(e,a,t,r,g,n){if(g=function(e){return(e35?String.fromCharCode(e+29):e.toString(36))},!"".replace(/^/,String)){for(;t--;)n[g(t)]=r[t]||g(t);r=[function(e){return n[e]}],g=function(){return"\\w+"},t=1}for(;t--;)r[t]&&(e=e.replace(new RegExp("\\b"+g(t)+"\\b","g"),r[t]));return e}('8 t(a){2.3=a;2.6=X.1v("1V");2.6.4.L="R: 1g; 15: 1A;";2.p=X.1v("1V");2.p.4.L=2.6.4.L;2.p.23("2L","1Q w;");2.p.23("2w","1Q w;");2.v=X.1v("2o");2.v.4.L="R: 1g; z-2l: 2g; I: 16;";2.v.4.1b="-2a";2.v.4.1w="-2Y";2.v.2V="22://5.1X.1T/1R/1P/1M/2x.2v"}t.s=W 7.5.2n();t.s.2m=8(){r g=2;r l=w;r c=w;r o;r f;r i,12;r n;r d;r m=20;r h="29(22://5.1X.1T/1R/1P/1M/28.27)";r j=8(e){9(e.24){e.24()}e.2R=G;9(e.1Z){e.1Z()}};r k=8(){g.3.1W(2J)};2.1n().1S.S(2.6);2.1n().2D.S(2.p);2.1n().1S.S(2.v);2.1p=[7.5.q.M(2.p,"1N",8(e){9(g.3.N()||g.3.U()){2.4.19="1Y";7.5.q.B(g.3,"1N",e)}}),7.5.q.M(2.p,"1U",8(e){9((g.3.N()||g.3.U())&&!c){2.4.19=g.3.2r();7.5.q.B(g.3,"1U",e)}}),7.5.q.M(2.p,"1J",8(e){i=0;12=0;c=w;9(g.3.N()){l=G;2.4.19=h}9(g.3.N()||g.3.U()){7.5.q.B(g.3,"1J",e)}j(e)}),7.5.q.M(X,"1G",8(a){r b;9(l){l=w;g.p.4.19="1Y";7.5.q.B(g.3,"1G",a)}9(c){a.E=o;n=G;9(d){b=g.Q().1i(g.3.11());b.y+=m;g.3.J(g.Q().1E(b));2k{g.3.1W(7.5.2j.2i);2h(k,2f)}2e(e){}g.v.4.I="16"}g.3.T(f);c=w;7.5.q.B(g.3,"1D",a)}}),7.5.q.u(g.3.2d(),"2c",8(a){r b;9(l){a.E=W 7.5.2b(a.E.1d()-i,a.E.1c()-12);9(c){o=a.E;b=g.Q().1i(a.E);9(d){g.v.4.Y=b.x+"A";g.v.4.P=b.y+"A";g.v.4.I="";b.y-=m}g.3.J(g.Q().1E(b));9(d){g.p.4.P=(b.y+m)+"A"}7.5.q.B(g.3,"1C",a)}V{i=a.E.1d()-g.3.11().1d();12=a.E.1c()-g.3.11().1c();f=g.3.1a();g.3.T(1B);d=g.3.D("14");c=G;7.5.q.B(g.3,"1z",a)}}}),7.5.q.M(2.p,"1y",8(e){9(g.3.N()||g.3.U()){9(n){n=w}V{7.5.q.B(g.3,"1y",e);j(e)}}}),7.5.q.M(2.p,"1x",8(e){9(g.3.N()||g.3.U()){7.5.q.B(g.3,"1x",e);j(e)}}),7.5.q.u(2.3,"1z",8(a){9(!c){d=2.D("14")}}),7.5.q.u(2.3,"1C",8(a){9(!c){9(d){g.J(m);g.6.4.K=1B+(2.D("18")?-1:+1)}}}),7.5.q.u(2.3,"1D",8(a){9(!c){9(d){g.J(0)}}}),7.5.q.u(2.3,"2X",8(){g.J()}),7.5.q.u(2.3,"2W",8(){g.T()}),7.5.q.u(2.3,"2U",8(){g.17()}),7.5.q.u(2.3,"2T",8(){g.17()}),7.5.q.u(2.3,"2S",8(){g.1t()}),7.5.q.u(2.3,"2Q",8(){g.1f()}),7.5.q.u(2.3,"2P",8(){g.1e()}),7.5.q.u(2.3,"2O",8(){g.Z()}),7.5.q.u(2.3,"2M",8(){g.Z()})]};t.s.2K=8(){r i;2.6.1r.1h(2.6);2.p.1r.1h(2.p);2.v.1r.1h(2.v);26(i=0;i<2.1p.2I;i++){7.5.q.2G(2.1p[i])}};t.s.2F=8(){2.1f();2.1t();2.Z()};t.s.1f=8(){r a=2.3.D("1j");9(F a.2E==="H"){2.6.13=a;2.p.13=2.6.13}V{2.6.13="";2.6.S(a);a=a.2C(G);2.p.S(a)}};t.s.1t=8(){2.p.2B=2.3.2A()||""};t.s.Z=8(){r i,C;2.6.1o=2.3.D("1m");2.p.1o=2.6.1o;2.6.4.L="";2.p.4.L="";C=2.3.D("C");26(i 2z C){9(C.2y(i)){2.6.4[i]=C[i];2.p.4[i]=C[i]}}2.1L()};t.s.1L=8(){2.6.4.R="1g";2.6.4.15="1A";9(F 2.6.4.O!=="H"&&2.6.4.O!==""){2.6.4.1K="1O(O="+(2.6.4.O*2u)+")"}2.p.4.R=2.6.4.R;2.p.4.15=2.6.4.15;2.p.4.O=0.2H;2.p.4.1K="1O(O=1)";2.1e();2.J();2.17()};t.s.1e=8(){r a=2.3.D("1q");2.6.4.1b=-a.x+"A";2.6.4.1w=-a.y+"A";2.p.4.1b=-a.x+"A";2.p.4.1w=-a.y+"A"};t.s.J=8(a){r b=2.Q().1i(2.3.11());9(F a==="H"){a=0}2.6.4.Y=b.x+"A";2.6.4.P=(b.y-a)+"A";2.p.4.Y=2.6.4.Y;2.p.4.P=2.6.4.P;2.T()};t.s.T=8(){r a=(2.3.D("18")?-1:+1);9(F 2.3.1a()==="H"){2.6.4.K=2t(2.6.4.P,10)+a;2.p.4.K=2.6.4.K}V{2.6.4.K=2.3.1a()+a;2.p.4.K=2.6.4.K}};t.s.17=8(){9(2.3.D("1l")){2.6.4.I=2.3.2s()?"2N":"16"}V{2.6.4.I="16"}2.p.4.I=2.6.4.I};8 1k(a){a=a||{};a.1j=a.1j||"";a.1q=a.1q||W 7.5.2q(0,0);a.1m=a.1m||"2p";a.C=a.C||{};a.18=a.18||w;9(F a.1l==="H"){a.1l=G}9(F a.14==="H"){a.14=G}9(F a.21==="H"){a.21=G}9(F a.1I==="H"){a.1I=w}2.1H=W t(2);7.5.1s.25(2,1F)}1k.s=W 7.5.1s();1k.s.1u=8(a){7.5.1s.s.1u.25(2,1F);2.1H.1u(a)};',62,185,"||this|marker_|style|maps|labelDiv_|google|function|if||||||||||||||||eventDiv_|event|var|prototype|MarkerLabel_|addListener|crossDiv_|false||||px|trigger|labelStyle|get|latLng|typeof|true|undefined|display|setPosition|zIndex|cssText|addDomListener|getDraggable|opacity|top|getProjection|position|appendChild|setZIndex|getClickable|else|new|document|left|setStyles||getPosition|cLngOffset|innerHTML|raiseOnDrag|overflow|none|setVisible|labelInBackground|cursor|getZIndex|marginLeft|lng|lat|setAnchor|setContent|absolute|removeChild|fromLatLngToDivPixel|labelContent|MarkerWithLabel|labelVisible|labelClass|getPanes|className|listeners_|labelAnchor|parentNode|Marker|setTitle|setMap|createElement|marginTop|dblclick|click|dragstart|hidden|1000000|drag|dragend|fromDivPixelToLatLng|arguments|mouseup|label|draggable|mousedown|filter|setMandatoryStyles|mapfiles|mouseover|alpha|en_us|return|intl|overlayImage|com|mouseout|div|setAnimation|gstatic|pointer|stopPropagation||clickable|https|setAttribute|preventDefault|apply|for|cur|closedhand_8_8|url|8px|LatLng|mousemove|getMap|catch|1406|1000002|setTimeout|BOUNCE|Animation|try|index|onAdd|OverlayView|img|markerLabels|Point|getCursor|getVisible|parseInt|100|png|ondragstart|drag_cross_67_16|hasOwnProperty|in|getTitle|title|cloneNode|overlayMouseTarget|nodeType|draw|removeListener|01|length|null|onRemove|onselectstart|labelstyle_changed|block|labelclass_changed|labelanchor_changed|labelcontent_changed|cancelBubble|title_changed|labelvisible_changed|visible_changed|src|zindex_changed|position_changed|9px".split("|"),0,{})); +//# sourceMappingURL=./googlemaps_label-min.js.map + diff --git a/themes/devopsdays-responsive/static/manifest.json b/themes/devopsdays-theme/static/manifest.json similarity index 100% rename from themes/devopsdays-responsive/static/manifest.json rename to themes/devopsdays-theme/static/manifest.json diff --git a/themes/devopsdays-theme/static/ms-icon-144x144.png b/themes/devopsdays-theme/static/ms-icon-144x144.png new file mode 100644 index 00000000000..84f00f8aec7 Binary files /dev/null and b/themes/devopsdays-theme/static/ms-icon-144x144.png differ diff --git a/themes/devopsdays-theme/static/ms-icon-150x150.png b/themes/devopsdays-theme/static/ms-icon-150x150.png new file mode 100644 index 00000000000..15945890fee Binary files /dev/null and b/themes/devopsdays-theme/static/ms-icon-150x150.png differ diff --git a/themes/devopsdays-theme/static/ms-icon-310x310.png b/themes/devopsdays-theme/static/ms-icon-310x310.png new file mode 100644 index 00000000000..ad4841ebc3d Binary files /dev/null and b/themes/devopsdays-theme/static/ms-icon-310x310.png differ diff --git a/themes/devopsdays-theme/static/ms-icon-70x70.png b/themes/devopsdays-theme/static/ms-icon-70x70.png new file mode 100644 index 00000000000..27c97bb87aa Binary files /dev/null and b/themes/devopsdays-theme/static/ms-icon-70x70.png differ diff --git a/themes/devopsdays-theme/static/theme.toml b/themes/devopsdays-theme/static/theme.toml new file mode 100644 index 00000000000..023f2888a88 --- /dev/null +++ b/themes/devopsdays-theme/static/theme.toml @@ -0,0 +1,15 @@ +# theme.toml template for a Hugo theme +# See https://github.com/spf13/hugoThemes#themetoml for an example + +name = "devopsdays-theme" +license = "Apache2" +licenselink = "https://github.com/devopsdays/devopsdays-theme/blob/master/LICENSE" +description = "" +homepage = "https://github.com/devopsdays/devopsdays-theme" +tags = ["", ""] +features = ["", ""] +min_version = 0.16 + +[author] + name = "Matt Stratton" + homepage = "https://www.mattstratton.io" diff --git a/themes/devopsdays-theme/theme.toml b/themes/devopsdays-theme/theme.toml new file mode 100644 index 00000000000..9061e2d22bb --- /dev/null +++ b/themes/devopsdays-theme/theme.toml @@ -0,0 +1,16 @@ +# theme.toml template for a Hugo theme +# See https://github.com/spf13/hugoThemes#themetoml for an example + +name = "devopsdays Theme" +license = "MIT" +licenselink = "https://github.com/devopsdays/devopsdays-theme/blob/master/LICENSE.md" +description = "" +homepage = "https://github.com/devopsdays/devopsdays-theme/" +tags = ["", ""] +features = ["", ""] +min_version = 0.18 +theme_version = 1.0.2 + +[author] + name = "Matt Stratton" + homepage = "https://www.mattstratton.io" diff --git a/utilities/README.md b/utilities/README.md index ff4ad5b174e..b322c7ce632 100644 --- a/utilities/README.md +++ b/utilities/README.md @@ -5,16 +5,25 @@ These scripts help devopsdays organizers manage their events. The technical details and guidelines for contributing to this repository are outlined in [CONTRIBUTING.md](../CONTRIBUTING.md). -New utilities and updates to existing utilities are welcome, as are suggestions for default content. +New utilities and updates to existing utilities are welcome, as are suggestions for default content. Add new script in [contrib](contrib/). ## Events -Use [make_new_event.sh](make_new_event.sh) to create a new event. +Use [add_new_event.sh](add_new_event.sh) to add a new event. 1. If your city name contains spaces or special characters, the script will remove them for purposes of the event stub, which will be used in the URL and have a name like `yyyy-city`. 1. The script will create a data file for your event in `data/events/yyyy-city.yml`. This is where you will configure many of your updates and customizations. In particular, you need to list your local organizer team here. 1. The script will populate your event directory in `content/events/yyyy-city` with default content. You should edit it as desired. -1. Once you have created a logo graphic, place it in `static/events/yyyy-city/logo.png`. (The file MUST be called `logo.png`.) The sample welcome page has a commented-out element to display a logo named in this way. +1. Once you have created a logo graphic, place it in `static/events/yyyy-city/logo.png`. (The file MUST be called `logo.png`.) The sample welcome page has a commented-out element to display a logo named in this way. For front-page use, you also need a square version in `static/events/yyyy-city/logo-square.jpg` (url configurable in your datafile). + +### Event Square Logo + +To customize the logo that appears on the root of devopsdays.org, place a square file (jpg format only) in `static/events/yyyy-city`. It must be named `logo-square.jpg` and should be a minimum 300px x 300px, but optimizally should be 600px x 600px. + +### Reference Content + +* The gears logo is available in AI, PSD and SVG format in the repo at [devopsdays/devopsdays-assets](https://github.com/devopsdays/devopsdays-assets) +* Prospectuses for other events you may want to reference are also available in the [devopsdays/devopsdays-assets](https://github.com/devopsdays/devopsdays-assets) repo. ## Sponsors @@ -22,39 +31,76 @@ Many sponsors are sponsors for multiple devopsdays. If a sponsor listing already The sample datafile has some sponsor levels pre-populated; edit as desired. You will want to decide what's in your sponsor packages before accepting most types of sponsors (other than Community). -### Creating a new sponsor +### Adding a new sponsor -Use [create_sponsors.sh](create_sponsors.sh) to easily create new sponsors. +Use [add_sponsors.sh](add_sponsors.sh) to easily add new sponsors. (Only do this if the sponsor doesn't already exist.) -1. Sponsors need a file in the data directory, as such: `data/sponsors/sponsorname.yml`. Before creating a new one, look to see if there is an old one, possibly with a date prepended. If it has the right URL and logo, you can use it. +1. Sponsors need a file in the data directory, as such: `data/sponsors/sponsorname.yml`. Before creating a new one, look to see if there is an old one, possibly with a date prepended. If it has the right URL and logo, you should use it instead of creating a new one. 1. Put the images for your sponsors in the `static/img/sponsors` directory. They need to be PNG files and named exactly after the name of the sponsor in your event file (and the corresponding sponsor data file), i.e., `static/img/sponsors/sponsorname.png`. 1. Add the new sponsor to your event's datafile with the appropriate level. -See [make_sponsors.rb](make_sponsors.rb) as well. +See [contrib/make_sponsors.rb](make_sponsors.rb) for another option. ### Updating a sponsor -If you want to update a sponsor, keep in mind that we don't want to retroactively change history for past events. See this [previous discussion](https://github.com/devopsdays/devopsdays-web/pull/503) for guidance. +If you want to update a sponsor, keep in mind that we don't want to retroactively change history for past events. See this [previous discussion](https://github.com/devopsdays/devopsdays-web/pull/503) for guidance. Basically you need to preserve past history before defining a changed default. ### Sponsor logos Guidelines regarding sponsor logo files and formatting: -* The dimensions of the image file must be 200px square. +* The dimensions of the image file must be at least 200px wide. * The background must be either white or transparent. -* There must *not* be a border (one will be added using CSS). -All logos will be constrained, via markup, to 100px square; combined with the image file dimensions, this allows for high-density display (ex. Retina) compatibility. +All logos will be resized at release time, to 200px wide. Versions for high-density display (ex. Retina) will also be created. It is recommended that you do not use a sponsor logo that is smaller than 200px wide to keep from quality degradation at resize time. + +## Team members + +See the example team members listed in the generated data file. You can now add additional fields for each team member, as well as a photo. The photo must be in JPG format, and should be a minimum 300px x 300px, but optimally 600px x 600px. These images are located in the `static/events/YYYY-CITY/organizers` directory. + +## Social sharing image + +A sharing image is added to the Open Graph tags for your event pages, to improve the sharing on social networks such as Facebook (or in Slack). This image must be named `sharing.jpg` and located in `static/events/YYYY-CITY`. It should be a minimum 1200px x 630px, and use ratio: 1.91:1. -Use [resize_sponsor_logo.sh](resize_sponsor_logo.sh) to convert a logo centered into the right dimensions. +If no image is provided, then the meta tag will not be created. Facebook might try to infer it, but the links shared will just likely have no images. ## Speakers -Use [add_speakers.sh](add_speakers.sh) to add speakers and talks to an existing event. Allow the "speakers" item in the navigation for a link. +Use [add_speakers.sh](add_speakers.sh) to add speakers and talks to an existing event. It will produce speaker-specific pages that link to their talk pages. + +You can set additional optional frontmatter for speaker files: + +``` +Website = "" +Facebook = "" +Linkedin = "" +Pronouns = "" +Github = "" +Twitter = "" +``` + +If you have a two-speaker talk, create both speakers, add the talk under one of them, and set the talk file in `content/events/2017-ponyville/program/rainbow-dash.md` with a Speakers attribute like this: + +``` +Speakers = ["rainbow-dash","twilight-sparkle"] +``` ### Program -The program is driven by the program.md file in your event (copied from the [sample program.md](examples/sample-event/program.md). To generate a data-driven program, use [add_speakers.sh](add_speakers.sh) and then link to the talks from your program.md file. Allow the "program" item in the navigation for a link. +Use [add_program.sh](add_program.sh) to add the program for your event. The program template expects 4 full talks each day and lists default times, but you can customize. The program data is stored in the event datafile such as `data/events/2017-ponyville.yml`. You don't need to know any or all of your speakers when adding the sample program, but if you have selected speakers you can list them on the program with this script. + ### Speaker Images -The headshots for your speaker images should be exactly 500px wide. (They display at 250px wide, but add them at 500px wide in order to make them look good on retina displays.) They must be in JPG format and named with the `.jpg` extension. +The headshots for your speaker images should be approximately 500px wide. They will display fluidly based upon the screen size and versions for high-density display (ex. Retina) will also be created at build time. They must be in JPG format and named with the `.jpg` extension. + +# Adding slides and video + +After the event, you can set additional optional frontmatter for talk files such as `content/events/2017-ponyville/program/rainbow-dash.md`: + +``` +youtube = "" +vimeo = "" +speakerdeck = "" +slideshare = "" +slides = "" +``` diff --git a/utilities/add_new_event.sh b/utilities/add_new_event.sh new file mode 100644 index 00000000000..7c9f5764d43 --- /dev/null +++ b/utilities/add_new_event.sh @@ -0,0 +1,57 @@ +#!/bin/bash + +set -e + +# Detect OS for correct 'sed' syntax +OSNAME=`uname` +SEDCMD(){ + if [[ $OSNAME == 'Linux' ]]; then + sed -i "$@" + elif [[ $OSNAME == 'Darwin' ]]; then + sed -i '' "$@" + fi +} + +# We assume the current year (and also assume bash 3, because macs) +read -p "Enter your event year (default: $(date +"%Y")): " year +[ -z "${year}" ] && year='2017' + +# We urlize the city slug +read -p "Enter your city name: " city +city_slug=$(echo $city | tr '-' ' ' | tr -dc '[:alpha:][:blank:]' | tr '[:upper:]' '[:lower:]'| tr 'āáǎàãâēéěèīíǐìōóǒòöūúǔùǖǘǚǜü' 'aaaaaaeeeeiiiiooooouuuuuuuuu' | tr ' ' '-') + +# Get event twitter handle +read -p "Enter your devopsdays event twitter handle (defaults to devopsdays): " twitter +[ -z "${twitter}" ] && twitter='devopsdays' +# remove @ if they added it +twitter=$(echo $twitter | sed 's/@//') + +# We use the term event_slug in the hugo files too +event_slug=$year-$city_slug + +# Create default event datafile +eventdatafile="../data/events/$event_slug.yml" +cp examples/data/events/yyyy-city.yml $eventdatafile + +SEDCMD "s/YYYY/$year/" $eventdatafile +SEDCMD "s/City/$city/" $eventdatafile +SEDCMD "s/yourlocation/$city/" $eventdatafile +SEDCMD "s/yyyy-city/$event_slug/" $eventdatafile +SEDCMD "s/devopsdayscityabbr/$twitter/" $eventdatafile + +# Name the email lists +sed -i '' "s/city-year/$city_slug-$year/" $eventdatafile + +# Seed initial files for event +cp -r examples/content/events/yyyy-city ../content/events/$event_slug + +# Setting the creation date at the time the event is instantiated +datestamp=$(date +%Y-%m-%dT%H:%M:%S%z | sed 's/^\(.\{22\}\)/\1:/') +sed -i '' "s/2000-01-01T01:01:01-06:00/$datestamp/" ../content/events/$event_slug/*.md +sed -i '' "s/yyyy-city/$event_slug/" ../content/events/$event_slug/index.md +sed -i '' "s/CITY/$city/" ../content/events/$event_slug/*.md +sed -i '' "s/YYYY/$year/" ../content/events/$event_slug/*.md + +echo " " +echo "Check your event at http://localhost:1313/events/$event_slug/" +echo "Add your team members to $eventdatafile before sending pull request" diff --git a/utilities/add_program.sh b/utilities/add_program.sh new file mode 100644 index 00000000000..9c61434786f --- /dev/null +++ b/utilities/add_program.sh @@ -0,0 +1,61 @@ +#!/bin/bash + +set -e + +# Detect OS for correct 'sed' syntax +OSNAME=`uname` +SEDCMD(){ + if [[ $OSNAME == 'Linux' ]]; then + sed -i "$@" + elif [[ $OSNAME == 'Darwin' ]]; then + sed -i '' "$@" + fi +} + +# Get year +read -p "Enter your event year (default: $(date +"%Y")): " year +[ -z "${year}" ] && year='2017' + +# Get city +read -p "Enter your city name: " city +city_slug=$(echo $city | tr '-' ' ' | tr -dc '[:alpha:][:blank:]' | tr '[:upper:]' '[:lower:]'| tr 'āáǎàãâēéěèīíǐìōóǒòöūúǔùǖǘǚǜü' 'aaaaaaeeeeiiiiooooouuuuuuuuu' | tr ' ' '-') +# Generate event slug +event_slug=$year-$city_slug + +# Get start and end dates + +day1=$(grep startdate ../data/events/$event_slug.yml | cut -f 2 -d " ") +day2=$(grep enddate ../data/events/$event_slug.yml | cut -f 2 -d " ") + +if [[ $day1 == '' ]] + then + echo "Set your dates before publishing a program." + exit 0 +fi + + +# uncomment link to program page +SEDCMD "s/# - name: program/ - name: program/" ../data/events/$event_slug.yml + +# Append program to datafile +cat examples/templates/program.yml >> ../data/events/$event_slug.yml + +# set correct start and end dates (manual intervention needed for events that aren't two-day) +SEDCMD "s/day1/$day1/g" ../data/events/$event_slug.yml +SEDCMD "s/day2/$day2/g" ../data/events/$event_slug.yml + + +# Display available speakers +echo "Available speakers: " +ls -1 ../content/events/$event_slug/speakers/ | cut -f 1 -d '.' + +read -p "Enter your number of full-talk speakers (default: 8)): " num +[ -z "${num}" ] && num='8' + +for talknumber in $(seq 1 $num); +do + read -p "Enter speaker $talknumber in firstname-lastname form; use CTRL+C to stop... " speaker_slug + SEDCMD "s/talk-$talknumber/$speaker_slug/" ../data/events/$event_slug.yml +done + + diff --git a/utilities/add_speakers.sh b/utilities/add_speakers.sh old mode 100755 new mode 100644 index dfa8f6e2440..d9828073396 --- a/utilities/add_speakers.sh +++ b/utilities/add_speakers.sh @@ -24,60 +24,83 @@ event_slug=$year-$city_slug # Create necessary directories mkdir -p ../content/events/$event_slug/program -mkdir -p ../data/speakers/$year/$city_slug/ +mkdir -p ../content/events/$event_slug/speakers mkdir -p ../static/events/$event_slug/speakers -# Create empty speakers file -cp examples/speakers/speakers.md ../content/events/$event_slug/ # Set the creation date to current timestamp datestamp=$(date +%Y-%m-%dT%H:%M:%S%z | sed 's/^\(.\{22\}\)/\1:/') -SEDCMD "s/2000-01-01T01:01:01-06:00/$datestamp/" ../content/events/$event_slug/speakers.md + +# Create empty speakers page file (will be auto-filled for display) +speakerspage="../content/events/$event_slug/speakers.md" +cp examples/content/events/yyyy-city/speakers.md $speakerspage +SEDCMD "s/2000-01-01T01:01:01-06:00/$datestamp/" $speakerspage + +# uncomment link to speakers page +SEDCMD "s/# - name: speakers/ - name: speakers/" ../data/events/$event_slug.yml + # Prompt for inputting speakers while [ 1 ] do echo "Entering speakers; use CTRL+C to stop..." -# Gather info + +############## +# Speaker file +############## read -p "Enter speaker name: " speakername speaker_slug=$(echo $speakername | tr -dc '[:alpha:][:blank:]' | tr '[:upper:]' '[:lower:]'| tr 'āáǎàãâēéěèīíǐìōóǒòöūúǔùǖǘǚǜü' 'aaaaaaeeeeiiiiooooouuuuuuuuu' | tr ' ' '-') +# create speaker file +speakerfile="../content/events/$event_slug/speakers/$speaker_slug.md" +cp examples/templates/speakers-speaker-full-name.md $speakerfile + +SEDCMD "s/SPEAKERNAME/$speakername/" $speakerfile +SEDCMD "s/2000-01-01T01:01:01-06:00/$datestamp/" $speakerfile +SEDCMD "s/SPEAKERSLUG/$speaker_slug/" $speakerfile + +# twitter handle read -p "Enter speaker twitter handle (return for none): " twitter [ -z "${twitter}" ] && twitter='' # remove @ if they added it twitter=$(echo $twitter | sed 's/@//') +SEDCMD "s/SPEAKERTWITTER/$twitter/" $speakerfile +# bio read -p "Enter speaker bio (return for none): " bio [ -z "${bio}" ] && bio='' +SEDCMD "s/SPEAKERBIO/$bio/" $speakerfile + +#################### +# Populate talk file +#################### +talkfile="../content/events/$event_slug/program/$speaker_slug.md" +cp examples/templates/program-speaker-full-name.md $talkfile + +SEDCMD "s/2000-01-01T01:01:01-06:00/$datestamp/" $talkfile +SEDCMD "s/SPEAKERSLUG/$speaker_slug/" $talkfile +# talk title read -p "Enter speaker talk title (return for none): " title [ -z "${title}" ] && title='' +SEDCMD "s/TALKTITLE/$title/" $talkfile +# talk description read -p "Enter speaker talk description (return for none): " abstract [ -z "${abstract}" ] && abstract='' +SEDCMD "s/ABSTRACT/$abstract/" $talkfile +####################### +# Set speaker image +####################### -# Populate speaker data file -cp examples/speakers/speaker-full-name.yml ../data/speakers/$year/$city_slug/$speaker_slug.yml +read -p "Enter path to speaker image PNG: " speakerimage +[ -z "${speakerimage}" ] && speakerimage='' -SEDCMD "s/SPEAKERNAME/$speakername/" ../data/speakers/$year/$city_slug/$speaker_slug.yml -SEDCMD "s/SPEAKERTWITTER/$twitter/" ../data/speakers/$year/$city_slug/$speaker_slug.yml -SEDCMD "s/SPEAKERBIO/$bio/" ../data/speakers/$year/$city_slug/$speaker_slug.yml - -# Set default image - -cp examples/speakers/speaker-full-name.jpg ../static/events/$event_slug/speakers/$speaker_slug.jpg - -# Populate talk file - -cp examples/speakers/speaker-full-name.md ../content/events/$event_slug/program/$speaker_slug.md - -SEDCMD "s/SPEAKERNAME/$speakername/" ../content/events/$event_slug/program/$speaker_slug.md -SEDCMD "s/SPEAKERSLUG/$speaker_slug/" ../content/events/$event_slug/program/$speaker_slug.md -SEDCMD "s/TITLE/$title/" ../content/events/$event_slug/program/$speaker_slug.md -SEDCMD "s/ABSTRACT/$abstract/" ../content/events/$event_slug/program/$speaker_slug.md - -# Set the creation date to current timestamp -datestamp=$(date +%Y-%m-%dT%H:%M:%S%z | sed 's/^\(.\{22\}\)/\1:/') -SEDCMD "s/2000-01-01T01:01:01-06:00/$datestamp/" ../content/events/$event_slug/program/$speaker_slug.md +if [ $speakerimage ]; then + cp "$speakerimage" ../static/events/$event_slug/speakers/$speaker_slug.png + SEDCMD "s/image = \"\"/image = \"$speaker_slug.png\"/" $speakerfile +else + echo "Put speaker image at ../static/events/$event_slug/speakers/$speaker_slug.png before creating the pull request, if desired." +fi done diff --git a/utilities/create_sponsors.sh b/utilities/add_sponsors.sh old mode 100755 new mode 100644 similarity index 61% rename from utilities/create_sponsors.sh rename to utilities/add_sponsors.sh index 1c85b225cd1..83642d7229b --- a/utilities/create_sponsors.sh +++ b/utilities/add_sponsors.sh @@ -4,7 +4,7 @@ set -e # Get year read -p "Enter your event year (default: $(date +"%Y")): " year -[ -z "${year}" ] && year='2016' +[ -z "${year}" ] && year='2017' # Get city read -p "Enter your city name: " city @@ -21,28 +21,44 @@ echo "Adding new sponsors; use CTRL+C to stop..." read -p "Enter sponsor name: " sponsorname sponsor_slug=$(echo $sponsorname | tr '-' ' ' | tr -dc '[:alpha:][:blank:]' | tr '[:upper:]' '[:lower:]'| tr 'āáǎàãâēéěèīíǐìōóǒòöūúǔùǖǘǚǜü' 'aaaaaaeeeeiiiiooooouuuuuuuuu' | tr ' ' '-') -if [ -f ../data/sponsors/$sponsor_slug.yml ]; +# set default sponsor yaml file +sponsorfile="../data/sponsors/$sponsor_slug.yml" + +if [ -f $sponsorfile ]; then echo "Sponsor already exists" exit 0 fi + read -p "Enter sponsor url: " url [ -z "${url}" ] && url='' +# twitter handle +read -p "Enter sponsor twitter handle (return for none): " twitter +[ -z "${twitter}" ] && twitter='' +# remove @ if they added it +twitter=$(echo $twitter | sed 's/@//') + + read -p "Enter path to 200x200 PNG logo: " logo [ -z "${logo}" ] && logo='' # Populate data file -cp examples/sponsor.yml ../data/sponsors/$sponsor_slug.yml +cp examples/data/sponsors/sponsorname.yml $sponsorfile -sed -i '' "s/SPONSORNAME/$sponsorname/" ../data/sponsors/$sponsor_slug.yml -sed -i '' "s%URL%$url%" ../data/sponsors/$sponsor_slug.yml +sed -i '' "s/SPONSORNAME/$sponsorname/" $sponsorfile +sed -i '' "s%URL%$url%" $sponsorfile +sed -i '' "s/TWITTER/$twitter/" $sponsorfile # Set logo -cp "$logo" ../static/img/sponsors/$sponsor_slug.png +if [ $logo ]; then + cp "$logo" ../static/img/sponsors/$sponsor_slug.png +else + echo "Set the sponsor logo at ../static/img/sponsors/$sponsor_slug.png before submitting PR." +fi echo "Add this to ../data/events/"$event_slug".yml under sponsors:" echo " - id: " $sponsor_slug diff --git a/utilities/make_sponsors.rb b/utilities/contrib/make_sponsors.rb similarity index 100% rename from utilities/make_sponsors.rb rename to utilities/contrib/make_sponsors.rb diff --git a/utilities/examples/content/events/yyyy-city/conduct.md b/utilities/examples/content/events/yyyy-city/conduct.md new file mode 100644 index 00000000000..fc9e7822729 --- /dev/null +++ b/utilities/examples/content/events/yyyy-city/conduct.md @@ -0,0 +1,35 @@ ++++ +Title = "Conduct" +Type = "event" +Description = "Code of conduct for devopsdays CITY YYYY" ++++ + +## ANTI-HARASSMENT POLICY + +Devopsdays is dedicated to providing a harassment-free conference experience for everyone, regardless of gender, sexual orientation, disability, physical appearance, body size, race, or religion. We do not tolerate harassment of conference participants in any form. Sexual language and imagery is not appropriate for any conference venue, including talks. Conference participants violating these rules may be sanctioned or expelled from the conference without a refund at the discretion of the conference organizers. + +Harassment includes offensive verbal comments related to gender, sexual orientation, disability, physical appearance, body size, race, religion, sexual images in public spaces, deliberate intimidation, stalking, following, harassing photography or recording, sustained disruption of talks or other events, inappropriate physical contact, and unwelcome sexual attention. Participants asked to stop any harassing behavior are expected to comply immediately. + +Exhibitors in the expo hall, sponsor or vendor booths, or similar activities are also subject to the anti-harassment policy. In particular, exhibitors should not use sexualized images, activities, or other material. Booth staff (including volunteers) should not use sexualized clothing/uniforms/costumes, or otherwise create a sexualized environment. + +If a participant engages in harassing behavior, the conference organizers may take any action they deem appropriate, including warning the offender or expulsion from the conference with no refund. + +If you are being harassed, notice that someone else is being harassed, or have any other concerns, please contact a member of conference staff immediately. + +Conference staff can be identified by distinct staff badges. Conference staff will be happy to help participants contact hotel/venue security or local law enforcement, provide escorts, or otherwise assist those experiencing harassment to feel safe for the duration of the conference. We value your attendance. + +We expect participants to adhere to the code of conduct at all conference venues and conference-related social events. + +## CODE OF CONDUCT + +I. I am an attendee at devopsdays, learning from and sharing with other devopsdays attendees in an effort to better myself and my industry. I co-create the experience with fellow attendees. I am prepared to give my energy, presence and sensitivity to creating the best possible experience for myself and others. + +II. I am coming to devopsdays to interact with people. I understand that imagery and language which is suggestive or derogatory will offend and make people uncomfortable. I also understand that people may have boundaries and sensibilities different from my own. I will accept without question when informed that something is offensive or unacceptable in the context of the devopsdays event. + +III. I will never intentionally harass or offend another attendee regardless of gender, sexual orientation, disability, appearance, size, race or religion and will not abide another attendee being harassed or offended. If I am aware that anyone is uncomfortable or unsafe, I will notify those giving offense and the devopsdays event organizers. + +IV. If I am offended or harassed, I will inform people around me who make me feel safe and the event organizers. If I feel safe, at my discretion, I will inform those giving offense of the specific actions with the hope that the other party is well-intentioned and ignorant, but I am under no obligation to do so. + +V. I understand that people are different and I attempt to be forgiving of others actions at the level of their sincere intent, but my priority is protecting my safety and the safety of others. I will act without hesitation or reservation until there are no question of the safety of all parties. + +VI. I trust the devopsdays organizers and attendees will co-create the best possible experience for everyone involved, as I will. I believe devopsdays is about empowering people and I will not forget I am empowered to create a safe and nurturing environment. If I or any other attendee violates this aspect of the event, I expect the conference organizers to protect the attendees by direct action, including expelling those in violation and contacting the proper authorities. diff --git a/utilities/examples/content/events/yyyy-city/contact.md b/utilities/examples/content/events/yyyy-city/contact.md new file mode 100644 index 00000000000..b6b8b6aa8d6 --- /dev/null +++ b/utilities/examples/content/events/yyyy-city/contact.md @@ -0,0 +1,15 @@ ++++ +Title = "Contact" +Type = "event" +Description = "Contact information for devopsdays CITY YYYY" ++++ + +If you'd like to contact us by email: {{< email_organizers >}} + +**Our local team** + +{{< list_organizers >}} + +**The core devopsdays organizer group** + +{{< list_core >}} diff --git a/utilities/examples/content/events/yyyy-city/index.md b/utilities/examples/content/events/yyyy-city/index.md new file mode 100644 index 00000000000..65b10843082 --- /dev/null +++ b/utilities/examples/content/events/yyyy-city/index.md @@ -0,0 +1,87 @@ ++++ +Title = "devopsdays CITY YYYY" +Type = "welcome" +aliases = ["/events/yyyy-city/welcome"] +Description = "devopsdays CITY YYYY" ++++ + + + +
      +
      + Dates +
      +
      + {{< event_start >}} - {{< event_end >}} +
      +
      + + + + + + + + + + + +
      +
      + Sponsors +
      +
      + {{< event_link page="sponsor" text="Sponsor the conference!" >}} +
      +
      + +
      +
      + Contact +
      +
      + {{< event_link page="contact" text="Get in touch with the organizers" >}} +
      +
      + + + diff --git a/utilities/examples/content/events/yyyy-city/location.md b/utilities/examples/content/events/yyyy-city/location.md new file mode 100644 index 00000000000..7e84ace16e0 --- /dev/null +++ b/utilities/examples/content/events/yyyy-city/location.md @@ -0,0 +1,10 @@ ++++ +Title = "Location" +Type = "event" +Description = "Location for devopsdays CITY YYYY" ++++ + +Watch this space for information about the venue including address, map/direction, parking/transit, and any hotel details. + + + diff --git a/utilities/examples/content/events/yyyy-city/program.md b/utilities/examples/content/events/yyyy-city/program.md new file mode 100644 index 00000000000..865a52a6f22 --- /dev/null +++ b/utilities/examples/content/events/yyyy-city/program.md @@ -0,0 +1,5 @@ ++++ +Title = "Program" +Type = "program" +Description = "Program for devopsdays CITY YYYY" ++++ diff --git a/utilities/examples/content/events/yyyy-city/propose.md b/utilities/examples/content/events/yyyy-city/propose.md new file mode 100644 index 00000000000..d864b06dbb2 --- /dev/null +++ b/utilities/examples/content/events/yyyy-city/propose.md @@ -0,0 +1,35 @@ ++++ +Title = "Propose" +Type = "event" +Description = "Propose a talk for devopsdays CITY YYYY" ++++ + {{< cfp_dates >}} + +
      + +There are three ways to propose a topic at devopsdays: +
        +
      1. A 30-minute talk presented during the conference, usually in the mornings.
      2. +
      3. An Ignite talk presented during the Ignite sessions (scheduling varies). These are 5 minutes slots with slides changing every 15 seconds (20 slides total).
      4. +
      5. Open Space: If you'd like to lead a group discussion during the attendee-suggested Open Space breakout sessions, it is not necessary to propose it ahead of time. Those topics are suggested in person at the conference. If you'd like to demo your product or service, you should sponsor the event and demo it at your table. +
      + +
      + +Choosing talks is part art, part science; here are some factors we consider when trying to assemble the best possible program for our local audience: + +- _broad appeal_: How will your talk play out in a room of people with a variety of backgrounds? Technical deep dives need more levels to provide value for the whole room, some of whom might not use your specific tool. +- _new local presenters_: You are the only one who can tell your story. We are very interested in the challenges and successes being experienced in our local area. We are happy to provide guidance/coaching for new speakers upon request. +- _under-represented voices_: We want to hear all voices, including those that may speak less frequently at similar events. Whether you're in a field not typically thought of as a technology field, you're in a large, traditional organization, or you're the only person at your organization with your background, we are interested in your unique experience. +- _original content_: We will consider talks that have already been presented elsewhere, but we prefer talks that the local area isn't likely to have already seen. +- _no third-party submissions_: This is a small community-driven event, and speakers need to be directly engaged with the organizers and attendees. If a PR firm or your marketing department is proposing the talk, you've already shown that as a speaker you're distant from the process. +- _no vendor pitches_: As much as we value vendors and sponsors, we are not going to accept a talk that appears to be a pitch for your product. + +
      + +How to submit a proposal: Send an email to [{{< email_proposals >}}] with the following information +
        +
      1. Type (presentation, panel discussion, ignite)
      2. +
      3. Proposal Title (can be changed later)
      4. +
      5. Description (several sentences explaining what attendees will learn)
      6. +
      diff --git a/utilities/examples/content/events/yyyy-city/registration.md b/utilities/examples/content/events/yyyy-city/registration.md new file mode 100644 index 00000000000..b37e4a3ee7a --- /dev/null +++ b/utilities/examples/content/events/yyyy-city/registration.md @@ -0,0 +1,11 @@ ++++ +Title = "Registration" +Type = "event" +Description = "Registration for devopsdays CITY YYYY" ++++ + +
      + +Embed registration iframe/link/etc. +
      +
      diff --git a/utilities/examples/content/events/yyyy-city/speakers.md b/utilities/examples/content/events/yyyy-city/speakers.md new file mode 100644 index 00000000000..2c386bfceaa --- /dev/null +++ b/utilities/examples/content/events/yyyy-city/speakers.md @@ -0,0 +1,5 @@ ++++ +Title = "Speakers" +Type = "speakers" +Description = "Speakers for devopsdays CITY YYYY" ++++ diff --git a/utilities/examples/content/events/yyyy-city/sponsor.md b/utilities/examples/content/events/yyyy-city/sponsor.md new file mode 100644 index 00000000000..4cd19251661 --- /dev/null +++ b/utilities/examples/content/events/yyyy-city/sponsor.md @@ -0,0 +1,66 @@ ++++ +Title = "Sponsor" +Type = "event" +Description = "Sponsor devopsdays CITY YYYY" ++++ + +We greatly value sponsors for this open event. If you are interested in sponsoring, please drop us an email at [{{< email_organizers >}}]. + +
      + +devopsdays is a self-organizing conference for practitioners that depends on sponsorships. We do not have vendor booths, sell product presentations, or distribute attendee contact lists. Sponsors have the opportunity to have short elevator pitches during the program and will get recognition on the website and social media before, during and after the event. Sponsors are encouraged to represent themselves by actively participating and engaging with the attendees as peers. Any attendee also has the opportunity to demo products/projects as part of an open space session. +

      +Gold sponsors get a full table and Silver sponsors a shared table where they can interact with those interested to come visit during breaks. All attendees are welcome to propose any subject they want during the open spaces, but this is a community-focused conference, so heavy marketing will probably work against you when trying to make a good impression on the attendees. +

      +The best thing to do is send engineers to interact with the experts at devopsdays on their own terms. +

      + + +


      diff --git a/utilities/examples/data/events/yyyy-city.yml b/utilities/examples/data/events/yyyy-city.yml new file mode 100644 index 00000000000..f95ae0d5550 --- /dev/null +++ b/utilities/examples/data/events/yyyy-city.yml @@ -0,0 +1,88 @@ +name: "yyyy-city" # The name of the event. Four digit year with the city name in lower-case, with no spaces. +year: "YYYY" # The year of the event. Make sure it is in quotes. +city: "City" # The displayed city name of the event. Capitalize it. +event_twitter: "devopsdayscityabbr" # Change this to the twitter handle for your event such as devopsdayschi or devopsdaysmsp +description: "Devopsdays is coming to City!" # Edit this to suit your preferences + +# All dates are in unquoted YYYY-MM-DD, like this: variable: 2016-01-05 +startdate: # The start date of your event. Leave blank if you don't have a venue reserved yet. +enddate: # The end date of your event. Leave blank if you don't have a venue reserved yet. + +# Leave CFP dates blank if you don't know yet, or set all three at once. +cfp_date_start: # start accepting talk proposals. +cfp_date_end: # close your call for proposals. +cfp_date_announce: # inform proposers of status + +cfp_open: "false" +cfp_link: "" + +registration_open: "false" +registration_link: "" + +event_logo: "logo.jpg" + +# Location +# +coordinates: "" # The coordinates of your city. Get Latitude and Longitude of a Point: http://itouchmap.com/latlong.html +location: "yourlocation" # Defaults to city, but you can make it the venue name. +# +location_address: "" #Optional - use the street address of your venue. This will show up on the welcome page if set. + +nav_elements: # List of pages you want to show up in the navigation of your page. + # - name: propose + # url: http://mycfp.com # The url setting is optional, and only if you want the navigation to link off-site + # - name: location + # icon: "map-o" # This is a font-awesome icon that will display on small screens. Choose at http://fontawesome.io/icons/ + # - name: registration + # icon: "pencil" + # - name: program + # icon: "book" + # - name: speakers + # icon: "microphone" + - name: sponsor + icon: "money" + - name: contact + icon: "envelope-o" + - name: conduct + icon: "handshake-o" + +# These are the same people you have on the mailing list and Slack channel. +team_members: # Name is the only required field for team members. + - name: "John Doe" + - name: "Jane Smith" + twitter: "devopsdays" + - name: "Sally Fields" + employer: "Acme Anvil Co." + github: "devopsdays" + facebook: "https://www.facebook.com/sally.fields" + linkedin: "https://www.linkedin.com/in/sallyfields" + website: "https://mattstratton.com" + image: "sally-fields.jpg" +organizer_email: "organizers-city-year@devopsdays.org" # Put your organizer email address here +proposal_email: "proposals-city-year@devopsdays.org" # Put your proposal email address here + +# List all of your sponsors here along with what level of sponsorship they have. +# Check data/sponsors/ to use sponsors already added by others. +sponsors: + - id: samplesponsorname + level: gold + - id: arresteddevops + level: community + +sponsors_accepted : "yes" # Whether you want "Become a XXX Sponsor!" link + +# In this section, list the level of sponsorships and the label to use. +# You may optionally include a "max" attribute to limit the number of sponsors per level. For +# unlimited sponsors, omit the max attribute or set it to 0. If you want to prevent all +# sponsorship for a specific level, it is best to remove the level. +sponsor_levels: + - id: gold + label: Gold +# max: 10 + - id: silver + label: Silver + max: 0 # This is the same as omitting the max limit. + - id: bronze + label: Bronze + - id: community + label: Community diff --git a/utilities/examples/sponsor.yml b/utilities/examples/data/sponsors/sponsorname.yml similarity index 77% rename from utilities/examples/sponsor.yml rename to utilities/examples/data/sponsors/sponsorname.yml index a33823d900b..019552eb0ef 100644 --- a/utilities/examples/sponsor.yml +++ b/utilities/examples/data/sponsors/sponsorname.yml @@ -1,2 +1,3 @@ name: "SPONSORNAME" url: "URL" +twitter: diff --git a/utilities/examples/speakers/speaker-full-name.md b/utilities/examples/speakers/speaker-full-name.md deleted file mode 100644 index f2eb19d4b32..00000000000 --- a/utilities/examples/speakers/speaker-full-name.md +++ /dev/null @@ -1,24 +0,0 @@ -+++ -date = "2000-01-01T01:01:01-06:00" -linktitle = "SPEAKERSLUG" -title = "SPEAKERNAME" -type = "talk" - -+++ - -
      -
      -

      Title: -TITLE -

      - -

      Description:

      - -

      -ABSTRACT -

      -

      - -

      -
      - diff --git a/utilities/examples/speakers/speaker-full-name.yml b/utilities/examples/speakers/speaker-full-name.yml deleted file mode 100644 index 44feee83b81..00000000000 --- a/utilities/examples/speakers/speaker-full-name.yml +++ /dev/null @@ -1,3 +0,0 @@ -name: "SPEAKERNAME" -twitter: "SPEAKERTWITTER" -bio: "SPEAKERBIO" diff --git a/utilities/examples/static/events/yyyy-city/speakers/speaker-full-name.jpg b/utilities/examples/static/events/yyyy-city/speakers/speaker-full-name.jpg new file mode 100644 index 00000000000..d32d0cd6bdb Binary files /dev/null and b/utilities/examples/static/events/yyyy-city/speakers/speaker-full-name.jpg differ diff --git a/utilities/examples/templates/program-speaker-full-name.md b/utilities/examples/templates/program-speaker-full-name.md new file mode 100644 index 00000000000..9d9db358222 --- /dev/null +++ b/utilities/examples/templates/program-speaker-full-name.md @@ -0,0 +1,10 @@ ++++ +Talk_date = "" +Talk_start_time = "" +Talk_end_time = "" +Title = "TALKTITLE" +Type = "talk" +Speakers = ["SPEAKERSLUG"] ++++ + +ABSTRACT diff --git a/utilities/examples/templates/program.yml b/utilities/examples/templates/program.yml new file mode 100644 index 00000000000..20fb9802ece --- /dev/null +++ b/utilities/examples/templates/program.yml @@ -0,0 +1,166 @@ +program: + - title: "Registration, Breakfast, Sponsors" + type: custom + date: day1 + start_time: "08:00" + end_time: "09:00" + - title: "Opening Welcome" + type: custom + date: day1 + start_time: "09:15" + end_time: "09:00" + - title: "talk-1" + type: talk + date: day1 + start_time: "09:15" + end_time: "09:45" + - title: "Sponsors" + type: custom + date: day1 + start_time: "09:45" + end_time: "09:55" + - title: "talk-2" + type: talk + date: day1 + start_time: "09:55" + end_time: "10:25" + - title: "Break" + type: custom + date: day1 + start_time: "10:25" + end_time: "10:40" + - title: "talk-3" + type: talk + date: day1 + start_time: "10:40" + end_time: "11:10" + - title: "Sponsors" + type: custom + date: day1 + start_time: "11:10" + end_time: "11:20" + - title: "talk-4" + type: talk + date: day1 + start_time: "11:20" + end_time: "11:50" + - title: "Lunch" + type: custom + date: day1 + start_time: "11:50" + end_time: "13:00" + - title: "Ignites" + type: custom + date: day1 + start_time: "13:00" + end_time: "13:30" + - title: "Open Space Opening" + type: custom + date: day1 + start_time: "13:30" + end_time: "14:00" + - title: "Open Space #1" + type: custom + date: day1 + start_time: "14:00" + end_time: "14:45" + - title: "Open Space #2" + type: custom + date: day1 + start_time: "15:00" + end_time: "15:45" + - title: "Open Space #3" + type: custom + date: day1 + start_time: "16:00" + end_time: "16:45" + - title: "Close Day" + type: custom + date: day1 + start_time: "16:45" + end_time: "17:00" + - title: "Evening event" + type: custom + date: day1 + start_time: "19:00" + end_time: "late" + - title: "Registration, Breakfast, Sponsors" + type: custom + date: day2 + start_time: "08:00" + end_time: "09:00" + - title: "Opening Welcome" + type: custom + date: day2 + start_time: "09:15" + end_time: "09:00" + - title: "talk-5" + type: talk + date: day2 + start_time: "09:15" + end_time: "09:45" + - title: "Sponsors" + type: custom + date: day2 + start_time: "09:45" + end_time: "09:55" + - title: "talk-6" + type: talk + date: day2 + start_time: "09:55" + end_time: "10:25" + - title: "Break" + type: custom + date: day2 + start_time: "10:25" + end_time: "10:40" + - title: "talk-7" + type: talk + date: day2 + start_time: "10:40" + end_time: "11:10" + - title: "Sponsors" + type: custom + date: day2 + start_time: "11:10" + end_time: "11:20" + - title: "talk-8" + type: talk + date: day2 + start_time: "11:20" + end_time: "11:50" + - title: "Lunch" + type: custom + date: day2 + start_time: "11:50" + end_time: "13:00" + - title: "Ignites" + type: custom + date: day2 + start_time: "13:00" + end_time: "13:30" + - title: "Open Space Opening" + type: custom + date: day2 + start_time: "13:30" + end_time: "14:00" + - title: "Open Space #1" + type: custom + date: day2 + start_time: "14:00" + end_time: "14:45" + - title: "Open Space #2" + type: custom + date: day2 + start_time: "15:00" + end_time: "15:45" + - title: "Open Space #3" + type: custom + date: day2 + start_time: "16:00" + end_time: "16:45" + - title: "Closing" + type: custom + date: day2 + start_time: "16:45" + end_time: "17:00" diff --git a/utilities/examples/templates/speakers-speaker-full-name.md b/utilities/examples/templates/speakers-speaker-full-name.md new file mode 100644 index 00000000000..8e4fe7386ae --- /dev/null +++ b/utilities/examples/templates/speakers-speaker-full-name.md @@ -0,0 +1,10 @@ ++++ +Title = "SPEAKERNAME" +Twitter = "SPEAKERTWITTER" +image = "" +type = "speaker" +linktitle = "SPEAKERSLUG" + ++++ + +SPEAKERBIO diff --git a/utilities/make_new_event.sh b/utilities/make_new_event.sh deleted file mode 100755 index c73d8e2dc10..00000000000 --- a/utilities/make_new_event.sh +++ /dev/null @@ -1,42 +0,0 @@ -#!/bin/bash - -set -e - -# We assume the current year (and also assume bash 3, because macs) -read -p "Enter your event year (default: $(date +"%Y")): " year -[ -z "${year}" ] && year='2017' - -# We urlize the city slug -read -p "Enter your city name: " city -city_slug=$(echo $city | tr '-' ' ' | tr -dc '[:alpha:][:blank:]' | tr '[:upper:]' '[:lower:]'| tr 'āáǎàãâēéěèīíǐìōóǒòöūúǔùǖǘǚǜü' 'aaaaaaeeeeiiiiooooouuuuuuuuu' | tr ' ' '-') - -read -p "Enter your devopsdays event twitter handle (defaults to devopsdays): " twitter -[ -z "${twitter}" ] && twitter='devopsdays' -# remove @ if they added it -twitter=$(echo $twitter | sed 's/@//') - -# We use the term event_slug in the hugo files too -event_slug=$year-$city_slug - - -cp examples/yyyy-city.yml ../data/events/$event_slug.yml -sed -i '' "s/YYYY/$year/" ../data/events/$event_slug.yml -sed -i '' "s/City/$city/" ../data/events/$event_slug.yml -sed -i '' "s/yourlocation/$city/" ../data/events/$event_slug.yml -sed -i '' "s/yyyy-city/$event_slug/" ../data/events/$event_slug.yml - -# this handles the email lists -sed -i '' "s/city-year/$city_slug-$year/" ../data/events/$event_slug.yml - -cp -r examples/sample-event ../content/events/$event_slug - -# The draft = true in the frontmatter is what prevents the sample event from showing on the site -# don't need the double quotes because there's no variable in the substitution -sed -i '' '/draft = true/d' ../content/events/$event_slug/* - -# setting the creation date at the time the event is instantiated -datestamp=$(date +%Y-%m-%dT%H:%M:%S%z | sed 's/^\(.\{22\}\)/\1:/') -sed -i '' "s/2000-01-01T01:01:01-06:00/$datestamp/" ../content/events/$event_slug/* - -sed -i '' "s/YYYY-city/$event_slug/" ../content/events/$event_slug/welcome.md -sed -i '' "s/devopsdaysyourtown/$twitter/" ../content/events/$event_slug/welcome.md diff --git a/utilities/resize_sponsor_logo.sh b/utilities/resize_sponsor_logo.sh deleted file mode 100755 index 5947332cdaa..00000000000 --- a/utilities/resize_sponsor_logo.sh +++ /dev/null @@ -1,20 +0,0 @@ -#!/usr/bin/env bash - -if [[ -z "$1" ]]; then - echo "This script will use the ImageMagick 'convert' tool to resize a sponsorimage." - echo -e "(How to install ImageMagick on a mac: 'brew install imagemagick')\n" - echo "The input filetype can be any imageformat, but as output you will always get a PNG" - echo -e "\nUsage: $0 [input filename]" - exit 1 -fi - -INFILE=$1 -OUTFILE=`echo ${INFILE} |sed -e 's/\..*/.png/g'` - -if [[ "${INFILE}" == "${OUTFILE}" ]]; then - ORIGFILE=`echo ${INFILE} |sed -e 's/\..*/_orig.png/g'` - mv -v ${INFILE} ${ORIGFILE} - INFILE=${ORIGFILE} -fi - -convert ${INFILE} -resize 190x190\> -size 200x200 xc:white +swap -gravity center -composite ${OUTFILE}