webpackJsonp([2],[
/* 0 */
/***/ function(module, exports, __webpack_require__) {

	__webpack_require__(52);

/***/ },
/* 1 */,
/* 2 */,
/* 3 */,
/* 4 */,
/* 5 */,
/* 6 */,
/* 7 */,
/* 8 */,
/* 9 */,
/* 10 */,
/* 11 */,
/* 12 */,
/* 13 */,
/* 14 */,
/* 15 */,
/* 16 */,
/* 17 */,
/* 18 */,
/* 19 */,
/* 20 */,
/* 21 */,
/* 22 */,
/* 23 */,
/* 24 */,
/* 25 */,
/* 26 */,
/* 27 */,
/* 28 */,
/* 29 */,
/* 30 */,
/* 31 */,
/* 32 */,
/* 33 */,
/* 34 */,
/* 35 */,
/* 36 */,
/* 37 */,
/* 38 */,
/* 39 */,
/* 40 */,
/* 41 */,
/* 42 */,
/* 43 */,
/* 44 */,
/* 45 */,
/* 46 */,
/* 47 */,
/* 48 */,
/* 49 */,
/* 50 */,
/* 51 */,
/* 52 */
/***/ function(module, exports, __webpack_require__) {

	var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;!(__WEBPACK_AMD_DEFINE_ARRAY__ = [exports, __webpack_require__(2), __webpack_require__(9), __webpack_require__(10), __webpack_require__(5), __webpack_require__(53), __webpack_require__(54), __webpack_require__(60), __webpack_require__(62), __webpack_require__(63), __webpack_require__(64), __webpack_require__(65), __webpack_require__(6), __webpack_require__(45), __webpack_require__(69), __webpack_require__(70), __webpack_require__(73), __webpack_require__(74), __webpack_require__(76), __webpack_require__(77), __webpack_require__(79), __webpack_require__(80), __webpack_require__(81)], __WEBPACK_AMD_DEFINE_RESULT__ = function (exports, _jquery, _play, _environment, _frampton, _javascriptsCommonUtilsIoLoadScript, _javascriptsCommonModulesMobileDrawerLoad, _javascriptsCommonModulesAccordion, _javascriptsCommonModulesA11yHeader, _javascriptsCommonModulesNotification, _javascriptsCommonModulesOpenCases, _javascriptsCommonModulesSurveyMain, _javascriptsConfigTemplates, _javascriptsConfigRoutes, _javascriptsCommonSvg, _javascriptsCommonFontsLoad, _javascriptsCommonModulesSignInRedirect, _javascriptsCommonModulesSearchMain, _javascriptsCommonModulesDropdownConfig, _javascriptsCommonModulesDropdownMain, _javascriptsCommonModulesMobileLanguageSwitcher, _javascriptsCommonModulesMobileProductMenu, _javascriptsCommonUtilsIoPrepareCache) {
	  'use strict';

	  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }

	  var _$ = _interopRequireDefault(_jquery);

	  var _play2 = _interopRequireDefault(_play);

	  var _ENV = _interopRequireDefault(_environment);

	  var _frampton2 = _interopRequireDefault(_frampton);

	  var _loadScript = _interopRequireDefault(_javascriptsCommonUtilsIoLoadScript);

	  var _MobileDrawer = _interopRequireDefault(_javascriptsCommonModulesMobileDrawerLoad);

	  var _Accordion = _interopRequireDefault(_javascriptsCommonModulesAccordion);

	  var _A11yHeader = _interopRequireDefault(_javascriptsCommonModulesA11yHeader);

	  var _Notification = _interopRequireDefault(_javascriptsCommonModulesNotification);

	  var _OpenCases = _interopRequireDefault(_javascriptsCommonModulesOpenCases);

	  var _Survey = _interopRequireDefault(_javascriptsCommonModulesSurveyMain);

	  var _TEMPLATES = _interopRequireDefault(_javascriptsConfigTemplates);

	  var _ROUTES = _interopRequireDefault(_javascriptsConfigRoutes);

	  var _loadSvg = _interopRequireDefault(_javascriptsCommonSvg);

	  var _loadFonts = _interopRequireDefault(_javascriptsCommonFontsLoad);

	  var _signInRedirect = _interopRequireDefault(_javascriptsCommonModulesSignInRedirect);

	  var _searchBar = _interopRequireDefault(_javascriptsCommonModulesSearchMain);

	  var _mobileLangSwitcher = _interopRequireDefault(_javascriptsCommonModulesMobileLanguageSwitcher);

	  var _mobileProductMenu = _interopRequireDefault(_javascriptsCommonModulesMobileProductMenu);

	  var _prepareCache = _interopRequireDefault(_javascriptsCommonUtilsIoPrepareCache);

	  _frampton2['default'].ENV.MODE = _play2['default'].pageContext.isProd ? 'prod' : 'dev';

	  // Wait for jQuery document ready
	  _$['default'](function () {

	    var SELECTORS = {
	      A11Y: '.js-a11y-header',
	      SURVEY: '.js-survey'
	    };

	    // Ensure the current state of the cache
	    _prepareCache['default']();

	    // Load art deco fonts
	    _loadFonts['default'](window, document);

	    // load art deco icons
	    _loadSvg['default']();

	    // Instantiate global JS services
	    _A11yHeader['default'](_$['default'](SELECTORS.A11Y)[0]);
	    _Notification['default']();
	    _MobileDrawer['default']();

	    // Instantiate the search bar
	    _searchBar['default']();

	    // Instantiate dropdowns
	    _javascriptsCommonModulesDropdownMain.start(_javascriptsCommonModulesDropdownConfig.SELECTORS.DROPDOWN);

	    // Intantiate mobile fallbacks
	    _mobileProductMenu['default']();
	    _mobileLangSwitcher['default']();

	    _$['default'](SELECTORS.SURVEY).each(function () {
	      _Survey['default'](_$['default'](this));
	    });

	    if (!_ENV['default'].USER.isGuest) {
	      _OpenCases['default']();
	    }

	    // Initialize accordions.
	    _Accordion['default']();

	    // Async loading of chat script.
	    _loadScript['default'](_play2['default'].assetUrl('/javascripts/out/chat.js'));
	  });
	}.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));

/***/ },
/* 53 */
/***/ function(module, exports, __webpack_require__) {

	var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;!(__WEBPACK_AMD_DEFINE_ARRAY__ = [exports, module, __webpack_require__(2)], __WEBPACK_AMD_DEFINE_RESULT__ = function (exports, module, _jquery) {
	  'use strict';

	  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }

	  var _$ = _interopRequireDefault(_jquery);

	  var queue = [];

	  module.exports = function (src) {

	    queue.push(src);

	    window.addEventListener('load', function () {
	      queue.forEach(function (url) {
	        _$['default'].get(url).then(function (res) {
	          var newScript = document.createElement('script');
	          newScript.innerHtml = res;
	          document.body.appendChild(newScript);
	        });
	      });
	    });
	  };
	}.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));

/***/ },
/* 54 */
/***/ function(module, exports, __webpack_require__) {

	var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;!(__WEBPACK_AMD_DEFINE_ARRAY__ = [exports, module, __webpack_require__(55), __webpack_require__(56)], __WEBPACK_AMD_DEFINE_RESULT__ = function (exports, module, _javascriptsCommonWindow, _javascriptsCommonModulesMobileDrawerMain) {
	  'use strict';

	  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }

	  var _Drawer = _interopRequireDefault(_javascriptsCommonModulesMobileDrawerMain);

	  module.exports = function () {

	    var destroyDrawer;

	    _javascriptsCommonWindow.addListener('mobile', function () {
	      destroyDrawer = _Drawer['default']();
	    });

	    _javascriptsCommonWindow.addListener('desktop', function () {
	      if (destroyDrawer) {
	        destroyDrawer();
	        destroyDrawer = null;
	      }
	    });
	  };
	}.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));

