Full Code of idindrakusuma/thekusuma for AI

master 55f571c5577a cached
69 files
336.0 KB
108.9k tokens
51 symbols
1 requests
Download .txt
Showing preview only (357K chars total). Download the full file or copy to clipboard to get everything.
Repository: idindrakusuma/thekusuma
Branch: master
Commit: 55f571c5577a
Files: 69
Total size: 336.0 KB

Directory structure:
gitextract_cpdabvrc/

├── .eslintrc.js
├── .github/
│   └── workflows/
│       └── main.yml
├── .gitignore
├── .prettierignore
├── .prettierrc
├── LICENSE
├── README.md
├── api/
│   ├── guest-data.json
│   └── shift.json
├── gatsby-config.js
├── package.json
└── src/
    ├── assets/
    │   └── css/
    │       ├── bootstrap.css
    │       ├── icomoon.css
    │       └── style.css
    ├── components/
    │   ├── ConfirmationSection/
    │   │   ├── index.js
    │   │   └── styles.js
    │   ├── Covid19/
    │   │   ├── SectionBox.js
    │   │   ├── index.js
    │   │   └── styles.js
    │   ├── FloatingMusic/
    │   │   ├── Loadable.js
    │   │   ├── Modal.js
    │   │   ├── index.js
    │   │   └── styles.js
    │   ├── FooterSection/
    │   │   └── index.js
    │   ├── GenerateLink/
    │   │   ├── index.js
    │   │   └── styles.js
    │   ├── HelloSection/
    │   │   ├── index.js
    │   │   └── styles.js
    │   ├── Layout/
    │   │   ├── Ticket.js
    │   │   ├── index.js
    │   │   └── styles.js
    │   ├── LocationSection/
    │   │   ├── index.js
    │   │   └── styles.js
    │   ├── PhotoSection/
    │   │   ├── Loadable.js
    │   │   ├── index.js
    │   │   └── photo-data.js
    │   ├── QRCard/
    │   │   ├── index.js
    │   │   └── styles.js
    │   ├── StorySection/
    │   │   ├── StoryItem.js
    │   │   ├── index.js
    │   │   ├── stories-data.js
    │   │   └── styles.js
    │   ├── Ticket/
    │   │   ├── index.js
    │   │   └── styles.js
    │   ├── WeddingSection/
    │   │   ├── ButtonLive.js
    │   │   ├── WeddingInfoBox.js
    │   │   ├── index.js
    │   │   └── styles.js
    │   ├── WelcomeSection/
    │   │   ├── CountContainer.js
    │   │   ├── CountItem.js
    │   │   ├── ScrollToDown.js
    │   │   ├── index.js
    │   │   └── styles.js
    │   └── WishesSection/
    │       ├── WishesContainer.js
    │       ├── WishesItem.js
    │       ├── index.js
    │       ├── styles.js
    │       └── wishlist-data.js
    ├── constants/
    │   └── index.js
    ├── helpers/
    │   ├── getQueryValue.js
    │   ├── isMobileDevice.js
    │   └── pxToRem.js
    ├── hooks/
    │   ├── useConfigData.js
    │   ├── useDateCountdown.js
    │   └── useGuestData.js
    └── pages/
        ├── e-ticket.js
        ├── generate-link.js
        ├── generate-qr.js
        └── index.js

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

================================================
FILE: .eslintrc.js
================================================
module.exports = {
  globals: {
    __PATH_PREFIX__: true,
  },
  extends: `react-app`,
  rules: {
    'jsx-a11y/accessible-emoji': 'off',
    // 'no-unused-vars': ['error', { vars: 'all', args: 'after-used', ignoreRestSiblings: false }],
    'import/no-unresolved': [2, { caseSensitive: false }],
  },
  settings: {
    'import/resolver': {
      alias: [
        ['@static', './static'],
        ['@assets', './src/assets'],
        ['@components', './src/components'],
        ['@helpers', './src/helpers'],
        ['@pages', './src/pages'],
        ['@hooks', './src/hooks'],
        ['@', './src'],
      ],
    },
  },
};


================================================
FILE: .github/workflows/main.yml
================================================
name: Gatsby Publish

on:
  push:
    branches:
      - master

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v1
      - uses: enriikke/gatsby-gh-pages-action@v2
        with:
          access-token: ${{ secrets.ACCESS_TOKEN }}
          deploy-branch: gh-pages
          gatsby-args: --prefix-paths

================================================
FILE: .gitignore
================================================
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*

# Runtime data
pids
*.pid
*.seed
*.pid.lock

# Directory for instrumented libs generated by jscoverage/JSCover
lib-cov

# Coverage directory used by tools like istanbul
coverage

# nyc test coverage
.nyc_output

# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
.grunt

# Bower dependency directory (https://bower.io/)
bower_components

# node-waf configuration
.lock-wscript

# Compiled binary addons (http://nodejs.org/api/addons.html)
build/Release

# Dependency directories
node_modules/
jspm_packages/

# Typescript v1 declaration files
typings/

# Optional npm cache directory
.npm

# Optional eslint cache
.eslintcache

# Optional REPL history
.node_repl_history

# Output of 'npm pack'
*.tgz

# dotenv environment variable files
.env*

# gatsby files
.cache/
public

# Mac files
.DS_Store

# Yarn
yarn-error.log
.pnp/
.pnp.js
# Yarn Integrity file
.yarn-integrity


================================================
FILE: .prettierignore
================================================
.cache
package.json
package-lock.json
public


================================================
FILE: .prettierrc
================================================
{
  "bracketSpacing": true,
  "printWidth": 120,
  "singleQuote": true,
  "trailingComma": "all"
}

================================================
FILE: LICENSE
================================================
MIT License

Copyright (c) 2018 gatsbyjs

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: README.md
================================================
# Dinda & Indra Wedding Website

