selenium-webdriver 3.0.0.beta4.0 → 4.0.0.alpha5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (139) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGES +679 -0
  3. data/Gemfile +2 -0
  4. data/LICENSE +1 -1
  5. data/README.md +1 -1
  6. data/lib/selenium-webdriver.rb +2 -2
  7. data/lib/selenium/server.rb +23 -16
  8. data/lib/selenium/webdriver.rb +43 -25
  9. data/lib/selenium/webdriver/atoms.rb +20 -1
  10. data/lib/selenium/webdriver/atoms/findElements.js +122 -0
  11. data/lib/selenium/webdriver/atoms/getAttribute.js +84 -11
  12. data/lib/selenium/webdriver/atoms/isDisplayed.js +100 -0
  13. data/lib/selenium/webdriver/chrome.rb +15 -20
  14. data/lib/selenium/webdriver/chrome/bridge.rb +29 -66
  15. data/lib/selenium/webdriver/{edge/service.rb → chrome/driver.rb} +19 -22
  16. data/lib/selenium/webdriver/chrome/options.rb +221 -0
  17. data/lib/selenium/webdriver/chrome/profile.rb +6 -7
  18. data/lib/selenium/webdriver/chrome/service.rb +20 -20
  19. data/lib/selenium/webdriver/common.rb +19 -11
  20. data/lib/selenium/webdriver/common/action_builder.rb +98 -246
  21. data/lib/selenium/webdriver/common/alert.rb +2 -7
  22. data/lib/selenium/webdriver/common/driver.rb +89 -51
  23. data/lib/selenium/webdriver/common/driver_extensions/downloads_files.rb +45 -0
  24. data/lib/selenium/webdriver/common/driver_extensions/has_addons.rb +50 -0
  25. data/lib/selenium/webdriver/common/driver_extensions/{has_input_devices.rb → has_debugger.rb} +12 -25
  26. data/lib/selenium/webdriver/common/driver_extensions/has_devtools.rb +38 -0
  27. data/lib/selenium/webdriver/common/driver_extensions/has_location.rb +3 -5
  28. data/lib/selenium/webdriver/common/driver_extensions/has_network_conditions.rb +51 -0
  29. data/lib/selenium/webdriver/common/driver_extensions/has_network_connection.rb +3 -3
  30. data/lib/selenium/webdriver/common/driver_extensions/has_permissions.rb +51 -0
  31. data/lib/selenium/webdriver/common/driver_extensions/has_remote_status.rb +2 -2
  32. data/lib/selenium/webdriver/common/driver_extensions/has_session_id.rb +2 -2
  33. data/lib/selenium/webdriver/common/driver_extensions/has_web_storage.rb +2 -2
  34. data/lib/selenium/webdriver/common/driver_extensions/rotatable.rb +4 -4
  35. data/lib/selenium/webdriver/common/driver_extensions/takes_screenshot.rb +9 -3
  36. data/lib/selenium/webdriver/common/driver_extensions/uploads_files.rb +3 -5
  37. data/lib/selenium/webdriver/common/element.rb +32 -10
  38. data/lib/selenium/webdriver/common/error.rb +103 -121
  39. data/lib/selenium/webdriver/common/file_reaper.rb +3 -5
  40. data/lib/selenium/webdriver/common/html5/local_storage.rb +2 -2
  41. data/lib/selenium/webdriver/common/html5/session_storage.rb +2 -2
  42. data/lib/selenium/webdriver/common/html5/shared_web_storage.rb +3 -2
  43. data/lib/selenium/webdriver/common/interactions/input_device.rb +54 -0
  44. data/lib/selenium/webdriver/common/interactions/interaction.rb +53 -0
  45. data/lib/selenium/webdriver/{phantomjs.rb → common/interactions/interactions.rb} +17 -20
  46. data/lib/selenium/webdriver/common/interactions/key_actions.rb +145 -0
  47. data/lib/selenium/webdriver/common/interactions/key_input.rb +66 -0
  48. data/lib/selenium/webdriver/common/interactions/none_input.rb +36 -0
  49. data/lib/selenium/webdriver/common/interactions/pointer_actions.rb +363 -0
  50. data/lib/selenium/webdriver/common/interactions/pointer_input.rb +139 -0
  51. data/lib/selenium/webdriver/common/keys.rb +37 -15
  52. data/lib/selenium/webdriver/common/log_entry.rb +4 -4
  53. data/lib/selenium/webdriver/common/logger.rb +147 -0
  54. data/lib/selenium/webdriver/common/logs.rb +2 -2
  55. data/lib/selenium/webdriver/common/manager.rb +177 -0
  56. data/lib/selenium/webdriver/common/navigation.rb +2 -2
  57. data/lib/selenium/webdriver/common/options.rb +47 -105
  58. data/lib/selenium/webdriver/common/platform.rb +44 -38
  59. data/lib/selenium/webdriver/common/port_prober.rb +8 -19
  60. data/lib/selenium/webdriver/common/profile_helper.rb +13 -5
  61. data/lib/selenium/webdriver/common/proxy.rb +14 -8
  62. data/lib/selenium/webdriver/common/search_context.rb +16 -20
  63. data/lib/selenium/webdriver/common/service.rb +115 -30
  64. data/lib/selenium/webdriver/common/socket_lock.rb +12 -7
  65. data/lib/selenium/webdriver/common/socket_poller.rb +29 -22
  66. data/lib/selenium/webdriver/common/target_locator.rb +6 -6
  67. data/lib/selenium/webdriver/common/timeouts.rb +2 -2
  68. data/lib/selenium/webdriver/common/wait.rb +14 -8
  69. data/lib/selenium/webdriver/common/window.rb +38 -2
  70. data/lib/selenium/webdriver/common/zipper.rb +3 -5
  71. data/lib/selenium/webdriver/edge.rb +33 -20
  72. data/lib/selenium/webdriver/edge_chrome/bridge.rb +30 -0
  73. data/lib/selenium/webdriver/edge_chrome/driver.rb +38 -0
  74. data/lib/selenium/webdriver/{common/driver_extensions/has_touch_screen.rb → edge_chrome/options.rb} +10 -12
  75. data/lib/selenium/webdriver/edge_chrome/profile.rb +33 -0
  76. data/lib/selenium/webdriver/edge_chrome/service.rb +36 -0
  77. data/lib/selenium/webdriver/edge_html/driver.rb +39 -0
  78. data/lib/selenium/webdriver/edge_html/options.rb +91 -0
  79. data/lib/selenium/webdriver/edge_html/service.rb +47 -0
  80. data/lib/selenium/webdriver/firefox.rb +24 -29
  81. data/lib/selenium/webdriver/firefox/bridge.rb +15 -39
  82. data/lib/selenium/webdriver/firefox/{util.rb → driver.rb} +13 -19
  83. data/lib/selenium/webdriver/firefox/extension.rb +28 -8
  84. data/lib/selenium/webdriver/firefox/options.rb +162 -0
  85. data/lib/selenium/webdriver/firefox/profile.rb +23 -82
  86. data/lib/selenium/webdriver/firefox/profiles_ini.rb +5 -5
  87. data/lib/selenium/webdriver/firefox/service.rb +18 -37
  88. data/lib/selenium/webdriver/ie.rb +13 -19
  89. data/lib/selenium/webdriver/ie/driver.rb +40 -0
  90. data/lib/selenium/webdriver/ie/options.rb +118 -0
  91. data/lib/selenium/webdriver/ie/service.rb +20 -20
  92. data/lib/selenium/webdriver/remote.rb +15 -17
  93. data/lib/selenium/webdriver/remote/bridge.rb +281 -300
  94. data/lib/selenium/webdriver/remote/capabilities.rb +102 -83
  95. data/lib/selenium/webdriver/remote/commands.rb +132 -192
  96. data/lib/selenium/webdriver/remote/driver.rb +52 -0
  97. data/lib/selenium/webdriver/remote/http/common.rb +23 -13
  98. data/lib/selenium/webdriver/remote/http/curb.rb +10 -7
  99. data/lib/selenium/webdriver/remote/http/default.rb +52 -32
  100. data/lib/selenium/webdriver/remote/http/persistent.rb +8 -4
  101. data/lib/selenium/webdriver/remote/response.rb +32 -35
  102. data/lib/selenium/webdriver/remote/server_error.rb +2 -2
  103. data/lib/selenium/webdriver/safari.rb +24 -22
  104. data/lib/selenium/webdriver/safari/bridge.rb +21 -21
  105. data/lib/selenium/webdriver/safari/driver.rb +41 -0
  106. data/lib/selenium/webdriver/safari/options.rb +66 -0
  107. data/lib/selenium/webdriver/safari/service.rb +8 -24
  108. data/lib/selenium/webdriver/support.rb +3 -2
  109. data/lib/selenium/webdriver/support/abstract_event_listener.rb +2 -2
  110. data/lib/selenium/webdriver/support/block_event_listener.rb +3 -3
  111. data/lib/selenium/webdriver/support/color.rb +13 -13
  112. data/lib/selenium/webdriver/support/escaper.rb +2 -2
  113. data/lib/selenium/webdriver/support/event_firing_bridge.rb +4 -4
  114. data/lib/selenium/webdriver/support/relative_locator.rb +51 -0
  115. data/lib/selenium/webdriver/support/select.rb +20 -21
  116. data/lib/selenium/webdriver/version.rb +24 -0
  117. data/selenium-webdriver.gemspec +31 -17
  118. metadata +331 -248
  119. data/lib/selenium/webdriver/common/bridge_helper.rb +0 -82
  120. data/lib/selenium/webdriver/common/keyboard.rb +0 -69
  121. data/lib/selenium/webdriver/common/mouse.rb +0 -88
  122. data/lib/selenium/webdriver/common/touch_action_builder.rb +0 -81
  123. data/lib/selenium/webdriver/common/touch_screen.rb +0 -121
  124. data/lib/selenium/webdriver/common/w3c_error.rb +0 -191
  125. data/lib/selenium/webdriver/edge/bridge.rb +0 -76
  126. data/lib/selenium/webdriver/edge/legacy_support.rb +0 -117
  127. data/lib/selenium/webdriver/firefox/binary.rb +0 -186
  128. data/lib/selenium/webdriver/firefox/extension/prefs.json +0 -69
  129. data/lib/selenium/webdriver/firefox/extension/webdriver.xpi +0 -0
  130. data/lib/selenium/webdriver/firefox/launcher.rb +0 -114
  131. data/lib/selenium/webdriver/firefox/native/linux/amd64/x_ignore_nofocus.so +0 -0
  132. data/lib/selenium/webdriver/firefox/native/linux/x86/x_ignore_nofocus.so +0 -0
  133. data/lib/selenium/webdriver/firefox/w3c_bridge.rb +0 -79
  134. data/lib/selenium/webdriver/ie/bridge.rb +0 -76
  135. data/lib/selenium/webdriver/phantomjs/bridge.rb +0 -65
  136. data/lib/selenium/webdriver/phantomjs/service.rb +0 -66
  137. data/lib/selenium/webdriver/remote/w3c_bridge.rb +0 -682
  138. data/lib/selenium/webdriver/remote/w3c_capabilities.rb +0 -228
  139. data/lib/selenium/webdriver/remote/w3c_commands.rb +0 -135
data/Gemfile CHANGED
@@ -1,2 +1,4 @@
1
+ # frozen_string_literal: true
2
+
1
3
  source 'https://rubygems.org'
2
4
  gemspec
data/LICENSE CHANGED
@@ -187,7 +187,7 @@
187
187
  same "printed page" as the copyright notice for easier
188
188
  identification within third-party archives.
189
189
 
190
- Copyright [yyyy] [name of copyright owner]
190
+ Copyright 2019 Software Freedom Conservancy (SFC)
191
191
 
192
192
  Licensed under the Apache License, Version 2.0 (the "License");
193
193
  you may not use this file except in compliance with the License.
data/README.md CHANGED
@@ -16,7 +16,7 @@ and has been tested to work on MRI (2.0 through 2.2),
16
16
 
17
17
  ## License
18
18
 
19
- Copyright 2009-2016 Software Freedom Conservancy
19
+ Copyright 2009-2018 Software Freedom Conservancy
20
20
 
21
21
  Licensed to the Software Freedom Conservancy (SFC) under one
22
22
  or more contributor license agreements. See the NOTICE file
@@ -1,5 +1,5 @@
1
- # encoding: utf-8
2
- #
1
+ # frozen_string_literal: true
2
+
3
3
  # Licensed to the Software Freedom Conservancy (SFC) under one
4
4
  # or more contributor license agreements. See the NOTICE file
5
5
  # distributed with this work for additional information
@@ -1,5 +1,5 @@
1
- # encoding: utf-8
2
- #
1
+ # frozen_string_literal: true
2
+
3
3
  # Licensed to the Software Freedom Conservancy (SFC) under one
4
4
  # or more contributor license agreements. See the NOTICE file
5
5
  # distributed with this work for additional information
@@ -73,7 +73,7 @@ module Selenium
73
73
  return download_file_name if File.exist? download_file_name
74
74
 
75
75
  begin
76
- open(download_file_name, 'wb') do |destination|
76
+ File.open(download_file_name, 'wb') do |destination|
77
77
  net_http.start('selenium-release.storage.googleapis.com') do |http|
78
78
  resp = http.request_get("/#{required_version[/(\d+\.\d+)\./, 1]}/#{download_file_name}") do |response|
79
79
  total = response.content_length
@@ -84,8 +84,8 @@ module Selenium
84
84
  progress += segment.length
85
85
  segment_count += 1
86
86
 
87
- if segment_count % 15 == 0
88
- percent = (progress.to_f / total.to_f) * 100
87
+ if (segment_count % 15).zero?
88
+ percent = progress.fdiv(total) * 100
89
89
  print "#{CL_RESET}Downloading #{download_file_name}: #{percent.to_i}% (#{progress} / #{total})"
90
90
  segment_count = 0
91
91
  end
@@ -94,12 +94,10 @@ module Selenium
94
94
  end
95
95
  end
96
96
 
97
- unless resp.is_a? Net::HTTPSuccess
98
- raise Error, "#{resp.code} for #{download_file_name}"
99
- end
97
+ raise Error, "#{resp.code} for #{download_file_name}" unless resp.is_a? Net::HTTPSuccess
100
98
  end
101
99
  end
102
- rescue
100
+ rescue StandardError
103
101
  FileUtils.rm download_file_name if File.exist? download_file_name
104
102
  raise
105
103
  end
@@ -114,9 +112,11 @@ module Selenium
114
112
  def latest
115
113
  require 'rexml/document'
116
114
  net_http.start('selenium-release.storage.googleapis.com') do |http|
117
- REXML::Document.new(http.get('/').body).root.get_elements('//Contents/Key').map do |e|
115
+ versions = REXML::Document.new(http.get('/').body).root.get_elements('//Contents/Key').map do |e|
118
116
  e.text[/selenium-server-standalone-(\d+\.\d+\.\d+)\.jar/, 1]
119
- end.compact.max
117
+ end
118
+
119
+ versions.compact.map { |version| Gem::Version.new(version) }.max.version
120
120
  end
121
121
  end
122
122
 
@@ -179,7 +179,7 @@ module Selenium
179
179
  @timeout = opts.fetch(:timeout, 30)
180
180
  @background = opts.fetch(:background, false)
181
181
  @log = opts[:log]
182
-
182
+ @log_file = nil
183
183
  @additional_args = []
184
184
  end
185
185
 
@@ -199,7 +199,7 @@ module Selenium
199
199
  stop_process if @process
200
200
  poll_for_shutdown
201
201
 
202
- @log_file.close if @log_file
202
+ @log_file&.close
203
203
  end
204
204
 
205
205
  def webdriver_url
@@ -231,8 +231,13 @@ module Selenium
231
231
  end
232
232
 
233
233
  def process
234
- @process ||= (
235
- cp = ChildProcess.build('java', '-jar', @jar, '-port', @port.to_s, *@additional_args)
234
+ @process ||= begin
235
+ # extract any additional_args that start with -D as options
236
+ properties = @additional_args.dup - @additional_args.delete_if { |arg| arg[/^-D/] }
237
+ server_command = ['java'] + properties + ['-jar', @jar, '-port', @port.to_s] + @additional_args
238
+ cp = ChildProcess.build(*server_command)
239
+ WebDriver.logger.debug("Executing Process #{server_command}")
240
+
236
241
  io = cp.io
237
242
 
238
243
  if @log.is_a?(String)
@@ -245,16 +250,18 @@ module Selenium
245
250
  cp.detach = @background
246
251
 
247
252
  cp
248
- )
253
+ end
249
254
  end
250
255
 
251
256
  def poll_for_service
252
257
  return if socket.connected?
258
+
253
259
  raise Error, "remote server not launched in #{@timeout} seconds"
254
260
  end
255
261
 
256
262
  def poll_for_shutdown
257
263
  return if socket.closed?
264
+
258
265
  raise Error, "remote server not stopped in #{@timeout} seconds"
259
266
  end
260
267
 
@@ -1,5 +1,5 @@
1
- # encoding: utf-8
2
- #
1
+ # frozen_string_literal: true
2
+
3
3
  # Licensed to the Software Freedom Conservancy (SFC) under one
4
4
  # or more contributor license agreements. See the NOTICE file
5
5
  # distributed with this work for additional information
@@ -22,54 +22,62 @@ require 'tmpdir'
22
22
  require 'fileutils'
23
23
  require 'date'
24
24
  require 'json'
25
+ require 'set'
26
+ require 'websocket'
25
27
 
26
28
  require 'selenium/webdriver/common'
27
29
  require 'selenium/webdriver/atoms'
30
+ require 'selenium/webdriver/version'
28
31
 
29
32
  module Selenium
30
33
  module WebDriver
31
34
  Point = Struct.new(:x, :y)
32
35
  Dimension = Struct.new(:width, :height)
36
+ Rectangle = Struct.new(:x, :y, :width, :height)
33
37
  Location = Struct.new(:latitude, :longitude, :altitude)
34
38
 
35
- autoload :Chrome, 'selenium/webdriver/chrome'
36
- autoload :Edge, 'selenium/webdriver/edge'
37
- autoload :Firefox, 'selenium/webdriver/firefox'
38
- autoload :IE, 'selenium/webdriver/ie'
39
- autoload :PhantomJS, 'selenium/webdriver/phantomjs'
40
- autoload :Remote, 'selenium/webdriver/remote'
41
- autoload :Safari, 'selenium/webdriver/safari'
42
- autoload :Support, 'selenium/webdriver/support'
39
+ autoload :Chrome, 'selenium/webdriver/chrome'
40
+ autoload :DevTools, 'selenium/webdriver/devtools'
41
+ autoload :Edge, 'selenium/webdriver/edge'
42
+ autoload :EdgeHtml, 'selenium/webdriver/edge'
43
+ autoload :EdgeChrome, 'selenium/webdriver/edge'
44
+ autoload :Firefox, 'selenium/webdriver/firefox'
45
+ autoload :IE, 'selenium/webdriver/ie'
46
+ autoload :Remote, 'selenium/webdriver/remote'
47
+ autoload :Safari, 'selenium/webdriver/safari'
48
+ autoload :Support, 'selenium/webdriver/support'
43
49
 
44
50
  # @api private
45
51
 
46
52
  def self.root
47
- @root ||= File.expand_path('../..', __FILE__)
53
+ @root ||= File.expand_path('..', __dir__)
48
54
  end
49
55
 
50
56
  #
51
57
  # Create a new Driver instance with the correct bridge for the given browser
52
58
  #