/***/ },
/* 55 */,
/* 56 */
/***/ function(module, exports, __webpack_require__) {

	var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;!(__WEBPACK_AMD_DEFINE_ARRAY__ = [exports, module, __webpack_require__(2), __webpack_require__(5), __webpack_require__(57), __webpack_require__(58)], __WEBPACK_AMD_DEFINE_RESULT__ = function (exports, module, _jquery, _frampton, _javascriptsCommonExportsBody, _javascriptsCommonUtilsUiTrapFocus) {
	  'use strict';

	  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }

	  var _$ = _interopRequireDefault(_jquery);

	  var _Fr = _interopRequireDefault(_frampton);

	  var _$body = _interopRequireDefault(_javascriptsCommonExportsBody);

	  var _trapFocus = _interopRequireDefault(_javascriptsCommonUtilsUiTrapFocus);

	  var not = _Fr['default'].Utils.not;
	  var apply = _Fr['default'].Utils.apply;
	  var listen = _Fr['default'].Events.listen;
	  var containsEvent = _Fr['default'].Events.contains;
	  var Keyboard = _Fr['default'].Keyboard;
	  var isEscKey = _Fr['default'].Keyboard.isEsc;
	  var describe = _Fr['default'].Motion.describe;

	  var keyboard = Keyboard();

	  var DEFAULT_CONFIG = {

	    SELECTORS: {
	      DRAWER_MASK: '.js-mobile-drawer-mask',
	      DRAWER: '.js-mobile-drawer',
	      MENU_BUTTON: '.js-mobile-menu-button',
	      CLOSE: '.js-close-button'
	    },

	    CLASSES: {
	      OPEN: 'drawer-open',
	      SHOW_MASK: 'show-mask',
	      NO_SCROLL: 'no-scroll',
	      CLOSING: 'closing'
	    }

	  };

	  module.exports = function (el, options) {

	    var CONFIG = _$['default'].extend({}, DEFAULT_CONFIG, options || {});

	    var $menuButton = _$['default'](CONFIG.SELECTORS.MENU_BUTTON),
	        $drawerMask = _$['default'](CONFIG.SELECTORS.DRAWER_MASK),
	        $drawer = _$['default'](CONFIG.SELECTORS.DRAWER),
	        $close = $drawer.find(CONFIG.SELECTORS.CLOSE),
	        openTransition = describe($drawer[0], CONFIG.CLASSES.OPEN),
	        closeTransition = openTransition.reverse();

	    // Trap focus to the drawer when open
	    _trapFocus['default']($drawer[0], {});

	    // queue of events we'll need to remove when modal is destroyed.
	    var removeEvents = [];

	    // INSTANCE HELPERS
	    var afterClose = function afterClose() {
	      $drawer.removeClass(CONFIG.CLASSES.CLOSING);
	      _$body['default'].removeClass(CONFIG.CLASSES.NO_SCROLL);
	      $drawerMask.removeClass(CONFIG.CLASSES.SHOW_MASK);
	      $menuButton.attr('aria-expanded', 'false');
	      $drawerMask.attr('aria-hidden', 'true');
	      $menuButton.trigger('focus');
	    };

	    var afterOpen = function afterOpen() {
	      $drawer.addClass(CONFIG.CLASSES.CLOSING);
	      $menuButton.attr('aria-expanded', 'true');
	      $drawerMask.attr('aria-hidden', 'false');
	      $drawerMask.trigger('focus');
	    };

	    var closeDrawer = function closeDrawer() {
	      closeTransition.run(afterClose);
	    };

	    var openDrawer = function openDrawer(evt) {
	      $drawerMask.addClass(CONFIG.CLASSES.SHOW_MASK);
	      _$body['default'].addClass(CONFIG.CLASSES.NO_SCROLL);
	      openTransition.run(afterOpen);
	    };

	    // STREAMS

	    //+ menuClick :: EventStream DomEvent
	    var menuClick = listen('click', $menuButton[0]);

	    //+ escapes :: EventStream DomEvent
	    var escapes = keyboard.codes.filter(isEscKey);

	    //+ maskClick :: EventStream DomEvent
	    var maskClick = listen('click', $drawerMask[0]).filter(not(containsEvent($drawer[0])));

	    //+ close :: EventStream DomEvent
	    var close = listen('click', $close[0]);

	    //+ closeClicks :: Merged EventStream DomEvent
	    var closeClicks = close.merge(maskClick).merge(escapes);

	    // Open the drawer
	    removeEvents.push(closeClicks.next(closeDrawer));

	    // Close the drawer
	    removeEvents.push(menuClick.next(openDrawer));

	    return function destroy_drawer() {
	      removeEvents.forEach(apply);
	      removeEvents = [];
	    };
	  };
	}.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));

/***/ },
/* 57 */
/***/ function(module, exports, __webpack_require__) {

	var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;!(__WEBPACK_AMD_DEFINE_ARRAY__ = [exports, module, __webpack_require__(2)], __WEBPACK_AMD_DEFINE_RESULT__ = function (exports, module, _jquery) {
	  'use strict';

	  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }

	  var _$ = _interopRequireDefault(_jquery);

	  module.exports = _$['default']('body');
	}.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));

/***/ },
/* 58 */
/***/ function(module, exports, __webpack_require__) {

	var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;!(__WEBPACK_AMD_DEFINE_ARRAY__ = [exports, module, __webpack_require__(2), __webpack_require__(5), __webpack_require__(59)], __WEBPACK_AMD_DEFINE_RESULT__ = function (exports, module, _jquery, _frampton, _javascriptsCommonExportsDocument) {
	  'use strict';

	  module.exports = trapFocus;

	  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }

	  var _$ = _interopRequireDefault(_jquery);

	  var _Fr = _interopRequireDefault(_frampton);

	  var _$document = _interopRequireDefault(_javascriptsCommonExportsDocument);

	  var not = _Fr['default'].Utils.not;
	  var listen = _Fr['default'].Events.listen;
	  var containsEvent = _Fr['default'].Events.contains;

	  var CONFIG = {
	    SELECTORS: {
	      RESET: '.js-modal-reset'
	    }
	  };

	  function trapFocus(el) {

	    var $root = _$['default'](el),
	        $reset = $root.find(CONFIG.SELECTORS.RESET);

	    //+ isRoot :: DomEvent -> Boolean
	    var isRoot = containsEvent($root[0]);

	    //+ notRoot :: DomEvent -> Boolean
	    var notRoot = not(isRoot);

	    $root.attr('tabindex', -1);
	    $reset.attr('tabindex', 0);
	    $root.trigger('focus');

	    //+ resetFocus :: EventStream DomEvent
	    var resetFocus = listen('focus', $reset);

	    //+ focusin :: EventStream DomEvent
	    var focusin = listen('focusin', _$document['default']).filter(notRoot).preventDefault();

	    //+ trapFocus :: Stream DomEvent
	    var trapFocus = resetFocus.merge(focusin);

	    var unsub = trapFocus.next(function trap_focus(evt) {
	      $root.trigger('focus');
	    });

	    return function destroy() {
	      unsub();
	    };
	  }
	}.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));

/***/ },
/* 59 */
/***/ function(module, exports, __webpack_require__) {

	var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;!(__WEBPACK_AMD_DEFINE_ARRAY__ = [exports, module, __webpack_require__(2)], __WEBPACK_AMD_DEFINE_RESULT__ = function (exports, module, _jquery) {
	  'use strict';

	  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }

	  var _$ = _interopRequireDefault(_jquery);

	  module.exports = _$['default'](window.document);
	}.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));