![Gatsby Publish](https://github.com/idindrakusuma/thekusuma/workflows/Gatsby%20Publish/badge.svg) [![Netlify Status](https://api.netlify.com/api/v1/badges/4481a013-a72b-4ecf-939b-00b84c25dd89/deploy-status)](https://app.netlify.com/sites/thekusuma/deploys)

Features:
- Landing Page, with features like:
 - Countdown Timer
 - Live Button
 - Floating Music
 - Photo Gallery
 - Pre-wedding Video 
 - And more..
- also, this web-app has QR Guest Generator
- and Guest Tikcet Viewer

Tech Stack:
- GatsbyJs

Credits
- Original Landing Page Template (https://freehtml5.co/)
- Icon Assets (https://www.flaticon.com/packs/covid-protection-measures-5)

Thanks!


================================================
FILE: api/guest-data.json
================================================
[
  {
    "code": "DXI-0001",
    "name": "Suharyo",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0002",
    "name": "Heru Setyabudi",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0003",
    "name": "Doni Widiyanto",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0004",
    "name": "Bu Edi Susanto",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0005",
    "name": "Hermawan",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0006",
    "name": "Budijono",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0007",
    "name": "Hanif",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0008",
    "name": "Adi Wiratama",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0009",
    "name": "Hendro",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0010",
    "name": "Santoso",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0011",
    "name": "Yori",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0012",
    "name": "Chandra",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0013",
    "name": "Ali Muhtarom",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0014",
    "name": "Sagimin",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0015",
    "name": "Suwardi",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0016",
    "name": "Kasmari",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0017",
    "name": "Mawardi",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0018",
    "name": "Ricky",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0019",
    "name": "Djaman",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0020",
    "name": "Steven",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0021",
    "name": "Arif",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0022",
    "name": "Sukahar",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0023",
    "name": "Yunianto",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0024",
    "name": "Bambang P",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0025",
    "name": "Andi K",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0026",
    "name": "Sutarman",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0027",
    "name": "Danang A",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0028",
    "name": "Murtono",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0029",
    "name": "Agung",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0031",
    "name": "Solekhan",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0032",
    "name": "Sugeng",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0033",
    "name": "Bu Linda",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0034",
    "name": "Bu Mia",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0035",
    "name": "Bu Suwoko",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0036",
    "name": "Ari Muchtar",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0037",
    "name": "Bu Kamto",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0038",
    "name": "Bu Aryani",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0039",
    "name": "Bu Trisia",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0040",
    "name": "Halim",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0041",
    "name": "Andi P",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0042",
    "name": "Sapari",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0043",
    "name": "Agus",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0045",
    "name": "Yuli",
    "desc": "Singa Tengah, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0046",
    "name": "Medi",
    "desc": "Singa Tengah, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0047",
    "name": "Agung A",
    "desc": "Singa Tengah, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0048",
    "name": "Agung B",
    "desc": "Singa Tengah, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0049",
    "name": "Totok",
    "desc": "Singa Tengah, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0050",
    "name": "Sutaryo",
    "desc": "Singa Tengah, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0051",
    "name": "Zaenuri",
    "desc": "Singa Tengah, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0052",
    "name": "Supriyadi",
    "desc": "Singa Tengah, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0053",
    "name": "Sukardi",
    "desc": "Singa Tengah, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0054",
    "name": "VIP - Asep Misbahudin",
    "desc": "PZ Cussons",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0055",
    "name": "Atmaja Belawan",
    "desc": "PZ Cussons",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0057",
    "name": "VIP - Dwi Sansito",
    "desc": "PZ Cussons",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0058",
    "name": "VIP - Mujianto",
    "desc": "PZ Cussons",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0059",
    "name": "VIP - M. Achsin Hamim",
    "desc": "PZ Cussons",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0060",
    "name": "VIP - Moh. Atiq Sajaya",
    "desc": "PZ Cussons",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0061",
    "name": "VIP - Puguh Kunto Asmoro",
    "desc": "PZ Cussons",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0062",
    "name": "VIP - Prastiyo Edy Laksono",
    "desc": "PZ Cussons",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0063",
    "name": "VIP - Priyatno",
    "desc": "PZ Cussons",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0064",
    "name": "VIP - Pringadi",
    "desc": "PZ Cussons",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0065",
    "name": "VIP - Suyanto",
    "desc": "PZ Cussons",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0066",
    "name": "VIP - Suratno",
    "desc": "PZ Cussons",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0067",
    "name": "VIP - Sigit Wijayanto",
    "desc": "PZ Cussons",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0068",
    "name": "VIP - Wiwik Joeniati",
    "desc": "PZ Cussons",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0069",
    "name": "VIP - Yudha Prihantono",
    "desc": "PZ Cussons",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0078",
    "name": "Pramono",
    "desc": "Semarang",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0079",
    "name": "Sri Vatmawati",
    "desc": "Semarang",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0080",
    "name": "VIP - Setiawan",
    "desc": "Semarang",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0081",
    "name": "Slamet Santoso",
    "desc": "Semarang",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0082",
    "name": "Sudono",
    "desc": "Semarang",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0083",
    "name": "Tatik",
    "desc": "Semarang",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0085",
    "name": "Tri Utami",
    "desc": "Semarang",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0087",
    "name": "VIP - Bintoro Mantjolo Putro",
    "desc": "Yogyakarta",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0089",
    "name": "Cahyono",
    "desc": "Tegal",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0090",
    "name": "Bu Hermanto",
    "desc": "Tegal",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0091",
    "name": "Ivana",
    "desc": "Tegal",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0092",
    "name": "Hertanto",
    "desc": "Pati",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0094",
    "name": "VIP - Makmur Trisujadi",
    "desc": "Magelang",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0095",
    "name": "Sugeng",
    "desc": "Gubug",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0096",
    "name": "Toto Mulyanto",
    "desc": "Muntilan",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0097",
    "name": "VIP - Arif Mustapin",
    "desc": "Sidoarjo",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0099",
    "name": "Yohanes",
    "desc": "Solo",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0100",
    "name": "Nita Syarifah & Keluarga",
    "desc": "Sahabat Dinda",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0101",
    "name": "Risalatul Muawanah & Keluarga",
    "desc": "Sahabat Dinda",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0102",
    "name": "Hapsari Anggraini & Keluarga",
    "desc": "Sahabat Dinda",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0103",
    "name": "Moleta Tiara & Keluarga",
    "desc": "Sahabat Dinda",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0104",
    "name": "Vela Hafira",
    "desc": "Sahabat Dinda",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0105",
    "name": "Iqmalifa & Iqmalia",
    "desc": "Sahabat Dinda",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0106",
    "name": "Pramudina & Pramudita",
    "desc": "Sahabat Dinda",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0107",
    "name": "Rhonandiarto Kalimaya",
    "desc": "Sahabat Dinda",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0108",
    "name": "Dodie Ammar Burhan",
    "desc": "Sahabat Dinda",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0109",
    "name": "Fitria Ayunisa",
    "desc": "Sahabat Dinda",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0110",
    "name": "Alvia Tri Lestari",
    "desc": "Sahabat Dinda",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0111",
    "name": "Oei Yunias Belda",
    "desc": "Sahabat Dinda",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0112",
    "name": "Ghea Maurizka",
    "desc": "Sahabat Dinda",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0113",
    "name": "Jennyka Setiawan",
    "desc": "Sahabat Dinda",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0114",
    "name": "Linda Yunitasari",
    "desc": "Sahabat Dinda",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0115",
    "name": "Selviana Nur Hidayah",
    "desc": "Sahabat Dinda",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0116",
    "name": "Dhyanara Novi Paramita",
    "desc": "Hikayat NET TV",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0117",
    "name": "Syifa Fatimah",
    "desc": "UDINUS",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0118",
    "name": "Wulan Herdiningsih & Puds",
    "desc": "Ruangguru",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0119",
    "name": "Fahry Maulana",
    "desc": "Hore Heroes",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0120",
    "name": "Ahlan Firdaus",
    "desc": "Hore Heroes",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0121",
    "name": "Madina Tashya",
    "desc": "Hore Heroes",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0122",
    "name": "Sauhtirani",
    "desc": "Hore Heroes",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0123",
    "name": "Basanta & Binarky",
    "desc": "Hore Heroes",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0124",
    "name": "Maria & Yoga",
    "desc": "Amareea",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0125",
    "name": "Sandi Mumu, Istri & Anak (2)",
    "desc": "Hikayat NET TV",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0126",
    "name": "Yasinta Aulia",
    "desc": "Dompet Dhuafa",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0127",
    "name": "Atin Anggraeni",
    "desc": "Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0128",
    "name": "VIP - Priyo",
    "desc": "Gmedia",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0129",
    "name": "VIP - Atalia Citra",
    "desc": "Gmedia",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0130",
    "name": "Zakiy Anwar Fakhri",
    "desc": "Sahabat Indra",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0131",
    "name": "Alif Maulana Putra",
    "desc": "UDINUS",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0135",
    "name": "Marice Elisabeth (+ Ario Arzaq) & Devi Setyawati",
    "desc": "UDINUS",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0136",
    "name": "Amelia Cahyaningtyas",
    "desc": "UDINUS",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0137",
    "name": "Christoporus Kurnia Chandra",
    "desc": "UDINUS",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0138",
    "name": "Luthfi Faizal Noor",
    "desc": "UDINUS",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0139",
    "name": "Meisy Cahyani",
    "desc": "SMP PAPB",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0140",
    "name": "Lita Ardita",
    "desc": "SMP PAPB",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0141",
    "name": "Riska Miranda",
    "desc": "SMP PAPB",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0142",
    "name": "Annisa PA",
    "desc": "SMP PAPB",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0144",
    "name": "Attidhira Citra",
    "desc": "SMP PAPB",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0146",
    "name": "Fenadia Nastia",
    "desc": "SMP PAPB",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0147",
    "name": "Vidianne Anggria",
    "desc": "SMA 11 Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0148",
    "name": "Cerelia Alvita",
    "desc": "SMA 11 Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0149",
    "name": "Annis Puspita",
    "desc": "SMA 11 Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0153",
    "name": "Della Kartika",
    "desc": "SMA 11 Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0154",
    "name": "Budi Purwanto",
    "desc": "Saudara Dinda - Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0155",
    "name": "Agung Widodo",
    "desc": "Saudara Dinda - Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0156",
    "name": "Paklek Suhono & Keluarga",
    "desc": "Saudara Dinda - Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0157",
    "name": "Mbah Siti Manan & Keluarga",
    "desc": "Saudara Dinda - Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0159",
    "name": "Bulek Umiyati & Keluarga",
    "desc": "Saudara Dinda - Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0160",
    "name": "Mas Udin & Keluarga",
    "desc": "Saudara Dinda - Semarang",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0161",
    "name": "Ibu Siswandi & Keluarga",
    "desc": "Saudara Dinda - Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0162",
    "name": "Mbak Yuli & Keluarga",
    "desc": "Saudara Dinda - Yogyakarta",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0163",
    "name": "Mas Yoyok & Keluarga",
    "desc": "Saudara Dinda - Yogyakarta",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0164",
    "name": "Mbak Emi & Keluarga",
    "desc": "Saudara Dinda - Yogyakarta",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0165",
    "name": "Mbak Sri & Keluarga",
    "desc": "Saudara Dinda - Sidoarjo",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0166",
    "name": "Mbak Titik & Keluarga",
    "desc": "Saudara Dinda - Yogyakarta",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0167",
    "name": "Mas Agus Sapen & Keluarga",
    "desc": "Saudara Dinda - Yogyakarta",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0168",
    "name": "Dek Wita & Keluarga",
    "desc": "Saudara Dinda - Yogyakarta",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0169",
    "name": "Bulek Tatik & Keluarga",
    "desc": "Saudara Dinda - Semarang",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0170",
    "name": "Dek Tanti & Keluarga",
    "desc": "Saudara Dinda - Jepara",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0171",
    "name": "Paklek Hermanto & Keluarga",
    "desc": "Saudara Dinda - Dlanggu",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0172",
    "name": "Pakdhe Supri",
    "desc": "Saudara Indra - Kendal",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0173",
    "name": "Saudara Indra 1",
    "desc": "Saudara Indra - Kendal",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0174",
    "name": "Saudara Indra 2",
    "desc": "Saudara Indra - Kendal",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0175",
    "name": "Saudara Indra 3",
    "desc": "Saudara Indra - Kendal",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0176",
    "name": "Saudara Indra 4",
    "desc": "Saudara Indra - Kendal",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0177",
    "name": "Saudara Indra 5",
    "desc": "Saudara Indra - Kendal",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0178",
    "name": "VIP - Agus Murdianto",
    "desc": "Bandung",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0179",
    "name": "Pri",
    "desc": "Singa Tengah, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0180",
    "name": "Darsono",
    "desc": "Singa Tengah, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0181",
    "name": "Solikin",
    "desc": "Singa Tengah, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0182",
    "name": "Ansila Putri & Bogie Tomy",
    "desc": "UDINUS",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0183",
    "name": "Tasya Patria & Yesi Ayusta",
    "desc": "UDINUS",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0184",
    "name": "Nawang Sandewi & Aulia Aristiana",
    "desc": "Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0185",
    "name": "Irin Riany",
    "desc": "TVRI",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0186",
    "name": "Oong Fatonah",
    "desc": "Tegal",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0188",
    "name": "Niken Hapsari",
    "desc": "UDINUS",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0189",
    "name": "Roni Yanuar",
    "desc": "UDINUS",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0190",
    "name": "Budhe Nanik & Keluarga",
    "desc": "Saudara Dinda - Yogyakarta",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0191",
    "name": "Bulek Tutik & Keluarga",
    "desc": "Saudara Dinda - Yogyakarta",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0192",
    "name": "Om Totok & Keluarga",
    "desc": "Saudara Dinda - Yogyakarta",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0193",
    "name": "Om Tomi & Keluarga",
    "desc": "Saudara Dinda - Yogyakarta",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0194",
    "name": "Bulek Yanti & Keluarga",
    "desc": "Saudara Dinda - Yogyakarta",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0195",
    "name": "VIP - Rasuna Agusman",
    "desc": "PZ Cussons",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0196",
    "name": "Punjung",
    "desc": "Semarang",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0197",
    "name": "Dwi Joko Daryono",
    "desc": "Semarang",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0198",
    "name": "Joko Hermawan",
    "desc": "Kendal",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0199",
    "name": "VIP - Arieswanto",
    "desc": "Semarang",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0200",
    "name": "VIP - Budi Sanyoto",
    "desc": "Jakarta",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0201",
    "name": "Moch. Syakban",
    "desc": "Semarang",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0202",
    "name": "VIP - Ondhie",
    "desc": "PZ Cussons",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0203",
    "name": "VIP - Robin",
    "desc": "PZ Cussons",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0204",
    "name": "Dani",
    "desc": "Semarang",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0205",
    "name": "Nur Cholim",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0206",
    "name": "Mulyadi",
    "desc": "Jalan Singa, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0207",
    "name": "Mardi",
    "desc": "Singa Tengah, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0208",
    "name": "Budi",
    "desc": "Singa Tengah, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0209",
    "name": "Sukendro",
    "desc": "Singa Tengah, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0210",
    "name": "Tini",
    "desc": "Singa Tengah, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0213",
    "name": "Maryati",
    "desc": "Semarang",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0214",
    "name": "Suroso",
    "desc": "Kauman Barat, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0215",
    "name": "Ingka",
    "desc": "Kauman Barat, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0216",
    "name": "Ruswanto",
    "desc": "Kauman Barat, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0217",
    "name": "Yudi",
    "desc": "Kauman Barat, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0218",
    "name": "Sugueng",
    "desc": "Kauman Barat, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0219",
    "name": "Parno",
    "desc": "Kauman Barat, Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0220",
    "name": "Budi & Keluarga",
    "desc": "Saudara Dinda - Yogyakarta",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0221",
    "name": "Betri & Keluarga",
    "desc": "Saudara Dinda - Yogyakarta",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0222",
    "name": "Wiwik & Keluarga",
    "desc": "Saudara Dinda - Yogyakarta",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0223",
    "name": "Rizal",
    "desc": "PZ Cussons",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0224",
    "name": "VIP - Elbi",
    "desc": "PZ Cussons",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0225",
    "name": "Sudarto",
    "desc": "Semarang",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0226",
    "name": "Widartono",
    "desc": "Yogyakarta",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0227",
    "name": "Alifa Ghaisani",
    "desc": "Hore Heroes",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0228",
    "name": "Nadia Kumala Devi",
    "desc": "Hore Heroes",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0229",
    "name": "Arinda Dea & Mega Ayu",
    "desc": "Hore Heroes",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0230",
    "name": "Yuni Devi",
    "desc": "Hore Heroes",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0231",
    "name": "Fadhila & Rifaldi",
    "desc": "Hore Heroes",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0232",
    "name": "Dimas Helmi & Taufiqy Seno",
    "desc": "Hore Heroes",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0233",
    "name": "Fardian & Hafit",
    "desc": "Hore Heroes",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0234",
    "name": "Ratna Lestari & Dinda Fauziah",
    "desc": "Hore Heroes",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0235",
    "name": "Singgih",
    "desc": "Hore Heroes",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0236",
    "name": "Maricha & Al Ghalib",
    "desc": "UDINUS",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0237",
    "name": "Pipid Setya",
    "desc": "UDINUS",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0241",
    "name": "Sabila Ilham Bimantara",
    "desc": "UDINUS",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0242",
    "name": "Rama",
    "desc": "UDINUS",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0243",
    "name": "Ivan",
    "desc": "UDINUS",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0244",
    "name": "Tias Nur Hidayah",
    "desc": "UDINUS",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0246",
    "name": "Nurla Jannata",
    "desc": "UDINUS",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0248",
    "name": "Fika Aprilia",
    "desc": "UDINUS",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0251",
    "name": "Apsari Retno",
    "desc": "Hikayat NET TV",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0252",
    "name": "Dewi",
    "desc": "Hikayat NET TV",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0253",
    "name": "Hajar Nuris Sofa",
    "desc": "Dompet Dhuafa",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0255",
    "name": "VIP - Ibu Erika Devi Udayanti",
    "desc": "Dosen UDINUS",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0256",
    "name": "VIP - Ibu Etika Kartikadarma",
    "desc": "Dosen UDINUS",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0257",
    "name": "VIP - Bapak Rindra Yusianto",
    "desc": "Dosen UDINUS",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0258",
    "name": "VIP - Ibu Amida Yusriana",
    "desc": "Dosen UDINUS",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0259",
    "name": "VIP - Ibu Devi Purnamasari",
    "desc": "Dosen UDINUS",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0260",
    "name": "VIP - Ibu Mukaromah",
    "desc": "Dosen UDINUS",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0261",
    "name": "VIP - Mrs. Cinantya Paramita",
    "desc": "Dosen UDINUS",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0262",
    "name": "VIP - Bapak Pulung Nurtantio Andono",
    "desc": "Dosen UDINUS",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0263",
    "name": "Tanjung",
    "desc": "Semarang",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0264",
    "name": "Danu",
    "desc": "Semarang",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0265",
    "name": "Eko Sukoco",
    "desc": "Semarang",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0266",
    "name": "Jubedi",
    "desc": "Salatiga",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0267",
    "name": "Jamaludin",
    "desc": "Semarang",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0268",
    "name": "Sutrisno",
    "desc": "Semarang",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0269",
    "name": "Riema Maristella",
    "desc": "Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0270",
    "name": "Haris Yuliyanto",
    "desc": "UDINUS",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0271",
    "name": "Hengky Widiantoro",
    "desc": "UDINUS",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0272",
    "name": "Dhia Ayu & Akhadila Bayu",
    "desc": "UDINUS",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0273",
    "name": "Dhiyas Mareda",
    "desc": "Hore Heroes",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0274",
    "name": "Reny Dwi",
    "desc": "Hore Heroes",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0275",
    "name": "Nabila Hanum",
    "desc": "Hore Heroes",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0276",
    "name": "Herlin",
    "desc": "Hore Heroes",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0277",
    "name": "Maura Savira",
    "desc": "Hore Heroes",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0278",
    "name": "Dian Octaviana",
    "desc": "Hore Heroes",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0279",
    "name": "Amalia KW",
    "desc": "Hore Heroes",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0280",
    "name": "Nastiti Silvananda",
    "desc": "Hore Heroes",
    "shift": 2,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0281",
    "name": "Almalina Nabila",
    "desc": "Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0282",
    "name": "Abdul Ghofar",
    "desc": "Sahabat Indra",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0283",
    "name": "Milatina NH",
    "desc": "Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0284",
    "name": "VIP - Ibu Mutia Rahmi Pratiwi",
    "desc": "Dosen UDINUS",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0285",
    "name": "VIP - Bapak Ajib Susanto",
    "desc": "Dosen UDINUS",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0286",
    "name": "Bulek Ida & Keluarga",
    "desc": "Saudara Dinda - Semarang",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0287",
    "name": "Mayumi Kris G",
    "desc": "SMP PAPB",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0288",
    "name": "Yumna Setia",
    "desc": "SMP PAPB",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0289",
    "name": "Mochammad Sholihin (Emsho)",
    "desc": "Hikayat NET TV",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  },
  {
    "code": "DXI-0290",
    "name": "Novan & Dika",
    "desc": "Saudara Indra - Kendal",
    "shift": 1,
    "isAttended": "",
    "updatedBy": "",
    "isExchanged": "",
    "exchangedAt": "",
    "exchangedBy": ""
  }
]

================================================
FILE: api/shift.json
================================================
{
  "currentShift": 1,
  "isUseShift": true,
  "shiftType": [null, "10.30 - 12.00 WIB", "12.00 - 13.30 WIB"],
  "totalSouvenir": 264
}


================================================
FILE: gatsby-config.js
================================================
/**
 * Configure your Gatsby site with this file.
 *
 * See: https://www.gatsbyjs.org/docs/gatsby-config/
 */

module.exports = {
  /* Your site config here */
  pathPrefix: `/thekusuma`,
  plugins: [
    `gatsby-plugin-react-helmet`,
    'gatsby-plugin-eslint',
    `gatsby-plugin-emotion`,
    'gatsby-optional-chaining',
    {
      resolve: 'gatsby-alias-imports',
      options: {
        aliases: {
          '@components': 'src/components',
          '@helpers': 'src/helpers',
          '@pages': 'src/pages',
          '@assets': 'src/assets',
          '@hooks': 'src/hooks',
          '@': 'src',
        },
      },
    },
  ],
};


================================================
FILE: package.json
================================================
{
  "name": "gatsby-starter-hello-world",
  "private": true,
  "description": "A simplified bare-bones starter for Gatsby",
  "version": "0.1.0",
  "license": "MIT",
  "scripts": {
    "build": "gatsby build",
    "develop": "gatsby develop",
    "format": "prettier --write \"**/*.{js,jsx,json,md}\"",
    "start": "npm run develop",
    "serve": "gatsby serve",
    "clean": "gatsby clean",
    "test": "echo \"Write tests! -> https://gatsby.dev/unit-testing\" && exit 1"
  },
  "dependencies": {
    "@emotion/core": "^10.0.28",
    "@loadable/component": "^5.12.0",
    "add": "^2.0.6",
    "gatsby": "^2.21.37",
    "gatsby-plugin-emotion": "^4.3.2",
    "gatsby-plugin-eslint": "^2.0.8",
    "gatsby-plugin-react-helmet": "^3.3.2",
    "prop-types": "^15.7.2",
    "react": "^16.12.0",
    "react-dom": "^16.12.0",
    "react-helmet": "^6.0.0",
    "react-image-gallery": "^1.0.7",
    "react-qr-code": "^1.0.2"
  },
  "devDependencies": {
    "eslint-config-jquery": "^3.0.0",
    "eslint-import-resolver-alias": "^1.1.2",
    "eslint-plugin-import": "^2.20.2",
    "gatsby-alias-imports": "^1.0.4",
    "gatsby-optional-chaining": "^1.0.1",
    "prettier": "2.0.5"
  },
  "repository": {
    "type": "git",
    "url": "https://github.com/gatsbyjs/gatsby-starter-hello-world"
  },
  "bugs": {
    "url": "https://github.com/gatsbyjs/gatsby/issues"
  }
}


================================================
FILE: src/assets/css/bootstrap.css
================================================
@charset "UTF-8";
/*!
 * Bootstrap v3.3.5 (http://getbootstrap.com)
 * Copyright 2011-2015 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

[hidden],
template {
  display: none;
}

a {
  background-color: transparent;
}

a:active,
a:hover {
  outline: 0;
}

abbr[title] {
  border-bottom: 1px dotted;
}

b,
strong {
  font-weight: bold;
}

dfn {
  font-style: italic;
}

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

mark {
  background: #ff0;
  color: #000;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

img {
  border: 0;
}

svg:not(:root) {
  overflow: hidden;
}

figure {
  margin: 1em 40px;
}

hr {
  box-sizing: content-box;
  height: 0;
}

pre {
  overflow: auto;
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0;
}

button {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
}

button[disabled],
html input[disabled] {
  cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input {
  line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

input[type="search"] {
  -webkit-appearance: textfield;
  box-sizing: content-box;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
}

optgroup {
  font-weight: bold;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */
@media print {
  *,
  *:before,
  *:after {
    background: transparent !important;
    color: #000 !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }

  a,
  a:visited {
    text-decoration: underline;
  }

  a[href]:after {
    content: " (" attr(href) ")";
  }

  abbr[title]:after {
    content: " (" attr(title) ")";
  }

  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: "";
  }

  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }

  thead {
    display: table-header-group;
  }

  tr,
  img {
    page-break-inside: avoid;
  }

  img {
    max-width: 100% !important;
  }

  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }

  h2,
  h3 {
    page-break-after: avoid;
  }

  .navbar {
    display: none;
  }

  .btn > .caret,
  .dropup > .btn > .caret {
    border-top-color: #000 !important;
  }

  .label {
    border: 1px solid #000;
  }

  .table {
    border-collapse: collapse !important;
  }
  .table td,
  .table th {
    background-color: #fff !important;
  }

  .table-bordered th,
  .table-bordered td {
    border: 1px solid #ddd !important;
  }
}
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

*:before,
*:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

html {
  font-size: 10px;
  -webkit-tap-highlight-color: transparent;
}

body {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.42857;
  color: #333333;
  background-color: #fff;
}

input,
button,
select,
textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

a {
  color: #337ab7;
  text-decoration: none;
}
a:hover, a:focus {
  color: #23527c;
  text-decoration: underline;
}
a:focus {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}

figure {
  margin: 0;
}

img {
  vertical-align: middle;
}

.img-responsive {
  display: block;
  max-width: 100%;
  height: auto;
}

.img-rounded {
  border-radius: 6px;
}

.img-thumbnail {
  padding: 4px;
  line-height: 1.42857;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 4px;
  -webkit-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  display: inline-block;
  max-width: 100%;
  height: auto;
}

.img-circle {
  border-radius: 50%;
}

hr {
  margin-top: 20px;
  margin-bottom: 20px;
  border: 0;
  border-top: 1px solid #eeeeee;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

.sr-only-focusable:active, .sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip: auto;
}

[role="button"] {
  cursor: pointer;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  font-family: inherit;
  font-weight: 500;
  line-height: 1.1;
  color: inherit;
}
h1 small,
h1 .small, h2 small,
h2 .small, h3 small,
h3 .small, h4 small,
h4 .small, h5 small,
h5 .small, h6 small,
h6 .small,
.h1 small,
.h1 .small, .h2 small,
.h2 .small, .h3 small,
.h3 .small, .h4 small,
.h4 .small, .h5 small,
.h5 .small, .h6 small,
.h6 .small {
  font-weight: normal;
  line-height: 1;
  color: #777777;
}

h1, .h1,
h2, .h2,
h3, .h3 {
  margin-top: 20px;
  margin-bottom: 10px;
}
h1 small,
h1 .small, .h1 small,
.h1 .small,
h2 small,
h2 .small, .h2 small,
.h2 .small,
h3 small,
h3 .small, .h3 small,
.h3 .small {
  font-size: 65%;
}

h4, .h4,
h5, .h5,
h6, .h6 {
  margin-top: 10px;
  margin-bottom: 10px;
}
h4 small,
h4 .small, .h4 small,
.h4 .small,
h5 small,
h5 .small, .h5 small,
.h5 .small,
h6 small,
h6 .small, .h6 small,
.h6 .small {
  font-size: 75%;
}

h1, .h1 {
  font-size: 36px;
}

h2, .h2 {
  font-size: 30px;
}

h3, .h3 {
  font-size: 24px;
}

h4, .h4 {
  font-size: 18px;
}

h5, .h5 {
  font-size: 14px;
}

h6, .h6 {
  font-size: 12px;
}

p {
  margin: 0 0 10px;
}

.lead {
  margin-bottom: 20px;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.4;
}
@media (min-width: 768px) {
  .lead {
    font-size: 21px;
  }
}

small,
.small {
  font-size: 85%;
}

mark,
.mark {
  background-color: #fcf8e3;
  padding: .2em;
}

.text-left {
  text-align: left;
}

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

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

.text-justify {
  text-align: justify;
}

.text-nowrap {
  white-space: nowrap;
}

.text-lowercase {
  text-transform: lowercase;
}

.text-uppercase, .initialism {
  text-transform: uppercase;
}

.text-capitalize {
  text-transform: capitalize;
}

.text-muted {
  color: #777777;
}

.text-primary {
  color: #337ab7;
}

a.text-primary:hover,
a.text-primary:focus {
  color: #286090;
}

.text-success {
  color: #3c763d;
}

a.text-success:hover,
a.text-success:focus {
  color: #2b542c;
}

.text-info {
  color: #31708f;
}

a.text-info:hover,
a.text-info:focus {
  color: #245269;
}

.text-warning {
  color: #8a6d3b;
}

a.text-warning:hover,
a.text-warning:focus {
  color: #66512c;
}

.text-danger {
  color: #a94442;
}

a.text-danger:hover,
a.text-danger:focus {
  color: #843534;
}

.bg-primary {
  color: #fff;
}

.bg-primary {
  background-color: #337ab7;
}

a.bg-primary:hover,
a.bg-primary:focus {
  background-color: #286090;
}

.bg-success {
  background-color: #dff0d8;
}

a.bg-success:hover,
a.bg-success:focus {
  background-color: #c1e2b3;
}

.bg-info {
  background-color: #d9edf7;
}

a.bg-info:hover,
a.bg-info:focus {
  background-color: #afd9ee;
}

.bg-warning {
  background-color: #fcf8e3;
}

a.bg-warning:hover,
a.bg-warning:focus {
  background-color: #f7ecb5;
}

.bg-danger {
  background-color: #f2dede;
}

a.bg-danger:hover,
a.bg-danger:focus {
  background-color: #e4b9b9;
}

.page-header {
  padding-bottom: 9px;
  margin: 40px 0 20px;
  border-bottom: 1px solid #eeeeee;
}

ul,
ol {
  margin-top: 0;
  margin-bottom: 10px;
}
ul ul,
ul ol,
ol ul,
ol ol {
  margin-bottom: 0;
}

.list-unstyled {
  padding-left: 0;
  list-style: none;
}

.list-inline {
  padding-left: 0;
  list-style: none;
  margin-left: -5px;
}
.list-inline > li {
  display: inline-block;
  padding-left: 5px;
  padding-right: 5px;
}

dl {
  margin-top: 0;
  margin-bottom: 20px;
}

dt,
dd {
  line-height: 1.42857;
}

dt {
  font-weight: bold;
}

dd {
  margin-left: 0;
}

.dl-horizontal dd:before, .dl-horizontal dd:after {
  content: " ";
  display: table;
}
.dl-horizontal dd:after {
  clear: both;
}
@media (min-width: 768px) {
  .dl-horizontal dt {
    float: left;
    width: 160px;
    clear: left;
    text-align: right;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .dl-horizontal dd {
    margin-left: 180px;
  }
}

abbr[title],
abbr[data-original-title] {
  cursor: help;
  border-bottom: 1px dotted #777777;
}

.initialism {
  font-size: 90%;
}

blockquote {
  padding: 10px 20px;
  margin: 0 0 20px;
  font-size: 17.5px;
  border-left: 5px solid #eeeeee;
}
blockquote p:last-child,
blockquote ul:last-child,
blockquote ol:last-child {
  margin-bottom: 0;
}
blockquote footer,
blockquote small,
blockquote .small {
  display: block;
  font-size: 80%;
  line-height: 1.42857;
  color: #777777;
}
blockquote footer:before,
blockquote small:before,
blockquote .small:before {
  content: '\2014 \00A0';
}

.blockquote-reverse,
blockquote.pull-right {
  padding-right: 15px;
  padding-left: 0;
  border-right: 5px solid #eeeeee;
  border-left: 0;
  text-align: right;
}
.blockquote-reverse footer:before,
.blockquote-reverse small:before,
.blockquote-reverse .small:before,
blockquote.pull-right footer:before,
blockquote.pull-right small:before,
blockquote.pull-right .small:before {
  content: '';
}
.blockquote-reverse footer:after,
.blockquote-reverse small:after,
.blockquote-reverse .small:after,
blockquote.pull-right footer:after,
blockquote.pull-right small:after,
blockquote.pull-right .small:after {
  content: '\00A0 \2014';
}

address {
  margin-bottom: 20px;
  font-style: normal;
  line-height: 1.42857;
}

code,
kbd,
pre,
samp {
  font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
}

code {
  padding: 2px 4px;
  font-size: 90%;
  color: #c7254e;
  background-color: #f9f2f4;
  border-radius: 4px;
}

kbd {
  padding: 2px 4px;
  font-size: 90%;
  color: #fff;
  background-color: #333;
  border-radius: 3px;
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);
}
kbd kbd {
  padding: 0;
  font-size: 100%;
  font-weight: bold;
  box-shadow: none;
}

pre {
  display: block;
  padding: 9.5px;
  margin: 0 0 10px;
  font-size: 13px;
  line-height: 1.42857;
  word-break: break-all;
  word-wrap: break-word;
  color: #333333;
  background-color: #f5f5f5;
  border: 1px solid #ccc;
  border-radius: 4px;
}
pre code {
  padding: 0;
  font-size: inherit;
  color: inherit;
  white-space: pre-wrap;
  background-color: transparent;
  border-radius: 0;
}

.pre-scrollable {
  max-height: 340px;
  overflow-y: scroll;
}

.container {
  margin-right: auto;
  margin-left: auto;
  padding-left: 15px;
  padding-right: 15px;
}
.container:before, .container:after {
  content: " ";
  display: table;
}
.container:after {
  clear: both;
}
@media (min-width: 768px) {
  .container {
    width: 750px;
  }
}
@media (min-width: 992px) {
  .container {
    width: 970px;
  }
}
@media (min-width: 1200px) {
  .container {
    width: 1170px;
  }
}

.container-fluid {
  margin-right: auto;
  margin-left: auto;
  padding-left: 15px;
  padding-right: 15px;
}
.container-fluid:before, .container-fluid:after {
  content: " ";
  display: table;
}
.container-fluid:after {
  clear: both;
}

.row {
  margin-left: -15px;
  margin-right: -15px;
}
.row:before, .row:after {
  content: " ";
  display: table;
}
.row:after {
  clear: both;
}

.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
  position: relative;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {
  float: left;
}

.col-xs-1 {
  width: 8.33333%;
}

.col-xs-2 {
  width: 16.66667%;
}

.col-xs-3 {
  width: 25%;
}

.col-xs-4 {
  width: 33.33333%;
}

.col-xs-5 {
  width: 41.66667%;
}

.col-xs-6 {
  width: 50%;
}

.col-xs-7 {
  width: 58.33333%;
}

.col-xs-8 {
  width: 66.66667%;
}

.col-xs-9 {
  width: 75%;
}

.col-xs-10 {
  width: 83.33333%;
}

.col-xs-11 {
  width: 91.66667%;
}

.col-xs-12 {
  width: 100%;
}

.col-xs-pull-0 {
  right: auto;
}

.col-xs-pull-1 {
  right: 8.33333%;
}

.col-xs-pull-2 {
  right: 16.66667%;
}

.col-xs-pull-3 {
  right: 25%;
}

.col-xs-pull-4 {
  right: 33.33333%;
}

.col-xs-pull-5 {
  right: 41.66667%;
}

.col-xs-pull-6 {
  right: 50%;
}

.col-xs-pull-7 {
  right: 58.33333%;
}

.col-xs-pull-8 {
  right: 66.66667%;
}

.col-xs-pull-9 {
  right: 75%;
}

.col-xs-pull-10 {
  right: 83.33333%;
}

.col-xs-pull-11 {
  right: 91.66667%;
}

.col-xs-pull-12 {
  right: 100%;
}

.col-xs-push-0 {
  left: auto;
}

.col-xs-push-1 {
  left: 8.33333%;
}

.col-xs-push-2 {
  left: 16.66667%;
}

.col-xs-push-3 {
  left: 25%;
}

.col-xs-push-4 {
  left: 33.33333%;
}

.col-xs-push-5 {
  left: 41.66667%;
}

.col-xs-push-6 {
  left: 50%;
}

.col-xs-push-7 {
  left: 58.33333%;
}

.col-xs-push-8 {
  left: 66.66667%;
}

.col-xs-push-9 {
  left: 75%;
}

.col-xs-push-10 {
  left: 83.33333%;
}

.col-xs-push-11 {
  left: 91.66667%;
}

.col-xs-push-12 {
  left: 100%;
}

.col-xs-offset-0 {
  margin-left: 0%;
}

.col-xs-offset-1 {
  margin-left: 8.33333%;
}

.col-xs-offset-2 {
  margin-left: 16.66667%;
}

.col-xs-offset-3 {
  margin-left: 25%;
}

.col-xs-offset-4 {
  margin-left: 33.33333%;
}

.col-xs-offset-5 {
  margin-left: 41.66667%;
}

.col-xs-offset-6 {
  margin-left: 50%;
}

.col-xs-offset-7 {
  margin-left: 58.33333%;
}

.col-xs-offset-8 {
  margin-left: 66.66667%;
}

.col-xs-offset-9 {
  margin-left: 75%;
}

.col-xs-offset-10 {
  margin-left: 83.33333%;
}

.col-xs-offset-11 {
  margin-left: 91.66667%;
}

.col-xs-offset-12 {
  margin-left: 100%;
}

@media (min-width: 768px) {
  .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
    float: left;
  }

  .col-sm-1 {
    width: 8.33333%;
  }

  .col-sm-2 {
    width: 16.66667%;
  }

  .col-sm-3 {
    width: 25%;
  }

  .col-sm-4 {
    width: 33.33333%;
  }

  .col-sm-5 {
    width: 41.66667%;
  }

  .col-sm-6 {
    width: 50%;
  }

  .col-sm-7 {
    width: 58.33333%;
  }

  .col-sm-8 {
    width: 66.66667%;
  }

  .col-sm-9 {
    width: 75%;
  }

  .col-sm-10 {
    width: 83.33333%;
  }

  .col-sm-11 {
    width: 91.66667%;
  }

  .col-sm-12 {
    width: 100%;
  }

  .col-sm-pull-0 {
    right: auto;
  }

  .col-sm-pull-1 {
    right: 8.33333%;
  }

  .col-sm-pull-2 {
    right: 16.66667%;
  }

  .col-sm-pull-3 {
    right: 25%;
  }

  .col-sm-pull-4 {
    right: 33.33333%;
  }

  .col-sm-pull-5 {
    right: 41.66667%;
  }

  .col-sm-pull-6 {
    right: 50%;
  }

  .col-sm-pull-7 {
    right: 58.33333%;
  }

  .col-sm-pull-8 {
    right: 66.66667%;
  }

  .col-sm-pull-9 {
    right: 75%;
  }

  .col-sm-pull-10 {
    right: 83.33333%;
  }

  .col-sm-pull-11 {
    right: 91.66667%;
  }

  .col-sm-pull-12 {
    right: 100%;
  }

  .col-sm-push-0 {
    left: auto;
  }

  .col-sm-push-1 {
    left: 8.33333%;
  }

  .col-sm-push-2 {
    left: 16.66667%;
  }

  .col-sm-push-3 {
    left: 25%;
  }

  .col-sm-push-4 {
    left: 33.33333%;
  }

  .col-sm-push-5 {
    left: 41.66667%;
  }

  .col-sm-push-6 {
    left: 50%;
  }

  .col-sm-push-7 {
    left: 58.33333%;
  }

  .col-sm-push-8 {
    left: 66.66667%;
  }

  .col-sm-push-9 {
    left: 75%;
  }

  .col-sm-push-10 {
    left: 83.33333%;
  }

  .col-sm-push-11 {
    left: 91.66667%;
  }

  .col-sm-push-12 {
    left: 100%;
  }

  .col-sm-offset-0 {
    margin-left: 0%;
  }

  .col-sm-offset-1 {
    margin-left: 8.33333%;
  }

  .col-sm-offset-2 {
    margin-left: 16.66667%;
  }

  .col-sm-offset-3 {
    margin-left: 25%;
  }

  .col-sm-offset-4 {
    margin-left: 33.33333%;
  }

  .col-sm-offset-5 {
    margin-left: 41.66667%;
  }

  .col-sm-offset-6 {
    margin-left: 50%;
  }

  .col-sm-offset-7 {
    margin-left: 58.33333%;
  }

  .col-sm-offset-8 {
    margin-left: 66.66667%;
  }

  .col-sm-offset-9 {
    margin-left: 75%;
  }

  .col-sm-offset-10 {
    margin-left: 83.33333%;
  }

  .col-sm-offset-11 {
    margin-left: 91.66667%;
  }

  .col-sm-offset-12 {
    margin-left: 100%;
  }
}
@media (min-width: 992px) {
  .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {
    float: left;
  }

  .col-md-1 {
    width: 8.33333%;
  }

  .col-md-2 {
    width: 16.66667%;
  }

  .col-md-3 {
    width: 25%;
  }

  .col-md-4 {
    width: 33.33333%;
  }

  .col-md-5 {
    width: 41.66667%;
  }

  .col-md-6 {
    width: 50%;
  }

  .col-md-7 {
    width: 58.33333%;
  }

  .col-md-8 {
    width: 66.66667%;
  }

  .col-md-9 {
    width: 75%;
  }

  .col-md-10 {
    width: 83.33333%;
  }

  .col-md-11 {
    width: 91.66667%;
  }

  .col-md-12 {
    width: 100%;
  }

  .col-md-pull-0 {
    right: auto;
  }

  .col-md-pull-1 {
    right: 8.33333%;
  }

  .col-md-pull-2 {
    right: 16.66667%;
  }

  .col-md-pull-3 {
    right: 25%;
  }

  .col-md-pull-4 {
    right: 33.33333%;
  }

  .col-md-pull-5 {
    right: 41.66667%;
  }

  .col-md-pull-6 {
    right: 50%;
  }

  .col-md-pull-7 {
    right: 58.33333%;
  }

  .col-md-pull-8 {
    right: 66.66667%;
  }

  .col-md-pull-9 {
    right: 75%;
  }

  .col-md-pull-10 {
    right: 83.33333%;
  }

  .col-md-pull-11 {
    right: 91.66667%;
  }

  .col-md-pull-12 {
    right: 100%;
  }

  .col-md-push-0 {
    left: auto;
  }

  .col-md-push-1 {
    left: 8.33333%;
  }

  .col-md-push-2 {
    left: 16.66667%;
  }

  .col-md-push-3 {
    left: 25%;
  }

  .col-md-push-4 {
    left: 33.33333%;
  }

  .col-md-push-5 {
    left: 41.66667%;
  }

  .col-md-push-6 {
    left: 50%;
  }

  .col-md-push-7 {
    left: 58.33333%;
  }

  .col-md-push-8 {
    left: 66.66667%;
  }

  .col-md-push-9 {
    left: 75%;
  }

  .col-md-push-10 {
    left: 83.33333%;
  }

  .col-md-push-11 {
    left: 91.66667%;
  }

  .col-md-push-12 {
    left: 100%;
  }

  .col-md-offset-0 {
    margin-left: 0%;
  }

  .col-md-offset-1 {
    margin-left: 8.33333%;
  }

  .col-md-offset-2 {
    margin-left: 16.66667%;
  }

  .col-md-offset-3 {
    margin-left: 25%;
  }

  .col-md-offset-4 {
    margin-left: 33.33333%;
  }

  .col-md-offset-5 {
    margin-left: 41.66667%;
  }

  .col-md-offset-6 {
    margin-left: 50%;
  }

  .col-md-offset-7 {
    margin-left: 58.33333%;
  }

  .col-md-offset-8 {
    margin-left: 66.66667%;
  }

  .col-md-offset-9 {
    margin-left: 75%;
  }

  .col-md-offset-10 {
    margin-left: 83.33333%;
  }

  .col-md-offset-11 {
    margin-left: 91.66667%;
  }

  .col-md-offset-12 {
    margin-left: 100%;
  }
}
@media (min-width: 1200px) {
  .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {
    float: left;
  }

  .col-lg-1 {
    width: 8.33333%;
  }

  .col-lg-2 {
    width: 16.66667%;
  }

  .col-lg-3 {
    width: 25%;
  }

  .col-lg-4 {
    width: 33.33333%;
  }

  .col-lg-5 {
    width: 41.66667%;
  }

  .col-lg-6 {
    width: 50%;
  }

  .col-lg-7 {
    width: 58.33333%;
  }

  .col-lg-8 {
    width: 66.66667%;
  }

  .col-lg-9 {
    width: 75%;
  }

  .col-lg-10 {
    width: 83.33333%;
  }

  .col-lg-11 {
    width: 91.66667%;
  }

  .col-lg-12 {
    width: 100%;
  }

  .col-lg-pull-0 {
    right: auto;
  }

  .col-lg-pull-1 {
    right: 8.33333%;
  }

  .col-lg-pull-2 {
    right: 16.66667%;
  }

  .col-lg-pull-3 {
    right: 25%;
  }

  .col-lg-pull-4 {
    right: 33.33333%;
  }

  .col-lg-pull-5 {
    right: 41.66667%;
  }

  .col-lg-pull-6 {
    right: 50%;
  }

  .col-lg-pull-7 {
    right: 58.33333%;
  }

  .col-lg-pull-8 {
    right: 66.66667%;
  }

  .col-lg-pull-9 {
    right: 75%;
  }

  .col-lg-pull-10 {
    right: 83.33333%;
  }

  .col-lg-pull-11 {
    right: 91.66667%;
  }

  .col-lg-pull-12 {
    right: 100%;
  }

  .col-lg-push-0 {
    left: auto;
  }

  .col-lg-push-1 {
    left: 8.33333%;
  }

  .col-lg-push-2 {
    left: 16.66667%;
  }

  .col-lg-push-3 {
    left: 25%;
  }

  .col-lg-push-4 {
    left: 33.33333%;
  }

  .col-lg-push-5 {
    left: 41.66667%;
  }

  .col-lg-push-6 {
    left: 50%;
  }

  .col-lg-push-7 {
    left: 58.33333%;
  }

  .col-lg-push-8 {
    left: 66.66667%;
  }

  .col-lg-push-9 {
    left: 75%;
  }

  .col-lg-push-10 {
    left: 83.33333%;
  }

  .col-lg-push-11 {
    left: 91.66667%;
  }

  .col-lg-push-12 {
    left: 100%;
  }

  .col-lg-offset-0 {
    margin-left: 0%;
  }

  .col-lg-offset-1 {
    margin-left: 8.33333%;
  }

  .col-lg-offset-2 {
    margin-left: 16.66667%;
  }

  .col-lg-offset-3 {
    margin-left: 25%;
  }

  .col-lg-offset-4 {
    margin-left: 33.33333%;
  }

  .col-lg-offset-5 {
    margin-left: 41.66667%;
  }

  .col-lg-offset-6 {
    margin-left: 50%;
  }

  .col-lg-offset-7 {
    margin-left: 58.33333%;
  }

  .col-lg-offset-8 {
    margin-left: 66.66667%;
  }

  .col-lg-offset-9 {
    margin-left: 75%;
  }

  .col-lg-offset-10 {
    margin-left: 83.33333%;
  }

  .col-lg-offset-11 {
    margin-left: 91.66667%;
  }

  .col-lg-offset-12 {
    margin-left: 100%;
  }
}
table {
  background-color: transparent;
}