53
- # @param browser [:ie, :internet_explorer, :edge, :remote, :chrome, :firefox, :ff, :phantomjs, :safari]
54
- # the driver type to use
55
- # @param *rest
56
- # arguments passed to Bridge.new
59
+ # @overload for(browser)
60
+ # @param [:ie, :internet_explorer, :edge, :remote, :chrome, :firefox, :ff, :safari] browser The browser to
61
+ # create the driver for
62
+ # @overload for(browser, opts)
63
+ # @param [:ie, :internet_explorer, :edge, :remote, :chrome, :firefox, :ff, :safari] browser The browser to
64
+ # create the driver for
65
+ # @param [Hash] opts Options passed to Driver.new
57
66
  #
58
67
  # @return [Driver]
59
68
  #
60
- # @see Selenium::WebDriver::Remote::Bridge
61
- # @see Selenium::WebDriver::Firefox::Bridge
62
- # @see Selenium::WebDriver::IE::Bridge
63
- # @see Selenium::WebDriver::Edge::Bridge
64
- # @see Selenium::WebDriver::Chrome::Bridge
65
- # @see Selenium::WebDriver::PhantomJS::Bridge
66
- # @see Selenium::WebDriver::Safari::Bridge
69
+ # @see Selenium::WebDriver::Remote::Driver
70
+ # @see Selenium::WebDriver::Firefox::Driver
71
+ # @see Selenium::WebDriver::IE::Driver
72
+ # @see Selenium::WebDriver::Edge::Driver
73
+ # @see Selenium::WebDriver::Chrome::Driver
74
+ # @see Selenium::WebDriver::Safari::Driver
67
75
  #
68
76
  # @example
69
77
  #
70
- # WebDriver.for :firefox, :profile => "some-profile"
71
- # WebDriver.for :firefox, :profile => Profile.new
72
- # WebDriver.for :remote, :url => "http://localhost:4444/wd/hub", :desired_capabilities => caps
78
+ # WebDriver.for :firefox, profile: 'some-profile'
79
+ # WebDriver.for :firefox, profile: Profile.new
80
+ # WebDriver.for :remote, url: "http://localhost:4444/wd/hub", desired_capabilities: caps
73
81
  #
74
82
  # One special argument is not passed on to the bridges, :listener.
75
83
  # You can pass a listener for this option to get notified of WebDriver events.
@@ -81,5 +89,15 @@ module Selenium
81
89
  def self.for(*args)
82
90
  WebDriver::Driver.for(*args)
83
91
  end
92
+
93
+ #
94
+ # Returns logger instance that can be used across the whole Selenium.
95
+ #
96
+ # @return [Logger]
97
+ #
98
+
99
+ def self.logger
100
+ @logger ||= WebDriver::Logger.new
101
+ end
84
102
  end # WebDriver
85
103
  end # Selenium
@@ -1,3 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Licensed to the Software Freedom Conservancy (SFC) under one
4
+ # or more contributor license agreements. See the NOTICE file
5
+ # distributed with this work for additional information
6
+ # regarding copyright ownership. The SFC licenses this file
7
+ # to you under the Apache License, Version 2.0 (the
8
+ # "License"); you may not use this file except in compliance
9
+ # with the License. You may obtain a copy of the License at
10
+ #
11
+ # http://www.apache.org/licenses/LICENSE-2.0
12
+ #
13
+ # Unless required by applicable law or agreed to in writing,
14
+ # software distributed under the License is distributed on an
15
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16
+ # KIND, either express or implied. See the License for the
17
+ # specific language governing permissions and limitations
18
+ # under the License.
19
+
1
20
  module Selenium
2
21
  module WebDriver
3
22
  module Atoms
@@ -9,7 +28,7 @@ module Selenium
9
28
  end
10
29
 
11
30
  def execute_atom(function_name, *arguments)
12
- script = "return (%s).apply(null, arguments)" % read_atom(function_name)
31
+ script = format("return (%<atom>s).apply(null, arguments)", atom: read_atom(function_name))
13
32
  execute_script(script, *arguments)
14
33
  end
15
34
 