/***/ },
/* 60 */
/***/ function(module, exports, __webpack_require__) {

	var __WEBPACK_AMD_DEFINE_RESULT__;!(__WEBPACK_AMD_DEFINE_RESULT__ = function(require, exports, module) {

	  'use strict';

	  var $           = __webpack_require__(2),
	      $body       = __webpack_require__(61),
	      eventTarget = __webpack_require__(5).Events.eventTarget,
	      onSelector  = __webpack_require__(5).Events.onSelector,
	      not         = __webpack_require__(5).Utils.not,
	      hasLength   = __webpack_require__(5).Utils.hasLength,
	      prepare     = __webpack_require__(5).Motion.prepare,
	      describe    = __webpack_require__(5).Motion.describe,
	      on          = __webpack_require__(20).addListener;

	  var DEFAULT_CONFIG = {

	    SELECTORS : {
	      ACCORDION                 : '.js-accordion',
	      ACCORDION_ITEM            : '.js-accordion-item',
	      ACCORDION_ITEM_OPEN       : '.anim-accordion-open',
	      ACCORDION_HEADER          : '.js-accordion-header',
	      ACCORDION_CONTENT_WRAPPER : '.js-accordion-content-wrapper',
	      ACCORDION_CONTENT         : '.js-accordion-content',
	      ACCORDION_CLOSE           : '.js-accordion-close'
	    },

	    CLASSES : {
	      OPEN         : 'anim-accordion-open',
	      SHOW_CONTENT : 'show-content',
	      IS_EXPANDED  : 'is-expanded'
	    }

	  };

	  function Accordion(options) {

	    var CONFIG       = $.extend({}, DEFAULT_CONFIG, (options || {})),
	        dismissTimer = null,
	        hideTimer    = null;

	    // INSTANCE HELPERS
	    var getHeight = function($element) {
	      return $element.find(CONFIG.SELECTORS.ACCORDION_CONTENT).outerHeight(true);
	    };

	    var toParent = function(target) {
	      return $(target).parents(CONFIG.SELECTORS.ACCORDION_ITEM);
	    };

	    var toOpenAccordion = function($target) {
	      var $root = $target.parents(CONFIG.SELECTORS.ACCORDION);
	      return $root.find(CONFIG.SELECTORS.ACCORDION_ITEM_OPEN);
	    };

	    var closeAccordions = function($open) {

	      var $currentContent = $open.find(CONFIG.SELECTORS.ACCORDION_CONTENT_WRAPPER);
	      var $currentHeader = $open.find(CONFIG.SELECTORS.ACCORDION_HEADER);
	      var currentElement = $currentContent[0];

	      if (currentElement) {

	        prepare(currentElement, {
	          height : getHeight($currentContent)
	        });

	        describe(currentElement, {
	          height : 0
	        }).run(function() {
	          $open.removeClass(CONFIG.CLASSES.SHOW_CONTENT);
	        });

	        $open.removeClass(CONFIG.CLASSES.OPEN);
	        $open.removeClass(CONFIG.CLASSES.IS_EXPANDED);

	        // Aria labels
	        $currentHeader.attr('aria-expanded', false);
	        $currentContent.attr('aria-hidden', true);
	      }
	    };

	    var openAccordion = function($parent) {

	      var $currentContent = $parent.find(CONFIG.SELECTORS.ACCORDION_CONTENT_WRAPPER);
	      var $currentHeader = $parent.find(CONFIG.SELECTORS.ACCORDION_HEADER);

	      $parent.addClass(CONFIG.CLASSES.SHOW_CONTENT);
	      $parent.addClass(CONFIG.CLASSES.OPEN);

	      if ($currentContent.length) {
	        describe($currentContent[0], {
	          height : getHeight($currentContent)
	        }).run(function() {
	          // Aria labels
	          $currentHeader.attr('aria-expanded', true);
	          $currentContent.attr('aria-hidden', false);
	          $currentContent.css({
	            height : 'auto'
	          });
	        });
	      }
	    };

	    var accordionIsOpen = function($parent) {
	      return $parent.hasClass(CONFIG.CLASSES.OPEN);
	    };

	    // STREAMS
	    var headerClick = onSelector('click', CONFIG.SELECTORS.ACCORDION_HEADER)
	      .map(eventTarget)
	      .map(toParent);

	    var closeClick = onSelector('click', CONFIG.SELECTORS.ACCORDION_CLOSE)
	      .map(function(e){ return $(eventTarget(e)); });

	    var closeStream = headerClick
	      .merge(closeClick)
	      .debounce(0)
	      .map(toOpenAccordion)
	      .filter(hasLength(1));

	    var openStream = headerClick
	      .filter(not(accordionIsOpen))
	      .debounce(0);

	    closeStream.next(closeAccordions);
	    openStream.next(openAccordion);
	  }

	  module.exports = Accordion;

	}.call(exports, __webpack_require__, exports, module), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));


/***/ },
/* 61 */,
/* 62 */
/***/ function(module, exports, __webpack_require__) {

	var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;!(__WEBPACK_AMD_DEFINE_ARRAY__ = [exports, module, __webpack_require__(2), __webpack_require__(61), __webpack_require__(5)], __WEBPACK_AMD_DEFINE_RESULT__ = function (exports, module, _jquery, _javascriptsCommonExportsBody, _frampton) {
	  'use strict';

	  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }

	  var _$ = _interopRequireDefault(_jquery);

	  var _$body = _interopRequireDefault(_javascriptsCommonExportsBody);

	  var _frampton2 = _interopRequireDefault(_frampton);

	  var listen = _frampton2['default'].Events.listen;
	  var eventTarget = _frampton2['default'].Events.eventTarget;
	  var describe = _frampton2['default'].Motion.describe;

	  var DEFAULT_CONFIG = {

	    SELECTORS: {
	      SKIP_CONTENT: '.js-content-link',
	      CLOSE_BUTTON: '.js-dismiss'
	    },

	    CLASSES: {
	      HIDDEN: 'a11y-hidden',
	      VISIBLE: 'a11y-header-visible',
	      HEADER: 'a11y-header'
	    }

	  };

	  module.exports = function (el, options) {

	    var CONFIG = _$['default'].extend({}, DEFAULT_CONFIG, options || {});

	    var $root = _$['default'](el),
	        $closeButton = $root.find(CONFIG.SELECTORS.CLOSE_BUTTON),
	        $skipContent = $root.find(CONFIG.SELECTORS.SKIP_CONTENT),
	        showTransition = describe(_$body['default'][0], CONFIG.CLASSES.VISIBLE),
	        hideTransition = showTransition.reverse();

	    // STREAMS
	    var focuses = listen('focusin', $root),
	        blurs = listen('focusout', $root),
	        closeClicks = listen('click', $closeButton),
	        skipClicks = listen('click', $skipContent);

	    // TRANSFORMED STREAMS
	    var showHeader = focuses.map(true),
	        hideHeader = blurs.map(false).merge(focuses).debounce(2000).filter(false).merge(closeClicks),
	        skipToContent = skipClicks.preventDefault().map(eventTarget);

	    showHeader.next(function () {
	      showTransition.run();
	    });

	    hideHeader.next(function () {
	      hideTransition.run();
	    });

	    skipToContent.next(function (target) {
	      var el = _$['default'](target).attr('href');
	      _$['default'](el).trigger('focus');
	    });
	  };
	}.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));

/***/ },
/* 63 */,
/* 64 */
/***/ function(module, exports, __webpack_require__) {

	var __WEBPACK_AMD_DEFINE_RESULT__;!(__WEBPACK_AMD_DEFINE_RESULT__ = function(require, exports, module) {

	  'use strict';

	  var $            = __webpack_require__(2),
	      ENV          = __webpack_require__(10),
	      log          = __webpack_require__(5).Utils.log,
	      TEMPLATES    = __webpack_require__(6),
	      ROUTES       = __webpack_require__(45),
	      loader       = __webpack_require__(3),
	      render       = __webpack_require__(18),
	      toRequestUrl = __webpack_require__(48).toRequestUrl0;

	  var SELECTORS = {
	    OPEN_CASES    : '.js-open-cases',
	    CASES_WRAPPER : '.js-open-cases-wrapper',
	    CASES_DETAIL  : '.js-open-cases-detail'
	  };

	  function OpenCases() {

	    // Deferred loading of open case count
	    var $openTicketLabel  = $(SELECTORS.OPEN_CASES);
	    var openTicketRequest = $.get(toRequestUrl(ROUTES.OPEN_CASES));
	    var openCases = null;
	    var casesLoaded = false;
	    var templateLoaded = false;

	    function showOpenCasesDetail() {
	      if (templateLoaded && casesLoaded) {

	        // Display banner on mobile dynaform with case count
	        $(SELECTORS.CASES_WRAPPER).each(function() {
	          if (openCases && openCases.count > 0) {
	            $(this).html(render(TEMPLATES.CASES_BANNER, {
	              hc_product : ENV.HC_PRODUCT,
	              openCases : openCases.count
	            }));
	          }
	        });

	        // Display sidebar widget on dynaform with case details
	        $(SELECTORS.CASES_DETAIL).each(function() {
	          if (openCases && openCases.cases) {
	            $(this).html(render(TEMPLATES.CASES_DETAIL, {
	              hc_product : ENV.HC_PRODUCT,
	              openCases : openCases.cases
	            }));
	          }
	        });
	      }
	    }

	    openTicketRequest.done(function(res) {

	      var count = 0;
	      casesLoaded = true;
	      openCases = JSON.parse(res);
	      count = (openCases) ? openCases.count : 0;

	      showOpenCasesDetail();
	      if (count && count > 0) {
	        $openTicketLabel.text(count);
	      }
	    });

	    openTicketRequest.fail(log);

	    loader(TEMPLATES.DYNAMIC_FORM, function(context) {
	      templateLoaded = true;
	      showOpenCasesDetail();
	    });
	  }

	  module.exports = OpenCases;

	}.call(exports, __webpack_require__, exports, module), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));