caption {
  padding-top: 8px;
  padding-bottom: 8px;
  color: #777777;
  text-align: left;
}

th {
  text-align: left;
}

.table {
  width: 100%;
  max-width: 100%;
  margin-bottom: 20px;
}
.table > thead > tr > th,
.table > thead > tr > td,
.table > tbody > tr > th,
.table > tbody > tr > td,
.table > tfoot > tr > th,
.table > tfoot > tr > td {
  padding: 8px;
  line-height: 1.42857;
  vertical-align: top;
  border-top: 1px solid #ddd;
}
.table > thead > tr > th {
  vertical-align: bottom;
  border-bottom: 2px solid #ddd;
}
.table > caption + thead > tr:first-child > th,
.table > caption + thead > tr:first-child > td,
.table > colgroup + thead > tr:first-child > th,
.table > colgroup + thead > tr:first-child > td,
.table > thead:first-child > tr:first-child > th,
.table > thead:first-child > tr:first-child > td {
  border-top: 0;
}
.table > tbody + tbody {
  border-top: 2px solid #ddd;
}
.table .table {
  background-color: #fff;
}

.table-condensed > thead > tr > th,
.table-condensed > thead > tr > td,
.table-condensed > tbody > tr > th,
.table-condensed > tbody > tr > td,
.table-condensed > tfoot > tr > th,
.table-condensed > tfoot > tr > td {
  padding: 5px;
}

.table-bordered {
  border: 1px solid #ddd;
}
.table-bordered > thead > tr > th,
.table-bordered > thead > tr > td,
.table-bordered > tbody > tr > th,
.table-bordered > tbody > tr > td,
.table-bordered > tfoot > tr > th,
.table-bordered > tfoot > tr > td {
  border: 1px solid #ddd;
}
.table-bordered > thead > tr > th,
.table-bordered > thead > tr > td {
  border-bottom-width: 2px;
}

.table-striped > tbody > tr:nth-of-type(odd) {
  background-color: #f9f9f9;
}

.table-hover > tbody > tr:hover {
  background-color: #f5f5f5;
}

table col[class*="col-"] {
  position: static;
  float: none;
  display: table-column;
}

table td[class*="col-"],
table th[class*="col-"] {
  position: static;
  float: none;
  display: table-cell;
}

.table > thead > tr > td.active,
.table > thead > tr > th.active, .table > thead > tr.active > td, .table > thead > tr.active > th,
.table > tbody > tr > td.active,
.table > tbody > tr > th.active,
.table > tbody > tr.active > td,
.table > tbody > tr.active > th,
.table > tfoot > tr > td.active,
.table > tfoot > tr > th.active,
.table > tfoot > tr.active > td,
.table > tfoot > tr.active > th {
  background-color: #f5f5f5;
}

.table-hover > tbody > tr > td.active:hover,
.table-hover > tbody > tr > th.active:hover, .table-hover > tbody > tr.active:hover > td, .table-hover > tbody > tr:hover > .active, .table-hover > tbody > tr.active:hover > th {
  background-color: #e8e8e8;
}

.table > thead > tr > td.success,
.table > thead > tr > th.success, .table > thead > tr.success > td, .table > thead > tr.success > th,
.table > tbody > tr > td.success,
.table > tbody > tr > th.success,
.table > tbody > tr.success > td,
.table > tbody > tr.success > th,
.table > tfoot > tr > td.success,
.table > tfoot > tr > th.success,
.table > tfoot > tr.success > td,
.table > tfoot > tr.success > th {
  background-color: #dff0d8;
}

.table-hover > tbody > tr > td.success:hover,
.table-hover > tbody > tr > th.success:hover, .table-hover > tbody > tr.success:hover > td, .table-hover > tbody > tr:hover > .success, .table-hover > tbody > tr.success:hover > th {
  background-color: #d0e9c6;
}

.table > thead > tr > td.info,
.table > thead > tr > th.info, .table > thead > tr.info > td, .table > thead > tr.info > th,
.table > tbody > tr > td.info,
.table > tbody > tr > th.info,
.table > tbody > tr.info > td,
.table > tbody > tr.info > th,
.table > tfoot > tr > td.info,
.table > tfoot > tr > th.info,
.table > tfoot > tr.info > td,
.table > tfoot > tr.info > th {
  background-color: #d9edf7;
}

.table-hover > tbody > tr > td.info:hover,
.table-hover > tbody > tr > th.info:hover, .table-hover > tbody > tr.info:hover > td, .table-hover > tbody > tr:hover > .info, .table-hover > tbody > tr.info:hover > th {
  background-color: #c4e3f3;
}

.table > thead > tr > td.warning,
.table > thead > tr > th.warning, .table > thead > tr.warning > td, .table > thead > tr.warning > th,
.table > tbody > tr > td.warning,
.table > tbody > tr > th.warning,
.table > tbody > tr.warning > td,
.table > tbody > tr.warning > th,
.table > tfoot > tr > td.warning,
.table > tfoot > tr > th.warning,
.table > tfoot > tr.warning > td,
.table > tfoot > tr.warning > th {
  background-color: #fcf8e3;
}

.table-hover > tbody > tr > td.warning:hover,
.table-hover > tbody > tr > th.warning:hover, .table-hover > tbody > tr.warning:hover > td, .table-hover > tbody > tr:hover > .warning, .table-hover > tbody > tr.warning:hover > th {
  background-color: #faf2cc;
}

.table > thead > tr > td.danger,
.table > thead > tr > th.danger, .table > thead > tr.danger > td, .table > thead > tr.danger > th,
.table > tbody > tr > td.danger,
.table > tbody > tr > th.danger,
.table > tbody > tr.danger > td,
.table > tbody > tr.danger > th,
.table > tfoot > tr > td.danger,
.table > tfoot > tr > th.danger,
.table > tfoot > tr.danger > td,
.table > tfoot > tr.danger > th {
  background-color: #f2dede;
}

.table-hover > tbody > tr > td.danger:hover,
.table-hover > tbody > tr > th.danger:hover, .table-hover > tbody > tr.danger:hover > td, .table-hover > tbody > tr:hover > .danger, .table-hover > tbody > tr.danger:hover > th {
  background-color: #ebcccc;
}

.table-responsive {
  overflow-x: auto;
  min-height: 0.01%;
}
@media screen and (max-width: 767px) {
  .table-responsive {
    width: 100%;
    margin-bottom: 15px;
    overflow-y: hidden;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    border: 1px solid #ddd;
  }
  .table-responsive > .table {
    margin-bottom: 0;
  }
  .table-responsive > .table > thead > tr > th,
  .table-responsive > .table > thead > tr > td,
  .table-responsive > .table > tbody > tr > th,
  .table-responsive > .table > tbody > tr > td,
  .table-responsive > .table > tfoot > tr > th,
  .table-responsive > .table > tfoot > tr > td {
    white-space: nowrap;
  }
  .table-responsive > .table-bordered {
    border: 0;
  }
  .table-responsive > .table-bordered > thead > tr > th:first-child,
  .table-responsive > .table-bordered > thead > tr > td:first-child,
  .table-responsive > .table-bordered > tbody > tr > th:first-child,
  .table-responsive > .table-bordered > tbody > tr > td:first-child,
  .table-responsive > .table-bordered > tfoot > tr > th:first-child,
  .table-responsive > .table-bordered > tfoot > tr > td:first-child {
    border-left: 0;
  }
  .table-responsive > .table-bordered > thead > tr > th:last-child,
  .table-responsive > .table-bordered > thead > tr > td:last-child,
  .table-responsive > .table-bordered > tbody > tr > th:last-child,
  .table-responsive > .table-bordered > tbody > tr > td:last-child,
  .table-responsive > .table-bordered > tfoot > tr > th:last-child,
  .table-responsive > .table-bordered > tfoot > tr > td:last-child {
    border-right: 0;
  }
  .table-responsive > .table-bordered > tbody > tr:last-child > th,
  .table-responsive > .table-bordered > tbody > tr:last-child > td,
  .table-responsive > .table-bordered > tfoot > tr:last-child > th,
  .table-responsive > .table-bordered > tfoot > tr:last-child > td {
    border-bottom: 0;
  }
}

fieldset {
  padding: 0;
  margin: 0;
  border: 0;
  min-width: 0;
}

legend {
  display: block;
  width: 100%;
  padding: 0;
  margin-bottom: 20px;
  font-size: 21px;
  line-height: inherit;
  color: #333333;
  border: 0;
  border-bottom: 1px solid #e5e5e5;
}

label {
  display: inline-block;
  max-width: 100%;
  margin-bottom: 5px;
  font-weight: bold;
}