@@ -0,0 +1,122 @@
1
+ function(){return (function(){var aa=this;function k(a){return void 0!==a}function l(a){return"string"==typeof a}function ba(a,b){a=a.split(".");var c=aa;a[0]in c||"undefined"==typeof c.execScript||c.execScript("var "+a[0]);for(var d;a.length&&(d=a.shift());)!a.length&&k(b)?c[d]=b:c[d]&&c[d]!==Object.prototype[d]?c=c[d]:c=c[d]={}}
2
+ function ca(a){var b=typeof a;if("object"==b)if(a){if(a instanceof Array)return"array";if(a instanceof Object)return b;var c=Object.prototype.toString.call(a);if("[object Window]"==c)return"object";if("[object Array]"==c||"number"==typeof a.length&&"undefined"!=typeof a.splice&&"undefined"!=typeof a.propertyIsEnumerable&&!a.propertyIsEnumerable("splice"))return"array";if("[object Function]"==c||"undefined"!=typeof a.call&&"undefined"!=typeof a.propertyIsEnumerable&&!a.propertyIsEnumerable("call"))return"function"}else return"null";
3
+ else if("function"==b&&"undefined"==typeof a.call)return"object";return b}function da(a){return"function"==ca(a)}function ea(a){var b=typeof a;return"object"==b&&null!=a||"function"==b}function fa(a,b,c){return a.call.apply(a.bind,arguments)}
4
+ function ha(a,b,c){if(!a)throw Error();if(2<arguments.length){var d=Array.prototype.slice.call(arguments,2);return function(){var e=Array.prototype.slice.call(arguments);Array.prototype.unshift.apply(e,d);return a.apply(b,e)}}return function(){return a.apply(b,arguments)}}function ja(a,b,c){Function.prototype.bind&&-1!=Function.prototype.bind.toString().indexOf("native code")?ja=fa:ja=ha;return ja.apply(null,arguments)}
5
+ function ka(a,b){var c=Array.prototype.slice.call(arguments,1);return function(){var d=c.slice();d.push.apply(d,arguments);return a.apply(this,d)}}function q(a,b){function c(){}c.prototype=b.prototype;a.prototype=new c;a.prototype.constructor=a};/*
6
+
7
+ The MIT License
8
+
9
+ Copyright (c) 2007 Cybozu Labs, Inc.
10
+ Copyright (c) 2012 Google Inc.
11
+
12
+ Permission is hereby granted, free of charge, to any person obtaining a copy
13
+ of this software and associated documentation files (the "Software"), to
14
+ deal in the Software without restriction, including without limitation the
15
+ rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
16
+ sell copies of the Software, and to permit persons to whom the Software is
17
+ furnished to do so, subject to the following conditions:
18
+
19
+ The above copyright notice and this permission notice shall be included in
20
+ all copies or substantial portions of the Software.
21
+
22
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
23
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
24
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
25
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
26
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
27
+ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
28
+ IN THE SOFTWARE.
29
+ */
30
+ function la(a,b,c){this.a=a;this.b=b||1;this.f=c||1};var ma;var na=Array.prototype.indexOf?function(a,b){return Array.prototype.indexOf.call(a,b,void 0)}:function(a,b){if(l(a))return l(b)&&1==b.length?a.indexOf(b,0):-1;for(var c=0;c<a.length;c++)if(c in a&&a[c]===b)return c;return-1},r=Array.prototype.forEach?function(a,b,c){Array.prototype.forEach.call(a,b,c)}:function(a,b,c){for(var d=a.length,e=l(a)?a.split(""):a,f=0;f<d;f++)f in e&&b.call(c,e[f],f,a)},oa=Array.prototype.filter?function(a,b){return Array.prototype.filter.call(a,b,void 0)}:function(a,b){for(var c=
31
+ a.length,d=[],e=0,f=l(a)?a.split(""):a,g=0;g<c;g++)if(g in f){var h=f[g];b.call(void 0,h,g,a)&&(d[e++]=h)}return d},pa=Array.prototype.map?function(a,b){return Array.prototype.map.call(a,b,void 0)}:function(a,b){for(var c=a.length,d=Array(c),e=l(a)?a.split(""):a,f=0;f<c;f++)f in e&&(d[f]=b.call(void 0,e[f],f,a));return d},qa=Array.prototype.reduce?function(a,b,c){return Array.prototype.reduce.call(a,b,c)}:function(a,b,c){var d=c;r(a,function(e,f){d=b.call(void 0,d,e,f,a)});return d},ra=Array.prototype.some?
32
+ function(a,b){return Array.prototype.some.call(a,b,void 0)}:function(a,b){for(var c=a.length,d=l(a)?a.split(""):a,e=0;e<c;e++)if(e in d&&b.call(void 0,d[e],e,a))return!0;return!1},sa=Array.prototype.every?function(a,b,c){return Array.prototype.every.call(a,b,c)}:function(a,b,c){for(var d=a.length,e=l(a)?a.split(""):a,f=0;f<d;f++)if(f in e&&!b.call(c,e[f],f,a))return!1;return!0};
33
+ function ta(a,b){a:{for(var c=a.length,d=l(a)?a.split(""):a,e=0;e<c;e++)if(e in d&&b.call(void 0,d[e],e,a)){b=e;break a}b=-1}return 0>b?null:l(a)?a.charAt(b):a[b]}function ua(a){return Array.prototype.concat.apply([],arguments)}function va(a,b,c){return 2>=arguments.length?Array.prototype.slice.call(a,b):Array.prototype.slice.call(a,b,c)};function wa(a){var b=a.length-1;return 0<=b&&a.indexOf(" ",b)==b}var xa=String.prototype.trim?function(a){return a.trim()}:function(a){return/^[\s\xa0]*([\s\S]*?)[\s\xa0]*$/.exec(a)[1]};
34
+ function ya(a,b){var c=0;a=xa(String(a)).split(".");b=xa(String(b)).split(".");for(var d=Math.max(a.length,b.length),e=0;0==c&&e<d;e++){var f=a[e]||"",g=b[e]||"";do{f=/(\d*)(\D*)(.*)/.exec(f)||["","","",""];g=/(\d*)(\D*)(.*)/.exec(g)||["","","",""];if(0==f[0].length&&0==g[0].length)break;c=za(0==f[1].length?0:parseInt(f[1],10),0==g[1].length?0:parseInt(g[1],10))||za(0==f[2].length,0==g[2].length)||za(f[2],g[2]);f=f[3];g=g[3]}while(0==c)}return c}function za(a,b){return a<b?-1:a>b?1:0};var Aa;a:{var Ba=aa.navigator;if(Ba){var Ca=Ba.userAgent;if(Ca){Aa=Ca;break a}}Aa=""}function v(a){return-1!=Aa.indexOf(a)};function Da(){return v("Firefox")||v("FxiOS")}function Ea(){return(v("Chrome")||v("CriOS"))&&!v("Edge")};function Fa(a){return String(a).replace(/\-([a-z])/g,function(b,c){return c.toUpperCase()})};function Ga(){return v("iPhone")&&!v("iPod")&&!v("iPad")};function Ha(a,b){var c=Ia;return Object.prototype.hasOwnProperty.call(c,a)?c[a]:c[a]=b(a)};var Ja=v("Opera"),w=v("Trident")||v("MSIE"),Ka=v("Edge"),La=v("Gecko")&&!(-1!=Aa.toLowerCase().indexOf("webkit")&&!v("Edge"))&&!(v("Trident")||v("MSIE"))&&!v("Edge"),Ma=-1!=Aa.toLowerCase().indexOf("webkit")&&!v("Edge");function Na(){var a=aa.document;return a?a.documentMode:void 0}var Oa;
35
+ a:{var Pa="",Qa=function(){var a=Aa;if(La)return/rv:([^\);]+)(\)|;)/.exec(a);if(Ka)return/Edge\/([\d\.]+)/.exec(a);if(w)return/\b(?:MSIE|rv)[: ]([^\);]+)(\)|;)/.exec(a);if(Ma)return/WebKit\/(\S+)/.exec(a);if(Ja)return/(?:Version)[ \/]?(\S+)/.exec(a)}();Qa&&(Pa=Qa?Qa[1]:"");if(w){var Ra=Na();if(null!=Ra&&Ra>parseFloat(Pa)){Oa=String(Ra);break a}}Oa=Pa}var Ia={};function Sa(a){return Ha(a,function(){return 0<=ya(Oa,a)})}var x;var Ta=aa.document;
36
+ x=Ta&&w?Na()||("CSS1Compat"==Ta.compatMode?parseInt(Oa,10):5):void 0;var y=w&&!(9<=Number(x)),Ua=w&&!(8<=Number(x));function Va(a,b,c,d){this.a=a;this.nodeName=c;this.nodeValue=d;this.nodeType=2;this.parentNode=this.ownerElement=b}function Wa(a,b){var c=Ua&&"href"==b.nodeName?a.getAttribute(b.nodeName,2):b.nodeValue;return new Va(b,a,b.nodeName,c)};function Xa(a){this.b=a;this.a=0}function Ya(a){a=a.match(Za);for(var b=0;b<a.length;b++)$a.test(a[b])&&a.splice(b,1);return new Xa(a)}var Za=/\$?(?:(?![0-9-\.])(?:\*|[\w-\.]+):)?(?![0-9-\.])(?:\*|[\w-\.]+)|\/\/|\.\.|::|\d+(?:\.\d*)?|\.\d+|"[^"]*"|'[^']*'|[!<>]=|\s+|./g,$a=/^\s/;function z(a,b){return a.b[a.a+(b||0)]}function A(a){return a.b[a.a++]}function ab(a){return a.b.length<=a.a};function bb(a,b){this.x=k(a)?a:0;this.y=k(b)?b:0}bb.prototype.ceil=function(){this.x=Math.ceil(this.x);this.y=Math.ceil(this.y);return this};bb.prototype.floor=function(){this.x=Math.floor(this.x);this.y=Math.floor(this.y);return this};bb.prototype.round=function(){this.x=Math.round(this.x);this.y=Math.round(this.y);return this};function cb(a,b){this.width=a;this.height=b}cb.prototype.aspectRatio=function(){return this.width/this.height};cb.prototype.ceil=function(){this.width=Math.ceil(this.width);this.height=Math.ceil(this.height);return this};cb.prototype.floor=function(){this.width=Math.floor(this.width);this.height=Math.floor(this.height);return this};cb.prototype.round=function(){this.width=Math.round(this.width);this.height=Math.round(this.height);return this};function db(a){return a?new eb(B(a)):ma||(ma=new eb)}function fb(a){for(;a&&1!=a.nodeType;)a=a.previousSibling;return a}function gb(a,b){if(!a||!b)return!1;if(a.contains&&1==b.nodeType)return a==b||a.contains(b);if("undefined"!=typeof a.compareDocumentPosition)return a==b||!!(a.compareDocumentPosition(b)&16);for(;b&&a!=b;)b=b.parentNode;return b==a}
37
+ function hb(a,b){if(a==b)return 0;if(a.compareDocumentPosition)return a.compareDocumentPosition(b)&2?1:-1;if(w&&!(9<=Number(x))){if(9==a.nodeType)return-1;if(9==b.nodeType)return 1}if("sourceIndex"in a||a.parentNode&&"sourceIndex"in a.parentNode){var c=1==a.nodeType,d=1==b.nodeType;if(c&&d)return a.sourceIndex-b.sourceIndex;var e=a.parentNode,f=b.parentNode;return e==f?ib(a,b):!c&&gb(e,b)?-1*jb(a,b):!d&&gb(f,a)?jb(b,a):(c?a.sourceIndex:e.sourceIndex)-(d?b.sourceIndex:f.sourceIndex)}d=B(a);c=d.createRange();
38
+ c.selectNode(a);c.collapse(!0);a=d.createRange();a.selectNode(b);a.collapse(!0);return c.compareBoundaryPoints(aa.Range.START_TO_END,a)}function jb(a,b){var c=a.parentNode;if(c==b)return-1;for(;b.parentNode!=c;)b=b.parentNode;return ib(b,a)}function ib(a,b){for(;b=b.previousSibling;)if(b==a)return-1;return 1}function B(a){return 9==a.nodeType?a:a.ownerDocument||a.document}function kb(a,b){a&&(a=a.parentNode);for(var c=0;a;){if(b(a))return a;a=a.parentNode;c++}return null}
39
+ function eb(a){this.a=a||aa.document||document}eb.prototype.getElementsByTagName=function(a,b){return(b||this.a).getElementsByTagName(String(a))};
40
+ function lb(a,b,c,d){a=d||a.a;var e=b&&"*"!=b?String(b).toUpperCase():"";if(a.querySelectorAll&&a.querySelector&&(e||c))c=a.querySelectorAll(e+(c?"."+c:""));else if(c&&a.getElementsByClassName)if(b=a.getElementsByClassName(c),e){a={};for(var f=d=0,g;g=b[f];f++)e==g.nodeName&&(a[d++]=g);a.length=d;c=a}else c=b;else if(b=a.getElementsByTagName(e||"*"),c){a={};for(f=d=0;g=b[f];f++){e=g.className;var h;if(h="function"==typeof e.split)h=0<=na(e.split(/\s+/),c);h&&(a[d++]=g)}a.length=d;c=a}else c=b;return c}
41
+ ;function C(a){var b=null,c=a.nodeType;1==c&&(b=a.textContent,b=void 0==b||null==b?a.innerText:b,b=void 0==b||null==b?"":b);if("string"!=typeof b)if(y&&"title"==a.nodeName.toLowerCase()&&1==c)b=a.text;else if(9==c||1==c){a=9==c?a.documentElement:a.firstChild;c=0;var d=[];for(b="";a;){do 1!=a.nodeType&&(b+=a.nodeValue),y&&"title"==a.nodeName.toLowerCase()&&(b+=a.text),d[c++]=a;while(a=a.firstChild);for(;c&&!(a=d[--c].nextSibling););}}else b=a.nodeValue;return b}
42
+ function mb(a,b,c){if(null===b)return!0;try{if(!a.getAttribute)return!1}catch(d){return!1}Ua&&"class"==b&&(b="className");return null==c?!!a.getAttribute(b):a.getAttribute(b,2)==c}function nb(a,b,c,d,e){return(y?ob:pb).call(null,a,b,l(c)?c:null,l(d)?d:null,e||new D)}
43
+ function ob(a,b,c,d,e){if(a instanceof qb||8==a.b||c&&null===a.b){var f=b.all;if(!f)return e;a=rb(a);if("*"!=a&&(f=b.getElementsByTagName(a),!f))return e;if(c){for(var g=[],h=0;b=f[h++];)mb(b,c,d)&&g.push(b);f=g}for(h=0;b=f[h++];)"*"==a&&"!"==b.tagName||e.add(b);return e}sb(a,b,c,d,e);return e}
44
+ function pb(a,b,c,d,e){b.getElementsByName&&d&&"name"==c&&!w?(b=b.getElementsByName(d),r(b,function(f){a.a(f)&&e.add(f)})):b.getElementsByClassName&&d&&"class"==c?(b=b.getElementsByClassName(d),r(b,function(f){f.className==d&&a.a(f)&&e.add(f)})):a instanceof E?sb(a,b,c,d,e):b.getElementsByTagName&&(b=b.getElementsByTagName(a.f()),r(b,function(f){mb(f,c,d)&&e.add(f)}));return e}
45
+ function tb(a,b,c,d,e){var f;if((a instanceof qb||8==a.b||c&&null===a.b)&&(f=b.childNodes)){var g=rb(a);if("*"!=g&&(f=oa(f,function(h){return h.tagName&&h.tagName.toLowerCase()==g}),!f))return e;c&&(f=oa(f,function(h){return mb(h,c,d)}));r(f,function(h){"*"==g&&("!"==h.tagName||"*"==g&&1!=h.nodeType)||e.add(h)});return e}return ub(a,b,c,d,e)}function ub(a,b,c,d,e){for(b=b.firstChild;b;b=b.nextSibling)mb(b,c,d)&&a.a(b)&&e.add(b);return e}
46
+ function sb(a,b,c,d,e){for(b=b.firstChild;b;b=b.nextSibling)mb(b,c,d)&&a.a(b)&&e.add(b),sb(a,b,c,d,e)}function rb(a){if(a instanceof E){if(8==a.b)return"!";if(null===a.b)return"*"}return a.f()};function D(){this.b=this.a=null;this.m=0}function vb(a){this.f=a;this.a=this.b=null}function wb(a,b){if(!a.a)return b;if(!b.a)return a;var c=a.a;b=b.a;for(var d=null,e,f=0;c&&b;){e=c.f;var g=b.f;e==g||e instanceof Va&&g instanceof Va&&e.a==g.a?(e=c,c=c.a,b=b.a):0<hb(c.f,b.f)?(e=b,b=b.a):(e=c,c=c.a);(e.b=d)?d.a=e:a.a=e;d=e;f++}for(e=c||b;e;)e.b=d,d=d.a=e,f++,e=e.a;a.b=d;a.m=f;return a}function xb(a,b){b=new vb(b);b.a=a.a;a.b?a.a.b=b:a.a=a.b=b;a.a=b;a.m++}
47
+ D.prototype.add=function(a){a=new vb(a);a.b=this.b;this.a?this.b.a=a:this.a=this.b=a;this.b=a;this.m++};function yb(a){return(a=a.a)?a.f:null}function zb(a){return(a=yb(a))?C(a):""}function Ab(a,b){return new Bb(a,!!b)}function Bb(a,b){this.f=a;this.b=(this.v=b)?a.b:a.a;this.a=null}function F(a){var b=a.b;if(null==b)return null;var c=a.a=b;a.b=a.v?b.b:b.a;return c.f};function H(a){this.i=a;this.b=this.g=!1;this.f=null}function I(a){return"\n "+a.toString().split("\n").join("\n ")}function Cb(a,b){a.g=b}function Db(a,b){a.b=b}function J(a,b){a=a.a(b);return a instanceof D?+zb(a):+a}function K(a,b){a=a.a(b);return a instanceof D?zb(a):""+a}function Eb(a,b){a=a.a(b);return a instanceof D?!!a.m:!!a};function Fb(a,b,c){H.call(this,a.i);this.c=a;this.h=b;this.u=c;this.g=b.g||c.g;this.b=b.b||c.b;this.c==Hb&&(c.b||c.g||4==c.i||0==c.i||!b.f?b.b||b.g||4==b.i||0==b.i||!c.f||(this.f={name:c.f.name,w:b}):this.f={name:b.f.name,w:c})}q(Fb,H);
48
+ function Ib(a,b,c,d,e){b=b.a(d);c=c.a(d);var f;if(b instanceof D&&c instanceof D){b=Ab(b);for(d=F(b);d;d=F(b))for(e=Ab(c),f=F(e);f;f=F(e))if(a(C(d),C(f)))return!0;return!1}if(b instanceof D||c instanceof D){b instanceof D?(e=b,d=c):(e=c,d=b);f=Ab(e);for(var g=typeof d,h=F(f);h;h=F(f)){switch(g){case "number":h=+C(h);break;case "boolean":h=!!C(h);break;case "string":h=C(h);break;default:throw Error("Illegal primitive type for comparison.");}if(e==b&&a(h,d)||e==c&&a(d,h))return!0}return!1}return e?
49
+ "boolean"==typeof b||"boolean"==typeof c?a(!!b,!!c):"number"==typeof b||"number"==typeof c?a(+b,+c):a(b,c):a(+b,+c)}Fb.prototype.a=function(a){return this.c.s(this.h,this.u,a)};Fb.prototype.toString=function(){var a="Binary Expression: "+this.c;a+=I(this.h);return a+=I(this.u)};function Jb(a,b,c,d){this.Y=a;this.L=b;this.i=c;this.s=d}Jb.prototype.toString=function(){return this.Y};var Kb={};
50
+ function L(a,b,c,d){if(Kb.hasOwnProperty(a))throw Error("Binary operator already created: "+a);a=new Jb(a,b,c,d);return Kb[a.toString()]=a}L("div",6,1,function(a,b,c){return J(a,c)/J(b,c)});L("mod",6,1,function(a,b,c){return J(a,c)%J(b,c)});L("*",6,1,function(a,b,c){return J(a,c)*J(b,c)});L("+",5,1,function(a,b,c){return J(a,c)+J(b,c)});L("-",5,1,function(a,b,c){return J(a,c)-J(b,c)});L("<",4,2,function(a,b,c){return Ib(function(d,e){return d<e},a,b,c)});
51
+ L(">",4,2,function(a,b,c){return Ib(function(d,e){return d>e},a,b,c)});L("<=",4,2,function(a,b,c){return Ib(function(d,e){return d<=e},a,b,c)});L(">=",4,2,function(a,b,c){return Ib(function(d,e){return d>=e},a,b,c)});var Hb=L("=",3,2,function(a,b,c){return Ib(function(d,e){return d==e},a,b,c,!0)});L("!=",3,2,function(a,b,c){return Ib(function(d,e){return d!=e},a,b,c,!0)});L("and",2,2,function(a,b,c){return Eb(a,c)&&Eb(b,c)});L("or",1,2,function(a,b,c){return Eb(a,c)||Eb(b,c)});function Lb(a,b){if(b.a.length&&4!=a.i)throw Error("Primary expression must evaluate to nodeset if filter has predicate(s).");H.call(this,a.i);this.c=a;this.h=b;this.g=a.g;this.b=a.b}q(Lb,H);Lb.prototype.a=function(a){a=this.c.a(a);return Mb(this.h,a)};Lb.prototype.toString=function(){var a="Filter:"+I(this.c);return a+=I(this.h)};function Nb(a,b){if(b.length<a.K)throw Error("Function "+a.l+" expects at least"+a.K+" arguments, "+b.length+" given");if(null!==a.F&&b.length>a.F)throw Error("Function "+a.l+" expects at most "+a.F+" arguments, "+b.length+" given");a.X&&r(b,function(c,d){if(4!=c.i)throw Error("Argument "+d+" to function "+a.l+" is not of type Nodeset: "+c);});H.call(this,a.i);this.B=a;this.c=b;Cb(this,a.g||ra(b,function(c){return c.g}));Db(this,a.W&&!b.length||a.V&&!!b.length||ra(b,function(c){return c.b}))}
52
+ q(Nb,H);Nb.prototype.a=function(a){return this.B.s.apply(null,ua(a,this.c))};Nb.prototype.toString=function(){var a="Function: "+this.B;if(this.c.length){var b=qa(this.c,function(c,d){return c+I(d)},"Arguments:");a+=I(b)}return a};function Ob(a,b,c,d,e,f,g,h){this.l=a;this.i=b;this.g=c;this.W=d;this.V=!1;this.s=e;this.K=f;this.F=k(g)?g:f;this.X=!!h}Ob.prototype.toString=function(){return this.l};var Pb={};
53
+ function M(a,b,c,d,e,f,g,h){if(Pb.hasOwnProperty(a))throw Error("Function already created: "+a+".");Pb[a]=new Ob(a,b,c,d,e,f,g,h)}M("boolean",2,!1,!1,function(a,b){return Eb(b,a)},1);M("ceiling",1,!1,!1,function(a,b){return Math.ceil(J(b,a))},1);M("concat",3,!1,!1,function(a,b){return qa(va(arguments,1),function(c,d){return c+K(d,a)},"")},2,null);M("contains",2,!1,!1,function(a,b,c){b=K(b,a);a=K(c,a);return a=-1!=b.indexOf(a)},2);M("count",1,!1,!1,function(a,b){return b.a(a).m},1,1,!0);
54
+ M("false",2,!1,!1,function(){return!1},0);M("floor",1,!1,!1,function(a,b){return Math.floor(J(b,a))},1);M("id",4,!1,!1,function(a,b){function c(h){if(y){var n=e.all[h];if(n){if(n.nodeType&&h==n.id)return n;if(n.length)return ta(n,function(t){return h==t.id})}return null}return e.getElementById(h)}var d=a.a,e=9==d.nodeType?d:d.ownerDocument;a=K(b,a).split(/\s+/);var f=[];r(a,function(h){h=c(h);!h||0<=na(f,h)||f.push(h)});f.sort(hb);var g=new D;r(f,function(h){g.add(h)});return g},1);
55
+ M("lang",2,!1,!1,function(){return!1},1);M("last",1,!0,!1,function(a){if(1!=arguments.length)throw Error("Function last expects ()");return a.f},0);M("local-name",3,!1,!0,function(a,b){return(a=b?yb(b.a(a)):a.a)?a.localName||a.nodeName.toLowerCase():""},0,1,!0);M("name",3,!1,!0,function(a,b){return(a=b?yb(b.a(a)):a.a)?a.nodeName.toLowerCase():""},0,1,!0);M("namespace-uri",3,!0,!1,function(){return""},0,1,!0);
56
+ M("normalize-space",3,!1,!0,function(a,b){return(b?K(b,a):C(a.a)).replace(/[\s\xa0]+/g," ").replace(/^\s+|\s+$/g,"")},0,1);M("not",2,!1,!1,function(a,b){return!Eb(b,a)},1);M("number",1,!1,!0,function(a,b){return b?J(b,a):+C(a.a)},0,1);M("position",1,!0,!1,function(a){return a.b},0);M("round",1,!1,!1,function(a,b){return Math.round(J(b,a))},1);M("starts-with",2,!1,!1,function(a,b,c){b=K(b,a);a=K(c,a);return 0==b.lastIndexOf(a,0)},2);M("string",3,!1,!0,function(a,b){return b?K(b,a):C(a.a)},0,1);
57
+ M("string-length",1,!1,!0,function(a,b){return(b?K(b,a):C(a.a)).length},0,1);M("substring",3,!1,!1,function(a,b,c,d){c=J(c,a);if(isNaN(c)||Infinity==c||-Infinity==c)return"";d=d?J(d,a):Infinity;if(isNaN(d)||-Infinity===d)return"";c=Math.round(c)-1;var e=Math.max(c,0);a=K(b,a);return Infinity==d?a.substring(e):a.substring(e,c+Math.round(d))},2,3);M("substring-after",3,!1,!1,function(a,b,c){b=K(b,a);a=K(c,a);c=b.indexOf(a);return-1==c?"":b.substring(c+a.length)},2);
58
+ M("substring-before",3,!1,!1,function(a,b,c){b=K(b,a);a=K(c,a);a=b.indexOf(a);return-1==a?"":b.substring(0,a)},2);M("sum",1,!1,!1,function(a,b){a=Ab(b.a(a));b=0;for(var c=F(a);c;c=F(a))b+=+C(c);return b},1,1,!0);M("translate",3,!1,!1,function(a,b,c,d){b=K(b,a);c=K(c,a);var e=K(d,a);a={};for(d=0;d<c.length;d++){var f=c.charAt(d);f in a||(a[f]=e.charAt(d))}c="";for(d=0;d<b.length;d++)f=b.charAt(d),c+=f in a?a[f]:f;return c},3);M("true",2,!1,!1,function(){return!0},0);function E(a,b){this.h=a;this.c=k(b)?b:null;this.b=null;switch(a){case "comment":this.b=8;break;case "text":this.b=3;break;case "processing-instruction":this.b=7;break;case "node":break;default:throw Error("Unexpected argument");}}function Qb(a){return"comment"==a||"text"==a||"processing-instruction"==a||"node"==a}E.prototype.a=function(a){return null===this.b||this.b==a.nodeType};E.prototype.f=function(){return this.h};
59
+ E.prototype.toString=function(){var a="Kind Test: "+this.h;null===this.c||(a+=I(this.c));return a};function Rb(a){H.call(this,3);this.c=a.substring(1,a.length-1)}q(Rb,H);Rb.prototype.a=function(){return this.c};Rb.prototype.toString=function(){return"Literal: "+this.c};function qb(a,b){this.l=a.toLowerCase();a="*"==this.l?"*":"http://www.w3.org/1999/xhtml";this.c=b?b.toLowerCase():a}qb.prototype.a=function(a){var b=a.nodeType;if(1!=b&&2!=b)return!1;b=k(a.localName)?a.localName:a.nodeName;return"*"!=this.l&&this.l!=b.toLowerCase()?!1:"*"==this.c?!0:this.c==(a.namespaceURI?a.namespaceURI.toLowerCase():"http://www.w3.org/1999/xhtml")};qb.prototype.f=function(){return this.l};
60
+ qb.prototype.toString=function(){return"Name Test: "+("http://www.w3.org/1999/xhtml"==this.c?"":this.c+":")+this.l};function Sb(a){H.call(this,1);this.c=a}q(Sb,H);Sb.prototype.a=function(){return this.c};Sb.prototype.toString=function(){return"Number: "+this.c};function Tb(a,b){H.call(this,a.i);this.h=a;this.c=b;this.g=a.g;this.b=a.b;1==this.c.length&&(a=this.c[0],a.D||a.c!=Ub||(a=a.u,"*"!=a.f()&&(this.f={name:a.f(),w:null})))}q(Tb,H);function Vb(){H.call(this,4)}q(Vb,H);Vb.prototype.a=function(a){var b=new D;a=a.a;9==a.nodeType?b.add(a):b.add(a.ownerDocument);return b};Vb.prototype.toString=function(){return"Root Helper Expression"};function Wb(){H.call(this,4)}q(Wb,H);Wb.prototype.a=function(a){var b=new D;b.add(a.a);return b};Wb.prototype.toString=function(){return"Context Helper Expression"};
61
+ function Xb(a){return"/"==a||"//"==a}Tb.prototype.a=function(a){var b=this.h.a(a);if(!(b instanceof D))throw Error("Filter expression must evaluate to nodeset.");a=this.c;for(var c=0,d=a.length;c<d&&b.m;c++){var e=a[c],f=Ab(b,e.c.v);if(e.g||e.c!=Yb)if(e.g||e.c!=Zb){var g=F(f);for(b=e.a(new la(g));null!=(g=F(f));)g=e.a(new la(g)),b=wb(b,g)}else g=F(f),b=e.a(new la(g));else{for(g=F(f);(b=F(f))&&(!g.contains||g.contains(b))&&b.compareDocumentPosition(g)&8;g=b);b=e.a(new la(g))}}return b};
62
+ Tb.prototype.toString=function(){var a="Path Expression:"+I(this.h);if(this.c.length){var b=qa(this.c,function(c,d){return c+I(d)},"Steps:");a+=I(b)}return a};function $b(a,b){this.a=a;this.v=!!b}
63
+ function Mb(a,b,c){for(c=c||0;c<a.a.length;c++)for(var d=a.a[c],e=Ab(b),f=b.m,g,h=0;g=F(e);h++){var n=a.v?f-h:h+1;g=d.a(new la(g,n,f));if("number"==typeof g)n=n==g;else if("string"==typeof g||"boolean"==typeof g)n=!!g;else if(g instanceof D)n=0<g.m;else throw Error("Predicate.evaluate returned an unexpected type.");if(!n){n=e;g=n.f;var t=n.a;if(!t)throw Error("Next must be called at least once before remove.");var p=t.b;t=t.a;p?p.a=t:g.a=t;t?t.b=p:g.b=p;g.m--;n.a=null}}return b}
64
+ $b.prototype.toString=function(){return qa(this.a,function(a,b){return a+I(b)},"Predicates:")};function ac(a,b,c,d){H.call(this,4);this.c=a;this.u=b;this.h=c||new $b([]);this.D=!!d;b=this.h;b=0<b.a.length?b.a[0].f:null;a.$&&b&&(a=b.name,a=y?a.toLowerCase():a,this.f={name:a,w:b.w});a:{a=this.h;for(b=0;b<a.a.length;b++)if(c=a.a[b],c.g||1==c.i||0==c.i){a=!0;break a}a=!1}this.g=a}q(ac,H);
65
+ ac.prototype.a=function(a){var b=a.a,c=this.f,d=null,e=null,f=0;c&&(d=c.name,e=c.w?K(c.w,a):null,f=1);if(this.D)if(this.g||this.c!=bc)if(b=Ab((new ac(cc,new E("node"))).a(a)),c=F(b))for(a=this.s(c,d,e,f);null!=(c=F(b));)a=wb(a,this.s(c,d,e,f));else a=new D;else a=nb(this.u,b,d,e),a=Mb(this.h,a,f);else a=this.s(a.a,d,e,f);return a};ac.prototype.s=function(a,b,c,d){a=this.c.B(this.u,a,b,c);return a=Mb(this.h,a,d)};
66
+ ac.prototype.toString=function(){var a="Step:"+I("Operator: "+(this.D?"//":"/"));this.c.l&&(a+=I("Axis: "+this.c));a+=I(this.u);if(this.h.a.length){var b=qa(this.h.a,function(c,d){return c+I(d)},"Predicates:");a+=I(b)}return a};function dc(a,b,c,d){this.l=a;this.B=b;this.v=c;this.$=d}dc.prototype.toString=function(){return this.l};var ec={};function N(a,b,c,d){if(ec.hasOwnProperty(a))throw Error("Axis already created: "+a);b=new dc(a,b,c,!!d);return ec[a]=b}
67
+ N("ancestor",function(a,b){for(var c=new D;b=b.parentNode;)a.a(b)&&xb(c,b);return c},!0);N("ancestor-or-self",function(a,b){var c=new D;do a.a(b)&&xb(c,b);while(b=b.parentNode);return c},!0);
68
+ var Ub=N("attribute",function(a,b){var c=new D,d=a.f();if("style"==d&&y&&b.style)return c.add(new Va(b.style,b,"style",b.style.cssText)),c;var e=b.attributes;if(e)if(a instanceof E&&null===a.b||"*"==d)for(a=0;d=e[a];a++)y?d.nodeValue&&c.add(Wa(b,d)):c.add(d);else(d=e.getNamedItem(d))&&(y?d.nodeValue&&c.add(Wa(b,d)):c.add(d));return c},!1),bc=N("child",function(a,b,c,d,e){return(y?tb:ub).call(null,a,b,l(c)?c:null,l(d)?d:null,e||new D)},!1,!0);N("descendant",nb,!1,!0);
69
+ var cc=N("descendant-or-self",function(a,b,c,d){var e=new D;mb(b,c,d)&&a.a(b)&&e.add(b);return nb(a,b,c,d,e)},!1,!0),Yb=N("following",function(a,b,c,d){var e=new D;do for(var f=b;f=f.nextSibling;)mb(f,c,d)&&a.a(f)&&e.add(f),e=nb(a,f,c,d,e);while(b=b.parentNode);return e},!1,!0);N("following-sibling",function(a,b){for(var c=new D;b=b.nextSibling;)a.a(b)&&c.add(b);return c},!1);N("namespace",function(){return new D},!1);
70
+ var fc=N("parent",function(a,b){var c=new D;if(9==b.nodeType)return c;if(2==b.nodeType)return c.add(b.ownerElement),c;b=b.parentNode;a.a(b)&&c.add(b);return c},!1),Zb=N("preceding",function(a,b,c,d){var e=new D,f=[];do f.unshift(b);while(b=b.parentNode);for(var g=1,h=f.length;g<h;g++){var n=[];for(b=f[g];b=b.previousSibling;)n.unshift(b);for(var t=0,p=n.length;t<p;t++)b=n[t],mb(b,c,d)&&a.a(b)&&e.add(b),e=nb(a,b,c,d,e)}return e},!0,!0);
71
+ N("preceding-sibling",function(a,b){for(var c=new D;b=b.previousSibling;)a.a(b)&&xb(c,b);return c},!0);var gc=N("self",function(a,b){var c=new D;a.a(b)&&c.add(b);return c},!1);function hc(a){H.call(this,1);this.c=a;this.g=a.g;this.b=a.b}q(hc,H);hc.prototype.a=function(a){return-J(this.c,a)};hc.prototype.toString=function(){return"Unary Expression: -"+I(this.c)};function ic(a){H.call(this,4);this.c=a;Cb(this,ra(this.c,function(b){return b.g}));Db(this,ra(this.c,function(b){return b.b}))}q(ic,H);ic.prototype.a=function(a){var b=new D;r(this.c,function(c){c=c.a(a);if(!(c instanceof D))throw Error("Path expression must evaluate to NodeSet.");b=wb(b,c)});return b};ic.prototype.toString=function(){return qa(this.c,function(a,b){return a+I(b)},"Union Expression:")};function jc(a,b){this.a=a;this.b=b}function kc(a){for(var b,c=[];;){O(a,"Missing right hand side of binary expression.");b=lc(a);var d=A(a.a);if(!d)break;var e=(d=Kb[d]||null)&&d.L;if(!e){a.a.a--;break}for(;c.length&&e<=c[c.length-1].L;)b=new Fb(c.pop(),c.pop(),b);c.push(b,d)}for(;c.length;)b=new Fb(c.pop(),c.pop(),b);return b}function O(a,b){if(ab(a.a))throw Error(b);}function mc(a,b){a=A(a.a);if(a!=b)throw Error("Bad token, expected: "+b+" got: "+a);}
72
+ function nc(a){a=A(a.a);if(")"!=a)throw Error("Bad token: "+a);}function oc(a){a=A(a.a);if(2>a.length)throw Error("Unclosed literal string");return new Rb(a)}
73
+ function pc(a){var b=[];if(Xb(z(a.a))){var c=A(a.a);var d=z(a.a);if("/"==c&&(ab(a.a)||"."!=d&&".."!=d&&"@"!=d&&"*"!=d&&!/(?![0-9])[\w]/.test(d)))return new Vb;d=new Vb;O(a,"Missing next location step.");c=qc(a,c);b.push(c)}else{a:{c=z(a.a);d=c.charAt(0);switch(d){case "$":throw Error("Variable reference not allowed in HTML XPath");case "(":A(a.a);c=kc(a);O(a,'unclosed "("');mc(a,")");break;case '"':case "'":c=oc(a);break;default:if(isNaN(+c))if(!Qb(c)&&/(?![0-9])[\w]/.test(d)&&"("==z(a.a,1)){c=A(a.a);
74
+ c=Pb[c]||null;A(a.a);for(d=[];")"!=z(a.a);){O(a,"Missing function argument list.");d.push(kc(a));if(","!=z(a.a))break;A(a.a)}O(a,"Unclosed function argument list.");nc(a);c=new Nb(c,d)}else{c=null;break a}else c=new Sb(+A(a.a))}"["==z(a.a)&&(d=new $b(rc(a)),c=new Lb(c,d))}if(c)if(Xb(z(a.a)))d=c;else return c;else c=qc(a,"/"),d=new Wb,b.push(c)}for(;Xb(z(a.a));)c=A(a.a),O(a,"Missing next location step."),c=qc(a,c),b.push(c);return new Tb(d,b)}
75
+ function qc(a,b){if("/"!=b&&"//"!=b)throw Error('Step op should be "/" or "//"');if("."==z(a.a)){var c=new ac(gc,new E("node"));A(a.a);return c}if(".."==z(a.a))return c=new ac(fc,new E("node")),A(a.a),c;if("@"==z(a.a)){var d=Ub;A(a.a);O(a,"Missing attribute name")}else if("::"==z(a.a,1)){if(!/(?![0-9])[\w]/.test(z(a.a).charAt(0)))throw Error("Bad token: "+A(a.a));var e=A(a.a);d=ec[e]||null;if(!d)throw Error("No axis with name: "+e);A(a.a);O(a,"Missing node name")}else d=bc;e=z(a.a);if(/(?![0-9])[\w\*]/.test(e.charAt(0)))if("("==
76
+ z(a.a,1)){if(!Qb(e))throw Error("Invalid node type: "+e);e=A(a.a);if(!Qb(e))throw Error("Invalid type name: "+e);mc(a,"(");O(a,"Bad nodetype");var f=z(a.a).charAt(0),g=null;if('"'==f||"'"==f)g=oc(a);O(a,"Bad nodetype");nc(a);e=new E(e,g)}else if(e=A(a.a),f=e.indexOf(":"),-1==f)e=new qb(e);else{g=e.substring(0,f);if("*"==g)var h="*";else if(h=a.b(g),!h)throw Error("Namespace prefix not declared: "+g);e=e.substr(f+1);e=new qb(e,h)}else throw Error("Bad token: "+A(a.a));a=new $b(rc(a),d.v);return c||
77
+ new ac(d,e,a,"//"==b)}function rc(a){for(var b=[];"["==z(a.a);){A(a.a);O(a,"Missing predicate expression.");var c=kc(a);b.push(c);O(a,"Unclosed predicate expression.");mc(a,"]")}return b}function lc(a){if("-"==z(a.a))return A(a.a),new hc(lc(a));var b=pc(a);if("|"!=z(a.a))a=b;else{for(b=[b];"|"==A(a.a);)O(a,"Missing next union location path."),b.push(pc(a));a.a.a--;a=new ic(b)}return a};function sc(a){switch(a.nodeType){case 1:return ka(tc,a);case 9:return sc(a.documentElement);case 11:case 10:case 6:case 12:return uc;default:return a.parentNode?sc(a.parentNode):uc}}function uc(){return null}function tc(a,b){if(a.prefix==b)return a.namespaceURI||"http://www.w3.org/1999/xhtml";var c=a.getAttributeNode("xmlns:"+b);return c&&c.specified?c.value||null:a.parentNode&&9!=a.parentNode.nodeType?tc(a.parentNode,b):null};function xc(a,b){if(!a.length)throw Error("Empty XPath expression.");a=Ya(a);if(ab(a))throw Error("Invalid XPath expression.");b?da(b)||(b=ja(b.lookupNamespaceURI,b)):b=function(){return null};var c=kc(new jc(a,b));if(!ab(a))throw Error("Bad token: "+A(a));this.evaluate=function(d,e){d=c.a(new la(d));return new P(d,e)}}
78
+ function P(a,b){if(0==b)if(a instanceof D)b=4;else if("string"==typeof a)b=2;else if("number"==typeof a)b=1;else if("boolean"==typeof a)b=3;else throw Error("Unexpected evaluation result.");if(2!=b&&1!=b&&3!=b&&!(a instanceof D))throw Error("value could not be converted to the specified type");this.resultType=b;switch(b){case 2:this.stringValue=a instanceof D?zb(a):""+a;break;case 1:this.numberValue=a instanceof D?+zb(a):+a;break;case 3:this.booleanValue=a instanceof D?0<a.m:!!a;break;case 4:case 5:case 6:case 7:var c=
79
+ Ab(a);var d=[];for(var e=F(c);e;e=F(c))d.push(e instanceof Va?e.a:e);this.snapshotLength=a.m;this.invalidIteratorState=!1;break;case 8:case 9:a=yb(a);this.singleNodeValue=a instanceof Va?a.a:a;break;default:throw Error("Unknown XPathResult type.");}var f=0;this.iterateNext=function(){if(4!=b&&5!=b)throw Error("iterateNext called with wrong result type");return f>=d.length?null:d[f++]};this.snapshotItem=function(g){if(6!=b&&7!=b)throw Error("snapshotItem called with wrong result type");return g>=d.length||
80
+ 0>g?null:d[g]}}P.ANY_TYPE=0;P.NUMBER_TYPE=1;P.STRING_TYPE=2;P.BOOLEAN_TYPE=3;P.UNORDERED_NODE_ITERATOR_TYPE=4;P.ORDERED_NODE_ITERATOR_TYPE=5;P.UNORDERED_NODE_SNAPSHOT_TYPE=6;P.ORDERED_NODE_SNAPSHOT_TYPE=7;P.ANY_UNORDERED_NODE_TYPE=8;P.FIRST_ORDERED_NODE_TYPE=9;function yc(a){this.lookupNamespaceURI=sc(a)}
81
+ function zc(a,b){a=a||aa;var c=a.Document&&a.Document.prototype||a.document;if(!c.evaluate||b)a.XPathResult=P,c.evaluate=function(d,e,f,g){return(new xc(d,f)).evaluate(e,g)},c.createExpression=function(d,e){return new xc(d,e)},c.createNSResolver=function(d){return new yc(d)}}ba("wgxpath.install",zc);ba("wgxpath.install",zc);var Ac=window;function Q(a,b){this.code=a;this.a=R[a]||Bc;this.message=b||"";a=this.a.replace(/((?:^|\s+)[a-z])/g,function(c){return c.toUpperCase().replace(/^[\s\xa0]+/g,"")});b=a.length-5;if(0>b||a.indexOf("Error",b)!=b)a+="Error";this.name=a;a=Error(this.message);a.name=this.name;this.stack=a.stack||""}q(Q,Error);var Bc="unknown error",R={15:"element not selectable",11:"element not visible"};R[31]=Bc;R[30]=Bc;R[24]="invalid cookie domain";R[29]="invalid element coordinates";R[12]="invalid element state";
82
+ R[32]="invalid selector";R[51]="invalid selector";R[52]="invalid selector";R[17]="javascript error";R[405]="unsupported operation";R[34]="move target out of bounds";R[27]="no such alert";R[7]="no such element";R[8]="no such frame";R[23]="no such window";R[28]="script timeout";R[33]="session not created";R[10]="stale element reference";R[21]="timeout";R[25]="unable to set cookie";R[26]="unexpected alert open";R[13]=Bc;R[9]="unknown command";var Cc={A:function(a){return!(!a.querySelectorAll||!a.querySelector)},o:function(a,b){if(!a)throw new Q(32,"No class name specified");a=xa(a);if(-1!==a.indexOf(" "))throw new Q(32,"Compound class names not permitted");if(Cc.A(b))try{return b.querySelector("."+a.replace(/\./g,"\\."))||null}catch(c){throw new Q(32,"An invalid or illegal class name was specified");}a=lb(db(b),"*",a,b);return a.length?a[0]:null},j:function(a,b){if(!a)throw new Q(32,"No class name specified");a=xa(a);if(-1!==a.indexOf(" "))throw new Q(32,
83
+ "Compound class names not permitted");if(Cc.A(b))try{return b.querySelectorAll("."+a.replace(/\./g,"\\."))}catch(c){throw new Q(32,"An invalid or illegal class name was specified");}return lb(db(b),"*",a,b)}};var Dc=Da(),Ec=Ga()||v("iPod"),Fc=v("iPad"),Gc=v("Android")&&!(Ea()||Da()||v("Opera")||v("Silk")),Hc=Ea(),Ic=v("Safari")&&!(Ea()||v("Coast")||v("Opera")||v("Edge")||Da()||v("Silk")||v("Android"))&&!(Ga()||v("iPad")||v("iPod"));function Jc(a){return(a=a.exec(Aa))?a[1]:""}(function(){if(Dc)return Jc(/Firefox\/([0-9.]+)/);if(w||Ka||Ja)return Oa;if(Hc)return Ga()||v("iPad")||v("iPod")?Jc(/CriOS\/([0-9.]+)/):Jc(/Chrome\/([0-9.]+)/);if(Ic&&!(Ga()||v("iPad")||v("iPod")))return Jc(/Version\/([0-9.]+)/);if(Ec||Fc){var a=/Version\/(\S+).*Mobile\/(\S+)/.exec(Aa);if(a)return a[1]+"."+a[2]}else if(Gc)return(a=Jc(/Android\s+([0-9.]+)/))?a:Jc(/Version\/([0-9.]+)/);return""})();var Kc,Lc,Mc=function(){if(!La)return!1;var a=aa.Components;if(!a)return!1;try{if(!a.classes)return!1}catch(f){return!1}var b=a.classes;a=a.interfaces;var c=b["@mozilla.org/xpcom/version-comparator;1"].getService(a.nsIVersionComparator);b=b["@mozilla.org/xre/app-info;1"].getService(a.nsIXULAppInfo);var d=b.platformVersion,e=b.version;Kc=function(){return 0<=c.compare(d,"8")};Lc=function(f){c.compare(e,""+f)};return!0}(),Nc=w&&!(8<=Number(x)),Oc=w&&!(9<=Number(x));Gc&&Mc&&Lc(2.3);Gc&&Mc&&Lc(4);
84
+ Ic&&Mc&&Lc(6);var Pc={o:function(a,b){if(!da(b.querySelector)&&w&&(Mc?Kc():w?0<=ya(x,8):Sa(8))&&!ea(b.querySelector))throw Error("CSS selection is not supported");if(!a)throw new Q(32,"No selector specified");a=xa(a);try{var c=b.querySelector(a)}catch(d){throw new Q(32,"An invalid or illegal selector was specified");}return c&&1==c.nodeType?c:null},j:function(a,b){if(!da(b.querySelectorAll)&&w&&(Mc?Kc():w?0<=ya(x,8):Sa(8))&&!ea(b.querySelector))throw Error("CSS selection is not supported");if(!a)throw new Q(32,
85
+ "No selector specified");a=xa(a);try{return b.querySelectorAll(a)}catch(c){throw new Q(32,"An invalid or illegal selector was specified");}}};var Qc={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",
86
+ darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",
87
+ ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",
88
+ lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",
89
+ moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",
90
+ seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"};var Rc="backgroundColor borderTopColor borderRightColor borderBottomColor borderLeftColor color outlineColor".split(" "),Sc=/#([0-9a-fA-F])([0-9a-fA-F])([0-9a-fA-F])/,Tc=/^#(?:[0-9a-f]{3}){1,2}$/i,Uc=/^(?:rgba)?\((\d{1,3}),\s?(\d{1,3}),\s?(\d{1,3}),\s?(0|1|0\.\d*)\)$/i,Vc=/^(?:rgb)?\((0|[1-9]\d{0,2}),\s?(0|[1-9]\d{0,2}),\s?(0|[1-9]\d{0,2})\)$/i;function Wc(a,b){b=b.toLowerCase();return"style"==b?Xc(a.style.cssText):Nc&&"value"==b&&T(a,"INPUT")?a.value:Oc&&!0===a[b]?String(a.getAttribute(b)):(a=a.getAttributeNode(b))&&a.specified?a.value:null}var Yc=/[;]+(?=(?:(?:[^"]*"){2})*[^"]*$)(?=(?:(?:[^']*'){2})*[^']*$)(?=(?:[^()]*\([^()]*\))*[^()]*$)/;
91
+ function Xc(a){var b=[];r(a.split(Yc),function(c){var d=c.indexOf(":");0<d&&(c=[c.slice(0,d),c.slice(d+1)],2==c.length&&b.push(c[0].toLowerCase(),":",c[1],";"))});b=b.join("");return b=";"==b.charAt(b.length-1)?b:b+";"}function T(a,b){b&&"string"!==typeof b&&(b=b.toString());return!!a&&1==a.nodeType&&(!b||a.tagName.toUpperCase()==b)};var U={};U.H=function(){var a={aa:"http://www.w3.org/2000/svg"};return function(b){return a[b]||null}}();
92
+ U.s=function(a,b,c){var d=B(a);if(!d.documentElement)return null;(w||Gc)&&zc(d?d.parentWindow||d.defaultView:window);try{var e=d.createNSResolver?d.createNSResolver(d.documentElement):U.H;if(w&&!Sa(7))return d.evaluate.call(d,b,a,e,c,null);if(!w||9<=Number(x)){for(var f={},g=d.getElementsByTagName("*"),h=0;h<g.length;++h){var n=g[h],t=n.namespaceURI;if(t&&!f[t]){var p=n.lookupPrefix(t);if(!p){var G=t.match(".*/(\\w+)/?$");p=G?G[1]:"xhtml"}f[t]=p}}var S={},ia;for(ia in f)S[f[ia]]=ia;e=function(m){return S[m]||
93
+ null}}try{return d.evaluate(b,a,e,c,null)}catch(m){if("TypeError"===m.name)return e=d.createNSResolver?d.createNSResolver(d.documentElement):U.H,d.evaluate(b,a,e,c,null);throw m;}}catch(m){if(!La||"NS_ERROR_ILLEGAL_VALUE"!=m.name)throw new Q(32,"Unable to locate an element with the xpath expression "+b+" because of the following error:\n"+m);}};U.I=function(a,b){if(!a||1!=a.nodeType)throw new Q(32,'The result of the xpath expression "'+b+'" is: '+a+". It should be an element.");};
94
+ U.o=function(a,b){var c=function(){var d=U.s(b,a,9);return d?d.singleNodeValue||null:b.selectSingleNode?(d=B(b),d.setProperty&&d.setProperty("SelectionLanguage","XPath"),b.selectSingleNode(a)):null}();null===c||U.I(c,a);return c};
95
+ U.j=function(a,b){var c=function(){var d=U.s(b,a,7);if(d){for(var e=d.snapshotLength,f=[],g=0;g<e;++g)f.push(d.snapshotItem(g));return f}return b.selectNodes?(d=B(b),d.setProperty&&d.setProperty("SelectionLanguage","XPath"),b.selectNodes(a)):[]}();r(c,function(d){U.I(d,a)});return c};function Zc(a,b,c,d){this.c=a;this.a=b;this.b=c;this.f=d}Zc.prototype.ceil=function(){this.c=Math.ceil(this.c);this.a=Math.ceil(this.a);this.b=Math.ceil(this.b);this.f=Math.ceil(this.f);return this};Zc.prototype.floor=function(){this.c=Math.floor(this.c);this.a=Math.floor(this.a);this.b=Math.floor(this.b);this.f=Math.floor(this.f);return this};Zc.prototype.round=function(){this.c=Math.round(this.c);this.a=Math.round(this.a);this.b=Math.round(this.b);this.f=Math.round(this.f);return this};function V(a,b,c,d){this.a=a;this.b=b;this.width=c;this.height=d}V.prototype.ceil=function(){this.a=Math.ceil(this.a);this.b=Math.ceil(this.b);this.width=Math.ceil(this.width);this.height=Math.ceil(this.height);return this};V.prototype.floor=function(){this.a=Math.floor(this.a);this.b=Math.floor(this.b);this.width=Math.floor(this.width);this.height=Math.floor(this.height);return this};
96
+ V.prototype.round=function(){this.a=Math.round(this.a);this.b=Math.round(this.b);this.width=Math.round(this.width);this.height=Math.round(this.height);return this};var $c="function"===typeof ShadowRoot;function ad(a){for(a=a.parentNode;a&&1!=a.nodeType&&9!=a.nodeType&&11!=a.nodeType;)a=a.parentNode;return T(a)?a:null}
97
+ function W(a,b){b=Fa(b);if("float"==b||"cssFloat"==b||"styleFloat"==b)b=Oc?"styleFloat":"cssFloat";a:{var c=b;var d=B(a);if(d.defaultView&&d.defaultView.getComputedStyle&&(d=d.defaultView.getComputedStyle(a,null))){c=d[c]||d.getPropertyValue(c)||"";break a}c=""}a=c||bd(a,b);if(null===a)a=null;else if(0<=na(Rc,b)){b:{var e=a.match(Uc);if(e&&(b=Number(e[1]),c=Number(e[2]),d=Number(e[3]),e=Number(e[4]),0<=b&&255>=b&&0<=c&&255>=c&&0<=d&&255>=d&&0<=e&&1>=e)){b=[b,c,d,e];break b}b=null}if(!b)b:{if(d=a.match(Vc))if(b=
98
+ Number(d[1]),c=Number(d[2]),d=Number(d[3]),0<=b&&255>=b&&0<=c&&255>=c&&0<=d&&255>=d){b=[b,c,d,1];break b}b=null}if(!b)b:{b=a.toLowerCase();c=Qc[b.toLowerCase()];if(!c&&(c="#"==b.charAt(0)?b:"#"+b,4==c.length&&(c=c.replace(Sc,"#$1$1$2$2$3$3")),!Tc.test(c))){b=null;break b}b=[parseInt(c.substr(1,2),16),parseInt(c.substr(3,2),16),parseInt(c.substr(5,2),16),1]}a=b?"rgba("+b.join(", ")+")":a}return a}
99
+ function bd(a,b){var c=a.currentStyle||a.style,d=c[b];!k(d)&&da(c.getPropertyValue)&&(d=c.getPropertyValue(b));return"inherit"!=d?k(d)?d:null:(a=ad(a))?bd(a,b):null}
100
+ function cd(a,b,c){function d(g){var h=dd(g);return 0<h.height&&0<h.width?!0:T(g,"PATH")&&(0<h.height||0<h.width)?(g=W(g,"stroke-width"),!!g&&0<parseInt(g,10)):"hidden"!=W(g,"overflow")&&ra(g.childNodes,function(n){return 3==n.nodeType||T(n)&&d(n)})}function e(g){return ed(g)==X&&sa(g.childNodes,function(h){return!T(h)||e(h)||!d(h)})}if(!T(a))throw Error("Argument to isShown must be of type Element");if(T(a,"BODY"))return!0;if(T(a,"OPTION")||T(a,"OPTGROUP"))return a=kb(a,function(g){return T(g,"SELECT")}),
101
+ !!a&&cd(a,!0,c);var f=fd(a);if(f)return!!f.image&&0<f.rect.width&&0<f.rect.height&&cd(f.image,b,c);if(T(a,"INPUT")&&"hidden"==a.type.toLowerCase()||T(a,"NOSCRIPT"))return!1;f=W(a,"visibility");return"collapse"!=f&&"hidden"!=f&&c(a)&&(b||0!=gd(a))&&d(a)?!e(a):!1}
102
+ function hd(a){function b(c){if(T(c)&&"none"==W(c,"display"))return!1;var d;if((d=c.parentNode)&&d.shadowRoot&&void 0!==c.assignedSlot)d=c.assignedSlot?c.assignedSlot.parentNode:null;else if(c.getDestinationInsertionPoints){var e=c.getDestinationInsertionPoints();0<e.length&&(d=e[e.length-1])}if($c&&d instanceof ShadowRoot){if(d.host.shadowRoot!==d)return!1;d=d.host}return!d||9!=d.nodeType&&11!=d.nodeType?d&&T(d,"DETAILS")&&!d.open&&!T(c,"SUMMARY")?!1:d&&b(d):!0}return cd(a,!1,b)}var X="hidden";
103
+ function ed(a){function b(m){function u(Gb){if(Gb==g)return!0;var vc=W(Gb,"display");return 0==vc.lastIndexOf("inline",0)||"contents"==vc||"absolute"==wc&&"static"==W(Gb,"position")?!1:!0}var wc=W(m,"position");if("fixed"==wc)return t=!0,m==g?null:g;for(m=ad(m);m&&!u(m);)m=ad(m);return m}function c(m){var u=m;if("visible"==n)if(m==g&&h)u=h;else if(m==h)return{x:"visible",y:"visible"};u={x:W(u,"overflow-x"),y:W(u,"overflow-y")};m==g&&(u.x="visible"==u.x?"auto":u.x,u.y="visible"==u.y?"auto":u.y);return u}
104
+ function d(m){if(m==g){var u=(new eb(f)).a;m=u.scrollingElement?u.scrollingElement:Ma||"CSS1Compat"!=u.compatMode?u.body||u.documentElement:u.documentElement;u=u.parentWindow||u.defaultView;m=w&&Sa("10")&&u.pageYOffset!=m.scrollTop?new bb(m.scrollLeft,m.scrollTop):new bb(u.pageXOffset||m.scrollLeft,u.pageYOffset||m.scrollTop)}else m=new bb(m.scrollLeft,m.scrollTop);return m}var e=id(a),f=B(a),g=f.documentElement,h=f.body,n=W(g,"overflow"),t;for(a=b(a);a;a=b(a)){var p=c(a);if("visible"!=p.x||"visible"!=
105
+ p.y){var G=dd(a);if(0==G.width||0==G.height)return X;var S=e.a<G.a,ia=e.b<G.b;if(S&&"hidden"==p.x||ia&&"hidden"==p.y)return X;if(S&&"visible"!=p.x||ia&&"visible"!=p.y){S=d(a);ia=e.b<G.b-S.y;if(e.a<G.a-S.x&&"visible"!=p.x||ia&&"visible"!=p.x)return X;e=ed(a);return e==X?X:"scroll"}S=e.f>=G.a+G.width;G=e.c>=G.b+G.height;if(S&&"hidden"==p.x||G&&"hidden"==p.y)return X;if(S&&"visible"!=p.x||G&&"visible"!=p.y){if(t&&(p=d(a),e.f>=g.scrollWidth-p.x||e.a>=g.scrollHeight-p.y))return X;e=ed(a);return e==X?X:
106
+ "scroll"}}}return"none"}
107
+ function dd(a){var b=fd(a);if(b)return b.rect;if(T(a,"HTML"))return a=B(a),a=((a?a.parentWindow||a.defaultView:window)||window).document,a="CSS1Compat"==a.compatMode?a.documentElement:a.body,a=new cb(a.clientWidth,a.clientHeight),new V(0,0,a.width,a.height);try{var c=a.getBoundingClientRect()}catch(d){return new V(0,0,0,0)}b=new V(c.left,c.top,c.right-c.left,c.bottom-c.top);w&&a.ownerDocument.body&&(a=B(a),b.a-=a.documentElement.clientLeft+a.body.clientLeft,b.b-=a.documentElement.clientTop+a.body.clientTop);
108
+ return b}function fd(a){var b=T(a,"MAP");if(!b&&!T(a,"AREA"))return null;var c=b?a:T(a.parentNode,"MAP")?a.parentNode:null,d=null,e=null;c&&c.name&&(d=U.o('/descendant::*[@usemap = "#'+c.name+'"]',B(c)))&&(e=dd(d),b||"default"==a.shape.toLowerCase()||(a=jd(a),b=Math.min(Math.max(a.a,0),e.width),c=Math.min(Math.max(a.b,0),e.height),e=new V(b+e.a,c+e.b,Math.min(a.width,e.width-b),Math.min(a.height,e.height-c))));return{image:d,rect:e||new V(0,0,0,0)}}
109
+ function jd(a){var b=a.shape.toLowerCase();a=a.coords.split(",");if("rect"==b&&4==a.length){b=a[0];var c=a[1];return new V(b,c,a[2]-b,a[3]-c)}if("circle"==b&&3==a.length)return b=a[2],new V(a[0]-b,a[1]-b,2*b,2*b);if("poly"==b&&2<a.length){b=a[0];c=a[1];for(var d=b,e=c,f=2;f+1<a.length;f+=2)b=Math.min(b,a[f]),d=Math.max(d,a[f]),c=Math.min(c,a[f+1]),e=Math.max(e,a[f+1]);return new V(b,c,d-b,e-c)}return new V(0,0,0,0)}function id(a){a=dd(a);return new Zc(a.b,a.a+a.width,a.b+a.height,a.a)}
110
+ function kd(a){return a.replace(/^[^\S\xa0]+|[^\S\xa0]+$/g,"")}function ld(a){var b=[];$c?md(a,b):nd(a,b);a=pa(b,kd);return kd(a.join("\n")).replace(/\xa0/g," ")}
111
+ function od(a,b,c){if(T(a,"BR"))b.push("");else{var d=T(a,"TD"),e=W(a,"display"),f=!d&&!(0<=na(pd,e)),g=k(a.previousElementSibling)?a.previousElementSibling:fb(a.previousSibling);g=g?W(g,"display"):"";var h=W(a,"float")||W(a,"cssFloat")||W(a,"styleFloat");!f||"run-in"==g&&"none"==h||/^[\s\xa0]*$/.test(b[b.length-1]||"")||b.push("");var n=hd(a),t=null,p=null;n&&(t=W(a,"white-space"),p=W(a,"text-transform"));r(a.childNodes,function(G){c(G,b,n,t,p)});a=b[b.length-1]||"";!d&&"table-cell"!=e||!a||wa(a)||
112
+ (b[b.length-1]+=" ");f&&"run-in"!=e&&!/^[\s\xa0]*$/.test(a)&&b.push("")}}function nd(a,b){od(a,b,function(c,d,e,f,g){3==c.nodeType&&e?qd(c,d,f,g):T(c)&&nd(c,d)})}var pd="inline inline-block inline-table none table-cell table-column table-column-group".split(" ");
113
+ function qd(a,b,c,d){a=a.nodeValue.replace(/[\u200b\u200e\u200f]/g,"");a=a.replace(/(\r\n|\r|\n)/g,"\n");if("normal"==c||"nowrap"==c)a=a.replace(/\n/g," ");a="pre"==c||"pre-wrap"==c?a.replace(/[ \f\t\v\u2028\u2029]/g,"\u00a0"):a.replace(/[ \f\t\v\u2028\u2029]+/g," ");"capitalize"==d?a=a.replace(/\b(\S)/g,function(e,f){return f.toUpperCase()}):"uppercase"==d?a=a.toUpperCase():"lowercase"==d&&(a=a.toLowerCase());c=b.pop()||"";wa(c)&&0==a.lastIndexOf(" ",0)&&(a=a.substr(1));b.push(c+a)}
114
+ function gd(a){if(Oc){if("relative"==W(a,"position"))return 1;a=W(a,"filter");return(a=a.match(/^alpha\(opacity=(\d*)\)/)||a.match(/^progid:DXImageTransform.Microsoft.Alpha\(Opacity=(\d*)\)/))?Number(a[1])/100:1}return rd(a)}function rd(a){var b=1,c=W(a,"opacity");c&&(b=Number(c));(a=ad(a))&&(b*=rd(a));return b}
115
+ function sd(a,b,c,d,e){if(3==a.nodeType&&c)qd(a,b,d,e);else if(T(a))if(T(a,"CONTENT")||T(a,"SLOT")){for(var f=a;f.parentNode;)f=f.parentNode;f instanceof ShadowRoot?(a=T(a,"CONTENT")?a.getDistributedNodes():a.assignedNodes(),r(a,function(g){sd(g,b,c,d,e)})):md(a,b)}else if(T(a,"SHADOW")){for(f=a;f.parentNode;)f=f.parentNode;if(f instanceof ShadowRoot&&(a=f))for(a=a.olderShadowRoot;a;)r(a.childNodes,function(g){sd(g,b,c,d,e)}),a=a.olderShadowRoot}else md(a,b)}
116
+ function md(a,b){a.shadowRoot&&r(a.shadowRoot.childNodes,function(c){sd(c,b,!0,null,null)});od(a,b,function(c,d,e,f,g){var h=null;1==c.nodeType?h=c:3==c.nodeType&&(h=c);null!=h&&(null!=h.assignedSlot||h.getDestinationInsertionPoints&&0<h.getDestinationInsertionPoints().length)||sd(c,d,e,f,g)})};var td={A:function(a,b){return!(!a.querySelectorAll||!a.querySelector)&&!/^\d.*/.test(b)},o:function(a,b){var c=db(b),d=l(a)?c.a.getElementById(a):a;return d?Wc(d,"id")==a&&b!=d&&gb(b,d)?d:ta(lb(c,"*"),function(e){return Wc(e,"id")==a&&b!=e&&gb(b,e)}):null},j:function(a,b){if(!a)return[];if(td.A(b,a))try{return b.querySelectorAll("#"+td.R(a))}catch(c){return[]}b=lb(db(b),"*",null,b);return oa(b,function(c){return Wc(c,"id")==a})},R:function(a){return a.replace(/([\s'"\\#.:;,!?+<>=~*^$|%&@`{}\-\/\[\]\(\)])/g,
117
+ "\\$1")}};var Y={},ud={};Y.M=function(a,b,c){try{var d=Pc.j("a",b)}catch(e){d=lb(db(b),"A",null,b)}return ta(d,function(e){e=ld(e);e=e.replace(/^[\s]+|[\s]+$/g,"");return c&&-1!=e.indexOf(a)||e==a})};Y.J=function(a,b,c){try{var d=Pc.j("a",b)}catch(e){d=lb(db(b),"A",null,b)}return oa(d,function(e){e=ld(e);e=e.replace(/^[\s]+|[\s]+$/g,"");return c&&-1!=e.indexOf(a)||e==a})};Y.o=function(a,b){return Y.M(a,b,!1)};Y.j=function(a,b){return Y.J(a,b,!1)};ud.o=function(a,b){return Y.M(a,b,!0)};
118
+ ud.j=function(a,b){return Y.J(a,b,!0)};var Z={C:function(a,b){return function(c){var d=Z.G(a);d=dd(d);c=dd(c);return b.call(null,d,c)}},O:function(a){return Z.C(a,function(b,c){return c.b+c.height<b.b})},P:function(a){return Z.C(a,function(b,c){return b.b+b.height<c.b})},T:function(a){return Z.C(a,function(b,c){return c.a+c.width<b.a})},Z:function(a){return Z.C(a,function(b,c){return b.a+b.width<c.a})},U:function(a,b){if(b)var c=b;else"number"==typeof a.distance&&(c=a.distance,delete a.distance);c||(c=50);return function(d){var e=Z.G(a);
119
+ if(e===d)return!1;e=dd(e);d=dd(d);var f=d.a+d.width,g=e.b-e.height,h=d.b-d.height;return Math.abs(e.a+e.width-d.a)<=c||Math.abs(f-e.a)<=c?Math.abs(g-d.b)<=c||Math.abs(h-e.b)<=c:!1}},G:function(a){if(ea(a)&&1==a.nodeType)return a;if(da(a))return Z.G(a.call(null));if(ea(a)){var b;a:{if(b=vd(a)){var c=wd[b];if(c&&da(c.o)){b=c.o(a[b],Ac.document);break a}}throw new Q(61,"Unsupported locator strategy: "+b);}if(!b)throw new Q(7,"No element has been found by "+JSON.stringify(a));return b}throw new Q(61,
120
+ "Selector is of wrong type: "+JSON.stringify(a));}};Z.N={left:Z.T,right:Z.Z,above:Z.O,below:Z.P,near:Z.U};Z.S=function(a,b){var c=[];r(a,function(d){d&&sa(b,function(e){var f=e.kind,g=Z.N[f];if(!g)throw new Q(61,"Cannot find filter suitable for "+f);return g.apply(null,e.args)(d)},null)&&c.push(d)},null);return c};Z.o=function(a,b){a=Z.j(a,b);return 0==a.length?null:a[0]};
121
+ Z.j=function(a,b){if(!a.hasOwnProperty("root")||!a.hasOwnProperty("filters"))throw new Q(61,"Locator not suitable for relative locators: "+JSON.stringify(a));var c=a.filters,d=ca(c);if("array"!=d&&("object"!=d||"number"!=typeof c.length))throw new Q(61,"Targets should be an array: "+JSON.stringify(a));var e;T(a.root)?e=[a.root]:e=xd(a.root,b);return 0==e.length?[]:Z.S(e,a.filters)};var yd={o:function(a,b){if(""===a)throw new Q(32,'Unable to locate an element with the tagName ""');return b.getElementsByTagName(a)[0]||null},j:function(a,b){if(""===a)throw new Q(32,'Unable to locate an element with the tagName ""');return b.getElementsByTagName(a)}};var wd={className:Cc,"class name":Cc,css:Pc,"css selector":Pc,relative:Z,id:td,linkText:Y,"link text":Y,name:{o:function(a,b){b=lb(db(b),"*",null,b);return ta(b,function(c){return Wc(c,"name")==a})},j:function(a,b){b=lb(db(b),"*",null,b);return oa(b,function(c){return Wc(c,"name")==a})}},partialLinkText:ud,"partial link text":ud,tagName:yd,"tag name":yd,xpath:U};function vd(a){for(var b in a)if(a.hasOwnProperty(b))return b;return null}
122
+ function xd(a,b){var c=vd(a);if(c){var d=wd[c];if(d&&da(d.j))return d.j(a[c],b||Ac.document)}throw new Q(61,"Unsupported locator strategy: "+c);};ba("_",xd);; return this._.apply(null,arguments);}).apply({navigator:typeof window!='undefined'?window.navigator:null,document:typeof window!='undefined'?window.document:null}, arguments);}
@@ -1,11 +1,84 @@
1
- function(){return function(){var aa="function"==typeof Object.defineProperties?Object.defineProperty:function(a,c,b){if(b.get||b.set)throw new TypeError("ES3 does not support getters and setters.");a!=Array.prototype&&a!=Object.prototype&&(a[c]=b.value)},ba="undefined"!=typeof window&&window===this?this:"undefined"!=typeof global?global:this;
2
- function e(a,c){if(c){for(var b=ba,d=a.split("."),f=0;f<d.length-1;f++){var h=d[f];h in b||(b[h]={});b=b[h]}d=d[d.length-1];f=b[d];h=c(f);h!=f&&null!=h&&aa(b,d,{configurable:!0,writable:!0,value:h})}}
3
- e("String.prototype.repeat",function(a){return a?a:function(a){var b;if(null==this)throw new TypeError("The 'this' value for String.prototype.repeat must not be null or undefined");b=this+"";if(0>a||1342177279<a)throw new RangeError("Invalid count value");a|=0;for(var d="";a;)if(a&1&&(d+=b),a>>>=1)b+=b;return d}});e("Math.sign",function(a){return a?a:function(a){a=Number(a);return!a||isNaN(a)?a:0<a?1:-1}});var g=this;function l(a){return"string"==typeof a};function m(a,c){this.a=n[a]||p;this.message=c||"";var b=this.a.replace(/((?:^|\s+)[a-z])/g,function(a){return a.toUpperCase().replace(/^[\s\xa0]+/g,"")}),d=b.length-5;if(0>d||b.indexOf("Error",d)!=d)b+="Error";this.name=b;b=Error(this.message);b.name=this.name;this.stack=b.stack||""}
4
- (function(){var a=Error;function c(){}c.prototype=a.prototype;m.b=a.prototype;m.prototype=new c;m.prototype.constructor=m;m.a=function(b,c,f){for(var h=Array(arguments.length-2),k=2;k<arguments.length;k++)h[k-2]=arguments[k];return a.prototype[c].apply(b,h)}})();var p="unknown error",n={15:"element not selectable",11:"element not visible"};n[31]=p;n[30]=p;n[24]="invalid cookie domain";n[29]="invalid element coordinates";n[12]="invalid element state";n[32]="invalid selector";n[51]="invalid selector";
5
- n[52]="invalid selector";n[17]="javascript error";n[405]="unsupported operation";n[34]="move target out of bounds";n[27]="no such alert";n[7]="no such element";n[8]="no such frame";n[23]="no such window";n[28]="script timeout";n[33]="session not created";n[10]="stale element reference";n[21]="timeout";n[25]="unable to set cookie";n[26]="unexpected alert open";n[13]=p;n[9]="unknown command";m.prototype.toString=function(){return this.name+": "+this.message};var q=String.prototype.trim?function(a){return a.trim()}:function(a){return a.replace(/^[\s\xa0]+|[\s\xa0]+$/g,"")};
6
- function r(a,c){for(var b=0,d=q(String(a)).split("."),f=q(String(c)).split("."),h=Math.max(d.length,f.length),k=0;!b&&k<h;k++){var S=d[k]||"",ja=f[k]||"",ka=RegExp("(\\d*)(\\D*)","g"),la=RegExp("(\\d*)(\\D*)","g");do{var t=ka.exec(S)||["","",""],u=la.exec(ja)||["","",""];if(0==t[0].length&&0==u[0].length)break;b=v(0==t[1].length?0:parseInt(t[1],10),0==u[1].length?0:parseInt(u[1],10))||v(0==t[2].length,0==u[2].length)||v(t[2],u[2])}while(!b)}return b}function v(a,c){return a<c?-1:a>c?1:0};var w;a:{var x=g.navigator;if(x){var y=x.userAgent;if(y){w=y;break a}}w=""}function z(a){return-1!=w.indexOf(a)};function ca(a,c){for(var b=a.length,d=l(a)?a.split(""):a,f=0;f<b;f++)f in d&&c.call(void 0,d[f],f,a)};function A(){return z("iPhone")&&!z("iPod")&&!z("iPad")};function B(){return z("Opera")||z("OPR")}function C(){return(z("Chrome")||z("CriOS"))&&!B()&&!z("Edge")};var D=B(),E=z("Trident")||z("MSIE"),F=z("Edge"),G=z("Gecko")&&!(-1!=w.toLowerCase().indexOf("webkit")&&!z("Edge"))&&!(z("Trident")||z("MSIE"))&&!z("Edge"),da=-1!=w.toLowerCase().indexOf("webkit")&&!z("Edge");function ea(){var a=w;if(G)return/rv\:([^\);]+)(\)|;)/.exec(a);if(F)return/Edge\/([\d\.]+)/.exec(a);if(E)return/\b(?:MSIE|rv)[: ]([^\);]+)(\)|;)/.exec(a);if(da)return/WebKit\/(\S+)/.exec(a)}function H(){var a=g.document;return a?a.documentMode:void 0}
7
- var I=function(){if(D&&g.opera){var a;var c=g.opera.version;try{a=c()}catch(b){a=c}return a}a="";(c=ea())&&(a=c?c[1]:"");return E&&(c=H(),null!=c&&c>parseFloat(a))?String(c):a}(),J={},K=g.document,L=K&&E?H()||("CSS1Compat"==K.compatMode?parseInt(I,10):5):void 0;!G&&!E||E&&9<=Number(L)||G&&(J["1.9.1"]||(J["1.9.1"]=0<=r(I,"1.9.1")));E&&(J["9"]||(J["9"]=0<=r(I,"9")));var fa=z("Firefox"),ga=A()||z("iPod"),ha=z("iPad"),M=z("Android")&&!(C()||z("Firefox")||B()||z("Silk")),ia=C(),N=z("Safari")&&!(C()||z("Coast")||B()||z("Edge")||z("Silk")||z("Android"))&&!(A()||z("iPad")||z("iPod"));var ma={SCRIPT:1,STYLE:1,HEAD:1,IFRAME:1,OBJECT:1},na={IMG:" ",BR:"\n"};function oa(a,c,b){if(!(a.nodeName in ma))if(3==a.nodeType)b?c.push(String(a.nodeValue).replace(/(\r\n|\r|\n)/g,"")):c.push(a.nodeValue);else if(a.nodeName in na)c.push(na[a.nodeName]);else for(a=a.firstChild;a;)oa(a,c,b),a=a.nextSibling};function O(a){return(a=a.exec(w))?a[1]:""}var pa=function(){if(fa)return O(/Firefox\/([0-9.]+)/);if(E||F||D)return I;if(ia)return O(/Chrome\/([0-9.]+)/);if(N&&!(A()||z("iPad")||z("iPod")))return O(/Version\/([0-9.]+)/);if(ga||ha){var a=/Version\/(\S+).*Mobile\/(\S+)/.exec(w);if(a)return a[1]+"."+a[2]}else if(M)return(a=O(/Android\s+([0-9.]+)/))?a:O(/Version\/([0-9.]+)/);return""}();var qa;function P(a){ra?qa(a):M?r(sa,a):r(pa,a)}var ra=function(){if(!G)return!1;var a=g.Components;if(!a)return!1;try{if(!a.classes)return!1}catch(f){return!1}var c=a.classes,a=a.interfaces,b=c["@mozilla.org/xpcom/version-comparator;1"].getService(a.nsIVersionComparator),d=c["@mozilla.org/xre/app-info;1"].getService(a.nsIXULAppInfo).version;qa=function(a){b.compare(d,""+a)};return!0}(),Q;if(M){var ta=/Android\s+([0-9\.]+)/.exec(w);Q=ta?ta[1]:"0"}else Q="0";
8
- var sa=Q,ua=E&&!(8<=Number(L)),va=E&&!(9<=Number(L));M&&P(2.3);M&&P(4);N&&P(6);function R(a,c){c=c.toLowerCase();if("style"==c)return wa(a.style.cssText);if(ua&&"value"==c&&T(a,"INPUT"))return a.value;if(va&&!0===a[c])return String(a.getAttribute(c));var b=a.getAttributeNode(c);return b&&b.specified?b.value:null}var xa=/[;]+(?=(?:(?:[^"]*"){2})*[^"]*$)(?=(?:(?:[^']*'){2})*[^']*$)(?=(?:[^()]*\([^()]*\))*[^()]*$)/;
9
- function wa(a){var c=[];ca(a.split(xa),function(a){var d=a.indexOf(":");0<d&&(a=[a.slice(0,d),a.slice(d+1)],2==a.length&&c.push(a[0].toLowerCase(),":",a[1],";"))});c=c.join("");return c=";"==c.charAt(c.length-1)?c:c+";"}function U(a,c){var b;ua&&"value"==c&&T(a,"OPTION")&&null===R(a,"value")?(b=[],oa(a,b,!1),b=b.join("")):b=a[c];return b}function T(a,c){return!!a&&1==a.nodeType&&(!c||a.tagName.toUpperCase()==c)}
10
- function ya(a){return T(a,"OPTION")?!0:T(a,"INPUT")?(a=a.type.toLowerCase(),"checkbox"==a||"radio"==a):!1};var za={"class":"className",readonly:"readOnly"},V="async autofocus autoplay checked compact complete controls declare defaultchecked defaultselected defer disabled draggable ended formnovalidate hidden indeterminate iscontenteditable ismap itemscope loop multiple muted nohref noresize noshade novalidate nowrap open paused pubdate readonly required reversed scoped seamless seeking selected spellcheck truespeed willvalidate".split(" ");function Aa(a,c){var b=null,d=c.toLowerCase();if("style"==d)return(b=a.style)&&!l(b)&&(b=b.cssText),b;if(("selected"==d||"checked"==d)&&ya(a)){if(!ya(a))throw new m(15,"Element is not selectable");var b="selected",f=a.type&&a.type.toLowerCase();if("checkbox"==f||"radio"==f)b="checked";return U(a,b)?"true":null}var h=T(a,"A");if(T(a,"IMG")&&"src"==d||h&&"href"==d)return(b=R(a,d))&&(b=U(a,d)),b;if("spellcheck"==d){b=R(a,d);if(null!==b){if("false"==b.toLowerCase())return"false";if("true"==b.toLowerCase())return"true"}return U(a,
11
- d)+""}h=za[c]||c;a:if(l(V))d=l(d)&&1==d.length?V.indexOf(d,0):-1;else{for(var k=0;k<V.length;k++)if(k in V&&V[k]===d){d=k;break a}d=-1}if(0<=d)return(b=null!==R(a,c)||U(a,h))?"true":null;try{f=U(a,h)}catch(S){}(d=null==f)||(d=typeof f,d="object"==d&&null!=f||"function"==d);d?b=R(a,c):b=f;return null!=b?b.toString():null}var W=["_"],X=g;W[0]in X||!X.execScript||X.execScript("var "+W[0]);for(var Y;W.length&&(Y=W.shift());){var Z;if(Z=!W.length)Z=void 0!==Aa;Z?X[Y]=Aa:X[Y]?X=X[Y]:X=X[Y]={}};; return this._.apply(null,arguments);}.apply({navigator:typeof window!='undefined'?window.navigator:null,document:typeof window!='undefined'?window.document:null}, arguments);}
1
+ function(){return (function(){var g=this;function l(a){return"string"==typeof a}function aa(a,b){a=a.split(".");var c=g;a[0]in c||"undefined"==typeof c.execScript||c.execScript("var "+a[0]);for(var d;a.length&&(d=a.shift());)a.length||void 0===b?c[d]&&c[d]!==Object.prototype[d]?c=c[d]:c=c[d]={}:c[d]=b}
2
+ function ba(a){var b=typeof a;if("object"==b)if(a){if(a instanceof Array)return"array";if(a instanceof Object)return b;var c=Object.prototype.toString.call(a);if("[object Window]"==c)return"object";if("[object Array]"==c||"number"==typeof a.length&&"undefined"!=typeof a.splice&&"undefined"!=typeof a.propertyIsEnumerable&&!a.propertyIsEnumerable("splice"))return"array";if("[object Function]"==c||"undefined"!=typeof a.call&&"undefined"!=typeof a.propertyIsEnumerable&&!a.propertyIsEnumerable("call"))return"function"}else return"null";
3
+ else if("function"==b&&"undefined"==typeof a.call)return"object";return b}function ca(a){var b=typeof a;return"object"==b&&null!=a||"function"==b}function da(a,b,c){return a.call.apply(a.bind,arguments)}function ea(a,b,c){if(!a)throw Error();if(2<arguments.length){var d=Array.prototype.slice.call(arguments,2);return function(){var e=Array.prototype.slice.call(arguments);Array.prototype.unshift.apply(e,d);return a.apply(b,e)}}return function(){return a.apply(b,arguments)}}
4
+ function fa(a,b,c){Function.prototype.bind&&-1!=Function.prototype.bind.toString().indexOf("native code")?fa=da:fa=ea;return fa.apply(null,arguments)}function ha(a,b){var c=Array.prototype.slice.call(arguments,1);return function(){var d=c.slice();d.push.apply(d,arguments);return a.apply(this,d)}}function m(a,b){function c(){}c.prototype=b.prototype;a.prototype=new c;a.prototype.constructor=a};/*
5
+
6
+ The MIT License
7
+
8
+ Copyright (c) 2007 Cybozu Labs, Inc.
9
+ Copyright (c) 2012 Google Inc.
10
+
11
+ Permission is hereby granted, free of charge, to any person obtaining a copy
12
+ of this software and associated documentation files (the "Software"), to
13
+ deal in the Software without restriction, including without limitation the
14
+ rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
15
+ sell copies of the Software, and to permit persons to whom the Software is
16
+ furnished to do so, subject to the following conditions:
17
+
18
+ The above copyright notice and this permission notice shall be included in
19
+ all copies or substantial portions of the Software.
20
+
21
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
22
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
23
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
24
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
25
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
26
+ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
27
+ IN THE SOFTWARE.
28
+ */
29
+ function n(a,b,c){this.a=a;this.b=b||1;this.f=c||1};var ia=Array.prototype.indexOf?function(a,b){return Array.prototype.indexOf.call(a,b,void 0)}:function(a,b){if(l(a))return l(b)&&1==b.length?a.indexOf(b,0):-1;for(var c=0;c<a.length;c++)if(c in a&&a[c]===b)return c;return-1},p=Array.prototype.forEach?function(a,b){Array.prototype.forEach.call(a,b,void 0)}:function(a,b){for(var c=a.length,d=l(a)?a.split(""):a,e=0;e<c;e++)e in d&&b.call(void 0,d[e],e,a)},ja=Array.prototype.filter?function(a,b){return Array.prototype.filter.call(a,b,void 0)}:function(a,
30
+ b){for(var c=a.length,d=[],e=0,f=l(a)?a.split(""):a,h=0;h<c;h++)if(h in f){var k=f[h];b.call(void 0,k,h,a)&&(d[e++]=k)}return d},q=Array.prototype.reduce?function(a,b,c){return Array.prototype.reduce.call(a,b,c)}:function(a,b,c){var d=c;p(a,function(e,f){d=b.call(void 0,d,e,f,a)});return d},ka=Array.prototype.some?function(a,b){return Array.prototype.some.call(a,b,void 0)}:function(a,b){for(var c=a.length,d=l(a)?a.split(""):a,e=0;e<c;e++)if(e in d&&b.call(void 0,d[e],e,a))return!0;return!1};
31
+ function la(a,b){a:{for(var c=a.length,d=l(a)?a.split(""):a,e=0;e<c;e++)if(e in d&&b.call(void 0,d[e],e,a)){b=e;break a}b=-1}return 0>b?null:l(a)?a.charAt(b):a[b]}function ma(a){return Array.prototype.concat.apply([],arguments)}function na(a,b,c){return 2>=arguments.length?Array.prototype.slice.call(a,b):Array.prototype.slice.call(a,b,c)};var r;a:{var oa=g.navigator;if(oa){var pa=oa.userAgent;if(pa){r=pa;break a}}r=""}function u(a){return-1!=r.indexOf(a)};function qa(){return u("Firefox")||u("FxiOS")}function ra(){return(u("Chrome")||u("CriOS"))&&!u("Edge")};function sa(){return u("iPhone")&&!u("iPod")&&!u("iPad")};var ta=u("Opera"),v=u("Trident")||u("MSIE"),ua=u("Edge"),va=u("Gecko")&&!(-1!=r.toLowerCase().indexOf("webkit")&&!u("Edge"))&&!(u("Trident")||u("MSIE"))&&!u("Edge"),wa=-1!=r.toLowerCase().indexOf("webkit")&&!u("Edge"),xa=u("Macintosh"),ya=u("Windows");function za(){var a=g.document;return a?a.documentMode:void 0}var Aa;
32
+ a:{var Ba="",Ca=function(){var a=r;if(va)return/rv:([^\);]+)(\)|;)/.exec(a);if(ua)return/Edge\/([\d\.]+)/.exec(a);if(v)return/\b(?:MSIE|rv)[: ]([^\);]+)(\)|;)/.exec(a);if(wa)return/WebKit\/(\S+)/.exec(a);if(ta)return/(?:Version)[ \/]?(\S+)/.exec(a)}();Ca&&(Ba=Ca?Ca[1]:"");if(v){var Da=za();if(null!=Da&&Da>parseFloat(Ba)){Aa=String(Da);break a}}Aa=Ba}var w;var Ea=g.document;w=Ea&&v?za()||("CSS1Compat"==Ea.compatMode?parseInt(Aa,10):5):void 0;var x=v&&!(9<=Number(w)),Fa=v&&!(8<=Number(w));function y(a,b,c,d){this.a=a;this.nodeName=c;this.nodeValue=d;this.nodeType=2;this.parentNode=this.ownerElement=b}function Ga(a,b){var c=Fa&&"href"==b.nodeName?a.getAttribute(b.nodeName,2):b.nodeValue;return new y(b,a,b.nodeName,c)};function Ha(a){this.b=a;this.a=0}function Ia(a){a=a.match(Ja);for(var b=0;b<a.length;b++)Ka.test(a[b])&&a.splice(b,1);return new Ha(a)}var Ja=/\$?(?:(?![0-9-\.])(?:\*|[\w-\.]+):)?(?![0-9-\.])(?:\*|[\w-\.]+)|\/\/|\.\.|::|\d+(?:\.\d*)?|\.\d+|"[^"]*"|'[^']*'|[!<>]=|\s+|./g,Ka=/^\s/;function A(a,b){return a.b[a.a+(b||0)]}function B(a){return a.b[a.a++]}function La(a){return a.b.length<=a.a};function Ma(a,b){if(!a||!b)return!1;if(a.contains&&1==b.nodeType)return a==b||a.contains(b);if("undefined"!=typeof a.compareDocumentPosition)return a==b||!!(a.compareDocumentPosition(b)&16);for(;b&&a!=b;)b=b.parentNode;return b==a}
33
+ function Na(a,b){if(a==b)return 0;if(a.compareDocumentPosition)return a.compareDocumentPosition(b)&2?1:-1;if(v&&!(9<=Number(w))){if(9==a.nodeType)return-1;if(9==b.nodeType)return 1}if("sourceIndex"in a||a.parentNode&&"sourceIndex"in a.parentNode){var c=1==a.nodeType,d=1==b.nodeType;if(c&&d)return a.sourceIndex-b.sourceIndex;var e=a.parentNode,f=b.parentNode;return e==f?Oa(a,b):!c&&Ma(e,b)?-1*Pa(a,b):!d&&Ma(f,a)?Pa(b,a):(c?a.sourceIndex:e.sourceIndex)-(d?b.sourceIndex:f.sourceIndex)}d=9==a.nodeType?
34
+ a:a.ownerDocument||a.document;c=d.createRange();c.selectNode(a);c.collapse(!0);a=d.createRange();a.selectNode(b);a.collapse(!0);return c.compareBoundaryPoints(g.Range.START_TO_END,a)}function Pa(a,b){var c=a.parentNode;if(c==b)return-1;for(;b.parentNode!=c;)b=b.parentNode;return Oa(b,a)}function Oa(a,b){for(;b=b.previousSibling;)if(b==a)return-1;return 1}var Qa={SCRIPT:1,STYLE:1,HEAD:1,IFRAME:1,OBJECT:1},Ra={IMG:" ",BR:"\n"};
35
+ function Sa(a,b,c){if(!(a.nodeName in Qa))if(3==a.nodeType)c?b.push(String(a.nodeValue).replace(/(\r\n|\r|\n)/g,"")):b.push(a.nodeValue);else if(a.nodeName in Ra)b.push(Ra[a.nodeName]);else for(a=a.firstChild;a;)Sa(a,b,c),a=a.nextSibling};function C(a){var b=null,c=a.nodeType;1==c&&(b=a.textContent,b=void 0==b||null==b?a.innerText:b,b=void 0==b||null==b?"":b);if("string"!=typeof b)if(x&&"title"==a.nodeName.toLowerCase()&&1==c)b=a.text;else if(9==c||1==c){a=9==c?a.documentElement:a.firstChild;c=0;var d=[];for(b="";a;){do 1!=a.nodeType&&(b+=a.nodeValue),x&&"title"==a.nodeName.toLowerCase()&&(b+=a.text),d[c++]=a;while(a=a.firstChild);for(;c&&!(a=d[--c].nextSibling););}}else b=a.nodeValue;return b}
36
+ function D(a,b,c){if(null===b)return!0;try{if(!a.getAttribute)return!1}catch(d){return!1}Fa&&"class"==b&&(b="className");return null==c?!!a.getAttribute(b):a.getAttribute(b,2)==c}function Ta(a,b,c,d,e){return(x?Ua:Va).call(null,a,b,l(c)?c:null,l(d)?d:null,e||new E)}
37
+ function Ua(a,b,c,d,e){if(a instanceof F||8==a.b||c&&null===a.b){var f=b.all;if(!f)return e;a=Wa(a);if("*"!=a&&(f=b.getElementsByTagName(a),!f))return e;if(c){for(var h=[],k=0;b=f[k++];)D(b,c,d)&&h.push(b);f=h}for(k=0;b=f[k++];)"*"==a&&"!"==b.tagName||e.add(b);return e}Xa(a,b,c,d,e);return e}
38
+ function Va(a,b,c,d,e){b.getElementsByName&&d&&"name"==c&&!v?(b=b.getElementsByName(d),p(b,function(f){a.a(f)&&e.add(f)})):b.getElementsByClassName&&d&&"class"==c?(b=b.getElementsByClassName(d),p(b,function(f){f.className==d&&a.a(f)&&e.add(f)})):a instanceof G?Xa(a,b,c,d,e):b.getElementsByTagName&&(b=b.getElementsByTagName(a.f()),p(b,function(f){D(f,c,d)&&e.add(f)}));return e}
39
+ function Ya(a,b,c,d,e){var f;if((a instanceof F||8==a.b||c&&null===a.b)&&(f=b.childNodes)){var h=Wa(a);if("*"!=h&&(f=ja(f,function(k){return k.tagName&&k.tagName.toLowerCase()==h}),!f))return e;c&&(f=ja(f,function(k){return D(k,c,d)}));p(f,function(k){"*"==h&&("!"==k.tagName||"*"==h&&1!=k.nodeType)||e.add(k)});return e}return Za(a,b,c,d,e)}function Za(a,b,c,d,e){for(b=b.firstChild;b;b=b.nextSibling)D(b,c,d)&&a.a(b)&&e.add(b);return e}
40
+ function Xa(a,b,c,d,e){for(b=b.firstChild;b;b=b.nextSibling)D(b,c,d)&&a.a(b)&&e.add(b),Xa(a,b,c,d,e)}function Wa(a){if(a instanceof G){if(8==a.b)return"!";if(null===a.b)return"*"}return a.f()};function E(){this.b=this.a=null;this.o=0}function $a(a){this.f=a;this.a=this.b=null}function ab(a,b){if(!a.a)return b;if(!b.a)return a;var c=a.a;b=b.a;for(var d=null,e,f=0;c&&b;){e=c.f;var h=b.f;e==h||e instanceof y&&h instanceof y&&e.a==h.a?(e=c,c=c.a,b=b.a):0<Na(c.f,b.f)?(e=b,b=b.a):(e=c,c=c.a);(e.b=d)?d.a=e:a.a=e;d=e;f++}for(e=c||b;e;)e.b=d,d=d.a=e,f++,e=e.a;a.b=d;a.o=f;return a}function bb(a,b){b=new $a(b);b.a=a.a;a.b?a.a.b=b:a.a=a.b=b;a.a=b;a.o++}
41
+ E.prototype.add=function(a){a=new $a(a);a.b=this.b;this.a?this.b.a=a:this.a=this.b=a;this.b=a;this.o++};function cb(a){return(a=a.a)?a.f:null}function db(a){return(a=cb(a))?C(a):""}function H(a,b){return new eb(a,!!b)}function eb(a,b){this.f=a;this.b=(this.v=b)?a.b:a.a;this.a=null}function I(a){var b=a.b;if(null==b)return null;var c=a.a=b;a.b=a.v?b.b:b.a;return c.f};function J(a){this.l=a;this.b=this.i=!1;this.f=null}function K(a){return"\n "+a.toString().split("\n").join("\n ")}function fb(a,b){a.i=b}function gb(a,b){a.b=b}function L(a,b){a=a.a(b);return a instanceof E?+db(a):+a}function M(a,b){a=a.a(b);return a instanceof E?db(a):""+a}function N(a,b){a=a.a(b);return a instanceof E?!!a.o:!!a};function hb(a,b,c){J.call(this,a.l);this.c=a;this.j=b;this.u=c;this.i=b.i||c.i;this.b=b.b||c.b;this.c==ib&&(c.b||c.i||4==c.l||0==c.l||!b.f?b.b||b.i||4==b.l||0==b.l||!c.f||(this.f={name:c.f.name,w:b}):this.f={name:b.f.name,w:c})}m(hb,J);
42
+ function O(a,b,c,d,e){b=b.a(d);c=c.a(d);var f;if(b instanceof E&&c instanceof E){b=H(b);for(d=I(b);d;d=I(b))for(e=H(c),f=I(e);f;f=I(e))if(a(C(d),C(f)))return!0;return!1}if(b instanceof E||c instanceof E){b instanceof E?(e=b,d=c):(e=c,d=b);f=H(e);for(var h=typeof d,k=I(f);k;k=I(f)){switch(h){case "number":k=+C(k);break;case "boolean":k=!!C(k);break;case "string":k=C(k);break;default:throw Error("Illegal primitive type for comparison.");}if(e==b&&a(k,d)||e==c&&a(d,k))return!0}return!1}return e?"boolean"==
43
+ typeof b||"boolean"==typeof c?a(!!b,!!c):"number"==typeof b||"number"==typeof c?a(+b,+c):a(b,c):a(+b,+c)}hb.prototype.a=function(a){return this.c.s(this.j,this.u,a)};hb.prototype.toString=function(){var a="Binary Expression: "+this.c;a+=K(this.j);return a+=K(this.u)};function jb(a,b,c,d){this.J=a;this.F=b;this.l=c;this.s=d}jb.prototype.toString=function(){return this.J};var kb={};
44
+ function P(a,b,c,d){if(kb.hasOwnProperty(a))throw Error("Binary operator already created: "+a);a=new jb(a,b,c,d);return kb[a.toString()]=a}P("div",6,1,function(a,b,c){return L(a,c)/L(b,c)});P("mod",6,1,function(a,b,c){return L(a,c)%L(b,c)});P("*",6,1,function(a,b,c){return L(a,c)*L(b,c)});P("+",5,1,function(a,b,c){return L(a,c)+L(b,c)});P("-",5,1,function(a,b,c){return L(a,c)-L(b,c)});P("<",4,2,function(a,b,c){return O(function(d,e){return d<e},a,b,c)});
45
+ P(">",4,2,function(a,b,c){return O(function(d,e){return d>e},a,b,c)});P("<=",4,2,function(a,b,c){return O(function(d,e){return d<=e},a,b,c)});P(">=",4,2,function(a,b,c){return O(function(d,e){return d>=e},a,b,c)});var ib=P("=",3,2,function(a,b,c){return O(function(d,e){return d==e},a,b,c,!0)});P("!=",3,2,function(a,b,c){return O(function(d,e){return d!=e},a,b,c,!0)});P("and",2,2,function(a,b,c){return N(a,c)&&N(b,c)});P("or",1,2,function(a,b,c){return N(a,c)||N(b,c)});function lb(a,b){if(b.a.length&&4!=a.l)throw Error("Primary expression must evaluate to nodeset if filter has predicate(s).");J.call(this,a.l);this.c=a;this.j=b;this.i=a.i;this.b=a.b}m(lb,J);lb.prototype.a=function(a){a=this.c.a(a);return mb(this.j,a)};lb.prototype.toString=function(){var a="Filter:"+K(this.c);return a+=K(this.j)};function nb(a,b){if(b.length<a.D)throw Error("Function "+a.m+" expects at least"+a.D+" arguments, "+b.length+" given");if(null!==a.C&&b.length>a.C)throw Error("Function "+a.m+" expects at most "+a.C+" arguments, "+b.length+" given");a.I&&p(b,function(c,d){if(4!=c.l)throw Error("Argument "+d+" to function "+a.m+" is not of type Nodeset: "+c);});J.call(this,a.l);this.A=a;this.c=b;fb(this,a.i||ka(b,function(c){return c.i}));gb(this,a.H&&!b.length||a.G&&!!b.length||ka(b,function(c){return c.b}))}
46
+ m(nb,J);nb.prototype.a=function(a){return this.A.s.apply(null,ma(a,this.c))};nb.prototype.toString=function(){var a="Function: "+this.A;if(this.c.length){var b=q(this.c,function(c,d){return c+K(d)},"Arguments:");a+=K(b)}return a};function ob(a,b,c,d,e,f,h,k){this.m=a;this.l=b;this.i=c;this.H=d;this.G=!1;this.s=e;this.D=f;this.C=void 0!==h?h:f;this.I=!!k}ob.prototype.toString=function(){return this.m};var pb={};
47
+ function Q(a,b,c,d,e,f,h,k){if(pb.hasOwnProperty(a))throw Error("Function already created: "+a+".");pb[a]=new ob(a,b,c,d,e,f,h,k)}Q("boolean",2,!1,!1,function(a,b){return N(b,a)},1);Q("ceiling",1,!1,!1,function(a,b){return Math.ceil(L(b,a))},1);Q("concat",3,!1,!1,function(a,b){return q(na(arguments,1),function(c,d){return c+M(d,a)},"")},2,null);Q("contains",2,!1,!1,function(a,b,c){b=M(b,a);a=M(c,a);return-1!=b.indexOf(a)},2);Q("count",1,!1,!1,function(a,b){return b.a(a).o},1,1,!0);
48
+ Q("false",2,!1,!1,function(){return!1},0);Q("floor",1,!1,!1,function(a,b){return Math.floor(L(b,a))},1);Q("id",4,!1,!1,function(a,b){function c(k){if(x){var t=e.all[k];if(t){if(t.nodeType&&k==t.id)return t;if(t.length)return la(t,function(z){return k==z.id})}return null}return e.getElementById(k)}var d=a.a,e=9==d.nodeType?d:d.ownerDocument;a=M(b,a).split(/\s+/);var f=[];p(a,function(k){k=c(k);!k||0<=ia(f,k)||f.push(k)});f.sort(Na);var h=new E;p(f,function(k){h.add(k)});return h},1);
49
+ Q("lang",2,!1,!1,function(){return!1},1);Q("last",1,!0,!1,function(a){if(1!=arguments.length)throw Error("Function last expects ()");return a.f},0);Q("local-name",3,!1,!0,function(a,b){return(a=b?cb(b.a(a)):a.a)?a.localName||a.nodeName.toLowerCase():""},0,1,!0);Q("name",3,!1,!0,function(a,b){return(a=b?cb(b.a(a)):a.a)?a.nodeName.toLowerCase():""},0,1,!0);Q("namespace-uri",3,!0,!1,function(){return""},0,1,!0);
50
+ Q("normalize-space",3,!1,!0,function(a,b){return(b?M(b,a):C(a.a)).replace(/[\s\xa0]+/g," ").replace(/^\s+|\s+$/g,"")},0,1);Q("not",2,!1,!1,function(a,b){return!N(b,a)},1);Q("number",1,!1,!0,function(a,b){return b?L(b,a):+C(a.a)},0,1);Q("position",1,!0,!1,function(a){return a.b},0);Q("round",1,!1,!1,function(a,b){return Math.round(L(b,a))},1);Q("starts-with",2,!1,!1,function(a,b,c){b=M(b,a);a=M(c,a);return 0==b.lastIndexOf(a,0)},2);Q("string",3,!1,!0,function(a,b){return b?M(b,a):C(a.a)},0,1);
51
+ Q("string-length",1,!1,!0,function(a,b){return(b?M(b,a):C(a.a)).length},0,1);Q("substring",3,!1,!1,function(a,b,c,d){c=L(c,a);if(isNaN(c)||Infinity==c||-Infinity==c)return"";d=d?L(d,a):Infinity;if(isNaN(d)||-Infinity===d)return"";c=Math.round(c)-1;var e=Math.max(c,0);a=M(b,a);return Infinity==d?a.substring(e):a.substring(e,c+Math.round(d))},2,3);Q("substring-after",3,!1,!1,function(a,b,c){b=M(b,a);a=M(c,a);c=b.indexOf(a);return-1==c?"":b.substring(c+a.length)},2);
52
+ Q("substring-before",3,!1,!1,function(a,b,c){b=M(b,a);a=M(c,a);a=b.indexOf(a);return-1==a?"":b.substring(0,a)},2);Q("sum",1,!1,!1,function(a,b){a=H(b.a(a));b=0;for(var c=I(a);c;c=I(a))b+=+C(c);return b},1,1,!0);Q("translate",3,!1,!1,function(a,b,c,d){b=M(b,a);c=M(c,a);var e=M(d,a);a={};for(d=0;d<c.length;d++){var f=c.charAt(d);f in a||(a[f]=e.charAt(d))}c="";for(d=0;d<b.length;d++)f=b.charAt(d),c+=f in a?a[f]:f;return c},3);Q("true",2,!1,!1,function(){return!0},0);function G(a,b){this.j=a;this.c=void 0!==b?b:null;this.b=null;switch(a){case "comment":this.b=8;break;case "text":this.b=3;break;case "processing-instruction":this.b=7;break;case "node":break;default:throw Error("Unexpected argument");}}function qb(a){return"comment"==a||"text"==a||"processing-instruction"==a||"node"==a}G.prototype.a=function(a){return null===this.b||this.b==a.nodeType};G.prototype.f=function(){return this.j};
53
+ G.prototype.toString=function(){var a="Kind Test: "+this.j;null===this.c||(a+=K(this.c));return a};function rb(a){J.call(this,3);this.c=a.substring(1,a.length-1)}m(rb,J);rb.prototype.a=function(){return this.c};rb.prototype.toString=function(){return"Literal: "+this.c};function F(a,b){this.m=a.toLowerCase();a="*"==this.m?"*":"http://www.w3.org/1999/xhtml";this.c=b?b.toLowerCase():a}F.prototype.a=function(a){var b=a.nodeType;if(1!=b&&2!=b)return!1;b=void 0!==a.localName?a.localName:a.nodeName;return"*"!=this.m&&this.m!=b.toLowerCase()?!1:"*"==this.c?!0:this.c==(a.namespaceURI?a.namespaceURI.toLowerCase():"http://www.w3.org/1999/xhtml")};F.prototype.f=function(){return this.m};
54
+ F.prototype.toString=function(){return"Name Test: "+("http://www.w3.org/1999/xhtml"==this.c?"":this.c+":")+this.m};function sb(a){J.call(this,1);this.c=a}m(sb,J);sb.prototype.a=function(){return this.c};sb.prototype.toString=function(){return"Number: "+this.c};function tb(a,b){J.call(this,a.l);this.j=a;this.c=b;this.i=a.i;this.b=a.b;1==this.c.length&&(a=this.c[0],a.B||a.c!=ub||(a=a.u,"*"!=a.f()&&(this.f={name:a.f(),w:null})))}m(tb,J);function vb(){J.call(this,4)}m(vb,J);vb.prototype.a=function(a){var b=new E;a=a.a;9==a.nodeType?b.add(a):b.add(a.ownerDocument);return b};vb.prototype.toString=function(){return"Root Helper Expression"};function wb(){J.call(this,4)}m(wb,J);wb.prototype.a=function(a){var b=new E;b.add(a.a);return b};wb.prototype.toString=function(){return"Context Helper Expression"};
55
+ function xb(a){return"/"==a||"//"==a}tb.prototype.a=function(a){var b=this.j.a(a);if(!(b instanceof E))throw Error("Filter expression must evaluate to nodeset.");a=this.c;for(var c=0,d=a.length;c<d&&b.o;c++){var e=a[c],f=H(b,e.c.v);if(e.i||e.c!=yb)if(e.i||e.c!=zb){var h=I(f);for(b=e.a(new n(h));null!=(h=I(f));)h=e.a(new n(h)),b=ab(b,h)}else h=I(f),b=e.a(new n(h));else{for(h=I(f);(b=I(f))&&(!h.contains||h.contains(b))&&b.compareDocumentPosition(h)&8;h=b);b=e.a(new n(h))}}return b};
56
+ tb.prototype.toString=function(){var a="Path Expression:"+K(this.j);if(this.c.length){var b=q(this.c,function(c,d){return c+K(d)},"Steps:");a+=K(b)}return a};function Ab(a,b){this.a=a;this.v=!!b}
57
+ function mb(a,b,c){for(c=c||0;c<a.a.length;c++)for(var d=a.a[c],e=H(b),f=b.o,h,k=0;h=I(e);k++){var t=a.v?f-k:k+1;h=d.a(new n(h,t,f));if("number"==typeof h)t=t==h;else if("string"==typeof h||"boolean"==typeof h)t=!!h;else if(h instanceof E)t=0<h.o;else throw Error("Predicate.evaluate returned an unexpected type.");if(!t){t=e;h=t.f;var z=t.a;if(!z)throw Error("Next must be called at least once before remove.");var Y=z.b;z=z.a;Y?Y.a=z:h.a=z;z?z.b=Y:h.b=Y;h.o--;t.a=null}}return b}
58
+ Ab.prototype.toString=function(){return q(this.a,function(a,b){return a+K(b)},"Predicates:")};function R(a,b,c,d){J.call(this,4);this.c=a;this.u=b;this.j=c||new Ab([]);this.B=!!d;b=this.j;b=0<b.a.length?b.a[0].f:null;a.K&&b&&(a=b.name,a=x?a.toLowerCase():a,this.f={name:a,w:b.w});a:{a=this.j;for(b=0;b<a.a.length;b++)if(c=a.a[b],c.i||1==c.l||0==c.l){a=!0;break a}a=!1}this.i=a}m(R,J);
59
+ R.prototype.a=function(a){var b=a.a,c=this.f,d=null,e=null,f=0;c&&(d=c.name,e=c.w?M(c.w,a):null,f=1);if(this.B)if(this.i||this.c!=Bb)if(b=H((new R(Cb,new G("node"))).a(a)),c=I(b))for(a=this.s(c,d,e,f);null!=(c=I(b));)a=ab(a,this.s(c,d,e,f));else a=new E;else a=Ta(this.u,b,d,e),a=mb(this.j,a,f);else a=this.s(a.a,d,e,f);return a};R.prototype.s=function(a,b,c,d){a=this.c.A(this.u,a,b,c);return a=mb(this.j,a,d)};
60
+ R.prototype.toString=function(){var a="Step:"+K("Operator: "+(this.B?"//":"/"));this.c.m&&(a+=K("Axis: "+this.c));a+=K(this.u);if(this.j.a.length){var b=q(this.j.a,function(c,d){return c+K(d)},"Predicates:");a+=K(b)}return a};function Db(a,b,c,d){this.m=a;this.A=b;this.v=c;this.K=d}Db.prototype.toString=function(){return this.m};var Eb={};function S(a,b,c,d){if(Eb.hasOwnProperty(a))throw Error("Axis already created: "+a);b=new Db(a,b,c,!!d);return Eb[a]=b}
61
+ S("ancestor",function(a,b){for(var c=new E;b=b.parentNode;)a.a(b)&&bb(c,b);return c},!0);S("ancestor-or-self",function(a,b){var c=new E;do a.a(b)&&bb(c,b);while(b=b.parentNode);return c},!0);
62
+ var ub=S("attribute",function(a,b){var c=new E,d=a.f();if("style"==d&&x&&b.style)return c.add(new y(b.style,b,"style",b.style.cssText)),c;var e=b.attributes;if(e)if(a instanceof G&&null===a.b||"*"==d)for(a=0;d=e[a];a++)x?d.nodeValue&&c.add(Ga(b,d)):c.add(d);else(d=e.getNamedItem(d))&&(x?d.nodeValue&&c.add(Ga(b,d)):c.add(d));return c},!1),Bb=S("child",function(a,b,c,d,e){return(x?Ya:Za).call(null,a,b,l(c)?c:null,l(d)?d:null,e||new E)},!1,!0);S("descendant",Ta,!1,!0);
63
+ var Cb=S("descendant-or-self",function(a,b,c,d){var e=new E;D(b,c,d)&&a.a(b)&&e.add(b);return Ta(a,b,c,d,e)},!1,!0),yb=S("following",function(a,b,c,d){var e=new E;do for(var f=b;f=f.nextSibling;)D(f,c,d)&&a.a(f)&&e.add(f),e=Ta(a,f,c,d,e);while(b=b.parentNode);return e},!1,!0);S("following-sibling",function(a,b){for(var c=new E;b=b.nextSibling;)a.a(b)&&c.add(b);return c},!1);S("namespace",function(){return new E},!1);
64
+ var Fb=S("parent",function(a,b){var c=new E;if(9==b.nodeType)return c;if(2==b.nodeType)return c.add(b.ownerElement),c;b=b.parentNode;a.a(b)&&c.add(b);return c},!1),zb=S("preceding",function(a,b,c,d){var e=new E,f=[];do f.unshift(b);while(b=b.parentNode);for(var h=1,k=f.length;h<k;h++){var t=[];for(b=f[h];b=b.previousSibling;)t.unshift(b);for(var z=0,Y=t.length;z<Y;z++)b=t[z],D(b,c,d)&&a.a(b)&&e.add(b),e=Ta(a,b,c,d,e)}return e},!0,!0);
65
+ S("preceding-sibling",function(a,b){for(var c=new E;b=b.previousSibling;)a.a(b)&&bb(c,b);return c},!0);var Gb=S("self",function(a,b){var c=new E;a.a(b)&&c.add(b);return c},!1);function Hb(a){J.call(this,1);this.c=a;this.i=a.i;this.b=a.b}m(Hb,J);Hb.prototype.a=function(a){return-L(this.c,a)};Hb.prototype.toString=function(){return"Unary Expression: -"+K(this.c)};function Ib(a){J.call(this,4);this.c=a;fb(this,ka(this.c,function(b){return b.i}));gb(this,ka(this.c,function(b){return b.b}))}m(Ib,J);Ib.prototype.a=function(a){var b=new E;p(this.c,function(c){c=c.a(a);if(!(c instanceof E))throw Error("Path expression must evaluate to NodeSet.");b=ab(b,c)});return b};Ib.prototype.toString=function(){return q(this.c,function(a,b){return a+K(b)},"Union Expression:")};function Jb(a,b){this.a=a;this.b=b}function Kb(a){for(var b,c=[];;){T(a,"Missing right hand side of binary expression.");b=Lb(a);var d=B(a.a);if(!d)break;var e=(d=kb[d]||null)&&d.F;if(!e){a.a.a--;break}for(;c.length&&e<=c[c.length-1].F;)b=new hb(c.pop(),c.pop(),b);c.push(b,d)}for(;c.length;)b=new hb(c.pop(),c.pop(),b);return b}function T(a,b){if(La(a.a))throw Error(b);}function Mb(a,b){a=B(a.a);if(a!=b)throw Error("Bad token, expected: "+b+" got: "+a);}
66
+ function Nb(a){a=B(a.a);if(")"!=a)throw Error("Bad token: "+a);}function Ob(a){a=B(a.a);if(2>a.length)throw Error("Unclosed literal string");return new rb(a)}
67
+ function Pb(a){var b=[];if(xb(A(a.a))){var c=B(a.a);var d=A(a.a);if("/"==c&&(La(a.a)||"."!=d&&".."!=d&&"@"!=d&&"*"!=d&&!/(?![0-9])[\w]/.test(d)))return new vb;d=new vb;T(a,"Missing next location step.");c=Qb(a,c);b.push(c)}else{a:{c=A(a.a);d=c.charAt(0);switch(d){case "$":throw Error("Variable reference not allowed in HTML XPath");case "(":B(a.a);c=Kb(a);T(a,'unclosed "("');Mb(a,")");break;case '"':case "'":c=Ob(a);break;default:if(isNaN(+c))if(!qb(c)&&/(?![0-9])[\w]/.test(d)&&"("==A(a.a,1)){c=B(a.a);
68
+ c=pb[c]||null;B(a.a);for(d=[];")"!=A(a.a);){T(a,"Missing function argument list.");d.push(Kb(a));if(","!=A(a.a))break;B(a.a)}T(a,"Unclosed function argument list.");Nb(a);c=new nb(c,d)}else{c=null;break a}else c=new sb(+B(a.a))}"["==A(a.a)&&(d=new Ab(Rb(a)),c=new lb(c,d))}if(c)if(xb(A(a.a)))d=c;else return c;else c=Qb(a,"/"),d=new wb,b.push(c)}for(;xb(A(a.a));)c=B(a.a),T(a,"Missing next location step."),c=Qb(a,c),b.push(c);return new tb(d,b)}
69
+ function Qb(a,b){if("/"!=b&&"//"!=b)throw Error('Step op should be "/" or "//"');if("."==A(a.a)){var c=new R(Gb,new G("node"));B(a.a);return c}if(".."==A(a.a))return c=new R(Fb,new G("node")),B(a.a),c;if("@"==A(a.a)){var d=ub;B(a.a);T(a,"Missing attribute name")}else if("::"==A(a.a,1)){if(!/(?![0-9])[\w]/.test(A(a.a).charAt(0)))throw Error("Bad token: "+B(a.a));var e=B(a.a);d=Eb[e]||null;if(!d)throw Error("No axis with name: "+e);B(a.a);T(a,"Missing node name")}else d=Bb;e=A(a.a);if(/(?![0-9])[\w\*]/.test(e.charAt(0)))if("("==
70
+ A(a.a,1)){if(!qb(e))throw Error("Invalid node type: "+e);e=B(a.a);if(!qb(e))throw Error("Invalid type name: "+e);Mb(a,"(");T(a,"Bad nodetype");var f=A(a.a).charAt(0),h=null;if('"'==f||"'"==f)h=Ob(a);T(a,"Bad nodetype");Nb(a);e=new G(e,h)}else if(e=B(a.a),f=e.indexOf(":"),-1==f)e=new F(e);else{h=e.substring(0,f);if("*"==h)var k="*";else if(k=a.b(h),!k)throw Error("Namespace prefix not declared: "+h);e=e.substr(f+1);e=new F(e,k)}else throw Error("Bad token: "+B(a.a));a=new Ab(Rb(a),d.v);return c||new R(d,
71
+ e,a,"//"==b)}function Rb(a){for(var b=[];"["==A(a.a);){B(a.a);T(a,"Missing predicate expression.");var c=Kb(a);b.push(c);T(a,"Unclosed predicate expression.");Mb(a,"]")}return b}function Lb(a){if("-"==A(a.a))return B(a.a),new Hb(Lb(a));var b=Pb(a);if("|"!=A(a.a))a=b;else{for(b=[b];"|"==B(a.a);)T(a,"Missing next union location path."),b.push(Pb(a));a.a.a--;a=new Ib(b)}return a};function Sb(a){switch(a.nodeType){case 1:return ha(Tb,a);case 9:return Sb(a.documentElement);case 11:case 10:case 6:case 12:return Ub;default:return a.parentNode?Sb(a.parentNode):Ub}}function Ub(){return null}function Tb(a,b){if(a.prefix==b)return a.namespaceURI||"http://www.w3.org/1999/xhtml";var c=a.getAttributeNode("xmlns:"+b);return c&&c.specified?c.value||null:a.parentNode&&9!=a.parentNode.nodeType?Tb(a.parentNode,b):null};function Vb(a,b){if(!a.length)throw Error("Empty XPath expression.");a=Ia(a);if(La(a))throw Error("Invalid XPath expression.");b?"function"==ba(b)||(b=fa(b.lookupNamespaceURI,b)):b=function(){return null};var c=Kb(new Jb(a,b));if(!La(a))throw Error("Bad token: "+B(a));this.evaluate=function(d,e){d=c.a(new n(d));return new U(d,e)}}
72
+ function U(a,b){if(0==b)if(a instanceof E)b=4;else if("string"==typeof a)b=2;else if("number"==typeof a)b=1;else if("boolean"==typeof a)b=3;else throw Error("Unexpected evaluation result.");if(2!=b&&1!=b&&3!=b&&!(a instanceof E))throw Error("value could not be converted to the specified type");this.resultType=b;switch(b){case 2:this.stringValue=a instanceof E?db(a):""+a;break;case 1:this.numberValue=a instanceof E?+db(a):+a;break;case 3:this.booleanValue=a instanceof E?0<a.o:!!a;break;case 4:case 5:case 6:case 7:var c=
73
+ H(a);var d=[];for(var e=I(c);e;e=I(c))d.push(e instanceof y?e.a:e);this.snapshotLength=a.o;this.invalidIteratorState=!1;break;case 8:case 9:a=cb(a);this.singleNodeValue=a instanceof y?a.a:a;break;default:throw Error("Unknown XPathResult type.");}var f=0;this.iterateNext=function(){if(4!=b&&5!=b)throw Error("iterateNext called with wrong result type");return f>=d.length?null:d[f++]};this.snapshotItem=function(h){if(6!=b&&7!=b)throw Error("snapshotItem called with wrong result type");return h>=d.length||
74
+ 0>h?null:d[h]}}U.ANY_TYPE=0;U.NUMBER_TYPE=1;U.STRING_TYPE=2;U.BOOLEAN_TYPE=3;U.UNORDERED_NODE_ITERATOR_TYPE=4;U.ORDERED_NODE_ITERATOR_TYPE=5;U.UNORDERED_NODE_SNAPSHOT_TYPE=6;U.ORDERED_NODE_SNAPSHOT_TYPE=7;U.ANY_UNORDERED_NODE_TYPE=8;U.FIRST_ORDERED_NODE_TYPE=9;function Wb(a){this.lookupNamespaceURI=Sb(a)}
75
+ function Xb(a,b){a=a||g;var c=a.Document&&a.Document.prototype||a.document;if(!c.evaluate||b)a.XPathResult=U,c.evaluate=function(d,e,f,h){return(new Vb(d,f)).evaluate(e,h)},c.createExpression=function(d,e){return new Vb(d,e)},c.createNSResolver=function(d){return new Wb(d)}}aa("wgxpath.install",Xb);aa("wgxpath.install",Xb);function Yb(a,b){this.code=a;this.a=V[a]||Zb;this.message=b||"";a=this.a.replace(/((?:^|\s+)[a-z])/g,function(c){return c.toUpperCase().replace(/^[\s\xa0]+/g,"")});b=a.length-5;if(0>b||a.indexOf("Error",b)!=b)a+="Error";this.name=a;a=Error(this.message);a.name=this.name;this.stack=a.stack||""}m(Yb,Error);var Zb="unknown error",V={15:"element not selectable",11:"element not visible"};V[31]=Zb;V[30]=Zb;V[24]="invalid cookie domain";V[29]="invalid element coordinates";V[12]="invalid element state";
76
+ V[32]="invalid selector";V[51]="invalid selector";V[52]="invalid selector";V[17]="javascript error";V[405]="unsupported operation";V[34]="move target out of bounds";V[27]="no such alert";V[7]="no such element";V[8]="no such frame";V[23]="no such window";V[28]="script timeout";V[33]="session not created";V[10]="stale element reference";V[21]="timeout";V[25]="unable to set cookie";V[26]="unexpected alert open";V[13]=Zb;V[9]="unknown command";var $b=qa(),ac=sa()||u("iPod"),bc=u("iPad"),cc=u("Android")&&!(ra()||qa()||u("Opera")||u("Silk")),dc=ra(),ec=u("Safari")&&!(ra()||u("Coast")||u("Opera")||u("Edge")||qa()||u("Silk")||u("Android"))&&!(sa()||u("iPad")||u("iPod"));function W(a){return(a=a.exec(r))?a[1]:""}(function(){if($b)return W(/Firefox\/([0-9.]+)/);if(v||ua||ta)return Aa;if(dc)return sa()||u("iPad")||u("iPod")?W(/CriOS\/([0-9.]+)/):W(/Chrome\/([0-9.]+)/);if(ec&&!(sa()||u("iPad")||u("iPod")))return W(/Version\/([0-9.]+)/);if(ac||bc){var a=/Version\/(\S+).*Mobile\/(\S+)/.exec(r);if(a)return a[1]+"."+a[2]}else if(cc)return(a=W(/Android\s+([0-9.]+)/))?a:W(/Version\/([0-9.]+)/);return""})();var fc,gc,X=function(){if(!va)return!1;var a=g.Components;if(!a)return!1;try{if(!a.classes)return!1}catch(f){return!1}var b=a.classes;a=a.interfaces;var c=b["@mozilla.org/xpcom/version-comparator;1"].getService(a.nsIVersionComparator);b=b["@mozilla.org/xre/app-info;1"].getService(a.nsIXULAppInfo);var d=b.platformVersion,e=b.version;fc=function(f){c.compare(d,""+f)};gc=function(f){c.compare(e,""+f)};return!0}(),hc=v&&!(8<=Number(w)),ic=v&&!(9<=Number(w));cc&&X&&gc(2.3);cc&&X&&gc(4);ec&&X&&gc(6);function jc(a,b){b=b.toLowerCase();return"style"==b?kc(a.style.cssText):hc&&"value"==b&&lc(a,"INPUT")?a.value:ic&&!0===a[b]?String(a.getAttribute(b)):(a=a.getAttributeNode(b))&&a.specified?a.value:null}var mc=/[;]+(?=(?:(?:[^"]*"){2})*[^"]*$)(?=(?:(?:[^']*'){2})*[^']*$)(?=(?:[^()]*\([^()]*\))*[^()]*$)/;
77
+ function kc(a){var b=[];p(a.split(mc),function(c){var d=c.indexOf(":");0<d&&(c=[c.slice(0,d),c.slice(d+1)],2==c.length&&b.push(c[0].toLowerCase(),":",c[1],";"))});b=b.join("");return b=";"==b.charAt(b.length-1)?b:b+";"}function nc(a,b){hc&&"value"==b&&lc(a,"OPTION")&&null===jc(a,"value")?(b=[],Sa(a,b,!1),a=b.join("")):a=a[b];return a}function lc(a,b){b&&"string"!==typeof b&&(b=b.toString());return!!a&&1==a.nodeType&&(!b||a.tagName.toUpperCase()==b)}
78
+ function oc(a){return lc(a,"OPTION")?!0:lc(a,"INPUT")?(a=a.type.toLowerCase(),"checkbox"==a||"radio"==a):!1};v&&X&&fc(10);cc&&X&&gc(4);wa||X&&X&&gc(3.6);function pc(a,b){this.b={};this.a=[];this.f=0;var c=arguments.length;if(1<c){if(c%2)throw Error("Uneven number of arguments");for(var d=0;d<c;d+=2)this.set(arguments[d],arguments[d+1])}else if(a)if(a instanceof pc)for(c=qc(a),d=0;d<c.length;d++)this.set(c[d],a.get(c[d]));else for(d in a)this.set(d,a[d])}
79
+ function qc(a){if(a.f!=a.a.length){for(var b=0,c=0;b<a.a.length;){var d=a.a[b];Object.prototype.hasOwnProperty.call(a.b,d)&&(a.a[c++]=d);b++}a.a.length=c}if(a.f!=a.a.length){var e={};for(c=b=0;b<a.a.length;)d=a.a[b],Object.prototype.hasOwnProperty.call(e,d)||(a.a[c++]=d,e[d]=1),b++;a.a.length=c}return a.a.concat()}pc.prototype.get=function(a,b){return Object.prototype.hasOwnProperty.call(this.b,a)?this.b[a]:b};
80
+ pc.prototype.set=function(a,b){Object.prototype.hasOwnProperty.call(this.b,a)||(this.f++,this.a.push(a));this.b[a]=b};var rc={};function Z(a,b,c){ca(a)&&(a=va?a.g:a.h);a=new sc(a);!b||b in rc&&!c||(rc[b]={key:a,shift:!1},c&&(rc[c]={key:a,shift:!0}));return a}function sc(a){this.code=a}Z(8);Z(9);Z(13);var tc=Z(16),uc=Z(17),vc=Z(18);Z(19);Z(20);Z(27);Z(32," ");Z(33);Z(34);Z(35);Z(36);Z(37);Z(38);Z(39);Z(40);Z(44);Z(45);Z(46);Z(48,"0",")");Z(49,"1","!");Z(50,"2","@");Z(51,"3","#");Z(52,"4","$");Z(53,"5","%");Z(54,"6","^");Z(55,"7","&");Z(56,"8","*");Z(57,"9","(");Z(65,"a","A");Z(66,"b","B");Z(67,"c","C");Z(68,"d","D");
81
+ Z(69,"e","E");Z(70,"f","F");Z(71,"g","G");Z(72,"h","H");Z(73,"i","I");Z(74,"j","J");Z(75,"k","K");Z(76,"l","L");Z(77,"m","M");Z(78,"n","N");Z(79,"o","O");Z(80,"p","P");Z(81,"q","Q");Z(82,"r","R");Z(83,"s","S");Z(84,"t","T");Z(85,"u","U");Z(86,"v","V");Z(87,"w","W");Z(88,"x","X");Z(89,"y","Y");Z(90,"z","Z");var wc=Z(ya?{g:91,h:91}:xa?{g:224,h:91}:{g:0,h:91});Z(ya?{g:92,h:92}:xa?{g:224,h:93}:{g:0,h:92});Z(ya?{g:93,h:93}:xa?{g:0,h:0}:{g:93,h:null});Z({g:96,h:96},"0");Z({g:97,h:97},"1");
82
+ Z({g:98,h:98},"2");Z({g:99,h:99},"3");Z({g:100,h:100},"4");Z({g:101,h:101},"5");Z({g:102,h:102},"6");Z({g:103,h:103},"7");Z({g:104,h:104},"8");Z({g:105,h:105},"9");Z({g:106,h:106},"*");Z({g:107,h:107},"+");Z({g:109,h:109},"-");Z({g:110,h:110},".");Z({g:111,h:111},"/");Z(144);Z(112);Z(113);Z(114);Z(115);Z(116);Z(117);Z(118);Z(119);Z(120);Z(121);Z(122);Z(123);Z({g:107,h:187},"=","+");Z(108,",");Z({g:109,h:189},"-","_");Z(188,",","<");Z(190,".",">");Z(191,"/","?");Z(192,"`","~");Z(219,"[","{");
83
+ Z(220,"\\","|");Z(221,"]","}");Z({g:59,h:186},";",":");Z(222,"'",'"');var xc=new pc;xc.set(1,tc);xc.set(2,uc);xc.set(4,vc);xc.set(8,wc);(function(a){var b=new pc;p(qc(a),function(c){b.set(a.get(c).code,c)});return b})(xc);va&&X&&fc(12);var yc={"class":"className",readonly:"readOnly"},zc="allowfullscreen allowpaymentrequest allowusermedia async autofocus autoplay checked compact complete controls declare default defaultchecked defaultselected defer disabled ended formnovalidate hidden indeterminate iscontenteditable ismap itemscope loop multiple muted nohref nomodule noresize noshade novalidate nowrap open paused playsinline pubdate readonly required reversed scoped seamless seeking selected truespeed typemustmatch willvalidate".split(" ");aa("_",function(a,b){var c=null,d=b.toLowerCase();if("style"==d)return(c=a.style)&&!l(c)&&(c=c.cssText),c;if(("selected"==d||"checked"==d)&&oc(a)){if(!oc(a))throw new Yb(15,"Element is not selectable");b="selected";c=a.type&&a.type.toLowerCase();if("checkbox"==c||"radio"==c)b="checked";return nc(a,b)?"true":null}var e=lc(a,"A");if(lc(a,"IMG")&&"src"==d||e&&"href"==d)return(c=jc(a,d))&&(c=nc(a,d)),c;if("spellcheck"==d){c=jc(a,d);if(null!==c){if("false"==c.toLowerCase())return"false";if("true"==c.toLowerCase())return"true"}return nc(a,
84
+ d)+""}e=yc[b]||b;if(0<=ia(zc,d))return(c=null!==jc(a,b)||nc(a,e))?"true":null;try{var f=nc(a,e)}catch(h){}null==f||ca(f)?c=jc(a,b):c=f;return null!=c?c.toString():null});; return this._.apply(null,arguments);}).apply({navigator:typeof window!='undefined'?window.navigator:null,document:typeof window!='undefined'?window.document:null}, arguments);}