/***/ },
/* 65 */
/***/ function(module, exports, __webpack_require__) {

	var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;!(__WEBPACK_AMD_DEFINE_ARRAY__ = [exports, module, __webpack_require__(2), __webpack_require__(5), __webpack_require__(45), __webpack_require__(66), __webpack_require__(67), __webpack_require__(68)], __WEBPACK_AMD_DEFINE_RESULT__ = function (exports, module, _jquery, _frampton, _javascriptsConfigRoutes, _javascriptsCommonUtilsHtmlRender, _javascriptsCommonUtilsFormattersUrl, _javascriptsCommonModulesSurveyConfig) {
	  'use strict';

	  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }

	  var _$ = _interopRequireDefault(_jquery);

	  var _Fr = _interopRequireDefault(_frampton);

	  var _ROUTES = _interopRequireDefault(_javascriptsConfigRoutes);

	  var _render = _interopRequireDefault(_javascriptsCommonUtilsHtmlRender);

	  var _CONFIG = _interopRequireDefault(_javascriptsCommonModulesSurveyConfig);

	  var log = _Fr['default'].Utils.log;
	  var not = _Fr['default'].Utils.not;
	  var isSomething = _Fr['default'].Utils.isSomething;
	  var onSelector = _Fr['default'].Events.onSelector;
	  var listen = _Fr['default'].Events.listen;
	  var keyCode = _Fr['default'].Keyboard.keyCode;
	  var isEsc = _Fr['default'].Keyboard.isEsc;
	  var transition = _Fr['default'].Motion.describe;

	  module.exports = function ($element) {

	    // ELEMENTS

	    var $formContainer = $element.find(_CONFIG['default'].SELECTORS.FORM_CONTAINER);
	    var $form = $element.find(_CONFIG['default'].SELECTORS.FORM);
	    var $questionContainer = $element.find(_CONFIG['default'].SELECTORS.QUESTION_CONTAINER);
	    var $questions = $element.find(_CONFIG['default'].SELECTORS.QUESTIONS);
	    var $fields = $element.find(_CONFIG['default'].SELECTORS.FIELDS);
	    var $progress = $element.find(_CONFIG['default'].SELECTORS.PROGRESS);
	    var $next = $element.find(_CONFIG['default'].SELECTORS.NEXT);
	    var $prev = $element.find(_CONFIG['default'].SELECTORS.PREV);
	    var $submit = $element.find(_CONFIG['default'].SELECTORS.SUBMIT);
	    var $complete = $element.find(_CONFIG['default'].SELECTORS.COMPLETE);
	    var $reset = $element.find(_CONFIG['default'].SELECTORS.RESET);

	    // A11Y
	    // Set up trap focus for accessibly enforcing form validation

	    $reset.attr('tabindex', 0);
	    $fields.attr('tabindex', -1);

	    // TRANSITIONS

	    var closeTransition = transition($element[0], _CONFIG['default'].CLASSES.MINIMIZED + ' ' + _CONFIG['default'].CLASSES.NOT_STARTED);

	    var openTransition = closeTransition.reverse();

	    var dismissTransition = transition($element[0], _CONFIG['default'].CLASSES.REMOVE);

	    var completeTransition = transition($complete[0], _CONFIG['default'].CLASSES.SHOWN);

	    var removeTransition = completeTransition.chain(dismissTransition.delay(4000));

	    // STATE

	    var state = Object.seal({
	      index: 0,
	      visible: false,
	      previousSlide: {
	        element: null
	      },
	      currentSlide: {
	        valid: false,
	        $element: $element.find(_CONFIG['default'].SELECTORS.CURRENT_FIELD)
	      }
	    });

	    var toIndex = function toIndex(val) {

	      state.index = state.index + val;

	      // these scenarios shouldn't happen, but justin case..
	      if (state.index < 0) {
	        state.index = 0;
	      } else if (state.index > 3) {
	        state.index = 3;
	      }

	      return state.index;
	    };

	    // STREAMS

	    var triggerClick = onSelector('click', _CONFIG['default'].SELECTORS.TRIGGER);
	    var dismissClick = onSelector('click', _CONFIG['default'].SELECTORS.DISMISS);
	    var formSubmit = onSelector('submit', _CONFIG['default'].SELECTORS.FORM);
	    var nextClick = onSelector('click', _CONFIG['default'].SELECTORS.NEXT);
	    var prevClick = onSelector('click', _CONFIG['default'].SELECTORS.PREV);
	    var fieldFocus = onSelector('focus', _CONFIG['default'].SELECTORS.FIELDS);
	    var formScroll = onSelector('scroll', _CONFIG['default'].SELECTORS.FORM);
	    var resetFocus = onSelector('focus', _CONFIG['default'].SELECTORS.RESET);
	    var selection = onSelector('change', _CONFIG['default'].SELECTORS.ITEM);
	    var keyPress = listen('keyup', $element);

	    var surveyComplete = formSubmit.preventDefault().filter(isValid);

	    var fieldIndex = fieldFocus.map(toEventIndex).filter(isSomething);

	    var invalidIndex = resetFocus.preventDefault().filter(not(currentValid));

	    var validIndex = nextClick.merge(resetFocus).filter(currentValid).map(1).merge(prevClick.map(-1)).map(toIndex).merge(fieldIndex);

	    var updateProgress = validIndex.map(toTemplateData).map(_render['default'](_CONFIG['default'].TEMPLATES.PROGRESS));

	    // When a new field recieves focus we need to reset scroll to
	    var scrollIntoView = formScroll.merge(fieldFocus);

	    var escKeyPress = keyPress.map(keyCode).filter(isEsc);

	    var dismissSurvey = dismissClick.map(true).merge(escKeyPress);

	    var writeCookie = dismissSurvey.merge(formSubmit);

	    // SIDE EFFECTS

	    triggerClick.next(function () {
	      if (state.visible) {
	        state.visible = false;
	        recordProgress(state, 'OPEN');
	        closeTransition.run(function () {
	          $formContainer.attr('aria-hidden', 'true');
	          $element.removeClass(_CONFIG['default'].CLASSES.MINIMIZED + ' ' + _CONFIG['default'].CLASSES.IN_PROGRESS);
	        });
	      } else {
	        state.visible = true;
	        recordProgress(state, 'OPEN');
	        $formContainer.attr('aria-hidden', 'false');
	        openTransition.run(function () {
	          $element.addClass(_CONFIG['default'].CLASSES.IN_PROGRESS);
	        });
	      }
	    });

	    dismissSurvey.next(function () {
	      recordProgress(state, 'CLOSE');
	      dismissTransition.run(function (evt) {
	        $element.remove();
	      });
	    });

	    // When a selection is made, validate the current form
	    selection.next(function (evt) {
	      state.currentSlide.valid = state.currentSlide.$element.find(':checked').length > 0;
	      if (state.currentSlide.valid) {
	        $next.attr('disabled', false);
	      } else {
	        $next.attr('disabled', true);
	      }
	    });

	    invalidIndex.next(function (evt) {
	      state.currentSlide.$element.focus();
	    });

	    validIndex.next(function (index) {

	      // the function in which we update the current slide
	      updateCurrentSlide(state);

	      // the function in which we transition the fields
	      transitionToSlide(state);

	      // the function in which we show/hide controls as needed
	      updateButtons(state);
	    });

	    updateProgress.next(function (html) {
	      $progress.html(html);
	    });

	    updateProgress.error(function (err) {
	      $progress.html('');
	    });

	    // the form will scroll as you tab through it, to move the focused item into view
	    // setting the scroll value back to 0 because we're transitioning the focused element into view ourselves
	    scrollIntoView.next(function () {
	      $form.scrollLeft(0);
	    });

	    surveyComplete.next(function () {

	      var payload = $form.serialize();

	      // Record the submit event, yay tacking.
	      recordProgress(state, 'SUBMIT');

	      // Do we really care to give an error if this fails? No.
	      // No need to wait to update the UI.
	      _$['default'].post(_javascriptsCommonUtilsFormattersUrl.toRequestUrl0(_ROUTES['default'].SURVEY_API), payload).done(function (res) {
	        log('survey success: ', res);
	      }).fail(function (err) {
	        log('survey error: ', err);
	      });

	      $element.removeClass(_CONFIG['default'].CLASSES.IN_PROGRESS).addClass(_CONFIG['default'].CLASSES.COMPLETED);

	      $questions.attr('aria-hidden', 'true');

	      $complete.removeClass(_CONFIG['default'].CLASSES.HIDDEN).attr('aria-hidden', 'false').trigger('focus');

	      removeTransition.run(function () {
	        $element.remove();
	      });
	    });

	    // Create a cookie
	    // config.options: expires<int>, path<string>, domain<string>, secure<bool>
	    writeCookie.next(function () {
	      _$['default'].cookie(_CONFIG['default'].COOKIE.NAME, _CONFIG['default'].COOKIE.VALUE, {
	        path: _CONFIG['default'].COOKIE.PATH,
	        expires: _CONFIG['default'].COOKIE.EXPIRES
	      });
	    });

	    // UTILITIES

	    function currentValid() {
	      return state.currentSlide.valid;
	    }

	    function isValid() {
	      return state.index === _CONFIG['default'].SLIDES - 1;
	    }

	    function updateCurrentSlide(state) {

	      // get the current slide
	      var action = state.index > currentIndex(state) ? 'NEXT' : 'PREVIOUS';
	      recordProgress(state, action);

	      state.previousSlide.$element = state.currentSlide.$element;
	      state.previousSlide.$element.addClass(_CONFIG['default'].CLASSES.PREVIOUS);
	      state.currentSlide.$element = $fields.eq(state.index);
	      state.currentSlide.valid = state.currentSlide.$element.find(':checked').length > 0;
	      state.currentSlide.$element.addClass(_CONFIG['default'].CLASSES.CURRENT);
	      state.previousSlide.$element.removeClass(_CONFIG['default'].CLASSES.CURRENT);
	      state.currentSlide.$element.focus();
	    }

	    function updateButtons(state) {

	      $next.attr('disabled', !state.currentSlide.valid);

	      switch (state.index) {

	        // first slide
	        case 0:
	          $prev.addClass(_CONFIG['default'].CLASSES.HIDDEN);
	          $next.removeClass(_CONFIG['default'].CLASSES.HIDDEN);
	          $submit.addClass(_CONFIG['default'].CLASSES.HIDDEN);
	          break;

	        // last slide
	        case 3:
	          $prev.removeClass(_CONFIG['default'].CLASSES.HIDDEN);
	          $next.addClass(_CONFIG['default'].CLASSES.HIDDEN);
	          $submit.removeClass(_CONFIG['default'].CLASSES.HIDDEN);
	          break;

	        // all other slides
	        default:
	          $prev.removeClass(_CONFIG['default'].CLASSES.HIDDEN);
	          $next.removeClass(_CONFIG['default'].CLASSES.HIDDEN);
	          $submit.addClass(_CONFIG['default'].CLASSES.HIDDEN);
	          break;
	      }
	    }

	    function transitionToSlide(state) {
	      var transitionAmount = '-' + state.index / _CONFIG['default'].SLIDES * 100 + '%';
	      transition($questionContainer[0], {
	        'transform': 'translateX(' + transitionAmount + ')'
	      }).run(function () {
	        state.previousSlide.$element.removeClass(_CONFIG['default'].CLASSES.CURRENT);
	      });
	    }
	  };

	  function currentIndex(state) {
	    return state.currentSlide.$element.index();
	  }

	  function toTemplateData(index) {
	    return {
	      currentQuestion: index + 1,
	      totalQuestions: _CONFIG['default'].SLIDES
	    };
	  }

	  function toEventIndex(evt) {
	    return _$['default'](evt.currentTarget).data('index');
	  }

	  function recordProgress(state, action) {
	    var $currentSlide = state.currentSlide.$element;
	    var payload = {
	      value: $currentSlide.find('textarea').val() || $currentSlide.find(':checked').val() || '',
	      name: $currentSlide.attr('data-id'),
	      index: $currentSlide.index(),
	      action: action
	    };
	    _$['default'].post(_javascriptsCommonUtilsFormattersUrl.toRequestUrl0(_ROUTES['default'].SURVEY_PROGRESS), payload);
	  }
	}.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));