input[type="search"] {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

input[type="radio"],
input[type="checkbox"] {
  margin: 4px 0 0;
  margin-top: 1px \9;
  line-height: normal;
}

input[type="file"] {
  display: block;
}

input[type="range"] {
  display: block;
  width: 100%;
}

select[multiple],
select[size] {
  height: auto;
}

input[type="file"]:focus,
input[type="radio"]:focus,
input[type="checkbox"]:focus {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}

output {
  display: block;
  padding-top: 11px;
  font-size: 14px;
  line-height: 1.42857;
  color: #555555;
}

.form-control {
  display: block;
  width: 100%;
  height: 42px;
  padding: 10px 20px;
  font-size: 14px;
  line-height: 1.42857;
  color: #555555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
}
.form-control:focus {
  border-color: #66afe9;
  outline: 0;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
}
.form-control::-moz-placeholder {
  color: #999;
  opacity: 1;
}
.form-control:-ms-input-placeholder {
  color: #999;
}
.form-control::-webkit-input-placeholder {
  color: #999;
}
.form-control[disabled], .form-control[readonly], fieldset[disabled] .form-control {
  background-color: #eeeeee;
  opacity: 1;
}
.form-control[disabled], fieldset[disabled] .form-control {
  cursor: not-allowed;
}

textarea.form-control {
  height: auto;
}

input[type="search"] {
  -webkit-appearance: none;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  input[type="date"].form-control,
  input[type="time"].form-control,
  input[type="datetime-local"].form-control,
  input[type="month"].form-control {
    line-height: 42px;
  }
  input[type="date"].input-sm, .input-group-sm > input[type="date"].form-control,
  .input-group-sm > input[type="date"].input-group-addon,
  .input-group-sm > .input-group-btn > input[type="date"].btn, .input-group-sm input[type="date"],
  input[type="time"].input-sm,
  .input-group-sm > input[type="time"].form-control,
  .input-group-sm > input[type="time"].input-group-addon,
  .input-group-sm > .input-group-btn > input[type="time"].btn, .input-group-sm
  input[type="time"],
  input[type="datetime-local"].input-sm,
  .input-group-sm > input[type="datetime-local"].form-control,
  .input-group-sm > input[type="datetime-local"].input-group-addon,
  .input-group-sm > .input-group-btn > input[type="datetime-local"].btn, .input-group-sm
  input[type="datetime-local"],
  input[type="month"].input-sm,
  .input-group-sm > input[type="month"].form-control,
  .input-group-sm > input[type="month"].input-group-addon,
  .input-group-sm > .input-group-btn > input[type="month"].btn, .input-group-sm
  input[type="month"] {
    line-height: 30px;
  }
  input[type="date"].input-lg, .input-group-lg > input[type="date"].form-control,
  .input-group-lg > input[type="date"].input-group-addon,
  .input-group-lg > .input-group-btn > input[type="date"].btn, .input-group-lg input[type="date"],
  input[type="time"].input-lg,
  .input-group-lg > input[type="time"].form-control,
  .input-group-lg > input[type="time"].input-group-addon,
  .input-group-lg > .input-group-btn > input[type="time"].btn, .input-group-lg
  input[type="time"],
  input[type="datetime-local"].input-lg,
  .input-group-lg > input[type="datetime-local"].form-control,
  .input-group-lg > input[type="datetime-local"].input-group-addon,
  .input-group-lg > .input-group-btn > input[type="datetime-local"].btn, .input-group-lg
  input[type="datetime-local"],
  input[type="month"].input-lg,
  .input-group-lg > input[type="month"].form-control,
  .input-group-lg > input[type="month"].input-group-addon,
  .input-group-lg > .input-group-btn > input[type="month"].btn, .input-group-lg
  input[type="month"] {
    line-height: 46px;
  }
}
.form-group {
  margin-bottom: 15px;
}

.radio,
.checkbox {
  position: relative;
  display: block;
  margin-top: 10px;
  margin-bottom: 10px;
}
.radio label,
.checkbox label {
  min-height: 20px;
  padding-left: 20px;
  margin-bottom: 0;
  font-weight: normal;
  cursor: pointer;
}

.radio input[type="radio"],
.radio-inline input[type="radio"],
.checkbox input[type="checkbox"],
.checkbox-inline input[type="checkbox"] {
  position: absolute;
  margin-left: -20px;
  margin-top: 4px \9;
}

.radio + .radio,
.checkbox + .checkbox {
  margin-top: -5px;
}

.radio-inline,
.checkbox-inline {
  position: relative;
  display: inline-block;
  padding-left: 20px;
  margin-bottom: 0;
  vertical-align: middle;
  font-weight: normal;
  cursor: pointer;
}

.radio-inline + .radio-inline,
.checkbox-inline + .checkbox-inline {
  margin-top: 0;
  margin-left: 10px;
}

input[type="radio"][disabled], input[type="radio"].disabled, fieldset[disabled] input[type="radio"],
input[type="checkbox"][disabled],
input[type="checkbox"].disabled, fieldset[disabled]
input[type="checkbox"] {
  cursor: not-allowed;
}

.radio-inline.disabled, fieldset[disabled] .radio-inline,
.checkbox-inline.disabled, fieldset[disabled]
.checkbox-inline {
  cursor: not-allowed;
}

.radio.disabled label, fieldset[disabled] .radio label,
.checkbox.disabled label, fieldset[disabled]
.checkbox label {
  cursor: not-allowed;
}

.form-control-static {
  padding-top: 11px;
  padding-bottom: 11px;
  margin-bottom: 0;
  min-height: 34px;
}
.form-control-static.input-lg, .input-group-lg > .form-control-static.form-control,
.input-group-lg > .form-control-static.input-group-addon,
.input-group-lg > .input-group-btn > .form-control-static.btn, .form-control-static.input-sm, .input-group-sm > .form-control-static.form-control,
.input-group-sm > .form-control-static.input-group-addon,
.input-group-sm > .input-group-btn > .form-control-static.btn {
  padding-left: 0;
  padding-right: 0;
}

.input-sm, .input-group-sm > .form-control,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .btn {
  height: 30px;
  padding: 5px 20px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}

select.input-sm, .input-group-sm > select.form-control,
.input-group-sm > select.input-group-addon,
.input-group-sm > .input-group-btn > select.btn {
  height: 30px;
  line-height: 30px;
}

textarea.input-sm, .input-group-sm > textarea.form-control,
.input-group-sm > textarea.input-group-addon,
.input-group-sm > .input-group-btn > textarea.btn,
select[multiple].input-sm,
.input-group-sm > select[multiple].form-control,
.input-group-sm > select[multiple].input-group-addon,
.input-group-sm > .input-group-btn > select[multiple].btn {
  height: auto;
}

.form-group-sm .form-control {
  height: 30px;
  padding: 5px 20px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}
.form-group-sm select.form-control {
  height: 30px;
  line-height: 30px;
}
.form-group-sm textarea.form-control,
.form-group-sm select[multiple].form-control {
  height: auto;
}
.form-group-sm .form-control-static {
  height: 30px;
  min-height: 32px;
  padding: 6px 20px;
  font-size: 12px;
  line-height: 1.5;
}

.input-lg, .input-group-lg > .form-control,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .btn {
  height: 46px;
  padding: 10px 20px;
  font-size: 18px;
  line-height: 1.33333;
  border-radius: 6px;
}

select.input-lg, .input-group-lg > select.form-control,
.input-group-lg > select.input-group-addon,
.input-group-lg > .input-group-btn > select.btn {
  height: 46px;
  line-height: 46px;
}

textarea.input-lg, .input-group-lg > textarea.form-control,
.input-group-lg > textarea.input-group-addon,
.input-group-lg > .input-group-btn > textarea.btn,
select[multiple].input-lg,
.input-group-lg > select[multiple].form-control,
.input-group-lg > select[multiple].input-group-addon,
.input-group-lg > .input-group-btn > select[multiple].btn {
  height: auto;
}

.form-group-lg .form-control {
  height: 46px;
  padding: 10px 20px;
  font-size: 18px;
  line-height: 1.33333;
  border-radius: 6px;
}
.form-group-lg select.form-control {
  height: 46px;
  line-height: 46px;
}
.form-group-lg textarea.form-control,
.form-group-lg select[multiple].form-control {
  height: auto;
}
.form-group-lg .form-control-static {
  height: 46px;
  min-height: 38px;
  padding: 11px 20px;
  font-size: 18px;
  line-height: 1.33333;
}

.has-feedback {
  position: relative;
}
.has-feedback .form-control {
  padding-right: 52.5px;
}

.form-control-feedback {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  display: block;
  width: 42px;
  height: 42px;
  line-height: 42px;
  text-align: center;
  pointer-events: none;
}

.input-lg + .form-control-feedback, .input-group-lg > .form-control + .form-control-feedback,
.input-group-lg > .input-group-addon + .form-control-feedback,
.input-group-lg > .input-group-btn > .btn + .form-control-feedback,
.input-group-lg + .form-control-feedback,
.form-group-lg .form-control + .form-control-feedback {
  width: 46px;
  height: 46px;
  line-height: 46px;
}

.input-sm + .form-control-feedback, .input-group-sm > .form-control + .form-control-feedback,
.input-group-sm > .input-group-addon + .form-control-feedback,
.input-group-sm > .input-group-btn > .btn + .form-control-feedback,
.input-group-sm + .form-control-feedback,
.form-group-sm .form-control + .form-control-feedback {
  width: 30px;
  height: 30px;
  line-height: 30px;
}

.has-success .help-block,
.has-success .control-label,
.has-success .radio,
.has-success .checkbox,
.has-success .radio-inline,
.has-success .checkbox-inline, .has-success.radio label, .has-success.checkbox label, .has-success.radio-inline label, .has-success.checkbox-inline label {
  color: #3c763d;
}
.has-success .form-control {
  border-color: #3c763d;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.has-success .form-control:focus {
  border-color: #2b542c;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
}
.has-success .input-group-addon {
  color: #3c763d;
  border-color: #3c763d;
  background-color: #dff0d8;
}
.has-success .form-control-feedback {
  color: #3c763d;
}

.has-warning .help-block,
.has-warning .control-label,
.has-warning .radio,
.has-warning .checkbox,
.has-warning .radio-inline,
.has-warning .checkbox-inline, .has-warning.radio label, .has-warning.checkbox label, .has-warning.radio-inline label, .has-warning.checkbox-inline label {
  color: #8a6d3b;
}
.has-warning .form-control {
  border-color: #8a6d3b;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.has-warning .form-control:focus {
  border-color: #66512c;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
}
.has-warning .input-group-addon {
  color: #8a6d3b;
  border-color: #8a6d3b;
  background-color: #fcf8e3;
}
.has-warning .form-control-feedback {
  color: #8a6d3b;
}

.has-error .help-block,
.has-error .control-label,
.has-error .radio,
.has-error .checkbox,
.has-error .radio-inline,
.has-error .checkbox-inline, .has-error.radio label, .has-error.checkbox label, .has-error.radio-inline label, .has-error.checkbox-inline label {
  color: #a94442;
}
.has-error .form-control {
  border-color: #a94442;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.has-error .form-control:focus {
  border-color: #843534;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
}
.has-error .input-group-addon {
  color: #a94442;
  border-color: #a94442;
  background-color: #f2dede;
}
.has-error .form-control-feedback {
  color: #a94442;
}

.has-feedback label ~ .form-control-feedback {
  top: 25px;
}
.has-feedback label.sr-only ~ .form-control-feedback {
  top: 0;
}

.help-block {
  display: block;
  margin-top: 5px;
  margin-bottom: 10px;
  color: #737373;
}

@media (min-width: 768px) {
  .form-inline .form-group {
    display: inline-block;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .form-inline .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle;
  }
  .form-inline .form-control-static {
    display: inline-block;
  }
  .form-inline .input-group {
    display: inline-table;
    vertical-align: middle;
  }
  .form-inline .input-group .input-group-addon,
  .form-inline .input-group .input-group-btn,
  .form-inline .input-group .form-control {
    width: auto;
  }
  .form-inline .input-group > .form-control {
    width: 100%;
  }
  .form-inline .control-label {
    margin-bottom: 0;
    vertical-align: middle;
  }
  .form-inline .radio,
  .form-inline .checkbox {
    display: inline-block;
    margin-top: 0;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .form-inline .radio label,
  .form-inline .checkbox label {
    padding-left: 0;
  }
  .form-inline .radio input[type="radio"],
  .form-inline .checkbox input[type="checkbox"] {
    position: relative;
    margin-left: 0;
  }
  .form-inline .has-feedback .form-control-feedback {
    top: 0;
  }
}

.form-horizontal .radio,
.form-horizontal .checkbox,
.form-horizontal .radio-inline,
.form-horizontal .checkbox-inline {
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 11px;
}
.form-horizontal .radio,
.form-horizontal .checkbox {
  min-height: 31px;
}
.form-horizontal .form-group {
  margin-left: -15px;
  margin-right: -15px;
}
.form-horizontal .form-group:before, .form-horizontal .form-group:after {
  content: " ";
  display: table;
}
.form-horizontal .form-group:after {
  clear: both;
}
@media (min-width: 768px) {
  .form-horizontal .control-label {
    text-align: right;
    margin-bottom: 0;
    padding-top: 11px;
  }
}
.form-horizontal .has-feedback .form-control-feedback {
  right: 15px;
}
@media (min-width: 768px) {
  .form-horizontal .form-group-lg .control-label {
    padding-top: 14.33333px;
    font-size: 18px;
  }
}
@media (min-width: 768px) {
  .form-horizontal .form-group-sm .control-label {
    padding-top: 6px;
    font-size: 12px;
  }
}

.btn {
  display: inline-block;
  margin-bottom: 0;
  font-weight: normal;
  text-align: center;
  vertical-align: middle;
  touch-action: manipulation;
  cursor: pointer;
  background-image: none;
  border: 1px solid transparent;
  white-space: nowrap;
  padding: 10px 20px;
  font-size: 14px;
  line-height: 1.42857;
  border-radius: 4px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.btn:focus, .btn.focus, .btn:active:focus, .btn:active.focus, .btn.active:focus, .btn.active.focus {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}
.btn:hover, .btn:focus, .btn.focus {
  color: #333;
  text-decoration: none;
}
.btn:active, .btn.active {
  outline: 0;
  background-image: none;
  -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}
.btn.disabled, .btn[disabled], fieldset[disabled] .btn {
  cursor: not-allowed;
  opacity: 0.65;
  filter: alpha(opacity=65);
  -webkit-box-shadow: none;
  box-shadow: none;
}

a.btn.disabled, fieldset[disabled] a.btn {
  pointer-events: none;
}

.btn-default {
  color: #333;
  background-color: #fff;
  border-color: #ccc;
}
.btn-default:focus, .btn-default.focus {
  color: #333;
  background-color: #e6e6e6;
  border-color: #8c8c8c;
}
.btn-default:hover {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad;
}
.btn-default:active, .btn-default.active, .open > .btn-default.dropdown-toggle {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad;
}
.btn-default:active:hover, .btn-default:active:focus, .btn-default:active.focus, .btn-default.active:hover, .btn-default.active:focus, .btn-default.active.focus, .open > .btn-default.dropdown-toggle:hover, .open > .btn-default.dropdown-toggle:focus, .open > .btn-default.dropdown-toggle.focus {
  color: #333;
  background-color: #d4d4d4;
  border-color: #8c8c8c;
}
.btn-default:active, .btn-default.active, .open > .btn-default.dropdown-toggle {
  background-image: none;
}
.btn-default.disabled, .btn-default.disabled:hover, .btn-default.disabled:focus, .btn-default.disabled.focus, .btn-default.disabled:active, .btn-default.disabled.active, .btn-default[disabled], .btn-default[disabled]:hover, .btn-default[disabled]:focus, .btn-default[disabled].focus, .btn-default[disabled]:active, .btn-default[disabled].active, fieldset[disabled] .btn-default, fieldset[disabled] .btn-default:hover, fieldset[disabled] .btn-default:focus, fieldset[disabled] .btn-default.focus, fieldset[disabled] .btn-default:active, fieldset[disabled] .btn-default.active {
  background-color: #fff;
  border-color: #ccc;
}
.btn-default .badge {
  color: #fff;
  background-color: #333;
}

.btn-primary {
  color: #fff;
  background-color: #337ab7;
  border-color: #2e6da4;
}
.btn-primary:focus, .btn-primary.focus {
  color: #fff;
  background-color: #286090;
  border-color: #122b40;
}
.btn-primary:hover {
  color: #fff;
  background-color: #286090;
  border-color: #204d74;
}
.btn-primary:active, .btn-primary.active, .open > .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: #286090;
  border-color: #204d74;
}
.btn-primary:active:hover, .btn-primary:active:focus, .btn-primary:active.focus, .btn-primary.active:hover, .btn-primary.active:focus, .btn-primary.active.focus, .open > .btn-primary.dropdown-toggle:hover, .open > .btn-primary.dropdown-toggle:focus, .open > .btn-primary.dropdown-toggle.focus {
  color: #fff;
  background-color: #204d74;
  border-color: #122b40;
}
.btn-primary:active, .btn-primary.active, .open > .btn-primary.dropdown-toggle {
  background-image: none;
}
.btn-primary.disabled, .btn-primary.disabled:hover, .btn-primary.disabled:focus, .btn-primary.disabled.focus, .btn-primary.disabled:active, .btn-primary.disabled.active, .btn-primary[disabled], .btn-primary[disabled]:hover, .btn-primary[disabled]:focus, .btn-primary[disabled].focus, .btn-primary[disabled]:active, .btn-primary[disabled].active, fieldset[disabled] .btn-primary, fieldset[disabled] .btn-primary:hover, fieldset[disabled] .btn-primary:focus, fieldset[disabled] .btn-primary.focus, fieldset[disabled] .btn-primary:active, fieldset[disabled] .btn-primary.active {
  background-color: #337ab7;
  border-color: #2e6da4;
}
.btn-primary .badge {
  color: #337ab7;
  background-color: #fff;
}

.btn-success {
  color: #fff;
  background-color: #5cb85c;
  border-color: #4cae4c;
}
.btn-success:focus, .btn-success.focus {
  color: #fff;
  background-color: #449d44;
  border-color: #255625;
}
.btn-success:hover {
  color: #fff;
  background-color: #449d44;
  border-color: #398439;
}
.btn-success:active, .btn-success.active, .open > .btn-success.dropdown-toggle {
  color: #fff;
  background-color: #449d44;
  border-color: #398439;
}
.btn-success:active:hover, .btn-success:active:focus, .btn-success:active.focus, .btn-success.active:hover, .btn-success.active:focus, .btn-success.active.focus, .open > .btn-success.dropdown-toggle:hover, .open > .btn-success.dropdown-toggle:focus, .open > .btn-success.dropdown-toggle.focus {
  color: #fff;
  background-color: #398439;
  border-color: #255625;
}
.btn-success:active, .btn-success.active, .open > .btn-success.dropdown-toggle {
  background-image: none;
}
.btn-success.disabled, .btn-success.disabled:hover, .btn-success.disabled:focus, .btn-success.disabled.focus, .btn-success.disabled:active, .btn-success.disabled.active, .btn-success[disabled], .btn-success[disabled]:hover, .btn-success[disabled]:focus, .btn-success[disabled].focus, .btn-success[disabled]:active, .btn-success[disabled].active, fieldset[disabled] .btn-success, fieldset[disabled] .btn-success:hover, fieldset[disabled] .btn-success:focus, fieldset[disabled] .btn-success.focus, fieldset[disabled] .btn-success:active, fieldset[disabled] .btn-success.active {
  background-color: #5cb85c;
  border-color: #4cae4c;
}
.btn-success .badge {
  color: #5cb85c;
  background-color: #fff;
}

.btn-info {
  color: #fff;
  background-color: #5bc0de;
  border-color: #46b8da;
}
.btn-info:focus, .btn-info.focus {
  color: #fff;
  background-color: #31b0d5;
  border-color: #1b6d85;
}
.btn-info:hover {
  color: #fff;
  background-color: #31b0d5;
  border-color: #269abc;
}
.btn-info:active, .btn-info.active, .open > .btn-info.dropdown-toggle {
  color: #fff;
  background-color: #31b0d5;
  border-color: #269abc;
}
.btn-info:active:hover, .btn-info:active:focus, .btn-info:active.focus, .btn-info.active:hover, .btn-info.active:focus, .btn-info.active.focus, .open > .btn-info.dropdown-toggle:hover, .open > .btn-info.dropdown-toggle:focus, .open > .btn-info.dropdown-toggle.focus {
  color: #fff;
  background-color: #269abc;
  border-color: #1b6d85;
}
.btn-info:active, .btn-info.active, .open > .btn-info.dropdown-toggle {
  background-image: none;
}
.btn-info.disabled, .btn-info.disabled:hover, .btn-info.disabled:focus, .btn-info.disabled.focus, .btn-info.disabled:active, .btn-info.disabled.active, .btn-info[disabled], .btn-info[disabled]:hover, .btn-info[disabled]:focus, .btn-info[disabled].focus, .btn-info[disabled]:active, .btn-info[disabled].active, fieldset[disabled] .btn-info, fieldset[disabled] .btn-info:hover, fieldset[disabled] .btn-info:focus, fieldset[disabled] .btn-info.focus, fieldset[disabled] .btn-info:active, fieldset[disabled] .btn-info.active {
  background-color: #5bc0de;
  border-color: #46b8da;
}
.btn-info .badge {
  color: #5bc0de;
  background-color: #fff;
}

.btn-warning {
  color: #fff;
  background-color: #f0ad4e;
  border-color: #eea236;
}
.btn-warning:focus, .btn-warning.focus {
  color: #fff;
  background-color: #ec971f;
  border-color: #985f0d;
}
.btn-warning:hover {
  color: #fff;
  background-color: #ec971f;
  border-color: #d58512;
}
.btn-warning:active, .btn-warning.active, .open > .btn-warning.dropdown-toggle {
  color: #fff;
  background-color: #ec971f;
  border-color: #d58512;
}
.btn-warning:active:hover, .btn-warning:active:focus, .btn-warning:active.focus, .btn-warning.active:hover, .btn-warning.active:focus, .btn-warning.active.focus, .open > .btn-warning.dropdown-toggle:hover, .open > .btn-warning.dropdown-toggle:focus, .open > .btn-warning.dropdown-toggle.focus {
  color: #fff;
  background-color: #d58512;
  border-color: #985f0d;
}
.btn-warning:active, .btn-warning.active, .open > .btn-warning.dropdown-toggle {
  background-image: none;
}
.btn-warning.disabled, .btn-warning.disabled:hover, .btn-warning.disabled:focus, .btn-warning.disabled.focus, .btn-warning.disabled:active, .btn-warning.disabled.active, .btn-warning[disabled], .btn-warning[disabled]:hover, .btn-warning[disabled]:focus, .btn-warning[disabled].focus, .btn-warning[disabled]:active, .btn-warning[disabled].active, fieldset[disabled] .btn-warning, fieldset[disabled] .btn-warning:hover, fieldset[disabled] .btn-warning:focus, fieldset[disabled] .btn-warning.focus, fieldset[disabled] .btn-warning:active, fieldset[disabled] .btn-warning.active {
  background-color: #f0ad4e;
  border-color: #eea236;
}
.btn-warning .badge {
  color: #f0ad4e;
  background-color: #fff;
}

.btn-danger {
  color: #fff;
  background-color: #d9534f;
  border-color: #d43f3a;
}
.btn-danger:focus, .btn-danger.focus {
  color: #fff;
  background-color: #c9302c;
  border-color: #761c19;
}
.btn-danger:hover {
  color: #fff;
  background-color: #c9302c;
  border-color: #ac2925;
}
.btn-danger:active, .btn-danger.active, .open > .btn-danger.dropdown-toggle {
  color: #fff;
  background-color: #c9302c;
  border-color: #ac2925;
}
.btn-danger:active:hover, .btn-danger:active:focus, .btn-danger:active.focus, .btn-danger.active:hover, .btn-danger.active:focus, .btn-danger.active.focus, .open > .btn-danger.dropdown-toggle:hover, .open > .btn-danger.dropdown-toggle:focus, .open > .btn-danger.dropdown-toggle.focus {
  color: #fff;
  background-color: #ac2925;
  border-color: #761c19;
}
.btn-danger:active, .btn-danger.active, .open > .btn-danger.dropdown-toggle {
  background-image: none;
}
.btn-danger.disabled, .btn-danger.disabled:hover, .btn-danger.disabled:focus, .btn-danger.disabled.focus, .btn-danger.disabled:active, .btn-danger.disabled.active, .btn-danger[disabled], .btn-danger[disabled]:hover, .btn-danger[disabled]:focus, .btn-danger[disabled].focus, .btn-danger[disabled]:active, .btn-danger[disabled].active, fieldset[disabled] .btn-danger, fieldset[disabled] .btn-danger:hover, fieldset[disabled] .btn-danger:focus, fieldset[disabled] .btn-danger.focus, fieldset[disabled] .btn-danger:active, fieldset[disabled] .btn-danger.active {
  background-color: #d9534f;
  border-color: #d43f3a;
}
.btn-danger .badge {
  color: #d9534f;
  background-color: #fff;
}

.btn-link {
  color: #337ab7;
  font-weight: normal;
  border-radius: 0;
}
.btn-link, .btn-link:active, .btn-link.active, .btn-link[disabled], fieldset[disabled] .btn-link {
  background-color: transparent;
  -webkit-box-shadow: none;
  box-shadow: none;
}
.btn-link, .btn-link:hover, .btn-link:focus, .btn-link:active {
  border-color: transparent;
}
.btn-link:hover, .btn-link:focus {
  color: #23527c;
  text-decoration: underline;
  background-color: transparent;
}
.btn-link[disabled]:hover, .btn-link[disabled]:focus, fieldset[disabled] .btn-link:hover, fieldset[disabled] .btn-link:focus {
  color: #777777;
  text-decoration: none;
}

.btn-lg, .btn-group-lg > .btn {
  padding: 10px 20px;
  font-size: 18px;
  line-height: 1.33333;
  border-radius: 6px;
}

.btn-sm, .btn-group-sm > .btn {
  padding: 5px 20px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}

.btn-xs, .btn-group-xs > .btn {
  padding: 1px 5px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}

.btn-block {
  display: block;
  width: 100%;
}

.btn-block + .btn-block {
  margin-top: 5px;
}

input[type="submit"].btn-block,
input[type="reset"].btn-block,
input[type="button"].btn-block {
  width: 100%;
}

.fade {
  opacity: 0;
  -webkit-transition: opacity 0.15s linear;
  -o-transition: opacity 0.15s linear;
  transition: opacity 0.15s linear;
}
.fade.in {
  opacity: 1;
}

.collapse {
  display: none;
}
.collapse.in {
  display: block;
}

tr.collapse.in {
  display: table-row;
}

tbody.collapse.in {
  display: table-row-group;
}

.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  -webkit-transition-property: height, visibility;
  transition-property: height, visibility;
  -webkit-transition-duration: 0.35s;
  transition-duration: 0.35s;
  -webkit-transition-timing-function: ease;
  transition-timing-function: ease;
}

.caret {
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: 2px;
  vertical-align: middle;
  border-top: 4px dashed;
  border-top: 4px solid \9;
  border-right: 4px solid transparent;
  border-left: 4px solid transparent;
}

.dropup,
.dropdown {
  position: relative;
}

.dropdown-toggle:focus {
  outline: 0;
}

.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 160px;
  padding: 5px 0;
  margin: 2px 0 0;
  list-style: none;
  font-size: 14px;
  text-align: left;
  background-color: #fff;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 4px;
  -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  background-clip: padding-box;
}
.dropdown-menu.pull-right {
  right: 0;
  left: auto;
}
.dropdown-menu .divider {
  height: 1px;
  margin: 9px 0;
  overflow: hidden;
  background-color: #e5e5e5;
}
.dropdown-menu > li > a {
  display: block;
  padding: 3px 20px;
  clear: both;
  font-weight: normal;
  line-height: 1.42857;
  color: #333333;
  white-space: nowrap;
}

.dropdown-menu > li > a:hover, .dropdown-menu > li > a:focus {
  text-decoration: none;
  color: #262626;
  background-color: #f5f5f5;
}

.dropdown-menu > .active > a, .dropdown-menu > .active > a:hover, .dropdown-menu > .active > a:focus {
  color: #fff;
  text-decoration: none;
  outline: 0;
  background-color: #337ab7;
}

.dropdown-menu > .disabled > a, .dropdown-menu > .disabled > a:hover, .dropdown-menu > .disabled > a:focus {
  color: #777777;
}
.dropdown-menu > .disabled > a:hover, .dropdown-menu > .disabled > a:focus {
  text-decoration: none;
  background-color: transparent;
  background-image: none;
  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
  cursor: not-allowed;
}

.open > .dropdown-menu {
  display: block;
}
.open > a {
  outline: 0;
}

.dropdown-menu-right {
  left: auto;
  right: 0;
}

.dropdown-menu-left {
  left: 0;
  right: auto;
}

.dropdown-header {
  display: block;
  padding: 3px 20px;
  font-size: 12px;
  line-height: 1.42857;
  color: #777777;
  white-space: nowrap;
}

.dropdown-backdrop {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  z-index: 990;
}

.pull-right > .dropdown-menu {
  right: 0;
  left: auto;
}

.dropup .caret,
.navbar-fixed-bottom .dropdown .caret {
  border-top: 0;
  border-bottom: 4px dashed;
  border-bottom: 4px solid \9;
  content: "";
}
.dropup .dropdown-menu,
.navbar-fixed-bottom .dropdown .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-bottom: 2px;
}

@media (min-width: 768px) {
  .navbar-right .dropdown-menu {
    right: 0;
    left: auto;
  }
  .navbar-right .dropdown-menu-left {
    left: 0;
    right: auto;
  }
}
.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-block;
  vertical-align: middle;
}
.btn-group > .btn,
.btn-group-vertical > .btn {
  position: relative;
  float: left;
}
.btn-group > .btn:hover, .btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active,
.btn-group-vertical > .btn:hover,
.btn-group-vertical > .btn:focus,
.btn-group-vertical > .btn:active,
.btn-group-vertical > .btn.active {
  z-index: 2;
}

