rubyjs 0.7.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (144) hide show
  1. data/README +128 -0
  2. data/Rakefile +9 -0
  3. data/bin/rubyjs +140 -0
  4. data/examples/ex1/Rakefile +7 -0
  5. data/examples/ex1/ex1.js +771 -0
  6. data/examples/ex1/ex1.rb +42 -0
  7. data/examples/ex1/index.html +7 -0
  8. data/examples/hw/Rakefile +9 -0
  9. data/examples/hw/hw.js +635 -0
  10. data/examples/hw/hw.rb +7 -0
  11. data/examples/hw/index.html +7 -0
  12. data/patches/parse_tree.rb.diff +34 -0
  13. data/rubyjs.gemspec +24 -0
  14. data/src/rubyjs.rb +4 -0
  15. data/src/rubyjs/code_generator.rb +474 -0
  16. data/src/rubyjs/compiler.rb +2007 -0
  17. data/src/rubyjs/debug_name_generator.rb +75 -0
  18. data/src/rubyjs/encoder.rb +171 -0
  19. data/src/rubyjs/eval_into.rb +59 -0
  20. data/src/rubyjs/lib/core.rb +1008 -0
  21. data/src/rubyjs/lib/json.rb +101 -0
  22. data/src/rubyjs/model.rb +287 -0
  23. data/src/rubyjs/name_generator.rb +71 -0
  24. data/src/rwt/AbsolutePanel.rb +161 -0
  25. data/src/rwt/DOM.Konqueror.rb +89 -0
  26. data/src/rwt/DOM.Opera.rb +65 -0
  27. data/src/rwt/DOM.rb +1044 -0
  28. data/src/rwt/Event.Opera.rb +35 -0
  29. data/src/rwt/Event.rb +429 -0
  30. data/src/rwt/HTTPRequest.IE6.rb +5 -0
  31. data/src/rwt/HTTPRequest.rb +74 -0
  32. data/src/rwt/Label.rb +164 -0
  33. data/src/rwt/Panel.rb +90 -0
  34. data/src/rwt/RootPanel.rb +16 -0
  35. data/src/rwt/UIObject.rb +495 -0
  36. data/src/rwt/Widget.rb +193 -0
  37. data/src/rwt/ported-from/AbsolutePanel.java +158 -0
  38. data/src/rwt/ported-from/DOM.java +571 -0
  39. data/src/rwt/ported-from/DOMImpl.java +426 -0
  40. data/src/rwt/ported-from/DOMImplOpera.java +82 -0
  41. data/src/rwt/ported-from/DOMImplStandard.java +234 -0
  42. data/src/rwt/ported-from/HTTPRequest.java +81 -0
  43. data/src/rwt/ported-from/HTTPRequestImpl.java +103 -0
  44. data/src/rwt/ported-from/Label.java +163 -0
  45. data/src/rwt/ported-from/Panel.java +99 -0
  46. data/src/rwt/ported-from/UIObject.java +614 -0
  47. data/src/rwt/ported-from/Widget.java +221 -0
  48. data/test/benchmark/bm_call_conv1.js +16 -0
  49. data/test/benchmark/bm_call_conv2.js +14 -0
  50. data/test/benchmark/bm_var_acc1.js +13 -0
  51. data/test/benchmark/bm_var_acc2.js +11 -0
  52. data/test/benchmark/bm_vm1_block.js +15 -0
  53. data/test/benchmark/bm_vm1_block.rb +15 -0
  54. data/test/benchmark/bm_vm1_const.js +13 -0
  55. data/test/benchmark/bm_vm1_const.rb +13 -0
  56. data/test/benchmark/bm_vm1_ensure.js +17 -0
  57. data/test/benchmark/bm_vm1_ensure.rb +15 -0
  58. data/test/benchmark/common.js +4 -0
  59. data/test/benchmark/common.rb +5 -0
  60. data/test/benchmark/params.yaml +7 -0
  61. data/test/browser.test.html +4059 -0
  62. data/test/browser.test.js +3225 -0
  63. data/test/common.Browser.rb +13 -0
  64. data/test/common.rb +8 -0
  65. data/test/gen_browser_test_suite.rb +129 -0
  66. data/test/gen_test_suite.rb +41 -0
  67. data/test/run_benchs.rb +58 -0
  68. data/test/run_tests.rb +22 -0
  69. data/test/test_args.rb +24 -0
  70. data/test/test_array.rb +26 -0
  71. data/test/test_case.rb +35 -0
  72. data/test/test_class.rb +55 -0
  73. data/test/test_eql.rb +9 -0
  74. data/test/test_exception.rb +61 -0
  75. data/test/test_expr.rb +12 -0
  76. data/test/test_hash.rb +29 -0
  77. data/test/test_if.rb +28 -0
  78. data/test/test_inspect.rb +10 -0
  79. data/test/test_lebewesen.rb +39 -0
  80. data/test/test_massign.rb +66 -0
  81. data/test/test_new.rb +12 -0
  82. data/test/test_range.rb +53 -0
  83. data/test/test_regexp.rb +22 -0
  84. data/test/test_send.rb +65 -0
  85. data/test/test_simple_output.rb +5 -0
  86. data/test/test_splat.rb +21 -0
  87. data/test/test_string.rb +51 -0
  88. data/test/test_yield.rb +152 -0
  89. data/utils/js/Makefile +9 -0
  90. data/utils/js/RunScript.class +0 -0
  91. data/utils/js/RunScript.java +73 -0
  92. data/utils/js/js.jar +0 -0
  93. data/utils/js/run.sh +3 -0
  94. data/utils/jsc/Makefile +7 -0
  95. data/utils/jsc/README +3 -0
  96. data/utils/jsc/RunScript.c +93 -0
  97. data/utils/jsc/run.sh +15 -0
  98. data/utils/yuicompressor/README +1 -0
  99. data/utils/yuicompressor/yuicompressor-2.2.5.jar +0 -0
  100. data/vendor/ParseTree-1.7.1-patched/History.txt +217 -0
  101. data/vendor/ParseTree-1.7.1-patched/Manifest.txt +22 -0
  102. data/vendor/ParseTree-1.7.1-patched/README.txt +110 -0
  103. data/vendor/ParseTree-1.7.1-patched/Rakefile +41 -0
  104. data/vendor/ParseTree-1.7.1-patched/bin/parse_tree_abc +89 -0
  105. data/vendor/ParseTree-1.7.1-patched/bin/parse_tree_audit +28 -0
  106. data/vendor/ParseTree-1.7.1-patched/bin/parse_tree_deps +62 -0
  107. data/vendor/ParseTree-1.7.1-patched/bin/parse_tree_show +49 -0
  108. data/vendor/ParseTree-1.7.1-patched/demo/printer.rb +20 -0
  109. data/vendor/ParseTree-1.7.1-patched/lib/composite_sexp_processor.rb +49 -0
  110. data/vendor/ParseTree-1.7.1-patched/lib/parse_tree.rb +1013 -0
  111. data/vendor/ParseTree-1.7.1-patched/lib/sexp.rb +235 -0
  112. data/vendor/ParseTree-1.7.1-patched/lib/sexp_processor.rb +330 -0
  113. data/vendor/ParseTree-1.7.1-patched/lib/unique.rb +15 -0
  114. data/vendor/ParseTree-1.7.1-patched/test/pt_testcase.rb +1221 -0
  115. data/vendor/ParseTree-1.7.1-patched/test/something.rb +53 -0
  116. data/vendor/ParseTree-1.7.1-patched/test/test_all.rb +13 -0
  117. data/vendor/ParseTree-1.7.1-patched/test/test_composite_sexp_processor.rb +69 -0
  118. data/vendor/ParseTree-1.7.1-patched/test/test_parse_tree.rb +216 -0
  119. data/vendor/ParseTree-1.7.1-patched/test/test_sexp.rb +291 -0
  120. data/vendor/ParseTree-1.7.1-patched/test/test_sexp_processor.rb +244 -0
  121. data/vendor/ParseTree-1.7.1-patched/validate.sh +31 -0
  122. data/vendor/ParseTree-1.7.1/History.txt +217 -0
  123. data/vendor/ParseTree-1.7.1/Manifest.txt +22 -0
  124. data/vendor/ParseTree-1.7.1/README.txt +110 -0
  125. data/vendor/ParseTree-1.7.1/Rakefile +41 -0
  126. data/vendor/ParseTree-1.7.1/bin/parse_tree_abc +89 -0
  127. data/vendor/ParseTree-1.7.1/bin/parse_tree_audit +28 -0
  128. data/vendor/ParseTree-1.7.1/bin/parse_tree_deps +62 -0
  129. data/vendor/ParseTree-1.7.1/bin/parse_tree_show +49 -0
  130. data/vendor/ParseTree-1.7.1/demo/printer.rb +20 -0
  131. data/vendor/ParseTree-1.7.1/lib/composite_sexp_processor.rb +49 -0
  132. data/vendor/ParseTree-1.7.1/lib/parse_tree.rb +1004 -0
  133. data/vendor/ParseTree-1.7.1/lib/sexp.rb +235 -0
  134. data/vendor/ParseTree-1.7.1/lib/sexp_processor.rb +330 -0
  135. data/vendor/ParseTree-1.7.1/lib/unique.rb +15 -0
  136. data/vendor/ParseTree-1.7.1/test/pt_testcase.rb +1221 -0
  137. data/vendor/ParseTree-1.7.1/test/something.rb +53 -0
  138. data/vendor/ParseTree-1.7.1/test/test_all.rb +13 -0
  139. data/vendor/ParseTree-1.7.1/test/test_composite_sexp_processor.rb +69 -0
  140. data/vendor/ParseTree-1.7.1/test/test_parse_tree.rb +216 -0
  141. data/vendor/ParseTree-1.7.1/test/test_sexp.rb +291 -0
  142. data/vendor/ParseTree-1.7.1/test/test_sexp_processor.rb +244 -0
  143. data/vendor/ParseTree-1.7.1/validate.sh +31 -0
  144. metadata +230 -0