/***/ },
/* 66 */
/***/ function(module, exports, __webpack_require__) {

	var __WEBPACK_AMD_DEFINE_RESULT__;!(__WEBPACK_AMD_DEFINE_RESULT__ = function(require, exports, module) {

	  'use strict';

	  var dust  = __webpack_require__(14),
	      curry = __webpack_require__(5).Utils.curry;

	  //+ render :: String -> Object -> String
	  module.exports = curry(function(template, data) {
	    var output = '';
	    dust.render(template, data, function(err, html) {
	      if (err) throw new Error(err);
	      output = html;
	    });
	    return output;
	  });

	}.call(exports, __webpack_require__, exports, module), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));


/***/ },
/* 67 */
/***/ function(module, exports, __webpack_require__) {

	var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;!(__WEBPACK_AMD_DEFINE_ARRAY__ = [exports, module, __webpack_require__(9), __webpack_require__(10), __webpack_require__(5), __webpack_require__(49)], __WEBPACK_AMD_DEFINE_RESULT__ = function (exports, module, _play, _environment, _frampton, _javascriptsConfigPageKeys) {
	  'use strict';

	  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }

	  var _play2 = _interopRequireDefault(_play);

	  var _ENV = _interopRequireDefault(_environment);

	  var _Fr = _interopRequireDefault(_frampton);

	  var _pagekeys = _interopRequireDefault(_javascriptsConfigPageKeys);

	  var curry = _Fr['default'].Utils.curry;

	  function urlBuilder(controller) {
	    for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
	      args[_key - 1] = arguments[_key];
	    }

	    args.unshift(_ENV['default'].HC_PRODUCT);

	    var config = args.reduce(function (acc, next, index) {
	      acc['arg' + index] = next;
	      return acc;
	    }, { alias: controller });

	    return _play2['default'].url(config);
	  }

	  var withPageKey = function withPageKey() {
	    for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
	      args[_key2] = arguments[_key2];
	    }

	    return appendPageKey(urlBuilder.apply(null, args), args[0]);
	  };

	  //+ appendPageKey :: String -> String
	  var appendPageKey = function appendPageKey(url, controller) {

	    var pageKey = _pagekeys['default'][controller] || _ENV['default'].GLOBAL.pageKey || _ENV['default'].INITIAL_PAGE_DATA.DATA.pageKey || "";

	    if (pageKey) {
	      return _play2['default'].addQueryParameter(url, 'page_key', pageKey);
	    } else {
	      return url;
	    }
	  };

	  var appendReferer = function appendReferer(url) {
	    if (_ENV['default'].GLOBAL.referralUrl) {
	      return _play2['default'].addQueryParameter(url, 'referer', _ENV['default'].GLOBAL.referralUrl);
	    } else {
	      return url;
	    }
	  };

	  var appendPath = function appendPath(url) {
	    if (_ENV['default'].GLOBAL.path) {
	      return _play2['default'].addQueryParameter(url, 'path', _ENV['default'].GLOBAL.path);
	    } else {
	      return url;
	    }
	  };

	  //+ csrf :: String -> String
	  var csrf = function csrf(url) {
	    return _play2['default'].addCsrfTokenToUrl(url);
	  };

	  //+ formattedUrl :: String -> String
	  var formattedUrl = function formattedUrl(url) {
	    return appendReferer(appendPath(url));
	  };

	  //+ toRequestUrl0 :: String -> String
	  var toRequestUrl0 = function toRequestUrl0(controller) {
	    return formattedUrl(csrf(withPageKey.call(null, controller)));
	  };

	  //+ toRequestUrl :: String -> Object -> String
	  var toRequestUrl = curry(function (controller, args) {
	    return formattedUrl(csrf(withPageKey.apply(null, arguments)));
	  });

	  //+ toGetRequestUrl :: String -> Object -> String
	  var toGetRequestUrl = curry(function (controller, args) {
	    return formattedUrl(withPageKey.apply(null, arguments));
	  });

	  //+ toGetRequestUrl0 :: String -> Object -> String
	  var toGetRequestUrl0 = function toGetRequestUrl0(controller) {
	    return formattedUrl(withPageKey.call(null, controller));
	  };

	  //+ toBaseUrl :: String -> String
	  var toBaseUrl = curry(function (controller, args) {
	    return urlBuilder.apply(null, arguments);
	  });

	  //+ toBaseUrl0 :: String -> String
	  var toBaseUrl0 = function toBaseUrl0(controller) {
	    return urlBuilder.call(null, controller);
	  };

	  //+ localizedUrl :: String -> String
	  var localizedUrl = function localizedUrl(url) {
	    return _play2['default'].addQueryParameter(url, 'lang', _ENV['default'].GLOBAL.locale.code);
	  };

	  module.exports = {

	    localizedUrl: localizedUrl,

	    toGetRequestUrl: toGetRequestUrl,

	    toGetRequestUrl0: toGetRequestUrl0,

	    toRequestUrl0: toRequestUrl0,

	    toRequestUrl: toRequestUrl,

	    toBaseUrl: toBaseUrl,

	    toBaseUrl0: toBaseUrl0,

	    csrf: csrf

	  };
	}.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));