.btn-group .btn + .btn,
.btn-group .btn + .btn-group,
.btn-group .btn-group + .btn,
.btn-group .btn-group + .btn-group {
  margin-left: -1px;
}

.btn-toolbar {
  margin-left: -5px;
}
.btn-toolbar:before, .btn-toolbar:after {
  content: " ";
  display: table;
}
.btn-toolbar:after {
  clear: both;
}
.btn-toolbar .btn,
.btn-toolbar .btn-group,
.btn-toolbar .input-group {
  float: left;
}
.btn-toolbar > .btn,
.btn-toolbar > .btn-group,
.btn-toolbar > .input-group {
  margin-left: 5px;
}

.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {
  border-radius: 0;
}

.btn-group > .btn:first-child {
  margin-left: 0;
}
.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}

.btn-group > .btn:last-child:not(:first-child),
.btn-group > .dropdown-toggle:not(:first-child) {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
}

.btn-group > .btn-group {
  float: left;
}

.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {
  border-radius: 0;
}

.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}

.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
}

.btn-group .dropdown-toggle:active,
.btn-group.open .dropdown-toggle {
  outline: 0;
}

.btn-group > .btn + .dropdown-toggle {
  padding-left: 8px;
  padding-right: 8px;
}

.btn-group > .btn-lg + .dropdown-toggle, .btn-group-lg.btn-group > .btn + .dropdown-toggle {
  padding-left: 12px;
  padding-right: 12px;
}

.btn-group.open .dropdown-toggle {
  -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}
.btn-group.open .dropdown-toggle.btn-link {
  -webkit-box-shadow: none;
  box-shadow: none;
}

.btn .caret {
  margin-left: 0;
}

.btn-lg .caret, .btn-group-lg > .btn .caret {
  border-width: 5px 5px 0;
  border-bottom-width: 0;
}

.dropup .btn-lg .caret, .dropup .btn-group-lg > .btn .caret {
  border-width: 0 5px 5px;
}

.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group,
.btn-group-vertical > .btn-group > .btn {
  display: block;
  float: none;
  width: 100%;
  max-width: 100%;
}
.btn-group-vertical > .btn-group:before, .btn-group-vertical > .btn-group:after {
  content: " ";
  display: table;
}
.btn-group-vertical > .btn-group:after {
  clear: both;
}
.btn-group-vertical > .btn-group > .btn {
  float: none;
}
.btn-group-vertical > .btn + .btn,
.btn-group-vertical > .btn + .btn-group,
.btn-group-vertical > .btn-group + .btn,
.btn-group-vertical > .btn-group + .btn-group {
  margin-top: -1px;
  margin-left: 0;
}

.btn-group-vertical > .btn:not(:first-child):not(:last-child) {
  border-radius: 0;
}
.btn-group-vertical > .btn:first-child:not(:last-child) {
  border-top-right-radius: 4px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.btn-group-vertical > .btn:last-child:not(:first-child) {
  border-bottom-left-radius: 4px;
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}

.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {
  border-radius: 0;
}

.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}

.btn-group-justified {
  display: table;
  width: 100%;
  table-layout: fixed;
  border-collapse: separate;
}
.btn-group-justified > .btn,
.btn-group-justified > .btn-group {
  float: none;
  display: table-cell;
  width: 1%;
}
.btn-group-justified > .btn-group .btn {
  width: 100%;
}
.btn-group-justified > .btn-group .dropdown-menu {
  left: auto;
}

[data-toggle="buttons"] > .btn input[type="radio"],
[data-toggle="buttons"] > .btn input[type="checkbox"],
[data-toggle="buttons"] > .btn-group > .btn input[type="radio"],
[data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"] {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none;
}

.input-group {
  position: relative;
  display: table;
  border-collapse: separate;
}
.input-group[class*="col-"] {
  float: none;
  padding-left: 0;
  padding-right: 0;
}
.input-group .form-control {
  position: relative;
  z-index: 2;
  float: left;
  width: 100%;
  margin-bottom: 0;
}

.input-group-addon,
.input-group-btn,
.input-group .form-control {
  display: table-cell;
}
.input-group-addon:not(:first-child):not(:last-child),
.input-group-btn:not(:first-child):not(:last-child),
.input-group .form-control:not(:first-child):not(:last-child) {
  border-radius: 0;
}

.input-group-addon,
.input-group-btn {
  width: 1%;
  white-space: nowrap;
  vertical-align: middle;
}

.input-group-addon {
  padding: 10px 20px;
  font-size: 14px;
  font-weight: normal;
  line-height: 1;
  color: #555555;
  text-align: center;
  background-color: #eeeeee;
  border: 1px solid #ccc;
  border-radius: 4px;
}
.input-group-addon.input-sm,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .input-group-addon.btn {
  padding: 5px 20px;
  font-size: 12px;
  border-radius: 3px;
}
.input-group-addon.input-lg,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .input-group-addon.btn {
  padding: 10px 20px;
  font-size: 18px;
  border-radius: 6px;
}
.input-group-addon input[type="radio"],
.input-group-addon input[type="checkbox"] {
  margin-top: 0;
}

.input-group .form-control:first-child,
.input-group-addon:first-child,
.input-group-btn:first-child > .btn,
.input-group-btn:first-child > .btn-group > .btn,
.input-group-btn:first-child > .dropdown-toggle,
.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}

.input-group-addon:first-child {
  border-right: 0;
}

.input-group .form-control:last-child,
.input-group-addon:last-child,
.input-group-btn:last-child > .btn,
.input-group-btn:last-child > .btn-group > .btn,
.input-group-btn:last-child > .dropdown-toggle,
.input-group-btn:first-child > .btn:not(:first-child),
.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
}

.input-group-addon:last-child {
  border-left: 0;
}

.input-group-btn {
  position: relative;
  font-size: 0;
  white-space: nowrap;
}
.input-group-btn > .btn {
  position: relative;
}
.input-group-btn > .btn + .btn {
  margin-left: -1px;
}
.input-group-btn > .btn:hover, .input-group-btn > .btn:focus, .input-group-btn > .btn:active {
  z-index: 2;
}
.input-group-btn:first-child > .btn,
.input-group-btn:first-child > .btn-group {
  margin-right: -1px;
}
.input-group-btn:last-child > .btn,
.input-group-btn:last-child > .btn-group {
  z-index: 2;
  margin-left: -1px;
}

.nav {
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}
.nav:before, .nav:after {
  content: " ";
  display: table;
}
.nav:after {
  clear: both;
}
.nav > li {
  position: relative;
  display: block;
}
.nav > li > a {
  position: relative;
  display: block;
  padding: 10px 15px;
}
.nav > li > a:hover, .nav > li > a:focus {
  text-decoration: none;
  background-color: #eeeeee;
}
.nav > li.disabled > a {
  color: #777777;
}
.nav > li.disabled > a:hover, .nav > li.disabled > a:focus {
  color: #777777;
  text-decoration: none;
  background-color: transparent;
  cursor: not-allowed;
}
.nav .open > a, .nav .open > a:hover, .nav .open > a:focus {
  background-color: #eeeeee;
  border-color: #337ab7;
}
.nav .nav-divider {
  height: 1px;
  margin: 9px 0;
  overflow: hidden;
  background-color: #e5e5e5;
}
.nav > li > a > img {
  max-width: none;
}

.nav-tabs {
  border-bottom: 1px solid #ddd;
}
.nav-tabs > li {
  float: left;
  margin-bottom: -1px;
}
.nav-tabs > li > a {
  margin-right: 2px;
  line-height: 1.42857;
  border: 1px solid transparent;
  border-radius: 4px 4px 0 0;
}
.nav-tabs > li > a:hover {
  border-color: #eeeeee #eeeeee #ddd;
}
.nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus {
  color: #555555;
  background-color: #fff;
  border: 1px solid #ddd;
  border-bottom-color: transparent;
  cursor: default;
}

.nav-pills > li {
  float: left;
}
.nav-pills > li > a {
  border-radius: 4px;
}
.nav-pills > li + li {
  margin-left: 2px;
}
.nav-pills > li.active > a, .nav-pills > li.active > a:hover, .nav-pills > li.active > a:focus {
  color: #fff;
  background-color: #337ab7;
}

.nav-stacked > li {
  float: none;
}
.nav-stacked > li + li {
  margin-top: 2px;
  margin-left: 0;
}

.nav-justified, .nav-tabs.nav-justified {
  width: 100%;
}
.nav-justified > li, .nav-tabs.nav-justified > li {
  float: none;
}
.nav-justified > li > a, .nav-tabs.nav-justified > li > a {
  text-align: center;
  margin-bottom: 5px;
}
.nav-justified > .dropdown .dropdown-menu {
  top: auto;
  left: auto;
}
@media (min-width: 768px) {
  .nav-justified > li, .nav-tabs.nav-justified > li {
    display: table-cell;
    width: 1%;
  }
  .nav-justified > li > a, .nav-tabs.nav-justified > li > a {
    margin-bottom: 0;
  }
}

.nav-tabs-justified, .nav-tabs.nav-justified {
  border-bottom: 0;
}
.nav-tabs-justified > li > a, .nav-tabs.nav-justified > li > a {
  margin-right: 0;
  border-radius: 4px;
}
.nav-tabs-justified > .active > a, .nav-tabs.nav-justified > .active > a,
.nav-tabs-justified > .active > a:hover,
.nav-tabs.nav-justified > .active > a:hover,
.nav-tabs-justified > .active > a:focus,
.nav-tabs.nav-justified > .active > a:focus {
  border: 1px solid #ddd;
}
@media (min-width: 768px) {
  .nav-tabs-justified > li > a, .nav-tabs.nav-justified > li > a {
    border-bottom: 1px solid #ddd;
    border-radius: 4px 4px 0 0;
  }
  .nav-tabs-justified > .active > a, .nav-tabs.nav-justified > .active > a,
  .nav-tabs-justified > .active > a:hover,
  .nav-tabs.nav-justified > .active > a:hover,
  .nav-tabs-justified > .active > a:focus,
  .nav-tabs.nav-justified > .active > a:focus {
    border-bottom-color: #fff;
  }
}

.tab-content > .tab-pane {
  display: none;
}
.tab-content > .active {
  display: block;
}

.nav-tabs .dropdown-menu {
  margin-top: -1px;
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}

.navbar {
  position: relative;
  min-height: 55px;
  margin-bottom: 20px;
  border: 1px solid transparent;
}
.navbar:before, .navbar:after {
  content: " ";
  display: table;
}
.navbar:after {
  clear: both;
}
@media (min-width: 768px) {
  .navbar {
    border-radius: 4px;
  }
}

.navbar-header:before, .navbar-header:after {
  content: " ";
  display: table;
}
.navbar-header:after {
  clear: both;
}
@media (min-width: 768px) {
  .navbar-header {
    float: left;
  }
}

.navbar-collapse {
  overflow-x: visible;
  padding-right: 15px;
  padding-left: 15px;
  border-top: 1px solid transparent;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
  -webkit-overflow-scrolling: touch;
}
.navbar-collapse:before, .navbar-collapse:after {
  content: " ";
  display: table;
}
.navbar-collapse:after {
  clear: both;
}
.navbar-collapse.in {
  overflow-y: auto;
}
@media (min-width: 768px) {
  .navbar-collapse {
    width: auto;
    border-top: 0;
    box-shadow: none;
  }
  .navbar-collapse.collapse {
    display: block !important;
    height: auto !important;
    padding-bottom: 0;
    overflow: visible !important;
  }
  .navbar-collapse.in {
    overflow-y: visible;
  }
  .navbar-fixed-top .navbar-collapse, .navbar-static-top .navbar-collapse, .navbar-fixed-bottom .navbar-collapse {
    padding-left: 0;
    padding-right: 0;
  }
}

.navbar-fixed-top .navbar-collapse,
.navbar-fixed-bottom .navbar-collapse {
  max-height: 340px;
}
@media (max-device-width: 480px) and (orientation: landscape) {
  .navbar-fixed-top .navbar-collapse,
  .navbar-fixed-bottom .navbar-collapse {
    max-height: 200px;
  }
}

.container > .navbar-header,
.container > .navbar-collapse,
.container-fluid > .navbar-header,
.container-fluid > .navbar-collapse {
  margin-right: -15px;
  margin-left: -15px;
}
@media (min-width: 768px) {
  .container > .navbar-header,
  .container > .navbar-collapse,
  .container-fluid > .navbar-header,
  .container-fluid > .navbar-collapse {
    margin-right: 0;
    margin-left: 0;
  }
}

.navbar-static-top {
  z-index: 1000;
  border-width: 0 0 1px;
}
@media (min-width: 768px) {
  .navbar-static-top {
    border-radius: 0;
  }
}

.navbar-fixed-top,
.navbar-fixed-bottom {
  position: fixed;
  right: 0;
  left: 0;
  z-index: 1030;
}
@media (min-width: 768px) {
  .navbar-fixed-top,
  .navbar-fixed-bottom {
    border-radius: 0;
  }
}

.navbar-fixed-top {
  top: 0;
  border-width: 0 0 1px;
}

.navbar-fixed-bottom {
  bottom: 0;
  margin-bottom: 0;
  border-width: 1px 0 0;
}

.navbar-brand {
  float: left;
  padding: 17.5px 15px;
  font-size: 18px;
  line-height: 20px;
  height: 55px;
}
.navbar-brand:hover, .navbar-brand:focus {
  text-decoration: none;
}
.navbar-brand > img {
  display: block;
}
@media (min-width: 768px) {
  .navbar > .container .navbar-brand, .navbar > .container-fluid .navbar-brand {
    margin-left: -15px;
  }
}

.navbar-toggle {
  position: relative;
  float: right;
  margin-right: 15px;
  padding: 9px 10px;
  margin-top: 10.5px;
  margin-bottom: 10.5px;
  background-color: transparent;
  background-image: none;
  border: 1px solid transparent;
  border-radius: 4px;
}
.navbar-toggle:focus {
  outline: 0;
}
.navbar-toggle .icon-bar {
  display: block;
  width: 22px;
  height: 2px;
  border-radius: 1px;
}
.navbar-toggle .icon-bar + .icon-bar {
  margin-top: 4px;
}
@media (min-width: 768px) {
  .navbar-toggle {
    display: none;
  }
}

.navbar-nav {
  margin: 8.75px -15px;
}
.navbar-nav > li > a {
  padding-top: 10px;
  padding-bottom: 10px;
  line-height: 20px;
}
@media (max-width: 767px) {
  .navbar-nav .open .dropdown-menu {
    position: static;
    float: none;
    width: auto;
    margin-top: 0;
    background-color: transparent;
    border: 0;
    box-shadow: none;
  }
  .navbar-nav .open .dropdown-menu > li > a,
  .navbar-nav .open .dropdown-menu .dropdown-header {
    padding: 5px 15px 5px 25px;
  }
  .navbar-nav .open .dropdown-menu > li > a {
    line-height: 20px;
  }
  .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-nav .open .dropdown-menu > li > a:focus {
    background-image: none;
  }
}
@media (min-width: 768px) {
  .navbar-nav {
    float: left;
    margin: 0;
  }
  .navbar-nav > li {
    float: left;
  }
  .navbar-nav > li > a {
    padding-top: 17.5px;
    padding-bottom: 17.5px;
  }
}

