Full Code of toptal/gitignore.io for AI

master fd3331d935ac cached
97 files
314.8 KB
98.2k tokens
136 symbols
1 requests
Download .txt
Showing preview only (338K chars total). Download the full file or copy to clipboard to get everything.
Repository: toptal/gitignore.io
Branch: master
Commit: fd3331d935ac
Files: 97
Total size: 314.8 KB

Directory structure:
gitextract_u0sne320/

├── .dockerignore
├── .github/
│   ├── CODEOWNERS
│   ├── CODE_OF_CONDUCT.md
│   ├── CONTRIBUTING.md
│   ├── ISSUE_TEMPLATE.md
│   ├── dependabot.yml
│   └── workflows/
│       ├── close-inactive.yaml
│       └── update-templates.yml
├── .gitignore
├── .gitmodules
├── .swift-version
├── .swiftlint.yml
├── .travis/
│   ├── ci.sh
│   └── update-submodule.sh
├── Dockerfile
├── LICENSE.md
├── Localizations/
│   ├── README.md
│   ├── ar.json
│   ├── cs.json
│   ├── de.json
│   ├── el.json
│   ├── en.json
│   ├── fa.json
│   ├── fr.json
│   ├── id.json
│   ├── ja.json
│   ├── ko.json
│   ├── nl.json
│   ├── pt.json
│   ├── ro.json
│   ├── ru.json
│   ├── th.json
│   ├── tr.json
│   └── zh.json
├── Package.pins
├── Package.resolved
├── Package.swift
├── Procfile
├── Public/
│   ├── assets/
│   │   ├── main.css
│   │   └── main.js
│   ├── fonts/
│   │   ├── ProximaNova-Bold.otf
│   │   ├── ProximaNova-Light.otf
│   │   ├── ProximaNova-Regular.otf
│   │   ├── ProximaNova-Semibold.otf
│   │   └── ProximaNova-Thin.otf
│   └── sitemap.xml
├── README.md
├── Resources/
│   ├── Views/
│   │   ├── index.leaf
│   │   └── internal-linking.leaf
│   └── links.json
├── Sources/
│   ├── App/
│   │   ├── Controllers/
│   │   │   ├── InternalLinkingController.swift
│   │   │   ├── ReadOnlyTemplateManagerProtocol.swift
│   │   │   └── TemplateController.swift
│   │   ├── Enum/
│   │   │   └── TemplateSuffix.swift
│   │   ├── Extensions/
│   │   │   ├── Dictionary+Extensions.swift
│   │   │   ├── FileManager+Extensions.swift
│   │   │   ├── Router+Extensions.swift
│   │   │   ├── Sequence+Extensions.swift
│   │   │   ├── String+Extensions.swift
│   │   │   └── URL+Extensions.swift
│   │   ├── Middleware/
│   │   │   └── FileMiddlewareWithBasePrefix.swift
│   │   ├── Models/
│   │   │   ├── Dropdown.swift
│   │   │   ├── Flags.swift
│   │   │   ├── IgnoreTemplateModel.swift
│   │   │   ├── IgnoreTemplateModeling.swift
│   │   │   └── InternalLink.swift
│   │   ├── RouteHandlers/
│   │   │   ├── APIRouteHandlers.swift
│   │   │   ├── SiteRouteHandlers.swift
│   │   │   └── UrlResolver.swift
│   │   └── Server.swift
│   └── Run/
│       └── main.swift
├── Tests/
│   ├── AppTests/
│   │   ├── Controllers/
│   │   │   └── TemplateControllerTests.swift
│   │   ├── Extensions/
│   │   │   ├── Sequence+ExtensionsTest.swift
│   │   │   ├── String+ExtensionsTests.swift
│   │   │   └── URL+ExtensionsTests.swift
│   │   ├── Models/
│   │   │   └── IgnoreTemplateModelTests.swift
│   │   └── RouteHandlers/
│   │       ├── APIHandlersTests.swift
│   │       └── SiteHandlersTests.swift
│   └── LinuxMain.swift
├── app.json
├── docker-compose-dev.yml
├── docker-compose.yml
├── e2e-tests/
│   ├── api/
│   │   ├── index.test.js
│   │   └── show.test.js
│   ├── pages/
│   │   └── homepage.test.js
│   └── utils/
│       └── templates.js
├── jest-puppeteer.config.js
├── jest.config.js
├── package.json
├── src/
│   ├── css/
│   │   └── bootstrap-extract.css
│   ├── index.js
│   ├── js/
│   │   └── app.js
│   └── less/
│       ├── app.less
│       ├── internal-linking.less
│       ├── select2-toptal-theme.less
│       └── variables.less
└── webpack.config.js

================================================
FILE CONTENTS
================================================

================================================
FILE: .dockerignore
================================================
Packages
.build



================================================
FILE: .github/CODEOWNERS
================================================
* @toptal/external-sites


================================================
FILE: .github/CODE_OF_CONDUCT.md
================================================
# Contributor Covenant Code of Conduct

## Our Pledge

In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation.

## Our Standards

Examples of behavior that contributes to creating a positive environment include:

* Using welcoming and inclusive language
* Being respectful of differing viewpoints and experiences
* Gracefully accepting constructive criticism
* Focusing on what is best for the community
* Showing empathy towards other community members

Examples of unacceptable behavior by participants include:

* The use of sexualized language or imagery and unwelcome sexual attention or advances
* Trolling, insulting/derogatory comments, and personal or political attacks
* Public or private harassment
* Publishing others' private information, such as a physical or electronic address, without explicit permission
* Other conduct which could reasonably be considered inappropriate in a professional setting

## Our Responsibilities

Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior.

Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful.

## Scope

This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers.

## Enforcement

Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team at contact@gitignore.io. The project team will review and investigate all complaints, and will respond in a way that it deems appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately.

Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership.

## Attribution