/***/ },
/* 68 */
/***/ function(module, exports, __webpack_require__) {

	var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;!(__WEBPACK_AMD_DEFINE_ARRAY__ = [exports, module], __WEBPACK_AMD_DEFINE_RESULT__ = function (exports, module) {
	  'use strict';

	  module.exports = {

	    TEMPLATES: {
	      PROGRESS: 'templates/partials/survey/survey_progress'
	    },

	    SELECTORS: {
	      TRIGGER: '.js-survey-trigger',
	      DISMISS: '.js-survey-dismiss',
	      FORM_CONTAINER: '.js-survey-form-container',
	      FORM: '.js-survey-form',
	      RESET: '.js-survey-reset',
	      QUESTION_CONTAINER: '.js-question-container',
	      QUESTIONS: '.js-survey-questions',
	      FIELDS: '.js-field',
	      ITEM: '.js-field li',
	      CURRENT_FIELD: '.js-field.current',
	      PROGRESS: '.js-survey-progress',
	      PAGINATION: '.js-survey-pagination .js-btn',
	      NEXT: '.js-btn-next',
	      PREV: '.js-btn-prev',
	      SUBMIT: 'input[type=submit]',
	      COMPLETE: '.js-survey-complete'
	    },

	    CLASSES: {
	      CURRENT: 'current',
	      PREVIOUS: 'previous',
	      HIDDEN: 'hidden',
	      NOT_STARTED: 'is-not-started',
	      IN_PROGRESS: 'is-in-progress',
	      COMPLETED: 'is-complete',
	      SHOWN: 'is-shown',
	      REMOVE: 'remove',
	      MINIMIZED: 'is-minimized'
	    },

	    SLIDES: 4,

	    COOKIE: {
	      NAME: 'hc_survey',
	      VALUE: 'true',
	      OPTIONS: {
	        EXPIRES: 30,
	        PATH: '/'
	      }
	    }

	  };
	}.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));

/***/ },
/* 69 */
/***/ function(module, exports, __webpack_require__) {

	var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;!(__WEBPACK_AMD_DEFINE_ARRAY__ = [exports, module, __webpack_require__(9)], __WEBPACK_AMD_DEFINE_RESULT__ = function (exports, module, _play) {
	  "use strict";

	  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }

	  var _play2 = _interopRequireDefault(_play);

	  module.exports = function () {
	    function fetchFile(fileUrl) {
	      var c = new XMLHttpRequest();
	      c.onreadystatechange = function () {
	        if (c.readyState == 4 && c.status == 200) {
	          var svg = c.responseXML.firstChild;
	          svg.style.position = "absolute";
	          svg.style.top = "-9999px";
	          document.body.insertBefore(svg, document.body.firstChild);
	        }
	      };
	      c.open('GET', _play2["default"].imgUrl(fileUrl), true);
	      c.send();
	    }
	    fetchFile('shift-icons.svg');
	    fetchFile('shift-icons-hc.svg');
	  };
	}.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));

/***/ },
/* 70 */
/***/ function(module, exports, __webpack_require__) {

	var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;!(__WEBPACK_AMD_DEFINE_ARRAY__ = [exports, module, __webpack_require__(10), __webpack_require__(71), __webpack_require__(72)], __WEBPACK_AMD_DEFINE_RESULT__ = function (exports, module, _environment, _FONT_DATA, _javascriptsCommonFontsCorsAjax) {
	  'use strict';

	  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }

	  var _ENV = _interopRequireDefault(_environment);

	  var _FONT_DATA2 = _interopRequireDefault(_FONT_DATA);

	  var _corsAjax = _interopRequireDefault(_javascriptsCommonFontsCorsAjax);

	  var locale = _ENV['default'].GLOBAL.locale.code;

	  module.exports = function (window, document) {

	    var cache = null;

	    _FONT_DATA2['default'].FONTS_PATH_LIST = {
	      'ru': [window.play.assetUrl('fonts/ru64.0.css'), window.play.assetUrl('fonts/ru64.1.css')],
	      'th': [window.play.assetUrl('fonts/th64.css')],
	      'ar': [window.play.assetUrl('fonts/ar64.css')],
	      'default': [window.play.assetUrl('fonts/fonts64.css')]
	    };

	    _FONT_DATA2['default'].FONTS_PATH = _FONT_DATA2['default'].FONTS_PATH_LIST.hasOwnProperty(locale) ? _FONT_DATA2['default'].FONTS_PATH_LIST[locale] : _FONT_DATA2['default'].FONTS_PATH_LIST['default'];

	    function getCache() {
	      var lastVersion = window.localStorage.getItem(_FONT_DATA2['default'].VERSION_KEY);

	      if (lastVersion && lastVersion !== _FONT_DATA2['default'].FONT_VERSION) {
	        window.localStorage.removeItem(_FONT_DATA2['default'].CACHE_KEY);
	        return null;
	      } else {
	        return window.localStorage.getItem(_FONT_DATA2['default'].CACHE_KEY);
	      }
	    }

	    function appendFontStyles(value) {
	      var style = document.createElement('style');
	      style.textContent = value;
	      document.head.appendChild(style);
	    }

	    function fontErrored() {
	      console.warn('Failed to load font styles from CDN.');
	    }

	    function fontLoaded(data) {
	      window.localStorage.setItem(_FONT_DATA2['default'].VERSION_KEY, _FONT_DATA2['default'].FONT_VERSION);
	      window.localStorage.setItem(_FONT_DATA2['default'].CACHE_KEY, data);
	      appendFontStyles(data);
	    }

	    function getFont64Styles() {
	      var fontString = '',
	          i = 0,
	          j = 0;

	      window.addEventListener('load', function () {
	        for (i; i < _FONT_DATA2['default'].FONTS_PATH.length; i++) {
	          _corsAjax['default']({
	            url: _FONT_DATA2['default'].FONTS_PATH[i],
	            success: function success(data) {
	              fontString = fontString + data;

	              if (j === _FONT_DATA2['default'].FONTS_PATH.length - 1) {
	                fontLoaded(fontString);
	              } else {
	                j++;
	              }
	            },
	            error: fontErrored
	          });
	        }
	      });
	    }

	    try {
	      cache = getCache();
	      if (!cache) {
	        getFont64Styles();
	      }
	    } catch (e) {}
	  };
	}.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));