data/README ADDED
@@ -0,0 +1,128 @@
1
+ ------------------------------------
2
+ RubyJS - Ruby to Javascript Compiler
3
+ ------------------------------------
4
+
5
+ COPYRIGHT
6
+
7
+ Copyright (c) 2007, 2008 by Michael Neumann (mneumann@ntecs.de).
8
+ All rights reserved.
9
+
10
+ ABOUT
11
+
12
+ RubyJS translates Ruby code into Javascript code. NOTE that it executes the
13
+ Ruby code before it translates it into Javascript. This has the advantage of
14
+ being able to (mis-)use all of Ruby's meta-programming tricks in the global
15
+ scope (i.e. for defining classes and methods, NOT within methods!).
16
+
17
+ REQUIREMENTS
18
+
19
+ * ParseTree 1.7.1 (with patches) -> included in vendor/
20
+
21
+ MAPPING
22
+
23
+ The mapping from Ruby objects (left) to Javascript values (right) are given below.
24
+
25
+ true -> true (class Boolean)
26
+ false -> false (class Boolean)
27
+ nil -> nil (a special variable!)
28
+ 1, 1.2 -> Javascript Number (unboxed)
29
+ "String" -> immutable Javascript String (unboxed)
30
+ /regexp/ -> /regexp/ (unboxed)
31
+ [array] -> [array] (unboxed)
32
+ {hash} -> Javascript Hash object (unboxed, but indirect)
33
+ iterator -> function (unboxed)
34
+ 1..2 -> custom Range object
35
+
36
+ BUGS
37
+
38
+ --
39
+ Debug mode sometimes generates code that does not run!
40
+
41
+ --
42
+ Spidermonkey doesn't run all tests.
43
+
44
+ TODO
45
+
46
+ --
47
+ Issue a warning whenever a destructive Ruby string method like gsub!
48
+ is used. The reason behind this warning is that, due to efficience
49
+ reasons, Ruby strings (which are mutable) are mapped to immutable
50
+ Javascript strings.
51
+
52
+ --
53
+ Command-line switch that doesn't call methods for some operators.
54
+ Most important ones are "+", "-" and "/". This is of course an unsafe
55
+ operation as you could define a method "+" in your own class. For
56
+ heavy math operations, this of course increases performance a lot!
57
+
58
+ --
59
+ Command-line switch that removes unused methods. This is possible, as
60
+ we record the names of all (possibly) called methods. This of course
61
+ disables send() support. This switch has the potential to reduce the
62
+ size of the generated Javascript significantly (which also reduces
63
+ memory consumption on the client side). For this to work, we have to
64
+ generate a call chain, which method name calls which other method
65
+ names. This works only on method names, as we can't infer the used
66
+ classes.
67
+
68
+ --
69
+ Command-line switch that disables the generation of name-information
70
+ used by methods like send(), instance_variables(), methods() or
71
+ respond_to?(). This makes it hard to decompile the Javascript code
72
+ back to Ruby or assign meaningful names.
73
+
74
+ LIMITATIONS
75
+
76
+ --
77
+ Module's are mapped to Classes for now.
78
+
79
+ --
80
+ You can't inherit from core classes like Array, String, Regexp and so
81
+ on. It's easy to allow by adding one further indirection, e.g. in that
82
+ on object creation an attribute "m" is assigned, which contains a hash
83
+ of all methods of that object, and on method call use "obj.m.method".
84
+ As long as this limitation is no problem, I go the way via prototypes,
85
+ which should be slightly more efficient.
86
+
87
+ --
88
+ You are not allowed to redefine the classes name method:
89
+
90
+ class MyClass
91
+ def self.name
92
+ # NOT ALLOWED!!!
93
+ end
94
+ end
95
+
96
+ The same is true for other methods like ancestors, superclass,
97
+ instance_methods, methods. But you wouldn't do that anyways in Ruby,
98
+ so that's no big restriction!
99
+
100
+ --
101
+ Constant assignment inside methods is forbidden. This is due to
102
+ using static constant lookup. Constant assignment inside the class
103
+ scope or module scope is not affected, as this is executed by the
104
+ Ruby interpreter.
105
+ Constants are either inlined in the case it is a value type (Fixnum, Float)
106
+ or a reference is generated (i.e. a variable holding it's value + a name).
107
+ References are only generated on demand, i.e. only when a constant is
108
+ accessed.
109
+
110
+ --
111
+ +break+ inside of loops cannot have arguments in RubyJS:
112
+
113
+ # RubyJS
114
+ while true
115
+ break 1 # => CompileTime Error
116
+ end
117
+
118
+ This could be accomplished, by introducing a "return loop"
119
+ variable for each while loop, and setting this variable
120
+ in "break".
121
+
122
+ A loop break cannot occur as expression. This could be accomplished
123
+ by using a throw instead of break and surrounding the loop by a catch.
124
+
125
+ The same applies for +next+!
126
+
127
+ --
128
+ Methods can be called regardless of their privacy (private, protected)
data/Rakefile ADDED
@@ -0,0 +1,9 @@
1
+ task :gen_tests do
2
+ ruby "test/gen_browser_test_suite.rb"
3
+ end
4
+
5
+ task :run_tests do
6
+ ruby "test/run_tests.rb"
7
+ end
8
+
9
+ task :default => :gen_tests
data/bin/rubyjs ADDED
@@ -0,0 +1,140 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'optparse'
4
+ require 'ostruct'
5
+ require 'rubygems'
6
+
7
+ options = OpenStruct.new
8
+ options.load_path = []
9
+ options.library = []
10
+ options.platform = []
11
+ options.outputs = []
12
+ options.main = nil
13
+ options.code = nil
14
+ options.append = ""
15
+ options.debug = false
16
+ options.opts = []
17
+
18
+ OPTS = %w(NoArgumentArityChecks NoMethodMissing OptimizeArithOps PrettyPrint)
19
+
20
+ def show_options
21
+ puts "Compiler Options:"
22
+ puts " --opt NoArgumentArityChecks:: Disable generation of arity checking code"
23
+ puts " --opt NoMethodMissing:: Disable method_missing functionality"
24
+ puts " --opt OptimizeArithOps:: Enable native +-*/ operators"
25
+ puts " --opt PrettyPrint:: Output more readable code"
26
+ end
27
+
28
+ opts = OptionParser.new do |opts|
29
+ opts.banner = "Usage: rubyjs_gen [options] [file, [file, ...]]"
30
+ opts.on("-r", "--require LIBRARY",
31
+ "Require the LIBRARY before executing your script") do |lib|
32
+ options.library << lib
33
+ end
34
+ opts.on("-I", "--load-path DIRECTORY", "Specifies load path") do |lib|
35
+ options.load_path << lib
36
+ end
37
+ opts.on("-P", "--platform PLATFORM", "Specifies platform") do |plat|
38
+ options.platform << plat
39
+ end
40
+ opts.on("-m", "--main CLASSNAME", "Entry point") do |main|
41
+ raise "only one entry point allowed" if options.main
42
+ options.main = main
43
+ end
44
+ opts.on("-e", "--eval STRING", "Eval code") do |code|
45
+ raise "only one code allowed" if options.code
46
+ options.code = code
47
+ end
48
+ opts.on("-a", "--append JSCODE", "Append Javascript code") do |append|
49
+ options.append << append
50
+ options.append << "\n"
51
+ end
52
+ opts.on("-o", "--output FILE", "Filename to write output to") do |out|
53
+ options.outputs << out
54
+ end
55
+ opts.on("-O", "--opt OPTION", "Set a specific compiler option") do |out|
56
+ if OPTS.include?(out)
57
+ options.opts << out
58
+ else
59
+ puts "WRONG option"
60
+ show_options()
61
+ exit 1
62
+ end
63
+ end
64
+ opts.on("--show-options", "--show-options", "Show all compiler options") do |out|
65
+ show_options()
66
+ exit
67
+ end
68
+ opts.on("-d", "--debug", "Turn on debug mode") do |out|
69
+ options.debug = true
70
+ end
71
+ opts.on_tail("-h", "--help", "Show this message") do
72
+ puts opts
73
+ exit
74
+ end
75
+ end
76
+
77
+ args = ARGV.dup
78
+ opts.parse!(args)
79
+
80
+ # output to STDOUT by default
81
+ if options.outputs.empty?
82
+ options.outputs << "-"
83
+ end
84
+
85
+ if args.empty? and !options.code
86
+ puts opts
87
+ exit
88
+ end
89
+
90
+ src_dir = File.expand_path(File.join(File.dirname(__FILE__), "..", "src"))
91
+ options.load_path << src_dir
92
+ options.load_path << File.join(src_dir, "rubyjs", "lib")
93
+
94
+ $RUBYJS__LOAD_PATH = options.load_path.map {|i| File.expand_path(i)}
95
+ $RUBYJS__LOAD_PATH << "."
96
+ $RUBYJS__PLATFORM = options.platform
97
+ $RUBYJS = true # to distinguish between Ruby and RubyJS
98
+ $RUBYJS__DEBUG = options.debug
99
+ $RUBYJS__OPTS = options.opts
100
+
101
+ # load RubyJS
102
+ $LOAD_PATH.unshift(src_dir)
103
+ require 'rubyjs'
104
+
105
+ # process requires
106
+
107
+ eval_into(RubyJS::Environment) do |eval|
108
+ $RUBYJS__LOAD_PATH.unshift File.join(src_dir, "rubyjs", "lib")
109
+ require 'core'
110
+ $RUBYJS__LOAD_PATH.shift
111
+
112
+ options.library.each do |lib|
113
+ require lib
114
+ end
115
+
116
+ eval.call(options.code) if options.code
117
+
118
+ args.each do |file|
119
+ if file == '-'
120
+ eval.call(STDIN.read)
121
+ else
122
+ eval.call(File.read(file))
123
+ end
124
+ end
125
+ end
126
+
127
+ gen = CodeGenerator.new
128
+ str = ""
129
+ str << gen.generate()
130
+ str << gen.encode("function main() { return #<#{options.main}>.#<m:main>.apply(#<#{options.main}>, arguments); }") if options.main
131
+ str << options.append
132
+
133
+ options.outputs.each do |outname|
134
+ if outname == "-"
135
+ STDOUT << str
136
+ STDOUT.flush
137
+ else
138
+ File.open(outname, 'w+') {|f| f << str }
139
+ end
140
+ end
@@ -0,0 +1,7 @@
1
+ RUBYJS_BIN = File.join(File.dirname(__FILE__), "..", "..", "bin", "rubyjs")
2
+
3
+ task "ex1.js" do
4
+ sh "#{RUBYJS_BIN} -m Main -o ex1.js ex1.rb"
5
+ end
6
+
7
+ task :default => "ex1.js"
@@ -0,0 +1,771 @@
1
+ // declare nil
2
+ function NilClass() {}
3
+
4
+ // FIXME: remove
5
+ NilClass.prototype.toString = function() { return "nil"; };
6
+ nil = new NilClass();
7
+
8
+ //
9
+ // define a null-function (used by HTTPRequest)
10
+ //
11
+ function a$o()
12
+ {
13
+ }
14
+
15
+ //
16
+ // r: return value
17
+ // s: scope (method scope)
18
+ //
19
+ function a$c(r,s)
20
+ {
21
+ this.a$a = r;
22
+ this.a$b = s;
23
+ return this;
24
+ }
25
+
26
+ //
27
+ // Throw in Javascript is a statement.
28
+ //
29
+ // This function can be used to overcome
30
+ // that limitation.
31
+ //
32
+ function a$p(x) { throw(x); }
33
+
34
+ function a$b(a)
35
+ {
36
+ // TODO
37
+ return a;
38
+ }
39
+
40
+ //
41
+ // helper function for multiple assignment in
42
+ // iterator parameters.
43
+ //
44
+ // undefined -> []
45
+ // 1 -> [1]
46
+ // [1] -> [[1]]
47
+ // [] -> [[]]
48
+ // [1,2] -> [1,2]
49
+ //
50
+ function a$k(a)
51
+ {
52
+ if (a===undefined) return [];
53
+ if (a.constructor!=Array || a.length<2) return [a];
54
+ return a;
55
+ }
56
+
57
+ //
58
+ // Call the method in the superclass.
59
+ //
60
+ // As super is used quite rarely, we dont optimize for it.
61
+ //
62
+ // object, method, iterator, arguments
63
+ //
64
+ function a$j(o, m, i, a)
65
+ {
66
+ var r = o[m]; // method in current class
67
+ var c = o.a$g.a$e;
68
+ while (r === c.a$d.prototype[m])
69
+ c = c.a$e;
70
+ return c.a$d.prototype[m].apply(o, [i].concat(a));
71
+ }
72
+
73
+ function a$q(o, m, a)
74
+ {
75
+ var r = o[m]; // method in current class
76
+ var c = o.a$g.a$e;
77
+ while (r === c.a$d.prototype[m])
78
+ c = c.a$e;
79
+ return c.a$d.prototype[m].apply(o, a);
80
+ }
81
+
82
+ //
83
+ // Whether o.kind_of?(c)
84
+ //
85
+ function a$i(o, c)
86
+ {
87
+ var k,i,m;
88
+
89
+ k = o.a$g;
90
+
91
+ while (k != nil)
92
+ {
93
+ if (k === c) return true;
94
+
95
+ // check included modules
96
+ m = k.a$j;
97
+ for (i=0; i<m.length; i++)
98
+ {
99
+ if (m[i] === c) return true;
100
+ }
101
+
102
+ k = k.a$e;
103
+ }
104
+
105
+ return false;
106
+ }
107
+
108
+ function a$m(c)
109
+ {
110
+ for (var i=0; i<c.length; i++)
111
+ a$e(c[i]);
112
+ }
113
+
114
+ function a$e(c)
115
+ {
116
+ var k,i;
117
+
118
+ //
119
+ // include modules
120
+ //
121
+ // do that before, because when assigning instance methods of
122
+ // the super class, a check for === undefined prevents this method
123
+ // from being overwritten.
124
+ //
125
+ for (i=0; i<c.a$j.length; i++)
126
+ {
127
+ for (k in c.a$j[i].a$d.prototype)
128
+ {
129
+ if (c.a$d.prototype[k]===undefined)
130
+ {
131
+ c.a$d.prototype[k] = c.a$j[i].a$d.prototype[k];
132
+ }
133
+ }
134
+ }
135
+
136
+ // instance methods
137
+ if (c.a$e != nil)
138
+ {
139
+ for (k in c.a$e.a$d.prototype)
140
+ {
141
+ if (c.a$d.prototype[k]===undefined)
142
+ {
143
+ c.a$d.prototype[k] = c.a$e.a$d.prototype[k];
144
+ }
145
+ }
146
+ }
147
+
148
+ // inherit class methods from superclass
149
+ if (c.a$e != nil)
150
+ {
151
+ for (k in c.a$e)
152
+ {
153
+ if (c[k]===undefined)
154
+ {
155
+ c[k] = c.a$e[k];
156
+ }
157
+ }
158
+ }
159
+
160
+ // set class for instanciated objects
161
+ c.a$d.prototype.a$g = c;
162
+ }
163
+
164
+ function a$d(h)
165
+ {
166
+ var c,k,i;
167
+ c = h.a$g || $b.$a(nil, h.a$e, h.a$c, h.a$d);
168
+
169
+ if (h.a$h)
170
+ {
171
+ for (k in h.a$h)
172
+ {
173
+ c.a$d.prototype[k] = h.a$h[k];
174
+ }
175
+ }
176
+
177
+ if (h.a$f)
178
+ {
179
+ for (k in h.a$f) c[k] = h.a$f[k];
180
+ }
181
+
182
+ if (h.a$j)
183
+ {
184
+ for (i=0; i<h.a$j.length; i++)
185
+ {
186
+ c.a$j.push(h.a$j[i]);
187
+ }
188
+ }
189
+
190
+ return c;
191
+ }
192
+
193
+ function a$a(_a, _b, _c, _d)
194
+ {
195
+ this.a$e = _b;
196
+ this.a$c = _c;
197
+ this.a$d = _d;
198
+ this.a$j = [];
199
+ this.a$g = _a;
200
+ return this;
201
+ }
202
+
203
+ a$a.$e = function() { return "MetaClass"; };
204
+ a$a.$z = function() { return this; };
205
+ //
206
+ // Generates a new method_missing function
207
+ // for the given symbol +sym+.
208
+ //
209
+ var a$r = {};
210
+ function a$s(sym)
211
+ {
212
+ if (!a$r[sym])
213
+ {
214
+ var fn = function() {
215
+ return a$t(this, arguments, sym);
216
+ };
217
+ fn.a$i = true;
218
+ a$r[sym] = fn;
219
+ }
220
+
221
+ return a$r[sym];
222
+ }
223
+
224
+ function a$t(obj, args, sym)
225
+ {
226
+ var i, a;
227
+ a = [];
228
+ if (args.length == 0)
229
+ a.push(nil);
230
+ else
231
+ a.push(args[0]);
232
+
233
+ a.push(a$h[sym] || nil);
234
+
235
+ for (i=1; i<args.length; i++)
236
+ a.push(args[i]);
237
+
238
+ var m = obj.$n;
239
+
240
+ if (m)
241
+ return m.apply(obj, a);
242
+ else
243
+ throw "FATAL: method_missing missing";
244
+ }
245
+
246
+ //
247
+ // assign method_missing stubs
248
+ //
249
+ function a$n(c)
250
+ {
251
+ var i;
252
+
253
+ for (i in a$h)
254
+ {
255
+ if (c.a$d.prototype[i]===undefined)
256
+ {
257
+ c.a$d.prototype[i] = a$s(i);
258
+ }
259
+ }
260
+
261
+ if (c.a$e != nil)
262
+ {
263
+ for (i in c.a$e)
264
+ {
265
+ if (c[i]===undefined)
266
+ {
267
+ c[i] = a$s(i);
268
+ }
269
+ }
270
+ }
271
+ }
272
+ // method map
273
+ var a$h = {"$cG":"getClientY","$u":"puts","$cp":"addMouseWheelListener","$cX":"checkWidgetParent","$bG":"createTD","$cf":"get","$c4":"sub","$cQ":"getTarget","$bW":"getChild","$bb":"setInnerHTML","$cw":"to_i","$cD":"getCtrlKey","$db":"pop","$W":"setTitle","$bK":"createInputCheck","$cI":"getToElement","$1":"getStyleElement","$H":"last","$bP":"createTH","$b2":"getPropertyBoolean","$ae":"getEventsSunk","$cS":"getButton","$S":"<<","$p":"__send","$cg":"addClickListener","$0":"isVisible","$bM":"createForm","$bQ":"getChildIndex","$h":"kind_of?","$m":"instance_of?","$N":"<=","$bD":"setOptionText","$aE":"onLoad","$cc":"mapEvent","$dd":"push","$bR":"createCol","$bt":"windowGetClientWidth","$J":"exclude_end?","$cs":"onClick","$cu":"removeMouseListener","$U":"message","$aZ":"collect","$4":"setStyleAttribute","$al":"getOffsetWidth","$bc":"getElementById","$cP":"getAltKey","$bS":"createIFrame","$o":"to_s","$cd":"main","$b8":"changeToStaticPositioning","$a9":"values","$bk":"createInputText","$Z":"removeAttribute","$cb":"getType","$5":"removeStyleName","$c8":"ljust","$c0":"getWidgetTop","$bs":"createTR","$bu":"createCaption","$aI":"isAttached","$O":"end","$cF":"preventDefault","$s":"proc","$bX":"getCapture","$c2":"setWidgetPosition","$r":"respond_to?","$bm":"getStyleAttributeInt","$bh":"compare","$c5":"size","$bf":"releaseCapture","$x":"loop","$cT":"getRepeat","$X":"setAttribute","$_":"setProperty","$B":"hash","$be":"getNextSibling","$7":"getAbsoluteLeft","$e":"name","$a2":"map","$bv":"setImgSrc","$co":"setText","$ag":"getPropertyInt","$a8":"[]=","$df":"reverse!","$aB":"setLayoutData","$cH":"setKeyCode","$aH":"setParent","$cL":"dispatch","$aV":"^","$aC":"onAttach","$ba":"new_from_jsobject","$a0":"call","$cO":"getMouseWheelVelocityY","$cJ":"getMetaKey","$bo":"getInnerText","$b4":"getStyleAttributeBoolean","$aQ":">=","$aX":"+@","$c_":"gsub","$ac":"sinkEvents","$bA":"windowGetClientHeight","$ct":"addMouseListener","$bO":"createLabel","$a_":"new_from_key_value_list","$cB":"getScreenX","$ax":"onUnload","$ch":"setWordWrap","$aM":"createDiv","$ca":"disown","$dh":"getBodyElement","$de":"unshift","$cR":"getShiftKey","$b6":"appendChild","$l":"empty?","$aP":"downto","$cC":"getScreenY","$cr":"removeClickListener","$d":"__invoke","$bZ":"createTable","$a5":"keys","$c9":"index","$cN":"getTypeString","$aD":"setEventListener","$b":"allocate","$aT":"%","$da":"each_with_index","$9":"strip","$a":"new","$aq":"&","$w":"send","$c$":"reverse","$cW":"getWidgetLeft","$bz":"createFieldSet","$bd":"getStyleAttribute","$L":"include?","$c1":"setWidgetPositionToStatic","$at":"setPixelSize","$aN":"setInnerText","$bq":"getImgSrc","$aY":"*","$au":"+","$ck":"delete","$f":"===","$c":"initialize","$ap":"unsinkEvents","$bH":"createInputPassword","$j":"raise","$ci":"removeMouseWheelListener","$v":"each","$aR":"-","$bw":"createTBody","$b1":"getChildCount","$b5":"insertChild","$a7":"join","$an":"setElement","$8":"getProperty","$aU":"times","$cM":"toString","$n":"method_missing","$z":"class","$cm":"getWordWrap","$aS":"/","$aF":"getParent","$t":"p","$af":"getOffsetHeight","$b$":"adopt","$bn":"createInputRadio","$i":"inspect","$bJ":"createTFoot","$cZ":"addStatic","$b3":"createSpan","$cn":"getText","$bY":"isOrHasChild","$K":"begin","$ak":"getElement","$bi":"createColGroup","$aK":"remove","$Q":"succ","$y":"is_a?","$c7":"=~","$cK":"getKeyCode","$b_":"clear","$3":"setHeight","$D":"==","$dc":"to_ary","$bC":"insertBefore","$bl":"createInput","$by":"createLegend","$bV":"createImg","$aJ":"removeFromParent","$av":"onDetach","$am":"setStyleName","$cx":"to_splat","$ai":"getTitle","$bL":"getAttribute","$dg":"dup","$bN":"createButton","$aj":"getStyleName","$aW":"-@","$a1":"find_all","$T":"member?","$C":"method","$aL":"onBrowserEvent","$br":"setAbsolutePixelPosition","$a6":"[]","$ce":"__init","$bF":"getInnerHTML","$a3":"reject","$cU":"getFromElement","$A":"tap","$a4":"select","$bp":"setCapture","$aa":"setSize","$c6":"rjust","$R":"to_a","$bI":"createTextArea","$ad":"|","$c3":"addPositioned","$bT":"createOptions","$F":"first","$M":"<","$a$":"length","$b0":"createTHead","$bU":"createAnchor","$az":"getLayoutData","$6":"styleNameHelper","$bE":"removeChild","$ao":"replace","$ar":"~","$2":"getAbsoluteTop","$$":"split","$bB":"getFirstChild","$as":"setVisible","$P":">","$g":"eql?","$ab":"setWidth","$b7":"createSelect","$b9":"add","$bx":"scrollIntoView","$aO":"upto","$bj":"createElement","$q":"nil?","$ay":"removeEventListener","$cE":"getClientX","$ah":"addStyleName","$k":"shift","$cv":"to_f"};
274
+ var a$f = {};
275
+ for (var i in a$h) a$f[a$h[i]] = i;
276
+ $b = a$d({a$e: nil,a$f: {$a: function(_e,_a,_b,_c){var self,_d;self=this;try{if(arguments.length<3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));if(arguments.length>4)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 3)'));if(_c==null)_c=nil;;if((_d=_c,_d===false||_d===nil)){_c=(function() {})};return new self.a$d($b, _a, _b, _c);}catch(_f){if(_f instanceof a$c && (!_f.a$b || _f.a$b==2))return _f.a$a;throw(_f)}}},a$c: "Class",a$g: new a$a(a$a, nil, "Class", a$a),a$h: {$e: function(){var self;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;return self.a$c},$a: function(_c){var self,_a,_b,_d,_e,_f;_f=nil;self=this;_d=_c==null?nil:_c;try{_a=[];for(_b=1;_b<arguments.length;_b++)_a.push(arguments[_b]);;_e=self.$b();_e.$d(_d,'$c',a$b(_a));_f=_e;return _f}catch(_g){if(_g instanceof a$c && (!_g.a$b || _g.a$b==0))return _g.a$a;throw(_g)}},$f: function(_d,_a){var self,_b,_c;_c=nil;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;_c=(_b=self.$g(nil,_a), (_b!==false&&_b!==nil) ? _b : (_a.$h(nil,self)));return _c}catch(_e){if(_e instanceof a$c && (!_e.a$b || _e.a$b==1))return _e.a$a;throw(_e)}},$b: function(){var self;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;return (new self.a$d())},$i: function(){var self;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;return self.a$c}}});a$e($b);$i = a$d({a$j: [],a$e: nil,a$c: "Kernel",a$h: {$p: function(_d,_a){var self,_b,_c,_e;self=this;_e=_d==null?nil:_d;try{if(arguments.length<2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));_b=[];for(_c=2;_c<arguments.length;_c++)_b.push(arguments[_c]);;
277
+ var m = self[a$f[_a]];
278
+ if (m)
279
+ return m.apply(self, [_e].concat(_b));
280
+ else
281
+ return self.$n.apply(self, [_e].concat([_a]).concat(_b));}catch(_f){if(_f instanceof a$c && (!_f.a$b || _f.a$b==4))return _f.a$a;throw(_f)}},$n: function(_d,_a){var self,_b,_c,_e,_f;_f=nil;self=this;_e=_d==null?nil:_d;try{if(arguments.length<2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));_b=[];for(_c=2;_c<arguments.length;_c++)_b.push(arguments[_c]);;_f=self.$j(nil,$g,("undefined method `" + (_a).$o() + ("' for ").$o() + (self.$i()).$o()));return _f}catch(_g){if(_g instanceof a$c && (!_g.a$b || _g.a$b==3))return _g.a$a;throw(_g)}},$j: function(){var self,_a,_b,_c,_d;self=this;_a=[];for(_b=1;_b<arguments.length;_b++)_a.push(arguments[_b]);;_c=((_b=_a.$l(),_b!==false&&_b!==nil)?$c.$a(nil,""):(_d=_a.$k(),((_b=_d.$h(nil,$b),_b!==false&&_b!==nil)?_d.$d(nil,'$a',a$b(_a)):((_b=_d.$m(nil,$f),_b!==false&&_b!==nil)?((_b=_a.$l(),_b!==false&&_b!==nil)?_d:$a.$a(nil,"to many arguments given to raise")):((_b=_d.$m(nil,$e),_b!==false&&_b!==nil)?((_b=_a.$l(),_b!==false&&_b!==nil)?$c.$a(nil,_d):$a.$a(nil,"to many arguments given to raise")):$d.$a(nil,"exception class/object expected"))))));throw(_c)},$q: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=false;return _a},$s: function(_a){var self,_b,_c;_c=nil;self=this;_b=_a==null?nil:_a;try{if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_c=$h.$a(_b);return _c}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==6))return _d.a$a;throw(_d)}},$r: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;
282
+ var m = a$f[_a];
283
+ return (m !== undefined && self[m] !== undefined && !self[m].a$i)}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==5))return _c.a$a;throw(_c)}},$t: function(){var self,_a,_b,_f;_f=nil;self=this;_a=[];for(_b=1;_b<arguments.length;_b++)_a.push(arguments[_b]);;_a.$v(function(_c){var _d;var _e=nil;_d=_c==null?nil:_c;_e=self.$u(nil,_d.$i());return _e});_f=nil;return _f},$d: function(_c,_a,_b){var self,_d;self=this;_d=_c==null?nil:_c;try{if(arguments.length!=3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));;
284
+ var m = self[_a];
285
+ if (m)
286
+ return m.apply(self, [_d].concat(_b));
287
+ else
288
+ return self.$n.apply(self,
289
+ [_d].concat([a$h[_a]]).concat(_b));}catch(_e){if(_e instanceof a$c && (!_e.a$b || _e.a$b==7))return _e.a$a;throw(_e)}},$x: function(_a){var self,_b;_b=nil;self=this;try{if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;while(true){_a()};_b=nil;;return _b}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==10))return _c.a$a;throw(_c)}},$u: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;_a=_a.$o();alert(_a); return nil}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==9))return _c.a$a;throw(_c)}},$w: function(_d,_a){var self,_b,_c,_e;self=this;_e=_d==null?nil:_d;try{if(arguments.length<2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));_b=[];for(_c=2;_c<arguments.length;_c++)_b.push(arguments[_c]);;
290
+ var m = self[a$f[_a]];
291
+ if (m)
292
+ return m.apply(self, [_e].concat(_b));
293
+ else
294
+ return self.$n.apply(self, [_e].concat([_a]).concat(_b));}catch(_f){if(_f instanceof a$c && (!_f.a$b || _f.a$b==8))return _f.a$a;throw(_f)}}}});$k = a$d({a$j: [$i],a$e: nil,a$c: "Object",a$h: {$h: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return a$i(self, _a)}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==11))return _c.a$a;throw(_c)}},$y: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return a$i(self, _a)}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==12))return _c.a$a;throw(_c)}},$z: function(){var self;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;return self.a$g},$g: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return (self.constructor == _a.constructor && self == _a)}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==13))return _c.a$a;throw(_c)}},$B: function(){var self;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;return self.toString()},$A: function(_a){var self,_b;_b=nil;self=this;try{if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a(self);_b=self;return _b}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==14))return _c.a$a;throw(_c)}},$o: function(){var self;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;return self.toString()},$c: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=nil;return _a},$C: function(_c,_a){var self,_b;_b=nil;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;_b=$j.$a(nil,self,_a);return _b}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==15))return _d.a$a;throw(_d)}},$f: function(_d,_a){var self,_b,_c;_c=nil;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;_c=(_b=self.$g(nil,_a), (_b!==false&&_b!==nil) ? _b : (self.$h(nil,_a)));return _c}catch(_e){if(_e instanceof a$c && (!_e.a$b || _e.a$b==16))return _e.a$a;throw(_e)}},$m: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return (self.a$g === _a)}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==17))return _c.a$a;throw(_c)}},$i: function(){var self;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;return self.toString()}}});$l = a$d({a$j: [],a$e: $k,a$c: "Range",a$h: {$D: function(_e,_a){var self,_b,_c,_d;_d=nil;self=this;if(self.$E==null)self.$E=nil;if(self.$G==null)self.$G=nil;if(self.$I==null)self.$I=nil;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;if (self.constructor != _a.constructor) return false;;_d=(_b=self.$E.$D(nil,_a.$F()), (_b!==false&&_b!==nil) ? ((_c=self.$G.$D(nil,_a.$H()), (_c!==false&&_c!==nil) ? (self.$I.$D(nil,_a.$J())) : _c)) : _b);return _d}catch(_f){if(_f instanceof a$c && (!_f.a$b || _f.a$b==18))return _f.a$a;throw(_f)}},$K: function(){var self,_a;_a=nil;self=this;if(self.$E==null)self.$E=nil;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$E;return _a},$g: function(_e,_a){var self,_b,_c,_d;_d=nil;self=this;if(self.$E==null)self.$E=nil;if(self.$G==null)self.$G=nil;if(self.$I==null)self.$I=nil;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;if (self.constructor != _a.constructor) return false;;_d=(_b=self.$E.$g(nil,_a.$F()), (_b!==false&&_b!==nil) ? ((_c=self.$G.$g(nil,_a.$H()), (_c!==false&&_c!==nil) ? (self.$I.$D(nil,_a.$J())) : _c)) : _b);return _d}catch(_f){if(_f instanceof a$c && (!_f.a$b || _f.a$b==19))return _f.a$a;throw(_f)}},$J: function(){var self,_a;_a=nil;self=this;if(self.$I==null)self.$I=nil;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$I;return _a},$H: function(){var self,_a;_a=nil;self=this;if(self.$G==null)self.$G=nil;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$G;return _a},$o: function(){var self,_b,_a;_a=nil;self=this;if(self.$E==null)self.$E=nil;if(self.$G==null)self.$G=nil;if(self.$I==null)self.$I=nil;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;if((_b=self.$I,_b!==false&&_b!==nil)){_a=("" + (self.$E).$o() + ("...").$o() + (self.$G).$o())}else{_a=("" + (self.$E).$o() + ("..").$o() + (self.$G).$o())};return _a},$v: function(_c){var self,_a,_b,_d;_d=nil;self=this;if(self.$E==null)self.$E=nil;if(self.$G==null)self.$G=nil;if(self.$I==null)self.$I=nil;try{if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$E;if((_b=self.$E.$P(nil,self.$G),_b!==false&&_b!==nil)){return nil};if((_b=self.$I,_b!==false&&_b!==nil)){while((_b=_a.$M(nil,self.$G),_b!==false&&_b!==nil)){_c(_a);_a=_a.$Q()};_d=nil;}else{while((_b=_a.$N(nil,self.$G),_b!==false&&_b!==nil)){_c(_a);_a=_a.$Q()};_d=nil;};return _d}catch(_e){if(_e instanceof a$c && (!_e.a$b || _e.a$b==22))return _e.a$a;throw(_e)}},$O: function(){var self,_a;_a=nil;self=this;if(self.$G==null)self.$G=nil;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$G;return _a},$F: function(){var self,_a;_a=nil;self=this;if(self.$E==null)self.$E=nil;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$E;return _a},$L: function(_d,_a){var self,_b,_c;_c=nil;self=this;if(self.$E==null)self.$E=nil;if(self.$G==null)self.$G=nil;if(self.$I==null)self.$I=nil;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;if((_b=_a.$M(nil,self.$E),_b!==false&&_b!==nil)){return false};if((_b=self.$I,_b!==false&&_b!==nil)){_c=_a.$M(nil,self.$G)}else{_c=_a.$N(nil,self.$G)};return _c}catch(_e){if(_e instanceof a$c && (!_e.a$b || _e.a$b==21))return _e.a$a;throw(_e)}},$c: function(_f,_a,_b,_c){var self,_d,_e;_e=nil;self=this;try{if(arguments.length<3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));if(arguments.length>4)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 3)'));if(_c==null)_c=false;;(_d=[_a,_b],self.$E=_d[0]==null?nil:_d[0],self.$G=_d[1]==null?nil:_d[1],_d);_e=self.$I=((_d=_c,_d!==false&&_d!==nil)?true:false);return _e}catch(_g){if(_g instanceof a$c && (!_g.a$b || _g.a$b==20))return _g.a$a;throw(_g)}},$f: function(_d,_a){var self,_b,_c;_c=nil;self=this;if(self.$E==null)self.$E=nil;if(self.$G==null)self.$G=nil;if(self.$I==null)self.$I=nil;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;if((_b=_a.$M(nil,self.$E),_b!==false&&_b!==nil)){return false};if((_b=self.$I,_b!==false&&_b!==nil)){_c=_a.$M(nil,self.$G)}else{_c=_a.$N(nil,self.$G)};return _c}catch(_e){if(_e instanceof a$c && (!_e.a$b || _e.a$b==23))return _e.a$a;throw(_e)}},$R: function(){var self,_a,_b,_c;self=this;if(self.$E==null)self.$E=nil;if(self.$G==null)self.$G=nil;if(self.$I==null)self.$I=nil;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=[];if((_b=self.$E.$P(nil,self.$G),_b!==false&&_b!==nil)){return _a};_c=self.$E;if((_b=self.$I,_b!==false&&_b!==nil)){while((_b=_c.$M(nil,self.$G),_b!==false&&_b!==nil)){_a.$S(nil,_c);_c=_c.$Q()}}else{while((_b=_c.$N(nil,self.$G),_b!==false&&_b!==nil)){_a.$S(nil,_c);_c=_c.$Q()}};return _a},$i: function(){var self,_b,_a;_a=nil;self=this;if(self.$E==null)self.$E=nil;if(self.$G==null)self.$G=nil;if(self.$I==null)self.$I=nil;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;if((_b=self.$I,_b!==false&&_b!==nil)){_a=("" + (self.$E.$i()).$o() + ("...").$o() + (self.$G.$i()).$o())}else{_a=("" + (self.$E.$i()).$o() + ("..").$o() + (self.$G.$i()).$o())};return _a},$T: function(_d,_a){var self,_b,_c;_c=nil;self=this;if(self.$E==null)self.$E=nil;if(self.$G==null)self.$G=nil;if(self.$I==null)self.$I=nil;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;if((_b=_a.$M(nil,self.$E),_b!==false&&_b!==nil)){return false};if((_b=self.$I,_b!==false&&_b!==nil)){_c=_a.$M(nil,self.$G)}else{_c=_a.$N(nil,self.$G)};return _c}catch(_e){if(_e instanceof a$c && (!_e.a$b || _e.a$b==24))return _e.a$a;throw(_e)}}}});$f = a$d({a$j: [],a$e: $k,a$c: "Exception",a$h: {$U: function(){var self,_a;_a=nil;self=this;if(self.$V==null)self.$V=nil;_a=self.$V;return _a},$o: function(){var self,_a;_a=nil;self=this;if(self.$V==null)self.$V=nil;_a=self.$V;return _a},$c: function(_d,_a){var self,_c,_b;_b=nil;self=this;try{if(arguments.length>2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));if(_a==null)_a=nil;;if((_c=_a.$q(),_c!==false&&_c!==nil)){_b=self.$V=self.$z().$e()}else{_b=self.$V=_a};return _b}catch(_e){if(_e instanceof a$c && (!_e.a$b || _e.a$b==25))return _e.a$a;throw(_e)}},$i: function(){var self,_a;_a=nil;self=this;if(self.$V==null)self.$V=nil;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=("#<" + (self.$z().$e()).$o() + (": ").$o() + (self.$V).$o() + (">").$o());return _a}}});$m = a$d({a$j: [],a$e: $f,a$c: "StandardError"});$n = a$d({a$j: [],a$e: $m,a$c: "NameError"});$g = a$d({a$j: [],a$e: $n,a$c: "NoMethodError"});$p = a$d({a$j: [],a$e: $k,a$c: "UIObject",a$h: {$W: function(_d,_a){var self,_c,_b;_b=nil;self=this;if(self.$Y==null)self.$Y=nil;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;if((_c=_a,_c!==false&&_c!==nil)){_b=$o.$X(nil,self.$Y,"title",_a)}else{_b=$o.$Z(nil,self.$Y,"title")};return _b}catch(_e){if(_e instanceof a$c && (!_e.a$b || _e.a$b==26))return _e.a$a;throw(_e)}},$2: function(){var self,_a;_a=nil;self=this;if(self.$Y==null)self.$Y=nil;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=$o.$2(nil,self.$Y);return _a},$1: function(){var self;self=this;if(self.$Y==null)self.$Y=nil;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;return self.$Y},$0: function(){var self,_a;_a=nil;self=this;if(self.$Y==null)self.$Y=nil;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=$o.$0(nil,self.$Y);return _a},$7: function(){var self,_a;_a=nil;self=this;if(self.$Y==null)self.$Y=nil;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=$o.$7(nil,self.$Y);return _a},$5: function(_c,_a){var self,_b;_b=nil;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;_b=self.$6(nil,(3),_a);return _b}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==28))return _d.a$a;throw(_d)}},$3: function(_c,_a){var self,_b;_b=nil;self=this;if(self.$Y==null)self.$Y=nil;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;_b=$o.$4(nil,self.$Y,"height",_a);return _b}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==27))return _d.a$a;throw(_d)}},$aa: function(_d,_a,_b){var self,_c;_c=nil;self=this;try{if(arguments.length!=3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));;self.$ab(nil,_a);_c=self.$3(nil,_b);return _c}catch(_e){if(_e instanceof a$c && (!_e.a$b || _e.a$b==30))return _e.a$a;throw(_e)}},$6: function(_k,_a,_b){var self,_c,_d,_e,_f,_g,_h,_i,_j;_j=nil;self=this;try{if(arguments.length<2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));if(arguments.length>3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));if(_b==null)_b=nil;;if((_c=_d=self.$1(),_c===false||_c===nil)){self.$j(nil,"Null widget handle!")};_e=$o.$8(nil,_d,"className").$9();if((_c=_e.$l(),_c!==false&&_c!==nil)){_e="rwt-nostyle";$o.$_(nil,_d,"className",_e)};if((_c=_a.$D(nil,(0)),_c===false||_c===nil)){_b=_b.$9();if((_c=_b.$l(),_c!==false&&_c!==nil)){self.$j(nil,"Style names cannot be empty")}};_f=_e.$$(nil," ");_g=_f.$F();if((_c=_a.$D(nil,(0)),_c!==false&&_c!==nil)){return _g};if((_c=(_h=_a.$D(nil,(3)), (_h!==false&&_h!==nil) ? (_g.$D(nil,_b)) : _h),_c!==false&&_c!==nil)){self.$j(nil,"Cannot remove primary style name")};_i=[];var e, s;
295
+ for (var i=0; i<_f.length; i++)
296
+ {
297
+ e = _f[i];
298
+ if (e == '') continue;
299
+
300
+ if (_a == (1))
301
+ {
302
+ // set primary name -> update all dependent style names
303
+ if (e.indexOf(_g) != 0)
304
+ {
305
+ // +e+ doesnt start with the old primary style name
306
+ // -> we dont touch it and keep it!
307
+ s = e;
308
+ }
309
+ else
310
+ {
311
+ // replace +primary+ with +style+
312
+ s = _b + e.substring(_g.length);
313
+ }
314
+ }
315
+ else /* MODE_ADD or MODE_REM */
316
+ {
317
+ // remove the style. in case of MODE_ADD, we add it back later!
318
+ s = (e == _b) ? null : e;
319
+ }
320
+
321
+ if (s) _i.push(s);
322
+ }
323
+
324
+ if (_a == (2))
325
+ {
326
+ _i.push(_b);
327
+ }
328
+
329
+ _i = _i.join(" ");;_j=$o.$_(nil,_d,"className",_i);return _j}catch(_l){if(_l instanceof a$c && (!_l.a$b || _l.a$b==29))return _l.a$a;throw(_l)}},$ab: function(_c,_a){var self,_b;_b=nil;self=this;if(self.$Y==null)self.$Y=nil;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;_b=$o.$4(nil,self.$Y,"width",_a);return _b}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==31))return _d.a$a;throw(_d)}},$o: function(){var self,_b,_a;_a=nil;self=this;if(self.$Y==null)self.$Y=nil;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;if((_b=self.$Y,_b!==false&&_b!==nil)){_a=$o.$o(nil,self.$Y)}else{_a="(null handle)"};return _a},$ah: function(_c,_a){var self,_b;_b=nil;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;_b=self.$6(nil,(2),_a);return _b}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==33))return _d.a$a;throw(_d)}},$af: function(){var self,_a;_a=nil;self=this;if(self.$Y==null)self.$Y=nil;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=$o.$ag(nil,self.$Y,"offsetHeight");return _a},$ac: function(_c,_a){var self,_b;_b=nil;self=this;if(self.$Y==null)self.$Y=nil;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;_b=$o.$ac(nil,self.$Y,_a.$ad(nil,$o.$ae(nil,self.$Y)));return _b}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==32))return _d.a$a;throw(_d)}},$ak: function(){var self,_a;_a=nil;self=this;if(self.$Y==null)self.$Y=nil;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$Y;return _a},$aj: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$6(nil,(0));return _a},$ai: function(){var self,_a;_a=nil;self=this;if(self.$Y==null)self.$Y=nil;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=$o.$8(nil,self.$Y,"title");return _a},$al: function(){var self,_a;_a=nil;self=this;if(self.$Y==null)self.$Y=nil;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=$o.$ag(nil,self.$Y,"offsetWidth");return _a},$an: function(_d,_a){var self,_b,_c;_c=nil;self=this;if(self.$Y==null)self.$Y=nil;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;if((_b=self.$Y,_b!==false&&_b!==nil)){$o.$ao(nil,self.$Y,_a)};_c=self.$Y=_a;return _c}catch(_e){if(_e instanceof a$c && (!_e.a$b || _e.a$b==35))return _e.a$a;throw(_e)}},$am: function(_c,_a){var self,_b;_b=nil;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;_b=self.$6(nil,(1),_a);return _b}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==34))return _d.a$a;throw(_d)}},$at: function(_d,_a,_b){var self,_c;_c=nil;self=this;try{if(arguments.length!=3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));;self.$ab(nil,_a.$au(nil,"px"));_c=self.$3(nil,_b.$au(nil,"px"));return _c}catch(_e){if(_e instanceof a$c && (!_e.a$b || _e.a$b==38))return _e.a$a;throw(_e)}},$as: function(_c,_a){var self,_b;_b=nil;self=this;if(self.$Y==null)self.$Y=nil;try{if(arguments.length>2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));if(_a==null)_a=true;;_b=$o.$as(nil,self.$Y,_a);return _b}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==37))return _d.a$a;throw(_d)}},$ap: function(_c,_a){var self,_b;_b=nil;self=this;if(self.$Y==null)self.$Y=nil;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;_b=$o.$ac(nil,self.$Y,$o.$ae(nil,self.$Y).$aq(nil,_a.$ar()));return _b}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==36))return _d.a$a;throw(_d)}}}});$q = a$d({a$j: [],a$e: $p,a$c: "Widget",a$h: {$av: function(){var self,_a,_b;_b=nil;self=this;if(self.$aw==null)self.$aw=nil;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;if((_a=self.$aw,_a===false||_a===nil)){self.$j(nil,"cannot detached unattached widget")};self.$ax();self.$aw=false;_b=$o.$ay(nil,self.$ak());return _b},$az: function(){var self,_a;_a=nil;self=this;if(self.$aA==null)self.$aA=nil;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$aA;return _a},$aF: function(){var self,_a;_a=nil;self=this;if(self.$aG==null)self.$aG=nil;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$aG;return _a},$aC: function(){var self,_a,_b;_b=nil;self=this;if(self.$aw==null)self.$aw=nil;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;if((_a=self.$aw,_a!==false&&_a!==nil)){self.$j(nil,"already attached")};self.$aw=true;$o.$aD(nil,self.$ak(),self);_b=self.$aE();return _b},$aB: function(_c,_a){var self,_b;_b=nil;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;_b=self.$aA=_a;return _b}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==39))return _d.a$a;throw(_d)}},$aH: function(_f,_a){var self,_b,_d,_e,_c;_c=nil;self=this;if(self.$aG==null)self.$aG=nil;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;_b=self.$aG;self.$aG=_a;if((_d=_a.$q(),_d!==false&&_d!==nil)){if((_d=(_e=_b, (_e!==false&&_e!==nil) ? (_b.$aI()) : _e),_d!==false&&_d!==nil)){_c=self.$av()}else{_c=nil}}else{if((_d=_a.$aI(),_d!==false&&_d!==nil)){_c=self.$aC()}else{_c=nil}};return _c}catch(_g){if(_g instanceof a$c && (!_g.a$b || _g.a$b==40))return _g.a$a;throw(_g)}},$aL: function(_c,_a){var self,_b;_b=nil;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;_b=nil;return _b}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==41))return _d.a$a;throw(_d)}},$aJ: function(){var self,_b,_a;_a=nil;self=this;if(self.$aG==null)self.$aG=nil;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;if((_b=self.$aG,_b!==false&&_b!==nil)){_a=self.$aG.$aK(nil,self)}else{_a=nil};return _a},$aI: function(){var self,_a;_a=nil;self=this;if(self.$aw==null)self.$aw=nil;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$aw;return _a},$ax: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=nil;return _a},$an: function(_d,_a){var self,_b,_c;_c=nil;self=this;if(self.$aw==null)self.$aw=nil;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;if((_b=self.$aw,_b!==false&&_b!==nil)){$o.$ay(nil,self.$ak())};a$j(self,'$an',nil,[_a]);if((_b=self.$aw,_b!==false&&_b!==nil)){_c=$o.$aD(nil,_a,self)}else{_c=nil};return _c}catch(_e){if(_e instanceof a$c && (!_e.a$b || _e.a$b==42))return _e.a$a;throw(_e)}},$aE: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=nil;return _a}}});$r = a$d({a$j: [],a$e: $q,a$c: "MyWidget",a$h: {$c: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;self.$an(nil,$o.$aM());self.$ac(nil,(1));self.$W(nil,"test");_a=$o.$aN(nil,self.$ak(),"click me");return _a},$aL: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;alert('okay')}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==43))return _c.a$a;throw(_c)}}}});$d = a$d({a$j: [],a$e: $m,a$c: "TypeError"});$s = a$d({a$j: [],a$e: $k,a$c: "Number",a$d: Number,a$h: {$au: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return self + _a}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==47))return _c.a$a;throw(_c)}},$D: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return self == _a}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==46))return _c.a$a;throw(_c)}},$aP: function(_d,_a){var self,_b,_c;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;_b=self;while((_c=_b.$aQ(nil,_a),_c!==false&&_c!==nil)){_d(_b);_b=_b.$aR(nil,1)};return self}catch(_e){if(_e instanceof a$c && (!_e.a$b || _e.a$b==45))return _e.a$a;throw(_e)}},$aO: function(_d,_a){var self,_b,_c;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;_b=self;while((_c=_b.$N(nil,_a),_c!==false&&_c!==nil)){_d(_b);_b=_b.$au(nil,1)};return self}catch(_e){if(_e instanceof a$c && (!_e.a$b || _e.a$b==44))return _e.a$a;throw(_e)}},$N: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return self <= _a}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==48))return _c.a$a;throw(_c)}},$aR: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return self - _a}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==49))return _c.a$a;throw(_c)}},$Q: function(){var self;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;return self+1},$aS: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return self / _a}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==51))return _c.a$a;throw(_c)}},$o: function(_b,_a){var self;self=this;try{if(arguments.length>2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));if(_a==null)_a=10;;return self.toString(_a)}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==50))return _c.a$a;throw(_c)}},$aT: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return self % _a}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==52))return _c.a$a;throw(_c)}},$aq: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return self & _a}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==56))return _c.a$a;throw(_c)}},$M: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return self < _a}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==55))return _c.a$a;throw(_c)}},$aU: function(_c){var self,_a,_b;self=this;try{if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=0;while((_b=_a.$M(nil,self),_b!==false&&_b!==nil)){_c(_a);_a=_a.$au(nil,1)};return self}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==54))return _d.a$a;throw(_d)}},$ad: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return self | _a}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==53))return _c.a$a;throw(_c)}},$aW: function(){var self;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;return -self},$P: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return self > _a}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==58))return _c.a$a;throw(_c)}},$aV: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return self ^ _a}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==57))return _c.a$a;throw(_c)}},$ar: function(){var self;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;return ~self},$aQ: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return self >= _a}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==59))return _c.a$a;throw(_c)}},$i: function(){var self;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;return self.toString()},$aY: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return self * _a}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==60))return _c.a$a;throw(_c)}},$aX: function(){var self;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;return self}}});$t = a$d({a$j: [],a$e: $s,a$c: "Bignum",a$d: Number});$u = a$d({a$j: [],a$e: nil,a$c: "Enumerable",a$h: {$aZ: function(_a){var self,_b,_c,_f,_h;_h=nil;self=this;_b=_a==null?nil:_a;try{if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_c=[];self.$v(function(_d){var _e;var _g=nil;_e=_d==null?nil:_d;_g=_c.$S(nil,((_f=_b,_f!==false&&_f!==nil)?_b.$a0(nil,_e):_e));return _g});_h=_c;return _h}catch(_i){if(_i instanceof a$c && (!_i.a$b || _i.a$b==61))return _i.a$a;throw(_i)}},$a1: function(_f){var self,_a,_e,_g;_g=nil;self=this;try{if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=[];self.$v(function(_b){var _c;var _d=nil;_c=_b==null?nil:_b;if((_e=_f(_c),_e!==false&&_e!==nil)){_d=_a.$S(nil,_c)}else{_d=nil};return _d});_g=_a;return _g}catch(_h){if(_h instanceof a$c && (!_h.a$b || _h.a$b==62))return _h.a$a;throw(_h)}},$a2: function(_a){var self,_b,_c,_f,_h;_h=nil;self=this;_b=_a==null?nil:_a;try{if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_c=[];self.$v(function(_d){var _e;var _g=nil;_e=_d==null?nil:_d;_g=_c.$S(nil,((_f=_b,_f!==false&&_f!==nil)?_b.$a0(nil,_e):_e));return _g});_h=_c;return _h}catch(_i){if(_i instanceof a$c && (!_i.a$b || _i.a$b==63))return _i.a$a;throw(_i)}},$R: function(){var self,_a,_e;_e=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=[];self.$v(function(_b){var _c;var _d=nil;_c=_b==null?nil:_b;_d=_a.$S(nil,_c);return _d});_e=_a;return _e},$a3: function(_f){var self,_a,_e,_g;_g=nil;self=this;try{if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=[];self.$v(function(_b){var _c;var _d=nil;_c=_b==null?nil:_b;if((_e=_f(_c),_e===false||_e===nil)){_d=_a.$S(nil,_c)}else{_d=nil};return _d});_g=_a;return _g}catch(_h){if(_h instanceof a$c && (!_h.a$b || _h.a$b==64))return _h.a$a;throw(_h)}},$a4: function(_f){var self,_a,_e,_g;_g=nil;self=this;try{if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=[];self.$v(function(_b){var _c;var _d=nil;_c=_b==null?nil:_b;if((_e=_f(_c),_e!==false&&_e!==nil)){_d=_a.$S(nil,_c)}else{_d=nil};return _d});_g=_a;return _g}catch(_h){if(_h instanceof a$c && (!_h.a$b || _h.a$b==65))return _h.a$a;throw(_h)}}}});$v = a$d({a$j: [$u],a$e: $k,a$f: {$a_: function(){var self,_a,_b,_c;self=this;_a=[];for(_b=1;_b<arguments.length;_b++)_a.push(arguments[_b]);;if((_b=_a.$a$().$aT(nil,2).$D(nil,0),_b===false||_b===nil)){self.$j(nil,$a)};_c=self.$b();
330
+ //
331
+ // we use an associate array to store the items. But unlike
332
+ // Javascript, the entries are arrays which contain the collisions.
333
+ // NOTE that we have to prefix the hash code with a prefix so that
334
+ // there are no collisions with methods etc.
335
+ // I prefix it for now with ":".
336
+ //
337
+ var items = {};
338
+ var hashed_key, current_key, current_val;
339
+
340
+ for (var i = 0; i < _a.length; i += 2)
341
+ {
342
+ current_key = _a[i];
343
+ current_val = _a[i+1];
344
+ hashed_key = ":" + current_key.$B();
345
+
346
+ // make sure that a bucket exists
347
+ if (!items[hashed_key]) items[hashed_key] = [];
348
+
349
+ items[hashed_key].push(current_key, current_val);
350
+ }
351
+
352
+ _c.a$k = items;
353
+ _c.a$l = nil;
354
+ return _c;
355
+ },$ba: function(_d,_a){var self,_b,_c;_c=nil;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;_c=_b=self.$a();return _c}catch(_e){if(_e instanceof a$c && (!_e.a$b || _e.a$b==69))return _e.a$a;throw(_e)}}},a$c: "Hash",a$h: {$a6: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;
356
+ if (!self.a$k)
357
+ {
358
+ // this is a Javascript Object, not a RubyJS Hash object.
359
+ // we directly look the key up. it's fast but not Ruby-like,
360
+ // so be careful!
361
+
362
+ var elem = self[_a];
363
+ return (elem == null ? nil : elem);
364
+ }
365
+
366
+ var hashed_key = ":" + _a.$B();
367
+ var bucket = self.a$k[hashed_key];
368
+
369
+ if (bucket)
370
+ {
371
+ //
372
+ // find the matching element inside the bucket
373
+ //
374
+
375
+ for (var i = 0; i < bucket.length; i += 2)
376
+ {
377
+ if (bucket[i].$g(nil,_a))
378
+ return bucket[i+1];
379
+ }
380
+ }
381
+
382
+ // no matching key found -> return default value
383
+ return self.a$l;
384
+ }catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==66))return _c.a$a;throw(_c)}},$a5: function(){var self,_b,_f;_b=_f=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_f=self.$a2(function(_a){var _c,_d;var _e=nil;(_b=a$k(_a),_c=_b[0]==null?nil:_b[0],_d=_b[1]==null?nil:_b[1],_b);_e=_c;return _e});return _f},$o: function(){var self,_a,_c,_g;_c=_g=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=[];self.$v(function(_b){var _d,_e;var _f=nil;(_c=a$k(_b),_d=_c[0]==null?nil:_c[0],_e=_c[1]==null?nil:_c[1],_c);_a.$S(nil,_d);_f=_a.$S(nil,_e);return _f});_g=_a.$a7(nil,"");return _g},$a8: function(_c,_a,_b){var self;self=this;try{if(arguments.length!=3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));;
385
+ if (!self.a$k)
386
+ {
387
+ // this is a Javascript Object, not a RubyJS Hash object.
388
+ // we directly look the key up. it's fast but not Ruby-like,
389
+ // so be careful!
390
+
391
+ self[_a] = _b;
392
+ return _b;
393
+ }
394
+
395
+ var hashed_key = ":" + _a.$B();
396
+ var bucket = self.a$k[hashed_key];
397
+
398
+ if (bucket)
399
+ {
400
+ //
401
+ // find the matching element inside the bucket
402
+ //
403
+
404
+ for (var i = 0; i < bucket.length; i += 2)
405
+ {
406
+ if (bucket[i].$g(nil,_a))
407
+ {
408
+ // overwrite value
409
+ bucket[i+1] = _b;
410
+ return _b;
411
+ }
412
+ }
413
+ // key not found in this bucket. append key, value pair to bucket
414
+ bucket.push(_a, _b);
415
+ }
416
+ else
417
+ {
418
+ //
419
+ // create new bucket
420
+ //
421
+ self.a$k[hashed_key] = [_a, _b];
422
+ }
423
+ return _b;
424
+ }catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==68))return _d.a$a;throw(_d)}},$v: function(_a){var self;self=this;try{if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;
425
+ if (!self.a$k)
426
+ {
427
+ // this is a Javascript Object, not a RubyJS Hash object.
428
+ // we directly look the key up. it's fast but not Ruby-like,
429
+ // so be careful!
430
+ var key, value;
431
+ for (key in self)
432
+ {
433
+ value = self[key];;_a([(key == null ? nil : key),(value == null ? nil : value)]);
434
+ }
435
+
436
+ return nil;
437
+ }
438
+
439
+ var key, bucket, i;
440
+ for (key in self.a$k)
441
+ {
442
+ if (key.charAt(0) == ":")
443
+ {
444
+ bucket = self.a$k[key];
445
+ for (i=0; i<bucket.length; i+=2)
446
+ {;_a([bucket[i],bucket[i+1]]);
447
+ }
448
+ }
449
+ }
450
+ return nil;
451
+ }catch(_b){if(_b instanceof a$c && (!_b.a$b || _b.a$b==67))return _b.a$a;throw(_b)}},$c: function(){var self;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;
452
+ self.a$k = {};
453
+ self.a$l = nil;
454
+ return nil},$a9: function(){var self,_b,_f;_b=_f=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_f=self.$a2(function(_a){var _c,_d;var _e=nil;(_b=a$k(_a),_c=_b[0]==null?nil:_b[0],_d=_b[1]==null?nil:_b[1],_b);_e=_d;return _e});return _f},$i: function(){var self,_a,_c,_g;_c=_g=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a="{";_a=_a.$au(nil,self.$a2(function(_b){var _d,_e;var _f=nil;(_c=a$k(_b),_d=_c[0]==null?nil:_c[0],_e=_c[1]==null?nil:_c[1],_c);_f=_d.$i().$au(nil,"=>").$au(nil,_e.$i());return _f}).$a7(nil,", "));_a=_a.$au(nil,"}");_g=_a;return _g}}});$w = a$d({a$j: [],a$e: $k,a$c: "Regexp",a$d: RegExp});$o = a$d({a$j: [],a$e: $k,a$f: {$bb: function(_c,_a,_b){var self;self=this;try{if(arguments.length<2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));if(arguments.length>3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));if(_b==null)_b="";;
455
+ _a.innerHTML = _b;
456
+ return nil}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==72))return _d.a$a;throw(_d)}},$bc: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return document.getElementById(_a) || nil}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==73))return _c.a$a;throw(_c)}},$_: function(_d,_a,_b,_c){var self;self=this;try{if(arguments.length!=4)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 3)'));;_a[_b] = _c; return nil}catch(_e){if(_e instanceof a$c && (!_e.a$b || _e.a$b==71))return _e.a$a;throw(_e)}},$bd: function(_c,_a,_b){var self;self=this;try{if(arguments.length!=3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));;
457
+ var ret = _a.style[_b];
458
+ return (ret == null) ? nil : ret}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==74))return _d.a$a;throw(_d)}},$o: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return _a.outerHTML}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==70))return _c.a$a;throw(_c)}},$be: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;
459
+ var sib = _a.nextSibling;
460
+ while (sib && sib.nodeType != 1)
461
+ sib = sib.nextSibling;
462
+ return sib || nil}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==75))return _c.a$a;throw(_c)}},$bf: function(_d,_a){var self,_b,_c;self=this;if(self.$bg==null)self.$bg=nil;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;if((_b=(_c=self.$bg, (_c!==false&&_c!==nil) ? (self.$bh(nil,_a,self.$bg)) : _c),_b!==false&&_b!==nil)){self.$bg=nil};if (_a == window.a$m) window.a$m = null;;return nil}catch(_e){if(_e instanceof a$c && (!_e.a$b || _e.a$b==76))return _e.a$a;throw(_e)}},$as: function(_d,_a,_b){var self,_c;self=this;try{if(arguments.length<2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));if(arguments.length>3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));if(_b==null)_b=true;;if((_c=_b,_c!==false&&_c!==nil)){_a.style.display = ''}else{_a.style.display = 'none'};return nil}catch(_e){if(_e instanceof a$c && (!_e.a$b || _e.a$b==77))return _e.a$a;throw(_e)}},$bh: function(_c,_a,_b){var self;self=this;try{if(arguments.length!=3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));;return (_a == _b)}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==78))return _d.a$a;throw(_d)}},$bi: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$bj(nil,"colgroup");return _a},$bk: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$bl(nil,"text");return _a},$bm: function(_c,_a,_b){var self;self=this;try{if(arguments.length!=3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));;
463
+ var i = parseInt(_a.style[_b]);
464
+ return ((!i) ? 0 : i)}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==79))return _d.a$a;throw(_d)}},$bn: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;
465
+ var e = document.createElement("INPUT");
466
+ e.type = 'radio';
467
+ e.name = _a;
468
+ return e}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==80))return _c.a$a;throw(_c)}},$bo: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;
469
+ // To mimic IEs +innerText+ property in the W3C DOM, we need to recursively
470
+ // concatenate all child text nodes (depth first).
471
+ var text = '', child = _a.firstChild;
472
+ while (child) {
473
+ // 1 == Element node
474
+ if (child.nodeType == 1) {
475
+ text += this.$bo(nil, child);
476
+ } else if (child.nodeValue) {
477
+ text += child.nodeValue;
478
+ }
479
+ child = child.nextSibling;
480
+ }
481
+ return text}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==81))return _c.a$a;throw(_c)}},$bp: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;self.$bg=_a;window.a$m = _a;;return nil}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==82))return _c.a$a;throw(_c)}},$bq: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;
482
+ var ret = _a.src;
483
+ return (ret == null) ? nil : ret}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==83))return _c.a$a;throw(_c)}},$br: function(_e,_a,_b,_c){var self,_d;_d=nil;self=this;try{if(arguments.length!=4)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 3)'));;self.$4(nil,_a,"position","absolute");self.$4(nil,_a,"left",_b.$au(nil,"px"));_d=self.$4(nil,_a,"top",_c.$au(nil,"px"));return _d}catch(_f){if(_f instanceof a$c && (!_f.a$b || _f.a$b==84))return _f.a$a;throw(_f)}},$bs: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$bj(nil,"tr");return _a},$8: function(_c,_a,_b){var self;self=this;try{if(arguments.length!=3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));;
484
+ var ret = _a[_b];
485
+ return (ret == null) ? nil : String(ret)}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==85))return _d.a$a;throw(_d)}},$bu: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$bj(nil,"caption");return _a},$ag: function(_c,_a,_b){var self;self=this;try{if(arguments.length!=3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));;
486
+ var i = parseInt(_a[_b]);
487
+ return ((!i) ? 0 : i)}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==87))return _d.a$a;throw(_d)}},$ac: function(_c,_a,_b){var self;self=this;try{if(arguments.length!=3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));;
488
+ _a.a$n = _b;
489
+
490
+ _a.onclick = (_b & 0x00001) ? window.a$o : null;
491
+ _a.ondblclick = (_b & 0x00002) ? window.a$o : null;
492
+ _a.onmousedown = (_b & 0x00004) ? window.a$o : null;
493
+ _a.onmouseup = (_b & 0x00008) ? window.a$o : null;
494
+ _a.onmouseover = (_b & 0x00010) ? window.a$o : null;
495
+ _a.onmouseout = (_b & 0x00020) ? window.a$o : null;
496
+ _a.onmousemove = (_b & 0x00040) ? window.a$o : null;
497
+ _a.onkeydown = (_b & 0x00080) ? window.a$o : null;
498
+ _a.onkeypress = (_b & 0x00100) ? window.a$o : null;
499
+ _a.onkeyup = (_b & 0x00200) ? window.a$o : null;
500
+ _a.onchange = (_b & 0x00400) ? window.a$o : null;
501
+ _a.onfocus = (_b & 0x00800) ? window.a$o : null;
502
+ _a.onblur = (_b & 0x01000) ? window.a$o : null;
503
+ _a.onlosecapture = (_b & 0x02000) ? window.a$o : null;
504
+ _a.onscroll = (_b & 0x04000) ? window.a$o : null;
505
+ _a.onload = (_b & 0x08000) ? window.a$o : null;
506
+ _a.onerror = (_b & 0x10000) ? window.a$o : null;
507
+ _a.onmousewheel = (_b & 0x20000) ? window.a$o : null;
508
+
509
+ return nil}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==86))return _d.a$a;throw(_d)}},$X: function(_d,_a,_b,_c){var self;self=this;try{if(arguments.length!=4)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 3)'));;_a.setAttribute(_b, _c); return nil}catch(_e){if(_e instanceof a$c && (!_e.a$b || _e.a$b==88))return _e.a$a;throw(_e)}},$bt: function(){var self;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;return document.body.clientWidth},$ae: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return _a.a$n || 0}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==89))return _c.a$a;throw(_c)}},$bw: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$bj(nil,"tbody");return _a},$bv: function(_c,_a,_b){var self;self=this;try{if(arguments.length!=3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));;_a.src = _b; return nil}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==90))return _d.a$a;throw(_d)}},$bl: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;
510
+ var e = document.createElement("INPUT");
511
+ e.type = _a;
512
+ return e}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==91))return _c.a$a;throw(_c)}},$bx: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;
513
+ var left = _a.offsetLeft, top = _a.offsetTop;
514
+ var width = _a.offsetWidth, height = _a.offsetHeight;
515
+
516
+ if (_a.parentNode != _a.offsetParent) {
517
+ left -= _a.parentNode.offsetLeft;
518
+ top -= _a.parentNode.offsetTop;
519
+ }
520
+
521
+ var cur = _a.parentNode;
522
+ while (cur && (cur.nodeType == 1)) {
523
+ // body tags are implicitly scrollable
524
+ if ((cur.style.overflow == 'auto') || (cur.style.overflow == 'scroll') ||
525
+ (cur.tagName == 'BODY')) {
526
+
527
+ if (left < cur.scrollLeft) {
528
+ cur.scrollLeft = left;
529
+ }
530
+ if (left + width > cur.scrollLeft + cur.clientWidth) {
531
+ cur.scrollLeft = (left + width) - cur.clientWidth;
532
+ }
533
+ if (top < cur.scrollTop) {
534
+ cur.scrollTop = top;
535
+ }
536
+ if (top + height > cur.scrollTop + cur.clientHeight) {
537
+ cur.scrollTop = (top + height) - cur.clientHeight;
538
+ }
539
+ }
540
+
541
+ var offsetLeft = cur.offsetLeft, offsetTop = cur.offsetTop;
542
+ if (cur.parentNode != cur.offsetParent) {
543
+ offsetLeft -= cur.parentNode.offsetLeft;
544
+ offsetTop -= cur.parentNode.offsetTop;
545
+ }
546
+
547
+ left += offsetLeft - cur.scrollLeft;
548
+ top += offsetTop - cur.scrollTop;
549
+ cur = cur.parentNode;
550
+ }
551
+ return nil}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==92))return _c.a$a;throw(_c)}},$by: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$bj(nil,"legend");return _a},$bz: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$bj(nil,"fieldset");return _a},$bj: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return document.createElement(_a)}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==93))return _c.a$a;throw(_c)}},$aM: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$bj(nil,"div");return _a},$bB: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;
552
+ var child = _a.firstChild;
553
+ while (child && child.nodeType != 1)
554
+ child = child.nextSibling;
555
+ return child || nil}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==94))return _c.a$a;throw(_c)}},$bA: function(){var self;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;return document.body.clientHeight},$7: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;
556
+ var left = 0;
557
+ var curr = _a;
558
+ // This intentionally excludes body which has a null offsetParent.
559
+ while (curr.offsetParent) {
560
+ left -= curr.scrollLeft;
561
+ curr = curr.parentNode;
562
+ }
563
+ while (_a) {
564
+ left += _a.offsetLeft;
565
+ _a = _a.offsetParent;
566
+ }
567
+ return left}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==95))return _c.a$a;throw(_c)}},$bC: function(_d,_a,_b,_c){var self;self=this;try{if(arguments.length!=4)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 3)'));;_a.insertBefore(_b, _c); return nil}catch(_e){if(_e instanceof a$c && (!_e.a$b || _e.a$b==96))return _e.a$a;throw(_e)}},$bD: function(_d,_a,_b,_c){var self;self=this;try{if(arguments.length!=4)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 3)'));;var option = _a.options[_c];
568
+ option.text = _b;
569
+ return nil}catch(_e){if(_e instanceof a$c && (!_e.a$b || _e.a$b==97))return _e.a$a;throw(_e)}},$bE: function(_c,_a,_b){var self;self=this;try{if(arguments.length!=3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));;_a.removeChild(_b); return nil}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==98))return _d.a$a;throw(_d)}},$bF: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;
570
+ var ret = _a.innerHTML;
571
+ return (ret == null) ? nil : ret}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==99))return _c.a$a;throw(_c)}},$bG: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$bj(nil,"td");return _a},$bH: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$bl(nil,"password");return _a},$bI: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$bj(nil,"textarea");return _a},$bJ: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$bj(nil,"tfoot");return _a},$bK: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$bl(nil,"checkbox");return _a},$bL: function(_c,_a,_b){var self;self=this;try{if(arguments.length!=3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));;
572
+ var ret = _a.getAttribute(_b);
573
+ return (ret == null) ? nil : ret}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==101))return _d.a$a;throw(_d)}},$bM: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$bj(nil,"form");return _a},$bN: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$bj(nil,"button");return _a},$bO: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$bj(nil,"label");return _a},$aD: function(_c,_a,_b){var self;self=this;try{if(arguments.length!=3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));;_a.a$p = (_b === nil) ? null : _b; return nil}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==100))return _d.a$a;throw(_d)}},$0: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return (_a.style.display != 'none')}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==102))return _c.a$a;throw(_c)}},$bP: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$bj(nil,"th");return _a},$bQ: function(_c,_a,_b){var self;self=this;try{if(arguments.length!=3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));;
574
+ var count = 0, child = _a.firstChild;
575
+ while (child) {
576
+ if (child == _b)
577
+ return count;
578
+ if (child.nodeType == 1)
579
+ ++count;
580
+ child = child.nextSibling;
581
+ }
582
+
583
+ return nil}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==103))return _d.a$a;throw(_d)}},$bR: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$bj(nil,"col");return _a},$bS: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$bj(nil,"iframe");return _a},$bT: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$bj(nil,"options");return _a},$ao: function(_c,_a,_b){var self;self=this;try{if(arguments.length!=3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));;
584
+ var p = _a.parentNode;
585
+ if (!p) return;
586
+ p.insertBefore(_b, _a);
587
+ p.removeChild(_a);
588
+ return nil}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==104))return _d.a$a;throw(_d)}},$bU: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$bj(nil,"A");return _a},$ay: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;_a.a$p = null; return nil}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==106))return _c.a$a;throw(_c)}},$aN: function(_c,_a,_b){var self;self=this;try{if(arguments.length!=3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));;
589
+ // Remove all children first.
590
+ while (_a.firstChild) {
591
+ _a.removeChild(_a.firstChild);
592
+ }
593
+ // Add a new text node.
594
+ if (_b !== nil) {
595
+ _a.appendChild(document.createTextNode(_b));
596
+ }
597
+ return nil}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==105))return _d.a$a;throw(_d)}},$bV: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$bj(nil,"img");return _a},$4: function(_d,_a,_b,_c){var self;self=this;try{if(arguments.length!=4)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 3)'));;_a.style[_b] = _c; return nil}catch(_e){if(_e instanceof a$c && (!_e.a$b || _e.a$b==107))return _e.a$a;throw(_e)}},$bW: function(_c,_a,_b){var self;self=this;try{if(arguments.length!=3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));;
598
+ var count = 0, child = _a.firstChild;
599
+ while (child) {
600
+ var next = child.nextSibling;
601
+ if (child.nodeType == 1) {
602
+ if (_b == count)
603
+ return child;
604
+ ++count;
605
+ }
606
+ child = next;
607
+ }
608
+
609
+ return nil}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==108))return _d.a$a;throw(_d)}},$bX: function(){var self;self=this;if(self.$bg==null)self.$bg=nil;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;return self.$bg},$bY: function(_c,_a,_b){var self;self=this;try{if(arguments.length!=3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));;
610
+ while (_b) {
611
+ if (_a == _b) {
612
+ return true;
613
+ }
614
+ _b = _b.parentNode;
615
+ if (_b && (_b.nodeType != 1)) {
616
+ _b = null;
617
+ }
618
+ }
619
+ return false}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==109))return _d.a$a;throw(_d)}},$bZ: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$bj(nil,"table");return _a},$b0: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$bj(nil,"thead");return _a},$b2: function(_c,_a,_b){var self;self=this;try{if(arguments.length!=3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));;return !!_a[_b]}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==111))return _d.a$a;throw(_d)}},$b1: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;
620
+ var count = 0, child = _a.firstChild;
621
+ while (child) {
622
+ if (child.nodeType == 1)
623
+ ++count;
624
+ child = child.nextSibling;
625
+ }
626
+ return count}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==110))return _c.a$a;throw(_c)}},$b4: function(_c,_a,_b){var self;self=this;try{if(arguments.length!=3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));;return !!_a.style[_b]}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==113))return _d.a$a;throw(_d)}},$Z: function(_c,_a,_b){var self;self=this;try{if(arguments.length!=3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));;_a.removeAttribute(_b); return nil}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==112))return _d.a$a;throw(_d)}},$b3: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$bj(nil,"span");return _a},$2: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;
627
+ var top = 0;
628
+ var curr = _a;
629
+ // This intentionally excludes body which has a null offsetParent.
630
+ while (curr.offsetParent) {
631
+ top -= curr.scrollTop;
632
+ curr = curr.parentNode;
633
+ }
634
+ while (_a) {
635
+ top += _a.offsetTop;
636
+ _a = _a.offsetParent;
637
+ }
638
+ return top}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==119))return _c.a$a;throw(_c)}},$aF: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;
639
+ var parent = _a.parentNode;
640
+ if(parent == null) {
641
+ return nil;
642
+ }
643
+ if (parent.nodeType != 1)
644
+ parent = null;
645
+ return parent || nil}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==118))return _c.a$a;throw(_c)}},$b8: function(_c,_a){var self,_b;_b=nil;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;self.$4(nil,_a,"left","");self.$4(nil,_a,"top","");_b=self.$4(nil,_a,"position","static");return _b}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==117))return _d.a$a;throw(_d)}},$b7: function(_d,_a){var self,_b,_c;self=this;try{if(arguments.length>2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));if(_a==null)_a=false;;_b=self.$bj(nil,"select");if((_c=_a,_c!==false&&_c!==nil)){self.$_(nil,_b,"multiple",true)};return _b}catch(_e){if(_e instanceof a$c && (!_e.a$b || _e.a$b==116))return _e.a$a;throw(_e)}},$b6: function(_c,_a,_b){var self;self=this;try{if(arguments.length!=3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));;_a.appendChild(_b); return nil}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==115))return _d.a$a;throw(_d)}},$b5: function(_d,_a,_b,_c){var self;self=this;try{if(arguments.length!=4)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 3)'));;
646
+ var count = 0, child = _a.firstChild, before = null;
647
+ while (child) {
648
+ if (child.nodeType == 1) {
649
+ if (count == _c) {
650
+ before = child;
651
+ break;
652
+ }
653
+ ++count;
654
+ }
655
+ child = child.nextSibling;
656
+ }
657
+
658
+ _a.insertBefore(_b, before);
659
+ return nil}catch(_e){if(_e instanceof a$c && (!_e.a$b || _e.a$b==114))return _e.a$a;throw(_e)}}},a$c: "DOM"});$x = a$d({a$j: [],a$e: $q,a$c: "Panel",a$h: {$av: function(){var self,_d;_d=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;a$j(self,'$av',nil,[]);_d=self.$v(function(_a){var _b;var _c=nil;_b=_a==null?nil:_a;_c=_b.$av();return _c});return _d},$b9: function(_c,_a){var self,_b;_b=nil;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;_b=self.$j(nil,"This panel does not support no-arg add()");return _b}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==120))return _d.a$a;throw(_d)}},$b_: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$j();return _a},$aC: function(){var self,_d;_d=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;a$j(self,'$aC',nil,[]);_d=self.$v(function(_a){var _b;var _c=nil;_b=_a==null?nil:_a;_c=_b.$aC();return _c});return _d},$b$: function(_e,_a,_b){var self,_c,_d;_d=nil;self=this;try{if(arguments.length!=3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));;_a.$aJ();if((_c=_b,_c!==false&&_c!==nil)){$o.$b6(nil,_b,_a.$ak())};_d=_a.$aH(nil,self);return _d}catch(_f){if(_f instanceof a$c && (!_f.a$b || _f.a$b==121))return _f.a$a;throw(_f)}},$v: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self.$j();return _a},$ca: function(_e,_a){var self,_b,_c,_d;_d=nil;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;if((_b=_a.$aF().$D(nil,self),_b===false||_b===nil)){self.$j(nil,"w is not a child of this panel")};_c=_a.$ak();_a.$aH(nil,nil);_d=$o.$bE(nil,$o.$aF(nil,_c),_c);return _d}catch(_f){if(_f instanceof a$c && (!_f.a$b || _f.a$b==122))return _f.a$a;throw(_f)}}}});$z = a$d({a$j: [],a$e: nil,a$c: "EventDispatchMap",a$h: {$aL: function(_c,_a){var self,_b;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;_b=$y.$cb(nil,_a);
660
+ var cb = self[_b];
661
+ if (cb) cb.apply(self, [nil, _a]);
662
+ return nil
663
+ }catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==123))return _d.a$a;throw(_d)}},$cc: function(_c,_a,_b){var self;self=this;try{if(arguments.length!=3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));;self[_a] = _b}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==124))return _d.a$a;throw(_d)}}}});$D = a$d({a$j: [],a$e: $k,a$f: {$cd: function(){var self,_a,_e;_e=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;$y.$ce();$A.$cf().$b9(nil,$r.$a());_a=$B.$a();_e=(10).$aU(function(){var _c;var _d=nil;;_c=$C.$a(nil,"XXX");_c.$cg(nil,_a);_d=$A.$cf().$b9(nil,_c);return _d});return _e}},a$c: "Main"});$c = a$d({a$j: [],a$e: $m,a$c: "RuntimeError"});$E = a$d({a$j: [],a$e: $s,a$c: "Fixnum",a$d: Number});$h = a$d({a$j: [],a$e: $k,a$f: {$a: function(_a){var self,_b,_c;self=this;_b=_a==null?nil:_a;try{if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;if((_c=_b,_c===false||_c===nil)){self.$j(nil,$a,"tried to create Proc object without a block")};return (function() {
664
+ try {
665
+ return _b.$a0.apply(_b, arguments);
666
+ } catch(e)
667
+ {
668
+ if (e instanceof a$c)
669
+ {
670
+ if (e.a$b == null)
671
+ {;self.$j(nil,$F,"break from proc-closure");}
672
+ return e.a$a;
673
+ }
674
+ else throw(e);
675
+ }
676
+ })}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==125))return _d.a$a;throw(_d)}}},a$c: "Proc",a$d: Function,a$h: {$a0: function(){var self,_a,_b;self=this;_a=[];for(_b=1;_b<arguments.length;_b++)_a.push(arguments[_b]);;
677
+ // TODO: use switch/case
678
+ if (_a.length == 0) return self();
679
+ else if (_a.length == 1) return self(_a[0]);
680
+ else return self(_a);}}});$F = a$d({a$j: [],a$e: $m,a$c: "LocalJumpError"});$G = a$d({a$j: [],a$e: $s,a$c: "Float",a$d: Number});$C = a$d({a$j: [],a$e: $q,a$c: "Label",a$h: {$ch: function(_d,_a){var self,_b,_c;_c=nil;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;_c=$o.$4(nil,self.$ak(),"whiteSpace",((_b=_a,_b!==false&&_b!==nil)?"normal":"nowrap"));return _c}catch(_e){if(_e instanceof a$c && (!_e.a$b || _e.a$b==126))return _e.a$a;throw(_e)}},$cn: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=$o.$bo(nil,self.$ak());return _a},$cm: function(){var self,_a,_b;_b=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_b=(_a=$o.$bd(nil,self.$ak(),"whiteSpace").$D(nil,"nowrap"),_a===false||_a===nil);return _b},$ci: function(_d,_a){var self,_c,_b;_b=nil;self=this;if(self.$cj==null)self.$cj=nil;if(self.$cl==null)self.$cl=nil;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;if((_c=self.$cl,_c!==false&&_c!==nil)){_b=self.$cj.$ck(nil,_a)}else{_b=nil};return _b}catch(_e){if(_e instanceof a$c && (!_e.a$b || _e.a$b==127))return _e.a$a;throw(_e)}},$cp: function(_d,_a){var self,_b,_c;_c=nil;self=this;if(self.$cl==null)self.$cl=nil;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;self.$cl=(_b=self.$cl, (_b!==false&&_b!==nil) ? _b : ([]));_c=self.$cl.$S(nil,_a);return _c}catch(_e){if(_e instanceof a$c && (!_e.a$b || _e.a$b==129))return _e.a$a;throw(_e)}},$co: function(_c,_a){var self,_b;_b=nil;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;_b=$o.$aN(nil,self.$ak(),_a);return _b}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==128))return _d.a$a;throw(_d)}},$cg: function(_d,_a){var self,_b,_c;_c=nil;self=this;if(self.$cq==null)self.$cq=nil;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;self.$cq=(_b=self.$cq, (_b!==false&&_b!==nil) ? _b : ([]));_c=self.$cq.$S(nil,_a);return _c}catch(_e){if(_e instanceof a$c && (!_e.a$b || _e.a$b==131))return _e.a$a;throw(_e)}},$c: function(_e,_a,_b){var self,_c,_d;_d=nil;self=this;try{if(arguments.length>3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));if(_a==null)_a=nil;if(_b==null)_b=nil;;self.$an(nil,$o.$aM());self.$ac(nil,(1).$ad(nil,(124)).$ad(nil,(131072)));self.$am(nil,"rwt-Label");if((_c=_a,_c!==false&&_c!==nil)){self.$co(nil,_a)};if((_c=_b.$q(),_c===false||_c===nil)){_d=self.$ch(nil,_b)}else{_d=nil};return _d}catch(_f){if(_f instanceof a$c && (!_f.a$b || _f.a$b==130))return _f.a$a;throw(_f)}},$ct: function(_d,_a){var self,_b,_c;_c=nil;self=this;if(self.$cj==null)self.$cj=nil;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;self.$cj=(_b=self.$cj, (_b!==false&&_b!==nil) ? _b : ([]));_c=self.$cj.$S(nil,_a);return _c}catch(_e){if(_e instanceof a$c && (!_e.a$b || _e.a$b==134))return _e.a$a;throw(_e)}},$aL: function(_h,_a){var self,_b,_g,_f;_f=nil;self=this;if(self.$cq==null)self.$cq=nil;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;_b=$y.$cb(nil,_a);if((_g=_b.$D(nil,(1)),_g!==false&&_g!==nil)){if((_g=self.$cq,_g!==false&&_g!==nil)){_f=self.$cq.$v(function(_c){var _d;var _e=nil;_d=_c==null?nil:_c;_e=_d.$cs(nil,self);return _e})}else{_f=nil}}else{_f=nil};return _f}catch(_i){if(_i instanceof a$c && (!_i.a$b || _i.a$b==133))return _i.a$a;throw(_i)}},$cr: function(_d,_a){var self,_c,_b;_b=nil;self=this;if(self.$cq==null)self.$cq=nil;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;if((_c=self.$cq,_c!==false&&_c!==nil)){_b=self.$cq.$ck(nil,_a)}else{_b=nil};return _b}catch(_e){if(_e instanceof a$c && (!_e.a$b || _e.a$b==132))return _e.a$a;throw(_e)}},$cu: function(_d,_a){var self,_c,_b;_b=nil;self=this;if(self.$cj==null)self.$cj=nil;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;if((_c=self.$cj,_c!==false&&_c!==nil)){_b=self.$cj.$ck(nil,_a)}else{_b=nil};return _b}catch(_e){if(_e instanceof a$c && (!_e.a$b || _e.a$b==135))return _e.a$a;throw(_e)}}}});$H = a$d({a$j: [],a$e: $k,a$c: "NilClass",a$d: NilClass,a$h: {$cv: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=0.0;return _a},$q: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=true;return _a},$o: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a="";return _a},$cw: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=0;return _a},$R: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=[];return _a},$cx: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=[];return _a},$i: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a="nil";return _a}}});$j = a$d({a$j: [],a$e: $k,a$c: "Method",a$h: {$c: function(_f,_a,_b){var self,_c,_d,_e;_e=nil;self=this;try{if(arguments.length!=3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));;(_c=[_a,_b],self.$cy=_c[0]==null?nil:_c[0],self.$cz=_c[1]==null?nil:_c[1],_c);_d=nil;_d = _a[a$f[_b]];
681
+ if (_d==null) _d = nil;;if((_c=_d,_c!==false&&_c!==nil)){_e=self.$cA=_d}else{_e=self.$j(nil,$n,("undefined method `" + (_b).$o() + ("' for class `").$o() + (_a.$z().$e()).$o() + ("'").$o()))};return _e}catch(_g){if(_g instanceof a$c && (!_g.a$b || _g.a$b==136))return _g.a$a;throw(_g)}},$a0: function(_c){var self,_a,_b,_d;self=this;_d=_c==null?nil:_c;try{_a=[];for(_b=1;_b<arguments.length;_b++)_a.push(arguments[_b]);;return self.$cA.apply(self.$cy, [_d].concat(_a))}catch(_e){if(_e instanceof a$c && (!_e.a$b || _e.a$b==137))return _e.a$a;throw(_e)}},$i: function(){var self,_a;_a=nil;self=this;if(self.$cy==null)self.$cy=nil;if(self.$cz==null)self.$cz=nil;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=("#<Method: " + (self.$cy.$z().$e()).$o() + ("#").$o() + (self.$cz).$o() + (">").$o());return _a}}});$y = a$d({a$j: [],a$e: $k,a$f: {$cB: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return _a.screenX}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==138))return _c.a$a;throw(_c)}},$cE: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return _a.clientX}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==141))return _c.a$a;throw(_c)}},$cD: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return _a.ctrlKey}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==140))return _c.a$a;throw(_c)}},$cC: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return _a.screenY}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==139))return _c.a$a;throw(_c)}},$cG: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return _a.clientY}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==143))return _c.a$a;throw(_c)}},$cF: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;_a.preventDefault(); return nil}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==142))return _c.a$a;throw(_c)}},$cH: function(_c,_a,_b){var self;self=this;try{if(arguments.length!=3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));;_a.keyCode = _b; return nil}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==144))return _d.a$a;throw(_d)}},$cL: function(_f,_a,_b,_c){var self,_e,_d;_d=nil;self=this;try{if(arguments.length!=4)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 3)'));;if((_e=_c,_e!==false&&_e!==nil)){_d=_c.$aL(nil,_a)}else{_d=nil};return _d}catch(_g){if(_g instanceof a$c && (!_g.a$b || _g.a$b==148))return _g.a$a;throw(_g)}},$cK: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return _a.which || _a.keyCode}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==147))return _c.a$a;throw(_c)}},$cJ: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return !!_a.getMetaKey}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==146))return _c.a$a;throw(_c)}},$cI: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return _a.relatedTarget || nil}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==145))return _c.a$a;throw(_c)}},$cP: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return _a.altKey}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==153))return _c.a$a;throw(_c)}},$cO: function(_c,_a){var self,_b;_b=nil;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;_b=self.$j();return _b}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==152))return _d.a$a;throw(_d)}},$cb: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;
682
+ switch (_a.type) {
683
+ case "blur": return 0x01000;
684
+ case "change": return 0x00400;
685
+ case "click": return 0x00001;
686
+ case "dblclick": return 0x00002;
687
+ case "focus": return 0x00800;
688
+ case "keydown": return 0x00080;
689
+ case "keypress": return 0x00100;
690
+ case "keyup": return 0x00200;
691
+ case "load": return 0x08000;
692
+ case "losecapture": return 0x02000;
693
+ case "mousedown": return 0x00004;
694
+ case "mousemove": return 0x00040;
695
+ case "mouseout": return 0x00020;
696
+ case "mouseover": return 0x00010;
697
+ case "mouseup": return 0x00008;
698
+ case "scroll": return 0x04000;
699
+ case "error": return 0x10000;
700
+ case "mousewheel": return 0x20000;
701
+ case "DOMMouseScroll": return 0x20000;
702
+ }}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==151))return _c.a$a;throw(_c)}},$cN: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return _a.type}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==150))return _c.a$a;throw(_c)}},$cM: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return _a.toString()}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==149))return _c.a$a;throw(_c)}},$cQ: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return _a.target || nil}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==154))return _c.a$a;throw(_c)}},$cS: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return _a.button}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==156))return _c.a$a;throw(_c)}},$cR: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return _a.shiftKey}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==155))return _c.a$a;throw(_c)}},$ce: function(){var self;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;
703
+ // assign event dispatcher
704
+ window.a$o = function(evt) {
705
+ self.$cL(nil, evt, this, this.a$p || nil);
706
+ };},$cU: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return _a.relatedTarget || nil}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==158))return _c.a$a;throw(_c)}},$cT: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return _a.repeat}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==157))return _c.a$a;throw(_c)}}},a$c: "Event"});$B = a$d({a$j: [],a$e: $k,a$c: "MyEventListener",a$h: {$cs: function(_c,_a){var self,_b;_b=nil;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;_b=_a.$co(nil,_a.$cn().$au(nil,"-"));return _b}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==159))return _d.a$a;throw(_d)}}}});$I = a$d({a$j: [],a$e: $k,a$c: "MatchData",a$h: {$c: function(_c,_a){var self,_b;_b=nil;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;_b=self.$cV=_a;return _b}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==160))return _d.a$a;throw(_d)}}}});$J = a$d({a$j: [],a$e: $k,a$c: "Boolean",a$d: Boolean,a$h: {$D: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return (self == _a)}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==161))return _c.a$a;throw(_c)}},$o: function(){var self;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;return (self == true ? 'true' : 'false')},$i: function(){var self;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;return (self == true ? 'true' : 'false')}}});$a = a$d({a$j: [],a$e: $m,a$c: "ArgumentError"});$K = a$d({a$j: [],a$e: $x,a$c: "AbsolutePanel",a$h: {$b9: function(_d,_a){var self,_c,_b;_b=nil;self=this;if(self.$cY==null)self.$cY=nil;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;self.$b$(nil,_a,self.$ak());if((_c=self.$cY,_c!==false&&_c!==nil)){_b=self.$cY.$S(nil,_a)}else{_b=nil};return _b}catch(_e){if(_e instanceof a$c && (!_e.a$b || _e.a$b==163))return _e.a$a;throw(_e)}},$cW: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;self.$cX(nil,_a);return $o.$7(nil,_a.$ak()).$aR(nil,$o.$7(nil,self.$ak()))}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==162))return _c.a$a;throw(_c)}},$cZ: function(_c,_a){var self,_b;_b=nil;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;_a.$aJ();$o.$b8(nil,_a.$ak());_b=self.$b9(nil,_a);return _b}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==165))return _d.a$a;throw(_d)}},$cX: function(_d,_a){var self,_c,_b;_b=nil;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;if((_c=_a.$aF().$D(nil,self),_c===false||_c===nil)){_b=self.$j(nil,"Widget must be a child of this panel")}else{_b=nil};return _b}catch(_e){if(_e instanceof a$c && (!_e.a$b || _e.a$b==164))return _e.a$a;throw(_e)}},$v: function(_a){var self,_b,_c;_c=nil;self=this;_b=_a==null?nil:_a;if(self.$cY==null)self.$cY=nil;try{if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_c=self.$cY.$v(_b);return _c}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==167))return _d.a$a;throw(_d)}},$c0: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;self.$cX(nil,_a);return $o.$2(nil,_a.$ak()).$aR(nil,$o.$2(nil,self.$ak()))}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==166))return _c.a$a;throw(_c)}},$c: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;self.$cY=[];self.$an(nil,$o.$aM());$o.$4(nil,self.$ak(),"position","relative");_a=$o.$4(nil,self.$ak(),"overflow","hidden");return _a},$ca: function(_c,_a){var self,_b;_b=nil;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;a$j(self,'$ca',nil,[_a]);_b=$o.$b8(nil,_a.$ak());return _b}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==169))return _d.a$a;throw(_d)}},$c1: function(_c,_a){var self,_b;_b=nil;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;self.$cX(nil,_a);_b=$o.$b8(nil,_a.$ak());return _b}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==168))return _d.a$a;throw(_d)}},$c2: function(_e,_a,_b,_c){var self,_d;_d=nil;self=this;try{if(arguments.length!=4)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 3)'));;self.$cX(nil,_a);_d=$o.$br(nil,_a.$ak(),_b,_c);return _d}catch(_f){if(_f instanceof a$c && (!_f.a$b || _f.a$b==170))return _f.a$a;throw(_f)}},$c3: function(_e,_a,_b,_c){var self,_d;_d=nil;self=this;try{if(arguments.length!=4)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 3)'));;_a.$aJ();$o.$br(nil,_a.$ak(),_b,_c);_d=self.$b9(nil,_a);return _d}catch(_f){if(_f instanceof a$c && (!_f.a$b || _f.a$b==171))return _f.a$a;throw(_f)}}}});a$d({a$j: [],a$g: $b});$e = a$d({a$j: [],a$e: $k,a$c: "String",a$d: String,a$h: {$au: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return(self + _a)}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==173))return _c.a$a;throw(_c)}},$c4: function(_c,_a,_b){var self;self=this;try{if(arguments.length!=3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));;self.replace(pattern, replacement)}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==172))return _d.a$a;throw(_d)}},$c7: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;
707
+ var i = self.search(_a);
708
+ return (i == -1 ? nil : i)}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==175))return _c.a$a;throw(_c)}},$c6: function(_f,_a,_b){var self,_c,_d,_e;self=this;try{if(arguments.length<2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));if(arguments.length>3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));if(_b==null)_b=" ";;if((_c=_b.$l(),_c!==false&&_c!==nil)){self.$j(nil,$a,"zero width padding")};_d=_a.$aR(nil,self.$a$());if((_c=_d.$N(nil,0),_c!==false&&_c!==nil)){return self};_e="";while(_e.length < _d) _e += _b;;return _e.$a6(nil,0,_d).$au(nil,self)}catch(_g){if(_g instanceof a$c && (!_g.a$b || _g.a$b==174))return _g.a$a;throw(_g)}},$c5: function(){var self;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;return self.length},$a6: function(_d,_a,_b){var self,_c;self=this;try{if(arguments.length<2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));if(arguments.length>3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));if(_b==null)_b=nil;;if((_c=_b.$q(),_c!==false&&_c!==nil)){return self.charAt(_a) || nil}else{if((_c=_b.$M(nil,0),_c!==false&&_c!==nil)){return nil};return self.substring(_a, _a+_b)}}catch(_e){if(_e instanceof a$c && (!_e.a$b || _e.a$b==177))return _e.a$a;throw(_e)}},$c8: function(_f,_a,_b){var self,_c,_d,_e;self=this;try{if(arguments.length<2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));if(arguments.length>3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));if(_b==null)_b=" ";;if((_c=_b.$l(),_c!==false&&_c!==nil)){self.$j(nil,$a,"zero width padding")};_d=_a.$aR(nil,self.$a$());if((_c=_d.$N(nil,0),_c!==false&&_c!==nil)){return self};_e="";while(_e.length < _d) _e += _b;;return self.$au(nil,_e.$a6(nil,0,_d))}catch(_g){if(_g instanceof a$c && (!_g.a$b || _g.a$b==176))return _g.a$a;throw(_g)}},$$: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return self.split(_a)}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==178))return _c.a$a;throw(_c)}},$o: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self;return _a},$a$: function(){var self;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;return self.length},$9: function(){var self;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;return self.replace(/^\s+/, '').replace(/\s+$/, '')},$l: function(){var self;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;return(self === "")},$c_: function(_g,_a,_b){var self,_c,_d,_e,_f;self=this;try{if(arguments.length<2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));if(arguments.length>3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));if(_b==null)_b=nil;;(_c=["",self,nil],_d=_c[0]==null?nil:_c[0],_e=_c[1]==null?nil:_c[1],_f=_c[2]==null?nil:_c[2],_c);while(_e.length > 0) {
709
+ if (_f = _e.match(_a)) {
710
+ _d += _e.slice(0, _f.index);;if((_c=_b,_c!==false&&_c!==nil)){_d=_d.$au(nil,_b)}else{_d=_d.$au(nil,_g(_f.$F()).$o())};_e = _e.slice(_f.index + _f[0].length);
711
+ } else {
712
+ _d += _e; _e = '';
713
+ }
714
+ } return _d}catch(_h){if(_h instanceof a$c && (!_h.a$b || _h.a$b==180))return _h.a$a;throw(_h)}},$c9: function(_c,_a,_b){var self;self=this;try{if(arguments.length<2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));if(arguments.length>3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));if(_b==null)_b=0;;
715
+ var i = self.indexOf(_a, _b);
716
+ return (i == -1) ? nil : i}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==179))return _d.a$a;throw(_d)}},$i: function(){var self,_a,_b;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a={
717
+ '\b': '\\b',
718
+ '\t': '\\t',
719
+ '\n': '\\n',
720
+ '\f': '\\f',
721
+ '\r': '\\r',
722
+ '\\': '\\\\'
723
+ };;_b=self.$c_(function(_c){var _d,_e;_d=_c==null?nil:_c;_e=_a[_d];return _e ? _e :
724
+ '\\u00' + ("0" + _d.charCodeAt().toString(16)).substring(0,2);},/[\x00-\x1f\\]/);return ('"' + _b.replace(/"/g, '\\"') + '"');}}});$L = a$d({a$j: [$u],a$e: $k,a$f: {$a: function(){var self;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;return []}},a$c: "Array",a$d: Array,a$h: {$au: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;return self.concat(_a)}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==183))return _c.a$a;throw(_c)}},$S: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;self.push(_a); return self}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==182))return _c.a$a;throw(_c)}},$ck: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;
725
+ var del = false;
726
+ for (var i=0; i < self.length; i++)
727
+ {
728
+ if (_a.$g(nil, self[i]))
729
+ {
730
+ self.splice(i,1);
731
+ del = true;
732
+ // stay at the current index unless we are at the last element!
733
+ if (i < self.length-1) --i;
734
+ }
735
+ }
736
+ return del ? _a : nil}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==181))return _c.a$a;throw(_c)}},$c5: function(){var self;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;return self.length},$a6: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;var v = self[_a]; return (v == null ? nil : v)}catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==185))return _c.a$a;throw(_c)}},$b_: function(){var self;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;self.length=0; return self},$g: function(_b,_a){var self;self=this;try{if(arguments.length!=2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));;
737
+ if (!(_a instanceof Array)) return false;
738
+ if (self.length != _a.length) return false;
739
+
740
+ //
741
+ // compare element-wise
742
+ //
743
+ for (var i = 0; i < self.length; i++)
744
+ {
745
+ if (! self[i].$g(nil, _a[i]))
746
+ {
747
+ //
748
+ // at least for one element #eql? holds not true
749
+ //
750
+ return false;
751
+ }
752
+ }
753
+
754
+ return true;
755
+ }catch(_c){if(_c instanceof a$c && (!_c.a$b || _c.a$b==184))return _c.a$a;throw(_c)}},$c$: function(){var self;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;return self.concat().reverse()},$H: function(){var self;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;var v = self[self.length - 1]; return (v == null ? nil : v)},$o: function(){var self,_d;_d=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_d=self.$a2(function(_a){var _b;var _c=nil;_b=_a==null?nil:_a;_c=_b.$o();return _c}).$a7();return _d},$a8: function(_c,_a,_b){var self;self=this;try{if(arguments.length!=3)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 2)'));;return (self[_a] = _b)}catch(_d){if(_d instanceof a$c && (!_d.a$b || _d.a$b==188))return _d.a$a;throw(_d)}},$v: function(_a){var self;self=this;try{if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;
756
+ var elem;
757
+ for (var i=0; i < self.length; i++) {
758
+ elem = self[i];;_a((elem == null ? nil : elem));}
759
+ return self}catch(_b){if(_b instanceof a$c && (!_b.a$b || _b.a$b==187))return _b.a$a;throw(_b)}},$da: function(_a){var self;self=this;try{if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;
760
+ var elem;
761
+ for (var i=0; i < self.length; i++) {
762
+ elem = self[i];;_a([(elem == null ? nil : elem),i]);}
763
+ return self}catch(_b){if(_b instanceof a$c && (!_b.a$b || _b.a$b==186))return _b.a$a;throw(_b)}},$F: function(){var self;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;var v = self[0]; return (v == null ? nil : v)},$a$: function(){var self;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;return self.length},$db: function(){var self;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;
764
+ var elem = self.pop();
765
+ return (elem == null ? nil : elem)},$k: function(){var self;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;
766
+ var elem = self.shift();
767
+ return (elem == null ? nil : elem)},$l: function(){var self;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;return (self.length == 0)},$R: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self;return _a},$dd: function(){var self,_a,_b;self=this;_a=[];for(_b=1;_b<arguments.length;_b++)_a.push(arguments[_b]);;self.push.apply(self, _a); return self},$dc: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=self;return _a},$dg: function(){var self;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;return self.concat()},$i: function(){var self,_a,_e;_e=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a="[";_a=_a.$au(nil,self.$a2(function(_b){var _c;var _d=nil;_c=_b==null?nil:_b;_d=_c.$i();return _d}).$a7(nil,", "));_a=_a.$au(nil,"]");_e=_a;return _e},$df: function(){var self;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;self.reverse(); return self},$de: function(){var self,_a,_b;self=this;_a=[];for(_b=1;_b<arguments.length;_b++)_a.push(arguments[_b]);;self.unshift.apply(self, _a); return self},$a7: function(_i,_a){var self,_b,_d,_h;_h=nil;self=this;try{if(arguments.length>2)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 1)'));if(_a==null)_a="";;_b="";self.$da(function(_c){var _e,_f;var _g=nil;(_d=a$k(_c),_e=_d[0]==null?nil:_d[0],_f=_d[1]==null?nil:_d[1],_d);_b=_b.$au(nil,_e.$o());if((_d=_f.$D(nil,self.$a$().$aR(nil,1)),_d===false||_d===nil)){_g=_b=_b.$au(nil,_a)}else{_g=nil};return _g});_h=_b;return _h}catch(_j){if(_j instanceof a$c && (!_j.a$b || _j.a$b==189))return _j.a$a;throw(_j)}}}});$A = a$d({a$j: [],a$e: $K,a$f: {$cf: function(){var self,_a,_b;_b=nil;self=this;if(self.$di==null)self.$di=nil;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_b=self.$di=(_a=self.$di, (_a!==false&&_a!==nil) ? _a : (self.$a()));return _b}},a$c: "RootPanel",a$h: {$dh: function(){var self;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;return document.body},$v: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;_a=nil;return _a},$c: function(){var self,_a;_a=nil;self=this;if(arguments.length>1)throw($a.$a(nil,'wrong number of arguments ('+Math.max(0,arguments.length-1).toString()+' for 0)'));;self.$an(nil,self.$dh());_a=self.$aC();return _a}}}); $b.a$e = $k;
768
+ var a$l = [$i,$k,$l,$f,$m,$n,$g,$p,$q,$r,$d,$s,$t,$u,$v,$w,$o,$x,$z,$D,$c,$E,$h,$F,$G,$C,$H,$j,$y,$B,$I,$J,$a,$K,$b,$e,$L,$A];
769
+ a$m(a$l);
770
+ for (var i=0; i<a$l.length; i++) a$n(a$l[i]);
771
+ function main() { return $D.$cd.apply($D, arguments); }