GEM
  remote: https://rubygems.org/
  specs:
    activesupport (4.2.10)
      i18n (~> 0.7)
      minitest (~> 5.1)
      thread_safe (~> 0.3, >= 0.3.4)
      tzinfo (~> 1.1)
    addressable (2.5.2)
      public_suffix (>= 2.0.2, < 4.0)
    ansi (1.5.0)
    backports (3.11.4)
    bookbindery (10.1.14)
      ansi (~> 1.4)
      css_parser
      elasticsearch
      fog-aws (~> 0.7.1)
      font-awesome-sass (= 4.7.0)
      git (~> 1.2.8)
      middleman (= 4.1.10)
      middleman-compass
      middleman-livereload
      middleman-sprockets
      middleman-syntax (= 2.1.0)
      nokogiri (= 1.8.2)
      puma
      rack-rewrite
      redcarpet (~> 3.2.3)
      rouge (!= 1.9.1)
      therubyracer
      thor (= 0.19.1)
    builder (3.2.3)
    chunky_png (1.3.10)
    coffee-script (2.4.1)
      coffee-script-source
      execjs
    coffee-script-source (1.12.2)
    compass (1.0.3)
      chunky_png (~> 1.2)
      compass-core (~> 1.0.2)
      compass-import-once (~> 1.0.5)
      rb-fsevent (>= 0.9.3)
      rb-inotify (>= 0.9)
      sass (>= 3.3.13, < 3.5)
    compass-core (1.0.3)
      multi_json (~> 1.0)
      sass (>= 3.3.0, < 3.5)
    compass-import-once (1.0.5)
      sass (>= 3.2, < 3.5)
    concurrent-ruby (1.0.5)
    contracts (0.13.0)
    css_parser (1.6.0)
      addressable
    dotenv (2.5.0)
    elasticsearch (6.1.0)
      elasticsearch-api (= 6.1.0)
      elasticsearch-transport (= 6.1.0)
    elasticsearch-api (6.1.0)
      multi_json
    elasticsearch-transport (6.1.0)
      faraday
      multi_json
    em-websocket (0.5.1)
      eventmachine (>= 0.12.9)
      http_parser.rb (~> 0.6.0)
    erubis (2.7.0)
    eventmachine (1.2.7)
    excon (0.62.0)
    execjs (2.7.0)
    faraday (0.15.2)
      multipart-post (>= 1.2, < 3)
    fast_blank (1.0.0)
    fastimage (2.1.3)
    ffi (1.9.25)
    fog-aws (0.7.6)
      fog-core (~> 1.27)
      fog-json (~> 1.0)
      fog-xml (~> 0.1)
      ipaddress (~> 0.8)
    fog-core (1.45.0)
      builder
      excon (~> 0.58)
      formatador (~> 0.2)
    fog-json (1.2.0)
      fog-core
      multi_json (~> 1.10)
    fog-xml (0.1.3)
      fog-core
      nokogiri (>= 1.5.11, < 2.0.0)
    font-awesome-sass (4.7.0)
      sass (>= 3.2)
    formatador (0.2.5)
    git (1.2.9.1)
    haml (5.0.4)
      temple (>= 0.8.0)
      tilt
    hamster (3.0.0)
      concurrent-ruby (~> 1.0)
    hashie (3.6.0)
    http_parser.rb (0.6.0)
    i18n (0.7.0)
    ipaddress (0.8.3)
    kramdown (1.17.0)
    libv8 (3.16.14.7)
    listen (3.0.8)
      rb-fsevent (~> 0.9, >= 0.9.4)
      rb-inotify (~> 0.9, >= 0.9.7)
    memoist (0.16.0)
    middleman (4.1.10)
      coffee-script (~> 2.2)
      compass-import-once (= 1.0.5)
      haml (>= 4.0.5)
      kramdown (~> 1.2)
      middleman-cli (= 4.1.10)
      middleman-core (= 4.1.10)
      sass (>= 3.4.0, < 4.0)
    middleman-cli (4.1.10)
      thor (>= 0.17.0, < 2.0)
    middleman-compass (4.0.1)
      compass (>= 1.0.0, < 2.0.0)
      middleman-core (>= 4.0.0)
    middleman-core (4.1.10)
      activesupport (~> 4.2)
      addressable (~> 2.3)
      backports (~> 3.6)
      bundler (~> 1.1)
      contracts (~> 0.13.0)
      dotenv
      erubis
      execjs (~> 2.0)
      fast_blank
      fastimage (~> 2.0)
      hamster (~> 3.0)
      hashie (~> 3.4)
      i18n (~> 0.7.0)
      listen (~> 3.0.0)
      memoist (~> 0.14)
      padrino-helpers (~> 0.13.0)
      parallel
      rack (>= 1.4.5, < 2.0)
      sass (>= 3.4)
      servolux
      tilt (~> 1.4.1)
      uglifier (~> 3.0)
    middleman-livereload (3.4.6)
      em-websocket (~> 0.5.1)
      middleman-core (>= 3.3)
      rack-livereload (~> 0.3.15)
    middleman-sprockets (4.1.1)
      middleman-core (~> 4.0)
      sprockets (>= 3.0)
    middleman-syntax (2.1.0)
      middleman-core (>= 3.2)
      rouge (~> 1.0)
    mini_portile2 (2.3.0)
    minitest (5.11.3)
    multi_json (1.13.1)
    multipart-post (2.0.0)
    nokogiri (1.8.2)
      mini_portile2 (~> 2.3.0)
    padrino-helpers (0.13.3.4)
      i18n (~> 0.6, >= 0.6.7)
      padrino-support (= 0.13.3.4)
      tilt (>= 1.4.1, < 3)
    padrino-support (0.13.3.4)
      activesupport (>= 3.1)
    parallel (1.12.1)
    public_suffix (3.0.3)
    puma (3.12.0)
    rack (1.6.10)
    rack-livereload (0.3.17)
      rack
    rack-rewrite (1.5.1)
    rb-fsevent (0.10.3)
    rb-inotify (0.9.10)
      ffi (>= 0.5.0, < 2)
    redcarpet (3.2.3)
    ref (2.0.0)
    rouge (1.11.1)
    sass (3.4.25)
    servolux (0.13.0)
    sprockets (3.7.2)
      concurrent-ruby (~> 1.0)
      rack (> 1, < 3)
    temple (0.8.0)
    therubyracer (0.12.2)
      libv8 (~> 3.16.14.0)
      ref
    thor (0.19.1)
    thread_safe (0.3.6)
    tilt (1.4.1)
    tzinfo (1.2.5)
      thread_safe (~> 0.1)
    uglifier (3.2.0)
      execjs (>= 0.3.0, < 3)

PLATFORMS
  ruby

DEPENDENCIES
  bookbindery
  libv8 (= 3.16.14.7)

BUNDLED WITH
   1.16.2