/***/ },
/* 71 */
/***/ function(module, exports) {

	module.exports = FONT_DATA;

/***/ },
/* 72 */
/***/ function(module, exports, __webpack_require__) {

	var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;!(__WEBPACK_AMD_DEFINE_ARRAY__ = [exports, module], __WEBPACK_AMD_DEFINE_RESULT__ = function (exports, module) {
	  'use strict';

	  var INVALID_DATA = '__ARTDECO_INVALID_DATA__';

	  var DATA_FORMATTERS = {
	    xml: function xml(xhr) {
	      var retVal = null;
	      if (xhr) {
	        try {
	          retVal = xhr.responseXML ? xhr.responseXML.firstChild : new DOMParser().parseFromString(xhr.responseText, 'application/xml').firstChild;
	          // Check for the error element
	          if (retVal.getElementsByTagName('parsererror').length) {
	            retVal = INVALID_DATA;
	          }
	        } catch (err) {
	          retVal = INVALID_DATA;
	        }
	      }
	      return retVal;
	    },
	    json: function json(xhr) {
	      var retVal = null;
	      if (xhr) {
	        try {
	          retVal = JSON.parse(xhr.responseText);
	        } catch (err) {
	          retVal = INVALID_DATA;
	        }
	      }
	      return retVal;
	    },
	    raw: function raw(xhr) {
	      return xhr ? xhr.responseText : null;
	    }
	  };

	  // NOOP function for XHR callbacks
	  function noop() {}

	  var corsAjax = function corsAjax(options) {

	    var url = options.url || null;

	    if (url) {

	      var XDOMAIN_SUPPORTED = typeof XDomainRequest !== 'undefined';
	      var method = options.type || 'GET';
	      var payload = options.data || null;
	      var success = typeof options.success === 'function' ? options.success : noop;
	      var error = typeof options.error === 'function' ? options.error : noop;
	      var dataType = options.dataType || 'raw';
	      var dataFormatter = DATA_FORMATTERS.hasOwnProperty(dataType) ? DATA_FORMATTERS[dataType] : DATA_FORMATTERS.raw;
	      var needsXDomainRequest = XDOMAIN_SUPPORTED && ! ~url.indexOf(window.location.hostname) && !!url.match(/^([a-z]+:)|^(\/\/)|^([^\/]+\.)/);
	      var event = needsXDomainRequest ? 'onload' : 'onreadystatechange';
	      var xhr = needsXDomainRequest ? new XDomainRequest() : new XMLHttpRequest();

	      xhr[event] = function () {
	        var data = null;
	        if (needsXDomainRequest || this.readyState === 4) {
	          if (needsXDomainRequest || this.status === 200) {
	            data = dataFormatter(this);
	            if (data === INVALID_DATA) {
	              error(this);
	            } else {
	              success(dataFormatter(this), this);
	            }
	          } else {
	            error(this);
	          }
	        }
	      };

	      if (needsXDomainRequest) {
	        xhr.onerror = error;
	        xhr.ontimeout = error;
	      }

	      xhr.open(method, url, true);
	      xhr.send(payload);
	    }
	  };

	  // Export globally for the testing environment
	  if (window._isTesting) {
	    window._artdecoCorsAjax = corsAjax;
	  }

	  module.exports = corsAjax;
	}.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));

/***/ },
/* 73 */
/***/ function(module, exports, __webpack_require__) {

	var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;!(__WEBPACK_AMD_DEFINE_ARRAY__ = [exports, __webpack_require__(2)], __WEBPACK_AMD_DEFINE_RESULT__ = function (exports, _jquery) {
	  'use strict';

	  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }

	  var _$ = _interopRequireDefault(_jquery);

	  var $signInLink = _$['default']('.js-sign-in');

	  $signInLink.attr('href', '/uas/login?session_redirect=' + encodeURIComponent(window.location.href));
	}.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));

/***/ },
/* 74 */
/***/ function(module, exports, __webpack_require__) {

	var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;!(__WEBPACK_AMD_DEFINE_ARRAY__ = [exports, module, __webpack_require__(3), __webpack_require__(6), __webpack_require__(75)], __WEBPACK_AMD_DEFINE_RESULT__ = function (exports, module, _javascriptsCommonUtilsTemplatesLoader, _javascriptsConfigTemplates, _javascriptsCommonModulesSearchSearchAssistant) {
	  'use strict';

	  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }

	  var _loader = _interopRequireDefault(_javascriptsCommonUtilsTemplatesLoader);

	  var _TEMPLATES = _interopRequireDefault(_javascriptsConfigTemplates);

	  var _SearchAssistant = _interopRequireDefault(_javascriptsCommonModulesSearchSearchAssistant);

	  var SELECTORS = {
	    TOP_BAR_SEARCH_ASSIST: '.js-top-bar .js-search-assist',
	    HERO_SEARCH_ASSIST: '.js-hero-image .js-search-assist',
	    RESULTS_SEARCH_ASSIST: '.js-search-results-content .js-search-assist'
	  };

	  module.exports = function () {

	    $(SELECTORS.TOP_BAR_SEARCH_ASSIST).each(function () {
	      _SearchAssistant['default']($(this));
	    });

	    function startHeroSearch(context) {
	      _SearchAssistant['default']($(SELECTORS.HERO_SEARCH_ASSIST));
	    }

	    function startResultsSearch(context) {
	      _SearchAssistant['default']($(SELECTORS.RESULTS_SEARCH_ASSIST));
	    }

	    _loader['default'](_TEMPLATES['default'].BROWSE, startHeroSearch);
	    _loader['default'](_TEMPLATES['default'].SEARCH_RESULTS, startResultsSearch);
	  };
	}.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));

/***/ },
/* 75 */
/***/ function(module, exports, __webpack_require__) {

	var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;!(__WEBPACK_AMD_DEFINE_ARRAY__ = [exports, module, __webpack_require__(2), __webpack_require__(5), __webpack_require__(45), __webpack_require__(67)], __WEBPACK_AMD_DEFINE_RESULT__ = function (exports, module, _jquery, _frampton, _javascriptsConfigRoutes, _javascriptsCommonUtilsFormattersUrl) {
	  'use strict';

	  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }

	  var _$ = _interopRequireDefault(_jquery);

	  var _frampton2 = _interopRequireDefault(_frampton);

	  var _ROUTES = _interopRequireDefault(_javascriptsConfigRoutes);

	  var listen = _frampton2['default'].Events.listen;
	  var Input = _frampton2['default'].UI.Input;

	  var DEFAULT_CONFIG = {

	    SELECTORS: {
	      INPUT: '.js-search-assist-input',
	      SUBMIT: '.js-submit-button'
	    }

	  };

	  module.exports = function ($element, options) {

	    var CONFIG = _$['default'].extend({}, DEFAULT_CONFIG, options || {});

	    // STATIC UI ELEMENTS
	    var $input = $element.find(CONFIG.SELECTORS.INPUT);
	    var $submit = $element.find(CONFIG.SELECTORS.SUBMIT);

	    // BASE EVENT STREAMS
	    var formSubmits = listen('submit', $element[0]);

	    var input = Input($input[0]);

	    // TRANSFORMED STREAMS

	    //+ querySubmit :: EventStream String
	    var querySubmit = formSubmits.preventDefault().sample(input.value);

	    // SIDE EFFECTS
	    input.value.changes(function (val) {
	      $submit.prop('disabled', val.trim().length === 0);
	    });

	    querySubmit.next(function (query) {
	      window.location.href = _javascriptsCommonUtilsFormattersUrl.toBaseUrl(_ROUTES['default'].SEARCH, query, 1);
	    });
	  };
	}.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));

