axe-matchers 1.0.0 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,3 +1,3 @@
1
1
  require 'axe/cucumber/step'
2
2
 
3
- Then Axe::Cucumber::Step::REGEX, :be_accessible, on: -> { Axe::Cucumber::Step.create_for self }
3
+ Then Axe::Cucumber::Step::REGEX, :assert_accessibility, on: -> { Axe::Cucumber::Step.create_for self }
data/lib/axe/dsl.rb ADDED
@@ -0,0 +1,15 @@
1
+ require 'axe/matchers'
2
+ require 'axe/expectation'
3
+
4
+ module Axe
5
+ module DSL
6
+ module_function
7
+
8
+ # get the be_accessible matcher method
9
+ extend Matchers
10
+
11
+ def expect(page)
12
+ AccessibilityExpectation.new page
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,32 @@
1
+ module Axe
2
+ class AccessibleExpectation
3
+ def assert(page, matcher)
4
+ raise matcher.failure_message unless matcher.matches? page
5
+ end
6
+ end
7
+
8
+ class InaccessibleExpectation
9
+ def assert(page, matcher)
10
+ raise matcher.failure_message_when_negated if matcher.matches? page
11
+ end
12
+ end
13
+
14
+ class AccessibilityExpectation
15
+ def self.create(negate)
16
+ negate ? InaccessibleExpectation.new : AccessibleExpectation.new
17
+ end
18
+
19
+ def initialize(page)
20
+ @page = page
21
+ end
22
+
23
+ def to(matcher)
24
+ AccessibleExpectation.new.assert @page, matcher
25
+ end
26
+
27
+ def to_not(matcher)
28
+ InaccessibleExpectation.new.assert @page, matcher
29
+ end
30
+ alias :not_to :to_not
31
+ end
32
+ end
@@ -1,4 +1,5 @@
1
1
  require 'forwardable'
2
+ require 'chain_mail/chainable'
2
3
  require 'axe/page'
3
4
  require 'axe/api/a11y_check'
4
5
 
@@ -6,8 +7,11 @@ module Axe
6
7
  module Matchers
7
8
  class BeAccessible
8
9
  extend Forwardable
9
-
10
10
  def_delegators :@audit, :failure_message, :failure_message_when_negated
11
+ def_delegators :@a11y_check, :within, :excluding, :according_to, :checking, :checking_only, :skipping, :with_options
12
+
13
+ extend ChainMail::Chainable
14
+ chainable :within, :excluding, :according_to, :checking, :checking_only, :skipping, :with_options
11
15
 
12
16
  def initialize
13
17
  @a11y_check = API::A11yCheck.new
@@ -18,43 +22,10 @@ module Axe
18
22
 
19
23
  @audit.passed?
20
24
  end
21
-
22
- def within(inclusion)
23
- @a11y_check.include inclusion
24
- self
25
- end
26
-
27
- def excluding(exclusion)
28
- @a11y_check.exclude exclusion
29
- self
30
- end
31
-
32
- def according_to(*tags)
33
- @a11y_check.rules_by_tags tags.flatten
34
- self
35
- end
36
-
37
- def checking(*rules)
38
- @a11y_check.run_rules rules.flatten
39
- self
40
- end
41
-
42
- def skipping(*rules)
43
- @a11y_check.skip_rules rules.flatten
44
- self
45
- end
46
-
47
- def checking_only(*rules)
48
- @a11y_check.run_only_rules rules.flatten
49
- self
50
- end
51
-
52
- def with_options(options)
53
- @a11y_check.custom_options options
54
- self
55
- end
56
25
  end
57
26
 
27
+ module_function
28
+
58
29
  def be_accessible
59
30
  BeAccessible.new
60
31
  end
data/lib/axe/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Axe
2
- VERSION = "1.0.0"
2
+ VERSION = "1.1.0"
3
3
  end