.navbar-form {
  margin-left: -15px;
  margin-right: -15px;
  padding: 10px 15px;
  border-top: 1px solid transparent;
  border-bottom: 1px solid transparent;
  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
  margin-top: 6.5px;
  margin-bottom: 6.5px;
}
@media (min-width: 768px) {
  .navbar-form .form-group {
    display: inline-block;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .navbar-form .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle;
  }
  .navbar-form .form-control-static {
    display: inline-block;
  }
  .navbar-form .input-group {
    display: inline-table;
    vertical-align: middle;
  }
  .navbar-form .input-group .input-group-addon,
  .navbar-form .input-group .input-group-btn,
  .navbar-form .input-group .form-control {
    width: auto;
  }
  .navbar-form .input-group > .form-control {
    width: 100%;
  }
  .navbar-form .control-label {
    margin-bottom: 0;
    vertical-align: middle;
  }
  .navbar-form .radio,
  .navbar-form .checkbox {
    display: inline-block;
    margin-top: 0;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .navbar-form .radio label,
  .navbar-form .checkbox label {
    padding-left: 0;
  }
  .navbar-form .radio input[type="radio"],
  .navbar-form .checkbox input[type="checkbox"] {
    position: relative;
    margin-left: 0;
  }
  .navbar-form .has-feedback .form-control-feedback {
    top: 0;
  }
}
@media (max-width: 767px) {
  .navbar-form .form-group {
    margin-bottom: 5px;
  }
  .navbar-form .form-group:last-child {
    margin-bottom: 0;
  }
}
@media (min-width: 768px) {
  .navbar-form {
    width: auto;
    border: 0;
    margin-left: 0;
    margin-right: 0;
    padding-top: 0;
    padding-bottom: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
  }
}

.navbar-nav > li > .dropdown-menu {
  margin-top: 0;
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}

.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {
  margin-bottom: 0;
  border-top-right-radius: 4px;
  border-top-left-radius: 4px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.navbar-btn {
  margin-top: 6.5px;
  margin-bottom: 6.5px;
}
.navbar-btn.btn-sm, .btn-group-sm > .navbar-btn.btn {
  margin-top: 12.5px;
  margin-bottom: 12.5px;
}
.navbar-btn.btn-xs, .btn-group-xs > .navbar-btn.btn {
  margin-top: 16.5px;
  margin-bottom: 16.5px;
}

.navbar-text {
  margin-top: 17.5px;
  margin-bottom: 17.5px;
}
@media (min-width: 768px) {
  .navbar-text {
    float: left;
    margin-left: 15px;
    margin-right: 15px;
  }
}

@media (min-width: 768px) {
  .navbar-left {
    float: left !important;
  }

  .navbar-right {
    float: right !important;
    margin-right: -15px;
  }
  .navbar-right ~ .navbar-right {
    margin-right: 0;
  }
}
.navbar-default {
  background-color: #f8f8f8;
  border-color: #e7e7e7;
}
.navbar-default .navbar-brand {
  color: #777;
}
.navbar-default .navbar-brand:hover, .navbar-default .navbar-brand:focus {
  color: #5e5e5e;
  background-color: transparent;
}
.navbar-default .navbar-text {
  color: #777;
}
.navbar-default .navbar-nav > li > a {
  color: #777;
}
.navbar-default .navbar-nav > li > a:hover, .navbar-default .navbar-nav > li > a:focus {
  color: #333;
  background-color: transparent;
}
.navbar-default .navbar-nav > .active > a, .navbar-default .navbar-nav > .active > a:hover, .navbar-default .navbar-nav > .active > a:focus {
  color: #555;
  background-color: #e7e7e7;
}
.navbar-default .navbar-nav > .disabled > a, .navbar-default .navbar-nav > .disabled > a:hover, .navbar-default .navbar-nav > .disabled > a:focus {
  color: #ccc;
  background-color: transparent;
}
.navbar-default .navbar-toggle {
  border-color: #ddd;
}
.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {
  background-color: #ddd;
}
.navbar-default .navbar-toggle .icon-bar {
  background-color: #888;
}
.navbar-default .navbar-collapse,
.navbar-default .navbar-form {
  border-color: #e7e7e7;
}
.navbar-default .navbar-nav > .open > a, .navbar-default .navbar-nav > .open > a:hover, .navbar-default .navbar-nav > .open > a:focus {
  background-color: #e7e7e7;
  color: #555;
}
@media (max-width: 767px) {
  .navbar-default .navbar-nav .open .dropdown-menu > li > a {
    color: #777;
  }
  .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {
    color: #333;
    background-color: transparent;
  }
  .navbar-default .navbar-nav .open .dropdown-menu > .active > a, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {
    color: #555;
    background-color: #e7e7e7;
  }
  .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a, .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus {
    color: #ccc;
    background-color: transparent;
  }
}
.navbar-default .navbar-link {
  color: #777;
}
.navbar-default .navbar-link:hover {
  color: #333;
}
.navbar-default .btn-link {
  color: #777;
}
.navbar-default .btn-link:hover, .navbar-default .btn-link:focus {
  color: #333;
}
.navbar-default .btn-link[disabled]:hover, .navbar-default .btn-link[disabled]:focus, fieldset[disabled] .navbar-default .btn-link:hover, fieldset[disabled] .navbar-default .btn-link:focus {
  color: #ccc;
}

.navbar-inverse {
  background-color: #222;
  border-color: #090909;
}
.navbar-inverse .navbar-brand {
  color: #9d9d9d;
}
.navbar-inverse .navbar-brand:hover, .navbar-inverse .navbar-brand:focus {
  color: #fff;
  background-color: transparent;
}
.navbar-inverse .navbar-text {
  color: #9d9d9d;
}
.navbar-inverse .navbar-nav > li > a {
  color: #9d9d9d;
}
.navbar-inverse .navbar-nav > li > a:hover, .navbar-inverse .navbar-nav > li > a:focus {
  color: #fff;
  background-color: transparent;
}
.navbar-inverse .navbar-nav > .active > a, .navbar-inverse .navbar-nav > .active > a:hover, .navbar-inverse .navbar-nav > .active > a:focus {
  color: #fff;
  background-color: #090909;
}
.navbar-inverse .navbar-nav > .disabled > a, .navbar-inverse .navbar-nav > .disabled > a:hover, .navbar-inverse .navbar-nav > .disabled > a:focus {
  color: #444;
  background-color: transparent;
}
.navbar-inverse .navbar-toggle {
  border-color: #333;
}
.navbar-inverse .navbar-toggle:hover, .navbar-inverse .navbar-toggle:focus {
  background-color: #333;
}
.navbar-inverse .navbar-toggle .icon-bar {
  background-color: #fff;
}
.navbar-inverse .navbar-collapse,
.navbar-inverse .navbar-form {
  border-color: #101010;
}
.navbar-inverse .navbar-nav > .open > a, .navbar-inverse .navbar-nav > .open > a:hover, .navbar-inverse .navbar-nav > .open > a:focus {
  background-color: #090909;
  color: #fff;
}
@media (max-width: 767px) {
  .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header {
    border-color: #090909;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu .divider {
    background-color: #090909;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu > li > a {
    color: #9d9d9d;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus {
    color: #fff;
    background-color: transparent;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a, .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus {
    color: #fff;
    background-color: #090909;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a, .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus {
    color: #444;
    background-color: transparent;
  }
}
.navbar-inverse .navbar-link {
  color: #9d9d9d;
}
.navbar-inverse .navbar-link:hover {
  color: #fff;
}
.navbar-inverse .btn-link {
  color: #9d9d9d;
}
.navbar-inverse .btn-link:hover, .navbar-inverse .btn-link:focus {
  color: #fff;
}
.navbar-inverse .btn-link[disabled]:hover, .navbar-inverse .btn-link[disabled]:focus, fieldset[disabled] .navbar-inverse .btn-link:hover, fieldset[disabled] .navbar-inverse .btn-link:focus {
  color: #444;
}

.breadcrumb {
  padding: 8px 15px;
  margin-bottom: 20px;
  list-style: none;
  background-color: #f5f5f5;
  border-radius: 4px;
}
.breadcrumb > li {
  display: inline-block;
}
.breadcrumb > li + li:before {
  content: "/ ";
  padding: 0 5px;
  color: #ccc;
}
.breadcrumb > .active {
  color: #777777;
}

.pagination {
  display: inline-block;
  padding-left: 0;
  margin: 20px 0;
  border-radius: 4px;
}
.pagination > li {
  display: inline;
}
.pagination > li > a,
.pagination > li > span {
  position: relative;
  float: left;
  padding: 10px 20px;
  line-height: 1.42857;
  text-decoration: none;
  color: #337ab7;
  background-color: #fff;
  border: 1px solid #ddd;
  margin-left: -1px;
}
.pagination > li:first-child > a,
.pagination > li:first-child > span {
  margin-left: 0;
  border-bottom-left-radius: 4px;
  border-top-left-radius: 4px;
}
.pagination > li:last-child > a,
.pagination > li:last-child > span {
  border-bottom-right-radius: 4px;
  border-top-right-radius: 4px;
}
.pagination > li > a:hover, .pagination > li > a:focus,
.pagination > li > span:hover,
.pagination > li > span:focus {
  z-index: 3;
  color: #23527c;
  background-color: #eeeeee;
  border-color: #ddd;
}
.pagination > .active > a, .pagination > .active > a:hover, .pagination > .active > a:focus,
.pagination > .active > span,
.pagination > .active > span:hover,
.pagination > .active > span:focus {
  z-index: 2;
  color: #fff;
  background-color: #337ab7;
  border-color: #337ab7;
  cursor: default;
}
.pagination > .disabled > span,
.pagination > .disabled > span:hover,
.pagination > .disabled > span:focus,
.pagination > .disabled > a,
.pagination > .disabled > a:hover,
.pagination > .disabled > a:focus {
  color: #777777;
  background-color: #fff;
  border-color: #ddd;
  cursor: not-allowed;
}

.pagination-lg > li > a,
.pagination-lg > li > span {
  padding: 10px 20px;
  font-size: 18px;
  line-height: 1.33333;
}
.pagination-lg > li:first-child > a,
.pagination-lg > li:first-child > span {
  border-bottom-left-radius: 6px;
  border-top-left-radius: 6px;
}
.pagination-lg > li:last-child > a,
.pagination-lg > li:last-child > span {
  border-bottom-right-radius: 6px;
  border-top-right-radius: 6px;
}

.pagination-sm > li > a,
.pagination-sm > li > span {
  padding: 5px 20px;
  font-size: 12px;
  line-height: 1.5;
}
.pagination-sm > li:first-child > a,
.pagination-sm > li:first-child > span {
  border-bottom-left-radius: 3px;
  border-top-left-radius: 3px;
}
.pagination-sm > li:last-child > a,
.pagination-sm > li:last-child > span {
  border-bottom-right-radius: 3px;
  border-top-right-radius: 3px;
}

.pager {
  padding-left: 0;
  margin: 20px 0;
  list-style: none;
  text-align: center;
}
.pager:before, .pager:after {
  content: " ";
  display: table;
}
.pager:after {
  clear: both;
}
.pager li {
  display: inline;
}
.pager li > a,
.pager li > span {
  display: inline-block;
  padding: 5px 14px;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 15px;
}
.pager li > a:hover,
.pager li > a:focus {
  text-decoration: none;
  background-color: #eeeeee;
}
.pager .next > a,
.pager .next > span {
  float: right;
}
.pager .previous > a,
.pager .previous > span {
  float: left;
}
.pager .disabled > a,
.pager .disabled > a:hover,
.pager .disabled > a:focus,
.pager .disabled > span {
  color: #777777;
  background-color: #fff;
  cursor: not-allowed;
}

.label {
  display: inline;
  padding: .2em .6em .3em;
  font-size: 75%;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: .25em;
}
.label:empty {
  display: none;
}
.btn .label {
  position: relative;
  top: -1px;
}

a.label:hover, a.label:focus {
  color: #fff;
  text-decoration: none;
  cursor: pointer;
}

.label-default {
  background-color: #777777;
}
.label-default[href]:hover, .label-default[href]:focus {
  background-color: #5e5e5e;
}

.label-primary {
  background-color: #337ab7;
}
.label-primary[href]:hover, .label-primary[href]:focus {
  background-color: #286090;
}

.label-success {
  background-color: #5cb85c;
}
.label-success[href]:hover, .label-success[href]:focus {
  background-color: #449d44;
}

.label-info {
  background-color: #5bc0de;
}
.label-info[href]:hover, .label-info[href]:focus {
  background-color: #31b0d5;
}

.label-warning {
  background-color: #f0ad4e;
}
.label-warning[href]:hover, .label-warning[href]:focus {
  background-color: #ec971f;
}

.label-danger {
  background-color: #d9534f;
}
.label-danger[href]:hover, .label-danger[href]:focus {
  background-color: #c9302c;
}

.badge {
  display: inline-block;
  min-width: 10px;
  padding: 3px 7px;
  font-size: 12px;
  font-weight: bold;
  color: #fff;
  line-height: 1;
  vertical-align: middle;
  white-space: nowrap;
  text-align: center;
  background-color: #777777;
  border-radius: 10px;
}
.badge:empty {
  display: none;
}
.btn .badge {
  position: relative;
  top: -1px;
}
.btn-xs .badge, .btn-group-xs > .btn .badge, .btn-group-xs > .btn .badge {
  top: 0;
  padding: 1px 5px;
}
.list-group-item.active > .badge, .nav-pills > .active > a > .badge {
  color: #337ab7;
  background-color: #fff;
}
.list-group-item > .badge {
  float: right;
}
.list-group-item > .badge + .badge {
  margin-right: 5px;
}
.nav-pills > li > a > .badge {
  margin-left: 3px;
}

a.badge:hover, a.badge:focus {
  color: #fff;
  text-decoration: none;
  cursor: pointer;
}

.jumbotron {
  padding-top: 30px;
  padding-bottom: 30px;
  margin-bottom: 30px;
  color: inherit;
  background-color: #eeeeee;
}
.jumbotron h1,
.jumbotron .h1 {
  color: inherit;
}
.jumbotron p {
  margin-bottom: 15px;
  font-size: 21px;
  font-weight: 200;
}
.jumbotron > hr {
  border-top-color: #d5d5d5;
}
.container .jumbotron, .container-fluid .jumbotron {
  border-radius: 6px;
}
.jumbotron .container {
  max-width: 100%;
}
@media screen and (min-width: 768px) {
  .jumbotron {
    padding-top: 48px;
    padding-bottom: 48px;
  }
  .container .jumbotron, .container-fluid .jumbotron {
    padding-left: 60px;
    padding-right: 60px;
  }
  .jumbotron h1,
  .jumbotron .h1 {
    font-size: 63px;
  }
}

.thumbnail {
  display: block;
  padding: 4px;
  margin-bottom: 20px;
  line-height: 1.42857;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 4px;
  -webkit-transition: border 0.2s ease-in-out;
  -o-transition: border 0.2s ease-in-out;
  transition: border 0.2s ease-in-out;
}
.thumbnail > img,
.thumbnail a > img {
  display: block;
  max-width: 100%;
  height: auto;
  margin-left: auto;
  margin-right: auto;
}
.thumbnail .caption {
  padding: 9px;
  color: #333333;
}

a.thumbnail:hover,
a.thumbnail:focus,
a.thumbnail.active {
  border-color: #337ab7;
}

.alert {
  padding: 15px;
  margin-bottom: 20px;
  border: 1px solid transparent;
  border-radius: 4px;
}
.alert h4 {
  margin-top: 0;
  color: inherit;
}
.alert .alert-link {
  font-weight: bold;
}
.alert > p,
.alert > ul {
  margin-bottom: 0;
}
.alert > p + p {
  margin-top: 5px;
}

.alert-dismissable,
.alert-dismissible {
  padding-right: 35px;
}
.alert-dismissable .close,
.alert-dismissible .close {
  position: relative;
  top: -2px;
  right: -21px;
  color: inherit;
}

.alert-success {
  background-color: #dff0d8;
  border-color: #d6e9c6;
  color: #3c763d;
}
.alert-success hr {
  border-top-color: #c9e2b3;
}
.alert-success .alert-link {
  color: #2b542c;
}

.alert-info {
  background-color: #d9edf7;
  border-color: #bce8f1;
  color: #31708f;
}
.alert-info hr {
  border-top-color: #a6e1ec;
}
.alert-info .alert-link {
  color: #245269;
}

.alert-warning {
  background-color: #fcf8e3;
  border-color: #faebcc;
  color: #8a6d3b;
}
.alert-warning hr {
  border-top-color: #f7e1b5;
}
.alert-warning .alert-link {
  color: #66512c;
}

.alert-danger {
  background-color: #f2dede;
  border-color: #ebccd1;
  color: #a94442;
}
.alert-danger hr {
  border-top-color: #e4b9c0;
}
.alert-danger .alert-link {
  color: #843534;
}

@-webkit-keyframes progress-bar-stripes {
  from {
    background-position: 40px 0;
  }
  to {
    background-position: 0 0;
  }
}
@keyframes progress-bar-stripes {
  from {
    background-position: 40px 0;
  }
  to {
    background-position: 0 0;
  }
}
.progress {
  overflow: hidden;
  height: 20px;
  margin-bottom: 20px;
  background-color: #f5f5f5;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
}

.progress-bar {
  float: left;
  width: 0%;
  height: 100%;
  font-size: 12px;
  line-height: 20px;
  color: #fff;
  text-align: center;
  background-color: #337ab7;
  -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
  -webkit-transition: width 0.6s ease;
  -o-transition: width 0.6s ease;
  transition: width 0.6s ease;
}

.progress-striped .progress-bar,
.progress-bar-striped {
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-size: 40px 40px;
}

.progress.active .progress-bar,
.progress-bar.active {
  -webkit-animation: progress-bar-stripes 2s linear infinite;
  -o-animation: progress-bar-stripes 2s linear infinite;
  animation: progress-bar-stripes 2s linear infinite;
}

.progress-bar-success {
  background-color: #5cb85c;
}
.progress-striped .progress-bar-success {
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}

.progress-bar-info {
  background-color: #5bc0de;
}
.progress-striped .progress-bar-info {
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}

.progress-bar-warning {
  background-color: #f0ad4e;
}
.progress-striped .progress-bar-warning {
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}

.progress-bar-danger {
  background-color: #d9534f;
}
.progress-striped .progress-bar-danger {
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}

.media {
  margin-top: 15px;
}
.media:first-child {
  margin-top: 0;
}

.media,
.media-body {
  zoom: 1;
  overflow: hidden;
}

.media-body {
  width: 10000px;
}

.media-object {
  display: block;
}
.media-object.img-thumbnail {
  max-width: none;
}

.media-right,
.media > .pull-right {
  padding-left: 10px;
}

.media-left,
.media > .pull-left {
  padding-right: 10px;
}

.media-left,
.media-right,
.media-body {
  display: table-cell;
  vertical-align: top;
}

.media-middle {
  vertical-align: middle;
}

.media-bottom {
  vertical-align: bottom;
}

.media-heading {
  margin-top: 0;
  margin-bottom: 5px;
}

.media-list {
  padding-left: 0;
  list-style: none;
}

.list-group {
  margin-bottom: 20px;
  padding-left: 0;
}

.list-group-item {
  position: relative;
  display: block;
  padding: 10px 15px;
  margin-bottom: -1px;
  background-color: #fff;
  border: 1px solid #ddd;
}
.list-group-item:first-child {
  border-top-right-radius: 4px;
  border-top-left-radius: 4px;
}
.list-group-item:last-child {
  margin-bottom: 0;
  border-bottom-right-radius: 4px;
  border-bottom-left-radius: 4px;
}

a.list-group-item,
button.list-group-item {
  color: #555;
}
a.list-group-item .list-group-item-heading,
button.list-group-item .list-group-item-heading {
  color: #333;
}
a.list-group-item:hover, a.list-group-item:focus,
button.list-group-item:hover,
button.list-group-item:focus {
  text-decoration: none;
  color: #555;
  background-color: #f5f5f5;
}

button.list-group-item {
  width: 100%;
  text-align: left;
}

.list-group-item.disabled, .list-group-item.disabled:hover, .list-group-item.disabled:focus {
  background-color: #eeeeee;
  color: #777777;
  cursor: not-allowed;
}
.list-group-item.disabled .list-group-item-heading, .list-group-item.disabled:hover .list-group-item-heading, .list-group-item.disabled:focus .list-group-item-heading {
  color: inherit;
}
.list-group-item.disabled .list-group-item-text, .list-group-item.disabled:hover .list-group-item-text, .list-group-item.disabled:focus .list-group-item-text {
  color: #777777;
}
.list-group-item.active, .list-group-item.active:hover, .list-group-item.active:focus {
  z-index: 2;
  color: #fff;
  background-color: #337ab7;
  border-color: #337ab7;
}
.list-group-item.active .list-group-item-heading,
.list-group-item.active .list-group-item-heading > small,
.list-group-item.active .list-group-item-heading > .small, .list-group-item.active:hover .list-group-item-heading,
.list-group-item.active:hover .list-group-item-heading > small,
.list-group-item.active:hover .list-group-item-heading > .small, .list-group-item.active:focus .list-group-item-heading,
.list-group-item.active:focus .list-group-item-heading > small,
.list-group-item.active:focus .list-group-item-heading > .small {
  color: inherit;
}
.list-group-item.active .list-group-item-text, .list-group-item.active:hover .list-group-item-text, .list-group-item.active:focus .list-group-item-text {
  color: #c7ddef;
}

.list-group-item-success {
  color: #3c763d;
  background-color: #dff0d8;
}

a.list-group-item-success,
button.list-group-item-success {
  color: #3c763d;
}
a.list-group-item-success .list-group-item-heading,
button.list-group-item-success .list-group-item-heading {
  color: inherit;
}
a.list-group-item-success:hover, a.list-group-item-success:focus,
button.list-group-item-success:hover,
button.list-group-item-success:focus {
  color: #3c763d;
  background-color: #d0e9c6;
}
a.list-group-item-success.active, a.list-group-item-success.active:hover, a.list-group-item-success.active:focus,
button.list-group-item-success.active,
button.list-group-item-success.active:hover,
button.list-group-item-success.active:focus {
  color: #fff;
  background-color: #3c763d;
  border-color: #3c763d;
}

.list-group-item-info {
  color: #31708f;
  background-color: #d9edf7;
}

a.list-group-item-info,
button.list-group-item-info {
  color: #31708f;
}
a.list-group-item-info .list-group-item-heading,
button.list-group-item-info .list-group-item-heading {
  color: inherit;
}
a.list-group-item-info:hover, a.list-group-item-info:focus,
button.list-group-item-info:hover,
button.list-group-item-info:focus {
  color: #31708f;
  background-color: #c4e3f3;
}
a.list-group-item-info.active, a.list-group-item-info.active:hover, a.list-group-item-info.active:focus,
button.list-group-item-info.active,
button.list-group-item-info.active:hover,
button.list-group-item-info.active:focus {
  color: #fff;
  background-color: #31708f;
  border-color: #31708f;
}

.list-group-item-warning {
  color: #8a6d3b;
  background-color: #fcf8e3;
}

a.list-group-item-warning,
button.list-group-item-warning {
  color: #8a6d3b;
}
a.list-group-item-warning .list-group-item-heading,
button.list-group-item-warning .list-group-item-heading {
  color: inherit;
}
a.list-group-item-warning:hover, a.list-group-item-warning:focus,
button.list-group-item-warning:hover,
button.list-group-item-warning:focus {
  color: #8a6d3b;
  background-color: #faf2cc;
}
a.list-group-item-warning.active, a.list-group-item-warning.active:hover, a.list-group-item-warning.active:focus,
button.list-group-item-warning.active,
button.list-group-item-warning.active:hover,
button.list-group-item-warning.active:focus {
  color: #fff;
  background-color: #8a6d3b;
  border-color: #8a6d3b;
}

.list-group-item-danger {
  color: #a94442;
  background-color: #f2dede;
}

a.list-group-item-danger,
button.list-group-item-danger {
  color: #a94442;
}
a.list-group-item-danger .list-group-item-heading,
button.list-group-item-danger .list-group-item-heading {
  color: inherit;
}
a.list-group-item-danger:hover, a.list-group-item-danger:focus,
button.list-group-item-danger:hover,
button.list-group-item-danger:focus {
  color: #a94442;
  background-color: #ebcccc;
}
a.list-group-item-danger.active, a.list-group-item-danger.active:hover, a.list-group-item-danger.active:focus,
button.list-group-item-danger.active,
button.list-group-item-danger.active:hover,
button.list-group-item-danger.active:focus {
  color: #fff;
  background-color: #a94442;
  border-color: #a94442;
}

.list-group-item-heading {
  margin-top: 0;
  margin-bottom: 5px;
}

.list-group-item-text {
  margin-bottom: 0;
  line-height: 1.3;
}

.panel {
  margin-bottom: 20px;
  background-color: #fff;
  border: 1px solid transparent;
  border-radius: 4px;
  -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
}

.panel-body {
  padding: 15px;
}
.panel-body:before, .panel-body:after {
  content: " ";
  display: table;
}
.panel-body:after {
  clear: both;
}

.panel-heading {
  padding: 10px 15px;
  border-bottom: 1px solid transparent;
  border-top-right-radius: 3px;
  border-top-left-radius: 3px;
}
.panel-heading > .dropdown .dropdown-toggle {
  color: inherit;
}

.panel-title {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 16px;
  color: inherit;
}
.panel-title > a,
.panel-title > small,
.panel-title > .small,
.panel-title > small > a,
.panel-title > .small > a {
  color: inherit;
}

.panel-footer {
  padding: 10px 15px;
  background-color: #f5f5f5;
  border-top: 1px solid #ddd;
  border-bottom-right-radius: 3px;
  border-bottom-left-radius: 3px;
}

.panel > .list-group,
.panel > .panel-collapse > .list-group {
  margin-bottom: 0;
}
.panel > .list-group .list-group-item,
.panel > .panel-collapse > .list-group .list-group-item {
  border-width: 1px 0;
  border-radius: 0;
}
.panel > .list-group:first-child .list-group-item:first-child,
.panel > .panel-collapse > .list-group:first-child .list-group-item:first-child {
  border-top: 0;
  border-top-right-radius: 3px;
  border-top-left-radius: 3px;
}
.panel > .list-group:last-child .list-group-item:last-child,
.panel > .panel-collapse > .list-group:last-child .list-group-item:last-child {
  border-bottom: 0;
  border-bottom-right-radius: 3px;
  border-bottom-left-radius: 3px;
}
.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child {
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}

.panel-heading + .list-group .list-group-item:first-child {
  border-top-width: 0;
}

.list-group + .panel-footer {
  border-top-width: 0;
}

.panel > .table,
.panel > .table-responsive > .table,
.panel > .panel-collapse > .table {
  margin-bottom: 0;
}
.panel > .table caption,
.panel > .table-responsive > .table caption,
.panel > .panel-collapse > .table caption {
  padding-left: 15px;
  padding-right: 15px;
}
.panel > .table:first-child,
.panel > .table-responsive:first-child > .table:first-child {
  border-top-right-radius: 3px;
  border-top-left-radius: 3px;
}
.panel > .table:first-child > thead:first-child > tr:first-child,
.panel > .table:first-child > tbody:first-child > tr:first-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child {
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
}
.panel > .table:first-child > thead:first-child > tr:first-child td:first-child,
.panel > .table:first-child > thead:first-child > tr:first-child th:first-child,
.panel > .table:first-child > tbody:first-child > tr:first-child td:first-child,
.panel > .table:first-child > tbody:first-child > tr:first-child th:first-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child {
  border-top-left-radius: 3px;
}
.panel > .table:first-child > thead:first-child > tr:first-child td:last-child,
.panel > .table:first-child > thead:first-child > tr:first-child th:last-child,
.panel > .table:first-child > tbody:first-child > tr:first-child td:last-child,
.panel > .table:first-child > tbody:first-child > tr:first-child th:last-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child {
  border-top-right-radius: 3px;
}
.panel > .table:last-child,
.panel > .table-responsive:last-child > .table:last-child {
  border-bottom-right-radius: 3px;
  border-bottom-left-radius: 3px;
}
.panel > .table:last-child > tbody:last-child > tr:last-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child {
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
}
.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child,
.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child {
  border-bottom-left-radius: 3px;
}
.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child,
.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child {
  border-bottom-right-radius: 3px;
}
.panel > .panel-body + .table,
.panel > .panel-body + .table-responsive,
.panel > .table + .panel-body,
.panel > .table-responsive + .panel-body {
  border-top: 1px solid #ddd;
}
.panel > .table > tbody:first-child > tr:first-child th,
.panel > .table > tbody:first-child > tr:first-child td {
  border-top: 0;
}
.panel > .table-bordered,
.panel > .table-responsive > .table-bordered {
  border: 0;
}
.panel > .table-bordered > thead > tr > th:first-child,
.panel > .table-bordered > thead > tr > td:first-child,
.panel > .table-bordered > tbody > tr > th:first-child,
.panel > .table-bordered > tbody > tr > td:first-child,
.panel > .table-bordered > tfoot > tr > th:first-child,
.panel > .table-bordered > tfoot > tr > td:first-child,
.panel > .table-responsive > .table-bordered > thead > tr > th:first-child,
.panel > .table-responsive > .table-bordered > thead > tr > td:first-child,
.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child,
.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child {
  border-left: 0;
}
.panel > .table-bordered > thead > tr > th:last-child,
.panel > .table-bordered > thead > tr > td:last-child,
.panel > .table-bordered > tbody > tr > th:last-child,
.panel > .table-bordered > tbody > tr > td:last-child,
.panel > .table-bordered > tfoot > tr > th:last-child,
.panel > .table-bordered > tfoot > tr > td:last-child,
.panel > .table-responsive > .table-bordered > thead > tr > th:last-child,
.panel > .table-responsive > .table-bordered > thead > tr > td:last-child,
.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child,
.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child {
  border-right: 0;
}
.panel > .table-bordered > thead > tr:first-child > td,
.panel > .table-bordered > thead > tr:first-child > th,
.panel > .table-bordered > tbody > tr:first-child > td,
.panel > .table-bordered > tbody > tr:first-child > th,
.panel > .table-responsive > .table-bordered > thead > tr:first-child > td,
.panel > .table-responsive > .table-bordered > thead > tr:first-child > th,
.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td,
.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th {
  border-bottom: 0;
}
.panel > .table-bordered > tbody > tr:last-child > td,
.panel > .table-bordered > tbody > tr:last-child > th,
.panel > .table-bordered > tfoot > tr:last-child > td,
.panel > .table-bordered > tfoot > tr:last-child > th,
.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td,
.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th,
.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td,
.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th {
  border-bottom: 0;
}
.panel > .table-responsive {
  border: 0;
  margin-bottom: 0;
}

.panel-group {
  margin-bottom: 20px;
}
.panel-group .panel {
  margin-bottom: 0;
  border-radius: 4px;
}
.panel-group .panel + .panel {
  margin-top: 5px;
}
.panel-group .panel-heading {
  border-bottom: 0;
}
.panel-group .panel-heading + .panel-collapse > .panel-body,
.panel-group .panel-heading + .panel-collapse > .list-group {
  border-top: 1px solid #ddd;
}
.panel-group .panel-footer {
  border-top: 0;
}
.panel-group .panel-footer + .panel-collapse .panel-body {
  border-bottom: 1px solid #ddd;
}

.panel-default {
  border-color: #ddd;
}
.panel-default > .panel-heading {
  color: #333333;
  background-color: #f5f5f5;
  border-color: #ddd;
}
.panel-default > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #ddd;
}
.panel-default > .panel-heading .badge {
  color: #f5f5f5;
  background-color: #333333;
}
.panel-default > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #ddd;
}

.panel-primary {
  border-color: #337ab7;
}
.panel-primary > .panel-heading {
  color: #fff;
  background-color: #337ab7;
  border-color: #337ab7;
}
.panel-primary > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #337ab7;
}
.panel-primary > .panel-heading .badge {
  color: #337ab7;
  background-color: #fff;
}
.panel-primary > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #337ab7;
}