This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, available at [http://contributor-covenant.org/version/1/4][version]

[homepage]: http://contributor-covenant.org
[version]: http://contributor-covenant.org/version/1/4/


================================================
FILE: .github/CONTRIBUTING.md
================================================
# Vision

Gitignore.io's vision is to become the authoritative source for `.gitignore` templates.  Gitignore provides templates for Operating Systems, IDEs and Programming Languages, but can eventually grow to encompass other creative spaces as well.

## Ways You Can Help

1. **Add Templates** - Add templates for Programming Languages, Operating Systems and IDEs at [@toptal/gitignore](https://github.com/toptal/gitignore)
2. **Explore** - Create better ways for users to interact with gitignore.io.


================================================
FILE: .github/ISSUE_TEMPLATE.md
================================================
# Issue Template

## Frequently Asked Questions


**Q:** How do I submit a new <code>.gitignore</code> templates?  
**A:** Please submit all new templates to [@toptal/gitignore](https://github.com/toptal/gitignore).

**Q:** How do I suggest modifications to existing `.gitignore` templates?  
**A:** Modifictions should come in the form of pull requests at [@toptal/gitignore](https://github.com/toptal/gitignore).

**Q:** Why don't Gitignore.io's templates don't look exactly like the templates on [@github/gitignore](https://github.com/github/gitignore)?  
**A:** Gitignore.io tried to maintain parity with [@github/gitignore](https://github.com/github/gitignore), but GitHub's template list doesn't include many languages, operating systems, and IDE's that developers use.  Gitignore.io's template list has over 100 more templates than GitHub's.

**Q:** Why is my local site empty?  
**A:** When the repository is cloned, the `--recursive` flag is necessary.  gitignore.io uses [@toptal/gitignore](https://github.com/toptal/gitignore) as its data source.  If  the repo isn't cloned recursively, templates will be missing.

## Issue

### Development Environment:

- [ ] Machine (Local, Container, Virtual):
- [ ] Operating System (Name/Version):
- [ ] Web Browser (Name/Version):
- [ ] Vapor Version:
- [ ] Swift Version:

### Expected Behavior:

### Actual Behavior:

### Reproduction Steps:


================================================
FILE: .github/dependabot.yml
================================================
version: 2
registries:
  docker-registry-gcr-io:
    type: docker-registry
    url: https://gcr.io
    username: _json_key
    password: "${{secrets.DOCKER_REGISTRY_GCR_IO_PASSWORD}}"

updates:
- package-ecosystem: docker
  directory: "/"
  schedule:
    interval: daily
    time: "07:00"
  pull-request-branch-name:
    separator: "-"
  open-pull-requests-limit: 10
  registries:
  - docker-registry-gcr-io


================================================
FILE: .github/workflows/close-inactive.yaml
================================================
name: Close inactive issues and PRs
on:
  workflow_dispatch:
  schedule:
    - cron: "30 1 * * *"

jobs:
  close-stale:
    runs-on: ubuntu-latest
    permissions:
      issues: write
      pull-requests: write
    steps:
      - uses: actions/stale@v6
        with:
          days-before-stale: 30
          days-before-close: 14
          stale-issue-label: "stale"
          stale-pr-label: "stale"

          exempt-issue-labels: backlog,triage,nostale
          exempt-pr-labels: backlog,triage,nostale

          stale-pr-message: "This PR is stale because it has been open for 30 days with no activity."
          close-pr-message: "This PR was closed because it has been inactive for 14 days since being marked as stale."

          stale-issue-message: "This issue is stale because it has been open for 30 days with no activity."
          close-issue-message: "This issue was closed because it has been inactive for 14 days since being marked as stale."

          repo-token: ${{ secrets.GITHUB_TOKEN }}


================================================
FILE: .github/workflows/update-templates.yml
================================================
name: Update Templates

on:
  workflow_dispatch:


jobs:
  build:

    runs-on: ubuntu-latest
    timeout-minutes: 15

    steps:
    - uses: actions/checkout@v3

    - name: Sync Templates
      run: |
        git submodule update --init
        cd gitignore
        git pull origin master

    - name: Create Pull Request
      uses: peter-evans/create-pull-request@v4
      with:
        token: ${{ secrets.GITHUB_TOKEN }}
        commit-message: Sync Templates Submodule
        title: Sync Templates Submodule
        branch: sync_templates
        base: master


================================================
FILE: .gitignore
================================================

# Created by https://www.gitignore.io/api/macos,linux,windows,vapor

### Linux ###
*~

# temporary files which can be created if a process still has a handle open of a deleted file
.fuse_hidden*

# KDE directory preferences
.directory

# Linux trash folder which might appear on any partition or disk
.Trash-*

# .nfs files are created when an open file is removed but is still being accessed
.nfs*

### macOS ###
*.DS_Store
.AppleDouble
.LSOverride

# Icon must end with two \r
Icon


# Thumbnails
._*

# Files that might appear in the root of a volume
.DocumentRevisions-V100
.fseventsd
.Spotlight-V100
.TemporaryItems
.Trashes
.VolumeIcon.icns
.com.apple.timemachine.donotpresent

# Directories potentially created on remote AFP share
.AppleDB
.AppleDesktop
Network Trash Folder
Temporary Items
.apdisk

### Vapor ###
Config/secrets

### Vapor Patch ###
Packages
.build
xcuserdata
*.xcodeproj

### Windows ###
# Windows thumbnail cache files
Thumbs.db
ehthumbs.db
ehthumbs_vista.db

# Folder config file
Desktop.ini

# Recycle Bin used on file shares
$RECYCLE.BIN/

# Windows Installer files
*.cab
*.msi
*.msm
*.msp

# Windows shortcuts
*.lnk

.git/credentials

cobertura.xml
# End of https://www.gitignore.io/api/macos,linux,windows,vapor


node_modules/
*.swp
yarn-error.log
.yarn/cache
.yarn/unplugged
.yarn/build-state.yml
.pnp.*
.idea

================================================
FILE: .gitmodules
================================================
[submodule "gitignore"]
	path = gitignore
	url = https://github.com/toptal/gitignore.git


================================================
FILE: .swift-version
================================================
4.1


================================================
FILE: .swiftlint.yml
================================================
disabled_rules: # rule identifiers to exclude from running
  - colon
  - comma
  - control_statement
  - line_length
opt_in_rules: # some rules are only opt-in
  - empty_count
  # Find all the available rules by running:
  # swiftlint rules
included: # paths to include during linting. `--path` is ignored if present.
  - Sources/App
  - Sources/GitignoreIOServer
excluded: # paths to ignore during linting. Takes precedence over `included`.

# configurable rules can be customized from this configuration file
# binary rules can set their severity level
force_cast: warning # implicitly
force_try:
  severity: warning # explicitly
# rules that have both warning and error levels, can set just the warning level
# implicitly
# line_length: 110
# they can set both implicitly with an array
type_body_length:
  - 300 # warning
  - 400 # error
# or they can set both explicitly
file_length:
  warning: 500
  error: 1200
# naming rules can set warnings/errors for min_length and max_length
# additionally they can set excluded names
type_name:
  min_length: 4 # only warning
  max_length: # warning and error
    warning: 40
    error: 50
  excluded: iPhone # excluded via string
identifier_name:
  min_length: # only min_length
    error: 3 # only error
  excluded: # excluded via string array
    - id
    - URL
    - GlobalAPIKey
reporter: "xcode" # reporter type (xcode, json, csv, checkstyle, junit)
cyclomatic_complexity:
  warning: 30
  error: 50
function_parameter_count:
  warning: 7
  error: 11


================================================
FILE: .travis/ci.sh
================================================
#!/usr/bin/env bash

VERSION="4.1"
echo "Swift $VERSION Continuous Integration";

# Determine OS
UNAME=`uname`;
if [[ $UNAME == "Darwin" ]];
then
    OS="macos";
else
    if [[ $UNAME == "Linux" ]];
    then
        UBUNTU_RELEASE=`lsb_release -a 2>/dev/null`;
        if [[ $UBUNTU_RELEASE == *"16.04"* ]];
        then
            OS="ubuntu1604";
        else
            OS="ubuntu1404";
        fi
    else
        echo "Unsupported Operating System: $UNAME";
    fi
fi
echo "🖥 Operating System: $OS";

if [[ $OS != "macos" ]];
then
    echo "📚 Installing Dependencies"
    sudo apt-get install -y clang libicu-dev uuid-dev

    echo "🐦 Installing Swift";
    if [[ $OS == "ubuntu1604" ]];
    then
        SWIFTFILE="swift-$VERSION-RELEASE-ubuntu16.04";
    else
        SWIFTFILE="swift-$VERSION-RELEASE-ubuntu14.04";
    fi
    wget https://swift.org/builds/swift-$VERSION-release/$OS/swift-$VERSION-RELEASE/$SWIFTFILE.tar.gz
    tar -zxf $SWIFTFILE.tar.gz
    export PATH=$PWD/$SWIFTFILE/usr/bin:"${PATH}"
fi

echo "📅 Version: `swift --version`";

echo "🚀 Building";
swift build
if [[ $? != 0 ]]; 
then 
    echo "❌  Build failed";
    exit 1; 
fi

echo "💼 Building Release";
swift build -c release
if [[ $? != 0 ]]; 
then 
    echo "❌  Build for release failed";
    exit 1; 
fi

echo "🔎 Testing";

swift test
if [[ $? != 0 ]]; 
then 
    echo "❌ Tests failed";
    exit 1; 
fi

echo "✅ Done"


================================================
FILE: .travis/update-submodule.sh
================================================
#!/bin/bash

cd gitignore
git pull origin master
cd ..

pwd
if [[ `git status --porcelain` ]]; then
  echo "status: Updating templates"
  git add .
  git commit -m "Upading templates from https://github.com/toptal/gitignore"
else
  echo "status: No updates"
fi


================================================
FILE: Dockerfile
================================================
##############################################################################################################################
##                                                                                                                          ##
##  We recommend building with buildx:                                                                                      ##
##                                                                                                                          ##
##  // Note: you can use the standard `docker build` command, but there is no multi-CPU architecture support                ##
##                                                                                                                          ##
##  // Create buildx instance                                                                                               ##
##  docker buildx create --driver docker-container --name builder --bootstrap --use                                         ##
##                                                                                                                          ##
##  // Login to Rregistry                                                                                                   ##
##  docker login [REGSITRY_ADDRESS]                                                                                         ##
##                                                                                                                          ##
##  // Build the docker image (both x86 and amd64 are supported)                                                            ##
##  docker buildx build --platform=linux/amd64,linux/arm64 --push -t [REGSITRY_ADDRESS]/REGSITRY_USERNAME/gitignore.io .    ##
##                                                                                                                          ##
##############################################################################################################################

# Build swift backend
FROM swift:5.6-focal AS swift-builder

COPY . /gitignore.io

WORKDIR /gitignore.io

RUN set -ex \
    && apt update \
    && apt install libssl-dev -y \
    && swift package clean \
    && swift package update \
    && swift build -Xswiftc -static-stdlib -j $(nproc) -c release \
    && mv $(swift build -Xswiftc -static-stdlib -c release --show-bin-path)/Run /tmp/Run

# Build node frontend
FROM node:lts AS node-builder

COPY . /gitignore.io

WORKDIR /gitignore.io

RUN set -ex \
    && yarn install \
    && yarn build \
    && rm -rf node_modules

# Build final image
FROM debian:stable-slim AS dest

WORKDIR /app

# The environment variable is set to empty(use the default value)
ARG HOST_ORIGIN
ARG BASE_PREFIX
ARG GOOGLE_ANALYTICS_UID

# Copy the project and remove the node frontend
COPY . ./
COPY .git ./

# Install some necessary dependencies
RUN set -ex \
    && apt update \
    && apt install git ca-certificates libcurl4 dumb-init --no-install-recommends -y \
    && git submodule update --init --recursive \
    && rm -rf /app/Public /app/Resources \
    && apt autoremove -y \
    && apt autoclean -y

# Copy all newly compiled files to the final image
COPY --from=swift-builder /tmp/Run /app/Run
COPY --from=node-builder /gitignore.io/Public /app/Public
COPY --from=node-builder /gitignore.io/Resources /app/Resources

EXPOSE 8080/tcp

# Add dump-init to ensure container can respond to exit signals
ENTRYPOINT ["/usr/bin/dumb-init", "--"]

# System signals are taken over by dump-init, we can use `exec` to execute
# commands without worrying about signal forwarding and zombie processes
# See Also: https://docs.docker.com/engine/reference/builder/#cmd
CMD ["/app/Run", "serve", "-e", "prod", "-b", "0.0.0.0"]


================================================
FILE: LICENSE.md
================================================
MIT License

Copyright (c) 2013-2019

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.


================================================
FILE: Localizations/README.md
================================================
# Localizations

1. Copy the `en.json` file and rename it
_use the base version of the language (en) instead of a country specific version (en_US)_
2. Replace the strings with the language you're translating
3. Add the language to `Sources/App/Extensions/Router+Extensions.swift` under `supportedLanguages`
4. Create a pull request to get your translation approved and merged

Thank you for help with localizing gitignore

================================================
FILE: Localizations/ar.json
================================================
{
    "title": "إنشاء ملفات .gitignore مفيدة لمشروعك - gitignore.io",
    "description": "Create useful .gitignore files for your project by selecting from %{templateCount} Operating System, IDE, and Programming Language .gitignore templates",
    "subtitle": "إنشاء ملفات .gitignore مفيدة لمشروعك",
    "searchPlaceholder": "ابحث عن أنظمة تشغيل، IDEs، أو لغات برمجة",
    "searchGo": "إنشاء",
    "searchDownload": "تحميل ملف",
    "footer": "قوالب نظام تشغيل، IDE، ولغة برمجة لملف .gitignore %{templateCount}",
    "commandLineTitle": "توثيق سطر اﻷوامر",
    "commandLineDescription": "تعلم كيفية تشغيل .gitignore.io من سطر اﻷوامر",
    "videoTitle": "مشاهدة مقطع فيديو تعليمي",
    "videoDescription": "مشاهدة فيديو تعليمي حول كيفية عمل .gitignore.io",
    "sourceCodeTitle": "شفرة مصدرية",
    "sourceCodeDescription": "الشفرة المصدرية لـ.gitignore.io مستضافة على GitHub"
}


================================================
FILE: Localizations/cs.json
================================================
{
    "title": "gitignore.io - Vytvořte užitečný soubory .gitignore pro váš projekt",
    "description": "Vytvořte užitečné soubory .gitignore pro svůj projekt výběrem z %{templateCount}. Šablony .gitignore pro operační systém, IDE a programovací jazyk.",
    "subtitle": "Vytvořte užitečné soubory .gitignore pro svůj projekt",
    "searchPlaceholder": "Hledání operačních systémů, IDE nebo programovacích jazyků",
    "searchGo": "Vytvořit",
    "searchDownload": "Soubor ke stažení",
    "footer": "%{templateCount} šablon .gitignore pro operační systémy, IDE a programovací jazyky",
    "commandLineTitle": "Dokumentace příkazového řádku",
    "commandLineDescription": "Naučte se spouštět soubor .gitignore.io z příkazového řádku",
    "videoTitle": "Podívejte se na video tutoriál",
    "videoDescription": "Podívejte se na video, ve kterém se dozvíte, jak .gitignore.io funguje.",
    "sourceCodeTitle": "Zdrojový kód",
    "sourceCodeDescription": "Zdrojový kód pro .gitignore.io hostovaný na GitHub"
}


================================================
FILE: Localizations/de.json
================================================
{
    "title": "gitignore.io - Erstelle nützliche .gitignore Dateien Für Dein Projekt",
    "description": "Erstelle nützliche .gitignore Dateien für dein Projekt in dem du eines von {templateCount} Betriebssystem, Entwicklungsumgebung und Programmiersprache .gitignore Templates wählst",
    "subtitle": "Erstelle nützliche .gitignore Dateien für dein Projekt",
    "searchPlaceholder": "Suche nach Betriebssystemen, Entwicklungsumgebungen oder Programmiersprachen",
    "searchGo": "Create",
    "searchDownload": "Datei herunterladen",
    "footer": "%{templateCount} Betriebssystem, Entwicklungsumgebung und Programmiersprache .gitignore Templates",
    "commandLineTitle": "Kommandozeilen Dokumentation",
    "commandLineDescription": "Lerne wie man .gitignore.io von der Kommandozeile ausführt",
    "videoTitle": "Schau das Video Tutorial",
    "videoDescription": "Schau ein Video um zu lernen wie .gitignore.io funktioniert",
    "sourceCodeTitle": "Quellcode",
    "sourceCodeDescription": "Der Quellcode für .gitignore.io ist bei Github gehosted"
}


================================================
FILE: Localizations/el.json
================================================
{
    "title": "gitignore.io - Δημιουργήστε χρήσιμα αρχεία .gitignore για το έργο σας",
    "description": "Δημιουργήστε χρήσιμα αρχεία .gitignore για το έργο σας επιλέγοντας από το %{templateCount} πρότυπα .gitignore για λειτουργικό σύστημα, IDE και γλώσσα προγραμματισμού",
    "subtitle": "Δημιουργήστε χρήσιμα αρχεία .gitignore για το έργο σας",
    "searchPlaceholder": "Αναζήτηση λειτουργικών συστημάτων, IDEs ή γλωσσών προγραμματισμού",
    "searchGo": "Δημιουργήστε",
    "searchDownload": "Κατεβάστε το αρχείο",
    "footer": "%{templateCount} λειτουργικό σύστημα, IDE και γλώσσα προγραμματισμού .gitignore templates",
    "commandLineTitle": "Command line τεκμηρίωση",
    "commandLineDescription": "Μάθετε πώς να εκτελείτε το .gitignore.io από τη command line",
    "videoTitle": "Παρακολουθήστε εκπαιδευτικό βίντεο",
    "videoDescription": "Παρακολουθήστε ένα βίντεο για να μάθετε πώς λειτουργεί το .gitignore.io",
    "sourceCodeTitle": "Πηγαίος κώδικας",
    "sourceCodeDescription": "Πηγαίος κώδικας στο GitHub για το .gitignore.io"
}


================================================
FILE: Localizations/en.json
================================================
{
    "title": "gitignore.io - Create Useful .gitignore Files For Your Project",
    "description": "Create useful .gitignore files for your project by selecting from %{templateCount} Operating System, IDE, and Programming Language .gitignore templates",
    "subtitle": "Create useful .gitignore files for your project",
    "searchPlaceholder": "Search Operating Systems, IDEs, or Programming Languages",
    "searchGo": "Create",
    "searchDownload": "Download File",
    "footer": "%{templateCount} Operating System, IDE, and Programming Language .gitignore templates",
    "commandLineTitle": "Command Line Docs",
    "commandLineDescription": "Learn how to run .gitignore.io from the command line",
    "videoTitle": "Watch Video Tutorial",
    "videoDescription": "Watch a video to learn how .gitignore.io works",
    "sourceCodeTitle": "Source Code",
    "sourceCodeDescription": "GitHub hosted source code for .gitignore.io"
}


================================================
FILE: Localizations/fa.json
================================================
{
    "title": "gitignore.io - فایل های .gitignore پروژه تان را بسازید",
    "description": "فایل های .gitignore پروژه تان را با استفاده از %{templateCount} قالب بنا به سیستم عامل، IDE و زیان برنامه نویسی بسازید.",
    "subtitle": "فایل های .gitignore پروژه تان را بسازید",
    "searchPlaceholder": "سیستم عامل، IDE و یا زبان برنامه نویسی تان را جستجو کنید.",
    "searchGo": "ایجاد",
    "searchDownload": "دانلود فایل",
    "footer": "%{templateCount} قالب سیستم عامل، IDE و زبان برنامه نویسی",
    "commandLineTitle": "مستندات خط فرمان",
    "commandLineDescription": "آموزش چگونگی استفاده از .gitignore.io در خط فرمان",
    "videoTitle": "تماشای ویدئو آموزشی",
    "videoDescription": "تماشای ویدئو آموزشی برای اینکه بدانیم .gitignore.io چگونه کار می کند.",
    "sourceCodeTitle": "منبع کد",
    "sourceCodeDescription": "میزبانی شده توسط Github"
}


================================================
FILE: Localizations/fr.json
================================================
{
    "title": "gitignore.io - Créez des fichiers .gitignore utiles à votre Projet",
    "description": "Créez des fichiers .gitignore utiles à votre projet en choisissant l'un des %{templateCount} templates .gitignore.io de Système d'exploitation, IDE et Langage de Programmation",
    "subtitle": "Créez des fichiers .gitignore utiles à votre projet",
    "searchPlaceholder": "Recherchez des Systèmes d'Exploitation, IDEs ou Langages de Programmation",
    "searchGo": "Créer",
    "searchDownload": "Téléchargement du fichier",
    "footer": "%{templateCount} templates .gitignore.io de Système d'exploitation, IDE et Langage de Programmation",
    "commandLineTitle": "Documentation",
    "commandLineDescription": "Apprenez comment utiliser .gitignore.io en ligne de commande",
    "videoTitle": "Regardez une Vidéo Didacticielle",
    "videoDescription": "Regardez une vidéo pour apprendre comment fonctionne .gitignore.io",
    "sourceCodeTitle": "Code Source",
    "sourceCodeDescription": "Le code source de .gitignore.io est hébergé par GitHub"
}


================================================
FILE: Localizations/id.json
================================================
{
    "title": "gitignore.io - Buat File .gitignore yang Berguna untuk Proyek Anda",
    "description": "Buat file .gitignore yang berguna untuk proyek anda dengan memilih template .gitginore dari %{templateCount} Sistem Operasi, IDE, dan Bahasa Pemrograman",
    "subtitle": "Buat file .gitignore yang berguna untuk proyek anda",
    "searchPlaceholder": "Cari Sistem Operasi, IDE, atau Bahasa Pemrograman",
    "searchGo": "Buat",
    "searchDownload": "Mengunduh File",
    "footer": "template .gitignore %{templateCount} Sistem Operasi, IDE, dan Bahasa Pemrograman",
    "commandLineTitle": "Dokumentasi Command Line",
    "commandLineDescription": "Pelajari cara menjalankan .gitignore.io dari Command Line",
    "videoTitle": "Menonton Video Tutorial",
    "videoDescription": "Menonton video untuk mempelajari bagaimana .gitignore.io bekerja",
    "sourceCodeTitle": "Kode Sumber",
    "sourceCodeDescription": "GitHub menghosting kode sumber untuk .gitignore.io"
}


================================================
FILE: Localizations/ja.json
================================================
{
    "title": "gitignore.io - プロジェクトに役立つ.gitignoreファイルを作成しよう",
    "description": "%{templateCount} オペレーティングシステム、IDE、およびプログラミング言語の.gitignoreテンプレートから選択して、プロジェクトに役立つ.gitignoreファイルを作成しよう。",
    "subtitle": "プロジェクトに役立つ.gitignoreファイルを作成しよう",
    "searchPlaceholder": "オペレーティングシステム、IDE、プログラミング言語を検索する",
    "searchGo": "作成する",
    "searchDownload": "ファイルをダウンロードする",
    "footer": "%{templateCount} オペレーティングシステム、IDE、プログラミング言語の.gitignoreテンプレート",
    "commandLineTitle": "コマンドライン ドキュメンテーション",
    "commandLineDescription": "コマンドラインから.gitignore.ioを実行する方法を学ぶ",
    "videoTitle": "チュートリアルビデオを見る",
    "videoDescription": ".gitignore.ioの使い方を学ぶためにビデオを見る",
    "sourceCodeTitle": "ソースコード",
    "sourceCodeDescription": "GitHubでホスティングされた.gitignore.ioのソースコード"
}


================================================
FILE: Localizations/ko.json
================================================
{
    "title": "gitignore.io - 자신의 프로젝트에 꼭 맞는 .gitignore 파일을 만드세요",
    "description": "자신의 프로젝트에 꼭 맞는 .gitignore 파일을 만드세요. %{templateCount} 개의 운영체제, 개발 환경(IDE), 프로그래밍 언어 .gitignore 템플릿이 준비되어 있습니다",
    "subtitle": "자신의 프로젝트에 꼭 맞는 .gitignore 파일을 만드세요",
    "searchPlaceholder": "운영체제, 개발 환경(IDE), 프로그래밍 언어 검색",
    "searchGo": "생성",
    "searchDownload": "파일 다운로드",
    "footer": "%{templateCount} 개의 운영체제, 개발 환경(IDE), 프로그래밍 언어 .gitignore 템플릿",
    "commandLineTitle": "커맨드라인 문서",
    "commandLineDescription": ".gitignore.io 를 커맨드 라인에서 실행하는 법 배우기",
    "videoTitle": "동영상 튜토리얼 보기",
    "videoDescription": ".gitignore.io 가 어떻게 동작하는지 동영상으로 배우기",
    "sourceCodeTitle": "소스 코드",
    "sourceCodeDescription": "깃헙(GitHub)에서 호스팅하는 .gitignore.io 소스 코드"
}


================================================
FILE: Localizations/nl.json
================================================
{
    "title": "gitignore.io - Creëer nuttige .gitignore bestanden voor je project",
    "description": "Creëer nuttige .gitignore bestanden voor je project door te kiezen uit %{templateCount} besturingssysteem, IDE en programmeertaal .gitignore sjablonen",
    "subtitle": "Creëer nuttige .gitignore-bestanden voor je project",
    "searchPlaceholder": "Zoek besturingssystemen, IDEs of programmeertalen",
    "searchGo": "Creëer",
    "searchDownload": "Download bestand",
    "footer": "%{templateCount} besturingssysteem, IDE en programmeertaal .gitignore-sjablonen",
    "commandLineTitle": "Command Line documentatie",
    "commandLineDescription": "Leer hoe je .gitignore.io uitvoert vanaf de command line",
    "videoTitle": "Video handleiding bekijken",
    "videoDescription": "Bekijk een video om te leren hoe .gitignore.io werkt",
    "sourceCodeTitle": "Broncode",
    "sourceCodeDescription": "GitHub gehoste broncode voor .gitignore.io"
}


================================================
FILE: Localizations/pt.json
================================================
{
    "title": "gitignore.io - Crie Arquivos .gitignore Úteis Para Seu Projeto.",
    "description": "Crie arquivos .gitignore úteis para o seu projeto selecionando os %{templateCount} templates de Sistemas Operacionais, IDEs e linguagens de Programação.",
    "subtitle": "Crie arquivos .gitignore úteis para o seu projeto.",
    "searchPlaceholder": "Pesquise Sistemas Operacionais, IDEs ou Linguagens de Programação.",
    "searchGo": "Criar",
    "searchDownload": "Baixar Arquivo",
    "footer": "%{templateCount} Templates de .gitignore de Sistemas Operacionais, IDEs e Linguagens de Programação.",
    "commandLineTitle": "Documentação",
    "commandLineDescription": "Saiba como executar o .gitignore.io a partir da Linha de Comando",
    "videoTitle": "Assista ao Vídeo Tutorial",
    "videoDescription": "Assista a um vídeo para aprender como funciona o .gitignore.io",
    "sourceCodeTitle": "Código-fonte",
    "sourceCodeDescription": "Código-fonte hospedado no GitHub"
}


================================================
FILE: Localizations/ro.json
================================================
{
    "title": "gitignore.io - Creează fișiere .gitignore utile pentru proiectul tău",
    "description": "Creează fișiere .gitignore utile pentru proiectul tău selectând dintre %{templateCount} de șabloane .gitignore pentru sisteme de operare, IDE-uri și limbaje de programare.",
    "subtitle": "Creează fișiere .gitignore utile pentru proiectul tău",
    "searchPlaceholder": "Caută sisteme de operare, IDE-uri sau limbaje de programare",
    "searchGo": "Creează",
    "searchDownload": "Descarcă fișier",
    "footer": "%{templateCount} de șabloane .gitignore pentru sisteme de operare, IDE-uri și limbaje de programare",
    "commandLineTitle": "Documentație linie de comandă",
    "commandLineDescription": "Află cum să rulezi .gitignore.io din linie de comandă",
    "videoTitle": "Vizionează tutorialul video",
    "videoDescription": "Vizionează videoul să vezi cum funcționează .gitignore.io",
    "sourceCodeTitle": "Cod sursă",
    "sourceCodeDescription": "GitHub a găzduit codul sursă pentru .gitignore.io"
}


================================================
FILE: Localizations/ru.json
================================================
{
    "title": "gitignore.io - Генерируйте удобные .gitignore файлы для вашего проекта",
    "description": "Генерируйте удобные .gitignore файлы для вашего проекта при помощи выбора из %{templateCount} шаблонов файла .gitignore для различных операционных систем, IDE и языков программирования",
    "subtitle": "Генерируйте удобные .gitignore файлы для вашего проекта",
    "searchPlaceholder": "Искать по операционным системам, IDE или языкам программирования",
    "searchGo": "Сгенерировать",
    "searchDownload": "Скачать файл",
    "footer": "%{templateCount} шаблонов файла .gitignore для различных операционных систем, IDE и языков программирования",
    "commandLineTitle": "Документация по работе из командной строки",
    "commandLineDescription": "Изучите, как запускать .gitignore.io из командной строки",
    "videoTitle": "Смотреть видео-туториал",
    "videoDescription": "Смотреть видео, рассказывающее, как работает .gitignore.io",
    "sourceCodeTitle": "Исходный код",
    "sourceCodeDescription": "Исходный код .gitignore.io на GitHub"
}


================================================
FILE: Localizations/th.json
================================================
{
    "title": "gitignore.io - สร้างไฟล์ .gitignore ที่เป็นประโยชน์สำหรับโปรเจ็คต์ของคุณ",
    "description": "สร้างไฟล์ .gitignore ที่มีประโยชน์สำหรับโปรเจ็คต์ของคุณโดยเลือกจาก %{templateCount} เทมเพลตระบบปฏิบัติการ, IDE และภาษาการเขียนโปรแกรม .gitignore",
    "subtitle": "สร้างไฟล์ .gitignore ที่มีประโยชน์สำหรับโปรเจ็คต์ของคุณ",
    "searchPlaceholder": "ค้นหาระบบปฏิบัติการ IDE หรือภาษาการเขียนโปรแกรม",
    "searchGo": "สร้าง",
    "searchDownload": "ดาวน์โหลดไฟล์",
    "footer": "%{templateCount} เทมเพลตระบบปฏิบัติการ, IDE และภาษาการเขียนโปรแกรม .gitignore",
    "commandLineTitle": "ลองอ่านเอกสาร คำสั่งของ คอมมานด์ไลน์ ดูสิ!",
    "commandLineDescription": "เรียนรู้วิธีเรียกใช้ .gitignore.io จากคำสั่ง คอมมานด์ไลน์ ดูสิ!",
    "videoTitle": "ชมวิดีโอการสอนการใช้งาน",
    "videoDescription": "ดูวิดีโอเพื่อเรียนรู้วิธีการทำงานของ .gitignore.io",
    "sourceCodeTitle": "ซอร์สโค้ด",
    "sourceCodeDescription": "ไปที่ กิทฮับ ที่เก็บซอร์สโค้ด ของ .gitignore.io"
}


================================================
FILE: Localizations/tr.json
================================================
{
    "title": "gitignore.io - Projen İçin İşe Yarar .gitignore Dosyaları Yarat",
    "description": "%{templateCount} İşletim Sistemi, IDE, ve Programlama Dili için .gitignore şablonlarından seçerek projen için işe yarar .gitignore dosyaları yarat",
    "subtitle": "Projen için işe yarar .gitignore dosyaları yarat",
    "searchPlaceholder": "İşletim Sistemleri, IDE'ler, ya da Programlama Dilleri ara",
    "searchGo": "Yarat",
    "searchDownload": "Dosyayı İndir",
    "footer": "%{templateCount} İşletim Sistemi, IDE, ve Programlama Dili için .gitignore şablonları",
    "commandLineTitle": "Komut Satırı Kılavuzu",
    "commandLineDescription": ".gitignore.io'u komut satırından çalıştırmayı öğren",
    "videoTitle": "Öğretici Videoyu İzle",
    "videoDescription": ".gitignore.io'nun nasıl çalıştığını öğrenmek için bir video izle",
    "sourceCodeTitle": "Kaynak Kod",
    "sourceCodeDescription": "GitHub'da tutulan .gitignore.io'un kaynak kodu"
}


================================================
FILE: Localizations/zh.json
================================================
{
    "title": "gitignore.io - 为你的项目创建必要的 .gitignore 文件",
    "description": "从 %{templateCount} 操作系统, IDE, 和编程语言的 .gitignore 模板中为你的项目创建必要的 .gitignore 文件",
    "subtitle": "为你的项目创建必要的 .gitignore 文件",
    "searchPlaceholder": "搜索操作系统, IDEs, 或编程语言",
    "searchGo": "创建",
    "searchDownload": "文件下载",
    "footer": "%{templateCount} 操作系统, IDE, 和编程语言的 .gitignore 模板",
    "commandLineTitle": "命令行使用文档",
    "commandLineDescription": "学习如何从命令行运行 .gitignore.io",
    "videoTitle": "观看视频教程",
    "videoDescription": "通过视频学习 .gitignore.io 是如何工作的",
    "sourceCodeTitle": "源码",
    "sourceCodeDescription": ".gitignore.io 的源码托管在 github 上"
}


================================================
FILE: Package.pins
================================================
{
  "autoPin": true,
  "pins": [
    {
      "package": "CLibreSSL",
      "reason": null,
      "repositoryURL": "https://github.com/vapor/clibressl.git",
      "version": "1.0.0"
    },
    {
      "package": "Console",
      "reason": null,
      "repositoryURL": "https://github.com/vapor/console.git",
      "version": "1.0.2"
    },
    {
      "package": "Core",
      "reason": null,
      "repositoryURL": "https://github.com/vapor/core.git",
      "version": "1.1.1"
    },
    {
      "package": "Crypto",
      "reason": null,
      "repositoryURL": "https://github.com/vapor/crypto.git",
      "version": "1.1.0"
    },
    {
      "package": "Engine",
      "reason": null,
      "repositoryURL": "https://github.com/vapor/engine.git",
      "version": "1.3.12"
    },
    {
      "package": "Fluent",
      "reason": null,
      "repositoryURL": "https://github.com/vapor/fluent.git",
      "version": "1.4.1"
    },
    {
      "package": "JSON",
      "reason": null,
      "repositoryURL": "https://github.com/vapor/json.git",
      "version": "1.0.6"
    },
    {
      "package": "Jay",
      "reason": null,
      "repositoryURL": "https://github.com/DanToml/Jay.git",
      "version": "1.0.1"
    },
    {
      "package": "Leaf",
      "reason": null,
      "repositoryURL": "https://github.com/vapor/leaf.git",
      "version": "1.0.6"
    },
    {
      "package": "Multipart",
      "reason": null,
      "repositoryURL": "https://github.com/vapor/multipart.git",
      "version": "1.0.2"
    },
    {
      "package": "Node",
      "reason": null,
      "repositoryURL": "https://github.com/vapor/node.git",
      "version": "1.0.1"
    },
    {
      "package": "PathIndexable",
      "reason": null,
      "repositoryURL": "https://github.com/vapor/path-indexable.git",
      "version": "1.0.0"
    },
    {
      "package": "Polymorphic",
      "reason": null,
      "repositoryURL": "https://github.com/vapor/polymorphic.git",
      "version": "1.0.1"
    },
    {
      "package": "Routing",
      "reason": null,
      "repositoryURL": "https://github.com/vapor/routing.git",
      "version": "1.1.0"
    },
    {
      "package": "Socks",
      "reason": null,
      "repositoryURL": "https://github.com/vapor/socks.git",
      "version": "1.2.7"
    },
    {
      "package": "TLS",
      "reason": null,
      "repositoryURL": "https://github.com/vapor/tls.git",
      "version": "1.1.2"
    },
    {
      "package": "Turnstile",
      "reason": null,
      "repositoryURL": "https://github.com/stormpath/Turnstile.git",
      "version": "1.0.6"
    },
    {
      "package": "Vapor",
      "reason": null,
      "repositoryURL": "https://github.com/vapor/vapor.git",
      "version": "1.5.13"
    }
  ],
  "version": 1
}

================================================
FILE: Package.resolved
================================================
{
  "object": {
    "pins": [
      {
        "package": "Console",
        "repositoryURL": "https://github.com/vapor/console.git",
        "state": {
          "branch": null,
          "revision": "96617dcdcbb7572cbff0645a2e3362c042bfffad",
          "version": "3.0.3"
        }
      },
      {
        "package": "Core",
        "repositoryURL": "https://github.com/vapor/core.git",
        "state": {
          "branch": null,
          "revision": "96ce86ebf9198328795c4b9cb711489460be083c",
          "version": "3.4.4"
        }
      },
      {
        "package": "Crypto",
        "repositoryURL": "https://github.com/vapor/crypto.git",
        "state": {
          "branch": null,
          "revision": "5605334590affd4785a5839806b4504407e054ac",
          "version": "3.3.0"
        }
      },
      {
        "package": "DatabaseKit",
        "repositoryURL": "https://github.com/vapor/database-kit.git",
        "state": {
          "branch": null,
          "revision": "3a17dbbe9be5f8c37703e4b7982c1332ad6b00c4",
          "version": "1.3.1"
        }
      },
      {
        "package": "HTTP",
        "repositoryURL": "https://github.com/vapor/http.git",
        "state": {
          "branch": null,
          "revision": "272b22be8cb3364e42a4701c2e0676e37480ec5a",
          "version": "3.1.5"
        }
      },
      {
        "package": "Leaf",
        "repositoryURL": "https://github.com/vapor/leaf.git",
        "state": {
          "branch": null,
          "revision": "d35f54cbac723e673f9bd5078361eea74049c8d7",
          "version": "3.0.2"
        }
      },
      {
        "package": "Lingo",
        "repositoryURL": "https://github.com/miroslavkovac/Lingo.git",
        "state": {
          "branch": null,
          "revision": "f21f388b04239641b3e88d14f21762125faa9857",
          "version": "3.0.5"
        }
      },
      {
        "package": "LingoVapor",
        "repositoryURL": "https://github.com/vapor-community/lingo-vapor.git",
        "state": {
          "branch": null,
          "revision": "56fdc7e7d531907ff97024a4aff8db90bcf0f965",
          "version": "3.0.0"
        }
      },
      {
        "package": "Multipart",
        "repositoryURL": "https://github.com/vapor/multipart.git",
        "state": {
          "branch": null,
          "revision": "e57007c23a52b68e44ebdfc70cbe882a7c4f1ec3",
          "version": "3.0.2"
        }
      },
      {
        "package": "Routing",
        "repositoryURL": "https://github.com/vapor/routing.git",
        "state": {
          "branch": null,
          "revision": "3219e328491b0853b8554c5a694add344d2c6cfb",
          "version": "3.0.1"
        }
      },
      {
        "package": "Service",
        "repositoryURL": "https://github.com/vapor/service.git",
        "state": {
          "branch": null,
          "revision": "281a70b69783891900be31a9e70051b6fe19e146",
          "version": "1.0.0"
        }
      },
      {
        "package": "swift-nio",
        "repositoryURL": "https://github.com/apple/swift-nio.git",
        "state": {
          "branch": null,
          "revision": "176dd6e8564d60e936b76f3a896d667ae3acba31",
          "version": "1.10.0"
        }
      },
      {
        "package": "swift-nio-ssl",
        "repositoryURL": "https://github.com/apple/swift-nio-ssl.git",
        "state": {
          "branch": null,
          "revision": "db16c3a90b101bb53b26a58867a344ad428072e0",
          "version": "1.3.2"
        }
      },
      {
        "package": "swift-nio-ssl-support",
        "repositoryURL": "https://github.com/apple/swift-nio-ssl-support.git",
        "state": {
          "branch": null,
          "revision": "c02eec4e0e6d351cd092938cf44195a8e669f555",
          "version": "1.0.0"
        }
      },
      {
        "package": "swift-nio-zlib-support",
        "repositoryURL": "https://github.com/apple/swift-nio-zlib-support.git",
        "state": {
          "branch": null,
          "revision": "37760e9a52030bb9011972c5213c3350fa9d41fd",
          "version": "1.0.0"
        }
      },
      {
        "package": "TemplateKit",
        "repositoryURL": "https://github.com/vapor/template-kit.git",
        "state": {
          "branch": null,
          "revision": "db35b1c35aabd0f5db3abca0cfda7becfe9c43e2",
          "version": "1.1.0"
        }
      },
      {
        "package": "URLEncodedForm",
        "repositoryURL": "https://github.com/vapor/url-encoded-form.git",
        "state": {
          "branch": null,
          "revision": "932024f363ee5ff59059cf7d67194a1c271d3d0c",
          "version": "1.0.5"
        }
      },
      {
        "package": "Validation",
        "repositoryURL": "https://github.com/vapor/validation.git",
        "state": {
          "branch": null,
          "revision": "4de213cf319b694e4ce19e5339592601d4dd3ff6",
          "version": "2.1.1"
        }
      },
      {
        "package": "Vapor",
        "repositoryURL": "https://github.com/vapor/vapor.git",
        "state": {
          "branch": null,
          "revision": "157d3b15336caa882662cc75024dd04b2e225246",
          "version": "3.1.0"
        }
      },
      {
        "package": "WebSocket",
        "repositoryURL": "https://github.com/vapor/websocket.git",
        "state": {
          "branch": null,
          "revision": "eb4277f75f1d96a3d15c852cdd89af1799093dcd",
          "version": "1.1.0"
        }
      }
    ]
  },
  "version": 1
}


================================================
FILE: Package.swift
================================================
// swift-tools-version:4.0
import PackageDescription

let package = Package(
    name: "GitignoreIO",
    dependencies: [
        .package(
            url: "https://github.com/vapor/vapor.git",
            from: "3.1.0"
        ),
        .package(
            url: "https://github.com/vapor/leaf.git",
            from: "3.0.0"
        ),
        .package(
            url: "https://github.com/vapor-community/lingo-vapor.git",
            from: "3.0.0"
        )
    ],
    targets: [
        .target(
            name: "App",
            dependencies: ["Vapor", "Leaf", "LingoVapor"],
            exclude: ["Config", "Localization", "Public", "Resources", "data", "wiki"]
        ),
        .target(
            name: "Run",
            dependencies: ["App"],
            exclude: ["Config", "Localization", "Public", "Resources", "data", "wiki"]
        ),
        .testTarget(
            name: "AppTests",
            dependencies: ["App"]
        )
    ]
)


  


================================================
FILE: Procfile
================================================
web: Run serve --env production --port $PORT --hostname 0.0.0.0


================================================
FILE: Public/assets/main.css
================================================
*,:after,:before{box-sizing:border-box}h1,h2,h3,h4,h5,h6{font-weight:500;line-height:1.2;margin-bottom:.5rem;margin-top:0}button,input,select{font-family:inherit;font-size:inherit;line-height:inherit;margin:0}.input-group>.form-control{background-color:#fff;-ms-flex:1 1 0%;flex:1 1 0%;margin-bottom:0;min-width:0}.input-group{-ms-flex-align:stretch;align-items:stretch;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;position:relative;width:100%}.input-group-append{display:-ms-flexbox;display:flex;margin-left:-1px}.input-group-append .btn{cursor:pointer;position:relative;z-index:2}.btn{border:1px solid transparent}.btn:focus{outline:0}.select2-container{box-sizing:border-box;display:inline-block;margin:0;position:relative;vertical-align:middle}.select2-container .select2-selection--single{box-sizing:border-box;cursor:pointer;display:block;height:28px;user-select:none;-webkit-user-select:none}.select2-container .select2-selection--single .select2-selection__rendered{display:block;overflow:hidden;padding-left:8px;padding-right:20px;text-overflow:ellipsis;white-space:nowrap}.select2-container .select2-selection--single .select2-selection__clear{position:relative}.select2-container[dir=rtl] .select2-selection--single .select2-selection__rendered{padding-left:20px;padding-right:8px}.select2-container .select2-selection--multiple{box-sizing:border-box;cursor:pointer;display:block;min-height:32px;user-select:none;-webkit-user-select:none}.select2-container .select2-selection--multiple .select2-selection__rendered{display:inline-block;overflow:hidden;padding-left:8px;text-overflow:ellipsis;white-space:nowrap}.select2-container .select2-search--inline{float:left}.select2-container .select2-search--inline .select2-search__field{border:none;box-sizing:border-box;font-size:100%;margin-top:5px;padding:0}.select2-container .select2-search--inline .select2-search__field::-webkit-search-cancel-button{-webkit-appearance:none}.select2-dropdown{background-color:#fff;border:1px solid #aaa;border-radius:4px;box-sizing:border-box;display:block;left:-100000px;position:absolute;width:100%;z-index:1051}.select2-results{display:block}.select2-results__options{list-style:none;margin:0;padding:0}.select2-results__option{padding:6px;user-select:none;-webkit-user-select:none}.select2-results__option[aria-selected]{cursor:pointer}.select2-container--open .select2-dropdown{left:0}.select2-container--open .select2-dropdown--above{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0}.select2-container--open .select2-dropdown--below{border-top:none;border-top-left-radius:0;border-top-right-radius:0}.select2-search--dropdown{display:block;padding:4px}.select2-search--dropdown .select2-search__field{box-sizing:border-box;padding:4px;width:100%}.select2-search--dropdown .select2-search__field::-webkit-search-cancel-button{-webkit-appearance:none}.select2-search--dropdown.select2-search--hide{display:none}.select2-close-mask{background-color:#fff;border:0;display:block;filter:alpha(opacity=0);height:auto;left:0;margin:0;min-height:100%;min-width:100%;opacity:0;padding:0;position:fixed;top:0;width:auto;z-index:99}.select2-hidden-accessible{clip:rect(0 0 0 0)!important;border:0!important;-webkit-clip-path:inset(50%)!important;clip-path:inset(50%)!important;height:1px!important;overflow:hidden!important;padding:0!important;position:absolute!important;white-space:nowrap!important;width:1px!important}.select2-container--default .select2-selection--single{background-color:#fff;border:1px solid #aaa;border-radius:4px}.select2-container--default .select2-selection--single .select2-selection__rendered{color:#444;line-height:28px}.select2-container--default .select2-selection--single .select2-selection__clear{cursor:pointer;float:right;font-weight:700}.select2-container--default .select2-selection--single .select2-selection__placeholder{color:#999}.select2-container--default .select2-selection--single .select2-selection__arrow{height:26px;position:absolute;right:1px;top:1px;width:20px}.select2-container--default .select2-selection--single .select2-selection__arrow b{border-color:#888 transparent transparent;border-style:solid;border-width:5px 4px 0;height:0;left:50%;margin-left:-4px;margin-top:-2px;position:absolute;top:50%;width:0}.select2-container--default[dir=rtl] .select2-selection--single .select2-selection__clear{float:left}.select2-container--default[dir=rtl] .select2-selection--single .select2-selection__arrow{left:1px;right:auto}.select2-container--default.select2-container--disabled .select2-selection--single{background-color:#eee;cursor:default}.select2-container--default.select2-container--disabled .select2-selection--single .select2-selection__clear{display:none}.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b{border-color:transparent transparent #888;border-width:0 4px 5px}.select2-container--default .select2-selection--multiple{background-color:#fff;border:1px solid #aaa;border-radius:4px;cursor:text}.select2-container--default .select2-selection--multiple .select2-selection__rendered{box-sizing:border-box;list-style:none;margin:0;padding:0 5px;width:100%}.select2-container--default .select2-selection--multiple .select2-selection__rendered li{list-style:none}.select2-container--default .select2-selection--multiple .select2-selection__clear{cursor:pointer;float:right;font-weight:700;margin-right:10px;margin-top:5px;padding:1px}.select2-container--default .select2-selection--multiple .select2-selection__choice{background-color:#e4e4e4;border:1px solid #aaa;border-radius:4px;cursor:default;float:left;margin-right:5px;margin-top:5px;padding:0 5px}.select2-container--default .select2-selection--multiple .select2-selection__choice__remove{color:#999;cursor:pointer;display:inline-block;font-weight:700;margin-right:2px}.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover{color:#333}.select2-container--default[dir=rtl] .select2-selection--multiple .select2-search--inline,.select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__choice{float:right}.select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__choice{margin-left:5px;margin-right:auto}.select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__choice__remove{margin-left:2px;margin-right:auto}.select2-container--default.select2-container--focus .select2-selection--multiple{border:1px solid #000;outline:0}.select2-container--default.select2-container--disabled .select2-selection--multiple{background-color:#eee;cursor:default}.select2-container--default.select2-container--disabled .select2-selection__choice__remove{display:none}.select2-container--default.select2-container--open.select2-container--above .select2-selection--multiple,.select2-container--default.select2-container--open.select2-container--above .select2-selection--single{border-top-left-radius:0;border-top-right-radius:0}.select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple,.select2-container--default.select2-container--open.select2-container--below .select2-selection--single{border-bottom-left-radius:0;border-bottom-right-radius:0}.select2-container--default .select2-search--dropdown .select2-search__field{border:1px solid #aaa}.select2-container--default .select2-search--inline .select2-search__field{-webkit-appearance:textfield;background:transparent;border:none;box-shadow:none;outline:0}.select2-container--default .select2-results>.select2-results__options{max-height:200px;overflow-y:auto}.select2-container--default .select2-results__option[role=group]{padding:0}.select2-container--default .select2-results__option[aria-disabled=true]{color:#999}.select2-container--default .select2-results__option[aria-selected=true]{background-color:#ddd}.select2-container--default .select2-results__option .select2-results__option{padding-left:1em}.select2-container--default .select2-results__option .select2-results__option .select2-results__group{padding-left:0}.select2-container--default .select2-results__option .select2-results__option .select2-results__option{margin-left:-1em;padding-left:2em}.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option{margin-left:-2em;padding-left:3em}.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option{margin-left:-3em;padding-left:4em}.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option{margin-left:-4em;padding-left:5em}.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option{margin-left:-5em;padding-left:6em}.select2-container--default .select2-results__option--highlighted[aria-selected]{background-color:#5897fb;color:#fff}.select2-container--default .select2-results__group{cursor:default;display:block;padding:6px}.select2-container--classic .select2-selection--single{background-color:#f7f7f7;background-image:-webkit-linear-gradient(top,#fff 50%,#eee);background-image:-o-linear-gradient(top,#fff 50%,#eee 100%);background-image:linear-gradient(180deg,#fff 50%,#eee);background-repeat:repeat-x;border:1px solid #aaa;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFFFFFFF",endColorstr="#FFEEEEEE",GradientType=0);outline:0}.select2-container--classic .select2-selection--single:focus{border:1px solid #5897fb}.select2-container--classic .select2-selection--single .select2-selection__rendered{color:#444;line-height:28px}.select2-container--classic .select2-selection--single .select2-selection__clear{cursor:pointer;float:right;font-weight:700;margin-right:10px}.select2-container--classic .select2-selection--single .select2-selection__placeholder{color:#999}.select2-container--classic .select2-selection--single .select2-selection__arrow{background-color:#ddd;background-image:-webkit-linear-gradient(top,#eee 50%,#ccc);background-image:-o-linear-gradient(top,#eee 50%,#ccc 100%);background-image:linear-gradient(180deg,#eee 50%,#ccc);background-repeat:repeat-x;border:none;border-bottom-right-radius:4px;border-left:1px solid #aaa;border-top-right-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFEEEEEE",endColorstr="#FFCCCCCC",GradientType=0);height:26px;position:absolute;right:1px;top:1px;width:20px}.select2-container--classic .select2-selection--single .select2-selection__arrow b{border-color:#888 transparent transparent;border-style:solid;border-width:5px 4px 0;height:0;left:50%;margin-left:-4px;margin-top:-2px;position:absolute;top:50%;width:0}.select2-container--classic[dir=rtl] .select2-selection--single .select2-selection__clear{float:left}.select2-container--classic[dir=rtl] .select2-selection--single .select2-selection__arrow{border:none;border-radius:0;border-bottom-left-radius:4px;border-right:1px solid #aaa;border-top-left-radius:4px;left:1px;right:auto}.select2-container--classic.select2-container--open .select2-selection--single{border:1px solid #5897fb}.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow{background:transparent;border:none}.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow b{border-color:transparent transparent #888;border-width:0 4px 5px}.select2-container--classic.select2-container--open.select2-container--above .select2-selection--single{background-image:-webkit-linear-gradient(top,#fff,#eee 50%);background-image:-o-linear-gradient(top,#fff 0,#eee 50%);background-image:linear-gradient(180deg,#fff 0,#eee 50%);background-repeat:repeat-x;border-top:none;border-top-left-radius:0;border-top-right-radius:0;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFFFFFFF",endColorstr="#FFEEEEEE",GradientType=0)}.select2-container--classic.select2-container--open.select2-container--below .select2-selection--single{background-image:-webkit-linear-gradient(top,#eee 50%,#fff);background-image:-o-linear-gradient(top,#eee 50%,#fff 100%);background-image:linear-gradient(180deg,#eee 50%,#fff);background-repeat:repeat-x;border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFEEEEEE",endColorstr="#FFFFFFFF",GradientType=0)}.select2-container--classic .select2-selection--multiple{background-color:#fff;border:1px solid #aaa;border-radius:4px;cursor:text;outline:0}.select2-container--classic .select2-selection--multiple:focus{border:1px solid #5897fb}.select2-container--classic .select2-selection--multiple .select2-selection__rendered{list-style:none;margin:0;padding:0 5px}.select2-container--classic .select2-selection--multiple .select2-selection__clear{display:none}.select2-container--classic .select2-selection--multiple .select2-selection__choice{background-color:#e4e4e4;border:1px solid #aaa;border-radius:4px;cursor:default;float:left;margin-right:5px;margin-top:5px;padding:0 5px}.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove{color:#888;cursor:pointer;display:inline-block;font-weight:700;margin-right:2px}.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove:hover{color:#555}.select2-container--classic[dir=rtl] .select2-selection--multiple .select2-selection__choice{float:right;margin-left:5px;margin-right:auto}.select2-container--classic[dir=rtl] .select2-selection--multiple .select2-selection__choice__remove{margin-left:2px;margin-right:auto}.select2-container--classic.select2-container--open .select2-selection--multiple{border:1px solid #5897fb}.select2-container--classic.select2-container--open.select2-container--above .select2-selection--multiple{border-top:none;border-top-left-radius:0;border-top-right-radius:0}.select2-container--classic.select2-container--open.select2-container--below .select2-selection--multiple{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0}.select2-container--classic .select2-search--dropdown .select2-search__field{border:1px solid #aaa;outline:0}.select2-container--classic .select2-search--inline .select2-search__field{box-shadow:none;outline:0}.select2-container--classic .select2-dropdown{background-color:#fff;border:1px solid transparent}.select2-container--classic .select2-dropdown--above{border-bottom:none}.select2-container--classic .select2-dropdown--below{border-top:none}.select2-container--classic .select2-results>.select2-results__options{max-height:200px;overflow-y:auto}.select2-container--classic .select2-results__option[role=group]{padding:0}.select2-container--classic .select2-results__option[aria-disabled=true]{color:grey}.select2-container--classic .select2-results__option--highlighted[aria-selected]{background-color:#3875d7;color:#fff}.select2-container--classic .select2-results__group{cursor:default;display:block;padding:6px}.select2-container--classic.select2-container--open .select2-dropdown{border-color:#5897fb}.select2-container{display:block}.select2-container :focus{outline:0}.input-group .select2-container--toptal{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:calc(100% - 121px)}.input-group .input-group-append{height:46px;width:120px}@media (max-width:767px){.input-group{flex-direction:column}.input-group .select2-container--toptal{max-width:100%;width:100%!important}.input-group .input-group-append{margin-left:0;margin-top:12px;width:100%}}.select2-container--toptal .select2-selection{background-color:#fff;border:1px solid #d8d9dc;border-radius:0;box-shadow:none;-webkit-transition:border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;width:100%}.select2-container--toptal .select2-selection .select2-search__field{-webkit-appearance:none;border-radius:0;caret-color:#204ecf;color:#000;font-size:16px;height:24px;line-height:24px;margin:10px 0}@media (min-width:768px){.select2-container--toptal .select2-selection .select2-search__field{font-size:13px;height:20px;line-height:20px;margin:12px 0}}.select2-container--toptal .select2-selection .select2-search__field::-webkit-search-decoration{-webkit-appearance:none}.select2-container--toptal .select2-selection .select2-search__field::placeholder{color:#d8d9dc}.select2-container--toptal .select2-selection .select2-search__field::-webkit-input-placeholder{color:#d8d9dc}.select2-container--toptal .select2-selection .select2-search__field:-ms-input-placeholder{color:#d8d9dc}.select2-container--toptal .select2-selection .select2-search__field::-moz-placeholder{color:#d8d9dc}.select2-container--toptal.select2-container--focus .select2-selection{border-color:#204ecf;box-shadow:none}.select2-container--toptal .select2-dropdown{background-color:#fff;border:none;box-shadow:0 4px 8px 0 rgba(0,0,0,.08);color:#000;font-size:13px;line-height:16px;margin-top:0}.select2-container--toptal .select2-dropdown .select2-results__option[aria-selected=true]{background-color:#d8d9dc}.select2-container--toptal .select2-results__option{padding:10px}.select2-container--toptal .select2-results__message,.select2-container--toptal .select2-results__option--highlighted,.select2-container--toptal .select2-results__option--highlighted.select2-results__option[aria-selected=true]{background-color:rgba(32,78,207,.08)}.select2-container--toptal .select2-results>.select2-results__options{max-height:15em;overflow-y:auto}.select2-container--toptal .select2-selection--multiple{min-height:46px}.select2-container--toptal .select2-selection--multiple .select2-selection__rendered{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;display:block;list-style:none;margin:0;padding:0 10px;width:100%}.select2-container--toptal .select2-selection--multiple .select2-selection__choice{border:1px solid #d8d9dc;border-radius:100px;color:#204ecf;cursor:pointer;float:left;font-size:12px;font-weight:600;line-height:22px;margin:10px 6px 0 0;padding:0 12px}.select2-container--toptal .select2-selection--multiple .select2-selection__choice__remove{color:#455065;float:right;font-size:18px;font-weight:400;margin-left:8px}.select2-container--toptal .select2-selection--multiple .select2-selection__choice__remove:hover{color:#a6abb5}.input-group-append>.btn-gitignore{background:#00cc83;border-radius:0;color:#fff;font-size:14px;line-height:16px;text-align:center;-webkit-transition:background .35s cubic-bezier(0,0,.2,1);transition:background .35s cubic-bezier(0,0,.2,1);width:100%}.input-group-append>.btn-gitignore:focus{border-color:#204ecf;box-shadow:none}.input-group-append>.btn-gitignore:hover{background:#00a369}.internal-linking{border:0;flex-basis:56px;flex-shrink:0;height:56px;overflow:hidden;width:100vw}@media (max-width:768px){.internal-linking{flex-basis:32px;height:32px}}@keyframes ticker{0%{transform:translateX(0)}to{transform:translateX(-50%)}}.internal-linking__container{align-items:center;background-color:#0f256e;color:#fff;display:flex;flex-direction:row;font-family:Proxima Nova,Arial,sans-serif;font-weight:400;height:56px;overflow:hidden;width:100%}.internal-linking__container .internal-linking__title{align-items:center;background-color:#fff;color:#204ecf;display:flex;flex-direction:row;flex-shrink:0;font-size:10px;font-weight:600;height:100%;line-height:12px;text-transform:uppercase;z-index:1}.internal-linking__container .internal-linking__title img{margin:22px 8px 18px 24px}.internal-linking__container .internal-linking__title span{margin:16px 24px 16px 0;white-space:nowrap}.internal-linking__container .internal-linking__ticker-list{animation-duration:180s;animation-iteration-count:infinite;animation-name:ticker;animation-timing-function:linear;display:flex;flex-direction:row;font-size:12px;line-height:16px}.internal-linking__container .internal-linking__ticker-list:hover{animation-play-state:paused}.internal-linking__container .internal-linking__ticker-list .internal-linking__link{color:#fff;margin:20px 28px;padding:5px 12px 3px;text-decoration:underline;white-space:nowrap}@media screen and (max-width:768px){.internal-linking__container{border:none;box-shadow:none;height:32px}.internal-linking__container .internal-linking__title img{margin:8px}.internal-linking__container .internal-linking__title span{font-size:8px;line-height:10px;margin:6px 16px 6px 0}}@media (max-width:768px){.internal-linking__container .internal-linking__ticker-list .internal-linking__link{border:1px solid #fff;border-radius:16px;margin:4px 16px;text-decoration:none}}@font-face{font-display:swap;font-family:Proxima Nova;font-style:normal;font-weight:400;src:url(../fonts/ProximaNova-Regular.woff2) format("woff2"),url(../fonts/ProximaNova-Regular.woff) format("woff"),url(../fonts/ProximaNova-Regular.otf) format("opentype")}@font-face{font-display:swap;font-family:Proxima Nova;font-style:normal;font-weight:600;src:url(../fonts/ProximaNova-Semibold.woff2) format("woff2"),url(../fonts/ProximaNova-Semibold.woff) format("woff"),url(../fonts/ProximaNova-Semibold.otf) format("opentype")}body,html{background-color:transparent;height:100%}body{color:#000;display:flex;flex-direction:column;font-family:Proxima Nova,Arial,sans-serif;font-size:16px;font-weight:400;line-height:1.5;margin:0;min-width:320px}a{color:#204ecf;text-decoration:none}a:focus,a:hover{text-decoration:underline}.content-wrapper{display:flex;flex-direction:column;min-height:100%;padding-top:72px;position:relative}header{background:#204ecf;color:#fff;height:72px;overflow-x:hidden;position:fixed;top:0;width:100%;z-index:1100}header .container{align-items:center;display:flex;height:100%;justify-content:space-between}header a{display:block;line-height:0}header .header-left-column{align-items:center;display:flex;padding:0 10px}header .header-left-column a{padding-right:16px}header .header-left-column a img{height:30px;min-width:100px}header .header-left-column h1{border-left:1px solid #ebeced;font-size:17px;line-height:28px;margin:0;padding-left:16px}header .header-right-column img{height:24px}main{flex:1 0 400px;width:100%}@media (min-width:768px){main{display:flex}}main .masthead{margin:0 auto;max-width:580px;overflow-y:auto;text-align:center}main .masthead-top{align-items:center;display:flex;flex-direction:column;margin-bottom:25px;margin-top:120px}@media (min-width:768px){main .masthead-top{margin-top:180px}}@media (max-width:320px){main .masthead-top{margin-top:42px}}main .masthead-top img{height:auto;max-width:370px;width:100%}main .masthead-top h2{color:#455065;font-size:16px;line-height:16px;margin:20px 0}main .input-group{overflow:auto}main .masthead-bottom{margin-bottom:60px;margin-top:40px}main .masthead-bottom ul{display:flex;flex-direction:column;justify-content:center;list-style:none;margin:0;padding:0}main .masthead-bottom ul li{margin-bottom:16px}main .masthead-bottom ul li a{font-size:16px;line-height:16px;padding-bottom:8px}main .masthead-bottom ul li a:focus,main .masthead-bottom ul li a:hover{border-bottom:1px solid #204ecf;text-decoration:none}footer{color:#000;height:142px;padding-bottom:64px}footer>div{margin:0 auto;max-width:624px;padding:0 16px;width:100%}footer .carbon-wrap{align-items:center;display:flex;justify-content:center}footer a.carbon-img{height:78px}footer a.carbon-img img{height:100%}footer a.carbon-text{font-size:12px;line-height:20px;padding-left:8px}footer .carbon-poweredby{display:none}.container{margin-left:auto;margin-right:auto;max-width:100%;padding-left:16px;padding-right:16px;position:relative}@media (min-width:1200px){.container{max-width:1344px}}@media (min-width:576px){.container{width:540px}main .masthead-bottom ul{flex-direction:row}main .masthead-bottom ul li:not(:first-child):before{background-color:#a6abb5;content:"";display:inline-block;height:12px;margin:0 21px;width:1px}}@media (min-width:768px){.container{width:720px}}@media (min-width:992px){.container{width:960px}}@media (min-width:1200px){.container{width:1376px}header .header-right-column{padding-right:98px}}#input-gitignore{-webkit-appearance:none;border:1px solid #d8d9dc;border-radius:0;height:46px;line-height:46px}#input-gitignore::-ms-expand{display:none}#internal-linking{border:0;box-shadow:0 -1px 3px 0 rgba(0,0,0,.1);height:56px}@media (max-width:768px){#internal-linking{height:32px}}

================================================
FILE: Public/assets/main.js
================================================
/*! For license information please see main.js.LICENSE.txt */
(()=>{var e={755:function(e,t){var n;!function(t,n){"use strict";"object"==typeof e.exports?e.exports=t.document?n(t,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return n(e)}:n(t)}("undefined"!=typeof window?window:this,(function(r,i){"use strict";var o=[],s=Object.getPrototypeOf,a=o.slice,l=o.flat?function(e){return o.flat.call(e)}:function(e){return o.concat.apply([],e)},c=o.push,u=o.indexOf,p={},d=p.toString,f=p.hasOwnProperty,h=f.toString,g=h.call(Object),m={},v=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType&&"function"!=typeof e.item},y=function(e){return null!=e&&e===e.window},b=r.document,x={type:!0,src:!0,nonce:!0,noModule:!0};function w(e,t,n){var r,i,o=(n=n||b).createElement("script");if(o.text=e,t)for(r in x)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function _(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?p[d.call(e)]||"object":typeof e}var T="3.6.0",C=function(e,t){return new C.fn.init(e,t)};function A(e){var t=!!e&&"length"in e&&e.length,n=_(e);return!v(e)&&!y(e)&&("array"===n||0===t||"number"==typeof t&&t>0&&t-1 in e)}C.fn=C.prototype={jquery:T,constructor:C,length:0,toArray:function(){return a.call(this)},get:function(e){return null==e?a.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=C.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return C.each(this,e)},map:function(e){return this.pushStack(C.map(this,(function(t,n){return e.call(t,n,t)})))},slice:function(){return this.pushStack(a.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},even:function(){return this.pushStack(C.grep(this,(function(e,t){return(t+1)%2})))},odd:function(){return this.pushStack(C.grep(this,(function(e,t){return t%2})))},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(n>=0&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:c,sort:o.sort,splice:o.splice},C.extend=C.fn.extend=function(){var e,t,n,r,i,o,s=arguments[0]||{},a=1,l=arguments.length,c=!1;for("boolean"==typeof s&&(c=s,s=arguments[a]||{},a++),"object"==typeof s||v(s)||(s={}),a===l&&(s=this,a--);a<l;a++)if(null!=(e=arguments[a]))for(t in e)r=e[t],"__proto__"!==t&&s!==r&&(c&&r&&(C.isPlainObject(r)||(i=Array.isArray(r)))?(n=s[t],o=i&&!Array.isArray(n)?[]:i||C.isPlainObject(n)?n:{},i=!1,s[t]=C.extend(c,o,r)):void 0!==r&&(s[t]=r));return s},C.extend({expando:"jQuery"+(T+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isPlainObject:function(e){var t,n;return!(!e||"[object Object]"!==d.call(e)||(t=s(e))&&("function"!=typeof(n=f.call(t,"constructor")&&t.constructor)||h.call(n)!==g))},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},globalEval:function(e,t,n){w(e,{nonce:t&&t.nonce},n)},each:function(e,t){var n,r=0;if(A(e))for(n=e.length;r<n&&!1!==t.call(e[r],r,e[r]);r++);else for(r in e)if(!1===t.call(e[r],r,e[r]))break;return e},makeArray:function(e,t){var n=t||[];return null!=e&&(A(Object(e))?C.merge(n,"string"==typeof e?[e]:e):c.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:u.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;r<n;r++)e[i++]=t[r];return e.length=i,e},grep:function(e,t,n){for(var r=[],i=0,o=e.length,s=!n;i<o;i++)!t(e[i],i)!==s&&r.push(e[i]);return r},map:function(e,t,n){var r,i,o=0,s=[];if(A(e))for(r=e.length;o<r;o++)null!=(i=t(e[o],o,n))&&s.push(i);else for(o in e)null!=(i=t(e[o],o,n))&&s.push(i);return l(s)},guid:1,support:m}),"function"==typeof Symbol&&(C.fn[Symbol.iterator]=o[Symbol.iterator]),C.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),(function(e,t){p["[object "+t+"]"]=t.toLowerCase()}));var E=function(e){var t,n,r,i,o,s,a,l,c,u,p,d,f,h,g,m,v,y,b,x="sizzle"+1*new Date,w=e.document,_=0,T=0,C=le(),A=le(),E=le(),S=le(),$=function(e,t){return e===t&&(p=!0),0},D={}.hasOwnProperty,k=[],j=k.pop,L=k.push,O=k.push,q=k.slice,N=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},P="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",H="[\\x20\\t\\r\\n\\f]",I="(?:\\\\[\\da-fA-F]{1,6}[\\x20\\t\\r\\n\\f]?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\\x7f])+",R="\\[[\\x20\\t\\r\\n\\f]*("+I+")(?:"+H+"*([*^$|!~]?=)"+H+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+I+"))|)"+H+"*\\]",M=":("+I+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+R+")*)|.*)\\)|)",U=new RegExp(H+"+","g"),F=new RegExp("^[\\x20\\t\\r\\n\\f]+|((?:^|[^\\\\])(?:\\\\.)*)[\\x20\\t\\r\\n\\f]+$","g"),W=new RegExp("^[\\x20\\t\\r\\n\\f]*,[\\x20\\t\\r\\n\\f]*"),B=new RegExp("^[\\x20\\t\\r\\n\\f]*([>+~]|[\\x20\\t\\r\\n\\f])[\\x20\\t\\r\\n\\f]*"),z=new RegExp(H+"|>"),G=new RegExp(M),Y=new RegExp("^"+I+"$"),X={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+R),PSEUDO:new RegExp("^"+M),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\([\\x20\\t\\r\\n\\f]*(even|odd|(([+-]|)(\\d*)n|)[\\x20\\t\\r\\n\\f]*(?:([+-]|)[\\x20\\t\\r\\n\\f]*(\\d+)|))[\\x20\\t\\r\\n\\f]*\\)|)","i"),bool:new RegExp("^(?:"+P+")$","i"),needsContext:new RegExp("^[\\x20\\t\\r\\n\\f]*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\([\\x20\\t\\r\\n\\f]*((?:-\\d)?\\d*)[\\x20\\t\\r\\n\\f]*\\)|)(?=[^-]|$)","i")},K=/HTML$/i,V=/^(?:input|select|textarea|button)$/i,Q=/^h\d$/i,Z=/^[^{]+\{\s*\[native \w/,J=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\[\\da-fA-F]{1,6}[\\x20\\t\\r\\n\\f]?|\\\\([^\\r\\n\\f])","g"),ne=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"�":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){d()},se=xe((function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()}),{dir:"parentNode",next:"legend"});try{O.apply(k=q.call(w.childNodes),w.childNodes),k[w.childNodes.length].nodeType}catch(e){O={apply:k.length?function(e,t){L.apply(e,q.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}function ae(e,t,r,i){var o,a,c,u,p,h,v,y=t&&t.ownerDocument,w=t?t.nodeType:9;if(r=r||[],"string"!=typeof e||!e||1!==w&&9!==w&&11!==w)return r;if(!i&&(d(t),t=t||f,g)){if(11!==w&&(p=J.exec(e)))if(o=p[1]){if(9===w){if(!(c=t.getElementById(o)))return r;if(c.id===o)return r.push(c),r}else if(y&&(c=y.getElementById(o))&&b(t,c)&&c.id===o)return r.push(c),r}else{if(p[2])return O.apply(r,t.getElementsByTagName(e)),r;if((o=p[3])&&n.getElementsByClassName&&t.getElementsByClassName)return O.apply(r,t.getElementsByClassName(o)),r}if(n.qsa&&!S[e+" "]&&(!m||!m.test(e))&&(1!==w||"object"!==t.nodeName.toLowerCase())){if(v=e,y=t,1===w&&(z.test(e)||B.test(e))){for((y=ee.test(e)&&ve(t.parentNode)||t)===t&&n.scope||((u=t.getAttribute("id"))?u=u.replace(re,ie):t.setAttribute("id",u=x)),a=(h=s(e)).length;a--;)h[a]=(u?"#"+u:":scope")+" "+be(h[a]);v=h.join(",")}try{return O.apply(r,y.querySelectorAll(v)),r}catch(t){S(e,!0)}finally{u===x&&t.removeAttribute("id")}}}return l(e.replace(F,"$1"),t,r,i)}function le(){var e=[];return function t(n,i){return e.push(n+" ")>r.cacheLength&&delete t[e.shift()],t[n+" "]=i}}function ce(e){return e[x]=!0,e}function ue(e){var t=f.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function pe(e,t){for(var n=e.split("|"),i=n.length;i--;)r.attrHandle[n[i]]=t}function de(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function fe(e){return function(t){return"input"===t.nodeName.toLowerCase()&&t.type===e}}function he(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function ge(e){return function(t){return"form"in t?t.parentNode&&!1===t.disabled?"label"in t?"label"in t.parentNode?t.parentNode.disabled===e:t.disabled===e:t.isDisabled===e||t.isDisabled!==!e&&se(t)===e:t.disabled===e:"label"in t&&t.disabled===e}}function me(e){return ce((function(t){return t=+t,ce((function(n,r){for(var i,o=e([],n.length,t),s=o.length;s--;)n[i=o[s]]&&(n[i]=!(r[i]=n[i]))}))}))}function ve(e){return e&&void 0!==e.getElementsByTagName&&e}for(t in n=ae.support={},o=ae.isXML=function(e){var t=e&&e.namespaceURI,n=e&&(e.ownerDocument||e).documentElement;return!K.test(t||n&&n.nodeName||"HTML")},d=ae.setDocument=function(e){var t,i,s=e?e.ownerDocument||e:w;return s!=f&&9===s.nodeType&&s.documentElement?(h=(f=s).documentElement,g=!o(f),w!=f&&(i=f.defaultView)&&i.top!==i&&(i.addEventListener?i.addEventListener("unload",oe,!1):i.attachEvent&&i.attachEvent("onunload",oe)),n.scope=ue((function(e){return h.appendChild(e).appendChild(f.createElement("div")),void 0!==e.querySelectorAll&&!e.querySelectorAll(":scope fieldset div").length})),n.attributes=ue((function(e){return e.className="i",!e.getAttribute("className")})),n.getElementsByTagName=ue((function(e){return e.appendChild(f.createComment("")),!e.getElementsByTagName("*").length})),n.getElementsByClassName=Z.test(f.getElementsByClassName),n.getById=ue((function(e){return h.appendChild(e).id=x,!f.getElementsByName||!f.getElementsByName(x).length})),n.getById?(r.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},r.find.ID=function(e,t){if(void 0!==t.getElementById&&g){var n=t.getElementById(e);return n?[n]:[]}}):(r.filter.ID=function(e){var t=e.replace(te,ne);return function(e){var n=void 0!==e.getAttributeNode&&e.getAttributeNode("id");return n&&n.value===t}},r.find.ID=function(e,t){if(void 0!==t.getElementById&&g){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];for(i=t.getElementsByName(e),r=0;o=i[r++];)if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),r.find.TAG=n.getElementsByTagName?function(e,t){return void 0!==t.getElementsByTagName?t.getElementsByTagName(e):n.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){for(;n=o[i++];)1===n.nodeType&&r.push(n);return r}return o},r.find.CLASS=n.getElementsByClassName&&function(e,t){if(void 0!==t.getElementsByClassName&&g)return t.getElementsByClassName(e)},v=[],m=[],(n.qsa=Z.test(f.querySelectorAll))&&(ue((function(e){var t;h.appendChild(e).innerHTML="<a id='"+x+"'></a><select id='"+x+"-\r\\' msallowcapture=''><option selected=''></option></select>",e.querySelectorAll("[msallowcapture^='']").length&&m.push("[*^$]=[\\x20\\t\\r\\n\\f]*(?:''|\"\")"),e.querySelectorAll("[selected]").length||m.push("\\[[\\x20\\t\\r\\n\\f]*(?:value|"+P+")"),e.querySelectorAll("[id~="+x+"-]").length||m.push("~="),(t=f.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||m.push("\\[[\\x20\\t\\r\\n\\f]*name[\\x20\\t\\r\\n\\f]*=[\\x20\\t\\r\\n\\f]*(?:''|\"\")"),e.querySelectorAll(":checked").length||m.push(":checked"),e.querySelectorAll("a#"+x+"+*").length||m.push(".#.+[+~]"),e.querySelectorAll("\\\f"),m.push("[\\r\\n\\f]")})),ue((function(e){e.innerHTML="<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";var t=f.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&m.push("name[\\x20\\t\\r\\n\\f]*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&m.push(":enabled",":disabled"),h.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&m.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),m.push(",.*:")}))),(n.matchesSelector=Z.test(y=h.matches||h.webkitMatchesSelector||h.mozMatchesSelector||h.oMatchesSelector||h.msMatchesSelector))&&ue((function(e){n.disconnectedMatch=y.call(e,"*"),y.call(e,"[s!='']:x"),v.push("!=",M)})),m=m.length&&new RegExp(m.join("|")),v=v.length&&new RegExp(v.join("|")),t=Z.test(h.compareDocumentPosition),b=t||Z.test(h.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},$=t?function(e,t){if(e===t)return p=!0,0;var r=!e.compareDocumentPosition-!t.compareDocumentPosition;return r||(1&(r=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!n.sortDetached&&t.compareDocumentPosition(e)===r?e==f||e.ownerDocument==w&&b(w,e)?-1:t==f||t.ownerDocument==w&&b(w,t)?1:u?N(u,e)-N(u,t):0:4&r?-1:1)}:function(e,t){if(e===t)return p=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,s=[e],a=[t];if(!i||!o)return e==f?-1:t==f?1:i?-1:o?1:u?N(u,e)-N(u,t):0;if(i===o)return de(e,t);for(n=e;n=n.parentNode;)s.unshift(n);for(n=t;n=n.parentNode;)a.unshift(n);for(;s[r]===a[r];)r++;return r?de(s[r],a[r]):s[r]==w?-1:a[r]==w?1:0},f):f},ae.matches=function(e,t){return ae(e,null,null,t)},ae.matchesSelector=function(e,t){if(d(e),n.matchesSelector&&g&&!S[t+" "]&&(!v||!v.test(t))&&(!m||!m.test(t)))try{var r=y.call(e,t);if(r||n.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(e){S(t,!0)}return ae(t,f,null,[e]).length>0},ae.contains=function(e,t){return(e.ownerDocument||e)!=f&&d(e),b(e,t)},ae.attr=function(e,t){(e.ownerDocument||e)!=f&&d(e);var i=r.attrHandle[t.toLowerCase()],o=i&&D.call(r.attrHandle,t.toLowerCase())?i(e,t,!g):void 0;return void 0!==o?o:n.attributes||!g?e.getAttribute(t):(o=e.getAttributeNode(t))&&o.specified?o.value:null},ae.escape=function(e){return(e+"").replace(re,ie)},ae.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},ae.uniqueSort=function(e){var t,r=[],i=0,o=0;if(p=!n.detectDuplicates,u=!n.sortStable&&e.slice(0),e.sort($),p){for(;t=e[o++];)t===e[o]&&(i=r.push(o));for(;i--;)e.splice(r[i],1)}return u=null,e},i=ae.getText=function(e){var t,n="",r=0,o=e.nodeType;if(o){if(1===o||9===o||11===o){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=i(e)}else if(3===o||4===o)return e.nodeValue}else for(;t=e[r++];)n+=i(t);return n},(r=ae.selectors={cacheLength:50,createPseudo:ce,match:X,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(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===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]||ae.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]&&ae.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return X.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&G.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(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=C[e+" "];return t||(t=new RegExp("(^|[\\x20\\t\\r\\n\\f])"+e+"("+H+"|$)"))&&C(e,(function(e){return t.test("string"==typeof e.className&&e.className||void 0!==e.getAttribute&&e.getAttribute("class")||"")}))},ATTR:function(e,t,n){return function(r){var i=ae.attr(r,e);return null==i?"!="===t:!t||(i+="","="===t?i===n:"!="===t?i!==n:"^="===t?n&&0===i.indexOf(n):"*="===t?n&&i.indexOf(n)>-1:"$="===t?n&&i.slice(-n.length)===n:"~="===t?(" "+i.replace(U," ")+" ").indexOf(n)>-1:"|="===t&&(i===n||i.slice(0,n.length+1)===n+"-"))}},CHILD:function(e,t,n,r,i){var o="nth"!==e.slice(0,3),s="last"!==e.slice(-4),a="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,l){var c,u,p,d,f,h,g=o!==s?"nextSibling":"previousSibling",m=t.parentNode,v=a&&t.nodeName.toLowerCase(),y=!l&&!a,b=!1;if(m){if(o){for(;g;){for(d=t;d=d[g];)if(a?d.nodeName.toLowerCase()===v:1===d.nodeType)return!1;h=g="only"===e&&!h&&"nextSibling"}return!0}if(h=[s?m.firstChild:m.lastChild],s&&y){for(b=(f=(c=(u=(p=(d=m)[x]||(d[x]={}))[d.uniqueID]||(p[d.uniqueID]={}))[e]||[])[0]===_&&c[1])&&c[2],d=f&&m.childNodes[f];d=++f&&d&&d[g]||(b=f=0)||h.pop();)if(1===d.nodeType&&++b&&d===t){u[e]=[_,f,b];break}}else if(y&&(b=f=(c=(u=(p=(d=t)[x]||(d[x]={}))[d.uniqueID]||(p[d.uniqueID]={}))[e]||[])[0]===_&&c[1]),!1===b)for(;(d=++f&&d&&d[g]||(b=f=0)||h.pop())&&((a?d.nodeName.toLowerCase()!==v:1!==d.nodeType)||!++b||(y&&((u=(p=d[x]||(d[x]={}))[d.uniqueID]||(p[d.uniqueID]={}))[e]=[_,b]),d!==t)););return(b-=i)===r||b%r==0&&b/r>=0}}},PSEUDO:function(e,t){var n,i=r.pseudos[e]||r.setFilters[e.toLowerCase()]||ae.error("unsupported pseudo: "+e);return i[x]?i(t):i.length>1?(n=[e,e,"",t],r.setFilters.hasOwnProperty(e.toLowerCase())?ce((function(e,n){for(var r,o=i(e,t),s=o.length;s--;)e[r=N(e,o[s])]=!(n[r]=o[s])})):function(e){return i(e,0,n)}):i}},pseudos:{not:ce((function(e){var t=[],n=[],r=a(e.replace(F,"$1"));return r[x]?ce((function(e,t,n,i){for(var o,s=r(e,null,i,[]),a=e.length;a--;)(o=s[a])&&(e[a]=!(t[a]=o))})):function(e,i,o){return t[0]=e,r(t,null,o,n),t[0]=null,!n.pop()}})),has:ce((function(e){return function(t){return ae(e,t).length>0}})),contains:ce((function(e){return e=e.replace(te,ne),function(t){return(t.textContent||i(t)).indexOf(e)>-1}})),lang:ce((function(e){return Y.test(e||"")||ae.error("unsupported lang: "+e),e=e.replace(te,ne).toLowerCase(),function(t){var n;do{if(n=g?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return(n=n.toLowerCase())===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===h},focus:function(e){return e===f.activeElement&&(!f.hasFocus||f.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:ge(!1),disabled:ge(!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,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!r.pseudos.empty(e)},header:function(e){return Q.test(e.nodeName)},input:function(e){return V.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:me((function(){return[0]})),last:me((function(e,t){return[t-1]})),eq:me((function(e,t,n){return[n<0?n+t:n]})),even:me((function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e})),odd:me((function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e})),lt:me((function(e,t,n){for(var r=n<0?n+t:n>t?t:n;--r>=0;)e.push(r);return e})),gt:me((function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r);return e}))}}).pseudos.nth=r.pseudos.eq,{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})r.pseudos[t]=fe(t);for(t in{submit:!0,reset:!0})r.pseudos[t]=he(t);function ye(){}function be(e){for(var t=0,n=e.length,r="";t<n;t++)r+=e[t].value;return r}function xe(e,t,n){var r=t.dir,i=t.next,o=i||r,s=n&&"parentNode"===o,a=T++;return t.first?function(t,n,i){for(;t=t[r];)if(1===t.nodeType||s)return e(t,n,i);return!1}:function(t,n,l){var c,u,p,d=[_,a];if(l){for(;t=t[r];)if((1===t.nodeType||s)&&e(t,n,l))return!0}else for(;t=t[r];)if(1===t.nodeType||s)if(u=(p=t[x]||(t[x]={}))[t.uniqueID]||(p[t.uniqueID]={}),i&&i===t.nodeName.toLowerCase())t=t[r]||t;else{if((c=u[o])&&c[0]===_&&c[1]===a)return d[2]=c[2];if(u[o]=d,d[2]=e(t,n,l))return!0}return!1}}function we(e){return e.length>1?function(t,n,r){for(var i=e.length;i--;)if(!e[i](t,n,r))return!1;return!0}:e[0]}function _e(e,t,n,r,i){for(var o,s=[],a=0,l=e.length,c=null!=t;a<l;a++)(o=e[a])&&(n&&!n(o,r,i)||(s.push(o),c&&t.push(a)));return s}function Te(e,t,n,r,i,o){return r&&!r[x]&&(r=Te(r)),i&&!i[x]&&(i=Te(i,o)),ce((function(o,s,a,l){var c,u,p,d=[],f=[],h=s.length,g=o||function(e,t,n){for(var r=0,i=t.length;r<i;r++)ae(e,t[r],n);return n}(t||"*",a.nodeType?[a]:a,[]),m=!e||!o&&t?g:_e(g,d,e,a,l),v=n?i||(o?e:h||r)?[]:s:m;if(n&&n(m,v,a,l),r)for(c=_e(v,f),r(c,[],a,l),u=c.length;u--;)(p=c[u])&&(v[f[u]]=!(m[f[u]]=p));if(o){if(i||e){if(i){for(c=[],u=v.length;u--;)(p=v[u])&&c.push(m[u]=p);i(null,v=[],c,l)}for(u=v.length;u--;)(p=v[u])&&(c=i?N(o,p):d[u])>-1&&(o[c]=!(s[c]=p))}}else v=_e(v===s?v.splice(h,v.length):v),i?i(null,s,v,l):O.apply(s,v)}))}function Ce(e){for(var t,n,i,o=e.length,s=r.relative[e[0].type],a=s||r.relative[" "],l=s?1:0,u=xe((function(e){return e===t}),a,!0),p=xe((function(e){return N(t,e)>-1}),a,!0),d=[function(e,n,r){var i=!s&&(r||n!==c)||((t=n).nodeType?u(e,n,r):p(e,n,r));return t=null,i}];l<o;l++)if(n=r.relative[e[l].type])d=[xe(we(d),n)];else{if((n=r.filter[e[l].type].apply(null,e[l].matches))[x]){for(i=++l;i<o&&!r.relative[e[i].type];i++);return Te(l>1&&we(d),l>1&&be(e.slice(0,l-1).concat({value:" "===e[l-2].type?"*":""})).replace(F,"$1"),n,l<i&&Ce(e.slice(l,i)),i<o&&Ce(e=e.slice(i)),i<o&&be(e))}d.push(n)}return we(d)}return ye.prototype=r.filters=r.pseudos,r.setFilters=new ye,s=ae.tokenize=function(e,t){var n,i,o,s,a,l,c,u=A[e+" "];if(u)return t?0:u.slice(0);for(a=e,l=[],c=r.preFilter;a;){for(s in n&&!(i=W.exec(a))||(i&&(a=a.slice(i[0].length)||a),l.push(o=[])),n=!1,(i=B.exec(a))&&(n=i.shift(),o.push({value:n,type:i[0].replace(F," ")}),a=a.slice(n.length)),r.filter)!(i=X[s].exec(a))||c[s]&&!(i=c[s](i))||(n=i.shift(),o.push({value:n,type:s,matches:i}),a=a.slice(n.length));if(!n)break}return t?a.length:a?ae.error(e):A(e,l).slice(0)},a=ae.compile=function(e,t){var n,i=[],o=[],a=E[e+" "];if(!a){for(t||(t=s(e)),n=t.length;n--;)(a=Ce(t[n]))[x]?i.push(a):o.push(a);(a=E(e,function(e,t){var n=t.length>0,i=e.length>0,o=function(o,s,a,l,u){var p,h,m,v=0,y="0",b=o&&[],x=[],w=c,T=o||i&&r.find.TAG("*",u),C=_+=null==w?1:Math.random()||.1,A=T.length;for(u&&(c=s==f||s||u);y!==A&&null!=(p=T[y]);y++){if(i&&p){for(h=0,s||p.ownerDocument==f||(d(p),a=!g);m=e[h++];)if(m(p,s||f,a)){l.push(p);break}u&&(_=C)}n&&((p=!m&&p)&&v--,o&&b.push(p))}if(v+=y,n&&y!==v){for(h=0;m=t[h++];)m(b,x,s,a);if(o){if(v>0)for(;y--;)b[y]||x[y]||(x[y]=j.call(l));x=_e(x)}O.apply(l,x),u&&!o&&x.length>0&&v+t.length>1&&ae.uniqueSort(l)}return u&&(_=C,c=w),b};return n?ce(o):o}(o,i))).selector=e}return a},l=ae.select=function(e,t,n,i){var o,l,c,u,p,d="function"==typeof e&&e,f=!i&&s(e=d.selector||e);if(n=n||[],1===f.length){if((l=f[0]=f[0].slice(0)).length>2&&"ID"===(c=l[0]).type&&9===t.nodeType&&g&&r.relative[l[1].type]){if(!(t=(r.find.ID(c.matches[0].replace(te,ne),t)||[])[0]))return n;d&&(t=t.parentNode),e=e.slice(l.shift().value.length)}for(o=X.needsContext.test(e)?0:l.length;o--&&(c=l[o],!r.relative[u=c.type]);)if((p=r.find[u])&&(i=p(c.matches[0].replace(te,ne),ee.test(l[0].type)&&ve(t.parentNode)||t))){if(l.splice(o,1),!(e=i.length&&be(l)))return O.apply(n,i),n;break}}return(d||a(e,f))(i,t,!g,n,!t||ee.test(e)&&ve(t.parentNode)||t),n},n.sortStable=x.split("").sort($).join("")===x,n.detectDuplicates=!!p,d(),n.sortDetached=ue((function(e){return 1&e.compareDocumentPosition(f.createElement("fieldset"))})),ue((function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")}))||pe("type|href|height|width",(function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)})),n.attributes&&ue((function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")}))||pe("value",(function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue})),ue((function(e){return null==e.getAttribute("disabled")}))||pe(P,(function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null})),ae}(r);C.find=E,C.expr=E.selectors,C.expr[":"]=C.expr.pseudos,C.uniqueSort=C.unique=E.uniqueSort,C.text=E.getText,C.isXMLDoc=E.isXML,C.contains=E.contains,C.escapeSelector=E.escape;var S=function(e,t,n){for(var r=[],i=void 0!==n;(e=e[t])&&9!==e.nodeType;)if(1===e.nodeType){if(i&&C(e).is(n))break;r.push(e)}return r},$=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},D=C.expr.match.needsContext;function k(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var j=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function L(e,t,n){return v(t)?C.grep(e,(function(e,r){return!!t.call(e,r,e)!==n})):t.nodeType?C.grep(e,(function(e){return e===t!==n})):"string"!=typeof t?C.grep(e,(function(e){return u.call(t,e)>-1!==n})):C.filter(t,e,n)}C.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?C.find.matchesSelector(r,e)?[r]:[]:C.find.matches(e,C.grep(t,(function(e){return 1===e.nodeType})))},C.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(C(e).filter((function(){for(t=0;t<r;t++)if(C.contains(i[t],this))return!0})));for(n=this.pushStack([]),t=0;t<r;t++)C.find(e,i[t],n);return r>1?C.uniqueSort(n):n},filter:function(e){return this.pushStack(L(this,e||[],!1))},not:function(e){return this.pushStack(L(this,e||[],!0))},is:function(e){return!!L(this,"string"==typeof e&&D.test(e)?C(e):e||[],!1).length}});var O,q=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(C.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||O,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&e.length>=3?[null,e,null]:q.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof C?t[0]:t,C.merge(this,C.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:b,!0)),j.test(r[1])&&C.isPlainObject(t))for(r in t)v(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=b.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):v(e)?void 0!==n.ready?n.ready(e):e(C):C.makeArray(e,this)}).prototype=C.fn,O=C(b);var N=/^(?:parents|prev(?:Until|All))/,P={children:!0,contents:!0,next:!0,prev:!0};function H(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}C.fn.extend({has:function(e){var t=C(e,this),n=t.length;return this.filter((function(){for(var e=0;e<n;e++)if(C.contains(this,t[e]))return!0}))},closest:function(e,t){var n,r=0,i=this.length,o=[],s="string"!=typeof e&&C(e);if(!D.test(e))for(;r<i;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(s?s.index(n)>-1:1===n.nodeType&&C.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(o.length>1?C.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?u.call(C(e),this[0]):u.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(C.uniqueSort(C.merge(this.get(),C(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),C.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return S(e,"parentNode")},parentsUntil:function(e,t,n){return S(e,"parentNode",n)},next:function(e){return H(e,"nextSibling")},prev:function(e){return H(e,"previousSibling")},nextAll:function(e){return S(e,"nextSibling")},prevAll:function(e){return S(e,"previousSibling")},nextUntil:function(e,t,n){return S(e,"nextSibling",n)},prevUntil:function(e,t,n){return S(e,"previousSibling",n)},siblings:function(e){return $((e.parentNode||{}).firstChild,e)},children:function(e){return $(e.firstChild)},contents:function(e){return null!=e.contentDocument&&s(e.contentDocument)?e.contentDocument:(k(e,"template")&&(e=e.content||e),C.merge([],e.childNodes))}},(function(e,t){C.fn[e]=function(n,r){var i=C.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=C.filter(r,i)),this.length>1&&(P[e]||C.uniqueSort(i),N.test(e)&&i.reverse()),this.pushStack(i)}}));var I=/[^\x20\t\r\n\f]+/g;function R(e){return e}function M(e){throw e}function U(e,t,n,r){var i;try{e&&v(i=e.promise)?i.call(e).done(t).fail(n):e&&v(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}C.Callbacks=function(e){e="string"==typeof e?function(e){var t={};return C.each(e.match(I)||[],(function(e,n){t[n]=!0})),t}(e):C.extend({},e);var t,n,r,i,o=[],s=[],a=-1,l=function(){for(i=i||e.once,r=t=!0;s.length;a=-1)for(n=s.shift();++a<o.length;)!1===o[a].apply(n[0],n[1])&&e.stopOnFalse&&(a=o.length,n=!1);e.memory||(n=!1),t=!1,i&&(o=n?[]:"")},c={add:function(){return o&&(n&&!t&&(a=o.length-1,s.push(n)),function t(n){C.each(n,(function(n,r){v(r)?e.unique&&c.has(r)||o.push(r):r&&r.length&&"string"!==_(r)&&t(r)}))}(arguments),n&&!t&&l()),this},remove:function(){return C.each(arguments,(function(e,t){for(var n;(n=C.inArray(t,o,n))>-1;)o.splice(n,1),n<=a&&a--})),this},has:function(e){return e?C.inArray(e,o)>-1:o.length>0},empty:function(){return o&&(o=[]),this},disable:function(){return i=s=[],o=n="",this},disabled:function(){return!o},lock:function(){return i=s=[],n||t||(o=n=""),this},locked:function(){return!!i},fireWith:function(e,n){return i||(n=[e,(n=n||[]).slice?n.slice():n],s.push(n),t||l()),this},fire:function(){return c.fireWith(this,arguments),this},fired:function(){return!!r}};return c},C.extend({Deferred:function(e){var t=[["notify","progress",C.Callbacks("memory"),C.Callbacks("memory"),2],["resolve","done",C.Callbacks("once memory"),C.Callbacks("once memory"),0,"resolved"],["reject","fail",C.Callbacks("once memory"),C.Callbacks("once memory"),1,"rejected"]],n="pending",i={state:function(){return n},always:function(){return o.done(arguments).fail(arguments),this},catch:function(e){return i.then(null,e)},pipe:function(){var e=arguments;return C.Deferred((function(n){C.each(t,(function(t,r){var i=v(e[r[4]])&&e[r[4]];o[r[1]]((function(){var e=i&&i.apply(this,arguments);e&&v(e.promise)?e.promise().progress(n.notify).done(n.resolve).fail(n.reject):n[r[0]+"With"](this,i?[e]:arguments)}))})),e=null})).promise()},then:function(e,n,i){var o=0;function s(e,t,n,i){return function(){var a=this,l=arguments,c=function(){var r,c;if(!(e<o)){if((r=n.apply(a,l))===t.promise())throw new TypeError("Thenable self-resolution");c=r&&("object"==typeof r||"function"==typeof r)&&r.then,v(c)?i?c.call(r,s(o,t,R,i),s(o,t,M,i)):(o++,c.call(r,s(o,t,R,i),s(o,t,M,i),s(o,t,R,t.notifyWith))):(n!==R&&(a=void 0,l=[r]),(i||t.resolveWith)(a,l))}},u=i?c:function(){try{c()}catch(r){C.Deferred.exceptionHook&&C.Deferred.exceptionHook(r,u.stackTrace),e+1>=o&&(n!==M&&(a=void 0,l=[r]),t.rejectWith(a,l))}};e?u():(C.Deferred.getStackHook&&(u.stackTrace=C.Deferred.getStackHook()),r.setTimeout(u))}}return C.Deferred((function(r){t[0][3].add(s(0,r,v(i)?i:R,r.notifyWith)),t[1][3].add(s(0,r,v(e)?e:R)),t[2][3].add(s(0,r,v(n)?n:M))})).promise()},promise:function(e){return null!=e?C.extend(e,i):i}},o={};return C.each(t,(function(e,r){var s=r[2],a=r[5];i[r[1]]=s.add,a&&s.add((function(){n=a}),t[3-e][2].disable,t[3-e][3].disable,t[0][2].lock,t[0][3].lock),s.add(r[3].fire),o[r[0]]=function(){return o[r[0]+"With"](this===o?void 0:this,arguments),this},o[r[0]+"With"]=s.fireWith})),i.promise(o),e&&e.call(o,o),o},when:function(e){var t=arguments.length,n=t,r=Array(n),i=a.call(arguments),o=C.Deferred(),s=function(e){return function(n){r[e]=this,i[e]=arguments.length>1?a.call(arguments):n,--t||o.resolveWith(r,i)}};if(t<=1&&(U(e,o.done(s(n)).resolve,o.reject,!t),"pending"===o.state()||v(i[n]&&i[n].then)))return o.then();for(;n--;)U(i[n],s(n),o.reject);return o.promise()}});var F=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;C.Deferred.exceptionHook=function(e,t){r.console&&r.console.warn&&e&&F.test(e.name)&&r.console.warn("jQuery.Deferred exception: "+e.message,e.stack,t)},C.readyException=function(e){r.setTimeout((function(){throw e}))};var W=C.Deferred();function B(){b.removeEventListener("DOMContentLoaded",B),r.removeEventListener("load",B),C.ready()}C.fn.ready=function(e){return W.then(e).catch((function(e){C.readyException(e)})),this},C.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--C.readyWait:C.isReady)||(C.isReady=!0,!0!==e&&--C.readyWait>0||W.resolveWith(b,[C]))}}),C.ready.then=W.then,"complete"===b.readyState||"loading"!==b.readyState&&!b.documentElement.doScroll?r.setTimeout(C.ready):(b.addEventListener("DOMContentLoaded",B),r.addEventListener("load",B));var z=function(e,t,n,r,i,o,s){var a=0,l=e.length,c=null==n;if("object"===_(n))for(a in i=!0,n)z(e,t,a,n[a],!0,o,s);else if(void 0!==r&&(i=!0,v(r)||(s=!0),c&&(s?(t.call(e,r),t=null):(c=t,t=function(e,t,n){return c.call(C(e),n)})),t))for(;a<l;a++)t(e[a],n,s?r:r.call(e[a],a,t(e[a],n)));return i?e:c?t.call(e):l?t(e[0],n):o},G=/^-ms-/,Y=/-([a-z])/g;function X(e,t){return t.toUpperCase()}function K(e){return e.replace(G,"ms-").replace(Y,X)}var V=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};function Q(){this.expando=C.expando+Q.uid++}Q.uid=1,Q.prototype={cache:function(e){var t=e[this.expando];return t||(t={},V(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var r,i=this.cache(e);if("string"==typeof t)i[K(t)]=n;else for(r in t)i[K(r)]=t[r];return i},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][K(t)]},access:function(e,t,n){return void 0===t||t&&"string"==typeof t&&void 0===n?this.get(e,t):(this.set(e,t,n),void 0!==n?n:t)},remove:function(e,t){var n,r=e[this.expando];if(void 0!==r){if(void 0!==t){n=(t=Array.isArray(t)?t.map(K):(t=K(t))in r?[t]:t.match(I)||[]).length;for(;n--;)delete r[t[n]]}(void 0===t||C.isEmptyObject(r))&&(e.nodeType?e[this.expando]=void 0:delete e[this.expando])}},hasData:function(e){var t=e[this.expando];return void 0!==t&&!C.isEmptyObject(t)}};var Z=new Q,J=new Q,ee=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,te=/[A-Z]/g;function ne(e,t,n){var r;if(void 0===n&&1===e.nodeType)if(r="data-"+t.replace(te,"-$&").toLowerCase(),"string"==typeof(n=e.getAttribute(r))){try{n=function(e){return"true"===e||"false"!==e&&("null"===e?null:e===+e+""?+e:ee.test(e)?JSON.parse(e):e)}(n)}catch(e){}J.set(e,t,n)}else n=void 0;return n}C.extend({hasData:function(e){return J.hasData(e)||Z.hasData(e)},data:function(e,t,n){return J.access(e,t,n)},removeData:function(e,t){J.remove(e,t)},_data:function(e,t,n){return Z.access(e,t,n)},_removeData:function(e,t){Z.remove(e,t)}}),C.fn.extend({data:function(e,t){var n,r,i,o=this[0],s=o&&o.attributes;if(void 0===e){if(this.length&&(i=J.get(o),1===o.nodeType&&!Z.get(o,"hasDataAttrs"))){for(n=s.length;n--;)s[n]&&0===(r=s[n].name).indexOf("data-")&&(r=K(r.slice(5)),ne(o,r,i[r]));Z.set(o,"hasDataAttrs",!0)}return i}return"object"==typeof e?this.each((function(){J.set(this,e)})):z(this,(function(t){var n;if(o&&void 0===t)return void 0!==(n=J.get(o,e))||void 0!==(n=ne(o,e))?n:void 0;this.each((function(){J.set(this,e,t)}))}),null,t,arguments.length>1,null,!0)},removeData:function(e){return this.each((function(){J.remove(this,e)}))}}),C.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=Z.get(e,t),n&&(!r||Array.isArray(n)?r=Z.access(e,t,C.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=C.queue(e,t),r=n.length,i=n.shift(),o=C._queueHooks(e,t);"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,(function(){C.dequeue(e,t)}),o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return Z.get(e,n)||Z.access(e,n,{empty:C.Callbacks("once memory").add((function(){Z.remove(e,[t+"queue",n])}))})}}),C.fn.extend({queue:function(e,t){var n=2;return"string"!=typeof e&&(t=e,e="fx",n--),arguments.length<n?C.queue(this[0],e):void 0===t?this:this.each((function(){var n=C.queue(this,e,t);C._queueHooks(this,e),"fx"===e&&"inprogress"!==n[0]&&C.dequeue(this,e)}))},dequeue:function(e){return this.each((function(){C.dequeue(this,e)}))},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,t){var n,r=1,i=C.Deferred(),o=this,s=this.length,a=function(){--r||i.resolveWith(o,[o])};for("string"!=typeof e&&(t=e,e=void 0),e=e||"fx";s--;)(n=Z.get(o[s],e+"queueHooks"))&&n.empty&&(r++,n.empty.add(a));return a(),i.promise(t)}});var re=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,ie=new RegExp("^(?:([+-])=|)("+re+")([a-z%]*)$","i"),oe=["Top","Right","Bottom","Left"],se=b.documentElement,ae=function(e){return C.contains(e.ownerDocument,e)},le={composed:!0};se.getRootNode&&(ae=function(e){return C.contains(e.ownerDocument,e)||e.getRootNode(le)===e.ownerDocument});var ce=function(e,t){return"none"===(e=t||e).style.display||""===e.style.display&&ae(e)&&"none"===C.css(e,"display")};function ue(e,t,n,r){var i,o,s=20,a=r?function(){return r.cur()}:function(){return C.css(e,t,"")},l=a(),c=n&&n[3]||(C.cssNumber[t]?"":"px"),u=e.nodeType&&(C.cssNumber[t]||"px"!==c&&+l)&&ie.exec(C.css(e,t));if(u&&u[3]!==c){for(l/=2,c=c||u[3],u=+l||1;s--;)C.style(e,t,u+c),(1-o)*(1-(o=a()/l||.5))<=0&&(s=0),u/=o;u*=2,C.style(e,t,u+c),n=n||[]}return n&&(u=+u||+l||0,i=n[1]?u+(n[1]+1)*n[2]:+n[2],r&&(r.unit=c,r.start=u,r.end=i)),i}var pe={};function de(e){var t,n=e.ownerDocument,r=e.nodeName,i=pe[r];return i||(t=n.body.appendChild(n.createElement(r)),i=C.css(t,"display"),t.parentNode.removeChild(t),"none"===i&&(i="block"),pe[r]=i,i)}function fe(e,t){for(var n,r,i=[],o=0,s=e.length;o<s;o++)(r=e[o]).style&&(n=r.style.display,t?("none"===n&&(i[o]=Z.get(r,"display")||null,i[o]||(r.style.display="")),""===r.style.display&&ce(r)&&(i[o]=de(r))):"none"!==n&&(i[o]="none",Z.set(r,"display",n)));for(o=0;o<s;o++)null!=i[o]&&(e[o].style.display=i[o]);return e}C.fn.extend({show:function(){return fe(this,!0)},hide:function(){return fe(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each((function(){ce(this)?C(this).show():C(this).hide()}))}});var he,ge,me=/^(?:checkbox|radio)$/i,ve=/<([a-z][^\/\0>\x20\t\r\n\f]*)/i,ye=/^$|^module$|\/(?:java|ecma)script/i;he=b.createDocumentFragment().appendChild(b.createElement("div")),(ge=b.createElement("input")).setAttribute("type","radio"),ge.setAttribute("checked","checked"),ge.setAttribute("name","t"),he.appendChild(ge),m.checkClone=he.cloneNode(!0).cloneNode(!0).lastChild.checked,he.innerHTML="<textarea>x</textarea>",m.noCloneChecked=!!he.cloneNode(!0).lastChild.defaultValue,he.innerHTML="<option></option>",m.option=!!he.lastChild;var be={thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};function xe(e,t){var n;return n=void 0!==e.getElementsByTagName?e.getElementsByTagName(t||"*"):void 0!==e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&k(e,t)?C.merge([e],n):n}function we(e,t){for(var n=0,r=e.length;n<r;n++)Z.set(e[n],"globalEval",!t||Z.get(t[n],"globalEval"))}be.tbody=be.tfoot=be.colgroup=be.caption=be.thead,be.th=be.td,m.option||(be.optgroup=be.option=[1,"<select multiple='multiple'>","</select>"]);var _e=/<|&#?\w+;/;function Te(e,t,n,r,i){for(var o,s,a,l,c,u,p=t.createDocumentFragment(),d=[],f=0,h=e.length;f<h;f++)if((o=e[f])||0===o)if("object"===_(o))C.merge(d,o.nodeType?[o]:o);else if(_e.test(o)){for(s=s||p.appendChild(t.createElement("div")),a=(ve.exec(o)||["",""])[1].toLowerCase(),l=be[a]||be._default,s.innerHTML=l[1]+C.htmlPrefilter(o)+l[2],u=l[0];u--;)s=s.lastChild;C.merge(d,s.childNodes),(s=p.firstChild).textContent=""}else d.push(t.createTextNode(o));for(p.textContent="",f=0;o=d[f++];)if(r&&C.inArray(o,r)>-1)i&&i.push(o);else if(c=ae(o),s=xe(p.appendChild(o),"script"),c&&we(s),n)for(u=0;o=s[u++];)ye.test(o.type||"")&&n.push(o);return p}var Ce=/^([^.]*)(?:\.(.+)|)/;function Ae(){return!0}function Ee(){return!1}function Se(e,t){return e===function(){try{return b.activeElement}catch(e){}}()==("focus"===t)}function $e(e,t,n,r,i,o){var s,a;if("object"==typeof t){for(a in"string"!=typeof n&&(r=r||n,n=void 0),t)$e(e,a,n,r,t[a],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Ee;else if(!i)return e;return 1===o&&(s=i,(i=function(e){return C().off(e),s.apply(this,arguments)}).guid=s.guid||(s.guid=C.guid++)),e.each((function(){C.event.add(this,t,i,r,n)}))}function De(e,t,n){n?(Z.set(e,t,!1),C.event.add(e,t,{namespace:!1,handler:function(e){var r,i,o=Z.get(this,t);if(1&e.isTrigger&&this[t]){if(o.length)(C.event.special[t]||{}).delegateType&&e.stopPropagation();else if(o=a.call(arguments),Z.set(this,t,o),r=n(this,t),this[t](),o!==(i=Z.get(this,t))||r?Z.set(this,t,!1):i={},o!==i)return e.stopImmediatePropagation(),e.preventDefault(),i&&i.value}else o.length&&(Z.set(this,t,{value:C.event.trigger(C.extend(o[0],C.Event.prototype),o.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===Z.get(e,t)&&C.event.add(e,t,Ae)}C.event={global:{},add:function(e,t,n,r,i){var o,s,a,l,c,u,p,d,f,h,g,m=Z.get(e);if(V(e))for(n.handler&&(n=(o=n).handler,i=o.selector),i&&C.find.matchesSelector(se,i),n.guid||(n.guid=C.guid++),(l=m.events)||(l=m.events=Object.create(null)),(s=m.handle)||(s=m.handle=function(t){return void 0!==C&&C.event.triggered!==t.type?C.event.dispatch.apply(e,arguments):void 0}),c=(t=(t||"").match(I)||[""]).length;c--;)f=g=(a=Ce.exec(t[c])||[])[1],h=(a[2]||"").split(".").sort(),f&&(p=C.event.special[f]||{},f=(i?p.delegateType:p.bindType)||f,p=C.event.special[f]||{},u=C.extend({type:f,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&C.expr.match.needsContext.test(i),namespace:h.join(".")},o),(d=l[f])||((d=l[f]=[]).delegateCount=0,p.setup&&!1!==p.setup.call(e,r,h,s)||e.addEventListener&&e.addEventListener(f,s)),p.add&&(p.add.call(e,u),u.handler.guid||(u.handler.guid=n.guid)),i?d.splice(d.delegateCount++,0,u):d.push(u),C.event.global[f]=!0)},remove:function(e,t,n,r,i){var o,s,a,l,c,u,p,d,f,h,g,m=Z.hasData(e)&&Z.get(e);if(m&&(l=m.events)){for(c=(t=(t||"").match(I)||[""]).length;c--;)if(f=g=(a=Ce.exec(t[c])||[])[1],h=(a[2]||"").split(".").sort(),f){for(p=C.event.special[f]||{},d=l[f=(r?p.delegateType:p.bindType)||f]||[],a=a[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),s=o=d.length;o--;)u=d[o],!i&&g!==u.origType||n&&n.guid!==u.guid||a&&!a.test(u.namespace)||r&&r!==u.selector&&("**"!==r||!u.selector)||(d.splice(o,1),u.selector&&d.delegateCount--,p.remove&&p.remove.call(e,u));s&&!d.length&&(p.teardown&&!1!==p.teardown.call(e,h,m.handle)||C.removeEvent(e,f,m.handle),delete l[f])}else for(f in l)C.event.remove(e,f+t[c],n,r,!0);C.isEmptyObject(l)&&Z.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,s,a=new Array(arguments.length),l=C.event.fix(e),c=(Z.get(this,"events")||Object.create(null))[l.type]||[],u=C.event.special[l.type]||{};for(a[0]=l,t=1;t<arguments.length;t++)a[t]=arguments[t];if(l.delegateTarget=this,!u.preDispatch||!1!==u.preDispatch.call(this,l)){for(s=C.event.handlers.call(this,l,c),t=0;(i=s[t++])&&!l.isPropagationStopped();)for(l.currentTarget=i.elem,n=0;(o=i.handlers[n++])&&!l.isImmediatePropagationStopped();)l.rnamespace&&!1!==o.namespace&&!l.rnamespace.test(o.namespace)||(l.handleObj=o,l.data=o.data,void 0!==(r=((C.event.special[o.origType]||{}).handle||o.handler).apply(i.elem,a))&&!1===(l.result=r)&&(l.preventDefault(),l.stopPropagation()));return u.postDispatch&&u.postDispatch.call(this,l),l.result}},handlers:function(e,t){var n,r,i,o,s,a=[],l=t.delegateCount,c=e.target;if(l&&c.nodeType&&!("click"===e.type&&e.button>=1))for(;c!==this;c=c.parentNode||this)if(1===c.nodeType&&("click"!==e.type||!0!==c.disabled)){for(o=[],s={},n=0;n<l;n++)void 0===s[i=(r=t[n]).selector+" "]&&(s[i]=r.needsContext?C(i,this).index(c)>-1:C.find(i,this,null,[c]).length),s[i]&&o.push(r);o.length&&a.push({elem:c,handlers:o})}return c=this,l<t.length&&a.push({elem:c,handlers:t.slice(l)}),a},addProp:function(e,t){Object.defineProperty(C.Event.prototype,e,{enumerable:!0,configurable:!0,get:v(t)?function(){if(this.originalEvent)return t(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[e]},set:function(t){Object.defineProperty(this,e,{enumerable:!0,configurable:!0,writable:!0,value:t})}})},fix:function(e){return e[C.expando]?e:new C.Event(e)},special:{load:{noBubble:!0},click:{setup:function(e){var t=this||e;return me.test(t.type)&&t.click&&k(t,"input")&&De(t,"click",Ae),!1},trigger:function(e){var t=this||e;return me.test(t.type)&&t.click&&k(t,"input")&&De(t,"click"),!0},_default:function(e){var t=e.target;return me.test(t.type)&&t.click&&k(t,"input")&&Z.get(t,"click")||k(t,"a")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}}},C.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},C.Event=function(e,t){if(!(this instanceof C.Event))return new C.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?Ae:Ee,this.target=e.target&&3===e.target.nodeType?e.target.parentNode:e.target,this.currentTarget=e.currentTarget,this.relatedTarget=e.relatedTarget):this.type=e,t&&C.extend(this,t),this.timeStamp=e&&e.timeStamp||Date.now(),this[C.expando]=!0},C.Event.prototype={constructor:C.Event,isDefaultPrevented:Ee,isPropagationStopped:Ee,isImmediatePropagationStopped:Ee,isSimulated:!1,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=Ae,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=Ae,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=Ae,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},C.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,char:!0,code:!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:!0},C.event.addProp),C.each({focus:"focusin",blur:"focusout"},(function(e,t){C.event.special[e]={setup:function(){return De(this,e,Se),!1},trigger:function(){return De(this,e),!0},_default:function(){return!0},delegateType:t}})),C.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},(function(e,t){C.event.special[e]={delegateType:t,bindType:t,handle:function(e){var n,r=this,i=e.relatedTarget,o=e.handleObj;return i&&(i===r||C.contains(r,i))||(e.type=o.origType,n=o.handler.apply(this,arguments),e.type=t),n}}})),C.fn.extend({on:function(e,t,n,r){return $e(this,e,t,n,r)},one:function(e,t,n,r){return $e(this,e,t,n,r,1)},off:function(e,t,n){var r,i;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,C(e.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this;if("object"==typeof e){for(i in e)this.off(i,t,e[i]);return this}return!1!==t&&"function"!=typeof t||(n=t,t=void 0),!1===n&&(n=Ee),this.each((function(){C.event.remove(this,e,n,t)}))}});var ke=/<script|<style|<link/i,je=/checked\s*(?:[^=]|=\s*.checked.)/i,Le=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;function Oe(e,t){return k(e,"table")&&k(11!==t.nodeType?t:t.firstChild,"tr")&&C(e).children("tbody")[0]||e}function qe(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function Ne(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Pe(e,t){var n,r,i,o,s,a;if(1===t.nodeType){if(Z.hasData(e)&&(a=Z.get(e).events))for(i in Z.remove(t,"handle events"),a)for(n=0,r=a[i].length;n<r;n++)C.event.add(t,i,a[i][n]);J.hasData(e)&&(o=J.access(e),s=C.extend({},o),J.set(t,s))}}function He(e,t){var n=t.nodeName.toLowerCase();"input"===n&&me.test(e.type)?t.checked=e.checked:"input"!==n&&"textarea"!==n||(t.defaultValue=e.defaultValue)}function Ie(e,t,n,r){t=l(t);var i,o,s,a,c,u,p=0,d=e.length,f=d-1,h=t[0],g=v(h);if(g||d>1&&"string"==typeof h&&!m.checkClone&&je.test(h))return e.each((function(i){var o=e.eq(i);g&&(t[0]=h.call(this,i,o.html())),Ie(o,t,n,r)}));if(d&&(o=(i=Te(t,e[0].ownerDocument,!1,e,r)).firstChild,1===i.childNodes.length&&(i=o),o||r)){for(a=(s=C.map(xe(i,"script"),qe)).length;p<d;p++)c=i,p!==f&&(c=C.clone(c,!0,!0),a&&C.merge(s,xe(c,"script"))),n.call(e[p],c,p);if(a)for(u=s[s.length-1].ownerDocument,C.map(s,Ne),p=0;p<a;p++)c=s[p],ye.test(c.type||"")&&!Z.access(c,"globalEval")&&C.contains(u,c)&&(c.src&&"module"!==(c.type||"").toLowerCase()?C._evalUrl&&!c.noModule&&C._evalUrl(c.src,{nonce:c.nonce||c.getAttribute("nonce")},u):w(c.textContent.replace(Le,""),c,u))}return e}function Re(e,t,n){for(var r,i=t?C.filter(t,e):e,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||C.cleanData(xe(r)),r.parentNode&&(n&&ae(r)&&we(xe(r,"script")),r.parentNode.removeChild(r));return e}C.extend({htmlPrefilter:function(e){return e},clone:function(e,t,n){var r,i,o,s,a=e.cloneNode(!0),l=ae(e);if(!(m.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||C.isXMLDoc(e)))for(s=xe(a),r=0,i=(o=xe(e)).length;r<i;r++)He(o[r],s[r]);if(t)if(n)for(o=o||xe(e),s=s||xe(a),r=0,i=o.length;r<i;r++)Pe(o[r],s[r]);else Pe(e,a);return(s=xe(a,"script")).length>0&&we(s,!l&&xe(e,"script")),a},cleanData:function(e){for(var t,n,r,i=C.event.special,o=0;void 0!==(n=e[o]);o++)if(V(n)){if(t=n[Z.expando]){if(t.events)for(r in t.events)i[r]?C.event.remove(n,r):C.removeEvent(n,r,t.handle);n[Z.expando]=void 0}n[J.expando]&&(n[J.expando]=void 0)}}}),C.fn.extend({detach:function(e){return Re(this,e,!0)},remove:function(e){return Re(this,e)},text:function(e){return z(this,(function(e){return void 0===e?C.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 Ie(this,arguments,(function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||Oe(this,e).appendChild(e)}))},prepend:function(){return Ie(this,arguments,(function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Oe(this,e);t.insertBefore(e,t.firstChild)}}))},before:function(){return Ie(this,arguments,(function(e){this.parentNode&&this.parentNode.insertBefore(e,this)}))},after:function(){return Ie(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&&(C.cleanData(xe(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map((function(){return C.clone(this,e,t)}))},html:function(e){return z(this,(function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!ke.test(e)&&!be[(ve.exec(e)||["",""])[1].toLowerCase()]){e=C.htmlPrefilter(e);try{for(;n<r;n++)1===(t=this[n]||{}).nodeType&&(C.cleanData(xe(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)}),null,e,arguments.length)},replaceWith:function(){var e=[];return Ie(this,arguments,(function(t){var n=this.parentNode;C.inArray(this,e)<0&&(C.cleanData(xe(this)),n&&n.replaceChild(t,this))}),e)}}),C.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},(function(e,t){C.fn[e]=function(e){for(var n,r=[],i=C(e),o=i.length-1,s=0;s<=o;s++)n=s===o?this:this.clone(!0),C(i[s])[t](n),c.apply(r,n.get());return this.pushStack(r)}}));var Me=new RegExp("^("+re+")(?!px)[a-z%]+$","i"),Ue=function(e){var t=e.ownerDocument.defaultView;return t&&t.opener||(t=r),t.getComputedStyle(e)},Fe=function(e,t,n){var r,i,o={};for(i in t)o[i]=e.style[i],e.style[i]=t[i];for(i in r=n.call(e),t)e.style[i]=o[i];return r},We=new RegExp(oe.join("|"),"i");function Be(e,t,n){var r,i,o,s,a=e.style;return(n=n||Ue(e))&&(""!==(s=n.getPropertyValue(t)||n[t])||ae(e)||(s=C.style(e,t)),!m.pixelBoxStyles()&&Me.test(s)&&We.test(t)&&(r=a.width,i=a.minWidth,o=a.maxWidth,a.minWidth=a.maxWidth=a.width=s,s=n.width,a.width=r,a.minWidth=i,a.maxWidth=o)),void 0!==s?s+"":s}function ze(e,t){return{get:function(){if(!e())return(this.get=t).apply(this,arguments);delete this.get}}}!function(){function e(){if(u){c.style.cssText="position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0",u.style.cssText="position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%",se.appendChild(c).appendChild(u);var e=r.getComputedStyle(u);n="1%"!==e.top,l=12===t(e.marginLeft),u.style.right="60%",s=36===t(e.right),i=36===t(e.width),u.style.position="absolute",o=12===t(u.offsetWidth/3),se.removeChild(c),u=null}}function t(e){return Math.round(parseFloat(e))}var n,i,o,s,a,l,c=b.createElement("div"),u=b.createElement("div");u.style&&(u.style.backgroundClip="content-box",u.cloneNode(!0).style.backgroundClip="",m.clearCloneStyle="content-box"===u.style.backgroundClip,C.extend(m,{boxSizingReliable:function(){return e(),i},pixelBoxStyles:function(){return e(),s},pixelPosition:function(){return e(),n},reliableMarginLeft:function(){return e(),l},scrollboxSize:function(){return e(),o},reliableTrDimensions:function(){var e,t,n,i;return null==a&&(e=b.createElement("table"),t=b.createElement("tr"),n=b.createElement("div"),e.style.cssText="position:absolute;left:-11111px;border-collapse:separate",t.style.cssText="border:1px solid",t.style.height="1px",n.style.height="9px",n.style.display="block",se.appendChild(e).appendChild(t).appendChild(n),i=r.getComputedStyle(t),a=parseInt(i.height,10)+parseInt(i.borderTopWidth,10)+parseInt(i.borderBottomWidth,10)===t.offsetHeight,se.removeChild(e)),a}}))}();var Ge=["Webkit","Moz","ms"],Ye=b.createElement("div").style,Xe={};function Ke(e){return C.cssProps[e]||Xe[e]||(e in Ye?e:Xe[e]=function(e){for(var t=e[0].toUpperCase()+e.slice(1),n=Ge.length;n--;)if((e=Ge[n]+t)in Ye)return e}(e)||e)}var Ve=/^(none|table(?!-c[ea]).+)/,Qe=/^--/,Ze={position:"absolute",visibility:"hidden",display:"block"},Je={letterSpacing:"0",fontWeight:"400"};function et(e,t,n){var r=ie.exec(t);return r?Math.max(0,r[2]-(n||0))+(r[3]||"px"):t}function tt(e,t,n,r,i,o){var s="width"===t?1:0,a=0,l=0;if(n===(r?"border":"content"))return 0;for(;s<4;s+=2)"margin"===n&&(l+=C.css(e,n+oe[s],!0,i)),r?("content"===n&&(l-=C.css(e,"padding"+oe[s],!0,i)),"margin"!==n&&(l-=C.css(e,"border"+oe[s]+"Width",!0,i))):(l+=C.css(e,"padding"+oe[s],!0,i),"padding"!==n?l+=C.css(e,"border"+oe[s]+"Width",!0,i):a+=C.css(e,"border"+oe[s]+"Width",!0,i));return!r&&o>=0&&(l+=Math.max(0,Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-o-l-a-.5))||0),l}function nt(e,t,n){var r=Ue(e),i=(!m.boxSizingReliable()||n)&&"border-box"===C.css(e,"boxSizing",!1,r),o=i,s=Be(e,t,r),a="offset"+t[0].toUpperCase()+t.slice(1);if(Me.test(s)){if(!n)return s;s="auto"}return(!m.boxSizingReliable()&&i||!m.reliableTrDimensions()&&k(e,"tr")||"auto"===s||!parseFloat(s)&&"inline"===C.css(e,"display",!1,r))&&e.getClientRects().length&&(i="border-box"===C.css(e,"boxSizing",!1,r),(o=a in e)&&(s=e[a])),(s=parseFloat(s)||0)+tt(e,t,n||(i?"border":"content"),o,r,s)+"px"}function rt(e,t,n,r,i){return new rt.prototype.init(e,t,n,r,i)}C.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Be(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,s,a=K(t),l=Qe.test(t),c=e.style;if(l||(t=Ke(a)),s=C.cssHooks[t]||C.cssHooks[a],void 0===n)return s&&"get"in s&&void 0!==(i=s.get(e,!1,r))?i:c[t];"string"==(o=typeof n)&&(i=ie.exec(n))&&i[1]&&(n=ue(e,t,i),o="number"),null!=n&&n==n&&("number"!==o||l||(n+=i&&i[3]||(C.cssNumber[a]?"":"px")),m.clearCloneStyle||""!==n||0!==t.indexOf("background")||(c[t]="inherit"),s&&"set"in s&&void 0===(n=s.set(e,n,r))||(l?c.setProperty(t,n):c[t]=n))}},css:function(e,t,n,r){var i,o,s,a=K(t);return Qe.test(t)||(t=Ke(a)),(s=C.cssHooks[t]||C.cssHooks[a])&&"get"in s&&(i=s.get(e,!0,n)),void 0===i&&(i=Be(e,t,r)),"normal"===i&&t in Je&&(i=Je[t]),""===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),C.each(["height","width"],(function(e,t){C.cssHooks[t]={get:function(e,n,r){if(n)return!Ve.test(C.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?nt(e,t,r):Fe(e,Ze,(function(){return nt(e,t,r)}))},set:function(e,n,r){var i,o=Ue(e),s=!m.scrollboxSize()&&"absolute"===o.position,a=(s||r)&&"border-box"===C.css(e,"boxSizing",!1,o),l=r?tt(e,t,r,a,o):0;return a&&s&&(l-=Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-parseFloat(o[t])-tt(e,t,"border",!1,o)-.5)),l&&(i=ie.exec(n))&&"px"!==(i[3]||"px")&&(e.style[t]=n,n=C.css(e,t)),et(0,n,l)}}})),C.cssHooks.marginLeft=ze(m.reliableMarginLeft,(function(e,t){if(t)return(parseFloat(Be(e,"marginLeft"))||e.getBoundingClientRect().left-Fe(e,{marginLeft:0},(function(){return e.getBoundingClientRect().left})))+"px"})),C.each({margin:"",padding:"",border:"Width"},(function(e,t){C.cssHooks[e+t]={expand:function(n){for(var r=0,i={},o="string"==typeof n?n.split(" "):[n];r<4;r++)i[e+oe[r]+t]=o[r]||o[r-2]||o[0];return i}},"margin"!==e&&(C.cssHooks[e+t].set=et)})),C.fn.extend({css:function(e,t){return z(this,(function(e,t,n){var r,i,o={},s=0;if(Array.isArray(t)){for(r=Ue(e),i=t.length;s<i;s++)o[t[s]]=C.css(e,t[s],!1,r);return o}return void 0!==n?C.style(e,t,n):C.css(e,t)}),e,t,arguments.length>1)}}),C.Tween=rt,rt.prototype={constructor:rt,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||C.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(C.cssNumber[n]?"":"px")},cur:function(){var e=rt.propHooks[this.prop];return e&&e.get?e.get(this):rt.propHooks._default.get(this)},run:function(e){var t,n=rt.propHooks[this.prop];return this.options.duration?this.pos=t=C.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):rt.propHooks._default.set(this),this}},rt.prototype.init.prototype=rt.prototype,rt.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=C.css(e.elem,e.prop,""))&&"auto"!==t?t:0},set:function(e){C.fx.step[e.prop]?C.fx.step[e.prop](e):1!==e.elem.nodeType||!C.cssHooks[e.prop]&&null==e.elem.style[Ke(e.prop)]?e.elem[e.prop]=e.now:C.style(e.elem,e.prop,e.now+e.unit)}}},rt.propHooks.scrollTop=rt.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},C.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},C.fx=rt.prototype.init,C.fx.step={};var it,ot,st=/^(?:toggle|show|hide)$/,at=/queueHooks$/;function lt(){ot&&(!1===b.hidden&&r.requestAnimationFrame?r.requestAnimationFrame(lt):r.setTimeout(lt,C.fx.interval),C.fx.tick())}function ct(){return r.setTimeout((function(){it=void 0})),it=Date.now()}function ut(e,t){var n,r=0,i={height:e};for(t=t?1:0;r<4;r+=2-t)i["margin"+(n=oe[r])]=i["padding"+n]=e;return t&&(i.opacity=i.width=e),i}function pt(e,t,n){for(var r,i=(dt.tweeners[t]||[]).concat(dt.tweeners["*"]),o=0,s=i.length;o<s;o++)if(r=i[o].call(n,t,e))return r}function dt(e,t,n){var r,i,o=0,s=dt.prefilters.length,a=C.Deferred().always((function(){delete l.elem})),l=function(){if(i)return!1;for(var t=it||ct(),n=Math.max(0,c.startTime+c.duration-t),r=1-(n/c.duration||0),o=0,s=c.tweens.length;o<s;o++)c.tweens[o].run(r);return a.notifyWith(e,[c,r,n]),r<1&&s?n:(s||a.notifyWith(e,[c,1,0]),a.resolveWith(e,[c]),!1)},c=a.promise({elem:e,props:C.extend({},t),opts:C.extend(!0,{specialEasing:{},easing:C.easing._default},n),originalProperties:t,originalOptions:n,startTime:it||ct(),duration:n.duration,tweens:[],createTween:function(t,n){var r=C.Tween(e,c.opts,t,n,c.opts.specialEasing[t]||c.opts.easing);return c.tweens.push(r),r},stop:function(t){var n=0,r=t?c.tweens.length:0;if(i)return this;for(i=!0;n<r;n++)c.tweens[n].run(1);return t?(a.notifyWith(e,[c,1,0]),a.resolveWith(e,[c,t])):a.rejectWith(e,[c,t]),this}}),u=c.props;for(function(e,t){var n,r,i,o,s;for(n in e)if(i=t[r=K(n)],o=e[n],Array.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),(s=C.cssHooks[r])&&"expand"in s)for(n in o=s.expand(o),delete e[r],o)n in e||(e[n]=o[n],t[n]=i);else t[r]=i}(u,c.opts.specialEasing);o<s;o++)if(r=dt.prefilters[o].call(c,e,u,c.opts))return v(r.stop)&&(C._queueHooks(c.elem,c.opts.queue).stop=r.stop.bind(r)),r;return C.map(u,pt,c),v(c.opts.start)&&c.opts.start.call(e,c),c.progress(c.opts.progress).done(c.opts.done,c.opts.complete).fail(c.opts.fail).always(c.opts.always),C.fx.timer(C.extend(l,{elem:e,anim:c,queue:c.opts.queue})),c}C.Animation=C.extend(dt,{tweeners:{"*":[function(e,t){var n=this.createTween(e,t);return ue(n.elem,e,ie.exec(t),n),n}]},tweener:function(e,t){v(e)?(t=e,e=["*"]):e=e.match(I);for(var n,r=0,i=e.length;r<i;r++)n=e[r],dt.tweeners[n]=dt.tweeners[n]||[],dt.tweeners[n].unshift(t)},prefilters:[function(e,t,n){var r,i,o,s,a,l,c,u,p="width"in t||"height"in t,d=this,f={},h=e.style,g=e.nodeType&&ce(e),m=Z.get(e,"fxshow");for(r in n.queue||(null==(s=C._queueHooks(e,"fx")).unqueued&&(s.unqueued=0,a=s.empty.fire,s.empty.fire=function(){s.unqueued||a()}),s.unqueued++,d.always((function(){d.always((function(){s.unqueued--,C.queue(e,"fx").length||s.empty.fire()}))}))),t)if(i=t[r],st.test(i)){if(delete t[r],o=o||"toggle"===i,i===(g?"hide":"show")){if("show"!==i||!m||void 0===m[r])continue;g=!0}f[r]=m&&m[r]||C.style(e,r)}if((l=!C.isEmptyObject(t))||!C.isEmptyObject(f))for(r in p&&1===e.nodeType&&(n.overflow=[h.overflow,h.overflowX,h.overflowY],null==(c=m&&m.display)&&(c=Z.get(e,"display")),"none"===(u=C.css(e,"display"))&&(c?u=c:(fe([e],!0),c=e.style.display||c,u=C.css(e,"display"),fe([e]))),("inline"===u||"inline-block"===u&&null!=c)&&"none"===C.css(e,"float")&&(l||(d.done((function(){h.display=c})),null==c&&(u=h.display,c="none"===u?"":u)),h.display="inline-block")),n.overflow&&(h.overflow="hidden",d.always((function(){h.overflow=n.overflow[0],h.overflowX=n.overflow[1],h.overflowY=n.overflow[2]}))),l=!1,f)l||(m?"hidden"in m&&(g=m.hidden):m=Z.access(e,"fxshow",{display:c}),o&&(m.hidden=!g),g&&fe([e],!0),d.done((function(){for(r in g||fe([e]),Z.remove(e,"fxshow"),f)C.style(e,r,f[r])}))),l=pt(g?m[r]:0,r,d),r in m||(m[r]=l.start,g&&(l.end=l.start,l.start=0))}],prefilter:function(e,t){t?dt.prefilters.unshift(e):dt.prefilters.push(e)}}),C.speed=function(e,t,n){var r=e&&"object"==typeof e?C.extend({},e):{complete:n||!n&&t||v(e)&&e,duration:e,easing:n&&t||t&&!v(t)&&t};return C.fx.off?r.duration=0:"number"!=typeof r.duration&&(r.duration in C.fx.speeds?r.duration=C.fx.speeds[r.duration]:r.duration=C.fx.speeds._default),null!=r.queue&&!0!==r.queue||(r.queue="fx"),r.old=r.complete,r.complete=function(){v(r.old)&&r.old.call(this),r.queue&&C.dequeue(this,r.queue)},r},C.fn.extend({fadeTo:function(e,t,n,r){return this.filter(ce).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(e,t,n,r){var i=C.isEmptyObject(e),o=C.speed(t,n,r),s=function(){var t=dt(this,C.extend({},e),o);(i||Z.get(this,"finish"))&&t.stop(!0)};return s.finish=s,i||!1===o.queue?this.each(s):this.queue(o.queue,s)},stop:function(e,t,n){var r=function(e){var t=e.stop;delete e.stop,t(n)};return"string"!=typeof e&&(n=t,t=e,e=void 0),t&&this.queue(e||"fx",[]),this.each((function(){var t=!0,i=null!=e&&e+"queueHooks",o=C.timers,s=Z.get(this);if(i)s[i]&&s[i].stop&&r(s[i]);else for(i in s)s[i]&&s[i].stop&&at.test(i)&&r(s[i]);for(i=o.length;i--;)o[i].elem!==this||null!=e&&o[i].queue!==e||(o[i].anim.stop(n),t=!1,o.splice(i,1));!t&&n||C.dequeue(this,e)}))},finish:function(e){return!1!==e&&(e=e||"fx"),this.each((function(){var t,n=Z.get(this),r=n[e+"queue"],i=n[e+"queueHooks"],o=C.timers,s=r?r.length:0;for(n.finish=!0,C.queue(this,e,[]),i&&i.stop&&i.stop.call(this,!0),t=o.length;t--;)o[t].elem===this&&o[t].queue===e&&(o[t].anim.stop(!0),o.splice(t,1));for(t=0;t<s;t++)r[t]&&r[t].finish&&r[t].finish.call(this);delete n.finish}))}}),C.each(["toggle","show","hide"],(function(e,t){var n=C.fn[t];C.fn[t]=function(e,r,i){return null==e||"boolean"==typeof e?n.apply(this,arguments):this.animate(ut(t,!0),e,r,i)}})),C.each({slideDown:ut("show"),slideUp:ut("hide"),slideToggle:ut("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},(function(e,t){C.fn[e]=function(e,n,r){return this.animate(t,e,n,r)}})),C.timers=[],C.fx.tick=function(){var e,t=0,n=C.timers;for(it=Date.now();t<n.length;t++)(e=n[t])()||n[t]!==e||n.splice(t--,1);n.length||C.fx.stop(),it=void 0},C.fx.timer=function(e){C.timers.push(e),C.fx.start()},C.fx.interval=13,C.fx.start=function(){ot||(ot=!0,lt())},C.fx.stop=function(){ot=null},C.fx.speeds={slow:600,fast:200,_default:400},C.fn.delay=function(e,t){return e=C.fx&&C.fx.speeds[e]||e,t=t||"fx",this.queue(t,(function(t,n){var i=r.setTimeout(t,e);n.stop=function(){r.clearTimeout(i)}}))},function(){var e=b.createElement("input"),t=b.createElement("select").appendChild(b.createElement("option"));e.type="checkbox",m.checkOn=""!==e.value,m.optSelected=t.selected,(e=b.createElement("input")).value="t",e.type="radio",m.radioValue="t"===e.value}();var ft,ht=C.expr.attrHandle;C.fn.extend({attr:function(e,t){return z(this,C.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each((function(){C.removeAttr(this,e)}))}}),C.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return void 0===e.getAttribute?C.prop(e,t,n):(1===o&&C.isXMLDoc(e)||(i=C.attrHooks[t.toLowerCase()]||(C.expr.match.bool.test(t)?ft:void 0)),void 0!==n?null===n?void C.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:null==(r=C.find.attr(e,t))?void 0:r)},attrHooks:{type:{set:function(e,t){if(!m.radioValue&&"radio"===t&&k(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(I);if(i&&1===e.nodeType)for(;n=i[r++];)e.removeAttribute(n)}}),ft={set:function(e,t,n){return!1===t?C.removeAttr(e,n):e.setAttribute(n,n),n}},C.each(C.expr.match.bool.source.match(/\w+/g),(function(e,t){var n=ht[t]||C.find.attr;ht[t]=function(e,t,r){var i,o,s=t.toLowerCase();return r||(o=ht[s],ht[s]=i,i=null!=n(e,t,r)?s:null,ht[s]=o),i}}));var gt=/^(?:input|select|textarea|button)$/i,mt=/^(?:a|area)$/i;function vt(e){return(e.match(I)||[]).join(" ")}function yt(e){return e.getAttribute&&e.getAttribute("class")||""}function bt(e){return Array.isArray(e)?e:"string"==typeof e&&e.match(I)||[]}C.fn.extend({prop:function(e,t){return z(this,C.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each((function(){delete this[C.propFix[e]||e]}))}}),C.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&C.isXMLDoc(e)||(t=C.propFix[t]||t,i=C.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=C.find.attr(e,"tabindex");return t?parseInt(t,10):gt.test(e.nodeName)||mt.test(e.nodeName)&&e.href?0:-1}}},propFix:{for:"htmlFor",class:"className"}}),m.optSelected||(C.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)}}),C.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],(function(){C.propFix[this.toLowerCase()]=this})),C.fn.extend({addClass:function(e){var t,n,r,i,o,s,a,l=0;if(v(e))return this.each((function(t){C(this).addClass(e.call(this,t,yt(this)))}));if((t=bt(e)).length)for(;n=this[l++];)if(i=yt(n),r=1===n.nodeType&&" "+vt(i)+" "){for(s=0;o=t[s++];)r.indexOf(" "+o+" ")<0&&(r+=o+" ");i!==(a=vt(r))&&n.setAttribute("class",a)}return this},removeClass:function(e){var t,n,r,i,o,s,a,l=0;if(v(e))return this.each((function(t){C(this).removeClass(e.call(this,t,yt(this)))}));if(!arguments.length)return this.attr("class","");if((t=bt(e)).length)for(;n=this[l++];)if(i=yt(n),r=1===n.nodeType&&" "+vt(i)+" "){for(s=0;o=t[s++];)for(;r.indexOf(" "+o+" ")>-1;)r=r.replace(" "+o+" "," ");i!==(a=vt(r))&&n.setAttribute("class",a)}return this},toggleClass:function(e,t){var n=typeof e,r="string"===n||Array.isArray(e);return"boolean"==typeof t&&r?t?this.addClass(e):this.removeClass(e):v(e)?this.each((function(n){C(this).toggleClass(e.call(this,n,yt(this),t),t)})):this.each((function(){var t,i,o,s;if(r)for(i=0,o=C(this),s=bt(e);t=s[i++];)o.hasClass(t)?o.removeClass(t):o.addClass(t);else void 0!==e&&"boolean"!==n||((t=yt(this))&&Z.set(this,"__className__",t),this.setAttribute&&this.setAttribute("class",t||!1===e?"":Z.get(this,"__className__")||""))}))},hasClass:function(e){var t,n,r=0;for(t=" "+e+" ";n=this[r++];)if(1===n.nodeType&&(" "+vt(yt(n))+" ").indexOf(t)>-1)return!0;return!1}});var xt=/\r/g;C.fn.extend({val:function(e){var t,n,r,i=this[0];return arguments.length?(r=v(e),this.each((function(n){var i;1===this.nodeType&&(null==(i=r?e.call(this,n,C(this).val()):e)?i="":"number"==typeof i?i+="":Array.isArray(i)&&(i=C.map(i,(function(e){return null==e?"":e+""}))),(t=C.valHooks[this.type]||C.valHooks[this.nodeName.toLowerCase()])&&"set"in t&&void 0!==t.set(this,i,"value")||(this.value=i))}))):i?(t=C.valHooks[i.type]||C.valHooks[i.nodeName.toLowerCase()])&&"get"in t&&void 0!==(n=t.get(i,"value"))?n:"string"==typeof(n=i.value)?n.replace(xt,""):null==n?"":n:void 0}}),C.extend({valHooks:{option:{get:function(e){var t=C.find.attr(e,"value");return null!=t?t:vt(C.text(e))}},select:{get:function(e){var t,n,r,i=e.options,o=e.selectedIndex,s="select-one"===e.type,a=s?null:[],l=s?o+1:i.length;for(r=o<0?l:s?o:0;r<l;r++)if(((n=i[r]).selected||r===o)&&!n.disabled&&(!n.parentNode.disabled||!k(n.parentNode,"optgroup"))){if(t=C(n).val(),s)return t;a.push(t)}return a},set:function(e,t){for(var n,r,i=e.options,o=C.makeArray(t),s=i.length;s--;)((r=i[s]).selected=C.inArray(C.valHooks.option.get(r),o)>-1)&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),C.each(["radio","checkbox"],(function(){C.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=C.inArray(C(e).val(),t)>-1}},m.checkOn||(C.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})})),m.focusin="onfocusin"in r;var wt=/^(?:focusinfocus|focusoutblur)$/,_t=function(e){e.stopPropagation()};C.extend(C.event,{trigger:function(e,t,n,i){var o,s,a,l,c,u,p,d,h=[n||b],g=f.call(e,"type")?e.type:e,m=f.call(e,"namespace")?e.namespace.split("."):[];if(s=d=a=n=n||b,3!==n.nodeType&&8!==n.nodeType&&!wt.test(g+C.event.triggered)&&(g.indexOf(".")>-1&&(m=g.split("."),g=m.shift(),m.sort()),c=g.indexOf(":")<0&&"on"+g,(e=e[C.expando]?e:new C.Event(g,"object"==typeof e&&e)).isTrigger=i?2:3,e.namespace=m.join("."),e.rnamespace=e.namespace?new RegExp("(^|\\.)"+m.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,e.result=void 0,e.target||(e.target=n),t=null==t?[e]:C.makeArray(t,[e]),p=C.event.special[g]||{},i||!p.trigger||!1!==p.trigger.apply(n,t))){if(!i&&!p.noBubble&&!y(n)){for(l=p.delegateType||g,wt.test(l+g)||(s=s.parentNode);s;s=s.parentNode)h.push(s),a=s;a===(n.ownerDocument||b)&&h.push(a.defaultView||a.parentWindow||r)}for(o=0;(s=h[o++])&&!e.isPropagationStopped();)d=s,e.type=o>1?l:p.bindType||g,(u=(Z.get(s,"events")||Object.create(null))[e.type]&&Z.get(s,"handle"))&&u.apply(s,t),(u=c&&s[c])&&u.apply&&V(s)&&(e.result=u.apply(s,t),!1===e.result&&e.preventDefault());return e.type=g,i||e.isDefaultPrevented()||p._default&&!1!==p._default.apply(h.pop(),t)||!V(n)||c&&v(n[g])&&!y(n)&&((a=n[c])&&(n[c]=null),C.event.triggered=g,e.isPropagationStopped()&&d.addEventListener(g,_t),n[g](),e.isPropagationStopped()&&d.removeEventListener(g,_t),C.event.triggered=void 0,a&&(n[c]=a)),e.result}},simulate:function(e,t,n){var r=C.extend(new C.Event,n,{type:e,isSimulated:!0});C.event.trigger(r,null,t)}}),C.fn.extend({trigger:function(e,t){return this.each((function(){C.event.trigger(e,t,this)}))},triggerHandler:function(e,t){var n=this[0];if(n)return C.event.trigger(e,t,n,!0)}}),m.focusin||C.each({focus:"focusin",blur:"focusout"},(function(e,t){var n=function(e){C.event.simulate(t,e.target,C.event.fix(e))};C.event.special[t]={setup:function(){var r=this.ownerDocument||this.document||this,i=Z.access(r,t);i||r.addEventListener(e,n,!0),Z.access(r,t,(i||0)+1)},teardown:function(){var r=this.ownerDocument||this.document||this,i=Z.access(r,t)-1;i?Z.access(r,t,i):(r.removeEventListener(e,n,!0),Z.remove(r,t))}}}));var Tt=r.location,Ct={guid:Date.now()},At=/\?/;C.parseXML=function(e){var t,n;if(!e||"string"!=typeof e)return null;try{t=(new r.DOMParser).parseFromString(e,"text/xml")}catch(e){}return n=t&&t.getElementsByTagName("parsererror")[0],t&&!n||C.error("Invalid XML: "+(n?C.map(n.childNodes,(function(e){return e.textContent})).join("\n"):e)),t};var Et=/\[\]$/,St=/\r?\n/g,$t=/^(?:submit|button|image|reset|file)$/i,Dt=/^(?:input|select|textarea|keygen)/i;function kt(e,t,n,r){var i;if(Array.isArray(t))C.each(t,(function(t,i){n||Et.test(e)?r(e,i):kt(e+"["+("object"==typeof i&&null!=i?t:"")+"]",i,n,r)}));else if(n||"object"!==_(t))r(e,t);else for(i in t)kt(e+"["+i+"]",t[i],n,r)}C.param=function(e,t){var n,r=[],i=function(e,t){var n=v(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(null==e)return"";if(Array.isArray(e)||e.jquery&&!C.isPlainObject(e))C.each(e,(function(){i(this.name,this.value)}));else for(n in e)kt(n,e[n],t,i);return r.join("&")},C.fn.extend({serialize:function(){return C.param(this.serializeArray())},serializeArray:function(){return this.map((function(){var e=C.prop(this,"elements");return e?C.makeArray(e):this})).filter((function(){var e=this.type;return this.name&&!C(this).is(":disabled")&&Dt.test(this.nodeName)&&!$t.test(e)&&(this.checked||!me.test(e))})).map((function(e,t){var n=C(this).val();return null==n?null:Array.isArray(n)?C.map(n,(function(e){return{name:t.name,value:e.replace(St,"\r\n")}})):{name:t.name,value:n.replace(St,"\r\n")}})).get()}});var jt=/%20/g,Lt=/#.*$/,Ot=/([?&])_=[^&]*/,qt=/^(.*?):[ \t]*([^\r\n]*)$/gm,Nt=/^(?:GET|HEAD)$/,Pt=/^\/\//,Ht={},It={},Rt="*/".concat("*"),Mt=b.createElement("a");function Ut(e){return function(t,n){"string"!=typeof t&&(n=t,t="*");var r,i=0,o=t.toLowerCase().match(I)||[];if(v(n))for(;r=o[i++];)"+"===r[0]?(r=r.slice(1)||"*",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function Ft(e,t,n,r){var i={},o=e===It;function s(a){var l;return i[a]=!0,C.each(e[a]||[],(function(e,a){var c=a(t,n,r);return"string"!=typeof c||o||i[c]?o?!(l=c):void 0:(t.dataTypes.unshift(c),s(c),!1)})),l}return s(t.dataTypes[0])||!i["*"]&&s("*")}function Wt(e,t){var n,r,i=C.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&C.extend(!0,e,r),e}Mt.href=Tt.href,C.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:Tt.href,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(Tt.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Rt,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":C.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?Wt(Wt(e,C.ajaxSettings),t):Wt(C.ajaxSettings,e)},ajaxPrefilter:Ut(Ht),ajaxTransport:Ut(It),ajax:function(e,t){"object"==typeof e&&(t=e,e=void 0),t=t||{};var n,i,o,s,a,l,c,u,p,d,f=C.ajaxSetup({},t),h=f.context||f,g=f.context&&(h.nodeType||h.jquery)?C(h):C.event,m=C.Deferred(),v=C.Callbacks("once memory"),y=f.statusCode||{},x={},w={},_="canceled",T={readyState:0,getResponseHeader:function(e){var t;if(c){if(!s)for(s={};t=qt.exec(o);)s[t[1].toLowerCase()+" "]=(s[t[1].toLowerCase()+" "]||[]).concat(t[2]);t=s[e.toLowerCase()+" "]}return null==t?null:t.join(", ")},getAllResponseHeaders:function(){return c?o:null},setRequestHeader:function(e,t){return null==c&&(e=w[e.toLowerCase()]=w[e.toLowerCase()]||e,x[e]=t),this},overrideMimeType:function(e){return null==c&&(f.mimeType=e),this},statusCode:function(e){var t;if(e)if(c)T.always(e[T.status]);else for(t in e)y[t]=[y[t],e[t]];return this},abort:function(e){var t=e||_;return n&&n.abort(t),A(0,t),this}};if(m.promise(T),f.url=((e||f.url||Tt.href)+"").replace(Pt,Tt.protocol+"//"),f.type=t.method||t.type||f.method||f.type,f.dataTypes=(f.dataType||"*").toLowerCase().match(I)||[""],null==f.crossDomain){l=b.createElement("a");try{l.href=f.url,l.href=l.href,f.crossDomain=Mt.protocol+"//"+Mt.host!=l.protocol+"//"+l.host}catch(e){f.crossDomain=!0}}if(f.data&&f.processData&&"string"!=typeof f.data&&(f.data=C.param(f.data,f.traditional)),Ft(Ht,f,t,T),c)return T;for(p in(u=C.event&&f.global)&&0==C.active++&&C.event.trigger("ajaxStart"),f.type=f.type.toUpperCase(),f.hasContent=!Nt.test(f.type),i=f.url.replace(Lt,""),f.hasContent?f.data&&f.processData&&0===(f.contentType||"").indexOf("application/x-www-form-urlencoded")&&(f.data=f.data.replace(jt,"+")):(d=f.url.slice(i.length),f.data&&(f.processData||"string"==typeof f.data)&&(i+=(At.test(i)?"&":"?")+f.data,delete f.data),!1===f.cache&&(i=i.replace(Ot,"$1"),d=(At.test(i)?"&":"?")+"_="+Ct.guid+++d),f.url=i+d),f.ifModified&&(C.lastModified[i]&&T.setRequestHeader("If-Modified-Since",C.lastModified[i]),C.etag[i]&&T.setRequestHeader("If-None-Match",C.etag[i])),(f.data&&f.hasContent&&!1!==f.contentType||t.contentType)&&T.setRequestHeader("Content-Type",f.contentType),T.setRequestHeader("Accept",f.dataTypes[0]&&f.accepts[f.dataTypes[0]]?f.accepts[f.dataTypes[0]]+("*"!==f.dataTypes[0]?", "+Rt+"; q=0.01":""):f.accepts["*"]),f.headers)T.setRequestHeader(p,f.headers[p]);if(f.beforeSend&&(!1===f.beforeSend.call(h,T,f)||c))return T.abort();if(_="abort",v.add(f.complete),T.done(f.success),T.fail(f.error),n=Ft(It,f,t,T)){if(T.readyState=1,u&&g.trigger("ajaxSend",[T,f]),c)return T;f.async&&f.timeout>0&&(a=r.setTimeout((function(){T.abort("timeout")}),f.timeout));try{c=!1,n.send(x,A)}catch(e){if(c)throw e;A(-1,e)}}else A(-1,"No Transport");function A(e,t,s,l){var p,d,b,x,w,_=t;c||(c=!0,a&&r.clearTimeout(a),n=void 0,o=l||"",T.readyState=e>0?4:0,p=e>=200&&e<300||304===e,s&&(x=function(e,t,n){for(var r,i,o,s,a=e.contents,l=e.dataTypes;"*"===l[0];)l.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(i in a)if(a[i]&&a[i].test(r)){l.unshift(i);break}if(l[0]in n)o=l[0];else{for(i in n){if(!l[0]||e.converters[i+" "+l[0]]){o=i;break}s||(s=i)}o=o||s}if(o)return o!==l[0]&&l.unshift(o),n[o]}(f,T,s)),!p&&C.inArray("script",f.dataTypes)>-1&&C.inArray("json",f.dataTypes)<0&&(f.converters["text script"]=function(){}),x=function(e,t,n,r){var i,o,s,a,l,c={},u=e.dataTypes.slice();if(u[1])for(s in e.converters)c[s.toLowerCase()]=e.converters[s];for(o=u.shift();o;)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!l&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),l=o,o=u.shift())if("*"===o)o=l;else if("*"!==l&&l!==o){if(!(s=c[l+" "+o]||c["* "+o]))for(i in c)if((a=i.split(" "))[1]===o&&(s=c[l+" "+a[0]]||c["* "+a[0]])){!0===s?s=c[i]:!0!==c[i]&&(o=a[0],u.unshift(a[1]));break}if(!0!==s)if(s&&e.throws)t=s(t);else try{t=s(t)}catch(e){return{state:"parsererror",error:s?e:"No conversion from "+l+" to "+o}}}return{state:"success",data:t}}(f,x,T,p),p?(f.ifModified&&((w=T.getResponseHeader("Last-Modified"))&&(C.lastModified[i]=w),(w=T.getResponseHeader("etag"))&&(C.etag[i]=w)),204===e||"HEAD"===f.type?_="nocontent":304===e?_="notmodified":(_=x.state,d=x.data,p=!(b=x.error))):(b=_,!e&&_||(_="error",e<0&&(e=0))),T.status=e,T.statusText=(t||_)+"",p?m.resolveWith(h,[d,_,T]):m.rejectWith(h,[T,_,b]),T.statusCode(y),y=void 0,u&&g.trigger(p?"ajaxSuccess":"ajaxError",[T,f,p?d:b]),v.fireWith(h,[T,_]),u&&(g.trigger("ajaxComplete",[T,f]),--C.active||C.event.trigger("ajaxStop")))}return T},getJSON:function(e,t,n){return C.get(e,t,n,"json")},getScript:function(e,t){return C.get(e,void 0,t,"script")}}),C.each(["get","post"],(function(e,t){C[t]=function(e,n,r,i){return v(n)&&(i=i||r,r=n,n=void 0),C.ajax(C.extend({url:e,type:t,dataType:i,data:n,success:r},C.isPlainObject(e)&&e))}})),C.ajaxPrefilter((function(e){var t;for(t in e.headers)"content-type"===t.toLowerCase()&&(e.contentType=e.headers[t]||"")})),C._evalUrl=function(e,t,n){return C.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,converters:{"text script":function(){}},dataFilter:function(e){C.globalEval(e,t,n)}})},C.fn.extend({wrapAll:function(e){var t;return this[0]&&(v(e)&&(e=e.call(this[0])),t=C(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 v(e)?this.each((function(t){C(this).wrapInner(e.call(this,t))})):this.each((function(){var t=C(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)}))},wrap:function(e){var t=v(e);return this.each((function(n){C(this).wrapAll(t?e.call(this,n):e)}))},unwrap:function(e){return this.parent(e).not("body").each((function(){C(this).replaceWith(this.childNodes)})),this}}),C.expr.pseudos.hidden=function(e){return!C.expr.pseudos.visible(e)},C.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},C.ajaxSettings.xhr=function(){try{return new r.XMLHttpRequest}catch(e){}};var Bt={0:200,1223:204},zt=C.ajaxSettings.xhr();m.cors=!!zt&&"withCredentials"in zt,m.ajax=zt=!!zt,C.ajaxTransport((function(e){var t,n;if(m.cors||zt&&!e.crossDomain)return{send:function(i,o){var s,a=e.xhr();if(a.open(e.type,e.url,e.async,e.username,e.password),e.xhrFields)for(s in e.xhrFields)a[s]=e.xhrFields[s];for(s in e.mimeType&&a.overrideMimeType&&a.overrideMimeType(e.mimeType),e.crossDomain||i["X-Requested-With"]||(i["X-Requested-With"]="XMLHttpRequest"),i)a.setRequestHeader(s,i[s]);t=function(e){return function(){t&&(t=n=a.onload=a.onerror=a.onabort=a.ontimeout=a.onreadystatechange=null,"abort"===e?a.abort():"error"===e?"number"!=typeof a.status?o(0,"error"):o(a.status,a.statusText):o(Bt[a.status]||a.status,a.statusText,"text"!==(a.responseType||"text")||"string"!=typeof a.responseText?{binary:a.response}:{text:a.responseText},a.getAllResponseHeaders()))}},a.onload=t(),n=a.onerror=a.ontimeout=t("error"),void 0!==a.onabort?a.onabort=n:a.onreadystatechange=function(){4===a.readyState&&r.setTimeout((function(){t&&n()}))},t=t("abort");try{a.send(e.hasContent&&e.data||null)}catch(e){if(t)throw e}},abort:function(){t&&t()}}})),C.ajaxPrefilter((function(e){e.crossDomain&&(e.contents.script=!1)})),C.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 C.globalEval(e),e}}}),C.ajaxPrefilter("script",(function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")})),C.ajaxTransport("script",(function(e){var t,n;if(e.crossDomain||e.scriptAttrs)return{send:function(r,i){t=C("<script>").attr(e.scriptAttrs||{}).prop({charset:e.scriptCharset,src:e.url}).on("load error",n=function(e){t.remove(),n=null,e&&i("error"===e.type?404:200,e.type)}),b.head.appendChild(t[0])},abort:function(){n&&n()}}}));var Gt,Yt=[],Xt=/(=)\?(?=&|$)|\?\?/;C.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Yt.pop()||C.expando+"_"+Ct.guid++;return this[e]=!0,e}}),C.ajaxPrefilter("json jsonp",(function(e,t,n){var i,o,s,a=!1!==e.jsonp&&(Xt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Xt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return i=e.jsonpCallback=v(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Xt,"$1"+i):!1!==e.jsonp&&(e.url+=(At.test(e.url)?"&":"?")+e.jsonp+"="+i),e.converters["script json"]=function(){return s||C.error(i+" was not called"),s[0]},e.dataTypes[0]="json",o=r[i],r[i]=function(){s=arguments},n.always((function(){void 0===o?C(r).removeProp(i):r[i]=o,e[i]&&(e.jsonpCallback=t.jsonpCallback,Yt.push(i)),s&&v(o)&&o(s[0]),s=o=void 0})),"script"})),m.createHTMLDocument=((Gt=b.implementation.createHTMLDocument("").body).innerHTML="<form></form><form></form>",2===Gt.childNodes.length),C.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(m.createHTMLDocument?((r=(t=b.implementation.createHTMLDocument("")).createElement("base")).href=b.location.href,t.head.appendChild(r)):t=b),o=!n&&[],(i=j.exec(e))?[t.createElement(i[1])]:(i=Te([e],t,o),o&&o.length&&C(o).remove(),C.merge([],i.childNodes)));var r,i,o},C.fn.load=function(e,t,n){var r,i,o,s=this,a=e.indexOf(" ");return a>-1&&(r=vt(e.slice(a)),e=e.slice(0,a)),v(t)?(n=t,t=void 0):t&&"object"==typeof t&&(i="POST"),s.length>0&&C.ajax({url:e,type:i||"GET",dataType:"html",data:t}).done((function(e){o=arguments,s.html(r?C("<div>").append(C.parseHTML(e)).find(r):e)})).always(n&&function(e,t){s.each((function(){n.apply(this,o||[e.responseText,t,e])}))}),this},C.expr.pseudos.animated=function(e){return C.grep(C.timers,(function(t){return e===t.elem})).length},C.offset={setOffset:function(e,t,n){var r,i,o,s,a,l,c=C.css(e,"position"),u=C(e),p={};"static"===c&&(e.style.position="relative"),a=u.offset(),o=C.css(e,"top"),l=C.css(e,"left"),("absolute"===c||"fixed"===c)&&(o+l).indexOf("auto")>-1?(s=(r=u.position()).top,i=r.left):(s=parseFloat(o)||0,i=parseFloat(l)||0),v(t)&&(t=t.call(e,n,C.extend({},a))),null!=t.top&&(p.top=t.top-a.top+s),null!=t.left&&(p.left=t.left-a.left+i),"using"in t?t.using.call(e,p):u.css(p)}},C.fn.extend({offset:function(e){if(arguments.length)return void 0===e?this:this.each((function(t){C.offset.setOffset(this,e,t)}));var t,n,r=this[0];return r?r.getClientRects().length?(t=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:t.top+n.pageYOffset,left:t.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===C.css(r,"position"))t=r.getBoundingClientRect();else{for(t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;e&&(e===n.body||e===n.documentElement)&&"static"===C.css(e,"position");)e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=C(e).offset()).top+=C.css(e,"borderTopWidth",!0),i.left+=C.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-C.css(r,"marginTop",!0),left:t.left-i.left-C.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map((function(){for(var e=this.offsetParent;e&&"static"===C.css(e,"position");)e=e.offsetParent;return e||se}))}}),C.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},(function(e,t){var n="pageYOffset"===t;C.fn[e]=function(r){return z(this,(function(e,r,i){var o;if(y(e)?o=e:9===e.nodeType&&(o=e.defaultView),void 0===i)return o?o[t]:e[r];o?o.scrollTo(n?o.pageXOffset:i,n?i:o.pageYOffset):e[r]=i}),e,r,arguments.length)}})),C.each(["top","left"],(function(e,t){C.cssHooks[t]=ze(m.pixelPosition,(function(e,n){if(n)return n=Be(e,t),Me.test(n)?C(e).position()[t]+"px":n}))})),C.each({Height:"height",Width:"width"},(function(e,t){C.each({padding:"inner"+e,content:t,"":"outer"+e},(function(n,r){C.fn[r]=function(i,o){var s=arguments.length&&(n||"boolean"!=typeof i),a=n||(!0===i||!0===o?"margin":"border");return z(this,(function(t,n,i){var o;return y(t)?0===r.indexOf("outer")?t["inner"+e]:t.document.documentElement["client"+e]:9===t.nodeType?(o=t.documentElement,Math.max(t.body["scroll"+e],o["scroll"+e],t.body["offset"+e],o["offset"+e],o["client"+e])):void 0===i?C.css(t,n,a):C.style(t,n,i,a)}),t,s?i:void 0,s)}}))})),C.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],(function(e,t){C.fn[t]=function(e){return this.on(t,e)}})),C.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),C.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){C.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}));var Kt=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;C.proxy=function(e,t){var n,r,i;if("string"==typeof t&&(n=e[t],t=e,e=n),v(e))return r=a.call(arguments,2),(i=function(){return e.apply(t||this,r.concat(a.call(arguments)))}).guid=e.guid=e.guid||C.guid++,i},C.holdReady=function(e){e?C.readyWait++:C.ready(!0)},C.isArray=Array.isArray,C.parseJSON=JSON.parse,C.nodeName=k,C.isFunction=v,C.isWindow=y,C.camelCase=K,C.type=_,C.now=Date.now,C.isNumeric=function(e){var t=C.type(e);return("number"===t||"string"===t)&&!isNaN(e-parseFloat(e))},C.trim=function(e){return null==e?"":(e+"").replace(Kt,"")},void 0===(n=function(){return C}.apply(t,[]))||(e.exports=n);var Vt=r.jQuery,Qt=r.$;return C.noConflict=function(e){return r.$===C&&(r.$=Qt),e&&r.jQuery===C&&(r.jQuery=Vt),C},void 0===i&&(r.jQuery=r.$=C),C}))},821:(e,t,n)=>{var r,i,o;i=[n(755)],void 0===(o="function"==typeof(r=function(e){var t=function(){if(e&&e.fn&&e.fn.select2&&e.fn.select2.amd)var t=e.fn.select2.amd;var n,r,i,o,s,a,l,c,u,p,d,f,h,g,m;function v(e,t){return h.call(e,t)}function y(e,t){var n,r,i,o,s,a,l,c,u,p,f,h=t&&t.split("/"),g=d.map,v=g&&g["*"]||{};if(e){for(s=(e=e.split("/")).length-1,d.nodeIdCompat&&m.test(e[s])&&(e[s]=e[s].replace(m,"")),"."===e[0].charAt(0)&&h&&(e=h.slice(0,h.length-1).concat(e)),u=0;u<e.length;u++)if("."===(f=e[u]))e.splice(u,1),--u;else if(".."===f){if(0===u||1===u&&".."===e[2]||".."===e[u-1])continue;0<u&&(e.splice(u-1,2),u-=2)}e=e.join("/")}if((h||v)&&g){for(u=(n=e.split("/")).length;0<u;--u){if(r=n.slice(0,u).join("/"),h)for(p=h.length;0<p;--p)if(i=(i=g[h.slice(0,p).join("/")])&&i[r]){o=i,a=u;break}if(o)break;!l&&v&&v[r]&&(l=v[r],c=u)}!o&&l&&(o=l,a=c),o&&(n.splice(0,a,o),e=n.join("/"))}return e}function b(e,t){return function(){var n=g.call(arguments,0);return"string"!=typeof n[0]&&1===n.length&&n.push(null),a.apply(o,n.concat([e,t]))}}function x(e){return function(t){u[e]=t}}function w(e){if(v(p,e)){var t=p[e];delete p[e],f[e]=!0,s.apply(o,t)}if(!v(u,e)&&!v(f,e))throw new Error("No "+e);return u[e]}function _(e){var t,n=e?e.indexOf("!"):-1;return-1<n&&(t=e.substring(0,n),e=e.substring(n+1,e.length)),[t,e]}function T(e){return e?_(e):[]}return t&&t.requirejs||(t?r=t:t={},u={},p={},d={},f={},h=Object.prototype.hasOwnProperty,g=[].slice,m=/\.js$/,l=function(e,t){var n,r,i=_(e),o=i[0],s=t[1];return e=i[1],o&&(n=w(o=y(o,s))),o?e=n&&n.normalize?n.normalize(e,(r=s,function(e){return y(e,r)})):y(e,s):(o=(i=_(e=y(e,s)))[0],e=i[1],o&&(n=w(o))),{f:o?o+"!"+e:e,n:e,pr:o,p:n}},c={require:function(e){return b(e)},exports:function(e){var t=u[e];return void 0!==t?t:u[e]={}},module:function(e){return{id:e,uri:"",exports:u[e],config:(t=e,function(){return d&&d.config&&d.config[t]||{}})};var t}},s=function(e,t,n,r){var i,s,a,d,h,g,m,y=[],_=typeof n;if(g=T(r=r||e),"undefined"==_||"function"==_){for(t=!t.length&&n.length?["require","exports","module"]:t,h=0;h<t.length;h+=1)if("require"===(s=(d=l(t[h],g)).f))y[h]=c.require(e);else if("exports"===s)y[h]=c.exports(e),m=!0;else if("module"===s)i=y[h]=c.module(e);else if(v(u,s)||v(p,s)||v(f,s))y[h]=w(s);else{if(!d.p)throw new Error(e+" missing "+s);d.p.load(d.n,b(r,!0),x(s),{}),y[h]=u[s]}a=n?n.apply(u[e],y):void 0,e&&(i&&i.exports!==o&&i.exports!==u[e]?u[e]=i.exports:a===o&&m||(u[e]=a))}else e&&(u[e]=n)},n=r=a=function(e,t,n,r,i){if("string"==typeof e)return c[e]?c[e](t):w(l(e,T(t)).f);if(!e.splice){if((d=e).deps&&a(d.deps,d.callback),!t)return;t.splice?(e=t,t=n,n=null):e=o}return t=t||function(){},"function"==typeof n&&(n=r,r=i),r?s(o,e,t,n):setTimeout((function(){s(o,e,t,n)}),4),a},a.config=function(e){return a(e)},n._defined=u,(i=function(e,t,n){if("string"!=typeof e)throw new Error("See almond README: incorrect module build, no module name");t.splice||(n=t,t=[]),v(u,e)||v(p,e)||(p[e]=[e,t,n])}).amd={jQuery:!0},t.requirejs=n,t.require=r,t.define=i),t.define("almond",(function(){})),t.define("jquery",[],(function(){var t=e||$;return null==t&&console&&console.error&&console.error("Select2: An instance of jQuery or a jQuery-compatible library was not found. Make sure that you are including jQuery before Select2 on your web page."),t})),t.define("select2/utils",["jquery"],(function(e){var t={};function n(e){var t=e.prototype,n=[];for(var r in t)"function"==typeof t[r]&&"constructor"!==r&&n.push(r);return n}function r(){this.listeners={}}t.Extend=function(e,t){var n={}.hasOwnProperty;function r(){this.constructor=e}for(var i in t)n.call(t,i)&&(e[i]=t[i]);return r.prototype=t.prototype,e.prototype=new r,e.__super__=t.prototype,e},t.Decorate=function(e,t){var r=n(t),i=n(e);function o(){var n=Array.prototype.unshift,r=t.prototype.constructor.length,i=e.prototype.constructor;0<r&&(n.call(arguments,e.prototype.constructor),i=t.prototype.constructor),i.apply(this,arguments)}t.displayName=e.displayName,o.prototype=new function(){this.constructor=o};for(var s=0;s<i.length;s++){var a=i[s];o.prototype[a]=e.prototype[a]}function l(e){var n=function(){};e in o.prototype&&(n=o.prototype[e]);var r=t.prototype[e];return function(){return Array.prototype.unshift.call(arguments,n),r.apply(this,arguments)}}for(var c=0;c<r.length;c++){var u=r[c];o.prototype[u]=l(u)}return o},r.prototype.on=function(e,t){this.listeners=this.listeners||{},e in this.listeners?this.listeners[e].push(t):this.listeners[e]=[t]},r.prototype.trigger=function(e){var t=Array.prototype.slice,n=t.call(arguments,1);this.listeners=this.listeners||{},null==n&&(n=[]),0===n.length&&n.push({}),(n[0]._type=e)in this.listeners&&this.invoke(this.listeners[e],t.call(arguments,1)),"*"in this.listeners&&this.invoke(this.listeners["*"],arguments)},r.prototype.invoke=function(e,t){for(var n=0,r=e.length;n<r;n++)e[n].apply(this,t)},t.Observable=r,t.generateChars=function(e){for(var t="",n=0;n<e;n++)t+=Math.floor(36*Math.random()).toString(36);return t},t.bind=function(e,t){return function(){e.apply(t,arguments)}},t._convertData=function(e){for(var t in e){var n=t.split("-"),r=e;if(1!==n.length){for(var i=0;i<n.length;i++){var o=n[i];(o=o.substring(0,1).toLowerCase()+o.substring(1))in r||(r[o]={}),i==n.length-1&&(r[o]=e[t]),r=r[o]}delete e[t]}}return e},t.hasScroll=function(t,n){var r=e(n),i=n.style.overflowX,o=n.style.overflowY;return(i!==o||"hidden"!==o&&"visible"!==o)&&("scroll"===i||"scroll"===o||r.innerHeight()<n.scrollHeight||r.innerWidth()<n.scrollWidth)},t.escapeMarkup=function(e){var t={"\\":"&#92;","&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","/":"&#47;"};return"string"!=typeof e?e:String(e).replace(/[&<>"'\/\\]/g,(function(e){return t[e]}))},t.appendMany=function(t,n){if("1.7"===e.fn.jquery.substr(0,3)){var r=e();e.map(n,(function(e){r=r.add(e)})),n=r}t.append(n)},t.__cache={};var i=0;return t.GetUniqueElementId=function(e){var t=e.getAttribute("data-select2-id");return null==t&&(e.id?(t=e.id,e.setAttribute("data-select2-id",t)):(e.setAttribute("data-select2-id",++i),t=i.toString())),t},t.StoreData=function(e,n,r){var i=t.GetUniqueElementId(e);t.__cache[i]||(t.__cache[i]={}),t.__cache[i][n]=r},t.GetData=function(n,r){var i=t.GetUniqueElementId(n);return r?t.__cache[i]&&null!=t.__cache[i][r]?t.__cache[i][r]:e(n).data(r):t.__cache[i]},t.RemoveData=function(e){var n=t.GetUniqueElementId(e);null!=t.__cache[n]&&delete t.__cache[n],e.removeAttribute("data-select2-id")},t})),t.define("select2/results",["jquery","./utils"],(function(e,t){function n(e,t,r){this.$element=e,this.data=r,this.options=t,n.__super__.constructor.call(this)}return t.Extend(n,t.Observable),n.prototype.render=function(){var t=e('<ul class="select2-results__options" role="listbox"></ul>');return this.options.get("multiple")&&t.attr("aria-multiselectable","true"),this.$results=t},n.prototype.clear=function(){this.$results.empty()},n.prototype.displayMessage=function(t){var n=this.options.get("escapeMarkup");this.clear(),this.hideLoading();var r=e('<li role="alert" aria-live="assertive" class="select2-results__option"></li>'),i=this.options.get("translations").get(t.message);r.append(n(i(t.args))),r[0].className+=" select2-results__message",this.$results.append(r)},n.prototype.hideMessages=function(){this.$results.find(".select2-results__message").remove()},n.prototype.append=function(e){this.hideLoading();var t=[];if(null!=e.results&&0!==e.results.length){e.results=this.sort(e.results);for(var n=0;n<e.results.length;n++){var r=e.results[n],i=this.option(r);t.push(i)}this.$results.append(t)}else 0===this.$results.children().length&&this.trigger("results:message",{message:"noResults"})},n.prototype.position=function(e,t){t.find(".select2-results").append(e)},n.prototype.sort=function(e){return this.options.get("sorter")(e)},n.prototype.highlightFirstItem=function(){var e=this.$results.find(".select2-results__option[aria-selected]"),t=e.filter("[aria-selected=true]");0<t.length?t.first().trigger("mouseenter"):e.first().trigger("mouseenter"),this.ensureHighlightVisible()},n.prototype.setClasses=function(){var n=this;this.data.current((function(r){var i=e.map(r,(function(e){return e.id.toString()}));n.$results.find(".select2-results__option[aria-selected]").each((function(){var n=e(this),r=t.GetData(this,"data"),o=""+r.id;null!=r.element&&r.element.selected||null==r.element&&-1<e.inArray(o,i)?n.attr("aria-selected","true"):n.attr("aria-selected","false")}))}))},n.prototype.showLoading=function(e){this.hideLoading();var t={disabled:!0,loading:!0,text:this.options.get("translations").get("searching")(e)},n=this.option(t);n.className+=" loading-results",this.$results.prepend(n)},n.prototype.hideLoading=function(){this.$results.find(".loading-results").remove()},n.prototype.option=function(n){var r=document.createElement("li");r.className="select2-results__option";var i={role:"option","aria-selected":"false"},o=window.Element.prototype.matches||window.Element.prototype.msMatchesSelector||window.Element.prototype.webkitMatchesSelector;for(var s in(null!=n.element&&o.call(n.element,":disabled")||null==n.element&&n.disabled)&&(delete i["aria-selected"],i["aria-disabled"]="true"),null==n.id&&delete i["aria-selected"],null!=n._resultId&&(r.id=n._resultId),n.title&&(r.title=n.title),n.children&&(i.role="group",i["aria-label"]=n.text,delete i["aria-selected"]),i){var a=i[s];r.setAttribute(s,a)}if(n.children){var l=e(r),c=document.createElement("strong");c.className="select2-results__group",e(c),this.template(n,c);for(var u=[],p=0;p<n.children.length;p++){var d=n.children[p],f=this.option(d);u.push(f)}var h=e("<ul></ul>",{class:"select2-results__options select2-results__options--nested"});h.append(u),l.append(c),l.append(h)}else this.template(n,r);return t.StoreData(r,"data",n),r},n.prototype.bind=function(n,r){var i=this,o=n.id+"-results";this.$results.attr("id",o),n.on("results:all",(function(e){i.clear(),i.append(e.data),n.isOpen()&&(i.setClasses(),i.highlightFirstItem())})),n.on("results:append",(function(e){i.append(e.data),n.isOpen()&&i.setClasses()})),n.on("query",(function(e){i.hideMessages(),i.showLoading(e)})),n.on("select",(function(){n.isOpen()&&(i.setClasses(),i.options.get("scrollAfterSelect")&&i.highlightFirstItem())})),n.on("unselect",(function(){n.isOpen()&&(i.setClasses(),i.options.get("scrollAfterSelect")&&i.highlightFirstItem())})),n.on("open",(function(){i.$results.attr("aria-expanded","true"),i.$results.attr("aria-hidden","false"),i.setClasses(),i.ensureHighlightVisible()})),n.on("close",(function(){i.$results.attr("aria-expanded","false"),i.$results.attr("aria-hidden","true"),i.$results.removeAttr("aria-activedescendant")})),n.on("results:toggle",(function(){var e=i.getHighlightedResults();0!==e.length&&e.trigger("mouseup")})),n.on("results:select",(function(){var e=i.getHighlightedResults();if(0!==e.length){var n=t.GetData(e[0],"data");"true"==e.attr("aria-selected")?i.trigger("close",{}):i.trigger("select",{data:n})}})),n.on("results:previous",(function(){var e=i.getHighlightedResults(),t=i.$results.find("[aria-selected]"),n=t.index(e);if(!(n<=0)){var r=n-1;0===e.length&&(r=0);var o=t.eq(r);o.trigger("mouseenter");var s=i.$results.offset().top,a=o.offset().top,l=i.$results.scrollTop()+(a-s);0===r?i.$results.scrollTop(0):a-s<0&&i.$results.scrollTop(l)}})),n.on("results:next",(function(){var e=i.getHighlightedResults(),t=i.$results.find("[aria-selected]"),n=t.index(e)+1;if(!(n>=t.length)){var r=t.eq(n);r.trigger("mouseenter");var o=i.$results.offset().top+i.$results.outerHeight(!1),s=r.offset().top+r.outerHeight(!1),a=i.$results.scrollTop()+s-o;0===n?i.$results.scrollTop(0):o<s&&i.$results.scrollTop(a)}})),n.on("results:focus",(function(e){e.element.addClass("select2-results__option--highlighted")})),n.on("results:message",(function(e){i.displayMessage(e)})),e.fn.mousewheel&&this.$results.on("mousewheel",(function(e){var t=i.$results.scrollTop(),n=i.$results.get(0).scrollHeight-t+e.deltaY,r=0<e.deltaY&&t-e.deltaY<=0,o=e.deltaY<0&&n<=i.$results.height();r?(i.$results.scrollTop(0),e.preventDefault(),e.stopPropagation()):o&&(i.$results.scrollTop(i.$results.get(0).scrollHeight-i.$results.height()),e.preventDefault(),e.stopPropagation())})),this.$results.on("mouseup",".select2-results__option[aria-selected]",(function(n){var r=e(this),o=t.GetData(this,"data");"true"!==r.attr("aria-selected")?i.trigger("select",{originalEvent:n,data:o}):i.options.get("multiple")?i.trigger("unselect",{originalEvent:n,data:o}):i.trigger("close",{})})),this.$results.on("mouseenter",".select2-results__option[aria-selected]",(function(n){var r=t.GetData(this,"data");i.getHighlightedResults().removeClass("select2-results__option--highlighted"),i.trigger("results:focus",{data:r,element:e(this)})}))},n.prototype.getHighlightedResults=function(){return this.$results.find(".select2-results__option--highlighted")},n.prototype.destroy=function(){this.$results.remove()},n.prototype.ensureHighlightVisible=function(){var e=this.getHighlightedResults();if(0!==e.length){var t=this.$results.find("[aria-selected]").index(e),n=this.$results.offset().top,r=e.offset().top,i=this.$results.scrollTop()+(r-n),o=r-n;i-=2*e.outerHeight(!1),t<=2?this.$results.scrollTop(0):(o>this.$results.outerHeight()||o<0)&&this.$results.scrollTop(i)}},n.prototype.template=function(t,n){var r=this.options.get("templateResult"),i=this.options.get("escapeMarkup"),o=r(t,n);null==o?n.style.display="none":"string"==typeof o?n.innerHTML=i(o):e(n).append(o)},n})),t.define("select2/keys",[],(function(){return{BACKSPACE:8,TAB:9,ENTER:13,SHIFT:16,CTRL:17,ALT:18,ESC:27,SPACE:32,PAGE_UP:33,PAGE_DOWN:34,END:35,HOME:36,LEFT:37,UP:38,RIGHT:39,DOWN:40,DELETE:46}})),t.define("select2/selection/base",["jquery","../utils","../keys"],(function(e,t,n){function r(e,t){this.$element=e,this.options=t,r.__super__.constructor.call(this)}return t.Extend(r,t.Observable),r.prototype.render=function(){var n=e('<span class="select2-selection" role="combobox"  aria-haspopup="true" aria-expanded="false"></span>');return this._tabindex=0,null!=t.GetData(this.$element[0],"old-tabindex")?this._tabindex=t.GetData(this.$element[0],"old-tabindex"):null!=this.$element.attr("tabindex")&&(this._tabindex=this.$element.attr("tabindex")),n.attr("title",this.$element.attr("title")),n.attr("tabindex",this._tabindex),n.attr("aria-disabled","false"),this.$selection=n},r.prototype.bind=function(e,t){var r=this,i=e.id+"-results";this.container=e,this.$selection.on("focus",(function(e){r.trigger("focus",e)})),this.$selection.on("blur",(function(e){r._handleBlur(e)})),this.$selection.on("keydown",(function(e){r.trigger("keypress",e),e.which===n.SPACE&&e.preventDefault()})),e.on("results:focus",(function(e){r.$selection.attr("aria-activedescendant",e.data._resultId)})),e.on("selection:update",(function(e){r.update(e.data)})),e.on("open",(function(){r.$selection.attr("aria-expanded","true"),r.$selection.attr("aria-owns",i),r._attachCloseHandler(e)})),e.on("close",(function(){r.$selection.attr("aria-expanded","false"),r.$selection.removeAttr("aria-activedescendant"),r.$selection.removeAttr("aria-owns"),r.$selection.trigger("focus"),r._detachCloseHandler(e)})),e.on("enable",(function(){r.$selection.attr("tabindex",r._tabindex),r.$selection.attr("aria-disabled","false")})),e.on("disable",(function(){r.$selection.attr("tabindex","-1"),r.$selection.attr("aria-disabled","true")}))},r.prototype._handleBlur=function(t){var n=this;window.setTimeout((function(){document.activeElement==n.$selection[0]||e.contains(n.$selection[0],document.activeElement)||n.trigger("blur",t)}),1)},r.prototype._attachCloseHandler=function(n){e(document.body).on("mousedown.select2."+n.id,(function(n){var r=e(n.target).closest(".select2");e(".select2.select2-container--open").each((function(){this!=r[0]&&t.GetData(this,"element").select2("close")}))}))},r.prototype._detachCloseHandler=function(t){e(document.body).off("mousedown.select2."+t.id)},r.prototype.position=function(e,t){t.find(".selection").append(e)},r.prototype.destroy=function(){this._detachCloseHandler(this.container)},r.prototype.update=function(e){throw new Error("The `update` method must be defined in child classes.")},r.prototype.isEnabled=function(){return!this.isDisabled()},r.prototype.isDisabled=function(){return this.options.get("disabled")},r})),t.define("select2/selection/single",["jquery","./base","../utils","../keys"],(function(e,t,n,r){function i(){i.__super__.constructor.apply(this,arguments)}return n.Extend(i,t),i.prototype.render=function(){var e=i.__super__.render.call(this);return e.addClass("select2-selection--single"),e.html('<span class="select2-selection__rendered"></span><span class="select2-selection__arrow" role="presentation"><b role="presentation"></b></span>'),e},i.prototype.bind=function(e,t){var n=this;i.__super__.bind.apply(this,arguments);var r=e.id+"-container";this.$selection.find(".select2-selection__rendered").attr("id",r).attr("role","textbox").attr("aria-readonly","true"),this.$selection.attr("aria-labelledby",r),this.$selection.on("mousedown",(function(e){1===e.which&&n.trigger("toggle",{originalEvent:e})})),this.$selection.on("focus",(function(e){})),this.$selection.on("blur",(function(e){})),e.on("focus",(function(t){e.isOpen()||n.$selection.trigger("focus")}))},i.prototype.clear=function(){var e=this.$selection.find(".select2-selection__rendered");e.empty(),e.removeAttr("title")},i.prototype.display=function(e,t){var n=this.options.get("templateSelection");return this.options.get("escapeMarkup")(n(e,t))},i.prototype.selectionContainer=function(){return e("<span></span>")},i.prototype.update=function(e){if(0!==e.length){var t=e[0],n=this.$selection.find(".select2-selection__rendered"),r=this.display(t,n);n.empty().append(r);var i=t.title||t.text;i?n.attr("title",i):n.removeAttr("title")}else this.clear()},i})),t.define("select2/selection/multiple",["jquery","./base","../utils"],(function(e,t,n){function r(e,t){r.__super__.constructor.apply(this,arguments)}return n.Extend(r,t),r.prototype.render=function(){var e=r.__super__.render.call(this);return e.addClass("select2-selection--multiple"),e.html('<ul class="select2-selection__rendered"></ul>'),e},r.prototype.bind=function(t,i){var o=this;r.__super__.bind.apply(this,arguments),this.$selection.on("click",(function(e){o.trigger("toggle",{originalEvent:e})})),this.$selection.on("click",".select2-selection__choice__remove",(function(t){if(!o.isDisabled()){var r=e(this).parent(),i=n.GetData(r[0],"data");o.trigger("unselect",{originalEvent:t,data:i})}}))},r.prototype.clear=function(){var e=this.$selection.find(".select2-selection__rendered");e.empty(),e.removeAttr("title")},r.prototype.display=function(e,t){var n=this.options.get("templateSelection");return this.options.get("escapeMarkup")(n(e,t))},r.prototype.selectionContainer=function(){return e('<li class="select2-selection__choice"><span class="select2-selection__choice__remove" role="presentation">&times;</span></li>')},r.prototype.update=function(e){if(this.clear(),0!==e.length){for(var t=[],r=0;r<e.length;r++){var i=e[r],o=this.selectionContainer(),s=this.display(i,o);o.append(s);var a=i.title||i.text;a&&o.attr("title",a),n.StoreData(o[0],"data",i),t.push(o)}var l=this.$selection.find(".select2-selection__rendered");n.appendMany(l,t)}},r})),t.define("select2/selection/placeholder",["../utils"],(function(e){function t(e,t,n){this.placeholder=this.normalizePlaceholder(n.get("placeholder")),e.call(this,t,n)}return t.prototype.normalizePlaceholder=function(e,t){return"string"==typeof t&&(t={id:"",text:t}),t},t.prototype.createPlaceholder=function(e,t){var n=this.selectionContainer();return n.html(this.display(t)),n.addClass("select2-selection__placeholder").removeClass("select2-selection__choice"),n},t.prototype.update=function(e,t){var n=1==t.length&&t[0].id!=this.placeholder.id;if(1<t.length||n)return e.call(this,t);this.clear();var r=this.createPlaceholder(this.placeholder);this.$selection.find(".select2-selection__rendered").append(r)},t})),t.define("select2/selection/allowClear",["jquery","../keys","../utils"],(function(e,t,n){function r(){}return r.prototype.bind=function(e,t,n){var r=this;e.call(this,t,n),null==this.placeholder&&this.options.get("debug")&&window.console&&console.error&&console.error("Select2: The `allowClear` option should be used in combination with the `placeholder` option."),this.$selection.on("mousedown",".select2-selection__clear",(function(e){r._handleClear(e)})),t.on("keypress",(function(e){r._handleKeyboardClear(e,t)}))},r.prototype._handleClear=function(e,t){if(!this.isDisabled()){var r=this.$selection.find(".select2-selection__clear");if(0!==r.length){t.stopPropagation();var i=n.GetData(r[0],"data"),o=this.$element.val();this.$element.val(this.placeholder.id);var s={data:i};if(this.trigger("clear",s),s.prevented)this.$element.val(o);else{for(var a=0;a<i.length;a++)if(s={data:i[a]},this.trigger("unselect",s),s.prevented)return void this.$element.val(o);this.$element.trigger("input").trigger("change"),this.trigger("toggle",{})}}}},r.prototype._handleKeyboardClear=function(e,n,r){r.isOpen()||n.which!=t.DELETE&&n.which!=t.BACKSPACE||this._handleClear(n)},r.prototype.update=function(t,r){if(t.call(this,r),!(0<this.$selection.find(".select2-selection__placeholder").length||0===r.length)){var i=this.options.get("translations").get("removeAllItems"),o=e('<span class="select2-selection__clear" title="'+i()+'">&times;</span>');n.StoreData(o[0],"data",r),this.$selection.find(".select2-selection__rendered").prepend(o)}},r})),t.define("select2/selection/search",["jquery","../utils","../keys"],(function(e,t,n){function r(e,t,n){e.call(this,t,n)}return r.prototype.render=function(t){var n=e('<li class="select2-search select2-search--inline"><input class="select2-search__field" type="search" tabindex="-1" autocomplete="off" autocorrect="off" autocapitalize="none" spellcheck="false" role="searchbox" aria-autocomplete="list" /></li>');this.$searchContainer=n,this.$search=n.find("input");var r=t.call(this);return this._transferTabIndex(),r},r.prototype.bind=function(e,r,i){var o=this,s=r.id+"-results";e.call(this,r,i),r.on("open",(function(){o.$search.attr("aria-controls",s),o.$search.trigger("focus")})),r.on("close",(function(){o.$search.val(""),o.$search.removeAttr("aria-controls"),o.$search.removeAttr("aria-activedescendant"),o.$search.trigger("focus")})),r.on("enable",(function(){o.$search.prop("disabled",!1),o._transferTabIndex()})),r.on("disable",(function(){o.$search.prop("disabled",!0)})),r.on("focus",(function(e){o.$search.trigger("focus")})),r.on("results:focus",(function(e){e.data._resultId?o.$search.attr("aria-activedescendant",e.data._resultId):o.$search.removeAttr("aria-activedescendant")})),this.$selection.on("focusin",".select2-search--inline",(function(e){o.trigger("focus",e)})),this.$selection.on("focusout",".select2-search--inline",(function(e){o._handleBlur(e)})),this.$selection.on("keydown",".select2-search--inline",(function(e){if(e.stopPropagation(),o.trigger("keypress",e),o._keyUpPrevented=e.isDefaultPrevented(),e.which===n.BACKSPACE&&""===o.$search.val()){var r=o.$searchContainer.prev(".select2-selection__choice");if(0<r.length){var i=t.GetData(r[0],"data");o.searchRemoveChoice(i),e.preventDefault()}}})),this.$selection.on("click",".select2-search--inline",(function(e){o.$search.val()&&e.stopPropagation()}));var a=document.documentMode,l=a&&a<=11;this.$selection.on("input.searchcheck",".select2-search--inline",(function(e){l?o.$selection.off("input.search input.searchcheck"):o.$selection.off("keyup.search")})),this.$selection.on("keyup.search input.search",".select2-search--inline",(function(e){if(l&&"input"===e.type)o.$selection.off("input.search input.searchcheck");else{var t=e.which;t!=n.SHIFT&&t!=n.CTRL&&t!=n.ALT&&t!=n.TAB&&o.handleSearch(e)}}))},r.prototype._transferTabIndex=function(e){this.$search.attr("tabindex",this.$selection.attr("tabindex")),this.$selection.attr("tabindex","-1")},r.prototype.createPlaceholder=function(e,t){this.$search.attr("placeholder",t.text)},r.prototype.update=function(e,t){var n=this.$search[0]==document.activeElement;this.$search.attr("placeholder",""),e.call(this,t),this.$selection.find(".select2-selection__rendered").append(this.$searchContainer),this.resizeSearch(),n&&this.$search.trigger("focus")},r.prototype.handleSearch=function(){if(this.resizeSearch(),!this._keyUpPrevented){var e=this.$search.val();this.trigger("query",{term:e})}this._keyUpPrevented=!1},r.prototype.searchRemoveChoice=function(e,t){this.trigger("unselect",{data:t}),this.$search.val(t.text),this.handleSearch()},r.prototype.resizeSearch=function(){this.$search.css("width","25px");var e;e=""!==this.$search.attr("placeholder")?this.$selection.find(".select2-selection__rendered").width():.75*(this.$search.val().length+1)+"em",this.$search.css("width",e)},r})),t.define("select2/selection/eventRelay",["jquery"],(function(e){function t(){}return t.prototype.bind=function(t,n,r){var i=this,o=["open","opening","close","closing","select","selecting","unselect","unselecting","clear","clearing"],s=["opening","closing","selecting","unselecting","clearing"];t.call(this,n,r),n.on("*",(function(t,n){if(-1!==e.inArray(t,o)){n=n||{};var r=e.Event("select2:"+t,{params:n});i.$element.trigger(r),-1!==e.inArray(t,s)&&(n.prevented=r.isDefaultPrevented())}}))},t})),t.define("select2/translation",["jquery","require"],(function(e,t){function n(e){this.dict=e||{}}return n.prototype.all=function(){return this.dict},n.prototype.get=function(e){return this.dict[e]},n.prototype.extend=function(t){this.dict=e.extend({},t.all(),this.dict)},n._cache={},n.loadPath=function(e){if(!(e in n._cache)){var r=t(e);n._cache[e]=r}return new n(n._cache[e])},n})),t.define("select2/diacritics",[],(function(){return{"Ⓐ":"A",A:"A",À:"A",Á:"A",Â:"A",Ầ:"A",Ấ:"A",Ẫ:"A",Ẩ:"A",Ã:"A",Ā:"A",Ă:"A",Ằ:"A",Ắ:"A",Ẵ:"A",Ẳ:"A",Ȧ:"A",Ǡ:"A",Ä:"A",Ǟ:"A",Ả:"A",Å:"A",Ǻ:"A",Ǎ:"A",Ȁ:"A",Ȃ:"A",Ạ:"A",Ậ:"A",Ặ:"A",Ḁ:"A",Ą:"A",Ⱥ:"A",Ɐ:"A",Ꜳ:"AA",Æ:"AE",Ǽ:"AE",Ǣ:"AE",Ꜵ:"AO",Ꜷ:"AU",Ꜹ:"AV",Ꜻ:"AV",Ꜽ:"AY","Ⓑ":"B",B:"B",Ḃ:"B",Ḅ:"B",Ḇ:"B",Ƀ:"B",Ƃ:"B",Ɓ:"B","Ⓒ":"C",C:"C",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",Ç:"C",Ḉ:"C",Ƈ:"C",Ȼ:"C",Ꜿ:"C","Ⓓ":"D",D:"D",Ḋ:"D",Ď:"D",Ḍ:"D",Ḑ:"D",Ḓ:"D",Ḏ:"D",Đ:"D",Ƌ:"D",Ɗ:"D",Ɖ:"D",Ꝺ:"D",DZ:"DZ",DŽ:"DZ",Dz:"Dz",Dž:"Dz","Ⓔ":"E",E:"E",È:"E",É:"E",Ê:"E",Ề:"E",Ế:"E",Ễ:"E",Ể:"E",Ẽ:"E",Ē:"E",Ḕ:"E",Ḗ:"E",Ĕ:"E",Ė:"E",Ë:"E",Ẻ:"E",Ě:"E",Ȅ:"E",Ȇ:"E",Ẹ:"E",Ệ:"E",Ȩ:"E",Ḝ:"E",Ę:"E",Ḙ:"E",Ḛ:"E",Ɛ:"E",Ǝ:"E","Ⓕ":"F",F:"F",Ḟ:"F",Ƒ:"F",Ꝼ:"F","Ⓖ":"G",G:"G",Ǵ:"G",Ĝ:"G",Ḡ:"G",Ğ:"G",Ġ:"G",Ǧ:"G",Ģ:"G",Ǥ:"G",Ɠ:"G",Ꞡ:"G",Ᵹ:"G",Ꝿ:"G","Ⓗ":"H",H:"H",Ĥ:"H",Ḣ:"H",Ḧ:"H",Ȟ:"H",Ḥ:"H",Ḩ:"H",Ḫ:"H",Ħ:"H",Ⱨ:"H",Ⱶ:"H",Ɥ:"H","Ⓘ":"I",I:"I",Ì:"I",Í:"I",Î:"I",Ĩ:"I",Ī:"I",Ĭ:"I",İ:"I",Ï:"I",Ḯ:"I",Ỉ:"I",Ǐ:"I",Ȉ:"I",Ȋ:"I",Ị:"I",Į:"I",Ḭ:"I",Ɨ:"I","Ⓙ":"J",J:"J",Ĵ:"J",Ɉ:"J","Ⓚ":"K",K:"K",Ḱ:"K",Ǩ:"K",Ḳ:"K",Ķ:"K",Ḵ:"K",Ƙ:"K",Ⱪ:"K",Ꝁ:"K",Ꝃ:"K",Ꝅ:"K",Ꞣ:"K","Ⓛ":"L",L:"L",Ŀ:"L",Ĺ:"L",Ľ:"L",Ḷ:"L",Ḹ:"L",Ļ:"L",Ḽ:"L",Ḻ:"L",Ł:"L",Ƚ:"L",Ɫ:"L",Ⱡ:"L",Ꝉ:"L",Ꝇ:"L",Ꞁ:"L",LJ:"LJ",Lj:"Lj","Ⓜ":"M",M:"M",Ḿ:"M",Ṁ:"M",Ṃ:"M",Ɱ:"M",Ɯ:"M","Ⓝ":"N",N:"N",Ǹ:"N",Ń:"N",Ñ:"N",Ṅ:"N",Ň:"N",Ṇ:"N",Ņ:"N",Ṋ:"N",Ṉ:"N",Ƞ:"N",Ɲ:"N",Ꞑ:"N",Ꞥ:"N",NJ:"NJ",Nj:"Nj","Ⓞ":"O",O:"O",Ò:"O",Ó:"O",Ô:"O",Ồ:"O",Ố:"O",Ỗ:"O",Ổ:"O",Õ:"O",Ṍ:"O",Ȭ:"O",Ṏ:"O",Ō:"O",Ṑ:"O",Ṓ:"O",Ŏ:"O",Ȯ:"O",Ȱ:"O",Ö:"O",Ȫ:"O",Ỏ:"O",Ő:"O",Ǒ:"O",Ȍ:"O",Ȏ:"O",Ơ:"O",Ờ:"O",Ớ:"O",Ỡ:"O",Ở:"O",Ợ:"O",Ọ:"O",Ộ:"O",Ǫ:"O",Ǭ:"O",Ø:"O",Ǿ:"O",Ɔ:"O",Ɵ:"O",Ꝋ:"O",Ꝍ:"O",Œ:"OE",Ƣ:"OI",Ꝏ:"OO",Ȣ:"OU","Ⓟ":"P",P:"P",Ṕ:"P",Ṗ:"P",Ƥ:"P",Ᵽ:"P",Ꝑ:"P",Ꝓ:"P",Ꝕ:"P","Ⓠ":"Q",Q:"Q",Ꝗ:"Q",Ꝙ:"Q",Ɋ:"Q","Ⓡ":"R",R:"R",Ŕ:"R",Ṙ:"R",Ř:"R",Ȑ:"R",Ȓ:"R",Ṛ:"R",Ṝ:"R",Ŗ:"R",Ṟ:"R",Ɍ:"R",Ɽ:"R",Ꝛ:"R",Ꞧ:"R",Ꞃ:"R","Ⓢ":"S",S:"S",ẞ:"S",Ś:"S",Ṥ:"S",Ŝ:"S",Ṡ:"S",Š:"S",Ṧ:"S",Ṣ:"S",Ṩ:"S",Ș:"S",Ş:"S",Ȿ:"S",Ꞩ:"S",Ꞅ:"S","Ⓣ":"T",T:"T",Ṫ:"T",Ť:"T",Ṭ:"T",Ț:"T",Ţ:"T",Ṱ:"T",Ṯ:"T",Ŧ:"T",Ƭ:"T",Ʈ:"T",Ⱦ:"T",Ꞇ:"T",Ꜩ:"TZ","Ⓤ":"U",U:"U",Ù:"U",Ú:"U",Û:"U",Ũ:"U",Ṹ:"U",Ū:"U",Ṻ:"U",Ŭ:"U",Ü:"U",Ǜ:"U",Ǘ:"U",Ǖ:"U",Ǚ:"U",Ủ:"U",Ů:"U",Ű:"U",Ǔ:"U",Ȕ:"U",Ȗ:"U",Ư:"U",Ừ:"U",Ứ:"U",Ữ:"U",Ử:"U",Ự:"U",Ụ:"U",Ṳ:"U",Ų:"U",Ṷ:"U",Ṵ:"U",Ʉ:"U","Ⓥ":"V",V:"V",Ṽ:"V",Ṿ:"V",Ʋ:"V",Ꝟ:"V",Ʌ:"V",Ꝡ:"VY","Ⓦ":"W",W:"W",Ẁ:"W",Ẃ:"W",Ŵ:"W",Ẇ:"W",Ẅ:"W",Ẉ:"W",Ⱳ:"W","Ⓧ":"X",X:"X",Ẋ:"X",Ẍ:"X","Ⓨ":"Y",Y:"Y",Ỳ:"Y",Ý:"Y",Ŷ:"Y",Ỹ:"Y",Ȳ:"Y",Ẏ:"Y",Ÿ:"Y",Ỷ:"Y",Ỵ:"Y",Ƴ:"Y",Ɏ:"Y",Ỿ:"Y","Ⓩ":"Z",Z:"Z",Ź:"Z",Ẑ:"Z",Ż:"Z",Ž:"Z",Ẓ:"Z",Ẕ:"Z",Ƶ:"Z",Ȥ:"Z",Ɀ:"Z",Ⱬ:"Z",Ꝣ:"Z","ⓐ":"a",a:"a",ẚ:"a",à:"a",á:"a",â:"a",ầ:"a",ấ:"a",ẫ:"a",ẩ:"a",ã:"a",ā:"a",ă:"a",ằ:"a",ắ:"a",ẵ:"a",ẳ:"a",ȧ:"a",ǡ:"a",ä:"a",ǟ:"a",ả:"a",å:"a",ǻ:"a",ǎ:"a",ȁ:"a",ȃ:"a",ạ:"a",ậ:"a",ặ:"a",ḁ:"a",ą:"a",ⱥ:"a",ɐ:"a",ꜳ:"aa",æ:"ae",ǽ:"ae",ǣ:"ae",ꜵ:"ao",ꜷ:"au",ꜹ:"av",ꜻ:"av",ꜽ:"ay","ⓑ":"b",b:"b",ḃ:"b",ḅ:"b",ḇ:"b",ƀ:"b",ƃ:"b",ɓ:"b","ⓒ":"c",c:"c",ć:"c",ĉ:"c",ċ:"c",č:"c",ç:"c",ḉ:"c",ƈ:"c",ȼ:"c",ꜿ:"c",ↄ:"c","ⓓ":"d",d:"d",ḋ:"d",ď:"d",ḍ:"d",ḑ:"d",ḓ:"d",ḏ:"d",đ:"d",ƌ:"d",ɖ:"d",ɗ:"d",ꝺ:"d",dz:"dz",dž:"dz","ⓔ":"e",e:"e",è:"e",é:"e",ê:"e",ề:"e",ế:"e",ễ:"e",ể:"e",ẽ:"e",ē:"e",ḕ:"e",ḗ:"e",ĕ:"e",ė:"e",ë:"e",ẻ:"e",ě:"e",ȅ:"e",ȇ:"e",ẹ:"e",ệ:"e",ȩ:"e",ḝ:"e",ę:"e",ḙ:"e",ḛ:"e",ɇ:"e",ɛ:"e",ǝ:"e","ⓕ":"f",f:"f",ḟ:"f",ƒ:"f",ꝼ:"f","ⓖ":"g",g:"g",ǵ:"g",ĝ:"g",ḡ:"g",ğ:"g",ġ:"g",ǧ:"g",ģ:"g",ǥ:"g",ɠ:"g",ꞡ:"g",ᵹ:"g",ꝿ:"g","ⓗ":"h",h:"h",ĥ:"h",ḣ:"h",ḧ:"h",ȟ:"h",ḥ:"h",ḩ:"h",ḫ:"h",ẖ:"h",ħ:"h",ⱨ:"h",ⱶ:"h",ɥ:"h",ƕ:"hv","ⓘ":"i",i:"i",ì:"i",í:"i",î:"i",ĩ:"i",ī:"i",ĭ:"i",ï:"i",ḯ:"i",ỉ:"i",ǐ:"i",ȉ:"i",ȋ:"i",ị:"i",į:"i",ḭ:"i",ɨ:"i",ı:"i","ⓙ":"j",j:"j",ĵ:"j",ǰ:"j",ɉ:"j","ⓚ":"k",k:"k",ḱ:"k",ǩ:"k",ḳ:"k",ķ:"k",ḵ:"k",ƙ:"k",ⱪ:"k",ꝁ:"k",ꝃ:"k",ꝅ:"k",ꞣ:"k","ⓛ":"l",l:"l",ŀ:"l",ĺ:"l",ľ:"l",ḷ:"l",ḹ:"l",ļ:"l",ḽ:"l",ḻ:"l",ſ:"l",ł:"l",ƚ:"l",ɫ:"l",ⱡ:"l",ꝉ:"l",ꞁ:"l",ꝇ:"l",lj:"lj","ⓜ":"m",m:"m",ḿ:"m",ṁ:"m",ṃ:"m",ɱ:"m",ɯ:"m","ⓝ":"n",n:"n",ǹ:"n",ń:"n",ñ:"n",ṅ:"n",ň:"n",ṇ:"n",ņ:"n",ṋ:"n",ṉ:"n",ƞ:"n",ɲ:"n",ʼn:"n",ꞑ:"n",ꞥ:"n",nj:"nj","ⓞ":"o",o:"o",ò:"o",ó:"o",ô:"o",ồ:"o",ố:"o",ỗ:"o",ổ:"o",õ:"o",ṍ:"o",ȭ:"o",ṏ:"o",ō:"o",ṑ:"o",ṓ:"o",ŏ:"o",ȯ:"o",ȱ:"o",ö:"o",ȫ:"o",ỏ:"o",ő:"o",ǒ:"o",ȍ:"o",ȏ:"o",ơ:"o",ờ:"o",ớ:"o",ỡ:"o",ở:"o",ợ:"o",ọ:"o",ộ:"o",ǫ:"o",ǭ:"o",ø:"o",ǿ:"o",ɔ:"o",ꝋ:"o",ꝍ:"o",ɵ:"o",œ:"oe",ƣ:"oi",ȣ:"ou",ꝏ:"oo","ⓟ":"p",p:"p",ṕ:"p",ṗ:"p",ƥ:"p",ᵽ:"p",ꝑ:"p",ꝓ:"p",ꝕ:"p","ⓠ":"q",q:"q",ɋ:"q",ꝗ:"q",ꝙ:"q","ⓡ":"r",r:"r",ŕ:"r",ṙ:"r",ř:"r",ȑ:"r",ȓ:"r",ṛ:"r",ṝ:"r",ŗ:"r",ṟ:"r",ɍ:"r",ɽ:"r",ꝛ:"r",ꞧ:"r",ꞃ:"r","ⓢ":"s",s:"s",ß:"s",ś:"s",ṥ:"s",ŝ:"s",ṡ:"s",š:"s",ṧ:"s",ṣ:"s",ṩ:"s",ș:"s",ş:"s",ȿ:"s",ꞩ:"s",ꞅ:"s",ẛ:"s","ⓣ":"t",t:"t",ṫ:"t",ẗ:"t",ť:"t",ṭ:"t",ț:"t",ţ:"t",ṱ:"t",ṯ:"t",ŧ:"t",ƭ:"t",ʈ:"t",ⱦ:"t",ꞇ:"t",ꜩ:"tz","ⓤ":"u",u:"u",ù:"u",ú:"u",û:"u",ũ:"u",ṹ:"u",ū:"u",ṻ:"u",ŭ:"u",ü:"u",ǜ:"u",ǘ:"u",ǖ:"u",ǚ:"u",ủ:"u",ů:"u",ű:"u",ǔ:"u",ȕ:"u",ȗ:"u",ư:"u",ừ:"u",ứ:"u",ữ:"u",ử:"u",ự:"u",ụ:"u",ṳ:"u",ų:"u",ṷ:"u",ṵ:"u",ʉ:"u","ⓥ":"v",v:"v",ṽ:"v",ṿ:"v",ʋ:"v",ꝟ:"v",ʌ:"v",ꝡ:"vy","ⓦ":"w",w:"w",ẁ:"w",ẃ:"w",ŵ:"w",ẇ:"w",ẅ:"w",ẘ:"w",ẉ:"w",ⱳ:"w","ⓧ":"x",x:"x",ẋ:"x",ẍ:"x","ⓨ":"y",y:"y",ỳ:"y",ý:"y",ŷ:"y",ỹ:"y",ȳ:"y",ẏ:"y",ÿ:"y",ỷ:"y",ẙ:"y",ỵ:"y",ƴ:"y",ɏ:"y",ỿ:"y","ⓩ":"z",z:"z",ź:"z",ẑ:"z",ż:"z",ž:"z",ẓ:"z",ẕ:"z",ƶ:"z",ȥ:"z",ɀ:"z",ⱬ:"z",ꝣ:"z",Ά:"Α",Έ:"Ε",Ή:"Η",Ί:"Ι",Ϊ:"Ι",Ό:"Ο",Ύ:"Υ",Ϋ:"Υ",Ώ:"Ω",ά:"α",έ:"ε",ή:"η",ί:"ι",ϊ:"ι",ΐ:"ι",ό:"ο",ύ:"υ",ϋ:"υ",ΰ:"υ",ώ:"ω",ς:"σ","’":"'"}})),t.define("select2/data/base",["../utils"],(function(e){function t(e,n){t.__super__.constructor.call(this)}return e.Extend(t,e.Observable),t.prototype.current=function(e){throw new Error("The `current` method must be defined in child classes.")},t.prototype.query=function(e,t){throw new Error("The `query` method must be defined in child classes.")},t.prototype.bind=function(e,t){},t.prototype.destroy=function(){},t.prototype.generateResultId=function(t,n){var r=t.id+"-result-";return r+=e.generateChars(4),null!=n.id?r+="-"+n.id.toString():r+="-"+e.generateChars(4),r},t})),t.define("select2/data/select",["./base","../utils","jquery"],(function(e,t,n){function r(e,t){this.$element=e,this.options=t,r.__super__.constructor.call(this)}return t.Extend(r,e),r.prototype.current=function(e){var t=[],r=this;this.$element.find(":selected").each((function(){var e=n(this),i=r.item(e);t.push(i)})),e(t)},r.prototype.select=function(e){var t=this;if(e.selected=!0,n(e.element).is("option"))return e.element.selected=!0,void this.$element.trigger("input").trigger("change");if(this.$element.prop("multiple"))this.current((function(r){var i=[];(e=[e]).push.apply(e,r);for(var o=0;o<e.length;o++){var s=e[o].id;-1===n.inArray(s,i)&&i.push(s)}t.$element.val(i),t.$element.trigger("input").trigger("change")}));else{var r=e.id;this.$element.val(r),this.$element.trigger("input").trigger("change")}},r.prototype.unselect=function(e){var t=this;if(this.$element.prop("multiple")){if(e.selected=!1,n(e.element).is("option"))return e.element.selected=!1,void this.$element.trigger("input").trigger("change");this.current((function(r){for(var i=[],o=0;o<r.length;o++){var s=r[o].id;s!==e.id&&-1===n.inArray(s,i)&&i.push(s)}t.$element.val(i),t.$element.trigger("input").trigger("change")}))}},r.prototype.bind=function(e,t){var n=this;(this.container=e).on("select",(function(e){n.select(e.data)})),e.on("unselect",(function(e){n.unselect(e.data)}))},r.prototype.destroy=function(){this.$element.find("*").each((function(){t.RemoveData(this)}))},r.prototype.query=function(e,t){var r=[],i=this;this.$element.children().each((function(){var t=n(this);if(t.is("option")||t.is("optgroup")){var o=i.item(t),s=i.matches(e,o);null!==s&&r.push(s)}})),t({results:r})},r.prototype.addOptions=function(e){t.appendMany(this.$element,e)},r.prototype.option=function(e){var r;e.children?(r=document.createElement("optgroup")).label=e.text:void 0!==(r=document.createElement("option")).textContent?r.textContent=e.text:r.innerText=e.text,void 0!==e.id&&(r.value=e.id),e.disabled&&(r.disabled=!0),e.selected&&(r.selected=!0),e.title&&(r.title=e.title);var i=n(r),o=this._normalizeItem(e);return o.element=r,t.StoreData(r,"data",o),i},r.prototype.item=function(e){var r={};if(null!=(r=t.GetData(e[0],"data")))return r;if(e.is("option"))r={id:e.val(),text:e.text(),disabled:e.prop("disabled"),selected:e.prop("selected"),title:e.prop("title")};else if(e.is("optgroup")){r={text:e.prop("label"),children:[],title:e.prop("title")};for(var i=e.children("option"),o=[],s=0;s<i.length;s++){var a=n(i[s]),l=this.item(a);o.push(l)}r.children=o}return(r=this._normalizeItem(r)).element=e[0],t.StoreData(e[0],"data",r),r},r.prototype._normalizeItem=function(e){return e!==Object(e)&&(e={id:e,text:e}),null!=(e=n.extend({},{text:""},e)).id&&(e.id=e.id.toString()),null!=e.text&&(e.text=e.text.toString()),null==e._resultId&&e.id&&null!=this.container&&(e._resultId=this.generateResultId(this.container,e)),n.extend({},{selected:!1,disabled:!1},e)},r.prototype.matches=function(e,t){return this.options.get("matcher")(e,t)},r})),t.define("select2/data/array",["./select","../utils","jquery"],(function(e,t,n){function r(e,t){this._dataToConvert=t.get("data")||[],r.__super__.constructor.call(this,e,t)}return t.Extend(r,e),r.prototype.bind=function(e,t){r.__super__.bind.call(this,e,t),this.addOptions(this.convertToOptions(this._dataToConvert))},r.prototype.select=function(e){var t=this.$element.find("option").filter((function(t,n){return n.value==e.id.toString()}));0===t.length&&(t=this.option(e),this.addOptions(t)),r.__super__.select.call(this,e)},r.prototype.convertToOptions=function(e){var r=this,i=this.$element.find("option"),o=i.map((function(){return r.item(n(this)).id})).get(),s=[];function a(e){return function(){return n(this).val()==e.id}}for(var l=0;l<e.length;l++){var c=this._normalizeItem(e[l]);if(0<=n.inArray(c.id,o)){var u=i.filter(a(c)),p=this.item(u),d=n.extend(!0,{},c,p),f=this.option(d);u.replaceWith(f)}else{var h=this.option(c);if(c.children){var g=this.convertToOptions(c.children);t.appendMany(h,g)}s.push(h)}}return s},r})),t.define("select2/data/ajax",["./array","../utils","jquery"],(function(e,t,n){function r(e,t){this.ajaxOptions=this._applyDefaults(t.get("ajax")),null!=this.ajaxOptions.processResults&&(this.processResults=this.ajaxOptions.processResults),r.__super__.constructor.call(this,e,t)}return t.Extend(r,e),r.prototype._applyDefaults=function(e){var t={data:function(e){return n.extend({},e,{q:e.term})},transport:function(e,t,r){var i=n.ajax(e);return i.then(t),i.fail(r),i}};return n.extend({},t,e,!0)},r.prototype.processResults=function(e){return e},r.prototype.query=function(e,t){var r=this;null!=this._request&&(n.isFunction(this._request.abort)&&this._request.abort(),this._request=null);var i=n.extend({type:"GET"},this.ajaxOptions);function o(){var o=i.transport(i,(function(i){var o=r.processResults(i,e);r.options.get("debug")&&window.console&&console.error&&(o&&o.results&&n.isArray(o.results)||console.error("Select2: The AJAX results did not return an array in the `results` key of the response.")),t(o)}),(function(){"status"in o&&(0===o.status||"0"===o.status)||r.trigger("results:message",{message:"errorLoading"})}));r._request=o}"function"==typeof i.url&&(i.url=i.url.call(this.$element,e)),"function"==typeof i.data&&(i.data=i.data.call(this.$element,e)),this.ajaxOptions.delay&&null!=e.term?(this._queryTimeout&&window.clearTimeout(this._queryTimeout),this._queryTimeout=window.setTimeout(o,this.ajaxOptions.delay)):o()},r})),t.define("select2/data/tags",["jquery"],(function(e){function t(t,n,r){var i=r.get("tags"),o=r.get("createTag");void 0!==o&&(this.createTag=o);var s=r.get("insertTag");if(void 0!==s&&(this.insertTag=s),t.call(this,n,r),e.isArray(i))for(var a=0;a<i.length;a++){var l=i[a],c=this._normalizeItem(l),u=this.option(c);this.$element.append(u)}}return t.prototype.query=function(e,t,n){var r=this;this._removeOldTags(),null!=t.term&&null==t.page?e.call(this,t,(function e(i,o){for(var s=i.results,a=0;a<s.length;a++){var l=s[a],c=null!=l.children&&!e({results:l.children},!0);if((l.text||"").toUpperCase()===(t.term||"").toUpperCase()||c)return!o&&(i.data=s,void n(i))}if(o)return!0;var u=r.createTag(t);if(null!=u){var p=r.option(u);p.attr("data-select2-tag",!0),r.addOptions([p]),r.insertTag(s,u)}i.results=s,n(i)})):e.call(this,t,n)},t.prototype.createTag=function(t,n){va
Download .txt
gitextract_u0sne320/

├── .dockerignore
├── .github/
│   ├── CODEOWNERS
│   ├── CODE_OF_CONDUCT.md
│   ├── CONTRIBUTING.md
│   ├── ISSUE_TEMPLATE.md
│   ├── dependabot.yml
│   └── workflows/
│       ├── close-inactive.yaml
│       └── update-templates.yml
├── .gitignore
├── .gitmodules
├── .swift-version
├── .swiftlint.yml
├── .travis/
│   ├── ci.sh
│   └── update-submodule.sh
├── Dockerfile
├── LICENSE.md
├── Localizations/
│   ├── README.md
│   ├── ar.json
│   ├── cs.json
│   ├── de.json
│   ├── el.json
│   ├── en.json
│   ├── fa.json
│   ├── fr.json
│   ├── id.json
│   ├── ja.json
│   ├── ko.json
│   ├── nl.json
│   ├── pt.json
│   ├── ro.json
│   ├── ru.json
│   ├── th.json
│   ├── tr.json
│   └── zh.json
├── Package.pins
├── Package.resolved
├── Package.swift
├── Procfile
├── Public/
│   ├── assets/
│   │   ├── main.css
│   │   └── main.js
│   ├── fonts/
│   │   ├── ProximaNova-Bold.otf
│   │   ├── ProximaNova-Light.otf
│   │   ├── ProximaNova-Regular.otf
│   │   ├── ProximaNova-Semibold.otf
│   │   └── ProximaNova-Thin.otf
│   └── sitemap.xml
├── README.md
├── Resources/
│   ├── Views/
│   │   ├── index.leaf
│   │   └── internal-linking.leaf
│   └── links.json
├── Sources/
│   ├── App/
│   │   ├── Controllers/
│   │   │   ├── InternalLinkingController.swift
│   │   │   ├── ReadOnlyTemplateManagerProtocol.swift
│   │   │   └── TemplateController.swift
│   │   ├── Enum/
│   │   │   └── TemplateSuffix.swift
│   │   ├── Extensions/
│   │   │   ├── Dictionary+Extensions.swift
│   │   │   ├── FileManager+Extensions.swift
│   │   │   ├── Router+Extensions.swift
│   │   │   ├── Sequence+Extensions.swift
│   │   │   ├── String+Extensions.swift
│   │   │   └── URL+Extensions.swift
│   │   ├── Middleware/
│   │   │   └── FileMiddlewareWithBasePrefix.swift
│   │   ├── Models/
│   │   │   ├── Dropdown.swift
│   │   │   ├── Flags.swift
│   │   │   ├── IgnoreTemplateModel.swift
│   │   │   ├── IgnoreTemplateModeling.swift
│   │   │   └── InternalLink.swift
│   │   ├── RouteHandlers/
│   │   │   ├── APIRouteHandlers.swift
│   │   │   ├── SiteRouteHandlers.swift
│   │   │   └── UrlResolver.swift
│   │   └── Server.swift
│   └── Run/
│       └── main.swift
├── Tests/
│   ├── AppTests/
│   │   ├── Controllers/
│   │   │   └── TemplateControllerTests.swift
│   │   ├── Extensions/
│   │   │   ├── Sequence+ExtensionsTest.swift
│   │   │   ├── String+ExtensionsTests.swift
│   │   │   └── URL+ExtensionsTests.swift
│   │   ├── Models/
│   │   │   └── IgnoreTemplateModelTests.swift
│   │   └── RouteHandlers/
│   │       ├── APIHandlersTests.swift
│   │       └── SiteHandlersTests.swift
│   └── LinuxMain.swift
├── app.json
├── docker-compose-dev.yml
├── docker-compose.yml
├── e2e-tests/
│   ├── api/
│   │   ├── index.test.js
│   │   └── show.test.js
│   ├── pages/
│   │   └── homepage.test.js
│   └── utils/
│       └── templates.js
├── jest-puppeteer.config.js
├── jest.config.js
├── package.json
├── src/
│   ├── css/
│   │   └── bootstrap-extract.css
│   ├── index.js
│   ├── js/
│   │   └── app.js
│   └── less/
│       ├── app.less
│       ├── internal-linking.less
│       ├── select2-toptal-theme.less
│       └── variables.less
└── webpack.config.js
Download .txt
SYMBOL INDEX (136 symbols across 2 files)

FILE: Public/assets/main.js
  function w (line 2) | function w(e,t,n){var r,i,o=(n=n||b).createElement("script");if(o.text=e...
  function _ (line 2) | function _(e){return null==e?e+"":"object"==typeof e||"function"==typeof...
  function A (line 2) | function A(e){var t=!!e&&"length"in e&&e.length,n=_(e);return!v(e)&&!y(e...
  function ae (line 2) | function ae(e,t,r,i){var o,a,c,u,p,h,v,y=t&&t.ownerDocument,w=t?t.nodeTy...
  function le (line 2) | function le(){var e=[];return function t(n,i){return e.push(n+" ")>r.cac...
  function ce (line 2) | function ce(e){return e[x]=!0,e}
  function ue (line 2) | function ue(e){var t=f.createElement("fieldset");try{return!!e(t)}catch(...
  function pe (line 2) | function pe(e,t){for(var n=e.split("|"),i=n.length;i--;)r.attrHandle[n[i...
  function de (line 2) | function de(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourc...
  function fe (line 2) | function fe(e){return function(t){return"input"===t.nodeName.toLowerCase...
  function he (line 2) | function he(e){return function(t){var n=t.nodeName.toLowerCase();return(...
  function ge (line 2) | function ge(e){return function(t){return"form"in t?t.parentNode&&!1===t....
  function me (line 2) | function me(e){return ce((function(t){return t=+t,ce((function(n,r){for(...
  function ve (line 2) | function ve(e){return e&&void 0!==e.getElementsByTagName&&e}
  function ye (line 2) | function ye(){}
  function be (line 2) | function be(e){for(var t=0,n=e.length,r="";t<n;t++)r+=e[t].value;return r}
  function xe (line 2) | function xe(e,t,n){var r=t.dir,i=t.next,o=i||r,s=n&&"parentNode"===o,a=T...
  function we (line 2) | function we(e){return e.length>1?function(t,n,r){for(var i=e.length;i--;...
  function _e (line 2) | function _e(e,t,n,r,i){for(var o,s=[],a=0,l=e.length,c=null!=t;a<l;a++)(...
  function Te (line 2) | function Te(e,t,n,r,i,o){return r&&!r[x]&&(r=Te(r)),i&&!i[x]&&(i=Te(i,o)...
  function Ce (line 2) | function Ce(e){for(var t,n,i,o=e.length,s=r.relative[e[0].type],a=s||r.r...
  function k (line 2) | function k(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerC...
  function L (line 2) | function L(e,t,n){return v(t)?C.grep(e,(function(e,r){return!!t.call(e,r...
  function H (line 2) | function H(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}
  function R (line 2) | function R(e){return e}
  function M (line 2) | function M(e){throw e}
  function U (line 2) | function U(e,t,n,r){var i;try{e&&v(i=e.promise)?i.call(e).done(t).fail(n...
  function s (line 2) | function s(e,t,n,i){return function(){var a=this,l=arguments,c=function(...
  function B (line 2) | function B(){b.removeEventListener("DOMContentLoaded",B),r.removeEventLi...
  function X (line 2) | function X(e,t){return t.toUpperCase()}
  function K (line 2) | function K(e){return e.replace(G,"ms-").replace(Y,X)}
  function Q (line 2) | function Q(){this.expando=C.expando+Q.uid++}
  function ne (line 2) | function ne(e,t,n){var r;if(void 0===n&&1===e.nodeType)if(r="data-"+t.re...
  function ue (line 2) | function ue(e,t,n,r){var i,o,s=20,a=r?function(){return r.cur()}:functio...
  function de (line 2) | function de(e){var t,n=e.ownerDocument,r=e.nodeName,i=pe[r];return i||(t...
  function fe (line 2) | function fe(e,t){for(var n,r,i=[],o=0,s=e.length;o<s;o++)(r=e[o]).style&...
  function xe (line 2) | function xe(e,t){var n;return n=void 0!==e.getElementsByTagName?e.getEle...
  function we (line 2) | function we(e,t){for(var n=0,r=e.length;n<r;n++)Z.set(e[n],"globalEval",...
  function Te (line 2) | function Te(e,t,n,r,i){for(var o,s,a,l,c,u,p=t.createDocumentFragment(),...
  function Ae (line 2) | function Ae(){return!0}
  function Ee (line 2) | function Ee(){return!1}
  function Se (line 2) | function Se(e,t){return e===function(){try{return b.activeElement}catch(...
  function $e (line 2) | function $e(e,t,n,r,i,o){var s,a;if("object"==typeof t){for(a in"string"...
  function De (line 2) | function De(e,t,n){n?(Z.set(e,t,!1),C.event.add(e,t,{namespace:!1,handle...
  function Oe (line 2) | function Oe(e,t){return k(e,"table")&&k(11!==t.nodeType?t:t.firstChild,"...
  function qe (line 2) | function qe(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}
  function Ne (line 2) | function Ne(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.sli...
  function Pe (line 2) | function Pe(e,t){var n,r,i,o,s,a;if(1===t.nodeType){if(Z.hasData(e)&&(a=...
  function He (line 2) | function He(e,t){var n=t.nodeName.toLowerCase();"input"===n&&me.test(e.t...
  function Ie (line 2) | function Ie(e,t,n,r){t=l(t);var i,o,s,a,c,u,p=0,d=e.length,f=d-1,h=t[0],...
  function Re (line 2) | function Re(e,t,n){for(var r,i=t?C.filter(t,e):e,o=0;null!=(r=i[o]);o++)...
  function Be (line 2) | function Be(e,t,n){var r,i,o,s,a=e.style;return(n=n||Ue(e))&&(""!==(s=n....
  function ze (line 2) | function ze(e,t){return{get:function(){if(!e())return(this.get=t).apply(...
  function e (line 2) | function e(){if(u){c.style.cssText="position:absolute;left:-11111px;widt...
  function t (line 2) | function t(e){return Math.round(parseFloat(e))}
  function Ke (line 2) | function Ke(e){return C.cssProps[e]||Xe[e]||(e in Ye?e:Xe[e]=function(e)...
  function et (line 2) | function et(e,t,n){var r=ie.exec(t);return r?Math.max(0,r[2]-(n||0))+(r[...
  function tt (line 2) | function tt(e,t,n,r,i,o){var s="width"===t?1:0,a=0,l=0;if(n===(r?"border...
  function nt (line 2) | function nt(e,t,n){var r=Ue(e),i=(!m.boxSizingReliable()||n)&&"border-bo...
  function rt (line 2) | function rt(e,t,n,r,i){return new rt.prototype.init(e,t,n,r,i)}
  function lt (line 2) | function lt(){ot&&(!1===b.hidden&&r.requestAnimationFrame?r.requestAnima...
  function ct (line 2) | function ct(){return r.setTimeout((function(){it=void 0})),it=Date.now()}
  function ut (line 2) | function ut(e,t){var n,r=0,i={height:e};for(t=t?1:0;r<4;r+=2-t)i["margin...
  function pt (line 2) | function pt(e,t,n){for(var r,i=(dt.tweeners[t]||[]).concat(dt.tweeners["...
  function dt (line 2) | function dt(e,t,n){var r,i,o=0,s=dt.prefilters.length,a=C.Deferred().alw...
  function vt (line 2) | function vt(e){return(e.match(I)||[]).join(" ")}
  function yt (line 2) | function yt(e){return e.getAttribute&&e.getAttribute("class")||""}
  function bt (line 2) | function bt(e){return Array.isArray(e)?e:"string"==typeof e&&e.match(I)|...
  function kt (line 2) | function kt(e,t,n,r){var i;if(Array.isArray(t))C.each(t,(function(t,i){n...
  function Ut (line 2) | function Ut(e){return function(t,n){"string"!=typeof t&&(n=t,t="*");var ...
  function Ft (line 2) | function Ft(e,t,n,r){var i={},o=e===It;function s(a){var l;return i[a]=!...
  function Wt (line 2) | function Wt(e,t){var n,r,i=C.ajaxSettings.flatOptions||{};for(n in t)voi...
  function A (line 2) | function A(e,t,s,l){var p,d,b,x,w,_=t;c||(c=!0,a&&r.clearTimeout(a),n=vo...
  function v (line 2) | function v(e,t){return h.call(e,t)}
  function y (line 2) | function y(e,t){var n,r,i,o,s,a,l,c,u,p,f,h=t&&t.split("/"),g=d.map,v=g&...
  function b (line 2) | function b(e,t){return function(){var n=g.call(arguments,0);return"strin...
  function x (line 2) | function x(e){return function(t){u[e]=t}}
  function w (line 2) | function w(e){if(v(p,e)){var t=p[e];delete p[e],f[e]=!0,s.apply(o,t)}if(...
  function _ (line 2) | function _(e){var t,n=e?e.indexOf("!"):-1;return-1<n&&(t=e.substring(0,n...
  function T (line 2) | function T(e){return e?_(e):[]}
  function n (line 2) | function n(e){var t=e.prototype,n=[];for(var r in t)"function"==typeof t...
  function r (line 2) | function r(){this.listeners={}}
  function r (line 2) | function r(){this.constructor=e}
  function o (line 2) | function o(){var n=Array.prototype.unshift,r=t.prototype.constructor.len...
  function l (line 2) | function l(e){var n=function(){};e in o.prototype&&(n=o.prototype[e]);va...
  function n (line 2) | function n(e,t,r){this.$element=e,this.data=r,this.options=t,n.__super__...
  function r (line 2) | function r(e,t){this.$element=e,this.options=t,r.__super__.constructor.c...
  function i (line 2) | function i(){i.__super__.constructor.apply(this,arguments)}
  function r (line 2) | function r(e,t){r.__super__.constructor.apply(this,arguments)}
  function t (line 2) | function t(e,t,n){this.placeholder=this.normalizePlaceholder(n.get("plac...
  function r (line 2) | function r(){}
  function r (line 2) | function r(e,t,n){e.call(this,t,n)}
  function t (line 2) | function t(){}
  function n (line 2) | function n(e){this.dict=e||{}}
  function t (line 2) | function t(e,n){t.__super__.constructor.call(this)}
  function r (line 2) | function r(e,t){this.$element=e,this.options=t,r.__super__.constructor.c...
  function r (line 2) | function r(e,t){this._dataToConvert=t.get("data")||[],r.__super__.constr...
  function a (line 2) | function a(e){return function(){return n(this).val()==e.id}}
  function r (line 2) | function r(e,t){this.ajaxOptions=this._applyDefaults(t.get("ajax")),null...
  function o (line 2) | function o(){var o=i.transport(i,(function(i){var o=r.processResults(i,e...
  function t (line 2) | function t(t,n,r){var i=r.get("tags"),o=r.get("createTag");void 0!==o&&(...
  function t (line 2) | function t(e,t,n){var r=n.get("tokenizer");void 0!==r&&(this.tokenizer=r...
  function e (line 2) | function e(e,t,n){this.minimumInputLength=n.get("minimumInputLength"),e....
  function e (line 2) | function e(e,t,n){this.maximumInputLength=n.get("maximumInputLength"),e....
  function e (line 2) | function e(e,t,n){this.maximumSelectionLength=n.get("maximumSelectionLen...
  function n (line 2) | function n(e,t){this.$element=e,this.options=t,n.__super__.constructor.c...
  function n (line 2) | function n(){}
  function e (line 2) | function e(e,t,n,r){this.placeholder=this.normalizePlaceholder(n.get("pl...
  function t (line 2) | function t(e,t,n,r){this.lastParams={},e.call(this,t,n,r),this.$loadingM...
  function n (line 2) | function n(t,n,r){this.$dropdownParent=e(r.get("dropdownParent")||docume...
  function e (line 2) | function e(e,t,n,r){this.minimumResultsForSearch=n.get("minimumResultsFo...
  function t (line 2) | function t(){}
  function e (line 2) | function e(){}
  function D (line 2) | function D(){this.reset()}
  function t (line 2) | function t(e){return e.replace(/[^\u0000-\u007E]/g,(function(e){return p...
  function i (line 2) | function i(t,i){if(this.options=t,null!=i&&this.fromElement(i),null!=i&&...
  function o (line 2) | function o(e,t){return t.toUpperCase()}
  function e (line 2) | function e(e){var n,r,i,o,s,p,d=Object.create(null);if(this[a]=d,e)if("s...
  function l (line 2) | function l(e,t){c(this,t,e)}
  function c (line 2) | function c(e,n,r){var i=t(r)?r.join(","):r;n in e?e[n].push(i):e[n]=[i]}
  function u (line 2) | function u(e){return decodeURIComponent(e.replace(i," "))}
  function p (line 2) | function p(e){return encodeURIComponent(e).replace(r,s)}
  function t (line 2) | function t(t,r){n.append.call(this,t,r),t=this.toString(),e.set.call(thi...
  function r (line 2) | function r(t){n.delete.call(this,t),t=this.toString(),e.set.call(this._u...
  function i (line 2) | function i(t,r){n.set.call(this,t,r),t=this.toString(),e.set.call(this._...
  function n (line 2) | function n(r){var i=t[r];if(void 0!==i)return i.exports;var o=t[r]={expo...
  method firstHiddenTime (line 2) | get firstHiddenTime(){return d}
  class E (line 2) | class E{sendToGoogleAnalytics({name:e,delta:t,id:n}){window.gtag("event"...
    method sendToGoogleAnalytics (line 2) | sendToGoogleAnalytics({name:e,delta:t,id:n}){window.gtag("event",e,{ev...
    method trackCoreWebVitals (line 2) | trackCoreWebVitals(){!function(e,t){v||(m((function(e){y=e.value})),v=...
  function e (line 2) | function e(){const e=s()("#input-gitignore").map((function(){return s()(...

FILE: src/js/app.js
  class GoogleAnalytics (line 3) | class GoogleAnalytics {
    method sendToGoogleAnalytics (line 4) | sendToGoogleAnalytics({ name, delta, id }) {
    method trackCoreWebVitals (line 13) | trackCoreWebVitals() {
  function generateGitIgnore (line 118) | function generateGitIgnore() {
  function generateGitIgnoreFile (line 134) | function generateGitIgnoreFile() {
Condensed preview — 97 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (341K chars).
[
  {
    "path": ".dockerignore",
    "chars": 17,
    "preview": "Packages\n.build\n\n"
  },
  {
    "path": ".github/CODEOWNERS",
    "chars": 25,
    "preview": "* @toptal/external-sites\n"
  },
  {
    "path": ".github/CODE_OF_CONDUCT.md",
    "chars": 3217,
    "preview": "# Contributor Covenant Code of Conduct\n\n## Our Pledge\n\nIn the interest of fostering an open and welcoming environment, w"
  },
  {
    "path": ".github/CONTRIBUTING.md",
    "chars": 502,
    "preview": "# Vision\n\nGitignore.io's vision is to become the authoritative source for `.gitignore` templates.  Gitignore provides te"
  },
  {
    "path": ".github/ISSUE_TEMPLATE.md",
    "chars": 1395,
    "preview": "# Issue Template\n\n## Frequently Asked Questions\n\n\n**Q:** How do I submit a new <code>.gitignore</code> templates?  \n**A:"
  },
  {
    "path": ".github/dependabot.yml",
    "chars": 408,
    "preview": "version: 2\nregistries:\n  docker-registry-gcr-io:\n    type: docker-registry\n    url: https://gcr.io\n    username: _json_k"
  },
  {
    "path": ".github/workflows/close-inactive.yaml",
    "chars": 1015,
    "preview": "name: Close inactive issues and PRs\non:\n  workflow_dispatch:\n  schedule:\n    - cron: \"30 1 * * *\"\n\njobs:\n  close-stale:\n"
  },
  {
    "path": ".github/workflows/update-templates.yml",
    "chars": 567,
    "preview": "name: Update Templates\n\non:\n  workflow_dispatch:\n\n\njobs:\n  build:\n\n    runs-on: ubuntu-latest\n    timeout-minutes: 15\n\n "
  },
  {
    "path": ".gitignore",
    "chars": 1343,
    "preview": "\n# Created by https://www.gitignore.io/api/macos,linux,windows,vapor\n\n### Linux ###\n*~\n\n# temporary files which can be c"
  },
  {
    "path": ".gitmodules",
    "chars": 89,
    "preview": "[submodule \"gitignore\"]\n\tpath = gitignore\n\turl = https://github.com/toptal/gitignore.git\n"
  },
  {
    "path": ".swift-version",
    "chars": 4,
    "preview": "4.1\n"
  },
  {
    "path": ".swiftlint.yml",
    "chars": 1501,
    "preview": "disabled_rules: # rule identifiers to exclude from running\n  - colon\n  - comma\n  - control_statement\n  - line_length\nopt"
  },
  {
    "path": ".travis/ci.sh",
    "chars": 1403,
    "preview": "#!/usr/bin/env bash\n\nVERSION=\"4.1\"\necho \"Swift $VERSION Continuous Integration\";\n\n# Determine OS\nUNAME=`uname`;\nif [[ $U"
  },
  {
    "path": ".travis/update-submodule.sh",
    "chars": 261,
    "preview": "#!/bin/bash\n\ncd gitignore\ngit pull origin master\ncd ..\n\npwd\nif [[ `git status --porcelain` ]]; then\n  echo \"status: Upda"
  },
  {
    "path": "Dockerfile",
    "chars": 3784,
    "preview": "########################################################################################################################"
  },
  {
    "path": "LICENSE.md",
    "chars": 1061,
    "preview": "MIT License\n\nCopyright (c) 2013-2019\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof th"
  },
  {
    "path": "Localizations/README.md",
    "chars": 421,
    "preview": "# Localizations\n\n1. Copy the `en.json` file and rename it\n_use the base version of the language (en) instead of a countr"
  },
  {
    "path": "Localizations/ar.json",
    "chars": 878,
    "preview": "{\n    \"title\": \"إنشاء ملفات .gitignore مفيدة لمشروعك - gitignore.io\",\n    \"description\": \"Create useful .gitignore files"
  },
  {
    "path": "Localizations/cs.json",
    "chars": 1011,
    "preview": "{\n    \"title\": \"gitignore.io - Vytvořte užitečný soubory .gitignore pro váš projekt\",\n    \"description\": \"Vytvořte užite"
  },
  {
    "path": "Localizations/de.json",
    "chars": 1060,
    "preview": "{\n    \"title\": \"gitignore.io - Erstelle nützliche .gitignore Dateien Für Dein Projekt\",\n    \"description\": \"Erstelle nüt"
  },
  {
    "path": "Localizations/el.json",
    "chars": 1051,
    "preview": "{\n    \"title\": \"gitignore.io - Δημιουργήστε χρήσιμα αρχεία .gitignore για το έργο σας\",\n    \"description\": \"Δημιουργήστε"
  },
  {
    "path": "Localizations/en.json",
    "chars": 937,
    "preview": "{\n    \"title\": \"gitignore.io - Create Useful .gitignore Files For Your Project\",\n    \"description\": \"Create useful .giti"
  },
  {
    "path": "Localizations/fa.json",
    "chars": 853,
    "preview": "{\n    \"title\": \"gitignore.io - فایل های .gitignore پروژه تان را بسازید\",\n    \"description\": \"فایل های .gitignore پروژه ت"
  },
  {
    "path": "Localizations/fr.json",
    "chars": 1058,
    "preview": "{\n    \"title\": \"gitignore.io - Créez des fichiers .gitignore utiles à votre Projet\",\n    \"description\": \"Créez des fichi"
  },
  {
    "path": "Localizations/id.json",
    "chars": 973,
    "preview": "{\n    \"title\": \"gitignore.io - Buat File .gitignore yang Berguna untuk Proyek Anda\",\n    \"description\": \"Buat file .giti"
  },
  {
    "path": "Localizations/ja.json",
    "chars": 746,
    "preview": "{\n    \"title\": \"gitignore.io - プロジェクトに役立つ.gitignoreファイルを作成しよう\",\n    \"description\": \"%{templateCount} オペレーティングシステム、IDE、およ"
  },
  {
    "path": "Localizations/ko.json",
    "chars": 750,
    "preview": "{\n    \"title\": \"gitignore.io - 자신의 프로젝트에 꼭 맞는 .gitignore 파일을 만드세요\",\n    \"description\": \"자신의 프로젝트에 꼭 맞는 .gitignore 파일을 만드"
  },
  {
    "path": "Localizations/nl.json",
    "chars": 954,
    "preview": "{\n    \"title\": \"gitignore.io - Creëer nuttige .gitignore bestanden voor je project\",\n    \"description\": \"Creëer nuttige "
  },
  {
    "path": "Localizations/pt.json",
    "chars": 985,
    "preview": "{\n    \"title\": \"gitignore.io - Crie Arquivos .gitignore Úteis Para Seu Projeto.\",\n    \"description\": \"Crie arquivos .git"
  },
  {
    "path": "Localizations/ro.json",
    "chars": 1024,
    "preview": "{\n    \"title\": \"gitignore.io - Creează fișiere .gitignore utile pentru proiectul tău\",\n    \"description\": \"Creează fișie"
  },
  {
    "path": "Localizations/ru.json",
    "chars": 1060,
    "preview": "{\n    \"title\": \"gitignore.io - Генерируйте удобные .gitignore файлы для вашего проекта\",\n    \"description\": \"Генерируйте"
  },
  {
    "path": "Localizations/th.json",
    "chars": 975,
    "preview": "{\n    \"title\": \"gitignore.io - สร้างไฟล์ .gitignore ที่เป็นประโยชน์สำหรับโปรเจ็คต์ของคุณ\",\n    \"description\": \"สร้างไฟล์"
  },
  {
    "path": "Localizations/tr.json",
    "chars": 959,
    "preview": "{\n    \"title\": \"gitignore.io - Projen İçin İşe Yarar .gitignore Dosyaları Yarat\",\n    \"description\": \"%{templateCount} İ"
  },
  {
    "path": "Localizations/zh.json",
    "chars": 634,
    "preview": "{\n    \"title\": \"gitignore.io - 为你的项目创建必要的 .gitignore 文件\",\n    \"description\": \"从 %{templateCount} 操作系统, IDE, 和编程语言的 .giti"
  },
  {
    "path": "Package.pins",
    "chars": 2758,
    "preview": "{\n  \"autoPin\": true,\n  \"pins\": [\n    {\n      \"package\": \"CLibreSSL\",\n      \"reason\": null,\n      \"repositoryURL\": \"https"
  },
  {
    "path": "Package.resolved",
    "chars": 5417,
    "preview": "{\n  \"object\": {\n    \"pins\": [\n      {\n        \"package\": \"Console\",\n        \"repositoryURL\": \"https://github.com/vapor/c"
  },
  {
    "path": "Package.swift",
    "chars": 970,
    "preview": "// swift-tools-version:4.0\nimport PackageDescription\n\nlet package = Package(\n    name: \"GitignoreIO\",\n    dependencies: "
  },
  {
    "path": "Procfile",
    "chars": 64,
    "preview": "web: Run serve --env production --port $PORT --hostname 0.0.0.0\n"
  },
  {
    "path": "Public/assets/main.css",
    "chars": 24931,
    "preview": "*,:after,:before{box-sizing:border-box}h1,h2,h3,h4,h5,h6{font-weight:500;line-height:1.2;margin-bottom:.5rem;margin-top:"
  },
  {
    "path": "Public/assets/main.js",
    "chars": 168448,
    "preview": "/*! For license information please see main.js.LICENSE.txt */\n(()=>{var e={755:function(e,t){var n;!function(t,n){\"use s"
  },
  {
    "path": "Public/sitemap.xml",
    "chars": 176,
    "preview": "<urlset xmlns=\"http://www.sitemaps.org/schemas/sitemap/0.9\">\n  <url>\n    <loc>https://www.toptal.com/developers/gitignor"
  },
  {
    "path": "README.md",
    "chars": 3879,
    "preview": "<p align=\"center\">\n    <a href=\"https://www.toptal.com/developers/gitignore\">\n        <img src=\"Public/img/gitignoreio.s"
  },
  {
    "path": "Resources/Views/index.leaf",
    "chars": 5699,
    "preview": "<!DOCTYPE html>\n<html lang=\"en\" itemscope=\"itemscope\" itemtype=\"https://schema.org/WebApplication\" prefix=\"og: https://o"
  },
  {
    "path": "Resources/Views/internal-linking.leaf",
    "chars": 1175,
    "preview": "<div class=\"internal-linking\">\n  <div class=\"internal-linking__container\">\n    <div class=\"internal-linking__title\">\n   "
  },
  {
    "path": "Resources/links.json",
    "chars": 5944,
    "preview": "[\n  {\n    \"url\": \"https://www.toptal.com/freelance-jobs/developers/react\",\n    \"title\": \"React.js Developer Jobs\"\n  },\n "
  },
  {
    "path": "Sources/App/Controllers/InternalLinkingController.swift",
    "chars": 978,
    "preview": "\nimport Vapor\n\ninternal protocol ReadOnlyInternalLinkingProtocol {\n    var links: InternalLinks { get }\n}\n\ninternal stru"
  },
  {
    "path": "Sources/App/Controllers/ReadOnlyTemplateManagerProtocol.swift",
    "chars": 285,
    "preview": "//\n//  ReadOnlyTemplateManagerProtocol.swift\n//  GitignoreIO\n//\n//  Created by Joseph Blau on 1/29/17.\n//\n//\n\ninternal p"
  },
  {
    "path": "Sources/App/Controllers/TemplateController.swift",
    "chars": 3688,
    "preview": "//\n//  TemplateController.swift\n//  GitignoreIO\n//\n//  Created by Joe Blau on 12/17/16.\n//\n//\n\nimport Foundation\n\nintern"
  },
  {
    "path": "Sources/App/Enum/TemplateSuffix.swift",
    "chars": 631,
    "preview": "//\n//  TemplateSuffix.swift\n//  GitignoreIO\n//\n//  Created by Joseph Blau on 1/29/17.\n//\n//\n\n/// Template Suffix Enum\nin"
  },
  {
    "path": "Sources/App/Extensions/Dictionary+Extensions.swift",
    "chars": 1862,
    "preview": "//\n//  Dictionary+Extensions.swift\n//  GitignoreIO\n//\n//  Created by Joseph Blau on 1/29/17.\n//\n//\n\nimport Foundation\n\ni"
  },
  {
    "path": "Sources/App/Extensions/FileManager+Extensions.swift",
    "chars": 414,
    "preview": "//\n//  FileManager+Extensions.swift\n//  App\n//\n//  Created by Joe Blau on 6/23/18.\n//\n\nimport Foundation\n\nextension File"
  },
  {
    "path": "Sources/App/Extensions/Router+Extensions.swift",
    "chars": 743,
    "preview": "//\n//  Router+Extensions.swift\n//  App\n//\n//  Created by Joe Blau on 7/2/18.\n//\n\nimport Vapor\n\nextension Request {\n    v"
  },
  {
    "path": "Sources/App/Extensions/Sequence+Extensions.swift",
    "chars": 265,
    "preview": "//\n//  Sequence+Extensions.swift\n//  GitignoreIO\n//\n//  Created by Joseph Blau on 1/29/17.\n//\n//\n\nimport Foundation\n\npub"
  },
  {
    "path": "Sources/App/Extensions/String+Extensions.swift",
    "chars": 619,
    "preview": "//\n//  String+Extensions.swift\n//  GitignoreIO\n//\n//  Created by Joe Blau on 12/18/16.\n//\n//\n\nimport Foundation\n\ninterna"
  },
  {
    "path": "Sources/App/Extensions/URL+Extensions.swift",
    "chars": 549,
    "preview": "//\n//  URL+Extensions.swift\n//  GitignoreIO\n//\n//  Created by Joseph Blau on 1/29/17.\n//\n//\n\nimport Foundation\n\ninternal"
  },
  {
    "path": "Sources/App/Middleware/FileMiddlewareWithBasePrefix.swift",
    "chars": 2041,
    "preview": "/// Serves static files from a public directory.\n///\n///     middlewareConfig = MiddlewareConfig()\n///     middlewareCon"
  },
  {
    "path": "Sources/App/Models/Dropdown.swift",
    "chars": 164,
    "preview": "//\n//  Dropdown.swift\n//  App\n//\n//  Created by Joe Blau on 6/9/18.\n//\n\nimport Vapor\n\ninternal struct Dropdown: Content "
  },
  {
    "path": "Sources/App/Models/Flags.swift",
    "chars": 156,
    "preview": "//\n//  Flags.swift\n//  App\n//\n//  Created by Joe Blau on 6/21/18.\n//\n\nimport Vapor\n\nstruct Flags: Content {\n    var term"
  },
  {
    "path": "Sources/App/Models/IgnoreTemplateModel.swift",
    "chars": 452,
    "preview": "//\n//  IgnoreTemplateModel.swift\n//  GitignoreIO\n//\n//  Created by Joe Blau on 12/18/16.\n//\n//\n\nimport Vapor\n\ninternal s"
  },
  {
    "path": "Sources/App/Models/IgnoreTemplateModeling.swift",
    "chars": 294,
    "preview": "//\n//  IgnoreTemplateModeling.swift\n//  GitignoreIO\n//\n//  Created by Joseph Blau on 1/29/17.\n//\n//\n\ninternal protocol I"
  },
  {
    "path": "Sources/App/Models/InternalLink.swift",
    "chars": 141,
    "preview": "struct InternalLink: Codable {\n    let title: String\n    let url: String\n}\n\nstruct InternalLinks: Encodable {\n    var li"
  },
  {
    "path": "Sources/App/RouteHandlers/APIRouteHandlers.swift",
    "chars": 6281,
    "preview": "//\n//  APIRouteHandler.swift\n//  GitignoreIO\n//\n//  Created by Joe Blau on 12/17/16.\n//\n//\n\nimport Foundation\nimport Vap"
  },
  {
    "path": "Sources/App/RouteHandlers/SiteRouteHandlers.swift",
    "chars": 5052,
    "preview": "//\n//  SiteRouteHandlers.swift\n//  GitignoreIO\n//\n//  Created by Joe Blau on 11/7/16.\n//\n//\n\nimport Vapor\nimport Leaf\nim"
  },
  {
    "path": "Sources/App/RouteHandlers/UrlResolver.swift",
    "chars": 1143,
    "preview": "import Vapor\n\npublic final class UrlResolver {\n    static let HOST_ORIGIN_FALLBACK = \"https://www.toptal.com\"\n\n    // re"
  },
  {
    "path": "Sources/App/Server.swift",
    "chars": 2602,
    "preview": "//\n//  Server.swift\n//  GitignoreIO\n//\n//  Created by Joe Blau on 12/22/16.\n//\n//\n\nimport Vapor\nimport Leaf\nimport Lingo"
  },
  {
    "path": "Sources/Run/main.swift",
    "chars": 75,
    "preview": "import App\n\nlet gitignore = Gitignore()\ntry gitignore.app(.detect()).run()\n"
  },
  {
    "path": "Tests/AppTests/Controllers/TemplateControllerTests.swift",
    "chars": 632,
    "preview": "//\n//  TemplateControllerTests.swift\n//  GitignoreIO\n//\n//  Created by Joe Blau on 12/22/16.\n//\n//\n\nimport XCTest\nimport"
  },
  {
    "path": "Tests/AppTests/Extensions/Sequence+ExtensionsTest.swift",
    "chars": 1110,
    "preview": "//\n//  Sequence+ExtensionsTest.swift\n//  AppTests\n//\n//  Created by Joe Blau on 6/22/18.\n//\n\nimport XCTest\n\n@testable im"
  },
  {
    "path": "Tests/AppTests/Extensions/String+ExtensionsTests.swift",
    "chars": 1750,
    "preview": "//\n//  String+ExtensionsTests.swift\n//  GitignoreIO\n//\n//  Created by Joe Blau on 12/21/16.\n//\n//\n\nimport XCTest\nimport "
  },
  {
    "path": "Tests/AppTests/Extensions/URL+ExtensionsTests.swift",
    "chars": 983,
    "preview": "//\n//  URL+ExtensionsTests.swift\n//  GitignoreIO\n//\n//  Created by Joseph Blau on 2/12/17.\n//\n//\n\nimport XCTest\nimport V"
  },
  {
    "path": "Tests/AppTests/Models/IgnoreTemplateModelTests.swift",
    "chars": 747,
    "preview": "//\n//  IgnoreTemplateModelTests.swift\n//  GitignoreIO\n//\n//  Created by Joe Blau on 12/21/16.\n//\n//\n\nimport XCTest\n\n@tes"
  },
  {
    "path": "Tests/AppTests/RouteHandlers/APIHandlersTests.swift",
    "chars": 5039,
    "preview": "//\n//  APIHandlers.swift\n//  GitignoreIO\n//\n//  Created by Joe Blau on 12/22/16.\n//\n//\n\nimport XCTest\nimport Vapor\nimpor"
  },
  {
    "path": "Tests/AppTests/RouteHandlers/SiteHandlersTests.swift",
    "chars": 2584,
    "preview": "//\n//  SiteHandlers.swift\n//  GitignoreIO\n//\n//  Created by Joe Blau on 12/22/16.\n//\n//\n\nimport XCTest\nimport Vapor\nimpo"
  },
  {
    "path": "Tests/LinuxMain.swift",
    "chars": 348,
    "preview": "#if os(Linux)\n\nimport XCTest\n@testable import AppTests\n\nXCTMain([\n    testCase(TemplateControllerTests.allTests),\n    te"
  },
  {
    "path": "app.json",
    "chars": 219,
    "preview": "{\n    \"name\": \"GitignoreIO\",\n    \"scripts\": {},\n    \"env\": {},\n    \"formation\": {},\n    \"addons\": [],\n    \"buildpacks\": "
  },
  {
    "path": "docker-compose-dev.yml",
    "chars": 403,
    "preview": "# This serves ONLY local testing purposes!\nversion: \"3.5\"\nservices:\n  app:\n    platform: linux/x86_64\n    image: gitigno"
  },
  {
    "path": "docker-compose.yml",
    "chars": 150,
    "preview": "version: \"3.9\"\nservices:\n  app:\n    image: gitignore-io:latest\n    build:\n      context: ./\n      dockerfile: Dockerfile"
  },
  {
    "path": "e2e-tests/api/index.test.js",
    "chars": 914,
    "preview": "const superagent = require('superagent');\nconst { templates } = require('../utils/templates');\nlet response;\n\ndescribe('"
  },
  {
    "path": "e2e-tests/api/show.test.js",
    "chars": 1082,
    "preview": "const superagent = require('superagent');\nconst { randomTemplates } = require('../utils/templates');\nlet response;\n\ndesc"
  },
  {
    "path": "e2e-tests/pages/homepage.test.js",
    "chars": 2198,
    "preview": "const { randomTemplate, randomTemplates } = require('../utils/templates');\n\ndescribe('Home page', () => {\n  const templa"
  },
  {
    "path": "e2e-tests/utils/templates.js",
    "chars": 766,
    "preview": "const fs = require('fs');\n\nlet templates = [];\n\ntry {\n  fs.readdirSync('./gitignore/templates').forEach(file => {\n    if"
  },
  {
    "path": "jest-puppeteer.config.js",
    "chars": 129,
    "preview": "module.exports = {\n  launch: {\n    dumpio: true,\n    headless: true,\n  },\n  browser: 'chromium',\n  browserContext: 'inco"
  },
  {
    "path": "jest.config.js",
    "chars": 153,
    "preview": "module.exports = {\n  globals: {\n    'BASE_URL': process.env.BASE_URL || 'http://localhost:8080'\n  },\n  preset: 'jest-pup"
  },
  {
    "path": "package.json",
    "chars": 735,
    "preview": "{\n  \"name\": \"gitignore.io\",\n  \"version\": \"1.0.0\",\n  \"license\": \"MIT\",\n  \"private\": true,\n  \"devDependencies\": {\n    \"jes"
  },
  {
    "path": "src/css/bootstrap-extract.css",
    "chars": 845,
    "preview": "*, ::after, ::before {\n  box-sizing: border-box;\n}\n\nh1, h2, h3, h4, h5, h6 {\n  margin-top: 0;\n  margin-bottom: 0.5rem;\n "
  },
  {
    "path": "src/index.js",
    "chars": 268,
    "preview": "import \"./css/bootstrap-extract.css\";\nimport \"./css/select2.min.css\";\nimport \"./less/select2-toptal-theme.less\";\nimport "
  },
  {
    "path": "src/js/app.js",
    "chars": 4438,
    "preview": "import $ from \"jquery\";\nimport { getCLS, getFID, getLCP } from \"web-vitals\";\nexport class GoogleAnalytics {\n  sendToGoog"
  },
  {
    "path": "src/less/app.less",
    "chars": 5087,
    "preview": "@import \"variables.less\";\n@import \"internal-linking.less\";\n\n@font-face {\n  font-display: swap;\n  font-weight: 400;\n  fon"
  },
  {
    "path": "src/less/internal-linking.less",
    "chars": 2399,
    "preview": ".internal-linking {\n    border: 0;\n    width: 100vw;\n    height: @internalLinkingHeightDesktop;\n    overflow: hidden;\n  "
  },
  {
    "path": "src/less/select2-toptal-theme.less",
    "chars": 6064,
    "preview": "@import \"variables.less\";\n\n/*\n * @reference https://github.com/ttskch/select2-bootstrap4-theme/tree/master/src\n */\n\n/***"
  },
  {
    "path": "src/less/variables.less",
    "chars": 1260,
    "preview": "// colors\n@black: #000000;\n@white: #ffffff;\n@semi-white: #ebeced;\n@blue: #204ecf;\n@green: #00cc83;\n@darkgreen: #00a369;\n"
  },
  {
    "path": "webpack.config.js",
    "chars": 1246,
    "preview": "const MiniCssExtractPlugin = require('mini-css-extract-plugin');\nconst CssMinimizerPlugin = require('css-minimizer-webpa"
  }
]

// ... and 5 more files (download for full content)

About this extraction

This page contains the full source code of the toptal/gitignore.io GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 97 files (314.8 KB), approximately 98.2k tokens, and a symbol index with 136 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!