@@ -0,0 +1,19 @@
1
+ #TODO
2
+ # - able to be extended
3
+ # - able to be used without extending (module_function)
4
+ # - variant that returns nil instead of self
5
+ module ChainMail
6
+ module Chainable
7
+ module_function
8
+
9
+ def chainable(*methods)
10
+ methods.each do |method|
11
+ original = instance_method(method)
12
+ define_method method do |*args|
13
+ original.bind(self).call(*args)
14
+ self
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,6 @@
1
+ module StripHeredoc
2
+ def self.unindent(string)
3
+ indent = (string.scan(/^[ \t]*(?=\S)/).min || "").size
4
+ string.gsub(/^[ \t]{#{indent}}/, '')
5
+ end
6
+ end
@@ -1,4 +1,4 @@
1
- /*! aXe v1.0.1
1
+ /*! aXe v1.1.0
2
2
  * Copyright (c) 2015 Deque Systems, Inc.
3
3
  *
4
4
  * Your use of this Source Code Form is subject to the terms of the Mozilla Public
@@ -9,17 +9,7 @@
9
9
  * distribute or in any file that contains substantial portions of this source
10
10
  * code.
11
11
  */
12
- !function(a){function b(a){"use strict";var c,d,e=a;if(null!==a&&"object"==typeof a)if(Array.isArray(a))for(e=[],c=0,d=a.length;d>c;c++)e[c]=b(a[c]);else{e={};for(c in a)e[c]=b(a[c])}return e}function c(a){"use strict";this.reporter=a,this.rules=[],this.tools={}}function d(a){"use strict";this.id=a.id,this.data=null,this.relatedNodes=[],this.result=null}function e(a){"use strict";this.id=a.id,this.options=a.options,this.selector=a.selector,this.evaluate=a.evaluate,a.after&&(this.after=a.after),a.matches&&(this.matches=a.matches),this.enabled=a.hasOwnProperty("enabled")?a.enabled:!0}function f(a,b){"use strict";if(!R.isHidden(b)){var c=R.findBy(a.frames,"node",b);c||a.frames.push({node:b,include:[],exclude:[]})}}function g(a,b,c){"use strict";a.frames=a.frames||[];var d,e,f=document.querySelectorAll(c.shift());a:for(var g=0,h=f.length;h>g;g++){e=f[g];for(var i=0,j=a.frames.length;j>i;i++)if(a.frames[i].node===e){a.frames[i][b].push(c);break a}d={node:e,include:[],exclude:[]},c&&d[b].push(c),a.frames.push(d)}}function h(a){"use strict";if(a&&"object"==typeof a){if(a instanceof Node)return{include:[a],exclude:[]};if(a.hasOwnProperty("include")||a.hasOwnProperty("exclude"))return{include:a.include||[],exclude:a.exclude||[]};if(a.length===+a.length)return{include:a,exclude:[]}}return"string"==typeof a?{include:[a],exclude:[]}:{include:[],exclude:[]}}function i(a,b){"use strict";for(var c,d=[],e=0,h=a[b].length;h>e;e++){if(c=a[b][e],"string"==typeof c){d=d.concat(R.toArray(document.querySelectorAll(c)));break}c&&c.length?c.length>1?g(a,b,c):d=d.concat(R.toArray(document.querySelectorAll(c[0]))):d.push(c)}return d.filter(function(b){if(b){if("IFRAME"===b.nodeName||"FRAME"===b.nodeName)return f(a,b),!1;R.toArray(b.querySelectorAll("iframe, frame")).forEach(function(b){f(a,b)})}return b})}function j(a){"use strict";this.frames=[],this.page=a instanceof Node&&a.nodeType===Node.DOCUMENT_NODE||!a,this.initiator=a&&"boolean"==typeof a.initiator?a.initiator:!0,a=h(a),this.exclude=a.exclude,this.include=a.include,this.include=i(this,"include"),this.exclude=i(this,"exclude")}function k(a,b,c){"use strict";if(b=b||300,c=c||"...",a.length>b){var d=Math.floor((b-c.length)/2);a=a.slice(0,d)+c+a.slice(-d)}return a}function l(a,b){"use strict";b=b||{},this.selector=b.selector||[R.getSelector(a)],this.source=k(b.source||a.outerHTML),this.element=a}function m(a){"use strict";this.id=a.id,this.result=Q.constants.result.NA,this.pageLevel=a.pageLevel,this.impact=null,this.nodes=[]}function n(a,b){"use strict";var c,d;if(b.all)for(c=0,d=b.all.length;d>c;c++)a.all.push(new e(b.all[c]));if(b.none)for(c=0,d=b.none.length;d>c;c++)a.none.push(new e(b.none[c]));if(b.any)for(c=0,d=b.any.length;d>c;c++)a.any.push(new e(b.any[c]))}function o(a){"use strict";this.id=a.id,this.selector=a.selector||"*",this.excludeHidden="boolean"==typeof a.excludeHidden?a.excludeHidden:!0,this.enabled="boolean"==typeof a.enabled?a.enabled:!0,this.pageLevel="boolean"==typeof a.pageLevel?a.pageLevel:!1,this.any=[],this.all=[],this.none=[],n(this,a),this.tags=a.tags||[],a.matches&&(this.matches=a.matches)}function p(a){"use strict";return R.getAllChecks(a).filter(function(a){return"function"==typeof a.after})}function q(a,b){"use strict";var c=[];return a.forEach(function(a){var d=R.getAllChecks(a);d.forEach(function(a){a.id===b&&c.push(a)})}),c}function r(a){"use strict";return a.filter(function(a){return a.filtered!==!0})}function s(a){"use strict";var b=["any","all","none"],c=a.nodes.filter(function(a){var c=0;return b.forEach(function(b){a[b]=r(a[b]),c+=a[b].length}),c>0});return a.pageLevel&&c.length&&(c=[c.reduce(function(a,c){return a?(b.forEach(function(b){a[b].push.apply(a[b],c[b])}),a):void 0})]),c}function t(a){"use strict";a.source=a.source||{},this.id=a.id,this.options=a.options,this._run=a.source.run,this._cleanup=a.source.cleanup,this.active=!1}function u(a){"use strict";if(!Q._audit)throw new Error("No audit configured");var b=R.queue();Object.keys(Q._audit.tools).forEach(function(a){var c=Q._audit.tools[a];c.active&&b.defer(function(a){c.cleanup(a)})}),R.toArray(document.querySelectorAll("frame, iframe")).forEach(function(a){b.defer(function(b){return R.sendCommandToFrame(a,{command:"cleanup-tool"},b)})}),b.then(a)}function v(a,b){"use strict";var c=a&&a.context||{};c.include&&!c.include.length&&(c.include=[document]);var d=a&&a.options||{};switch(a.command){case"rules":return z(c,d,b);case"run-tool":return A(a.parameter,a.selectorArray,d,b);case"cleanup-tool":return u(b)}}function w(a){"use strict";var b=a||{};return b.rules=b.rules||[],b.tools=b.tools||[],b.data=b.data||{checks:{},rules:{}},b}function x(a){"use strict";if(T&&T.parentNode&&(T.parentNode.removeChild(T),T=null),a){var b=document.head||document.getElementsByTagName("head")[0];return T=document.createElement("style"),T.type="text/css",void 0===T.styleSheet?T.appendChild(document.createTextNode(a)):T.styleSheet.cssText=a,b.appendChild(T),T}}function y(a){"use strict";return"string"==typeof a&&V[a]?V[a]:"function"==typeof a?a:U}function z(a,b,c){"use strict";a=new j(a);var d=R.queue(),e=Q._audit;a.frames.length&&d.defer(function(c){R.collectResultsFromFrames(a,b,"rules",null,c)}),d.defer(function(c){e.run(a,b,c)}),d.then(function(d){var f=R.mergeResults(d.map(function(a){return{results:a}}));a.initiator&&(f=e.after(f,b),f=f.map(R.finalizeRuleResult)),c(f)})}function A(a,b,c,d){"use strict";if(!Q._audit)throw new Error("No audit configured");if(b.length>1){var e=document.querySelector(b.shift());return R.sendCommandToFrame(e,{options:c,command:"run-tool",parameter:a,selectorArray:b},d)}var f=document.querySelector(b.shift());Q._audit.tools[a].run(f,c,d)}function B(a,b){"use strict";Object.keys(Q.constants.raisedMetadata).forEach(function(c){var d=Q.constants.raisedMetadata[c],e=b.reduce(function(a,b){var e=d.indexOf(b[c]);return e>a?e:a},-1);d[e]&&(a[c]=d[e])})}function C(a){"use strict";var b=a.any.length||a.all.length||a.none.length;return b?Q.constants.result.FAIL:Q.constants.result.PASS}function D(a){"use strict";function b(a){return R.extendBlacklist({},a,["result"])}var c=R.extendBlacklist({violations:[],passes:[]},a,["nodes"]);return a.nodes.forEach(function(a){var d=R.getFailingChecks(a),e=C(d);return e===Q.constants.result.FAIL?(B(a,R.getAllChecks(d)),a.any=d.any.map(b),a.all=d.all.map(b),a.none=d.none.map(b),void c.violations.push(a)):(a.any=a.any.filter(function(a){return a.result}).map(b),a.all=a.all.map(b),a.none=a.none.map(b),void c.passes.push(a))}),B(c,c.violations),c.result=c.violations.length?Q.constants.result.FAIL:c.passes.length?Q.constants.result.PASS:c.result,c}function E(a){"use strict";for(var b=1,c=a.nodeName;a=a.previousElementSibling;)a.nodeName===c&&b++;return b}function F(a,b){"use strict";var c,d,e=a.parentNode.children;if(!e)return!1;var f=e.length;for(c=0;f>c;c++)if(d=e[c],d!==a&&R.matchesSelector(d,b))return!0;return!1}function G(a,b,c){"use strict";a.forEach(function(a){a.node.selector.unshift(c),a.node=new l(b,a.node);var d=R.getAllChecks(a);d.length&&d.forEach(function(a){a.relatedNodes.forEach(function(a){a.selector.unshift(c),a=new l(b,a)})})})}function H(a,b){"use strict";for(var c,d,e=b[0].node,f=0,g=a.length;g>f;f++)if(d=a[f].node,c=R.nodeSorter(d.element,e.element),c>0||0===c&&e.selector.length<d.selector.length)return void a.splice.apply(a,[f,0].concat(b));a.push.apply(a,b)}function I(a){"use strict";return a&&a.results?Array.isArray(a.results)?a.results.length?a.results:null:[a.results]:null}function J(a){"use strict";return a.sort(function(a,b){return R.contains(a,b)?1:-1})[0]}function K(a,b){"use strict";var c=b.include&&J(b.include.filter(function(b){return R.contains(b,a)})),d=b.exclude&&J(b.exclude.filter(function(b){return R.contains(b,a)}));return!d&&c||d&&R.contains(d,c)?!0:!1}function L(a,b,c){"use strict";for(var d=0,e=b.length;e>d;d++)-1===a.indexOf(b[d])&&K(b[d],c)&&a.push(b[d])}var M=function(){"use strict";function a(a){var b,c,d=a.Element.prototype,e=["matches","matchesSelector","mozMatchesSelector","webkitMatchesSelector","msMatchesSelector"],f=e.length;for(b=0;f>b;b++)if(c=e[b],d[c])return c}var b;return function(c,d){return b&&c[b]||(b=a(c.ownerDocument.defaultView)),c[b](d)}}(),N=function(a){"use strict";for(var b,c=String(a),d=c.length,e=-1,f="",g=c.charCodeAt(0);++e<d;){if(b=c.charCodeAt(e),0==b)throw new Error("INVALID_CHARACTER_ERR");f+=b>=1&&31>=b||b>=127&&159>=b||0==e&&b>=48&&57>=b||1==e&&b>=48&&57>=b&&45==g?"\\"+b.toString(16)+" ":(1!=e||45!=b||45!=g)&&(b>=128||45==b||95==b||b>=48&&57>=b||b>=65&&90>=b||b>=97&&122>=b)?c.charAt(e):"\\"+c.charAt(e)}return f};(function(){function a(a,b,c){var d=b&&c||0,e=0;for(b=b||[],a.toLowerCase().replace(/[0-9a-f]{2}/g,function(a){16>e&&(b[d+e++]=m[a])});16>e;)b[d+e++]=0;return b}function b(a,b){var c=b||0,d=l;return d[a[c++]]+d[a[c++]]+d[a[c++]]+d[a[c++]]+"-"+d[a[c++]]+d[a[c++]]+"-"+d[a[c++]]+d[a[c++]]+"-"+d[a[c++]]+d[a[c++]]+"-"+d[a[c++]]+d[a[c++]]+d[a[c++]]+d[a[c++]]+d[a[c++]]+d[a[c++]]}function c(a,c,d){var e=c&&d||0,f=c||[];a=a||{};var g=null!=a.clockseq?a.clockseq:q,h=null!=a.msecs?a.msecs:(new Date).getTime(),i=null!=a.nsecs?a.nsecs:s+1,j=h-r+(i-s)/1e4;if(0>j&&null==a.clockseq&&(g=g+1&16383),(0>j||h>r)&&null==a.nsecs&&(i=0),i>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");r=h,s=i,q=g,h+=122192928e5;var k=(1e4*(268435455&h)+i)%4294967296;f[e++]=k>>>24&255,f[e++]=k>>>16&255,f[e++]=k>>>8&255,f[e++]=255&k;var l=h/4294967296*1e4&268435455;f[e++]=l>>>8&255,f[e++]=255&l,f[e++]=l>>>24&15|16,f[e++]=l>>>16&255,f[e++]=g>>>8|128,f[e++]=255&g;for(var m=a.node||p,n=0;6>n;n++)f[e+n]=m[n];return c?c:b(f)}function d(a,c,d){var f=c&&d||0;"string"==typeof a&&(c="binary"==a?new k(16):null,a=null),a=a||{};var g=a.random||(a.rng||e)();if(g[6]=15&g[6]|64,g[8]=63&g[8]|128,c)for(var h=0;16>h;h++)c[f+h]=g[h];return c||b(g)}var e,f=this;if("function"==typeof f.require)try{var g=f.require("crypto").randomBytes;e=g&&function(){return g(16)}}catch(h){}if(!e&&f.crypto&&crypto.getRandomValues){var i=new Uint8Array(16);e=function(){return crypto.getRandomValues(i),i}}if(!e){var j=new Array(16);e=function(){for(var a,b=0;16>b;b++)0===(3&b)&&(a=4294967296*Math.random()),j[b]=a>>>((3&b)<<3)&255;return j}}for(var k="function"==typeof f.Buffer?f.Buffer:Array,l=[],m={},n=0;256>n;n++)l[n]=(n+256).toString(16).substr(1),m[l[n]]=n;var o=e(),p=[1|o[0],o[1],o[2],o[3],o[4],o[5]],q=16383&(o[6]<<8|o[7]),r=0,s=0,t=d;if(t.v1=c,t.v4=d,t.parse=a,t.unparse=b,t.BufferClass=k,"undefined"!=typeof module&&module.exports)module.exports=t;else if("function"==typeof P&&P.amd)P(function(){return t});else{var u=f.uuid;t.noConflict=function(){return f.uuid=u,t},f.uuid=t}}).call(this);var O,P,Q={},R={};R.matchesSelector=M,R.escapeSelector=N,R.clone=b;var S={};c.prototype.addRule=function(a){"use strict";for(var b,c=0,d=this.rules.length;d>c;c++)if(b=this.rules[c],b.id===a.id)return void(this.rules[c]=new o(a));this.rules.push(new o(a))},c.prototype.addTool=function(a){"use strict";this.tools[a.id]=new t(a)},c.prototype.run=function(a,b,c){"use strict";var d=R.queue();this.rules.forEach(function(c){R.ruleShouldRun(c,a,b)&&d.defer(function(d){c.run(a,b,d)})}),d.then(c)},c.prototype.after=function(a,b){"use strict";var c=this.rules;return a.map(function(a){var d=R.findBy(c,"id",a.id);return d.after(a,b)})},e.prototype.matches=function(a){"use strict";return!this.selector||R.matchesSelector(a,this.selector)?!0:!1},e.prototype.run=function(a,b,c){"use strict";b=b||{};var e=b.hasOwnProperty("enabled")?b.enabled:this.enabled,f=b.options||this.options;if(e&&this.matches(a)){var g,h=new d(this),i=R.checkHelper(h,c);try{g=this.evaluate.call(i,a,f)}catch(j){return Q.log(j.message,j.stack),void c(null)}i.isAsync||(h.result=g,setTimeout(function(){c(h)},0))}else c(null)},l.prototype.toJSON=function(){"use strict";return{selector:this.selector,source:this.source}},o.prototype.matches=function(){"use strict";return!0},o.prototype.gather=function(a){"use strict";var b=R.select(this.selector,a);return this.excludeHidden?b.filter(function(a){return!R.isHidden(a)}):b},o.prototype.runChecks=function(a,b,c,d){"use strict";var e=this,f=R.queue();this[a].forEach(function(a){var d=R.getCheckOption(a,e.id,c);f.defer(function(c){a.run(b,d,c)})}),f.then(function(b){b=b.filter(function(a){return a}),d({type:a,results:b})})},o.prototype.run=function(a,b,c){"use strict";var d,e=this.gather(a),f=R.queue(),g=this;d=new m(this),e.forEach(function(a){g.matches(a)&&f.defer(function(c){var e=R.queue();e.defer(function(c){g.runChecks("any",a,b,c)}),e.defer(function(c){g.runChecks("all",a,b,c)}),e.defer(function(c){g.runChecks("none",a,b,c)}),e.then(function(b){if(b.length){var e=!1,f={node:new l(a)};b.forEach(function(a){var b=a.results.filter(function(a){return a});f[a.type]=b,b.length&&(e=!0)}),e&&d.nodes.push(f)}c()})})}),f.then(function(){c(d)})},o.prototype.after=function(a,b){"use strict";var c=p(this),d=this.id;return c.forEach(function(c){var e=q(a.nodes,c.id),f=R.getCheckOption(c,d,b),g=c.after(e,f);e.forEach(function(a){-1===g.indexOf(a)&&(a.filtered=!0)})}),a.nodes=s(a),a},t.prototype.run=function(a,b,c){"use strict";b="undefined"==typeof b?this.options:b,this.active=!0,this._run(a,b,c)},t.prototype.cleanup=function(a){"use strict";this.active=!1,this._cleanup(a)},Q.constants={},Q.constants.result={PASS:"PASS",FAIL:"FAIL",NA:"NA"},Q.constants.raisedMetadata={impact:["minor","moderate","serious","critical"]},Q.version="dev",a.axe=Q,Q.log=function(){"use strict";"object"==typeof console&&console.log&&Function.prototype.apply.call(console.log,console,arguments)},Q.cleanup=u,Q.configure=function(a){"use strict";var b=Q._audit;if(!b)throw new Error("No audit configured");a.reporter&&("function"==typeof a.reporter||V[a.reporter])&&(b.reporter=a.reporter)},Q.getRules=function(a){"use strict";a=a||[];var b=a.length?Q._audit.rules.filter(function(b){return!!a.filter(function(a){return-1!==b.tags.indexOf(a)}).length}):Q._audit.rules,c=Q._audit.data.rules||{};return b.map(function(a){var b=c[a.id]||{description:""};return{ruleId:a.id,description:b.description}})};var T;Q._load=function(a){"use strict";a=w(a),Q._audit=new c(a.reporter),O=a.commons,Q._audit.version=a.version;var b,d;for(b=0,d=a.rules.length;d>b;b++)Q._audit.addRule(a.rules[b]);for(b=0,d=a.tools.length;d>b;b++)Q._audit.addTool(a.tools[b]);Q._audit.data=a.data||{checks:{},rules:{}},x(a.style),R.respondable.subscribe("axe.ping",function(a,b){b({axe:!0})}),R.respondable.subscribe("axe.start",v)};var U,V={};Q.reporter=function(a,b,c){"use strict";V[a]=b,c&&(U=b)},Q.a11yCheck=function(a,b,c){"use strict";"function"==typeof b&&(c=b,b={}),b&&"object"==typeof b||(b={});var d=Q._audit;if(!d)throw new Error("No audit configured");var e=y(b.reporter||d.reporter);z(a,b,function(a){e(a,c)})},Q.tool=A,S.failureSummary=function(a){"use strict";var b={};return b.none=a.none.concat(a.all),b.any=a.any,Object.keys(b).map(function(a){return b[a].length?Q._audit.data.failureSummaries[a].failureMessage(b[a].map(function(a){return a.message||""})):void 0}).filter(function(a){return void 0!==a}).join("\n\n")},S.formatNode=function(a){"use strict";return{target:a?a.selector:null,html:a?a.source:null}},S.splitResults=function(a,b){"use strict";var c=[],d=[];return a.forEach(function(a){function e(c){var d=c.result||a.result,e=S.formatNode(c.node);return e.impact=c.impact||null,b(e,c,d)}var f,g={id:a.id,description:a.description,help:a.help,helpUrl:a.helpUrl||null,impact:null,tags:a.tags,nodes:[]};f=R.clone(g),f.impact=a.impact||null,f.nodes=a.violations.map(e),g.nodes=a.passes.map(e),f.nodes.length&&c.push(f),g.nodes.length&&d.push(g)}),{violations:c,passes:d,url:window.location.href,timestamp:new Date}},Q.reporter("raw",function(a,b){"use strict";b(a)}),Q.reporter("v1",function(a,b){"use strict";b(S.splitResults(a,function(a,b,c){return c===Q.constants.result.FAIL&&(a.failureSummary=S.failureSummary(b)),a}))}),Q.reporter("v2",function(a,b){"use strict";function c(a){return{id:a.id,impact:a.impact,message:a.message,data:a.data,relatedNodes:a.relatedNodes.map(S.formatNode)}}b(S.splitResults(a,function(a,b){return a.any=b.any.map(c),a.all=b.all.map(c),a.none=b.none.map(c),a}))},!0),R.checkHelper=function(a,b){"use strict";return{isAsync:!1,async:function(){return this.isAsync=!0,function(c){a.value=c,b(a)}},data:function(b){a.data=b},relatedNodes:function(b){b=Array.isArray(b)?b:[b],a.relatedNodes=b.map(function(a){return new l(a)})}}},R.sendCommandToFrame=function(a,b,c){"use strict";var d=a.contentWindow;if(!d)return Q.log("Frame does not have a content window",a),c({});var e=setTimeout(function(){e=setTimeout(function(){Q.log("No response from frame: ",a),c(null)},0)},500);R.respondable(d,"axe.ping",null,function(){clearTimeout(e),e=setTimeout(function(){Q.log("Error returning results from frame: ",a),c({}),c=null},3e4),R.respondable(d,"axe.start",b,function(a){c&&(clearTimeout(e),c(a))})})},R.collectResultsFromFrames=function(a,b,c,d,e){"use strict";function f(e){var f={options:b,command:c,parameter:d,context:{initiator:!1,page:a.page,include:e.include||[],exclude:e.exclude||[]}};g.defer(function(a){var b=e.node;R.sendCommandToFrame(b,f,function(c){return c?a({results:c,frameElement:b,frame:R.getSelector(b)}):void a(null)})})}for(var g=R.queue(),h=a.frames,i=0,j=h.length;j>i;i++)f(h[i]);g.then(function(a){e(R.mergeResults(a))})},R.contains=function(a,b){"use strict";return"function"==typeof a.contains?a.contains(b):!!(16&a.compareDocumentPosition(b))},R.extendBlacklist=function(a,b,c){"use strict";c=c||[];for(var d in b)b.hasOwnProperty(d)&&-1===c.indexOf(d)&&(a[d]=b[d]);return a},R.extendMetaData=function(a,b){"use strict";for(var c in b)if(b.hasOwnProperty(c))if("function"==typeof b[c])try{a[c]=b[c](a)}catch(d){a[c]=null}else a[c]=b[c]},R.getFailingChecks=function(a){"use strict";var b=a.any.filter(function(a){return!a.result});return{all:a.all.filter(function(a){return!a.result}),any:b.length===a.any.length?b:[],none:a.none.filter(function(a){return!!a.result})}},R.finalizeRuleResult=function(a){"use strict";return R.publishMetaData(a),D(a)},R.findBy=function(a,b,c){"use strict";a=a||[];var d,e;for(d=0,e=a.length;e>d;d++)if(a[d][b]===c)return a[d]},R.getAllChecks=function(a){"use strict";var b=[];return b.concat(a.any||[]).concat(a.all||[]).concat(a.none||[])},R.getCheckOption=function(a,b,c){"use strict";var d=((c.rules&&c.rules[b]||{}).checks||{})[a.id],e=(c.checks||{})[a.id],f=a.enabled,g=a.options;return e&&(e.hasOwnProperty("enabled")&&(f=e.enabled),e.hasOwnProperty("options")&&(g=e.options)),d&&(d.hasOwnProperty("enabled")&&(f=d.enabled),d.hasOwnProperty("options")&&(g=d.options)),{enabled:f,options:g}},R.getSelector=function(a){"use strict";function b(a){return R.escapeSelector(a)}for(var c,d=[];a.parentNode;){if(c="",a.id&&1===document.querySelectorAll("#"+R.escapeSelector(a.id)).length){d.unshift("#"+R.escapeSelector(a.id));break}if(a.className&&"string"==typeof a.className&&(c="."+a.className.trim().split(/\s+/).map(b).join("."),("."===c||F(a,c))&&(c="")),!c){if(c=R.escapeSelector(a.nodeName).toLowerCase(),"html"===c||"body"===c){d.unshift(c);break}F(a,c)&&(c+=":nth-of-type("+E(a)+")")}d.unshift(c),a=a.parentNode}return d.join(" > ")},R.isHidden=function(a,b){"use strict";if(9===a.nodeType)return!1;var c=a.ownerDocument.defaultView.getComputedStyle(a,null);return c&&a.parentNode&&"none"!==c.getPropertyValue("display")&&(b||"hidden"!==c.getPropertyValue("visibility"))&&"true"!==a.getAttribute("aria-hidden")?R.isHidden(a.parentNode,!0):!0},R.mergeResults=function(a){"use strict";var b=[];return a.forEach(function(a){var c=I(a);c&&c.length&&c.forEach(function(c){c.nodes&&a.frame&&G(c.nodes,a.frameElement,a.frame);var d=R.findBy(b,"id",c.id);d?c.nodes.length&&H(d.nodes,c.nodes):b.push(c)})}),b},R.nodeSorter=function(a,b){"use strict";return a===b?0:4&a.compareDocumentPosition(b)?-1:1},R.publishMetaData=function(a){"use strict";function b(a){return function(b){var d=c[b.id]||{},e=d.messages||{},f=R.extendBlacklist({},d,["messages"]);f.message=b.result===a?e.pass:e.fail,R.extendMetaData(b,f)}}var c=Q._audit.data.checks||{},d=Q._audit.data.rules||{},e=R.findBy(Q._audit.rules,"id",a.id)||{};a.tags=R.clone(e.tags||[]);var f=b(!0),g=b(!1);a.nodes.forEach(function(a){a.any.forEach(f),a.all.forEach(f),a.none.forEach(g)}),R.extendMetaData(a,R.clone(d[a.id]||{}))},function(){"use strict";function a(){}function b(){function b(){for(var a=e.length;a>f;f++){var b=e[f],d=b.shift();b.push(c(f)),d.apply(null,b)}}function c(a){return function(b){e[a]=b,--g||d()}}function d(){h(e)}var e=[],f=0,g=0,h=a;return{defer:function(a){e.push([a]),++g,b()},then:function(a){h=a,g||d()},abort:function(b){h=a,b(e)}}}R.queue=b}(),function(a){"use strict";function b(a){return"object"==typeof a&&"string"==typeof a.uuid&&a._respondable===!0}function c(a,b,c,d,e){var f={uuid:d,topic:b,message:c,_respondable:!0};g[d]=e,a.postMessage(JSON.stringify(f),"*")}function d(a,b,d,e){var f=uuid.v1();c(a,b,d,f,e)}function e(a,b){var c=b.topic,d=b.message,e=h[c];e&&e(d,f(a.source,null,b.uuid))}function f(a,b,d){return function(e,f){c(a,b,e,d,f)}}var g={},h={};d.subscribe=function(a,b){h[a]=b},window.addEventListener("message",function(a){if("string"==typeof a.data){var c;try{c=JSON.parse(a.data)}catch(d){}if(b(c)){var h=c.uuid;g[h]&&(g[h](c.message,f(a.source,c.topic,h)),g[h]=null),e(a,c)}}},!1),a.respondable=d}(R),R.ruleShouldRun=function(a,b,c){"use strict";if(a.pageLevel&&!b.page)return!1;var d=c.runOnly,e=(c.rules||{})[a.id];return d?"rule"===d.type?-1!==d.values.indexOf(a.id):!!(d.values||[]).filter(function(b){return-1!==a.tags.indexOf(b)}).length:(e&&e.hasOwnProperty("enabled")?e.enabled:a.enabled)?!0:!1},R.select=function(a,b){"use strict";for(var c=[],d=0,e=b.include.length;e>d;d++)L(c,b.include[d].querySelectorAll(a),b);return c.sort(R.nodeSorter)},R.toArray=function(a){"use strict";return Array.prototype.slice.call(a)},/*! aXe Rules v1.0.2
13
- * Copyright (c) 2015 Deque Systems, Inc.
14
- *
15
- * Your use of this Source Code Form is subject to the terms of the Mozilla Public
16
- * License, v. 2.0. If a copy of the MPL was not distributed with this
17
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
18
- *
19
- * This entire copyright notice must appear in every copy of this file you
20
- * distribute or in any file that contains substantial portions of this source
21
- * code.
22
- */
23
- Q._load({data:{rules:{accesskeys:{description:"Ensures that each element on the page with an accesskey attribute has a unique value",helpUrl:"https://dequeuniversity.com/courses/html-css/robust-compatibility/markup-validation",help:"accesskey attribute value must be unique"},"area-alt":{helpUrl:"https://dequeuniversity.com/courses/html-css/images/image-maps",help:"Active <area> elements need alternate text",description:"Checks the <area> elements of image maps to ensure that they have an alternative text"},"aria-allowed-attr":{helpUrl:"https://dequeuniversity.com/issues/aria-allowed-attr",help:"ARIA attributes not allowed for role assigned to this element",description:"Checks all attributes that start with 'aria-' to ensure that they are all official WAI-ARIA attributes"},"aria-required-attr":{description:"Checks all elements that contain WAI-ARIA roles to ensure that all required aria- attributes are present",helpUrl:"https://dequeuniversity.com/courses/html-css/forms/special-input-attributes",help:"ARIA attribute not provided for element with given role"},"aria-required-children":{helpUrl:"https://dequeuniversity.com/issues/aria-required-children",description:"Checks all elements that contain a WAI-ARIA role to ensure that all required children roles are present",help:"Certain ARIA roles must contain particular children"},"aria-required-parent":{helpUrl:"https://dequeuniversity.com/issues/aria-required-parent",description:"Checks all elements that contain a WAI-ARIA role to ensure that all required parent roles are present",help:"Certain ARIA roles must be contained by particular parents"},"aria-roles":{description:"Checks all elements that contain the WAI-ARIA role attribute to ensure that the role value is valid",help:"ARIA roles used must conform to valid values",helpUrl:"https://dequeuniversity.com/issues/aria-roles"},"aria-valid-attr-value":{helpUrl:"https://dequeuniversity.com/issues/aria-valid-attr-value",description:"Checks all elements that contain WAI-ARIA atributes to ensure that the values of the attributes are valid",help:"ARIA attributes used must conform to valid values"},"aria-valid-attr":{helpUrl:"https://dequeuniversity.com/issues/aria-valid-attr",description:"Checks all elements that contain WAI-ARIA attributes to ensure that the attributes are valid attributes",help:"ARIA attributes used must conform to valid names"},"audio-caption":{helpUrl:"https://dequeuniversity.com/issues/audio-caption",description:"Checks the use of all <audio> element to ensure that the element contains a <caption> element",help:"HTML5 <audio> elements need a captions track"},blink:{description:"Checks to make sure that the <blink> tag is never used",helpUrl:"https://dequeuniversity.com/courses/html-css/visual-layout/fonts-and-typography#id55_avoid_blink_marquee",help:"The <blink> tag is deprecated and must not be used"},"button-name":{description:"Checks all <button> elements to ensure that they have a discernable accessible name",helpUrl:"https://dequeuniversity.com/courses/html-css/forms/form-labels#id84_example_button",help:"<button> elements must have alternate text"},bypass:{description:"Ensures that each page has at least one mechanism for a keyboard-only user to bypass the navigation and jump straight to the content",helpUrl:"https://dequeuniversity.com/courses/html-css/navigation/",help:"Page must have means to bypass content"},checkboxgroup:{description:"Ensures that all checkbox groups have a group and that that group designation is consistent",helpUrl:"https://dequeuniversity.com/courses/html-css/forms/form-labels#id84_labels_for_checkboxes",help:"Checkbox inputs with the same name must be part of a group"},"color-contrast":{description:"Checks all elements to ensure that the contrast between the foreground and the background meets the WCAG 2 AA contrast ratio thresholds.",help:"Elements must have sufficient color contrast",helpUrl:"https://dequeuniversity.com/courses/html-css/visual-layout/color-contrast"},"data-table":{description:"Checks that data tables are marked up semantically and have the correct header structure",helpUrl:"https://dequeuniversity.com/courses/html-css/data-tables/",help:"Data tables should be marked up properly"},"definition-list":{description:"Ensures that all <dl> elements are structured correctly",help:"<dl> elements must contain properly-ordered <dt> and <dd> elements",helpUrl:"https://dequeuniversity.com/issues/definition-list"},dlitem:{helpUrl:"https://dequeuniversity.com/issues/dlitem",description:"Ensures that all <dd> and <dt> elements have a <dl> as a parent",help:"<dd> and <dt> elements must be contained in a <dl>"},"document-title":{description:"Ensures that each HTML document contains a title",helpUrl:"https://dequeuniversity.com/courses/html-css/structure-and-semantics/page-title",help:"Documents must have <title> element to aid in navigation"},"duplicate-id":{description:"Ensures that each element on the page with an ID attribute has a unique ID attribute value",helpUrl:"https://dequeuniversity.com/courses/html-css/robust-compatibility/markup-validation",help:"ID attribute value must be unique"},"empty-heading":{helpUrl:"https://dequeuniversity.com/issues/empty-heading",description:"Ensures that headings on the page do not contain empty text",help:"Headings should not be empty"},"frame-title":{description:"Ensure that all iframe and frame elements contain a unique and non-empty title attribute",helpUrl:"https://dequeuniversity.com/courses/html-css/frames/titles",help:"Frames must have unique title attribute"},"heading-order":{description:"Ensure that the order in which the headings appear in the DOM is semantically correct",helpUrl:"https://dequeuniversity.com/courses/html-css/structure-and-semantics/headings#id37_use_headings_in_order",help:"Heading levels must only increase by one"},"html-lang":{description:"Ensures that every HTML document has a lang attribute and that it contains a valid value",helpUrl:"https://dequeuniversity.com/courses/html-css/structure-and-semantics/language",help:"documentElement (<html>) must have a valid 'lang' attribute"},"image-alt":{description:"Ensures that every <img> element has alternative text or is marked as presentational",helpUrl:"https://dequeuniversity.com/courses/html-css/images/alt-text",help:"Images must have alternate text"},"input-image-alt":{description:"Ensures that every <input> that represents an image button has an accessible name",helpUrl:"https://dequeuniversity.com/courses/html-css/images/alt-text#id57_active_images_links_and_buttons",help:"Image buttons must have alternate text"},"label-title-only":{description:"Ensures that every <input> that requires a label is not only labeled using the title attribute",helpUrl:"https://dequeuniversity.com/courses/html-css/forms/form-labels",help:"Only title or aria-describedby used to generate label for form element"},label:{description:"Ensures that every input element that requires a label, has an appropriate label",helpUrl:"https://dequeuniversity.com/courses/html-css/forms/form-labels",help:"Form elements must have labels"},"layout-table":{description:"Ensures that <table> elements that are being used for layout do not contain markup only relevant for data tables",help:"Layout tables must not use data table elements",helpUrl:"https://dequeuniversity.com/courses/html-css/data-tables/"},"link-name":{description:"Ensures that every link has an accessible name",helpUrl:"https://dequeuniversity.com/courses/html-css/navigation/links",help:"Links must have alternate text"},list:{description:"Ensures that lists are structured correctly",helpUrl:"https://dequeuniversity.com/courses/html-css/structure-and-semantics/lists-links-blockquote#id38_lists",help:"<ul> and <ol> lists must contain only <li> listitems"},listitem:{description:"Ensures that every list item is used semantically",helpUrl:"https://dequeuniversity.com/courses/html-css/structure-and-semantics/lists-links-blockquote#id38_lists",help:"All <li> elements must be contained in a <ul> or <ol>"},marquee:{description:"Ensures that the deprecated <marquee> tag is not used",helpUrl:"https://dequeuniversity.com/courses/html-css/visual-layout/fonts-and-typography#id55_avoid_blink_marquee",help:"<marquee> elements are deprecated and must not be used"},"meta-refresh":{description:"Ensures that <meta> refresh is not used",help:"Timed refresh must not exist"},"meta-viewport":{description:"Ensures that when <meta> viewport is used, it does not cause text scaling problems",helpUrl:"https://dequeuniversity.com/courses/html-css/visual-layout/fonts-and-typography#id55_ensure_text_resize_to_200_percent",help:"Zooming and scaling must not disabled"},"object-alt":{description:"Ensures that every <object> element has a text alternative",help:"An embedded object must have a text alternative",helpUrl:"https://dequeuniversity.com/issues/object-alt"},radiogroup:{description:"Ensures that radio button groups are part of a group structure",helpUrl:"https://dequeuniversity.com/courses/html-css/forms/form-labels#id84_labels_for_radio_buttons",help:"Radio inputs with the same name must be part of a group"},region:{description:"Ensures that all content on a page is contained within a landmark region",help:"Content must be contained in a region",helpUrl:"https://dequeuniversity.com/courses/html-css/navigation/html5-aria-landmarks"},scope:{description:"Ensures that the scope attribute is used correctly on tables",helpUrl:"https://dequeuniversity.com/courses/html-css/data-tables/row-and-column-headers#id81_associate_header_cells_with_data_cells",help:"scope attribute is used correctly"},"server-side-image-map":{description:"Ensures that server-side image maps are never used",helpUrl:"https://dequeuniversity.com/courses/html-css/images/image-maps#id63_avoid_use_of_server_side_image_maps",help:"Server-side image maps should not be used"},"skip-link":{description:"Ensures that the best practice of having a skip link as the very first link in a page, is adhered-to",helpUrl:"https://dequeuniversity.com/courses/html-css/navigation/skip-navigation",help:"The page must have a skip link as its first link"},tabindex:{description:"Ensures that explicit tabindex attributes that are greater than 0 are never used",helpUrl:"https://dequeuniversity.com/courses/html-css/device-independence/keyboard-tab-order",help:"Elements must not have tabindex greater than zero"},"valid-lang":{description:"Ensures that when the 'lang' attribute is used, it has a valid value",helpUrl:"https://dequeuniversity.com/courses/html-css/structure-and-semantics/language#id35__language_codes",help:"lang attribute must have a valid value"},"video-caption":{description:"Ensures that the HTML5 <video> tag is captioned",helpUrl:"https://dequeuniversity.com/courses/html-css/video-audio-multimedia/",help:"HTML5 video elements need captions"},"video-description":{description:"Ensures that every <video> tag has an audio description",helpUrl:"https://dequeuniversity.com/courses/html-css/video-audio-multimedia/",help:"HTML5 video elements need an audio description track"}},checks:{accesskeys:{impact:"critical",messages:{pass:function(a){var b="Accesskey attribute value is unique";return b},fail:function(a){var b="Document has multiple elements with the same accesskey";return b}}},"non-empty-alt":{impact:"critical",messages:{pass:function(a){var b="Element has a non-empty alt attribute";return b},fail:function(a){var b="Element has no alt attribute or the alt attribute is empty";return b}}},"aria-label":{impact:"critical",messages:{pass:function(a){var b="aria-label attribute exists and is not empty";return b},fail:function(a){var b="aria-label attribute does not exist or is empty";return b}}},"aria-labelledby":{impact:"critical",messages:{pass:function(a){var b="aria-labelledby attribute exists and references elements that are visible to screen readers";return b},fail:function(a){var b="aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty or not visible";return b}}},"aria-allowed-attr":{impact:"critical",messages:{pass:function(a){var b="ARIA attributes are used correctly for the defined role";return b},fail:function(a){var b="ARIA attribute"+(a.data&&a.data.length>1?"s are":" is")+" not allowed:",c=a.data;if(c)for(var d,e=-1,f=c.length-1;f>e;)d=c[e+=1],b+=" "+d;return b}}},"aria-required-attr":{impact:"critical",messages:{pass:function(a){var b="All required ARIA attributes are present";return b},fail:function(a){var b="Required ARIA attribute"+(a.data&&a.data.length>1?"s":"")+" not present:",c=a.data;if(c)for(var d,e=-1,f=c.length-1;f>e;)d=c[e+=1],b+=" "+d;return b}}},"aria-required-children":{impact:"critical",messages:{pass:function(a){var b="Required ARIA children are present";return b},fail:function(a){var b="Required ARIA "+(a.data&&a.data.length>1?"children":"child")+" role not present:",c=a.data;if(c)for(var d,e=-1,f=c.length-1;f>e;)d=c[e+=1],b+=" "+d;return b}}},"aria-required-parent":{impact:"critical",messages:{pass:function(a){var b="Required ARIA parent role present";return b},fail:function(a){var b="Required ARIA parent"+(a.data&&a.data.length>1?"s":"")+" role not present:",c=a.data;if(c)for(var d,e=-1,f=c.length-1;f>e;)d=c[e+=1],b+=" "+d;return b}}},invalidrole:{impact:"critical",messages:{pass:function(a){var b="ARIA role is valid";return b},fail:function(a){var b="Role must be one of the valid ARIA roles";return b}}},abstractrole:{impact:"serious",messages:{pass:function(a){var b="Abstract roles are not used";return b},fail:function(a){var b="Abstract roles cannot be directly used";return b}}},"aria-valid-attr-value":{impact:"critical",messages:{pass:function(a){var b="ARIA attribute values are valid";return b},fail:function(a){var b="Invalid ARIA attribute value"+(a.data&&a.data.length>1?"s":"")+":",c=a.data;if(c)for(var d,e=-1,f=c.length-1;f>e;)d=c[e+=1],b+=" "+d;return b}}},"aria-valid-attr":{impact:"critical",messages:{pass:function(a){var b="ARIA attribute name"+(a.data&&a.data.length>1?"s":"")+" are valid";return b},fail:function(a){var b="Invalid ARIA attribute name"+(a.data&&a.data.length>1?"s":"")+":",c=a.data;if(c)for(var d,e=-1,f=c.length-1;f>e;)d=c[e+=1],b+=" "+d;return b}}},caption:{impact:"critical",messages:{pass:function(a){var b="The multimedia element has a captions track";return b},fail:function(a){var b="The multimedia element does not have a captions track";return b}}},exists:{impact:"minor",messages:{pass:function(a){var b="Element does not exist";return b},fail:function(a){var b="Element exists";return b}}},"non-empty-if-present":{impact:"critical",messages:{pass:function(a){var b="Element ";return b+=a.data?"has a non-empty value attribute":"does not have a value attribute"},fail:function(a){var b="Element has a value attribute and the value attribute is empty";return b}}},"non-empty-value":{impact:"critical",messages:{pass:function(a){var b="Element has a non-empty value attribute";return b},fail:function(a){var b="Element has no value attribute or the value attribute is empty";return b}}},"button-has-visible-text":{impact:"critical",messages:{pass:function(a){var b="Element has inner text that is visible to screen readers";return b},fail:function(a){var b="Element does not have inner text that is visible to screen readers";return b}}},"role-presentation":{impact:"moderate",messages:{pass:function(a){var b='Element\'s default semantics were overriden with role="presentation"';return b},fail:function(a){var b='Element\'s default semantics were not overridden with role="presentation"';return b}}},"duplicate-img-label":{impact:"minor",messages:{pass:function(a){var b="Element does not duplicate existing text in <img> alt text";return b},fail:function(a){var b="Element contains <img> element with alt text that duplicates existing text";return b}}},"focusable-no-name":{impact:"serious",messages:{pass:function(a){var b="Element is not in tab order or has accessible text";return b},fail:function(a){var b="Element is in tab order and does not have accessible text";return b}}},"internal-link-present":{impact:"critical",messages:{pass:function(a){var b="Valid skip link found";return b},fail:function(a){var b="No valid skip link found";return b}}},"header-present":{impact:"moderate",messages:{pass:function(a){var b="Page has a header";return b},fail:function(a){var b="Page does not have a header";return b}}},landmark:{impact:"serious",messages:{pass:function(a){var b="Page has a landmark region";return b},fail:function(a){var b="Page does not have a landmark region";return b}}},"group-labelledby":{impact:"critical",messages:{pass:function(a){var b='All elements with the name "'+a.data.name+'" reference the same element with aria-labelledby';return b},fail:function(a){var b='All elements with the name "'+a.data.name+'" do not reference the same element with aria-labelledby';return b}}},fieldset:{impact:"critical",messages:{pass:function(a){var b="Element is contained in a fieldset";return b},fail:function(a){var b="";return a.data&&a.data.failureCode?"no-legend"===a.data.failureCode?b+="Fieldset does not have a legend as its first child":"empty-legend"===a.data.failureCode?b+="Legend does not have text that is visible to screen readers":"mixed-inputs"===a.data.failureCode?b+="Fieldset contains unrelated inputs":"no-group-label"===a.data.failureCode?b+="ARIA group does not have aria-label or aria-labelledby":"group-mixed-inputs"===a.data.failureCode&&(b+="ARIA group contains unrelated inputs"):b+="Element does not have a containing fieldset or ARIA group",b}}},"color-contrast":{impact:"critical",messages:{pass:function(a){var b="";return b+=a.data&&a.data.contrastRatio?"Element has sufficient color contrast of "+a.data.contrastRatio:"Unable to determine contrast ratio"},fail:function(a){var b="Element has insufficient color contrast of "+a.data.contrastRatio+" (foreground color: "+a.data.fgColor+", background color: "+a.data.bgColor+", font size: "+a.data.fontSize+", font weight: "+a.data.fontWeight+")";return b}}},"consistent-columns":{impact:"critical",messages:{pass:function(a){var b="Table has consistent column widths";return b},fail:function(a){var b="Table does not have the same number of columns in every row";return b}}},"cell-no-header":{impact:"critical",messages:{pass:function(a){var b="All data cells have table headers";return b},fail:function(a){var b="Some data cells do not have table headers";return b}}},"headers-visible-text":{impact:"critical",messages:{pass:function(a){var b="Header cell has visible text";return b},fail:function(a){var b="Header cell does not have visible text";return b}}},"headers-attr-reference":{impact:"critical",messages:{pass:function(a){var b="headers attribute references elements that are visible to screen readers";return b},fail:function(a){var b="headers attribute references element that is not visible to screen readers";return b}}},"th-scope":{impact:"serious",messages:{pass:function(a){var b="<th> elements use scope attribute";return b},fail:function(a){var b="<th> elements must use scope attribute";return b}}},"no-caption":{impact:"serious",messages:{pass:function(a){var b="Table has a <caption>";return b},fail:function(a){var b="Table does not have a <caption>";return b}}},"th-headers-attr":{impact:"serious",messages:{pass:function(a){var b="<th> elements do not use headers attribute";return b},fail:function(a){var b="<th> elements should not use headers attribute";return b}}},"th-single-row-column":{impact:"serious",messages:{pass:function(a){var b="<th> elements are used when there is only a single row and single column of headers";return b},fail:function(a){var b="<th> elements should only be used when there is a single row and single column of headers";return b}}},"same-caption-summary":{impact:"moderate",messages:{pass:function(a){var b="Content of summary attribute and <caption> are not duplicated";return b},fail:function(a){var b="Content of summary attribute and <caption> element are indentical";return b}}},rowspan:{impact:"critical",messages:{pass:function(a){var b="Table does not have cells with rowspan attribute greater than 1";return b},fail:function(a){var b="Table has cells whose rowspan attribute is not equal to 1";return b}}},"has-dlitems":{impact:"serious",messages:{pass:function(a){var b="Element has both <dt> and <dd> elements";return b},fail:function(a){var b="Element does not have at least one <dt> element followed by at least one <dd> element";return b}}},"only-dlitems":{impact:"serious",messages:{pass:function(a){var b="Element only has children that are <dt> or <dd> elements";return b},fail:function(a){var b="Element has children that are not <dt> or <dd> elements";return b}}},dlitem:{impact:"serious",messages:{pass:function(a){var b="Description list item has a <dl> parent element";return b},fail:function(a){var b="Description list item does not have a <dl> parent element";return b}}},"doc-has-title":{impact:"moderate",messages:{pass:function(a){var b="Document has a non-empty <title> element";return b},fail:function(a){var b="Document does not have a non-empty <title> element";return b}}},"duplicate-id":{impact:"critical",messages:{pass:function(a){var b="Document has no elements that share the same id attribute";return b},fail:function(a){var b="Document has multiple elements with the same id attribute";return b}}},"has-visible-text":{impact:"critical",messages:{pass:function(a){var b="Element has text that is visible to screen readers";return b},fail:function(a){var b="Element does not have text that is visible to screen readers";return b}}},"non-empty-title":{impact:"critical",messages:{pass:function(a){var b="Element has a title attribute";return b},fail:function(a){var b="Element has no title attribute or the title attribute is empty";return b}}},"unique-frame-title":{impact:"serious",messages:{pass:function(a){var b="Element's title attribute is unique";return b},fail:function(a){var b="Element's title attribute is not unique";return b}}},"heading-order":{impact:"minor",messages:{pass:function(a){var b="Heading order valid";return b},fail:function(a){var b="Heading order invalid";return b}}},"has-lang":{impact:"serious",messages:{pass:function(a){var b="The <html> element has a lang attribute";return b},fail:function(a){var b="The <html> element does not have a lang attribute";return b}}},"valid-lang":{impact:"serious",messages:{pass:function(a){var b="Value of lang attribute is included in the list of allowable languages";return b},fail:function(a){var b="Value of lang attribute not included in the list of allowable languages";return b}}},"has-alt":{impact:"critical",messages:{pass:function(a){var b="Element has an alt attribute";return b},fail:function(a){var b="Element does not have an alt attribute";return b}}},"title-only":{impact:"serious",messages:{pass:function(a){var b="Form element does not solely use title attribute for its label";return b},fail:function(a){var b="Only title used to generate label for form element";return b}}},"implicit-label":{impact:"critical",messages:{pass:function(a){var b="Form element has an implicit (wrapped) <label>";return b},fail:function(a){var b="Form element does not have an implicit (wrapped) <label>";return b}}},"explicit-label":{impact:"critical",messages:{pass:function(a){var b="Form element has an explicit <label>";return b},fail:function(a){var b="Form element does not have an explicit <label>";return b}}},"help-same-as-label":{impact:"minor",messages:{pass:function(a){var b="Help text (title or aria-describedby) does not duplicate label text";return b},fail:function(a){var b="Help text (title or aria-describedby) text is the same as the label text";return b}}},"multiple-label":{impact:"serious",messages:{pass:function(a){var b="Form element does not have multiple <label> elements";return b},fail:function(a){var b="Form element has multiple <label> elements";return b}}},"has-th":{impact:"serious",messages:{pass:function(a){var b="Layout table does not use <th> elements";return b},fail:function(a){var b="Layout table uses <th> elements";return b}}},"has-caption":{impact:"serious",messages:{pass:function(a){var b="Layout table does not use <caption> element";return b},fail:function(a){var b="Layout table uses <caption> element";return b}}},"has-summary":{impact:"serious",messages:{pass:function(a){var b="Layout table does not use summary attribute";return b},fail:function(a){var b="Layout table uses summary attribute";return b}}},"has-listitem":{impact:"minor",messages:{pass:function(a){var b="List element contains a <li> element";return b},fail:function(a){var b="List element does not contain a <li> element";return b}}},"only-listitems":{impact:"serious",messages:{pass:function(a){var b="List element only has children that are <li> elements";return b},fail:function(a){var b="List element has children that are not <li> elements";return b}}},listitem:{impact:"critical",messages:{pass:function(a){var b="List item has a <ul> or <ol> parent element";return b},fail:function(a){var b="List item does not have a <ul> or <ol> parent element";return b}}},"meta-refresh":{impact:"critical",messages:{pass:function(a){var b="<meta> tag does not immediately refresh the page";return b},fail:function(a){var b="<meta> tag forces timed refresh of page";return b}}},"meta-viewport":{impact:"critical",messages:{pass:function(a){var b="<meta> tag does not disable zooming";return b},fail:function(a){var b="<meta> tag disables zooming";return b}}},region:{impact:"moderate",messages:{pass:function(a){var b="Content contained by ARIA landmark";return b},fail:function(a){var b="Content not contained by an ARIA landmark";return b}}},"html5-scope":{impact:"serious",messages:{pass:function(a){var b="Scope attribute is only used on table header elements (<th>)";return b},fail:function(a){var b="In HTML 5, scope attributes may only be used on table header elements (<th>)";return b}}},"html4-scope":{impact:"serious",messages:{pass:function(a){var b="Scope attribute is only used on table cell elements (<th> and <td>)";return b},fail:function(a){var b="In HTML 4, the scope attribute may only be used on table cell elements (<th> and <td>)";return b}}},"scope-value":{impact:"critical",messages:{pass:function(a){var b="Scope attribute is used correctly";return b},fail:function(a){var b="The value of the scope attribute may only be 'row' or 'col'";return b}}},"skip-link":{impact:"critical",messages:{pass:function(a){var b="Valid skip link found";return b},fail:function(a){var b="No valid skip link found";return b}}},tabindex:{impact:"serious",messages:{pass:function(a){var b="Element does not have a tabindex greater than 0";return b},fail:function(a){var b="Element has a tabindex greater than 0";return b}}},description:{impact:"serious",messages:{pass:function(a){var b="The multimedia element has an audio description track";return b},fail:function(a){var b="The multimedia element does not have an audio description track";return b}}}},failureSummaries:{any:{failureMessage:function(a){var b="Fix any of the following:",c=a;if(c)for(var d,e=-1,f=c.length-1;f>e;)d=c[e+=1],b+="\n "+d.split("\n").join("\n ");return b}},none:{failureMessage:function(a){var b="Fix all of the following:",c=a;if(c)for(var d,e=-1,f=c.length-1;f>e;)d=c[e+=1],b+="\n "+d.split("\n").join("\n ");return b}}}},rules:[{id:"accesskeys",selector:"[accesskey]",tags:["wcag2a","wcag211"],all:[],any:[],none:[{id:"accesskeys",evaluate:function(a,b){return this.data(a.getAttribute("accesskey")),this.relatedNodes([a]),!0},after:function(a,b){var c={};return a.filter(function(a){return c[a.data]?(c[a.data].relatedNodes.push(a.relatedNodes[0]),!1):(c[a.data]=a,a.relatedNodes=[],!0)}).map(function(a){return a.result=!!a.relatedNodes.length,a})}}]},{id:"area-alt",selector:"map area[href]",excludeHidden:!1,tags:["wcag2a","wcag111","section508","section508a"],all:[],any:[{id:"non-empty-alt",evaluate:function(a,b){var c=a.getAttribute("alt");return!!(c?O.text.sanitize(c).trim():"")}},{id:"aria-label",evaluate:function(a,b){var c=a.getAttribute("aria-label");return!!(c?O.text.sanitize(c).trim():"")}},{id:"aria-labelledby",evaluate:function(a,b){var c,d,e=O.dom.idrefs(a,"aria-labelledby"),f=e.length;for(d=0;f>d;d++)if(c=e[d],c&&O.text.accessibleText(c).trim())return!0;return!1}}],none:[]},{id:"aria-allowed-attr",tags:["wcag2a","wcag411"],all:[],any:[{id:"aria-allowed-attr",matches:function(a){var b=a.getAttribute("role");b||(b=O.aria.implicitRole(a));var c=O.aria.allowedAttr(b);if(b&&c){var d=/^aria-/;if(a.hasAttributes())for(var e=a.attributes,f=0,g=e.length;g>f;f++)if(d.test(e[f].nodeName))return!0}return!1},evaluate:function(a,b){var c,d,e,f=[],g=a.getAttribute("role"),h=a.attributes;if(g||(g=O.aria.implicitRole(a)),e=O.aria.allowedAttr(g),g&&e)for(var i=0,j=h.length;j>i;i++)c=h[i],d=c.nodeName,O.aria.validateAttr(d)&&-1===e.indexOf(d)&&f.push(d+'="'+c.nodeValue+'"');return f.length?(this.data(f),!1):!0}}],none:[]},{id:"aria-required-attr",selector:"[role]",tags:["wcag2a","wcag411"],all:[],any:[{id:"aria-required-attr",evaluate:function(a,b){var c=[];if(a.hasAttributes()){var d,e=a.getAttribute("role"),f=O.aria.requiredAttr(e);if(e&&f)for(var g=0,h=f.length;h>g;g++)d=f[g],a.getAttribute(d)||c.push(d)}return c.length?(this.data(c),!1):!0}}],none:[]},{id:"aria-required-children",selector:"[role]",tags:["wcag2a","wcag411"],all:[],any:[{id:"aria-required-children",evaluate:function(a,b){function c(a,b,c){if(null===a)return!1;var d=g(b),e=['[role="'+b+'"]'];return d&&(e=e.concat(d)),e=e.join(","),c?h(a,e)||!!a.querySelector(e):!!a.querySelector(e)}function d(a,b){var d,e;for(d=0,e=a.length;e>d;d++)if(null!==a[d]&&c(a[d],b,!0))return!0;return!1}function e(a,b,e){var f,g=b.length,h=[],j=i(a,"aria-owns");for(f=0;g>f;f++){var k=b[f];if(c(a,k)||d(j,k)){if(!e)return null}else e&&h.push(k)}return h.length?h:!e&&b.length?b:null}var f=O.aria.requiredOwned,g=O.aria.implicitNodes,h=O.utils.matchesSelector,i=O.dom.idrefs,j=a.getAttribute("role"),k=f(j);if(!k)return!0;var l=!1,m=k.one;if(!m){var l=!0;m=k.all}var n=e(a,m,l);return n?(this.data(n),!1):!0}}],none:[]},{id:"aria-required-parent",selector:"[role]",tags:["wcag2a","wcag411"],all:[],any:[{id:"aria-required-parent",evaluate:function(a,b){function c(a){var b=O.aria.implicitNodes(a)||[];return b.concat('[role="'+a+'"]').join(",")}function d(a,b,d){var e,f,g=a.getAttribute("role"),h=[];if(b||(b=O.aria.requiredContext(g)),!b)return null;for(e=0,f=b.length;f>e;e++){if(d&&O.utils.matchesSelector(a,c(b[e])))return null;if(O.dom.findUp(a,c(b[e])))return null;h.push(b[e])}return h}function e(a){for(var b=[],c=null;a;)a.id&&(c=a.ownerDocument.querySelector("[aria-owns~="+O.utils.escapeSelector(a.id)+"]"),c&&b.push(c)),a=a.parentNode;return b.length?b:null}var f=d(a);if(!f)return!0;var g=e(a);if(g)for(var h=0,i=g.length;i>h;h++)if(f=d(g[h],f,!0),!f)return!0;return this.data(f),!1}}],none:[]},{id:"aria-roles",selector:"[role]",tags:["wcag2a","wcag411"],all:[],any:[],none:[{id:"invalidrole",evaluate:function(a,b){return!O.aria.isValidRole(a.getAttribute("role"))}},{id:"abstractrole",evaluate:function(a,b){return"abstract"===O.aria.getRoleType(a.getAttribute("role"))}}]},{id:"aria-valid-attr-value",tags:["wcag2a","wcag411"],all:[],any:[{id:"aria-valid-attr-value",matches:function(a){var b=/^aria-/;if(a.hasAttributes())for(var c=a.attributes,d=0,e=c.length;e>d;d++)if(b.test(c[d].nodeName))return!0;return!1},evaluate:function(a,b){b=Array.isArray(b)?b:[];for(var c,d,e=[],f=/^aria-/,g=a.attributes,h=0,i=g.length;i>h;h++)c=g[h],d=c.nodeName,-1===b.indexOf(d)&&f.test(d)&&!O.aria.validateAttrValue(a,d)&&e.push(d+'="'+c.nodeValue+'"');return e.length?(this.data(e),!1):!0},options:[]}],none:[]},{id:"aria-valid-attr",tags:["wcag2a","wcag411"],all:[],any:[{id:"aria-valid-attr",matches:function(a){var b=/^aria-/;if(a.hasAttributes())for(var c=a.attributes,d=0,e=c.length;e>d;d++)if(b.test(c[d].nodeName))return!0;return!1},evaluate:function(a,b){
24
- b=Array.isArray(b)?b:[];for(var c,d=[],e=/^aria-/,f=a.attributes,g=0,h=f.length;h>g;g++)c=f[g].nodeName,-1===b.indexOf(c)&&e.test(c)&&!O.aria.validateAttr(c)&&d.push(c);return d.length?(this.data(d),!1):!0},options:[]}],none:[]},{id:"audio-caption",selector:"audio",excludeHidden:!1,tags:["wcag2a","wcag122","section508","section508a"],all:[],any:[],none:[{id:"caption",evaluate:function(a,b){return!a.querySelector("track[kind=captions]")}}]},{id:"blink",selector:"blink",tags:["wcag2a","wcag411"],all:[],any:[],none:[{id:"exists",evaluate:function(a,b){return!0}}]},{id:"button-name",selector:'button, [role="button"], input[type="button"], input[type="submit"], input[type="reset"]',tags:["wcag2a","wcag111","section508","section508a"],all:[],any:[{id:"non-empty-if-present",evaluate:function(a,b){var c=a.getAttribute("value");return this.data(c),null===c||""!==O.text.sanitize(c).trim()},selector:'[type="submit"], [type="reset"]'},{id:"non-empty-value",evaluate:function(a,b){var c=a.getAttribute("value");return!!(c?O.text.sanitize(c).trim():"")},selector:'[type="button"]'},{id:"button-has-visible-text",evaluate:function(a,b){return O.text.accessibleText(a).length>0},selector:'button, [role="button"]:not(input)'},{id:"aria-label",evaluate:function(a,b){var c=a.getAttribute("aria-label");return!!(c?O.text.sanitize(c).trim():"")}},{id:"aria-labelledby",evaluate:function(a,b){var c,d,e=O.dom.idrefs(a,"aria-labelledby"),f=e.length;for(d=0;f>d;d++)if(c=e[d],c&&O.text.accessibleText(c).trim())return!0;return!1}},{id:"role-presentation",evaluate:function(a,b){return"presentation"===a.getAttribute("role")}}],none:[{id:"duplicate-img-label",evaluate:function(a,b){for(var c=a.querySelectorAll("img"),d=O.text.visible(a,!0),e=0,f=c.length;f>e;e++){var g=O.text.accessibleText(c[e]);if(g===d&&""!==d)return!0}return!1},enabled:!1},{id:"focusable-no-name",evaluate:function(a,b){var c=a.getAttribute("tabindex"),d=O.dom.isFocusable(a)&&c>-1;return d?!O.text.accessibleText(a):!1}}]},{id:"bypass",selector:"html",pageLevel:!0,matches:function(a){return!!a.querySelector("a[href]")},tags:["wcag2a","wcag241","section508","section508o"],all:[],any:[{id:"internal-link-present",selector:"html",evaluate:function(a,b){return!!a.querySelector('a[href^="#"]')}},{id:"header-present",selector:"html",evaluate:function(a,b){return!!a.querySelector('h1, h2, h3, h4, h5, h6, [role="heading"]')}},{id:"landmark",selector:"html",evaluate:function(a,b){return!!a.querySelector('[role="main"]')}}],none:[]},{id:"checkboxgroup",selector:"input[type=checkbox][name]",tags:["wcag2a","wcag131"],all:[],any:[{id:"group-labelledby",evaluate:function(a,b){this.data({name:a.getAttribute("name"),type:a.getAttribute("type")});var c=a.ownerDocument.querySelectorAll('input[type="'+O.utils.escapeSelector(a.type)+'"][name="'+O.utils.escapeSelector(a.name)+'"]');return c.length<=1?!0:0!==[].map.call(c,function(a){var b=a.getAttribute("aria-labelledby");return b?b.split(/\s+/):[]}).reduce(function(a,b){return a.filter(function(a){return-1!==b.indexOf(a)})}).filter(function(b){var c=a.ownerDocument.getElementById(b);return c&&O.text.accessibleText(c)}).length},after:function(a,b){var c={};return a.filter(function(a){var b=a.data;return b&&(c[b.type]=c[b.type]||{},!c[b.type][b.name])?(c[b.type][b.name]=!0,!0):!1})}},{id:"fieldset",evaluate:function(a,b){function c(a,b){return O.utils.toArray(a.querySelectorAll('select,textarea,button,input:not([name="'+b+'"]):not([type="hidden"])'))}function d(a,b){var d=a.firstElementChild;if(!d||"LEGEND"!==d.nodeName)return i.relatedNodes([a]),h="no-legend",!1;if(!O.text.accessibleText(d))return i.relatedNodes([d]),h="empty-legend",!1;var e=c(a,b);return e.length?(i.relatedNodes(e),h="mixed-inputs",!1):!0}function e(a,b){var d=O.dom.idrefs(a,"aria-labelledby").some(function(a){return a&&O.text.accessibleText(a)}),e=a.getAttribute("aria-label");if(!(d||e&&O.text.sanitize(e)))return i.relatedNodes(a),h="no-group-label",!1;var f=c(a,b);return f.length?(i.relatedNodes(f),h="group-mixed-inputs",!1):!0}function f(a,b){return O.utils.toArray(a).filter(function(a){return a!==b})}function g(b){var c=O.utils.escapeSelector(a.name),g=a.ownerDocument.querySelectorAll('input[type="'+O.utils.escapeSelector(a.type)+'"][name="'+c+'"]');if(g.length<2)return!0;var j=O.dom.findUp(b,"fieldset"),k=O.dom.findUp(b,'[role="group"]'+("radio"===a.type?',[role="radiogroup"]':""));return k||j?j?d(j,c):e(k,c):(h="no-group",i.relatedNodes(f(g,b)),!1)}var h,i=this,j={name:a.getAttribute("name"),type:a.getAttribute("type")},k=g(a);return k||(j.failureCode=h),this.data(j),k},after:function(a,b){var c={};return a.filter(function(a){if(a.result)return!0;var b=a.data;if(b){if(c[b.type]=c[b.type]||{},!c[b.type][b.name])return c[b.type][b.name]=[b],!0;var d=c[b.type][b.name].some(function(a){return a.failureCode===b.failureCode});return d||c[b.type][b.name].push(b),!d}return!1})}}],none:[]},{id:"color-contrast",selector:"*",tags:["wcag2aa","wcag143"],all:[],any:[{id:"color-contrast",matches:function(a){var b=a.nodeName,c=a.type;if("INPUT"===b)return-1===["hidden","range","color","checkbox","radio","image"].indexOf(c)&&!a.disabled;if("SELECT"===b)return!!a.options.length&&!a.disabled;if("TEXTAREA"===b)return!a.disabled;if("OPTION"===b)return!1;if("BUTTON"===b&&a.disabled)return!1;if(""===O.text.visible(a,!1,!0))return!1;var d,e,f=a.ownerDocument.createRange(),g=a.childNodes,h=g.length;for(e=0;h>e;e++)d=g[e],3===d.nodeType&&""!==O.text.sanitize(d.nodeValue)&&f.selectNodeContents(d);var i=f.getClientRects();for(h=i.length,e=0;h>e;e++)if(O.dom.visuallyOverlaps(i[e],a))return!0;return!1},evaluate:function(a,b){var c=[],d=O.color.getBackgroundColor(a,c),e=O.color.getForegroundColor(a);if(null===e||null===d)return!0;var f=a.ownerDocument.defaultView,g=f.getComputedStyle(a),h=parseFloat(g.getPropertyValue("font-size")),i=g.getPropertyValue("font-weight"),j=-1!==["bold","bolder","600","700","800","900"].indexOf(i),k=O.color.hasValidContrastRatio(d,e,h,j);return this.data({fgColor:e.toHexString(),bgColor:d.toHexString(),contrastRatio:k.contrastRatio.toFixed(2),fontSize:(72*h/96).toFixed(1)+"pt",fontWeight:j?"bold":"normal"}),k.isValid||this.relatedNodes(c),k.isValid}}],none:[]},{id:"data-table",selector:"table",matches:function(a){return O.table.isDataTable(a)},tags:["wcag2a","wcag131"],all:[],any:[{id:"consistent-columns",evaluate:function(a,b){for(var c,d=O.table.toArray(a),e=[],f=0,g=d.length;g>f;f++)0===f?c=d[f].length:c!==d[f].length&&e.push(a.rows[f]);return!e.length}}],none:[{id:"cell-no-header",evaluate:function(a,b){for(var c,d,e=[],f=0,g=a.rows.length;g>f;f++){c=a.rows[f];for(var h=0,i=c.cells.length;i>h;h++)d=c.cells[h],!O.table.isDataCell(d)||O.aria.label(d)||O.table.getHeaders(d).length||e.push(d)}return e.length?(this.relatedNodes(e),!0):!1}},{id:"headers-visible-text",evaluate:function(a,b){for(var c,d,e=[],f=0,g=a.rows.length;g>f;f++){c=a.rows[f];for(var h=0,i=c.cells.length;i>h;h++)d=c.cells[h],O.table.isHeader(d)&&!O.text.accessibleText(d)&&e.push(d)}return e.length?(this.relatedNodes(e),!0):!1}},{id:"headers-attr-reference",evaluate:function(a,b){function c(a){a&&O.text.accessibleText(a)||g.push(e)}for(var d,e,f,g=[],h=0,i=a.rows.length;i>h;h++){d=a.rows[h];for(var j=0,k=d.cells.length;k>j;j++)e=d.cells[j],f=O.dom.idrefs(e,"headers"),f.length&&f.forEach(c)}return g.length?(this.relatedNodes(g),!0):!1}},{id:"th-scope",evaluate:function(a,b){for(var c,d,e=[],f=0,g=a.rows.length;g>f;f++){c=a.rows[f];for(var h=0,i=c.cells.length;i>h;h++)d=c.cells[h],"TH"!==d.nodeName||d.getAttribute("scope")||e.push(d)}return e.length?(this.relatedNodes(e),!0):!1}},{id:"no-caption",evaluate:function(a,b){return!(a.caption||{}).textContent},enabled:!1},{id:"th-headers-attr",evaluate:function(a,b){for(var c,d,e=[],f=0,g=a.rows.length;g>f;f++){c=a.rows[f];for(var h=0,i=c.cells.length;i>h;h++)d=c.cells[h],"TH"===d.nodeName&&d.getAttribute("headers")&&e.push(d)}return e.length?(this.relatedNodes(e),!0):!1}},{id:"th-single-row-column",evaluate:function(a,b){for(var c,d,e,f=[],g=[],h=0,i=a.rows.length;i>h;h++){c=a.rows[h];for(var j=0,k=c.cells.length;k>j;j++)d=c.cells[j],d.nodeName&&(O.table.isColumnHeader(d)&&-1===g.indexOf(h)?g.push(h):O.table.isRowHeader(d)&&(e=O.table.getCellPosition(d),-1===f.indexOf(e.x)&&f.push(e.x)))}return g.length>1||f.length>1?!0:!1}},{id:"same-caption-summary",selector:"table",evaluate:function(a,b){return!(!a.summary||!a.caption)&&a.summary===O.text.accessibleText(a.caption)}},{id:"rowspan",evaluate:function(a,b){for(var c,d,e=[],f=0,g=a.rows.length;g>f;f++){c=a.rows[f];for(var h=0,i=c.cells.length;i>h;h++)d=c.cells[h],1!==d.rowSpan&&e.push(d)}return e.length?(this.relatedNodes(e),!0):!1}}]},{id:"definition-list",selector:"dl",tags:["wcag2a","wcag131"],all:[],any:[],none:[{id:"has-dlitems",evaluate:function(a,b){var c=a.children;if(0===c.length)return!0;for(var d=!1,e=0;e<c.length;e++)if("DT"===c[e].nodeName&&(d=!0),d&&"DD"===c[e].nodeName)return!1;return!0}},{id:"only-dlitems",evaluate:function(a,b){for(var c,d=[],e=a.childNodes,f=!1,g=0;g<e.length;g++)c=e[g],1===c.nodeType&&"DT"!==c.nodeName&&"DD"!==c.nodeName?d.push(c):3===c.nodeType&&""!==c.nodeValue.trim()&&(f=!0);return d.length&&this.relatedNodes(d),!!d.length||f}}]},{id:"dlitem",selector:"dd, dt",tags:["wcag2a","wcag131"],all:[],any:[{id:"dlitem",evaluate:function(a,b){return"DL"===a.parentNode.tagName}}],none:[]},{id:"document-title",selector:"html",tags:["wcag2a","wcag242"],all:[],any:[{id:"doc-has-title",evaluate:function(a,b){var c=a.ownerDocument.title;return!!(c?O.text.sanitize(c).trim():"")}}],none:[]},{id:"duplicate-id",selector:"[id]",tags:["wcag2a","wcag411"],all:[],any:[{id:"duplicate-id",evaluate:function(a,b){for(var c=a.ownerDocument.querySelectorAll('[id="'+O.utils.escapeSelector(a.id)+'"]'),d=[],e=0;e<c.length;e++)c[e]!==a&&d.push(c[e]);return d.length&&this.relatedNodes(d),this.data(a.getAttribute("id")),c.length<=1},after:function(a,b){var c=[];return a.filter(function(a){return-1===c.indexOf(a.data)?(c.push(a.data),!0):!1})}}],none:[]},{id:"empty-heading",selector:'h1, h2, h3, h4, h5, h6, [role="heading"]',tags:["wcag2a","wcag131"],all:[],any:[{id:"has-visible-text",evaluate:function(a,b){return O.text.accessibleText(a).length>0}}],none:[]},{id:"frame-title",selector:"frame, iframe",tags:["wcag2a","wcag241"],all:[],any:[{id:"non-empty-title",evaluate:function(a,b){var c=a.getAttribute("title");return!!(c?O.text.sanitize(c).trim():"")}}],none:[{id:"unique-frame-title",evaluate:function(a,b){return this.data(a.title),!0},after:function(a,b){var c={};return a.forEach(function(a){c[a.data]=void 0!==c[a.data]?++c[a.data]:0}),a.filter(function(a){return!!c[a.data]})}}]},{id:"heading-order",selector:"h1,h2,h3,h4,h5,h6,[role=heading]",enabled:!1,tags:["best-practice"],all:[],any:[{id:"heading-order",evaluate:function(a,b){var c=a.getAttribute("aria-level");if(null!==c)return this.data(parseInt(c,10)),!0;var d=a.tagName.match(/H(\d)/);return d?(this.data(parseInt(d[1],10)),!0):!0},after:function(a,b){if(a.length<2)return a;for(var c=a[0].data,d=1;d<a.length;d++)a[d].result&&a[d].data>c+1&&(a[d].result=!1),c=a[d].data;return a}}],none:[]},{id:"html-lang",selector:"html",tags:["wcag2a","wcag311"],all:[],any:[{id:"has-lang",evaluate:function(a,b){return a.hasAttribute("lang")||a.hasAttribute("xml:lang")}}],none:[{id:"valid-lang",options:["en","es","ja"],evaluate:function(a,b){var c=(a.getAttribute("lang")||"").trim().toLowerCase(),d=(a.getAttribute("xml:lang")||"").trim().toLowerCase(),e=[];return(b||[]).forEach(function(a){a=a.toLowerCase(),!c||c!==a&&0!==c.indexOf(a.toLowerCase()+"-")||(c=null),!d||d!==a&&0!==d.indexOf(a.toLowerCase()+"-")||(d=null)}),d&&e.push('xml:lang="'+d+'"'),c&&e.push('lang="'+c+'"'),e.length?(this.data(e),!0):!1}}]},{id:"image-alt",selector:"img",tags:["wcag2a","wcag111","section508","section508a"],all:[],any:[{id:"has-alt",evaluate:function(a,b){return a.hasAttribute("alt")}},{id:"aria-label",evaluate:function(a,b){var c=a.getAttribute("aria-label");return!!(c?O.text.sanitize(c).trim():"")}},{id:"aria-labelledby",evaluate:function(a,b){var c,d,e=O.dom.idrefs(a,"aria-labelledby"),f=e.length;for(d=0;f>d;d++)if(c=e[d],c&&O.text.accessibleText(c).trim())return!0;return!1}},{id:"non-empty-title",evaluate:function(a,b){var c=a.getAttribute("title");return!!(c?O.text.sanitize(c).trim():"")}}],none:[]},{id:"input-image-alt",selector:'input[type="image"]',tags:["wcag2a","wcag111","section508","section508a"],all:[],any:[{id:"non-empty-alt",evaluate:function(a,b){var c=a.getAttribute("alt");return!!(c?O.text.sanitize(c).trim():"")}},{id:"aria-label",evaluate:function(a,b){var c=a.getAttribute("aria-label");return!!(c?O.text.sanitize(c).trim():"")}},{id:"aria-labelledby",evaluate:function(a,b){var c,d,e=O.dom.idrefs(a,"aria-labelledby"),f=e.length;for(d=0;f>d;d++)if(c=e[d],c&&O.text.accessibleText(c).trim())return!0;return!1}}],none:[]},{id:"label-title-only",selector:"input:not([type='hidden']):not([type='image']):not([type='button']):not([type='submit']):not([type='reset']), select, textarea",enabled:!1,tags:["best-practice"],all:[],any:[],none:[{id:"title-only",evaluate:function(a,b){var c=O.text.label(a);return!(c||!a.getAttribute("title")&&!a.getAttribute("aria-describedby"))}}]},{id:"label",selector:"input:not([type='hidden']):not([type='image']):not([type='button']):not([type='submit']):not([type='reset']), select, textarea",tags:["wcag2a","wcag332","wcag131","section508","section508n"],all:[],any:[{id:"aria-label",evaluate:function(a,b){var c=a.getAttribute("aria-label");return!!(c?O.text.sanitize(c).trim():"")}},{id:"aria-labelledby",evaluate:function(a,b){var c,d,e=O.dom.idrefs(a,"aria-labelledby"),f=e.length;for(d=0;f>d;d++)if(c=e[d],c&&O.text.accessibleText(c).trim())return!0;return!1}},{id:"implicit-label",evaluate:function(a,b){var c=O.dom.findUp(a,"label");return c?!!O.text.accessibleText(c):!1}},{id:"explicit-label",evaluate:function(a,b){var c=a.ownerDocument.querySelector('label[for="'+O.utils.escapeSelector(a.id)+'"]');return c?!!O.text.accessibleText(c):!1},selector:"[id]"},{id:"non-empty-title",evaluate:function(a,b){var c=a.getAttribute("title");return!!(c?O.text.sanitize(c).trim():"")}}],none:[{id:"help-same-as-label",evaluate:function(a,b){var c=O.text.label(a),d=a.getAttribute("title");if(!c)return!1;if(!d&&(d="",a.getAttribute("aria-describedby"))){var e=O.dom.idrefs(a,"aria-describedby");d=e.map(function(a){return a?O.text.accessibleText(a):""}).join("")}return O.text.sanitize(d)===O.text.sanitize(c)},enabled:!1},{id:"multiple-label",evaluate:function(a,b){for(var c=[].slice.call(a.ownerDocument.querySelectorAll('label[for="'+O.utils.escapeSelector(a.id)+'"]')),d=a.parentNode;d;)"LABEL"===d.tagName&&-1===c.indexOf(d)&&c.push(d),d=d.parentNode;return this.relatedNodes(c),c.length>1}}]},{id:"layout-table",selector:"table",matches:function(a){return!O.table.isDataTable(a)},tags:["wcag2a","wcag131"],all:[],any:[],none:[{id:"has-th",evaluate:function(a,b){for(var c,d,e=[],f=0,g=a.rows.length;g>f;f++){c=a.rows[f];for(var h=0,i=c.cells.length;i>h;h++)d=c.cells[h],"TH"===d.nodeName&&e.push(d)}return e.length?(this.relatedNodes(e),!0):!1}},{id:"has-caption",evaluate:function(a,b){return!!a.caption}},{id:"has-summary",evaluate:function(a,b){return!!a.summary}}]},{id:"link-name",selector:'a[href]:not([role="button"]), [role=link][href]',tags:["wcag2a","wcag111","wcag412","section508","section508a"],all:[],any:[{id:"has-visible-text",evaluate:function(a,b){return O.text.accessibleText(a).length>0}},{id:"aria-label",evaluate:function(a,b){var c=a.getAttribute("aria-label");return!!(c?O.text.sanitize(c).trim():"")}},{id:"aria-labelledby",evaluate:function(a,b){var c,d,e=O.dom.idrefs(a,"aria-labelledby"),f=e.length;for(d=0;f>d;d++)if(c=e[d],c&&O.text.accessibleText(c).trim())return!0;return!1}},{id:"role-presentation",evaluate:function(a,b){return"presentation"===a.getAttribute("role")}}],none:[{id:"duplicate-img-label",evaluate:function(a,b){for(var c=a.querySelectorAll("img"),d=O.text.visible(a,!0),e=0,f=c.length;f>e;e++){var g=O.text.accessibleText(c[e]);if(g===d&&""!==d)return!0}return!1},enabled:!1},{id:"focusable-no-name",evaluate:function(a,b){var c=a.getAttribute("tabindex"),d=O.dom.isFocusable(a)&&c>-1;return d?!O.text.accessibleText(a):!1}}]},{id:"list",selector:"ul, ol",tags:["wcag2a","wcag131"],all:[],any:[],none:[{id:"has-listitem",evaluate:function(a,b){var c=a.children;if(0===c.length)return!0;for(var d=0;d<c.length;d++)if("LI"===c[d].nodeName)return!1;return!0}},{id:"only-listitems",evaluate:function(a,b){for(var c,d=[],e=a.childNodes,f=!1,g=0;g<e.length;g++)c=e[g],1===c.nodeType&&"LI"!==c.nodeName?d.push(c):3===c.nodeType&&""!==c.nodeValue.trim()&&(f=!0);return d.length&&this.relatedNodes(d),!!d.length||f}}]},{id:"listitem",selector:"li",tags:["wcag2a","wcag131"],all:[],any:[{id:"listitem",evaluate:function(a,b){return-1!==["UL","OL"].indexOf(a.parentNode.tagName)}}],none:[]},{id:"marquee",selector:"marquee",tags:["wcag2a","wcag222","section508","section508j"],all:[],any:[],none:[{id:"exists",evaluate:function(a,b){return!0}}]},{id:"meta-refresh",selector:'meta[http-equiv="refresh"]',excludeHidden:!1,tags:["wcag2a","wcag2aaa","wcag221","wcag224","wcag325"],all:[],any:[{id:"meta-refresh",evaluate:function(a,b){var c=a.getAttribute("content")||"",d=c.split(/[;,]/);return""===c||"0"===d[0]}}],none:[]},{id:"meta-viewport",selector:'meta[name="viewport"]',excludeHidden:!1,tags:["wcag2aa","wcag144"],all:[],any:[{id:"meta-viewport",evaluate:function(a,b){for(var c,d=a.getAttribute("content")||"",e=d.split(/[;,]/),f={},g=0,h=e.length;h>g;g++){c=e[g].split("=");var i=c.shift();i&&c.length&&(f[i.trim()]=c.join("=").trim())}return f["maximum-scale"]&&parseFloat(f["maximum-scale"])<5?!1:"no"===f["user-scalable"]?!1:!0}}],none:[]},{id:"object-alt",selector:"object",tags:["wcag2a","wcag111"],all:[],any:[{id:"has-visible-text",evaluate:function(a,b){return O.text.accessibleText(a).length>0}}],none:[]},{id:"radiogroup",selector:"input[type=radio][name]",tags:["wcag2a","wcag131"],all:[],any:[{id:"group-labelledby",evaluate:function(a,b){this.data({name:a.getAttribute("name"),type:a.getAttribute("type")});var c=a.ownerDocument.querySelectorAll('input[type="'+O.utils.escapeSelector(a.type)+'"][name="'+O.utils.escapeSelector(a.name)+'"]');return c.length<=1?!0:0!==[].map.call(c,function(a){var b=a.getAttribute("aria-labelledby");return b?b.split(/\s+/):[]}).reduce(function(a,b){return a.filter(function(a){return-1!==b.indexOf(a)})}).filter(function(b){var c=a.ownerDocument.getElementById(b);return c&&O.text.accessibleText(c)}).length},after:function(a,b){var c={};return a.filter(function(a){var b=a.data;return b&&(c[b.type]=c[b.type]||{},!c[b.type][b.name])?(c[b.type][b.name]=!0,!0):!1})}},{id:"fieldset",evaluate:function(a,b){function c(a,b){return O.utils.toArray(a.querySelectorAll('select,textarea,button,input:not([name="'+b+'"]):not([type="hidden"])'))}function d(a,b){var d=a.firstElementChild;if(!d||"LEGEND"!==d.nodeName)return i.relatedNodes([a]),h="no-legend",!1;if(!O.text.accessibleText(d))return i.relatedNodes([d]),h="empty-legend",!1;var e=c(a,b);return e.length?(i.relatedNodes(e),h="mixed-inputs",!1):!0}function e(a,b){var d=O.dom.idrefs(a,"aria-labelledby").some(function(a){return a&&O.text.accessibleText(a)}),e=a.getAttribute("aria-label");if(!(d||e&&O.text.sanitize(e)))return i.relatedNodes(a),h="no-group-label",!1;var f=c(a,b);return f.length?(i.relatedNodes(f),h="group-mixed-inputs",!1):!0}function f(a,b){return O.utils.toArray(a).filter(function(a){return a!==b})}function g(b){var c=O.utils.escapeSelector(a.name),g=a.ownerDocument.querySelectorAll('input[type="'+O.utils.escapeSelector(a.type)+'"][name="'+c+'"]');if(g.length<2)return!0;var j=O.dom.findUp(b,"fieldset"),k=O.dom.findUp(b,'[role="group"]'+("radio"===a.type?',[role="radiogroup"]':""));return k||j?j?d(j,c):e(k,c):(h="no-group",i.relatedNodes(f(g,b)),!1)}var h,i=this,j={name:a.getAttribute("name"),type:a.getAttribute("type")},k=g(a);return k||(j.failureCode=h),this.data(j),k},after:function(a,b){var c={};return a.filter(function(a){if(a.result)return!0;var b=a.data;if(b){if(c[b.type]=c[b.type]||{},!c[b.type][b.name])return c[b.type][b.name]=[b],!0;var d=c[b.type][b.name].some(function(a){return a.failureCode===b.failureCode});return d||c[b.type][b.name].push(b),!d}return!1})}}],none:[]},{id:"region",selector:"html",pageLevel:!0,enabled:!1,tags:["best-practice"],all:[],any:[{id:"region",evaluate:function(a,b){function c(a){return h&&O.dom.isFocusable(O.dom.getElementByReference(h,"href"))&&h===a}function d(a){var b=a.getAttribute("role");return b&&-1!==g.indexOf(b)}function e(a){return d(a)?null:c(a)?f(a):O.dom.isVisible(a,!0)&&(O.text.visible(a,!0,!0)||O.dom.isVisualContent(a))?a:f(a)}function f(a){var b=O.utils.toArray(a.children);return 0===b.length?[]:b.map(e).filter(function(a){return null!==a}).reduce(function(a,b){return a.concat(b)},[])}var g=O.aria.getRolesByType("landmark"),h=a.querySelector("a[href]"),i=f(a);return this.relatedNodes(i),!i.length},after:function(a,b){return[a[0]]}}],none:[]},{id:"scope",selector:"[scope]",tags:["wcag2a","wcag411","wcag131"],all:[],any:[{id:"html5-scope",evaluate:function(a,b){return O.dom.isHTML5(a.ownerDocument)?"TH"===a.nodeName:!1}},{id:"html4-scope",evaluate:function(a,b){return O.dom.isHTML5(a.ownerDocument)?!1:"TH"===a.nodeName||"TD"===a.nodeName}}],none:[{id:"scope-value",evaluate:function(a,b){var c=a.getAttribute("scope");return"row"!==c&&"col"!==c}}]},{id:"server-side-image-map",selector:"img[ismap]",tags:["wcag2a","wcag211","section508","section508f"],all:[],any:[],none:[{id:"exists",evaluate:function(a,b){return!0}}]},{id:"skip-link",selector:"a[href]",pageLevel:!0,enabled:!1,tags:["best-practice"],all:[],any:[{id:"skip-link",selector:"a[href]",evaluate:function(a,b){return O.dom.isFocusable(O.dom.getElementByReference(a,"href"))},after:function(a,b){return[a[0]]}}],none:[]},{id:"tabindex",selector:"[tabindex]",tags:["wcag2a","wcag243"],all:[],any:[{id:"tabindex",evaluate:function(a,b){return a.tabIndex<=0}}],none:[]},{id:"valid-lang",selector:"[lang]:not(html), [xml\\:lang]:not(html)",tags:["wcag2aa","wcag312"],all:[],any:[],none:[{id:"valid-lang",options:["en","es","ja"],evaluate:function(a,b){var c=(a.getAttribute("lang")||"").trim().toLowerCase(),d=(a.getAttribute("xml:lang")||"").trim().toLowerCase(),e=[];return(b||[]).forEach(function(a){a=a.toLowerCase(),!c||c!==a&&0!==c.indexOf(a.toLowerCase()+"-")||(c=null),!d||d!==a&&0!==d.indexOf(a.toLowerCase()+"-")||(d=null)}),d&&e.push('xml:lang="'+d+'"'),c&&e.push('lang="'+c+'"'),e.length?(this.data(e),!0):!1}}]},{id:"video-caption",selector:"video",tags:["wcag2a","wcag122","wcag123","section508","section508a"],all:[],any:[],none:[{id:"caption",evaluate:function(a,b){return!a.querySelector("track[kind=captions]")}}]},{id:"video-description",selector:"video",tags:["wcag2aa","wcag125","section508","section508a"],all:[],any:[],none:[{id:"description",evaluate:function(a,b){return!a.querySelector("track[kind=descriptions]")}}]}],commons:function(){function a(b){"use strict";var c,d,e=b;if(null!==b&&"object"==typeof b)if(Array.isArray(b))for(e=[],c=0,d=b.length;d>c;c++)e[c]=a(b[c]);else{e={};for(c in b)e[c]=a(b[c])}return e}function b(a){"use strict";var b=a.match(/rect\s*\(([0-9]+)px,?\s*([0-9]+)px,?\s*([0-9]+)px,?\s*([0-9]+)px\s*\)/);return b&&5===b.length?b[3]-b[1]<=0&&b[2]-b[4]<=0:!1}function c(a){var b=null;return a.id&&(b=a.ownerDocument.querySelector('label[for="'+v.escapeSelector(a.id)+'"]'))?b:b=s.findUp(a,"label")}function d(a){return-1!==["button","reset","submit"].indexOf(a.type)}function e(a){return"TEXTAREA"===a.nodeName||"SELECT"===a.nodeName||"INPUT"===a.nodeName&&"hidden"!==a.type}function f(a){return-1!==["BUTTON","SUMMARY","A"].indexOf(a.nodeName)}function g(a){return-1!==["TABLE","FIGURE"].indexOf(a.nodeName)}function h(a){if("INPUT"===a.nodeName)return!a.hasAttribute("type")||-1!==z.indexOf(a.getAttribute("type"))&&a.value?a.value:"";if("SELECT"===a.nodeName){var b=a.options;if(b&&b.length){for(var c="",d=0;d<b.length;d++)b[d].selected&&(c+=" "+b[d].text);return u.sanitize(c)}return""}return"TEXTAREA"===a.nodeName&&a.value?a.value:""}function i(a,b){var c=a.querySelector(b);return c?u.accessibleText(c):""}function j(a){if(!a)return!1;switch(a.nodeName){case"SELECT":case"TEXTAREA":return!0;case"INPUT":return!a.hasAttribute("type")||-1!==z.indexOf(a.getAttribute("type"));default:return!1}}function k(a){return"INPUT"===a.nodeName&&"image"===a.type||-1!==["IMG","APPLET","AREA"].indexOf(a.nodeName)}function l(a){return!!u.sanitize(a)}var m={};m.version="dev";var n=function(){"use strict";function a(a){var b,c,d=a.Element.prototype,e=["matches","matchesSelector","mozMatchesSelector","webkitMatchesSelector","msMatchesSelector"],f=e.length;for(b=0;f>b;b++)if(c=e[b],d[c])return c}var b;return function(c,d){return b&&c[b]||(b=a(c.ownerDocument.defaultView)),c[b](d)}}(),o=function(a){"use strict";for(var b,c=String(a),d=c.length,e=-1,f="",g=c.charCodeAt(0);++e<d;){if(b=c.charCodeAt(e),0==b)throw new Error("INVALID_CHARACTER_ERR");f+=b>=1&&31>=b||b>=127&&159>=b||0==e&&b>=48&&57>=b||1==e&&b>=48&&57>=b&&45==g?"\\"+b.toString(16)+" ":(1!=e||45!=b||45!=g)&&(b>=128||45==b||95==b||b>=48&&57>=b||b>=65&&90>=b||b>=97&&122>=b)?c.charAt(e):"\\"+c.charAt(e)}return f},p=m.aria={},q=p._lut={};q.attributes={"aria-activedescendant":{type:"http://www.w3.org/2001/XMLSchema#idref"},"aria-atomic":{type:"http://www.w3.org/2001/XMLSchema#boolean",values:["true","false"]},"aria-autocomplete":{type:"http://www.w3.org/2001/XMLSchema#nmtoken",values:["inline","list","both","none"]},"aria-busy":{type:"http://www.w3.org/2001/XMLSchema#boolean",values:["true","false"]},"aria-checked":{type:"http://www.w3.org/2001/XMLSchema#nmtoken",values:["true","false","mixed","undefined"]},"aria-controls":{type:"http://www.w3.org/2001/XMLSchema#idrefs"},"aria-describedby":{type:"http://www.w3.org/2001/XMLSchema#idrefs"},"aria-disabled":{type:"http://www.w3.org/2001/XMLSchema#boolean",values:["true","false"]},"aria-dropeffect":{type:"http://www.w3.org/2001/XMLSchema#nmtokens",values:["copy","move","reference","execute","popup","none"]},"aria-expanded":{type:"http://www.w3.org/2001/XMLSchema#nmtoken",values:["true","false","undefined"]},"aria-flowto":{type:"http://www.w3.org/2001/XMLSchema#idrefs"},"aria-grabbed":{type:"http://www.w3.org/2001/XMLSchema#nmtoken",values:["true","false","undefined"]},"aria-haspopup":{type:"http://www.w3.org/2001/XMLSchema#boolean",values:["true","false"]},"aria-hidden":{type:"http://www.w3.org/2001/XMLSchema#boolean",values:["true","false"]},"aria-invalid":{type:"http://www.w3.org/2001/XMLSchema#nmtoken",values:["true","false","spelling","grammar"]},"aria-label":{type:"http://www.w3.org/2001/XMLSchema#string"},"aria-labelledby":{type:"http://www.w3.org/2001/XMLSchema#idrefs"},"aria-level":{type:"http://www.w3.org/2001/XMLSchema#int"},"aria-live":{type:"http://www.w3.org/2001/XMLSchema#nmtoken",values:["off","polite","assertive"]},"aria-multiline":{type:"http://www.w3.org/2001/XMLSchema#boolean",values:["true","false"]},"aria-multiselectable":{type:"http://www.w3.org/2001/XMLSchema#boolean",values:["true","false"]},"aria-orientation":{type:"http://www.w3.org/2001/XMLSchema#nmtoken",values:["horizontal","vertical"]},"aria-owns":{type:"http://www.w3.org/2001/XMLSchema#idrefs"},"aria-posinset":{type:"http://www.w3.org/2001/XMLSchema#int"},"aria-pressed":{type:"http://www.w3.org/2001/XMLSchema#nmtoken",values:["true","false","mixed","undefined"]},"aria-readonly":{type:"http://www.w3.org/2001/XMLSchema#boolean",values:["true","false"]},"aria-relevant":{type:"http://www.w3.org/2001/XMLSchema#nmtokens",values:["additions","removals","text","all"]},"aria-required":{type:"http://www.w3.org/2001/XMLSchema#boolean",values:["true","false"]},"aria-selected":{type:"http://www.w3.org/2001/XMLSchema#nmtoken",values:["true","false","undefined"]},"aria-setsize":{type:"http://www.w3.org/2001/XMLSchema#int"},"aria-sort":{type:"http://www.w3.org/2001/XMLSchema#nmtoken",values:["ascending","descending","other","none"]},"aria-valuemax":{type:"http://www.w3.org/2001/XMLSchema#decimal"},"aria-valuemin":{type:"http://www.w3.org/2001/XMLSchema#decimal"},"aria-valuenow":{type:"http://www.w3.org/2001/XMLSchema#decimal"},"aria-valuetext":{type:"http://www.w3.org/2001/XMLSchema#string"}},q.globalAttributes=["aria-atomic","aria-busy","aria-controls","aria-describedby","aria-disabled","aria-dropeffect","aria-flowto","aria-grabbed","aria-haspopup","aria-hidden","aria-invalid","aria-label","aria-labelledby","aria-live","aria-owns","aria-relevant"],q.role={alert:{type:"widget",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null},alertdialog:{type:"widget",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null},application:{type:"landmark",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null},article:{type:"structure",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null,implicit:["article"]},banner:{type:"landmark",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null},button:{type:"widget",attributes:{allowed:["aria-expanded","aria-pressed"]},owned:null,nameFrom:["author","contents"],context:null,implicit:["button",'input[type="button"]','input[type="image"]']},checkbox:{type:"widget",attributes:{required:["aria-checked"]},owned:null,nameFrom:["author","contents"],context:null,implicit:['input[type="checkbox"]']},columnheader:{type:"structure",attributes:{allowed:["aria-expanded","aria-sort","aria-readonly","aria-selected","aria-required"]},owned:null,nameFrom:["author","contents"],context:["row"]},combobox:{type:"composite",attributes:{required:["aria-expanded"],allowed:["aria-autocomplete","aria-required","aria-activedescendant"]},owned:{all:["listbox","textbox"]},nameFrom:["author"],context:null},command:{nameFrom:["author"],type:"abstract"},complementary:{type:"landmark",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null,implicit:["aside"]},composite:{nameFrom:["author"],type:"abstract"},contentinfo:{type:"landmark",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null},definition:{type:"structure",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null},dialog:{type:"widget",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null,implicit:["dialog"]},directory:{type:"structure",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author","contents"],context:null},document:{type:"structure",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null,implicit:["body"]},form:{type:"landmark",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null},grid:{type:"composite",attributes:{allowed:["aria-level","aria-multiselectable","aria-readonly","aria-activedescendant","aria-expanded"]},owned:{one:["rowgroup","row"]},nameFrom:["author"],context:null},gridcell:{type:"widget",attributes:{allowed:["aria-selected","aria-readonly","aria-expanded","aria-required"]},owned:null,nameFrom:["author","contents"],context:["row"]},group:{type:"structure",attributes:{allowed:["aria-activedescendant","aria-expanded"]},owned:null,nameFrom:["author"],context:null,implicit:["details"]},heading:{type:"structure",attributes:{allowed:["aria-level","aria-expanded"]},owned:null,nameFrom:["author","contents"],context:null,implicit:["h1","h2","h3","h4","h5","h6"]},img:{type:"structure",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null,implicit:["img"]},input:{nameFrom:["author"],type:"abstract"},landmark:{nameFrom:["author"],type:"abstract"},link:{type:"widget",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author","contents"],context:null,implicit:["a[href]"]},list:{type:"structure",attributes:{
25
- allowed:["aria-expanded"]},owned:{all:["listitem"]},nameFrom:["author"],context:null,implicit:["ol","ul"]},listbox:{type:"composite",attributes:{allowed:["aria-activedescendant","aria-multiselectable","aria-required","aria-expanded"]},owned:{all:["option"]},nameFrom:["author"],context:null,implicit:["select"]},listitem:{type:"structure",attributes:{allowed:["aria-level","aria-posinset","aria-setsize","aria-expanded"]},owned:null,nameFrom:["author","contents"],context:["list"],implicit:["li"]},log:{type:"widget",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null},main:{type:"landmark",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null},marquee:{type:"widget",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null},math:{type:"structure",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null},menu:{type:"composite",attributes:{allowed:["aria-activedescendant","aria-expanded"]},owned:{one:["menuitem","menuitemradio","menuitemcheckbox"]},nameFrom:["author"],context:null},menubar:{type:"composite",attributes:{allowed:["aria-activedescendant","aria-expanded"]},owned:null,nameFrom:["author"],context:null},menuitem:{type:"widget",attributes:null,owned:null,nameFrom:["author","contents"],context:["menu","menubar"]},menuitemcheckbox:{type:"widget",attributes:{required:["aria-checked"]},owned:null,nameFrom:["author","contents"],context:["menu","menubar"]},menuitemradio:{type:"widget",attributes:{allowed:["aria-selected","aria-posinset","aria-setsize"],required:["aria-checked"]},owned:null,nameFrom:["author","contents"],context:["menu","menubar"]},navigation:{type:"landmark",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null},note:{type:"structure",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null},option:{type:"widget",attributes:{allowed:["aria-selected","aria-posinset","aria-setsize","aria-checked"]},owned:null,nameFrom:["author","contents"],context:["listbox"]},presentation:{type:"structure",attributes:null,owned:null,nameFrom:["author"],context:null},progressbar:{type:"widget",attributes:{allowed:["aria-valuetext","aria-valuenow","aria-valuemax","aria-valuemin"]},owned:null,nameFrom:["author"],context:null},radio:{type:"widget",attributes:{allowed:["aria-selected","aria-posinset","aria-setsize"],required:["aria-checked"]},owned:null,nameFrom:["author","contents"],context:null,implicit:['input[type="radio"]']},radiogroup:{type:"composite",attributes:{allowed:["aria-activedescendant","aria-required","aria-expanded"]},owned:{all:["radio"]},nameFrom:["author"],context:null},range:{nameFrom:["author"],type:"abstract"},region:{type:"structure",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null,implicit:["section"]},roletype:{type:"abstract"},row:{type:"structure",attributes:{allowed:["aria-level","aria-selected","aria-activedescendant","aria-expanded"]},owned:{one:["columnheader","rowheader","gridcell"]},nameFrom:["author","contents"],context:["rowgroup","grid","treegrid"]},rowgroup:{type:"structure",attributes:{allowed:["aria-activedescendant","aria-expanded"]},owned:{all:["row"]},nameFrom:["author","contents"],context:["grid"]},rowheader:{type:"structure",attributes:{allowed:["aria-sort","aria-required","aria-readonly","aria-expanded","aria-selected"]},owned:null,nameFrom:["author","contents"],context:["row"]},scrollbar:{type:"widget",attributes:{required:["aria-controls","aria-orientation","aria-valuenow","aria-valuemax","aria-valuemin"],allowed:["aria-valuetext"]},owned:null,nameFrom:["author"],context:null},search:{type:"landmark",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null},section:{nameFrom:["author","contents"],type:"abstract"},sectionhead:{nameFrom:["author","contents"],type:"abstract"},select:{nameFrom:["author"],type:"abstract"},separator:{type:"structure",attributes:{allowed:["aria-expanded","aria-orientation"]},owned:null,nameFrom:["author"],context:null},slider:{type:"widget",attributes:{allowed:["aria-valuetext","aria-orientation"],required:["aria-valuenow","aria-valuemax","aria-valuemin"]},owned:null,nameFrom:["author"],context:null},spinbutton:{type:"widget",attributes:{allowed:["aria-valuetext","aria-required"],required:["aria-valuenow","aria-valuemax","aria-valuemin"]},owned:null,nameFrom:["author"],context:null},status:{type:"widget",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null,implicit:["output"]},structure:{type:"abstract"},tab:{type:"widget",attributes:{allowed:["aria-selected","aria-expanded"]},owned:null,nameFrom:["author","contents"],context:["tablist"]},tablist:{type:"composite",attributes:{allowed:["aria-activedescendant","aria-expanded","aria-level","aria-multiselectable"]},owned:{all:["tab"]},nameFrom:["author"],context:null},tabpanel:{type:"widget",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null},textbox:{type:"widget",attributes:{allowed:["aria-activedescendant","aria-autocomplete","aria-multiline","aria-readonly","aria-required"]},owned:null,nameFrom:["author"],context:null,implicit:['input[type="text"]',"input:not([type])"]},timer:{type:"widget",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null},toolbar:{type:"structure",attributes:{allowed:["aria-activedescendant","aria-expanded"]},owned:null,nameFrom:["author"],context:null,implicit:['menu[type="toolbar"]']},tooltip:{type:"widget",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author","contents"],context:null},tree:{type:"composite",attributes:{allowed:["aria-activedescendant","aria-multiselectable","aria-required","aria-expanded"]},owned:{all:["treeitem"]},nameFrom:["author"],context:null},treegrid:{type:"composite",attributes:{allowed:["aria-activedescendant","aria-expanded","aria-level","aria-multiselectable","aria-readonly","aria-required"]},owned:{all:["treeitem"]},nameFrom:["author"],context:null},treeitem:{type:"widget",attributes:{allowed:["aria-checked","aria-selected","aria-expanded","aria-level","aria-posinset","aria-setsize"]},owned:null,nameFrom:["author","contents"],context:["treegrid","tree"]},widget:{type:"abstract"},window:{nameFrom:["author"],type:"abstract"}};var r={};m.color=r;var s=m.dom={},t=m.table={},u=m.text={},v=m.utils={};v.escapeSelector=o,v.matchesSelector=n,v.clone=a,p.requiredAttr=function(a){"use strict";var b=q.role[a],c=b&&b.attributes&&b.attributes.required;return c||[]},p.allowedAttr=function(a){"use strict";var b=q.role[a],c=b&&b.attributes&&b.attributes.allowed||[],d=b&&b.attributes&&b.attributes.required||[];return c.concat(q.globalAttributes).concat(d)},p.validateAttr=function(a){"use strict";return!!q.attributes[a]},p.validateAttrValue=function(a,b){"use strict";var c,d,e,f,g=a.ownerDocument,h=a.getAttribute(b),i=q.attributes[b];if(!i)return!0;if(i.values)return"string"==typeof h&&-1!==i.values.indexOf(h.toLowerCase())?!0:!1;switch(i.type){case"http://www.w3.org/2001/XMLSchema#idref":return!(!h||!g.getElementById(h));case"http://www.w3.org/2001/XMLSchema#idrefs":for(c=v.tokenList(h),d=0,e=c.length;e>d;d++)if(c[d]&&!g.getElementById(c[d]))return!1;return!!c.length;case"http://www.w3.org/2001/XMLSchema#string":return!0;case"http://www.w3.org/2001/XMLSchema#decimal":return f=h.match(/^[-+]?([0-9]*)\.?([0-9]*)$/),!(!f||!f[1]&&!f[2]);case"http://www.w3.org/2001/XMLSchema#int":return/^[-+]?[0-9]+$/.test(h)}},p.label=function(a){var b,c;return a.getAttribute("aria-labelledby")&&(b=s.idrefs(a,"aria-labelledby"),c=b.map(function(a){return a?u.visible(a,!0):""}).join(" ").trim())?c:(c=a.getAttribute("aria-label"),c&&(c=u.sanitize(c).trim())?c:null)},p.isValidRole=function(a){"use strict";return q.role[a]?!0:!1},p.getRolesWithNameFromContents=function(){return Object.keys(q.role).filter(function(a){return q.role[a].nameFrom&&-1!==q.role[a].nameFrom.indexOf("contents")})},p.getRolesByType=function(a){return Object.keys(q.role).filter(function(b){return q.role[b].type===a})},p.getRoleType=function(a){var b=q.role[a];return b&&b.type||null},p.requiredOwned=function(a){"use strict";var b=null,c=q.role[a];return c&&(b=v.clone(c.owned)),b},p.requiredContext=function(a){"use strict";var b=null,c=q.role[a];return c&&(b=v.clone(c.context)),b},p.implicitNodes=function(a){"use strict";var b=null,c=q.role[a];return c&&c.implicit&&(b=v.clone(c.implicit)),b},p.implicitRole=function(a){"use strict";var b,c,d,e=q.role;for(b in e)if(e.hasOwnProperty(b)&&(c=e[b],c.implicit))for(var f=0,g=c.implicit.length;g>f;f++)if(d=c.implicit[f],v.matchesSelector(a,d))return b;return null},r.Color=function(a,b,c,d){this.red=a,this.green=b,this.blue=c,this.alpha=d,this.toHexString=function(){var a=Math.round(this.red).toString(16),b=Math.round(this.green).toString(16),c=Math.round(this.blue).toString(16);return"#"+(this.red>15.5?a:"0"+a)+(this.green>15.5?b:"0"+b)+(this.blue>15.5?c:"0"+c)};var e=/^rgb\((\d+), (\d+), (\d+)\)$/,f=/^rgba\((\d+), (\d+), (\d+), (\d*(\.\d+)?)\)/;this.parseRgbString=function(a){var b=a.match(e);return b?(this.red=parseInt(b[1],10),this.green=parseInt(b[2],10),this.blue=parseInt(b[3],10),void(this.alpha=1)):(b=a.match(f),b?(this.red=parseInt(b[1],10),this.green=parseInt(b[2],10),this.blue=parseInt(b[3],10),void(this.alpha=parseFloat(b[4]))):void 0)},this.getRelativeLuminance=function(){var a=this.red/255,b=this.green/255,c=this.blue/255,d=.03928>=a?a/12.92:Math.pow((a+.055)/1.055,2.4),e=.03928>=b?b/12.92:Math.pow((b+.055)/1.055,2.4),f=.03928>=c?c/12.92:Math.pow((c+.055)/1.055,2.4);return.2126*d+.7152*e+.0722*f}},r.flattenColors=function(a,b){var c=a.alpha,d=(1-c)*b.red+c*a.red,e=(1-c)*b.green+c*a.green,f=(1-c)*b.blue+c*a.blue,g=a.alpha+b.alpha*(1-a.alpha);return new r.Color(d,e,f,g)},r.getContrast=function(a,b){if(!b||!a)return null;b.alpha<1&&(b=r.flattenColors(b,a));var c=a.getRelativeLuminance(),d=b.getRelativeLuminance();return(Math.max(d,c)+.05)/(Math.min(d,c)+.05)},r.hasValidContrastRatio=function(a,b,c,d){var e=r.getContrast(a,b),f=d&&Math.ceil(72*c)/96<14||!d&&Math.ceil(72*c)/96<18;return{isValid:f&&e>=4.5||!f&&e>=3,contrastRatio:e}};var w=function(a){var b,c=a.ownerDocument.defaultView,d=c.getComputedStyle(a);if("none"!==d.getPropertyValue("background-image"))return null;var e=d.getPropertyValue("background-color");"transparent"===e?b=new r.Color(0,0,0,0):(b=new r.Color,b.parseRgbString(e));var f=d.getPropertyValue("opacity");return b.alpha=b.alpha*f,b};s.isOpaque=function(a){var b=w(a);return null===b||1===b.alpha?!0:!1};var x=function(a,b){for(var c,d,e,f,g,h,i,j=[],k=!1,l=a.ownerDocument.defaultView,m=a,n=l.getComputedStyle(m);null!==m&&(!s.isOpaque(m)||0===parseInt(n.getPropertyValue("height"),10));)e=n.getPropertyValue("position"),f=n.getPropertyValue("top"),g=n.getPropertyValue("bottom"),h=n.getPropertyValue("left"),i=n.getPropertyValue("right"),("static"!==e&&"relative"!==e||"relative"===e&&("auto"!==h||"auto"!==i||"auto"!==f||"auto"!==g))&&(k=!0),m=m.parentElement,null!==m&&(n=l.getComputedStyle(m),0!==parseInt(n.getPropertyValue("height"),10)&&j.push(m));return k&&s.supportsElementsFromPoint(a.ownerDocument)&&(c=s.elementsFromPoint(a.ownerDocument,Math.ceil(b.left+1),Math.ceil(b.top+1)),c&&(d=c.indexOf(a))<c.length-1&&(j=c.slice(d+1))),j};r.getBackgroundColor=function(a,b){var c,d,e=w(a);if(!b||null!==e&&0===e.alpha||b.push(a),null===e||1===e.alpha)return e;a.scrollIntoView();for(var f=a.getBoundingClientRect(),g=a,h=[{color:e,node:a}],i=x(g,f);1!==e.alpha;){if(c=i.shift(),!c&&"HTML"!==g.tagName)return null;if(c||"HTML"!==g.tagName){if(!s.visuallyContains(a,c))return null;if(d=w(c),!b||null!==d&&0===d.alpha||b.push(c),null===d)return null}else d=new r.Color(255,255,255,1);g=c,e=d,h.push({color:e,node:g})}for(var j=h.pop(),k=j.color;void 0!==(j=h.pop());)k=r.flattenColors(j.color,k);return k},r.getForegroundColor=function(a){var b=a.ownerDocument.defaultView,c=b.getComputedStyle(a),d=new r.Color;d.parseRgbString(c.getPropertyValue("color"));var e=c.getPropertyValue("opacity");if(d.alpha=d.alpha*e,1===d.alpha)return d;var f=r.getBackgroundColor(a);return null===f?null:r.flattenColors(d,f)},s.findUp=function(a,b){"use strict";var c,d=a.ownerDocument,e=d.querySelectorAll(b),f=e.length;if(!f)return null;for(e=v.toArray(e),c=a.parentNode;c&&-1===e.indexOf(c);)c=c.parentNode;return c},s.getElementByReference=function(a,b){"use strict";var c,d=a.getAttribute(b),e=a.ownerDocument;if(d&&"#"===d.charAt(0)){if(d=d.substring(1),c=e.getElementById(d))return c;if(c=e.getElementsByName(d),c.length)return c[0]}return null},s.getElementCoordinates=function(a){"use strict";var b=a.ownerDocument,c=s.getScrollOffset(b),d=c.left,e=c.top,f=a.getBoundingClientRect();return{top:f.top+e,right:f.right+d,bottom:f.bottom+e,left:f.left+d,width:f.right-f.left,height:f.bottom-f.top}},s.supportsElementsFromPoint=function(a){var b=a.createElement("x");return b.style.cssText="pointer-events:auto","auto"===b.style.pointerEvents||!!a.msElementsFromPoint},s.elementsFromPoint=function(a,b,c){var d,e,f,g=[],h=[];if(a.msElementsFromPoint){var i=a.msElementsFromPoint(b,c);return i?Array.prototype.slice.call(i):null}for(;(d=a.elementFromPoint(b,c))&&-1===g.indexOf(d)&&null!==d&&(g.push(d),h.push({value:d.style.getPropertyValue("pointer-events"),priority:d.style.getPropertyPriority("pointer-events")}),d.style.setProperty("pointer-events","none","important"),!s.isOpaque(d)););for(e=h.length;f=h[--e];)g[e].style.setProperty("pointer-events",f.value?f.value:"",f.priority);return g},s.getScrollOffset=function(a){"use strict";if(!a.nodeType&&a.document&&(a=a.document),9===a.nodeType){var b=a.documentElement,c=a.body;return{left:b&&b.scrollLeft||c&&c.scrollLeft||0,top:b&&b.scrollTop||c&&c.scrollTop||0}}return{left:a.scrollLeft,top:a.scrollTop}},s.getViewportSize=function(a){"use strict";var b,c=a.document,d=c.documentElement;return a.innerWidth?{width:a.innerWidth,height:a.innerHeight}:d?{width:d.clientWidth,height:d.clientHeight}:(b=c.body,{width:b.clientWidth,height:b.clientHeight})},s.idrefs=function(a,b){"use strict";var c,d,e=a.ownerDocument,f=[],g=a.getAttribute(b);if(g)for(g=v.tokenList(g),c=0,d=g.length;d>c;c++)f.push(e.getElementById(g[c]));return f},s.isFocusable=function(a){"use strict";if(!a||a.disabled||!s.isVisible(a)&&"AREA"!==a.nodeName)return!1;switch(a.nodeName){case"A":case"AREA":if(a.href)return!0;break;case"INPUT":return"hidden"!==a.type;case"TEXTAREA":case"SELECT":case"DETAILS":case"BUTTON":return!0}var b=a.getAttribute("tabindex");return b&&!isNaN(parseInt(b,10))?!0:!1},s.isHTML5=function(a){var b=a.doctype;return null===b?!1:"html"===b.name&&!b.publicId&&!b.systemId},s.isNode=function(a){"use strict";var b=a&&a.ownerDocument||a,c=b&&b.defaultView;return!!c&&a instanceof c.Node},s.isOffscreen=function(a){"use strict";var b,c=a.ownerDocument,d=c.defaultView,e=c.documentElement,f=d.getComputedStyle(c.body||e).getPropertyValue("direction"),g=s.getElementCoordinates(a);if(g.bottom<0)return!0;if("ltr"===f){if(g.right<0)return!0}else if(b=Math.max(e.scrollWidth,s.getViewportSize(d).width),g.left>b)return!0;return!1},s.isVisible=function(a,c,d){"use strict";var e,f=a.nodeName,g=a.parentNode;return 9===a.nodeType?!0:(e=a.ownerDocument.defaultView.getComputedStyle(a,null),null===e?!1:"none"===e.getPropertyValue("display")||"STYLE"===f||"SCRIPT"===f||!c&&b(e.getPropertyValue("clip"))||!d&&("hidden"===e.getPropertyValue("visibility")||!c&&s.isOffscreen(a))||c&&"true"===a.getAttribute("aria-hidden")?!1:g?s.isVisible(g,c,!0):!1)},s.isVisualContent=function(a){"use strict";switch(a.tagName.toUpperCase()){case"IMG":case"IFRAME":case"OBJECT":case"VIDEO":case"AUDIO":case"CANVAS":case"SVG":case"MATH":case"BUTTON":case"SELECT":case"TEXTAREA":case"KEYGEN":case"PROGRESS":case"METER":return!0;case"INPUT":return"hidden"!==a.type;default:return!1}},s.visuallyContains=function(a,b){var c=a.getBoundingClientRect(),d=b.getBoundingClientRect(),e=d.top,f=d.left,g={top:e-b.scrollTop,bottom:e-b.scrollTop+b.scrollHeight,left:f-b.scrollLeft,right:f-b.scrollLeft+b.scrollWidth};if(c.left<g.left&&c.left<d.left||c.top<g.top&&c.top<d.top||c.right>g.right&&c.right>d.right||c.bottom>g.bottom&&c.bottom>d.bottom)return!1;var h=a.ownerDocument.defaultView,i=h.getComputedStyle(b);return c.right>d.right||c.bottom>d.bottom?"scroll"===i.overflow||"auto"===i.overflow||"hidden"===i.overflow||b instanceof h.HTMLBodyElement||b instanceof h.HTMLHtmlElement:!0},s.visuallyOverlaps=function(a,b){var c=b.getBoundingClientRect(),d=c.top,e=c.left,f={top:d-b.scrollTop,bottom:d-b.scrollTop+b.scrollHeight,left:e-b.scrollLeft,right:e-b.scrollLeft+b.scrollWidth};if(a.left>f.right&&a.left>c.right||a.top>f.bottom&&a.top>c.bottom||a.right<f.left&&a.right<c.left||a.bottom<f.top&&a.bottom<c.top)return!1;var g=b.ownerDocument.defaultView,h=g.getComputedStyle(b);return a.left>c.right||a.top>c.bottom?"scroll"===h.overflow||"auto"===h.overflow||b instanceof g.HTMLBodyElement||b instanceof g.HTMLHtmlElement:!0},t.getCellPosition=function(a){for(var b,c=t.toArray(s.findUp(a,"table")),d=0;d<c.length;d++)if(c[d]&&(b=c[d].indexOf(a),-1!==b))return{x:b,y:d}},t.getHeaders=function(a){if(a.getAttribute("headers"))return m.dom.idrefs(a,"headers");for(var b,c=[],d=m.table.toArray(m.dom.findUp(a,"table")),e=m.table.getCellPosition(a),f=e.x-1;f>=0;f--)b=d[e.y][f],m.table.isRowHeader(b)&&c.unshift(b);for(var g=e.y-1;g>=0;g--)b=d[g][e.x],b&&m.table.isColumnHeader(b)&&c.unshift(b);return c},t.isColumnHeader=function(a){var b=a.getAttribute("scope");if("col"===b)return!0;if(b||"TH"!==a.nodeName)return!1;for(var c,d=t.getCellPosition(a),e=t.toArray(s.findUp(a,"table")),f=e[d.y],g=0,h=f.length;h>g;g++)if(c=f[g],c!==a&&t.isDataCell(c))return!1;return!0},t.isDataCell=function(a){return a.children.length||a.textContent.trim()?"TD"===a.nodeName:!1},t.isDataTable=function(a){var b=a.ownerDocument.defaultView,c=a.getAttribute("role");if("presentation"===c&&!s.isFocusable(a))return!1;if("true"===a.getAttribute("contenteditable")||s.findUp(a,'[contenteditable="true"]'))return!0;if("grid"===c||"treegrid"===c)return!0;if("landmark"===m.aria.getRoleType(c))return!0;if("0"===a.getAttribute("datatable"))return!1;if(a.getAttribute("summary"))return!0;if(a.tHead||a.tFoot||a.caption)return!0;for(var d=0,e=a.children.length;e>d;d++)if("COLGROUP"===a.children[d].nodeName)return!0;for(var f,g,h=0,i=a.rows.length,j=!1,k=0;i>k;k++){f=a.rows[k];for(var l=0,n=f.cells.length;n>l;l++){if(g=f.cells[l],j||g.offsetWidth===g.clientWidth&&g.offsetHeight===g.clientHeight||(j=!0),g.getAttribute("scope")||g.getAttribute("headers")||g.getAttribute("abbr"))return!0;if("TH"===g.nodeName)return!0;if(1===g.children.length&&"ABBR"===g.children[0].nodeName)return!0;h++}}if(a.getElementsByTagName("table").length)return!1;if(2>i)return!1;var o=a.rows[Math.ceil(i/2)];if(1===o.cells.length&&1===o.cells[0].colSpan)return!1;if(o.cells.length>=5)return!0;if(j)return!0;var p,q;for(k=0;i>k;k++){if(f=a.rows[k],p&&p!==b.getComputedStyle(f).getPropertyValue("background-color"))return!0;if(p=b.getComputedStyle(f).getPropertyValue("background-color"),q&&q!==b.getComputedStyle(f).getPropertyValue("background-image"))return!0;q=b.getComputedStyle(f).getPropertyValue("background-image")}return i>=20?!0:s.getElementCoordinates(a).width>.95*s.getViewportSize(b).width?!1:10>h?!1:a.querySelector("object, embed, iframe, applet")?!1:!0},t.isHeader=function(a){return t.isColumnHeader(a)||t.isRowHeader(a)?!0:a.id?!!a.ownerDocument.querySelector('[headers~="'+v.escapeSelector(a.id)+'"]'):!1},t.isRowHeader=function(a){var b=a.getAttribute("scope");if("row"===b)return!0;if(b||"TH"!==a.nodeName)return!1;if(t.isColumnHeader(a))return!1;for(var c,d=t.getCellPosition(a),e=t.toArray(s.findUp(a,"table")),f=0,g=e.length;g>f;f++)if(c=e[f][d.x],c!==a&&t.isDataCell(c))return!1;return!0},t.toArray=function(a){for(var b=[],c=a.rows,d=0,e=c.length;e>d;d++){var f=c[d].cells;b[d]=b[d]||[];for(var g=0,h=0,i=f.length;i>h;h++)for(var j=0;j<f[h].colSpan;j++){for(var k=0;k<f[h].rowSpan;k++){for(b[d+k]=b[d+k]||[];b[d+k][g];)g++;b[d+k][g]=f[h]}g++}}return b};var y={submit:"Submit",reset:"Reset"},z=["text","search","tel","url","email","date","time","number","range","color"],A=["a","em","strong","small","mark","abbr","dfn","i","b","s","u","code","var","samp","kbd","sup","sub","q","cite","span","bdo","bdi","br","wbr","ins","del","img","embed","object","iframe","map","area","script","noscript","ruby","video","audio","input","textarea","select","button","label","output","datalist","keygen","progress","command","canvas","time","meter"];return u.accessibleText=function(a){function b(a,b,g){var h="";if(f(a)&&(h=n(a,!1,!1)||"",l(h)))return h;if("FIGURE"===a.nodeName&&(h=i(a,"figcaption"),l(h)))return h;if("TABLE"===a.nodeName){if(h=i(a,"caption"),l(h))return h;if(h=a.getAttribute("title")||a.getAttribute("summary")||"",l(h))return h}if(k(a))return a.getAttribute("alt")||"";if(e(a)&&!g){if(d(a))return a.value||a.title||y[a.type]||"";var j=c(a);if(j)return o(j,b,!0)}return""}function m(a,b,c){return!b&&a.hasAttribute("aria-labelledby")?u.sanitize(s.idrefs(a,"aria-labelledby").map(function(b){return a===b&&q.pop(),o(b,!0,a!==b)}).join(" ")):c&&j(a)||!a.hasAttribute("aria-label")?"":u.sanitize(a.getAttribute("aria-label"))}function n(a,b,c){for(var d,e=a.childNodes,f="",g=0;g<e.length;g++)d=e[g],3===d.nodeType?f+=d.textContent:1===d.nodeType&&(-1===A.indexOf(d.nodeName.toLowerCase())&&(f+=" "),f+=o(e[g],b,c));return f}function o(a,c,d){"use strict";var e="";if(null===a||!s.isVisible(a,!0)||-1!==q.indexOf(a))return"";q.push(a);var f=a.getAttribute("role");return e+=m(a,c,d),l(e)?e:(e=b(a,c,d),l(e)?e:d&&(e+=h(a),l(e))?e:g(a)||f&&-1===p.getRolesWithNameFromContents().indexOf(f)||(e=n(a,c,d),!l(e))?a.hasAttribute("title")?a.getAttribute("title"):"":e)}var q=[];return u.sanitize(o(a))},u.label=function(a){var b,c;return(c=p.label(a))?c:a.id&&(b=a.ownerDocument.querySelector('label[for="'+v.escapeSelector(a.id)+'"]'),c=b&&u.visible(b,!0))?c:(b=s.findUp(a,"label"),c=b&&u.visible(b,!0),c?c:null)},u.sanitize=function(a){"use strict";return a.replace(/\r\n/g,"\n").replace(/\u00A0/g," ").replace(/[\s]{2,}/g," ").trim()},u.visible=function(a,b,c){"use strict";var d,e,f,g=a.childNodes,h=g.length,i="";for(d=0;h>d;d++)e=g[d],3===e.nodeType?(f=e.nodeValue,f&&s.isVisible(a,b)&&(i+=e.nodeValue)):c||(i+=u.visible(e,b));return u.sanitize(i)},v.toArray=function(a){"use strict";return Array.prototype.slice.call(a)},v.tokenList=function(a){"use strict";return a.trim().replace(/\s{2,}/g," ").split(" ")},m}(),version:"1.0.2"}),Q.version="1.0.1"}(this);
12
+ !function(a,b){function c(a){"use strict";var b,d,e=a;if(null!==a&&"object"==typeof a)if(Array.isArray(a))for(e=[],b=0,d=a.length;d>b;b++)e[b]=c(a[b]);else{e={};for(b in a)e[b]=c(a[b])}return e}function d(a){"use strict";var b=a||{};return b.rules=b.rules||[],b.tools=b.tools||[],b.checks=b.checks||[],b.data=b.data||{checks:{},rules:{}},b}function e(a,b,c){"use strict";var d,e;for(d=0,e=a.length;e>d;d++)b[c](a[d])}function f(a){"use strict";a=d(a),S.commons=R=a.commons,this.reporter=a.reporter,this.rules=[],this.tools={},this.checks={},e(a.rules,this,"addRule"),e(a.tools,this,"addTool"),e(a.checks,this,"addCheck"),this.data=a.data||{checks:{},rules:{}},H(a.style)}function g(a){"use strict";this.id=a.id,this.data=null,this.relatedNodes=[],this.result=null}function h(a){"use strict";this.id=a.id,this.options=a.options,this.selector=a.selector,this.evaluate=a.evaluate,a.after&&(this.after=a.after),a.matches&&(this.matches=a.matches),this.enabled=a.hasOwnProperty("enabled")?a.enabled:!0}function i(a,b){"use strict";if(!T.isHidden(b)){var c=T.findBy(a.frames,"node",b);c||a.frames.push({node:b,include:[],exclude:[]})}}function j(a,c,d){"use strict";a.frames=a.frames||[];var e,f,g=b.querySelectorAll(d.shift());a:for(var h=0,i=g.length;i>h;h++){f=g[h];for(var j=0,k=a.frames.length;k>j;j++)if(a.frames[j].node===f){a.frames[j][c].push(d);break a}e={node:f,include:[],exclude:[]},d&&e[c].push(d),a.frames.push(e)}}function k(a){"use strict";if(a&&"object"==typeof a||a instanceof NodeList){if(a instanceof Node)return{include:[a],exclude:[]};if(a.hasOwnProperty("include")||a.hasOwnProperty("exclude"))return{include:a.include||[b],exclude:a.exclude||[]};if(a.length===+a.length)return{include:a,exclude:[]}}return"string"==typeof a?{include:[a],exclude:[]}:{include:[b],exclude:[]}}function l(a,c){"use strict";for(var d,e=[],f=0,g=a[c].length;g>f;f++){if(d=a[c][f],"string"==typeof d){e=e.concat(T.toArray(b.querySelectorAll(d)));break}d&&d.length?d.length>1?j(a,c,d):e=e.concat(T.toArray(b.querySelectorAll(d[0]))):e.push(d)}return e.filter(function(b){if(b){if("IFRAME"===b.nodeName||"FRAME"===b.nodeName)return i(a,b),!1;T.toArray(b.querySelectorAll("iframe, frame")).forEach(function(b){i(a,b)})}return b})}function m(a){"use strict";this.frames=[],this.initiator=a&&"boolean"==typeof a.initiator?a.initiator:!0,this.page=!1,a=k(a),this.exclude=a.exclude,this.include=a.include,this.include=l(this,"include"),this.exclude=l(this,"exclude"),1===this.include.length&&this.include[0]===b&&(this.page=!0)}function n(a){"use strict";this.id=a.id,this.result=S.constants.result.NA,this.pageLevel=a.pageLevel,this.impact=null,this.nodes=[]}function o(a,b){"use strict";this._audit=b,this.id=a.id,this.selector=a.selector||"*",this.excludeHidden="boolean"==typeof a.excludeHidden?a.excludeHidden:!0,this.enabled="boolean"==typeof a.enabled?a.enabled:!0,this.pageLevel="boolean"==typeof a.pageLevel?a.pageLevel:!1,this.any=a.any||[],this.all=a.all||[],this.none=a.none||[],this.tags=a.tags||[],a.matches&&(this.matches=a.matches)}function p(a){"use strict";return T.getAllChecks(a).map(function(b){var c=a._audit.checks[b.id||b];return"function"==typeof c.after?c:null}).filter(Boolean)}function q(a,b){"use strict";var c=[];return a.forEach(function(a){var d=T.getAllChecks(a);d.forEach(function(a){a.id===b&&c.push(a)})}),c}function r(a){"use strict";return a.filter(function(a){return a.filtered!==!0})}function s(a){"use strict";var b=["any","all","none"],c=a.nodes.filter(function(a){var c=0;return b.forEach(function(b){a[b]=r(a[b]),c+=a[b].length}),c>0});return a.pageLevel&&c.length&&(c=[c.reduce(function(a,c){return a?(b.forEach(function(b){a[b].push.apply(a[b],c[b])}),a):void 0})]),c}function t(a){"use strict";a.source=a.source||{},this.id=a.id,this.options=a.options,this._run=a.source.run,this._cleanup=a.source.cleanup,this.active=!1}function u(a){"use strict";if(!S._audit)throw new Error("No audit configured");var c=T.queue();Object.keys(S._audit.tools).forEach(function(a){var b=S._audit.tools[a];b.active&&c.defer(function(a){b.cleanup(a)})}),T.toArray(b.querySelectorAll("frame, iframe")).forEach(function(a){c.defer(function(b){return T.sendCommandToFrame(a,{command:"cleanup-tool"},b)})}),c.then(a)}function v(a,c){"use strict";var d=a&&a.context||{};d.include&&!d.include.length&&(d.include=[b]);var e=a&&a.options||{};switch(a.command){case"rules":return x(d,e,c);case"run-tool":return y(a.parameter,a.selectorArray,e,c);case"cleanup-tool":return u(c)}}function w(a){"use strict";return"string"==typeof a&&W[a]?W[a]:"function"==typeof a?a:V}function x(a,b,c){"use strict";a=new m(a);var d=T.queue(),e=S._audit;a.frames.length&&d.defer(function(c){T.collectResultsFromFrames(a,b,"rules",null,c)}),d.defer(function(c){e.run(a,b,c)}),d.then(function(d){var f=T.mergeResults(d.map(function(a){return{results:a}}));a.initiator&&(f=e.after(f,b),f=f.map(T.finalizeRuleResult)),c(f)})}function y(a,c,d,e){"use strict";if(!S._audit)throw new Error("No audit configured");if(c.length>1){var f=b.querySelector(c.shift());return T.sendCommandToFrame(f,{options:d,command:"run-tool",parameter:a,selectorArray:c},e)}var g=b.querySelector(c.shift());S._audit.tools[a].run(g,d,e)}function z(a,b){"use strict";if(b=b||300,a.length>b){var c=a.indexOf(">");a=a.substring(0,c+1)}return a}function A(a){"use strict";var b=a.outerHTML;return b||"function"!=typeof XMLSerializer||(b=(new XMLSerializer).serializeToString(a)),z(b||"")}function B(a,b){"use strict";b=b||{},this.selector=b.selector||[T.getSelector(a)],this.source=void 0!==b.source?b.source:A(a),this.element=a}function C(a,b){"use strict";Object.keys(S.constants.raisedMetadata).forEach(function(c){var d=S.constants.raisedMetadata[c],e=b.reduce(function(a,b){var e=d.indexOf(b[c]);return e>a?e:a},-1);d[e]&&(a[c]=d[e])})}function D(a){"use strict";var b=a.any.length||a.all.length||a.none.length;return b?S.constants.result.FAIL:S.constants.result.PASS}function E(a){"use strict";function b(a){return T.extendBlacklist({},a,["result"])}var c=T.extendBlacklist({violations:[],passes:[]},a,["nodes"]);return a.nodes.forEach(function(a){var d=T.getFailingChecks(a),e=D(d);return e===S.constants.result.FAIL?(C(a,T.getAllChecks(d)),a.any=d.any.map(b),a.all=d.all.map(b),a.none=d.none.map(b),void c.violations.push(a)):(a.any=a.any.filter(function(a){return a.result}).map(b),a.all=a.all.map(b),a.none=a.none.map(b),void c.passes.push(a))}),C(c,c.violations),c.result=c.violations.length?S.constants.result.FAIL:c.passes.length?S.constants.result.PASS:c.result,c}function F(a){"use strict";for(var b=1,c=a.nodeName;a=a.previousElementSibling;)a.nodeName===c&&b++;return b}function G(a,b){"use strict";var c,d,e=a.parentNode.children;if(!e)return!1;var f=e.length;for(c=0;f>c;c++)if(d=e[c],d!==a&&T.matchesSelector(d,b))return!0;return!1}function H(a){"use strict";if(X&&X.parentNode&&(X.parentNode.removeChild(X),X=null),a){var c=b.head||b.getElementsByTagName("head")[0];return X=b.createElement("style"),X.type="text/css",void 0===X.styleSheet?X.appendChild(b.createTextNode(a)):X.styleSheet.cssText=a,c.appendChild(X),X}}function I(a,b,c){"use strict";a.forEach(function(a){a.node.selector.unshift(c),a.node=new T.DqElement(b,a.node);var d=T.getAllChecks(a);d.length&&d.forEach(function(a){a.relatedNodes.forEach(function(a){a.selector.unshift(c),a=new T.DqElement(b,a)})})})}function J(a,b){"use strict";for(var c,d,e=b[0].node,f=0,g=a.length;g>f;f++)if(d=a[f].node,c=T.nodeSorter(d.element,e.element),c>0||0===c&&e.selector.length<d.selector.length)return void a.splice.apply(a,[f,0].concat(b));a.push.apply(a,b)}function K(a){"use strict";return a&&a.results?Array.isArray(a.results)?a.results.length?a.results:null:[a.results]:null}function L(a){"use strict";return a.sort(function(a,b){return T.contains(a,b)?1:-1})[0]}function M(a,b){"use strict";var c=b.include&&L(b.include.filter(function(b){return T.contains(b,a)})),d=b.exclude&&L(b.exclude.filter(function(b){return T.contains(b,a)}));return!d&&c||d&&T.contains(d,c)?!0:!1}function N(a,b,c){"use strict";for(var d=0,e=b.length;e>d;d++)-1===a.indexOf(b[d])&&M(b[d],c)&&a.push(b[d])}var O,P=function(){"use strict";function a(a){var b,c,d=a.Element.prototype,e=["matches","matchesSelector","mozMatchesSelector","webkitMatchesSelector","msMatchesSelector"],f=e.length;for(b=0;f>b;b++)if(c=e[b],d[c])return c}var b;return function(c,d){return b&&c[b]||(b=a(c.ownerDocument.defaultView)),c[b](d)}}(),Q=function(a){"use strict";for(var b,c=String(a),d=c.length,e=-1,f="",g=c.charCodeAt(0);++e<d;){if(b=c.charCodeAt(e),0==b)throw new Error("INVALID_CHARACTER_ERR");f+=b>=1&&31>=b||b>=127&&159>=b||0==e&&b>=48&&57>=b||1==e&&b>=48&&57>=b&&45==g?"\\"+b.toString(16)+" ":(1!=e||45!=b||45!=g)&&(b>=128||45==b||95==b||b>=48&&57>=b||b>=65&&90>=b||b>=97&&122>=b)?c.charAt(e):"\\"+c.charAt(e)}return f};!function(a){function b(a,b,c){var d=b&&c||0,e=0;for(b=b||[],a.toLowerCase().replace(/[0-9a-f]{2}/g,function(a){16>e&&(b[d+e++]=l[a])});16>e;)b[d+e++]=0;return b}function c(a,b){var c=b||0,d=k;return d[a[c++]]+d[a[c++]]+d[a[c++]]+d[a[c++]]+"-"+d[a[c++]]+d[a[c++]]+"-"+d[a[c++]]+d[a[c++]]+"-"+d[a[c++]]+d[a[c++]]+"-"+d[a[c++]]+d[a[c++]]+d[a[c++]]+d[a[c++]]+d[a[c++]]+d[a[c++]]}function d(a,b,d){var e=b&&d||0,f=b||[];a=a||{};var g=null!=a.clockseq?a.clockseq:p,h=null!=a.msecs?a.msecs:(new Date).getTime(),i=null!=a.nsecs?a.nsecs:r+1,j=h-q+(i-r)/1e4;if(0>j&&null==a.clockseq&&(g=g+1&16383),(0>j||h>q)&&null==a.nsecs&&(i=0),i>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");q=h,r=i,p=g,h+=122192928e5;var k=(1e4*(268435455&h)+i)%4294967296;f[e++]=k>>>24&255,f[e++]=k>>>16&255,f[e++]=k>>>8&255,f[e++]=255&k;var l=h/4294967296*1e4&268435455;f[e++]=l>>>8&255,f[e++]=255&l,f[e++]=l>>>24&15|16,f[e++]=l>>>16&255,f[e++]=g>>>8|128,f[e++]=255&g;for(var m=a.node||o,n=0;6>n;n++)f[e+n]=m[n];return b?b:c(f)}function e(a,b,d){var e=b&&d||0;"string"==typeof a&&(b="binary"==a?new j(16):null,a=null),a=a||{};var g=a.random||(a.rng||f)();if(g[6]=15&g[6]|64,g[8]=63&g[8]|128,b)for(var h=0;16>h;h++)b[e+h]=g[h];return b||c(g)}var f,g=a.crypto||a.msCrypto;if(!f&&g&&g.getRandomValues){var h=new Uint8Array(16);f=function(){return g.getRandomValues(h),h}}if(!f){var i=new Array(16);f=function(){for(var a,b=0;16>b;b++)0===(3&b)&&(a=4294967296*Math.random()),i[b]=a>>>((3&b)<<3)&255;return i}}for(var j="function"==typeof a.Buffer?a.Buffer:Array,k=[],l={},m=0;256>m;m++)k[m]=(m+256).toString(16).substr(1),l[k[m]]=m;var n=f(),o=[1|n[0],n[1],n[2],n[3],n[4],n[5]],p=16383&(n[6]<<8|n[7]),q=0,r=0;O=e,O.v1=d,O.v4=e,O.parse=b,O.unparse=c,O.BufferClass=j}(a);var R,S={},T=S.utils={};T.matchesSelector=P,T.escapeSelector=Q,T.clone=c;var U={};f.prototype.addRule=function(a){"use strict";a.metadata&&(this.data.rules[a.id]=a.metadata);for(var b,c=0,d=this.rules.length;d>c;c++)if(b=this.rules[c],b.id===a.id)return void(this.rules[c]=new o(a,this));this.rules.push(new o(a,this))},f.prototype.addTool=function(a){"use strict";this.tools[a.id]=new t(a)},f.prototype.addCheck=function(a){"use strict";a.metadata&&(this.data.checks[a.id]=a.metadata),this.checks[a.id]=new h(a)},f.prototype.run=function(a,b,c){"use strict";var d=T.queue();this.rules.forEach(function(c){T.ruleShouldRun(c,a,b)&&d.defer(function(d){c.run(a,b,d)})}),d.then(c)},f.prototype.after=function(a,b){"use strict";var c=this.rules;return a.map(function(a){var d=T.findBy(c,"id",a.id);return d.after(a,b)})},h.prototype.matches=function(a){"use strict";return!this.selector||T.matchesSelector(a,this.selector)?!0:!1},h.prototype.run=function(a,b,c){"use strict";b=b||{};var d=b.hasOwnProperty("enabled")?b.enabled:this.enabled,e=b.options||this.options;if(d&&this.matches(a)){var f,h=new g(this),i=T.checkHelper(h,c);try{f=this.evaluate.call(i,a,e)}catch(j){return S.log(j.message,j.stack),void c(null)}i.isAsync||(h.result=f,setTimeout(function(){c(h)},0))}else c(null)},o.prototype.matches=function(){"use strict";return!0},o.prototype.gather=function(a){"use strict";var b=T.select(this.selector,a);return this.excludeHidden?b.filter(function(a){return!T.isHidden(a)}):b},o.prototype.runChecks=function(a,b,c,d){"use strict";var e=this,f=T.queue();this[a].forEach(function(a){var d=e._audit.checks[a.id||a],g=T.getCheckOption(d,e.id,c);f.defer(function(a){d.run(b,g,a)})}),f.then(function(b){b=b.filter(function(a){return a}),d({type:a,results:b})})},o.prototype.run=function(a,b,c){"use strict";var d,e=this.gather(a),f=T.queue(),g=this;d=new n(this),e.forEach(function(a){g.matches(a)&&f.defer(function(c){var e=T.queue();e.defer(function(c){g.runChecks("any",a,b,c)}),e.defer(function(c){g.runChecks("all",a,b,c)}),e.defer(function(c){g.runChecks("none",a,b,c)}),e.then(function(b){if(b.length){var e=!1,f={node:new T.DqElement(a)};b.forEach(function(a){var b=a.results.filter(function(a){return a});f[a.type]=b,b.length&&(e=!0)}),e&&d.nodes.push(f)}c()})})}),f.then(function(){c(d)})},o.prototype.after=function(a,b){"use strict";var c=p(this),d=this.id;return c.forEach(function(c){var e=q(a.nodes,c.id),f=T.getCheckOption(c,d,b),g=c.after(e,f);e.forEach(function(a){-1===g.indexOf(a)&&(a.filtered=!0)})}),a.nodes=s(a),a},t.prototype.run=function(a,b,c){"use strict";b="undefined"==typeof b?this.options:b,this.active=!0,this._run(a,b,c)},t.prototype.cleanup=function(a){"use strict";this.active=!1,this._cleanup(a)},S.constants={},S.constants.result={PASS:"PASS",FAIL:"FAIL",NA:"NA"},S.constants.raisedMetadata={impact:["minor","moderate","serious","critical"]},S.version="dev",a.axe=S,S.log=function(){"use strict";"object"==typeof console&&console.log&&Function.prototype.apply.call(console.log,console,arguments)},S.cleanup=u,S.configure=function(a){"use strict";var b=S._audit;if(!b)throw new Error("No audit configured");a.reporter&&("function"==typeof a.reporter||W[a.reporter])&&(b.reporter=a.reporter),a.checks&&a.checks.forEach(function(a){b.addCheck(a)}),a.rules&&a.rules.forEach(function(a){b.addRule(a)}),a.tools&&a.tools.forEach(function(a){b.addTool(a)})},S.getRules=function(a){"use strict";a=a||[];var b=a.length?S._audit.rules.filter(function(b){return!!a.filter(function(a){return-1!==b.tags.indexOf(a)}).length}):S._audit.rules,c=S._audit.data.rules||{};return b.map(function(a){var b=c[a.id]||{};return{ruleId:a.id,description:b.description,help:b.help,helpUrl:b.helpUrl,tags:a.tags}})},S._load=function(a){"use strict";T.respondable.subscribe("axe.ping",function(a,b){b({axe:!0})}),T.respondable.subscribe("axe.start",v),S._audit=new f(a)};var V,W={};S.reporter=function(a,b,c){"use strict";W[a]=b,c&&(V=b)},S.a11yCheck=function(a,b,c){"use strict";"function"==typeof b&&(c=b,b={}),b&&"object"==typeof b||(b={});var d=S._audit;if(!d)throw new Error("No audit configured");var e=w(b.reporter||d.reporter);x(a,b,function(a){e(a,c)})},S.tool=y,U.failureSummary=function(a){"use strict";var b={};return b.none=a.none.concat(a.all),b.any=a.any,Object.keys(b).map(function(a){return b[a].length?S._audit.data.failureSummaries[a].failureMessage(b[a].map(function(a){return a.message||""})):void 0}).filter(function(a){return void 0!==a}).join("\n\n")},U.formatCheck=function(a){"use strict";return{id:a.id,impact:a.impact,message:a.message,data:a.data,relatedNodes:a.relatedNodes.map(U.formatNode)}},U.formatChecks=function(a,b){"use strict";return a.any=b.any.map(U.formatCheck),a.all=b.all.map(U.formatCheck),a.none=b.none.map(U.formatCheck),a},U.formatNode=function(a){"use strict";return{target:a?a.selector:null,html:a?a.source:null}},U.formatRuleResult=function(a){"use strict";return{id:a.id,description:a.description,help:a.help,helpUrl:a.helpUrl||null,impact:null,tags:a.tags,nodes:[]}},U.splitResultsWithChecks=function(a){"use strict";return U.splitResults(a,U.formatChecks)},U.splitResults=function(b,c){"use strict";var d=[],e=[];return b.forEach(function(a){function b(b){var d=b.result||a.result,e=U.formatNode(b.node);return e.impact=b.impact||null,c(e,b,d)}var f,g=U.formatRuleResult(a);f=T.clone(g),f.impact=a.impact||null,f.nodes=a.violations.map(b),g.nodes=a.passes.map(b),f.nodes.length&&d.push(f),g.nodes.length&&e.push(g)}),{violations:d,passes:e,url:a.location.href,timestamp:new Date}},S.reporter("na",function(a,b){"use strict";var c=a.filter(function(a){return 0===a.violations.length&&0===a.passes.length}).map(U.formatRuleResult),d=U.splitResultsWithChecks(a);b({violations:d.violations,passes:d.passes,notApplicable:c,timestamp:d.timestamp,url:d.url})}),S.reporter("no-passes",function(a,b){"use strict";var c=U.splitResultsWithChecks(a);b({violations:c.violations,timestamp:c.timestamp,url:c.url})}),S.reporter("raw",function(a,b){"use strict";b(a)}),S.reporter("v1",function(a,b){"use strict";var c=U.splitResults(a,function(a,b,c){return c===S.constants.result.FAIL&&(a.failureSummary=U.failureSummary(b)),a});b({violations:c.violations,passes:c.passes,timestamp:c.timestamp,url:c.url})}),S.reporter("v2",function(a,b){"use strict";var c=U.splitResultsWithChecks(a);b({violations:c.violations,passes:c.passes,timestamp:c.timestamp,url:c.url})},!0),T.checkHelper=function(a,b){"use strict";return{isAsync:!1,async:function(){return this.isAsync=!0,function(c){a.value=c,b(a)}},data:function(b){a.data=b},relatedNodes:function(b){b=b instanceof Node?[b]:T.toArray(b),a.relatedNodes=b.map(function(a){return new T.DqElement(a)})}}},T.sendCommandToFrame=function(a,b,c){"use strict";var d=a.contentWindow;if(!d)return S.log("Frame does not have a content window",a),c({});var e=setTimeout(function(){e=setTimeout(function(){S.log("No response from frame: ",a),c(null)},0)},500);T.respondable(d,"axe.ping",null,function(){clearTimeout(e),e=setTimeout(function(){S.log("Error returning results from frame: ",a),c({}),c=null},3e4),T.respondable(d,"axe.start",b,function(a){c&&(clearTimeout(e),c(a))})})},T.collectResultsFromFrames=function(a,b,c,d,e){"use strict";function f(e){var f={options:b,command:c,parameter:d,context:{initiator:!1,page:a.page,include:e.include||[],exclude:e.exclude||[]}};g.defer(function(a){var b=e.node;T.sendCommandToFrame(b,f,function(c){return c?a({results:c,frameElement:b,frame:T.getSelector(b)}):void a(null)})})}for(var g=T.queue(),h=a.frames,i=0,j=h.length;j>i;i++)f(h[i]);g.then(function(a){e(T.mergeResults(a))})},T.contains=function(a,b){"use strict";return"function"==typeof a.contains?a.contains(b):!!(16&a.compareDocumentPosition(b))},B.prototype.toJSON=function(){"use strict";return{selector:this.selector,source:this.source}},T.DqElement=B,T.extendBlacklist=function(a,b,c){"use strict";c=c||[];for(var d in b)b.hasOwnProperty(d)&&-1===c.indexOf(d)&&(a[d]=b[d]);return a},T.extendMetaData=function(a,b){"use strict";for(var c in b)if(b.hasOwnProperty(c))if("function"==typeof b[c])try{a[c]=b[c](a)}catch(d){a[c]=null}else a[c]=b[c]},T.getFailingChecks=function(a){"use strict";var b=a.any.filter(function(a){return!a.result});return{all:a.all.filter(function(a){return!a.result}),any:b.length===a.any.length?b:[],none:a.none.filter(function(a){return!!a.result})}},T.finalizeRuleResult=function(a){"use strict";return T.publishMetaData(a),E(a)},T.findBy=function(a,b,c){"use strict";a=a||[];var d,e;for(d=0,e=a.length;e>d;d++)if(a[d][b]===c)return a[d]},T.getAllChecks=function(a){"use strict";var b=[];return b.concat(a.any||[]).concat(a.all||[]).concat(a.none||[])},T.getCheckOption=function(a,b,c){"use strict";var d=((c.rules&&c.rules[b]||{}).checks||{})[a.id],e=(c.checks||{})[a.id],f=a.enabled,g=a.options;return e&&(e.hasOwnProperty("enabled")&&(f=e.enabled),e.hasOwnProperty("options")&&(g=e.options)),d&&(d.hasOwnProperty("enabled")&&(f=d.enabled),d.hasOwnProperty("options")&&(g=d.options)),{enabled:f,options:g}},T.getSelector=function(a){"use strict";function c(a){return T.escapeSelector(a)}for(var d,e=[];a.parentNode;){if(d="",a.id&&1===b.querySelectorAll("#"+T.escapeSelector(a.id)).length){e.unshift("#"+T.escapeSelector(a.id));break}if(a.className&&"string"==typeof a.className&&(d="."+a.className.trim().split(/\s+/).map(c).join("."),("."===d||G(a,d))&&(d="")),!d){if(d=T.escapeSelector(a.nodeName).toLowerCase(),"html"===d||"body"===d){e.unshift(d);break}G(a,d)&&(d+=":nth-of-type("+F(a)+")")}e.unshift(d),a=a.parentNode}return e.join(" > ")};var X;T.isHidden=function(b,c){"use strict";if(9===b.nodeType)return!1;var d=a.getComputedStyle(b,null);return d&&b.parentNode&&"none"!==d.getPropertyValue("display")&&(c||"hidden"!==d.getPropertyValue("visibility"))&&"true"!==b.getAttribute("aria-hidden")?T.isHidden(b.parentNode,!0):!0},T.mergeResults=function(a){"use strict";var b=[];return a.forEach(function(a){var c=K(a);c&&c.length&&c.forEach(function(c){c.nodes&&a.frame&&I(c.nodes,a.frameElement,a.frame);var d=T.findBy(b,"id",c.id);d?c.nodes.length&&J(d.nodes,c.nodes):b.push(c)})}),b},T.nodeSorter=function(a,b){"use strict";return a===b?0:4&a.compareDocumentPosition(b)?-1:1},T.publishMetaData=function(a){"use strict";function b(a){return function(b){var d=c[b.id]||{},e=d.messages||{},f=T.extendBlacklist({},d,["messages"]);f.message=b.result===a?e.pass:e.fail,T.extendMetaData(b,f)}}var c=S._audit.data.checks||{},d=S._audit.data.rules||{},e=T.findBy(S._audit.rules,"id",a.id)||{};a.tags=T.clone(e.tags||[]);var f=b(!0),g=b(!1);a.nodes.forEach(function(a){a.any.forEach(f),a.all.forEach(f),a.none.forEach(g)}),T.extendMetaData(a,T.clone(d[a.id]||{}))},function(){"use strict";function a(){}function b(){function b(){for(var a=e.length;a>f;f++){var b=e[f],d=b.shift();b.push(c(f)),d.apply(null,b)}}function c(a){return function(b){e[a]=b,--g||d()}}function d(){h(e)}var e=[],f=0,g=0,h=a;return{defer:function(a){e.push([a]),++g,b()},then:function(a){h=a,g||d()},abort:function(b){h=a,b(e)}}}T.queue=b}(),function(b){"use strict";function c(a){return"object"==typeof a&&"string"==typeof a.uuid&&a._respondable===!0}function d(a,b,c,d,e){var f={uuid:d,topic:b,message:c,_respondable:!0};h[d]=e,a.postMessage(JSON.stringify(f),"*")}function e(a,b,c,e){var f=O.v1();d(a,b,c,f,e)}function f(a,b){var c=b.topic,d=b.message,e=i[c];e&&e(d,g(a.source,null,b.uuid))}function g(a,b,c){return function(e,f){d(a,b,e,c,f)}}var h={},i={};e.subscribe=function(a,b){i[a]=b},a.addEventListener("message",function(a){if("string"==typeof a.data){var b;try{b=JSON.parse(a.data)}catch(d){}if(c(b)){var e=b.uuid;h[e]&&(h[e](b.message,g(a.source,b.topic,e)),h[e]=null),f(a,b)}}},!1),b.respondable=e}(T),T.ruleShouldRun=function(a,b,c){"use strict";if(a.pageLevel&&!b.page)return!1;var d=c.runOnly,e=(c.rules||{})[a.id];return d?"rule"===d.type?-1!==d.values.indexOf(a.id):!!(d.values||[]).filter(function(b){return-1!==a.tags.indexOf(b)}).length:(e&&e.hasOwnProperty("enabled")?e.enabled:a.enabled)?!0:!1},T.select=function(a,b){"use strict";for(var c=[],d=0,e=b.include.length;e>d;d++)N(c,b.include[d].querySelectorAll(a),b);return c.sort(T.nodeSorter)},T.toArray=function(a){"use strict";return Array.prototype.slice.call(a)},S._load({data:{rules:{accesskeys:{description:"Ensures every accesskey attribute value is unique",help:"accesskey attribute value must be unique",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/accesskeys"},"area-alt":{description:"Ensures <area> elements of image maps have alternate text",help:"Active <area> elements must have alternate text",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/area-alt"},"aria-allowed-attr":{description:"Ensures ARIA attributes are allowed for an element's role",help:"Elements must only use allowed ARIA attributes",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/aria-allowed-attr"},"aria-required-attr":{description:"Ensures elements with ARIA roles have all required ARIA attributes",help:"Required ARIA attributes must be provided",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/aria-required-attr"},"aria-required-children":{description:"Ensures elements with an ARIA role that require child roles contain them",help:"Certain ARIA roles must contain particular children",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/aria-required-children"},"aria-required-parent":{description:"Ensures elements with an ARIA role that require parent roles are contained by them",help:"Certain ARIA roles must be contained by particular parents",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/aria-required-parent"},"aria-roles":{description:"Ensures all elements with a role attribute use a valid value",help:"ARIA roles used must conform to valid values",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/aria-roles"},"aria-valid-attr-value":{description:"Ensures all ARIA attributes have valid values",help:"ARIA attributes must conform to valid values",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/aria-valid-attr-value"},"aria-valid-attr":{description:"Ensures attributes that begin with aria- are valid ARIA attributes",help:"ARIA attributes must conform to valid names",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/aria-valid-attr"},"audio-caption":{description:"Ensures <audio> elements have captions",help:"<audio> elements must have a captions track",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/audio-caption"},blink:{description:"Ensures <blink> elements are not used",help:"<blink> elements are deprecated and must not be used",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/blink"},"button-name":{description:"Ensures buttons have discernible text",help:"Buttons must have discernible text",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/button-name"},bypass:{description:"Ensures each page has at least one mechanism for a user to bypass navigation and jump straight to the content",help:"Page must have means to bypass repeated blocks",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/bypass"},checkboxgroup:{description:'Ensures related <input type="checkbox"> elements have a group and that that group designation is consistent',help:"Checkbox inputs with the same name attribute value must be part of a group",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/checkboxgroup"},"color-contrast":{description:"Ensures the contrast between foreground and background colors meets WCAG 2 AA contrast ratio thresholds",help:"Elements must have sufficient color contrast",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/color-contrast"},"data-table":{description:"Ensures data tables are marked up semantically and have the correct header structure",help:"Data tables should be marked up properly",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/data-table"},"definition-list":{description:"Ensures <dl> elements are structured correctly",help:"<dl> elements must only directly contain properly-ordered <dt> and <dd> groups, <script> or <template> elements",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/definition-list"},dlitem:{description:"Ensures <dt> and <dd> elements are contained by a <dl>",help:"<dt> and <dd> elements must be contained by a <dl>",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/dlitem"},"document-title":{description:"Ensures each HTML document contains a non-empty <title> element",help:"Documents must have <title> element to aid in navigation",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/document-title"},"duplicate-id":{description:"Ensures every id attribute value is unique",help:"id attribute value must be unique",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/duplicate-id"},"empty-heading":{description:"Ensures headings have discernible text",help:"Headings must not be empty",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/empty-heading"},"frame-title":{description:"Ensures <iframe> and <frame> elements contain a unique and non-empty title attribute",help:"Frames must have unique title attribute",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/frame-title"},"heading-order":{description:"Ensures the order of headings is semantically correct",help:"Heading levels should only increase by one",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/heading-order"},"html-lang":{description:"Ensures every HTML document has a lang attribute and its value is valid",help:"<html> element must have a valid lang attribute",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/html-lang"},"image-alt":{description:"Ensures <img> elements have alternate text or a role of none or presentation",help:"Images must have alternate text",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/image-alt"},"input-image-alt":{description:'Ensures <input type="image"> elements have alternate text',help:"Image buttons must have alternate text",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/input-image-alt"},"label-title-only":{description:"Ensures that every form element is not solely labeled using the title or aria-describedby attributes",help:"Form elements should have a visible label",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/label-title-only"},label:{description:"Ensures every form element has a label",help:"Form elements must have labels",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/label"},"layout-table":{description:"Ensures presentational <table> elements do not use <th>, <caption> elements or the summary attribute",help:"Layout tables must not use data table elements",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/layout-table"},"link-name":{description:"Ensures links have discernible text",help:"Links must have discernible text",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/link-name"},list:{description:"Ensures that lists are structured correctly",help:"<ul> and <ol> must only directly contain <li>, <script> or <template> elements",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/list"},listitem:{description:"Ensures <li> elements are used semantically",help:"<li> elements must be contained in a <ul> or <ol>",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/listitem"},marquee:{description:"Ensures <marquee> elements are not used",help:"<marquee> elements are deprecated and must not be used",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/marquee"},"meta-refresh":{description:'Ensures <meta http-equiv="refresh"> is not used',help:"Timed refresh must not exist",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/meta-refresh"},"meta-viewport":{description:'Ensures <meta name="viewport"> does not disable text scaling and zooming',help:"Zooming and scaling must not be disabled",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/meta-viewport"},"object-alt":{description:"Ensures <object> elements have alternate text",help:"<object> elements must have alternate text",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/object-alt"},radiogroup:{description:'Ensures related <input type="radio"> elements have a group and that the group designation is consistent',help:"Radio inputs with the same name attribute value must be part of a group",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/radiogroup"},region:{description:"Ensures all content is contained within a landmark region",help:"Content should be contained in a landmark region",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/region"},scope:{description:"Ensures the scope attribute is used correctly on tables",help:"scope attribute should be used correctly",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/scope"},"server-side-image-map":{description:"Ensures that server-side image maps are not used",help:"Server-side image maps must not be used",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/server-side-image-map"},"skip-link":{description:"Ensures the first link on the page is a skip link",help:"The page should have a skip link as its first link",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/skip-link"},tabindex:{description:"Ensures tabindex attribute values are not greater than 0",help:"Elements should not have tabindex greater than zero",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/tabindex"},"valid-lang":{description:"Ensures lang attributes have valid values",help:"lang attribute must have a valid value",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/valid-lang"},"video-caption":{description:"Ensures <video> elements have captions",help:"<video> elements must have captions",
13
+ helpUrl:"https://dequeuniversity.com/rules/axe/1.1/video-caption"},"video-description":{description:"Ensures <video> elements have audio descriptions",help:"<video> elements must have an audio description track",helpUrl:"https://dequeuniversity.com/rules/axe/1.1/video-description"}},checks:{accesskeys:{impact:"critical",messages:{pass:function(a){var b="Accesskey attribute value is unique";return b},fail:function(a){var b="Document has multiple elements with the same accesskey";return b}}},"non-empty-alt":{impact:"critical",messages:{pass:function(a){var b="Element has a non-empty alt attribute";return b},fail:function(a){var b="Element has no alt attribute or the alt attribute is empty";return b}}},"aria-label":{impact:"critical",messages:{pass:function(a){var b="aria-label attribute exists and is not empty";return b},fail:function(a){var b="aria-label attribute does not exist or is empty";return b}}},"aria-labelledby":{impact:"critical",messages:{pass:function(a){var b="aria-labelledby attribute exists and references elements that are visible to screen readers";return b},fail:function(a){var b="aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty or not visible";return b}}},"aria-allowed-attr":{impact:"critical",messages:{pass:function(a){var b="ARIA attributes are used correctly for the defined role";return b},fail:function(a){var b="ARIA attribute"+(a.data&&a.data.length>1?"s are":" is")+" not allowed:",c=a.data;if(c)for(var d,e=-1,f=c.length-1;f>e;)d=c[e+=1],b+=" "+d;return b}}},"aria-required-attr":{impact:"critical",messages:{pass:function(a){var b="All required ARIA attributes are present";return b},fail:function(a){var b="Required ARIA attribute"+(a.data&&a.data.length>1?"s":"")+" not present:",c=a.data;if(c)for(var d,e=-1,f=c.length-1;f>e;)d=c[e+=1],b+=" "+d;return b}}},"aria-required-children":{impact:"critical",messages:{pass:function(a){var b="Required ARIA children are present";return b},fail:function(a){var b="Required ARIA "+(a.data&&a.data.length>1?"children":"child")+" role not present:",c=a.data;if(c)for(var d,e=-1,f=c.length-1;f>e;)d=c[e+=1],b+=" "+d;return b}}},"aria-required-parent":{impact:"critical",messages:{pass:function(a){var b="Required ARIA parent role present";return b},fail:function(a){var b="Required ARIA parent"+(a.data&&a.data.length>1?"s":"")+" role not present:",c=a.data;if(c)for(var d,e=-1,f=c.length-1;f>e;)d=c[e+=1],b+=" "+d;return b}}},invalidrole:{impact:"critical",messages:{pass:function(a){var b="ARIA role is valid";return b},fail:function(a){var b="Role must be one of the valid ARIA roles";return b}}},abstractrole:{impact:"serious",messages:{pass:function(a){var b="Abstract roles are not used";return b},fail:function(a){var b="Abstract roles cannot be directly used";return b}}},"aria-valid-attr-value":{impact:"critical",messages:{pass:function(a){var b="ARIA attribute values are valid";return b},fail:function(a){var b="Invalid ARIA attribute value"+(a.data&&a.data.length>1?"s":"")+":",c=a.data;if(c)for(var d,e=-1,f=c.length-1;f>e;)d=c[e+=1],b+=" "+d;return b}}},"aria-valid-attr":{impact:"critical",messages:{pass:function(a){var b="ARIA attribute name"+(a.data&&a.data.length>1?"s":"")+" are valid";return b},fail:function(a){var b="Invalid ARIA attribute name"+(a.data&&a.data.length>1?"s":"")+":",c=a.data;if(c)for(var d,e=-1,f=c.length-1;f>e;)d=c[e+=1],b+=" "+d;return b}}},caption:{impact:"critical",messages:{pass:function(a){var b="The multimedia element has a captions track";return b},fail:function(a){var b="The multimedia element does not have a captions track";return b}}},exists:{impact:"minor",messages:{pass:function(a){var b="Element does not exist";return b},fail:function(a){var b="Element exists";return b}}},"non-empty-if-present":{impact:"critical",messages:{pass:function(a){var b="Element ";return b+=a.data?"has a non-empty value attribute":"does not have a value attribute"},fail:function(a){var b="Element has a value attribute and the value attribute is empty";return b}}},"non-empty-value":{impact:"critical",messages:{pass:function(a){var b="Element has a non-empty value attribute";return b},fail:function(a){var b="Element has no value attribute or the value attribute is empty";return b}}},"button-has-visible-text":{impact:"critical",messages:{pass:function(a){var b="Element has inner text that is visible to screen readers";return b},fail:function(a){var b="Element does not have inner text that is visible to screen readers";return b}}},"role-presentation":{impact:"moderate",messages:{pass:function(a){var b='Element\'s default semantics were overriden with role="presentation"';return b},fail:function(a){var b='Element\'s default semantics were not overridden with role="presentation"';return b}}},"role-none":{impact:"moderate",messages:{pass:function(a){var b='Element\'s default semantics were overriden with role="none"';return b},fail:function(a){var b='Element\'s default semantics were not overridden with role="none"';return b}}},"duplicate-img-label":{impact:"minor",messages:{pass:function(a){var b="Element does not duplicate existing text in <img> alt text";return b},fail:function(a){var b="Element contains <img> element with alt text that duplicates existing text";return b}}},"focusable-no-name":{impact:"serious",messages:{pass:function(a){var b="Element is not in tab order or has accessible text";return b},fail:function(a){var b="Element is in tab order and does not have accessible text";return b}}},"internal-link-present":{impact:"critical",messages:{pass:function(a){var b="Valid skip link found";return b},fail:function(a){var b="No valid skip link found";return b}}},"header-present":{impact:"moderate",messages:{pass:function(a){var b="Page has a header";return b},fail:function(a){var b="Page does not have a header";return b}}},landmark:{impact:"serious",messages:{pass:function(a){var b="Page has a landmark region";return b},fail:function(a){var b="Page does not have a landmark region";return b}}},"group-labelledby":{impact:"critical",messages:{pass:function(a){var b='All elements with the name "'+a.data.name+'" reference the same element with aria-labelledby';return b},fail:function(a){var b='All elements with the name "'+a.data.name+'" do not reference the same element with aria-labelledby';return b}}},fieldset:{impact:"critical",messages:{pass:function(a){var b="Element is contained in a fieldset";return b},fail:function(a){var b="",c=a.data&&a.data.failureCode;return b+="no-legend"===c?"Fieldset does not have a legend as its first child":"empty-legend"===c?"Legend does not have text that is visible to screen readers":"mixed-inputs"===c?"Fieldset contains unrelated inputs":"no-group-label"===c?"ARIA group does not have aria-label or aria-labelledby":"group-mixed-inputs"===c?"ARIA group contains unrelated inputs":"Element does not have a containing fieldset or ARIA group"}}},"color-contrast":{impact:"critical",messages:{pass:function(a){var b="";return b+=a.data&&a.data.contrastRatio?"Element has sufficient color contrast of "+a.data.contrastRatio:"Unable to determine contrast ratio"},fail:function(a){var b="Element has insufficient color contrast of "+a.data.contrastRatio+" (foreground color: "+a.data.fgColor+", background color: "+a.data.bgColor+", font size: "+a.data.fontSize+", font weight: "+a.data.fontWeight+")";return b}}},"consistent-columns":{impact:"critical",messages:{pass:function(a){var b="Table has consistent column widths";return b},fail:function(a){var b="Table does not have the same number of columns in every row";return b}}},"cell-no-header":{impact:"critical",messages:{pass:function(a){var b="All data cells have table headers";return b},fail:function(a){var b="Some data cells do not have table headers";return b}}},"headers-visible-text":{impact:"critical",messages:{pass:function(a){var b="Header cell has visible text";return b},fail:function(a){var b="Header cell does not have visible text";return b}}},"headers-attr-reference":{impact:"critical",messages:{pass:function(a){var b="headers attribute references elements that are visible to screen readers";return b},fail:function(a){var b="headers attribute references element that is not visible to screen readers";return b}}},"th-scope":{impact:"serious",messages:{pass:function(a){var b="<th> elements use scope attribute";return b},fail:function(a){var b="<th> elements must use scope attribute";return b}}},"no-caption":{impact:"serious",messages:{pass:function(a){var b="Table has a <caption>";return b},fail:function(a){var b="Table does not have a <caption>";return b}}},"th-headers-attr":{impact:"serious",messages:{pass:function(a){var b="<th> elements do not use headers attribute";return b},fail:function(a){var b="<th> elements should not use headers attribute";return b}}},"th-single-row-column":{impact:"serious",messages:{pass:function(a){var b="<th> elements are used when there is only a single row and single column of headers";return b},fail:function(a){var b="<th> elements should only be used when there is a single row and single column of headers";return b}}},"same-caption-summary":{impact:"moderate",messages:{pass:function(a){var b="Content of summary attribute and <caption> are not duplicated";return b},fail:function(a){var b="Content of summary attribute and <caption> element are indentical";return b}}},rowspan:{impact:"critical",messages:{pass:function(a){var b="Table does not have cells with rowspan attribute greater than 1";return b},fail:function(a){var b="Table has cells whose rowspan attribute is not equal to 1";return b}}},"structured-dlitems":{impact:"serious",messages:{pass:function(a){var b="When not empty, element has both <dt> and <dd> elements";return b},fail:function(a){var b="When not empty, element does not have at least one <dt> element followed by at least one <dd> element";return b}}},"only-dlitems":{impact:"serious",messages:{pass:function(a){var b="Element only has children that are <dt> or <dd> elements";return b},fail:function(a){var b="Element has children that are not <dt> or <dd> elements";return b}}},dlitem:{impact:"serious",messages:{pass:function(a){var b="Description list item has a <dl> parent element";return b},fail:function(a){var b="Description list item does not have a <dl> parent element";return b}}},"doc-has-title":{impact:"moderate",messages:{pass:function(a){var b="Document has a non-empty <title> element";return b},fail:function(a){var b="Document does not have a non-empty <title> element";return b}}},"duplicate-id":{impact:"critical",messages:{pass:function(a){var b="Document has no elements that share the same id attribute";return b},fail:function(a){var b="Document has multiple elements with the same id attribute: "+a.data;return b}}},"has-visible-text":{impact:"critical",messages:{pass:function(a){var b="Element has text that is visible to screen readers";return b},fail:function(a){var b="Element does not have text that is visible to screen readers";return b}}},"non-empty-title":{impact:"critical",messages:{pass:function(a){var b="Element has a title attribute";return b},fail:function(a){var b="Element has no title attribute or the title attribute is empty";return b}}},"unique-frame-title":{impact:"serious",messages:{pass:function(a){var b="Element's title attribute is unique";return b},fail:function(a){var b="Element's title attribute is not unique";return b}}},"heading-order":{impact:"minor",messages:{pass:function(a){var b="Heading order valid";return b},fail:function(a){var b="Heading order invalid";return b}}},"has-lang":{impact:"serious",messages:{pass:function(a){var b="The <html> element has a lang attribute";return b},fail:function(a){var b="The <html> element does not have a lang attribute";return b}}},"valid-lang":{impact:"serious",messages:{pass:function(a){var b="Value of lang attribute is included in the list of valid languages";return b},fail:function(a){var b="Value of lang attribute not included in the list of valid languages";return b}}},"has-alt":{impact:"critical",messages:{pass:function(a){var b="Element has an alt attribute";return b},fail:function(a){var b="Element does not have an alt attribute";return b}}},"title-only":{impact:"serious",messages:{pass:function(a){var b="Form element does not solely use title attribute for its label";return b},fail:function(a){var b="Only title used to generate label for form element";return b}}},"implicit-label":{impact:"critical",messages:{pass:function(a){var b="Form element has an implicit (wrapped) <label>";return b},fail:function(a){var b="Form element does not have an implicit (wrapped) <label>";return b}}},"explicit-label":{impact:"critical",messages:{pass:function(a){var b="Form element has an explicit <label>";return b},fail:function(a){var b="Form element does not have an explicit <label>";return b}}},"help-same-as-label":{impact:"minor",messages:{pass:function(a){var b="Help text (title or aria-describedby) does not duplicate label text";return b},fail:function(a){var b="Help text (title or aria-describedby) text is the same as the label text";return b}}},"multiple-label":{impact:"serious",messages:{pass:function(a){var b="Form element does not have multiple <label> elements";return b},fail:function(a){var b="Form element has multiple <label> elements";return b}}},"has-th":{impact:"serious",messages:{pass:function(a){var b="Layout table does not use <th> elements";return b},fail:function(a){var b="Layout table uses <th> elements";return b}}},"has-caption":{impact:"serious",messages:{pass:function(a){var b="Layout table does not use <caption> element";return b},fail:function(a){var b="Layout table uses <caption> element";return b}}},"has-summary":{impact:"serious",messages:{pass:function(a){var b="Layout table does not use summary attribute";return b},fail:function(a){var b="Layout table uses summary attribute";return b}}},"only-listitems":{impact:"serious",messages:{pass:function(a){var b="List element only has children that are <li>, <script> or <template> elements";return b},fail:function(a){var b="List element has children that are not <li>, <script> or <template> elements";return b}}},listitem:{impact:"critical",messages:{pass:function(a){var b="List item has a <ul> or <ol> parent element";return b},fail:function(a){var b="List item does not have a <ul> or <ol> parent element";return b}}},"meta-refresh":{impact:"critical",messages:{pass:function(a){var b="<meta> tag does not immediately refresh the page";return b},fail:function(a){var b="<meta> tag forces timed refresh of page";return b}}},"meta-viewport":{impact:"critical",messages:{pass:function(a){var b="<meta> tag does not disable zooming";return b},fail:function(a){var b="<meta> tag disables zooming";return b}}},region:{impact:"moderate",messages:{pass:function(a){var b="Content contained by ARIA landmark";return b},fail:function(a){var b="Content not contained by an ARIA landmark";return b}}},"html5-scope":{impact:"serious",messages:{pass:function(a){var b="Scope attribute is only used on table header elements (<th>)";return b},fail:function(a){var b="In HTML 5, scope attributes may only be used on table header elements (<th>)";return b}}},"html4-scope":{impact:"serious",messages:{pass:function(a){var b="Scope attribute is only used on table cell elements (<th> and <td>)";return b},fail:function(a){var b="In HTML 4, the scope attribute may only be used on table cell elements (<th> and <td>)";return b}}},"scope-value":{impact:"critical",messages:{pass:function(a){var b="Scope attribute is used correctly";return b},fail:function(a){var b="The value of the scope attribute may only be 'row' or 'col'";return b}}},"skip-link":{impact:"critical",messages:{pass:function(a){var b="Valid skip link found";return b},fail:function(a){var b="No valid skip link found";return b}}},tabindex:{impact:"serious",messages:{pass:function(a){var b="Element does not have a tabindex greater than 0";return b},fail:function(a){var b="Element has a tabindex greater than 0";return b}}},description:{impact:"serious",messages:{pass:function(a){var b="The multimedia element has an audio description track";return b},fail:function(a){var b="The multimedia element does not have an audio description track";return b}}}},failureSummaries:{any:{failureMessage:function(a){var b="Fix any of the following:",c=a;if(c)for(var d,e=-1,f=c.length-1;f>e;)d=c[e+=1],b+="\n "+d.split("\n").join("\n ");return b}},none:{failureMessage:function(a){var b="Fix all of the following:",c=a;if(c)for(var d,e=-1,f=c.length-1;f>e;)d=c[e+=1],b+="\n "+d.split("\n").join("\n ");return b}}}},rules:[{id:"accesskeys",selector:"[accesskey]",tags:["wcag2a","wcag211"],all:[],any:[],none:["accesskeys"]},{id:"area-alt",selector:"map area[href]",excludeHidden:!1,tags:["wcag2a","wcag111","section508","section508a"],all:[],any:["non-empty-alt","aria-label","aria-labelledby"],none:[]},{id:"aria-allowed-attr",tags:["wcag2a","wcag411"],all:[],any:["aria-allowed-attr"],none:[]},{id:"aria-required-attr",selector:"[role]",tags:["wcag2a","wcag411"],all:[],any:["aria-required-attr"],none:[]},{id:"aria-required-children",selector:"[role]",tags:["wcag2a","wcag411"],all:[],any:["aria-required-children"],none:[]},{id:"aria-required-parent",selector:"[role]",tags:["wcag2a","wcag411"],all:[],any:["aria-required-parent"],none:[]},{id:"aria-roles",selector:"[role]",tags:["wcag2a","wcag411"],all:[],any:[],none:["invalidrole","abstractrole"]},{id:"aria-valid-attr-value",tags:["wcag2a","wcag411"],all:[],any:[{options:[],id:"aria-valid-attr-value"}],none:[]},{id:"aria-valid-attr",tags:["wcag2a","wcag411"],all:[],any:[{options:[],id:"aria-valid-attr"}],none:[]},{id:"audio-caption",selector:"audio",excludeHidden:!1,tags:["wcag2a","wcag122","section508","section508a"],all:[],any:[],none:["caption"]},{id:"blink",selector:"blink",tags:["wcag2a","wcag222"],all:[],any:[],none:["exists"]},{id:"button-name",selector:'button, [role="button"], input[type="button"], input[type="submit"], input[type="reset"]',tags:["wcag2a","wcag412","section508","section508a"],all:[],any:["non-empty-if-present","non-empty-value","button-has-visible-text","aria-label","aria-labelledby","role-presentation","role-none"],none:["duplicate-img-label","focusable-no-name"]},{id:"bypass",selector:"html",pageLevel:!0,matches:function(a){return!!a.querySelector("a[href]")},tags:["wcag2a","wcag241","section508","section508o"],all:[],any:["internal-link-present","header-present","landmark"],none:[]},{id:"checkboxgroup",selector:"input[type=checkbox][name]",tags:["wcag2a","wcag131"],all:[],any:["group-labelledby","fieldset"],none:[]},{id:"color-contrast",selector:"*",tags:["wcag2aa","wcag143"],all:[],any:["color-contrast"],none:[]},{id:"data-table",selector:"table",matches:function(a){return R.table.isDataTable(a)},tags:["wcag2a","wcag131"],all:[],any:["consistent-columns"],none:["cell-no-header","headers-visible-text","headers-attr-reference","th-scope","no-caption","th-headers-attr","th-single-row-column","same-caption-summary","rowspan"]},{id:"definition-list",selector:"dl",tags:["wcag2a","wcag131"],all:[],any:[],none:["structured-dlitems","only-dlitems"]},{id:"dlitem",selector:"dd, dt",tags:["wcag2a","wcag131"],all:[],any:["dlitem"],none:[]},{id:"document-title",selector:"html",tags:["wcag2a","wcag242"],all:[],any:["doc-has-title"],none:[]},{id:"duplicate-id",selector:"[id]",tags:["wcag2a","wcag411"],all:[],any:["duplicate-id"],none:[]},{id:"empty-heading",selector:'h1, h2, h3, h4, h5, h6, [role="heading"]',tags:["wcag2a","wcag131"],all:[],any:["has-visible-text","role-presentation","role-none"],none:[]},{id:"frame-title",selector:"frame, iframe",tags:["wcag2a","wcag241"],all:[],any:["non-empty-title"],none:["unique-frame-title"]},{id:"heading-order",selector:"h1,h2,h3,h4,h5,h6,[role=heading]",enabled:!1,tags:["best-practice"],all:[],any:["heading-order"],none:[]},{id:"html-lang",selector:"html",tags:["wcag2a","wcag311"],all:[],any:["has-lang"],none:[{options:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","in","io","is","it","iu","iw","ja","ji","jv","jw","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mo","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","sh","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],id:"valid-lang"}]},{id:"image-alt",selector:"img",tags:["wcag2a","wcag111","section508","section508a"],all:[],any:["has-alt","aria-label","aria-labelledby","non-empty-title","role-presentation","role-none"],none:[]},{id:"input-image-alt",selector:'input[type="image"]',tags:["wcag2a","wcag111","section508","section508a"],all:[],any:["non-empty-alt","aria-label","aria-labelledby"],none:[]},{id:"label-title-only",selector:"input:not([type='hidden']):not([type='image']):not([type='button']):not([type='submit']):not([type='reset']), select, textarea",enabled:!1,tags:["best-practice"],all:[],any:[],none:["title-only"]},{id:"label",selector:"input:not([type='hidden']):not([type='image']):not([type='button']):not([type='submit']):not([type='reset']), select, textarea",tags:["wcag2a","wcag332","wcag131","section508","section508n"],all:[],any:["aria-label","aria-labelledby","implicit-label","explicit-label","non-empty-title"],none:["help-same-as-label","multiple-label"]},{id:"layout-table",selector:"table",matches:function(a){return!R.table.isDataTable(a)},tags:["wcag2a","wcag131"],all:[],any:[],none:["has-th","has-caption","has-summary"]},{id:"link-name",selector:'a[href]:not([role="button"]), [role=link][href]',tags:["wcag2a","wcag111","wcag412","section508","section508a"],all:[],any:["has-visible-text","aria-label","aria-labelledby","role-presentation","role-none"],none:["duplicate-img-label","focusable-no-name"]},{id:"list",selector:"ul, ol",tags:["wcag2a","wcag131"],all:[],any:[],none:["only-listitems"]},{id:"listitem",selector:"li",tags:["wcag2a","wcag131"],all:[],any:["listitem"],none:[]},{id:"marquee",selector:"marquee",tags:["wcag2a","wcag222","section508","section508j"],all:[],any:[],none:["exists"]},{id:"meta-refresh",selector:'meta[http-equiv="refresh"]',excludeHidden:!1,tags:["wcag2a","wcag2aaa","wcag221","wcag224","wcag325"],all:[],any:["meta-refresh"],none:[]},{id:"meta-viewport",selector:'meta[name="viewport"]',excludeHidden:!1,tags:["wcag2aa","wcag144"],all:[],any:["meta-viewport"],none:[]},{id:"object-alt",selector:"object",tags:["wcag2a","wcag111"],all:[],any:["has-visible-text"],none:[]},{id:"radiogroup",selector:"input[type=radio][name]",tags:["wcag2a","wcag131"],all:[],any:["group-labelledby","fieldset"],none:[]},{id:"region",selector:"html",pageLevel:!0,enabled:!1,tags:["best-practice"],all:[],any:["region"],none:[]},{id:"scope",selector:"[scope]",enabled:!1,tags:["best-practice"],all:[],any:["html5-scope","html4-scope"],none:["scope-value"]},{id:"server-side-image-map",selector:"img[ismap]",tags:["wcag2a","wcag211","section508","section508f"],all:[],any:[],none:["exists"]},{id:"skip-link",selector:"a[href]",pageLevel:!0,enabled:!1,tags:["best-practice"],all:[],any:["skip-link"],none:[]},{id:"tabindex",selector:"[tabindex]",tags:["best-practice"],all:[],any:["tabindex"],none:[]},{id:"valid-lang",selector:"[lang]:not(html), [xml\\:lang]:not(html)",tags:["wcag2aa","wcag312"],all:[],any:[],none:[{options:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","in","io","is","it","iu","iw","ja","ji","jv","jw","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mo","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","sh","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],id:"valid-lang"}]},{id:"video-caption",selector:"video",tags:["wcag2a","wcag122","wcag123","section508","section508a"],all:[],any:[],none:["caption"]},{id:"video-description",selector:"video",tags:["wcag2aa","wcag125","section508","section508a"],all:[],any:[],none:["description"]}],checks:[{id:"abstractrole",evaluate:function(a,b){return"abstract"===R.aria.getRoleType(a.getAttribute("role"))}},{id:"aria-allowed-attr",matches:function(a){var b=a.getAttribute("role");b||(b=R.aria.implicitRole(a));var c=R.aria.allowedAttr(b);if(b&&c){var d=/^aria-/;if(a.hasAttributes())for(var e=a.attributes,f=0,g=e.length;g>f;f++)if(d.test(e[f].nodeName))return!0}return!1},evaluate:function(a,b){var c,d,e,f=[],g=a.getAttribute("role"),h=a.attributes;if(g||(g=R.aria.implicitRole(a)),e=R.aria.allowedAttr(g),g&&e)for(var i=0,j=h.length;j>i;i++)c=h[i],d=c.nodeName,R.aria.validateAttr(d)&&-1===e.indexOf(d)&&f.push(d+'="'+c.nodeValue+'"');return f.length?(this.data(f),!1):!0}},{id:"invalidrole",evaluate:function(a,b){return!R.aria.isValidRole(a.getAttribute("role"))}},{id:"aria-required-attr",evaluate:function(a,b){var c=[];if(a.hasAttributes()){var d,e=a.getAttribute("role"),f=R.aria.requiredAttr(e);if(e&&f)for(var g=0,h=f.length;h>g;g++)d=f[g],a.getAttribute(d)||c.push(d)}return c.length?(this.data(c),!1):!0}},{id:"aria-required-children",evaluate:function(a,b){function c(a,b,c){if(null===a)return!1;var d=g(b),e=['[role="'+b+'"]'];return d&&(e=e.concat(d)),e=e.join(","),c?h(a,e)||!!a.querySelector(e):!!a.querySelector(e)}function d(a,b){var d,e;for(d=0,e=a.length;e>d;d++)if(null!==a[d]&&c(a[d],b,!0))return!0;return!1}function e(a,b,e){var f,g=b.length,h=[],j=i(a,"aria-owns");for(f=0;g>f;f++){var k=b[f];if(c(a,k)||d(j,k)){if(!e)return null}else e&&h.push(k)}return h.length?h:!e&&b.length?b:null}var f=R.aria.requiredOwned,g=R.aria.implicitNodes,h=R.utils.matchesSelector,i=R.dom.idrefs,j=a.getAttribute("role"),k=f(j);if(!k)return!0;var l=!1,m=k.one;if(!m){var l=!0;m=k.all}var n=e(a,m,l);return n?(this.data(n),!1):!0}},{id:"aria-required-parent",evaluate:function(a,c){function d(a){var b=R.aria.implicitNodes(a)||[];return b.concat('[role="'+a+'"]').join(",")}function e(a,b,c){var e,f,g=a.getAttribute("role"),h=[];if(b||(b=R.aria.requiredContext(g)),!b)return null;for(e=0,f=b.length;f>e;e++){if(c&&R.utils.matchesSelector(a,d(b[e])))return null;if(R.dom.findUp(a,d(b[e])))return null;h.push(b[e])}return h}function f(a){for(var c=[],d=null;a;)a.id&&(d=b.querySelector("[aria-owns~="+R.utils.escapeSelector(a.id)+"]"),d&&c.push(d)),a=a.parentNode;return c.length?c:null}var g=e(a);if(!g)return!0;var h=f(a);if(h)for(var i=0,j=h.length;j>i;i++)if(g=e(h[i],g,!0),!g)return!0;return this.data(g),!1}},{id:"aria-valid-attr-value",matches:function(a){var b=/^aria-/;if(a.hasAttributes())for(var c=a.attributes,d=0,e=c.length;e>d;d++)if(b.test(c[d].nodeName))return!0;return!1},evaluate:function(a,b){b=Array.isArray(b)?b:[];for(var c,d,e=[],f=/^aria-/,g=a.attributes,h=0,i=g.length;i>h;h++)c=g[h],d=c.nodeName,-1===b.indexOf(d)&&f.test(d)&&!R.aria.validateAttrValue(a,d)&&e.push(d+'="'+c.nodeValue+'"');return e.length?(this.data(e),!1):!0},options:[]},{id:"aria-valid-attr",matches:function(a){var b=/^aria-/;if(a.hasAttributes())for(var c=a.attributes,d=0,e=c.length;e>d;d++)if(b.test(c[d].nodeName))return!0;return!1},evaluate:function(a,b){b=Array.isArray(b)?b:[];for(var c,d=[],e=/^aria-/,f=a.attributes,g=0,h=f.length;h>g;g++)c=f[g].nodeName,-1===b.indexOf(c)&&e.test(c)&&!R.aria.validateAttr(c)&&d.push(c);return d.length?(this.data(d),!1):!0},options:[]},{id:"color-contrast",matches:function(a){var c=a.nodeName,d=a.type,e=b;if("INPUT"===c)return-1===["hidden","range","color","checkbox","radio","image"].indexOf(d)&&!a.disabled;if("SELECT"===c)return!!a.options.length&&!a.disabled;if("TEXTAREA"===c)return!a.disabled;if("OPTION"===c)return!1;if("BUTTON"===c&&a.disabled)return!1;if("LABEL"===c){var f=a.htmlFor&&e.getElementById(a.htmlFor);if(f&&f.disabled)return!1;var f=a.querySelector('input:not([type="hidden"]):not([type="image"]):not([type="button"]):not([type="submit"]):not([type="reset"]), select, textarea');if(f&&f.disabled)return!1}if(a.id){var f=e.querySelector("[aria-labelledby~="+R.utils.escapeSelector(a.id)+"]");if(f&&f.disabled)return!1}if(""===R.text.visible(a,!1,!0))return!1;var g,h,i=b.createRange(),j=a.childNodes,k=j.length;for(h=0;k>h;h++)g=j[h],3===g.nodeType&&""!==R.text.sanitize(g.nodeValue)&&i.selectNodeContents(g);var l=i.getClientRects();for(k=l.length,h=0;k>h;h++)if(R.dom.visuallyOverlaps(l[h],a))return!0;return!1},evaluate:function(b,c){var d=[],e=R.color.getBackgroundColor(b,d),f=R.color.getForegroundColor(b);if(null===f||null===e)return!0;var g=a.getComputedStyle(b),h=parseFloat(g.getPropertyValue("font-size")),i=g.getPropertyValue("font-weight"),j=-1!==["bold","bolder","600","700","800","900"].indexOf(i),k=R.color.hasValidContrastRatio(e,f,h,j);return this.data({fgColor:f.toHexString(),bgColor:e.toHexString(),contrastRatio:k.contrastRatio.toFixed(2),fontSize:(72*h/96).toFixed(1)+"pt",fontWeight:j?"bold":"normal"}),k.isValid||this.relatedNodes(d),k.isValid}},{id:"fieldset",evaluate:function(a,c){function d(a,b){return R.utils.toArray(a.querySelectorAll('select,textarea,button,input:not([name="'+b+'"]):not([type="hidden"])'))}function e(a,b){var c=a.firstElementChild;if(!c||"LEGEND"!==c.nodeName)return j.relatedNodes([a]),i="no-legend",!1;if(!R.text.accessibleText(c))return j.relatedNodes([c]),i="empty-legend",!1;var e=d(a,b);return e.length?(j.relatedNodes(e),i="mixed-inputs",!1):!0}function f(a,b){var c=R.dom.idrefs(a,"aria-labelledby").some(function(a){return a&&R.text.accessibleText(a)}),e=a.getAttribute("aria-label");if(!(c||e&&R.text.sanitize(e)))return j.relatedNodes(a),i="no-group-label",!1;var f=d(a,b);return f.length?(j.relatedNodes(f),i="group-mixed-inputs",!1):!0}function g(a,b){return R.utils.toArray(a).filter(function(a){return a!==b})}function h(c){var d=R.utils.escapeSelector(a.name),h=b.querySelectorAll('input[type="'+R.utils.escapeSelector(a.type)+'"][name="'+d+'"]');if(h.length<2)return!0;var k=R.dom.findUp(c,"fieldset"),l=R.dom.findUp(c,'[role="group"]'+("radio"===a.type?',[role="radiogroup"]':""));return l||k?k?e(k,d):f(l,d):(i="no-group",j.relatedNodes(g(h,c)),!1)}var i,j=this,k={name:a.getAttribute("name"),type:a.getAttribute("type")},l=h(a);return l||(k.failureCode=i),this.data(k),l},after:function(a,b){var c={};return a.filter(function(a){if(a.result)return!0;var b=a.data;if(b){if(c[b.type]=c[b.type]||{},!c[b.type][b.name])return c[b.type][b.name]=[b],!0;var d=c[b.type][b.name].some(function(a){return a.failureCode===b.failureCode});return d||c[b.type][b.name].push(b),!d}return!1})}},{id:"group-labelledby",evaluate:function(a,c){this.data({name:a.getAttribute("name"),type:a.getAttribute("type")});var d=b.querySelectorAll('input[type="'+R.utils.escapeSelector(a.type)+'"][name="'+R.utils.escapeSelector(a.name)+'"]');return d.length<=1?!0:0!==[].map.call(d,function(a){var b=a.getAttribute("aria-labelledby");return b?b.split(/\s+/):[]}).reduce(function(a,b){return a.filter(function(a){return-1!==b.indexOf(a)})}).filter(function(a){
14
+ var c=b.getElementById(a);return c&&R.text.accessibleText(c)}).length},after:function(a,b){var c={};return a.filter(function(a){var b=a.data;return b&&(c[b.type]=c[b.type]||{},!c[b.type][b.name])?(c[b.type][b.name]=!0,!0):!1})}},{id:"accesskeys",evaluate:function(a,b){return this.data(a.getAttribute("accesskey")),this.relatedNodes([a]),!0},after:function(a,b){var c={};return a.filter(function(a){return c[a.data]?(c[a.data].relatedNodes.push(a.relatedNodes[0]),!1):(c[a.data]=a,a.relatedNodes=[],!0)}).map(function(a){return a.result=!!a.relatedNodes.length,a})}},{id:"focusable-no-name",evaluate:function(a,b){var c=a.getAttribute("tabindex"),d=R.dom.isFocusable(a)&&c>-1;return d?!R.text.accessibleText(a):!1}},{id:"tabindex",evaluate:function(a,b){return a.tabIndex<=0}},{id:"duplicate-img-label",evaluate:function(a,b){for(var c=a.querySelectorAll("img"),d=R.text.visible(a,!0),e=0,f=c.length;f>e;e++){var g=R.text.accessibleText(c[e]);if(g===d&&""!==d)return!0}return!1},enabled:!1},{id:"explicit-label",evaluate:function(a,c){var d=b.querySelector('label[for="'+R.utils.escapeSelector(a.id)+'"]');return d?!!R.text.accessibleText(d):!1},selector:"[id]"},{id:"help-same-as-label",evaluate:function(a,b){var c=R.text.label(a),d=a.getAttribute("title");if(!c)return!1;if(!d&&(d="",a.getAttribute("aria-describedby"))){var e=R.dom.idrefs(a,"aria-describedby");d=e.map(function(a){return a?R.text.accessibleText(a):""}).join("")}return R.text.sanitize(d)===R.text.sanitize(c)},enabled:!1},{id:"implicit-label",evaluate:function(a,b){var c=R.dom.findUp(a,"label");return c?!!R.text.accessibleText(c):!1}},{id:"multiple-label",evaluate:function(a,c){for(var d=[].slice.call(b.querySelectorAll('label[for="'+R.utils.escapeSelector(a.id)+'"]')),e=a.parentNode;e;)"LABEL"===e.tagName&&-1===d.indexOf(e)&&d.push(e),e=e.parentNode;return this.relatedNodes(d),d.length>1}},{id:"title-only",evaluate:function(a,b){var c=R.text.label(a);return!(c||!a.getAttribute("title")&&!a.getAttribute("aria-describedby"))}},{id:"has-lang",evaluate:function(a,b){return a.hasAttribute("lang")||a.hasAttribute("xml:lang")}},{id:"valid-lang",options:["aa","ab","ae","af","ak","am","an","ar","as","av","ay","az","ba","be","bg","bh","bi","bm","bn","bo","br","bs","ca","ce","ch","co","cr","cs","cu","cv","cy","da","de","dv","dz","ee","el","en","eo","es","et","eu","fa","ff","fi","fj","fo","fr","fy","ga","gd","gl","gn","gu","gv","ha","he","hi","ho","hr","ht","hu","hy","hz","ia","id","ie","ig","ii","ik","in","io","is","it","iu","iw","ja","ji","jv","jw","ka","kg","ki","kj","kk","kl","km","kn","ko","kr","ks","ku","kv","kw","ky","la","lb","lg","li","ln","lo","lt","lu","lv","mg","mh","mi","mk","ml","mn","mo","mr","ms","mt","my","na","nb","nd","ne","ng","nl","nn","no","nr","nv","ny","oc","oj","om","or","os","pa","pi","pl","ps","pt","qu","rm","rn","ro","ru","rw","sa","sc","sd","se","sg","sh","si","sk","sl","sm","sn","so","sq","sr","ss","st","su","sv","sw","ta","te","tg","th","ti","tk","tl","tn","to","tr","ts","tt","tw","ty","ug","uk","ur","uz","ve","vi","vo","wa","wo","xh","yi","yo","za","zh","zu"],evaluate:function(a,b){var c=(a.getAttribute("lang")||"").trim().toLowerCase(),d=(a.getAttribute("xml:lang")||"").trim().toLowerCase(),e=[];return(b||[]).forEach(function(a){a=a.toLowerCase(),!c||c!==a&&0!==c.indexOf(a.toLowerCase()+"-")||(c=null),!d||d!==a&&0!==d.indexOf(a.toLowerCase()+"-")||(d=null)}),d&&e.push('xml:lang="'+d+'"'),c&&e.push('lang="'+c+'"'),e.length?(this.data(e),!0):!1}},{id:"dlitem",evaluate:function(a,b){return"DL"===a.parentNode.tagName}},{id:"has-listitem",evaluate:function(a,b){var c=a.children;if(0===c.length)return!0;for(var d=0;d<c.length;d++)if("LI"===c[d].nodeName)return!1;return!0}},{id:"listitem",evaluate:function(a,b){return-1!==["UL","OL"].indexOf(a.parentNode.tagName)}},{id:"only-dlitems",evaluate:function(a,b){for(var c,d=[],e=a.childNodes,f=!1,g=0;g<e.length;g++)c=e[g],1===c.nodeType&&"DT"!==c.nodeName&&"DD"!==c.nodeName&&"SCRIPT"!==c.nodeName&&"TEMPLATE"!==c.nodeName?d.push(c):3===c.nodeType&&""!==c.nodeValue.trim()&&(f=!0);d.length&&this.relatedNodes(d);var h=!!d.length||f;return h}},{id:"only-listitems",evaluate:function(a,b){for(var c,d=[],e=a.childNodes,f=!1,g=0;g<e.length;g++)c=e[g],1===c.nodeType&&"LI"!==c.nodeName&&"SCRIPT"!==c.nodeName&&"TEMPLATE"!==c.nodeName?d.push(c):3===c.nodeType&&""!==c.nodeValue.trim()&&(f=!0);return d.length&&this.relatedNodes(d),!!d.length||f}},{id:"structured-dlitems",evaluate:function(a,b){var c=a.children;if(!c||!c.length)return!1;for(var d=!1,e=!1,f=0;f<c.length;f++){if("DT"===c[f].nodeName&&(d=!0),d&&"DD"===c[f].nodeName)return!1;"DD"===c[f].nodeName&&(e=!0)}return d||e}},{id:"caption",evaluate:function(a,b){return!a.querySelector("track[kind=captions]")}},{id:"description",evaluate:function(a,b){return!a.querySelector("track[kind=descriptions]")}},{id:"meta-viewport",evaluate:function(a,b){for(var c,d=a.getAttribute("content")||"",e=d.split(/[;,]/),f={},g=0,h=e.length;h>g;g++){c=e[g].split("=");var i=c.shift();i&&c.length&&(f[i.trim()]=c.join("=").trim())}return f["maximum-scale"]&&parseFloat(f["maximum-scale"])<5?!1:"no"===f["user-scalable"]?!1:!0}},{id:"header-present",selector:"html",evaluate:function(a,b){return!!a.querySelector('h1, h2, h3, h4, h5, h6, [role="heading"]')}},{id:"heading-order",evaluate:function(a,b){var c=a.getAttribute("aria-level");if(null!==c)return this.data(parseInt(c,10)),!0;var d=a.tagName.match(/H(\d)/);return d?(this.data(parseInt(d[1],10)),!0):!0},after:function(a,b){if(a.length<2)return a;for(var c=a[0].data,d=1;d<a.length;d++)a[d].result&&a[d].data>c+1&&(a[d].result=!1),c=a[d].data;return a}},{id:"internal-link-present",selector:"html",evaluate:function(a,b){return!!a.querySelector('a[href^="#"]')}},{id:"landmark",selector:"html",evaluate:function(a,b){return!!a.querySelector('[role="main"]')}},{id:"meta-refresh",evaluate:function(a,b){var c=a.getAttribute("content")||"",d=c.split(/[;,]/);return""===c||"0"===d[0]}},{id:"region",evaluate:function(a,b){function c(a){return h&&R.dom.isFocusable(R.dom.getElementByReference(h,"href"))&&h===a}function d(a){var b=a.getAttribute("role");return b&&-1!==g.indexOf(b)}function e(a){return d(a)?null:c(a)?f(a):R.dom.isVisible(a,!0)&&(R.text.visible(a,!0,!0)||R.dom.isVisualContent(a))?a:f(a)}function f(a){var b=R.utils.toArray(a.children);return 0===b.length?[]:b.map(e).filter(function(a){return null!==a}).reduce(function(a,b){return a.concat(b)},[])}var g=R.aria.getRolesByType("landmark"),h=a.querySelector("a[href]"),i=f(a);return this.relatedNodes(i),!i.length},after:function(a,b){return[a[0]]}},{id:"skip-link",selector:"a[href]",evaluate:function(a,b){return R.dom.isFocusable(R.dom.getElementByReference(a,"href"))},after:function(a,b){return[a[0]]}},{id:"unique-frame-title",evaluate:function(a,b){return this.data(a.title),!0},after:function(a,b){var c={};return a.forEach(function(a){c[a.data]=void 0!==c[a.data]?++c[a.data]:0}),a.filter(function(a){return!!c[a.data]})}},{id:"aria-label",evaluate:function(a,b){var c=a.getAttribute("aria-label");return!!(c?R.text.sanitize(c).trim():"")}},{id:"aria-labelledby",evaluate:function(a,b){var c,d,e=R.dom.idrefs(a,"aria-labelledby"),f=e.length;for(d=0;f>d;d++)if(c=e[d],c&&R.text.accessibleText(c).trim())return!0;return!1}},{id:"button-has-visible-text",evaluate:function(a,b){return R.text.accessibleText(a).length>0},selector:'button, [role="button"]:not(input)'},{id:"doc-has-title",evaluate:function(a,c){var d=b.title;return!!(d?R.text.sanitize(d).trim():"")}},{id:"duplicate-id",evaluate:function(a,c){for(var d=b.querySelectorAll('[id="'+R.utils.escapeSelector(a.id)+'"]'),e=[],f=0;f<d.length;f++)d[f]!==a&&e.push(d[f]);return e.length&&this.relatedNodes(e),this.data(a.getAttribute("id")),d.length<=1},after:function(a,b){var c=[];return a.filter(function(a){return-1===c.indexOf(a.data)?(c.push(a.data),!0):!1})}},{id:"exists",evaluate:function(a,b){return!0}},{id:"has-alt",evaluate:function(a,b){return a.hasAttribute("alt")}},{id:"has-visible-text",evaluate:function(a,b){return R.text.accessibleText(a).length>0}},{id:"non-empty-alt",evaluate:function(a,b){var c=a.getAttribute("alt");return!!(c?R.text.sanitize(c).trim():"")}},{id:"non-empty-if-present",evaluate:function(a,b){var c=a.getAttribute("value");return this.data(c),null===c||""!==R.text.sanitize(c).trim()},selector:'[type="submit"], [type="reset"]'},{id:"non-empty-title",evaluate:function(a,b){var c=a.getAttribute("title");return!!(c?R.text.sanitize(c).trim():"")}},{id:"non-empty-value",evaluate:function(a,b){var c=a.getAttribute("value");return!!(c?R.text.sanitize(c).trim():"")},selector:'[type="button"]'},{id:"role-none",evaluate:function(a,b){return"none"===a.getAttribute("role")}},{id:"role-presentation",evaluate:function(a,b){return"presentation"===a.getAttribute("role")}},{id:"cell-no-header",evaluate:function(a,b){for(var c,d,e=[],f=0,g=a.rows.length;g>f;f++){c=a.rows[f];for(var h=0,i=c.cells.length;i>h;h++)d=c.cells[h],!R.table.isDataCell(d)||R.aria.label(d)||R.table.getHeaders(d).length||e.push(d)}return e.length?(this.relatedNodes(e),!0):!1}},{id:"consistent-columns",evaluate:function(a,b){for(var c,d=R.table.toArray(a),e=[],f=0,g=d.length;g>f;f++)0===f?c=d[f].length:c!==d[f].length&&e.push(a.rows[f]);return!e.length}},{id:"has-caption",evaluate:function(a,b){return!!a.caption}},{id:"has-summary",evaluate:function(a,b){return!!a.summary}},{id:"has-th",evaluate:function(a,b){for(var c,d,e=[],f=0,g=a.rows.length;g>f;f++){c=a.rows[f];for(var h=0,i=c.cells.length;i>h;h++)d=c.cells[h],"TH"===d.nodeName&&e.push(d)}return e.length?(this.relatedNodes(e),!0):!1}},{id:"headers-attr-reference",evaluate:function(a,b){function c(a){a&&R.text.accessibleText(a)||g.push(e)}for(var d,e,f,g=[],h=0,i=a.rows.length;i>h;h++){d=a.rows[h];for(var j=0,k=d.cells.length;k>j;j++)e=d.cells[j],f=R.dom.idrefs(e,"headers"),f.length&&f.forEach(c)}return g.length?(this.relatedNodes(g),!0):!1}},{id:"headers-visible-text",evaluate:function(a,b){for(var c,d,e=[],f=0,g=a.rows.length;g>f;f++){c=a.rows[f];for(var h=0,i=c.cells.length;i>h;h++)d=c.cells[h],R.table.isHeader(d)&&!R.text.accessibleText(d)&&e.push(d)}return e.length?(this.relatedNodes(e),!0):!1}},{id:"html4-scope",evaluate:function(a,c){return R.dom.isHTML5(b)?!1:"TH"===a.nodeName||"TD"===a.nodeName}},{id:"html5-scope",evaluate:function(a,c){return R.dom.isHTML5(b)?"TH"===a.nodeName:!1}},{id:"no-caption",evaluate:function(a,b){return!(a.caption||{}).textContent},enabled:!1},{id:"rowspan",evaluate:function(a,b){for(var c,d,e=[],f=0,g=a.rows.length;g>f;f++){c=a.rows[f];for(var h=0,i=c.cells.length;i>h;h++)d=c.cells[h],1!==d.rowSpan&&e.push(d)}return e.length?(this.relatedNodes(e),!0):!1}},{id:"same-caption-summary",selector:"table",evaluate:function(a,b){return!(!a.summary||!a.caption)&&a.summary===R.text.accessibleText(a.caption)}},{id:"scope-value",evaluate:function(a,b){var c=a.getAttribute("scope");return"row"!==c&&"col"!==c}},{id:"th-headers-attr",evaluate:function(a,b){for(var c,d,e=[],f=0,g=a.rows.length;g>f;f++){c=a.rows[f];for(var h=0,i=c.cells.length;i>h;h++)d=c.cells[h],"TH"===d.nodeName&&d.getAttribute("headers")&&e.push(d)}return e.length?(this.relatedNodes(e),!0):!1}},{id:"th-scope",evaluate:function(a,b){for(var c,d,e=[],f=0,g=a.rows.length;g>f;f++){c=a.rows[f];for(var h=0,i=c.cells.length;i>h;h++)d=c.cells[h],"TH"!==d.nodeName||d.getAttribute("scope")||e.push(d)}return e.length?(this.relatedNodes(e),!0):!1}},{id:"th-single-row-column",evaluate:function(a,b){for(var c,d,e,f=[],g=[],h=0,i=a.rows.length;i>h;h++){c=a.rows[h];for(var j=0,k=c.cells.length;k>j;j++)d=c.cells[j],d.nodeName&&(R.table.isColumnHeader(d)&&-1===g.indexOf(h)?g.push(h):R.table.isRowHeader(d)&&(e=R.table.getCellPosition(d),-1===f.indexOf(e.x)&&f.push(e.x)))}return g.length>1||f.length>1?!0:!1}}],commons:function(){function c(b){var c,d=a.getComputedStyle(b);if("none"!==d.getPropertyValue("background-image"))return null;var e=d.getPropertyValue("background-color");"transparent"===e?c=new r.Color(0,0,0,0):(c=new r.Color,c.parseRgbString(e));var f=d.getPropertyValue("opacity");return c.alpha=c.alpha*f,c}function d(a){"use strict";var b=a.match(/rect\s*\(([0-9]+)px,?\s*([0-9]+)px,?\s*([0-9]+)px,?\s*([0-9]+)px\s*\)/);return b&&5===b.length?b[3]-b[1]<=0&&b[2]-b[4]<=0:!1}function e(a){var c=null;return a.id&&(c=b.querySelector('label[for="'+v.escapeSelector(a.id)+'"]'))?c:c=s.findUp(a,"label")}function f(a){return-1!==["button","reset","submit"].indexOf(a.type)}function g(a){return"TEXTAREA"===a.nodeName||"SELECT"===a.nodeName||"INPUT"===a.nodeName&&"hidden"!==a.type}function h(a){return-1!==["BUTTON","SUMMARY","A"].indexOf(a.nodeName)}function i(a){return-1!==["TABLE","FIGURE"].indexOf(a.nodeName)}function j(a){if("INPUT"===a.nodeName)return!a.hasAttribute("type")||-1!==y.indexOf(a.getAttribute("type"))&&a.value?a.value:"";if("SELECT"===a.nodeName){var b=a.options;if(b&&b.length){for(var c="",d=0;d<b.length;d++)b[d].selected&&(c+=" "+b[d].text);return u.sanitize(c)}return""}return"TEXTAREA"===a.nodeName&&a.value?a.value:""}function k(a,b){var c=a.querySelector(b);return c?u.accessibleText(c):""}function l(a){if(!a)return!1;switch(a.nodeName){case"SELECT":case"TEXTAREA":return!0;case"INPUT":return!a.hasAttribute("type")||-1!==y.indexOf(a.getAttribute("type"));default:return!1}}function m(a){return"INPUT"===a.nodeName&&"image"===a.type||-1!==["IMG","APPLET","AREA"].indexOf(a.nodeName)}function n(a){return!!u.sanitize(a)}var o={},p=o.aria={},q=p._lut={};q.attributes={"aria-activedescendant":{type:"idref"},"aria-atomic":{type:"boolean",values:["true","false"]},"aria-autocomplete":{type:"nmtoken",values:["inline","list","both","none"]},"aria-busy":{type:"boolean",values:["true","false"]},"aria-checked":{type:"nmtoken",values:["true","false","mixed","undefined"]},"aria-colcount":{type:"int"},"aria-colindex":{type:"int"},"aria-colspan":{type:"int"},"aria-controls":{type:"idrefs"},"aria-describedby":{type:"idrefs"},"aria-disabled":{type:"boolean",values:["true","false"]},"aria-dropeffect":{type:"nmtokens",values:["copy","move","reference","execute","popup","none"]},"aria-expanded":{type:"nmtoken",values:["true","false","undefined"]},"aria-flowto":{type:"idrefs"},"aria-grabbed":{type:"nmtoken",values:["true","false","undefined"]},"aria-haspopup":{type:"boolean",values:["true","false"]},"aria-hidden":{type:"boolean",values:["true","false"]},"aria-invalid":{type:"nmtoken",values:["true","false","spelling","grammar"]},"aria-label":{type:"string"},"aria-labelledby":{type:"idrefs"},"aria-level":{type:"int"},"aria-live":{type:"nmtoken",values:["off","polite","assertive"]},"aria-multiline":{type:"boolean",values:["true","false"]},"aria-multiselectable":{type:"boolean",values:["true","false"]},"aria-orientation":{type:"nmtoken",values:["horizontal","vertical"]},"aria-owns":{type:"idrefs"},"aria-posinset":{type:"int"},"aria-pressed":{type:"nmtoken",values:["true","false","mixed","undefined"]},"aria-readonly":{type:"boolean",values:["true","false"]},"aria-relevant":{type:"nmtokens",values:["additions","removals","text","all"]},"aria-required":{type:"boolean",values:["true","false"]},"aria-rowcount":{type:"int"},"aria-rowindex":{type:"int"},"aria-rowspan":{type:"int"},"aria-selected":{type:"nmtoken",values:["true","false","undefined"]},"aria-setsize":{type:"int"},"aria-sort":{type:"nmtoken",values:["ascending","descending","other","none"]},"aria-valuemax":{type:"decimal"},"aria-valuemin":{type:"decimal"},"aria-valuenow":{type:"decimal"},"aria-valuetext":{type:"string"}},q.globalAttributes=["aria-atomic","aria-busy","aria-controls","aria-describedby","aria-disabled","aria-dropeffect","aria-flowto","aria-grabbed","aria-haspopup","aria-hidden","aria-invalid","aria-label","aria-labelledby","aria-live","aria-owns","aria-relevant"],q.role={alert:{type:"widget",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null},alertdialog:{type:"widget",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null},application:{type:"landmark",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null},article:{type:"structure",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null,implicit:["article"]},banner:{type:"landmark",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null},button:{type:"widget",attributes:{allowed:["aria-expanded","aria-pressed"]},owned:null,nameFrom:["author","contents"],context:null,implicit:["button",'input[type="button"]','input[type="image"]']},cell:{type:"structure",attributes:{allowed:["aria-colindex","aria-colspan","aria-rowindex","aria-rowspan"]},owned:null,nameFrom:["author","contents"],context:["row"]},checkbox:{type:"widget",attributes:{required:["aria-checked"]},owned:null,nameFrom:["author","contents"],context:null,implicit:['input[type="checkbox"]']},columnheader:{type:"structure",attributes:{allowed:["aria-expanded","aria-sort","aria-readonly","aria-selected","aria-required"]},owned:null,nameFrom:["author","contents"],context:["row"]},combobox:{type:"composite",attributes:{required:["aria-expanded"],allowed:["aria-autocomplete","aria-required","aria-activedescendant"]},owned:{all:["listbox","textbox"]},nameFrom:["author"],context:null},command:{nameFrom:["author"],type:"abstract"},complementary:{type:"landmark",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null,implicit:["aside"]},composite:{nameFrom:["author"],type:"abstract"},contentinfo:{type:"landmark",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null},definition:{type:"structure",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null},dialog:{type:"widget",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null,implicit:["dialog"]},directory:{type:"structure",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author","contents"],context:null},document:{type:"structure",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null,implicit:["body"]},form:{type:"landmark",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null},grid:{type:"composite",attributes:{allowed:["aria-level","aria-multiselectable","aria-readonly","aria-activedescendant","aria-expanded"]},owned:{one:["rowgroup","row"]},nameFrom:["author"],context:null},gridcell:{type:"widget",attributes:{allowed:["aria-selected","aria-readonly","aria-expanded","aria-required"]},owned:null,nameFrom:["author","contents"],context:["row"]},group:{type:"structure",attributes:{allowed:["aria-activedescendant","aria-expanded"]},owned:null,nameFrom:["author"],context:null,implicit:["details"]},heading:{type:"structure",attributes:{allowed:["aria-level","aria-expanded"]},owned:null,nameFrom:["author","contents"],context:null,implicit:["h1","h2","h3","h4","h5","h6"]},img:{type:"structure",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null,implicit:["img"]},input:{nameFrom:["author"],type:"abstract"},landmark:{nameFrom:["author"],type:"abstract"},link:{type:"widget",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author","contents"],context:null,implicit:["a[href]"]},list:{type:"structure",attributes:{allowed:["aria-expanded"]},owned:{all:["listitem"]},nameFrom:["author"],context:null,implicit:["ol","ul"]},listbox:{type:"composite",attributes:{allowed:["aria-activedescendant","aria-multiselectable","aria-required","aria-expanded"]},owned:{all:["option"]},nameFrom:["author"],context:null,implicit:["select"]},listitem:{type:"structure",attributes:{allowed:["aria-level","aria-posinset","aria-setsize","aria-expanded"]},owned:null,nameFrom:["author","contents"],context:["list"],implicit:["li"]},log:{type:"widget",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null},main:{type:"landmark",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null},marquee:{type:"widget",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null},math:{type:"structure",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null},menu:{type:"composite",attributes:{allowed:["aria-activedescendant","aria-expanded"]},owned:{one:["menuitem","menuitemradio","menuitemcheckbox"]},nameFrom:["author"],context:null},menubar:{type:"composite",attributes:{allowed:["aria-activedescendant","aria-expanded"]},owned:null,nameFrom:["author"],context:null},menuitem:{type:"widget",attributes:null,owned:null,nameFrom:["author","contents"],context:["menu","menubar"]},menuitemcheckbox:{type:"widget",attributes:{required:["aria-checked"]},owned:null,nameFrom:["author","contents"],context:["menu","menubar"]},menuitemradio:{type:"widget",attributes:{allowed:["aria-selected","aria-posinset","aria-setsize"],required:["aria-checked"]},owned:null,nameFrom:["author","contents"],context:["menu","menubar"]},navigation:{type:"landmark",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null},none:{type:"structure",attributes:null,owned:null,nameFrom:["author"],context:null},note:{type:"structure",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null},option:{type:"widget",attributes:{allowed:["aria-selected","aria-posinset","aria-setsize","aria-checked"]},owned:null,nameFrom:["author","contents"],context:["listbox"]},presentation:{type:"structure",attributes:null,owned:null,nameFrom:["author"],context:null},progressbar:{type:"widget",attributes:{allowed:["aria-valuetext","aria-valuenow","aria-valuemax","aria-valuemin"]},owned:null,nameFrom:["author"],context:null},radio:{type:"widget",attributes:{allowed:["aria-selected","aria-posinset","aria-setsize"],required:["aria-checked"]},owned:null,nameFrom:["author","contents"],context:null,implicit:['input[type="radio"]']},radiogroup:{type:"composite",attributes:{allowed:["aria-activedescendant","aria-required","aria-expanded"]},owned:{all:["radio"]},nameFrom:["author"],context:null},range:{nameFrom:["author"],type:"abstract"},region:{type:"structure",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null,implicit:["section"]},roletype:{type:"abstract"},row:{type:"structure",attributes:{allowed:["aria-level","aria-selected","aria-activedescendant","aria-expanded"]},owned:{one:["cell","columnheader","rowheader","gridcell"]},nameFrom:["author","contents"],context:["rowgroup","grid","treegrid","table"]},rowgroup:{type:"structure",attributes:{allowed:["aria-activedescendant","aria-expanded"]},owned:{all:["row"]},nameFrom:["author","contents"],context:["grid","table"]},rowheader:{type:"structure",attributes:{allowed:["aria-sort","aria-required","aria-readonly","aria-expanded","aria-selected"]},owned:null,nameFrom:["author","contents"],context:["row"]},scrollbar:{type:"widget",attributes:{required:["aria-controls","aria-orientation","aria-valuenow","aria-valuemax","aria-valuemin"],allowed:["aria-valuetext"]},owned:null,nameFrom:["author"],context:null},search:{type:"landmark",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null},searchbox:{type:"widget",attributes:{allowed:["aria-activedescendant","aria-autocomplete","aria-multiline","aria-readonly","aria-required"]},owned:null,nameFrom:["author"],context:null,implicit:['input[type="search"]']},section:{nameFrom:["author","contents"],type:"abstract"},sectionhead:{nameFrom:["author","contents"],type:"abstract"},select:{nameFrom:["author"],type:"abstract"},separator:{type:"structure",attributes:{allowed:["aria-expanded","aria-orientation"]},owned:null,nameFrom:["author"],context:null},slider:{type:"widget",attributes:{allowed:["aria-valuetext","aria-orientation"],required:["aria-valuenow","aria-valuemax","aria-valuemin"]},owned:null,nameFrom:["author"],context:null},spinbutton:{type:"widget",attributes:{allowed:["aria-valuetext","aria-required"],required:["aria-valuenow","aria-valuemax","aria-valuemin"]},owned:null,nameFrom:["author"],context:null},status:{type:"widget",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null,implicit:["output"]},structure:{type:"abstract"},"switch":{type:"widget",attributes:{required:["aria-checked"]},owned:null,nameFrom:["author","contents"],context:null},tab:{type:"widget",attributes:{allowed:["aria-selected","aria-expanded"]},owned:null,nameFrom:["author","contents"],context:["tablist"]},table:{type:"structure",attributes:{allowed:["aria-colcount","aria-rowcount"]},owned:{one:["rowgroup","row"]},nameFrom:["author"],context:null,implicit:["table"]},tablist:{type:"composite",attributes:{allowed:["aria-activedescendant","aria-expanded","aria-level","aria-multiselectable"]},owned:{all:["tab"]},nameFrom:["author"],context:null},tabpanel:{type:"widget",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null},text:{type:"structure",owned:null,nameFrom:["author","contents"],context:null},textbox:{type:"widget",attributes:{allowed:["aria-activedescendant","aria-autocomplete","aria-multiline","aria-readonly","aria-required"]},owned:null,nameFrom:["author"],context:null,implicit:['input[type="text"]',"input:not([type])"]},timer:{type:"widget",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author"],context:null},toolbar:{type:"structure",attributes:{allowed:["aria-activedescendant","aria-expanded"]},owned:null,nameFrom:["author"],context:null,implicit:['menu[type="toolbar"]']},tooltip:{type:"widget",attributes:{allowed:["aria-expanded"]},owned:null,nameFrom:["author","contents"],context:null},tree:{type:"composite",attributes:{allowed:["aria-activedescendant","aria-multiselectable","aria-required","aria-expanded"]},owned:{all:["treeitem"]},nameFrom:["author"],context:null},treegrid:{type:"composite",attributes:{allowed:["aria-activedescendant","aria-expanded","aria-level","aria-multiselectable","aria-readonly","aria-required"]},owned:{all:["treeitem"]},nameFrom:["author"],context:null},treeitem:{type:"widget",attributes:{allowed:["aria-checked","aria-selected","aria-expanded","aria-level","aria-posinset","aria-setsize"]},owned:null,nameFrom:["author","contents"],context:["treegrid","tree"]},widget:{type:"abstract"},window:{nameFrom:["author"],type:"abstract"}};var r={};o.color=r;var s=o.dom={},t=o.table={},u=o.text={},v=o.utils={};v.escapeSelector=S.utils.escapeSelector,v.matchesSelector=S.utils.matchesSelector,v.clone=S.utils.clone,p.requiredAttr=function(a){"use strict";var b=q.role[a],c=b&&b.attributes&&b.attributes.required;return c||[]},p.allowedAttr=function(a){"use strict";var b=q.role[a],c=b&&b.attributes&&b.attributes.allowed||[],d=b&&b.attributes&&b.attributes.required||[];return c.concat(q.globalAttributes).concat(d)},p.validateAttr=function(a){"use strict";return!!q.attributes[a]},p.validateAttrValue=function(a,c){"use strict";var d,e,f,g,h=b,i=a.getAttribute(c),j=q.attributes[c];if(!j)return!0;if(j.values)return"string"==typeof i&&-1!==j.values.indexOf(i.toLowerCase())?!0:!1;switch(j.type){case"idref":return!(!i||!h.getElementById(i));case"idrefs":for(d=v.tokenList(i),e=0,f=d.length;f>e;e++)if(d[e]&&!h.getElementById(d[e]))return!1;return!!d.length;case"string":return!0;case"decimal":return g=i.match(/^[-+]?([0-9]*)\.?([0-9]*)$/),!(!g||!g[1]&&!g[2]);case"int":return/^[-+]?[0-9]+$/.test(i)}},p.label=function(a){var b,c;return a.getAttribute("aria-labelledby")&&(b=s.idrefs(a,"aria-labelledby"),c=b.map(function(a){return a?u.visible(a,!0):""}).join(" ").trim())?c:(c=a.getAttribute("aria-label"),c&&(c=u.sanitize(c).trim())?c:null)},p.isValidRole=function(a){"use strict";return q.role[a]?!0:!1},p.getRolesWithNameFromContents=function(){return Object.keys(q.role).filter(function(a){return q.role[a].nameFrom&&-1!==q.role[a].nameFrom.indexOf("contents")})},p.getRolesByType=function(a){return Object.keys(q.role).filter(function(b){return q.role[b].type===a})},p.getRoleType=function(a){var b=q.role[a];return b&&b.type||null},p.requiredOwned=function(a){"use strict";var b=null,c=q.role[a];return c&&(b=v.clone(c.owned)),b},p.requiredContext=function(a){"use strict";var b=null,c=q.role[a];return c&&(b=v.clone(c.context)),b},p.implicitNodes=function(a){"use strict";var b=null,c=q.role[a];return c&&c.implicit&&(b=v.clone(c.implicit)),b},p.implicitRole=function(a){"use strict";var b,c,d,e=q.role;for(b in e)if(e.hasOwnProperty(b)&&(c=e[b],c.implicit))for(var f=0,g=c.implicit.length;g>f;f++)if(d=c.implicit[f],v.matchesSelector(a,d))return b;return null},r.Color=function(a,b,c,d){this.red=a,this.green=b,this.blue=c,this.alpha=d,this.toHexString=function(){var a=Math.round(this.red).toString(16),b=Math.round(this.green).toString(16),c=Math.round(this.blue).toString(16);return"#"+(this.red>15.5?a:"0"+a)+(this.green>15.5?b:"0"+b)+(this.blue>15.5?c:"0"+c)};var e=/^rgb\((\d+), (\d+), (\d+)\)$/,f=/^rgba\((\d+), (\d+), (\d+), (\d*(\.\d+)?)\)/;this.parseRgbString=function(a){var b=a.match(e);return b?(this.red=parseInt(b[1],10),this.green=parseInt(b[2],10),this.blue=parseInt(b[3],10),void(this.alpha=1)):(b=a.match(f),b?(this.red=parseInt(b[1],10),this.green=parseInt(b[2],10),this.blue=parseInt(b[3],10),void(this.alpha=parseFloat(b[4]))):void 0)},this.getRelativeLuminance=function(){var a=this.red/255,b=this.green/255,c=this.blue/255,d=.03928>=a?a/12.92:Math.pow((a+.055)/1.055,2.4),e=.03928>=b?b/12.92:Math.pow((b+.055)/1.055,2.4),f=.03928>=c?c/12.92:Math.pow((c+.055)/1.055,2.4);return.2126*d+.7152*e+.0722*f}},r.flattenColors=function(a,b){var c=a.alpha,d=(1-c)*b.red+c*a.red,e=(1-c)*b.green+c*a.green,f=(1-c)*b.blue+c*a.blue,g=a.alpha+b.alpha*(1-a.alpha);return new r.Color(d,e,f,g)},r.getContrast=function(a,b){if(!b||!a)return null;b.alpha<1&&(b=r.flattenColors(b,a));var c=a.getRelativeLuminance(),d=b.getRelativeLuminance();return(Math.max(d,c)+.05)/(Math.min(d,c)+.05)},r.hasValidContrastRatio=function(a,b,c,d){var e=r.getContrast(a,b),f=d&&Math.ceil(72*c)/96<14||!d&&Math.ceil(72*c)/96<18;return{isValid:f&&e>=4.5||!f&&e>=3,contrastRatio:e}},s.isOpaque=function(a){var b=c(a);return null===b||1===b.alpha?!0:!1};var w=function(c,d){for(var e,f,g,h,i,j,k,l=[],m=!1,n=c,o=a.getComputedStyle(n);null!==n&&(!s.isOpaque(n)||0===parseInt(o.getPropertyValue("height"),10));)g=o.getPropertyValue("position"),h=o.getPropertyValue("top"),i=o.getPropertyValue("bottom"),j=o.getPropertyValue("left"),k=o.getPropertyValue("right"),("static"!==g&&"relative"!==g||"relative"===g&&("auto"!==j||"auto"!==k||"auto"!==h||"auto"!==i))&&(m=!0),n=n.parentElement,null!==n&&(o=a.getComputedStyle(n),0!==parseInt(o.getPropertyValue("height"),10)&&l.push(n));if(m&&s.supportsElementsFromPoint(b)){if(e=s.elementsFromPoint(b,Math.ceil(d.left+1),Math.ceil(d.top+1)),f=e.indexOf(c),-1===f)return null;e&&f<e.length-1&&(l=e.slice(f+1))}return l};r.getBackgroundColor=function(a,b){var d,e,f=c(a);if(!b||null!==f&&0===f.alpha||b.push(a),null===f||1===f.alpha)return f;a.scrollIntoView();var g=a.getBoundingClientRect(),h=a,i=[{color:f,node:a}],j=w(h,g);if(!j)return null;for(;1!==f.alpha;){if(d=j.shift(),!d&&"HTML"!==h.tagName)return null;if(d||"HTML"!==h.tagName){if(!s.visuallyContains(a,d))return null;if(e=c(d),!b||null!==e&&0===e.alpha||b.push(d),null===e)return null}else e=new r.Color(255,255,255,1);h=d,f=e,i.push({color:f,node:h})}for(var k=i.pop(),l=k.color;void 0!==(k=i.pop());)l=r.flattenColors(k.color,l);return l},r.getForegroundColor=function(b){var c=a.getComputedStyle(b),d=new r.Color;d.parseRgbString(c.getPropertyValue("color"));var e=c.getPropertyValue("opacity");if(d.alpha=d.alpha*e,1===d.alpha)return d;var f=r.getBackgroundColor(b);return null===f?null:r.flattenColors(d,f)},s.supportsElementsFromPoint=function(a){var b=a.createElement("x");return b.style.cssText="pointer-events:auto","auto"===b.style.pointerEvents||!!a.msElementsFromPoint},s.elementsFromPoint=function(a,b,c){var d,e,f,g=[],h=[];if(a.msElementsFromPoint){var i=a.msElementsFromPoint(b,c);return i?Array.prototype.slice.call(i):null;
15
+ }for(;(d=a.elementFromPoint(b,c))&&-1===g.indexOf(d)&&null!==d&&(g.push(d),h.push({value:d.style.getPropertyValue("pointer-events"),priority:d.style.getPropertyPriority("pointer-events")}),d.style.setProperty("pointer-events","none","important"),!s.isOpaque(d)););for(e=h.length;f=h[--e];)g[e].style.setProperty("pointer-events",f.value?f.value:"",f.priority);return g},s.findUp=function(a,c){"use strict";var d,e=b.querySelectorAll(c),f=e.length;if(!f)return null;for(e=v.toArray(e),d=a.parentNode;d&&-1===e.indexOf(d);)d=d.parentNode;return d},s.getElementByReference=function(a,c){"use strict";var d,e=a.getAttribute(c),f=b;if(e&&"#"===e.charAt(0)){if(e=e.substring(1),d=f.getElementById(e))return d;if(d=f.getElementsByName(e),d.length)return d[0]}return null},s.getElementCoordinates=function(a){"use strict";var c=s.getScrollOffset(b),d=c.left,e=c.top,f=a.getBoundingClientRect();return{top:f.top+e,right:f.right+d,bottom:f.bottom+e,left:f.left+d,width:f.right-f.left,height:f.bottom-f.top}},s.getScrollOffset=function(a){"use strict";if(!a.nodeType&&a.document&&(a=a.document),9===a.nodeType){var b=a.documentElement,c=a.body;return{left:b&&b.scrollLeft||c&&c.scrollLeft||0,top:b&&b.scrollTop||c&&c.scrollTop||0}}return{left:a.scrollLeft,top:a.scrollTop}},s.getViewportSize=function(a){"use strict";var b,c=a.document,d=c.documentElement;return a.innerWidth?{width:a.innerWidth,height:a.innerHeight}:d?{width:d.clientWidth,height:d.clientHeight}:(b=c.body,{width:b.clientWidth,height:b.clientHeight})},s.idrefs=function(a,c){"use strict";var d,e,f=b,g=[],h=a.getAttribute(c);if(h)for(h=v.tokenList(h),d=0,e=h.length;e>d;d++)g.push(f.getElementById(h[d]));return g},s.isFocusable=function(a){"use strict";if(!a||a.disabled||!s.isVisible(a)&&"AREA"!==a.nodeName)return!1;switch(a.nodeName){case"A":case"AREA":if(a.href)return!0;break;case"INPUT":return"hidden"!==a.type;case"TEXTAREA":case"SELECT":case"DETAILS":case"BUTTON":return!0}var b=a.getAttribute("tabindex");return b&&!isNaN(parseInt(b,10))?!0:!1},s.isHTML5=function(a){var b=a.doctype;return null===b?!1:"html"===b.name&&!b.publicId&&!b.systemId},s.isNode=function(a){"use strict";return a instanceof Node},s.isOffscreen=function(c){"use strict";var d,e=b.documentElement,f=a.getComputedStyle(b.body||e).getPropertyValue("direction"),g=s.getElementCoordinates(c);if(g.bottom<0)return!0;if("ltr"===f){if(g.right<0)return!0}else if(d=Math.max(e.scrollWidth,s.getViewportSize(a).width),g.left>d)return!0;return!1},s.isVisible=function(b,c,e){"use strict";var f,g=b.nodeName,h=b.parentNode;return 9===b.nodeType?!0:(f=a.getComputedStyle(b,null),null===f?!1:"none"===f.getPropertyValue("display")||"STYLE"===g||"SCRIPT"===g||!c&&d(f.getPropertyValue("clip"))||!e&&("hidden"===f.getPropertyValue("visibility")||!c&&s.isOffscreen(b))||c&&"true"===b.getAttribute("aria-hidden")?!1:h?s.isVisible(h,c,!0):!1)},s.isVisualContent=function(a){"use strict";switch(a.tagName.toUpperCase()){case"IMG":case"IFRAME":case"OBJECT":case"VIDEO":case"AUDIO":case"CANVAS":case"SVG":case"MATH":case"BUTTON":case"SELECT":case"TEXTAREA":case"KEYGEN":case"PROGRESS":case"METER":return!0;case"INPUT":return"hidden"!==a.type;default:return!1}},s.visuallyContains=function(b,c){var d=b.getBoundingClientRect(),e=c.getBoundingClientRect(),f=e.top,g=e.left,h={top:f-c.scrollTop,bottom:f-c.scrollTop+c.scrollHeight,left:g-c.scrollLeft,right:g-c.scrollLeft+c.scrollWidth};if(d.left<h.left&&d.left<e.left||d.top<h.top&&d.top<e.top||d.right>h.right&&d.right>e.right||d.bottom>h.bottom&&d.bottom>e.bottom)return!1;var i=a.getComputedStyle(c);return d.right>e.right||d.bottom>e.bottom?"scroll"===i.overflow||"auto"===i.overflow||"hidden"===i.overflow||c instanceof HTMLBodyElement||c instanceof HTMLHtmlElement:!0},s.visuallyOverlaps=function(b,c){var d=c.getBoundingClientRect(),e=d.top,f=d.left,g={top:e-c.scrollTop,bottom:e-c.scrollTop+c.scrollHeight,left:f-c.scrollLeft,right:f-c.scrollLeft+c.scrollWidth};if(b.left>g.right&&b.left>d.right||b.top>g.bottom&&b.top>d.bottom||b.right<g.left&&b.right<d.left||b.bottom<g.top&&b.bottom<d.top)return!1;var h=a.getComputedStyle(c);return b.left>d.right||b.top>d.bottom?"scroll"===h.overflow||"auto"===h.overflow||c instanceof HTMLBodyElement||c instanceof HTMLHtmlElement:!0},t.getCellPosition=function(a){for(var b,c=t.toArray(s.findUp(a,"table")),d=0;d<c.length;d++)if(c[d]&&(b=c[d].indexOf(a),-1!==b))return{x:b,y:d}},t.getHeaders=function(a){if(a.getAttribute("headers"))return o.dom.idrefs(a,"headers");for(var b,c=[],d=o.table.toArray(o.dom.findUp(a,"table")),e=o.table.getCellPosition(a),f=e.x-1;f>=0;f--)b=d[e.y][f],o.table.isRowHeader(b)&&c.unshift(b);for(var g=e.y-1;g>=0;g--)b=d[g][e.x],b&&o.table.isColumnHeader(b)&&c.unshift(b);return c},t.isColumnHeader=function(a){var b=a.getAttribute("scope");if("col"===b)return!0;if(b||"TH"!==a.nodeName)return!1;for(var c,d=t.getCellPosition(a),e=t.toArray(s.findUp(a,"table")),f=e[d.y],g=0,h=f.length;h>g;g++)if(c=f[g],c!==a&&t.isDataCell(c))return!1;return!0},t.isDataCell=function(a){return a.children.length||a.textContent.trim()?"TD"===a.nodeName:!1},t.isDataTable=function(b){var c=b.getAttribute("role");if(("presentation"===c||"none"===c)&&!s.isFocusable(b))return!1;if("true"===b.getAttribute("contenteditable")||s.findUp(b,'[contenteditable="true"]'))return!0;if("grid"===c||"treegrid"===c||"table"===c)return!0;if("landmark"===o.aria.getRoleType(c))return!0;if("0"===b.getAttribute("datatable"))return!1;if(b.getAttribute("summary"))return!0;if(b.tHead||b.tFoot||b.caption)return!0;for(var d=0,e=b.children.length;e>d;d++)if("COLGROUP"===b.children[d].nodeName)return!0;for(var f,g,h=0,i=b.rows.length,j=!1,k=0;i>k;k++){f=b.rows[k];for(var l=0,m=f.cells.length;m>l;l++){if(g=f.cells[l],j||g.offsetWidth===g.clientWidth&&g.offsetHeight===g.clientHeight||(j=!0),g.getAttribute("scope")||g.getAttribute("headers")||g.getAttribute("abbr"))return!0;if("TH"===g.nodeName)return!0;if(1===g.children.length&&"ABBR"===g.children[0].nodeName)return!0;h++}}if(b.getElementsByTagName("table").length)return!1;if(2>i)return!1;var n=b.rows[Math.ceil(i/2)];if(1===n.cells.length&&1===n.cells[0].colSpan)return!1;if(n.cells.length>=5)return!0;if(j)return!0;var p,q;for(k=0;i>k;k++){if(f=b.rows[k],p&&p!==a.getComputedStyle(f).getPropertyValue("background-color"))return!0;if(p=a.getComputedStyle(f).getPropertyValue("background-color"),q&&q!==a.getComputedStyle(f).getPropertyValue("background-image"))return!0;q=a.getComputedStyle(f).getPropertyValue("background-image")}return i>=20?!0:s.getElementCoordinates(b).width>.95*s.getViewportSize(a).width?!1:10>h?!1:b.querySelector("object, embed, iframe, applet")?!1:!0},t.isHeader=function(a){return t.isColumnHeader(a)||t.isRowHeader(a)?!0:a.id?!!b.querySelector('[headers~="'+v.escapeSelector(a.id)+'"]'):!1},t.isRowHeader=function(a){var b=a.getAttribute("scope");if("row"===b)return!0;if(b||"TH"!==a.nodeName)return!1;if(t.isColumnHeader(a))return!1;for(var c,d=t.getCellPosition(a),e=t.toArray(s.findUp(a,"table")),f=0,g=e.length;g>f;f++)if(c=e[f][d.x],c!==a&&t.isDataCell(c))return!1;return!0},t.toArray=function(a){for(var b=[],c=a.rows,d=0,e=c.length;e>d;d++){var f=c[d].cells;b[d]=b[d]||[];for(var g=0,h=0,i=f.length;i>h;h++)for(var j=0;j<f[h].colSpan;j++){for(var k=0;k<f[h].rowSpan;k++){for(b[d+k]=b[d+k]||[];b[d+k][g];)g++;b[d+k][g]=f[h]}g++}}return b};var x={submit:"Submit",reset:"Reset"},y=["text","search","tel","url","email","date","time","number","range","color"],z=["a","em","strong","small","mark","abbr","dfn","i","b","s","u","code","var","samp","kbd","sup","sub","q","cite","span","bdo","bdi","br","wbr","ins","del","img","embed","object","iframe","map","area","script","noscript","ruby","video","audio","input","textarea","select","button","label","output","datalist","keygen","progress","command","canvas","time","meter"];return u.accessibleText=function(a){function b(a,b,c){var i="";if(h(a)&&(i=d(a,!1,!1)||"",n(i)))return i;if("FIGURE"===a.nodeName&&(i=k(a,"figcaption"),n(i)))return i;if("TABLE"===a.nodeName){if(i=k(a,"caption"),n(i))return i;if(i=a.getAttribute("title")||a.getAttribute("summary")||"",n(i))return i}if(m(a))return a.getAttribute("alt")||"";if(g(a)&&!c){if(f(a))return a.value||a.title||x[a.type]||"";var j=e(a);if(j)return o(j,b,!0)}return""}function c(a,b,c){return!b&&a.hasAttribute("aria-labelledby")?u.sanitize(s.idrefs(a,"aria-labelledby").map(function(b){return a===b&&q.pop(),o(b,!0,a!==b)}).join(" ")):c&&l(a)||!a.hasAttribute("aria-label")?"":u.sanitize(a.getAttribute("aria-label"))}function d(a,b,c){for(var d,e=a.childNodes,f="",g=0;g<e.length;g++)d=e[g],3===d.nodeType?f+=d.textContent:1===d.nodeType&&(-1===z.indexOf(d.nodeName.toLowerCase())&&(f+=" "),f+=o(e[g],b,c));return f}function o(a,e,f){"use strict";var g="";if(null===a||!s.isVisible(a,!0)||-1!==q.indexOf(a))return"";q.push(a);var h=a.getAttribute("role");return g+=c(a,e,f),n(g)?g:(g=b(a,e,f),n(g)?g:f&&(g+=j(a),n(g))?g:i(a)||h&&-1===p.getRolesWithNameFromContents().indexOf(h)||(g=d(a,e,f),!n(g))?a.hasAttribute("title")?a.getAttribute("title"):"":g)}var q=[];return u.sanitize(o(a))},u.label=function(a){var c,d;return(d=p.label(a))?d:a.id&&(c=b.querySelector('label[for="'+v.escapeSelector(a.id)+'"]'),d=c&&u.visible(c,!0))?d:(c=s.findUp(a,"label"),d=c&&u.visible(c,!0),d?d:null)},u.sanitize=function(a){"use strict";return a.replace(/\r\n/g,"\n").replace(/\u00A0/g," ").replace(/[\s]{2,}/g," ").trim()},u.visible=function(a,b,c){"use strict";var d,e,f,g=a.childNodes,h=g.length,i="";for(d=0;h>d;d++)e=g[d],3===e.nodeType?(f=e.nodeValue,f&&s.isVisible(a,b)&&(i+=e.nodeValue)):c||(i+=u.visible(e,b));return u.sanitize(i)},v.toArray=function(a){"use strict";return Array.prototype.slice.call(a)},v.tokenList=function(a){"use strict";return a.trim().replace(/\s{2,}/g," ").split(" ")},o}()}),S.version="1.1.0"}(window,window.document);
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: axe-matchers
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Deque Systems
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2015-08-17 00:00:00.000000000 Z
12
+ date: 2015-08-27 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: dumb_delegator
@@ -211,7 +211,9 @@ description: |2
211
211
  axe-matchers provides matchers that wrap the axe-core accessibility library.
212
212
  The matchers can be used with RSpec, MiniTest, Cucumber and other test tools.
213
213
  Cucumber step definitions for are also provided.
214
- email:
214
+ email:
215
+ - helpdesk@deque.com
216
+ - hello@testdouble.com
215
217
  executables: []
216
218
  extensions: []
217
219
  extra_rdoc_files: []
@@ -226,11 +228,15 @@ files:
226
228
  - lib/axe/api/results/rule.rb
227
229
  - lib/axe/api/results.rb
228
230
  - lib/axe/api/rules.rb
231
+ - lib/axe/api/selector.rb
229
232
  - lib/axe/api/value_object.rb
230
233
  - lib/axe/api.rb
231
234
  - lib/axe/configuration.rb
232
235
  - lib/axe/cucumber/step.rb
233
236
  - lib/axe/cucumber/step_definitions.rb
237
+ - lib/axe/cucumber.rb
238
+ - lib/axe/dsl.rb
239
+ - lib/axe/expectation.rb
234
240
  - lib/axe/javascript_library.rb
235
241
  - lib/axe/matchers/be_accessible.rb
236
242
  - lib/axe/matchers.rb
@@ -238,6 +244,8 @@ files:
238
244
  - lib/axe/rspec.rb
239
245
  - lib/axe/version.rb
240
246
  - lib/axe.rb
247
+ - lib/chain_mail/chainable.rb
248
+ - lib/strip_heredoc.rb
241
249
  - lib/webdriver_script_adapter/exec_eval_script_adapter.rb
242
250
  - lib/webdriver_script_adapter/execute_async_script_adapter.rb
243
251
  - node_modules/axe-core/axe.min.js
@@ -246,7 +254,12 @@ files:
246
254
  homepage: https://www.deque.com
247
255
  licenses:
248
256
  - MPL-2.0
249
- metadata: {}
257
+ metadata:
258
+ bug_tracker_uri: https://github.com/dequelabs/axe-matchers/issues
259
+ documentation_uri: https://github.com/dequelabs/axe-matchers/blob/master/README.md
260
+ mailing_list_uri: ''
261
+ source_code_uri: https://github.com/dequelabs/axe-matchers
262
+ wiki_uri: https://github.com/dequelabs/axe-matchers/wiki
250
263
  post_install_message:
251
264
  rdoc_options: []
252
265
  require_paths:
@@ -261,7 +274,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
261
274
  - - '>='
262
275
  - !ruby/object:Gem::Version
263
276
  version: 1.3.6
264
- requirements: []
277
+ requirements:
278
+ - A WebDriver of some sort. e.g Capybara, Selenium or Watir
265
279
  rubyforge_project:
266
280
  rubygems_version: 2.0.14
267
281
  signing_key: