babelacc

compare different implementations of the text alternative computation  https://p.ce9e.org/babelacc/
git clone https://git.ce9e.org/babelacc.git

commit
e50c7528ea666a4aba9c91801288da2498ac6229
parent
a9f2e1113562081bf9261dd7735341b8474b32d8
Author
Tobias Bengfort <tobias.bengfort@posteo.de>
Date
2020-09-10 09:44
update accdc to 2.49

Diffstat

M babel.js 12113 +++++++++++++------------------------------------------------
M src/babel.js 2 +-

2 files changed, 2473 insertions, 9642 deletions


diff --git a/babel.js b/babel.js

@@ -5744,7 +5744,7 @@ module.exports = {
 5744  5744 };
 5745  5745 
 5746  5746 },{"./atree.js":8,"./attrs.js":9}],13:[function(require,module,exports){
 5747    -1 /*! axe v3.4.1
   -1  5747 /*! aXe v3.2.2
 5748  5748  * Copyright (c) 2019 Deque Systems, Inc.
 5749  5749  *
 5750  5750  * Your use of this Source Code Form is subject to the terms of the Mozilla Public
@@ -5759,20 +5759,13 @@ module.exports = {
 5759  5759   var global = window;
 5760  5760   var document = window.document;
 5761  5761   'use strict';
 5762    -1   function _typeof(obj) {
 5763    -1     if (typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol') {
 5764    -1       _typeof = function _typeof(obj) {
 5765    -1         return typeof obj;
 5766    -1       };
 5767    -1     } else {
 5768    -1       _typeof = function _typeof(obj) {
 5769    -1         return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;
 5770    -1       };
 5771    -1     }
 5772    -1     return _typeof(obj);
 5773    -1   }
   -1  5762   var _typeof = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol' ? function(obj) {
   -1  5763     return typeof obj;
   -1  5764   } : function(obj) {
   -1  5765     return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;
   -1  5766   };
 5774  5767   var axe = axe || {};
 5775    -1   axe.version = '3.4.1';
   -1  5768   axe.version = '3.2.2';
 5776  5769   if (typeof define === 'function' && define.amd) {
 5777  5770     define('axe-core', [], function() {
 5778  5771       'use strict';
@@ -5790,10 +5783,10 @@ module.exports = {
 5790  5783   function SupportError(error) {
 5791  5784     this.name = 'SupportError';
 5792  5785     this.cause = error.cause;
 5793    -1     this.message = '`'.concat(error.cause, '` - feature unsupported in your environment.');
   -1  5786     this.message = '`' + error.cause + '` - feature unsupported in your environment.';
 5794  5787     if (error.ruleId) {
 5795  5788       this.ruleId = error.ruleId;
 5796    -1       this.message += ' Skipping '.concat(this.ruleId, ' rule.');
   -1  5789       this.message += ' Skipping ' + this.ruleId + ' rule.';
 5797  5790     }
 5798  5791     this.stack = new Error().stack;
 5799  5792   }
@@ -5832,345 +5825,154 @@ module.exports = {
 5832  5825     return r;
 5833  5826   })()({
 5834  5827     1: [ function(_dereq_, module, exports) {
 5835    -1       if (!('Promise' in window)) {
 5836    -1         _dereq_('es6-promise').polyfill();
 5837    -1       }
 5838    -1       if (!('Uint32Array' in window)) {
 5839    -1         _dereq_('core-js/features/typed-array/uint32-array');
 5840    -1       }
 5841    -1       if (window.Uint32Array) {
 5842    -1         if (!('some' in window.Uint32Array.prototype)) {
 5843    -1           _dereq_('core-js/features/typed-array/some');
 5844    -1         }
 5845    -1         if (!('reduce' in window.Uint32Array.prototype)) {
 5846    -1           _dereq_('core-js/features/typed-array/reduce');
 5847    -1         }
 5848    -1       }
 5849    -1       _dereq_('weakmap-polyfill');
   -1  5828       _dereq_('es6-promise').polyfill();
 5850  5829       axe.imports = {
 5851  5830         axios: _dereq_('axios'),
 5852  5831         CssSelectorParser: _dereq_('css-selector-parser').CssSelectorParser,
 5853    -1         doT: _dereq_('@deque/dot'),
 5854    -1         emojiRegexText: _dereq_('emoji-regex'),
 5855    -1         memoize: _dereq_('memoizee')
   -1  5832         doT: _dereq_('dot'),
   -1  5833         emojiRegexText: _dereq_('emoji-regex')
 5856  5834       };
 5857  5835     }, {
 5858    -1       '@deque/dot': 2,
 5859    -1       axios: 3,
 5860    -1       'core-js/features/typed-array/reduce': 31,
 5861    -1       'core-js/features/typed-array/some': 32,
 5862    -1       'core-js/features/typed-array/uint32-array': 33,
 5863    -1       'css-selector-parser': 147,
 5864    -1       'emoji-regex': 150,
 5865    -1       'es6-promise': 194,
 5866    -1       memoizee: 209,
 5867    -1       'weakmap-polyfill': 226
   -1  5836       axios: 2,
   -1  5837       'css-selector-parser': 27,
   -1  5838       dot: 29,
   -1  5839       'emoji-regex': 30,
   -1  5840       'es6-promise': 31
 5868  5841     } ],
 5869  5842     2: [ function(_dereq_, module, exports) {
 5870    -1       (function(global) {
 5871    -1         (function() {
 5872    -1           'use strict';
 5873    -1           var doT = {
 5874    -1             name: 'doT',
 5875    -1             version: '1.1.1',
 5876    -1             templateSettings: {
 5877    -1               evaluate: /\{\{([\s\S]+?(\}?)+)\}\}/g,
 5878    -1               interpolate: /\{\{=([\s\S]+?)\}\}/g,
 5879    -1               encode: /\{\{!([\s\S]+?)\}\}/g,
 5880    -1               use: /\{\{#([\s\S]+?)\}\}/g,
 5881    -1               useParams: /(^|[^\w$])def(?:\.|\[[\'\"])([\w$\.]+)(?:[\'\"]\])?\s*\:\s*([\w$\.]+|\"[^\"]+\"|\'[^\']+\'|\{[^\}]+\})/g,
 5882    -1               define: /\{\{##\s*([\w\.$]+)\s*(\:|=)([\s\S]+?)#\}\}/g,
 5883    -1               defineParams: /^\s*([\w$]+):([\s\S]+)/,
 5884    -1               conditional: /\{\{\?(\?)?\s*([\s\S]*?)\s*\}\}/g,
 5885    -1               iterate: /\{\{~\s*(?:\}\}|([\s\S]+?)\s*\:\s*([\w$]+)\s*(?:\:\s*([\w$]+))?\s*\}\})/g,
 5886    -1               varname: 'it',
 5887    -1               strip: true,
 5888    -1               append: true,
 5889    -1               selfcontained: false,
 5890    -1               doNotSkipEncoded: false
 5891    -1             },
 5892    -1             template: undefined,
 5893    -1             compile: undefined,
 5894    -1             log: true
 5895    -1           };
 5896    -1           (function() {
 5897    -1             if (typeof globalThis === 'object') {
 5898    -1               return;
 5899    -1             }
 5900    -1             try {
 5901    -1               Object.defineProperty(Object.prototype, '__magic__', {
 5902    -1                 get: function() {
 5903    -1                   return this;
 5904    -1                 },
 5905    -1                 configurable: true
 5906    -1               });
 5907    -1               __magic__.globalThis = __magic__;
 5908    -1               delete Object.prototype.__magic__;
 5909    -1             } catch (e) {
 5910    -1               window.globalThis = function() {
 5911    -1                 if (typeof self !== 'undefined') {
 5912    -1                   return self;
 5913    -1                 }
 5914    -1                 if (typeof window !== 'undefined') {
 5915    -1                   return window;
 5916    -1                 }
 5917    -1                 if (typeof global !== 'undefined') {
 5918    -1                   return global;
 5919    -1                 }
 5920    -1                 if (typeof this !== 'undefined') {
 5921    -1                   return this;
 5922    -1                 }
 5923    -1                 throw new Error('Unable to locate global `this`');
 5924    -1               }();
 5925    -1             }
 5926    -1           })();
 5927    -1           doT.encodeHTMLSource = function(doNotSkipEncoded) {
 5928    -1             var encodeHTMLRules = {
 5929    -1               '&': '&#38;',
 5930    -1               '<': '&#60;',
 5931    -1               '>': '&#62;',
 5932    -1               '"': '&#34;',
 5933    -1               '\'': '&#39;',
 5934    -1               '/': '&#47;'
 5935    -1             }, matchHTML = doNotSkipEncoded ? /[&<>"'\/]/g : /&(?!#?\w+;)|<|>|"|'|\//g;
 5936    -1             return function(code) {
 5937    -1               return code ? code.toString().replace(matchHTML, function(m) {
 5938    -1                 return encodeHTMLRules[m] || m;
 5939    -1               }) : '';
   -1  5843       module.exports = _dereq_('./lib/axios');
   -1  5844     }, {
   -1  5845       './lib/axios': 4
   -1  5846     } ],
   -1  5847     3: [ function(_dereq_, module, exports) {
   -1  5848       (function(process) {
   -1  5849         'use strict';
   -1  5850         var utils = _dereq_('./../utils');
   -1  5851         var settle = _dereq_('./../core/settle');
   -1  5852         var buildURL = _dereq_('./../helpers/buildURL');
   -1  5853         var parseHeaders = _dereq_('./../helpers/parseHeaders');
   -1  5854         var isURLSameOrigin = _dereq_('./../helpers/isURLSameOrigin');
   -1  5855         var createError = _dereq_('../core/createError');
   -1  5856         var btoa = typeof window !== 'undefined' && window.btoa && window.btoa.bind(window) || _dereq_('./../helpers/btoa');
   -1  5857         module.exports = function xhrAdapter(config) {
   -1  5858           return new Promise(function dispatchXhrRequest(resolve, reject) {
   -1  5859             var requestData = config.data;
   -1  5860             var requestHeaders = config.headers;
   -1  5861             if (utils.isFormData(requestData)) {
   -1  5862               delete requestHeaders['Content-Type'];
   -1  5863             }
   -1  5864             var request = new XMLHttpRequest();
   -1  5865             var loadEvent = 'onreadystatechange';
   -1  5866             var xDomain = false;
   -1  5867             if (process.env.NODE_ENV !== 'test' && typeof window !== 'undefined' && window.XDomainRequest && !('withCredentials' in request) && !isURLSameOrigin(config.url)) {
   -1  5868               request = new window.XDomainRequest();
   -1  5869               loadEvent = 'onload';
   -1  5870               xDomain = true;
   -1  5871               request.onprogress = function handleProgress() {};
   -1  5872               request.ontimeout = function handleTimeout() {};
   -1  5873             }
   -1  5874             if (config.auth) {
   -1  5875               var username = config.auth.username || '';
   -1  5876               var password = config.auth.password || '';
   -1  5877               requestHeaders.Authorization = 'Basic ' + btoa(username + ':' + password);
   -1  5878             }
   -1  5879             request.open(config.method.toUpperCase(), buildURL(config.url, config.params, config.paramsSerializer), true);
   -1  5880             request.timeout = config.timeout;
   -1  5881             request[loadEvent] = function handleLoad() {
   -1  5882               if (!request || request.readyState !== 4 && !xDomain) {
   -1  5883                 return;
   -1  5884               }
   -1  5885               if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {
   -1  5886                 return;
   -1  5887               }
   -1  5888               var responseHeaders = 'getAllResponseHeaders' in request ? parseHeaders(request.getAllResponseHeaders()) : null;
   -1  5889               var responseData = !config.responseType || config.responseType === 'text' ? request.responseText : request.response;
   -1  5890               var response = {
   -1  5891                 data: responseData,
   -1  5892                 status: request.status === 1223 ? 204 : request.status,
   -1  5893                 statusText: request.status === 1223 ? 'No Content' : request.statusText,
   -1  5894                 headers: responseHeaders,
   -1  5895                 config: config,
   -1  5896                 request: request
   -1  5897               };
   -1  5898               settle(resolve, reject, response);
   -1  5899               request = null;
 5940  5900             };
 5941    -1           };
 5942    -1           if (typeof module !== 'undefined' && module.exports) {
 5943    -1             module.exports = doT;
 5944    -1           } else if (typeof define === 'function' && define.amd) {
 5945    -1             define(function() {
 5946    -1               return doT;
 5947    -1             });
 5948    -1           } else {
 5949    -1             globalThis.doT = doT;
 5950    -1           }
 5951    -1           var startend = {
 5952    -1             append: {
 5953    -1               start: '\'+(',
 5954    -1               end: ')+\'',
 5955    -1               startencode: '\'+encodeHTML('
 5956    -1             },
 5957    -1             split: {
 5958    -1               start: '\';out+=(',
 5959    -1               end: ');out+=\'',
 5960    -1               startencode: '\';out+=encodeHTML('
 5961    -1             }
 5962    -1           }, skip = /$^/;
 5963    -1           function resolveDefs(c, block, def) {
 5964    -1             return (typeof block === 'string' ? block : block.toString()).replace(c.define || skip, function(m, code, assign, value) {
 5965    -1               if (code.indexOf('def.') === 0) {
 5966    -1                 code = code.substring(4);
   -1  5901             request.onerror = function handleError() {
   -1  5902               reject(createError('Network Error', config, null, request));
   -1  5903               request = null;
   -1  5904             };
   -1  5905             request.ontimeout = function handleTimeout() {
   -1  5906               reject(createError('timeout of ' + config.timeout + 'ms exceeded', config, 'ECONNABORTED', request));
   -1  5907               request = null;
   -1  5908             };
   -1  5909             if (utils.isStandardBrowserEnv()) {
   -1  5910               var cookies = _dereq_('./../helpers/cookies');
   -1  5911               var xsrfValue = (config.withCredentials || isURLSameOrigin(config.url)) && config.xsrfCookieName ? cookies.read(config.xsrfCookieName) : undefined;
   -1  5912               if (xsrfValue) {
   -1  5913                 requestHeaders[config.xsrfHeaderName] = xsrfValue;
 5967  5914               }
 5968    -1               if (!(code in def)) {
 5969    -1                 if (assign === ':') {
 5970    -1                   if (c.defineParams) {
 5971    -1                     value.replace(c.defineParams, function(m, param, v) {
 5972    -1                       def[code] = {
 5973    -1                         arg: param,
 5974    -1                         text: v
 5975    -1                       };
 5976    -1                     });
 5977    -1                   }
 5978    -1                   if (!(code in def)) {
 5979    -1                     def[code] = value;
 5980    -1                   }
   -1  5915             }
   -1  5916             if ('setRequestHeader' in request) {
   -1  5917               utils.forEach(requestHeaders, function setRequestHeader(val, key) {
   -1  5918                 if (typeof requestData === 'undefined' && key.toLowerCase() === 'content-type') {
   -1  5919                   delete requestHeaders[key];
 5981  5920                 } else {
 5982    -1                   new Function('def', 'def[\'' + code + '\']=' + value)(def);
   -1  5921                   request.setRequestHeader(key, val);
 5983  5922                 }
 5984    -1               }
 5985    -1               return '';
 5986    -1             }).replace(c.use || skip, function(m, code) {
 5987    -1               if (c.useParams) {
 5988    -1                 code = code.replace(c.useParams, function(m, s, d, param) {
 5989    -1                   if (def[d] && def[d].arg && param) {
 5990    -1                     var rw = (d + ':' + param).replace(/'|\\/g, '_');
 5991    -1                     def.__exp = def.__exp || {};
 5992    -1                     def.__exp[rw] = def[d].text.replace(new RegExp('(^|[^\\w$])' + def[d].arg + '([^\\w$])', 'g'), '$1' + param + '$2');
 5993    -1                     return s + 'def.__exp[\'' + rw + '\']';
 5994    -1                   }
 5995    -1                 });
 5996    -1               }
 5997    -1               var v = new Function('def', 'return ' + code)(def);
 5998    -1               return v ? resolveDefs(c, v, def) : v;
 5999    -1             });
 6000    -1           }
 6001    -1           function unescape(code) {
 6002    -1             return code.replace(/\\('|\\)/g, '$1').replace(/[\r\t\n]/g, ' ');
 6003    -1           }
 6004    -1           doT.template = function(tmpl, c, def) {
 6005    -1             c = c || doT.templateSettings;
 6006    -1             var cse = c.append ? startend.append : startend.split, needhtmlencode, sid = 0, indv, str = c.use || c.define ? resolveDefs(c, tmpl, def || {}) : tmpl;
 6007    -1             str = ('var out=\'' + (c.strip ? str.replace(/(^|\r|\n)\t* +| +\t*(\r|\n|$)/g, ' ').replace(/\r|\n|\t|\/\*[\s\S]*?\*\//g, '') : str).replace(/'|\\/g, '\\$&').replace(c.interpolate || skip, function(m, code) {
 6008    -1               return cse.start + unescape(code) + cse.end;
 6009    -1             }).replace(c.encode || skip, function(m, code) {
 6010    -1               needhtmlencode = true;
 6011    -1               return cse.startencode + unescape(code) + cse.end;
 6012    -1             }).replace(c.conditional || skip, function(m, elsecase, code) {
 6013    -1               return elsecase ? code ? '\';}else if(' + unescape(code) + '){out+=\'' : '\';}else{out+=\'' : code ? '\';if(' + unescape(code) + '){out+=\'' : '\';}out+=\'';
 6014    -1             }).replace(c.iterate || skip, function(m, iterate, vname, iname) {
 6015    -1               if (!iterate) {
 6016    -1                 return '\';} } out+=\'';
 6017    -1               }
 6018    -1               sid += 1;
 6019    -1               indv = iname || 'i' + sid;
 6020    -1               iterate = unescape(iterate);
 6021    -1               return '\';var arr' + sid + '=' + iterate + ';if(arr' + sid + '){var ' + vname + ',' + indv + '=-1,l' + sid + '=arr' + sid + '.length-1;while(' + indv + '<l' + sid + '){' + vname + '=arr' + sid + '[' + indv + '+=1];out+=\'';
 6022    -1             }).replace(c.evaluate || skip, function(m, code) {
 6023    -1               return '\';' + unescape(code) + 'out+=\'';
 6024    -1             }) + '\';return out;').replace(/\n/g, '\\n').replace(/\t/g, '\\t').replace(/\r/g, '\\r').replace(/(\s|;|\}|^|\{)out\+='';/g, '$1').replace(/\+''/g, '');
 6025    -1             if (needhtmlencode) {
 6026    -1               if (!c.selfcontained && globalThis && !globalThis._encodeHTML) {
 6027    -1                 globalThis._encodeHTML = doT.encodeHTMLSource(c.doNotSkipEncoded);
 6028    -1               }
 6029    -1               str = 'var encodeHTML = typeof _encodeHTML !== \'undefined\' ? _encodeHTML : (' + doT.encodeHTMLSource.toString() + '(' + (c.doNotSkipEncoded || '') + '));' + str;
   -1  5923               });
 6030  5924             }
 6031    -1             try {
 6032    -1               return new Function(c.varname, str);
 6033    -1             } catch (e) {
 6034    -1               if (typeof console !== 'undefined') {
 6035    -1                 console.log('Could not create a template function: ' + str);
 6036    -1               }
 6037    -1               throw e;
   -1  5925             if (config.withCredentials) {
   -1  5926               request.withCredentials = true;
 6038  5927             }
 6039    -1           };
 6040    -1           doT.compile = function(tmpl, def) {
 6041    -1             return doT.template(tmpl, null, def);
 6042    -1           };
 6043    -1         })();
 6044    -1       }).call(this, typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : typeof window !== 'undefined' ? window : {});
 6045    -1     }, {} ],
 6046    -1     3: [ function(_dereq_, module, exports) {
 6047    -1       module.exports = _dereq_('./lib/axios');
 6048    -1     }, {
 6049    -1       './lib/axios': 5
 6050    -1     } ],
 6051    -1     4: [ function(_dereq_, module, exports) {
 6052    -1       'use strict';
 6053    -1       var utils = _dereq_('./../utils');
 6054    -1       var settle = _dereq_('./../core/settle');
 6055    -1       var buildURL = _dereq_('./../helpers/buildURL');
 6056    -1       var parseHeaders = _dereq_('./../helpers/parseHeaders');
 6057    -1       var isURLSameOrigin = _dereq_('./../helpers/isURLSameOrigin');
 6058    -1       var createError = _dereq_('../core/createError');
 6059    -1       module.exports = function xhrAdapter(config) {
 6060    -1         return new Promise(function dispatchXhrRequest(resolve, reject) {
 6061    -1           var requestData = config.data;
 6062    -1           var requestHeaders = config.headers;
 6063    -1           if (utils.isFormData(requestData)) {
 6064    -1             delete requestHeaders['Content-Type'];
 6065    -1           }
 6066    -1           var request = new XMLHttpRequest();
 6067    -1           if (config.auth) {
 6068    -1             var username = config.auth.username || '';
 6069    -1             var password = config.auth.password || '';
 6070    -1             requestHeaders.Authorization = 'Basic ' + btoa(username + ':' + password);
 6071    -1           }
 6072    -1           request.open(config.method.toUpperCase(), buildURL(config.url, config.params, config.paramsSerializer), true);
 6073    -1           request.timeout = config.timeout;
 6074    -1           request.onreadystatechange = function handleLoad() {
 6075    -1             if (!request || request.readyState !== 4) {
 6076    -1               return;
   -1  5928             if (config.responseType) {
   -1  5929               try {
   -1  5930                 request.responseType = config.responseType;
   -1  5931               } catch (e) {
   -1  5932                 if (config.responseType !== 'json') {
   -1  5933                   throw e;
   -1  5934                 }
   -1  5935               }
 6077  5936             }
 6078    -1             if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {
 6079    -1               return;
   -1  5937             if (typeof config.onDownloadProgress === 'function') {
   -1  5938               request.addEventListener('progress', config.onDownloadProgress);
 6080  5939             }
 6081    -1             var responseHeaders = 'getAllResponseHeaders' in request ? parseHeaders(request.getAllResponseHeaders()) : null;
 6082    -1             var responseData = !config.responseType || config.responseType === 'text' ? request.responseText : request.response;
 6083    -1             var response = {
 6084    -1               data: responseData,
 6085    -1               status: request.status,
 6086    -1               statusText: request.statusText,
 6087    -1               headers: responseHeaders,
 6088    -1               config: config,
 6089    -1               request: request
 6090    -1             };
 6091    -1             settle(resolve, reject, response);
 6092    -1             request = null;
 6093    -1           };
 6094    -1           request.onabort = function handleAbort() {
 6095    -1             if (!request) {
 6096    -1               return;
   -1  5940             if (typeof config.onUploadProgress === 'function' && request.upload) {
   -1  5941               request.upload.addEventListener('progress', config.onUploadProgress);
 6097  5942             }
 6098    -1             reject(createError('Request aborted', config, 'ECONNABORTED', request));
 6099    -1             request = null;
 6100    -1           };
 6101    -1           request.onerror = function handleError() {
 6102    -1             reject(createError('Network Error', config, null, request));
 6103    -1             request = null;
 6104    -1           };
 6105    -1           request.ontimeout = function handleTimeout() {
 6106    -1             reject(createError('timeout of ' + config.timeout + 'ms exceeded', config, 'ECONNABORTED', request));
 6107    -1             request = null;
 6108    -1           };
 6109    -1           if (utils.isStandardBrowserEnv()) {
 6110    -1             var cookies = _dereq_('./../helpers/cookies');
 6111    -1             var xsrfValue = (config.withCredentials || isURLSameOrigin(config.url)) && config.xsrfCookieName ? cookies.read(config.xsrfCookieName) : undefined;
 6112    -1             if (xsrfValue) {
 6113    -1               requestHeaders[config.xsrfHeaderName] = xsrfValue;
   -1  5943             if (config.cancelToken) {
   -1  5944               config.cancelToken.promise.then(function onCanceled(cancel) {
   -1  5945                 if (!request) {
   -1  5946                   return;
   -1  5947                 }
   -1  5948                 request.abort();
   -1  5949                 reject(cancel);
   -1  5950                 request = null;
   -1  5951               });
 6114  5952             }
 6115    -1           }
 6116    -1           if ('setRequestHeader' in request) {
 6117    -1             utils.forEach(requestHeaders, function setRequestHeader(val, key) {
 6118    -1               if (typeof requestData === 'undefined' && key.toLowerCase() === 'content-type') {
 6119    -1                 delete requestHeaders[key];
 6120    -1               } else {
 6121    -1                 request.setRequestHeader(key, val);
 6122    -1               }
 6123    -1             });
 6124    -1           }
 6125    -1           if (config.withCredentials) {
 6126    -1             request.withCredentials = true;
 6127    -1           }
 6128    -1           if (config.responseType) {
 6129    -1             try {
 6130    -1               request.responseType = config.responseType;
 6131    -1             } catch (e) {
 6132    -1               if (config.responseType !== 'json') {
 6133    -1                 throw e;
 6134    -1               }
   -1  5953             if (requestData === undefined) {
   -1  5954               requestData = null;
 6135  5955             }
 6136    -1           }
 6137    -1           if (typeof config.onDownloadProgress === 'function') {
 6138    -1             request.addEventListener('progress', config.onDownloadProgress);
 6139    -1           }
 6140    -1           if (typeof config.onUploadProgress === 'function' && request.upload) {
 6141    -1             request.upload.addEventListener('progress', config.onUploadProgress);
 6142    -1           }
 6143    -1           if (config.cancelToken) {
 6144    -1             config.cancelToken.promise.then(function onCanceled(cancel) {
 6145    -1               if (!request) {
 6146    -1                 return;
 6147    -1               }
 6148    -1               request.abort();
 6149    -1               reject(cancel);
 6150    -1               request = null;
 6151    -1             });
 6152    -1           }
 6153    -1           if (requestData === undefined) {
 6154    -1             requestData = null;
 6155    -1           }
 6156    -1           request.send(requestData);
 6157    -1         });
 6158    -1       };
   -1  5956             request.send(requestData);
   -1  5957           });
   -1  5958         };
   -1  5959       }).call(this, _dereq_('_process'));
 6159  5960     }, {
 6160    -1       '../core/createError': 11,
 6161    -1       './../core/settle': 15,
 6162    -1       './../helpers/buildURL': 19,
 6163    -1       './../helpers/cookies': 21,
 6164    -1       './../helpers/isURLSameOrigin': 23,
 6165    -1       './../helpers/parseHeaders': 25,
 6166    -1       './../utils': 27
   -1  5961       '../core/createError': 10,
   -1  5962       './../core/settle': 13,
   -1  5963       './../helpers/btoa': 17,
   -1  5964       './../helpers/buildURL': 18,
   -1  5965       './../helpers/cookies': 20,
   -1  5966       './../helpers/isURLSameOrigin': 22,
   -1  5967       './../helpers/parseHeaders': 24,
   -1  5968       './../utils': 26,
   -1  5969       _process: 33
 6167  5970     } ],
 6168    -1     5: [ function(_dereq_, module, exports) {
   -1  5971     4: [ function(_dereq_, module, exports) {
 6169  5972       'use strict';
 6170  5973       var utils = _dereq_('./utils');
 6171  5974       var bind = _dereq_('./helpers/bind');
 6172  5975       var Axios = _dereq_('./core/Axios');
 6173    -1       var mergeConfig = _dereq_('./core/mergeConfig');
 6174  5976       var defaults = _dereq_('./defaults');
 6175  5977       function createInstance(defaultConfig) {
 6176  5978         var context = new Axios(defaultConfig);
@@ -6182,7 +5984,7 @@ module.exports = {
 6182  5984       var axios = createInstance(defaults);
 6183  5985       axios.Axios = Axios;
 6184  5986       axios.create = function create(instanceConfig) {
 6185    -1         return createInstance(mergeConfig(axios.defaults, instanceConfig));
   -1  5987         return createInstance(utils.merge(defaults, instanceConfig));
 6186  5988       };
 6187  5989       axios.Cancel = _dereq_('./cancel/Cancel');
 6188  5990       axios.CancelToken = _dereq_('./cancel/CancelToken');
@@ -6194,17 +5996,16 @@ module.exports = {
 6194  5996       module.exports = axios;
 6195  5997       module.exports.default = axios;
 6196  5998     }, {
 6197    -1       './cancel/Cancel': 6,
 6198    -1       './cancel/CancelToken': 7,
 6199    -1       './cancel/isCancel': 8,
 6200    -1       './core/Axios': 9,
 6201    -1       './core/mergeConfig': 14,
 6202    -1       './defaults': 17,
 6203    -1       './helpers/bind': 18,
 6204    -1       './helpers/spread': 26,
 6205    -1       './utils': 27
   -1  5999       './cancel/Cancel': 5,
   -1  6000       './cancel/CancelToken': 6,
   -1  6001       './cancel/isCancel': 7,
   -1  6002       './core/Axios': 8,
   -1  6003       './defaults': 15,
   -1  6004       './helpers/bind': 16,
   -1  6005       './helpers/spread': 25,
   -1  6006       './utils': 26
 6206  6007     } ],
 6207    -1     6: [ function(_dereq_, module, exports) {
   -1  6008     5: [ function(_dereq_, module, exports) {
 6208  6009       'use strict';
 6209  6010       function Cancel(message) {
 6210  6011         this.message = message;
@@ -6215,7 +6016,7 @@ module.exports = {
 6215  6016       Cancel.prototype.__CANCEL__ = true;
 6216  6017       module.exports = Cancel;
 6217  6018     }, {} ],
 6218    -1     7: [ function(_dereq_, module, exports) {
   -1  6019     6: [ function(_dereq_, module, exports) {
 6219  6020       'use strict';
 6220  6021       var Cancel = _dereq_('./Cancel');
 6221  6022       function CancelToken(executor) {
@@ -6252,21 +6053,20 @@ module.exports = {
 6252  6053       };
 6253  6054       module.exports = CancelToken;
 6254  6055     }, {
 6255    -1       './Cancel': 6
   -1  6056       './Cancel': 5
 6256  6057     } ],
 6257    -1     8: [ function(_dereq_, module, exports) {
   -1  6058     7: [ function(_dereq_, module, exports) {
 6258  6059       'use strict';
 6259  6060       module.exports = function isCancel(value) {
 6260  6061         return !!(value && value.__CANCEL__);
 6261  6062       };
 6262  6063     }, {} ],
 6263    -1     9: [ function(_dereq_, module, exports) {
   -1  6064     8: [ function(_dereq_, module, exports) {
 6264  6065       'use strict';
   -1  6066       var defaults = _dereq_('./../defaults');
 6265  6067       var utils = _dereq_('./../utils');
 6266    -1       var buildURL = _dereq_('../helpers/buildURL');
 6267  6068       var InterceptorManager = _dereq_('./InterceptorManager');
 6268  6069       var dispatchRequest = _dereq_('./dispatchRequest');
 6269    -1       var mergeConfig = _dereq_('./mergeConfig');
 6270  6070       function Axios(instanceConfig) {
 6271  6071         this.defaults = instanceConfig;
 6272  6072         this.interceptors = {
@@ -6276,13 +6076,14 @@ module.exports = {
 6276  6076       }
 6277  6077       Axios.prototype.request = function request(config) {
 6278  6078         if (typeof config === 'string') {
 6279    -1           config = arguments[1] || {};
 6280    -1           config.url = arguments[0];
 6281    -1         } else {
 6282    -1           config = config || {};
 6283    -1         }
 6284    -1         config = mergeConfig(this.defaults, config);
 6285    -1         config.method = config.method ? config.method.toLowerCase() : 'get';
   -1  6079           config = utils.merge({
   -1  6080             url: arguments[0]
   -1  6081           }, arguments[1]);
   -1  6082         }
   -1  6083         config = utils.merge(defaults, {
   -1  6084           method: 'get'
   -1  6085         }, this.defaults, config);
   -1  6086         config.method = config.method.toLowerCase();
 6286  6087         var chain = [ dispatchRequest, undefined ];
 6287  6088         var promise = Promise.resolve(config);
 6288  6089         this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {
@@ -6296,10 +6097,6 @@ module.exports = {
 6296  6097         }
 6297  6098         return promise;
 6298  6099       };
 6299    -1       Axios.prototype.getUri = function getUri(config) {
 6300    -1         config = mergeConfig(this.defaults, config);
 6301    -1         return buildURL(config.url, config.params, config.paramsSerializer).replace(/^\?/, '');
 6302    -1       };
 6303  6100       utils.forEach([ 'delete', 'get', 'head', 'options' ], function forEachMethodNoData(method) {
 6304  6101         Axios.prototype[method] = function(url, config) {
 6305  6102           return this.request(utils.merge(config || {}, {
@@ -6319,13 +6116,12 @@ module.exports = {
 6319  6116       });
 6320  6117       module.exports = Axios;
 6321  6118     }, {
 6322    -1       '../helpers/buildURL': 19,
 6323    -1       './../utils': 27,
 6324    -1       './InterceptorManager': 10,
 6325    -1       './dispatchRequest': 12,
 6326    -1       './mergeConfig': 14
   -1  6119       './../defaults': 15,
   -1  6120       './../utils': 26,
   -1  6121       './InterceptorManager': 9,
   -1  6122       './dispatchRequest': 11
 6327  6123     } ],
 6328    -1     10: [ function(_dereq_, module, exports) {
   -1  6124     9: [ function(_dereq_, module, exports) {
 6329  6125       'use strict';
 6330  6126       var utils = _dereq_('./../utils');
 6331  6127       function InterceptorManager() {
@@ -6352,9 +6148,9 @@ module.exports = {
 6352  6148       };
 6353  6149       module.exports = InterceptorManager;
 6354  6150     }, {
 6355    -1       './../utils': 27
   -1  6151       './../utils': 26
 6356  6152     } ],
 6357    -1     11: [ function(_dereq_, module, exports) {
   -1  6153     10: [ function(_dereq_, module, exports) {
 6358  6154       'use strict';
 6359  6155       var enhanceError = _dereq_('./enhanceError');
 6360  6156       module.exports = function createError(message, config, code, request, response) {
@@ -6362,9 +6158,9 @@ module.exports = {
 6362  6158         return enhanceError(error, config, code, request, response);
 6363  6159       };
 6364  6160     }, {
 6365    -1       './enhanceError': 13
   -1  6161       './enhanceError': 12
 6366  6162     } ],
 6367    -1     12: [ function(_dereq_, module, exports) {
   -1  6163     11: [ function(_dereq_, module, exports) {
 6368  6164       'use strict';
 6369  6165       var utils = _dereq_('./../utils');
 6370  6166       var transformData = _dereq_('./transformData');
@@ -6404,14 +6200,14 @@ module.exports = {
 6404  6200         });
 6405  6201       };
 6406  6202     }, {
 6407    -1       '../cancel/isCancel': 8,
 6408    -1       '../defaults': 17,
 6409    -1       './../helpers/combineURLs': 20,
 6410    -1       './../helpers/isAbsoluteURL': 22,
 6411    -1       './../utils': 27,
 6412    -1       './transformData': 16
   -1  6203       '../cancel/isCancel': 7,
   -1  6204       '../defaults': 15,
   -1  6205       './../helpers/combineURLs': 19,
   -1  6206       './../helpers/isAbsoluteURL': 21,
   -1  6207       './../utils': 26,
   -1  6208       './transformData': 14
 6413  6209     } ],
 6414    -1     13: [ function(_dereq_, module, exports) {
   -1  6210     12: [ function(_dereq_, module, exports) {
 6415  6211       'use strict';
 6416  6212       module.exports = function enhanceError(error, config, code, request, response) {
 6417  6213         error.config = config;
@@ -6420,73 +6216,24 @@ module.exports = {
 6420  6216         }
 6421  6217         error.request = request;
 6422  6218         error.response = response;
 6423    -1         error.isAxiosError = true;
 6424    -1         error.toJSON = function() {
 6425    -1           return {
 6426    -1             message: this.message,
 6427    -1             name: this.name,
 6428    -1             description: this.description,
 6429    -1             number: this.number,
 6430    -1             fileName: this.fileName,
 6431    -1             lineNumber: this.lineNumber,
 6432    -1             columnNumber: this.columnNumber,
 6433    -1             stack: this.stack,
 6434    -1             config: this.config,
 6435    -1             code: this.code
 6436    -1           };
 6437    -1         };
 6438  6219         return error;
 6439  6220       };
 6440  6221     }, {} ],
 6441    -1     14: [ function(_dereq_, module, exports) {
 6442    -1       'use strict';
 6443    -1       var utils = _dereq_('../utils');
 6444    -1       module.exports = function mergeConfig(config1, config2) {
 6445    -1         config2 = config2 || {};
 6446    -1         var config = {};
 6447    -1         utils.forEach([ 'url', 'method', 'params', 'data' ], function valueFromConfig2(prop) {
 6448    -1           if (typeof config2[prop] !== 'undefined') {
 6449    -1             config[prop] = config2[prop];
 6450    -1           }
 6451    -1         });
 6452    -1         utils.forEach([ 'headers', 'auth', 'proxy' ], function mergeDeepProperties(prop) {
 6453    -1           if (utils.isObject(config2[prop])) {
 6454    -1             config[prop] = utils.deepMerge(config1[prop], config2[prop]);
 6455    -1           } else if (typeof config2[prop] !== 'undefined') {
 6456    -1             config[prop] = config2[prop];
 6457    -1           } else if (utils.isObject(config1[prop])) {
 6458    -1             config[prop] = utils.deepMerge(config1[prop]);
 6459    -1           } else if (typeof config1[prop] !== 'undefined') {
 6460    -1             config[prop] = config1[prop];
 6461    -1           }
 6462    -1         });
 6463    -1         utils.forEach([ 'baseURL', 'transformRequest', 'transformResponse', 'paramsSerializer', 'timeout', 'withCredentials', 'adapter', 'responseType', 'xsrfCookieName', 'xsrfHeaderName', 'onUploadProgress', 'onDownloadProgress', 'maxContentLength', 'validateStatus', 'maxRedirects', 'httpAgent', 'httpsAgent', 'cancelToken', 'socketPath' ], function defaultToConfig2(prop) {
 6464    -1           if (typeof config2[prop] !== 'undefined') {
 6465    -1             config[prop] = config2[prop];
 6466    -1           } else if (typeof config1[prop] !== 'undefined') {
 6467    -1             config[prop] = config1[prop];
 6468    -1           }
 6469    -1         });
 6470    -1         return config;
 6471    -1       };
 6472    -1     }, {
 6473    -1       '../utils': 27
 6474    -1     } ],
 6475    -1     15: [ function(_dereq_, module, exports) {
   -1  6222     13: [ function(_dereq_, module, exports) {
 6476  6223       'use strict';
 6477  6224       var createError = _dereq_('./createError');
 6478  6225       module.exports = function settle(resolve, reject, response) {
 6479  6226         var validateStatus = response.config.validateStatus;
 6480    -1         if (!validateStatus || validateStatus(response.status)) {
   -1  6227         if (!response.status || !validateStatus || validateStatus(response.status)) {
 6481  6228           resolve(response);
 6482  6229         } else {
 6483  6230           reject(createError('Request failed with status code ' + response.status, response.config, null, response.request, response));
 6484  6231         }
 6485  6232       };
 6486  6233     }, {
 6487    -1       './createError': 11
   -1  6234       './createError': 10
 6488  6235     } ],
 6489    -1     16: [ function(_dereq_, module, exports) {
   -1  6236     14: [ function(_dereq_, module, exports) {
 6490  6237       'use strict';
 6491  6238       var utils = _dereq_('./../utils');
 6492  6239       module.exports = function transformData(data, headers, fns) {
@@ -6496,9 +6243,9 @@ module.exports = {
 6496  6243         return data;
 6497  6244       };
 6498  6245     }, {
 6499    -1       './../utils': 27
   -1  6246       './../utils': 26
 6500  6247     } ],
 6501    -1     17: [ function(_dereq_, module, exports) {
   -1  6248     15: [ function(_dereq_, module, exports) {
 6502  6249       (function(process) {
 6503  6250         'use strict';
 6504  6251         var utils = _dereq_('./utils');
@@ -6513,17 +6260,16 @@ module.exports = {
 6513  6260         }
 6514  6261         function getDefaultAdapter() {
 6515  6262           var adapter;
 6516    -1           if (typeof process !== 'undefined' && Object.prototype.toString.call(process) === '[object process]') {
 6517    -1             adapter = _dereq_('./adapters/http');
 6518    -1           } else if (typeof XMLHttpRequest !== 'undefined') {
   -1  6263           if (typeof XMLHttpRequest !== 'undefined') {
 6519  6264             adapter = _dereq_('./adapters/xhr');
   -1  6265           } else if (typeof process !== 'undefined') {
   -1  6266             adapter = _dereq_('./adapters/http');
 6520  6267           }
 6521  6268           return adapter;
 6522  6269         }
 6523  6270         var defaults = {
 6524  6271           adapter: getDefaultAdapter(),
 6525  6272           transformRequest: [ function transformRequest(data, headers) {
 6526    -1             normalizeHeaderName(headers, 'Accept');
 6527  6273             normalizeHeaderName(headers, 'Content-Type');
 6528  6274             if (utils.isFormData(data) || utils.isArrayBuffer(data) || utils.isBuffer(data) || utils.isStream(data) || utils.isFile(data) || utils.isBlob(data)) {
 6529  6275               return data;
@@ -6571,13 +6317,13 @@ module.exports = {
 6571  6317         module.exports = defaults;
 6572  6318       }).call(this, _dereq_('_process'));
 6573  6319     }, {
 6574    -1       './adapters/http': 4,
 6575    -1       './adapters/xhr': 4,
 6576    -1       './helpers/normalizeHeaderName': 24,
 6577    -1       './utils': 27,
 6578    -1       _process: 222
   -1  6320       './adapters/http': 3,
   -1  6321       './adapters/xhr': 3,
   -1  6322       './helpers/normalizeHeaderName': 23,
   -1  6323       './utils': 26,
   -1  6324       _process: 33
 6579  6325     } ],
 6580    -1     18: [ function(_dereq_, module, exports) {
   -1  6326     16: [ function(_dereq_, module, exports) {
 6581  6327       'use strict';
 6582  6328       module.exports = function bind(fn, thisArg) {
 6583  6329         return function wrap() {
@@ -6589,7 +6335,31 @@ module.exports = {
 6589  6335         };
 6590  6336       };
 6591  6337     }, {} ],
 6592    -1     19: [ function(_dereq_, module, exports) {
   -1  6338     17: [ function(_dereq_, module, exports) {
   -1  6339       'use strict';
   -1  6340       var chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';
   -1  6341       function E() {
   -1  6342         this.message = 'String contains an invalid character';
   -1  6343       }
   -1  6344       E.prototype = new Error();
   -1  6345       E.prototype.code = 5;
   -1  6346       E.prototype.name = 'InvalidCharacterError';
   -1  6347       function btoa(input) {
   -1  6348         var str = String(input);
   -1  6349         var output = '';
   -1  6350         for (var block, charCode, idx = 0, map = chars; str.charAt(idx | 0) || (map = '=', 
   -1  6351         idx % 1); output += map.charAt(63 & block >> 8 - idx % 1 * 8)) {
   -1  6352           charCode = str.charCodeAt(idx += 3 / 4);
   -1  6353           if (charCode > 255) {
   -1  6354             throw new E();
   -1  6355           }
   -1  6356           block = block << 8 | charCode;
   -1  6357         }
   -1  6358         return output;
   -1  6359       }
   -1  6360       module.exports = btoa;
   -1  6361     }, {} ],
   -1  6362     18: [ function(_dereq_, module, exports) {
 6593  6363       'use strict';
 6594  6364       var utils = _dereq_('./../utils');
 6595  6365       function encode(val) {
@@ -6627,24 +6397,20 @@ module.exports = {
 6627  6397           serializedParams = parts.join('&');
 6628  6398         }
 6629  6399         if (serializedParams) {
 6630    -1           var hashmarkIndex = url.indexOf('#');
 6631    -1           if (hashmarkIndex !== -1) {
 6632    -1             url = url.slice(0, hashmarkIndex);
 6633    -1           }
 6634  6400           url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;
 6635  6401         }
 6636  6402         return url;
 6637  6403       };
 6638  6404     }, {
 6639    -1       './../utils': 27
   -1  6405       './../utils': 26
 6640  6406     } ],
 6641    -1     20: [ function(_dereq_, module, exports) {
   -1  6407     19: [ function(_dereq_, module, exports) {
 6642  6408       'use strict';
 6643  6409       module.exports = function combineURLs(baseURL, relativeURL) {
 6644  6410         return relativeURL ? baseURL.replace(/\/+$/, '') + '/' + relativeURL.replace(/^\/+/, '') : baseURL;
 6645  6411       };
 6646  6412     }, {} ],
 6647    -1     21: [ function(_dereq_, module, exports) {
   -1  6413     20: [ function(_dereq_, module, exports) {
 6648  6414       'use strict';
 6649  6415       var utils = _dereq_('./../utils');
 6650  6416       module.exports = utils.isStandardBrowserEnv() ? function standardBrowserEnv() {
@@ -6684,15 +6450,15 @@ module.exports = {
 6684  6450         };
 6685  6451       }();
 6686  6452     }, {
 6687    -1       './../utils': 27
   -1  6453       './../utils': 26
 6688  6454     } ],
 6689    -1     22: [ function(_dereq_, module, exports) {
   -1  6455     21: [ function(_dereq_, module, exports) {
 6690  6456       'use strict';
 6691  6457       module.exports = function isAbsoluteURL(url) {
 6692  6458         return /^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(url);
 6693  6459       };
 6694  6460     }, {} ],
 6695    -1     23: [ function(_dereq_, module, exports) {
   -1  6461     22: [ function(_dereq_, module, exports) {
 6696  6462       'use strict';
 6697  6463       var utils = _dereq_('./../utils');
 6698  6464       module.exports = utils.isStandardBrowserEnv() ? function standardBrowserEnv() {
@@ -6728,9 +6494,9 @@ module.exports = {
 6728  6494         };
 6729  6495       }();
 6730  6496     }, {
 6731    -1       './../utils': 27
   -1  6497       './../utils': 26
 6732  6498     } ],
 6733    -1     24: [ function(_dereq_, module, exports) {
   -1  6499     23: [ function(_dereq_, module, exports) {
 6734  6500       'use strict';
 6735  6501       var utils = _dereq_('../utils');
 6736  6502       module.exports = function normalizeHeaderName(headers, normalizedName) {
@@ -6742,9 +6508,9 @@ module.exports = {
 6742  6508         });
 6743  6509       };
 6744  6510     }, {
 6745    -1       '../utils': 27
   -1  6511       '../utils': 26
 6746  6512     } ],
 6747    -1     25: [ function(_dereq_, module, exports) {
   -1  6513     24: [ function(_dereq_, module, exports) {
 6748  6514       'use strict';
 6749  6515       var utils = _dereq_('./../utils');
 6750  6516       var ignoreDuplicateOf = [ 'age', 'authorization', 'content-length', 'content-type', 'etag', 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since', 'last-modified', 'location', 'max-forwards', 'proxy-authorization', 'referer', 'retry-after', 'user-agent' ];
@@ -6774,9 +6540,9 @@ module.exports = {
 6774  6540         return parsed;
 6775  6541       };
 6776  6542     }, {
 6777    -1       './../utils': 27
   -1  6543       './../utils': 26
 6778  6544     } ],
 6779    -1     26: [ function(_dereq_, module, exports) {
   -1  6545     25: [ function(_dereq_, module, exports) {
 6780  6546       'use strict';
 6781  6547       module.exports = function spread(callback) {
 6782  6548         return function wrap(arr) {
@@ -6784,7 +6550,7 @@ module.exports = {
 6784  6550         };
 6785  6551       };
 6786  6552     }, {} ],
 6787    -1     27: [ function(_dereq_, module, exports) {
   -1  6553     26: [ function(_dereq_, module, exports) {
 6788  6554       'use strict';
 6789  6555       var bind = _dereq_('./helpers/bind');
 6790  6556       var isBuffer = _dereq_('is-buffer');
@@ -6841,7 +6607,7 @@ module.exports = {
 6841  6607         return str.replace(/^\s*/, '').replace(/\s*$/, '');
 6842  6608       }
 6843  6609       function isStandardBrowserEnv() {
 6844    -1         if (typeof navigator !== 'undefined' && (navigator.product === 'ReactNative' || navigator.product === 'NativeScript' || navigator.product === 'NS')) {
   -1  6610         if (typeof navigator !== 'undefined' && navigator.product === 'ReactNative') {
 6845  6611           return false;
 6846  6612         }
 6847  6613         return typeof window !== 'undefined' && typeof document !== 'undefined';
@@ -6879,22 +6645,6 @@ module.exports = {
 6879  6645         }
 6880  6646         return result;
 6881  6647       }
 6882    -1       function deepMerge() {
 6883    -1         var result = {};
 6884    -1         function assignValue(val, key) {
 6885    -1           if (typeof result[key] === 'object' && typeof val === 'object') {
 6886    -1             result[key] = deepMerge(result[key], val);
 6887    -1           } else if (typeof val === 'object') {
 6888    -1             result[key] = deepMerge({}, val);
 6889    -1           } else {
 6890    -1             result[key] = val;
 6891    -1           }
 6892    -1         }
 6893    -1         for (var i = 0, l = arguments.length; i < l; i++) {
 6894    -1           forEach(arguments[i], assignValue);
 6895    -1         }
 6896    -1         return result;
 6897    -1       }
 6898  6648       function extend(a, b, thisArg) {
 6899  6649         forEach(b, function assignValue(val, key) {
 6900  6650           if (thisArg && typeof val === 'function') {
@@ -6924,6407 +6674,1272 @@ module.exports = {
 6924  6674         isStandardBrowserEnv: isStandardBrowserEnv,
 6925  6675         forEach: forEach,
 6926  6676         merge: merge,
 6927    -1         deepMerge: deepMerge,
 6928  6677         extend: extend,
 6929  6678         trim: trim
 6930  6679       };
 6931  6680     }, {
 6932    -1       './helpers/bind': 18,
 6933    -1       'is-buffer': 28
   -1  6681       './helpers/bind': 16,
   -1  6682       'is-buffer': 32
 6934  6683     } ],
 6935    -1     28: [ function(_dereq_, module, exports) {
 6936    -1       module.exports = function isBuffer(obj) {
 6937    -1         return obj != null && obj.constructor != null && typeof obj.constructor.isBuffer === 'function' && obj.constructor.isBuffer(obj);
   -1  6684     27: [ function(_dereq_, module, exports) {
   -1  6685       module.exports = {
   -1  6686         CssSelectorParser: _dereq_('./lib/css-selector-parser.js').CssSelectorParser
 6938  6687       };
 6939    -1     }, {} ],
 6940    -1     29: [ function(_dereq_, module, exports) {
 6941    -1       _dereq_('../../modules/es.typed-array.from');
 6942    -1       _dereq_('../../modules/es.typed-array.of');
 6943    -1       _dereq_('../../modules/es.typed-array.copy-within');
 6944    -1       _dereq_('../../modules/es.typed-array.every');
 6945    -1       _dereq_('../../modules/es.typed-array.fill');
 6946    -1       _dereq_('../../modules/es.typed-array.filter');
 6947    -1       _dereq_('../../modules/es.typed-array.find');
 6948    -1       _dereq_('../../modules/es.typed-array.find-index');
 6949    -1       _dereq_('../../modules/es.typed-array.for-each');
 6950    -1       _dereq_('../../modules/es.typed-array.includes');
 6951    -1       _dereq_('../../modules/es.typed-array.index-of');
 6952    -1       _dereq_('../../modules/es.typed-array.join');
 6953    -1       _dereq_('../../modules/es.typed-array.last-index-of');
 6954    -1       _dereq_('../../modules/es.typed-array.map');
 6955    -1       _dereq_('../../modules/es.typed-array.reduce');
 6956    -1       _dereq_('../../modules/es.typed-array.reduce-right');
 6957    -1       _dereq_('../../modules/es.typed-array.reverse');
 6958    -1       _dereq_('../../modules/es.typed-array.set');
 6959    -1       _dereq_('../../modules/es.typed-array.slice');
 6960    -1       _dereq_('../../modules/es.typed-array.some');
 6961    -1       _dereq_('../../modules/es.typed-array.sort');
 6962    -1       _dereq_('../../modules/es.typed-array.subarray');
 6963    -1       _dereq_('../../modules/es.typed-array.to-locale-string');
 6964    -1       _dereq_('../../modules/es.typed-array.to-string');
 6965    -1       _dereq_('../../modules/es.typed-array.iterator');
 6966    -1       _dereq_('../../modules/es.object.to-string');
 6967    -1     }, {
 6968    -1       '../../modules/es.object.to-string': 120,
 6969    -1       '../../modules/es.typed-array.copy-within': 121,
 6970    -1       '../../modules/es.typed-array.every': 122,
 6971    -1       '../../modules/es.typed-array.fill': 123,
 6972    -1       '../../modules/es.typed-array.filter': 124,
 6973    -1       '../../modules/es.typed-array.find': 126,
 6974    -1       '../../modules/es.typed-array.find-index': 125,
 6975    -1       '../../modules/es.typed-array.for-each': 127,
 6976    -1       '../../modules/es.typed-array.from': 128,
 6977    -1       '../../modules/es.typed-array.includes': 129,
 6978    -1       '../../modules/es.typed-array.index-of': 130,
 6979    -1       '../../modules/es.typed-array.iterator': 131,
 6980    -1       '../../modules/es.typed-array.join': 132,
 6981    -1       '../../modules/es.typed-array.last-index-of': 133,
 6982    -1       '../../modules/es.typed-array.map': 134,
 6983    -1       '../../modules/es.typed-array.of': 135,
 6984    -1       '../../modules/es.typed-array.reduce': 137,
 6985    -1       '../../modules/es.typed-array.reduce-right': 136,
 6986    -1       '../../modules/es.typed-array.reverse': 138,
 6987    -1       '../../modules/es.typed-array.set': 139,
 6988    -1       '../../modules/es.typed-array.slice': 140,
 6989    -1       '../../modules/es.typed-array.some': 141,
 6990    -1       '../../modules/es.typed-array.sort': 142,
 6991    -1       '../../modules/es.typed-array.subarray': 143,
 6992    -1       '../../modules/es.typed-array.to-locale-string': 144,
 6993    -1       '../../modules/es.typed-array.to-string': 145
 6994    -1     } ],
 6995    -1     30: [ function(_dereq_, module, exports) {
 6996    -1       _dereq_('../../modules/es.typed-array.uint32-array');
 6997    -1       _dereq_('./methods');
 6998    -1       var global = _dereq_('../../internals/global');
 6999    -1       module.exports = global.Uint32Array;
 7000    -1     }, {
 7001    -1       '../../internals/global': 65,
 7002    -1       '../../modules/es.typed-array.uint32-array': 146,
 7003    -1       './methods': 29
 7004    -1     } ],
 7005    -1     31: [ function(_dereq_, module, exports) {
 7006    -1       _dereq_('../../modules/es.typed-array.reduce');
 7007    -1     }, {
 7008    -1       '../../modules/es.typed-array.reduce': 137
 7009    -1     } ],
 7010    -1     32: [ function(_dereq_, module, exports) {
 7011    -1       _dereq_('../../modules/es.typed-array.some');
 7012    -1     }, {
 7013    -1       '../../modules/es.typed-array.some': 141
 7014    -1     } ],
 7015    -1     33: [ function(_dereq_, module, exports) {
 7016    -1       module.exports = _dereq_('../../es/typed-array/uint32-array');
 7017  6688     }, {
 7018    -1       '../../es/typed-array/uint32-array': 30
   -1  6689       './lib/css-selector-parser.js': 28
 7019  6690     } ],
 7020    -1     34: [ function(_dereq_, module, exports) {
 7021    -1       module.exports = function(it) {
 7022    -1         if (typeof it != 'function') {
 7023    -1           throw TypeError(String(it) + ' is not a function');
   -1  6691     28: [ function(_dereq_, module, exports) {
   -1  6692       function CssSelectorParser() {
   -1  6693         this.pseudos = {};
   -1  6694         this.attrEqualityMods = {};
   -1  6695         this.ruleNestingOperators = {};
   -1  6696         this.substitutesEnabled = false;
   -1  6697       }
   -1  6698       CssSelectorParser.prototype.registerSelectorPseudos = function(name) {
   -1  6699         for (var j = 0, len = arguments.length; j < len; j++) {
   -1  6700           name = arguments[j];
   -1  6701           this.pseudos[name] = 'selector';
 7024  6702         }
 7025    -1         return it;
   -1  6703         return this;
 7026  6704       };
 7027    -1     }, {} ],
 7028    -1     35: [ function(_dereq_, module, exports) {
 7029    -1       var isObject = _dereq_('../internals/is-object');
 7030    -1       module.exports = function(it) {
 7031    -1         if (!isObject(it) && it !== null) {
 7032    -1           throw TypeError('Can\'t set ' + String(it) + ' as a prototype');
   -1  6705       CssSelectorParser.prototype.unregisterSelectorPseudos = function(name) {
   -1  6706         for (var j = 0, len = arguments.length; j < len; j++) {
   -1  6707           name = arguments[j];
   -1  6708           delete this.pseudos[name];
 7033  6709         }
 7034    -1         return it;
 7035    -1       };
 7036    -1     }, {
 7037    -1       '../internals/is-object': 76
 7038    -1     } ],
 7039    -1     36: [ function(_dereq_, module, exports) {
 7040    -1       var wellKnownSymbol = _dereq_('../internals/well-known-symbol');
 7041    -1       var create = _dereq_('../internals/object-create');
 7042    -1       var hide = _dereq_('../internals/hide');
 7043    -1       var UNSCOPABLES = wellKnownSymbol('unscopables');
 7044    -1       var ArrayPrototype = Array.prototype;
 7045    -1       if (ArrayPrototype[UNSCOPABLES] == undefined) {
 7046    -1         hide(ArrayPrototype, UNSCOPABLES, create(null));
 7047    -1       }
 7048    -1       module.exports = function(key) {
 7049    -1         ArrayPrototype[UNSCOPABLES][key] = true;
   -1  6710         return this;
 7050  6711       };
 7051    -1     }, {
 7052    -1       '../internals/hide': 68,
 7053    -1       '../internals/object-create': 82,
 7054    -1       '../internals/well-known-symbol': 118
 7055    -1     } ],
 7056    -1     37: [ function(_dereq_, module, exports) {
 7057    -1       module.exports = function(it, Constructor, name) {
 7058    -1         if (!(it instanceof Constructor)) {
 7059    -1           throw TypeError('Incorrect ' + (name ? name + ' ' : '') + 'invocation');
   -1  6712       CssSelectorParser.prototype.registerNumericPseudos = function(name) {
   -1  6713         for (var j = 0, len = arguments.length; j < len; j++) {
   -1  6714           name = arguments[j];
   -1  6715           this.pseudos[name] = 'numeric';
 7060  6716         }
 7061    -1         return it;
   -1  6717         return this;
 7062  6718       };
 7063    -1     }, {} ],
 7064    -1     38: [ function(_dereq_, module, exports) {
 7065    -1       var isObject = _dereq_('../internals/is-object');
 7066    -1       module.exports = function(it) {
 7067    -1         if (!isObject(it)) {
 7068    -1           throw TypeError(String(it) + ' is not an object');
   -1  6719       CssSelectorParser.prototype.unregisterNumericPseudos = function(name) {
   -1  6720         for (var j = 0, len = arguments.length; j < len; j++) {
   -1  6721           name = arguments[j];
   -1  6722           delete this.pseudos[name];
 7069  6723         }
 7070    -1         return it;
 7071    -1       };
 7072    -1     }, {
 7073    -1       '../internals/is-object': 76
 7074    -1     } ],
 7075    -1     39: [ function(_dereq_, module, exports) {
 7076    -1       'use strict';
 7077    -1       var DESCRIPTORS = _dereq_('../internals/descriptors');
 7078    -1       var global = _dereq_('../internals/global');
 7079    -1       var isObject = _dereq_('../internals/is-object');
 7080    -1       var has = _dereq_('../internals/has');
 7081    -1       var classof = _dereq_('../internals/classof');
 7082    -1       var hide = _dereq_('../internals/hide');
 7083    -1       var redefine = _dereq_('../internals/redefine');
 7084    -1       var defineProperty = _dereq_('../internals/object-define-property').f;
 7085    -1       var getPrototypeOf = _dereq_('../internals/object-get-prototype-of');
 7086    -1       var setPrototypeOf = _dereq_('../internals/object-set-prototype-of');
 7087    -1       var wellKnownSymbol = _dereq_('../internals/well-known-symbol');
 7088    -1       var uid = _dereq_('../internals/uid');
 7089    -1       var DataView = global.DataView;
 7090    -1       var DataViewPrototype = DataView && DataView.prototype;
 7091    -1       var Int8Array = global.Int8Array;
 7092    -1       var Int8ArrayPrototype = Int8Array && Int8Array.prototype;
 7093    -1       var Uint8ClampedArray = global.Uint8ClampedArray;
 7094    -1       var Uint8ClampedArrayPrototype = Uint8ClampedArray && Uint8ClampedArray.prototype;
 7095    -1       var TypedArray = Int8Array && getPrototypeOf(Int8Array);
 7096    -1       var TypedArrayPrototype = Int8ArrayPrototype && getPrototypeOf(Int8ArrayPrototype);
 7097    -1       var ObjectPrototype = Object.prototype;
 7098    -1       var isPrototypeOf = ObjectPrototype.isPrototypeOf;
 7099    -1       var TO_STRING_TAG = wellKnownSymbol('toStringTag');
 7100    -1       var TYPED_ARRAY_TAG = uid('TYPED_ARRAY_TAG');
 7101    -1       var NATIVE_ARRAY_BUFFER = !!(global.ArrayBuffer && DataView);
 7102    -1       var NATIVE_ARRAY_BUFFER_VIEWS = NATIVE_ARRAY_BUFFER && !!setPrototypeOf && classof(global.opera) !== 'Opera';
 7103    -1       var TYPED_ARRAY_TAG_REQIRED = false;
 7104    -1       var NAME;
 7105    -1       var TypedArrayConstructorsList = {
 7106    -1         Int8Array: 1,
 7107    -1         Uint8Array: 1,
 7108    -1         Uint8ClampedArray: 1,
 7109    -1         Int16Array: 2,
 7110    -1         Uint16Array: 2,
 7111    -1         Int32Array: 4,
 7112    -1         Uint32Array: 4,
 7113    -1         Float32Array: 4,
 7114    -1         Float64Array: 8
 7115    -1       };
 7116    -1       var isView = function isView(it) {
 7117    -1         var klass = classof(it);
 7118    -1         return klass === 'DataView' || has(TypedArrayConstructorsList, klass);
 7119    -1       };
 7120    -1       var isTypedArray = function(it) {
 7121    -1         return isObject(it) && has(TypedArrayConstructorsList, classof(it));
   -1  6724         return this;
 7122  6725       };
 7123    -1       var aTypedArray = function(it) {
 7124    -1         if (isTypedArray(it)) {
 7125    -1           return it;
   -1  6726       CssSelectorParser.prototype.registerNestingOperators = function(operator) {
   -1  6727         for (var j = 0, len = arguments.length; j < len; j++) {
   -1  6728           operator = arguments[j];
   -1  6729           this.ruleNestingOperators[operator] = true;
 7126  6730         }
 7127    -1         throw TypeError('Target is not a typed array');
   -1  6731         return this;
 7128  6732       };
 7129    -1       var aTypedArrayConstructor = function(C) {
 7130    -1         if (setPrototypeOf) {
 7131    -1           if (isPrototypeOf.call(TypedArray, C)) {
 7132    -1             return C;
 7133    -1           }
 7134    -1         } else {
 7135    -1           for (var ARRAY in TypedArrayConstructorsList) {
 7136    -1             if (has(TypedArrayConstructorsList, NAME)) {
 7137    -1               var TypedArrayConstructor = global[ARRAY];
 7138    -1               if (TypedArrayConstructor && (C === TypedArrayConstructor || isPrototypeOf.call(TypedArrayConstructor, C))) {
 7139    -1                 return C;
 7140    -1               }
 7141    -1             }
 7142    -1           }
   -1  6733       CssSelectorParser.prototype.unregisterNestingOperators = function(operator) {
   -1  6734         for (var j = 0, len = arguments.length; j < len; j++) {
   -1  6735           operator = arguments[j];
   -1  6736           delete this.ruleNestingOperators[operator];
 7143  6737         }
 7144    -1         throw TypeError('Target is not a typed array constructor');
   -1  6738         return this;
 7145  6739       };
 7146    -1       var exportProto = function(KEY, property, forced) {
 7147    -1         if (!DESCRIPTORS) {
 7148    -1           return;
 7149    -1         }
 7150    -1         if (forced) {
 7151    -1           for (var ARRAY in TypedArrayConstructorsList) {
 7152    -1             var TypedArrayConstructor = global[ARRAY];
 7153    -1             if (TypedArrayConstructor && has(TypedArrayConstructor.prototype, KEY)) {
 7154    -1               delete TypedArrayConstructor.prototype[KEY];
 7155    -1             }
 7156    -1           }
 7157    -1         }
 7158    -1         if (!TypedArrayPrototype[KEY] || forced) {
 7159    -1           redefine(TypedArrayPrototype, KEY, forced ? property : NATIVE_ARRAY_BUFFER_VIEWS && Int8ArrayPrototype[KEY] || property);
   -1  6740       CssSelectorParser.prototype.registerAttrEqualityMods = function(mod) {
   -1  6741         for (var j = 0, len = arguments.length; j < len; j++) {
   -1  6742           mod = arguments[j];
   -1  6743           this.attrEqualityMods[mod] = true;
 7160  6744         }
   -1  6745         return this;
 7161  6746       };
 7162    -1       var exportStatic = function(KEY, property, forced) {
 7163    -1         var ARRAY, TypedArrayConstructor;
 7164    -1         if (!DESCRIPTORS) {
 7165    -1           return;
 7166    -1         }
 7167    -1         if (setPrototypeOf) {
 7168    -1           if (forced) {
 7169    -1             for (ARRAY in TypedArrayConstructorsList) {
 7170    -1               TypedArrayConstructor = global[ARRAY];
 7171    -1               if (TypedArrayConstructor && has(TypedArrayConstructor, KEY)) {
 7172    -1                 delete TypedArrayConstructor[KEY];
 7173    -1               }
 7174    -1             }
 7175    -1           }
 7176    -1           if (!TypedArray[KEY] || forced) {
 7177    -1             try {
 7178    -1               return redefine(TypedArray, KEY, forced ? property : NATIVE_ARRAY_BUFFER_VIEWS && Int8Array[KEY] || property);
 7179    -1             } catch (error) {}
 7180    -1           } else {
 7181    -1             return;
 7182    -1           }
 7183    -1         }
 7184    -1         for (ARRAY in TypedArrayConstructorsList) {
 7185    -1           TypedArrayConstructor = global[ARRAY];
 7186    -1           if (TypedArrayConstructor && (!TypedArrayConstructor[KEY] || forced)) {
 7187    -1             redefine(TypedArrayConstructor, KEY, property);
 7188    -1           }
   -1  6747       CssSelectorParser.prototype.unregisterAttrEqualityMods = function(mod) {
   -1  6748         for (var j = 0, len = arguments.length; j < len; j++) {
   -1  6749           mod = arguments[j];
   -1  6750           delete this.attrEqualityMods[mod];
 7189  6751         }
   -1  6752         return this;
 7190  6753       };
 7191    -1       for (NAME in TypedArrayConstructorsList) {
 7192    -1         if (!global[NAME]) {
 7193    -1           NATIVE_ARRAY_BUFFER_VIEWS = false;
 7194    -1         }
 7195    -1       }
 7196    -1       if (!NATIVE_ARRAY_BUFFER_VIEWS || typeof TypedArray != 'function' || TypedArray === Function.prototype) {
 7197    -1         TypedArray = function TypedArray() {
 7198    -1           throw TypeError('Incorrect invocation');
 7199    -1         };
 7200    -1         if (NATIVE_ARRAY_BUFFER_VIEWS) {
 7201    -1           for (NAME in TypedArrayConstructorsList) {
 7202    -1             if (global[NAME]) {
 7203    -1               setPrototypeOf(global[NAME], TypedArray);
 7204    -1             }
 7205    -1           }
 7206    -1         }
   -1  6754       CssSelectorParser.prototype.enableSubstitutes = function() {
   -1  6755         this.substitutesEnabled = true;
   -1  6756         return this;
   -1  6757       };
   -1  6758       CssSelectorParser.prototype.disableSubstitutes = function() {
   -1  6759         this.substitutesEnabled = false;
   -1  6760         return this;
   -1  6761       };
   -1  6762       function isIdentStart(c) {
   -1  6763         return c >= 'a' && c <= 'z' || c >= 'A' && c <= 'Z' || c === '-' || c === '_';
 7207  6764       }
 7208    -1       if (!NATIVE_ARRAY_BUFFER_VIEWS || !TypedArrayPrototype || TypedArrayPrototype === ObjectPrototype) {
 7209    -1         TypedArrayPrototype = TypedArray.prototype;
 7210    -1         if (NATIVE_ARRAY_BUFFER_VIEWS) {
 7211    -1           for (NAME in TypedArrayConstructorsList) {
 7212    -1             if (global[NAME]) {
 7213    -1               setPrototypeOf(global[NAME].prototype, TypedArrayPrototype);
 7214    -1             }
 7215    -1           }
 7216    -1         }
   -1  6765       function isIdent(c) {
   -1  6766         return c >= 'a' && c <= 'z' || c >= 'A' && c <= 'Z' || c >= '0' && c <= '9' || c === '-' || c === '_';
 7217  6767       }
 7218    -1       if (NATIVE_ARRAY_BUFFER_VIEWS && getPrototypeOf(Uint8ClampedArrayPrototype) !== TypedArrayPrototype) {
 7219    -1         setPrototypeOf(Uint8ClampedArrayPrototype, TypedArrayPrototype);
   -1  6768       function isHex(c) {
   -1  6769         return c >= 'a' && c <= 'f' || c >= 'A' && c <= 'F' || c >= '0' && c <= '9';
 7220  6770       }
 7221    -1       if (DESCRIPTORS && !has(TypedArrayPrototype, TO_STRING_TAG)) {
 7222    -1         TYPED_ARRAY_TAG_REQIRED = true;
 7223    -1         defineProperty(TypedArrayPrototype, TO_STRING_TAG, {
 7224    -1           get: function() {
 7225    -1             return isObject(this) ? this[TYPED_ARRAY_TAG] : undefined;
 7226    -1           }
 7227    -1         });
 7228    -1         for (NAME in TypedArrayConstructorsList) {
 7229    -1           if (global[NAME]) {
 7230    -1             hide(global[NAME], TYPED_ARRAY_TAG, NAME);
 7231    -1           }
 7232    -1         }
   -1  6771       function isDecimal(c) {
   -1  6772         return c >= '0' && c <= '9';
 7233  6773       }
 7234    -1       if (NATIVE_ARRAY_BUFFER && setPrototypeOf && getPrototypeOf(DataViewPrototype) !== ObjectPrototype) {
 7235    -1         setPrototypeOf(DataViewPrototype, ObjectPrototype);
   -1  6774       function isAttrMatchOperator(chr) {
   -1  6775         return chr === '=' || chr === '^' || chr === '$' || chr === '*' || chr === '~';
 7236  6776       }
 7237    -1       module.exports = {
 7238    -1         NATIVE_ARRAY_BUFFER: NATIVE_ARRAY_BUFFER,
 7239    -1         NATIVE_ARRAY_BUFFER_VIEWS: NATIVE_ARRAY_BUFFER_VIEWS,
 7240    -1         TYPED_ARRAY_TAG: TYPED_ARRAY_TAG_REQIRED && TYPED_ARRAY_TAG,
 7241    -1         aTypedArray: aTypedArray,
 7242    -1         aTypedArrayConstructor: aTypedArrayConstructor,
 7243    -1         exportProto: exportProto,
 7244    -1         exportStatic: exportStatic,
 7245    -1         isView: isView,
 7246    -1         isTypedArray: isTypedArray,
 7247    -1         TypedArray: TypedArray,
 7248    -1         TypedArrayPrototype: TypedArrayPrototype
 7249    -1       };
 7250    -1     }, {
 7251    -1       '../internals/classof': 51,
 7252    -1       '../internals/descriptors': 57,
 7253    -1       '../internals/global': 65,
 7254    -1       '../internals/has': 66,
 7255    -1       '../internals/hide': 68,
 7256    -1       '../internals/is-object': 76,
 7257    -1       '../internals/object-define-property': 84,
 7258    -1       '../internals/object-get-prototype-of': 88,
 7259    -1       '../internals/object-set-prototype-of': 92,
 7260    -1       '../internals/redefine': 97,
 7261    -1       '../internals/uid': 117,
 7262    -1       '../internals/well-known-symbol': 118
 7263    -1     } ],
 7264    -1     40: [ function(_dereq_, module, exports) {
 7265    -1       'use strict';
 7266    -1       var global = _dereq_('../internals/global');
 7267    -1       var DESCRIPTORS = _dereq_('../internals/descriptors');
 7268    -1       var NATIVE_ARRAY_BUFFER = _dereq_('../internals/array-buffer-view-core').NATIVE_ARRAY_BUFFER;
 7269    -1       var hide = _dereq_('../internals/hide');
 7270    -1       var redefineAll = _dereq_('../internals/redefine-all');
 7271    -1       var fails = _dereq_('../internals/fails');
 7272    -1       var anInstance = _dereq_('../internals/an-instance');
 7273    -1       var toInteger = _dereq_('../internals/to-integer');
 7274    -1       var toLength = _dereq_('../internals/to-length');
 7275    -1       var toIndex = _dereq_('../internals/to-index');
 7276    -1       var getOwnPropertyNames = _dereq_('../internals/object-get-own-property-names').f;
 7277    -1       var defineProperty = _dereq_('../internals/object-define-property').f;
 7278    -1       var arrayFill = _dereq_('../internals/array-fill');
 7279    -1       var setToStringTag = _dereq_('../internals/set-to-string-tag');
 7280    -1       var InternalStateModule = _dereq_('../internals/internal-state');
 7281    -1       var getInternalState = InternalStateModule.get;
 7282    -1       var setInternalState = InternalStateModule.set;
 7283    -1       var ARRAY_BUFFER = 'ArrayBuffer';
 7284    -1       var DATA_VIEW = 'DataView';
 7285    -1       var PROTOTYPE = 'prototype';
 7286    -1       var WRONG_LENGTH = 'Wrong length';
 7287    -1       var WRONG_INDEX = 'Wrong index';
 7288    -1       var NativeArrayBuffer = global[ARRAY_BUFFER];
 7289    -1       var $ArrayBuffer = NativeArrayBuffer;
 7290    -1       var $DataView = global[DATA_VIEW];
 7291    -1       var Math = global.Math;
 7292    -1       var RangeError = global.RangeError;
 7293    -1       var Infinity = 1 / 0;
 7294    -1       var abs = Math.abs;
 7295    -1       var pow = Math.pow;
 7296    -1       var floor = Math.floor;
 7297    -1       var log = Math.log;
 7298    -1       var LN2 = Math.LN2;
 7299    -1       var packIEEE754 = function(number, mantissaLength, bytes) {
 7300    -1         var buffer = new Array(bytes);
 7301    -1         var exponentLength = bytes * 8 - mantissaLength - 1;
 7302    -1         var eMax = (1 << exponentLength) - 1;
 7303    -1         var eBias = eMax >> 1;
 7304    -1         var rt = mantissaLength === 23 ? pow(2, -24) - pow(2, -77) : 0;
 7305    -1         var sign = number < 0 || number === 0 && 1 / number < 0 ? 1 : 0;
 7306    -1         var index = 0;
 7307    -1         var exponent, mantissa, c;
 7308    -1         number = abs(number);
 7309    -1         if (number != number || number === Infinity) {
 7310    -1           mantissa = number != number ? 1 : 0;
 7311    -1           exponent = eMax;
 7312    -1         } else {
 7313    -1           exponent = floor(log(number) / LN2);
 7314    -1           if (number * (c = pow(2, -exponent)) < 1) {
 7315    -1             exponent--;
 7316    -1             c *= 2;
 7317    -1           }
 7318    -1           if (exponent + eBias >= 1) {
 7319    -1             number += rt / c;
 7320    -1           } else {
 7321    -1             number += rt * pow(2, 1 - eBias);
 7322    -1           }
 7323    -1           if (number * c >= 2) {
 7324    -1             exponent++;
 7325    -1             c /= 2;
 7326    -1           }
 7327    -1           if (exponent + eBias >= eMax) {
 7328    -1             mantissa = 0;
 7329    -1             exponent = eMax;
 7330    -1           } else if (exponent + eBias >= 1) {
 7331    -1             mantissa = (number * c - 1) * pow(2, mantissaLength);
 7332    -1             exponent = exponent + eBias;
 7333    -1           } else {
 7334    -1             mantissa = number * pow(2, eBias - 1) * pow(2, mantissaLength);
 7335    -1             exponent = 0;
 7336    -1           }
 7337    -1         }
 7338    -1         for (;mantissaLength >= 8; buffer[index++] = mantissa & 255, mantissa /= 256, mantissaLength -= 8) {}
 7339    -1         exponent = exponent << mantissaLength | mantissa;
 7340    -1         exponentLength += mantissaLength;
 7341    -1         for (;exponentLength > 0; buffer[index++] = exponent & 255, exponent /= 256, exponentLength -= 8) {}
 7342    -1         buffer[--index] |= sign * 128;
 7343    -1         return buffer;
 7344    -1       };
 7345    -1       var unpackIEEE754 = function(buffer, mantissaLength) {
 7346    -1         var bytes = buffer.length;
 7347    -1         var exponentLength = bytes * 8 - mantissaLength - 1;
 7348    -1         var eMax = (1 << exponentLength) - 1;
 7349    -1         var eBias = eMax >> 1;
 7350    -1         var nBits = exponentLength - 7;
 7351    -1         var index = bytes - 1;
 7352    -1         var sign = buffer[index--];
 7353    -1         var exponent = sign & 127;
 7354    -1         var mantissa;
 7355    -1         sign >>= 7;
 7356    -1         for (;nBits > 0; exponent = exponent * 256 + buffer[index], index--, nBits -= 8) {}
 7357    -1         mantissa = exponent & (1 << -nBits) - 1;
 7358    -1         exponent >>= -nBits;
 7359    -1         nBits += mantissaLength;
 7360    -1         for (;nBits > 0; mantissa = mantissa * 256 + buffer[index], index--, nBits -= 8) {}
 7361    -1         if (exponent === 0) {
 7362    -1           exponent = 1 - eBias;
 7363    -1         } else if (exponent === eMax) {
 7364    -1           return mantissa ? NaN : sign ? -Infinity : Infinity;
 7365    -1         } else {
 7366    -1           mantissa = mantissa + pow(2, mantissaLength);
 7367    -1           exponent = exponent - eBias;
 7368    -1         }
 7369    -1         return (sign ? -1 : 1) * mantissa * pow(2, exponent - mantissaLength);
 7370    -1       };
 7371    -1       var unpackInt32 = function(buffer) {
 7372    -1         return buffer[3] << 24 | buffer[2] << 16 | buffer[1] << 8 | buffer[0];
 7373    -1       };
 7374    -1       var packInt8 = function(number) {
 7375    -1         return [ number & 255 ];
 7376    -1       };
 7377    -1       var packInt16 = function(number) {
 7378    -1         return [ number & 255, number >> 8 & 255 ];
   -1  6777       var identSpecialChars = {
   -1  6778         '!': true,
   -1  6779         '"': true,
   -1  6780         '#': true,
   -1  6781         $: true,
   -1  6782         '%': true,
   -1  6783         '&': true,
   -1  6784         '\'': true,
   -1  6785         '(': true,
   -1  6786         ')': true,
   -1  6787         '*': true,
   -1  6788         '+': true,
   -1  6789         ',': true,
   -1  6790         '.': true,
   -1  6791         '/': true,
   -1  6792         ';': true,
   -1  6793         '<': true,
   -1  6794         '=': true,
   -1  6795         '>': true,
   -1  6796         '?': true,
   -1  6797         '@': true,
   -1  6798         '[': true,
   -1  6799         '\\': true,
   -1  6800         ']': true,
   -1  6801         '^': true,
   -1  6802         '`': true,
   -1  6803         '{': true,
   -1  6804         '|': true,
   -1  6805         '}': true,
   -1  6806         '~': true
 7379  6807       };
 7380    -1       var packInt32 = function(number) {
 7381    -1         return [ number & 255, number >> 8 & 255, number >> 16 & 255, number >> 24 & 255 ];
   -1  6808       var strReplacementsRev = {
   -1  6809         '\n': '\\n',
   -1  6810         '\r': '\\r',
   -1  6811         '\t': '\\t',
   -1  6812         '\f': '\\f',
   -1  6813         '\v': '\\v'
 7382  6814       };
 7383    -1       var packFloat32 = function(number) {
 7384    -1         return packIEEE754(number, 23, 4);
   -1  6815       var singleQuoteEscapeChars = {
   -1  6816         n: '\n',
   -1  6817         r: '\r',
   -1  6818         t: '\t',
   -1  6819         f: '\f',
   -1  6820         '\\': '\\',
   -1  6821         '\'': '\''
 7385  6822       };
 7386    -1       var packFloat64 = function(number) {
 7387    -1         return packIEEE754(number, 52, 8);
   -1  6823       var doubleQuotesEscapeChars = {
   -1  6824         n: '\n',
   -1  6825         r: '\r',
   -1  6826         t: '\t',
   -1  6827         f: '\f',
   -1  6828         '\\': '\\',
   -1  6829         '"': '"'
 7388  6830       };
 7389    -1       var addGetter = function(Constructor, key) {
 7390    -1         defineProperty(Constructor[PROTOTYPE], key, {
 7391    -1           get: function() {
 7392    -1             return getInternalState(this)[key];
   -1  6831       function ParseContext(str, pos, pseudos, attrEqualityMods, ruleNestingOperators, substitutesEnabled) {
   -1  6832         var chr, getIdent, getStr, l, skipWhitespace;
   -1  6833         l = str.length;
   -1  6834         chr = null;
   -1  6835         getStr = function(quote, escapeTable) {
   -1  6836           var esc, hex, result;
   -1  6837           result = '';
   -1  6838           pos++;
   -1  6839           chr = str.charAt(pos);
   -1  6840           while (pos < l) {
   -1  6841             if (chr === quote) {
   -1  6842               pos++;
   -1  6843               return result;
   -1  6844             } else if (chr === '\\') {
   -1  6845               pos++;
   -1  6846               chr = str.charAt(pos);
   -1  6847               if (chr === quote) {
   -1  6848                 result += quote;
   -1  6849               } else if (esc = escapeTable[chr]) {
   -1  6850                 result += esc;
   -1  6851               } else if (isHex(chr)) {
   -1  6852                 hex = chr;
   -1  6853                 pos++;
   -1  6854                 chr = str.charAt(pos);
   -1  6855                 while (isHex(chr)) {
   -1  6856                   hex += chr;
   -1  6857                   pos++;
   -1  6858                   chr = str.charAt(pos);
   -1  6859                 }
   -1  6860                 if (chr === ' ') {
   -1  6861                   pos++;
   -1  6862                   chr = str.charAt(pos);
   -1  6863                 }
   -1  6864                 result += String.fromCharCode(parseInt(hex, 16));
   -1  6865                 continue;
   -1  6866               } else {
   -1  6867                 result += chr;
   -1  6868               }
   -1  6869             } else {
   -1  6870               result += chr;
   -1  6871             }
   -1  6872             pos++;
   -1  6873             chr = str.charAt(pos);
 7393  6874           }
 7394    -1         });
 7395    -1       };
 7396    -1       var get = function(view, count, index, isLittleEndian) {
 7397    -1         var numIndex = +index;
 7398    -1         var intIndex = toIndex(numIndex);
 7399    -1         var store = getInternalState(view);
 7400    -1         if (intIndex + count > store.byteLength) {
 7401    -1           throw RangeError(WRONG_INDEX);
 7402    -1         }
 7403    -1         var bytes = getInternalState(store.buffer).bytes;
 7404    -1         var start = intIndex + store.byteOffset;
 7405    -1         var pack = bytes.slice(start, start + count);
 7406    -1         return isLittleEndian ? pack : pack.reverse();
 7407    -1       };
 7408    -1       var set = function(view, count, index, conversion, value, isLittleEndian) {
 7409    -1         var numIndex = +index;
 7410    -1         var intIndex = toIndex(numIndex);
 7411    -1         var store = getInternalState(view);
 7412    -1         if (intIndex + count > store.byteLength) {
 7413    -1           throw RangeError(WRONG_INDEX);
 7414    -1         }
 7415    -1         var bytes = getInternalState(store.buffer).bytes;
 7416    -1         var start = intIndex + store.byteOffset;
 7417    -1         var pack = conversion(+value);
 7418    -1         for (var i = 0; i < count; i++) {
 7419    -1           bytes[start + i] = pack[isLittleEndian ? i : count - i - 1];
 7420    -1         }
 7421    -1       };
 7422    -1       if (!NATIVE_ARRAY_BUFFER) {
 7423    -1         $ArrayBuffer = function ArrayBuffer(length) {
 7424    -1           anInstance(this, $ArrayBuffer, ARRAY_BUFFER);
 7425    -1           var byteLength = toIndex(length);
 7426    -1           setInternalState(this, {
 7427    -1             bytes: arrayFill.call(new Array(byteLength), 0),
 7428    -1             byteLength: byteLength
 7429    -1           });
 7430    -1           if (!DESCRIPTORS) {
 7431    -1             this.byteLength = byteLength;
   -1  6875           return result;
   -1  6876         };
   -1  6877         getIdent = function() {
   -1  6878           var result = '';
   -1  6879           chr = str.charAt(pos);
   -1  6880           while (pos < l) {
   -1  6881             if (isIdent(chr)) {
   -1  6882               result += chr;
   -1  6883             } else if (chr === '\\') {
   -1  6884               pos++;
   -1  6885               if (pos >= l) {
   -1  6886                 throw Error('Expected symbol but end of file reached.');
   -1  6887               }
   -1  6888               chr = str.charAt(pos);
   -1  6889               if (identSpecialChars[chr]) {
   -1  6890                 result += chr;
   -1  6891               } else if (isHex(chr)) {
   -1  6892                 var hex = chr;
   -1  6893                 pos++;
   -1  6894                 chr = str.charAt(pos);
   -1  6895                 while (isHex(chr)) {
   -1  6896                   hex += chr;
   -1  6897                   pos++;
   -1  6898                   chr = str.charAt(pos);
   -1  6899                 }
   -1  6900                 if (chr === ' ') {
   -1  6901                   pos++;
   -1  6902                   chr = str.charAt(pos);
   -1  6903                 }
   -1  6904                 result += String.fromCharCode(parseInt(hex, 16));
   -1  6905                 continue;
   -1  6906               } else {
   -1  6907                 result += chr;
   -1  6908               }
   -1  6909             } else {
   -1  6910               return result;
   -1  6911             }
   -1  6912             pos++;
   -1  6913             chr = str.charAt(pos);
 7432  6914           }
   -1  6915           return result;
 7433  6916         };
 7434    -1         $DataView = function DataView(buffer, byteOffset, byteLength) {
 7435    -1           anInstance(this, $DataView, DATA_VIEW);
 7436    -1           anInstance(buffer, $ArrayBuffer, DATA_VIEW);
 7437    -1           var bufferLength = getInternalState(buffer).byteLength;
 7438    -1           var offset = toInteger(byteOffset);
 7439    -1           if (offset < 0 || offset > bufferLength) {
 7440    -1             throw RangeError('Wrong offset');
 7441    -1           }
 7442    -1           byteLength = byteLength === undefined ? bufferLength - offset : toLength(byteLength);
 7443    -1           if (offset + byteLength > bufferLength) {
 7444    -1             throw RangeError(WRONG_LENGTH);
 7445    -1           }
 7446    -1           setInternalState(this, {
 7447    -1             buffer: buffer,
 7448    -1             byteLength: byteLength,
 7449    -1             byteOffset: offset
 7450    -1           });
 7451    -1           if (!DESCRIPTORS) {
 7452    -1             this.buffer = buffer;
 7453    -1             this.byteLength = byteLength;
 7454    -1             this.byteOffset = offset;
   -1  6917         skipWhitespace = function() {
   -1  6918           chr = str.charAt(pos);
   -1  6919           var result = false;
   -1  6920           while (chr === ' ' || chr === '\t' || chr === '\n' || chr === '\r' || chr === '\f') {
   -1  6921             result = true;
   -1  6922             pos++;
   -1  6923             chr = str.charAt(pos);
 7455  6924           }
   -1  6925           return result;
 7456  6926         };
 7457    -1         if (DESCRIPTORS) {
 7458    -1           addGetter($ArrayBuffer, 'byteLength');
 7459    -1           addGetter($DataView, 'buffer');
 7460    -1           addGetter($DataView, 'byteLength');
 7461    -1           addGetter($DataView, 'byteOffset');
 7462    -1         }
 7463    -1         redefineAll($DataView[PROTOTYPE], {
 7464    -1           getInt8: function getInt8(byteOffset) {
 7465    -1             return get(this, 1, byteOffset)[0] << 24 >> 24;
 7466    -1           },
 7467    -1           getUint8: function getUint8(byteOffset) {
 7468    -1             return get(this, 1, byteOffset)[0];
 7469    -1           },
 7470    -1           getInt16: function getInt16(byteOffset) {
 7471    -1             var bytes = get(this, 2, byteOffset, arguments.length > 1 ? arguments[1] : undefined);
 7472    -1             return (bytes[1] << 8 | bytes[0]) << 16 >> 16;
 7473    -1           },
 7474    -1           getUint16: function getUint16(byteOffset) {
 7475    -1             var bytes = get(this, 2, byteOffset, arguments.length > 1 ? arguments[1] : undefined);
 7476    -1             return bytes[1] << 8 | bytes[0];
 7477    -1           },
 7478    -1           getInt32: function getInt32(byteOffset) {
 7479    -1             return unpackInt32(get(this, 4, byteOffset, arguments.length > 1 ? arguments[1] : undefined));
 7480    -1           },
 7481    -1           getUint32: function getUint32(byteOffset) {
 7482    -1             return unpackInt32(get(this, 4, byteOffset, arguments.length > 1 ? arguments[1] : undefined)) >>> 0;
 7483    -1           },
 7484    -1           getFloat32: function getFloat32(byteOffset) {
 7485    -1             return unpackIEEE754(get(this, 4, byteOffset, arguments.length > 1 ? arguments[1] : undefined), 23);
 7486    -1           },
 7487    -1           getFloat64: function getFloat64(byteOffset) {
 7488    -1             return unpackIEEE754(get(this, 8, byteOffset, arguments.length > 1 ? arguments[1] : undefined), 52);
 7489    -1           },
 7490    -1           setInt8: function setInt8(byteOffset, value) {
 7491    -1             set(this, 1, byteOffset, packInt8, value);
 7492    -1           },
 7493    -1           setUint8: function setUint8(byteOffset, value) {
 7494    -1             set(this, 1, byteOffset, packInt8, value);
 7495    -1           },
 7496    -1           setInt16: function setInt16(byteOffset, value) {
 7497    -1             set(this, 2, byteOffset, packInt16, value, arguments.length > 2 ? arguments[2] : undefined);
 7498    -1           },
 7499    -1           setUint16: function setUint16(byteOffset, value) {
 7500    -1             set(this, 2, byteOffset, packInt16, value, arguments.length > 2 ? arguments[2] : undefined);
 7501    -1           },
 7502    -1           setInt32: function setInt32(byteOffset, value) {
 7503    -1             set(this, 4, byteOffset, packInt32, value, arguments.length > 2 ? arguments[2] : undefined);
 7504    -1           },
 7505    -1           setUint32: function setUint32(byteOffset, value) {
 7506    -1             set(this, 4, byteOffset, packInt32, value, arguments.length > 2 ? arguments[2] : undefined);
 7507    -1           },
 7508    -1           setFloat32: function setFloat32(byteOffset, value) {
 7509    -1             set(this, 4, byteOffset, packFloat32, value, arguments.length > 2 ? arguments[2] : undefined);
 7510    -1           },
 7511    -1           setFloat64: function setFloat64(byteOffset, value) {
 7512    -1             set(this, 8, byteOffset, packFloat64, value, arguments.length > 2 ? arguments[2] : undefined);
   -1  6927         this.parse = function() {
   -1  6928           var res = this.parseSelector();
   -1  6929           if (pos < l) {
   -1  6930             throw Error('Rule expected but "' + str.charAt(pos) + '" found.');
 7513  6931           }
 7514    -1         });
 7515    -1       } else {
 7516    -1         if (!fails(function() {
 7517    -1           NativeArrayBuffer(1);
 7518    -1         }) || !fails(function() {
 7519    -1           new NativeArrayBuffer(-1);
 7520    -1         }) || fails(function() {
 7521    -1           new NativeArrayBuffer();
 7522    -1           new NativeArrayBuffer(1.5);
 7523    -1           new NativeArrayBuffer(NaN);
 7524    -1           return NativeArrayBuffer.name != ARRAY_BUFFER;
 7525    -1         })) {
 7526    -1           $ArrayBuffer = function ArrayBuffer(length) {
 7527    -1             anInstance(this, $ArrayBuffer);
 7528    -1             return new NativeArrayBuffer(toIndex(length));
 7529    -1           };
 7530    -1           var ArrayBufferPrototype = $ArrayBuffer[PROTOTYPE] = NativeArrayBuffer[PROTOTYPE];
 7531    -1           for (var keys = getOwnPropertyNames(NativeArrayBuffer), j = 0, key; keys.length > j; ) {
 7532    -1             if (!((key = keys[j++]) in $ArrayBuffer)) {
 7533    -1               hide($ArrayBuffer, key, NativeArrayBuffer[key]);
 7534    -1             }
 7535    -1           }
 7536    -1           ArrayBufferPrototype.constructor = $ArrayBuffer;
 7537    -1         }
 7538    -1         var testView = new $DataView(new $ArrayBuffer(2));
 7539    -1         var nativeSetInt8 = $DataView[PROTOTYPE].setInt8;
 7540    -1         testView.setInt8(0, 2147483648);
 7541    -1         testView.setInt8(1, 2147483649);
 7542    -1         if (testView.getInt8(0) || !testView.getInt8(1)) {
 7543    -1           redefineAll($DataView[PROTOTYPE], {
 7544    -1             setInt8: function setInt8(byteOffset, value) {
 7545    -1               nativeSetInt8.call(this, byteOffset, value << 24 >> 24);
 7546    -1             },
 7547    -1             setUint8: function setUint8(byteOffset, value) {
 7548    -1               nativeSetInt8.call(this, byteOffset, value << 24 >> 24);
 7549    -1             }
 7550    -1           }, {
 7551    -1             unsafe: true
 7552    -1           });
 7553    -1         }
 7554    -1       }
 7555    -1       setToStringTag($ArrayBuffer, ARRAY_BUFFER);
 7556    -1       setToStringTag($DataView, DATA_VIEW);
 7557    -1       exports[ARRAY_BUFFER] = $ArrayBuffer;
 7558    -1       exports[DATA_VIEW] = $DataView;
 7559    -1     }, {
 7560    -1       '../internals/an-instance': 37,
 7561    -1       '../internals/array-buffer-view-core': 39,
 7562    -1       '../internals/array-fill': 42,
 7563    -1       '../internals/descriptors': 57,
 7564    -1       '../internals/fails': 61,
 7565    -1       '../internals/global': 65,
 7566    -1       '../internals/hide': 68,
 7567    -1       '../internals/internal-state': 72,
 7568    -1       '../internals/object-define-property': 84,
 7569    -1       '../internals/object-get-own-property-names': 86,
 7570    -1       '../internals/redefine-all': 96,
 7571    -1       '../internals/set-to-string-tag': 101,
 7572    -1       '../internals/to-index': 107,
 7573    -1       '../internals/to-integer': 109,
 7574    -1       '../internals/to-length': 110
 7575    -1     } ],
 7576    -1     41: [ function(_dereq_, module, exports) {
 7577    -1       'use strict';
 7578    -1       var toObject = _dereq_('../internals/to-object');
 7579    -1       var toAbsoluteIndex = _dereq_('../internals/to-absolute-index');
 7580    -1       var toLength = _dereq_('../internals/to-length');
 7581    -1       var min = Math.min;
 7582    -1       module.exports = [].copyWithin || function copyWithin(target, start) {
 7583    -1         var O = toObject(this);
 7584    -1         var len = toLength(O.length);
 7585    -1         var to = toAbsoluteIndex(target, len);
 7586    -1         var from = toAbsoluteIndex(start, len);
 7587    -1         var end = arguments.length > 2 ? arguments[2] : undefined;
 7588    -1         var count = min((end === undefined ? len : toAbsoluteIndex(end, len)) - from, len - to);
 7589    -1         var inc = 1;
 7590    -1         if (from < to && to < from + count) {
 7591    -1           inc = -1;
 7592    -1           from += count - 1;
 7593    -1           to += count - 1;
 7594    -1         }
 7595    -1         while (count-- > 0) {
 7596    -1           if (from in O) {
 7597    -1             O[to] = O[from];
 7598    -1           } else {
 7599    -1             delete O[to];
 7600    -1           }
 7601    -1           to += inc;
 7602    -1           from += inc;
 7603    -1         }
 7604    -1         return O;
 7605    -1       };
 7606    -1     }, {
 7607    -1       '../internals/to-absolute-index': 106,
 7608    -1       '../internals/to-length': 110,
 7609    -1       '../internals/to-object': 111
 7610    -1     } ],
 7611    -1     42: [ function(_dereq_, module, exports) {
 7612    -1       'use strict';
 7613    -1       var toObject = _dereq_('../internals/to-object');
 7614    -1       var toAbsoluteIndex = _dereq_('../internals/to-absolute-index');
 7615    -1       var toLength = _dereq_('../internals/to-length');
 7616    -1       module.exports = function fill(value) {
 7617    -1         var O = toObject(this);
 7618    -1         var length = toLength(O.length);
 7619    -1         var argumentsLength = arguments.length;
 7620    -1         var index = toAbsoluteIndex(argumentsLength > 1 ? arguments[1] : undefined, length);
 7621    -1         var end = argumentsLength > 2 ? arguments[2] : undefined;
 7622    -1         var endPos = end === undefined ? length : toAbsoluteIndex(end, length);
 7623    -1         while (endPos > index) {
 7624    -1           O[index++] = value;
 7625    -1         }
 7626    -1         return O;
 7627    -1       };
 7628    -1     }, {
 7629    -1       '../internals/to-absolute-index': 106,
 7630    -1       '../internals/to-length': 110,
 7631    -1       '../internals/to-object': 111
 7632    -1     } ],
 7633    -1     43: [ function(_dereq_, module, exports) {
 7634    -1       var toIndexedObject = _dereq_('../internals/to-indexed-object');
 7635    -1       var toLength = _dereq_('../internals/to-length');
 7636    -1       var toAbsoluteIndex = _dereq_('../internals/to-absolute-index');
 7637    -1       var createMethod = function(IS_INCLUDES) {
 7638    -1         return function($this, el, fromIndex) {
 7639    -1           var O = toIndexedObject($this);
 7640    -1           var length = toLength(O.length);
 7641    -1           var index = toAbsoluteIndex(fromIndex, length);
 7642    -1           var value;
 7643    -1           if (IS_INCLUDES && el != el) {
 7644    -1             while (length > index) {
 7645    -1               value = O[index++];
 7646    -1               if (value != value) {
 7647    -1                 return true;
 7648    -1               }
 7649    -1             }
 7650    -1           } else {
 7651    -1             for (;length > index; index++) {
 7652    -1               if ((IS_INCLUDES || index in O) && O[index] === el) {
 7653    -1                 return IS_INCLUDES || index || 0;
 7654    -1               }
 7655    -1             }
 7656    -1           }
 7657    -1           return !IS_INCLUDES && -1;
 7658    -1         };
 7659    -1       };
 7660    -1       module.exports = {
 7661    -1         includes: createMethod(true),
 7662    -1         indexOf: createMethod(false)
 7663    -1       };
 7664    -1     }, {
 7665    -1       '../internals/to-absolute-index': 106,
 7666    -1       '../internals/to-indexed-object': 108,
 7667    -1       '../internals/to-length': 110
 7668    -1     } ],
 7669    -1     44: [ function(_dereq_, module, exports) {
 7670    -1       var bind = _dereq_('../internals/bind-context');
 7671    -1       var IndexedObject = _dereq_('../internals/indexed-object');
 7672    -1       var toObject = _dereq_('../internals/to-object');
 7673    -1       var toLength = _dereq_('../internals/to-length');
 7674    -1       var arraySpeciesCreate = _dereq_('../internals/array-species-create');
 7675    -1       var push = [].push;
 7676    -1       var createMethod = function(TYPE) {
 7677    -1         var IS_MAP = TYPE == 1;
 7678    -1         var IS_FILTER = TYPE == 2;
 7679    -1         var IS_SOME = TYPE == 3;
 7680    -1         var IS_EVERY = TYPE == 4;
 7681    -1         var IS_FIND_INDEX = TYPE == 6;
 7682    -1         var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
 7683    -1         return function($this, callbackfn, that, specificCreate) {
 7684    -1           var O = toObject($this);
 7685    -1           var self = IndexedObject(O);
 7686    -1           var boundFunction = bind(callbackfn, that, 3);
 7687    -1           var length = toLength(self.length);
 7688    -1           var index = 0;
 7689    -1           var create = specificCreate || arraySpeciesCreate;
 7690    -1           var target = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;
 7691    -1           var value, result;
 7692    -1           for (;length > index; index++) {
 7693    -1             if (NO_HOLES || index in self) {
 7694    -1               value = self[index];
 7695    -1               result = boundFunction(value, index, O);
 7696    -1               if (TYPE) {
 7697    -1                 if (IS_MAP) {
 7698    -1                   target[index] = result;
 7699    -1                 } else if (result) {
 7700    -1                   switch (TYPE) {
 7701    -1                    case 3:
 7702    -1                     return true;
 7703    -1 
 7704    -1                    case 5:
 7705    -1                     return value;
 7706    -1 
 7707    -1                    case 6:
 7708    -1                     return index;
 7709    -1 
 7710    -1                    case 2:
 7711    -1                     push.call(target, value);
 7712    -1                   }
 7713    -1                 } else if (IS_EVERY) {
 7714    -1                   return false;
 7715    -1                 }
 7716    -1               }
 7717    -1             }
 7718    -1           }
 7719    -1           return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;
   -1  6932           return res;
 7720  6933         };
 7721    -1       };
 7722    -1       module.exports = {
 7723    -1         forEach: createMethod(0),
 7724    -1         map: createMethod(1),
 7725    -1         filter: createMethod(2),
 7726    -1         some: createMethod(3),
 7727    -1         every: createMethod(4),
 7728    -1         find: createMethod(5),
 7729    -1         findIndex: createMethod(6)
 7730    -1       };
 7731    -1     }, {
 7732    -1       '../internals/array-species-create': 47,
 7733    -1       '../internals/bind-context': 48,
 7734    -1       '../internals/indexed-object': 71,
 7735    -1       '../internals/to-length': 110,
 7736    -1       '../internals/to-object': 111
 7737    -1     } ],
 7738    -1     45: [ function(_dereq_, module, exports) {
 7739    -1       'use strict';
 7740    -1       var toIndexedObject = _dereq_('../internals/to-indexed-object');
 7741    -1       var toInteger = _dereq_('../internals/to-integer');
 7742    -1       var toLength = _dereq_('../internals/to-length');
 7743    -1       var sloppyArrayMethod = _dereq_('../internals/sloppy-array-method');
 7744    -1       var min = Math.min;
 7745    -1       var nativeLastIndexOf = [].lastIndexOf;
 7746    -1       var NEGATIVE_ZERO = !!nativeLastIndexOf && 1 / [ 1 ].lastIndexOf(1, -0) < 0;
 7747    -1       var SLOPPY_METHOD = sloppyArrayMethod('lastIndexOf');
 7748    -1       module.exports = NEGATIVE_ZERO || SLOPPY_METHOD ? function lastIndexOf(searchElement) {
 7749    -1         if (NEGATIVE_ZERO) {
 7750    -1           return nativeLastIndexOf.apply(this, arguments) || 0;
 7751    -1         }
 7752    -1         var O = toIndexedObject(this);
 7753    -1         var length = toLength(O.length);
 7754    -1         var index = length - 1;
 7755    -1         if (arguments.length > 1) {
 7756    -1           index = min(index, toInteger(arguments[1]));
 7757    -1         }
 7758    -1         if (index < 0) {
 7759    -1           index = length + index;
 7760    -1         }
 7761    -1         for (;index >= 0; index--) {
 7762    -1           if (index in O && O[index] === searchElement) {
 7763    -1             return index || 0;
 7764    -1           }
 7765    -1         }
 7766    -1         return -1;
 7767    -1       } : nativeLastIndexOf;
 7768    -1     }, {
 7769    -1       '../internals/sloppy-array-method': 104,
 7770    -1       '../internals/to-indexed-object': 108,
 7771    -1       '../internals/to-integer': 109,
 7772    -1       '../internals/to-length': 110
 7773    -1     } ],
 7774    -1     46: [ function(_dereq_, module, exports) {
 7775    -1       var aFunction = _dereq_('../internals/a-function');
 7776    -1       var toObject = _dereq_('../internals/to-object');
 7777    -1       var IndexedObject = _dereq_('../internals/indexed-object');
 7778    -1       var toLength = _dereq_('../internals/to-length');
 7779    -1       var createMethod = function(IS_RIGHT) {
 7780    -1         return function(that, callbackfn, argumentsLength, memo) {
 7781    -1           aFunction(callbackfn);
 7782    -1           var O = toObject(that);
 7783    -1           var self = IndexedObject(O);
 7784    -1           var length = toLength(O.length);
 7785    -1           var index = IS_RIGHT ? length - 1 : 0;
 7786    -1           var i = IS_RIGHT ? -1 : 1;
 7787    -1           if (argumentsLength < 2) {
 7788    -1             while (true) {
 7789    -1               if (index in self) {
 7790    -1                 memo = self[index];
 7791    -1                 index += i;
 7792    -1                 break;
 7793    -1               }
 7794    -1               index += i;
 7795    -1               if (IS_RIGHT ? index < 0 : length <= index) {
 7796    -1                 throw TypeError('Reduce of empty array with no initial value');
 7797    -1               }
   -1  6934         this.parseSelector = function() {
   -1  6935           var res;
   -1  6936           var selector = res = this.parseSingleSelector();
   -1  6937           chr = str.charAt(pos);
   -1  6938           while (chr === ',') {
   -1  6939             pos++;
   -1  6940             skipWhitespace();
   -1  6941             if (res.type !== 'selectors') {
   -1  6942               res = {
   -1  6943                 type: 'selectors',
   -1  6944                 selectors: [ selector ]
   -1  6945               };
 7798  6946             }
 7799    -1           }
 7800    -1           for (;IS_RIGHT ? index >= 0 : length > index; index += i) {
 7801    -1             if (index in self) {
 7802    -1               memo = callbackfn(memo, self[index], index, O);
   -1  6947             selector = this.parseSingleSelector();
   -1  6948             if (!selector) {
   -1  6949               throw Error('Rule expected after ",".');
 7803  6950             }
   -1  6951             res.selectors.push(selector);
 7804  6952           }
 7805    -1           return memo;
 7806    -1         };
 7807    -1       };
 7808    -1       module.exports = {
 7809    -1         left: createMethod(false),
 7810    -1         right: createMethod(true)
 7811    -1       };
 7812    -1     }, {
 7813    -1       '../internals/a-function': 34,
 7814    -1       '../internals/indexed-object': 71,
 7815    -1       '../internals/to-length': 110,
 7816    -1       '../internals/to-object': 111
 7817    -1     } ],
 7818    -1     47: [ function(_dereq_, module, exports) {
 7819    -1       var isObject = _dereq_('../internals/is-object');
 7820    -1       var isArray = _dereq_('../internals/is-array');
 7821    -1       var wellKnownSymbol = _dereq_('../internals/well-known-symbol');
 7822    -1       var SPECIES = wellKnownSymbol('species');
 7823    -1       module.exports = function(originalArray, length) {
 7824    -1         var C;
 7825    -1         if (isArray(originalArray)) {
 7826    -1           C = originalArray.constructor;
 7827    -1           if (typeof C == 'function' && (C === Array || isArray(C.prototype))) {
 7828    -1             C = undefined;
 7829    -1           } else if (isObject(C)) {
 7830    -1             C = C[SPECIES];
 7831    -1             if (C === null) {
 7832    -1               C = undefined;
 7833    -1             }
 7834    -1           }
 7835    -1         }
 7836    -1         return new (C === undefined ? Array : C)(length === 0 ? 0 : length);
 7837    -1       };
 7838    -1     }, {
 7839    -1       '../internals/is-array': 74,
 7840    -1       '../internals/is-object': 76,
 7841    -1       '../internals/well-known-symbol': 118
 7842    -1     } ],
 7843    -1     48: [ function(_dereq_, module, exports) {
 7844    -1       var aFunction = _dereq_('../internals/a-function');
 7845    -1       module.exports = function(fn, that, length) {
 7846    -1         aFunction(fn);
 7847    -1         if (that === undefined) {
 7848    -1           return fn;
 7849    -1         }
 7850    -1         switch (length) {
 7851    -1          case 0:
 7852    -1           return function() {
 7853    -1             return fn.call(that);
 7854    -1           };
 7855    -1 
 7856    -1          case 1:
 7857    -1           return function(a) {
 7858    -1             return fn.call(that, a);
 7859    -1           };
 7860    -1 
 7861    -1          case 2:
 7862    -1           return function(a, b) {
 7863    -1             return fn.call(that, a, b);
 7864    -1           };
 7865    -1 
 7866    -1          case 3:
 7867    -1           return function(a, b, c) {
 7868    -1             return fn.call(that, a, b, c);
 7869    -1           };
 7870    -1         }
 7871    -1         return function() {
 7872    -1           return fn.apply(that, arguments);
 7873    -1         };
 7874    -1       };
 7875    -1     }, {
 7876    -1       '../internals/a-function': 34
 7877    -1     } ],
 7878    -1     49: [ function(_dereq_, module, exports) {
 7879    -1       var wellKnownSymbol = _dereq_('../internals/well-known-symbol');
 7880    -1       var ITERATOR = wellKnownSymbol('iterator');
 7881    -1       var SAFE_CLOSING = false;
 7882    -1       try {
 7883    -1         var called = 0;
 7884    -1         var iteratorWithReturn = {
 7885    -1           next: function() {
 7886    -1             return {
 7887    -1               done: !!called++
 7888    -1             };
 7889    -1           },
 7890    -1           return: function() {
 7891    -1             SAFE_CLOSING = true;
 7892    -1           }
 7893    -1         };
 7894    -1         iteratorWithReturn[ITERATOR] = function() {
 7895    -1           return this;
   -1  6953           return res;
 7896  6954         };
 7897    -1         Array.from(iteratorWithReturn, function() {
 7898    -1           throw 2;
 7899    -1         });
 7900    -1       } catch (error) {}
 7901    -1       module.exports = function(exec, SKIP_CLOSING) {
 7902    -1         if (!SKIP_CLOSING && !SAFE_CLOSING) {
 7903    -1           return false;
 7904    -1         }
 7905    -1         var ITERATION_SUPPORT = false;
 7906    -1         try {
 7907    -1           var object = {};
 7908    -1           object[ITERATOR] = function() {
 7909    -1             return {
 7910    -1               next: function() {
 7911    -1                 return {
 7912    -1                   done: ITERATION_SUPPORT = true
 7913    -1                 };
 7914    -1               }
 7915    -1             };
   -1  6955         this.parseSingleSelector = function() {
   -1  6956           skipWhitespace();
   -1  6957           var selector = {
   -1  6958             type: 'ruleSet'
 7916  6959           };
 7917    -1           exec(object);
 7918    -1         } catch (error) {}
 7919    -1         return ITERATION_SUPPORT;
 7920    -1       };
 7921    -1     }, {
 7922    -1       '../internals/well-known-symbol': 118
 7923    -1     } ],
 7924    -1     50: [ function(_dereq_, module, exports) {
 7925    -1       var toString = {}.toString;
 7926    -1       module.exports = function(it) {
 7927    -1         return toString.call(it).slice(8, -1);
 7928    -1       };
 7929    -1     }, {} ],
 7930    -1     51: [ function(_dereq_, module, exports) {
 7931    -1       var classofRaw = _dereq_('../internals/classof-raw');
 7932    -1       var wellKnownSymbol = _dereq_('../internals/well-known-symbol');
 7933    -1       var TO_STRING_TAG = wellKnownSymbol('toStringTag');
 7934    -1       var CORRECT_ARGUMENTS = classofRaw(function() {
 7935    -1         return arguments;
 7936    -1       }()) == 'Arguments';
 7937    -1       var tryGet = function(it, key) {
 7938    -1         try {
 7939    -1           return it[key];
 7940    -1         } catch (error) {}
 7941    -1       };
 7942    -1       module.exports = function(it) {
 7943    -1         var O, tag, result;
 7944    -1         return it === undefined ? 'Undefined' : it === null ? 'Null' : typeof (tag = tryGet(O = Object(it), TO_STRING_TAG)) == 'string' ? tag : CORRECT_ARGUMENTS ? classofRaw(O) : (result = classofRaw(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : result;
 7945    -1       };
 7946    -1     }, {
 7947    -1       '../internals/classof-raw': 50,
 7948    -1       '../internals/well-known-symbol': 118
 7949    -1     } ],
 7950    -1     52: [ function(_dereq_, module, exports) {
 7951    -1       var has = _dereq_('../internals/has');
 7952    -1       var ownKeys = _dereq_('../internals/own-keys');
 7953    -1       var getOwnPropertyDescriptorModule = _dereq_('../internals/object-get-own-property-descriptor');
 7954    -1       var definePropertyModule = _dereq_('../internals/object-define-property');
 7955    -1       module.exports = function(target, source) {
 7956    -1         var keys = ownKeys(source);
 7957    -1         var defineProperty = definePropertyModule.f;
 7958    -1         var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;
 7959    -1         for (var i = 0; i < keys.length; i++) {
 7960    -1           var key = keys[i];
 7961    -1           if (!has(target, key)) {
 7962    -1             defineProperty(target, key, getOwnPropertyDescriptor(source, key));
 7963    -1           }
 7964    -1         }
 7965    -1       };
 7966    -1     }, {
 7967    -1       '../internals/has': 66,
 7968    -1       '../internals/object-define-property': 84,
 7969    -1       '../internals/object-get-own-property-descriptor': 85,
 7970    -1       '../internals/own-keys': 94
 7971    -1     } ],
 7972    -1     53: [ function(_dereq_, module, exports) {
 7973    -1       var fails = _dereq_('../internals/fails');
 7974    -1       module.exports = !fails(function() {
 7975    -1         function F() {}
 7976    -1         F.prototype.constructor = null;
 7977    -1         return Object.getPrototypeOf(new F()) !== F.prototype;
 7978    -1       });
 7979    -1     }, {
 7980    -1       '../internals/fails': 61
 7981    -1     } ],
 7982    -1     54: [ function(_dereq_, module, exports) {
 7983    -1       'use strict';
 7984    -1       var IteratorPrototype = _dereq_('../internals/iterators-core').IteratorPrototype;
 7985    -1       var create = _dereq_('../internals/object-create');
 7986    -1       var createPropertyDescriptor = _dereq_('../internals/create-property-descriptor');
 7987    -1       var setToStringTag = _dereq_('../internals/set-to-string-tag');
 7988    -1       var Iterators = _dereq_('../internals/iterators');
 7989    -1       var returnThis = function() {
 7990    -1         return this;
 7991    -1       };
 7992    -1       module.exports = function(IteratorConstructor, NAME, next) {
 7993    -1         var TO_STRING_TAG = NAME + ' Iterator';
 7994    -1         IteratorConstructor.prototype = create(IteratorPrototype, {
 7995    -1           next: createPropertyDescriptor(1, next)
 7996    -1         });
 7997    -1         setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);
 7998    -1         Iterators[TO_STRING_TAG] = returnThis;
 7999    -1         return IteratorConstructor;
 8000    -1       };
 8001    -1     }, {
 8002    -1       '../internals/create-property-descriptor': 55,
 8003    -1       '../internals/iterators': 79,
 8004    -1       '../internals/iterators-core': 78,
 8005    -1       '../internals/object-create': 82,
 8006    -1       '../internals/set-to-string-tag': 101
 8007    -1     } ],
 8008    -1     55: [ function(_dereq_, module, exports) {
 8009    -1       module.exports = function(bitmap, value) {
 8010    -1         return {
 8011    -1           enumerable: !(bitmap & 1),
 8012    -1           configurable: !(bitmap & 2),
 8013    -1           writable: !(bitmap & 4),
 8014    -1           value: value
 8015    -1         };
 8016    -1       };
 8017    -1     }, {} ],
 8018    -1     56: [ function(_dereq_, module, exports) {
 8019    -1       'use strict';
 8020    -1       var $ = _dereq_('../internals/export');
 8021    -1       var createIteratorConstructor = _dereq_('../internals/create-iterator-constructor');
 8022    -1       var getPrototypeOf = _dereq_('../internals/object-get-prototype-of');
 8023    -1       var setPrototypeOf = _dereq_('../internals/object-set-prototype-of');
 8024    -1       var setToStringTag = _dereq_('../internals/set-to-string-tag');
 8025    -1       var hide = _dereq_('../internals/hide');
 8026    -1       var redefine = _dereq_('../internals/redefine');
 8027    -1       var wellKnownSymbol = _dereq_('../internals/well-known-symbol');
 8028    -1       var IS_PURE = _dereq_('../internals/is-pure');
 8029    -1       var Iterators = _dereq_('../internals/iterators');
 8030    -1       var IteratorsCore = _dereq_('../internals/iterators-core');
 8031    -1       var IteratorPrototype = IteratorsCore.IteratorPrototype;
 8032    -1       var BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;
 8033    -1       var ITERATOR = wellKnownSymbol('iterator');
 8034    -1       var KEYS = 'keys';
 8035    -1       var VALUES = 'values';
 8036    -1       var ENTRIES = 'entries';
 8037    -1       var returnThis = function() {
 8038    -1         return this;
 8039    -1       };
 8040    -1       module.exports = function(Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {
 8041    -1         createIteratorConstructor(IteratorConstructor, NAME, next);
 8042    -1         var getIterationMethod = function(KIND) {
 8043    -1           if (KIND === DEFAULT && defaultIterator) {
 8044    -1             return defaultIterator;
 8045    -1           }
 8046    -1           if (!BUGGY_SAFARI_ITERATORS && KIND in IterablePrototype) {
 8047    -1             return IterablePrototype[KIND];
 8048    -1           }
 8049    -1           switch (KIND) {
 8050    -1            case KEYS:
 8051    -1             return function keys() {
 8052    -1               return new IteratorConstructor(this, KIND);
 8053    -1             };
 8054    -1 
 8055    -1            case VALUES:
 8056    -1             return function values() {
 8057    -1               return new IteratorConstructor(this, KIND);
 8058    -1             };
 8059    -1 
 8060    -1            case ENTRIES:
 8061    -1             return function entries() {
 8062    -1               return new IteratorConstructor(this, KIND);
 8063    -1             };
   -1  6960           var rule = this.parseRule();
   -1  6961           if (!rule) {
   -1  6962             return null;
 8064  6963           }
 8065    -1           return function() {
 8066    -1             return new IteratorConstructor(this);
 8067    -1           };
 8068    -1         };
 8069    -1         var TO_STRING_TAG = NAME + ' Iterator';
 8070    -1         var INCORRECT_VALUES_NAME = false;
 8071    -1         var IterablePrototype = Iterable.prototype;
 8072    -1         var nativeIterator = IterablePrototype[ITERATOR] || IterablePrototype['@@iterator'] || DEFAULT && IterablePrototype[DEFAULT];
 8073    -1         var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);
 8074    -1         var anyNativeIterator = NAME == 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;
 8075    -1         var CurrentIteratorPrototype, methods, KEY;
 8076    -1         if (anyNativeIterator) {
 8077    -1           CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));
 8078    -1           if (IteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {
 8079    -1             if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {
 8080    -1               if (setPrototypeOf) {
 8081    -1                 setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);
 8082    -1               } else if (typeof CurrentIteratorPrototype[ITERATOR] != 'function') {
 8083    -1                 hide(CurrentIteratorPrototype, ITERATOR, returnThis);
 8084    -1               }
 8085    -1             }
 8086    -1             setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);
 8087    -1             if (IS_PURE) {
 8088    -1               Iterators[TO_STRING_TAG] = returnThis;
   -1  6964           var currentRule = selector;
   -1  6965           while (rule) {
   -1  6966             rule.type = 'rule';
   -1  6967             currentRule.rule = rule;
   -1  6968             currentRule = rule;
   -1  6969             skipWhitespace();
   -1  6970             chr = str.charAt(pos);
   -1  6971             if (pos >= l || chr === ',' || chr === ')') {
   -1  6972               break;
 8089  6973             }
 8090    -1           }
 8091    -1         }
 8092    -1         if (DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) {
 8093    -1           INCORRECT_VALUES_NAME = true;
 8094    -1           defaultIterator = function values() {
 8095    -1             return nativeIterator.call(this);
 8096    -1           };
 8097    -1         }
 8098    -1         if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {
 8099    -1           hide(IterablePrototype, ITERATOR, defaultIterator);
 8100    -1         }
 8101    -1         Iterators[NAME] = defaultIterator;
 8102    -1         if (DEFAULT) {
 8103    -1           methods = {
 8104    -1             values: getIterationMethod(VALUES),
 8105    -1             keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),
 8106    -1             entries: getIterationMethod(ENTRIES)
 8107    -1           };
 8108    -1           if (FORCED) {
 8109    -1             for (KEY in methods) {
 8110    -1               if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {
 8111    -1                 redefine(IterablePrototype, KEY, methods[KEY]);
   -1  6974             if (ruleNestingOperators[chr]) {
   -1  6975               var op = chr;
   -1  6976               pos++;
   -1  6977               skipWhitespace();
   -1  6978               rule = this.parseRule();
   -1  6979               if (!rule) {
   -1  6980                 throw Error('Rule expected after "' + op + '".');
 8112  6981               }
 8113    -1             }
 8114    -1           } else {
 8115    -1             $({
 8116    -1               target: NAME,
 8117    -1               proto: true,
 8118    -1               forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME
 8119    -1             }, methods);
 8120    -1           }
 8121    -1         }
 8122    -1         return methods;
 8123    -1       };
 8124    -1     }, {
 8125    -1       '../internals/create-iterator-constructor': 54,
 8126    -1       '../internals/export': 60,
 8127    -1       '../internals/hide': 68,
 8128    -1       '../internals/is-pure': 77,
 8129    -1       '../internals/iterators': 79,
 8130    -1       '../internals/iterators-core': 78,
 8131    -1       '../internals/object-get-prototype-of': 88,
 8132    -1       '../internals/object-set-prototype-of': 92,
 8133    -1       '../internals/redefine': 97,
 8134    -1       '../internals/set-to-string-tag': 101,
 8135    -1       '../internals/well-known-symbol': 118
 8136    -1     } ],
 8137    -1     57: [ function(_dereq_, module, exports) {
 8138    -1       var fails = _dereq_('../internals/fails');
 8139    -1       module.exports = !fails(function() {
 8140    -1         return Object.defineProperty({}, 'a', {
 8141    -1           get: function() {
 8142    -1             return 7;
 8143    -1           }
 8144    -1         }).a != 7;
 8145    -1       });
 8146    -1     }, {
 8147    -1       '../internals/fails': 61
 8148    -1     } ],
 8149    -1     58: [ function(_dereq_, module, exports) {
 8150    -1       var global = _dereq_('../internals/global');
 8151    -1       var isObject = _dereq_('../internals/is-object');
 8152    -1       var document = global.document;
 8153    -1       var EXISTS = isObject(document) && isObject(document.createElement);
 8154    -1       module.exports = function(it) {
 8155    -1         return EXISTS ? document.createElement(it) : {};
 8156    -1       };
 8157    -1     }, {
 8158    -1       '../internals/global': 65,
 8159    -1       '../internals/is-object': 76
 8160    -1     } ],
 8161    -1     59: [ function(_dereq_, module, exports) {
 8162    -1       module.exports = [ 'constructor', 'hasOwnProperty', 'isPrototypeOf', 'propertyIsEnumerable', 'toLocaleString', 'toString', 'valueOf' ];
 8163    -1     }, {} ],
 8164    -1     60: [ function(_dereq_, module, exports) {
 8165    -1       var global = _dereq_('../internals/global');
 8166    -1       var getOwnPropertyDescriptor = _dereq_('../internals/object-get-own-property-descriptor').f;
 8167    -1       var hide = _dereq_('../internals/hide');
 8168    -1       var redefine = _dereq_('../internals/redefine');
 8169    -1       var setGlobal = _dereq_('../internals/set-global');
 8170    -1       var copyConstructorProperties = _dereq_('../internals/copy-constructor-properties');
 8171    -1       var isForced = _dereq_('../internals/is-forced');
 8172    -1       module.exports = function(options, source) {
 8173    -1         var TARGET = options.target;
 8174    -1         var GLOBAL = options.global;
 8175    -1         var STATIC = options.stat;
 8176    -1         var FORCED, target, key, targetProperty, sourceProperty, descriptor;
 8177    -1         if (GLOBAL) {
 8178    -1           target = global;
 8179    -1         } else if (STATIC) {
 8180    -1           target = global[TARGET] || setGlobal(TARGET, {});
 8181    -1         } else {
 8182    -1           target = (global[TARGET] || {}).prototype;
 8183    -1         }
 8184    -1         if (target) {
 8185    -1           for (key in source) {
 8186    -1             sourceProperty = source[key];
 8187    -1             if (options.noTargetGet) {
 8188    -1               descriptor = getOwnPropertyDescriptor(target, key);
 8189    -1               targetProperty = descriptor && descriptor.value;
   -1  6982               rule.nestingOperator = op;
 8190  6983             } else {
 8191    -1               targetProperty = target[key];
 8192    -1             }
 8193    -1             FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);
 8194    -1             if (!FORCED && targetProperty !== undefined) {
 8195    -1               if (typeof sourceProperty === typeof targetProperty) {
 8196    -1                 continue;
   -1  6984               rule = this.parseRule();
   -1  6985               if (rule) {
   -1  6986                 rule.nestingOperator = null;
 8197  6987               }
 8198    -1               copyConstructorProperties(sourceProperty, targetProperty);
 8199    -1             }
 8200    -1             if (options.sham || targetProperty && targetProperty.sham) {
 8201    -1               hide(sourceProperty, 'sham', true);
 8202  6988             }
 8203    -1             redefine(target, key, sourceProperty, options);
 8204    -1           }
 8205    -1         }
 8206    -1       };
 8207    -1     }, {
 8208    -1       '../internals/copy-constructor-properties': 52,
 8209    -1       '../internals/global': 65,
 8210    -1       '../internals/hide': 68,
 8211    -1       '../internals/is-forced': 75,
 8212    -1       '../internals/object-get-own-property-descriptor': 85,
 8213    -1       '../internals/redefine': 97,
 8214    -1       '../internals/set-global': 99
 8215    -1     } ],
 8216    -1     61: [ function(_dereq_, module, exports) {
 8217    -1       module.exports = function(exec) {
 8218    -1         try {
 8219    -1           return !!exec();
 8220    -1         } catch (error) {
 8221    -1           return true;
 8222    -1         }
 8223    -1       };
 8224    -1     }, {} ],
 8225    -1     62: [ function(_dereq_, module, exports) {
 8226    -1       var shared = _dereq_('../internals/shared');
 8227    -1       module.exports = shared('native-function-to-string', Function.toString);
 8228    -1     }, {
 8229    -1       '../internals/shared': 103
 8230    -1     } ],
 8231    -1     63: [ function(_dereq_, module, exports) {
 8232    -1       var path = _dereq_('../internals/path');
 8233    -1       var global = _dereq_('../internals/global');
 8234    -1       var aFunction = function(variable) {
 8235    -1         return typeof variable == 'function' ? variable : undefined;
 8236    -1       };
 8237    -1       module.exports = function(namespace, method) {
 8238    -1         return arguments.length < 2 ? aFunction(path[namespace]) || aFunction(global[namespace]) : path[namespace] && path[namespace][method] || global[namespace] && global[namespace][method];
 8239    -1       };
 8240    -1     }, {
 8241    -1       '../internals/global': 65,
 8242    -1       '../internals/path': 95
 8243    -1     } ],
 8244    -1     64: [ function(_dereq_, module, exports) {
 8245    -1       var classof = _dereq_('../internals/classof');
 8246    -1       var Iterators = _dereq_('../internals/iterators');
 8247    -1       var wellKnownSymbol = _dereq_('../internals/well-known-symbol');
 8248    -1       var ITERATOR = wellKnownSymbol('iterator');
 8249    -1       module.exports = function(it) {
 8250    -1         if (it != undefined) {
 8251    -1           return it[ITERATOR] || it['@@iterator'] || Iterators[classof(it)];
 8252    -1         }
 8253    -1       };
 8254    -1     }, {
 8255    -1       '../internals/classof': 51,
 8256    -1       '../internals/iterators': 79,
 8257    -1       '../internals/well-known-symbol': 118
 8258    -1     } ],
 8259    -1     65: [ function(_dereq_, module, exports) {
 8260    -1       (function(global) {
 8261    -1         var O = 'object';
 8262    -1         var check = function(it) {
 8263    -1           return it && it.Math == Math && it;
 8264    -1         };
 8265    -1         module.exports = check(typeof globalThis == O && globalThis) || check(typeof window == O && window) || check(typeof self == O && self) || check(typeof global == O && global) || Function('return this')();
 8266    -1       }).call(this, typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : typeof window !== 'undefined' ? window : {});
 8267    -1     }, {} ],
 8268    -1     66: [ function(_dereq_, module, exports) {
 8269    -1       var hasOwnProperty = {}.hasOwnProperty;
 8270    -1       module.exports = function(it, key) {
 8271    -1         return hasOwnProperty.call(it, key);
 8272    -1       };
 8273    -1     }, {} ],
 8274    -1     67: [ function(_dereq_, module, exports) {
 8275    -1       module.exports = {};
 8276    -1     }, {} ],
 8277    -1     68: [ function(_dereq_, module, exports) {
 8278    -1       var DESCRIPTORS = _dereq_('../internals/descriptors');
 8279    -1       var definePropertyModule = _dereq_('../internals/object-define-property');
 8280    -1       var createPropertyDescriptor = _dereq_('../internals/create-property-descriptor');
 8281    -1       module.exports = DESCRIPTORS ? function(object, key, value) {
 8282    -1         return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));
 8283    -1       } : function(object, key, value) {
 8284    -1         object[key] = value;
 8285    -1         return object;
 8286    -1       };
 8287    -1     }, {
 8288    -1       '../internals/create-property-descriptor': 55,
 8289    -1       '../internals/descriptors': 57,
 8290    -1       '../internals/object-define-property': 84
 8291    -1     } ],
 8292    -1     69: [ function(_dereq_, module, exports) {
 8293    -1       var getBuiltIn = _dereq_('../internals/get-built-in');
 8294    -1       module.exports = getBuiltIn('document', 'documentElement');
 8295    -1     }, {
 8296    -1       '../internals/get-built-in': 63
 8297    -1     } ],
 8298    -1     70: [ function(_dereq_, module, exports) {
 8299    -1       var DESCRIPTORS = _dereq_('../internals/descriptors');
 8300    -1       var fails = _dereq_('../internals/fails');
 8301    -1       var createElement = _dereq_('../internals/document-create-element');
 8302    -1       module.exports = !DESCRIPTORS && !fails(function() {
 8303    -1         return Object.defineProperty(createElement('div'), 'a', {
 8304    -1           get: function() {
 8305    -1             return 7;
 8306    -1           }
 8307    -1         }).a != 7;
 8308    -1       });
 8309    -1     }, {
 8310    -1       '../internals/descriptors': 57,
 8311    -1       '../internals/document-create-element': 58,
 8312    -1       '../internals/fails': 61
 8313    -1     } ],
 8314    -1     71: [ function(_dereq_, module, exports) {
 8315    -1       var fails = _dereq_('../internals/fails');
 8316    -1       var classof = _dereq_('../internals/classof-raw');
 8317    -1       var split = ''.split;
 8318    -1       module.exports = fails(function() {
 8319    -1         return !Object('z').propertyIsEnumerable(0);
 8320    -1       }) ? function(it) {
 8321    -1         return classof(it) == 'String' ? split.call(it, '') : Object(it);
 8322    -1       } : Object;
 8323    -1     }, {
 8324    -1       '../internals/classof-raw': 50,
 8325    -1       '../internals/fails': 61
 8326    -1     } ],
 8327    -1     72: [ function(_dereq_, module, exports) {
 8328    -1       var NATIVE_WEAK_MAP = _dereq_('../internals/native-weak-map');
 8329    -1       var global = _dereq_('../internals/global');
 8330    -1       var isObject = _dereq_('../internals/is-object');
 8331    -1       var hide = _dereq_('../internals/hide');
 8332    -1       var objectHas = _dereq_('../internals/has');
 8333    -1       var sharedKey = _dereq_('../internals/shared-key');
 8334    -1       var hiddenKeys = _dereq_('../internals/hidden-keys');
 8335    -1       var WeakMap = global.WeakMap;
 8336    -1       var set, get, has;
 8337    -1       var enforce = function(it) {
 8338    -1         return has(it) ? get(it) : set(it, {});
 8339    -1       };
 8340    -1       var getterFor = function(TYPE) {
 8341    -1         return function(it) {
 8342    -1           var state;
 8343    -1           if (!isObject(it) || (state = get(it)).type !== TYPE) {
 8344    -1             throw TypeError('Incompatible receiver, ' + TYPE + ' required');
 8345  6989           }
 8346    -1           return state;
 8347    -1         };
 8348    -1       };
 8349    -1       if (NATIVE_WEAK_MAP) {
 8350    -1         var store = new WeakMap();
 8351    -1         var wmget = store.get;
 8352    -1         var wmhas = store.has;
 8353    -1         var wmset = store.set;
 8354    -1         set = function(it, metadata) {
 8355    -1           wmset.call(store, it, metadata);
 8356    -1           return metadata;
 8357    -1         };
 8358    -1         get = function(it) {
 8359    -1           return wmget.call(store, it) || {};
 8360    -1         };
 8361    -1         has = function(it) {
 8362    -1           return wmhas.call(store, it);
 8363    -1         };
 8364    -1       } else {
 8365    -1         var STATE = sharedKey('state');
 8366    -1         hiddenKeys[STATE] = true;
 8367    -1         set = function(it, metadata) {
 8368    -1           hide(it, STATE, metadata);
 8369    -1           return metadata;
 8370    -1         };
 8371    -1         get = function(it) {
 8372    -1           return objectHas(it, STATE) ? it[STATE] : {};
 8373    -1         };
 8374    -1         has = function(it) {
 8375    -1           return objectHas(it, STATE);
   -1  6990           return selector;
 8376  6991         };
 8377    -1       }
 8378    -1       module.exports = {
 8379    -1         set: set,
 8380    -1         get: get,
 8381    -1         has: has,
 8382    -1         enforce: enforce,
 8383    -1         getterFor: getterFor
 8384    -1       };
 8385    -1     }, {
 8386    -1       '../internals/global': 65,
 8387    -1       '../internals/has': 66,
 8388    -1       '../internals/hidden-keys': 67,
 8389    -1       '../internals/hide': 68,
 8390    -1       '../internals/is-object': 76,
 8391    -1       '../internals/native-weak-map': 81,
 8392    -1       '../internals/shared-key': 102
 8393    -1     } ],
 8394    -1     73: [ function(_dereq_, module, exports) {
 8395    -1       var wellKnownSymbol = _dereq_('../internals/well-known-symbol');
 8396    -1       var Iterators = _dereq_('../internals/iterators');
 8397    -1       var ITERATOR = wellKnownSymbol('iterator');
 8398    -1       var ArrayPrototype = Array.prototype;
 8399    -1       module.exports = function(it) {
 8400    -1         return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);
 8401    -1       };
 8402    -1     }, {
 8403    -1       '../internals/iterators': 79,
 8404    -1       '../internals/well-known-symbol': 118
 8405    -1     } ],
 8406    -1     74: [ function(_dereq_, module, exports) {
 8407    -1       var classof = _dereq_('../internals/classof-raw');
 8408    -1       module.exports = Array.isArray || function isArray(arg) {
 8409    -1         return classof(arg) == 'Array';
 8410    -1       };
 8411    -1     }, {
 8412    -1       '../internals/classof-raw': 50
 8413    -1     } ],
 8414    -1     75: [ function(_dereq_, module, exports) {
 8415    -1       var fails = _dereq_('../internals/fails');
 8416    -1       var replacement = /#|\.prototype\./;
 8417    -1       var isForced = function(feature, detection) {
 8418    -1         var value = data[normalize(feature)];
 8419    -1         return value == POLYFILL ? true : value == NATIVE ? false : typeof detection == 'function' ? fails(detection) : !!detection;
 8420    -1       };
 8421    -1       var normalize = isForced.normalize = function(string) {
 8422    -1         return String(string).replace(replacement, '.').toLowerCase();
 8423    -1       };
 8424    -1       var data = isForced.data = {};
 8425    -1       var NATIVE = isForced.NATIVE = 'N';
 8426    -1       var POLYFILL = isForced.POLYFILL = 'P';
 8427    -1       module.exports = isForced;
 8428    -1     }, {
 8429    -1       '../internals/fails': 61
 8430    -1     } ],
 8431    -1     76: [ function(_dereq_, module, exports) {
 8432    -1       module.exports = function(it) {
 8433    -1         return typeof it === 'object' ? it !== null : typeof it === 'function';
 8434    -1       };
 8435    -1     }, {} ],
 8436    -1     77: [ function(_dereq_, module, exports) {
 8437    -1       module.exports = false;
 8438    -1     }, {} ],
 8439    -1     78: [ function(_dereq_, module, exports) {
 8440    -1       'use strict';
 8441    -1       var getPrototypeOf = _dereq_('../internals/object-get-prototype-of');
 8442    -1       var hide = _dereq_('../internals/hide');
 8443    -1       var has = _dereq_('../internals/has');
 8444    -1       var wellKnownSymbol = _dereq_('../internals/well-known-symbol');
 8445    -1       var IS_PURE = _dereq_('../internals/is-pure');
 8446    -1       var ITERATOR = wellKnownSymbol('iterator');
 8447    -1       var BUGGY_SAFARI_ITERATORS = false;
 8448    -1       var returnThis = function() {
 8449    -1         return this;
 8450    -1       };
 8451    -1       var IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;
 8452    -1       if ([].keys) {
 8453    -1         arrayIterator = [].keys();
 8454    -1         if (!('next' in arrayIterator)) {
 8455    -1           BUGGY_SAFARI_ITERATORS = true;
 8456    -1         } else {
 8457    -1           PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));
 8458    -1           if (PrototypeOfArrayIteratorPrototype !== Object.prototype) {
 8459    -1             IteratorPrototype = PrototypeOfArrayIteratorPrototype;
 8460    -1           }
 8461    -1         }
 8462    -1       }
 8463    -1       if (IteratorPrototype == undefined) {
 8464    -1         IteratorPrototype = {};
 8465    -1       }
 8466    -1       if (!IS_PURE && !has(IteratorPrototype, ITERATOR)) {
 8467    -1         hide(IteratorPrototype, ITERATOR, returnThis);
 8468    -1       }
 8469    -1       module.exports = {
 8470    -1         IteratorPrototype: IteratorPrototype,
 8471    -1         BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS
 8472    -1       };
 8473    -1     }, {
 8474    -1       '../internals/has': 66,
 8475    -1       '../internals/hide': 68,
 8476    -1       '../internals/is-pure': 77,
 8477    -1       '../internals/object-get-prototype-of': 88,
 8478    -1       '../internals/well-known-symbol': 118
 8479    -1     } ],
 8480    -1     79: [ function(_dereq_, module, exports) {
 8481    -1       arguments[4][67][0].apply(exports, arguments);
 8482    -1     }, {
 8483    -1       dup: 67
 8484    -1     } ],
 8485    -1     80: [ function(_dereq_, module, exports) {
 8486    -1       var fails = _dereq_('../internals/fails');
 8487    -1       module.exports = !!Object.getOwnPropertySymbols && !fails(function() {
 8488    -1         return !String(Symbol());
 8489    -1       });
 8490    -1     }, {
 8491    -1       '../internals/fails': 61
 8492    -1     } ],
 8493    -1     81: [ function(_dereq_, module, exports) {
 8494    -1       var global = _dereq_('../internals/global');
 8495    -1       var nativeFunctionToString = _dereq_('../internals/function-to-string');
 8496    -1       var WeakMap = global.WeakMap;
 8497    -1       module.exports = typeof WeakMap === 'function' && /native code/.test(nativeFunctionToString.call(WeakMap));
 8498    -1     }, {
 8499    -1       '../internals/function-to-string': 62,
 8500    -1       '../internals/global': 65
 8501    -1     } ],
 8502    -1     82: [ function(_dereq_, module, exports) {
 8503    -1       var anObject = _dereq_('../internals/an-object');
 8504    -1       var defineProperties = _dereq_('../internals/object-define-properties');
 8505    -1       var enumBugKeys = _dereq_('../internals/enum-bug-keys');
 8506    -1       var hiddenKeys = _dereq_('../internals/hidden-keys');
 8507    -1       var html = _dereq_('../internals/html');
 8508    -1       var documentCreateElement = _dereq_('../internals/document-create-element');
 8509    -1       var sharedKey = _dereq_('../internals/shared-key');
 8510    -1       var IE_PROTO = sharedKey('IE_PROTO');
 8511    -1       var PROTOTYPE = 'prototype';
 8512    -1       var Empty = function() {};
 8513    -1       var createDict = function() {
 8514    -1         var iframe = documentCreateElement('iframe');
 8515    -1         var length = enumBugKeys.length;
 8516    -1         var lt = '<';
 8517    -1         var script = 'script';
 8518    -1         var gt = '>';
 8519    -1         var js = 'java' + script + ':';
 8520    -1         var iframeDocument;
 8521    -1         iframe.style.display = 'none';
 8522    -1         html.appendChild(iframe);
 8523    -1         iframe.src = String(js);
 8524    -1         iframeDocument = iframe.contentWindow.document;
 8525    -1         iframeDocument.open();
 8526    -1         iframeDocument.write(lt + script + gt + 'document.F=Object' + lt + '/' + script + gt);
 8527    -1         iframeDocument.close();
 8528    -1         createDict = iframeDocument.F;
 8529    -1         while (length--) {
 8530    -1           delete createDict[PROTOTYPE][enumBugKeys[length]];
 8531    -1         }
 8532    -1         return createDict();
 8533    -1       };
 8534    -1       module.exports = Object.create || function create(O, Properties) {
 8535    -1         var result;
 8536    -1         if (O !== null) {
 8537    -1           Empty[PROTOTYPE] = anObject(O);
 8538    -1           result = new Empty();
 8539    -1           Empty[PROTOTYPE] = null;
 8540    -1           result[IE_PROTO] = O;
 8541    -1         } else {
 8542    -1           result = createDict();
 8543    -1         }
 8544    -1         return Properties === undefined ? result : defineProperties(result, Properties);
 8545    -1       };
 8546    -1       hiddenKeys[IE_PROTO] = true;
 8547    -1     }, {
 8548    -1       '../internals/an-object': 38,
 8549    -1       '../internals/document-create-element': 58,
 8550    -1       '../internals/enum-bug-keys': 59,
 8551    -1       '../internals/hidden-keys': 67,
 8552    -1       '../internals/html': 69,
 8553    -1       '../internals/object-define-properties': 83,
 8554    -1       '../internals/shared-key': 102
 8555    -1     } ],
 8556    -1     83: [ function(_dereq_, module, exports) {
 8557    -1       var DESCRIPTORS = _dereq_('../internals/descriptors');
 8558    -1       var definePropertyModule = _dereq_('../internals/object-define-property');
 8559    -1       var anObject = _dereq_('../internals/an-object');
 8560    -1       var objectKeys = _dereq_('../internals/object-keys');
 8561    -1       module.exports = DESCRIPTORS ? Object.defineProperties : function defineProperties(O, Properties) {
 8562    -1         anObject(O);
 8563    -1         var keys = objectKeys(Properties);
 8564    -1         var length = keys.length;
 8565    -1         var index = 0;
 8566    -1         var key;
 8567    -1         while (length > index) {
 8568    -1           definePropertyModule.f(O, key = keys[index++], Properties[key]);
 8569    -1         }
 8570    -1         return O;
 8571    -1       };
 8572    -1     }, {
 8573    -1       '../internals/an-object': 38,
 8574    -1       '../internals/descriptors': 57,
 8575    -1       '../internals/object-define-property': 84,
 8576    -1       '../internals/object-keys': 90
 8577    -1     } ],
 8578    -1     84: [ function(_dereq_, module, exports) {
 8579    -1       var DESCRIPTORS = _dereq_('../internals/descriptors');
 8580    -1       var IE8_DOM_DEFINE = _dereq_('../internals/ie8-dom-define');
 8581    -1       var anObject = _dereq_('../internals/an-object');
 8582    -1       var toPrimitive = _dereq_('../internals/to-primitive');
 8583    -1       var nativeDefineProperty = Object.defineProperty;
 8584    -1       exports.f = DESCRIPTORS ? nativeDefineProperty : function defineProperty(O, P, Attributes) {
 8585    -1         anObject(O);
 8586    -1         P = toPrimitive(P, true);
 8587    -1         anObject(Attributes);
 8588    -1         if (IE8_DOM_DEFINE) {
 8589    -1           try {
 8590    -1             return nativeDefineProperty(O, P, Attributes);
 8591    -1           } catch (error) {}
 8592    -1         }
 8593    -1         if ('get' in Attributes || 'set' in Attributes) {
 8594    -1           throw TypeError('Accessors not supported');
 8595    -1         }
 8596    -1         if ('value' in Attributes) {
 8597    -1           O[P] = Attributes.value;
 8598    -1         }
 8599    -1         return O;
 8600    -1       };
 8601    -1     }, {
 8602    -1       '../internals/an-object': 38,
 8603    -1       '../internals/descriptors': 57,
 8604    -1       '../internals/ie8-dom-define': 70,
 8605    -1       '../internals/to-primitive': 113
 8606    -1     } ],
 8607    -1     85: [ function(_dereq_, module, exports) {
 8608    -1       var DESCRIPTORS = _dereq_('../internals/descriptors');
 8609    -1       var propertyIsEnumerableModule = _dereq_('../internals/object-property-is-enumerable');
 8610    -1       var createPropertyDescriptor = _dereq_('../internals/create-property-descriptor');
 8611    -1       var toIndexedObject = _dereq_('../internals/to-indexed-object');
 8612    -1       var toPrimitive = _dereq_('../internals/to-primitive');
 8613    -1       var has = _dereq_('../internals/has');
 8614    -1       var IE8_DOM_DEFINE = _dereq_('../internals/ie8-dom-define');
 8615    -1       var nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
 8616    -1       exports.f = DESCRIPTORS ? nativeGetOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {
 8617    -1         O = toIndexedObject(O);
 8618    -1         P = toPrimitive(P, true);
 8619    -1         if (IE8_DOM_DEFINE) {
 8620    -1           try {
 8621    -1             return nativeGetOwnPropertyDescriptor(O, P);
 8622    -1           } catch (error) {}
 8623    -1         }
 8624    -1         if (has(O, P)) {
 8625    -1           return createPropertyDescriptor(!propertyIsEnumerableModule.f.call(O, P), O[P]);
 8626    -1         }
 8627    -1       };
 8628    -1     }, {
 8629    -1       '../internals/create-property-descriptor': 55,
 8630    -1       '../internals/descriptors': 57,
 8631    -1       '../internals/has': 66,
 8632    -1       '../internals/ie8-dom-define': 70,
 8633    -1       '../internals/object-property-is-enumerable': 91,
 8634    -1       '../internals/to-indexed-object': 108,
 8635    -1       '../internals/to-primitive': 113
 8636    -1     } ],
 8637    -1     86: [ function(_dereq_, module, exports) {
 8638    -1       var internalObjectKeys = _dereq_('../internals/object-keys-internal');
 8639    -1       var enumBugKeys = _dereq_('../internals/enum-bug-keys');
 8640    -1       var hiddenKeys = enumBugKeys.concat('length', 'prototype');
 8641    -1       exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
 8642    -1         return internalObjectKeys(O, hiddenKeys);
 8643    -1       };
 8644    -1     }, {
 8645    -1       '../internals/enum-bug-keys': 59,
 8646    -1       '../internals/object-keys-internal': 89
 8647    -1     } ],
 8648    -1     87: [ function(_dereq_, module, exports) {
 8649    -1       exports.f = Object.getOwnPropertySymbols;
 8650    -1     }, {} ],
 8651    -1     88: [ function(_dereq_, module, exports) {
 8652    -1       var has = _dereq_('../internals/has');
 8653    -1       var toObject = _dereq_('../internals/to-object');
 8654    -1       var sharedKey = _dereq_('../internals/shared-key');
 8655    -1       var CORRECT_PROTOTYPE_GETTER = _dereq_('../internals/correct-prototype-getter');
 8656    -1       var IE_PROTO = sharedKey('IE_PROTO');
 8657    -1       var ObjectPrototype = Object.prototype;
 8658    -1       module.exports = CORRECT_PROTOTYPE_GETTER ? Object.getPrototypeOf : function(O) {
 8659    -1         O = toObject(O);
 8660    -1         if (has(O, IE_PROTO)) {
 8661    -1           return O[IE_PROTO];
 8662    -1         }
 8663    -1         if (typeof O.constructor == 'function' && O instanceof O.constructor) {
 8664    -1           return O.constructor.prototype;
 8665    -1         }
 8666    -1         return O instanceof Object ? ObjectPrototype : null;
 8667    -1       };
 8668    -1     }, {
 8669    -1       '../internals/correct-prototype-getter': 53,
 8670    -1       '../internals/has': 66,
 8671    -1       '../internals/shared-key': 102,
 8672    -1       '../internals/to-object': 111
 8673    -1     } ],
 8674    -1     89: [ function(_dereq_, module, exports) {
 8675    -1       var has = _dereq_('../internals/has');
 8676    -1       var toIndexedObject = _dereq_('../internals/to-indexed-object');
 8677    -1       var indexOf = _dereq_('../internals/array-includes').indexOf;
 8678    -1       var hiddenKeys = _dereq_('../internals/hidden-keys');
 8679    -1       module.exports = function(object, names) {
 8680    -1         var O = toIndexedObject(object);
 8681    -1         var i = 0;
 8682    -1         var result = [];
 8683    -1         var key;
 8684    -1         for (key in O) {
 8685    -1           !has(hiddenKeys, key) && has(O, key) && result.push(key);
 8686    -1         }
 8687    -1         while (names.length > i) {
 8688    -1           if (has(O, key = names[i++])) {
 8689    -1             ~indexOf(result, key) || result.push(key);
 8690    -1           }
 8691    -1         }
 8692    -1         return result;
 8693    -1       };
 8694    -1     }, {
 8695    -1       '../internals/array-includes': 43,
 8696    -1       '../internals/has': 66,
 8697    -1       '../internals/hidden-keys': 67,
 8698    -1       '../internals/to-indexed-object': 108
 8699    -1     } ],
 8700    -1     90: [ function(_dereq_, module, exports) {
 8701    -1       var internalObjectKeys = _dereq_('../internals/object-keys-internal');
 8702    -1       var enumBugKeys = _dereq_('../internals/enum-bug-keys');
 8703    -1       module.exports = Object.keys || function keys(O) {
 8704    -1         return internalObjectKeys(O, enumBugKeys);
 8705    -1       };
 8706    -1     }, {
 8707    -1       '../internals/enum-bug-keys': 59,
 8708    -1       '../internals/object-keys-internal': 89
 8709    -1     } ],
 8710    -1     91: [ function(_dereq_, module, exports) {
 8711    -1       'use strict';
 8712    -1       var nativePropertyIsEnumerable = {}.propertyIsEnumerable;
 8713    -1       var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
 8714    -1       var NASHORN_BUG = getOwnPropertyDescriptor && !nativePropertyIsEnumerable.call({
 8715    -1         1: 2
 8716    -1       }, 1);
 8717    -1       exports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {
 8718    -1         var descriptor = getOwnPropertyDescriptor(this, V);
 8719    -1         return !!descriptor && descriptor.enumerable;
 8720    -1       } : nativePropertyIsEnumerable;
 8721    -1     }, {} ],
 8722    -1     92: [ function(_dereq_, module, exports) {
 8723    -1       var anObject = _dereq_('../internals/an-object');
 8724    -1       var aPossiblePrototype = _dereq_('../internals/a-possible-prototype');
 8725    -1       module.exports = Object.setPrototypeOf || ('__proto__' in {} ? function() {
 8726    -1         var CORRECT_SETTER = false;
 8727    -1         var test = {};
 8728    -1         var setter;
 8729    -1         try {
 8730    -1           setter = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set;
 8731    -1           setter.call(test, []);
 8732    -1           CORRECT_SETTER = test instanceof Array;
 8733    -1         } catch (error) {}
 8734    -1         return function setPrototypeOf(O, proto) {
 8735    -1           anObject(O);
 8736    -1           aPossiblePrototype(proto);
 8737    -1           if (CORRECT_SETTER) {
 8738    -1             setter.call(O, proto);
 8739    -1           } else {
 8740    -1             O.__proto__ = proto;
 8741    -1           }
 8742    -1           return O;
 8743    -1         };
 8744    -1       }() : undefined);
 8745    -1     }, {
 8746    -1       '../internals/a-possible-prototype': 35,
 8747    -1       '../internals/an-object': 38
 8748    -1     } ],
 8749    -1     93: [ function(_dereq_, module, exports) {
 8750    -1       'use strict';
 8751    -1       var classof = _dereq_('../internals/classof');
 8752    -1       var wellKnownSymbol = _dereq_('../internals/well-known-symbol');
 8753    -1       var TO_STRING_TAG = wellKnownSymbol('toStringTag');
 8754    -1       var test = {};
 8755    -1       test[TO_STRING_TAG] = 'z';
 8756    -1       module.exports = String(test) !== '[object z]' ? function toString() {
 8757    -1         return '[object ' + classof(this) + ']';
 8758    -1       } : test.toString;
 8759    -1     }, {
 8760    -1       '../internals/classof': 51,
 8761    -1       '../internals/well-known-symbol': 118
 8762    -1     } ],
 8763    -1     94: [ function(_dereq_, module, exports) {
 8764    -1       var getBuiltIn = _dereq_('../internals/get-built-in');
 8765    -1       var getOwnPropertyNamesModule = _dereq_('../internals/object-get-own-property-names');
 8766    -1       var getOwnPropertySymbolsModule = _dereq_('../internals/object-get-own-property-symbols');
 8767    -1       var anObject = _dereq_('../internals/an-object');
 8768    -1       module.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {
 8769    -1         var keys = getOwnPropertyNamesModule.f(anObject(it));
 8770    -1         var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;
 8771    -1         return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys;
 8772    -1       };
 8773    -1     }, {
 8774    -1       '../internals/an-object': 38,
 8775    -1       '../internals/get-built-in': 63,
 8776    -1       '../internals/object-get-own-property-names': 86,
 8777    -1       '../internals/object-get-own-property-symbols': 87
 8778    -1     } ],
 8779    -1     95: [ function(_dereq_, module, exports) {
 8780    -1       module.exports = _dereq_('../internals/global');
 8781    -1     }, {
 8782    -1       '../internals/global': 65
 8783    -1     } ],
 8784    -1     96: [ function(_dereq_, module, exports) {
 8785    -1       var redefine = _dereq_('../internals/redefine');
 8786    -1       module.exports = function(target, src, options) {
 8787    -1         for (var key in src) {
 8788    -1           redefine(target, key, src[key], options);
 8789    -1         }
 8790    -1         return target;
 8791    -1       };
 8792    -1     }, {
 8793    -1       '../internals/redefine': 97
 8794    -1     } ],
 8795    -1     97: [ function(_dereq_, module, exports) {
 8796    -1       var global = _dereq_('../internals/global');
 8797    -1       var shared = _dereq_('../internals/shared');
 8798    -1       var hide = _dereq_('../internals/hide');
 8799    -1       var has = _dereq_('../internals/has');
 8800    -1       var setGlobal = _dereq_('../internals/set-global');
 8801    -1       var nativeFunctionToString = _dereq_('../internals/function-to-string');
 8802    -1       var InternalStateModule = _dereq_('../internals/internal-state');
 8803    -1       var getInternalState = InternalStateModule.get;
 8804    -1       var enforceInternalState = InternalStateModule.enforce;
 8805    -1       var TEMPLATE = String(nativeFunctionToString).split('toString');
 8806    -1       shared('inspectSource', function(it) {
 8807    -1         return nativeFunctionToString.call(it);
 8808    -1       });
 8809    -1       (module.exports = function(O, key, value, options) {
 8810    -1         var unsafe = options ? !!options.unsafe : false;
 8811    -1         var simple = options ? !!options.enumerable : false;
 8812    -1         var noTargetGet = options ? !!options.noTargetGet : false;
 8813    -1         if (typeof value == 'function') {
 8814    -1           if (typeof key == 'string' && !has(value, 'name')) {
 8815    -1             hide(value, 'name', key);
 8816    -1           }
 8817    -1           enforceInternalState(value).source = TEMPLATE.join(typeof key == 'string' ? key : '');
 8818    -1         }
 8819    -1         if (O === global) {
 8820    -1           if (simple) {
 8821    -1             O[key] = value;
 8822    -1           } else {
 8823    -1             setGlobal(key, value);
 8824    -1           }
 8825    -1           return;
 8826    -1         } else if (!unsafe) {
 8827    -1           delete O[key];
 8828    -1         } else if (!noTargetGet && O[key]) {
 8829    -1           simple = true;
 8830    -1         }
 8831    -1         if (simple) {
 8832    -1           O[key] = value;
 8833    -1         } else {
 8834    -1           hide(O, key, value);
 8835    -1         }
 8836    -1       })(Function.prototype, 'toString', function toString() {
 8837    -1         return typeof this == 'function' && getInternalState(this).source || nativeFunctionToString.call(this);
 8838    -1       });
 8839    -1     }, {
 8840    -1       '../internals/function-to-string': 62,
 8841    -1       '../internals/global': 65,
 8842    -1       '../internals/has': 66,
 8843    -1       '../internals/hide': 68,
 8844    -1       '../internals/internal-state': 72,
 8845    -1       '../internals/set-global': 99,
 8846    -1       '../internals/shared': 103
 8847    -1     } ],
 8848    -1     98: [ function(_dereq_, module, exports) {
 8849    -1       module.exports = function(it) {
 8850    -1         if (it == undefined) {
 8851    -1           throw TypeError('Can\'t call method on ' + it);
 8852    -1         }
 8853    -1         return it;
 8854    -1       };
 8855    -1     }, {} ],
 8856    -1     99: [ function(_dereq_, module, exports) {
 8857    -1       var global = _dereq_('../internals/global');
 8858    -1       var hide = _dereq_('../internals/hide');
 8859    -1       module.exports = function(key, value) {
 8860    -1         try {
 8861    -1           hide(global, key, value);
 8862    -1         } catch (error) {
 8863    -1           global[key] = value;
 8864    -1         }
 8865    -1         return value;
 8866    -1       };
 8867    -1     }, {
 8868    -1       '../internals/global': 65,
 8869    -1       '../internals/hide': 68
 8870    -1     } ],
 8871    -1     100: [ function(_dereq_, module, exports) {
 8872    -1       'use strict';
 8873    -1       var getBuiltIn = _dereq_('../internals/get-built-in');
 8874    -1       var definePropertyModule = _dereq_('../internals/object-define-property');
 8875    -1       var wellKnownSymbol = _dereq_('../internals/well-known-symbol');
 8876    -1       var DESCRIPTORS = _dereq_('../internals/descriptors');
 8877    -1       var SPECIES = wellKnownSymbol('species');
 8878    -1       module.exports = function(CONSTRUCTOR_NAME) {
 8879    -1         var Constructor = getBuiltIn(CONSTRUCTOR_NAME);
 8880    -1         var defineProperty = definePropertyModule.f;
 8881    -1         if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {
 8882    -1           defineProperty(Constructor, SPECIES, {
 8883    -1             configurable: true,
 8884    -1             get: function() {
 8885    -1               return this;
 8886    -1             }
 8887    -1           });
 8888    -1         }
 8889    -1       };
 8890    -1     }, {
 8891    -1       '../internals/descriptors': 57,
 8892    -1       '../internals/get-built-in': 63,
 8893    -1       '../internals/object-define-property': 84,
 8894    -1       '../internals/well-known-symbol': 118
 8895    -1     } ],
 8896    -1     101: [ function(_dereq_, module, exports) {
 8897    -1       var defineProperty = _dereq_('../internals/object-define-property').f;
 8898    -1       var has = _dereq_('../internals/has');
 8899    -1       var wellKnownSymbol = _dereq_('../internals/well-known-symbol');
 8900    -1       var TO_STRING_TAG = wellKnownSymbol('toStringTag');
 8901    -1       module.exports = function(it, TAG, STATIC) {
 8902    -1         if (it && !has(it = STATIC ? it : it.prototype, TO_STRING_TAG)) {
 8903    -1           defineProperty(it, TO_STRING_TAG, {
 8904    -1             configurable: true,
 8905    -1             value: TAG
 8906    -1           });
 8907    -1         }
 8908    -1       };
 8909    -1     }, {
 8910    -1       '../internals/has': 66,
 8911    -1       '../internals/object-define-property': 84,
 8912    -1       '../internals/well-known-symbol': 118
 8913    -1     } ],
 8914    -1     102: [ function(_dereq_, module, exports) {
 8915    -1       var shared = _dereq_('../internals/shared');
 8916    -1       var uid = _dereq_('../internals/uid');
 8917    -1       var keys = shared('keys');
 8918    -1       module.exports = function(key) {
 8919    -1         return keys[key] || (keys[key] = uid(key));
 8920    -1       };
 8921    -1     }, {
 8922    -1       '../internals/shared': 103,
 8923    -1       '../internals/uid': 117
 8924    -1     } ],
 8925    -1     103: [ function(_dereq_, module, exports) {
 8926    -1       var global = _dereq_('../internals/global');
 8927    -1       var setGlobal = _dereq_('../internals/set-global');
 8928    -1       var IS_PURE = _dereq_('../internals/is-pure');
 8929    -1       var SHARED = '__core-js_shared__';
 8930    -1       var store = global[SHARED] || setGlobal(SHARED, {});
 8931    -1       (module.exports = function(key, value) {
 8932    -1         return store[key] || (store[key] = value !== undefined ? value : {});
 8933    -1       })('versions', []).push({
 8934    -1         version: '3.2.1',
 8935    -1         mode: IS_PURE ? 'pure' : 'global',
 8936    -1         copyright: '© 2019 Denis Pushkarev (zloirock.ru)'
 8937    -1       });
 8938    -1     }, {
 8939    -1       '../internals/global': 65,
 8940    -1       '../internals/is-pure': 77,
 8941    -1       '../internals/set-global': 99
 8942    -1     } ],
 8943    -1     104: [ function(_dereq_, module, exports) {
 8944    -1       'use strict';
 8945    -1       var fails = _dereq_('../internals/fails');
 8946    -1       module.exports = function(METHOD_NAME, argument) {
 8947    -1         var method = [][METHOD_NAME];
 8948    -1         return !method || !fails(function() {
 8949    -1           method.call(null, argument || function() {
 8950    -1             throw 1;
 8951    -1           }, 1);
 8952    -1         });
 8953    -1       };
 8954    -1     }, {
 8955    -1       '../internals/fails': 61
 8956    -1     } ],
 8957    -1     105: [ function(_dereq_, module, exports) {
 8958    -1       var anObject = _dereq_('../internals/an-object');
 8959    -1       var aFunction = _dereq_('../internals/a-function');
 8960    -1       var wellKnownSymbol = _dereq_('../internals/well-known-symbol');
 8961    -1       var SPECIES = wellKnownSymbol('species');
 8962    -1       module.exports = function(O, defaultConstructor) {
 8963    -1         var C = anObject(O).constructor;
 8964    -1         var S;
 8965    -1         return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? defaultConstructor : aFunction(S);
 8966    -1       };
 8967    -1     }, {
 8968    -1       '../internals/a-function': 34,
 8969    -1       '../internals/an-object': 38,
 8970    -1       '../internals/well-known-symbol': 118
 8971    -1     } ],
 8972    -1     106: [ function(_dereq_, module, exports) {
 8973    -1       var toInteger = _dereq_('../internals/to-integer');
 8974    -1       var max = Math.max;
 8975    -1       var min = Math.min;
 8976    -1       module.exports = function(index, length) {
 8977    -1         var integer = toInteger(index);
 8978    -1         return integer < 0 ? max(integer + length, 0) : min(integer, length);
 8979    -1       };
 8980    -1     }, {
 8981    -1       '../internals/to-integer': 109
 8982    -1     } ],
 8983    -1     107: [ function(_dereq_, module, exports) {
 8984    -1       var toInteger = _dereq_('../internals/to-integer');
 8985    -1       var toLength = _dereq_('../internals/to-length');
 8986    -1       module.exports = function(it) {
 8987    -1         if (it === undefined) {
 8988    -1           return 0;
 8989    -1         }
 8990    -1         var number = toInteger(it);
 8991    -1         var length = toLength(number);
 8992    -1         if (number !== length) {
 8993    -1           throw RangeError('Wrong length or index');
 8994    -1         }
 8995    -1         return length;
 8996    -1       };
 8997    -1     }, {
 8998    -1       '../internals/to-integer': 109,
 8999    -1       '../internals/to-length': 110
 9000    -1     } ],
 9001    -1     108: [ function(_dereq_, module, exports) {
 9002    -1       var IndexedObject = _dereq_('../internals/indexed-object');
 9003    -1       var requireObjectCoercible = _dereq_('../internals/require-object-coercible');
 9004    -1       module.exports = function(it) {
 9005    -1         return IndexedObject(requireObjectCoercible(it));
 9006    -1       };
 9007    -1     }, {
 9008    -1       '../internals/indexed-object': 71,
 9009    -1       '../internals/require-object-coercible': 98
 9010    -1     } ],
 9011    -1     109: [ function(_dereq_, module, exports) {
 9012    -1       var ceil = Math.ceil;
 9013    -1       var floor = Math.floor;
 9014    -1       module.exports = function(argument) {
 9015    -1         return isNaN(argument = +argument) ? 0 : (argument > 0 ? floor : ceil)(argument);
 9016    -1       };
 9017    -1     }, {} ],
 9018    -1     110: [ function(_dereq_, module, exports) {
 9019    -1       var toInteger = _dereq_('../internals/to-integer');
 9020    -1       var min = Math.min;
 9021    -1       module.exports = function(argument) {
 9022    -1         return argument > 0 ? min(toInteger(argument), 9007199254740991) : 0;
 9023    -1       };
 9024    -1     }, {
 9025    -1       '../internals/to-integer': 109
 9026    -1     } ],
 9027    -1     111: [ function(_dereq_, module, exports) {
 9028    -1       var requireObjectCoercible = _dereq_('../internals/require-object-coercible');
 9029    -1       module.exports = function(argument) {
 9030    -1         return Object(requireObjectCoercible(argument));
 9031    -1       };
 9032    -1     }, {
 9033    -1       '../internals/require-object-coercible': 98
 9034    -1     } ],
 9035    -1     112: [ function(_dereq_, module, exports) {
 9036    -1       var toInteger = _dereq_('../internals/to-integer');
 9037    -1       module.exports = function(it, BYTES) {
 9038    -1         var offset = toInteger(it);
 9039    -1         if (offset < 0 || offset % BYTES) {
 9040    -1           throw RangeError('Wrong offset');
 9041    -1         }
 9042    -1         return offset;
 9043    -1       };
 9044    -1     }, {
 9045    -1       '../internals/to-integer': 109
 9046    -1     } ],
 9047    -1     113: [ function(_dereq_, module, exports) {
 9048    -1       var isObject = _dereq_('../internals/is-object');
 9049    -1       module.exports = function(input, PREFERRED_STRING) {
 9050    -1         if (!isObject(input)) {
 9051    -1           return input;
 9052    -1         }
 9053    -1         var fn, val;
 9054    -1         if (PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) {
 9055    -1           return val;
 9056    -1         }
 9057    -1         if (typeof (fn = input.valueOf) == 'function' && !isObject(val = fn.call(input))) {
 9058    -1           return val;
 9059    -1         }
 9060    -1         if (!PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) {
 9061    -1           return val;
 9062    -1         }
 9063    -1         throw TypeError('Can\'t convert object to primitive value');
 9064    -1       };
 9065    -1     }, {
 9066    -1       '../internals/is-object': 76
 9067    -1     } ],
 9068    -1     114: [ function(_dereq_, module, exports) {
 9069    -1       'use strict';
 9070    -1       var $ = _dereq_('../internals/export');
 9071    -1       var global = _dereq_('../internals/global');
 9072    -1       var DESCRIPTORS = _dereq_('../internals/descriptors');
 9073    -1       var TYPED_ARRAYS_CONSTRUCTORS_REQUIRES_WRAPPERS = _dereq_('../internals/typed-arrays-constructors-requires-wrappers');
 9074    -1       var ArrayBufferViewCore = _dereq_('../internals/array-buffer-view-core');
 9075    -1       var ArrayBufferModule = _dereq_('../internals/array-buffer');
 9076    -1       var anInstance = _dereq_('../internals/an-instance');
 9077    -1       var createPropertyDescriptor = _dereq_('../internals/create-property-descriptor');
 9078    -1       var hide = _dereq_('../internals/hide');
 9079    -1       var toLength = _dereq_('../internals/to-length');
 9080    -1       var toIndex = _dereq_('../internals/to-index');
 9081    -1       var toOffset = _dereq_('../internals/to-offset');
 9082    -1       var toPrimitive = _dereq_('../internals/to-primitive');
 9083    -1       var has = _dereq_('../internals/has');
 9084    -1       var classof = _dereq_('../internals/classof');
 9085    -1       var isObject = _dereq_('../internals/is-object');
 9086    -1       var create = _dereq_('../internals/object-create');
 9087    -1       var setPrototypeOf = _dereq_('../internals/object-set-prototype-of');
 9088    -1       var getOwnPropertyNames = _dereq_('../internals/object-get-own-property-names').f;
 9089    -1       var typedArrayFrom = _dereq_('../internals/typed-array-from');
 9090    -1       var forEach = _dereq_('../internals/array-iteration').forEach;
 9091    -1       var setSpecies = _dereq_('../internals/set-species');
 9092    -1       var definePropertyModule = _dereq_('../internals/object-define-property');
 9093    -1       var getOwnPropertyDescriptorModule = _dereq_('../internals/object-get-own-property-descriptor');
 9094    -1       var InternalStateModule = _dereq_('../internals/internal-state');
 9095    -1       var getInternalState = InternalStateModule.get;
 9096    -1       var setInternalState = InternalStateModule.set;
 9097    -1       var nativeDefineProperty = definePropertyModule.f;
 9098    -1       var nativeGetOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;
 9099    -1       var round = Math.round;
 9100    -1       var RangeError = global.RangeError;
 9101    -1       var ArrayBuffer = ArrayBufferModule.ArrayBuffer;
 9102    -1       var DataView = ArrayBufferModule.DataView;
 9103    -1       var NATIVE_ARRAY_BUFFER_VIEWS = ArrayBufferViewCore.NATIVE_ARRAY_BUFFER_VIEWS;
 9104    -1       var TYPED_ARRAY_TAG = ArrayBufferViewCore.TYPED_ARRAY_TAG;
 9105    -1       var TypedArray = ArrayBufferViewCore.TypedArray;
 9106    -1       var TypedArrayPrototype = ArrayBufferViewCore.TypedArrayPrototype;
 9107    -1       var aTypedArrayConstructor = ArrayBufferViewCore.aTypedArrayConstructor;
 9108    -1       var isTypedArray = ArrayBufferViewCore.isTypedArray;
 9109    -1       var BYTES_PER_ELEMENT = 'BYTES_PER_ELEMENT';
 9110    -1       var WRONG_LENGTH = 'Wrong length';
 9111    -1       var fromList = function(C, list) {
 9112    -1         var index = 0;
 9113    -1         var length = list.length;
 9114    -1         var result = new (aTypedArrayConstructor(C))(length);
 9115    -1         while (length > index) {
 9116    -1           result[index] = list[index++];
 9117    -1         }
 9118    -1         return result;
 9119    -1       };
 9120    -1       var addGetter = function(it, key) {
 9121    -1         nativeDefineProperty(it, key, {
 9122    -1           get: function() {
 9123    -1             return getInternalState(this)[key];
 9124    -1           }
 9125    -1         });
 9126    -1       };
 9127    -1       var isArrayBuffer = function(it) {
 9128    -1         var klass;
 9129    -1         return it instanceof ArrayBuffer || (klass = classof(it)) == 'ArrayBuffer' || klass == 'SharedArrayBuffer';
 9130    -1       };
 9131    -1       var isTypedArrayIndex = function(target, key) {
 9132    -1         return isTypedArray(target) && typeof key != 'symbol' && key in target && String(+key) == String(key);
 9133    -1       };
 9134    -1       var wrappedGetOwnPropertyDescriptor = function getOwnPropertyDescriptor(target, key) {
 9135    -1         return isTypedArrayIndex(target, key = toPrimitive(key, true)) ? createPropertyDescriptor(2, target[key]) : nativeGetOwnPropertyDescriptor(target, key);
 9136    -1       };
 9137    -1       var wrappedDefineProperty = function defineProperty(target, key, descriptor) {
 9138    -1         if (isTypedArrayIndex(target, key = toPrimitive(key, true)) && isObject(descriptor) && has(descriptor, 'value') && !has(descriptor, 'get') && !has(descriptor, 'set') && !descriptor.configurable && (!has(descriptor, 'writable') || descriptor.writable) && (!has(descriptor, 'enumerable') || descriptor.enumerable)) {
 9139    -1           target[key] = descriptor.value;
 9140    -1           return target;
 9141    -1         }
 9142    -1         return nativeDefineProperty(target, key, descriptor);
 9143    -1       };
 9144    -1       if (DESCRIPTORS) {
 9145    -1         if (!NATIVE_ARRAY_BUFFER_VIEWS) {
 9146    -1           getOwnPropertyDescriptorModule.f = wrappedGetOwnPropertyDescriptor;
 9147    -1           definePropertyModule.f = wrappedDefineProperty;
 9148    -1           addGetter(TypedArrayPrototype, 'buffer');
 9149    -1           addGetter(TypedArrayPrototype, 'byteOffset');
 9150    -1           addGetter(TypedArrayPrototype, 'byteLength');
 9151    -1           addGetter(TypedArrayPrototype, 'length');
 9152    -1         }
 9153    -1         $({
 9154    -1           target: 'Object',
 9155    -1           stat: true,
 9156    -1           forced: !NATIVE_ARRAY_BUFFER_VIEWS
 9157    -1         }, {
 9158    -1           getOwnPropertyDescriptor: wrappedGetOwnPropertyDescriptor,
 9159    -1           defineProperty: wrappedDefineProperty
 9160    -1         });
 9161    -1         module.exports = function(TYPE, BYTES, wrapper, CLAMPED) {
 9162    -1           var CONSTRUCTOR_NAME = TYPE + (CLAMPED ? 'Clamped' : '') + 'Array';
 9163    -1           var GETTER = 'get' + TYPE;
 9164    -1           var SETTER = 'set' + TYPE;
 9165    -1           var NativeTypedArrayConstructor = global[CONSTRUCTOR_NAME];
 9166    -1           var TypedArrayConstructor = NativeTypedArrayConstructor;
 9167    -1           var TypedArrayConstructorPrototype = TypedArrayConstructor && TypedArrayConstructor.prototype;
 9168    -1           var exported = {};
 9169    -1           var getter = function(that, index) {
 9170    -1             var data = getInternalState(that);
 9171    -1             return data.view[GETTER](index * BYTES + data.byteOffset, true);
 9172    -1           };
 9173    -1           var setter = function(that, index, value) {
 9174    -1             var data = getInternalState(that);
 9175    -1             if (CLAMPED) {
 9176    -1               value = (value = round(value)) < 0 ? 0 : value > 255 ? 255 : value & 255;
 9177    -1             }
 9178    -1             data.view[SETTER](index * BYTES + data.byteOffset, value, true);
 9179    -1           };
 9180    -1           var addElement = function(that, index) {
 9181    -1             nativeDefineProperty(that, index, {
 9182    -1               get: function() {
 9183    -1                 return getter(this, index);
 9184    -1               },
 9185    -1               set: function(value) {
 9186    -1                 return setter(this, index, value);
 9187    -1               },
 9188    -1               enumerable: true
 9189    -1             });
 9190    -1           };
 9191    -1           if (!NATIVE_ARRAY_BUFFER_VIEWS) {
 9192    -1             TypedArrayConstructor = wrapper(function(that, data, offset, $length) {
 9193    -1               anInstance(that, TypedArrayConstructor, CONSTRUCTOR_NAME);
 9194    -1               var index = 0;
 9195    -1               var byteOffset = 0;
 9196    -1               var buffer, byteLength, length;
 9197    -1               if (!isObject(data)) {
 9198    -1                 length = toIndex(data);
 9199    -1                 byteLength = length * BYTES;
 9200    -1                 buffer = new ArrayBuffer(byteLength);
 9201    -1               } else if (isArrayBuffer(data)) {
 9202    -1                 buffer = data;
 9203    -1                 byteOffset = toOffset(offset, BYTES);
 9204    -1                 var $len = data.byteLength;
 9205    -1                 if ($length === undefined) {
 9206    -1                   if ($len % BYTES) {
 9207    -1                     throw RangeError(WRONG_LENGTH);
 9208    -1                   }
 9209    -1                   byteLength = $len - byteOffset;
 9210    -1                   if (byteLength < 0) {
 9211    -1                     throw RangeError(WRONG_LENGTH);
 9212    -1                   }
 9213    -1                 } else {
 9214    -1                   byteLength = toLength($length) * BYTES;
 9215    -1                   if (byteLength + byteOffset > $len) {
 9216    -1                     throw RangeError(WRONG_LENGTH);
 9217    -1                   }
 9218    -1                 }
 9219    -1                 length = byteLength / BYTES;
 9220    -1               } else if (isTypedArray(data)) {
 9221    -1                 return fromList(TypedArrayConstructor, data);
 9222    -1               } else {
 9223    -1                 return typedArrayFrom.call(TypedArrayConstructor, data);
 9224    -1               }
 9225    -1               setInternalState(that, {
 9226    -1                 buffer: buffer,
 9227    -1                 byteOffset: byteOffset,
 9228    -1                 byteLength: byteLength,
 9229    -1                 length: length,
 9230    -1                 view: new DataView(buffer)
 9231    -1               });
 9232    -1               while (index < length) {
 9233    -1                 addElement(that, index++);
 9234    -1               }
 9235    -1             });
 9236    -1             if (setPrototypeOf) {
 9237    -1               setPrototypeOf(TypedArrayConstructor, TypedArray);
 9238    -1             }
 9239    -1             TypedArrayConstructorPrototype = TypedArrayConstructor.prototype = create(TypedArrayPrototype);
 9240    -1           } else if (TYPED_ARRAYS_CONSTRUCTORS_REQUIRES_WRAPPERS) {
 9241    -1             TypedArrayConstructor = wrapper(function(dummy, data, typedArrayOffset, $length) {
 9242    -1               anInstance(dummy, TypedArrayConstructor, CONSTRUCTOR_NAME);
 9243    -1               if (!isObject(data)) {
 9244    -1                 return new NativeTypedArrayConstructor(toIndex(data));
 9245    -1               }
 9246    -1               if (isArrayBuffer(data)) {
 9247    -1                 return $length !== undefined ? new NativeTypedArrayConstructor(data, toOffset(typedArrayOffset, BYTES), $length) : typedArrayOffset !== undefined ? new NativeTypedArrayConstructor(data, toOffset(typedArrayOffset, BYTES)) : new NativeTypedArrayConstructor(data);
 9248    -1               }
 9249    -1               if (isTypedArray(data)) {
 9250    -1                 return fromList(TypedArrayConstructor, data);
 9251    -1               }
 9252    -1               return typedArrayFrom.call(TypedArrayConstructor, data);
 9253    -1             });
 9254    -1             if (setPrototypeOf) {
 9255    -1               setPrototypeOf(TypedArrayConstructor, TypedArray);
 9256    -1             }
 9257    -1             forEach(getOwnPropertyNames(NativeTypedArrayConstructor), function(key) {
 9258    -1               if (!(key in TypedArrayConstructor)) {
 9259    -1                 hide(TypedArrayConstructor, key, NativeTypedArrayConstructor[key]);
 9260    -1               }
 9261    -1             });
 9262    -1             TypedArrayConstructor.prototype = TypedArrayConstructorPrototype;
 9263    -1           }
 9264    -1           if (TypedArrayConstructorPrototype.constructor !== TypedArrayConstructor) {
 9265    -1             hide(TypedArrayConstructorPrototype, 'constructor', TypedArrayConstructor);
 9266    -1           }
 9267    -1           if (TYPED_ARRAY_TAG) {
 9268    -1             hide(TypedArrayConstructorPrototype, TYPED_ARRAY_TAG, CONSTRUCTOR_NAME);
 9269    -1           }
 9270    -1           exported[CONSTRUCTOR_NAME] = TypedArrayConstructor;
 9271    -1           $({
 9272    -1             global: true,
 9273    -1             forced: TypedArrayConstructor != NativeTypedArrayConstructor,
 9274    -1             sham: !NATIVE_ARRAY_BUFFER_VIEWS
 9275    -1           }, exported);
 9276    -1           if (!(BYTES_PER_ELEMENT in TypedArrayConstructor)) {
 9277    -1             hide(TypedArrayConstructor, BYTES_PER_ELEMENT, BYTES);
 9278    -1           }
 9279    -1           if (!(BYTES_PER_ELEMENT in TypedArrayConstructorPrototype)) {
 9280    -1             hide(TypedArrayConstructorPrototype, BYTES_PER_ELEMENT, BYTES);
 9281    -1           }
 9282    -1           setSpecies(CONSTRUCTOR_NAME);
 9283    -1         };
 9284    -1       } else {
 9285    -1         module.exports = function() {};
 9286    -1       }
 9287    -1     }, {
 9288    -1       '../internals/an-instance': 37,
 9289    -1       '../internals/array-buffer': 40,
 9290    -1       '../internals/array-buffer-view-core': 39,
 9291    -1       '../internals/array-iteration': 44,
 9292    -1       '../internals/classof': 51,
 9293    -1       '../internals/create-property-descriptor': 55,
 9294    -1       '../internals/descriptors': 57,
 9295    -1       '../internals/export': 60,
 9296    -1       '../internals/global': 65,
 9297    -1       '../internals/has': 66,
 9298    -1       '../internals/hide': 68,
 9299    -1       '../internals/internal-state': 72,
 9300    -1       '../internals/is-object': 76,
 9301    -1       '../internals/object-create': 82,
 9302    -1       '../internals/object-define-property': 84,
 9303    -1       '../internals/object-get-own-property-descriptor': 85,
 9304    -1       '../internals/object-get-own-property-names': 86,
 9305    -1       '../internals/object-set-prototype-of': 92,
 9306    -1       '../internals/set-species': 100,
 9307    -1       '../internals/to-index': 107,
 9308    -1       '../internals/to-length': 110,
 9309    -1       '../internals/to-offset': 112,
 9310    -1       '../internals/to-primitive': 113,
 9311    -1       '../internals/typed-array-from': 115,
 9312    -1       '../internals/typed-arrays-constructors-requires-wrappers': 116
 9313    -1     } ],
 9314    -1     115: [ function(_dereq_, module, exports) {
 9315    -1       var toObject = _dereq_('../internals/to-object');
 9316    -1       var toLength = _dereq_('../internals/to-length');
 9317    -1       var getIteratorMethod = _dereq_('../internals/get-iterator-method');
 9318    -1       var isArrayIteratorMethod = _dereq_('../internals/is-array-iterator-method');
 9319    -1       var bind = _dereq_('../internals/bind-context');
 9320    -1       var aTypedArrayConstructor = _dereq_('../internals/array-buffer-view-core').aTypedArrayConstructor;
 9321    -1       module.exports = function from(source) {
 9322    -1         var O = toObject(source);
 9323    -1         var argumentsLength = arguments.length;
 9324    -1         var mapfn = argumentsLength > 1 ? arguments[1] : undefined;
 9325    -1         var mapping = mapfn !== undefined;
 9326    -1         var iteratorMethod = getIteratorMethod(O);
 9327    -1         var i, length, result, step, iterator;
 9328    -1         if (iteratorMethod != undefined && !isArrayIteratorMethod(iteratorMethod)) {
 9329    -1           iterator = iteratorMethod.call(O);
 9330    -1           O = [];
 9331    -1           while (!(step = iterator.next()).done) {
 9332    -1             O.push(step.value);
 9333    -1           }
 9334    -1         }
 9335    -1         if (mapping && argumentsLength > 2) {
 9336    -1           mapfn = bind(mapfn, arguments[2], 2);
 9337    -1         }
 9338    -1         length = toLength(O.length);
 9339    -1         result = new (aTypedArrayConstructor(this))(length);
 9340    -1         for (i = 0; length > i; i++) {
 9341    -1           result[i] = mapping ? mapfn(O[i], i) : O[i];
 9342    -1         }
 9343    -1         return result;
 9344    -1       };
 9345    -1     }, {
 9346    -1       '../internals/array-buffer-view-core': 39,
 9347    -1       '../internals/bind-context': 48,
 9348    -1       '../internals/get-iterator-method': 64,
 9349    -1       '../internals/is-array-iterator-method': 73,
 9350    -1       '../internals/to-length': 110,
 9351    -1       '../internals/to-object': 111
 9352    -1     } ],
 9353    -1     116: [ function(_dereq_, module, exports) {
 9354    -1       var global = _dereq_('../internals/global');
 9355    -1       var fails = _dereq_('../internals/fails');
 9356    -1       var checkCorrectnessOfIteration = _dereq_('../internals/check-correctness-of-iteration');
 9357    -1       var NATIVE_ARRAY_BUFFER_VIEWS = _dereq_('../internals/array-buffer-view-core').NATIVE_ARRAY_BUFFER_VIEWS;
 9358    -1       var ArrayBuffer = global.ArrayBuffer;
 9359    -1       var Int8Array = global.Int8Array;
 9360    -1       module.exports = !NATIVE_ARRAY_BUFFER_VIEWS || !fails(function() {
 9361    -1         Int8Array(1);
 9362    -1       }) || !fails(function() {
 9363    -1         new Int8Array(-1);
 9364    -1       }) || !checkCorrectnessOfIteration(function(iterable) {
 9365    -1         new Int8Array();
 9366    -1         new Int8Array(null);
 9367    -1         new Int8Array(1.5);
 9368    -1         new Int8Array(iterable);
 9369    -1       }, true) || fails(function() {
 9370    -1         return new Int8Array(new ArrayBuffer(2), 1, undefined).length !== 1;
 9371    -1       });
 9372    -1     }, {
 9373    -1       '../internals/array-buffer-view-core': 39,
 9374    -1       '../internals/check-correctness-of-iteration': 49,
 9375    -1       '../internals/fails': 61,
 9376    -1       '../internals/global': 65
 9377    -1     } ],
 9378    -1     117: [ function(_dereq_, module, exports) {
 9379    -1       var id = 0;
 9380    -1       var postfix = Math.random();
 9381    -1       module.exports = function(key) {
 9382    -1         return 'Symbol(' + String(key === undefined ? '' : key) + ')_' + (++id + postfix).toString(36);
 9383    -1       };
 9384    -1     }, {} ],
 9385    -1     118: [ function(_dereq_, module, exports) {
 9386    -1       var global = _dereq_('../internals/global');
 9387    -1       var shared = _dereq_('../internals/shared');
 9388    -1       var uid = _dereq_('../internals/uid');
 9389    -1       var NATIVE_SYMBOL = _dereq_('../internals/native-symbol');
 9390    -1       var Symbol = global.Symbol;
 9391    -1       var store = shared('wks');
 9392    -1       module.exports = function(name) {
 9393    -1         return store[name] || (store[name] = NATIVE_SYMBOL && Symbol[name] || (NATIVE_SYMBOL ? Symbol : uid)('Symbol.' + name));
 9394    -1       };
 9395    -1     }, {
 9396    -1       '../internals/global': 65,
 9397    -1       '../internals/native-symbol': 80,
 9398    -1       '../internals/shared': 103,
 9399    -1       '../internals/uid': 117
 9400    -1     } ],
 9401    -1     119: [ function(_dereq_, module, exports) {
 9402    -1       'use strict';
 9403    -1       var toIndexedObject = _dereq_('../internals/to-indexed-object');
 9404    -1       var addToUnscopables = _dereq_('../internals/add-to-unscopables');
 9405    -1       var Iterators = _dereq_('../internals/iterators');
 9406    -1       var InternalStateModule = _dereq_('../internals/internal-state');
 9407    -1       var defineIterator = _dereq_('../internals/define-iterator');
 9408    -1       var ARRAY_ITERATOR = 'Array Iterator';
 9409    -1       var setInternalState = InternalStateModule.set;
 9410    -1       var getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);
 9411    -1       module.exports = defineIterator(Array, 'Array', function(iterated, kind) {
 9412    -1         setInternalState(this, {
 9413    -1           type: ARRAY_ITERATOR,
 9414    -1           target: toIndexedObject(iterated),
 9415    -1           index: 0,
 9416    -1           kind: kind
 9417    -1         });
 9418    -1       }, function() {
 9419    -1         var state = getInternalState(this);
 9420    -1         var target = state.target;
 9421    -1         var kind = state.kind;
 9422    -1         var index = state.index++;
 9423    -1         if (!target || index >= target.length) {
 9424    -1           state.target = undefined;
 9425    -1           return {
 9426    -1             value: undefined,
 9427    -1             done: true
 9428    -1           };
 9429    -1         }
 9430    -1         if (kind == 'keys') {
 9431    -1           return {
 9432    -1             value: index,
 9433    -1             done: false
 9434    -1           };
 9435    -1         }
 9436    -1         if (kind == 'values') {
 9437    -1           return {
 9438    -1             value: target[index],
 9439    -1             done: false
 9440    -1           };
 9441    -1         }
 9442    -1         return {
 9443    -1           value: [ index, target[index] ],
 9444    -1           done: false
 9445    -1         };
 9446    -1       }, 'values');
 9447    -1       Iterators.Arguments = Iterators.Array;
 9448    -1       addToUnscopables('keys');
 9449    -1       addToUnscopables('values');
 9450    -1       addToUnscopables('entries');
 9451    -1     }, {
 9452    -1       '../internals/add-to-unscopables': 36,
 9453    -1       '../internals/define-iterator': 56,
 9454    -1       '../internals/internal-state': 72,
 9455    -1       '../internals/iterators': 79,
 9456    -1       '../internals/to-indexed-object': 108
 9457    -1     } ],
 9458    -1     120: [ function(_dereq_, module, exports) {
 9459    -1       var redefine = _dereq_('../internals/redefine');
 9460    -1       var toString = _dereq_('../internals/object-to-string');
 9461    -1       var ObjectPrototype = Object.prototype;
 9462    -1       if (toString !== ObjectPrototype.toString) {
 9463    -1         redefine(ObjectPrototype, 'toString', toString, {
 9464    -1           unsafe: true
 9465    -1         });
 9466    -1       }
 9467    -1     }, {
 9468    -1       '../internals/object-to-string': 93,
 9469    -1       '../internals/redefine': 97
 9470    -1     } ],
 9471    -1     121: [ function(_dereq_, module, exports) {
 9472    -1       'use strict';
 9473    -1       var ArrayBufferViewCore = _dereq_('../internals/array-buffer-view-core');
 9474    -1       var $copyWithin = _dereq_('../internals/array-copy-within');
 9475    -1       var aTypedArray = ArrayBufferViewCore.aTypedArray;
 9476    -1       ArrayBufferViewCore.exportProto('copyWithin', function copyWithin(target, start) {
 9477    -1         return $copyWithin.call(aTypedArray(this), target, start, arguments.length > 2 ? arguments[2] : undefined);
 9478    -1       });
 9479    -1     }, {
 9480    -1       '../internals/array-buffer-view-core': 39,
 9481    -1       '../internals/array-copy-within': 41
 9482    -1     } ],
 9483    -1     122: [ function(_dereq_, module, exports) {
 9484    -1       'use strict';
 9485    -1       var ArrayBufferViewCore = _dereq_('../internals/array-buffer-view-core');
 9486    -1       var $every = _dereq_('../internals/array-iteration').every;
 9487    -1       var aTypedArray = ArrayBufferViewCore.aTypedArray;
 9488    -1       ArrayBufferViewCore.exportProto('every', function every(callbackfn) {
 9489    -1         return $every(aTypedArray(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
 9490    -1       });
 9491    -1     }, {
 9492    -1       '../internals/array-buffer-view-core': 39,
 9493    -1       '../internals/array-iteration': 44
 9494    -1     } ],
 9495    -1     123: [ function(_dereq_, module, exports) {
 9496    -1       'use strict';
 9497    -1       var ArrayBufferViewCore = _dereq_('../internals/array-buffer-view-core');
 9498    -1       var $fill = _dereq_('../internals/array-fill');
 9499    -1       var aTypedArray = ArrayBufferViewCore.aTypedArray;
 9500    -1       ArrayBufferViewCore.exportProto('fill', function fill(value) {
 9501    -1         return $fill.apply(aTypedArray(this), arguments);
 9502    -1       });
 9503    -1     }, {
 9504    -1       '../internals/array-buffer-view-core': 39,
 9505    -1       '../internals/array-fill': 42
 9506    -1     } ],
 9507    -1     124: [ function(_dereq_, module, exports) {
 9508    -1       'use strict';
 9509    -1       var ArrayBufferViewCore = _dereq_('../internals/array-buffer-view-core');
 9510    -1       var $filter = _dereq_('../internals/array-iteration').filter;
 9511    -1       var speciesConstructor = _dereq_('../internals/species-constructor');
 9512    -1       var aTypedArray = ArrayBufferViewCore.aTypedArray;
 9513    -1       var aTypedArrayConstructor = ArrayBufferViewCore.aTypedArrayConstructor;
 9514    -1       ArrayBufferViewCore.exportProto('filter', function filter(callbackfn) {
 9515    -1         var list = $filter(aTypedArray(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
 9516    -1         var C = speciesConstructor(this, this.constructor);
 9517    -1         var index = 0;
 9518    -1         var length = list.length;
 9519    -1         var result = new (aTypedArrayConstructor(C))(length);
 9520    -1         while (length > index) {
 9521    -1           result[index] = list[index++];
 9522    -1         }
 9523    -1         return result;
 9524    -1       });
 9525    -1     }, {
 9526    -1       '../internals/array-buffer-view-core': 39,
 9527    -1       '../internals/array-iteration': 44,
 9528    -1       '../internals/species-constructor': 105
 9529    -1     } ],
 9530    -1     125: [ function(_dereq_, module, exports) {
 9531    -1       'use strict';
 9532    -1       var ArrayBufferViewCore = _dereq_('../internals/array-buffer-view-core');
 9533    -1       var $findIndex = _dereq_('../internals/array-iteration').findIndex;
 9534    -1       var aTypedArray = ArrayBufferViewCore.aTypedArray;
 9535    -1       ArrayBufferViewCore.exportProto('findIndex', function findIndex(predicate) {
 9536    -1         return $findIndex(aTypedArray(this), predicate, arguments.length > 1 ? arguments[1] : undefined);
 9537    -1       });
 9538    -1     }, {
 9539    -1       '../internals/array-buffer-view-core': 39,
 9540    -1       '../internals/array-iteration': 44
 9541    -1     } ],
 9542    -1     126: [ function(_dereq_, module, exports) {
 9543    -1       'use strict';
 9544    -1       var ArrayBufferViewCore = _dereq_('../internals/array-buffer-view-core');
 9545    -1       var $find = _dereq_('../internals/array-iteration').find;
 9546    -1       var aTypedArray = ArrayBufferViewCore.aTypedArray;
 9547    -1       ArrayBufferViewCore.exportProto('find', function find(predicate) {
 9548    -1         return $find(aTypedArray(this), predicate, arguments.length > 1 ? arguments[1] : undefined);
 9549    -1       });
 9550    -1     }, {
 9551    -1       '../internals/array-buffer-view-core': 39,
 9552    -1       '../internals/array-iteration': 44
 9553    -1     } ],
 9554    -1     127: [ function(_dereq_, module, exports) {
 9555    -1       'use strict';
 9556    -1       var ArrayBufferViewCore = _dereq_('../internals/array-buffer-view-core');
 9557    -1       var $forEach = _dereq_('../internals/array-iteration').forEach;
 9558    -1       var aTypedArray = ArrayBufferViewCore.aTypedArray;
 9559    -1       ArrayBufferViewCore.exportProto('forEach', function forEach(callbackfn) {
 9560    -1         $forEach(aTypedArray(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
 9561    -1       });
 9562    -1     }, {
 9563    -1       '../internals/array-buffer-view-core': 39,
 9564    -1       '../internals/array-iteration': 44
 9565    -1     } ],
 9566    -1     128: [ function(_dereq_, module, exports) {
 9567    -1       'use strict';
 9568    -1       var TYPED_ARRAYS_CONSTRUCTORS_REQUIRES_WRAPPERS = _dereq_('../internals/typed-arrays-constructors-requires-wrappers');
 9569    -1       var ArrayBufferViewCore = _dereq_('../internals/array-buffer-view-core');
 9570    -1       var typedArrayFrom = _dereq_('../internals/typed-array-from');
 9571    -1       ArrayBufferViewCore.exportStatic('from', typedArrayFrom, TYPED_ARRAYS_CONSTRUCTORS_REQUIRES_WRAPPERS);
 9572    -1     }, {
 9573    -1       '../internals/array-buffer-view-core': 39,
 9574    -1       '../internals/typed-array-from': 115,
 9575    -1       '../internals/typed-arrays-constructors-requires-wrappers': 116
 9576    -1     } ],
 9577    -1     129: [ function(_dereq_, module, exports) {
 9578    -1       'use strict';
 9579    -1       var ArrayBufferViewCore = _dereq_('../internals/array-buffer-view-core');
 9580    -1       var $includes = _dereq_('../internals/array-includes').includes;
 9581    -1       var aTypedArray = ArrayBufferViewCore.aTypedArray;
 9582    -1       ArrayBufferViewCore.exportProto('includes', function includes(searchElement) {
 9583    -1         return $includes(aTypedArray(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);
 9584    -1       });
 9585    -1     }, {
 9586    -1       '../internals/array-buffer-view-core': 39,
 9587    -1       '../internals/array-includes': 43
 9588    -1     } ],
 9589    -1     130: [ function(_dereq_, module, exports) {
 9590    -1       'use strict';
 9591    -1       var ArrayBufferViewCore = _dereq_('../internals/array-buffer-view-core');
 9592    -1       var $indexOf = _dereq_('../internals/array-includes').indexOf;
 9593    -1       var aTypedArray = ArrayBufferViewCore.aTypedArray;
 9594    -1       ArrayBufferViewCore.exportProto('indexOf', function indexOf(searchElement) {
 9595    -1         return $indexOf(aTypedArray(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);
 9596    -1       });
 9597    -1     }, {
 9598    -1       '../internals/array-buffer-view-core': 39,
 9599    -1       '../internals/array-includes': 43
 9600    -1     } ],
 9601    -1     131: [ function(_dereq_, module, exports) {
 9602    -1       'use strict';
 9603    -1       var global = _dereq_('../internals/global');
 9604    -1       var ArrayBufferViewCore = _dereq_('../internals/array-buffer-view-core');
 9605    -1       var ArrayIterators = _dereq_('../modules/es.array.iterator');
 9606    -1       var wellKnownSymbol = _dereq_('../internals/well-known-symbol');
 9607    -1       var ITERATOR = wellKnownSymbol('iterator');
 9608    -1       var Uint8Array = global.Uint8Array;
 9609    -1       var arrayValues = ArrayIterators.values;
 9610    -1       var arrayKeys = ArrayIterators.keys;
 9611    -1       var arrayEntries = ArrayIterators.entries;
 9612    -1       var aTypedArray = ArrayBufferViewCore.aTypedArray;
 9613    -1       var exportProto = ArrayBufferViewCore.exportProto;
 9614    -1       var nativeTypedArrayIterator = Uint8Array && Uint8Array.prototype[ITERATOR];
 9615    -1       var CORRECT_ITER_NAME = !!nativeTypedArrayIterator && (nativeTypedArrayIterator.name == 'values' || nativeTypedArrayIterator.name == undefined);
 9616    -1       var typedArrayValues = function values() {
 9617    -1         return arrayValues.call(aTypedArray(this));
 9618    -1       };
 9619    -1       exportProto('entries', function entries() {
 9620    -1         return arrayEntries.call(aTypedArray(this));
 9621    -1       });
 9622    -1       exportProto('keys', function keys() {
 9623    -1         return arrayKeys.call(aTypedArray(this));
 9624    -1       });
 9625    -1       exportProto('values', typedArrayValues, !CORRECT_ITER_NAME);
 9626    -1       exportProto(ITERATOR, typedArrayValues, !CORRECT_ITER_NAME);
 9627    -1     }, {
 9628    -1       '../internals/array-buffer-view-core': 39,
 9629    -1       '../internals/global': 65,
 9630    -1       '../internals/well-known-symbol': 118,
 9631    -1       '../modules/es.array.iterator': 119
 9632    -1     } ],
 9633    -1     132: [ function(_dereq_, module, exports) {
 9634    -1       'use strict';
 9635    -1       var ArrayBufferViewCore = _dereq_('../internals/array-buffer-view-core');
 9636    -1       var aTypedArray = ArrayBufferViewCore.aTypedArray;
 9637    -1       var $join = [].join;
 9638    -1       ArrayBufferViewCore.exportProto('join', function join(separator) {
 9639    -1         return $join.apply(aTypedArray(this), arguments);
 9640    -1       });
 9641    -1     }, {
 9642    -1       '../internals/array-buffer-view-core': 39
 9643    -1     } ],
 9644    -1     133: [ function(_dereq_, module, exports) {
 9645    -1       'use strict';
 9646    -1       var ArrayBufferViewCore = _dereq_('../internals/array-buffer-view-core');
 9647    -1       var $lastIndexOf = _dereq_('../internals/array-last-index-of');
 9648    -1       var aTypedArray = ArrayBufferViewCore.aTypedArray;
 9649    -1       ArrayBufferViewCore.exportProto('lastIndexOf', function lastIndexOf(searchElement) {
 9650    -1         return $lastIndexOf.apply(aTypedArray(this), arguments);
 9651    -1       });
 9652    -1     }, {
 9653    -1       '../internals/array-buffer-view-core': 39,
 9654    -1       '../internals/array-last-index-of': 45
 9655    -1     } ],
 9656    -1     134: [ function(_dereq_, module, exports) {
 9657    -1       'use strict';
 9658    -1       var ArrayBufferViewCore = _dereq_('../internals/array-buffer-view-core');
 9659    -1       var $map = _dereq_('../internals/array-iteration').map;
 9660    -1       var speciesConstructor = _dereq_('../internals/species-constructor');
 9661    -1       var aTypedArray = ArrayBufferViewCore.aTypedArray;
 9662    -1       var aTypedArrayConstructor = ArrayBufferViewCore.aTypedArrayConstructor;
 9663    -1       ArrayBufferViewCore.exportProto('map', function map(mapfn) {
 9664    -1         return $map(aTypedArray(this), mapfn, arguments.length > 1 ? arguments[1] : undefined, function(O, length) {
 9665    -1           return new (aTypedArrayConstructor(speciesConstructor(O, O.constructor)))(length);
 9666    -1         });
 9667    -1       });
 9668    -1     }, {
 9669    -1       '../internals/array-buffer-view-core': 39,
 9670    -1       '../internals/array-iteration': 44,
 9671    -1       '../internals/species-constructor': 105
 9672    -1     } ],
 9673    -1     135: [ function(_dereq_, module, exports) {
 9674    -1       'use strict';
 9675    -1       var ArrayBufferViewCore = _dereq_('../internals/array-buffer-view-core');
 9676    -1       var TYPED_ARRAYS_CONSTRUCTORS_REQUIRES_WRAPPERS = _dereq_('../internals/typed-arrays-constructors-requires-wrappers');
 9677    -1       var aTypedArrayConstructor = ArrayBufferViewCore.aTypedArrayConstructor;
 9678    -1       ArrayBufferViewCore.exportStatic('of', function of() {
 9679    -1         var index = 0;
 9680    -1         var length = arguments.length;
 9681    -1         var result = new (aTypedArrayConstructor(this))(length);
 9682    -1         while (length > index) {
 9683    -1           result[index] = arguments[index++];
 9684    -1         }
 9685    -1         return result;
 9686    -1       }, TYPED_ARRAYS_CONSTRUCTORS_REQUIRES_WRAPPERS);
 9687    -1     }, {
 9688    -1       '../internals/array-buffer-view-core': 39,
 9689    -1       '../internals/typed-arrays-constructors-requires-wrappers': 116
 9690    -1     } ],
 9691    -1     136: [ function(_dereq_, module, exports) {
 9692    -1       'use strict';
 9693    -1       var ArrayBufferViewCore = _dereq_('../internals/array-buffer-view-core');
 9694    -1       var $reduceRight = _dereq_('../internals/array-reduce').right;
 9695    -1       var aTypedArray = ArrayBufferViewCore.aTypedArray;
 9696    -1       ArrayBufferViewCore.exportProto('reduceRight', function reduceRight(callbackfn) {
 9697    -1         return $reduceRight(aTypedArray(this), callbackfn, arguments.length, arguments.length > 1 ? arguments[1] : undefined);
 9698    -1       });
 9699    -1     }, {
 9700    -1       '../internals/array-buffer-view-core': 39,
 9701    -1       '../internals/array-reduce': 46
 9702    -1     } ],
 9703    -1     137: [ function(_dereq_, module, exports) {
 9704    -1       'use strict';
 9705    -1       var ArrayBufferViewCore = _dereq_('../internals/array-buffer-view-core');
 9706    -1       var $reduce = _dereq_('../internals/array-reduce').left;
 9707    -1       var aTypedArray = ArrayBufferViewCore.aTypedArray;
 9708    -1       ArrayBufferViewCore.exportProto('reduce', function reduce(callbackfn) {
 9709    -1         return $reduce(aTypedArray(this), callbackfn, arguments.length, arguments.length > 1 ? arguments[1] : undefined);
 9710    -1       });
 9711    -1     }, {
 9712    -1       '../internals/array-buffer-view-core': 39,
 9713    -1       '../internals/array-reduce': 46
 9714    -1     } ],
 9715    -1     138: [ function(_dereq_, module, exports) {
 9716    -1       'use strict';
 9717    -1       var ArrayBufferViewCore = _dereq_('../internals/array-buffer-view-core');
 9718    -1       var aTypedArray = ArrayBufferViewCore.aTypedArray;
 9719    -1       var floor = Math.floor;
 9720    -1       ArrayBufferViewCore.exportProto('reverse', function reverse() {
 9721    -1         var that = this;
 9722    -1         var length = aTypedArray(that).length;
 9723    -1         var middle = floor(length / 2);
 9724    -1         var index = 0;
 9725    -1         var value;
 9726    -1         while (index < middle) {
 9727    -1           value = that[index];
 9728    -1           that[index++] = that[--length];
 9729    -1           that[length] = value;
 9730    -1         }
 9731    -1         return that;
 9732    -1       });
 9733    -1     }, {
 9734    -1       '../internals/array-buffer-view-core': 39
 9735    -1     } ],
 9736    -1     139: [ function(_dereq_, module, exports) {
 9737    -1       'use strict';
 9738    -1       var ArrayBufferViewCore = _dereq_('../internals/array-buffer-view-core');
 9739    -1       var toLength = _dereq_('../internals/to-length');
 9740    -1       var toOffset = _dereq_('../internals/to-offset');
 9741    -1       var toObject = _dereq_('../internals/to-object');
 9742    -1       var fails = _dereq_('../internals/fails');
 9743    -1       var aTypedArray = ArrayBufferViewCore.aTypedArray;
 9744    -1       var FORCED = fails(function() {
 9745    -1         new Int8Array(1).set({});
 9746    -1       });
 9747    -1       ArrayBufferViewCore.exportProto('set', function set(arrayLike) {
 9748    -1         aTypedArray(this);
 9749    -1         var offset = toOffset(arguments.length > 1 ? arguments[1] : undefined, 1);
 9750    -1         var length = this.length;
 9751    -1         var src = toObject(arrayLike);
 9752    -1         var len = toLength(src.length);
 9753    -1         var index = 0;
 9754    -1         if (len + offset > length) {
 9755    -1           throw RangeError('Wrong length');
 9756    -1         }
 9757    -1         while (index < len) {
 9758    -1           this[offset + index] = src[index++];
 9759    -1         }
 9760    -1       }, FORCED);
 9761    -1     }, {
 9762    -1       '../internals/array-buffer-view-core': 39,
 9763    -1       '../internals/fails': 61,
 9764    -1       '../internals/to-length': 110,
 9765    -1       '../internals/to-object': 111,
 9766    -1       '../internals/to-offset': 112
 9767    -1     } ],
 9768    -1     140: [ function(_dereq_, module, exports) {
 9769    -1       'use strict';
 9770    -1       var ArrayBufferViewCore = _dereq_('../internals/array-buffer-view-core');
 9771    -1       var speciesConstructor = _dereq_('../internals/species-constructor');
 9772    -1       var fails = _dereq_('../internals/fails');
 9773    -1       var aTypedArray = ArrayBufferViewCore.aTypedArray;
 9774    -1       var aTypedArrayConstructor = ArrayBufferViewCore.aTypedArrayConstructor;
 9775    -1       var $slice = [].slice;
 9776    -1       var FORCED = fails(function() {
 9777    -1         new Int8Array(1).slice();
 9778    -1       });
 9779    -1       ArrayBufferViewCore.exportProto('slice', function slice(start, end) {
 9780    -1         var list = $slice.call(aTypedArray(this), start, end);
 9781    -1         var C = speciesConstructor(this, this.constructor);
 9782    -1         var index = 0;
 9783    -1         var length = list.length;
 9784    -1         var result = new (aTypedArrayConstructor(C))(length);
 9785    -1         while (length > index) {
 9786    -1           result[index] = list[index++];
 9787    -1         }
 9788    -1         return result;
 9789    -1       }, FORCED);
 9790    -1     }, {
 9791    -1       '../internals/array-buffer-view-core': 39,
 9792    -1       '../internals/fails': 61,
 9793    -1       '../internals/species-constructor': 105
 9794    -1     } ],
 9795    -1     141: [ function(_dereq_, module, exports) {
 9796    -1       'use strict';
 9797    -1       var ArrayBufferViewCore = _dereq_('../internals/array-buffer-view-core');
 9798    -1       var $some = _dereq_('../internals/array-iteration').some;
 9799    -1       var aTypedArray = ArrayBufferViewCore.aTypedArray;
 9800    -1       ArrayBufferViewCore.exportProto('some', function some(callbackfn) {
 9801    -1         return $some(aTypedArray(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
 9802    -1       });
 9803    -1     }, {
 9804    -1       '../internals/array-buffer-view-core': 39,
 9805    -1       '../internals/array-iteration': 44
 9806    -1     } ],
 9807    -1     142: [ function(_dereq_, module, exports) {
 9808    -1       'use strict';
 9809    -1       var ArrayBufferViewCore = _dereq_('../internals/array-buffer-view-core');
 9810    -1       var aTypedArray = ArrayBufferViewCore.aTypedArray;
 9811    -1       var $sort = [].sort;
 9812    -1       ArrayBufferViewCore.exportProto('sort', function sort(comparefn) {
 9813    -1         return $sort.call(aTypedArray(this), comparefn);
 9814    -1       });
 9815    -1     }, {
 9816    -1       '../internals/array-buffer-view-core': 39
 9817    -1     } ],
 9818    -1     143: [ function(_dereq_, module, exports) {
 9819    -1       'use strict';
 9820    -1       var ArrayBufferViewCore = _dereq_('../internals/array-buffer-view-core');
 9821    -1       var toLength = _dereq_('../internals/to-length');
 9822    -1       var toAbsoluteIndex = _dereq_('../internals/to-absolute-index');
 9823    -1       var speciesConstructor = _dereq_('../internals/species-constructor');
 9824    -1       var aTypedArray = ArrayBufferViewCore.aTypedArray;
 9825    -1       ArrayBufferViewCore.exportProto('subarray', function subarray(begin, end) {
 9826    -1         var O = aTypedArray(this);
 9827    -1         var length = O.length;
 9828    -1         var beginIndex = toAbsoluteIndex(begin, length);
 9829    -1         return new (speciesConstructor(O, O.constructor))(O.buffer, O.byteOffset + beginIndex * O.BYTES_PER_ELEMENT, toLength((end === undefined ? length : toAbsoluteIndex(end, length)) - beginIndex));
 9830    -1       });
 9831    -1     }, {
 9832    -1       '../internals/array-buffer-view-core': 39,
 9833    -1       '../internals/species-constructor': 105,
 9834    -1       '../internals/to-absolute-index': 106,
 9835    -1       '../internals/to-length': 110
 9836    -1     } ],
 9837    -1     144: [ function(_dereq_, module, exports) {
 9838    -1       'use strict';
 9839    -1       var global = _dereq_('../internals/global');
 9840    -1       var ArrayBufferViewCore = _dereq_('../internals/array-buffer-view-core');
 9841    -1       var fails = _dereq_('../internals/fails');
 9842    -1       var Int8Array = global.Int8Array;
 9843    -1       var aTypedArray = ArrayBufferViewCore.aTypedArray;
 9844    -1       var $toLocaleString = [].toLocaleString;
 9845    -1       var $slice = [].slice;
 9846    -1       var TO_LOCALE_STRING_BUG = !!Int8Array && fails(function() {
 9847    -1         $toLocaleString.call(new Int8Array(1));
 9848    -1       });
 9849    -1       var FORCED = fails(function() {
 9850    -1         return [ 1, 2 ].toLocaleString() != new Int8Array([ 1, 2 ]).toLocaleString();
 9851    -1       }) || !fails(function() {
 9852    -1         Int8Array.prototype.toLocaleString.call([ 1, 2 ]);
 9853    -1       });
 9854    -1       ArrayBufferViewCore.exportProto('toLocaleString', function toLocaleString() {
 9855    -1         return $toLocaleString.apply(TO_LOCALE_STRING_BUG ? $slice.call(aTypedArray(this)) : aTypedArray(this), arguments);
 9856    -1       }, FORCED);
 9857    -1     }, {
 9858    -1       '../internals/array-buffer-view-core': 39,
 9859    -1       '../internals/fails': 61,
 9860    -1       '../internals/global': 65
 9861    -1     } ],
 9862    -1     145: [ function(_dereq_, module, exports) {
 9863    -1       'use strict';
 9864    -1       var global = _dereq_('../internals/global');
 9865    -1       var ArrayBufferViewCore = _dereq_('../internals/array-buffer-view-core');
 9866    -1       var fails = _dereq_('../internals/fails');
 9867    -1       var Uint8Array = global.Uint8Array;
 9868    -1       var Uint8ArrayPrototype = Uint8Array && Uint8Array.prototype;
 9869    -1       var arrayToString = [].toString;
 9870    -1       var arrayJoin = [].join;
 9871    -1       if (fails(function() {
 9872    -1         arrayToString.call({});
 9873    -1       })) {
 9874    -1         arrayToString = function toString() {
 9875    -1           return arrayJoin.call(this);
 9876    -1         };
 9877    -1       }
 9878    -1       ArrayBufferViewCore.exportProto('toString', arrayToString, (Uint8ArrayPrototype || {}).toString != arrayToString);
 9879    -1     }, {
 9880    -1       '../internals/array-buffer-view-core': 39,
 9881    -1       '../internals/fails': 61,
 9882    -1       '../internals/global': 65
 9883    -1     } ],
 9884    -1     146: [ function(_dereq_, module, exports) {
 9885    -1       var typedArrayConstructor = _dereq_('../internals/typed-array-constructor');
 9886    -1       typedArrayConstructor('Uint32', 4, function(init) {
 9887    -1         return function Uint32Array(data, byteOffset, length) {
 9888    -1           return init(this, data, byteOffset, length);
 9889    -1         };
 9890    -1       });
 9891    -1     }, {
 9892    -1       '../internals/typed-array-constructor': 114
 9893    -1     } ],
 9894    -1     147: [ function(_dereq_, module, exports) {
 9895    -1       module.exports = {
 9896    -1         CssSelectorParser: _dereq_('./lib/css-selector-parser.js').CssSelectorParser
 9897    -1       };
 9898    -1     }, {
 9899    -1       './lib/css-selector-parser.js': 148
 9900    -1     } ],
 9901    -1     148: [ function(_dereq_, module, exports) {
 9902    -1       function CssSelectorParser() {
 9903    -1         this.pseudos = {};
 9904    -1         this.attrEqualityMods = {};
 9905    -1         this.ruleNestingOperators = {};
 9906    -1         this.substitutesEnabled = false;
 9907    -1       }
 9908    -1       CssSelectorParser.prototype.registerSelectorPseudos = function(name) {
 9909    -1         for (var j = 0, len = arguments.length; j < len; j++) {
 9910    -1           name = arguments[j];
 9911    -1           this.pseudos[name] = 'selector';
 9912    -1         }
 9913    -1         return this;
 9914    -1       };
 9915    -1       CssSelectorParser.prototype.unregisterSelectorPseudos = function(name) {
 9916    -1         for (var j = 0, len = arguments.length; j < len; j++) {
 9917    -1           name = arguments[j];
 9918    -1           delete this.pseudos[name];
 9919    -1         }
 9920    -1         return this;
 9921    -1       };
 9922    -1       CssSelectorParser.prototype.registerNumericPseudos = function(name) {
 9923    -1         for (var j = 0, len = arguments.length; j < len; j++) {
 9924    -1           name = arguments[j];
 9925    -1           this.pseudos[name] = 'numeric';
 9926    -1         }
 9927    -1         return this;
 9928    -1       };
 9929    -1       CssSelectorParser.prototype.unregisterNumericPseudos = function(name) {
 9930    -1         for (var j = 0, len = arguments.length; j < len; j++) {
 9931    -1           name = arguments[j];
 9932    -1           delete this.pseudos[name];
 9933    -1         }
 9934    -1         return this;
 9935    -1       };
 9936    -1       CssSelectorParser.prototype.registerNestingOperators = function(operator) {
 9937    -1         for (var j = 0, len = arguments.length; j < len; j++) {
 9938    -1           operator = arguments[j];
 9939    -1           this.ruleNestingOperators[operator] = true;
 9940    -1         }
 9941    -1         return this;
 9942    -1       };
 9943    -1       CssSelectorParser.prototype.unregisterNestingOperators = function(operator) {
 9944    -1         for (var j = 0, len = arguments.length; j < len; j++) {
 9945    -1           operator = arguments[j];
 9946    -1           delete this.ruleNestingOperators[operator];
 9947    -1         }
 9948    -1         return this;
 9949    -1       };
 9950    -1       CssSelectorParser.prototype.registerAttrEqualityMods = function(mod) {
 9951    -1         for (var j = 0, len = arguments.length; j < len; j++) {
 9952    -1           mod = arguments[j];
 9953    -1           this.attrEqualityMods[mod] = true;
 9954    -1         }
 9955    -1         return this;
 9956    -1       };
 9957    -1       CssSelectorParser.prototype.unregisterAttrEqualityMods = function(mod) {
 9958    -1         for (var j = 0, len = arguments.length; j < len; j++) {
 9959    -1           mod = arguments[j];
 9960    -1           delete this.attrEqualityMods[mod];
 9961    -1         }
 9962    -1         return this;
 9963    -1       };
 9964    -1       CssSelectorParser.prototype.enableSubstitutes = function() {
 9965    -1         this.substitutesEnabled = true;
 9966    -1         return this;
 9967    -1       };
 9968    -1       CssSelectorParser.prototype.disableSubstitutes = function() {
 9969    -1         this.substitutesEnabled = false;
 9970    -1         return this;
 9971    -1       };
 9972    -1       function isIdentStart(c) {
 9973    -1         return c >= 'a' && c <= 'z' || c >= 'A' && c <= 'Z' || c === '-' || c === '_';
 9974    -1       }
 9975    -1       function isIdent(c) {
 9976    -1         return c >= 'a' && c <= 'z' || c >= 'A' && c <= 'Z' || c >= '0' && c <= '9' || c === '-' || c === '_';
 9977    -1       }
 9978    -1       function isHex(c) {
 9979    -1         return c >= 'a' && c <= 'f' || c >= 'A' && c <= 'F' || c >= '0' && c <= '9';
 9980    -1       }
 9981    -1       function isDecimal(c) {
 9982    -1         return c >= '0' && c <= '9';
 9983    -1       }
 9984    -1       function isAttrMatchOperator(chr) {
 9985    -1         return chr === '=' || chr === '^' || chr === '$' || chr === '*' || chr === '~';
 9986    -1       }
 9987    -1       var identSpecialChars = {
 9988    -1         '!': true,
 9989    -1         '"': true,
 9990    -1         '#': true,
 9991    -1         $: true,
 9992    -1         '%': true,
 9993    -1         '&': true,
 9994    -1         '\'': true,
 9995    -1         '(': true,
 9996    -1         ')': true,
 9997    -1         '*': true,
 9998    -1         '+': true,
 9999    -1         ',': true,
10000    -1         '.': true,
10001    -1         '/': true,
10002    -1         ';': true,
10003    -1         '<': true,
10004    -1         '=': true,
10005    -1         '>': true,
10006    -1         '?': true,
10007    -1         '@': true,
10008    -1         '[': true,
10009    -1         '\\': true,
10010    -1         ']': true,
10011    -1         '^': true,
10012    -1         '`': true,
10013    -1         '{': true,
10014    -1         '|': true,
10015    -1         '}': true,
10016    -1         '~': true
10017    -1       };
10018    -1       var strReplacementsRev = {
10019    -1         '\n': '\\n',
10020    -1         '\r': '\\r',
10021    -1         '\t': '\\t',
10022    -1         '\f': '\\f',
10023    -1         '\v': '\\v'
10024    -1       };
10025    -1       var singleQuoteEscapeChars = {
10026    -1         n: '\n',
10027    -1         r: '\r',
10028    -1         t: '\t',
10029    -1         f: '\f',
10030    -1         '\\': '\\',
10031    -1         '\'': '\''
10032    -1       };
10033    -1       var doubleQuotesEscapeChars = {
10034    -1         n: '\n',
10035    -1         r: '\r',
10036    -1         t: '\t',
10037    -1         f: '\f',
10038    -1         '\\': '\\',
10039    -1         '"': '"'
10040    -1       };
10041    -1       function ParseContext(str, pos, pseudos, attrEqualityMods, ruleNestingOperators, substitutesEnabled) {
10042    -1         var chr, getIdent, getStr, l, skipWhitespace;
10043    -1         l = str.length;
10044    -1         chr = null;
10045    -1         getStr = function(quote, escapeTable) {
10046    -1           var esc, hex, result;
10047    -1           result = '';
10048    -1           pos++;
10049    -1           chr = str.charAt(pos);
10050    -1           while (pos < l) {
10051    -1             if (chr === quote) {
10052    -1               pos++;
10053    -1               return result;
10054    -1             } else if (chr === '\\') {
10055    -1               pos++;
10056    -1               chr = str.charAt(pos);
10057    -1               if (chr === quote) {
10058    -1                 result += quote;
10059    -1               } else if (esc = escapeTable[chr]) {
10060    -1                 result += esc;
10061    -1               } else if (isHex(chr)) {
10062    -1                 hex = chr;
10063    -1                 pos++;
10064    -1                 chr = str.charAt(pos);
10065    -1                 while (isHex(chr)) {
10066    -1                   hex += chr;
10067    -1                   pos++;
10068    -1                   chr = str.charAt(pos);
10069    -1                 }
10070    -1                 if (chr === ' ') {
10071    -1                   pos++;
10072    -1                   chr = str.charAt(pos);
10073    -1                 }
10074    -1                 result += String.fromCharCode(parseInt(hex, 16));
10075    -1                 continue;
10076    -1               } else {
10077    -1                 result += chr;
10078    -1               }
10079    -1             } else {
10080    -1               result += chr;
10081    -1             }
10082    -1             pos++;
10083    -1             chr = str.charAt(pos);
10084    -1           }
10085    -1           return result;
10086    -1         };
10087    -1         getIdent = function() {
10088    -1           var result = '';
10089    -1           chr = str.charAt(pos);
10090    -1           while (pos < l) {
10091    -1             if (isIdent(chr)) {
10092    -1               result += chr;
10093    -1             } else if (chr === '\\') {
10094    -1               pos++;
10095    -1               if (pos >= l) {
10096    -1                 throw Error('Expected symbol but end of file reached.');
10097    -1               }
10098    -1               chr = str.charAt(pos);
10099    -1               if (identSpecialChars[chr]) {
10100    -1                 result += chr;
10101    -1               } else if (isHex(chr)) {
10102    -1                 var hex = chr;
10103    -1                 pos++;
10104    -1                 chr = str.charAt(pos);
10105    -1                 while (isHex(chr)) {
10106    -1                   hex += chr;
10107    -1                   pos++;
10108    -1                   chr = str.charAt(pos);
10109    -1                 }
10110    -1                 if (chr === ' ') {
10111    -1                   pos++;
10112    -1                   chr = str.charAt(pos);
10113    -1                 }
10114    -1                 result += String.fromCharCode(parseInt(hex, 16));
10115    -1                 continue;
10116    -1               } else {
10117    -1                 result += chr;
10118    -1               }
10119    -1             } else {
10120    -1               return result;
10121    -1             }
10122    -1             pos++;
10123    -1             chr = str.charAt(pos);
10124    -1           }
10125    -1           return result;
10126    -1         };
10127    -1         skipWhitespace = function() {
10128    -1           chr = str.charAt(pos);
10129    -1           var result = false;
10130    -1           while (chr === ' ' || chr === '\t' || chr === '\n' || chr === '\r' || chr === '\f') {
10131    -1             result = true;
10132    -1             pos++;
10133    -1             chr = str.charAt(pos);
10134    -1           }
10135    -1           return result;
10136    -1         };
10137    -1         this.parse = function() {
10138    -1           var res = this.parseSelector();
10139    -1           if (pos < l) {
10140    -1             throw Error('Rule expected but "' + str.charAt(pos) + '" found.');
10141    -1           }
10142    -1           return res;
10143    -1         };
10144    -1         this.parseSelector = function() {
10145    -1           var res;
10146    -1           var selector = res = this.parseSingleSelector();
10147    -1           chr = str.charAt(pos);
10148    -1           while (chr === ',') {
10149    -1             pos++;
10150    -1             skipWhitespace();
10151    -1             if (res.type !== 'selectors') {
10152    -1               res = {
10153    -1                 type: 'selectors',
10154    -1                 selectors: [ selector ]
10155    -1               };
10156    -1             }
10157    -1             selector = this.parseSingleSelector();
10158    -1             if (!selector) {
10159    -1               throw Error('Rule expected after ",".');
10160    -1             }
10161    -1             res.selectors.push(selector);
10162    -1           }
10163    -1           return res;
10164    -1         };
10165    -1         this.parseSingleSelector = function() {
10166    -1           skipWhitespace();
10167    -1           var selector = {
10168    -1             type: 'ruleSet'
10169    -1           };
10170    -1           var rule = this.parseRule();
10171    -1           if (!rule) {
10172    -1             return null;
10173    -1           }
10174    -1           var currentRule = selector;
10175    -1           while (rule) {
10176    -1             rule.type = 'rule';
10177    -1             currentRule.rule = rule;
10178    -1             currentRule = rule;
10179    -1             skipWhitespace();
10180    -1             chr = str.charAt(pos);
10181    -1             if (pos >= l || chr === ',' || chr === ')') {
10182    -1               break;
10183    -1             }
10184    -1             if (ruleNestingOperators[chr]) {
10185    -1               var op = chr;
10186    -1               pos++;
10187    -1               skipWhitespace();
10188    -1               rule = this.parseRule();
10189    -1               if (!rule) {
10190    -1                 throw Error('Rule expected after "' + op + '".');
10191    -1               }
10192    -1               rule.nestingOperator = op;
10193    -1             } else {
10194    -1               rule = this.parseRule();
10195    -1               if (rule) {
10196    -1                 rule.nestingOperator = null;
10197    -1               }
10198    -1             }
10199    -1           }
10200    -1           return selector;
10201    -1         };
10202    -1         this.parseRule = function() {
10203    -1           var rule = null;
10204    -1           while (pos < l) {
10205    -1             chr = str.charAt(pos);
10206    -1             if (chr === '*') {
10207    -1               pos++;
10208    -1               (rule = rule || {}).tagName = '*';
10209    -1             } else if (isIdentStart(chr) || chr === '\\') {
10210    -1               (rule = rule || {}).tagName = getIdent();
10211    -1             } else if (chr === '.') {
10212    -1               pos++;
10213    -1               rule = rule || {};
10214    -1               (rule.classNames = rule.classNames || []).push(getIdent());
10215    -1             } else if (chr === '#') {
10216    -1               pos++;
10217    -1               (rule = rule || {}).id = getIdent();
10218    -1             } else if (chr === '[') {
10219    -1               pos++;
10220    -1               skipWhitespace();
10221    -1               var attr = {
10222    -1                 name: getIdent()
10223    -1               };
10224    -1               skipWhitespace();
10225    -1               if (chr === ']') {
10226    -1                 pos++;
10227    -1               } else {
10228    -1                 var operator = '';
10229    -1                 if (attrEqualityMods[chr]) {
10230    -1                   operator = chr;
10231    -1                   pos++;
10232    -1                   chr = str.charAt(pos);
10233    -1                 }
10234    -1                 if (pos >= l) {
10235    -1                   throw Error('Expected "=" but end of file reached.');
10236    -1                 }
10237    -1                 if (chr !== '=') {
10238    -1                   throw Error('Expected "=" but "' + chr + '" found.');
10239    -1                 }
10240    -1                 attr.operator = operator + '=';
10241    -1                 pos++;
10242    -1                 skipWhitespace();
10243    -1                 var attrValue = '';
10244    -1                 attr.valueType = 'string';
10245    -1                 if (chr === '"') {
10246    -1                   attrValue = getStr('"', doubleQuotesEscapeChars);
10247    -1                 } else if (chr === '\'') {
10248    -1                   attrValue = getStr('\'', singleQuoteEscapeChars);
10249    -1                 } else if (substitutesEnabled && chr === '$') {
10250    -1                   pos++;
10251    -1                   attrValue = getIdent();
10252    -1                   attr.valueType = 'substitute';
10253    -1                 } else {
10254    -1                   while (pos < l) {
10255    -1                     if (chr === ']') {
10256    -1                       break;
10257    -1                     }
10258    -1                     attrValue += chr;
10259    -1                     pos++;
10260    -1                     chr = str.charAt(pos);
10261    -1                   }
10262    -1                   attrValue = attrValue.trim();
10263    -1                 }
10264    -1                 skipWhitespace();
10265    -1                 if (pos >= l) {
10266    -1                   throw Error('Expected "]" but end of file reached.');
10267    -1                 }
10268    -1                 if (chr !== ']') {
10269    -1                   throw Error('Expected "]" but "' + chr + '" found.');
10270    -1                 }
10271    -1                 pos++;
10272    -1                 attr.value = attrValue;
10273    -1               }
10274    -1               rule = rule || {};
10275    -1               (rule.attrs = rule.attrs || []).push(attr);
10276    -1             } else if (chr === ':') {
10277    -1               pos++;
10278    -1               var pseudoName = getIdent();
10279    -1               var pseudo = {
10280    -1                 name: pseudoName
10281    -1               };
10282    -1               if (chr === '(') {
10283    -1                 pos++;
10284    -1                 var value = '';
10285    -1                 skipWhitespace();
10286    -1                 if (pseudos[pseudoName] === 'selector') {
10287    -1                   pseudo.valueType = 'selector';
10288    -1                   value = this.parseSelector();
10289    -1                 } else {
10290    -1                   pseudo.valueType = pseudos[pseudoName] || 'string';
10291    -1                   if (chr === '"') {
10292    -1                     value = getStr('"', doubleQuotesEscapeChars);
10293    -1                   } else if (chr === '\'') {
10294    -1                     value = getStr('\'', singleQuoteEscapeChars);
10295    -1                   } else if (substitutesEnabled && chr === '$') {
10296    -1                     pos++;
10297    -1                     value = getIdent();
10298    -1                     pseudo.valueType = 'substitute';
10299    -1                   } else {
10300    -1                     while (pos < l) {
10301    -1                       if (chr === ')') {
10302    -1                         break;
10303    -1                       }
10304    -1                       value += chr;
10305    -1                       pos++;
10306    -1                       chr = str.charAt(pos);
10307    -1                     }
10308    -1                     value = value.trim();
10309    -1                   }
10310    -1                   skipWhitespace();
10311    -1                 }
10312    -1                 if (pos >= l) {
10313    -1                   throw Error('Expected ")" but end of file reached.');
10314    -1                 }
10315    -1                 if (chr !== ')') {
10316    -1                   throw Error('Expected ")" but "' + chr + '" found.');
10317    -1                 }
10318    -1                 pos++;
10319    -1                 pseudo.value = value;
10320    -1               }
10321    -1               rule = rule || {};
10322    -1               (rule.pseudos = rule.pseudos || []).push(pseudo);
10323    -1             } else {
10324    -1               break;
10325    -1             }
10326    -1           }
10327    -1           return rule;
10328    -1         };
10329    -1         return this;
10330    -1       }
10331    -1       CssSelectorParser.prototype.parse = function(str) {
10332    -1         var context = new ParseContext(str, 0, this.pseudos, this.attrEqualityMods, this.ruleNestingOperators, this.substitutesEnabled);
10333    -1         return context.parse();
10334    -1       };
10335    -1       CssSelectorParser.prototype.escapeIdentifier = function(s) {
10336    -1         var result = '';
10337    -1         var i = 0;
10338    -1         var len = s.length;
10339    -1         while (i < len) {
10340    -1           var chr = s.charAt(i);
10341    -1           if (identSpecialChars[chr]) {
10342    -1             result += '\\' + chr;
10343    -1           } else {
10344    -1             if (!(chr === '_' || chr === '-' || chr >= 'A' && chr <= 'Z' || chr >= 'a' && chr <= 'z' || i !== 0 && chr >= '0' && chr <= '9')) {
10345    -1               var charCode = chr.charCodeAt(0);
10346    -1               if ((charCode & 63488) === 55296) {
10347    -1                 var extraCharCode = s.charCodeAt(i++);
10348    -1                 if ((charCode & 64512) !== 55296 || (extraCharCode & 64512) !== 56320) {
10349    -1                   throw Error('UCS-2(decode): illegal sequence');
10350    -1                 }
10351    -1                 charCode = ((charCode & 1023) << 10) + (extraCharCode & 1023) + 65536;
10352    -1               }
10353    -1               result += '\\' + charCode.toString(16) + ' ';
10354    -1             } else {
10355    -1               result += chr;
10356    -1             }
10357    -1           }
10358    -1           i++;
10359    -1         }
10360    -1         return result;
10361    -1       };
10362    -1       CssSelectorParser.prototype.escapeStr = function(s) {
10363    -1         var result = '';
10364    -1         var i = 0;
10365    -1         var len = s.length;
10366    -1         var chr, replacement;
10367    -1         while (i < len) {
10368    -1           chr = s.charAt(i);
10369    -1           if (chr === '"') {
10370    -1             chr = '\\"';
10371    -1           } else if (chr === '\\') {
10372    -1             chr = '\\\\';
10373    -1           } else if (replacement = strReplacementsRev[chr]) {
10374    -1             chr = replacement;
10375    -1           }
10376    -1           result += chr;
10377    -1           i++;
10378    -1         }
10379    -1         return '"' + result + '"';
10380    -1       };
10381    -1       CssSelectorParser.prototype.render = function(path) {
10382    -1         return this._renderEntity(path).trim();
10383    -1       };
10384    -1       CssSelectorParser.prototype._renderEntity = function(entity) {
10385    -1         var currentEntity, parts, res;
10386    -1         res = '';
10387    -1         switch (entity.type) {
10388    -1          case 'ruleSet':
10389    -1           currentEntity = entity.rule;
10390    -1           parts = [];
10391    -1           while (currentEntity) {
10392    -1             if (currentEntity.nestingOperator) {
10393    -1               parts.push(currentEntity.nestingOperator);
10394    -1             }
10395    -1             parts.push(this._renderEntity(currentEntity));
10396    -1             currentEntity = currentEntity.rule;
10397    -1           }
10398    -1           res = parts.join(' ');
10399    -1           break;
10400    -1 
10401    -1          case 'selectors':
10402    -1           res = entity.selectors.map(this._renderEntity, this).join(', ');
10403    -1           break;
10404    -1 
10405    -1          case 'rule':
10406    -1           if (entity.tagName) {
10407    -1             if (entity.tagName === '*') {
10408    -1               res = '*';
10409    -1             } else {
10410    -1               res = this.escapeIdentifier(entity.tagName);
10411    -1             }
10412    -1           }
10413    -1           if (entity.id) {
10414    -1             res += '#' + this.escapeIdentifier(entity.id);
10415    -1           }
10416    -1           if (entity.classNames) {
10417    -1             res += entity.classNames.map(function(cn) {
10418    -1               return '.' + this.escapeIdentifier(cn);
10419    -1             }, this).join('');
10420    -1           }
10421    -1           if (entity.attrs) {
10422    -1             res += entity.attrs.map(function(attr) {
10423    -1               if (attr.operator) {
10424    -1                 if (attr.valueType === 'substitute') {
10425    -1                   return '[' + this.escapeIdentifier(attr.name) + attr.operator + '$' + attr.value + ']';
10426    -1                 } else {
10427    -1                   return '[' + this.escapeIdentifier(attr.name) + attr.operator + this.escapeStr(attr.value) + ']';
10428    -1                 }
10429    -1               } else {
10430    -1                 return '[' + this.escapeIdentifier(attr.name) + ']';
10431    -1               }
10432    -1             }, this).join('');
10433    -1           }
10434    -1           if (entity.pseudos) {
10435    -1             res += entity.pseudos.map(function(pseudo) {
10436    -1               if (pseudo.valueType) {
10437    -1                 if (pseudo.valueType === 'selector') {
10438    -1                   return ':' + this.escapeIdentifier(pseudo.name) + '(' + this._renderEntity(pseudo.value) + ')';
10439    -1                 } else if (pseudo.valueType === 'substitute') {
10440    -1                   return ':' + this.escapeIdentifier(pseudo.name) + '($' + pseudo.value + ')';
10441    -1                 } else if (pseudo.valueType === 'numeric') {
10442    -1                   return ':' + this.escapeIdentifier(pseudo.name) + '(' + pseudo.value + ')';
10443    -1                 } else {
10444    -1                   return ':' + this.escapeIdentifier(pseudo.name) + '(' + this.escapeIdentifier(pseudo.value) + ')';
10445    -1                 }
10446    -1               } else {
10447    -1                 return ':' + this.escapeIdentifier(pseudo.name);
10448    -1               }
10449    -1             }, this).join('');
10450    -1           }
10451    -1           break;
10452    -1 
10453    -1          default:
10454    -1           throw Error('Unknown entity type: "' + entity.type(+'".'));
10455    -1         }
10456    -1         return res;
10457    -1       };
10458    -1       exports.CssSelectorParser = CssSelectorParser;
10459    -1     }, {} ],
10460    -1     149: [ function(_dereq_, module, exports) {
10461    -1       'use strict';
10462    -1       var assign = _dereq_('es5-ext/object/assign'), normalizeOpts = _dereq_('es5-ext/object/normalize-options'), isCallable = _dereq_('es5-ext/object/is-callable'), contains = _dereq_('es5-ext/string/#/contains'), d;
10463    -1       d = module.exports = function(dscr, value) {
10464    -1         var c, e, w, options, desc;
10465    -1         if (arguments.length < 2 || typeof dscr !== 'string') {
10466    -1           options = value;
10467    -1           value = dscr;
10468    -1           dscr = null;
10469    -1         } else {
10470    -1           options = arguments[2];
10471    -1         }
10472    -1         if (dscr == null) {
10473    -1           c = w = true;
10474    -1           e = false;
10475    -1         } else {
10476    -1           c = contains.call(dscr, 'c');
10477    -1           e = contains.call(dscr, 'e');
10478    -1           w = contains.call(dscr, 'w');
10479    -1         }
10480    -1         desc = {
10481    -1           value: value,
10482    -1           configurable: c,
10483    -1           enumerable: e,
10484    -1           writable: w
10485    -1         };
10486    -1         return !options ? desc : assign(normalizeOpts(options), desc);
10487    -1       };
10488    -1       d.gs = function(dscr, get, set) {
10489    -1         var c, e, options, desc;
10490    -1         if (typeof dscr !== 'string') {
10491    -1           options = set;
10492    -1           set = get;
10493    -1           get = dscr;
10494    -1           dscr = null;
10495    -1         } else {
10496    -1           options = arguments[3];
10497    -1         }
10498    -1         if (get == null) {
10499    -1           get = undefined;
10500    -1         } else if (!isCallable(get)) {
10501    -1           options = get;
10502    -1           get = set = undefined;
10503    -1         } else if (set == null) {
10504    -1           set = undefined;
10505    -1         } else if (!isCallable(set)) {
10506    -1           options = set;
10507    -1           set = undefined;
10508    -1         }
10509    -1         if (dscr == null) {
10510    -1           c = true;
10511    -1           e = false;
10512    -1         } else {
10513    -1           c = contains.call(dscr, 'c');
10514    -1           e = contains.call(dscr, 'e');
10515    -1         }
10516    -1         desc = {
10517    -1           get: get,
10518    -1           set: set,
10519    -1           configurable: c,
10520    -1           enumerable: e
10521    -1         };
10522    -1         return !options ? desc : assign(normalizeOpts(options), desc);
10523    -1       };
10524    -1     }, {
10525    -1       'es5-ext/object/assign': 170,
10526    -1       'es5-ext/object/is-callable': 174,
10527    -1       'es5-ext/object/normalize-options': 182,
10528    -1       'es5-ext/string/#/contains': 189
10529    -1     } ],
10530    -1     150: [ function(_dereq_, module, exports) {
10531    -1       'use strict';
10532    -1       module.exports = function() {
10533    -1         return /\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F|\uD83D\uDC68(?:\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68\uD83C\uDFFB|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|[\u2695\u2696\u2708]\uFE0F|\uD83D[\uDC66\uDC67]|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708])\uFE0F|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C[\uDFFB-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)\uD83C\uDFFB|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB\uDFFC])|\uD83D\uDC69(?:\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB-\uDFFD])|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|(?:(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)\uFE0F|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\u200D[\u2640\u2642])|\uD83C\uDFF4\u200D\u2620)\uFE0F|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF4\uD83C\uDDF2|\uD83C\uDDF6\uD83C\uDDE6|[#\*0-9]\uFE0F\u20E3|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270A-\u270D]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC70\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDCAA\uDD74\uDD7A\uDD90\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD36\uDDB5\uDDB6\uDDBB\uDDD2-\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5\uDEEB\uDEEC\uDEF4-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g;
10534    -1       };
10535    -1     }, {} ],
10536    -1     151: [ function(_dereq_, module, exports) {
10537    -1       'use strict';
10538    -1       var numberIsNaN = _dereq_('../../number/is-nan'), toPosInt = _dereq_('../../number/to-pos-integer'), value = _dereq_('../../object/valid-value'), indexOf = Array.prototype.indexOf, objHasOwnProperty = Object.prototype.hasOwnProperty, abs = Math.abs, floor = Math.floor;
10539    -1       module.exports = function(searchElement) {
10540    -1         var i, length, fromIndex, val;
10541    -1         if (!numberIsNaN(searchElement)) {
10542    -1           return indexOf.apply(this, arguments);
10543    -1         }
10544    -1         length = toPosInt(value(this).length);
10545    -1         fromIndex = arguments[1];
10546    -1         if (isNaN(fromIndex)) {
10547    -1           fromIndex = 0;
10548    -1         } else if (fromIndex >= 0) {
10549    -1           fromIndex = floor(fromIndex);
10550    -1         } else {
10551    -1           fromIndex = toPosInt(this.length) - floor(abs(fromIndex));
10552    -1         }
10553    -1         for (i = fromIndex; i < length; ++i) {
10554    -1           if (objHasOwnProperty.call(this, i)) {
10555    -1             val = this[i];
10556    -1             if (numberIsNaN(val)) {
10557    -1               return i;
10558    -1             }
10559    -1           }
10560    -1         }
10561    -1         return -1;
10562    -1       };
10563    -1     }, {
10564    -1       '../../number/is-nan': 164,
10565    -1       '../../number/to-pos-integer': 168,
10566    -1       '../../object/valid-value': 185
10567    -1     } ],
10568    -1     152: [ function(_dereq_, module, exports) {
10569    -1       'use strict';
10570    -1       module.exports = _dereq_('./is-implemented')() ? Array.from : _dereq_('./shim');
10571    -1     }, {
10572    -1       './is-implemented': 153,
10573    -1       './shim': 154
10574    -1     } ],
10575    -1     153: [ function(_dereq_, module, exports) {
10576    -1       'use strict';
10577    -1       module.exports = function() {
10578    -1         var from = Array.from, arr, result;
10579    -1         if (typeof from !== 'function') {
10580    -1           return false;
10581    -1         }
10582    -1         arr = [ 'raz', 'dwa' ];
10583    -1         result = from(arr);
10584    -1         return Boolean(result && result !== arr && result[1] === 'dwa');
10585    -1       };
10586    -1     }, {} ],
10587    -1     154: [ function(_dereq_, module, exports) {
10588    -1       'use strict';
10589    -1       var iteratorSymbol = _dereq_('es6-symbol').iterator, isArguments = _dereq_('../../function/is-arguments'), isFunction = _dereq_('../../function/is-function'), toPosInt = _dereq_('../../number/to-pos-integer'), callable = _dereq_('../../object/valid-callable'), validValue = _dereq_('../../object/valid-value'), isValue = _dereq_('../../object/is-value'), isString = _dereq_('../../string/is-string'), isArray = Array.isArray, call = Function.prototype.call, desc = {
10590    -1         configurable: true,
10591    -1         enumerable: true,
10592    -1         writable: true,
10593    -1         value: null
10594    -1       }, defineProperty = Object.defineProperty;
10595    -1       module.exports = function(arrayLike) {
10596    -1         var mapFn = arguments[1], thisArg = arguments[2], Context, i, j, arr, length, code, iterator, result, getIterator, value;
10597    -1         arrayLike = Object(validValue(arrayLike));
10598    -1         if (isValue(mapFn)) {
10599    -1           callable(mapFn);
10600    -1         }
10601    -1         if (!this || this === Array || !isFunction(this)) {
10602    -1           if (!mapFn) {
10603    -1             if (isArguments(arrayLike)) {
10604    -1               length = arrayLike.length;
10605    -1               if (length !== 1) {
10606    -1                 return Array.apply(null, arrayLike);
10607    -1               }
10608    -1               arr = new Array(1);
10609    -1               arr[0] = arrayLike[0];
10610    -1               return arr;
10611    -1             }
10612    -1             if (isArray(arrayLike)) {
10613    -1               arr = new Array(length = arrayLike.length);
10614    -1               for (i = 0; i < length; ++i) {
10615    -1                 arr[i] = arrayLike[i];
10616    -1               }
10617    -1               return arr;
10618    -1             }
10619    -1           }
10620    -1           arr = [];
10621    -1         } else {
10622    -1           Context = this;
10623    -1         }
10624    -1         if (!isArray(arrayLike)) {
10625    -1           if ((getIterator = arrayLike[iteratorSymbol]) !== undefined) {
10626    -1             iterator = callable(getIterator).call(arrayLike);
10627    -1             if (Context) {
10628    -1               arr = new Context();
10629    -1             }
10630    -1             result = iterator.next();
10631    -1             i = 0;
10632    -1             while (!result.done) {
10633    -1               value = mapFn ? call.call(mapFn, thisArg, result.value, i) : result.value;
10634    -1               if (Context) {
10635    -1                 desc.value = value;
10636    -1                 defineProperty(arr, i, desc);
10637    -1               } else {
10638    -1                 arr[i] = value;
10639    -1               }
10640    -1               result = iterator.next();
10641    -1               ++i;
10642    -1             }
10643    -1             length = i;
10644    -1           } else if (isString(arrayLike)) {
10645    -1             length = arrayLike.length;
10646    -1             if (Context) {
10647    -1               arr = new Context();
10648    -1             }
10649    -1             for (i = 0, j = 0; i < length; ++i) {
10650    -1               value = arrayLike[i];
10651    -1               if (i + 1 < length) {
10652    -1                 code = value.charCodeAt(0);
10653    -1                 if (code >= 55296 && code <= 56319) {
10654    -1                   value += arrayLike[++i];
10655    -1                 }
10656    -1               }
10657    -1               value = mapFn ? call.call(mapFn, thisArg, value, j) : value;
10658    -1               if (Context) {
10659    -1                 desc.value = value;
10660    -1                 defineProperty(arr, j, desc);
10661    -1               } else {
10662    -1                 arr[j] = value;
10663    -1               }
10664    -1               ++j;
10665    -1             }
10666    -1             length = j;
10667    -1           }
10668    -1         }
10669    -1         if (length === undefined) {
10670    -1           length = toPosInt(arrayLike.length);
10671    -1           if (Context) {
10672    -1             arr = new Context(length);
10673    -1           }
10674    -1           for (i = 0; i < length; ++i) {
10675    -1             value = mapFn ? call.call(mapFn, thisArg, arrayLike[i], i) : arrayLike[i];
10676    -1             if (Context) {
10677    -1               desc.value = value;
10678    -1               defineProperty(arr, i, desc);
10679    -1             } else {
10680    -1               arr[i] = value;
10681    -1             }
10682    -1           }
10683    -1         }
10684    -1         if (Context) {
10685    -1           desc.value = null;
10686    -1           arr.length = length;
10687    -1         }
10688    -1         return arr;
10689    -1       };
10690    -1     }, {
10691    -1       '../../function/is-arguments': 158,
10692    -1       '../../function/is-function': 159,
10693    -1       '../../number/to-pos-integer': 168,
10694    -1       '../../object/is-value': 176,
10695    -1       '../../object/valid-callable': 184,
10696    -1       '../../object/valid-value': 185,
10697    -1       '../../string/is-string': 192,
10698    -1       'es6-symbol': 195
10699    -1     } ],
10700    -1     155: [ function(_dereq_, module, exports) {
10701    -1       'use strict';
10702    -1       var from = _dereq_('./from'), isArray = Array.isArray;
10703    -1       module.exports = function(arrayLike) {
10704    -1         return isArray(arrayLike) ? arrayLike : from(arrayLike);
10705    -1       };
10706    -1     }, {
10707    -1       './from': 152
10708    -1     } ],
10709    -1     156: [ function(_dereq_, module, exports) {
10710    -1       'use strict';
10711    -1       var assign = _dereq_('../object/assign'), isObject = _dereq_('../object/is-object'), isValue = _dereq_('../object/is-value'), captureStackTrace = Error.captureStackTrace;
10712    -1       exports = module.exports = function(message) {
10713    -1         var err = new Error(message), code = arguments[1], ext = arguments[2];
10714    -1         if (!isValue(ext)) {
10715    -1           if (isObject(code)) {
10716    -1             ext = code;
10717    -1             code = null;
10718    -1           }
10719    -1         }
10720    -1         if (isValue(ext)) {
10721    -1           assign(err, ext);
10722    -1         }
10723    -1         if (isValue(code)) {
10724    -1           err.code = code;
10725    -1         }
10726    -1         if (captureStackTrace) {
10727    -1           captureStackTrace(err, exports);
10728    -1         }
10729    -1         return err;
10730    -1       };
10731    -1     }, {
10732    -1       '../object/assign': 170,
10733    -1       '../object/is-object': 175,
10734    -1       '../object/is-value': 176
10735    -1     } ],
10736    -1     157: [ function(_dereq_, module, exports) {
10737    -1       'use strict';
10738    -1       var toPosInt = _dereq_('../number/to-pos-integer');
10739    -1       var test = function(arg1, arg2) {
10740    -1         return arg2;
10741    -1       };
10742    -1       var desc, defineProperty, generate, mixin;
10743    -1       try {
10744    -1         Object.defineProperty(test, 'length', {
10745    -1           configurable: true,
10746    -1           writable: false,
10747    -1           enumerable: false,
10748    -1           value: 1
10749    -1         });
10750    -1       } catch (ignore) {}
10751    -1       if (test.length === 1) {
10752    -1         desc = {
10753    -1           configurable: true,
10754    -1           writable: false,
10755    -1           enumerable: false
10756    -1         };
10757    -1         defineProperty = Object.defineProperty;
10758    -1         module.exports = function(fn, length) {
10759    -1           length = toPosInt(length);
10760    -1           if (fn.length === length) {
10761    -1             return fn;
10762    -1           }
10763    -1           desc.value = length;
10764    -1           return defineProperty(fn, 'length', desc);
10765    -1         };
10766    -1       } else {
10767    -1         mixin = _dereq_('../object/mixin');
10768    -1         generate = function() {
10769    -1           var cache = [];
10770    -1           return function(length) {
10771    -1             var args, i = 0;
10772    -1             if (cache[length]) {
10773    -1               return cache[length];
10774    -1             }
10775    -1             args = [];
10776    -1             while (length--) {
10777    -1               args.push('a' + (++i).toString(36));
10778    -1             }
10779    -1             return new Function('fn', 'return function (' + args.join(', ') + ') { return fn.apply(this, arguments); };');
10780    -1           };
10781    -1         }();
10782    -1         module.exports = function(src, length) {
10783    -1           var target;
10784    -1           length = toPosInt(length);
10785    -1           if (src.length === length) {
10786    -1             return src;
10787    -1           }
10788    -1           target = generate(length)(src);
10789    -1           try {
10790    -1             mixin(target, src);
10791    -1           } catch (ignore) {}
10792    -1           return target;
10793    -1         };
10794    -1       }
10795    -1     }, {
10796    -1       '../number/to-pos-integer': 168,
10797    -1       '../object/mixin': 181
10798    -1     } ],
10799    -1     158: [ function(_dereq_, module, exports) {
10800    -1       'use strict';
10801    -1       var objToString = Object.prototype.toString, id = objToString.call(function() {
10802    -1         return arguments;
10803    -1       }());
10804    -1       module.exports = function(value) {
10805    -1         return objToString.call(value) === id;
10806    -1       };
10807    -1     }, {} ],
10808    -1     159: [ function(_dereq_, module, exports) {
10809    -1       'use strict';
10810    -1       var objToString = Object.prototype.toString, id = objToString.call(_dereq_('./noop'));
10811    -1       module.exports = function(value) {
10812    -1         return typeof value === 'function' && objToString.call(value) === id;
10813    -1       };
10814    -1     }, {
10815    -1       './noop': 160
10816    -1     } ],
10817    -1     160: [ function(_dereq_, module, exports) {
10818    -1       'use strict';
10819    -1       module.exports = function() {};
10820    -1     }, {} ],
10821    -1     161: [ function(_dereq_, module, exports) {
10822    -1       'use strict';
10823    -1       module.exports = _dereq_('./is-implemented')() ? Math.sign : _dereq_('./shim');
10824    -1     }, {
10825    -1       './is-implemented': 162,
10826    -1       './shim': 163
10827    -1     } ],
10828    -1     162: [ function(_dereq_, module, exports) {
10829    -1       'use strict';
10830    -1       module.exports = function() {
10831    -1         var sign = Math.sign;
10832    -1         if (typeof sign !== 'function') {
10833    -1           return false;
10834    -1         }
10835    -1         return sign(10) === 1 && sign(-20) === -1;
10836    -1       };
10837    -1     }, {} ],
10838    -1     163: [ function(_dereq_, module, exports) {
10839    -1       'use strict';
10840    -1       module.exports = function(value) {
10841    -1         value = Number(value);
10842    -1         if (isNaN(value) || value === 0) {
10843    -1           return value;
10844    -1         }
10845    -1         return value > 0 ? 1 : -1;
10846    -1       };
10847    -1     }, {} ],
10848    -1     164: [ function(_dereq_, module, exports) {
10849    -1       'use strict';
10850    -1       module.exports = _dereq_('./is-implemented')() ? Number.isNaN : _dereq_('./shim');
10851    -1     }, {
10852    -1       './is-implemented': 165,
10853    -1       './shim': 166
10854    -1     } ],
10855    -1     165: [ function(_dereq_, module, exports) {
10856    -1       'use strict';
10857    -1       module.exports = function() {
10858    -1         var numberIsNaN = Number.isNaN;
10859    -1         if (typeof numberIsNaN !== 'function') {
10860    -1           return false;
10861    -1         }
10862    -1         return !numberIsNaN({}) && numberIsNaN(NaN) && !numberIsNaN(34);
10863    -1       };
10864    -1     }, {} ],
10865    -1     166: [ function(_dereq_, module, exports) {
10866    -1       'use strict';
10867    -1       module.exports = function(value) {
10868    -1         return value !== value;
10869    -1       };
10870    -1     }, {} ],
10871    -1     167: [ function(_dereq_, module, exports) {
10872    -1       'use strict';
10873    -1       var sign = _dereq_('../math/sign'), abs = Math.abs, floor = Math.floor;
10874    -1       module.exports = function(value) {
10875    -1         if (isNaN(value)) {
10876    -1           return 0;
10877    -1         }
10878    -1         value = Number(value);
10879    -1         if (value === 0 || !isFinite(value)) {
10880    -1           return value;
10881    -1         }
10882    -1         return sign(value) * floor(abs(value));
10883    -1       };
10884    -1     }, {
10885    -1       '../math/sign': 161
10886    -1     } ],
10887    -1     168: [ function(_dereq_, module, exports) {
10888    -1       'use strict';
10889    -1       var toInteger = _dereq_('./to-integer'), max = Math.max;
10890    -1       module.exports = function(value) {
10891    -1         return max(0, toInteger(value));
10892    -1       };
10893    -1     }, {
10894    -1       './to-integer': 167
10895    -1     } ],
10896    -1     169: [ function(_dereq_, module, exports) {
10897    -1       'use strict';
10898    -1       var callable = _dereq_('./valid-callable'), value = _dereq_('./valid-value'), bind = Function.prototype.bind, call = Function.prototype.call, keys = Object.keys, objPropertyIsEnumerable = Object.prototype.propertyIsEnumerable;
10899    -1       module.exports = function(method, defVal) {
10900    -1         return function(obj, cb) {
10901    -1           var list, thisArg = arguments[2], compareFn = arguments[3];
10902    -1           obj = Object(value(obj));
10903    -1           callable(cb);
10904    -1           list = keys(obj);
10905    -1           if (compareFn) {
10906    -1             list.sort(typeof compareFn === 'function' ? bind.call(compareFn, obj) : undefined);
10907    -1           }
10908    -1           if (typeof method !== 'function') {
10909    -1             method = list[method];
10910    -1           }
10911    -1           return call.call(method, list, function(key, index) {
10912    -1             if (!objPropertyIsEnumerable.call(obj, key)) {
10913    -1               return defVal;
10914    -1             }
10915    -1             return call.call(cb, thisArg, obj[key], key, obj, index);
10916    -1           });
10917    -1         };
10918    -1       };
10919    -1     }, {
10920    -1       './valid-callable': 184,
10921    -1       './valid-value': 185
10922    -1     } ],
10923    -1     170: [ function(_dereq_, module, exports) {
10924    -1       'use strict';
10925    -1       module.exports = _dereq_('./is-implemented')() ? Object.assign : _dereq_('./shim');
10926    -1     }, {
10927    -1       './is-implemented': 171,
10928    -1       './shim': 172
10929    -1     } ],
10930    -1     171: [ function(_dereq_, module, exports) {
10931    -1       'use strict';
10932    -1       module.exports = function() {
10933    -1         var assign = Object.assign, obj;
10934    -1         if (typeof assign !== 'function') {
10935    -1           return false;
10936    -1         }
10937    -1         obj = {
10938    -1           foo: 'raz'
10939    -1         };
10940    -1         assign(obj, {
10941    -1           bar: 'dwa'
10942    -1         }, {
10943    -1           trzy: 'trzy'
10944    -1         });
10945    -1         return obj.foo + obj.bar + obj.trzy === 'razdwatrzy';
10946    -1       };
10947    -1     }, {} ],
10948    -1     172: [ function(_dereq_, module, exports) {
10949    -1       'use strict';
10950    -1       var keys = _dereq_('../keys'), value = _dereq_('../valid-value'), max = Math.max;
10951    -1       module.exports = function(dest, src) {
10952    -1         var error, i, length = max(arguments.length, 2), assign;
10953    -1         dest = Object(value(dest));
10954    -1         assign = function(key) {
10955    -1           try {
10956    -1             dest[key] = src[key];
10957    -1           } catch (e) {
10958    -1             if (!error) {
10959    -1               error = e;
10960    -1             }
10961    -1           }
10962    -1         };
10963    -1         for (i = 1; i < length; ++i) {
10964    -1           src = arguments[i];
10965    -1           keys(src).forEach(assign);
10966    -1         }
10967    -1         if (error !== undefined) {
10968    -1           throw error;
10969    -1         }
10970    -1         return dest;
10971    -1       };
10972    -1     }, {
10973    -1       '../keys': 177,
10974    -1       '../valid-value': 185
10975    -1     } ],
10976    -1     173: [ function(_dereq_, module, exports) {
10977    -1       'use strict';
10978    -1       module.exports = _dereq_('./_iterate')('forEach');
10979    -1     }, {
10980    -1       './_iterate': 169
10981    -1     } ],
10982    -1     174: [ function(_dereq_, module, exports) {
10983    -1       'use strict';
10984    -1       module.exports = function(obj) {
10985    -1         return typeof obj === 'function';
10986    -1       };
10987    -1     }, {} ],
10988    -1     175: [ function(_dereq_, module, exports) {
10989    -1       'use strict';
10990    -1       var isValue = _dereq_('./is-value');
10991    -1       var map = {
10992    -1         function: true,
10993    -1         object: true
10994    -1       };
10995    -1       module.exports = function(value) {
10996    -1         return isValue(value) && map[typeof value] || false;
10997    -1       };
10998    -1     }, {
10999    -1       './is-value': 176
11000    -1     } ],
11001    -1     176: [ function(_dereq_, module, exports) {
11002    -1       'use strict';
11003    -1       var _undefined = _dereq_('../function/noop')();
11004    -1       module.exports = function(val) {
11005    -1         return val !== _undefined && val !== null;
11006    -1       };
11007    -1     }, {
11008    -1       '../function/noop': 160
11009    -1     } ],
11010    -1     177: [ function(_dereq_, module, exports) {
11011    -1       'use strict';
11012    -1       module.exports = _dereq_('./is-implemented')() ? Object.keys : _dereq_('./shim');
11013    -1     }, {
11014    -1       './is-implemented': 178,
11015    -1       './shim': 179
11016    -1     } ],
11017    -1     178: [ function(_dereq_, module, exports) {
11018    -1       'use strict';
11019    -1       module.exports = function() {
11020    -1         try {
11021    -1           Object.keys('primitive');
11022    -1           return true;
11023    -1         } catch (e) {
11024    -1           return false;
11025    -1         }
11026    -1       };
11027    -1     }, {} ],
11028    -1     179: [ function(_dereq_, module, exports) {
11029    -1       'use strict';
11030    -1       var isValue = _dereq_('../is-value');
11031    -1       var keys = Object.keys;
11032    -1       module.exports = function(object) {
11033    -1         return keys(isValue(object) ? Object(object) : object);
11034    -1       };
11035    -1     }, {
11036    -1       '../is-value': 176
11037    -1     } ],
11038    -1     180: [ function(_dereq_, module, exports) {
11039    -1       'use strict';
11040    -1       var callable = _dereq_('./valid-callable'), forEach = _dereq_('./for-each'), call = Function.prototype.call;
11041    -1       module.exports = function(obj, cb) {
11042    -1         var result = {}, thisArg = arguments[2];
11043    -1         callable(cb);
11044    -1         forEach(obj, function(value, key, targetObj, index) {
11045    -1           result[key] = call.call(cb, thisArg, value, key, targetObj, index);
11046    -1         });
11047    -1         return result;
11048    -1       };
11049    -1     }, {
11050    -1       './for-each': 173,
11051    -1       './valid-callable': 184
11052    -1     } ],
11053    -1     181: [ function(_dereq_, module, exports) {
11054    -1       'use strict';
11055    -1       var value = _dereq_('./valid-value'), defineProperty = Object.defineProperty, getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor, getOwnPropertyNames = Object.getOwnPropertyNames, getOwnPropertySymbols = Object.getOwnPropertySymbols;
11056    -1       module.exports = function(target, source) {
11057    -1         var error, sourceObject = Object(value(source));
11058    -1         target = Object(value(target));
11059    -1         getOwnPropertyNames(sourceObject).forEach(function(name) {
11060    -1           try {
11061    -1             defineProperty(target, name, getOwnPropertyDescriptor(source, name));
11062    -1           } catch (e) {
11063    -1             error = e;
11064    -1           }
11065    -1         });
11066    -1         if (typeof getOwnPropertySymbols === 'function') {
11067    -1           getOwnPropertySymbols(sourceObject).forEach(function(symbol) {
11068    -1             try {
11069    -1               defineProperty(target, symbol, getOwnPropertyDescriptor(source, symbol));
11070    -1             } catch (e) {
11071    -1               error = e;
11072    -1             }
11073    -1           });
11074    -1         }
11075    -1         if (error !== undefined) {
11076    -1           throw error;
11077    -1         }
11078    -1         return target;
11079    -1       };
11080    -1     }, {
11081    -1       './valid-value': 185
11082    -1     } ],
11083    -1     182: [ function(_dereq_, module, exports) {
11084    -1       'use strict';
11085    -1       var isValue = _dereq_('./is-value');
11086    -1       var forEach = Array.prototype.forEach, create = Object.create;
11087    -1       var process = function(src, obj) {
11088    -1         var key;
11089    -1         for (key in src) {
11090    -1           obj[key] = src[key];
11091    -1         }
11092    -1       };
11093    -1       module.exports = function(opts1) {
11094    -1         var result = create(null);
11095    -1         forEach.call(arguments, function(options) {
11096    -1           if (!isValue(options)) {
11097    -1             return;
11098    -1           }
11099    -1           process(Object(options), result);
11100    -1         });
11101    -1         return result;
11102    -1       };
11103    -1     }, {
11104    -1       './is-value': 176
11105    -1     } ],
11106    -1     183: [ function(_dereq_, module, exports) {
11107    -1       'use strict';
11108    -1       var forEach = Array.prototype.forEach, create = Object.create;
11109    -1       module.exports = function(arg) {
11110    -1         var set = create(null);
11111    -1         forEach.call(arguments, function(name) {
11112    -1           set[name] = true;
11113    -1         });
11114    -1         return set;
11115    -1       };
11116    -1     }, {} ],
11117    -1     184: [ function(_dereq_, module, exports) {
11118    -1       'use strict';
11119    -1       module.exports = function(fn) {
11120    -1         if (typeof fn !== 'function') {
11121    -1           throw new TypeError(fn + ' is not a function');
11122    -1         }
11123    -1         return fn;
11124    -1       };
11125    -1     }, {} ],
11126    -1     185: [ function(_dereq_, module, exports) {
11127    -1       'use strict';
11128    -1       var isValue = _dereq_('./is-value');
11129    -1       module.exports = function(value) {
11130    -1         if (!isValue(value)) {
11131    -1           throw new TypeError('Cannot use null or undefined');
11132    -1         }
11133    -1         return value;
11134    -1       };
11135    -1     }, {
11136    -1       './is-value': 176
11137    -1     } ],
11138    -1     186: [ function(_dereq_, module, exports) {
11139    -1       'use strict';
11140    -1       var ensureValue = _dereq_('./valid-value'), stringifiable = _dereq_('./validate-stringifiable');
11141    -1       module.exports = function(value) {
11142    -1         return stringifiable(ensureValue(value));
11143    -1       };
11144    -1     }, {
11145    -1       './valid-value': 185,
11146    -1       './validate-stringifiable': 187
11147    -1     } ],
11148    -1     187: [ function(_dereq_, module, exports) {
11149    -1       'use strict';
11150    -1       var isCallable = _dereq_('./is-callable');
11151    -1       module.exports = function(stringifiable) {
11152    -1         try {
11153    -1           if (stringifiable && isCallable(stringifiable.toString)) {
11154    -1             return stringifiable.toString();
11155    -1           }
11156    -1           return String(stringifiable);
11157    -1         } catch (e) {
11158    -1           throw new TypeError('Passed argument cannot be stringifed');
11159    -1         }
11160    -1       };
11161    -1     }, {
11162    -1       './is-callable': 174
11163    -1     } ],
11164    -1     188: [ function(_dereq_, module, exports) {
11165    -1       'use strict';
11166    -1       var isCallable = _dereq_('./object/is-callable');
11167    -1       module.exports = function(value) {
11168    -1         try {
11169    -1           if (value && isCallable(value.toString)) {
11170    -1             return value.toString();
11171    -1           }
11172    -1           return String(value);
11173    -1         } catch (e) {
11174    -1           return '<Non-coercible to string value>';
11175    -1         }
11176    -1       };
11177    -1     }, {
11178    -1       './object/is-callable': 174
11179    -1     } ],
11180    -1     189: [ function(_dereq_, module, exports) {
11181    -1       'use strict';
11182    -1       module.exports = _dereq_('./is-implemented')() ? String.prototype.contains : _dereq_('./shim');
11183    -1     }, {
11184    -1       './is-implemented': 190,
11185    -1       './shim': 191
11186    -1     } ],
11187    -1     190: [ function(_dereq_, module, exports) {
11188    -1       'use strict';
11189    -1       var str = 'razdwatrzy';
11190    -1       module.exports = function() {
11191    -1         if (typeof str.contains !== 'function') {
11192    -1           return false;
11193    -1         }
11194    -1         return str.contains('dwa') === true && str.contains('foo') === false;
11195    -1       };
11196    -1     }, {} ],
11197    -1     191: [ function(_dereq_, module, exports) {
11198    -1       'use strict';
11199    -1       var indexOf = String.prototype.indexOf;
11200    -1       module.exports = function(searchString) {
11201    -1         return indexOf.call(this, searchString, arguments[1]) > -1;
11202    -1       };
11203    -1     }, {} ],
11204    -1     192: [ function(_dereq_, module, exports) {
11205    -1       'use strict';
11206    -1       var objToString = Object.prototype.toString, id = objToString.call('');
11207    -1       module.exports = function(value) {
11208    -1         return typeof value === 'string' || value && typeof value === 'object' && (value instanceof String || objToString.call(value) === id) || false;
11209    -1       };
11210    -1     }, {} ],
11211    -1     193: [ function(_dereq_, module, exports) {
11212    -1       'use strict';
11213    -1       var safeToString = _dereq_('./safe-to-string');
11214    -1       var reNewLine = /[\n\r\u2028\u2029]/g;
11215    -1       module.exports = function(value) {
11216    -1         var string = safeToString(value);
11217    -1         if (string.length > 100) {
11218    -1           string = string.slice(0, 99) + '…';
11219    -1         }
11220    -1         string = string.replace(reNewLine, function(char) {
11221    -1           return JSON.stringify(char).slice(1, -1);
11222    -1         });
11223    -1         return string;
11224    -1       };
11225    -1     }, {
11226    -1       './safe-to-string': 188
11227    -1     } ],
11228    -1     194: [ function(_dereq_, module, exports) {
11229    -1       (function(process, global) {
11230    -1         (function(global, factory) {
11231    -1           typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : typeof define === 'function' && define.amd ? define(factory) : global.ES6Promise = factory();
11232    -1         })(this, function() {
11233    -1           'use strict';
11234    -1           function objectOrFunction(x) {
11235    -1             var type = typeof x;
11236    -1             return x !== null && (type === 'object' || type === 'function');
11237    -1           }
11238    -1           function isFunction(x) {
11239    -1             return typeof x === 'function';
11240    -1           }
11241    -1           var _isArray = void 0;
11242    -1           if (Array.isArray) {
11243    -1             _isArray = Array.isArray;
11244    -1           } else {
11245    -1             _isArray = function(x) {
11246    -1               return Object.prototype.toString.call(x) === '[object Array]';
11247    -1             };
11248    -1           }
11249    -1           var isArray = _isArray;
11250    -1           var len = 0;
11251    -1           var vertxNext = void 0;
11252    -1           var customSchedulerFn = void 0;
11253    -1           var asap = function asap(callback, arg) {
11254    -1             queue[len] = callback;
11255    -1             queue[len + 1] = arg;
11256    -1             len += 2;
11257    -1             if (len === 2) {
11258    -1               if (customSchedulerFn) {
11259    -1                 customSchedulerFn(flush);
11260    -1               } else {
11261    -1                 scheduleFlush();
11262    -1               }
11263    -1             }
11264    -1           };
11265    -1           function setScheduler(scheduleFn) {
11266    -1             customSchedulerFn = scheduleFn;
11267    -1           }
11268    -1           function setAsap(asapFn) {
11269    -1             asap = asapFn;
11270    -1           }
11271    -1           var browserWindow = typeof window !== 'undefined' ? window : undefined;
11272    -1           var browserGlobal = browserWindow || {};
11273    -1           var BrowserMutationObserver = browserGlobal.MutationObserver || browserGlobal.WebKitMutationObserver;
11274    -1           var isNode = typeof self === 'undefined' && typeof process !== 'undefined' && {}.toString.call(process) === '[object process]';
11275    -1           var isWorker = typeof Uint8ClampedArray !== 'undefined' && typeof importScripts !== 'undefined' && typeof MessageChannel !== 'undefined';
11276    -1           function useNextTick() {
11277    -1             return function() {
11278    -1               return process.nextTick(flush);
11279    -1             };
11280    -1           }
11281    -1           function useVertxTimer() {
11282    -1             if (typeof vertxNext !== 'undefined') {
11283    -1               return function() {
11284    -1                 vertxNext(flush);
11285    -1               };
11286    -1             }
11287    -1             return useSetTimeout();
11288    -1           }
11289    -1           function useMutationObserver() {
11290    -1             var iterations = 0;
11291    -1             var observer = new BrowserMutationObserver(flush);
11292    -1             var node = document.createTextNode('');
11293    -1             observer.observe(node, {
11294    -1               characterData: true
11295    -1             });
11296    -1             return function() {
11297    -1               node.data = iterations = ++iterations % 2;
11298    -1             };
11299    -1           }
11300    -1           function useMessageChannel() {
11301    -1             var channel = new MessageChannel();
11302    -1             channel.port1.onmessage = flush;
11303    -1             return function() {
11304    -1               return channel.port2.postMessage(0);
11305    -1             };
11306    -1           }
11307    -1           function useSetTimeout() {
11308    -1             var globalSetTimeout = setTimeout;
11309    -1             return function() {
11310    -1               return globalSetTimeout(flush, 1);
11311    -1             };
11312    -1           }
11313    -1           var queue = new Array(1e3);
11314    -1           function flush() {
11315    -1             for (var i = 0; i < len; i += 2) {
11316    -1               var callback = queue[i];
11317    -1               var arg = queue[i + 1];
11318    -1               callback(arg);
11319    -1               queue[i] = undefined;
11320    -1               queue[i + 1] = undefined;
11321    -1             }
11322    -1             len = 0;
11323    -1           }
11324    -1           function attemptVertx() {
11325    -1             try {
11326    -1               var vertx = Function('return this')().require('vertx');
11327    -1               vertxNext = vertx.runOnLoop || vertx.runOnContext;
11328    -1               return useVertxTimer();
11329    -1             } catch (e) {
11330    -1               return useSetTimeout();
11331    -1             }
11332    -1           }
11333    -1           var scheduleFlush = void 0;
11334    -1           if (isNode) {
11335    -1             scheduleFlush = useNextTick();
11336    -1           } else if (BrowserMutationObserver) {
11337    -1             scheduleFlush = useMutationObserver();
11338    -1           } else if (isWorker) {
11339    -1             scheduleFlush = useMessageChannel();
11340    -1           } else if (browserWindow === undefined && typeof _dereq_ === 'function') {
11341    -1             scheduleFlush = attemptVertx();
11342    -1           } else {
11343    -1             scheduleFlush = useSetTimeout();
11344    -1           }
11345    -1           function then(onFulfillment, onRejection) {
11346    -1             var parent = this;
11347    -1             var child = new this.constructor(noop);
11348    -1             if (child[PROMISE_ID] === undefined) {
11349    -1               makePromise(child);
11350    -1             }
11351    -1             var _state = parent._state;
11352    -1             if (_state) {
11353    -1               var callback = arguments[_state - 1];
11354    -1               asap(function() {
11355    -1                 return invokeCallback(_state, child, callback, parent._result);
11356    -1               });
11357    -1             } else {
11358    -1               subscribe(parent, child, onFulfillment, onRejection);
11359    -1             }
11360    -1             return child;
11361    -1           }
11362    -1           function resolve$1(object) {
11363    -1             var Constructor = this;
11364    -1             if (object && typeof object === 'object' && object.constructor === Constructor) {
11365    -1               return object;
11366    -1             }
11367    -1             var promise = new Constructor(noop);
11368    -1             resolve(promise, object);
11369    -1             return promise;
11370    -1           }
11371    -1           var PROMISE_ID = Math.random().toString(36).substring(2);
11372    -1           function noop() {}
11373    -1           var PENDING = void 0;
11374    -1           var FULFILLED = 1;
11375    -1           var REJECTED = 2;
11376    -1           function selfFulfillment() {
11377    -1             return new TypeError('You cannot resolve a promise with itself');
11378    -1           }
11379    -1           function cannotReturnOwn() {
11380    -1             return new TypeError('A promises callback cannot return that same promise.');
11381    -1           }
11382    -1           function tryThen(then$$1, value, fulfillmentHandler, rejectionHandler) {
11383    -1             try {
11384    -1               then$$1.call(value, fulfillmentHandler, rejectionHandler);
11385    -1             } catch (e) {
11386    -1               return e;
11387    -1             }
11388    -1           }
11389    -1           function handleForeignThenable(promise, thenable, then$$1) {
11390    -1             asap(function(promise) {
11391    -1               var sealed = false;
11392    -1               var error = tryThen(then$$1, thenable, function(value) {
11393    -1                 if (sealed) {
11394    -1                   return;
   -1  6992         this.parseRule = function() {
   -1  6993           var rule = null;
   -1  6994           while (pos < l) {
   -1  6995             chr = str.charAt(pos);
   -1  6996             if (chr === '*') {
   -1  6997               pos++;
   -1  6998               (rule = rule || {}).tagName = '*';
   -1  6999             } else if (isIdentStart(chr) || chr === '\\') {
   -1  7000               (rule = rule || {}).tagName = getIdent();
   -1  7001             } else if (chr === '.') {
   -1  7002               pos++;
   -1  7003               rule = rule || {};
   -1  7004               (rule.classNames = rule.classNames || []).push(getIdent());
   -1  7005             } else if (chr === '#') {
   -1  7006               pos++;
   -1  7007               (rule = rule || {}).id = getIdent();
   -1  7008             } else if (chr === '[') {
   -1  7009               pos++;
   -1  7010               skipWhitespace();
   -1  7011               var attr = {
   -1  7012                 name: getIdent()
   -1  7013               };
   -1  7014               skipWhitespace();
   -1  7015               if (chr === ']') {
   -1  7016                 pos++;
   -1  7017               } else {
   -1  7018                 var operator = '';
   -1  7019                 if (attrEqualityMods[chr]) {
   -1  7020                   operator = chr;
   -1  7021                   pos++;
   -1  7022                   chr = str.charAt(pos);
11395  7023                 }
11396    -1                 sealed = true;
11397    -1                 if (thenable !== value) {
11398    -1                   resolve(promise, value);
11399    -1                 } else {
11400    -1                   fulfill(promise, value);
   -1  7024                 if (pos >= l) {
   -1  7025                   throw Error('Expected "=" but end of file reached.');
11401  7026                 }
11402    -1               }, function(reason) {
11403    -1                 if (sealed) {
11404    -1                   return;
   -1  7027                 if (chr !== '=') {
   -1  7028                   throw Error('Expected "=" but "' + chr + '" found.');
11405  7029                 }
11406    -1                 sealed = true;
11407    -1                 reject(promise, reason);
11408    -1               }, 'Settle: ' + (promise._label || ' unknown promise'));
11409    -1               if (!sealed && error) {
11410    -1                 sealed = true;
11411    -1                 reject(promise, error);
11412    -1               }
11413    -1             }, promise);
11414    -1           }
11415    -1           function handleOwnThenable(promise, thenable) {
11416    -1             if (thenable._state === FULFILLED) {
11417    -1               fulfill(promise, thenable._result);
11418    -1             } else if (thenable._state === REJECTED) {
11419    -1               reject(promise, thenable._result);
11420    -1             } else {
11421    -1               subscribe(thenable, undefined, function(value) {
11422    -1                 return resolve(promise, value);
11423    -1               }, function(reason) {
11424    -1                 return reject(promise, reason);
11425    -1               });
11426    -1             }
11427    -1           }
11428    -1           function handleMaybeThenable(promise, maybeThenable, then$$1) {
11429    -1             if (maybeThenable.constructor === promise.constructor && then$$1 === then && maybeThenable.constructor.resolve === resolve$1) {
11430    -1               handleOwnThenable(promise, maybeThenable);
11431    -1             } else {
11432    -1               if (then$$1 === undefined) {
11433    -1                 fulfill(promise, maybeThenable);
11434    -1               } else if (isFunction(then$$1)) {
11435    -1                 handleForeignThenable(promise, maybeThenable, then$$1);
11436    -1               } else {
11437    -1                 fulfill(promise, maybeThenable);
11438    -1               }
11439    -1             }
11440    -1           }
11441    -1           function resolve(promise, value) {
11442    -1             if (promise === value) {
11443    -1               reject(promise, selfFulfillment());
11444    -1             } else if (objectOrFunction(value)) {
11445    -1               var then$$1 = void 0;
11446    -1               try {
11447    -1                 then$$1 = value.then;
11448    -1               } catch (error) {
11449    -1                 reject(promise, error);
11450    -1                 return;
11451    -1               }
11452    -1               handleMaybeThenable(promise, value, then$$1);
11453    -1             } else {
11454    -1               fulfill(promise, value);
11455    -1             }
11456    -1           }
11457    -1           function publishRejection(promise) {
11458    -1             if (promise._onerror) {
11459    -1               promise._onerror(promise._result);
11460    -1             }
11461    -1             publish(promise);
11462    -1           }
11463    -1           function fulfill(promise, value) {
11464    -1             if (promise._state !== PENDING) {
11465    -1               return;
11466    -1             }
11467    -1             promise._result = value;
11468    -1             promise._state = FULFILLED;
11469    -1             if (promise._subscribers.length !== 0) {
11470    -1               asap(publish, promise);
11471    -1             }
11472    -1           }
11473    -1           function reject(promise, reason) {
11474    -1             if (promise._state !== PENDING) {
11475    -1               return;
11476    -1             }
11477    -1             promise._state = REJECTED;
11478    -1             promise._result = reason;
11479    -1             asap(publishRejection, promise);
11480    -1           }
11481    -1           function subscribe(parent, child, onFulfillment, onRejection) {
11482    -1             var _subscribers = parent._subscribers;
11483    -1             var length = _subscribers.length;
11484    -1             parent._onerror = null;
11485    -1             _subscribers[length] = child;
11486    -1             _subscribers[length + FULFILLED] = onFulfillment;
11487    -1             _subscribers[length + REJECTED] = onRejection;
11488    -1             if (length === 0 && parent._state) {
11489    -1               asap(publish, parent);
11490    -1             }
11491    -1           }
11492    -1           function publish(promise) {
11493    -1             var subscribers = promise._subscribers;
11494    -1             var settled = promise._state;
11495    -1             if (subscribers.length === 0) {
11496    -1               return;
11497    -1             }
11498    -1             var child = void 0, callback = void 0, detail = promise._result;
11499    -1             for (var i = 0; i < subscribers.length; i += 3) {
11500    -1               child = subscribers[i];
11501    -1               callback = subscribers[i + settled];
11502    -1               if (child) {
11503    -1                 invokeCallback(settled, child, callback, detail);
11504    -1               } else {
11505    -1                 callback(detail);
11506    -1               }
11507    -1             }
11508    -1             promise._subscribers.length = 0;
11509    -1           }
11510    -1           function invokeCallback(settled, promise, callback, detail) {
11511    -1             var hasCallback = isFunction(callback), value = void 0, error = void 0, succeeded = true;
11512    -1             if (hasCallback) {
11513    -1               try {
11514    -1                 value = callback(detail);
11515    -1               } catch (e) {
11516    -1                 succeeded = false;
11517    -1                 error = e;
11518    -1               }
11519    -1               if (promise === value) {
11520    -1                 reject(promise, cannotReturnOwn());
11521    -1                 return;
11522    -1               }
11523    -1             } else {
11524    -1               value = detail;
11525    -1             }
11526    -1             if (promise._state !== PENDING) {} else if (hasCallback && succeeded) {
11527    -1               resolve(promise, value);
11528    -1             } else if (succeeded === false) {
11529    -1               reject(promise, error);
11530    -1             } else if (settled === FULFILLED) {
11531    -1               fulfill(promise, value);
11532    -1             } else if (settled === REJECTED) {
11533    -1               reject(promise, value);
11534    -1             }
11535    -1           }
11536    -1           function initializePromise(promise, resolver) {
11537    -1             try {
11538    -1               resolver(function resolvePromise(value) {
11539    -1                 resolve(promise, value);
11540    -1               }, function rejectPromise(reason) {
11541    -1                 reject(promise, reason);
11542    -1               });
11543    -1             } catch (e) {
11544    -1               reject(promise, e);
11545    -1             }
11546    -1           }
11547    -1           var id = 0;
11548    -1           function nextId() {
11549    -1             return id++;
11550    -1           }
11551    -1           function makePromise(promise) {
11552    -1             promise[PROMISE_ID] = id++;
11553    -1             promise._state = undefined;
11554    -1             promise._result = undefined;
11555    -1             promise._subscribers = [];
11556    -1           }
11557    -1           function validationError() {
11558    -1             return new Error('Array Methods must be provided an Array');
11559    -1           }
11560    -1           var Enumerator = function() {
11561    -1             function Enumerator(Constructor, input) {
11562    -1               this._instanceConstructor = Constructor;
11563    -1               this.promise = new Constructor(noop);
11564    -1               if (!this.promise[PROMISE_ID]) {
11565    -1                 makePromise(this.promise);
11566    -1               }
11567    -1               if (isArray(input)) {
11568    -1                 this.length = input.length;
11569    -1                 this._remaining = input.length;
11570    -1                 this._result = new Array(this.length);
11571    -1                 if (this.length === 0) {
11572    -1                   fulfill(this.promise, this._result);
   -1  7030                 attr.operator = operator + '=';
   -1  7031                 pos++;
   -1  7032                 skipWhitespace();
   -1  7033                 var attrValue = '';
   -1  7034                 attr.valueType = 'string';
   -1  7035                 if (chr === '"') {
   -1  7036                   attrValue = getStr('"', doubleQuotesEscapeChars);
   -1  7037                 } else if (chr === '\'') {
   -1  7038                   attrValue = getStr('\'', singleQuoteEscapeChars);
   -1  7039                 } else if (substitutesEnabled && chr === '$') {
   -1  7040                   pos++;
   -1  7041                   attrValue = getIdent();
   -1  7042                   attr.valueType = 'substitute';
11573  7043                 } else {
11574    -1                   this.length = this.length || 0;
11575    -1                   this._enumerate(input);
11576    -1                   if (this._remaining === 0) {
11577    -1                     fulfill(this.promise, this._result);
   -1  7044                   while (pos < l) {
   -1  7045                     if (chr === ']') {
   -1  7046                       break;
   -1  7047                     }
   -1  7048                     attrValue += chr;
   -1  7049                     pos++;
   -1  7050                     chr = str.charAt(pos);
11578  7051                   }
   -1  7052                   attrValue = attrValue.trim();
11579  7053                 }
11580    -1               } else {
11581    -1                 reject(this.promise, validationError());
11582    -1               }
11583    -1             }
11584    -1             Enumerator.prototype._enumerate = function _enumerate(input) {
11585    -1               for (var i = 0; this._state === PENDING && i < input.length; i++) {
11586    -1                 this._eachEntry(input[i], i);
11587    -1               }
11588    -1             };
11589    -1             Enumerator.prototype._eachEntry = function _eachEntry(entry, i) {
11590    -1               var c = this._instanceConstructor;
11591    -1               var resolve$$1 = c.resolve;
11592    -1               if (resolve$$1 === resolve$1) {
11593    -1                 var _then = void 0;
11594    -1                 var error = void 0;
11595    -1                 var didError = false;
11596    -1                 try {
11597    -1                   _then = entry.then;
11598    -1                 } catch (e) {
11599    -1                   didError = true;
11600    -1                   error = e;
   -1  7054                 skipWhitespace();
   -1  7055                 if (pos >= l) {
   -1  7056                   throw Error('Expected "]" but end of file reached.');
11601  7057                 }
11602    -1                 if (_then === then && entry._state !== PENDING) {
11603    -1                   this._settledAt(entry._state, i, entry._result);
11604    -1                 } else if (typeof _then !== 'function') {
11605    -1                   this._remaining--;
11606    -1                   this._result[i] = entry;
11607    -1                 } else if (c === Promise$1) {
11608    -1                   var promise = new c(noop);
11609    -1                   if (didError) {
11610    -1                     reject(promise, error);
11611    -1                   } else {
11612    -1                     handleMaybeThenable(promise, entry, _then);
11613    -1                   }
11614    -1                   this._willSettleAt(promise, i);
11615    -1                 } else {
11616    -1                   this._willSettleAt(new c(function(resolve$$1) {
11617    -1                     return resolve$$1(entry);
11618    -1                   }), i);
   -1  7058                 if (chr !== ']') {
   -1  7059                   throw Error('Expected "]" but "' + chr + '" found.');
11619  7060                 }
11620    -1               } else {
11621    -1                 this._willSettleAt(resolve$$1(entry), i);
   -1  7061                 pos++;
   -1  7062                 attr.value = attrValue;
11622  7063               }
11623    -1             };
11624    -1             Enumerator.prototype._settledAt = function _settledAt(state, i, value) {
11625    -1               var promise = this.promise;
11626    -1               if (promise._state === PENDING) {
11627    -1                 this._remaining--;
11628    -1                 if (state === REJECTED) {
11629    -1                   reject(promise, value);
   -1  7064               rule = rule || {};
   -1  7065               (rule.attrs = rule.attrs || []).push(attr);
   -1  7066             } else if (chr === ':') {
   -1  7067               pos++;
   -1  7068               var pseudoName = getIdent();
   -1  7069               var pseudo = {
   -1  7070                 name: pseudoName
   -1  7071               };
   -1  7072               if (chr === '(') {
   -1  7073                 pos++;
   -1  7074                 var value = '';
   -1  7075                 skipWhitespace();
   -1  7076                 if (pseudos[pseudoName] === 'selector') {
   -1  7077                   pseudo.valueType = 'selector';
   -1  7078                   value = this.parseSelector();
11630  7079                 } else {
11631    -1                   this._result[i] = value;
11632    -1                 }
11633    -1               }
11634    -1               if (this._remaining === 0) {
11635    -1                 fulfill(promise, this._result);
11636    -1               }
11637    -1             };
11638    -1             Enumerator.prototype._willSettleAt = function _willSettleAt(promise, i) {
11639    -1               var enumerator = this;
11640    -1               subscribe(promise, undefined, function(value) {
11641    -1                 return enumerator._settledAt(FULFILLED, i, value);
11642    -1               }, function(reason) {
11643    -1                 return enumerator._settledAt(REJECTED, i, reason);
11644    -1               });
11645    -1             };
11646    -1             return Enumerator;
11647    -1           }();
11648    -1           function all(entries) {
11649    -1             return new Enumerator(this, entries).promise;
11650    -1           }
11651    -1           function race(entries) {
11652    -1             var Constructor = this;
11653    -1             if (!isArray(entries)) {
11654    -1               return new Constructor(function(_, reject) {
11655    -1                 return reject(new TypeError('You must pass an array to race.'));
11656    -1               });
11657    -1             } else {
11658    -1               return new Constructor(function(resolve, reject) {
11659    -1                 var length = entries.length;
11660    -1                 for (var i = 0; i < length; i++) {
11661    -1                   Constructor.resolve(entries[i]).then(resolve, reject);
   -1  7080                   pseudo.valueType = pseudos[pseudoName] || 'string';
   -1  7081                   if (chr === '"') {
   -1  7082                     value = getStr('"', doubleQuotesEscapeChars);
   -1  7083                   } else if (chr === '\'') {
   -1  7084                     value = getStr('\'', singleQuoteEscapeChars);
   -1  7085                   } else if (substitutesEnabled && chr === '$') {
   -1  7086                     pos++;
   -1  7087                     value = getIdent();
   -1  7088                     pseudo.valueType = 'substitute';
   -1  7089                   } else {
   -1  7090                     while (pos < l) {
   -1  7091                       if (chr === ')') {
   -1  7092                         break;
   -1  7093                       }
   -1  7094                       value += chr;
   -1  7095                       pos++;
   -1  7096                       chr = str.charAt(pos);
   -1  7097                     }
   -1  7098                     value = value.trim();
   -1  7099                   }
   -1  7100                   skipWhitespace();
11662  7101                 }
11663    -1               });
11664    -1             }
11665    -1           }
11666    -1           function reject$1(reason) {
11667    -1             var Constructor = this;
11668    -1             var promise = new Constructor(noop);
11669    -1             reject(promise, reason);
11670    -1             return promise;
11671    -1           }
11672    -1           function needsResolver() {
11673    -1             throw new TypeError('You must pass a resolver function as the first argument to the promise constructor');
11674    -1           }
11675    -1           function needsNew() {
11676    -1             throw new TypeError('Failed to construct \'Promise\': Please use the \'new\' operator, this object constructor cannot be called as a function.');
11677    -1           }
11678    -1           var Promise$1 = function() {
11679    -1             function Promise(resolver) {
11680    -1               this[PROMISE_ID] = nextId();
11681    -1               this._result = this._state = undefined;
11682    -1               this._subscribers = [];
11683    -1               if (noop !== resolver) {
11684    -1                 typeof resolver !== 'function' && needsResolver();
11685    -1                 this instanceof Promise ? initializePromise(this, resolver) : needsNew();
11686    -1               }
11687    -1             }
11688    -1             Promise.prototype.catch = function _catch(onRejection) {
11689    -1               return this.then(null, onRejection);
11690    -1             };
11691    -1             Promise.prototype.finally = function _finally(callback) {
11692    -1               var promise = this;
11693    -1               var constructor = promise.constructor;
11694    -1               if (isFunction(callback)) {
11695    -1                 return promise.then(function(value) {
11696    -1                   return constructor.resolve(callback()).then(function() {
11697    -1                     return value;
11698    -1                   });
11699    -1                 }, function(reason) {
11700    -1                   return constructor.resolve(callback()).then(function() {
11701    -1                     throw reason;
11702    -1                   });
11703    -1                 });
11704    -1               }
11705    -1               return promise.then(callback, callback);
11706    -1             };
11707    -1             return Promise;
11708    -1           }();
11709    -1           Promise$1.prototype.then = then;
11710    -1           Promise$1.all = all;
11711    -1           Promise$1.race = race;
11712    -1           Promise$1.resolve = resolve$1;
11713    -1           Promise$1.reject = reject$1;
11714    -1           Promise$1._setScheduler = setScheduler;
11715    -1           Promise$1._setAsap = setAsap;
11716    -1           Promise$1._asap = asap;
11717    -1           function polyfill() {
11718    -1             var local = void 0;
11719    -1             if (typeof global !== 'undefined') {
11720    -1               local = global;
11721    -1             } else if (typeof self !== 'undefined') {
11722    -1               local = self;
11723    -1             } else {
11724    -1               try {
11725    -1                 local = Function('return this')();
11726    -1               } catch (e) {
11727    -1                 throw new Error('polyfill failed because global object is unavailable in this environment');
11728    -1               }
11729    -1             }
11730    -1             var P = local.Promise;
11731    -1             if (P) {
11732    -1               var promiseToString = null;
11733    -1               try {
11734    -1                 promiseToString = Object.prototype.toString.call(P.resolve());
11735    -1               } catch (e) {}
11736    -1               if (promiseToString === '[object Promise]' && !P.cast) {
11737    -1                 return;
11738    -1               }
11739    -1             }
11740    -1             local.Promise = Promise$1;
11741    -1           }
11742    -1           Promise$1.polyfill = polyfill;
11743    -1           Promise$1.Promise = Promise$1;
11744    -1           return Promise$1;
11745    -1         });
11746    -1       }).call(this, _dereq_('_process'), typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : typeof window !== 'undefined' ? window : {});
11747    -1     }, {
11748    -1       _process: 222
11749    -1     } ],
11750    -1     195: [ function(_dereq_, module, exports) {
11751    -1       'use strict';
11752    -1       module.exports = _dereq_('./is-implemented')() ? Symbol : _dereq_('./polyfill');
11753    -1     }, {
11754    -1       './is-implemented': 196,
11755    -1       './polyfill': 198
11756    -1     } ],
11757    -1     196: [ function(_dereq_, module, exports) {
11758    -1       'use strict';
11759    -1       var validTypes = {
11760    -1         object: true,
11761    -1         symbol: true
11762    -1       };
11763    -1       module.exports = function() {
11764    -1         var symbol;
11765    -1         if (typeof Symbol !== 'function') {
11766    -1           return false;
11767    -1         }
11768    -1         symbol = Symbol('test symbol');
11769    -1         try {
11770    -1           String(symbol);
11771    -1         } catch (e) {
11772    -1           return false;
11773    -1         }
11774    -1         if (!validTypes[typeof Symbol.iterator]) {
11775    -1           return false;
11776    -1         }
11777    -1         if (!validTypes[typeof Symbol.toPrimitive]) {
11778    -1           return false;
11779    -1         }
11780    -1         if (!validTypes[typeof Symbol.toStringTag]) {
11781    -1           return false;
11782    -1         }
11783    -1         return true;
11784    -1       };
11785    -1     }, {} ],
11786    -1     197: [ function(_dereq_, module, exports) {
11787    -1       'use strict';
11788    -1       module.exports = function(x) {
11789    -1         if (!x) {
11790    -1           return false;
11791    -1         }
11792    -1         if (typeof x === 'symbol') {
11793    -1           return true;
11794    -1         }
11795    -1         if (!x.constructor) {
11796    -1           return false;
11797    -1         }
11798    -1         if (x.constructor.name !== 'Symbol') {
11799    -1           return false;
11800    -1         }
11801    -1         return x[x.constructor.toStringTag] === 'Symbol';
11802    -1       };
11803    -1     }, {} ],
11804    -1     198: [ function(_dereq_, module, exports) {
11805    -1       'use strict';
11806    -1       var d = _dereq_('d'), validateSymbol = _dereq_('./validate-symbol'), create = Object.create, defineProperties = Object.defineProperties, defineProperty = Object.defineProperty, objPrototype = Object.prototype, NativeSymbol, SymbolPolyfill, HiddenSymbol, globalSymbols = create(null), isNativeSafe;
11807    -1       if (typeof Symbol === 'function') {
11808    -1         NativeSymbol = Symbol;
11809    -1         try {
11810    -1           String(NativeSymbol());
11811    -1           isNativeSafe = true;
11812    -1         } catch (ignore) {}
11813    -1       }
11814    -1       var generateName = function() {
11815    -1         var created = create(null);
11816    -1         return function(desc) {
11817    -1           var postfix = 0, name, ie11BugWorkaround;
11818    -1           while (created[desc + (postfix || '')]) {
11819    -1             ++postfix;
11820    -1           }
11821    -1           desc += postfix || '';
11822    -1           created[desc] = true;
11823    -1           name = '@@' + desc;
11824    -1           defineProperty(objPrototype, name, d.gs(null, function(value) {
11825    -1             if (ie11BugWorkaround) {
11826    -1               return;
   -1  7102                 if (pos >= l) {
   -1  7103                   throw Error('Expected ")" but end of file reached.');
   -1  7104                 }
   -1  7105                 if (chr !== ')') {
   -1  7106                   throw Error('Expected ")" but "' + chr + '" found.');
   -1  7107                 }
   -1  7108                 pos++;
   -1  7109                 pseudo.value = value;
   -1  7110               }
   -1  7111               rule = rule || {};
   -1  7112               (rule.pseudos = rule.pseudos || []).push(pseudo);
   -1  7113             } else {
   -1  7114               break;
11827  7115             }
11828    -1             ie11BugWorkaround = true;
11829    -1             defineProperty(this, name, d(value));
11830    -1             ie11BugWorkaround = false;
11831    -1           }));
11832    -1           return name;
   -1  7116           }
   -1  7117           return rule;
11833  7118         };
11834    -1       }();
11835    -1       HiddenSymbol = function Symbol(description) {
11836    -1         if (this instanceof HiddenSymbol) {
11837    -1           throw new TypeError('Symbol is not a constructor');
11838    -1         }
11839    -1         return SymbolPolyfill(description);
11840    -1       };
11841    -1       module.exports = SymbolPolyfill = function Symbol(description) {
11842    -1         var symbol;
11843    -1         if (this instanceof Symbol) {
11844    -1           throw new TypeError('Symbol is not a constructor');
11845    -1         }
11846    -1         if (isNativeSafe) {
11847    -1           return NativeSymbol(description);
11848    -1         }
11849    -1         symbol = create(HiddenSymbol.prototype);
11850    -1         description = description === undefined ? '' : String(description);
11851    -1         return defineProperties(symbol, {
11852    -1           __description__: d('', description),
11853    -1           __name__: d('', generateName(description))
11854    -1         });
11855    -1       };
11856    -1       defineProperties(SymbolPolyfill, {
11857    -1         for: d(function(key) {
11858    -1           if (globalSymbols[key]) {
11859    -1             return globalSymbols[key];
11860    -1           }
11861    -1           return globalSymbols[key] = SymbolPolyfill(String(key));
11862    -1         }),
11863    -1         keyFor: d(function(s) {
11864    -1           var key;
11865    -1           validateSymbol(s);
11866    -1           for (key in globalSymbols) {
11867    -1             if (globalSymbols[key] === s) {
11868    -1               return key;
11869    -1             }
11870    -1           }
11871    -1         }),
11872    -1         hasInstance: d('', NativeSymbol && NativeSymbol.hasInstance || SymbolPolyfill('hasInstance')),
11873    -1         isConcatSpreadable: d('', NativeSymbol && NativeSymbol.isConcatSpreadable || SymbolPolyfill('isConcatSpreadable')),
11874    -1         iterator: d('', NativeSymbol && NativeSymbol.iterator || SymbolPolyfill('iterator')),
11875    -1         match: d('', NativeSymbol && NativeSymbol.match || SymbolPolyfill('match')),
11876    -1         replace: d('', NativeSymbol && NativeSymbol.replace || SymbolPolyfill('replace')),
11877    -1         search: d('', NativeSymbol && NativeSymbol.search || SymbolPolyfill('search')),
11878    -1         species: d('', NativeSymbol && NativeSymbol.species || SymbolPolyfill('species')),
11879    -1         split: d('', NativeSymbol && NativeSymbol.split || SymbolPolyfill('split')),
11880    -1         toPrimitive: d('', NativeSymbol && NativeSymbol.toPrimitive || SymbolPolyfill('toPrimitive')),
11881    -1         toStringTag: d('', NativeSymbol && NativeSymbol.toStringTag || SymbolPolyfill('toStringTag')),
11882    -1         unscopables: d('', NativeSymbol && NativeSymbol.unscopables || SymbolPolyfill('unscopables'))
11883    -1       });
11884    -1       defineProperties(HiddenSymbol.prototype, {
11885    -1         constructor: d(SymbolPolyfill),
11886    -1         toString: d('', function() {
11887    -1           return this.__name__;
11888    -1         })
11889    -1       });
11890    -1       defineProperties(SymbolPolyfill.prototype, {
11891    -1         toString: d(function() {
11892    -1           return 'Symbol (' + validateSymbol(this).__description__ + ')';
11893    -1         }),
11894    -1         valueOf: d(function() {
11895    -1           return validateSymbol(this);
11896    -1         })
11897    -1       });
11898    -1       defineProperty(SymbolPolyfill.prototype, SymbolPolyfill.toPrimitive, d('', function() {
11899    -1         var symbol = validateSymbol(this);
11900    -1         if (typeof symbol === 'symbol') {
11901    -1           return symbol;
11902    -1         }
11903    -1         return symbol.toString();
11904    -1       }));
11905    -1       defineProperty(SymbolPolyfill.prototype, SymbolPolyfill.toStringTag, d('c', 'Symbol'));
11906    -1       defineProperty(HiddenSymbol.prototype, SymbolPolyfill.toStringTag, d('c', SymbolPolyfill.prototype[SymbolPolyfill.toStringTag]));
11907    -1       defineProperty(HiddenSymbol.prototype, SymbolPolyfill.toPrimitive, d('c', SymbolPolyfill.prototype[SymbolPolyfill.toPrimitive]));
11908    -1     }, {
11909    -1       './validate-symbol': 199,
11910    -1       d: 149
11911    -1     } ],
11912    -1     199: [ function(_dereq_, module, exports) {
11913    -1       'use strict';
11914    -1       var isSymbol = _dereq_('./is-symbol');
11915    -1       module.exports = function(value) {
11916    -1         if (!isSymbol(value)) {
11917    -1           throw new TypeError(value + ' is not a symbol');
11918    -1         }
11919    -1         return value;
11920    -1       };
11921    -1     }, {
11922    -1       './is-symbol': 197
11923    -1     } ],
11924    -1     200: [ function(_dereq_, module, exports) {
11925    -1       'use strict';
11926    -1       var d = _dereq_('d'), callable = _dereq_('es5-ext/object/valid-callable'), apply = Function.prototype.apply, call = Function.prototype.call, create = Object.create, defineProperty = Object.defineProperty, defineProperties = Object.defineProperties, hasOwnProperty = Object.prototype.hasOwnProperty, descriptor = {
11927    -1         configurable: true,
11928    -1         enumerable: false,
11929    -1         writable: true
11930    -1       }, on, once, off, emit, methods, descriptors, base;
11931    -1       on = function(type, listener) {
11932    -1         var data;
11933    -1         callable(listener);
11934    -1         if (!hasOwnProperty.call(this, '__ee__')) {
11935    -1           data = descriptor.value = create(null);
11936    -1           defineProperty(this, '__ee__', descriptor);
11937    -1           descriptor.value = null;
11938    -1         } else {
11939    -1           data = this.__ee__;
11940    -1         }
11941    -1         if (!data[type]) {
11942    -1           data[type] = listener;
11943    -1         } else if (typeof data[type] === 'object') {
11944    -1           data[type].push(listener);
11945    -1         } else {
11946    -1           data[type] = [ data[type], listener ];
11947    -1         }
11948    -1         return this;
11949    -1       };
11950    -1       once = function(type, listener) {
11951    -1         var once, self;
11952    -1         callable(listener);
11953    -1         self = this;
11954    -1         on.call(this, type, once = function() {
11955    -1           off.call(self, type, once);
11956    -1           apply.call(listener, this, arguments);
11957    -1         });
11958    -1         once.__eeOnceListener__ = listener;
11959  7119         return this;
   -1  7120       }
   -1  7121       CssSelectorParser.prototype.parse = function(str) {
   -1  7122         var context = new ParseContext(str, 0, this.pseudos, this.attrEqualityMods, this.ruleNestingOperators, this.substitutesEnabled);
   -1  7123         return context.parse();
11960  7124       };
11961    -1       off = function(type, listener) {
11962    -1         var data, listeners, candidate, i;
11963    -1         callable(listener);
11964    -1         if (!hasOwnProperty.call(this, '__ee__')) {
11965    -1           return this;
11966    -1         }
11967    -1         data = this.__ee__;
11968    -1         if (!data[type]) {
11969    -1           return this;
11970    -1         }
11971    -1         listeners = data[type];
11972    -1         if (typeof listeners === 'object') {
11973    -1           for (i = 0; candidate = listeners[i]; ++i) {
11974    -1             if (candidate === listener || candidate.__eeOnceListener__ === listener) {
11975    -1               if (listeners.length === 2) {
11976    -1                 data[type] = listeners[i ? 0 : 1];
11977    -1               } else {
11978    -1                 listeners.splice(i, 1);
   -1  7125       CssSelectorParser.prototype.escapeIdentifier = function(s) {
   -1  7126         var result = '';
   -1  7127         var i = 0;
   -1  7128         var len = s.length;
   -1  7129         while (i < len) {
   -1  7130           var chr = s.charAt(i);
   -1  7131           if (identSpecialChars[chr]) {
   -1  7132             result += '\\' + chr;
   -1  7133           } else {
   -1  7134             if (!(chr === '_' || chr === '-' || chr >= 'A' && chr <= 'Z' || chr >= 'a' && chr <= 'z' || i !== 0 && chr >= '0' && chr <= '9')) {
   -1  7135               var charCode = chr.charCodeAt(0);
   -1  7136               if ((charCode & 63488) === 55296) {
   -1  7137                 var extraCharCode = s.charCodeAt(i++);
   -1  7138                 if ((charCode & 64512) !== 55296 || (extraCharCode & 64512) !== 56320) {
   -1  7139                   throw Error('UCS-2(decode): illegal sequence');
   -1  7140                 }
   -1  7141                 charCode = ((charCode & 1023) << 10) + (extraCharCode & 1023) + 65536;
11979  7142               }
   -1  7143               result += '\\' + charCode.toString(16) + ' ';
   -1  7144             } else {
   -1  7145               result += chr;
11980  7146             }
11981  7147           }
11982    -1         } else {
11983    -1           if (listeners === listener || listeners.__eeOnceListener__ === listener) {
11984    -1             delete data[type];
11985    -1           }
   -1  7148           i++;
11986  7149         }
11987    -1         return this;
   -1  7150         return result;
11988  7151       };
11989    -1       emit = function(type) {
11990    -1         var i, l, listener, listeners, args;
11991    -1         if (!hasOwnProperty.call(this, '__ee__')) {
11992    -1           return;
11993    -1         }
11994    -1         listeners = this.__ee__[type];
11995    -1         if (!listeners) {
11996    -1           return;
11997    -1         }
11998    -1         if (typeof listeners === 'object') {
11999    -1           l = arguments.length;
12000    -1           args = new Array(l - 1);
12001    -1           for (i = 1; i < l; ++i) {
12002    -1             args[i - 1] = arguments[i];
12003    -1           }
12004    -1           listeners = listeners.slice();
12005    -1           for (i = 0; listener = listeners[i]; ++i) {
12006    -1             apply.call(listener, this, args);
12007    -1           }
12008    -1         } else {
12009    -1           switch (arguments.length) {
12010    -1            case 1:
12011    -1             call.call(listeners, this);
12012    -1             break;
12013    -1 
12014    -1            case 2:
12015    -1             call.call(listeners, this, arguments[1]);
12016    -1             break;
12017    -1 
12018    -1            case 3:
12019    -1             call.call(listeners, this, arguments[1], arguments[2]);
12020    -1             break;
12021    -1 
12022    -1            default:
12023    -1             l = arguments.length;
12024    -1             args = new Array(l - 1);
12025    -1             for (i = 1; i < l; ++i) {
12026    -1               args[i - 1] = arguments[i];
12027    -1             }
12028    -1             apply.call(listeners, this, args);
   -1  7152       CssSelectorParser.prototype.escapeStr = function(s) {
   -1  7153         var result = '';
   -1  7154         var i = 0;
   -1  7155         var len = s.length;
   -1  7156         var chr, replacement;
   -1  7157         while (i < len) {
   -1  7158           chr = s.charAt(i);
   -1  7159           if (chr === '"') {
   -1  7160             chr = '\\"';
   -1  7161           } else if (chr === '\\') {
   -1  7162             chr = '\\\\';
   -1  7163           } else if (replacement = strReplacementsRev[chr]) {
   -1  7164             chr = replacement;
12029  7165           }
   -1  7166           result += chr;
   -1  7167           i++;
12030  7168         }
   -1  7169         return '"' + result + '"';
12031  7170       };
12032    -1       methods = {
12033    -1         on: on,
12034    -1         once: once,
12035    -1         off: off,
12036    -1         emit: emit
12037    -1       };
12038    -1       descriptors = {
12039    -1         on: d(on),
12040    -1         once: d(once),
12041    -1         off: d(off),
12042    -1         emit: d(emit)
12043    -1       };
12044    -1       base = defineProperties({}, descriptors);
12045    -1       module.exports = exports = function(o) {
12046    -1         return o == null ? create(base) : defineProperties(Object(o), descriptors);
   -1  7171       CssSelectorParser.prototype.render = function(path) {
   -1  7172         return this._renderEntity(path).trim();
12047  7173       };
12048    -1       exports.methods = methods;
12049    -1     }, {
12050    -1       d: 149,
12051    -1       'es5-ext/object/valid-callable': 184
12052    -1     } ],
12053    -1     201: [ function(_dereq_, module, exports) {
12054    -1       module.exports = isPromise;
12055    -1       function isPromise(obj) {
12056    -1         return !!obj && (typeof obj === 'object' || typeof obj === 'function') && typeof obj.then === 'function';
12057    -1       }
12058    -1     }, {} ],
12059    -1     202: [ function(_dereq_, module, exports) {
12060    -1       'use strict';
12061    -1       var toPosInt = _dereq_('es5-ext/number/to-pos-integer'), create = Object.create, hasOwnProperty = Object.prototype.hasOwnProperty;
12062    -1       module.exports = function(limit) {
12063    -1         var size = 0, base = 1, queue = create(null), map = create(null), index = 0, del;
12064    -1         limit = toPosInt(limit);
12065    -1         return {
12066    -1           hit: function(id) {
12067    -1             var oldIndex = map[id], nuIndex = ++index;
12068    -1             queue[nuIndex] = id;
12069    -1             map[id] = nuIndex;
12070    -1             if (!oldIndex) {
12071    -1               ++size;
12072    -1               if (size <= limit) {
12073    -1                 return;
12074    -1               }
12075    -1               id = queue[base];
12076    -1               del(id);
12077    -1               return id;
12078    -1             }
12079    -1             delete queue[oldIndex];
12080    -1             if (base !== oldIndex) {
12081    -1               return;
12082    -1             }
12083    -1             while (!hasOwnProperty.call(queue, ++base)) {
12084    -1               continue;
12085    -1             }
12086    -1           },
12087    -1           delete: del = function(id) {
12088    -1             var oldIndex = map[id];
12089    -1             if (!oldIndex) {
12090    -1               return;
12091    -1             }
12092    -1             delete queue[oldIndex];
12093    -1             delete map[id];
12094    -1             --size;
12095    -1             if (base !== oldIndex) {
12096    -1               return;
12097    -1             }
12098    -1             if (!size) {
12099    -1               index = 0;
12100    -1               base = 1;
12101    -1               return;
12102    -1             }
12103    -1             while (!hasOwnProperty.call(queue, ++base)) {
12104    -1               continue;
   -1  7174       CssSelectorParser.prototype._renderEntity = function(entity) {
   -1  7175         var currentEntity, parts, res;
   -1  7176         res = '';
   -1  7177         switch (entity.type) {
   -1  7178          case 'ruleSet':
   -1  7179           currentEntity = entity.rule;
   -1  7180           parts = [];
   -1  7181           while (currentEntity) {
   -1  7182             if (currentEntity.nestingOperator) {
   -1  7183               parts.push(currentEntity.nestingOperator);
12105  7184             }
12106    -1           },
12107    -1           clear: function() {
12108    -1             size = 0;
12109    -1             base = 1;
12110    -1             queue = create(null);
12111    -1             map = create(null);
12112    -1             index = 0;
12113    -1           }
12114    -1         };
12115    -1       };
12116    -1     }, {
12117    -1       'es5-ext/number/to-pos-integer': 168
12118    -1     } ],
12119    -1     203: [ function(_dereq_, module, exports) {
12120    -1       'use strict';
12121    -1       var aFrom = _dereq_('es5-ext/array/from'), objectMap = _dereq_('es5-ext/object/map'), mixin = _dereq_('es5-ext/object/mixin'), defineLength = _dereq_('es5-ext/function/_define-length'), nextTick = _dereq_('next-tick');
12122    -1       var slice = Array.prototype.slice, apply = Function.prototype.apply, create = Object.create;
12123    -1       _dereq_('../lib/registered-extensions').async = function(tbi, conf) {
12124    -1         var waiting = create(null), cache = create(null), base = conf.memoized, original = conf.original, currentCallback, currentContext, currentArgs;
12125    -1         conf.memoized = defineLength(function(arg) {
12126    -1           var args = arguments, last = args[args.length - 1];
12127    -1           if (typeof last === 'function') {
12128    -1             currentCallback = last;
12129    -1             args = slice.call(args, 0, -1);
12130    -1           }
12131    -1           return base.apply(currentContext = this, currentArgs = args);
12132    -1         }, base);
12133    -1         try {
12134    -1           mixin(conf.memoized, base);
12135    -1         } catch (ignore) {}
12136    -1         conf.on('get', function(id) {
12137    -1           var cb, context, args;
12138    -1           if (!currentCallback) {
12139    -1             return;
   -1  7185             parts.push(this._renderEntity(currentEntity));
   -1  7186             currentEntity = currentEntity.rule;
12140  7187           }
12141    -1           if (waiting[id]) {
12142    -1             if (typeof waiting[id] === 'function') {
12143    -1               waiting[id] = [ waiting[id], currentCallback ];
   -1  7188           res = parts.join(' ');
   -1  7189           break;
   -1  7190 
   -1  7191          case 'selectors':
   -1  7192           res = entity.selectors.map(this._renderEntity, this).join(', ');
   -1  7193           break;
   -1  7194 
   -1  7195          case 'rule':
   -1  7196           if (entity.tagName) {
   -1  7197             if (entity.tagName === '*') {
   -1  7198               res = '*';
12144  7199             } else {
12145    -1               waiting[id].push(currentCallback);
   -1  7200               res = this.escapeIdentifier(entity.tagName);
12146  7201             }
12147    -1             currentCallback = null;
12148    -1             return;
12149  7202           }
12150    -1           cb = currentCallback;
12151    -1           context = currentContext;
12152    -1           args = currentArgs;
12153    -1           currentCallback = currentContext = currentArgs = null;
12154    -1           nextTick(function() {
12155    -1             var data;
12156    -1             if (hasOwnProperty.call(cache, id)) {
12157    -1               data = cache[id];
12158    -1               conf.emit('getasync', id, args, context);
12159    -1               apply.call(cb, data.context, data.args);
12160    -1             } else {
12161    -1               currentCallback = cb;
12162    -1               currentContext = context;
12163    -1               currentArgs = args;
12164    -1               base.apply(context, args);
12165    -1             }
12166    -1           });
12167    -1         });
12168    -1         conf.original = function() {
12169    -1           var args, cb, origCb, result;
12170    -1           if (!currentCallback) {
12171    -1             return apply.call(original, this, arguments);
12172    -1           }
12173    -1           args = aFrom(arguments);
12174    -1           cb = function self(err) {
12175    -1             var cb, args, id = self.id;
12176    -1             if (id == null) {
12177    -1               nextTick(apply.bind(self, this, arguments));
12178    -1               return undefined;
12179    -1             }
12180    -1             delete self.id;
12181    -1             cb = waiting[id];
12182    -1             delete waiting[id];
12183    -1             if (!cb) {
12184    -1               return undefined;
12185    -1             }
12186    -1             args = aFrom(arguments);
12187    -1             if (conf.has(id)) {
12188    -1               if (err) {
12189    -1                 conf.delete(id);
12190    -1               } else {
12191    -1                 cache[id] = {
12192    -1                   context: this,
12193    -1                   args: args
12194    -1                 };
12195    -1                 conf.emit('setasync', id, typeof cb === 'function' ? 1 : cb.length);
12196    -1               }
12197    -1             }
12198    -1             if (typeof cb === 'function') {
12199    -1               result = apply.call(cb, this, args);
12200    -1             } else {
12201    -1               cb.forEach(function(cb) {
12202    -1                 result = apply.call(cb, this, args);
12203    -1               }, this);
12204    -1             }
12205    -1             return result;
12206    -1           };
12207    -1           origCb = currentCallback;
12208    -1           currentCallback = currentContext = currentArgs = null;
12209    -1           args.push(cb);
12210    -1           result = apply.call(original, this, args);
12211    -1           cb.cb = origCb;
12212    -1           currentCallback = cb;
12213    -1           return result;
12214    -1         };
12215    -1         conf.on('set', function(id) {
12216    -1           if (!currentCallback) {
12217    -1             conf.delete(id);
12218    -1             return;
   -1  7203           if (entity.id) {
   -1  7204             res += '#' + this.escapeIdentifier(entity.id);
12219  7205           }
12220    -1           if (waiting[id]) {
12221    -1             if (typeof waiting[id] === 'function') {
12222    -1               waiting[id] = [ waiting[id], currentCallback.cb ];
12223    -1             } else {
12224    -1               waiting[id].push(currentCallback.cb);
12225    -1             }
12226    -1           } else {
12227    -1             waiting[id] = currentCallback.cb;
   -1  7206           if (entity.classNames) {
   -1  7207             res += entity.classNames.map(function(cn) {
   -1  7208               return '.' + this.escapeIdentifier(cn);
   -1  7209             }, this).join('');
12228  7210           }
12229    -1           delete currentCallback.cb;
12230    -1           currentCallback.id = id;
12231    -1           currentCallback = null;
12232    -1         });
12233    -1         conf.on('delete', function(id) {
12234    -1           var result;
12235    -1           if (hasOwnProperty.call(waiting, id)) {
12236    -1             return;
   -1  7211           if (entity.attrs) {
   -1  7212             res += entity.attrs.map(function(attr) {
   -1  7213               if (attr.operator) {
   -1  7214                 if (attr.valueType === 'substitute') {
   -1  7215                   return '[' + this.escapeIdentifier(attr.name) + attr.operator + '$' + attr.value + ']';
   -1  7216                 } else {
   -1  7217                   return '[' + this.escapeIdentifier(attr.name) + attr.operator + this.escapeStr(attr.value) + ']';
   -1  7218                 }
   -1  7219               } else {
   -1  7220                 return '[' + this.escapeIdentifier(attr.name) + ']';
   -1  7221               }
   -1  7222             }, this).join('');
12237  7223           }
12238    -1           if (!cache[id]) {
12239    -1             return;
   -1  7224           if (entity.pseudos) {
   -1  7225             res += entity.pseudos.map(function(pseudo) {
   -1  7226               if (pseudo.valueType) {
   -1  7227                 if (pseudo.valueType === 'selector') {
   -1  7228                   return ':' + this.escapeIdentifier(pseudo.name) + '(' + this._renderEntity(pseudo.value) + ')';
   -1  7229                 } else if (pseudo.valueType === 'substitute') {
   -1  7230                   return ':' + this.escapeIdentifier(pseudo.name) + '($' + pseudo.value + ')';
   -1  7231                 } else if (pseudo.valueType === 'numeric') {
   -1  7232                   return ':' + this.escapeIdentifier(pseudo.name) + '(' + pseudo.value + ')';
   -1  7233                 } else {
   -1  7234                   return ':' + this.escapeIdentifier(pseudo.name) + '(' + this.escapeIdentifier(pseudo.value) + ')';
   -1  7235                 }
   -1  7236               } else {
   -1  7237                 return ':' + this.escapeIdentifier(pseudo.name);
   -1  7238               }
   -1  7239             }, this).join('');
12240  7240           }
12241    -1           result = cache[id];
12242    -1           delete cache[id];
12243    -1           conf.emit('deleteasync', id, slice.call(result.args, 1));
12244    -1         });
12245    -1         conf.on('clear', function() {
12246    -1           var oldCache = cache;
12247    -1           cache = create(null);
12248    -1           conf.emit('clearasync', objectMap(oldCache, function(data) {
12249    -1             return slice.call(data.args, 1);
12250    -1           }));
12251    -1         });
   -1  7241           break;
   -1  7242 
   -1  7243          default:
   -1  7244           throw Error('Unknown entity type: "' + entity.type(+'".'));
   -1  7245         }
   -1  7246         return res;
12252  7247       };
12253    -1     }, {
12254    -1       '../lib/registered-extensions': 211,
12255    -1       'es5-ext/array/from': 152,
12256    -1       'es5-ext/function/_define-length': 157,
12257    -1       'es5-ext/object/map': 180,
12258    -1       'es5-ext/object/mixin': 181,
12259    -1       'next-tick': 221
12260    -1     } ],
12261    -1     204: [ function(_dereq_, module, exports) {
12262    -1       'use strict';
12263    -1       var callable = _dereq_('es5-ext/object/valid-callable'), forEach = _dereq_('es5-ext/object/for-each'), extensions = _dereq_('../lib/registered-extensions'), apply = Function.prototype.apply;
12264    -1       extensions.dispose = function(dispose, conf, options) {
12265    -1         var del;
12266    -1         callable(dispose);
12267    -1         if (options.async && extensions.async || options.promise && extensions.promise) {
12268    -1           conf.on('deleteasync', del = function(id, resultArray) {
12269    -1             apply.call(dispose, null, resultArray);
12270    -1           });
12271    -1           conf.on('clearasync', function(cache) {
12272    -1             forEach(cache, function(result, id) {
12273    -1               del(id, result);
12274    -1             });
   -1  7248       exports.CssSelectorParser = CssSelectorParser;
   -1  7249     }, {} ],
   -1  7250     29: [ function(_dereq_, module, exports) {
   -1  7251       (function() {
   -1  7252         'use strict';
   -1  7253         var doT = {
   -1  7254           name: 'doT',
   -1  7255           version: '1.1.1',
   -1  7256           templateSettings: {
   -1  7257             evaluate: /\{\{([\s\S]+?(\}?)+)\}\}/g,
   -1  7258             interpolate: /\{\{=([\s\S]+?)\}\}/g,
   -1  7259             encode: /\{\{!([\s\S]+?)\}\}/g,
   -1  7260             use: /\{\{#([\s\S]+?)\}\}/g,
   -1  7261             useParams: /(^|[^\w$])def(?:\.|\[[\'\"])([\w$\.]+)(?:[\'\"]\])?\s*\:\s*([\w$\.]+|\"[^\"]+\"|\'[^\']+\'|\{[^\}]+\})/g,
   -1  7262             define: /\{\{##\s*([\w\.$]+)\s*(\:|=)([\s\S]+?)#\}\}/g,
   -1  7263             defineParams: /^\s*([\w$]+):([\s\S]+)/,
   -1  7264             conditional: /\{\{\?(\?)?\s*([\s\S]*?)\s*\}\}/g,
   -1  7265             iterate: /\{\{~\s*(?:\}\}|([\s\S]+?)\s*\:\s*([\w$]+)\s*(?:\:\s*([\w$]+))?\s*\}\})/g,
   -1  7266             varname: 'it',
   -1  7267             strip: true,
   -1  7268             append: true,
   -1  7269             selfcontained: false,
   -1  7270             doNotSkipEncoded: false
   -1  7271           },
   -1  7272           template: undefined,
   -1  7273           compile: undefined,
   -1  7274           log: true
   -1  7275         }, _globals;
   -1  7276         doT.encodeHTMLSource = function(doNotSkipEncoded) {
   -1  7277           var encodeHTMLRules = {
   -1  7278             '&': '&#38;',
   -1  7279             '<': '&#60;',
   -1  7280             '>': '&#62;',
   -1  7281             '"': '&#34;',
   -1  7282             '\'': '&#39;',
   -1  7283             '/': '&#47;'
   -1  7284           }, matchHTML = doNotSkipEncoded ? /[&<>"'\/]/g : /&(?!#?\w+;)|<|>|"|'|\//g;
   -1  7285           return function(code) {
   -1  7286             return code ? code.toString().replace(matchHTML, function(m) {
   -1  7287               return encodeHTMLRules[m] || m;
   -1  7288             }) : '';
   -1  7289           };
   -1  7290         };
   -1  7291         _globals = function() {
   -1  7292           return this || (0, eval)('this');
   -1  7293         }();
   -1  7294         if (typeof module !== 'undefined' && module.exports) {
   -1  7295           module.exports = doT;
   -1  7296         } else if (typeof define === 'function' && define.amd) {
   -1  7297           define(function() {
   -1  7298             return doT;
12275  7299           });
12276    -1           return;
   -1  7300         } else {
   -1  7301           _globals.doT = doT;
12277  7302         }
12278    -1         conf.on('delete', del = function(id, result) {
12279    -1           dispose(result);
12280    -1         });
12281    -1         conf.on('clear', function(cache) {
12282    -1           forEach(cache, function(result, id) {
12283    -1             del(id, result);
   -1  7303         var startend = {
   -1  7304           append: {
   -1  7305             start: '\'+(',
   -1  7306             end: ')+\'',
   -1  7307             startencode: '\'+encodeHTML('
   -1  7308           },
   -1  7309           split: {
   -1  7310             start: '\';out+=(',
   -1  7311             end: ');out+=\'',
   -1  7312             startencode: '\';out+=encodeHTML('
   -1  7313           }
   -1  7314         }, skip = /$^/;
   -1  7315         function resolveDefs(c, block, def) {
   -1  7316           return (typeof block === 'string' ? block : block.toString()).replace(c.define || skip, function(m, code, assign, value) {
   -1  7317             if (code.indexOf('def.') === 0) {
   -1  7318               code = code.substring(4);
   -1  7319             }
   -1  7320             if (!(code in def)) {
   -1  7321               if (assign === ':') {
   -1  7322                 if (c.defineParams) {
   -1  7323                   value.replace(c.defineParams, function(m, param, v) {
   -1  7324                     def[code] = {
   -1  7325                       arg: param,
   -1  7326                       text: v
   -1  7327                     };
   -1  7328                   });
   -1  7329                 }
   -1  7330                 if (!(code in def)) {
   -1  7331                   def[code] = value;
   -1  7332                 }
   -1  7333               } else {
   -1  7334                 new Function('def', 'def[\'' + code + '\']=' + value)(def);
   -1  7335               }
   -1  7336             }
   -1  7337             return '';
   -1  7338           }).replace(c.use || skip, function(m, code) {
   -1  7339             if (c.useParams) {
   -1  7340               code = code.replace(c.useParams, function(m, s, d, param) {
   -1  7341                 if (def[d] && def[d].arg && param) {
   -1  7342                   var rw = (d + ':' + param).replace(/'|\\/g, '_');
   -1  7343                   def.__exp = def.__exp || {};
   -1  7344                   def.__exp[rw] = def[d].text.replace(new RegExp('(^|[^\\w$])' + def[d].arg + '([^\\w$])', 'g'), '$1' + param + '$2');
   -1  7345                   return s + 'def.__exp[\'' + rw + '\']';
   -1  7346                 }
   -1  7347               });
   -1  7348             }
   -1  7349             var v = new Function('def', 'return ' + code)(def);
   -1  7350             return v ? resolveDefs(c, v, def) : v;
12284  7351           });
12285    -1         });
12286    -1       };
12287    -1     }, {
12288    -1       '../lib/registered-extensions': 211,
12289    -1       'es5-ext/object/for-each': 173,
12290    -1       'es5-ext/object/valid-callable': 184
12291    -1     } ],
12292    -1     205: [ function(_dereq_, module, exports) {
12293    -1       'use strict';
12294    -1       var aFrom = _dereq_('es5-ext/array/from'), forEach = _dereq_('es5-ext/object/for-each'), nextTick = _dereq_('next-tick'), isPromise = _dereq_('is-promise'), timeout = _dereq_('timers-ext/valid-timeout'), extensions = _dereq_('../lib/registered-extensions');
12295    -1       var noop = Function.prototype, max = Math.max, min = Math.min, create = Object.create;
12296    -1       extensions.maxAge = function(maxAge, conf, options) {
12297    -1         var timeouts, postfix, preFetchAge, preFetchTimeouts;
12298    -1         maxAge = timeout(maxAge);
12299    -1         if (!maxAge) {
12300    -1           return;
12301  7352         }
12302    -1         timeouts = create(null);
12303    -1         postfix = options.async && extensions.async || options.promise && extensions.promise ? 'async' : '';
12304    -1         conf.on('set' + postfix, function(id) {
12305    -1           timeouts[id] = setTimeout(function() {
12306    -1             conf.delete(id);
12307    -1           }, maxAge);
12308    -1           if (typeof timeouts[id].unref === 'function') {
12309    -1             timeouts[id].unref();
12310    -1           }
12311    -1           if (!preFetchTimeouts) {
12312    -1             return;
   -1  7353         function unescape(code) {
   -1  7354           return code.replace(/\\('|\\)/g, '$1').replace(/[\r\t\n]/g, ' ');
   -1  7355         }
   -1  7356         doT.template = function(tmpl, c, def) {
   -1  7357           c = c || doT.templateSettings;
   -1  7358           var cse = c.append ? startend.append : startend.split, needhtmlencode, sid = 0, indv, str = c.use || c.define ? resolveDefs(c, tmpl, def || {}) : tmpl;
   -1  7359           str = ('var out=\'' + (c.strip ? str.replace(/(^|\r|\n)\t* +| +\t*(\r|\n|$)/g, ' ').replace(/\r|\n|\t|\/\*[\s\S]*?\*\//g, '') : str).replace(/'|\\/g, '\\$&').replace(c.interpolate || skip, function(m, code) {
   -1  7360             return cse.start + unescape(code) + cse.end;
   -1  7361           }).replace(c.encode || skip, function(m, code) {
   -1  7362             needhtmlencode = true;
   -1  7363             return cse.startencode + unescape(code) + cse.end;
   -1  7364           }).replace(c.conditional || skip, function(m, elsecase, code) {
   -1  7365             return elsecase ? code ? '\';}else if(' + unescape(code) + '){out+=\'' : '\';}else{out+=\'' : code ? '\';if(' + unescape(code) + '){out+=\'' : '\';}out+=\'';
   -1  7366           }).replace(c.iterate || skip, function(m, iterate, vname, iname) {
   -1  7367             if (!iterate) {
   -1  7368               return '\';} } out+=\'';
   -1  7369             }
   -1  7370             sid += 1;
   -1  7371             indv = iname || 'i' + sid;
   -1  7372             iterate = unescape(iterate);
   -1  7373             return '\';var arr' + sid + '=' + iterate + ';if(arr' + sid + '){var ' + vname + ',' + indv + '=-1,l' + sid + '=arr' + sid + '.length-1;while(' + indv + '<l' + sid + '){' + vname + '=arr' + sid + '[' + indv + '+=1];out+=\'';
   -1  7374           }).replace(c.evaluate || skip, function(m, code) {
   -1  7375             return '\';' + unescape(code) + 'out+=\'';
   -1  7376           }) + '\';return out;').replace(/\n/g, '\\n').replace(/\t/g, '\\t').replace(/\r/g, '\\r').replace(/(\s|;|\}|^|\{)out\+='';/g, '$1').replace(/\+''/g, '');
   -1  7377           if (needhtmlencode) {
   -1  7378             if (!c.selfcontained && _globals && !_globals._encodeHTML) {
   -1  7379               _globals._encodeHTML = doT.encodeHTMLSource(c.doNotSkipEncoded);
   -1  7380             }
   -1  7381             str = 'var encodeHTML = typeof _encodeHTML !== \'undefined\' ? _encodeHTML : (' + doT.encodeHTMLSource.toString() + '(' + (c.doNotSkipEncoded || '') + '));' + str;
12313  7382           }
12314    -1           if (preFetchTimeouts[id]) {
12315    -1             if (preFetchTimeouts[id] !== 'nextTick') {
12316    -1               clearTimeout(preFetchTimeouts[id]);
   -1  7383           try {
   -1  7384             return new Function(c.varname, str);
   -1  7385           } catch (e) {
   -1  7386             if (typeof console !== 'undefined') {
   -1  7387               console.log('Could not create a template function: ' + str);
12317  7388             }
   -1  7389             throw e;
12318  7390           }
12319    -1           preFetchTimeouts[id] = setTimeout(function() {
12320    -1             delete preFetchTimeouts[id];
12321    -1           }, preFetchAge);
12322    -1           if (typeof preFetchTimeouts[id].unref === 'function') {
12323    -1             preFetchTimeouts[id].unref();
12324    -1           }
12325    -1         });
12326    -1         conf.on('delete' + postfix, function(id) {
12327    -1           clearTimeout(timeouts[id]);
12328    -1           delete timeouts[id];
12329    -1           if (!preFetchTimeouts) {
12330    -1             return;
   -1  7391         };
   -1  7392         doT.compile = function(tmpl, def) {
   -1  7393           return doT.template(tmpl, null, def);
   -1  7394         };
   -1  7395       })();
   -1  7396     }, {} ],
   -1  7397     30: [ function(_dereq_, module, exports) {
   -1  7398       'use strict';
   -1  7399       module.exports = function() {
   -1  7400         return /\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F|\uD83D\uDC68(?:\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68\uD83C\uDFFB|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|[\u2695\u2696\u2708]\uFE0F|\uD83D[\uDC66\uDC67]|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708])\uFE0F|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C[\uDFFB-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)\uD83C\uDFFB|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB\uDFFC])|\uD83D\uDC69(?:\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB-\uDFFD])|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|(?:(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)\uFE0F|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\u200D[\u2640\u2642])|\uD83C\uDFF4\u200D\u2620)\uFE0F|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF4\uD83C\uDDF2|\uD83C\uDDF6\uD83C\uDDE6|[#\*0-9]\uFE0F\u20E3|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270A-\u270D]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC70\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDCAA\uDD74\uDD7A\uDD90\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD36\uDDB5\uDDB6\uDDBB\uDDD2-\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5\uDEEB\uDEEC\uDEF4-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g;
   -1  7401       };
   -1  7402     }, {} ],
   -1  7403     31: [ function(_dereq_, module, exports) {
   -1  7404       (function(process, global) {
   -1  7405         (function(global, factory) {
   -1  7406           typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : typeof define === 'function' && define.amd ? define(factory) : global.ES6Promise = factory();
   -1  7407         })(this, function() {
   -1  7408           'use strict';
   -1  7409           function objectOrFunction(x) {
   -1  7410             var type = typeof x;
   -1  7411             return x !== null && (type === 'object' || type === 'function');
12331  7412           }
12332    -1           if (preFetchTimeouts[id] !== 'nextTick') {
12333    -1             clearTimeout(preFetchTimeouts[id]);
   -1  7413           function isFunction(x) {
   -1  7414             return typeof x === 'function';
12334  7415           }
12335    -1           delete preFetchTimeouts[id];
12336    -1         });
12337    -1         if (options.preFetch) {
12338    -1           if (options.preFetch === true || isNaN(options.preFetch)) {
12339    -1             preFetchAge = .333;
   -1  7416           var _isArray = void 0;
   -1  7417           if (Array.isArray) {
   -1  7418             _isArray = Array.isArray;
12340  7419           } else {
12341    -1             preFetchAge = max(min(Number(options.preFetch), 1), 0);
12342    -1           }
12343    -1           if (preFetchAge) {
12344    -1             preFetchTimeouts = {};
12345    -1             preFetchAge = (1 - preFetchAge) * maxAge;
12346    -1             conf.on('get' + postfix, function(id, args, context) {
12347    -1               if (!preFetchTimeouts[id]) {
12348    -1                 preFetchTimeouts[id] = 'nextTick';
12349    -1                 nextTick(function() {
12350    -1                   var result;
12351    -1                   if (preFetchTimeouts[id] !== 'nextTick') {
12352    -1                     return;
12353    -1                   }
12354    -1                   delete preFetchTimeouts[id];
12355    -1                   conf.delete(id);
12356    -1                   if (options.async) {
12357    -1                     args = aFrom(args);
12358    -1                     args.push(noop);
12359    -1                   }
12360    -1                   result = conf.memoized.apply(context, args);
12361    -1                   if (options.promise) {
12362    -1                     if (isPromise(result)) {
12363    -1                       if (typeof result.done === 'function') {
12364    -1                         result.done(noop, noop);
12365    -1                       } else {
12366    -1                         result.then(noop, noop);
12367    -1                       }
12368    -1                     }
12369    -1                   }
12370    -1                 });
12371    -1               }
12372    -1             });
   -1  7420             _isArray = function(x) {
   -1  7421               return Object.prototype.toString.call(x) === '[object Array]';
   -1  7422             };
12373  7423           }
12374    -1         }
12375    -1         conf.on('clear' + postfix, function() {
12376    -1           forEach(timeouts, function(id) {
12377    -1             clearTimeout(id);
12378    -1           });
12379    -1           timeouts = {};
12380    -1           if (preFetchTimeouts) {
12381    -1             forEach(preFetchTimeouts, function(id) {
12382    -1               if (id !== 'nextTick') {
12383    -1                 clearTimeout(id);
   -1  7424           var isArray = _isArray;
   -1  7425           var len = 0;
   -1  7426           var vertxNext = void 0;
   -1  7427           var customSchedulerFn = void 0;
   -1  7428           var asap = function asap(callback, arg) {
   -1  7429             queue[len] = callback;
   -1  7430             queue[len + 1] = arg;
   -1  7431             len += 2;
   -1  7432             if (len === 2) {
   -1  7433               if (customSchedulerFn) {
   -1  7434                 customSchedulerFn(flush);
   -1  7435               } else {
   -1  7436                 scheduleFlush();
12384  7437               }
12385    -1             });
12386    -1             preFetchTimeouts = {};
12387    -1           }
12388    -1         });
12389    -1       };
12390    -1     }, {
12391    -1       '../lib/registered-extensions': 211,
12392    -1       'es5-ext/array/from': 152,
12393    -1       'es5-ext/object/for-each': 173,
12394    -1       'is-promise': 201,
12395    -1       'next-tick': 221,
12396    -1       'timers-ext/valid-timeout': 225
12397    -1     } ],
12398    -1     206: [ function(_dereq_, module, exports) {
12399    -1       'use strict';
12400    -1       var toPosInteger = _dereq_('es5-ext/number/to-pos-integer'), lruQueue = _dereq_('lru-queue'), extensions = _dereq_('../lib/registered-extensions');
12401    -1       extensions.max = function(max, conf, options) {
12402    -1         var postfix, queue, hit;
12403    -1         max = toPosInteger(max);
12404    -1         if (!max) {
12405    -1           return;
12406    -1         }
12407    -1         queue = lruQueue(max);
12408    -1         postfix = options.async && extensions.async || options.promise && extensions.promise ? 'async' : '';
12409    -1         conf.on('set' + postfix, hit = function(id) {
12410    -1           id = queue.hit(id);
12411    -1           if (id === undefined) {
12412    -1             return;
   -1  7438             }
   -1  7439           };
   -1  7440           function setScheduler(scheduleFn) {
   -1  7441             customSchedulerFn = scheduleFn;
12413  7442           }
12414    -1           conf.delete(id);
12415    -1         });
12416    -1         conf.on('get' + postfix, hit);
12417    -1         conf.on('delete' + postfix, queue.delete);
12418    -1         conf.on('clear' + postfix, queue.clear);
12419    -1       };
12420    -1     }, {
12421    -1       '../lib/registered-extensions': 211,
12422    -1       'es5-ext/number/to-pos-integer': 168,
12423    -1       'lru-queue': 202
12424    -1     } ],
12425    -1     207: [ function(_dereq_, module, exports) {
12426    -1       'use strict';
12427    -1       var objectMap = _dereq_('es5-ext/object/map'), primitiveSet = _dereq_('es5-ext/object/primitive-set'), ensureString = _dereq_('es5-ext/object/validate-stringifiable-value'), toShortString = _dereq_('es5-ext/to-short-string-representation'), isPromise = _dereq_('is-promise'), nextTick = _dereq_('next-tick');
12428    -1       var create = Object.create, supportedModes = primitiveSet('then', 'then:finally', 'done', 'done:finally');
12429    -1       _dereq_('../lib/registered-extensions').promise = function(mode, conf) {
12430    -1         var waiting = create(null), cache = create(null), promises = create(null);
12431    -1         if (mode === true) {
12432    -1           mode = null;
12433    -1         } else {
12434    -1           mode = ensureString(mode);
12435    -1           if (!supportedModes[mode]) {
12436    -1             throw new TypeError('\'' + toShortString(mode) + '\' is not valid promise mode');
   -1  7443           function setAsap(asapFn) {
   -1  7444             asap = asapFn;
12437  7445           }
12438    -1         }
12439    -1         conf.on('set', function(id, ignore, promise) {
12440    -1           var isFailed = false;
12441    -1           if (!isPromise(promise)) {
12442    -1             cache[id] = promise;
12443    -1             conf.emit('setasync', id, 1);
12444    -1             return;
   -1  7446           var browserWindow = typeof window !== 'undefined' ? window : undefined;
   -1  7447           var browserGlobal = browserWindow || {};
   -1  7448           var BrowserMutationObserver = browserGlobal.MutationObserver || browserGlobal.WebKitMutationObserver;
   -1  7449           var isNode = typeof self === 'undefined' && typeof process !== 'undefined' && {}.toString.call(process) === '[object process]';
   -1  7450           var isWorker = typeof Uint8ClampedArray !== 'undefined' && typeof importScripts !== 'undefined' && typeof MessageChannel !== 'undefined';
   -1  7451           function useNextTick() {
   -1  7452             return function() {
   -1  7453               return process.nextTick(flush);
   -1  7454             };
12445  7455           }
12446    -1           waiting[id] = 1;
12447    -1           promises[id] = promise;
12448    -1           var onSuccess = function(result) {
12449    -1             var count = waiting[id];
12450    -1             if (isFailed) {
12451    -1               throw new Error('Memoizee error: Detected unordered then|done & finally resolution, which ' + 'in turn makes proper detection of success/failure impossible (when in ' + '\'done:finally\' mode)\n' + 'Consider to rely on \'then\' or \'done\' mode instead.');
12452    -1             }
12453    -1             if (!count) {
12454    -1               return;
12455    -1             }
12456    -1             delete waiting[id];
12457    -1             cache[id] = result;
12458    -1             conf.emit('setasync', id, count);
12459    -1           };
12460    -1           var onFailure = function() {
12461    -1             isFailed = true;
12462    -1             if (!waiting[id]) {
12463    -1               return;
   -1  7456           function useVertxTimer() {
   -1  7457             if (typeof vertxNext !== 'undefined') {
   -1  7458               return function() {
   -1  7459                 vertxNext(flush);
   -1  7460               };
12464  7461             }
12465    -1             delete waiting[id];
12466    -1             delete promises[id];
12467    -1             conf.delete(id);
12468    -1           };
12469    -1           var resolvedMode = mode;
12470    -1           if (!resolvedMode) {
12471    -1             resolvedMode = 'then';
   -1  7462             return useSetTimeout();
12472  7463           }
12473    -1           if (resolvedMode === 'then') {
12474    -1             var nextTickFailure = function() {
12475    -1               nextTick(onFailure);
   -1  7464           function useMutationObserver() {
   -1  7465             var iterations = 0;
   -1  7466             var observer = new BrowserMutationObserver(flush);
   -1  7467             var node = document.createTextNode('');
   -1  7468             observer.observe(node, {
   -1  7469               characterData: true
   -1  7470             });
   -1  7471             return function() {
   -1  7472               node.data = iterations = ++iterations % 2;
12476  7473             };
12477    -1             promise = promise.then(function(result) {
12478    -1               nextTick(onSuccess.bind(this, result));
12479    -1             }, nextTickFailure);
12480    -1             if (typeof promise.finally === 'function') {
12481    -1               promise.finally(nextTickFailure);
12482    -1             }
12483    -1           } else if (resolvedMode === 'done') {
12484    -1             if (typeof promise.done !== 'function') {
12485    -1               throw new Error('Memoizee error: Retrieved promise does not implement \'done\' ' + 'in \'done\' mode');
12486    -1             }
12487    -1             promise.done(onSuccess, onFailure);
12488    -1           } else if (resolvedMode === 'done:finally') {
12489    -1             if (typeof promise.done !== 'function') {
12490    -1               throw new Error('Memoizee error: Retrieved promise does not implement \'done\' ' + 'in \'done:finally\' mode');
12491    -1             }
12492    -1             if (typeof promise.finally !== 'function') {
12493    -1               throw new Error('Memoizee error: Retrieved promise does not implement \'finally\' ' + 'in \'done:finally\' mode');
12494    -1             }
12495    -1             promise.done(onSuccess);
12496    -1             promise.finally(onFailure);
12497  7474           }
12498    -1         });
12499    -1         conf.on('get', function(id, args, context) {
12500    -1           var promise;
12501    -1           if (waiting[id]) {
12502    -1             ++waiting[id];
12503    -1             return;
   -1  7475           function useMessageChannel() {
   -1  7476             var channel = new MessageChannel();
   -1  7477             channel.port1.onmessage = flush;
   -1  7478             return function() {
   -1  7479               return channel.port2.postMessage(0);
   -1  7480             };
12504  7481           }
12505    -1           promise = promises[id];
12506    -1           var emit = function() {
12507    -1             conf.emit('getasync', id, args, context);
12508    -1           };
12509    -1           if (isPromise(promise)) {
12510    -1             if (typeof promise.done === 'function') {
12511    -1               promise.done(emit);
12512    -1             } else {
12513    -1               promise.then(function() {
12514    -1                 nextTick(emit);
12515    -1               });
   -1  7482           function useSetTimeout() {
   -1  7483             var globalSetTimeout = setTimeout;
   -1  7484             return function() {
   -1  7485               return globalSetTimeout(flush, 1);
   -1  7486             };
   -1  7487           }
   -1  7488           var queue = new Array(1e3);
   -1  7489           function flush() {
   -1  7490             for (var i = 0; i < len; i += 2) {
   -1  7491               var callback = queue[i];
   -1  7492               var arg = queue[i + 1];
   -1  7493               callback(arg);
   -1  7494               queue[i] = undefined;
   -1  7495               queue[i + 1] = undefined;
12516  7496             }
12517    -1           } else {
12518    -1             emit();
   -1  7497             len = 0;
12519  7498           }
12520    -1         });
12521    -1         conf.on('delete', function(id) {
12522    -1           delete promises[id];
12523    -1           if (waiting[id]) {
12524    -1             delete waiting[id];
12525    -1             return;
   -1  7499           function attemptVertx() {
   -1  7500             try {
   -1  7501               var vertx = Function('return this')().require('vertx');
   -1  7502               vertxNext = vertx.runOnLoop || vertx.runOnContext;
   -1  7503               return useVertxTimer();
   -1  7504             } catch (e) {
   -1  7505               return useSetTimeout();
   -1  7506             }
12526  7507           }
12527    -1           if (!hasOwnProperty.call(cache, id)) {
12528    -1             return;
   -1  7508           var scheduleFlush = void 0;
   -1  7509           if (isNode) {
   -1  7510             scheduleFlush = useNextTick();
   -1  7511           } else if (BrowserMutationObserver) {
   -1  7512             scheduleFlush = useMutationObserver();
   -1  7513           } else if (isWorker) {
   -1  7514             scheduleFlush = useMessageChannel();
   -1  7515           } else if (browserWindow === undefined && typeof _dereq_ === 'function') {
   -1  7516             scheduleFlush = attemptVertx();
   -1  7517           } else {
   -1  7518             scheduleFlush = useSetTimeout();
12529  7519           }
12530    -1           var result = cache[id];
12531    -1           delete cache[id];
12532    -1           conf.emit('deleteasync', id, [ result ]);
12533    -1         });
12534    -1         conf.on('clear', function() {
12535    -1           var oldCache = cache;
12536    -1           cache = create(null);
12537    -1           waiting = create(null);
12538    -1           promises = create(null);
12539    -1           conf.emit('clearasync', objectMap(oldCache, function(data) {
12540    -1             return [ data ];
12541    -1           }));
12542    -1         });
12543    -1       };
12544    -1     }, {
12545    -1       '../lib/registered-extensions': 211,
12546    -1       'es5-ext/object/map': 180,
12547    -1       'es5-ext/object/primitive-set': 183,
12548    -1       'es5-ext/object/validate-stringifiable-value': 186,
12549    -1       'es5-ext/to-short-string-representation': 193,
12550    -1       'is-promise': 201,
12551    -1       'next-tick': 221
12552    -1     } ],
12553    -1     208: [ function(_dereq_, module, exports) {
12554    -1       'use strict';
12555    -1       var d = _dereq_('d'), extensions = _dereq_('../lib/registered-extensions'), create = Object.create, defineProperties = Object.defineProperties;
12556    -1       extensions.refCounter = function(ignore, conf, options) {
12557    -1         var cache, postfix;
12558    -1         cache = create(null);
12559    -1         postfix = options.async && extensions.async || options.promise && extensions.promise ? 'async' : '';
12560    -1         conf.on('set' + postfix, function(id, length) {
12561    -1           cache[id] = length || 1;
12562    -1         });
12563    -1         conf.on('get' + postfix, function(id) {
12564    -1           ++cache[id];
12565    -1         });
12566    -1         conf.on('delete' + postfix, function(id) {
12567    -1           delete cache[id];
12568    -1         });
12569    -1         conf.on('clear' + postfix, function() {
12570    -1           cache = {};
12571    -1         });
12572    -1         defineProperties(conf.memoized, {
12573    -1           deleteRef: d(function() {
12574    -1             var id = conf.get(arguments);
12575    -1             if (id === null) {
12576    -1               return null;
12577    -1             }
12578    -1             if (!cache[id]) {
12579    -1               return null;
   -1  7520           function then(onFulfillment, onRejection) {
   -1  7521             var parent = this;
   -1  7522             var child = new this.constructor(noop);
   -1  7523             if (child[PROMISE_ID] === undefined) {
   -1  7524               makePromise(child);
12580  7525             }
12581    -1             if (!--cache[id]) {
12582    -1               conf.delete(id);
12583    -1               return true;
   -1  7526             var _state = parent._state;
   -1  7527             if (_state) {
   -1  7528               var callback = arguments[_state - 1];
   -1  7529               asap(function() {
   -1  7530                 return invokeCallback(_state, child, callback, parent._result);
   -1  7531               });
   -1  7532             } else {
   -1  7533               subscribe(parent, child, onFulfillment, onRejection);
12584  7534             }
12585    -1             return false;
12586    -1           }),
12587    -1           getRefCount: d(function() {
12588    -1             var id = conf.get(arguments);
12589    -1             if (id === null) {
12590    -1               return 0;
   -1  7535             return child;
   -1  7536           }
   -1  7537           function resolve$1(object) {
   -1  7538             var Constructor = this;
   -1  7539             if (object && typeof object === 'object' && object.constructor === Constructor) {
   -1  7540               return object;
12591  7541             }
12592    -1             if (!cache[id]) {
12593    -1               return 0;
   -1  7542             var promise = new Constructor(noop);
   -1  7543             resolve(promise, object);
   -1  7544             return promise;
   -1  7545           }
   -1  7546           var PROMISE_ID = Math.random().toString(36).substring(2);
   -1  7547           function noop() {}
   -1  7548           var PENDING = void 0;
   -1  7549           var FULFILLED = 1;
   -1  7550           var REJECTED = 2;
   -1  7551           var TRY_CATCH_ERROR = {
   -1  7552             error: null
   -1  7553           };
   -1  7554           function selfFulfillment() {
   -1  7555             return new TypeError('You cannot resolve a promise with itself');
   -1  7556           }
   -1  7557           function cannotReturnOwn() {
   -1  7558             return new TypeError('A promises callback cannot return that same promise.');
   -1  7559           }
   -1  7560           function getThen(promise) {
   -1  7561             try {
   -1  7562               return promise.then;
   -1  7563             } catch (error) {
   -1  7564               TRY_CATCH_ERROR.error = error;
   -1  7565               return TRY_CATCH_ERROR;
12594  7566             }
12595    -1             return cache[id];
12596    -1           })
12597    -1         });
12598    -1       };
12599    -1     }, {
12600    -1       '../lib/registered-extensions': 211,
12601    -1       d: 149
12602    -1     } ],
12603    -1     209: [ function(_dereq_, module, exports) {
12604    -1       'use strict';
12605    -1       var normalizeOpts = _dereq_('es5-ext/object/normalize-options'), resolveLength = _dereq_('./lib/resolve-length'), plain = _dereq_('./plain');
12606    -1       module.exports = function(fn) {
12607    -1         var options = normalizeOpts(arguments[1]), length;
12608    -1         if (!options.normalizer) {
12609    -1           length = options.length = resolveLength(options.length, fn.length, options.async);
12610    -1           if (length !== 0) {
12611    -1             if (options.primitive) {
12612    -1               if (length === false) {
12613    -1                 options.normalizer = _dereq_('./normalizers/primitive');
12614    -1               } else if (length > 1) {
12615    -1                 options.normalizer = _dereq_('./normalizers/get-primitive-fixed')(length);
12616    -1               }
12617    -1             } else if (length === false) {
12618    -1               options.normalizer = _dereq_('./normalizers/get')();
12619    -1             } else if (length === 1) {
12620    -1               options.normalizer = _dereq_('./normalizers/get-1')();
12621    -1             } else {
12622    -1               options.normalizer = _dereq_('./normalizers/get-fixed')(length);
   -1  7567           }
   -1  7568           function tryThen(then$$1, value, fulfillmentHandler, rejectionHandler) {
   -1  7569             try {
   -1  7570               then$$1.call(value, fulfillmentHandler, rejectionHandler);
   -1  7571             } catch (e) {
   -1  7572               return e;
12623  7573             }
12624  7574           }
12625    -1         }
12626    -1         if (options.async) {
12627    -1           _dereq_('./ext/async');
12628    -1         }
12629    -1         if (options.promise) {
12630    -1           _dereq_('./ext/promise');
12631    -1         }
12632    -1         if (options.dispose) {
12633    -1           _dereq_('./ext/dispose');
12634    -1         }
12635    -1         if (options.maxAge) {
12636    -1           _dereq_('./ext/max-age');
12637    -1         }
12638    -1         if (options.max) {
12639    -1           _dereq_('./ext/max');
12640    -1         }
12641    -1         if (options.refCounter) {
12642    -1           _dereq_('./ext/ref-counter');
12643    -1         }
12644    -1         return plain(fn, options);
12645    -1       };
12646    -1     }, {
12647    -1       './ext/async': 203,
12648    -1       './ext/dispose': 204,
12649    -1       './ext/max': 206,
12650    -1       './ext/max-age': 205,
12651    -1       './ext/promise': 207,
12652    -1       './ext/ref-counter': 208,
12653    -1       './lib/resolve-length': 212,
12654    -1       './normalizers/get': 218,
12655    -1       './normalizers/get-1': 215,
12656    -1       './normalizers/get-fixed': 216,
12657    -1       './normalizers/get-primitive-fixed': 217,
12658    -1       './normalizers/primitive': 219,
12659    -1       './plain': 220,
12660    -1       'es5-ext/object/normalize-options': 182
12661    -1     } ],
12662    -1     210: [ function(_dereq_, module, exports) {
12663    -1       'use strict';
12664    -1       var customError = _dereq_('es5-ext/error/custom'), defineLength = _dereq_('es5-ext/function/_define-length'), d = _dereq_('d'), ee = _dereq_('event-emitter').methods, resolveResolve = _dereq_('./resolve-resolve'), resolveNormalize = _dereq_('./resolve-normalize');
12665    -1       var apply = Function.prototype.apply, call = Function.prototype.call, create = Object.create, defineProperties = Object.defineProperties, on = ee.on, emit = ee.emit;
12666    -1       module.exports = function(original, length, options) {
12667    -1         var cache = create(null), conf, memLength, get, set, del, clear, extDel, extGet, extHas, normalizer, getListeners, setListeners, deleteListeners, memoized, resolve;
12668    -1         if (length !== false) {
12669    -1           memLength = length;
12670    -1         } else if (isNaN(original.length)) {
12671    -1           memLength = 1;
12672    -1         } else {
12673    -1           memLength = original.length;
12674    -1         }
12675    -1         if (options.normalizer) {
12676    -1           normalizer = resolveNormalize(options.normalizer);
12677    -1           get = normalizer.get;
12678    -1           set = normalizer.set;
12679    -1           del = normalizer.delete;
12680    -1           clear = normalizer.clear;
12681    -1         }
12682    -1         if (options.resolvers != null) {
12683    -1           resolve = resolveResolve(options.resolvers);
12684    -1         }
12685    -1         if (get) {
12686    -1           memoized = defineLength(function(arg) {
12687    -1             var id, result, args = arguments;
12688    -1             if (resolve) {
12689    -1               args = resolve(args);
12690    -1             }
12691    -1             id = get(args);
12692    -1             if (id !== null) {
12693    -1               if (hasOwnProperty.call(cache, id)) {
12694    -1                 if (getListeners) {
12695    -1                   conf.emit('get', id, args, this);
   -1  7575           function handleForeignThenable(promise, thenable, then$$1) {
   -1  7576             asap(function(promise) {
   -1  7577               var sealed = false;
   -1  7578               var error = tryThen(then$$1, thenable, function(value) {
   -1  7579                 if (sealed) {
   -1  7580                   return;
   -1  7581                 }
   -1  7582                 sealed = true;
   -1  7583                 if (thenable !== value) {
   -1  7584                   resolve(promise, value);
   -1  7585                 } else {
   -1  7586                   fulfill(promise, value);
   -1  7587                 }
   -1  7588               }, function(reason) {
   -1  7589                 if (sealed) {
   -1  7590                   return;
12696  7591                 }
12697    -1                 return cache[id];
   -1  7592                 sealed = true;
   -1  7593                 reject(promise, reason);
   -1  7594               }, 'Settle: ' + (promise._label || ' unknown promise'));
   -1  7595               if (!sealed && error) {
   -1  7596                 sealed = true;
   -1  7597                 reject(promise, error);
12698  7598               }
12699    -1             }
12700    -1             if (args.length === 1) {
12701    -1               result = call.call(original, this, args[0]);
   -1  7599             }, promise);
   -1  7600           }
   -1  7601           function handleOwnThenable(promise, thenable) {
   -1  7602             if (thenable._state === FULFILLED) {
   -1  7603               fulfill(promise, thenable._result);
   -1  7604             } else if (thenable._state === REJECTED) {
   -1  7605               reject(promise, thenable._result);
12702  7606             } else {
12703    -1               result = apply.call(original, this, args);
12704    -1             }
12705    -1             if (id === null) {
12706    -1               id = get(args);
12707    -1               if (id !== null) {
12708    -1                 throw customError('Circular invocation', 'CIRCULAR_INVOCATION');
12709    -1               }
12710    -1               id = set(args);
12711    -1             } else if (hasOwnProperty.call(cache, id)) {
12712    -1               throw customError('Circular invocation', 'CIRCULAR_INVOCATION');
12713    -1             }
12714    -1             cache[id] = result;
12715    -1             if (setListeners) {
12716    -1               conf.emit('set', id, null, result);
12717    -1             }
12718    -1             return result;
12719    -1           }, memLength);
12720    -1         } else if (length === 0) {
12721    -1           memoized = function() {
12722    -1             var result;
12723    -1             if (hasOwnProperty.call(cache, 'data')) {
12724    -1               if (getListeners) {
12725    -1                 conf.emit('get', 'data', arguments, this);
12726    -1               }
12727    -1               return cache.data;
   -1  7607               subscribe(thenable, undefined, function(value) {
   -1  7608                 return resolve(promise, value);
   -1  7609               }, function(reason) {
   -1  7610                 return reject(promise, reason);
   -1  7611               });
12728  7612             }
12729    -1             if (arguments.length) {
12730    -1               result = apply.call(original, this, arguments);
   -1  7613           }
   -1  7614           function handleMaybeThenable(promise, maybeThenable, then$$1) {
   -1  7615             if (maybeThenable.constructor === promise.constructor && then$$1 === then && maybeThenable.constructor.resolve === resolve$1) {
   -1  7616               handleOwnThenable(promise, maybeThenable);
12731  7617             } else {
12732    -1               result = call.call(original, this);
12733    -1             }
12734    -1             if (hasOwnProperty.call(cache, 'data')) {
12735    -1               throw customError('Circular invocation', 'CIRCULAR_INVOCATION');
12736    -1             }
12737    -1             cache.data = result;
12738    -1             if (setListeners) {
12739    -1               conf.emit('set', 'data', null, result);
12740    -1             }
12741    -1             return result;
12742    -1           };
12743    -1         } else {
12744    -1           memoized = function(arg) {
12745    -1             var result, args = arguments, id;
12746    -1             if (resolve) {
12747    -1               args = resolve(arguments);
12748    -1             }
12749    -1             id = String(args[0]);
12750    -1             if (hasOwnProperty.call(cache, id)) {
12751    -1               if (getListeners) {
12752    -1                 conf.emit('get', id, args, this);
   -1  7618               if (then$$1 === TRY_CATCH_ERROR) {
   -1  7619                 reject(promise, TRY_CATCH_ERROR.error);
   -1  7620                 TRY_CATCH_ERROR.error = null;
   -1  7621               } else if (then$$1 === undefined) {
   -1  7622                 fulfill(promise, maybeThenable);
   -1  7623               } else if (isFunction(then$$1)) {
   -1  7624                 handleForeignThenable(promise, maybeThenable, then$$1);
   -1  7625               } else {
   -1  7626                 fulfill(promise, maybeThenable);
12753  7627               }
12754    -1               return cache[id];
12755  7628             }
12756    -1             if (args.length === 1) {
12757    -1               result = call.call(original, this, args[0]);
   -1  7629           }
   -1  7630           function resolve(promise, value) {
   -1  7631             if (promise === value) {
   -1  7632               reject(promise, selfFulfillment());
   -1  7633             } else if (objectOrFunction(value)) {
   -1  7634               handleMaybeThenable(promise, value, getThen(value));
12758  7635             } else {
12759    -1               result = apply.call(original, this, args);
12760    -1             }
12761    -1             if (hasOwnProperty.call(cache, id)) {
12762    -1               throw customError('Circular invocation', 'CIRCULAR_INVOCATION');
12763    -1             }
12764    -1             cache[id] = result;
12765    -1             if (setListeners) {
12766    -1               conf.emit('set', id, null, result);
12767    -1             }
12768    -1             return result;
12769    -1           };
12770    -1         }
12771    -1         conf = {
12772    -1           original: original,
12773    -1           memoized: memoized,
12774    -1           profileName: options.profileName,
12775    -1           get: function(args) {
12776    -1             if (resolve) {
12777    -1               args = resolve(args);
   -1  7636               fulfill(promise, value);
12778  7637             }
12779    -1             if (get) {
12780    -1               return get(args);
   -1  7638           }
   -1  7639           function publishRejection(promise) {
   -1  7640             if (promise._onerror) {
   -1  7641               promise._onerror(promise._result);
12781  7642             }
12782    -1             return String(args[0]);
12783    -1           },
12784    -1           has: function(id) {
12785    -1             return hasOwnProperty.call(cache, id);
12786    -1           },
12787    -1           delete: function(id) {
12788    -1             var result;
12789    -1             if (!hasOwnProperty.call(cache, id)) {
   -1  7643             publish(promise);
   -1  7644           }
   -1  7645           function fulfill(promise, value) {
   -1  7646             if (promise._state !== PENDING) {
12790  7647               return;
12791  7648             }
12792    -1             if (del) {
12793    -1               del(id);
12794    -1             }
12795    -1             result = cache[id];
12796    -1             delete cache[id];
12797    -1             if (deleteListeners) {
12798    -1               conf.emit('delete', id, result);
12799    -1             }
12800    -1           },
12801    -1           clear: function() {
12802    -1             var oldCache = cache;
12803    -1             if (clear) {
12804    -1               clear();
   -1  7649             promise._result = value;
   -1  7650             promise._state = FULFILLED;
   -1  7651             if (promise._subscribers.length !== 0) {
   -1  7652               asap(publish, promise);
12805  7653             }
12806    -1             cache = create(null);
12807    -1             conf.emit('clear', oldCache);
12808    -1           },
12809    -1           on: function(type, listener) {
12810    -1             if (type === 'get') {
12811    -1               getListeners = true;
12812    -1             } else if (type === 'set') {
12813    -1               setListeners = true;
12814    -1             } else if (type === 'delete') {
12815    -1               deleteListeners = true;
12816    -1             }
12817    -1             return on.call(this, type, listener);
12818    -1           },
12819    -1           emit: emit,
12820    -1           updateEnv: function() {
12821    -1             original = conf.original;
12822  7654           }
12823    -1         };
12824    -1         if (get) {
12825    -1           extDel = defineLength(function(arg) {
12826    -1             var id, args = arguments;
12827    -1             if (resolve) {
12828    -1               args = resolve(args);
12829    -1             }
12830    -1             id = get(args);
12831    -1             if (id === null) {
   -1  7655           function reject(promise, reason) {
   -1  7656             if (promise._state !== PENDING) {
12832  7657               return;
12833  7658             }
12834    -1             conf.delete(id);
12835    -1           }, memLength);
12836    -1         } else if (length === 0) {
12837    -1           extDel = function() {
12838    -1             return conf.delete('data');
12839    -1           };
12840    -1         } else {
12841    -1           extDel = function(arg) {
12842    -1             if (resolve) {
12843    -1               arg = resolve(arguments)[0];
12844    -1             }
12845    -1             return conf.delete(arg);
12846    -1           };
12847    -1         }
12848    -1         extGet = defineLength(function() {
12849    -1           var id, args = arguments;
12850    -1           if (length === 0) {
12851    -1             return cache.data;
12852    -1           }
12853    -1           if (resolve) {
12854    -1             args = resolve(args);
12855    -1           }
12856    -1           if (get) {
12857    -1             id = get(args);
12858    -1           } else {
12859    -1             id = String(args[0]);
12860    -1           }
12861    -1           return cache[id];
12862    -1         });
12863    -1         extHas = defineLength(function() {
12864    -1           var id, args = arguments;
12865    -1           if (length === 0) {
12866    -1             return conf.has('data');
12867    -1           }
12868    -1           if (resolve) {
12869    -1             args = resolve(args);
12870    -1           }
12871    -1           if (get) {
12872    -1             id = get(args);
12873    -1           } else {
12874    -1             id = String(args[0]);
12875    -1           }
12876    -1           if (id === null) {
12877    -1             return false;
12878    -1           }
12879    -1           return conf.has(id);
12880    -1         });
12881    -1         defineProperties(memoized, {
12882    -1           __memoized__: d(true),
12883    -1           delete: d(extDel),
12884    -1           clear: d(conf.clear),
12885    -1           _get: d(extGet),
12886    -1           _has: d(extHas)
12887    -1         });
12888    -1         return conf;
12889    -1       };
12890    -1     }, {
12891    -1       './resolve-normalize': 213,
12892    -1       './resolve-resolve': 214,
12893    -1       d: 149,
12894    -1       'es5-ext/error/custom': 156,
12895    -1       'es5-ext/function/_define-length': 157,
12896    -1       'event-emitter': 200
12897    -1     } ],
12898    -1     211: [ function(_dereq_, module, exports) {
12899    -1       'use strict';
12900    -1     }, {} ],
12901    -1     212: [ function(_dereq_, module, exports) {
12902    -1       'use strict';
12903    -1       var toPosInt = _dereq_('es5-ext/number/to-pos-integer');
12904    -1       module.exports = function(optsLength, fnLength, isAsync) {
12905    -1         var length;
12906    -1         if (isNaN(optsLength)) {
12907    -1           length = fnLength;
12908    -1           if (!(length >= 0)) {
12909    -1             return 1;
12910    -1           }
12911    -1           if (isAsync && length) {
12912    -1             return length - 1;
12913    -1           }
12914    -1           return length;
12915    -1         }
12916    -1         if (optsLength === false) {
12917    -1           return false;
12918    -1         }
12919    -1         return toPosInt(optsLength);
12920    -1       };
12921    -1     }, {
12922    -1       'es5-ext/number/to-pos-integer': 168
12923    -1     } ],
12924    -1     213: [ function(_dereq_, module, exports) {
12925    -1       'use strict';
12926    -1       var callable = _dereq_('es5-ext/object/valid-callable');
12927    -1       module.exports = function(userNormalizer) {
12928    -1         var normalizer;
12929    -1         if (typeof userNormalizer === 'function') {
12930    -1           return {
12931    -1             set: userNormalizer,
12932    -1             get: userNormalizer
12933    -1           };
12934    -1         }
12935    -1         normalizer = {
12936    -1           get: callable(userNormalizer.get)
12937    -1         };
12938    -1         if (userNormalizer.set !== undefined) {
12939    -1           normalizer.set = callable(userNormalizer.set);
12940    -1           if (userNormalizer.delete) {
12941    -1             normalizer.delete = callable(userNormalizer.delete);
12942    -1           }
12943    -1           if (userNormalizer.clear) {
12944    -1             normalizer.clear = callable(userNormalizer.clear);
12945    -1           }
12946    -1           return normalizer;
12947    -1         }
12948    -1         normalizer.set = normalizer.get;
12949    -1         return normalizer;
12950    -1       };
12951    -1     }, {
12952    -1       'es5-ext/object/valid-callable': 184
12953    -1     } ],
12954    -1     214: [ function(_dereq_, module, exports) {
12955    -1       'use strict';
12956    -1       var toArray = _dereq_('es5-ext/array/to-array'), isValue = _dereq_('es5-ext/object/is-value'), callable = _dereq_('es5-ext/object/valid-callable');
12957    -1       var slice = Array.prototype.slice, resolveArgs;
12958    -1       resolveArgs = function(args) {
12959    -1         return this.map(function(resolve, i) {
12960    -1           return resolve ? resolve(args[i]) : args[i];
12961    -1         }).concat(slice.call(args, this.length));
12962    -1       };
12963    -1       module.exports = function(resolvers) {
12964    -1         resolvers = toArray(resolvers);
12965    -1         resolvers.forEach(function(resolve) {
12966    -1           if (isValue(resolve)) {
12967    -1             callable(resolve);
   -1  7659             promise._state = REJECTED;
   -1  7660             promise._result = reason;
   -1  7661             asap(publishRejection, promise);
12968  7662           }
12969    -1         });
12970    -1         return resolveArgs.bind(resolvers);
12971    -1       };
12972    -1     }, {
12973    -1       'es5-ext/array/to-array': 155,
12974    -1       'es5-ext/object/is-value': 176,
12975    -1       'es5-ext/object/valid-callable': 184
12976    -1     } ],
12977    -1     215: [ function(_dereq_, module, exports) {
12978    -1       'use strict';
12979    -1       var indexOf = _dereq_('es5-ext/array/#/e-index-of');
12980    -1       module.exports = function() {
12981    -1         var lastId = 0, argsMap = [], cache = [];
12982    -1         return {
12983    -1           get: function(args) {
12984    -1             var index = indexOf.call(argsMap, args[0]);
12985    -1             return index === -1 ? null : cache[index];
12986    -1           },
12987    -1           set: function(args) {
12988    -1             argsMap.push(args[0]);
12989    -1             cache.push(++lastId);
12990    -1             return lastId;
12991    -1           },
12992    -1           delete: function(id) {
12993    -1             var index = indexOf.call(cache, id);
12994    -1             if (index !== -1) {
12995    -1               argsMap.splice(index, 1);
12996    -1               cache.splice(index, 1);
   -1  7663           function subscribe(parent, child, onFulfillment, onRejection) {
   -1  7664             var _subscribers = parent._subscribers;
   -1  7665             var length = _subscribers.length;
   -1  7666             parent._onerror = null;
   -1  7667             _subscribers[length] = child;
   -1  7668             _subscribers[length + FULFILLED] = onFulfillment;
   -1  7669             _subscribers[length + REJECTED] = onRejection;
   -1  7670             if (length === 0 && parent._state) {
   -1  7671               asap(publish, parent);
12997  7672             }
12998    -1           },
12999    -1           clear: function() {
13000    -1             argsMap = [];
13001    -1             cache = [];
13002  7673           }
13003    -1         };
13004    -1       };
13005    -1     }, {
13006    -1       'es5-ext/array/#/e-index-of': 151
13007    -1     } ],
13008    -1     216: [ function(_dereq_, module, exports) {
13009    -1       'use strict';
13010    -1       var indexOf = _dereq_('es5-ext/array/#/e-index-of'), create = Object.create;
13011    -1       module.exports = function(length) {
13012    -1         var lastId = 0, map = [ [], [] ], cache = create(null);
13013    -1         return {
13014    -1           get: function(args) {
13015    -1             var index = 0, set = map, i;
13016    -1             while (index < length - 1) {
13017    -1               i = indexOf.call(set[0], args[index]);
13018    -1               if (i === -1) {
13019    -1                 return null;
13020    -1               }
13021    -1               set = set[1][i];
13022    -1               ++index;
13023    -1             }
13024    -1             i = indexOf.call(set[0], args[index]);
13025    -1             if (i === -1) {
13026    -1               return null;
   -1  7674           function publish(promise) {
   -1  7675             var subscribers = promise._subscribers;
   -1  7676             var settled = promise._state;
   -1  7677             if (subscribers.length === 0) {
   -1  7678               return;
13027  7679             }
13028    -1             return set[1][i] || null;
13029    -1           },
13030    -1           set: function(args) {
13031    -1             var index = 0, set = map, i;
13032    -1             while (index < length - 1) {
13033    -1               i = indexOf.call(set[0], args[index]);
13034    -1               if (i === -1) {
13035    -1                 i = set[0].push(args[index]) - 1;
13036    -1                 set[1].push([ [], [] ]);
   -1  7680             var child = void 0, callback = void 0, detail = promise._result;
   -1  7681             for (var i = 0; i < subscribers.length; i += 3) {
   -1  7682               child = subscribers[i];
   -1  7683               callback = subscribers[i + settled];
   -1  7684               if (child) {
   -1  7685                 invokeCallback(settled, child, callback, detail);
   -1  7686               } else {
   -1  7687                 callback(detail);
13037  7688               }
13038    -1               set = set[1][i];
13039    -1               ++index;
13040  7689             }
13041    -1             i = indexOf.call(set[0], args[index]);
13042    -1             if (i === -1) {
13043    -1               i = set[0].push(args[index]) - 1;
   -1  7690             promise._subscribers.length = 0;
   -1  7691           }
   -1  7692           function tryCatch(callback, detail) {
   -1  7693             try {
   -1  7694               return callback(detail);
   -1  7695             } catch (e) {
   -1  7696               TRY_CATCH_ERROR.error = e;
   -1  7697               return TRY_CATCH_ERROR;
13044  7698             }
13045    -1             set[1][i] = ++lastId;
13046    -1             cache[lastId] = args;
13047    -1             return lastId;
13048    -1           },
13049    -1           delete: function(id) {
13050    -1             var index = 0, set = map, i, path = [], args = cache[id];
13051    -1             while (index < length - 1) {
13052    -1               i = indexOf.call(set[0], args[index]);
13053    -1               if (i === -1) {
   -1  7699           }
   -1  7700           function invokeCallback(settled, promise, callback, detail) {
   -1  7701             var hasCallback = isFunction(callback), value = void 0, error = void 0, succeeded = void 0, failed = void 0;
   -1  7702             if (hasCallback) {
   -1  7703               value = tryCatch(callback, detail);
   -1  7704               if (value === TRY_CATCH_ERROR) {
   -1  7705                 failed = true;
   -1  7706                 error = value.error;
   -1  7707                 value.error = null;
   -1  7708               } else {
   -1  7709                 succeeded = true;
   -1  7710               }
   -1  7711               if (promise === value) {
   -1  7712                 reject(promise, cannotReturnOwn());
13054  7713                 return;
13055  7714               }
13056    -1               path.push(set, i);
13057    -1               set = set[1][i];
13058    -1               ++index;
   -1  7715             } else {
   -1  7716               value = detail;
   -1  7717               succeeded = true;
13059  7718             }
13060    -1             i = indexOf.call(set[0], args[index]);
13061    -1             if (i === -1) {
13062    -1               return;
   -1  7719             if (promise._state !== PENDING) {} else if (hasCallback && succeeded) {
   -1  7720               resolve(promise, value);
   -1  7721             } else if (failed) {
   -1  7722               reject(promise, error);
   -1  7723             } else if (settled === FULFILLED) {
   -1  7724               fulfill(promise, value);
   -1  7725             } else if (settled === REJECTED) {
   -1  7726               reject(promise, value);
13063  7727             }
13064    -1             id = set[1][i];
13065    -1             set[0].splice(i, 1);
13066    -1             set[1].splice(i, 1);
13067    -1             while (!set[0].length && path.length) {
13068    -1               i = path.pop();
13069    -1               set = path.pop();
13070    -1               set[0].splice(i, 1);
13071    -1               set[1].splice(i, 1);
   -1  7728           }
   -1  7729           function initializePromise(promise, resolver) {
   -1  7730             try {
   -1  7731               resolver(function resolvePromise(value) {
   -1  7732                 resolve(promise, value);
   -1  7733               }, function rejectPromise(reason) {
   -1  7734                 reject(promise, reason);
   -1  7735               });
   -1  7736             } catch (e) {
   -1  7737               reject(promise, e);
13072  7738             }
13073    -1             delete cache[id];
13074    -1           },
13075    -1           clear: function() {
13076    -1             map = [ [], [] ];
13077    -1             cache = create(null);
13078  7739           }
13079    -1         };
13080    -1       };
13081    -1     }, {
13082    -1       'es5-ext/array/#/e-index-of': 151
13083    -1     } ],
13084    -1     217: [ function(_dereq_, module, exports) {
13085    -1       'use strict';
13086    -1       module.exports = function(length) {
13087    -1         if (!length) {
13088    -1           return function() {
13089    -1             return '';
13090    -1           };
13091    -1         }
13092    -1         return function(args) {
13093    -1           var id = String(args[0]), i = 0, currentLength = length;
13094    -1           while (--currentLength) {
13095    -1             id += '' + args[++i];
   -1  7740           var id = 0;
   -1  7741           function nextId() {
   -1  7742             return id++;
13096  7743           }
13097    -1           return id;
13098    -1         };
13099    -1       };
13100    -1     }, {} ],
13101    -1     218: [ function(_dereq_, module, exports) {
13102    -1       'use strict';
13103    -1       var indexOf = _dereq_('es5-ext/array/#/e-index-of');
13104    -1       var create = Object.create;
13105    -1       module.exports = function() {
13106    -1         var lastId = 0, map = [], cache = create(null);
13107    -1         return {
13108    -1           get: function(args) {
13109    -1             var index = 0, set = map, i, length = args.length;
13110    -1             if (length === 0) {
13111    -1               return set[length] || null;
13112    -1             }
13113    -1             if (set = set[length]) {
13114    -1               while (index < length - 1) {
13115    -1                 i = indexOf.call(set[0], args[index]);
13116    -1                 if (i === -1) {
13117    -1                   return null;
   -1  7744           function makePromise(promise) {
   -1  7745             promise[PROMISE_ID] = id++;
   -1  7746             promise._state = undefined;
   -1  7747             promise._result = undefined;
   -1  7748             promise._subscribers = [];
   -1  7749           }
   -1  7750           function validationError() {
   -1  7751             return new Error('Array Methods must be provided an Array');
   -1  7752           }
   -1  7753           var Enumerator = function() {
   -1  7754             function Enumerator(Constructor, input) {
   -1  7755               this._instanceConstructor = Constructor;
   -1  7756               this.promise = new Constructor(noop);
   -1  7757               if (!this.promise[PROMISE_ID]) {
   -1  7758                 makePromise(this.promise);
   -1  7759               }
   -1  7760               if (isArray(input)) {
   -1  7761                 this.length = input.length;
   -1  7762                 this._remaining = input.length;
   -1  7763                 this._result = new Array(this.length);
   -1  7764                 if (this.length === 0) {
   -1  7765                   fulfill(this.promise, this._result);
   -1  7766                 } else {
   -1  7767                   this.length = this.length || 0;
   -1  7768                   this._enumerate(input);
   -1  7769                   if (this._remaining === 0) {
   -1  7770                     fulfill(this.promise, this._result);
   -1  7771                   }
13118  7772                 }
13119    -1                 set = set[1][i];
13120    -1                 ++index;
13121    -1               }
13122    -1               i = indexOf.call(set[0], args[index]);
13123    -1               if (i === -1) {
13124    -1                 return null;
   -1  7773               } else {
   -1  7774                 reject(this.promise, validationError());
13125  7775               }
13126    -1               return set[1][i] || null;
13127  7776             }
13128    -1             return null;
13129    -1           },
13130    -1           set: function(args) {
13131    -1             var index = 0, set = map, i, length = args.length;
13132    -1             if (length === 0) {
13133    -1               set[length] = ++lastId;
13134    -1             } else {
13135    -1               if (!set[length]) {
13136    -1                 set[length] = [ [], [] ];
   -1  7777             Enumerator.prototype._enumerate = function _enumerate(input) {
   -1  7778               for (var i = 0; this._state === PENDING && i < input.length; i++) {
   -1  7779                 this._eachEntry(input[i], i);
13137  7780               }
13138    -1               set = set[length];
13139    -1               while (index < length - 1) {
13140    -1                 i = indexOf.call(set[0], args[index]);
13141    -1                 if (i === -1) {
13142    -1                   i = set[0].push(args[index]) - 1;
13143    -1                   set[1].push([ [], [] ]);
   -1  7781             };
   -1  7782             Enumerator.prototype._eachEntry = function _eachEntry(entry, i) {
   -1  7783               var c = this._instanceConstructor;
   -1  7784               var resolve$$1 = c.resolve;
   -1  7785               if (resolve$$1 === resolve$1) {
   -1  7786                 var _then = getThen(entry);
   -1  7787                 if (_then === then && entry._state !== PENDING) {
   -1  7788                   this._settledAt(entry._state, i, entry._result);
   -1  7789                 } else if (typeof _then !== 'function') {
   -1  7790                   this._remaining--;
   -1  7791                   this._result[i] = entry;
   -1  7792                 } else if (c === Promise$1) {
   -1  7793                   var promise = new c(noop);
   -1  7794                   handleMaybeThenable(promise, entry, _then);
   -1  7795                   this._willSettleAt(promise, i);
   -1  7796                 } else {
   -1  7797                   this._willSettleAt(new c(function(resolve$$1) {
   -1  7798                     return resolve$$1(entry);
   -1  7799                   }), i);
13144  7800                 }
13145    -1                 set = set[1][i];
13146    -1                 ++index;
13147    -1               }
13148    -1               i = indexOf.call(set[0], args[index]);
13149    -1               if (i === -1) {
13150    -1                 i = set[0].push(args[index]) - 1;
   -1  7801               } else {
   -1  7802                 this._willSettleAt(resolve$$1(entry), i);
13151  7803               }
13152    -1               set[1][i] = ++lastId;
13153    -1             }
13154    -1             cache[lastId] = args;
13155    -1             return lastId;
13156    -1           },
13157    -1           delete: function(id) {
13158    -1             var index = 0, set = map, i, args = cache[id], length = args.length, path = [];
13159    -1             if (length === 0) {
13160    -1               delete set[length];
13161    -1             } else if (set = set[length]) {
13162    -1               while (index < length - 1) {
13163    -1                 i = indexOf.call(set[0], args[index]);
13164    -1                 if (i === -1) {
13165    -1                   return;
   -1  7804             };
   -1  7805             Enumerator.prototype._settledAt = function _settledAt(state, i, value) {
   -1  7806               var promise = this.promise;
   -1  7807               if (promise._state === PENDING) {
   -1  7808                 this._remaining--;
   -1  7809                 if (state === REJECTED) {
   -1  7810                   reject(promise, value);
   -1  7811                 } else {
   -1  7812                   this._result[i] = value;
13166  7813                 }
13167    -1                 path.push(set, i);
13168    -1                 set = set[1][i];
13169    -1                 ++index;
13170    -1               }
13171    -1               i = indexOf.call(set[0], args[index]);
13172    -1               if (i === -1) {
13173    -1                 return;
13174  7814               }
13175    -1               id = set[1][i];
13176    -1               set[0].splice(i, 1);
13177    -1               set[1].splice(i, 1);
13178    -1               while (!set[0].length && path.length) {
13179    -1                 i = path.pop();
13180    -1                 set = path.pop();
13181    -1                 set[0].splice(i, 1);
13182    -1                 set[1].splice(i, 1);
   -1  7815               if (this._remaining === 0) {
   -1  7816                 fulfill(promise, this._result);
13183  7817               }
   -1  7818             };
   -1  7819             Enumerator.prototype._willSettleAt = function _willSettleAt(promise, i) {
   -1  7820               var enumerator = this;
   -1  7821               subscribe(promise, undefined, function(value) {
   -1  7822                 return enumerator._settledAt(FULFILLED, i, value);
   -1  7823               }, function(reason) {
   -1  7824                 return enumerator._settledAt(REJECTED, i, reason);
   -1  7825               });
   -1  7826             };
   -1  7827             return Enumerator;
   -1  7828           }();
   -1  7829           function all(entries) {
   -1  7830             return new Enumerator(this, entries).promise;
   -1  7831           }
   -1  7832           function race(entries) {
   -1  7833             var Constructor = this;
   -1  7834             if (!isArray(entries)) {
   -1  7835               return new Constructor(function(_, reject) {
   -1  7836                 return reject(new TypeError('You must pass an array to race.'));
   -1  7837               });
   -1  7838             } else {
   -1  7839               return new Constructor(function(resolve, reject) {
   -1  7840                 var length = entries.length;
   -1  7841                 for (var i = 0; i < length; i++) {
   -1  7842                   Constructor.resolve(entries[i]).then(resolve, reject);
   -1  7843                 }
   -1  7844               });
13184  7845             }
13185    -1             delete cache[id];
13186    -1           },
13187    -1           clear: function() {
13188    -1             map = [];
13189    -1             cache = create(null);
13190  7846           }
13191    -1         };
13192    -1       };
13193    -1     }, {
13194    -1       'es5-ext/array/#/e-index-of': 151
13195    -1     } ],
13196    -1     219: [ function(_dereq_, module, exports) {
13197    -1       'use strict';
13198    -1       module.exports = function(args) {
13199    -1         var id, i, length = args.length;
13200    -1         if (!length) {
13201    -1           return '';
13202    -1         }
13203    -1         id = String(args[i = 0]);
13204    -1         while (--length) {
13205    -1           id += '' + args[++i];
13206    -1         }
13207    -1         return id;
13208    -1       };
13209    -1     }, {} ],
13210    -1     220: [ function(_dereq_, module, exports) {
13211    -1       'use strict';
13212    -1       var callable = _dereq_('es5-ext/object/valid-callable'), forEach = _dereq_('es5-ext/object/for-each'), extensions = _dereq_('./lib/registered-extensions'), configure = _dereq_('./lib/configure-map'), resolveLength = _dereq_('./lib/resolve-length');
13213    -1       module.exports = function self(fn) {
13214    -1         var options, length, conf;
13215    -1         callable(fn);
13216    -1         options = Object(arguments[1]);
13217    -1         if (options.async && options.promise) {
13218    -1           throw new Error('Options \'async\' and \'promise\' cannot be used together');
13219    -1         }
13220    -1         if (hasOwnProperty.call(fn, '__memoized__') && !options.force) {
13221    -1           return fn;
13222    -1         }
13223    -1         length = resolveLength(options.length, fn.length, options.async && extensions.async);
13224    -1         conf = configure(fn, length, options);
13225    -1         forEach(extensions, function(extFn, name) {
13226    -1           if (options[name]) {
13227    -1             extFn(options[name], conf, options);
   -1  7847           function reject$1(reason) {
   -1  7848             var Constructor = this;
   -1  7849             var promise = new Constructor(noop);
   -1  7850             reject(promise, reason);
   -1  7851             return promise;
13228  7852           }
13229    -1         });
13230    -1         if (self.__profiler__) {
13231    -1           self.__profiler__(conf);
13232    -1         }
13233    -1         conf.updateEnv();
13234    -1         return conf.memoized;
13235    -1       };
13236    -1     }, {
13237    -1       './lib/configure-map': 210,
13238    -1       './lib/registered-extensions': 211,
13239    -1       './lib/resolve-length': 212,
13240    -1       'es5-ext/object/for-each': 173,
13241    -1       'es5-ext/object/valid-callable': 184
13242    -1     } ],
13243    -1     221: [ function(_dereq_, module, exports) {
13244    -1       (function(process, setImmediate) {
13245    -1         'use strict';
13246    -1         var callable, byObserver;
13247    -1         callable = function(fn) {
13248    -1           if (typeof fn !== 'function') {
13249    -1             throw new TypeError(fn + ' is not a function');
   -1  7853           function needsResolver() {
   -1  7854             throw new TypeError('You must pass a resolver function as the first argument to the promise constructor');
13250  7855           }
13251    -1           return fn;
13252    -1         };
13253    -1         byObserver = function(Observer) {
13254    -1           var node = document.createTextNode(''), queue, currentQueue, i = 0;
13255    -1           new Observer(function() {
13256    -1             var callback;
13257    -1             if (!queue) {
13258    -1               if (!currentQueue) {
13259    -1                 return;
   -1  7856           function needsNew() {
   -1  7857             throw new TypeError('Failed to construct \'Promise\': Please use the \'new\' operator, this object constructor cannot be called as a function.');
   -1  7858           }
   -1  7859           var Promise$1 = function() {
   -1  7860             function Promise(resolver) {
   -1  7861               this[PROMISE_ID] = nextId();
   -1  7862               this._result = this._state = undefined;
   -1  7863               this._subscribers = [];
   -1  7864               if (noop !== resolver) {
   -1  7865                 typeof resolver !== 'function' && needsResolver();
   -1  7866                 this instanceof Promise ? initializePromise(this, resolver) : needsNew();
13260  7867               }
13261    -1               queue = currentQueue;
13262    -1             } else if (currentQueue) {
13263    -1               queue = currentQueue.concat(queue);
13264    -1             }
13265    -1             currentQueue = queue;
13266    -1             queue = null;
13267    -1             if (typeof currentQueue === 'function') {
13268    -1               callback = currentQueue;
13269    -1               currentQueue = null;
13270    -1               callback();
13271    -1               return;
13272  7868             }
13273    -1             node.data = i = ++i % 2;
13274    -1             while (currentQueue) {
13275    -1               callback = currentQueue.shift();
13276    -1               if (!currentQueue.length) {
13277    -1                 currentQueue = null;
   -1  7869             Promise.prototype.catch = function _catch(onRejection) {
   -1  7870               return this.then(null, onRejection);
   -1  7871             };
   -1  7872             Promise.prototype.finally = function _finally(callback) {
   -1  7873               var promise = this;
   -1  7874               var constructor = promise.constructor;
   -1  7875               if (isFunction(callback)) {
   -1  7876                 return promise.then(function(value) {
   -1  7877                   return constructor.resolve(callback()).then(function() {
   -1  7878                     return value;
   -1  7879                   });
   -1  7880                 }, function(reason) {
   -1  7881                   return constructor.resolve(callback()).then(function() {
   -1  7882                     throw reason;
   -1  7883                   });
   -1  7884                 });
13278  7885               }
13279    -1               callback();
13280    -1             }
13281    -1           }).observe(node, {
13282    -1             characterData: true
13283    -1           });
13284    -1           return function(fn) {
13285    -1             callable(fn);
13286    -1             if (queue) {
13287    -1               if (typeof queue === 'function') {
13288    -1                 queue = [ queue, fn ];
13289    -1               } else {
13290    -1                 queue.push(fn);
   -1  7886               return promise.then(callback, callback);
   -1  7887             };
   -1  7888             return Promise;
   -1  7889           }();
   -1  7890           Promise$1.prototype.then = then;
   -1  7891           Promise$1.all = all;
   -1  7892           Promise$1.race = race;
   -1  7893           Promise$1.resolve = resolve$1;
   -1  7894           Promise$1.reject = reject$1;
   -1  7895           Promise$1._setScheduler = setScheduler;
   -1  7896           Promise$1._setAsap = setAsap;
   -1  7897           Promise$1._asap = asap;
   -1  7898           function polyfill() {
   -1  7899             var local = void 0;
   -1  7900             if (typeof global !== 'undefined') {
   -1  7901               local = global;
   -1  7902             } else if (typeof self !== 'undefined') {
   -1  7903               local = self;
   -1  7904             } else {
   -1  7905               try {
   -1  7906                 local = Function('return this')();
   -1  7907               } catch (e) {
   -1  7908                 throw new Error('polyfill failed because global object is unavailable in this environment');
13291  7909               }
13292    -1               return;
13293    -1             }
13294    -1             queue = fn;
13295    -1             node.data = i = ++i % 2;
13296    -1           };
13297    -1         };
13298    -1         module.exports = function() {
13299    -1           if (typeof process === 'object' && process && typeof process.nextTick === 'function') {
13300    -1             return process.nextTick;
13301    -1           }
13302    -1           if (typeof document === 'object' && document) {
13303    -1             if (typeof MutationObserver === 'function') {
13304    -1               return byObserver(MutationObserver);
13305  7910             }
13306    -1             if (typeof WebKitMutationObserver === 'function') {
13307    -1               return byObserver(WebKitMutationObserver);
   -1  7911             var P = local.Promise;
   -1  7912             if (P) {
   -1  7913               var promiseToString = null;
   -1  7914               try {
   -1  7915                 promiseToString = Object.prototype.toString.call(P.resolve());
   -1  7916               } catch (e) {}
   -1  7917               if (promiseToString === '[object Promise]' && !P.cast) {
   -1  7918                 return;
   -1  7919               }
13308  7920             }
   -1  7921             local.Promise = Promise$1;
13309  7922           }
13310    -1           if (typeof setImmediate === 'function') {
13311    -1             return function(cb) {
13312    -1               setImmediate(callable(cb));
13313    -1             };
13314    -1           }
13315    -1           if (typeof setTimeout === 'function' || typeof setTimeout === 'object') {
13316    -1             return function(cb) {
13317    -1               setTimeout(callable(cb), 0);
13318    -1             };
13319    -1           }
13320    -1           return null;
13321    -1         }();
13322    -1       }).call(this, _dereq_('_process'), _dereq_('timers').setImmediate);
   -1  7923           Promise$1.polyfill = polyfill;
   -1  7924           Promise$1.Promise = Promise$1;
   -1  7925           return Promise$1;
   -1  7926         });
   -1  7927       }).call(this, _dereq_('_process'), typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : typeof window !== 'undefined' ? window : {});
13323  7928     }, {
13324    -1       _process: 222,
13325    -1       timers: 223
   -1  7929       _process: 33
13326  7930     } ],
13327    -1     222: [ function(_dereq_, module, exports) {
   -1  7931     32: [ function(_dereq_, module, exports) {
   -1  7932       module.exports = function(obj) {
   -1  7933         return obj != null && (isBuffer(obj) || isSlowBuffer(obj) || !!obj._isBuffer);
   -1  7934       };
   -1  7935       function isBuffer(obj) {
   -1  7936         return !!obj.constructor && typeof obj.constructor.isBuffer === 'function' && obj.constructor.isBuffer(obj);
   -1  7937       }
   -1  7938       function isSlowBuffer(obj) {
   -1  7939         return typeof obj.readFloatLE === 'function' && typeof obj.slice === 'function' && isBuffer(obj.slice(0, 0));
   -1  7940       }
   -1  7941     }, {} ],
   -1  7942     33: [ function(_dereq_, module, exports) {
13328  7943       var process = module.exports = {};
13329  7944       var cachedSetTimeout;
13330  7945       var cachedClearTimeout;
@@ -13480,220 +8095,29 @@ module.exports = {
13480  8095       process.umask = function() {
13481  8096         return 0;
13482  8097       };
13483    -1     }, {} ],
13484    -1     223: [ function(_dereq_, module, exports) {
13485    -1       (function(setImmediate, clearImmediate) {
13486    -1         var nextTick = _dereq_('process/browser.js').nextTick;
13487    -1         var apply = Function.prototype.apply;
13488    -1         var slice = Array.prototype.slice;
13489    -1         var immediateIds = {};
13490    -1         var nextImmediateId = 0;
13491    -1         exports.setTimeout = function() {
13492    -1           return new Timeout(apply.call(setTimeout, window, arguments), clearTimeout);
13493    -1         };
13494    -1         exports.setInterval = function() {
13495    -1           return new Timeout(apply.call(setInterval, window, arguments), clearInterval);
13496    -1         };
13497    -1         exports.clearTimeout = exports.clearInterval = function(timeout) {
13498    -1           timeout.close();
13499    -1         };
13500    -1         function Timeout(id, clearFn) {
13501    -1           this._id = id;
13502    -1           this._clearFn = clearFn;
13503    -1         }
13504    -1         Timeout.prototype.unref = Timeout.prototype.ref = function() {};
13505    -1         Timeout.prototype.close = function() {
13506    -1           this._clearFn.call(window, this._id);
13507    -1         };
13508    -1         exports.enroll = function(item, msecs) {
13509    -1           clearTimeout(item._idleTimeoutId);
13510    -1           item._idleTimeout = msecs;
13511    -1         };
13512    -1         exports.unenroll = function(item) {
13513    -1           clearTimeout(item._idleTimeoutId);
13514    -1           item._idleTimeout = -1;
13515    -1         };
13516    -1         exports._unrefActive = exports.active = function(item) {
13517    -1           clearTimeout(item._idleTimeoutId);
13518    -1           var msecs = item._idleTimeout;
13519    -1           if (msecs >= 0) {
13520    -1             item._idleTimeoutId = setTimeout(function onTimeout() {
13521    -1               if (item._onTimeout) {
13522    -1                 item._onTimeout();
13523    -1               }
13524    -1             }, msecs);
13525    -1           }
13526    -1         };
13527    -1         exports.setImmediate = typeof setImmediate === 'function' ? setImmediate : function(fn) {
13528    -1           var id = nextImmediateId++;
13529    -1           var args = arguments.length < 2 ? false : slice.call(arguments, 1);
13530    -1           immediateIds[id] = true;
13531    -1           nextTick(function onNextTick() {
13532    -1             if (immediateIds[id]) {
13533    -1               if (args) {
13534    -1                 fn.apply(null, args);
13535    -1               } else {
13536    -1                 fn.call(null);
13537    -1               }
13538    -1               exports.clearImmediate(id);
13539    -1             }
13540    -1           });
13541    -1           return id;
13542    -1         };
13543    -1         exports.clearImmediate = typeof clearImmediate === 'function' ? clearImmediate : function(id) {
13544    -1           delete immediateIds[id];
13545    -1         };
13546    -1       }).call(this, _dereq_('timers').setImmediate, _dereq_('timers').clearImmediate);
13547    -1     }, {
13548    -1       'process/browser.js': 222,
13549    -1       timers: 223
13550    -1     } ],
13551    -1     224: [ function(_dereq_, module, exports) {
13552    -1       'use strict';
13553    -1       module.exports = 2147483647;
13554    -1     }, {} ],
13555    -1     225: [ function(_dereq_, module, exports) {
13556    -1       'use strict';
13557    -1       var toPosInt = _dereq_('es5-ext/number/to-pos-integer'), maxTimeout = _dereq_('./max-timeout');
13558    -1       module.exports = function(value) {
13559    -1         value = toPosInt(value);
13560    -1         if (value > maxTimeout) {
13561    -1           throw new TypeError(value + ' exceeds maximum possible timeout');
13562    -1         }
13563    -1         return value;
13564    -1       };
13565    -1     }, {
13566    -1       './max-timeout': 224,
13567    -1       'es5-ext/number/to-pos-integer': 168
13568    -1     } ],
13569    -1     226: [ function(_dereq_, module, exports) {
13570    -1       (function(global) {
13571    -1         (function(self) {
13572    -1           'use strict';
13573    -1           if (self.WeakMap) {
13574    -1             return;
13575    -1           }
13576    -1           var hasOwnProperty = Object.prototype.hasOwnProperty;
13577    -1           var defineProperty = function(object, name, value) {
13578    -1             if (Object.defineProperty) {
13579    -1               Object.defineProperty(object, name, {
13580    -1                 configurable: true,
13581    -1                 writable: true,
13582    -1                 value: value
13583    -1               });
13584    -1             } else {
13585    -1               object[name] = value;
13586    -1             }
13587    -1           };
13588    -1           self.WeakMap = function() {
13589    -1             function WeakMap() {
13590    -1               if (this === void 0) {
13591    -1                 throw new TypeError('Constructor WeakMap requires \'new\'');
13592    -1               }
13593    -1               defineProperty(this, '_id', genId('_WeakMap'));
13594    -1               if (arguments.length > 0) {
13595    -1                 throw new TypeError('WeakMap iterable is not supported');
13596    -1               }
13597    -1             }
13598    -1             defineProperty(WeakMap.prototype, 'delete', function(key) {
13599    -1               checkInstance(this, 'delete');
13600    -1               if (!isObject(key)) {
13601    -1                 return false;
13602    -1               }
13603    -1               var entry = key[this._id];
13604    -1               if (entry && entry[0] === key) {
13605    -1                 delete key[this._id];
13606    -1                 return true;
13607    -1               }
13608    -1               return false;
13609    -1             });
13610    -1             defineProperty(WeakMap.prototype, 'get', function(key) {
13611    -1               checkInstance(this, 'get');
13612    -1               if (!isObject(key)) {
13613    -1                 return void 0;
13614    -1               }
13615    -1               var entry = key[this._id];
13616    -1               if (entry && entry[0] === key) {
13617    -1                 return entry[1];
13618    -1               }
13619    -1               return void 0;
13620    -1             });
13621    -1             defineProperty(WeakMap.prototype, 'has', function(key) {
13622    -1               checkInstance(this, 'has');
13623    -1               if (!isObject(key)) {
13624    -1                 return false;
13625    -1               }
13626    -1               var entry = key[this._id];
13627    -1               if (entry && entry[0] === key) {
13628    -1                 return true;
13629    -1               }
13630    -1               return false;
13631    -1             });
13632    -1             defineProperty(WeakMap.prototype, 'set', function(key, value) {
13633    -1               checkInstance(this, 'set');
13634    -1               if (!isObject(key)) {
13635    -1                 throw new TypeError('Invalid value used as weak map key');
13636    -1               }
13637    -1               var entry = key[this._id];
13638    -1               if (entry && entry[0] === key) {
13639    -1                 entry[1] = value;
13640    -1                 return this;
13641    -1               }
13642    -1               defineProperty(key, this._id, [ key, value ]);
13643    -1               return this;
13644    -1             });
13645    -1             function checkInstance(x, methodName) {
13646    -1               if (!isObject(x) || !hasOwnProperty.call(x, '_id')) {
13647    -1                 throw new TypeError(methodName + ' method called on incompatible receiver ' + typeof x);
13648    -1               }
13649    -1             }
13650    -1             function genId(prefix) {
13651    -1               return prefix + '_' + rand() + '.' + rand();
13652    -1             }
13653    -1             function rand() {
13654    -1               return Math.random().toString().substring(2);
13655    -1             }
13656    -1             defineProperty(WeakMap, '_polyfill', true);
13657    -1             return WeakMap;
13658    -1           }();
13659    -1           function isObject(x) {
13660    -1             return Object(x) === x;
13661    -1           }
13662    -1         })(typeof self !== 'undefined' ? self : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : this);
13663    -1       }).call(this, typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : typeof window !== 'undefined' ? window : {});
13664  8098     }, {} ]
13665  8099   }, {}, [ 1 ]);
13666    -1   'use strict';
13667    -1   var utils = axe.utils = {};
13668    -1   'use strict';
13669    -1   var helpers = {};
13670    -1   'use strict';
13671    -1   function _typeof(obj) {
13672    -1     if (typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol') {
13673    -1       _typeof = function _typeof(obj) {
13674    -1         return typeof obj;
13675    -1       };
13676    -1     } else {
13677    -1       _typeof = function _typeof(obj) {
13678    -1         return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;
13679    -1       };
13680    -1     }
13681    -1     return _typeof(obj);
13682    -1   }
13683    -1   function _extends() {
13684    -1     _extends = Object.assign || function(target) {
13685    -1       for (var i = 1; i < arguments.length; i++) {
13686    -1         var source = arguments[i];
13687    -1         for (var key in source) {
13688    -1           if (Object.prototype.hasOwnProperty.call(source, key)) {
13689    -1             target[key] = source[key];
13690    -1           }
   -1  8100   'use strict';
   -1  8101   var utils = axe.utils = {};
   -1  8102   'use strict';
   -1  8103   var helpers = {};
   -1  8104   'use strict';
   -1  8105   var _typeof = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol' ? function(obj) {
   -1  8106     return typeof obj;
   -1  8107   } : function(obj) {
   -1  8108     return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;
   -1  8109   };
   -1  8110   var _extends = Object.assign || function(target) {
   -1  8111     for (var i = 1; i < arguments.length; i++) {
   -1  8112       var source = arguments[i];
   -1  8113       for (var key in source) {
   -1  8114         if (Object.prototype.hasOwnProperty.call(source, key)) {
   -1  8115           target[key] = source[key];
13691  8116         }
13692  8117       }
13693    -1       return target;
13694    -1     };
13695    -1     return _extends.apply(this, arguments);
13696    -1   }
   -1  8118     }
   -1  8119     return target;
   -1  8120   };
13697  8121   function getDefaultConfiguration(audit) {
13698  8122     'use strict';
13699  8123     var config;
@@ -13723,7 +8147,6 @@ module.exports = {
13723  8147     this.brand = 'axe';
13724  8148     this.application = 'axeAPI';
13725  8149     this.tagExclude = [ 'experimental' ];
13726    -1     this.lang = 'en';
13727  8150     this.defaultConfig = audit;
13728  8151     this._init();
13729  8152     this._defaultLocale = null;
@@ -13734,10 +8157,7 @@ module.exports = {
13734  8157     }
13735  8158     var locale = {
13736  8159       checks: {},
13737    -1       rules: {},
13738    -1       failureSummaries: {},
13739    -1       incompleteFallbackMessage: '',
13740    -1       lang: this.lang
   -1  8160       rules: {}
13741  8161     };
13742  8162     var checkIDs = Object.keys(this.data.checks);
13743  8163     for (var i = 0; i < checkIDs.length; i++) {
@@ -13760,16 +8180,6 @@ module.exports = {
13760  8180         help: help
13761  8181       };
13762  8182     }
13763    -1     var failureSummaries = Object.keys(this.data.failureSummaries);
13764    -1     for (var _i2 = 0; _i2 < failureSummaries.length; _i2++) {
13765    -1       var type = failureSummaries[_i2];
13766    -1       var failureSummary = this.data.failureSummaries[type];
13767    -1       var failureMessage = failureSummary.failureMessage;
13768    -1       locale.failureSummaries[type] = {
13769    -1         failureMessage: failureMessage
13770    -1       };
13771    -1     }
13772    -1     locale.incompleteFallbackMessage = this.data.incompleteFallbackMessage;
13773  8183     this._defaultLocale = locale;
13774  8184   };
13775  8185   Audit.prototype._resetLocale = function() {
@@ -13791,7 +8201,7 @@ module.exports = {
13791  8201       messages: {
13792  8202         pass: pass || a.messages.pass,
13793  8203         fail: fail || a.messages.fail,
13794    -1         incomplete: _typeof(a.messages.incomplete) === 'object' ? _extends({}, a.messages.incomplete, {}, b.incomplete) : b.incomplete
   -1  8204         incomplete: _typeof(a.messages.incomplete) === 'object' ? _extends({}, a.messages.incomplete, b.incomplete) : b.incomplete
13795  8205       }
13796  8206     });
13797  8207   };
@@ -13808,27 +8218,12 @@ module.exports = {
13808  8218       description: description || a.description
13809  8219     });
13810  8220   };
13811    -1   var mergeFailureMessage = function mergeFailureMessage(a, b) {
13812    -1     var failureMessage = b.failureMessage;
13813    -1     if (typeof failureMessage === 'string') {
13814    -1       failureMessage = axe.imports.doT.compile(failureMessage);
13815    -1     }
13816    -1     return _extends({}, a, {
13817    -1       failureMessage: failureMessage || a.failureMessage
13818    -1     });
13819    -1   };
13820    -1   var mergeFallbackMessage = function mergeFallbackMessage(a, b) {
13821    -1     if (typeof b === 'string') {
13822    -1       b = axe.imports.doT.compile(b);
13823    -1     }
13824    -1     return b || a;
13825    -1   };
13826  8221   Audit.prototype._applyCheckLocale = function(checks) {
13827  8222     var keys = Object.keys(checks);
13828  8223     for (var i = 0; i < keys.length; i++) {
13829  8224       var id = keys[i];
13830  8225       if (!this.data.checks[id]) {
13831    -1         throw new Error('Locale provided for unknown check: "'.concat(id, '"'));
   -1  8226         throw new Error('Locale provided for unknown check: "' + id + '"');
13832  8227       }
13833  8228       this.data.checks[id] = mergeCheckLocale(this.data.checks[id], checks[id]);
13834  8229     }
@@ -13838,21 +8233,11 @@ module.exports = {
13838  8233     for (var i = 0; i < keys.length; i++) {
13839  8234       var id = keys[i];
13840  8235       if (!this.data.rules[id]) {
13841    -1         throw new Error('Locale provided for unknown rule: "'.concat(id, '"'));
   -1  8236         throw new Error('Locale provided for unknown rule: "' + id + '"');
13842  8237       }
13843  8238       this.data.rules[id] = mergeRuleLocale(this.data.rules[id], rules[id]);
13844  8239     }
13845  8240   };
13846    -1   Audit.prototype._applyFailureSummaries = function(messages) {
13847    -1     var keys = Object.keys(messages);
13848    -1     for (var i = 0; i < keys.length; i++) {
13849    -1       var key = keys[i];
13850    -1       if (!this.data.failureSummaries[key]) {
13851    -1         throw new Error('Locale provided for unknown failureMessage: "'.concat(key, '"'));
13852    -1       }
13853    -1       this.data.failureSummaries[key] = mergeFailureMessage(this.data.failureSummaries[key], messages[key]);
13854    -1     }
13855    -1   };
13856  8241   Audit.prototype.applyLocale = function(locale) {
13857  8242     this._setDefaultLocale();
13858  8243     if (locale.checks) {
@@ -13861,20 +8246,10 @@ module.exports = {
13861  8246     if (locale.rules) {
13862  8247       this._applyRuleLocale(locale.rules);
13863  8248     }
13864    -1     if (locale.failureSummaries) {
13865    -1       this._applyFailureSummaries(locale.failureSummaries, 'failureSummaries');
13866    -1     }
13867    -1     if (locale.incompleteFallbackMessage) {
13868    -1       this.data.incompleteFallbackMessage = mergeFallbackMessage(this.data.incompleteFallbackMessage, locale.incompleteFallbackMessage);
13869    -1     }
13870    -1     if (locale.lang) {
13871    -1       this.lang = locale.lang;
13872    -1     }
13873  8249   };
13874  8250   Audit.prototype._init = function() {
13875  8251     var audit = getDefaultConfiguration(this.defaultConfig);
13876  8252     axe.commons = commons = audit.commons;
13877    -1     this.lang = audit.lang || 'en';
13878  8253     this.reporter = audit.reporter;
13879  8254     this.commands = {};
13880  8255     this.rules = [];
@@ -13907,7 +8282,7 @@ module.exports = {
13907  8282   Audit.prototype.addCheck = function(spec) {
13908  8283     'use strict';
13909  8284     var metadata = spec.metadata;
13910    -1     if (_typeof(metadata) === 'object') {
   -1  8285     if ((typeof metadata === 'undefined' ? 'undefined' : _typeof(metadata)) === 'object') {
13911  8286       this.data.checks[spec.id] = metadata;
13912  8287       if (_typeof(metadata.messages) === 'object') {
13913  8288         Object.keys(metadata.messages).filter(function(prop) {
@@ -13980,12 +8355,14 @@ module.exports = {
13980  8355     });
13981  8356     var preloaderQueue = axe.utils.queue();
13982  8357     if (runLaterRules.length) {
13983    -1       preloaderQueue.defer(function(resolve) {
13984    -1         axe.utils.preload(options).then(function(assets) {
13985    -1           return resolve(assets);
13986    -1         })['catch'](function(err) {
   -1  8358       preloaderQueue.defer(function(res, rej) {
   -1  8359         axe.utils.preload(options).then(function(preloadResults) {
   -1  8360           var assets = preloadResults[0];
   -1  8361           res(assets);
   -1  8362         }).catch(function(err) {
13987  8363           console.warn('Couldn\'t load preload assets: ', err);
13988    -1           resolve(undefined);
   -1  8364           var assets = undefined;
   -1  8365           res(assets);
13989  8366         });
13990  8367       });
13991  8368     }
@@ -13997,7 +8374,7 @@ module.exports = {
13997  8374       if (assetsFromQueue && assetsFromQueue.length) {
13998  8375         var assets = assetsFromQueue[0];
13999  8376         if (assets) {
14000    -1           context = _extends({}, context, {}, assets);
   -1  8377           context = _extends({}, context, assets);
14001  8378         }
14002  8379       }
14003  8380       var nowRulesResults = nowRulesAndPreloaderResults[0];
@@ -14018,8 +8395,8 @@ module.exports = {
14018  8395         resolve(nowRulesResults.concat(laterRuleResults).filter(function(result) {
14019  8396           return !!result;
14020  8397         }));
14021    -1       })['catch'](reject);
14022    -1     })['catch'](reject);
   -1  8398       }).catch(reject);
   -1  8399     }).catch(reject);
14023  8400   };
14024  8401   Audit.prototype.after = function(results, options) {
14025  8402     'use strict';
@@ -14027,7 +8404,7 @@ module.exports = {
14027  8404     return results.map(function(ruleResult) {
14028  8405       var rule = axe.utils.findBy(rules, 'id', ruleResult.id);
14029  8406       if (!rule) {
14030    -1         throw new Error('Result for unknown rule. You may be running mismatch axe-core versions');
   -1  8407         throw new Error('Result for unknown rule. You may be running mismatch aXe-core versions');
14031  8408       }
14032  8409       return rule.after(ruleResult, options);
14033  8410     });
@@ -14073,7 +8450,7 @@ module.exports = {
14073  8450           axe.log('Could not find tags `' + unmatchedTags.join('`, `') + '`');
14074  8451         }
14075  8452       } else {
14076    -1         throw new Error('Unknown runOnly type \''.concat(only.type, '\''));
   -1  8453         throw new Error('Unknown runOnly type \'' + only.type + '\'');
14077  8454       }
14078  8455     }
14079  8456     if (_typeof(options.rules) === 'object') {
@@ -14100,8 +8477,8 @@ module.exports = {
14100  8477     this._constructHelpUrls(previous);
14101  8478   };
14102  8479   function getHelpUrl(_ref, ruleId, version) {
14103    -1     var brand = _ref.brand, application = _ref.application, lang = _ref.lang;
14104    -1     return axe.constants.helpUrlBase + brand + '/' + (version || axe.version.substring(0, axe.version.lastIndexOf('.'))) + '/' + ruleId + '?application=' + encodeURIComponent(application) + (lang && lang !== 'en' ? '&lang=' + encodeURIComponent(lang) : '');
   -1  8480     var brand = _ref.brand, application = _ref.application;
   -1  8481     return axe.constants.helpUrlBase + brand + '/' + (version || axe.version.substring(0, axe.version.lastIndexOf('.'))) + '/' + ruleId + '?application=' + application;
14105  8482   }
14106  8483   Audit.prototype._constructHelpUrls = function() {
14107  8484     var _this = this;
@@ -14123,23 +8500,6 @@ module.exports = {
14123  8500     this._resetLocale();
14124  8501   };
14125  8502   'use strict';
14126    -1   (function() {
14127    -1     'use strict';
14128    -1     var _cache = {};
14129    -1     var cache = {
14130    -1       set: function set(key, value) {
14131    -1         _cache[key] = value;
14132    -1       },
14133    -1       get: function get(key) {
14134    -1         return _cache[key];
14135    -1       },
14136    -1       clear: function clear() {
14137    -1         _cache = {};
14138    -1       }
14139    -1     };
14140    -1     axe._cache = cache;
14141    -1   })();
14142    -1   'use strict';
14143  8503   function CheckResult(check) {
14144  8504     'use strict';
14145  8505     this.id = check.id;
@@ -14187,30 +8547,6 @@ module.exports = {
14187  8547       resolve(null);
14188  8548     }
14189  8549   };
14190    -1   Check.prototype.runSync = function(node, options, context) {
14191    -1     options = options || {};
14192    -1     var _options = options, _options$enabled = _options.enabled, enabled = _options$enabled === void 0 ? this.enabled : _options$enabled;
14193    -1     if (!enabled) {
14194    -1       return null;
14195    -1     }
14196    -1     var checkOptions = options.options || this.options;
14197    -1     var checkResult = new CheckResult(this);
14198    -1     var checkHelper = axe.utils.checkHelper(checkResult, options);
14199    -1     checkHelper.async = function() {
14200    -1       throw new Error('Cannot run async check while in a synchronous run');
14201    -1     };
14202    -1     var result;
14203    -1     try {
14204    -1       result = this.evaluate.call(checkHelper, node.actualNode, checkOptions, node, context);
14205    -1     } catch (e) {
14206    -1       if (node && node.actualNode) {
14207    -1         e.errorNode = new DqElement(node.actualNode).toJSON();
14208    -1       }
14209    -1       throw e;
14210    -1     }
14211    -1     checkResult.result = result;
14212    -1     return checkResult;
14213    -1   };
14214  8550   Check.prototype.configure = function(spec) {
14215  8551     var _this = this;
14216  8552     [ 'options', 'enabled' ].filter(function(prop) {
@@ -14225,18 +8561,11 @@ module.exports = {
14225  8561     });
14226  8562   };
14227  8563   'use strict';
14228    -1   function _typeof(obj) {
14229    -1     if (typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol') {
14230    -1       _typeof = function _typeof(obj) {
14231    -1         return typeof obj;
14232    -1       };
14233    -1     } else {
14234    -1       _typeof = function _typeof(obj) {
14235    -1         return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;
14236    -1       };
14237    -1     }
14238    -1     return _typeof(obj);
14239    -1   }
   -1  8564   var _typeof = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol' ? function(obj) {
   -1  8565     return typeof obj;
   -1  8566   } : function(obj) {
   -1  8567     return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;
   -1  8568   };
14240  8569   function pushUniqueFrame(collection, frame) {
14241  8570     'use strict';
14242  8571     if (axe.utils.isHidden(frame)) {
@@ -14277,7 +8606,7 @@ module.exports = {
14277  8606   }
14278  8607   function normalizeContext(context) {
14279  8608     'use strict';
14280    -1     if (context && _typeof(context) === 'object' || context instanceof NodeList) {
   -1  8609     if (context && (typeof context === 'undefined' ? 'undefined' : _typeof(context)) === 'object' || context instanceof NodeList) {
14281  8610       if (context instanceof Node) {
14282  8611         return {
14283  8612           include: [ context ],
@@ -14316,7 +8645,7 @@ module.exports = {
14316  8645       if (typeof item === 'string') {
14317  8646         nodeList = Array.from(document.querySelectorAll(item));
14318  8647         result = result.concat(nodeList.map(function(node) {
14319    -1           return axe.utils.getNodeFromTree(node);
   -1  8648           return axe.utils.getNodeFromTree(context.flatTree[0], node);
14320  8649         }));
14321  8650         break;
14322  8651       } else if (item && item.length && !(item instanceof Node)) {
@@ -14325,14 +8654,14 @@ module.exports = {
14325  8654         } else {
14326  8655           nodeList = Array.from(document.querySelectorAll(item[0]));
14327  8656           result = result.concat(nodeList.map(function(node) {
14328    -1             return axe.utils.getNodeFromTree(node);
   -1  8657             return axe.utils.getNodeFromTree(context.flatTree[0], node);
14329  8658           }));
14330  8659         }
14331  8660       } else if (item instanceof Node) {
14332  8661         if (item.documentElement instanceof Node) {
14333  8662           result.push(context.flatTree[0]);
14334  8663         } else {
14335    -1           result.push(axe.utils.getNodeFromTree(item));
   -1  8664           result.push(axe.utils.getNodeFromTree(context.flatTree[0], item));
14336  8665         }
14337  8666       }
14338  8667     }
@@ -14357,16 +8686,16 @@ module.exports = {
14357  8686   function getRootNode(_ref) {
14358  8687     var include = _ref.include, exclude = _ref.exclude;
14359  8688     var selectors = Array.from(include).concat(Array.from(exclude));
14360    -1     for (var i = 0; i < selectors.length; ++i) {
14361    -1       var item = selectors[i];
14362    -1       if (item instanceof Element) {
14363    -1         return item.ownerDocument.documentElement;
14364    -1       }
14365    -1       if (item instanceof Document) {
14366    -1         return item.documentElement;
   -1  8689     var localDocument = selectors.reduce(function(result, item) {
   -1  8690       if (result) {
   -1  8691         return result;
   -1  8692       } else if (item instanceof Element) {
   -1  8693         return item.ownerDocument;
   -1  8694       } else if (item instanceof Document) {
   -1  8695         return item;
14367  8696       }
14368    -1     }
14369    -1     return document.documentElement;
   -1  8697     }, null);
   -1  8698     return (localDocument || document).documentElement;
14370  8699   }
14371  8700   function Context(spec) {
14372  8701     'use strict';
@@ -14429,30 +8758,12 @@ module.exports = {
14429  8758     return true;
14430  8759   };
14431  8760   Rule.prototype.gather = function(context) {
14432    -1     var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
14433    -1     var markStart = 'mark_gather_start_' + this.id;
14434    -1     var markEnd = 'mark_gather_end_' + this.id;
14435    -1     var markHiddenStart = 'mark_isHidden_start_' + this.id;
14436    -1     var markHiddenEnd = 'mark_isHidden_end_' + this.id;
14437    -1     if (options.performanceTimer) {
14438    -1       axe.utils.performanceTimer.mark(markStart);
14439    -1     }
   -1  8761     'use strict';
14440  8762     var elements = axe.utils.select(this.selector, context);
14441  8763     if (this.excludeHidden) {
14442    -1       if (options.performanceTimer) {
14443    -1         axe.utils.performanceTimer.mark(markHiddenStart);
14444    -1       }
14445    -1       elements = elements.filter(function(element) {
   -1  8764       return elements.filter(function(element) {
14446  8765         return !axe.utils.isHidden(element.actualNode);
14447  8766       });
14448    -1       if (options.performanceTimer) {
14449    -1         axe.utils.performanceTimer.mark(markHiddenEnd);
14450    -1         axe.utils.performanceTimer.measure('rule_' + this.id + '#gather_axe.utils.isHidden', markHiddenStart, markHiddenEnd);
14451    -1       }
14452    -1     }
14453    -1     if (options.performanceTimer) {
14454    -1       axe.utils.performanceTimer.mark(markEnd);
14455    -1       axe.utils.performanceTimer.measure('rule_' + this.id + '#gather', markStart, markEnd);
14456  8767     }
14457  8768     return elements;
14458  8769   };
@@ -14475,38 +8786,21 @@ module.exports = {
14475  8786         type: type,
14476  8787         results: results
14477  8788       });
14478    -1     })['catch'](reject);
   -1  8789     }).catch(reject);
14479  8790   };
14480    -1   Rule.prototype.runChecksSync = function(type, node, options, context) {
14481    -1     'use strict';
14482    -1     var self = this;
14483    -1     var results = [];
14484    -1     this[type].forEach(function(c) {
14485    -1       var check = self._audit.checks[c.id || c];
14486    -1       var option = axe.utils.getCheckOption(check, self.id, options);
14487    -1       results.push(check.runSync(node, option, context));
14488    -1     });
14489    -1     results = results.filter(function(check) {
14490    -1       return check;
14491    -1     });
14492    -1     return {
14493    -1       type: type,
14494    -1       results: results
14495    -1     };
14496    -1   };
14497    -1   Rule.prototype.run = function(context) {
   -1  8791   Rule.prototype.run = function(context, options, resolve, reject) {
14498  8792     var _this = this;
14499    -1     var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
14500    -1     var resolve = arguments.length > 2 ? arguments[2] : undefined;
14501    -1     var reject = arguments.length > 3 ? arguments[3] : undefined;
14502    -1     if (options.performanceTimer) {
14503    -1       this._trackPerformance();
14504    -1     }
14505  8793     var q = axe.utils.queue();
14506  8794     var ruleResult = new RuleResult(this);
14507    -1     var nodes;
   -1  8795     var markStart = 'mark_rule_start_' + this.id;
   -1  8796     var markEnd = 'mark_rule_end_' + this.id;
   -1  8797     var markChecksStart = 'mark_runchecks_start_' + this.id;
   -1  8798     var markChecksEnd = 'mark_runchecks_end_' + this.id;
   -1  8799     var nodes = void 0;
14508  8800     try {
14509    -1       nodes = this.gatherAndMatchNodes(context, options);
   -1  8801       nodes = this.gather(context).filter(function(node) {
   -1  8802         return _this.matches(node.actualNode, node, context);
   -1  8803       });
14510  8804     } catch (error) {
14511  8805       reject(new SupportError({
14512  8806         cause: error,
@@ -14515,7 +8809,8 @@ module.exports = {
14515  8809       return;
14516  8810     }
14517  8811     if (options.performanceTimer) {
14518    -1       this._logGatherPerformance(nodes);
   -1  8812       axe.log('gather (', nodes.length, '):', axe.utils.performanceTimer.timeElapsed() + 'ms');
   -1  8813       axe.utils.performanceTimer.mark(markChecksStart);
14519  8814     }
14520  8815     nodes.forEach(function(node) {
14521  8816       q.defer(function(resolveNode, rejectNode) {
@@ -14526,13 +8821,24 @@ module.exports = {
14526  8821           });
14527  8822         });
14528  8823         checkQueue.then(function(results) {
14529    -1           var result = getResult(results);
14530    -1           if (result) {
14531    -1             result.node = new axe.utils.DqElement(node.actualNode, options);
14532    -1             ruleResult.nodes.push(result);
   -1  8824           if (results.length) {
   -1  8825             var hasResults = false, result = {};
   -1  8826             results.forEach(function(r) {
   -1  8827               var res = r.results.filter(function(result) {
   -1  8828                 return result;
   -1  8829               });
   -1  8830               result[r.type] = res;
   -1  8831               if (res.length) {
   -1  8832                 hasResults = true;
   -1  8833               }
   -1  8834             });
   -1  8835             if (hasResults) {
   -1  8836               result.node = new axe.utils.DqElement(node.actualNode, options);
   -1  8837               ruleResult.nodes.push(result);
   -1  8838             }
14533  8839           }
14534  8840           resolveNode();
14535    -1         })['catch'](function(err) {
   -1  8841         }).catch(function(err) {
14536  8842           return rejectNode(err);
14537  8843         });
14538  8844       });
@@ -14541,100 +8847,17 @@ module.exports = {
14541  8847       return setTimeout(resolve, 0);
14542  8848     });
14543  8849     if (options.performanceTimer) {
14544    -1       this._logRulePerformance();
   -1  8850       axe.utils.performanceTimer.mark(markChecksEnd);
   -1  8851       axe.utils.performanceTimer.mark(markEnd);
   -1  8852       axe.utils.performanceTimer.measure('runchecks_' + this.id, markChecksStart, markChecksEnd);
   -1  8853       axe.utils.performanceTimer.measure('rule_' + this.id, markStart, markEnd);
14545  8854     }
14546  8855     q.then(function() {
14547  8856       return resolve(ruleResult);
14548    -1     })['catch'](function(error) {
   -1  8857     }).catch(function(error) {
14549  8858       return reject(error);
14550  8859     });
14551  8860   };
14552    -1   Rule.prototype.runSync = function(context) {
14553    -1     var _this2 = this;
14554    -1     var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
14555    -1     if (options.performanceTimer) {
14556    -1       this._trackPerformance();
14557    -1     }
14558    -1     var ruleResult = new RuleResult(this);
14559    -1     var nodes;
14560    -1     try {
14561    -1       nodes = this.gatherAndMatchNodes(context, options);
14562    -1     } catch (error) {
14563    -1       throw new SupportError({
14564    -1         cause: error,
14565    -1         ruleId: this.id
14566    -1       });
14567    -1     }
14568    -1     if (options.performanceTimer) {
14569    -1       this._logGatherPerformance(nodes);
14570    -1     }
14571    -1     nodes.forEach(function(node) {
14572    -1       var results = [];
14573    -1       [ 'any', 'all', 'none' ].forEach(function(type) {
14574    -1         results.push(_this2.runChecksSync(type, node, options, context));
14575    -1       });
14576    -1       var result = getResult(results);
14577    -1       if (result) {
14578    -1         result.node = node.actualNode ? new axe.utils.DqElement(node.actualNode, options) : null;
14579    -1         ruleResult.nodes.push(result);
14580    -1       }
14581    -1     });
14582    -1     if (options.performanceTimer) {
14583    -1       this._logRulePerformance();
14584    -1     }
14585    -1     return ruleResult;
14586    -1   };
14587    -1   Rule.prototype._trackPerformance = function() {
14588    -1     this._markStart = 'mark_rule_start_' + this.id;
14589    -1     this._markEnd = 'mark_rule_end_' + this.id;
14590    -1     this._markChecksStart = 'mark_runchecks_start_' + this.id;
14591    -1     this._markChecksEnd = 'mark_runchecks_end_' + this.id;
14592    -1   };
14593    -1   Rule.prototype._logGatherPerformance = function(nodes) {
14594    -1     axe.log('gather (', nodes.length, '):', axe.utils.performanceTimer.timeElapsed() + 'ms');
14595    -1     axe.utils.performanceTimer.mark(this._markChecksStart);
14596    -1   };
14597    -1   Rule.prototype._logRulePerformance = function() {
14598    -1     axe.utils.performanceTimer.mark(this._markChecksEnd);
14599    -1     axe.utils.performanceTimer.mark(this._markEnd);
14600    -1     axe.utils.performanceTimer.measure('runchecks_' + this.id, this._markChecksStart, this._markChecksEnd);
14601    -1     axe.utils.performanceTimer.measure('rule_' + this.id, this._markStart, this._markEnd);
14602    -1   };
14603    -1   function getResult(results) {
14604    -1     if (results.length) {
14605    -1       var hasResults = false, result = {};
14606    -1       results.forEach(function(r) {
14607    -1         var res = r.results.filter(function(result) {
14608    -1           return result;
14609    -1         });
14610    -1         result[r.type] = res;
14611    -1         if (res.length) {
14612    -1           hasResults = true;
14613    -1         }
14614    -1       });
14615    -1       if (hasResults) {
14616    -1         return result;
14617    -1       }
14618    -1       return null;
14619    -1     }
14620    -1   }
14621    -1   Rule.prototype.gatherAndMatchNodes = function(context, options) {
14622    -1     var _this3 = this;
14623    -1     var markMatchesStart = 'mark_matches_start_' + this.id;
14624    -1     var markMatchesEnd = 'mark_matches_end_' + this.id;
14625    -1     var nodes = this.gather(context, options);
14626    -1     if (options.performanceTimer) {
14627    -1       axe.utils.performanceTimer.mark(markMatchesStart);
14628    -1     }
14629    -1     nodes = nodes.filter(function(node) {
14630    -1       return _this3.matches(node.actualNode, node, context);
14631    -1     });
14632    -1     if (options.performanceTimer) {
14633    -1       axe.utils.performanceTimer.mark(markMatchesEnd);
14634    -1       axe.utils.performanceTimer.measure('rule_' + this.id + '#matches', markMatchesStart, markMatchesEnd);
14635    -1     }
14636    -1     return nodes;
14637    -1   };
14638  8861   function findAfterChecks(rule) {
14639  8862     'use strict';
14640  8863     return axe.utils.getAllChecks(rule).map(function(c) {
@@ -14736,356 +8959,6 @@ module.exports = {
14736  8959     }
14737  8960   };
14738  8961   'use strict';
14739    -1   function _classCallCheck(instance, Constructor) {
14740    -1     if (!(instance instanceof Constructor)) {
14741    -1       throw new TypeError('Cannot call a class as a function');
14742    -1     }
14743    -1   }
14744    -1   function _defineProperties(target, props) {
14745    -1     for (var i = 0; i < props.length; i++) {
14746    -1       var descriptor = props[i];
14747    -1       descriptor.enumerable = descriptor.enumerable || false;
14748    -1       descriptor.configurable = true;
14749    -1       if ('value' in descriptor) {
14750    -1         descriptor.writable = true;
14751    -1       }
14752    -1       Object.defineProperty(target, descriptor.key, descriptor);
14753    -1     }
14754    -1   }
14755    -1   function _createClass(Constructor, protoProps, staticProps) {
14756    -1     if (protoProps) {
14757    -1       _defineProperties(Constructor.prototype, protoProps);
14758    -1     }
14759    -1     if (staticProps) {
14760    -1       _defineProperties(Constructor, staticProps);
14761    -1     }
14762    -1     return Constructor;
14763    -1   }
14764    -1   var whitespaceRegex = /[\t\r\n\f]/g;
14765    -1   var AbstractVirtualNode = function() {
14766    -1     function AbstractVirtualNode() {
14767    -1       _classCallCheck(this, AbstractVirtualNode);
14768    -1       this.children = [];
14769    -1       this.parent = null;
14770    -1     }
14771    -1     _createClass(AbstractVirtualNode, [ {
14772    -1       key: 'attr',
14773    -1       value: function attr() {
14774    -1         throw new Error('VirtualNode class must have a "attr" function');
14775    -1       }
14776    -1     }, {
14777    -1       key: 'hasAttr',
14778    -1       value: function hasAttr() {
14779    -1         throw new Error('VirtualNode class must have a "hasAttr" function');
14780    -1       }
14781    -1     }, {
14782    -1       key: 'hasClass',
14783    -1       value: function hasClass(className) {
14784    -1         var classAttr = this.attr('class');
14785    -1         if (!classAttr) {
14786    -1           return false;
14787    -1         }
14788    -1         var selector = ' ' + className + ' ';
14789    -1         return (' ' + classAttr + ' ').replace(whitespaceRegex, ' ').indexOf(selector) >= 0;
14790    -1       }
14791    -1     }, {
14792    -1       key: 'props',
14793    -1       get: function get() {
14794    -1         throw new Error('VirtualNode class must have a "props" object consisting ' + 'of "nodeType" and "nodeName" properties');
14795    -1       }
14796    -1     } ]);
14797    -1     return AbstractVirtualNode;
14798    -1   }();
14799    -1   axe.AbstractVirtualNode = AbstractVirtualNode;
14800    -1   'use strict';
14801    -1   function _extends() {
14802    -1     _extends = Object.assign || function(target) {
14803    -1       for (var i = 1; i < arguments.length; i++) {
14804    -1         var source = arguments[i];
14805    -1         for (var key in source) {
14806    -1           if (Object.prototype.hasOwnProperty.call(source, key)) {
14807    -1             target[key] = source[key];
14808    -1           }
14809    -1         }
14810    -1       }
14811    -1       return target;
14812    -1     };
14813    -1     return _extends.apply(this, arguments);
14814    -1   }
14815    -1   function _typeof(obj) {
14816    -1     if (typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol') {
14817    -1       _typeof = function _typeof(obj) {
14818    -1         return typeof obj;
14819    -1       };
14820    -1     } else {
14821    -1       _typeof = function _typeof(obj) {
14822    -1         return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;
14823    -1       };
14824    -1     }
14825    -1     return _typeof(obj);
14826    -1   }
14827    -1   function _classCallCheck(instance, Constructor) {
14828    -1     if (!(instance instanceof Constructor)) {
14829    -1       throw new TypeError('Cannot call a class as a function');
14830    -1     }
14831    -1   }
14832    -1   function _defineProperties(target, props) {
14833    -1     for (var i = 0; i < props.length; i++) {
14834    -1       var descriptor = props[i];
14835    -1       descriptor.enumerable = descriptor.enumerable || false;
14836    -1       descriptor.configurable = true;
14837    -1       if ('value' in descriptor) {
14838    -1         descriptor.writable = true;
14839    -1       }
14840    -1       Object.defineProperty(target, descriptor.key, descriptor);
14841    -1     }
14842    -1   }
14843    -1   function _createClass(Constructor, protoProps, staticProps) {
14844    -1     if (protoProps) {
14845    -1       _defineProperties(Constructor.prototype, protoProps);
14846    -1     }
14847    -1     if (staticProps) {
14848    -1       _defineProperties(Constructor, staticProps);
14849    -1     }
14850    -1     return Constructor;
14851    -1   }
14852    -1   function _possibleConstructorReturn(self, call) {
14853    -1     if (call && (_typeof(call) === 'object' || typeof call === 'function')) {
14854    -1       return call;
14855    -1     }
14856    -1     return _assertThisInitialized(self);
14857    -1   }
14858    -1   function _assertThisInitialized(self) {
14859    -1     if (self === void 0) {
14860    -1       throw new ReferenceError('this hasn\'t been initialised - super() hasn\'t been called');
14861    -1     }
14862    -1     return self;
14863    -1   }
14864    -1   function _getPrototypeOf(o) {
14865    -1     _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
14866    -1       return o.__proto__ || Object.getPrototypeOf(o);
14867    -1     };
14868    -1     return _getPrototypeOf(o);
14869    -1   }
14870    -1   function _inherits(subClass, superClass) {
14871    -1     if (typeof superClass !== 'function' && superClass !== null) {
14872    -1       throw new TypeError('Super expression must either be null or a function');
14873    -1     }
14874    -1     subClass.prototype = Object.create(superClass && superClass.prototype, {
14875    -1       constructor: {
14876    -1         value: subClass,
14877    -1         writable: true,
14878    -1         configurable: true
14879    -1       }
14880    -1     });
14881    -1     if (superClass) {
14882    -1       _setPrototypeOf(subClass, superClass);
14883    -1     }
14884    -1   }
14885    -1   function _setPrototypeOf(o, p) {
14886    -1     _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
14887    -1       o.__proto__ = p;
14888    -1       return o;
14889    -1     };
14890    -1     return _setPrototypeOf(o, p);
14891    -1   }
14892    -1   var SerialVirtualNode = function(_axe$AbstractVirtualN) {
14893    -1     _inherits(SerialVirtualNode, _axe$AbstractVirtualN);
14894    -1     function SerialVirtualNode(serialNode) {
14895    -1       var _this;
14896    -1       _classCallCheck(this, SerialVirtualNode);
14897    -1       _this = _possibleConstructorReturn(this, _getPrototypeOf(SerialVirtualNode).call(this));
14898    -1       _this._props = normaliseProps(serialNode);
14899    -1       _this._attrs = normaliseAttrs(serialNode);
14900    -1       return _this;
14901    -1     }
14902    -1     _createClass(SerialVirtualNode, [ {
14903    -1       key: 'attr',
14904    -1       value: function attr(attrName) {
14905    -1         return this._attrs[attrName] || null;
14906    -1       }
14907    -1     }, {
14908    -1       key: 'hasAttr',
14909    -1       value: function hasAttr(attrName) {
14910    -1         return this._attrs[attrName] !== undefined;
14911    -1       }
14912    -1     }, {
14913    -1       key: 'props',
14914    -1       get: function get() {
14915    -1         return this._props;
14916    -1       }
14917    -1     } ]);
14918    -1     return SerialVirtualNode;
14919    -1   }(axe.AbstractVirtualNode);
14920    -1   function normaliseProps(serialNode) {
14921    -1     var nodeName = serialNode.nodeName, _serialNode$nodeType = serialNode.nodeType, nodeType = _serialNode$nodeType === void 0 ? 1 : _serialNode$nodeType;
14922    -1     axe.utils.assert(nodeType === 1, 'nodeType has to be undefined or 1, got \''.concat(nodeType, '\''));
14923    -1     axe.utils.assert(typeof nodeName === 'string', 'nodeName has to be a string, got \''.concat(nodeName, '\''));
14924    -1     var props = _extends({}, serialNode, {
14925    -1       nodeType: nodeType,
14926    -1       nodeName: nodeName.toLowerCase()
14927    -1     });
14928    -1     delete props.attributes;
14929    -1     return Object.freeze(props);
14930    -1   }
14931    -1   function normaliseAttrs(_ref) {
14932    -1     var _ref$attributes = _ref.attributes, attributes = _ref$attributes === void 0 ? {} : _ref$attributes;
14933    -1     var attrMap = {
14934    -1       htmlFor: 'for',
14935    -1       className: 'class'
14936    -1     };
14937    -1     return Object.keys(attributes).reduce(function(attrs, attrName) {
14938    -1       var value = attributes[attrName];
14939    -1       axe.utils.assert(_typeof(value) !== 'object' || value === null, 'expects attributes not to be an object, \''.concat(attrName, '\' was'));
14940    -1       if (value !== undefined) {
14941    -1         var mappedName = attrMap[attrName] || attrName;
14942    -1         attrs[mappedName] = value !== null ? String(value) : null;
14943    -1       }
14944    -1       return attrs;
14945    -1     }, {});
14946    -1   }
14947    -1   'use strict';
14948    -1   function _typeof(obj) {
14949    -1     if (typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol') {
14950    -1       _typeof = function _typeof(obj) {
14951    -1         return typeof obj;
14952    -1       };
14953    -1     } else {
14954    -1       _typeof = function _typeof(obj) {
14955    -1         return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;
14956    -1       };
14957    -1     }
14958    -1     return _typeof(obj);
14959    -1   }
14960    -1   function _classCallCheck(instance, Constructor) {
14961    -1     if (!(instance instanceof Constructor)) {
14962    -1       throw new TypeError('Cannot call a class as a function');
14963    -1     }
14964    -1   }
14965    -1   function _defineProperties(target, props) {
14966    -1     for (var i = 0; i < props.length; i++) {
14967    -1       var descriptor = props[i];
14968    -1       descriptor.enumerable = descriptor.enumerable || false;
14969    -1       descriptor.configurable = true;
14970    -1       if ('value' in descriptor) {
14971    -1         descriptor.writable = true;
14972    -1       }
14973    -1       Object.defineProperty(target, descriptor.key, descriptor);
14974    -1     }
14975    -1   }
14976    -1   function _createClass(Constructor, protoProps, staticProps) {
14977    -1     if (protoProps) {
14978    -1       _defineProperties(Constructor.prototype, protoProps);
14979    -1     }
14980    -1     if (staticProps) {
14981    -1       _defineProperties(Constructor, staticProps);
14982    -1     }
14983    -1     return Constructor;
14984    -1   }
14985    -1   function _possibleConstructorReturn(self, call) {
14986    -1     if (call && (_typeof(call) === 'object' || typeof call === 'function')) {
14987    -1       return call;
14988    -1     }
14989    -1     return _assertThisInitialized(self);
14990    -1   }
14991    -1   function _getPrototypeOf(o) {
14992    -1     _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
14993    -1       return o.__proto__ || Object.getPrototypeOf(o);
14994    -1     };
14995    -1     return _getPrototypeOf(o);
14996    -1   }
14997    -1   function _assertThisInitialized(self) {
14998    -1     if (self === void 0) {
14999    -1       throw new ReferenceError('this hasn\'t been initialised - super() hasn\'t been called');
15000    -1     }
15001    -1     return self;
15002    -1   }
15003    -1   function _inherits(subClass, superClass) {
15004    -1     if (typeof superClass !== 'function' && superClass !== null) {
15005    -1       throw new TypeError('Super expression must either be null or a function');
15006    -1     }
15007    -1     subClass.prototype = Object.create(superClass && superClass.prototype, {
15008    -1       constructor: {
15009    -1         value: subClass,
15010    -1         writable: true,
15011    -1         configurable: true
15012    -1       }
15013    -1     });
15014    -1     if (superClass) {
15015    -1       _setPrototypeOf(subClass, superClass);
15016    -1     }
15017    -1   }
15018    -1   function _setPrototypeOf(o, p) {
15019    -1     _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
15020    -1       o.__proto__ = p;
15021    -1       return o;
15022    -1     };
15023    -1     return _setPrototypeOf(o, p);
15024    -1   }
15025    -1   var VirtualNode = function(_axe$AbstractVirtualN) {
15026    -1     _inherits(VirtualNode, _axe$AbstractVirtualN);
15027    -1     function VirtualNode(node, parent, shadowId) {
15028    -1       var _this;
15029    -1       _classCallCheck(this, VirtualNode);
15030    -1       _this = _possibleConstructorReturn(this, _getPrototypeOf(VirtualNode).call(this));
15031    -1       _this.shadowId = shadowId;
15032    -1       _this.children = [];
15033    -1       _this.actualNode = node;
15034    -1       _this.parent = parent;
15035    -1       _this._isHidden = null;
15036    -1       _this._cache = {};
15037    -1       if (axe._cache.get('nodeMap')) {
15038    -1         axe._cache.get('nodeMap').set(node, _assertThisInitialized(_this));
15039    -1       }
15040    -1       return _this;
15041    -1     }
15042    -1     _createClass(VirtualNode, [ {
15043    -1       key: 'attr',
15044    -1       value: function attr(attrName) {
15045    -1         if (typeof this.actualNode.getAttribute !== 'function') {
15046    -1           return null;
15047    -1         }
15048    -1         return this.actualNode.getAttribute(attrName);
15049    -1       }
15050    -1     }, {
15051    -1       key: 'hasAttr',
15052    -1       value: function hasAttr(attrName) {
15053    -1         if (typeof this.actualNode.hasAttribute !== 'function') {
15054    -1           return false;
15055    -1         }
15056    -1         return this.actualNode.hasAttribute(attrName);
15057    -1       }
15058    -1     }, {
15059    -1       key: 'props',
15060    -1       get: function get() {
15061    -1         var _this$actualNode = this.actualNode, nodeType = _this$actualNode.nodeType, nodeName = _this$actualNode.nodeName, id = _this$actualNode.id, type = _this$actualNode.type;
15062    -1         return {
15063    -1           nodeType: nodeType,
15064    -1           nodeName: nodeName.toLowerCase(),
15065    -1           id: id,
15066    -1           type: type
15067    -1         };
15068    -1       }
15069    -1     }, {
15070    -1       key: 'isFocusable',
15071    -1       get: function get() {
15072    -1         if (!this._cache.hasOwnProperty('isFocusable')) {
15073    -1           this._cache.isFocusable = axe.commons.dom.isFocusable(this.actualNode);
15074    -1         }
15075    -1         return this._cache.isFocusable;
15076    -1       }
15077    -1     }, {
15078    -1       key: 'tabbableElements',
15079    -1       get: function get() {
15080    -1         if (!this._cache.hasOwnProperty('tabbableElements')) {
15081    -1           this._cache.tabbableElements = axe.commons.dom.getTabbableElements(this);
15082    -1         }
15083    -1         return this._cache.tabbableElements;
15084    -1       }
15085    -1     } ]);
15086    -1     return VirtualNode;
15087    -1   }(axe.AbstractVirtualNode);
15088    -1   'use strict';
15089  8962   (function(axe) {
15090  8963     var definitions = [ {
15091  8964       name: 'NA',
@@ -15114,10 +8987,8 @@ module.exports = {
15114  8987       resultGroups: [],
15115  8988       resultGroupMap: {},
15116  8989       impact: Object.freeze([ 'minor', 'moderate', 'serious', 'critical' ]),
15117    -1       preload: Object.freeze({
15118    -1         assets: [ 'cssom' ],
15119    -1         timeout: 1e4
15120    -1       })
   -1  8990       preloadAssets: Object.freeze([ 'cssom' ]),
   -1  8991       preloadAssetsTimeout: 1e4
15121  8992     };
15122  8993     definitions.forEach(function(definition) {
15123  8994       var name = definition.name;
@@ -15143,18 +9014,11 @@ module.exports = {
15143  9014     });
15144  9015   })(axe);
15145  9016   'use strict';
15146    -1   function _typeof(obj) {
15147    -1     if (typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol') {
15148    -1       _typeof = function _typeof(obj) {
15149    -1         return typeof obj;
15150    -1       };
15151    -1     } else {
15152    -1       _typeof = function _typeof(obj) {
15153    -1         return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;
15154    -1       };
15155    -1     }
15156    -1     return _typeof(obj);
15157    -1   }
   -1  9017   var _typeof = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol' ? function(obj) {
   -1  9018     return typeof obj;
   -1  9019   } : function(obj) {
   -1  9020     return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;
   -1  9021   };
15158  9022   axe.log = function() {
15159  9023     'use strict';
15160  9024     if ((typeof console === 'undefined' ? 'undefined' : _typeof(console)) === 'object' && console.log) {
@@ -15192,58 +9056,16 @@ module.exports = {
15192  9056         }, res, rej);
15193  9057       });
15194  9058     });
15195    -1     q.then(function(results) {
15196    -1       if (cleanupErrors.length === 0) {
15197    -1         resolve(results);
15198    -1       } else {
15199    -1         reject(cleanupErrors);
15200    -1       }
15201    -1     })['catch'](reject);
15202    -1   }
15203    -1   axe.cleanup = cleanupPlugins;
15204    -1   'use strict';
15205    -1   function _slicedToArray(arr, i) {
15206    -1     return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest();
15207    -1   }
15208    -1   function _nonIterableRest() {
15209    -1     throw new TypeError('Invalid attempt to destructure non-iterable instance');
15210    -1   }
15211    -1   function _iterableToArrayLimit(arr, i) {
15212    -1     if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === '[object Arguments]')) {
15213    -1       return;
15214    -1     }
15215    -1     var _arr = [];
15216    -1     var _n = true;
15217    -1     var _d = false;
15218    -1     var _e = undefined;
15219    -1     try {
15220    -1       for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {
15221    -1         _arr.push(_s.value);
15222    -1         if (i && _arr.length === i) {
15223    -1           break;
15224    -1         }
15225    -1       }
15226    -1     } catch (err) {
15227    -1       _d = true;
15228    -1       _e = err;
15229    -1     } finally {
15230    -1       try {
15231    -1         if (!_n && _i['return'] != null) {
15232    -1           _i['return']();
15233    -1         }
15234    -1       } finally {
15235    -1         if (_d) {
15236    -1           throw _e;
15237    -1         }
   -1  9059     q.then(function(results) {
   -1  9060       if (cleanupErrors.length === 0) {
   -1  9061         resolve(results);
   -1  9062       } else {
   -1  9063         reject(cleanupErrors);
15238  9064       }
15239    -1     }
15240    -1     return _arr;
15241    -1   }
15242    -1   function _arrayWithHoles(arr) {
15243    -1     if (Array.isArray(arr)) {
15244    -1       return arr;
15245    -1     }
   -1  9065     }).catch(reject);
15246  9066   }
   -1  9067   axe.cleanup = cleanupPlugins;
   -1  9068   'use strict';
15247  9069   function configureChecksRulesAndBranding(spec) {
15248  9070     'use strict';
15249  9071     var audit;
@@ -15251,19 +9073,6 @@ module.exports = {
15251  9073     if (!audit) {
15252  9074       throw new Error('No audit configured');
15253  9075     }
15254    -1     if (spec.axeVersion || spec.ver) {
15255    -1       var specVersion = spec.axeVersion || spec.ver;
15256    -1       if (!/^\d+\.\d+\.\d+(-canary)?/.test(specVersion)) {
15257    -1         throw new Error('Invalid configured version '.concat(specVersion));
15258    -1       }
15259    -1       var _specVersion$split = specVersion.split('-'), _specVersion$split2 = _slicedToArray(_specVersion$split, 2), version = _specVersion$split2[0], canary = _specVersion$split2[1];
15260    -1       var _version$split$map = version.split('.').map(Number), _version$split$map2 = _slicedToArray(_version$split$map, 3), major = _version$split$map2[0], minor = _version$split$map2[1], patch = _version$split$map2[2];
15261    -1       var _axe$version$split = axe.version.split('-'), _axe$version$split2 = _slicedToArray(_axe$version$split, 2), axeVersion = _axe$version$split2[0], axeCanary = _axe$version$split2[1];
15262    -1       var _axeVersion$split$map = axeVersion.split('.').map(Number), _axeVersion$split$map2 = _slicedToArray(_axeVersion$split$map, 3), axeMajor = _axeVersion$split$map2[0], axeMinor = _axeVersion$split$map2[1], axePatch = _axeVersion$split$map2[2];
15263    -1       if (major !== axeMajor || axeMinor < minor || axeMinor === minor && axePatch < patch || major === axeMajor && minor === axeMinor && patch === axePatch && canary && canary !== axeCanary) {
15264    -1         throw new Error('Configured version '.concat(specVersion, ' is not compatible with current axe version ').concat(axe.version));
15265    -1       }
15266    -1     }
15267  9076     if (spec.reporter && (typeof spec.reporter === 'function' || reporters[spec.reporter])) {
15268  9077       audit.reporter = spec.reporter;
15269  9078     }
@@ -15434,10 +9243,6 @@ module.exports = {
15434  9243   axe.reset = resetConfiguration;
15435  9244   'use strict';
15436  9245   function cleanup() {
15437    -1     axe._memoizedFns.forEach(function(fn) {
15438    -1       return fn.clear();
15439    -1     });
15440    -1     axe._cache.clear();
15441  9246     axe._tree = undefined;
15442  9247     axe._selectorData = undefined;
15443  9248   }
@@ -15461,7 +9266,7 @@ module.exports = {
15461  9266         axe.utils.collectResultsFromFrames(context, options, 'rules', null, res, rej);
15462  9267       });
15463  9268     }
15464    -1     var scrollState;
   -1  9269     var scrollState = void 0;
15465  9270     q.defer(function(res, rej) {
15466  9271       if (options.restoreScroll) {
15467  9272         scrollState = axe.utils.getScrollState();
@@ -15496,74 +9301,18 @@ module.exports = {
15496  9301         cleanup();
15497  9302         reject(e);
15498  9303       }
15499    -1     })['catch'](function(e) {
   -1  9304     }).catch(function(e) {
15500  9305       cleanup();
15501  9306       reject(e);
15502  9307     });
15503  9308   }
15504  9309   axe._runRules = runRules;
15505  9310   'use strict';
15506    -1   function _extends() {
15507    -1     _extends = Object.assign || function(target) {
15508    -1       for (var i = 1; i < arguments.length; i++) {
15509    -1         var source = arguments[i];
15510    -1         for (var key in source) {
15511    -1           if (Object.prototype.hasOwnProperty.call(source, key)) {
15512    -1             target[key] = source[key];
15513    -1           }
15514    -1         }
15515    -1       }
15516    -1       return target;
15517    -1     };
15518    -1     return _extends.apply(this, arguments);
15519    -1   }
15520    -1   axe.runVirtualRule = function(ruleId, vNode) {
15521    -1     var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
15522    -1     options.reporter = options.reporter || axe._audit.reporter || 'v1';
15523    -1     axe._selectorData = {};
15524    -1     if (vNode instanceof axe.AbstractVirtualNode === false) {
15525    -1       vNode = new SerialVirtualNode(vNode);
15526    -1     }
15527    -1     var rule = axe._audit.rules.find(function(rule) {
15528    -1       return rule.id === ruleId;
15529    -1     });
15530    -1     if (!rule) {
15531    -1       throw new Error('unknown rule `' + ruleId + '`');
15532    -1     }
15533    -1     rule = Object.create(rule, {
15534    -1       excludeHidden: {
15535    -1         value: false
15536    -1       }
15537    -1     });
15538    -1     var context = {
15539    -1       include: [ vNode ]
15540    -1     };
15541    -1     var rawResults = rule.runSync(context, options);
15542    -1     axe.utils.publishMetaData(rawResults);
15543    -1     axe.utils.finalizeRuleResult(rawResults);
15544    -1     var results = axe.utils.aggregateResult([ rawResults ]);
15545    -1     results.violations.forEach(function(result) {
15546    -1       return result.nodes.forEach(function(nodeResult) {
15547    -1         nodeResult.failureSummary = helpers.failureSummary(nodeResult);
15548    -1       });
15549    -1     });
15550    -1     return _extends({}, helpers.getEnvironmentData(), {}, results, {
15551    -1       toolOptions: options
15552    -1     });
   -1  9311   var _typeof = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol' ? function(obj) {
   -1  9312     return typeof obj;
   -1  9313   } : function(obj) {
   -1  9314     return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;
15553  9315   };
15554    -1   'use strict';
15555    -1   function _typeof(obj) {
15556    -1     if (typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol') {
15557    -1       _typeof = function _typeof(obj) {
15558    -1         return typeof obj;
15559    -1       };
15560    -1     } else {
15561    -1       _typeof = function _typeof(obj) {
15562    -1         return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;
15563    -1       };
15564    -1     }
15565    -1     return _typeof(obj);
15566    -1   }
15567  9316   function isContext(potential) {
15568  9317     'use strict';
15569  9318     switch (true) {
@@ -15573,7 +9322,7 @@ module.exports = {
15573  9322      case NodeList && potential instanceof NodeList:
15574  9323       return true;
15575  9324 
15576    -1      case _typeof(potential) !== 'object':
   -1  9325      case (typeof potential === 'undefined' ? 'undefined' : _typeof(potential)) !== 'object':
15577  9326       return false;
15578  9327 
15579  9328      case potential.include !== undefined:
@@ -15597,7 +9346,7 @@ module.exports = {
15597  9346       options = context;
15598  9347       context = document;
15599  9348     }
15600    -1     if (_typeof(options) !== 'object') {
   -1  9349     if ((typeof options === 'undefined' ? 'undefined' : _typeof(options)) !== 'object') {
15601  9350       if (callback !== undefined) {
15602  9351         throw typeErr;
15603  9352       }
@@ -15626,7 +9375,7 @@ module.exports = {
15626  9375     if (options.performanceTimer) {
15627  9376       axe.utils.performanceTimer.start();
15628  9377     }
15629    -1     var p;
   -1  9378     var p = void 0;
15630  9379     var reject = noop;
15631  9380     var resolve = noop;
15632  9381     if (typeof Promise === 'function' && callback === noop) {
@@ -15635,16 +9384,8 @@ module.exports = {
15635  9384         resolve = _resolve;
15636  9385       });
15637  9386     }
15638    -1     if (axe._running) {
15639    -1       var err = 'Axe is already running. Use `await axe.run()` to wait ' + 'for the previous run to finish before starting a new run.';
15640    -1       callback(err);
15641    -1       reject(err);
15642    -1       return p;
15643    -1     }
15644    -1     axe._running = true;
15645  9387     axe._runRules(context, options, function(rawResults, cleanup) {
15646  9388       var respond = function respond(results) {
15647    -1         axe._running = false;
15648  9389         cleanup();
15649  9390         try {
15650  9391           callback(null, results);
@@ -15663,13 +9404,11 @@ module.exports = {
15663  9404           respond(results);
15664  9405         }
15665  9406       } catch (err) {
15666    -1         axe._running = false;
15667  9407         cleanup();
15668  9408         callback(err);
15669  9409         reject(err);
15670  9410       }
15671  9411     }, function(err) {
15672    -1       axe._running = false;
15673  9412       callback(err);
15674  9413       reject(err);
15675  9414     });
@@ -15698,7 +9437,7 @@ module.exports = {
15698  9437   'use strict';
15699  9438   helpers.getEnvironmentData = function getEnvironmentData() {
15700  9439     var win = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : window;
15701    -1     var _win$screen = win.screen, screen = _win$screen === void 0 ? {} : _win$screen, _win$navigator = win.navigator, navigator = _win$navigator === void 0 ? {} : _win$navigator, _win$location = win.location, location = _win$location === void 0 ? {} : _win$location, innerHeight = win.innerHeight, innerWidth = win.innerWidth;
   -1  9440     var _win$screen = win.screen, screen = _win$screen === undefined ? {} : _win$screen, _win$navigator = win.navigator, navigator = _win$navigator === undefined ? {} : _win$navigator, _win$location = win.location, location = _win$location === undefined ? {} : _win$location, innerHeight = win.innerHeight, innerWidth = win.innerWidth;
15702  9441     var orientation = screen.msOrientation || screen.orientation || screen.mozOrientation || {};
15703  9442     return {
15704  9443       testEngine: {
@@ -15725,18 +9464,11 @@ module.exports = {
15725  9464     return axe._audit.data.incompleteFallbackMessage();
15726  9465   };
15727  9466   'use strict';
15728    -1   function _typeof(obj) {
15729    -1     if (typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol') {
15730    -1       _typeof = function _typeof(obj) {
15731    -1         return typeof obj;
15732    -1       };
15733    -1     } else {
15734    -1       _typeof = function _typeof(obj) {
15735    -1         return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;
15736    -1       };
15737    -1     }
15738    -1     return _typeof(obj);
15739    -1   }
   -1  9467   var _typeof = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol' ? function(obj) {
   -1  9468     return typeof obj;
   -1  9469   } : function(obj) {
   -1  9470     return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;
   -1  9471   };
15740  9472   function normalizeRelatedNodes(node, options) {
15741  9473     'use strict';
15742  9474     [ 'any', 'all', 'none' ].forEach(function(type) {
@@ -15808,23 +9540,19 @@ module.exports = {
15808  9540     return resultObject;
15809  9541   };
15810  9542   'use strict';
15811    -1   function _extends() {
15812    -1     _extends = Object.assign || function(target) {
15813    -1       for (var i = 1; i < arguments.length; i++) {
15814    -1         var source = arguments[i];
15815    -1         for (var key in source) {
15816    -1           if (Object.prototype.hasOwnProperty.call(source, key)) {
15817    -1             target[key] = source[key];
15818    -1           }
   -1  9543   var _extends = Object.assign || function(target) {
   -1  9544     for (var i = 1; i < arguments.length; i++) {
   -1  9545       var source = arguments[i];
   -1  9546       for (var key in source) {
   -1  9547         if (Object.prototype.hasOwnProperty.call(source, key)) {
   -1  9548           target[key] = source[key];
15819  9549         }
15820  9550       }
15821    -1       return target;
15822    -1     };
15823    -1     return _extends.apply(this, arguments);
15824    -1   }
   -1  9551     }
   -1  9552     return target;
   -1  9553   };
15825  9554   axe.addReporter('na', function(results, options, callback) {
15826  9555     'use strict';
15827    -1     console.warn('"na" reporter will be deprecated in axe v4.0. Use the "v2" reporter instead.');
15828  9556     if (typeof options === 'function') {
15829  9557       callback = options;
15830  9558       options = {};
@@ -15839,20 +9567,17 @@ module.exports = {
15839  9567     }));
15840  9568   });
15841  9569   'use strict';
15842    -1   function _extends() {
15843    -1     _extends = Object.assign || function(target) {
15844    -1       for (var i = 1; i < arguments.length; i++) {
15845    -1         var source = arguments[i];
15846    -1         for (var key in source) {
15847    -1           if (Object.prototype.hasOwnProperty.call(source, key)) {
15848    -1             target[key] = source[key];
15849    -1           }
   -1  9570   var _extends = Object.assign || function(target) {
   -1  9571     for (var i = 1; i < arguments.length; i++) {
   -1  9572       var source = arguments[i];
   -1  9573       for (var key in source) {
   -1  9574         if (Object.prototype.hasOwnProperty.call(source, key)) {
   -1  9575           target[key] = source[key];
15850  9576         }
15851  9577       }
15852    -1       return target;
15853    -1     };
15854    -1     return _extends.apply(this, arguments);
15855    -1   }
   -1  9578     }
   -1  9579     return target;
   -1  9580   };
15856  9581   axe.addReporter('no-passes', function(results, options, callback) {
15857  9582     'use strict';
15858  9583     if (typeof options === 'function') {
@@ -15867,76 +9592,26 @@ module.exports = {
15867  9592     }));
15868  9593   });
15869  9594   'use strict';
15870    -1   axe.addReporter('rawEnv', function(results, options, callback) {
15871    -1     if (typeof options === 'function') {
15872    -1       callback = options;
15873    -1       options = {};
15874    -1     }
15875    -1     function rawCallback(raw) {
15876    -1       var env = helpers.getEnvironmentData();
15877    -1       callback({
15878    -1         raw: raw,
15879    -1         env: env
15880    -1       });
15881    -1     }
15882    -1     axe.getReporter('raw')(results, options, rawCallback);
15883    -1   });
15884    -1   'use strict';
15885    -1   function _extends() {
15886    -1     _extends = Object.assign || function(target) {
15887    -1       for (var i = 1; i < arguments.length; i++) {
15888    -1         var source = arguments[i];
15889    -1         for (var key in source) {
15890    -1           if (Object.prototype.hasOwnProperty.call(source, key)) {
15891    -1             target[key] = source[key];
15892    -1           }
15893    -1         }
15894    -1       }
15895    -1       return target;
15896    -1     };
15897    -1     return _extends.apply(this, arguments);
15898    -1   }
15899  9595   axe.addReporter('raw', function(results, options, callback) {
15900  9596     'use strict';
15901  9597     if (typeof options === 'function') {
15902  9598       callback = options;
15903  9599       options = {};
15904  9600     }
15905    -1     if (!results || !Array.isArray(results)) {
15906    -1       return callback(results);
15907    -1     }
15908    -1     var transformedResults = results.map(function(result) {
15909    -1       var transformedResult = _extends({}, result);
15910    -1       var types = [ 'passes', 'violations', 'incomplete', 'inapplicable' ];
15911    -1       for (var _i = 0, _types = types; _i < _types.length; _i++) {
15912    -1         var type = _types[_i];
15913    -1         if (transformedResult[type] && Array.isArray(transformedResult[type])) {
15914    -1           transformedResult[type] = transformedResult[type].map(function(typeResult) {
15915    -1             return _extends({}, typeResult, {
15916    -1               node: typeResult.node.toJSON()
15917    -1             });
15918    -1           });
15919    -1         }
15920    -1       }
15921    -1       return transformedResult;
15922    -1     });
15923    -1     callback(transformedResults);
   -1  9601     callback(results);
15924  9602   });
15925  9603   'use strict';
15926    -1   function _extends() {
15927    -1     _extends = Object.assign || function(target) {
15928    -1       for (var i = 1; i < arguments.length; i++) {
15929    -1         var source = arguments[i];
15930    -1         for (var key in source) {
15931    -1           if (Object.prototype.hasOwnProperty.call(source, key)) {
15932    -1             target[key] = source[key];
15933    -1           }
   -1  9604   var _extends = Object.assign || function(target) {
   -1  9605     for (var i = 1; i < arguments.length; i++) {
   -1  9606       var source = arguments[i];
   -1  9607       for (var key in source) {
   -1  9608         if (Object.prototype.hasOwnProperty.call(source, key)) {
   -1  9609           target[key] = source[key];
15934  9610         }
15935  9611       }
15936    -1       return target;
15937    -1     };
15938    -1     return _extends.apply(this, arguments);
15939    -1   }
   -1  9612     }
   -1  9613     return target;
   -1  9614   };
15940  9615   axe.addReporter('v1', function(results, options, callback) {
15941  9616     'use strict';
15942  9617     if (typeof options === 'function') {
@@ -15958,20 +9633,17 @@ module.exports = {
15958  9633     }));
15959  9634   });
15960  9635   'use strict';
15961    -1   function _extends() {
15962    -1     _extends = Object.assign || function(target) {
15963    -1       for (var i = 1; i < arguments.length; i++) {
15964    -1         var source = arguments[i];
15965    -1         for (var key in source) {
15966    -1           if (Object.prototype.hasOwnProperty.call(source, key)) {
15967    -1             target[key] = source[key];
15968    -1           }
   -1  9636   var _extends = Object.assign || function(target) {
   -1  9637     for (var i = 1; i < arguments.length; i++) {
   -1  9638       var source = arguments[i];
   -1  9639       for (var key in source) {
   -1  9640         if (Object.prototype.hasOwnProperty.call(source, key)) {
   -1  9641           target[key] = source[key];
15969  9642         }
15970  9643       }
15971    -1       return target;
15972    -1     };
15973    -1     return _extends.apply(this, arguments);
15974    -1   }
   -1  9644     }
   -1  9645     return target;
   -1  9646   };
15975  9647   axe.addReporter('v2', function(results, options, callback) {
15976  9648     'use strict';
15977  9649     if (typeof options === 'function') {
@@ -16136,28 +9808,25 @@ module.exports = {
16136  9808   function areStylesSet(el, styles, stopAt) {
16137  9809     'use strict';
16138  9810     var styl = window.getComputedStyle(el, null);
   -1  9811     var set = false;
16139  9812     if (!styl) {
16140  9813       return false;
16141  9814     }
16142    -1     for (var i = 0; i < styles.length; ++i) {
16143    -1       var att = styles[i];
   -1  9815     styles.forEach(function(att) {
16144  9816       if (styl.getPropertyValue(att.property) === att.value) {
16145    -1         return true;
   -1  9817         set = true;
16146  9818       }
   -1  9819     });
   -1  9820     if (set) {
   -1  9821       return true;
16147  9822     }
16148    -1     if (!el.parentNode || el.nodeName.toUpperCase() === stopAt.toUpperCase()) {
   -1  9823     if (el.nodeName.toUpperCase() === stopAt.toUpperCase() || !el.parentNode) {
16149  9824       return false;
16150  9825     }
16151  9826     return areStylesSet(el.parentNode, styles, stopAt);
16152  9827   }
16153  9828   axe.utils.areStylesSet = areStylesSet;
16154  9829   'use strict';
16155    -1   axe.utils.assert = function assert(bool, message) {
16156    -1     if (!bool) {
16157    -1       throw new Error(message);
16158    -1     }
16159    -1   };
16160    -1   'use strict';
16161  9830   axe.utils.checkHelper = function checkHelper(checkResult, options, resolve, reject) {
16162  9831     'use strict';
16163  9832     return {
@@ -16185,22 +9854,15 @@ module.exports = {
16185  9854     };
16186  9855   };
16187  9856   'use strict';
16188    -1   function _typeof(obj) {
16189    -1     if (typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol') {
16190    -1       _typeof = function _typeof(obj) {
16191    -1         return typeof obj;
16192    -1       };
16193    -1     } else {
16194    -1       _typeof = function _typeof(obj) {
16195    -1         return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;
16196    -1       };
16197    -1     }
16198    -1     return _typeof(obj);
16199    -1   }
   -1  9857   var _typeof = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol' ? function(obj) {
   -1  9858     return typeof obj;
   -1  9859   } : function(obj) {
   -1  9860     return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;
   -1  9861   };
16200  9862   axe.utils.clone = function(obj) {
16201  9863     'use strict';
16202  9864     var index, length, out = obj;
16203    -1     if (obj !== null && _typeof(obj) === 'object') {
   -1  9865     if (obj !== null && (typeof obj === 'undefined' ? 'undefined' : _typeof(obj)) === 'object') {
16204  9866       if (Array.isArray(obj)) {
16205  9867         out = [];
16206  9868         for (index = 0, length = obj.length; index < length; index++) {
@@ -16244,7 +9906,7 @@ module.exports = {
16244  9906     axe.utils.respondable(win, 'axe.ping', null, undefined, function() {
16245  9907       clearTimeout(timeout);
16246  9908       var frameWaitTime = parameters.options && parameters.options.frameWaitTime || 6e4;
16247    -1       timeout = setTimeout(function collectResultFramesTimeout() {
   -1  9909       timeout = setTimeout(function() {
16248  9910         reject(err('Axe in frame timed out', node));
16249  9911       }, frameWaitTime);
16250  9912       axe.utils.respondable(win, 'axe.start', parameters, undefined, function(data) {
@@ -16289,43 +9951,32 @@ module.exports = {
16289  9951     });
16290  9952     q.then(function(data) {
16291  9953       resolve(axe.utils.mergeResults(data, options));
16292    -1     })['catch'](reject);
   -1  9954     }).catch(reject);
16293  9955   }
16294  9956   axe.utils.collectResultsFromFrames = collectResultsFromFrames;
16295  9957   'use strict';
16296    -1   axe.utils.contains = function(vNode, otherVNode) {
   -1  9958   axe.utils.contains = function(node, otherNode) {
16297  9959     'use strict';
16298    -1     function containsShadowChild(vNode, otherVNode) {
16299    -1       if (vNode.shadowId === otherVNode.shadowId) {
   -1  9960     function containsShadowChild(node, otherNode) {
   -1  9961       if (node.shadowId === otherNode.shadowId) {
16300  9962         return true;
16301  9963       }
16302    -1       return !!vNode.children.find(function(child) {
16303    -1         return containsShadowChild(child, otherVNode);
   -1  9964       return !!node.children.find(function(child) {
   -1  9965         return containsShadowChild(child, otherNode);
16304  9966       });
16305  9967     }
16306    -1     if (vNode.shadowId || otherVNode.shadowId) {
16307    -1       return containsShadowChild(vNode, otherVNode);
   -1  9968     if (node.shadowId || otherNode.shadowId) {
   -1  9969       return containsShadowChild(node, otherNode);
16308  9970     }
16309    -1     if (vNode.actualNode) {
16310    -1       if (typeof vNode.actualNode.contains === 'function') {
16311    -1         return vNode.actualNode.contains(otherVNode.actualNode);
16312    -1       }
16313    -1       return !!(vNode.actualNode.compareDocumentPosition(otherVNode.actualNode) & 16);
16314    -1     } else {
16315    -1       do {
16316    -1         if (otherVNode === vNode) {
16317    -1           return true;
16318    -1         }
16319    -1       } while (otherVNode = otherVNode && otherVNode.parent);
   -1  9971     if (typeof node.actualNode.contains === 'function') {
   -1  9972       return node.actualNode.contains(otherNode.actualNode);
16320  9973     }
16321    -1     return false;
   -1  9974     return !!(node.actualNode.compareDocumentPosition(otherNode.actualNode) & 16);
16322  9975   };
16323  9976   'use strict';
16324  9977   (function(axe) {
16325  9978     var parser = new axe.imports.CssSelectorParser();
16326    -1     parser.registerSelectorPseudos('not');
16327  9979     parser.registerNestingOperators('>');
16328    -1     parser.registerAttrEqualityMods('^', '$', '*');
16329  9980     axe.utils.cssParser = parser;
16330  9981   })(axe);
16331  9982   'use strict';
@@ -16400,10 +10051,7 @@ module.exports = {
16400 10051       if (!method || !node[method]) {
16401 10052         method = getMethod(node);
16402 10053       }
16403    -1       if (node[method]) {
16404    -1         return node[method](selector);
16405    -1       }
16406    -1       return false;
   -1 10054       return node[method](selector);
16407 10055     };
16408 10056   }();
16409 10057   'use strict';
@@ -16456,22 +10104,15 @@ module.exports = {
16456 10104     return ruleResult;
16457 10105   };
16458 10106   'use strict';
16459    -1   function _typeof(obj) {
16460    -1     if (typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol') {
16461    -1       _typeof = function _typeof(obj) {
16462    -1         return typeof obj;
16463    -1       };
16464    -1     } else {
16465    -1       _typeof = function _typeof(obj) {
16466    -1         return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;
16467    -1       };
16468    -1     }
16469    -1     return _typeof(obj);
16470    -1   }
   -1 10107   var _typeof = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol' ? function(obj) {
   -1 10108     return typeof obj;
   -1 10109   } : function(obj) {
   -1 10110     return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;
   -1 10111   };
16471 10112   axe.utils.findBy = function(array, key, value) {
16472 10113     if (Array.isArray(array)) {
16473 10114       return array.find(function(obj) {
16474    -1         return _typeof(obj) === 'object' && obj[key] === value;
   -1 10115         return (typeof obj === 'undefined' ? 'undefined' : _typeof(obj)) === 'object' && obj[key] === value;
16475 10116       });
16476 10117     }
16477 10118   };
@@ -16479,6 +10120,26 @@ module.exports = {
16479 10120   var axe = axe || {
16480 10121     utils: {}
16481 10122   };
   -1 10123   function virtualDOMfromNode(node, shadowId) {
   -1 10124     var vNodeCache = {};
   -1 10125     return {
   -1 10126       shadowId: shadowId,
   -1 10127       children: [],
   -1 10128       actualNode: node,
   -1 10129       get isFocusable() {
   -1 10130         if (!vNodeCache._isFocusable) {
   -1 10131           vNodeCache._isFocusable = axe.commons.dom.isFocusable(node);
   -1 10132         }
   -1 10133         return vNodeCache._isFocusable;
   -1 10134       },
   -1 10135       get tabbableElements() {
   -1 10136         if (!vNodeCache._tabbableElements) {
   -1 10137           vNodeCache._tabbableElements = axe.commons.dom.getTabbableElements(this);
   -1 10138         }
   -1 10139         return vNodeCache._tabbableElements;
   -1 10140       }
   -1 10141     };
   -1 10142   }
16482 10143   function getSlotChildren(node) {
16483 10144     var retVal = [];
16484 10145     node = node.firstChild;
@@ -16488,10 +10149,10 @@ module.exports = {
16488 10149     }
16489 10150     return retVal;
16490 10151   }
16491    -1   function flattenTree(node, shadowId, parent) {
   -1 10152   axe.utils.getFlattenedTree = function(node, shadowId) {
16492 10153     var retVal, realArray, nodeName;
16493    -1     function reduceShadowDOM(res, child, parent) {
16494    -1       var replacements = flattenTree(child, shadowId, parent);
   -1 10154     function reduceShadowDOM(res, child) {
   -1 10155       var replacements = axe.utils.getFlattenedTree(child, shadowId);
16495 10156       if (replacements) {
16496 10157         res = res.concat(replacements);
16497 10158       }
@@ -16502,19 +10163,15 @@ module.exports = {
16502 10163     }
16503 10164     nodeName = node.nodeName.toLowerCase();
16504 10165     if (axe.utils.isShadowRoot(node)) {
16505    -1       retVal = new VirtualNode(node, parent, shadowId);
   -1 10166       retVal = virtualDOMfromNode(node, shadowId);
16506 10167       shadowId = 'a' + Math.random().toString().substring(2);
16507 10168       realArray = Array.from(node.shadowRoot.childNodes);
16508    -1       retVal.children = realArray.reduce(function(res, child) {
16509    -1         return reduceShadowDOM(res, child, retVal);
16510    -1       }, []);
   -1 10169       retVal.children = realArray.reduce(reduceShadowDOM, []);
16511 10170       return [ retVal ];
16512 10171     } else {
16513    -1       if (nodeName === 'content' && typeof node.getDistributedNodes === 'function') {
   -1 10172       if (nodeName === 'content') {
16514 10173         realArray = Array.from(node.getDistributedNodes());
16515    -1         return realArray.reduce(function(res, child) {
16516    -1           return reduceShadowDOM(res, child, parent);
16517    -1         }, []);
   -1 10174         return realArray.reduce(reduceShadowDOM, []);
16518 10175       } else if (nodeName === 'slot' && typeof node.assignedNodes === 'function') {
16519 10176         realArray = Array.from(node.assignedNodes());
16520 10177         if (!realArray.length) {
@@ -16522,38 +10179,41 @@ module.exports = {
16522 10179         }
16523 10180         var styl = window.getComputedStyle(node);
16524 10181         if (false && styl.display !== 'contents') {
16525    -1           retVal = new VirtualNode(node, parent, shadowId);
16526    -1           retVal.children = realArray.reduce(function(res, child) {
16527    -1             return reduceShadowDOM(res, child, retVal);
16528    -1           }, []);
   -1 10182           retVal = virtualDOMfromNode(node, shadowId);
   -1 10183           retVal.children = realArray.reduce(reduceShadowDOM, []);
16529 10184           return [ retVal ];
16530 10185         } else {
16531    -1           return realArray.reduce(function(res, child) {
16532    -1             return reduceShadowDOM(res, child, parent);
16533    -1           }, []);
   -1 10186           return realArray.reduce(reduceShadowDOM, []);
16534 10187         }
16535 10188       } else {
16536 10189         if (node.nodeType === 1) {
16537    -1           retVal = new VirtualNode(node, parent, shadowId);
   -1 10190           retVal = virtualDOMfromNode(node, shadowId);
16538 10191           realArray = Array.from(node.childNodes);
16539    -1           retVal.children = realArray.reduce(function(res, child) {
16540    -1             return reduceShadowDOM(res, child, retVal);
16541    -1           }, []);
   -1 10192           retVal.children = realArray.reduce(reduceShadowDOM, []);
16542 10193           return [ retVal ];
16543 10194         } else if (node.nodeType === 3) {
16544    -1           return [ new VirtualNode(node, parent) ];
   -1 10195           return [ virtualDOMfromNode(node) ];
16545 10196         }
16546 10197         return undefined;
16547 10198       }
16548 10199     }
16549    -1   }
16550    -1   axe.utils.getFlattenedTree = function(node, shadowId) {
16551    -1     axe._cache.set('nodeMap', new WeakMap());
16552    -1     return flattenTree(node, shadowId);
16553 10200   };
16554 10201   axe.utils.getNodeFromTree = function(vNode, node) {
16555    -1     var el = node || vNode;
16556    -1     return axe._cache.get('nodeMap') ? axe._cache.get('nodeMap').get(el) : null;
   -1 10202     var found;
   -1 10203     if (vNode.actualNode === node) {
   -1 10204       return vNode;
   -1 10205     }
   -1 10206     vNode.children.forEach(function(candidate) {
   -1 10207       if (found) {
   -1 10208         return;
   -1 10209       }
   -1 10210       if (candidate.actualNode === node) {
   -1 10211         found = candidate;
   -1 10212       } else {
   -1 10213         found = axe.utils.getNodeFromTree(candidate, node);
   -1 10214       }
   -1 10215     });
   -1 10216     return found;
16557 10217   };
16558 10218   'use strict';
16559 10219   axe.utils.getAllChecks = function getAllChecks(object) {
@@ -16597,48 +10257,45 @@ module.exports = {
16597 10257     };
16598 10258   };
16599 10259   'use strict';
16600    -1   function _slicedToArray(arr, i) {
16601    -1     return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest();
16602    -1   }
16603    -1   function _nonIterableRest() {
16604    -1     throw new TypeError('Invalid attempt to destructure non-iterable instance');
16605    -1   }
16606    -1   function _iterableToArrayLimit(arr, i) {
16607    -1     if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === '[object Arguments]')) {
16608    -1       return;
16609    -1     }
16610    -1     var _arr = [];
16611    -1     var _n = true;
16612    -1     var _d = false;
16613    -1     var _e = undefined;
16614    -1     try {
16615    -1       for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {
16616    -1         _arr.push(_s.value);
16617    -1         if (i && _arr.length === i) {
16618    -1           break;
16619    -1         }
16620    -1       }
16621    -1     } catch (err) {
16622    -1       _d = true;
16623    -1       _e = err;
16624    -1     } finally {
   -1 10260   var _slicedToArray = function() {
   -1 10261     function sliceIterator(arr, i) {
   -1 10262       var _arr = [];
   -1 10263       var _n = true;
   -1 10264       var _d = false;
   -1 10265       var _e = undefined;
16625 10266       try {
16626    -1         if (!_n && _i['return'] != null) {
16627    -1           _i['return']();
   -1 10267         for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {
   -1 10268           _arr.push(_s.value);
   -1 10269           if (i && _arr.length === i) {
   -1 10270             break;
   -1 10271           }
16628 10272         }
   -1 10273       } catch (err) {
   -1 10274         _d = true;
   -1 10275         _e = err;
16629 10276       } finally {
16630    -1         if (_d) {
16631    -1           throw _e;
   -1 10277         try {
   -1 10278           if (!_n && _i['return']) {
   -1 10279             _i['return']();
   -1 10280           }
   -1 10281         } finally {
   -1 10282           if (_d) {
   -1 10283             throw _e;
   -1 10284           }
16632 10285         }
16633 10286       }
   -1 10287       return _arr;
16634 10288     }
16635    -1     return _arr;
16636    -1   }
16637    -1   function _arrayWithHoles(arr) {
16638    -1     if (Array.isArray(arr)) {
16639    -1       return arr;
16640    -1     }
16641    -1   }
   -1 10289     return function(arr, i) {
   -1 10290       if (Array.isArray(arr)) {
   -1 10291         return arr;
   -1 10292       } else if (Symbol.iterator in Object(arr)) {
   -1 10293         return sliceIterator(arr, i);
   -1 10294       } else {
   -1 10295         throw new TypeError('Invalid attempt to destructure non-iterable instance');
   -1 10296       }
   -1 10297     };
   -1 10298   }();
16642 10299   function isMostlyNumbers() {
16643 10300     var str = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
16644 10301     return str.length !== 0 && (str.match(/[0-9]/g) || '').length >= str.length / 2;
@@ -16706,7 +10363,7 @@ module.exports = {
16706 10363     if (uri.length <= 1 || uri.substr(0, 5) === 'data:' || uri.substr(0, 11) === 'javascript:' || uri.includes('?')) {
16707 10364       return;
16708 10365     }
16709    -1     var currentDomain = options.currentDomain, _options$maxLength = options.maxLength, maxLength = _options$maxLength === void 0 ? 25 : _options$maxLength;
   -1 10366     var currentDomain = options.currentDomain, _options$maxLength = options.maxLength, maxLength = _options$maxLength === undefined ? 25 : _options$maxLength;
16710 10367     var _uriParser = uriParser(uri), path = _uriParser.path, domain = _uriParser.domain, hash = _uriParser.hash;
16711 10368     var pathEnd = path.substr(path.substr(0, path.length - 2).lastIndexOf('/') + 1);
16712 10369     if (hash) {
@@ -16729,13 +10386,6 @@ module.exports = {
16729 10386     }
16730 10387   };
16731 10388   'use strict';
16732    -1   axe.utils.getNodeAttributes = function getNodeAttributes(node) {
16733    -1     if (node.attributes instanceof window.NamedNodeMap) {
16734    -1       return node.attributes;
16735    -1     }
16736    -1     return node.cloneNode(false).attributes;
16737    -1   };
16738    -1   'use strict';
16739 10389   axe.utils.getRootNode = function getRootNode(node) {
16740 10390     var doc = node.getRootNode && node.getRootNode() || document;
16741 10391     if (doc === node) {
@@ -16744,34 +10394,13 @@ module.exports = {
16744 10394     return doc;
16745 10395   };
16746 10396   'use strict';
16747    -1   axe.utils.getScroll = function getScroll(elm) {
16748    -1     var buffer = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
16749    -1     var overflowX = elm.scrollWidth > elm.clientWidth + buffer;
16750    -1     var overflowY = elm.scrollHeight > elm.clientHeight + buffer;
16751    -1     if (!(overflowX || overflowY)) {
16752    -1       return;
16753    -1     }
16754    -1     var style = window.getComputedStyle(elm);
16755    -1     var overflowXStyle = style.getPropertyValue('overflow-x');
16756    -1     var overflowYStyle = style.getPropertyValue('overflow-y');
16757    -1     var scrollableX = overflowXStyle !== 'visible' && overflowXStyle !== 'hidden';
16758    -1     var scrollableY = overflowYStyle !== 'visible' && overflowYStyle !== 'hidden';
16759    -1     if (overflowX && scrollableX || overflowY && scrollableY) {
16760    -1       return {
16761    -1         elm: elm,
16762    -1         top: elm.scrollTop,
16763    -1         left: elm.scrollLeft
16764    -1       };
16765    -1     }
16766    -1   };
16767    -1   'use strict';
16768 10397   var escapeSelector = axe.utils.escapeSelector;
16769    -1   var isXHTML;
   -1 10398   var isXHTML = void 0;
16770 10399   var ignoredAttributes = [ 'class', 'style', 'id', 'selected', 'checked', 'disabled', 'tabindex', 'aria-checked', 'aria-selected', 'aria-invalid', 'aria-activedescendant', 'aria-busy', 'aria-disabled', 'aria-expanded', 'aria-grabbed', 'aria-pressed', 'aria-valuenow' ];
16771 10400   var MAXATTRIBUTELENGTH = 31;
16772 10401   function getAttributeNameValue(node, at) {
16773 10402     var name = at.name;
16774    -1     var atnv;
   -1 10403     var atnv = void 0;
16775 10404     if (name.indexOf('href') !== -1 || name.indexOf('src') !== -1) {
16776 10405       var friendly = axe.utils.getFriendlyUriEnd(node.getAttribute(name));
16777 10406       if (friendly) {
@@ -16824,8 +10453,8 @@ module.exports = {
16824 10453             }
16825 10454           });
16826 10455         }
16827    -1         if (node.hasAttributes()) {
16828    -1           Array.from(axe.utils.getNodeAttributes(node)).filter(filterAttributes).forEach(function(at) {
   -1 10456         if (node.attributes) {
   -1 10457           Array.from(node.attributes).filter(filterAttributes).forEach(function(at) {
16829 10458             var atnv = getAttributeNameValue(node, at);
16830 10459             if (atnv) {
16831 10460               if (data.attributes[atnv]) {
@@ -16900,8 +10529,8 @@ module.exports = {
16900 10529     var retVal = [];
16901 10530     var attData = selectorData.attributes;
16902 10531     var tagData = selectorData.tags;
16903    -1     if (node.hasAttributes()) {
16904    -1       Array.from(axe.utils.getNodeAttributes(node)).filter(filterAttributes).forEach(function(at) {
   -1 10532     if (node.attributes) {
   -1 10533       Array.from(node.attributes).filter(filterAttributes).forEach(function(at) {
16905 10534         var atnv = getAttributeNameValue(node, at);
16906 10535         if (atnv && attData[atnv] < tagData[node.nodeName]) {
16907 10536           retVal.push({
@@ -16916,7 +10545,7 @@ module.exports = {
16916 10545   }
16917 10546   function getThreeLeastCommonFeatures(elm, selectorData) {
16918 10547     var selector = '';
16919    -1     var features;
   -1 10548     var features = void 0;
16920 10549     var clss = uncommonClasses(elm, selectorData);
16921 10550     var atts = uncommonAttributes(elm, selectorData);
16922 10551     if (clss.length && clss[0].count === 1) {
@@ -16953,9 +10582,9 @@ module.exports = {
16953 10582     if (!axe._selectorData) {
16954 10583       throw new Error('Expect axe._selectorData to be set up');
16955 10584     }
16956    -1     var _options$toRoot = options.toRoot, toRoot = _options$toRoot === void 0 ? false : _options$toRoot;
16957    -1     var selector;
16958    -1     var similar;
   -1 10585     var _options$toRoot = options.toRoot, toRoot = _options$toRoot === undefined ? false : _options$toRoot;
   -1 10586     var selector = void 0;
   -1 10587     var similar = void 0;
16959 10588     do {
16960 10589       var features = getElmId(elm);
16961 10590       if (!features) {
@@ -16992,9 +10621,6 @@ module.exports = {
16992 10621     if (doc.nodeType === 11) {
16993 10622       var stack = [];
16994 10623       while (doc.nodeType === 11) {
16995    -1         if (!doc.host) {
16996    -1           return '';
16997    -1         }
16998 10624         stack.push({
16999 10625           elm: elm,
17000 10626           doc: doc
@@ -17014,30 +10640,6 @@ module.exports = {
17014 10640     }
17015 10641   };
17016 10642   'use strict';
17017    -1   axe.utils.getStyleSheetFactory = function getStyleSheetFactory(dynamicDoc) {
17018    -1     if (!dynamicDoc) {
17019    -1       throw new Error('axe.utils.getStyleSheetFactory should be invoked with an argument');
17020    -1     }
17021    -1     return function(options) {
17022    -1       var data = options.data, _options$isCrossOrigi = options.isCrossOrigin, isCrossOrigin = _options$isCrossOrigi === void 0 ? false : _options$isCrossOrigi, shadowId = options.shadowId, root = options.root, priority = options.priority, _options$isLink = options.isLink, isLink = _options$isLink === void 0 ? false : _options$isLink;
17023    -1       var style = dynamicDoc.createElement('style');
17024    -1       if (isLink) {
17025    -1         var text = dynamicDoc.createTextNode('@import "'.concat(data.href, '"'));
17026    -1         style.appendChild(text);
17027    -1       } else {
17028    -1         style.appendChild(dynamicDoc.createTextNode(data));
17029    -1       }
17030    -1       dynamicDoc.head.appendChild(style);
17031    -1       return {
17032    -1         sheet: style.sheet,
17033    -1         isCrossOrigin: isCrossOrigin,
17034    -1         shadowId: shadowId,
17035    -1         root: root,
17036    -1         priority: priority
17037    -1       };
17038    -1     };
17039    -1   };
17040    -1   'use strict';
17041 10643   function getXPathArray(node, path) {
17042 10644     var sibling, count;
17043 10645     if (!node) {
@@ -17094,9 +10696,9 @@ module.exports = {
17094 10696   function xpathToString(xpathArray) {
17095 10697     return xpathArray.reduce(function(str, elm) {
17096 10698       if (elm.id) {
17097    -1         return '/'.concat(elm.str, '[@id=\'').concat(elm.id, '\']');
   -1 10699         return '/' + elm.str + '[@id=\'' + elm.id + '\']';
17098 10700       } else {
17099    -1         return str + '/'.concat(elm.str) + (elm.count > 0 ? '['.concat(elm.count, ']') : '');
   -1 10701         return str + ('/' + elm.str) + (elm.count > 0 ? '[' + elm.count + ']' : '');
17100 10702       }
17101 10703     }, '');
17102 10704   }
@@ -17134,41 +10736,32 @@ module.exports = {
17134 10736   'use strict';
17135 10737   axe.utils.isHidden = function isHidden(el, recursed) {
17136 10738     'use strict';
17137    -1     var node = axe.utils.getNodeFromTree(el);
   -1 10739     var parent;
17138 10740     if (el.nodeType === 9) {
17139 10741       return false;
17140 10742     }
17141 10743     if (el.nodeType === 11) {
17142 10744       el = el.host;
17143 10745     }
17144    -1     if (node && node._isHidden !== null) {
17145    -1       return node._isHidden;
17146    -1     }
17147 10746     var style = window.getComputedStyle(el, null);
17148 10747     if (!style || !el.parentNode || style.getPropertyValue('display') === 'none' || !recursed && style.getPropertyValue('visibility') === 'hidden' || el.getAttribute('aria-hidden') === 'true') {
17149 10748       return true;
17150 10749     }
17151    -1     var parent = el.assignedSlot ? el.assignedSlot : el.parentNode;
17152    -1     var isHidden = axe.utils.isHidden(parent, true);
17153    -1     if (node) {
17154    -1       node._isHidden = isHidden;
17155    -1     }
17156    -1     return isHidden;
   -1 10750     parent = el.assignedSlot ? el.assignedSlot : el.parentNode;
   -1 10751     return axe.utils.isHidden(parent, true);
17157 10752   };
17158 10753   'use strict';
17159 10754   var htmlTags = [ 'a', 'abbr', 'address', 'area', 'article', 'aside', 'audio', 'b', 'base', 'bdi', 'bdo', 'blockquote', 'body', 'br', 'button', 'canvas', 'caption', 'cite', 'code', 'col', 'colgroup', 'data', 'datalist', 'dd', 'del', 'details', 'dfn', 'dialog', 'div', 'dl', 'dt', 'em', 'embed', 'fieldset', 'figcaption', 'figure', 'footer', 'form', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'head', 'header', 'hgroup', 'hr', 'html', 'i', 'iframe', 'img', 'input', 'ins', 'kbd', 'keygen', 'label', 'legend', 'li', 'link', 'main', 'map', 'mark', 'math', 'menu', 'menuitem', 'meta', 'meter', 'nav', 'noscript', 'object', 'ol', 'optgroup', 'option', 'output', 'p', 'param', 'picture', 'pre', 'progress', 'q', 'rb', 'rp', 'rt', 'rtc', 'ruby', 's', 'samp', 'script', 'section', 'select', 'slot', 'small', 'source', 'span', 'strong', 'style', 'sub', 'summary', 'sup', 'svg', 'table', 'tbody', 'td', 'template', 'textarea', 'tfoot', 'th', 'thead', 'time', 'title', 'tr', 'track', 'u', 'ul', 'var', 'video', 'wbr' ];
17160 10755   axe.utils.isHtmlElement = function isHtmlElement(node) {
17161    -1     if (node.namespaceURI === 'http://www.w3.org/2000/svg') {
17162    -1       return false;
17163    -1     }
17164    -1     return htmlTags.includes(node.nodeName.toLowerCase());
   -1 10756     var tagName = node.nodeName.toLowerCase();
   -1 10757     return htmlTags.includes(tagName) && node.namespaceURI !== 'http://www.w3.org/2000/svg';
17165 10758   };
17166 10759   'use strict';
17167 10760   var possibleShadowRoots = [ 'article', 'aside', 'blockquote', 'body', 'div', 'footer', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'header', 'main', 'nav', 'p', 'section', 'span' ];
17168 10761   axe.utils.isShadowRoot = function isShadowRoot(node) {
   -1 10762     var nodeName = node.nodeName.toLowerCase();
17169 10763     if (node.shadowRoot) {
17170    -1       var nodeName = node.nodeName.toLowerCase();
17171    -1       if (possibleShadowRoots.includes(nodeName) || /^[a-z][a-z0-9_.-]*-[a-z0-9_.-]*$/.test(nodeName)) {
   -1 10764       if (/^[a-z][a-z0-9_.-]*-[a-z0-9_.-]*$/.test(nodeName) || possibleShadowRoots.includes(nodeName)) {
17172 10765         return true;
17173 10766       }
17174 10767     }
@@ -17183,13 +10776,6 @@ module.exports = {
17183 10776     return doc.createElement('A').localName === 'A';
17184 10777   };
17185 10778   'use strict';
17186    -1   axe._memoizedFns = [];
17187    -1   axe.utils.memoize = function(fn) {
17188    -1     var memoized = axe.imports.memoize(fn);
17189    -1     axe._memoizedFns.push(memoized);
17190    -1     return memoized;
17191    -1   };
17192    -1   'use strict';
17193 10779   function pushFrame(resultSet, options, frameElement, frameSelector) {
17194 10780     'use strict';
17195 10781     var frameXpath = axe.utils.getXpath(frameElement);
@@ -17249,140 +10835,34 @@ module.exports = {
17249 10835         return;
17250 10836       }
17251 10837       results.forEach(function(ruleResult) {
17252    -1         if (ruleResult.nodes && frameResult.frame) {
17253    -1           pushFrame(ruleResult.nodes, options, frameResult.frameElement, frameResult.frame);
17254    -1         }
17255    -1         var res = axe.utils.findBy(result, 'id', ruleResult.id);
17256    -1         if (!res) {
17257    -1           result.push(ruleResult);
17258    -1         } else {
17259    -1           if (ruleResult.nodes.length) {
17260    -1             spliceNodes(res.nodes, ruleResult.nodes);
17261    -1           }
17262    -1         }
17263    -1       });
17264    -1     });
17265    -1     return result;
17266    -1   };
17267    -1   'use strict';
17268    -1   axe.utils.nodeSorter = function nodeSorter(nodeA, nodeB) {
17269    -1     nodeA = nodeA.actualNode || nodeA;
17270    -1     nodeB = nodeB.actualNode || nodeB;
17271    -1     if (nodeA === nodeB) {
17272    -1       return 0;
17273    -1     }
17274    -1     if (nodeA.compareDocumentPosition(nodeB) & 4) {
17275    -1       return -1;
17276    -1     } else {
17277    -1       return 1;
17278    -1     }
17279    -1   };
17280    -1   'use strict';
17281    -1   axe.utils.parseCrossOriginStylesheet = function parseCrossOriginStylesheet(url, options, priority, importedUrls, isCrossOrigin) {
17282    -1     var axiosOptions = {
17283    -1       method: 'get',
17284    -1       url: url
17285    -1     };
17286    -1     importedUrls.push(url);
17287    -1     return axe.imports.axios(axiosOptions).then(function(_ref) {
17288    -1       var data = _ref.data;
17289    -1       var result = options.convertDataToStylesheet({
17290    -1         data: data,
17291    -1         isCrossOrigin: isCrossOrigin,
17292    -1         priority: priority,
17293    -1         root: options.rootNode,
17294    -1         shadowId: options.shadowId
17295    -1       });
17296    -1       return axe.utils.parseStylesheet(result.sheet, options, priority, importedUrls, result.isCrossOrigin);
17297    -1     });
17298    -1   };
17299    -1   'use strict';
17300    -1   function _toConsumableArray(arr) {
17301    -1     return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread();
17302    -1   }
17303    -1   function _nonIterableSpread() {
17304    -1     throw new TypeError('Invalid attempt to spread non-iterable instance');
17305    -1   }
17306    -1   function _iterableToArray(iter) {
17307    -1     if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === '[object Arguments]') {
17308    -1       return Array.from(iter);
17309    -1     }
17310    -1   }
17311    -1   function _arrayWithoutHoles(arr) {
17312    -1     if (Array.isArray(arr)) {
17313    -1       for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) {
17314    -1         arr2[i] = arr[i];
17315    -1       }
17316    -1       return arr2;
17317    -1     }
17318    -1   }
17319    -1   axe.utils.parseSameOriginStylesheet = function parseSameOriginStylesheet(sheet, options, priority, importedUrls) {
17320    -1     var isCrossOrigin = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;
17321    -1     var rules = Array.from(sheet.cssRules);
17322    -1     if (!rules) {
17323    -1       return Promise.resolve();
17324    -1     }
17325    -1     var cssImportRules = rules.filter(function(r) {
17326    -1       return r.type === 3;
17327    -1     });
17328    -1     if (!cssImportRules.length) {
17329    -1       return Promise.resolve({
17330    -1         isCrossOrigin: isCrossOrigin,
17331    -1         priority: priority,
17332    -1         root: options.rootNode,
17333    -1         shadowId: options.shadowId,
17334    -1         sheet: sheet
   -1 10838         if (ruleResult.nodes && frameResult.frame) {
   -1 10839           pushFrame(ruleResult.nodes, options, frameResult.frameElement, frameResult.frame);
   -1 10840         }
   -1 10841         var res = axe.utils.findBy(result, 'id', ruleResult.id);
   -1 10842         if (!res) {
   -1 10843           result.push(ruleResult);
   -1 10844         } else {
   -1 10845           if (ruleResult.nodes.length) {
   -1 10846             spliceNodes(res.nodes, ruleResult.nodes);
   -1 10847           }
   -1 10848         }
17335 10849       });
17336    -1     }
17337    -1     var cssImportUrlsNotAlreadyImported = cssImportRules.filter(function(rule) {
17338    -1       return rule.href;
17339    -1     }).map(function(rule) {
17340    -1       return rule.href;
17341    -1     }).filter(function(url) {
17342    -1       return !importedUrls.includes(url);
17343    -1     });
17344    -1     var promises = cssImportUrlsNotAlreadyImported.map(function(importUrl, cssRuleIndex) {
17345    -1       var newPriority = [].concat(_toConsumableArray(priority), [ cssRuleIndex ]);
17346    -1       var isCrossOriginRequest = /^https?:\/\/|^\/\//i.test(importUrl);
17347    -1       return axe.utils.parseCrossOriginStylesheet(importUrl, options, newPriority, importedUrls, isCrossOriginRequest);
17348    -1     });
17349    -1     var nonImportCSSRules = rules.filter(function(r) {
17350    -1       return r.type !== 3;
17351 10850     });
17352    -1     if (!nonImportCSSRules.length) {
17353    -1       return Promise.all(promises);
17354    -1     }
17355    -1     promises.push(Promise.resolve(options.convertDataToStylesheet({
17356    -1       data: nonImportCSSRules.map(function(rule) {
17357    -1         return rule.cssText;
17358    -1       }).join(),
17359    -1       isCrossOrigin: isCrossOrigin,
17360    -1       priority: priority,
17361    -1       root: options.rootNode,
17362    -1       shadowId: options.shadowId
17363    -1     })));
17364    -1     return Promise.all(promises);
   -1 10851     return result;
17365 10852   };
17366 10853   'use strict';
17367    -1   axe.utils.parseStylesheet = function parseStylesheet(sheet, options, priority, importedUrls) {
17368    -1     var isCrossOrigin = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;
17369    -1     var isSameOrigin = isSameOriginStylesheet(sheet);
17370    -1     if (isSameOrigin) {
17371    -1       return axe.utils.parseSameOriginStylesheet(sheet, options, priority, importedUrls, isCrossOrigin);
   -1 10854   axe.utils.nodeSorter = function nodeSorter(nodeA, nodeB) {
   -1 10855     nodeA = nodeA.actualNode || nodeA;
   -1 10856     nodeB = nodeB.actualNode || nodeB;
   -1 10857     if (nodeA === nodeB) {
   -1 10858       return 0;
17372 10859     }
17373    -1     return axe.utils.parseCrossOriginStylesheet(sheet.href, options, priority, importedUrls, true);
17374    -1   };
17375    -1   function isSameOriginStylesheet(sheet) {
17376    -1     try {
17377    -1       var rules = sheet.cssRules;
17378    -1       if (!rules && sheet.href) {
17379    -1         return false;
17380    -1       }
17381    -1       return true;
17382    -1     } catch (e) {
17383    -1       return false;
   -1 10860     if (nodeA.compareDocumentPosition(nodeB) & 4) {
   -1 10861       return -1;
   -1 10862     } else {
   -1 10863       return 1;
17384 10864     }
17385    -1   }
   -1 10865   };
17386 10866   'use strict';
17387 10867   utils.performanceTimer = function() {
17388 10868     'use strict';
@@ -17425,10 +10905,7 @@ module.exports = {
17425 10905           axe.log('Measure ' + req.name + ' took ' + req.duration + 'ms');
17426 10906         }
17427 10907         if (window.performance && window.performance.getEntriesByType !== undefined) {
17428    -1           var axeStart = window.performance.getEntriesByName('mark_axe_start')[0];
17429    -1           var measures = window.performance.getEntriesByType('measure').filter(function(measure) {
17430    -1             return measure.startTime >= axeStart.startTime;
17431    -1           });
   -1 10908           var measures = window.performance.getEntriesByType('measure');
17432 10909           for (var i = 0; i < measures.length; ++i) {
17433 10910             var req = measures[i];
17434 10911             if (req.name === measureName) {
@@ -17662,17 +11139,32 @@ module.exports = {
17662 11139     };
17663 11140   }
17664 11141   'use strict';
   -1 11142   function _toConsumableArray(arr) {
   -1 11143     if (Array.isArray(arr)) {
   -1 11144       for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) {
   -1 11145         arr2[i] = arr[i];
   -1 11146       }
   -1 11147       return arr2;
   -1 11148     } else {
   -1 11149       return Array.from(arr);
   -1 11150     }
   -1 11151   }
17665 11152   axe.utils.preloadCssom = function preloadCssom(_ref) {
17666    -1     var _ref$treeRoot = _ref.treeRoot, treeRoot = _ref$treeRoot === void 0 ? axe._tree[0] : _ref$treeRoot;
   -1 11153     var timeout = _ref.timeout, _ref$treeRoot = _ref.treeRoot, treeRoot = _ref$treeRoot === undefined ? axe._tree[0] : _ref$treeRoot;
17667 11154     var rootNodes = getAllRootNodesInTree(treeRoot);
   -1 11155     var q = axe.utils.queue();
17668 11156     if (!rootNodes.length) {
17669    -1       return Promise.resolve();
   -1 11157       return q;
17670 11158     }
17671    -1     var dynamicDoc = document.implementation.createHTMLDocument('Dynamic document for loading cssom');
17672    -1     var convertDataToStylesheet = axe.utils.getStyleSheetFactory(dynamicDoc);
17673    -1     return getCssomForAllRootNodes(rootNodes, convertDataToStylesheet).then(function(assets) {
17674    -1       return flattenAssets(assets);
   -1 11159     var dynamicDoc = document.implementation.createHTMLDocument();
   -1 11160     var convertDataToStylesheet = getStyleSheetFactory(dynamicDoc);
   -1 11161     q.defer(function(resolve, reject) {
   -1 11162       getCssomForAllRootNodes(rootNodes, convertDataToStylesheet, timeout).then(function(assets) {
   -1 11163         var cssom = processCssomAssets(assets);
   -1 11164         resolve(cssom);
   -1 11165       }).catch(reject);
17675 11166     });
   -1 11167     return q;
17676 11168   };
17677 11169   function getAllRootNodesInTree(tree) {
17678 11170     var ids = [];
@@ -17690,45 +11182,170 @@ module.exports = {
17690 11182     });
17691 11183     return axe.utils.uniqueArray(rootNodes, []);
17692 11184   }
17693    -1   function getCssomForAllRootNodes(rootNodes, convertDataToStylesheet) {
17694    -1     var promises = [];
17695    -1     rootNodes.forEach(function(_ref2, index) {
17696    -1       var rootNode = _ref2.rootNode, shadowId = _ref2.shadowId;
17697    -1       var sheets = getStylesheetsOfRootNode(rootNode, shadowId, convertDataToStylesheet);
17698    -1       if (!sheets) {
17699    -1         return Promise.all(promises);
   -1 11185   var getStyleSheetFactory = function getStyleSheetFactory(dynamicDoc) {
   -1 11186     return function(_ref2) {
   -1 11187       var data = _ref2.data, isExternal = _ref2.isExternal, shadowId = _ref2.shadowId, root = _ref2.root, priority = _ref2.priority, _ref2$isLink = _ref2.isLink, isLink = _ref2$isLink === undefined ? false : _ref2$isLink;
   -1 11188       var style = dynamicDoc.createElement('style');
   -1 11189       if (isLink) {
   -1 11190         var text = dynamicDoc.createTextNode('@import "' + data.href + '"');
   -1 11191         style.appendChild(text);
   -1 11192       } else {
   -1 11193         style.appendChild(dynamicDoc.createTextNode(data));
17700 11194       }
17701    -1       var rootIndex = index + 1;
17702    -1       var parseOptions = {
17703    -1         rootNode: rootNode,
   -1 11195       dynamicDoc.head.appendChild(style);
   -1 11196       return {
   -1 11197         sheet: style.sheet,
   -1 11198         isExternal: isExternal,
17704 11199         shadowId: shadowId,
17705    -1         convertDataToStylesheet: convertDataToStylesheet,
17706    -1         rootIndex: rootIndex
   -1 11200         root: root,
   -1 11201         priority: priority
17707 11202       };
17708    -1       var importedUrls = [];
17709    -1       var p = Promise.all(sheets.map(function(sheet, sheetIndex) {
17710    -1         var priority = [ rootIndex, sheetIndex ];
17711    -1         return axe.utils.parseStylesheet(sheet, parseOptions, priority, importedUrls);
   -1 11203     };
   -1 11204   };
   -1 11205   function getCssomForAllRootNodes(rootNodes, convertDataToStylesheet, timeout) {
   -1 11206     var q = axe.utils.queue();
   -1 11207     rootNodes.forEach(function(_ref3, index) {
   -1 11208       var rootNode = _ref3.rootNode, shadowId = _ref3.shadowId;
   -1 11209       return q.defer(function(resolve, reject) {
   -1 11210         return loadCssom({
   -1 11211           rootNode: rootNode,
   -1 11212           shadowId: shadowId,
   -1 11213           timeout: timeout,
   -1 11214           convertDataToStylesheet: convertDataToStylesheet,
   -1 11215           rootIndex: index + 1
   -1 11216         }).then(resolve).catch(reject);
   -1 11217       });
   -1 11218     });
   -1 11219     return q;
   -1 11220   }
   -1 11221   function processCssomAssets(nestedAssets) {
   -1 11222     var result = [];
   -1 11223     nestedAssets.forEach(function(item) {
   -1 11224       if (Array.isArray(item)) {
   -1 11225         result.push.apply(result, _toConsumableArray(processCssomAssets(item)));
   -1 11226       } else {
   -1 11227         result.push(item);
   -1 11228       }
   -1 11229     });
   -1 11230     return result;
   -1 11231   }
   -1 11232   function loadCssom(options) {
   -1 11233     var rootIndex = options.rootIndex;
   -1 11234     var q = axe.utils.queue();
   -1 11235     var sheets = getStylesheetsOfRootNode(options);
   -1 11236     if (!sheets) {
   -1 11237       return q;
   -1 11238     }
   -1 11239     sheets.forEach(function(sheet, sheetIndex) {
   -1 11240       var priority = [ rootIndex, sheetIndex ];
   -1 11241       try {
   -1 11242         var deferredQ = parseNonCrossOriginStylesheet(sheet, options, priority);
   -1 11243         q.defer(deferredQ);
   -1 11244       } catch (e) {
   -1 11245         var _deferredQ = parseCrossOriginStylesheet(sheet.href, options, priority);
   -1 11246         q.defer(_deferredQ);
   -1 11247       }
   -1 11248     });
   -1 11249     return q;
   -1 11250   }
   -1 11251   function parseNonCrossOriginStylesheet(sheet, options, priority) {
   -1 11252     var q = axe.utils.queue();
   -1 11253     var cssRules = sheet.cssRules;
   -1 11254     var rules = Array.from(cssRules);
   -1 11255     if (!rules) {
   -1 11256       return q;
   -1 11257     }
   -1 11258     var cssImportRules = rules.filter(function(r) {
   -1 11259       return r.type === 3;
   -1 11260     });
   -1 11261     if (!cssImportRules.length) {
   -1 11262       q.defer(function(resolve) {
   -1 11263         return resolve({
   -1 11264           isExternal: false,
   -1 11265           priority: priority,
   -1 11266           root: options.rootNode,
   -1 11267           shadowId: options.shadowId,
   -1 11268           sheet: sheet
   -1 11269         });
   -1 11270       });
   -1 11271       return q;
   -1 11272     }
   -1 11273     cssImportRules.forEach(function(importRule, cssRuleIndex) {
   -1 11274       return q.defer(function(resolve, reject) {
   -1 11275         var importUrl = importRule.href;
   -1 11276         var newPriority = [].concat(_toConsumableArray(priority), [ cssRuleIndex ]);
   -1 11277         var axiosOptions = {
   -1 11278           method: 'get',
   -1 11279           url: importUrl,
   -1 11280           timeout: options.timeout
   -1 11281         };
   -1 11282         axe.imports.axios(axiosOptions).then(function(_ref4) {
   -1 11283           var data = _ref4.data;
   -1 11284           return resolve(options.convertDataToStylesheet({
   -1 11285             data: data,
   -1 11286             isExternal: true,
   -1 11287             priority: newPriority,
   -1 11288             root: options.rootNode,
   -1 11289             shadowId: options.shadowId
   -1 11290           }));
   -1 11291         }).catch(reject);
   -1 11292       });
   -1 11293     });
   -1 11294     var nonImportCSSRules = rules.filter(function(r) {
   -1 11295       return r.type !== 3;
   -1 11296     });
   -1 11297     if (!nonImportCSSRules.length) {
   -1 11298       return q;
   -1 11299     }
   -1 11300     q.defer(function(resolve) {
   -1 11301       return resolve(options.convertDataToStylesheet({
   -1 11302         data: nonImportCSSRules.map(function(rule) {
   -1 11303           return rule.cssText;
   -1 11304         }).join(),
   -1 11305         isExternal: false,
   -1 11306         priority: priority,
   -1 11307         root: options.rootNode,
   -1 11308         shadowId: options.shadowId
17712 11309       }));
17713    -1       promises.push(p);
17714 11310     });
17715    -1     return Promise.all(promises);
   -1 11311     return q;
17716 11312   }
17717    -1   function flattenAssets(assets) {
17718    -1     return assets.reduce(function(acc, val) {
17719    -1       return Array.isArray(val) ? acc.concat(flattenAssets(val)) : acc.concat(val);
17720    -1     }, []);
   -1 11313   function parseCrossOriginStylesheet(url, options, priority) {
   -1 11314     var q = axe.utils.queue();
   -1 11315     if (!url) {
   -1 11316       return q;
   -1 11317     }
   -1 11318     var axiosOptions = {
   -1 11319       method: 'get',
   -1 11320       url: url,
   -1 11321       timeout: options.timeout
   -1 11322     };
   -1 11323     q.defer(function(resolve, reject) {
   -1 11324       axe.imports.axios(axiosOptions).then(function(_ref5) {
   -1 11325         var data = _ref5.data;
   -1 11326         return resolve(options.convertDataToStylesheet({
   -1 11327           data: data,
   -1 11328           isExternal: true,
   -1 11329           priority: priority,
   -1 11330           root: options.rootNode,
   -1 11331           shadowId: options.shadowId
   -1 11332         }));
   -1 11333       }).catch(reject);
   -1 11334     });
   -1 11335     return q;
17721 11336   }
17722    -1   function getStylesheetsOfRootNode(rootNode, shadowId, convertDataToStylesheet) {
17723    -1     var sheets;
   -1 11337   function getStylesheetsOfRootNode(options) {
   -1 11338     var rootNode = options.rootNode, shadowId = options.shadowId;
   -1 11339     var sheets = void 0;
17724 11340     if (rootNode.nodeType === 11 && shadowId) {
17725    -1       sheets = getStylesheetsFromDocumentFragment(rootNode, convertDataToStylesheet);
   -1 11341       sheets = getStylesheetsFromDocumentFragment(options);
17726 11342     } else {
17727 11343       sheets = getStylesheetsFromDocument(rootNode);
17728 11344     }
17729 11345     return filterStylesheetsWithSameHref(sheets);
17730 11346   }
17731    -1   function getStylesheetsFromDocumentFragment(rootNode, convertDataToStylesheet) {
   -1 11347   function getStylesheetsFromDocumentFragment(options) {
   -1 11348     var rootNode = options.rootNode, convertDataToStylesheet = options.convertDataToStylesheet;
17732 11349     return Array.from(rootNode.children).filter(filerStyleAndLinkAttributesInDocumentFragment).reduce(function(out, node) {
17733 11350       var nodeName = node.nodeName.toUpperCase();
17734 11351       var data = nodeName === 'STYLE' ? node.textContent : node;
@@ -17775,20 +11392,11 @@ module.exports = {
17775 11392     });
17776 11393   }
17777 11394   'use strict';
17778    -1   function _extends() {
17779    -1     _extends = Object.assign || function(target) {
17780    -1       for (var i = 1; i < arguments.length; i++) {
17781    -1         var source = arguments[i];
17782    -1         for (var key in source) {
17783    -1           if (Object.prototype.hasOwnProperty.call(source, key)) {
17784    -1             target[key] = source[key];
17785    -1           }
17786    -1         }
17787    -1       }
17788    -1       return target;
17789    -1     };
17790    -1     return _extends.apply(this, arguments);
17791    -1   }
   -1 11395   var _typeof = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol' ? function(obj) {
   -1 11396     return typeof obj;
   -1 11397   } : function(obj) {
   -1 11398     return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;
   -1 11399   };
17792 11400   function _defineProperty(obj, key, value) {
17793 11401     if (key in obj) {
17794 11402       Object.defineProperty(obj, key, {
@@ -17802,20 +11410,8 @@ module.exports = {
17802 11410     }
17803 11411     return obj;
17804 11412   }
17805    -1   function _typeof(obj) {
17806    -1     if (typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol') {
17807    -1       _typeof = function _typeof(obj) {
17808    -1         return typeof obj;
17809    -1       };
17810    -1     } else {
17811    -1       _typeof = function _typeof(obj) {
17812    -1         return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;
17813    -1       };
17814    -1     }
17815    -1     return _typeof(obj);
17816    -1   }
17817 11413   function isValidPreloadObject(preload) {
17818    -1     return _typeof(preload) === 'object' && Array.isArray(preload.assets);
   -1 11414     return (typeof preload === 'undefined' ? 'undefined' : _typeof(preload)) === 'object' && Array.isArray(preload.assets);
17819 11415   }
17820 11416   axe.utils.shouldPreload = function shouldPreload(options) {
17821 11417     if (!options || options.preload === undefined || options.preload === null) {
@@ -17827,10 +11423,9 @@ module.exports = {
17827 11423     return isValidPreloadObject(options.preload);
17828 11424   };
17829 11425   axe.utils.getPreloadConfig = function getPreloadConfig(options) {
17830    -1     var _axe$constants$preloa = axe.constants.preload, assets = _axe$constants$preloa.assets, timeout = _axe$constants$preloa.timeout;
17831 11426     var config = {
17832    -1       assets: assets,
17833    -1       timeout: timeout
   -1 11427       assets: axe.constants.preloadAssets,
   -1 11428       timeout: axe.constants.preloadAssetsTimeout
17834 11429     };
17835 11430     if (!options.preload) {
17836 11431       return config;
@@ -17839,10 +11434,10 @@ module.exports = {
17839 11434       return config;
17840 11435     }
17841 11436     var areRequestedAssetsValid = options.preload.assets.every(function(a) {
17842    -1       return assets.includes(a.toLowerCase());
   -1 11437       return axe.constants.preloadAssets.includes(a.toLowerCase());
17843 11438     });
17844 11439     if (!areRequestedAssetsValid) {
17845    -1       throw new Error('Requested assets, not supported. ' + 'Supported assets are: '.concat(assets.join(', '), '.'));
   -1 11440       throw new Error('Requested assets, not supported. ' + ('Supported assets are: ' + axe.constants.preloadAssets.join(', ') + '.'));
17846 11441     }
17847 11442     config.assets = axe.utils.uniqueArray(options.preload.assets.map(function(a) {
17848 11443       return a.toLowerCase();
@@ -17856,44 +11451,31 @@ module.exports = {
17856 11451     var preloadFunctionsMap = {
17857 11452       cssom: axe.utils.preloadCssom
17858 11453     };
   -1 11454     var q = axe.utils.queue();
17859 11455     var shouldPreload = axe.utils.shouldPreload(options);
17860 11456     if (!shouldPreload) {
17861    -1       return Promise.resolve();
17862    -1     }
17863    -1     return new Promise(function(resolve, reject) {
17864    -1       var _axe$utils$getPreload = axe.utils.getPreloadConfig(options), assets = _axe$utils$getPreload.assets, timeout = _axe$utils$getPreload.timeout;
17865    -1       setTimeout(function() {
17866    -1         return reject('Preload assets timed out.');
17867    -1       }, timeout);
17868    -1       Promise.all(assets.map(function(asset) {
17869    -1         return preloadFunctionsMap[asset](options).then(function(results) {
17870    -1           return _defineProperty({}, asset, results);
17871    -1         });
17872    -1       })).then(function(results) {
17873    -1         var preloadAssets = results.reduce(function(out, result) {
17874    -1           return _extends({}, out, {}, result);
17875    -1         }, {});
17876    -1         resolve(preloadAssets);
   -1 11457       return q;
   -1 11458     }
   -1 11459     var preloadConfig = axe.utils.getPreloadConfig(options);
   -1 11460     preloadConfig.assets.forEach(function(asset) {
   -1 11461       q.defer(function(resolve, reject) {
   -1 11462         preloadFunctionsMap[asset](preloadConfig).then(function(results) {
   -1 11463           resolve(_defineProperty({}, asset, results[0]));
   -1 11464         }).catch(reject);
17877 11465       });
17878 11466     });
   -1 11467     return q;
17879 11468   };
17880 11469   'use strict';
17881    -1   function _typeof(obj) {
17882    -1     if (typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol') {
17883    -1       _typeof = function _typeof(obj) {
17884    -1         return typeof obj;
17885    -1       };
17886    -1     } else {
17887    -1       _typeof = function _typeof(obj) {
17888    -1         return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;
17889    -1       };
17890    -1     }
17891    -1     return _typeof(obj);
17892    -1   }
   -1 11470   var _typeof = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol' ? function(obj) {
   -1 11471     return typeof obj;
   -1 11472   } : function(obj) {
   -1 11473     return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;
   -1 11474   };
17893 11475   function getIncompleteReason(checkData, messages) {
17894 11476     function getDefaultMsg(messages) {
17895    -1       if (messages.incomplete && messages.incomplete['default']) {
17896    -1         return messages.incomplete['default'];
   -1 11477       if (messages.incomplete && messages.incomplete.default) {
   -1 11478         return messages.incomplete.default;
17897 11479       } else {
17898 11480         return helpers.incompleteFallbackMessage();
17899 11481       }
@@ -17955,30 +11537,30 @@ module.exports = {
17955 11537   'use strict';
17956 11538   var convertExpressions = function convertExpressions() {};
17957 11539   var matchExpressions = function matchExpressions() {};
17958    -1   function matchesTag(vNode, exp) {
17959    -1     return vNode.props.nodeType === 1 && (exp.tag === '*' || vNode.props.nodeName === exp.tag);
   -1 11540   function matchesTag(node, exp) {
   -1 11541     return node.nodeType === 1 && (exp.tag === '*' || node.nodeName.toLowerCase() === exp.tag);
17960 11542   }
17961    -1   function matchesClasses(vNode, exp) {
17962    -1     return !exp.classes || exp.classes.every(function(cl) {
17963    -1       return vNode.hasClass(cl.value);
17964    -1     });
   -1 11543   function matchesClasses(node, exp) {
   -1 11544     return !exp.classes || exp.classes.reduce(function(result, cl) {
   -1 11545       return result && node.className && node.className.match(cl.regexp);
   -1 11546     }, true);
17965 11547   }
17966    -1   function matchesAttributes(vNode, exp) {
17967    -1     return !exp.attributes || exp.attributes.every(function(att) {
17968    -1       var nodeAtt = vNode.attr(att.key);
17969    -1       return nodeAtt !== null && (!att.value || att.test(nodeAtt));
17970    -1     });
   -1 11548   function matchesAttributes(node, exp) {
   -1 11549     return !exp.attributes || exp.attributes.reduce(function(result, att) {
   -1 11550       var nodeAtt = node.getAttribute(att.key);
   -1 11551       return result && nodeAtt !== null && (!att.value || att.test(nodeAtt));
   -1 11552     }, true);
17971 11553   }
17972    -1   function matchesId(vNode, exp) {
17973    -1     return !exp.id || vNode.props.id === exp.id;
   -1 11554   function matchesId(node, exp) {
   -1 11555     return !exp.id || node.id === exp.id;
17974 11556   }
17975 11557   function matchesPseudos(target, exp) {
17976    -1     if (!exp.pseudos || exp.pseudos.every(function(pseudo) {
   -1 11558     if (!exp.pseudos || exp.pseudos.reduce(function(result, pseudo) {
17977 11559       if (pseudo.name === 'not') {
17978    -1         return !matchExpressions([ target ], pseudo.expressions, false).length;
   -1 11560         return result && !matchExpressions([ target ], pseudo.expressions, false).length;
17979 11561       }
17980 11562       throw new Error('the pseudo selector ' + pseudo.name + ' has not yet been implemented');
17981    -1     })) {
   -1 11563     }, true)) {
17982 11564       return true;
17983 11565     }
17984 11566     return false;
@@ -18075,7 +11657,7 @@ module.exports = {
18075 11657     return pseudos.map(function(p) {
18076 11658       var expressions;
18077 11659       if (p.name === 'not') {
18078    -1         expressions = p.value;
   -1 11660         expressions = axe.utils.cssParser.parse(p.value);
18079 11661         expressions = expressions.selectors ? expressions.selectors : [ expressions ];
18080 11662         expressions = convertExpressions(expressions);
18081 11663       }
@@ -18104,36 +11686,36 @@ module.exports = {
18104 11686       return newExp;
18105 11687     });
18106 11688   };
18107    -1   function createLocalVariables(vNodes, anyLevel, thisLevel, parentShadowId) {
   -1 11689   function createLocalVariables(nodes, anyLevel, thisLevel, parentShadowId) {
18108 11690     var retVal = {
18109    -1       vNodes: vNodes.slice(),
   -1 11691       nodes: nodes.slice(),
18110 11692       anyLevel: anyLevel,
18111 11693       thisLevel: thisLevel,
18112 11694       parentShadowId: parentShadowId
18113 11695     };
18114    -1     retVal.vNodes.reverse();
   -1 11696     retVal.nodes.reverse();
18115 11697     return retVal;
18116 11698   }
18117    -1   function matchesSelector(vNode, exp) {
18118    -1     return matchesTag(vNode, exp[0]) && matchesClasses(vNode, exp[0]) && matchesAttributes(vNode, exp[0]) && matchesId(vNode, exp[0]) && matchesPseudos(vNode, exp[0]);
   -1 11699   function matchesSelector(node, exp) {
   -1 11700     return matchesTag(node.actualNode, exp[0]) && matchesClasses(node.actualNode, exp[0]) && matchesAttributes(node.actualNode, exp[0]) && matchesId(node.actualNode, exp[0]) && matchesPseudos(node, exp[0]);
18119 11701   }
18120 11702   matchExpressions = function matchExpressions(domTree, expressions, recurse, filter) {
18121 11703     var stack = [];
18122    -1     var vNodes = Array.isArray(domTree) ? domTree : [ domTree ];
18123    -1     var currentLevel = createLocalVariables(vNodes, expressions, [], domTree[0].shadowId);
   -1 11704     var nodes = Array.isArray(domTree) ? domTree : [ domTree ];
   -1 11705     var currentLevel = createLocalVariables(nodes, expressions, [], domTree[0].shadowId);
18124 11706     var result = [];
18125    -1     while (currentLevel.vNodes.length) {
18126    -1       var vNode = currentLevel.vNodes.pop();
   -1 11707     while (currentLevel.nodes.length) {
   -1 11708       var node = currentLevel.nodes.pop();
18127 11709       var childOnly = [];
18128 11710       var childAny = [];
18129 11711       var combined = currentLevel.anyLevel.slice().concat(currentLevel.thisLevel);
18130 11712       var added = false;
18131 11713       for (var i = 0; i < combined.length; i++) {
18132 11714         var exp = combined[i];
18133    -1         if ((!exp[0].id || vNode.shadowId === currentLevel.parentShadowId) && matchesSelector(vNode, exp)) {
   -1 11715         if (matchesSelector(node, exp) && (!exp[0].id || node.shadowId === currentLevel.parentShadowId)) {
18134 11716           if (exp.length === 1) {
18135    -1             if (!added && (!filter || filter(vNode))) {
18136    -1               result.push(vNode);
   -1 11717             if (!added && (!filter || filter(node))) {
   -1 11718               result.push(node);
18137 11719               added = true;
18138 11720             }
18139 11721           } else {
@@ -18148,15 +11730,15 @@ module.exports = {
18148 11730             }
18149 11731           }
18150 11732         }
18151    -1         if ((!exp[0].id || vNode.shadowId === currentLevel.parentShadowId) && currentLevel.anyLevel.includes(exp)) {
   -1 11733         if (currentLevel.anyLevel.includes(exp) && (!exp[0].id || node.shadowId === currentLevel.parentShadowId)) {
18152 11734           childAny.push(exp);
18153 11735         }
18154 11736       }
18155    -1       if (vNode.children && vNode.children.length && recurse) {
   -1 11737       if (node.children && node.children.length && recurse) {
18156 11738         stack.push(currentLevel);
18157    -1         currentLevel = createLocalVariables(vNode.children, childAny, childOnly, vNode.shadowId);
   -1 11739         currentLevel = createLocalVariables(node.children, childAny, childOnly, node.shadowId);
18158 11740       }
18159    -1       while (!currentLevel.vNodes.length && stack.length) {
   -1 11741       while (!currentLevel.nodes.length && stack.length) {
18160 11742         currentLevel = stack.pop();
18161 11743       }
18162 11744     }
@@ -18173,18 +11755,11 @@ module.exports = {
18173 11755     return matchExpressions(domTree, expressions, true, filter);
18174 11756   };
18175 11757   'use strict';
18176    -1   function _typeof(obj) {
18177    -1     if (typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol') {
18178    -1       _typeof = function _typeof(obj) {
18179    -1         return typeof obj;
18180    -1       };
18181    -1     } else {
18182    -1       _typeof = function _typeof(obj) {
18183    -1         return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;
18184    -1       };
18185    -1     }
18186    -1     return _typeof(obj);
18187    -1   }
   -1 11758   var _typeof = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol' ? function(obj) {
   -1 11759     return typeof obj;
   -1 11760   } : function(obj) {
   -1 11761     return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;
   -1 11762   };
18188 11763   (function() {
18189 11764     'use strict';
18190 11765     function noop() {}
@@ -18237,10 +11812,10 @@ module.exports = {
18237 11812       }
18238 11813       var q = {
18239 11814         defer: function defer(fn) {
18240    -1           if (_typeof(fn) === 'object' && fn.then && fn['catch']) {
   -1 11815           if ((typeof fn === 'undefined' ? 'undefined' : _typeof(fn)) === 'object' && fn.then && fn.catch) {
18241 11816             var defer = fn;
18242 11817             fn = function fn(resolve, reject) {
18243    -1               defer.then(resolve)['catch'](reject);
   -1 11818               defer.then(resolve).catch(reject);
18244 11819             };
18245 11820           }
18246 11821           funcGuard(fn);
@@ -18288,18 +11863,11 @@ module.exports = {
18288 11863     axe.utils.queue = queue;
18289 11864   })();
18290 11865   'use strict';
18291    -1   function _typeof(obj) {
18292    -1     if (typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol') {
18293    -1       _typeof = function _typeof(obj) {
18294    -1         return typeof obj;
18295    -1       };
18296    -1     } else {
18297    -1       _typeof = function _typeof(obj) {
18298    -1         return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;
18299    -1       };
18300    -1     }
18301    -1     return _typeof(obj);
18302    -1   }
   -1 11866   var _typeof = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol' ? function(obj) {
   -1 11867     return typeof obj;
   -1 11868   } : function(obj) {
   -1 11869     return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;
   -1 11870   };
18303 11871   (function(exports) {
18304 11872     'use strict';
18305 11873     var messages = {}, subscribers = {}, errorTypes = Object.freeze([ 'EvalError', 'RangeError', 'ReferenceError', 'SyntaxError', 'TypeError', 'URIError' ]);
@@ -18315,7 +11883,7 @@ module.exports = {
18315 11883       return src;
18316 11884     }
18317 11885     function verify(postedMessage) {
18318    -1       if (_typeof(postedMessage) === 'object' && typeof postedMessage.uuid === 'string' && postedMessage._respondable === true) {
   -1 11886       if ((typeof postedMessage === 'undefined' ? 'undefined' : _typeof(postedMessage)) === 'object' && typeof postedMessage.uuid === 'string' && postedMessage._respondable === true) {
18319 11887         var messageSource = _getSource();
18320 11888         return postedMessage._source === messageSource || postedMessage._source === 'axeAPI.x.y.z' || messageSource === 'axeAPI.x.y.z';
18321 11889       }
@@ -18340,12 +11908,6 @@ module.exports = {
18340 11908         _source: _getSource(),
18341 11909         _keepalive: keepalive
18342 11910       };
18343    -1       var axeRespondables = axe._cache.get('axeRespondables');
18344    -1       if (!axeRespondables) {
18345    -1         axeRespondables = {};
18346    -1         axe._cache.set('axeRespondables', axeRespondables);
18347    -1       }
18348    -1       axeRespondables[uuid] = true;
18349 11911       if (typeof callback === 'function') {
18350 11912         messages[uuid] = callback;
18351 11913       }
@@ -18409,10 +11971,6 @@ module.exports = {
18409 11971           return;
18410 11972         }
18411 11973         var uuid = data.uuid;
18412    -1         var axeRespondables = axe._cache.get('axeRespondables') || {};
18413    -1         if (axeRespondables[uuid] && data.topic && e.source !== window) {
18414    -1           return;
18415    -1         }
18416 11974         var keepalive = data._keepalive;
18417 11975         var callback = messages[uuid];
18418 11976         if (callback) {
@@ -18427,7 +11985,7 @@ module.exports = {
18427 11985           try {
18428 11986             publish(e.source, data, keepalive);
18429 11987           } catch (err) {
18430    -1             post(e.source, null, err, uuid, false);
   -1 11988             post(e.source, data.topic, err, uuid, false);
18431 11989           }
18432 11990         }
18433 11991       }, false);
@@ -18481,17 +12039,29 @@ module.exports = {
18481 12039     }
18482 12040   };
18483 12041   'use strict';
   -1 12042   function getScroll(elm) {
   -1 12043     var style = window.getComputedStyle(elm);
   -1 12044     var visibleOverflowY = style.getPropertyValue('overflow-y') === 'visible';
   -1 12045     var visibleOverflowX = style.getPropertyValue('overflow-x') === 'visible';
   -1 12046     if (!visibleOverflowY && elm.scrollHeight > elm.clientHeight || !visibleOverflowX && elm.scrollWidth > elm.clientWidth) {
   -1 12047       return {
   -1 12048         elm: elm,
   -1 12049         top: elm.scrollTop,
   -1 12050         left: elm.scrollLeft
   -1 12051       };
   -1 12052     }
   -1 12053   }
18484 12054   function setScroll(elm, top, left) {
18485 12055     if (elm === window) {
18486    -1       return elm.scroll(left, top);
   -1 12056       return elm.scroll(top, left);
18487 12057     } else {
18488 12058       elm.scrollTop = top;
18489 12059       elm.scrollLeft = left;
18490 12060     }
18491 12061   }
18492 12062   function getElmScrollRecursive(root) {
18493    -1     return Array.from(root.children || root.childNodes || []).reduce(function(scrolls, elm) {
18494    -1       var scroll = axe.utils.getScroll(elm);
   -1 12063     return Array.from(root.children).reduce(function(scrolls, elm) {
   -1 12064       var scroll = getScroll(elm);
18495 12065       if (scroll) {
18496 12066         scrolls.push(scroll);
18497 12067       }
@@ -18561,7 +12131,7 @@ module.exports = {
18561 12131   }
18562 12132   function reduceIncludes(includes) {
18563 12133     return includes.reduce(function(res, el) {
18564    -1       if (!res.length || !axe.utils.contains(res[res.length - 1], el)) {
   -1 12134       if (!res.length || !res[res.length - 1].actualNode.contains(el.actualNode)) {
18565 12135         res.push(el);
18566 12136       }
18567 12137       return res;
@@ -18569,8 +12139,7 @@ module.exports = {
18569 12139   }
18570 12140   axe.utils.select = function select(selector, context) {
18571 12141     'use strict';
18572    -1     var result = [];
18573    -1     var candidate;
   -1 12142     var result = [], candidate;
18574 12143     if (axe._selectCache) {
18575 12144       for (var j = 0, l = axe._selectCache.length; j < l; j++) {
18576 12145         var item = axe._selectCache[j];
@@ -18587,6 +12156,9 @@ module.exports = {
18587 12156     var reducedIncludes = reduceIncludes(context.include);
18588 12157     for (var i = 0; i < reducedIncludes.length; i++) {
18589 12158       candidate = reducedIncludes[i];
   -1 12159       if (candidate.actualNode.nodeType === candidate.actualNode.ELEMENT_NODE && axe.utils.matchesSelector(candidate.actualNode, selector) && curried(candidate)) {
   -1 12160         result = pushNode(result, [ candidate ]);
   -1 12161       }
18590 12162       result = pushNode(result, axe.utils.querySelectorAllFilter(candidate, selector, curried));
18591 12163     }
18592 12164     if (axe._selectCache) {
@@ -18739,53 +12311,33 @@ module.exports = {
18739 12311     return langs;
18740 12312   };
18741 12313   'use strict';
18742    -1   function _toConsumableArray(arr) {
18743    -1     return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread();
18744    -1   }
18745    -1   function _nonIterableSpread() {
18746    -1     throw new TypeError('Invalid attempt to spread non-iterable instance');
18747    -1   }
18748    -1   function _iterableToArray(iter) {
18749    -1     if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === '[object Arguments]') {
18750    -1       return Array.from(iter);
   -1 12314   var _extends = Object.assign || function(target) {
   -1 12315     for (var i = 1; i < arguments.length; i++) {
   -1 12316       var source = arguments[i];
   -1 12317       for (var key in source) {
   -1 12318         if (Object.prototype.hasOwnProperty.call(source, key)) {
   -1 12319           target[key] = source[key];
   -1 12320         }
   -1 12321       }
18751 12322     }
18752    -1   }
18753    -1   function _arrayWithoutHoles(arr) {
   -1 12323     return target;
   -1 12324   };
   -1 12325   var _typeof = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol' ? function(obj) {
   -1 12326     return typeof obj;
   -1 12327   } : function(obj) {
   -1 12328     return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;
   -1 12329   };
   -1 12330   function _toConsumableArray(arr) {
18754 12331     if (Array.isArray(arr)) {
18755    -1       for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) {
   -1 12332       for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) {
18756 12333         arr2[i] = arr[i];
18757 12334       }
18758 12335       return arr2;
18759    -1     }
18760    -1   }
18761    -1   function _extends() {
18762    -1     _extends = Object.assign || function(target) {
18763    -1       for (var i = 1; i < arguments.length; i++) {
18764    -1         var source = arguments[i];
18765    -1         for (var key in source) {
18766    -1           if (Object.prototype.hasOwnProperty.call(source, key)) {
18767    -1             target[key] = source[key];
18768    -1           }
18769    -1         }
18770    -1       }
18771    -1       return target;
18772    -1     };
18773    -1     return _extends.apply(this, arguments);
18774    -1   }
18775    -1   function _typeof(obj) {
18776    -1     if (typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol') {
18777    -1       _typeof = function _typeof(obj) {
18778    -1         return typeof obj;
18779    -1       };
18780 12336     } else {
18781    -1       _typeof = function _typeof(obj) {
18782    -1         return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;
18783    -1       };
   -1 12337       return Array.from(arr);
18784 12338     }
18785    -1     return _typeof(obj);
18786 12339   }
18787 12340   axe._load({
18788    -1     lang: 'en',
18789 12341     data: {
18790 12342       rules: {
18791 12343         accesskeys: {
@@ -18816,10 +12368,6 @@ module.exports = {
18816 12368           description: 'Ensures aria-hidden elements do not contain focusable elements',
18817 12369           help: 'ARIA hidden element must not contain focusable elements'
18818 12370         },
18819    -1         'aria-input-field-name': {
18820    -1           description: 'Ensures every ARIA input field has an accessible name',
18821    -1           help: 'ARIA input fields have an accessible name'
18822    -1         },
18823 12371         'aria-required-attr': {
18824 12372           description: 'Ensures elements with ARIA roles have all required ARIA attributes',
18825 12373           help: 'Required ARIA attributes must be provided'
@@ -18832,18 +12380,10 @@ module.exports = {
18832 12380           description: 'Ensures elements with an ARIA role that require parent roles are contained by them',
18833 12381           help: 'Certain ARIA roles must be contained by particular parents'
18834 12382         },
18835    -1         'aria-roledescription': {
18836    -1           description: 'Ensure aria-roledescription is only used on elements with an implicit or explicit role',
18837    -1           help: 'Use aria-roledescription on elements with a semantic role'
18838    -1         },
18839 12383         'aria-roles': {
18840 12384           description: 'Ensures all elements with a role attribute use a valid value',
18841 12385           help: 'ARIA roles used must conform to valid values'
18842 12386         },
18843    -1         'aria-toggle-field-name': {
18844    -1           description: 'Ensures every ARIA toggle field has an accessible name',
18845    -1           help: 'ARIA toggle fields have an accessible name'
18846    -1         },
18847 12387         'aria-valid-attr-value': {
18848 12388           description: 'Ensures all ARIA attributes have valid values',
18849 12389           help: 'ARIA attributes must conform to valid values'
@@ -18860,10 +12400,6 @@ module.exports = {
18860 12400           description: 'Ensure the autocomplete attribute is correct and suitable for the form field',
18861 12401           help: 'autocomplete attribute must be used correctly'
18862 12402         },
18863    -1         'avoid-inline-spacing': {
18864    -1           description: 'Ensure that text spacing set through style attributes can be adjusted with custom stylesheets',
18865    -1           help: 'Inline text spacing must be adjustable with custom stylesheets'
18866    -1         },
18867 12403         blink: {
18868 12404           description: 'Ensures <blink> elements are not used',
18869 12405           help: '<blink> elements are deprecated and must not be used'
@@ -18922,7 +12458,7 @@ module.exports = {
18922 12458         },
18923 12459         'form-field-multiple-labels': {
18924 12460           description: 'Ensures form field does not have multiple label elements',
18925    -1           help: 'Form field should not have multiple label elements'
   -1 12461           help: 'Form field must not have multiple label elements'
18926 12462         },
18927 12463         'frame-tested': {
18928 12464           description: 'Ensures <iframe> and <frame> elements contain the axe-core script',
@@ -18961,12 +12497,8 @@ module.exports = {
18961 12497           help: 'Images must have alternate text'
18962 12498         },
18963 12499         'image-redundant-alt': {
18964    -1           description: 'Ensure image alternative is not repeated as text',
18965    -1           help: 'Alternative text of images should not be repeated as text'
18966    -1         },
18967    -1         'input-button-name': {
18968    -1           description: 'Ensures input buttons have discernible text',
18969    -1           help: 'Input buttons must have discernible text'
   -1 12500           description: 'Ensure button and link text is not repeated as image alternative',
   -1 12501           help: 'Text of buttons and links should not be repeated in the image alternative'
18970 12502         },
18971 12503         'input-image-alt': {
18972 12504           description: 'Ensures <input type="image"> elements have alternate text',
@@ -19012,10 +12544,6 @@ module.exports = {
19012 12544           description: 'Ensures the document has only one main landmark and each iframe in the page has at most one main landmark',
19013 12545           help: 'Document must have one main landmark'
19014 12546         },
19015    -1         'landmark-unique': {
19016    -1           help: 'Ensures landmarks are unique',
19017    -1           description: 'Landmarks must have a unique role or role/label/title (i.e. accessible name) combination'
19018    -1         },
19019 12547         'layout-table': {
19020 12548           description: 'Ensures presentational <table> elements do not use <th>, <caption> elements or the summary attribute',
19021 12549           help: 'Layout tables must not use data table elements'
@@ -19072,18 +12600,10 @@ module.exports = {
19072 12600           description: 'Ensures all page content is contained by landmarks',
19073 12601           help: 'All page content must be contained by landmarks'
19074 12602         },
19075    -1         'role-img-alt': {
19076    -1           description: 'Ensures [role=\'img\'] elements have alternate text',
19077    -1           help: '[role=\'img\'] elements have an alternative text'
19078    -1         },
19079 12603         'scope-attr-valid': {
19080 12604           description: 'Ensures the scope attribute is used correctly on tables',
19081 12605           help: 'scope attribute should be used correctly'
19082 12606         },
19083    -1         'scrollable-region-focusable': {
19084    -1           description: 'Elements that have scrollable content should be accessible by keyboard',
19085    -1           help: 'Ensure that scrollable region has keyboard access'
19086    -1         },
19087 12607         'server-side-image-map': {
19088 12608           description: 'Ensures that server-side image maps are not used',
19089 12609           help: 'Server-side image maps must not be used'
@@ -19306,19 +12826,6 @@ module.exports = {
19306 12826             }
19307 12827           }
19308 12828         },
19309    -1         'no-implicit-explicit-label': {
19310    -1           impact: 'moderate',
19311    -1           messages: {
19312    -1             pass: function anonymous(it) {
19313    -1               var out = 'There is no mismatch between a <label> and accessible name';
19314    -1               return out;
19315    -1             },
19316    -1             incomplete: function anonymous(it) {
19317    -1               var out = 'Check that the <label> does not need be part of the ARIA ' + it.data + ' field\'s name';
19318    -1               return out;
19319    -1             }
19320    -1           }
19321    -1         },
19322 12829         'aria-required-attr': {
19323 12830           impact: 'critical',
19324 12831           messages: {
@@ -19394,23 +12901,6 @@ module.exports = {
19394 12901             }
19395 12902           }
19396 12903         },
19397    -1         'aria-roledescription': {
19398    -1           impact: 'serious',
19399    -1           messages: {
19400    -1             pass: function anonymous(it) {
19401    -1               var out = 'aria-roledescription used on a supported semantic role';
19402    -1               return out;
19403    -1             },
19404    -1             incomplete: function anonymous(it) {
19405    -1               var out = 'Check that the aria-roledescription is announced by supported screen readers';
19406    -1               return out;
19407    -1             },
19408    -1             fail: function anonymous(it) {
19409    -1               var out = 'Give the element a role that supports aria-roledescription';
19410    -1               return out;
19411    -1             }
19412    -1           }
19413    -1         },
19414 12904         invalidrole: {
19415 12905           impact: 'critical',
19416 12906           messages: {
@@ -19458,19 +12948,6 @@ module.exports = {
19458 12948             }
19459 12949           }
19460 12950         },
19461    -1         'has-visible-text': {
19462    -1           impact: 'minor',
19463    -1           messages: {
19464    -1             pass: function anonymous(it) {
19465    -1               var out = 'Element has text that is visible to screen readers';
19466    -1               return out;
19467    -1             },
19468    -1             fail: function anonymous(it) {
19469    -1               var out = 'Element does not have text that is visible to screen readers';
19470    -1               return out;
19471    -1             }
19472    -1           }
19473    -1         },
19474 12951         'aria-valid-attr-value': {
19475 12952           impact: 'critical',
19476 12953           messages: {
@@ -19489,18 +12966,6 @@ module.exports = {
19489 12966                 }
19490 12967               }
19491 12968               return out;
19492    -1             },
19493    -1             incomplete: function anonymous(it) {
19494    -1               var out = 'ARIA attribute' + (it.data && it.data.length > 1 ? 's' : '') + ' element ID does not exist on the page:';
19495    -1               var arr1 = it.data;
19496    -1               if (arr1) {
19497    -1                 var value, i1 = -1, l1 = arr1.length - 1;
19498    -1                 while (i1 < l1) {
19499    -1                   value = arr1[i1 += 1];
19500    -1                   out += ' ' + value;
19501    -1                 }
19502    -1               }
19503    -1               return out;
19504 12969             }
19505 12970           }
19506 12971         },
@@ -19586,28 +13051,46 @@ module.exports = {
19586 13051             }
19587 13052           }
19588 13053         },
19589    -1         'avoid-inline-spacing': {
   -1 13054         'is-on-screen': {
19590 13055           impact: 'serious',
19591 13056           messages: {
19592 13057             pass: function anonymous(it) {
19593    -1               var out = 'No inline styles with \'!important\' that affect text spacing has been specified';
   -1 13058               var out = 'Element is not visible';
   -1 13059               return out;
   -1 13060             },
   -1 13061             fail: function anonymous(it) {
   -1 13062               var out = 'Element is visible';
   -1 13063               return out;
   -1 13064             }
   -1 13065           }
   -1 13066         },
   -1 13067         'non-empty-if-present': {
   -1 13068           impact: 'critical',
   -1 13069           messages: {
   -1 13070             pass: function anonymous(it) {
   -1 13071               var out = 'Element ';
   -1 13072               if (it.data) {
   -1 13073                 out += 'has a non-empty value attribute';
   -1 13074               } else {
   -1 13075                 out += 'does not have a value attribute';
   -1 13076               }
19594 13077               return out;
19595 13078             },
19596 13079             fail: function anonymous(it) {
19597    -1               var out = 'Remove \'!important\' from inline style' + (it.data && it.data.length > 1 ? 's' : '') + ' ' + it.data.join(', ') + ', as overriding this is not supported by most browsers';
   -1 13080               var out = 'Element has a value attribute and the value attribute is empty';
19598 13081               return out;
19599 13082             }
19600 13083           }
19601 13084         },
19602    -1         'is-on-screen': {
19603    -1           impact: 'serious',
   -1 13085         'non-empty-value': {
   -1 13086           impact: 'critical',
19604 13087           messages: {
19605 13088             pass: function anonymous(it) {
19606    -1               var out = 'Element is not visible';
   -1 13089               var out = 'Element has a non-empty value attribute';
19607 13090               return out;
19608 13091             },
19609 13092             fail: function anonymous(it) {
19610    -1               var out = 'Element is visible';
   -1 13093               var out = 'Element has no value attribute or the value attribute is empty';
19611 13094               return out;
19612 13095             }
19613 13096           }
@@ -19651,6 +13134,19 @@ module.exports = {
19651 13134             }
19652 13135           }
19653 13136         },
   -1 13137         'focusable-no-name': {
   -1 13138           impact: 'serious',
   -1 13139           messages: {
   -1 13140             pass: function anonymous(it) {
   -1 13141               var out = 'Element is not in tab order or has accessible text';
   -1 13142               return out;
   -1 13143             },
   -1 13144             fail: function anonymous(it) {
   -1 13145               var out = 'Element is in tab order and does not have accessible text';
   -1 13146               return out;
   -1 13147             }
   -1 13148           }
   -1 13149         },
19654 13150         'internal-link-present': {
19655 13151           impact: 'serious',
19656 13152           messages: {
@@ -19874,6 +13370,19 @@ module.exports = {
19874 13370             }
19875 13371           }
19876 13372         },
   -1 13373         'has-visible-text': {
   -1 13374           impact: 'minor',
   -1 13375           messages: {
   -1 13376             pass: function anonymous(it) {
   -1 13377               var out = 'Element has text that is visible to screen readers';
   -1 13378               return out;
   -1 13379             },
   -1 13380             fail: function anonymous(it) {
   -1 13381               var out = 'Element does not have text that is visible to screen readers';
   -1 13382               return out;
   -1 13383             }
   -1 13384           }
   -1 13385         },
19877 13386         'has-widget-role': {
19878 13387           impact: 'minor',
19879 13388           messages: {
@@ -19907,8 +13416,8 @@ module.exports = {
19907 13416               var out = 'Form field does not have multiple label elements';
19908 13417               return out;
19909 13418             },
19910    -1             incomplete: function anonymous(it) {
19911    -1               var out = 'Multiple label elements is not widely supported in assistive technologies. Ensure the first label contains all necessary information.';
   -1 13419             fail: function anonymous(it) {
   -1 13420               var out = 'Multiple label elements is not widely supported in assistive technologies';
19912 13421               return out;
19913 13422             }
19914 13423           }
@@ -20051,37 +13560,6 @@ module.exports = {
20051 13560             }
20052 13561           }
20053 13562         },
20054    -1         'non-empty-if-present': {
20055    -1           impact: 'critical',
20056    -1           messages: {
20057    -1             pass: function anonymous(it) {
20058    -1               var out = 'Element ';
20059    -1               if (it.data) {
20060    -1                 out += 'has a non-empty value attribute';
20061    -1               } else {
20062    -1                 out += 'does not have a value attribute';
20063    -1               }
20064    -1               return out;
20065    -1             },
20066    -1             fail: function anonymous(it) {
20067    -1               var out = 'Element has a value attribute and the value attribute is empty';
20068    -1               return out;
20069    -1             }
20070    -1           }
20071    -1         },
20072    -1         'non-empty-value': {
20073    -1           impact: 'critical',
20074    -1           messages: {
20075    -1             pass: function anonymous(it) {
20076    -1               var out = 'Element has a non-empty value attribute';
20077    -1               return out;
20078    -1             },
20079    -1             fail: function anonymous(it) {
20080    -1               var out = 'Element has no value attribute or the value attribute is empty';
20081    -1               return out;
20082    -1             }
20083    -1           }
20084    -1         },
20085 13563         'label-content-name-mismatch': {
20086 13564           impact: 'serious',
20087 13565           messages: {
@@ -20225,19 +13703,6 @@ module.exports = {
20225 13703             }
20226 13704           }
20227 13705         },
20228    -1         'landmark-is-unique': {
20229    -1           impact: 'moderate',
20230    -1           messages: {
20231    -1             pass: function anonymous(it) {
20232    -1               var out = 'Landmarks must have a unique role or role/label/title (i.e. accessible name) combination';
20233    -1               return out;
20234    -1             },
20235    -1             fail: function anonymous(it) {
20236    -1               var out = 'The landmark must have a unique aria-label, aria-labelledby, or title to make landmarks distinguishable';
20237    -1               return out;
20238    -1             }
20239    -1           }
20240    -1         },
20241 13706         'has-th': {
20242 13707           impact: 'serious',
20243 13708           messages: {
@@ -20298,19 +13763,6 @@ module.exports = {
20298 13763             }
20299 13764           }
20300 13765         },
20301    -1         'focusable-no-name': {
20302    -1           impact: 'serious',
20303    -1           messages: {
20304    -1             pass: function anonymous(it) {
20305    -1               var out = 'Element is not in tab order or has accessible text';
20306    -1               return out;
20307    -1             },
20308    -1             fail: function anonymous(it) {
20309    -1               var out = 'Element is in tab order and does not have accessible text';
20310    -1               return out;
20311    -1             }
20312    -1           }
20313    -1         },
20314 13766         'only-listitems': {
20315 13767           impact: 'serious',
20316 13768           messages: {
@@ -20332,11 +13784,7 @@ module.exports = {
20332 13784               return out;
20333 13785             },
20334 13786             fail: function anonymous(it) {
20335    -1               var out = 'List item does not have a <ul>, <ol>';
20336    -1               if (it.data === 'roleNotValid') {
20337    -1                 out += ' without a role, or a role="list"';
20338    -1               }
20339    -1               out += ' parent element';
   -1 13787               var out = 'List item does not have a <ul>, <ol> or role="list" parent element';
20340 13788               return out;
20341 13789             }
20342 13790           }
@@ -20445,32 +13893,6 @@ module.exports = {
20445 13893             }
20446 13894           }
20447 13895         },
20448    -1         'focusable-content': {
20449    -1           impact: 'moderate',
20450    -1           messages: {
20451    -1             pass: function anonymous(it) {
20452    -1               var out = 'Element contains focusable elements';
20453    -1               return out;
20454    -1             },
20455    -1             fail: function anonymous(it) {
20456    -1               var out = 'Element should have focusable content';
20457    -1               return out;
20458    -1             }
20459    -1           }
20460    -1         },
20461    -1         'focusable-element': {
20462    -1           impact: 'moderate',
20463    -1           messages: {
20464    -1             pass: function anonymous(it) {
20465    -1               var out = 'Element is focusable';
20466    -1               return out;
20467    -1             },
20468    -1             fail: function anonymous(it) {
20469    -1               var out = 'Element should be focusable';
20470    -1               return out;
20471    -1             }
20472    -1           }
20473    -1         },
20474 13896         exists: {
20475 13897           impact: 'minor',
20476 13898           messages: {
@@ -20478,7 +13900,7 @@ module.exports = {
20478 13900               var out = 'Element does not exist';
20479 13901               return out;
20480 13902             },
20481    -1             incomplete: function anonymous(it) {
   -1 13903             fail: function anonymous(it) {
20482 13904               var out = 'Element exists';
20483 13905               return out;
20484 13906             }
@@ -20535,7 +13957,7 @@ module.exports = {
20535 13957               return out;
20536 13958             },
20537 13959             fail: function anonymous(it) {
20538    -1               var out = 'The first child of the table should be a caption instead of a table cell';
   -1 13960               var out = 'The first row of the table should be a caption instead of a table cell';
20539 13961               return out;
20540 13962             }
20541 13963           }
@@ -20628,7 +14050,7 @@ module.exports = {
20628 14050         }
20629 14051       },
20630 14052       incompleteFallbackMessage: function anonymous(it) {
20631    -1         var out = 'axe couldn\'t tell the reason. Time to break out the element inspector!';
   -1 14053         var out = 'aXe couldn\'t tell the reason. Time to break out the element inspector!';
20632 14054         return out;
20633 14055       }
20634 14056     },
@@ -20653,7 +14075,7 @@ module.exports = {
20653 14075       matches: function matches(node, virtualNode, context) {
20654 14076         var aria = /^aria-/;
20655 14077         if (node.hasAttributes()) {
20656    -1           var attrs = axe.utils.getNodeAttributes(node);
   -1 14078           var attrs = node.attributes;
20657 14079           for (var i = 0, l = attrs.length; i < l; i++) {
20658 14080             if (aria.test(attrs[i].name)) {
20659 14081               return true;
@@ -20723,41 +14145,11 @@ module.exports = {
20723 14145         return shouldMatchElement(getComposedParent(node));
20724 14146       },
20725 14147       excludeHidden: false,
20726    -1       tags: [ 'cat.name-role-value', 'wcag2a', 'wcag412', 'wcag131' ],
   -1 14148       tags: [ 'cat.name-role-value', 'wcag2a', 'wcag412' ],
20727 14149       all: [ 'focusable-disabled', 'focusable-not-tabbable' ],
20728 14150       any: [],
20729 14151       none: []
20730 14152     }, {
20731    -1       id: 'aria-input-field-name',
20732    -1       selector: '[role="combobox"], [role="listbox"], [role="searchbox"], [role="slider"], [role="spinbutton"], [role="textbox"]',
20733    -1       matches: function matches(node, virtualNode, context) {
20734    -1         var aria = axe.commons.aria;
20735    -1         var nodeName = node.nodeName.toUpperCase();
20736    -1         var role = aria.getRole(node, {
20737    -1           noImplicit: true
20738    -1         });
20739    -1         if (nodeName === 'AREA' && !!node.getAttribute('href')) {
20740    -1           return false;
20741    -1         }
20742    -1         if ([ 'INPUT', 'SELECT', 'TEXTAREA' ].includes(nodeName)) {
20743    -1           return false;
20744    -1         }
20745    -1         if (nodeName === 'IMG' || role === 'img' && nodeName !== 'SVG') {
20746    -1           return false;
20747    -1         }
20748    -1         if (nodeName === 'BUTTON' || role === 'button') {
20749    -1           return false;
20750    -1         }
20751    -1         if (role === 'combobox' && axe.utils.querySelectorAll(virtualNode, 'input:not([type="hidden"])').length) {
20752    -1           return false;
20753    -1         }
20754    -1         return true;
20755    -1       },
20756    -1       tags: [ 'wcag2a', 'wcag412' ],
20757    -1       all: [],
20758    -1       any: [ 'aria-label', 'aria-labelledby', 'non-empty-title' ],
20759    -1       none: [ 'no-implicit-explicit-label' ]
20760    -1     }, {
20761 14153       id: 'aria-required-attr',
20762 14154       selector: '[role]',
20763 14155       tags: [ 'cat.aria', 'wcag2a', 'wcag412' ],
@@ -20771,7 +14163,7 @@ module.exports = {
20771 14163       all: [],
20772 14164       any: [ {
20773 14165         options: {
20774    -1           reviewEmpty: [ 'doc-bibliography', 'doc-endnotes', 'grid', 'list', 'listbox', 'table', 'tablist', 'tree', 'treegrid', 'rowgroup' ]
   -1 14166           reviewEmpty: [ 'listbox' ]
20775 14167         },
20776 14168         id: 'aria-required-children'
20777 14169       } ],
@@ -20784,18 +14176,6 @@ module.exports = {
20784 14176       any: [ 'aria-required-parent' ],
20785 14177       none: []
20786 14178     }, {
20787    -1       id: 'aria-roledescription',
20788    -1       selector: '[aria-roledescription]',
20789    -1       tags: [ 'cat.aria', 'wcag2a', 'wcag412' ],
20790    -1       all: [],
20791    -1       any: [ {
20792    -1         options: {
20793    -1           supportedRoles: [ 'button', 'img', 'checkbox', 'radio', 'combobox', 'menuitemcheckbox', 'menuitemradio' ]
20794    -1         },
20795    -1         id: 'aria-roledescription'
20796    -1       } ],
20797    -1       none: []
20798    -1     }, {
20799 14179       id: 'aria-roles',
20800 14180       selector: '[role]',
20801 14181       tags: [ 'cat.aria', 'wcag2a', 'wcag412' ],
@@ -20803,41 +14183,11 @@ module.exports = {
20803 14183       any: [],
20804 14184       none: [ 'invalidrole', 'abstractrole', 'unsupportedrole' ]
20805 14185     }, {
20806    -1       id: 'aria-toggle-field-name',
20807    -1       selector: '[role="checkbox"], [role="menuitemcheckbox"], [role="menuitemradio"], [role="radio"], [role="switch"]',
20808    -1       matches: function matches(node, virtualNode, context) {
20809    -1         var aria = axe.commons.aria;
20810    -1         var nodeName = node.nodeName.toUpperCase();
20811    -1         var role = aria.getRole(node, {
20812    -1           noImplicit: true
20813    -1         });
20814    -1         if (nodeName === 'AREA' && !!node.getAttribute('href')) {
20815    -1           return false;
20816    -1         }
20817    -1         if ([ 'INPUT', 'SELECT', 'TEXTAREA' ].includes(nodeName)) {
20818    -1           return false;
20819    -1         }
20820    -1         if (nodeName === 'IMG' || role === 'img' && nodeName !== 'SVG') {
20821    -1           return false;
20822    -1         }
20823    -1         if (nodeName === 'BUTTON' || role === 'button') {
20824    -1           return false;
20825    -1         }
20826    -1         if (role === 'combobox' && axe.utils.querySelectorAll(virtualNode, 'input:not([type="hidden"])').length) {
20827    -1           return false;
20828    -1         }
20829    -1         return true;
20830    -1       },
20831    -1       tags: [ 'wcag2a', 'wcag412' ],
20832    -1       all: [],
20833    -1       any: [ 'aria-label', 'aria-labelledby', 'non-empty-title', 'has-visible-text' ],
20834    -1       none: [ 'no-implicit-explicit-label' ]
20835    -1     }, {
20836 14186       id: 'aria-valid-attr-value',
20837 14187       matches: function matches(node, virtualNode, context) {
20838 14188         var aria = /^aria-/;
20839 14189         if (node.hasAttributes()) {
20840    -1           var attrs = axe.utils.getNodeAttributes(node);
   -1 14190           var attrs = node.attributes;
20841 14191           for (var i = 0, l = attrs.length; i < l; i++) {
20842 14192             if (aria.test(attrs[i].name)) {
20843 14193               return true;
@@ -20858,7 +14208,7 @@ module.exports = {
20858 14208       matches: function matches(node, virtualNode, context) {
20859 14209         var aria = /^aria-/;
20860 14210         if (node.hasAttributes()) {
20861    -1           var attrs = axe.utils.getNodeAttributes(node);
   -1 14211           var attrs = node.attributes;
20862 14212           for (var i = 0, l = attrs.length; i < l; i++) {
20863 14213             if (aria.test(attrs[i].name)) {
20864 14214               return true;
@@ -20887,31 +14237,31 @@ module.exports = {
20887 14237       id: 'autocomplete-valid',
20888 14238       matches: function matches(node, virtualNode, context) {
20889 14239         var _axe$commons = axe.commons, text = _axe$commons.text, aria = _axe$commons.aria, dom = _axe$commons.dom;
20890    -1         var autocomplete = virtualNode.attr('autocomplete');
   -1 14240         var autocomplete = node.getAttribute('autocomplete');
20891 14241         if (!autocomplete || text.sanitize(autocomplete) === '') {
20892 14242           return false;
20893 14243         }
20894    -1         var nodeName = virtualNode.props.nodeName;
20895    -1         if ([ 'textarea', 'input', 'select' ].includes(nodeName) === false) {
   -1 14244         var nodeName = node.nodeName.toUpperCase();
   -1 14245         if ([ 'TEXTAREA', 'INPUT', 'SELECT' ].includes(nodeName) === false) {
20896 14246           return false;
20897 14247         }
20898 14248         var excludedInputTypes = [ 'submit', 'reset', 'button', 'hidden' ];
20899    -1         if (nodeName === 'input' && excludedInputTypes.includes(virtualNode.props.type)) {
   -1 14249         if (nodeName === 'INPUT' && excludedInputTypes.includes(node.type)) {
20900 14250           return false;
20901 14251         }
20902    -1         var ariaDisabled = virtualNode.attr('aria-disabled') || 'false';
20903    -1         if (virtualNode.hasAttr('disabled') || ariaDisabled.toLowerCase() === 'true') {
   -1 14252         var ariaDisabled = node.getAttribute('aria-disabled') || 'false';
   -1 14253         if (node.disabled || ariaDisabled.toLowerCase() === 'true') {
20904 14254           return false;
20905 14255         }
20906    -1         var role = virtualNode.attr('role');
20907    -1         var tabIndex = virtualNode.attr('tabindex');
   -1 14256         var role = node.getAttribute('role');
   -1 14257         var tabIndex = node.getAttribute('tabindex');
20908 14258         if (tabIndex === '-1' && role) {
20909 14259           var roleDef = aria.lookupTable.role[role];
20910 14260           if (roleDef === undefined || roleDef.type !== 'widget') {
20911 14261             return false;
20912 14262           }
20913 14263         }
20914    -1         if (tabIndex === '-1' && virtualNode.actualNode && !dom.isVisible(virtualNode.actualNode, false) && !dom.isVisible(virtualNode.actualNode, true)) {
   -1 14264         if (tabIndex === '-1' && !dom.isVisible(node, false) && !dom.isVisible(node, true)) {
20915 14265           return false;
20916 14266         }
20917 14267         return true;
@@ -20921,13 +14271,6 @@ module.exports = {
20921 14271       any: [],
20922 14272       none: []
20923 14273     }, {
20924    -1       id: 'avoid-inline-spacing',
20925    -1       selector: '[style]',
20926    -1       tags: [ 'wcag21aa', 'wcag1412' ],
20927    -1       all: [ 'avoid-inline-spacing' ],
20928    -1       any: [],
20929    -1       none: []
20930    -1     }, {
20931 14274       id: 'blink',
20932 14275       selector: 'blink',
20933 14276       excludeHidden: false,
@@ -20937,11 +14280,11 @@ module.exports = {
20937 14280       none: [ 'is-on-screen' ]
20938 14281     }, {
20939 14282       id: 'button-name',
20940    -1       selector: 'button, [role="button"]:not(input)',
   -1 14283       selector: 'button, [role="button"], input[type="button"], input[type="submit"], input[type="reset"]',
20941 14284       tags: [ 'cat.name-role-value', 'wcag2a', 'wcag412', 'section508', 'section508.22.a' ],
20942 14285       all: [],
20943    -1       any: [ 'button-has-visible-text', 'aria-label', 'aria-labelledby', 'role-presentation', 'role-none', 'non-empty-title' ],
20944    -1       none: []
   -1 14286       any: [ 'non-empty-if-present', 'non-empty-value', 'button-has-visible-text', 'aria-label', 'aria-labelledby', 'role-presentation', 'role-none', 'non-empty-title' ],
   -1 14287       none: [ 'focusable-no-name' ]
20945 14288     }, {
20946 14289       id: 'bypass',
20947 14290       selector: 'html',
@@ -20956,16 +14299,14 @@ module.exports = {
20956 14299     }, {
20957 14300       id: 'checkboxgroup',
20958 14301       selector: 'input[type=checkbox][name]',
20959    -1       tags: [ 'cat.forms', 'best-practice', 'deprecated' ],
20960    -1       enabled: false,
   -1 14302       tags: [ 'cat.forms', 'best-practice' ],
20961 14303       all: [],
20962 14304       any: [ 'group-labelledby', 'fieldset' ],
20963 14305       none: []
20964 14306     }, {
20965 14307       id: 'color-contrast',
20966 14308       matches: function matches(node, virtualNode, context) {
20967    -1         var nodeName = node.nodeName.toUpperCase();
20968    -1         var nodeType = node.type;
   -1 14309         var nodeName = node.nodeName.toUpperCase(), nodeType = node.type;
20969 14310         if (node.getAttribute('aria-disabled') === 'true' || axe.commons.dom.findUpVirtual(virtualNode, '[aria-disabled="true"]')) {
20970 14311           return false;
20971 14312         }
@@ -20993,15 +14334,14 @@ module.exports = {
20993 14334           var relevantVirtualNode = virtualNode;
20994 14335           if (nodeParentLabel) {
20995 14336             relevantNode = nodeParentLabel;
20996    -1             relevantVirtualNode = axe.utils.getNodeFromTree(nodeParentLabel);
   -1 14337             relevantVirtualNode = axe.utils.getNodeFromTree(axe._tree[0], nodeParentLabel);
20997 14338           }
20998 14339           var doc = axe.commons.dom.getRootNode(relevantNode);
20999 14340           var candidate = relevantNode.htmlFor && doc.getElementById(relevantNode.htmlFor);
21000    -1           var candidateVirtualNode = axe.utils.getNodeFromTree(candidate);
21001    -1           if (candidate && (candidate.disabled || candidate.getAttribute('aria-disabled') === 'true' || axe.commons.dom.findUpVirtual(candidateVirtualNode, '[aria-disabled="true"]'))) {
   -1 14341           if (candidate && candidate.disabled) {
21002 14342             return false;
21003 14343           }
21004    -1           candidate = axe.utils.querySelectorAll(relevantVirtualNode, 'input:not([type="hidden"]):not([type="image"])' + ':not([type="button"]):not([type="submit"]):not([type="reset"]), select, textarea');
   -1 14344           var candidate = axe.utils.querySelectorAll(relevantVirtualNode, 'input:not([type="hidden"]):not([type="image"])' + ':not([type="button"]):not([type="submit"]):not([type="reset"]), select, textarea');
21005 14345           if (candidate.length && candidate[0].actualNode.disabled) {
21006 14346             return false;
21007 14347           }
@@ -21009,24 +14349,15 @@ module.exports = {
21009 14349         if (node.getAttribute('id')) {
21010 14350           var id = axe.utils.escapeSelector(node.getAttribute('id'));
21011 14351           var _doc = axe.commons.dom.getRootNode(node);
21012    -1           var _candidate = _doc.querySelector('[aria-labelledby~=' + id + ']');
21013    -1           if (_candidate && _candidate.disabled) {
   -1 14352           var candidate = _doc.querySelector('[aria-labelledby~=' + id + ']');
   -1 14353           if (candidate && candidate.disabled) {
21014 14354             return false;
21015 14355           }
21016 14356         }
21017    -1         var visibleText = axe.commons.text.visibleVirtual(virtualNode, false, true);
21018    -1         if (visibleText === '' || axe.commons.text.removeUnicode(visibleText, {
21019    -1           emoji: true,
21020    -1           nonBmp: true,
21021    -1           punctuations: true
21022    -1         }) === '') {
   -1 14357         if (axe.commons.text.visibleVirtual(virtualNode, false, true) === '') {
21023 14358           return false;
21024 14359         }
21025    -1         var range = document.createRange();
21026    -1         var childNodes = virtualNode.children;
21027    -1         var length = childNodes.length;
21028    -1         var child = null;
21029    -1         var index = 0;
   -1 14360         var range = document.createRange(), childNodes = virtualNode.children, length = childNodes.length, child, index;
21030 14361         for (index = 0; index < length; index++) {
21031 14362           child = childNodes[index];
21032 14363           if (child.actualNode.nodeType === 3 && axe.commons.text.sanitize(child.actualNode.nodeValue) !== '') {
@@ -21094,9 +14425,9 @@ module.exports = {
21094 14425       matches: function matches(node, virtualNode, context) {
21095 14426         var _axe$commons2 = axe.commons, dom = _axe$commons2.dom, aria = _axe$commons2.aria;
21096 14427         var id = node.getAttribute('id').trim();
21097    -1         var idSelector = '*[id="'.concat(axe.utils.escapeSelector(id), '"]');
   -1 14428         var idSelector = '*[id="' + axe.utils.escapeSelector(id) + '"]';
21098 14429         var idMatchingElms = Array.from(dom.getRootNode(node).querySelectorAll(idSelector));
21099    -1         return !aria.isAccessibleRef(node) && idMatchingElms.some(dom.isFocusable);
   -1 14430         return idMatchingElms.some(dom.isFocusable) && !aria.isAccessibleRef(node);
21100 14431       },
21101 14432       excludeHidden: false,
21102 14433       tags: [ 'cat.parsing', 'wcag2a', 'wcag411' ],
@@ -21120,11 +14451,11 @@ module.exports = {
21120 14451       matches: function matches(node, virtualNode, context) {
21121 14452         var _axe$commons3 = axe.commons, dom = _axe$commons3.dom, aria = _axe$commons3.aria;
21122 14453         var id = node.getAttribute('id').trim();
21123    -1         var idSelector = '*[id="'.concat(axe.utils.escapeSelector(id), '"]');
   -1 14454         var idSelector = '*[id="' + axe.utils.escapeSelector(id) + '"]';
21124 14455         var idMatchingElms = Array.from(dom.getRootNode(node).querySelectorAll(idSelector));
21125    -1         return !aria.isAccessibleRef(node) && idMatchingElms.every(function(elm) {
   -1 14456         return idMatchingElms.every(function(elm) {
21126 14457           return !dom.isFocusable(elm);
21127    -1         });
   -1 14458         }) && !aria.isAccessibleRef(node);
21128 14459       },
21129 14460       excludeHidden: false,
21130 14461       tags: [ 'cat.parsing', 'wcag2a', 'wcag411' ],
@@ -21135,7 +14466,7 @@ module.exports = {
21135 14466       id: 'empty-heading',
21136 14467       selector: 'h1, h2, h3, h4, h5, h6, [role="heading"]',
21137 14468       matches: function matches(node, virtualNode, context) {
21138    -1         var explicitRoles;
   -1 14469         var explicitRoles = void 0;
21139 14470         if (node.hasAttribute('role')) {
21140 14471           explicitRoles = node.getAttribute('role').split(/\s+/i).filter(axe.commons.aria.isValidRole);
21141 14472         }
@@ -21213,7 +14544,7 @@ module.exports = {
21213 14544       id: 'heading-order',
21214 14545       selector: 'h1, h2, h3, h4, h5, h6, [role=heading]',
21215 14546       matches: function matches(node, virtualNode, context) {
21216    -1         var explicitRoles;
   -1 14547         var explicitRoles = void 0;
21217 14548         if (node.hasAttribute('role')) {
21218 14549           explicitRoles = node.getAttribute('role').split(/\s+/i).filter(axe.commons.aria.isValidRole);
21219 14550         }
@@ -21238,9 +14569,6 @@ module.exports = {
21238 14569     }, {
21239 14570       id: 'html-has-lang',
21240 14571       selector: 'html',
21241    -1       matches: function matches(node, virtualNode, context) {
21242    -1         return node.ownerDocument.defaultView.self === node.ownerDocument.defaultView.top;
21243    -1       },
21244 14572       tags: [ 'cat.language', 'wcag2a', 'wcag311' ],
21245 14573       all: [],
21246 14574       any: [ 'has-lang' ],
@@ -21267,26 +14595,19 @@ module.exports = {
21267 14595       none: []
21268 14596     }, {
21269 14597       id: 'image-alt',
21270    -1       selector: 'img',
   -1 14598       selector: 'img, [role=\'img\']:not(svg)',
21271 14599       tags: [ 'cat.text-alternatives', 'wcag2a', 'wcag111', 'section508', 'section508.22.a' ],
21272 14600       all: [],
21273 14601       any: [ 'has-alt', 'aria-label', 'aria-labelledby', 'non-empty-title', 'role-presentation', 'role-none' ],
21274 14602       none: [ 'alt-space-value' ]
21275 14603     }, {
21276 14604       id: 'image-redundant-alt',
21277    -1       selector: 'img',
   -1 14605       selector: 'button, [role="button"], a[href], p, li, td, th',
21278 14606       tags: [ 'cat.text-alternatives', 'best-practice' ],
21279 14607       all: [],
21280 14608       any: [],
21281 14609       none: [ 'duplicate-img-label' ]
21282 14610     }, {
21283    -1       id: 'input-button-name',
21284    -1       selector: 'input[type="button"], input[type="submit"], input[type="reset"]',
21285    -1       tags: [ 'cat.name-role-value', 'wcag2a', 'wcag412', 'section508', 'section508.22.a' ],
21286    -1       all: [],
21287    -1       any: [ 'non-empty-if-present', 'non-empty-value', 'aria-label', 'aria-labelledby', 'role-presentation', 'role-none', 'non-empty-title' ],
21288    -1       none: []
21289    -1     }, {
21290 14611       id: 'input-image-alt',
21291 14612       selector: 'input[type="image"]',
21292 14613       tags: [ 'cat.text-alternatives', 'wcag2a', 'wcag111', 'section508', 'section508.22.a' ],
@@ -21319,13 +14640,7 @@ module.exports = {
21319 14640       },
21320 14641       tags: [ 'wcag21a', 'wcag253', 'experimental' ],
21321 14642       all: [],
21322    -1       any: [ {
21323    -1         options: {
21324    -1           pixelThreshold: .1,
21325    -1           occuranceThreshold: 3
21326    -1         },
21327    -1         id: 'label-content-name-mismatch'
21328    -1       } ],
   -1 14643       any: [ 'label-content-name-mismatch' ],
21329 14644       none: []
21330 14645     }, {
21331 14646       id: 'label-title-only',
@@ -21435,37 +14750,6 @@ module.exports = {
21435 14750       any: [],
21436 14751       none: []
21437 14752     }, {
21438    -1       id: 'landmark-unique',
21439    -1       selector: '[role=banner], [role=complementary], [role=contentinfo], [role=main], [role=navigation], [role=region], [role=search], [role=form], form, footer, header, aside, main, nav, section',
21440    -1       tags: [ 'cat.semantics', 'best-practice' ],
21441    -1       matches: function matches(node, virtualNode, context) {
21442    -1         var excludedParentsForHeaderFooterLandmarks = [ 'article', 'aside', 'main', 'nav', 'section' ].join(',');
21443    -1         function isHeaderFooterLandmark(headerFooterElement) {
21444    -1           return !axe.commons.dom.findUpVirtual(headerFooterElement, excludedParentsForHeaderFooterLandmarks);
21445    -1         }
21446    -1         function isLandmarkVirtual(virtualNode) {
21447    -1           var actualNode = virtualNode.actualNode;
21448    -1           var landmarkRoles = axe.commons.aria.getRolesByType('landmark');
21449    -1           var role = axe.commons.aria.getRole(actualNode);
21450    -1           if (!role) {
21451    -1             return false;
21452    -1           }
21453    -1           var nodeName = actualNode.nodeName.toUpperCase();
21454    -1           if (nodeName === 'HEADER' || nodeName === 'FOOTER') {
21455    -1             return isHeaderFooterLandmark(virtualNode);
21456    -1           }
21457    -1           if (nodeName === 'SECTION' || nodeName === 'FORM') {
21458    -1             var accessibleText = axe.commons.text.accessibleTextVirtual(virtualNode);
21459    -1             return !!accessibleText;
21460    -1           }
21461    -1           return landmarkRoles.indexOf(role) >= 0 || role === 'region';
21462    -1         }
21463    -1         return isLandmarkVirtual(virtualNode) && axe.commons.dom.isVisible(node, true);
21464    -1       },
21465    -1       all: [],
21466    -1       any: [ 'landmark-is-unique' ],
21467    -1       none: []
21468    -1     }, {
21469 14753       id: 'layout-table',
21470 14754       selector: 'table',
21471 14755       matches: function matches(node, virtualNode, context) {
@@ -21500,7 +14784,10 @@ module.exports = {
21500 14784       none: []
21501 14785     }, {
21502 14786       id: 'link-name',
21503    -1       selector: 'a[href]:not([role=button]), [role=link]',
   -1 14787       selector: 'a[href], [role=link][href]',
   -1 14788       matches: function matches(node, virtualNode, context) {
   -1 14789         return node.getAttribute('role') !== 'button';
   -1 14790       },
21504 14791       tags: [ 'cat.name-role-value', 'wcag2a', 'wcag412', 'wcag244', 'section508', 'section508.22.a' ],
21505 14792       all: [],
21506 14793       any: [ 'has-visible-text', 'aria-label', 'aria-labelledby', 'role-presentation', 'role-none' ],
@@ -21537,7 +14824,7 @@ module.exports = {
21537 14824       id: 'meta-refresh',
21538 14825       selector: 'meta[http-equiv="refresh"]',
21539 14826       excludeHidden: false,
21540    -1       tags: [ 'cat.time-and-media', 'wcag2a', 'wcag2aaa', 'wcag221', 'wcag224', 'wcag325' ],
   -1 14827       tags: [ 'cat.time', 'wcag2a', 'wcag2aaa', 'wcag221', 'wcag224', 'wcag325' ],
21541 14828       all: [],
21542 14829       any: [ 'meta-refresh' ],
21543 14830       none: []
@@ -21625,8 +14912,7 @@ module.exports = {
21625 14912     }, {
21626 14913       id: 'radiogroup',
21627 14914       selector: 'input[type=radio][name]',
21628    -1       tags: [ 'cat.forms', 'best-practice', 'deprecated' ],
21629    -1       enabled: false,
   -1 14915       tags: [ 'cat.forms', 'best-practice' ],
21630 14916       all: [],
21631 14917       any: [ 'group-labelledby', 'fieldset' ],
21632 14918       none: []
@@ -21639,13 +14925,6 @@ module.exports = {
21639 14925       any: [ 'region' ],
21640 14926       none: []
21641 14927     }, {
21642    -1       id: 'role-img-alt',
21643    -1       selector: '[role=\'img\']:not(svg):not(img):not(area):not(input):not(object)',
21644    -1       tags: [ 'cat.text-alternatives', 'wcag2a', 'wcag111', 'section508', 'section508.22.a' ],
21645    -1       all: [],
21646    -1       any: [ 'aria-label', 'aria-labelledby', 'non-empty-title' ],
21647    -1       none: []
21648    -1     }, {
21649 14928       id: 'scope-attr-valid',
21650 14929       selector: 'td[scope], th[scope]',
21651 14930       tags: [ 'cat.tables', 'best-practice' ],
@@ -21653,27 +14932,6 @@ module.exports = {
21653 14932       any: [],
21654 14933       none: []
21655 14934     }, {
21656    -1       id: 'scrollable-region-focusable',
21657    -1       matches: function matches(node, virtualNode, context) {
21658    -1         var querySelectorAll = axe.utils.querySelectorAll;
21659    -1         var hasContentVirtual = axe.commons.dom.hasContentVirtual;
21660    -1         if (!!axe.utils.getScroll(node, 13) === false) {
21661    -1           return false;
21662    -1         }
21663    -1         var nodeAndDescendents = querySelectorAll(virtualNode, '*');
21664    -1         var hasVisibleChildren = nodeAndDescendents.some(function(elm) {
21665    -1           return hasContentVirtual(elm, true, true);
21666    -1         });
21667    -1         if (!hasVisibleChildren) {
21668    -1           return false;
21669    -1         }
21670    -1         return true;
21671    -1       },
21672    -1       tags: [ 'wcag2a', 'wcag211' ],
21673    -1       all: [],
21674    -1       any: [ 'focusable-content', 'focusable-element' ],
21675    -1       none: []
21676    -1     }, {
21677 14935       id: 'server-side-image-map',
21678 14936       selector: 'img[ismap]',
21679 14937       tags: [ 'cat.text-alternatives', 'wcag2a', 'wcag211', 'section508', 'section508.22.f' ],
@@ -21682,9 +14940,9 @@ module.exports = {
21682 14940       none: [ 'exists' ]
21683 14941     }, {
21684 14942       id: 'skip-link',
21685    -1       selector: 'a[href^="#"], a[href^="/#"]',
   -1 14943       selector: 'a[href]',
21686 14944       matches: function matches(node, virtualNode, context) {
21687    -1         return axe.commons.dom.isSkipLink(node);
   -1 14945         return /^#[^/!]/.test(node.getAttribute('href'));
21688 14946       },
21689 14947       tags: [ 'cat.keyboard', 'best-practice' ],
21690 14948       all: [],
@@ -21767,8 +15025,7 @@ module.exports = {
21767 15025       id: 'video-description',
21768 15026       selector: 'video',
21769 15027       excludeHidden: false,
21770    -1       tags: [ 'cat.text-alternatives', 'wcag2aa', 'wcag125', 'section508', 'section508.22.b', 'deprecated' ],
21771    -1       enabled: false,
   -1 15028       tags: [ 'cat.text-alternatives', 'wcag2aa', 'wcag125', 'section508', 'section508.22.b' ],
21772 15029       all: [],
21773 15030       any: [],
21774 15031       none: [ 'description' ]
@@ -21783,7 +15040,7 @@ module.exports = {
21783 15040       evaluate: function evaluate(node, options, virtualNode, context) {
21784 15041         options = options || {};
21785 15042         var invalid = [];
21786    -1         var attr, attrName, allowed, role = node.getAttribute('role'), attrs = axe.utils.getNodeAttributes(node);
   -1 15043         var attr, attrName, allowed, role = node.getAttribute('role'), attrs = node.attributes;
21787 15044         if (!role) {
21788 15045           role = axe.commons.aria.implicitRole(node);
21789 15046         }
@@ -21810,7 +15067,7 @@ module.exports = {
21810 15067       id: 'aria-allowed-role',
21811 15068       evaluate: function evaluate(node, options, virtualNode, context) {
21812 15069         var dom = axe.commons.dom;
21813    -1         var _ref = options || {}, _ref$allowImplicit = _ref.allowImplicit, allowImplicit = _ref$allowImplicit === void 0 ? true : _ref$allowImplicit, _ref$ignoredTags = _ref.ignoredTags, ignoredTags = _ref$ignoredTags === void 0 ? [] : _ref$ignoredTags;
   -1 15070         var _ref = options || {}, _ref$allowImplicit = _ref.allowImplicit, allowImplicit = _ref$allowImplicit === undefined ? true : _ref$allowImplicit, _ref$ignoredTags = _ref.ignoredTags, ignoredTags = _ref$ignoredTags === undefined ? [] : _ref$ignoredTags;
21814 15071         var tagName = node.nodeName.toUpperCase();
21815 15072         if (ignoredTags.map(function(t) {
21816 15073           return t.toUpperCase();
@@ -21837,23 +15094,6 @@ module.exports = {
21837 15094         return node.getAttribute('aria-hidden') !== 'true';
21838 15095       }
21839 15096     }, {
21840    -1       id: 'aria-roledescription',
21841    -1       evaluate: function evaluate(node, options, virtualNode, context) {
21842    -1         options = options || {};
21843    -1         var role = axe.commons.aria.getRole(node);
21844    -1         var supportedRoles = options.supportedRoles || [];
21845    -1         if (supportedRoles.includes(role)) {
21846    -1           return true;
21847    -1         }
21848    -1         if (role && role !== 'presentation' && role !== 'none') {
21849    -1           return undefined;
21850    -1         }
21851    -1         return false;
21852    -1       },
21853    -1       options: {
21854    -1         supportedRoles: [ 'button', 'img', 'checkbox', 'radio', 'combobox', 'menuitemcheckbox', 'menuitemradio' ]
21855    -1       }
21856    -1     }, {
21857 15097       id: 'aria-errormessage',
21858 15098       evaluate: function evaluate(node, options, virtualNode, context) {
21859 15099         var _axe$commons5 = axe.commons, aria = _axe$commons5.aria, dom = _axe$commons5.dom;
@@ -21907,47 +15147,19 @@ module.exports = {
21907 15147         });
21908 15148       }
21909 15149     }, {
21910    -1       id: 'no-implicit-explicit-label',
21911    -1       evaluate: function evaluate(node, options, virtualNode, context) {
21912    -1         var _axe$commons6 = axe.commons, aria = _axe$commons6.aria, text = _axe$commons6.text;
21913    -1         var role = aria.getRole(node, {
21914    -1           noImplicit: true
21915    -1         });
21916    -1         this.data(role);
21917    -1         var labelText = text.sanitize(text.labelText(virtualNode)).toLowerCase();
21918    -1         var accText = text.sanitize(text.accessibleText(node)).toLowerCase();
21919    -1         if (!accText && !labelText) {
21920    -1           return false;
21921    -1         }
21922    -1         if (!accText && labelText) {
21923    -1           return undefined;
21924    -1         }
21925    -1         if (!accText.includes(labelText)) {
21926    -1           return undefined;
21927    -1         }
21928    -1         return false;
21929    -1       }
21930    -1     }, {
21931 15150       id: 'aria-required-attr',
21932 15151       evaluate: function evaluate(node, options, virtualNode, context) {
21933 15152         options = options || {};
21934 15153         var missing = [];
21935    -1         var _axe$commons$forms = axe.commons.forms, isNativeTextbox = _axe$commons$forms.isNativeTextbox, isNativeSelect = _axe$commons$forms.isNativeSelect, isAriaTextbox = _axe$commons$forms.isAriaTextbox, isAriaListbox = _axe$commons$forms.isAriaListbox, isAriaCombobox = _axe$commons$forms.isAriaCombobox, isAriaRange = _axe$commons$forms.isAriaRange;
21936    -1         var preChecks = {
21937    -1           'aria-valuenow': function ariaValuenow() {
21938    -1             return !(isNativeTextbox(node) || isNativeSelect(node) || isAriaTextbox(node) || isAriaListbox(node) || isAriaCombobox(node) || isAriaRange(node) && node.hasAttribute('aria-valuenow'));
21939    -1           }
21940    -1         };
21941 15154         if (node.hasAttributes()) {
21942    -1           var role = node.getAttribute('role');
21943    -1           var required = axe.commons.aria.requiredAttr(role);
   -1 15155           var attr, role = node.getAttribute('role'), required = axe.commons.aria.requiredAttr(role);
21944 15156           if (Array.isArray(options[role])) {
21945 15157             required = axe.utils.uniqueArray(options[role], required);
21946 15158           }
21947 15159           if (role && required) {
21948 15160             for (var i = 0, l = required.length; i < l; i++) {
21949    -1               var attr = required[i];
21950    -1               if (!node.getAttribute(attr) && (preChecks[attr] ? preChecks[attr]() : true)) {
   -1 15161               attr = required[i];
   -1 15162               if (!node.getAttribute(attr)) {
21951 15163                 missing.push(attr);
21952 15164               }
21953 15165             }
@@ -21966,7 +15178,6 @@ module.exports = {
21966 15178         var implicitNodes = axe.commons.aria.implicitNodes;
21967 15179         var matchesSelector = axe.utils.matchesSelector;
21968 15180         var idrefs = axe.commons.dom.idrefs;
21969    -1         var hasContentVirtual = axe.commons.dom.hasContentVirtual;
21970 15181         var reviewEmpty = options && Array.isArray(options.reviewEmpty) ? options.reviewEmpty : [];
21971 15182         function owns(node, virtualTree, role, ariaOwned) {
21972 15183           if (node === null) {
@@ -21974,9 +15185,7 @@ module.exports = {
21974 15185           }
21975 15186           var implicit = implicitNodes(role), selector = [ '[role="' + role + '"]' ];
21976 15187           if (implicit) {
21977    -1             selector = selector.concat(implicit.map(function(implicitSelector) {
21978    -1               return implicitSelector + ':not([role])';
21979    -1             }));
   -1 15188             selector = selector.concat(implicit);
21980 15189           }
21981 15190           selector = selector.join(',');
21982 15191           return ariaOwned ? matchesSelector(node, selector) || !!axe.utils.querySelectorAll(virtualTree, selector)[0] : !!axe.utils.querySelectorAll(virtualTree, selector)[0];
@@ -21987,7 +15196,7 @@ module.exports = {
21987 15196             if (nodes[index] === null) {
21988 15197               continue;
21989 15198             }
21990    -1             var virtualTree = axe.utils.getNodeFromTree(nodes[index]);
   -1 15199             var virtualTree = axe.utils.getNodeFromTree(axe._tree[0], nodes[index]);
21991 15200             if (owns(nodes[index], virtualTree, role, true)) {
21992 15201               return true;
21993 15202             }
@@ -21995,23 +15204,23 @@ module.exports = {
21995 15204           return false;
21996 15205         }
21997 15206         function missingRequiredChildren(node, childRoles, all, role) {
21998    -1           var index, length = childRoles.length, missing = [], ownedElements = idrefs(node, 'aria-owns');
21999    -1           for (index = 0; index < length; index++) {
22000    -1             var childRole = childRoles[index];
22001    -1             if (owns(node, virtualNode, childRole) || ariaOwns(ownedElements, childRole)) {
   -1 15207           var i, l = childRoles.length, missing = [], ownedElements = idrefs(node, 'aria-owns');
   -1 15208           for (i = 0; i < l; i++) {
   -1 15209             var r = childRoles[i];
   -1 15210             if (owns(node, virtualNode, r) || ariaOwns(ownedElements, r)) {
22002 15211               if (!all) {
22003 15212                 return null;
22004 15213               }
22005 15214             } else {
22006 15215               if (all) {
22007    -1                 missing.push(childRole);
   -1 15216                 missing.push(r);
22008 15217               }
22009 15218             }
22010 15219           }
22011 15220           if (role === 'combobox') {
22012 15221             var textboxIndex = missing.indexOf('textbox');
22013 15222             var textTypeInputs = [ 'text', 'search', 'email', 'url', 'tel' ];
22014    -1             if (textboxIndex >= 0 && node.nodeName.toUpperCase() === 'INPUT' && textTypeInputs.includes(node.type) || owns(node, virtualNode, 'searchbox') || ariaOwns(ownedElements, 'searchbox')) {
   -1 15223             if (textboxIndex >= 0 && node.nodeName.toUpperCase() === 'INPUT' && textTypeInputs.includes(node.type)) {
22015 15224               missing.splice(textboxIndex, 1);
22016 15225             }
22017 15226             var listboxIndex = missing.indexOf('listbox');
@@ -22028,12 +15237,6 @@ module.exports = {
22028 15237           }
22029 15238           return null;
22030 15239         }
22031    -1         function hasDecendantWithRole(node) {
22032    -1           return node.children && node.children.some(function(child) {
22033    -1             var role = axe.commons.aria.getRole(child);
22034    -1             return ![ 'presentation', 'none', null ].includes(role) || hasDecendantWithRole(child);
22035    -1           });
22036    -1         }
22037 15240         var role = node.getAttribute('role');
22038 15241         var required = requiredOwned(role);
22039 15242         if (!required) {
@@ -22050,14 +15253,14 @@ module.exports = {
22050 15253           return true;
22051 15254         }
22052 15255         this.data(missing);
22053    -1         if (reviewEmpty.includes(role) && !hasContentVirtual(virtualNode, false, true) && !hasDecendantWithRole(virtualNode) && idrefs(node, 'aria-owns').length === 0) {
   -1 15256         if (reviewEmpty.includes(role)) {
22054 15257           return undefined;
22055 15258         } else {
22056 15259           return false;
22057 15260         }
22058 15261       },
22059 15262       options: {
22060    -1         reviewEmpty: [ 'doc-bibliography', 'doc-endnotes', 'grid', 'list', 'listbox', 'table', 'tablist', 'tree', 'treegrid', 'rowgroup' ]
   -1 15263         reviewEmpty: [ 'listbox' ]
22061 15264       }
22062 15265     }, {
22063 15266       id: 'aria-required-parent',
@@ -22092,7 +15295,7 @@ module.exports = {
22092 15295             if (element.getAttribute('id')) {
22093 15296               var id = axe.utils.escapeSelector(element.getAttribute('id'));
22094 15297               var doc = axe.commons.dom.getRootNode(element);
22095    -1               o = doc.querySelector('[aria-owns~='.concat(id, ']'));
   -1 15298               o = doc.querySelector('[aria-owns~=' + id + ']');
22096 15299               if (o) {
22097 15300                 owners.push(o);
22098 15301               }
@@ -22108,7 +15311,7 @@ module.exports = {
22108 15311         var owners = getAriaOwners(node);
22109 15312         if (owners) {
22110 15313           for (var i = 0, l = owners.length; i < l; i++) {
22111    -1             missingParents = getMissingContext(axe.utils.getNodeFromTree(owners[i]), missingParents, true);
   -1 15314             missingParents = getMissingContext(axe.utils.getNodeFromTree(axe._tree[0], owners[i]), missingParents, true);
22112 15315             if (!missingParents) {
22113 15316               return true;
22114 15317             }
@@ -22123,14 +15326,14 @@ module.exports = {
22123 15326         var nodeName = node.nodeName.toUpperCase();
22124 15327         var lookupTable = axe.commons.aria.lookupTable;
22125 15328         var role = axe.commons.aria.getRole(node);
22126    -1         var unsupportedAttrs = Array.from(axe.utils.getNodeAttributes(node)).filter(function(_ref2) {
   -1 15329         var unsupportedAttrs = Array.from(node.attributes).filter(function(_ref2) {
22127 15330           var name = _ref2.name;
22128 15331           var attribute = lookupTable.attributes[name];
22129 15332           if (!axe.commons.aria.validateAttr(name)) {
22130 15333             return false;
22131 15334           }
22132 15335           var unsupported = attribute.unsupported;
22133    -1           if (_typeof(unsupported) !== 'object') {
   -1 15336           if ((typeof unsupported === 'undefined' ? 'undefined' : _typeof(unsupported)) !== 'object') {
22134 15337             return !!unsupported;
22135 15338           }
22136 15339           var isException = axe.commons.matches(node, unsupported.exceptions);
@@ -22158,38 +15361,20 @@ module.exports = {
22158 15361       }
22159 15362     }, {
22160 15363       id: 'aria-valid-attr-value',
22161    -1       evaluate: function evaluate(node, options, virtualNode, context) {
22162    -1         options = Array.isArray(options) ? options : [];
22163    -1         var needsReview = [];
22164    -1         var invalid = [];
22165    -1         var aria = /^aria-/;
22166    -1         var attrs = axe.utils.getNodeAttributes(node);
22167    -1         var skipAttrs = [ 'aria-errormessage' ];
22168    -1         var preChecks = {
22169    -1           'aria-controls': function ariaControls() {
22170    -1             return node.getAttribute('aria-expanded') !== 'false' && node.getAttribute('aria-selected') !== 'false';
22171    -1           },
22172    -1           'aria-owns': function ariaOwns() {
22173    -1             return node.getAttribute('aria-expanded') !== 'false';
22174    -1           },
22175    -1           'aria-describedby': function ariaDescribedby() {
22176    -1             if (!axe.commons.aria.validateAttrValue(node, 'aria-describedby')) {
22177    -1               needsReview.push('aria-describedby="'.concat(node.getAttribute('aria-describedby'), '"'));
22178    -1             }
22179    -1             return;
22180    -1           }
22181    -1         };
   -1 15364       evaluate: function evaluate(node, options, virtualNode, context) {
   -1 15365         options = Array.isArray(options) ? options : [];
   -1 15366         var invalid = [], aria = /^aria-/;
   -1 15367         var attr, attrName, attrs = node.attributes;
   -1 15368         var skipAttrs = [ 'aria-errormessage' ];
22182 15369         for (var i = 0, l = attrs.length; i < l; i++) {
22183    -1           var attr = attrs[i];
22184    -1           var attrName = attr.name;
22185    -1           if (!skipAttrs.includes(attrName) && options.indexOf(attrName) === -1 && aria.test(attrName) && (preChecks[attrName] ? preChecks[attrName]() : true) && !axe.commons.aria.validateAttrValue(node, attrName)) {
22186    -1             invalid.push(''.concat(attrName, '="').concat(attr.nodeValue, '"'));
   -1 15370           attr = attrs[i];
   -1 15371           attrName = attr.name;
   -1 15372           if (!skipAttrs.includes(attrName)) {
   -1 15373             if (options.indexOf(attrName) === -1 && aria.test(attrName) && !axe.commons.aria.validateAttrValue(node, attrName)) {
   -1 15374               invalid.push(attrName + '="' + attr.nodeValue + '"');
   -1 15375             }
22187 15376           }
22188 15377         }
22189    -1         if (needsReview.length) {
22190    -1           this.data(needsReview);
22191    -1           return undefined;
22192    -1         }
22193 15378         if (invalid.length) {
22194 15379           this.data(invalid);
22195 15380           return false;
@@ -22202,7 +15387,7 @@ module.exports = {
22202 15387       evaluate: function evaluate(node, options, virtualNode, context) {
22203 15388         options = Array.isArray(options) ? options : [];
22204 15389         var invalid = [], aria = /^aria-/;
22205    -1         var attr, attrs = axe.utils.getNodeAttributes(node);
   -1 15390         var attr, attrs = node.attributes;
22206 15391         for (var i = 0, l = attrs.length; i < l; i++) {
22207 15392           attr = attrs[i].name;
22208 15393           if (options.indexOf(attr) === -1 && aria.test(attr) && !axe.commons.aria.validateAttr(attr)) {
@@ -22256,21 +15441,21 @@ module.exports = {
22256 15441     }, {
22257 15442       id: 'color-contrast',
22258 15443       evaluate: function evaluate(node, options, virtualNode, context) {
22259    -1         var _axe$commons7 = axe.commons, dom = _axe$commons7.dom, color = _axe$commons7.color, text = _axe$commons7.text;
   -1 15444         var _axe$commons6 = axe.commons, dom = _axe$commons6.dom, color = _axe$commons6.color, text = _axe$commons6.text;
22260 15445         if (!dom.isVisible(node, false)) {
22261 15446           return true;
22262 15447         }
22263 15448         var noScroll = !!(options || {}).noScroll;
22264 15449         var bgNodes = [];
22265 15450         var bgColor = color.getBackgroundColor(node, bgNodes, noScroll);
22266    -1         var fgColor = color.getForegroundColor(node, noScroll, bgColor);
   -1 15451         var fgColor = color.getForegroundColor(node, noScroll);
22267 15452         var nodeStyle = window.getComputedStyle(node);
22268 15453         var fontSize = parseFloat(nodeStyle.getPropertyValue('font-size'));
22269 15454         var fontWeight = nodeStyle.getPropertyValue('font-weight');
22270 15455         var bold = [ 'bold', 'bolder', '600', '700', '800', '900' ].indexOf(fontWeight) !== -1;
22271 15456         var cr = color.hasValidContrastRatio(bgColor, fgColor, fontSize, bold);
22272 15457         var truncatedResult = Math.floor(cr.contrastRatio * 100) / 100;
22273    -1         var missing;
   -1 15458         var missing = void 0;
22274 15459         if (bgColor === null) {
22275 15460           missing = color.incompleteData.get('bgColor');
22276 15461         }
@@ -22285,7 +15470,7 @@ module.exports = {
22285 15470           fgColor: fgColor ? fgColor.toHexString() : undefined,
22286 15471           bgColor: bgColor ? bgColor.toHexString() : undefined,
22287 15472           contrastRatio: cr ? truncatedResult : undefined,
22288    -1           fontSize: ''.concat((fontSize * 72 / 96).toFixed(1), 'pt (').concat(fontSize, 'px)'),
   -1 15473           fontSize: (fontSize * 72 / 96).toFixed(1) + 'pt',
22289 15474           fontWeight: bold ? 'bold' : 'normal',
22290 15475           missingData: missing,
22291 15476           expectedContrastRatio: cr.expectedContrastRatio + ':1'
@@ -22305,7 +15490,7 @@ module.exports = {
22305 15490     }, {
22306 15491       id: 'link-in-text-block',
22307 15492       evaluate: function evaluate(node, options, virtualNode, context) {
22308    -1         var _axe$commons8 = axe.commons, color = _axe$commons8.color, dom = _axe$commons8.dom;
   -1 15493         var _axe$commons7 = axe.commons, color = _axe$commons7.color, dom = _axe$commons7.dom;
22309 15494         function getContrast(color1, color2) {
22310 15495           var c1lum = color1.getRelativeLuminance();
22311 15496           var c2lum = color2.getRelativeLuminance();
@@ -22347,7 +15532,7 @@ module.exports = {
22347 15532           nodeColor = color.getBackgroundColor(node);
22348 15533           parentColor = color.getBackgroundColor(parentBlock);
22349 15534           if (!nodeColor || !parentColor || getContrast(nodeColor, parentColor) >= 3) {
22350    -1             var reason;
   -1 15535             var reason = void 0;
22351 15536             if (!nodeColor || !parentColor) {
22352 15537               reason = axe.commons.color.incompleteData.get('bgColor');
22353 15538             } else {
@@ -22366,7 +15551,7 @@ module.exports = {
22366 15551     }, {
22367 15552       id: 'autocomplete-appropriate',
22368 15553       evaluate: function evaluate(node, options, virtualNode, context) {
22369    -1         if (virtualNode.props.nodeName !== 'input') {
   -1 15554         if (node.nodeName.toUpperCase() !== 'INPUT') {
22370 15555           return true;
22371 15556         }
22372 15557         var number = [ 'text', 'search', 'number' ];
@@ -22389,7 +15574,7 @@ module.exports = {
22389 15574           photo: url,
22390 15575           impp: url
22391 15576         };
22392    -1         if (_typeof(options) === 'object') {
   -1 15577         if ((typeof options === 'undefined' ? 'undefined' : _typeof(options)) === 'object') {
22393 15578           Object.keys(options).forEach(function(key) {
22394 15579             if (!allowedTypesMap[key]) {
22395 15580               allowedTypesMap[key] = [];
@@ -22397,7 +15582,7 @@ module.exports = {
22397 15582             allowedTypesMap[key] = allowedTypesMap[key].concat(options[key]);
22398 15583           });
22399 15584         }
22400    -1         var autocomplete = virtualNode.attr('autocomplete');
   -1 15585         var autocomplete = node.getAttribute('autocomplete');
22401 15586         var autocompleteTerms = autocomplete.split(/\s+/g).map(function(term) {
22402 15587           return term.toLowerCase();
22403 15588         });
@@ -22406,7 +15591,7 @@ module.exports = {
22406 15591           return true;
22407 15592         }
22408 15593         var allowedTypes = allowedTypesMap[purposeTerm];
22409    -1         var type = virtualNode.hasAttr('type') ? axe.commons.text.sanitize(virtualNode.attr('type')).toLowerCase() : 'text';
   -1 15594         var type = node.hasAttribute('type') ? axe.commons.text.sanitize(node.getAttribute('type')).toLowerCase() : 'text';
22410 15595         type = axe.utils.validInputTypes().includes(type) ? type : 'text';
22411 15596         if (typeof allowedTypes === 'undefined') {
22412 15597           return type === 'text';
@@ -22416,7 +15601,7 @@ module.exports = {
22416 15601     }, {
22417 15602       id: 'autocomplete-valid',
22418 15603       evaluate: function evaluate(node, options, virtualNode, context) {
22419    -1         var autocomplete = virtualNode.attr('autocomplete') || '';
   -1 15604         var autocomplete = node.getAttribute('autocomplete') || '';
22420 15605         return axe.commons.text.isValidAutocomplete(autocomplete, options);
22421 15606       }
22422 15607     }, {
@@ -22522,12 +15707,11 @@ module.exports = {
22522 15707           }
22523 15708           return false;
22524 15709         });
22525    -1       },
22526    -1       deprecated: true
   -1 15710       }
22527 15711     }, {
22528 15712       id: 'group-labelledby',
22529 15713       evaluate: function evaluate(node, options, virtualNode, context) {
22530    -1         var _axe$commons9 = axe.commons, dom = _axe$commons9.dom, text = _axe$commons9.text;
   -1 15714         var _axe$commons8 = axe.commons, dom = _axe$commons8.dom, text = _axe$commons8.text;
22531 15715         var type = axe.utils.escapeSelector(node.type);
22532 15716         var name = axe.utils.escapeSelector(node.name);
22533 15717         var doc = dom.getRootNode(node);
@@ -22535,7 +15719,7 @@ module.exports = {
22535 15719           name: node.name,
22536 15720           type: node.type
22537 15721         };
22538    -1         var matchingNodes = Array.from(doc.querySelectorAll('input[type="'.concat(type, '"][name="').concat(name, '"]')));
   -1 15722         var matchingNodes = Array.from(doc.querySelectorAll('input[type="' + type + '"][name="' + name + '"]'));
22539 15723         if (matchingNodes.length <= 1) {
22540 15724           this.data(data);
22541 15725           return true;
@@ -22592,8 +15776,7 @@ module.exports = {
22592 15776           }
22593 15777           return false;
22594 15778         });
22595    -1       },
22596    -1       deprecated: true
   -1 15779       }
22597 15780     }, {
22598 15781       id: 'accesskeys',
22599 15782       evaluate: function evaluate(node, options, virtualNode, context) {
@@ -22623,18 +15806,6 @@ module.exports = {
22623 15806         });
22624 15807       }
22625 15808     }, {
22626    -1       id: 'focusable-content',
22627    -1       evaluate: function evaluate(node, options, virtualNode, context) {
22628    -1         var tabbableElements = virtualNode.tabbableElements;
22629    -1         if (!tabbableElements) {
22630    -1           return false;
22631    -1         }
22632    -1         var tabbableContentElements = tabbableElements.filter(function(el) {
22633    -1           return el !== virtualNode;
22634    -1         });
22635    -1         return tabbableContentElements.length > 0;
22636    -1       }
22637    -1     }, {
22638 15809       id: 'focusable-disabled',
22639 15810       evaluate: function evaluate(node, options, virtualNode, context) {
22640 15811         var elementsThatCanBeDisabled = [ 'BUTTON', 'FIELDSET', 'INPUT', 'SELECT', 'TEXTAREA' ];
@@ -22654,14 +15825,6 @@ module.exports = {
22654 15825         return relatedNodes.length === 0;
22655 15826       }
22656 15827     }, {
22657    -1       id: 'focusable-element',
22658    -1       evaluate: function evaluate(node, options, virtualNode, context) {
22659    -1         var isFocusable = virtualNode.isFocusable;
22660    -1         var tabIndex = parseInt(virtualNode.actualNode.getAttribute('tabindex'), 10);
22661    -1         tabIndex = !isNaN(tabIndex) ? tabIndex : null;
22662    -1         return tabIndex ? isFocusable && tabIndex >= 0 : isFocusable;
22663    -1       }
22664    -1     }, {
22665 15828       id: 'focusable-no-name',
22666 15829       evaluate: function evaluate(node, options, virtualNode, context) {
22667 15830         var tabIndex = node.getAttribute('tabindex'), inFocusOrder = axe.commons.dom.isFocusable(node) && tabIndex > -1;
@@ -22826,33 +15989,28 @@ module.exports = {
22826 15989     }, {
22827 15990       id: 'tabindex',
22828 15991       evaluate: function evaluate(node, options, virtualNode, context) {
22829    -1         var tabIndex = parseInt(node.getAttribute('tabindex'), 10);
22830    -1         return isNaN(tabIndex) ? true : tabIndex <= 0;
   -1 15992         return node.tabIndex <= 0;
22831 15993       }
22832 15994     }, {
22833 15995       id: 'alt-space-value',
22834 15996       evaluate: function evaluate(node, options, virtualNode, context) {
22835    -1         var alt = virtualNode.attr('alt');
22836    -1         var isOnlySpace = /^\s+$/;
22837    -1         return typeof alt === 'string' && isOnlySpace.test(alt);
   -1 15997         var validAttrValue = /^\s+$/.test(node.getAttribute('alt'));
   -1 15998         return node.hasAttribute('alt') && validAttrValue;
22838 15999       }
22839 16000     }, {
22840 16001       id: 'duplicate-img-label',
22841 16002       evaluate: function evaluate(node, options, virtualNode, context) {
22842    -1         var _axe$commons10 = axe.commons, aria = _axe$commons10.aria, text = _axe$commons10.text, dom = _axe$commons10.dom;
22843    -1         if ([ 'none', 'presentation' ].includes(aria.getRole(node))) {
22844    -1           return false;
22845    -1         }
22846    -1         var parent = dom.findUpVirtual(virtualNode, 'button, [role="button"], a[href], p, li, td, th');
22847    -1         if (!parent) {
22848    -1           return false;
22849    -1         }
22850    -1         var parentVNode = axe.utils.getNodeFromTree(parent);
22851    -1         var visibleText = text.visibleVirtual(parentVNode, true).toLowerCase();
22852    -1         if (visibleText === '') {
   -1 16003         var text = axe.commons.text.visibleVirtual(virtualNode, true).toLowerCase();
   -1 16004         if (text === '') {
22853 16005           return false;
22854 16006         }
22855    -1         return visibleText === text.accessibleTextVirtual(virtualNode).toLowerCase();
   -1 16007         var images = axe.utils.querySelectorAll(virtualNode, 'img').filter(function(_ref5) {
   -1 16008           var actualNode = _ref5.actualNode;
   -1 16009           return axe.commons.dom.isVisible(actualNode) && ![ 'none', 'presentation' ].includes(actualNode.getAttribute('role'));
   -1 16010         });
   -1 16011         return images.some(function(img) {
   -1 16012           return text === axe.commons.text.accessibleTextVirtual(img).toLowerCase();
   -1 16013         });
22856 16014       }
22857 16015     }, {
22858 16016       id: 'explicit-label',
@@ -22860,7 +16018,7 @@ module.exports = {
22860 16018         if (node.getAttribute('id')) {
22861 16019           var root = axe.commons.dom.getRootNode(node);
22862 16020           var id = axe.utils.escapeSelector(node.getAttribute('id'));
22863    -1           var label = root.querySelector('label[for="'.concat(id, '"]'));
   -1 16021           var label = root.querySelector('label[for="' + id + '"]');
22864 16022           if (label) {
22865 16023             if (!axe.commons.dom.isVisible(label)) {
22866 16024               return true;
@@ -22896,7 +16054,7 @@ module.exports = {
22896 16054         if (node.getAttribute('id')) {
22897 16055           var root = axe.commons.dom.getRootNode(node);
22898 16056           var id = axe.utils.escapeSelector(node.getAttribute('id'));
22899    -1           var label = root.querySelector('label[for="'.concat(id, '"]'));
   -1 16057           var label = root.querySelector('label[for="' + id + '"]');
22900 16058           if (label && !axe.commons.dom.isVisible(label, true)) {
22901 16059             var name = axe.commons.text.accessibleTextVirtual(virtualNode).trim();
22902 16060             var isNameEmpty = name === '';
@@ -22908,7 +16066,7 @@ module.exports = {
22908 16066     }, {
22909 16067       id: 'implicit-label',
22910 16068       evaluate: function evaluate(node, options, virtualNode, context) {
22911    -1         var _axe$commons11 = axe.commons, dom = _axe$commons11.dom, text = _axe$commons11.text;
   -1 16069         var _axe$commons9 = axe.commons, dom = _axe$commons9.dom, text = _axe$commons9.text;
22912 16070         var label = dom.findUpVirtual(virtualNode, 'label');
22913 16071         if (label) {
22914 16072           return !!text.accessibleText(label, {
@@ -22921,21 +16079,11 @@ module.exports = {
22921 16079       id: 'label-content-name-mismatch',
22922 16080       evaluate: function evaluate(node, options, virtualNode, context) {
22923 16081         var text = axe.commons.text;
22924    -1         var _ref5 = options || {}, pixelThreshold = _ref5.pixelThreshold, occuranceThreshold = _ref5.occuranceThreshold;
22925 16082         var accText = text.accessibleText(node).toLowerCase();
22926 16083         if (text.isHumanInterpretable(accText) < 1) {
22927 16084           return undefined;
22928 16085         }
22929    -1         var textVNodes = text.visibleTextNodes(virtualNode);
22930    -1         var nonLigatureText = textVNodes.filter(function(textVNode) {
22931    -1           return !text.isIconLigature(textVNode, pixelThreshold, occuranceThreshold);
22932    -1         }).map(function(textVNode) {
22933    -1           return textVNode.actualNode.nodeValue;
22934    -1         }).join('');
22935    -1         var visibleText = text.sanitize(nonLigatureText).toLowerCase();
22936    -1         if (!visibleText) {
22937    -1           return true;
22938    -1         }
   -1 16086         var visibleText = text.sanitize(text.visibleVirtual(virtualNode)).toLowerCase();
22939 16087         if (text.isHumanInterpretable(visibleText) < 1) {
22940 16088           if (isStringContained(visibleText, accText)) {
22941 16089             return true;
@@ -22959,22 +16107,18 @@ module.exports = {
22959 16107           });
22960 16108           return text.sanitize(noUnicodeStr);
22961 16109         }
22962    -1       },
22963    -1       options: {
22964    -1         pixelThreshold: .1,
22965    -1         occuranceThreshold: 3
22966 16110       }
22967 16111     }, {
22968 16112       id: 'multiple-label',
22969 16113       evaluate: function evaluate(node, options, virtualNode, context) {
22970 16114         var id = axe.utils.escapeSelector(node.getAttribute('id'));
   -1 16115         var labels = Array.from(document.querySelectorAll('label[for="' + id + '"]'));
22971 16116         var parent = node.parentNode;
22972    -1         var root = axe.commons.dom.getRootNode(node);
22973    -1         root = root.documentElement || root;
22974    -1         var labels = Array.from(root.querySelectorAll('label[for="'.concat(id, '"]')));
22975 16117         if (labels.length) {
22976    -1           labels = labels.filter(function(label) {
22977    -1             return axe.commons.dom.isVisible(label);
   -1 16118           labels = labels.filter(function(label, index) {
   -1 16119             if (index === 0 && !axe.commons.dom.isVisible(label, true) || axe.commons.dom.isVisible(label, true)) {
   -1 16120               return label;
   -1 16121             }
22978 16122           });
22979 16123         }
22980 16124         while (parent) {
@@ -22984,17 +16128,7 @@ module.exports = {
22984 16128           parent = parent.parentNode;
22985 16129         }
22986 16130         this.relatedNodes(labels);
22987    -1         if (labels.length > 1) {
22988    -1           var ATVisibleLabels = labels.filter(function(label) {
22989    -1             return axe.commons.dom.isVisible(label, true);
22990    -1           });
22991    -1           if (ATVisibleLabels.length > 1) {
22992    -1             return undefined;
22993    -1           }
22994    -1           var labelledby = axe.commons.dom.idrefs(node, 'aria-labelledby');
22995    -1           return !labelledby.includes(ATVisibleLabels[0]) ? undefined : false;
22996    -1         }
22997    -1         return false;
   -1 16131         return labels.length > 1;
22998 16132       }
22999 16133     }, {
23000 16134       id: 'title-only',
@@ -23003,36 +16137,6 @@ module.exports = {
23003 16137         return !labelText && !!(node.getAttribute('title') || node.getAttribute('aria-describedby'));
23004 16138       }
23005 16139     }, {
23006    -1       id: 'landmark-is-unique',
23007    -1       evaluate: function evaluate(node, options, virtualNode, context) {
23008    -1         var role = axe.commons.aria.getRole(node);
23009    -1         var accessibleText = axe.commons.text.accessibleTextVirtual(virtualNode);
23010    -1         accessibleText = accessibleText ? accessibleText.toLowerCase() : null;
23011    -1         this.data({
23012    -1           role: role,
23013    -1           accessibleText: accessibleText
23014    -1         });
23015    -1         this.relatedNodes([ node ]);
23016    -1         return true;
23017    -1       },
23018    -1       after: function after(results, options) {
23019    -1         var uniqueLandmarks = [];
23020    -1         return results.filter(function(currentResult) {
23021    -1           var findMatch = function findMatch(someResult) {
23022    -1             return currentResult.data.role === someResult.data.role && currentResult.data.accessibleText === someResult.data.accessibleText;
23023    -1           };
23024    -1           var matchedResult = uniqueLandmarks.find(findMatch);
23025    -1           if (matchedResult) {
23026    -1             matchedResult.result = false;
23027    -1             matchedResult.relatedNodes.push(currentResult.relatedNodes[0]);
23028    -1             return false;
23029    -1           }
23030    -1           uniqueLandmarks.push(currentResult);
23031    -1           currentResult.relatedNodes = [];
23032    -1           return true;
23033    -1         });
23034    -1       }
23035    -1     }, {
23036 16140       id: 'has-lang',
23037 16141       evaluate: function evaluate(node, options, virtualNode, context) {
23038 16142         return !!(node.getAttribute('lang') || node.getAttribute('xml:lang') || '').trim();
@@ -23103,7 +16207,6 @@ module.exports = {
23103 16207           return true;
23104 16208         }
23105 16209         if (parentRole && axe.commons.aria.isValidRole(parentRole)) {
23106    -1           this.data('roleNotValid');
23107 16210           return false;
23108 16211         }
23109 16212         return [ 'UL', 'OL' ].includes(parentTagName);
@@ -23111,7 +16214,7 @@ module.exports = {
23111 16214     }, {
23112 16215       id: 'only-dlitems',
23113 16216       evaluate: function evaluate(node, options, virtualNode, context) {
23114    -1         var _axe$commons12 = axe.commons, dom = _axe$commons12.dom, aria = _axe$commons12.aria;
   -1 16217         var _axe$commons10 = axe.commons, dom = _axe$commons10.dom, aria = _axe$commons10.aria;
23115 16218         var ALLOWED_ROLES = [ 'definition', 'term', 'list' ];
23116 16219         var base = {
23117 16220           badNodes: [],
@@ -23267,7 +16370,7 @@ module.exports = {
23267 16370     }, {
23268 16371       id: 'css-orientation-lock',
23269 16372       evaluate: function evaluate(node, options, virtualNode, context) {
23270    -1         var _ref10 = context || {}, _ref10$cssom = _ref10.cssom, cssom = _ref10$cssom === void 0 ? undefined : _ref10$cssom;
   -1 16373         var _ref10 = context || {}, _ref10$cssom = _ref10.cssom, cssom = _ref10$cssom === undefined ? undefined : _ref10$cssom;
23271 16374         if (!cssom || !cssom.length) {
23272 16375           return undefined;
23273 16376         }
@@ -23299,7 +16402,7 @@ module.exports = {
23299 16402           }
23300 16403           var orientationRules = mediaRules.filter(function(r) {
23301 16404             var cssText = r.cssText;
23302    -1             return /orientation:\s*landscape/i.test(cssText) || /orientation:\s*portrait/i.test(cssText);
   -1 16405             return /orientation:\s+landscape/i.test(cssText) || /orientation:\s+portrait/i.test(cssText);
23303 16406           });
23304 16407           if (!orientationRules || !orientationRules.length) {
23305 16408             return;
@@ -23315,7 +16418,7 @@ module.exports = {
23315 16418               if (cssRule.style.length <= 0) {
23316 16419                 return;
23317 16420               }
23318    -1               var transformStyleValue = cssRule.style.transform || cssRule.style.webkitTransform || cssRule.style.msTransform || false;
   -1 16421               var transformStyleValue = cssRule.style.transform || false;
23319 16422               if (!transformStyleValue) {
23320 16423                 return;
23321 16424               }
@@ -23543,13 +16646,23 @@ module.exports = {
23543 16646     }, {
23544 16647       id: 'region',
23545 16648       evaluate: function evaluate(node, options, virtualNode, context) {
23546    -1         var _axe$commons13 = axe.commons, dom = _axe$commons13.dom, aria = _axe$commons13.aria;
   -1 16649         var _axe$commons11 = axe.commons, dom = _axe$commons11.dom, aria = _axe$commons11.aria;
   -1 16650         function getSkiplink(virtualNode) {
   -1 16651           var firstLink = axe.utils.querySelectorAll(virtualNode, 'a[href]')[0];
   -1 16652           if (firstLink && axe.commons.dom.getElementByReference(firstLink.actualNode, 'href')) {
   -1 16653             return firstLink.actualNode;
   -1 16654           }
   -1 16655         }
   -1 16656         var skipLink = getSkiplink(virtualNode);
23547 16657         var landmarkRoles = aria.getRolesByType('landmark');
23548 16658         var implicitLandmarks = landmarkRoles.reduce(function(arr, role) {
23549 16659           return arr.concat(aria.implicitNodes(role));
23550 16660         }, []).filter(function(r) {
23551 16661           return r !== null;
23552 16662         });
   -1 16663         function isSkipLink(vNode) {
   -1 16664           return skipLink && skipLink === vNode.actualNode;
   -1 16665         }
23553 16666         function isRegion(virtualNode) {
23554 16667           var node = virtualNode.actualNode;
23555 16668           var explicitRole = axe.commons.aria.getRole(node, {
@@ -23574,7 +16687,7 @@ module.exports = {
23574 16687         }
23575 16688         function findRegionlessElms(virtualNode) {
23576 16689           var node = virtualNode.actualNode;
23577    -1           if (isRegion(virtualNode) || dom.isSkipLink(virtualNode.actualNode) && dom.getElementByReference(virtualNode.actualNode, 'href') || !dom.isVisible(node, true)) {
   -1 16690           if (isRegion(virtualNode) || isSkipLink(virtualNode) || !dom.isVisible(node, true)) {
23578 16691             return [];
23579 16692           } else if (dom.hasContent(node, true)) {
23580 16693             return [ node ];
@@ -23628,7 +16741,7 @@ module.exports = {
23628 16741           return true;
23629 16742         }
23630 16743         var root = axe.commons.dom.getRootNode(node);
23631    -1         var matchingNodes = Array.from(root.querySelectorAll('[id="'.concat(axe.utils.escapeSelector(id), '"]'))).filter(function(foundNode) {
   -1 16744         var matchingNodes = Array.from(root.querySelectorAll('[id="' + axe.utils.escapeSelector(id) + '"]')).filter(function(foundNode) {
23632 16745           return foundNode !== node;
23633 16746         });
23634 16747         if (matchingNodes.length) {
@@ -23655,7 +16768,7 @@ module.exports = {
23655 16768           return true;
23656 16769         }
23657 16770         var root = axe.commons.dom.getRootNode(node);
23658    -1         var matchingNodes = Array.from(root.querySelectorAll('[id="'.concat(axe.utils.escapeSelector(id), '"]'))).filter(function(foundNode) {
   -1 16771         var matchingNodes = Array.from(root.querySelectorAll('[id="' + axe.utils.escapeSelector(id) + '"]')).filter(function(foundNode) {
23659 16772           return foundNode !== node;
23660 16773         });
23661 16774         if (matchingNodes.length) {
@@ -23682,7 +16795,7 @@ module.exports = {
23682 16795           return true;
23683 16796         }
23684 16797         var root = axe.commons.dom.getRootNode(node);
23685    -1         var matchingNodes = Array.from(root.querySelectorAll('[id="'.concat(axe.utils.escapeSelector(id), '"]'))).filter(function(foundNode) {
   -1 16798         var matchingNodes = Array.from(root.querySelectorAll('[id="' + axe.utils.escapeSelector(id) + '"]')).filter(function(foundNode) {
23686 16799           return foundNode !== node;
23687 16800         });
23688 16801         if (matchingNodes.length) {
@@ -23704,36 +16817,21 @@ module.exports = {
23704 16817     }, {
23705 16818       id: 'aria-label',
23706 16819       evaluate: function evaluate(node, options, virtualNode, context) {
23707    -1         var _axe$commons14 = axe.commons, text = _axe$commons14.text, aria = _axe$commons14.aria;
   -1 16820         var _axe$commons12 = axe.commons, text = _axe$commons12.text, aria = _axe$commons12.aria;
23708 16821         return !!text.sanitize(aria.arialabelText(node));
23709 16822       }
23710 16823     }, {
23711 16824       id: 'aria-labelledby',
23712 16825       evaluate: function evaluate(node, options, virtualNode, context) {
23713    -1         var _axe$commons15 = axe.commons, text = _axe$commons15.text, aria = _axe$commons15.aria;
   -1 16826         var _axe$commons13 = axe.commons, text = _axe$commons13.text, aria = _axe$commons13.aria;
23714 16827         return !!text.sanitize(aria.arialabelledbyText(node));
23715 16828       }
23716 16829     }, {
23717    -1       id: 'avoid-inline-spacing',
23718    -1       evaluate: function evaluate(node, options, virtualNode, context) {
23719    -1         var inlineSpacingCssProperties = [ 'line-height', 'letter-spacing', 'word-spacing' ];
23720    -1         var overriddenProperties = inlineSpacingCssProperties.filter(function(property) {
23721    -1           if (node.style.getPropertyPriority(property) === 'important') {
23722    -1             return property;
23723    -1           }
23724    -1         });
23725    -1         if (overriddenProperties.length > 0) {
23726    -1           this.data(overriddenProperties);
23727    -1           return false;
23728    -1         }
23729    -1         return true;
23730    -1       }
23731    -1     }, {
23732 16830       id: 'button-has-visible-text',
23733 16831       evaluate: function evaluate(node, options, virtualNode, context) {
23734 16832         var nodeName = node.nodeName.toUpperCase();
23735 16833         var role = node.getAttribute('role');
23736    -1         var label;
   -1 16834         var label = void 0;
23737 16835         if (nodeName === 'BUTTON' || role === 'button' && nodeName !== 'INPUT') {
23738 16836           label = axe.commons.text.accessibleTextVirtual(virtualNode);
23739 16837           this.data(label);
@@ -23751,16 +16849,13 @@ module.exports = {
23751 16849     }, {
23752 16850       id: 'exists',
23753 16851       evaluate: function evaluate(node, options, virtualNode, context) {
23754    -1         return undefined;
   -1 16852         return true;
23755 16853       }
23756 16854     }, {
23757 16855       id: 'has-alt',
23758 16856       evaluate: function evaluate(node, options, virtualNode, context) {
23759    -1         var nodeName = virtualNode.props.nodeName;
23760    -1         if (![ 'img', 'input', 'area' ].includes(nodeName)) {
23761    -1           return false;
23762    -1         }
23763    -1         return virtualNode.hasAttr('alt');
   -1 16857         var nn = node.nodeName.toLowerCase();
   -1 16858         return node.hasAttribute('alt') && (nn === 'img' || nn === 'input' || nn === 'area');
23764 16859       }
23765 16860     }, {
23766 16861       id: 'has-visible-text',
@@ -23775,7 +16870,7 @@ module.exports = {
23775 16870     }, {
23776 16871       id: 'non-empty-alt',
23777 16872       evaluate: function evaluate(node, options, virtualNode, context) {
23778    -1         var label = virtualNode.attr('alt');
   -1 16873         var label = node.getAttribute('alt');
23779 16874         return !!(label ? axe.commons.text.sanitize(label).trim() : '');
23780 16875       }
23781 16876     }, {
@@ -23880,10 +16975,9 @@ module.exports = {
23880 16975         var tableUtils = axe.commons.table;
23881 16976         var badCells = [];
23882 16977         var cells = tableUtils.getAllCells(node);
23883    -1         var tableGrid = tableUtils.toGrid(node);
23884 16978         cells.forEach(function(cell) {
23885 16979           if (axe.commons.dom.hasContent(cell) && tableUtils.isDataCell(cell) && !axe.commons.aria.label(cell)) {
23886    -1             var hasHeaders = tableUtils.getHeaders(cell, tableGrid).some(function(header) {
   -1 16980             var hasHeaders = tableUtils.getHeaders(cell).some(function(header) {
23887 16981               return header !== null && !!axe.commons.dom.hasContent(header);
23888 16982             });
23889 16983             if (!hasHeaders) {
@@ -23966,28 +17060,27 @@ module.exports = {
23966 17060           return cell.nodeName.toUpperCase() === 'TH' || [ 'rowheader', 'columnheader' ].indexOf(cell.getAttribute('role')) !== -1;
23967 17061         });
23968 17062         var tableGrid = tableUtils.toGrid(node);
23969    -1         var out = true;
23970    -1         headers.forEach(function(header) {
   -1 17063         var out = headers.reduce(function(res, header) {
23971 17064           if (header.getAttribute('id') && reffedHeaders.includes(header.getAttribute('id'))) {
23972    -1             return;
   -1 17065             return !res ? res : true;
23973 17066           }
23974    -1           var pos = tableUtils.getCellPosition(header, tableGrid);
23975 17067           var hasCell = false;
   -1 17068           var pos = tableUtils.getCellPosition(header, tableGrid);
23976 17069           if (tableUtils.isColumnHeader(header)) {
23977    -1             hasCell = tableUtils.traverse('down', pos, tableGrid).find(function(cell) {
23978    -1               return !tableUtils.isColumnHeader(cell);
23979    -1             });
   -1 17070             hasCell = tableUtils.traverse('down', pos, tableGrid).reduce(function(out, cell) {
   -1 17071               return out || axe.commons.dom.hasContent(cell) && !tableUtils.isColumnHeader(cell);
   -1 17072             }, false);
23980 17073           }
23981 17074           if (!hasCell && tableUtils.isRowHeader(header)) {
23982    -1             hasCell = tableUtils.traverse('right', pos, tableGrid).find(function(cell) {
23983    -1               return !tableUtils.isRowHeader(cell);
23984    -1             });
   -1 17075             hasCell = tableUtils.traverse('right', pos, tableGrid).reduce(function(out, cell) {
   -1 17076               return out || axe.commons.dom.hasContent(cell) && !tableUtils.isRowHeader(cell);
   -1 17077             }, false);
23985 17078           }
23986 17079           if (!hasCell) {
23987 17080             checkResult.relatedNodes(header);
23988 17081           }
23989    -1           out = out && hasCell;
23990    -1         });
   -1 17082           return res && hasCell;
   -1 17083         }, true);
23991 17084         return out ? true : undefined;
23992 17085       }
23993 17086     }, {
@@ -24208,7 +17301,14 @@ module.exports = {
24208 17301         'aria-roledescription': {
24209 17302           type: 'string',
24210 17303           allowEmpty: true,
24211    -1           unsupported: false
   -1 17304           unsupported: {
   -1 17305             exceptions: [ 'button', {
   -1 17306               nodeName: 'input',
   -1 17307               properties: {
   -1 17308                 type: [ 'button', 'checkbox', 'image', 'radio', 'reset', 'submit' ]
   -1 17309               }
   -1 17310             }, 'img', 'select', 'summary' ]
   -1 17311           }
24212 17312         },
24213 17313         'aria-rowcount': {
24214 17314           type: 'int',
@@ -24377,7 +17477,7 @@ module.exports = {
24377 17477           allowedElements: [ {
24378 17478             nodeName: 'input',
24379 17479             properties: {
24380    -1               type: [ 'text', 'search', 'tel', 'url', 'email' ]
   -1 17480               type: 'text'
24381 17481             }
24382 17482           } ]
24383 17483         },
@@ -24537,9 +17637,7 @@ module.exports = {
24537 17637           attributes: {
24538 17638             allowed: [ 'aria-expanded', 'aria-errormessage' ]
24539 17639           },
24540    -1           owned: {
24541    -1             one: [ 'doc-biblioentry' ]
24542    -1           },
   -1 17640           owned: null,
24543 17641           nameFrom: [ 'author' ],
24544 17642           context: null,
24545 17643           unsupported: false,
@@ -24653,9 +17751,7 @@ module.exports = {
24653 17751           attributes: {
24654 17752             allowed: [ 'aria-expanded', 'aria-errormessage' ]
24655 17753           },
24656    -1           owned: {
24657    -1             one: [ 'doc-endnote' ]
24658    -1           },
   -1 17754           owned: [ 'doc-endnote' ],
24659 17755           namefrom: [ 'author' ],
24660 17756           context: null,
24661 17757           unsupported: false,
@@ -24929,7 +18025,7 @@ module.exports = {
24929 18025         },
24930 18026         figure: {
24931 18027           type: 'structure',
24932    -1           unsupported: false
   -1 18028           unsupported: true
24933 18029         },
24934 18030         form: {
24935 18031           type: 'landmark',
@@ -25045,7 +18141,7 @@ module.exports = {
25045 18141         listbox: {
25046 18142           type: 'composite',
25047 18143           attributes: {
25048    -1             allowed: [ 'aria-activedescendant', 'aria-multiselectable', 'aria-readonly', 'aria-required', 'aria-expanded', 'aria-orientation', 'aria-errormessage' ]
   -1 18144             allowed: [ 'aria-activedescendant', 'aria-multiselectable', 'aria-required', 'aria-expanded', 'aria-orientation', 'aria-errormessage' ]
25049 18145           },
25050 18146           owned: {
25051 18147             all: [ 'option' ]
@@ -25131,9 +18227,7 @@ module.exports = {
25131 18227           attributes: {
25132 18228             allowed: [ 'aria-activedescendant', 'aria-expanded', 'aria-orientation', 'aria-errormessage' ]
25133 18229           },
25134    -1           owned: {
25135    -1             one: [ 'menuitem', 'menuitemradio', 'menuitemcheckbox' ]
25136    -1           },
   -1 18230           owned: null,
25137 18231           nameFrom: [ 'author' ],
25138 18232           context: null,
25139 18233           unsupported: false,
@@ -25302,7 +18396,8 @@ module.exports = {
25302 18396         radio: {
25303 18397           type: 'widget',
25304 18398           attributes: {
25305    -1             allowed: [ 'aria-selected', 'aria-posinset', 'aria-setsize', 'aria-required', 'aria-errormessage', 'aria-checked' ]
   -1 18399             allowed: [ 'aria-selected', 'aria-posinset', 'aria-setsize', 'aria-required', 'aria-errormessage' ],
   -1 18400             required: [ 'aria-checked' ]
25306 18401           },
25307 18402           owned: null,
25308 18403           nameFrom: [ 'author', 'contents' ],
@@ -25378,7 +18473,7 @@ module.exports = {
25378 18473             all: [ 'row' ]
25379 18474           },
25380 18475           nameFrom: [ 'author', 'contents' ],
25381    -1           context: [ 'grid', 'table', 'treegrid' ],
   -1 18476           context: [ 'grid', 'table' ],
25382 18477           implicit: [ 'tbody', 'thead', 'tfoot' ],
25383 18478           unsupported: false
25384 18479         },
@@ -25396,8 +18491,8 @@ module.exports = {
25396 18491         scrollbar: {
25397 18492           type: 'widget',
25398 18493           attributes: {
25399    -1             required: [ 'aria-controls', 'aria-valuenow' ],
25400    -1             allowed: [ 'aria-valuetext', 'aria-orientation', 'aria-errormessage', 'aria-valuemax', 'aria-valuemin' ]
   -1 18494             required: [ 'aria-controls', 'aria-valuenow', 'aria-valuemax', 'aria-valuemin' ],
   -1 18495             allowed: [ 'aria-valuetext', 'aria-orientation', 'aria-errormessage' ]
25401 18496           },
25402 18497           owned: null,
25403 18498           nameFrom: [ 'author' ],
@@ -25464,8 +18559,8 @@ module.exports = {
25464 18559         slider: {
25465 18560           type: 'widget',
25466 18561           attributes: {
25467    -1             allowed: [ 'aria-valuetext', 'aria-orientation', 'aria-readonly', 'aria-errormessage', 'aria-valuemax', 'aria-valuemin' ],
25468    -1             required: [ 'aria-valuenow' ]
   -1 18562             allowed: [ 'aria-valuetext', 'aria-orientation', 'aria-readonly', 'aria-errormessage' ],
   -1 18563             required: [ 'aria-valuenow', 'aria-valuemax', 'aria-valuemin' ]
25469 18564           },
25470 18565           owned: null,
25471 18566           nameFrom: [ 'author' ],
@@ -25476,8 +18571,8 @@ module.exports = {
25476 18571         spinbutton: {
25477 18572           type: 'widget',
25478 18573           attributes: {
25479    -1             allowed: [ 'aria-valuetext', 'aria-required', 'aria-readonly', 'aria-errormessage', 'aria-valuemax', 'aria-valuemin' ],
25480    -1             required: [ 'aria-valuenow' ]
   -1 18574             allowed: [ 'aria-valuetext', 'aria-required', 'aria-readonly', 'aria-errormessage' ],
   -1 18575             required: [ 'aria-valuenow', 'aria-valuemax', 'aria-valuemin' ]
25481 18576           },
25482 18577           owned: null,
25483 18578           nameFrom: [ 'author' ],
@@ -25707,6 +18802,14 @@ module.exports = {
25707 18802           type: [ 'color', 'data', 'datatime', 'file', 'hidden', 'month', 'number', 'password', 'range', 'reset', 'submit', 'time', 'week' ]
25708 18803         }
25709 18804       }, {
   -1 18805         nodeName: 'input',
   -1 18806         attributes: {
   -1 18807           list: isNull
   -1 18808         },
   -1 18809         properties: {
   -1 18810           type: [ 'email', 'search', 'tel', 'url' ]
   -1 18811         }
   -1 18812       }, {
25710 18813         nodeName: 'link',
25711 18814         attributes: {
25712 18815           href: isNotNull
@@ -25738,11 +18841,6 @@ module.exports = {
25738 18841           href: isNull
25739 18842         }
25740 18843       }, {
25741    -1         nodeName: 'img',
25742    -1         attributes: {
25743    -1           alt: isNull
25744    -1         }
25745    -1       }, {
25746 18844         nodeName: [ 'abbr', 'address', 'canvas', 'div', 'p', 'pre', 'blockquote', 'ins', 'del', 'output', 'span', 'table', 'tbody', 'thead', 'tfoot', 'td', 'em', 'strong', 'small', 's', 'cite', 'q', 'dfn', 'abbr', 'time', 'code', 'var', 'samp', 'kbd', 'sub', 'sup', 'i', 'b', 'u', 'mark', 'ruby', 'rt', 'rp', 'bdi', 'bdo', 'br', 'wbr', 'th', 'tr' ]
25747 18845       } ];
25748 18846       lookupTable.evaluateRoleForElement = {
@@ -25768,17 +18866,11 @@ module.exports = {
25768 18866           return out;
25769 18867         },
25770 18868         IMG: function IMG(_ref16) {
25771    -1           var node = _ref16.node, role = _ref16.role, out = _ref16.out;
25772    -1           switch (node.alt) {
25773    -1            case null:
25774    -1             return out;
25775    -1 
25776    -1            case '':
25777    -1             return role === 'presentation' || role === 'none';
25778    -1 
25779    -1            default:
25780    -1             return role !== 'presentation' && role !== 'none';
   -1 18869           var node = _ref16.node, out = _ref16.out;
   -1 18870           if (node.alt) {
   -1 18871             return !out;
25781 18872           }
   -1 18873           return out;
25782 18874         },
25783 18875         INPUT: function INPUT(_ref17) {
25784 18876           var node = _ref17.node, role = _ref17.role, out = _ref17.out;
@@ -25799,12 +18891,6 @@ module.exports = {
25799 18891            case 'text':
25800 18892             return role === 'combobox' || role === 'searchbox' || role === 'spinbutton';
25801 18893 
25802    -1            case 'tel':
25803    -1            case 'url':
25804    -1            case 'search':
25805    -1            case 'email':
25806    -1             return role === 'combobox';
25807    -1 
25808 18894            default:
25809 18895             return false;
25810 18896           }
@@ -25842,13 +18928,11 @@ module.exports = {
25842 18928         }
25843 18929       };
25844 18930       lookupTable.rolesOfType = {
25845    -1         widget: [ 'button', 'checkbox', 'dialog', 'gridcell', 'link', 'log', 'marquee', 'menuitem', 'menuitemcheckbox', 'menuitemradio', 'option', 'progressbar', 'radio', 'scrollbar', 'slider', 'spinbutton', 'status', 'switch', 'tab', 'tabpanel', 'textbox', 'timer', 'tooltip', 'tree', 'treeitem' ]
   -1 18931         widget: [ 'button', 'checkbox', 'dialog', 'gridcell', 'heading', 'link', 'log', 'marquee', 'menuitem', 'menuitemcheckbox', 'menuitemradio', 'option', 'progressbar', 'radio', 'scrollbar', 'slider', 'spinbutton', 'status', 'switch', 'tab', 'tabpanel', 'textbox', 'timer', 'tooltip', 'tree', 'treeitem' ]
25846 18932       };
25847 18933       var color = {};
25848 18934       commons.color = color;
25849 18935       var dom = commons.dom = {};
25850    -1       var forms = {};
25851    -1       commons.forms = forms;
25852 18936       function matches(node, definition) {
25853 18937         return matches.fromDefinition(node, definition);
25854 18938       }
@@ -25882,7 +18966,7 @@ module.exports = {
25882 18966           if (!accessibleName) {
25883 18967             return accessibleNameAdd;
25884 18968           } else {
25885    -1             return ''.concat(accessibleName, ' ').concat(accessibleNameAdd);
   -1 18969             return accessibleName + ' ' + accessibleNameAdd;
25886 18970           }
25887 18971         }, '');
25888 18972       };
@@ -25909,7 +18993,7 @@ module.exports = {
25909 18993         }
25910 18994         if (node.hasAttributeNS('http://www.idpf.org/2007/ops', 'type')) {
25911 18995           var epubRoles = axe.utils.tokenList(node.getAttributeNS('http://www.idpf.org/2007/ops', 'type').toLowerCase()).map(function(role) {
25912    -1             return 'doc-'.concat(role);
   -1 18996             return 'doc-' + role;
25913 18997           });
25914 18998           roles = roles.concat(epubRoles);
25915 18999         }
@@ -25944,7 +19028,7 @@ module.exports = {
25944 19028         }
25945 19029         return dom.idrefs(actualNode, 'aria-owns').reduce(function(ownedElms, element) {
25946 19030           if (element) {
25947    -1             var virtualNode = axe.utils.getNodeFromTree(element);
   -1 19031             var virtualNode = axe.utils.getNodeFromTree(axe._tree[0], element);
25948 19032             ownedElms.push(virtualNode);
25949 19033           }
25950 19034           return ownedElms;
@@ -25972,27 +19056,15 @@ module.exports = {
25972 19056         }
25973 19057         return explicitRole || null;
25974 19058       };
25975    -1       var idRefsRegex = /^idrefs?$/;
25976    -1       function cacheIdRefs(node, refAttrs) {
25977    -1         if (node.hasAttribute) {
25978    -1           var idRefs = axe._cache.get('idRefs');
25979    -1           if (node.nodeName.toUpperCase() === 'LABEL' && node.hasAttribute('for')) {
25980    -1             idRefs[node.getAttribute('for')] = true;
25981    -1           }
25982    -1           for (var i = 0; i < refAttrs.length; ++i) {
25983    -1             var attr = refAttrs[i];
25984    -1             if (!node.hasAttribute(attr)) {
25985    -1               continue;
25986    -1             }
25987    -1             var attrValue = node.getAttribute(attr);
25988    -1             var tokens = axe.utils.tokenList(attrValue);
25989    -1             for (var k = 0; k < tokens.length; ++k) {
25990    -1               idRefs[tokens[k]] = true;
25991    -1             }
25992    -1           }
   -1 19059       function findDomNode(node, functor) {
   -1 19060         if (functor(node)) {
   -1 19061           return node;
25993 19062         }
25994    -1         for (var _i = 0; _i < node.children.length; _i++) {
25995    -1           cacheIdRefs(node.children[_i], refAttrs);
   -1 19063         for (var i = 0; i < node.children.length; i++) {
   -1 19064           var out = findDomNode(node.children[i], functor);
   -1 19065           if (out) {
   -1 19066             return out;
   -1 19067           }
25996 19068         }
25997 19069       }
25998 19070       aria.isAccessibleRef = function isAccessibleRef(node) {
@@ -26000,15 +19072,28 @@ module.exports = {
26000 19072         var root = dom.getRootNode(node);
26001 19073         root = root.documentElement || root;
26002 19074         var id = node.id;
26003    -1         if (!axe._cache.get('idRefs')) {
26004    -1           axe._cache.set('idRefs', {});
26005    -1           var refAttrs = Object.keys(aria.lookupTable.attributes).filter(function(attr) {
26006    -1             var type = aria.lookupTable.attributes[attr].type;
26007    -1             return idRefsRegex.test(type);
   -1 19075         var refAttrs = Object.keys(aria.lookupTable.attributes).filter(function(attr) {
   -1 19076           var type = aria.lookupTable.attributes[attr].type;
   -1 19077           return /^idrefs?$/.test(type);
   -1 19078         });
   -1 19079         var refElm = findDomNode(root, function(elm) {
   -1 19080           if (elm.nodeType !== 1) {
   -1 19081             return;
   -1 19082           }
   -1 19083           if (elm.nodeName.toUpperCase() === 'LABEL' && elm.getAttribute('for') === id) {
   -1 19084             return true;
   -1 19085           }
   -1 19086           return refAttrs.filter(function(attr) {
   -1 19087             return elm.hasAttribute(attr);
   -1 19088           }).some(function(attr) {
   -1 19089             var attrValue = elm.getAttribute(attr);
   -1 19090             if (aria.lookupTable.attributes[attr].type === 'idref') {
   -1 19091               return attrValue === id;
   -1 19092             }
   -1 19093             return axe.utils.tokenList(attrValue).includes(id);
26008 19094           });
26009    -1           cacheIdRefs(root, refAttrs);
26010    -1         }
26011    -1         return axe._cache.get('idRefs')[id] === true;
   -1 19095         });
   -1 19096         return typeof refElm !== 'undefined';
26012 19097       };
26013 19098       aria.isAriaRoleAllowedOnElement = function isAriaRoleAllowedOnElement(node, role) {
26014 19099         var nodeName = node.nodeName.toUpperCase();
@@ -26039,11 +19124,11 @@ module.exports = {
26039 19124       };
26040 19125       aria.labelVirtual = function(_ref25) {
26041 19126         var actualNode = _ref25.actualNode;
26042    -1         var ref, candidate;
   -1 19127         var ref = void 0, candidate = void 0;
26043 19128         if (actualNode.getAttribute('aria-labelledby')) {
26044 19129           ref = dom.idrefs(actualNode, 'aria-labelledby');
26045 19130           candidate = ref.map(function(thing) {
26046    -1             var vNode = axe.utils.getNodeFromTree(thing);
   -1 19131             var vNode = axe.utils.getNodeFromTree(axe._tree[0], thing);
26047 19132             return vNode ? text.visibleVirtual(vNode, true) : '';
26048 19133           }).join(' ').trim();
26049 19134           if (candidate) {
@@ -26060,7 +19145,7 @@ module.exports = {
26060 19145         return null;
26061 19146       };
26062 19147       aria.label = function(node) {
26063    -1         node = axe.utils.getNodeFromTree(node);
   -1 19148         node = axe.utils.getNodeFromTree(axe._tree[0], node);
26064 19149         return aria.labelVirtual(node);
26065 19150       };
26066 19151       aria.namedFromContents = function namedFromContents(node) {
@@ -26080,7 +19165,7 @@ module.exports = {
26080 19165         return !roleDef || [ 'presentation', 'none' ].includes(role);
26081 19166       };
26082 19167       aria.isValidRole = function(role) {
26083    -1         var _ref27 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, allowAbstract = _ref27.allowAbstract, _ref27$flagUnsupporte = _ref27.flagUnsupported, flagUnsupported = _ref27$flagUnsupporte === void 0 ? false : _ref27$flagUnsupporte;
   -1 19168         var _ref27 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, allowAbstract = _ref27.allowAbstract, _ref27$flagUnsupporte = _ref27.flagUnsupported, flagUnsupported = _ref27$flagUnsupporte === undefined ? false : _ref27$flagUnsupporte;
26084 19169         var roleDefinition = aria.lookupTable.role[role];
26085 19170         var isRoleUnsupported = roleDefinition ? roleDefinition.unsupported : false;
26086 19171         if (!roleDefinition || flagUnsupported && isRoleUnsupported) {
@@ -26168,7 +19253,7 @@ module.exports = {
26168 19253         if (!availableImplicitRoles.length) {
26169 19254           return null;
26170 19255         }
26171    -1         var nodeAttributes = axe.utils.getNodeAttributes(node);
   -1 19256         var nodeAttributes = node.attributes;
26172 19257         var ariaAttributes = [];
26173 19258         for (var i = 0, j = nodeAttributes.length; i < j; i++) {
26174 19259           var attr = nodeAttributes[i];
@@ -26219,20 +19304,6 @@ module.exports = {
26219 19304           return /^[-+]?[0-9]+$/.test(value);
26220 19305         }
26221 19306       };
26222    -1       color.centerPointOfRect = function centerPointOfRect(rect) {
26223    -1         if (rect.left > window.innerWidth) {
26224    -1           return undefined;
26225    -1         }
26226    -1         if (rect.top > window.innerHeight) {
26227    -1           return undefined;
26228    -1         }
26229    -1         var x = Math.min(Math.ceil(rect.left + rect.width / 2), window.innerWidth - 1);
26230    -1         var y = Math.min(Math.ceil(rect.top + rect.height / 2), window.innerHeight - 1);
26231    -1         return {
26232    -1           x: x,
26233    -1           y: y
26234    -1         };
26235    -1       };
26236 19307       color.Color = function(red, green, blue, alpha) {
26237 19308         this.red = red;
26238 19309         this.green = green;
@@ -26267,7 +19338,7 @@ module.exports = {
26267 19338             this.red = parseInt(match[1], 10);
26268 19339             this.green = parseInt(match[2], 10);
26269 19340             this.blue = parseInt(match[3], 10);
26270    -1             this.alpha = Math.round(parseFloat(match[4]) * 100) / 100;
   -1 19341             this.alpha = parseFloat(match[4]);
26271 19342             return;
26272 19343           }
26273 19344         };
@@ -26310,22 +19381,6 @@ module.exports = {
26310 19381           expectedContrastRatio: expectedContrastRatio
26311 19382         };
26312 19383       };
26313    -1       color.elementHasImage = function elementHasImage(elm, style) {
26314    -1         var graphicNodes = [ 'IMG', 'CANVAS', 'OBJECT', 'IFRAME', 'VIDEO', 'SVG' ];
26315    -1         var nodeName = elm.nodeName.toUpperCase();
26316    -1         if (graphicNodes.includes(nodeName)) {
26317    -1           axe.commons.color.incompleteData.set('bgColor', 'imgNode');
26318    -1           return true;
26319    -1         }
26320    -1         style = style || window.getComputedStyle(elm);
26321    -1         var bgImageStyle = style.getPropertyValue('background-image');
26322    -1         var hasBgImage = bgImageStyle !== 'none';
26323    -1         if (hasBgImage) {
26324    -1           var hasGradient = /gradient/.test(bgImageStyle);
26325    -1           axe.commons.color.incompleteData.set('bgColor', hasGradient ? 'bgGradient' : 'bgImage');
26326    -1         }
26327    -1         return hasBgImage;
26328    -1       };
26329 19384       function _getFonts(style) {
26330 19385         return style.getPropertyValue('font-family').split(/[,;]/g).map(function(font) {
26331 19386           return font.trim().toLowerCase();
@@ -26358,93 +19413,124 @@ module.exports = {
26358 19413         return hasStyle;
26359 19414       }
26360 19415       color.elementIsDistinct = elementIsDistinct;
26361    -1       color.getBackgroundColor = function getBackgroundColor(elm) {
26362    -1         var bgElms = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
26363    -1         var noScroll = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
26364    -1         if (noScroll !== true) {
26365    -1           var clientHeight = elm.getBoundingClientRect().height;
26366    -1           var alignToTop = clientHeight - 2 >= window.innerHeight * 2;
26367    -1           elm.scrollIntoView(alignToTop);
26368    -1           var center, scrollParent;
26369    -1           do {
26370    -1             var rect = elm.getBoundingClientRect();
26371    -1             var x = 'x' in rect ? rect.x : rect.left;
26372    -1             center = x + rect.width / 2;
26373    -1             if (center < 0) {
26374    -1               scrollParent = getScrollParent(elm);
26375    -1               scrollParent.scrollLeft = 0;
26376    -1             }
26377    -1           } while (center < 0 && scrollParent !== document.documentElement);
   -1 19416       var graphicNodes = [ 'IMG', 'CANVAS', 'OBJECT', 'IFRAME', 'VIDEO', 'SVG' ];
   -1 19417       function elmHasImage(elm, style) {
   -1 19418         var nodeName = elm.nodeName.toUpperCase();
   -1 19419         if (graphicNodes.includes(nodeName)) {
   -1 19420           axe.commons.color.incompleteData.set('bgColor', 'imgNode');
   -1 19421           return true;
26378 19422         }
26379    -1         var bgColors = [];
26380    -1         var elmStack = color.getBackgroundStack(elm);
26381    -1         (elmStack || []).some(function(bgElm) {
26382    -1           var bgElmStyle = window.getComputedStyle(bgElm);
26383    -1           var bgColor = color.getOwnBackgroundColor(bgElmStyle);
26384    -1           if (elmPartiallyObscured(elm, bgElm, bgColor) || color.elementHasImage(bgElm, bgElmStyle)) {
26385    -1             bgColors = null;
26386    -1             bgElms.push(bgElm);
26387    -1             return true;
26388    -1           }
26389    -1           if (bgColor.alpha !== 0) {
26390    -1             bgElms.push(bgElm);
26391    -1             bgColors.push(bgColor);
26392    -1             return bgColor.alpha === 1;
26393    -1           } else {
26394    -1             return false;
26395    -1           }
26396    -1         });
26397    -1         if (bgColors !== null && elmStack !== null) {
26398    -1           bgColors.push(new color.Color(255, 255, 255, 1));
26399    -1           var colors = bgColors.reduce(color.flattenColors);
26400    -1           return colors;
   -1 19423         style = style || window.getComputedStyle(elm);
   -1 19424         var bgImageStyle = style.getPropertyValue('background-image');
   -1 19425         var hasBgImage = bgImageStyle !== 'none';
   -1 19426         if (hasBgImage) {
   -1 19427           var hasGradient = /gradient/.test(bgImageStyle);
   -1 19428           axe.commons.color.incompleteData.set('bgColor', hasGradient ? 'bgGradient' : 'bgImage');
26401 19429         }
26402    -1         return null;
26403    -1       };
26404    -1       color.getBackgroundStack = function getBackgroundStack(elm) {
26405    -1         var elmStack = color.filteredRectStack(elm);
26406    -1         if (elmStack === null) {
26407    -1           return null;
   -1 19430         return hasBgImage;
   -1 19431       }
   -1 19432       function getBgColor(elm, elmStyle) {
   -1 19433         elmStyle = elmStyle || window.getComputedStyle(elm);
   -1 19434         var bgColor = new color.Color();
   -1 19435         bgColor.parseRgbString(elmStyle.getPropertyValue('background-color'));
   -1 19436         if (bgColor.alpha !== 0) {
   -1 19437           var opacity = elmStyle.getPropertyValue('opacity');
   -1 19438           bgColor.alpha = bgColor.alpha * opacity;
26408 19439         }
26409    -1         elmStack = includeMissingElements(elmStack, elm);
26410    -1         elmStack = dom.reduceToElementsBelowFloating(elmStack, elm);
26411    -1         elmStack = sortPageBackground(elmStack);
26412    -1         var elmIndex = elmStack.indexOf(elm);
26413    -1         if (calculateObscuringElement(elmIndex, elmStack, elm)) {
26414    -1           axe.commons.color.incompleteData.set('bgColor', 'bgOverlap');
26415    -1           return null;
   -1 19440         return bgColor;
   -1 19441       }
   -1 19442       function contentOverlapping(targetElement, bgNode) {
   -1 19443         var targetRect = targetElement.getClientRects()[0];
   -1 19444         var obscuringElements = dom.shadowElementsFromPoint(targetRect.left, targetRect.top);
   -1 19445         if (obscuringElements) {
   -1 19446           for (var i = 0; i < obscuringElements.length; i++) {
   -1 19447             if (obscuringElements[i] !== targetElement && obscuringElements[i] === bgNode) {
   -1 19448               return true;
   -1 19449             }
   -1 19450           }
26416 19451         }
26417    -1         return elmIndex !== -1 ? elmStack : null;
26418    -1       };
26419    -1       color.filteredRectStack = function filteredRectStack(elm) {
26420    -1         var rectStack = color.getRectStack(elm);
26421    -1         if (rectStack && rectStack.length === 1) {
26422    -1           return rectStack[0];
   -1 19452         return false;
   -1 19453       }
   -1 19454       function calculateObscuringAlpha(elmIndex, elmStack, originalElm) {
   -1 19455         var totalAlpha = 0;
   -1 19456         if (elmIndex > 0) {
   -1 19457           for (var i = elmIndex - 1; i >= 0; i--) {
   -1 19458             var bgElm = elmStack[i];
   -1 19459             var bgElmStyle = window.getComputedStyle(bgElm);
   -1 19460             var bgColor = getBgColor(bgElm, bgElmStyle);
   -1 19461             if (bgColor.alpha && contentOverlapping(originalElm, bgElm)) {
   -1 19462               totalAlpha += bgColor.alpha;
   -1 19463             } else {
   -1 19464               elmStack.splice(i, 1);
   -1 19465             }
   -1 19466           }
26423 19467         }
26424    -1         if (rectStack && rectStack.length > 1) {
26425    -1           var boundingStack = rectStack.shift();
26426    -1           var isSame;
26427    -1           includeMissingElements(boundingStack, elm);
26428    -1           rectStack.forEach(function(rectList, index) {
26429    -1             if (index === 0) {
26430    -1               return;
   -1 19468         return totalAlpha;
   -1 19469       }
   -1 19470       function elmPartiallyObscured(elm, bgElm, bgColor) {
   -1 19471         var obscured = elm !== bgElm && !dom.visuallyContains(elm, bgElm) && bgColor.alpha !== 0;
   -1 19472         if (obscured) {
   -1 19473           axe.commons.color.incompleteData.set('bgColor', 'elmPartiallyObscured');
   -1 19474         }
   -1 19475         return obscured;
   -1 19476       }
   -1 19477       function includeMissingElements(elmStack, elm) {
   -1 19478         var elementMap = {
   -1 19479           TD: [ 'TR', 'TBODY' ],
   -1 19480           TH: [ 'TR', 'THEAD' ],
   -1 19481           INPUT: [ 'LABEL' ]
   -1 19482         };
   -1 19483         var tagArray = elmStack.map(function(elm) {
   -1 19484           return elm.nodeName;
   -1 19485         });
   -1 19486         var bgNodes = elmStack;
   -1 19487         for (var candidate in elementMap) {
   -1 19488           if (tagArray.includes(candidate)) {
   -1 19489             for (var candidateIndex in elementMap[candidate]) {
   -1 19490               if (candidate.hasOwnProperty(candidateIndex)) {
   -1 19491                 var ancestorMatch = axe.commons.dom.findUp(elm, elementMap[candidate][candidateIndex]);
   -1 19492                 if (ancestorMatch && elmStack.indexOf(ancestorMatch) === -1) {
   -1 19493                   var overlaps = axe.commons.dom.visuallyOverlaps(elm.getBoundingClientRect(), ancestorMatch);
   -1 19494                   if (overlaps) {
   -1 19495                     bgNodes.splice(tagArray.indexOf(candidate) + 1, 0, ancestorMatch);
   -1 19496                   }
   -1 19497                 }
   -1 19498                 if (elm.nodeName === elementMap[candidate][candidateIndex] && tagArray.indexOf(elm.nodeName) === -1) {
   -1 19499                   bgNodes.splice(tagArray.indexOf(candidate) + 1, 0, elm);
   -1 19500                 }
   -1 19501               }
26431 19502             }
26432    -1             var rectA = rectStack[index - 1], rectB = rectStack[index];
26433    -1             isSame = rectA.every(function(element, elementIndex) {
26434    -1               return element === rectB[elementIndex];
26435    -1             }) || boundingStack.includes(elm);
26436    -1           });
26437    -1           if (!isSame) {
26438    -1             axe.commons.color.incompleteData.set('bgColor', 'elmPartiallyObscuring');
26439    -1             return null;
26440 19503           }
26441    -1           return rectStack[0];
26442 19504         }
26443    -1         axe.commons.color.incompleteData.set('bgColor', 'outsideViewport');
26444    -1         return null;
   -1 19505         return bgNodes;
   -1 19506       }
   -1 19507       function sortPageBackground(elmStack) {
   -1 19508         var bodyIndex = elmStack.indexOf(document.body);
   -1 19509         var bgNodes = elmStack;
   -1 19510         if (bodyIndex > 1 && !elmHasImage(document.documentElement) && getBgColor(document.documentElement).alpha === 0) {
   -1 19511           bgNodes.splice(bodyIndex, 1);
   -1 19512           bgNodes.splice(elmStack.indexOf(document.documentElement), 1);
   -1 19513           bgNodes.push(document.body);
   -1 19514         }
   -1 19515         return bgNodes;
   -1 19516       }
   -1 19517       color.getCoords = function(rect) {
   -1 19518         var x = void 0, y = void 0;
   -1 19519         if (rect.left > window.innerWidth) {
   -1 19520           return;
   -1 19521         }
   -1 19522         if (rect.top > window.innerHeight) {
   -1 19523           return;
   -1 19524         }
   -1 19525         x = Math.min(Math.ceil(rect.left + rect.width / 2), window.innerWidth - 1);
   -1 19526         y = Math.min(Math.ceil(rect.top + rect.height / 2), window.innerHeight - 1);
   -1 19527         return {
   -1 19528           x: x,
   -1 19529           y: y
   -1 19530         };
26445 19531       };
26446 19532       color.getRectStack = function(elm) {
26447    -1         var boundingCoords = axe.commons.color.centerPointOfRect(elm.getBoundingClientRect());
   -1 19533         var boundingCoords = color.getCoords(elm.getBoundingClientRect());
26448 19534         if (!boundingCoords) {
26449 19535           return null;
26450 19536         }
@@ -26456,7 +19542,7 @@ module.exports = {
26456 19542         var filteredArr = rects.filter(function(rect) {
26457 19543           return rect.width && rect.width > 0;
26458 19544         }).map(function(rect) {
26459    -1           var coords = axe.commons.color.centerPointOfRect(rect);
   -1 19545           var coords = color.getCoords(rect);
26460 19546           if (coords) {
26461 19547             return dom.shadowElementsFromPoint(coords.x, coords.y);
26462 19548           }
@@ -26469,130 +19555,94 @@ module.exports = {
26469 19555         filteredArr.splice(0, 0, boundingStack);
26470 19556         return filteredArr;
26471 19557       };
26472    -1       function sortPageBackground(elmStack) {
26473    -1         var bodyIndex = elmStack.indexOf(document.body);
26474    -1         var bgNodes = elmStack;
26475    -1         var sortBodyElement = bodyIndex > 1 || bodyIndex === -1;
26476    -1         if (sortBodyElement && !color.elementHasImage(document.documentElement) && color.getOwnBackgroundColor(window.getComputedStyle(document.documentElement)).alpha === 0) {
26477    -1           if (bodyIndex > 1) {
26478    -1             bgNodes.splice(bodyIndex, 1);
26479    -1           }
26480    -1           bgNodes.splice(elmStack.indexOf(document.documentElement), 1);
26481    -1           bgNodes.push(document.body);
26482    -1         }
26483    -1         return bgNodes;
26484    -1       }
26485    -1       function includeMissingElements(elmStack, elm) {
26486    -1         var nodeName = elm.nodeName.toUpperCase();
26487    -1         var elementMap = {
26488    -1           TD: [ 'TR', 'THEAD', 'TBODY', 'TFOOT' ],
26489    -1           TH: [ 'TR', 'THEAD', 'TBODY', 'TFOOT' ],
26490    -1           INPUT: [ 'LABEL' ]
26491    -1         };
26492    -1         var tagArray = elmStack.map(function(elm) {
26493    -1           return elm.nodeName.toUpperCase();
26494    -1         });
26495    -1         var bgNodes = elmStack;
26496    -1         for (var candidate in elementMap) {
26497    -1           if (tagArray.includes(candidate)) {
26498    -1             for (var candidateIndex = 0; candidateIndex < elementMap[candidate].length; candidateIndex++) {
26499    -1               var ancestorMatch = axe.commons.dom.findUp(elm, elementMap[candidate][candidateIndex]);
26500    -1               if (ancestorMatch && elmStack.indexOf(ancestorMatch) === -1) {
26501    -1                 var overlaps = axe.commons.dom.visuallyOverlaps(elm.getBoundingClientRect(), ancestorMatch);
26502    -1                 if (overlaps) {
26503    -1                   bgNodes.splice(tagArray.indexOf(candidate) + 1, 0, ancestorMatch);
26504    -1                 }
26505    -1               }
26506    -1               if (nodeName === elementMap[candidate][candidateIndex] && tagArray.indexOf(nodeName) === -1) {
26507    -1                 bgNodes.splice(tagArray.indexOf(candidate) + 1, 0, elm);
26508    -1               }
   -1 19558       color.filteredRectStack = function(elm) {
   -1 19559         var rectStack = color.getRectStack(elm);
   -1 19560         if (rectStack && rectStack.length === 1) {
   -1 19561           return rectStack[0];
   -1 19562         } else if (rectStack && rectStack.length > 1) {
   -1 19563           var boundingStack = rectStack.shift();
   -1 19564           var isSame = void 0;
   -1 19565           rectStack.forEach(function(rectList, index) {
   -1 19566             if (index === 0) {
   -1 19567               return;
26509 19568             }
   -1 19569             var rectA = rectStack[index - 1], rectB = rectStack[index];
   -1 19570             isSame = rectA.every(function(element, elementIndex) {
   -1 19571               return element === rectB[elementIndex];
   -1 19572             }) || boundingStack.includes(elm);
   -1 19573           });
   -1 19574           if (!isSame) {
   -1 19575             axe.commons.color.incompleteData.set('bgColor', 'elmPartiallyObscuring');
   -1 19576             return null;
26510 19577           }
   -1 19578           return rectStack[0];
   -1 19579         } else {
   -1 19580           axe.commons.color.incompleteData.set('bgColor', 'outsideViewport');
   -1 19581           return null;
26511 19582         }
26512    -1         return bgNodes;
26513    -1       }
26514    -1       function elmPartiallyObscured(elm, bgElm, bgColor) {
26515    -1         var obscured = elm !== bgElm && !dom.visuallyContains(elm, bgElm) && bgColor.alpha !== 0;
26516    -1         if (obscured) {
26517    -1           axe.commons.color.incompleteData.set('bgColor', 'elmPartiallyObscured');
26518    -1         }
26519    -1         return obscured;
26520    -1       }
26521    -1       function calculateObscuringElement(elmIndex, elmStack, originalElm) {
26522    -1         if (elmIndex > 0) {
26523    -1           for (var i = elmIndex - 1; i >= 0; i--) {
26524    -1             var bgElm = elmStack[i];
26525    -1             if (contentOverlapping(originalElm, bgElm)) {
26526    -1               return true;
26527    -1             } else {
26528    -1               elmStack.splice(i, 1);
26529    -1             }
26530    -1           }
   -1 19583       };
   -1 19584       color.getBackgroundStack = function(elm) {
   -1 19585         var elmStack = color.filteredRectStack(elm);
   -1 19586         if (elmStack === null) {
   -1 19587           return null;
26531 19588         }
26532    -1         return false;
26533    -1       }
26534    -1       function contentOverlapping(targetElement, bgNode) {
26535    -1         var targetRect = targetElement.getClientRects()[0];
26536    -1         var obscuringElements = dom.shadowElementsFromPoint(targetRect.left, targetRect.top);
26537    -1         if (obscuringElements) {
26538    -1           for (var i = 0; i < obscuringElements.length; i++) {
26539    -1             if (obscuringElements[i] !== targetElement && obscuringElements[i] === bgNode) {
26540    -1               return true;
26541    -1             }
26542    -1           }
   -1 19589         elmStack = includeMissingElements(elmStack, elm);
   -1 19590         elmStack = dom.reduceToElementsBelowFloating(elmStack, elm);
   -1 19591         elmStack = sortPageBackground(elmStack);
   -1 19592         var elmIndex = elmStack.indexOf(elm);
   -1 19593         if (calculateObscuringAlpha(elmIndex, elmStack, elm) >= .99) {
   -1 19594           axe.commons.color.incompleteData.set('bgColor', 'bgOverlap');
   -1 19595           return null;
26543 19596         }
26544    -1         return false;
26545    -1       }
26546    -1       function getScrollParent(element, includeHidden) {
26547    -1         var style = getComputedStyle(element);
26548    -1         var excludeStaticParent = style.position === 'absolute';
26549    -1         var overflowRegex = includeHidden ? /(auto|scroll|hidden)/ : /(auto|scroll)/;
26550    -1         if (style.position === 'fixed') {
26551    -1           return document.documentElement;
   -1 19597         return elmIndex !== -1 ? elmStack : null;
   -1 19598       };
   -1 19599       color.getBackgroundColor = function(elm) {
   -1 19600         var bgElms = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
   -1 19601         var noScroll = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
   -1 19602         if (noScroll !== true) {
   -1 19603           var clientHeight = elm.getBoundingClientRect().height;
   -1 19604           var alignToTop = clientHeight - 2 >= window.innerHeight * 2;
   -1 19605           elm.scrollIntoView(alignToTop);
26552 19606         }
26553    -1         for (var parent = element; parent = parent.parentElement; ) {
26554    -1           style = getComputedStyle(parent);
26555    -1           if (excludeStaticParent && style.position === 'static') {
26556    -1             continue;
   -1 19607         var bgColors = [];
   -1 19608         var elmStack = color.getBackgroundStack(elm);
   -1 19609         (elmStack || []).some(function(bgElm) {
   -1 19610           var bgElmStyle = window.getComputedStyle(bgElm);
   -1 19611           var bgColor = getBgColor(bgElm, bgElmStyle);
   -1 19612           if (elmPartiallyObscured(elm, bgElm, bgColor) || elmHasImage(bgElm, bgElmStyle)) {
   -1 19613             bgColors = null;
   -1 19614             bgElms.push(bgElm);
   -1 19615             return true;
26557 19616           }
26558    -1           if (overflowRegex.test(style.overflow + style.overflowY + style.overflowX)) {
26559    -1             return parent;
   -1 19617           if (bgColor.alpha !== 0) {
   -1 19618             bgElms.push(bgElm);
   -1 19619             bgColors.push(bgColor);
   -1 19620             return bgColor.alpha === 1;
   -1 19621           } else {
   -1 19622             return false;
26560 19623           }
   -1 19624         });
   -1 19625         if (bgColors !== null && elmStack !== null) {
   -1 19626           bgColors.push(new color.Color(255, 255, 255, 1));
   -1 19627           var colors = bgColors.reduce(color.flattenColors);
   -1 19628           return colors;
26561 19629         }
26562    -1         return document.documentElement;
26563    -1       }
   -1 19630         return null;
   -1 19631       };
26564 19632       dom.isOpaque = function(node) {
26565 19633         var style = window.getComputedStyle(node);
26566    -1         return color.elementHasImage(node, style) || color.getOwnBackgroundColor(style).alpha === 1;
   -1 19634         return elmHasImage(node, style) || getBgColor(node, style).alpha === 1;
26567 19635       };
26568    -1       function getOpacity(node) {
26569    -1         if (!node) {
26570    -1           return 1;
26571    -1         }
26572    -1         var vNode = axe.utils.getNodeFromTree(node);
26573    -1         if (vNode && vNode._opacity !== undefined && vNode._opacity !== null) {
26574    -1           return vNode._opacity;
26575    -1         }
26576    -1         var nodeStyle = window.getComputedStyle(node);
26577    -1         var opacity = nodeStyle.getPropertyValue('opacity');
26578    -1         var finalOpacity = opacity * getOpacity(node.parentElement);
26579    -1         if (vNode) {
26580    -1           vNode._opacity = finalOpacity;
26581    -1         }
26582    -1         return finalOpacity;
26583    -1       }
26584    -1       color.getForegroundColor = function(node, noScroll, bgColor) {
   -1 19636       color.getForegroundColor = function(node, noScroll) {
26585 19637         var nodeStyle = window.getComputedStyle(node);
26586 19638         var fgColor = new color.Color();
26587 19639         fgColor.parseRgbString(nodeStyle.getPropertyValue('color'));
26588    -1         var opacity = getOpacity(node);
   -1 19640         var opacity = nodeStyle.getPropertyValue('opacity');
26589 19641         fgColor.alpha = fgColor.alpha * opacity;
26590 19642         if (fgColor.alpha === 1) {
26591 19643           return fgColor;
26592 19644         }
26593    -1         if (!bgColor) {
26594    -1           bgColor = color.getBackgroundColor(node, [], noScroll);
26595    -1         }
   -1 19645         var bgColor = color.getBackgroundColor(node, [], noScroll);
26596 19646         if (bgColor === null) {
26597 19647           var reason = axe.commons.color.incompleteData.get('bgColor');
26598 19648           axe.commons.color.incompleteData.set('fgColor', reason);
@@ -26600,15 +19650,6 @@ module.exports = {
26600 19650         }
26601 19651         return color.flattenColors(fgColor, bgColor);
26602 19652       };
26603    -1       color.getOwnBackgroundColor = function getOwnBackgroundColor(elmStyle) {
26604    -1         var bgColor = new color.Color();
26605    -1         bgColor.parseRgbString(elmStyle.getPropertyValue('background-color'));
26606    -1         if (bgColor.alpha !== 0) {
26607    -1           var opacity = elmStyle.getPropertyValue('opacity');
26608    -1           bgColor.alpha = bgColor.alpha * opacity;
26609    -1         }
26610    -1         return bgColor;
26611    -1       };
26612 19653       color.incompleteData = function() {
26613 19654         var data = {};
26614 19655         return {
@@ -26646,8 +19687,8 @@ module.exports = {
26646 19687         return finalElements;
26647 19688       };
26648 19689       dom.findElmsInContext = function(_ref28) {
26649    -1         var context = _ref28.context, value = _ref28.value, attr = _ref28.attr, _ref28$elm = _ref28.elm, elm = _ref28$elm === void 0 ? '' : _ref28$elm;
26650    -1         var root;
   -1 19690         var context = _ref28.context, value = _ref28.value, attr = _ref28.attr, _ref28$elm = _ref28.elm, elm = _ref28$elm === undefined ? '' : _ref28$elm;
   -1 19691         var root = void 0;
26651 19692         var escapedValue = axe.utils.escapeSelector(value);
26652 19693         if (context.nodeType === 9 || context.nodeType === 11) {
26653 19694           root = context;
@@ -26657,10 +19698,10 @@ module.exports = {
26657 19698         return Array.from(root.querySelectorAll(elm + '[' + attr + '=' + escapedValue + ']'));
26658 19699       };
26659 19700       dom.findUp = function(element, target) {
26660    -1         return dom.findUpVirtual(axe.utils.getNodeFromTree(element), target);
   -1 19701         return dom.findUpVirtual(axe.utils.getNodeFromTree(axe._tree[0], element), target);
26661 19702       };
26662 19703       dom.findUpVirtual = function(element, target) {
26663    -1         var parent;
   -1 19704         var parent = void 0;
26664 19705         parent = element.actualNode;
26665 19706         if (!element.shadowId && typeof element.actualNode.closest === 'function') {
26666 19707           var match = element.actualNode.closest(target);
@@ -26675,9 +19716,6 @@ module.exports = {
26675 19716             parent = parent.host;
26676 19717           }
26677 19718         } while (parent && !axe.utils.matchesSelector(parent, target) && parent !== document.documentElement);
26678    -1         if (!parent) {
26679    -1           return null;
26680    -1         }
26681 19719         if (!axe.utils.matchesSelector(parent, target)) {
26682 19720           return null;
26683 19721         }
@@ -26786,14 +19824,14 @@ module.exports = {
26786 19824           });
26787 19825         }
26788 19826       }
26789    -1       dom.hasContentVirtual = function(elm, noRecursion, ignoreAria) {
26790    -1         return hasChildTextNodes(elm) || dom.isVisualContent(elm.actualNode) || !ignoreAria && !!aria.labelVirtual(elm) || !noRecursion && elm.children.some(function(child) {
   -1 19827       dom.hasContentVirtual = function(elm, noRecursion) {
   -1 19828         return hasChildTextNodes(elm) || dom.isVisualContent(elm.actualNode) || !!aria.labelVirtual(elm) || !noRecursion && elm.children.some(function(child) {
26791 19829           return child.actualNode.nodeType === 1 && dom.hasContentVirtual(child);
26792 19830         });
26793 19831       };
26794    -1       dom.hasContent = function hasContent(elm, noRecursion, ignoreAria) {
26795    -1         elm = axe.utils.getNodeFromTree(elm);
26796    -1         return dom.hasContentVirtual(elm, noRecursion, ignoreAria);
   -1 19832       dom.hasContent = function hasContent(elm, noRecursion) {
   -1 19833         elm = axe.utils.getNodeFromTree(axe._tree[0], elm);
   -1 19834         return dom.hasContentVirtual(elm, noRecursion);
26797 19835       };
26798 19836       dom.idrefs = function(node, attr) {
26799 19837         'use strict';
@@ -26807,7 +19845,7 @@ module.exports = {
26807 19845         return result;
26808 19846       };
26809 19847       function focusDisabled(el) {
26810    -1         return el.disabled || el.nodeName.toUpperCase() !== 'AREA' && dom.isHiddenWithCSS(el);
   -1 19848         return el.disabled || dom.isHiddenWithCSS(el) && el.nodeName.toUpperCase() !== 'AREA';
26811 19849       }
26812 19850       dom.isFocusable = function(el) {
26813 19851         'use strict';
@@ -26847,20 +19885,9 @@ module.exports = {
26847 19885         return false;
26848 19886       };
26849 19887       dom.insertedIntoFocusOrder = function(el) {
26850    -1         var tabIndex = parseInt(el.getAttribute('tabindex'), 10);
26851    -1         return tabIndex > -1 && dom.isFocusable(el) && !dom.isNativelyFocusable(el);
   -1 19888         return el.tabIndex > -1 && dom.isFocusable(el) && !dom.isNativelyFocusable(el);
26852 19889       };
26853 19890       dom.isHiddenWithCSS = function isHiddenWithCSS(el, descendentVisibilityValue) {
26854    -1         var vNode = axe.utils.getNodeFromTree(el);
26855    -1         if (!vNode) {
26856    -1           return _isHiddenWithCSS(el, descendentVisibilityValue);
26857    -1         }
26858    -1         if (vNode._isHiddenWithCSS === void 0) {
26859    -1           vNode._isHiddenWithCSS = _isHiddenWithCSS(el, descendentVisibilityValue);
26860    -1         }
26861    -1         return vNode._isHiddenWithCSS;
26862    -1       };
26863    -1       function _isHiddenWithCSS(el, descendentVisibilityValue) {
26864 19891         if (el.nodeType === 9) {
26865 19892           return false;
26866 19893         }
@@ -26891,7 +19918,7 @@ module.exports = {
26891 19918           return dom.isHiddenWithCSS(parent, visibilityValue);
26892 19919         }
26893 19920         return false;
26894    -1       }
   -1 19921       };
26895 19922       dom.isHTML5 = function(doc) {
26896 19923         var node = doc.doctype;
26897 19924         if (node === null) {
@@ -26916,7 +19943,7 @@ module.exports = {
26916 19943         while (parentBlock && !isBlock(parentBlock)) {
26917 19944           parentBlock = dom.getComposedParent(parentBlock);
26918 19945         }
26919    -1         return axe.utils.getNodeFromTree(parentBlock);
   -1 19946         return axe.utils.getNodeFromTree(axe._tree[0], parentBlock);
26920 19947       }
26921 19948       dom.isInTextBlock = function isInTextBlock(node) {
26922 19949         if (isBlock(node)) {
@@ -26944,7 +19971,7 @@ module.exports = {
26944 19971             } else {
26945 19972               inBrBlock = 2;
26946 19973             }
26947    -1           } else if (currNode.style.display === 'none' || currNode.style.overflow === 'hidden' || ![ '', null, 'none' ].includes(currNode.style['float']) || ![ '', null, 'relative' ].includes(currNode.style.position)) {
   -1 19974           } else if (currNode.style.display === 'none' || currNode.style.overflow === 'hidden' || ![ '', null, 'none' ].includes(currNode.style.float) || ![ '', null, 'relative' ].includes(currNode.style.position)) {
26948 19975             return false;
26949 19976           } else if (nodeName === 'A' && currNode.href || (currNode.getAttribute('role') || '').toLowerCase() === 'link') {
26950 19977             if (currNode === node) {
@@ -26976,7 +20003,7 @@ module.exports = {
26976 20003         return true;
26977 20004       }
26978 20005       dom.isOffscreen = function(element) {
26979    -1         var leftBoundary;
   -1 20006         var leftBoundary = void 0;
26980 20007         var docElement = document.documentElement;
26981 20008         var styl = window.getComputedStyle(element);
26982 20009         var dir = window.getComputedStyle(document.body || docElement).getPropertyValue('direction');
@@ -26999,77 +20026,36 @@ module.exports = {
26999 20026         }
27000 20027         return false;
27001 20028       };
27002    -1       var isInternalLinkRegex = /^\/?#[^/!]/;
27003    -1       dom.isSkipLink = function(element) {
27004    -1         if (!isInternalLinkRegex.test(element.getAttribute('href'))) {
27005    -1           return false;
27006    -1         }
27007    -1         var firstPageLink;
27008    -1         if (typeof axe._cache.get('firstPageLink') !== 'undefined') {
27009    -1           firstPageLink = axe._cache.get('firstPageLink');
27010    -1         } else {
27011    -1           firstPageLink = axe.utils.querySelectorAll(axe._tree, 'a:not([href^="#"]):not([href^="/#"]):not([href^="javascript"])')[0];
27012    -1           axe._cache.set('firstPageLink', firstPageLink || null);
27013    -1         }
27014    -1         if (!firstPageLink) {
27015    -1           return true;
27016    -1         }
27017    -1         return element.compareDocumentPosition(firstPageLink.actualNode) === element.DOCUMENT_POSITION_FOLLOWING;
27018    -1       };
27019    -1       var clipRegex = /rect\s*\(([0-9]+)px,?\s*([0-9]+)px,?\s*([0-9]+)px,?\s*([0-9]+)px\s*\)/;
27020    -1       var clipPathRegex = /(\w+)\((\d+)/;
27021    -1       function isClipped(style) {
   -1 20029       function isClipped(clip) {
27022 20030         'use strict';
27023    -1         var matchesClip = style.getPropertyValue('clip').match(clipRegex);
27024    -1         var matchesClipPath = style.getPropertyValue('clip-path').match(clipPathRegex);
27025    -1         if (matchesClip && matchesClip.length === 5) {
27026    -1           return matchesClip[3] - matchesClip[1] <= 0 && matchesClip[2] - matchesClip[4] <= 0;
27027    -1         }
27028    -1         if (matchesClipPath) {
27029    -1           var type = matchesClipPath[1];
27030    -1           var value = parseInt(matchesClipPath[2], 10);
27031    -1           switch (type) {
27032    -1            case 'inset':
27033    -1             return value >= 50;
27034    -1 
27035    -1            case 'circle':
27036    -1             return value === 0;
27037    -1 
27038    -1            default:
27039    -1           }
   -1 20031         var matches = clip.match(/rect\s*\(([0-9]+)px,?\s*([0-9]+)px,?\s*([0-9]+)px,?\s*([0-9]+)px\s*\)/);
   -1 20032         if (matches && matches.length === 5) {
   -1 20033           return matches[3] - matches[1] <= 0 && matches[2] - matches[4] <= 0;
27040 20034         }
27041 20035         return false;
27042 20036       }
27043 20037       dom.isVisible = function(el, screenReader, recursed) {
27044 20038         'use strict';
27045    -1         var node = axe.utils.getNodeFromTree(el);
27046    -1         var cacheName = '_isVisible' + (screenReader ? 'ScreenReader' : '');
   -1 20039         var style, nodeName, parent;
27047 20040         if (el.nodeType === 9) {
27048 20041           return true;
27049 20042         }
27050 20043         if (el.nodeType === 11) {
27051 20044           el = el.host;
27052 20045         }
27053    -1         if (node && typeof node[cacheName] !== 'undefined') {
27054    -1           return node[cacheName];
27055    -1         }
27056    -1         var style = window.getComputedStyle(el, null);
   -1 20046         style = window.getComputedStyle(el, null);
27057 20047         if (style === null) {
27058 20048           return false;
27059 20049         }
27060    -1         var nodeName = el.nodeName.toUpperCase();
27061    -1         if (style.getPropertyValue('display') === 'none' || [ 'STYLE', 'SCRIPT', 'NOSCRIPT', 'TEMPLATE' ].includes(nodeName) || !screenReader && isClipped(style) || !recursed && (style.getPropertyValue('visibility') === 'hidden' || !screenReader && dom.isOffscreen(el)) || screenReader && el.getAttribute('aria-hidden') === 'true') {
   -1 20050         nodeName = el.nodeName.toUpperCase();
   -1 20051         if (style.getPropertyValue('display') === 'none' || [ 'STYLE', 'SCRIPT', 'NOSCRIPT', 'TEMPLATE' ].includes(nodeName) || !screenReader && isClipped(style.getPropertyValue('clip')) || !recursed && (style.getPropertyValue('visibility') === 'hidden' || !screenReader && dom.isOffscreen(el)) || screenReader && el.getAttribute('aria-hidden') === 'true') {
27062 20052           return false;
27063 20053         }
27064    -1         var parent = el.assignedSlot ? el.assignedSlot : el.parentNode;
27065    -1         var isVisible = false;
   -1 20054         parent = el.assignedSlot ? el.assignedSlot : el.parentNode;
27066 20055         if (parent) {
27067    -1           isVisible = dom.isVisible(parent, screenReader, true);
   -1 20056           return dom.isVisible(parent, screenReader, true);
27068 20057         }
27069    -1         if (node) {
27070    -1           node[cacheName] = isVisible;
27071    -1         }
27072    -1         return isVisible;
   -1 20058         return false;
27073 20059       };
27074 20060       var visualRoles = [ 'checkbox', 'img', 'radio', 'range', 'slider', 'spinbutton', 'textbox' ];
27075 20061       dom.isVisualContent = function(element) {
@@ -27171,40 +20157,6 @@ module.exports = {
27171 20157         }
27172 20158         return true;
27173 20159       };
27174    -1       forms.isAriaCombobox = function(node) {
27175    -1         var role = axe.commons.aria.getRole(node, {
27176    -1           noImplicit: true
27177    -1         });
27178    -1         return role === 'combobox';
27179    -1       };
27180    -1       forms.isAriaListbox = function(node) {
27181    -1         var role = axe.commons.aria.getRole(node, {
27182    -1           noImplicit: true
27183    -1         });
27184    -1         return role === 'listbox';
27185    -1       };
27186    -1       var rangeRoles = [ 'progressbar', 'scrollbar', 'slider', 'spinbutton' ];
27187    -1       forms.isAriaRange = function(node) {
27188    -1         var role = axe.commons.aria.getRole(node, {
27189    -1           noImplicit: true
27190    -1         });
27191    -1         return rangeRoles.includes(role);
27192    -1       };
27193    -1       forms.isAriaTextbox = function(node) {
27194    -1         var role = axe.commons.aria.getRole(node, {
27195    -1           noImplicit: true
27196    -1         });
27197    -1         return role === 'textbox';
27198    -1       };
27199    -1       forms.isNativeSelect = function(node) {
27200    -1         var nodeName = node.nodeName.toUpperCase();
27201    -1         return nodeName === 'SELECT';
27202    -1       };
27203    -1       var nonTextInputTypes = [ 'button', 'checkbox', 'color', 'file', 'hidden', 'image', 'password', 'radio', 'reset', 'submit' ];
27204    -1       forms.isNativeTextbox = function(node) {
27205    -1         var nodeName = node.nodeName.toUpperCase();
27206    -1         return nodeName === 'TEXTAREA' || nodeName === 'INPUT' && !nonTextInputTypes.includes(node.type);
27207    -1       };
27208 20160       matches.attributes = function matchesAttributes(node, matcher) {
27209 20161         node = node.actualNode || node;
27210 20162         return matches.fromFunction(function(attrName) {
@@ -27227,7 +20179,7 @@ module.exports = {
27227 20179         }
27228 20180         return Object.keys(definition).every(function(matcherName) {
27229 20181           if (!matchers.includes(matcherName)) {
27230    -1             throw new Error('Unknown matcher type "'.concat(matcherName, '"'));
   -1 20182             throw new Error('Unknown matcher type "' + matcherName + '"');
27231 20183           }
27232 20184           var matchMethod = matches[matcherName];
27233 20185           var matcher = definition[matcherName];
@@ -27235,7 +20187,7 @@ module.exports = {
27235 20187         });
27236 20188       };
27237 20189       matches.fromFunction = function matchFromFunction(getValue, matcher) {
27238    -1         var matcherType = _typeof(matcher);
   -1 20190         var matcherType = typeof matcher === 'undefined' ? 'undefined' : _typeof(matcher);
27239 20191         if (matcherType !== 'object' || Array.isArray(matcher) || matcher instanceof RegExp) {
27240 20192           throw new Error('Expect matcher to be an object');
27241 20193         }
@@ -27244,7 +20196,7 @@ module.exports = {
27244 20196         });
27245 20197       };
27246 20198       matches.fromPrimative = function matchFromPrimative(someString, matcher) {
27247    -1         var matcherType = _typeof(matcher);
   -1 20199         var matcherType = typeof matcher === 'undefined' ? 'undefined' : _typeof(matcher);
27248 20200         if (Array.isArray(matcher) && typeof someString !== 'undefined') {
27249 20201           return matcher.includes(someString);
27250 20202         }
@@ -27256,7 +20208,7 @@ module.exports = {
27256 20208         }
27257 20209         return matcher === someString;
27258 20210       };
27259    -1       var isXHTMLGlobal;
   -1 20211       var isXHTMLGlobal = void 0;
27260 20212       matches.nodeName = function matchNodeName(node, matcher) {
27261 20213         var _ref30 = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}, isXHTML = _ref30.isXHTML;
27262 20214         node = node.actualNode || node;
@@ -27289,7 +20241,7 @@ module.exports = {
27289 20241         }
27290 20242         return cells;
27291 20243       };
27292    -1       table.getCellPosition = axe.utils.memoize(function(cell, tableGrid) {
   -1 20244       table.getCellPosition = function(cell, tableGrid) {
27293 20245         var rowIndex, index;
27294 20246         if (!tableGrid) {
27295 20247           tableGrid = table.toGrid(dom.findUp(cell, 'table'));
@@ -27305,45 +20257,19 @@ module.exports = {
27305 20257             }
27306 20258           }
27307 20259         }
27308    -1       });
27309    -1       function traverseForHeaders(headerType, position, tableGrid) {
27310    -1         var property = headerType === 'row' ? '_rowHeaders' : '_colHeaders';
27311    -1         var predicate = headerType === 'row' ? table.isRowHeader : table.isColumnHeader;
27312    -1         var rowEnd = headerType === 'row' ? position.y : 0;
27313    -1         var colEnd = headerType === 'row' ? 0 : position.x;
27314    -1         var headers;
27315    -1         var cells = [];
27316    -1         for (var row = position.y; row >= rowEnd && !headers; row--) {
27317    -1           for (var col = position.x; col >= colEnd; col--) {
27318    -1             var cell = tableGrid[row] ? tableGrid[row][col] : undefined;
27319    -1             if (!cell) {
27320    -1               continue;
27321    -1             }
27322    -1             var vNode = axe.utils.getNodeFromTree(cell);
27323    -1             if (vNode[property]) {
27324    -1               headers = vNode[property];
27325    -1               break;
27326    -1             }
27327    -1             cells.push(cell);
27328    -1           }
27329    -1         }
27330    -1         headers = (headers || []).concat(cells.filter(predicate));
27331    -1         cells.forEach(function(tableCell) {
27332    -1           var vNode = axe.utils.getNodeFromTree(tableCell);
27333    -1           vNode[property] = headers;
27334    -1         });
27335    -1         return headers;
27336    -1       }
27337    -1       table.getHeaders = function(cell, tableGrid) {
   -1 20260       };
   -1 20261       table.getHeaders = function(cell) {
27338 20262         if (cell.hasAttribute('headers')) {
27339 20263           return commons.dom.idrefs(cell, 'headers');
27340 20264         }
27341    -1         if (!tableGrid) {
27342    -1           tableGrid = commons.table.toGrid(commons.dom.findUp(cell, 'table'));
27343    -1         }
   -1 20265         var tableGrid = commons.table.toGrid(commons.dom.findUp(cell, 'table'));
27344 20266         var position = commons.table.getCellPosition(cell, tableGrid);
27345    -1         var rowHeaders = traverseForHeaders('row', position, tableGrid);
27346    -1         var colHeaders = traverseForHeaders('col', position, tableGrid);
   -1 20267         var rowHeaders = table.traverse('left', position, tableGrid).filter(function(cell) {
   -1 20268           return table.isRowHeader(cell);
   -1 20269         });
   -1 20270         var colHeaders = table.traverse('up', position, tableGrid).filter(function(cell) {
   -1 20271           return table.isColumnHeader(cell);
   -1 20272         });
27347 20273         return [].concat(rowHeaders, colHeaders).reverse();
27348 20274       };
27349 20275       table.getScope = function(cell) {
@@ -27362,7 +20288,7 @@ module.exports = {
27362 20288           return false;
27363 20289         }
27364 20290         var tableGrid = table.toGrid(dom.findUp(cell, 'table'));
27365    -1         var pos = table.getCellPosition(cell, tableGrid);
   -1 20291         var pos = table.getCellPosition(cell);
27366 20292         var headerRow = tableGrid[pos.y].reduce(function(headerRow, cell) {
27367 20293           return headerRow && cell.nodeName.toUpperCase() === 'TH';
27368 20294         }, true);
@@ -27497,14 +20423,14 @@ module.exports = {
27497 20423         }
27498 20424         if (cell.getAttribute('id')) {
27499 20425           var id = axe.utils.escapeSelector(cell.getAttribute('id'));
27500    -1           return !!document.querySelector('[headers~="'.concat(id, '"]'));
   -1 20426           return !!document.querySelector('[headers~="' + id + '"]');
27501 20427         }
27502 20428         return false;
27503 20429       };
27504 20430       table.isRowHeader = function(cell) {
27505 20431         return [ 'row', 'auto' ].includes(table.getScope(cell));
27506 20432       };
27507    -1       table.toGrid = axe.utils.memoize(function(node) {
   -1 20433       table.toGrid = function(node) {
27508 20434         var table = [];
27509 20435         var rows = node.rows;
27510 20436         for (var i = 0, rowLength = rows.length; i < rowLength; i++) {
@@ -27525,7 +20451,7 @@ module.exports = {
27525 20451           }
27526 20452         }
27527 20453         return table;
27528    -1       });
   -1 20454       };
27529 20455       table.toArray = table.toGrid;
27530 20456       (function(table) {
27531 20457         var traverseTable = function traverseTable(dir, position, tableGrid, callback) {
@@ -27594,7 +20520,7 @@ module.exports = {
27594 20520         };
27595 20521       })(table);
27596 20522       text.accessibleText = function accessibleText(element, context) {
27597    -1         var virtualNode = axe.utils.getNodeFromTree(element);
   -1 20523         var virtualNode = axe.utils.getNodeFromTree(axe._tree[0], element);
27598 20524         return text.accessibleTextVirtual(virtualNode, context);
27599 20525       };
27600 20526       text.accessibleTextVirtual = function accessibleTextVirtual(virtualNode) {
@@ -27606,14 +20532,14 @@ module.exports = {
27606 20532         }
27607 20533         var computationSteps = [ aria.arialabelledbyText, aria.arialabelText, text.nativeTextAlternative, text.formControlValue, text.subtreeText, textNodeContent, text.titleText ];
27608 20534         var accName = computationSteps.reduce(function(accName, step) {
27609    -1           if (context.startNode === virtualNode) {
27610    -1             accName = text.sanitize(accName);
27611    -1           }
27612 20535           if (accName !== '') {
27613 20536             return accName;
27614 20537           }
27615 20538           return step(virtualNode, context);
27616 20539         }, '');
   -1 20540         if (context.startNode === virtualNode) {
   -1 20541           accName = text.sanitize(accName);
   -1 20542         }
27617 20543         if (context.debug) {
27618 20544           axe.log(accName || '{empty-value}', actualNode, context);
27619 20545         }
@@ -27655,7 +20581,9 @@ module.exports = {
27655 20581         context.processed.push(virtualnode);
27656 20582         return false;
27657 20583       };
27658    -1       var controlValueRoles = [ 'textbox', 'progressbar', 'scrollbar', 'slider', 'spinbutton', 'combobox', 'listbox' ];
   -1 20584       var selectRoles = [ 'combobox', 'listbox' ];
   -1 20585       var rangeRoles = [ 'progressbar', 'scrollbar', 'slider', 'spinbutton' ];
   -1 20586       var controlValueRoles = [ 'textbox' ].concat(selectRoles, rangeRoles);
27659 20587       text.formControlValueMethods = {
27660 20588         nativeTextboxValue: nativeTextboxValue,
27661 20589         nativeSelectValue: nativeSelectValue,
@@ -27685,14 +20613,16 @@ module.exports = {
27685 20613       };
27686 20614       function nativeTextboxValue(node) {
27687 20615         node = node.actualNode || node;
27688    -1         if (axe.commons.forms.isNativeTextbox(node)) {
   -1 20616         var nonTextInputTypes = [ 'button', 'checkbox', 'file', 'hidden', 'image', 'password', 'radio', 'reset', 'submit', 'color' ];
   -1 20617         var nodeName = node.nodeName.toUpperCase();
   -1 20618         if (nodeName === 'TEXTAREA' || nodeName === 'INPUT' && !nonTextInputTypes.includes(node.type)) {
27689 20619           return node.value || '';
27690 20620         }
27691 20621         return '';
27692 20622       }
27693 20623       function nativeSelectValue(node) {
27694 20624         node = node.actualNode || node;
27695    -1         if (!axe.commons.forms.isNativeSelect(node)) {
   -1 20625         if (node.nodeName.toUpperCase() !== 'SELECT') {
27696 20626           return '';
27697 20627         }
27698 20628         return Array.from(node.options).filter(function(option) {
@@ -27703,7 +20633,8 @@ module.exports = {
27703 20633       }
27704 20634       function ariaTextboxValue(virtualNode) {
27705 20635         var actualNode = virtualNode.actualNode;
27706    -1         if (!axe.commons.forms.isAriaTextbox(actualNode)) {
   -1 20636         var role = aria.getRole(actualNode);
   -1 20637         if (role !== 'textbox') {
27707 20638           return '';
27708 20639         }
27709 20640         if (!dom.isHiddenWithCSS(actualNode)) {
@@ -27714,7 +20645,8 @@ module.exports = {
27714 20645       }
27715 20646       function ariaListboxValue(virtualNode, context) {
27716 20647         var actualNode = virtualNode.actualNode;
27717    -1         if (!axe.commons.forms.isAriaListbox(actualNode)) {
   -1 20648         var role = aria.getRole(actualNode);
   -1 20649         if (role !== 'listbox') {
27718 20650           return '';
27719 20651         }
27720 20652         var selected = aria.getOwnedVirtual(virtualNode).filter(function(owned) {
@@ -27727,8 +20659,11 @@ module.exports = {
27727 20659       }
27728 20660       function ariaComboboxValue(virtualNode, context) {
27729 20661         var actualNode = virtualNode.actualNode;
27730    -1         var listbox;
27731    -1         if (!axe.commons.forms.isAriaCombobox(actualNode)) {
   -1 20662         var role = aria.getRole(actualNode, {
   -1 20663           noImplicit: true
   -1 20664         });
   -1 20665         var listbox = void 0;
   -1 20666         if (!role === 'combobox') {
27732 20667           return '';
27733 20668         }
27734 20669         listbox = aria.getOwnedVirtual(virtualNode).filter(function(elm) {
@@ -27738,7 +20673,8 @@ module.exports = {
27738 20673       }
27739 20674       function ariaRangeValue(node) {
27740 20675         node = node.actualNode || node;
27741    -1         if (!axe.commons.forms.isAriaRange(node) || !node.hasAttribute('aria-valuenow')) {
   -1 20676         var role = aria.getRole(node);
   -1 20677         if (!rangeRoles.includes(role) || !node.hasAttribute('aria-valuenow')) {
27742 20678           return '';
27743 20679         }
27744 20680         var valueNow = +node.getAttribute('aria-valuenow');
@@ -27762,90 +20698,6 @@ module.exports = {
27762 20698         }
27763 20699         return 1;
27764 20700       };
27765    -1       text.isIconLigature = function(textVNode) {
27766    -1         var differenceThreshold = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : .15;
27767    -1         var occuranceThreshold = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 3;
27768    -1         var nodeValue = textVNode.actualNode.nodeValue.trim();
27769    -1         if (!text.sanitize(nodeValue) || text.hasUnicode(nodeValue, {
27770    -1           emoji: true,
27771    -1           nonBmp: true
27772    -1         })) {
27773    -1           return false;
27774    -1         }
27775    -1         if (!axe._cache.get('canvasContext')) {
27776    -1           axe._cache.set('canvasContext', document.createElement('canvas').getContext('2d'));
27777    -1         }
27778    -1         var canvasContext = axe._cache.get('canvasContext');
27779    -1         var canvas = canvasContext.canvas;
27780    -1         if (!axe._cache.get('fonts')) {
27781    -1           axe._cache.set('fonts', {});
27782    -1         }
27783    -1         var fonts = axe._cache.get('fonts');
27784    -1         var style = window.getComputedStyle(textVNode.parent.actualNode);
27785    -1         var fontFamily = style.getPropertyValue('font-family');
27786    -1         if (!fonts[fontFamily]) {
27787    -1           fonts[fontFamily] = {
27788    -1             occurances: 0,
27789    -1             numLigatures: 0
27790    -1           };
27791    -1         }
27792    -1         var font = fonts[fontFamily];
27793    -1         if (font.occurances >= occuranceThreshold) {
27794    -1           if (font.numLigatures / font.occurances === 1) {
27795    -1             return true;
27796    -1           } else if (font.numLigatures === 0) {
27797    -1             return false;
27798    -1           }
27799    -1         }
27800    -1         font.occurances++;
27801    -1         var fontSize = 30;
27802    -1         var fontStyle = ''.concat(fontSize, 'px ').concat(fontFamily);
27803    -1         canvasContext.font = fontStyle;
27804    -1         var firstChar = nodeValue.charAt(0);
27805    -1         var width = canvasContext.measureText(firstChar).width;
27806    -1         if (width < 30) {
27807    -1           var diff = 30 / width;
27808    -1           width *= diff;
27809    -1           fontSize *= diff;
27810    -1           fontStyle = ''.concat(fontSize, 'px ').concat(fontFamily);
27811    -1         }
27812    -1         canvas.width = width;
27813    -1         canvas.height = fontSize;
27814    -1         canvasContext.font = fontStyle;
27815    -1         canvasContext.textAlign = 'left';
27816    -1         canvasContext.textBaseline = 'top';
27817    -1         canvasContext.fillText(firstChar, 0, 0);
27818    -1         var compareData = new Uint32Array(canvasContext.getImageData(0, 0, width, fontSize).data.buffer);
27819    -1         if (!compareData.some(function(pixel) {
27820    -1           return pixel;
27821    -1         })) {
27822    -1           font.numLigatures++;
27823    -1           return true;
27824    -1         }
27825    -1         canvasContext.clearRect(0, 0, width, fontSize);
27826    -1         canvasContext.fillText(nodeValue, 0, 0);
27827    -1         var compareWith = new Uint32Array(canvasContext.getImageData(0, 0, width, fontSize).data.buffer);
27828    -1         var differences = compareData.reduce(function(diff, pixel, i) {
27829    -1           if (pixel === 0 && compareWith[i] === 0) {
27830    -1             return diff;
27831    -1           }
27832    -1           if (pixel !== 0 && compareWith[i] !== 0) {
27833    -1             return diff;
27834    -1           }
27835    -1           return ++diff;
27836    -1         }, 0);
27837    -1         var expectedWidth = nodeValue.split('').reduce(function(width, _char) {
27838    -1           return width + canvasContext.measureText(_char).width;
27839    -1         }, 0);
27840    -1         var actualWidth = canvasContext.measureText(nodeValue).width;
27841    -1         var pixelDifference = differences / compareData.length;
27842    -1         var sizeDifference = 1 - actualWidth / expectedWidth;
27843    -1         if (pixelDifference >= differenceThreshold && sizeDifference >= differenceThreshold) {
27844    -1           font.numLigatures++;
27845    -1           return true;
27846    -1         }
27847    -1         return false;
27848    -1       };
27849 20701       var autocomplete = {
27850 20702         stateTerms: [ 'on', 'off' ],
27851 20703         standaloneTerms: [ 'name', 'honorific-prefix', 'given-name', 'additional-name', 'family-name', 'honorific-suffix', 'nickname', 'username', 'new-password', 'current-password', 'organization-title', 'organization', 'street-address', 'address-line1', 'address-line2', 'address-line3', 'address-level4', 'address-level3', 'address-level2', 'address-level1', 'country', 'country-name', 'postal-code', 'cc-name', 'cc-given-name', 'cc-additional-name', 'cc-family-name', 'cc-number', 'cc-exp', 'cc-exp-month', 'cc-exp-year', 'cc-csc', 'cc-type', 'transaction-currency', 'transaction-amount', 'language', 'bday', 'bday-day', 'bday-month', 'bday-year', 'sex', 'url', 'photo' ],
@@ -27855,7 +20707,7 @@ module.exports = {
27855 20707       };
27856 20708       text.autocomplete = autocomplete;
27857 20709       text.isValidAutocomplete = function isValidAutocomplete(autocomplete) {
27858    -1         var _ref33 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, _ref33$looseTyped = _ref33.looseTyped, looseTyped = _ref33$looseTyped === void 0 ? false : _ref33$looseTyped, _ref33$stateTerms = _ref33.stateTerms, stateTerms = _ref33$stateTerms === void 0 ? [] : _ref33$stateTerms, _ref33$locations = _ref33.locations, locations = _ref33$locations === void 0 ? [] : _ref33$locations, _ref33$qualifiers = _ref33.qualifiers, qualifiers = _ref33$qualifiers === void 0 ? [] : _ref33$qualifiers, _ref33$standaloneTerm = _ref33.standaloneTerms, standaloneTerms = _ref33$standaloneTerm === void 0 ? [] : _ref33$standaloneTerm, _ref33$qualifiedTerms = _ref33.qualifiedTerms, qualifiedTerms = _ref33$qualifiedTerms === void 0 ? [] : _ref33$qualifiedTerms;
   -1 20710         var _ref33 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, _ref33$looseTyped = _ref33.looseTyped, looseTyped = _ref33$looseTyped === undefined ? false : _ref33$looseTyped, _ref33$stateTerms = _ref33.stateTerms, stateTerms = _ref33$stateTerms === undefined ? [] : _ref33$stateTerms, _ref33$locations = _ref33.locations, locations = _ref33$locations === undefined ? [] : _ref33$locations, _ref33$qualifiers = _ref33.qualifiers, qualifiers = _ref33$qualifiers === undefined ? [] : _ref33$qualifiers, _ref33$standaloneTerm = _ref33.standaloneTerms, standaloneTerms = _ref33$standaloneTerm === undefined ? [] : _ref33$standaloneTerm, _ref33$qualifiedTerms = _ref33.qualifiedTerms, qualifiedTerms = _ref33$qualifiedTerms === undefined ? [] : _ref33$qualifiedTerms;
27859 20711         autocomplete = autocomplete.toLowerCase().trim();
27860 20712         stateTerms = stateTerms.concat(text.autocomplete.stateTerms);
27861 20713         if (stateTerms.includes(autocomplete) || autocomplete === '') {
@@ -27898,7 +20750,7 @@ module.exports = {
27898 20750         }, context);
27899 20751         var explicitLabels = getExplicitLabels(virtualNode);
27900 20752         var implicitLabel = dom.findUpVirtual(virtualNode, 'label');
27901    -1         var labels;
   -1 20753         var labels = void 0;
27902 20754         if (implicitLabel) {
27903 20755           labels = [].concat(_toConsumableArray(explicitLabels), [ implicitLabel ]);
27904 20756           labels.sort(axe.utils.nodeSorter);
@@ -27946,7 +20798,7 @@ module.exports = {
27946 20798         return null;
27947 20799       };
27948 20800       text.label = function(node) {
27949    -1         node = axe.utils.getNodeFromTree(node);
   -1 20801         node = axe.utils.getNodeFromTree(axe._tree[0], node);
27950 20802         return text.labelVirtual(node);
27951 20803       };
27952 20804       text.nativeElementType = [ {
@@ -28154,7 +21006,6 @@ module.exports = {
28154 21006         }
28155 21007         if (nonBmp) {
28156 21008           str = str.replace(getUnicodeNonBmpRegExp(), '');
28157    -1           str = str.replace(getSupplementaryPrivateUseRegExp(), '');
28158 21009         }
28159 21010         if (punctuations) {
28160 21011           str = str.replace(getPunctuationRegExp(), '');
@@ -28162,31 +21013,14 @@ module.exports = {
28162 21013         return str;
28163 21014       };
28164 21015       function getUnicodeNonBmpRegExp() {
28165    -1         return new RegExp('[' + 'ᴀ-ᵿ' + 'ᶀ-ᶿ' + '᷀-᷿' + '₠-⃏' + '⃐-⃿' + '℀-⅏' + '⅐-↏' + '←-⇿' + '∀-⋿' + '⌀-⏿' + '␀-␿' + '⑀-⑟' + '①-⓿' + '─-╿' + '▀-▟' + '■-◿' + '☀-⛿' + '✀-➿' + '-' + ']');
   -1 21016         return new RegExp('[' + 'ᴀ-ᵿ' + 'ᶀ-ᶿ' + '᷀-᷿' + '₠-⃏' + '⃐-⃿' + '℀-⅏' + '⅐-↏' + '←-⇿' + '∀-⋿' + '⌀-⏿' + '␀-␿' + '⑀-⑟' + '①-⓿' + '─-╿' + '▀-▟' + '■-◿' + '☀-⛿' + '✀-➿' + ']');
28166 21017       }
28167 21018       function getPunctuationRegExp() {
28168 21019         return /[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,\-.\/:;<=>?@\[\]^_`{|}~]/g;
28169 21020       }
28170    -1       function getSupplementaryPrivateUseRegExp() {
28171    -1         return /[\uDB80-\uDBBF][\uDC00-\uDFFD]/g;
28172    -1       }
28173 21021       text.unsupported = {
28174 21022         accessibleNameFromFieldValue: [ 'combobox', 'listbox', 'progressbar' ]
28175 21023       };
28176    -1       text.visibleTextNodes = function(vNode) {
28177    -1         var parentVisible = axe.commons.dom.isVisible(vNode.actualNode);
28178    -1         var nodes = [];
28179    -1         vNode.children.forEach(function(child) {
28180    -1           if (child.actualNode.nodeType === 3) {
28181    -1             if (parentVisible) {
28182    -1               nodes.push(child);
28183    -1             }
28184    -1           } else {
28185    -1             nodes = nodes.concat(text.visibleTextNodes(child));
28186    -1           }
28187    -1         });
28188    -1         return nodes;
28189    -1       };
28190 21024       text.visibleVirtual = function(element, screenReader, noRecursing) {
28191 21025         var result = element.children.map(function(child) {
28192 21026           if (child.actualNode.nodeType === 3) {
@@ -28201,7 +21035,7 @@ module.exports = {
28201 21035         return text.sanitize(result);
28202 21036       };
28203 21037       text.visible = function(element, screenReader, noRecursing) {
28204    -1         element = axe.utils.getNodeFromTree(element);
   -1 21038         element = axe.utils.getNodeFromTree(axe._tree[0], element);
28205 21039         return text.visibleVirtual(element, screenReader, noRecursing);
28206 21040       };
28207 21041       return commons;
@@ -28217,6 +21051,7 @@ http://www.w3.org/TR/accname-aam-1.1/
28217 21051 Authored by Bryan Garaventa, plus refactoring contrabutions by Tobias Bengfort
28218 21052 https://github.com/whatsock/w3c-alternative-text-computation
28219 21053 Distributed under the terms of the Open Source Initiative OSI - MIT License
   -1 21054 11:33 AM Thursday, May 7, 2020
28220 21055 */
28221 21056 
28222 21057 (function() {
@@ -28225,7 +21060,7 @@ Distributed under the terms of the Open Source Initiative OSI - MIT License
28225 21060     window[nameSpace] = {};
28226 21061     nameSpace = window[nameSpace];
28227 21062   }
28228    -1   nameSpace.getAccNameVersion = "2.42";
   -1 21063   nameSpace.getAccNameVersion = "2.49";
28229 21064   // AccName Computation Prototype
28230 21065   nameSpace.getAccName = nameSpace.calcNames = function(
28231 21066     node,
@@ -28348,16 +21183,6 @@ Plus roles extended for the Role Parity project.
28348 21183           after: ""
28349 21184         };
28350 21185 
28351    -1         if (ownedBy.ref) {
28352    -1           if (isParentHidden(refNode, docO.body, true, true)) {
28353    -1             // If referenced via aria-labelledby or aria-describedby, do not return a name or description if a parent node is hidden.
28354    -1             return fullResult;
28355    -1           } else if (isHidden(refNode, docO.body)) {
28356    -1             // Otherwise, if aria-labelledby or aria-describedby reference a node that is explicitly hidden, then process all children regardless of their individual hidden states.
28357    -1             var ignoreHidden = true;
28358    -1           }
28359    -1         }
28360    -1 
28361 21186         if (!skipTo.tag && !skipTo.role && nodes.indexOf(refNode) === -1) {
28362 21187           // Store the before and after pseudo element 'content' values for the top level DOM node
28363 21188           // Note: If the pseudo element includes block level styling, a space will be added, otherwise inline is asumed and no spacing is added.
@@ -28476,19 +21301,19 @@ Plus roles extended for the Role Parity project.
28476 21301             var hLabel = false;
28477 21302 
28478 21303             if (
28479    -1               (skip ||
28480    -1                 !node ||
28481    -1                 nodes.indexOf(node) !== -1 ||
28482    -1                 (!ignoreHidden && isHidden(node, ownedBy.top))) &&
   -1 21304               (skip || !node || isHidden(node, ownedBy.top)) &&
28483 21305               !skipAbort &&
28484 21306               !isEmbeddedNode
28485 21307             ) {
28486    -1               // Abort if algorithm step is already completed, or if node is a hidden child of refNode, or if this node has already been processed, or skip abort if aria-labelledby self references same node.
   -1 21308               // Abort if algorithm step is already completed, or if node is a hidden child of refNode, or skip abort if aria-labelledby self references same node.
28487 21309               return result;
28488 21310             }
28489 21311 
28490 21312             if (!skipTo.tag && !skipTo.role && nodes.indexOf(node) === -1) {
28491 21313               nodes.push(node);
   -1 21314             } else {
   -1 21315               // Abort if this node has already been processed.
   -1 21316               return result;
28492 21317             }
28493 21318 
28494 21319             // Store name for the current node.
@@ -28684,7 +21509,9 @@ Plus roles extended for the Role Parity project.
28684 21509 
28685 21510                   for (i = 0; i < labels.length; i++) {
28686 21511                     if (
28687    -1                       (labels[i] === implicitLabel ||
   -1 21512                       ((labels[i] === implicitLabel &&
   -1 21513                         typeof implicitLabel.getAttribute("for") !==
   -1 21514                           "string") ||
28688 21515                         labels[i].getAttribute("for") === node.id) &&
28689 21516                       !isParentHidden(labels[i], docO.body, true)
28690 21517                     ) {
@@ -29099,7 +21926,7 @@ Plus roles extended for the Role Parity project.
29099 21926 
29100 21927             if (
29101 21928               name.length &&
29102    -1               !hasParentLabelOrHidden(node, ownedBy.top, ownedBy, ignoreHidden)
   -1 21929               !hasParentLabelOrHidden(node, ownedBy.top, ownedBy)
29103 21930             ) {
29104 21931               result.name = name;
29105 21932             }
@@ -29445,7 +22272,11 @@ Plus roles extended for the Role Parity project.
29445 22272             s = s.replace(m[i], b);
29446 22273           }
29447 22274         }
29448    -1         return s || text;
   -1 22275         s = s
   -1 22276           .replace(/url\((.*?)\)\s+\/|url\((.*?)\)/g, "")
   -1 22277           .replace(/^\s+|\s+$/g, "")
   -1 22278           .replace(/\"/g, "");
   -1 22279         return s;
29449 22280       };
29450 22281 
29451 22282       var isBlockLevelElement = function(node, cssObj) {
@@ -29859,7 +22690,7 @@ var implementations = {
29859 22690 			role: ex(ariaApi.getRole, [el]),
29860 22691 		};
29861 22692 	},
29862    -1 	'accdc (2.42)': accdc.calcNames,
   -1 22693 	'accdc (2.49)': accdc.calcNames,
29863 22694 	'axe (3.4.3)': function(el) {
29864 22695 		return {
29865 22696 			name: ex(function(el) {

diff --git a/src/babel.js b/src/babel.js

@@ -23,7 +23,7 @@ var implementations = {
   23    23 			role: ex(ariaApi.getRole, [el]),
   24    24 		};
   25    25 	},
   26    -1 	'accdc (2.42)': accdc.calcNames,
   -1    26 	'accdc (2.49)': accdc.calcNames,
   27    27 	'axe (3.4.3)': function(el) {
   28    28 		return {
   29    29 			name: ex(function(el) {