.panel-success {
  border-color: #d6e9c6;
}
.panel-success > .panel-heading {
  color: #3c763d;
  background-color: #dff0d8;
  border-color: #d6e9c6;
}
.panel-success > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #d6e9c6;
}
.panel-success > .panel-heading .badge {
  color: #dff0d8;
  background-color: #3c763d;
}
.panel-success > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #d6e9c6;
}

.panel-info {
  border-color: #bce8f1;
}
.panel-info > .panel-heading {
  color: #31708f;
  background-color: #d9edf7;
  border-color: #bce8f1;
}
.panel-info > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #bce8f1;
}
.panel-info > .panel-heading .badge {
  color: #d9edf7;
  background-color: #31708f;
}
.panel-info > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #bce8f1;
}

.panel-warning {
  border-color: #faebcc;
}
.panel-warning > .panel-heading {
  color: #8a6d3b;
  background-color: #fcf8e3;
  border-color: #faebcc;
}
.panel-warning > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #faebcc;
}
.panel-warning > .panel-heading .badge {
  color: #fcf8e3;
  background-color: #8a6d3b;
}
.panel-warning > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #faebcc;
}

.panel-danger {
  border-color: #ebccd1;
}
.panel-danger > .panel-heading {
  color: #a94442;
  background-color: #f2dede;
  border-color: #ebccd1;
}
.panel-danger > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #ebccd1;
}
.panel-danger > .panel-heading .badge {
  color: #f2dede;
  background-color: #a94442;
}
.panel-danger > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #ebccd1;
}

.embed-responsive {
  position: relative;
  display: block;
  height: 0;
  padding: 0;
  overflow: hidden;
}
.embed-responsive .embed-responsive-item,
.embed-responsive iframe,
.embed-responsive embed,
.embed-responsive object,
.embed-responsive video {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
  border: 0;
}

.embed-responsive-16by9 {
  padding-bottom: 56.25%;
}

.embed-responsive-4by3 {
  padding-bottom: 75%;
}

.well {
  min-height: 20px;
  padding: 19px;
  margin-bottom: 20px;
  background-color: #f5f5f5;
  border: 1px solid #e3e3e3;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
}
.well blockquote {
  border-color: #ddd;
  border-color: rgba(0, 0, 0, 0.15);
}

.well-lg {
  padding: 24px;
  border-radius: 6px;
}

.well-sm {
  padding: 9px;
  border-radius: 3px;
}

.close {
  float: right;
  font-size: 21px;
  font-weight: bold;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  opacity: 0.2;
  filter: alpha(opacity=20);
}
.close:hover, .close:focus {
  color: #000;
  text-decoration: none;
  cursor: pointer;
  opacity: 0.5;
  filter: alpha(opacity=50);
}

button.close {
  padding: 0;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
}

.modal-open {
  overflow: hidden;
}

.modal {
  display: none;
  overflow: hidden;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1050;
  -webkit-overflow-scrolling: touch;
  outline: 0;
}
.modal.fade .modal-dialog {
  -webkit-transform: translate(0, -25%);
  -ms-transform: translate(0, -25%);
  -o-transform: translate(0, -25%);
  transform: translate(0, -25%);
  -webkit-transition: -webkit-transform 0.3s ease-out;
  -moz-transition: -moz-transform 0.3s ease-out;
  -o-transition: -o-transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
}
.modal.in .modal-dialog {
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  -o-transform: translate(0, 0);
  transform: translate(0, 0);
}

.modal-open .modal {
  overflow-x: hidden;
  overflow-y: auto;
}

.modal-dialog {
  position: relative;
  width: auto;
  margin: 10px;
}

.modal-content {
  position: relative;
  background-color: #fff;
  border: 1px solid #999;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 6px;
  -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
  box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
  background-clip: padding-box;
  outline: 0;
}

.modal-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1040;
  background-color: #000;
}
.modal-backdrop.fade {
  opacity: 0;
  filter: alpha(opacity=0);
}
.modal-backdrop.in {
  opacity: 0.5;
  filter: alpha(opacity=50);
}

.modal-header {
  padding: 15px;
  border-bottom: 1px solid #e5e5e5;
  min-height: 16.42857px;
}

.modal-header .close {
  margin-top: -2px;
}

.modal-title {
  margin: 0;
  line-height: 1.42857;
}

.modal-body {
  position: relative;
  padding: 15px;
}

.modal-footer {
  padding: 15px;
  text-align: right;
  border-top: 1px solid #e5e5e5;
}
.modal-footer:before, .modal-footer:after {
  content: " ";
  display: table;
}
.modal-footer:after {
  clear: both;
}
.modal-footer .btn + .btn {
  margin-left: 5px;
  margin-bottom: 0;
}
.modal-footer .btn-group .btn + .btn {
  margin-left: -1px;
}
.modal-footer .btn-block + .btn-block {
  margin-left: 0;
}

.modal-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll;
}

@media (min-width: 768px) {
  .modal-dialog {
    width: 600px;
    margin: 30px auto;
  }

  .modal-content {
    -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
  }

  .modal-sm {
    width: 300px;
  }
}
@media (min-width: 992px) {
  .modal-lg {
    width: 900px;
  }
}
.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-style: normal;
  font-weight: normal;
  letter-spacing: normal;
  line-break: auto;
  line-height: 1.42857;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  white-space: normal;
  word-break: normal;
  word-spacing: normal;
  word-wrap: normal;
  font-size: 12px;
  opacity: 0;
  filter: alpha(opacity=0);
}
.tooltip.in {
  opacity: 0.9;
  filter: alpha(opacity=90);
}
.tooltip.top {
  margin-top: -3px;
  padding: 5px 0;
}
.tooltip.right {
  margin-left: 3px;
  padding: 0 5px;
}
.tooltip.bottom {
  margin-top: 3px;
  padding: 5px 0;
}
.tooltip.left {
  margin-left: -3px;
  padding: 0 5px;
}

.tooltip-inner {
  max-width: 200px;
  padding: 3px 8px;
  color: #fff;
  text-align: center;
  background-color: #000;
  border-radius: 4px;
}

.tooltip-arrow {
  position: absolute;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
}

.tooltip.top .tooltip-arrow {
  bottom: 0;
  left: 50%;
  margin-left: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000;
}
.tooltip.top-left .tooltip-arrow {
  bottom: 0;
  right: 5px;
  margin-bottom: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000;
}
.tooltip.top-right .tooltip-arrow {
  bottom: 0;
  left: 5px;
  margin-bottom: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000;
}
.tooltip.right .tooltip-arrow {
  top: 50%;
  left: 0;
  margin-top: -5px;
  border-width: 5px 5px 5px 0;
  border-right-color: #000;
}
.tooltip.left .tooltip-arrow {
  top: 50%;
  right: 0;
  margin-top: -5px;
  border-width: 5px 0 5px 5px;
  border-left-color: #000;
}
.tooltip.bottom .tooltip-arrow {
  top: 0;
  left: 50%;
  margin-left: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000;
}
.tooltip.bottom-left .tooltip-arrow {
  top: 0;
  right: 5px;
  margin-top: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000;
}
.tooltip.bottom-right .tooltip-arrow {
  top: 0;
  left: 5px;
  margin-top: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000;
}

.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: none;
  max-width: 276px;
  padding: 1px;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-style: normal;
  font-weight: normal;
  letter-spacing: normal;
  line-break: auto;
  line-height: 1.42857;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  white-space: normal;
  word-break: normal;
  word-spacing: normal;
  word-wrap: normal;
  font-size: 14px;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 6px;
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
}
.popover.top {
  margin-top: -10px;
}
.popover.right {
  margin-left: 10px;
}
.popover.bottom {
  margin-top: 10px;
}
.popover.left {
  margin-left: -10px;
}

.popover-title {
  margin: 0;
  padding: 8px 14px;
  font-size: 14px;
  background-color: #f7f7f7;
  border-bottom: 1px solid #ebebeb;
  border-radius: 5px 5px 0 0;
}

.popover-content {
  padding: 9px 14px;
}

.popover > .arrow, .popover > .arrow:after {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
}

.popover > .arrow {
  border-width: 11px;
}

.popover > .arrow:after {
  border-width: 10px;
  content: "";
}

.popover.top > .arrow {
  left: 50%;
  margin-left: -11px;
  border-bottom-width: 0;
  border-top-color: #999999;
  border-top-color: rgba(0, 0, 0, 0.25);
  bottom: -11px;
}
.popover.top > .arrow:after {
  content: " ";
  bottom: 1px;
  margin-left: -10px;
  border-bottom-width: 0;
  border-top-color: #fff;
}
.popover.right > .arrow {
  top: 50%;
  left: -11px;
  margin-top: -11px;
  border-left-width: 0;
  border-right-color: #999999;
  border-right-color: rgba(0, 0, 0, 0.25);
}
.popover.right > .arrow:after {
  content: " ";
  left: 1px;
  bottom: -10px;
  border-left-width: 0;
  border-right-color: #fff;
}
.popover.bottom > .arrow {
  left: 50%;
  margin-left: -11px;
  border-top-width: 0;
  border-bottom-color: #999999;
  border-bottom-color: rgba(0, 0, 0, 0.25);
  top: -11px;
}
.popover.bottom > .arrow:after {
  content: " ";
  top: 1px;
  margin-left: -10px;
  border-top-width: 0;
  border-bottom-color: #fff;
}
.popover.left > .arrow {
  top: 50%;
  right: -11px;
  margin-top: -11px;
  border-right-width: 0;
  border-left-color: #999999;
  border-left-color: rgba(0, 0, 0, 0.25);
}
.popover.left > .arrow:after {
  content: " ";
  right: 1px;
  border-right-width: 0;
  border-left-color: #fff;
  bottom: -10px;
}

.carousel {
  position: relative;
}

.carousel-inner {
  position: relative;
  overflow: hidden;
  width: 100%;
}
.carousel-inner > .item {
  display: none;
  position: relative;
  -webkit-transition: 0.6s ease-in-out left;
  -o-transition: 0.6s ease-in-out left;
  transition: 0.6s ease-in-out left;
}
.carousel-inner > .item > img,
.carousel-inner > .item > a > img {
  display: block;
  max-width: 100%;
  height: auto;
  line-height: 1;
}
@media all and (transform-3d), (-webkit-transform-3d) {
  .carousel-inner > .item {
    -webkit-transition: -webkit-transform 0.6s ease-in-out;
    -moz-transition: -moz-transform 0.6s ease-in-out;
    -o-transition: -o-transform 0.6s ease-in-out;
    transition: transform 0.6s ease-in-out;
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-perspective: 1000px;
    -moz-perspective: 1000px;
    perspective: 1000px;
  }
  .carousel-inner > .item.next, .carousel-inner > .item.active.right {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    left: 0;
  }
  .carousel-inner > .item.prev, .carousel-inner > .item.active.left {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    left: 0;
  }
  .carousel-inner > .item.next.left, .carousel-inner > .item.prev.right, .carousel-inner > .item.active {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    left: 0;
  }
}
.carousel-inner > .active,
.carousel-inner > .next,
.carousel-inner > .prev {
  display: block;
}
.carousel-inner > .active {
  left: 0;
}
.carousel-inner > .next,
.carousel-inner > .prev {
  position: absolute;
  top: 0;
  width: 100%;
}
.carousel-inner > .next {
  left: 100%;
}
.carousel-inner > .prev {
  left: -100%;
}
.carousel-inner > .next.left,
.carousel-inner > .prev.right {
  left: 0;
}
.carousel-inner > .active.left {
  left: -100%;
}
.carousel-inner > .active.right {
  left: 100%;
}

.carousel-control {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 15%;
  opacity: 0.5;
  filter: alpha(opacity=50);
  font-size: 20px;
  color: #fff;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
}
.carousel-control.left {
  background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
  background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);
}
.carousel-control.right {
  left: auto;
  right: 0;
  background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
  background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);
}
.carousel-control:hover, .carousel-control:focus {
  outline: 0;
  color: #fff;
  text-decoration: none;
  opacity: 0.9;
  filter: alpha(opacity=90);
}
.carousel-control .icon-prev,
.carousel-control .icon-next,
.carousel-control .glyphicon-chevron-left,
.carousel-control .glyphicon-chevron-right {
  position: absolute;
  top: 50%;
  margin-top: -10px;
  z-index: 5;
  display: inline-block;
}
.carousel-control .icon-prev,
.carousel-control .glyphicon-chevron-left {
  left: 50%;
  margin-left: -10px;
}
.carousel-control .icon-next,
.carousel-control .glyphicon-chevron-right {
  right: 50%;
  margin-right: -10px;
}
.carousel-control .icon-prev,
.carousel-control .icon-next {
  width: 20px;
  height: 20px;
  line-height: 1;
  font-family: serif;
}
.carousel-control .icon-prev:before {
  content: '\2039';
}
.carousel-control .icon-next:before {
  content: '\203a';
}

.carousel-indicators {
  position: absolute;
  bottom: 10px;
  left: 50%;
  z-index: 15;
  width: 60%;
  margin-left: -30%;
  padding-left: 0;
  list-style: none;
  text-align: center;
}
.carousel-indicators li {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 1px;
  text-indent: -999px;
  border: 1px solid #fff;
  border-radius: 10px;
  cursor: pointer;
  background-color: #000 \9;
  background-color: transparent;
}
.carousel-indicators .active {
  margin: 0;
  width: 12px;
  height: 12px;
  background-color: #fff;
}

.carousel-caption {
  position: absolute;
  left: 15%;
  right: 15%;
  bottom: 20px;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: #fff;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
}
.carousel-caption .btn {
  text-shadow: none;
}

@media screen and (min-width: 768px) {
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .glyphicon-chevron-right,
  .carousel-control .icon-prev,
  .carousel-control .icon-next {
    width: 30px;
    height: 30px;
    margin-top: -15px;
    font-size: 30px;
  }
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .icon-prev {
    margin-left: -15px;
  }
  .carousel-control .glyphicon-chevron-right,
  .carousel-control .icon-next {
    margin-right: -15px;
  }

  .carousel-caption {
    left: 20%;
    right: 20%;
    padding-bottom: 30px;
  }

  .carousel-indicators {
    bottom: 20px;
  }
}
.clearfix:before, .clearfix:after {
  content: " ";
  display: table;
}
.clearfix:after {
  clear: both;
}

.center-block {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.pull-right {
  float: right !important;
}

.pull-left {
  float: left !important;
}

.hide {
  display: none !important;
}

.show {
  display: block !important;
}

.invisible {
  visibility: hidden;
}

.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}

.hidden {
  display: none !important;
}

.affix {
  position: fixed;
}

@-ms-viewport {
  width: device-width;
}
.visible-xs {
  display: none !important;
}

.visible-sm {
  display: none !important;
}

.visible-md {
  display: none !important;
}

.visible-lg {
  display: none !important;
}

.visible-xs-block,
.visible-xs-inline,
.visible-xs-inline-block,
.visible-sm-block,
.visible-sm-inline,
.visible-sm-inline-block,
.visible-md-block,
.visible-md-inline,
.visible-md-inline-block,
.visible-lg-block,
.visible-lg-inline,
.visible-lg-inline-block {
  display: none !important;
}

@media (max-width: 767px) {
  .visible-xs {
    display: block !important;
  }

  table.visible-xs {
    display: table !important;
  }

  tr.visible-xs {
    display: table-row !important;
  }

  th.visible-xs,
  td.visible-xs {
    display: table-cell !important;
  }
}
@media (max-width: 767px) {
  .visible-xs-block {
    display: block !important;
  }
}

@media (max-width: 767px) {
  .visible-xs-inline {
    display: inline !important;
  }
}

