diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..3a62a37 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +.DS_Store +_site diff --git a/CNAME b/CNAME new file mode 100644 index 0000000..bde64e0 --- /dev/null +++ b/CNAME @@ -0,0 +1 @@ +albacorebuild.net \ No newline at end of file diff --git a/_config.yml b/_config.yml new file mode 100644 index 0000000..9307d90 --- /dev/null +++ b/_config.yml @@ -0,0 +1,3 @@ +url: http://albacorebuild.net +exclude: +- _source \ No newline at end of file diff --git a/_layouts/default.html b/_layouts/default.html new file mode 100644 index 0000000..05c76ba --- /dev/null +++ b/_layouts/default.html @@ -0,0 +1,4 @@ +--- +layout: master +--- +{{ content }} diff --git a/_layouts/master.html b/_layouts/master.html new file mode 100644 index 0000000..afaaf81 --- /dev/null +++ b/_layouts/master.html @@ -0,0 +1,97 @@ + + + +
+ + + + + + + + + +ruby install_dependencies.rb
+
+This will install all required dependencies.
+
+h3. Running The RSpec Tests
+
+If you wish to run the rspec test suite, you can get a list of the available specs by running rake -T
in the root of your Albacore clone. The specs:all
task will run every spec. Other tasks will run only the stated specs.
+
+h4. Note on NCover Specs
+
+You must have a valid NCover 3.x license installed on your system, to run the NCover* specs. If you do not have a license installed, you will receive an error while attempting to run these specs.
diff --git a/_posts/2009-12-03-v0.0.8-ReleaseNotes.textile b/_posts/2009-12-03-v0.0.8-ReleaseNotes.textile
new file mode 100644
index 0000000..b98ac58
--- /dev/null
+++ b/_posts/2009-12-03-v0.0.8-ReleaseNotes.textile
@@ -0,0 +1,160 @@
+---
+layout: post
+title: "v0.0.8 Release Notes: More Rake-ish Than Ever!"
+---
+
+There are a significant number of changes that have gone into Albacore in the last few weeks. Everything from new tasks and functionality, updated syntax for the tasks, and bug fixes, too.
+
+h2. Albacore Task Syntax Changes
+
+There was some discussion on "the google group":http://groups.google.com/group/albacoredev surrounding a peice of functionality that we decided to leave out. However, the result of the discussion was the realization that the syntax of the Albacore tasks did not match the built in rake tasks, such as "task" and "file". As a result of this discussion, we're making things more 'rake-ish' for the task usage. After all, that was one of "the original goals":http://www.lostechies.com/blogs/derickbailey/archive/2009/09/17/how-a-net-developer-hacked-out-a-rake-task.aspx right?
+
+The end result is a new shortcut syntax that allows you to do this:
+
+msbuildtask do |msb|
+ msb.solution = "mysolution.sln"
+ #... other settings here
+end
+
+Youc an do this with any task... so, Albacore::AssemblyInfoTask.new is now assemblyinfotask do ... end
, Albacore::NCoverConsoleTask.new is now ncoverconsoletask do ... end
, etc.
+
+The old syntax still works, too. However, you are now required to pass a task name into the .new constructor. For example, you can still call Albacore::NCoverConsoleTask.new(:ncoverconsole) do ... end
. The default names have been moved to the new syntax shortcuts, and out of the old tasks.
+
+Additionally, with the new syntax shortcut, you don't need to specify Albacore::
and you don't need to speify the .new
initializer. You can just call ncoverconsoletask
or assemblyinfotask
directly.
+
+h2. Supporting The Complete Task Syntax
+
+In addition to the new syntax shortcut, the complete rake task syntax is now supported by all Albacore tasks. This means you can take advantage of the task parameters and dependencies when you want to, like this:
+
+msbuildtask :msbuild, [:config] => :assemblyinfo do |msb, args|
+ msb.properties = {:Configuration => args.config}
+ #... other settings here
+end
+
+and call it with rake like this:
+
+ rake msbuild[Debug]
+
+The new syntax let's you do any valid combination of the "task" syntax...
+
+msbuildtask :name => [:dep1, :dep2, :etc] do |msb| ... end
+
+msbuildtask do |msb| ... end
+
+msbuildtask :name do |msb| ... end
+
+msbuildtask :name, [:param, :param2, :etc] do |msb, args| ... end
+
+msbuildtask :name, [:param, :param2, :etc] => [:dep1, :dep2, :etc] do |msb, args| ... end
+
+
+h2. Nunit, XUnit and MSpec Tasks
+
+These have kind of, sort of been around for a while now. They are partially in the .7 release, but are officially first class citizens of the .8 release.
+
+From the rakefile, here are some samples of the new tasks:
+
+h3. NUnit Task
+
+desc "NUnit Test Runner Example"
+nunittask do |nunit|
+ nunit.path_to_command = "NUnit/nunit-console.exe"
+ nunit.assemblies << "assemblies/TestSolution.Tests.dll"
+end
+
+
+h3. XUnit Task
+
+desc "XUnit Test Runner Example"
+xunittask do |xunit|
+ xunit.path_to_command = "XUnit/xunit.console.exe"
+ xunit.assemblies << "assemblies/TestSolution.XUnitTests.dll"
+end
+
+
+h3. MSpec Task
+
+desc "MSpec Test Runner Example"
+mspectask do |mspec|
+ mspec.path_to_command = "MSpec/Machine.Specifications.ConsoleRunner.exe"
+ mspec.assemblies << "assemblies/TestSolution.MSpecTests.dll"
+end
+
+
+h2. Generic Command Execution Task
+
+As a way to help people use the built in logging and auto-configuration capabilities of Albacore, a generic CommandTask has been added. This task will allow you to run any arbitrary command, with parameters, from your rakefile.
+
+As a contrived example that illustrates how it works, here is how you could run the nunit console app with a --help parameter to get the list of options.
+
+commandtask do |cmd|
+ cmd.path_to_command = "tools/nunit-console-x86.exe"
+ cmd.parameters << ["--help"]
+end
+
+
+h2. Include Files For Expand Templates Data
+
+Several users requested the ability to have a "global" data set for the expand templates task. This would allow common data across all environments to be set up in a single location. After some thought, a new @include: filename.yml
directive was added to the expand templates task. This will allow you to reference an external yaml file and have the contents of that file included in the data that is used for the expansion.
+
+You can override the external file data by including specific key / value pairs in your regular data file. This works for both simple key / value pairs, and for template specific data.
+
+h3. An extended example
+
+If you have a template, such as this:
+
+h4. web.config.template
+
+
+
+
+
+
+
+
+You can provide some data in a web.config.yml file and some data in an external global.yml file, like this:
+
+h4. web.config.yml
+
+@include: global.yml
+value: this is goes where the 'name' is
+
+h4. global.yml
+
+another: setting goes here.
+value: you won't see this. it's overriden by the web.config.yml
+
+
+You can use the global.yml or the web.config.yml file reference from any other .yml file that is being parsed by the expand templates task. The task will recursively read and import the settings - so be careful not to create a circular reference loop!
+
+h2. SFTP and SSH: Connect Via Keys
+
+The SFTP and SSH tasks can now connect to remote servers via rsa keys, instead of just username/password. Specify the .key attribute, instead of a password, to connect via rsa keys.
+
+ssh do |ssh|
+ ssh.server = "my server"
+ ssh.key = ... an rsa key
+ ssh.commands << "dir"
+end
+
+For more information on how to specify the key, see the "Net::SSH documentation":http://net-ssh.rubyforge.org/
+
+h2. Zip Loose Directories And Rename To output_file
+
+The zip task has been updated to allow directories to be zipped, and the output is now specified as output_file.
+
+desc "Run ZipDirectory example"
+ziptask do |zip|
+ zip.output_path = File.dirname(__FILE__)
+ zip.directories_to_zip = ["lib", "spec"]
+ zip.additional_files = "README.markdown"
+ zip.file = 'albacore_example.zip'
+end
+
+h2. For The Developer / Contributor
+
+There is now an easy way to install all of the Albacore dependencies. This will let you run and build the gem and the various tasks in albacore, as well as run the rspec tests. For more information on this, please see the "How To Contribute":http://albacorebuild.net/2009/11/30/HowToContribute.html blog post or "wiki page":http://wiki.github.com/derickbailey/Albacore/howtocontribute.
+
+h2. A Lot Of Changes, A Long Way To Go
+
+As you can see, there are a significant number of improvements and changes to albacore in this release. However, we still have a long way to go. We're always looking for good patches, bugs to fix, ideas for improving or any other way that anyon might want to "contribute to the project":http://wiki.github.com/derickbailey/Albacore/howtocontribute . Be sure to check the "issues list":http://github.com/derickbailey/Albacore/issues and join the the "group discussion":http://groups.google.com/group/albacoredev if you are wanting to help out.
\ No newline at end of file
diff --git a/_source/icons/github-color.png b/_source/icons/github-color.png
new file mode 100644
index 0000000..b261af8
Binary files /dev/null and b/_source/icons/github-color.png differ
diff --git a/_source/icons/github.png b/_source/icons/github.png
new file mode 100644
index 0000000..8d65bb9
Binary files /dev/null and b/_source/icons/github.png differ
diff --git a/_source/icons/google-color.png b/_source/icons/google-color.png
new file mode 100644
index 0000000..b2aaac1
Binary files /dev/null and b/_source/icons/google-color.png differ
diff --git a/_source/icons/google.png b/_source/icons/google.png
new file mode 100644
index 0000000..fee64ad
Binary files /dev/null and b/_source/icons/google.png differ
diff --git a/_source/icons/inkscape_pasted_image_20091216_211542.png b/_source/icons/inkscape_pasted_image_20091216_211542.png
new file mode 100644
index 0000000..f4edbaa
Binary files /dev/null and b/_source/icons/inkscape_pasted_image_20091216_211542.png differ
diff --git a/_source/icons/rss-color.png b/_source/icons/rss-color.png
new file mode 100644
index 0000000..3a80f2d
Binary files /dev/null and b/_source/icons/rss-color.png differ
diff --git a/_source/icons/rss.png b/_source/icons/rss.png
new file mode 100644
index 0000000..6f25aed
Binary files /dev/null and b/_source/icons/rss.png differ
diff --git a/_source/icons/square base.svg b/_source/icons/square base.svg
new file mode 100644
index 0000000..c77f024
--- /dev/null
+++ b/_source/icons/square base.svg
@@ -0,0 +1,727 @@
+
+
+
+
diff --git a/_source/icons/square icons.svg b/_source/icons/square icons.svg
new file mode 100644
index 0000000..ea8d214
--- /dev/null
+++ b/_source/icons/square icons.svg
@@ -0,0 +1,4032 @@
+
+
+
+
diff --git a/_source/icons/twitter-color.png b/_source/icons/twitter-color.png
new file mode 100644
index 0000000..a549808
Binary files /dev/null and b/_source/icons/twitter-color.png differ
diff --git a/_source/icons/twitter.png b/_source/icons/twitter.png
new file mode 100644
index 0000000..4ae5c05
Binary files /dev/null and b/_source/icons/twitter.png differ
diff --git a/_source/logo/Albacore Idea 1.svg b/_source/logo/Albacore Idea 1.svg
new file mode 100644
index 0000000..7505cab
--- /dev/null
+++ b/_source/logo/Albacore Idea 1.svg
@@ -0,0 +1,220 @@
+
+
+
+
diff --git a/_source/logo/Albacore Logo 2.svg b/_source/logo/Albacore Logo 2.svg
new file mode 100644
index 0000000..fe3f259
--- /dev/null
+++ b/_source/logo/Albacore Logo 2.svg
@@ -0,0 +1,204 @@
+
+
+
+
diff --git a/_source/logo/Albacore Logo 3.svg b/_source/logo/Albacore Logo 3.svg
new file mode 100644
index 0000000..131ea0f
--- /dev/null
+++ b/_source/logo/Albacore Logo 3.svg
@@ -0,0 +1,605 @@
+
+
+
+
diff --git a/_source/logo/Albacore Logo.svg b/_source/logo/Albacore Logo.svg
new file mode 100644
index 0000000..2f6f5f5
--- /dev/null
+++ b/_source/logo/Albacore Logo.svg
@@ -0,0 +1,185 @@
+
+
+
+
diff --git a/_source/logo/AlbacoreHead.png b/_source/logo/AlbacoreHead.png
new file mode 100644
index 0000000..fd9ad62
Binary files /dev/null and b/_source/logo/AlbacoreHead.png differ
diff --git a/_source/logo/AlbacoreLogo2.png b/_source/logo/AlbacoreLogo2.png
new file mode 100644
index 0000000..359c157
Binary files /dev/null and b/_source/logo/AlbacoreLogo2.png differ
diff --git a/_source/logo/AlbacoreLogo3.png b/_source/logo/AlbacoreLogo3.png
new file mode 100644
index 0000000..5f80b3a
Binary files /dev/null and b/_source/logo/AlbacoreLogo3.png differ
diff --git a/atom.xml b/atom.xml
new file mode 100644
index 0000000..d0d29d1
--- /dev/null
+++ b/atom.xml
@@ -0,0 +1,27 @@
+---
+layout: nil
+---
+
+
+
+ Albacore: Dolphin-Safe Rake Tasks For .NET Systems
+
+
+ {{ site.time | date_to_xmlschema }}
+ http://albacorebuild.net/
+
+ The Albacore Crew
+ derickbailey@gmail.com
+
+
+ {% for post in site.posts %}
+
+ {{ post.title }}
+
+ {{ post.date | date_to_xmlschema }}
+ http://albacorebuild.net{{ post.id }}
+ {{ post.content | xml_escape }}
+
+ {% endfor %}
+
+
\ No newline at end of file
diff --git a/css/main.css b/css/main.css
new file mode 100644
index 0000000..449bd05
--- /dev/null
+++ b/css/main.css
@@ -0,0 +1,125 @@
+body {
+ margin: 0px;
+ background-color: #ffffff;
+ font-family: Helvetica, Arial, FreeSans;
+ color: #000000;
+ position: relative;
+}
+
+a {
+ color: #004F15;
+}
+
+a:visited {
+ color: #004F15;
+}
+
+a:hover, a:active {
+ color: #186F35;
+}
+
+#titlebar {
+ width: 1000px;
+ height: 151px;
+ margin: 0 auto;
+ margin-top: 25px;
+ margin-bottom: 25px;
+}
+
+#logo {
+ float: left;
+ height: 151px;
+ width: 770px;
+ text-align: center;
+}
+
+#navigation {
+ float: right;
+ text-align: center;
+ vertical-align: middle;
+}
+
+#container {
+ width: 1000px;
+ margin: 0 auto;
+}
+
+#main_content {
+ width: 730px;
+ padding: 10px;
+ float: left;
+}
+
+#sidebar {
+ width: 230px;
+ padding: 10px;
+ padding-left: 10px;
+ float: right;
+ margin-top: 0px;
+ text-align: center;
+}
+
+.sidebar_item {
+ padding-left: 5px;
+ padding-bottom: 5px;
+ margin-bottom: 25px;
+ border-left: 1px solid #cfcfcf;
+ border-bottom: 1px solid #cfcfcf;
+ text-align: center;
+}
+
+p {
+ margin-left: 25px;
+}
+
+#footer{
+ font-size: .7em;
+ width: 1000px;
+ margin: 0 auto;
+ margin-bottom: 10px;
+ clear: both;
+}
+
+#footer_content{
+ width: 750px;
+ height: 15px;
+ background-color: #efefef;
+ padding: 2px;
+}
+
+.footer_left{
+ float: left;
+}
+
+.footer_right{
+ float: right;
+}
+
+pre code{
+ margin-left: 25px;
+ overflow: scroll;
+ width: *;
+ display: block;
+ background-color: #cfcfcf;
+ padding: 10px;
+}
+
+code {
+ background-color: #cfcfcf;
+ padding-left: 5px;
+ padding-right: 5px;
+}
+
+h1, h2 {
+ margin-top: 0px;
+ padding: 0px;
+}
+
+#post_comments{
+ margin-top: 25px;
+ padding-top: 15px;
+ border-top: 1px solid #cfcfcf;
+ margin-bottom: 10px;
+ padding-bottom: 25px;
+ border-bottom: 1px solid #cfcfcf;
+}
diff --git a/favicon.ico b/favicon.ico
new file mode 100644
index 0000000..c28db06
Binary files /dev/null and b/favicon.ico differ
diff --git a/images/AlbacoreLogo3.png b/images/AlbacoreLogo3.png
new file mode 100644
index 0000000..5f80b3a
Binary files /dev/null and b/images/AlbacoreLogo3.png differ
diff --git a/images/github-color.png b/images/github-color.png
new file mode 100644
index 0000000..b261af8
Binary files /dev/null and b/images/github-color.png differ
diff --git a/images/github.png b/images/github.png
new file mode 100644
index 0000000..8d65bb9
Binary files /dev/null and b/images/github.png differ
diff --git a/images/google-color.png b/images/google-color.png
new file mode 100644
index 0000000..b2aaac1
Binary files /dev/null and b/images/google-color.png differ
diff --git a/images/google.png b/images/google.png
new file mode 100644
index 0000000..fee64ad
Binary files /dev/null and b/images/google.png differ
diff --git a/images/i_cover_my_code_promo_badge_white.jpg b/images/i_cover_my_code_promo_badge_white.jpg
new file mode 100644
index 0000000..8a6dfe8
Binary files /dev/null and b/images/i_cover_my_code_promo_badge_white.jpg differ
diff --git a/images/rss-color.png b/images/rss-color.png
new file mode 100644
index 0000000..3a80f2d
Binary files /dev/null and b/images/rss-color.png differ
diff --git a/images/rss.png b/images/rss.png
new file mode 100644
index 0000000..6f25aed
Binary files /dev/null and b/images/rss.png differ
diff --git a/images/twitter-color.png b/images/twitter-color.png
new file mode 100644
index 0000000..a549808
Binary files /dev/null and b/images/twitter-color.png differ
diff --git a/images/twitter.png b/images/twitter.png
new file mode 100644
index 0000000..4ae5c05
Binary files /dev/null and b/images/twitter.png differ
diff --git a/index.html b/index.html
index e69de29..bf6fd4c 100644
--- a/index.html
+++ b/index.html
@@ -0,0 +1,24 @@
+---
+layout: default
+title: Dolphin-Safe Rake Tasks For .NET Systems
+---
+
+About Albacore
+
+ Albacore is a suite of rake tasks that is intended to make building .NET systems easier. It originally started as an experiment to learn ruby and rake. After some basic ideas were laid down, the framework took shape pretty quickly. A number of people heard about it and began submitting their own patches and ideas to the project. After several iterations of the code, a lot of learning and a ton of great help, Albacore has become quite popular. It's getting some good press via blogs and twitter, and is continuing to grow and improve, rapidly.
+
+
+ The AlbacoreBuild.net site was started to help centralize resources for Albacore. The site is still young, though, so check back frequently for updates to the layout and content. Don't forget to subscribe to the feed, as well.
+
+
+Install The Gem Or Git The Source Code
+
+ You can git the source code and/or gem installation instructions from GitHub, at http://github.com/derickbailey/Albacore
+
+
+News And Updates
+
+ {% for post in site.posts %}
+ - {{ post.date | date_to_string }} » {{ post.title }}
+ {% endfor %}
+
diff --git a/scripts/jquery.js b/scripts/jquery.js
new file mode 100644
index 0000000..b1ae21d
--- /dev/null
+++ b/scripts/jquery.js
@@ -0,0 +1,19 @@
+/*
+ * jQuery JavaScript Library v1.3.2
+ * http://jquery.com/
+ *
+ * Copyright (c) 2009 John Resig
+ * Dual licensed under the MIT and GPL licenses.
+ * http://docs.jquery.com/License
+ *
+ * Date: 2009-02-19 17:34:21 -0500 (Thu, 19 Feb 2009)
+ * Revision: 6246
+ */
+(function(){var l=this,g,y=l.jQuery,p=l.$,o=l.jQuery=l.$=function(E,F){return new o.fn.init(E,F)},D=/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,f=/^.[^:#\[\.,]*$/;o.fn=o.prototype={init:function(E,H){E=E||document;if(E.nodeType){this[0]=E;this.length=1;this.context=E;return this}if(typeof E==="string"){var G=D.exec(E);if(G&&(G[1]||!H)){if(G[1]){E=o.clean([G[1]],H)}else{var I=document.getElementById(G[3]);if(I&&I.id!=G[3]){return o().find(E)}var F=o(I||[]);F.context=document;F.selector=E;return F}}else{return o(H).find(E)}}else{if(o.isFunction(E)){return o(document).ready(E)}}if(E.selector&&E.context){this.selector=E.selector;this.context=E.context}return this.setArray(o.isArray(E)?E:o.makeArray(E))},selector:"",jquery:"1.3.2",size:function(){return this.length},get:function(E){return E===g?Array.prototype.slice.call(this):this[E]},pushStack:function(F,H,E){var G=o(F);G.prevObject=this;G.context=this.context;if(H==="find"){G.selector=this.selector+(this.selector?" ":"")+E}else{if(H){G.selector=this.selector+"."+H+"("+E+")"}}return G},setArray:function(E){this.length=0;Array.prototype.push.apply(this,E);return this},each:function(F,E){return o.each(this,F,E)},index:function(E){return o.inArray(E&&E.jquery?E[0]:E,this)},attr:function(F,H,G){var E=F;if(typeof F==="string"){if(H===g){return this[0]&&o[G||"attr"](this[0],F)}else{E={};E[F]=H}}return this.each(function(I){for(F in E){o.attr(G?this.style:this,F,o.prop(this,E[F],G,I,F))}})},css:function(E,F){if((E=="width"||E=="height")&&parseFloat(F)<0){F=g}return this.attr(E,F,"curCSS")},text:function(F){if(typeof F!=="object"&&F!=null){return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(F))}var E="";o.each(F||this,function(){o.each(this.childNodes,function(){if(this.nodeType!=8){E+=this.nodeType!=1?this.nodeValue:o.fn.text([this])}})});return E},wrapAll:function(E){if(this[0]){var F=o(E,this[0].ownerDocument).clone();if(this[0].parentNode){F.insertBefore(this[0])}F.map(function(){var G=this;while(G.firstChild){G=G.firstChild}return G}).append(this)}return this},wrapInner:function(E){return this.each(function(){o(this).contents().wrapAll(E)})},wrap:function(E){return this.each(function(){o(this).wrapAll(E)})},append:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.appendChild(E)}})},prepend:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.insertBefore(E,this.firstChild)}})},before:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this)})},after:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this.nextSibling)})},end:function(){return this.prevObject||o([])},push:[].push,sort:[].sort,splice:[].splice,find:function(E){if(this.length===1){var F=this.pushStack([],"find",E);F.length=0;o.find(E,this[0],F);return F}else{return this.pushStack(o.unique(o.map(this,function(G){return o.find(E,G)})),"find",E)}},clone:function(G){var E=this.map(function(){if(!o.support.noCloneEvent&&!o.isXMLDoc(this)){var I=this.outerHTML;if(!I){var J=this.ownerDocument.createElement("div");J.appendChild(this.cloneNode(true));I=J.innerHTML}return o.clean([I.replace(/ jQuery\d+="(?:\d+|null)"/g,"").replace(/^\s*/,"")])[0]}else{return this.cloneNode(true)}});if(G===true){var H=this.find("*").andSelf(),F=0;E.find("*").andSelf().each(function(){if(this.nodeName!==H[F].nodeName){return}var I=o.data(H[F],"events");for(var K in I){for(var J in I[K]){o.event.add(this,K,I[K][J],I[K][J].data)}}F++})}return E},filter:function(E){return this.pushStack(o.isFunction(E)&&o.grep(this,function(G,F){return E.call(G,F)})||o.multiFilter(E,o.grep(this,function(F){return F.nodeType===1})),"filter",E)},closest:function(E){var G=o.expr.match.POS.test(E)?o(E):null,F=0;return this.map(function(){var H=this;while(H&&H.ownerDocument){if(G?G.index(H)>-1:o(H).is(E)){o.data(H,"closest",F);return H}H=H.parentNode;F++}})},not:function(E){if(typeof E==="string"){if(f.test(E)){return this.pushStack(o.multiFilter(E,this,true),"not",E)}else{E=o.multiFilter(E,this)}}var F=E.length&&E[E.length-1]!==g&&!E.nodeType;return this.filter(function(){return F?o.inArray(this,E)<0:this!=E})},add:function(E){return this.pushStack(o.unique(o.merge(this.get(),typeof E==="string"?o(E):o.makeArray(E))))},is:function(E){return !!E&&o.multiFilter(E,this).length>0},hasClass:function(E){return !!E&&this.is("."+E)},val:function(K){if(K===g){var E=this[0];if(E){if(o.nodeName(E,"option")){return(E.attributes.value||{}).specified?E.value:E.text}if(o.nodeName(E,"select")){var I=E.selectedIndex,L=[],M=E.options,H=E.type=="select-one";if(I<0){return null}for(var F=H?I:0,J=H?I+1:M.length;F=0||o.inArray(this.name,K)>=0)}else{if(o.nodeName(this,"select")){var N=o.makeArray(K);o("option",this).each(function(){this.selected=(o.inArray(this.value,N)>=0||o.inArray(this.text,N)>=0)});if(!N.length){this.selectedIndex=-1}}else{this.value=K}}})},html:function(E){return E===g?(this[0]?this[0].innerHTML.replace(/ jQuery\d+="(?:\d+|null)"/g,""):null):this.empty().append(E)},replaceWith:function(E){return this.after(E).remove()},eq:function(E){return this.slice(E,+E+1)},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.prototype.slice.call(arguments).join(","))},map:function(E){return this.pushStack(o.map(this,function(G,F){return E.call(G,F,G)}))},andSelf:function(){return this.add(this.prevObject)},domManip:function(J,M,L){if(this[0]){var I=(this[0].ownerDocument||this[0]).createDocumentFragment(),F=o.clean(J,(this[0].ownerDocument||this[0]),I),H=I.firstChild;if(H){for(var G=0,E=this.length;G1||G>0?I.cloneNode(true):I)}}if(F){o.each(F,z)}}return this;function K(N,O){return M&&o.nodeName(N,"table")&&o.nodeName(O,"tr")?(N.getElementsByTagName("tbody")[0]||N.appendChild(N.ownerDocument.createElement("tbody"))):N}}};o.fn.init.prototype=o.fn;function z(E,F){if(F.src){o.ajax({url:F.src,async:false,dataType:"script"})}else{o.globalEval(F.text||F.textContent||F.innerHTML||"")}if(F.parentNode){F.parentNode.removeChild(F)}}function e(){return +new Date}o.extend=o.fn.extend=function(){var J=arguments[0]||{},H=1,I=arguments.length,E=false,G;if(typeof J==="boolean"){E=J;J=arguments[1]||{};H=2}if(typeof J!=="object"&&!o.isFunction(J)){J={}}if(I==H){J=this;--H}for(;H-1}},swap:function(H,G,I){var E={};for(var F in G){E[F]=H.style[F];H.style[F]=G[F]}I.call(H);for(var F in G){H.style[F]=E[F]}},css:function(H,F,J,E){if(F=="width"||F=="height"){var L,G={position:"absolute",visibility:"hidden",display:"block"},K=F=="width"?["Left","Right"]:["Top","Bottom"];function I(){L=F=="width"?H.offsetWidth:H.offsetHeight;if(E==="border"){return}o.each(K,function(){if(!E){L-=parseFloat(o.curCSS(H,"padding"+this,true))||0}if(E==="margin"){L+=parseFloat(o.curCSS(H,"margin"+this,true))||0}else{L-=parseFloat(o.curCSS(H,"border"+this+"Width",true))||0}})}if(H.offsetWidth!==0){I()}else{o.swap(H,G,I)}return Math.max(0,Math.round(L))}return o.curCSS(H,F,J)},curCSS:function(I,F,G){var L,E=I.style;if(F=="opacity"&&!o.support.opacity){L=o.attr(E,"opacity");return L==""?"1":L}if(F.match(/float/i)){F=w}if(!G&&E&&E[F]){L=E[F]}else{if(q.getComputedStyle){if(F.match(/float/i)){F="float"}F=F.replace(/([A-Z])/g,"-$1").toLowerCase();var M=q.getComputedStyle(I,null);if(M){L=M.getPropertyValue(F)}if(F=="opacity"&&L==""){L="1"}}else{if(I.currentStyle){var J=F.replace(/\-(\w)/g,function(N,O){return O.toUpperCase()});L=I.currentStyle[F]||I.currentStyle[J];if(!/^\d+(px)?$/i.test(L)&&/^\d/.test(L)){var H=E.left,K=I.runtimeStyle.left;I.runtimeStyle.left=I.currentStyle.left;E.left=L||0;L=E.pixelLeft+"px";E.left=H;I.runtimeStyle.left=K}}}}return L},clean:function(F,K,I){K=K||document;if(typeof K.createElement==="undefined"){K=K.ownerDocument||K[0]&&K[0].ownerDocument||document}if(!I&&F.length===1&&typeof F[0]==="string"){var H=/^<(\w+)\s*\/?>$/.exec(F[0]);if(H){return[K.createElement(H[1])]}}var G=[],E=[],L=K.createElement("div");o.each(F,function(P,S){if(typeof S==="number"){S+=""}if(!S){return}if(typeof S==="string"){S=S.replace(/(<(\w+)[^>]*?)\/>/g,function(U,V,T){return T.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?U:V+">"+T+">"});var O=S.replace(/^\s+/,"").substring(0,10).toLowerCase();var Q=!O.indexOf("",""]||!O.indexOf("",""]||O.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"","
"]||!O.indexOf(" ",""]||(!O.indexOf(""," "]||!O.indexOf(""," "]||!o.support.htmlSerialize&&[1,"div",""]||[0,"",""];L.innerHTML=Q[1]+S+Q[2];while(Q[0]--){L=L.lastChild}if(!o.support.tbody){var R=/"&&!R?L.childNodes:[];for(var M=N.length-1;M>=0;--M){if(o.nodeName(N[M],"tbody")&&!N[M].childNodes.length){N[M].parentNode.removeChild(N[M])}}}if(!o.support.leadingWhitespace&&/^\s/.test(S)){L.insertBefore(K.createTextNode(S.match(/^\s*/)[0]),L.firstChild)}S=o.makeArray(L.childNodes)}if(S.nodeType){G.push(S)}else{G=o.merge(G,S)}});if(I){for(var J=0;G[J];J++){if(o.nodeName(G[J],"script")&&(!G[J].type||G[J].type.toLowerCase()==="text/javascript")){E.push(G[J].parentNode?G[J].parentNode.removeChild(G[J]):G[J])}else{if(G[J].nodeType===1){G.splice.apply(G,[J+1,0].concat(o.makeArray(G[J].getElementsByTagName("script"))))}I.appendChild(G[J])}}return E}return G},attr:function(J,G,K){if(!J||J.nodeType==3||J.nodeType==8){return g}var H=!o.isXMLDoc(J),L=K!==g;G=H&&o.props[G]||G;if(J.tagName){var F=/href|src|style/.test(G);if(G=="selected"&&J.parentNode){J.parentNode.selectedIndex}if(G in J&&H&&!F){if(L){if(G=="type"&&o.nodeName(J,"input")&&J.parentNode){throw"type property can't be changed"}J[G]=K}if(o.nodeName(J,"form")&&J.getAttributeNode(G)){return J.getAttributeNode(G).nodeValue}if(G=="tabIndex"){var I=J.getAttributeNode("tabIndex");return I&&I.specified?I.value:J.nodeName.match(/(button|input|object|select|textarea)/i)?0:J.nodeName.match(/^(a|area)$/i)&&J.href?0:g}return J[G]}if(!o.support.style&&H&&G=="style"){return o.attr(J.style,"cssText",K)}if(L){J.setAttribute(G,""+K)}var E=!o.support.hrefNormalized&&H&&F?J.getAttribute(G,2):J.getAttribute(G);return E===null?g:E}if(!o.support.opacity&&G=="opacity"){if(L){J.zoom=1;J.filter=(J.filter||"").replace(/alpha\([^)]*\)/,"")+(parseInt(K)+""=="NaN"?"":"alpha(opacity="+K*100+")")}return J.filter&&J.filter.indexOf("opacity=")>=0?(parseFloat(J.filter.match(/opacity=([^)]*)/)[1])/100)+"":""}G=G.replace(/-([a-z])/ig,function(M,N){return N.toUpperCase()});if(L){J[G]=K}return J[G]},trim:function(E){return(E||"").replace(/^\s+|\s+$/g,"")},makeArray:function(G){var E=[];if(G!=null){var F=G.length;if(F==null||typeof G==="string"||o.isFunction(G)||G.setInterval){E[0]=G}else{while(F){E[--F]=G[F]}}}return E},inArray:function(G,H){for(var E=0,F=H.length;E0?this.clone(true):this).get();o.fn[F].apply(o(L[K]),I);J=J.concat(I)}return this.pushStack(J,E,G)}});o.each({removeAttr:function(E){o.attr(this,E,"");if(this.nodeType==1){this.removeAttribute(E)}},addClass:function(E){o.className.add(this,E)},removeClass:function(E){o.className.remove(this,E)},toggleClass:function(F,E){if(typeof E!=="boolean"){E=!o.className.has(this,F)}o.className[E?"add":"remove"](this,F)},remove:function(E){if(!E||o.filter(E,[this]).length){o("*",this).add([this]).each(function(){o.event.remove(this);o.removeData(this)});if(this.parentNode){this.parentNode.removeChild(this)}}},empty:function(){o(this).children().remove();while(this.firstChild){this.removeChild(this.firstChild)}}},function(E,F){o.fn[E]=function(){return this.each(F,arguments)}});function j(E,F){return E[0]&&parseInt(o.curCSS(E[0],F,true),10)||0}var h="jQuery"+e(),v=0,A={};o.extend({cache:{},data:function(F,E,G){F=F==l?A:F;var H=F[h];if(!H){H=F[h]=++v}if(E&&!o.cache[H]){o.cache[H]={}}if(G!==g){o.cache[H][E]=G}return E?o.cache[H][E]:H},removeData:function(F,E){F=F==l?A:F;var H=F[h];if(E){if(o.cache[H]){delete o.cache[H][E];E="";for(E in o.cache[H]){break}if(!E){o.removeData(F)}}}else{try{delete F[h]}catch(G){if(F.removeAttribute){F.removeAttribute(h)}}delete o.cache[H]}},queue:function(F,E,H){if(F){E=(E||"fx")+"queue";var G=o.data(F,E);if(!G||o.isArray(H)){G=o.data(F,E,o.makeArray(H))}else{if(H){G.push(H)}}}return G},dequeue:function(H,G){var E=o.queue(H,G),F=E.shift();if(!G||G==="fx"){F=E[0]}if(F!==g){F.call(H)}}});o.fn.extend({data:function(E,G){var H=E.split(".");H[1]=H[1]?"."+H[1]:"";if(G===g){var F=this.triggerHandler("getData"+H[1]+"!",[H[0]]);if(F===g&&this.length){F=o.data(this[0],E)}return F===g&&H[1]?this.data(H[0]):F}else{return this.trigger("setData"+H[1]+"!",[H[0],G]).each(function(){o.data(this,E,G)})}},removeData:function(E){return this.each(function(){o.removeData(this,E)})},queue:function(E,F){if(typeof E!=="string"){F=E;E="fx"}if(F===g){return o.queue(this[0],E)}return this.each(function(){var G=o.queue(this,E,F);if(E=="fx"&&G.length==1){G[0].call(this)}})},dequeue:function(E){return this.each(function(){o.dequeue(this,E)})}});
+/*
+ * Sizzle CSS Selector Engine - v0.9.3
+ * Copyright 2009, The Dojo Foundation
+ * Released under the MIT, BSD, and GPL Licenses.
+ * More information: http://sizzlejs.com/
+ */
+(function(){var R=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?/g,L=0,H=Object.prototype.toString;var F=function(Y,U,ab,ac){ab=ab||[];U=U||document;if(U.nodeType!==1&&U.nodeType!==9){return[]}if(!Y||typeof Y!=="string"){return ab}var Z=[],W,af,ai,T,ad,V,X=true;R.lastIndex=0;while((W=R.exec(Y))!==null){Z.push(W[1]);if(W[2]){V=RegExp.rightContext;break}}if(Z.length>1&&M.exec(Y)){if(Z.length===2&&I.relative[Z[0]]){af=J(Z[0]+Z[1],U)}else{af=I.relative[Z[0]]?[U]:F(Z.shift(),U);while(Z.length){Y=Z.shift();if(I.relative[Y]){Y+=Z.shift()}af=J(Y,af)}}}else{var ae=ac?{expr:Z.pop(),set:E(ac)}:F.find(Z.pop(),Z.length===1&&U.parentNode?U.parentNode:U,Q(U));af=F.filter(ae.expr,ae.set);if(Z.length>0){ai=E(af)}else{X=false}while(Z.length){var ah=Z.pop(),ag=ah;if(!I.relative[ah]){ah=""}else{ag=Z.pop()}if(ag==null){ag=U}I.relative[ah](ai,ag,Q(U))}}if(!ai){ai=af}if(!ai){throw"Syntax error, unrecognized expression: "+(ah||Y)}if(H.call(ai)==="[object Array]"){if(!X){ab.push.apply(ab,ai)}else{if(U.nodeType===1){for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&(ai[aa]===true||ai[aa].nodeType===1&&K(U,ai[aa]))){ab.push(af[aa])}}}else{for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&ai[aa].nodeType===1){ab.push(af[aa])}}}}}else{E(ai,ab)}if(V){F(V,U,ab,ac);if(G){hasDuplicate=false;ab.sort(G);if(hasDuplicate){for(var aa=1;aa":function(Z,U,aa){var X=typeof U==="string";if(X&&!/\W/.test(U)){U=aa?U:U.toUpperCase();for(var V=0,T=Z.length;V=0)){if(!V){T.push(Y)}}else{if(V){U[X]=false}}}}return false},ID:function(T){return T[1].replace(/\\/g,"")},TAG:function(U,T){for(var V=0;T[V]===false;V++){}return T[V]&&Q(T[V])?U[1]:U[1].toUpperCase()},CHILD:function(T){if(T[1]=="nth"){var U=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(T[2]=="even"&&"2n"||T[2]=="odd"&&"2n+1"||!/\D/.test(T[2])&&"0n+"+T[2]||T[2]);T[2]=(U[1]+(U[2]||1))-0;T[3]=U[3]-0}T[0]=L++;return T},ATTR:function(X,U,V,T,Y,Z){var W=X[1].replace(/\\/g,"");if(!Z&&I.attrMap[W]){X[1]=I.attrMap[W]}if(X[2]==="~="){X[4]=" "+X[4]+" "}return X},PSEUDO:function(X,U,V,T,Y){if(X[1]==="not"){if(X[3].match(R).length>1||/^\w/.test(X[3])){X[3]=F(X[3],null,null,U)}else{var W=F.filter(X[3],U,V,true^Y);if(!V){T.push.apply(T,W)}return false}}else{if(I.match.POS.test(X[0])||I.match.CHILD.test(X[0])){return true}}return X},POS:function(T){T.unshift(true);return T}},filters:{enabled:function(T){return T.disabled===false&&T.type!=="hidden"},disabled:function(T){return T.disabled===true},checked:function(T){return T.checked===true},selected:function(T){T.parentNode.selectedIndex;return T.selected===true},parent:function(T){return !!T.firstChild},empty:function(T){return !T.firstChild},has:function(V,U,T){return !!F(T[3],V).length},header:function(T){return/h\d/i.test(T.nodeName)},text:function(T){return"text"===T.type},radio:function(T){return"radio"===T.type},checkbox:function(T){return"checkbox"===T.type},file:function(T){return"file"===T.type},password:function(T){return"password"===T.type},submit:function(T){return"submit"===T.type},image:function(T){return"image"===T.type},reset:function(T){return"reset"===T.type},button:function(T){return"button"===T.type||T.nodeName.toUpperCase()==="BUTTON"},input:function(T){return/input|select|textarea|button/i.test(T.nodeName)}},setFilters:{first:function(U,T){return T===0},last:function(V,U,T,W){return U===W.length-1},even:function(U,T){return T%2===0},odd:function(U,T){return T%2===1},lt:function(V,U,T){return UT[3]-0},nth:function(V,U,T){return T[3]-0==U},eq:function(V,U,T){return T[3]-0==U}},filter:{PSEUDO:function(Z,V,W,aa){var U=V[1],X=I.filters[U];if(X){return X(Z,W,V,aa)}else{if(U==="contains"){return(Z.textContent||Z.innerText||"").indexOf(V[3])>=0}else{if(U==="not"){var Y=V[3];for(var W=0,T=Y.length;W=0)}}},ID:function(U,T){return U.nodeType===1&&U.getAttribute("id")===T},TAG:function(U,T){return(T==="*"&&U.nodeType===1)||U.nodeName===T},CLASS:function(U,T){return(" "+(U.className||U.getAttribute("class"))+" ").indexOf(T)>-1},ATTR:function(Y,W){var V=W[1],T=I.attrHandle[V]?I.attrHandle[V](Y):Y[V]!=null?Y[V]:Y.getAttribute(V),Z=T+"",X=W[2],U=W[4];return T==null?X==="!=":X==="="?Z===U:X==="*="?Z.indexOf(U)>=0:X==="~="?(" "+Z+" ").indexOf(U)>=0:!U?Z&&T!==false:X==="!="?Z!=U:X==="^="?Z.indexOf(U)===0:X==="$="?Z.substr(Z.length-U.length)===U:X==="|="?Z===U||Z.substr(0,U.length+1)===U+"-":false},POS:function(X,U,V,Y){var T=U[2],W=I.setFilters[T];if(W){return W(X,V,U,Y)}}}};var M=I.match.POS;for(var O in I.match){I.match[O]=RegExp(I.match[O].source+/(?![^\[]*\])(?![^\(]*\))/.source)}var E=function(U,T){U=Array.prototype.slice.call(U);if(T){T.push.apply(T,U);return T}return U};try{Array.prototype.slice.call(document.documentElement.childNodes)}catch(N){E=function(X,W){var U=W||[];if(H.call(X)==="[object Array]"){Array.prototype.push.apply(U,X)}else{if(typeof X.length==="number"){for(var V=0,T=X.length;V ";var T=document.documentElement;T.insertBefore(U,T.firstChild);if(!!document.getElementById(V)){I.find.ID=function(X,Y,Z){if(typeof Y.getElementById!=="undefined"&&!Z){var W=Y.getElementById(X[1]);return W?W.id===X[1]||typeof W.getAttributeNode!=="undefined"&&W.getAttributeNode("id").nodeValue===X[1]?[W]:g:[]}};I.filter.ID=function(Y,W){var X=typeof Y.getAttributeNode!=="undefined"&&Y.getAttributeNode("id");return Y.nodeType===1&&X&&X.nodeValue===W}}T.removeChild(U)})();(function(){var T=document.createElement("div");T.appendChild(document.createComment(""));if(T.getElementsByTagName("*").length>0){I.find.TAG=function(U,Y){var X=Y.getElementsByTagName(U[1]);if(U[1]==="*"){var W=[];for(var V=0;X[V];V++){if(X[V].nodeType===1){W.push(X[V])}}X=W}return X}}T.innerHTML="";if(T.firstChild&&typeof T.firstChild.getAttribute!=="undefined"&&T.firstChild.getAttribute("href")!=="#"){I.attrHandle.href=function(U){return U.getAttribute("href",2)}}})();if(document.querySelectorAll){(function(){var T=F,U=document.createElement("div");U.innerHTML="";if(U.querySelectorAll&&U.querySelectorAll(".TEST").length===0){return}F=function(Y,X,V,W){X=X||document;if(!W&&X.nodeType===9&&!Q(X)){try{return E(X.querySelectorAll(Y),V)}catch(Z){}}return T(Y,X,V,W)};F.find=T.find;F.filter=T.filter;F.selectors=T.selectors;F.matches=T.matches})()}if(document.getElementsByClassName&&document.documentElement.getElementsByClassName){(function(){var T=document.createElement("div");T.innerHTML="";if(T.getElementsByClassName("e").length===0){return}T.lastChild.className="e";if(T.getElementsByClassName("e").length===1){return}I.order.splice(1,0,"CLASS");I.find.CLASS=function(U,V,W){if(typeof V.getElementsByClassName!=="undefined"&&!W){return V.getElementsByClassName(U[1])}}})()}function P(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W0){X=T;break}}}T=T[U]}ad[W]=X}}}var K=document.compareDocumentPosition?function(U,T){return U.compareDocumentPosition(T)&16}:function(U,T){return U!==T&&(U.contains?U.contains(T):true)};var Q=function(T){return T.nodeType===9&&T.documentElement.nodeName!=="HTML"||!!T.ownerDocument&&Q(T.ownerDocument)};var J=function(T,aa){var W=[],X="",Y,V=aa.nodeType?[aa]:aa;while((Y=I.match.PSEUDO.exec(T))){X+=Y[0];T=T.replace(I.match.PSEUDO,"")}T=I.relative[T]?T+"*":T;for(var Z=0,U=V.length;Z0||T.offsetHeight>0};F.selectors.filters.animated=function(T){return o.grep(o.timers,function(U){return T===U.elem}).length};o.multiFilter=function(V,T,U){if(U){V=":not("+V+")"}return F.matches(V,T)};o.dir=function(V,U){var T=[],W=V[U];while(W&&W!=document){if(W.nodeType==1){T.push(W)}W=W[U]}return T};o.nth=function(X,T,V,W){T=T||1;var U=0;for(;X;X=X[V]){if(X.nodeType==1&&++U==T){break}}return X};o.sibling=function(V,U){var T=[];for(;V;V=V.nextSibling){if(V.nodeType==1&&V!=U){T.push(V)}}return T};return;l.Sizzle=F})();o.event={add:function(I,F,H,K){if(I.nodeType==3||I.nodeType==8){return}if(I.setInterval&&I!=l){I=l}if(!H.guid){H.guid=this.guid++}if(K!==g){var G=H;H=this.proxy(G);H.data=K}var E=o.data(I,"events")||o.data(I,"events",{}),J=o.data(I,"handle")||o.data(I,"handle",function(){return typeof o!=="undefined"&&!o.event.triggered?o.event.handle.apply(arguments.callee.elem,arguments):g});J.elem=I;o.each(F.split(/\s+/),function(M,N){var O=N.split(".");N=O.shift();H.type=O.slice().sort().join(".");var L=E[N];if(o.event.specialAll[N]){o.event.specialAll[N].setup.call(I,K,O)}if(!L){L=E[N]={};if(!o.event.special[N]||o.event.special[N].setup.call(I,K,O)===false){if(I.addEventListener){I.addEventListener(N,J,false)}else{if(I.attachEvent){I.attachEvent("on"+N,J)}}}}L[H.guid]=H;o.event.global[N]=true});I=null},guid:1,global:{},remove:function(K,H,J){if(K.nodeType==3||K.nodeType==8){return}var G=o.data(K,"events"),F,E;if(G){if(H===g||(typeof H==="string"&&H.charAt(0)==".")){for(var I in G){this.remove(K,I+(H||""))}}else{if(H.type){J=H.handler;H=H.type}o.each(H.split(/\s+/),function(M,O){var Q=O.split(".");O=Q.shift();var N=RegExp("(^|\\.)"+Q.slice().sort().join(".*\\.")+"(\\.|$)");if(G[O]){if(J){delete G[O][J.guid]}else{for(var P in G[O]){if(N.test(G[O][P].type)){delete G[O][P]}}}if(o.event.specialAll[O]){o.event.specialAll[O].teardown.call(K,Q)}for(F in G[O]){break}if(!F){if(!o.event.special[O]||o.event.special[O].teardown.call(K,Q)===false){if(K.removeEventListener){K.removeEventListener(O,o.data(K,"handle"),false)}else{if(K.detachEvent){K.detachEvent("on"+O,o.data(K,"handle"))}}}F=null;delete G[O]}}})}for(F in G){break}if(!F){var L=o.data(K,"handle");if(L){L.elem=null}o.removeData(K,"events");o.removeData(K,"handle")}}},trigger:function(I,K,H,E){var G=I.type||I;if(!E){I=typeof I==="object"?I[h]?I:o.extend(o.Event(G),I):o.Event(G);if(G.indexOf("!")>=0){I.type=G=G.slice(0,-1);I.exclusive=true}if(!H){I.stopPropagation();if(this.global[G]){o.each(o.cache,function(){if(this.events&&this.events[G]){o.event.trigger(I,K,this.handle.elem)}})}}if(!H||H.nodeType==3||H.nodeType==8){return g}I.result=g;I.target=H;K=o.makeArray(K);K.unshift(I)}I.currentTarget=H;var J=o.data(H,"handle");if(J){J.apply(H,K)}if((!H[G]||(o.nodeName(H,"a")&&G=="click"))&&H["on"+G]&&H["on"+G].apply(H,K)===false){I.result=false}if(!E&&H[G]&&!I.isDefaultPrevented()&&!(o.nodeName(H,"a")&&G=="click")){this.triggered=true;try{H[G]()}catch(L){}}this.triggered=false;if(!I.isPropagationStopped()){var F=H.parentNode||H.ownerDocument;if(F){o.event.trigger(I,K,F,true)}}},handle:function(K){var J,E;K=arguments[0]=o.event.fix(K||l.event);K.currentTarget=this;var L=K.type.split(".");K.type=L.shift();J=!L.length&&!K.exclusive;var I=RegExp("(^|\\.)"+L.slice().sort().join(".*\\.")+"(\\.|$)");E=(o.data(this,"events")||{})[K.type];for(var G in E){var H=E[G];if(J||I.test(H.type)){K.handler=H;K.data=H.data;var F=H.apply(this,arguments);if(F!==g){K.result=F;if(F===false){K.preventDefault();K.stopPropagation()}}if(K.isImmediatePropagationStopped()){break}}}},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(H){if(H[h]){return H}var F=H;H=o.Event(F);for(var G=this.props.length,J;G;){J=this.props[--G];H[J]=F[J]}if(!H.target){H.target=H.srcElement||document}if(H.target.nodeType==3){H.target=H.target.parentNode}if(!H.relatedTarget&&H.fromElement){H.relatedTarget=H.fromElement==H.target?H.toElement:H.fromElement}if(H.pageX==null&&H.clientX!=null){var I=document.documentElement,E=document.body;H.pageX=H.clientX+(I&&I.scrollLeft||E&&E.scrollLeft||0)-(I.clientLeft||0);H.pageY=H.clientY+(I&&I.scrollTop||E&&E.scrollTop||0)-(I.clientTop||0)}if(!H.which&&((H.charCode||H.charCode===0)?H.charCode:H.keyCode)){H.which=H.charCode||H.keyCode}if(!H.metaKey&&H.ctrlKey){H.metaKey=H.ctrlKey}if(!H.which&&H.button){H.which=(H.button&1?1:(H.button&2?3:(H.button&4?2:0)))}return H},proxy:function(F,E){E=E||function(){return F.apply(this,arguments)};E.guid=F.guid=F.guid||E.guid||this.guid++;return E},special:{ready:{setup:B,teardown:function(){}}},specialAll:{live:{setup:function(E,F){o.event.add(this,F[0],c)},teardown:function(G){if(G.length){var E=0,F=RegExp("(^|\\.)"+G[0]+"(\\.|$)");o.each((o.data(this,"events").live||{}),function(){if(F.test(this.type)){E++}});if(E<1){o.event.remove(this,G[0],c)}}}}}};o.Event=function(E){if(!this.preventDefault){return new o.Event(E)}if(E&&E.type){this.originalEvent=E;this.type=E.type}else{this.type=E}this.timeStamp=e();this[h]=true};function k(){return false}function u(){return true}o.Event.prototype={preventDefault:function(){this.isDefaultPrevented=u;var E=this.originalEvent;if(!E){return}if(E.preventDefault){E.preventDefault()}E.returnValue=false},stopPropagation:function(){this.isPropagationStopped=u;var E=this.originalEvent;if(!E){return}if(E.stopPropagation){E.stopPropagation()}E.cancelBubble=true},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=u;this.stopPropagation()},isDefaultPrevented:k,isPropagationStopped:k,isImmediatePropagationStopped:k};var a=function(F){var E=F.relatedTarget;while(E&&E!=this){try{E=E.parentNode}catch(G){E=this}}if(E!=this){F.type=F.data;o.event.handle.apply(this,arguments)}};o.each({mouseover:"mouseenter",mouseout:"mouseleave"},function(F,E){o.event.special[E]={setup:function(){o.event.add(this,F,a,E)},teardown:function(){o.event.remove(this,F,a)}}});o.fn.extend({bind:function(F,G,E){return F=="unload"?this.one(F,G,E):this.each(function(){o.event.add(this,F,E||G,E&&G)})},one:function(G,H,F){var E=o.event.proxy(F||H,function(I){o(this).unbind(I,E);return(F||H).apply(this,arguments)});return this.each(function(){o.event.add(this,G,E,F&&H)})},unbind:function(F,E){return this.each(function(){o.event.remove(this,F,E)})},trigger:function(E,F){return this.each(function(){o.event.trigger(E,F,this)})},triggerHandler:function(E,G){if(this[0]){var F=o.Event(E);F.preventDefault();F.stopPropagation();o.event.trigger(F,G,this[0]);return F.result}},toggle:function(G){var E=arguments,F=1;while(F
a';var H=K.getElementsByTagName("*"),E=K.getElementsByTagName("a")[0];if(!H||!H.length||!E){return}o.support={leadingWhitespace:K.firstChild.nodeType==3,tbody:!K.getElementsByTagName("tbody").length,objectAll:!!K.getElementsByTagName("object")[0].getElementsByTagName("*").length,htmlSerialize:!!K.getElementsByTagName("link").length,style:/red/.test(E.getAttribute("style")),hrefNormalized:E.getAttribute("href")==="/a",opacity:E.style.opacity==="0.5",cssFloat:!!E.style.cssFloat,scriptEval:false,noCloneEvent:true,boxModel:null};G.type="text/javascript";try{G.appendChild(document.createTextNode("window."+J+"=1;"))}catch(I){}F.insertBefore(G,F.firstChild);if(l[J]){o.support.scriptEval=true;delete l[J]}F.removeChild(G);if(K.attachEvent&&K.fireEvent){K.attachEvent("onclick",function(){o.support.noCloneEvent=false;K.detachEvent("onclick",arguments.callee)});K.cloneNode(true).fireEvent("onclick")}o(function(){var L=document.createElement("div");L.style.width=L.style.paddingLeft="1px";document.body.appendChild(L);o.boxModel=o.support.boxModel=L.offsetWidth===2;document.body.removeChild(L).style.display="none"})})();var w=o.support.cssFloat?"cssFloat":"styleFloat";o.props={"for":"htmlFor","class":"className","float":w,cssFloat:w,styleFloat:w,readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",tabindex:"tabIndex"};o.fn.extend({_load:o.fn.load,load:function(G,J,K){if(typeof G!=="string"){return this._load(G)}var I=G.indexOf(" ");if(I>=0){var E=G.slice(I,G.length);G=G.slice(0,I)}var H="GET";if(J){if(o.isFunction(J)){K=J;J=null}else{if(typeof J==="object"){J=o.param(J);H="POST"}}}var F=this;o.ajax({url:G,type:H,dataType:"html",data:J,complete:function(M,L){if(L=="success"||L=="notmodified"){F.html(E?o("").append(M.responseText.replace(/