/***/ },
/* 76 */
/***/ function(module, exports, __webpack_require__) {

	var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;!(__WEBPACK_AMD_DEFINE_ARRAY__ = [exports, module], __WEBPACK_AMD_DEFINE_RESULT__ = function (exports, module) {
	  'use strict';

	  module.exports = {

	    SELECTORS: {
	      DROPDOWN: '.js-dropdown',
	      HOVER_DROPDOWN: '.js-hover-dropdown',
	      TRIGGER: '.js-trigger',
	      MAIN: '#a11y-main',
	      CLOSE_BUTTON: '.js-close-dropdown',
	      ACTIVE: '.active'
	    },

	    ACTIVE_CLASS: 'active',

	    HOVER_DELAY: {
	      EXIT: 300
	    }

	  };
	}.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));

/***/ },
/* 77 */
/***/ function(module, exports, __webpack_require__) {

	var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;!(__WEBPACK_AMD_DEFINE_ARRAY__ = [exports, __webpack_require__(5), __webpack_require__(78)], __WEBPACK_AMD_DEFINE_RESULT__ = function (exports, _frampton, _javascriptsCommonModulesDropdownConfig) {
	  'use strict';

	  exports.__esModule = true;
	  exports.start = start;
	  exports.open = open;
	  exports.close = close;

	  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }

	  var _Fr = _interopRequireDefault(_frampton);

	  var log = _Fr['default'].Utils.log;
	  var isSomething = _Fr['default'].Utils.isSomething;
	  var listContains = _Fr['default'].List.contains;
	  var listen = _Fr['default'].Events.listen;
	  var onSelector = _Fr['default'].Events.onSelector;
	  var eventContains = _Fr['default'].Events.contains;
	  var hasSelector = _Fr['default'].Events.hasSelector;
	  var eventTarget = _Fr['default'].Events.eventTarget;
	  var not = _Fr['default'].Utils.not;
	  var closest = _Fr['default'].Style.closest;
	  var addClass = _Fr['default'].Style.addClass;
	  var removeClass = _Fr['default'].Style.removeClass;

	  var state = {
	    current: null
	  };

	  var closeDropdown = function closeDropdown() {
	    if (state.current !== null) {
	      removeClass(state.current, _javascriptsCommonModulesDropdownConfig.ACTIVE_CLASS);
	      state.current = null;
	    }
	  };

	  var openDropdown = function openDropdown(element) {
	    closeDropdown();
	    state.current = element;
	    addClass(element, _javascriptsCommonModulesDropdownConfig.ACTIVE_CLASS);
	  };

	  var hoverDropdownIsOpen = function hoverDropdownIsOpen(evt) {
	    if ($(_javascriptsCommonModulesDropdownConfig.SELECTORS.HOVER_DROPDOWN + _javascriptsCommonModulesDropdownConfig.SELECTORS.ACTIVE).length) {
	      return true;
	    } else {
	      return false;
	    }
	  };

	  var isHoverDropdown = function isHoverDropdown(evt) {
	    return hasSelector(_javascriptsCommonModulesDropdownConfig.SELECTORS.HOVER_DROPDOWN + ', ' + _javascriptsCommonModulesDropdownConfig.SELECTORS.HOVER_DROPDOWN + ' ' + _javascriptsCommonModulesDropdownConfig.SELECTORS.TRIGGER, evt);
	  };

	  var initDropdown = function initDropdown(selector) {

	    var trigger = selector + ' ' + _javascriptsCommonModulesDropdownConfig.SELECTORS.TRIGGER;

	    var clicks = onSelector('click', trigger).preventDefault();
	    var mouseOver = documentHover.filter(isHoverDropdown);

	    clicks.merge(mouseOver).map(eventTarget).map(closest(_javascriptsCommonModulesDropdownConfig.SELECTORS.DROPDOWN)).filter(isSomething).next(function (current) {
	      if (state.current === current) {
	        closeDropdown();
	      } else {
	        openDropdown(current);
	      }
	    });
	  };

	  var focusNotFromMain = function focusNotFromMain(evt) {
	    return !hasSelector(_javascriptsCommonModulesDropdownConfig.SELECTORS.MAIN, evt);
	  };

	  var shouldCloseDropdown = function shouldCloseDropdown(evt) {
	    return state.current && !eventContains(state.current, evt) || hasSelector(_javascriptsCommonModulesDropdownConfig.SELECTORS.CLOSE_BUTTON, evt);
	  };

	  var documentFocus = listen('focus', document.body).filter(focusNotFromMain);
	  var documentClick = listen('click', document.body);
	  var documentHover = listen('mouseover', document.body);

	  var leaveDropdown = documentHover.filter(not(isHoverDropdown)).filter(hoverDropdownIsOpen).debounce(_javascriptsCommonModulesDropdownConfig.HOVER_DELAY.EXIT);

	  documentFocus.merge(documentClick).merge(leaveDropdown).filter(shouldCloseDropdown).next(function (evt) {
	    closeDropdown(state.current);
	  });

	  function start(selector) {
	    if (selector[0] === '.' || selector[0] === '#') {
	      initDropdown(selector);
	    } else {
	      log('start dropdown expecting selector to be class or id');
	    }
	  }

	  function open(selector) {
	    var el = document.querySelector(selector);
	    if (el !== null) {
	      openDropdown(el);
	    }
	  }

	  function close() {
	    closeDropdown();
	  }
	}.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));

/***/ },
/* 78 */,
/* 79 */
/***/ function(module, exports, __webpack_require__) {

	var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;!(__WEBPACK_AMD_DEFINE_ARRAY__ = [exports, module, __webpack_require__(2)], __WEBPACK_AMD_DEFINE_RESULT__ = function (exports, module, _jquery) {
	  'use strict';

	  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }

	  var _$ = _interopRequireDefault(_jquery);

	  module.exports = function () {

	    /* Mobile Language Switcher */
	    var $mobileLanguageSwitcher = _$['default']('.js-mobile-language-switcher'),
	        $mobileLanguageSwitcherWrapper = $mobileLanguageSwitcher.closest('.js-drawer-footer-language-switcher');

	    $mobileLanguageSwitcherWrapper.on('focusin', function () {
	      _$['default'](this).addClass('is-focused');
	    }).on('focusout', function () {
	      _$['default'](this).removeClass('is-focused');
	    });

	    $mobileLanguageSwitcher.on('change', function (e) {
	      _$['default'](this).closest('form').trigger('submit');
	    });
	  };
	}.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));

/***/ },
/* 80 */
/***/ function(module, exports, __webpack_require__) {

	var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;!(__WEBPACK_AMD_DEFINE_ARRAY__ = [exports, module, __webpack_require__(2)], __WEBPACK_AMD_DEFINE_RESULT__ = function (exports, module, _jquery) {
	  'use strict';

	  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }

	  var _$ = _interopRequireDefault(_jquery);

	  module.exports = function () {

	    /* Mobile Product Switcher */
	    var $mobileProductSwitcher = _$['default']('.js-mobile-product-switcher'),
	        $mobileProductSwitcherForm = $mobileProductSwitcher.closest('.js-mobile-product-switcher-form'),
	        $mobileProductSwitcherIcon = $mobileProductSwitcherForm.prev('.js-product-button');

	    $mobileProductSwitcherForm.on('focusin', function () {
	      $mobileProductSwitcherIcon.addClass('is-focused');
	    }).on('focusout', function () {
	      $mobileProductSwitcherIcon.removeClass('is-focused');
	    });

	    $mobileProductSwitcher.on('change', function (e) {
	      window.location.replace(_$['default'](this).val());
	    });
	  };
	}.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));

/***/ },
/* 81 */
/***/ function(module, exports, __webpack_require__) {

	var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;!(__WEBPACK_AMD_DEFINE_ARRAY__ = [exports, module, __webpack_require__(2)], __WEBPACK_AMD_DEFINE_RESULT__ = function (exports, module, _jquery) {
	  'use strict';

	  module.exports = prepare_cache;

	  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }

	  var _$ = _interopRequireDefault(_jquery);

	  function prepare_cache() {
	    if (_$['default'].cookie('hc-use-cache') === 'false') {
	      window.localStorage.clear();
	    }
	  }
	}.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));

/***/ }
]);