@media (max-width: 767px) {
  .visible-xs-inline-block {
    display: inline-block !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm {
    display: block !important;
  }

  table.visible-sm {
    display: table !important;
  }

  tr.visible-sm {
    display: table-row !important;
  }

  th.visible-sm,
  td.visible-sm {
    display: table-cell !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-block {
    display: block !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline {
    display: inline !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline-block {
    display: inline-block !important;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md {
    display: block !important;
  }

  table.visible-md {
    display: table !important;
  }

  tr.visible-md {
    display: table-row !important;
  }

  th.visible-md,
  td.visible-md {
    display: table-cell !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-block {
    display: block !important;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline {
    display: inline !important;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline-block {
    display: inline-block !important;
  }
}

@media (min-width: 1200px) {
  .visible-lg {
    display: block !important;
  }

  table.visible-lg {
    display: table !important;
  }

  tr.visible-lg {
    display: table-row !important;
  }

  th.visible-lg,
  td.visible-lg {
    display: table-cell !important;
  }
}
@media (min-width: 1200px) {
  .visible-lg-block {
    display: block !important;
  }
}

@media (min-width: 1200px) {
  .visible-lg-inline {
    display: inline !important;
  }
}

@media (min-width: 1200px) {
  .visible-lg-inline-block {
    display: inline-block !important;
  }
}

@media (max-width: 767px) {
  .hidden-xs {
    display: none !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .hidden-sm {
    display: none !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .hidden-md {
    display: none !important;
  }
}
@media (min-width: 1200px) {
  .hidden-lg {
    display: none !important;
  }
}
.visible-print {
  display: none !important;
}

@media print {
  .visible-print {
    display: block !important;
  }

  table.visible-print {
    display: table !important;
  }

  tr.visible-print {
    display: table-row !important;
  }

  th.visible-print,
  td.visible-print {
    display: table-cell !important;
  }
}
.visible-print-block {
  display: none !important;
}
@media print {
  .visible-print-block {
    display: block !important;
  }
}

.visible-print-inline {
  display: none !important;
}
@media print {
  .visible-print-inline {
    display: inline !important;
  }
}

.visible-print-inline-block {
  display: none !important;
}
@media print {
  .visible-print-inline-block {
    display: inline-block !important;
  }
}

@media print {
  .hidden-print {
    display: none !important;
  }
}

/*# sourceMappingURL=bootstrap.css.map */


================================================
FILE: src/assets/css/icomoon.css
================================================
@font-face {
  font-family: 'icomoon';
  src:  url('../fonts/icomoon/icomoon.eot?6iuir');
  src:  url('../fonts/icomoon/icomoon.eot?6iuir#iefix') format('embedded-opentype'),
    url('../fonts/icomoon/icomoon.ttf?6iuir') format('truetype'),
    url('../fonts/icomoon/icomoon.woff?6iuir') format('woff'),
    url('../fonts/icomoon/icomoon.svg?6iuir#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
}

[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-eye:before {
  content: "\e000";
}
.icon-paper-clip:before {
  content: "\e001";
}
.icon-mail:before {
  content: "\e002";
}
.icon-toggle:before {
  content: "\e003";
}
.icon-layout:before {
  content: "\e004";
}
.icon-link:before {
  content: "\e005";
}
.icon-bell:before {
  content: "\e006";
}
.icon-lock:before {
  content: "\e007";
}
.icon-unlock:before {
  content: "\e008";
}
.icon-ribbon:before {
  content: "\e009";
}
.icon-image:before {
  content: "\e010";
}
.icon-signal:before {
  content: "\e011";
}
.icon-target:before {
  content: "\e012";
}
.icon-clipboard:before {
  content: "\e013";
}
.icon-clock:before {
  content: "\e014";
}
.icon-watch:before {
  content: "\e015";
}
.icon-air-play:before {
  content: "\e016";
}
.icon-camera:before {
  content: "\e017";
}
.icon-video:before {
  content: "\e018";
}
.icon-disc:before {
  content: "\e019";
}
.icon-printer:before {
  content: "\e020";
}
.icon-monitor:before {
  content: "\e021";
}
Download .txt
gitextract_cpdabvrc/

├── .eslintrc.js
├── .github/
│   └── workflows/
│       └── main.yml
├── .gitignore
├── .prettierignore
├── .prettierrc
├── LICENSE
├── README.md
├── api/
│   ├── guest-data.json
│   └── shift.json
├── gatsby-config.js
├── package.json
└── src/
    ├── assets/
    │   └── css/
    │       ├── bootstrap.css
    │       ├── icomoon.css
    │       └── style.css
    ├── components/
    │   ├── ConfirmationSection/
    │   │   ├── index.js
    │   │   └── styles.js
    │   ├── Covid19/
    │   │   ├── SectionBox.js
    │   │   ├── index.js
    │   │   └── styles.js
    │   ├── FloatingMusic/
    │   │   ├── Loadable.js
    │   │   ├── Modal.js
    │   │   ├── index.js
    │   │   └── styles.js
    │   ├── FooterSection/
    │   │   └── index.js
    │   ├── GenerateLink/
    │   │   ├── index.js
    │   │   └── styles.js
    │   ├── HelloSection/
    │   │   ├── index.js
    │   │   └── styles.js
    │   ├── Layout/
    │   │   ├── Ticket.js
    │   │   ├── index.js
    │   │   └── styles.js
    │   ├── LocationSection/
    │   │   ├── index.js
    │   │   └── styles.js
    │   ├── PhotoSection/
    │   │   ├── Loadable.js
    │   │   ├── index.js
    │   │   └── photo-data.js
    │   ├── QRCard/
    │   │   ├── index.js
    │   │   └── styles.js
    │   ├── StorySection/
    │   │   ├── StoryItem.js
    │   │   ├── index.js
    │   │   ├── stories-data.js
    │   │   └── styles.js
    │   ├── Ticket/
    │   │   ├── index.js
    │   │   └── styles.js
    │   ├── WeddingSection/
    │   │   ├── ButtonLive.js
    │   │   ├── WeddingInfoBox.js
    │   │   ├── index.js
    │   │   └── styles.js
    │   ├── WelcomeSection/
    │   │   ├── CountContainer.js
    │   │   ├── CountItem.js
    │   │   ├── ScrollToDown.js
    │   │   ├── index.js
    │   │   └── styles.js
    │   └── WishesSection/
    │       ├── WishesContainer.js
    │       ├── WishesItem.js
    │       ├── index.js
    │       ├── styles.js
    │       └── wishlist-data.js
    ├── constants/
    │   └── index.js
    ├── helpers/
    │   ├── getQueryValue.js
    │   ├── isMobileDevice.js
    │   └── pxToRem.js
    ├── hooks/
    │   ├── useConfigData.js
    │   ├── useDateCountdown.js
    │   └── useGuestData.js
    └── pages/
        ├── e-ticket.js
        ├── generate-link.js
        ├── generate-qr.js
        └── index.js
Download .txt
SYMBOL INDEX (51 symbols across 37 files)

FILE: src/components/ConfirmationSection/index.js
  function ConfirmationSection (line 7) | function ConfirmationSection({ isInvitation, guestName, codeLink }) {

FILE: src/components/Covid19/SectionBox.js
  function SectionBox (line 4) | function SectionBox({ icon, text }) {

FILE: src/components/Covid19/index.js
  function CovidSection (line 11) | function CovidSection() {

FILE: src/components/FloatingMusic/Modal.js
  function ModalMusic (line 7) | function ModalMusic({ isShow, onClickAction }) {

FILE: src/components/FloatingMusic/index.js
  function FloatingMusic (line 8) | function FloatingMusic() {

FILE: src/components/FooterSection/index.js
  function FooterSection (line 5) | function FooterSection({ isInvitation }) {

FILE: src/components/GenerateLink/index.js
  constant PERSONAL (line 4) | const PERSONAL = 1;
  constant ALL (line 5) | const ALL = 2;
  function GenerateLink (line 7) | function GenerateLink() {

FILE: src/components/HelloSection/index.js
  function HelloSection (line 9) | function HelloSection({ isInvitation }) {

FILE: src/components/Layout/Ticket.js
  function LayoutTicket (line 8) | function LayoutTicket({ children }) {

FILE: src/components/Layout/index.js
  constant IMAGE_URL (line 10) | const IMAGE_URL = `https://thekusuma.com/static/slide-6-4715e29302dbaa2b...
  constant META_DESCRIPTION (line 11) | const META_DESCRIPTION = `Dengan memohon Rahmat dan Ridho Illahi, teriri...
  function MainLayout (line 13) | function MainLayout({ children }) {

FILE: src/components/LocationSection/index.js
  function LocationSection (line 5) | function LocationSection() {

FILE: src/components/PhotoSection/index.js
  function PhotoSection (line 6) | function PhotoSection() {

FILE: src/components/QRCard/index.js
  function QRCard (line 5) | function QRCard({ name, code, desc }) {

FILE: src/components/StorySection/StoryItem.js
  function StoryItem (line 4) | function StoryItem({ image, title, date, description, isInverted }) {

FILE: src/components/StorySection/index.js
  function StorySection (line 6) | function StorySection() {

FILE: src/components/Ticket/index.js
  function TicketData (line 8) | function TicketData({ guest, configData }) {

FILE: src/components/WeddingSection/ButtonLive.js
  function ButtonLive (line 6) | function ButtonLive() {

FILE: src/components/WeddingSection/WeddingInfoBox.js
  function WeddingInfoBox (line 4) | function WeddingInfoBox({ title, date, time, description }) {

FILE: src/components/WeddingSection/index.js
  function WeddingSection (line 8) | function WeddingSection({ isInvitation }) {

FILE: src/components/WelcomeSection/CountContainer.js
  function CountContainer (line 7) | function CountContainer() {

FILE: src/components/WelcomeSection/CountItem.js
  function CountItem (line 5) | function CountItem({ number, text }) {

FILE: src/components/WelcomeSection/ScrollToDown.js
  function ClickToSeeDetail (line 6) | function ClickToSeeDetail({ loading, onClick }) {

FILE: src/components/WelcomeSection/index.js
  constant DELAY_TIME (line 10) | const DELAY_TIME = 1500;
  function WelcomeSection (line 12) | function WelcomeSection({ location, guestName, isInvitation, isAnonymGue...

FILE: src/components/WishesSection/WishesContainer.js
  constant INTERVAL_SLIDE (line 7) | const INTERVAL_SLIDE = 35000;
  function WishesContainer (line 9) | function WishesContainer() {

FILE: src/components/WishesSection/WishesItem.js
  function WishesItem (line 5) | function WishesItem({ image, name, infoName, description, isActive }) {

FILE: src/components/WishesSection/index.js
  function WishesSection (line 4) | function WishesSection() {

FILE: src/constants/index.js
  constant GOOGLE_CALENDAR_LINK (line 4) | const GOOGLE_CALENDAR_LINK = `https://calendar.google.com/calendar/event...
  constant GOOGLE_MAPS_LINK (line 5) | const GOOGLE_MAPS_LINK = `https://g.page/HARRISHotelSentralandSemarang?s...
  constant EPOCH_START_EVENT (line 10) | const EPOCH_START_EVENT = 1613952139;
  constant EPOCH_END_EVENT (line 11) | const EPOCH_END_EVENT = 1613952139;
  constant UTC_WEDDING_TIME (line 12) | const UTC_WEDDING_TIME = '2020-10-03:04:00:00Z';

FILE: src/helpers/getQueryValue.js
  function getQueryValue (line 1) | function getQueryValue(location, name) {

FILE: src/helpers/isMobileDevice.js
  function isMobileDevice (line 1) | function isMobileDevice() {

FILE: src/helpers/pxToRem.js
  function pxToRem (line 1) | function pxToRem(px) {

FILE: src/hooks/useConfigData.js
  function useConfigData (line 4) | function useConfigData() {

FILE: src/hooks/useDateCountdown.js
  constant INTERVAL_TIME (line 4) | const INTERVAL_TIME = 1000;
  constant DAY_PER_SECONDS (line 5) | const DAY_PER_SECONDS = 86400;
  constant HOUR_PER_SECONDS (line 6) | const HOUR_PER_SECONDS = 3600;
  constant MINUTE_PER_SECONDS (line 7) | const MINUTE_PER_SECONDS = 60;
  function useDateCountdown (line 11) | function useDateCountdown() {

FILE: src/hooks/useGuestData.js
  function useGuestData (line 4) | function useGuestData() {

FILE: src/pages/e-ticket.js
  function ETicket (line 11) | function ETicket({ location }) {

FILE: src/pages/generate-link.js
  function GenerateLinkWrapper (line 7) | function GenerateLinkWrapper() {

FILE: src/pages/generate-qr.js
  function GenerateQRPage (line 8) | function GenerateQRPage() {

FILE: src/pages/index.js
  function Home (line 20) | function Home({ location }) {
Condensed preview — 69 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (375K chars).
[
  {
    "path": ".eslintrc.js",
    "chars": 629,
    "preview": "module.exports = {\n  globals: {\n    __PATH_PREFIX__: true,\n  },\n  extends: `react-app`,\n  rules: {\n    'jsx-a11y/accessi"
  },
  {
    "path": ".github/workflows/main.yml",
    "chars": 337,
    "preview": "name: Gatsby Publish\n\non:\n  push:\n    branches:\n      - master\n\njobs:\n  build:\n    runs-on: ubuntu-latest\n    steps:\n   "
  },
  {
    "path": ".gitignore",
    "chars": 974,
    "preview": "# Logs\nlogs\n*.log\nnpm-debug.log*\nyarn-debug.log*\nyarn-error.log*\n\n# Runtime data\npids\n*.pid\n*.seed\n*.pid.lock\n\n# Directo"
  },
  {
    "path": ".prettierignore",
    "chars": 45,
    "preview": ".cache\npackage.json\npackage-lock.json\npublic\n"
  },
  {
    "path": ".prettierrc",
    "chars": 98,
    "preview": "{\n  \"bracketSpacing\": true,\n  \"printWidth\": 120,\n  \"singleQuote\": true,\n  \"trailingComma\": \"all\"\n}"
  },
  {
    "path": "LICENSE",
    "chars": 1065,
    "preview": "MIT License\n\nCopyright (c) 2018 gatsbyjs\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\no"
  },
  {
    "path": "README.md",
    "chars": 687,
    "preview": "# Dinda & Indra Wedding Website\n\n![Gatsby Publish](https://github.com/idindrakusuma/thekusuma/workflows/Gatsby%20Publish"
  },
  {
    "path": "api/guest-data.json",
    "chars": 55987,
    "preview": "[\n  {\n    \"code\": \"DXI-0001\",\n    \"name\": \"Suharyo\",\n    \"desc\": \"Jalan Singa, Semarang\",\n    \"shift\": 1,\n    \"isAttende"
  },
  {
    "path": "api/shift.json",
    "chars": 135,
    "preview": "{\n  \"currentShift\": 1,\n  \"isUseShift\": true,\n  \"shiftType\": [null, \"10.30 - 12.00 WIB\", \"12.00 - 13.30 WIB\"],\n  \"totalSo"
  },
  {
    "path": "gatsby-config.js",
    "chars": 643,
    "preview": "/**\n * Configure your Gatsby site with this file.\n *\n * See: https://www.gatsbyjs.org/docs/gatsby-config/\n */\n\nmodule.ex"
  },
  {
    "path": "package.json",
    "chars": 1361,
    "preview": "{\n  \"name\": \"gatsby-starter-hello-world\",\n  \"private\": true,\n  \"description\": \"A simplified bare-bones starter for Gatsb"
  },
  {
    "path": "src/assets/css/bootstrap.css",
    "chars": 134655,
    "preview": "@charset \"UTF-8\";\n/*!\n * Bootstrap v3.3.5 (http://getbootstrap.com)\n * Copyright 2011-2015 Twitter, Inc.\n * Licensed und"
  },
  {
    "path": "src/assets/css/icomoon.css",
    "chars": 25225,
    "preview": "@font-face {\n  font-family: 'icomoon';\n  src:  url('../fonts/icomoon/icomoon.eot?6iuir');\n  src:  url('../fonts/icomoon/"
  },
  {
    "path": "src/assets/css/style.css",
    "chars": 39162,
    "preview": "@font-face {\n  font-family: 'icomoon';\n  src: url('../fonts/icomoon/icomoon.eot?srf3rx');\n  src: url('../fonts/icomoon/i"
  },
  {
    "path": "src/components/ConfirmationSection/index.js",
    "chars": 1285,
    "preview": "import React from 'react';\nimport { string, bool } from 'prop-types';\nimport { Link } from 'gatsby';\n\nimport { styWrappe"
  },
  {
    "path": "src/components/ConfirmationSection/styles.js",
    "chars": 357,
    "preview": "import { css } from '@emotion/core';\nimport Background from '@assets/images/slide-6.jpg';\n\nexport const styWrapper = css"
  },
  {
    "path": "src/components/Covid19/SectionBox.js",
    "chars": 421,
    "preview": "import React from 'react';\nimport { styBoxWrapper } from './styles';\n\nfunction SectionBox({ icon, text }) {\n  return (\n "
  },
  {
    "path": "src/components/Covid19/index.js",
    "chars": 1734,
    "preview": "import React from 'react';\n\nimport IconMask from './assets/face-mask.png';\nimport IconSocialDistancing from './assets/so"
  },
  {
    "path": "src/components/Covid19/styles.js",
    "chars": 502,
    "preview": "import { css } from '@emotion/core';\n\nexport const styBoxWrapper = css`\n  display: flex;\n  justify-content: center;\n  al"
  },
  {
    "path": "src/components/FloatingMusic/Loadable.js",
    "chars": 179,
    "preview": "import loadable from '@loadable/component';\n\nconst FloatingMusic = loadable(() => import(/* webpackChunkName: \"chunk-flo"
  },
  {
    "path": "src/components/FloatingMusic/Modal.js",
    "chars": 1326,
    "preview": "import React from 'react';\nimport { Helmet } from 'react-helmet';\nimport { bool, func } from 'prop-types';\n\nimport { sty"
  },
  {
    "path": "src/components/FloatingMusic/index.js",
    "chars": 1249,
    "preview": "import React, { Fragment, useState } from 'react';\nimport IconMusic from '@assets/images/music-icon.png';\nimport IconMus"
  },
  {
    "path": "src/components/FloatingMusic/styles.js",
    "chars": 1032,
    "preview": "import { css } from '@emotion/core';\n\nexport const styMusicFloating = css`\n  .hide {\n    display: none;\n  }\n\n  .icon-mus"
  },
  {
    "path": "src/components/FooterSection/index.js",
    "chars": 2491,
    "preview": "import React, { Fragment } from 'react';\nimport { bool } from 'prop-types';\nimport { styWrapper } from '../HelloSection/"
  },
  {
    "path": "src/components/GenerateLink/index.js",
    "chars": 5355,
    "preview": "import React, { useState, Fragment } from 'react';\nimport useGuestData from '@/hooks/useGuestData';\n\nconst PERSONAL = 1;"
  },
  {
    "path": "src/components/GenerateLink/styles.js",
    "chars": 242,
    "preview": "import { css } from '@emotion/core';\n\nexport const styWrapper = css`\n  padding: 24px 8px 8px 8px;\n\n  .title {\n    text-a"
  },
  {
    "path": "src/components/HelloSection/index.js",
    "chars": 3522,
    "preview": "import React, { Fragment } from 'react';\nimport { bool } from 'prop-types';\n\nimport Bride from '@assets/images/p-dinda-2"
  },
  {
    "path": "src/components/HelloSection/styles.js",
    "chars": 473,
    "preview": "import { css } from '@emotion/core';\n\nexport const styWrapper = css`\n  .sub-title {\n    color: #828282;\n    font-weight:"
  },
  {
    "path": "src/components/Layout/Ticket.js",
    "chars": 766,
    "preview": "import * as React from 'react';\nimport { node } from 'prop-types';\nimport { Helmet } from 'react-helmet';\n\nimport Favico"
  },
  {
    "path": "src/components/Layout/index.js",
    "chars": 2060,
    "preview": "import React, { Fragment } from 'react';\nimport { Helmet } from 'react-helmet';\nimport { node } from 'prop-types';\n\nimpo"
  },
  {
    "path": "src/components/Layout/styles.js",
    "chars": 241,
    "preview": "import { css } from '@emotion/core';\n\nexport const styWrapper = css`\n  max-width: 100%;\n\n  .main-page {\n    display: fle"
  },
  {
    "path": "src/components/LocationSection/index.js",
    "chars": 1969,
    "preview": "import React, { Fragment } from 'react';\nimport { GOOGLE_MAPS_LINK } from '@/constants';\nimport { styWrapper } from './s"
  },
  {
    "path": "src/components/LocationSection/styles.js",
    "chars": 226,
    "preview": "import { css } from '@emotion/core';\n\nexport const styWrapper = css`\n  @media screen and (max-width: 400px) {\n    .sub-t"
  },
  {
    "path": "src/components/PhotoSection/Loadable.js",
    "chars": 176,
    "preview": "import loadable from '@loadable/component';\n\nconst PhotoSection = loadable(() => import(/* webpackChunkName: \"chunk-phot"
  },
  {
    "path": "src/components/PhotoSection/index.js",
    "chars": 1671,
    "preview": "import React from 'react';\nimport ImageGallery from 'react-image-gallery';\nimport 'react-image-gallery/styles/css/image-"
  },
  {
    "path": "src/components/PhotoSection/photo-data.js",
    "chars": 2584,
    "preview": "import Gallery1 from '@assets/images/gallery-1.jpg';\nimport GalleryT1 from '@assets/images/gallery-t-1.jpg';\nimport Gall"
  },
  {
    "path": "src/components/QRCard/index.js",
    "chars": 829,
    "preview": "import React from 'react';\nimport QRCode from 'react-qr-code';\nimport { string } from 'prop-types';\n\nfunction QRCard({ n"
  },
  {
    "path": "src/components/QRCard/styles.js",
    "chars": 490,
    "preview": "import { css } from '@emotion/core';\n\nexport const styWrapper = css`\n  width: 100%;\n\n  .qr {\n    border: 1px solid;\n    "
  },
  {
    "path": "src/components/StorySection/StoryItem.js",
    "chars": 866,
    "preview": "import React from 'react';\nimport { string, bool } from 'prop-types';\n\nfunction StoryItem({ image, title, date, descript"
  },
  {
    "path": "src/components/StorySection/index.js",
    "chars": 963,
    "preview": "import React, { Fragment } from 'react';\n\nimport StoryItem from './StoryItem';\nimport { stories } from './stories-data';"
  },
  {
    "path": "src/components/StorySection/stories-data.js",
    "chars": 3672,
    "preview": "import ImgKembaliBerjumpa from '@assets/images/p-kembali-berjumpa.jpg';\nimport ImgJakartaKroasia from '@assets/images/p-"
  },
  {
    "path": "src/components/StorySection/styles.js",
    "chars": 209,
    "preview": "import { css } from '@emotion/core';\n\nexport const styWrapper = (noImage) => css`\n  ${noImage && `margin-left: 100px;`}\n"
  },
  {
    "path": "src/components/Ticket/index.js",
    "chars": 2554,
    "preview": "import React from 'react';\nimport QRCode from 'react-qr-code';\nimport { object } from 'prop-types';\nimport { Link } from"
  },
  {
    "path": "src/components/Ticket/styles.js",
    "chars": 2531,
    "preview": "import { css } from '@emotion/core';\n\nexport const styWrapper = css`\n  @import url('https://fonts.googleapis.com/css?fam"
  },
  {
    "path": "src/components/WeddingSection/ButtonLive.js",
    "chars": 695,
    "preview": "import React from 'react';\n\nimport IconIg from './assets/instagram.png';\nimport { styButtonWrapper } from './styles';\n\nf"
  },
  {
    "path": "src/components/WeddingSection/WeddingInfoBox.js",
    "chars": 934,
    "preview": "import React from 'react';\nimport { string } from 'prop-types';\n\nfunction WeddingInfoBox({ title, date, time, descriptio"
  },
  {
    "path": "src/components/WeddingSection/index.js",
    "chars": 2085,
    "preview": "import React, { Fragment } from 'react';\nimport { bool } from 'prop-types';\n\nimport WeddingInfoBox from './WeddingInfoBo"
  },
  {
    "path": "src/components/WeddingSection/styles.js",
    "chars": 1341,
    "preview": "import { css } from '@emotion/core';\nimport Background from '@assets/images/bg-wedding.jpg';\n\nexport const styWrapper = "
  },
  {
    "path": "src/components/WelcomeSection/CountContainer.js",
    "chars": 972,
    "preview": "import React from 'react';\nimport useDateCountdown from '@/hooks/useDateCountdown';\nimport CountItem from './CountItem';"
  },
  {
    "path": "src/components/WelcomeSection/CountItem.js",
    "chars": 390,
    "preview": "import React from 'react';\nimport { number, string } from 'prop-types';\nimport { styWrapperCount } from './styles';\n\nfun"
  },
  {
    "path": "src/components/WelcomeSection/ScrollToDown.js",
    "chars": 614,
    "preview": "import React from 'react';\n\nimport { styScrollWrapper } from './styles';\nimport { bool, func } from 'prop-types';\n\nfunct"
  },
  {
    "path": "src/components/WelcomeSection/index.js",
    "chars": 3269,
    "preview": "import React, { Fragment, useState } from 'react';\nimport { object, string, bool, func } from 'prop-types';\nimport { Lin"
  },
  {
    "path": "src/components/WelcomeSection/styles.js",
    "chars": 4819,
    "preview": "import { css, keyframes } from '@emotion/core';\nimport Background from '@assets/images/bg-welcome.jpg';\n\nexport const st"
  },
  {
    "path": "src/components/WishesSection/WishesContainer.js",
    "chars": 1853,
    "preview": "import React, { useState, useEffect, useCallback } from 'react';\n\nimport WishesItem from './WishesItem';\nimport { wishli"
  },
  {
    "path": "src/components/WishesSection/WishesItem.js",
    "chars": 1027,
    "preview": "import React from 'react';\nimport { string, bool } from 'prop-types';\nimport { styWrapperItem, styWithAnimation } from '"
  },
  {
    "path": "src/components/WishesSection/index.js",
    "chars": 638,
    "preview": "import React from 'react';\nimport WishesContainer from './WishesContainer';\n\nfunction WishesSection() {\n  return (\n    <"
  },
  {
    "path": "src/components/WishesSection/styles.js",
    "chars": 1155,
    "preview": "import { css, keyframes } from '@emotion/core';\n\nconst animation = keyframes`\n  0% { right: -300px; opacity: 0;}\n  50% {"
  },
  {
    "path": "src/components/WishesSection/wishlist-data.js",
    "chars": 11031,
    "preview": "import Nita from '@assets/images/w-nita.jpg';\nimport Zakiy from '@assets/images/w-zakiy.jpg';\nimport Moletta from '@asse"
  },
  {
    "path": "src/constants/index.js",
    "chars": 472,
    "preview": "/**\n * Link\n */\nexport const GOOGLE_CALENDAR_LINK = `https://calendar.google.com/calendar/event?action=TEMPLATE&dates=20"
  },
  {
    "path": "src/helpers/getQueryValue.js",
    "chars": 322,
    "preview": "export default function getQueryValue(location, name) {\n  const testedName = name.replace(/[[]/, '\\\\[').replace(/[\\]]/, "
  },
  {
    "path": "src/helpers/isMobileDevice.js",
    "chars": 511,
    "preview": "function isMobileDevice() {\n  if (typeof window === undefined) return false;\n\n  const userAgent = window.navigator.userA"
  },
  {
    "path": "src/helpers/pxToRem.js",
    "chars": 101,
    "preview": "function pxToRem(px) {\n  const result = px / 14;\n  return `${result}rem`;\n}\n\nexport default pxToRem;\n"
  },
  {
    "path": "src/hooks/useConfigData.js",
    "chars": 596,
    "preview": "import { useState, useEffect } from 'react';\nimport offlineConfigData from '../../api/shift.json';\n\nfunction useConfigDa"
  },
  {
    "path": "src/hooks/useDateCountdown.js",
    "chars": 1998,
    "preview": "import { useState, useEffect, useCallback } from 'react';\nimport { EPOCH_END_EVENT, EPOCH_START_EVENT } from '@/constant"
  },
  {
    "path": "src/hooks/useGuestData.js",
    "chars": 597,
    "preview": "import { useState, useEffect } from 'react';\nimport offlineGuestData from '../../api/guest-data.json';\n\nfunction useGues"
  },
  {
    "path": "src/pages/e-ticket.js",
    "chars": 2152,
    "preview": "import React, { useState, useEffect, useRef, useCallback } from 'react';\n\nimport MainLayout from '@components/Layout';\ni"
  },
  {
    "path": "src/pages/generate-link.js",
    "chars": 365,
    "preview": "import React from 'react';\n\nimport MainLayout from '@components/Layout';\nimport GenerateLink from '@components/GenerateL"
  },
  {
    "path": "src/pages/generate-qr.js",
    "chars": 757,
    "preview": "import React from 'react';\n\nimport MainLayout from '@components/Layout';\nimport QRCard from '@components/QRCard';\nimport"
  },
  {
    "path": "src/pages/index.js",
    "chars": 2408,
    "preview": "import React, { useState, Fragment } from 'react';\nimport { object } from 'prop-types';\nimport getQueryValue from '@help"
  }
]

About this extraction

This page contains the full source code of the idindrakusuma/thekusuma GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 69 files (336.0 KB), approximately 108.9k tokens, and a symbol index with 51 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!